3
5
6
7
9
10
12
21
23
24
29
30
31
33
35
38
40
48
50
51
52
55
62
64
65
70
71
74
75
76
80
81
82
88
89
90
94
97
100
103
104
105
106
108
117
119
121
125
129
130
134
135
136
143
145
151
152
155
157
158
160
162
179
181
185
186
187
189
191
192
193
196
199
201
202
203
205
211
219
228
230
231
238
244
246
247
251
252
255
260
261
262
268
269
272
273
274
275
278
279
280
284
285
287
289
290
297
300
303
304
308
315
317
320
329
331
335
337
340
341
343
344
347
351
352
354
360
362
363
364
366
367
370
374
375
376
377
383
390
396
400
401
403
404
410
415
420
421
427
428
429
430
431
433
434
436
438
442
444
445
453
455
460
461
462
468
470
475
480
481
484
489
493
494
496
497
498
501
506
520
523
527
528
534
535
540
541
542
543
545
547
548
550
551
561
562
564
567
573
574
576
579
581
582
584
585
587
588
595
599
600
602
603
605
606
610
612
616
619
621
622
624
625
627
630
631
635
636
644
647
650
655
657
659
660
661
662
664
671
674
680
688
689
691
694
695
698
701
704
706
715
716
717
721
722
729
731
735
736
740
742
747
749
750
753
755
759
761
763
765
773
774
775
780
784
787
790
791
795
797
800
801
803
804
805
808
811
812
813
817
821
825
826
827
828
829
830
832
834
837
841
843
844
846
849
852
857
858
860
875
876
881
882
883
884
888
895
905
907
908
909
911
917
919
920
921
923
926
928
932
933
934
936
937
939
941
945
948
953
954
955
957
959
960
963
965
968
970
974
975
976
981
1002
1005
1006
1008
1010
1011
1012
1013
1015
1016
1017
1018
1020
1024
1026
1028
1030
1032
1036
1037
1039
1041
1042
1044
1049
1050
1052
1056
1059
1062
1068
1071
1072
1073
1074
1076
1078
1079
1085
1095
1098
1100
1101
1103
1104
1107
1110
1113
1114
1115
1117
1121
1124
1129
1134
1136
1138
1141
1144
1147
1149
1155
1156
1159
1169
1173
1176
1186
1189
1194
1198
1200
1201
1202
1207
1211
1214
1216
1218
1221
1227
1228
1230
1231
1233
1235
1236
1237
1243
1247
1248
1253
1256
1257
1261
1262
1263
1275
1288
1295
1298
1303
1305
1307
1309
1310
1311
1312
1314
1315
1317
1320
1321
1324
1326
1327
1329
1330
1332
1333
1334
1336
1338
1340
1344
1348
1350
1351
1352
1359
1361
1363
1366
1367
1373
1376
1377
1383
1384
1385
1388
1396
1398
1404
1407
1408
1410
1411
1412
1415
1416
1417
1418
1419
1420
1423
1430
1431
1435
1440
1444
1451
1455
1458
1459
1461
1462
1468
1472
1473
1476
1477
1485
1487
1491
1493
1495
1496
1498
1499
1500
1501
1505
1512
1513
1517
1521
1525
1527
1530
1535
1536
1540
1543
1544
1545
1547
1549
1552
1556
1557
1559
1560
1561
1562
1565
1573
1580
1583
1585
1587
1588
1590
1591
1592
1593
1597
1600
1601
1602
1603
1607
1615
1617
1620
1621
1622
1623
1626
1629
1632
1633
1634
1635
1636
1642
1646
1649
1657
1672
1673
1676
1680
1683
1684
1691
1692
1694
1695
1698
1712
1717
1723
1726
1730
1732
1734
1736
1739
1743
1747
1749
1750
1752
1757
1763
1764
1765
1769
1770
1772
1773
1775
1777
1780
1783
1784
1787
1788
1789
1790
1791
1792
1799
1802
1806
1810
1813
1814
1815
1821
1824
1825
1827
1829
1832
1833
1844
1849
1850
1852
1858
1859
1860
1861
1865
1867
1871
1876
1880
1881
1885
1889
1890
1892
1893
1894
1903
1904
1905
1910
1912
1914
1916
1920
1929
1931
1932
1938
1940
1942
1945
1951
1954
1956
1957
1958
1960
1966
1970
1973
1974
1983
1984
1989
1993
1998
2000
2001
2003
2007
2008
2020
2022
2023
2026
2027
2034
2042
2044
2046
2051
2059
2062
2063
2067
2068
2070
2075
2077
2081
2090
2092
2094
2098
2101
2104
2112
2114
2116
2120
2121
2122
2123
2126
2127
2128
2129
2130
2131
2133
2134
2135
2136
2141
2142
2144
2145
2146
2149
2151
2153
2154
2155
2159
2162
2163
2168
2169
2170
2174
2176
2177
2179
2180
2181
2183
2184
2186
2194
2196
2200
2202
2203
2214
2216
2218
2220
2224
2225
2226
2231
2232
2233
2234
2242
2244
2247
2252
2256
2258
2260
2263
2265
2266
2269
2270
2273
2275
2278
2281
2282
2283
2284
2285
2287
2290
2293
2294
2296
2298
2300
2301
2303
2304
2306
2309
2311
2312
2314
2316
2320
2321
2323
2333
2339
2340
2347
2354
2363
2365
2367
2369
2375
2377
2381
2382
2383
2389
2395
2397
2399
2402
2405
2409
2410
2416
2418
2420
2423
2424
2426
2432
2435
2442
2445
2447
2449
2450
2451
2452
2457
2461
2464
2466
2469
2475
2476
2480
2481
2484
2488
2489
2494
2497
2499
2501
2506
2510
2513
2514
2520
2521
2525
2528
2530
2531
2532
2534
2537
2541
2544
2550
2563
2564
2565
2567
2569
2570
2572
2575
2577
2580
2582
2585
2586
2592
2597
2598
2601
2602
2609
2610
2613
2615
2618
2619
2620
2621
2627
2628
2635
2638
2639
2640
2641
2642
2643
2645
2646
2647
2650
2653
2655
2657
2663
2668
2669
2676
2680
2681
2682
2686
2692
2695
2696
2697
2699
2701
2707
2708
2713
2716
2717
2718
2721
2723
2725
2726
2729
2730
2733
2734
2739
2741
2743
2745
2747
2750
2752
2753
2760
2761
2763
2765
2766
2767
2768
2771
2780
2781
2782
2783
2791
2795
2796
2797
2798
2805
2810
2812
2814
2815
2816
2817
2819
2822
2823
2825
2832
2835
2837
2838
2841
2842
2843
2845
2846
2847
2851
2852
2854
2855
2860
2864
2871
2872
2873
2874
2875
2877
2879
2885
2887
2890
2892
2893
2895
2896
2898
2902
2908
2909
2912
2913
2914
2915
2917
2918
2919
2921
2927
2928
2929
2934
2935
2940
2941
2943
2944
2945
2946
2949
2950
2951
2952
2953
2961
2964
2967
2973
2978
2979
2981
2982
2984
2985
2990
2992
2994
2995
2996
3003
3004
3006
3008
3010
3011
3018
3021
3029
3030
3031
3036
3037
3043
3045
3047
3048
3049
3055
3056
3059
3060
3062
3065
3066
3068
3069
3070
3071
3072
3073
3074
3075
3076
3083
3086
3087
3089
3090
3103
3105
3106
3107
3108
3116
3121
3123
3125
3131
3133
3134
3137
3139
3141
3143
3145
3146
3147
3150
3158
3159
3166
3168
3169
3170
3173
3180
3181
3183
3187
3189
3190
3203
3204
3208
3214
3217
3218
3222
3230
3236
3239
3240
3242
3247
3249
3250
3251
3252
3253
3255
3256
3257
3259
3266
3269
3272
3274
3278
3281
3282
3286
3287
3291
3292
3294
3298
3303
3305
3307
3311
3313
3314
3320
3322
3323
3325
3327
3328
3332
3340
3346
3350
3355
3361
3371
3372
3377
3379
3382
3384
3388
3391
3392
3396
3399
3401
3404
3405
3407
3410
3412
3415
3417
3419
3422
3423
3426
3429
3430
3432
3435
3436
3439
3441
3447
3448
3452
3453
3455
3456
3459
3463
3465
3467
3472
3473
3476
3479
3484
3486
3491
3493
3495
3497
3498
3499
3502
3503
3509
3510
3511
3516
3519
3522
3523
3528
3533
3537
3542
3543
3545
3546
3552
3553
3556
3562
3563
3565
3571
3576
3580
3583
3585
3586
3587
3591
3592
3594
3597
3599
3603
3607
3613
3620
3622
3626
3629
3630
3633
3634
3642
3644
3651
3652
3659
3660
3661
3664
3667
3668
3669
3670
3671
3672
3675
3677
3680
3681
3682
3683
3684
3686
3687
3688
3689
3691
3692
3697
3700
3705
3707
3712
3715
3716
3717
3718
3719
3723
3725
3726
3729
3737
3739
3740
3741
3744
3745
3752
3755
3757
3758
3759
3762
3765
3767
3768
3770
3775
3777
3779
3781
3788
3789
3792
3793
3795
3797
3799
3804
3805
3806
3809
3810
3813
3817
3818
3819
3822
3825
3828
3830
3831
3834
3837
3842
3843
3844
3850
3852
3853
3861
3864
3865
3866
3869
3871
3872
3873
3875
3877
3882
3883
3884
3886
3890
3891
3893
3894
3896
3908
3913
3914
3920
3922
3926
3931
3933
3934
3935
3936
3937
3938
3941
3942
3945
3947
3951
3953
3954
3962
3963
3965
3967
3969
3971
3973
3974
3979
3984
3996
3997
3998
4000
4003
4010
4013
4014
4016
4017
4019
4022
4023
4024
4025
4028
4029
4030
4032
4033
4034
4036
4039
4045
4047
4051
4054
4060
4062
4063
4065
4066
4068
4069
4070
4072
4078
4084
4092
4097
4098
4102
4103
4107
4108
4109
4110
4111
4113
4117
4118
4123
4127
4132
4136
4138
4141
4142
4143
4145
4148
4150
4152
4155
4156
4158
4159
4160
4161
4167
4168
4169
4172
4173
4174
4181
4184
4186
4190
4191
4192
4193
4197
4201
4202
4205
4206
4208
4212
4215
4217
4221
4223
4227
4229
4233
4236
4238
4240
4244
4245
4247
4251
4258
4264
4265
4266
4270
4273
4274
4275
4276
4277
4279
4281
4285
4290
4292
4293
4294
4295
4301
4303
4305
4306
4310
4312
4314
4315
4316
4318
4320
4323
4326
4329
4330
4331
4333
4336
4337
4338
4342
4343
4349
4351
4353
4358
4360
4366
4367
4372
4373
4375
4377
4379
4380
4381
4382
4383
4386
4388
4389
4391
4394
4395
4396
4397
4398
4403
4405
4407
4408
4417
4423
4429
4430
4432
4439
4440
4441
4443
4445
4448
4449
4450
4452
4453
4454
4458
4463
4465
4471
4473
4477
4479
4480
4481
4483
4487
4491
4492
4494
4495
4498
4500
4502
4503
4512
4515
4517
4520
4522
4524
4525
4527
4528
4535
4536
4540
4546
4547
4549
4552
4558
4559
4561
4562
4564
4565
4569
4571
4574
4576
4578
4582
4587
4590
4591
4592
4594
4595
4596
4597
4598
4603
4604
4606
4612
4614
4615
4616
4617
4618
4619
4622
4624
4625
4627
4628
4632
4634
4643
4644
4649
4650
4657
4661
4663
4665
4668
4669
4670
4671
4672
4676
4678
4680
4682
4689
4696
4699
4702
4707
4708
4710
4712
4714
4716
4719
4729
4730
4731
4734
4735
4743
4744
4745
4746
4748
4750
4751
4756
4759
4763
4764
4769
4770
4773
4774
4776
4778
4779
4781
4784
4785
4791
4795
4796
4797
4802
4803
4807
4810
4813
4814
4815
4818
4824
4836
4846
4848
4850
4851
4857
4862
4865
4866
4872
4873
4874
4876
4883
4886
4887
4888
4891
4892
4893
4894
4895
4901
4902
4904
4906
4907
4917
4918
4932
4933
4936
4937
4941
4949
4950
4951
4954
4958
4961
4962
4965
4968
4970
4974
4976
4981
4983
4985
4992
5005
5007
5012
5014
5015
5018
5019
5020
5022
5027
5029
5031
5032
5037
5038
5041
5044
5053
5054
5058
5059
5061
5063
5067
5068
5069
5071
5073
5075
5076
5078
5079
5081
5083
5086
5087
5091
5093
5095
5096
5097
5099
5101
5106
5109
5111
5112
5113
5114
5119
5122
5123
5127
5130
5131
5135
5136
5138
5141
5142
5150
5152
5154
5155
5156
5157
5159
5160
5165
5168
5169
5170
5177
5178
5179
5180
5181
5183
5188
5189
5191
5196
5198
5204
5206
5208
5209
5211
5216
5219
5220
5222
5225
5228
5239
5246
5248
5249
5251
5252
5257
5259
5261
5262
5265
5273
5276
5279
5287
5291
5293
5295
5298
5299
5304
5305
5306
5309
5312
5318
5320
5325
5326
5327
5330
5332
5333
5336
5338
5339
5341
5345
5349
5351
5354
5356
5357
5359
5360
5362
5363
5365
5373
5377
5380
5381
5382
5385
5386
5387
5388
5392
5393
5394
5398
5400
5401
5408
5409
5410
5411
5413
5415
5416
5417
5427
5428
5429
5431
5432
5433
5444
5448
5449
5450
5456
5460
5462
5465
