0
3
4
10
11
12
19
20
22
26
35
40
49
52
53
56
67
74
80
83
87
92
96
100
101
106
112
115
121
134
136
155
160
162
168
169
171
173
177
179
180
186
193
195
198
202
212
214
216
217
220
223
236
240
245
250
261
271
277
280
283
286
288
289
291
294
298
301
304
308
309
311
314
316
317
318
324
326
327
330
331
334
338
341
346
347
351
357
361
364
376
380
382
383
384
386
394
397
399
403
406
415
416
419
423
430
432
435
437
438
441
444
448
449
453
455
457
459
461
463
467
471
475
481
485
486
487
489
497
504
505
508
512
516
529
531
534
537
538
541
543
545
551
556
570
574
587
589
592
594
600
602
606
609
610
613
618
619
622
628
631
639
640
641
643
647
652
662
664
667
668
670
675
677
678
679
681
684
690
697
699
700
706
711
719
720
721
727
729
733
734
745
747
750
753
754
757
758
762
767
768
783
784
785
797
798
799
803
810
812
814
816
818
822
823
826
834
847
849
851
852
854
861
862
867
869
875
879
881
888
890
896
899
907
912
914
919
921
927
935
942
945
946
947
952
955
958
963
965
970
975
982
985
986
988
990
992
1008
1010
1013
1014
1016
1024
1025
1026
1032
1033
1040
1046
1051
1056
1063
1071
1078
1080
1092
1100
1106
1108
1115
1121
1122
1124
1126
1127
1130
1131
1132
1135
1139
1142
1143
1145
1155
1156
1161
1165
1166
1170
1179
1182
1183
1187
1188
1191
1193
1202
1204
1207
1209
1211
1212
1213
1215
1219
1225
1226
1228
1230
1234
1237
1242
1250
1251
1258
1272
1283
1284
1286
1287
1289
1290
1292
1295
1296
1301
1303
1306
1309
1311
1315
1323
1324
1331
1345
1348
1350
1354
1355
1363
1366
1370
1390
1394
1395
1397
1398
1400
1405
1408
1414
1417
1420
1430
1436
1447
1454
1455
1466
1467
1468
1469
1470
1476
1490
1492
1494
1496
1515
1516
1519
1525
1526
1530
1541
1548
1549
1554
1557
1560
1563
1564
1566
1569
1570
1579
1584
1585
1587
1591
1592
1593
1599
1602
1611
1620
1623
1626
1629
1630
1631
1637
1643
1649
1651
1664
1670
1672
1679
1681
1684
1685
1688
1690
1695
1700
1704
1705
1706
1708
1711
1714
1719
1724
1734
1735
1740
1744
1756
1757
1761
1767
1769
1785
1786
1796
1814
1819
1822
1824
1837
1838
1842
1844
1845
1846
1848
1850
1860
1862
1865
1867
1870
1873
1875
1879
1880
1882
1883
1884
1889
1892
1893
1897
1900
1909
1912
1917
1920
1925
1930
1933
1934
1941
1943
1948
1950
1952
1956
1957
1958
1965
1966
1972
1980
1981
1982
1987
1988
1989
1991
1992
2010
2013
2014
2030
2031
2034
2035
2038
2039
2056
2057
2059
2060
2061
2063
2069
2071
2072
2079
2091
2092
2093
2094
2096
2098
2107
2110
2111
2113
2116
2117
2120
2125
2128
2130
2131
2133
2137
2145
2146
2150
2152
2158
2163
2164
2167
2169
2171
2174
2183
2190
2192
2200
2204
2205
2209
2213
2214
2216
2219
2220
2222
2226
2234
2243
2246
2247
2254
2255
2256
2262
2269
2273
2275
2276
2277
2281
2285
2288
2295
2296
2297
2298
2300
2303
2304
2305
2306
2309
2311
2314
2318
2319
2321
2323
2327
2338
2339
2340
2342
2351
2352
2357
2360
2370
2375
2378
2386
2387
2391
2393
2401
2408
2410
2412
2416
2419
2426
2437
2440
2441
2442
2444
2446
2449
2452
2453
2462
2464
2467
2468
2472
2480
2485
2486
2487
2495
2496
2497
2516
2518
2527
2530
2538
2547
2557
2559
2561
2566
2569
2570
2575
2579
2583
2587
2589
2592
2600
2602
2605
2616
2622
2626
2628
2633
2638
2640
2648
2650
2660
2662
2675
2677
2682
2684
2685
2695
2708
2710
2711
2713
2715
2717
2723
2727
2729
2730
2738
2759
2767
2768
2778
2786
2788
2791
2796
2801
2804
2806
2819
2822
2827
2828
2835
2837
2846
2847
2849
2852
2858
2865
2866
2867
2868
2871
2877
2880
2883
2887
2890
2893
2898
2899
2903
2904
2906
2908
2909
2910
2918
2920
2928
2929
2940
2942
2943
2947
2951
2957
2958
2959
2962
2966
2967
2968
2979
2981
2984
2990
2994
2997
3008
3011
3015
3016
3017
3019
3021
3024
3029
3033
3041
3054
3055
3058
3059
3061
3066
3068
3069
3070
3075
3081
3082
3083
3084
3089
3090
3094
3095
3097
3105
3106
3108
3111
3112
3115
3117
3121
3122
3127
3128
3130
3136
3139
3143
3145
3152
3154
3155
3160
3170
3171
3172
3177
3179
3185
3192
3197
3207
3213
3222
3226
3231
3241
3245
3248
3252
3255
3275
3276
3283
3286
3287
3289
3292
3293
3305
3307
3308
3309
3313
3319
3327
3333
3339
3340
3357
3358
3359
3361
3367
3368
3387
3388
3390
3396
3397
3398
3404
3405
3411
3412
3423
3427
3431
3434
3445
3448
3452
3468
3470
3471
3472
3478
3479
3489
3496
3504
3506
3507
3521
3525
3527
3532
3538
3539
3541
3555
3557
3564
3566
3574
3579
3581
3588
3592
3603
3617
3628
3633
3636
3642
3643
3645
3646
3647
3649
3653
3656
3658
3662
3664
3667
3670
3671
3676
3680
3684
3689
3691
3696
3702
3703
3711
3715
3720
3722
3723
3729
3730
3731
3735
3738
3739
3741
3742
3743
3746
3748
3750
3751
3760
3761
3762
3763
3769
3771
3773
3774
3779
3784
3791
3803
3805
3814
3818
3824
3831
3835
3837
3838
3839
3853
3854
3867
3868
3876
3877
3881
3886
3893
3896
3908
3909
3912
3924
3927
3930
3932
3934
3948
3949
3957
3960
3966
3969
3980
3989
3992
3993
3997
4002
4003
4005
4017
4026
4028
4032
4036
4038
4042
4044
4050
4055
4059
4063
4065
4066
4069
4070
4073
4074
4080
4081
4087
4088
4097
4101
4102
4112
4119
4121
4131
4137
4145
4149
4150
4158
4159
4161
4164
4169
4172
4174
4179
4188
4189
4190
4194
4196
4197
4200
4203
4206
4209
4218
4219
4226
4228
4231
4236
4238
4242
4244
4245
4247
4248
4256
4268
4271
4274
4281
4286
4287
4288
4292
4300
4302
4306
4309
4314
4316
4320
4322
4331
4335
4338
4340
4344
4353
4354
4356
4360
4363
4367
4373
4379
4384
4387
4391
4394
4397
4406
4414
4416
4419
4429
4432
4433
4435
4436
4437
4439
4442
4444
4448
4449
4463
4466
4473
4476
4478
4481
4484
4485
4486
4487
4491
4493
4508
4511
4514
4517
4519
4522
4523
4528
4536
4542
4549
4552
4554
4568
4571
4573
4574
4577
4579
4581
4585
4589
4596
4604
4605
4606
4609
4611
4612
4613
4615
4616
4618
4619
4622
4625
4629
4636
4637
4640
4646
4652
4660
4668
4670
4671
4672
4682
4687
4700
4703
4706
4708
4711
4713
4716
4721
4723
4733
4736
4737
4738
4743
4745
4749
4754
4758
4764
4769
4772
4777
4780
4781
4786
4789
4796
4797
4799
4811
4812
4823
4828
4832
4835
4840
4841
4843
4844
4853
4856
4859
4861
4870
4875
4879
4883
4890
4892
4893
4901
4903
4904
4907
4917
4921
4926
4930
4931
4934
4937
4952
4953
4954
4955
4959
4972
4975
4982
4986
4998
5001
5003
5008
5011
5012
5013
5014
5016
5019
5040
5043
5045
5050
5053
5057
5059
5062
5063
5065
5066
5078
5079
5080
5084
5087
5093
5104
5106
5113
5115
5116
5121
5126
5133
5134
5137
5143
5146
5150
5152
5153
5159
5160
5161
5162
5175
5179
5184
5185
5191
5192
5199
5203
5204
5209
5211
5212
5224
5228
5234
5235
5237
5238
5239
5246
5247
5252
5256
5259
5265
5271
5278
5279
5281
5286
5288
5289
5290
5296
5305
5308
5314
5324
5340
5345
5349
5358
5360
5364
5366
5367
5375
5376
5389
5391
5392
5399
5406
5407
5409
5410
5413
5417
5419
5423
5425
5427
5435
5440
5444
5445
5446
5462
5470
5481
5483
5490
5495
5496
5503
5505
5506
5508
5519
5524
5526
5527
5536
5539
5545
5547
5548
5551
5552
5555
5556
5557
5564
5566
5570
5572
5573
5579
5587
5594
5601
5603
5604
5606
5609
5612
5618
5620
5625
5628
5629
5633
5637
5638
5641
5653
5657
5658
5663
5665
5666
5669
5672
5676
5679
5680
5681
5687
5693
5695
5707
5710
5718
5721
5722
5724
5727
5729
5730
5731
5752
5758
5759
5763
5766
5773
5774
5777
5783
5784
5789
5794
5797
5801
5802
5809
5810
5813
5824
5839
5840
5841
5843
5849
5852
5856
5862
5867
5868
5870
5873
5874
5883
5884
5885
5886
5888
5889
5890
5894
5895
5902
5903
5905
5906
5908
5913
5917
5927
5930
5938
5948
5949
5954
5955
5961
5973
5975
5982
5983
5984
5985
5992
5994
5997
5998
5999
6000
6002
6004
6005
6007
6011
6012
6015
6017
6019
6021
6023
6027
6028
6030
6036
6038
6039
6041
6042
6048
6051
6052
6058
6064
6068
6071
6075
6078
6080
6082
6087
6089
6090
6095
6096
6100
6105
6106
6108
6110
6112
6115
6121
6128
6129
6130
6133
6134
6138
6143
6144
6145
6155
6159
6162
6164
6175
6183
6187
6189
6192
6199
6206
6207
6211
6213
6230
6232
6237
6246
6247
6252
6258
6263
6266
6268
6274
6285
6287
6288
6299
6306
6315
6317
6320
6321
6322
6324
6325
6328
6338
6341
6342
6346
6351
6353
6364
6366
6372
6374
6376
6379
6392
6393
6396
6398
6404
6408
6411
6412
6414
6419
6422
6423
6428
6429
6434
6435
6437
6440
6442
6446
6447
6451
6452
6458
6466
6469
6470
6477
6478
6484
6486
6489
6493
6494
6497
6499
6516
6517
6524
6527
6530
6531
6532
6535
6545
6547
6551
6552
6554
6556
6567
6569
6573
6577
6580
6586
6587
6590
6592
6594
6599
6603
6609
6611
6614
6619
6620
6627
6629
6631
6633
6638
6639
6644
6646
6649
6650
6652
6657
6658
6664
6666
6673
6674
6676
6679
6681
6690
6693
6694
6696
6702
6706
6710
6713
6720
6721
6724
6732
6734
6736
6738
6741
6752
6765
6769
6771
6773
6777
6778
6781
6785
6791
6799
6802
6804
6806
6809
6814
6817
6818
6834
6840
6842
6844
6852
6855
6856
6858
6859
6869
6870
6873
6884
6887
6894
6897
6900
6902
6907
6909
6912
6918
6928
6932
6938
6940
6943
6944
6946
6947
6948
6959
6965
6968
6972
6974
6975
6977
6981
6985
6989
6994
7009
7014
7018
7025
7026
7029
7034
7038
7041
7043
7047
7048
7050
7053
7055
7058
7060
7062
7063
7064
7066
7069
7081
7085
7089
7094
7095
7102
7105
7112
7113
7115
7116
7148
7150
7152
7154
7159
7164
7165
7167
7171
7174
7176
7185
7187
7196
7197
7199
7201
7202
7205
7207
7208
7210
7216
7219
7224
7227
7239
7246
7260
7261
7269
7275
7276
7278
7279
7281
7284
7285
7291
7293
7305
7309
7314
7317
7318
7321
7323
7327
7329
7330
7332
7335
7339
7344
7346
7349
7358
7360
7363
7365
7366
7368
7371
7372
7375
7383
7385
7386
7390
7393
7406
7407
7408
7410
7412
7415
7416
7419
7426
7431
7435
7444
7445
7456
7473
