0
2
4
5
6
12
13
16
18
19
26
27
29
30
32
34
38
39
40
41
42
43
44
45
47
49
50
52
53
57
58
59
61
62
63
64
65
66
67
68
71
72
73
74
76
80
82
83
84
89
90
91
92
94
95
97
100
101
103
104
105
106
107
111
113
114
115
117
123
125
126
128
129
131
132
133
134
136
138
141
142
144
145
147
149
152
154
157
161
163
164
165
167
169
171
172
176
179
182
186
190
191
194
198
199
200
201
202
203
208
210
212
214
220
221
223
224
225
227
228
229
230
231
233
234
236
238
239
240
241
246
255
256
257
259
262
263
268
269
273
274
275
279
281
285
286
287
288
289
290
291
293
294
298
301
305
307
309
315
316
317
323
324
329
335
336
338
339
340
341
342
344
347
350
351
354
357
358
359
361
364
367
368
369
370
371
372
374
375
376
377
378
379
380
381
383
384
386
387
388
389
390
393
396
401
402
406
407
409
411
412
417
420
421
425
428
442
443
445
446
449
450
453
454
459
460
466
467
476
477
478
479
480
482
484
485
487
488
489
491
492
493
497
500
501
504
507
508
512
513
514
517
519
520
521
522
524
527
528
533
535
537
541
542
545
546
549
550
553
557
558
561
563
564
567
569
571
573
574
575
576
577
578
579
583
585
586
587
590
591
595
602
603
604
606
608
610
611
612
614
615
616
618
619
621
622
627
628
630
635
636
640
642
647
650
651
653
655
656
657
660
661
664
666
670
671
672
675
676
678
679
680
681
682
683
688
690
691
692
695
697
700
701
706
707
708
709
710
713
716
717
721
724
730
732
733
735
737
738
740
741
742
744
748
749
751
752
756
759
763
766
767
768
770
773
774
776
779
781
786
790
792
793
794
795
800
801
809
810
811
812
813
814
816
817
818
819
821
822
824
825
826
828
829
832
833
835
836
840
841
842
844
845
848
849
854
858
862
864
873
874
875
876
878
879
880
883
885
886
888
889
890
891
892
894
896
898
899
901
903
906
907
909
910
911
913
914
915
918
922
923
924
926
927
929
932
934
935
937
938
940
941
942
944
945
948
949
952
961
962
963
965
967
970
972
973
981
983
984
986
988
991
993
1001
1002
1004
1005
1006
1007
1008
1009
1013
1017
1018
1019
1022
1027
1029
1031
1032
1033
1034
1035
1037
1039
1041
1044
1049
1050
1052
1053
1055
1057
1058
1063
1065
1070
1073
1074
1075
1076
1078
1080
1082
1083
1084
1088
1090
1091
1092
1093
1095
1098
1099
1100
1104
1106
1109
1112
1113
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1131
1133
1135
1137
1140
1142
1143
1146
1147
1150
1154
1158
1159
1161
1162
1163
1164
1166
1169
1171
1173
1174
1176
1181
1182
1183
1187
1188
1190
1192
1193
1194
1197
1198
1201
1202
1207
1209
1212
1215
1216
1220
1222
1228
1229
1231
1233
1237
1244
1249
1250
1251
1252
1254
1256
1257
1259
1260
1262
1263
1264
1265
1266
1267
1268
1270
1274
1276
1277
1278
1279
1281
1282
1283
1284
1288
1289
1291
1292
1293
1294
1295
1296
1305
1309
1313
1314
1315
1318
1320
1322
1328
1329
1330
1331
1332
1334
1336
1337
1340
1342
1343
1345
1349
1351
1353
1355
1356
1357
1358
1359
1360
1361
1363
1364
1365
1367
1368
1369
1371
1373
1377
1379
1382
1384
1385
1386
1387
1392
1394
1395
1396
1398
1399
1403
1404
1406
1407
1408
1409
1410
1412
1414
1415
1417
1418
1419
1420
1421
1423
1425
1428
1429
1430
1431
1432
1433
1434
1436
1438
1444
1446
1450
1453
1454
1456
1457
1460
1461
1465
1467
1469
1472
1475
1481
1482
1485
1486
1490
1492
1496
1497
1498
1500
1501
1502
1506
1508
1509
1510
1511
1512
1513
1515
1516
1517
1522
1523
1524
1525
1526
1529
1531
1533
1535
1537
1538
1542
1543
1546
1547
1549
1550
1553
1554
1555
1557
1558
1559
1563
1564
1565
1568
1570
1571
1572
1573
1574
1575
1576
1577
1580
1585
1586
1588
1591
1592
1593
1596
1597
1601
1603
1605
1607
1608
1612
1613
1615
1618
1619
1622
1623
1625
1626
1629
1630
1631
1632
1633
1636
1638
1639
1640
1642
1644
1646
1647
1650
1651
1652
1657
1661
1666
1667
1673
1674
1675
1676
1678
1679
1680
1681
1686
1688
1689
1690
1691
1692
1694
1695
1696
1697
1698
1699
1700
1702
1705
1708
1709
1710
1711
1712
1713
1714
1715
1721
1722
1723
1725
1726
1728
1730
1732
1736
1740
1741
1744
1746
1747
1748
1749
1750
1752
1757
1758
1761
1763
1764
1766
1769
1771
1773
1774
1776
1781
1782
1783
1785
1790
1791
1795
1798
1799
1800
1801
1805
1806
1809
1810
1813
1814
1815
1816
1817
1818
1821
1823
1825
1827
1829
1831
1833
1835
1836
1837
1840
1842
1843
1845
1847
1848
1849
1854
1857
1858
1862
1863
1868
1869
1870
1873
1874
1875
1876
1878
1879
1882
1883
1885
1886
1887
1890
1891
1893
1895
1896
1898
1904
1907
1910
1911
1917
1918
1920
1921
1924
1926
1927
1928
1929
1933
1934
1935
1936
1937
1938
1942
1943
1944
1948
1949
1953
1954
1959
1961
1965
1966
1968
1971
1972
1973
1978
1979
1980
1982
1983
1985
1986
1990
1991
1992
1993
1995
1997
1999
2000
2001
2008
2012
2013
2014
2016
2017
2019
2022
2023
2024
2026
2031
2032
2034
2035
2037
2038
2039
2040
2041
2042
2044
2049
2051
2054
2058
2059
2061
2062
2064
2066
2067
2069
2070
2072
2078
2081
2084
2086
2087
2088
2090
2091
2094
2095
2096
2098
2099
2100
2101
2104
2105
2108
2110
2112
2113
2114
2115
2116
2118
2119
2121
2122
2125
2126
2128
2129
2130
2132
2133
2135
2136
2138
2143
2144
2145
2150
2151
2153
2159
2160
2161
2162
2164
2167
2170
2171
2173
2176
2178
2181
2184
2192
2193
2196
2200
2202
2207
2209
2212
2214
2215
2216
2218
2219
2220
2221
2224
2226
2228
2230
2231
2232
2233
2237
2238
2239
2240
2241
2242
2244
2245
2247
2249
2251
2253
2254
2255
2257
2260
2261
2262
2264
2265
2266
2267
2268
2269
2270
2271
2272
2277
2279
2282
2284
2285
2287
2288
2292
2294
2295
2296
2298
2299
2301
2304
2305
2307
2308
2309
2310
2312
2313
2315
2324
2326
2327
2330
2333
2334
2337
2338
2341
2342
2343
2349
2352
2353
2357
2361
2363
2364
2365
2373
2375
2376
2378
2379
2380
2382
2388
2396
2397
2399
2401
2402
2403
2404
2409
2410
2412
2413
2415
2417
2419
2424
2426
2429
2431
2433
2436
2437
2438
2439
2442
2443
2445
2446
2448
2450
2451
2455
2459
2461
2463
2472
2474
2478
2479
2482
2486
2487
2489
2490
2491
2493
2496
2497
2499
2501
2502
2506
2507
2508
2510
2512
2516
2517
2520
2526
2528
2529
2530
2531
2532
2536
2539
2543
2546
2548
2549
2551
2552
2555
2556
2560
2563
2564
2565
2569
2570
2571
2572
2574
2577
2578
2580
2581
2582
2585
2586
2590
2593
2594
2595
2598
2599
2600
2603
2606
2607
2611
2614
2615
2618
2619
2623
2624
2625
2626
2628
2630
2635
2638
2639
2640
2641
2643
2644
2646
2649
2650
2653
2654
2655
2656
2658
2659
2660
2661
2665
2666
2669
2670
2677
2678
2679
2680
2681
2683
2684
2685
2686
2687
2689
2691
2695
2696
2701
2704
2706
2708
2709
2710
2713
2714
2715
2717
2721
2722
2723
2725
2726
2727
2729
2733
2734
2735
2738
2739
2740
2741
2742
2743
2744
2745
2746
2750
2751
2752
2753
2754
2755
2757
2758
2760
2761
2765
2766
2767
2770
2779
2780
2781
2782
2784
2788
2793
2798
2799
2803
2805
2806
2807
2809
2812
2814
2815
2816
2817
2818
2820
2822
2826
2827
2828
2834
2837
2839
2842
2843
2844
2847
2848
2850
2852
2855
2856
2857
2860
2862
2863
2865
2867
2870
2873
2874
2877
2879
2885
2886
2887
2889
2891
2892
2894
2902
2903
2906
2907
2908
2911
2912
2914
2915
2916
2919
2920
2921
2923
2925
2926
2927
2928
2930
2932
2933
2935
2936
2939
2941
2943
2944
2945
2946
2947
2951
2952
2953
2958
2960
2962
2963
2965
2966
2967
2968
2970
2972
2973
2979
2980
2983
2984
2985
2986
2989
2990
2991
2993
2994
2995
2997
2999
3000
3001
3002
3009
3012
3014
3018
3020
3021
3028
3029
3030
3031
3032
3035
3036
3038
3039
3041
3043
3044
3045
3046
3047
3048
3049
3050
3052
3053
3057
3059
3063
3065
3069
3072
3074
3076
3078
3081
3082
3083
3086
3089
3092
3094
3095
3097
3100
3101
3102
3103
3106
3109
3110
3111
3112
3116
3118
3119
3120
3122
3126
3127
3128
3129
3134
3135
3136
3138
3140
3142
3143
3144
3145
3148
3155
3156
3162
3165
3166
3167
3169
3171
3179
3180
3181
3183
3188
3189
3190
3191
3196
3198
3199
3200
3201
3203
3204
3205
3206
3207
3209
3212
3214
3215
3216
3217
3224
3226
3227
3231
3233
3234
3236
3237
3244
3246
3249
3251
3252
3253
3254
3257
3259
3262
3263
3265
3268
3270
3276
3278
3279
3283
3284
3285
3286
3287
3288
3290
3291
3293
3295
3296
3297
3298
3299
3304
3307
3308
3310
3311
3313
3314
3315
3318
3321
3322
3323
3324
3326
3327
3330
3333
3334
3335
3336
3337
3339
3343
3345
3347
3348
3349
3350
3352
3356
3361
3362
3363
3365
3366
3367
3368
3369
3371
3375
3378
3379
3384
3385
3390
3391
3395
3397
3398
3403
3404
3405
3407
3408
3410
3411
3412
3413
3418
3419
3421
3422
3424
3425
3428
3429
3430
3431
3432
3433
3436
3437
3439
3443
3445
3448
3450
3453
3457
3458
3460
3461
3463
3465
3466
3467
3468
3469
3471
3479
3484
3486
3489
3490
3491
3493
3494
3495
3497
3499
3500
3501
3503
3504
3505
3506
3507
3508
3510
3515
3520
3525
3527
3531
3532
3533
3534
3535
3536
3538
3539
3541
3542
3543
3549
3551
3553
3554
3556
3557
3558
3563
3566
3568
3569
3571
3578
3579
3581
3586
3587
3588
3589
3590
3591
3592
3594
3595
3596
3598
3601
3602
3605
3606
3609
3610
3611
3614
3615
3619
3620
3623
3625
3626
3633
3634
3636
3637
3639
3641
3642
3645
3646
3648
3649
3650
3653
3659
3664
3666
3667
3670
3671
3674
3675
3676
3679
3682
3686
3687
3693
3694
3696
3701
3702
3707
3709
3710
3711
3714
3716
3717
3719
3722
3725
3726
3728
3729
3730
3732
3733
3734
3735
3737
3738
3739
3740
3743
3744
3745
3746
3747
3748
3750
3752
3755
3756
3760
3763
3766
3771
3774
3775
3776
3777
3778
3782
3785
3786
3790
3791
3794
3798
3801
3804
3806
3807
3808
3809
3813
3815
3816
3817
3820
3822
3823
3825
3826
3830
3835
3844
3845
3846
3848
3849
3850
3851
3853
3854
3858
3859
3862
3865
3867
3871
3872
3874
3875
3878
3882
3883
3884
3887
3889
3891
3896
3897
3898
3899
3901
3902
3903
3904
3905
3911
3912
3914
3915
3916
3919
3921
3922
3923
3924
3927
3929
3931
3935
3936
3937
3938
3942
3943
3944
3945
3946
3948
3951
3952
3953
3954
3956
3959
3960
3961
3963
3967
3968
3971
3972
3974
3975
3978
3980
3981
3984
3986
3993
3996
4000
4001
4002
4004
4005
4006
4009
4010
4014
4018
4019
4021
4022
4023
4025
4026
4030
4031
4032
4036
4037
4038
4039
4041
4044
4047
4048
4053
4054
4058
4059
4060
4063
4064
4067
4076
4077
4081
4082
4084
4085
4087
4088
4089
4090
4092
4093
4096
4099
4101
4104
4105
4110
4111
4112
4113
4114
4117
4118
4119
4121
4122
4123
4126
4127
4128
4131
4133
4138
4139
4140
4141
4147
4152
4153
4157
4158
4159
4160
4161
4162
4163
4164
4165
4168
4169
4170
4173
4176
4179
4182
4183
4184
4188
4190
4191
4195
4200
4204
4207
4208
4209
4211
4213
4216
4218
4226
4227
4228
4230
4231
4232
4233
4234
4236
4238
4241
4243
4250
4253
4254
4256
4258
4260
4263
4264
4265
4266
4268
4270
4272
4273
4275
4277
4278
4281
4283
4288
4289
4294
4297
4301
4307
4311
4313
4314
4315
4316
4320
4321
4322
4327
4328
4329
4332
4339
4341
4342
4344
4346
4347
4351
4352
4354
4355
4356
4357
4358
4360
4361
4362
4363
4365
4366
4368
4371
4372
4373
4375
4376
4377
4380
4381
4382
4383
4385
4389
4392
4393
4394
4396
4397
4399
4400
4401
4403
4404
4405
4406
4409
4412
4415
4416
4417
4418
4420
4421
4424
4425
4426
4428
4432
4433
4435
4439
4440
4442
4447
4452
4454
4456
4458
4459
4462
4463
4465
4466
4467
4471
4472
4475
4479
4482
4487
4488
4490
4491
4492
4498
4499
4503
4504
4505
4509
4510
4512
4513
4518
4519
4521
4522
4523
4524
4529
4532
4533
4534
4535
4536
4537
4540
4542
4543
4544
4551
4552
4553
4556
4560
4561
4563
4564
4568
4570
4571
4572
4573
4575
4577
4579
4580
4581
4582
4583
4585
4587
4588
4590
4591
4592
4593
4594
4596
4599
4600
4601
4602
4603
4605
4609
4613
4614
4616
4617
4621
4622
4623
4625
4626
4627
4628
4631
4634
4636
4637
4638
4639
4640
4641
4642
4643
4644
4646
4648
4649
4650
4651
4654
4655
4656
4660
4661
4662
4663
4665
4666
4668
4669
4676
4678
4679
4681
4682
4685
4686
4688
4689
4690
4691
4692
4694
4695
4696
4697
4701
4703
4705
4706
4707
4710
4711
4712
4713
4717
4718
4722
4723
4726
4727
4728
4729
4731
4732
4733
4737
4738
4741
4742
4746
4748
4749
4752
4753
4755
4761
4762
4765
4766
4768
4773
4774
4776
4777
4780
4782
4784
4793
4797
4799
4801
4803
4805
4806
4807
4808
4809
4810
4813
4816
4817
4819
4820
4821
4822
4825
4826
4831
4833
4837
4838
4839
4840
4844
4845
4846
4851
4853
4855
4862
4866
4868
4869
4871
4878
4880
4882
4884
4887
4888
4891
4893
4894
4896
4900
4901
4902
4904
4905
4908
4909
4910
4911
4913
4914
4915
4916
4917
4918
4920
4922
4923
4930
4931
4932
4934
4935
4937
4939
4940
4941
4942
4943
4945
4946
4948
4949
4950
4951
4952
4953
4954
4955
4956
4957
4958
4961
4964
4965
4967
4968
4969
4970
4972
4975
4977
4980
4982
4984
4987
4988
4989
4990
4992
4993
4995
4997
4998
4999
5002
5003
5004
5005
5006
5008
5009
5011
5012
5013
5017
5018
5020
5021
5022
5025
5027
5031
5035
5037
5048
5050
5052
5053
5054
5055
5056
5059
5060
5061
5063
5064
5066
5068
5069
5072
5073
5074
5080
5081
5083
5088
5090
5091
5092
5098
5099
5101
5103
5104
5106
5110
5111
5112
5116
5117
5118
5123
5126
5127
5128
5132
5133
5136
5138
5140
5143
5150
5151
5153
5155
5156
5157
5158
5160
5161
5170
5171
5175
5176
5178
5180
5182
5185
5187
5189
5191
5192
5193
5196
5199
5205
5211
5215
5216
5220
5223
5224
5227
5229
5232
5233
5235
5237
5238
5239
5242
5246
5249
5251
5252
5254
5257
5264
5267
5269
5272
5274
5275
5279
5283
5285
5286
5289
5291
5292
5293
5294
5295
5296
5297
5298
5300
5302
5306
5307
5310
5316
5317
5318
5320
5322
5323
5325
5327
5328
5330
5331
5333
5340
5342
5343
5344
5345
5347
5349
5350
5351
5358
5360
5362
5367
5372
5373
5374
5375
5376
5377
5379
5381
5383
5385
5389
5391
5392
5394
5395
5396
5397
5398
5399
5400
5401
5402
5403
5405
5407
5408
5409
5410
5411
5412
5414
5417
5419
5421
5422
