11
10
10
10
10
10
10
10
10
10
10
10
9
9
9
9
9
9
9
9
9
9
8
8
8
8
8
8
8
8
8
8
8
8
8
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
6
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
6
6
6
6
6
6
5
5
5
5
4
4
3
3
3
3
2
2
1
1
1
1
1
1
2
2
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
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
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
6
6
6
6
6
6
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
6
6
6
6
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
8
8
8
8
8
8
8
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
9
9
8
7
7
6
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
6
6
5
5
5
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
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
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
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
4
4
4
4
4
4
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
3
2
2
2
2
2
1
2
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
4
4
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
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
2
2
2
2
1
1
0
0
0
0
0
0
0
1
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
3
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
4
4
4
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
4
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
5
4
4
4
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
5
5
5
5
4
4
3
3
3
5
6
6
7
7
7
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
12
12
12
12
12
12
12
13
13
13
13
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
14
14
14
14
14
14
14
13
13
13
13
13
13
13
13
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
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
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
12
12
12
12
12
12
12
12
12
11
11
11
11
11
11
11
11
11
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
12
12
12
12
12
12
12
13
13
13
13
13
13
13
14
14
14
14
14
14
15
15
15
16
16
16
18
18
19
19
20
21
23
24
25
25
26
26
27
27
27
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
30
30
30
29
29
29
28
27
27
26
26
25
25
24
24
23
23
23
22
22
22
22
22
22
22
21
21
21
21
21
21
21
20
20
20
20
20
20
20
19
19
19
19
18
18
17
17
17
16
16
16
16
15
15
15
15
15
14
14
14
14
14
13
13
13
13
13
13
12
12
12
12
12
12
12
11
11
11
11
11
11
11
11
11
10
10
10
10
10
10
10
10
10
10
10
10
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
8
8
8
8
8
8
8
8
8
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
9
12
13
13
13
13
14
14
14
13
13
13
12
12
12
12
12
12
11
11
11
11
11
11
11
10
10
9
9
9
9
8
8
8
8
8
8
8
8
8
8
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
9
10
10
10
11
12
12
12
13
13
13
15
15
16
16
17
17
17
17
16
16
13
12
11
10
9
8
7
5
3
3
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
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
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
4
4
4
5
5
5
5
6
6
6
6
6
6
6
5
5
4
4
4
4
4
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
5
5
5
5
5
6
6
6
6
6
7
7
7
7
7
7
7
7
6
5
5
4
4
4
3
3
3
3
3
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
4
4
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
9
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
9
9
9
9
9
9
9
8
8
8
8
9
10
11
11
12
12
15
16
16
17
18
18
21
21
21
21
22
22
22
22
21
20
19
18
17
16
16
13
12
12
12
11
10
10
9
9
8
8
8
8
8
8
8
8
8
7
6
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
6
6
6
6
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
6
6
6
6
6
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
6
6
8
9
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
10
10
10
10
10
10
10
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
11
11
11
11
12
12
12
12
12
12
13
13
13
13
14
14
14
14
15
15
15
15
15
15
16
16
16
16
16
16
16
17
17
17
17
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
16
14
14
14
13
13
12
12
12
12
12
11
11
11
9
9
9
9
8
8
8
8
8
7
7
8
8
8
8
8
8
9
9
10
10
10
10
10
10
11
12
15
16
16
17
18
18
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
18
17
16
16
15
15
15
15
14
14
14
14
13
13
12
12
12
12
12
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
12
12
12
12
13
14
14
14
14
15
15
15
16
16
16
16
16
17
17
17
17
18
18
18
19
19
19
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
21
21
21
21
21
21
21
21
21
21
21
21
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
20
20
20
20
20
20
20
20
20
20
20
20
20
19
19
19
19
19
18
17
17
17
16
16
16
15
15
15
15
14
14
14
14
14
14
14
13
13
13
12
12
12
12
11
11
11
11
11
11
11
11
11
11
11
11
11
12
12
12
12
12
12
13
13
13
13
13
13
14
14
14
15
15
15
13
13
13
11
11
11
10
10
10
10
10
12
12
12
13
13
13
14
14
14
14
14
15
15
15
15
15
15
16
16
16
16
16
16
16
16
17
17
17
17
17
18
18
18
19
19
19
20
20
20
22
22
22
22
22
22
22
21
21
20
20
20
19
19
19
19
19
19
18
16
16
16
16
16
16
15
15
15
14
14
14
14
14
14
13
13
13
13
12
12
12
12
11
10
10
10
10
10
10
10
10
10
10
10
10
10
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
11
11
11
11
11
11
11
11
12
12
12
12
12
12
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
15
15
15
15
15
15
15
15
15
15
15
15
14
14
14
14
13
13
13
13
13
13
12
12
12
12
12
12
11
11
11
11
11
11
11
11
11
11
11
11
10
10
10
10
10
10
10
10
10
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
8
8
7
7
7
6
6
6
6
6
5
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
6
6
8
8
8
8
8
8
8
9
10
11
11
12
13
13
14
14
15
15
15
16
17
19
19
21
21
22
23
24
24
24
23
22
21
18
17
17
16
16
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
13
13
13
13
13
13
13
12
12
12
12
11
11
11
11
10
10
10
10
10
9
9
9
9
9
9
9
9
8
8
8
8
7
7
7
7
7
7
7
7
7
7
7
6
6
6
6
6
6
5
5
5
5
7
8
10
12
12
13
13
14
18
22
24
26
27
26
26
25
20
18
17
17
17
17
16
15
15
15
13
12
12
11
9
9
9
9
9
8
8
8
8
8
8
8
6
6
6
6
6
6
6
7
7
7
7
8
9
8
8
8
8
7
7
6
5
5
5
5
5
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
11
11
11
12
12
12
12
12
12
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
12
12
12
12
12
11
11
11
11
11
12
12
12
12
12
12
13
13
13
13
13
13
13
13
14
14
14
15
15
16
19
21
22
23
24
24
25
27
27
29
29
30
31
31
32
34
36
38
39
41
43
45
49
52
55
57
61
65
70
70
71
71
72
72
73
74
75
75
75
75
76
81
82
69
63
57
56
55
53
47
42
36
29
28
25
23
23
24
25
26
27
27
29
29
30
30
29
28
26
25
20
19
17
15
13
12
12
12
11
11
10
9
9
9
8
8
7
6
6
6
5
5
7
9
10
10
11
13
14
15
15
16
16
19
19
20
20
22
24
27
29
29
32
33
33
33
34
34
35
35
35
37
39
39
40
43
45
48
49
50
50
51
52
52
50
50
50
49
48
48
47
46
44
43
43
41
41
40
39
36
36
35
35
34
33
33
32
32
31
30
30
29
29
28
28
28
28
27
25
25
25
24
24
23
23
22
21
20
20
19
17
17
16
15
13
13
12
11
11
11
10
10
11
12
12
12
12
13
13
13
14
14
15
15
15
15
15
14
14
14
14
14
14
14
13
13
12
12
12
12
12
12
11
11
11
11
11
10
10
10
10
10
10
9
9
9
8
8
8
8
8
8
8
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
6
6
6
6
5
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
9
10
13
15
16
17
18
19
20
22
22
23
25
25
26
27
28
29
29
29
30
31
31
32
32
33
34
34
41
43
45
48
50
51
52
52
54
56
59
60
61
60
60
58
58
57
54
54
53
53
53
52
50
49
49
48
45
43
42
42
41
40
38
36
35
34
31
30
29
28
27
25
24
22
19
16
15
15
15
15
15
14
14
11
8
8
7
8
10
11
11
13
15
15
16
16
17
18
19
19
19
19
19
19
19
19
18
18
18
18
18
18
18
18
19
19
20
21
23
23
24
25
25
26
28
28
29
29
29
30
30
31
33
35
35
35
35
34
34
34
33
32
31
31
30
29
28
27
27
27
26
26
26
25
25
24
24
24
23
23
22
21
20
18
18
17
17
16
15
13
13
11
10
9
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
9
9
10
10
12
12
13
14
15
15
17
17
18
18
19
19
21
21
21
22
21
20
19
19
18
18
17
16
14
14
14
13
13
13
13
12
12
12
12
11
11
10
10
10
10
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
11
11
11
11
11
11
12
12
12
13
13
13
13
13
14
14
14
14
15
15
15
15
15
15
16
16
16
16
16
16
16
16
17
17
17
17
18
18
18
19
19
19
20
20
20
20
20
19
19
19
19
19
18
18
18
17
17
16
16
16
15
15
15
14
14
13
13
13
12
12
12
11
11
11
11
10
11
12
14
15
17
21
24
25
26
26
27
28
28
29
30
31
32
29
29
29
28
27
24
23
23
22
22
22
21
19
18
14
14
13
13
10
9
9
8
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
11
11
11
11
11
11
10
10
9
9
9
9
9
9
9
9
10
10
10
11
11
11
11
12
12
12
12
12
12
12
12
12
12
12
12
12
12
11
11
11
11
11
11
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
13
13
13
14
14
15
18
19
19
20
21
21
21
21
22
22
23
23
24
24
24
24
24
24
24
23
23
22
21
21
21
20
19
18
18
18
17
16
16
15
14
13
11
11
11
11
11
12
12
12
12
12
12
12
13
13
13
13
13
14
14
14
14
15
15
15
16
16
16
16
16
16
16
16
16
16
15
15
15
15
15
15
14
14
14
14
14
14
13
13
12
12
12
12
12
12
11
11
11
10
10
10
10
9
9
9
9
9
9
9
9
9
9
8
8
8
8
10
13
13
14
15
17
18
19
22
23
23
27
28
28
29
32
32
35
36
43
44
44
41
40
38
37
37
35
33
32
31
29
28
27
24
23
21
18
17
16
16
15
15
15
14
14
14
14
14
14
14
13
13
13
13
13
11
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
9
10
10
10
10
10
11
11
11
11
12
12
13
14
14
14
14
15
15
16
16
17
18
19
20
21
23
29
30
30
30
33
35
36
37
38
38
35
35
32
25
25
24
20
20
17
16
12
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
12
13
14
15
17
18
18
19
19
20
23
24
24
25
29
31
36
38
42
44
46
46
45
45
44
43
43
42
41
40
40
39
39
38
36
36
35
34
34
34
33
31
30
30
27
26
23
23
22
21
19
18
18
18
17
15
15
14
14
12
10
10
10
10
10
10
10
10
10
10
10
10
9
9
9
9
9
9
9
9
9
9
9
9
9
8
8
8
8
8
8
8
8
9
9
9
9
9
10
11
11
12
13
13
13
13
13
13
13
13
13
13
13
13
12
12
12
12
12
12
11
11
11
11
11
11
11
11
11
11
10
9
8
8
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
8
8
9
10
10
10
10
10
10
9
8
8
8
8
8
8
8
8
8
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
10
11
11
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
10
10
10
10
9
9
8
8
8
8
8
8
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
8
9
9
9
10
10
11
11
12
13
13
13
14
14
14
14
14
15
15
15
16
16
17
17
17
15
15
15
14
14
15
16
16
16
16
15
15
14
13
13
13
13
13
12
12
12
11
11
11
11
11
11
11
11
11
11
12
12
12
12
12
12
12
12
12
11
10
9
7
7
7
7
8
8
8
9
9
9
9
9
8
8
7
7
7
7
7
7
7
7
6
6
6
5
5
5
5
5
5
5
5
5
6
6
6
7
8
8
8
9
9
9
9
10
10
10
10
11
11
12
12
12
12
13
13
14
16
17
17
14
13
11
9
9
9
9
9
9
8
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
6
5
3
3
3
3
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
9
9
9
9
9
9
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
10
10
11
11
11
12
12
13
14
14
15
15
15
16
16
16
17
18
19
20
21
22
22
22
24
25
26
26
26
26
25
24
23
23
22
22
20
19
19
17
16
14
12
11
10
9
8
8
8
12
12
13
13
14
15
17
17
17
18
18
18
18
18
19
19
19
19
20
20
20
20
21
22
22
22
28
32
38
35
35
34
34
34
33
33
33
32
31
26
26
38
38
38
38
39
39
42
43
48
50
47
45
46
49
53
57
64
61
56
55
54
54
56
57
57
58
59
59
59
51
47
46
46
45
42
42
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
38
38
38
38
38
38
38
38
38
38
37
37
37
37
37
36
36
36
36
36
36
36
35
35
34
34
34
33
33
33
33
32
32
32
32
33
33
37
38
39
39
38
37
37
35
35
35
35
35
36
36
38
38
39
40
42
42
42
43
44
44
44
40
40
40
40
39
39
38
38
37
36
36
36
36
36
36
36
36
36
36
38
38
38
41
41
41
42
43
44
46
47
49
50
51
52
52
52
52
53
54
55
57
57
61
62
62
65
66
66
67
68
68
68
68
68
68
68
68
68
68
68
68
68
68
70
71
72
77
79
83
86
90
84
75
72
66
62
62
65
67
67
66
64
61
61
60
60
59
58
56
52
45
42
41
43
45
45
44
45
45
49
48
47
46
46
45
44
44
43
43
43
43
43
40
35
33
33
33
33
34
45
46
44
43
42
46
47
48
49
51
51
52
52
53
55
56
57
50
44
41
41
41
41
41
41
41
42
42
42
42
42
43
43
45
46
46
49
49
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
53
53
53
53
55
55
55
56
56
56
56
56
56
56
56
56
55
55
55
55
55
56
57
58
59
60
61
62
63
65
66
66
67
68
72
74
76
76
77
80
84
85
85
89
106
112
123
134
150
160
201
217
212
184
178
175
171
165
162
157
142
136
133
124
120
108
107
99
96
93
85
81
78
71
64
61
59
58
57
55
54
52
50
47
47
47
47
48
48
49
50
51
51
50
50
50
49
49
49
49
49
48
48
48
48
47
47
47
47
47
46
46
46
46
46
45
45
45
45
46
47
48
48
49
50
51
51
52
53
53
54
54
55
59
59
60
61
62
62
63
64
65
65
66
71
74
81
83
85
86
87
89
90
90
95
98
101
103
103
108
113
120
122
125
127
128
135
136
138
140
143
144
145
147
144
136
124
123
122
120
119
118
117
115
113
110
108
106
104
97
96
94
92
86
85
82
80
78
76
74
71
67
62
58
56
54
49
46
46
46
46
46
46
46
45
45
45
45
45
45
45
45
45
44
44
44
44
44
44
42
42
42
42
41
40
40
39
38
38
36
36
34
34
34
34
34
33
33
33
32
32
32
32
31
31
30
30
29
28
27
26
25
25
24
24
23
23
23
23
23
23
22
22
22
21
21
21
21
21
21
20
20
20
20
20
20
20
20
20
20
20
20
19
19
19
19
19
19
19
19
18
18
17
17
16
16
15
14
12
10
8
8
8
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
8
8
9
9
9
10
10
10
11
12
12
12
13
13
13
13
13
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
14
14
14
14
14
14
13
13
12
12
11
11
10
10
9
9
8
8
8
7
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
8
9
10
10
11
11
11
11
11
11
11
11
11
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
8
8
8
8
8
6
6
6
6
5
5
5
4
4
4
4
4
4
4
4
4
4
4
5
5
6
6
6
7
8
8
8
8
8
8
8
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
9
10
11
14
15
16
17
17
18
21
21
21
21
19
19
19
19
18
18
18
17
17
17
18
19
21
21
22
22
22
22
22
22
22
22
22
22
22
23
24
25
24
24
24
23
22
22
22
22
23
23
23
23
23
22
21
20
19
19
19
20
20
25
24
22
20
17
15
17
20
22
20
20
20
20
20
19
19
17
15
14
13
13
13
12
12
12
11
10
11
11
11
11
11
12
12
12
13
13
13
13
13
13
12
12
12
12
11
11
10
10
9
9
9
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
12
12
12
12
13
13
13
13
13
12
12
11
11
11
12
12
12
13
13
14
14
15
16
17
17
17
16
16
16
15
14
14
14
14
14
14
14
14
15
15
15
15
15
15
16
16
16
17
17
17
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
17
17
17
17
17
17
17
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
17
18
18
18
18
19
19
19
19
20
20
20
20
20
20
21
21
21
21
23
23
23
23
23
22
22
22
22
22
22
22
22
22
22
22
23
23
21
21
21
21
21
21
21
18
18
18
18
18
19
20
20
20
21
23
24
24
25
25
25
25
25
25
25
26
26
26
26
24
23
22
23
24
24
24
24
24
24
26
26
26
26
26
26
26
27
28
29
29
29
29
29
29
30
33
35
36
37
38
40
46
50
82
82
83
83
84
79
78
78
77
76
73
60
37
30
29
29
29
29
29
29
28
28
28
28
28
28
27
27
27
26
26
26
25
25
24
23
22
22
22
22
23
28
29
32
33
38
39
40
42
42
42
42
42
42
42
42
39
33
31
25
22
16
12
13
13
13
14
14
14
14
14
14
14
14
14
14
13
13
13
12
12
12
12
11
11
11
11
10
10
10
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
10
10
11
11
12
12
12
13
14
14
14
14
16
16
16
17
18
19
19
19
20
20
21
21
22
22
22
23
23
23
23
23
22
20
20
19
15
15
14
13
12
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
12
12
12
13
13
13
13
13
13
13
12
12
12
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
10
9
8
8
8
7
7
6
6
5
5
5
3
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
7
7
8
8
8
8
8
8
8
9
9
9
10
10
10
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
10
10
10
10
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
12
12
12
12
12
12
12
13
14
14
14
14
14
14
14
15
15
15
15
16
16
16
16
16
16
16
16
17
17
17
17
17
17
17
17
17
17
17
16
16
16
16
15
15
15
14
14
14
14
14
14
14
14
13
13
13
13
13
13
13
13
13
12
12
12
12
12
12
12
12
12
12
12
12
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
12
12
12
12
12
12
12
13
13
14
14
14
14
14
15
16
16
17
18
18
18
18
18
18
18
18
18
17
17
17
17
17
17
17
17
17
16
16
16
16
16
16
16
15
15
15
15
15
15
14
14
14
13
13
12
12
12
12
12
12
12
12
12
13
13
13
14
15
16
17
18
18
18
19
19
19
20
20
20
20
21
22
22
24
24
26
21
21
21
21
21
20
20
19
20
20
20
21
21
21
22
22
22
22
23
23
23
23
23
24
24
24
24
25
25
25
25
25
25
25
25
25
24
24
24
24
24
24
24
24
24
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
24
24
24
25
25
26
26
26
26
26
32
35
35
36
37
38
39
35
34
33
32
31
30
30
29
29
28
27
25
24
23
22
22
22
23
24
25
25
27
27
27
29
29
30
31
43
43
40
39
39
39
38
38
38
38
38
37
37
37
37
37
37
37
37
37
37
36
36
36
36
36
36
36
36
36
36
36
36
37
37
37
37
37
37
38
38
38
38
39
39
39
39
40
40
40
40
40
39
39
38
38
38
38
37
37
36
36
36
36
36
36
37
37
37
37
37
38
38
38
38
38
38
38
39
39
39
39
39
39
39
40
40
40
40
41
41
41
42
43
44
44
44
45
45
45
47
47
48
48
49
49
50
51
52
52
57
57
57
58
58
59
59
60
61
61
61
62
62
62
63
64
64
63
63
63
62
62
61
60
58
57
58
59
59
60
60
60
61
62
63
63
63
64
65
65
65
65
65
65
64
64
64
64
64
63
63
63
62
62
62
61
61
61
61
61
60
60
60
60
60
60
59
59
59
59
59
59
59
58
58
58
58
58
58
58
58
58
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
58
58
58
58
58
58
58
58
58
58
58
58
58
58
59
59
59
59
59
59
59
59
59
58
57
56
54
52
50
47
46
45
45
48
62
72
83
84
86
87
89
94
79
52
47
46
45
44
42
37
36
35
35
33
33
30
30
30
30
30
31
31
32
32
33
33
33
37
37
38
39
39
39
39
39
39
39
39
39
39
39
39
41
42
43
43
43
44
47
47
48
51
52
52
52
52
51
50
49
49
48
46
46
45
43
41
37
34
31
30
27
26
24
25
25
27
29
34
37
39
45
49
55
60
63
61
59
59
58
58
56
55
55
52
52
52
51
50
50
50
50
49
49
49
49
49
49
49
49
49
49
49
47
42
40
38
36
36
35
35
29
26
25
24
22
21
20
19
18
16
15
14
14
13
13
13
13
13
12
12
12
12
12
12
12
12
12
12
11
11
11
11
11
11
11
11
10
10
10
10
10
10
10
9
9
7
7
7
7
7
7
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
4
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
4
4
4
3
3
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
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
7
7
7
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
7
7
7
7
7
7
7
7
6
6
6
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
6
6
6
6
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
8
8
8
8
8
8
8
8
8
8
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
8
6
6
7
7
7
7
8
8
8
8
8
8
8
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
9
9
9
9
9
9
9
9
9
9
9
9
9
8
8
8
8
8
8
8
8
8
8
8
8
7
7
7
7
7
6
6
6
6
7
8
8
8
8
8
9
9
9
9
10
11
11
12
12
12
12
13
14
14
14
15
16
16
16
17
17
17
17
17
17
18
21
24
25
28
28
28
28
31
32
34
36
39
41
45
48
49
50
51
53
53
54
54
54
53
49
46
44
43
41
39
38
37
36
35
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
31
30
29
29
28
26
21
19
18
17
15
14
14
14
14
13
13
13
9
9
9
9
9
10
10
11
11
12
12
12
12
13
13
13
13
14
14
14
15
15
15
14
14
13
13
13
12
12
11
11
11
9
9
8
8
8
8
7
7
7
7
7
6
6
6
6
6
6
6
7
7
7
7
7
8
8
9
9
9
9
9
8
8
7
6
6
6
6
5
5
5
5
4
4
4
4
4
4
4
3
3
5
5
5
5
6
7
8
9
9
12
13
14
14
14
13
13
12
11
11
11
11
11
11
11
11
11
11
10
10
10
10
10
10
10
10
9
9
9
8
8
7
7
7
7
7
6
6
6
6
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
6
9
10
11
11
15
17
17
18
19
19
23
24
25
26
27
28
30
31
32
33
34
35
36
36
38
38
39
40
42
43
43
42
41
40
39
38
37
36
36
35
33
33
32
30
30
29
27
27
27
26
25
24
24
23
17
17
16
16
16
11
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
6
6
6
6
6
6
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
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
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
11
11
11
11
10
10
10
10
10
10
10
9
9
9
9
9
9
9
9
9
9
9
9
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
7
7
7
7
7
6
6
6
6
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
2
2
2
2
2
2
1
1
1
0
0
7
9
8
8
7
7
7
7
7
7
7
7
7
7
6
6
6
5
5
5
4
4
3
3
3
3
3
2
2
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
2
2
3
4
4
4
4
4
5
5
5
5
5
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
8
8
8
8
8
7
7
6
6
6
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
5
5
6
6
6
7
7
7
7
7
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
10
10
10
10
11
11
11
11
11
12
12
12
13
13
13
13
12
11
11
11
11
10
10
9
9
9
8
8
8
7
7
7
7
7
6
6
6
5
5
5
4
4
3
3
3
3
3
3
3
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
6
6
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
8
7
7
7
7
7
7
7
7
7
7
7
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
9
9
9
9
9
9
9
8
8
8
8
8
7
4
4
4
4
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
5
5
5
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
6
6
5
5
5
5
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
5
5
3
3
3
3
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
5
5
5
4
4
4
4
4
4
4
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
6
6
6
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
8
8
8
8
8
8
8
10
13
13
14
14
14
14
14
14
14
14
14
14
14
14
14
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
14
15
15
16
17
17
18
18
18
19
19
19
19
20
20
20
21
21
21
21
22
22
23
24
24
25
25
25
26
26
27
27
27
28
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
30
30
30
30
30
30
30
30
31
31
31
31
31
31
32
32
32
32
32
32
32
33
33
34
34
34
34
34
34
34
35
35
36
36
36
36
37
37
37
37
37
38
38
38
38
38
39
39
39
39
39
39
40
41
41
42
43
44
45
46
46
47
48
49
50
51
52
54
62
73
74
74
77
79
82
86
90
92
94
97
98
103
105
107
109
111
115
118
120
122
123
124
125
126
127
128
129
130
131
134
136
134
132
124
121
120
118
115
114
111
107
101
99
97
91
90
89
85
78
77
74
73
71
71
71
71
71
71
71
71
71
71
71
71
69
68
67
64
64
64
63
63
62
61
61
60
57
57
56
56
55
54
54
54
53
53
52
52
52
52
52
51
51
51
51
51
51
51
51
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
51
51
51
51
52
52
52
52
53
53
53
53
54
54
54
54
54
54
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
56
57
58
58
59
60
60
61
62
62
63
64
64
64
66
67
67
68
69
70
71
70
69
68
67
66
65
64
64
63
63
62
62
61
59
57
56
56
55
54
54
54
54
54
54
54
54
54
54
54
54
54
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
54
54
54
55
55
54
52
51
51
51
50
49
48
47
46
45
44
43
42
41
40
40
39
38
37
37
37
37
37
38
40
42
42
43
44
45
46
48
50
55
54
53
51
50
49
47
46
46
46
45
43
42
42
41
39
38
37
37
35
34
33
32
32
32
32
31
31
31
31
31
30
30
30
30
30
30
30
30
31
32
34
35
36
36
37
38
38
39
38
38
38
38
38
38
37
37
37
36
36
36
35
35
35
34
34
34
34
34
38
40
40
40
41
42
42
43
43
43
43
43
41
41
41
41
40
36
36
35
35
35
34
34
34
35
35
35
35
35
35
35
35
35
35
35
35
33
31
31
30
30
28
26
26
26
27
27
27
28
28
28
29
29
29
30
31
31
31
31
31
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
32
32
33
34
34
36
36
36
37
38
40
41
41
42
42
42
42
43
43
44
45
45
45
46
46
46
45
45
45
44
44
44
43
43
42
42
42
41
41
41
41
40
40
39
39
39
38
38
38
38
37
37
37
37
37
37
37
38
40
40
41
41
41
41
42
43
43
44
46
46
46
46
47
47
48
48
48
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
47
45
45
45
45
45
45
44
44
44
44
44
44
43
43
43
43
43
43
43
42
41
41
41
41
41
42
42
42
42
42
42
42
42
42
42
43
43
43
43
43
43
43
44
44
44
44
44
44
44
44
44
44
44
43
41
41
41
40
40
39
39
38
37
36
34
33
33
32
32
32
31
31
31
30
30
29
29
29
28
28
28
28
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
28
30
31
32
32
33
33
36
39
40
42
43
43
44
44
46
46
46
48
48
48
48
48
49
49
51
53
53
53
53
50
49
49
49
48
48
47
47
47
46
46
45
45
44
43
43
42
42
42
42
43
43
43
44
44
44
44
45
45
45
46
46
47
47
48
48
48
48
49
49
49
49
51
51
51
52
53
53
53
54
54
55
55
56
56
57
57
57
57
57
57
57
57
57
57
57
57
56
56
56
56
56
56
56
56
57
58
59
60
62
63
63
64
65
68
69
71
72
73
74
76
77
77
78
80
81
82
83
85
86
86
87
87
88
88
89
90
90
91
92
93
93
93
93
94
94
95
95
95
95
96
96
97
97
98
98
99
104
109
111
113
116
120
123
125
128
131
134
137
140
143
146
150
151
152
153
154
157
158
159
162
165
171
174
178
182
185
189
191
195
210
214
217
219
221
224
226
232
233
234
239
240
241
242
244
248
251
252
253
254
255
255
259
260
261
262
262
266
268
269
272
276
277
278
278
281
282
283
284
286
289
290
291
292
293
294
295
303
305
308
313
314
314
315
318
318
319
320
323
324
325
333
335
336
337
340
342
348
354
358
362
363
364
365
366
366
367
368
369
372
373
375
376
378
379
382
383
384
384
385
386
387
389
391
393
395
395
396
397
397
398
399
402
403
404
405
409
411
414
415
416
416
417
418
418
419
421
422
422
425
426
427
429
430
432
432
433
445
458
461
466
467
468
469
470
475
478
481
483
486
487
488
491
493
494
496
497
499
500
501
502
502
503
504
506
506
507
508
509
510
511
511
511
512
512
513
513
513
513
514
516
517
518
518
519
519
519
520
521
522
523
523
523
524
524
525
525
525
526
528
529
530
530
531
531
532
532
533
533
533
535
535
535
536
536
537
537
538
539
540
540
541
541
541
542
542
543
543
544
547
547
547
548
548
549
549
550
553
553
553
553
554
554
554
554
554
555
556
557
558
559
560
561
562
563
563
564
565
566
567
568
569
570
570
571
571
572
573
574
579
581
583
587
588
589
595
596
597
600
602
603
605
606
607
609
616
619
620
626
628
634
636
640
643
646
649
649
650
653
655
658
660
661
669
670
673
675
677
679
681
684
686
687
687
688
689
690
691
696
698
699
702
704
707
707
708
710
711
715
716
718
719
721
723
723
725
727
728
731
732
734
736
738
740
743
745
747
749
750
751
752
754
755
756
758
759
760
761
765
766
767
770
771
774
776
778
781
782
783
784
786
787
789
790
792
793
795
797
800
802
803
805
808
810
814
816
816
818
819
821
822
824
825
827
828
830
833
835
835
837
839
842
844
848
850
855
857
859
861
862
864
871
873
875
879
882
884
885
887
891
892
894
896
898
903
905
910
912
914
917
919
921
923
926
930
932
934
935
937
939
940
942
943
947
949
953
957
959
962
964
967
969
972
973
975
977
979
980
981
983
984
985
988
990
992
994
997
998
1000
1002
1003
1004
1006
1009
1011
1012
1014
1016
1017
1019
1020
1022
1023
1024
1026
1030
1031
1033
1034
1036
1038
1040
1043
1045
1047
1049
1050
1050
1051
1051
1051
1052
1052
1053
1054
1054
1055
1056
1056
1057
1057
1057
1058
1058
1059
1059
1060
1061
1063
1064
1064
1065
1065
1066
1066
1066
1067
1067
1070
1074
1078
1080
1081
1082
1084
1087
1090
1091
1093
1096
1098
1100
1102
1104
1107
1109
1111
1113
1115
1121
1124
1127
1130
1132
1137
1140
1142
1144
1147
1149
1151
1153
1155
1161
1164
1167
1170
1172
1173
1174
1177
1179
1180
1181
1184
1187
1189
1193
1195
1198
1201
1202
1204
1206
1207
1208
1210
1216
1218
1219
1220
1222
1223
1224
1227
1228
1230
1231
1234
1237
1238
1240
1243
1244
1246
1248
1249
1251
1254
1257
1259
1262
1264
1267
1271
1273
1275
1278
1281
1284
1287
1294
1296
1298
1299
1301
1303
1305
1306
1307
1311
1315
1318
1319
1326
1328
1330
1332
1334
1336
1338
1341
1345
1347
1348
1352
1358
1362
1367
1371
1375
1377
1379
1381
1383
1385
1386
1390
1392
1393
1394
1396
1397
1399
1400
1402
1403
1403
1405
1407
1408
1410
1411
1414
1415
1416
1417
1419
1421
1422
1425
1427
1428
1429
1428
1426
1426
1425
1424
1423
1423
1422
1422
1421
1421
1420
1418
1418
1417
1416
1415
1414
1413
1413
1412
1411
1411
1410
1409
1408
1409
1410
1411
1412
1413
1413
1414
1415
1415
1416
1417
1418
1418
1418
1419
1420
1420
1421
1421
1421
1422
1423
1423
1423
1424
1424
1424
1422
1421
1417
1415
1413
1410
1407
1405
1402
1399
1397
1395
1394
1394
1393
1391
1387
1384
1383
1383
1381
1379
1377
1375
1374
1372
1371
1369
1368
1366
1365
1363
1363
1361
1361
1360
1359
1359
1358
1357
1355
1351
1351
1350
1350
1348
1347
1346
1346
1345
1343
1342
1341
1340
1338
1337
1337
1336
1335
1334
1333
1333
1332
1331
1329
1328
1327
1326
1324
1323
1322
1322
1321
1321
1320
1320
1319
1318
1317
1316
1314
1312
1311
1310
1309
1309
1307
1306
1306
1305
1304
1303
1302
1300
1299
1298
1298
1295
1294
1293
1292
1289
1287
1286
1285
1285
1282
1282
1280
1279
1279
1279
1278
1277
1276
1275
1274
1273
1273
1272
1271
1270
1269
1268
1267
1265
1263
1262
1259
1259
1258
1257
1257
1255
1254
1253
1252
1251
1250
1249
1247
1246
1245
1244
1243
1242
1240
1239
1237
1237
1236
1235
1233
1232
1232
1232
1232
1233
1233
1233
1234
1234
1234
1234
1235
1235
1235
1235
1235
1236
1236
1236
1236
1237
1237
1237
1237
1238
1238
1238
1238
1238
1239
1239
1239
1240
1240
1240
1240
1240
1241
1241
1241
1242
1242
1242
1242
1243
1243
1243
1244
1244
1244
1245
1245
1245
1246
1246
1246
1247
1248
1249
1251
1252
1254
1258
1259
1260
1263
1266
1270
1273
1275
1277
1280
1282
1288
1289
1292
1294
1296
1297
1297
1301
1302
1304
1308
1309
1311
1312
1318
1319
1320
1322
1323
1325
1326
1327
1328
1329
1330
1332
1333
1334
1335
1338
1339
1340
1341
1344
1345
1348
1351
1353
1354
1356
1357
1358
1361
1365
1367
1368
1369
1370
1371
1374
1375
1376
1378
1381
1383
1385
1386
1389
1390
1391
1393
1394
1396
1398
1400
1402
1405
1406
1408
1409
1413
1414
1418
1421
1424
1426
1428
1431
1432
1433
1434
1435
1440
1442
1443
1446
1447
1448
1449
1452
1455
1455
1457
1459
1461
1463
1465
1469
1471
1472
1476
1478
1479
1482
1483
1487
1488
1491
1495
1497
1500
1501
1502
1503
1505
1506
1508
1509
1510
1512
1513
1514
1515
1517
1519
1520
1522
1524
1527
1529
1531
1533
1536
1538
1541
1543
1545
1547
1549
1553
1556
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1567
1568
1569
1571
1574
1575
1576
1577
1578
1579
1580
1580
1581
1582
1583
1586
1586
1586
1586
1586
1586
1586
1586
1586
1585
1585
1585
1585
1585
1585
1585
1585
1585
1585
1584
1584
1584
1584
1584
1584
1584
1584
1584
1584
1584
1584
1584
1584
1583
1583
1583
1583
1583
1583
1583
1583
1583
1583
1583
1583
1582
1582
1582
1582
1582
1582
1582
1582
1582
1582
1582
1582
1582
1581
1581
1581
1581
1581
1581
1581
1581
1581
1581
1581
1581
1581
1581
1581
1580
1580
1580
1580
1580
1580
1580
1580
1580
1580
1577
1576
1576
1575
1574
1573
1573
1573
1572
1570
1569
1566
1566
1565
1565
1563
1560
1560
1558
1555
1555
1554
1554
1554
1554
1553
1552
1551
1551
1550
1550
1550
1547
1547
1546
1545
1544
1543
1540
1539
1538
1538
1534
1533
1532
1524
1523
1522
1520
1518
1513
1510
1509
1507
1506
1505
1503
1502
1502
1501
1500
1498
1497
1496
1495
1494
1492
1492
1491
1491
1490
1489
1489
1489
1488
1488
1487
1487
1486
1486
1484
1484
1482
1481
1479
1478
1476
1474
1474
1473
1472
1471
1471
1470
1469
1468
1467
1467
1466
1466
1465
1465
1464
1463
1463
1462
1462
1461
1460
1460
1458
1458
1455
1454
1454
1453
1452
1451
1450
1450
1448
1447
1447
1446
1445
1445
1445
1445
1445
1445
1445
1445
1445
1445
1445
1445
1445
1445
1445
1445
1445
1445
1445
1445
1445
1446
1446
1446
1446
1446
1446
1446
1446
1446
1446
1446
1446
1446
1446
1446
1446
1446
1446
1446
1447
1447
1447
1447
1447
1447
1447
1447
1447
1447
1447
1447
1447
1447
1447
1447
1447
1447
1447
1447
1447
1447
1447
1447
1447
1447
1447
1447
1446
1445
1444
1443
1442
1441
1438
1435
1434
1433
1432
1429
1428
1426
1425
1425
1424
1423
1422
1415
1413
1412
1408
1407
1407
1405
1404
1403
1401
1400
1394
1389
1386
1382
1377
1376
1375
1372
1367
1366
1365
1363
1362
1361
1359
1358
1356
1356
1354
1353
1352
1351
1348
1347
1347
1346
1345
1344
1343
1342
1341
1340
1338
1337
1334
1333
1333
1332
1331
1330
1328
1327
1326
1325
1324
1324
1322
1321
1321
1320
1319
1318
1317
1317
1316
1315
1315
1314
1313
1312
1310
1309
1308
1307
1306
1305
1302
1301
1301
1300
1300
1299
1297
1294
1294
1293
1291
1290
1289
1288
1287
1286
1285
1284
1282
1281
1280
1279
1278
1277
1275
1274
1273
1271
1269
1268
1268
1265
1264
1263
1261
1260
1258
1255
1255
1254
1251
1251
1250
1249
1248
1248
1247
1246
1245
1244
1243
1242
1241
1240
1239
1236
1235
1234
1233
1232
1231
1230
1229
1228
1228
1227
1226
1224
1221
1220
1219
1218
1218
1216
1214
1212
1209
1207
1205
1204
1203
1202
1201
1200
1199
1198
1197
1196
1194
1193
1192
1191
1187
1186
1185
1184
1182
1181
1180
1179
1176
1174
1172
1171
1170
1169
1167
1166
1165
1164
1161
1160
1160
1159
1158
1157
1155
1153
1152
1152
1151
1149
1148
1147
1147
1144
1141
1140
1139
1138
1137
1136
1135
1134
1133
1131
1130
1128
1127
1125
1124
1124
1124
1123
1123
1123
1122
1122
1122
1122
1121
1121
1121
1121
1121
1120
1120
1120
1120
1118
1118
1118
1117
1117
1117
1116
1116
1116
1114
1113
1113
1112
1112
1112
1112
1111
1111
1110
1110
1110
1109
1109
1108
1108
1107
1106
1105
1105
1105
1104
1104
1103
1103
1102
1102
1099
1097
1097
1097
1097
1097
1098
1098
1098
1098
1099
1099
1099
1099
1100
1100
1100
1101
1101
1102
1102
1103
1104
1104
1104
1105
1105
1105
1106
1106
1108
1108
1108
1109
1109
1110
1110
1110
1110
1110
1111
1111
1111
1111
1112
1112
1112
1112
1112
1112
1112
1112
1111
1111
1111
1111
1111
1111
1110
1110
1110
1110
1110
1110
1110
1110
1110
1110
1110
1109
1109
1109
1109
1109
1109
1108
1108
1108
1108
1108
1108
1108
1108
1107
1107
1107
1107
1107
1107
1106
1106
1106
1106
1106
1105
1105
1105
1105
1105
1105
1104
1104
1104
1104
1104
1104
1104
1104
1103
1103
1103
1102
1102
1102
1101
1101
1101
1100
1099
1099
1097
1096
1095
1095
1094
1093
1092
1090
1089
1089
1088
1086
1086
1085
1084
1083
1082
1081
1081
1080
1080
1079
1079
1078
1077
1077
1075
1075
1074
1073
1073
1072
1072
1071
1071
1070
1069
1069
1068
1068
1068
1067
1067
1065
1065
1064
1064
1063
1063
1062
1061
1060
1060
1059
1059
1057
1057
1056
1056
1055
1054
1052
1050
1047
1046
1045
1043
1041
1039
1038
1037
1036
1035
1034
1033
1032
1032
1028
1027
1026
1024
1023
1022
1020
1019
1017
1016
1014
1012
1011
1010
1008
1007
1006
1004
1003
1002
1001
1000
997
995
992
992
987
986
983
982
981
980
979
978
977
975
972
969
967
966
966
965
965
963
962
961
961
960
959
957
955
953
944
942
941
940
938
934
934
933
930
929
928
925
924
922
922
921
920
918
917
916
915
915
911
910
909
907
906
905
903
902
901
900
899
898
897
896
895
894
893
892
891
890
889
888
887
886
885
884
881
880
879
878
876
872
871
870
869
868
864
863
863
862
861
858
855
852
850
849
848
848
845
844
843
842
841
839
837
835
835
833
831
829
828
825
824
823
822
820
819
815
815
813
811
810
808
803
802
800
799
799
796
793
791
790
789
787
786
785
782
781
780
779
776
774
770
769
769
768
767
766
764
764
763
762
761
760
759
757
755
753
750
750
749
749
746
745
744
743
743
742
741
740
739
738
737
735
735
734
734
732
731
730
729
728
728
727
725
724
723
720
719
718
717
716
714
712
711
711
710
708
708
706
703
702
701
700
699
699
698
696
695
694
692
692
690
689
688
687
686
685
684
684
682
681
680
679
678
676
675
674
673
673
671
671
670
669
667
667
666
666
665
665
664
663
663
662
660
659
658
658
657
656
654
654
653
651
651
650
649
648
648
647
647
646
645
644
644
642
642
642
641
640
639
638
637
636
634
631
629
628
626
625
624
622
622
622
621
619
618
618
617
615
614
613
612
611
610
609
608
606
605
604
602
602
601
600
599
598
597
596
595
594
593
593
592
590
589
588
587
584
583
582
581
580
579
576
575
572
571
570
568
567
567
566
566
565
564
564
563
562
558
555
554
552
552
550
550
544
543
543
541
540
539
539
537
537
536
535
535
534
534
533
533
532
530
529
529
528
528
527
526
526
525
525
524
524
523
521
520
519
518
518
517
516
515
514
514
513
513
512
511
511
509
508
507
505
502
501
500
500
499
498
496
495
494
492
491
489
489
488
488
487
487
487
486
486
485
485
485
485
484
484
484
483
482
482
482
481
481
480
480
479
479
479
479
478
478
478
478
477
477
477
477
476
476
476
476
475
475
475
475
474
474
474
473
473
472
472
472
471
471
471
470
470
470
470
470
468
465
463
457
456
455
454
453
451
450
449
448
447
443
441
439
436
435
433
430
430
429
427
426
425
423
421
420
419
417
413
413
412
411
410
409
407
404
400
399
398
397
395
394
389
385
382
378
376
374
374
373
372
371
369
369
367
367
367
367
368
368
368
368
368
368
368
368
368
369
369
369
369
369
369
369
369
369
370
370
370
370
370
370
370
370
370
370
370
371
371
371
371
371
371
371
371
371
372
372
372
372
372
372
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
372
372
372
371
371
371
371
371
370
369
369
369
368
368
368
368
367
367
366
366
366
366
366
365
365
365
365
365
365
364
363
363
363
362
362
362
361
361
361
360
360
360
360
359
359
358
358
357
357
357
357
357
356
356
356
356
356
355
355
354
354
354
354
354
353
352
349
347
346
345
344
342
341
341
339
338
336
335
335
332
331
330
329
327
326
325
323
322
321
320
319
317
316
313
311
310
309
308
307
306
305
304
303
301
301
300
299
297
297
296
294
293
292
291
290
288
287
286
285
283
282
281
280
279
278
277
277
276
275
273
272
271
267
266
263
262
261
261
259
258
257
256
255
254
253
252
252
251
251
251
251
250
250
250
249
249
248
248
248
248
247
246
245
245
244
244
244
243
243
241
240
240
239
239
238
237
236
236
236
235
234
234
233
233
232
232
231
231
231
231
230
230
229
229
228
228
228
228
228
228
227
227
225
224
224
223
222
221
220
220
220
217
216
209
206
202
197
196
194
193
191
189
187
185
183
181
178
176
172
170
167
164
164
161
157
154
153
151
150
148
147
145
143
140
140
139
139
139
138
138
138
138
138
137
137
137
137
137
137
136
136
136
136
136
135
135
135
135
135
134
133
133
133
132
132
132
132
131
131
131
131
131
130
130
130
130
129
129
127
127
126
125
124
123
122
122
119
118
117
116
115
114
113
112
110
109
106
103
101
99
95
92
91
91
90
87
86
85
84
83
81
79
78
78
77
77
76
76
75
75
75
74
73
73
73
72
72
72
71
70
70
69
68
68
67
66
65
65
65
65
65
64
64
64
64
63
63
63
63
62
62
61
61
61
61
61
60
60
59
59
59
58
55
52
49
48
48
48
47
47
46
46
45
45
45
45
45
47
48
49
50
51
51
52
52
53
54
54
55
56
57
57
58
59
60
61
61
63
67
68
66
63
61
56
53
42
49
52
61
62
64
65
65
65
64
64
64
63
62
62
62
61
60
60
59
59
58
56
53
52
49
47
45
42
42
42
42
42
42
42
42
42
42
43
43
43
43
43
44
44
44
44
44
44
45
45
41
39
40
40
40
40
40
40
40
41
41
41
41
41
41
41
41
41
42
42
42
42
42
42
42
42
43
43
43
43
43
44
45
45
45
45
46
46
46
46
46
47
47
47
47
47
47
47
47
46
46
46
45
45
44
44
44
44
44
43
43
42
42
41
41
41
41
41
40
40
40
40
41
48
50
53
59
60
60
61
69
72
70
64
63
63
62
61
60
60
54
52
51
50
40
40
40
40
40
40
40
40
40
40
39
39
39
39
39
39
37
36
36
36
36
37
38
44
44
44
44
44
43
43
42
42
42
41
41
41
41
40
40
40
40
40
39
39
39
39
38
38
38
37
37
37
37
37
37
36
36
36
35
35
35
35
35
35
37
38
38
39
41
44
57
59
55
44
43
42
40
39
38
37
37
37
35
35
35
34
33
33
33
33
33
33
33
33
33
34
34
34
35
35
35
36
36
36
37
37
38
38
39
39
39
39
39
40
40
40
40
41
41
41
41
41
41
41
41
41
41
41
41
41
40
40
40
40
40
40
40
39
38
38
38
38
38
38
38
38
37
37
37
37
38
40
43
45
50
57
58
59
59
77
79
84
88
104
103
99
96
92
88
87
83
81
78
75
71
69
68
66
63
62
60
57
55
52
49
45
43
41
37
33
29
29
29
29
29
28
28
27
27
27
27
27
27
26
26
26
26
26
26
25
25
25
25
25
25
25
25
25
26
27
28
28
28
28
30
30
30
30
31
31
31
32
33
33
34
34
34
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
34
34
34
34
34
34
33
33
33
33
32
32
32
32
32
32
32
32
32
32
32
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
32
32
33
33
33
33
33
33
33
33
33
34
34
34
35
36
36
36
36
36
47
49
61
64
64
62
62
61
61
58
57
57
54
53
53
52
51
51
50
48
44
43
43
30
28
28
27
27
26
26
26
26
27
27
28
28
29
30
30
31
31
32
32
32
32
32
32
33
33
34
34
34
35
35
35
35
35
35
36
36
36
36
38
38
38
38
38
38
37
37
37
37
36
36
35
35
34
33
33
33
34
35
36
37
38
39
40
42
43
45
48
50
53
53
53
53
51
50
49
47
46
46
45
41
41
40
40
39
37
37
36
36
35
35
34
34
33
32
30
28
26
23
23
23
21
21
20
20
19
19
22
23
21
18
13
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
11
11
11
11
12
12
12
12
12
12
12
12
12
12
12
12
12
12
13
13
14
14
14
14
14
14
14
14
14
14
13
12
12
10
9
8
8
8
8
8
8
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
9
9
9
9
9
10
10
10
10
10
10
10
11
11
11
11
12
12
12
12
12
12
12
12
11
10
9
9
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
9
9
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
15
15
15
15
14
14
14
14
14
14
14
14
14
14
14
14
16
18
19
20
20
21
21
21
22
22
22
22
22
21
19
19
18
17
17
16
15
15
15
14
14
14
13
13
12
12
12
12
12
12
12
10
10
10
10
10
9
9
9
9
9
9
9
8
8
8
8
8
7
7
7
7
6
6
6
6
6
6
8
8
9
10
10
10
10
10
10
10
10
9
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
11
11
11
11
12
12
12
12
12
12
11
9
9
8
7
7
6
6
6
6
6
5
5
5
5
5
5
6
6
6
6
6
7
8
8
8
8
9
9
9
9
9
9
9
8
8
8
7
7
7
7
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
5
5
5
5
5
4
4
4
4
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
9
9
12
15
16
18
19
21
23
24
23
23
21
21
21
20
19
17
15
15
15
15
15
15
15
13
13
13
13
13
13
13
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
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
13
13
13
13
13
13
13
13
13
13
13
13
13
17
17
18
18
18
18
18
18
18
19
19
19
19
19
20
20
21
21
21
21
20
20
19
19
19
18
17
17
16
16
15
14
13
13
12
11
11
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
9
9
9
9
9
9
9
9
9
8
8
8
8
8
8
8
8
8
8
8
8
8
8
7
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
9
9
9
9
9
9
9
9
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
9
9
10
10
12
12
13
14
16
17
18
19
19
19
19
19
19
19
19
19
20
20
20
20
23
25
26
26
27
28
28
28
29
29
30
30
30
28
28
28
27
27
26
26
25
25
25
22
22
21
21
20
20
19
19
18
18
17
17
17
17
16
16
15
14
14
13
12
11
11
11
11
11
10
10
10
9
9
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
9
10
12
13
14
19
20
24
25
26
27
27
28
29
34
35
36
39
41
43
44
44
46
48
50
52
52
55
55
54
54
53
53
53
53
52
50
50
50
49
49
49
48
48
47
46
46
46
46
45
44
43
41
40
39
38
38
38
36
36
35
34
33
31
31
31
31
30
29
29
28
28
27
26
26
26
25
24
23
23
23
22
22
20
18
17
15
15
14
14
14
14
15
16
17
18
19
20
20
21
22
22
22
22
23
23
24
25
26
26
27
27
27
29
30
31
32
33
33
33
36
38
38
39
41
42
46
46
46
46
45
45
45
44
44
44
44
43
43
43
43
43
42
42
42
42
41
41
40
40
39
39
39
39
38
38
38
37
36
36
36
35
35
35
34
34
33
33
33
33
32
32
32
32
31
31
31
30
30
30
30
30
30
29
29
29
29
28
28
28
28
28
28
28
27
27
26
26
20
20
18
17
12
11
11
8
7
7
5
6
7
11
12
13
14
14
15
15
17
18
20
22
23
24
24
24
24
23
22
21
21
20
19
18
18
17
17
17
16
14
14
12
12
10
7
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
7
7
8
8
8
8
8
8
8
8
8
8
8
7
7
7
7
6
6
6
6
6
6
6
7
8
10
11
12
13
14
14
15
15
15
15
16
16
16
16
17
17
19
19
19
18
18
18
17
17
17
16
16
16
16
15
15
15
14
13
13
13
12
12
12
11
11
11
10
10
10
9
9
9
9
9
9
9
9
9
9
9
9
8
8
8
8
7
7
7
7
7
7
7
7
7
6
6
6
6
5
5
5
3
3
3
3
3
3
3
3
6
6
6
6
6
7
7
7
8
8
8
8
8
8
8
9
9
9
9
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
12
12
12
12
12
12
12
13
13
13
13
13
13
14
14
15
15
15
16
16
16
16
17
17
17
17
18
18
18
18
19
19
20
20
20
20
20
21
21
21
21
19
18
16
15
15
14
14
14
14
13
12
12
11
11
11
11
10
10
10
10
9
8
8
8
8
8
8
8
8
8
8
8
8
8
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
9
9
9
9
9
10
10
10
11
11
12
12
12
13
14
14
15
15
15
15
15
15
15
15
15
15
15
15
15
15
14
14
14
14
14
14
14
14
14
14
14
14
14
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
12
12
12
12
12
12
12
12
12
12
12
12
11
11
10
10
10
10
9
9
9
9
9
9
9
8
8
8
8
8
8
8
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
10
10
11
11
11
11
11
11
11
11
11
11
10
10
10
10
8
8
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
9
8
8
8
8
8
8
7
7
7
7
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
8
7
7
6
6
5
5
5
5
4
3
3
3
2
2
2
2
2
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
2
2
2
2
2
2
2
2
3
3
4
4
5
5
5
5
5
5
6
6
6
7
7
8
9
10
10
11
12
12
12
13
13
13
13
14
14
15
16
16
16
16
17
17
17
17
18
18
18
18
18
19
19
19
19
19
19
19
19
20
20
20
20
20
20
20
21
21
21
21
21
22
22
22
22
22
22
22
22
22
22
23
23
23
23
23
23
23
24
24
24
24
24
24
24
25
26
26
26
26
26
26
27
27
27
27
27
27
27
27
28
28
28
28
28
29
29
29
29
29
29
29
29
29
29
30
30
30
30
30
30
31
31
32
32
32
33
33
33
33
34
34
34
35
35
35
35
35
36
36
36
36
36
37
37
37
37
37
37
36
35
35
35
35
35
35
34
34
33
33
33
33
33
31
31
31
31
30
30
30
30
29
29
29
28
27
27
26
26
26
26
26
25
25
25
25
25
25
25
24
24
24
24
24
24
24
23
23
23
23
23
23
23
23
23
23
22
22
22
22
22
22
22
22
22
22
21
21
21
20
20
20
20
20
20
20
19
19
19
19
18
18
18
18
18
17
17
17
16
16
16
15
15
15
14
13
13
12
12
12
12
11
11
11
10
10
10
9
9
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
10
10
10
10
12
12
12
12
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
12
12
12
12
12
12
11
11
11
11
11
11
11
11
11
11
11
11
11
10
10
10
10
10
10
10
10
10
10
10
10
9
9
9
9
9
9
9
9
8
8
8
8
8
8
8
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
8
8
8
8
8
9
9
9
9
9
9
10
10
10
11
11
11
11
11
12
12
12
12
12
12
12
12
12
13
13
13
13
13
13
13
13
13
13
13
12
12
12
12
12
12
12
12
12
11
11
11
11
11
11
11
10
10
10
10
10
10
10
10
9
9
9
9
9
8
8
8
8
7
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
9
9
9
9
9
9
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
8
8
8
8
8
8
8
10
11
11
11
11
8
6
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
7
7
9
12
12
13
13
13
13
13
12
12
11
9
8
6
5
4
4
4
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
6
6
6
6
6
6
7
7
7
7
7
8
8
8
8
8
8
9
9
9
9
10
10
10
11
11
12
12
12
12
11
8
8
8
8
8
8
8
8
8
6
6
6
6
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
5
9
10
10
10
10
10
9
9
9
8
8
8
7
7
7
6
6
5
5
5
5
7
8
8
9
9
9
10
11
11
11
11
11
11
11
11
11
11
11
12
12
12
13
13
13
13
13
13
13
12
12
12
12
12
11
11
10
10
9
9
8
7
7
7
7
7
7
7
7
6
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
7
7
8
8
8
8
9
9
9
10
11
11
11
12
12
12
12
13
13
13
13
13
13
13
14
15
16
17
19
23
23
24
25
32
33
34
36
39
39
38
36
34
33
31
29
25
25
25
24
23
24
25
26
26
26
27
27
27
27
26
25
25
25
24
23
23
22
21
21
20
20
19
18
16
16
15
14
13
12
12
11
10
10
10
10
10
10
10
10
11
11
11
11
11
11
12
12
12
12
12
12
12
12
12
12
12
11
11
11
11
10
10
9
8
8
8
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
9
9
9
10
10
10
10
10
10
10
9
9
9
9
9
9
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
6
6
7
7
8
9
9
9
9
9
9
9
9
9
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
7
7
7
7
7
7
7
7
7
7
7
8
8
8
9
9
10
10
10
10
10
10
10
10
12
12
12
13
14
14
14
14
14
14
14
14
14
14
14
13
13
12
11
11
10
10
10
9
11
11
11
11
11
11
11
11
11
11
10
10
10
10
9
7
6
6
7
7
7
8
9
9
9
10
11
11
11
11
11
11
11
12
12
12
12
12
12
12
12
12
13
13
13
14
14
16
16
17
17
18
19
20
20
20
20
20
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
20
20
20
20
20
20
20
19
19
18
18
18
18
18
18
18
18
17
16
16
17
19
19
19
19
19
21
21
22
23
24
27
28
29
29
28
28
27
27
26
26
26
24
24
23
23
21
21
21
21
21
21
20
19
18
17
16
16
16
16
16
15
15
15
14
14
14
14
14
14
13
13
12
12
12
12
11
11
11
11
11
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
12
12
12
12
14
14
15
15
16
16
16
17
17
17
17
17
17
18
18
19
22
25
26
26
27
27
28
29
29
28
27
26
25
25
25
24
24
24
23
23
22
16
16
15
14
14
14
14
14
13
13
13
13
13
13
13
14
14
14
14
14
14
14
14
14
14
15
15
15
16
16
18
24
25
27
29
31
31
32
32
32
33
33
34
34
34
34
33
32
32
32
32
31
31
31
31
29
29
28
27
27
27
27
26
26
26
26
25
25
25
27
30
30
30
31
31
31
32
32
32
32
33
33
33
33
33
33
33
33
33
33
33
33
32
32
32
32
31
31
30
30
30
30
30
29
29
28
28
27
27
27
27
27
27
25
25
25
24
22
22
21
21
20
18
17
17
17
16
16
15
15
14
14
13
13
12
12
12
11
11
10
9
9
8
8
8
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
8
8
8
8
9
9
9
10
11
11
11
12
12
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
11
11
11
11
11
11
10
10
10
10
10
10
9
9
9
9
9
9
9
9
8
8
8
11
12
12
12
15
15
16
16
16
16
17
17
18
18
18
18
19
19
19
20
20
20
21
21
21
23
24
24
26
27
27
27
27
28
28
28
29
30
31
31
30
30
30
30
29
29
29
28
28
28
28
28
27
26
26
26
25
25
25
24
24
24
24
23
23
23
23
22
22
22
22
21
20
19
19
18
18
17
17
17
16
15
15
14
14
14
13
13
13
12
12
12
11
11
11
11
11
11
11
11
10
10
10
10
10
10
10
9
9
9
9
8
8
7
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
9
9
9
9
9
9
9
10
10
10
10
11
11
13
15
17
17
17
18
18
18
19
19
22
23
23
23
24
25
25
25
25
26
26
26
26
27
27
27
27
27
27
27
27
28
29
29
30
31
31
31
31
32
32
33
33
34
35
35
36
36
36
36
36
36
36
36
36
35
35
35
35
35
35
34
34
34
34
34
34
34
34
34
34
34
34
34
33
33
33
33
33
33
32
32
32
32
32
32
32
32
32
31
31
31
31
31
31
31
31
31
31
30
30
30
30
30
30
29
28
28
28
28
28
28
29
29
29
29
29
29
29
29
29
29
29
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
31
31
31
31
31
31
31
32
32
32
32
32
32
32
32
32
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
32
32
32
32
32
32
32
31
31
31
31
31
31
31
31
31
31
30
30
30
30
30
30
30
30
30
29
29
29
29
29
29
29
29
29
28
28
28
28
28
28
28
28
28
28
28
27
27
27
27
27
26
26
26
26
25
25
25
23
23
22
22
22
21
21
20
20
19
18
18
17
17
16
16
16
16
16
16
16
16
15
15
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
15
15
16
17
17
19
19
19
20
21
21
22
23
23
26
27
27
27
27
26
26
26
24
24
24
24
24
24
24
23
23
22
22
22
22
22
22
21
21
20
20
20
20
20
19
19
18
18
18
18
18
18
18
18
18
18
18
17
17
17
17
16
16
16
16
15
15
14
14
14
14
13
13
13
13
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
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
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
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
12
13
13
14
15
16
17
17
18
18
19
20
21
21
22
22
23
23
23
23
24
24
24
24
24
24
24
23
23
23
23
22
22
22
22
22
22
21
21
21
21
21
20
20
20
19
19
19
18
18
18
18
17
17
17
16
16
16
16
16
15
15
15
15
15
15
15