1
5
6
8
14
16
18
19
20
21
22
24
26
27
29
30
31
32
33
35
38
39
41
43
45
48
49
50
51
54
57
64
66
67
69
70
71
73
75
79
80
81
82
84
85
88
89
91
94
96
97
99
100
102
104
109
113
114
115
116
118
119
121
122
125
126
127
129
130
133
134
135
139
140
143
146
147
148
151
153
155
156
159
163
164
165
166
167
169
171
173
176
182
185
186
188
190
193
194
196
197
198
200
204
207
212
214
217
219
221
224
226
227
232
236
237
240
241
242
245
250
251
252
254
256
257
260
265
266
267
268
270
273
274
275
281
286
287
288
291
296
297
301
306
308
309
313
317
318
319
322
323
325
326
327
328
329
332
336
338
341
343
344
347
348
349
350
352
353
355
357
359
361
362
363
367
368
370
371
373
375
379
380
381
382
385
386
389
391
396
397
401
402
403
404
410
413
414
415
416
417
418
419
420
425
431
433
434
435
436
437
438
440
441
442
444
445
446
452
455
457
459
461
464
465
466
467
469
472
473
474
475
477
481
482
483
484
485
488
494
495
499
502
506
511
512
514
515
517
518
519
520
527
529
530
531
532
533
534
536
537
538
539
540
541
543
544
545
546
548
549
551
552
554
556
558
564
567
570
573
576
577
578
579
580
581
583
584
588
591
592
593
594
595
598
600
606
607
608
609
614
620
621
624
625
626
627
629
630
634
635
636
637
638
639
644
646
650
654
656
658
659
663
666
667
673
675
677
679
681
682
686
692
693
699
701
703
706
707
710
711
713
714
718
719
720
722
727
729
730
731
733
734
736
738
742
743
744
746
747
748
749
750
751
753
755
756
758
760
761
762
763
764
766
767
771
772
773
774
775
778
779
780
781
782
783
784
788
790
794
797
798
800
804
809
810
812
813
815
816
817
819
823
824
827
828
829
830
832
834
836
838
839
842
843
844
846
847
848
850
851
852
853
854
855
857
860
861
863
872
875
876
877
878
881
883
884
886
888
890
900
901
902
903
905
906
913
914
915
916
918
921
926
927
928
929
931
937
938
939
940
945
947
948
951
956
960
963
964
965
967
969
970
971
972
973
976
977
978
979
982
984
986
987
989
991
992
994
996
998
1002
1006
1007
1012
1014
1016
1018
1019
1022
1023
1024
1025
1027
1030
1032
1034
1036
1039
1041
1042
1043
1049
1051
1054
1056
1058
1062
1063
1064
1067
1070
1074
1075
1077
1078
1079
1083
1084
1085
1086
1094
1095
1096
1097
1098
1099
1101
1103
1104
1107
1109
1113
1114
1116
1119
1120
1122
1124
1125
1130
1132
1133
1135
1136
1137
1140
1142
1143
1144
1145
1146
1149
1150
1152
1153
1154
1156
1158
1164
1165
1166
1167
1169
1170
1171
1176
1179
1180
1181
1182
1184
1189
1191
1192
1193
1194
1197
1198
1199
1203
1204
1206
1210
1214
1216
1218
1219
1220
1222
1224
1225
1226
1227
1229
1230
1231
1233
1234
1235
1236
1237
1238
1242
1247
1253
1255
1257
1259
1260
1263
1266
1268
1270
1271
1273
1274
1275
1276
1277
1279
1280
1286
1288
1290
1291
1294
1296
1299
1300
1301
1305
1306
1309
1310
1312
1315
1317
1322
1323
1325
1328
1329
1333
1335
1337
1339
1340
1341
1342
1344
1345
1347
1348
1357
1358
1360
1363
1364
1367
1368
1370
1372
1373
1376
1377
1380
1382
1384
1386
1388
1390
1391
1392
1394
1396
1399
1404
1405
1406
1408
1411
1415
1416
1419
1420
1421
1424
1426
1429
1433
1437
1440
1442
1443
1445
1446
1447
1448
1450
1453
1456
1458
1461
1462
1463
1466
1468
1469
1471
1472
1475
1476
1477
1478
1481
1482
1484
1494
1495
1498
1501
1502
1503
1504
1506
1509
1510
1512
1514
1515
1516
1518
1521
1522
1523
1525
1526
1527
1530
1531
1534
1535
1536
1537
1540
1543
1544
1547
1549
1552
1554
1559
1560
1561
1563
1564
1567
1569
1570
1571
1573
1576
1579
1580
1584
1588
1590
1592
1594
1601
1602
1603
1604
1606
1607
1608
1610
1619
1621
1622
1624
1626
1627
1629
1630
1631
1634
1635
1636
1637
1642
1644
1645
1646
1654
1657
1658
1659
1663
1666
1670
1671
1672
1676
1678
1680
1681
1682
1683
1688
1689
1691
1692
1693
1694
1697
1700
1703
1704
1707
1709
1712
1714
1715
1716
1718
1720
1724
1728
1731
1732
1733
1734
1735
1736
1741
1742
1743
1744
1746
1747
1748
1749
1750
1754
1755
1757
1758
1766
1767
1770
1771
1772
1774
1775
1776
1778
1789
1791
1793
1795
1796
1800
1806
1807
1808
1815
1817
1818
1819
1820
1821
1822
1824
1825
1826
1830
1831
1833
1838
1839
1840
1841
1842
1843
1844
1845
1847
1848
1849
1850
1852
1853
1854
1855
1856
1857
1865
1871
1872
1873
1875
1878
1881
1884
1887
1892
1893
1894
1895
1896
1898
1900
1901
1902
1905
1907
1911
1918
1919
1921
1922
1925
1926
1929
1930
1931
1932
1935
1936
1937
1938
1939
1941
1942
1946
1949
1950
1951
1952
1956
1963
1964
1965
1966
1971
1972
1973
1974
1975
1976
1979
1982
1983
1985
1988
1991
1992
1993
1996
1998
2001
2002
2003
2005
2009
2011
2013
2016
2019
2028
2030
2031
2033
2036
2043
2045
2046
2047
2050
2051
2052
2053
2054
2055
2060
2061
2064
2066
2067
2070
2071
2072
2073
2074
2075
2081
2083
2084
2085
2086
2087
2089
2090
2091
2094
2095
2096
2098
2099
2101
2102
2104
2110
2111
2112
2113
2114
2115
2116
2117
2123
2127
2128
2129
2130
2133
2135
2136
2137
2143
2145
2150
2158
2159
2164
2165
2166
2169
2171
2172
2173
2176
2177
2178
2179
2183
2185
2187
2189
2192
2194
2199
2202
2203
2205
2208
2210
2211
2212
2213
2214
2217
2218
2221
2224
2226
2227
2229
2230
2234
2238
2240
2242
2246
2248
2252
2254
2260
2261
2264
2265
2266
2267
2269
2271
2273
2276
2277
2281
2282
2283
2287
2289
2290
2292
2293
2297
2304
2305
2310
2312
2316
2318
2320
2321
2322
2323
2327
2329
2330
2334
2337
2339
2341
2342
2343
2346
2347
2349
2353
2357
2362
2366
2368
2369
2372
2379
2380
2384
2387
2389
2390
2395
2399
2401
2404
2405
2409
2410
2411
2412
2416
2419
2420
2422
2423
2424
2429
2432
2435
2437
2441
2442
2444
2449
2451
2452
2453
2454
2455
2456
2457
2459
2461
2463
2464
2465
2469
2472
2473
2475
2477
2478
2479
2480
2481
2485
2486
2489
2492
2495
2496
2497
2498
2499
2500
2501
2503
2504
2505
2507
2508
2513
2514
2515
2519
2522
2525
2527
2528
2529
2532
2539
2540
2542
2546
2547
2552
2556
2559
2564
2566
2567
2569
2573
2576
2577
2579
2580
2581
2583
2584
2585
2587
2588
2590
2591
2593
2594
2595
2596
2599
2600
2601
2602
2603
2605
2606
2609
2610
2613
2614
2615
2618
2621
2622
2627
2628
2632
2634
2635
2640
2641
2642
2643
2647
2648
2649
2653
2655
2656
2658
2659
2663
2664
2666
2667
2668
2669
2670
2671
2672
2673
2675
2676
2677
2683
2684
2685
2686
2688
2689
2690
2691
2694
2698
2700
2704
2705
2706
2710
2711
2713
2714
2718
2723
2725
2726
2728
2729
2731
2732
2734
2735
2737
2740
2741
2746
2747
2749
2752
2753
2755
2756
2757
2759
2760
2764
2765
2767
2768
2773
2774
2775
2777
2778
2779
2781
2783
2784
2786
2788
2790
2791
2792
2793
2794
2797
2799
2800
2803
2805
2807
2808
2809
2810
2811
2812
2816
2818
2822
2824
2825
2826
2827
2829
2832
2834
2835
2836
2837
2839
2840
2841
2842
2844
2847
2848
2849
2854
2855
2856
2858
2859
2866
2869
2871
2873
2874
2875
2877
2878
2880
2881
2882
2883
2885
2886
2887
2889
2894
2895
2896
2897
2898
2899
2901
2902
2903
2906
2907
2908
2909
2914
2915
2917
2918
2919
2920
2921
2922
2923
2925
2926
2927
2928
2929
2932
2933
2934
2936
2938
2946
2949
2957
2958
2959
2963
2964
2966
2967
2971
2973
2974
2975
2978
2979
2982
2984
2986
2987
2988
2989
3000
3001
3002
3003
3005
3006
3008
3011
3013
3014
3015
3016
3017
3018
3019
3020
3021
3023
3025
3026
3027
3029
3030
3031
3037
3040
3047
3051
3054
3060
3061
3063
3064
3065
3066
3067
3069
3073
3075
3077
3078
3080
3081
3083
3086
3090
3091
3094
3097
3099
3101
3103
3104
3105
3109
3110
3111
3113
3119
3120
3121
3123
3125
3126
3128
3129
3131
3135
3136
3137
3138
3139
3140
3143
3146
3148
3149
3151
3152
3153
3154
3158
3160
3163
3164
3165
3166
3167
3168
3169
3170
3172
3173
3174
3175
3176
3178
3182
3183
3184
3187
3188
3190
3191
3194
3195
3196
3199
3200
3203
3204
3205
3206
3207
3208
3209
3211
3213
3215
3216
3218
3219
3222
3223
3227
3228
3229
3230
3231
3234
3235
3236
3238
3242
3244
3246
3247
3249
3250
3254
3255
3259
3261
3264
3267
3268
3273
3274
3276
3278
3279
3282
3283
3286
3291
3292
3293
3294
3295
3297
3299
3300
3301
3302
3303
3304
3307
3308
3309
3312
3313
3314
3315
3317
3321
3322
3325
3327
3332
3333
3335
3339
3340
3341
3342
3343
3349
3350
3351
3353
3354
3360
3362
3366
3367
3368
3369
3370
3371
3372
3373
3374
3377
3382
3384
3387
3388
3389
3390
3391
3392
3393
3398
3400
3402
3403
3406
3408
3409
3412
3414
3416
3417
3419
3420
3423
3425
3426
3428
3430
3432
3433
3434
3439
3442
3443
3444
3447
3448
3449
3450
3451
3458
3460
3462
3468
3469
3475
3477
3478
3479
3481
3483
3484
3486
3489
3491
3494
3495
3498
3499
3501
3502
3505
3508
3509
3510
3514
3516
3518
3519
3520
3521
3524
3528
3531
3532
3533
3535
3537
3538
3539
3540
3541
3542
3543
3544
3545
3547
3554
3558
3559
3560
3561
3562
3565
3567
3568
3569
3574
3576
3579
3581
3582
3584
3586
3588
3590
3591
3592
3594
3597
3598
3600
3603
3607
3610
3611
3612
3615
3623
3624
3625
3626
3627
3633
3637
3639
3640
3641
3643
3645
3647
3648
3652
3654
3658
3663
3664
3666
3669
3670
3673
3674
3675
3682
3683
3684
3687
3690
3693
3694
3695
3698
3702
3704
3705
3710
3712
3713
3714
3715
3716
3719
3720
3721
3722
3723
3724
3725
3729
3730
3733
3734
3735
3738
3739
3743
3748
3751
3754
3755
3760
3764
3769
3770
3773
3776
3777
3778
3781
3782
3785
3789
3791
3792
3796
3798
3799
3802
3806
3809
3810
3812
3813
3815
3818
3819
3822
3823
3824
3825
3827
3828
3829
3830
3834
3836
3839
3845
3849
3851
3857
3860
3862
3864
3866
3870
3873
3874
3878
3881
3883
3884
3889
3890
3892
3894
3899
3900
3901
3902
3904
3905
3906
3907
3908
3909
3911
3913
3915
3916
3919
3920
3921
3922
3923
3927
3928
3929
3930
3931
3933
3936
3938
3941
3942
3951
3952
3953
3954
3955
3957
3958
3959
3961
3962
3963
3965
3967
3968
3970
3972
3974
3976
3977
3978
3979
3980
3983
3987
3989
3990
3991
3994
3995
3996
3997
4000
4001
4007
4008
4009
4013
4014
4015
4019
4020
4027
4028
4030
4031
4032
4033
4034
4038
4039
4040
4043
4044
4045
4046
4047
4049
4050
4052
4054
4056
4057
4058
4060
4062
4063
4064
4069
4070
4072
4083
4089
4090
4095
4098
4101
4102
4104
4105
4106
4108
4109
4110
4111
4112
4113
4114
4115
4119
4120
4122
4127
4128
4129
4131
4136
4137
4138
4140
4143
4144
4145
4146
4147
4151
4155
4156
4157
4158
4159
4160
4161
4162
4163
4164
4166
4167
4170
4171
4172
4174
4175
4177
4179
4183
4184
4185
4186
4189
4190
4193
4194
4195
4196
4197
4199
4200
4201
4202
4205
4207
4210
4211
4212
4213
4214
4215
4218
4219
4221
4222
4223
4225
4227
4228
4229
4231
4234
4237
4241
4244
4250
4251
4255
4259
4260
4267
4269
4270
4271
4273
4275
4277
4278
4279
4282
4285
4286
4292
4293
4295
4296
4297
4298
4299
4301
4302
4304
4307
4308
4311
4314
4316
4319
4327
4328
4329
4331
4332
4336
4337
4339
4340
4341
4342
4343
4345
4348
4349
4350
4352
4355
4358
4360
4361
4364
4366
4367
4370
4371
4372
4373
4375
4377
4378
4382
4383
4386
4389
4390
4393
4394
4395
4396
4399
4402
4403
4405
4407
4409
4411
4412
4413
4414
4415
4416
4418
4419
4421
4424
4425
4427
4429
4430
4432
4433
4437
4441
4442
4443
4447
4450
4452
4456
4457
4461
4464
4465
4466
4467
4470
4473
4476
4480
4481
4483
4484
4485
4486
4487
4489
4492
4493
4494
4496
4499
4500
4507
4511
4512
4513
4517
4518
4519
4520
4523
4524
4525
4526
4527
4532
4535
4539
4540
4541
4543
4544
4548
4549
4550
4551
4554
4561
4562
4565
4567
4568
4570
4572
4573
4574
4576
4577
4579
4580
4583
4584
4586
4587
4594
4595
4596
4597
4600
4601
4602
4605
4606
4608
4609
4610
4613
4614
4616
4618
4619
4621
4622
4626
4627
4628
4633
4635
4638
4641
4642
4643
4644
4646
4648
4649
4650
4651
4654
4656
4657
4658
4660
4664
4668
4677
4680
4681
4682
4684
4685
4687
4688
4689
4690
4692
4694
4695
4697
4702
4704
4705
4706
4708
4709
4710
4712
4713
4715
4716
4720
4721
4724
4725
4730
4735
4736
4737
4738
4742
4743
4744
4745
4748
4752
4754
4755
4757
4767
4768
4769
4773
4774
4775
4779
4787
4788
4789
4790
4791
4792
4793
4794
4795
4796
4803
4804
4805
4807
4813
4815
4819
4821
4822
4823
4825
4826
4829
4830
4832
4834
4835
4837
4838
4841
4842
4843
4848
4850
4852
4854
4855
4856
4857
4859
4860
4865
4866
4867
4868
4873
4875
4880
4881
4882
4886
4888
4889
4890
4891
4893
4895
4896
4898
4900
4906
4907
4908
4909
4913
4916
4918
4919
4920
4921
4922
4923
4927
4932
4934
4936
4938
4939
4941
4944
4945
4946
4950
4955
4956
4957
4960
4966
4968
4971
4972
4973
4974
4975
4976
4978
4983
4985
4988
4990
4992
4996
4997
5003
5004
5005
5007
5008
5010
5016
5017
5018
5022
5025
5026
5027
5029
5030
5031
5033
5036
5039
5041
5042
5045
5046
5047
5054
5056
5061
5063
5064
5065
5071
5072
5073
5074
5075
5076
5077
5079
5080
5086
5088
5090
5092
5093
5095
5099
5101
5102
5105
5106
5108
5109
5110
5111
5112
5113
5114
5118
5120
5121
5122
5123
5124
5125
5126
5128
5130
5131
5133
5135
5136
5140
5141
5144
5145
5146
5147
5151
5152
5153
5156
5157
5158
5160
5161
5162
5163
5165
5166
5167
5170
5173
5175
