1
2
5
7
9
11
12
20
21
23
24
26
27
28
29
30
39
42
43
48
50
61
63
64
67
72
76
77
78
79
81
84
85
95
99
102
105
106
107
108
111
116
117
119
122
125
130
131
134
137
138
139
141
143
144
147
153
156
157
159
162
168
175
179
181
182
184
185
186
199
206
207
210
212
215
216
218
219
221
238
240
245
248
249
250
253
260
263
264
275
276
279
281
283
288
293
295
300
302
303
305
308
316
317
319
321
323
326
327
328
329
331
333
334
335
351
355
357
360
363
366
372
373
374
375
376
377
385
391
392
393
398
402
407
409
411
413
414
416
417
418
421
422
424
426
428
432
435
436
440
441
444
447
449
450
452
455
463
467
470
471
472
473
475
477
478
479
486
489
490
494
495
498
499
501
503
514
523
527
528
531
532
533
536
537
538
539
541
543
551
553
555
559
567
575
579
583
584
588
590
592
594
596
597
599
610
612
613
614
615
620
633
636
638
641
643
649
650
651
652
654
656
659
661
667
669
670
678
679
681
687
690
693
704
705
707
708
714
719
723
729
731
732
734
742
743
749
751
752
754
756
759
761
763
766
775
776
782
784
791
792
793
795
796
806
812
820
821
826
829
831
837
839
841
851
853
857
858
860
862
865
866
867
873
875
877
878
882
887
889
890
892
894
901
909
911
916
919
924
926
933
936
937
939
943
944
947
950
957
958
959
963
969
980
983
988
990
991
993
995
997
999
1004
1006
1007
1009
1010
1013
1015
1016
1017
1018
1020
1022
1023
1025
1026
1029
1030
1039
1040
1041
1044
1048
1049
1050
1058
1059
1062
1063
1064
1070
1075
1078
1079
1080
1081
1082
1084
1086
1088
1091
1096
1098
1099
1101
1104
1105
1106
1107
1115
1117
1121
1122
1125
1131
1132
1136
1139
1142
1145
1146
1149
1150
1151
1152
1156
1157
1158
1159
1163
1166
1169
1170
1173
1177
1179
1181
1183
1188
1189
1191
1192
1195
1199
1201
1203
1208
1210
1211
1214
1216
1217
1220
1227
1229
1234
1237
1243
1244
1246
1247
1248
1249
1255
1257
1269
1272
1274
1277
1281
1282
1284
1287
1288
1289
1295
1298
1300
1302
1304
1306
1309
1315
1319
1321
1323
1324
1329
1330
1336
1339
1340
1341
1342
1343
1344
1349
1353
1356
1363
1368
1369
1370
1371
1375
1376
1377
1380
1381
1383
1385
1397
1398
1405
1406
1408
1410
1414
1416
1418
1419
1420
1421
1426
1427
1429
1431
1433
1439
1442
1444
1449
1450
1451
1453
1454
1456
1458
1459
1463
1464
1468
1473
1475
1479
1480
1486
1494
1500
1503
1509
1510
1512
1513
1514
1515
1525
1526
1529
1533
1534
1535
1536
1549
1558
1563
1564
1565
1569
1571
1572
1574
1577
1578
1580
1584
1587
1589
1591
1593
1594
1598
1602
1603
1604
1607
1613
1617
1626
1629
1634
1638
1639
1647
1649
1652
1662
1664
1668
1669
1672
1681
1685
1686
1689
1690
1691
1697
1699
1707
1709
1718
1725
1726
1729
1737
1738
1741
1742
1744
1745
1747
1748
1751
1752
1755
1756
1758
1759
1765
1766
1767
1770
1772
1774
1783
1784
1788
1792
1798
1801
1804
1806
1808
1809
1813
1814
1815
1817
1828
1830
1831
1832
1836
1838
1839
1841
1842
1844
1845
1846
1847
1852
1868
1871
1872
1873
1874
1880
1883
1885
1888
1889
1891
1892
1894
1896
1898
1907
1909
1912
1914
1917
1920
1926
1932
1933
1934
1935
1936
1943
1947
1948
1950
1953
1957
1967
1970
1975
1985
1986
1993
1995
1998
2002
2009
2010
2011
2018
2023
2024
2026
2031
2034
2036
2042
2045
2051
2052
2053
2054
2057
2059
2060
2061
2066
2067
2072
2074
2076
2082
2083
2084
2095
2097
2100
2104
2105
2106
2107
2113
2115
2116
2119
2120
2121
2122
2123
2125
2126
2130
2133
2134
2142
2143
2144
2149
2154
2156
2157
2159
2160
2161
2163
2164
2165
2167
2168
2169
2171
2176
2181
2184
2185
2187
2188
2189
2190
2193
2195
2198
2199
2201
2203
2207
2213
2217
2220
2221
2225
2226
2228
2230
2231
2233
2238
2247
2248
2250
2254
2257
2260
2261
2264
2265
2280
2284
2286
2290
2291
2292
2296
2297
2302
2303
2304
2305
2313
2314
2317
2318
2319
2320
2321
2327
2333
2337
2343
2346
2347
2348
2351
2355
2357
2359
2369
2371
2372
2377
2378
2381
2382
2383
2386
2387
2393
2394
2397
2399
2405
2407
2410
2412
2413
2416
2420
2421
2422
2424
2431
2432
2443
2445
2446
2447
2454
2456
2457
2460
2465
2466
2467
2471
2478
2481
2484
2487
2488
2492
2494
2495
2496
2498
2501
2508
2516
2519
2522
2524
2527
2528
2544
2552
2553
2556
2557
2558
2562
2564
2566
2571
2575
2583
2585
2587
2588
2589
2596
2597
2602
2603
2607
2608
2614
2620
2623
2624
2625
2629
2633
2634
2637
2638
2647
2648
2649
2654
2655
2656
2659
2660
2662
2667
2668
2669
2671
2679
2681
2682
2684
2687
2688
2689
2693
2695
2697
2698
2699
2701
2702
2706
2711
2714
2715
2718
2720
2731
2734
2735
2738
2740
2741
2743
2744
2746
2747
2748
2751
2752
2753
2755
2757
2759
2764
2769
2773
2775
2776
2780
2783
2784
2786
2788
2790
2792
2800
2802
2806
2807
2812
2813
2818
2820
2822
2824
2830
2831
2832
2834
2836
2838
2841
2842
2847
2849
2853
2867
2870
2873
2875
2879
2881
2884
2885
2890
2892
2893
2895
2896
2899
2900
2902
2905
2912
2913
2914
2915
2918
2926
2930
2931
2935
2937
2938
2942
2943
2946
2947
2952
2953
2954
2955
2957
2959
2961
2962
2966
2970
2972
2974
2975
2976
2978
2979
2982
2983
2990
2991
2992
2993
2994
2998
3001
3002
3008
3018
3020
3021
3025
3030
3031
3037
3044
3051
3054
3056
3059
3060
3061
3063
3067
3069
3080
3083
3084
3088
3089
3093
3096
3097
3102
3106
3107
3109
3112
3115
3121
3122
3126
3131
3133
3134
3135
3136
3141
3147
3150
3152
3155
3157
3163
3168
3171
3178
3179
3180
3183
3188
3189
3193
3200
3205
3206
3207
3208
3209
3210
3211
3214
3216
3218
3219
3220
3225
3229
3236
3237
3240
3243
3245
3253
3257
3262
3263
3264
3267
3270
3271
3272
3273
3276
3278
3279
3282
3285
3286
3287
3289
3292
3293
3295
3298
3299
3300
3301
3302
3305
3306
3310
3312
3318
3320
3323
3324
3330
3335
3336
3337
3338
3343
3344
3345
3347
3349
3350
3351
3354
3360
3367
3372
3375
3377
3379
3381
3382
3388
3390
3392
3394
3400
3404
3411
3412
3414
3417
3418
3421
3422
3426
3429
3430
3431
3432
3435
3438
3441
3445
3448
3451
3453
3457
3461
3464
3471
3473
3485
3487
3488
3491
3501
3508
3509
3510
3513
3515
3518
3521
3529
3530
3532
3533
3539
3541
3543
3546
3547
3549
3553
3554
3556
3561
3565
3569
3573
3577
3578
3582
3583
3585
3586
3592
3598
3604
3605
3609
3610
3615
3616
3619
3621
3623
3628
3629
3637
3643
3644
3648
3656
3657
3658
3659
3661
3670
3671
3682
3686
3691
3693
3698
3700
3701
3702
3705
3709
3711
3713
3715
3729
3731
3732
3733
3739
3750
3754
3755
3758
3768
3771
3773
3784
3785
3790
3792
3794
3799
3800
3802
3803
3808
3810
3812
3817
3822
3823
3824
3826
3827
3830
3831
3833
3838
3839
3840
3843
3844
3848
3856
3858
3861
3863
3873
3874
3879
3880
3881
3883
3888
3889
3891
3900
3903
3907
3908
3911
3912
3915
3920
3926
3927
3928
3933
3935
3938
3940
3943
3944
3949
3952
3953
3954
3957
3958
3959
3961
3963
3966
3969
3970
3971
3972
3974
3976
3978
3979
3984
3989
3991
3992
3997
3998
4000
4003
4004
4005
4011
4012
4018
4019
4021
4022
4028
4029
4030
4031
4034
4038
4041
4043
4053
4054
4056
4058
4059
4061
4063
4064
4065
4067
4069
4070
4072
4073
4077
4078
4080
4082
4087
4090
4091
4093
4094
4096
4102
4103
4106
4110
4113
4117
4120
4121
4124
4127
4129
4134
4140
4141
4143
4145
4147
4151
4152
4160
4163
4168
4178
4180
4182
4184
4186
4187
4191
4193
4196
4200
4201
4208
4211
4215
4228
4232
4233
4235
4238
4240
4246
4247
4252
4253
4258
4261
4262
4263
4266
4270
4272
4273
4287
4288
4289
4291
4292
4299
4300
4301
4302
4304
4309
4312
4313
4314
4325
4326
4333
4336
4337
4339
4340
4347
4348
4350
4353
4356
4357
4367
4368
4373
4375
4382
4384
4391
4392
4393
4398
4399
4409
4410
4412
4414
4421
4423
4430
4436
4438
4439
4440
4441
4445
4446
4450
4451
4454
4455
4457
4459
4469
4471
4474
4475
4476
4478
4479
4482
4483
4486
4488
4500
4507
4508
4512
4517
4519
4527
4531
4533
4535
4536
4538
4541
4543
4544
4546
4547
4556
4557
4559
4566
4572
4576
4582
4584
4586
4589
4590
4599
4606
4607
4613
4618
4620
4621
4622
4626
4628
4631
4636
4643
4648
4650
4651
4653
4657
4659
4662
4664
4665
4671
4672
4683
4686
4691
4693
4696
4698
4699
4700
4701
4704
4705
4707
4719
4720
4724
4729
4730
4731
4736
4737
4740
4747
4749
4751
4752
4753
4759
4760
4761
4767
4771
4772
4780
4781
4782
4785
4786
4796
4797
4805
4810
4811
4812
4816
4817
4818
4819
4821
4825
4827
4830
4833
4836
4839
4842
4846
4850
4851
4852
4861
4864
4868
4869
4872
4874
4876
4879
4884
4885
4887
4894
4896
4898
4899
4903
4907
4909
4910
4914
4915
4918
4920
4922
4933
4936
4938
4941
4946
4949
4951
4952
4954
4958
4959
4963
4969
4972
4974
4977
4978
4979
4982
4987
4990
4992
4994
4996
4997
4998
5001
5008
5011
5012
5016
5021
5026
5031
5033
5038
5039
5041
5044
5046
5047
5051
5056
5057
5059
5064
5065
5067
5068
5075
5076
5087
5096
5097
5099
5100
5103
5105
5106
5114
5115
5122
5123
5134
5135
5137
5148
5149
5151
5153
5161
5163
5165
5169
5171
5173
5174
5178
5179
5181
5186
5187
5191
5195
5201
5205
5208
5209
5210
5213
5215
5216
5218
5220
5221
5222
5225
5226
5228
5229
5232
5233
5236
5243
5247
5250
5251
5255
5256
5257
5260
5261
5263
5267
5272
5277
5278
5283
5285
5287
5289
5290
5291
5293
5294
5295
5296
5300
5303
5304
5307
5311
5312
5313
5316
5317
5318
5320
5324
5325
5326
5328
5331
5335
5336
5337
5339
5341
5347
5348
5350
5353
5359
5364
5367
5368
5370
5374
5375
5376
5377
5379
5384
5387
5388
5397
5398
5400
5403
5407
5411
5412
5416
5419
5421
5423
5428
5429
5430
5431
5438
5441
5443
5445
5449
5450
5451
5453
5456
5457
5463
5467
5468
5477
5478
5480
5482
5483
5484
5486
5489
5493
5494
5495
5500
5504
5507
5508
5509
5512
5515
5516
5517
5518
5519
5526
5531
5532
5534
5537
5545
5546
5547
5553
5556
5558
5561
5564
5573
5576
5577
5583
5584
5586
5587
5591
5593
5594
5595
5596
5600
5606
5608
5610
5612
5628
5629
5635
5636
5640
5645
5667
5671
5672
5675
5681
5683
5685
5692
5696
5706
5707
5717
5718
5719
5721
5726
5728
5730
5732
5733
5735
5738
5739
5743
5747
5748
5753
5756
5757
5758
5760
5761
5766
5767
5770
5773
5776
5777
5782
5789
5791
5795
5799
5800
5805
5806
5808
5811
5814
5816
5824
5826
5831
5832
5837
5839
5840
5842
5845
5846
5852
5854
5863
5867
5869
5870
5871
5874
5875
5876
5879
5881
5889
5890
5892
5895
5896
5904
5907
5911
5915
5922
5926
5932
5933
5939
5945
5947
5953
5958
5963
5964
5966
5969
5970
5971
5973
5976
5984
5985
5988
5991
5992
5994
5995
5996
6000
6006
6013
6019
6023
6026
6029
6033
6034
6035
6037
6038
6041
6044
6050
6052
6061
6062
6066
6070
6080
6083
6084
6085
6086
6092
6098
6100
6101
6102
6104
6112
6114
6117
6118
6123
6124
6131
6132
6138
6154
6161
6164
6165
6166
6169
6170
6173
6177
6178
6179
6185
6189
6190
6194
6196
6200
6203
6205
6206
6210
6220
6225
6228
6229
6235
6236
6250
6251
6252
6260
6261
6262
6268
6269
6272
6273
6276
6277
6285
6289
6292
6299
6305
6306
6313
6321
6325
6328
6332
6333
6339
6340
6341
6342
6345
6346
6347
6350
6351
6365
6369
6373
6374
6375
6376
6380
6391
6394
6398
6399
6400
6401
6402
6417
6419
6422
6423
6424
6436
6440
6443
6448
6450
6458
6459
6461
6462
6463
6464
6465
6467
6472
6473
6474
6479
6480
6486
6488
6493
6495
6499
6503
6504
6511
6513
6518
6519
6520
6521
6524
6531
6533
6536
6537
6538
6546
6547
6552
6554
6555
6563
6569
6572
6581
6582
6584
6587
6593
6596
6600
6601
6603
6605
6608
6610
6611
6612
6614
6615
6616
6618
6622
6625
6627
6629
6630
6631
6632
6633
6635
6636
6637
6638
6643
6646
6649
6656
6657
6659
6660
6663
6668
6670
6673
6677
6678
6679
6684
6688
6689
6694
6698
6703
6709
6710
6711
6713
6715
6717
6721
6723
6725
6726
6728
6732
6734
6739
6741
6742
6748
6749
6750
6751
6755
6756
6758
6760
6762
6767
6771
6773
6776
6779
6780
6781
6784
6785
6786
6787
6788
6790
6792
6793
6796
6797
6799
6800
6801
6803
6804
6807
6809
6829
6831
6832
6833
6834
6838
6842
6846
6849
6851
6853
6855
6856
6857
6859
6869
6874
6879
6884
6887
6889
6894
6898
6900
6901
6907
6914
6916
6918
6921
6924
6925
6930
6934
6944
6945
6946
6947
6957
6958
6960
6965
6966
6969
6970
6973
6976
6977
6986
6988
6990
6993
6997
7002
7004
7006
7008
7010
7012
7015
7016
7021
7022
7026
7028
7030
7032
7038
7044
7046
7054
7056
7063
7067
7068
7069
7072
7079
7080
7088
7089
7091
7093
7097
7102
7106
7107
7113
7114
7115
7118
7119
7122
7124
7128
7135
7141
7142
7144
7147
7149
7151
7154
7155
7161
7162
7168
7170
7173
7174
7177
7182
7183
7185
7186
7187
7188
7190
7193
7195
7196
7199
7200
7201
7202
7207
7209
7211
7217
7219
7220
7222
7224
7227
7228
7229
7232
7237
7241
7247
7249
7250
7253
7254
7258
7259
7264
7265
7268
7276
7280
7283
7287
7297
7301
7307
7308
7309
7311
7312
7313
7315
7317
7319
7320
7328
7335
7338
7339
7340
7345
7347
7351
7357
7359
7361
7363
7370
7372
7374
7380
7381
7382
7389
7390
7392
7394
7396
7404
7408
7409
7411
7421
7426
7427
7429
7431
7437
7441
7444
7447
7448
7453
7454
7458
7459
7461
7462
7465
7468
7470
7471
7474
7475
7478
7485
7488
7491
7492
7493
7494
7495
7497
7498
7500
7501
7507
7512
7513
7515
7517
7518
7519
7520
7525
7529
7532
7537
7539
7540
7543
7545
7552
7553
7554
7556
7559
7563
7568
7572
7576
7577
7578
7581
7584
7587
7588
7590
7593
7599
7601
7604
7610
7611
7612
7617
7618
7625
7626
7628
7634
7636
7638
7642
7644
7645
7646
7647
7649
7650
7651
7653
7654
7655
7658
7659
7660
7671
7673
7675
7682
7686
7688
7694
7702
7703
7705
7711
7712
7713
7715
7716
7718
7720
7726
7731
7738
7740
7741
7742
7743
7746
7747
7749
7750
7751
7753
7758
7768
7771
7772
7778
7780
7781
7790
7796
7797
7799
7801
7802
7811
7817
7821
7824
7825
7833
7834
7836
7842
7847
7848
7849
7855
7856
7863
7864
7865
7880
7881
7882
7883
7884
7887
7889
7891
7897
7898
7901
7902
7906
7907
7913
7918
7919
7921
7929
7931
7933
7936
7939
7942
7945
7949
7950
7952
7954
7957
7958
7963
7968
7970
7972
7973
7974
7977
7978
7980
7982
7986
7987
7988
7989
7992
7993
7998
7999
8000
8002
8003
8004
8008
8009
8015
8026
8027
8032
8034
8037
8041
8045
8047
8048
8052
8056
8058
8061
8066
8070
8074
8080
8083
8089
8090
8093
8096
8098
8100
8101
8102
8103
8107
8110
8114
8116
8121
8124
8131
8133
8138
8140
8141
8142
8149
8150
8152
8159
8160
8173
8175
8178
8179
8183
8187
8192
8193
8196
8199
8202
8203
8205
8208
8209
8214
8218
8223
8224
8225
8235
8243
8250
8251
8252
8260
8265
8277
8281
8282
8288
8291
8297
8298
8299
8308
8311
8312
8315
8316
8321
8322
8325
8326
8328
8329
8330
8335
8339
8340
8346
8351
8352
8353
8357
8360
8361
8366
8368
8375
8378
8383
8384
8387
8393
8395
8401
8404
8405
8408
8409
8410
8412
8417
8418
8422
8429
8430
8431
8437
8440
8444
8450
8451
8455
8456
8458
8462
8465
8467
8470
8471
8475
8477
8483
8485
8490
8492
8495
8500
8501
8503
8506
8507
8511
8519
8520
8524
8527
8529
8530
8531
8533
8537
8539
8558
8563
8564
8566
8569
8570
8576
8577
8578
8585
8590
8591
8596
8597
8599
8602
8612
8614
8616
8618
8619
8621
8624
8628
8629
8634
8635
8636
8645
8648
8649
8650
8651
8654
8657
8663
8667
8668
8669
8675
8678
8683
8690
8695
8697
8698
8700
8705
8708
8709
8710
8712
8713
8714
8716
8719
8720
8727
8729
8731
8732
8737
8738
8739
8742
8745
8753
8756
