0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
2
3
3
3
3
3
3
3
3
3
3
8
11
19
32
45
54
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
67
67
67
67
67
67
67
67
67
67
70
73
74
74
74
74
74
74
75
75
75
75
76
76
77
77
77
77
77
77
77
77
77
78
78
80
81
81
81
83
83
90
90
95
96
96
104
115
115
116
118
120
120
126
137
149
149
150
150
150
154
161
176
191
191
192
192
192
204
215
229
241
258
265
286
291
314
314
334
334
334
334
334
335
335
335
337
337
338
338
338
339
339
339
339
339
339
339
339
341
341
341
341
341
341
344
344
347
347
350
350
350
354
358
358
358
358
358
358
358
358
359
359
359
362
362
365
365
367
367
371
371
374
374
377
377
380
380
384
384
384
384
384
386
389
394
398
398
398
398
398
398
399
399
399
399
401
402
406
411
416
420
420
420
420
422
422
423
423
423
423
423
423
426
426
426
426
426
429
434
439
443
443
443
443
443
443
449
464
479
479
491
503
517
529
530
541
549
560
575
582
592
598
613
620
625
625
630
634
639
644
644
648
648
653
658
663
667
672
672
677
682
682
682
682
682
682
683
683
683
683
683
683
683
683
683
683
683
683
684
685
685
685
685
690
694
694
700
701
703
710
716
731
747
769
783
803
803
803
803
803
803
803
804
804
804
804
804
804
804
804
804
804
804
804
804
804
804
804
804
804
804
804
804
804
804
806
808
808
808
808
808
808
808
808
808
808
808
808
808
808
808
808
808
808
808
808
808
809
809
809
810
810
810
810
810
810
810
811
813
813
814
817
817
817
820
820
820
820
820
820
820
822
822
822
826
831
836
836
836
836
836
837
838
838
838
840
844
848
851
851
852
852
852
852
853
853
853
854
857
860
863
863
863
866
866
876
877
886
888
888
900
911
911
913
915
918
918
925
940
952
952
954
954
956
963
972
987
1002
1003
1008
1013
1017
1029
1040
1055
1067
1085
1094
1118
1126
1150
1163
1184
1184
1184
1184
1184
1185
1185
1185
1188
1188
1190
1191
1191
1194
1194
1194
1194
1194
1194
1194
1194
1198
1198
1198
1198
1200
1200
1204
1204
1208
1208
1213
1213
1213
1218
1223
1223
1223
1223
1223
1223
1223
1224
1227
1227
1227
1230
1230
1233
1233
1235
1235
1239
1239
1243
1243
1247
1249
1252
1254
1258
1258
1258
1258
1258
1262
1265
1270
1275
1275
1275
1275
1276
1276
1279
1283
1283
1283
1286
1289
1293
1298
1303
1308
1308
1308
1308
1311
1311
1312
1312
1312
1312
1312
1312
1315
1315
1315
1315
1315
1319
1324
1329
1334
1334
1334
1334
1334
1334
1340
1355
1370
1370
1382
1395
1410
1422
1425
1437
1445
1456
1471
1479
1489
1495
1510
1520
1525
1525
1530
1534
1539
1544
1544
1549
1549
1554
1559
1564
1568
1573
1573
1578
1583
1583
1585
1586
1587
1587
1588
1588
1588
1592
1597
1598
1599
1600
1600
1600
1600
1600
1601
1602
1602
1608
1616
1626
1633
1633
1643
1645
1657
1667
1674
1687
1700
1718
1729
1744
1747
1747
1750
1750
1753
1754
1757
1757
1757
1759
1763
1767
1767
1767
1767
1767
1767
1767
1771
1776
1776
1776
1776
1777
1781
1785
1790
1795
1798
1800
1802
1802
1802
1802
1805
1808
1811
1811
1811
1816
1820
1825
1830
1835
1835
1840
1845
1846
1846
1848
1851
1854
1859
1864
1869
1869
1869
1870
1870
1870
1870
1872
1875
1877
1878
1881
1886
1891
1894
1894
1896
1898
1900
1902
1902
1906
1911
1916
1921
1926
1931
1934
1939
1944
1949
1954
1955
1960
1965
1970
1975
1980
1985
1985
1988
1988
1993
1993
1994
1994
1997
2000
2005
2010
2013
2023
2032
2044
2046
2058
2067
2079
2085
2094
2106
2115
2121
2127
2139
2149
2164
2176
2191
2203
2211
2220
2233
2246
2261
2273
2288
2302
2307
2319
2329
2334
2346
2357
2369
2378
2391
2404
2424
2446
2466
2479
2496
2496
2496
2501
2501
2504
2504
2504
2509
2509
2514
2518
2523
2528
2529
2529
2531
2536
2538
2538
2538
2541
2541
2541
2541
2544
2544
2548
2548
2552
2552
2557
2562
2562
2567
2572
2572
2572
2575
2577
2577
2581
2584
2587
2587
2587
2590
2590
2593
2593
2596
2596
2601
2601
2606
2606
2611
2616
2619
2624
2629
2629
2629
2631
2633
2638
2641
2646
2651
2655
2660
2665
2670
2675
2680
2685
2688
2693
2698
2701
2705
2710
2715
2720
2723
2724
2727
2732
2737
2740
2743
2748
2753
2758
2758
2763
2767
2768
2772
2775
2780
2785
2790
2795
2797
2800
2805
2810
2813
2825
2840
2852
2855
2861
2874
2889
2901
2910
2922
2937
2952
2966
2979
2993
3007
3022
3037
3042
3042
3047
3052
3057
3062
3065
3070
3073
3078
3083
3088
3093
3098
3103
3108
3113
