5
1249
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
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
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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
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
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
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
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
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
14
14
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
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
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
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
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
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
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
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
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
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
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
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
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
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
15
15
15
15
15
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
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
14
14
14
14
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
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
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
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
8
8
8
8
8
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
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
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
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
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
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
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
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
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
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
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
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
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
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
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
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
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
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
23
23
23
23
23
23
23
23
23
22
22
22
22
22
22
22
22
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
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
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
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
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
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
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
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
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
22
22
22
22
22
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
21
21
21
21
21
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
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
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
17
17
17
17
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
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
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
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
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
20
20
20
20
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
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
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
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
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
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
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
18
18
18
18
18
18
18
18
18
18
18
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
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
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
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
21
21
21
21
21
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
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
25
26
26
26
26
26
26
26
26
26
26
26
26
26
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
29
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
30
30
30
30
30
30
30
30
30
30
31
31
31
31
31
31
31
31
31
31
32
32
32
32
32
32
33
33
33
34
34
34
34
35
35
35
35
36
36
36
36
37
37
37
37
37
38
38
38
38
39
39
39
39
40
40
40
40
40
40
40
40
40
40
40
41
41
42
42
43
43
43
44
44
44
44
43
43
43
43
43
43
43
43
44
44
45
45
46
46
47
47
47
46
46
45
45
45
45
45
45
46
47
48
50
51
53
55
56
58
59
61
62
64
65
67
69
71
72
74
76
78
79
81
83
85
86
88
90
92
94
95
97
99
100
102
103
104
105
105
106
107
108
109
110
112
113
115
117
119
121
123
125
126
127
128
129
130
131
132
132
133
135
137
139
141
143
146
148
149
150
151
152
152
153
153
153
154
154
155
156
158
160
161
163
165
166
168
169
170
170
171
171
172
172
172
171
171
171
170
169
167
165
161
158
153
149
144
139
134
129
124
119
115
110
105
100
94
88
82
76
70
64
58
53
50
47
45
44
43
43
43
44
45
45
46
47
48
48
48
48
49
50
51
53
55
57
60
62
64
66
68
69
71
71
72
72
73
73
74
74
75
75
75
74
74
73
72
71
70
69
68
67
66
64
63
63
62
61
61
60
60
59
58
57
55
53
50
47
44
40
37
35
33
31
31
31
31
31
31
30
30
29
29
28
28
29
29
31
32
34
36
38
41
43
46
49
52
55
58
62
65
68
71
74
76
78
79
79
79
79
78
77
76
74
73
71
70
68
67
66
65
63
62
60
59
57
56
55
54
53
52
51
50
49
49
48
47
47
46
45
45
44
43
42
41
40
40
40
40
41
42
43
44
46
47
48
48
48
48
48
48
48
49
50
50
51
52
52
53
53
54
55
57
59
61
64
66
69
71
73
75
77
79
80
81
82
83
83
83
83
84
85
87
88
90
92
94
95
96
96
96
95
95
94
94
94
94
95
95
96
97
98
100
102
105
109
112
116
119
122
125
127
129
130
132
133
135
136
137
139
140
142
143
144
144
144
143
143
143
143
143
144
144
145
145
145
146
145
145
144
143
142
141
139
138
136
134
132
129
126
123
120
117
114
111
109
106
104
102
101
99
99
98
97
97
96
95
93
91
88
86
83
80
78
77
76
76
76
76
76
76
77
76
76
74
73
71
69
67
65
62
60
58
56
54
52
50
48
47
46
44
43
41
40
39
38
36
34
31
29
27
24
22
20
18
15
13
10
8
5
2
-1
-5
-8
-12
-17
-21
-27
-34
-41
-49
-57
-66
-74
-82
-89
-96
-102
-108
-113
-117
-121
-125
-128
-132
-135
-138
-142
-145
-148
-151
-153
-155
-157
-159
-160
-161
-162
-162
-163
-163
-163
-163
-163
-164
-164
-164
-164
-162
-158
-154
-149
-143
-136
-129
-122
-115
-109
-103
-98
-94
-91
-89
-87
-85
-83
-81
-78
-74
-69
-64
-59
-54
-51
-49
-49
-51
-54
-57
-61
-65
-68
-72
-75
-78
-82
-85
-90
-94
-99
-103
-108
-112
-115
-118
-120
-123
-125
-128
-131
-134
-138
-141
-144
-147
-150
-153
-155
-156
-157
-156
-154
-152
-149
-147
-144
-142
-141
-140
-141
-144
-147
-151
-154
-156
-157
-157
-156
-154
-152
-148
-144
-139
-133
-127
-120
-114
-108
-103
-100
-98
-98
-98
-99
-99
-100
-101
-103
-104
-106
-108
-109
-111
-114
-117
-120
-122
-123
-124
-123
-121
-119
-117
-115
-113
-112
-111
-110
-109
-108
-108
-108
-108
-107
-106
-103
-98
-93
-87
-81
-74
-67
-60
-53
-46
-39
-33
-28
-23
-19
-15
-12
-9
-7
-5
-4
-2
-1
-1
-2
-3
-5
-8
-10
-13
-16
-19
-22
-25
-27
-28
-28
-28
-27
-25
-23
-21
-19
-15
-12
-8
-4
-1
2
5
7
9
11
13
14
15
15
14
12
10
7
4
1
-4
-8
-12
-16
-21
-25
-28
-30
-31
-32
-31
-32
-32
-34
-36
-39
-42
-46
-49
-52
-55
-57
-58
-59
-60
-61
-62
-63
-64
-66
-67
-68
-69
-70
-71
-71
-72
-72
-71
-71
-70
-69
-68
-67
-65
-64
-63
-62
-61
-59
-57
-55
-51
-48
-44
-40
-35
-31
-27
-23
-20
-18
-17
-16
-16
-17
-18
-18
-18
-18
-18
-18
-19
-21
-23
-26
-29
-32
-35
-38
-42
-45
-49
-52
-55
-57
-59
-60
-60
-60
-59
-59
-58
-58
-58
-58
-58
-58
-58
-57
-57
-57
-57
-57
-58
-57
-57
-57
-56
-55
-54
-53
-52
-51
-49
-47
-45
-42
-40
-38
-36
-34
-32
-31
-30
-29
-28
-27
-25
-22
-19
-16
-12
-8
-4
-1
3
7
11
14
17
21
24
28
32
36
41
45
49
53
57
61
65
68
72
76
79
83
87
91
95
98
101
103
105
107
109
109
110
109
109
109
108
109
110
113
117
123
129
135
141
147
153
158
163
167
171
174
177
178
178
177
175
172
169
165
160
156
151
146
140
135
130
125
122
119
116
114
112
110
108
107
105
103
102
102
102
102
104
106
108
111
115
118
121
124
126
127
129
129
129
128
126
124
121
118
114
110
105
98
92
86
80
76
72
69
67
65
63
61
60
57
55
54
52
51
50
50
50
51
52
55
57
60
64
69
74
80
86
92
98
104
110
115
119
123
127
129
131
131
132
131
131
131
130
130
129
128
127
125
125
125
125
127
130
133
136
139
141
142
143
143
142
140
139
137
136
134
133
131
128
125
122
118
115
111
108
105
102
99
96
94
91
89
87
84
80
75
70
63
58
53
49
46
45
44
43
42
42
42
43
44
47
52
57
62
69
75
82
89
96
103
110
116
120
124
126
127
127
127
126
125
123
120
117
114
111
108
105
102
100
98
96
94
94
93
94
94
95
96
98
99
101
102
103
104
105
107
108
110
113
116
119
122
125
128
130
131
132
132
132
131
129
127
125
122
119
116
113
110
107
105
104
103
102
101
100
98
97
96
95
95
95
95
95
96
97
98
100
102
104
106
107
108
109
111
112
113
114
115
115
114
114
113
113
113
113
112
111
109
107
104
100
96
90
83
75
67
59
50
42
34
25
17
9
2
-4
-9
-13
-16
-19
-22
-25
-27
-29
-31
-32
-34
-35
-37
-40
-42
-44
-45
-46
-47
-47
-48
-48
-48
-47
-47
-45
-44
-42
-39
-37
-34
-32
-29
-27
-24
-22
-19
-17
-14
-11
-9
-7
-5
-3
-1
1
3
4
6
8
10
12
14
15
16
17
17
17
16
14
13
10
8
5
2
0
-3
-7
-10
-13
-17
-21
-24
-28
-31
-34
-37
-40
-42
-43
-44
-45
-44
-43
-42
-40
-38
-37
-35
-33
-31
-29
-26
-23
-20
-18
-16
-14
-13
-12
-12
-13
-14
-16
-17
-19
-20
-22
-23
-24
-25
-25
-25
-24
-22
-21
-19
-17
-15
-13
-11
-9
-7
-4
-2
2
5
8
10
12
14
15
15
14
13
11
9
6
4
1
-1
-4
-7
-10
-12
-13
-13
-13
-11
-9
-6
-3
0
4
8
13
19
25
31
37
42
47
51
55
58
60
63
64
66
67
68
68
67
65
63
60
57
54
50
47
43
38
33
27
21
14
7
-1
-9
-16
-24
-32
-39
-47
-54
-61
-68
-74
-80
-86
-90
-93
-95
-97
-98
-99
-99
-99
-98
-96
-94
-91
-88
-85
-82
-79
-76
-74
-71
-69
-67
-65
-63
-61
-59
-57
-54
-51
-48
-44
-39
-34
-28
-22
-16
-9
-2
5
12
18
23
28
33
38
43
48
52
57
61
65
69
73
77
80
82
84
86
86
86
86
85
84
83
82
82
81
80
78
76
73
71
68
66
65
65
66
68
71
74
78
82
87
92
98
103
110
116
123
130
137
144
150
157
164
171
178
185
192
200
206
213
219
225
230
236
241
247
254
260
266
273
280
286
293
299
305
310
315
321
326
332
338
343
349
353
357
361
363
364
363
362
361
359
356
354
351
348
345
342
338
335
331
328
324
321
318
315
312
309
305
302
299
297
294
292
290
289
288
287
286
285
285
286
287
288
289
291
292
294
295
296
297
297
298
299
300
301
302
304
305
307
308
310
311
312
313
315
317
319
321
324
326
329
332
335
339
342
345
348
351
354
357
360
364
368
373
377
381
385
388
390
392
394
395
396
397
398
400
402
404
407
411
415
420
425
430
435
440
444
449
452
456
458
460
461
461
460
458
456
452
448
444
439
435
429
424
419
413
406
399
390
381
372
361
350
337
324
310
295
279
263
247
231
216
202
188
175
163
153
143
135
127
120
114
108
103
98
95
91
88
85
81
78
73
68
63
58
53
48
44
39
35
31
27
24
22
21
20
20
21
22
23
24
25
25
25
23
21
18
14
10
4
-1
-7
-12
-17
-22
-26
-31
-35
-39
-42
-46
-49
-51
-54
-56
-58
-60
-62
-64
-66
-69
-72
-75
-78
-80
-84
-87
-92
-97
-103
-109
-116
-123
-130
-137
-144
-151
-157
-164
-170
-176
-181
-186
-191
-196
-200
-205
-209
-214
-218
-222
-226
-230
-235
-239
-244
-249
-255
-261
-267
-273
-279
-284
-290
-295
-299
-303
-306
-308
-308
-308
-307
-304
-302
-298
-294
-290
-286
-283
-279
-276
-273
-270
-268
-266
-264
-263
-261
-259
-256
-254
-250
-247
-243
-238
-233
-227
-220
-212
-204
-195
-186
-177
-168
-160
-151
-143
-136
-129
-123
-119
-116
-113
-113
-113
-115
-118
-122
-127
-134
-142
-150
-160
-170
-181
-193
-205
-217
-230
-243
-256
-270
-283
-297
-312
-327
-342
-357
-372
-387
-402
-417
-431
-446
-461
-477
-492
-508
-523
-538
-553
-566
-579
-591
-602
-611
-619
-626
-632
-637
-641
-645
-648
-651
-654
-657
-660
-663
-667
-670
-673
-676
-679
-682
-684
-685
-685
-685
-683
-681
-677
-673
-668
-662
-655
-646
-637
-626
-614
-601
-587
-573
-558
-543
-527
-511
-495
-479
-462
-446
-428
-411
-393
-376
-357
-338
-318
-296
-274
-250
-226
-201
-175
-149
-122
-96
-69
-43
-17
9
35
61
87
113
139
164
188
211
233
253
272
289
304
318
331
342
352
361
370
378
385
392
398
403
406
408
409
407
404
399
393
386
378
369
359
349
338
328
316
305
293
281
269
258
247
237
227
219
211
203
197
191
186
182
177
173
169
165
161
156
151
146
141
137
132
128
123
120
116
113
111
109
109
109
110
112
114
118
122
128
134
141
149
158
169
181
194
209
226
245
265
287
310
334
359
385
412
439
468
496
525
553
582
610
637
665
691
718
743
769
793
817
840
862
883
902
920
937
952
966
977
987
994
1000
1002
1004
1004
1002
998
992
985
976
965
954
941
927
912
896
880
863
845
827
809
790
771
752
732
713
693
674
655
636
617
598
579
560
541
522
503
484
466
447
429
410
391
372
352
332
311
290
267
244
220
194
168
141
114
86
58
31
4
-21
-46
-69
-90
-109
-126
-141
-154
-165
-173
-179
-183
-186
-186
-185
-182
-177
-170
-162
-152
-141
-129
-116
-102
-88
-73
-58
-43
-29
-14
-1
12
24
34
43
49
54
56
57
55
51
46
39
31
22
11
0
-12
-24
-36
-49
-61
-74
-87
-100
-114
-128
-142
-156
-169
-183
-198
-212
-227
-242
-257
-273
-288
-304
-319
-335
-351
-366
-381
-396
-410
-423
-435
-446
-456
-465
-474
-483
-492
-500
-509
-517
-525
-531
-537
-542
-547
-550
-552
-552
-552
-551
-548
-544
-540
-535
-530
-524
-517
-510
-502
-494
-485
-476
-467
-457
-448
-438
-429
-419
-411
-403
-396
-390
-385
-380
-375
-371
-367
-364
-361
-359
-358
-357
-356
-357
-358
-360
-364
-369
-374
-380
-388
-395
-404
-413
-422
-432
-443
-454
-466
-479
-492
-505
-518
-532
-545
-559
-572
-585
-598
-610
-621
-630
-639
-645
-649
-651
-652
-651
-648
-644
-639
-633
-626
-619
-611
-604
-596
-587
-579
-572
-564
-558
-553
-548
-545
-543
-542
-542
-542
-543
-545
-547
-550
-553
-557
-561
-565
-569
-572
-576
-579
-582
-585
-587
-588
-589
-589
-589
-588
-586
-584
-582
-579
-575
-571
-567
-562
-557
-551
-545
-539
-531
-523
-515
-506
-496
-486
-476
-466
-455
-444
-434
-423
-412
-400
-389
-377
-364
-352
-339
-326
-313
-300
-287
-274
-261
-248
-236
-223
-211
-200
-188
-177
-167
-156
-146
-136
-126
-117
-108
-99
-91
-84
-78
-72
-66
-62
-57
-53
-49
-45
-41
-37
-32
-29
-25
-21
-18
-15
-13
-10
-8
-6
-4
-3
-1
0
0
1
0
0
-1
-3
-5
-7
-8
-10
-12
-13
-14
-14
-14
-13
-12
-10
-8
-5
-2
1
5
9
14
19
25
30
36
42
49
56
63
71
80
89
99
110
121
134
146
160
173
187
201
216
230
244
258
271
283
294
304
313
322
330
337
343
348
353
358
361
364
366
367
367
366
364
362
359
355
350
345
339
333
327
321
314
308
302
295
289
284
279
274
270
266
261
257
253
249
245
240
236
231
226
221
215
210
203
197
191
184
177
170
163
155
146
137
127
117
106
94
81
67
53
37
20
1
-18
-39
-61
-84
-107
-131
-155
-179
-204
-228
-252
-276
-300
-323
-346
-368
-388
-408
-427
-445
-461
-476
-490
-502
-513
-523
-531
-538
-543
-546
-548
-548
-547
-545
-541
-536
-530
-524
-516
-509
-501
-493
-485
-477
-468
-459
-449
-439
-428
-417
-406
-394
-381
-368
-354
-340
-325
-309
-294
-278
-263
-247
-232
-217
-203
-189
-176
-164
-153
-142
-133
-125
-118
-113
-108
-105
-102
-100
-98
-97
-95
-93
-91
-89
-87
-85
-83
-82
-81
-81
-80
-80
-80
-80
-79
-77
-75
-72
-68
-63
-56
-49
-40
-29
-18
-6
7
21
35
50
64
79
94
109
124
140
155
170
186
201
217
232
247
262
275
288
299
309
317
324
329
333
335
336
335
333
330
325
320
313
306
298
290
281
272
263
254
245
236
227
219
212
205
199
194
189
184
181
178
176
176
176
177
179
182
185
188
192
195
199
202
205
208
211
215
218
222
225
229
233
237
241
245
249
252
256
259
262
265
268
271
273
275
277
278
279
279
278
276
273
269
263
257
249
240
229
218
206
194
180
167
153
139
124
109
94
79
64
48
33
18
3
-12
-26
-40
-52
-64
-75
-85
-95
-103
-110
-117
-123
-127
-131
-134
-136
-138
-139
-139
-139
-138
-137
-136
-134
-132
-130
-128
-126
-124
-122
-120
-119
-118
-118
-119
-120
-122
-125
-129
-133
-138
-143
-149
-156
-164
-173
-182
-193
-205
-217
-231
-246
-261
-277
-295
-312
-331
-350
-369
-389
-410
-430
-451
-471
-492
-512
-532
-552
-571
-590
-608
-625
-642
-657
-673
-687
-701
-715
-728
-740
-752
-763
-774
-784
-794
-804
-813
-822
-830
-838
-845
-851
-857
-863
-868
-872
-875
-878
-880
-880
-880
-878
-874
-870
-865
-859
-851
-844
-835
-826
-816
-806
-795
-783
-771
-758
-744
-731
-717
-702
-688
-673
-658
-643
-627
-611
-594
-578
-560
-543
-526
-508
-490
-472
-453
-433
-413
-391
-369
-346
-322
-296
-269
-241
-211
-179
-147
-113
-78
-43
-6
31
68
106
143
181
218
255
291
326
361
395
429
462
495
526
557
587
615
643
670
696
720
744
767
788
808
827
845
861
877
893
907
921
935
948
960
973
984
996
1006
1018
1028
1038
1048
1058
1068
1078
1088
1098
1108
1118
1127
1136
1145
1154
1162
1169
1176
1183
1189
1195
1201
1207
1212
1217
1223
1228
1232
1237
1241
1244
1247
1248
1249
1249
1249
1247
1245
1241
1237
1233
1227
1221
1215
1208
1200
1192
1182
1172
1162
1151
1139
1127
1115
1102
1089
1075
1061
1046
1030
1014
997
979
960
941
922
902
883
862
842
821
800
779
757
735
713
690
667
644
620
596
572
548
524
499
475
451
428
404
380
357
334
311
289
267
245
223
201
180
159
138
118
98
79
60
42
25
9
-6
-21
-34
-47
-59
-71
-81
-91
-100
-109
-117
-124
-130
-135
-139
-142
-145
-147
-148
-149
-149
-148
-147
-145
-143
-140
-137
-134
-130
-126
-122
-117
-112
-107
-102
-96
-90
-83
-76
-69
-62
-54
-47
-39
-30
-22
-13
-4
6
16
26
37
48
59
71
84
98
112
127
143
159
176
194
212
231
250
269
289
309
330
351
371
392
413
433
453
473
492
512
531
550
569
588
606
625
643
660
677
693
709
724
739
753
767
779
791
803
813
822
830
838
844
849
854
857
860
862
862
862
861
859
857
853
849
844
839
833
827
820
814
807
801
794
788
782
776
770
765
760
755
751
748
745
743
741
740
739
738
737
736
735
734
732
731
730
729
728
726
724
723
720
718
715
711
708
704
700
696
691
686
680
674
667
660
653
644
636
627
618
609
599
589
579
569
558
546
535
522
509
496
482
468
453
438
423
407
390
373
356
338
319
301
281
261
241
220
198
176
154
131
108
86
63
41
19
-3
-24
-46
-67
-88
-108
-128
-148
-167
-185
-204
-221
-238
-255
-270
-285
-300
-313
-325
-337
-347
-357
-365
-372
-378
-383
-387
-389
-391
-392
-391
-389
-386
-382
-377
-371
-365
-358
-350
-342
-333
-323
-313
-303
-292
-281
-270
-258
-247
-235
-222
-210
-197
-184
-171
-158
-144
-130
-116
-101
-87
-72
-58
-43
-28
-13
2
17
32
48
63
78
93
107
122
136
151
165
179
194
208
222
236
249
263
276
289
302
314
327
340
352
365
378
391
404
416
429
442
455
467
480
493
506
519
532
545
559
573
587
601
616
631
646
661
677
692
708
723
739
754
769
784
798
812
826
839
852
865
877
889
900
911
922
933
944
954
963
973
982
990
998
1004
1010
1016
1020
1022
1025
1027
1027
1026
1024
1022
1018
1012
1008
1002
995
987
979
971
962
952
942
932
922
912
901
891
881
871
861
852
843
835
827
820
813
807
802
796
791
786
781
776
771
766
760
755
749
743
736
729
721
713
704
695
685
675
664
653
641
628
615
601
586
571
555
538
520
502
483
464
445
425
405
384
364
344
324
304
284
265
246
228
210
193
176
160
144
130
115
102
89
77
65
54
44
34
25
17
10
4
-1
-6
-9
-12
-14
-15
-16
-15
-15
-13
-12
-9
-7
-4
0
4
8
13
19
26
33
41
49
58
68
78
89
100
111
122
133
144
155
165
175
185
193
202
210
217
224
230
236
242
247
253
257
262
266
270
274
278
281
284
287
290
293
296
298
301
303
306
308
311
313
315
317
319
321
323
324
325
326
327
328
328
327
326
324
322
319
316
312
307
302
297
291
285
279
272
265
257
249
240
231
221
211
200
189
178
166
155
143
132
121
110
100
90
80
71
62
53
44
35
27
19
11
3
-5
-13
-20
-28
-35
-42
-49
-55
-62
-69
-75
-81
-87
-93
-98
-103
-107
-112
-115
-119
-122
-125
-128
-130
-132
-135
-137
-139
-141
-143
-145
-148
-150
-153
-155
-158
-160
-163
-165
-167
-170
-172
-174
-175
-177
-179
-180
-181
-182
-183
-184
-185
-185
-186
-186
-187
-187
-188
-189
-189
-189
-190
-190
-190
-190
-190
-189
-189
-188
-187
-186
-185
-183
-181
-178
-176
-173
-170
-167
-163
-159
-155
-151
-146
-141
-136
-131
-126
-121
-116
-111
-106
-102
-98
-94
-90
-87
-84
-81
-79
-77
-76
-75
-75
-75
-76
-77
-79
-81
-83
-85
-87
-90
-92
-95
-98
-101
-104
-107
-110
-114
-118
-122
-126
-130
-135
-140
-145
-151
-156
-163
-169
-176
-184
-192
-201
-210
-221
-231
-242
-254
-266
-278
-291
-304
-317
-330
-343
-357
-371
-384
-397
-411
-424
-436
-448
-460
-470
-481
-490
-499
-507
-514
-520
-526
-530
-534
-537
-539
-541
-542
-542
-542
-541
-540
-538
-536
-533
-530
-526
-521
-517
-512
-506
-500
-494
-487
-481
-474
-466
-459
-451
-444
-436
-428
-420
-412
-404
-396
-389
-381
-373
-365
-358
-350
-343
-335
-327
-320
-313
-305
-298
-290
-283
-276
-269
-262
-255
-247
-240
-233
-225
-218
-210
-203
-195
-188
-181
-174
-167
-161
-155
-149
-144
-139
-135
-131
-127
-124
-121
-119
-117
-115
-114
-113
-113
-113
-113
-114
-116
-118
-120
-124
-128
-132
-137
-143
-149
-155
-163
-170
-178
-186
-195
-204
-213
-223
-232
-242
-253
-263
-274
-285
-296
-307
-318
-329
-340
-352
-363
-374
-384
-395
-405
-414
-424
-433
-441
-449
-457
-464
-471
-477
-483
-488
-493
-497
-501
-504
-507
-510
-512
-514
-516
-517
-518
-519
-519
-519
-518
-517
-515
-513
-511
-509
-506
-503
-501
-498
-495
-492
-489
-486
-483
-480
-477
-475
-472
-470
-468
-467
-465
-464
-463
-462
-462
-461
-461
-461
-461
-461
-462
-463
-463
-464
-466
-467
-468
-470
-472
-474
-475
-477
-479
-480
-482
-483
-485
-487
-488
-490
-493
-495
-497
-500
-502
-505
-508
-511
-514
-517
-520
-524
-527
-531
-534
-538
-541
-545
-548
-551
-554
-557
-560
-563
-566
-569
-571
-574
-576
-579
-581
-583
-585
-588
-590
-592
-595
-597
-600
-603
-606
-609
-613
-616
-620
-624
-629
-633
-638
-643
-648
-654
-660
-666
-672
-678
-684
-691
-697
-704
-710
-716
-722
-728
-734
-740
-746
-751
-757
-763
-769
-775
-782
-788
-794
-801
-808
-815
-822
-829
-837
-845
-853
-862
-870
-879
-888
-898
-907
-916
-926
-936
-945
-954
-963
-971
-979
-986
-993
-999
-1004
-1010
-1014
-1016
-1018
-1018
-1018
-1018
-1014
-1010
-1006
-1000
-992
-984
-974
-963
-951
-938
-924
-910
-895
-879
-862
-845
-827
-808
-789
-770
-750
-729
-709
-687
-666
-645
-623
-601
-579
-556
-534
-512
-490
-467
-445
-423
-401
-379
-356
-334
-312
-291
-269
-248
-227
-206
-185
-165
-144
-124
-104
-84
-64
-44
-25
-5
14
33
52
71
89
107
126
144
162
179
196
213
230
246
261
276
290
304
317
330
342
354
366
376
386
396
405
413
421
428
434
439
444
448
451
454
455
457
457
457
456
455
453
451
448
445
441
438
433
429
424
419
414
408
402
396
390
384
378
371
364
358
352
346
340
334
328
323
318
313
308
304
299
295
290
286
282
278
275
271
267
264
260
257
253
250
246
243
240
237
233
230
227
224
221
217
214
211
208
205
202
199
196
193
190
187
184
181
178
174
170
165
160
155
150
144
138
131
124
117
110
102
94
86
77
69
60
51
42
33
24
15
6
-3
-13
-22
-32
-41
-51
-60
-69
-78
-88
-96
-105
-114
-122
-130
-138
-145
-152
-159
-165
-172
-177
-182
-187
-191
-195
-199
-202
-204
-206
-208
-210
-211
-212
-213
-214
-214
-214
-214
-214
-214
-214
-214
-214
-214
-213
-213
-213
-213
-212
-212
-212
-212
-213
-213
-213
-213
-212
-212
-211
-211
-209
-208
-206
-204
-202
-199
-196
-193
-189
-185
-180
-175
-169
-163
-156
-149
-141
-133
-124
-115
-106
-96
-86
-76
-66
-55
-45
-34
-23
-13
-2
9
19
30
40
50
60
69
78
87
96
105
113
121
129
137
145
152
160
167
174
182
189
196
204
211
219
227
235
243
251
259
267
275
283
291
298
306
314
321
329
336
343
350
356
363
369
375
380
385
390
394
398
402
405
407
409
411
412
413
414
414
414
413
412
410
408
406
403
399
395
391
387
382
377
372
366
360
354
348
341
334
327
320
313
305
298
291
284
277
270
264
257
251
245
238
232
226
220
215
209
203
198
192
187
182
177
172
167
163
158
154
150
146
142
138
134
131
127
123
120
116
112
108
104
100
95
91
86
82
77
72
67
63
58
53
49
44
39
35
30
26
21
17
12
8
3
-1
-6
-10
-15
-20
-25
-30
-35
-40
-45
-50
-55
-60
-66
-71
-77
-83
-89
-95
-101
-107
-114
-120
-127
-134
-140
-147
-153
-160
-166
-173
-179
-186
-192
-198
-204
-210
-215
-221
-226
-231
-236
-240
-244
-248
-252
-256
-259
-262
-265
-267
-270
-272
-274
-276
-277
-278
-278
-278
-278
-277
-275
-274
-271
-268
-264
-260
-256
-250
-244
-238
-231
-224
-216
-207
-198
-189
-180
-170
-159
-149
-138
-127
-117
-106
-94
-83
-71
-60
-48
-35
-23
-10
2
15
29
42
55
69
82
96
110
123
137
151
165
179
193
207
221
235
249
263
277
291
305
318
331
344
357
369
381
392
403
413
423
433
442
450
459
466
474
481
487
493
499
505
510
515
520
524
528
532
535
538
541
543
545
546
547
547
546
545
543
541
539
535
531
527
522
517
511
505
498
491
484
476
468
461
453
445
437
429
422
414
407
401
395
389
383
378
373
369
365
361
358
355
352
350
347
345
343
341
340
338
336
335
334
332
331
330
329
328
327
327
326
326
326
327
327
327
328
329
330
330
331
332
333
335
336
337
338
339
340
341
342
343
344
345
345
345
345
345
345
345
344
344
343
342
341
340
339
338
336
335
333
332
330
329
327
326
324
323
321
320
318
316
314
312
310
308
305
303
300
297
295
292
290
287
285
283
281
280
279
278
278
278
278
279
279
280
282
283
285
287
289
291
293
295
298
300
303
306
309
313
316
319
323
326
329
332
335
338
340
342
344
345
346
346
347
347
346
346
345
344
343
342
341
340
339
338
337
336
336
335
335
335
335
335
335
335
335
335
335
335
335
335
334
334
333
332
332
331
329
328
327
325
323
320
318
314
311
307
303
298
293
287
281
274
267
259
251
242
233
224
214
204
193
182
171
160
149
137
125
114
103
91
80
70
59
48
38
28
18
8
-2
-11
-21
-31
-40
-50
-59
-69
-78
-86
-94
-102
-109
-116
-122
-127
-133
-137
-141
-145
-148
-150
-152
-154
-156
-157
-157
-158
-158
-157
-157
-156
-156
-155
-155
-154
-153
-152
-151
-150
-149
-148
-147
-146
-145
-144
-143
-142
-141
-141
-141
-141
-141
-142
-142
-143
-143
-143
-143
-142
-142
-141
-141
-140
-140
-140
-139
-139
-138
-137
-135
-134
-132
-130
-128
-125
-123
-121
-118
-115
-112
-109
-106
-102
-99
-95
-91
-88
-84
-80
-77
-73
-69
-66
-62
-58
-54
-50
-46
-42
-39
-35
-31
-28
-25
-22
-19
-17
-14
-13
-11
-10
-10
-9
-9
-10
-10
-11
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-30
-31
-32
-34
-36
-38
-40
-42
-44
-47
-50
-52
-55
-58
-60
-63
-66
-68
-71
-73
-76
-79
-82
-85
-88
-91
-94
-97
-100
-102
-105
-108
-110
-113
-116
-119
-122
-125
-128
-131
-135
-138
-142
-145
-149
-153
-156
-160
-163
-167
-170
-174
-177
-180
-183
-185
-188
-190
-193
-195
-197
-199
-201
-203
-205
-207
-209
-211
-213
-214
-216
-217
-217
-218
-218
-218
-217
-217
-216
-215
-214
-213
-212
-211
-211
-210
-209
-208
-206
-203
-200
-197
-193
-188
-184
-179
-173
-168
-162
-155
-149
-142
-134
-127
-119
-110
-101
-93
-83
-74
-65
-55
-45
-35
-25
-14
-3
8
20
32
44
56
68
79
91
102
112
123
133
143
152
161
171
179
188
197
205
214
222
231
239
248
257
265
273
282
289
297
303
310
316
323
329
335
341
347
353
359
365
371
377
383
389
395
400
406
411
416
421
426
431
435
439
443
447
450
452
454
456
456
457
457
457
457
457
456
456
455
455
454
453
452
450
449
447
445
443
441
438
436
433
430
427
424
420
417
413
409
405
402
398
394
390
386
382
379
375
371
368
364
360
356
352
347
343
338
333
328
323
318
313
308
303
298
293
288
282
277
272
267
262
257
253
249
245
241
237
234
230
226
222
218
214
210
206
201
196
191
186
180
175
170
164
159
153
148
143
138
133
128
123
119
114
110
107
103
100
97
95
92
90
87
84
82
79
76
73
70
67
64
61
58
55
52
50
47
45
42
40
38
36
34
32
31
30
29
28
27
27
28
28
29
30
32
34
36
38
40
42
44
47
50
53
57
60
64
67
71
75
80
84
88
93
98
103
107
112
117
121
126
130
135
140
145
150
156
162
168
174
180
186
192
198
205
212
219
226
233
240
248
255
263
270
278
286
294
301
309
316
324
331
338
345
352
358
365
372
379
385
392
398
404
410
416
422
427
432
437
442
447
451
455
459
462
465
468
470
473
475
476
477
478
478
478
477
477
476
474
473
471
469
466
464
461
457
454
449
445
440
435
429
423
417
410
402
394
385
376
367
357
347
336
325
313
301
288
275
262
249
235
222
208
194
181
168
154
141
129
116
103
91
78
66
54
41
29
17
5
-7
-18
-30
-42
-53
-64
-76
-87
-98
-109
-120
-131
-142
-152
-162
-172
-182
-192
-201
-210
-219
-228
-237
-245
-254
-262
-270
-278
-286
-294
-301
-308
-315
-322
-328
-335
-341
-346
-351
-356
-361
-365
-369
-372
-375
-378
-381
-383
-385
-386
-387
-388
-389
-389
-389
-388
-388
-387
-386
-384
-382
-380
-377
-374
-370
-366
-361
-356
-351
-345
-339
-332
-325
-318
-311
-303
-295
-287
-279
-271
-263
-255
-246
-238
-229
-221
-213
-205
-197
-190
-183
-176
-170
-164
-158
-153
-147
-142
-137
-133
-128
-124
-120
-116
-112
-109
-106
-103
-100
-97
-94
-91
-89
-86
-83
-81
-78
-76
-74
-73
-71
-70
-69
-68
-67
-66
-65
-65
-64
-64
-64
-63
-63
-64
-64
-64
-65
-65
-66
-66
-67
-68
-69
-70
-72
-73
-74
-76
-78
-79
-81
-82
-84
-85
-86
-87
-88
-89
-90
-91
-92
-92
-93
-94
-94
-95
-95
-96
-96
-96
-96
-96
-96
-95
-95
-94
-93
-92
-91
-91
-90
-90
-89
-89
-89
-88
-88
-88
-88
-88
-88
-88
-89
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-100
-101
-102
-104
-106
-107
-109
-111
-113
-114
-116
-117
-119
-121
-122
-124
-126
-127
-129
-131
-132
-134
-135
-136
-136
-137
-137
-137
-137
-137
-136
-136
-135
-135
-134
-133
-133
-132
-131
-130
-129
-129
-128
-127
-126
-126
-125
-124
-123
-122
-121
-120
-118
-117
-115
-112
-110
-107
-104
-101
-98
-95
-92
-88
-85
-81
-77
-73
-69
-65
-60
-56
-51
-46
-41
-36
-31
-26
-20
-14
-9
-3
3
9
15
21
27
33
39
45
51
57
63
69
75
80
86
91
96
101
106
110
115
119
123
128
132
136
140
144
147
151
155
159
163
168
172
176
181
185
189
193
197
200
204
207
210
212
215
217
219
221
222
224
225
225
226
226
226
226
225
225
224
223
221
220
217
215
212
209
206
202
198
194
189
185
180
176
171
166
162
157
152
148
143
138
133
128
123
118
113
108
103
97
92
87
82
76
71
66
61
56
52
47
43
39
36
32
29
26
23
21
18
16
14
12
10
9
7
6
5
5
4
4
3
3
3
3
3
3
4
4
4
5
6
6
8
9
10
12
13
15
17
19
22
24
26
29
32
35
37
40
43
46
49
53
56
59
62
65
69
72
76
79
83
87
91
95
99
103
107
111
115
119
123
127
132
136
141
146
150
155
160
166
171
176
181
187
192
197
202
207
212
217
222
227
232
237
242
247
251
256
261
265
270
274
279
283
287
291
294
298
301
304
306
309
311
313
315
317
319
321
322
324
325
326
327
328
328
329
328
328
327
327
325
324
322
320
317
314
311
308
305
301
298
294
290
287
283
279
276
272
268
263
259
254
249
244
239
234
229
224
218
213
207
202
196
191
185
180
175
170
165
161
157
154
151
148
146
144
142
141
140
139
139
139
139
139
139
140
140
141
142
142
143
143
144
144
144
145
145
146
146
147
148
149
150
151
152
153
154
155
156
156
157
158
159
159
160
160
160
160
160
159
159
158
157
156
155
154
153
151
149
147
145
143
140
138
135
132
129
126
123
120
116
113
110
106
103
99
96
92
89
85
81
78
74
70
66
62
57
53
49
44
40
35
30
25
20
15
9
4
-1
-7
-12
-17
-22
-26
-31
-35
-39
-43
-46
-49
-52
-55
-57
-59
-61
-62
-64
-65
-66
-67
-68
-70
-71
-72
-73
-74
-75
-76
-78
-79
-80
-81
-83
-84
-85
-85
-86
-86
-87
-87
-87
-87
-87
-88
-88
-88
-88
-88
-88
-88
-88
-87
-86
-85
-84
-83
-82
-81
-79
-78
-76
-74
-72
-69
-66
-63
-60
-57
-54
-51
-48
-44
-41
-39
-36
-33
-31
-28
-26
-24
-22
-20
-18
-16
-15
-14
-12
-11
-10
-10
-9
-9
-8
-8
-8
-8
-8
-8
-9
-9
-9
-10
-10
-10
-11
-11
-11
-11
-11
-12
-12
-12
-12
-12
-12
-12
-12
-12
-13
-13
-13
-13
-12
-12
-12
-11
-10
-10
-9
-8
-7
-6
-5
-3
-2
-1
1
3
4
6
8
10
12
15
17
20
22
25
28
31
35
38
42
45
49
52
56
60
64
67
71
75
79
83
87
91
95
99
102
106
110
114
117
121
124
128
132
135
138
142
145
148
150
153
156
159
162
165
167
170
172
175
177
179
181
183
185
187
188
189
190
191
192
192
193
193
193
192
192
191
190
189
188
187
185
184
182
180
179
176
174
172
170
167
164
161
158
154
150
146
141
137
131
126
121
115
109
103
97
91
85
80
74
69
64
59
54
50
45
41
38
34
30
27
24
21
19
16
14
12
10
8
6
4
2
0
-1
-3
-5
-7
-10
-12
-14
-16
-18
-21
-23
-25
-28
-30
-32
-34
-36
-37
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-51
-52
-53
-55
-57
-58
-60
-62
-65
-67
-69
-71
-73
-75
-77
-79
-81
-83
-85
-87
-89
-91
-92
-94
-96
-98
-99
-101
-103
-105
-107
-109
-111
-113
-114
-116
-117
-118
-118
-118
-118
-118
-117
-116
-114
-113
-111
-109
-106
-104
-101
-98
-95
-91
-88
-83
-79
-74
-69
-64
-58
-53
-47
-41
-35
-29
-23
-17
-11
-5
1
7
13
19
25
31
38
45
52
59
67
75
83
91
100
108
117
125
134
143
151
159
168
176
184
191
199
206
213
219
225
231
237
242
247
252
256
261
265
270
274
279
283
288
292
296
300
304
308
312
315
319
322
325
327
330
332
333
334
335
335
335
335
335
334
333
332
331
329
328
326
325
323
322
320
318
316
314
312
309
307
304
301
298
295
292
289
286
282
279
276
273
269
266
263
260
257
254
250
247
244
241
238
234
231
228
224
221
217
214
210
206
203
198
194
190
185
180
175
170
164
159
153
147
142
136
130
124
119
113
107
101
95
90
84
79
74
70
65
61
56
52
48
44
40
36
33
29
25
22
18
15
11
8
5
2
-1
-3
-6
-8
-10
-12
-14
-15
-17
-18
-19
-20
-21
-22
-23
-23
-23
-24
-23
-23
-23
-22
-21
-20
-19
-17
-16
-14
-13
-11
-9
-8
-6
-4
-3
-1
1
3
5
7
9
12
14
17
20
23
26
30
34
38
42
46
51
56
61
66
71
77
82
88
94
100
106
112
118
124
130
135
141
145
150
154
158
161
164
166
168
170
171
172
172
172
172
172
172
172
171
171
171
171
171
171
171
172
173
173
174
175
176
177
178
178
179
180
181
181
181
181
181
180
179
178
177
175
173
170
168
165
162
159
155
152
149
145
142
138
134
131
127
124
120
117
113
109
106
102
99
95
92
88
85
82
80
77
75
73
71
70
68
67
66
65
65
65
64
64
63
63
62
62
61
60
59
58
56
55
53
51
49
47
45
43
40
38
35
32
29
26
23
19
16
12
8
4
1
-3
-7
-10
-14
-17
-20
-22
-25
-27
-29
-31
-33
-34
-36
-37
-38
-39
-41
-42
-43
-45
-47
-49
-52
-55
-58
-61
-65
-69
-73
-77
-82
-86
-91
-96
-101
-105
-110
-115
-119
-124
-128
-133
-137
-141
-145
-149
-153
-156
-160
-163
-166
-169
-172
-175
-178
-181
-183
-185
-188
-190
-192
-194
-197
-199
-201
-203
-205
-207
-210
-212
-214
-216
-218
-221
-223
-225
-227
-229
-231
-233
-236
-238
-241
-244
-248
-251
-255
-259
-263
-267
-272
-276
-281
-285
-290
-295
-299
-304
-308
-312
-317
-321
-325
-329
-332
-336
-340
-343
-347
-350
-353
-357
-360
-363
-367
-370
-374
-378
-382
-386
-390
-394
-398
-402
-406
-410
-414
-417
-421
-425
-428
-431
-434
-437
-440
-442
-445
-447
-449
-451
-452
-454
-455
-457
-459
-460
-462
-464
-466
-468
-470
-472
-474
-477
-479
-481
-483
-485
-486
-488
-489
-489
-490
-490
-489
-488
-486
-484
-482
-479
-476
-473
-469
-465
-461
-456
-451
-447
-441
-436
-431
-425
-420
-414
-409
-403
-397
-392
-387
-381
-376
-371
-366
-362
-357
-352
-348
-343
-339
-334
-329
-324
-320
-315
-310
-305
-300
-294
-289
-284
-279
-274
-268
-263
-258
-253
-248
-244
-239
-234
-229
-225
-220
-215
-211
-206
-201
-196
-191
-186
-180
-175
-170
-164
-158
-152
-147
-141
-135
-129
-123
-117
-110
-104
-98
-92
-85
-78
-72
-65
-58
-50
-43
-35
-27
-19
-10
-2
7
17
26
36
46
56
67
78
89
100
111
122
133
144
155
166
176
187
197
207
217
227
237
246
255
264
273
282
291
299
308
316
325
333
342
350
359
367
375
383
391
400
408
416
424
432
440
447
455
463
470
478
485
493
500
507
514
520
527
533
539
545
551
557
562
567
573
578
583
588
593
598
602
607
611
616
620
624
628
632
635
638
641
644
647
649
651
653
655
657
658
659
660
661
662
663
664
664
665
665
666
666
667
667
667
668
668
668
668
668
668
668
668
667
667
666
665
663
662
660
658
655
652
649
645
641
637
633
628
623
618
613
607
602
596
591
585
579
573
567
561
555
549
542
536
529
522
515
509
502
495
488
481
474
467
461
454
447
440
434
427
420
414
407
400
393
386
379
372
364
357
349
341
333
325
317
309
300
291
282
273
264
255
245
236
226
216
206
197
187
177
167
157
148
138
129
120
111
102
93
85
76
68
60
52
44
36
28
21
13
6
-2
-9
-17
-24
-31
-38
-45
-53
-59
-66
-73
-80
-86
-92
-98
-104
-110
-115
-121
-126
-131
-135
-140
-144
-148
-151
-155
-158
-161
-164
-166
-168
-169
-171
-172
-172
-172
-172
-172
-171
-170
-168
-167
-165
-162
-160
-157
-154
-151
-148
-144
-140
-137
-133
-129
-125
-120
-116
-111
-107
-102
-97
-93
-88
-83
-77
-72
-67
-62
-56
-51
-45
-39
-34
-28
-22
-17
-11
-5
1
6
12
17
23
28
34
39
44
49
54
59
63
68
72
77
81
85
88
92
95
98
101
104
106
108
109
111
112
113
113
113
113
113
113
112
111
110
109
107
105
103
101
99
97
94
92
89
86
83
81
78
75
72
69
67
64
62
59
57
56
54
53
51
50
50
49
49
49
49
49
49
49
49
49
49
49
49
49
49
48
48
47
46
45
44
43
42
40
39
37
36
34
33
31
30
28
27
26
25
24
23
22
21
20
20
19
18
17
16
15
14
13
12
11
10
8
6
5
3
1
-2
-4
-7
-10
-12
-15
-18
-21
-24
-27
-30
-33
-36
-39
-41
-43
-46
-48
-50
-52
-54
-55
-57
-58
-60
-61
-62
-63
-64
-64
-65
-65
-66
-66
-66
-67
-67
-67
-67
-68
-68
-68
-68
-69
-69
-69
-69
-70
-70
-71
-71
-71
-72
-72
-72
-72
-72
-72
-72
-71
-70
-69
-68
-66
-64
-62
-60
-58
-56
-54
-52
-49
-47
-45
-42
-40
-38
-36
-34
-32
-30
-28
-26
-25
-23
-21
-20
-18
-16
-15
-13
-11
-9
-7
-5
-2
0
2
5
7
10
12
15
17
19
21
23
25
26
28
29
30
31
32
32
33
33
33
33
33
33
32
32
31
30
29
28
27
25
24
22
20
19
17
15
13
11
9
7
6
4
3
1
0
-1
-3
-4
-5
-6
-7
-8
-9
-9
-10
-10
-11
-11
-12
-12
-12
-12
-12
-12
-12
-12
-11
-11
-11
-11
-11
-11
-11
-11
-12
-12
-12
-12
-12
-13
-13
-13
-13
-14
-14
-14
-15
-15
-15
-16
-16
-16
-17
-17
-17
-17
-17
-18
-18
-18
-18
-18
-19
-19
-19
-19
-19
-20
-20
-20
-20
-20
-21
-21
-21
-21
-22
-22
-22
-23
-23
-23
-24
-25
-25
-26
-26
-27
-28
-28
-29
-30
-30
-31
-31
-31
-32
-32
-32
-32
-32
-32
-32
-32
-31
-31
-31
-30
-30
-29
-29
-28
-27
-26
-25
-24
-23
-22
-21
-19
-17
-16
-14
-12
-10
-7
-5
-3
0
2
5
8
10
13
16
19
21
24
27
30
32
35
38
41
43
46
49
52
55
58
61
64
67
70
73
76
79
82
86
89
91
94
97
100
102
104
106
108
110
112
114
116
117
119
121
122
124
126
127
129
131
133
134
136
138
140
141
143
145
146
148
149
151
153
154
156
157
158
160
161
162
164
165
166
167
168
168
169
170
170
170
171
171
172
172
172
173
173
174
174
175
176
176
177
177
177
178
178
178
178
178
177
177
176
176
175
174
172
171
170
168
166
164
162
160
157
155
152
150
147
144
141
137
134
130
127
123
119
115
111
107
103
99
94
90
86
81
77
73
68
64
60
56
52
48
45
41
37
34
30
27
24
21
18
15
12
10
7
5
3
1
-1
-2
-4
-5
-6
-7
-7
-8
-8
-8
-8
-7
-6
-6
-4
-3
-2
0
1
3
5
7
9
11
14
16
18
21
23
26
28
31
34
37
40
42
46
49
52
55
58
62
65
69
73
76
80
84
88
92
96
100
104
108
113
117
121
126
130
134
138
143
147
151
155
158
162
165
169
172
175
177
180
182
184
186
187
189
190
191
191
192
192
192
192
192
192
191
190
190
189
188
187
185
184
183
181
180
178
176
174
172
170
168
166
163
161
158
155
153
150
147
145
142
140
137
135
132
130
128
126
123
121
120
118
116
115
113
112
111
110
109
109
109
108
108
108
109
109
109
109
110
110
110
111
111
112
112
112
113
113
114
114
114
115
115
116
116
117
118
119
120
121
123
124
125
127
129
130
132
134
136
137
139
141
142
144
146
148
149
151
152
154
155
157
158
159
160
161
162
162
163
163
163
163
163
163
162
162
161
160
159
159
158
156
155
154
153
152
151
149
148
146
145
143
142
140
139
137
136
134
133
131
130
129
127
126
125
125
124
124
123
123
123
123
123
123
123
124
124
125
125
126
127
127
128
129
130
131
132
133
134
135
136
137
138
139
140
142
143
144
146
147
149
150
152
154
156
158
160
162
164
166
168
170
172
174
176
178
180
182
183
185
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
201
202
204
205
206
207
208
209
210
212
213
214
216
217
218
220
221
223
225
226
228
230
231
233
235
236
238
240
242
243
245
246
248
250
251
252
254
255
256
257
259
260
261
262
263
263
264
265
265
266
266
266
266
266
266
266
266
265
264
263
262
261
259
258
256
254
252
249
246
243
240
237
233
229
225
221
216
212
207
202
197
191
186
180
175
169
164
158
153
148
142
137
131
126
121
115
110
105
100
95
90
85
80
75
71
66
61
57
52
47
43
38
34
29
25
21
16
12
8
4
0
-4
-7
-11
-14
-17
-20
-23
-25
-27
-30
-32
-33
-35
-37
-38
-39
-40
-41
-42
-43
-44
-44
-45
-45
-46
-46
-46
-47
-47
-47
-47
-47
-47
-46
-46
-46
-46
-46
-46
-46
-46
-45
-45
-46
-46
-46
-46
-47
-47
-48
-48
-49
-50
-51
-51
-52
-53
-54
-55
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-78
-79
-80
-81
-82
-82
-83
-84
-84
-85
-86
-86
-87
-87
-88
-88
-88
-89
-89
-89
-89
-90
-90
-90
-90
-90
-89
-89
-89
-88
-88
-87
-86
-86
-85
-83
-82
-81
-80
-78
-77
-76
-74
-73
-71
-70
-69
-67
-65
-64
-62
-60
-58
-56
-53
-51
-48
-46
-43
-40
-36
-33
-29
-26
-22
-18
-14
-10
-6
-2
3
7
12
17
21
26
31
35
40
44
49
53
58
62
66
70
73
77
80
84
87
89
92
94
97
99
101
103
104
106
107
109
110
111
113
114
115
116
117
118
119
121
122
123
124
125
126
127
128
129
130
131
132
133
134
134
135
136
136
137
137
137
138
138
138
138
138
138
138
138
138
138
138
137
137
136
136
135
135
134
133
132
132
131
131
130
129
129
128
128
127
127
126
126
125
124
124
123
122
121
121
120
119
117
116
115
114
112
111
109
107
105
103
101
99
97
95
92
89
87
84
81
78
75
72
69
65
62
59
55
52
48
45
42
39
36
32
29
26
24
21
18
15
12
9
6
3
0
-3
-6
-9
-12
-15
-18
-21
-24
-27
-30
-33
-36
-39
-42
-44
-47
-50
-53
-56
-59
-62
-65
-67
-70
-72
-75
-77
-79
-81
-83
-84
-86
-87
-88
-89
-89
-90
-90
-90
-91
-91
-91
-91
-91
-91
-92
-92
-92
-93
-93
-94
-95
-96
-97
-98
-99
-100
-101
-102
-103
-104
-105
-106
-106
-107
-108
-108
-108
-109
-109
-109
-108
-108
-108
-107
-106
-105
-104
-102
-101
-99
-97
-95
-93
-91
-88
-86
-83
-81
-78
-75
-72
-69
-66
-63
-60
-57
-54
-51
-48
-45
-42
-39
-36
-33
-30
-28
-25
-23
-21
-19
-17
-15
-13
-11
-10
-8
-7
-5
-4
-2
-1
0
2
3
5
6
8
9
10
12
13
14
15
16
17
18
19
19
20
20
20
21
21
21
20
20
20
20
19
19
18
17
17
16
16
15
14
14
13
12
12
11
10
10
9
8
8
7
7
6
6
5
5
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
3
3
3
2
2
1
1
0
-1
-2
-2
-3
-4
-5
-6
-7
-8
-10
-11
-12
-14
-15
-16
-18
-19
-20
-22
-23
-24
-26
-27
-28
-29
-31
-32
-33
-34
-35
-35
-36
-37
-37
-38
-38
-38
-39
-39
-39
-39
-38
-38
-38
-37
-37
-36
-36
-35
-35
-34
-33
-32
-32
-31
-30
-29
-28
-27
-26
-25
-24
-24
-23
-22
-21
-20
-20
-19
-18
-18
-17
-16
-16
-15
-15
-14
-14
-13
-13
-12
-12
-11
-10
-10
-9
-9
-8
-7
-7
-6
-5
-5
-4
-3
-3
-2
-2
-1
0
0
1
2
2
3
4
5
6
6
7
8
9
10
12
13
14
15
17
19
20
22
24
26
28
30
32
34
36
39
41
43
46
48
51
53
56
58
61
63
66
69
72
75
78
81
84
87
90
94
98
101
105
109
113
117
121
125
130
134
139
143
148
153
157
162
166
171
175
179
184
188
191
195
199
202
206
209
212
215
218
221
223
226
229
231
234
236
238
241
243
245
247
250
252
253
255
257
258
260
261
262
263
264
265
266
266
267
267
267
266
266
265
265
264
263
262
260
259
257
255
253
251
249
247
244
242
239
236
233
230
227
224
222
219
216
213
210
207
204
201
198
196
193
190
187
185
182
179
177
174
171
168
165
163
160
157
154
151
148
145
142
139
136
133
130
127
124
122
119
116
114
112
109
107
105
103
100
98
96
94
93
91
89
87
85
83
81
80
78
76
74
73
71
69
68
66
65
64
62
61
60
59
58
57
56
55
55
54
54
53
53
52
52
51
51
51
50
50
50
49
49
49
49
48
48
48
48
48
48
48
47
47
47
47
47
46
46
46
46
45
45
44
43
43
42
41
40
39
37
36
35
33
32
30
28
27
25
23
22
20
18
17
15
13
12
10
8
7
5
3
1
0
-2
-4
-6
-8
-9
-11
-13
-16
-18
-20
-23
-25
-28
-31
-34
-37
-40
-43
-47
-50
-54
-57
-61
-65
-69
-73
-77
-81
-85
-89
-93
-98
-102
-106
-111
-115
-120
-125
-129
-134
-139
-144
-148
-153
-158
-163
-167
-172
-177
-181
-186
-190
-195
-200
-204
-209
-213
-218
-222
-227
-231
-236
-240
-244
-249
-253
-257
-262
-266
-270
-274
-278
-282
-285
-289
-292
-295
-298
-300
-303
-305
-307
-308
-310
-311
-312
-313
-313
-314
-314
-314
-314
-314
-314
-313
-312
-311
-311
-310
-308
-307
-306
-305
-303
-302
-300
-299
-297
-295
-294
-292
-290
-288
-286
-283
-281
-279
-276
-274
-271
-268
-265
-262
-259
-255
-252
-248
-245
-241
-237
-233
-229
-225
-221
-216
-212
-207
-203
-198
-194
-189
-185
-180
-175
-170
-165
-161
-156
-151
-146
-141
-136
-130
-125
-120
-114
-109
-103
-98
-92
-86
-80
-74
-68
-62
-56
-50
-44
-37
-31
-24
-18
-11
-4
2
9
16
23
31
38
45
52
59
66
73
80
87
94
101
108
115
122
129
136
142
149
155
161
167
173
179
184
190
195
200
206
211
216
221
226
230
235
240
245
250
255
259
264
269
274
278
283
288
292
297
301
306
311
315
320
325
329
334
339
343
348
353
358
362
367
372
377
382
386
391
396
400
405
409
413
417
421
425
429
433
437
441
444
447
451
454
456
459
462
464
466
468
470
471
473
474
474
475
475
476
475
475
475
474
474
473
472
470
469
468
466
464
462
460
457
454
451
448
445
441
437
433
429
425
420
416
411
407
402
397
392
387
382
376
371
366
360
355
349
343
337
331
325
319
313
307
300
294
287
281
274
267
260
253
246
239
232
225
217
210
203
195
188
181
173
165
158
150
143
135
128
120
112
105
98
90
83
76
69
62
55
48
42
36
30
24
19
13
8
3
-1
-5
-9
-13
-17
-20
-23
-27
-30
-32
-35
-38
-40
-43
-45
-47
-50
-52
-54
-56
-58
-60
-61
-63
-65
-66
-67
-69
-70
-71
-72
-73
-74
-74
-75
-76
-76
-76
-77
-77
-77
-78
-78
-78
-78
-77
-77
-77
-77
-76
-76
-76
-75
-75
-74
-73
-73
-72
-72
-71
-70
-70
-69
-69
-68
-68
-67
-67
-66
-66
-65
-65
-64
-64
-64
-63
-63
-63
-63
-63
-63
-63
-63
-63
-63
-63
-63
-63
-63
-63
-63
-63
-62
-62
-61
-60
-59
-58
-57
-56
-55
-53
-52
-50
-48
-47
-45
-43
-40
-38
-36
-33
-31
-28
-26
-23
-20
-17
-14
-11
-8
-5
-1
2
6
9
13
17
21
24
29
33
37
41
46
50
55
60
65
71
76
81
87
93
99
105
111
117
124
130
137
143
150
157
164
171
179
186
194
202
209
217
225
233
241
249
258
266
274
283
292
300
309
318
327
335
344
353
362
371
380
389
398
407
415
424
433
442
450
459
467
475
483
491
499
507
514
522
529
537
544
551
558
565
571
578
585
591
597
603
609
615
621
627
632
637
642
647
652
656
660
664
668
671
675
678
681
683
686
688
690
691
693
694
695
696
697
697
697
697
697
696
696
695
694
692
690
689
686
684
681
679
676
672
669
665
662
658
653
649
645
640
636
631
626
621
617
612
607
602
597
592
587
582
576
571
567
562
557
552
547
542
537
533
528
523
519
514
509
505
500
495
490
486
481
476
471
466
461
456
451
445
440
435
430
425
420
414
409
404
399
394
388
383
378
372
366
361
355
349
343
337
331
324
318
312
305
299
293
286
280
273
267
261
254
248
242
235
229
223
217
210
204
198
192
186
180
174
169
163
157
152
147
141
136
131
126
122
117
112
108
104
99
95
91
87
83
79
75
72
68
64
60
57
53
49
45
42
38
34
31
27
23
19
15
11
7
3
-1
-5
-9
-13
-17
-21
-24
-28
-32
-35
-38
-42
-45
-48
-51
-54
-57
-59
-62
-65
-68
-70
-73
-75
-78
-80
-83
-85
-88
-90
-93
-95
-98
-100
-102
-105
-107
-110
-112
-114
-117
-119
-122
-124
-127
-129
-131
-134
-136
-139
-141
-143
-146
-148
-150
-152
-155
-157
-159
-161
-164
-166
-168
-171
-174
-176
-179
-182
-185
-187
-190
-193
-196
-200
-203
-206
-209
-212
-215
-218
-221
-224
-227
-229
-232
-235
-238
-241
-243
-246
-249
-252
-254
-257
-260
-262
-265
-267
-270
-273
-275
-278
-280
-283
-285
-288
-290
-293
-295
-298
-300
-303
-305
-307
-310
-312
-314
-316
-318
-320
-322
-324
-326
-328
-330
-332
-334
-336
-338
-340
-341
-343
-345
-347
-349
-350
-352
-353
-355
-356
-358
-359
-360
-361
-362
-363
-363
-364
-365
-365
-365
-366
-366
-366
-367
-367
-367
-367
-367
-367
-366
-366
-366
-365
-365
-364
-363
-362
-361
-360
-359
-357
-356
-355
-353
-351
-350
-348
-346
-344
-343
-341
-339
-337
-335
-332
-330
-328
-326
-324
-321
-319
-317
-314
-312
-310
-307
-305
-303
-301
-298
-296
-294
-292
-290
-288
-286
-284
-282
-280
-278
-276
-274
-272
-269
-267
-265
-263
-260
-258
-255
-253
-250
-247
-245
-242
-239
-236
-233
-230
-226
-223
-220
-216
-212
-209
-205
-201
-198
-194
-190
-187
-183
-179
-175
-172
-168
-165
-161
-158
-155
-152
-149
-146
-143
-141
-138
-136
-134
-132
-130
-128
-126
-124
-123
-121
-120
-119
-117
-116
-115
-114
-113
-112
-111
-110
-109
-108
-107
-107
-106
-105
-105
-104
-103
-103
-102
-102
-102
-101
-101
-101
-100
-100
-100
-99
-99
-98
-98
-98
-97
-97
-96
-96
-95
-95
-94
-94
-93
-92
-92
-91
-90
-89
-88
-87
-86
-85
-84
-83
-82
-81
-80
-79
-78
-76
-75
-74
-73
-72
-70
-69
-68
-67
-65
-64
-63
-61
-60
-58
-57
-55
-53
-51
-49
-47
-45
-43
-41
-38
-36
-33
-31
-28
-25
-23
-20
-17
-14
-11
-8
-6
-3
0
3
6
9
12
15
18
20
23
26
29
32
35
37
40
43
46
49
52
55
58
61
64
67
69
72
75
78
81
83
86
88
91
93
96
98
100
102
104
106
108
110
111
113
114
116
117
119
120
121
123
124
125
126
127
128
130
131
132
133
134
135
137
138
139
141
142
143
145
146
148
149
150
152
153
155
156
157
159
160
161
163
164
166
167
168
170
171
172
174
175
176
177
178
180
181
182
183
184
185
186
187
187
188
188
189
189
190
190
190
191
191
191
191
192
192
192
192
192
192
193
193
193
193
193
193
193
193
193
193
193
193
193
192
192
192
191
191
191
190
189
189
188
187
187
186
185
184
184
183
182
181
181
180
180
180
179
179
179
179
179
179
180
180
181
181
182
182
183
184
185
186
187
188
189
191
192
193
195
196
198
199
201
203
205
207
209
211
213
215
217
219
221
223
225
227
229
231
233
235
237
239
241
244
246
248
249
251
253
255
257
259
261
262
264
265
267
268
270
271
272
273
274
275
276
276
277
277
278
278
278
278
278
277
277
276
276
275
275
274
273
272
271
270
269
268
267
265
264
263
261
259
257
255
253
251
249
246
244
241
238
235
232
229
225
222
218
214
210
206
201
197
192
187
182
177
172
167
162
156
151
145
140
135
129
124
119
113
108
103
98
94
89
84
80
76
71
67
63
59
55
52
48
45
42
38
35
32
30
27
24
22
19
17
15
13
11
9
7
5
3
2
0
-1
-3
-4
-5
-7
-8
-9
-10
-11
-11
-12
-13
-13
-14
-14
-14
-15
-15
-15
-14
-14
-14
-13
-13
-12
-12
-11
-10
-9
-8
-7
-6
-5
-4
-3
-2
0
1
3
5
7
9
11
13
16
18
21
24
26
29
32
35
38
42
45
48
52
55
58
62
65
68
72
75
79
82
85
89
92
95
98
101
104
107
110
113
116
118
121
124
126
129
131
133
136
138
140
143
145
147
149
151
153
155
157
160
162
164
166
169
171
174
177
180
183
186
189
192
195
199
202
205
209
212
216
219
222
225
229
232
235
237
240
243
245
247
250
252
254
256
258
259
261
263
264
265
267
268
269
270
272
273
274
274
275
276
277
277
278
279
279
280
280
280
280
280
281
280
280
280
280
279
279
278
278
277
276
276
275
274
273
272
271
270
269
267
266
265
264
262
261
259
258
256
255
253
251
250
248
246
244
242
241
239
237
235
233
231
229
227
225
222
220
218
216
213
211
209
206
204
202
199
197
194
192
189
187
185
182
180
178
175
173
171
169
167
165
163
161
159
158
156
154
153
151
150
149
148
147
146
146
145
145
144
144
144
144
145
145
145
146
147
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
164
165
166
167
167
168
169
169
170
170
171
171
172
172
172
173
173
173
173
173
173
173
173
172
172
172
171
171
170
170
169
168
168
167
166
165
164
163
162
160
159
157
156
154
152
150
148
146
144
142
139
137
134
132
129
127
124
121
119
116
113
110
108
105
102
100
97
94
92
89
86
84
81
79
76
74
72
69
67
65
63
60
58
56
54
52
50
48
46
45
43
41
39
38
36
35
33
32
31
30
28
27
26
25
24
23
22
21
21
20
19
19
18
18
18
17
17
17
18
18
18
19
19
20
21
22
23
24
25
26
28
29
30
32
33
35
36
38
39
41
42
44
45
46
47
49
50
51
52
52
53
54
54
55
55
55
56
56
56
57
57
57
57
57
57
58
58
58
58
58
59
59
59
60
60
60
61
62
62
63
63
64
65
66
66
67
68
68
69
70
70
71
71
72
72
73
73
73
74
74
74
74
74
74
74
74
74
74
74
73
73
73
72
72
71
70
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
54
53
52
51
50
49
48
47
46
45
43
42
41
40
38
37
36
35
34
32
31
30
29
28
28
27
26
26
25
25
25
25
25
25
25
25
25
26
26
27
27
28
28
29
29
30
31
32
33
34
35
35
36
37
38
39
40
41
41
42
43
43
44
44
45
45
45
45
46
46
46
46
46
46
46
45
45
45
45
45
45
45
44
44
44
44
43
43
43
42
42
42
41
41
40
39
39
38
38
37
36
35
35
34
33
33
32
31
30
30
29
28
27
26
25
24
23
22
21
20
18
17
16
14
13
11
10
9
7
5
4
2
0
-3
-5
-7
-9
-12
-14
-16
-18
-20
-22
-24
-25
-27
-29
-31
-33
-34
-36
-38
-40
-42
-43
-45
-46
-48
-49
-50
-52
-53
-54
-55
-57
-58
-59
-61
-62
-63
-64
-65
-66
-66
-67
-68
-69
-69
-70
-71
-71
-72
-73
-74
-74
-75
-76
-76
-77
-78
-78
-79
-80
-80
-81
-82
-82
-83
-83
-84
-84
-84
-84
-85
-85
-85
-85
-85
-85
-85
-85
-85
-85
-84
-84
-83
-83
-82
-81
-81
-80
-79
-78
-77
-76
-75
-74
-74
-73
-72
-72
-71
-70
-70
-70
-69
-69
-69
-68
-68
-68
-68
-68
-68
-68
-68
-69
-69
-70
-71
-72
-72
-73
-74
-75
-76
-77
-79
-80
-81
-82
-84
-85
-86
-88
-89
-90
-92
-93
-94
-95
-96
-98
-99
-100
-101
-102
-103
-104
-105
-106
-107
-109
-110
-111
-112
-113
-114
-114
-115
-116
-116
-117
-117
-118
-118
-119
-119
-119
-119
-120
-120
-120
-120
-120
-119
-119
-119
-119
-119
-119
-119
-119
-119
-118
-118
-118
-118
-117
-117
-116
-115
-115
-114
-113
-113
-112
-111
-111
-110
-109
-109
-108
-107
-107
-106
-105
-104
-103
-102
-101
-100
-99
-98
-97
-96
-95
-94
-93
-92
-91
-90
-89
-88
-87
-87
-86
-85
-85
-85
-84
-84
-83
-83
-82
-82
-81
-81
-81
-80
-80
-80
-79
-79
-78
-78
-77
-77
-76
-75
-74
-73
-72
-71
-69
-68
-66
-64
-62
-60
-58
-56
-54
-51
-48
-46
-43
-40
-37
-34
-31
-28
-25
-22
-19
-16
-13
-9
-6
-3
0
4
7
10
14
17
20
23
26
28
31
34
36
39
41
44
46
49
52
54
57
59
62
65
68
70
73
76
79
82
85
88
91
94
98
101
104
108
111
114
118
122
126
130
134
138
142
146
150
155
159
164
169
173
178
182
187
191
196
200
204
208
212
216
220
224
228
232
235
238
242
245
248
251
254
257
259
262
264
267
269
271
273
275
277
278
280
281
283
284
285
286
288
289
290
291
292
293
294
295
296
297
297
298
299
300
300
301
302
302
303
304
304
305
305
306
306
307
307
308
308
308
309
309
309
308
308
308
308
307
307
307
306
306
305
305
304
303
302
301
300
299
298
296
295
293
292
290
289
287
285
284
282
280
279
277
275
274
272
271
269
267
266
265
263
262
260
259
258
256
255
253
252
250
249
247
246
245
243
242
241
239
238
236
235
234
232
231
230
229
227
226
225
224
223
222
221
220
219
217
216
215
214
213
211
210
209
207
206
205
204
203
202
201
200
199
198
197
197
196
196
195
195
195
195
195
195
195
196
196
197
197
198
198
199
200
201
202
203
204
205
206
207
208
209
211
212
213
215
216
217
218
219
221
222
223
224
225
226
226
227
228
229
230
231
232
232
233
234
235
236
237
238
239
239
240
240
241
241
241
242
242
242
242
242
242
242
242
242
242
241
241
240
240
239
239
238
237
236
235
234
233
232
231
229
228
226
225
224
222
221
219
218
216
215
213
211
209
207
205
203
201
198
196
193
191
188
186
183
180
177
175
172
169
166
164
161
158
155
152
150
147
144
141
138
136
133
130
128
125
123
121
118
116
114
112
111
109
107
106
104
103
101
100
99
98
96
95
94
93
92
92
91
90
89
88
87
86
86
85
84
84
83
82
82
81
81
81
80
80
80
80
80
80
80
81
81
81
81
81
81
82
82
82
82
82
83
83
83
83
83
83
83
83
83
82
82
82
81
81
80
79
79
78
77
76
75
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
53
52
51
50
50
49
48
48
47
47
47
47
46
46
46
46
46
46
45
45
45
45
45
44
44
44
44
43
43
43
42
42
41
41
40
40
39
38
38
37
36
36
35
34
34
33
33
32
32
31
31
31
31
31
31
31
31
32
32
32
33
33
34
35
36
37
38
39
40
41
42
44
45
46
48
49
51
52
54
55
57
58
60
61
63
64
66
67
69
70
72
73
75
76
78
79
81
82
84
85
87
88
89
91
92
93
94
96
97
98
99
101
102
103
104
105
106
108
109
110
111
112
113
114
115
117
118
119
120
121
122
123
124
125
126
127
127
128
128
129
129
129
130
130
129
129
129
128
128
127
126
126
125
124
123
121
120
119
118
116
115
113
111
110
108
106
104
102
100
98
96
93
91
89
87
84
82
79
77
74
72
69
67
64
61
59
56
53
50
48
45
42
39
37
34
31
29
26
23
21
18
16
14
11
9
6
4
2
0
-3
-5
-7
-9
-11
-13
-14
-16
-18
-19
-20
-22
-23
-24
-25
-26
-27
-28
-28
-29
-30
-30
-31
-31
-31
-32
-32
-32
-32
-32
-32
-32
-32
-32
-32
-31
-31
-31
-31
-31
-31
-31
-31
-31
-31
-32
-32
-32
-33
-33
-33
-34
-34
-35
-35
-36
-36
-37
-37
-38
-39
-39
-40
-41
-41
-42
-43
-44
-45
-45
-46
-47
-48
-49
-49
-50
-51
-51
-52
-53
-54
-54
-55
-56
-56
-57
-58
-58
-59
-60
-60
-61
-62
-62
-63
-63
-64
-64
-65
-65
-66
-66
-67
-67
-68
-68
-68
-69
-69
-69
-70
-70
-70
-70
-70
-70
-71
-70
-70
-70
-70
-70
-69
-69
-69
-68
-68
-67
-66
-66
-65
-65
-64
-64
-63
-62
-62
-61
-60
-60
-59
-58
-57
-56
-56
-55
-54
-53
-52
-51
-50
-49
-49
-48
-47
-46
-45
-45
-44
-43
-42
-42
-41
-40
-39
-38
-37
-36
-35
-34
-33
-32
-31
-30
-29
-28
-27
-26
-25
-24
-23
-21
-20
-19
-18
-16
-15
-14
-12
-11
-10
-8
-7
-5
-4
-2
-1
1
3
4
6
8
10
12
14
16
18
20
22
24
26
28
31
33
35
37
39
42
44
46
48
50
52
54
57
59
61
63
65
67
70
72
74
76
79
81
83
85
87
89
91
92
94
96
97
99
101
102
103
105
106
107
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
125
126
126
127
127
128
128
128
129
129
129
129
129
129
129
129
129
129
129
128
128
128
128
128
127
127
127
126
126
125
125
124
124
123
122
122
121
121
120
120
119
119
118
118
117
117
116
116
116
115
115
115
115
115
115
114
114
114
114
114
114
114
114
115
115
115
115
116
116
116
117
117
118
119
119
120
121
121
122
123
123
124
125
126
127
128
129
130
131
132
133
134
135
136
136
137
138
139
140
141
141
142
143
144
145
145
146
147
148
149
150
150
151
152
153
154
155
156
157
158
159
160
161
163
164
165
166
168
169
170
172
173
175
176
178
179
180
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
198
199
200
200
201
201
202
202
203
203
203
204
204
204
204
204
204
204
203
203
203
202
201
201
200
199
199
198
197
197
196
195
195
194
193
192
191
189
188
187
186
184
183
181
180
178
177
175
173
171
169
167
165
163
161
159
157
154
152
149
147
144
141
138
135
132
129
126
123
120
116
113
109
106
102
99
95
91
88
84
80
76
73
69
65
61
57
53
49
46
42
38
35
31
28
25
21
18
15
12
8
5
1
-2
-5
-8
-11
-14
-17
-20
-23
-25
-28
-30
-33
-35
-37
-40
-42
-44
-46
-47
-49
-51
-52
-54
-55
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-68
-69
-69
-70
-70
-70
-70
-70
-70
-70
-70
-70
-70
-70
-70
-69
-69
-69
-68
-67
-67
-66
-65
-64
-64
-63
-62
-61
-61
-60
-59
-58
-58
-57
-56
-56
-55
-54
-53
-52
-51
-50
-49
-48
-47
-45
-44
-43
-41
-40
-38
-37
-36
-34
-32
-31
-29
-28
-26
-24
-22
-21
-19
-17
-15
-13
-11
-9
-7
-5
-3
-1
1
4
6
8
11
13
16
18
20
23
25
27
29
31
33
35
37
39
41
42
44
45
46
48
49
50
51
53
54
55
56
57
58
59
60
60
61
62
62
63
63
63
63
62
62
62
61
61
60
60
59
59
58
58
57
57
56
56
55
55
54
54
53
52
52
51
50
49
48
47
46
45
43
42
41
39
38
37
36
34
33
32
31
30
28
27
26
25
24
23
22
21
20
20
19
18
18
17
16
16
15
15
15
14
14
13
13
13
13
12
12
12
12
12
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
10
10
9
9
8
8
7
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
5
5
5
5
6
6
7
7
7
8
8
9
9
10
10
11
11
11
12
12
12
12
12
12
12
12
12
12
11
11
11
12
12
12
12
12
13
13
13
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
15
15
15
16
16
16
17
17
17
17
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
17
17
17
17
17
17
17
17
17
17
17
17
18
18
18
19
19
20
20
21
21
22
22
23
23
24
24
25
26
26
27
28
28
29
30
31
32
33
34
35
36
37
38
40
41
42
43
44
46
47
48
49
50
51
52
54
55
56
58
59
61
62
64
66
67
69
71
73
75
78
80
82
85
87
90
92
95
98
101
104
107
110
113
116
119
122
125
128
131
134
138
141
144
147
150
154
157
160
163
166
169
172
175
178
181
184
186
189
191
194
196
198
200
203
205
207
209
211
214
216
218
220
223
225
227
229
231
233
235
237
239
240
242
244
245
247
248
250
251
253
254
255
256
258
259
260
261
262
263
264
265
266
267
268
269
269
270
270
270
271
271
271
271
270
270
270
269
269
268
267
266
266
265
264
263
262
261
260
259
258
256
255
254
253
251
250
249
247
246
245
243
242
240
239
237
236
234
233
231
229
228
226
224
223
221
219
218
216
214
212
211
209
207
205
203
202
200
198
196
195
193
191
190
188
186
185
183
182
180
179
177
176
174
173
172
170
169
168
167
166
166
165
164
164
163
163
163
162
162
161
161
161
160
160
160
159
159
159
158
158
157
157
157
156
156
155
155
155
154
154
153
153
152
152
151
151
151
150
150
149
149
148
148
148
147
147
146
146
145
144
144
143
142
141
141
140
139
138
138
137
136
136
135
135
134
134
133
133
133
133
133
133
133
133
134
134
135
135
136
136
137
137
138
139
139
140
140
141
141
141
142
142
143
143
143
143
143
143
143
143
143
143
143
143
143
143
143
143
143
142
142
142
141
141
140
140
139
139
138
138
137
137
136
136
135
135
134
134
133
133
132
132
131
131
130
130
129
129
128
128
127
126
125
124
123
122
121
120
119
118
117
116
115
115
114
113
112
111
110
109
108
107
107
106
105
105
104
104
103
103
102
102
101
101
101
101
101
101
100
100
100
100
100
100
100
100
100
100
100
100
100
100
101
101
101
101
102
102
102
103
103
103
104
104
105
105
106
106
106
107
107
108
108
108
109
109
109
110
110
110
111
111
111
111
111
112
112
112
112
112
112
112
111
111
111
111
111
111
110
110
110
109
109
108
108
108
107
107
106
106
105
105
104
104
103
103
102
102
101
101
100
100
99
99
98
98
97
97
96
96
95
95
95
94
94
94
94
93
93
93
93
92
92
92
91
91
91
90
90
89
89
89
88
88
88
88
87
87
87
86
86
86
86
85
85
85
84
84
84
84
83
83
83
83
83
83
83
83
84
84
85
85
86
87
88
89
90
91
92
93
95
96
97
98
100
101
103
104
105
107
108
110
111
113
114
116
117
118
120
121
122
123
124
125
126
127
128
128
129
130
131
131
132
133
133
134
135
135
136
137
138
138
139
140
141
142
143
144
145
146
148
149
150
151
152
154
155
156
157
158
159
161
162
163
164
165
166
167
167
168
169
170
170
171
172
172
173
173
174
174
175
175
176
176
176
176
177
177
177
177
177
177
177
177
176
176
176
176
176
176
176
175
175
175
175
175
175
175
175
174
174
174
173
173
173
172
172
171
171
170
170
169
169
168
167
166
165
165
164
163
162
160
159
158
157
155
154
153
151
149
148
146
144
142
140
139
136
134
132
130
128
126
124
121
119
117
114
112
109
107
105
102
99
97
94
92
89
86
84
81
78
76
73
71
68
66
63
61
59
56
54
52
50
48
46
44
42
40
38
37
35
33
32
30
29
28
26
25
24
23
22
21
20
20
19
18
18
17
17
16
16
15
15
14
14
14
14
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
15
15
15
16
16
17
17
18
18
19
19
20
20
21
21
22
22
22
23
23
24
24
24
25
25
25
26
26
27
27
27
28
28
28
29
29
29
29
29
29
29
29
29
29
29
29
28
28
28
28
28
27
27
27
27
27
26
26
26
26
25
25
25
25
24
24
24
23
23
22
22
21
21
20
19
19
18
17
17
16
15
15
14
13
13
12
12
11
11
11
10
10
10
9
9
9
9
8
8
8
7
7
6
6
6
5
5
4
4
3
3
2
2
1
1
0
0
0
-1
-1
-2
-2
-3
-3
-4
-4
-5
-5
-6
-6
-7
-7
-8
-9
-9
-10
-10
-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
-14
-14
-14
-14
-14
-14
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-14
-14
-14
-14
-14
-14
-13
-13
-13
-13
-12
-12
-11
-11
-10
-10
-9
-9
-8
-7
-7
-6
-5
-5
-4
-3
-2
-1
-1
0
1
2
4
5
6
7
8
9
11
12
13
14
16
17
18
19
20
22
23
24
25
26
27
28
29
30
31
32
34
35
36
37
39
40
41
42
44
45
46
47
48
49
50
51
52
53
53
54
54
55
55
56
56
56
57
57
57
57
57
57
57
57
56
56
56
56
55
55
55
54
54
53
53
52
52
51
51
50
50
49
49
48
48
47
46
46
45
44
44
43
42
41
41
40
39
38
37
37
36
35
34
34
33
32
32
31
31
30
30
29
29
28
28
27
27
27
27
26
26
26
26
26
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
26
26
26
26
26
26
26
26
26
26
27
27
27
27
28
28
29
29
30
30
31
31
32
32
33
33
34
35
35
36
37
37
38
39
40
41
41
42
43
44
44
45
46
46
47
47
48
48
49
49
50
51
51
52
52
53
53
54
54
55
56
56
57
57
58
59
59
60
61
62
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
87
88
89
90
91
92
93
94
94
95
96
97
98
99
100
101
101
102
103
104
105
105
106
106
107
107
108
108
109
109
110
110
110
111
111
112
112
113
113
114
114
115
115
116
117
117
118
118
119
120
120
121
121
122
122
123
123
123
124
124
124
124
125
125
125
125
125
125
125
125
125
125
125
125
124
124
124
124
124
123
123
123
123
122
122
122
122
122
122
122
122
122
122
122
122
123
123
124
124
125
126
127
128
129
130
131
132
133
134
135
136
138
139
140
142
143
144
146
147
148
150
151
152
154
155
156
157
158
159
160
161
162
163
164
164
165
165
165
166
166
166
166
166
166
166
166
166
166
166
165
165
165
165
165
165
165
164
164
164
164
164
164
164
163
163
163
163
163
162
162
162
162
162
162
162
161
161
161
161
161
161
161
161
161
161
161
161
162
162
162
162
162
163
163
163
164
164
164
165
165
165
166
166
166
166
167
167
167
167
167
168
168
168
168
168
168
168
168
168
168
168
168
168
168
168
168
168
168
168
168
168
168
168
169
169
169
169
169
169
169
169
169
169
169
169
169
169
169
168
168
168
168
168
168
168
168
167
167
167
166
166
166
165
165
164
164
163
163
162
162
161
161
160
159
159
158
157
156
155
155
154
153
152
151
150
149
148
148
147
146
145
144
143
142
141
140
139
138
137
136
135
135
134
133
132
132
131
131
130
129
129
128
128
127
127
126
126
125
125
125
124
124
123
123
123
123
122
122
122
122
122
122
122
122
122
123
123
123
124
124
124
125
125
125
125
126
126
126
126
126
126
126
126
126
126
126
125
125
125
124
124
124
123
123
122
122
121
121
120
119
119
118
117
116
116
115
114
113
112
111
110
109
108
107
106
105
104
103
101
100
98
96
95
93
91
88
86
84
81
79
76
73
70
67
64
61
57
54
50
47
43
40
36
32
28
24
20
16
12
8
4
0
-4
-8
-12
-16
-20
-23
-27
-31
-34
-38
-41
-44
-47
-50
-53
-56
-59
-61
-63
-66
-68
-70
-72
-74
-76
-77
-79
-80
-82
-83
-84
-85
-86
-87
-88
-89
-90
-90
-91
-92
-92
-93
-93
-93
-94
-94
-94
-94
-94
-94
-95
-95
-95
-95
-94
-94
-94
-94
-94
-93
-93
-92
-92
-91
-91
-90
-89
-89
-88
-87
-86
-85
-83
-82
-81
-79
-78
-76
-74
-72
-71
-69
-67
-65
-63
-60
-58
-56
-54
-51
-49
-46
-44
-42
-39
-36
-34
-31
-29
-26
-23
-21
-18
-15
-13
-10
-7
-5
-2
1
3
6
9
12
14
17
20
23
25
28
31
34
36
39
42
44
47
50
53
55
58
61
64
66
69
72
75
78
81
84
87
90
93
95
98
101
104
107
110
113
116
120
123
126
129
132
135
138
141
144
146
149
152
155
158
160
163
165
168
170
172
174
176
178
180
182
184
186
187
189
190
191
192
193
194
195
196
197
198
198
199
199
200
200
201
201
201
202
202
202
202
203
203
203
203
203
203
203
203
203
202
202
202
201
201
201
200
200
199
199
198
198
197
196
196
195
195
194
193
193
192
191
190
189
189
188
187
186
185
185
184
183
182
182
181
180
180
179
178
178
177
177
176
176
175
175
175
174
174
174
174
174
173
173
173
174
174
174
174
174
174
175
175
175
176
176
176
177
177
177
178
178
178
179
179
179
180
180
180
181
181
181
181
182
182
182
183
183
184
184
184
185
185
185
186
186
187
187
188
188
189
189
190
190
191
191
192
192
193
193
194
195
195
196
197
197
198
199
199
200
200
201
202
202
203
203
204
204
204
205
205
205
205
206
206
206
206
206
206
206
206
206
205
205
205
204
204
203
203
202
201
201
200
199
198
197
196
195
193
192
191
189
188
186
185
183
182
180
178
177
175
173
171
170
168
166
164
163
161
159
157
155
153
151
149
147
145
143
141
139
137
135
133
131
129
127
125
123
121
118
116
114
112
110
107
105
103
100
98
96
93
91
88
86
84
81
79
77
74
72
70
68
66
64
62
60
58
56
54
53
51
50
48
47
46
45
44
43
42
41
40
39
39
38
38
38
37
37
37
37
37
37
37
37
37
37
37
37
37
38
38
38
38
39
39
39
40
40
40
41
41
41
42
42
43
43
43
44
44
45
45
46
46
47
47
48
48
49
50
50
51
51
52
53
54
54
55
56
57
57
58
59
60
61
61
62
63
64
65
65
66
67
68
68
69
70
70
71
72
72
73
73
73
74
74
74
74
74
75
75
74
74
74
74
74
74
73
73
73
72
72
72
71
71
71
70
70
69
69
69
68
68
67
67
66
66
65
65
64
63
63
62
62
61
60
59
59
58
57
57
56
55
55
54
53
53
52
51
51
50
49
49
48
47
47
46
45
45
44
44
43
42
42
41
40
40
39
39
38
37
37
36
36
35
34
34
33
33
32
32
31
31
30
29
29
28
27
27
26
25
25
24
23
22
22
21
20
19
18
18
17
16
15
15
14
13
12
12
11
10
9
9
8
7
7
6
5
5
4
4
3
3
2
2
1
1
0
0
0
0
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-2
-2
-2
-2
-2
-2
-2
-2
-3
-3
-3
-3
-4
-4
-4
-5
-5
-6
-6
-7
-7
-8
-8
-9
-9
-10
-11
-11
-12
-12
-13
-14
-14
-15
-16
-16
-17
-18
-19
-19
-20
-21
-22
-22
-23
-24
-24
-25
-26
-27
-28
-28
-29
-30
-30
-31
-32
-32
-33
-34
-34
-35
-35
-36
-36
-36
-37
-37
-37
-37
-37
-38
-38
-38
-38
-38
-37
-37
-37
-37
-37
-37
-36
-36
-36
-36
-35
-35
-34
-34
-34
-33
-33
-32
-32
-31
-31
-30
-29
-29
-28
-27
-27
-26
-25
-24
-23
-22
-21
-20
-19
-18
-17
-16
-15
-14
-13
-12
-11
-10
-9
-8
-6
-5
-4
-3
-2
-1
1
2
3
4
5
6
7
9
10
11
12
13
14
16
17
18
19
21
22
23
24
26
27
28
30
31
32
34
35
36
38
39
41
42
44
45
47
48
50
51
53
54
56
57
59
60
61
63
64
66
67
69
70
72
73
74
76
77
79
80
81
83
84
85
87
88
89
91
92
93
95
96
98
99
101
102
104
105
107
109
110
112
114
115
117
119
121
122
124
126
128
129
131
133
135
137
138
140
142
144
145
147
149
150
152
154
155
157
158
160
161
163
164
166
167
169
170
172
173
174
176
177
178
180
181
182
184
185
186
187
188
190
191
192
193
194
195
196
197
198
199
200
201
202
203
203
204
205
206
206
207
207
208
209
209
209
210
210
211
211
211
211
212
212
212
212
212
212
212
213
213
213
213
213
213
212
212
212
212
212
211
211
210
210
209
209
208
208
207
206
205
204
203
202
201
200
199
198
197
195
194
193
191
190
188
187
185
184
182
181
179
177
176
174
172
171
169
167
165
163
162
160
158
156
154
152
151
149
147
145
143
142
140
138
136
135
133
131
130
128
126
125
123
122
120
119
117
116
115
114
112
111
110
109
108
107
106
105
104
103
102
102
101
100
99
99
98
97
97
96
95
95
94
94
93
92
92
91
90
90
89
88
88
87
86
85
85
84
83
82
81
81
80
79
78
78
77
76
75
75
74
73
73
72
71
71
70
69
68
68
67
66
66
65
64
63
63
62
61
61
60
59
58
58
57
56
56
55
55
54
54
53
53
52
52
51
51
51
50
50
50
49
49
49
48
48
48
48
48
48
48
47
47
47
47
47
47
47
47
47
48
48
48
48
48
48
48
49
49
49
49
50
50
50
51
51
52
52
53
53
54
54
55
55
56
57
57
58
59
60
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
112
113
114
115
116
117
118
119
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
138
139
140
141
142
142
143
144
145
145
146
147
147
148
149
149
150
151
151
152
153
154
154
155
156
157
158
158
159
160
161
162
163
164
164
165
166
167
168
168
169
170
171
171
172
173
173
174
175
175
176
176
177
177
178
178
179
180
180
181
181
182
182
183
183
184
184
185
185
186
187
187
188
188
189
190
190
191
192
193
194
194
195
196
197
198
199
200
201
202
204
205
206
207
208
209
211
212
213
214
215
216
218
219
220
221
222
223
224
225
226
227
228
229
230
230
231
232
233
233
234
235
235
236
236
237
237
238
238
238
238
239
239
239
239
239
239
239
239
239
239
239
239
239
238
238
238
238
237
237
236
236
235
235
234
234
233
233
232
231
231
230
229
228
227
226
225
224
223
222
221
220
218
217
215
214
212
211
209
207
206
204
202
200
198
196
194
192
190
188
186
184
182
180
178
176
174
172
170
168
166
164
162
160
158
156
154
152
150
149
147
145
143
142
140
138
136
135
133
132
130
128
127
125
124
122
121
119
117
116
114
113
111
109
108
106
105
103
101
100
98
96
95
93
92
90
88
87
85
84
82
80
79
77
76
74
73
71
70
68
67
66
64
63
61
60
59
57
56
55
53
52
51
50
49
48
46
45
44
43
42
41
41
40
39
38
37
36
36
35
34
34
33
33
32
32
32
31
31
31
31
31
31
31
31
31
31
31
31
31
32
32
32
33
33
34
34
35
36
36
37
38
38
39
40
41
42
42
43
44
45
46
47
49
50
51
52
53
54
55
57
58
59
60
61
63
64
65
66
68
69
70
72
73
74
75
77
78
79
81
82
83
84
86
87
88
89
91
92
93
94
96
97
98
99
100
102
103
104
105
107
108
109
111
112
113
114
116
117
118
119
121
122
123
124
125
126
127
129
130
131
132
132
133
134
135
136
137
138
139
139
140
141
141
142
143
144
144
145
145
146
147
147
148
148
149
149
150
150
151
151
152
152
153
153
154
154
155
155
156
156
157
157
158
158
159
159
160
160
161
161
162
162
163
164
164
165
165
166
166
166
167
167
168
168
168
168
169
169
169
169
169
169
169
169
169
169
169
169
168
168
168
167
167
166
166
165
165
164
164
163
163
162
161
161
160
159
159
158
157
156
156
155
154
153
152
152
151
150
149
148
147
146
145
144
143
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
129
128
127
126
125
124
124
123
122
121
121
120
119
119
118
118
117
116
116
115
115
114
113
113
112
112
111
110
109
108
108
107
106
105
104
103
102
101
100
99
98
97
95
94
93
92
91
89
88
87
85
84
82
81
80
78
77
75
74
73
71
70
68
67
65
64
62
61
59
58
56
55
54
52
51
49
48
47
45
44
43
41
40
39
37
36
35
34
32
31
30
29
27
26
25
24
22
21
20
19
18
17
16
14
13
12
11
10
9
8
7
6
5
4
3
3
2
1
0
-1
-2
-3
-3
-4
-5
-6
-7
-7
-8
-9
-10
-10
-11
-12
-12
-13
-14
-14
-15
-16
-17
-17
-18
-19
-19
-20
-21
-22
-23
-24
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-37
-38
-39
-40
-42
-43
-44
-45
-47
-48
-49
-51
-52
-54
-55
-57
-58
-59
-61
-62
-64
-65
-67
-68
-70
-71
-73
-75
-76
-78
-79
-81
-82
-84
-85
-87
-89
-90
-92
-94
-95
-97
-99
-101
-102
-104
-106
-107
-109
-111
-112
-114
-116
-118
-119
-121
-122
-124
-126
-127
-129
-130
-131
-133
-134
-135
-136
-138
-139
-140
-141
-142
-142
-143
-144
-144
-145
-145
-146
-146
-147
-147
-147
-147
-147
-147
-148
-148
-148
-147
-147
-147
-147
-147
-147
-146
-146
-146
-145
-145
-144
-144
-143
-142
-142
-141
-140
-140
-139
-138
-137
-136
-135
-134
-133
-131
-130
-129
-127
-126
-124
-123
-121
-119
-118
-116
-114
-112
-110
-108
-105
-103
-101
-98
-96
-93
-91
-88
-86
-83
-80
-77
-74
-71
-68
-65
-62
-59
-56
-53
-50
-46
-43
-40
-37
-33
-30
-27
-23
-20
-17
-14
-10
-7
-4
-1
3
6
9
13
16
19
22
25
29
32
35
38
41
44
47
50
53
56
59
61
64
67
70
72
75
78
80
83
86
88
91
93
96
98
101
103
106
108
111
113
115
118
120
123
125
127
130
132
134
136
139
141
143
145
147
149
151
153
155
157
159
160
162
164
165
167
168
169
171
172
173
174
175
176
177
178
179
180
181
181
182
183
183
184
184
185
185
185
186
186
186
187
187
187
187
187
187
187
187
187
187
186
186
186
185
185
184
183
183
182
181
180
179
178
177
175
174
173
172
170
169
167
166
164
162
161
159
157
155
154
152
150
148
146
144
142
140
139
137
135
133
131
129
127
124
122
120
118
116
114
112
110
108
106
104
102
100
98
96
94
92
90
88
86
84
82
81
79
77
75
74
72
70
68
67
65
63
62
60
59
57
55
54
52
51
49
47
46
44
43
41
40
38
37
36
34
33
31
30
29
27
26
25
24
23
22
21
20
19
18
17
16
15
15
14
13
13
13
12
12
12
12
12
12
12
12
12
12
13
13
13
14
14
15
16
16
17
18
19
20
21
22
23
25
26
27
28
30
31
33
34
36
37
39
40
42
44
45
47
49
50
52
54
55
57
59
61
62
64
66
68
70
72
74
76
77
79
81
83
85
87
89
90
92
94
96
98
100
102
103
105
107
109
110
112
114
115
117
118
120
121
123
124
126
127
128
129
130
132
133
134
135
136
137
137
138
139
140
141
141
142
143
143
144
144
145
146
146
147
147
148
148
149
149
150
150
151
151
152
152
152
153
153
154
154
155
155
156
156
157
157
158
158
159
160
160
161
161
162
162
163
163
164
164
165
166
166
167
167
168
169
169
170
170
171
172
172
173
174
175
175
176
177
178
179
180
180
181
182
184
185
186
187
188
189
191
192
193
195
196
197
199
200
201
203
204
206
207
209
210
212
213
215
216
218
219
221
222
224
225
227
228
230
231
233
234
236
237
239
240
242
243
245
246
248
249
251
252
254
256
257
259
260
262
263
265
267
268
270
271
273
274
276
278
279
281
283
284
286
288
289
291
293
294
296
298
299
301
302
304
305
307
308
310
311
313
314
315
316
318
319
320
321
322
323
324
324
325
326
326
327
327
328
328
328
329
329
329
329
329
329
329
328
328
328
328
327
327
327
326
326
325
325
324
323
323
322
322
321
320
320
319
319
318
317
317
316
315
315
314
313
313
312
311
310
310
309
308
307
306
305
305
304
303
302
301
300
299
298
297
296
295
294
293
292
291
290
289
288
287
286
284
283
282
281
280
279
277
276
275
274
272
271
270
268
267
266
264
263
261
260
258
256
255
253
251
250
248
246
244
242
240
238
236
234
232
230
228
226
224
221
219
217
215
212
210
208
206
203
201
199
197
194
192
190
188
185
183
181
179
176
174
172
170
168
165
163
161
159
156
154
152
150
148
145
143
141
139
137
135
133
131
129
127
125
123
122
120
118
116
115
113
111
110
108
107
105
104
102
101
100
98
97
96
95
94
93
92
91
90
89
88
88
87
86
85
85
84
84
83
83
82
82
81
81
81
81
81
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
81
81
81
81
81
81
81
81
81
81
81
81
82
82
82
82
82
82
82
82
82
82
83
83
83
83
83
83
84
84
84
84
84
84
84
85
85
85
85
85
85
86
86
86
86
86
87
87
87
87
87
87
88
88
88
88
88
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
88
88
88
87
87
87
86
86
86
85
85
84
84
83
82
82
81
80
80
79
78
77
76
75
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
59
58
57
56
55
54
53
51
50
49
48
47
46
45
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
29
28
27
26
25
24
23
23
22
21
20
20
19
18
18
17
16
16
15
14
14
13
13
12
12
12
11
11
10
10
10
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
10
10
10
11
11
11
11
12
12
12
13
13
13
14
14
15
15
16
16
16
17
17
18
18
19
19
20
20
21
21
21
22
22
23
23
24
24
24
25
25
25
26
26
27
27
27
28
28
28
28
29
29
29
29
29
29
29
29
29
29
29
29
29
29
28
28
28
27
27
27
26
26
25
25
25
24
24
23
23
22
22
22
21
21
20
20
20
19
19
19
19
18
18
18
18
18
18
18
18
18
18
18
19
19
19
19
19
19
19
20
20
20
20
20
20
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
20
20
20
20
19
19
19
18
18
17
17
16
16
15
15
14
14
13
12
12
11
10
9
8
8
7
6
5
4
3
2
1
0
-1
-2
-3
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-17
-18
-19
-20
-20
-21
-22
-22
-23
-23
-24
-24
-24
-25
-25
-25
-26
-26
-26
-26
-26
-27
-27
-27
-27
-27
-27
-27
-27
-27
-27
-27
-26
-26
-26
-26
-26
-26
-25
-25
-25
-25
-25
-24
-24
-24
-23
-23
-23
-22
-22
-21
-21
-20
-20
-19
-19
-18
-17
-16
-16
-15
-14
-13
-12
-11
-10
-10
-9
-8
-7
-6
-5
-4
-3
-2
-1
0
1
1
2
3
4
5
6
7
8
8
9
10
11
12
13
14
15
16
17
18
19
20
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
72
73
74
75
76
77
77
78
79
80
80
81
82
83
83
84
84
85
86
86
87
87
88
88
89
89
89
90
90
91
91
91
92
92
92
92
93
93
93
94
94
94
95
95
95
95
96
96
96
97
97
97
98
98
99
99
100
100
101
101
102
102
103
103
104
105
105
106
107
107
108
109
110
111
111
112
113
114
115
116
116
117
118
119
120
121
123
124
125
126
127
129
130
131
132
134
135
136
138
139
141
142
144
145
147
148
150
151
153
154
156
157
159
160
161
163
164
166
167
168
170
171
172
173
174
176
177
178
179
180
181
182
183
184
184
185
186
187
188
188
189
190
190
191
192
192
193
194
194
195
196
196
197
198
198
199
199
200
201
201
202
202
203
203
204
205
205
206
206
207
207
208
209
209
210
210
211
211
212
212
213
214
214
215
215
216
216
217
218
218
219
219
220
220
221
221
222
222
223
223
223
224
224
225
225
225
226
226
226
226
227
227
227
227
227
227
228
228
228
228
228
228
228
228
227
227
227
227
227
227
226
226
226
225
225
225
225
224
224
224
223
223
223
222
222
222
222
221
221
221
221
220
220
220
220
219
219
219
219
218
218
218
218
218
218
217
217
217
217
217
217
217
217
217
217
217
217
217
217
217
217
217
217
217
217
217
217
217
218
218
218
218
218
219
219
219
219
219
220
220
220
221
221
221
221
222
222
222
223
223
223
223
223
224
224
224
224
225
225
225
225
226
226
226
226
227
227
227
227
228
228
228
229
229
229
229
230
230
230
230
231
231
231
231
232
232
232
232
233
233
233
233
234
234
234
234
234
235
235
235
235
235
235
235
236
236
236
236
236
236
236
236
236
236
236
236
236
236
236
235
235
235
235
235
235
234
234
234
234
234
233
233
233
232
232
232
231
231
231
230
230
229
229
228
228
227
226
226
225
224
224
223
222
221
220
219
218
218
217
216
215
214
213
212
211
210
209
207
206
205
204
203
202
201
200
199
198
197
196
194
193
192
191
190
188
187
186
184
183
182
180
179
178
176
175
173
172
170
169
167
166
164
163
161
159
158
156
154
152
151
149
147
145
143
141
139
137
135
133
131
129
127
126
124
122
120
118
116
114
112
110
108
106
104
102
100
98
96
94
92
90
89
87
85
83
81
79
78
76
74
72
71
69
67
65
64
62
60
59
57
55
54
52
50
49
47
45
44
42
40
38
37
35
33
31
29
28
26
24
22
20
19
17
15
13
11
9
7
5
3
2
0
-2
-4
-6
-8
-10
-12
-14
-16
-18
-20
-22
-24
-26
-27
-29
-31
-33
-35
-36
-38
-40
-41
-43
-44
-46
-47
-49
-50
-51
-53
-54
-55
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-66
-67
-68
-69
-69
-70
-70
-71
-71
-72
-72
-72
-73
-73
-73
-73
-73
-73
-73
-73
-73
-73
-72
-72
-71
-71
-71
-70
-69
-69
-68
-67
-66
-66
-65
-64
-63
-62
-61
-60
-59
-58
-56
-55
-54
-53
-51
-50
-48
-47
-46
-44
-42
-41
-39
-37
-36
-34
-32
-31
-29
-27
-25
-23
-22
-20
-18
-16
-14
-13
-11
-9
-7
-6
-4
-2
-1
1
3
4
6
7
9
11
12
14
15
17
18
20
21
23
24
25
27
28
30
31
32
34
35
36
38
39
40
41
42
44
45
46
47
48
49
50
51
52
53
54
55
55
56
57
57
58
58
59
59
59
60
60
60
60
60
60
60
60
60
60
60
60
60
59
59
59
58
58
58
57
57
56
56
55
54
54
53
52
51
51
50
49
48
47
46
45
44
43
42
41
40
39
37
36
35
34
33
31
30
29
27
26
25
23
22
20
19
17
16
15
13
11
10
8
7
5
4
2
1
-1
-2
-4
-5
-7
-8
-10
-11
-12
-14
-15
-16
-18
-19
-20
-21
-22
-24
-25
-26
-27
-27
-28
-29
-30
-31
-31
-32
-33
-33
-34
-34
-35
-35
-35
-36
-36
-36
-36
-36
-36
-36
-36
-36
-36
-35
-35
-35
-34
-34
-33
-33
-32
-32
-31
-31
-30
-29
-29
-28
-27
-26
-25
-24
-23
-22
-21
-20
-19
-18
-16
-15
-14
-12
-11
-9
-8
-6
-4
-3
-1
1
3
4
6
8
10
12
14
16
19
21
23
25
27
30
32
34
36
38
41
43
45
48
50
52
54
57
59
61
63
66
68
70
72
74
77
79
81
83
85
87
90
92
94
96
98
100
102
104
106
108
110
113
115
117
119
121
123
125
127
128
130
132
134
136
138
140
142
144
146
148
149
151
153
155
157
159
160
162
164
166
168
169
171
173
175
176
178
180
181
183
185
186
188
189
191
192
194
195
196
198
199
200
201
203
204
205
206
207
208
209
209
210
211
212
212
213
214
214
215
215
216
216
217
217
218
218
218
219
219
219
220
220
220
220
220
220
220
220
220
220
220
220
220
219
219
219
218
218
218
217
217
216
215
215
214
213
213
212
211
210
209
208
207
206
205
204
203
202
201
200
198
197
196
195
193
192
190
189
188
186
185
183
182
180
179
177
176
174
173
171
170
168
167
165
163
162
160
159
157
156
154
152
151
149
148
146
145
143
142
140
139
137
136
134
133
131
130
129
127
126
125
124
122
121
120
119
118
117
116
115
114
113
113
112
111
110
110
109
109
108
108
108
107
107
107
107
107
107
107
107
107
107
108
108
108
109
109
109
110
110
111
112
112
113
114
114
115
116
117
118
119
119
120
121
122
123
124
126
127
128
129
130
131
132
133
135
136
137
138
139
140
142
143
144
145
147
148
149
150
152
153
154
155
157
158
159
160
162
163
164
165
167
168
169
171
172
173
174
175
177
178
179
180
181
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
197
198
199
200
201
202
202
203
204
205
206
207
207
208
209
210
211
212
212
213
214
215
216
217
218
219
220
221
222
223
224
224
225
226
227
228
229
230
231
232
233
234
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
257
258
259
260
261
262
263
263
264
265
266
266
267
268
268
269
270
270
271
271
272
273
273
273
274
274
275
275
275
276
276
276
277
277
277
278
278
278
279
279
279
279
279
279
280
280
280
280
280
280
280
279
279
279
278
278
277
277
276
276
275
274
274
273
272
272
271
270
269
268
267
266
264
263
262
260
259
258
256
255
254
252
251
250
248
247
246
244
243
242
240
239
238
236
235
233
232
230
229
227
225
224
222
220
218
217
215
213
212
210
208
207
205
203
201
199
197
194
192
190
188
186
184
182
180
178
175
173
171
169
167
165
163
161
158
156
154
152
150
148
146
144
142
140
138
136
134
132
130
128
126
125
123
121
119
117
116
114
112
110
109
107
105
103
102
100
98
97
95
94
92
91
89
88
87
85
84
82
81
80
78
77
75
74
73
72
71
69
68
67
66
65
64
63
62
61
60
59
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
45
44
43
42
41
40
40
39
38
37
36
35
34
33
33
32
31
30
29
29
28
27
26
25
25
24
23
22
22
21
21
20
20
19
19
18
18
17
17
16
16
15
15
14
14
13
13
13
12
12
11
11
10
10
9
9
8
8
7
7
6
6
6
5
5
4
4
3
3
2
2
1
1
0
0
0
-1
-1
-2
-2
-2
-3
-3
-3
-4
-4
-4
-5
-5
-5
-6
-6
-6
-6
-6
-6
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-6
-6
-6
-6
-5
-5
-5
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-3
-3
-2
-2
-1
0
0
1
2
2
3
3
3
4
4
5
5
5
6
6
7
7
8
8
9
9
10
10
10
11
11
11
12
12
13
14
15
15
16
17
18
18
19
20
21
21
22
22
23
23
24
24
24
25
25
26
26
27
27
28
29
30
30
31
32
33
33
34
35
35
36
36
37
37
38
39
39
40
41
42
43
44
46
47
48
49
50
51
52
53
54
56
57
58
59
61
62
63
65
66
67
69
71
72
74
76
78
79
81
83
84
86
87
89
90
92
93
95
97
98
100
102
104
106
107
109
110
112
113
115
116
118
119
120
121
122
124
125
126
127
128
129
130
131
131
132
133
134
135
136
137
138
139
140
141
142
142
143
144
144
145
145
146
146
147
147
148
148
149
149
150
150
150
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
150
150
150
150
149
149
149
149
149
149
149
149
150
150
150
150
150
150
150
150
149
149
149
149
149
149
149
149
149
149
149
150
150
150
151
151
151
152
152
152
152
153
153
153
153
153
153
153
154
154
154
154
154
154
154
154
154
154
154
154
154
154
154
154
154
154
154
154
154
154
154
154
155
155
155
155
155
155
155
155
155
155
154
154
154
154
154
154
154
153
153
153
153
152
152
152
152
152
151
151
151
151
151
151
151
151
150
150
150
150
149
149
148
148
148
147
147
147
146
146
146
146
145
145
145
144
144
143
143
142
141
140
140
139
138
137
136
136
135
134
134
133
132
131
131
130
129
129
128
127
126
126
125
124
123
122
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
102
101
100
99
98
97
95
94
93
92
91
90
89
87
86
85
84
82
81
80
79
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
35
34
33
32
31
31
30
29
28
27
26
25
24
23
23
22
21
20
19
18
18
17
16
15
14
14
13
12
12
11
11
10
10
9
9
9
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
8
8
8
8
8
8
8
8
8
8
9
9
9
9
10
10
10
10
11
11
12
12
12
13
13
13
14
14
14
15
15
15
16
16
16
16
16
16
17
17
17
17
17
18
18
18
19
19
19
20
20
21
21
22
22
23
23
24
24
25
26
26
27
28
29
30
31
32
33
34
35
37
38
39
40
42
43
44
45
47
48
49
50
52
53
54
55
57
58
59
60
62
63
64
65
67
68
69
70
72
73
74
76
77
78
79
81
82
83
85
86
87
88
89
91
92
93
95
96
97
99
100
101
102
104
105
106
107
108
110
111
112
113
115
116
117
118
120
121
122
123
125
126
127
128
129
131
132
133
134
135
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
158
159
160
161
162
163
163
164
165
166
167
168
169
169
170
171
172
173
174
175
175
176
177
178
178
179
180
181
182
182
183
184
184
185
186
187
187
188
188
189
190
190
191
192
192
193
194
194
195
196
196
197
197
198
199
199
200
200
201
202
202
203
203
203
204
204
204
204
205
205
205
205
205
205
205
205
205
205
205
205
204
204
204
204
203
203
203
202
202
202
201
201
201
200
200
200
199
199
199
199
198
198
198
197
197
196
196
196
195
195
194
194
193
193
193
192
192
191
191
190
190
189
189
188
188
187
186
186
185
185
184
184
183
182
182
181
181
180
180
179
179
178
178
178
177
177
176
176
175
175
174
174
173
173
172
172
171
171
170
170
170
169
169
169
168
168
167
167
167
166
166
166
165
165
164
164
164
164
163
163
163
163
162
162
162
162
162
162
161
161
161
161
161
161
161
161
161
161
161
161
161
161
161
161
161
161
161
161
161
161
161
161
160
160
160
160
160
160
159
159
159
159
159
158
158
158
158
158
158
157
157
157
157
157
156
156
156
156
155
155
155
154
154
154
153
153
152
152
151
151
150
150
149
149
148
147
147
146
145
144
144
143
142
141
141
140
139
138
138
137
136
135
134
134
133
132
131
130
129
129
128
127
126
126
125
124
123
123
122
121
121
120
119
119
118
117
117
116
115
115
114
114
113
112
112
111
111
111
110
110
110
109
109
109
109
108
108
108
108
107
107
107
107
107
107
106
106
106
106
106
106
106
106
106
107
107
107
107
107
107
108
108
108
108
109
109
109
110
110
111
111
112
112
113
114
114
115
115
116
117
117
118
118
119
120
120
121
121
122
122
123
123
123
124
124
125
125
126
126
126
127
127
128
128
128
129
129
129
129
130
130
130
130
131
131
131
131
131
131
131
131
131
131
131
131
131
130
130
130
129
129
129
128
128
128
127
127
126
126
126
125
125
124
124
123
123
122
122
121
120
120
119
118
117
116
116
115
114
113
112
111
111
110
109
108
108
107
106
105
105
104
103
102
101
100
99
98
97
95
94
93
92
91
90
89
88
87
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
67
66
65
64
63
62
61
60
58
57
56
55
54
53
51
50
49
48
47
45
44
43
42
41
41
40
39
38
37
37
36
35
35
34
33
33
32
32
31
31
31
30
30
30
30
30
29
29
29
29
29
28
28
28
28
27
27
27
26
26
25
25
25
25
24
24
24
24
24
24
24
25
25
25
25
25
26
26
26
26
26
26
27
27
27
28
28
29
29
30
31
32
33
33
34
36
37
38
39
40
41
42
43
44
45
46
47
48
49
51
52
53
55
56
58
60
62
63
65
67
69
71
73
75
77
79
81
83
86
88
90
92
94
96
98
100
102
104
106
107
109
111
113
115
117
119
120
122
124
126
127
129
131
132
134
136
137
139
140
142
144
145
147
148
149
151
152
153
155
156
157
158
160
161
162
163
165
166
167
168
170
171
172
173
174
175
176
177
178
178
179
179
180
180
180
181
181
181
181
181
181
181
181
181
181
181
180
180
180
180
180
179
179
179
178
178
178
177
177
177
177
176
176
176
175
175
175
175
174
174
174
174
173
173
173
173
172
172
172
172
171
171
171
171
170
170
170
170
170
169
169
169
169
168
168
168
168
167
167
167
167
166
166
166
166
165
165
165
165
165
164
164
164
164
163
163
163
163
163
162
162
162
162
161
161
161
161
161
160
160
160
160
159
159
159
159
159
158
158
158
158
157
157
157
157
157
156
156
156
156
156
155
155
155
155
155
154
154
154
154
154
153
153
153
153
153
152
152
152
152
152
151
151
151
151
151
150
150
150
150
150
149
149
149
149
149
148
148
148
148
148
148
147
147
147
147
147
146
146
146
146
146
146
145
145
145
145
145
144
144
144
144
144
144
143
143
143
143
143
143
142
142
142
142
142
142
141
141
141
141
141
141
140
140
140
140
140
140
139
139
139
139
139
139
138
138
138
138
138
138
138
137
137
137
137
137
137
136
136
136
136
136
136
136
135
135
135
135
135
135
134
134
134
134
134
134
134
133
133
133
133
133
133
133
133
132
132
132
132
132
132
132
131
131
131
131
131
131
131
130
130
130
130
130
130
130
130
129
129
129
129
129
129
129
129
128
128
128
128
128
128
128
128
127
127
127
127
127
127
127
127
126
126
126
126
126
126
126
126
126
125
125
125
125
125
125
125
125
125
124
124
124
124
124
124
124
124
124
123
123
123
123
123
123
123
123
123
123
122
122
122
122
122
122
122
122
122
122
121
121
121
121
121
121
121
121
121
121
120
120
120
120
120
120
120
120
120
120
120
119
119
119
119
119
119
119
119
119
119
119
119
118
118
118
118
118
118
118
118
118
118
118
118
117
117
117
117
117
117
117
117
117
117
117
117
117
116
116
116
116
116
116
116
116
116
116
116
116
116
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
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
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
