5
1835
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-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
-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
-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
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-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
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-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
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
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
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
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
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
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
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
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
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
10
10
10
10
10
10
10
10
10
10
9
9
9
9
9
9
9
9
9
9
9
9
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
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
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
4
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
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
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
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
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
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
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
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
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
8
8
8
8
8
8
8
8
8
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
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
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
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
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
5
5
5
5
5
5
5
5
5
5
5
5
5
5
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
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
1
1
1
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
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
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
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
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-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
1
1
1
1
1
1
1
1
1
1
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
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
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
4
4
4
4
4
4
4
4
4
4
4
4
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
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
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
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
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
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
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
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
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
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
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
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
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
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
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
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
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
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
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
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
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
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
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
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
16
16
16
16
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
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
17
17
17
17
17
17
17
17
17
17
17
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
15
15
15
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
15
15
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
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
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
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
15
15
15
15
15
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
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
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
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
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
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
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
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
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
23
23
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
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
25
25
25
25
25
25
25
25
25
25
25
25
25
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
27
27
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
28
28
28
28
28
28
28
28
28
28
28
28
28
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
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
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
24
24
24
24
24
24
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
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
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
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
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
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
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
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
20
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
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
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
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
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
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
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
15
15
15
15
15
15
15
15
15
15
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
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
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
20
20
20
20
20
20
20
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
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
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
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
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
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
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
27
27
27
27
27
27
27
27
27
27
27
27
27
27
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
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
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
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
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
36
36
36
36
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
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
41
41
41
41
41
41
41
41
41
41
41
41
41
42
42
42
42
42
42
42
42
42
42
43
43
43
43
43
43
43
43
43
43
44
44
44
44
44
44
44
44
44
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
47
48
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
49
49
49
49
49
49
50
50
50
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
52
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
53
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
56
56
56
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
57
58
58
58
58
58
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
59
59
59
59
59
59
59
59
59
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
64
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
66
66
66
66
66
66
66
66
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
68
68
68
68
68
68
68
68
68
68
68
68
68
68
69
69
69
69
69
69
69
69
69
69
69
70
70
70
70
70
70
70
70
70
70
70
71
71
71
71
71
71
71
71
71
71
71
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
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
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
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
82
82
82
82
82
82
82
82
82
82
82
82
82
82
82
82
82
83
83
83
83
83
83
83
83
83
83
83
83
83
83
84
84
84
84
84
84
84
84
84
84
84
84
84
85
85
85
85
85
85
85
85
85
85
85
86
86
86
86
86
86
86
86
86
86
86
87
87
87
87
87
87
87
87
87
87
87
87
87
87
88
88
88
88
88
88
88
88
88
88
88
88
88
88
88
89
89
89
89
89
89
89
89
89
89
89
89
90
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
93
93
93
93
93
93
93
93
93
94
94
94
94
94
94
94
94
95
95
95
95
95
95
95
95
95
96
96
96
96
96
96
96
96
96
96
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
99
99
99
99
99
99
99
99
99
99
99
99
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
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
104
104
104
104
104
104
104
104
104
104
104
104
104
104
104
104
104
104
104
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
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
112
112
112
112
112
112
112
112
112
112
112
112
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
110
110
110
110
110
110
110
110
110
109
109
109
109
109
108
108
108
107
107
107
106
106
105
105
105
104
104
104
103
103
102
102
102
101
101
101
100
100
100
100
99
99
99
99
99
99
98
98
98
98
98
98
98
98
98
98
97
98
98
98
98
98
98
98
99
99
99
99
99
99
99
100
100
100
100
100
100
100
100
100
100
100
100
100
99
99
99
99
98
98
98
97
97
96
95
95
94
94
93
93
92
91
91
90
89
88
88
87
86
85
85
84
83
82
82
81
80
80
79
79
78
78
77
77
77
76
76
76
76
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
74
74
74
73
73
72
72
71
70
70
69
69
68
67
67
66
66
65
64
63
62
62
60
59
58
57
56
54
53
51
50
48
47
45
43
42
40
38
36
34
33
31
29
27
25
23
21
19
17
15
13
12
10
8
7
5
4
2
1
0
-1
-2
-4
-5
-6
-7
-8
-9
-10
-11
-13
-14
-15
-16
-18
-19
-20
-22
-23
-25
-26
-28
-29
-31
-33
-34
-36
-38
-39
-41
-43
-45
-47
-48
-50
-52
-54
-56
-58
-60
-62
-65
-67
-69
-72
-74
-77
-79
-82
-84
-87
-90
-92
-95
-97
-100
-103
-106
-109
-112
-115
-118
-122
-125
-129
-132
-135
-139
-142
-145
-148
-151
-154
-158
-161
-164
-168
-171
-174
-178
-181
-184
-187
-190
-193
-195
-198
-200
-203
-205
-207
-210
-212
-215
-217
-220
-222
-225
-227
-230
-232
-235
-237
-239
-240
-242
-243
-245
-246
-247
-248
-249
-250
-251
-252
-253
-255
-256
-257
-259
-261
-262
-264
-266
-268
-269
-271
-273
-275
-277
-279
-281
-283
-285
-286
-288
-290
-291
-292
-294
-295
-296
-297
-298
-300
-301
-302
-303
-305
-306
-307
-309
-310
-312
-313
-315
-316
-317
-318
-318
-319
-319
-318
-318
-317
-315
-314
-312
-310
-308
-305
-303
-299
-296
-292
-288
-284
-279
-274
-268
-262
-256
-249
-243
-236
-229
-223
-216
-209
-203
-197
-191
-185
-179
-173
-168
-162
-156
-150
-143
-137
-131
-125
-118
-112
-106
-100
-95
-89
-84
-79
-74
-70
-65
-61
-56
-52
-48
-43
-39
-35
-31
-27
-23
-19
-15
-11
-7
-3
1
5
10
15
20
26
32
38
45
52
59
66
74
82
90
98
106
114
122
130
138
146
154
162
171
179
187
195
203
211
219
227
236
244
252
260
267
275
282
290
297
304
311
318
325
332
339
346
353
360
367
373
379
385
390
395
399
403
407
410
414
416
419
422
424
426
428
430
432
433
435
437
439
442
444
446
448
451
453
456
458
460
463
465
467
469
471
472
474
475
476
477
478
479
480
480
481
482
482
483
483
484
484
484
483
483
482
481
480
478
476
474
471
469
466
464
461
459
456
454
451
448
445
442
439
435
431
426
420
415
409
402
396
389
382
376
369
363
357
351
345
339
332
325
318
311
304
296
289
281
274
266
259
252
246
239
233
226
220
213
206
199
192
184
177
169
161
153
146
138
130
123
115
108
101
93
85
77
69
60
52
43
34
26
17
9
2
-6
-13
-20
-27
-33
-40
-46
-53
-60
-66
-74
-81
-88
-96
-104
-112
-121
-129
-137
-145
-153
-161
-169
-176
-183
-190
-196
-202
-208
-214
-220
-225
-231
-236
-240
-244
-248
-252
-255
-258
-261
-264
-267
-269
-272
-275
-278
-282
-286
-290
-294
-299
-303
-308
-312
-317
-322
-326
-330
-334
-337
-340
-343
-346
-348
-350
-352
-353
-355
-356
-358
-359
-361
-362
-363
-365
-366
-368
-369
-371
-372
-373
-374
-375
-376
-377
-377
-378
-379
-379
-380
-380
-381
-381
-381
-380
-380
-379
-378
-377
-375
-374
-372
-370
-368
-366
-363
-361
-358
-355
-352
-350
-347
-343
-340
-336
-332
-328
-323
-319
-314
-308
-303
-298
-292
-286
-281
-275
-269
-264
-258
-253
-247
-242
-236
-231
-225
-220
-215
-210
-205
-200
-195
-191
-186
-181
-177
-172
-167
-161
-156
-150
-145
-139
-133
-127
-122
-116
-111
-106
-101
-97
-93
-89
-86
-82
-79
-76
-73
-70
-67
-64
-60
-57
-53
-49
-45
-41
-36
-32
-27
-23
-19
-14
-10
-6
-2
2
6
9
13
16
20
24
27
31
35
39
43
47
51
55
60
64
68
72
77
81
86
91
96
101
106
111
116
121
126
130
134
138
141
144
147
150
152
154
155
157
158
159
160
161
162
163
164
164
165
166
166
166
167
167
167
168
168
168
168
167
167
166
165
164
163
161
159
157
155
153
150
148
145
142
139
136
132
129
125
122
118
114
109
105
100
96
91
86
81
76
71
66
60
55
50
44
39
34
29
23
18
13
8
3
-2
-7
-11
-16
-20
-24
-27
-30
-33
-36
-39
-41
-43
-45
-48
-50
-53
-55
-58
-61
-64
-68
-71
-74
-78
-81
-84
-88
-91
-94
-97
-100
-104
-107
-111
-115
-120
-125
-129
-134
-139
-144
-149
-154
-158
-162
-166
-169
-172
-174
-176
-178
-180
-181
-183
-184
-186
-187
-188
-190
-191
-192
-194
-195
-196
-197
-198
-199
-200
-201
-201
-202
-203
-204
-205
-205
-206
-207
-208
-209
-210
-212
-214
-216
-218
-220
-223
-226
-229
-232
-236
-239
-243
-246
-250
-254
-257
-261
-265
-268
-271
-274
-276
-278
-280
-282
-283
-285
-286
-286
-287
-288
-289
-289
-290
-291
-291
-292
-293
-294
-295
-296
-297
-297
-298
-299
-300
-300
-301
-301
-301
-302
-302
-302
-302
-302
-301
-301
-301
-300
-300
-300
-299
-299
-299
-299
-299
-299
-300
-301
-302
-303
-304
-305
-306
-306
-307
-307
-307
-307
-306
-305
-304
-303
-302
-300
-298
-296
-294
-292
-290
-288
-287
-285
-283
-281
-279
-277
-275
-273
-272
-270
-268
-266
-264
-263
-261
-259
-257
-255
-253
-251
-248
-245
-243
-240
-237
-234
-232
-229
-227
-225
-223
-222
-221
-220
-220
-220
-220
-220
-220
-220
-220
-219
-219
-219
-218
-217
-217
-216
-215
-214
-213
-212
-211
-210
-208
-207
-206
-204
-203
-201
-200
-198
-197
-195
-194
-192
-190
-189
-187
-185
-184
-182
-180
-178
-176
-175
-173
-171
-170
-168
-167
-165
-164
-162
-161
-159
-158
-156
-155
-153
-151
-150
-149
-148
-147
-146
-145
-145
-145
-145
-145
-145
-145
-145
-144
-144
-144
-144
-144
-143
-143
-142
-142
-141
-141
-140
-140
-139
-139
-138
-138
-137
-137
-136
-136
-135
-134
-133
-132
-131
-129
-128
-127
-126
-124
-123
-122
-122
-121
-120
-120
-119
-118
-118
-117
-116
-116
-115
-114
-114
-113
-112
-112
-111
-110
-110
-109
-108
-107
-106
-106
-105
-104
-104
-104
-104
-105
-105
-107
-109
-111
-113
-116
-119
-122
-125
-129
-132
-135
-138
-141
-144
-147
-150
-153
-156
-159
-162
-165
-169
-173
-177
-181
-185
-189
-193
-196
-200
-203
-207
-209
-212
-214
-216
-218
-219
-221
-222
-224
-225
-226
-228
-229
-230
-231
-231
-232
-233
-233
-233
-234
-234
-234
-234
-234
-234
-234
-235
-235
-236
-236
-238
-239
-241
-243
-245
-248
-251
-254
-258
-261
-265
-268
-272
-275
-278
-281
-284
-287
-289
-291
-293
-295
-296
-297
-299
-300
-301
-302
-302
-303
-304
-305
-306
-307
-307
-308
-309
-310
-311
-312
-312
-313
-314
-315
-316
-316
-317
-318
-320
-321
-322
-324
-325
-327
-328
-330
-332
-333
-335
-336
-338
-339
-340
-342
-343
-344
-344
-345
-345
-346
-346
-345
-345
-344
-343
-342
-341
-340
-338
-336
-334
-332
-330
-328
-325
-323
-320
-318
-315
-312
-309
-305
-301
-297
-293
-289
-284
-280
-275
-271
-266
-262
-258
-255
-251
-248
-245
-242
-240
-237
-234
-232
-230
-227
-225
-222
-220
-217
-215
-212
-209
-206
-203
-200
-197
-194
-190
-187
-183
-179
-175
-171
-167
-162
-157
-152
-147
-142
-137
-131
-126
-120
-115
-109
-104
-99
-93
-88
-83
-78
-73
-68
-64
-59
-55
-50
-46
-43
-39
-36
-32
-29
-26
-23
-20
-18
-15
-11
-8
-5
-1
3
7
11
15
19
24
28
33
37
41
46
50
54
58
62
66
70
74
78
83
87
92
97
102
107
112
117
123
128
133
139
144
150
155
161
167
173
179
185
190
196
202
208
214
220
226
232
238
244
250
256
262
268
274
279
285
291
296
302
307
312
317
321
326
331
335
340
344
349
353
358
362
367
372
376
381
385
390
395
400
404
409
414
419
424
429
434
439
443
448
453
457
461
465
469
472
476
479
482
484
486
488
490
492
493
494
495
496
496
497
497
497
498
498
499
499
500
500
501
502
503
504
504
505
505
506
506
506
506
505
505
504
503
503
502
501
500
500
499
499
498
498
497
497
496
495
494
493
491
489
487
484
481
478
475
472
468
464
460
456
451
447
442
438
433
428
424
419
414
410
406
401
397
393
389
385
381
377
373
369
366
362
359
356
354
351
349
348
347
346
345
344
343
343
342
342
341
339
338
336
334
332
329
326
323
320
316
313
310
306
303
299
296
292
289
286
282
279
275
272
268
265
261
257
253
248
244
239
234
229
224
219
214
208
203
198
193
187
182
178
173
169
164
160
156
153
149
146
143
139
136
132
129
125
121
117
112
107
102
97
91
86
80
74
69
63
58
52
47
42
37
32
27
23
18
14
10
6
3
-1
-4
-7
-10
-13
-16
-18
-21
-23
-26
-28
-31
-34
-36
-39
-41
-44
-46
-48
-51
-53
-55
-56
-58
-59
-61
-62
-63
-64
-65
-66
-67
-68
-68
-69
-69
-70
-70
-70
-70
-70
-70
-70
-70
-69
-69
-68
-67
-66
-65
-64
-63
-62
-61
-60
-59
-58
-57
-57
-56
-55
-54
-54
-53
-52
-51
-51
-50
-49
-47
-46
-44
-43
-41
-39
-36
-34
-32
-29
-26
-24
-21
-19
-16
-14
-12
-9
-7
-5
-2
0
3
5
8
10
13
16
19
23
26
29
33
36
39
43
46
49
52
55
58
61
64
67
70
72
74
77
79
81
82
84
86
87
89
90
91
93
94
96
97
99
100
102
103
105
107
109
111
113
115
117
120
122
124
126
129
131
133
136
138
140
143
146
149
152
155
158
161
165
169
172
176
180
184
188
192
196
200
204
207
211
215
218
222
225
228
232
235
237
240
243
246
248
251
254
256
259
261
263
266
268
270
271
273
274
276
277
278
279
280
281
282
283
284
285
287
289
291
293
296
299
302
306
309
313
316
320
324
328
331
335
339
343
346
350
354
358
362
366
370
374
378
382
386
389
393
397
400
404
407
410
413
416
419
422
424
427
429
431
432
434
435
436
437
437
438
438
438
439
439
439
439
439
440
440
440
440
440
441
441
441
441
441
441
441
441
441
440
440
440
439
438
437
436
435
434
432
430
428
426
423
420
417
414
410
406
402
398
394
389
384
380
375
369
364
359
353
347
341
336
330
323
317
311
304
298
291
285
278
271
264
258
251
245
238
232
225
219
213
207
201
195
189
183
177
171
166
160
154
148
142
136
131
125
120
114
109
104
99
94
90
85
81
77
73
69
65
61
57
54
50
47
44
41
38
35
32
30
27
25
22
20
18
16
13
11
8
6
3
1
-2
-5
-8
-11
-14
-17
-20
-23
-26
-29
-32
-35
-37
-40
-42
-44
-45
-47
-48
-48
-49
-49
-49
-49
-49
-48
-48
-47
-46
-45
-43
-41
-39
-37
-35
-32
-29
-26
-23
-20
-16
-13
-10
-7
-4
-2
1
3
6
8
9
11
13
14
16
17
18
19
20
21
22
23
23
24
24
25
25
26
26
26
27
27
27
27
27
28
28
28
28
28
28
28
28
28
28
28
28
28
28
27
27
27
26
26
26
25
24
24
23
23
22
22
21
21
20
20
19
19
19
19
20
20
21
21
22
23
23
24
25
25
25
25
25
25
24
23
23
21
20
18
17
15
13
10
8
6
3
1
-1
-4
-6
-8
-10
-13
-15
-16
-18
-20
-21
-22
-23
-24
-24
-25
-25
-25
-25
-24
-24
-23
-22
-22
-21
-20
-19
-17
-16
-15
-15
-14
-13
-12
-11
-10
-10
-9
-8
-7
-7
-6
-5
-4
-3
-1
0
2
3
5
7
9
11
14
16
19
22
25
28
31
34
38
41
45
49
52
56
60
63
67
71
75
79
83
87
91
95
99
103
108
112
116
121
126
130
135
140
145
150
155
159
164
168
173
177
180
184
188
191
194
196
199
201
203
205
207
210
212
214
217
220
223
226
229
233
237
241
245
250
255
260
265
270
276
281
287
292
297
303
308
313
318
323
328
332
337
341
346
350
355
359
364
368
372
376
381
385
388
392
396
399
402
405
408
411
413
415
418
420
421
423
425
426
427
429
430
431
432
433
434
434
435
435
436
436
436
436
435
434
433
432
430
428
426
423
420
416
413
409
405
400
396
392
387
383
379
375
370
366
362
358
354
350
346
342
338
333
329
325
320
315
311
306
302
297
292
288
284
279
275
272
268
265
261
258
255
253
250
247
244
242
239
236
233
229
226
222
218
215
210
206
202
197
193
188
183
178
173
168
163
158
152
147
142
137
132
127
122
117
112
108
103
98
93
89
84
79
75
70
65
60
56
51
46
41
36
31
26
21
16
11
6
1
-3
-8
-13
-18
-22
-27
-31
-36
-40
-44
-47
-51
-54
-57
-60
-63
-65
-67
-69
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-80
-81
-82
-82
-83
-83
-84
-84
-84
-84
-84
-84
-84
-83
-83
-83
-82
-82
-81
-80
-80
-79
-78
-78
-77
-76
-75
-74
-73
-72
-70
-69
-68
-66
-65
-64
-62
-61
-60
-58
-57
-56
-55
-54
-53
-52
-51
-50
-50
-49
-49
-49
-49
-49
-49
-50
-50
-51
-51
-52
-53
-53
-54
-54
-55
-55
-55
-55
-55
-55
-55
-54
-54
-54
-53
-53
-53
-52
-52
-51
-51
-50
-49
-49
-48
-47
-46
-45
-43
-42
-41
-39
-38
-37
-35
-34
-33
-31
-30
-29
-28
-27
-27
-26
-26
-25
-25
-25
-25
-25
-26
-26
-27
-28
-28
-30
-31
-32
-34
-36
-38
-40
-42
-45
-48
-51
-53
-56
-59
-62
-65
-68
-71
-74
-76
-78
-81
-83
-84
-86
-87
-88
-88
-89
-89
-89
-89
-88
-88
-87
-86
-86
-85
-84
-83
-82
-80
-79
-78
-76
-75
-73
-72
-70
-69
-67
-66
-65
-63
-62
-61
-60
-59
-58
-57
-56
-55
-54
-54
-53
-53
-53
-53
-53
-53
-54
-54
-54
-55
-55
-55
-54
-54
-52
-51
-49
-46
-44
-40
-37
-33
-29
-24
-19
-15
-10
-5
0
5
10
15
20
24
28
32
36
39
43
46
49
51
54
56
58
60
62
63
65
66
68
69
71
72
73
75
76
78
79
81
82
84
86
88
90
92
94
96
98
100
102
105
107
109
112
114
116
118
120
122
124
126
127
129
130
131
133
134
134
135
136
137
137
138
139
140
141
142
143
144
145
146
147
149
150
152
153
154
156
157
158
159
160
161
162
162
163
163
163
163
163
164
164
164
165
165
165
166
166
167
168
168
169
169
170
171
171
172
172
173
173
173
174
174
174
174
174
174
174
174
174
174
173
172
171
170
169
167
165
163
161
159
156
154
151
148
145
142
139
136
133
130
127
124
121
118
115
113
110
107
105
102
99
97
94
92
89
87
85
82
80
77
75
73
70
68
66
64
62
60
58
56
55
53
52
50
49
48
48
47
46
46
45
45
44
44
43
42
42
41
39
38
36
35
33
30
28
25
22
19
16
13
10
7
3
0
-3
-5
-8
-11
-13
-15
-17
-18
-20
-21
-22
-23
-24
-26
-27
-28
-29
-30
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-44
-45
-45
-46
-46
-46
-46
-46
-46
-45
-45
-44
-44
-43
-42
-41
-40
-39
-38
-37
-36
-34
-33
-31
-30
-29
-27
-26
-25
-23
-22
-21
-20
-19
-18
-16
-15
-14
-12
-10
-8
-6
-4
-2
1
3
6
8
11
13
15
17
19
21
23
24
25
26
27
28
29
29
30
30
30
30
30
31
31
31
31
31
31
32
33
34
35
36
38
40
42
44
46
49
51
54
56
59
61
64
66
69
71
73
76
78
80
82
84
86
88
90
92
94
96
97
99
101
103
105
107
109
111
113
115
117
119
121
122
124
125
126
127
128
129
130
131
132
132
133
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
135
135
135
135
136
136
136
137
137
138
138
139
140
141
141
142
143
144
145
146
147
148
149
150
150
151
151
152
152
153
153
153
153
153
153
153
153
153
153
152
152
151
150
149
148
147
146
144
143
141
139
137
135
133
131
129
127
124
122
120
118
116
114
113
111
110
108
107
106
105
104
103
103
102
102
102
101
101
100
100
99
99
98
97
96
95
94
93
91
90
88
86
84
82
79
77
74
71
68
64
61
57
54
50
46
42
38
35
31
27
23
20
16
13
10
7
3
0
-3
-5
-8
-11
-14
-17
-20
-23
-25
-28
-31
-34
-37
-40
-43
-46
-49
-51
-54
-56
-59
-61
-63
-65
-67
-69
-71
-73
-75
-76
-78
-80
-81
-83
-85
-86
-88
-89
-91
-92
-93
-95
-96
-97
-99
-100
-101
-103
-104
-105
-106
-107
-108
-109
-110
-110
-111
-111
-111
-111
-111
-111
-110
-110
-109
-109
-108
-107
-106
-105
-104
-103
-102
-101
-100
-99
-98
-97
-96
-95
-95
-94
-93
-93
-92
-92
-91
-91
-91
-91
-91
-92
-92
-92
-92
-93
-93
-92
-92
-92
-91
-90
-89
-87
-86
-84
-82
-80
-78
-76
-74
-72
-70
-68
-66
-65
-63
-62
-61
-60
-59
-59
-58
-57
-56
-56
-55
-53
-52
-50
-49
-46
-44
-41
-38
-35
-31
-27
-23
-19
-14
-9
-5
0
6
11
16
21
27
32
37
43
48
53
58
63
67
72
76
80
84
88
91
95
98
101
104
107
109
112
115
117
120
122
124
127
129
131
133
134
136
137
138
139
140
141
141
142
142
143
144
144
145
146
147
148
149
151
152
154
156
158
160
163
165
168
171
175
178
182
186
190
194
199
204
208
213
218
223
228
233
238
243
248
253
257
261
265
268
272
275
277
279
281
283
284
285
286
286
286
286
286
285
285
284
283
282
280
278
277
275
273
271
269
266
264
262
259
257
254
252
249
246
243
241
238
235
233
230
228
226
224
222
219
217
215
213
211
208
206
203
201
198
195
192
189
186
183
180
177
174
171
168
165
163
160
157
155
152
149
147
144
142
139
137
135
133
130
128
126
124
122
120
118
115
113
111
109
106
104
101
98
96
93
91
88
86
84
81
79
77
75
73
72
70
68
67
65
63
61
59
57
55
53
50
48
45
41
38
34
31
26
22
18
13
8
3
-1
-6
-11
-16
-20
-24
-28
-32
-35
-38
-41
-44
-46
-48
-49
-51
-52
-53
-54
-55
-56
-56
-57
-58
-60
-61
-62
-64
-66
-68
-70
-72
-74
-77
-80
-83
-85
-89
-92
-95
-98
-102
-105
-108
-112
-115
-119
-122
-126
-129
-133
-137
-140
-144
-148
-152
-156
-160
-164
-168
-172
-177
-181
-186
-190
-195
-200
-205
-209
-214
-219
-223
-227
-232
-236
-239
-243
-246
-249
-252
-255
-257
-260
-262
-264
-265
-267
-269
-270
-271
-272
-273
-273
-274
-274
-274
-273
-273
-272
-271
-269
-268
-267
-265
-263
-261
-260
-258
-256
-255
-253
-252
-251
-250
-249
-247
-246
-245
-244
-243
-243
-242
-241
-240
-240
-239
-239
-239
-239
-239
-240
-240
-241
-241
-242
-243
-243
-244
-245
-246
-247
-248
-249
-249
-250
-251
-252
-252
-253
-253
-254
-254
-254
-255
-255
-255
-254
-254
-254
-254
-253
-253
-252
-251
-250
-250
-249
-247
-246
-244
-243
-241
-239
-237
-235
-232
-230
-227
-225
-222
-219
-217
-214
-212
-209
-207
-205
-203
-202
-200
-199
-198
-198
-197
-197
-197
-197
-197
-197
-198
-198
-199
-199
-200
-200
-201
-201
-202
-202
-203
-203
-204
-204
-204
-205
-206
-206
-207
-207
-208
-209
-210
-210
-211
-211
-212
-212
-213
-213
-213
-214
-214
-214
-215
-215
-216
-217
-218
-219
-221
-222
-224
-226
-228
-230
-232
-234
-236
-237
-239
-240
-241
-242
-243
-243
-243
-243
-242
-242
-241
-240
-239
-238
-237
-236
-235
-234
-234
-233
-232
-231
-230
-229
-229
-228
-227
-226
-225
-224
-222
-221
-219
-218
-216
-214
-213
-211
-209
-208
-206
-205
-203
-202
-201
-200
-199
-199
-198
-198
-198
-198
-198
-198
-198
-198
-199
-199
-200
-201
-202
-203
-204
-205
-207
-208
-210
-212
-214
-216
-218
-220
-222
-224
-227
-229
-231
-233
-235
-237
-239
-241
-242
-244
-245
-246
-247
-248
-248
-248
-249
-249
-248
-248
-248
-248
-247
-247
-246
-246
-246
-245
-245
-245
-245
-245
-245
-245
-245
-246
-246
-247
-248
-249
-251
-253
-255
-257
-259
-262
-265
-268
-271
-275
-279
-283
-286
-291
-295
-299
-303
-307
-311
-314
-318
-322
-325
-328
-331
-333
-336
-338
-340
-341
-343
-344
-345
-345
-346
-346
-346
-346
-345
-345
-344
-344
-343
-342
-341
-340
-339
-338
-337
-336
-335
-334
-333
-332
-330
-329
-328
-327
-326
-325
-324
-323
-323
-322
-322
-322
-322
-322
-322
-322
-323
-323
-323
-323
-324
-324
-324
-324
-323
-323
-323
-323
-322
-322
-322
-321
-321
-321
-320
-320
-320
-320
-320
-320
-320
-320
-320
-321
-321
-321
-321
-321
-322
-322
-322
-322
-322
-322
-322
-321
-321
-321
-320
-320
-319
-319
-318
-317
-316
-315
-314
-313
-312
-311
-310
-309
-308
-307
-305
-304
-303
-301
-300
-299
-297
-296
-294
-292
-291
-289
-288
-286
-285
-283
-282
-280
-279
-277
-275
-274
-272
-270
-268
-267
-265
-263
-262
-261
-260
-259
-259
-259
-259
-260
-260
-261
-263
-264
-266
-267
-269
-271
-273
-275
-277
-278
-280
-282
-283
-285
-286
-287
-289
-290
-292
-294
-295
-297
-299
-302
-304
-307
-310
-313
-316
-320
-323
-327
-330
-334
-338
-341
-345
-349
-352
-356
-359
-363
-366
-370
-373
-377
-380
-384
-387
-391
-394
-398
-402
-405
-409
-413
-417
-420
-424
-428
-432
-436
-440
-444
-448
-452
-455
-459
-463
-466
-469
-472
-475
-478
-481
-484
-486
-489
-492
-494
-497
-499
-502
-504
-506
-508
-510
-512
-513
-515
-516
-518
-519
-520
-522
-523
-525
-527
-529
-531
-533
-535
-538
-540
-543
-545
-548
-551
-553
-556
-558
-560
-562
-564
-566
-568
-570
-571
-572
-573
-574
-575
-575
-575
-576
-576
-576
-576
-576
-576
-576
-576
-575
-575
-575
-575
-574
-574
-573
-573
-572
-571
-570
-569
-567
-566
-564
-562
-560
-557
-555
-552
-549
-547
-544
-541
-538
-535
-532
-530
-527
-524
-521
-519
-516
-513
-510
-508
-505
-502
-499
-496
-493
-490
-488
-485
-483
-480
-478
-476
-475
-473
-471
-470
-468
-467
-465
-464
-462
-460
-458
-457
-454
-452
-450
-447
-445
-442
-439
-436
-433
-430
-426
-423
-419
-415
-411
-407
-403
-399
-395
-391
-387
-383
-378
-374
-369
-365
-360
-355
-351
-346
-341
-336
-331
-326
-321
-316
-311
-306
-301
-296
-291
-286
-281
-277
-273
-268
-264
-260
-256
-253
-249
-246
-243
-240
-237
-234
-232
-230
-228
-226
-224
-222
-220
-218
-216
-214
-212
-210
-208
-205
-203
-200
-197
-195
-192
-189
-186
-182
-179
-175
-171
-167
-163
-159
-155
-150
-145
-140
-135
-130
-125
-119
-114
-108
-102
-97
-91
-85
-80
-74
-68
-63
-58
-52
-47
-42
-37
-33
-28
-24
-20
-16
-12
-9
-6
-3
-1
2
3
5
6
7
7
7
7
7
6
5
4
3
2
1
0
-1
-2
-3
-4
-4
-5
-5
-5
-5
-5
-4
-4
-3
-2
-1
1
2
4
7
9
12
14
17
20
24
27
30
34
37
40
43
47
50
52
55
58
60
62
64
66
68
69
71
72
74
75
76
77
78
78
79
79
79
78
78
77
76
74
73
71
69
66
64
62
59
57
54
52
49
47
45
43
42
41
40
39
39
39
40
42
43
46
49
52
56
61
65
70
76
82
87
93
100
106
112
118
124
131
137
143
149
155
162
168
174
180
187
193
200
206
213
220
227
234
241
248
255
262
269
276
284
291
298
306
313
320
328
335
343
350
357
365
372
380
387
395
402
410
417
425
433
440
448
456
463
471
479
487
496
504
512
521
529
538
546
555
563
571
579
587
595
602
609
616
622
628
634
639
644
649
653
657
661
664
667
670
672
674
676
678
679
680
681
682
682
683
683
684
684
684
684
685
685
686
686
687
688
688
689
690
690
691
691
691
691
690
689
688
687
685
682
679
676
673
669
665
660
656
651
647
642
638
633
629
625
621
618
614
611
608
605
602
600
597
594
591
589
586
584
581
579
576
574
571
569
567
565
563
562
561
559
559
558
558
558
559
560
561
563
565
568
571
575
579
584
588
594
599
605
610
616
621
626
631
636
641
646
650
654
658
662
666
669
673
676
679
682
685
687
689
690
692
692
692
692
691
690
688
686
684
681
677
674
670
666
661
657
653
648
643
639
634
629
625
620
616
612
608
603
600
596
592
588
584
580
576
572
568
563
559
554
549
543
538
532
525
519
512
504
497
489
480
472
463
454
444
434
424
413
402
391
379
367
355
342
329
316
303
289
275
262
248
234
220
207
193
180
166
153
140
127
115
102
90
78
67
55
44
33
22
12
2
-8
-18
-28
-38
-47
-56
-66
-75
-84
-93
-102
-110
-119
-127
-135
-143
-151
-158
-165
-172
-179
-185
-192
-198
-203
-209
-214
-219
-224
-229
-233
-237
-241
-244
-247
-250
-252
-254
-256
-257
-258
-258
-258
-258
-257
-256
-254
-251
-249
-246
-242
-238
-234
-229
-224
-219
-214
-208
-202
-197
-191
-185
-178
-172
-166
-159
-153
-146
-139
-132
-125
-117
-109
-101
-93
-84
-75
-66
-56
-46
-35
-24
-13
-2
10
22
35
48
61
75
89
104
119
135
151
168
186
204
223
244
264
286
309
332
356
381
407
433
459
486
514
542
570
598
626
654
682
710
737
764
791
817
842
867
890
913
935
956
976
994
1010
1027
1041
1054
1065
1075
1083
1089
1094
1097
1099
1099
1098
1097
1094
1090
1086
1081
1076
1071
1065
1060
1054
1049
1044
1039
1034
1030
1026
1020
1018
1014
1010
1006
1004
1000
998
995
992
989
987
985
983
981
979
977
976
975
975
974
974
975
975
977
978
980
982
984
987
990
993
997
1000
1006
1010
1016
1022
1027
1033
1040
1046
1052
1058
1064
1070
1076
1081
1086
1091
1095
1099
1103
1106
1109
1112
1115
1118
1120
1122
1124
1126
1128
1130
1131
1133
1135
1136
1138
1140
1142
1143
1145
1147
1149
1150
1151
1152
1153
1153
1153
1153
1152
1151
1149
1146
1143
1140
1135
1131
1126
1120
1114
1107
1100
1092
1085
1077
1069
1061
1054
1046
1039
1033
1027
1022
1018
1014
1012
1010
1010
1010
1012
1014
1018
1022
1028
1033
1040
1047
1054
1062
1070
1079
1087
1096
1105
1113
1121
1130
1138
1146
1153
1161
1168
1175
1181
1187
1194
1200
1205
1211
1216
1222
1227
1233
1238
1243
1249
1254
1259
1264
1269
1273
1277
1281
1283
1285
1285
1285
1283
1280
1275
1269
1262
1252
1242
1229
1215
1200
1183
1165
1146
1125
1104
1081
1058
1034
1008
984
959
933
907
881
854
828
801
775
748
721
694
667
640
612
584
555
527
497
468
438
407
377
346
315
285
255
225
196
167
140
114
89
66
44
24
6
-10
-25
-38
-49
-59
-67
-73
-78
-81
-84
-84
-84
-83
-81
-79
-75
-72
-67
-63
-59
-54
-50
-47
-43
-41
-39
-38
-37
-38
-40
-43
-46
-51
-57
-64
-72
-81
-90
-100
-112
-123
-136
-149
-163
-178
-193
-208
-224
-241
-257
-275
-292
-310
-327
-345
-362
-379
-395
-411
-426
-440
-452
-464
-474
-484
-492
-498
-504
-508
-511
-514
-516
-517
-517
-518
-518
-517
-517
-517
-517
-517
-518
-519
-521
-523
-526
-529
-533
-538
-544
-550
-558
-566
-575
-584
-595
-606
-617
-630
-643
-656
-671
-685
-700
-715
-730
-746
-761
-776
-790
-804
-818
-831
-844
-855
-867
-878
-888
-898
-908
-917
-927
-935
-944
-953
-961
-969
-976
-984
-990
-997
-1002
-1006
-1010
-1014
-1018
-1018
-1020
-1020
-1020
-1020
-1018
-1016
-1014
-1012
-1008
-1006
-1004
-1000
-998
-996
-993
-991
-988
-985
-982
-978
-974
-970
-965
-959
-953
-946
-938
-929
-919
-908
-897
-885
-872
-858
-843
-828
-813
-797
-780
-763
-746
-729
-711
-694
-676
-658
-641
-623
-605
-588
-571
-554
-537
-520
-504
-487
-471
-454
-437
-421
-404
-387
-370
-352
-334
-316
-298
-279
-260
-240
-220
-200
-179
-158
-137
-116
-94
-72
-50
-28
-6
16
38
59
81
101
122
142
161
180
199
217
235
253
271
288
306
323
341
359
378
397
416
436
456
476
497
519
541
563
585
607
630
652
675
697
719
741
763
784
805
825
846
866
885
904
923
942
960
978
996
1014
1032
1050
1068
1086
1103
1121
1139
1157
1175
1194
1212
1230
1248
1266
1284
1301
1318
1334
1349
1364
1378
1391
1404
1415
1426
1435
1444
1453
1460
1467
1473
1479
1485
1490
1494
1498
1502
1506
1509
1512
1515
1517
1519
1521
1522
1523
1523
1523
1523
1522
1521
1519
1518
1516
1513
1511
1509
1506
1504
1502
1501
1499
1498
1497
1497
1497
1498
1499
1501
1503
1505
1507
1510
1513
1515
1518
1521
1524
1526
1529
1531
1533
1535
1537
1538
1539
1540
1541
1541
1540
1540
1539
1538
1536
1534
1533
1530
1528
1526
1524
1522
1520
1518
1517
1515
1515
1514
1514
1514
1515
1516
1518
1520
1522
1525
1528
1531
1536
1540
1545
1550
1556
1562
1568
1574
1581
1587
1594
1601
1607
1614
1621
1628
1635
1642
1649
1656
1663
1671
1678
1685
1693
1700
1708
1715
1723
1731
1738
1746
1753
1760
1768
1775
1781
1788
1794
1800
1805
1810
1814
1819
1822
1825
1828
1830
1832
1833
1834
1835
1834
1834
1833
1831
1829
1826
1824
1820
1817
1813
1808
1804
1800
1795
1791
1787
1782
1778
1775
1771
1767
1764
1761
1759
1756
1754
1752
1750
1748
1746
1745
1743
1742
1740
1739
1737
1735
1733
1731
1729
1727
1724
1721
1718
1715
1711
1708
1704
1699
1695
1690
1685
1679
1672
1666
1658
1650
1641
1631
1620
1608
1595
1581
1565
1549
1532
1513
1493
1473
1451
1429
1405
1382
1357
1332
1307
1282
1256
1231
1206
1181
1156
1132
1108
1085
1062
1039
1016
996
974
954
933
913
892
873
853
833
814
794
775
756
736
717
698
679
660
641
622
603
584
564
545
526
506
486
465
444
423
400
378
354
330
305
280
254
227
200
172
144
116
87
59
31
3
-25
-52
-79
-105
-130
-154
-178
-200
-222
-243
-262
-282
-300
-318
-336
-353
-369
-386
-402
-419
-435
-451
-468
-485
-502
-519
-537
-554
-573
-591
-609
-628
-647
-666
-685
-705
-724
-744
-764
-784
-803
-823
-842
-861
-879
-897
-914
-931
-946
-960
-973
-985
-996
-1004
-1012
-1018
-1022
-1025
-1027
-1027
-1026
-1024
-1020
-1014
-1008
-1002
-995
-986
-977
-967
-957
-946
-935
-924
-912
-901
-889
-878
-866
-855
-844
-833
-822
-811
-800
-789
-778
-767
-756
-745
-733
-722
-710
-699
-688
-677
-666
-656
-646
-637
-628
-620
-613
-607
-601
-597
-594
-591
-590
-589
-590
-592
-595
-598
-603
-609
-616
-623
-632
-641
-650
-661
-672
-683
-695
-707
-719
-732
-745
-757
-770
-782
-795
-807
-819
-830
-841
-851
-861
-870
-878
-885
-891
-896
-900
-904
-906
-907
-907
-906
-904
-901
-898
-894
-890
-885
-880
-874
-868
-863
-857
-852
-846
-841
-836
-832
-828
-824
-821
-818
-816
-815
-813
-813
-813
-814
-815
-817
-819
-821
-825
-828
-832
-836
-841
-845
-850
-856
-861
-867
-872
-878
-884
-889
-895
-900
-905
-910
-915
-919
-923
-926
-929
-932
-934
-936
-937
-938
-939
-939
-939
-939
-939
-938
-938
-937
-936
-935
-934
-933
-932
-931
-930
-929
-928
-927
-926
-926
-925
-924
-924
-924
-923
-923
-923
-923
-923
-924
-925
-926
-927
-929
-931
-933
-936
-939
-942
-946
-950
-954
-958
-963
-967
-972
-977
-982
-987
-992
-997
-1002
-1006
-1012
-1018
-1022
-1028
-1034
-1039
-1044
-1049
-1055
-1060
-1065
-1070
-1076
-1081
-1086
-1092
-1097
-1103
-1109
-1114
-1121
-1127
-1133
-1140
-1146
-1153
-1161
-1168
-1176
-1184
-1192
-1200
-1208
-1217
-1225
-1234
-1242
-1250
-1259
-1267
-1274
-1282
-1289
-1296
-1302
-1308
-1314
-1318
-1323
-1326
-1329
-1332
-1333
-1334
-1334
-1333
-1332
-1329
-1326
-1322
-1316
-1310
-1303
-1295
-1287
-1277
-1266
-1254
-1242
-1228
-1214
-1198
-1182
-1165
-1147
-1128
-1109
-1088
-1067
-1045
-1022
-1000
-976
-951
-926
-900
-874
-847
-819
-791
-762
-732
-701
-670
-639
-606
-573
-539
-505
-470
-434
-398
-361
-324
-286
-247
-208
-169
-129
-89
-49
-8
32
73
113
153
193
233
272
311
350
387
425
462
498
534
569
603
637
670
703
735
766
797
827
856
885
912
939
965
990
1014
1036
1058
1079
1099
1118
1135
1152
1167
1181
1194
1206
1217
1226
1235
1242
1248
1252
1256
1258
1258
1258
1256
1253
1248
1243
1236
1227
1218
1207
1196
1183
1170
1155
1140
1125
1109
1092
1075
1058
1041
1022
1006
989
971
955
938
921
905
889
873
858
842
827
812
798
783
769
755
741
727
714
700
687
674
662
649
637
624
612
600
588
576
564
552
540
528
516
503
491
479
466
454
441
428
416
403
391
378
365
353
341
329
317
306
294
283
273
263
253
243
234
226
217
210
203
196
189
184
178
173
169
165
161
157
154
151
148
145
142
140
137
134
132
129
127
124
121
118
116
113
110
107
105
102
99
97
95
92
90
89
87
86
85
84
83
83
82
83
83
83
84
84
85
86
86
87
88
88
88
88
87
86
85
83
81
78
75
71
67
63
58
52
46
40
33
27
20
12
5
-2
-10
-17
-25
-33
-40
-48
-57
-65
-74
-82
-91
-101
-110
-120
-131
-142
-153
-164
-176
-189
-201
-214
-228
-242
-256
-270
-285
-300
-315
-331
-346
-362
-377
-393
-409
-424
-440
-455
-471
-486
-501
-515
-530
-544
-558
-572
-586
-599
-612
-625
-637
-648
-659
-670
-680
-689
-698
-706
-713
-719
-725
-729
-733
-736
-739
-740
-741
-741
-740
-738
-736
-733
-729
-724
-719
-713
-707
-700
-692
-683
-674
-664
-654
-643
-631
-619
-606
-592
-578
-564
-548
-533
-517
-501
-484
-467
-450
-433
-416
-399
-382
-365
-348
-331
-314
-298
-281
-265
-249
-234
-219
-205
-191
-177
-165
-153
-141
-130
-120
-111
-102
-94
-87
-80
-74
-69
-64
-60
-56
-53
-50
-48
-46
-44
-43
-42
-42
-41
-42
-43
-44
-46
-48
-51
-54
-58
-63
-68
-74
-80
-87
-94
-102
-111
-120
-129
-139
-150
-160
-171
-183
-194
-206
-217
-229
-240
-252
-263
-274
-285
-295
-306
-315
-325
-334
-342
-351
-359
-366
-373
-380
-387
-394
-400
-406
-412
-418
-424
-430
-436
-441
-446
-451
-456
-461
-465
-469
-473
-476
-479
-481
-483
-485
-487
-488
-489
-490
-490
-490
-490
-490
-490
-489
-489
-488
-487
-485
-484
-482
-481
-479
-477
-474
-472
-469
-466
-463
-460
-457
-454
-450
-447
-443
-440
-436
-433
-429
-426
-422
-418
-415
-411
-407
-404
-400
-396
-392
-388
-384
-380
-377
-373
-369
-365
-361
-357
-353
-349
-344
-340
-336
-331
-327
-322
-317
-312
-307
-302
-297
-292
-287
-281
-276
-271
-265
-260
-255
-249
-244
-239
-234
-228
-223
-219
-214
-209
-204
-200
-195
-191
-187
-182
-177
-173
-168
-163
-158
-153
-147
-141
-135
-129
-123
-117
-110
-104
-97
-90
-84
-77
-71
-64
-58
-52
-46
-40
-34
-29
-23
-18
-14
-9
-5
-2
2
5
7
9
11
12
12
13
12
11
10
8
6
4
1
-2
-4
-7
-10
-14
-17
-20
-23
-26
-28
-31
-34
-37
-40
-43
-46
-49
-52
-55
-58
-62
-66
-70
-74
-78
-82
-87
-92
-97
-103
-109
-115
-121
-127
-134
-141
-148
-155
-163
-171
-179
-187
-195
-203
-212
-220
-229
-237
-246
-255
-263
-272
-281
-289
-298
-307
-315
-324
-333
-341
-350
-359
-367
-375
-384
-392
-399
-407
-414
-422
-428
-435
-441
-447
-452
-457
-461
-465
-469
-472
-474
-477
-479
-480
-481
-482
-482
-483
-482
-482
-481
-481
-480
-478
-477
-475
-474
-472
-470
-468
-466
-464
-462
-461
-459
-457
-456
-455
-455
-454
-454
-455
-455
-456
-458
-460
-462
-464
-466
-469
-472
-476
-479
-483
-487
-491
-495
-499
-504
-509
-514
-519
-524
-529
-535
-540
-546
-551
-557
-563
-570
-576
-582
-589
-595
-602
-609
-616
-623
-629
-636
-643
-649
-655
-661
-666
-672
-676
-681
-685
-688
-691
-694
-697
-699
-701
-702
-703
-704
-705
-706
-706
-706
-706
-706
-705
-705
-704
-703
-701
-699
-697
-695
-692
-689
-685
-681
-676
-671
-665
-659
-652
-644
-636
-628
-618
-609
-599
-588
-578
-566
-555
-544
-532
-521
-509
-498
-487
-475
-465
-454
-444
-434
-424
-414
-405
-396
-387
-379
-370
-362
-353
-345
-337
-329
-321
-313
-305
-297
-289
-281
-273
-265
-257
-250
-242
-234
-227
-219
-212
-204
-196
-189
-181
-173
-165
-158
-150
-142
-135
-127
-119
-112
-104
-96
-89
-81
-74
-66
-58
-51
-43
-35
-28
-20
-13
-5
2
9
16
23
30
37
43
50
57
63
70
76
82
89
95
102
108
114
120
127
133
139
145
150
156
161
166
171
175
180
183
187
190
192
195
197
199
200
202
203
204
205
207
208
209
210
212
213
215
217
219
221
223
226
228
231
234
236
240
243
246
249
253
257
260
264
267
271
274
278
281
284
287
289
291
293
294
295
296
296
295
295
293
291
289
287
284
281
277
274
270
266
262
257
253
249
245
241
238
234
231
228
225
223
221
219
218
217
217
217
218
219
221
223
225
228
231
235
239
244
249
254
259
265
271
277
283
289
295
301
308
314
319
325
331
336
341
345
350
354
358
361
365
368
370
373
375
377
379
381
383
384
386
387
389
390
391
392
393
394
395
396
397
397
398
399
399
399
400
400
400
400
400
400
399
399
399
398
398
397
397
396
395
393
392
390
388
386
384
381
378
375
372
368
364
361
357
352
348
344
340
336
331
327
323
319
315
311
308
304
301
298
295
292
289
287
285
283
281
279
277
275
274
272
270
268
266
264
261
258
255
252
248
244
240
236
231
226
221
215
210
204
198
192
186
179
173
166
159
152
146
139
132
125
118
111
104
97
90
83
77
70
63
56
50
43
36
30
23
16
9
2
-4
-11
-18
-25
-32
-40
-47
-54
-61
-69
-76
-84
-92
-100
-108
-116
-125
-133
-142
-151
-160
-168
-177
-186
-195
-204
-213
-222
-230
-239
-247
-255
-263
-271
-279
-287
-294
-302
-309
-316
-323
-329
-336
-342
-349
-355
-361
-366
-372
-377
-383
-388
-393
-398
-402
-406
-411
-415
-419
-422
-426
-429
-433
-436
-439
-443
-446
-449
-452
-455
-458
-461
-464
-466
-468
-471
-473
-474
-476
-477
-479
-480
-481
-481
-482
-482
-482
-482
-482
-481
-481
-480
-479
-479
-477
-476
-475
-473
-472
-470
-468
-467
-465
-463
-462
-460
-459
-458
-457
-456
-455
-455
-454
-454
-454
-454
-455
-455
-456
-456
-457
-458
-459
-460
-461
-462
-463
-463
-464
-465
-466
-466
-467
-468
-468
-469
-469
-469
-470
-470
-470
-470
-471
-471
-471
-471
-471
-471
-471
-472
-472
-473
-473
-474
-475
-476
-477
-478
-480
-482
-484
-485
-488
-490
-492
-494
-497
-499
-502
-504
-506
-509
-511
-513
-515
-517
-519
-521
-523
-525
-526
-528
-529
-531
-532
-533
-534
-536
-537
-537
-538
-539
-539
-540
-540
-540
-540
-539
-539
-538
-538
-537
-535
-534
-533
-531
-530
-528
-526
-524
-522
-520
-518
-517
-515
-513
-512
-510
-509
-508
-508
-507
-507
-506
-507
-507
-508
-509
-510
-512
-515
-517
-520
-524
-528
-532
-537
-542
-548
-554
-560
-566
-573
-580
-587
-593
-600
-607
-614
-621
-627
-634
-640
-646
-652
-657
-662
-667
-672
-676
-680
-683
-687
-689
-692
-694
-696
-697
-698
-699
-699
-700
-700
-700
-699
-699
-698
-697
-696
-695
-694
-693
-692
-690
-689
-688
-687
-686
-684
-683
-682
-681
-679
-677
-676
-674
-672
-669
-666
-663
-660
-656
-652
-648
-643
-637
-631
-625
-618
-611
-603
-594
-585
-576
-566
-555
-545
-534
-523
-511
-500
-488
-476
-464
-452
-439
-427
-414
-401
-388
-375
-362
-348
-335
-321
-307
-293
-279
-265
-251
-237
-222
-208
-194
-179
-165
-151
-137
-123
-110
-96
-83
-70
-58
-46
-34
-22
-11
0
11
21
31
40
49
58
67
75
83
91
99
106
114
121
129
136
144
151
159
166
174
182
189
197
205
212
220
227
234
241
247
254
260
265
270
275
278
282
285
287
288
289
289
289
288
286
284
281
278
274
270
265
260
254
247
241
233
226
217
209
200
191
181
171
161
150
139
128
117
105
93
81
69
57
45
32
19
7
-6
-19
-31
-44
-57
-69
-82
-95
-107
-120
-132
-145
-157
-169
-182
-194
-206
-219
-231
-243
-255
-267
-279
-291
-303
-315
-327
-338
-350
-361
-372
-383
-394
-404
-414
-424
-433
-442
-450
-458
-465
-472
-479
-485
-491
-496
-500
-505
-509
-512
-515
-518
-521
-523
-525
-527
-529
-530
-532
-533
-534
-535
-535
-535
-536
-536
-536
-536
-535
-535
-534
-533
-532
-531
-530
-528
-527
-525
-523
-522
-520
-518
-515
-513
-511
-508
-506
-503
-501
-498
-495
-493
-490
-488
-485
-483
-480
-478
-475
-473
-471
-468
-466
-464
-462
-460
-459
-457
-455
-454
-452
-450
-449
-448
-446
-445
-444
-443
-442
-441
-441
-440
-439
-438
-438
-437
-436
-435
-434
-432
-431
-429
-427
-425
-423
-421
-418
-415
-412
-409
-405
-401
-397
-393
-388
-384
-379
-373
-368
-362
-356
-350
-344
-338
-331
-325
-319
-312
-306
-300
-294
-288
-282
-276
-271
-265
-260
-256
-251
-246
-242
-238
-233
-229
-225
-221
-216
-212
-207
-202
-197
-191
-185
-180
-173
-167
-160
-153
-146
-139
-132
-124
-116
-109
-101
-93
-85
-78
-70
-63
-56
-49
-42
-35
-28
-22
-16
-10
-4
2
8
14
19
25
31
37
42
48
54
59
65
71
76
82
87
93
99
105
110
116
122
128
134
140
146
152
157
163
169
175
181
186
192
197
202
207
212
217
222
227
231
236
241
246
251
256
261
266
271
277
282
288
293
299
305
310
316
321
327
333
338
344
349
354
360
365
370
376
381
386
391
396
401
406
411
415
420
424
429
433
437
442
446
450
453
457
461
464
468
471
474
477
480
483
486
489
492
494
497
500
503
506
508
511
514
517
519
522
525
527
530
533
535
538
540
542
545
547
549
551
553
555
556
558
560
561
562
564
565
566
567
568
569
570
572
573
574
575
576
577
578
579
580
581
582
583
584
585
585
586
587
588
588
589
589
590
591
592
592
593
594
595
596
598
599
600
602
603
605
607
609
611
614
616
619
621
624
627
631
634
638
641
645
649
653
658
662
666
671
675
680
685
689
694
699
704
708
713
718
723
728
733
738
744
749
754
760
765
771
777
782
788
794
800
806
811
817
822
828
833
838
843
848
853
857
862
866
870
874
877
880
883
886
888
890
892
893
894
894
894
894
893
892
890
888
886
883
880
877
873
869
865
861
856
851
846
841
835
830
824
818
812
806
800
794
787
781
774
768
761
754
747
740
733
726
719
712
704
697
689
681
673
665
657
648
639
630
621
612
602
592
582
572
562
551
540
529
518
507
496
484
473
462
451
439
428
418
407
396
386
376
366
356
346
337
328
319
310
302
294
286
279
272
265
259
253
247
242
237
232
228
223
220
216
213
210
207
205
203
201
199
198
197
197
196
196
197
197
198
200
201
203
206
208
211
214
218
221
226
230
235
240
245
251
257
263
270
276
284
291
299
307
315
323
331
339
347
355
364
372
379
387
395
402
409
416
422
429
435
441
447
452
458
463
469
474
479
484
488
493
498
503
507
512
517
521
526
530
534
539
543
547
552
556
560
564
568
572
576
580
584
588
593
597
601
605
610
614
619
624
629
634
639
645
650
656
662
668
675
682
688
695
702
709
717
724
732
739
747
754
762
769
776
784
791
798
805
812
818
824
831
836
842
848
853
858
863
867
872
876
880
884
888
892
896
899
903
906
910
913
916
919
921
924
927
929
931
933
935
936
937
938
939
939
939
938
938
936
935
933
931
928
925
922
919
915
912
908
903
899
895
890
885
880
875
869
864
858
853
847
841
835
828
822
816
810
803
797
791
784
778
771
765
758
752
745
739
732
726
720
713
707
701
694
688
682
676
670
664
659
653
647
641
636
630
624
618
612
607
601
595
589
583
577
571
565
559
553
547
541
535
529
523
516
510
504
498
492
485
479
472
466
459
452
445
438
431
423
416
408
400
392
384
376
368
360
352
344
336
328
320
312
304
297
289
282
274
267
260
253
247
240
233
227
221
215
208
203
197
191
185
180
174
168
163
157
152
146
141
135
129
123
117
111
105
99
93
87
81
75
69
63
57
51
46
40
35
30
25
20
16
12
8
4
0
-3
-6
-9
-12
-15
-17
-19
-21
-23
-24
-26
-27
-29
-30
-30
-31
-32
-32
-33
-33
-33
-33
-33
-32
-31
-31
-30
-28
-27
-25
-24
-22
-19
-17
-14
-11
-8
-4
0
4
8
12
16
21
25
30
35
39
44
48
53
58
62
67
71
75
80
84
88
93
97
101
106
110
114
119
123
127
132
136
141
145
150
154
159
163
168
173
177
182
187
191
196
201
205
210
215
219
224
229
233
238
242
247
251
256
260
264
269
273
278
282
286
290
294
298
302
306
309
313
316
319
322
325
328
330
332
335
337
338
340
342
343
344
346
347
348
349
350
351
351
352
353
353
353
353
353
352
352
351
350
348
347
345
343
340
338
335
333
330
327
324
321
317
314
311
307
304
301
297
294
290
287
283
279
276
272
268
263
259
254
250
245
240
234
229
223
217
211
204
198
191
185
178
171
164
157
150
143
136
129
122
115
108
102
95
88
81
74
67
60
54
47
40
34
27
21
14
8
2
-4
-10
-15
-21
-26
-32
-37
-42
-46
-51
-56
-60
-64
-68
-72
-75
-79
-82
-85
-88
-90
-92
-94
-96
-97
-99
-100
-100
-101
-101
-100
-100
-99
-99
-97
-96
-95
-93
-91
-89
-87
-85
-83
-80
-78
-75
-73
-71
-68
-66
-64
-62
-59
-57
-55
-53
-51
-50
-48
-46
-44
-43
-41
-40
-39
-37
-36
-35
-34
-33
-32
-31
-30
-29
-29
-28
-27
-27
-27
-27
-27
-27
-27
-28
-28
-29
-30
-32
-33
-35
-36
-38
-40
-42
-45
-47
-49
-51
-53
-55
-58
-59
-61
-63
-65
-66
-68
-69
-70
-71
-72
-72
-73
-73
-73
-73
-73
-73
-73
-73
-73
-73
-73
-73
-73
-73
-73
-73
-73
-73
-74
-74
-74
-75
-75
-75
-76
-76
-76
-77
-77
-77
-77
-78
-78
-78
-77
-77
-77
-77
-77
-76
-76
-75
-75
-75
-74
-74
-73
-73
-73
-73
-72
-72
-72
-72
-72
-72
-71
-71
-71
-71
-71
-70
-70
-69
-69
-68
-67
-66
-65
-64
-62
-61
-59
-58
-56
-55
-53
-51
-49
-48
-46
-44
-43
-41
-40
-38
-37
-36
-35
-34
-33
-32
-32
-32
-31
-31
-31
-31
-32
-32
-33
-33
-34
-35
-35
-36
-37
-38
-39
-40
-41
-42
-42
-43
-44
-44
-45
-45
-45
-45
-45
-45
-45
-44
-44
-43
-42
-41
-40
-39
-37
-36
-34
-33
-31
-29
-27
-26
-24
-22
-19
-17
-15
-13
-10
-7
-5
-2
1
4
7
11
14
17
21
24
28
32
35
39
43
47
50
54
58
62
65
69
72
76
79
83
86
89
92
95
98
101
103
106
109
112
114
117
120
123
126
128
131
134
137
140
142
145
148
151
154
157
161
164
167
171
174
178
181
185
189
193
197
201
205
210
214
219
224
229
234
239
244
249
255
261
267
273
279
286
293
299
306
313
320
328
335
342
350
357
364
372
379
386
394
401
408
415
422
429
436
442
449
456
462
469
475
482
488
494
500
506
513
519
524
530
536
541
547
552
557
561
566
570
574
578
582
585
589
592
595
598
600
603
605
608
610
612
614
616
617
619
621
622
624
625
626
628
629
630
631
632
632
633
633
633
633
633
633
632
631
629
628
626
624
621
618
615
611
607
603
599
594
589
583
578
572
565
559
552
545
538
530
523
515
507
499
490
482
473
465
456
447
438
430
421
412
403
394
385
376
367
359
350
341
333
324
315
307
298
290
281
273
264
256
247
239
230
222
213
204
196
187
178
169
161
152
143
135
126
118
109
101
92
84
76
67
59
52
44
36
29
21
14
7
0
-7
-14
-21
-27
-34
-40
-46
-52
-59
-64
-70
-76
-82
-87
-93
-98
-103
-108
-113
-118
-123
-128
-132
-137
-142
-146
-150
-154
-158
-162
-166
-170
-173
-176
-179
-182
-185
-188
-190
-192
-194
-196
-198
-199
-200
-202
-203
-204
-204
-205
-205
-206
-206
-206
-206
-205
-205
-205
-204
-203
-202
-201
-200
-198
-197
-196
-194
-193
-191
-190
-188
-187
-185
-184
-183
-182
-181
-180
-179
-178
-177
-176
-175
-174
-173
-173
-172
-171
-170
-169
-168
-167
-166
-165
-164
-163
-161
-160
-159
-158
-157
-156
-155
-154
-153
-153
-152
-152
-151
-151
-151
-150
-150
-150
-150
-150
-150
-150
-150
-149
-149
-149
-148
-148
-147
-146
-146
-145
-143
-142
-141
-139
-138
-136
-134
-132
-130
-128
-125
-123
-120
-118
-115
-112
-110
-107
-104
-101
-98
-95
-92
-89
-85
-82
-78
-75
-71
-67
-63
-59
-55
-50
-46
-41
-36
-31
-26
-21
-15
-9
-4
2
9
15
21
28
35
42
49
56
63
70
77
84
92
99
106
113
120
127
134
141
148
155
162
168
175
181
188
194
200
207
213
219
225
231
237
243
248
254
260
265
271
276
281
286
291
296
300
304
308
312
316
320
323
326
329
332
335
337
339
341
343
344
346
347
348
349
350
350
351
351
351
352
352
352
352
352
352
352
352
352
352
352
352
353
353
353
353
353
354
354
354
354
355
355
355
356
356
356
356
356
356
356
356
355
355
355
354
353
353
352
351
350
350
349
348
347
346
345
343
342
341
340
339
337
336
334
333
331
330
328
326
324
322
320
318
315
313
310
307
304
301
298
295
292
288
285
281
278
274
271
267
263
260
256
252
248
244
240
237
233
229
225
221
217
214
210
206
202
198
194
191
187
183
179
176
172
168
165
161
157
154
150
147
143
140
136
132
129
125
122
118
115
111
107
104
100
96
93
89
86
82
78
75
71
68
64
61
57
53
50
46
42
38
34
30
26
22
18
14
10
5
1
-3
-8
-12
-16
-20
-25
-29
-33
-37
-40
-44
-48
-51
-54
-57
-60
-63
-66
-68
-71
-73
-75
-77
-79
-81
-83
-85
-86
-88
-90
-91
-93
-94
-95
-97
-98
-99
-100
-101
-102
-103
-104
-105
-106
-107
-108
-109
-110
-112
-113
-114
-115
-117
-118
-119
-121
-122
-124
-125
-126
-128
-129
-130
-132
-133
-134
-135
-136
-138
-139
-140
-141
-142
-143
-144
-145
-146
-147
-148
-148
-149
-150
-150
-151
-151
-152
-152
-152
-152
-151
-151
-150
-149
-148
-147
-146
-144
-143
-141
-139
-137
-135
-133
-130
-127
-125
-122
-119
-116
-112
-108
-105
-100
-96
-92
-87
-82
-76
-71
-65
-59
-52
-46
-39
-32
-25
-17
-9
-1
7
15
23
32
41
50
59
68
78
87
97
107
117
127
138
148
159
170
180
191
202
213
223
234
245
255
265
275
285
295
304
313
322
331
339
348
355
363
370
377
384
390
396
402
408
413
419
424
428
433
437
441
445
449
452
456
459
462
465
467
469
472
473
475
476
477
478
479
479
479
479
478
477
476
475
474
472
470
468
466
463
460
458
455
451
448
445
441
437
434
430
426
421
417
413
408
404
399
395
390
385
381
376
371
366
361
357
352
347
342
337
332
326
321
316
310
305
299
294
288
282
276
270
264
258
251
245
238
232
225
218
212
205
198
190
183
176
168
161
153
145
137
129
121
113
105
96
88
79
71
62
53
45
36
27
19
10
2
-7
-15
-23
-31
-39
-47
-55
-62
-70
-77
-84
-91
-98
-104
-111
-117
-124
-130
-136
-142
-148
-154
-159
-165
-170
-175
-180
-185
-190
-195
-200
-204
-209
-213
-217
-221
-225
-229
-232
-236
-239
-243
-246
-250
-253
-257
-260
-263
-267
-270
-273
-277
-280
-283
-286
-289
-292
-295
-298
-301
-304
-306
-309
-311
-314
-316
-318
-321
-323
-325
-327
-329
-331
-333
-335
-338
-340
-342
-344
-346
-349
-351
-353
-356
-358
-361
-363
-365
-368
-370
-372
-375
-377
-379
-381
-383
-385
-386
-388
-389
-391
-392
-393
-394
-396
-397
-397
-398
-399
-400
-401
-401
-402
-403
-403
-404
-404
-404
-405
-405
-405
-406
-406
-406
-407
-407
-407
-407
-407
-408
-408
-408
-408
-407
-407
-407
-407
-406
-405
-404
-403
-402
-401
-399
-398
-396
-394
-391
-389
-386
-383
-380
-377
-374
-370
-367
-363
-360
-356
-352
-348
-344
-341
-337
-333
-330
-326
-323
-319
-316
-313
-310
-307
-304
-301
-298
-295
-292
-289
-286
-283
-280
-277
-274
-271
-267
-264
-261
-257
-254
-251
-247
-244
-240
-236
-233
-229
-226
-222
-219
-215
-212
-208
-205
-202
-198
-195
-192
-189
-185
-182
-179
-176
-173
-170
-166
-163
-160
-156
-153
-150
-146
-143
-139
-136
-133
-129
-126
-123
-120
-117
-114
-111
-108
-105
-102
-99
-96
-93
-90
-87
-83
-80
-77
-74
-71
-67
-64
-61
-57
-54
-51
-48
-44
-41
-38
-35
-32
-29
-26
-23
-20
-17
-14
-11
-8
-4
-1
2
5
8
12
15
19
22
26
29
33
37
41
45
49
53
57
62
66
70
75
79
84
89
93
98
102
107
112
116
121
126
130
135
139
144
148
153
157
161
166
170
174
177
181
185
189
192
196
199
202
206
209
212
215
219
222
225
228
231
234
237
240
243
246
248
251
254
256
259
262
264
267
269
271
274
276
278
280
281
283
285
286
287
288
289
289
290
290
290
289
289
288
287
286
284
283
281
279
277
275
272
269
266
263
260
257
254
250
247
243
239
236
232
228
224
220
216
212
208
204
200
196
191
187
183
179
175
171
166
162
158
154
150
147
143
139
135
132
128
125
122
118
115
112
109
106
103
100
97
94
92
89
86
83
80
78
75
72
69
67
64
61
58
55
52
49
46
43
40
37
34
30
27
23
20
16
13
9
5
1
-3
-7
-12
-16
-20
-25
-29
-34
-38
-43
-47
-52
-56
-60
-65
-69
-73
-77
-81
-86
-89
-93
-97
-101
-104
-108
-111
-115
-118
-121
-124
-127
-129
-132
-135
-137
-139
-142
-144
-146
-147
-149
-151
-153
-154
-155
-157
-158
-159
-160
-161
-162
-162
-163
-164
-164
-164
-164
-164
-164
-164
-164
-164
-163
-163
-162
-162
-161
-160
-159
-158
-158
-157
-156
-155
-154
-153
-152
-151
-150
-149
-148
-148
-147
-146
-145
-144
-143
-143
-142
-141
-140
-139
-138
-137
-136
-135
-134
-133
-132
-131
-130
-129
-127
-126
-125
-124
-123
-122
-121
-120
-119
-117
-116
-115
-114
-113
-112
-111
-110
-108
-107
-106
-104
-103
-101
-100
-98
-96
-94
-92
-90
-88
-85
-83
-80
-78
-75
-72
-68
-65
-62
-58
-55
-51
-47
-43
-38
-34
-29
-25
-20
-15
-10
-5
0
5
11
16
22
28
33
39
45
51
56
62
68
73
79
85
90
96
101
107
112
117
123
128
133
138
143
148
152
157
161
166
170
174
178
182
186
189
193
196
199
202
204
207
209
211
213
215
217
219
221
222
224
225
227
228
230
231
232
233
235
236
237
238
239
240
242
243
244
245
245
246
247
248
249
250
251
251
252
253
254
254
255
256
257
257
258
259
260
260
261
262
263
263
264
264
265
265
266
266
266
267
267
267
267
267
267
267
267
267
266
266
266
266
265
265
265
264
264
264
263
263
263
262
262
261
261
261
260
259
259
258
258
257
256
255
254
253
252
251
249
248
246
245
243
242
240
238
236
235
233
231
229
227
225
223
221
219
216
214
212
210
207
205
202
200
197
195
192
190
187
185
182
179
177
174
171
168
165
163
160
157
154
151
148
146
143
140
138
135
132
130
128
125
123
121
119
117
115
114
112
111
109
108
107
106
105
104
103
102
101
100
100
99
98
97
96
95
94
93
92
91
90
89
87
86
84
83
81
80
78
76
74
73
71
69
67
65
63
61
59
57
54
52
50
47
45
42
40
37
34
32
29
27
24
21
19
16
13
11
8
6
3
1
-2
-4
-6
-9
-11
-13
-15
-17
-19
-21
-22
-24
-26
-28
-29
-31
-32
-34
-35
-36
-38
-39
-40
-42
-43
-44
-45
-46
-47
-47
-48
-48
-49
-49
-49
-49
-49
-48
-48
-47
-46
-45
-44
-43
-41
-40
-38
-36
-34
-32
-30
-28
-25
-23
-21
-18
-15
-12
-10
-7
-4
0
3
6
10
13
17
21
24
28
32
36
40
44
48
52
57
61
65
69
74
78
82
87
91
96
100
104
109
113
118
122
126
131
135
139
144
148
152
156
160
164
168
171
175
179
183
186
189
193
196
199
202
205
208
211
214
216
219
221
223
225
227
229
231
232
234
235
237
238
239
240
241
242
243
244
244
245
246
246
247
248
248
249
249
250
250
250
251
251
251
251
252
252
252
252
251
251
251
250
250
249
249
248
247
246
246
245
244
243
242
241
240
239
238
237
236
235
234
233
232
231
230
229
228
227
226
225
224
223
221
220
219
218
216
215
213
212
211
209
208
207
205
204
203
201
200
199
198
197
196
195
194
193
192
192
191
191
190
189
189
188
188
188
187
187
186
186
185
185
185
184
184
183
183
182
182
181
181
180
180
180
179
179
178
178
177
177
176
175
175
174
173
172
172
171
170
169
168
167
166
165
164
162
161
160
159
158
157
155
154
153
151
150
148
147
145
143
142
140
138
136
134
131
129
127
124
122
119
116
114
111
108
105
102
100
97
94
91
88
85
82
78
75
72
69
65
62
58
55
51
47
43
39
35
31
27
22
18
14
9
5
0
-4
-9
-13
-18
-23
-27
-32
-36
-41
-46
-50
-55
-60
-64
-69
-73
-78
-82
-87
-91
-95
-99
-103
-107
-111
-114
-118
-121
-124
-127
-130
-133
-135
-138
-140
-143
-145
-147
-149
-151
-152
-154
-155
-156
-157
-157
-158
-158
-158
-158
-157
-157
-156
-155
-153
-152
-150
-148
-146
-144
-142
-140
-137
-135
-132
-129
-127
-124
-121
-118
-115
-112
-109
-106
-103
-100
-96
-93
-90
-86
-83
-79
-76
-72
-68
-65
-61
-57
-53
-49
-45
-41
-37
-33
-29
-25
-21
-17
-13
-9
-5
-1
3
7
10
14
18
22
26
29
33
37
40
44
47
51
54
58
61
64
67
71
74
77
80
84
87
90
93
97
100
103
107
110
113
117
120
123
127
130
133
136
139
142
145
147
150
153
155
158
160
162
165
167
169
171
173
175
176
178
180
181
183
184
185
186
187
188
189
190
190
191
191
191
192
192
192
191
191
191
190
190
189
188
187
186
185
184
182
181
179
177
175
173
171
169
167
165
162
160
158
155
153
150
148
145
143
140
138
135
133
130
128
125
123
120
117
115
112
110
107
105
102
100
97
95
92
90
88
85
83
81
79
77
75
73
72
70
69
67
66
65
64
64
63
63
62
62
62
61
61
61
61
61
61
61
61
61
61
61
61
61
61
60
60
60
60
60
60
60
60
59
59
59
59
59
59
58
58
58
58
58
58
58
58
58
58
58
57
57
57
56
56
55
54
53
52
51
50
48
47
45
43
41
39
37
35
32
30
27
24
21
18
15
11
8
4
1
-3
-7
-11
-15
-19
-23
-27
-32
-36
-40
-44
-48
-52
-56
-60
-64
-67
-71
-74
-77
-81
-84
-87
-90
-92
-95
-97
-100
-102
-104
-106
-108
-110
-112
-113
-115
-116
-117
-119
-120
-121
-122
-122
-123
-124
-124
-124
-125
-125
-125
-125
-125
-124
-124
-124
-123
-122
-122
-121
-120
-119
-118
-117
-116
-115
-114
-113
-112
-110
-109
-108
-107
-106
-104
-103
-102
-101
-100
-99
-98
-97
-96
-95
-94
-93
-93
-92
-91
-90
-89
-88
-87
-86
-84
-83
-82
-81
-79
-78
-76
-75
-73
-72
-70
-68
-67
-65
-63
-61
-59
-58
-56
-54
-52
-50
-48
-46
-44
-42
-40
-38
-35
-33
-31
-28
-26
-24
-21
-18
-16
-13
-10
-7
-4
-2
1
4
7
10
13
16
19
22
24
27
30
32
35
38
40
43
45
48
50
53
55
58
60
62
65
67
70
72
75
77
80
82
84
87
89
92
94
97
99
102
104
106
109
111
113
116
118
120
122
124
126
128
130
133
135
137
138
140
142
144
146
148
150
152
154
155
157
159
161
162
164
165
167
168
170
171
173
174
175
176
177
178
179
180
181
182
183
184
185
185
186
187
187
188
188
189
190
190
191
191
192
193
193
194
194
195
196
196
197
198
199
199
200
201
202
203
203
204
205
206
207
207
208
209
210
211
211
212
213
213
214
215
215
216
216
217
217
217
217
217
217
217
217
216
216
215
215
214
213
212
211
210
209
207
206
204
203
201
199
197
195
193
191
189
186
184
181
178
175
172
169
166
163
160
157
154
150
147
144
141
137
134
131
127
124
121
117
114
111
107
104
101
98
95
91
88
85
82
79
76
73
70
67
64
61
58
56
53
50
47
45
42
39
37
34
32
30
27
25
23
21
19
16
15
13
11
9
8
6
5
3
2
1
0
-1
-2
-3
-4
-4
-5
-5
-6
-6
-6
-6
-6
-6
-6
-6
-5
-5
-5
-4
-3
-2
-2
-1
1
2
3
5
6
8
10
12
14
16
18
21
23
26
29
32
35
38
41
44
47
51
54
57
61
64
68
71
74
78
81
85
88
92
95
98
102
105
108
112
115
118
122
125
129
132
135
139
142
146
149
153
156
160
163
167
170
174
178
181
185
189
193
196
200
204
208
211
215
219
223
227
231
234
238
242
246
249
253
256
260
263
266
269
272
275
278
280
282
284
286
288
290
291
293
294
295
296
297
298
299
300
301
302
302
303
304
305
305
306
306
307
308
308
309
309
309
309
309
309
309
309
309
308
308
307
306
305
304
303
302
301
300
299
298
297
296
294
293
292
291
290
289
287
286
285
283
282
281
279
277
276
274
272
270
268
266
264
262
259
257
254
251
249
246
243
240
237
234
231
228
225
222
219
217
214
211
208
206
203
201
198
196
193
191
189
187
184
182
180
178
176
174
171
169
167
165
163
161
159
157
155
153
150
148
146
144
142
139
137
135
132
130
128
125
123
121
118
116
113
111
108
106
104
101
98
96
93
91
88
86
83
81
78
75
73
70
67
64
62
59
56
53
50
46
43
40
37
33
30
26
22
19
15
11
8
4
0
-3
-7
-11
-15
-18
-22
-26
-29
-33
-36
-40
-43
-46
-50
-53
-56
-60
-63
-66
-69
-73
-76
-79
-82
-86
-89
-93
-96
-100
-103
-107
-111
-115
-119
-122
-126
-130
-135
-139
-143
-147
-151
-155
-159
-163
-167
-171
-175
-179
-183
-187
-190
-194
-197
-201
-204
-207
-211
-214
-217
-220
-223
-225
-228
-231
-233
-236
-238
-240
-242
-245
-246
-248
-250
-252
-253
-255
-256
-258
-259
-260
-261
-262
-262
-263
-264
-264
-265
-265
-265
-265
-265
-265
-264
-264
-263
-263
-262
-261
-260
-258
-257
-256
-254
-253
-251
-249
-248
-246
-244
-242
-240
-238
-236
-234
-232
-230
-228
-226
-224
-222
-220
-218
-216
-214
-212
-209
-207
-205
-203
-200
-198
-195
-193
-190
-188
-185
-182
-180
-177
-174
-172
-169
-166
-163
-160
-158
-155
-152
-149
-147
-144
-142
-139
-137
-135
-133
-130
-128
-127
-125
-123
-121
-120
-118
-116
-115
-114
-112
-111
-109
-108
-107
-105
-104
-103
-101
-100
-99
-98
-96
-95
-94
-92
-91
-89
-88
-87
-85
-84
-83
-81
-80
-79
-78
-76
-75
-74
-73
-72
-71
-70
-69
-68
-68
-67
-66
-65
-65
-64
-64
-63
-63
-63
-63
-62
-62
-62
-62
-62
-62
-62
-62
-62
-62
-62
-62
-62
-61
-61
-61
-60
-60
-59
-58
-57
-56
-55
-54
-53
-51
-50
-48
-46
-44
-42
-41
-38
-36
-34
-32
-30
-27
-25
-23
-20
-18
-15
-12
-9
-7
-4
-1
2
6
9
12
15
19
22
26
30
33
37
41
45
49
53
57
61
65
69
73
78
82
86
91
95
99
104
108
113
117
121
126
130
134
138
142
146
150
154
158
162
166
170
173
177
180
184
187
190
194
197
200
203
206
209
212
215
218
221
223
226
229
231
234
237
239
241
244
246
248
251
253
255
257
258
260
262
263
265
266
268
269
270
271
272
273
274
275
276
277
277
278
278
279
279
279
280
280
280
280
280
280
280
280
280
280
279
279
279
279
279
278
278
278
278
277
277
277
276
276
276
275
275
274
274
273
273
272
272
271
271
270
270
269
269
268
268
267
267
267
266
266
265
265
265
264
264
264
263
263
262
262
261
261
260
259
258
258
257
256
255
254
253
251
250
249
247
246
244
243
241
239
237
236
234
232
230
228
226
223
221
219
217
215
212
210
208
205
203
200
198
196
193
191
188
186
184
181
179
177
174
172
170
168
166
164
162
160
158
156
154
152
150
148
146
144
143
141
139
137
136
134
132
131
130
128
127
126
125
124
123
122
121
120
120
119
119
119
118
118
118
118
118
118
118
118
118
118
118
119
119
119
120
120
121
121
122
122
123
123
124
124
125
125
125
126
126
127
127
128
128
128
129
129
130
131
131
132
133
134
134
135
136
137
138
139
140
142
143
144
145
146
147
148
150
151
152
153
154
155
156
157
158
159
161
162
163
164
165
166
167
168
169
170
171
173
174
175
176
177
178
179
180
181
182
183
184
186
187
187
188
189
190
191
192
192
193
193
193
194
194
194
194
194
194
194
194
194
194
194
194
194
194
195
195
195
195
195
195
195
195
195
195
195
194
194
194
194
194
193
193
192
192
192
191
191
190
190
189
189
188
188
188
187
187
186
186
185
185
185
184
184
183
183
183
183
182
182
182
182
182
182
182
182
181
181
181
181
181
181
181
181
181
181
180
180
180
179
179
178
178
177
177
176
175
175
174
173
172
171
170
169
168
167
166
164
163
162
160
159
157
155
154
152
150
148
146
144
142
139
137
135
133
131
128
126
124
122
119
117
115
112
110
108
105
103
101
98
96
93
91
88
86
83
81
79
76
74
71
69
67
64
62
60
58
56
54
52
50
48
46
44
42
40
38
36
34
32
30
28
26
24
21
19
17
14
11
9
6
3
0
-3
-6
-9
-13
-16
-20
-23
-26
-30
-33
-37
-40
-44
-47
-51
-54
-57
-61
-64
-67
-70
-73
-76
-79
-82
-85
-87
-90
-93
-95
-98
-100
-102
-105
-107
-109
-111
-113
-114
-116
-118
-119
-120
-121
-123
-124
-124
-125
-126
-126
-127
-127
-127
-127
-127
-127
-127
-126
-126
-125
-125
-124
-123
-122
-122
-121
-120
-119
-118
-117
-116
-115
-114
-113
-112
-111
-110
-109
-108
-106
-105
-104
-103
-102
-101
-100
-99
-97
-96
-95
-94
-93
-91
-90
-89
-87
-86
-85
-83
-82
-80
-79
-78
-76
-75
-73
-71
-70
-68
-66
-65
-63
-61
-59
-57
-55
-53
-51
-48
-46
-44
-41
-39
-36
-34
-31
-28
-26
-23
-20
-17
-14
-11
-9
-6
-3
0
3
6
9
12
15
18
21
24
27
30
33
35
38
41
44
46
49
52
54
57
60
62
64
67
69
72
74
76
79
81
83
85
87
90
92
94
96
98
100
102
104
106
107
109
111
112
114
115
117
118
119
121
122
123
124
125
126
126
127
128
129
129
130
130
131
132
132
133
133
133
134
134
135
135
135
135
136
136
136
136
136
137
137
137
137
137
137
137
137
137
137
137
137
137
136
136
136
136
136
136
136
136
136
136
136
136
136
136
136
136
136
136
136
137
137
137
137
137
138
138
138
138
139
139
140
140
141
141
142
142
143
143
144
144
145
145
145
146
146
146
147
147
147
147
147
148
148
148
148
148
148
148
148
147
147
147
147
147
146
146
145
145
145
144
144
143
143
142
141
141
140
139
139
138
137
137
136
135
135
134
133
133
132
131
130
130
129
128
127
127
126
125
124
124
123
122
122
121
121
120
120
120
120
120
119
119
119
119
120
120
120
120
120
120
120
121
121
121
121
121
122
122
122
122
122
123
123
123
123
123
123
124
124
124
124
124
125
125
125
125
126
126
126
126
127
127
127
128
128
128
128
129
129
129
130
130
130
130
131
131
131
131
132
132
132
133
133
133
134
134
134
135
135
136
137
137
138
139
140
141
141
142
144
145
146
147
148
149
151
152
153
155
156
158
159
161
162
164
165
167
168
170
171
173
175
176
178
179
181
182
184
185
187
188
190
191
193
194
195
197
198
200
201
202
204
205
206
208
209
210
211
212
214
215
216
217
218
219
220
222
223
224
225
226
227
227
228
229
230
231
231
232
233
233
233
234
234
234
235
235
235
235
235
234
234
234
234
233
233
232
232
231
231
230
229
229
228
227
226
225
224
223
222
221
219
218
216
215
213
212
210
208
206
204
202
200
198
196
194
192
189
187
185
182
180
177
175
172
170
167
164
162
159
156
153
151
148
145
142
139
136
134
131
128
125
122
120
117
114
112
109
106
104
101
99
96
94
92
89
87
85
82
80
78
76
74
72
70
68
67
65
63
62
60
59
58
56
55
54
54
53
52
52
51
51
50
50
50
50
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
50
50
50
50
50
50
50
50
51
51
51
50
50
50
50
50
50
51
51
51
51
51
51
51
51
51
51
51
51
52
52
52
52
53
53
53
54
54
55
55
56
57
57
58
58
59
59
60
61
61
62
62
63
63
63
64
64
64
65
65
65
66
66
66
66
66
67
67
67
67
68
68
68
68
68
69
69
69
70
70
70
70
71
71
71
72
72
72
73
73
73
74
74
75
75
76
76
77
77
78
79
79
80
80
81
82
82
83
84
84
85
85
86
86
87
88
88
89
89
90
90
91
91
92
92
93
93
94
94
95
95
96
96
97
97
98
98
99
100
100
101
101
102
103
103
104
104
105
105
106
107
107
108
108
109
109
110
110
110
111
111
112
112
113
113
114
114
115
115
115
116
116
116
116
116
116
116
116
116
116
115
115
114
114
113
112
111
110
109
108
107
106
105
104
103
101
100
98
97
96
94
92
91
89
88
86
84
83
81
79
77
76
74
72
71
69
67
66
64
62
61
59
57
56
54
52
51
49
47
45
44
42
40
38
37
35
33
31
30
28
26
24
23
21
20
18
17
15
14
13
11
10
9
8
7
6
5
4
3
2
1
0
-1
-1
-2
-3
-3
-4
-5
-5
-6
-6
-7
-7
-8
-8
-9
-9
-10
-10
-11
-11
-12
-13
-13
-14
-15
-16
-17
-17
-18
-19
-21
-22
-23
-24
-25
-26
-27
-29
-30
-31
-32
-34
-35
-36
-37
-38
-40
-41
-42
-43
-44
-45
-46
-47
-49
-50
-51
-52
-53
-54
-55
-56
-56
-57
-58
-59
-59
-60
-60
-61
-61
-61
-61
-61
-61
-61
-61
-60
-60
-59
-59
-58
-57
-56
-55
-54
-53
-52
-51
-50
-49
-47
-46
-45
-43
-42
-40
-39
-37
-35
-34
-32
-30
-28
-26
-24
-22
-20
-18
-15
-13
-11
-8
-6
-3
0
2
5
8
11
14
18
21
24
28
31
35
39
42
46
50
54
58
62
66
70
74
78
82
86
90
94
98
102
106
110
114
118
122
126
130
134
137
141
145
149
153
157
161
164
168
172
175
178
182
185
188
191
194
197
199
202
204
207
209
211
213
215
216
218
219
221
222
223
225
226
227
227
228
229
230
230
231
231
232
232
232
232
233
233
233
233
232
232
232
232
231
231
230
229
229
228
227
226
225
224
223
221
220
219
217
216
215
213
212
210
208
207
205
203
202
200
198
196
194
192
190
188
186
184
182
179
177
174
172
169
167
164
162
159
157
154
151
149
146
144
141
139
137
134
132
130
128
126
124
122
120
119
117
115
114
112
111
109
108
107
105
104
103
101
100
99
97
96
95
94
92
91
90
89
87
86
85
84
82
81
80
79
78
77
76
74
73
72
71
70
69
68
67
66
65
64
63
63
62
61
60
59
59
58
57
57
56
56
55
55
54
54
53
53
53
53
52
52
52
52
52
52
52
52
52
52
52
52
53
53
53
53
54
54
54
55
55
56
56
57
58
58
59
60
61
62
63
64
66
67
68
70
71
72
74
75
77
79
80
82
84
85
87
89
90
92
93
95
97
98
100
102
103
105
107
108
110
112
114
115
117
119
121
123
125
126
128
130
132
134
136
137
139
141
143
144
146
147
149
150
151
152
153
154
155
155
156
157
157
157
158
158
158
158
158
158
158
158
157
157
157
156
156
155
155
154
153
153
152
151
150
149
148
148
146
145
144
143
142
141
139
138
136
135
133
132
130
128
127
125
123
121
120
118
116
114
112
111
109
107
105
103
101
99
97
95
93
91
89
87
85
83
82
80
78
76
74
72
71
69
67
66
64
62
61
59
58
56
55
53
52
51
50
48
47
46
45
44
43
42
41
40
39
38
37
37
36
35
35
34
34
33
32
32
32
31
31
30
30
29
29
28
27
27
26
25
24
23
22
21
20
19
18
17
16
14
13
12
10
9
8
6
5
4
3
1
0
-1
-2
-3
-4
-4
-5
-6
-7
-8
-8
-9
-10
-10
-11
-12
-12
-13
-14
-14
-15
-16
-17
-18
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-29
-30
-31
-32
-33
-35
-36
-37
-38
-40
-41
-42
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-56
-57
-58
-58
-59
-59
-60
-60
-60
-60
-60
-60
-60
-60
-60
-60
-60
-59
-59
-58
-58
-57
-56
-55
-54
-53
-52
-51
-50
-49
-48
-46
-45
-44
-43
-41
-40
-39
-37
-36
-35
-33
-32
-31
-30
-29
-28
-26
-25
-24
-23
-22
-21
-20
-19
-18
-17
-16
-15
-14
-13
-12
-11
-10
-9
-8
-7
-6
-5
-4
-3
-2
0
1
2
3
4
5
7
8
9
10
11
12
14
15
16
17
19
20
21
22
23
25
26
27
29
30
31
33
34
36
37
38
40
41
43
44
46
47
49
50
52
53
55
57
58
60
61
63
64
66
68
69
71
73
75
76
78
80
82
84
86
88
90
92
94
96
98
100
102
104
106
109
111
113
115
117
119
121
123
125
127
129
131
133
135
137
139
141
143
145
146
148
150
152
153
155
156
158
159
161
162
164
165
166
167
169
170
171
172
173
173
174
175
176
176
177
177
178
178
179
179
179
179
179
179
179
179
178
178
177
177
176
175
174
173
172
171
170
168
167
165
164
162
160
158
156
154
152
150
148
146
143
141
138
136
133
131
128
125
123
120
117
114
111
109
106
103
100
98
95
92
90
87
84
82
80
77
75
72
70
68
66
64
62
60
58
56
54
52
50
48
46
45
43
41
40
38
36
35
33
32
30
29
28
27
25
24
23
22
21
20
20
19
18
18
17
17
16
16
16
15
15
15
15
15
14
14
14
14
14
14
14
14
14
14
15
15
15
15
15
16
16
16
17
17
17
18
18
19
19
19
20
20
21
21
22
22
23
24
24
25
26
26
27
28
28
29
30
31
31
32
33
34
35
36
37
38
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
65
66
67
68
69
69
70
71
71
72
72
73
74
74
75
75
76
76
76
77
77
78
78
78
79
79
79
80
80
80
81
81
81
81
81
81
81
81
81
81
81
81
80
80
80
79
79
78
77
77
76
75
75
74
73
72
71
71
70
69
69
68
67
67
66
66
66
65
65
65
65
65
65
65
65
65
66
66
66
67
67
68
68
69
69
70
71
71
72
73
74
74
75
76
77
78
79
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
101
102
102
103
103
104
104
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
104
104
104
104
103
103
103
103
102
102
101
101
100
100
100
99
98
98
97
97
96
96
95
94
94
93
93
92
92
92
91
91
91
91
91
91
91
91
91
91
91
91
91
92
92
92
92
93
93
93
93
94
94
94
94
94
94
94
94
94
94
94
94
94
94
94
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
92
92
92
92
92
92
92
91
91
91
91
91
91
91
91
91
91
91
92
92
92
92
93
93
93
93
94
94
95
95
95
96
96
97
97
98
98
99
99
100
100
101
101
101
102
102
103
103
104
104
104
105
105
105
106
106
106
106
106
107
107
107
107
107
108
108
108
108
108
108
108
109
109
109
109
109
110
110
110
110
110
111
111
111
111
111
112
112
112
113
113
113
114
114
115
115
116
116
117
118
118
119
120
121
122
122
123
124
125
126
127
128
129
130
131
132
132
133
134
135
136
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
152
153
154
155
156
157
158
159
160
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
176
177
178
179
180
181
181
182
183
184
184
185
186
186
187
188
188
189
190
190
191
192
192
193
193
194
194
195
195
196
196
197
197
198
198
199
199
199
200
200
200
201
201
202
202
202
203
203
203
204
204
205
205
205
206
206
207
207
208
208
209
209
210
210
211
211
212
212
213
213
214
214
215
215
216
216
217
217
218
218
219
219
220
220
220
221
221
221
221
221
221
221
221
221
221
221
221
221
221
221
220
220
220
219
219
219
218
218
217
217
216
216
215
214
214
213
212
211
211
210
209
208
207
207
206
205
205
204
203
203
202
202
201
201
200
200
200
199
199
199
198
198
198
197
197
196
196
195
195
194
193
193
192
191
190
189
188
187
186
185
184
183
182
180
179
178
177
175
174
173
171
170
168
167
165
164
162
161
159
157
156
154
152
150
149
147
145
143
141
139
137
135
133
131
129
127
125
123
121
119
117
115
113
111
109
107
105
103
100
98
96
94
91
89
87
85
82
80
77
75
73
70
68
66
63
61
58
56
53
51
48
46
43
41
38
36
33
31
28
26
23
21
18
16
13
11
8
6
3
1
-1
-4
-6
-8
-10
-12
-14
-16
-18
-20
-22
-24
-26
-27
-29
-31
-32
-34
-35
-37
-38
-39
-41
-42
-43
-44
-45
-47
-48
-48
-49
-50
-51
-52
-52
-53
-54
-54
-54
-55
-55
-55
-55
-55
-55
-55
-55
-55
-55
-55
-55
-55
-54
-54
-54
-53
-53
-53
-52
-52
-51
-51
-50
-50
-49
-48
-48
-47
-46
-45
-44
-43
-42
-41
-40
-39
-37
-36
-35
-34
-32
-31
-30
-28
-27
-25
-24
-23
-21
-20
-19
-17
-16
-14
-13
-11
-10
-8
-7
-5
-4
-2
0
1
3
5
7
9
10
12
14
16
18
20
22
24
26
28
29
31
33
35
37
39
40
42
44
46
47
49
51
53
54
56
58
60
61
63
65
67
68
70
72
74
76
78
80
81
83
85
87
89
91
94
96
98
100
102
104
107
109
111
113
116
118
120
122
125
127
129
132
134
136
139
141
143
146
148
151
153
155
158
160
163
166
168
171
173
176
179
181
184
187
190
192
195
198
200
203
206
208
211
214
216
219
221
224
226
229
231
234
236
238
241
243
245
247
250
252
254
256
258
260
262
264
266
268
270
272
274
275
277
279
280
282
283
285
286
288
289
290
291
293
294
295
296
296
297
298
299
300
300
301
302
302
303
303
304
304
305
305
306
306
306
307
307
307
308
308
308
308
308
308
308
308
308
308
308
308
307
307
306
306
305
305
304
303
302
301
300
299
298
297
296
295
293
292
290
289
287
286
284
283
281
279
278
276
274
272
271
269
267
265
263
261
260
258
256
254
252
250
248
246
244
242
240
238
236
234
232
230
228
226
224
221
219
217
215
213
210
208
206
203
201
198
196
193
190
188
185
182
179
176
174
171
168
165
161
158
155
152
149
146
143
140
136
133
130
127
124
121
118
114
111
108
105
102
99
96
93
90
87
84
81
78
75
72
69
66
63
61
58
55
53
50
48
45
43
41
38
36
34
32
30
28
26
24
22
20
18
17
15
13
12
10
9
7
6
4
3
2
1
-1
-2
-3
-4
-5
-5
-6
-7
-8
-8
-9
-9
-10
-10
-10
-10
-10
-11
-10
-10
-10
-10
-9
-9
-9
-8
-7
-7
-6
-5
-5
-4
-3
-2
-1
0
1
2
4
5
6
8
9
11
12
14
16
17
19
21
23
26
28
30
33
35
38
41
44
46
49
52
56
59
62
65
68
72
75
79
82
86
89
93
97
100
104
108
112
116
120
123
127
131
135
140
144
148
152
156
160
164
168
172
177
181
185
189
193
197
201
206
210
214
218
222
227
231
235
239
244
248
252
256
261
265
269
274
278
283
287
291
296
300
305
309
314
318
322
327
331
335
340
344
348
352
356
360
364
368
371
375
379
382
386
389
392
395
398
401
404
407
409
412
414
417
419
421
423
425
427
429
431
432
434
435
437
438
439
440
441
442
443
443
444
445
445
445
446
446
446
446
446
445
445
445
444
444
443
442
442
441
440
439
439
438
437
436
435
433
432
431
430
428
427
426
424
423
421
420
418
416
415
413
411
409
408
406
404
402
400
398
396
394
392
390
388
386
384
382
380
378
376
373
371
369
367
364
362
360
358
355
353
350
348
345
343
340
338
335
333
330
327
325
322
319
317
314
311
308
305
302
299
296
293
290
287
284
281
277
274
271
268
264
261
258
254
251
248
244
241
237
234
231
227
224
220
217
213
210
206
203
199
196
192
189
185
182
178
175
171
168
164
161
158
154
151
148
144
141
138
134
131
128
125
121
118
115
111
108
105
101
98
95
91
88
85
81
78
75
72
68
65
62
59
56
53
50
47
44
42
39
36
34
31
29
26
24
21
19
17
14
12
10
8
6
3
1
-1
-3
-5
-7
-9
-11
-13
-15
-17
-19
-21
-23
-25
-27
-29
-31
-33
-35
-37
-39
-41
-43
-45
-47
-49
-50
-52
-54
-56
-58
-60
-62
-63
-65
-67
-69
-71
-72
-74
-76
-78
-80
-81
-83
-85
-86
-88
-90
-92
-93
-95
-97
-99
-100
-102
-104
-105
-107
-109
-111
-112
-114
-116
-118
-119
-121
-123
-124
-126
-128
-129
-131
-133
-134
-136
-137
-139
-141
-142
-144
-146
-147
-149
-150
-152
-154
-155
-157
-158
-160
-162
-163
-165
-167
-168
-170
-171
-173
-175
-176
-178
-180
-181
-183
-184
-186
-188
-189
-191
-193
-194
-196
-197
-199
-201
-202
-204
-206
-207
-209
-210
-212
-213
-215
-216
-218
-219
-221
-222
-224
-225
-226
-228
-229
-230
-232
-233
-234
-235
-236
-237
-238
-239
-240
-241
-242
-243
-244
-245
-245
-246
-247
-247
-248
-248
-248
-249
-249
-249
-249
-249
-249
-249
-249
-249
-249
-249
-248
-248
-247
-247
-246
-246
-245
-244
-243
-242
-241
-240
-239
-238
-237
-236
-235
-233
-232
-230
-228
-227
-225
-223
-221
-219
-217
-215
-212
-210
-207
-205
-202
-199
-196
-194
-191
-188
-185
-181
-178
-175
-172
-168
-165
-161
-157
-154
-150
-146
-142
-138
-134
-130
-126
-122
-118
-114
-109
-105
-101
-96
-92
-87
-83
-78
-74
-69
-65
-60
-56
-51
-47
-42
-38
-33
-29
-25
-20
-16
-12
-8
-3
1
5
9
13
17
21
24
28
32
36
39
43
46
49
53
56
59
62
66
69
71
74
77
80
83
85
88
91
93
96
98
101
103
105
108
110
112
114
116
118
120
122
124
126
128
130
132
133
135
137
138
140
141
143
144
145
146
148
149
150
151
152
152
153
154
155
156
156
157
158
158
159
159
160
160
161
161
162
162
162
163
163
163
163
163
164
164
164
164
164
164
164
164
164
164
163
163
163
163
162
162
162
161
161
160
160
159
159
158
158
157
157
156
155
155
154
153
153
152
152
151
150
150
149
149
148
147
147
146
146
145
145
144
143
143
142
142
141
140
140
139
138
138
137
136
135
135
134
133
132
132
131
130
129
129
128
127
127
126
125
125
124
124
123
123
123
122
122
122
122
122
121
121
121
121
121
121
121
121
122
122
122
122
123
123
123
124
124
125
125
126
126
127
128
129
130
130
131
132
133
135
136
137
138
139
140
141
143
144
145
146
148
149
150
152
153
154
156
157
158
160
161
162
164
165
166
168
169
170
172
173
174
175
177
178
179
180
182
183
184
185
186
188
189
190
191
192
193
194
195
196
197
197
198
199
199
200
200
201
201
201
202
202
202
202
202
202
201
201
201
201
200
200
199
198
198
197
196
195
195
194
193
192
190
189
188
187
186
184
183
182
180
179
177
176
174
173
171
169
168
166
164
162
161
159
157
155
153
151
149
148
146
144
142
140
138
136
134
132
130
128
127
125
123
121
119
117
115
113
111
109
107
105
103
101
99
97
95
93
91
89
87
85
83
81
79
77
75
73
71
69
68
66
64
62
60
59
57
55
54
52
50
49
47
45
44
42
40
39
37
35
34
32
30
28
27
25
23
22
20
19
17
15
14
12
11
9
8
7
5
4
3
2
1
0
-1
-2
-2
-3
-3
-4
-4
-5
-5
-5
-5
-5
-5
-5
-5
-5
-4
-4
-4
-3
-3
-2
-2
-1
0
1
1
2
3
4
5
5
6
7
8
9
10
11
11
12
13
14
15
16
16
17
18
19
20
20
21
22
22
23
24
24
25
26
26
27
27
28
28
28
29
29
30
30
30
30
31
31
31
31
31
31
31
31
31
31
31
31
30
30
30
30
30
29
29
29
29
29
28
28
28
28
28
27
27
27
27
27
26
26
26
26
26
25
25
25
25
25
24
24
24
24
24
23
23
23
23
23
23
23
22
22
22
22
22
22
22
22
22
22
23
23
23
23
23
24
24
24
24
25
25
25
25
26
26
26
27
27
27
28
28
28
28
29
29
29
30
30
31
31
31
32
32
33
33
33
34
34
35
35
35
36
36
36
36
37
37
37
37
38
38
38
38
38
38
38
38
38
38
38
38
39
39
39
39
39
39
39
39
39
40
40
40
41
41
41
42
42
43
43
44
44
45
45
46
47
47
48
49
49
50
51
51
52
53
54
54
55
55
56
57
57
58
58
59
60
60
61
61
62
62
63
64
64
65
66
66
67
68
68
69
70
70
71
72
72
73
74
75
75
76
77
78
78
79
80
80
81
82
83
83
84
85
85
86
87
88
88
89
90
91
91
92
93
94
95
95
96
97
98
98
99
100
101
101
102
103
104
105
105
106
107
108
109
109
110
111
111
112
113
113
114
114
115
115
116
116
117
117
117
117
117
117
117
117
117
117
117
116
116
116
115
115
114
114
113
112
111
111
110
109
108
107
106
105
104
103
101
100
99
97
96
95
93
91
90
88
86
85
83
81
79
77
75
73
71
69
67
65
63
61
59
57
55
53
50
48
46
44
42
40
38
36
34
32
30
28
26
24
22
20
18
16
14
12
10
9
7
5
3
1
0
-2
-4
-6
-7
-9
-11
-12
-14
-16
-17
-19
-21
-22
-24
-26
-27
-29
-30
-32
-33
-35
-36
-38
-39
-41
-42
-43
-45
-46
-47
-48
-49
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-61
-62
-63
-64
-65
-66
-67
-68
-68
-69
-70
-71
-72
-72
-73
-74
-74
-75
-76
-76
-77
-77
-78
-78
-78
-79
-79
-79
-79
-79
-79
-79
-79
-79
-79
-78
-78
-78
-77
-77
-77
-76
-76
-75
-74
-74
-73
-72
-71
-71
-70
-69
-68
-67
-65
-64
-63
-62
-61
-59
-58
-56
-55
-53
-52
-50
-49
-47
-45
-44
-42
-41
-39
-37
-36
-34
-33
-31
-29
-28
-27
-25
-24
-22
-21
-20
-19
-17
-16
-15
-14
-13
-12
-11
-10
-9
-9
-8
-7
-6
-6
-5
-4
-3
-3
-2
-2
-1
-1
0
0
1
1
2
2
3
3
3
4
4
4
5
5
5
5
6
6
6
6
7
7
7
7
8
8
8
9
9
9
9
10
10
10
11
11
12
12
12
13
13
14
14
15
15
16
16
17
17
18
19
19
20
20
21
21
22
22
23
23
24
24
25
25
26
26
26
27
27
27
28
28
28
29
29
29
29
29
29
30
30
30
30
29
29
29
29
29
29
29
29
28
28
28
28
28
28
28
27
27
27
27
27
27
27
28
28
28
28
29
29
29
30
30
31
32
32
33
34
35
36
37
38
39
40
41
43
44
45
47
48
50
51
53
55
56
58
60
62
64
66
67
69
71
73
75
77
79
82
84
86
88
91
93
95
98
100
103
105
108
110
113
116
119
122
124
127
130
133
136
139
143
146
149
152
155
159
162
165
169
172
176
179
183
186
190
193
196
200
203
207
210
214
217
220
224
227
230
234
237
240
243
246
249
252
255
258
261
264
267
270
272
275
278
280
283
285
287
290
292
294
296
299
301
303
305
306
308
310
312
314
315
317
319
320
322
323
324
326
327
328
329
330
331
332
333
334
335
336
336
337
338
338
339
339
339
340
340
340
340
340
340
339
339
339
338
338
337
336
335
335
334
333
332
330
329
328
327
325
324
323
321
320
318
317
315
313
312
310
309
307
305
304
302
300
298
297
295
293
291
289
288
286
284
282
280
278
276
275
273
271
269
267
265
263
261
259
258
256
254
252
250
248
246
244
242
240
238
236
234
232
230
228
226
225
223
221
219
217
215
213
211
210
208
206
204
202
200
199
197
195
193
192
190
188
187
185
184
182
181
179
178
177
175
174
173
172
170
169
168
167
166
165
164
163
162
161
160
159
158
157
157
156
155
154
153
153
152
151
150
150
149
148
148
147
146
145
145
144
143
143
142
141
140
140
139
138
138
137
136
136
135
134
134
133
133
132
131
131
130
130
129
129
128
128
127
127
126
126
125
125
124
124
123
123
122
122
121
121
121
120
120
119
119
119
118
118
118
118
117
117
117
117
117
116
116
116
116
116
116
116
116
116
116
116
117
117
117
117
118
118
118
119
119
119
120
120
121
122
122
123
123
124
125
126
126
127
128
129
130
131
132
133
133
134
135
136
137
138
139
140
141
142
143
144
145
145
146
147
148
149
150
151
152
152
153
154
155
156
157
157
158
159
160
161
161
162
163
164
164
165
166
166
167
168
168
169
169
170
171
171
172
172
173
173
174
174
175
175
176
176
177
177
178
178
179
179
180
180
180
181
181
181
182
182
182
182
183
183
183
183
183
183
183
183
183
183
182
182
182
182
182
182
182
181
181
181
181
181
181
181
180
180
180
180
180
180
179
179
179
179
178
178
178
178
177
177
177
176
176
176
175
175
175
174
174
174
173
173
173
172
172
172
172
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
172
172
172
172
172
173
173
173
173
174
174
174
174
175
175
175
175
176
176
176
176
177
177
178
178
178
179
179
180
180
181
181
182
182
183
184
185
186
186
187
188
189
190
191
192
193
195
196
197
198
199
201
202
203
204
206
207
208
210
211
213
214
216
217
218
220
222
223
225
226
228
229
231
232
234
236
237
239
241
242
244
245
247
248
250
251
253
254
256
257
259
260
262
263
264
266
267
268
270
271
272
273
274
275
277
278
279
280
281
282
283
283
284
285
286
287
287
288
289
289
290
290
291
291
291
292
292
292
292
292
292
292
292
292
292
292
292
292
291
291
291
290
290
289
289
288
288
287
287
286
285
285
284
283
283
282
281
280
279
279
278
277
276
275
274
273
272
271
270
268
267
266
265
263
262
260
259
258
256
255
253
251
250
248
246
245
243
241
239
238
236
234
232
230
228
226
224
222
219
217
215
213
211
209
206
204
202
200
197
195
193
190
188
186
183
181
178
176
173
171
168
165
162
160
157
154
151
148
145
142
139
136
133
130
126
123
120
117
114
110
107
104
101
98
94
91
88
85
82
79
76
73
70
67
64
61
58
55
52
50
47
44
42
39
37
34
32
29
27
25
22
20
18
16
14
12
10
7
6
4
2
0
-2
-4
-5
-7
-8
-10
-11
-13
-14
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-28
-29
-30
-30
-31
-32
-32
-33
-33
-34
-34
-35
-35
-35
-36
-36
-36
-37
-37
-37
-38
-38
-38
-39
-39
-39
-40
-40
-40
-41
-41
-41
-41
-42
-42
-42
-42
-42
-42
-43
-43
-43
-43
-43
-43
-43
-43
-43
-43
-43
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-41
-41
-41
-41
-41
-40
-40
-40
-40
-39
-39
-39
-38
-38
-38
-37
-37
-36
-36
-35
-35
-34
-34
-33
-33
-32
-32
-31
-30
-30
-29
-29
-28
-27
-27
-26
-25
-24
-24
-23
-22
-21
-21
-20
-19
-18
-18
-17
-16
-15
-14
-13
-12
-11
-10
-9
-8
-7
-6
-5
-4
-3
-2
0
1
2
3
5
6
7
9
10
12
13
15
16
18
19
21
22
24
26
28
29
31
33
35
37
38
40
42
44
46
48
51
53
55
57
59
61
64
66
68
70
73
75
78
80
82
85
87
90
93
95
98
100
103
106
108
111
114
117
120
123
125
128
131
134
137
140
143
146
149
152
155
158
161
165
168
171
174
177
180
183
186
189
192
195
198
201
204
207
210
213
216
219
222
225
228
231
233
236
239
242
245
247
250
253
255
258
261
263
266
268
271
273
276
278
280
283
285
287
289
291
293
295
297
299
301
303
305
307
309
310
312
314
316
317
319
321
322
324
325
327
329
330
332
333
335
336
338
339
341
342
343
345
346
348
349
350
352
353
354
356
357
358
359
361
362
363
364
365
366
368
369
370
371
372
373
374
374
375
376
377
378
379
379
380
381
381
382
383
383
384
384
384
385
385
385
385
385
386
386
386
386
386
386
386
385
385
385
385
385
385
384
384
384
383
383
383
383
382
382
381
381
381
380
380
379
379
379
378
378
377
377
376
375
375
374
374
373
373
372
371
371
370
369
369
368
367
366
366
365
364
363
362
361
360
359
358
357
356
355
353
352
351
350
348
347
346
344
343
342
340
339
337
335
334
332
330
329
327
325
323
322
320
318
316
314
312
310
308
306
303
301
299
297
295
292
290
288
286
283
281
279
276
274
272
269
267
265
262
260
257
255
253
250
248
245
243
241
238
236
233
231
229
226
224
221
219
216
214
211
209
206
204
201
199
196
194
192
189
187
184
182
179
177
175
172
170
168
166
164
162
159
157
155
153
152
150
148
146
144
142
141
139
137
135
133
132
130
128
126
125
123
121
119
118
116
114
112
111
109
107
105
104
102
100
99
97
95
93
92
90
88
86
85
83
81
79
77
76
74
72
70
69
67
65
63
62
60
58
56
55
53
51
50
48
47
45
43
42
40
39
37
36
34
33
31
30
28
27
25
24
22
21
19
18
16
15
13
12
10
9
7
6
4
3
1
-1
-2
-4
-5
-7
-9
-10
-12
-14
-16
-18
-19
-21
-23
-25
-27
-29
-31
-33
-35
-37
-39
-41
-44
-46
-48
-50
-52
-55
-57
-59
-61
-63
-65
-67
-69
-71
-73
-75
-77
-79
-81
-83
-84
-86
-88
-89
-91
-93
-94
-96
-97
-99
-100
-102
-103
-104
-106
-107
-109
-110
-111
-113
-114
-115
-116
-118
-119
-120
-121
-122
-123
-124
-125
-126
-127
-128
-129
-130
-130
-131
-132
-132
-133
-133
-134
-134
-135
-135
-136
-136
-136
-137
-137
-137
-138
-138
-138
-138
-139
-139
-139
-139
-139
-140
-140
-140
-140
-140
-140
-140
-140
-140
-140
-140
-140
-140
-140
-140
-140
-139
-139
-139
-138
-138
-137
-137
-136
-136
-135
-134
-134
-133
-132
-132
-131
-130
-129
-129
-128
-127
-126
-125
-124
-123
-122
-122
-121
-120
-119
-118
-117
-116
-115
-114
-113
-112
-111
-110
-109
-108
-107
-106
-105
-104
-103
-102
-101
-100
-99
-97
-96
-95
-94
-93
-91
-90
-89
-87
-86
-84
-83
-81
-80
-78
-77
-75
-74
-72
-70
-69
-67
-66
-64
-63
-61
-59
-58
-56
-55
-53
-52
-50
-49
-47
-46
-44
-43
-42
-40
-39
-37
-36
-34
-33
-31
-30
-29
-27
-26
-24
-23
-21
-20
-18
-16
-15
-14
-12
-11
-9
-8
-6
-5
-4
-2
-1
0
1
2
3
4
5
6
7
8
9
10
10
11
12
12
13
13
14
14
15
15
15
16
16
16
16
16
17
17
17
17
17
17
18
18
18
18
18
18
19
19
19
19
19
19
20
20
20
20
20
20
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
25
25
25
25
25
25
26
26
26
26
26
26
27
27
27
27
27
27
28
28
28
28
28
28
28
29
29
29
29
29
29
30
30
30
30
30
30
31
31
31
31
31
31
31
32
32
32
32
32
32
33
33
33
33
33
33
33
34
34
34
34
34
34
35
35
35
35
35
35
35
36
36
36
36
36
36
37
37
37
37
37
37
37
38
38
38
38
38
38
38
39
39
39
39
39
39
39
40
40
40
40
40
40
41
41
41
41
41
41
41
42
42
42
42
42
42
42
43
43
43
43
43
43
43
44
44
44
44
44
44
44
45
45
45
45
45
45
45
46
46
46
46
46
46
46
47
47
47
47
47
47
47
48
48
48
48
48
48
48
49
49
49
49
49
49
49
49
50
50
50
50
50
50
50
51
51
51
51
51
51
51
52
52
52
52
52
52
52
52
53
53
53
53
53
53
53
54
54
54
54
54
54
54
54
55
55
55
55
55
55
55
56
56
56
56
56
56
56
56
57
57
57
57
57
57
57
57
58
58
58
58
58
58
58
59
59
59
59
59
59
59
59
60
60
60
60
60
60
60
60
61
61
61
61
61
61
61
61
62
62
62
62
62
62
62
62
63
63
63
63
63
63
63
63
64
64
64
64
64
64
64
64
65
65
65
65
65
65
65
65
65
66
66
66
66
66
66
66
66
67
67
67
67
67
67
67
67
68
68
68
68
68
68
68
68
68
69
69
69
69
69
69
69
69
70
70
70
70
70
70
70
70
70
71
71
71
71
71
71
71
71
71
72
72
72
72
72
72
72
72
73
73
73
73
73
73
73
73
73
74
74
74
74
74
74
74
74
74
75
75
75
75
75
75
75
75
75
76
76
76
76
76
76
76
76
76
76
77
77
77
77
77
77
77
77
77
78
78
78
78
78
78
78
78
78
79
79
79
79
79
79
79
79
79
79
80
80
80
80
80
80
80
80
80
81
81
81
81
81
81
81
81
81
81
82
82
82
82
82
82
82
82
82
82
83
83
83
83
83
83
83
83
83
83
84
84
84
84
84
84
84
84
84
84
85
85
85
85
85
85
85
85
85
85
86
86
86
86
86
86
86
86
86
86
86
87
87
87
87
87
87
87
87
87
87
88
88
88
88
88
88
88
88
88
88
88
89
89
89
89
89
89
89
89
89
89
89
90
90
90
90
90
90
90
90
90
90
90
91
91
91
91
91
91
91
91
91
91
91
92
92
92
92
92
92
92
92
92
92
92
93
93
93
93
93
93
93
93
93
93
93
94
94
94
94
94
94
94
94
94
94
94
94
95
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
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
101
102
102
102
102
102
102
102
102
102
102
102
102
102
103
103
103
103
103
103
103
103
103
103
103
103
103
103
104
104
104
104
104
104
104
104
104
104
104
104
104
104
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
107
107
107
107
107
107
107
107
107
107
107
107
107
107
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
118
118
118
118
118
118
118
118
118
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
