0
0
0
0
1
1
1
1
1
2
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
5
5
8
8
11
14
20
25
38
48
64
64
64
64
64
64
64
64
64
64
65
65
65
65
65
68
68
68
70
70
70
70
70
72
72
72
74
76
76
77
77
80
80
80
80
80
80
80
80
81
81
81
82
84
84
86
86
87
87
87
87
87
87
87
87
87
89
91
91
91
91
92
92
95
99
99
100
102
105
107
107
107
107
109
111
113
115
116
119
121
124
127
127
127
127
127
128
128
130
131
133
136
137
142
142
142
142
142
142
142
143
145
148
148
149
151
151
151
152
152
156
156
156
158
162
173
184
184
188
192
197
201
208
212
223
223
223
223
225
240
252
267
279
279
279
279
279
285
288
294
304
321
331
358
366
394
394
410
410
410
410
410
410
410
410
410
410
410
410
410
410
410
410
410
410
410
410
410
412
412
412
412
412
412
415
415
417
417
421
424
429
434
439
439
439
439
439
439
439
439
439
439
439
442
442
443
443
445
445
447
447
449
449
454
457
462
467
472
472
472
472
472
475
475
475
480
480
480
480
480
482
483
486
486
486
486
486
488
490
492
497
497
497
497
499
502
506
506
506
506
506
506
507
507
507
507
507
511
515
520
525
525
525
525
525
525
533
547
562
562
569
579
594
606
606
619
634
644
659
673
682
682
697
707
712
712
717
722
722
722
727
732
732
737
742
747
747
752
752
757
762
762
762
762
763
763
763
765
767
768
769
769
769
771
772
772
772
774
774
774
775
775
776
777
780
784
784
787
789
792
795
805
816
830
842
863
863
863
863
863
863
863
863
863
863
864
864
864
864
865
868
868
868
870
870
870
870
870
872
872
872
874
876
876
877
879
882
882
882
882
882
882
885
885
888
888
888
890
892
893
896
898
900
900
900
900
900
900
900
900
901
903
905
905
905
905
906
906
909
913
913
914
918
921
923
923
923
923
925
927
929
931
934
938
940
943
948
948
948
948
949
952
956
959
963
967
972
974
979
979
979
979
980
981
982
983
985
988
988
989
991
991
991
992
993
999
999
1000
1002
1006
1019
1030
1030
1034
1039
1047
1053
1061
1067
1078
1078
1078
1081
1085
1100
1112
1127
1139
1139
1139
1139
1139
1148
1155
1165
1177
1197
1213
1241
1253
1282
1282
1304
1304
1304
1304
1304
1304
1304
1307
1308
1308
1308
1309
1309
1309
1309
1309
1309
1309
1309
1309
1309
1312
1312
1312
1312
1312
1312
1315
1315
1318
1318
1323
1326
1331
1336
1341
1341
1341
1341
1341
1341
1341
1341
1344
1344
1344
1347
1347
1348
1348
1350
1350
1355
1355
1358
1358
1363
1366
1371
1376
1381
1381
1381
1381
1381
1386
1389
1392
1397
1398
1398
1398
1400
1405
1409
1414
1414
1414
1414
1414
1418
1423
1426
1431
1431
1431
1431
1433
1436
1440
1440
1440
1440
1440
1440
1443
1443
1443
1443
1443
1447
1452
1457
1462
1462
1462
1462
1462
1462
1473
1488
1503
1503
1510
1522
1537
1550
1550
1563
1578
1588
1603
1617
1627
1627
1642
1652
1657
1657
1662
1667
1667
1667
1672
1677
1677
1682
1687
1692
1692
1697
1697
1702
1707
1707
1707
1707
1708
1708
1712
1717
1719
1720
1721
1721
1721
1723
1724
1724
1728
1730
1731
1731
1732
1732
1733
1737
1746
1755
1760
1763
1768
1771
1776
1794
1805
1820
1832
1849
1849
1849
1849
1850
1850
1850
1850
1850
1853
1856
1860
1863
1867
1868
1871
1871
1871
1873
1875
1878
1880
1884
1886
1889
1892
1895
1899
1904
1908
1912
1915
1917
1921
1924
1929
1934
1939
1944
1947
1952
1957
1959
1964
1969
1974
1979
1981
1982
1982
1983
1983
1987
1992
1993
1994
1997
2000
2000
2000
2004
2007
2012
2015
2019
2019
2020
2025
2028
2030
2030
2033
2035
2040
2042
2047
2052
2057
2062
2067
2070
2075
2080
2085
2090
2095
2098
2103
2108
2113
2118
2123
2125
2130
2131
2131
2132
2133
2134
2135
2137
2142
2145
2150
2152
2157
2169
2174
2186
2192
2204
2210
2223
2234
2246
2261
2273
2278
2287
2300
2309
2324
2336
2351
2363
2375
2382
2397
2409
2424
2436
2451
2463
2463
2463
2467
2472
2484
2495
2510
2521
2543
2563
2589
2614
2640
2640
2665
2668
2671
2676
2676
2676
2677
2682
2685
2685
2688
2693
2693
2696
2700
2700
2700
2704
2704
2707
2710
2715
2716
2718
2721
2726
2729
2733
2736
2741
2744
2749
2754
2759
2764
2769
2772
2777
2781
2786
2789
2791
2795
2799
2800
2804
2807
2807
2810
2813
2818
2823
2828
2833
2838
2843
2848
2853
2858
2863
2868
2868
2868
2868
2868
2873
2878
2883
2888
2893
2894
2899
2904
2909
2914
2919
2922
2927
2932
2937
2942
2947
2952
2957
2962
2962
2967
2972
2977
2982
2982
2985
2989
2994
2994
2999
3000
3002
3003
3005
3010
3015
3020
3025
3028
3032
3035
3039
3044
3057
3072
3087
3102
3113
3125
3140
3153
3153
3166
3181
3196
3211
3226
3236
3251
3266
3276
3281
3281
3286
3291
3296
3301
3306
3311
3311
3316
3321
3326
3326
3331
3331
3336
3341
