1
3
4
6
7
8
9
10
11
12
13
16
18
20
21
23
25
26
28
29
33
34
37
38
40
41
42
46
47
49
50
52
53
55
56
57
58
59
60
61
62
64
65
66
68
70
71
73
74
75
77
81
83
84
87
88
91
92
94
96
98
101
103
104
111
112
116
117
119
121
123
124
125
126
127
130
131
132
133
135
136
137
138
139
141
145
150
153
159
160
162
163
165
166
170
174
176
177
179
180
183
184
185
187
189
190
192
193
195
197
200
201
203
204
205
206
208
209
211
212
217
219
220
222
223
229
231
232
233
235
236
238
241
242
243
244
245
246
247
248
249
251
256
258
259
260
264
265
266
268
269
273
274
275
279
281
283
284
287
288
290
292
294
295
298
299
304
305
307
309
311
312
313
314
315
317
319
321
325
328
329
331
332
334
337
339
341
345
346
350
354
355
358
359
361
362
364
366
368
370
371
372
373
374
375
377
379
380
382
384
386
388
390
392
394
395
397
398
399
400
402
405
407
409
410
413
416
417
418
421
422
423
424
428
429
430
431
433
436
439
440
442
443
446
449
450
452
453
455
456
457
462
463
468
471
472
474
477
478
479
482
489
490
493
495
496
497
499
506
507
512
513
514
515
516
517
518
520
521
524
526
527
530
532
534
535
537
538
540
541
543
544
545
546
549
552
553
555
556
559
561
562
563
565
566
568
569
570
571
575
578
581
582
583
586
588
593
594
597
598
599
600
602
603
604
605
608
609
610
614
617
618
623
625
627
628
629
630
632
633
637
644
645
647
649
650
651
652
653
654
655
656
658
659
660
661
662
663
664
665
667
670
672
675
677
679
681
682
684
685
686
687
689
691
692
693
694
698
702
703
706
708
709
716
718
721
724
726
727
728
731
734
735
738
744
745
746
747
749
752
754
758
761
762
765
766
769
771
772
773
775
777
778
779
782
785
787
788
791
793
794
797
798
799
805
810
811
812
813
814
815
817
818
819
820
823
825
828
829
830
831
832
833
835
837
838
840
844
845
849
850
851
853
857
860
862
867
870
871
874
875
876
877
885
889
894
896
899
900
901
904
905
907
909
910
912
914
915
916
917
918
922
923
927
929
930
931
932
933
934
936
937
938
940
943
948
950
953
955
956
958
959
960
961
963
964
965
967
972
973
974
975
978
981
982
983
984
986
990
991
994
995
996
1002
1003
1008
1010
1015
1016
1017
1018
1022
1026
1028
1029
1031
1034
1041
1044
1047
1049
1050
1054
1056
1057
1060
1061
1063
1068
1069
1072
1074
1075
1076
1079
1081
1083
1087
1089
1092
1093
1097
1098
1099
1100
1101
1104
1106
1107
1110
1111
1113
1114
1119
1120
1128
1129
1131
1132
1133
1134
1135
1138
1139
1140
1142
1144
1145
1147
1151
1152
1153
1155
1158
1161
1162
1164
1167
1169
1170
1173
1178
1181
1183
1184
1185
1186
1189
1192
1193
1194
1195
1196
1198
1200
1204
1208
1209
1211
1212
1217
1218
1220
1221
1224
1225
1226
1228
1231
1232
1235
1236
1238
1239
1242
1243
1244
1245
1246
1247
1249
1252
1253
1255
1256
1259
1261
1262
1263
1264
1266
1269
1270
1271
1272
1273
1274
1276
1277
1283
1285
1287
1288
1290
1293
1294
1297
1299
1300
1301
1303
1304
1305
1307
1308
1309
1310
1311
1327
1329
1337
1340
1341
1342
1343
1344
1345
1347
1349
1353
1354
1355
1357
1360
1362
1363
1365
1368
1369
1370
1371
1373
1374
1375
1378
1386
1387
1389
1390
1391
1392
1393
1395
1397
1398
1399
1400
1401
1403
1404
1405
1407
1408
1409
1410
1412
1414
1415
1416
1417
1418
1421
1422
1425
1427
1428
1429
1430
1433
1435
1436
1438
1439
1443
1444
1446
1447
1450
1451
1452
1455
1456
1460
1467
1468
1472
1474
1476
1479
1480
1485
1487
1488
1489
1493
1496
1497
1499
1500
1502
1504
1505
1510
1511
1512
1514
1516
1517
1519
1520
1521
1522
1529
1530
1532
1533
1535
1536
1537
1540
1542
1547
1553
1554
1555
1556
1557
1559
1560
1563
1566
1567
1570
1571
1572
1574
1575
1577
1580
1581
1585
1588
1589
1590
1592
1593
1594
1596
1600
1602
1608
1609
1611
1613
1618
1623
1625
1627
1628
1630
1631
1638
1644
1645
1647
1649
1656
1660
1661
1664
1665
1668
1669
1673
1674
1680
1681
1683
1684
1685
1686
1688
1689
1690
1691
1693
1695
1696
1697
1698
1700
1704
1705
1706
1708
1709
1710
1712
1713
1715
1716
1717
1719
1723
1725
1726
1728
1729
1730
1731
1732
1733
1735
1739
1740
1744
1746
1747
1751
1752
1753
1754
1756
1758
1759
1762
1766
1767
1771
1773
1776
1779
1780
1784
1785
1786
1787
1789
1791
1792
1793
1795
1796
1798
1799
1800
1807
1808
1809
1812
1813
1814
1815
1816
1817
1818
1819
1820
1822
1823
1824
1825
1828
1832
1834
1836
1840
1841
1842
1843
1844
1846
1848
1849
1851
1852
1853
1855
1856
1861
1865
1867
1868
1870
1872
1873
1875
1876
1877
1879
1882
1884
1888
1890
1891
1892
1895
1897
1898
1899
1900
1901
1903
1904
1905
1906
1909
1910
1911
1914
1917
1919
1922
1924
1925
1927
1929
1931
1932
1936
1937
1939
1940
1941
1947
1949
1951
1955
1957
1960
1962
1963
1965
1966
1968
1971
1974
1975
1976
1977
1978
1980
1983
1986
1987
1988
1990
1991
1992
1999
2000
2001
2002
2003
2007
2008
2009
2010
2014
2015
2017
2023
2024
2025
2027
2028
2030
2031
2032
2033
2037
2038
2039
2040
2041
2046
2048
2049
2051
2052
2055
2057
2059
2063
2065
2067
2068
2069
2071
2072
2073
2074
2075
2078
2080
2081
2082
2085
2087
2090
2091
2093
2094
2097
2100
2101
2102
2103
2104
2106
2109
2110
2113
2115
2118
2120
2121
2123
2124
2125
2126
2127
2129
2132
2133
2134
2140
2142
2143
2144
2145
2147
2148
2149
2155
2157
2159
2161
2165
2166
2167
2171
2174
2177
2180
2183
2186
2190
2192
2193
2195
2196
2198
2199
2201
2203
2204
2205
2207
2209
2211
2212
2213
2214
2215
2218
2223
2226
2227
2229
2230
2232
2233
2235
2236
2237
2238
2242
2246
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2260
2261
2262
2264
2265
2266
2267
2268
2269
2273
2274
2276
2278
2279
2280
2283
2284
2287
2288
2289
2290
2291
2296
2298
2299
2303
2306
2307
2311
2312
2316
2318
2319
2320
2322
2332
2334
2336
2337
2339
2341
2343
2344
2346
2347
2348
2350
2353
2357
2363
2364
2366
2367
2371
2373
2374
2376
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2391
2392
2394
2395
2398
2401
2403
2406
2407
2409
2410
2414
2417
2419
2420
2421
2423
2424
2425
2427
2428
2429
2430
2431
2432
2434
2436
2438
2439
2442
2448
2449
2451
2456
2457
2458
2459
2472
2473
2476
2477
2478
2479
2480
2481
2483
2484
2485
2489
2490
2491
2492
2493
2495
2497
2498
2501
2504
2506
2507
2508
2509
2510
2514
2515
2516
2520
2524
2525
2527
2528
2536
2539
2540
2542
2547
2549
2550
2551
2553
2556
2557
2559
2560
2561
2564
2565
2571
2572
2573
2574
2575
2576
2577
2580
2581
2582
2583
2585
2590
2592
2593
2594
2596
2602
2603
2606
2610
2612
2613
2614
2616
2620
2621
2628
2629
2630
2636
2642
2643
2644
2645
2646
2648
2652
2653
2655
2656
2657
2658
2659
2662
2664
2666
2667
2668
2669
2674
2675
2677
2679
2680
2681
2683
2684
2686
2688
2691
2693
2695
2697
2698
2699
2702
2703
2705
2706
2707
2708
2710
2711
2712
2713
2714
2718
2720
2721
2723
2724
2725
2726
2727
2728
2729
2731
2732
2733
2734
2737
2739
2741
2744
2746
2747
2750
2751
2752
2756
2758
2760
2761
2762
2764
2766
2768
2769
2770
2773
2774
2775
2776
2777
2780
2781
2782
2783
2784
2786
2787
2788
2790
2792
2794
2796
2806
2807
2809
2810
2811
2814
2815
2816
2817
2818
2819
2820
2823
2827
2828
2829
2830
2831
2834
2836
2842
2846
2850
2851
2855
2856
2857
2858
2860
2863
2864
2867
2870
2871
2873
2876
2883
2885
2886
2887
2890
2892
2893
2895
2897
2899
2901
2902
2906
2909
2910
2916
2919
2922
2923
2924
2928
2930
2931
2932
2934
2936
2939
2941
2943
2946
2947
2949
2951
2953
2954
2956
2957
2959
2961
2964
2966
2967
2971
2973
2974
2977
2978
2980
2982
2983
2985
2986
2989
2992
2994
2995
2997
3000
3001
3002
3004
3005
3006
3009
3010
3012
3014
3015
3016
3018
3019
3021
3022
3025
3026
3027
3032
3035
3036
3037
3042
3044
3046
3048
3049
3053
3055
3058
3059
3062
3064
3066
3067
3068
3071
3073
3074
3075
3078
3079
3081
3082
3083
3085
3086
3087
3088
3089
3093
3096
3097
3098
3099
3102
3103
3106
3107
3109
3112
3113
3114
3115
3117
3118
3119
3120
3122
3123
3124
3125
3126
3128
3130
3132
3133
3134
3136
3137
3140
3141
3142
3143
3148
3150
3155
3158
3165
3167
3168
3171
3172
3173
3176
3177
3178
3179
3180
3181
3183
3184
3187
3190
3192
3194
3195
3196
3197
3198
3199
3200
3202
3203
3208
3209
3210
3212
3213
3214
3215
3217
3218
3219
3222
3223
3225
3226
3227
3228
3229
3231
3232
3234
3235
3238
3239
3240
3241
3244
3245
3246
3247
3251
3252
3254
3256
3257
3258
3259
3260
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3273
3274
3275
3277
3279
3281
3282
3283
3284
3285
3286
3288
3289
3291
3294
3297
3298
3299
3301
3303
3304
3308
3309
3310
3317
3319
3320
3321
3323
3325
3326
3327
3328
3329
3330
3333
3335
3336
3338
3339
3340
3341
3342
3343
3345
3354
3355
3357
3358
3359
3360
3361
3362
3364
3365
3369
3370
3371
3372
3373
3376
3380
3381
3384
3385
3387
3389
3391
3392
3399
3400
3402
3403
3404
3408
3409
3411
3414
3415
3416
3417
3424
3428
3430
3431
3432
3435
3436
3440
3441
3442
3443
3444
3449
3451
3452
3453
3454
3455
3456
3457
3459
3460
3461
3462
3464
3466
3467
3468
3469
3476
3477
3478
3480
3481
3484
3487
3494
3495
3497
3498
3499
3500
3501
3502
3504
3508
3509
3511
3513
3514
3515
3516
3520
3521
3523
3529
3532
3537
3540
3544
3545
3547
3553
3555
3556
3560
3561
3562
3564
3567
3568
3569
3571
3572
3573
3575
3580
3581
3582
3583
3584
3585
3587
3591
3594
3595
3596
3599
3603
3605
3607
3608
3609
3612
3613
3616
3617
3620
3621
3622
3623
3624
3626
3628
3632
3633
3635
3636
3637
3639
3640
3647
3651
3654
3655
3656
3657
3659
3662
3663
3664
3666
3667
3668
3669
3670
3672
3675
3677
3681
3683
3685
3687
3690
3691
3692
3694
3695
3704
3705
3707
3708
3709
3710
3711
3712
3715
3716
3721
3722
3724
3726
3729
3731
3733
3734
3735
3737
3738
3741
3744
3746
3747
3748
3749
3752
3756
3758
3759
3762
3763
3766
3768
3771
3772
3773
3774
3778
3779
3782
3783
3784
3785
3786
3788
3792
3794
3795
3796
3798
3799
3800
3802
3803
3806
3808
3809
3811
3812
3813
3816
3817
3819
