1
2
3
5
6
7
9
11
12
16
18
19
20
22
24
26
32
35
37
40
41
42
44
47
49
51
53
55
59
60
62
63
64
68
70
71
72
73
74
76
77
78
80
81
82
83
86
92
93
94
96
99
101
102
103
105
106
108
110
115
117
119
121
122
123
125
126
128
137
138
139
142
146
148
150
152
154
155
157
158
159
160
163
164
171
172
173
176
179
180
181
182
183
184
186
188
190
192
194
195
196
197
200
201
203
204
207
209
211
213
216
218
219
220
222
223
224
226
228
233
235
237
238
239
242
245
249
253
254
255
256
258
259
261
263
266
268
269
270
271
273
275
277
278
281
284
287
291
294
295
296
301
302
303
304
306
308
310
311
312
314
318
321
324
327
328
330
331
333
336
337
338
339
340
341
342
349
355
357
360
368
369
370
371
373
375
377
378
380
381
382
383
386
387
390
392
393
394
395
396
399
400
401
402
405
406
411
413
414
421
422
423
426
427
428
429
430
434
437
440
442
447
449
451
455
456
459
461
462
463
465
466
468
469
470
471
474
484
485
489
490
492
494
495
496
499
500
502
505
510
511
512
513
514
515
516
517
519
525
526
527
529
530
531
532
534
535
536
537
538
539
540
541
542
543
544
545
546
547
549
553
554
555
557
558
559
560
562
563
564
565
566
567
571
572
573
574
576
577
578
581
582
589
590
594
595
596
598
599
601
602
603
605
606
611
612
613
618
620
626
627
628
629
630
634
635
636
639
642
644
646
647
649
655
657
662
664
666
668
669
671
673
677
678
679
682
684
685
688
689
690
696
700
701
703
708
709
712
714
715
717
718
721
723
724
725
727
728
729
735
738
739
743
744
747
748
753
754
755
756
760
761
763
765
767
769
771
772
773
774
775
778
783
784
788
789
795
797
798
799
800
805
806
810
811
812
813
814
817
818
820
821
822
823
824
825
826
827
828
829
830
831
832
833
837
839
840
842
843
844
845
848
850
858
863
865
866
868
869
872
873
875
876
877
879
881
882
883
884
885
888
889
890
892
894
896
897
899
906
907
909
911
912
914
915
916
920
923
924
925
926
928
930
932
933
935
937
938
940
941
942
945
948
950
954
956
957
964
966
967
968
970
973
975
976
977
978
979
982
983
984
985
987
989
992
993
995
999
1000
1001
1002
1004
1006
1007
1010
1011
1013
1015
1016
1019
1020
1021
1024
1025
1026
1027
1028
1030
1033
1034
1035
1036
1037
1039
1040
1041
1043
1045
1046
1047
1050
1053
1054
1058
1059
1060
1061
1062
1063
1065
1067
1068
1071
1074
1076
1078
1079
1081
1082
1083
1084
1086
1087
1091
1093
1095
1096
1097
1098
1101
1102
1104
1106
1107
1108
1110
1111
1112
1114
1116
1117
1119
1122
1125
1129
1130
1133
1135
1137
1140
1141
1142
1143
1144
1145
1146
1150
1151
1153
1154
1157
1159
1162
1163
1164
1165
1166
1167
1168
1170
1172
1173
1175
1176
1179
1180
1182
1184
1188
1189
1190
1191
1196
1197
1199
1203
1205
1206
1209
1212
1213
1215
1216
1217
1218
1220
1221
1222
1224
1225
1226
1227
1228
1229
1233
1234
1235
1238
1239
1241
1242
1246
1247
1248
1249
1250
1252
1253
1255
1257
1259
1261
1262
1264
1267
1269
1270
1271
1273
1274
1276
1278
1280
1281
1286
1287
1288
1289
1291
1295
1296
1299
1300
1302
1305
1308
1311
1312
1313
1314
1315
1316
1318
1319
1322
1323
1324
1326
1327
1329
1330
1331
1332
1338
1343
1344
1345
1346
1347
1348
1350
1353
1355
1357
1359
1360
1362
1363
1364
1366
1369
1372
1374
1375
1376
1377
1379
1382
1383
1384
1385
1388
1389
1390
1392
1393
1394
1395
1397
1402
1403
1404
1405
1407
1411
1415
1416
1418
1419
1420
1422
1426
1428
1429
1431
1432
1433
1434
1436
1437
1438
1441
1443
1445
1447
1448
1450
1451
1455
1456
1461
1463
1464
1465
1468
1472
1473
1474
1477
1480
1481
1483
1484
1485
1486
1489
1490
1491
1493
1494
1495
1496
1498
1502
1503
1505
1506
1507
1508
1510
1514
1515
1516
1517
1518
1519
1520
1522
1523
1524
1525
1526
1527
1529
1530
1531
1533
1534
1535
1537
1539
1540
1542
1543
1545
1546
1547
1548
1550
1551
1552
1553
1555
1556
1559
1560
1561
1564
1565
1566
1567
1570
1572
1574
1578
1579
1581
1582
1584
1586
1588
1595
1596
1597
1600
1603
1605
1610
1611
1612
1613
1614
1615
1616
1618
1620
1621
1622
1624
1627
1629
1630
1631
1632
1633
1636
1647
1648
1649
1650
1651
1653
1657
1659
1662
1663
1667
1668
1669
1671
1677
1678
1682
1687
1688
1690
1691
1692
1694
1700
1702
1703
1704
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1723
1725
1731
1735
1736
1737
1739
1740
1742
1747
1748
1749
1750
1753
1754
1755
1756
1757
1759
1760
1762
1763
1764
1766
1768
1769
1771
1772
1775
1776
1777
1779
1780
1781
1783
1784
1786
1787
1792
1794
1795
1796
1799
1801
1802
1804
1808
1809
1812
1813
1814
1815
1816
1820
1821
1822
1825
1826
1828
1831
1833
1835
1838
1839
1840
1841
1842
1843
1852
1853
1858
1863
1866
1867
1869
1870
1871
1872
1873
1874
1875
1877
1878
1881
1883
1884
1890
1892
1894
1896
1898
1899
1900
1902
1905
1906
1907
1908
1913
1917
1920
1923
1924
1927
1929
1930
1935
1936
1939
1940
1944
1945
1947
1948
1949
1950
1952
1954
1956
1957
1959
1961
1963
1965
1966
1967
1968
1969
1971
1972
1974
1975
1981
1982
1984
1987
1990
1992
1993
1995
1999
2000
2001
2002
2003
2004
2005
2007
2010
2013
2014
2015
2016
2018
2020
2022
2023
2025
2026
2028
2031
2035
2039
2041
2044
2045
2046
2048
2050
2051
2053
2054
2056
2058
2059
2061
2063
2064
2065
2067
2069
2071
2074
2077
2079
2080
2082
2083
2086
2088
2089
2092
2094
2096
2098
2099
2100
2102
2103
2104
2108
2111
2112
2115
2119
2121
2122
2128
2130
2132
2133
2142
2143
2144
2146
2148
2149
2154
2156
2158
2159
2160
2162
2163
2164
2167
2169
2170
2171
2172
2173
2174
2175
2176
2181
2182
2184
2185
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2203
2204
2206
2207
2208
2209
2210
2211
2212
2216
2219
2222
2223
2228
2230
2234
2235
2238
2239
2240
2241
2243
2247
2250
2251
2252
2254
2255
2259
2261
2262
2263
2266
2268
2274
2278
2281
2283
2284
2288
2289
2290
2294
2297
2298
2299
2301
2302
2303
2306
2307
2311
2312
2313
2314
2318
2319
2320
2321
2326
2328
2329
2330
2333
2338
2339
2343
2345
2347
2349
2352
2354
2355
2357
2358
2361
2362
2363
2364
2365
2366
2367
2368
2370
2371
2377
2381
2382
2386
2390
2392
2393
2395
2396
2397
2399
2401
2402
2403
2405
2406
2407
2409
2410
2412
2414
2415
2416
2418
2420
2422
2423
2424
2425
2427
2428
2431
2433
2434
2438
2442
2444
2445
2447
2448
2452
2453
2454
2455
2459
2460
2462
2467
2468
2470
2472
2475
2477
2478
2483
2484
2487
2488
2489
2490
2494
2495
2496
2497
2499
2502
2503
2504
2509
2510
2512
2514
2515
2516
2518
2519
2520
2525
2526
2527
2529
2530
2531
2533
2534
2538
2541
2542
2543
2544
2545
2546
2548
2550
2551
2554
2556
2557
2558
2559
2561
2562
2564
2567
2571
2577
2580
2582
2583
2587
2589
2591
2595
2598
2599
2604
2605
2610
2613
2616
2617
2618
2620
2621
2622
2623
2626
2629
2630
2634
2636
2638
2639
2649
2655
2660
2662
2663
2665
2670
2671
2673
2682
2685
2686
2687
2688
2691
2693
2697
2698
2700
2702
2704
2705
2706
2707
2708
2710
2713
2714
2715
2717
2718
2719
2721
2722
2723
2725
2726
2727
2729
2730
2731
2732
2736
2738
2741
2742
2747
2749
2752
2756
2760
2761
2763
2764
2765
2766
2768
2769
2772
2773
2774
2777
2779
2780
2782
2785
2786
2788
2789
2790
2794
2795
2797
2801
2805
2807
2809
2812
2815
2816
2819
2821
2824
2826
2830
2831
2832
2835
2837
2838
2840
2841
2842
2844
2845
2848
2853
2855
2856
2857
2858
2862
2863
2864
2865
2866
2868
2870
2871
2875
2877
2878
2879
2881
2884
2886
2887
2888
2890
2892
2893
2896
2898
2899
2902
2904
2909
2910
2912
2913
2914
2917
2920
2921
2922
2924
2925
2926
2927
2931
2932
2933
2935
2936
2939
2940
2943
2944
2945
2946
2947
2949
2950
2951
2952
2953
2957
2958
2959
2960
2961
2963
2965
2966
2967
2969
2970
2971
2972
2973
2975
2976
2978
2979
2983
2988
2989
2991
2993
2994
2996
2998
3001
3003
3006
3008
3009
3011
3014
3015
3016
3017
3018
3021
3025
3026
3027
3028
3031
3034
3036
3039
3040
3046
3047
3048
3052
3053
3054
3056
3057
3058
3059
3063
3064
3065
3066
3069
3070
3071
3074
3075
3076
3077
3080
3082
3084
3086
3087
3088
3089
3090
3098
3099
3101
3103
3106
3107
3111
3112
3114
3116
3118
3119
3121
3123
3124
3126
3127
3128
3129
3130
3131
3133
3134
3135
3136
3138
3139
3143
3144
3145
3153
3155
3156
3158
3161
3162
3163
3167
3168
3169
3171
3172
3175
3177
3182
3183
3185
3186
3189
3190
3192
3193
3194
3196
3197
3198
3199
3201
3202
3203
3205
3206
3207
3210
3211
3212
3214
3215
3216
3217
3219
3221
3225
3229
3230
3231
3232
3234
3235
3236
3237
3238
3240
3241
3244
3245
3246
3249
3250
3252
3254
3256
3258
3264
3266
3267
3268
3269
3270
3272
3273
3274
3275
3276
3277
3280
3282
3283
3284
3287
3290
3291
3292
3293
3296
3299
3300
3302
3303
3304
3305
3306
3307
3308
3313
3316
3317
3318
3321
3330
3332
3335
3336
3343
3345
3352
3354
3355
3356
3357
3358
3361
3362
3363
3365
3366
3369
3370
3371
3372
3374
3376
3379
3381
3383
3389
3390
3391
3392
3394
3395
3397
3398
3400
3402
3404
3405
3406
3407
3409
3411
3413
3414
3416
3418
3419
3420
3423
3425
3427
3428
3429
3432
3433
3434
3436
3439
3440
3445
3446
3447
3449
3450
3453
3455
3457
3460
3461
3468
3470
3471
3472
3474
3475
3476
3492
3493
3494
3495
3497
3501
3502
3504
3505
3508
3509
3511
3512
3516
3517
3518
3519
3520
3521
3522
3525
3526
3528
3531
3532
3533
3534
3535
3536
3541
3542
3543
3545
3547
3548
3549
3551
3552
3554
3555
3556
3558
3561
3562
3563
3564
3567
3569
3572
3574
3576
3577
3578
3579
3582
3583
3584
3589
3598
3599
3600
3601
3602
3604
3605
3608
3609
3610
3612
3613
3614
3616
3619
3620
3621
3622
3623
3625
3628
3629
3630
3631
3634
3635
3637
3640
3642
3643
3650
3651
3653
3654
3655
3656
3657
3658
3660
3663
3664
3665
3666
3667
3668
3669
3673
3674
3675
3677
3678
3679
3681
3683
3688
3689
3699
3700
3703
3704
3705
3708
3709
3712
3714
3715
3717
3719
3720
3722
3725
3726
3728
3732
3736
3737
3741
3744
3746
3747
3750
3751
3752
3753
3755
3756
