0
1
2
2
2
3
4
5
6
6
7
8
9
10
10
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
30
30
30
30
31
33
33
36
36
39
40
43
46
50
55
55
57
66
78
92
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
124
124
124
124
124
125
125
126
127
127
128
128
129
129
129
129
129
129
129
129
129
129
129
129
130
130
130
131
132
133
133
133
133
133
133
133
134
135
135
135
136
136
136
137
137
137
137
137
137
137
137
137
137
137
137
137
138
138
139
140
140
140
140
140
140
140
140
141
141
141
142
142
142
142
142
142
142
146
146
150
150
150
153
158
163
168
168
169
169
169
172
176
176
176
176
176
179
184
184
187
187
187
187
191
206
218
233
248
263
263
263
263
263
263
263
263
263
263
263
263
263
263
263
264
265
265
265
265
265
265
265
265
266
266
266
266
267
267
267
267
267
267
267
267
267
267
267
267
267
267
268
269
269
270
270
270
271
271
271
271
271
271
271
271
272
273
273
273
273
273
273
273
277
281
285
289
293
298
303
307
311
312
313
314
315
315
315
315
315
316
317
318
319
319
320
321
322
323
323
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
345
347
349
353
358
363
368
373
378
382
387
392
397
402
407
418
432
447
462
476
502
502
503
504
504
504
505
505
505
505
506
507
507
507
508
509
509
510
511
511
511
511
511
511
511
511
512
512
512
512
512
513
514
514
515
516
517
518
519
520
521
522
523
523
524
524
524
524
524
524
524
524
525
526
527
528
529
530
531
532
533
534
534
535
536
537
538
539
540
541
542
543
544
545
546
547
547
548
548
549
550
551
552
553
554
555
556
557
558
559
560
561
561
561
561
562
563
564
565
566
566
566
567
568
569
570
573
577
581
586
591
596
596
596
600
604
608
612
613
617
622
627
632
637
637
637
637
637
642
647
647
652
652
652
652
657
671
678
689
704
719
719
719
719
719
719
719
719
719
720
721
721
721
721
722
723
724
724
724
724
724
725
726
726
727
727
727
727
728
728
728
728
728
728
728
729
730
730
730
730
730
731
732
733
733
734
734
734
735
736
736
736
736
736
736
737
738
739
739
740
740
740
741
741
745
749
753
758
763
768
773
778
783
784
785
786
787
