0
2
10
12
13
16
17
19
20
22
23
26
29
30
31
32
36
37
38
42
44
45
46
51
54
55
57
58
65
68
71
74
75
78
81
82
83
87
88
92
101
107
108
110
111
114
115
116
119
120
122
123
124
132
133
135
136
139
140
141
143
144
145
146
150
151
155
156
162
164
168
170
172
175
178
179
180
181
182
184
186
187
188
189
190
191
192
193
195
196
199
201
203
204
206
207
209
210
211
212
213
217
218
221
224
228
229
232
234
240
247
248
249
251
252
254
256
257
263
265
269
270
273
278
279
281
282
283
284
285
286
288
290
291
295
300
306
307
310
313
314
316
317
318
319
321
323
324
328
329
330
331
333
337
339
341
343
345
346
350
351
353
356
357
358
363
365
371
373
374
380
381
383
384
385
387
390
396
398
402
406
407
408
409
413
415
417
423
424
427
428
433
434
435
442
447
449
450
454
455
460
462
463
464
465
466
467
469
472
475
476
480
482
484
485
487
490
491
492
493
497
499
500
503
504
507
510
511
515
516
517
519
520
521
522
523
525
526
528
529
531
532
534
536
539
540
548
552
553
554
555
558
559
562
567
571
573
585
586
591
592
596
597
599
600
601
602
605
607
611
614
615
616
620
621
623
625
626
627
628
630
632
633
635
639
641
642
647
649
656
661
664
674
677
679
680
681
690
691
693
695
697
700
704
705
711
712
713
717
718
721
722
724
725
730
731
732
735
738
741
742
747
749
755
756
757
762
763
766
772
776
777
778
781
782
783
785
786
787
792
795
798
799
801
802
804
809
810
813
815
816
822
824
826
829
830
834
836
840
844
846
847
848
851
854
858
859
862
866
868
870
871
873
876
877
879
881
886
887
889
892
894
903
907
913
915
917
919
922
923
924
925
930
931
933
935
936
938
939
940
944
945
946
947
952
953
955
957
960
961
966
969
976
978
979
981
991
994
999
1001
1002
1005
1006
1007
1008
1014
1018
1019
1022
1025
1027
1030
1038
1042
1043
1045
1050
1053
1055
1057
1058
1063
1064
1065
1068
1070
1075
1077
1079
1082
1083
1088
1092
1093
1094
1095
1099
1102
1105
1106
1110
1111
1113
1118
1121
1126
1129
1132
1133
1135
1140
1148
1150
1153
1156
1157
1161
1166
1167
1168
1172
1174
1177
1180
1181
1182
1183
1186
1187
1188
1189
1190
1191
1194
1195
1196
1197
1201
1202
1206
1209
1210
1214
1218
1220
1221
1222
1224
1225
1231
1232
1235
1239
1240
1242
1243
1245
1246
1247
1251
1253
1260
1267
1268
1269
1270
1273
1274
1276
1278
1286
1288
1292
1293
1299
1309
1311
1317
1318
1319
1321
1323
1327
1330
1332
1333
1334
1343
1348
1349
1350
1351
1353
1358
1360
1361
1362
1363
1365
1366
1368
1369
1370
1371
1376
1385
1386
1388
1389
1392
1399
1400
1401
1403
1409
1410
1415
1418
1420
1421
1422
1426
1427
1428
1429
1430
1435
1436
1437
1438
1440
1444
1446
1448
1449
1454
1455
1460
1461
1462
1463
1467
1469
1474
1476
1479
1480
1483
1487
1493
1499
1502
1503
1505
1506
1512
1518
1520
1521
1522
1531
1534
1537
1538
1542
1543
1544
1546
1547
1552
1553
1554
1555
1556
1558
1560
1565
1568
1570
1573
1582
1583
1584
1587
1588
1590
1598
1599
1600
1601
1605
1609
1612
1616
1617
1618
1621
1624
1627
1629
1634
1635
1638
1639
1641
1646
1647
1651
1653
1655
1656
1658
1659
1660
1663
1665
1666
1669
1670
1671
1673
1675
1677
1679
1682
1685
1686
1687
1689
1690
1691
1692
1694
1697
1698
1700
1701
1702
1708
1710
1713
1714
1715
1717
1718
1725
1730
1731
1732
1741
1743
1745
1749
1751
1752
1756
1758
1759
1761
1765
1766
1767
1771
1772
1773
1775
1777
1785
1787
1788
1789
1790
1791
1794
1795
1797
1800
1801
1804
1811
1813
1814
1818
1821
1822
1825
1826
1828
1829
1835
1840
1842
1843
1846
1847
1848
1851
1852
1854
1855
1858
1863
1866
1868
1869
1872
1873
1874
1875
1881
1883
1885
1887
1888
1893
1896
1898
1907
1911
1912
1913
1923
1925
1929
1930
1934
1935
1936
1938
1941
1944
1946
1948
1950
1951
1953
1954
1956
1961
1965
1972
1974
1976
1978
1980
1982
1983
1986
1994
1995
2003
2004
2007
2008
2009
2010
2011
2012
2014
2019
2021
2023
2028
2030
2034
2036
2038
2039
2050
2052
2053
2058
2059
2060
2061
2063
2064
2066
2068
2070
2071
2075
2076
2078
2079
2082
2086
2087
2092
2094
2095
2102
2103
2104
2105
2106
2107
2108
2109
2111
2113
2115
2116
2117
2119
2121
2123
2124
2126
2128
2130
2135
2136
2150
2162
2164
2165
2169
2173
2177
2180
2181
2184
2185
2188
2190
2191
2193
2195
2197
2198
2200
2201
2202
2204
2205
2207
2209
2213
2218
2220
2222
2224
2225
2226
2227
2228
2229
2230
2233
2234
2236
2237
2239
2244
2248
2255
2258
2259
2269
2270
2275
2277
2279
2280
2283
2285
2286
2288
2289
2291
2294
2295
2299
2303
2307
2312
2313
2314
2315
2320
2321
2322
2324
2327
2328
2329
2330
2333
2335
2338
2343
2344
2345
2347
2350
2352
2355
2360
2362
2363
2367
2369
2373
2376
2378
2379
2380
2381
2383
2385
2387
2389
2391
2392
2397
2399
2402
2403
2404
2405
2407
2409
2410
2411
2412
2413
2414
2416
2419
2427
2428
2429
2436
2445
2448
2449
2451
2453
2455
2456
2457
2458
2461
2462
2463
2466
2467
2468
2469
2473
2474
2475
2476
2478
2479
2480
2481
2484
2485
2491
2492
2496
2498
2500
2502
2503
2504
2505
2506
2507
2511
2512
2521
2522
2524
2533
2540
2542
2543
2547
2550
2557
2560
2566
2567
2569
2571
2581
2584
2586
2594
2597
2598
2600
2601
2605
2607
2610
2614
2619
2620
2623
2624
2625
2630
2634
2636
2638
2641
2645
2649
2652
2654
2657
2658
2659
2660
2662
2664
2665
2666
2667
2675
2678
2682
2683
2684
2687
2689
2694
2703
2705
2706
2712
2715
2716
2717
2720
2721
2727
2729
2731
2734
2735
2736
2740
2741
2744
2753
2754
2756
2757
2758
2762
2764
2774
2775
2778
2779
2781
2783
2784
2791
2800
2802
2803
2810
2812
2817
2822
2826
2828
2829
2830
2833
2835
2836
2839
2842
2843
2855
2856
2859
2861
2864
2867
2869
2871
2872
2874
2877
2878
2879
2880
2882
2883
2885
2886
2890
2891
2893
2894
2895
2899
2900
2901
2905
2906
2907
2908
2910
2913
2914
2920
2924
2928
2929
2930
2932
2938
2942
2947
2948
2950
2951
2952
2953
2957
2959
2960
2961
2964
2968
2971
2973
2974
2975
2976
2979
2984
2985
2987
2988
2990
2991
2995
2999
3001
3003
3004
3005
3007
3008
3009
3012
3015
3018
3020
3024
3026
3027
3028
3029
3031
3033
3036
3040
3041
3043
3046
3047
3051
3052
3053
3055
3056
3057
3058
3061
3062
3065
3066
3068
3073
3076
3081
3083
3084
3085
3089
3093
3096
3100
3102
3103
3104
3106
3108
3109
3114
3115
3116
3117
3119
3120
3128
3133
3136
3137
3139
3141
3143
3144
3145
3147
3150
3151
3154
3159
3160
3165
3169
3170
3171
3172
3173
3175
3183
3184
3188
3189
3190
3191
3192
3193
3195
3197
3198
3200
3201
3202
3205
3209
3211
3212
3230
3232
3233
3235
3240
3244
3248
3250
3252
3253
3255
3258
3262
3263
3266
3269
3271
3272
3278
3279
3280
3285
3286
3288
3291
3292
3296
3297
3301
3302
3304
3307
3310
3314
3315
3317
3321
3324
3328
3329
3332
3335
3337
3339
3341
3343
3345
3348
3353
3354
3355
3356
3357
3360
3361
3363
3364
3366
3367
3370
3373
3378
3379
3384
3387
3389
3394
3396
3397
3400
3402
3405
3408
3409
3410
3412
3413
3414
3417
3418
3419
3426
3429
3433
3439
3444
3445
3451
3453
3456
3459
3460
3463
3464
3469
3473
3476
3482
3483
3486
3488
3489
3492
3494
3500
3501
3502
3505
3508
3511
3512
3513
3514
3516
3517
3518
3520
3524
3525
3526
3528
3529
3531
3532
3535
3538
3539
3540
3552
3555
3557
3561
3564
3567
3568
3570
3571
3572
3577
3578
3579
3580
3583
3586
3588
3591
3593
3597
3598
3599
3600
3606
3607
3609
3610
3615
3616
3617
3619
3621
3629
3631
3632
3636
3642
3645
3649
3653
3657
3658
3663
3665
3667
3668
3672
3674
3676
3678
3679
3682
3685
3688
3689
3691
3693
3694
3696
3701
3703
3704
3707
3710
3712
3717
3718
3720
3722
3724
3726
3727
3729
3732
3733
3734
3735
3736
3741
3745
3746
3747
3749
3752
3754
3757
3760
3761
3762
3763
3764
3765
3767
3768
3769
3776
3778
3779
3780
3781
3787
3790
3792
3794
3803
3805
3807
3808
3809
3810
3814
3815
3819
3821
3823
3825
3826
3827
3828
3829
3833
3835
3836
3841
3844
3846
3848
3854
3861
3866
3867
3868
3869
3870
3876
3879
3880
3884
3885
3887
3888
3890
3894
3895
3897
3908
3910
3913
3919
3925
3927
3929
3930
3932
3934
3935
3937
3939
3941
3944
3945
3949
3950
3953
3957
3958
3963
3965
3966
3967
3969
3970
3971
3973
3980
3984
3988
3990
3996
3997
3999
4000
4003
4004
4011
4013
4015
4019
4023
4024
4027
4030
4032
4033
4034
4035
4037
4039
4044
4045
4047
4051
4052
4053
4054
4059
4062
4063
4064
4065
4072
4074
4075
4077
4079
4082
4085
4086
4095
4096
4101
4102
4103
4104
4109
4113
4116
4118
4120
4125
4129
4131
4132
4135
4136
4140
4141
4147
4148
4151
4153
4155
4157
4159
4160
4161
4163
4166
4167
4168
4170
4171
4172
4173
4175
4193
4195
4196
4198
4205
4206
4212
4213
4214
4215
4217
4218
4221
4222
4223
4227
4234
4239
4242
4244
4247
4249
4250
4254
4256
4257
4258
4265
4266
4268
4271
4272
4278
4283
4285
4286
4289
4291
4292
4293
4294
4295
4304
4308
4312
4314
4323
4325
4327
4329
4333
4336
4343
4344
4349
4350
4352
4355
4356
4359
4360
4361
4362
4366
4369
4375
4378
4385
4386
4388
4392
4399
4404
4405
4406
4407
4412
4413
4414
4416
4422
4424
4430
4433
4435
4436
4437
4440
4445
4453
4457
4459
4461
4462
4463
4464
4466
4469
4471
4475
4477
4479
4483
4484
4485
4486
4489
4490
4491
4493
4499
4502
4508
4513
4516
4518
4522
4531
4532
4534
4539
4542
4546
4556
4558
4559
4560
4561
4568
4570
4571
4572
4573
4577
4579
4581
4583
4587
4589
4590
4591
4593
4595
4599
4602
4605
4606
4610
4611
4613
4616
4619
4630
4635
4639
4641
4643
4646
4648
4653
4654
4657
4658
4659
4663
4667
4669
4670
4672
4673
4674
4677
4679
4681
4684
4685
4689
4690
4692
4695
4701
4706
4711
4712
4714
4717
4723
4724
4725
4726
4727
4733
4735
4737
4738
4739
4743
4745
4746
4747
4748
4749
4754
4756
4757
4759
4761
4763
4766
4767
4775
4776
4777
4778
4779
4785
4787
4790
4792
4795
4797
4798
4800
4801
4803
4809
4812
4814
4815
4816
4825
4829
4832
4837
4838
4840
4841
4842
4844
4846
4847
4850
4855
4856
4857
4858
4862
4864
4868
