0
2
3
4
7
9
10
20
21
23
24
25
31
32
33
40
43
45
49
50
51
52
55
59
62
66
67
71
72
73
75
76
77
78
86
98
99
100
101
102
103
105
108
109
110
116
122
123
125
127
130
134
135
137
139
140
141
145
146
148
151
154
157
159
162
163
165
166
168
169
173
175
176
177
178
179
180
181
183
184
187
188
189
190
195
196
200
202
205
206
208
209
211
212
217
219
223
224
226
232
234
235
237
241
242
244
248
249
250
251
252
253
254
255
258
260
263
265
268
269
271
274
277
282
284
285
290
299
300
301
304
307
310
311
314
321
322
323
330
331
332
333
335
336
339
342
343
347
350
351
352
355
356
360
361
362
366
368
369
373
375
382
384
385
387
389
390
391
396
401
403
404
406
409
410
413
419
422
423
425
426
428
429
433
434
437
438
440
442
445
447
448
449
450
453
459
461
463
465
468
470
471
472
473
474
477
478
479
483
487
488
492
498
500
501
502
504
507
508
509
510
513
515
516
517
518
520
521
525
526
528
529
533
535
536
537
538
541
545
548
549
553
556
557
559
560
561
562
564
566
567
568
569
570
574
575
579
582
584
585
586
587
588
589
592
594
597
598
602
609
611
613
616
620
624
626
634
647
648
654
656
657
658
662
663
664
667
668
669
676
678
679
680
683
691
697
701
703
707
709
711
714
715
717
722
723
724
726
727
728
729
731
732
733
734
737
743
744
747
754
756
759
760
763
764
766
767
768
770
771
772
773
774
775
776
780
781
785
788
795
803
804
809
811
815
816
817
818
822
824
827
828
831
833
836
838
839
849
850
851
853
855
856
858
859
861
867
868
871
877
879
880
883
889
903
905
906
908
910
911
917
918
919
920
922
923
925
930
933
935
938
939
944
946
950
952
953
956
960
963
965
966
967
968
974
975
980
982
983
986
987
988
991
992
994
995
999
1005
1008
1010
1011
1012
1013
1014
1015
1016
1021
1022
1024
1026
1029
1031
1032
1033
1036
1037
1038
1041
1051
1053
1055
1058
1060
1062
1065
1069
1074
1076
1079
1081
1087
1092
1093
1095
1097
1099
1104
1107
1110
1111
1113
1114
1116
1117
1123
1124
1126
1127
1129
1132
1133
1135
1136
1137
1145
1147
1148
1149
1150
1152
1154
1159
1163
1166
1167
1168
1173
1174
1178
1183
1185
1186
1187
1189
1190
1193
1195
1200
1209
1212
1214
1215
1216
1221
1224
1225
1226
1228
1229
1231
1233
1234
1239
1240
1241
1242
1244
1252
1253
1256
1258
1260
1261
1262
1268
1270
1271
1275
1278
1283
1285
1289
1291
1292
1294
1295
1296
1299
1305
1308
1313
1314
1316
1321
1327
1328
1330
1331
1332
1335
1337
1343
1345
1346
1349
1355
1356
1357
1367
1370
1372
1374
1376
1377
1379
1381
1382
1383
1386
1387
1391
1392
1394
1397
1406
1411
1412
1413
1414
1416
1423
1425
1427
1431
1436
1437
1442
1445
1446
1447
1448
1454
1456
1458
1459
1460
1462
1465
1467
1468
1469
1471
1472
1473
1482
1485
1493
1499
1500
1503
1510
1511
1516
1525
1526
1528
1529
1531
1532
1533
1534
1536
1543
1544
1545
1549
1551
1552
1555
1560
1561
1562
1565
1571
1573
1576
1577
1579
1580
1581
1582
1583
1586
1588
1591
1592
1599
1600
1601
1603
1605
1613
1614
1616
1617
1619
1624
1625
1630
1631
1634
1635
1638
1639
1640
1641
1642
1643
1645
1649
1659
1663
1665
1666
1667
1669
1673
1678
1690
1692
1693
1694
1696
1706
1710
1712
1713
1714
1719
1724
1730
1732
1734
1736
1741
1744
1745
1747
1749
1755
1757
1758
1760
1761
1762
1765
1770
1771
1773
1776
1779
1782
1787
1788
1789
1792
1797
1800
1804
1806
1809
1810
1811
1812
1813
1814
1818
1821
1824
1827
1828
1834
1838
1843
1845
1846
1847
1849
1857
1858
1859
1861
1868
1871
1872
1876
1879
1882
1883
1887
1888
1889
1890
1891
1892
1893
1903
1904
1905
1909
1913
1915
1917
1920
1923
1931
1937
1942
1943
1946
1947
1948
1949
1950
1954
1955
1957
1959
1962
1964
1966
1970
1971
1972
1975
1978
1981
1983
1986
1990
1993
1998
2002
2004
2007
2013
2014
2015
2016
2018
2023
2024
2030
2032
2033
2038
2043
2045
2050
2053
2056
2057
2058
2063
2064
2065
2066
2073
2077
2078
2082
2084
2085
2086
2087
2089
2090
2091
2098
2101
2102
2104
2105
2106
2108
2109
2110
2114
2115
2116
2117
2118
2123
2126
2131
2135
2140
2141
2143
2146
2148
2151
2152
2155
2158
2162
2163
2167
2169
2172
2175
2176
2177
2179
2186
2188
2190
2191
2195
2196
2197
2198
2201
2203
2205
2209
2213
2215
2216
2217
2218
2219
2221
2223
2224
2225
2227
2228
2233
2236
2238
2243
2246
2248
2249
2250
2251
2254
2259
2260
2263
2269
2271
2273
2274
2275
2277
2278
2280
2282
2284
2286
2287
2290
2292
2293
2294
2295
2296
2299
2301
2307
2311
2313
2317
2320
2322
2323
2324
2328
2330
2331
2332
2336
2340
2341
2344
2348
2350
2354
2355
2360
2361
2365
2366
2369
2370
2372
2376
2378
2382
2384
2385
2386
2390
2392
2396
2401
2404
2405
2406
2407
2409
2411
2414
2415
2421
2423
2424
2425
2432
2436
2443
2444
2447
2451
2453
2456
2459
2460
2467
2469
2474
2476
2481
2482
2485
2487
2492
2493
2494
2495
2500
2502
2505
2507
2508
2509
2511
2515
2517
2518
2519
2520
2528
2529
2530
2531
2534
2535
2538
2540
2548
2551
2555
2557
2561
2570
2571
2572
2575
2577
2578
2579
2581
2588
2590
2592
2594
2595
2599
2600
2609
2610
2615
2617
2618
2620
2621
2622
2624
2626
2627
2629
2630
2638
2645
2646
2648
2653
2654
2657
2666
2668
2671
2672
2678
2681
2683
2686
2690
2691
2699
2700
2701
2709
2712
2713
2715
2717
2719
2721
2722
2724
2725
2726
2729
2730
2731
2732
2735
2736
2739
2741
2742
2745
2746
2748
2750
2751
2758
2760
2761
2763
2767
2771
2772
2774
2776
2777
2778
2779
2780
2782
2785
2786
2789
2790
2792
2794
2798
2800
2810
2813
2814
2818
2821
2822
2823
2827
2829
2833
2834
2835
2837
2840
2841
2842
2845
2853
2857
2858
2859
2862
2863
2864
2872
2874
2875
2878
2880
2886
2887
2888
2889
2891
2892
2894
2896
2898
2904
2906
2913
2919
2922
2925
2930
2931
2934
2937
2940
2941
2944
2945
2946
2947
2948
2955
2956
2959
2961
2962
2964
2967
2969
2971
2973
2979
2980
2981
2983
2985
2986
2987
2988
2990
2991
2992
2994
2996
3000
3002
3003
3010
3012
3016
3017
3019
3024
3026
3027
3033
3039
3040
3041
3045
3047
3051
3053
3055
3056
3059
3065
3069
3071
3073
3074
3075
3076
3077
3078
3080
3084
3085
3086
3087
3089
3097
3099
3100
3103
3113
3115
3116
3121
3122
3126
3131
3134
3138
3140
3142
3144
3147
3149
3157
3161
3163
3165
3168
3171
3173
3175
3176
3178
3179
3181
3183
3184
3186
3187
3189
3195
3196
3197
3198
3203
3204
3207
3209
3210
3213
3214
3216
3217
3218
3222
3225
3226
3232
3234
3235
3236
3237
3238
3239
3244
3247
3253
3258
3259
3262
3267
3270
3273
3276
3279
3283
3284
3285
3286
3287
3288
3292
3294
3296
3297
3301
3302
3303
3305
3306
3307
3310
3311
3314
3317
3318
3322
3323
3325
3329
3330
3334
3336
3341
3342
3344
3345
3350
3352
3355
3358
3363
3365
3369
3373
3374
3376
3377
3382
3385
3386
3388
3390
3393
3396
3405
3406
3407
3412
3413
3414
3416
3417
3419
3421
3423
3425
3426
3430
3431
3433
3435
3442
3443
3445
3447
3449
3453
3455
3456
3459
3462
3463
3464
3466
3468
3471
3473
3475
3476
3477
3478
3482
3483
3484
3488
3491
3493
3497
3498
3502
3504
3505
3508
3511
3513
3515
3517
3518
3519
3522
3523
3524
3525
3526
3527
3531
3535
3536
3537
3539
3540
3551
3558
3567
3570
3571
3572
3573
3578
3579
3581
3583
3587
3590
3592
3593
3595
3596
3598
3599
3600
3601
3602
3607
3608
3611
3612
3615
3618
3619
3620
3621
3622
3623
3624
3625
3626
3631
3633
3635
3636
3639
3641
3642
3646
3647
3649
3651
3653
3654
3657
3660
3663
3664
3666
3670
3672
3673
3676
3677
3678
3684
3688
3690
3693
3694
3695
3699
3705
3708
3709
3713
3716
3718
3721
3722
3724
3728
3731
3733
3735
3736
3740
3742
3745
3746
3747
3748
3750
3751
3752
3753
3756
3765
3767
3771
3772
3775
3776
3778
3780
3784
3786
3787
3788
3791
3792
3793
3796
3797
3801
3803
3807
3809
3810
3811
3813
3815
3818
3819
3822
3827
3828
3829
3832
3833
3836
3838
3840
3841
3842
3847
3854
3857
3858
3861
3862
3864
3865
3867
3873
3876
3877
3878
3882
3884
3885
3886
3888
3890
3893
3895
3896
3897
3902
3905
3908
3909
3910
3911
3912
3913
3918
3919
3923
3926
3935
3936
3939
3940
3941
3942
3946
3948
3950
3953
3957
3958
3960
3964
3965
3967
3968
3969
3972
3973
3976
3979
3981
3984
3985
3988
3994
3998
4000
4002
4008
4011
4012
4013
4014
4017
4018
4021
4023
4025
4028
4030
4032
4033
4036
4037
4039
4042
4044
4046
4050
4052
4057
4059
4065
4067
4070
4071
4074
4075
4076
4080
4085
4088
4090
4099
4102
4103
4104
4113
4115
4120
4121
4124
4126
4127
4130
4133
4140
4141
4142
4144
4146
4148
4149
4150
4154
4161
4163
4166
4167
4169
4171
4173
4176
4177
4181
4182
4185
4186
4189
4191
4192
4194
4200
4201
4203
4206
4207
4209
4210
4213
4214
4217
4218
4222
4223
4225
4226
4229
4230
4231
4239
4245
4246
4247
4249
4252
4254
4260
4262
4263
4264
4265
4266
4270
4272
4273
4274
4275
4278
4280
4281
4282
4284
4289
4291
4292
4293
4295
4296
4297
4302
4306
4307
4310
4314
4316
4321
4327
4330
4331
4338
4339
4340
4341
4342
4343
4349
4351
4352
4354
4355
4359
4360
4366
4368
4369
4370
4371
4373
4376
4378
4379
4380
4383
4387
4389
4393
4398
4403
4404
4405
4408
4409
4410
4411
4416
4417
4419
4422
4423
4425
4426
