0
1
9
10
12
23
29
32
33
34
37
40
41
44
47
50
56
59
60
63
64
67
68
71
82
83
84
95
102
111
116
118
120
123
130
132
135
141
143
144
146
154
158
160
162
166
167
169
170
173
184
190
191
192
196
198
207
209
212
213
222
224
228
229
230
232
237
239
250
251
252
258
263
265
266
274
275
276
277
278
281
285
287
294
304
313
316
318
319
326
328
329
338
340
343
347
353
354
356
358
365
366
372
375
379
381
382
383
387
390
392
393
394
398
407
414
421
425
428
433
435
437
440
442
444
447
448
450
460
464
466
467
470
475
483
488
489
495
499
502
503
505
507
509
510
511
512
516
517
523
527
529
532
534
535
538
548
552
553
556
559
561
562
578
579
586
591
593
595
614
619
620
624
626
627
632
634
636
646
652
653
659
661
671
672
673
675
678
679
680
681
684
688
690
693
697
703
715
719
720
721
728
732
734
737
744
745
754
771
781
782
785
790
791
794
795
804
807
810
813
815
828
829
830
847
852
859
860
868
876
877
879
891
902
905
916
918
921
927
928
932
935
950
952
961
963
964
970
972
976
978
981
984
992
999
1009
1013
1016
1017
1019
1021
1022
1023
1024
1025
1028
1030
1031
1034
1035
1038
1042
1043
1044
1048
1055
1057
1061
1063
1065
1066
1068
1069
1075
1083
1087
1089
1091
1093
1094
1096
1100
1104
1109
1110
1114
1116
1124
1131
1144
1146
1155
1164
1165
1166
1168
1170
1172
1177
1186
1188
1189
1191
1198
1207
1209
1219
1223
1235
1236
1237
1243
1244
1245
1246
1248
1250
1251
1254
1258
1259
1260
1263
1264
1267
1272
1276
1287
1290
1291
1302
1306
1308
1319
1325
1329
1332
1335
1336
1338
1352
1355
1356
1362
1364
1366
1373
1375
1381
1388
1389
1392
1393
1394
1400
1401
1402
1403
1407
1408
1409
1410
1411
1412
1414
1416
1417
1420
1421
1422
1423
1424
1426
1430
1431
1433
1437
1439
1443
1450
1451
1455
1457
1460
1462
1470
1475
1476
1480
1483
1484
1487
1488
1489
1494
1499
1506
1509
1510
1512
1514
1516
1518
1519
1523
1531
1540
1542
1543
1560
1564
1575
1579
1580
1581
1584
1588
1589
1593
1596
1600
1602
1604
1609
1614
1618
1620
1627
1630
1645
1655
1656
1658
1660
1662
1663
1667
1669
1671
1678
1679
1682
1688
1689
1691
1703
1705
1710
1711
1712
1719
1724
1730
1736
1738
1740
1741
1742
1745
1747
1749
1750
1754
1755
1756
1759
1761
1762
1763
1767
1769
1770
1773
1782
1786
1789
1798
1799
1800
1803
1808
1809
1812
1817
1820
1825
1826
1828
1834
1839
1844
1853
1857
1858
1861
1864
1865
1868
1871
1875
1879
1892
1898
1899
1901
1902
1910
1911
1914
1919
1922
1926
1929
1930
1936
1940
1942
1944
1953
1957
1965
1966
1967
1968
1973
1974
1979
1980
1981
1983
1990
1994
1997
2001
2003
2005
2008
2009
2010
2016
2019
2020
2022
2027
2029
2034
2035
2037
2039
2043
2044
2048
2055
2059
2065
2071
2084
2088
2093
2095
2096
2101
2109
2110
2113
2116
2119
2123
2124
2128
2129
2140
2141
2142
2145
2149
2153
2158
2161
2162
2164
2166
2167
2172
2179
2184
2192
2193
2195
2197
2203
2205
2215
2217
2222
2226
2229
2234
2235
2238
2242
2258
2259
2261
2262
2264
2266
2277
2284
2297
2298
2300
2303
2308
2310
2315
2317
2319
2321
2324
2325
2327
2330
2331
2332
2334
2342
2345
2347
2356
2358
2359
2360
2364
2369
2375
2381
2384
2386
2387
2391
2399
2401
2402
2404
2407
2409
2411
2415
2416
2417
2418
2420
2427
2431
2437
2438
2441
2442
2444
2445
2447
2448
2452
2453
2454
2457
2458
2462
2466
2471
2474
2475
2478
2480
2481
2485
2491
2506
2507
2514
2515
2520
2527
2532
2534
2536
2539
2542
2549
2555
2556
2557
2558
2560
2562
2567
2569
2570
2571
2572
2574
2576
2592
2595
2604
2609
2612
2615
2617
2622
2623
2627
2635
2636
2637
2639
2647
2650
2651
2654
2655
2658
2659
2660
2663
2669
2676
2679
2684
2692
2694
2702
2703
2704
2705
2713
2715
2721
2727
2730
2732
2742
2744
2748
2750
2751
2758
2762
2763
2770
2771
2774
2776
2786
2790
2792
2793
2794
2797
2798
2799
2801
2802
2803
2807
2812
2815
2816
2817
2819
2820
2821
2825
2830
2843
2846
2847
2849
2851
2852
2853
2855
2856
2857
2863
2867
2872
2873
2876
2885
2886
2893
2897
2907
2909
2911
2914
2917
2918
2921
2924
2927
2928
2929
2932
2933
2939
2940
2943
2945
2948
2950
2951
2954
2955
2958
2960
2967
2974
2975
2976
2990
2995
2997
3001
3006
3023
3032
3035
3038
3039
3047
3049
3051
3059
3063
3065
3073
3076
3077
3079
3083
3085
3088
3097
3105
3108
3110
3115
3120
3123
3129
3133
3135
3141
3142
3145
3154
3155
3156
3158
3160
3162
3168
3170
3171
3176
3183
3185
3197
3202
3205
3206
3209
3211
3212
3215
3221
3227
3233
3243
3244
3246
3247
3252
3254
3255
3256
3259
3262
3274
3280
3285
3287
3289
3292
3298
3302
3304
3313
3317
3319
3320
3323
3324
3327
3328
3329
3333
3335
3337
3345
3346
3357
3358
3359
3368
3369
3370
3372
3383
3388
3390
3393
3397
3398
3400
3404
3406
3409
3413
3414
3418
3419
3422
3428
3441
3442
3445
3465
3467
3470
3472
3473
3477
3485
3489
3493
3495
3498
3501
3502
3510
3514
3515
3519
3527
3531
3532
3537
3539
3541
3542
3543
3544
3545
3546
3547
3554
3557
3558
3563
3570
3571
3576
3580
3586
3588
3594
3598
3615
3617
3619
3622
3623
3626
3629
3630
3634
3644
3645
3655
3659
3661
3662
3666
3679
3685
3686
3687
3689
3693
3709
3711
3717
3720
3721
3722
3724
3726
3727
3734
3735
3741
3746
3752
3756
3758
3759
3760
3761
3767
3784
3785
3789
3792
3798
3800
3801
3806
3808
3811
3815
3819
3820
3822
3834
3835
3840
3841
3844
3845
3846
3849
3852
3856
3857
3858
3863
3867
3876
3879
3885
3889
3891
3895
3896
3899
3901
3906
3916
3917
3918
3924
3925
3931
3935
3937
3942
3947
3956
3957
3959
3960
3963
3967
3972
3973
3976
3986
3988
3996
3999
4002
4013
4014
4028
4029
4036
4037
4041
4047
4049
4050
4051
4053
4054
4060
4062
4064
4068
4069
4072
4073
4074
4078
4082
4085
4086
4088
4090
4091
4094
4097
4100
4102
4103
4107
4108
4113
4115
4120
4123
4130
4132
4133
4136
4144
4145
4151
4158
4161
4166
4175
4181
4182
4199
4202
4204
4216
4218
4219
4224
4228
4230
4238
4243
4246
4250
4254
4265
4266
4267
4268
4269
4274
4284
4286
4291
4295
4298
4302
4305
4307
4312
4321
4330
4342
4351
4355
4364
4371
4377
4378
4379
4382
4387
4388
4392
4396
4403
4404
4406
4415
4417
4421
4431
4433
4437
4438
4441
4445
4447
4453
4456
4464
4468
4471
4475
4476
4480
4483
4484
4487
4488
4501
4502
4504
4507
4508
4510
4511
4513
4522
4531
4533
4542
4544
4546
4555
4556
4559
4560
4565
4574
4582
4583
4588
4591
4595
4597
4601
4604
4607
4614
4615
4616
4621
4631
4635
4638
4639
4641
4645
4647
4648
4650
4653
4654
4655
4657
4658
4664
4665
4667
4672
4680
4683
4685
4691
4693
4695
4704
4708
4717
4722
4723
4726
4729
4731
4749
4750
4751
4756
4761
4762
4764
4769
4775
4781
4789
4798
4802
4818
4819
4822
4824
4829
4831
4833
4836
4842
4845
4852
4858
4861
4863
4864
4865
4867
4877
4883
4887
4889
4899
4900
4901
4903
4904
4907
4911
4918
4920
4923
4934
4935
4939
4943
4945
4946
4949
4952
4956
4960
4963
4967
4972
4975
4977
4978
4979
4983
4989
4993
4995
4996
4997
5001
5007
5009
5012
5014
5020
5026
5029
5036
5041
5045
5048
5050
5051
5063
5070
5071
5075
5081
5083
5084
5086
5087
5088
5092
5099
5101
5105
5108
5109
5111
5112
5113
5114
5117
5118
5123
5127
5129
5135
5138
5146
5147
5149
5150
5151
5155
5163
5167
5168
5169
5173
5175
5176
5177
5179
5182
5183
5185
5188
5191
5193
5197
5199
5200
5209
5214
5225
5227
5228
5236
5237
5244
5248
5249
5256
5258
5260
5261
5265
5267
5270
5275
5278
5283
5285
5286
5292
5296
5297
5299
5300
5302
5305
5308
5312
5315
5317
5318
5321
5326
5330
5333
5335
5339
5340
5348
5350
5353
5357
5364
5368
5374
5376
5383
5384
5386
5387
5393
5394
5395
5396
5398
5399
5403
5404
5407
5414
5415
5429
5430
5435
5436
5443
5453
5454
5457
5458
5462
5467
5481
5484
5489
5490
5493
5503
5509
5514
5515
5523
5530
5532
5536
5541
5544
5553
5554
5555
5558
5559
5563
5567
5572
5575
5589
5590
5597
5599
5603
5605
5620
5625
5626
5629
5631
5637
5643
5648
5649
5651
5658
5660
5661
5662
5665
5672
5673
5678
5684
5703
5704
5705
5708
5714
5718
5727
5733
5734
5738
5739
5744
5745
5750
5753
5754
5757
5760
5762
5763
5766
5767
5775
5776
5780
5781
5784
5785
5789
5791
5792
5794
5799
5805
5817
5820
5821
5822
5827
5829
5830
5831
5835
5836
5837
5846
5848
5849
5853
5865
5869
5870
5872
5889
5890
5896
5897
5898
5904
5908
5909
5911
5919
5925
5929
5930
5931
5935
5936
5938
5939
5944
5945
5947
5951
5953
5958
5959
5962
5968
5974
5977
5978
5980
5982
5986
5995
5996
5997
5998
6000
6001
6006
6007
6009
6011
6015
6016
6019
6020
6027
6028
6032
6033
6035
6037
6038
6043
6047
6051
6052
6054
6055
6058
6066
6067
6071
6074
6075
6082
6085
6088
6090
6091
6098
6102
6103
6105
6107
6109
6110
6116
6122
6124
6126
6127
6129
6132
6148
6151
6157
6159
6164
6168
6169
6173
6174
6176
6179
6181
6182
6189
6190
6191
6194
6199
6205
6206
6207
6208
6211
6220
6222
6224
6226
6230
6241
6245
6249
6256
6258
6261
6262
6269
6273
6277
6280
6285
6286
6292
6293
6295
6301
6307
6309
6312
6314
6316
6323
6325
6326
6329
6344
6358
6359
6360
6361
6367
6369
6370
6374
6386
6388
6393
6399
6410
6413
6414
6416
6418
6422
6427
6429
6432
6435
6446
6448
6450
6458
6461
6467
6469
6472
6474
6476
6477
6478
6482
6483
6491
6492
6493
6494
6497
6500
6508
6516
6519
6520
6525
6529
6536
6551
6559
6560
6561
6565
6572
6576
6578
6580
6588
6589
6592
6599
6602
6603
6610
6615
6620
6623
6624
6646
6647
6651
6653
6656
6657
6659
6661
6663
6665
6667
6668
6669
6671
6673
6674
6676
6677
6688
6692
6696
6697
6700
6702
6717
6718
6727
6731
6733
6736
6738
6747
6750
