5
1516
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
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
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
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
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
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
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
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
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
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
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
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
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
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
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
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
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
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
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
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
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
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
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
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
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
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
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
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
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
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
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
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
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
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
10
10
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
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
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
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
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
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
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
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
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
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
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
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
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-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
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-4
-4
-4
-4
-4
-4
-4
-4
-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
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-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
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-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
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-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
0
0
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
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
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
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
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
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
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
12
12
12
12
12
12
12
12
12
13
13
13
13
13
13
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
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
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
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
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
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
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
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
28
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
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
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
41
41
41
41
41
41
41
41
41
41
41
41
41
41
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
44
44
44
44
44
44
44
44
44
44
44
44
44
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
46
46
46
46
46
46
46
46
46
46
46
46
46
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
49
49
49
49
49
49
49
49
49
49
49
49
49
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
52
52
52
52
52
52
52
52
52
52
52
52
52
53
53
53
53
53
53
53
53
53
53
53
53
53
53
54
54
54
54
54
54
54
54
54
54
54
54
55
55
55
55
55
55
55
55
55
55
56
56
56
56
56
56
56
56
56
56
56
56
57
57
57
57
57
57
57
57
57
57
57
57
57
57
58
58
58
58
58
58
58
58
58
58
58
58
58
59
59
59
59
59
59
59
59
59
59
60
60
60
60
60
60
60
60
60
60
60
61
61
61
61
61
61
61
61
61
61
62
62
62
62
62
62
62
62
62
62
63
63
63
63
63
63
63
63
64
64
64
64
64
64
64
64
64
64
65
65
65
65
65
65
65
65
65
65
65
65
65
66
66
66
66
66
66
66
66
67
67
67
67
67
67
68
68
68
68
68
69
69
69
69
69
69
70
70
70
70
70
70
70
70
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
72
72
72
72
72
72
72
73
73
73
73
73
73
73
74
74
74
74
74
74
74
74
74
74
74
75
75
75
75
75
75
75
75
75
75
75
75
75
75
76
76
76
76
76
76
76
77
77
77
77
77
77
77
78
78
78
78
78
79
79
79
79
79
79
79
80
80
80
80
80
80
81
81
81
81
81
81
82
82
82
82
82
82
83
83
83
83
83
83
84
84
84
84
84
84
84
84
85
85
85
85
85
85
86
86
86
86
86
86
87
87
87
87
87
88
88
88
88
88
89
89
89
89
89
89
90
90
90
90
90
90
90
90
91
91
91
91
91
91
91
91
92
92
92
92
93
93
94
94
95
95
96
96
97
98
99
99
100
101
102
104
105
106
108
110
111
113
114
116
117
118
120
121
122
123
124
125
127
129
130
133
135
138
141
145
149
153
158
162
167
172
177
182
187
192
197
203
208
213
219
224
230
235
241
247
253
259
265
271
278
284
291
297
304
311
319
326
334
342
351
359
367
376
386
396
406
417
429
441
453
466
478
492
505
518
532
545
558
572
586
600
614
628
641
655
668
682
695
709
723
737
752
767
784
801
819
837
856
875
893
911
930
948
966
984
1000
1018
1034
1050
1065
1079
1093
1105
1117
1129
1140
1150
1160
1169
1178
1186
1195
1205
1216
1227
1239
1250
1261
1270
1279
1286
1291
1296
1300
1303
1305
1307
1308
1308
1308
1308
1308
1308
1307
1306
1304
1301
1296
1289
1280
1270
1259
1245
1230
1214
1197
1179
1160
1141
1122
1103
1084
1065
1046
1027
1008
990
971
953
934
915
895
875
855
835
816
799
783
767
753
737
720
701
680
657
633
607
582
556
531
505
481
457
436
416
399
384
373
364
358
353
349
346
342
338
334
328
322
316
310
304
299
294
290
285
282
279
278
278
279
281
284
290
296
303
311
318
325
332
339
346
353
361
368
375
382
388
394
399
402
405
407
410
412
414
417
419
422
424
425
427
429
431
434
436
439
442
445
448
450
451
452
452
452
453
453
453
453
453
452
451
451
451
451
451
450
450
450
450
450
450
449
448
447
445
445
444
443
442
441
441
440
439
437
435
432
430
428
425
423
420
418
416
413
410
408
406
403
401
398
395
391
388
384
379
375
370
364
358
351
344
337
330
324
317
310
304
298
291
284
278
272
266
260
254
248
243
237
232
226
221
216
212
208
203
197
191
184
177
169
161
153
144
134
124
115
106
98
90
83
75
67
59
51
44
36
28
20
12
3
-6
-15
-25
-34
-44
-54
-63
-71
-80
-88
-95
-103
-110
-116
-123
-129
-134
-139
-144
-149
-153
-158
-162
-167
-172
-177
-182
-187
-192
-196
-200
-204
-208
-211
-214
-218
-222
-226
-230
-233
-237
-240
-243
-246
-249
-251
-254
-256
-258
-258
-258
-257
-255
-253
-251
-248
-245
-242
-238
-235
-231
-226
-221
-214
-207
-199
-191
-183
-175
-167
-159
-150
-141
-132
-123
-114
-104
-95
-85
-77
-68
-60
-52
-44
-37
-30
-23
-15
-8
-1
7
13
20
27
33
40
46
52
58
64
69
74
79
83
87
90
93
95
97
99
101
103
105
107
109
110
111
111
111
111
110
109
107
105
102
100
97
94
91
89
86
84
82
81
79
78
77
77
76
75
74
73
72
71
70
69
69
68
68
68
69
69
71
72
74
76
78
80
83
86
88
91
94
97
100
103
106
109
112
115
118
121
125
129
133
137
141
146
150
154
157
161
165
168
171
173
175
177
179
180
181
182
183
183
183
184
184
183
182
180
178
175
173
170
167
163
159
153
148
142
136
130
124
118
111
104
98
91
84
76
68
61
53
47
40
34
28
22
17
12
8
4
2
-1
-3
-4
-6
-8
-10
-11
-13
-15
-16
-17
-18
-19
-19
-18
-18
-17
-17
-16
-16
-15
-14
-14
-13
-13
-13
-12
-10
-9
-8
-7
-6
-5
-4
-3
-3
-3
-3
-3
-4
-5
-6
-8
-10
-12
-14
-16
-18
-20
-21
-23
-24
-26
-29
-31
-34
-36
-39
-43
-47
-51
-56
-61
-67
-73
-79
-85
-91
-98
-105
-112
-119
-127
-135
-144
-154
-165
-176
-187
-199
-211
-223
-236
-250
-264
-278
-292
-305
-318
-331
-344
-357
-370
-383
-395
-406
-418
-430
-442
-455
-467
-479
-491
-503
-514
-526
-537
-547
-557
-566
-575
-583
-591
-599
-606
-614
-621
-629
-636
-644
-652
-660
-667
-673
-678
-682
-685
-688
-691
-694
-697
-700
-703
-707
-710
-713
-717
-720
-724
-729
-732
-736
-738
-740
-741
-743
-744
-746
-748
-751
-753
-756
-759
-761
-763
-765
-767
-769
-771
-773
-776
-778
-780
-782
-784
-786
-788
-790
-792
-794
-796
-799
-801
-803
-805
-808
-810
-813
-817
-821
-826
-832
-838
-844
-851
-858
-864
-870
-875
-881
-886
-892
-898
-904
-910
-915
-921
-926
-931
-937
-943
-950
-957
-964
-971
-979
-987
-995
-1002
-1010
-1018
-1027
-1035
-1042
-1049
-1056
-1062
-1068
-1074
-1081
-1088
-1095
-1102
-1109
-1117
-1124
-1132
-1139
-1146
-1154
-1162
-1170
-1177
-1184
-1190
-1196
-1201
-1206
-1210
-1215
-1220
-1225
-1230
-1235
-1238
-1242
-1245
-1248
-1250
-1253
-1256
-1260
-1262
-1264
-1265
-1266
-1266
-1267
-1268
-1269
-1270
-1271
-1272
-1273
-1274
-1275
-1275
-1276
-1277
-1278
-1279
-1280
-1280
-1281
-1282
-1284
-1286
-1288
-1289
-1291
-1293
-1295
-1297
-1298
-1299
-1299
-1299
-1299
-1300
-1301
-1303
-1303
-1304
-1305
-1306
-1307
-1308
-1309
-1311
-1312
-1312
-1312
-1312
-1311
-1310
-1309
-1308
-1306
-1304
-1301
-1298
-1294
-1290
-1285
-1280
-1275
-1270
-1264
-1260
-1255
-1250
-1245
-1239
-1233
-1227
-1220
-1214
-1207
-1200
-1192
-1183
-1173
-1163
-1153
-1143
-1133
-1122
-1111
-1099
-1086
-1074
-1061
-1049
-1037
-1025
-1012
-1000
-989
-978
-967
-957
-947
-937
-925
-914
-902
-890
-877
-865
-853
-842
-830
-818
-806
-793
-779
-765
-750
-736
-722
-708
-694
-679
-665
-650
-635
-620
-605
-590
-575
-560
-546
-531
-517
-504
-490
-477
-464
-451
-439
-426
-414
-401
-388
-376
-365
-354
-345
-336
-328
-320
-313
-307
-301
-296
-292
-289
-286
-283
-281
-280
-280
-280
-281
-283
-285
-287
-289
-292
-295
-299
-303
-308
-315
-323
-332
-342
-354
-366
-378
-392
-407
-423
-440
-458
-477
-497
-518
-541
-565
-591
-618
-645
-672
-700
-728
-755
-783
-810
-838
-865
-893
-921
-948
-975
-1002
-1028
-1053
-1079
-1104
-1129
-1155
-1180
-1205
-1229
-1253
-1276
-1297
-1318
-1338
-1357
-1374
-1390
-1405
-1418
-1431
-1442
-1453
-1463
-1472
-1480
-1487
-1494
-1501
-1506
-1511
-1514
-1516
-1516
-1515
-1513
-1510
-1506
-1501
-1496
-1489
-1481
-1472
-1463
-1452
-1441
-1429
-1416
-1402
-1386
-1370
-1352
-1334
-1314
-1293
-1273
-1252
-1230
-1207
-1184
-1159
-1133
-1106
-1079
-1050
-1022
-993
-964
-935
-906
-877
-847
-818
-789
-759
-729
-698
-667
-635
-602
-568
-534
-500
-465
-429
-393
-358
-322
-287
-253
-219
-185
-153
-121
-91
-61
-31
-2
27
56
84
112
140
167
193
219
244
268
292
314
336
356
376
395
413
430
447
463
479
495
511
525
539
552
565
577
589
601
613
624
634
644
653
662
670
678
685
691
695
698
700
700
700
699
697
695
693
691
689
687
685
682
680
678
677
676
675
674
674
673
672
672
670
669
666
664
662
661
660
659
658
657
656
655
654
653
652
651
650
650
649
649
650
650
652
654
656
659
662
666
670
674
678
683
688
694
699
704
709
715
721
729
738
748
758
768
779
789
799
809
819
828
837
846
855
864
873
881
890
898
906
914
922
929
936
942
947
952
956
960
964
967
971
974
977
980
982
984
985
986
986
986
987
988
988
988
987
986
984
981
977
973
967
960
951
942
932
922
913
903
895
886
878
870
862
854
845
837
828
818
809
799
789
779
769
758
748
737
726
715
703
691
679
667
654
642
631
619
607
596
584
573
561
549
538
527
516
505
494
483
471
459
447
435
422
409
396
382
367
352
337
322
307
292
276
261
245
229
212
196
179
164
148
133
119
105
91
77
64
51
40
30
21
13
6
0
-6
-10
-14
-17
-19
-20
-21
-21
-20
-18
-16
-13
-10
-6
-2
2
6
11
17
24
31
39
47
56
65
74
84
93
103
114
124
135
147
159
171
184
198
212
227
241
256
271
286
302
319
336
354
372
391
410
429
449
469
489
508
527
546
564
582
600
618
635
651
667
682
698
714
729
745
760
775
789
803
817
830
841
852
862
872
881
890
898
906
913
921
928
936
944
952
960
969
978
987
996
1004
1014
1022
1032
1042
1052
1061
1071
1081
1091
1101
1111
1121
1131
1140
1149
1158
1166
1174
1181
1188
1195
1202
1208
1214
1219
1223
1227
1230
1233
1235
1236
1238
1238
1239
1238
1237
1235
1233
1230
1227
1224
1220
1216
1211
1206
1201
1196
1190
1185
1178
1172
1165
1157
1150
1142
1134
1126
1118
1109
1101
1092
1083
1074
1065
1057
1049
1041
1033
1024
1016
1006
998
989
980
971
962
954
945
936
926
917
907
896
886
875
864
852
841
830
819
808
796
786
775
764
753
742
731
719
707
696
685
674
663
651
640
628
616
604
592
579
567
555
543
532
520
509
497
486
474
463
452
441
431
420
411
401
391
381
371
362
353
344
335
327
319
311
303
296
289
283
277
272
266
261
257
253
249
246
243
240
238
236
234
232
230
228
226
223
221
218
216
213
209
206
202
197
192
188
182
176
170
163
156
148
139
130
121
110
100
89
77
65
53
40
28
15
2
-11
-25
-38
-52
-65
-79
-93
-107
-121
-135
-150
-164
-179
-193
-208
-223
-237
-251
-265
-279
-292
-306
-319
-332
-346
-358
-371
-383
-396
-408
-420
-432
-443
-454
-465
-475
-485
-494
-503
-511
-519
-527
-535
-543
-550
-556
-562
-568
-573
-578
-583
-587
-590
-594
-597
-600
-603
-605
-606
-607
-608
-608
-608
-607
-606
-604
-601
-597
-593
-587
-581
-575
-567
-559
-551
-541
-531
-521
-511
-501
-491
-481
-471
-461
-451
-442
-433
-424
-415
-407
-399
-392
-384
-377
-370
-364
-358
-353
-349
-345
-341
-337
-334
-331
-328
-326
-324
-321
-319
-316
-314
-311
-309
-307
-305
-304
-303
-302
-301
-301
-300
-300
-300
-300
-301
-301
-302
-303
-303
-303
-303
-303
-302
-302
-301
-301
-300
-299
-298
-297
-296
-295
-294
-294
-293
-292
-291
-290
-288
-287
-286
-285
-283
-281
-279
-277
-275
-273
-270
-268
-265
-263
-260
-258
-255
-252
-248
-244
-240
-236
-232
-228
-224
-220
-216
-213
-209
-205
-201
-198
-194
-190
-187
-183
-179
-176
-172
-169
-166
-163
-159
-156
-153
-150
-147
-144
-141
-139
-136
-134
-132
-130
-128
-126
-125
-124
-123
-122
-121
-120
-118
-117
-116
-115
-114
-113
-112
-111
-111
-111
-111
-111
-112
-113
-114
-116
-117
-119
-121
-123
-124
-126
-127
-129
-131
-132
-134
-137
-139
-141
-143
-145
-147
-149
-151
-154
-156
-159
-162
-165
-168
-170
-173
-176
-180
-183
-187
-190
-193
-197
-200
-203
-206
-210
-213
-217
-220
-223
-226
-229
-232
-235
-238
-242
-245
-248
-251
-253
-256
-259
-262
-265
-268
-271
-274
-277
-280
-283
-286
-290
-293
-297
-301
-305
-309
-313
-318
-323
-328
-334
-340
-345
-351
-357
-363
-368
-374
-379
-384
-389
-394
-399
-405
-410
-415
-421
-426
-431
-435
-440
-444
-448
-451
-454
-457
-460
-462
-464
-466
-467
-469
-470
-472
-473
-475
-475
-476
-476
-476
-476
-475
-475
-474
-473
-472
-470
-469
-467
-465
-463
-460
-458
-456
-454
-452
-450
-448
-445
-443
-440
-438
-435
-431
-428
-424
-419
-415
-410
-405
-400
-395
-390
-386
-381
-377
-373
-368
-364
-360
-355
-351
-347
-342
-338
-334
-329
-324
-319
-314
-309
-304
-298
-293
-288
-283
-278
-273
-268
-264
-259
-255
-250
-246
-242
-238
-234
-230
-225
-221
-217
-213
-209
-204
-200
-196
-192
-188
-185
-181
-177
-174
-170
-167
-164
-160
-157
-153
-150
-146
-142
-138
-134
-130
-125
-121
-116
-111
-106
-101
-96
-90
-84
-78
-71
-64
-57
-50
-42
-34
-26
-17
-8
1
10
18
27
36
45
55
64
73
83
92
102
112
122
133
144
155
166
177
188
200
211
222
234
246
258
271
283
295
308
320
332
345
357
370
383
396
409
423
436
449
462
475
488
500
513
526
539
552
565
578
590
603
615
627
640
651
663
675
686
697
708
718
729
739
749
759
769
779
789
798
808
817
826
834
843
850
858
866
873
881
888
895
901
907
913
918
923
928
932
936
940
943
946
949
951
952
953
954
954
954
954
953
951
949
947
944
941
937
932
928
923
918
912
907
901
895
889
883
876
870
863
856
848
841
833
825
817
809
801
794
786
778
770
763
755
748
740
732
725
716
708
700
691
683
674
666
657
648
639
630
621
612
603
594
585
576
567
558
548
539
529
519
508
498
487
475
464
452
440
428
416
404
392
380
368
356
343
331
318
306
294
282
270
259
247
236
224
213
203
192
181
171
161
152
142
133
124
115
107
98
90
82
75
68
61
54
48
42
36
30
24
18
12
7
2
-3
-8
-12
-17
-21
-25
-29
-33
-36
-39
-42
-45
-48
-50
-52
-53
-55
-56
-56
-57
-57
-56
-56
-55
-54
-53
-52
-50
-48
-46
-43
-41
-38
-35
-32
-30
-27
-24
-20
-17
-14
-10
-7
-4
-1
3
7
11
15
19
23
28
33
38
43
48
53
58
63
68
72
76
80
84
87
90
94
97
100
103
105
108
110
112
114
115
117
118
119
120
120
120
119
119
118
117
116
114
112
111
109
107
105
103
100
98
95
92
90
87
85
82
80
77
75
72
70
67
65
62
60
57
54
52
49
46
43
40
37
34
30
27
23
19
16
12
8
5
2
0
-3
-5
-7
-10
-13
-15
-17
-19
-21
-22
-23
-24
-24
-25
-25
-26
-26
-25
-25
-25
-24
-23
-21
-20
-18
-16
-13
-10
-7
-4
0
4
8
13
17
22
27
33
38
44
50
56
63
70
77
84
91
99
107
115
124
132
141
150
158
167
176
186
195
205
215
225
235
245
256
266
277
287
298
309
320
331
342
353
365
376
388
399
411
424
436
448
460
472
485
497
509
520
532
543
554
565
576
586
597
607
617
628
638
647
657
667
676
686
695
704
713
722
731
739
748
756
764
772
779
786
794
800
807
814
820
826
832
838
843
848
853
857
862
866
870
873
876
879
881
883
884
885
885
885
885
884
883
882
880
877
874
871
868
864
860
855
850
844
837
830
823
815
806
797
787
777
767
756
745
734
721
709
696
683
670
657
644
631
618
605
592
579
566
554
541
528
516
503
489
476
462
448
433
419
404
389
374
359
343
327
311
294
278
261
245
228
211
195
177
160
142
124
106
88
69
50
31
12
-6
-25
-43
-61
-79
-97
-114
-132
-149
-166
-182
-198
-214
-229
-244
-258
-272
-286
-299
-312
-324
-337
-350
-363
-376
-389
-402
-416
-429
-442
-454
-466
-477
-489
-499
-509
-519
-528
-536
-544
-552
-558
-565
-570
-575
-580
-583
-586
-589
-591
-593
-594
-596
-597
-597
-598
-599
-599
-600
-601
-601
-602
-602
-603
-603
-603
-603
-603
-602
-601
-599
-597
-594
-592
-588
-585
-581
-577
-573
-569
-564
-560
-555
-550
-546
-541
-536
-531
-525
-519
-512
-506
-499
-492
-486
-479
-473
-467
-460
-454
-448
-443
-437
-432
-426
-421
-415
-410
-404
-397
-391
-384
-377
-370
-363
-355
-348
-340
-333
-325
-317
-310
-302
-295
-288
-281
-274
-268
-261
-254
-247
-240
-233
-226
-219
-213
-206
-200
-193
-187
-181
-176
-172
-168
-165
-162
-160
-158
-157
-156
-156
-157
-157
-157
-157
-157
-157
-157
-156
-156
-155
-155
-155
-154
-154
-154
-153
-153
-153
-153
-153
-153
-154
-154
-155
-155
-155
-156
-157
-158
-160
-161
-163
-165
-166
-168
-170
-172
-174
-176
-179
-181
-184
-187
-189
-192
-195
-197
-200
-202
-205
-207
-208
-210
-211
-213
-214
-215
-216
-216
-216
-216
-216
-216
-216
-216
-216
-216
-216
-216
-216
-216
-216
-216
-216
-216
-216
-216
-216
-216
-215
-214
-213
-212
-210
-209
-207
-205
-202
-200
-198
-195
-193
-190
-188
-186
-184
-182
-180
-178
-176
-174
-173
-172
-172
-171
-171
-171
-170
-170
-170
-169
-169
-168
-168
-167
-165
-164
-162
-161
-159
-157
-156
-155
-153
-152
-152
-151
-150
-150
-150
-149
-149
-149
-148
-147
-147
-146
-145
-144
-144
-143
-144
-144
-145
-145
-146
-147
-148
-150
-152
-154
-156
-158
-160
-163
-166
-169
-172
-175
-179
-182
-186
-189
-193
-196
-200
-203
-207
-211
-215
-220
-225
-230
-235
-240
-245
-249
-254
-258
-263
-268
-273
-277
-282
-287
-292
-297
-302
-308
-313
-319
-325
-330
-336
-341
-346
-351
-356
-361
-366
-370
-375
-380
-384
-388
-391
-395
-398
-400
-403
-405
-407
-409
-411
-412
-414
-415
-416
-417
-417
-418
-418
-419
-419
-419
-418
-418
-417
-416
-415
-414
-412
-410
-407
-405
-403
-400
-397
-394
-390
-387
-383
-379
-375
-370
-366
-361
-356
-350
-345
-339
-333
-327
-320
-314
-308
-301
-294
-287
-279
-272
-264
-256
-248
-240
-232
-224
-216
-208
-200
-191
-183
-174
-166
-157
-148
-140
-132
-124
-116
-109
-101
-94
-86
-79
-71
-64
-57
-49
-42
-35
-27
-20
-13
-5
2
9
15
22
29
36
43
49
56
62
69
75
81
87
92
98
103
108
113
118
122
127
131
135
139
143
147
151
154
158
161
165
169
172
176
180
184
188
192
197
201
205
210
214
218
223
227
232
236
240
244
249
253
257
262
266
271
275
279
284
288
293
297
302
307
311
316
321
325
329
334
338
342
346
350
353
357
361
364
368
371
374
377
379
382
384
386
387
389
391
392
393
395
396
397
398
399
400
400
400
400
400
400
399
398
398
397
396
394
393
391
390
388
385
383
380
377
375
372
369
366
362
359
355
352
348
344
340
336
332
328
324
320
317
313
309
305
301
297
293
290
286
282
278
274
270
266
262
258
253
249
245
241
237
233
228
224
220
216
212
208
205
201
197
193
189
185
181
177
174
170
167
163
160
157
154
152
149
147
145
144
143
142
141
141
141
141
141
141
142
143
143
144
145
146
147
148
149
150
152
153
155
157
159
161
163
165
167
170
172
175
177
180
182
185
187
189
191
194
196
198
201
204
206
209
211
213
215
216
218
220
222
224
226
229
231
234
237
240
243
247
250
253
257
260
263
266
270
273
277
280
284
288
292
296
300
304
308
312
316
320
324
328
331
335
339
342
346
349
353
356
360
363
367
370
374
377
381
384
388
391
394
397
400
402
405
407
409
411
413
415
417
418
420
421
423
425
426
427
428
429
430
431
431
431
431
432
431
431
431
430
430
429
429
428
427
426
425
424
422
421
419
417
416
414
412
410
408
406
404
402
400
398
396
393
391
388
385
383
380
376
373
370
367
363
359
356
352
348
345
341
337
333
329
325
321
317
313
309
305
301
298
294
290
286
282
278
274
269
265
260
256
251
246
241
236
232
227
222
218
213
209
204
200
195
190
186
181
176
170
165
160
154
148
142
136
130
123
117
111
105
99
93
87
81
74
68
62
55
49
42
36
29
22
15
8
1
-5
-12
-19
-25
-32
-38
-45
-51
-58
-64
-70
-77
-83
-90
-96
-103
-109
-116
-122
-129
-135
-142
-148
-154
-160
-166
-172
-178
-184
-190
-196
-202
-209
-215
-221
-226
-232
-238
-244
-249
-255
-260
-265
-269
-273
-278
-282
-285
-289
-293
-297
-300
-304
-308
-311
-315
-319
-322
-326
-330
-333
-336
-339
-342
-345
-348
-350
-352
-354
-356
-357
-359
-360
-360
-361
-362
-362
-363
-363
-364
-364
-364
-365
-366
-366
-367
-368
-368
-368
-368
-368
-368
-367
-367
-367
-366
-366
-366
-366
-365
-365
-364
-363
-362
-361
-360
-359
-357
-355
-352
-350
-348
-345
-343
-340
-337
-335
-332
-329
-326
-323
-320
-316
-313
-310
-306
-303
-299
-295
-292
-288
-285
-281
-278
-275
-272
-269
-266
-263
-261
-259
-257
-255
-253
-251
-250
-248
-246
-245
-244
-243
-242
-241
-241
-240
-240
-239
-239
-239
-239
-239
-239
-239
-239
-239
-239
-239
-239
-239
-239
-239
-238
-238
-238
-238
-237
-237
-236
-236
-235
-235
-234
-233
-232
-232
-231
-230
-230
-229
-229
-228
-227
-227
-226
-225
-224
-223
-222
-221
-220
-219
-218
-217
-216
-215
-214
-213
-212
-211
-211
-210
-209
-208
-207
-207
-206
-205
-204
-203
-202
-201
-200
-199
-198
-196
-195
-193
-192
-190
-188
-186
-185
-183
-181
-180
-178
-177
-176
-174
-173
-172
-171
-170
-169
-168
-166
-165
-164
-163
-162
-161
-160
-160
-159
-158
-157
-157
-156
-155
-155
-154
-152
-151
-150
-149
-147
-145
-144
-142
-139
-137
-134
-131
-128
-125
-121
-117
-113
-109
-105
-101
-96
-91
-86
-81
-76
-71
-66
-61
-56
-50
-45
-39
-33
-26
-20
-13
-6
1
8
15
23
30
37
44
51
58
64
71
78
85
92
98
105
111
118
125
131
138
145
152
159
166
173
180
187
194
201
208
214
220
226
232
238
244
249
255
260
266
272
277
283
288
293
299
304
309
314
318
323
327
331
335
338
342
345
347
350
353
355
357
359
361
363
365
367
368
369
370
371
372
372
372
371
370
369
368
366
365
363
361
358
356
353
350
347
344
341
338
334
330
326
322
318
314
310
305
300
296
291
286
281
275
270
264
258
253
247
242
236
230
225
219
213
207
201
195
189
183
177
171
165
159
152
146
139
133
126
120
113
107
100
94
88
81
75
68
62
55
49
43
37
31
24
18
12
6
0
-6
-12
-17
-23
-29
-35
-42
-48
-54
-61
-67
-74
-80
-87
-94
-102
-109
-116
-123
-130
-137
-144
-151
-157
-164
-171
-178
-184
-191
-197
-203
-209
-215
-221
-227
-232
-237
-242
-246
-251
-255
-259
-263
-268
-272
-275
-279
-282
-285
-287
-290
-292
-293
-295
-296
-297
-298
-299
-300
-300
-300
-300
-300
-299
-298
-298
-297
-296
-295
-293
-292
-290
-288
-286
-284
-281
-278
-275
-272
-268
-265
-261
-258
-254
-250
-246
-242
-238
-233
-229
-224
-219
-214
-209
-203
-198
-192
-187
-181
-175
-169
-163
-158
-152
-146
-140
-135
-129
-123
-118
-112
-107
-101
-96
-90
-85
-80
-75
-70
-65
-59
-54
-49
-44
-39
-33
-28
-24
-19
-15
-10
-6
-2
2
6
10
13
17
20
23
26
29
32
35
38
40
42
43
45
46
46
46
46
46
45
44
43
41
39
37
34
31
28
25
21
18
14
9
5
1
-4
-9
-14
-19
-24
-30
-35
-41
-47
-53
-59
-65
-71
-77
-84
-90
-96
-103
-109
-116
-122
-129
-136
-143
-150
-157
-164
-170
-177
-184
-191
-197
-203
-209
-215
-220
-226
-231
-235
-240
-244
-248
-252
-255
-259
-261
-263
-265
-267
-268
-269
-270
-270
-270
-270
-270
-269
-269
-267
-266
-264
-261
-259
-256
-253
-249
-245
-241
-237
-232
-228
-222
-217
-212
-207
-201
-196
-190
-184
-178
-172
-166
-159
-153
-146
-140
-133
-126
-119
-111
-104
-97
-90
-82
-75
-68
-61
-53
-46
-39
-32
-26
-19
-12
-5
1
8
14
20
26
32
38
44
49
55
60
64
69
74
78
82
86
90
93
97
100
103
106
109
112
114
117
119
122
124
125
127
128
130
131
131
132
132
132
132
132
132
131
130
129
128
127
125
123
122
120
118
115
113
111
108
106
104
101
99
97
94
92
89
86
84
81
78
75
71
68
64
61
57
53
49
45
41
37
33
29
25
20
16
12
8
4
0
-3
-7
-10
-13
-16
-18
-21
-23
-26
-28
-29
-31
-32
-33
-33
-34
-34
-33
-33
-32
-32
-31
-30
-29
-28
-26
-25
-23
-21
-18
-16
-13
-10
-7
-3
1
5
9
14
18
23
28
33
38
43
49
54
60
65
71
77
82
88
93
99
104
110
115
121
126
131
137
142
148
153
159
164
170
175
180
186
191
196
201
206
210
215
220
224
228
233
237
241
244
248
252
255
258
261
264
267
269
271
274
276
278
280
281
283
285
286
287
289
290
291
292
292
293
293
292
292
291
289
288
286
284
281
279
276
273
270
267
263
259
255
251
247
243
239
234
230
225
220
215
210
204
199
193
187
181
175
169
163
157
151
145
139
133
127
121
115
109
103
97
91
86
80
74
69
63
58
52
47
42
37
32
28
23
19
15
10
6
2
-2
-6
-10
-14
-18
-22
-26
-30
-34
-37
-41
-44
-47
-50
-53
-56
-59
-61
-63
-65
-67
-68
-70
-71
-72
-73
-74
-75
-75
-76
-77
-77
-77
-78
-78
-78
-77
-77
-77
-76
-76
-75
-75
-74
-73
-73
-72
-72
-71
-70
-70
-69
-68
-67
-66
-65
-63
-62
-61
-59
-57
-56
-54
-53
-51
-49
-48
-46
-45
-43
-41
-39
-37
-35
-33
-31
-29
-26
-24
-21
-19
-16
-14
-12
-9
-7
-5
-3
-1
1
3
5
7
9
11
13
14
16
18
19
21
23
24
26
28
29
31
33
34
35
37
38
39
39
40
40
41
41
41
41
41
41
40
40
39
39
39
38
38
37
36
35
34
33
32
30
29
27
26
24
23
21
20
18
17
15
14
13
12
11
10
9
8
7
6
6
5
5
4
4
3
3
2
1
1
0
0
-1
-1
-1
-2
-2
-2
-2
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-2
-2
-2
-2
-2
-1
-1
0
1
2
3
4
5
6
6
7
8
8
9
9
10
10
11
11
11
11
11
12
12
12
12
13
13
13
14
14
14
14
14
14
14
14
13
13
13
13
13
14
14
14
14
14
15
15
15
15
16
16
16
16
17
17
17
17
17
17
17
17
18
18
18
18
18
18
17
17
17
17
17
17
16
16
16
15
15
14
14
13
13
13
13
13
13
13
13
14
14
14
15
15
15
15
16
16
16
16
17
17
18
19
20
21
22
24
25
26
28
29
31
33
34
36
38
40
43
45
47
50
52
54
57
60
62
65
68
70
73
76
79
82
85
87
90
93
95
98
101
103
106
109
112
114
117
121
124
127
130
133
136
140
143
146
149
152
154
157
160
162
165
167
169
171
173
175
178
180
182
184
186
188
190
192
193
195
197
198
200
201
202
203
204
204
205
206
206
207
207
208
208
208
209
209
209
209
209
209
209
209
209
209
209
209
208
208
207
206
206
205
204
203
201
200
198
197
195
192
190
188
185
182
180
177
174
171
167
164
161
157
154
150
146
143
139
135
131
126
122
118
113
109
104
100
95
91
86
81
76
71
67
62
57
52
48
43
39
35
30
26
22
18
13
9
5
1
-4
-8
-12
-17
-21
-25
-30
-34
-38
-42
-45
-49
-53
-56
-60
-63
-67
-70
-73
-76
-79
-81
-84
-86
-88
-91
-93
-95
-97
-99
-100
-102
-103
-104
-105
-106
-107
-108
-108
-108
-109
-109
-109
-109
-109
-109
-109
-109
-109
-109
-109
-108
-108
-107
-107
-107
-106
-105
-104
-103
-102
-101
-100
-98
-97
-95
-94
-92
-91
-89
-88
-87
-85
-84
-83
-82
-81
-80
-79
-78
-77
-76
-74
-73
-72
-71
-70
-69
-68
-67
-66
-65
-64
-63
-62
-61
-60
-59
-58
-57
-56
-55
-54
-53
-52
-51
-49
-48
-47
-46
-46
-45
-44
-44
-44
-43
-43
-43
-42
-42
-42
-42
-42
-42
-42
-42
-42
-43
-43
-43
-43
-42
-42
-42
-42
-41
-41
-41
-40
-40
-39
-39
-38
-37
-37
-36
-35
-34
-33
-32
-31
-30
-29
-28
-27
-26
-25
-24
-23
-22
-20
-19
-18
-16
-14
-13
-11
-9
-7
-5
-3
-1
1
3
5
8
10
12
15
17
20
22
25
27
30
32
34
37
39
42
45
47
50
52
55
57
60
62
65
67
70
72
75
77
80
82
85
87
90
92
94
97
99
102
104
106
108
110
112
114
116
118
120
122
124
126
128
130
132
135
137
139
141
143
145
147
149
151
153
154
156
158
160
162
164
165
167
169
171
173
175
176
178
179
181
182
184
185
186
188
189
191
192
193
195
196
197
198
199
200
201
202
203
204
205
206
206
207
208
208
209
209
210
210
210
211
211
211
211
211
211
211
210
210
210
209
209
208
208
208
208
208
207
207
207
207
206
206
206
206
205
205
205
205
204
204
204
203
203
202
202
201
201
200
199
199
198
197
196
195
194
193
192
191
190
189
188
187
185
184
183
182
181
179
178
177
176
175
174
173
173
172
171
170
169
168
167
166
164
163
162
161
160
158
157
155
153
152
150
148
146
145
143
141
139
138
136
134
132
130
129
127
125
123
122
120
118
117
115
113
111
108
106
104
101
99
96
94
92
89
86
84
81
79
76
73
71
68
65
62
59
56
53
49
46
43
40
36
33
29
26
23
19
16
12
9
5
2
-1
-5
-8
-12
-15
-19
-22
-26
-29
-32
-36
-39
-42
-45
-49
-51
-54
-57
-60
-62
-65
-67
-70
-72
-74
-76
-79
-81
-83
-85
-87
-89
-91
-92
-94
-96
-97
-99
-100
-101
-102
-103
-104
-105
-105
-106
-106
-107
-107
-107
-107
-107
-107
-107
-107
-106
-106
-105
-104
-103
-102
-101
-99
-98
-97
-95
-94
-93
-91
-90
-88
-87
-85
-83
-82
-80
-78
-77
-75
-74
-72
-70
-69
-67
-65
-64
-62
-61
-59
-57
-56
-54
-53
-51
-49
-48
-46
-44
-43
-41
-40
-38
-37
-35
-34
-33
-31
-30
-29
-28
-27
-26
-25
-25
-24
-24
-23
-23
-22
-22
-21
-21
-20
-19
-19
-18
-18
-17
-16
-16
-15
-15
-14
-13
-13
-12
-12
-11
-10
-10
-9
-9
-8
-8
-8
-7
-6
-6
-5
-5
-4
-3
-3
-2
-1
0
1
1
2
3
4
5
6
6
7
8
9
10
11
12
13
14
15
16
17
19
20
21
22
23
24
25
26
26
27
28
28
29
29
30
30
31
32
32
33
33
34
34
34
35
35
36
36
36
37
37
38
38
38
39
39
39
40
40
40
41
41
41
42
42
43
43
43
44
44
44
45
45
46
46
47
47
48
49
50
51
52
53
55
56
58
59
61
63
65
67
68
70
73
75
77
79
81
83
85
87
89
91
93
95
97
99
101
103
106
108
110
112
115
117
119
121
124
126
128
130
132
134
136
138
141
143
145
147
148
150
152
154
155
156
158
159
160
160
161
162
163
164
164
165
166
167
167
168
169
169
170
171
171
172
172
173
173
173
173
173
173
173
173
173
172
172
172
171
170
170
169
168
168
167
166
165
163
162
161
159
158
156
154
153
151
149
147
145
143
141
139
137
135
133
131
129
127
125
124
122
120
118
117
115
113
112
110
108
107
105
104
102
100
98
96
94
93
90
88
86
84
82
80
78
76
74
72
70
68
66
64
62
60
58
56
54
52
50
48
46
44
42
40
38
36
33
31
29
27
24
22
20
17
15
12
10
7
5
2
0
-2
-5
-7
-9
-11
-13
-16
-18
-20
-22
-25
-27
-30
-32
-35
-37
-39
-42
-44
-47
-49
-52
-54
-57
-60
-62
-65
-67
-70
-73
-75
-78
-80
-83
-85
-87
-89
-91
-93
-95
-97
-98
-100
-101
-102
-103
-104
-105
-106
-107
-108
-108
-109
-109
-110
-110
-110
-110
-111
-111
-110
-110
-110
-109
-109
-108
-107
-106
-105
-104
-103
-102
-100
-99
-97
-96
-94
-92
-91
-89
-87
-85
-83
-81
-79
-76
-74
-72
-69
-67
-65
-62
-60
-57
-55
-52
-50
-47
-45
-42
-40
-37
-35
-32
-30
-27
-25
-22
-20
-17
-15
-13
-10
-8
-6
-4
-2
0
2
4
5
7
9
10
11
13
14
15
16
17
17
18
18
19
19
19
18
18
18
17
16
15
15
13
12
11
10
8
7
5
3
2
0
-2
-4
-6
-8
-11
-13
-15
-17
-20
-22
-24
-26
-29
-31
-33
-36
-38
-40
-43
-45
-48
-50
-53
-55
-58
-60
-63
-65
-68
-71
-73
-76
-79
-81
-84
-86
-89
-91
-94
-96
-98
-100
-102
-104
-107
-109
-110
-112
-114
-116
-118
-119
-121
-122
-124
-125
-126
-127
-128
-129
-130
-130
-131
-132
-133
-133
-134
-135
-135
-136
-137
-137
-138
-138
-139
-139
-139
-140
-140
-140
-140
-140
-140
-139
-139
-138
-138
-137
-136
-136
-135
-134
-133
-132
-131
-129
-128
-127
-126
-125
-123
-122
-121
-119
-118
-117
-115
-114
-112
-111
-110
-108
-107
-105
-104
-102
-101
-99
-98
-96
-95
-94
-92
-91
-89
-88
-87
-85
-84
-83
-81
-80
-79
-77
-76
-74
-73
-71
-69
-68
-66
-64
-62
-60
-58
-56
-54
-52
-51
-49
-47
-45
-43
-41
-39
-37
-35
-33
-31
-30
-28
-26
-24
-22
-20
-19
-17
-15
-14
-12
-10
-9
-7
-5
-4
-2
-1
1
2
3
4
6
7
8
9
10
11
12
13
13
14
15
16
17
18
19
20
21
22
23
24
25
25
26
26
27
28
28
29
29
30
30
31
31
32
32
33
34
34
35
36
37
37
38
39
39
40
41
41
42
43
43
44
45
45
46
46
47
47
48
48
49
49
50
50
51
52
52
53
54
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
79
80
81
82
84
85
86
87
88
89
90
91
92
93
94
95
95
96
97
98
98
99
99
100
100
101
101
101
101
102
102
102
102
102
102
102
102
102
102
102
102
102
102
103
103
103
103
104
104
105
105
106
106
107
107
108
109
109
110
111
111
112
113
114
115
116
116
117
118
119
119
120
121
122
123
123
124
125
126
127
128
129
130
131
132
133
134
134
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
151
152
153
154
155
156
157
157
158
159
159
160
160
161
161
162
162
163
163
163
163
163
163
163
163
163
163
163
163
162
162
161
161
160
159
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
142
141
140
138
137
135
133
132
130
128
126
124
122
120
118
116
114
112
110
108
106
104
101
99
97
94
92
90
87
85
82
80
77
75
72
70
67
65
62
59
57
54
52
49
47
45
42
40
38
36
33
31
29
28
26
24
23
21
20
19
17
16
15
14
13
12
12
11
10
9
9
8
8
7
7
6
6
6
5
5
5
5
4
4
4
3
3
3
3
3
3
2
2
2
3
3
3
3
3
3
3
4
4
4
4
5
5
6
6
6
7
7
8
9
10
10
11
12
14
15
16
17
19
20
21
23
24
26
27
29
30
32
33
35
37
38
40
41
43
44
46
47
49
50
52
53
54
56
57
58
59
61
62
63
64
66
67
68
69
71
72
73
74
76
77
78
80
81
83
84
85
87
88
90
91
93
94
95
97
98
100
101
102
103
105
106
107
108
108
109
110
111
111
112
112
113
113
114
114
114
114
114
114
114
114
114
114
114
114
114
113
113
112
112
111
110
109
108
107
106
104
103
102
100
99
97
96
94
92
91
89
87
85
84
82
81
79
77
76
74
73
71
70
68
67
65
64
62
61
60
58
57
55
54
52
51
50
48
47
46
44
43
42
41
40
39
38
37
36
35
34
33
32
32
31
30
29
29
28
27
27
26
25
25
24
24
23
23
23
22
22
22
21
21
21
21
20
20
20
20
20
19
19
19
19
19
20
20
20
20
21
21
22
22
22
23
23
24
25
25
26
27
27
28
28
29
30
30
31
32
32
33
34
35
35
36
37
38
39
40
41
42
44
45
46
47
48
50
51
52
53
55
56
58
59
61
62
64
65
67
69
70
72
74
75
77
78
80
82
83
85
87
88
90
91
93
94
96
97
98
100
101
102
103
105
106
107
109
110
111
112
114
115
116
117
119
120
121
122
123
125
126
127
128
129
130
131
132
133
134
135
136
137
137
138
139
139
140
140
141
141
141
141
141
142
142
142
142
141
141
141
141
140
140
139
139
138
137
136
135
135
134
133
132
131
130
128
127
126
125
123
122
121
119
118
116
115
114
112
111
109
107
106
104
103
101
99
98
96
94
93
91
89
88
86
85
83
82
80
79
78
76
75
74
73
72
70
69
68
67
66
65
64
63
62
61
59
58
57
56
55
54
53
52
51
50
49
48
47
45
44
43
42
41
40
39
38
37
36
35
35
34
33
32
32
31
31
30
29
29
28
28
27
26
26
25
25
24
24
23
22
22
21
21
20
20
20
19
19
19
19
18
18
18
18
18
17
17
17
17
17
17
17
17
18
18
19
19
20
20
21
22
23
24
25
25
26
27
28
29
30
31
33
34
35
36
38
39
41
42
44
45
47
48
50
51
53
54
56
57
59
60
62
63
65
66
68
69
71
72
73
75
76
77
79
80
81
82
83
85
86
87
88
89
90
90
91
92
93
93
94
94
95
95
96
96
96
96
97
97
97
98
98
98
98
98
99
99
99
99
99
99
99
99
99
99
98
98
98
98
97
97
96
96
95
95
95
94
93
93
92
92
91
90
89
88
87
86
84
83
82
80
79
77
75
74
72
70
68
66
63
61
59
56
54
51
48
45
42
39
36
33
29
26
23
19
16
12
9
5
2
-2
-5
-9
-13
-16
-20
-23
-27
-31
-35
-38
-42
-46
-50
-54
-58
-62
-66
-70
-73
-77
-81
-85
-88
-92
-95
-98
-102
-105
-108
-111
-114
-117
-120
-123
-125
-128
-130
-133
-135
-137
-139
-141
-143
-144
-146
-147
-149
-150
-151
-152
-152
-153
-154
-154
-155
-155
-155
-156
-156
-156
-156
-156
-156
-155
-155
-154
-154
-153
-152
-151
-150
-149
-147
-146
-144
-143
-141
-139
-137
-134
-132
-130
-127
-125
-122
-120
-117
-114
-111
-108
-105
-102
-99
-96
-93
-90
-87
-83
-80
-77
-74
-71
-67
-64
-61
-58
-55
-52
-49
-46
-43
-40
-38
-35
-32
-29
-27
-24
-21
-18
-16
-13
-10
-8
-5
-2
0
3
5
8
10
13
15
18
20
22
25
27
29
31
33
36
38
40
42
44
46
49
51
53
54
56
58
60
62
64
65
67
68
70
71
73
74
76
77
78
80
81
83
84
86
87
89
90
92
93
95
96
97
99
100
101
103
104
105
106
107
108
109
111
112
113
114
115
116
117
118
119
119
120
121
121
122
122
123
123
123
124
124
124
124
124
124
125
125
125
125
124
124
124
124
124
123
123
122
122
121
121
120
119
118
117
116
115
114
112
111
109
108
106
105
103
101
99
97
95
93
91
89
87
85
83
81
79
77
74
72
70
67
65
62
60
57
55
52
49
46
43
41
38
35
32
28
25
22
19
16
13
9
6
3
0
-4
-7
-10
-14
-17
-20
-24
-27
-30
-34
-37
-40
-44
-47
-50
-53
-57
-60
-63
-66
-69
-72
-75
-78
-81
-84
-87
-90
-92
-95
-97
-100
-102
-105
-107
-110
-112
-114
-116
-119
-121
-123
-125
-127
-129
-131
-133
-135
-137
-140
-142
-144
-146
-148
-150
-152
-153
-155
-157
-159
-161
-162
-164
-166
-167
-169
-170
-172
-173
-175
-176
-177
-178
-180
-181
-182
-182
-183
-184
-184
-185
-185
-186
-186
-187
-187
-187
-187
-187
-188
-188
-188
-188
-188
-187
-187
-187
-186
-186
-185
-185
-184
-183
-183
-182
-181
-180
-179
-178
-177
-176
-175
-173
-172
-170
-169
-167
-165
-163
-161
-159
-157
-155
-152
-150
-148
-145
-143
-140
-138
-135
-133
-130
-128
-125
-122
-120
-117
-114
-111
-108
-105
-102
-98
-95
-92
-88
-85
-81
-78
-74
-71
-67
-63
-59
-56
-52
-48
-44
-40
-36
-32
-28
-24
-19
-15
-11
-7
-3
2
6
10
14
18
23
27
31
35
39
43
47
51
55
59
63
66
70
74
77
80
84
87
90
93
96
99
102
104
107
110
112
115
117
120
122
124
126
128
130
132
134
136
138
139
141
143
144
146
147
148
150
151
152
153
154
155
156
156
157
158
159
159
160
160
161
161
161
161
161
161
161
161
161
161
161
161
161
160
160
160
159
159
158
158
157
157
156
155
154
153
152
151
150
148
147
146
145
143
142
140
139
137
136
134
133
131
129
128
126
124
122
121
119
117
115
114
112
110
108
106
104
102
100
98
96
94
92
90
87
85
83
81
79
77
75
73
71
69
67
65
62
60
58
56
54
52
49
47
45
43
41
38
36
34
31
29
27
25
22
20
18
15
13
10
8
6
4
1
-1
-3
-5
-7
-9
-11
-13
-15
-16
-18
-20
-21
-22
-24
-25
-27
-28
-29
-30
-31
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-43
-44
-45
-46
-47
-48
-49
-50
-50
-51
-52
-53
-53
-54
-55
-56
-56
-57
-57
-58
-58
-58
-59
-59
-59
-59
-60
-60
-60
-60
-60
-60
-60
-60
-60
-60
-60
-59
-59
-58
-58
-57
-57
-56
-55
-55
-54
-53
-52
-52
-51
-50
-49
-48
-47
-46
-45
-44
-43
-42
-40
-39
-38
-36
-35
-33
-32
-30
-29
-27
-26
-24
-23
-22
-20
-19
-17
-16
-14
-13
-11
-10
-8
-7
-5
-4
-2
0
1
3
5
6
8
9
11
12
13
15
16
17
18
20
21
22
23
24
25
26
27
27
28
29
30
30
31
31
32
32
33
33
33
34
34
34
35
35
35
35
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
35
35
35
35
35
35
34
34
34
34
33
33
32
32
32
31
31
30
30
30
29
29
28
28
28
27
27
26
26
26
25
25
25
24
24
24
24
23
23
23
23
23
23
23
23
23
23
23
23
23
23
24
24
24
25
25
25
26
27
27
28
29
30
31
32
33
34
35
36
37
38
39
40
42
43
44
46
47
48
49
51
52
54
55
56
58
60
61
63
65
66
68
70
72
74
76
78
80
82
84
86
87
89
91
93
95
97
99
101
103
105
107
109
111
113
115
117
119
121
123
125
127
129
131
133
135
137
139
141
143
145
147
149
151
152
154
156
158
159
161
163
164
166
167
169
171
172
174
175
177
178
179
181
182
183
185
186
187
188
190
191
192
193
194
195
196
198
199
200
201
202
203
204
205
206
207
208
210
211
212
213
214
215
215
216
217
218
219
220
221
222
222
223
224
225
225
226
227
227
228
228
229
229
230
230
230
230
231
231
231
231
231
231
231
231
231
231
231
231
231
230
230
230
229
229
228
228
227
227
226
226
225
224
223
223
222
221
220
219
218
217
215
214
213
211
210
208
207
205
204
202
201
199
198
196
195
193
191
189
188
186
184
182
180
178
176
174
172
170
167
165
163
160
158
155
153
150
147
145
142
139
136
133
130
128
125
122
119
116
113
109
106
103
100
97
94
91
88
85
82
79
76
73
70
67
64
61
58
55
52
49
46
43
40
37
34
31
28
26
23
20
17
14
11
9
6
3
1
-2
-5
-7
-10
-13
-15
-18
-20
-23
-25
-28
-30
-32
-35
-37
-39
-41
-43
-45
-46
-48
-50
-51
-53
-55
-56
-58
-59
-60
-62
-63
-64
-65
-67
-68
-69
-70
-71
-71
-72
-73
-74
-75
-75
-76
-76
-77
-78
-78
-78
-79
-79
-80
-80
-80
-80
-81
-81
-81
-81
-81
-81
-81
-81
-81
-80
-80
-80
-79
-79
-78
-77
-77
-76
-75
-74
-73
-73
-72
-71
-70
-69
-68
-67
-66
-66
-65
-64
-63
-62
-61
-60
-59
-58
-57
-56
-55
-54
-53
-52
-51
-50
-48
-47
-46
-44
-43
-41
-40
-38
-37
-35
-33
-32
-30
-28
-27
-25
-23
-21
-19
-17
-15
-13
-11
-9
-7
-5
-2
0
2
4
6
8
10
12
15
17
19
21
23
25
28
30
32
35
37
39
41
44
46
48
50
52
55
57
59
61
63
65
67
69
71
73
75
77
79
81
83
85
86
88
90
91
93
94
96
97
99
100
102
103
104
106
107
108
109
110
111
112
113
114
115
116
116
117
118
118
119
119
120
120
120
121
121
121
121
121
121
121
121
121
120
120
120
119
119
118
118
117
117
116
115
115
114
113
112
111
110
109
108
107
106
105
104
103
101
100
99
98
96
95
93
92
91
89
88
86
85
83
81
80
78
76
74
72
71
69
67
65
63
61
60
58
56
54
53
51
49
47
46
44
42
40
39
37
35
34
32
30
29
27
25
24
22
21
19
18
16
15
13
12
10
8
7
5
4
2
0
-1
-3
-4
-6
-8
-9
-11
-13
-14
-16
-18
-19
-21
-23
-24
-26
-27
-29
-31
-32
-34
-35
-37
-38
-40
-41
-43
-44
-46
-47
-48
-50
-51
-53
-54
-56
-57
-58
-60
-61
-63
-64
-66
-67
-69
-70
-71
-73
-74
-75
-77
-78
-79
-81
-82
-83
-84
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-96
-97
-98
-98
-98
-99
-99
-99
-99
-99
-99
-99
-98
-98
-98
-97
-97
-97
-96
-95
-95
-94
-93
-92
-91
-90
-89
-88
-87
-85
-84
-83
-81
-79
-78
-76
-74
-73
-71
-69
-67
-65
-63
-61
-59
-57
-55
-53
-51
-49
-46
-44
-42
-39
-37
-35
-32
-30
-27
-25
-22
-20
-17
-14
-11
-9
-6
-3
0
2
5
8
11
13
16
18
21
23
26
29
31
34
36
39
41
44
46
49
51
53
56
58
60
62
65
67
69
71
73
74
76
78
79
81
82
84
85
86
88
89
90
91
92
93
94
95
95
96
96
97
97
98
98
98
98
98
97
97
97
97
96
96
95
95
94
93
92
91
90
89
88
87
86
85
83
82
81
79
78
76
75
74
72
71
69
68
66
65
64
62
61
60
59
57
56
55
54
52
51
50
48
47
45
44
42
41
40
38
37
36
35
33
32
31
30
29
28
27
25
24
23
22
21
20
18
17
16
15
14
13
12
11
10
9
8
8
7
6
5
5
4
4
3
3
2
2
1
1
1
0
0
0
0
0
0
-1
-1
-1
0
0
0
0
0
0
1
1
1
2
2
2
3
3
4
4
5
5
6
7
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
23
24
25
26
27
28
29
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
50
51
52
53
53
54
55
55
56
56
57
58
58
59
59
59
60
60
60
61
61
61
61
61
61
61
61
61
60
60
60
60
60
60
59
59
59
58
58
58
57
57
56
56
55
55
54
54
53
53
52
51
51
50
49
49
48
47
47
46
45
44
44
43
42
42
41
40
39
38
38
37
36
35
34
33
32
31
30
29
27
26
25
24
22
21
20
18
17
16
14
13
11
10
8
6
5
3
2
0
-2
-4
-5
-7
-9
-11
-13
-15
-17
-19
-21
-23
-25
-27
-30
-32
-34
-36
-38
-41
-43
-45
-47
-50
-52
-54
-56
-59
-61
-63
-65
-68
-70
-72
-74
-76
-79
-81
-83
-85
-88
-90
-92
-94
-96
-99
-101
-103
-105
-107
-109
-111
-113
-115
-117
-119
-120
-122
-124
-126
-127
-129
-131
-132
-134
-135
-137
-138
-140
-141
-143
-144
-145
-147
-148
-149
-150
-151
-152
-153
-154
-155
-156
-157
-158
-159
-159
-160
-161
-161
-162
-162
-163
-163
-163
-164
-164
-164
-164
-165
-165
-165
-165
-165
-165
-164
-164
-164
-164
-163
-163
-162
-161
-161
-160
-159
-158
-157
-156
-155
-153
-152
-151
-149
-148
-146
-145
-143
-141
-140
-138
-136
-134
-133
-131
-129
-127
-125
-123
-122
-120
-118
-116
-114
-112
-111
-109
-107
-105
-103
-101
-99
-97
-95
-93
-91
-89
-87
-85
-83
-81
-78
-76
-74
-72
-70
-68
-65
-63
-61
-59
-56
-54
-51
-49
-47
-44
-42
-39
-37
-34
-32
-29
-27
-25
-22
-20
-17
-15
-13
-11
-9
-6
-4
-2
0
2
4
6
8
9
11
13
15
17
18
20
22
23
25
27
28
30
31
33
34
36
37
39
40
41
43
44
45
46
48
49
50
51
51
52
53
54
55
55
56
56
57
57
58
58
59
59
59
60
60
60
61
61
61
61
62
62
62
62
62
62
62
62
62
62
61
61
61
61
61
60
60
60
60
59
59
59
58
58
58
57
57
57
56
56
55
55
54
54
53
53
52
51
51
50
49
49
48
47
47
46
45
45
44
43
43
42
41
41
40
39
39
38
37
37
36
36
35
35
34
34
33
33
32
32
31
31
30
30
29
29
28
28
28
27
27
26
26
26
26
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
26
26
26
26
27
27
27
28
28
28
29
29
29
30
30
30
31
31
32
32
33
33
34
34
34
35
35
36
36
36
37
37
37
38
38
38
39
39
39
40
40
41
41
41
42
42
42
42
43
43
43
43
44
44
44
44
44
44
44
44
44
44
43
43
43
42
42
42
41
41
41
40
40
39
39
39
38
38
37
37
36
35
35
34
34
33
32
32
31
30
30
29
28
28
27
26
26
25
24
24
23
23
22
22
21
21
20
20
20
19
19
19
18
18
18
18
18
18
18
18
18
18
18
18
18
19
19
19
19
20
20
20
21
21
22
22
22
23
23
24
24
25
25
26
26
27
27
28
29
29
30
31
32
32
33
34
35
36
37
38
39
40
41
42
43
43
44
45
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
73
74
75
76
77
78
79
80
81
82
83
84
85
85
86
87
88
89
89
90
91
91
92
92
93
93
94
94
94
95
95
95
95
95
95
95
95
95
95
94
94
94
93
93
92
92
91
90
89
88
87
87
85
84
83
82
81
80
78
77
76
74
73
71
70
68
67
65
63
62
60
58
56
55
53
51
49
47
46
44
42
41
39
38
36
35
33
32
31
29
28
27
26
25
23
22
21
21
20
19
18
17
17
16
16
15
15
15
14
14
14
14
14
14
14
14
14
15
15
15
16
16
17
17
18
19
19
20
21
22
23
24
25
26
27
28
29
30
31
33
34
35
37
38
39
41
42
44
45
47
48
50
52
53
55
57
58
60
62
63
65
67
69
70
72
74
76
77
79
81
83
84
86
88
90
92
93
95
97
99
101
103
104
106
108
110
111
113
115
116
118
120
121
123
124
126
127
129
130
132
133
135
136
137
139
140
141
142
144
145
146
147
148
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
168
169
170
170
171
172
172
173
173
173
173
174
174
174
174
174
174
174
174
173
173
173
172
172
171
171
170
170
169
168
167
166
166
165
164
163
162
161
160
158
157
156
155
154
153
152
150
149
148
147
145
144
143
141
140
138
137
135
133
132
130
129
127
126
124
122
121
119
118
116
115
113
111
110
108
106
105
103
102
100
98
97
95
94
92
91
89
88
86
85
83
82
81
79
78
77
76
75
73
72
71
70
69
68
67
66
65
65
64
63
62
62
61
61
60
60
59
59
58
58
57
57
56
56
55
55
55
54
54
54
53
53
52
52
52
51
51
50
50
50
49
49
48
48
48
47
47
47
46
46
45
45
45
44
44
44
43
43
43
42
42
42
42
41
41
41
41
41
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
41
41
41
41
40
40
40
40
40
40
40
40
40
40
39
39
39
39
38
38
38
38
37
37
36
36
36
35
35
34
34
34
33
33
32
32
31
31
30
30
30
29
29
28
28
27
27
26
25
25
24
24
23
23
22
22
21
20
20
19
19
18
17
17
16
16
15
15
14
14
13
13
13
12
12
11
11
10
10
9
9
9
8
8
7
7
7
6
6
6
6
5
5
5
5
4
4
4
4
3
3
3
2
2
2
2
1
1
1
0
0
0
0
-1
-1
-1
-2
-2
-2
-3
-3
-3
-3
-4
-4
-4
-5
-5
-5
-6
-6
-6
-6
-7
-7
-7
-7
-8
-8
-8
-9
-9
-9
-9
-10
-10
-10
-10
-11
-11
-11
-12
-12
-12
-12
-13
-13
-13
-13
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-13
-13
-13
-13
-13
-13
-12
-12
-12
-12
-12
-11
-11
-11
-10
-10
-10
-10
-9
-9
-9
-8
-8
-8
-7
-7
-7
-6
-6
-6
-5
-5
-5
-5
-4
-4
-4
-4
-3
-3
-3
-3
-2
-2
-2
-2
-2
-2
-1
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
5
5
5
5
6
6
6
6
7
7
8
8
8
9
9
10
10
10
11
11
11
12
12
12
13
13
13
14
14
14
15
15
15
16
16
16
16
17
17
17
17
18
18
18
18
18
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
21
21
21
21
21
21
21
21
21
22
22
22
22
22
22
23
23
23
23
23
23
24
24
24
24
24
24
24
24
24
24
24
24
24
24
23
23
23
23
23
23
23
23
23
23
22
22
22
22
22
21
21
21
20
20
20
19
19
19
18
18
17
17
16
16
15
15
15
14
14
13
13
12
12
11
11
10
10
9
8
8
7
7
6
6
5
5
4
4
3
3
2
2
1
1
0
0
-1
-1
-1
-2
-2
-3
-3
-4
-4
-4
-5
-5
-5
-6
-6
-6
-7
-7
-7
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-7
-7
-7
-7
-6
-6
-6
-5
-5
-5
-5
-4
-4
-4
-4
-3
-3
-3
-3
-2
-2
-2
-2
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
3
3
3
3
3
3
4
4
4
4
5
5
5
6
6
7
7
7
8
8
9
9
10
11
11
12
12
13
14
14
15
16
16
17
18
18
19
20
20
21
22
22
23
24
24
25
26
26
27
28
29
29
30
31
32
33
33
34
35
36
37
38
39
40
41
42
43
44
45
46
48
49
50
51
52
54
55
56
57
59
60
61
63
64
65
66
68
69
70
72
73
74
76
77
78
79
81
82
83
84
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
100
101
102
103
104
104
105
106
107
107
108
109
109
110
110
111
111
112
112
113
113
114
114
115
115
115
116
116
116
117
117
117
118
118
118
119
119
119
120
120
120
120
121
121
121
121
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
121
121
121
121
121
121
121
121
120
120
120
120
120
119
119
119
119
118
118
118
118
117
117
117
117
116
116
116
115
115
114
114
113
113
112
112
111
110
110
109
109
108
107
107
106
105
105
104
104
103
102
102
101
100
100
99
98
98
97
96
95
95
94
93
92
92
91
90
89
88
87
87
86
85
84
83
82
81
80
79
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
62
61
60
59
58
56
55
54
52
51
50
48
47
45
44
43
41
40
38
37
35
34
32
31
29
28
26
25
23
22
20
18
17
15
14
12
11
9
7
6
4
3
1
0
-2
-3
-5
-6
-8
-9
-11
-12
-14
-15
-17
-18
-20
-21
-23
-24
-26
-27
-29
-30
-31
-33
-34
-35
-37
-38
-39
-40
-42
-43
-44
-45
-46
-47
-48
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-63
-64
-65
-66
-66
-67
-68
-69
-69
-70
-70
-71
-72
-72
-72
-73
-73
-74
-74
-74
-75
-75
-75
-75
-76
-76
-76
-76
-76
-76
-76
-76
-76
-76
-76
-76
-76
-76
-76
-76
-76
-76
-76
-76
-76
-75
-75
-75
-75
-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
-64
-63
-63
-63
-62
-62
-61
-61
-60
-60
-59
-59
-58
-58
-57
-57
-56
-56
-55
-55
-54
-54
-53
-53
-52
-51
-51
-50
-49
-49
-48
-47
-46
-46
-45
-44
-43
-42
-41
-41
-40
-39
-38
-37
-36
-35
-34
-33
-32
-32
-31
-30
-29
-28
-27
-26
-25
-24
-23
-22
-21
-20
-18
-17
-16
-15
-14
-13
-12
-11
-10
-9
-8
-7
-6
-5
-4
-3
-2
-1
0
1
2
2
3
4
5
6
7
7
8
9
10
11
12
13
14
15
16
16
17
19
20
21
22
23
24
25
26
27
28
29
31
32
33
34
36
37
38
40
41
43
44
45
47
49
50
52
53
55
57
58
60
62
63
65
67
69
70
72
74
76
78
79
81
83
85
87
89
90
92
94
96
98
100
102
103
105
107
109
111
113
115
117
119
121
123
125
127
129
131
133
135
137
139
141
143
144
146
148
150
152
154
155
157
159
161
163
164
166
168
170
171
173
175
177
178
180
182
184
185
187
189
191
192
194
196
198
199
201
203
204
206
208
209
211
213
214
216
218
219
221
223
224
226
228
230
231
233
235
237
239
240
242
244
245
247
249
250
252
253
255
257
258
260
261
263
264
265
267
268
269
271
272
273
274
275
276
277
277
278
279
279
280
280
281
281
281
282
282
282
282
282
282
282
281
281
281
280
280
279
279
278
277
277
276
275
274
273
273
272
271
270
269
268
266
265
264
263
261
260
259
258
256
255
253
252
250
249
248
246
245
243
241
240
238
237
235
233
232
230
228
227
225
223
221
220
218
216
214
213
211
209
207
205
203
201
199
197
195
193
191
189
187
185
183
181
179
177
175
172
170
168
166
164
161
159
157
155
152
150
148
145
143
141
138
136
134
131
129
126
124
122
119
117
114
112
109
107
104
102
99
96
94
91
89
86
84
81
78
76
73
70
68
65
63
60
57
55
52
49
47
44
41
39
36
33
31
28
26
23
21
18
16
13
11
8
6
4
1
-1
-4
-6
-8
-10
-13
-15
-17
-19
-21
-24
-26
-28
-30
-32
-34
-36
-37
-39
-41
-43
-45
-46
-48
-50
-51
-53
-55
-56
-58
-59
-61
-62
-64
-65
-67
-68
-69
-71
-72
-73
-74
-75
-77
-78
-79
-80
-80
-81
-82
-83
-84
-84
-85
-86
-86
-87
-87
-88
-88
-88
-89
-89
-89
-90
-90
-90
-90
-90
-90
-90
-90
-90
-90
-90
-89
-89
-89
-89
-89
-89
-88
-88
-88
-88
-88
-87
-87
-87
-86
-86
-86
-86
-85
-85
-85
-85
-85
-84
-84
-84
-84
-84
-84
-84
-84
-84
-84
-84
-83
-83
-83
-83
-83
-83
-83
-83
-83
-83
-83
-83
-83
-83
-83
-83
-83
-83
-83
-83
-83
-83
-83
-83
-83
-83
-83
-83
-83
-83
-83
-84
-84
-84
-84
-84
-84
-84
-85
-85
-85
-85
-85
-86
-86
-86
-86
-86
-86
-86
-86
-86
-86
-86
-87
-87
-86
-86
-86
-86
-86
-86
-86
-86
-86
-86
-86
-86
-85
-85
-85
-85
-84
-84
-84
-84
-83
-83
-83
-82
-82
-81
-81
-81
-80
-80
-79
-79
-78
-78
-77
-77
-76
-76
-75
-75
-74
-74
-73
-72
-72
-71
-71
-70
-70
-69
-69
-68
-68
-67
-67
-66
-66
-66
-65
-65
-64
-64
-63
-63
-62
-62
-62
-61
-61
-60
-60
-59
-59
-59
-58
-58
-57
-57
-57
-56
-56
-55
-55
-55
-54
-54
-53
-53
-53
-52
-52
-51
-51
-51
-50
-50
-49
-49
-48
-48
-48
-47
-47
-46
-46
-45
-45
-44
-44
-43
-43
-42
-42
-41
-41
-40
-40
-39
-39
-38
-38
-38
-37
-37
-36
-36
-36
-35
-35
-34
-34
-34
-33
-33
-32
-32
-31
-31
-30
-30
-29
-29
-28
-28
-27
-27
-26
-26
-25
-25
-24
-24
-23
-22
-22
-21
-21
-20
-19
-19
-18
-18
-17
-17
-16
-15
-15
-14
-14
-13
-13
-12
-12
-11
-11
-10
-9
-9
-8
-8
-7
-6
-6
-5
-5
-4
-3
-3
-2
-2
-1
-1
0
1
1
2
2
3
4
4
5
5
6
7
7
8
9
9
10
11
11
12
13
13
14
15
15
16
17
17
18
19
20
20
21
22
23
23
24
25
26
26
27
28
28
29
30
30
31
31
32
32
33
33
34
34
35
36
36
37
37
38
38
39
39
40
41
41
42
42
43
43
43
44
44
45
45
45
46
46
46
47
47
47
47
48
48
48
48
48
48
48
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
48
48
48
48
47
47
47
47
46
46
46
45
45
45
44
44
44
43
43
42
42
41
41
41
40
40
39
39
39
38
38
37
37
37
36
36
36
35
35
34
34
34
33
33
33
32
32
32
31
31
31
31
30
30
30
30
30
30
29
29
29
29
29
28
28
28
28
28
28
28
27
27
27
27
26
26
26
26
26
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
25
25
25
25
25
25
25
25
25
25
25
24
24
24
24
24
24
23
23
23
23
23
23
22
22
22
22
22
22
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
21
21
21
21
21
22
22
22
22
23
23
23
24
24
25
25
25
26
26
27
27
28
29
29
30
30
31
32
32
33
34
34
35
36
36
37
38
38
39
40
41
42
42
43
44
45
46
47
48
49
50
51
52
53
55
56
57
58
60
61
62
64
65
66
68
69
71
72
74
75
77
78
80
81
83
84
86
87
89
90
92
93
94
96
97
99
100
102
103
104
106
107
108
110
111
112
113
115
116
117
118
119
121
122
123
124
125
126
127
127
128
129
130
131
132
132
133
134
134
135
136
136
136
137
137
138
138
138
139
139
139
139
139
140
140
140
140
140
140
139
139
139
139
139
139
138
138
138
137
137
136
136
136
135
135
134
134
133
133
133
132
132
131
131
131
130
130
129
129
129
128
128
127
127
127
126
126
125
125
125
124
124
123
123
123
122
122
122
121
121
121
120
120
120
119
119
119
119
118
118
118
118
118
117
117
117
117
117
117
117
117
116
116
116
116
116
116
116
116
116
117
117
117
117
117
117
117
117
117
118
118
118
118
118
118
119
119
119
119
119
119
119
119
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
122
122
122
122
122
122
122
122
122
122
123
123
123
123
123
123
124
124
124
124
125
125
125
126
126
126
126
127
127
127
128
128
128
128
129
129
129
129
130
130
130
130
131
131
131
131
132
132
132
132
132
132
133
133
133
133
133
133
133
133
133
133
133
132
132
132
132
132
132
131
131
131
131
130
130
129
129
129
128
128
127
127
126
126
125
125
124
123
123
122
121
120
120
119
118
117
117
116
115
114
113
112
111
110
109
108
106
105
104
103
101
100
99
97
96
95
93
92
91
89
88
86
85
84
82
81
80
78
77
75
74
72
71
70
68
67
65
64
63
61
60
59
57
56
55
53
52
51
49
48
47
46
44
43
42
41
40
38
37
36
35
34
33
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
15
14
13
12
11
10
9
8
7
6
6
5
4
3
2
2
1
0
-1
-2
-2
-3
-4
-4
-5
-6
-6
-7
-7
-8
-9
-9
-10
-10
-10
-11
-11
-12
-12
-12
-13
-13
-13
-13
-14
-14
-14
-14
-14
-15
-15
-15
-15
-15
-15
-15
-15
-16
-16
-16
-16
-16
-16
-16
-16
-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
-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
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-18
-18
-18
-18
-18
-18
-19
-19
-19
-19
-19
-20
-20
-20
-20
-21
-21
-21
-21
-22
-22
-22
-22
-23
-23
-23
-23
-24
-24
-24
-25
-25
-25
-26
-26
-26
-27
-27
-27
-28
-28
-28
-29
-29
-29
-30
-30
-31
-31
-31
-32
-32
-32
-32
-33
-33
-33
-34
-34
-34
-34
-35
-35
-35
-35
-36
-36
-36
-36
-36
-37
-37
-37
-38
-38
-38
-38
-39
-39
-39
-40
-40
-40
-40
-41
-41
-41
-41
-41
-42
-42
-42
-42
-42
-42
-42
-42
-42
-43
-43
-43
-43
-43
-43
-43
-43
-43
-43
-43
-43
-42
-42
-42
-42
-42
-41
-41
-41
-41
-40
-40
-40
-39
-39
-38
-38
-37
-37
-36
-36
-35
-34
-33
-33
-32
-31
-30
-30
-29
-28
-27
-27
-26
-25
-25
-24
-23
-23
-22
-21
-20
-20
-19
-18
-17
-17
-16
-15
-14
-14
-13
-12
-11
-10
-10
-9
-8
-7
-6
-6
-5
-4
-3
-2
-1
-1
0
1
2
3
4
4
5
6
7
8
8
9
10
11
11
12
13
14
14
15
16
17
18
18
19
20
21
22
23
24
24
25
26
27
28
28
29
30
31
32
32
33
34
34
35
36
36
37
38
38
39
40
40
41
42
42
43
43
44
45
45
46
46
47
48
48
49
49
50
50
51
52
52
53
53
54
54
55
55
56
56
57
57
58
58
58
59
59
60
60
61
61
61
62
62
62
63
63
63
64
64
64
65
65
66
66
66
67
67
67
68
68
69
69
69
70
70
70
71
71
71
72
72
72
73
73
73
74
74
74
75
75
75
75
76
76
76
76
76
77
77
77
77
77
78
78
78
78
79
79
79
79
80
80
80
80
81
81
81
81
82
82
82
83
83
83
84
84
84
85
85
85
86
86
87
87
88
88
89
89
90
90
91
91
92
93
93
94
94
95
96
96
97
97
98
98
99
99
100
100
101
101
102
102
102
103
103
103
104
104
104
105
105
105
105
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
105
105
105
105
104
104
104
104
103
103
103
102
102
102
101
101
100
100
100
99
99
98
98
97
96
96
95
95
94
93
93
92
92
91
91
90
89
89
88
88
87
87
86
86
85
85
85
84
84
83
83
82
82
81
81
80
80
80
79
79
79
78
78
78
77
77
77
76
76
76
76
75
75
75
75
75
75
74
74
74
74
74
74
74
73
73
73
73
73
73
73
73
73
73
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
73
73
73
73
73
73
74
74
74
75
75
75
75
76
76
76
77
77
78
78
78
79
79
79
80
80
80
81
81
82
82
82
83
83
83
84
84
84
84
85
85
85
85
86
86
86
86
87
87
87
87
87
88
88
88
88
89
89
89
89
89
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
89
89
89
89
89
89
89
88
88
88
88
88
87
87
87
87
87
86
86
86
86
85
85
85
84
84
84
84
83
83
83
83
83
82
82
82
82
82
82
82
82
81
81
81
81
81
81
81
81
81
82
82
82
82
82
82
82
82
83
83
83
83
83
84
84
84
85
85
85
86
86
87
87
88
88
89
89
90
90
91
92
92
93
94
94
95
96
96
97
98
99
100
100
101
102
103
104
105
105
106
107
108
109
110
111
112
113
114
115
116
117
118
120
121
122
123
124
125
126
127
128
129
130
131
132
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
148
149
150
151
152
153
153
154
155
156
156
157
158
158
159
160
160
161
162
162
163
164
164
165
165
166
166
167
167
168
168
169
169
170
170
170
171
171
171
172
172
172
172
173
173
173
173
173
173
174
174
174
174
174
174
174
174
174
174
174
173
173
173
173
173
173
172
172
172
172
172
171
171
171
171
171
171
171
170
170
170
170
170
170
170
170
170
170
170
170
170
170
170
170
170
170
170
170
170
170
170
170
171
171
171
171
171
172
172
172
172
173
173
173
173
174
174
174
175
175
175
175
175
176
176
176
176
176
176
177
177
177
177
177
177
177
177
177
177
177
177
177
177
176
176
176
175
175
175
174
174
173
173
172
171
171
170
169
169
168
167
166
165
164
163
162
161
160
159
158
156
155
154
153
151
150
148
147
145
144
142
141
139
138
136
134
133
131
129
127
126
124
122
120
119
117
115
113
111
109
107
106
104
102
100
98
96
94
92
90
88
86
84
82
81
79
77
75
73
71
69
67
65
63
61
59
57
55
53
51
49
47
45
43
42
40
38
36
34
32
30
29
27
25
23
21
19
17
16
14
12
10
8
6
5
3
1
-1
-3
-4
-6
-8
-10
-11
-13
-15
-17
-18
-20
-22
-24
-25
-27
-29
-30
-32
-34
-35
-37
-38
-40
-41
-43
-44
-46
-47
-48
-50
-51
-52
-53
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-66
-67
-68
-69
-69
-70
-70
-71
-71
-72
-72
-73
-73
-73
-73
-74
-74
-74
-74
-74
-74
-74
-74
-74
-73
-73
-73
-73
-72
-72
-72
-71
-71
-70
-70
-69
-69
-68
-68
-67
-66
-66
-65
-64
-63
-63
-62
-61
-60
-59
-58
-57
-56
-55
-54
-53
-52
-51
-49
-48
-47
-46
-45
-43
-42
-41
-39
-38
-37
-35
-34
-32
-31
-29
-28
-26
-25
-23
-21
-20
-18
-16
-15
-13
-11
-10
-8
-6
-4
-3
-1
1
3
4
6
8
10
12
13
15
17
19
21
22
24
26
28
30
31
33
35
37
39
40
42
44
46
47
49
51
53
54
56
58
59
61
63
64
66
68
69
71
72
74
75
77
78
79
81
82
83
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
99
100
101
102
102
103
103
104
104
105
105
105
106
106
106
106
107
107
107
107
107
107
107
107
107
107
107
106
106
106
106
106
105
105
105
104
104
103
103
102
102
101
101
100
99
99
98
97
97
96
95
94
94
93
92
91
91
90
89
88
87
87
86
85
85
84
83
82
82
81
81
80
79
79
78
77
77
76
76
75
75
74
74
73
73
72
72
72
71
71
70
70
70
69
69
69
68
68
68
67
67
67
67
67
66
66
66
66
66
66
66
66
66
66
65
65
65
65
66
66
66
66
66
66
66
66
67
67
67
67
67
68
68
68
68
69
69
69
70
70
70
71
71
71
72
72
72
73
73
74
74
74
75
75
76
76
77
77
77
78
78
79
79
79
80
80
80
81
81
81
82
82
82
83
83
83
84
84
84
85
85
85
86
86
86
87
87
87
88
88
88
89
89
89
90
90
90
90
91
91
91
91
92
92
92
92
92
93
93
93
93
94
94
94
94
94
95
95
95
95
96
96
96
96
97
97
97
97
98
98
98
98
99
99
99
100
100
100
101
101
101
102
102
102
103
103
103
104
104
105
105
105
106
106
106
106
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
107
107
107
107
107
107
107
107
107
106
106
106
106
106
106
106
106
106
106
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
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
105
105
105
105
105
105
104
104
104
104
104
104
103
103
103
103
103
103
103
103
103
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
103
103
103
103
103
103
104
104
104
104
105
105
105
105
106
106
106
107
107
107
108
108
108
109
109
109
110
110
110
111
111
111
112
112
112
113
113
114
114
114
115
115
116
116
116
117
117
118
118
118
119
119
120
120
120
121
121
121
122
122
122
123
123
123
124
124
124
125
125
125
126
126
126
126
127
127
127
128
128
128
128
129
129
129
129
129
129
130
130
130
130
130
130
130
130
130
130
130
130
130
130
129
129
129
129
129
129
128
128
128
128
127
127
127
126
126
126
125
125
124
124
123
123
123
122
122
121
121
120
120
119
119
118
118
117
117
116
116
115
115
114
114
114
113
113
112
112
112
111
111
110
110
110
109
109
108
108
107
107
107
106
106
106
105
105
104
104
104
103
103
103
102
102
102
101
101
101
101
100
100
100
100
99
99
99
99
99
98
98
98
98
98
98
98
98
98
98
98
98
97
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
99
99
99
99
99
99
99
99
99
99
99
100
100
100
100
100
100
100
100
100
100
100
100
100
101
101
101
101
101
101
101
101
101
101
101
101
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
100
100
100
100
100
100
99
99
99
99
98
98
97
97
97
96
96
95
95
94
93
93
92
92
91
90
90
89
88
88
87
86
85
85
84
83
82
82
81
80
79
79
78
77
77
76
75
75
74
73
73
72
71
71
70
69
69
68
67
67
66
65
65
64
63
62
62
61
60
59
59
58
57
56
55
54
54
53
52
51
50
49
48
47
46
45
44
43
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
15
14
13
12
11
10
9
9
8
7
6
5
5
4
3
2
2
1
0
-1
-1
-2
-3
-4
-4
-5
-6
-6
-7
-7
-8
-9
-9
-10
-10
-11
-11
-12
-12
-13
-13
-14
-14
-15
-15
-16
-16
-17
-17
-18
-18
-18
-19
-19
-20
-20
-20
-21
-21
-21
-22
-22
-22
-23
-23
-23
-24
-24
-24
-24
-25
-25
-25
-25
-25
-26
-26
-26
-26
-26
-26
-26
-26
-27
-27
-27
-27
-27
-27
-27
-27
-27
-27
-27
-27
-26
-26
-26
-26
-26
-26
-25
-25
-25
-25
-24
-24
-24
-23
-23
-22
-22
-22
-21
-21
-20
-20
-19
-19
-18
-17
-17
-16
-16
-15
-14
-14
-13
-12
-11
-11
-10
-9
-9
-8
-7
-6
-6
-5
-4
-4
-3
-2
-1
-1
0
1
2
2
3
4
5
6
6
7
8
9
10
10
11
12
13
14
14
15
16
17
18
19
19
20
21
22
23
24
24
25
26
27
28
29
30
31
31
32
33
34
35
36
36
37
38
39
40
40
41
42
43
43
44
45
46
46
47
48
49
49
50
51
51
52
52
53
54
54
55
56
56
57
57
58
58
59
59
60
60
60
61
61
62
62
62
62
63
63
63
63
63
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
63
63
63
63
62
62
62
61
61
61
60
60
59
59
58
58
57
57
56
56
55
54
54
53
52
52
51
50
50
49
48
48
47
47
46
45
45
44
44
43
42
42
41
41
40
40
39
39
38
38
37
37
36
36
36
35
35
34
34
34
33
33
33
32
32
32
31
31
31
30
30
30
29
29
29
28
28
28
27
27
26
26
26
25
25
25
24
24
23
23
23
22
22
21
21
21
20
20
20
19
19
19
18
18
18
17
17
17
16
16
16
15
15
15
15
14
14
14
13
13
13
12
12
12
12
12
11
11
11
11
11
10
10
10
10
10
10
10
9
9
9
9
9
9
9
8
8
8
8
8
8
8
8
8
8
7
7
7
7
7
7
7
7
7
6
6
6
6
6
5
5
5
5
4
4
4
3
3
3
2
2
2
1
1
0
0
-1
-1
-2
-2
-3
-3
-4
-4
-5
-6
-6
-7
-7
-8
-8
-9
-10
-10
-11
-11
-12
-13
-13
-14
-14
-15
-16
-16
-17
-18
-18
-19
-19
-20
-21
-21
-22
-23
-24
-24
-25
-26
-27
-27
-28
-29
-30
-30
-31
-32
-33
-33
-34
-35
-36
-36
-37
-38
-38
-39
-40
-41
-41
-42
-42
-43
-44
-44
-45
-46
-46
-47
-47
-48
-48
-49
-49
-50
-50
-51
-51
-52
-52
-53
-53
-53
-54
-54
-55
-55
-56
-56
-57
-57
-58
-58
-59
-59
-60
-60
-61
-61
-62
-63
-63
-64
-64
-65
-65
-66
-67
-67
-68
-68
-69
-69
-70
-71
-71
-72
-73
-73
-74
-74
-75
-76
-76
-77
-78
-78
-79
-80
-80
-81
-81
-82
-83
-83
-84
-85
-85
-86
-87
-87
-88
-89
-89
-90
-91
-92
-93
-94
-94
-95
-96
-97
-98
-99
-99
-100
-101
-102
-103
-104
-105
-106
-107
-108
-109
-110
-111
-111
-112
-113
-114
-115
-116
-117
-118
-119
-120
-120
-121
-122
-123
-124
-125
-125
-126
-127
-128
-129
-129
-130
-131
-132
-132
-133
-134
-134
-135
-135
-136
-136
-137
-137
-138
-138
-139
-139
-139
-140
-140
-141
-141
-141
-142
-142
-142
-142
-143
-143
-143
-143
-143
-143
-143
-143
-143
-143
-143
-144
-143
-143
-143
-143
-143
-143
-143
-143
-143
-143
-143
-143
-143
-143
-143
-143
-143
-142
-142
-142
-142
-142
-142
-141
-141
-141
-141
-141
-140
-140
-140
-140
-139
-139
-139
-138
-138
-138
-137
-137
-137
-136
-136
-136
-135
-135
-135
-134
-134
-134
-133
-133
-133
-133
-132
-132
-132
-132
-132
-131
-131
-131
-131
-131
-131
-131
-131
-131
-131
-131
-131
-131
-131
-131
-131
-131
-131
-132
-132
-132
-132
-133
-133
-133
-134
-134
-134
-135
-135
-135
-136
-136
-137
-137
-138
-138
-139
-139
-140
-140
-141
-141
-142
-142
-143
-143
-144
-145
-145
-146
-147
-147
-148
-149
-150
-151
-151
-152
-153
-154
-155
-156
-157
-158
-159
-160
-161
-162
-163
-164
-165
-166
-167
-168
-170
-171
-172
-173
-174
-175
-176
-177
-178
-179
-181
-182
-183
-184
-185
-186
-187
-188
-189
-190
-191
-192
-193
-194
-195
-196
-197
-197
-198
-199
-200
-201
-201
-202
-203
-204
-204
-205
-206
-206
-207
-207
-208
-208
-209
-209
-210
-210
-210
-211
-211
-211
-211
-212
-212
-212
-212
-212
-212
-212
-212
-212
-212
-212
-212
-212
-212
-212
-212
-212
-212
-212
-211
-211
-211
-211
-210
-210
-210
-209
-209
-209
-208
-208
-207
-207
-206
-206
-205
-205
-204
-204
-203
-202
-202
-201
-201
-200
-199
-199
-198
-198
-197
-196
-196
-195
-195
-194
-193
-193
-192
-192
-191
-190
-190
-189
-189
-188
-187
-187
-186
-186
-185
-184
-184
-183
-183
-182
-182
-181
-180
-180
-179
-179
-178
-178
-177
-176
-176
-175
-175
-174
-173
-173
-172
-172
-171
-171
-170
-170
-169
-168
-168
-167
-167
-166
-166
-165
-164
-164
-163
-163
-162
-162
-161
-161
-160
-159
-159
-158
-158
-157
-157
-156
-156
-155
-155
-154
-153
-153
-152
-152
-151
-151
-150
-150
-149
-149
-148
-147
-147
-146
-146
-145
-145
-144
-144
-143
-143
-142
-142
-141
-141
-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
-127
-126
-126
-125
-125
-124
-124
-123
-123
-122
-122
-121
-121
-120
-120
-119
-119
-118
-118
-117
-117
-116
-116
-115
-115
-114
-114
-113
-113
-112
-112
-111
-111
-110
-110
-109
-109
-108
-108
-107
-107
-106
-106
-105
-105
-104
-104
-103
-103
-102
-102
-102
-101
-101
-100
-100
-99
-99
-98
-98
-97
-97
-96
-96
-95
-95
-94
-94
-94
-93
-93
-92
-92
-91
-91
-90
-90
-89
-89
-89
-88
-88
-87
-87
-86
-86
-85
-85
-84
-84
-84
-83
-83
-82
-82
-81
-81
-80
-80
-80
-79
-79
-78
-78
-77
-77
-76
-76
-76
-75
-75
-74
-74
-73
-73
-73
-72
-72
-71
-71
-70
-70
-70
-69
-69
-68
-68
-67
-67
-67
-66
-66
-65
-65
-65
-64
-64
-63
-63
-62
-62
-62
-61
-61
-60
-60
-60
-59
-59
-58
-58
-57
-57
-57
-56
-56
-55
-55
-55
-54
-54
-53
-53
-53
-52
-52
-51
-51
-51
-50
-50
-49
-49
-49
-48
-48
-48
-47
-47
-46
-46
-46
-45
-45
-44
-44
-44
-43
-43
-42
-42
-42
-41
-41
-41
-40
-40
-39
-39
-39
-38
-38
-38
-37
-37
-36
-36
-36
-35
-35
-35
-34
-34
-33
-33
-33
-32
-32
-32
-31
-31
-31
-30
-30
-29
-29
-29
-28
-28
-28
-27
-27
-27
-26
-26
-26
-25
-25
-24
-24
-24
-23
-23
-23
-22
-22
-22
-21
-21
-21
-20
-20
-20
-19
-19
-19
-18
-18
-17
-17
-17
-16
-16
-16
-15
-15
-15
-14
-14
-14
-13
-13
-13
-12
-12
-12
-11
-11
-11
-10
-10
-10
-9
-9
-9
-8
-8
-8
-8
-7
-7
-7
-6
-6
-6
-5
-5
-5
-4
-4
-4
-3
-3
-3
-2
-2
-2
-1
-1
-1
-1
0
0
0
1
1
1
2
2
2
3
3
3
3
4
4
4
5
5
5
6
6
6
6
7
7
7
8
8
8
9
9
9
9
10
10
10
11
11
11
11
12
12
12
13
13
13
13
14
14
14
15
15
15
15
16
16
16
17
17
17
17
18
18
18
18
19
19
19
20
20
20
20
21
21
21
21
22
22
22
23
23
23
23
24
24
24
24
25
25
25
25
26
26
26
26
27
27
27
28
28
28
28
29
29
29
29
30
30
30
30
31
31
31
31
32
32
32
32
33
33
33
33
34
34
34
34
35
35
35
35
35
36
36
36
36
37
37
37
37
38
38
38
38
39
39
39
39
40
40
40
40
40
41
41
41
41
42
42
42
42
43
43
43
43
43
44
44
44
44
45
45
45
45
45
46
46
46
46
46
47
47
47
47
48
48
48
48
48
49
49
49
49
49
50
50
50
50
51
51
51
51
51
52
52
52
52
52
53
53
53
53
53
54
54
54
54
54
55
55
55
55
55
56
56
56
56
56
57
57
57
57
57
58
58
58
58
58
59
59
59
59
59
59
60
60
60
60
60
61
61
61
61
61
61
62
62
62
62
62
63
63
63
63
63
63
64
64
64
64
64
65
65
65
65
65
65
66
66
66
66
66
66
67
67
67
67
67
67
68
68
68
68
68
68
69
69
69
69
69
69
70
70
70
70
70
70
71
71
71
71
71
71
72
72
72
72
72
72
73
73
73
73
73
73
73
74
74
74
74
74
74
75
75
75
75
75
75
75
76
76
76
76
76
76
76
77
77
77
77
77
77
77
78
78
78
78
78
78
78
79
79
79
79
79
79
79
80
80
80
80
80
80
80
80
81
81
81
81
81
81
81
82
82
82
82
82
82
82
82
83
83
83
83
83
83
83
83
84
84
84
84
84
84
84
84
85
85
85
85
85
85
85
85
86
86
86
86
86
86
86
86
87
87
87
87
87
87
87
87
87
88
88
88
88
88
88
88
88
88
89
89
89
89
89
89
89
89
89
90
90
90
90
90
90
90
90
90
91
91
91
91
91
91
91
91
91
91
92
92
92
92
92
92
92
92
92
92
93
93
93
93
93
93
93
93
93
93
94
94
94
94
94
94
94
94
94
94
94
95
95
95
95
95
95
95
95
95
95
95
96
96
96
96
96
96
96
96
96
96
96
96
97
97
97
97
97
97
97
97
97
97
97
97
98
98
98
98
98
98
98
98
98
98
98
98
99
99
99
99
99
99
99
