5
974
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
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
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
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
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
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
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
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
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
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
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
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
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
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
3
3
3
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
1
1
1
1
1
1
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
-1
-1
-1
-1
-1
-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
-3
-3
-3
-3
-3
-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
-5
-5
-5
-5
-5
-5
-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
-7
-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
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-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
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-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
-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
-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
-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
-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
-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
-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
-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
-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
-33
-33
-33
-33
-33
-33
-33
-33
-33
-33
-33
-33
-33
-33
-33
-33
-33
-33
-33
-34
-34
-34
-34
-34
-34
-34
-34
-34
-34
-34
-34
-34
-34
-34
-34
-34
-34
-35
-35
-35
-35
-35
-35
-35
-35
-35
-35
-35
-35
-35
-35
-35
-35
-35
-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
-38
-38
-38
-38
-38
-38
-38
-38
-38
-38
-38
-38
-38
-38
-38
-38
-38
-39
-39
-39
-39
-39
-39
-39
-39
-39
-39
-39
-39
-39
-39
-39
-39
-39
-39
-39
-39
-39
-39
-39
-40
-40
-40
-40
-40
-40
-40
-40
-40
-40
-40
-40
-40
-40
-40
-40
-40
-41
-41
-41
-41
-41
-41
-41
-41
-41
-41
-41
-41
-41
-42
-42
-42
-42
-42
-42
-42
-42
-42
-43
-43
-43
-43
-43
-43
-43
-43
-43
-43
-43
-43
-43
-43
-43
-43
-43
-43
-43
-43
-43
-42
-42
-42
-42
-41
-41
-41
-41
-41
-41
-41
-41
-41
-41
-40
-40
-40
-39
-39
-38
-37
-37
-36
-35
-35
-34
-34
-34
-33
-33
-33
-33
-33
-32
-32
-32
-32
-31
-31
-31
-30
-30
-30
-30
-30
-30
-29
-29
-29
-29
-29
-28
-28
-28
-27
-27
-27
-26
-26
-25
-25
-24
-23
-23
-22
-21
-21
-20
-19
-19
-18
-18
-17
-17
-16
-16
-15
-15
-14
-13
-12
-11
-10
-9
-9
-8
-8
-7
-7
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-5
-5
-5
-4
-4
-4
-5
-5
-6
-8
-9
-11
-12
-14
-15
-16
-18
-19
-19
-20
-21
-21
-22
-23
-24
-25
-27
-28
-30
-31
-33
-34
-35
-36
-36
-36
-36
-36
-36
-36
-35
-35
-34
-34
-33
-32
-31
-31
-30
-29
-28
-27
-26
-25
-25
-24
-23
-23
-22
-21
-21
-20
-19
-18
-17
-16
-15
-14
-13
-12
-11
-11
-10
-10
-10
-10
-10
-10
-10
-10
-10
-9
-8
-7
-6
-6
-5
-5
-6
-6
-7
-9
-10
-11
-12
-13
-14
-15
-16
-16
-17
-17
-17
-18
-18
-19
-19
-20
-20
-21
-21
-21
-21
-21
-20
-20
-19
-19
-18
-18
-18
-18
-18
-19
-19
-19
-19
-18
-18
-18
-17
-17
-17
-17
-17
-18
-19
-21
-22
-24
-25
-27
-28
-29
-29
-30
-30
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-40
-41
-42
-43
-44
-45
-45
-46
-47
-48
-49
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-58
-59
-59
-60
-60
-60
-60
-59
-59
-58
-58
-58
-57
-57
-57
-56
-56
-55
-54
-54
-53
-52
-51
-50
-49
-49
-48
-47
-46
-45
-44
-43
-43
-42
-41
-39
-38
-37
-35
-33
-32
-31
-29
-28
-27
-25
-24
-23
-21
-19
-18
-16
-15
-14
-13
-12
-11
-11
-10
-9
-9
-8
-8
-8
-8
-7
-6
-6
-5
-4
-3
-3
-2
-2
-2
-3
-4
-5
-7
-8
-10
-12
-14
-15
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-28
-28
-28
-28
-28
-27
-27
-27
-27
-27
-27
-28
-29
-30
-31
-33
-34
-35
-36
-37
-38
-39
-39
-40
-40
-41
-41
-41
-41
-41
-41
-40
-40
-40
-40
-39
-39
-39
-39
-39
-39
-39
-39
-40
-40
-40
-39
-39
-38
-37
-37
-36
-35
-35
-34
-33
-33
-32
-32
-32
-32
-32
-33
-33
-34
-35
-35
-36
-36
-37
-37
-38
-38
-39
-40
-41
-43
-45
-46
-48
-50
-52
-54
-55
-57
-58
-59
-61
-62
-63
-65
-67
-68
-70
-71
-72
-72
-72
-72
-72
-72
-72
-71
-71
-71
-71
-71
-72
-72
-73
-74
-75
-76
-78
-79
-81
-82
-83
-84
-84
-85
-86
-87
-88
-90
-92
-94
-96
-99
-101
-104
-106
-108
-110
-112
-114
-115
-116
-117
-118
-118
-118
-117
-116
-115
-114
-113
-111
-110
-108
-107
-107
-107
-107
-108
-108
-110
-111
-112
-114
-116
-118
-120
-122
-124
-126
-129
-132
-135
-138
-141
-144
-146
-148
-150
-152
-153
-154
-154
-154
-155
-155
-155
-155
-155
-155
-155
-154
-153
-152
-149
-147
-144
-141
-138
-135
-133
-130
-129
-128
-127
-126
-126
-126
-126
-126
-126
-126
-127
-128
-129
-132
-134
-137
-140
-143
-146
-149
-152
-155
-158
-161
-164
-167
-169
-172
-175
-178
-181
-183
-186
-189
-192
-194
-196
-197
-197
-197
-197
-196
-195
-194
-193
-192
-191
-190
-190
-189
-189
-188
-188
-187
-186
-185
-184
-182
-181
-179
-177
-175
-173
-172
-170
-169
-168
-167
-165
-165
-164
-163
-162
-160
-159
-157
-155
-153
-151
-148
-146
-142
-139
-136
-133
-129
-127
-124
-122
-121
-119
-118
-116
-115
-113
-112
-110
-108
-107
-106
-105
-105
-105
-105
-106
-107
-108
-109
-111
-112
-114
-116
-118
-120
-122
-124
-127
-129
-132
-134
-136
-138
-139
-140
-140
-140
-140
-140
-139
-139
-138
-138
-138
-138
-138
-138
-138
-138
-138
-138
-137
-136
-135
-134
-134
-133
-132
-132
-131
-132
-132
-133
-133
-134
-135
-136
-138
-140
-142
-144
-147
-150
-153
-156
-159
-161
-162
-163
-164
-163
-163
-161
-160
-158
-156
-155
-154
-153
-153
-153
-154
-155
-157
-159
-161
-162
-164
-165
-166
-166
-165
-164
-163
-163
-162
-161
-161
-162
-162
-163
-163
-164
-164
-164
-164
-163
-163
-162
-161
-161
-160
-158
-156
-154
-151
-149
-146
-143
-140
-137
-134
-132
-130
-129
-128
-128
-130
-132
-134
-137
-140
-142
-145
-146
-147
-148
-149
-150
-151
-153
-155
-157
-159
-160
-162
-162
-161
-160
-158
-154
-150
-146
-141
-136
-131
-126
-122
-118
-115
-113
-111
-110
-110
-111
-111
-113
-115
-117
-119
-122
-125
-128
-131
-133
-135
-136
-137
-137
-137
-138
-139
-140
-141
-142
-143
-144
-144
-144
-144
-144
-144
-144
-144
-145
-146
-147
-149
-150
-151
-151
-151
-151
-151
-150
-149
-147
-144
-141
-137
-133
-129
-125
-122
-119
-116
-114
-112
-110
-109
-107
-106
-105
-104
-104
-104
-105
-106
-108
-110
-112
-114
-117
-119
-121
-122
-123
-122
-121
-119
-116
-113
-109
-105
-101
-97
-92
-88
-84
-79
-75
-71
-68
-65
-62
-60
-58
-56
-55
-54
-53
-52
-50
-49
-47
-46
-45
-44
-43
-43
-43
-44
-45
-46
-47
-48
-49
-51
-52
-54
-56
-58
-60
-63
-65
-67
-69
-71
-73
-74
-76
-77
-78
-79
-80
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-91
-90
-90
-89
-88
-87
-86
-85
-83
-81
-79
-77
-75
-72
-70
-68
-66
-64
-62
-60
-58
-56
-54
-52
-50
-48
-47
-46
-46
-45
-46
-47
-48
-50
-52
-54
-57
-59
-61
-62
-63
-63
-63
-63
-62
-61
-61
-60
-60
-60
-60
-60
-60
-59
-59
-58
-58
-57
-57
-58
-58
-59
-60
-61
-61
-61
-61
-60
-59
-57
-56
-55
-54
-52
-51
-50
-49
-48
-47
-46
-45
-44
-44
-44
-45
-47
-50
-54
-58
-64
-70
-75
-81
-85
-89
-93
-95
-97
-99
-101
-103
-104
-105
-106
-105
-104
-102
-100
-97
-94
-91
-88
-85
-82
-80
-79
-79
-79
-80
-81
-83
-85
-87
-89
-90
-91
-91
-90
-89
-87
-85
-82
-80
-79
-77
-77
-76
-76
-76
-76
-75
-75
-74
-73
-72
-71
-69
-68
-66
-65
-64
-63
-63
-62
-62
-62
-61
-61
-61
-60
-60
-59
-58
-57
-56
-56
-55
-54
-53
-53
-54
-55
-56
-58
-60
-62
-64
-65
-67
-68
-68
-69
-70
-71
-71
-72
-73
-75
-76
-78
-79
-81
-82
-84
-85
-86
-86
-87
-87
-87
-87
-88
-88
-89
-89
-90
-91
-93
-94
-95
-95
-95
-95
-95
-94
-94
-93
-91
-90
-88
-86
-83
-81
-78
-75
-72
-69
-66
-62
-59
-55
-52
-49
-47
-44
-42
-41
-40
-39
-38
-38
-37
-37
-36
-35
-34
-33
-32
-30
-29
-28
-28
-28
-28
-29
-30
-32
-34
-36
-39
-41
-43
-45
-46
-47
-47
-48
-48
-49
-50
-51
-52
-53
-54
-55
-56
-56
-57
-57
-57
-57
-57
-56
-55
-54
-52
-50
-48
-46
-43
-41
-38
-35
-32
-30
-28
-26
-24
-23
-22
-21
-20
-18
-16
-14
-11
-8
-5
-1
2
5
9
12
16
20
23
27
30
33
35
38
40
41
43
44
44
45
46
46
46
47
47
48
48
48
48
47
46
44
42
40
37
35
32
30
28
26
24
22
19
17
14
12
10
8
7
6
5
5
5
6
8
9
12
14
17
21
24
27
30
34
37
39
42
44
46
48
49
51
53
54
56
57
58
58
59
59
59
59
59
60
62
64
68
72
78
84
91
98
104
110
115
120
124
127
130
133
136
140
143
147
151
154
157
160
163
165
166
167
167
167
167
167
167
168
168
169
170
170
170
170
169
168
167
166
165
164
163
162
162
161
161
160
160
159
159
158
157
156
155
153
152
151
151
151
151
152
153
154
155
157
158
158
158
158
158
158
158
158
158
159
159
160
161
163
164
165
167
169
170
172
174
176
178
180
183
186
189
192
196
200
203
207
210
214
217
221
225
229
234
238
243
247
252
256
261
265
269
273
277
281
285
289
293
297
301
305
309
312
314
316
318
319
320
322
323
325
327
329
331
334
336
338
340
342
344
345
347
348
349
350
350
351
351
350
350
349
348
348
347
347
347
347
347
348
349
350
351
351
351
351
350
349
348
347
346
344
343
342
340
339
338
338
338
339
340
341
343
345
347
349
350
351
351
351
351
350
349
347
345
343
341
339
337
335
333
331
328
326
324
321
318
316
313
311
309
307
305
304
304
303
304
305
306
308
310
312
315
318
321
325
328
332
336
339
342
345
347
350
352
353
354
356
356
357
358
359
359
360
361
362
363
364
365
365
366
366
367
367
367
367
366
366
366
365
364
364
363
363
362
361
361
361
360
359
358
357
356
355
354
353
353
353
353
354
355
356
357
357
357
357
356
355
353
351
348
345
342
338
335
332
329
326
323
321
318
315
313
310
307
304
301
298
295
292
288
284
280
276
273
269
265
262
258
254
250
246
241
236
231
226
220
215
211
206
202
199
196
192
189
186
182
179
175
171
167
163
159
156
152
149
146
144
142
141
140
140
140
142
144
146
149
152
155
159
162
165
168
171
174
178
182
186
190
196
201
207
212
218
224
230
237
243
249
255
262
269
276
284
292
301
310
320
329
339
349
359
370
381
392
404
416
429
442
455
469
483
497
511
525
538
550
562
573
584
594
603
611
618
624
630
634
637
639
640
641
640
639
637
635
633
630
628
626
624
622
620
618
615
612
609
606
603
600
598
596
594
593
593
594
595
597
599
601
603
606
609
611
615
618
622
626
631
636
641
647
652
657
663
667
672
675
678
681
683
684
685
685
685
684
683
681
678
675
671
666
660
654
648
641
635
629
623
617
613
609
606
604
603
602
602
603
604
606
607
610
612
615
619
623
627
633
638
644
651
657
663
669
675
681
686
690
694
698
702
705
708
710
712
713
714
714
714
713
713
712
711
710
708
706
704
701
697
694
690
685
680
675
669
663
657
651
644
638
632
625
619
613
607
601
595
589
583
577
571
564
558
552
547
542
537
533
529
525
521
518
514
510
506
501
496
491
486
481
477
472
468
465
462
459
456
453
451
448
445
441
438
435
432
429
426
424
422
421
420
420
421
422
423
425
427
429
431
432
434
436
437
439
440
442
444
447
450
453
456
460
464
468
472
476
480
485
489
493
497
501
505
509
513
517
520
523
526
529
531
534
536
539
542
545
548
552
556
561
566
571
577
583
590
596
603
610
617
624
630
637
642
648
652
656
660
663
665
667
668
670
672
673
676
678
681
685
689
693
698
703
709
714
720
726
732
738
744
750
756
761
767
773
779
785
790
796
801
806
811
816
820
825
829
834
839
845
852
859
866
874
883
891
900
909
918
927
935
943
950
957
963
967
971
974
974
973
971
966
960
953
944
934
923
911
899
886
872
857
841
824
807
788
769
748
727
704
681
657
633
607
582
556
530
504
477
451
424
397
370
342
315
287
259
231
203
175
148
121
94
69
43
19
-5
-28
-51
-74
-96
-119
-141
-164
-187
-210
-233
-257
-280
-304
-328
-352
-376
-400
-424
-446
-468
-489
-509
-527
-544
-560
-575
-588
-599
-610
-619
-627
-633
-639
-644
-647
-650
-652
-654
-655
-655
-655
-655
-654
-652
-650
-647
-644
-639
-635
-630
-625
-619
-614
-608
-603
-597
-592
-586
-579
-572
-564
-555
-545
-534
-521
-508
-494
-480
-466
-452
-438
-424
-411
-399
-386
-374
-362
-349
-337
-323
-310
-296
-281
-265
-249
-232
-214
-196
-177
-158
-138
-118
-98
-78
-58
-38
-18
3
23
43
64
84
104
124
144
163
183
202
222
242
263
284
305
327
349
372
395
418
441
464
487
510
533
556
579
602
624
647
669
690
710
728
746
762
776
790
802
813
823
833
841
849
855
861
866
869
872
873
873
872
869
865
858
851
841
830
817
803
789
773
757
740
722
704
685
665
645
624
603
582
560
538
515
493
470
448
426
404
382
360
339
318
297
277
256
237
218
199
181
164
147
130
113
97
81
64
48
33
17
2
-12
-25
-38
-50
-61
-71
-80
-88
-95
-102
-108
-114
-119
-124
-128
-132
-135
-138
-140
-141
-141
-141
-141
-141
-141
-142
-144
-146
-150
-155
-161
-167
-175
-183
-191
-199
-208
-216
-224
-231
-238
-245
-250
-255
-259
-263
-265
-268
-269
-270
-271
-271
-271
-270
-269
-267
-264
-261
-257
-253
-249
-244
-239
-235
-232
-229
-227
-226
-225
-226
-227
-229
-232
-235
-238
-241
-245
-249
-252
-255
-259
-262
-266
-269
-272
-276
-279
-282
-285
-288
-290
-293
-295
-298
-301
-304
-308
-311
-315
-319
-323
-326
-329
-332
-334
-336
-338
-339
-340
-340
-340
-339
-337
-334
-330
-324
-317
-309
-299
-289
-279
-268
-256
-245
-234
-223
-212
-201
-190
-178
-167
-155
-143
-130
-117
-104
-91
-78
-65
-51
-39
-26
-15
-3
7
16
25
32
38
43
46
47
47
45
41
37
31
24
17
9
1
-8
-17
-26
-36
-46
-56
-66
-76
-87
-98
-109
-119
-130
-140
-149
-158
-166
-173
-180
-187
-193
-199
-204
-210
-216
-223
-231
-239
-248
-258
-269
-281
-294
-307
-320
-334
-347
-361
-375
-388
-402
-416
-430
-445
-460
-476
-492
-508
-525
-541
-556
-571
-586
-600
-612
-624
-635
-645
-653
-660
-666
-671
-675
-677
-679
-680
-681
-682
-682
-682
-682
-683
-683
-682
-682
-682
-682
-682
-682
-682
-683
-683
-684
-684
-685
-685
-685
-685
-685
-684
-683
-682
-680
-677
-674
-671
-667
-663
-658
-653
-648
-643
-637
-632
-627
-621
-616
-612
-607
-603
-599
-596
-593
-590
-587
-585
-583
-581
-579
-578
-576
-575
-575
-574
-573
-572
-571
-570
-568
-566
-564
-561
-559
-556
-553
-550
-547
-544
-542
-541
-540
-539
-538
-538
-538
-538
-538
-537
-536
-535
-533
-530
-526
-522
-517
-512
-506
-500
-494
-487
-480
-472
-464
-456
-447
-438
-428
-418
-407
-396
-385
-374
-363
-351
-340
-329
-319
-309
-299
-291
-283
-276
-270
-265
-261
-258
-256
-255
-255
-255
-257
-260
-264
-269
-275
-282
-291
-300
-310
-320
-331
-342
-353
-365
-376
-386
-396
-406
-415
-423
-431
-439
-446
-452
-458
-464
-469
-474
-479
-484
-488
-492
-496
-499
-503
-506
-509
-511
-513
-514
-515
-516
-516
-516
-516
-516
-515
-515
-514
-513
-513
-512
-511
-510
-508
-506
-504
-501
-497
-492
-487
-480
-473
-466
-458
-450
-441
-433
-424
-415
-405
-396
-385
-375
-363
-351
-338
-324
-309
-293
-276
-258
-241
-222
-204
-187
-170
-154
-138
-124
-111
-99
-88
-78
-70
-62
-55
-50
-44
-40
-36
-33
-30
-28
-26
-25
-25
-25
-26
-27
-30
-33
-37
-42
-48
-54
-61
-68
-76
-83
-91
-97
-103
-109
-114
-118
-121
-123
-125
-127
-128
-128
-128
-128
-127
-126
-125
-124
-123
-122
-120
-119
-117
-115
-113
-112
-110
-108
-107
-106
-105
-105
-104
-104
-104
-104
-105
-105
-105
-106
-107
-108
-110
-111
-113
-114
-115
-115
-116
-116
-117
-117
-118
-118
-119
-120
-122
-123
-125
-126
-127
-128
-128
-128
-127
-126
-125
-123
-122
-120
-118
-116
-113
-111
-108
-105
-102
-98
-93
-88
-82
-76
-69
-61
-52
-42
-32
-21
-9
3
17
31
46
61
78
94
112
130
149
169
189
209
230
251
272
293
313
334
354
373
392
410
428
444
460
475
488
501
512
522
531
539
546
552
557
562
566
569
571
573
574
574
573
571
568
563
556
548
539
528
517
505
492
479
465
452
438
424
410
396
382
368
355
341
328
315
302
289
277
264
252
240
228
216
204
191
179
166
152
138
124
109
94
79
63
48
33
18
3
-11
-25
-40
-54
-68
-83
-97
-111
-126
-140
-154
-169
-183
-198
-212
-227
-242
-257
-272
-288
-303
-318
-334
-348
-363
-377
-390
-402
-414
-424
-434
-443
-451
-459
-465
-470
-474
-477
-479
-481
-481
-480
-479
-477
-475
-472
-469
-466
-462
-459
-456
-453
-450
-447
-444
-442
-439
-436
-433
-429
-425
-421
-417
-412
-407
-403
-399
-396
-394
-392
-392
-393
-394
-397
-400
-403
-407
-412
-416
-420
-425
-429
-434
-438
-442
-446
-450
-453
-456
-458
-460
-461
-462
-462
-462
-461
-460
-458
-456
-454
-452
-449
-447
-444
-441
-439
-437
-434
-433
-431
-429
-427
-424
-421
-418
-414
-408
-402
-396
-388
-380
-371
-362
-352
-342
-332
-321
-310
-299
-288
-277
-265
-253
-241
-230
-218
-206
-195
-185
-175
-166
-158
-151
-144
-138
-133
-128
-124
-120
-116
-113
-110
-107
-104
-101
-97
-94
-91
-87
-82
-77
-72
-67
-61
-55
-49
-42
-35
-29
-22
-15
-8
-1
6
13
20
27
34
40
45
50
55
58
60
62
63
63
62
61
59
56
52
49
44
39
33
26
19
12
3
-6
-15
-25
-36
-47
-59
-71
-84
-96
-108
-120
-132
-143
-153
-163
-172
-180
-187
-193
-199
-204
-208
-212
-215
-219
-221
-224
-226
-228
-230
-231
-231
-231
-230
-229
-228
-225
-222
-219
-215
-211
-206
-201
-196
-190
-185
-179
-174
-169
-163
-158
-153
-147
-142
-137
-132
-127
-122
-117
-112
-108
-103
-98
-94
-89
-84
-80
-74
-69
-64
-58
-52
-46
-40
-33
-27
-21
-14
-8
-3
3
7
11
15
17
19
20
20
20
18
17
15
13
11
8
6
3
0
-3
-6
-9
-11
-13
-14
-14
-13
-11
-8
-2
4
12
21
31
41
53
65
77
89
101
112
123
134
144
154
163
172
181
190
198
207
215
224
233
242
251
260
268
276
285
292
300
307
313
319
324
329
333
337
340
342
344
345
345
346
346
345
344
344
342
341
340
339
337
336
335
333
332
331
329
327
325
323
320
316
312
308
303
298
293
287
281
275
269
263
257
251
244
238
231
223
216
207
198
189
179
168
157
146
134
123
111
99
88
77
66
56
47
37
29
20
12
5
-2
-9
-14
-20
-25
-29
-32
-36
-39
-41
-44
-47
-49
-51
-54
-56
-58
-60
-62
-64
-66
-68
-70
-72
-74
-77
-80
-83
-87
-91
-95
-99
-103
-108
-112
-116
-121
-125
-130
-134
-139
-144
-149
-154
-158
-163
-168
-172
-176
-179
-183
-185
-188
-191
-193
-196
-199
-202
-205
-209
-213
-218
-223
-227
-232
-237
-242
-248
-253
-258
-264
-269
-275
-281
-286
-292
-297
-303
-308
-313
-317
-321
-326
-329
-333
-337
-341
-345
-349
-352
-356
-360
-364
-367
-371
-374
-377
-380
-383
-386
-389
-393
-396
-400
-404
-409
-414
-419
-425
-430
-436
-442
-449
-455
-461
-468
-474
-481
-487
-494
-501
-507
-514
-521
-529
-536
-544
-551
-559
-566
-574
-581
-588
-596
-603
-611
-619
-627
-636
-645
-654
-664
-674
-684
-695
-706
-717
-729
-741
-754
-767
-780
-793
-807
-820
-833
-846
-858
-871
-882
-893
-903
-913
-922
-930
-937
-943
-949
-953
-956
-958
-960
-960
-960
-958
-957
-955
-953
-951
-949
-947
-946
-945
-945
-945
-946
-946
-947
-948
-949
-950
-950
-951
-951
-950
-949
-947
-945
-943
-940
-936
-932
-928
-924
-919
-915
-910
-906
-901
-897
-892
-888
-884
-881
-877
-874
-870
-867
-863
-859
-856
-851
-847
-842
-837
-831
-826
-820
-814
-808
-802
-796
-791
-785
-780
-774
-769
-764
-760
-755
-751
-747
-743
-740
-736
-733
-730
-728
-725
-723
-721
-719
-718
-716
-715
-714
-714
-713
-713
-713
-713
-713
-713
-713
-714
-714
-715
-715
-715
-716
-716
-717
-718
-719
-720
-722
-723
-725
-728
-730
-732
-735
-738
-740
-743
-746
-750
-753
-756
-760
-763
-767
-771
-775
-779
-783
-787
-791
-795
-799
-802
-806
-810
-813
-817
-820
-824
-827
-831
-834
-837
-839
-842
-844
-845
-846
-846
-846
-845
-843
-841
-839
-836
-833
-830
-827
-824
-820
-817
-814
-812
-809
-806
-803
-800
-797
-793
-789
-784
-779
-773
-767
-759
-752
-744
-735
-726
-717
-708
-699
-690
-681
-671
-662
-653
-643
-634
-625
-616
-606
-597
-589
-580
-571
-563
-555
-547
-539
-532
-524
-517
-511
-504
-498
-493
-488
-484
-480
-477
-474
-472
-470
-469
-468
-468
-468
-468
-469
-471
-472
-474
-475
-477
-478
-479
-480
-480
-480
-479
-477
-475
-472
-468
-464
-459
-453
-447
-440
-433
-426
-418
-410
-402
-394
-386
-378
-371
-363
-356
-349
-343
-337
-331
-326
-322
-318
-314
-312
-309
-307
-304
-302
-301
-299
-297
-295
-293
-292
-290
-288
-287
-285
-283
-281
-280
-278
-277
-276
-275
-274
-274
-274
-274
-275
-275
-276
-276
-276
-276
-276
-275
-274
-273
-272
-270
-269
-267
-266
-265
-263
-262
-261
-260
-258
-257
-256
-255
-253
-251
-249
-247
-244
-241
-237
-233
-228
-224
-219
-214
-209
-204
-200
-195
-190
-186
-181
-176
-172
-167
-163
-158
-154
-150
-145
-142
-138
-135
-133
-131
-129
-128
-128
-127
-127
-127
-127
-127
-128
-128
-129
-130
-131
-132
-133
-134
-136
-138
-140
-142
-145
-148
-152
-155
-159
-163
-167
-171
-176
-180
-185
-190
-195
-200
-205
-211
-217
-223
-229
-235
-240
-246
-251
-256
-260
-263
-267
-269
-271
-272
-273
-273
-273
-272
-271
-270
-268
-266
-264
-262
-259
-257
-254
-251
-247
-244
-240
-236
-232
-227
-223
-219
-214
-209
-205
-200
-196
-191
-186
-181
-176
-171
-166
-161
-156
-150
-145
-140
-135
-131
-126
-122
-118
-114
-111
-107
-104
-101
-98
-96
-94
-91
-89
-88
-86
-84
-82
-80
-79
-77
-76
-75
-74
-73
-73
-72
-72
-73
-73
-74
-75
-76
-77
-79
-80
-82
-84
-87
-89
-92
-94
-97
-100
-103
-107
-110
-113
-117
-120
-124
-127
-130
-134
-137
-140
-142
-145
-148
-151
-153
-155
-158
-160
-162
-164
-166
-168
-170
-172
-174
-177
-179
-182
-185
-188
-190
-193
-196
-199
-202
-205
-208
-210
-213
-215
-217
-219
-220
-222
-223
-224
-224
-225
-225
-224
-223
-221
-219
-216
-213
-208
-202
-196
-189
-181
-172
-162
-151
-140
-129
-117
-104
-91
-78
-65
-51
-38
-24
-10
4
18
32
47
61
76
92
107
123
139
155
171
187
202
218
232
247
261
274
287
299
311
322
333
343
353
363
373
383
392
401
410
418
427
435
443
451
460
468
476
484
491
499
506
513
519
525
531
536
540
544
547
550
552
554
555
556
557
557
557
557
557
556
556
555
554
553
552
550
549
547
544
542
539
537
535
532
530
528
526
524
523
521
520
519
518
517
517
516
515
515
515
514
514
515
515
516
517
518
520
522
524
526
528
531
533
535
537
538
540
541
542
542
542
543
542
542
541
540
539
537
536
534
532
529
527
524
521
518
515
512
509
506
502
499
496
492
489
486
483
480
477
474
471
469
467
465
463
462
460
459
458
457
457
456
455
454
453
452
450
449
447
445
443
440
438
435
432
429
426
423
419
416
412
409
405
402
399
395
392
389
386
382
379
376
374
371
369
366
364
363
361
361
360
360
360
360
361
362
364
365
367
369
371
374
376
378
381
384
387
391
395
399
404
409
414
420
426
432
439
445
453
460
467
475
482
490
498
505
513
520
528
535
542
549
556
562
568
574
580
585
590
595
600
603
607
610
613
615
617
618
620
621
622
623
624
625
626
628
629
631
634
637
640
643
647
651
655
659
663
667
671
675
678
682
686
689
692
695
698
700
702
704
706
707
708
709
710
710
711
711
711
710
710
709
708
706
704
702
700
697
694
691
688
685
681
678
674
670
666
662
658
654
650
645
641
637
633
628
624
620
615
611
606
601
596
591
587
582
576
571
566
561
556
550
545
539
534
528
523
517
511
505
499
494
488
482
476
471
465
459
454
448
443
437
432
427
421
416
411
405
400
395
391
386
381
377
373
369
365
361
357
354
351
348
345
342
339
337
335
333
331
330
329
329
329
330
331
332
334
335
337
338
340
341
342
343
344
345
345
346
346
346
347
347
347
346
346
345
343
342
340
338
336
334
331
329
326
324
321
318
316
313
310
308
305
302
300
297
294
292
289
286
284
281
279
277
275
272
270
269
267
265
263
261
259
257
255
253
250
247
244
241
238
234
230
227
223
220
217
213
210
208
205
203
200
198
195
192
189
186
183
179
175
172
168
164
160
157
153
150
147
144
142
139
137
134
132
129
126
124
121
117
114
110
106
102
98
94
89
85
80
75
70
65
59
54
48
42
36
29
23
16
8
1
-7
-15
-24
-33
-42
-51
-60
-70
-80
-89
-99
-109
-119
-128
-138
-147
-157
-166
-175
-183
-192
-200
-208
-216
-224
-232
-239
-246
-253
-259
-265
-271
-276
-281
-285
-288
-291
-293
-295
-297
-298
-299
-299
-299
-298
-298
-297
-295
-293
-292
-289
-287
-285
-282
-280
-277
-275
-273
-270
-268
-266
-263
-261
-259
-257
-254
-252
-250
-247
-245
-242
-239
-237
-234
-231
-228
-225
-222
-219
-217
-214
-212
-210
-209
-208
-207
-206
-206
-206
-206
-207
-207
-208
-209
-210
-211
-213
-214
-216
-218
-220
-223
-225
-228
-230
-233
-236
-239
-242
-245
-248
-251
-254
-257
-260
-263
-266
-269
-272
-275
-278
-281
-283
-286
-288
-290
-292
-295
-297
-299
-300
-302
-303
-305
-306
-306
-307
-307
-307
-306
-306
-305
-303
-302
-300
-299
-297
-296
-294
-293
-291
-290
-289
-287
-286
-285
-284
-283
-281
-280
-279
-278
-276
-275
-274
-273
-272
-271
-270
-269
-268
-267
-265
-264
-262
-260
-258
-255
-253
-250
-246
-243
-239
-236
-232
-227
-223
-218
-213
-208
-202
-197
-191
-185
-179
-173
-168
-162
-157
-151
-146
-141
-137
-132
-128
-124
-120
-116
-113
-110
-107
-104
-102
-100
-98
-97
-96
-95
-94
-94
-94
-94
-94
-95
-96
-96
-97
-98
-100
-101
-102
-103
-104
-105
-106
-107
-108
-109
-110
-111
-112
-113
-114
-114
-115
-116
-116
-116
-117
-117
-117
-117
-117
-117
-117
-117
-117
-117
-118
-118
-118
-119
-119
-119
-120
-120
-120
-120
-120
-120
-120
-119
-119
-119
-119
-119
-119
-119
-119
-119
-118
-118
-116
-115
-113
-111
-108
-106
-103
-99
-96
-92
-88
-83
-78
-73
-68
-62
-55
-49
-42
-35
-28
-20
-12
-4
4
12
20
29
38
46
56
65
74
84
94
104
114
124
135
146
156
167
178
189
200
211
222
233
244
254
265
275
285
294
303
311
319
326
333
340
346
352
358
364
369
374
379
384
388
392
396
400
403
406
409
412
414
417
420
422
425
427
430
433
435
438
441
444
446
449
451
452
454
455
456
458
459
460
461
462
463
465
466
467
469
470
471
472
474
475
476
477
479
480
482
484
486
488
490
492
494
496
498
500
502
504
506
508
510
512
514
516
518
520
522
525
527
530
532
535
538
540
543
545
547
549
550
552
553
554
556
557
558
560
562
565
567
570
573
575
578
580
583
585
586
588
589
590
591
592
593
594
594
595
595
596
596
596
595
594
593
592
590
588
586
584
582
579
577
574
572
569
566
563
560
557
554
550
547
543
539
535
531
527
523
519
515
511
507
503
499
495
492
488
485
482
480
477
475
474
472
471
470
470
469
470
470
471
472
473
475
477
480
483
486
489
493
497
502
507
511
516
522
527
532
538
543
548
554
559
564
570
575
581
586
591
596
601
606
611
616
620
624
628
632
636
640
643
647
650
653
656
659
661
663
665
666
666
667
667
666
666
665
664
662
660
658
656
654
651
648
644
641
637
634
630
627
623
620
616
613
609
605
601
596
591
586
581
575
570
565
559
554
549
544
539
534
529
524
519
514
509
504
499
495
490
486
482
478
475
472
470
468
466
464
462
461
459
458
456
455
454
453
452
451
450
449
448
448
447
446
445
444
443
442
440
439
437
436
434
432
431
429
427
424
422
419
417
414
411
408
405
402
399
395
392
388
384
380
376
371
367
362
357
352
347
341
336
331
326
320
315
310
305
300
295
289
284
279
274
269
264
259
254
249
244
239
234
228
223
217
212
206
200
195
189
183
178
172
166
161
155
149
144
138
132
126
121
115
109
103
97
91
85
79
74
68
62
57
51
46
41
35
30
25
20
15
10
6
1
-3
-7
-10
-14
-17
-20
-23
-26
-28
-31
-34
-37
-39
-42
-44
-47
-49
-52
-54
-56
-58
-61
-63
-65
-67
-70
-72
-74
-77
-79
-81
-84
-86
-89
-91
-94
-96
-99
-102
-106
-110
-114
-118
-123
-128
-134
-140
-145
-151
-157
-163
-170
-176
-182
-188
-194
-201
-207
-214
-220
-227
-233
-240
-246
-253
-259
-265
-271
-278
-284
-290
-296
-302
-308
-314
-320
-326
-332
-337
-343
-348
-353
-359
-364
-369
-374
-379
-384
-389
-393
-398
-403
-407
-412
-416
-420
-425
-428
-432
-436
-440
-443
-446
-450
-452
-455
-457
-459
-461
-462
-463
-464
-464
-465
-465
-466
-466
-466
-466
-466
-465
-464
-463
-462
-460
-458
-456
-454
-452
-450
-448
-446
-444
-441
-439
-436
-433
-429
-426
-422
-419
-415
-412
-408
-405
-401
-398
-395
-392
-388
-385
-382
-379
-376
-373
-370
-367
-365
-362
-360
-358
-356
-354
-353
-351
-350
-349
-349
-348
-348
-347
-347
-347
-347
-347
-347
-347
-348
-348
-349
-350
-351
-353
-354
-356
-358
-361
-363
-366
-369
-372
-375
-379
-383
-386
-390
-394
-399
-403
-407
-411
-416
-420
-424
-428
-432
-436
-440
-444
-447
-450
-454
-457
-459
-462
-465
-468
-471
-474
-476
-479
-482
-484
-487
-489
-491
-494
-496
-499
-501
-503
-505
-507
-509
-511
-512
-514
-515
-516
-517
-517
-518
-518
-518
-518
-517
-517
-516
-514
-513
-511
-509
-506
-503
-500
-497
-493
-489
-485
-481
-476
-472
-467
-462
-457
-452
-446
-441
-435
-429
-423
-417
-410
-404
-397
-390
-383
-376
-369
-362
-355
-349
-342
-336
-330
-324
-318
-312
-306
-301
-295
-289
-284
-279
-274
-268
-264
-259
-255
-250
-246
-242
-238
-234
-231
-227
-224
-221
-218
-216
-213
-211
-210
-208
-207
-206
-205
-205
-204
-204
-204
-204
-204
-204
-205
-205
-206
-206
-207
-208
-209
-210
-212
-213
-215
-216
-218
-220
-221
-223
-225
-228
-230
-232
-234
-237
-239
-242
-245
-247
-250
-253
-256
-258
-261
-263
-266
-268
-271
-273
-275
-277
-279
-281
-282
-284
-285
-286
-286
-287
-288
-288
-289
-289
-289
-290
-290
-290
-290
-291
-291
-291
-291
-291
-291
-291
-291
-291
-291
-291
-291
-291
-291
-291
-291
-290
-290
-290
-289
-288
-287
-286
-285
-284
-283
-282
-280
-279
-277
-275
-273
-272
-270
-268
-266
-264
-262
-260
-259
-257
-255
-254
-252
-251
-249
-248
-247
-245
-244
-243
-241
-240
-238
-237
-235
-234
-232
-230
-229
-227
-226
-224
-222
-220
-218
-216
-214
-211
-209
-206
-203
-200
-197
-194
-191
-188
-185
-182
-178
-175
-171
-167
-163
-159
-155
-151
-146
-142
-137
-132
-126
-121
-115
-109
-102
-96
-89
-83
-76
-69
-62
-56
-49
-42
-35
-28
-20
-13
-5
2
10
19
27
35
44
52
60
69
77
84
92
99
106
113
120
126
133
139
145
152
158
164
170
176
182
187
192
197
202
206
211
215
219
223
227
231
235
239
243
247
251
255
259
264
268
273
277
282
287
292
297
303
308
314
320
325
331
337
343
349
354
360
366
371
376
381
386
391
396
400
405
409
413
417
421
425
429
433
436
440
443
446
449
452
455
457
459
461
463
465
466
467
467
468
468
468
467
466
465
464
462
460
457
455
452
449
446
442
439
435
432
428
425
421
418
414
411
407
404
401
398
395
393
390
387
385
383
380
379
377
375
374
373
372
371
371
371
371
372
373
374
375
377
379
382
384
387
390
394
398
402
406
411
416
421
426
431
437
442
447
453
458
464
469
474
480
485
491
496
502
507
513
518
524
530
535
541
546
552
557
563
568
574
579
585
590
595
601
606
611
617
622
627
632
636
641
645
650
654
658
662
666
669
673
676
679
682
685
688
690
693
695
697
698
700
701
703
704
705
706
707
708
708
709
709
709
708
708
707
706
705
704
703
701
699
697
695
692
690
687
684
682
679
677
675
673
671
670
668
666
665
663
661
659
657
655
653
650
648
645
643
640
637
634
631
628
625
622
619
616
613
610
607
604
602
599
596
593
591
588
585
583
580
578
576
573
571
569
567
564
562
560
558
557
555
553
551
549
547
544
542
540
537
535
533
531
528
526
524
521
519
516
514
511
508
505
502
499
496
492
489
485
482
478
474
470
466
462
457
453
448
443
439
434
429
424
420
415
410
405
400
395
390
385
380
376
371
366
361
355
350
345
340
335
331
326
322
317
313
310
306
303
300
297
294
292
289
287
284
281
279
276
273
270
267
264
261
258
256
253
250
247
244
242
239
236
233
230
227
225
222
219
216
213
210
207
204
200
197
194
191
187
184
181
178
174
171
168
165
162
159
156
153
150
147
144
141
138
136
133
130
128
125
123
121
118
116
114
113
111
109
108
106
104
103
101
100
99
97
96
95
94
93
92
91
90
89
89
88
88
88
88
87
87
87
87
87
87
88
88
88
87
87
87
86
86
85
85
84
83
83
82
81
80
79
77
76
74
72
69
67
64
61
57
54
50
46
42
38
33
29
24
19
15
10
5
0
-5
-11
-16
-21
-27
-32
-38
-44
-50
-56
-62
-68
-74
-80
-86
-92
-99
-105
-112
-118
-125
-132
-139
-146
-153
-159
-166
-173
-180
-186
-193
-199
-206
-212
-218
-223
-229
-234
-239
-244
-248
-252
-257
-260
-264
-268
-271
-274
-277
-279
-282
-284
-286
-287
-288
-289
-290
-290
-290
-290
-289
-288
-287
-286
-285
-283
-281
-279
-277
-275
-273
-271
-268
-265
-263
-260
-257
-253
-250
-247
-243
-240
-236
-232
-228
-224
-219
-214
-209
-204
-198
-193
-187
-181
-174
-168
-161
-154
-147
-139
-132
-124
-117
-109
-101
-94
-86
-78
-70
-62
-54
-47
-39
-31
-24
-17
-10
-3
3
9
15
20
26
31
35
40
44
48
51
55
57
60
62
64
66
67
68
69
70
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
72
72
72
73
73
74
74
75
75
76
76
77
77
78
79
79
80
81
82
82
83
84
85
85
86
87
87
87
88
88
89
89
89
90
90
91
92
93
94
95
96
98
99
101
103
104
106
108
110
113
115
117
120
122
125
127
130
132
133
135
136
137
137
137
137
137
136
135
134
133
132
130
129
127
125
124
122
120
117
115
113
110
107
105
102
99
96
94
91
89
86
83
81
79
76
73
71
68
66
63
60
58
55
52
49
47
44
42
39
36
34
31
28
26
22
19
16
13
9
6
2
-2
-5
-9
-13
-17
-21
-25
-29
-34
-38
-43
-47
-52
-57
-62
-67
-71
-76
-81
-85
-89
-94
-98
-101
-105
-109
-112
-115
-119
-122
-125
-128
-131
-135
-138
-141
-144
-147
-151
-154
-157
-160
-162
-165
-167
-170
-172
-174
-176
-177
-179
-180
-182
-183
-184
-185
-186
-187
-187
-188
-188
-188
-187
-187
-186
-185
-184
-183
-182
-180
-179
-177
-175
-173
-171
-169
-167
-165
-163
-161
-159
-156
-153
-151
-148
-145
-141
-138
-135
-131
-128
-125
-121
-118
-115
-112
-108
-105
-102
-100
-97
-94
-92
-90
-88
-86
-85
-83
-82
-81
-80
-79
-78
-78
-77
-76
-76
-75
-75
-74
-73
-72
-71
-70
-68
-66
-64
-62
-60
-58
-55
-53
-51
-48
-46
-44
-42
-40
-38
-37
-35
-34
-33
-32
-31
-30
-29
-28
-27
-27
-26
-26
-26
-25
-25
-25
-25
-25
-25
-25
-25
-25
-26
-26
-26
-27
-27
-27
-28
-28
-29
-29
-30
-30
-30
-30
-30
-30
-30
-29
-28
-27
-26
-24
-22
-20
-18
-15
-12
-9
-6
-3
1
4
8
11
14
17
20
22
24
26
28
30
31
32
33
34
35
35
35
35
35
35
35
35
34
34
33
32
31
30
29
28
26
25
23
21
20
18
16
14
12
11
9
7
5
4
2
0
-1
-3
-4
-5
-6
-8
-9
-10
-11
-12
-13
-14
-16
-17
-19
-20
-22
-24
-26
-28
-30
-33
-35
-38
-40
-43
-46
-48
-51
-54
-56
-59
-62
-64
-67
-70
-73
-76
-79
-81
-84
-86
-88
-91
-93
-94
-96
-98
-100
-102
-104
-106
-108
-110
-112
-114
-116
-118
-120
-123
-125
-127
-129
-132
-134
-137
-139
-142
-146
-149
-153
-157
-161
-165
-169
-174
-179
-184
-189
-195
-200
-206
-212
-219
-225
-231
-238
-245
-252
-259
-265
-272
-279
-286
-293
-299
-306
-313
-319
-326
-333
-340
-347
-354
-361
-369
-376
-384
-391
-399
-406
-413
-421
-428
-435
-441
-448
-454
-461
-467
-473
-479
-485
-492
-498
-504
-510
-517
-523
-530
-537
-543
-550
-556
-563
-569
-575
-581
-587
-593
-599
-604
-610
-615
-621
-626
-631
-636
-641
-645
-650
-654
-658
-662
-665
-669
-672
-674
-677
-679
-681
-682
-684
-685
-685
-686
-686
-686
-686
-685
-685
-684
-683
-683
-682
-681
-680
-679
-677
-675
-674
-671
-669
-666
-663
-660
-656
-652
-648
-644
-639
-635
-630
-625
-619
-614
-608
-603
-597
-591
-585
-579
-573
-567
-560
-555
-549
-543
-538
-532
-527
-522
-517
-513
-508
-504
-499
-495
-491
-487
-483
-480
-476
-472
-469
-466
-462
-459
-456
-453
-450
-447
-445
-442
-440
-437
-435
-433
-431
-429
-427
-425
-423
-421
-419
-417
-416
-414
-412
-411
-409
-408
-406
-405
-404
-402
-401
-400
-399
-398
-397
-395
-394
-393
-393
-392
-391
-390
-390
-390
-390
-390
-390
-391
-392
-392
-394
-395
-397
-398
-400
-402
-404
-407
-409
-412
-414
-417
-420
-423
-426
-429
-432
-435
-439
-442
-445
-448
-451
-455
-458
-461
-464
-467
-471
-474
-477
-480
-484
-487
-490
-493
-496
-499
-501
-504
-506
-507
-509
-510
-511
-511
-511
-511
-511
-510
-509
-508
-507
-506
-504
-502
-500
-498
-496
-493
-491
-488
-485
-482
-479
-476
-473
-470
-467
-464
-461
-459
-456
-453
-451
-448
-446
-444
-441
-439
-437
-434
-432
-429
-427
-425
-422
-420
-417
-415
-412
-410
-407
-404
-402
-399
-396
-393
-390
-387
-384
-381
-378
-374
-371
-368
-364
-361
-357
-354
-350
-346
-342
-338
-334
-330
-326
-322
-317
-312
-307
-302
-297
-291
-285
-279
-272
-265
-258
-251
-243
-236
-228
-220
-212
-204
-195
-187
-179
-170
-162
-153
-144
-136
-127
-118
-109
-101
-92
-84
-76
-68
-61
-54
-47
-40
-34
-28
-23
-17
-12
-7
-2
3
8
13
18
23
28
33
38
43
49
54
60
65
71
76
82
87
92
97
102
107
111
115
119
123
127
130
133
136
138
141
143
145
147
149
152
154
156
159
161
164
166
169
172
174
177
179
182
184
186
188
190
191
193
194
196
197
198
199
199
200
200
200
200
200
200
199
199
198
197
196
195
194
193
191
190
188
187
185
183
181
178
176
174
171
169
167
164
162
160
158
156
154
152
150
149
147
146
145
143
142
141
140
138
137
135
134
132
131
129
128
126
125
124
123
121
120
119
118
118
117
116
115
114
114
113
112
112
112
112
112
112
112
113
114
115
116
117
119
121
123
125
127
129
131
134
137
139
142
145
148
151
154
157
160
163
166
169
171
174
177
179
182
184
187
189
192
195
197
200
202
205
207
210
212
214
216
218
220
222
224
226
227
229
230
232
234
235
237
238
240
241
243
244
246
247
249
250
252
253
255
256
257
259
260
261
263
264
265
266
267
268
269
269
270
271
271
272
273
273
274
274
274
275
275
275
275
275
275
275
274
273
273
272
271
270
270
269
269
269
269
269
270
271
272
274
275
277
279
281
284
286
289
292
295
298
301
304
307
310
313
316
318
321
323
325
328
330
331
333
335
336
337
338
339
340
341
342
342
342
343
343
343
342
342
341
341
340
339
338
337
336
335
334
332
331
329
327
325
323
321
318
315
312
309
305
301
297
292
288
283
278
273
267
262
256
251
245
240
234
229
223
218
212
206
200
194
187
181
175
168
161
155
148
142
135
129
123
116
110
104
98
92
87
81
75
70
65
60
54
49
44
39
34
29
24
19
14
9
5
0
-5
-10
-14
-19
-23
-27
-31
-35
-39
-42
-45
-48
-50
-52
-54
-56
-58
-59
-60
-61
-62
-62
-63
-64
-64
-65
-65
-66
-67
-67
-68
-69
-69
-70
-70
-70
-71
-70
-70
-70
-70
-69
-69
-68
-67
-67
-66
-65
-64
-63
-63
-62
-61
-60
-60
-59
-59
-58
-58
-58
-57
-57
-57
-57
-57
-58
-58
-58
-58
-58
-58
-57
-57
-57
-56
-56
-55
-54
-53
-52
-52
-51
-50
-50
-49
-48
-48
-47
-47
-46
-46
-45
-45
-44
-44
-43
-43
-43
-43
-43
-43
-43
-43
-44
-44
-45
-46
-47
-48
-50
-51
-53
-55
-57
-59
-61
-63
-66
-68
-70
-72
-74
-76
-78
-80
-82
-83
-85
-87
-88
-90
-92
-93
-94
-96
-97
-98
-99
-100
-100
-101
-101
-101
-101
-102
-101
-101
-101
-101
-101
-100
-100
-100
-100
-100
-99
-99
-99
-99
-99
-98
-98
-98
-97
-97
-96
-95
-95
-94
-93
-92
-91
-90
-89
-88
-86
-85
-84
-82
-81
-79
-77
-75
-73
-70
-68
-65
-63
-60
-58
-55
-52
-49
-46
-44
-41
-38
-35
-32
-29
-26
-23
-20
-17
-14
-11
-8
-5
-3
0
2
4
7
9
11
13
15
16
18
20
22
23
25
27
28
30
31
33
35
36
38
39
40
42
43
45
46
47
48
50
51
52
53
55
56
57
59
60
62
64
65
67
69
71
74
76
78
81
83
86
89
91
94
97
99
102
105
107
110
113
116
119
122
124
127
130
132
135
137
140
142
144
146
148
149
151
152
154
155
156
156
157
157
158
158
158
158
158
158
158
158
158
158
158
158
158
158
158
158
158
157
157
156
155
154
153
151
150
148
146
145
143
141
139
137
135
134
132
130
129
127
126
125
124
123
123
122
122
121
121
121
120
120
119
119
119
118
117
117
116
115
115
114
113
112
112
111
110
109
108
107
106
105
103
102
100
98
97
95
93
91
88
86
84
81
78
76
73
70
67
64
61
58
55
52
49
47
44
42
40
38
36
34
32
30
29
27
25
24
22
21
19
18
16
15
13
12
11
10
9
8
7
6
5
4
3
3
2
1
-1
-2
-3
-4
-6
-7
-9
-11
-14
-16
-19
-21
-24
-27
-31
-34
-37
-40
-43
-47
-50
-53
-57
-60
-63
-67
-70
-74
-78
-82
-86
-90
-94
-99
-104
-109
-114
-119
-124
-130
-135
-141
-147
-153
-159
-166
-172
-179
-185
-192
-199
-206
-213
-220
-228
-235
-243
-250
-258
-266
-274
-281
-289
-296
-304
-311
-319
-326
-333
-340
-346
-353
-359
-365
-371
-377
-382
-388
-393
-397
-402
-406
-410
-414
-417
-421
-424
-426
-429
-431
-434
-435
-437
-438
-440
-441
-441
-442
-442
-442
-442
-441
-441
-440
-439
-438
-437
-435
-434
-432
-430
-428
-426
-424
-421
-418
-416
-413
-410
-407
-404
-400
-397
-393
-389
-385
-381
-377
-372
-367
-363
-358
-353
-348
-342
-337
-332
-327
-321
-316
-311
-305
-300
-294
-289
-283
-277
-272
-266
-261
-255
-250
-245
-240
-235
-230
-225
-220
-215
-210
-206
-201
-196
-192
-187
-183
-178
-174
-170
-166
-162
-158
-155
-151
-148
-145
-142
-138
-135
-132
-129
-127
-124
-121
-118
-115
-112
-109
-106
-102
-99
-96
-93
-90
-88
-85
-82
-79
-76
-73
-71
-68
-66
-63
-61
-59
-57
-54
-52
-50
-48
-46
-44
-43
-41
-39
-38
-36
-35
-33
-32
-31
-30
-29
-27
-26
-25
-24
-23
-21
-20
-19
-17
-16
-14
-13
-12
-10
-9
-8
-7
-6
-6
-5
-4
-4
-4
-4
-4
-4
-4
-4
-4
-5
-5
-5
-6
-6
-7
-7
-8
-8
-9
-9
-10
-10
-11
-11
-12
-12
-13
-13
-13
-13
-13
-13
-13
-13
-12
-12
-12
-11
-11
-10
-9
-9
-8
-7
-7
-6
-5
-4
-3
-2
-2
-1
0
0
1
1
2
2
2
2
3
3
3
4
4
4
5
5
6
6
7
7
8
8
9
9
10
10
11
11
11
11
11
11
11
10
10
9
8
7
5
4
3
1
-1
-3
-4
-6
-8
-10
-12
-14
-15
-17
-19
-21
-23
-24
-26
-28
-30
-32
-34
-36
-38
-40
-43
-45
-47
-50
-52
-55
-57
-60
-62
-65
-67
-70
-72
-75
-77
-79
-82
-84
-87
-89
-92
-95
-97
-100
-103
-106
-109
-112
-115
-117
-120
-123
-126
-128
-131
-134
-136
-138
-141
-143
-145
-147
-149
-151
-154
-156
-158
-160
-162
-164
-166
-168
-169
-171
-173
-175
-176
-178
-179
-180
-181
-182
-183
-183
-184
-184
-184
-184
-184
-184
-183
-183
-182
-181
-180
-179
-178
-177
-176
-174
-173
-171
-170
-168
-166
-164
-162
-160
-158
-156
-155
-153
-151
-149
-147
-146
-144
-143
-141
-140
-138
-137
-136
-135
-134
-133
-132
-131
-131
-130
-130
-129
-129
-129
-129
-129
-129
-129
-129
-130
-130
-130
-131
-131
-132
-133
-134
-135
-136
-137
-138
-139
-140
-142
-143
-144
-145
-147
-148
-149
-151
-152
-153
-155
-156
-157
-159
-160
-161
-163
-164
-165
-167
-168
-169
-171
-172
-174
-175
-176
-178
-179
-180
-182
-183
-184
-185
-187
-188
-189
-190
-191
-191
-192
-193
-193
-194
-194
-194
-194
-194
-194
-194
-193
-193
-192
-191
-190
-189
-188
-186
-185
-183
-181
-179
-176
-174
-171
-168
-165
-162
-158
-155
-151
-147
-143
-139
-134
-130
-125
-120
-115
-109
-104
-98
-93
-87
-81
-75
-69
-64
-58
-52
-46
-41
-35
-30
-24
-19
-13
-8
-2
3
8
14
19
24
29
34
39
45
50
55
60
65
70
75
80
86
91
96
102
107
113
118
124
129
135
140
145
150
156
161
166
171
176
181
186
191
196
201
206
211
216
221
225
230
234
239
243
247
251
255
259
262
266
269
273
276
279
282
284
286
289
291
292
294
296
297
298
299
299
300
300
300
300
299
299
298
298
297
296
295
295
294
293
292
292
291
291
290
290
289
289
289
289
289
289
289
289
290
290
290
290
290
290
290
290
289
289
289
288
288
287
286
286
285
284
284
283
283
282
281
281
280
279
278
277
276
275
274
273
271
270
268
266
264
262
260
257
255
252
249
247
244
241
237
234
231
227
224
220
217
213
209
206
202
198
195
191
187
183
179
175
171
166
162
158
154
149
145
140
136
131
127
122
117
113
108
103
99
94
89
85
80
75
71
66
61
57
52
47
42
37
32
27
22
17
12
7
2
-3
-7
-12
-16
-21
-25
-29
-33
-37
-41
-44
-48
-51
-54
-57
-60
-62
-65
-67
-69
-71
-73
-75
-77
-79
-80
-82
-84
-85
-86
-88
-89
-90
-91
-92
-93
-94
-95
-96
-96
-97
-98
-99
-100
-101
-102
-103
-104
-104
-105
-106
-107
-108
-108
-109
-110
-110
-111
-112
-113
-114
-115
-116
-117
-119
-120
-122
-124
-127
-129
-132
-135
-138
-141
-144
-148
-151
-155
-159
-163
-167
-171
-175
-179
-184
-188
-192
-197
-201
-205
-209
-213
-217
-221
-224
-228
-231
-235
-238
-241
-243
-246
-248
-250
-252
-254
-255
-257
-258
-258
-259
-259
-260
-259
-259
-259
-258
-258
-257
-256
-256
-255
-254
-253
-252
-251
-249
-248
-247
-246
-245
-243
-242
-241
-239
-238
-237
-236
-234
-233
-232
-230
-229
-227
-226
-224
-222
-221
-219
-216
-214
-212
-209
-207
-204
-201
-198
-196
-193
-190
-186
-183
-180
-177
-174
-171
-169
-166
-163
-160
-157
-155
-152
-149
-146
-144
-141
-138
-135
-132
-129
-126
-123
-120
-117
-114
-110
-107
-103
-100
-96
-92
-89
-85
-81
-76
-72
-68
-64
-60
-56
-52
-47
-43
-39
-35
-31
-26
-22
-18
-14
-10
-6
-3
1
5
8
12
16
19
23
26
29
33
36
40
43
46
50
53
57
60
63
67
70
73
76
79
81
84
87
89
91
93
95
97
99
101
102
104
105
107
108
110
111
112
114
115
116
118
119
121
122
124
126
128
130
132
134
137
139
141
143
146
148
150
153
155
157
159
162
164
166
169
171
173
175
177
179
181
183
185
186
188
190
192
193
195
197
198
200
202
204
206
207
209
211
213
215
217
219
221
223
226
228
230
232
235
237
240
242
244
247
249
251
253
255
257
259
261
263
264
266
267
269
270
271
273
274
276
278
279
281
283
285
287
289
291
294
296
299
301
304
307
309
312
315
317
320
323
326
328
331
334
336
339
341
344
346
348
351
352
354
356
357
359
360
361
362
363
363
364
365
365
366
366
367
367
368
368
368
369
369
369
369
369
369
369
369
369
369
369
368
368
368
368
367
367
367
367
366
366
366
365
365
365
364
364
364
364
364
364
365
365
365
366
367
367
368
369
370
371
372
373
375
376
378
379
381
382
383
385
386
387
388
389
390
391
391
391
391
391
391
391
391
390
389
389
388
387
386
386
385
384
383
382
382
381
380
380
379
378
378
377
377
376
376
375
374
374
373
373
372
371
371
370
369
368
366
365
364
362
360
359
357
355
353
351
349
347
345
343
340
337
334
332
328
325
322
318
315
311
307
303
299
295
291
287
283
278
274
270
265
261
257
252
248
244
239
235
230
225
221
216
211
206
201
196
191
185
180
175
169
164
159
153
148
143
137
132
126
121
116
110
105
100
95
90
86
81
77
73
68
65
61
57
54
51
48
45
42
40
37
35
33
31
30
28
27
25
24
23
22
22
21
21
20
20
20
20
20
20
21
21
22
22
22
23
24
24
25
25
26
27
27
28
29
30
31
31
32
33
34
35
36
37
38
38
39
40
40
41
42
42
43
44
44
45
45
46
47
48
49
50
51
52
53
54
55
57
58
60
61
63
64
66
68
70
72
74
76
78
81
83
86
89
91
94
97
101
104
107
111
114
118
121
125
129
133
136
140
144
148
151
155
159
163
166
170
174
177
181
185
188
192
195
199
202
205
208
211
214
217
220
222
225
227
229
231
233
234
236
238
239
240
242
243
244
245
246
247
248
248
249
250
250
250
251
251
251
251
251
251
251
251
251
250
250
249
248
248
247
246
244
243
242
241
239
238
236
234
232
230
228
226
224
221
219
216
213
211
208
205
201
198
195
192
188
184
181
177
173
169
165
161
157
153
149
145
141
138
134
130
126
122
119
115
111
108
104
101
98
95
92
89
86
84
81
79
76
74
72
70
67
65
63
61
59
57
56
54
53
51
50
48
47
46
44
43
42
41
40
39
38
37
36
35
34
34
33
33
32
32
31
31
31
30
30
30
30
30
29
29
29
29
28
28
27
27
26
25
25
24
23
22
21
20
18
17
16
15
13
12
10
8
6
4
2
0
-3
-5
-8
-11
-14
-17
-20
-23
-27
-30
-34
-37
-41
-44
-48
-52
-55
-59
-62
-66
-69
-72
-75
-79
-82
-85
-88
-91
-93
-96
-99
-101
-104
-106
-109
-111
-113
-115
-117
-119
-121
-123
-125
-127
-129
-131
-132
-134
-136
-138
-140
-141
-143
-145
-146
-148
-150
-151
-153
-154
-155
-157
-158
-159
-160
-161
-162
-163
-164
-165
-165
-166
-167
-168
-169
-170
-171
-172
-173
-175
-176
-177
-179
-181
-182
-184
-185
-187
-189
-191
-192
-194
-196
-197
-199
-201
-203
-204
-206
-208
-210
-213
-215
-217
-220
-222
-225
-227
-230
-233
-236
-238
-241
-244
-247
-250
-252
-255
-257
-260
-262
-264
-266
-268
-270
-272
-274
-275
-277
-278
-279
-281
-282
-283
-284
-285
-285
-286
-286
-286
-286
-286
-286
-286
-285
-284
-284
-283
-281
-280
-279
-277
-276
-274
-273
-271
-269
-267
-265
-264
-262
-260
-258
-256
-254
-252
-249
-247
-245
-243
-241
-239
-236
-234
-231
-229
-226
-223
-220
-218
-215
-212
-209
-206
-203
-200
-197
-194
-191
-188
-185
-182
-180
-177
-174
-171
-169
-167
-164
-162
-160
-158
-156
-154
-152
-151
-149
-148
-146
-145
-144
-143
-142
-142
-141
-141
-141
-141
-141
-142
-142
-143
-144
-144
-145
-146
-147
-148
-149
-150
-151
-152
-153
-154
-155
-156
-156
-157
-157
-157
-157
-157
-157
-157
-156
-156
-155
-154
-153
-152
-151
-150
-149
-148
-147
-145
-144
-143
-141
-140
-138
-137
-136
-134
-133
-131
-130
-129
-128
-126
-125
-124
-123
-122
-121
-120
-120
-119
-118
-117
-117
-116
-116
-115
-115
-115
-115
-115
-114
-114
-114
-114
-114
-114
-114
-114
-113
-113
-113
-113
-112
-112
-111
-111
-110
-110
-109
-109
-108
-107
-107
-106
-105
-105
-104
-103
-102
-101
-101
-100
-99
-98
-97
-96
-95
-93
-92
-90
-89
-87
-86
-84
-82
-80
-78
-76
-74
-72
-70
-68
-66
-64
-62
-60
-58
-56
-54
-52
-50
-48
-47
-45
-43
-42
-40
-39
-37
-36
-35
-34
-32
-31
-30
-29
-29
-28
-27
-26
-26
-26
-25
-25
-25
-25
-25
-25
-25
-25
-26
-26
-27
-27
-28
-29
-29
-30
-31
-32
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-47
-48
-49
-50
-50
-51
-51
-52
-52
-53
-53
-54
-54
-55
-55
-55
-55
-55
-55
-55
-55
-55
-55
-55
-55
-55
-54
-54
-54
-54
-54
-54
-55
-55
-55
-55
-55
-55
-55
-56
-56
-56
-56
-56
-56
-57
-57
-57
-57
-57
-57
-57
-57
-57
-57
-57
-57
-57
-57
-57
-56
-56
-56
-56
-56
-55
-55
-55
-55
-54
-54
-54
-54
-54
-53
-53
-53
-53
-54
-54
-54
-54
-55
-55
-56
-56
-56
-57
-57
-58
-58
-59
-59
-60
-61
-62
-62
-63
-64
-65
-66
-67
-68
-69
-71
-72
-73
-75
-76
-78
-79
-81
-82
-84
-86
-87
-89
-91
-92
-94
-95
-96
-98
-99
-100
-101
-101
-102
-103
-103
-104
-104
-104
-105
-105
-105
-105
-105
-105
-104
-104
-104
-103
-103
-102
-102
-101
-100
-100
-99
-98
-98
-97
-96
-95
-94
-93
-92
-91
-91
-90
-89
-88
-88
-87
-87
-86
-86
-85
-85
-84
-84
-83
-83
-83
-83
-82
-82
-82
-81
-81
-80
-79
-79
-78
-77
-75
-74
-72
-71
-69
-67
-65
-63
-60
-58
-55
-52
-49
-46
-43
-40
-37
-33
-29
-25
-22
-17
-13
-9
-5
0
4
9
14
19
23
28
33
38
43
48
53
58
63
68
72
77
82
86
91
95
99
103
107
111
114
118
121
124
127
129
132
134
136
139
141
142
144
146
147
149
150
151
153
154
155
155
156
157
157
158
159
159
160
160
161
161
162
162
162
163
163
163
164
164
164
164
164
165
165
165
165
165
165
165
165
165
165
165
165
165
165
165
165
164
164
163
163
162
162
161
161
160
160
159
158
158
157
156
155
155
154
153
153
152
151
150
150
149
149
148
147
147
147
146
146
146
146
146
147
147
148
148
149
150
150
151
152
153
154
155
157
158
159
160
161
163
164
165
167
168
169
171
172
173
175
176
178
179
181
182
184
186
187
189
190
192
193
194
196
197
198
199
200
201
201
202
203
203
203
204
204
204
204
204
204
204
204
204
203
203
202
202
201
201
200
199
198
198
197
196
195
193
192
191
189
188
186
184
183
181
178
176
174
171
168
165
162
159
156
153
149
145
141
137
133
129
125
120
116
111
106
101
96
90
85
79
74
68
62
56
50
44
38
32
26
20
14
8
2
-4
-10
-16
-22
-27
-33
-39
-45
-50
-56
-61
-66
-71
-76
-81
-85
-90
-94
-98
-102
-106
-110
-114
-117
-120
-124
-127
-129
-132
-135
-137
-139
-141
-143
-145
-146
-148
-149
-150
-151
-152
-153
-153
-154
-154
-154
-154
-153
-153
-152
-152
-151
-150
-149
-148
-147
-145
-144
-142
-141
-139
-137
-135
-134
-132
-130
-128
-126
-125
-123
-121
-119
-117
-115
-113
-111
-109
-107
-106
-104
-102
-100
-99
-97
-96
-94
-93
-92
-91
-90
-89
-88
-88
-87
-87
-86
-86
-86
-86
-86
-86
-86
-87
-87
-87
-88
-88
-88
-89
-89
-89
-90
-90
-90
-91
-91
-91
-91
-92
-92
-92
-92
-93
-93
-93
-93
-93
-92
-92
-92
-92
-91
-91
-90
-90
-89
-88
-87
-87
-86
-84
-83
-82
-81
-80
-78
-77
-76
-75
-73
-72
-71
-70
-68
-67
-66
-65
-64
-62
-61
-60
-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
-11
-9
-7
-5
-3
-1
1
3
6
8
10
13
15
18
20
23
25
28
31
34
37
40
43
46
49
52
55
59
62
66
70
73
77
81
85
88
92
96
100
104
108
112
116
119
123
126
130
133
137
140
143
146
150
153
156
159
162
165
168
172
175
178
181
184
187
191
194
197
201
204
208
211
215
219
223
226
230
234
238
241
245
249
252
256
259
263
267
270
274
277
281
285
288
292
295
299
302
306
309
312
315
319
322
325
328
330
333
336
338
341
343
346
348
350
352
355
356
358
360
362
364
365
367
368
369
371
372
373
374
374
375
376
376
377
377
377
377
377
378
378
378
378
378
378
378
378
379
379
379
379
380
380
380
381
381
382
382
383
383
384
385
385
386
386
387
388
388
389
390
390
391
392
393
394
395
396
397
398
399
400
401
402
404
405
406
407
408
410
411
412
413
415
416
417
418
419
421
422
423
424
425
426
427
428
429
430
430
431
432
433
433
434
434
435
435
435
436
436
436
436
436
436
436
435
435
434
434
433
432
431
430
429
427
426
424
422
420
419
417
414
412
410
408
406
403
401
399
396
394
391
389
387
385
383
380
378
376
374
372
370
368
366
364
362
360
358
356
354
352
350
348
346
344
341
339
337
334
332
329
327
324
321
319
316
313
310
307
304
301
298
295
292
289
286
283
280
277
274
270
267
264
260
257
253
250
246
243
239
236
232
228
224
221
217
213
209
205
201
197
193
189
185
181
178
174
170
166
162
158
155
151
147
143
139
135
131
128
124
120
116
112
108
104
100
97
93
89
85
81
78
74
70
66
62
59
55
51
47
43
39
35
31
27
23
19
15
11
7
3
-1
-5
-9
-13
-17
-21
-25
-29
-33
-37
-41
-45
-49
-53
-57
-60
-64
-68
-72
-75
-79
-83
-86
-90
-94
-98
-101
-105
-109
-113
-117
-120
-124
-128
-132
-136
-139
-143
-147
-151
-155
-159
-162
-166
-170
-174
-177
-181
-185
-189
-192
-196
-200
-204
-208
-212
-216
-221
-225
-229
-233
-237
-241
-246
-250
-254
-258
-262
-267
-271
-275
-279
-284
-288
-292
-296
-301
-305
-310
-314
-318
-323
-327
-332
-336
-341
-345
-350
-354
-359
-363
-367
-372
-376
-380
-384
-388
-393
-396
-400
-404
-408
-411
-415
-418
-421
-425
-428
-431
-434
-437
-439
-442
-445
-447
-449
-452
-454
-456
-458
-460
-461
-463
-465
-466
-467
-469
-470
-471
-472
-473
-474
-475
-476
-477
-477
-478
-478
-478
-478
-478
-478
-478
-478
-477
-477
-476
-476
-475
-474
-473
-472
-471
-470
-469
-468
-467
-466
-465
-463
-462
-460
-458
-457
-455
-453
-451
-449
-447
-446
-444
-442
-440
-438
-436
-434
-432
-430
-428
-426
-424
-422
-420
-418
-417
-415
-413
-411
-410
-408
-407
-405
-404
-402
-401
-399
-398
-396
-395
-393
-392
-390
-389
-387
-386
-384
-383
-381
-380
-378
-377
-375
-374
-372
-371
-369
-368
-366
-365
-363
-362
-360
-358
-357
-355
-353
-351
-349
-347
-346
-344
-342
-340
-338
-336
-334
-332
-330
-329
-327
-325
-323
-321
-319
-317
-315
-314
-312
-310
-308
-306
-305
-303
-301
-300
-298
-297
-295
-294
-292
-291
-290
-288
-287
-286
-285
-284
-283
-282
-281
-280
-279
-278
-278
-277
-276
-276
-275
-275
-275
-275
-275
-275
-275
-274
-274
-274
-274
-274
-274
-273
-273
-273
-273
-272
-272
-272
-272
-271
-271
-271
-270
-270
-270
-269
-269
-269
-268
-268
-268
-268
-267
-267
-267
-267
-266
-266
-266
-266
-265
-265
-264
-264
-263
-263
-262
-262
-261
-260
-259
-259
-258
-257
-255
-254
-253
-252
-251
-250
-249
-248
-247
-246
-245
-244
-243
-242
-241
-240
-239
-238
-237
-236
-235
-234
-233
-232
-231
-231
-230
-229
-228
-227
-226
-226
-225
-224
-223
-222
-222
-221
-220
-219
-218
-217
-216
-215
-214
-213
-211
-210
-208
-207
-205
-204
-202
-200
-198
-196
-194
-192
-190
-188
-186
-184
-182
-179
-177
-175
-173
-170
-168
-166
-163
-161
-159
-156
-154
-152
-150
-148
-146
-143
-141
-139
-137
-135
-133
-131
-129
-126
-124
-122
-120
-117
-115
-112
-110
-107
-104
-102
-99
-96
-94
-91
-88
-85
-83
-80
-77
-74
-72
-69
-66
-63
-61
-58
-55
-53
-50
-47
-45
-42
-40
-37
-34
-32
-29
-27
-24
-21
-19
-16
-14
-11
-8
-6
-3
-1
2
4
6
9
11
13
16
18
20
23
25
27
29
31
33
35
36
38
39
41
42
43
44
46
47
48
49
50
51
52
53
54
54
55
56
57
58
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
76
77
78
79
80
81
83
84
85
87
88
89
91
92
94
95
97
98
99
100
102
103
103
104
105
106
106
107
108
108
109
109
109
110
110
110
110
110
110
110
110
109
109
108
108
107
107
106
105
104
104
103
102
101
100
99
98
97
96
94
93
92
90
89
87
86
84
83
81
80
78
77
75
74
72
71
69
68
67
65
64
63
62
60
59
58
57
56
55
54
53
52
52
51
50
50
49
49
49
48
48
48
48
47
47
47
47
47
48
48
48
48
48
48
48
49
49
49
49
50
50
50
51
51
51
52
52
53
53
54
54
55
56
56
57
58
59
60
61
62
62
63
64
65
66
67
68
69
70
72
73
74
75
76
78
79
80
81
83
84
85
86
87
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
103
104
104
105
106
106
107
108
108
109
109
110
110
110
111
111
112
112
113
113
113
114
114
114
115
115
115
115
115
115
116
116
116
116
116
116
116
117
117
117
117
118
118
119
119
120
120
121
121
122
122
123
123
124
124
124
125
125
125
125
125
125
126
126
126
126
126
126
126
126
125
125
124
124
123
122
121
120
119
118
117
115
114
113
111
109
108
106
104
103
101
99
97
95
93
91
88
86
84
81
79
76
73
71
68
65
63
60
57
55
52
49
46
44
41
38
35
32
29
26
23
20
17
14
11
8
5
2
-1
-4
-7
-10
-12
-15
-18
-21
-24
-27
-30
-33
-35
-38
-41
-44
-47
-50
-53
-56
-59
-61
-64
-67
-70
-73
-75
-78
-80
-83
-85
-87
-89
-91
-93
-95
-97
-98
-100
-101
-102
-103
-104
-105
-106
-106
-107
-107
-107
-108
-108
-108
-108
-108
-108
-108
-108
-108
-107
-107
-107
-106
-105
-105
-104
-103
-103
-102
-101
-100
-99
-98
-97
-96
-95
-94
-93
-92
-91
-90
-88
-87
-86
-85
-83
-82
-80
-79
-77
-76
-74
-73
-71
-69
-67
-66
-64
-62
-61
-59
-57
-56
-54
-53
-51
-50
-48
-47
-45
-44
-42
-41
-39
-38
-36
-34
-32
-30
-29
-27
-25
-23
-21
-19
-17
-15
-12
-10
-8
-6
-3
-1
1
3
6
8
10
13
15
17
19
22
24
26
28
30
32
34
36
38
39
41
43
44
46
47
49
50
51
52
53
54
55
56
57
58
59
59
60
61
61
61
62
62
62
63
63
63
63
63
63
63
63
64
64
64
64
64
65
65
65
65
65
66
66
66
66
67
67
67
67
68
68
68
69
69
70
70
70
71
72
72
73
74
74
75
76
77
78
79
80
81
83
84
85
87
88
90
92
93
95
97
99
101
102
104
106
108
110
112
114
116
118
120
123
125
127
129
131
133
135
137
140
142
144
146
148
150
152
154
156
158
159
161
163
165
166
168
169
171
173
174
176
177
179
180
181
183
184
185
187
188
190
191
192
194
195
197
198
199
200
202
203
204
205
206
208
209
210
211
213
214
216
217
219
220
222
223
225
226
228
229
231
233
234
236
238
239
241
243
244
246
247
249
250
252
253
254
256
257
258
259
260
262
263
264
265
265
266
267
268
268
269
269
269
270
270
270
270
271
271
271
271
271
271
270
270
270
270
269
269
269
268
268
268
267
267
267
266
266
265
265
264
264
263
263
262
262
261
260
260
260
259
259
258
258
257
257
257
256
256
256
255
255
254
254
254
253
253
253
252
252
252
251
251
251
250
250
250
249
249
249
248
248
247
247
246
246
245
245
244
243
242
242
241
240
239
238
237
235
234
233
231
230
228
226
225
223
221
219
217
215
213
211
209
207
205
203
200
198
196
193
191
189
186
184
182
179
177
174
172
169
167
165
162
159
157
154
152
149
147
144
142
139
137
134
132
129
127
125
123
120
118
116
114
111
109
107
105
103
101
100
98
96
94
93
91
89
88
86
85
84
82
81
80
79
78
77
76
76
75
74
74
73
73
72
72
72
72
72
72
72
72
72
73
73
74
74
75
75
76
77
77
78
79
80
81
82
84
85
86
87
88
89
90
91
92
93
94
95
96
96
97
98
98
98
99
99
99
99
98
98
98
97
97
96
95
94
94
93
91
90
89
88
86
85
83
81
79
78
76
74
72
70
67
65
63
61
59
56
54
52
49
47
45
42
40
38
36
34
32
30
28
26
24
22
20
18
17
15
14
12
10
9
8
6
5
4
2
1
0
-1
-2
-3
-4
-5
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-27
-28
-29
-31
-32
-34
-35
-37
-38
-40
-42
-43
-45
-47
-48
-50
-52
-53
-55
-57
-59
-61
-63
-65
-66
-68
-70
-71
-73
-74
-76
-78
-79
-81
-83
-84
-86
-87
-89
-90
-91
-93
-94
-95
-96
-97
-98
-99
-100
-101
-102
-103
-104
-104
-105
-106
-106
-107
-107
-107
-108
-108
-108
-108
-108
-108
-108
-108
-108
-107
-107
-107
-107
-107
-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
-108
-108
-108
-108
-108
-108
-108
-109
-109
-109
-109
-109
-110
-110
-110
-110
-111
-111
-111
-112
-112
-112
-112
-112
-112
-112
-112
-112
-112
-112
-112
-113
-113
-113
-113
-113
-113
-112
-112
-112
-112
-112
-112
-111
-111
-111
-110
-110
-110
-109
-109
-108
-108
-107
-107
-106
-105
-105
-104
-103
-102
-102
-101
-100
-99
-98
-98
-97
-96
-95
-94
-93
-92
-91
-90
-89
-88
-86
-85
-84
-83
-82
-80
-79
-78
-76
-75
-74
-72
-71
-69
-68
-66
-65
-63
-62
-60
-58
-57
-55
-54
-52
-51
-49
-48
-46
-45
-44
-42
-41
-39
-38
-36
-35
-33
-32
-30
-29
-27
-26
-24
-22
-20
-19
-17
-15
-14
-12
-11
-9
-8
-7
-5
-4
-3
-2
-1
0
1
1
2
2
3
3
4
4
5
5
5
5
5
5
5
5
5
5
5
4
4
4
4
3
3
3
3
2
2
2
1
1
1
1
0
0
0
-1
-1
-1
-1
-2
-2
-2
-2
-2
-2
-3
-3
-3
-3
-4
-4
-4
-4
-5
-5
-6
-6
-7
-7
-8
-8
-9
-9
-10
-10
-11
-11
-12
-12
-13
-13
-13
-14
-14
-15
-15
-16
-16
-17
-17
-17
-18
-18
-18
-19
-19
-19
-20
-20
-20
-20
-21
-21
-21
-21
-21
-21
-22
-22
-22
-21
-21
-21
-21
-21
-20
-20
-20
-19
-19
-18
-17
-17
-16
-15
-14
-13
-12
-11
-10
-9
-8
-7
-6
-5
-4
-3
-1
0
1
3
4
5
7
8
9
11
12
13
15
16
17
18
19
20
21
22
23
24
24
25
26
26
27
27
27
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
27
27
27
27
26
26
26
25
25
24
24
23
22
22
21
20
20
19
18
18
17
16
16
15
15
14
14
14
13
13
12
12
11
10
10
9
8
8
7
7
6
5
5
4
4
3
3
3
2
2
1
1
1
0
0
0
0
0
-1
-1
-1
-1
-1
-1
-1
-1
-2
-2
-2
-2
-3
-3
-3
-4
-4
-4
-5
-5
-5
-5
-6
-6
-6
-7
-7
-8
-8
-9
-9
-10
-10
-11
-11
-12
-12
-13
-13
-14
-14
-15
-15
-16
-16
-17
-17
-18
-18
-19
-19
-20
-20
-21
-21
-21
-21
-21
-22
-22
-22
-22
-22
-23
-23
-23
-24
-24
-25
-25
-26
-26
-27
-28
-28
-29
-30
-30
-31
-31
-32
-33
-33
-34
-34
-35
-36
-37
-37
-38
-39
-40
-41
-42
-43
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-100
-101
-102
-102
-103
-104
-105
-105
-106
-107
-107
-108
-108
-108
-109
-109
-109
-110
-110
-110
-110
-110
-110
-110
-110
-109
-109
-109
-109
-108
-108
-107
-107
-106
-105
-105
-104
-104
-103
-103
-102
-102
-101
-101
-100
-100
-100
-99
-99
-99
-98
-98
-97
-97
-96
-96
-95
-94
-94
-93
-92
-92
-91
-90
-89
-89
-88
-87
-87
-86
-85
-84
-83
-82
-81
-80
-79
-79
-78
-77
-76
-75
-74
-73
-73
-72
-71
-71
-70
-70
-69
-69
-69
-68
-68
-68
-68
-69
-69
-69
-69
-70
-70
-71
-72
-72
-73
-74
-74
-75
-76
-77
-78
-79
-80
-81
-82
-82
-83
-84
-85
-86
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-100
-101
-102
-103
-104
-104
-105
-106
-107
-108
-109
-110
-111
-112
-113
-114
-115
-116
-117
-117
-118
-119
-120
-120
-121
-122
-122
-123
-124
-124
-125
-126
-127
-127
-128
-129
-130
-130
-131
-132
-132
-133
-134
-135
-135
-136
-137
-138
-138
-139
-140
-141
-141
-142
-143
-144
-144
-145
-146
-146
-146
-147
-147
-147
-147
-147
-146
-146
-146
-145
-145
-144
-144
-143
-142
-141
-140
-139
-138
-137
-136
-135
-134
-133
-132
-131
-130
-129
-128
-127
-126
-125
-123
-122
-121
-120
-119
-118
-117
-116
-115
-113
-112
-111
-110
-110
-109
-108
-107
-106
-105
-105
-104
-103
-103
-102
-102
-101
-101
-100
-100
-100
-99
-99
-99
-99
-98
-98
-98
-98
-98
-98
-97
-97
-97
-97
-97
-97
-97
-97
-96
-96
-96
-95
-95
-95
-94
-94
-93
-93
-93
-92
-92
-91
-90
-90
-89
-88
-88
-87
-86
-85
-84
-83
-82
-81
-80
-79
-78
-76
-75
-74
-73
-71
-70
-69
-67
-66
-65
-63
-62
-61
-59
-58
-56
-55
-53
-52
-50
-49
-47
-46
-44
-42
-41
-39
-38
-36
-34
-33
-31
-29
-28
-26
-24
-22
-20
-19
-17
-15
-13
-11
-9
-7
-5
-3
-1
0
2
4
6
8
9
11
13
15
16
18
20
22
24
25
27
29
31
33
35
37
39
41
42
44
46
48
50
52
54
55
57
59
60
62
64
65
67
69
70
72
73
75
77
78
80
82
83
85
87
88
90
91
93
94
96
97
99
100
102
103
105
106
108
109
111
112
114
115
116
117
118
119
120
121
122
123
123
124
125
125
126
127
127
128
128
129
129
130
130
130
131
131
131
132
132
132
132
133
133
133
133
133
133
133
133
133
133
133
133
133
133
133
133
133
133
133
132
132
132
132
132
131
131
130
130
129
129
128
128
127
126
125
125
124
123
122
122
121
120
119
118
117
116
116
115
114
113
112
111
109
108
107
106
105
104
103
102
101
100
98
97
96
94
93
92
90
89
88
86
85
84
82
81
80
79
77
76
75
74
72
71
70
68
67
66
65
63
62
61
60
58
57
56
55
54
52
51
50
49
48
46
45
44
43
42
41
40
39
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
23
22
21
20
18
17
16
15
14
13
12
11
10
9
8
7
6
4
3
2
1
0
-1
-2
-3
-5
-6
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-25
-26
-27
-27
-28
-28
-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
-29
-29
-29
-29
-28
-28
-27
-27
-27
-26
-26
-25
-25
-24
-24
-23
-23
-22
-22
-21
-21
-20
-19
-19
-18
-18
-18
-17
-17
-16
-16
-15
-15
-15
-14
-14
-14
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-14
-14
-14
-15
-15
-15
-16
-16
-16
-17
-17
-17
-18
-18
-18
-18
-19
-19
-19
-19
-20
-20
-20
-20
-21
-21
-21
-21
-21
-21
-21
-21
-20
-20
-20
-20
-20
-20
-20
-19
-19
-19
-19
-18
-18
-18
-17
-17
-17
-16
-16
-16
-15
-15
-15
-14
-14
-14
-13
-13
-13
-12
-12
-12
-11
-11
-11
-11
-11
-11
-11
-10
-10
-10
-10
-10
-10
-10
-10
-10
-11
-11
-11
-11
-12
-12
-12
-13
-13
-13
-13
-14
-14
-14
-15
-15
-15
-16
-16
-17
-17
-18
-18
-19
-19
-20
-21
-21
-22
-22
-23
-24
-24
-25
-25
-26
-27
-27
-28
-28
-29
-30
-30
-31
-32
-32
-33
-34
-34
-35
-36
-37
-37
-38
-39
-40
-40
-41
-42
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-64
-65
-66
-67
-67
-68
-69
-69
-70
-70
-71
-71
-72
-72
-73
-73
-74
-74
-74
-75
-75
-75
-76
-76
-76
-77
-77
-78
-78
-79
-79
-80
-80
-81
-81
-82
-83
-83
-83
-84
-84
-85
-85
-85
-86
-86
-86
-87
-87
-87
-87
-88
-88
-88
-89
-89
-89
-90
-90
-91
-91
-92
-92
-93
-93
-94
-94
-95
-96
-96
-97
-97
-97
-98
-98
-98
-99
-99
-99
-100
-100
-100
-101
-101
-101
-102
-102
-102
-102
-102
-102
-102
-102
-102
-101
-101
-100
-99
-99
-98
-97
-96
-95
-94
-93
-92
-91
-91
-90
-89
-88
-88
-87
-86
-86
-85
-84
-84
-83
-82
-82
-81
-80
-80
-79
-79
-78
-78
-77
-77
-76
-76
-76
-76
-76
-76
-76
-77
-77
-77
-78
-78
-79
-79
-80
-81
-82
-82
-83
-84
-86
-87
-88
-89
-91
-92
-93
-95
-96
-98
-100
-101
-103
-105
-106
-108
-110
-112
-113
-115
-117
-119
-121
-122
-124
-126
-128
-129
-131
-133
-135
-137
-138
-140
-142
-143
-145
-146
-148
-149
-151
-152
-153
-154
-155
-156
-157
-158
-159
-160
-161
-161
-162
-162
-163
-163
-164
-164
-164
-164
-165
-165
-165
-165
-165
-164
-164
-164
-164
-163
-163
-163
-162
-162
-161
-160
-160
-159
-158
-157
-156
-155
-154
-153
-152
-151
-149
-148
-147
-145
-144
-142
-141
-139
-137
-135
-133
-132
-129
-127
-125
-123
-121
-118
-116
-114
-111
-109
-106
-104
-101
-98
-96
-93
-91
-88
-85
-82
-80
-77
-74
-71
-68
-65
-62
-60
-57
-54
-51
-49
-46
-44
-41
-39
-36
-34
-31
-29
-26
-24
-22
-19
-17
-15
-13
-11
-9
-7
-4
-2
0
2
4
6
7
9
11
13
14
16
18
19
20
22
23
25
26
27
29
30
31
32
34
35
36
37
38
39
39
40
41
41
42
43
43
44
44
45
45
46
47
47
48
48
49
50
50
51
52
52
53
53
54
55
55
56
56
57
57
58
58
59
59
60
61
61
62
62
63
64
64
65
66
66
67
68
69
69
70
71
71
72
73
74
74
75
76
77
78
79
80
81
82
83
84
86
87
88
89
90
91
92
93
95
96
97
98
100
101
102
104
105
106
108
109
111
112
114
115
117
118
120
121
123
124
126
127
129
130
132
133
135
137
138
140
141
143
145
146
148
150
151
153
154
156
158
159
161
162
164
165
167
168
170
171
172
174
175
176
177
178
179
180
181
182
183
184
184
185
186
187
187
188
189
189
190
190
191
191
192
193
193
194
194
195
195
196
197
197
198
198
199
199
200
200
200
201
201
202
202
203
203
204
204
205
205
206
206
207
207
208
208
209
209
210
211
211
212
212
213
213
214
214
215
215
215
216
216
217
217
217
218
218
218
218
218
218
218
218
218
218
218
218
218
218
217
217
217
217
217
217
217
217
217
217
217
217
217
217
217
217
217
217
217
217
217
217
218
218
218
218
218
219
219
219
219
220
220
221
221
222
223
223
224
225
226
227
229
230
231
232
234
235
237
239
240
242
244
245
247
249
250
252
254
256
257
259
261
262
264
265
267
268
270
271
273
274
275
277
278
279
280
281
283
284
285
286
287
287
288
289
289
290
290
291
291
291
291
291
291
291
291
291
290
290
290
289
289
288
287
287
286
285
284
283
282
281
280
279
278
277
276
274
273
272
270
269
268
266
265
264
262
261
260
258
257
256
255
253
252
251
250
248
247
246
244
243
242
240
239
237
236
235
233
232
230
229
228
226
225
223
222
221
219
218
216
215
213
211
210
208
206
205
203
201
200
198
196
194
193
191
189
187
185
183
182
180
178
176
174
171
169
167
165
163
161
158
156
154
151
149
146
144
142
139
137
134
132
129
127
125
122
120
117
115
112
110
107
105
102
100
98
95
93
90
88
86
83
81
79
77
74
72
70
68
66
64
63
61
59
57
55
53
52
50
48
46
44
43
41
39
37
35
33
32
30
28
26
24
22
20
19
17
15
13
12
10
8
7
5
4
2
1
-1
-2
-4
-5
-7
-8
-9
-11
-12
-13
-15
-16
-18
-19
-21
-22
-24
-25
-27
-28
-30
-31
-33
-34
-35
-37
-38
-39
-40
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-54
-55
-56
-56
-57
-58
-58
-59
-59
-60
-61
-61
-62
-62
-63
-63
-64
-64
-65
-65
-66
-66
-67
-67
-68
-68
-69
-70
-70
-71
-72
-72
-73
-74
-74
-75
-76
-77
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-95
-96
-97
-98
-99
-100
-101
-102
-103
-104
-105
-106
-107
-108
-109
-110
-110
-111
-111
-112
-112
-112
-113
-113
-113
-112
-112
-112
-111
-111
-110
-110
-109
-108
-107
-106
-105
-103
-102
-100
-99
-97
-95
-94
-92
-90
-88
-86
-83
-81
-79
-77
-74
-72
-69
-67
-65
-62
-60
-57
-55
-52
-49
-47
-44
-41
-38
-35
-32
-29
-26
-23
-20
-17
-14
-11
-7
-4
-1
3
6
10
13
17
20
24
28
31
35
39
42
46
50
54
58
62
66
70
74
78
82
86
90
94
97
101
105
109
113
117
121
125
129
133
137
140
144
148
152
155
159
162
166
169
173
176
180
183
186
189
193
196
199
202
205
208
211
213
216
219
221
224
226
229
231
233
236
238
240
242
244
246
248
249
251
253
254
256
257
259
260
261
262
263
264
265
266
267
268
268
269
269
270
270
270
271
271
271
271
271
271
271
270
270
270
269
269
268
267
267
266
265
264
263
262
261
260
258
257
256
255
253
252
250
249
247
245
244
242
240
238
236
234
233
231
229
227
225
223
221
219
217
215
213
211
210
208
206
204
202
201
199
197
196
194
193
191
190
188
187
186
184
183
181
180
178
177
176
174
173
172
170
169
168
167
166
164
163
162
161
160
159
158
157
156
155
154
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
135
134
133
132
131
130
128
127
126
124
123
122
120
119
118
116
115
114
112
111
110
108
107
105
104
102
101
99
98
96
94
93
91
89
87
86
84
82
80
78
76
74
73
71
69
67
65
63
61
59
57
55
53
51
48
46
44
42
40
38
35
33
31
29
26
24
22
20
18
15
13
11
8
6
4
2
-1
-3
-6
-8
-10
-13
-15
-18
-21
-23
-26
-29
-32
-34
-37
-40
-43
-46
-49
-52
-55
-58
-61
-64
-67
-70
-73
-76
-79
-82
-85
-89
-92
-95
-98
-100
-103
-106
-109
-112
-115
-117
-120
-123
-125
-128
-130
-133
-136
-138
-141
-143
-146
-148
-151
-153
-156
-158
-160
-163
-165
-167
-170
-172
-174
-176
-178
-180
-182
-184
-186
-188
-190
-192
-194
-196
-198
-199
-201
-203
-204
-206
-208
-209
-211
-212
-214
-215
-217
-218
-219
-220
-222
-223
-224
-225
-227
-228
-229
-230
-231
-232
-233
-234
-235
-236
-237
-238
-239
-240
-241
-242
-243
-244
-245
-246
-246
-247
-248
-249
-250
-251
-252
-253
-254
-255
-256
-257
-258
-259
-260
-261
-262
-263
-264
-265
-266
-267
-268
-269
-271
-272
-273
-274
-275
-276
-277
-279
-280
-281
-282
-283
-284
-285
-286
-288
-289
-290
-291
-292
-293
-294
-295
-296
-297
-298
-299
-300
-301
-302
-302
-303
-304
-305
-306
-306
-307
-307
-308
-309
-309
-310
-310
-310
-311
-311
-311
-311
-312
-312
-312
-312
-312
-312
-312
-311
-311
-311
-311
-311
-310
-310
-310
-309
-309
-309
-308
-308
-307
-307
-307
-306
-306
-305
-305
-304
-304
-303
-303
-302
-302
-301
-301
-300
-300
-299
-298
-298
-297
-296
-296
-295
-294
-293
-292
-291
-290
-289
-288
-287
-286
-285
-283
-282
-281
-279
-278
-277
-275
-274
-273
-271
-270
-269
-267
-266
-265
-264
-262
-261
-260
-259
-258
-257
-256
-255
-254
-254
-253
-252
-251
-251
-250
-249
-249
-248
-248
-247
-247
-247
-247
-246
-246
-246
-246
-246
-246
-246
-246
-246
-246
-247
-247
-247
-247
-248
-248
-248
-248
-249
-249
-249
-250
-250
-250
-251
-251
-251
-252
-252
-252
-252
-253
-253
-253
-253
-253
-253
-254
-254
-254
-254
-254
-253
-253
-253
-253
-253
-252
-252
-252
-251
-251
-250
-250
-249
-249
-248
-248
-247
-246
-246
-245
-244
-243
-243
-242
-241
-240
-240
-239
-238
-237
-236
-235
-234
-233
-232
-231
-230
-228
-227
-226
-225
-224
-222
-221
-220
-218
-217
-215
-214
-212
-211
-209
-207
-206
-204
-202
-201
-199
-197
-195
-194
-192
-190
-188
-186
-184
-183
-181
-179
-177
-175
-173
-171
-169
-167
-165
-163
-162
-160
-158
-156
-154
-152
-150
-148
-146
-145
-143
-141
-139
-137
-135
-133
-132
-130
-128
-126
-125
-123
-121
-120
-118
-117
-115
-113
-112
-110
-108
-107
-105
-104
-102
-100
-99
-97
-96
-94
-93
-91
-90
-89
-87
-86
-85
-83
-82
-81
-80
-78
-77
-76
-75
-73
-72
-71
-70
-69
-68
-67
-66
-65
-64
-63
-62
-61
-60
-59
-59
-58
-57
-56
-55
-55
-54
-53
-53
-52
-52
-51
-51
-50
-50
-49
-49
-48
-48
-47
-47
-47
-46
-46
-46
-46
-45
-45
-45
-45
-45
-45
-45
-45
-44
-44
-44
-44
-44
-44
-44
-44
-44
-43
-43
-43
-43
-43
-43
-42
-42
-42
-42
-42
-41
-41
-41
-41
-40
-40
-40
-40
-39
-39
-39
-38
-38
-37
-37
-37
-36
-36
-35
-35
-34
-34
-33
-33
-32
-32
-31
-30
-29
-29
-28
-27
-26
-25
-24
-23
-22
-21
-20
-19
-17
-16
-15
-13
-12
-10
-9
-7
-6
-4
-3
-1
1
3
4
6
8
10
12
14
16
18
19
21
23
25
27
29
31
33
35
37
39
41
43
44
46
48
50
52
54
56
57
59
61
63
65
66
68
70
72
73
75
77
79
80
82
84
85
87
89
90
92
93
95
96
98
99
101
102
103
105
106
107
108
110
111
112
113
114
115
116
117
117
118
119
119
120
120
121
121
121
121
122
122
122
122
122
122
121
121
121
121
120
120
119
119
119
118
117
117
116
116
115
114
114
113
112
111
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
94
93
92
91
90
89
88
87
86
85
84
83
82
82
81
80
79
78
78
77
76
75
75
74
73
73
72
72
71
70
70
69
69
68
68
67
67
66
66
65
65
64
64
63
63
62
62
61
60
60
59
59
58
58
57
57
56
56
55
55
55
54
54
53
53
53
52
52
51
51
51
50
50
49
49
49
48
48
48
47
47
47
46
46
46
45
45
44
44
43
42
42
41
40
39
38
37
37
35
34
33
32
31
30
29
27
26
25
23
22
21
19
18
17
15
14
13
11
10
8
7
5
4
2
1
0
-2
-3
-5
-6
-8
-9
-11
-12
-14
-15
-17
-18
-19
-20
-22
-23
-24
-25
-27
-28
-29
-30
-32
-33
-34
-35
-36
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-49
-50
-51
-52
-53
-54
-55
-56
-56
-57
-58
-59
-60
-61
-62
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-87
-88
-89
-90
-91
-92
-93
-93
-94
-95
-96
-96
-97
-98
-98
-99
-99
-100
-100
-101
-101
-101
-101
-102
-102
-102
-102
-102
-102
-102
-102
-102
-102
-102
-102
-102
-102
-101
-101
-101
-101
-100
-100
-100
-99
-99
-98
-98
-97
-97
-96
-95
-95
-94
-93
-92
-92
-91
-90
-89
-88
-87
-87
-86
-85
-84
-83
-82
-82
-81
-80
-79
-78
-78
-77
-76
-75
-75
-74
-73
-73
-72
-71
-70
-70
-69
-68
-67
-67
-66
-65
-64
-63
-63
-62
-61
-60
-59
-58
-57
-56
-56
-55
-54
-53
-52
-51
-50
-49
-48
-47
-46
-45
-45
-44
-43
-42
-41
-41
-40
-39
-39
-38
-37
-37
-36
-35
-34
-34
-33
-32
-32
-31
-31
-30
-29
-29
-28
-28
-27
-27
-26
-26
-25
-25
-24
-24
-23
-23
-22
-22
-21
-21
-20
-19
-19
-18
-18
-17
-16
-16
-15
-14
-13
-13
-12
-11
-10
-9
-8
-8
-7
-6
-5
-4
-3
-2
-1
0
1
2
3
4
5
6
8
9
10
11
12
14
15
16
17
18
20
21
22
24
25
26
27
29
30
31
32
34
35
36
37
39
40
41
42
44
45
46
48
49
50
51
53
54
55
57
58
60
61
62
64
65
67
68
69
71
72
74
75
77
79
80
82
84
85
87
89
91
93
95
96
98
100
102
104
107
109
111
113
115
117
119
121
123
125
127
129
131
133
135
137
139
141
143
145
147
149
151
152
154
156
158
159
161
163
164
166
167
169
170
172
173
175
176
177
179
180
181
182
183
184
185
186
187
188
188
189
189
190
190
191
191
192
192
192
192
193
193
193
193
194
194
194
194
194
194
195
195
195
195
195
195
196
196
196
196
196
196
196
196
196
196
196
196
196
196
197
197
197
197
197
197
197
198
198
198
198
199
199
199
200
200
201
201
202
202
203
203
204
205
205
206
207
208
208
209
210
211
211
212
213
214
215
215
216
217
218
219
219
220
221
222
222
223
224
224
225
226
226
227
227
227
228
228
228
229
229
229
229
229
229
229
229
229
229
229
228
228
228
228
227
227
226
226
225
225
224
224
223
223
222
221
221
220
219
218
218
217
216
215
215
214
213
212
211
210
210
209
208
207
206
206
205
204
203
202
201
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
179
178
177
176
175
173
172
171
169
168
167
165
164
163
161
160
158
157
155
154
152
151
149
147
146
144
143
141
140
138
137
135
133
132
130
129
127
126
124
122
121
119
118
116
115
113
111
110
108
107
105
103
102
100
99
97
96
94
92
91
89
87
86
84
83
81
79
78
76
75
73
71
70
68
66
64
63
61
59
58
56
54
52
51
49
47
45
44
42
40
39
37
35
34
32
30
29
27
25
24
22
21
19
18
16
15
13
11
10
8
7
5
3
1
0
-2
-4
-6
-7
-9
-11
-13
-15
-17
-19
-21
-23
-25
-27
-29
-32
-34
-36
-38
-40
-42
-45
-47
-49
-51
-54
-56
-58
-61
-63
-65
-67
-69
-72
-74
-76
-78
-80
-83
-85
-87
-89
-91
-93
-95
-97
-99
-101
-103
-105
-107
-109
-110
-112
-114
-116
-117
-119
-121
-122
-124
-125
-127
-128
-130
-131
-133
-134
-135
-136
-138
-139
-140
-141
-142
-143
-144
-145
-146
-147
-147
-148
-149
-150
-150
-151
-152
-153
-153
-154
-155
-155
-156
-157
-158
-158
-159
-160
-160
-161
-161
-162
-163
-163
-164
-164
-165
-165
-166
-166
-166
-167
-167
-167
-167
-167
-168
-168
-168
-168
-168
-168
-168
-168
-168
-167
-167
-167
-166
-166
-166
-165
-165
-164
-164
-163
-162
-162
-161
-160
-160
-159
-158
-157
-156
-156
-155
-154
-153
-152
-150
-149
-148
-147
-146
-144
-143
-142
-140
-139
-138
-136
-135
-133
-131
-130
-128
-126
-125
-123
-121
-119
-117
-115
-113
-111
-109
-107
-105
-103
-101
-99
-96
-94
-92
-90
-87
-85
-82
-80
-77
-75
-72
-70
-67
-65
-62
-60
-57
-54
-52
-49
-47
-44
-41
-39
-36
-33
-31
-28
-25
-22
-20
-17
-14
-12
-9
-6
-4
-1
2
4
7
9
12
14
17
19
22
24
27
29
31
34
36
38
40
42
45
47
49
51
52
54
56
58
60
61
63
65
66
68
69
70
72
73
75
76
77
78
80
81
82
83
84
85
86
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
109
110
111
112
113
114
115
117
118
119
120
122
123
124
125
127
128
129
130
132
133
134
135
137
138
139
140
142
143
144
145
146
147
148
150
151
152
153
154
154
155
156
157
158
159
159
160
161
161
162
162
163
163
163
164
164
164
165
165
165
165
166
166
166
166
166
166
166
167
167
167
167
167
167
167
167
167
167
167
167
167
167
166
166
166
166
166
166
166
166
165
165
165
165
165
165
165
165
164
164
164
164
164
163
163
163
163
162
162
162
162
161
161
161
160
160
159
159
158
158
158
157
156
156
155
155
154
153
153
152
151
150
149
149
148
147
146
145
144
143
142
141
140
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
113
112
111
110
109
108
108
107
106
105
105
104
103
103
102
102
101
101
100
100
100
99
99
99
98
98
98
98
98
97
97
97
97
97
97
97
96
96
96
96
96
96
96
96
96
96
96
96
96
96
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
97
96
96
96
96
96
95
95
95
95
94
94
94
93
93
93
93
92
92
92
92
91
91
91
91
91
90
90
90
90
90
89
89
89
89
89
89
89
89
88
88
88
88
87
87
87
87
86
86
85
85
84
84
83
83
82
81
81
80
79
78
77
76
75
74
73
72
71
70
68
67
66
65
63
62
61
59
58
56
55
54
52
51
49
48
46
45
43
42
40
38
37
35
34
32
31
29
27
26
24
23
21
20
18
17
15
14
13
11
10
9
7
6
5
4
2
1
0
-1
-2
-3
-4
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-18
-19
-20
-21
-22
-22
-23
-24
-24
-25
-26
-26
-27
-27
-28
-28
-29
-30
-30
-31
-31
-32
-32
-33
-33
-34
-34
-35
-36
-36
-37
-37
-38
-39
-39
-40
-41
-41
-42
-43
-43
-44
-45
-46
-47
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-71
-72
-73
-74
-75
-76
-77
-79
-80
-81
-82
-83
-84
-86
-87
-88
-89
-90
-92
-93
-94
-95
-97
-98
-99
-100
-102
-103
-104
-105
-107
-108
-109
-111
-112
-113
-115
-116
-118
-119
-121
-122
-123
-125
-126
-128
-129
-130
-132
-133
-135
-136
-137
-139
-140
-141
-143
-144
-145
-147
-148
-149
-150
-152
-153
-154
-155
-156
-157
-159
-160
-161
-162
-163
-164
-165
-166
-167
-168
-169
-170
-170
-171
-172
-173
-174
-174
-175
-176
-177
-177
-178
-178
-179
-180
-180
-181
-181
-182
-182
-183
-183
-183
-184
-184
-185
-185
-185
-186
-186
-187
-187
-187
-188
-188
-188
-189
-189
-189
-189
-190
-190
-190
-191
-191
-191
-192
-192
-192
-192
-193
-193
-193
-193
-194
-194
-194
-194
-195
-195
-195
-196
-196
-196
-196
-197
-197
-197
-198
-198
-198
-199
-199
-200
-200
-200
-201
-201
-201
-202
-202
-203
-203
-204
-204
-204
-205
-205
-206
-206
-206
-207
-207
-208
-208
-208
-209
-209
-209
-210
-210
-210
-210
-210
-211
-211
-211
-211
-211
-211
-211
-210
-210
-210
-210
-209
-209
-209
-208
-208
-207
-206
-206
-205
-204
-204
-203
-202
-201
-201
-200
-199
-198
-197
-196
-195
-194
-193
-192
-191
-190
-189
-188
-187
-186
-186
-185
-184
-183
-182
-181
-180
-179
-178
-177
-176
-175
-174
-174
-173
-172
-171
-170
-170
-169
-168
-167
-167
-166
-165
-164
-164
-163
-163
-162
-161
-161
-160
-160
-159
-158
-158
-157
-157
-156
-156
-155
-154
-154
-153
-152
-152
-151
-150
-150
-149
-148
-148
-147
-146
-145
-144
-143
-143
-142
-141
-140
-139
-138
-137
-136
-135
-134
-133
-132
-131
-130
-129
-128
-126
-125
-124
-123
-122
-121
-120
-119
-117
-116
-115
-114
-113
-112
-111
-110
-108
-107
-106
-105
-104
-103
-102
-101
-100
-99
-98
-97
-97
-96
-95
-94
-93
-93
-92
-91
-91
-90
-89
-89
-88
-88
-87
-87
-86
-86
-85
-85
-85
-84
-84
-83
-83
-83
-82
-82
-82
-81
-81
-81
-81
-80
-80
-80
-80
-80
-79
-79
-79
-79
-79
-79
-78
-78
-78
-78
-78
-78
-78
-77
-77
-77
-77
-77
-77
-77
-77
-76
-76
-76
-76
-75
-75
-75
-75
-75
-74
-74
-74
-73
-73
-73
-72
-72
-72
-71
-71
-71
-70
-70
-70
-69
-69
-68
-68
-67
-67
-67
-66
-66
-65
-65
-64
-64
-63
-63
-62
-62
-61
-61
-61
-60
-60
-59
-59
-58
-58
-58
-57
-57
-57
-56
-56
-56
-55
-55
-55
-54
-54
-54
-54
-53
-53
-53
-52
-52
-52
-52
-51
-51
-51
-50
-50
-50
-49
-49
-49
-48
-48
-48
-47
-47
-47
-46
-46
-45
-45
-44
-44
-44
-43
-43
-42
-42
-41
-41
-40
-39
-39
-38
-38
-37
-37
-36
-36
-35
-35
-34
-34
-33
-33
-33
-32
-32
-31
-31
-30
-30
-30
-29
-29
-28
-28
-28
-27
-27
-27
-26
-26
-26
-25
-25
-25
-24
-24
-24
-23
-23
-23
-22
-22
-22
-22
-21
-21
-20
-20
-20
-19
-19
-18
-18
-17
-17
-16
-16
-15
-14
-14
-13
-12
-11
-10
-9
-8
-7
-6
-5
-4
-3
-2
-1
0
1
3
4
5
7
8
9
10
12
13
14
16
17
18
20
21
22
24
25
27
28
29
31
32
34
35
37
38
40
41
43
44
46
48
49
51
52
54
56
57
59
61
62
64
65
67
69
70
72
74
75
77
78
80
82
83
85
86
88
90
91
93
94
96
98
100
101
103
105
106
108
110
112
114
115
117
119
121
123
124
126
128
130
131
133
135
136
138
140
141
143
145
146
148
150
151
153
154
156
157
159
160
162
163
165
166
168
169
171
172
174
175
177
178
180
181
183
184
185
187
188
190
191
192
194
195
197
198
199
200
202
203
204
206
207
208
209
210
212
213
214
215
216
217
219
220
221
222
223
224
225
226
228
229
230
231
232
233
235
236
237
238
240
241
242
243
244
246
247
248
249
251
252
253
254
255
256
258
259
260
261
262
263
264
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
289
290
291
292
292
293
294
294
295
295
296
296
296
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
296
296
296
296
295
295
294
294
294
293
293
292
292
291
291
290
289
289
288
288
287
287
286
285
285
284
284
283
283
282
281
281
280
280
279
279
278
278
277
277
277
276
276
275
275
274
274
274
273
273
273
272
272
272
271
271
270
270
270
269
269
269
268
268
267
267
266
266
265
265
264
263
262
262
261
260
259
258
257
256
255
254
253
252
251
250
249
248
246
245
244
243
242
240
239
238
236
235
234
233
231
230
229
227
226
225
223
222
221
219
218
217
216
214
213
212
211
210
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
193
192
191
190
189
189
188
187
187
186
185
185
184
183
183
182
182
181
180
180
179
179
178
178
177
177
176
176
175
175
175
174
174
173
173
172
172
171
171
170
170
170
169
169
168
168
168
167
167
167
166
166
165
165
165
164
164
164
163
163
162
162
161
161
160
160
159
159
158
158
157
157
156
156
155
154
154
153
152
151
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
135
134
133
131
130
129
127
126
125
123
122
120
119
117
116
114
113
111
109
108
106
105
103
101
100
98
96
95
93
91
89
88
86
84
82
81
79
77
75
74
72
70
68
66
65
63
61
60
58
56
55
53
51
49
48
46
44
43
41
40
38
36
35
33
32
30
28
27
25
24
22
20
19
17
15
14
12
11
9
7
6
4
3
1
0
-2
-3
-4
-6
-7
-9
-10
-11
-13
-14
-15
-17
-18
-19
-21
-22
-23
-24
-25
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-44
-45
-46
-47
-47
-48
-49
-49
-50
-50
-51
-51
-51
-52
-52
-53
-53
-53
-53
-54
-54
-54
-54
-54
-54
-54
-54
-54
-54
-54
-54
-54
-54
-54
-54
-54
-53
-53
-53
-53
-52
-52
-52
-51
-51
-51
-50
-50
-50
-49
-49
-49
-48
-48
-47
-47
-47
-46
-46
-45
-45
-45
-44
-44
-44
-43
-43
-43
-43
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-43
-43
-43
-43
-43
-43
-43
-43
-43
-43
-44
-44
-44
-44
-44
-44
-44
-44
-44
-45
-45
-45
-45
-45
-45
-45
-46
-46
-46
-46
-46
-46
-46
-46
-46
-46
-46
-46
-46
-46
-46
-46
-46
-46
-46
-46
-46
-46
-46
-46
-46
-46
-46
-46
-46
-46
-46
-46
-45
-45
-45
-45
-45
-44
-44
-44
-43
-43
-43
-42
-42
-42
-41
-41
-40
-40
-39
-39
-38
-38
-37
-37
-36
-36
-35
-34
-34
-33
-32
-32
-31
-30
-30
-29
-28
-28
-27
-26
-26
-25
-24
-23
-23
-22
-21
-20
-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
18
19
21
22
23
24
25
26
27
29
30
31
32
33
34
35
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
56
57
58
59
60
60
61
62
63
64
64
65
66
67
68
68
69
70
71
71
72
73
74
75
76
76
77
78
79
80
81
82
83
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
109
110
111
112
113
113
114
115
116
116
117
118
118
119
120
120
121
121
122
123
123
124
124
125
125
126
126
126
127
127
128
128
128
128
129
129
129
129
130
130
130
130
130
130
130
130
130
130
131
131
131
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
130
130
130
130
130
130
131
131
131
131
131
131
132
132
132
132
133
133
133
134
134
135
135
135
136
136
137
137
138
138
139
139
140
140
141
141
142
142
143
143
144
144
145
146
146
147
147
148
148
149
149
150
150
151
151
152
152
153
153
154
154
154
155
155
155
156
156
156
157
157
157
157
158
158
158
158
158
159
159
159
159
160
160
160
160
161
161
161
161
162
162
162
162
163
163
163
163
164
164
164
164
165
165
165
165
165
166
166
166
166
166
167
167
167
167
167
167
167
168
168
168
168
168
168
168
168
168
168
168
167
167
167
167
167
167
167
166
166
166
166
165
165
165
165
165
164
164
164
164
163
163
163
163
163
163
163
163
162
162
162
162
163
163
163
163
163
163
163
163
164
164
164
165
165
165
166
166
167
167
168
168
169
170
170
171
172
172
173
174
175
176
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
198
199
200
201
202
203
204
206
207
208
209
210
212
213
214
215
216
217
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
241
242
243
244
245
245
246
247
247
248
248
249
249
250
250
250
251
251
251
251
251
251
251
251
251
250
250
250
250
250
249
249
249
249
248
248
247
246
246
245
244
244
243
242
241
241
240
239
238
238
237
236
235
234
233
232
231
230
229
229
228
227
226
225
224
223
222
221
220
219
218
218
217
216
215
214
213
212
212
211
210
209
208
207
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
188
187
186
185
184
183
182
181
180
179
178
177
176
175
173
172
171
170
169
168
167
166
165
164
163
162
161
159
158
157
156
155
154
152
151
150
149
148
147
146
144
143
142
141
140
139
137
136
135
134
132
131
130
129
127
126
125
123
122
121
120
118
117
115
114
112
111
109
108
106
104
103
101
100
98
97
95
93
92
90
89
87
85
84
82
80
79
77
76
74
72
71
69
67
66
64
62
61
59
58
56
55
53
52
50
49
47
46
44
43
41
40
38
37
36
34
33
32
30
29
28
26
25
23
22
21
19
18
17
15
14
13
11
10
9
7
6
5
4
2
1
0
-2
-3
-5
-6
-7
-9
-10
-12
-13
-15
-16
-18
-19
-21
-22
-23
-25
-26
-28
-29
-30
-32
-33
-35
-36
-37
-39
-40
-42
-43
-44
-45
-47
-48
-49
-50
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-71
-72
-73
-74
-74
-75
-76
-76
-77
-77
-78
-78
-79
-79
-80
-80
-81
-81
-82
-82
-82
-83
-83
-83
-84
-84
-84
-84
-84
-84
-85
-85
-85
-85
-85
-86
-86
-86
-86
-86
-86
-86
-85
-85
-85
-84
-84
-84
-83
-83
-83
-83
-82
-82
-82
-81
-81
-81
-80
-80
-79
-78
-78
-77
-76
-76
-75
-75
-74
-74
-73
-73
-72
-71
-71
-70
-69
-69
-68
-67
-67
-66
-66
-65
-65
-64
-64
-63
-63
-62
-61
-61
-60
-59
-58
-58
-57
-56
-56
-55
-55
-54
-54
-53
-53
-52
-51
-51
-50
-49
-49
-48
-47
-47
-46
-46
-45
-44
-44
-43
-42
-42
-41
-40
-39
-38
-38
-37
-36
-35
-35
-34
-33
-33
-32
-31
-31
-30
-29
-29
-28
-27
-26
-25
-24
-24
-23
-22
-22
-21
-20
-19
-19
-18
-17
-16
-15
-14
-13
-12
-11
-11
-10
-9
-8
-8
-7
-6
-5
-4
-4
-3
-2
-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
19
19
20
21
22
22
23
24
25
26
27
27
28
29
30
30
31
31
32
33
33
34
34
35
36
37
37
38
39
39
40
41
41
42
43
43
44
44
45
45
46
46
47
47
48
48
49
49
50
50
51
51
52
52
52
53
53
54
55
55
56
56
57
58
58
59
60
60
61
62
62
63
63
64
64
65
65
66
66
67
68
68
69
70
70
71
72
73
73
74
75
75
76
77
78
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
94
95
96
98
99
100
102
103
105
106
107
109
110
111
113
114
116
117
119
121
122
124
125
127
128
130
131
132
134
135
137
139
140
142
144
145
147
149
151
152
154
156
158
159
161
163
165
166
168
170
171
173
175
176
178
180
181
183
184
186
187
188
190
191
193
194
195
197
198
200
201
203
204
206
207
208
210
211
212
214
215
216
217
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
248
249
250
251
251
252
252
253
253
253
254
254
255
255
256
256
257
257
258
258
258
259
259
259
259
259
260
260
260
260
260
260
260
260
260
260
260
260
260
259
259
259
258
258
258
257
257
256
256
255
255
255
254
254
253
253
252
252
251
250
250
249
248
247
247
246
245
244
243
243
242
241
240
239
238
238
237
236
235
234
233
232
231
230
230
229
228
227
226
225
224
223
222
221
220
219
218
217
216
215
214
213
212
210
209
208
207
205
204
203
202
200
199
198
197
195
194
193
191
190
189
187
186
185
183
182
180
179
178
176
175
173
171
170
168
166
165
163
161
160
158
156
154
152
151
149
147
146
144
142
140
139
137
135
134
132
130
128
127
125
123
122
120
118
117
115
114
112
110
109
107
106
104
102
101
99
98
96
95
93
92
90
89
87
86
84
83
81
80
78
77
75
74
72
71
69
68
66
65
63
62
60
59
58
56
55
54
52
51
50
48
47
46
45
44
43
41
40
39
38
38
37
36
35
34
33
32
31
30
30
29
28
27
26
25
25
24
23
23
22
22
21
21
21
20
20
20
20
20
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
20
20
20
20
20
20
20
20
21
21
21
21
21
21
22
22
22
22
22
23
23
23
23
23
24
24
24
25
25
25
25
26
26
26
26
26
27
27
27
28
28
28
29
29
29
30
30
30
30
30
31
31
31
31
31
31
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
32
32
32
32
31
31
31
30
30
29
29
29
28
28
28
27
27
26
26
26
25
24
24
23
22
22
21
20
20
19
18
18
17
16
16
15
14
14
13
12
12
11
10
9
9
8
7
6
5
4
3
3
2
1
0
-1
-1
-2
-3
-4
-4
-5
-6
-7
-7
-8
-9
-9
-10
-11
-11
-12
-13
-13
-14
-14
-15
-15
-16
-16
-17
-17
-18
-18
-18
-19
-19
-20
-20
-21
-21
-22
-22
-23
-23
-24
-24
-25
-25
-26
-26
-27
-27
-28
-28
-29
-29
-30
-31
-31
-32
-33
-34
-34
-35
-36
-37
-38
-38
-39
-40
-41
-42
-42
-43
-44
-45
-46
-47
-47
-48
-49
-50
-51
-51
-52
-53
-54
-55
-56
-56
-57
-58
-59
-60
-60
-61
-62
-63
-64
-64
-65
-66
-67
-68
-69
-70
-70
-71
-72
-73
-74
-74
-75
-76
-77
-78
-79
-79
-80
-81
-82
-83
-83
-84
-85
-86
-86
-87
-88
-89
-89
-90
-91
-92
-92
-93
-94
-94
-95
-96
-97
-97
-98
-99
-99
-100
-100
-101
-101
-102
-102
-103
-103
-103
-104
-104
-104
-105
-105
-105
-105
-106
-106
-106
-106
-106
-107
-107
-107
-107
-107
-107
-107
-107
-107
-107
-107
-107
-107
-107
-106
-106
-106
-106
-106
-106
-106
-106
-106
-106
-106
-105
-105
-105
-105
-105
-105
-105
-105
-105
-105
-105
-105
-105
-105
-105
-105
-105
-105
-105
-105
-105
-105
-105
-105
-105
-105
-105
-105
-105
-105
-105
-105
-105
-106
-106
-106
-106
-106
-106
-106
-106
-106
-106
-106
-106
-106
-106
-107
-107
-107
-107
-107
-108
-108
-108
-108
-108
-109
-109
-109
-109
-109
-110
-110
-110
-110
-110
-110
-111
-111
-111
-111
-111
-111
-112
-112
-112
-112
-112
-113
-113
-113
-113
-114
-114
-114
-114
-114
-115
-115
-115
-115
-115
-116
-116
-116
-116
-117
-117
-117
-118
-118
-118
-118
-119
-119
-119
-120
-120
-120
-120
-121
-121
-121
-121
-122
-122
-122
-122
-123
-123
-123
-123
-124
-124
-124
-124
-125
-125
-125
-125
-125
-125
-125
-125
-125
-125
-125
-125
-125
-126
-125
-125
-125
-125
-125
-125
-125
-124
-124
-124
-124
-123
-123
-123
-122
-122
-122
-121
-121
-120
-120
-120
-119
-119
-118
-118
-117
-117
-117
-116
-116
-115
-115
-114
-114
-113
-113
-112
-112
-111
-111
-110
-110
-110
-109
-109
-109
-108
-108
-108
-108
-107
-107
-107
-107
-106
-106
-106
-106
-106
-106
-105
-105
-105
-105
-105
-105
-106
-106
-106
-106
-106
-107
-107
-108
-108
-108
-109
-109
-110
-110
-111
-111
-112
-113
-113
-114
-115
-115
-116
-117
-118
-118
-119
-120
-121
-121
-122
-123
-124
-125
-126
-127
-128
-128
-129
-130
-131
-132
-133
-134
-135
-135
-136
-137
-138
-139
-140
-141
-141
-142
-143
-144
-145
-145
-146
-147
-148
-148
-149
-150
-151
-151
-152
-153
-154
-154
-155
-156
-157
-158
-158
-159
-160
-161
-162
-163
-163
-164
-165
-166
-166
-167
-168
-169
-169
-170
-171
-171
-172
-173
-173
-174
-174
-175
-175
-176
-176
-176
-177
-177
-178
-178
-179
-179
-180
-180
-181
-181
-182
-183
-184
-184
-185
-186
-187
-187
-188
-189
-190
-191
-192
-193
-193
-194
-195
-196
-197
-198
-199
-200
-201
-201
-202
-203
-204
-205
-206
-207
-208
-209
-210
-211
-212
-214
-215
-216
-217
-218
-220
-221
-222
-223
-225
-226
-228
-229
-230
-232
-234
-235
-237
-239
-240
-242
-244
-246
-248
-250
-252
-254
-256
-258
-261
-263
-265
-267
-269
-271
-273
-275
-277
-279
-281
-283
-285
-287
-289
-291
-293
-295
-297
-299
-301
-303
-305
-307
-309
-311
-313
-315
-317
-319
-321
-323
-325
-327
-329
-331
-333
-335
-336
-338
-340
-342
-343
-345
-346
-348
-350
-351
-353
-355
-356
-358
-360
-361
-363
-365
-366
-368
-369
-370
-372
-373
-374
-375
-376
-377
-378
-379
-380
-380
-381
-382
-383
-383
-384
-385
-386
-386
-387
-388
-389
-390
-391
-392
-392
-393
-394
-395
-396
-397
-397
-398
-399
-399
-400
-400
-401
-401
-402
-402
-403
-403
-404
-404
-405
-405
-406
-406
-406
-406
-406
-406
-406
-406
-406
-406
-406
-406
-406
-406
-406
-406
-407
-407
-407
-407
-407
-407
-407
-408
-408
-408
-408
-408
-408
-408
-409
-409
-409
-409
-409
-408
-408
-408
-408
-408
-408
-408
-408
-408
-408
-408
-408
-408
-407
-407
-407
-407
-407
-407
-406
-406
-406
-406
-405
-405
-405
-405
-405
-404
-404
-404
-404
-403
-403
-403
-403
-403
-402
-402
-402
-402
-402
-402
-402
-402
-402
-402
-402
-402
-401
-401
-401
-401
-401
-401
-401
-401
-400
-400
-400
-400
-400
-400
-399
-399
-399
-399
-399
-399
-399
-400
-400
-400
-400
-400
-400
-400
-400
-400
-400
-400
-400
-399
-399
-399
-399
-398
-398
-397
-397
-397
-396
-396
-396
-396
-395
-395
-395
-395
-395
-395
-395
-394
-394
-394
-394
-393
-393
-392
-392
-391
-390
-389
-389
-388
-387
-386
-385
-383
-382
-381
-380
-379
-378
-377
-376
-375
-374
-373
-372
-371
-370
-369
-369
-368
-367
-366
-365
-364
-363
-362
-361
-360
-359
-358
-357
-355
-354
-353
-352
-350
-349
-348
-346
-345
-344
-342
-341
-340
-339
-338
-337
-336
-334
-333
-332
-331
-330
-329
-328
-327
-326
-325
-324
-323
-322
-321
-320
-319
-318
-318
-317
-316
-315
-315
-314
-313
-313
-312
-312
-311
-310
-310
-309
-309
-308
-308
-307
-307
-306
-306
-305
-304
-304
-303
-303
-302
-302
-301
-301
-300
-300
-299
-299
-298
-297
-297
-296
-296
-295
-294
-293
-293
-292
-291
-291
-290
-290
-289
-288
-288
-287
-287
-286
-286
-285
-285
-284
-283
-283
-282
-282
-281
-281
-280
-280
-279
-278
-278
-277
-277
-276
-276
-275
-275
-274
-274
-273
-272
-272
-271
-271
-270
-270
-269
-269
-268
-268
-267
-267
-266
-265
-265
-264
-264
-263
-263
-262
-262
-261
-261
-260
-260
-259
-258
-258
-257
-257
-256
-256
-255
-255
-254
-254
-253
-253
-252
-252
-251
-251
-250
-250
-249
-249
-248
-247
-247
-246
-246
-245
-245
-244
-244
-243
-243
-242
-242
-241
-241
-240
-240
-239
-239
-238
-238
-237
-237
-236
-236
-235
-235
-234
-234
-233
-233
-232
-232
-231
-231
-230
-230
-229
-229
-228
-228
-227
-227
-226
-226
-225
-225
-224
-224
-223
-223
-222
-222
-221
-221
-220
-220
-219
-219
-218
-218
-217
-217
-216
-216
-215
-215
-214
-214
-213
-213
-212
-212
-211
-211
-210
-210
-209
-209
-209
-208
-208
-207
-207
-206
-206
-205
-205
-204
-204
-203
-203
-202
-202
-201
-201
-200
-200
-199
-199
-199
-198
-198
-197
-197
-196
-196
-195
-195
-194
-194
-193
-193
-193
-192
-192
-191
-191
-190
-190
-189
-189
-188
-188
-187
-187
-187
-186
-186
-185
-185
-184
-184
-183
-183
-182
-182
-182
-181
-181
-180
-180
-179
-179
-178
-178
-178
-177
-177
-176
-176
-175
-175
-174
-174
-174
-173
-173
-172
-172
-171
-171
-170
-170
-170
-169
-169
-168
-168
-167
-167
-167
-166
-166
-165
-165
-164
-164
-164
-163
-163
-162
-162
-161
-161
-161
-160
-160
-159
-159
-158
-158
-158
-157
-157
-156
-156
-155
-155
-155
-154
-154
-153
-153
-153
-152
-152
-151
-151
-150
-150
-150
-149
-149
-148
-148
-148
-147
-147
-146
-146
-146
-145
-145
-144
-144
-143
-143
-143
-142
-142
-141
-141
-141
-140
-140
-139
-139
-139
-138
-138
-137
-137
-137
-136
-136
-135
-135
-135
-134
-134
-133
-133
-133
-132
-132
-132
-131
-131
-130
-130
-130
-129
-129
-128
-128
-128
-127
-127
-126
-126
-126
-125
-125
-125
-124
-124
-123
-123
-123
-122
-122
-121
-121
-121
-120
-120
-120
-119
-119
-118
-118
-118
-117
-117
-117
-116
-116
-115
-115
-115
-114
-114
-114
-113
-113
-113
-112
-112
-111
-111
-111
-110
-110
-110
-109
-109
-109
-108
-108
-107
-107
-107
-106
-106
-106
-105
-105
-105
-104
-104
-103
-103
-103
-102
-102
-102
-101
-101
-101
-100
-100
-100
-99
-99
-99
-98
-98
-97
-97
-97
-96
-96
-96
-95
-95
-95
-94
-94
-94
-93
-93
-93
-92
-92
-92
-91
-91
-91
-90
-90
-90
-89
-89
-89
-88
-88
-88
-87
-87
-87
-86
-86
-86
-85
-85
-85
-84
-84
-84
-83
-83
-83
-82
-82
-82
-81
-81
-81
-80
-80
-80
-79
-79
-79
-78
-78
-78
-77
-77
-77
-76
-76
-76
-75
-75
-75
-74
-74
-74
-74
-73
-73
-73
-72
-72
-72
-71
-71
-71
-70
-70
-70
-69
-69
-69
-69
-68
-68
-68
-67
-67
-67
-66
-66
-66
-65
-65
-65
-65
-64
-64
-64
-63
-63
-63
-62
-62
-62
-62
-61
-61
-61
-60
-60
-60
-59
-59
-59
-59
-58
-58
-58
-57
-57
-57
-56
-56
-56
-56
-55
-55
-55
-54
-54
-54
-54
-53
-53
-53
-52
-52
-52
-52
-51
-51
-51
-50
-50
-50
-50
-49
-49
-49
-48
-48
-48
-48
-47
-47
-47
-46
-46
-46
-46
-45
-45
-45
-45
-44
-44
-44
-43
-43
-43
-43
-42
-42
-42
-42
-41
-41
-41
-40
-40
-40
-40
-39
-39
-39
-39
-38
-38
-38
-38
-37
-37
-37
-36
-36
-36
-36
-35
-35
-35
-35
-34
-34
-34
-34
-33
-33
-33
-33
-32
-32
-32
-32
-31
-31
-31
-31
-30
-30
-30
-30
-29
-29
-29
-29
-28
-28
-28
-28
-27
-27
-27
-27
-26
-26
-26
-26
-25
-25
-25
-25
-24
-24
-24
-24
-23
-23
-23
-23
-22
-22
-22
-22
-21
-21
-21
-21
-20
-20
-20
-20
-19
-19
-19
-19
-19
-18
-18
-18
-18
-17
-17
-17
-17
-16
-16
-16
-16
-16
-15
-15
-15
-15
-14
-14
-14
-14
-13
-13
-13
-13
-13
-12
-12
-12
-12
-11
-11
-11
-11
-11
-10
-10
-10
-10
-9
-9
-9
-9
-9
-8
-8
-8
-8
-7
-7
-7
-7
-7
-6
-6
-6
-6
-6
-5
-5
-5
-5
-4
-4
-4
-4
-4
-3
-3
-3
-3
-3
-2
-2
-2
-2
-2
-1
-1
-1
-1
-1
0
0
0
0
1
1
1
1
1
2
2
2
2
2
3
3
3
3
3
4
4
4
4
4
5
5
5
5
5
5
6
6
6
6
6
7
7
7
7
7
8
8
8
8
8
9
9
9
9
9
10
10
10
10
10
10
11
11
11
11
11
12
12
12
12
12
12
13
13
13
13
13
14
14
14
14
14
14
15
15
15
15
15
16
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
25
25
25
25
25
25
26
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
30
31
31
31
31
31
31
31
32
32
32
32
32
32
32
33
33
33
33
33
33
33
34
34
34
34
34
34
34
35
35
35
35
35
35
35
36
36
36
36
36
36
36
36
37
37
