0
2
3
4
6
7
8
10
13
15
17
18
20
22
23
25
27
28
29
30
32
34
35
38
40
41
42
44
45
46
47
50
51
52
53
55
56
57
58
60
64
65
66
68
69
70
72
75
76
77
81
82
83
87
90
91
92
94
95
96
98
102
103
104
106
107
109
110
111
114
122
124
125
126
127
128
130
133
134
135
137
141
142
149
151
152
153
156
157
158
159
160
161
162
165
166
169
170
171
172
175
176
177
179
181
182
183
184
185
186
188
189
191
192
193
198
199
200
203
204
205
207
210
213
214
216
218
221
222
223
224
226
230
233
234
235
236
237
238
239
241
242
243
246
248
250
251
252
258
260
263
266
267
270
271
274
277
279
281
285
286
287
289
290
294
295
296
297
298
301
302
303
304
305
306
307
308
311
314
315
317
318
319
320
321
322
323
328
332
333
336
337
338
339
342
344
345
346
347
348
349
350
351
352
353
354
356
359
363
365
370
371
372
373
377
378
381
382
384
385
386
387
388
390
393
397
398
399
406
408
409
411
412
413
414
415
417
418
421
422
424
425
426
429
430
431
435
438
440
442
443
444
445
446
447
448
449
452
453
454
455
456
457
458
461
462
463
464
466
467
469
471
473
474
476
477
478
479
481
483
485
487
488
491
492
494
495
497
500
502
503
505
506
510
517
518
520
521
522
526
528
530
532
533
534
535
536
537
538
539
541
542
543
544
545
546
548
549
550
552
554
556
557
559
561
562
563
565
566
568
569
571
573
575
577
579
581
583
584
585
587
588
589
590
591
592
593
594
595
596
597
598
599
600
602
603
605
606
607
610
613
616
617
618
619
620
621
622
623
624
625
626
633
634
635
639
641
643
647
649
652
656
657
658
659
662
663
665
666
667
668
672
675
681
685
687
688
689
690
691
693
694
695
696
697
698
701
707
708
711
713
715
717
719
721
722
726
728
729
730
732
734
735
736
741
743
747
748
750
752
753
756
757
758
759
760
764
765
766
768
769
771
775
776
779
781
782
783
784
785
786
787
792
794
796
802
804
805
807
809
812
813
814
816
817
818
819
820
822
823
826
828
829
830
831
832
835
836
837
838
839
841
842
844
845
846
847
848
851
852
853
855
856
857
859
860
862
866
867
869
870
871
872
873
874
878
879
881
882
883
885
887
888
890
891
893
897
898
909
910
912
913
915
916
917
918
920
924
926
927
930
931
932
933
935
936
937
938
939
940
942
943
944
945
946
947
948
949
950
951
953
954
955
957
958
959
960
963
964
966
967
968
969
970
971
974
976
979
981
982
984
987
988
992
993
994
997
998
999
1001
1002
1003
1004
1005
1006
1007
1008
1009
1011
1013
1014
1015
1017
1018
1019
1020
1021
1024
1027
1028
1033
1034
1035
1039
1040
1042
1043
1044
1045
1048
1049
1053
1054
1059
1060
1061
1063
1064
1065
1066
1067
1068
1070
1073
1074
1075
1077
1078
1079
1080
1083
1084
1085
1086
1087
1088
1089
1092
1093
1095
1096
1098
1100
1101
1102
1103
1104
1106
1108
1109
1110
1111
1113
1114
1115
1116
1118
1121
1122
1123
1125
1128
1131
1132
1133
1134
1135
1140
1142
1144
1145
1149
1150
1151
1154
1156
1157
1160
1161
1163
1164
1166
1167
1170
1173
1174
1175
1177
1181
1183
1186
1188
1189
1196
1200
1202
1204
1207
1211
1212
1215
1219
1220
1225
1226
1228
1230
1231
1232
1233
1234
1236
1240
1241
1242
1243
1244
1247
1250
1251
1252
1253
1256
1258
1259
1260
1262
1265
1266
1267
1268
1269
1270
1271
1272
1273
1275
1276
1277
1278
1280
1281
1284
1285
1288
1289
1293
1294
1298
1299
1300
1302
1303
1304
1307
1309
1310
1311
1312
1313
1315
1316
1318
1319
1320
1322
1324
1326
1328
1329
1330
1331
1334
1335
1336
1338
1339
1341
1342
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1358
1359
1361
1364
1365
1366
1371
1372
1374
1376
1380
1381
1383
1384
1386
1387
1390
1391
1393
1394
1395
1398
1399
1401
1402
1403
1405
1406
1408
1409
1413
1414
1415
1416
1417
1419
1420
1421
1422
1423
1424
1425
1430
1432
1433
1435
1436
1438
1440
1445
1446
1447
1449
1450
1452
1453
1454
1455
1456
1457
1459
1460
1461
1462
1463
1464
1465
1466
1469
1470
1471
1474
1476
1477
1479
1481
1483
1484
1488
1489
1490
1491
1492
1496
1497
1498
1500
1501
1503
1505
1506
1508
1511
1512
1513
1516
1518
1520
1521
1523
1524
1526
1527
1528
1530
1533
1534
1535
1538
1542
1543
1546
1547
1548
1550
1551
1552
1553
1555
1556
1557
1558
1559
1560
1561
1564
1565
1566
1567
1570
1571
1572
1573
1574
1575
1577
1578
1581
1582
1583
1588
1589
1590
1591
1592
1595
1598
1599
1600
1601
1603
1604
1605
1607
1608
1612
1615
1617
1618
1621
1622
1625
1627
1628
1629
1631
1632
1633
1634
1635
1637
1641
1643
1645
1646
1648
1651
1652
1653
1654
1657
1659
1660
1663
1666
1667
1668
1669
1670
1671
1672
1674
1675
1676
1677
1678
1685
1686
1687
1688
1689
1692
1694
1697
1699
1700
1703
1705
1706
1708
1709
1711
1712
1714
1715
1716
1717
1719
1720
1721
1722
1724
1725
1726
1727
1729
1730
1731
1732
1733
1734
1736
1738
1741
1742
1743
1744
1746
1747
1748
1754
1759
1760
1761
1763
1764
1765
1766
1767
1769
1770
1773
1774
1776
1780
1783
1784
1785
1787
1788
1789
1790
1796
1797
1799
1801
1805
1807
1808
1810
1811
1815
1817
1819
1821
1824
1826
1827
1828
1830
1831
1836
1837
1838
1839
1842
1843
1844
1848
1849
1851
1852
1853
1854
1855
1858
1860
1864
1866
1867
1869
1871
1873
1874
1877
1879
1880
1882
1883
1885
1887
1890
1891
1892
1893
1895
1896
1897
1899
1900
1901
1903
1904
1907
1911
1912
1913
1915
1916
1920
1922
1927
1928
1929
1932
1933
1934
1936
1937
1940
1942
1944
1945
1946
1947
1948
1950
1952
1953
1954
1957
1960
1962
1963
1964
1965
1966
1968
1969
1973
1976
1979
1980
1982
1985
1988
1991
1992
1993
1996
1998
1999
2001
2004
2005
2009
2010
2013
2016
2018
2020
2025
2027
2029
2030
2031
2035
2037
2038
2043
2046
2047
2049
2050
2051
2053
2054
2062
2063
2065
2068
2071
2072
2074
2076
2077
2078
2079
2080
2081
2083
2085
2086
2090
2092
2093
2094
2095
2096
2097
2103
2107
2108
2109
2112
2114
2115
2117
2121
2124
2125
2127
2128
2129
2130
2131
2134
2135
2136
2137
2139
2141
2142
2143
2146
2148
2149
2150
2152
2153
2154
2155
2159
2162
2163
2164
2165
2168
2169
2170
2171
2172
2175
2176
2177
2178
2180
2181
2189
2191
2192
2194
2197
2198
2201
2202
2203
2204
2206
2208
2209
2210
2211
2214
2216
2217
2218
2219
2220
2223
2225
2227
2228
2229
2230
2231
2232
2233
2235
2236
2237
2241
2242
2243
2244
2245
2246
2247
2248
2249
2251
2252
2253
2257
2259
2260
2261
2262
2264
2265
2270
2272
2274
2276
2277
2279
2280
2281
2282
2283
2286
2287
2288
2292
2293
2294
2295
2297
2298
2299
2302
2305
2306
2307
2310
2312
2313
2316
2317
2319
2324
2325
2326
2327
2329
2330
2333
2335
2338
2339
2340
2341
2342
2343
2344
2345
2349
2350
2355
2356
2357
2358
2359
2362
2363
2366
2368
2370
2373
2374
2375
2376
2377
2379
2382
2383
2385
2389
2390
2391
2393
2395
2396
2398
2400
2401
2402
2404
2407
2408
2413
2414
2415
2417
2420
2421
2422
2425
2426
2427
2429
2432
2434
2435
2437
2438
2441
2442
2445
2448
2449
2450
2452
2453
2454
2456
2458
2459
2460
2461
2463
2464
2465
2468
2469
2470
2471
2472
2473
2474
2475
2478
2479
2480
2482
2483
2486
2487
2488
2489
2490
2491
2492
2493
2495
2496
2498
2499
2500
2501
2502
2504
2505
2506
2508
2509
2511
2512
2513
2515
2517
2519
2520
2521
2524
2525
2526
2528
2530
2531
2533
2535
2536
2539
2540
2541
2542
2543
2544
2547
2548
2550
2552
2553
2555
2557
2559
2560
2561
2562
2564
2565
2566
2569
2571
2572
2573
2574
2575
2577
2578
2579
2582
2583
2584
2587
2588
2591
2596
2598
2599
2609
2612
2613
2614
2617
2618
2619
2621
2622
2623
2625
2626
2628
2629
2630
2632
2633
2635
2637
2638
2642
2643
2644
2645
2646
2647
2649
2650
2654
2656
2657
2658
2659
2663
2665
2668
2670
2673
2676
2678
2680
2683
2684
2686
2688
2689
2691
2693
2694
2698
2701
2702
2704
2707
2709
2710
2711
2712
2713
2716
2718
2720
2721
2723
2724
2725
2726
2727
2728
2729
2731
2732
2734
2736
2740
2742
2744
2745
2746
2751
2752
2753
2754
2758
2763
2765
2768
2769
2771
2772
2773
2774
2776
2778
2779
2782
2785
2788
2789
2791
2798
2800
2801
2802
2804
2806
2809
2811
2815
2817
2819
2822
2824
2825
2826
2829
2830
2831
2832
2836
2837
2839
2841
2844
2845
2846
2848
2849
2851
2854
2855
2856
2858
2862
2864
2865
2867
2868
2869
2874
2875
2878
2879
2883
2885
2886
2887
2890
2894
