0
1
1
1
1
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
6
7
8
8
8
8
8
8
8
8
9
9
9
9
10
10
11
11
11
11
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
13
13
13
13
13
13
13
13
13
13
13
13
13
13
14
16
16
18
18
18
18
20
20
20
20
20
20
20
20
20
21
21
21
21
21
21
21
21
21
21
21
21
22
22
22
25
25
25
27
27
27
27
27
27
27
27
27
27
27
28
28
28
28
30
30
31
31
31
36
39
39
39
39
39
39
39
39
39
45
45
45
56
56
57
65
70
92
92
92
92
92
92
92
92
92
92
92
92
92
92
92
92
92
92
92
92
92
92
92
94
94
94
94
94
94
94
94
94
94
94
94
96
96
96
96
96
96
96
96
96
96
96
96
96
96
99
99
107
112
112
123
128
136
141
143
148
148
149
149
149
150
151
152
153
154
158
158
158
159
159
159
159
159
159
161
161
161
161
163
163
167
171
175
178
178
182
187
187
188
192
192
193
193
193
193
195
198
200
206
208
208
221
226
233
240
254
260
277
293
321
334
363
363
363
363
363
363
365
365
366
366
366
366
370
370
370
370
370
370
373
373
373
373
373
373
377
377
377
377
377
377
381
381
381
382
383
386
386
390
392
396
401
406
411
411
413
413
414
414
415
418
419
419
421
425
429
432
435
439
441
441
444
444
444
445
446
449
453
455
459
464
469
473
477
478
481
485
485
485
485
485
485
485
485
486
491
495
500
505
510
515
520
520
524
524
524
528
532
532
532
536
540
544
548
548
552
556
556
558
566
575
575
584
587
592
602
614
628
641
641
648
663
678
693
707
707
707
707
707
713
722
722
722
734
734
734
748
777
806
831
864
897
897
897
897
897
897
898
898
900
900
900
900
903
903
907
907
907
907
907
907
907
909
913
918
918
918
918
918
919
921
921
921
923
923
925
930
930
930
930
930
930
930
933
937
937
937
939
939
942
947
947
957
971
971
986
1001
1016
1021
1026
1031
