0
3
6
11
16
17
19
26
28
31
33
43
47
50
51
54
55
56
58
63
65
70
82
87
90
97
98
107
108
119
120
124
126
128
133
138
140
142
146
147
149
160
161
163
167
172
175
176
177
179
184
186
187
193
194
196
198
202
203
208
217
218
219
221
223
224
227
228
232
238
239
247
248
250
252
260
262
265
266
269
283
285
286
288
289
290
293
296
298
299
300
310
311
312
313
321
324
330
332
336
338
341
345
346
350
354
359
365
372
384
388
391
396
397
402
403
404
405
406
408
410
412
413
418
421
428
429
431
443
445
447
449
453
456
458
460
461
462
469
474
475
481
485
486
489
501
502
511
520
521
522
523
532
536
537
545
547
548
559
560
562
572
574
575
579
581
583
585
588
593
596
597
598
600
606
607
612
615
616
621
623
630
635
640
641
643
649
651
652
657
665
667
672
678
682
686
694
699
706
708
709
712
715
716
717
720
723
724
727
731
733
736
739
740
744
745
749
750
754
756
762
764
769
771
783
786
788
792
796
799
801
803
804
805
806
810
814
818
819
822
824
825
826
828
831
833
835
838
840
841
853
856
858
859
860
866
867
871
875
886
890
893
904
908
910
912
913
916
917
920
921
923
924
928
929
931
932
933
934
938
940
942
946
950
953
963
967
968
972
974
978
981
982
983
987
988
993
1000
1001
1004
1009
1014
1016
1019
1025
1027
1035
1037
1039
1040
1041
1043
1046
1051
1056
1061
1069
1070
1072
1077
1078
1079
1085
1086
1087
1088
1091
1092
1096
1101
1106
1111
1123
1128
1137
1139
1142
1145
1146
1151
1156
1157
1160
1161
1164
1175
1176
1178
1179
1182
1184
1189
1194
1196
1201
1211
1212
1215
1217
1220
1221
1222
1225
1227
1229
1231
1233
1235
1236
1239
1248
1258
1260
1262
1263
1267
1268
1271
1275
1276
1278
1285
1286
1288
1291
1292
1294
1296
1297
1300
1312
1321
1322
1326
1328
1329
1333
1334
1336
1339
1340
1342
1343
1348
1349
1351
1356
1357
1359
1372
1374
1382
1385
1387
1389
1392
1396
1397
1399
1405
1406
1410
1411
1418
1420
1421
1422
1428
1430
1434
1445
1447
1450
1451
1454
1455
1456
1459
1460
1461
1462
1466
1473
1477
1478
1482
1483
1484
1489
1492
1494
1498
1500
1502
1503
1504
1509
1511
1512
1515
1521
1524
1525
1530
1533
1536
1551
1561
1562
1565
1566
1569
1570
1571
1572
1575
1577
1578
1579
1580
1581
1584
1586
1590
1593
1596
1597
1598
1605
1606
1608
1609
1610
1616
1617
1618
1619
1623
1627
1629
1630
1633
1637
1640
1642
1644
1647
1652
1658
1659
1662
1667
1674
1677
1679
1681
1684
1690
1692
1696
1697
1698
1700
1708
1709
1712
1714
1716
1717
1721
1722
1725
1727
1732
1733
1734
1736
1748
1749
1752
1754
1756
1760
1763
1765
1769
1775
1778
1783
1788
1789
1793
1796
1805
1806
1807
1809
1812
1817
1819
1832
1834
1835
1844
1849
1850
1853
1857
1861
1864
1865
1868
1869
1871
1873
1877
1878
1879
1884
1889
1894
1900
1909
1912
1913
1919
1922
1928
1931
1935
1956
1957
1959
1964
1965
1966
1976
1977
1980
1989
1990
1992
1995
1998
2002
2012
2016
2017
2023
2026
2029
2030
2033
2040
2043
2044
2051
2056
2059
2060
2065
2073
2077
2078
2089
2095
2105
2108
2112
2116
2120
2128
2135
2137
2138
2142
2153
2158
2164
2172
2176
2178
2180
2182
2184
2186
2187
2188
2193
2196
2199
2200
2201
2202
2203
2207
2210
2211
2218
2219
2222
2223
2225
2229
2231
2239
2244
2246
2250
2251
2253
2254
2260
2261
2263
2266
2271
2274
2276
2277
2279
2284
2291
2294
2300
2301
2304
2308
2310
2311
2316
2319
2321
2322
2325
2333
2334
2342
2347
2349
2350
2356
2357
2359
2360
2363
2366
2367
2368
2369
2371
2372
2373
2374
2378
2381
2397
2398
2399
2405
2407
2412
2413
2415
2422
2423
2427
2429
2430
2432
2433
2434
2439
2442
2445
2447
2448
2450
2454
2455
2461
2462
2467
2468
2473
2474
2477
2480
2481
2482
2483
2484
2486
2489
2492
2493
2496
2502
2504
2506
2507
2508
2510
2513
2514
2516
2525
2528
2535
2542
2549
2550
2553
2556
2557
2562
2564
2569
2571
2575
2577
2581
2582
2588
2589
2594
2596
2604
2605
2606
2609
2611
2612
2617
2619
2621
2631
2634
2639
2640
2646
2647
2648
2651
2652
2656
2659
2663
2667
2668
2670
2671
2672
2681
2684
2685
2687
2689
2690
2691
2692
2693
2696
2700
2701
2703
2705
2707
2710
2712
2713
2716
2717
2725
2726
2727
2729
2731
2733
2734
2739
2750
2757
2761
2763
2764
2766
2775
2781
2791
2793
2797
2802
2807
2808
2811
2813
2820
2822
2826
2831
2833
2835
2846
2850
2854
2857
2858
2859
2862
2863
2870
2873
2874
2877
2879
2883
2885
2888
2893
2899
2902
2904
2905
2912
2919
2920
2922
2923
2927
2928
2930
2933
2935
2938
2940
2942
2946
2947
2949
2956
2963
2968
2970
2971
2972
2973
2974
2976
2977
2982
2986
2988
2989
2991
2993
2994
2998
3000
3001
3005
3006
3010
3012
3013
3017
3019
3020
3021
3023
3026
3027
3033
3039
3040
3043
3046
3051
3053
3054
3057
3060
3061
3063
3067
3069
3070
3072
3073
3083
3084
3090
3096
3098
3100
3104
3111
3112
3114
3116
3119
3121
3123
3125
3126
3140
3151
3154
3155
3158
3165
3166
3168
3170
3177
3179
3180
3181
3184
3185
3187
3188
3192
3195
3204
3205
3210
3211
3213
3214
3219
3220
3221
3226
3230
3232
3233
3238
3239
3240
3241
3245
3246
3247
3262
3265
3266
3267
3268
3272
3275
3276
3278
3279
3281
3282
3289
3303
3304
3308
3311
3313
3320
3324
3325
3326
3327
3328
3329
3336
3338
3342
3344
3345
3347
3350
3351
3355
3359
3360
3362
3363
3364
3365
3369
3371
3373
3374
3381
3384
3386
3390
3392
3397
3401
3402
3403
3405
3406
3410
3412
3416
3422
3427
3435
3438
3443
3445
3459
3461
3470
3475
3476
3477
3478
3482
3486
3490
3502
3508
3509
3510
3513
3515
3518
3524
3525
3529
3533
3534
3542
3543
3544
3547
3552
3561
3563
3564
3567
3568
3571
3573
3576
3577
3578
3581
3582
3586
3589
3590
3592
3593
3596
3597
3607
3608
3613
3617
3619
3620
3622
3624
3629
3638
3640
3641
3646
3650
3660
3661
3663
3668
3671
3672
3675
3679
3682
3683
3685
3686
3687
3695
3696
3697
3700
3704
3707
3708
3711
3715
3716
3717
3721
3726
3727
3728
3731
3732
3751
3752
3754
3755
3756
3763
3769
3773
3782
3783
3784
3788
3789
3791
3801
3803
3809
3815
3817
3821
3825
3830
3831
3834
3835
3836
3840
3844
3845
3852
3854
3856
3858
3863
3865
3866
3871
3875
3878
3882
3887
3888
3890
3892
3895
3898
3900
3902
3903
3905
3908
3910
3913
3917
3919
3922
3926
3929
3933
3934
3942
3946
3947
3950
3953
3958
3960
3962
3965
3969
3970
3971
3973
3981
3982
3989
3993
3996
3997
4002
4008
4013
4016
4022
4023
4030
4034
4038
4040
4041
4043
4045
4047
4048
4049
4055
4056
4058
4059
4064
4065
4066
4070
4073
4075
4077
4078
4081
4082
4090
4099
4100
4101
4110
4114
4116
4118
4119
4123
4130
4134
4139
4141
4143
4146
4152
4160
4161
4164
4168
4172
4184
4186
4187
4199
4201
4210
4215
4217
4218
4223
4225
4227
4232
4233
4234
4236
4238
4240
4241
4245
4252
4254
4255
4256
4260
4265
4268
4270
4271
4272
4274
4275
4276
4277
4283
4284
4290
4291
4293
4297
4312
4320
4323
4331
4335
4341
4342
4344
4349
4351
4354
4355
4356
4362
4364
4368
4371
4388
4389
4395
4401
4402
4403
4406
4407
4408
4409
4410
4411
4417
4432
4433
4434
4439
4445
4447
4451
4456
4458
4467
4468
4469
4473
4475
4477
4478
4481
4488
4490
4492
4495
4496
4501
4505
4521
4526
4531
4533
4534
4539
4547
4550
4553
4556
4557
4558
4569
4570
4573
4575
4576
4577
4588
4591
4595
4596
4598
4600
4603
4610
4611
4612
4613
4618
4621
4623
4624
4625
4626
4635
4636
4638
4645
4648
4656
4657
4658
4662
4663
4667
4675
4687
4688
4689
4690
4691
4693
4695
4696
4702
4703
4706
4715
4718
4719
4721
4723
4725
4731
4732
4733
4736
4737
4741
4742
4746
4747
4752
4753
4755
4756
4757
4759
4761
4762
4766
4768
4769
4772
4780
4784
4785
4795
4799
4806
4812
4813
4814
4818
4819
4820
4821
4825
4826
4827
4828
4836
4838
4842
4849
4850
4853
4854
4858
4862
4864
4867
4872
4875
4880
4882
4886
4888
4890
4892
4898
4901
4903
4904
4906
4910
4913
4914
4917
4918
4919
4921
4933
4935
4936
4938
4939
4953
4958
4959
4960
4964
4966
4969
4981
4982
4987
4992
4994
4996
5002
5004
5010
5013
5014
5016
5019
5022
5023
5026
5035
5037
5038
5040
5048
5058
5059
5067
5069
5070
5076
5080
5084
5085
5086
5092
5096
5100
5101
5103
5112
5116
5117
5118
5120
5124
5125
5127
5128
5129
5130
5134
5139
5141
5147
5149
5150
5158
5164
5165
5166
5168
5169
5173
5174
5179
5182
5185
5188
5193
5200
5202
5204
5206
5210
5216
5217
5218
5220
5223
5224
5227
5228
5229
5230
5234
5236
5245
5247
5261
5262
5263
5267
5274
5277
5279
5284
5286
5287
5290
5293
5301
5304
5307
5309
5318
5320
5322
5328
5330
5332
5335
5342
5343
5344
5348
5354
5355
5358
5360
5364
5365
5367
5370
5372
5374
5381
5384
5385
5394
5397
5401
5403
5409
5412
5419
5426
5427
5435
5436
5439
5440
5443
5447
5448
5452
5456
5457
5460
5462
5465
5474
5481
5482
5483
5490
5495
5501
5502
5505
5506
5507
5514
5516
5520
5521
5525
5527
5533
5537
5539
5541
5546
5550
5551
5552
5559
5562
5573
5578
5583
5585
5594
5597
5598
5611
5614
5617
5630
5633
5636
5647
5649
5651
5652
5653
5655
5656
5658
5660
5661
5662
5666
5673
5675
5678
5679
5682
5683
5685
5693
5695
5696
5703
5704
5706
5707
5708
5712
5713
5725
5726
5727
5728
5732
5733
5735
5736
5739
5742
5749
5751
5752
5754
5756
5763
5765
5767
5770
5774
5777
5779
5781
5784
5788
5791
5795
5797
5801
5802
5808
5809
5821
5831
5833
5838
5840
5841
5843
5845
5847
5848
5858
5862
5863
5866
5867
5874
5877
5884
5885
5886
5888
5899
5900
5904
5906
5908
5911
5912
5913
5915
5918
5922
5923
5925
5926
5927
5930
5934
5935
5936
5937
5940
5942
5944
5951
5953
5967
5969
5971
5974
5975
5976
5979
5982
5987
5996
5998
6004
6016
6017
6018
6019
6020
6021
6022
6024
6025
6027
6034
6036
6044
6046
6049
6056
6057
6063
6064
6067
6068
6073
