21
21
18
17
15
7
5
4
4
5
5
5
6
6
7
7
7
7
7
7
7
7
7
7
7
6
6
6
6
6
6
6
6
7
7
7
7
8
8
9
9
9
10
10
11
11
11
12
12
12
13
13
14
14
15
15
15
15
15
15
15
15
15
15
16
17
18
19
20
20
21
22
19
17
14
13
10
8
4
4
4
5
5
5
5
6
7
8
9
9
10
11
11
11
10
8
7
6
5
3
2
1
1
1
1
0
0
0
0
0
1
1
2
3
4
5
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
9
9
10
10
10
11
11
11
12
12
12
12
11
10
10
9
9
8
8
7
7
7
7
6
6
6
6
5
5
5
5
5
5
5
5
5
4
4
4
3
3
2
2
2
2
2
2
2
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
5
5
5
6
6
6
7
8
9
10
10
11
12
13
13
14
14
15
15
16
16
17
17
17
17
17
17
17
17
17
18
18
19
20
20
21
21
22
23
23
23
23
23
23
23
23
23
23
22
21
21
20
19
19
18
17
17
16
16
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
14
14
14
14
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
12
12
12
12
11
10
10
9
9
8
8
8
7
7
7
6
6
5
5
5
5
5
6
7
7
8
8
8
7
7
6
5
5
4
4
4
4
4
4
4
4
4
4
4
3
3
2
2
1
1
1
1
1
2
2
2
2
3
3
3
3
3
3
3
3
3
2
2
1
1
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
3
3
3
3
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
3
3
4
4
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
5
4
4
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
4
5
5
6
6
7
7
7
7
7
7
7
7
7
6
6
6
5
5
5
5
5
5
5
5
6
6
6
6
7
7
8
8
9
9
10
10
11
11
11
11
11
11
11
10
10
10
10
9
9
9
8
8
8
8
8
8
8
8
7
7
7
7
6
6
6
6
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
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
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
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
5
5
6
6
6
8
10
12
14
15
17
19
21
23
25
28
30
32
34
36
38
40
40
40
40
40
40
40
40
40
39
39
39
39
39
39
39
39
39
40
41
41
43
43
43
43
42
42
42
41
41
40
40
40
39
39
39
38
38
37
36
35
33
32
31
29
28
26
25
24
23
22
22
22
22
23
23
23
23
24
25
27
28
29
30
32
32
32
31
31
30
29
29
29
29
29
29
29
29
28
28
28
28
28
28
27
26
26
25
25
24
24
24
24
24
25
25
25
26
26
26
26
26
26
26
26
25
24
24
23
22
22
22
22
22
22
22
22
21
20
20
19
18
18
18
18
18
18
18
18
19
19
20
22
22
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
25
25
25
25
25
25
25
25
25
25
25
25
25
25
24
23
22
20
18
17
15
15
15
16
16
17
17
18
18
18
18
19
19
19
20
20
20
21
21
21
22
22
23
23
24
25
25
26
27
27
28
29
30
30
31
33
34
36
38
40
42
44
45
45
45
45
46
46
46
47
47
47
48
48
48
49
49
49
50
50
51
51
51
52
52
52
55
56
58
60
61
63
64
66
66
65
64
63
62
61
60
59
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
79
80
81
82
82
82
82
82
82
82
82
82
82
82
82
82
82
83
83
83
84
84
84
84
85
85
85
85
86
87
87
88
89
90
90
91
92
92
92
92
92
92
92
92
93
93
93
94
94
95
95
95
95
94
94
93
92
92
91
91
91
91
92
92
93
93
93
94
94
94
94
94
94
94
94
94
93
93
92
92
91
91
91
91
92
92
93
93
94
94
95
96
96
97
97
98
98
99
100
101
102
103
104
105
106
107
108
108
109
109
110
111
111
111
111
110
110
109
109
108
107
106
106
105
104
103
102
101
100
98
98
97
95
94
93
93
92
92
91
91
90
88
87
86
85
84
83
82
80
79
78
77
75
74
73
72
71
71
70
69
69
68
67
66
65
63
62
61
60
59
59
59
59
59
59
59
59
59
57
56
54
53
51
49
47
46
45
44
41
39
38
38
39
41
42
43
45
46
47
47
46
45
44
43
42
41
39
37
35
33
31
29
27
24
24
23
23
22
22
21
21
19
18
17
16
15
14
14
14
14
14
15
15
15
15
15
14
12
11
10
9
7
5
4
4
4
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
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
3
5
6
8
10
11
13
14
14
14
14
14
14
14
14
14
14
15
15
15
16
16
17
17
18
19
20
21
22
23
24
24
25
27
29
31
33
34
36
37
39
41
42
43
44
46
47
48
50
51
51
50
49
49
48
47
46
45
45
45
45
46
46
47
47
48
48
50
51
52
54
55
57
59
60
61
61
61
61
61
61
61
61
61
61
62
63
64
65
65
66
67
68
69
69
70
70
71
71
72
73
73
74
74
75
75
75
76
76
78
79
80
81
83
84
86
87
88
88
89
90
91
91
92
93
93
94
95
95
96
97
97
98
99
100
100
101
102
102
103
104
104
105
106
107
108
109
110
111
112
112
111
110
110
109
108
107
106
104
103
101
99
98
97
97
96
96
95
94
94
94
93
93
92
92
92
92
92
93
93
93
94
94
94
94
94
94
94
94
94
93
93
92
92
91
91
91
91
92
92
92
93
93
94
94
94
94
94
94
94
94
93
92
91
91
90
89
89
88
87
87
86
86
85
85
85
84
84
84
84
83
83
83
82
82
81
81
80
80
80
80
80
80
80
79
78
76
74
73
70
68
68
67
65
64
63
62
61
61
60
59
59
58
57
57
58
58
59
59
60
61
61
61
59
58
57
54
52
51
49
48
48
47
46
45
44
43
43
43
42
42
41
41
40
40
39
39
38
37
37
36
35
34
33
32
31
30
29
27
27
27
27
26
26
26
25
24
23
22
21
20
19
18
17
17
17
17
17
17
17
17
17
17
16
16
16
16
16
16
16
16
16
17
19
20
22
23
24
26
26
26
25
25
24
24
23
22
22
21
20
20
19
19
19
19
19
20
20
20
20
20
20
19
19
19
19
18
18
17
17
17
17
17
17
17
17
17
17
17
17
18
18
18
18
18
18
18
19
19
20
20
21
21
21
22
23
24
24
25
26
26
26
25
25
24
24
23
23
23
23
23
24
24
24
25
25
25
26
26
27
27
27
27
27
27
27
27
27
27
27
27
28
28
29
29
30
30
30
30
30
30
30
30
29
27
26
24
23
22
20
20
20
20
20
20
21
23
26
28
30
31
33
35
35
35
36
36
37
37
38
38
39
39
39
39
39
39
39
39
39
39
39
40
40
40
40
40
40
40
39
39
39
39
39
39
39
40
40
40
40
40
39
39
38
37
36
35
32
30
28
24
22
19
17
14
12
10
8
6
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
5
5
5
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
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
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
6
6
6
7
7
7
7
7
7
7
7
8
8
8
9
9
10
10
10
10
10
10
10
10
10
10
10
9
9
9
9
8
8
8
8
7
7
7
7
6
6
6
6
6
6
6
6
6
6
7
7
8
8
8
8
8
8
7
7
6
6
6
5
5
4
4
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
6
6
7
7
7
7
7
6
6
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
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
4
4
4
5
5
5
5
5
5
5
5
5
6
6
7
7
7
8
8
8
7
7
5
5
6
6
7
7
8
8
9
9
10
10
11
12
12
13
13
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
14
14
15
15
15
16
16
16
16
15
15
14
14
14
13
13
13
15
15
17
18
18
19
20
21
21
21
22
22
23
23
23
23
23
23
23
23
23
23
23
23
22
21
21
20
20
19
18
18
17
17
17
17
17
17
17
16
15
15
14
13
12
11
10
9
8
7
6
4
4
4
4
4
4
4
4
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
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
7
7
8
8
9
9
10
10
10
10
9
8
7
7
6
5
5
5
5
5
5
5
5
6
6
6
6
7
7
7
7
7
7
7
6
6
6
5
5
4
4
3
2
2
1
0
0
0
0
1
2
2
3
3
3
4
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
3
3
4
4
4
5
5
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
4
4
3
3
3
2
2
2
1
1
1
1
1
2
2
3
4
4
4
4
4
4
3
3
2
2
2
2
2
2
3
3
3
3
4
4
4
4
5
5
5
6
6
6
6
6
6
6
6
6
6
7
7
7
8
8
9
9
9
9
9
8
8
7
7
6
6
5
5
4
3
3
2
1
1
0
0
0
0
0
0
0
0
0
0
1
1
2
2
3
4
4
3
2
2
0
0
0
0
0
0
0
0
0
0
0
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
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
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
2
2
2
3
3
3
3
3
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
1
1
1
2
2
2
2
2
2
2
2
2
1
1
1
1
1
2
2
3
3
3
3
3
3
2
2
2
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
2
2
2
2
2
2
2
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
2
3
3
4
4
4
4
3
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
1
0
0
0
0
0
0
0
0
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
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
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
1
1
0
0
0
0
0
0
0
0
0
0
1
2
3
4
4
4
4
3
3
3
2
2
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0