2
5
8
9
12
16
18
21
22
24
26
27
31
32
34
35
37
40
42
48
51
52
54
55
64
71
73
86
91
95
99
102
103
106
108
111
115
116
120
121
123
125
127
129
131
135
136
137
138
139
144
146
148
150
151
152
157
158
163
165
167
169
174
176
181
186
187
190
198
201
202
203
208
211
213
215
221
223
226
230
236
237
238
241
242
246
248
249
259
261
262
270
273
281
285
289
290
291
295
296
297
302
303
305
306
307
311
313
314
316
319
322
327
331
332
333
334
341
343
345
346
356
357
358
360
363
367
369
373
376
377
380
384
385
386
388
390
398
399
401
403
408
409
410
411
413
417
422
424
425
426
427
428
435
436
440
442
444
446
447
448
450
451
452
453
454
456
461
462
465
467
470
475
478
480
481
485
486
491
495
497
500
501
504
508
510
517
518
522
523
524
529
536
539
544
546
547
550
551
553
554
556
557
558
560
565
567
568
572
573
577
582
585
586
588
590
591
596
598
602
604
606
608
610
614
615
617
623
626
627
628
632
633
634
635
638
639
646
647
649
650
654
657
658
660
664
667
669
670
673
674
676
677
678
681
684
686
690
691
693
696
698
699
701
707
708
712
714
717
719
720
724
729
734
736
738
739
741
742
746
750
753
755
759
761
762
763
766
770
771
772
773
775
777
782
784
786
790
795
797
801
803
805
808
809
812
813
819
824
827
829
830
831
837
838
839
851
853
855
857
859
867
869
872
874
875
876
877
883
884
885
888
892
899
900
903
907
909
911
917
918
920
921
925
926
927
929
933
934
939
940
944
945
950
953
954
960
961
962
965
967
969
971
974
976
980
982
984
986
991
992
994
995
996
997
1000
1001
1002
1004
1008
1014
1019
1025
1026
1027
1029
1034
1035
1037
1038
1040
1050
1052
1054
1055
1058
1062
1063
1064
1068
1070
1071
1076
1077
1078
1083
1086
1089
1094
1096
1098
1099
1100
1101
1104
1107
1114
1126
1129
1133
1136
1137
1145
1148
1150
1152
1153
1155
1157
1162
1166
1169
1173
1176
1178
1179
1180
1181
1182
1183
1184
1187
1192
1197
1198
1199
1201
1202
1203
1207
1208
1209
1212
1216
1218
1219
1220
1226
1228
1242
1249
1252
1258
1260
1263
1266
1268
1269
1273
1274
1275
1277
1278
1279
1280
1284
1286
1288
1290
1293
1295
1296
1297
1298
1301
1305
1309
1312
1316
1318
1320
1324
1326
1328
1332
1335
1339
1343
1344
1346
1348
1350
1353
1355
1356
1362
1363
1365
1366
1371
1373
1377
1380
1383
1384
1385
1386
1391
1392
1393
1400
1402
1408
1413
1418
1420
1421
1422
1426
1429
1432
1433
1435
1437
1438
1440
1444
1445
1447
1448
1449
1450
1453
1454
1455
1458
1459
1460
1461
1462
1463
1464
1469
1470
1471
1480
1485
1486
1488
1491
1492
1493
1494
1496
1497
1499
1500
1501
1504
1505
1508
1510
1512
1513
1515
1517
1519
1521
1522
1523
1529
1530
1531
1532
1533
1539
1544
1547
1550
1554
1561
1566
1567
1571
1572
1574
1575
1577
1579
1581
1583
1584
1591
1593
1599
1600
1607
1608
1613
1620
1624
1627
1628
1630
1631
1632
1636
1639
1644
1647
1651
1652
1653
1654
1661
1662
1666
1668
1670
1679
1687
1690
1693
1696
1698
1702
1704
1705
1707
1711
1720
1722
1725
1728
1729
1731
1732
1735
1738
1740
1742
1744
1748
1750
1751
1753
1758
1759
1762
1766
1773
1775
1781
1783
1786
1788
1790
1794
1797
1798
1804
1805
1806
1807
1810
1811
1813
1814
1825
1831
1832
1834
1842
1843
1848
1849
1851
1852
1856
1859
1861
1864
1866
1867
1874
1876
1877
1880
1888
1890
1893
1899
1901
1904
1905
1907
1908
1916
1919
1920
1921
1923
1926
1929
1931
1932
1945
1946
1952
1956
1957
1960
1962
1963
1966
1968
1973
1978
1981
1983
1985
1989
1990
1991
1997
2004
2007
2009
2011
2015
2016
2018
2019
2021
2028
2032
2036
2038
2039
2040
2044
2048
2050
2055
2062
2067
2068
2071
2074
2075
2078
2079
2082
2084
2085
2089
2090
2091
2095
2098
2105
2112
2117
2120
2124
2126
2127
2128
2129
2136
2137
2138
2142
2143
2145
2146
2147
2150
2154
2155
2159
2161
2162
2164
2165
2171
2174
2176
2178
2180
2183
2184
2186
2187
2190
2194
2207
2213
2217
2220
2221
2226
2227
2228
2230
2233
2235
2236
2237
2238
2240
2241
2246
2247
2248
2257
2258
2259
2263
2265
2267
2268
2272
2273
2280
2282
2284
2290
2291
2292
2296
2297
2298
2299
2301
2303
2310
2311
2312
2314
2315
2319
2323
2327
2330
2331
2332
2335
2339
2342
2345
2346
2347
2350
2352
2353
2354
2355
2366
2368
2371
2372
2380
2385
2387
2390
2392
2393
2397
2398
2400
2402
2403
2404
2409
2412
2414
2416
2419
2420
2423
2425
2427
2429
2430
2432
2433
2435
2437
2440
2442
2444
2448
2450
2451
2452
2453
2456
2458
2459
2462
2463
2464
2465
2466
2468
2470
2473
2474
2482
2490
2491
2493
2494
2498
2501
2502
2503
2505
2506
2507
2508
2513
2514
2519
2523
2524
2530
2532
2533
2534
2537
2542
2545
2547
2549
2551
2555
2556
2558
2561
2563
2564
2565
2566
2567
2569
2572
2573
2574
2576
2581
2583
2585
2586
2587
2591
2596
2598
2600
2603
2606
2607
2608
2612
2613
2614
2615
2616
2619
2621
2622
2626
2627
2628
2633
2635
2638
2639
2640
2641
2642
2644
2645
2649
2655
2656
2657
2658
2663
2664
2669
2670
2673
2675
2676
2678
2681
2684
2685
2686
2688
2689
2691
2693
2695
2699
2702
2707
2709
2711
2714
2715
2716
2720
2721
2722
2725
2729
2736
2738
2740
2743
2748
2749
2753
2754
2757
2761
2762
2763
2764
2765
2769
2770
2772
2773
2778
2779
2780
2784
2786
2790
2797
2799
2800
2808
2809
2812
2814
2815
2816
2817
2818
2821
2824
2827
2836
2838
2839
2843
2845
2846
2848
2849
2852
2856
2858
2859
2860
2861
2862
2866
2870
2871
2873
2875
2877
2887
2888
2891
2893
2894
2898
2901
2910
2912
2915
2919
2921
2924
2928
2932
2934
2937
2941
2942
2948
2951
2952
2953
2954
2956
2959
2960
2962
2964
2965
2967
2968
2970
2972
2973
2977
2979
2981
2982
2983
2986
2990
2991
2992
2994
2995
2996
3003
3007
3011
3012
3013
3014
3017
3018
3019
3021
3023
3024
3025
3027
3030
3031
3032
3036
3041
3043
3047
3049
3050
3051
3053
3057
3060
3064
3065
3072
3079
3081
3082
3083
3087
3088
3089
3097
3100
3111
3113
3115
3118
3120
3124
3125
3130
3131
3138
3139
3140
3142
3144
3150
3159
3161
3163
3164
3166
3169
3170
3174
3176
3179
3181
3182
3184
3185
3187
3190
3192
3197
3199
3200
3207
3209
3211
3215
3219
3223
3224
3228
3229
3232
3234
3235
3241
3243
3244
3248
3249
3250
3251
3255
3256
3258
3260
3261
3262
3264
3269
3272
3274
3275
3278
3287
3289
3291
3295
3299
3300
3306
3312
3313
3318
3322
3323
3325
3329
3330
3334
3338
3340
3341
3345
3347
3350
3356
3357
3359
3367
3369
3370
3371
3372
3376
3377
3381
3390
3392
3393
3395
3396
3401
3403
3405
3406
3407
3412
3414
3415
3419
3420
3422
3424
3434
3435
3436
3437
3438
3441
3442
3443
3444
3445
3447
3449
3456
3460
3461
3462
3464
3466
3468
3469
3470
3471
3472
3474
3477
3481
3485
3486
3487
3489
3495
3498
3502
3503
3505
3507
3512
3513
3516
3521
3525
3526
3528
3532
3533
3536
3537
3539
3540
3542
3547
3548
3549
3551
3554
3555
3557
3559
3564
3565
3570
3576
3578
3579
3583
3584
3587
3589
3592
3595
3597
3599
3606
3609
3612
3613
3614
3615
3616
3634
3636
3638
3639
3640
3642
3643
3649
3653
3654
3656
3659
3660
3663
3665
3666
3673
3677
3678
3683
3685
3686
3688
3689
3690
3693
3697
3699
3701
3706
3710
3711
3714
3715
3716
3719
3720
3723
3724
3729
3737
3739
3743
3745
3748
3753
3755
3756
3757
3759
3761
3762
3765
3766
3768
3770
3772
3774
3775
3776
3778
3782
3786
3790
3794
3802
3803
3807
3808
3812
3813
3814
3815
3816
3817
3818
3824
3832
3836
3843
3845
3847
3848
3849
3851
3852
3853
3854
3856
3869
3870
3871
3873
3874
3877
3878
3879
3880
3883
3886
3888
3889
3891
3893
3894
3895
3896
3898
3901
3902
3910
3913
3915
3920
3922
3924
3925
3926
3930
3931
3933
3934
3938
3939
3943
3949
3950
3953
3954
3956
3957
3961
3963
3968
3973
3974
3975
3978
3979
3981
3984
3985
3987
3988
3989
3990
3994
3996
3998
4005
4010
4013
4015
4017
4018
4019
4021
4024
4029
4036
4038
4041
4042
4044
4045
4049
4052
4054
4057
4058
4059
4060
4062
4066
4067
4069
4070
4071
4073
4076
4078
4084
4086
4087
4088
4091
4093
4094
4097
4099
4100
4104
4105
4109
4110
4111
4116
4125
4127
4132
4134
4135
4139
4143
4148
4151
4152
4153
4155
4156
4160
4162
4164
4165
4167
4174
4180
4181
4184
4186
4187
4188
4191
4193
4200
4205
4210
4212
4216
4217
4220
4222
4226
4229
4231
4233
4235
4236
4238
4239
4240
4243
4246
4248
4250
4252
4255
4256
4261
4265
4268
4270
4272
4277
4280
4284
4289
4290
4291
4292
4297
4298
4299
4300
4302
4306
4308
4310
4311
4313
4315
4317
4320
4325
4326
4327
4330
4332
4337
4341
4344
4345
4346
4350
4351
