1
3
8
9
10
12
14
17
18
19
20
24
25
27
29
30
31
34
35
36
37
38
39
44
45
46
48
49
54
60
61
63
64
70
72
74
78
80
81
83
84
85
87
91
92
94
95
97
99
100
103
104
105
106
109
110
111
113
114
116
117
119
120
121
127
128
129
130
134
136
137
142
144
145
150
155
156
157
160
163
164
167
169
172
174
175
176
182
183
185
187
188
190
191
192
193
198
203
204
205
213
215
217
218
219
220
221
224
225
226
228
232
234
237
242
244
246
251
252
253
254
260
265
266
267
268
269
276
277
280
281
282
285
286
290
293
294
297
298
300
302
312
314
316
317
319
320
321
323
325
331
335
338
342
343
347
351
352
355
356
360
361
362
367
368
370
372
373
375
378
379
385
393
396
400
401
404
405
406
407
410
414
416
417
418
419
431
432
437
438
442
446
449
450
451
452
456
458
459
461
463
467
469
471
475
478
479
482
485
486
487
494
502
504
505
506
508
515
516
518
519
522
523
524
528
530
541
542
546
547
548
549
550
551
553
554
555
556
557
561
562
564
565
566
569
572
574
575
576
577
579
581
584
588
589
591
592
598
599
604
606
610
613
614
616
617
620
623
627
630
632
637
640
649
650
654
656
657
658
662
663
668
671
676
678
683
684
685
690
693
695
697
698
701
711
712
713
718
719
721
725
730
733
735
746
747
751
753
755
759
770
777
778
779
780
784
786
788
789
790
793
794
795
796
799
800
801
804
805
809
810
813
815
820
821
827
830
831
835
837
838
839
845
851
852
853
855
856
857
858
859
860
864
865
866
867
868
871
872
873
875
878
879
881
883
889
898
901
902
904
915
917
918
920
924
926
929
930
932
933
935
936
938
940
944
946
950
954
956
960
962
968
969
973
976
978
981
984
991
993
995
996
999
1004
1005
1006
1008
1011
1015
1020
1023
1025
1027
1028
1029
1030
1031
1034
1041
1042
1043
1046
1054
1058
1059
1062
1064
1065
1072
1074
1075
1076
1078
1079
1080
1081
1083
1087
1088
1090
1094
1099
1101
1104
1108
1112
1114
1118
1121
1122
1123
1134
1141
1146
1147
1155
1157
1159
1161
1162
1163
1165
1166
1167
1168
1170
1172
1174
1177
1179
1184
1187
1189
1191
1192
1193
1197
1201
1202
1203
1205
1211
1213
1216
1217
1219
1223
1227
1233
1234
1236
1237
1238
1239
1240
1242
1245
1247
1248
1249
1251
1252
1253
1259
1262
1264
1269
1271
1273
1274
1275
1277
1285
1286
1288
1289
1290
1292
1293
1297
1298
1299
1301
1303
1307
1310
1313
1314
1319
1324
1327
1333
1335
1336
1338
1340
1341
1345
1347
1348
1351
1352
1357
1359
1362
1365
1366
1369
1370
1371
1375
1379
1380
1381
1382
1387
1390
1394
1395
1396
1403
1406
1408
1414
1417
1418
1419
1420
1424
1425
1429
1434
1435
1436
1437
1445
1446
1447
1451
1452
1454
1457
1459
1461
1462
1466
1467
1468
1476
1477
1479
1481
1484
1485
1486
1488
1490
1492
1494
1495
1496
1497
1498
1499
1500
1502
1503
1508
1509
1511
1517
1521
1523
1524
1526
1531
1533
1534
1535
1536
1539
1541
1543
1546
1548
1552
1555
1557
1560
1562
1565
1566
1571
1573
1581
1582
1583
1584
1586
1587
1588
1592
1593
1596
1598
1604
1606
1607
1614
1616
1620
1621
1624
1626
1627
1629
1632
1633
1634
1635
1637
1639
1641
1642
1643
1646
1651
1658
1661
1662
1663
1666
1668
1672
1675
1679
1681
1683
1684
1686
1687
1689
1690
1691
1692
1693
1694
1707
1714
1715
1716
1718
1722
1723
1724
1731
1734
1743
1748
1758
1760
1762
1763
1764
1766
1770
1771
1773
1774
1777
1779
1780
1781
1783
1784
1788
1789
1790
1791
1792
1793
1795
1797
1799
1801
1803
1804
1808
1809
1811
1813
1816
1818
1822
1828
1831
1833
1834
1835
1839
1840
1842
1844
1849
1850
1851
1852
1854
1863
1865
1871
1872
1874
1877
1883
1885
1886
1887
1889
1890
1891
1894
1895
1896
1897
1899
1901
1902
1904
1908
1913
1916
1931
1932
1933
1935
1939
1940
1942
1951
1952
1954
1955
1957
1958
1962
1966
1970
1976
1977
1984
1985
1989
1993
1994
1998
1999
2006
2007
2012
2013
2014
2019
2020
2021
2022
2024
2030
2032
2033
2034
2037
2041
2043
2049
2051
2055
2056
2057
2058
2061
2062
2070
2071
2073
2075
2078
2081
2083
2085
2086
2091
2094
2095
2096
2102
2104
2106
2110
2112
2115
2119
2121
2131
2133
2134
2136
2140
2141
2143
2144
2151
2154
2156
2159
2161
2165
2166
2167
2169
2170
2171
2177
2178
2181
2184
2185
2186
2187
2188
2196
2197
2199
2200
2201
2202
2203
2206
2208
2211
2214
2215
2216
2217
2223
2224
2225
2227
2229
2236
2237
2238
2239
2241
2242
2243
2245
2246
2252
2258
2261
2262
2263
2264
2266
2271
2272
2275
2276
2277
2278
2282
2285
2286
2288
2289
2292
2295
2296
2297
2300
2301
2304
2305
2306
2311
2312
2313
2314
2315
2316
2317
2318
2319
2321
2322
2323
2324
2331
2336
2338
2339
2340
2342
2344
2345
2353
2357
2358
2365
2366
2368
2370
2376
2384
2386
2388
2390
2392
2393
2394
2398
2399
2401
2403
2404
2405
2409
2410
2411
2413
2414
2417
2418
2419
2420
2421
2424
2429
2430
2431
2434
2442
2446
2447
2453
2454
2455
2458
2465
2473
2478
2480
2481
2487
2488
2489
2493
2498
2502
2505
2506
2508
2511
2513
2519
2520
2524
2525
2526
2528
2535
2537
2538
2540
2546
2547
2549
2553
2554
2555
2560
2562
2563
2565
2566
2567
2569
2570
2573
2577
2582
2584
2593
2595
2601
2604
2606
2612
2613
2614
2615
2616
2619
2620
2623
2628
2632
2633
2637
2649
2652
2655
2658
2659
2663
2667
2671
2673
2676
2677
2679
2683
2686
2688
2689
2691
2694
2697
2698
2704
2710
2715
2716
2720
2722
2724
2725
2732
2734
2739
2742
2743
2745
2746
2747
2748
2751
2754
2755
2756
2757
2763
2765
2767
2768
2770
2775
2777
2778
2789
2795
2796
2800
2801
2805
2806
2807
2813
2814
2817
2821
2825
2826
2827
2830
2831
2832
2833
2838
2839
2841
2843
2844
2849
2853
2854
2856
2858
2859
2861
2864
2865
2866
2868
2870
2873
2874
2875
2879
2882
2891
2894
2897
2899
2900
2903
2904
2905
2906
2910
2912
2914
2917
2918
2919
2920
2924
2925
2928
2929
2930
2934
2938
2939
2940
2956
2958
2961
2966
2969
2970
2971
2972
2975
2977
2980
2982
2983
2984
2986
2988
2992
2995
2996
3001
3003
3005
3007
3008
3009
3011
3020
3025
3028
3029
3030
3034
3038
3040
3043
3045
3046
3048
3050
3051
3054
3055
3063
3066
3068
3071
3072
3076
3077
3079
3080
3081
3082
3083
3084
3085
3087
3088
3091
3094
3096
3097
3106
3109
3112
3113
3114
3117
3119
3120
3123
3124
3129
3130
3132
3133
3134
3139
3140
3143
3145
3149
3151
3157
3158
3161
3163
3164
3166
3168
3170
3171
3173
3175
3179
3183
3184
3187
3188
3190
3191
3192
3194
3197
3198
3199
3204
3206
3208
3210
3214
3222
3224
3225
3226
3228
3230
3231
3236
3238
3239
3240
3241
3246
3249
3253
3256
3257
3260
3261
3263
3268
3269
3270
3272
3273
3274
3277
3278
3279
3280
3281
3282
3283
3288
3294
3296
3299
3300
3303
3304
3307
3308
3313
3314
3317
3318
3321
3324
3325
3326
3327
3328
3329
3336
3338
3339
3341
3342
3343
3344
3349
3350
3351
3353
3356
3362
3363
3364
3365
3366
3372
3375
3378
3379
3380
3383
3387
3389
3391
3398
3400
3401
3403
3407
3409
3415
3417
3420
3421
3423
3427
3428
3429
3431
3435
3436
3438
3439
3443
3446
3447
3449
3452
3455
3456
3457
3458
3460
3466
3469
3474
3475
3476
3478
3481
3482
3483
3489
3491
3494
3498
3500
3503
3512
3513
3515
3517
3518
3519
3521
3522
3524
3527
3534
3535
3536
3537
3544
3547
3548
3549
3561
3565
3568
3569
3573
3575
3577
3578
3579
3586
3587
3589
3591
3592
3596
3597
3598
3599
3600
3603
3605
3606
3613
3614
3616
3618
3620
3622
3623
3624
3626
3628
3633
3635
3638
3640
3641
3642
3645
3646
3647
3650
3652
3654
3656
3659
3660
3666
3672
3674
3677
3685
3688
3690
3696
3697
3701
3703
3704
3705
3706
3710
3712
3713
3714
3715
3717
3720
3725
3726
3729
3732
3733
3736
3739
3740
3746
3747
3749
3750
3752
3758
3763
3764
3766
3767
3772
3777
3778
3779
3780
3784
3788
3790
3793
3796
3801
3802
3804
3810
3815
3819
3827
3828
3832
3833
3836
3837
3839
3841
3842
3844
3849
3851
3854
3857
3858
3863
3865
3868
3869
3872
3874
3876
3881
3882
3883
3884
3885
3886
3888
3889
3893
3894
3895
3905
3906
3907
3920
3922
3924
3925
3933
3935
3936
3937
3939
3941
3944
3948
3950
3951
3955
3957
3959
3962
3963
3964
3967
3968
3969
3973
3974
3975
3976
3978
3981
3984
3987
3989
3990
3992
3993
3995
3996
3997
3998
3999
4000
4001
4004
4007
4009
4010
4015
4018
4022
4032
4033
4034
4036
4037
4040
4042
4045
4046
4049
4051
4056
4065
4069
4074
4076
4077
4078
4079
4080
4084
4088
4091
4092
4093
4096
4099
4100
4102
4106
4107
4108
4109
4111
4123
4124
4126
4130
4133
4134
4135
4136
4137
4138
4140
4141
4143
4144
4145
4146
4149
4153
4154
4162
4163
4167
4169
4173
4175
4181
4182
4186
4188
4190
4196
4198
4199
4201
4202
4204
4206
4207
4208
4210
4216
4218
4220
4221
4228
4232
4237
4241
4245
4246
4250
4251
4254
4256
4257
4263
4265
4267
4269
4270
4271
4275
4277
4281
4282
4284
4287
4288
4289
4290
4294
4295
4300
4308
4311
4312
4313
4315
4316
4318
4319
4320
4323
4325
4327
4329
4331
4333
4335
4341
4348
4351
4353
4354
4355
4356
4357
4358
4359
4362
4364
4365
4370
4373
4377
4383
4386
4388
4389
4390
4391
4396
4397
4408
4410
4411
4413
4414
4415
4416
4417
4418
4419
4423
4428
4430
4431
4433
4437
4439
4440
4442
4444
4446
4448
4449
4450
4453
4458
4461
4465
4466
4467
4468
4469
4472
4473
4474
4478
4479
4480
4482
4486
4487
4491
4496
4503
4508
4513
4518
4519
4520
4522
4524
4528
4533
4534
4540
4541
4542
4544
4549
4553
4562
4569
4572
4573
4575
4576
4578
4580
4581
4582
4583
4587
4591
4593
4594
4596
4597
4598
4599
4600
4601
4603
4604
4612
4617
4624
4625
4626
4627
4628
4629
4634
4636
4641
4642
4644
4651
4654
4655
4656
4659
4669
4670
4671
4672
4674
4675
4680
4681
4686
4687
4688
4689
4695
4697
4699
4701
4708
4709
4710
4712
4716
4718
4719
