0
1
4
6
9
11
13
16
20
21
22
27
28
32
35
40
48
49
50
51
54
63
65
67
69
71
81
85
93
94
95
96
98
106
109
118
124
126
129
134
136
137
138
139
142
145
148
151
153
159
162
164
170
172
173
175
181
182
183
185
190
191
193
211
216
219
220
232
233
234
235
237
246
249
253
254
264
265
269
270
276
278
286
287
300
301
302
303
307
313
315
316
318
327
329
330
331
333
334
335
340
343
344
356
359
360
361
365
369
372
374
380
383
389
393
401
403
404
408
410
413
417
421
423
424
426
428
435
437
441
442
449
450
451
455
458
462
467
470
474
476
478
489
491
492
494
495
498
507
508
510
515
519
524
529
532
533
536
539
540
542
549
555
557
560
565
567
568
569
572
574
576
582
583
588
592
598
601
602
606
610
612
618
626
627
635
637
644
649
658
661
662
664
669
670
681
683
685
686
702
705
713
718
720
721
722
727
728
731
734
739
746
750
751
754
755
756
758
762
763
765
767
772
782
784
787
789
798
799
803
814
816
817
819
820
821
826
827
830
832
833
836
837
838
839
841
847
850
851
856
864
868
870
877
884
886
889
893
897
901
902
906
911
912
915
917
919
927
930
933
935
936
940
943
944
946
947
948
951
957
959
965
966
967
970
974
979
982
983
984
985
988
991
995
998
999
1000
1001
1005
1006
1016
1017
1018
1025
1026
1027
1028
1031
1035
1036
1040
1042
1043
1046
1047
1051
1054
1057
1068
1069
1072
1073
1074
1075
1077
1080
1083
1084
1087
1090
1091
1094
1096
1097
1098
1099
1101
1104
1106
1107
1114
1121
1122
1126
1129
1131
1135
1139
1157
1159
1165
1169
1174
1179
1180
1184
1185
1191
1195
1196
1199
1200
1202
1203
1204
1205
1213
1222
1226
1230
1235
1237
1240
1246
1247
1248
1250
1252
1257
1260
1264
1265
1273
1274
1275
1276
1280
1288
1293
1295
1297
1309
1318
1319
1320
1323
1328
1332
1334
1338
1342
1346
1349
1351
1356
1363
1366
1372
1376
1378
1380
1383
1389
1391
1394
1398
1403
1412
1415
1416
1417
1421
1423
1424
1428
1430
1431
1442
1446
1448
1450
1453
1455
1460
1461
1463
1464
1465
1466
1467
1472
1477
1478
1479
1487
1488
1490
1495
1500
1506
1507
1509
1512
1514
1516
1519
1525
1528
1532
1535
1536
1538
1540
1541
1543
1549
1550
1565
1571
1576
1577
1585
1588
1592
1595
1599
1603
1606
1608
1612
1613
1615
1619
1620
1621
1622
1625
1626
1630
1634
1637
1639
1641
1645
1650
1652
1655
1657
1668
1676
1678
1679
1680
1684
1685
1688
1689
1697
1698
1701
1703
1704
1708
1712
1721
1731
1733
1737
1738
1744
1746
1750
1752
1753
1755
1776
1782
1787
1795
1796
1800
1802
1807
1809
1810
1811
1814
1816
1822
1825
1826
1828
1829
1832
1836
1839
1841
1842
1843
1847
1850
1855
1859
1862
1864
1879
1881
1885
1887
1889
1896
1897
1899
1906
1910
1913
1916
1919
1920
1924
1925
1930
1931
1937
1945
1950
1957
1958
1963
1972
1973
1974
1975
1979
1984
1992
1993
1995
1997
1999
2005
2006
2009
2011
2013
2020
2024
2028
2030
2031
2036
2037
2039
2043
2044
2046
2049
2053
2054
2056
2057
2061
2070
2073
2076
2079
2081
2087
2088
2089
2091
2093
2101
2102
2103
2104
2108
2111
2112
2113
2114
2117
2122
2124
2131
2138
2140
2142
2144
2149
2154
2156
2161
2162
2163
2164
2165
2170
2172
2173
2174
2177
2179
2181
2183
2186
2187
2188
2190
2196
2200
2207
2210
2212
2218
2224
2227
2228
2230
2240
2243
2259
2261
2262
2265
2267
2268
2269
2271
2273
2274
2276
2277
2279
2280
2281
2283
2284
2289
2294
2305
2308
2312
2319
2320
2325
2332
2336
2338
2339
2345
2352
2356
2357
2365
2366
2367
2368
2370
2371
2375
2377
2387
2390
2391
2392
2395
2400
2408
2412
2419
2423
2425
2428
2441
2442
2445
2455
2473
2476
2478
2479
2481
2482
2484
2492
2494
2496
2498
2501
2502
2509
2512
2515
2524
2531
2535
2536
2537
2539
2541
2542
2544
2551
2552
2553
2555
2561
2563
2570
2575
2579
2584
2590
2591
2592
2594
2595
2604
2611
2612
2613
2624
2626
2628
2633
2634
2640
2643
2645
2648
2650
2656
2658
2661
2664
2668
2670
2675
2679
2692
2694
2696
2706
2712
2715
2716
2722
2723
2727
2728
2729
2730
2731
2735
2736
2737
2740
2745
2746
2749
2752
2757
2759
2761
2762
2767
2770
2771
2774
2775
2777
2778
2780
2783
2788
2789
2798
2809
2810
2813
2823
2824
2825
2827
2831
2832
2839
2840
2842
2844
2856
2858
2861
2862
2863
2864
2867
2872
2878
2880
2881
2883
2884
2893
2899
2900
2904
2906
2924
2930
2932
2935
2944
2948
2952
2954
2956
2961
2962
2963
2967
2970
2971
2973
2977
2986
2989
2995
2998
3005
3006
3007
3011
3014
3017
3019
3020
3021
3022
3023
3024
3035
3036
3042
3043
3044
3045
3050
3054
3056
3066
3070
3082
3084
3086
3089
3092
3102
3105
3106
3114
3116
3118
3119
3120
3126
3127
3133
3134
3139
3140
3141
3143
3146
3147
3149
3152
3161
3164
3170
3175
3180
3192
3197
3198
3200
3205
3206
3209
3212
3217
3218
3219
3222
3224
3231
3234
3236
3237
3242
3247
3250
3258
3263
3264
3265
3273
3278
3279
3280
3283
3284
3285
3287
3290
3294
3295
3296
3299
3301
3304
3307
3309
3318
3319
3321
3325
3326
3328
3329
3334
3341
3342
3345
3349
3350
3357
3361
3363
3367
3370
3378
3385
3389
3411
3418
3427
3428
3436
3439
3441
3444
3445
3446
3447
3448
3449
3450
3454
3464
3467
3468
3473
3477
3482
3487
3492
3493
3498
3500
3504
3505
3508
3511
3512
3514
3519
3521
3531
3533
3535
3538
3541
3542
3544
3546
3548
3549
3554
3556
3558
3559
3561
3568
3572
3576
3585
3588
3591
3593
3597
3601
3603
3606
3607
3608
3609
3621
3623
3627
3632
3638
3646
3650
3651
3656
3657
3658
3660
3661
3662
3667
3671
3672
3673
3674
3677
3678
3680
3684
3686
3687
3690
3691
3692
3697
3701
3710
3714
3719
3720
3722
3730
3736
3738
3741
3743
3746
3758
3759
3761
3763
3766
3768
3772
3781
3782
3783
3784
3785
3789
3791
3795
3801
3802
3804
3809
3819
3820
3823
3825
3827
3829
3830
3832
3834
3843
3845
3847
3848
3851
3857
3874
3875
3878
3880
3886
3889
3895
3896
3903
3904
3905
3913
3919
3921
3922
3927
3928
3930
3931
3935
3937
3938
3939
3940
3947
3950
3951
3966
3973
3977
3981
3982
3990
3995
3997
4001
4004
4005
4009
4013
4014
4015
4021
4024
4025
4029
4035
4036
4038
4042
4049
4051
4053
4055
4057
4058
4061
4068
4070
4074
4076
4099
4100
4105
4107
4111
4114
4116
4122
4123
4124
4126
4127
4135
4138
4139
4141
4146
4149
4166
4169
4173
4174
4177
4184
4192
4203
4207
4209
4210
4211
4212
4214
4222
4226
4227
4233
4235
4239
4241
4246
4247
4248
4249
4251
4252
4256
4258
4261
4263
4269
4274
4275
4277
4282
4294
4296
4305
4306
4307
4317
4319
4320
4323
4324
4327
4330
4331
4332
4333
4334
4335
4339
4340
4341
4343
4344
4348
4351
4352
4358
4373
4376
4377
4383
4391
4392
4396
4399
4403
4409
4410
4412
4418
4420
4421
4422
4423
4424
4425
4435
4443
4448
4449
4451
4457
4459
4464
4467
4469
4471
4472
4478
4479
4481
4482
4485
4487
4490
4491
4492
4494
4495
4498
4506
4510
4511
4513
4518
4519
4524
4532
4536
4540
4542
4551
4559
4560
4563
4565
4566
4568
4569
4577
4578
4582
4583
4590
4592
4594
4598
4601
4602
4604
4605
4610
4613
4618
4620
4621
4623
4630
4631
4632
4639
4641
4642
4646
4648
4653
4662
4664
4670
4672
4677
4678
4679
4687
4688
4699
4702
4703
4706
4709
4711
4715
4718
4719
4727
4728
4730
4733
4734
4740
4750
4753
4754
4768
4769
4771
4772
4775
4776
4777
4781
4787
4791
4795
4801
4808
4819
4823
4838
4839
4844
4851
4853
4854
4857
4860
4864
4870
4871
4875
4876
4878
4879
4884
4885
4887
4895
4898
4904
4906
4907
4915
4919
4921
4930
4935
4940
4943
4944
4946
4948
4953
4955
4957
4959
4963
4964
4968
4969
4972
4979
4987
4991
4994
4996
4997
5003
5005
5006
5007
5008
5009
5011
5018
5020
5024
5025
5030
5031
5034
5035
5036
5042
5046
5047
5051
5055
5067
5072
5074
5076
5082
5092
5105
5115
5116
5119
5120
5122
5124
5125
5136
5137
5141
5143
5144
5145
5148
5157
5159
5164
5167
5169
5175
5176
5179
5181
5186
5187
5189
5191
5198
5199
5202
5211
5213
5214
5216
5223
5227
5234
5246
5249
5255
5260
5261
5265
5278
5282
5283
5287
5292
5293
5294
5298
5300
5301
5305
5313
5318
5319
5320
5323
5324
5325
5327
5329
5333
5337
5338
5339
5340
5341
5342
5345
5349
5359
5366
5371
5383
5384
5386
5398
5399
5406
5410
5417
5418
5424
5425
5426
5443
5444
5448
5453
5460
5463
5466
5474
5475
5481
5485
5486
5489
5496
5497
5505
5507
5509
5510
5513
5515
5516
5519
5521
5525
5526
5527
5538
5539
5543
5546
5548
5549
5550
5552
5555
5559
5562
5566
5567
5574
5575
5583
5585
5587
5594
5598
5605
5606
5609
5614
5615
5618
5619
5620
5622
5628
5634
5635
5645
5649
5652
5653
5657
5661
5663
5665
5669
5670
5672
5673
5680
5685
5690
5694
5701
5702
5706
5707
5708
5709
5710
5715
5719
5731
5744
5755
5756
5762
5765
5767
5768
5771
5775
5779
5783
5787
5790
5793
5796
5799
5801
5802
5806
5807
5811
5812
5814
5818
5821
5824
5826
5827
5829
5834
5842
5844
5852
5854
5857
5858
5861
5864
5871
5872
5875
5879
5881
5886
5888
5891
5900
5901
5902
5912
5916
5918
5923
5925
5926
5943
5946
5968
5973
5976
5979
5983
5984
5985
5987
5989
6003
6006
6016
6017
6018
6023
6024
6025
6026
6034
6036
6037
6041
6043
6051
6058
6059
6064
6069
6081
6083
6087
6100
6105
6112
6114
6118
6126
6128
6136
6137
6138
6141
6144
6148
6151
6154
6157
6158
6159
6161
6162
6164
6169
6171
6173
6175
6178
6179
6180
6181
6186
6188
6189
6190
6191
6197
6198
6203
6206
6210
6211
6216
6224
6226
6228
6229
6231
6233
6237
6242
6244
6245
6252
6253
6257
6260
6262
6264
6267
6268
6271
6277
6281
6282
6284
6285
6288
6289
6290
6292
6296
6297
6299
6300
6302
6304
6308
6310
6315
6316
6320
6322
6324
6326
6332
6334
6340
6343
6350
6359
6364
6367
6368
6369
6372
6373
6374
6376
6378
6382
