5
1867
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
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
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
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
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
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
6
6
6
6
6
6
6
6
6
6
6
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
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
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
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
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
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
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
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
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
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
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
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
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
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
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
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
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
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
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
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
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
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
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
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
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
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
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
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
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
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
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
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
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
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
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
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
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
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
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
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
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
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
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
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
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
16
16
16
16
16
16
16
16
16
16
16
16
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
15
15
15
15
15
15
15
15
15
15
15
15
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
13
13
13
13
13
13
13
13
13
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
11
11
11
11
11
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
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
9
9
10
11
12
13
14
15
15
15
14
13
12
11
10
9
9
9
9
9
9
9
8
8
7
7
6
5
5
4
4
4
4
4
4
4
5
6
7
8
8
8
7
7
6
5
4
4
3
4
4
4
5
5
5
4
4
4
4
3
3
3
3
3
3
3
2
2
2
2
2
3
3
3
3
3
3
3
3
2
2
2
2
2
3
3
4
5
5
5
5
5
4
3
3
2
2
1
2
2
2
2
2
2
2
2
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
1
1
1
2
2
2
2
2
1
1
1
1
1
1
1
1
1
0
0
0
-1
-1
-2
-2
-3
-3
-3
-3
-3
-3
-3
-3
-3
-2
-2
-2
-2
-1
-1
-1
-1
-1
-1
-2
-2
-3
-3
-3
-3
-2
-2
-2
-2
-2
-3
-4
-5
-6
-6
-6
-6
-5
-4
-4
-3
-3
-3
-3
-3
-3
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-3
-3
-3
-4
-4
-4
-5
-5
-6
-6
-7
-8
-8
-9
-9
-9
-8
-8
-8
-8
-7
-7
-7
-8
-8
-8
-8
-8
-8
-8
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-8
-8
-9
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-9
-10
-10
-10
-10
-10
-10
-10
-10
-9
-9
-9
-8
-8
-8
-8
-9
-9
-10
-10
-11
-11
-11
-11
-11
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-12
-12
-12
-11
-11
-11
-11
-12
-12
-13
-13
-13
-14
-14
-13
-13
-13
-13
-13
-13
-14
-14
-15
-15
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-17
-17
-17
-16
-16
-16
-16
-15
-15
-15
-15
-15
-15
-16
-16
-17
-17
-17
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-18
-18
-18
-18
-18
-18
-18
-19
-19
-19
-19
-19
-19
-19
-19
-19
-20
-20
-20
-21
-21
-21
-21
-21
-21
-22
-22
-22
-22
-22
-22
-21
-21
-21
-20
-20
-20
-20
-20
-20
-21
-21
-22
-22
-22
-21
-21
-21
-21
-21
-21
-22
-22
-23
-23
-23
-23
-23
-23
-23
-23
-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
-26
-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
-27
-27
-27
-27
-27
-27
-28
-28
-28
-28
-28
-28
-28
-28
-27
-27
-27
-27
-27
-28
-28
-28
-28
-28
-28
-28
-28
-28
-28
-28
-28
-29
-29
-28
-28
-28
-28
-28
-28
-28
-29
-29
-29
-30
-30
-30
-30
-30
-29
-29
-28
-28
-28
-28
-28
-29
-29
-30
-30
-30
-30
-29
-29
-29
-29
-29
-29
-29
-29
-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
-31
-31
-31
-31
-31
-31
-31
-31
-32
-32
-32
-32
-31
-31
-31
-31
-31
-32
-32
-32
-31
-31
-31
-31
-31
-31
-32
-32
-32
-32
-33
-33
-33
-34
-34
-34
-34
-33
-34
-34
-34
-34
-34
-33
-33
-33
-33
-33
-33
-33
-33
-33
-33
-33
-33
-33
-33
-33
-33
-33
-33
-33
-32
-32
-32
-33
-33
-33
-34
-34
-35
-35
-35
-35
-34
-34
-34
-33
-33
-33
-33
-33
-33
-33
-33
-34
-34
-34
-34
-34
-33
-33
-33
-33
-33
-34
-34
-35
-36
-36
-37
-37
-37
-37
-36
-36
-36
-37
-37
-37
-37
-38
-38
-39
-39
-39
-39
-39
-38
-38
-38
-38
-38
-38
-37
-37
-37
-36
-36
-35
-35
-34
-33
-32
-31
-30
-30
-29
-29
-29
-29
-30
-30
-30
-30
-31
-31
-31
-31
-31
-31
-32
-32
-33
-34
-34
-34
-34
-34
-34
-34
-34
-34
-34
-34
-35
-35
-36
-37
-37
-37
-37
-37
-37
-36
-36
-36
-36
-36
-36
-36
-36
-36
-36
-35
-34
-34
-33
-32
-31
-30
-30
-30
-29
-30
-30
-30
-31
-31
-32
-33
-34
-34
-35
-36
-36
-37
-38
-39
-40
-41
-43
-44
-45
-46
-46
-46
-46
-46
-46
-46
-45
-45
-44
-43
-42
-41
-40
-39
-37
-35
-34
-32
-30
-29
-27
-26
-25
-25
-24
-24
-24
-24
-24
-25
-25
-26
-27
-29
-30
-31
-32
-34
-35
-36
-38
-39
-40
-41
-41
-41
-41
-41
-40
-40
-40
-40
-40
-39
-39
-38
-37
-36
-35
-34
-33
-33
-32
-32
-32
-32
-32
-32
-31
-31
-31
-31
-31
-31
-31
-31
-32
-32
-32
-32
-32
-33
-33
-34
-34
-35
-35
-36
-36
-37
-37
-38
-38
-39
-39
-39
-38
-38
-37
-37
-36
-35
-35
-34
-33
-32
-32
-31
-30
-30
-29
-29
-28
-28
-27
-27
-26
-26
-26
-26
-26
-26
-27
-27
-27
-28
-29
-29
-30
-31
-31
-32
-32
-32
-33
-33
-33
-33
-33
-33
-33
-33
-32
-32
-32
-31
-30
-30
-29
-28
-28
-27
-27
-27
-27
-27
-26
-26
-26
-26
-26
-26
-27
-28
-28
-29
-30
-30
-31
-31
-32
-32
-33
-33
-33
-33
-33
-33
-33
-33
-33
-32
-31
-31
-30
-29
-28
-26
-25
-24
-23
-22
-21
-20
-19
-18
-18
-18
-17
-17
-17
-17
-17
-17
-17
-18
-18
-19
-20
-20
-21
-22
-23
-24
-25
-26
-26
-27
-27
-27
-27
-27
-27
-27
-27
-27
-27
-26
-26
-25
-24
-23
-21
-20
-19
-18
-17
-17
-16
-16
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-16
-16
-16
-17
-17
-17
-18
-18
-18
-18
-18
-17
-16
-14
-12
-10
-7
-4
-1
2
5
9
12
15
18
21
23
26
28
31
34
38
41
45
49
52
55
57
59
59
59
58
57
57
59
62
68
76
87
99
114
130
146
163
179
193
205
216
225
233
240
247
254
262
273
286
301
318
336
355
374
391
406
420
433
447
461
477
495
515
536
559
585
614
646
678
710
740
766
788
806
821
833
843
852
861
872
888
906
927
952
981
1012
1048
1083
1119
1153
1185
1215
1242
1265
1285
1302
1315
1324
1329
1331
1333
1338
1347
1362
1383
1410
1442
1480
1522
1568
1616
1666
1716
1761
1798
1823
1833
1831
1816
1790
1759
1727
1701
1683
1674
1673
1681
1696
1717
1741
1765
1788
1810
1831
1849
1862
1867
1863
1852
1834
1813
1791
1769
1749
1733
1723
1717
1710
1699
1684
1661
1631
1592
1545
1493
1436
1375
1312
1248
1184
1123
1067
1016
970
926
883
838
792
742
690
636
579
522
466
413
364
317
271
229
190
154
119
83
47
14
-16
-43
-67
-88
-105
-117
-126
-129
-123
-110
-90
-65
-34
0
33
62
84
98
103
102
95
85
76
70
68
71
77
86
101
121
146
175
210
252
299
348
396
440
479
515
547
575
599
620
637
651
660
669
677
686
697
709
723
739
756
773
791
807
821
830
834
836
835
831
823
813
799
780
757
730
703
679
659
643
628
617
609
604
601
596
589
580
567
551
535
520
507
495
480
462
444
427
410
394
379
363
346
328
309
289
268
249
235
226
221
219
219
220
220
218
212
207
201
197
194
193
194
197
200
202
205
211
219
228
237
245
253
257
258
255
249
239
227
214
203
194
189
183
176
168
158
149
142
137
136
139
145
150
156
159
161
162
162
163
164
162
157
148
134
116
95
73
55
41
31
24
20
19
19
16
11
3
-8
-21
-40
-62
-86
-108
-125
-137
-147
-152
-153
-150
-146
-142
-138
-134
-129
-125
-122
-119
-116
-113
-109
-104
-99
-92
-84
-73
-61
-49
-37
-27
-16
-6
2
7
10
11
10
7
3
-2
-9
-15
-21
-25
-27
-29
-30
-33
-37
-43
-48
-52
-56
-60
-64
-70
-76
-82
-84
-82
-77
-70
-61
-51
-40
-29
-19
-10
-5
-3
-6
-11
-16
-21
-26
-30
-32
-31
-27
-22
-18
-15
-14
-13
-14
-17
-22
-28
-35
-43
-52
-61
-68
-72
-73
-72
-68
-61
-53
-45
-36
-27
-19
-11
-5
-1
3
5
6
6
4
3
0
-5
-11
-20
-29
-40
-52
-65
-79
-92
-107
-122
-138
-156
-174
-193
-211
-228
-246
-266
-288
-310
-330
-347
-360
-371
-381
-389
-397
-406
-416
-426
-435
-442
-449
-456
-464
-472
-481
-492
-505
-519
-536
-553
-570
-585
-598
-606
-610
-610
-608
-605
-604
-606
-610
-617
-624
-632
-639
-645
-647
-648
-648
-648
-646
-643
-638
-633
-629
-625
-622
-620
-619
-619
-619
-619
-620
-622
-625
-629
-632
-632
-631
-627
-622
-616
-610
-607
-608
-612
-618
-623
-627
-629
-629
-625
-615
-599
-581
-562
-546
-533
-526
-525
-530
-537
-545
-551
-556
-558
-560
-561
-563
-566
-573
-583
-598
-614
-631
-647
-660
-671
-682
-695
-708
-723
-738
-754
-769
-784
-799
-813
-825
-836
-846
-855
-862
-867
-873
-879
-889
-900
-912
-924
-935
-946
-957
-967
-977
-985
-990
-991
-989
-984
-979
-976
-973
-970
-967
-965
-965
-968
-975
-986
-1000
-1014
-1028
-1038
-1045
-1048
-1049
-1045
-1040
-1035
-1031
-1028
-1026
-1025
-1025
-1024
-1022
-1020
-1022
-1026
-1032
-1036
-1039
-1041
-1041
-1038
-1034
-1028
-1020
-1012
-1004
-1000
-998
-1000
-1006
-1012
-1018
-1027
-1036
-1045
-1054
-1060
-1064
-1067
-1069
-1070
-1070
-1068
-1064
-1060
-1053
-1044
-1034
-1020
-1008
-995
-983
-972
-962
-952
-943
-936
-931
-929
-928
-930
-933
-935
-936
-936
-934
-932
-927
-922
-915
-911
-910
-912
-917
-924
-932
-943
-955
-967
-980
-991
-1002
-1010
-1016
-1022
-1027
-1029
-1031
-1032
-1031
-1028
-1025
-1020
-1020
-1022
-1029
-1040
-1053
-1068
-1084
-1101
-1118
-1136
-1153
-1169
-1186
-1201
-1215
-1226
-1237
-1250
-1267
-1284
-1300
-1315
-1327
-1337
-1345
-1351
-1358
-1367
-1375
-1382
-1387
-1390
-1390
-1389
-1385
-1378
-1369
-1359
-1349
-1338
-1324
-1311
-1299
-1290
-1285
-1281
-1277
-1273
-1269
-1265
-1262
-1259
-1256
-1252
-1246
-1239
-1233
-1230
-1230
-1233
-1235
-1237
-1237
-1239
-1241
-1245
-1250
-1257
-1267
-1278
-1289
-1300
-1310
-1318
-1325
-1328
-1326
-1321
-1309
-1292
-1269
-1243
-1216
-1188
-1161
-1134
-1105
-1072
-1033
-988
-939
-884
-826
-764
-701
-637
-573
-508
-445
-381
-318
-254
-188
-120
-49
23
97
171
246
320
393
462
526
584
634
676
712
742
769
796
824
854
883
911
937
963
989
1014
1040
1064
1087
1110
1132
1152
1168
1181
1192
1203
1216
1233
1257
1287
1324
1365
1410
1457
1504
1548
1589
1626
1660
1690
1717
1738
1753
1762
1766
1765
1759
1748
1733
1715
1694
1669
1640
1606
1567
1522
1473
1418
1360
1300
1239
1178
1118
1060
1006
957
913
875
842
814
792
775
764
756
750
744
740
738
736
736
737
740
740
738
732
723
712
700
685
668
649
630
610
588
564
535
504
473
443
415
390
367
346
328
312
297
285
274
264
254
245
236
229
225
222
220
216
211
205
199
195
193
193
194
197
200
203
205
206
206
207
210
217
232
253
281
313
350
391
436
483
533
584
635
683
729
772
812
850
884
914
938
958
972
980
981
976
964
946
922
892
856
815
771
726
679
633
590
549
513
480
450
423
396
372
352
335
324
318
318
325
338
356
377
400
424
447
467
485
499
509
516
521
525
529
531
531
528
524
517
507
493
476
459
441
424
408
394
382
372
363
355
348
342
335
327
318
310
303
298
296
296
297
299
303
309
316
322
327
331
333
337
341
346
352
356
359
360
358
354
349
344
338
331
325
320
317
314
313
311
309
306
304
301
298
294
289
283
275
264
253
241
229
217
204
190
176
163
151
140
130
121
112
104
97
89
83
79
76
74
72
72
73
76
81
89
98
108
120
132
144
156
167
178
189
202
217
233
250
266
279
289
298
306
313
322
331
340
348
354
359
362
364
365
365
365
366
367
368
367
363
357
351
345
338
332
326
320
313
307
300
293
287
283
281
281
281
281
281
280
279
278
280
284
289
295
301
307
312
316
320
325
330
335
340
345
348
349
348
346
342
338
334
330
328
328
330
332
334
336
337
339
342
346
349
353
356
357
356
354
350
345
340
334
328
321
314
307
301
294
287
278
269
258
248
237
226
215
205
194
184
175
168
162
157
153
150
148
147
146
147
147
147
147
147
148
149
150
153
155
156
156
157
158
159
160
160
160
159
156
150
143
133
121
107
92
76
60
44
27
10
-7
-26
-46
-67
-88
-109
-130
-148
-164
-179
-190
-200
-206
-210
-214
-217
-219
-220
-219
-217
-214
-209
-203
-196
-188
-180
-171
-161
-151
-140
-130
-120
-110
-100
-90
-80
-71
-64
-57
-51
-45
-40
-35
-28
-19
-8
4
18
33
49
65
79
93
106
119
133
148
163
180
198
217
236
255
272
289
305
319
331
340
345
347
346
342
336
326
314
300
283
264
244
222
199
177
155
132
111
91
72
52
33
15
-2
-18
-33
-46
-57
-66
-73
-79
-83
-87
-92
-97
-103
-110
-117
-125
-134
-143
-154
-166
-179
-193
-209
-226
-243
-262
-281
-300
-320
-340
-360
-382
-405
-429
-452
-476
-499
-521
-543
-564
-584
-602
-619
-633
-646
-659
-671
-681
-691
-700
-709
-718
-728
-738
-747
-758
-768
-779
-790
-800
-809
-818
-824
-830
-835
-840
-845
-848
-851
-852
-852
-852
-853
-853
-854
-855
-855
-855
-853
-850
-847
-843
-839
-835
-831
-827
-822
-816
-810
-804
-797
-791
-785
-779
-771
-763
-753
-741
-729
-716
-702
-689
-675
-662
-650
-637
-626
-615
-603
-592
-580
-569
-557
-544
-530
-515
-500
-483
-464
-445
-426
-407
-389
-371
-354
-336
-320
-303
-287
-270
-254
-238
-222
-207
-192
-178
-163
-150
-136
-124
-113
-102
-92
-82
-73
-64
-56
-47
-39
-33
-27
-22
-17
-13
-9
-4
1
7
14
21
28
34
40
45
50
53
57
60
62
64
64
63
60
57
54
51
50
49
48
47
48
48
49
50
51
52
52
53
53
53
54
55
57
60
62
65
66
68
69
70
71
72
72
71
71
70
70
69
69
69
70
71
73
76
80
84
88
92
97
102
106
109
110
109
107
104
100
94
88
82
75
68
61
53
46
40
34
30
28
27
28
31
34
39
45
51
58
66
74
84
93
103
113
124
134
143
152
160
168
174
182
189
197
204
211
218
224
230
235
240
244
249
253
256
259
262
264
267
268
269
268
267
266
265
263
262
261
260
260
259
258
257
255
254
253
252
251
250
249
248
246
242
238
232
226
218
210
202
194
185
176
167
157
148
137
124
111
97
83
67
51
34
17
1
-15
-31
-47
-62
-77
-93
-109
-125
-142
-158
-175
-191
-208
-224
-241
-256
-271
-286
-300
-315
-329
-343
-355
-365
-374
-381
-386
-389
-391
-392
-393
-393
-391
-389
-386
-382
-376
-370
-363
-355
-346
-338
-330
-324
-319
-318
-319
-325
-333
-344
-356
-369
-382
-394
-404
-410
-414
-416
-416
-413
-409
-402
-394
-384
-372
-359
-345
-329
-312
-294
-275
-256
-237
-216
-195
-172
-148
-122
-95
-66
-34
-1
33
67
100
131
160
187
212
235
256
276
294
310
325
340
354
367
381
394
408
424
441
459
477
497
517
539
561
582
603
623
642
660
678
695
713
731
750
769
789
810
832
854
876
897
916
934
951
965
978
990
999
1008
1014
1020
1027
1033
1040
1046
1053
1059
1064
1068
1070
1071
1069
1066
1061
1054
1047
1039
1031
1024
1016
1012
1008
1002
999
994
987
978
968
956
943
930
916
901
887
872
857
842
826
810
795
780
766
753
739
725
710
695
680
665
651
637
624
612
600
588
578
568
559
551
542
534
527
519
513
506
500
494
487
480
471
461
449
435
421
406
392
379
366
355
346
338
333
329
326
324
321
318
315
312
308
305
302
298
293
289
285
282
280
279
279
280
280
281
281
281
281
281
280
281
282
282
283
285
287
290
294
299
303
308
314
321
328
334
339
343
347
349
350
351
351
352
353
355
357
360
364
368
372
375
378
382
384
387
388
388
388
387
387
387
388
389
392
395
398
401
405
410
414
418
421
424
428
431
435
439
444
449
454
460
466
472
478
485
493
501
508
516
522
526
529
530
530
529
529
529
528
527
527
527
527
528
528
528
528
527
525
523
520
516
512
508
503
499
495
492
489
486
484
481
478
475
472
469
465
461
457
453
450
449
448
448
448
448
446
442
437
431
424
416
408
399
391
383
375
367
358
349
340
331
321
312
304
297
290
283
277
272
266
259
251
243
234
223
212
201
190
180
170
162
155
149
141
132
122
112
101
89
78
65
51
36
19
1
-18
-37
-56
-75
-94
-111
-126
-142
-156
-171
-186
-201
-217
-233
-249
-267
-285
-305
-325
-344
-363
-381
-399
-416
-432
-446
-460
-476
-493
-512
-532
-554
-576
-599
-621
-642
-660
-678
-695
-711
-727
-742
-757
-772
-788
-803
-818
-832
-846
-860
-874
-890
-906
-923
-940
-958
-976
-995
-1014
-1031
-1047
-1060
-1072
-1083
-1092
-1101
-1109
-1117
-1124
-1130
-1136
-1141
-1147
-1152
-1157
-1161
-1163
-1165
-1166
-1168
-1171
-1174
-1178
-1182
-1184
-1186
-1187
-1186
-1186
-1186
-1186
-1187
-1189
-1193
-1197
-1201
-1205
-1209
-1212
-1214
-1216
-1215
-1213
-1210
-1207
-1205
-1203
-1203
-1203
-1202
-1201
-1199
-1195
-1190
-1185
-1180
-1175
-1169
-1162
-1155
-1147
-1140
-1132
-1125
-1116
-1107
-1097
-1085
-1073
-1061
-1052
-1045
-1039
-1034
-1029
-1025
-1020
-1014
-1008
-1002
-996
-989
-982
-975
-969
-963
-958
-954
-950
-946
-941
-935
-929
-922
-915
-909
-903
-897
-892
-888
-884
-878
-872
-864
-856
-846
-836
-825
-815
-805
-795
-786
-776
-765
-755
-744
-733
-722
-712
-702
-693
-683
-674
-665
-655
-644
-632
-619
-606
-592
-579
-566
-553
-542
-531
-521
-512
-502
-491
-478
-464
-448
-432
-414
-396
-377
-358
-340
-322
-305
-288
-270
-253
-234
-215
-195
-175
-155
-134
-114
-94
-74
-55
-34
-14
6
26
45
65
84
104
122
140
158
176
194
212
231
250
269
286
303
319
334
349
364
379
393
408
424
442
460
480
500
521
542
563
584
603
622
640
656
672
687
702
716
731
745
759
773
787
801
816
830
845
860
874
888
901
913
925
936
945
954
961
969
975
982
988
995
1000
1004
1010
1012
1016
1018
1020
1020
1020
1020
1020
1022
1022
1026
1030
1035
1040
1047
1056
1065
1076
1087
1099
1109
1119
1127
1134
1138
1141
1141
1139
1135
1130
1122
1113
1103
1093
1083
1073
1064
1055
1047
1038
1029
1018
1008
995
981
967
952
938
924
911
898
886
874
864
854
844
833
821
807
792
775
758
739
718
697
676
656
635
614
593
572
552
533
515
498
482
467
454
441
429
417
406
395
385
373
360
347
334
321
308
295
280
264
248
232
214
195
173
149
123
95
65
35
4
-28
-60
-92
-125
-158
-191
-223
-256
-286
-316
-342
-365
-385
-403
-417
-429
-438
-444
-447
-447
-445
-439
-432
-422
-411
-398
-385
-371
-358
-347
-336
-327
-321
-317
-317
-320
-326
-334
-343
-353
-364
-377
-389
-403
-417
-431
-444
-457
-468
-477
-486
-493
-499
-503
-505
-506
-504
-499
-493
-484
-474
-463
-451
-439
-426
-412
-398
-384
-369
-354
-339
-323
-309
-295
-282
-269
-257
-245
-232
-219
-206
-193
-180
-168
-155
-143
-130
-118
-107
-96
-85
-74
-62
-49
-36
-21
-6
9
24
39
55
71
87
102
117
131
146
160
174
188
202
217
233
250
266
283
299
316
332
349
366
383
399
415
431
446
460
475
489
504
519
533
548
561
574
587
599
610
620
628
636
643
649
653
656
658
659
661
662
664
666
668
671
674
678
682
687
692
698
704
711
718
726
734
741
748
755
761
767
772
777
780
783
785
787
788
787
785
782
779
775
771
766
760
755
748
741
733
726
718
711
705
698
691
684
677
671
665
659
654
650
647
644
642
640
638
636
634
632
629
626
622
618
613
607
599
590
580
568
556
544
530
516
501
485
470
453
436
419
401
382
362
342
322
302
283
266
250
235
221
208
196
184
174
164
155
146
137
128
119
109
99
88
76
64
51
37
23
9
-6
-23
-40
-57
-75
-93
-111
-130
-148
-167
-185
-203
-221
-238
-254
-269
-283
-296
-308
-320
-331
-342
-353
-363
-373
-383
-392
-400
-409
-417
-426
-435
-444
-454
-465
-477
-489
-501
-514
-528
-542
-557
-573
-590
-607
-624
-641
-657
-673
-687
-701
-715
-728
-741
-754
-766
-778
-789
-798
-806
-814
-821
-827
-832
-837
-841
-845
-848
-850
-852
-854
-856
-858
-859
-860
-861
-862
-863
-864
-866
-867
-869
-871
-873
-876
-878
-881
-885
-888
-892
-895
-899
-903
-908
-912
-917
-921
-925
-927
-929
-930
-931
-930
-928
-924
-919
-914
-907
-899
-890
-882
-874
-866
-858
-849
-839
-829
-817
-805
-792
-778
-764
-750
-735
-720
-705
-691
-676
-662
-648
-634
-620
-605
-591
-576
-561
-546
-531
-517
-503
-490
-477
-463
-450
-436
-422
-407
-391
-375
-358
-341
-324
-306
-288
-270
-251
-231
-211
-190
-169
-148
-126
-104
-81
-59
-37
-15
6
27
48
68
87
106
123
141
158
176
193
211
229
248
266
285
303
320
338
356
374
391
409
427
445
463
480
498
515
531
547
561
575
588
600
612
623
632
641
649
657
664
670
677
682
687
691
694
697
700
703
705
708
711
714
716
719
721
723
724
725
726
728
729
729
730
730
730
730
729
727
725
723
720
718
715
712
709
705
701
697
692
687
681
675
668
661
653
645
636
627
618
609
599
590
581
571
561
550
540
529
520
510
501
493
485
477
469
461
452
444
436
429
422
416
410
405
400
394
389
383
377
372
367
362
358
353
350
346
343
341
338
337
336
335
334
333
333
334
334
335
337
338
340
341
342
342
342
342
342
342
342
343
344
344
345
345
346
347
347
348
349
350
351
352
354
356
358
360
363
366
370
373
377
382
386
391
396
402
408
415
422
429
436
444
451
459
466
473
479
485
490
495
499
501
504
505
506
506
506
505
505
503
501
499
497
495
493
492
491
490
489
488
488
488
488
488
488
489
490
491
493
495
497
499
501
503
505
507
509
511
513
514
516
518
520
522
523
524
525
525
525
525
524
524
524
523
523
523
524
524
525
526
527
528
530
533
536
540
544
548
553
558
562
567
571
575
579
582
586
589
592
594
596
597
597
597
596
595
593
591
589
587
584
582
579
576
573
569
565
561
556
551
547
542
538
533
528
524
519
515
511
507
504
500
497
494
491
489
486
482
479
476
472
469
465
461
457
452
448
443
437
431
424
418
410
403
396
389
382
375
368
361
354
347
340
332
325
317
309
300
292
282
272
262
251
241
230
219
208
197
185
173
161
148
135
121
108
94
81
68
54
41
28
14
1
-12
-25
-38
-51
-64
-77
-89
-102
-115
-128
-141
-155
-168
-181
-194
-207
-220
-233
-245
-257
-269
-281
-292
-304
-316
-327
-339
-351
-363
-375
-387
-399
-412
-424
-437
-450
-462
-475
-488
-500
-513
-525
-537
-549
-561
-572
-584
-594
-605
-615
-625
-635
-645
-655
-664
-674
-684
-693
-702
-711
-719
-726
-733
-740
-746
-751
-756
-760
-764
-767
-770
-774
-777
-781
-784
-787
-791
-794
-797
-800
-804
-807
-811
-814
-817
-819
-821
-823
-824
-824
-824
-824
-823
-822
-821
-819
-817
-815
-813
-811
-809
-807
-805
-803
-801
-799
-796
-794
-791
-788
-785
-782
-779
-777
-774
-771
-768
-766
-763
-760
-758
-755
-752
-749
-746
-742
-738
-734
-730
-725
-721
-717
-713
-709
-706
-702
-699
-695
-692
-689
-686
-683
-680
-676
-673
-669
-666
-663
-660
-656
-653
-650
-646
-642
-638
-634
-630
-626
-622
-618
-615
-611
-608
-606
-603
-601
-599
-597
-596
-595
-594
-593
-593
-592
-592
-592
-593
-594
-595
-596
-598
-599
-601
-602
-603
-605
-606
-606
-607
-607
-607
-607
-607
-606
-605
-604
-603
-603
-602
-601
-599
-598
-597
-596
-595
-594
-593
-593
-592
-592
-592
-592
-592
-592
-593
-593
-593
-594
-594
-595
-595
-595
-595
-594
-594
-592
-591
-590
-588
-587
-585
-583
-581
-579
-577
-575
-573
-571
-569
-566
-563
-560
-556
-553
-549
-545
-541
-537
-533
-528
-524
-520
-515
-511
-506
-502
-497
-492
-487
-481
-475
-470
-464
-458
-453
-447
-442
-436
-430
-424
-418
-412
-405
-398
-391
-384
-376
-368
-360
-353
-345
-338
-330
-322
-315
-307
-298
-289
-280
-271
-262
-252
-242
-232
-222
-212
-202
-193
-183
-174
-165
-155
-145
-135
-125
-115
-105
-94
-83
-73
-62
-51
-41
-31
-20
-10
0
10
20
29
38
47
56
64
72
80
88
97
105
114
123
132
141
150
159
168
177
185
194
202
209
217
224
231
237
243
249
254
259
264
270
275
280
286
291
296
301
305
309
314
318
322
325
329
332
335
339
342
345
348
351
354
357
360
363
366
369
373
376
378
381
382
384
385
385
386
386
386
386
386
385
384
383
382
381
380
379
377
375
374
371
369
367
364
361
358
355
351
348
344
341
337
334
331
328
325
322
318
315
311
308
305
301
298
295
291
288
284
280
275
271
266
261
257
252
248
244
240
237
233
229
226
222
218
214
211
207
203
199
195
191
188
184
180
176
173
169
166
163
160
157
154
152
150
148
146
145
143
141
139
137
135
132
130
127
125
122
118
115
111
107
104
100
96
93
90
87
84
81
79
77
75
73
71
70
68
67
66
66
65
64
63
63
62
62
62
62
62
63
64
65
66
67
68
69
71
73
74
76
78
80
82
83
85
86
86
87
87
86
85
84
83
81
80
78
76
75
74
73
72
72
72
72
73
74
75
76
77
79
81
83
86
88
91
93
96
98
101
104
107
111
114
118
121
125
129
133
136
139
142
145
148
150
151
153
154
155
156
157
157
159
160
161
163
165
166
168
170
172
174
177
179
182
185
187
190
193
195
198
202
205
209
213
217
222
227
231
236
241
247
252
258
264
270
276
282
287
293
299
304
309
314
319
324
328
332
336
340
344
347
351
355
358
362
365
368
371
374
378
381
384
387
390
393
396
399
403
407
411
416
421
426
432
437
443
449
454
460
466
471
476
481
486
490
493
497
499
502
504
506
507
509
511
513
515
517
519
521
523
525
527
528
530
531
533
535
536
538
541
543
546
549
551
554
557
559
562
564
566
567
568
569
570
570
571
571
571
571
571
570
569
568
566
564
561
559
556
554
551
548
545
542
539
535
532
529
526
523
520
517
513
509
505
501
497
492
488
484
480
475
471
467
463
459
454
450
445
440
435
430
425
420
414
409
404
398
393
388
383
378
373
368
362
357
352
346
340
335
328
322
315
308
301
293
286
278
270
261
252
244
235
226
217
209
200
192
183
175
167
158
150
142
134
126
118
111
103
95
88
80
72
64
57
49
41
33
24
16
8
-1
-9
-18
-26
-34
-43
-51
-60
-68
-77
-85
-93
-101
-109
-116
-124
-131
-137
-144
-150
-157
-163
-168
-174
-179
-184
-188
-193
-197
-202
-207
-211
-216
-222
-227
-232
-238
-243
-249
-255
-260
-266
-271
-277
-282
-287
-293
-298
-302
-307
-311
-314
-317
-320
-323
-326
-328
-331
-333
-336
-338
-340
-343
-345
-347
-349
-351
-353
-355
-357
-359
-361
-363
-366
-368
-370
-373
-375
-377
-379
-381
-382
-383
-384
-385
-385
-386
-386
-387
-387
-387
-387
-387
-386
-386
-386
-386
-385
-385
-385
-385
-385
-385
-386
-386
-387
-387
-388
-388
-389
-390
-390
-391
-391
-391
-391
-391
-390
-389
-388
-386
-385
-382
-380
-377
-374
-371
-367
-363
-360
-355
-351
-347
-342
-338
-333
-329
-325
-321
-317
-314
-310
-307
-303
-300
-297
-294
-291
-289
-286
-284
-282
-280
-278
-276
-274
-272
-269
-267
-265
-262
-260
-257
-254
-252
-249
-246
-244
-241
-237
-234
-231
-228
-225
-222
-218
-215
-211
-207
-203
-199
-194
-190
-185
-180
-175
-170
-164
-160
-155
-150
-146
-142
-138
-134
-130
-126
-122
-118
-115
-111
-107
-103
-99
-95
-91
-87
-83
-79
-75
-71
-66
-61
-57
-52
-46
-41
-36
-30
-24
-18
-12
-6
0
6
12
17
23
28
33
39
44
49
54
60
65
70
76
81
86
92
97
102
107
112
117
121
126
130
135
139
143
148
152
157
161
165
170
174
178
182
186
190
194
198
202
206
210
214
218
222
225
229
231
234
236
238
240
241
242
243
244
245
246
247
248
249
249
250
250
251
251
250
250
249
248
247
246
244
242
240
238
236
234
232
230
228
225
223
220
217
213
210
207
204
201
197
194
190
186
182
178
173
169
163
158
152
146
140
134
128
122
116
110
103
97
91
84
77
70
64
57
50
44
37
31
24
18
12
6
1
-4
-9
-14
-19
-24
-29
-33
-38
-42
-47
-51
-56
-60
-65
-69
-74
-78
-83
-87
-92
-97
-101
-106
-110
-114
-119
-123
-127
-130
-134
-138
-142
-145
-149
-153
-158
-162
-166
-170
-173
-177
-181
-185
-189
-192
-195
-198
-201
-203
-205
-207
-209
-211
-212
-214
-216
-218
-220
-223
-225
-227
-229
-231
-233
-235
-236
-238
-239
-240
-241
-242
-242
-243
-244
-244
-244
-245
-245
-246
-246
-246
-246
-246
-246
-245
-244
-243
-241
-239
-237
-235
-233
-231
-228
-225
-222
-219
-216
-213
-209
-205
-201
-197
-193
-188
-184
-179
-174
-169
-163
-158
-153
-147
-142
-136
-131
-126
-120
-115
-110
-105
-99
-94
-89
-84
-78
-73
-67
-62
-56
-50
-44
-37
-31
-24
-18
-11
-4
3
10
17
24
31
39
46
53
61
68
75
82
89
96
103
110
116
123
130
137
143
150
157
164
170
177
183
189
195
202
208
214
220
226
233
239
245
251
258
264
270
276
282
287
293
298
303
307
311
315
319
322
325
328
331
334
336
338
340
342
344
346
347
349
350
352
353
354
356
357
358
360
361
362
363
364
365
366
367
367
368
368
368
368
368
368
367
367
366
365
364
362
361
359
356
354
351
349
346
342
339
336
332
329
325
321
317
313
309
305
301
296
292
288
283
279
274
270
265
261
256
251
246
242
237
232
228
223
218
213
207
202
196
190
184
177
171
164
157
151
144
137
130
123
117
110
104
97
91
85
79
73
67
62
56
50
45
39
34
28
23
18
12
7
2
-3
-8
-14
-19
-24
-29
-34
-39
-44
-48
-53
-57
-62
-66
-69
-73
-77
-80
-84
-87
-90
-94
-97
-100
-103
-107
-110
-113
-117
-120
-124
-127
-130
-134
-137
-140
-144
-148
-151
-155
-159
-163
-167
-171
-175
-178
-182
-185
-188
-191
-194
-196
-199
-202
-204
-206
-209
-211
-213
-215
-217
-219
-221
-222
-223
-224
-225
-226
-226
-227
-227
-227
-227
-227
-227
-227
-227
-227
-226
-226
-226
-226
-225
-225
-225
-224
-224
-223
-222
-221
-220
-219
-217
-215
-213
-211
-208
-206
-203
-199
-195
-191
-187
-183
-178
-174
-169
-165
-160
-155
-150
-146
-141
-136
-131
-126
-120
-115
-110
-105
-100
-95
-89
-84
-79
-73
-68
-62
-57
-51
-46
-40
-34
-29
-23
-17
-12
-6
0
6
12
18
25
31
37
44
50
56
63
69
76
82
89
95
102
108
115
121
128
135
142
149
157
165
172
180
188
196
204
212
220
228
237
245
253
262
270
278
286
294
302
309
317
324
330
337
343
349
355
360
365
370
374
379
383
388
392
396
400
405
409
413
417
421
426
430
434
438
443
447
451
455
459
463
468
472
475
479
483
487
490
494
497
501
504
507
510
514
516
519
522
524
527
528
530
532
533
534
535
535
536
536
536
535
534
534
533
532
530
529
528
526
525
523
522
520
519
517
516
514
512
511
509
507
504
502
500
497
494
492
489
486
483
481
478
475
472
468
465
461
457
453
449
445
440
436
431
426
422
417
412
406
401
396
390
385
380
374
369
363
358
353
347
342
336
331
326
320
315
310
305
301
296
291
287
282
278
274
270
265
261
257
253
249
245
241
237
233
229
224
219
215
210
205
200
194
189
183
178
172
166
161
155
149
143
137
132
126
121
115
110
105
99
94
89
84
79
74
68
63
58
53
49
44
39
34
29
24
19
14
9
4
-1
-7
-12
-18
-24
-30
-36
-42
-48
-54
-61
-67
-73
-80
-86
-92
-97
-103
-109
-114
-119
-124
-128
-132
-136
-139
-143
-145
-148
-151
-153
-155
-157
-159
-161
-163
-165
-167
-169
-171
-174
-176
-179
-182
-185
-188
-192
-195
-199
-203
-207
-212
-216
-221
-226
-230
-235
-239
-243
-247
-250
-253
-256
-259
-261
-263
-265
-267
-268
-269
-270
-271
-271
-272
-272
-273
-273
-273
-273
-272
-272
-272
-271
-271
-270
-270
-269
-268
-268
-267
-266
-265
-264
-263
-262
-260
-259
-257
-256
-254
-253
-251
-250
-248
-246
-245
-243
-241
-239
-238
-236
-234
-232
-230
-228
-227
-225
-222
-220
-218
-215
-212
-209
-206
-203
-199
-195
-191
-187
-182
-178
-173
-169
-164
-160
-156
-152
-148
-144
-140
-137
-133
-130
-127
-124
-122
-119
-117
-114
-111
-109
-106
-104
-101
-98
-95
-92
-88
-84
-80
-75
-70
-65
-60
-54
-47
-41
-34
-28
-21
-15
-9
-3
3
9
14
19
25
30
34
39
43
47
51
55
59
63
66
69
72
75
78
81
84
87
89
92
95
99
102
105
108
111
115
118
121
124
127
130
132
135
137
139
141
143
145
147
148
150
151
152
153
155
156
157
158
159
159
160
161
161
161
162
161
161
161
160
160
159
158
157
156
155
154
153
152
151
149
148
147
146
145
144
144
143
143
143
143
143
144
144
145
146
147
148
148
149
150
150
150
150
150
150
149
148
147
145
144
142
140
138
136
134
132
129
127
125
122
120
118
116
114
112
111
109
108
106
105
104
103
103
102
102
102
102
102
102
102
101
101
101
100
100
99
98
97
96
95
94
93
91
89
87
85
82
80
77
74
71
68
65
62
59
57
54
51
49
47
44
42
40
38
36
34
32
30
28
25
23
21
19
17
15
13
11
9
6
4
1
-1
-4
-7
-11
-14
-18
-21
-25
-29
-33
-38
-42
-46
-50
-54
-59
-63
-68
-72
-77
-81
-85
-90
-94
-98
-102
-106
-110
-114
-118
-121
-125
-128
-132
-135
-139
-142
-145
-148
-151
-154
-158
-161
-164
-167
-171
-174
-178
-182
-185
-189
-193
-197
-201
-205
-210
-214
-219
-224
-228
-233
-238
-243
-247
-252
-257
-262
-266
-271
-276
-280
-285
-289
-293
-298
-301
-305
-309
-312
-316
-319
-322
-325
-328
-331
-334
-337
-340
-343
-346
-349
-352
-354
-357
-360
-363
-365
-368
-370
-372
-374
-376
-377
-379
-380
-382
-383
-384
-386
-387
-389
-390
-392
-393
-394
-395
-396
-397
-397
-397
-397
-397
-397
-396
-395
-394
-392
-391
-389
-387
-385
-383
-380
-378
-376
-374
-371
-369
-367
-364
-362
-359
-356
-354
-351
-348
-345
-342
-339
-336
-333
-330
-327
-324
-320
-317
-313
-309
-305
-301
-296
-291
-286
-280
-274
-268
-262
-255
-248
-241
-234
-227
-220
-212
-205
-198
-190
-183
-176
-168
-161
-154
-147
-140
-133
-127
-120
-114
-108
-101
-95
-88
-82
-76
-69
-63
-57
-51
-45
-39
-32
-26
-20
-13
-7
0
7
14
22
29
37
44
52
60
68
75
83
91
99
107
114
122
129
137
144
151
158
164
171
177
184
190
196
202
208
213
219
224
230
235
240
244
249
254
259
263
268
273
277
282
287
292
297
303
308
314
319
325
331
336
342
348
354
360
366
372
378
384
389
395
401
406
411
417
421
426
431
435
439
442
446
449
452
454
457
459
462
464
466
468
470
471
473
474
476
478
479
481
483
484
486
488
490
492
494
495
497
499
500
502
503
504
505
506
507
508
508
509
509
509
509
508
507
505
503
501
498
495
492
488
484
480
476
471
467
462
458
453
449
444
440
436
432
428
424
421
417
414
411
407
404
401
398
395
391
388
385
381
378
374
371
367
364
360
356
352
347
343
338
333
327
322
317
311
305
300
294
288
282
276
270
264
258
252
246
241
235
229
223
218
212
206
201
195
189
183
177
172
166
160
154
148
143
137
131
126
120
115
109
104
99
93
88
82
76
71
65
59
54
49
43
38
33
28
23
18
13
9
4
0
-4
-7
-11
-14
-18
-21
-24
-27
-29
-32
-34
-37
-39
-41
-43
-46
-48
-50
-52
-54
-57
-59
-61
-63
-65
-67
-69
-72
-74
-76
-79
-81
-83
-86
-88
-90
-92
-95
-97
-99
-100
-102
-104
-106
-107
-109
-110
-112
-113
-115
-117
-118
-120
-122
-124
-126
-128
-129
-131
-133
-134
-136
-138
-139
-141
-142
-144
-145
-146
-147
-148
-149
-149
-150
-151
-151
-152
-152
-153
-153
-154
-154
-154
-154
-155
-155
-155
-155
-155
-155
-156
-156
-156
-156
-157
-157
-158
-159
-160
-161
-162
-163
-164
-164
-165
-166
-166
-166
-167
-167
-168
-168
-169
-169
-169
-170
-170
-171
-171
-172
-173
-173
-174
-175
-175
-176
-176
-177
-177
-178
-178
-179
-179
-179
-179
-180
-180
-180
-180
-180
-179
-179
-179
-179
-178
-178
-177
-177
-177
-177
-176
-176
-176
-176
-176
-176
-176
-176
-175
-175
-174
-174
-173
-172
-172
-171
-170
-170
-169
-168
-167
-166
-165
-164
-163
-162
-160
-158
-157
-155
-153
-151
-149
-147
-146
-144
-143
-141
-140
-139
-138
-137
-136
-135
-134
-133
-133
-132
-131
-129
-128
-126
-125
-123
-121
-119
-117
-115
-113
-111
-109
-107
-105
-103
-101
-99
-97
-95
-93
-91
-90
-88
-86
-85
-83
-82
-81
-79
-78
-76
-75
-74
-73
-72
-71
-70
-69
-68
-66
-65
-64
-63
-61
-60
-59
-57
-55
-54
-52
-49
-47
-44
-42
-39
-37
-35
-32
-30
-27
-25
-22
-18
-15
-12
-9
-5
-2
1
4
7
9
12
15
17
20
22
24
26
28
31
33
36
38
41
44
47
50
53
57
60
63
66
69
72
76
79
83
86
90
93
97
101
105
109
113
116
120
125
129
133
138
143
147
152
156
161
166
170
175
179
184
189
193
198
203
207
212
216
221
225
229
233
238
242
246
250
255
259
263
267
271
274
278
282
286
289
292
295
299
302
304
307
310
312
315
317
320
322
325
327
329
332
334
336
338
340
341
343
345
347
348
350
351
353
354
356
357
358
360
361
363
364
366
367
369
370
372
373
375
376
377
379
380
381
382
384
385
386
387
388
389
390
391
392
393
394
395
395
396
396
396
397
397
397
397
397
397
397
397
397
397
396
396
396
396
396
396
396
395
395
395
394
394
393
393
392
392
391
391
390
390
390
389
389
388
387
386
385
384
382
381
379
377
376
374
373
371
369
368
366
364
362
361
358
356
354
352
349
346
344
341
338
335
332
329
326
323
320
317
314
311
308
304
301
297
293
289
285
280
276
272
267
263
258
254
250
245
241
237
232
228
223
219
215
210
206
201
196
192
187
183
178
173
168
163
158
152
147
141
135
129
123
118
112
106
101
95
89
84
78
73
67
62
57
51
46
41
36
31
26
22
17
12
8
3
-1
-6
-10
-15
-19
-24
-29
-34
-39
-44
-49
-54
-59
-64
-69
-73
-78
-82
-86
-90
-94
-98
-102
-106
-109
-113
-116
-119
-123
-126
-128
-131
-134
-136
-139
-141
-143
-145
-148
-150
-152
-154
-157
-159
-162
-164
-166
-168
-170
-172
-174
-176
-178
-180
-181
-183
-184
-185
-187
-188
-189
-190
-191
-192
-193
-193
-194
-194
-195
-195
-196
-196
-197
-197
-198
-198
-199
-199
-200
-200
-201
-202
-203
-204
-205
-206
-207
-208
-209
-209
-210
-211
-211
-212
-213
-214
-214
-215
-215
-215
-216
-216
-215
-215
-215
-215
-215
-214
-214
-214
-214
-215
-215
-215
-216
-216
-217
-217
-218
-218
-218
-218
-218
-218
-218
-218
-218
-217
-217
-217
-217
-216
-216
-216
-216
-216
-216
-216
-217
-217
-217
-217
-218
-218
-219
-219
-220
-220
-221
-221
-221
-221
-222
-222
-222
-222
-222
-222
-222
-222
-222
-222
-222
-222
-222
-221
-221
-221
-220
-220
-219
-218
-218
-217
-216
-216
-215
-215
-215
-215
-215
-215
-215
-215
-215
-215
-215
-215
-215
-214
-214
-214
-213
-213
-212
-211
-210
-209
-208
-207
-205
-204
-202
-200
-198
-196
-194
-192
-190
-188
-186
-184
-182
-179
-177
-175
-172
-169
-167
-164
-162
-160
-157
-155
-153
-151
-149
-147
-145
-143
-141
-139
-137
-135
-132
-130
-127
-125
-122
-119
-116
-113
-110
-107
-104
-101
-98
-95
-92
-88
-85
-82
-79
-76
-73
-70
-67
-64
-62
-59
-56
-53
-51
-48
-45
-42
-39
-37
-34
-32
-30
-27
-25
-22
-20
-17
-15
-12
-10
-7
-5
-2
0
2
5
7
9
11
13
15
17
19
21
23
25
27
29
31
33
36
38
40
42
44
47
49
51
53
55
57
59
61
62
64
66
67
69
70
71
73
74
75
77
78
79
81
82
84
85
87
88
90
92
94
96
98
101
103
105
107
109
112
114
116
119
121
123
125
127
129
131
133
134
136
137
138
140
141
142
143
144
145
145
146
146
147
147
148
148
149
150
151
152
152
153
154
155
156
157
158
159
161
162
164
165
167
168
170
171
172
173
175
175
176
177
177
177
177
177
177
177
177
177
176
176
176
176
175
175
174
174
174
173
173
172
172
172
171
171
171
171
171
171
171
171
171
172
172
173
173
174
174
175
175
176
176
176
176
177
177
177
176
176
176
176
175
174
174
173
172
171
170
169
168
167
167
166
165
164
163
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
143
142
141
140
139
137
136
134
133
132
130
129
128
126
125
123
121
119
117
115
113
111
109
107
105
103
101
99
98
96
94
92
90
88
86
85
83
82
80
79
78
77
75
74
73
72
71
70
69
68
67
66
64
63
62
61
59
58
56
55
53
51
49
48
46
44
42
40
38
36
34
32
30
28
26
24
23
22
20
19
18
18
17
16
15
15
14
14
13
13
12
12
12
12
12
11
11
11
10
10
9
8
8
7
7
6
6
6
5
5
5
5
4
4
4
4
5
5
5
6
7
7
8
10
11
12
14
15
17
19
20
22
23
25
26
28
29
31
32
34
35
37
38
40
41
43
44
45
46
48
49
50
51
52
53
54
54
55
56
57
58
58
59
60
61
62
63
65
66
67
68
69
70
71
72
73
74
75
76
77
78
80
81
82
83
84
85
86
88
89
90
91
92
93
94
95
96
97
99
100
101
102
103
104
105
105
106
107
108
108
109
109
110
111
111
112
113
114
115
115
116
117
118
119
120
121
122
123
124
125
125
126
127
127
128
128
129
129
130
130
131
131
131
131
131
131
131
131
131
131
130
130
129
129
129
128
128
128
128
128
128
128
128
129
129
130
130
131
132
132
133
133
134
135
135
136
136
136
136
137
137
137
137
137
137
137
137
137
136
136
136
135
135
134
134
133
132
132
131
131
130
130
129
129
128
128
128
127
127
126
126
126
125
125
125
125
124
124
124
123
123
123
122
122
122
121
121
120
120
119
119
118
118
117
116
116
115
114
113
113
112
111
110
110
109
108
108
107
107
106
106
106
106
106
106
106
107
107
108
108
109
110
110
111
112
112
113
114
115
115
116
117
118
119
119
120
121
122
123
123
124
124
125
125
125
125
125
125
125
125
125
125
125
125
125
125
126
126
126
127
127
128
128
129
130
130
131
132
132
133
133
134
134
134
135
135
135
135
135
135
135
135
135
135
136
136
136
136
136
137
137
137
138
138
138
139
139
139
140
140
141
142
142
143
143
144
145
145
146
147
147
148
149
149
149
150
150
151
152
152
153
154
155
156
157
158
159
160
161
162
163
164
164
165
166
167
168
169
170
171
172
173
175
176
177
179
180
182
183
184
185
186
187
188
188
189
189
190
190
191
191
192
192
193
193
194
194
195
195
196
196
197
197
197
198
198
199
199
200
200
201
202
202
203
204
204
205
205
206
206
207
207
207
207
207
207
206
206
205
205
204
203
203
202
201
200
199
198
197
196
196
195
194
193
192
192
191
190
189
188
187
185
184
183
182
180
179
178
177
175
174
173
171
170
168
166
165
163
161
159
156
154
152
149
147
144
142
139
137
134
132
129
126
123
121
118
115
112
108
105
102
99
95
92
89
85
82
78
75
71
68
64
60
57
53
49
46
42
38
35
31
27
23
19
15
10
6
1
-3
-8
-13
-18
-23
-28
-33
-39
-44
-50
-55
-61
-66
-72
-77
-83
-88
-93
-99
-104
-109
-114
-119
-124
-129
-134
-139
-144
-148
-153
-158
-163
-168
-173
-177
-182
-187
-192
-197
-201
-206
-211
-216
-222
-227
-232
-237
-243
-248
-253
-258
-263
-268
-273
-278
-283
-288
-293
-298
-303
-308
-313
-317
-322
-327
-332
-337
-342
-346
-351
-355
-359
-363
-367
-371
-375
-379
-382
-386
-390
-393
-397
-400
-403
-407
-410
-413
-416
-419
-422
-424
-427
-429
-432
-434
-436
-437
-439
-441
-442
-444
-445
-447
-448
-449
-450
-451
-452
-453
-453
-454
-454
-454
-454
-454
-454
-454
-454
-453
-453
-452
-451
-450
-449
-448
-447
-446
-445
-443
-442
-441
-439
-438
-436
-434
-432
-430
-428
-426
-424
-421
-419
-416
-413
-410
-407
-404
-400
-397
-394
-390
-387
-383
-380
-376
-373
-369
-365
-361
-357
-353
-349
-345
-341
-336
-332
-327
-323
-318
-313
-309
-304
-299
-293
-288
-283
-277
-271
-266
-260
-254
-248
-242
-237
-231
-225
-219
-213
-208
-202
-196
-191
-185
-180
-174
-169
-164
-158
-153
-147
-142
-136
-131
-125
-119
-113
-108
-102
-96
-90
-85
-79
-73
-67
-62
-56
-50
-45
-39
-33
-28
-22
-16
-10
-5
1
7
13
20
26
32
38
44
50
55
61
67
72
78
84
89
95
100
106
111
117
122
127
132
137
143
148
153
158
163
168
173
178
183
189
194
198
203
208
213
218
222
227
231
235
240
244
248
252
256
260
264
268
272
276
280
283
287
290
293
296
299
302
305
308
311
314
316
319
321
324
326
328
330
332
333
335
336
338
339
341
342
343
345
346
347
348
349
349
350
350
350
350
350
350
349
349
348
347
346
345
344
343
342
341
340
339
337
336
334
333
331
330
328
326
325
323
321
319
317
315
313
311
309
307
304
302
299
297
294
292
289
287
284
281
279
276
273
270
268
265
262
259
256
253
250
247
244
241
238
235
232
228
225
221
218
214
210
206
202
198
194
190
186
182
178
174
170
166
161
157
153
149
144
140
136
132
127
123
119
115
111
107
102
98
94
90
86
82
78
74
70
66
62
58
55
51
47
43
39
35
31
28
24
21
17
14
10
7
3
0
-4
-7
-11
-15
-18
-22
-26
-29
-33
-36
-40
-43
-46
-49
-52
-55
-58
-61
-63
-66
-68
-70
-72
-74
-77
-79
-81
-83
-84
-86
-88
-90
-91
-93
-95
-96
-98
-99
-100
-102
-103
-104
-105
-107
-108
-109
-110
-111
-112
-113
-114
-115
-116
-117
-118
-119
-120
-120
-121
-122
-123
-123
-124
-124
-124
-124
-125
-125
-125
-125
-124
-124
-124
-124
-123
-123
-123
-122
-122
-122
-121
-121
-121
-120
-120
-120
-119
-119
-119
-118
-118
-117
-117
-116
-115
-114
-113
-112
-111
-110
-109
-108
-107
-105
-104
-103
-102
-100
-99
-98
-97
-95
-94
-92
-91
-89
-88
-86
-84
-82
-81
-79
-77
-75
-73
-71
-68
-66
-64
-61
-59
-56
-53
-50
-47
-44
-41
-38
-34
-31
-28
-24
-21
-17
-14
-10
-7
-3
0
4
8
11
15
18
22
25
29
32
36
39
42
45
49
52
55
58
61
65
68
71
74
77
81
84
87
91
94
98
102
105
109
113
117
121
125
129
133
137
141
145
149
153
157
161
164
168
172
176
179
183
187
190
194
197
201
204
207
211
214
217
221
224
227
230
233
236
239
242
245
248
251
253
256
259
262
265
267
270
272
275
278
280
283
285
288
290
293
296
298
301
303
306
308
311
313
316
318
320
322
324
325
327
329
330
331
332
334
335
335
336
337
337
338
338
339
339
339
340
340
340
340
340
340
340
340
340
340
340
340
340
339
339
339
339
339
338
338
338
337
337
337
336
335
335
334
333
332
331
330
328
326
325
322
320
318
316
313
310
308
305
302
299
296
293
290
287
284
281
277
274
270
267
263
260
256
253
249
246
243
239
236
232
229
225
222
218
215
211
207
204
200
197
193
189
186
182
178
174
170
166
162
158
154
149
145
141
136
132
127
122
118
113
109
104
100
95
91
86
82
78
74
69
65
62
58
54
50
47
43
40
36
32
28
24
20
16
12
8
4
0
-5
-9
-13
-17
-21
-26
-30
-34
-38
-43
-47
-51
-55
-59
-63
-67
-71
-75
-79
-82
-86
-89
-93
-96
-99
-102
-106
-109
-112
-115
-118
-121
-124
-127
-129
-132
-135
-138
-141
-144
-147
-150
-153
-156
-159
-162
-164
-167
-170
-172
-174
-177
-179
-181
-183
-185
-187
-188
-190
-192
-194
-196
-197
-199
-201
-202
-204
-205
-207
-208
-210
-211
-212
-213
-214
-214
-215
-216
-217
-217
-218
-219
-219
-220
-220
-221
-221
-221
-222
-222
-222
-223
-223
-223
-223
-223
-223
-223
-223
-223
-223
-223
-222
-222
-221
-221
-220
-220
-219
-218
-217
-216
-215
-213
-212
-210
-209
-207
-205
-203
-201
-199
-197
-195
-193
-191
-188
-186
-184
-182
-179
-177
-175
-173
-171
-168
-166
-164
-161
-159
-156
-154
-151
-149
-146
-143
-140
-137
-134
-131
-128
-125
-121
-118
-114
-111
-107
-104
-100
-97
-93
-89
-86
-82
-78
-74
-70
-67
-63
-59
-55
-51
-47
-44
-40
-36
-32
-28
-25
-21
-17
-14
-10
-7
-4
0
3
7
10
13
17
20
23
27
30
33
37
40
44
47
51
55
58
62
65
69
72
75
79
82
85
88
91
94
97
100
103
106
108
111
114
116
119
121
123
126
128
130
132
133
135
137
139
140
142
143
145
146
148
150
151
153
154
156
157
159
160
162
163
164
165
166
167
167
168
169
169
170
170
171
171
172
172
173
173
173
174
174
174
175
175
175
176
176
177
177
178
178
178
179
179
179
178
178
178
177
177
176
176
175
174
173
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
152
151
150
148
147
146
145
144
142
141
139
138
137
135
133
132
130
128
127
125
123
122
120
118
116
115
113
111
110
108
107
105
104
102
101
99
98
97
95
94
93
92
90
89
88
86
85
84
82
81
79
78
77
75
74
73
71
70
69
68
67
66
66
65
64
64
63
62
62
61
60
60
59
59
58
57
57
56
56
55
55
55
54
54
53
53
53
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
53
53
53
53
53
54
54
54
54
54
55
55
55
56
56
57
58
58
59
59
60
60
61
62
63
63
64
65
66
66
67
68
68
69
70
71
71
72
73
74
74
75
76
77
77
78
79
80
80
81
82
83
84
85
86
87
89
90
91
92
94
95
97
98
100
101
103
104
106
107
108
110
111
112
113
114
115
116
117
118
119
120
121
122
123
123
124
125
126
127
128
129
131
132
133
134
135
136
137
138
140
141
142
143
145
146
147
149
150
151
153
154
156
157
159
160
161
163
164
166
167
168
170
171
172
174
175
176
177
178
179
180
181
182
183
184
185
185
186
187
187
188
189
189
190
190
191
192
193
193
194
195
195
196
197
197
198
198
199
200
200
200
201
201
201
201
202
202
202
202
201
201
201
200
199
199
198
197
196
195
194
193
191
190
189
188
187
185
184
183
182
181
179
178
177
175
174
173
171
170
168
167
165
164
162
160
159
157
156
154
153
151
150
148
146
145
143
141
139
137
136
134
132
130
128
126
124
122
120
117
115
113
111
108
106
104
101
99
96
94
92
89
87
84
82
80
77
75
73
71
69
66
64
62
60
58
56
54
51
49
47
45
43
40
38
36
33
31
29
26
24
21
19
16
14
11
8
6
3
1
-2
-4
-7
-9
-12
-14
-16
-18
-20
-22
-24
-26
-28
-30
-31
-33
-35
-36
-38
-39
-40
-42
-43
-44
-45
-46
-47
-48
-49
-51
-52
-53
-54
-55
-57
-58
-59
-61
-62
-63
-65
-66
-68
-69
-71
-72
-74
-75
-77
-78
-80
-81
-82
-83
-85
-86
-87
-88
-88
-89
-90
-90
-91
-91
-92
-92
-93
-93
-93
-94
-94
-95
-95
-95
-96
-96
-97
-97
-98
-98
-99
-99
-100
-100
-101
-101
-101
-102
-102
-102
-102
-102
-102
-102
-102
-102
-102
-102
-101
-101
-100
-100
-99
-99
-98
-97
-96
-95
-94
-93
-92
-91
-90
-89
-88
-87
-86
-85
-84
-83
-82
-81
-80
-79
-78
-78
-77
-76
-75
-74
-74
-73
-72
-71
-70
-69
-68
-67
-66
-65
-64
-63
-61
-60
-59
-58
-57
-55
-54
-53
-52
-50
-49
-48
-47
-46
-44
-43
-42
-40
-39
-38
-36
-35
-33
-32
-30
-29
-27
-25
-24
-22
-21
-19
-18
-16
-14
-13
-11
-10
-9
-7
-6
-5
-4
-3
-2
-1
0
1
1
2
3
3
4
5
5
6
7
8
8
9
10
11
12
13
14
14
15
16
17
18
19
19
20
21
22
22
23
24
24
25
25
26
26
26
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
26
26
26
26
26
26
26
26
26
26
26
26
26
25
25
25
25
25
25
25
25
25
26
26
26
26
26
26
26
27
27
27
27
27
27
27
27
28
28
28
29
29
29
30
30
30
31
31
31
32
32
32
33
33
33
33
34
34
34
34
34
35
35
35
35
35
36
36
36
36
36
36
36
36
36
36
36
37
37
37
37
37
38
38
38
38
38
39
39
39
39
39
39
39
39
39
38
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
24
24
24
24
23
23
23
22
22
21
21
20
19
19
18
17
17
16
15
14
13
13
12
11
11
10
10
10
9
9
9
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
8
8
8
8
8
9
9
9
9
10
10
11
11
11
12
12
12
13
13
14
14
15
15
16
17
18
18
19
20
21
22
23
24
24
25
26
27
28
29
30
30
31
32
33
34
35
36
37
38
39
40
41
42
43
45
46
47
48
50
51
53
54
55
57
58
60
62
63
65
66
68
70
71
73
74
76
78
79
81
82
84
85
87
88
90
91
92
94
95
96
98
99
100
102
103
104
105
107
108
109
110
112
113
114
115
117
118
119
121
122
123
125
126
127
128
129
131
132
133
134
135
136
137
138
139
139
140
141
142
142
143
143
144
144
145
145
145
145
146
146
146
146
146
146
146
145
145
145
145
144
144
144
143
143
142
142
141
141
140
140
140
139
139
138
138
137
137
136
136
135
135
135
134
134
133
133
132
132
131
130
130
129
129
128
127
126
125
124
123
122
121
120
119
118
116
115
114
113
111
110
109
107
106
104
103
102
100
99
97
95
94
92
91
89
88
86
84
83
81
80
78
76
75
73
72
70
69
67
66
64
63
61
60
59
57
56
54
53
52
50
49
48
46
45
44
42
41
40
38
37
35
34
33
31
30
28
27
25
24
23
21
20
18
17
16
15
14
13
12
11
10
9
8
8
7
6
6
5
5
4
3
3
2
1
1
0
-1
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-22
-23
-24
-24
-25
-26
-26
-27
-27
-27
-27
-28
-28
-28
-28
-28
-28
-28
-28
-27
-27
-27
-27
-27
-27
-27
-27
-26
-26
-26
-26
-25
-25
-25
-24
-24
-23
-23
-22
-21
-21
-20
-19
-18
-17
-16
-15
-14
-13
-12
-10
-9
-8
-7
-5
-4
-3
-1
0
2
3
5
7
8
10
12
14
16
18
20
22
24
26
28
31
33
35
38
40
43
46
48
51
54
57
60
63
65
68
71
74
77
80
82
85
88
90
93
96
98
101
103
106
108
111
113
115
118
120
122
124
126
128
131
133
135
137
139
141
143
145
147
149
151
153
155
157
159
161
163
165
166
168
170
172
173
175
176
178
179
181
182
184
185
186
188
189
190
192
193
194
195
196
198
199
200
201
202
203
204
205
205
206
207
207
208
208
209
209
210
210
210
210
210
211
211
211
210
210
210
210
209
209
209
208
208
207
207
207
206
206
206
205
205
204
204
204
203
203
202
202
201
201
200
200
199
199
198
198
198
197
197
196
196
195
194
194
193
193
192
191
190
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
172
171
170
169
167
166
165
163
162
161
159
158
156
155
153
152
150
149
147
145
144
142
140
139
137
135
134
132
130
129
127
125
124
122
120
118
117
115
113
111
109
108
106
104
102
101
99
97
95
93
92
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
39
37
35
33
31
29
28
26
24
22
21
19
17
15
14
12
10
9
7
5
4
2
1
-1
-2
-3
-5
-6
-7
-9
-10
-11
-12
-14
-15
-16
-17
-18
-20
-21
-22
-23
-24
-25
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-36
-37
-38
-38
-39
-40
-40
-41
-41
-41
-41
-41
-41
-41
-41
-41
-41
-41
-41
-40
-40
-40
-39
-39
-39
-38
-38
-37
-37
-37
-36
-36
-36
-35
-35
-34
-34
-33
-33
-32
-32
-31
-31
-30
-30
-29
-29
-28
-28
-27
-26
-26
-25
-24
-24
-23
-22
-21
-21
-20
-19
-18
-17
-16
-16
-15
-14
-13
-12
-12
-11
-10
-10
-9
-8
-8
-7
-7
-7
-6
-6
-5
-5
-5
-5
-4
-4
-3
-3
-2
-2
-1
-1
0
0
1
2
2
3
4
4
5
6
6
7
8
8
9
10
10
11
11
12
12
13
13
13
14
14
14
14
14
14
13
13
13
12
12
12
11
11
11
10
10
10
10
9
9
9
9
9
8
8
8
8
7
7
7
7
7
6
6
6
6
5
5
5
4
4
4
4
3
3
2
2
1
1
0
0
-1
-1
-2
-2
-3
-3
-4
-4
-5
-5
-6
-6
-7
-7
-7
-8
-8
-8
-9
-9
-9
-10
-10
-10
-10
-10
-10
-11
-11
-11
-11
-11
-11
-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
-10
-10
-10
-10
-10
-10
-11
-11
-11
-11
-12
-12
-12
-13
-13
-13
-13
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-13
-13
-13
-12
-12
-12
-11
-11
-11
-10
-10
-9
-9
-8
-7
-7
-6
-5
-5
-4
-3
-2
-1
0
1
1
2
3
4
5
6
7
8
9
11
12
13
14
15
16
17
18
18
19
20
21
22
23
24
25
26
27
28
29
31
32
33
34
35
36
37
38
40
41
42
43
44
45
47
48
49
50
52
53
54
55
56
57
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
84
85
86
87
87
88
89
90
91
91
92
93
94
95
96
97
98
98
99
100
101
102
103
104
105
106
107
107
108
109
110
110
111
111
112
112
113
113
114
114
115
115
116
116
117
117
118
118
119
119
120
120
120
121
121
122
122
123
123
124
124
124
125
125
125
126
126
126
126
126
127
127
127
127
128
128
129
129
130
130
131
131
132
132
133
133
134
135
135
136
136
137
137
138
138
139
139
140
140
141
141
142
142
142
143
143
143
143
143
143
143
143
142
142
142
142
142
141
141
140
140
139
139
138
138
137
136
136
135
134
134
133
132
132
131
130
129
128
128
127
126
125
124
123
122
121
120
119
118
116
115
114
113
112
110
109
108
107
105
104
103
102
101
99
98
97
96
95
94
93
92
91
90
89
89
88
87
86
85
84
84
83
82
82
81
80
80
79
78
77
77
76
75
74
73
73
72
71
70
69
68
67
66
66
65
64
64
63
63
62
62
62
61
61
61
61
60
60
60
59
59
59
59
58
58
57
57
56
56
55
55
54
54
53
53
52
52
51
50
50
49
49
48
48
47
46
46
45
45
45
44
44
43
43
42
42
41
40
40
39
39
38
37
37
36
36
35
35
35
34
34
34
33
33
32
32
32
31
31
31
30
30
29
29
29
28
28
28
27
27
27
26
26
25
24
24
23
23
23
22
22
22
21
21
21
20
20
20
19
19
19
19
19
19
19
19
19
19
19
19
18
18
18
17
17
17
16
16
15
14
14
13
12
11
11
10
9
9
8
7
7
6
5
4
4
3
2
2
1
1
0
0
-1
-2
-2
-3
-4
-4
-5
-6
-6
-7
-8
-8
-9
-10
-10
-11
-11
-12
-12
-13
-13
-14
-14
-15
-15
-16
-17
-18
-18
-19
-20
-21
-21
-22
-22
-23
-23
-24
-24
-24
-25
-25
-25
-26
-26
-26
-27
-27
-28
-28
-29
-29
-30
-30
-31
-31
-32
-32
-33
-33
-34
-34
-35
-35
-36
-36
-37
-37
-38
-39
-39
-40
-41
-41
-42
-43
-43
-44
-44
-45
-46
-46
-47
-47
-48
-48
-49
-50
-50
-51
-51
-52
-52
-53
-54
-54
-55
-56
-56
-57
-58
-59
-60
-61
-61
-62
-63
-64
-65
-66
-66
-67
-68
-69
-70
-71
-71
-72
-73
-74
-74
-75
-76
-76
-77
-78
-78
-79
-79
-80
-80
-81
-81
-81
-82
-82
-82
-82
-82
-82
-82
-83
-83
-83
-83
-83
-83
-82
-82
-82
-82
-82
-81
-81
-81
-81
-80
-80
-80
-79
-79
-78
-78
-78
-77
-77
-76
-76
-75
-75
-74
-74
-73
-73
-72
-71
-70
-70
-69
-68
-66
-65
-64
-63
-62
-60
-59
-58
-56
-54
-53
-51
-49
-48
-46
-44
-42
-41
-39
-37
-35
-33
-31
-29
-27
-25
-23
-21
-18
-16
-14
-12
-10
-8
-5
-3
-1
2
4
6
9
11
13
16
18
21
23
25
28
30
33
35
38
41
43
46
48
51
54
56
59
62
64
67
69
72
75
77
80
83
85
88
91
93
96
98
101
103
106
108
111
113
115
118
120
122
125
127
129
131
133
135
137
139
141
143
145
146
148
150
152
154
156
158
159
161
163
164
166
168
169
171
173
174
176
177
179
180
182
183
185
186
187
189
190
191
192
193
194
194
195
196
197
197
198
198
199
199
200
200
200
201
201
201
201
202
202
202
203
203
203
203
204
204
204
205
205
205
205
206
206
207
207
207
208
208
208
209
209
209
209
209
209
209
209
209
209
208
208
208
207
207
206
206
205
205
204
204
203
203
202
201
201
200
200
199
199
198
198
197
197
196
196
196
195
195
194
194
194
193
193
193
193
192
192
192
191
191
191
190
190
190
189
189
189
188
188
188
188
187
187
187
186
186
186
185
185
185
184
184
183
183
182
182
181
181
180
180
179
179
178
178
177
176
176
175
174
173
173
172
171
170
169
168
168
167
166
165
164
163
162
161
160
159
159
158
157
156
155
154
153
152
151
150
149
149
148
147
146
145
144
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
119
118
117
116
115
114
113
112
111
110
109
107
106
105
104
103
101
100
99
98
97
96
94
93
92
91
89
88
87
85
84
82
81
79
77
76
74
73
71
69
68
66
65
63
62
60
59
57
56
55
53
52
50
49
48
46
45
44
43
41
40
39
37
36
35
33
32
30
29
27
25
24
22
21
19
18
16
15
13
12
10
9
7
6
4
3
2
0
-1
-2
-4
-5
-6
-8
-9
-10
-12
-13
-14
-15
-16
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-28
-29
-30
-31
-32
-33
-34
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-54
-55
-56
-57
-58
-58
-59
-59
-60
-61
-61
-62
-62
-63
-63
-64
-64
-65
-65
-65
-66
-66
-66
-66
-67
-67
-67
-67
-67
-67
-67
-67
-67
-67
-67
-67
-67
-67
-67
-67
-67
-66
-66
-66
-66
-66
-66
-65
-65
-65
-65
-65
-64
-64
-64
-64
-63
-63
-63
-63
-63
-62
-62
-62
-62
-62
-61
-61
-61
-61
-60
-60
-60
-60
-59
-59
-59
-59
-58
-58
-57
-57
-56
-56
-55
-55
-54
-53
-53
-52
-51
-51
-50
-49
-48
-48
-47
-46
-45
-44
-43
-43
-42
-41
-40
-39
-38
-38
-37
-36
-36
-35
-34
-34
-33
-33
-32
-31
-31
-30
-29
-28
-28
-27
-26
-26
-25
-24
-24
-23
-22
-22
-21
-20
-20
-19
-18
-17
-16
-16
-15
-14
-13
-12
-11
-10
-10
-9
-8
-7
-6
-5
-4
-4
-3
-2
-2
-1
-1
0
0
1
1
2
2
3
4
4
5
5
6
6
7
8
8
9
9
10
11
11
12
13
14
15
15
16
17
18
19
20
21
22
23
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
53
54
55
56
58
59
60
62
63
65
66
68
69
71
72
74
75
77
78
80
81
83
84
86
88
89
91
92
93
95
96
98
99
100
102
103
105
106
107
109
110
111
113
114
116
117
118
120
121
122
124
125
126
128
129
130
131
133
134
135
136
137
138
139
141
142
143
144
145
146
147
148
149
150
151
152
153
154
154
155
156
157
158
159
160
161
161
162
163
164
165
166
166
167
168
168
169
169
170
170
171
171
171
172
172
173
173
173
173
173
174
174
174
174
174
174
174
174
174
174
174
174
173
173
173
173
172
172
172
171
171
170
170
169
168
168
167
166
165
164
163
162
162
161
160
159
158
157
156
154
153
152
151
150
149
148
147
146
145
143
142
141
140
139
138
136
135
134
133
132
130
129
128
126
125
124
122
121
120
118
117
116
114
113
111
110
109
107
106
104
103
101
100
98
96
95
93
92
90
89
87
86
84
83
81
80
78
77
75
74
73
71
70
69
67
66
65
63
62
61
60
58
57
56
55
53
52
51
50
48
47
46
45
44
42
41
40
39
38
37
36
35
34
33
32
31
30
28
28
27
26
25
24
23
22
22
21
20
19
19
18
17
16
16
15
14
14
13
13
12
11
11
10
10
9
9
8
8
7
7
7
6
6
5
5
4
4
3
3
3
2
2
2
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
-1
-1
-1
-1
-1
-2
-2
-2
-3
-3
-3
-3
-4
-4
-4
-4
-4
-4
-4
-4
-4
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-6
-6
-6
-6
-6
-6
-6
-7
-7
-7
-7
-7
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-7
-7
-7
-6
-6
-6
-5
-5
-4
-4
-4
-3
-3
-3
-3
-3
-3
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-3
-3
-3
-2
-2
-2
-2
-2
-2
-2
-2
-1
-1
-1
-1
-1
-1
0
0
0
0
0
1
1
1
1
2
2
2
2
2
3
3
3
3
3
4
4
4
4
5
5
6
6
6
7
7
8
8
9
9
10
10
11
11
12
12
12
13
13
14
14
15
16
16
17
18
18
19
20
21
22
22
23
24
25
26
28
29
30
31
32
33
34
35
36
37
39
40
41
42
43
44
45
46
47
48
50
51
52
53
54
55
57
58
59
60
62
63
64
66
67
68
70
71
72
74
75
77
78
79
81
82
83
85
86
87
88
89
91
92
93
94
95
96
97
98
99
100
101
102
103
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
122
123
124
125
126
127
128
129
129
130
131
132
133
133
134
135
136
137
137
138
139
139
140
141
141
142
143
143
144
145
145
146
147
147
148
149
149
150
151
152
152
153
154
155
155
156
157
158
159
159
160
161
161
162
162
163
163
164
164
165
165
166
166
167
167
168
168
168
169
169
169
169
170
170
170
170
170
171
171
171
171
171
172
172
172
172
173
173
173
173
173
173
173
173
173
173
173
172
172
172
172
171
171
170
169
169
168
168
167
166
165
165
164
163
162
161
160
159
158
157
156
154
153
152
151
150
149
148
146
145
144
143
141
140
139
137
136
135
133
132
130
129
128
126
125
123
122
120
119
117
115
114
112
110
108
106
104
102
100
98
96
94
92
90
88
86
84
82
80
78
76
75
73
71
69
67
65
63
62
60
58
57
55
53
52
50
49
47
46
44
43
41
40
38
37
35
34
32
31
29
28
26
25
23
22
20
19
18
17
16
14
13
12
11
10
9
7
6
5
4
4
3
2
1
0
0
-1
-2
-3
-3
-4
-5
-5
-6
-7
-8
-9
-9
-10
-10
-11
-12
-13
-13
-14
-15
-16
-16
-17
-18
-19
-20
-20
-21
-22
-23
-23
-24
-24
-25
-25
-26
-26
-27
-28
-28
-29
-29
-30
-30
-31
-31
-32
-32
-33
-33
-33
-34
-34
-34
-34
-35
-35
-35
-36
-36
-37
-37
-37
-38
-38
-38
-39
-39
-39
-39
-40
-40
-40
-40
-40
-40
-40
-40
-40
-40
-41
-41
-41
-41
-41
-41
-42
-42
-42
-42
-42
-42
-43
-43
-43
-44
-44
-44
-45
-45
-46
-46
-46
-46
-47
-47
-47
-47
-47
-47
-48
-48
-48
-48
-48
-48
-48
-48
-48
-48
-48
-49
-49
-49
-49
-49
-50
-50
-51
-51
-51
-52
-52
-53
-53
-53
-54
-54
-54
-55
-55
-55
-56
-56
-57
-57
-57
-58
-58
-58
-59
-59
-59
-59
-59
-59
-60
-60
-60
-60
-60
-61
-61
-61
-61
-62
-62
-62
-62
-62
-62
-62
-62
-62
-62
-62
-62
-62
-62
-62
-62
-62
-61
-61
-61
-60
-60
-59
-59
-58
-58
-57
-56
-56
-55
-55
-54
-53
-53
-52
-52
-51
-50
-49
-49
-48
-47
-47
-46
-45
-45
-44
-43
-42
-42
-41
-40
-39
-38
-37
-36
-35
-34
-34
-33
-32
-31
-29
-28
-27
-26
-25
-24
-23
-22
-20
-19
-18
-16
-15
-14
-13
-11
-10
-8
-7
-6
-4
-3
-1
0
2
3
5
6
8
9
11
12
14
15
17
19
20
22
23
25
26
28
29
31
32
34
36
37
39
40
42
43
45
46
48
49
51
52
54
55
57
58
60
62
63
65
67
68
70
71
73
75
76
78
79
81
82
84
85
87
88
90
91
93
94
96
97
99
100
101
103
104
106
107
109
110
111
112
113
115
116
117
118
119
121
122
123
125
126
127
129
130
131
133
134
135
137
138
139
141
142
144
145
146
148
149
150
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
166
167
168
169
169
170
170
171
172
172
173
174
174
175
176
176
177
178
178
179
179
180
181
181
181
182
182
182
183
183
183
183
183
184
184
184
184
183
183
183
183
183
183
183
183
182
182
182
182
182
182
181
181
181
181
181
181
181
180
180
180
180
180
179
179
179
178
178
177
177
177
176
176
176
175
175
174
174
173
173
172
172
171
171
171
170
170
169
169
169
168
167
167
166
166
165
165
164
164
163
163
163
162
162
161
161
160
160
159
159
158
158
157
157
156
155
154
153
153
152
151
151
151
150
150
150
149
149
148
148
147
147
146
146
146
145
144
144
143
143
142
141
141
140
140
139
139
138
137
137
136
136
135
134
134
133
133
132
131
131
130
130
129
129
128
128
127
127
126
125
125
124
123
122
122
121
120
119
119
118
117
116
115
114
113
112
112
111
110
109
108
108
107
106
106
105
104
104
103
103
102
101
101
100
100
99
98
98
97
97
96
95
95
94
93
93
92
91
91
90
89
88
88
87
86
85
84
83
82
82
81
81
80
79
79
78
77
77
76
76
75
74
74
73
72
72
71
70
70
69
69
68
68
67
67
66
66
65
65
64
64
63
63
62
62
61
61
60
60
60
59
59
58
58
58
58
58
58
58
57
57
57
57
57
57
57
57
57
57
57
57
56
56
56
55
55
55
54
54
54
53
53
52
52
51
51
51
50
50
49
49
49
49
48
48
48
48
48
48
49
49
49
49
49
50
50
50
51
51
51
52
52
52
52
53
53
53
53
53
53
54
54
54
54
54
54
54
54
55
55
55
55
56
56
56
57
57
58
58
59
59
60
60
61
61
62
62
63
63
64
65
65
66
66
67
67
68
68
69
69
69
70
70
70
70
70
70
71
71
71
71
72
72
72
73
73
73
73
74
74
74
75
75
75
76
76
76
77
77
77
77
77
77
77
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
77
77
77
77
77
77
77
77
77
77
77
76
76
76
76
76
76
75
75
75
74
74
74
73
73
73
72
72
72
71
71
71
70
70
69
69
68
68
67
67
67
66
66
66
65
65
65
65
64
64
64
63
63
63
62
62
62
62
61
61
61
61
61
60
60
60
60
60
59
59
59
59
58
58
58
58
57
57
57
57
57
56
56
56
56
55
55
55
55
54
54
54
54
53
53
53
53
52
52
52
51
51
50
50
49
49
48
48
47
47
46
46
45
45
44
44
43
43
42
42
41
40
40
39
38
38
37
36
36
35
35
34
34
33
33
32
32
31
31
30
29
29
28
27
27
26
25
24
23
23
22
21
20
20
19
18
17
17
16
15
14
14
13
12
12
11
11
10
10
9
9
8
8
8
7
7
6
6
5
5
5
4
4
3
3
3
2
2
2
2
1
1
1
0
0
0
-1
-1
-1
-2
-2
-2
-3
-3
-3
-3
-4
-4
-4
-4
-4
-5
-5
-5
-5
-6
-6
-6
-7
-7
-7
-8
-8
-8
-9
-9
-9
-10
-10
-10
-11
-11
-11
-11
-12
-12
-12
-13
-13
-13
-13
-14
-14
-14
-15
-15
-15
-16
-16
-16
-17
-17
-18
-18
-18
-19
-19
-19
-20
-20
-21
-21
-21
-22
-22
-23
-23
-23
-24
-24
-25
-25
-25
-25
-26
-26
-26
-27
-27
-27
-27
-27
-28
-28
-28
-28
-29
-29
-29
-29
-29
-29
-29
-29
-29
-28
-28
-28
-28
-28
-28
-28
-28
-28
-28
-28
-28
-28
-27
-27
-27
-27
-27
-26
-26
-26
-26
-25
-25
-25
-25
-24
-24
-23
-23
-23
-22
-22
-21
-21
-20
-19
-19
-18
-18
-17
-17
-16
-15
-15
-14
-13
-13
-12
-11
-10
-10
-9
-8
-8
-7
-6
-6
-5
-4
-4
-3
-2
-1
-1
0
1
1
2
3
4
5
5
6
7
8
9
9
10
11
12
13
14
14
15
16
17
18
19
20
21
22
23
24
25
26
27
29
30
31
32
33
34
35
36
37
37
38
39
40
40
41
42
43
43
44
45
46
47
48
49
49
50
51
52
53
53
54
55
56
57
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
75
76
77
77
78
78
79
79
80
80
81
81
82
82
83
83
84
84
85
85
86
86
87
87
87
88
88
89
89
89
90
90
90
91
91
91
92
92
92
93
93
94
94
94
94
95
95
95
95
95
96
96
96
96
96
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
97
97
97
97
96
96
96
95
95
95
95
94
94
94
93
93
93
92
92
91
90
90
89
88
87
86
85
85
84
83
82
81
80
79
78
77
76
75
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
55
54
53
52
51
50
49
48
47
45
44
43
42
40
39
38
37
36
34
33
32
31
30
29
27
26
25
24
23
22
21
20
19
18
17
16
15
15
14
13
13
12
12
11
10
9
9
8
7
7
6
5
5
4
3
3
2
1
1
1
0
0
0
-1
-1
-1
-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
-2
-2
-2
-1
-1
-1
0
0
0
1
1
1
2
2
2
2
3
3
3
3
3
4
4
4
4
5
5
5
6
6
6
7
7
8
8
9
9
10
10
11
11
12
12
13
13
14
14
14
15
16
16
17
17
18
18
19
20
20
21
21
21
22
22
23
23
23
24
24
25
25
26
26
27
27
28
28
29
29
30
30
31
31
32
32
33
33
33
34
34
35
35
36
37
37
38
38
39
39
40
40
41
41
41
42
42
43
43
44
44
45
45
46
46
47
47
48
48
48
49
49
50
50
51
52
52
53
53
54
55
55
56
56
57
58
58
58
59
59
60
60
60
60
60
60
60
61
60
60
60
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
62
62
62
62
62
62
62
62
63
63
63
63
63
63
63
63
63
63
63
63
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
61
61
61
61
60
60
60
60
59
59
59
59
59
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
59
59
59
59
59
59
59
59
59
59
59
58
58
58
58
58
57
57
57
57
57
57
57
57
56
56
56
56
57
57
57
57
57
57
57
57
57
57
58
58
58
58
58
58
58
57
57
57
57
57
56
56
56
56
56
55
55
55
55
54
54
54
54
53
53
53
52
52
52
52
52
51
51
51
51
51
51
51
50
50
50
50
49
49
49
48
48
48
47
47
46
46
46
45
45
44
44
43
43
42
42
41
41
41
40
40
40
39
39
39
38
38
38
38
37
37
37
37
37
36
36
36
36
36
36
36
36
36
36
36
36
36
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
38
38
38
38
39
39
39
39
40
40
40
41
41
41
42
42
42
43
43
44
44
45
45
45
46
46
46
47
47
47
48
48
49
49
49
49
50
50
50
50
51
51
51
51
51
52
52
52
52
53
53
53
53
54
54
54
54
54
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
54
54
54
54
54
54
54
53
53
53
53
53
52
52
52
52
51
51
51
51
51
50
50
50
50
50
50
50
49
49
49
49
49
49
48
48
48
48
48
48
48
47
47
47
47
47
47
46
46
46
46
46
46
45
45
45
45
45
44
44
44
44
43
43
43
43
43
43
43
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
44
44
44
44
45
45
45
46
46
46
46
46
47
47
47
48
48
49
49
50
50
51
51
52
53
53
54
54
55
56
56
57
58
58
59
60
60
61
62
62
63
64
64
65
66
66
67
68
68
69
69
70
71
71
72
72
73
74
74
75
76
76
77
78
78
79
79
80
81
81
82
83
83
84
85
85
86
86
87
88
88
89
89
90
90
91
92
92
93
93
94
94
95
95
96
96
97
98
98
99
99
100
100
101
101
102
102
103
103
104
104
105
105
106
106
107
108
108
109
109
110
111
111
112
113
113
114
114
115
115
115
116
116
116
116
117
117
117
117
118
118
118
118
118
118
118
118
118
118
118
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
118
118
118
118
118
118
118
117
117
117
117
117
116
116
116
116
115
115
115
114
114
114
113
113
113
112
112
111
111
110
110
109
109
108
108
108
107
107
106
106
106
105
105
105
104
104
104
104
103
103
103
102
102
102
101
101
101
100
100
100
100
99
99
99
98
98
97
97
96
96
95
95
94
94
93
93
93
92
92
91
91
91
90
90
90
89
89
89
89
88
88
88
88
88
87
87
87
87
87
86
86
86
86
86
86
86
86
85
85
85
85
85
85
85
84
84
84
84
84
83
83
83
83
82
82
82
82
82
81
81
81
81
81
81
81
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
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
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
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
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
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
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
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
