0
4
5
6
7
10
11
12
15
16
17
18
20
23
24
28
30
31
32
34
36
38
43
44
46
49
52
53
54
59
61
63
66
69
70
71
73
74
75
77
82
83
85
86
87
88
89
90
93
94
95
97
99
101
103
104
105
106
107
110
111
113
115
116
118
119
120
121
122
124
128
129
131
132
134
136
138
139
140
143
144
145
147
148
149
150
151
152
154
155
156
157
159
162
165
166
173
177
178
179
180
181
182
185
186
187
191
192
194
198
199
200
201
203
207
208
214
215
216
217
220
221
223
224
226
227
228
229
231
232
236
238
240
241
245
250
252
256
257
262
264
265
266
267
272
273
274
276
277
280
283
284
285
287
289
295
297
298
299
300
301
302
304
306
307
309
312
313
314
316
317
322
324
325
327
330
331
335
339
340
341
343
344
346
347
351
353
355
358
360
361
364
366
370
376
382
383
386
388
390
392
394
395
396
397
398
399
400
402
403
408
409
411
413
415
419
423
425
428
430
431
433
434
436
438
439
440
441
446
448
449
450
451
456
458
459
460
461
463
467
469
470
473
477
478
479
484
485
488
489
490
491
493
495
497
498
499
504
505
506
507
508
510
511
512
513
515
521
522
523
528
529
532
534
538
540
542
546
547
548
550
551
553
556
558
559
561
562
564
565
566
567
571
572
573
574
575
577
578
582
585
587
589
590
591
592
593
596
597
600
601
607
608
611
613
615
616
617
619
620
622
623
626
627
628
632
633
635
639
640
641
647
648
650
652
654
656
657
658
659
661
663
666
668
671
673
674
675
676
677
678
679
681
682
684
685
686
687
688
689
691
692
693
694
696
697
700
701
702
703
704
706
707
715
717
718
719
720
722
724
732
733
734
735
736
737
740
741
742
743
744
747
748
749
750
751
753
754
755
757
760
761
764
767
768
769
770
771
772
775
779
780
781
782
785
786
788
790
792
794
795
796
797
798
800
801
804
805
806
807
809
812
813
816
817
818
819
821
823
824
825
829
833
835
840
845
850
851
853
856
858
859
861
863
867
868
869
870
871
873
875
876
879
881
883
884
885
886
887
888
890
896
897
904
908
909
910
913
916
917
921
922
926
928
929
931
933
934
936
937
938
942
943
944
951
952
954
955
956
961
962
963
964
967
968
970
971
972
973
974
975
977
979
980
981
982
983
985
986
987
989
991
992
995
996
998
1006
1009
1010
1013
1017
1019
1020
1027
1030
1031
1032
1035
1036
1039
1042
1043
1049
1050
1051
1052
1055
1056
1057
1058
1059
1064
1068
1069
1073
1074
1076
1077
1079
1081
1082
1085
1088
1089
1093
1095
1099
1100
1102
1103
1104
1107
1108
1109
1111
1112
1113
1114
1116
1119
1121
1124
1126
1127
1128
1129
1137
1139
1140
1141
1143
1144
1145
1146
1147
1151
1153
1154
1157
1158
1160
1163
1165
1166
1167
1168
1169
1171
1173
1174
1175
1176
1177
1178
1180
1186
1187
1191
1193
1194
1195
1197
1198
1199
1200
1201
1202
1208
1216
1219
1229
1230
1232
1234
1235
1237
1238
1240
1242
1243
1245
1246
1248
1252
1254
1259
1264
1265
1266
1269
1271
1272
1273
1276
1277
1279
1281
1282
1283
1285
1288
1291
1292
1293
1294
1297
1299
1300
1301
1303
1306
1307
1308
1309
1310
1311
1317
1318
1319
1320
1321
1324
1325
1326
1327
1328
1335
1339
1342
1345
1346
1347
1350
1351
1352
1354
1357
1358
1359
1360
1361
1363
1364
1366
1368
1369
1370
1373
1375
1378
1379
1381
1383
1384
1387
1390
1392
1393
1396
1400
1401
1403
1404
1405
1407
1408
1409
1410
1411
1413
1414
1415
1417
1427
1429
1431
1433
1434
1436
1437
1438
1439
1440
1441
1443
1446
1447
1450
1451
1457
1459
1462
1463
1464
1466
1467
1468
1469
1470
1477
1478
1480
1481
1482
1483
1486
1487
1488
1489
1493
1494
1495
1496
1498
1499
1500
1502
1506
1507
1508
1509
1510
1514
1515
1516
1517
1518
1521
1522
1523
1524
1525
1529
1531
1534
1538
1539
1540
1545
1550
1551
1553
1559
1562
1565
1568
1570
1571
1573
1574
1575
1579
1581
1583
1588
1589
1594
1597
1599
1601
1602
1606
1607
1609
1611
1612
1613
1615
1617
1618
1621
1624
1626
1627
1630
1633
1636
1638
1640
1641
1644
1645
1651
1652
1653
1655
1657
1658
1659
1661
1662
1664
1665
1666
1667
1668
1669
1671
1672
1676
1677
1678
1680
1681
1684
1687
1688
1689
1690
1698
1699
1700
1701
1702
1703
1704
1706
1708
1709
1710
1711
1712
1713
1714
1718
1719
1720
1723
1724
1726
1727
1728
1731
1735
1736
1737
1738
1740
1741
1745
1748
1749
1751
1753
1756
1757
1758
1759
1763
1765
1766
1767
1772
1773
1776
1777
1779
1781
1782
1787
1788
1789
1791
1794
1795
1796
1800
1803
1804
1805
1812
1815
1816
1818
1820
1821
1822
1824
1825
1826
1828
1832
1835
1836
1838
1839
1840
1842
1843
1844
1848
1851
1852
1858
1860
1862
1865
1866
1867
1868
1872
1874
1875
1876
1877
1880
1881
1886
1889
1890
1892
1894
1895
1897
1898
1901
1903
1904
1905
1911
1913
1915
1919
1922
1923
1925
1926
1927
1930
1932
1934
1936
1938
1942
1945
1947
1948
1950
1953
1954
1955
1956
1957
1960
1965
1967
1968
1971
1973
1975
1977
1978
1979
1980
1986
1987
1988
1991
1992
1996
2001
2005
2006
2008
2009
2010
2013
2014
2015
2017
2020
2022
2023
2024
2025
2028
2031
2032
2033
2034
2035
2036
2037
2038
2041
2043
2047
2048
2049
2050
2052
2053
2054
2056
2057
2058
2059
2064
2067
2068
2069
2070
2071
2075
2076
2078
2079
2081
2083
2084
2086
2087
2088
2091
2093
2096
2097
2099
2101
2102
2103
2104
2106
2109
2111
2112
2113
2115
2116
2120
2121
2124
2125
2126
2128
2129
2135
2137
2138
2139
2147
2148
2151
2152
2157
2158
2163
2164
2170
2171
2172
2173
2174
2175
2176
2177
2180
2182
2183
2184
2185
2187
2191
2193
2194
2196
2197
2198
2199
2203
2204
2205
2206
2207
2209
2211
2212
2214
2218
2219
2220
2221
2222
2223
2224
2227
2228
2229
2230
2231
2232
2233
2234
2240
2241
2242
2244
2245
2246
2248
2249
2251
2253
2254
2257
2258
2264
2268
2270
2272
2274
2277
2278
2280
2281
2282
2283
2286
2287
2292
2293
2296
2304
2305
2306
2307
2311
2314
2315
2317
2318
2319
2320
2321
2323
2324
2325
2328
2330
2333
2334
2335
2340
2341
2342
2343
2344
2345
2348
2350
2351
2357
2360
2361
2363
2365
2367
2369
2370
2373
2375
2376
2377
2378
2382
2384
2385
2386
2389
2390
2394
2399
2400
2402
2403
2407
2410
2412
2418
2419
2420
2424
2425
2428
2430
2432
2433
2434
2437
2441
2442
2449
2450
2451
2452
2453
2455
2457
2459
2460
2461
2463
2468
2471
2472
2473
2475
2481
2485
2486
2487
2488
2490
2491
2494
2495
2496
2497
2498
2500
2502
2505
2507
2511
2514
2516
2518
2519
2520
2521
2524
2525
2526
2527
2528
2529
2530
2535
2536
2537
2539
2541
2545
2548
2549
2559
2560
2565
2568
2573
2574
2575
2576
2577
2579
2581
2584
2585
2587
2588
2589
2590
2591
2597
2599
2600
2605
2609
2610
2611
2614
2615
2616
2618
2620
2622
2623
2628
2629
2631
2633
2636
2637
2639
2640
2641
2642
2648
2649
2652
2653
2656
2658
2659
2660
2662
2664
2667
2669
2676
2677
2680
2681
2682
2683
2687
2688
2690
2691
2692
2693
2696
2698
2699
2700
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2714
2718
2721
2722
2728
2729
2732
2733
2734
2736
2738
2739
2742
2743
2744
2746
2747
2754
2755
2756
2759
2761
2762
2765
2768
2769
2770
2772
2775
2777
2778
2779
2780
2782
2784
2786
2787
2788
2791
2792
2795
2796
2797
2798
2799
2801
2802
2804
2805
2806
2808
2809
2810
2811
2813
2815
2817
2818
2820
2821
2822
2823
2830
2831
2832
2833
2835
2836
2837
2838
2839
2840
2841
2843
2847
2848
2853
2854
2861
2862
2863
2866
2867
2868
2870
2871
2875
2877
2878
2879
2882
2883
2885
2887
2892
2895
2896
2897
2903
2905
2907
