0
2
3
7
9
16
17
18
19
20
23
24
27
29
30
31
32
36
37
38
39
40
41
44
45
47
48
49
52
54
55
57
59
60
62
63
64
65
66
67
70
72
73
74
75
76
77
78
80
81
83
84
85
87
89
91
93
96
97
98
100
101
102
105
107
108
110
111
113
114
120
121
123
124
126
127
129
133
139
140
142
144
146
148
150
151
152
153
156
158
160
161
163
165
168
169
171
172
173
175
177
178
181
182
183
185
187
188
189
191
192
194
195
196
197
198
201
203
204
205
209
210
211
212
213
215
217
222
225
227
230
231
232
233
234
236
237
238
239
240
241
242
244
246
248
250
251
253
255
256
257
258
259
265
266
269
270
271
272
274
276
278
280
283
285
286
287
288
289
290
292
294
300
301
302
303
306
311
313
314
317
318
319
322
323
326
329
330
331
332
334
335
338
340
343
344
345
348
349
351
353
355
356
357
359
360
361
362
364
365
366
367
373
374
375
378
380
382
384
385
389
390
394
395
396
397
398
400
401
404
407
408
410
413
415
418
421
422
423
425
426
428
430
431
432
434
435
436
439
443
445
446
447
449
453
454
455
457
461
462
464
465
466
468
469
471
472
474
478
480
481
482
483
484
485
486
487
488
490
491
492
495
499
500
502
505
506
508
509
511
512
513
515
520
522
523
526
527
528
529
530
533
536
538
539
540
541
543
545
547
548
549
551
552
556
559
560
562
565
566
567
568
569
574
575
576
577
579
580
582
583
584
585
587
589
590
591
592
594
595
596
600
601
603
605
608
609
610
611
612
613
615
618
620
622
623
624
625
626
629
630
631
634
635
639
640
641
643
644
645
648
649
650
651
652
653
654
658
660
663
664
667
668
669
670
673
674
675
676
678
679
683
685
686
688
689
690
692
693
698
700
701
705
708
709
710
711
712
716
717
721
723
724
725
728
729
730
731
733
734
736
738
739
741
742
743
744
746
747
748
749
751
752
756
757
758
759
761
762
763
765
767
768
769
771
772
774
775
778
780
781
785
787
792
793
794
795
796
798
799
801
802
804
806
807
809
810
811
812
815
816
819
822
823
824
826
827
830
832
833
836
837
838
839
840
842
843
846
847
848
849
850
851
852
854
855
856
857
858
860
862
863
864
865
870
872
874
877
878
880
882
883
884
886
888
889
895
896
897
899
901
904
905
910
911
912
916
917
918
919
920
922
925
927
930
932
933
934
935
938
939
940
942
943
946
951
955
956
957
958
960
961
962
963
964
965
966
969
970
971
975
976
978
981
983
988
989
992
995
996
997
998
999
1002
1008
1009
1010
1013
1014
1016
1017
1018
1020
1023
1025
1026
1027
1031
1032
1033
1034
1040
1043
1044
1045
1049
1050
1051
1052
1054
1055
1057
1058
1061
1062
1064
1065
1069
1070
1075
1077
1080
1081
1084
1086
1089
1090
1091
1092
1096
1099
1100
1101
1102
1104
1105
1107
1108
1111
1113
1114
1116
1118
1119
1120
1126
1127
1128
1129
1130
1131
1132
1135
1138
1139
1140
1141
1142
1145
1146
1147
1148
1150
1154
1155
1158
1160
1161
1162
1163
1166
1167
1171
1172
1175
1177
1179
1182
1183
1185
1187
1188
1190
1193
1196
1197
1198
1199
1200
1201
1202
1203
1207
1208
1210
1211
1212
1220
1227
1230
1231
1233
1234
1236
1239
1240
1244
1246
1247
1250
1254
1261
1262
1266
1268
1269
1270
1271
1272
1274
1275
1279
1280
1284
1285
1286
1289
1290
1291
1296
1297
1299
1303
1304
1305
1307
1308
1310
1314
1316
1317
1319
1321
1322
1323
1324
1325
1327
1330
1331
1332
1333
1336
1339
1340
1341
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1358
1359
1360
1361
1362
1364
1365
1366
1367
1370
1371
1372
1373
1376
1377
1378
1379
1382
1383
1385
1386
1387
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1402
1403
1406
1407
1408
1411
1412
1419
1420
1421
1423
1424
1425
1426
1427
1430
1432
1433
1434
1435
1436
1437
1442
1444
1445
1446
1447
1449
1454
1457
1458
1459
1461
1462
1464
1466
1467
1468
1471
1472
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1491
1492
1493
1496
1497
1499
1500
1505
1506
1507
1509
1510
1511
1512
1516
1517
1519
1521
1523
1524
1525
1527
1529
1530
1533
1535
1538
1539
1540
1544
1546
1548
1549
1551
1552
1553
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1569
1570
1571
1572
1573
1574
1575
1577
1578
1580
1583
1584
1585
1586
1587
1589
1590
1594
1595
1598
1599
1601
1604
1606
1608
1610
1611
1616
1617
1618
1619
1621
1622
1624
1626
1628
1629
1631
1633
1634
1635
1636
1637
1644
1645
1646
1647
1649
1651
1655
1656
1657
1660
1661
1663
1664
1665
1668
1669
1671
1672
1674
1676
1678
1679
1680
1681
1682
1684
1686
1687
1688
1689
1691
1692
1693
1694
1695
1698
1700
1702
1703
1707
1710
1712
1713
1716
1717
1722
1723
1725
1726
1727
1735
1736
1737
1740
1741
1742
1743
1745
1746
1747
1748
1750
1751
1753
1754
1755
1756
1759
1761
1763
1764
1765
1767
1771
1773
1774
1780
1781
1785
1787
1790
1791
1792
1793
1794
1795
1797
1799
1800
1801
1803
1806
1809
1810
1811
1815
1817
1818
1820
1822
1826
1828
1830
1831
1832
1833
1835
1836
1837
1838
1839
1842
1844
1845
1846
1848
1849
1851
1855
1862
1863
1864
1865
1867
1868
1869
1872
1873
1874
1875
1876
1879
1882
1884
1885
1887
1888
1890
1891
1894
1895
1900
1901
1902
1903
1906
1907
1908
1910
1911
1915
1917
1920
1921
1922
1924
1928
1929
1930
1932
1933
1934
1936
1937
1940
1943
1947
1951
1957
1959
1961
1962
1963
1966
1969
1972
1974
1975
1980
1981
1983
1984
1985
1986
1989
1990
1992
1994
1996
1997
1998
2000
2001
2002
2003
2006
2007
2008
2012
2014
2017
2018
2019
2021
2022
2023
2024
2029
2030
2031
2032
2033
2034
2036
2037
2038
2040
2043
2044
2045
2046
2047
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2062
2063
2064
2066
2074
2078
2080
2081
2084
2085
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2101
2106
2109
2111
2113
2114
2115
2117
2119
2121
2123
2124
2125
2126
2127
2128
2130
2132
2134
2135
2137
2139
2142
2144
2146
2150
2152
2153
2156
2157
2159
2161
2164
2166
2169
2171
2172
2173
2174
2175
2176
2177
2180
2181
2182
2185
2186
2190
2192
2193
2195
2196
2199
2204
2205
2212
2213
2214
2215
2217
2219
2220
2222
2224
2225
2226
2227
2228
2230
2232
2233
2234
2235
2238
2239
2241
2242
2244
2245
2246
2248
2250
2251
2252
2253
2254
2255
2257
2258
2259
2261
2263
2265
2266
2268
2269
2272
2273
2274
2275
2276
2278
2285
2286
2287
2288
2290
2292
2294
2296
2297
2298
2299
2301
2303
2305
2307
2309
2310
2312
2314
2315
2316
2318
2323
2324
2326
2327
2331
2332
2333
2334
2336
2337
2338
2341
2343
2349
2350
2351
2353
2361
2363
2364
2366
2367
2368
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2388
2389
2391
2396
2397
2398
2400
2401
2402
2403
2404
2406
2407
2408
2409
2410
2413
2414
2415
2419
2420
2421
2423
2425
2426
2427
2430
2431
2433
2434
2435
2437
2438
2439
2440
2441
2442
2443
2444
2447
2449
2451
2452
2453
2455
2459
2461
2463
2464
2465
2466
2467
2468
2474
2477
2479
2480
2482
2483
2485
2490
2493
2494
2495
2496
2497
2498
2500
2501
2503
2505
2506
2507
2508
2510
2511
2512
2513
2516
2518
2519
2520
2522
2523
2524
2525
2526
2528
2529
2531
2533
2538
2540
2541
2543
2544
2546
2549
2553
2554
2556
2558
2559
2561
2562
2563
2564
2565
2566
2568
2569
2570
2572
2573
2574
2575
2576
2579
2580
2581
2582
2586
2588
2590
2591
2592
2598
2600
2603
2604
2606
2607
2608
2614
2616
2618
2619
2621
2622
2624
2625
2626
2627
2628
2629
2631
2632
2638
2639
2640
2641
2645
2647
2648
2649
2652
2653
2654
2655
2659
2660
2662
2663
2664
2667
2668
2669
2671
2672
2673
2676
2677
2678
2679
2680
2681
2684
2687
2690
2691
2692
2693
2694
2697
2698
2699
2700
2701
2702
2705
2706
2707
2709
2710
2711
2713
2714
2716
2718
2719
2720
2722
2723
2730
2731
2732
2733
2735
2736
2737
2738
2739
2741
2742
2743
2744
2745
2746
2747
2748
2749
2752
2753
2755
2757
2758
2759
2760
2761
2762
2764
2765
2769
2770
2772
2773
2774
2775
2776
2778
2780
2782
2783
2784
2786
2787
2793
2795
2796
2797
2799
2801
2802
2805
2806
2808
2809
2810
2812
2814
2817
2818
2819
2820
2823
2825
2826
2828
2830
2831
2832
2833
2834
2835
2836
2838
2840
2841
2843
2845
2846
2848
2849
2850
2852
2853
2855
2856
2857
2858
2861
2862
2863
2864
2866
2867
2868
2869
2870
2871
2875
2876
2879
2881
2884
2889
2891
2892
2893
2894
2897
2898
2899
2900
2903
2907
2908
2910
2914
2917
2918
2919
2920
