0
0
1
2
2
2
2
2
3
4
4
5
6
7
7
8
8
9
10
11
12
12
12
15
17
20
23
24
27
29
32
37
42
50
57
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
70
71
71
71
71
71
71
71
72
73
73
73
73
73
73
73
73
73
74
75
75
75
75
75
75
76
77
78
79
79
79
80
80
81
82
83
83
83
83
83
83
84
85
86
87
88
88
88
88
88
88
89
89
89
90
91
92
93
93
93
93
94
95
96
96
97
97
98
98
98
98
98
98
98
98
99
99
100
101
102
102
103
103
105
109
110
112
113
115
115
117
117
120
124
127
130
134
139
143
147
151
156
159
163
167
172
176
176
176
176
176
179
183
188
192
202
212
223
234
244
251
259
259
259
259
259
259
259
259
260
260
260
260
260
260
260
260
260
261
261
261
261
262
262
262
262
262
262
262
262
263
263
263
263
263
264
265
265
266
266
267
268
268
269
269
270
271
271
271
271
271
271
271
271
272
273
273
273
273
273
273
274
275
275
276
276
277
278
278
278
279
280
280
280
280
280
280
280
280
280
281
282
283
284
284
284
284
284
285
285
286
287
287
287
287
287
287
288
288
288
288
289
289
290
291
292
293
293
293
293
293
293
293
294
295
296
297
298
298
298
299
300
300
305
310
310
314
319
323
327
330
335
339
344
344
348
352
356
361
361
366
368
368
368
369
369
369
369
370
370
371
372
372
373
374
375
376
376
377
377
378
379
380
380
381
382
382
382
382
382
383
384
384
385
386
387
387
388
388
389
390
391
392
392
396
401
403
406
409
411
416
419
422
422
431
440
446
451
451
451
451
451
451
451
451
451
451
451
451
451
451
452
452
452
453
454
454
454
454
455
455
455
455
456
457
457
457
457
457
457
457
458
459
460
461
462
462
463
464
465
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
479
480
481
482
482
482
482
482
482
483
484
485
486
487
487
488
489
490
491
492
493
494
495
496
497
498
498
499
500
501
502
503
503
504
504
505
505
505
505
505
505
505
505
506
506
507
508
509
511
514
518
523
528
529
532
535
535
535
536
538
543
548
553
557
562
567
571
576
581
586
590
590
595
600
603
603
603
603
603
605
610
615
619
631
638
649
658
662
662
673
673
673
673
673
673
673
673
674
674
675
675
675
676
677
677
678
679
679
680
681
682
682
682
682
682
682
682
683
684
685
685
685
686
686
687
687
688
688
689
690
691
692
692
693
693
693
693
693
694
694
694
694
695
696
696
697
698
698
698
699
700
701
701
702
703
704
705
706
707
708
708
708
708
708
708
708
709
710
711
712
713
714
714
714
714
714
715
716
717
718
718
718
718
718
719
720
721
721
722
723
723
724
725
726
727
727
728
728
728
728
728
729
730
731
732
732
733
734
735
736
736
741
746
746
751
756
761
765
768
773
778
783
783
788
793
796
801
801
806
810
810
810
811
811
811
811
812
812
813
814
814
815
816
817
818
818
819
819
820
821
822
