0
1
2
4
5
6
7
9
10
15
16
17
19
20
22
24
25
26
30
32
33
37
38
41
44
45
46
47
49
53
57
59
66
70
71
74
75
76
77
80
81
82
84
92
93
94
95
98
99
105
110
111
115
116
118
119
120
121
123
124
131
137
140
144
145
147
152
153
154
158
165
166
168
173
177
182
183
185
187
192
196
199
200
203
204
206
209
210
212
215
218
221
222
224
225
228
232
233
235
236
237
240
246
249
252
255
256
259
263
269
270
273
281
289
290
292
294
295
297
298
300
302
305
306
307
309
310
311
313
314
318
320
321
323
325
331
332
335
336
340
341
342
343
350
354
355
357
360
363
366
369
374
382
384
388
389
392
394
395
399
400
401
408
410
412
413
419
423
430
434
437
442
443
449
453
454
456
457
458
459
460
465
466
467
469
474
475
478
480
481
485
486
491
492
493
502
503
505
506
507
509
511
512
513
515
516
521
524
526
528
530
531
533
535
540
542
546
548
551
554
556
559
564
566
568
573
574
575
576
577
578
581
587
588
590
592
594
596
599
601
602
603
604
606
607
608
611
613
616
623
630
631
633
638
642
644
647
649
655
656
660
661
667
670
671
672
674
679
682
683
685
686
688
692
693
694
698
702
705
707
708
709
712
717
719
720
721
727
728
731
735
736
737
739
742
743
744
747
753
754
757
760
761
763
768
769
772
779
780
782
788
789
792
795
797
799
802
804
808
812
814
817
818
822
826
828
830
832
833
835
838
839
841
842
845
846
849
853
857
860
862
866
867
871
874
877
881
882
884
885
887
889
893
898
899
903
904
908
910
914
915
919
923
927
928
931
932
935
942
944
946
950
951
953
956
961
963
964
965
967
968
969
970
974
975
983
987
990
992
997
999
1001
1002
1004
1010
1013
1014
1019
1020
1023
1027
1030
1036
1038
1040
1041
1045
1047
1049
1051
1056
1057
1060
1065
1066
1067
1068
1069
1077
1084
1085
1086
1087
1089
1090
1094
1095
1101
1104
1105
1106
1115
1118
1120
1121
1125
1126
1133
1136
1140
1143
1147
1151
1152
1153
1154
1157
1158
1159
1162
1163
1167
1168
1175
1176
1181
1190
1192
1194
1195
1204
1205
1207
1209
1215
1216
1219
1220
1221
1222
1225
1229
1234
1238
1240
1241
1242
1251
1253
1254
1255
1257
1260
1262
1263
1264
1266
1269
1272
1274
1276
1282
1283
1287
1289
1292
1297
1302
1305
1306
1308
1309
1312
1313
1316
1320
1322
1325
1331
1332
1335
1336
1338
1342
1343
1344
1347
1349
1350
1354
1355
1359
1363
1367
1369
1372
1374
1376
1378
1382
1383
1386
1389
1397
1398
1405
1410
1415
1416
1418
1423
1426
1432
1435
1436
1437
1443
1444
1446
1447
1450
1451
1452
1453
1463
1464
1466
1470
1472
1473
1478
1484
1485
1487
1489
1490
1491
1492
1493
1494
1499
1508
1509
1511
1518
1520
1523
1526
1528
1529
1531
1534
1535
1536
1538
1539
1540
1541
1543
1544
1546
1548
1549
1550
1554
1558
1560
1561
1562
1563
1564
1566
1567
1570
1571
1573
1574
1575
1577
1578
1581
1582
1585
1587
1588
1590
1592
1593
1596
1598
1599
1603
1604
1605
1606
1610
1611
1612
1615
1616
1618
1619
1620
1621
1624
1625
1631
1632
1633
1635
1641
1644
1654
1655
1657
1659
1662
1663
1667
1673
1674
1676
1678
1681
1682
1683
1688
1689
1691
1693
1694
1695
1696
1698
1700
1701
1703
1704
1705
1706
1708
1709
1712
1714
1715
1716
1722
1723
1725
1731
1732
1736
1737
1740
1741
1748
1751
1761
1765
1767
1772
1775
1778
1782
1786
1788
1789
1790
1792
1794
1797
1799
1804
1807
1809
1812
1813
1815
1817
1818
1819
1820
1824
1825
1826
1832
1834
1836
1839
1840
1841
1843
1844
1847
1850
1851
1852
1853
1857
1859
1860
1861
1862
1865
1868
1869
1880
1885
1888
1890
1891
1892
1894
1897
1898
1900
1903
1906
1908
1909
1913
1914
1915
1916
1920
1921
1923
1924
1926
1929
1930
1932
1935
1937
1938
1939
1942
1947
1952
1953
1956
1957
1958
1959
1965
1967
1969
1972
1976
1977
1978
1981
1982
1983
1985
1988
1989
1991
1994
1996
1998
1999
2002
2006
2011
2013
2014
2025
2026
2033
2037
2041
2043
2047
2052
2053
2058
2060
2063
2064
2070
2071
2073
2074
2075
2077
2079
2081
2082
2083
2084
2088
2089
2090
2091
2094
2097
2102
2104
2106
2107
2112
2117
2118
2122
2123
2131
2133
2135
2137
2138
2139
2142
2149
2155
2156
2157
2162
2163
2171
2173
2176
2177
2179
2182
2185
2189
2192
2194
2196
2198
2202
2205
2209
2210
2212
2213
2214
2215
2216
2217
2219
2223
2225
2228
2229
2230
2231
2233
2234
2236
2238
2241
2244
2249
2250
2252
2261
2265
2267
2270
2276
2279
2280
2282
2284
2285
2286
2288
2289
2291
2302
2303
2308
2309
2311
2313
2314
2320
2321
2323
2325
2326
2330
2335
2337
2341
2343
2349
2356
2358
2359
2364
2365
2368
2369
2371
2372
2373
2375
2378
2380
2383
2393
2394
2395
2398
2400
2403
2409
2411
2412
2413
2414
2415
2419
2421
2444
2445
2447
2448
2449
2451
2452
2455
2472
2476
2481
2482
2483
2488
2489
2496
2498
2499
2504
2506
2508
2509
2512
2513
2515
2516
2519
2520
2525
2527
2528
2529
2536
2537
2539
2541
2542
2544
2548
2550
2553
2554
2557
2561
2565
2566
2569
2573
2574
2575
2580
2581
2586
2587
2588
2589
2590
2591
2594
2597
2598
2600
2601
2602
2605
2608
2611
2612
2616
2618
2619
2620
2623
2624
2625
2629
2630
2631
2632
2636
2638
2639
2640
2642
2646
2647
2648
2649
2653
2654
2659
2661
2662
2667
2669
2671
2672
2673
2676
2678
2680
2682
2684
2688
2693
2694
2697
2698
2700
2705
2706
2711
2712
2714
2717
2719
2720
2726
2730
2732
2738
2742
2747
2750
2752
2754
2758
2760
2763
2765
2770
2771
2773
2775
2777
2782
2784
2785
2786
2789
2799
2800
2801
2802
2810
2812
2813
2815
2817
2820
2821
2823
2824
2828
2829
2835
2838
2841
2844
2846
2851
2855
2858
2860
2861
2862
2863
2865
2868
2874
2882
2883
2886
2887
2889
2891
2892
2893
2895
2896
2898
2900
2901
2904
2907
2908
2910
2911
2912
2913
2920
2921
2922
2924
2925
2926
2928
2929
2931
2933
2942
2943
2944
2946
2947
2948
2949
2951
2952
2955
2957
2959
2960
2961
2963
2964
2968
2970
2972
2973
2974
2982
2988
2990
2992
2997
3003
3006
3008
3010
3014
3017
3019
3021
3022
3027
3030
3032
3037
3039
3041
3044
3046
3047
3049
3050
3052
3054
3055
3056
3057
3058
3060
3062
3065
3066
3068
3069
3070
3075
3076
3078
3079
3080
3081
3083
3088
3091
3092
3094
3097
3101
3104
3106
3108
3109
3113
3119
3120
3123
3127
3131
3133
3136
3138
3139
3140
3141
3145
3150
3152
3156
3159
3160
3162
3164
3166
3168
3169
3175
3182
3188
3189
3190
3195
3196
3197
3198
3199
3201
3204
3206
3208
3210
3211
3215
3217
3219
3222
3225
3231
3235
3236
3238
3239
3242
3243
3246
3250
3251
3252
3253
3257
3258
3259
3261
3265
3268
3273
3274
3275
3276
3279
3285
3288
3289
3290
3292
3293
3294
3301
3306
3308
3312
3313
3316
3319
3320
3321
3323
3324
3326
3330
3336
3337
3339
3340
3341
3343
3346
3347
3350
3353
3355
3357
3358
3359
3360
3362
3363
3367
3368
3369
3373
3375
3376
3377
3378
3380
3383
3385
3388
3389
3390
3393
3395
3396
3398
3400
3402
3403
3404
3407
3408
3412
3418
3422
3431
3432
3433
3435
3443
3447
3449
3450
3454
3456
3457
3458
3459
3469
3475
3476
3480
3485
3488
3490
3493
3499
3502
3503
3511
3517
3518
3519
3522
3523
3526
3530
3531
3532
3534
3535
3536
3537
3538
3543
3545
3546
3547
3549
3551
3552
3557
3558
3560
3561
3562
3563
3565
3572
3573
3575
3580
3581
3583
3588
3589
3593
3597
3598
3604
3607
3611
3612
3613
3615
3617
3622
