0
0
0
0
2
2
2
2
2
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
10
11
12
12
15
15
15
22
26
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
30
31
32
32
36
38
38
38
38
38
38
38
38
38
38
38
40
40
40
40
42
44
49
52
52
52
52
52
52
52
52
52
52
52
52
52
55
59
62
62
62
62
62
62
62
64
67
70
70
70
70
70
70
70
75
80
85
85
85
85
85
85
86
91
96
101
101
101
101
106
106
106
111
111
111
112
113
114
114
118
118
118
122
122
126
127
130
142
152
164
176
186
186
190
192
192
197
199
204
218
229
235
252
276
287
290
293
303
303
303
303
303
303
303
303
303
303
303
303
304
304
304
306
306
307
307
309
309
309
309
312
313
313
314
317
322
327
327
327
328
329
331
334
335
335
335
336
337
338
341
341
341
341
341
343
346
350
350
353
355
355
355
355
357
359
362
362
363
365
370
370
370
371
376
380
385
385
385
385
387
388
391
394
395
395
398
399
401
404
405
408
412
412
417
422
425
428
433
436
441
444
449
454
459
459
462
462
465
466
471
476
481
484
484
487
490
501
510
521
523
531
541
550
563
577
589
601
615
626
637
651
654
665
676
681
686
690
690
695
699
704
704
709
714
719
724
729
729
734
739
744
744
744
744
746
746
746
746
746
748
749
749
749
749
749
749
749
749
749
749
749
749
749
749
749
749
755
756
757
757
761
764
767
778
786
800
800
800
800
800
800
800
800
800
800
800
800
800
800
800
800
800
800
803
803
803
806
806
806
809
809
809
812
812
812
812
812
812
812
812
812
812
812
812
812
816
819
822
826
831
833
833
833
833
833
833
833
833
833
833
833
835
835
836
838
841
846
851
854
854
854
854
854
854
854
854
854
854
854
854
854
858
863
868
868
868
868
868
868
868
872
876
881
881
881
881
881
881
881
886
891
896
897
898
898
899
899
900
905
910
915
915
915
918
930
930
930
941
941
942
943
945
947
947
959
961
963
972
972
976
978
981
993
1003
1018
1033
1045
1045
1050
1053
1053
1058
1060
1068
1083
1095
1105
1128
1153
1176
1181
1186
1203
1203
1203
1203
1203
1203
1203
1203
1203
1204
1205
1205
1206
1208
1210
1213
1213
1215
1217
1220
1220
1220
1220
1225
1228
1230
1232
1235
1240
1245
1245
1245
1246
1247
1249
1252
1253
1253
1253
1255
1257
1260
1265
1265
1265
1265
1265
1269
1274
1279
1279
1284
1288
1288
1288
1288
1290
1292
1295
1295
1296
1298
1303
1303
1303
1304
1309
1313
1318
1318
1318
1318
1320
1321
1324
1327
1328
1328
1331
1333
1335
1338
1339
1342
1346
1346
1351
1356
1359
1362
1367
1370
1375
1378
1383
1388
1393
1393
1396
1396
1399
1400
1405
1410
1415
1418
1418
1421
1424
1438
1448
1460
1465
1475
1487
1497
1512
1526
1538
1550
1564
1576
1588
1603
1606
1618
1630
1635
1640
1644
1644
1649
1653
1658
1658
1663
1668
1673
1678
1683
1683
1688
1693
1698
1698
1698
1698
1700
1700
1700
1700
1700
1702
1703
1703
1703
1703
1703
1703
1703
1703
1704
1704
1706
1706
1706
1706
1706
1706
1713
1716
1719
1720
1728
1740
1751
1772
1787
1805
1805
1805
1805
1805
1805
1805
1805
1805
1805
1805
1805
1805
1805
1805
1805
1805
1805
1808
1808
1808
1811
1811
1811
1814
1814
1814
1817
1817
1817
1817
1817
1817
1817
1817
1817
1817
1817
1817
1817
1821
1824
1827
1832
1837
1840
1840
1841
1841
1842
1846
1848
1848
1849
1849
1850
1854
1854
1855
1857
1860
1865
1870
1873
1873
1873
1873
1873
1873
1873
1873
1873
1873
1873
1873
1873
1877
1882
1887
1889
1889
1891
1893
1893
1895
1899
1904
1909
1909
1909
1909
1909
1909
1909
1914
1919
1924
1927
1930
1934
1936
1936
1939
1944
1949
1954
1954
1954
1962
1974
1979
1984
1996
1996
2004
2005
2007
2015
2015
2027
2031
2035
2046
2046
2050
2052
2055
2067
2077
2092
2107
2119
2124
2129
2135
2140
2145
2150
2162
2177
2189
2205
2230
2255
2280
2292
2304
2326
2326
2326
2326
2326
2326
2326
2326
2326
2329
2332
2335
2338
2341
2345
2348
2348
2352
2355
2358
2358
2360
2360
2365
2368
2372
2375
2378
2383
2388
2388
2388
2390
2392
2397
2400
2402
2402
2402
2405
2408
2411
2416
2416
2416
2416
2416
2421
2426
2431
2431
2436
2441
2441
2443
2443
2446
2448
2452
2452
2454
2459
2464
2464
2464
2466
2471
2475
2480
2480
2480
2480
2482
2483
2487
2491
2492
2492
2495
2497
2500
2503
2505
2509
2514
2519
2524
2529
2532
2537
2542
2545
2550
2553
2558
2563
2568
2568
2571
2571
2574
2575
2580
2585
2590
2593
2598
2603
2606
2621
2631
2643
2651
2661
2673
2684
2699
2713
2725
2737
2751
2763
2775
2790
2793
2805
2817
2822
2827
2831
2831
2836
2840
2845
2845
2850
2855
2860
2865
2870
2870
2875
2880
2885
2885
2885
2885
2887
2887
2888
2890
2890
2892
2893
2893
2893
2893
2893
2893
2893
2893
2894
2894
2896
2896
2896
2896
2904
2913
2922
2924
2933
2942
2950
2964
2976
2997
3012
3028
3028
3028
3028
3028
3028
3028
3028
3028
3030
3030
3030
3030
3030
3032
3035
3035
3035
3038
3038
3038
3041
3041
3041
3044
3044
3044
3047
3047
3047
3047
3047
3049
3052
3052
3054
3054
3054
3057
3059
3063
3068
3073
3078
3083
3086
3086
3088
3093
3098
3102
3104
3104
3106
3111
3113
3117
3117
3118
3119
3124
3129
3134
3137
3137
3142
3147
3147
3147
3152
3157
3157
3157
3161
3165
3170
3175
3180
3185
3187
3192
3197
3199
3204
3206
3211
3216
3221
3226
3231
3236
3239
3243
3246
3251
3256
3261
3264
3267
3271
3274
3274
3277
3282
3287
3292
3302
3313
3325
3337
3346
3355
3367
3371
3383
3396
3408
3420
3435
3447
3456
3465
3476
3487
3500
3512
3525
3540
3552
3567
3582
3594
3599
3609
3617
3622
3632
3637
3649
3664
3676
3692
3717
3742
3767
3782
3797
3819
3824
3828
3833
3836
3840
3845
3849
3854
3859
3864
3869
3874
3879
3884
3889
3889
3894
3899
3904
3908
3913
3914
3919
3924
3929
3933
3938
3943
3948
3951
3956
3961
3964
3969
3972
3975
3980
3985
3989
3994
3999
4004
4009
4014
4019
4024
4029
4034
4039
4042
4047
4052
4057
4062
4067
4072
4077
4082
4087
4090
4095
4100
4103
4108
4111
4116
4121
4126
4131
4136
4141
4146
4151
4156
4161
4164
4169
4174
4177
4182
4185
4190
4195
4200
4205
4210
4215
4218
4223
4228
4231
4236
4239
4244
4249
4254
4254
4257
4257
4262
4265
4270
4275
4280
4283
4288
4293
4296
4311
4323
4335
4347
4362
4374
4386
4401
4416
4428
4440
4455
4467
4479
4494
4497
4509
4521
4526
4531
4536
4536
4541
4546
4551
4551
4556
4561
4566
4571
4576
4576
4581
4586
4591
