0
1
2
3
4
6
7
9
10
12
14
15
17
20
21
24
26
27
30
34
38
41
42
45
46
49
50
53
54
55
59
60
62
64
74
75
77
78
81
82
83
84
85
92
94
96
98
100
101
103
104
114
116
117
118
120
121
122
125
127
134
137
138
139
144
149
151
154
156
157
158
160
162
164
165
171
172
174
178
185
192
195
196
197
202
206
210
215
216
221
222
224
227
228
230
236
238
239
240
244
246
248
250
251
253
254
256
258
259
261
263
264
269
270
271
272
276
278
279
282
285
286
289
291
292
295
296
297
298
301
302
303
304
305
306
307
309
311
312
314
315
316
320
323
324
327
331
334
337
338
340
341
342
344
345
347
348
352
357
359
363
364
365
366
369
370
371
376
377
378
379
382
384
386
387
389
392
394
395
398
399
401
404
411
413
414
416
417
418
419
421
424
428
436
439
441
442
444
445
452
459
460
462
469
470
471
473
474
475
476
479
481
482
484
485
486
487
488
495
496
498
499
500
503
504
513
514
516
520
522
524
529
533
538
542
544
545
547
552
558
559
565
566
570
571
573
578
584
585
587
591
592
594
596
601
603
605
608
614
616
619
622
624
625
626
628
631
632
633
634
635
636
640
641
642
650
653
654
655
656
658
660
661
664
665
668
672
676
679
680
682
683
689
692
693
695
699
701
709
710
712
714
716
718
721
722
723
724
726
731
732
733
734
735
736
737
739
741
743
745
746
747
748
749
753
757
758
759
762
763
764
772
774
776
777
778
782
783
787
788
795
796
798
800
803
804
806
808
818
825
827
830
831
837
839
841
847
848
849
851
852
854
855
858
859
860
863
865
871
873
874
883
884
887
888
890
892
895
896
899
900
901
910
911
912
915
916
917
918
924
925
928
929
930
934
935
938
940
942
946
948
949
950
952
953
954
956
957
960
961
964
965
966
967
968
971
978
979
983
985
988
993
994
997
998
1000
1001
1002
1016
1020
1021
1022
1024
1025
1027
1028
1029
1030
1032
1033
1036
1038
1040
1041
1042
1047
1049
1050
1052
1053
1054
1056
1066
1069
1072
1075
1076
1077
1078
1084
1086
1089
1090
1092
1097
1100
1104
1107
1109
1110
1116
1119
1121
1126
1127
1129
1130
1131
1133
1134
1135
1137
1142
1145
1148
1156
1159
1161
1163
1165
1167
1169
1178
1179
1181
1183
1185
1186
1190
1197
1198
1199
1201
1207
1208
1211
1212
1216
1217
1221
1222
1223
1225
1226
1228
1229
1234
1239
1240
1241
1242
1244
1248
1254
1258
1260
1261
1263
1265
1266
1268
1270
1271
1274
1281
1282
1283
1286
1288
1290
1293
1298
1302
1303
1304
1306
1307
1308
1310
1313
1318
1320
1321
1324
1325
1329
1330
1331
1337
1339
1340
1341
1346
1347
1350
1353
1357
1359
1360
1361
1365
1366
1370
1373
1376
1377
1380
1381
1382
1383
1391
1396
1401
1402
1403
1406
1413
1414
1415
1417
1418
1419
1420
1421
1422
1424
1425
1426
1428
1431
1432
1433
1437
1438
1439
1441
1444
1445
1447
1449
1451
1455
1457
1459
1461
1463
1465
1467
1469
1470
1474
1483
1486
1489
1493
1494
1496
1497
1499
1500
1507
1509
1511
1514
1516
1517
1519
1523
1525
1526
1529
1530
1532
1533
1535
1539
1540
1541
1546
1547
1549
1553
1554
1556
1557
1559
1560
1566
1567
1568
1569
1571
1572
1573
1574
1576
1580
1581
1582
1584
1586
1587
1588
1589
1590
1591
1593
1594
1595
1597
1602
1604
1605
1606
1607
1608
1609
1613
1614
1617
1621
1622
1627
1642
1647
1649
1650
1656
1657
1668
1670
1672
1673
1675
1676
1677
1679
1680
1681
1684
1686
1687
1689
1695
1697
1698
1703
1704
1705
1706
1707
1708
1709
1718
1729
1730
1733
1738
1743
1744
1746
1749
1751
1752
1753
1754
1757
1764
1766
1767
1768
1772
1775
1776
1778
1784
1785
1786
1787
1794
1796
1798
1799
1801
1806
1808
1809
1810
1813
1818
1819
1821
1823
1835
1838
1839
1840
1842
1843
1844
1845
1848
1850
1851
1853
1856
1861
1862
1863
1866
1867
1868
1873
1874
1879
1882
1887
1888
1890
1891
1893
1895
1897
1900
1901
1907
1908
1910
1911
1914
1915
1917
1919
1920
1924
1927
1934
1935
1936
1938
1942
1943
1944
1946
1948
1953
1954
1955
1957
1960
1963
1965
1966
1968
1969
1970
1971
1974
1975
1977
1978
1979
1980
1983
1986
1987
1989
1991
1992
1993
1994
1997
2001
2003
2005
2007
2008
2009
2012
2015
2016
2017
2018
2019
2020
2022
2025
2026
2028
2030
2031
2032
2034
2037
2040
2041
2043
2046
2049
2051
2052
2055
2056
2057
2062
2063
2064
2066
2068
2070
2072
2075
2077
2079
2080
2081
2082
2083
2086
2087
2088
2089
2090
2093
2097
2100
2101
2103
2106
2107
2111
2113
2118
2120
2121
2124
2126
2128
2129
2133
2137
2138
2139
2140
2141
2142
2144
2149
2155
2156
2157
2162
2164
2167
2170
2172
2175
2176
2178
2180
2181
2183
2185
2186
2189
2197
2198
2200
2202
2206
2207
2213
2214
2215
2216
2217
2219
2225
2226
2233
2235
2236
2237
2238
2239
2240
2242
2243
2245
2246
2248
2249
2250
2253
2255
2256
2257
2259
2260
2262
2265
2267
2269
2271
2272
2277
2279
2280
2285
2286
2288
2289
2291
2293
2294
2295
2297
2298
2304
2305
2306
2308
2309
2310
2313
2314
2318
2321
2322
2324
2332
2334
2337
2339
2340
2341
2347
2348
2349
2350
2351
2355
2358
2364
2365
2368
2369
2370
2372
2374
2375
2376
2377
2379
2381
2382
2386
2387
2388
2391
2392
2393
2394
2395
2400
2402
2403
2404
2407
2409
2410
2412
2414
2419
2422
2423
2424
2425
2426
2427
2429
2430
2432
2433
2434
2435
2440
2441
2442
2444
2447
2448
2453
2454
2455
2457
2459
2460
2462
2464
2466
2474
2482
2484
2487
2490
2493
2496
2497
2500
2501
2503
2504
2505
2506
2507
2510
2512
2514
2517
2523
2525
2528
2529
2533
2534
2535
2538
2540
2542
2544
2546
2547
2551
2554
2555
2556
2559
2560
2561
2563
2565
2569
2570
2572
2576
2578
2582
2583
2584
2585
2590
2591
2592
2594
2596
2598
2599
2601
2604
2608
2609
2610
2613
2614
2616
2618
2619
2620
2621
2622
2626
2627
2628
2631
2632
2633
2634
2637
2640
2642
2644
2646
2647
2651
2652
2654
2657
2658
2659
2661
2665
2666
2669
2676
2678
2681
2682
2683
2685
2686
2688
2689
2701
2702
2703
2704
2705
2710
2712
2713
2714
2715
2717
2718
2719
2720
2721
2722
2724
2725
2729
2730
2731
2732
2733
2734
2738
2742
2743
2745
2747
2751
2755
2761
2762
2763
2764
2765
2766
2767
2768
2769
2771
2774
2775
2776
2777
2786
2787
2788
2789
2791
2794
2798
2799
2800
2802
2805
2806
2807
2809
2813
2814
2817
2818
2823
2826
2829
2836
2841
2844
2848
2849
2850
2851
2855
2856
2858
2860
2862
2864
2866
2867
2869
2872
2874
2875
2877
2879
2880
2881
2882
2884
2886
2887
2888
2889
2890
2891
2892
2895
2897
2898
2899
2900
2902
2904
2907
2908
2910
2914
2915
2917
2921
2923
2927
2929
2931
2932
2934
2936
2937
2938
2940
2944
2945
2946
2949
2950
2956
2957
2960
2962
2966
2968
2974
2975
2976
2977
2978
2981
2982
2983
2984
2988
2989
2991
2994
2995
2997
3002
3003
3004
3006
3008
3011
3012
3013
3016
3019
3021
3022
3023
3025
3028
3029
3030
3035
3037
3048
3050
3060
3062
3064
3067
3068
3071
3075
3076
3077
3078
3079
3082
3084
3087
3089
3094
3097
3099
3103
3106
3108
3110
3113
3114
3115
3118
3121
3129
3133
3134
3139
3142
3146
3149
3153
3155
3158
3160
3164
3168
3169
3170
3171
3175
3176
3177
3180
3183
3185
3186
3188
3192
3193
3195
3196
3201
3206
3207
3212
3214
3215
3216
3217
3219
3220
3221
3224
3225
3230
3235
3236
3237
3241
3243
3250
3251
3253
3254
3256
3257
3263
3267
3270
3272
3273
3276
3277
3279
3280
3281
3283
3285
3288
3291
3292
3293
3294
3299
3300
3302
3306
3307
3308
3313
3315
3318
3321
3323
3335
3337
3338
3339
3344
3348
3356
3359
3363
3364
3368
3372
3375
3376
3378
3384
3385
3386
3387
3389
3390
3392
3394
3395
3403
3405
3408
3412
3413
3416
3419
3421
3422
3423
3426
3427
3432
3433
3435
3437
3438
3441
3443
3444
3446
3450
3452
3453
3455
3457
3458
3459
3460
3461
3462
3467
3471
3479
3482
3485
3486
3493
3494
3497
3498
3500
3501
3502
3504
3505
3506
3507
3508
3510
3512
3513
3514
3515
3519
3520
3521
3522
3523
3526
3529
3530
3531
3532
3536
3539
3541
3542
3543
3544
3550
3553
3554
3555
3556
3557
3559
3560
3561
3563
3565
3575
3578
3579
3580
3582
3583
3585
3586
3587
3590
3591
3592
3594
3596
3599
3604
3607
3609
3610
3613
3617
3621
3624
3625
3627
3629
3631
3632
3633
3635
3638
3639
3640
3641
3642
3643
3648
3649
3652
3654
3661
3664
3665
3667
3669
3670
3672
3674
3677
3678
3679
3683
3685
3686
3690
3694
3695
3697
3699
3703
3704
3711
3712
3714
3717
3725
3734
3735
3736
3741
3742
3744
3745
3747
3755
3756
3758
3760
3764
3766
3767
3768
3771
3773
3774
3779
3780
3788
3791
3794
3796
3799
3800
3801
3802
3803
3804
3806
3807
3808
3809
3813
3814
3815
3818
3821
3823
3825
3827
3829
3830
3831
3832
3833
3839
3840
3843
3844
3845
3849
3850
3852
3855
3857
3862
3863
3864
3866
3867
3868
3869
3870
3871
3876
3878
3879
3882
3883
3884
3887
3891
3896
3902
3908
3913
3916
3917
3919
3920
3923
3926
3928
3932
3934
3935
3936
3939
3943
3947
3948
3949
3950
3951
3958
3961
3963
3964
3967
3969
3975
3976
3980
3981
3983
3987
3988
3989
3992
3996
3999
4000
4001
4002
4004
4007
4008
4017
4019
4020
4022
4023
4025
4026
4029
4036
4037
4046
4048
4049
4053
4058
4062
4064
4065
4066
4068
4069
4070
4071
4073
4080
4083
4085
4086
4091
4092
4094
4095
4096
4097
4101
4104
4109
4115
4118
4120
4121
4123
4124
4130
4133
4134
4136
4138
4142
4143
4146
4147
4148
4150
4154
4158
4163
4165
4169
4172
4179
4182
4184
4186
4189
4190
4192
4193
4194
4195
4199
4202
4203
4205
4206
4208
4211
4212
4213
4215
4217
4218
4219
4220
4223
4225
4227
4228
4233
4236
4237
4239
4240
4242
4247
4249
4250
4254
4256
4257
4264
4266
4270
4271
4272
4273
4278
4279
4281
4282
4283
4284
4287
4289
4294
4295
4296
4297
4298
4299
4301
4305
4307
4308
4309
4312
4314
4315
4316
4318
4321
4323
4326
4327
4334
4335
4337
4339
4345
4348
4350
4353
4355
4357
4360
4364
4367
4370
4371
4375
4382
4384
4385
4389
4391
4393
4395
4400
4401
4408
4411
4414
4416
4417
4419
4420
4424
4427
4430
4434
4438
4439
4440
4443
4444
4450
4453
4458
4459
4460
4461
4464
4465
4468
4471
4473
4476
