0
3
7
11
16
23
24
25
27
28
34
42
45
51
53
61
63
67
68
70
73
82
83
84
89
91
95
97
105
107
109
110
112
123
125
127
129
138
140
142
143
144
145
148
155
157
158
159
169
171
176
179
181
182
183
188
193
195
201
202
207
211
212
214
216
221
224
225
227
229
230
232
234
235
236
237
240
243
245
246
250
252
253
254
257
258
260
261
263
265
271
274
275
276
279
283
287
288
294
303
304
306
308
309
313
314
316
317
327
330
331
334
335
338
339
341
343
346
350
351
353
354
355
357
360
363
369
370
374
375
376
377
378
379
384
387
388
390
393
397
399
401
403
407
409
410
413
416
425
432
435
438
442
444
447
449
453
456
463
467
468
470
471
481
492
502
505
512
513
514
517
519
522
524
527
531
541
542
546
547
551
552
553
555
556
558
559
561
562
565
569
570
571
574
576
591
592
593
597
601
602
603
604
610
613
617
621
622
630
631
634
636
637
644
647
648
652
657
660
662
663
665
666
673
675
684
688
694
698
715
720
724
727
729
731
732
735
738
740
742
743
744
746
753
754
755
756
757
758
762
764
765
767
771
773
777
781
783
784
788
794
796
798
799
800
801
803
806
809
810
811
815
817
821
823
824
829
837
838
846
857
860
864
865
867
871
877
878
881
882
883
885
889
893
894
909
910
917
919
922
923
927
929
933
939
943
944
946
947
952
961
964
970
971
972
977
978
979
980
982
984
987
989
990
997
1002
1007
1008
1009
1012
1019
1022
1024
1030
1035
1037
1038
1048
1050
1051
1052
1058
1060
1062
1064
1069
1074
1075
1076
1077
1078
1080
1087
1088
1090
1092
1096
1099
1100
1102
1105
1108
1109
1110
1112
1113
1114
1117
1118
1121
1122
1124
1125
1134
1137
1139
1140
1147
1151
1154
1160
1166
1167
1168
1173
1174
1176
1178
1180
1182
1184
1185
1189
1191
1196
1199
1200
1201
1204
1206
1208
1214
1216
1229
1230
1234
1236
1239
1242
1247
1248
1250
1253
1259
1260
1265
1268
1277
1278
1282
1285
1287
1288
1289
1290
1294
1296
1305
1306
1307
1312
1315
1319
1323
1327
1330
1332
1333
1341
1343
1346
1349
1351
1353
1354
1359
1362
1365
1366
1370
1379
1380
1383
1384
1393
1394
1402
1409
1410
1415
1416
1419
1421
1425
1426
1432
1434
1436
1440
1443
1445
1446
1448
1450
1456
1457
1462
1464
1467
1468
1469
1470
1475
1483
1484
1485
1489
1490
1492
1496
1502
1506
1508
1510
1513
1516
1517
1520
1524
1526
1527
1529
1530
1536
1539
1544
1545
1546
1559
1561
1562
1563
1567
1569
1571
1574
1576
1582
1589
1594
1595
1598
1600
1602
1603
1605
1606
1620
1621
1624
1626
1627
1630
1634
1635
1638
1639
1649
1651
1658
1659
1668
1677
1682
1688
1690
1696
1705
1706
1709
1710
1713
1716
1718
1729
1731
1734
1738
1739
1742
1746
1756
1757
1759
1760
1762
1765
1768
1770
1771
1774
1775
1777
1780
1781
1782
1785
1788
1792
1793
1795
1797
1801
1802
1805
1808
1810
1814
1816
1818
1819
1822
1824
1825
1827
1828
1830
1834
1837
1840
1844
1853
1858
1859
1866
1873
1877
1881
1884
1885
1895
1900
1901
1902
1907
1910
1911
1912
1920
1922
1925
1927
1928
1929
1930
1931
1932
1933
1934
1935
1940
1942
1943
1946
1950
1952
1953
1965
1966
1970
1972
1977
1981
1984
1986
1991
1995
1996
2000
2002
2006
2008
2009
2016
2017
2021
2022
2028
2029
2032
2033
2039
2040
2048
2049
2051
2053
2054
2057
2059
2062
2063
2066
2068
2076
2082
2086
2088
2090
2097
2098
2101
2109
2110
2116
2121
2123
2125
2128
2130
2133
2135
2136
2137
2139
2143
2147
2148
2150
2157
2159
2163
2174
2178
2181
2183
2184
2190
2194
2207
2211
2214
2217
2220
2223
2230
2236
2238
2239
2241
2243
2245
2246
2253
2256
2257
2259
2266
2267
2275
2280
2281
2283
2285
2287
2292
2297
2301
2303
2306
2313
2320
2321
2323
2324
2325
2327
2329
2330
2333
2336
2338
2341
2342
2343
2347
2350
2354
2356
2357
2361
2363
2365
2371
2373
2375
2376
2377
2382
2384
2390
2393
2395
2397
2399
2401
2402
2403
2404
2409
2410
2411
2412
2414
2416
2417
2419
2422
2426
2428
2431
2432
2441
2442
2448
2449
2452
2453
2455
2456
2459
2460
2464
2467
2470
2473
2474
2475
2477
2479
2480
2486
2491
2502
2505
2508
2510
2520
2527
2530
2533
2534
2535
2537
2538
2542
2544
2545
2547
2549
2553
2558
2559
2568
2572
2577
2582
2584
2586
2601
2604
2605
2608
2610
2612
2614
2616
2620
2623
2629
2631
2633
2635
2637
2639
2640
2643
2646
2647
2648
2656
2661
2667
2677
2678
2679
2680
2682
2688
2695
2700
2702
2703
2705
2706
2708
2710
2711
2712
2713
2715
2717
2723
2724
2725
2727
2729
2730
2733
2734
2739
2741
2749
2753
2756
2758
2760
2761
2762
2764
2767
2770
2772
2775
2779
2781
2783
2790
2791
2792
2794
2798
2802
2803
2805
2807
2810
2813
2818
2822
2823
2824
2825
2829
2836
2849
2850
2854
2856
2867
2868
2870
2873
2875
2876
2877
2878
2879
2881
2882
2883
2886
2889
2892
2899
2901
2904
2908
2911
2912
2916
2921
2922
2924
2925
2926
2929
2932
2934
2939
2943
2946
2949
2952
2954
2956
2958
2963
2970
2975
2977
2982
2984
2985
2986
2987
2988
2989
2990
2995
2996
3001
3002
3005
3007
3010
3011
3013
3015
3017
3019
3020
3025
3030
3034
3035
3038
3043
3048
3049
3050
3053
3056
3058
3066
3068
3069
3076
3077
3079
3082
3083
3085
3086
3090
3092
3096
3101
3103
3104
3106
3107
3109
3115
3118
3123
3132
3133
3136
3140
3148
3151
3152
3153
3154
3155
3156
3158
3161
3162
3163
3165
3167
3168
3170
3171
3174
3175
3176
3177
3180
3181
3182
3186
3196
3198
3202
3203
3207
3215
3222
3223
3233
3235
3236
3237
3239
3242
3244
3249
3251
3254
3262
3263
3264
3265
3269
3271
3272
3277
3278
3280
3282
3284
3285
3287
3292
3293
3299
3301
3305
3307
3311
3317
3318
3321
3325
3328
3332
3333
3334
3337
3339
3347
3348
3352
3353
3356
3357
3358
3363
3364
3368
3371
3374
3376
3378
3380
3385
3389
3390
3392
3394
3395
3396
3397
3398
3403
3413
3414
3416
3420
3421
3424
3427
3433
3441
3443
3449
3452
3453
3457
3458
3462
3463
3470
3473
3475
3477
3479
3486
3487
3492
3494
3496
3499
3504
3507
3508
3509
3513
3515
3524
3529
3530
3533
3535
3540
3541
3543
3551
3552
3554
3561
3562
3567
3568
3569
3572
3573
3574
3581
3586
3590
3591
3593
3598
3602
3604
3606
3619
3620
3621
3628
3630
3636
3639
3640
3641
3643
3652
3654
3661
3666
3667
3673
3683
3689
3693
3694
3695
3697
3700
3702
3706
3709
3710
3715
3717
3718
3719
3723
3724
3725
3727
3729
3735
3739
3741
3744
3751
3754
3755
3757
3760
3765
3769
3777
3779
3780
3782
3783
3788
3790
3792
3796
3800
3803
3805
3810
3811
3816
3820
3822
3828
3833
3834
3835
3836
3840
3842
3844
3845
3848
3849
3852
3854
3855
3860
3863
3864
3865
3867
3870
3875
3877
3878
3884
3890
3891
3900
3901
3907
3909
3912
3916
3918
3919
3928
3929
3934
3935
3936
3937
3943
3945
3949
3950
3956
3957
3958
3961
3963
3964
3965
3968
3974
3977
3979
3985
3986
3989
3991
3992
3993
3994
3995
3997
4000
4004
4006
4007
4008
4014
4017
4019
4021
4023
4026
4030
4033
4040
4041
4044
4049
4051
4053
4058
4059
4061
4063
4064
4068
4069
4070
4076
4078
4080
4083
4085
4089
4090
4091
4093
4099
4100
4101
4102
4109
4111
4121
4122
4123
4127
4132
4133
4134
4135
4139
4140
4150
4164
4165
4168
4172
4173
4174
4179
4180
4183
4185
4191
4192
4193
4194
4197
4200
4204
4205
4212
4213
4221
4223
4224
4227
4228
4234
4237
4240
4243
4250
4253
4256
4259
4261
4263
4279
4282
4284
4285
4290
4293
4294
4297
4302
4303
4304
4306
4309
4314
4315
4316
4326
4328
4332
4334
4336
4339
4341
4342
4344
4345
4352
4357
4361
4364
4365
4366
4368
4371
4373
4374
4377
4381
4385
4387
4388
4391
4393
4396
4399
4403
4408
4409
4410
4412
4415
4425
4426
4428
4430
4434
4439
4444
4453
4454
4455
4457
4459
4462
4463
4468
4469
4471
4473
4474
4478
4495
4499
4500
4501
4504
4507
4519
4524
4526
4527
4528
4536
4538
4539
4540
4542
4545
4556
4559
4566
4569
4574
4576
4577
4578
4583
4584
4585
4588
4590
4592
4595
4606
4610
4615
4617
4618
4621
4622
4624
4625
4628
4630
4634
4636
4640
4644
4648
4651
4654
4659
4663
4666
4671
4674
4675
4679
4686
4687
4688
4693
4696
4698
4699
4700
4701
4702
4703
4709
4715
4716
4718
4724
4726
4741
4742
4744
4750
4753
4755
4757
4758
4766
4767
4769
4771
4775
4778
4779
4783
4786
4788
4793
4794
4795
4798
4799
4803
4808
4811
4816
4821
4826
4828
4831
4832
4833
4834
4837
4842
4843
4844
4846
4848
4857
4861
4864
4871
4872
4875
4876
4877
4878
4879
4882
4884
4885
4886
4891
4896
4897
4901
4904
4914
4916
4925
4928
4935
4936
4939
4940
4941
4942
4945
4949
4951
4955
4956
4960
4963
4964
4966
4968
4971
4972
4974
4975
4978
4984
4986
4991
4996
5001
5003
5004
5007
5012
5013
5015
5020
5022
5025
5027
5029
5034
5035
5041
5048
5050
5052
5053
5054
5056
5057
5058
5061
5062
5063
5064
5066
5067
5069
5070
5071
5073
5076
5077
5081
5082
5084
5085
5086
5090
5093
5097
5098
5099
5100
5101
5102
5103
5108
5109
5116
5118
5119
5124
5125
5129
5131
5132
5139
5142
5146
5155
5161
5165
5169
5171
5172
5176
5180
5181
5182
5184
5185
5187
5188
5189
5195
5196
5204
5205
5206
5217
5221
5230
5232
5236
5237
5238
5241
5242
5243
5245
5247
5250
5256
5259
5260
5261
5268
5270
5271
5274
5277
5279
5280
5282
5284
5287
5292
5294
5295
5303
5304
5309
5310
5312
5316
5327
5328
5333
5336
5339
5341
5345
5351
5353
5354
5356
5357
5361
5362
5363
5365
5378
5379
5385
5387
5388
5393
5394
5401
5402
5403
5405
5406
5409
5411
5412
5414
5416
5417
5423
5427
5429
5431
5436
5437
5440
5443
5444
5447
5450
5453
5459
5462
5465
5471
5473
5477
5480
5482
5488
5490
5494
5495
5496
5498
5501
5502
5503
5505
5508
5509
5511
5512
5514
5519
5525
5529
5532
5537
5540
5543
5544
5545
5546
5547
5548
5549
5550
5552
5553
5554
5555
5557
5558
5563
5565
5566
5574
5575
5580
5582
5588
5591
5593
5597
5600
5601
5605
5611
5613
5615
5616
5619
5624
5626
5627
5628
5633
5638
5641
5644
5645
5649
5650
5653
5654
5656
5658
5660
5663
5666
5669
5674
5679
5684
5686
5688
5690
5697
5698
5704
5706
5710
5713
5714
5715
5717
5720
5731
5740
5742
5745
5751
5752
5753
5754
5764
5765
5766
5767
5768
5770
5775
5781
5782
5787
5793
5794
5795
5796
5799
5800
5804
5805
5809
5812
5814
5822
5823
5825
5829
5831
5834
5835
5836
5838
5839
5841
5845
5847
5848
5854
5860
5866
5867
5870
5874
5877
5879
5887
5889
5891
5895
5899
5902
5903
5906
5908
5913
5917
5920
5926
5927
5931
5933
5937
5938
5939
5943
5944
5947
5953
5955
5957
5958
5959
5965
5966
5968
5971
5972
5975
5983
5985
5991
5992
5997
5998
6000
6002
6003
6004
6005
6006
6007
6010
6013
6016
6019
6023
6024
6028
6031
6034
6036
6042
6043
6044
6045
6046
6049
6055
6058
6068
6069
6072
6077
6079
6081
6086
6090
6100
6105
6107
6116
6117
6122
6124
6125
6126
6127
6131
6132
6139
6149
6150
6151
6153
6156
6157
6159
6160
6163
6165
6166
6167
6179
6184
6186
6188
6190
6191
6200
6201
6203
6204
6205
6210
6214
6216
6221
6222
6223
6224
6226
6228
6230
6231
6232
6233
6237
6245
6246
6247
6250
6252
6257
6259
6262
6264
6265
6269
6270
6274
6275
6277
6278
6279
6281
6286
6292
6293
6295
6296
6301
6302
6304
6309
6310
6312
6314
6319
6320
6327
6339
6341
6345
6352
6357
6360
6364
6365
6366
6367
6369
6375
6376
6377
6378
6381
6383
6384
6387
6392
6394
6399
6403
6405
6410
6414
6417
6425
6428
6429
6434
6436
6454
6455
6457
6470
6474
6478
6482
6483
6487
6490
6491
6493
6494
6497
6504
6506
6512
6513
6514
6516
6517
6519
6520
6526
6528
6531
6532
6533
6537
6540
6543
6544
6545
6557
6559
6562
6564
6565
6567
6568
6570
6571
6579
6583
6586
6592
6593
6594
6596
6597
6598
6600
6607
6610
6612
6617
6618
6622
6624
6630
6631
6634
6635
6637
6638
6650
6651
6654
6655
6657
6658
6665
6666
6668
6671
6672
6673
6676
6677
6678
6680
6682
6687
6690
6692
6694
6695
6696
6700
6703
6709
6711
6716
6718
6723
6726
6727
6728
6731
6735
6738
6740
6744
6747
6751
6752
6754
6756
6758
6759
6762
6764
6766
6767
6770
6772
6774
6780
6786
6788
6794
6800
6801
6802
6806
6809
6814
6819
6820
6822
6824
6830
6837
6846
6847
6854
6856
6857
6859
6863
6870
6871
6874
6875
6878
6880
6881
6883
6889
6891
6893
6894
6897
6902
6905
6906
6907
6908
6909
6911
6918
6919
6920
6925
6926
6927
6928
6929
6931
6933
6938
6941
6942
6948
6949
6950
6952
6959
6960
6965
6968
6970
6972
6976
6982
6983
6985
6990
6995
6996
6999
7003
7005
7006
7014
7020
7022
7030
7037
7038
7040
7041
7047
7052
7057
7059
7060
7062
7063
7070
7073
7074
7077
7082
7087
7097
7099
7103
7104
7114
7115
7121
7123
7127
7130
7141
7144
7148
7152
7153
7156
7159
7163
7164
7175
7177
7179
7185
7187
7189
7192
7197
7200
7202
7203
7204
7206
7208
7214
7217
7233
7235
7237
7239
7241
7249
7264
7266
7271
7273
7277
7278
7280
7288
7289
7290
7300
7301
7302
7307
7309
7311
7312
7313
7314
7316
7321
7323
7326
7329
7330
7340
7343
7345
7353
7354
7357
7359
7362
7366
7368
7370
7373
7374
7380
7381
7382
7387
7393
7396
7397
7399
7401
7403
7409
7413
7417
7418
7421
7427
7436
7439
7442
7446
7448
7449
7450
7451
7455
7463
7464
7465
7469
7472
7473
7476
7478
7483
7487
7488
7495
7498
7503
7504
7506
7507
7510
7512
7517
7528
7536
7541
7544
7547
7553
7561
7563
7570
7575
7576
7577
7578
7583
7590
7594
7596
7597
7599
7602
7603
7605
7606
7607
7609
7612
7613
7615
7620
7622
7623
7624
7629
7630
7631
7633
7640
7644
7648
7652
7653
7655
7656
7659
7665
7666
7669
7670
7674
7679
7681
7687
7688
7691
7693
7703
7705
7710
7718
7719
7726
7729
7730
7731
7733
7741
7743
7747
7748
7749
7750
7751
