1
10
14
17
20
28
30
34
35
36
39
42
45
46
48
49
55
56
57
59
61
71
74
75
76
81
84
87
91
93
95
99
100
104
109
110
111
114
115
119
125
132
134
137
140
145
147
149
150
152
163
166
170
173
175
187
194
195
204
215
222
225
227
228
229
231
234
237
245
247
249
257
260
264
266
269
270
272
274
276
277
278
283
285
290
303
305
314
317
320
323
325
336
338
342
350
351
352
354
363
364
366
372
373
374
375
376
384
387
391
392
395
396
399
403
409
412
413
414
422
431
437
438
441
442
443
454
463
464
468
471
473
480
488
495
506
507
508
512
513
515
516
517
520
523
524
528
531
535
544
547
550
558
559
564
566
570
579
581
583
592
597
598
599
603
604
616
619
621
631
633
636
637
639
641
649
650
651
652
653
661
662
664
671
681
691
693
698
700
710
712
714
715
716
720
724
725
728
730
731
732
737
738
742
745
756
758
761
765
766
767
775
777
782
783
784
785
788
794
796
797
800
810
812
822
827
829
838
840
841
842
847
848
850
854
855
856
858
861
863
867
874
875
887
891
898
905
906
908
914
916
930
931
935
939
940
942
943
950
951
955
962
963
967
976
980
984
988
991
993
1000
1002
1004
1005
1006
1011
1016
1025
1028
1031
1033
1041
1042
1044
1050
1059
1060
1063
1064
1067
1076
1078
1079
1081
1085
1091
1094
1102
1104
1110
1113
1114
1115
1118
1121
1125
1128
1130
1135
1136
1143
1144
1148
1149
1153
1157
1159
1160
1163
1171
1173
1176
1177
1179
1180
1181
1196
1197
1204
1210
1211
1214
1215
1216
1229
1231
1233
1238
1240
1244
1261
1265
1266
1268
1275
1281
1289
1290
1293
1296
1301
1304
1307
1318
1328
1330
1344
1345
1351
1353
1356
1357
1366
1367
1370
1371
1372
1374
1375
1376
1379
1385
1388
1389
1390
1394
1397
1401
1407
1415
1417
1418
1422
1423
1427
1428
1432
1437
1438
1439
1443
1449
1450
1451
1452
1454
1455
1457
1458
1459
1461
1467
1469
1472
1475
1478
1483
1484
1492
1493
1504
1505
1507
1527
1531
1536
1537
1540
1550
1554
1556
1564
1566
1567
1569
1570
1574
1575
1577
1580
1582
1592
1597
1598
1608
1613
1616
1620
1622
1623
1625
1633
1634
1635
1638
1644
1650
1654
1655
1660
1664
1666
1678
1685
1688
1692
1695
1698
1699
1708
1714
1715
1716
1719
1720
1721
1723
1725
1726
1728
1732
1735
1737
1742
1744
1748
1749
1750
1754
1757
1763
1765
1770
1773
1783
1785
1790
1806
1813
1817
1822
1824
1834
1835
1840
1841
1843
1844
1847
1852
1853
1854
1856
1861
1862
1863
1864
1868
1869
1871
1878
1880
1890
1893
1894
1895
1897
1899
1900
1901
1905
1906
1909
1917
1918
1919
1923
1927
1931
1937
1942
1949
1952
1954
1955
1957
1964
1965
1966
1972
1975
1979
1980
1984
1988
1990
1996
1999
2000
2007
2014
2017
2019
2021
2025
2032
2036
2037
2040
2044
2045
2049
2056
2057
2061
2062
2076
2081
2085
2086
2088
2092
2094
2097
2102
2104
2109
2111
2113
2114
2117
2121
2131
2132
2136
2138
2141
2144
2146
2149
2158
2166
2167
2172
2179
2183
2192
2193
2194
2196
2199
2201
2204
2205
2207
2214
2219
2220
2221
2225
2226
2227
2228
2230
2231
2233
2234
2244
2245
2246
2247
2248
2252
2254
2257
2274
2276
2278
2279
2281
2286
2287
2302
2304
2305
2307
2309
2311
2312
2332
2333
2338
2339
2344
2347
2350
2368
2370
2378
2379
2385
2391
2396
2400
2401
2402
2403
2421
2422
2423
2427
2444
2445
2446
2452
2453
2455
2462
2466
2467
2469
2476
2478
2481
2482
2483
2499
2501
2507
2509
2510
2511
2520
2534
2542
2543
2550
2553
2554
2565
2575
2576
2580
2586
2588
2592
2594
2596
2602
2607
2611
2617
2623
2624
2633
2634
2637
2645
2646
2647
2653
2655
2660
2664
2670
2680
2695
2698
2709
2712
2716
2722
2727
2731
2734
2742
2743
2744
2749
2750
2756
2758
2761
2765
2767
2768
2769
2770
2774
2776
2778
2786
2795
2796
2797
2798
2801
2806
2816
2817
2819
2820
2821
2822
2826
2838
2841
2845
2847
2849
2851
2856
2857
2860
2861
2863
2865
2867
2871
2872
2873
2875
2877
2878
2886
2889
2895
2910
2911
2913
2919
2924
2927
2929
2930
2936
2938
2939
2942
2946
2947
2953
2955
2961
2962
2963
2966
2975
2976
2981
2983
2993
3004
3006
3008
3013
3014
3024
3027
3030
3033
3036
3039
3041
3048
3050
3053
3055
3059
3072
3074
3077
3078
3091
3092
3095
3109
3118
3122
3126
3131
3134
3138
3142
3148
3149
3158
3164
3181
3182
3185
3195
3196
3198
3199
3200
3202
3213
3215
3222
3238
3244
3246
3254
3257
3260
3264
3265
3268
3269
3272
3277
3279
3280
3285
3293
3297
3299
3301
3307
3308
3313
3318
3321
3332
3333
3335
3337
3338
3342
3347
3351
3355
3361
3362
3371
3372
3373
3379
3383
3386
3388
3405
3407
3412
3432
3436
3448
3449
3453
3458
3460
3463
3464
3465
3466
3467
3471
3472
3480
3481
3482
3484
3486
3488
3493
3497
3503
3505
3506
3515
3523
3524
3526
3533
3538
3540
3544
3552
3553
3559
3560
3563
3564
3567
3571
3580
3584
3585
3588
3594
3597
3601
3603
3604
3605
3606
3607
3609
3618
3619
3631
3637
3639
3640
3642
3644
3647
3658
3661
3663
3665
3667
3668
3677
3683
3686
3687
3691
3693
3696
3703
3704
3710
3716
3723
3726
3729
3732
3735
3738
3739
3741
3746
3747
3748
3750
3753
3763
3765
3774
3776
3781
3784
3792
3794
3795
3797
3804
3806
3809
3810
3817
3818
3820
3827
3829
3841
3844
3845
3856
3860
3861
3862
3867
3870
3875
3879
3896
3898
3905
3907
3913
3920
3921
3922
3924
3927
3928
3931
3932
3933
3934
3947
3956
3959
3963
3968
3975
3976
3977
3989
4004
4005
4010
4013
4016
4025
4031
4033
4037
4039
4041
4043
4047
4052
4054
4057
4060
4068
4070
4071
4075
4076
4080
4081
4082
4084
4089
4093
4095
4108
4116
4117
4118
4119
4121
4125
4136
4138
4140
4144
4146
4150
4156
4157
4158
4160
4164
4175
4179
4181
4184
4185
4186
4188
4192
4193
4194
4197
4200
4201
4202
4205
4206
4207
4208
4210
4213
4219
4222
4229
4241
4243
4244
4247
4260
4261
4262
4263
4269
4270
4272
4275
4276
4281
4285
4297
4303
4304
4310
4315
4326
4333
4334
4335
4340
4343
4348
4350
4351
4355
4358
4370
4371
4373
4375
4381
4387
4394
4396
4397
4398
4400
4405
4407
4408
4409
4414
4416
4418
4422
4430
4433
4447
4452
4454
4457
4462
4463
4465
4466
4471
4472
4479
4481
4482
4483
4484
4490
4494
4497
4508
4514
4517
4523
4526
4527
4530
4536
4538
4544
4547
4548
4549
4551
4552
4555
4558
4563
4565
4566
4567
4568
4571
4588
4592
4600
4601
4604
4608
4609
4610
4612
4613
4620
4627
4637
4641
4643
4644
4648
4650
4657
4660
4664
4668
4670
4671
4680
4682
4685
4689
4691
4694
4697
4699
4705
4706
4707
4708
4712
4713
4720
4724
4728
4729
4741
4748
4750
4755
4757
4759
4761
4764
4766
4772
4773
4779
4785
4798
4800
4802
4809
4811
4812
4814
4816
4820
4822
4823
4831
4832
4834
4836
4846
4855
4862
4865
4867
4870
4874
4879
4880
4885
4887
4889
4891
4893
4900
4903
4916
4918
4920
4923
4924
4925
4926
4927
4930
4932
4936
4938
4948
4949
4955
4957
4959
4960
4964
4969
4970
4974
4976
4979
4980
4982
4986
5002
5005
5006
5013
5014
5015
5016
5018
5020
5023
5025
5029
5035
5040
5047
5051
5052
5057
5058
5061
5063
5064
5065
5073
5074
5081
5088
5089
5090
5097
5098
5099
5100
5105
5106
5112
5115
5124
5125
5131
5132
5133
5134
5135
5138
5145
5146
5149
5158
5159
5162
5177
5178
5181
5184
5188
5191
5193
5199
5200
5201
5203
5207
5208
5211
5212
5213
5216
5219
5221
5226
5231
5233
5234
5238
5239
5241
5256
5257
5261
5264
5267
5268
5271
5273
5276
5278
5283
5285
5288
5289
5293
5299
5302
5309
5313
5315
5319
5321
5324
5333
5334
5337
5340
5346
5347
5351
5352
5353
5355
5356
5360
5362
5363
5369
5378
5382
5389
5390
5393
5395
5400
5402
5414
5419
5423
5424
5427
5430
5444
5449
5450
5453
5456
5458
5465
5467
5468
5473
5476
5481
5484
5489
5491
5492
5493
5495
5500
5502
5503
5504
5506
5512
5513
5514
5521
5522
5524
5532
5541
5543
5545
5548
5556
5559
5563
5565
5570
5571
5580
5581
5585
5589
5593
5599
5600
5603
5604
5605
5606
5610
5613
5622
5623
5625
5626
5627
5628
5630
5631
5641
5645
5650
5654
5656
5662
5663
5668
5669
5671
5672
5673
5686
5701
5705
5716
5718
5719
5721
5722
5724
5725
5728
5729
5732
5733
5738
5741
5745
5746
5747
5750
5761
5762
5777
5780
5784
5786
5793
5796
5797
5799
5800
5802
5809
5812
5819
5824
5825
5826
5829
5830
5831
5832
5835
5839
5845
5848
5853
5854
5856
5857
5858
5861
5862
5863
5865
5870
5873
5874
5875
5876
5882
5883
5891
5893
5895
5898
5899
5900
5912
5913
5915
5927
5928
5932
5934
5939
5941
5942
5949
5950
5951
5954
5962
5967
5971
5974
5975
5978
5979
5982
5983
5986
5987
5988
5989
5993
5996
6001
6006
6015
6016
6023
6024
6029
6030
6031
6035
6036
6048
6050
6052
6056
6057
6060
6065
6068
6076
6084
6085
6090
6093
6095
6096
6098
6101
6110
6112
6116
6122
6127
6129
6130
6133
6145
6148
6152
6157
6158
6163
6166
6172
6175
6178
6181
6194
6196
6199
6200
6204
6206
6209
6211
6215
6219
6225
6230
6232
6236
6238
6239
6244
6245
6249
6251
6255
6256
6260
6262
6277
6280
6282
6285
6288
6290
6292
6298
6301
6302
6303
6310
6318
6321
6327
6331
6337
6338
6339
6340
6342
6344
6348
6351
6352
6358
6361
6362
6365
6368
6369
6370
6378
6379
6383
6384
6388
6393
6396
6400
6403
6411
6415
6419
6427
6428
6432
6433
6436
6440
6442
6443
6448
6449
6451
6452
6456
6464
6465
6466
6467
6470
6477
6479
6482
6485
6486
6489
6491
6493
6504
6507
6508
6512
6514
6518
6521
6524
6528
6530
6532
6535
6542
6545
6549
6550
6556
6558
6560
6565
6571
6573
6579
6585
6589
6590
6592
6593
6596
6599
6602
6607
6614
6622
6626
6629
6641
6642
6646
6647
6649
6651
6655
6663
6666
6667
6669
6675
6676
6681
6688
6691
6695
6698
6699
6700
6703
6704
6708
6712
6714
6715
6716
6719
6721
6723
6724
6729
6735
6743
6749
6750
6764
6768
6771
6776
6778
6783
6784
6787
6791
6793
6794
6798
6799
6800
6801
6804
6809
6814
6819
6820
6824
6827
6830
6831
6843
6854
6856
6858
6862
6868
6870
6874
6876
6877
6884
6886
6889
6892
6896
6897
6900
6920
6922
6925
6927
6930
6933
6941
6951
6953
6955
6959
6982
6983
6992
6994
6995
6996
7002
7006
7007
7008
7010
7011
7017
7018
7019
7020
7031
7035
7037
7047
7049
7052
7053
7054
7058
7059
7064
7066
7076
7080
7082
7091
7095
7096
7099
7100
7109
7113
7115
7116
7118
7123
7127
7131
7133
7141
7143
7147
7149
7156
7160
7161
7165
7168
7173
7178
7179
7181
7182
7183
7187
7189
7190
7191
7196
7200
7201
7205
7206
7207
7208
7210
7219
7224
7229
7231
7232
7233
7245
7246
7249
7250
7251
7252
7256
7261
7263
7265
7266
7271
7279
7281
7284
7285
7296
7298
7307
7308
7312
7316
7318
7322
7333
7338
7341
7344
7348
7349
7350
7356
7357
7358
7366
7373
7380
7384
7390
7394
7395
7403
7408
7415
7422
7427
7433
7436
7437
7450
7452
7453
7454
7456
7462
7464
7475
7476
7484
7485
7488
7494
7499
7502
7503
7504
7508
7515
7518
7520
7522
7531
7532
7533
7537
7538
7540
7543
7549
7551
7554
7558
7561
7563
7572
7573
7579
7580
7582
7585
7586
7588
7594
7610
7611
7613
7615
7619
7622
7625
7634
7637
7641
7645
7648
7649
7656
7659
7660
7662
7665
7667
7671
7676
7680
7681
7682
7683
7684
7689
7690
7691
7709
7710
7714
7715
7719
7723
7724
7726
7728
7729
7736
7737
7738
7745
7746
7747
7749
7750
7751
7759
7763
7765
7767
7772
7773
7777
7787
7789
7793
7796
7797
7800
7807
7808
7815
7819
7824
7825
7835
7838
7839
7844
7845
7850
7858
7859
7861
7864
7866
7867
7870
7878
7879
7882
7884
7890
7891
7892
7907
7911
7912
7914
7920
7936
7940
7941
7942
7947
7951
7953
7962
7965
7968
7969
7970
7971
7973
7974
7975
7979
7985
7987
7995
7996
8007
8008
8010
8011
8012
8016
8023
8024
8033
8037
8048
8055
8056
8068
8070
8074
8077
8083
8086
8089
8090
8099
