0
1
2
4
6
8
9
11
12
13
16
17
18
19
20
21
22
23
24
25
34
35
37
38
40
42
45
46
48
49
50
52
53
54
55
56
58
60
61
62
63
66
69
70
71
73
75
76
77
80
82
84
88
89
90
91
92
93
94
98
99
100
101
104
105
107
109
110
111
112
114
116
117
118
119
120
124
125
128
129
130
131
132
133
134
136
140
141
142
143
144
146
147
149
151
152
153
154
155
157
159
160
161
164
171
174
181
182
183
184
185
186
188
189
190
192
193
195
197
200
201
202
203
204
206
207
208
209
211
212
213
214
215
216
217
218
220
221
222
223
224
226
227
228
229
230
231
233
234
236
237
239
241
244
246
247
249
253
256
257
260
261
262
264
267
269
271
272
273
274
276
278
280
281
284
285
286
289
292
293
294
297
298
303
304
307
308
309
311
314
316
318
319
320
321
322
326
327
329
330
331
333
334
335
336
338
340
341
342
344
349
350
351
352
353
355
359
362
368
370
372
376
377
379
380
381
382
384
385
387
388
389
390
391
394
398
400
401
403
404
405
409
413
414
417
418
419
420
421
422
428
431
432
434
435
441
444
446
449
452
453
457
459
461
462
463
464
466
467
468
469
472
473
474
475
479
480
483
484
487
488
489
491
492
493
494
495
497
499
502
503
506
507
509
510
512
515
519
520
521
523
525
526
527
529
531
532
539
540
541
545
546
551
552
553
556
557
559
560
563
564
567
571
573
575
579
580
582
584
585
586
587
588
589
590
591
593
596
597
600
601
603
604
605
607
608
612
615
617
618
619
620
621
623
624
628
632
633
638
639
640
643
646
649
650
651
652
653
658
661
662
663
664
666
668
669
671
675
677
678
679
680
681
683
684
685
686
690
691
692
693
695
696
699
700
703
706
708
710
713
714
717
719
720
724
726
727
728
736
737
739
740
741
743
744
748
753
755
757
758
759
760
763
764
766
768
769
770
773
775
776
778
779
780
781
783
784
786
787
788
789
793
796
797
798
799
800
801
804
805
806
809
810
812
814
815
816
818
821
822
826
829
830
834
836
838
842
844
845
846
847
849
851
852
855
857
858
859
861
863
864
865
866
867
868
870
872
875
876
878
879
880
881
882
885
886
888
890
891
892
895
897
898
903
905
906
907
908
911
912
913
914
916
918
922
923
924
925
926
927
932
933
934
935
939
940
942
947
948
949
951
953
956
959
960
961
962
963
964
965
967
968
970
973
974
975
976
978
980
982
983
989
991
993
995
996
997
998
999
1002
1003
1004
1005
1006
1008
1009
1011
1013
1015
1016
1020
1022
1024
1025
1027
1029
1030
1032
1035
1037
1038
1039
1040
1041
1043
1044
1045
1048
1050
1051
1052
1054
1056
1057
1060
1061
1062
1063
1064
1068
1071
1072
1073
1074
1076
1077
1078
1080
1081
1082
1084
1085
1086
1087
1088
1089
1090
1092
1093
1094
1097
1098
1102
1103
1104
1109
1110
1112
1114
1116
1120
1122
1124
1126
1127
1132
1135
1136
1137
1138
1139
1141
1143
1145
1146
1147
1149
1150
1151
1156
1159
1160
1161
1162
1163
1167
1169
1170
1174
1176
1178
1179
1180
1181
1183
1184
1185
1186
1188
1189
1191
1195
1196
1197
1198
1199
1200
1201
1202
1204
1205
1206
1207
1208
1209
1213
1216
1218
1220
1221
1223
1224
1225
1227
1229
1230
1231
1232
1234
1235
1237
1239
1240
1242
1244
1245
1247
1248
1249
1250
1251
1256
1257
1261
1263
1266
1271
1275
1279
1280
1281
1283
1284
1285
1286
1287
1290
1291
1292
1293
1298
1299
1302
1303
1304
1306
1307
1308
1309
1311
1312
1313
1314
1317
1319
1321
1322
1323
1325
1326
1328
1329
1330
1331
1334
1342
1343
1344
1345
1346
1347
1348
1349
1352
1353
1354
1355
1357
1358
1360
1361
1362
1365
1368
1374
1375
1380
1382
1384
1389
1390
1391
1393
1394
1395
1403
1405
1406
1410
1411
1413
1414
1417
1418
1421
1422
1423
1424
1425
1426
1428
1430
1433
1435
1436
1437
1439
1440
1442
1446
1447
1448
1449
1450
1451
1453
1457
1458
1459
1460
1461
1462
1463
1464
1468
1469
1471
1475
1477
1479
1481
1482
1483
1484
1485
1486
1488
1489
1490
1494
1496
1498
1499
1501
1503
1504
1506
1507
1508
1509
1510
1511
1518
1519
1522
1526
1527
1528
1529
1531
1538
1539
1541
1544
1548
1549
1550
1551
1552
1553
1555
1556
1557
1558
1561
1563
1564
1565
1567
1568
1570
1571
1572
1575
1577
1580
1581
1582
1584
1585
1587
1588
1590
1591
1592
1593
1594
1595
1602
1603
1604
1605
1606
1608
1612
1615
1616
1619
1621
1623
1624
1625
1627
1630
1632
1634
1636
1639
1640
1641
1642
1645
1646
1649
1650
1652
1657
1659
1663
1664
1665
1667
1668
1669
1672
1673
1674
1678
1679
1680
1682
1683
1684
1686
1689
1691
1692
1693
1694
1699
1700
1701
1702
1703
1704
1705
1706
1707
1710
1714
1715
1718
1719
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1735
1736
1738
1739
1740
1742
1748
1749
1751
1752
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1770
1772
1773
1775
1776
1778
1779
1780
1782
1789
1790
1793
1794
1795
1796
1797
1798
1799
1805
1809
1810
1811
1813
1814
1815
1816
1818
1819
1821
1822
1823
1824
1825
1826
1829
1830
1831
1835
1836
1838
1839
1841
1842
1844
1849
1851
1852
1854
1855
1856
1857
1858
1862
1863
1865
1866
1867
1869
1870
1871
1873
1874
1876
1877
1878
1882
1883
1884
1885
1886
1887
1888
1891
1893
1894
1896
1897
1899
1900
1902
1906
1907
1908
1911
1912
1914
1915
1921
1922
1926
1927
1928
1929
1930
1931
1932
1935
1937
1938
1940
1945
1948
1949
1950
1951
1952
1953
1956
1957
1958
1959
1961
1962
1963
1964
1965
1966
1967
1968
1969
1971
1972
1973
1979
1982
1983
1984
1985
1989
1990
1992
1996
1997
1998
1999
2000
2002
2003
2004
2005
2006
2008
2011
2012
2013
2016
2018
2019
2020
2023
2029
2030
2033
2034
2036
2037
2038
2042
2043
2046
2048
2049
2050
2053
2054
2055
2056
2059
2062
2067
2068
2069
2070
2071
2072
2073
2074
2080
2082
2083
2085
2086
2087
2090
2091
2092
2093
2095
2098
2100
2101
2102
2103
2104
2106
2111
2116
2120
2121
2123
2126
2129
2131
2134
2136
2137
2138
2140
2141
2144
2145
2148
2149
2151
2152
2154
2155
2159
2160
2163
2164
2171
2172
2173
2174
2175
2176
2178
2180
2181
2183
2184
2189
2192
2193
2195
2196
2198
2199
2201
2202
2203
2204
2205
2206
2207
2210
2212
2217
2218
2219
2220
2223
2226
2229
2233
2235
2236
2237
2240
2241
2242
2243
2249
2253
2254
2256
2257
2259
2260
2261
2264
2266
2271
2273
2274
2275
2276
2277
2278
2279
2280
2282
2285
2286
2287
2289
2292
2296
2297
2298
2302
2305
2306
2308
2310
2313
2315
2316
2318
2319
2320
2321
2328
2329
2330
2334
2335
2337
2340
2342
2343
2345
2346
2347
2350
2351
2352
2354
2357
2358
2359
2362
2364
2365
2366
2367
2368
2369
2370
2372
2373
2375
2376
2377
2379
2383
2386
2387
2388
2389
2394
2395
2399
2402
2403
2405
2406
2407
2408
2410
2411
2412
2413
2415
2420
2423
2424
2425
2426
2428
2429
2430
2433
2434
2435
2439
2440
2441
2444
2445
2446
2448
2449
2450
2452
2453
2454
2455
2456
2457
2459
2460
2462
2463
2465
2466
2474
2476
2478
2480
2481
2483
2484
2486
2488
2489
2491
2492
2493
2496
2497
2500
2501
2503
2504
2506
2510
2513
2514
2518
2520
2525
2526
2529
2530
2534
2537
2538
2539
2541
2543
2545
2546
2547
2548
2549
2550
2551
2552
2554
2557
2558
2559
2560
2561
2564
2565
2567
2568
2571
2576
2578
2580
2584
2585
2587
2588
2592
2593
2594
2596
2598
2602
2604
2605
2606
2608
2613
2614
2615
2616
2618
2621
2623
2624
2625
2629
2630
2631
2632
2634
2635
2639
2640
2641
2642
2643
2644
2648
2650
2651
2652
2656
2657
2658
2659
2662
2663
2666
2667
2668
2669
2670
2677
2681
2684
2685
2688
2691
2692
2693
2694
2695
2696
2697
2699
2700
2702
2704
2706
2707
2708
2709
2713
2714
2715
2719
2721
2722
2724
2725
2726
2729
2730
2732
2738
2739
2741
2742
2749
2750
2752
2754
2755
2756
2758
2760
2761
2764
2765
2767
2768
2770
2772
2773
2776
2777
2780
2785
2786
2787
2789
2792
2793
2794
2796
2800
2801
2802
2803
2804
2805
2806
2807
2808
2811
2812
2814
2816
2817
2823
2826
2827
2829
2830
2831
2832
2836
2837
2838
2843
2845
2846
2847
2848
2849
2851
2853
2854
2856
2857
2858
2859
2861
2862
2863
2864
2865
2867
2869
2877
2878
2879
2880
2881
2882
2886
2887
2889
2890
2891
2895
2896
2901
2903
2905
2907
2909
2914
2915
2916
2919
2920
2921
2923
2924
2925
2926
2928
2929
2930
2931
2932
2934
2935
2938
2939
2940
2946
2947
2948
2949
2957
2959
2961
2963
2964
2968
2970
2971
2972
2973
2974
2975
2976
2981
2982
2985
2988
2990
2993
2997
2999
3004
3005
3006
3007
3010
3011
3013
3019
3020
3021
3023
3024
3025
3028
3031
3034
3035
3037
3038
3039
3041
3042
3043
3044
3045
3048
3050
3051
3052
3053
3057
3059
3060
3062
3066
3067
3068
3070
3071
3072
3073
3076
3077
3078
3084
3087
3089
3091
3092
3095
3096
3097
3099
3100
3102
3103
3104
3107
3108
3111
3112
3113
3114
3117
3118
3121
3123
3124
3125
3127
3128
3131
3133
3134
3137
3141
3145
3146
3148
3149
3150
3151
3152
3153
3154
3157
3160
3162
3163
3165
3166
3168
3171
3172
3173
3175
3176
3177
3178
3179
3180
3181
3184
3185
3188
3190
3191
3192
3194
3197
3200
3202
3206
3209
3210
3211
3215
3218
3219
3220
3221
3223
3226
3227
3228
3229
3231
3232
3234
3237
3240
3244
3245
3247
3251
3253
3254
3255
3257
3258
3259
3260
3262
3263
3271
3274
3276
3277
3278
3280
3283
3286
3291
3293
3294
3297
3299
3300
3302
3303
3304
3305
3307
3308
3309
3314
3315
3318
3319
3320
3322
3323
3324
3328
3329
3330
3331
3332
3335
3339
3352
3353
3354
3356
3357
3358
3359
3361
3363
3364
3367
3372
3375
3378
3379
3381
3382
3383
3384
3389
3391
3392
3393
3394
