0
0
0
0
3
4
4
4
4
5
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
9
12
12
14
20
20
20
21
26
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
29
29
29
29
30
32
32
32
32
32
35
38
38
38
38
38
41
42
42
42
42
42
42
42
42
42
42
42
42
42
44
45
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
51
55
59
60
61
64
65
66
69
69
69
69
69
69
69
69
69
69
69
69
70
70
70
70
70
70
70
70
70
72
78
87
99
99
103
112
112
116
121
121
121
123
123
127
138
139
139
139
139
139
139
139
139
139
139
139
139
139
139
139
139
139
139
139
139
139
139
139
139
139
139
140
140
140
140
140
140
140
140
140
140
143
143
143
143
144
144
144
144
144
144
144
145
145
145
145
145
147
148
148
148
151
153
155
159
159
159
159
159
162
162
162
166
170
172
176
180
180
181
184
184
184
184
185
188
188
188
189
189
189
189
189
196
196
197
197
207
213
224
224
232
241
246
249
250
250
252
254
254
254
254
258
262
265
270
273
273
278
281
284
284
284
284
288
289
289
289
289
293
297
297
297
297
297
297
297
297
299
299
302
302
302
302
302
302
310
315
315
317
326
326
326
331
337
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
345
345
345
345
346
348
348
348
348
348
352
356
356
356
356
356
359
360
360
360
360
360
360
361
361
361
361
361
361
361
364
367
370
370
370
370
370
370
370
370
371
372
372
372
372
372
372
372
377
382
386
388
390
394
398
399
403
403
403
404
404
404
404
404
404
404
404
404
406
406
406
407
407
407
407
410
410
412
421
435
449
451
460
471
472
484
490
491
492
498
501
514
534
546
551
557
557
557
557
557
557
557
557
557
557
557
557
557
557
557
557
557
557
557
557
557
557
557
559
561
562
562
562
562
562
562
562
562
562
566
566
566
566
567
567
567
567
567
567
567
570
570
570
573
574
579
583
583
583
587
589
591
595
598
598
598
598
601
601
601
606
611
614
619
624
624
628
632
632
632
632
635
639
639
639
640
640
640
640
640
651
653
657
659
673
683
694
706
718
733
744
748
753
758
762
767
767
767
771
775
780
785
790
795
795
800
805
810
810
810
810
814
815
815
815
815
819
823
823
823
823
823
823
823
823
826
826
830
830
830
830
830
830
839
844
845
847
857
857
857
863
869
876
876
876
876
876
876
876
876
876
877
877
877
877
877
877
877
877
877
877
877
877
877
877
877
877
877
877
877
877
877
877
879
879
879
879
884
889
889
889
889
889
894
899
899
899
899
899
904
905
905
905
905
905
908
910
910
910
910
910
910
910
913
917
921
921
925
929
929
933
934
934
937
939
939
939
939
939
939
939
944
949
954
957
960
965
970
971
976
977
978
983
983
983
983
983
983
983
983
983
985
985
985
986
988
988
988
999
1000
1004
1013
1027
1041
1043
1053
1065
1069
1082
1088
1089
1091
1097
1106
1128
1149
1162
1172
1181
1181
1181
1181
1181
1181
1181
1181
1181
1181
1181
1181
1181
1181
1181
1181
1181
1181
1181
1184
1184
1184
1184
1186
1188
1189
1189
1190
1190
1192
1192
1192
1194
1194
1198
1198
1198
1198
1199
1199
1199
1199
1201
1201
1201
1204
1204
1204
1207
1211
1216
1221
1221
1221
1225
1228
1230
1235
1238
1238
1238
1238
1241
1241
1241
1246
1251
1254
1259
1264
1265
1269
1274
1275
1275
1276
1279
1283
1284
1285
1288
1288
1288
1288
1290
1304
1308
1319
1324
1338
1350
1365
1377
1390
1405
1416
1420
1425
1431
1435
1440
1442
1442
1447
1451
1456
1461
1466
1471
1471
1476
1481
1486
1486
1486
1486
1490
1491
1494
1497
1500
1504
1508
1508
1508
1509
1509
1509
1512
1515
1518
1518
1522
1530
1530
1530
1533
1544
1556
1560
1565
1567
1579
1599
1603
1621
1631
1641
1641
1644
1647
1647
1647
1650
1650
1651
1654
1656
1657
1657
1659
1661
1663
1663
1666
1666
1666
1666
1666
1666
1669
1673
1673
1673
1674
1676
1681
1685
1689
1693
1698
1703
1708
1713
1716
1717
1719
1723
1728
1733
1733
1737
1742
1746
1751
1752
1752
1754
1758
1758
1762
1764
1764
1769
1774
1777
1782
1787
1791
1795
1799
1801
1805
1809
1809
1813
1814
1814
1817
1819
1819
1819
1824
1824
1824
1829
1834
1839
1844
1848
1852
1857
1860
1861
1866
1867
1870
1875
1884
1895
1910
1922
1936
1947
1951
1960
1972
1979
1985
1990
1999
2012
2026
2040
2052
2066
2080
2094
2108
2118
2131
2143
2150
2160
2166
2171
2182
2191
2210
2237
2264
2281
2293
2307
2310
2311
2314
2317
2322
2326
2330
2335
2337
2342
2344
2347
2352
2352
2357
2361
2366
2367
2372
2376
2381
2384
2387
2391
2394
2396
2399
2401
2406
2409
2412
2416
2421
2426
2431
2435
2440
2445
2449
2454
2459
2462
2467
2472
2477
2482
2487
2492
2497
2502
2507
2512
2517
2522
2527
2532
2537
2540
2545
2550
2555
2560
2565
2569
2574
2579
2582
2587
2592
2595
2600
2605
2609
2612
2615
2620
2625
2628
2633
2638
2639
2641
2645
2648
2663
2675
2689
2700
2715
2728
2743
2755
2769
2784
2796
2807
2817
2826
2831
2836
2841
2846
2851
2856
2861
2866
2871
2876
2881
2886
2891
2896
