0
1
4
6
7
9
10
11
13
14
15
16
17
18
19
20
21
22
24
26
27
30
32
34
36
37
39
40
41
42
43
45
46
50
52
55
59
61
63
64
65
66
67
68
70
71
72
76
77
78
80
84
85
86
87
88
90
94
96
98
99
100
101
102
104
105
110
113
115
118
119
120
125
126
129
130
131
133
136
138
140
141
143
145
147
151
152
153
154
156
158
159
160
163
167
168
169
170
171
172
174
175
180
181
182
183
184
187
188
190
192
194
195
198
199
200
201
205
206
208
209
212
213
214
216
217
219
220
221
222
224
225
229
231
232
235
237
238
241
243
244
246
248
252
253
255
256
258
259
260
262
264
265
266
267
269
272
275
276
279
284
285
286
288
291
293
294
295
297
299
300
303
304
305
306
307
311
312
313
317
318
319
320
321
325
328
329
330
333
334
335
342
344
345
347
350
351
353
354
355
358
359
360
362
365
366
368
369
372
375
376
378
380
381
382
386
387
389
390
392
394
395
397
399
401
403
405
406
407
408
409
411
413
417
418
421
423
429
430
431
434
436
438
439
440
441
444
446
447
449
450
451
452
454
464
465
466
467
468
471
473
474
475
477
478
480
482
489
490
491
492
493
494
497
500
502
503
504
512
513
514
516
521
525
526
528
529
530
533
534
535
538
540
542
543
544
545
546
547
548
549
552
557
558
563
564
565
566
567
568
569
570
571
572
573
576
577
579
580
582
583
584
585
589
590
591
592
593
599
602
604
608
609
610
614
617
619
621
623
624
626
628
629
631
634
638
640
641
642
646
648
651
652
654
655
656
658
664
665
666
667
670
673
674
675
678
680
681
682
683
686
690
692
693
694
695
700
701
702
704
705
706
707
708
710
711
713
714
716
717
718
719
720
724
725
726
728
729
732
734
735
736
737
739
740
741
742
743
744
747
748
750
751
752
754
755
759
761
762
763
764
767
768
772
773
774
777
781
782
784
786
787
789
790
791
792
793
794
797
798
800
801
806
807
808
809
810
812
813
814
815
817
818
820
823
824
826
828
829
830
834
835
837
838
840
841
844
846
848
849
850
851
856
859
860
862
866
867
868
870
871
875
877
878
879
886
887
889
890
891
892
893
896
897
898
900
901
902
904
905
906
907
909
910
912
914
915
916
919
921
922
923
925
926
927
928
930
931
934
935
936
937
938
939
940
941
942
943
945
946
947
948
950
951
952
953
955
958
960
962
963
964
965
967
970
971
973
976
977
978
981
982
983
985
986
990
991
998
999
1000
1001
1003
1004
1005
1008
1009
1011
1012
1017
1019
1025
1026
1028
1030
1032
1033
1034
1038
1041
1042
1043
1045
1046
1047
1048
1049
1053
1055
1056
1057
1065
1069
1070
1071
1073
1075
1076
1081
1082
1083
1085
1090
1092
1093
1094
1095
1096
1097
1099
1100
1101
1102
1104
1107
1108
1112
1114
1115
1116
1118
1120
1122
1123
1125
1126
1132
1133
1134
1136
1138
1139
1142
1143
1145
1147
1148
1149
1151
1152
1153
1157
1159
1160
1161
1162
1163
1164
1166
1168
1169
1172
1174
1176
1178
1179
1180
1181
1183
1185
1187
1188
1189
1190
1191
1192
1196
1197
1199
1202
1203
1205
1209
1210
1211
1212
1214
1215
1216
1218
1221
1224
1232
1233
1234
1237
1240
1242
1243
1244
1245
1247
1248
1249
1251
1253
1254
1255
1256
1257
1259
1261
1262
1266
1267
1269
1272
1273
1274
1275
1278
1279
1280
1282
1283
1284
1287
1288
1289
1290
1292
1295
1296
1297
1298
1300
1302
1303
1305
1306
1309
1311
1312
1314
1315
1316
1317
1318
1323
1324
1325
1328
1329
1330
1332
1334
1336
1344
1345
1346
1347
1348
1349
1351
1353
1356
1357
1358
1359
1361
1363
1364
1366
1370
1371
1372
1376
1381
1382
1383
1385
1386
1390
1392
1393
1396
1397
1398
1401
1403
1407
1408
1409
1410
1411
1412
1415
1416
1417
1418
1419
1422
1423
1425
1426
1427
1428
1429
1431
1432
1435
1437
1439
1440
1443
1445
1446
1450
1451
1454
1455
1456
1457
1458
1460
1461
1463
1464
1465
1466
1467
1469
1471
1472
1473
1474
1476
1478
1479
1482
1484
1485
1486
1488
1489
1490
1495
1496
1497
1498
1499
1500
1502
1509
1510
1511
1512
1513
1515
1516
1517
1518
1519
1521
1525
1526
1527
1530
1533
1535
1539
1540
1541
1545
1546
1547
1548
1550
1553
1554
1555
1557
1560
1561
1562
1563
1564
1565
1566
1568
1571
1572
1573
1575
1577
1578
1579
1580
1581
1582
1583
1584
1585
1588
1589
1593
1596
1597
1598
1600
1602
1604
1605
1607
1609
1612
1613
1614
1615
1617
1618
1624
1628
1629
1630
1631
1632
1634
1635
1637
1638
1639
1651
1652
1653
1654
1656
1657
1658
1659
1661
1663
1664
1668
1669
1670
1671
1675
1678
1679
1681
1682
1685
1689
1691
1692
1694
1695
1699
1701
1703
1704
1705
1706
1709
1711
1713
1717
1718
1719
1723
1724
1725
1728
1729
1730
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1745
1746
1748
1750
1753
1755
1756
1757
1760
1761
1763
1764
1766
1767
1769
1770
1771
1773
1775
1779
1780
1781
1782
1783
1784
1786
1791
1793
1796
1797
1801
1804
1805
1808
1810
1812
1813
1814
1817
1818
1820
1821
1823
1824
1828
1830
1832
1835
1836
1837
1843
1849
1850
1853
1855
1856
1857
1861
1863
1864
1868
1871
1872
1877
1885
1887
1888
1889
1890
1891
1892
1894
1896
1897
1898
1899
1900
1901
1903
1904
1906
1907
1908
1910
1911
1912
1913
1915
1917
1918
1920
1921
1923
1926
1927
1929
1931
1932
1933
1934
1935
1936
1937
1940
1941
1942
1944
1947
1950
1953
1957
1959
1961
1963
1966
1967
1968
1973
1977
1978
1980
1981
1982
1984
1985
1986
1991
1992
1993
1997
1999
2000
2001
2002
2004
2006
2007
2009
2010
2013
2016
2018
2021
2024
2026
2028
2029
2030
2031
2032
2033
2035
2037
2040
2041
2043
2045
2047
2048
2049
2052
2053
2054
2055
2059
2062
2063
2064
2065
2066
2067
2071
2072
2073
2074
2075
2078
2081
2082
2083
2089
2091
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2105
2106
2107
2108
2109
2111
2113
2114
2117
2119
2120
2125
2126
2127
2128
2129
2130
2132
2133
2135
2136
2137
2138
2139
2140
2145
2147
2150
2152
2154
2155
2157
2159
2160
2161
2162
2163
2164
2165
2168
2170
2171
2175
2178
2179
2180
2184
2188
2193
2194
2195
2196
2197
2198
2200
2201
2203
2205
2206
2207
2208
2209
2214
2216
2217
2218
2221
2222
2223
2224
2226
2228
2231
2232
2234
2235
2236
2237
2239
2240
2241
2242
2247
2248
2251
2252
2253
2254
2255
2257
2259
2260
2261
2266
2267
2268
2269
2272
2273
2274
2275
2276
2279
2280
2282
2284
2287
2290
2291
2292
2294
2295
2297
2298
2301
2305
2310
2314
2316
2317
2319
2321
2322
2324
2326
2327
2330
2332
2334
2335
2336
2338
2339
2343
2344
2346
2348
2350
2353
2354
2361
2362
2365
2369
2370
2371
2372
2373
2374
2375
2376
2377
2381
2383
2384
2386
2388
2389
2390
2391
2392
2393
2394
2397
2400
2404
2407
2408
2410
2413
2415
2416
2418
2420
2422
2423
2425
2428
2429
2430
2436
2437
2440
2442
2443
2444
2445
2446
2448
2449
2450
2451
2453
2454
2456
2459
2461
2463
2466
2468
2469
2471
2472
2476
2480
2481
2482
2485
2486
2487
2488
2493
2494
2496
2498
2501
2502
2504
2505
2507
2509
2513
2514
2516
2519
2520
2521
2524
2529
2530
2531
2532
2533
2535
2536
2537
2538
2541
2543
2544
2547
2548
2549
2553
2554
2555
2557
2559
2561
2562
2563
2564
2566
2571
2573
2578
2579
2580
2583
2585
2589
2590
2591
2593
2595
2596
2597
2600
2601
2602
2603
2604
2605
2608
2613
2617
2620
2621
2623
2629
2630
2631
2633
2635
2636
2642
2643
2645
2646
2653
2654
2655
2658
2672
2673
2683
2686
2688
2689
2691
2692
2697
2698
2701
2702
2703
2704
2706
2707
2708
2709
2710
2711
2712
2715
2716
2719
2720
2722
2723
2725
2728
2730
2732
2733
2734
2736
2738
2740
2744
2746
2747
2751
2753
2756
2758
2763
2764
2765
2767
2768
2773
2776
2779
2780
2782
2783
2784
2785
2786
2788
2789
2790
2792
2795
2796
2800
2801
2802
2805
2807
2808
2809
2811
2813
2814
2817
2818
2819
2820
2822
2823
2828
2829
2830
2831
2833
2839
2840
2841
2843
2844
2845
2846
2847
2849
2850
2851
2854
2855
2856
2859
2860
2862
2863
2865
2866
2867
2868
2869
2872
2873
2874
2875
2876
2877
2878
2879
2883
2886
2887
2888
2891
2895
2901
2904
2910
2911
2912
2916
2917
2921
2925
2926
2929
2931
2934
2938
2939
2941
2942
2943
2946
2947
2948
2949
2953
2954
2958
2960
2961
2963
2964
2965
2967
2968
2969
2970
2971
2975
2976
2978
2979
2981
2983
2984
2988
2989
2990
2992
2995
2996
2997
2998
3000
3001
3002
3003
3004
3005
3007
3010
3013
3015
3017
3020
3023
3025
3026
3028
3029
3032
3033
3034
3037
3038
3040
3041
3042
3045
3048
3051
3052
3057
3058
3059
3061
3062
3063
3065
3068
3069
3070
3072
3074
3075
3076
3077
3078
3081
3082
3085
3087
3088
3089
3090
3093
3094
3096
3100
3104
3105
3110
3111
3112
3113
3115
3117
3119
3120
3121
3124
3126
3127
3128
3130
3131
3137
3138
3139
3141
3142
3144
3146
3149
3151
3152
3153
3155
3157
3158
3159
3161
3167
3171
3174
3176
3177
3178
3179
3181
3183
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3197
3202
3203
3204
3205
3206
3207
3209
3210
3213
3214
3215
3219
3222
3224
3225
3226
3227
3228
3232
3233
3234
3235
3237
3238
3239
3240
3241
3242
3245
3250
3251
3252
3254
3255
3257
3258
3260
3265
3266
3267
3268
3269
3271
3274
3275
3277
3279
3280
3281
3283
3284
3285
3286
3291
3295
3297
3298
3299
3302
3310
3311
3313
3314
3316
3317
3321
3324
3325
3327
3329
3330
3331
3332
3333
3336
3337
3338
3343
3345
3348
3349
3350
3354
3358
3361
3362
3363
3364
3367
3368
3370
3372
3374
3381
3382
3384
3386
3390
3392
3393
3396
3397
3401
3403
3404
3408
3410
3411
3412
3414
3415
3416
3417
3418
3420
3422
3424
3426
3428
3430
3431
3437
3438
3440
3441
3444
3445
3446
3447
3449
3451
3459
3461
3464
3466
3470
3472
3475
3477
3479
3480
3481
3482
3484
3485
3486
3488
3492
3495
3498
3501
3505
3510
3513
3514
3518
3525
3531
3532
3534
3535
3536
3539
3540
3541
3542
3543
3544
3545
3546
3547
3550
3551
3552
3554
3556
3559
3560
3561
3562
3564
3565
3566
3567
3569
3572
3573
3574
3578
3579
3580
3582
3584
3585
3587
3589
3590
3591
3594
3595
3598
3600
3601
3604
3606
3608
3609
3611
3612
3614
3615
3620
3623
3625
3628
3629
3636
3637
3638
3640
3641
3643
3644
3646
3648
3649
3652
3655
3656
3657
3659
3662
3666
3668
3669
3670
3671
3672
3673
3677
3679
3684
3686
3690
3691
3692
3695
3698
3699
3700
3701
3702
3711
3714
3717
3719
3720
3721
3724
3728
3732
3735
3736
3738
3740
3741
3742
3748
3750
3752
3754
3756
3758
3759
3760
3761
3764
3765
3766
3768
3770
3771
3772
3774
3775
3777
3780
3781
3782
3784
3788
3789
3790
3791
3792
3793
3795
3800
3802
3803
3804
3805
3807
3809
3810
3811
3812
3813
3817
3819
3821
3822
3826
3828
3829
3835
3836
3838
3839
3840
3841
3842
3843
3845
3849
3850
3851
3855
3858
3861
3863
3864
3865
3866
3867
3868
3871
3872
3875
3876
3878
3880
3881
3882
3883
3886
3890
3891
3892
3893
3894
3897
3898
3903
3905
3906
3907
3908
3909
3910
3911
3913
3914
3915
3917
3918
3919
3921
3922
3923
3924
3925
3926
3927
3932
3933
3935
3937
3938
3944
3948
3949
3952
3953
3954
3955
3957
3958
3961
3962
3964
3965
3967
3968
3969
3971
3976
3978
3979
3982
3984
3985
3987
3988
3991
3993
3994
3996
3997
3999
4000
4001
4004
4005
4006
4007
4008
4009
4010
4011
4012
4014
4015
4016
4017
4018
4020
4021
4022
4024
4026
4028
4030
4033
4036
4037
4039
4040
4042
4043
4044
4045
4047
4048
4054
4055
4057
4059
4060
4061
4062
4063
4064
4066
4068
4069
4071
4074
4077
4078
4080
4081
4082
4083
4085
4088
4097
4098
4101
4102
4104
4105
4106
4108
4109
4110
4111
4117
4119
4120
4123
4124
4125
4131
4133
4134
4136
4138
4139
4140
4141
4143
4144
4147
4148
4151
4152
4153
4159
4160
4164
4165
4167
4171
4172
4174
4177
4178
4182
4183
4186
4187
4190
4196
4197
4198
4200
4201
4202
4203
4204
4205
4206
4208
4209
4212
4217
4220
4221
4222
4223
4224
4226
4227
4228
4232
4233
4234
4236
4239
4241
4242
4245
4252
4255
4256
4257
4259
4260
4263
4265
4266
4267
4268
4270
4272
4274
4275
4276
4282
4284
4287
4288
4293
4294
4295
4297
4298
4299
4300
4301
4302
4303
4305
4307
4309
4311
4312
4313
4314
4315
4317
4318
4320
4323
4325
4326
4327
4331
4332
4333
4334
4340
4341
4342
4343
4344
4345
4346
4347
4348
4351
4352
4357
4358
4359
4360
4363
4366
4367
4369
4372
4374
4376
4377
4380
4382
4383
4385
4389
4391
4392
4393
4395
4396
4402
4403
4405
4408
4409
4411
4413
4414
4415
4417
4418
4423
4424
4427
4428
4429
4431
4434
4435
4437
4439
4441
4442
4444
4445
4448
4449
4452
4455
4456
4459
4460
4466
4475
4476
4478
4479
4480
4481
4482
4483
4485
4486
4487
4491
4492
4494
4496
4498
4500
4503
4508
4509
4510
4512
4513
4514
4519
4520
4523
4524
4527
4528
4529
4530
4532
4533
4534
4536
4537
4538
4539
4542
4543
4544
4547
4550
4552
4553
4554
4555
4556
4557
4558
4561
4562
4565
4567
4570
4574
4575
4577
4579
4580
4583
4585
4586
4587
4589
4590
4592
4593
4594
4595
4596
4600
4602
4603
4606
4607
4613
4614
4615
4616
4620
4625
4630
4631
4632
4633
4635
4637
4639
4640
4645
4647
4648
4649
4651
4652
4654
4658
4660
4664
4665
4667
4669
4670
4671
4672
4673
4674
4675
4677
4678
4680
4682
4684
4692
4695
4696
4698
4699
4704
4707
4708
4710
4711
4712
4713
4716
4719
4722
4723
4724
4728
4730
4732
4735
4740
4742
4744
4747
4749
4750
4751
4752
4754
4755
4756
4759
4762
4763
4765
4768
4772
4773
4774
4779
4780
4782
4783
4784
4785
4786
4787
4788
4789
4793
4794
4795
4797
4800
4802
4803
4804
4805
4806
4811
4812
4813
4816
4818
4819
4824
4825
4827
4828
4830
4834
4835
4836
4838
4839
4841
4843
4845
4847
4850
4851
4852
4854
4855
4856
4857
4859
4860
4861
4862
4865
4866
4868
4870
4871
4873
4877
4878
4879
4881
4882
4883
4885
4887
4889
4890
4893
4894
4901
4902
4903
4904
4906
4908
4909
4912
4913
4915
4916
4917
4918
4920
4921
4922
4923
4924
4926
4927
4928
4929
4931
4932
4933
4934
4936
4938
4939
4942
4944
4945
4947
4948
4949
4950
4955
4959
4964
4965
4966
4967
4968
4970
4972
4973
4975
4977
4979
4980
4982
4983
4985
4986
4987
4988
4993
4998
4999
5000
5001
5002
5003
5004
5008
5009
5010
5011
5014
5015
5017
5018
5019
5020
5023
5024
5025
5026
5028
5033
5034
5035
5036
5037
5038
5039
5042
5044
5045
5046
5048
5049
5050
5054
5055
5059
5062
5063
5064
5065
5067
5068
5070
5071
5072
5075
5076
5078
5079
5080
5081
5083
5089
5091
5093
5094
5095
5097
5100
5102
5103
5105
5106
5107
5109
5112
5113
5115
5116
5117
5121
5123
5124
5126
5130
5132
5135
5136
5138
5139
5140
5143
5144
5145
5149
5151
5154
5155
5157
5159
5160
5164
5166
5167
5168
5169
5171
5172
5176
5177
5183
5184
5187
5189
5190
5191
5192
5194
5195
5196
5197
5199
5200
5202
5203
5204
5205
5206
5207
5208
5211
5213
5215
5216
5217
5221
5223
5224
5225
5228
5229
5230
5233
5234
5235
5237
5238
5239
5240
5242
5243
5245
5247
5248
5249
5251
5252
5253
5255
5257
5258
5260
5261
5262
5264
5265
5266
5267
5268
5271
5272
5273
5276
5277
5280
5281
5285
5286
5288
5289
5290
5292
5293
5294
5295
5297
5300
5301
5303
5304
5305
5306
5310
5311
5313
5314
5315
5316
5323
5324
5328
5329
5331
5332
5333
5339
5342
5344
5346
5349
5350
5351
5353
5354
5355
5356
5357
5359
5360
5363
5364
5366
5367
5369
5373
5374
5379
5384
5386
5387
5388
5389
5391
5392
5395
5396
5397
5401
5402
5405
5406
5411
5412
5413
5415
5416
5418
5419
5424
5425
5430
5432
5433
5438
5439
5443
5448
5450
5451
5452
5453
5454
5456
5457
5458
5459
5460
5461
5462
5464
5465
5468
5469
5471
5473
5476
5478
5480
5481
5486
5490
5491
5492
5493
5494
5495
5496
5497
5501
5502
5503
5504
5505
5509
5510
5511
5515
5516
5517
5519
5523
5525
5526
5527
5528
5529
5533
5538
5539
5542
5543
5547
5549
5556
5558
5561
5564
5567
5569
5571
5573
5574
5578
5580
5581
5582
5584
5585
5588
5589
5590
5592
5593
5595
5596
5597
5599
5600
5601
5605
5606
5608
5610
5611
5612
5613
