0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
3
4
4
4
4
4
4
4
4
5
5
6
8
8
8
9
10
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
17
17
17
17
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
23
23
23
23
23
23
23
23
23
23
23
23
23
25
28
30
30
31
32
32
32
33
33
34
36
36
36
36
41
41
41
47
47
47
48
48
48
50
55
60
60
63
63
66
67
67
72
72
82
87
96
102
106
110
110
110
110
114
117
127
128
138
154
168
181
187
197
197
197
197
197
197
197
197
197
197
197
197
197
198
198
198
198
202
202
202
202
202
202
202
202
202
202
205
208
208
208
209
212
212
213
215
215
215
215
215
215
216
217
217
218
218
218
221
221
223
223
226
227
227
228
228
231
234
236
236
238
241
245
246
247
249
253
256
261
261
261
261
261
261
261
264
266
269
272
272
273
273
275
277
281
286
287
291
294
297
302
305
308
311
315
317
322
322
327
327
328
328
333
336
341
341
343
344
346
356
365
369
369
376
388
391
403
413
425
434
441
452
462
473
476
488
493
498
503
503
503
508
510
515
515
520
525
530
535
540
540
545
550
555
555
556
556
556
556
557
557
558
558
558
558
558
558
561
563
563
563
566
568
568
577
577
578
578
584
594
599
599
603
608
623
627
632
639
652
652
652
652
657
662
667
672
672
672
672
672
672
672
672
672
672
672
672
672
672
672
672
672
675
678
678
681
683
683
683
683
683
684
684
684
684
685
685
686
689
694
694
697
702
705
705
710
710
713
718
721
721
721
721
724
727
727
727
730
730
733
738
741
741
741
743
743
744
746
748
748
750
750
750
753
755
755
758
758
758
761
761
761
761
762
762
765
767
771
774
777
782
785
788
793
796
799
804
807
807
807
809
809
814
817
818
821
831
843
855
862
873
875
877
880
887
893
899
904
909
910
913
925
931
941
952
958
968
979
985
995
1004
1010
1020
1024
1028
1033
1038
1041
1051
1058
1078
1098
1117
1134
1149
1159
1162
1164
1169
1169
1171
1176
1180
1185
1190
1195
1200
1205
1210
1210
1215
1215
1220
1225
1228
1233
1238
1238
1241
1244
1245
1245
1250
1253
1258
1262
1265
1270
1271
1274
1277
1277
1277
1282
1285
1288
1291
1294
1297
1300
1303
1306
1309
1310
1312
1312
1315
1318
1323
1328
1333
1338
1342
1345
1350
1355
1358
1363
1366
1369
1372
1377
1380
1385
1390
1395
1400
1405
1410
1413
1418
1423
1426
1431
1434
1437
1440
1445
1448
1453
1458
1462
1466
1471
1474
1479
1482
1485
1488
1492
1495
1500
1500
1505
1510
1513
1518
1523
1526
1531
1534
1539
1542
1545
1556
1568
1578
1583
1595
1607
1617
1629
1641
1653
1663
1670
1682
1692
1703
1710
1722
1732
1737
1742
1742
1742
1747
1752
1757
1757
1762
1767
1772
1777
1782
1782
1787
1792
1797
