0
2
4
5
6
8
11
15
16
17
20
21
27
31
34
36
37
38
43
45
47
48
52
53
54
55
57
62
63
67
70
74
77
78
80
84
85
86
92
96
97
99
101
103
104
107
108
109
110
111
114
116
122
130
132
134
135
137
138
140
141
142
145
151
152
154
155
163
168
175
177
178
179
185
188
195
199
203
207
208
210
211
213
215
217
218
220
222
225
231
234
240
241
242
243
246
249
251
256
257
259
263
264
266
268
270
271
272
277
282
288
294
298
302
306
310
312
314
317
321
322
323
326
327
329
330
333
338
342
343
344
347
350
351
352
354
355
356
358
360
365
366
370
372
376
377
379
382
388
391
392
395
397
399
401
404
405
407
409
410
411
415
416
417
423
425
428
432
433
437
440
447
449
450
453
458
460
463
464
465
474
475
476
478
479
486
490
491
493
496
502
503
504
510
514
515
519
521
522
525
527
528
529
533
536
542
543
547
548
550
552
553
560
562
564
568
572
573
574
575
577
578
579
580
582
583
586
587
589
590
600
601
602
610
611
613
623
624
626
628
629
630
632
633
640
641
642
646
647
650
651
655
657
659
661
662
663
666
668
677
678
679
682
685
689
691
693
694
696
700
703
706
707
709
710
713
714
715
716
717
720
721
722
725
730
732
734
736
737
742
743
745
746
747
751
752
755
756
765
768
769
770
771
773
777
779
780
782
783
784
788
792
793
795
796
798
799
803
810
811
812
814
821
823
825
826
831
838
839
842
843
844
845
846
856
859
863
864
865
870
872
873
876
878
880
881
882
884
885
886
888
892
893
896
897
900
902
903
904
905
907
908
909
911
912
913
914
919
921
927
932
934
935
939
940
942
945
946
949
950
952
955
956
957
959
960
964
967
969
971
972
975
977
979
981
983
985
987
989
991
992
994
995
996
998
999
1001
1006
1007
1009
1013
1027
1030
1031
1032
1035
1037
1039
1040
1041
1043
1045
1047
1052
1054
1057
1058
1060
1062
1064
1066
1067
1068
1069
1072
1076
1078
1080
1081
1083
1086
1087
1094
1096
1097
1099
1102
1104
1106
1107
1110
1111
1112
1113
1114
1116
1124
1126
1127
1130
1131
1134
1138
1141
1142
1153
1157
1161
1162
1163
1166
1169
1171
1172
1175
1176
1180
1181
1188
1189
1190
1191
1192
1194
1196
1197
1199
1203
1206
1209
1215
1216
1222
1223
1224
1226
1228
1230
1232
1233
1234
1236
1237
1238
1239
1240
1241
1244
1247
1250
1252
1253
1255
1256
1260
1261
1265
1270
1274
1275
1276
1281
1283
1284
1287
1289
1290
1299
1303
1304
1305
1306
1310
1317
1321
1324
1325
1336
1340
1341
1352
1355
1356
1360
1373
1379
1381
1383
1386
1388
1390
1391
1393
1395
1398
1404
1405
1410
1413
1418
1425
1427
1431
1432
1439
1440
1443
1447
1449
1450
1451
1452
1453
1454
1455
1456
1461
1469
1472
1473
1475
1480
1483
1486
1488
1489
1497
1499
1503
1506
1508
1512
1513
1517
1518
1519
1520
1521
1523
1524
1531
1536
1537
1540
1543
1546
1547
1554
1555
1557
1562
1563
1565
1566
1567
1570
1573
1582
1583
1585
1590
1597
1599
1600
1601
1606
1608
1609
1611
1615
1619
1621
1629
1630
1631
1637
1641
1642
1644
1645
1651
1655
1664
1667
1669
1672
1674
1675
1676
1679
1680
1687
1690
1692
1698
1699
1703
1705
1706
1711
1713
1714
1715
1718
1721
1722
1723
1729
1733
1734
1738
1740
1741
1742
1743
1745
1748
1753
1754
1756
1762
1766
1768
1769
1772
1773
1777
1779
1783
1786
1795
1796
1799
1802
1808
1809
1812
1814
1816
1820
1821
1822
1823
1824
1826
1827
1830
1837
1838
1839
1850
1852
1857
1859
1861
1862
1865
1870
1871
1873
1884
1893
1894
1898
1900
1902
1906
1907
1910
1919
1920
1922
1925
1927
1928
1930
1933
1934
1936
1937
1938
1942
1945
1946
1948
1958
1960
1961
1968
1969
1972
1973
1974
1976
1984
1985
1987
1988
1993
1995
1996
2002
2009
2010
2012
2014
2015
2019
2020
2024
2033
2034
2040
2042
2047
2048
2049
2051
2052
2054
2055
2056
2058
2060
2065
2066
2068
2069
2073
2074
2075
2077
2078
2082
2083
2085
2086
2088
2094
2095
2096
2099
2100
2102
2105
2107
2109
2110
2111
2113
2114
2115
2119
2121
2122
2124
2125
2126
2131
2133
2134
2140
2142
2147
2148
2151
2157
2162
2164
2165
2170
2174
2175
2176
2179
2180
2181
2186
2188
2190
2191
2192
2193
2196
2197
2200
2202
2203
2205
2210
2214
2216
2217
2222
2224
2225
2229
2230
2234
2236
2237
2239
2242
2243
2244
2245
2248
2252
2255
2262
2263
2267
2270
2274
2275
2276
2278
2280
2282
2283
2286
2287
2297
2304
2305
2308
2310
2315
2319
2320
2321
2324
2330
2331
2333
2336
2338
2345
2347
2349
2350
2354
2363
2364
2368
2369
2371
2372
2373
2375
2378
2383
2387
2391
2393
2395
2398
2400
2402
2403
2405
2420
2422
2424
2431
2432
2437
2440
2442
2443
2446
2448
2449
2453
2454
2460
2465
2466
2468
2470
2472
2473
2474
2476
2477
2479
2480
2484
2487
2488
2493
2499
2503
2504
2509
2514
2519
2520
2521
2522
2525
2527
2531
2534
2541
2543
2545
2546
2552
2553
2554
2555
2556
2557
2560
2561
2564
2565
2566
2568
2571
2575
2581
2582
2584
2585
2586
2587
2591
2592
2596
2604
2607
2611
2612
2614
2615
2617
2619
2621
2622
2626
2628
2631
2634
2641
2644
2645
2652
2653
2654
2656
2657
2658
2660
2667
2671
2672
2674
2679
2685
2688
2690
2691
2693
2695
2697
2704
2705
2708
2710
2711
2722
2723
2725
2727
2729
2732
2735
2736
2739
2741
2742
2748
2750
2751
2752
2753
2756
2761
2763
2764
2765
2766
2767
2768
2769
2781
2782
2784
2788
2800
2805
2806
2808
2811
2812
2814
2817
2821
2822
2829
2832
2834
2835
2838
2843
2853
2855
2858
2859
2862
2867
2868
2871
2872
2875
2877
2882
2883
2886
2887
2888
2889
2890
2891
2893
2895
2896
2905
2906
2907
2909
2910
2912
2913
2914
2918
2920
2924
2926
2928
2930
2935
2942
2943
2951
2952
2953
2954
2959
2961
2962
2969
2973
2974
2975
2977
2986
2987
2988
2989
2994
2995
2997
2998
2999
3001
3002
3004
3005
3010
3011
3012
3017
3018
3019
3020
3021
3026
3027
3033
3035
3038
3043
3044
3045
3047
3048
3052
3055
3060
3062
3068
3070
3072
3073
3074
3075
3076
3077
3081
3083
3091
3093
3096
3099
3102
3103
3105
3109
3116
3121
3122
3126
3131
3132
3134
3135
3137
3138
3139
3144
3147
3151
3152
3153
3154
3158
3160
3164
3167
3168
3171
3174
3185
3186
3194
3195
3196
3198
3200
3204
3207
3208
3210
3211
3213
3216
3217
3218
3220
3222
3230
3239
3240
3241
3245
3247
3248
3250
3252
3256
3257
3258
3259
3260
3263
3264
3265
3266
3268
3271
3272
3273
3277
3279
3280
3282
3285
3286
3288
3290
3292
3293
3294
3295
3296
3300
3309
3310
3313
3316
3320
3321
3322
3323
3326
3330
3331
3333
3336
3337
3341
3351
3352
3357
3360
3361
3362
3364
3371
3373
3374
3375
3378
3381
3383
3385
3386
3398
3400
3403
3404
3405
3408
3410
3415
3416
3417
3418
3420
3428
3429
3430
3432
3433
3434
3435
3439
3440
3441
3460
3462
3469
3470
3473
3480
3484
3485
3486
3489
3492
3499
3501
3504
3505
3506
3513
3516
3517
3518
3521
3524
3528
3529
3530
3531
3534
3536
3539
3541
3543
3544
3547
3548
3552
3553
3554
3563
3567
3568
3571
3574
3577
3578
3579
3580
3582
3586
3588
3591
3593
3597
3604
3607
3609
3611
3615
3617
3618
3619
3620
3622
3623
3625
3626
3634
3639
3640
3642
3643
3645
3646
3650
3653
3657
3660
3661
3663
3665
3667
3672
3673
3674
3675
3677
3678
3680
3684
3687
3688
3689
3690
3692
3694
3696
3700
3701
3702
3703
3704
3707
3709
3713
3719
3721
3722
3724
3727
3728
3731
3735
3736
3740
3741
3742
3747
3749
3750
3753
3756
3757
3760
3762
3763
3765
3766
3768
3770
3774
3777
3782
3784
3786
3788
3792
3795
3796
3797
3799
3803
3805
3807
3809
3812
3815
3816
3819
3820
3823
3824
3826
3827
3830
3831
3832
3835
3836
3841
3842
3843
3846
3848
3849
