0
4
6
9
16
17
18
23
24
27
32
33
36
37
38
39
45
48
51
52
57
61
62
65
67
75
77
83
84
85
87
88
92
94
95
97
98
99
100
101
103
104
107
112
117
118
124
127
129
130
133
134
138
141
143
144
145
146
147
149
152
154
155
156
163
166
167
168
169
174
175
176
178
179
182
184
185
186
188
189
190
192
196
197
198
199
200
201
206
210
213
214
216
218
222
228
229
230
231
232
233
236
238
239
240
241
244
249
250
259
261
262
264
273
274
276
277
279
280
282
284
288
290
296
298
303
304
305
307
308
311
313
318
322
328
330
337
338
339
341
343
344
348
351
357
361
362
363
364
368
370
372
373
374
375
378
379
382
383
396
397
398
399
400
401
402
405
408
410
414
416
417
419
420
423
427
428
429
431
433
434
435
437
442
445
456
459
463
465
467
469
474
475
477
478
480
481
482
483
484
485
490
493
495
496
497
498
499
502
505
507
509
512
513
514
521
522
523
527
528
529
532
534
537
542
547
548
551
552
554
558
559
560
561
563
564
565
566
567
571
575
578
580
583
585
587
588
593
599
600
604
605
607
617
618
619
621
629
631
634
635
646
647
648
650
651
656
658
661
664
665
669
671
676
680
682
683
687
690
694
695
698
701
703
705
706
708
716
722
723
724
725
729
736
738
739
742
744
745
750
753
756
757
760
761
765
766
767
770
772
782
786
787
788
789
790
792
793
795
796
801
803
804
805
806
809
810
811
814
819
822
825
827
829
830
833
836
838
839
848
849
851
852
853
855
856
857
865
867
872
873
875
877
878
884
887
891
893
895
900
901
902
903
905
907
909
913
914
915
916
919
920
922
923
924
925
926
928
933
934
937
939
940
942
943
944
946
950
966
973
976
979
980
981
983
984
991
997
999
1000
1001
1005
1006
1010
1013
1017
1018
1024
1025
1026
1027
1031
1034
1035
1037
1038
1050
1051
1052
1055
1056
1057
1062
1064
1066
1067
1070
1072
1073
1080
1081
1082
1086
1087
1090
1092
1093
1094
1096
1097
1104
1105
1109
1112
1114
1123
1126
1128
1129
1131
1132
1134
1136
1137
1140
1141
1142
1144
1145
1152
1155
1157
1158
1159
1161
1167
1168
1169
1171
1173
1175
1176
1177
1186
1187
1188
1192
1199
1202
1203
1209
1210
1212
1219
1220
1224
1226
1228
1231
1232
1235
1236
1238
1239
1240
1241
1243
1246
1251
1252
1256
1257
1260
1261
1262
1266
1267
1271
1276
1281
1286
1287
1290
1292
1294
1295
1296
1300
1301
1303
1304
1305
1309
1316
1320
1322
1323
1329
1330
1333
1334
1335
1339
1342
1348
1349
1351
1353
1355
1356
1366
1368
1370
1373
1374
1376
1378
1380
1382
1388
1390
1393
1395
1396
1397
1398
1402
1403
1404
1408
1412
1414
1415
1419
1422
1423
1424
1426
1427
1429
1431
1432
1434
1437
1439
1441
1445
1446
1447
1450
1451
1453
1456
1464
1468
1469
1470
1472
1476
1479
1488
1493
1494
1495
1499
1501
1502
1507
1512
1513
1514
1515
1524
1525
1526
1529
1530
1532
1533
1534
1537
1538
1539
1541
1543
1544
1547
1548
1551
1554
1558
1567
1572
1573
1574
1578
1579
1580
1581
1584
1586
1592
1593
1594
1595
1596
1598
1599
1605
1607
1609
1610
1612
1613
1616
1619
1625
1628
1629
1630
1631
1632
1637
1640
1643
1646
1647
1648
1652
1653
1655
1656
1657
1658
1663
1664
1665
1666
1671
1672
1673
1675
1676
1680
1683
1685
1687
1689
1690
1692
1695
1697
1698
1699
1701
1707
1710
1711
1713
1716
1717
1719
1721
1723
1727
1730
1733
1734
1737
1740
1741
1744
1745
1746
1749
1750
1751
1752
1755
1756
1757
1758
1760
1764
1765
1768
1770
1773
1774
1775
1777
1778
1779
1790
1794
1797
1798
1799
1800
1801
1803
1806
1807
1810
1813
1815
1817
1818
1820
1824
1830
1832
1833
1834
1835
1836
1839
1844
1846
1847
1848
1849
1850
1851
1853
1854
1856
1857
1859
1861
1862
1867
1868
1870
1872
1878
1879
1880
1881
1882
1884
1886
1889
1890
1891
1892
1894
1895
1897
1901
1902
1904
1906
1909
1911
1921
1922
1926
1927
1928
1933
1939
1944
1945
1947
1949
1951
1952
1953
1954
1956
1957
1960
1964
1965
1969
1970
1974
1975
1976
1980
1982
1985
1986
1987
1990
1994
1998
1999
2000
2003
2004
2005
2006
2008
2009
2012
2013
2014
2015
2016
2017
2020
2023
2024
2025
2029
2030
2032
2035
2036
2037
2039
2042
2043
2045
2046
2051
2053
2054
2055
2057
2059
2061
2067
2069
2071
2076
2082
2083
2085
2091
2094
2096
2097
2098
2099
2100
2102
2106
2107
2109
2110
2112
2119
2121
2122
2125
2126
2131
2135
2140
2142
2144
2150
2151
2152
2154
2155
2157
2158
2159
2160
2162
2164
2167
2169
2177
2179
2180
2183
2184
2185
2187
2188
2192
2194
2199
2202
2204
2205
2206
2207
2208
2212
2216
2217
2221
2224
2226
2230
2234
2238
2239
2241
2242
2246
2248
2249
2250
2252
2254
2256
2263
2270
2272
2274
2282
2285
2287
2290
2291
2294
2295
2298
2299
2301
2308
2309
2310
2319
2320
2321
2322
2323
2324
2326
2328
2329
2330
2332
2333
2339
2340
2341
2343
2345
2347
2348
2350
2353
2355
2360
2363
2364
2367
2368
2369
2372
2376
2379
2387
2389
2392
2393
2396
2397
2398
2399
2400
2403
2405
2411
2412
2417
2419
2422
2424
2425
2427
2428
2432
2434
2435
2436
2438
2439
2440
2441
2446
2449
2454
2458
2459
2460
2461
2464
2466
2467
2469
2470
2474
2477
2478
2479
2482
2485
2487
2489
2492
2494
2496
2500
2502
2506
2508
2511
2512
2513
2514
2517
2521
2525
2526
2527
2534
2537
2539
2540
2543
2548
2549
2554
2556
2559
2562
2563
2564
2565
2567
2568
2570
2572
2573
2579
2580
2587
2588
2593
2594
2595
2596
2602
2606
2608
2610
2611
2612
2613
2615
2617
2621
2624
2626
2632
2634
2635
2636
2640
2642
2645
2649
2651
2652
2655
2656
2664
2666
2668
2669
2672
2674
2676
2679
2682
2684
2686
2687
2688
2692
2695
2696
2697
2699
2706
2708
2709
2712
2714
2715
2717
2722
2723
2724
2725
2730
2735
2736
2737
2743
2746
2747
2755
2757
2760
2762
2765
2766
2769
2771
2772
2775
2780
2781
2782
2783
2792
2793
2795
2803
2806
2808
2809
2810
2811
2812
2813
2815
2818
2820
2821
2824
2825
2826
2830
2833
2834
2835
2837
2839
2840
2844
2845
2848
2849
2850
2853
2856
2861
2864
2865
2866
2868
2869
2873
2874
2877
2878
2879
2882
2883
2890
2891
2892
2894
2896
2897
2898
2901
2904
2905
2911
2913
2916
2918
2919
2920
2921
2927
2928
2929
2931
2935
2936
2938
2939
2940
2941
2942
2943
2946
2949
2952
2954
2955
2960
2961
2962
2966
2973
2978
2983
2988
2989
2990
2991
2992
2993
2994
2996
2997
2998
3001
3004
3005
3006
3007
3010
3012
3013
3016
3018
3020
3021
3023
3024
3028
3034
3038
3044
3046
3047
3048
3049
3055
3057
3059
3060
3063
3066
3067
3068
3070
3073
3075
3076
3079
3081
3083
3085
3091
3092
3094
3097
3099
3100
3101
3104
3107
3108
3111
3112
3113
3114
3116
3118
3120
3122
3125
3127
3131
3133
3134
3136
3137
3138
3139
3140
3141
3142
3145
3146
3149
3150
3151
3152
3153
3154
3155
3156
3157
3159
3160
3161
3162
3166
3168
3169
3171
3172
3173
3174
3176
3177
3178
3179
3184
3186
3194
3195
3196
3197
3200
3201
3202
3203
3210
3213
3216
3218
3219
3220
3222
3223
3226
3227
3233
3235
3237
3239
3241
3242
3243
3246
3247
3250
3251
3254
3255
3256
3259
3260
3261
3265
3267
3268
3270
3272
3275
3278
3281
3285
3288
3289
3292
3293
3294
3299
3301
3304
3306
3307
3312
3313
3314
3319
3320
3321
3328
3329
3330
3332
3335
3337
3343
3344
3348
3349
3353
3357
3358
3359
3360
3361
3362
3363
3364
3369
3372
3376
3379
3381
3383
3384
3386
3388
3394
3395
3400
3404
3405
3407
3413
3416
3424
3428
3429
3430
3432
3435
3436
3438
3439
3441
3450
3451
3457
3458
3459
3462
3467
3468
3469
3470
3473
3475
3476
3482
3483
3484
3486
3488
3490
3492
3493
3494
3495
3497
3499
3501
3502
3503
3506
3507
3508
3510
3511
3513
3516
3517
3519
3521
3522
3523
3524
3528
3530
3531
3532
3539
3540
3542
3547
3551
3556
3558
3560
3563
3564
3565
3567
3569
3571
3573
3574
3577
3579
3583
3584
3585
3586
3590
3591
3596
3597
3610
3611
3612
3617
3619
