0
0
0
0
1
1
1
1
1
1
2
2
2
2
2
2
2
2
5
5
9
9
9
9
9
9
9
9
10
10
12
12
19
29
38
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
58
61
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
66
66
66
66
66
66
66
70
70
70
70
70
70
74
75
79
84
84
84
84
84
85
85
85
87
87
91
95
99
99
99
100
100
100
100
100
100
103
103
103
117
117
117
117
117
120
130
139
148
161
176
188
203
203
206
215
229
243
255
255
255
255
258
262
267
273
284
294
320
347
374
379
390
412
412
412
412
412
412
412
412
414
414
417
418
418
418
418
423
423
423
423
428
428
430
430
435
440
445
446
448
450
454
459
464
465
467
470
474
476
479
484
489
492
497
502
507
512
517
520
525
528
532
537
542
547
552
557
560
564
569
569
572
572
577
581
586
589
594
597
599
603
607
610
615
619
619
622
622
622
622
625
630
633
633
633
636
640
655
664
678
691
706
718
731
746
758
769
783
783
794
799
804
809
813
813
818
823
828
833
838
843
847
852
857
862
862
862
862
863
863
864
864
865
865
866
866
866
866
866
866
866
866
869
870
874
874
874
874
875
876
877
877
881
887
890
894
904
916
928
952
952
952
952
952
952
952
952
952
952
952
952
952
952
952
952
952
952
952
952
952
952
952
952
952
952
952
953
953
953
953
953
955
955
956
960
963
963
963
963
963
963
963
963
963
963
963
963
963
963
963
963
963
966
968
968
968
968
968
968
972
972
972
972
972
972
976
979
984
989
989
990
990
990
992
994
995
998
1001
1005
1010
1014
1014
1014
1015
1016
1017
1017
1019
1022
1026
1026
1026
1040
1040
1040
1044
1044
1048
1058
1067
1077
1090
1105
1117
1132
1133
1138
1150
1165
1180
1192
1193
1196
1198
1201
1205
1210
1222
1235
1246
1272
1300
1327
1334
1346
1372
1372
1372
1372
1372
1372
1372
1372
1374
1374
1377
1379
1379
1379
1379
1384
1384
1384
1384
1389
1389
1391
1391
1396
1401
1406
1407
1409
1411
1415
1420
1425
1426
1428
1431
1435
1437
1440
1445
1450
1453
1458
1463
1468
1473
1478
1481
1486
1489
1493
1498
1503
1508
1513
1518
1521
1526
1531
1531
1534
1534
1539
1543
1548
1551
1556
1559
1561
1566
1571
1574
1579
1584
1584
1587
1587
1587
1587
1590
1595
1598
1598
1598
1601
1605
1620
1629
1643
1656
1671
1683
1696
1711
1723
1734
1749
1749
1761
1767
1772
1777
1781
1781
1786
1791
1796
1801
1806
1811
1815
1820
1825
1830
1830
1830
1830
1831
1831
1832
1832
1833
1833
1834
1834
1834
1834
1834
1834
1834
1834
1837
1838
1842
1842
1842
1842
1844
1847
1852
1854
1863
1875
1880
1889
1914
1929
1941
1966
1966
1966
1966
1966
1966
1966
1966
1966
1966
1966
1966
1966
1966
1966
1966
1966
1966
1966
1966
1966
1966
1966
1966
1966
1966
1966
1967
1967
1967
1969
1969
1971
1974
1978
1982
1985
1985
1986
1987
1989
1989
1989
1989
1989
1989
1991
1992
1993
1993
1995
1997
2001
2005
2008
2008
2008
2008
2008
2008
2012
2012
2012
2012
2012
2012
2016
2020
2025
2030
2032
2037
2040
2041
2045
2050
2053
2058
2063
2068
2073
2077
2078
2078
2079
2080
2081
2082
2085
2089
2093
2094
2104
2118
2126
2136
2146
2151
2158
2171
2183
2193
2207
2222
2234
2249
2259
2271
2285
2300
2315
2327
2330
2335
2338
2341
2346
2351
2365
2379
2391
2420
2448
2475
2487
2499
2526
2526
2526
2526
2526
2526
2528
2529
2533
2536
2541
2544
2544
2549
2549
2554
2556
2557
2560
2565
2565
2569
2569
2574
2579
2584
2585
2590
2593
2597
2602
2607
2611
2616
2621
2626
2631
2636
2641
2646
2651
2656
2661
2666
2671
2676
2679
2684
2687
2691
2696
2701
2706
2711
2716
2721
2726
2731
2731
2736
2737
2742
2746
2751
2754
2759
2762
2764
2769
2774
2777
2782
2787
2787
2790
2790
2790
2790
2793
2798
2801
2804
2806
2811
2816
2831
2841
2855
2869
2884
2896
2909
2924
2936
2947
2962
2967
2979
2991
2996
3001
3005
3005
3010
3015
3020
3025
3030
3035
3039
3044
3049
3054
3057
3058
3061
3062
3062
3063
3063
3064
3064
3065
3070
3075
3080
3081
3084
3085
3088
3091
3092
3096
3109
3124
3139
3152
3164
3169
3171
3184
3196
3201
3228
3255
3270
3282
3309
3309
3309
3314
3319
3324
3329
3329
3332
3332
3336
3336
3341
3346
3349
3349
3352
3352
3355
3355
3360
3360
3360
3365
3370
3375
3380
3385
3390
3395
3400
3404
3409
3414
3419
3423
3426
3426
3429
3434
3437
3437
3437
3437
3440
3445
3450
3451
3452
3452
3457
3462
3467
3471
3474
3479
3484
3489
3494
3499
3504
3509
3514
3519
3524
3529
3533
3538
3543
3548
3551
3556
3559
3562
3567
3572
3577
3582
3587
3591
3595
3599
3600
3600
3601
3602
3603
3604
3607
3611
3615
3629
3643
3658
3670
3682
3697
3712
3727
3742
3754
3769
3784
3799
3811
3826
3838
3850
3865
3879
3893
3905
3908
3913
3916
3919
3924
3929
3943
3957
3969
3999
4027
4054
4066
4078
4105
4110
4114
4119
4124
4129
4134
4139
4144
4147
4152
4155
4156
4161
4164
4169
4174
4179
4184
4189
4194
4199
4204
4209
4214
4219
4222
4227
4230
4234
4239
4244
4249
4254
4259
4264
4269
4274
4279
4284
4289
4294
4299
4304
4309
4314
4317
4322
4325
4329
4334
4339
4344
4349
4354
4359
4364
4368
4373
4378
4383
4388
4392
4397
4400
4405
4408
4410
4414
4418
4421
4425
4429
4430
4433
4434
4435
4436
4439
4444
4447
4450
4453
4458
4463
4478
4490
4504
4519
4534
4546
4559
4574
4586
4597
4611
4616
4628
4640
4645
4650
4655
4660
4665
4670
4675
4680
4685
4690
4695
4700
4705
4710
