0
1
3
4
5
7
8
10
11
12
13
15
16
17
18
20
21
23
27
29
31
33
34
35
39
41
45
47
48
49
50
54
57
58
60
61
64
65
69
71
74
76
78
82
83
84
85
86
88
89
90
91
92
94
98
100
101
102
103
106
110
111
113
114
116
117
119
122
124
127
130
131
132
134
135
136
141
143
145
147
148
149
152
153
157
158
159
161
163
164
165
167
169
170
172
174
177
179
181
182
183
184
187
189
193
194
195
197
198
199
200
201
203
204
208
209
210
211
214
215
216
217
218
221
222
230
231
234
235
236
237
241
242
243
244
245
246
247
249
250
251
252
255
256
257
258
259
262
266
270
271
272
273
274
276
277
278
279
280
281
282
286
289
292
293
296
297
299
300
301
302
303
305
306
307
308
312
316
317
320
321
322
323
324
325
326
331
333
336
338
339
341
342
343
346
347
349
350
351
352
353
355
356
357
358
360
364
365
370
371
373
375
376
377
378
379
380
381
382
385
386
387
388
392
394
395
398
399
405
406
407
408
409
410
412
418
422
423
424
425
428
429
434
436
437
440
441
442
443
444
446
447
448
451
453
454
456
457
458
459
460
461
462
463
465
466
467
469
470
471
472
473
475
476
478
479
480
484
485
487
489
492
494
495
498
499
500
502
503
505
506
507
510
515
517
518
519
520
521
522
524
526
527
529
531
532
533
537
541
543
546
547
549
552
555
557
558
560
561
562
567
568
570
571
572
575
576
577
581
582
583
584
585
590
591
593
594
595
596
598
600
603
604
606
607
608
611
614
616
618
619
620
621
622
623
624
626
628
629
633
635
636
637
640
641
642
643
644
646
647
648
649
650
651
654
655
656
657
661
662
663
665
666
670
672
673
679
680
684
685
686
688
690
691
692
694
696
697
698
699
700
701
702
704
705
707
708
711
712
713
717
718
721
722
723
725
727
729
730
734
735
736
740
743
744
746
747
748
749
750
751
754
755
756
760
761
763
766
769
770
771
773
774
776
778
779
780
781
782
783
787
789
790
791
792
793
794
796
798
799
801
803
804
807
808
809
811
812
813
814
818
822
823
824
825
826
827
829
830
831
835
836
837
838
840
843
844
846
847
848
849
850
852
854
859
860
861
862
868
869
870
872
873
877
878
879
880
881
882
883
884
889
891
892
895
897
899
902
903
905
906
907
908
910
911
912
913
914
915
916
917
918
919
920
922
924
926
927
928
931
932
933
934
935
937
940
941
942
945
946
947
948
949
953
954
957
958
959
961
964
965
966
967
969
974
975
978
979
980
981
983
985
987
989
991
995
996
997
998
1002
1003
1004
1005
1006
1007
1008
1010
1011
1013
1014
1016
1018
1019
1021
1022
1023
1027
1028
1032
1033
1034
1037
1038
1039
1042
1044
1045
1046
1050
1052
1053
1054
1055
1056
1058
1060
1061
1063
1066
1067
1069
1070
1071
1074
1077
1078
1079
1082
1085
1086
1088
1089
1092
1094
1097
1101
1103
1104
1105
1112
1113
1114
1117
1118
1119
1120
1122
1124
1125
1126
1129
1130
1132
1138
1140
1142
1143
1145
1146
1147
1148
1149
1150
1152
1153
1154
1155
1156
1157
1160
1161
1162
1165
1166
1169
1170
1171
1172
1176
1177
1178
1179
1181
1182
1186
1188
1189
1191
1193
1195
1198
1199
1202
1205
1206
1209
1210
1212
1213
1214
1215
1216
1217
1218
1222
1224
1227
1230
1233
1235
1240
1241
1242
1243
1245
1247
1249
1252
1254
1255
1256
1257
1258
1260
1262
1263
1264
1266
1268
1269
1270
1272
1273
1276
1277
1280
1282
1283
1284
1285
1286
1288
1289
1292
1293
1294
1295
1296
1297
1299
1300
1303
1305
1307
1312
1313
1314
1315
1316
1318
1319
1320
1323
1324
1325
1326
1327
1334
1335
1336
1337
1339
1340
1341
1343
1345
1349
1352
1353
1355
1358
1362
1363
1364
1365
1367
1368
1369
1370
1372
1373
1375
1380
1381
1382
1384
1386
1387
1389
1390
1392
1393
1394
1395
1396
1397
1398
1400
1401
1402
1403
1404
1405
1410
1411
1412
1413
1414
1415
1416
1419
1420
1421
1423
1425
1426
1429
1431
1435
1438
1439
1440
1443
1446
1447
1449
1452
1455
1456
1458
1460
1464
1466
1467
1469
1470
1472
1474
1477
1480
1482
1484
1486
1487
1489
1490
1491
1492
1496
1497
1500
1501
1502
1503
1504
1505
1506
1507
1508
1510
1511
1512
1513
1516
1518
1519
1522
1523
1527
1528
1529
1530
1533
1534
1535
1537
1540
1541
1543
1546
1547
1550
1552
1555
1557
1558
1559
1565
1566
1567
1569
1570
1571
1573
1576
1577
1578
1579
1581
1582
1584
1585
1587
1589
1591
1594
1599
1600
1602
1603
1605
1606
1608
1612
1614
1615
1616
1617
1618
1622
1624
1626
1627
1629
1630
1631
1632
1633
1634
1635
1637
1639
1643
1644
1646
1648
1650
1652
1653
1655
1659
1660
1661
1666
1667
1669
1670
1671
1673
1675
1676
1678
1680
1682
1684
1685
1688
1689
1690
1691
1692
1693
1694
1696
1698
1702
1708
1710
1711
1712
1713
1714
1715
1717
1718
1719
1720
1721
1724
1725
1727
1729
1730
1731
1732
1734
1735
1736
1737
1738
1740
1741
1743
1744
1745
1748
1749
1751
1753
1754
1756
1758
1759
1762
1765
1767
1768
1769
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1786
1787
1788
1789
1797
1800
1801
1803
1804
1809
1811
1812
1813
1815
1816
1817
1820
1821
1822
1823
1825
1826
1827
1828
1831
1832
1833
1834
1836
1839
1840
1843
1844
1847
1849
1850
1851
1852
1853
1854
1858
1859
1861
1864
1865
1867
1869
1870
1872
1876
1877
1883
1885
1886
1891
1892
1893
1894
1895
1896
1897
1898
1902
1903
1905
1906
1908
1909
1911
1913
1915
1916
1918
1921
1922
1924
1925
1926
1928
1930
1933
1936
1938
1940
1941
1942
1943
1945
1947
1948
1949
1950
1951
1954
1955
1956
1957
1959
1963
1964
1966
1969
1971
1972
1973
1978
1979
1981
1982
1986
1991
1993
1997
2002
2005
2006
2007
2009
2012
2013
2014
2015
2018
2019
2020
2022
2023
2024
2025
2026
2027
2028
2029
2030
2032
2034
2035
2038
2040
2041
2044
2046
2049
2052
2053
2054
2055
2056
2058
2060
2061
2062
2065
2066
2067
2069
2071
2074
2075
2077
2078
2079
2081
2082
2083
2088
2089
2090
2092
2093
2094
2098
2100
2101
2102
2105
2108
2109
2110
2111
2113
2114
2116
2117
2118
2119
2122
2123
2125
2126
2132
2133
2134
2137
2138
2139
2140
2141
2142
2143
2144
2152
2153
2154
2156
2157
2158
2160
2162
2163
2164
2166
2170
2171
2172
2173
2175
2176
2177
2179
2180
2182
2183
2184
2185
2187
2189
2190
2191
2194
2195
2196
2197
2198
2199
2201
2202
2205
2208
2209
2210
2211
2218
2221
2225
2227
2228
2230
2235
2237
2239
2242
2243
2244
2246
2247
2248
2249
2251
2252
2253
2255
2256
2257
2260
2261
2263
2266
2267
2268
2269
2270
2273
2276
2277
2280
2281
2288
2289
2290
2292
2293
2300
2301
2303
2304
2307
2312
2313
2314
2318
2320
2321
2322
2326
2328
2329
2330
2331
2332
2335
2336
2338
2341
2342
2343
2344
2345
2348
2349
2351
2355
2359
2360
2361
2366
2367
2370
2371
2375
2376
2380
2381
2382
2384
2387
2388
2391
2394
2395
2397
2398
2399
2403
2404
2408
2414
2416
2417
2419
2420
2422
2424
2425
2426
2427
2428
2431
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2448
2450
2451
2452
2454
2455
2456
2459
2460
2461
2462
2463
2464
2465
2467
2469
2471
2472
2473
2474
2475
2476
2478
2480
2485
2486
2488
2490
2492
2493
2498
2499
2505
2506
2509
2510
2514
2515
2519
2521
2522
2523
2525
2526
2528
2530
2532
2534
2536
2537
2539
2540
2544
2545
2546
2548
2549
2550
2554
2556
2557
2558
2559
2560
2561
2564
2565
2566
2567
2568
2569
2570
2572
2574
2578
2579
2581
2582
2586
2588
2589
2591
2592
2593
2594
2597
2598
2602
2603
2604
2606
2609
2614
2615
2620
2621
2624
2625
2627
2629
2631
2632
2634
2636
2637
2642
2643
2644
2645
2647
2649
2653
2655
2658
2661
2665
2666
2668
2673
2676
2677
2678
2679
2681
2683
2685
2687
2690
2691
2693
2695
2696
2698
2701
2704
2705
2707
2710
2714
2715
2716
2717
2718
2719
2728
2729
2730
2731
2733
2735
2741
2742
2744
2745
2746
2747
2748
2749
2750
2751
2755
2756
2758
2759
2762
2763
2766
2768
2772
2774
2775
2776
2777
2779
2782
2783
2784
2786
2787
2788
2789
2791
2796
2797
2798
2799
2803
2805
2806
2807
2809
2810
2811
2814
2815
2816
2817
2818
2823
2824
2826
2827
2828
2830
2831
2832
2833
2834
2835
2836
2837
2841
2843
2844
2845
2850
2852
2854
2856
2858
2859
2866
2867
2869
2870
2871
2875
2876
2879
2880
2881
2882
2883
2884
2885
2887
2888
2889
2890
2891
2892
2893
2894
2896
2897
2898
2899
2901
2904
2906
2908
2910
2911
2913
2917
2918
2921
2924
2934
2936
2937
2938
2939
2940
2941
2942
2944
2945
2946
2947
2948
2949
2954
2955
2956
2957
2958
2959
2962
2963
2964
2967
2968
2971
2972
2973
2975
2976
2977
2982
2983
2984
2985
2986
2987
2989
2990
2992
2993
2994
2997
3001
3004
3005
3006
3009
3010
3012
3016
3017
3018
3019
3020
3023
3026
3029
3030
3032
3035
3037
3038
3040
3045
3046
3048
3050
3053
3056
3057
3060
3061
3062
3064
3065
3068
3069
3072
3073
3074
3075
3077
3080
3082
3083
3086
3087
3091
3093
3095
3096
3097
3098
3101
3102
3105
3108
3110
3111
3116
3118
3119
3121
3122
3123
3125
3126
3127
3128
3134
3136
3137
3139
3141
3144
3145
3146
3150
3151
3152
3153
3155
3157
3158
3159
3162
3163
3164
3165
3166
3167
3168
3169
3175
3181
3182
3183
3185
3186
3187
3188
3190
3191
3194
3195
3196
3198
3199
3201
3202
3204
3205
3207
3209
3211
3213
3214
3216
3217
3218
3219
3220
3221
3222
3225
3226
3228
3230
3232
3234
3237
3238
3242
3244
3246
3247
3248
3252
3255
3256
3257
3258
3259
3262
3263
3265
3266
3267
3268
3272
3273
3274
3279
3281
3284
3287
3288
3289
3290
3293
3296
3297
3298
3300
3303
3304
3308
3309
3310
3311
3312
3313
3314
3315
