0
0
1
2
2
3
3
3
4
5
5
6
7
8
9
10
10
11
12
13
14
17
20
24
27
32
37
42
47
52
57
61
72
82
92
107
107
107
107
107
107
107
107
107
107
108
108
108
108
108
108
108
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
110
111
112
112
113
114
114
114
114
114
114
114
114
114
115
116
116
116
117
118
119
120
121
121
122
122
122
122
122
122
123
124
125
125
126
127
127
127
128
128
129
130
130
130
131
132
132
132
133
133
134
135
135
135
136
137
137
137
137
137
138
138
138
138
139
139
139
143
147
150
155
155
157
158
161
164
164
167
170
175
179
179
182
183
188
193
193
195
199
204
209
209
211
215
220
225
226
226
229
231
234
246
251
260
271
281
293
302
302
302
302
302
302
302
302
302
302
302
303
303
304
304
305
306
306
306
306
307
308
308
309
310
310
310
310
311
312
312
312
312
312
313
313
314
314
314
314
314
314
314
314
314
314
314
314
315
315
315
316
316
317
318
319
320
320
321
322
323
324
324
324
324
324
324
324
325
325
325
325
326
326
327
328
328
328
328
328
329
329
329
329
330
331
331
331
331
331
331
331
331
331
331
331
332
333
333
333
333
333
333
333
333
333
333
333
333
333
333
334
334
334
334
336
341
345
350
355
359
362
364
367
370
372
377
382
387
391
396
400
404
409
409
410
410
411
412
412
413
413
414
415
416
417
418
419
419
420
421
422
423
424
425
425
426
427
427
428
428
428
429
430
430
431
432
433
434
435
435
436
437
438
439
442
445
449
452
457
462
467
472
477
482
485
496
506
516
534
534
534
534
534
534
534
534
534
534
535
535
535
535
535
535
535
536
536
536
536
537
537
538
539
540
541
542
543
544
544
544
544
544
545
545
545
545
545
545
546
547
548
548
549
550
550
550
550
550
550
550
550
550
551
552
552
552
553
554
555
556
557
557
558
558
559
560
561
562
563
564
565
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
590
590
591
592
593
594
595
595
599
602
605
610
610
610
614
618
622
622
624
627
632
636
636
640
645
650
655
659
664
669
674
679
684
689
694
699
704
705
709
714
719
722
734
743
753
766
778
792
803
803
803
803
803
803
803
803
803
803
803
804
804
805
805
806
807
807
808
808
809
810
810
811
812
812
813
814
815
816
817
818
819
819
820
820
821
821
821
821
821
821
821
821
821
821
821
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
835
836
837
838
839
840
841
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
862
862
862
862
862
863
864
864
864
864
865
866
866
866
866
866
866
866
867
867
868
868
868
869
872
876
881
886
891
896
899
903
907
910
913
918
923
928
933
938
943
948
953
953
954
954
955
956
956
957
958
959
960
961
962
963
964
964
965
966
967
968
969
970
