1
2
5
7
11
27
30
31
37
38
48
51
56
58
60
61
62
65
66
74
76
78
79
80
86
90
95
98
100
105
109
111
112
115
129
139
140
141
155
156
157
161
162
164
168
173
174
182
183
185
189
190
198
201
203
208
211
213
216
217
222
231
234
235
238
239
241
246
248
249
253
254
257
261
272
274
283
289
295
299
302
304
306
311
312
314
315
316
334
336
337
344
348
352
353
355
364
365
366
367
375
381
384
385
396
408
418
420
426
428
438
439
441
444
445
446
448
456
472
473
475
484
488
489
491
495
496
504
514
516
517
518
520
539
547
551
555
557
563
569
583
585
586
594
595
596
603
607
614
617
621
622
623
627
635
636
638
640
641
642
644
645
646
647
648
650
663
665
667
671
675
678
683
688
691
697
699
705
709
716
717
725
727
729
732
733
735
737
739
740
742
745
755
757
760
765
770
771
777
778
789
791
795
801
802
806
808
810
812
821
823
826
827
830
831
835
836
841
843
850
852
857
865
866
867
869
870
874
880
898
905
907
915
916
920
928
929
930
935
938
941
948
951
956
957
964
967
968
970
974
983
988
992
993
996
1004
1006
1007
1010
1012
1021
1023
1024
1030
1032
1040
1043
1049
1057
1058
1061
1063
1065
1074
1075
1079
1080
1082
1084
1090
1095
1100
1107
1108
1110
1111
1114
1117
1121
1122
1130
1132
1142
1155
1157
1158
1165
1168
1171
1175
1179
1181
1186
1187
1189
1190
1199
1200
1202
1207
1210
1214
1215
1216
1217
1221
1222
1224
1228
1229
1235
1236
1237
1242
1246
1248
1267
1269
1275
1276
1280
1288
1289
1296
1306
1315
1322
1330
1333
1334
1345
1350
1352
1355
1358
1359
1362
1366
1373
1386
1387
1388
1405
1410
1413
1417
1423
1426
1431
1433
1434
1436
1438
1440
1446
1448
1451
1455
1456
1461
1463
1473
1477
1481
1485
1488
1492
1495
1497
1502
1505
1508
1514
1522
1528
1529
1532
1534
1542
1543
1544
1546
1548
1549
1553
1562
1564
1569
1571
1573
1575
1577
1578
1579
1581
1585
1586
1603
1605
1614
1622
1625
1627
1646
1647
1650
1660
1661
1665
1667
1668
1670
1675
1682
1683
1685
1686
1693
1700
1701
1705
1711
1720
1723
1728
1731
1741
1742
1747
1753
1768
1773
1774
1779
1780
1782
1790
1797
1799
1801
1802
1803
1822
1835
1844
1846
1847
1852
1853
1856
1859
1870
1871
1873
1875
1877
1879
1882
1883
1888
1891
1892
1899
1904
1908
1910
1913
1916
1924
1927
1933
1937
1941
1943
1944
1950
1952
1954
1955
1959
1963
1964
1966
1971
1974
1980
1986
1988
1991
1992
1998
2000
2003
2004
2005
2021
2030
2032
2033
2035
2039
2041
2045
2049
2050
2053
2059
2060
2062
2071
2072
2073
2084
2088
2107
2109
2111
2118
2130
2131
2135
2138
2142
2144
2148
2152
2154
2160
2173
2174
2175
2177
2185
2195
2198
2201
2213
2218
2220
2222
2235
2236
2237
2238
2243
2246
2257
2258
2262
2266
2270
2278
2279
2289
2292
2295
2299
2300
2308
2313
2318
2319
2325
2331
2333
2334
2335
2339
2342
2344
2346
2348
2353
2360
2361
2364
2367
2371
2379
2384
2386
2396
2397
2398
2399
2403
2404
2408
2409
2410
2413
2414
2415
2423
2426
2436
2439
2440
2441
2442
2446
2448
2461
2462
2465
2468
2472
2474
2475
2478
2481
2482
2485
2487
2490
2492
2493
2501
2502
2513
2520
2521
2523
2525
2529
2535
2536
2541
2558
2560
2562
2566
2567
2574
2580
2584
2592
2593
2597
2598
2600
2601
2602
2611
2612
2613
2615
2622
2623
2626
2628
2630
2638
2640
2643
2648
2652
2657
2663
2675
2679
2680
2687
2694
2695
2700
2708
2712
2713
2714
2717
2721
2722
2730
2736
2742
2752
2760
2762
2764
2766
2778
2788
2792
2793
2798
2799
2800
2805
2817
2820
2823
2827
2830
2838
2841
2848
2859
2861
2865
2866
2867
2873
2874
2887
2893
2894
2896
2898
2902
2903
2904
2905
2911
2912
2915
2916
2922
2923
2925
2927
2928
2930
2937
2939
2955
2957
2959
2962
2963
2972
2982
2991
2993
2998
3000
3002
3004
3005
3008
3009
3010
3017
3020
3023
3026
3036
3038
3040
3041
3042
3050
3051
3052
3059
3060
3063
3067
3071
3072
3075
3085
3087
3094
3096
3097
3098
3121
3129
3135
3145
3147
3163
3171
3184
3186
3188
3193
3199
3207
3208
3213
3215
3217
3218
3222
3224
3233
3235
3238
3247
3252
3258
3259
3272
3290
3292
3303
3313
3323
3324
3334
3337
3344
3346
3348
3359
3362
3364
3368
3369
3371
3375
3378
3381
3384
3388
3390
3392
3399
3403
3405
3412
3413
3414
3419
3422
3429
3437
3441
3442
3451
3454
3458
3463
3464
3467
3475
3488
3489
3494
3500
3501
3508
3514
3517
3520
3524
3526
3527
3528
3529
3530
3538
3549
3551
3557
3578
3579
3581
3593
3598
3601
3602
3607
3610
3612
3619
3623
3624
3629
3634
3638
3643
3646
3648
3650
3654
3664
3665
3666
3668
3669
3674
3676
3677
3679
3680
3698
3704
3705
3711
3712
3716
3721
3723
3724
3726
3728
3732
3734
3736
3739
3744
3745
3747
3748
3749
3751
3754
3756
3766
3769
3776
3777
3779
3782
3794
3796
3797
3804
3806
3812
3814
3820
3821
3822
3825
3827
3830
3831
3836
3837
3839
3865
3868
3870
3873
3874
3875
3879
3885
3886
3888
3891
3892
3893
3902
3903
3904
3911
3928
3929
3930
3934
3935
3936
3951
3955
3956
3957
3960
3963
3969
3972
3973
3979
3980
3981
3982
3984
3990
3991
3994
3995
3999
4002
4003
4008
4010
4013
4014
4017
4018
4019
4022
4029
4036
4043
4044
4048
4051
4054
4055
4056
4058
4060
4061
4062
4067
4069
4080
4081
4082
4083
4084
4085
4087
4089
4093
4097
4103
4110
4112
4113
4119
4122
4131
4137
4148
4149
4151
4156
4157
4163
4171
4172
4176
4177
4180
4185
4191
4192
4194
4196
4202
4207
4215
4221
4223
4225
4233
4234
4238
4239
4244
4248
4250
4251
4266
4270
4276
4285
4293
4296
4299
4305
4311
4313
4316
4317
4321
4323
4327
4334
4335
4336
4345
4350
4359
4362
4364
4366
4367
4370
4371
4376
4377
4378
4381
4385
4386
4387
4389
4392
4394
4395
4396
4402
4404
4407
4408
4409
4411
4414
4415
4423
4431
4434
4436
4441
4444
4452
4454
4455
4465
4467
4473
4483
4488
4490
4492
4494
4496
4500
4503
4507
4508
4510
4512
4513
4514
4518
4520
4524
4525
4531
4534
4544
4546
4548
4550
4553
4556
4559
4562
4567
4571
4585
4586
4592
4600
4605
4613
4617
4623
4626
4634
4635
4638
4640
4641
4646
4650
4673
4682
4683
4686
4688
4691
4693
4694
4697
4698
4707
4710
4714
4720
4721
4732
4734
4735
4739
4749
4751
4759
4761
4775
4777
4779
4780
4784
4785
4788
4794
4795
4796
4799
4802
4803
4806
4810
4817
4818
4827
4838
4843
4851
4852
4859
4861
4862
4864
4871
4872
4874
4878
4884
4887
4889
4895
4900
4904
4916
4917
4918
4926
4936
4940
4953
4959
4962
4964
4969
4970
4971
4981
4983
4987
4993
5000
5005
5011
5013
5014
5016
5018
5020
5021
5022
5025
5028
5029
5033
5039
5044
5045
5049
5054
5057
5065
5074
5077
5079
5085
5088
5096
5097
5107
5109
5111
5116
5117
5119
5124
5128
5129
5131
5132
5134
5135
5137
5140
5151
5154
5156
5162
5165
5167
5170
5174
5176
5182
5185
5193
5194
5197
5202
5204
5207
5220
5231
5232
5238
5240
5243
5252
5256
5257
5259
5261
5262
5266
5271
5274
5277
5279
5280
5281
5298
5299
5302
5305
5309
5311
5314
5320
5324
5329
5332
5342
5361
5370
5374
5375
5378
5379
5387
5392
5396
5400
5401
5402
5406
5410
5412
5421
5422
5423
5428
5429
5431
5447
5448
5453
5457
5459
5461
5464
5466
5468
5470
5476
5478
5480
5482
5483
5490
5504
5506
5509
5528
5532
5538
5542
5543
5544
5545
5548
5551
5554
5563
5566
5568
5569
5571
5577
5584
5592
5596
5601
5602
5608
5610
5611
5614
5615
5618
5621
5624
5627
5642
5645
5647
5648
5658
5659
5661
5675
5676
5677
5679
5682
5692
5694
5696
5708
5709
5711
5712
5717
5723
5724
5726
5728
5738
5752
5758
5761
5762
5764
5767
5768
5769
5772
5776
5777
5778
5779
5783
5789
5790
5804
5811
5813
5814
5815
5818
5821
5824
5830
5839
5847
5848
5850
5852
5863
5864
5869
5876
5879
5884
5886
5887
5888
5889
5890
5891
5892
5895
5896
5898
5900
5902
5904
5906
5908
5911
5914
5915
5917
5918
5926
5929
5931
5937
5938
5939
5940
5943
5945
5947
5952
5954
5955
5956
5957
5959
5962
5969
5973
5975
5978
5979
5983
5984
6000
6001
6011
6013
6014
6015
6017
6022
6036
6037
6047
6056
6064
6066
6067
6068
6071
6073
6076
6080
6081
6082
6083
6084
6100
6102
6110
6111
6118
6120
6121
6124
6132
6134
6135
6136
6149
6150
6153
6156
6169
6171
6174
6179
6184
6185
6190
6196
6198
6199
6201
6206
6207
6218
6219
6224
6235
6236
6242
6247
6249
6251
6255
6267
6269
6273
6276
6277
6280
6283
6289
6292
6297
6301
6303
6304
6306
6309
6310
6311
6317
6320
6327
6329
6330
6335
6340
6342
6343
6346
6347
6352
6354
6360
6364
6379
6382
6392
6396
6397
6399
6400
6404
6405
6411
6414
6415
6416
6418
6420
6424
6434
6444
6448
6450
6457
6459
6470
6474
6478
6482
6485
6486
6489
6491
6493
6499
6504
6507
6509
6513
6516
6517
6520
6521
6522
6524
6527
6528
6532
6535
6536
6537
6539
6547
6548
6549
6550
6551
6552
6555
6557
6559
6562
6564
6571
6572
6574
6577
6579
6581
6582
6587
6589
6595
6597
6599
6604
6607
6610
6617
6618
6624
6630
6640
6644
6648
6657
6659
6660
6663
6665
6666
6680
6681
6685
6686
6692
6695
6696
6697
6698
6700
6702
6707
6709
6710
6711
6714
6731
6738
6741
6745
6749
6752
6757
6758
6759
6762
6763
6771
6780
6781
6783
6792
6795
6797
6799
6803
6810
6811
6819
6820
6823
6824
6828
6838
6840
6845
6851
6859
6861
6864
6865
6872
6874
6876
6877
6878
6880
6882
6885
6888
6891
6894
6896
6899
6902
6903
6906
6914
6915
6920
6923
6924
6933
6936
6957
6959
6962
6963
6966
6972
6974
6977
6985
6992
6994
7000
7001
7014
7017
7018
7028
7030
7031
7032
7038
7043
7045
7048
7049
7053
7054
7055
7063
7064
7066
7068
7071
7073
7081
7082
7087
7088
7089
7091
7093
7095
7098
7099
7112
7121
7123
7127
7130
7140
7144
7156
7159
7165
7168
7172
7173
7176
7177
7181
7182
7183
7185
7196
7208
7212
7219
7220
7224
7226
7230
7240
7250
7254
7255
7256
7265
7272
7275
7283
7287
7288
7300
7309
7315
7321
7330
7332
7347
7352
7354
7356
7359
7360
7362
7365
7372
7373
7381
7383
7384
7386
7389
7392
7394
7401
7403
7411
7414
7416
7427
7429
7436
7438
7439
7446
7449
7450
7455
7459
7462
7465
7469
7478
7480
7484
7488
7495
7497
7499
7506
7510
7512
7514
7527
7531
7532
7538
7543
7549
7561
7571
7574
7577
7588
7597
7600
7606
7607
7614
7629
7635
7636
7637
7646
7649
7651
7652
7653
7654
7663
7668
7672
7673
7675
7680
7693
7695
7697
7703
7705
7710
7711
7714
7716
7718
7720
7724
7735
7737
7741
7742
7747
7748
7755
7758
7759
7762
7764
7770
7774
7776
7781
7785
7789
7791
7800
7805
7809
7810
7811
7817
7823
7824
7836
7839
7844
7845
7846
7849
7850
7857
7860
7863
7864
7865
7868
7869
7871
7876
7880
7882
7892
7894
7897
7899
7909
7916
7920
7921
7924
7925
7933
7936
7940
7941
7943
7949
7950
7953
7959
7960
7963
7969
7975
7979
7982
7984
7989
7992
8009
8011
8013
8018
8019
8020
8022
8023
8029
8032
8035
8059
8062
8063
8068
8070
8073
8075
8084
8100
8105
8106
8109
8117
8118
8124
8129
8137
8140
8142
8145
8148
8150
8152
8153
8154
8156
8158
8160
8163
8166
8179
8181
8182
8185
8194
8198
8210
8213
8215
8220
8223
8227
8228
8231
8235
8236
8237
8245
8247
8249
8250
8255
8257
8260
8262
8264
8267
8269
8274
8279
8281
8287
8291
8293
8295
8300
8301
8302
8305
8309
8311
8315
8319
8321
8322
8333
8342
8344
8347
8348
8349
8354
8358
8363
8368
8370
8374
8380
8385
8389
8392
8394
8397
8407
8414
8415
8416
8417
8418
8422
8426
8433
8434
8448
8452
8453
8465
8468
8474
8475
8476
8477
8484
8485
8490
8495
8497
8498
8505
8506
8508
8509
8513
8515
8516
8532
8540
8542
8544
8554
8555
8559
8560
8562
8565
8582
8584
8589
8590
8594
8601
8609
8610
8613
8615
8616
8620
8621
8632
8636
8638
8640
8643
8646
8650
8653
8655
8658
8661
8662
8663
8666
8669
8673
8677
8683
8687
8690
8691
8692
8700
8703
8704
8705
8707
8708
8712
8713
8716
8724
8731
8732
8739
8742
8744
8747
8748
8750
8752
8753
8756
8758
8763
8768
8769
8772
8773
8777
8781
8788
8789
8792
8796
8797
8798
8805
8810
8811
8819
8828
8833
8834
8836
8849
8853
8859
8862
8863
8864
8865
8872
8873
8877
8889
8891
8905
8908
8911
8916
8924
8931
8942
8944
8946
8947
8948
8952
8956
8957
8958
8963
8965
8967
8968
8977
8980
8983
8986
8990
8991
8993
9000
9004
9009
9010
9023
9025
9028
9033
9039
9046
9056
9062
9063
9066
9071
9076
9083
9090
9095
9096
9103
9109
9110
9111
9115
9120
9122
9126
9129
9130
9132
9135
9137
9138
9142
9144
9147
9158
9163
9165
9166
9173
9183
9189
9198
9207
9209
9211
9216
9227
9236
9238
9239
9240
9241
9244
9246
9247
9248
9250
9254
9255
9261
9271
9272
9287
9288
9290
9296
9302
9308
9312
9313
9316
9320
9322
9324
9329
9334
9335
9339
9348
9349
9354
9358
9363
9368
9373
9384
9396
9404
9405
9406
9410
9411
9412
9413
9418
9424
9430
9431
9432
9436
9440
9442
9443
9451
9452
9465
9470
9474
9477
9487
9488
9489
9491
9493
9499
9506
9513
9517
9521
9524
9526
9529
9530
9532
9534
9538
9543
9553
9557
9558
9559
9564
9568
9569
9574
9575
9578
9585
9588
9593
9602
9607
9611
9613
9614
9619
9620
9621
9622
9627
9630
9632
9635
9642
9644
9655
9658
9659
9661
9665
9666
9671
9673
9674
9681
9697
9704
9710
9711
9719
9720
9721
9722
9730
9732
9735
9737
9743
9746
9759
9772
9774
9775
9779
9783
9786
9788
9789
9794
9795
9800
9802
9809
9812
9814
9815
9818
9828
9829
9830
9833
9839
9846
9847
9856
9858
9863
9865
9866
9872
9876
9881
9887
9888
9893
9898
9900
9904
9905
9906
9909
9923
9924
9928
9931
9937
9948
9952
9954
9964
9971
9972
9973
9974
9975
9978
9979
9987
9992
9993
9998
10002
10008
10012
10024
10027
10032
10033
10034
10036
10037
10039
10044
10047
10048
10051
10055
10057
10059
10060
10062
10063
10066
10068
10070
10071
10072
10075
10086
10090
10097
10100
10106
10116
10117
10119
10120
10122
10129
10139
10155
10158
10168
10176
10179
10189
10208
10212
10213
10217
10219
10221
10222
10226
10232
10251
10253
10259
10261
10262
10263
10275
10277
10278
10284
10286
10300
10303
10309
10319
10324
10329
10331
10333
10344
10348
10350
10353
10359
10363
10370
10380
10386
10387
10388
10392
10394
10404
10406
10407
10409
10415
10424
10427
10428
10429
10430
10434
10437
10441
10444
10446
10447
10448
10453
10460
10466
10467
10468
10471
10472
10473
10475
10478
10480
10482
10490
10494
10506
10514
10517
10520
10521
10524
10528
10531
10538
10541
10544
10545
10546
10551
10552
10558
10561
10576
10579
10587
10589
10597
10598
10610
10615
10621
10623
10626
10630
10631
10633
10634
10636
10638
10646
10647
10648
10650
10651
10659
10660
10661
10672
10690
10698
10702
10707
10709
10714
10727
10728
10731
10739
10745
10750
10755
10756
10758
10762
10763
10767
10779
10782
10784
10798
10801
10803
10811
10820
10823
10838
10842
10843
10844
10845
10846
10859
10862
10863
10870
10873
10879
10881
10883
10896
10898
10903
10905
10913
10914
10916
10917
10918
10920
10921
10922
10923
10924
10929
10930
10932
10939
10940
10942
10943
10948
10956
10959
10962
10969
10972
10979
10985
10991
