5
1747
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
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
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
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
2
2
1
0
0
0
0
1
2
3
4
5
6
6
6
5
4
2
1
0
-1
-1
-1
0
1
1
2
3
4
4
4
4
4
4
3
3
2
1
1
1
1
0
0
0
0
0
-1
-2
-2
-2
-2
-2
-1
1
3
4
6
7
7
6
5
3
1
-1
-2
-3
-4
-3
-2
-1
0
1
2
3
4
4
4
4
3
3
2
2
1
0
0
-1
-1
-1
-1
0
0
0
1
1
0
0
0
0
0
0
1
1
2
2
1
1
0
-2
-3
-4
-4
-4
-3
-2
0
2
4
5
6
6
5
3
1
-1
-3
-4
-5
-6
-6
-6
-5
-3
-2
-1
1
2
2
2
2
1
0
-1
-1
-2
-2
-2
-2
-1
-1
0
-1
-1
-2
-3
-3
-4
-4
-3
-2
0
2
4
5
6
6
4
3
1
-2
-4
-6
-7
-7
-6
-5
-3
-2
0
1
2
2
2
2
1
1
0
0
0
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
1
1
0
0
-1
-1
-2
-2
-2
-2
-2
-2
-2
-1
-1
0
0
0
0
0
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
0
0
0
0
0
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
0
0
0
-1
-1
-1
-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
0
0
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-2
-2
-2
-2
-2
-2
-2
-2
-2
-1
-1
-1
0
0
0
-1
-1
-1
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-1
-2
-2
-2
-2
-2
-2
-1
-1
0
0
0
0
0
0
-1
-1
-1
-2
-2
-2
-1
-1
-1
0
0
0
0
0
0
0
-1
-1
-1
-1
-2
-2
-2
-1
-1
-1
0
0
0
0
0
0
0
-1
-1
-1
-1
-2
-1
-1
-1
-1
-1
-1
0
0
0
-1
-1
-1
-1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
1
1
1
1
1
1
1
0
0
0
0
0
-1
-1
-1
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
2
2
2
2
2
2
1
1
0
0
0
0
-1
-1
0
0
0
0
1
1
1
1
1
1
1
0
0
0
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
0
-1
-1
-1
-2
-2
-2
-2
-2
-2
-1
-1
-1
-1
0
0
0
0
0
0
0
-1
-1
-1
-1
-1
-2
-2
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-2
-2
-2
-2
-2
-2
-2
-1
-1
-1
-1
-1
-1
-1
-1
-1
-2
-2
-2
-2
-2
-2
-1
-1
-1
-1
-1
-1
-2
-2
-2
-2
-2
-2
-1
-1
0
0
0
0
0
-1
-1
-1
-2
-2
-1
-1
-1
-1
0
0
0
0
0
-1
-1
-2
-2
-3
-3
-3
-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
0
0
0
0
0
1
1
1
1
1
0
0
0
0
0
0
-1
-1
-1
0
0
1
1
1
2
2
2
2
2
1
1
1
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
2
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
2
2
1
1
1
1
1
1
1
1
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
2
2
2
2
2
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
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
3
3
3
3
3
3
2
3
3
3
3
3
4
4
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
3
3
2
2
2
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
1
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
2
2
2
1
1
1
1
0
0
0
0
0
0
1
1
0
0
0
-1
-1
-1
-1
-1
-1
0
0
0
0
1
0
0
0
0
0
-1
0
0
0
0
0
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
1
1
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
-1
-1
-1
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
0
-1
-1
-1
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-2
-2
-2
-2
-1
-1
-1
-1
0
0
0
0
0
0
0
0
-1
-1
-1
-1
-2
-2
-2
-2
-2
-2
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-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
0
0
0
0
0
0
0
0
-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
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-2
-2
-2
-2
-2
-3
-3
-3
-3
-3
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-1
-1
-1
-2
-2
-2
-3
-3
-3
-3
-2
-2
-1
0
1
1
1
1
0
-1
-2
-3
-4
-4
-4
-3
-3
-2
-1
-1
-1
-1
-1
-2
-2
-3
-3
-2
-2
-1
-1
0
0
0
0
-1
-2
-3
-4
-4
-4
-3
-2
-1
0
1
2
2
2
2
1
0
-1
-1
-2
-2
-2
-2
-1
-2
-2
-2
-2
-2
-2
-2
-2
-1
-1
0
0
1
1
0
0
0
0
0
0
0
0
1
1
0
0
-1
-2
-2
-3
-4
-4
-4
-3
-3
-2
-1
-1
0
1
1
1
1
1
1
1
0
0
-1
-1
-2
-2
-2
-2
-2
-2
-1
-1
0
1
1
1
1
1
0
0
0
0
-1
0
0
0
0
0
0
0
-1
-1
-2
-2
-3
-3
-3
-3
-2
-2
-2
-1
-1
-1
-1
-1
-1
0
0
0
0
1
1
1
1
1
0
0
0
-1
-1
-1
-2
-2
-2
-2
-2
-2
-2
-2
-1
-1
-1
-1
-1
-1
-1
-1
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-1
-1
0
0
1
1
1
0
0
-1
-2
-2
-3
-3
-4
-3
-3
-3
-2
-2
-1
-1
-1
0
0
0
1
1
1
1
1
1
1
0
0
-1
-1
-1
-2
-2
-2
-1
-1
-1
0
0
0
0
0
-1
-1
-2
-2
-3
-3
-3
-3
-3
-2
-2
-1
-1
0
0
1
1
1
1
2
2
1
1
1
1
0
0
-1
-1
-1
-2
-2
-1
-1
-1
-1
-1
0
0
-1
-1
-1
-1
-2
-2
-2
-2
-1
-1
-1
-2
-2
-2
-2
-2
-2
-2
-1
0
1
2
2
2
2
1
0
-2
-3
-4
-4
-4
-3
-2
-1
1
2
3
3
3
2
1
0
0
-1
-1
-1
-1
0
0
0
0
0
0
-1
-1
-1
-1
-1
0
1
2
2
3
4
3
3
2
1
0
-1
-2
-2
-2
-1
1
2
3
4
5
5
5
4
4
3
2
2
1
1
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
2
2
2
2
2
2
3
3
3
3
3
2
2
2
2
2
2
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
5
5
5
5
5
4
4
4
3
3
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
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
-1
-1
-1
-1
-1
-1
-1
0
0
0
0
0
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
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
0
0
0
0
0
0
0
-1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
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
0
0
0
0
0
-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
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-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
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-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
-1
-1
-1
-1
-1
-1
-1
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
0
0
0
0
0
0
0
0
0
0
0
0
0
-1
-1
-1
-1
-2
-2
-2
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-2
-2
-2
-2
-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
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
0
0
0
0
0
-1
-1
-1
-1
-1
-1
-1
-1
-2
-2
-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
1
1
1
0
0
0
0
0
0
-1
-1
-1
-1
0
0
0
0
0
0
0
0
0
0
-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
-1
-1
-1
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
0
0
-1
-1
-1
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
-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
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
-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
1
1
1
1
1
1
1
1
1
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
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
0
0
0
0
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
-1
-1
-1
-1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
1
1
1
1
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
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
2
2
2
2
2
2
2
2
1
1
1
1
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
2
2
2
2
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
1
1
1
1
1
1
1
1
1
1
1
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
2
2
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
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
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
3
3
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
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
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
1
1
1
1
1
1
1
1
1
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
-1
-1
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
-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
1
1
1
1
1
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
0
0
0
0
0
0
0
0
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
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
1
1
1
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
0
0
0
0
0
0
-1
-1
-1
-1
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
0
0
0
0
0
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
1
1
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
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
0
0
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
0
0
0
0
0
0
-1
-1
-1
-1
-1
-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
0
0
0
0
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
0
0
0
0
0
0
1
1
1
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
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
0
0
0
0
0
0
1
1
1
1
1
1
1
0
0
0
0
0
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
0
0
0
0
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-2
-2
-2
-2
-2
-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
-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
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
0
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
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
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
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
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
0
0
-1
-1
-1
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
-1
-1
-1
-1
-1
-1
-1
0
0
0
0
1
1
1
1
0
0
0
-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
-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
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
0
0
-1
-1
-1
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
0
0
1
1
1
1
1
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
2
2
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
0
0
0
0
1
1
1
1
1
1
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
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
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
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
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
1
1
1
1
1
1
1
1
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
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
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
0
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
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
0
0
0
0
0
0
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
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
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
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
0
0
0
0
0
0
0
0
0
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
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
-1
-1
-1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
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
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
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
0
0
0
0
0
0
0
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
-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
-1
-1
-1
-1
-1
-1
-2
-2
-2
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
-1
-1
-1
-1
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-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
-1
-1
-1
-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
-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
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-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
-2
-2
-2
-2
-2
-2
-2
-3
-3
-3
-3
-3
-3
-3
-3
-3
-2
-2
-2
-2
-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
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
-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
-1
-1
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
1
1
1
1
1
1
1
1
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
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
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
0
0
0
0
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
0
0
0
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
1
1
1
1
1
1
1
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
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
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
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
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
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
-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
1
1
1
1
1
1
1
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
1
1
1
1
2
2
2
2
2
2
2
2
2
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
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
2
2
2
2
2
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
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
3
3
3
3
4
4
4
4
3
3
3
2
2
2
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
3
3
3
3
3
3
3
3
3
3
3
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
3
3
3
2
2
1
1
0
0
0
-1
-1
-1
-1
-1
-1
-1
-1
-1
-2
-2
-2
-2
-2
-2
-2
-2
-1
-1
-1
0
0
1
1
1
2
2
2
2
3
3
4
4
4
4
5
5
5
5
5
5
5
5
5
5
4
4
4
3
3
2
2
2
1
1
1
0
0
-1
-1
-1
-2
-2
-2
-2
-2
-3
-3
-3
-3
-2
-2
-2
-2
-2
-2
-2
-1
-1
-1
0
0
0
1
1
2
2
2
2
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
3
3
3
3
2
2
2
2
2
2
1
1
0
0
-1
-1
-1
-2
-2
-2
-2
-2
-2
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-2
-2
-2
-1
-1
-1
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
2
2
1
1
1
1
0
-1
-1
-1
-1
-1
-1
0
0
1
1
2
2
2
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
1
1
1
0
0
-1
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
0
0
-1
-1
-1
-1
-2
-2
-2
-2
-2
-2
-1
-1
-1
-1
0
0
0
0
0
0
0
0
0
-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
-1
-1
0
0
1
1
1
1
2
2
2
2
2
2
2
3
3
3
3
2
2
2
2
1
1
1
1
1
0
0
0
-1
-1
-2
-2
-3
-3
-4
-4
-4
-5
-5
-5
-5
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-5
-5
-4
-4
-3
-2
-2
-2
-2
-2
-2
-2
-2
-3
-3
-3
-3
-3
-3
-3
-4
-4
-4
-4
-4
-5
-5
-5
-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
-6
-6
-6
-6
-6
-6
-6
-6
-6
-7
-7
-7
-7
-7
-7
-7
-8
-8
-8
-8
-8
-9
-9
-9
-8
-8
-8
-8
-8
-7
-7
-7
-7
-7
-7
-7
-7
-6
-6
-6
-6
-5
-5
-5
-5
-5
-5
-5
-5
-5
-6
-6
-6
-6
-7
-7
-7
-8
-8
-9
-9
-9
-9
-9
-9
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-9
-9
-9
-9
-9
-9
-9
-9
-9
-8
-8
-8
-8
-7
-7
-7
-8
-8
-8
-9
-9
-9
-10
-10
-10
-10
-10
-10
-10
-9
-9
-9
-9
-9
-9
-8
-8
-8
-8
-7
-7
-7
-7
-7
-6
-6
-6
-6
-5
-5
-5
-5
-5
-5
-4
-4
-4
-4
-3
-3
-2
-2
-2
-2
-2
-2
-2
-3
-3
-4
-4
-4
-5
-5
-6
-6
-6
-7
-7
-8
-8
-8
-9
-9
-9
-9
-9
-9
-9
-9
-10
-10
-10
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-10
-10
-9
-9
-8
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-6
-6
-6
-6
-6
-6
-6
-6
-7
-7
-7
-8
-8
-9
-9
-10
-10
-11
-11
-12
-12
-13
-13
-13
-14
-14
-14
-14
-14
-14
-14
-14
-14
-13
-13
-13
-13
-13
-13
-12
-12
-12
-12
-12
-12
-12
-11
-11
-11
-10
-10
-10
-9
-9
-9
-9
-8
-8
-8
-8
-8
-9
-9
-9
-9
-9
-9
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-9
-9
-9
-10
-10
-11
-11
-11
-12
-12
-13
-13
-13
-13
-14
-14
-14
-15
-15
-15
-16
-16
-16
-16
-16
-16
-15
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-15
-15
-15
-15
-15
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-15
-15
-15
-15
-15
-16
-16
-16
-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
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-17
-17
-16
-16
-16
-15
-15
-15
-15
-15
-15
-15
-15
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-15
-15
-15
-16
-16
-16
-17
-17
-17
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-19
-19
-19
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-19
-19
-19
-19
-19
-18
-18
-18
-18
-18
-18
-18
-17
-17
-17
-17
-16
-16
-16
-16
-17
-17
-17
-17
-17
-17
-17
-18
-18
-18
-18
-19
-19
-19
-20
-20
-21
-21
-21
-22
-22
-23
-23
-24
-24
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-24
-24
-24
-23
-23
-22
-22
-22
-22
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-20
-20
-20
-20
-21
-21
-21
-21
-21
-21
-21
-21
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-21
-21
-21
-21
-22
-21
-21
-21
-20
-20
-19
-18
-17
-16
-15
-14
-14
-13
-12
-11
-10
-10
-9
-9
-8
-8
-7
-7
-7
-6
-6
-5
-4
-4
-3
-2
-1
1
2
3
4
6
7
9
11
13
15
17
20
23
26
30
33
37
41
45
49
54
58
63
69
75
81
87
94
101
108
116
123
131
139
147
156
165
174
184
193
204
214
225
236
247
259
271
283
296
308
322
335
349
362
376
390
404
418
432
447
461
475
490
504
519
534
549
564
580
595
610
626
641
655
669
683
696
709
721
732
743
753
763
773
782
790
799
806
813
820
825
830
834
837
839
840
840
839
836
833
829
824
818
811
803
793
782
771
757
743
729
713
696
680
662
645
627
610
593
576
559
543
527
511
495
479
461
444
425
406
385
365
344
323
303
283
263
244
225
206
187
168
149
130
110
90
71
50
28
5
-20
-46
-74
-103
-133
-164
-196
-227
-257
-286
-313
-339
-363
-386
-407
-427
-446
-464
-483
-502
-522
-543
-567
-592
-620
-650
-682
-715
-748
-782
-816
-848
-879
-910
-938
-966
-992
-1016
-1040
-1062
-1082
-1100
-1117
-1132
-1144
-1154
-1163
-1169
-1173
-1174
-1173
-1169
-1162
-1152
-1137
-1119
-1098
-1072
-1044
-1012
-979
-944
-907
-869
-830
-791
-752
-713
-675
-638
-603
-569
-537
-506
-477
-450
-424
-400
-378
-358
-340
-326
-313
-304
-298
-295
-294
-294
-295
-297
-298
-298
-298
-296
-294
-291
-288
-285
-283
-281
-279
-277
-276
-274
-272
-270
-268
-266
-263
-260
-256
-252
-248
-244
-239
-235
-231
-228
-226
-226
-227
-230
-236
-243
-251
-262
-274
-288
-304
-322
-342
-365
-391
-418
-448
-479
-510
-542
-574
-605
-635
-664
-693
-720
-746
-771
-795
-818
-839
-859
-877
-894
-910
-926
-941
-955
-968
-981
-992
-1002
-1010
-1018
-1022
-1027
-1029
-1030
-1030
-1028
-1026
-1022
-1016
-1010
-1004
-995
-986
-975
-964
-952
-939
-926
-911
-897
-881
-865
-849
-831
-814
-795
-776
-757
-736
-714
-690
-665
-639
-613
-585
-558
-531
-505
-481
-457
-435
-414
-393
-373
-352
-332
-311
-290
-270
-249
-228
-206
-184
-161
-137
-111
-84
-56
-26
5
36
69
102
136
172
209
248
289
331
376
421
467
512
557
600
641
680
718
754
789
822
856
889
922
955
988
1020
1053
1085
1117
1148
1179
1208
1237
1264
1290
1314
1337
1358
1378
1396
1413
1428
1442
1455
1467
1476
1483
1488
1489
1487
1483
1476
1466
1454
1442
1429
1415
1403
1390
1379
1368
1357
1345
1332
1318
1302
1283
1262
1239
1214
1188
1161
1133
1104
1076
1047
1018
990
962
935
907
880
854
829
806
784
763
744
726
710
694
680
666
653
641
631
622
614
609
605
602
600
599
599
598
597
595
594
592
590
589
587
586
586
586
586
587
588
588
588
588
588
587
587
586
585
584
584
584
584
585
585
586
586
586
584
581
575
568
558
548
535
522
509
496
483
471
460
450
442
435
428
423
419
415
412
410
408
406
404
404
404
406
410
415
423
433
445
458
473
488
504
520
537
554
572
591
611
632
653
674
696
715
733
748
760
769
774
775
772
766
755
741
724
704
681
656
629
601
572
541
510
479
447
414
381
348
313
279
243
207
170
133
94
55
15
-26
-68
-111
-153
-196
-237
-278
-317
-355
-390
-423
-454
-483
-509
-533
-555
-576
-596
-615
-633
-651
-669
-686
-702
-717
-731
-743
-754
-762
-769
-775
-780
-785
-790
-796
-803
-812
-822
-832
-844
-858
-872
-887
-903
-921
-941
-962
-985
-1008
-1034
-1061
-1088
-1116
-1144
-1173
-1202
-1231
-1260
-1289
-1318
-1347
-1375
-1403
-1431
-1457
-1484
-1509
-1533
-1556
-1578
-1598
-1615
-1629
-1641
-1648
-1652
-1652
-1648
-1639
-1627
-1610
-1590
-1567
-1541
-1512
-1482
-1451
-1419
-1386
-1353
-1320
-1287
-1253
-1219
-1186
-1151
-1117
-1082
-1048
-1012
-978
-944
-910
-877
-845
-812
-781
-749
-717
-686
-653
-619
-585
-548
-510
-470
-429
-385
-341
-295
-247
-199
-149
-97
-43
12
69
128
189
251
313
376
439
501
562
623
683
741
799
855
910
963
1012
1059
1102
1140
1173
1201
1224
1242
1255
1265
1269
1270
1267
1261
1251
1237
1221
1201
1179
1153
1124
1092
1058
1020
982
941
899
855
811
767
723
679
636
594
553
512
473
435
398
361
326
293
260
229
199
172
146
121
99
77
57
38
19
-1
-20
-40
-60
-81
-101
-121
-140
-159
-176
-191
-205
-217
-228
-238
-247
-256
-264
-273
-281
-290
-299
-308
-318
-328
-339
-350
-361
-372
-384
-395
-407
-419
-430
-442
-453
-464
-474
-482
-489
-494
-497
-497
-495
-491
-485
-477
-468
-457
-444
-430
-415
-397
-378
-357
-334
-309
-282
-254
-223
-192
-160
-127
-95
-63
-32
-4
22
45
66
83
97
109
119
126
131
135
136
136
133
128
120
109
96
80
61
40
18
-7
-34
-62
-93
-124
-157
-192
-227
-264
-301
-339
-378
-417
-456
-495
-534
-571
-608
-642
-674
-704
-730
-753
-773
-789
-801
-809
-814
-815
-813
-807
-799
-787
-772
-755
-737
-717
-696
-675
-655
-635
-616
-598
-580
-563
-546
-530
-514
-499
-483
-468
-452
-437
-421
-405
-389
-371
-353
-334
-314
-293
-272
-252
-232
-212
-194
-176
-159
-142
-125
-109
-92
-75
-58
-41
-25
-9
5
19
31
42
52
60
68
75
81
86
91
96
100
105
109
115
121
129
138
149
163
178
196
216
237
260
285
310
336
363
390
417
444
472
499
527
555
583
612
640
667
695
722
748
774
800
825
850
875
900
924
948
971
993
1014
1035
1055
1075
1094
1113
1132
1150
1167
1183
1197
1209
1219
1226
1230
1232
1232
1229
1224
1217
1208
1197
1184
1169
1152
1133
1113
1091
1068
1045
1020
997
972
946
920
894
867
839
812
784
756
729
702
677
652
628
606
585
565
546
528
510
492
474
455
435
413
390
364
338
309
279
248
216
183
149
115
79
43
7
-31
-68
-106
-143
-181
-218
-254
-290
-324
-357
-389
-419
-448
-475
-501
-525
-548
-570
-590
-610
-629
-646
-662
-677
-688
-698
-705
-710
-713
-713
-711
-708
-703
-697
-690
-682
-672
-660
-648
-635
-621
-606
-590
-575
-559
-543
-527
-512
-497
-482
-467
-453
-440
-427
-415
-403
-393
-384
-376
-369
-365
-362
-360
-361
-363
-367
-371
-377
-383
-389
-395
-400
-404
-407
-408
-408
-407
-404
-400
-395
-389
-381
-373
-364
-354
-344
-333
-322
-312
-301
-289
-279
-268
-258
-249
-240
-231
-223
-214
-206
-197
-189
-179
-170
-160
-150
-140
-131
-122
-112
-103
-94
-85
-75
-65
-55
-44
-34
-25
-17
-10
-5
-2
0
0
-2
-5
-9
-14
-22
-30
-41
-53
-67
-82
-98
-115
-132
-149
-166
-183
-198
-213
-226
-238
-250
-259
-267
-273
-278
-280
-280
-279
-277
-273
-268
-263
-258
-252
-246
-239
-232
-224
-215
-206
-197
-186
-176
-165
-154
-143
-132
-121
-111
-101
-93
-86
-80
-75
-73
-72
-74
-77
-82
-88
-96
-105
-115
-126
-138
-151
-163
-176
-188
-200
-211
-220
-228
-234
-238
-240
-240
-239
-237
-234
-229
-225
-220
-214
-209
-204
-198
-193
-187
-182
-177
-173
-169
-167
-166
-166
-167
-170
-174
-178
-184
-190
-196
-202
-207
-213
-217
-220
-222
-224
-224
-223
-221
-217
-213
-207
-201
-193
-184
-174
-161
-147
-131
-113
-94
-72
-49
-26
-1
24
50
75
101
126
152
176
201
226
250
274
298
321
345
368
391
414
436
458
479
500
520
539
558
575
592
609
625
641
655
669
682
693
702
709
714
716
716
713
707
700
691
680
667
653
637
620
602
583
562
541
519
496
473
449
425
401
376
352
328
305
283
261
240
221
202
184
168
153
139
126
114
103
93
84
75
66
57
48
38
28
17
5
-7
-21
-36
-51
-66
-82
-98
-114
-130
-145
-161
-176
-192
-208
-224
-241
-258
-276
-294
-312
-331
-350
-371
-391
-412
-434
-456
-478
-500
-522
-543
-564
-584
-604
-623
-642
-660
-679
-697
-714
-730
-745
-758
-769
-779
-786
-791
-794
-794
-793
-789
-784
-777
-768
-757
-744
-730
-714
-697
-678
-659
-640
-619
-599
-578
-556
-535
-512
-490
-466
-442
-417
-391
-365
-338
-312
-285
-258
-232
-206
-180
-154
-129
-102
-76
-48
-19
11
41
73
106
139
173
208
243
278
312
347
381
415
447
478
508
536
562
585
607
626
643
658
671
681
689
695
699
702
704
704
704
704
703
703
703
703
703
704
706
708
711
715
720
726
733
741
749
758
767
776
785
793
800
807
812
815
817
817
814
810
803
794
782
768
751
733
711
688
663
637
608
578
548
515
482
448
413
377
342
305
269
233
197
162
127
94
62
32
4
-23
-48
-71
-93
-113
-132
-150
-167
-183
-198
-213
-227
-241
-254
-267
-279
-290
-301
-311
-321
-331
-340
-349
-358
-366
-374
-381
-388
-394
-400
-405
-410
-414
-418
-421
-425
-428
-432
-435
-439
-443
-447
-452
-457
-462
-467
-471
-475
-478
-481
-482
-482
-482
-480
-479
-477
-475
-473
-471
-470
-469
-469
-468
-468
-467
-466
-463
-460
-455
-449
-442
-433
-423
-411
-399
-386
-372
-357
-341
-324
-306
-287
-266
-245
-223
-200
-177
-154
-132
-110
-88
-67
-46
-26
-6
14
33
52
71
89
107
125
142
159
175
191
206
221
235
249
262
274
285
295
305
313
321
327
333
338
343
346
348
350
351
351
351
350
348
346
344
342
340
337
335
333
330
328
325
322
319
316
312
309
306
304
301
300
298
297
295
294
292
289
285
281
276
272
267
263
259
255
252
250
248
247
245
244
243
241
240
238
237
236
235
234
234
234
234
234
234
233
231
228
223
218
210
202
192
182
170
157
144
130
115
100
84
67
50
32
14
-4
-22
-39
-56
-72
-86
-99
-110
-119
-126
-131
-132
-132
-129
-124
-117
-109
-98
-86
-73
-58
-43
-26
-9
9
27
46
64
81
98
114
129
143
155
167
178
188
197
205
212
218
223
228
231
232
233
232
229
225
220
213
206
198
189
180
170
161
151
141
132
123
114
105
97
91
85
81
79
78
78
81
84
88
94
100
106
113
120
127
134
140
147
153
159
164
169
174
179
184
190
196
202
209
216
223
229
236
241
245
249
252
253
254
253
251
248
244
239
232
225
216
206
195
183
169
155
139
122
104
85
66
45
24
3
-20
-42
-65
-87
-111
-133
-156
-178
-199
-218
-235
-250
-263
-273
-280
-284
-286
-284
-280
-272
-262
-250
-234
-217
-197
-176
-153
-129
-104
-79
-53
-28
-3
21
44
66
87
106
123
138
150
160
168
172
175
174
171
166
158
148
137
123
108
91
74
56
38
20
2
-16
-35
-52
-70
-86
-102
-117
-131
-143
-154
-162
-168
-173
-175
-176
-175
-172
-167
-161
-153
-144
-133
-121
-108
-94
-79
-65
-50
-35
-21
-7
6
19
30
41
51
59
67
74
81
86
92
97
102
107
112
117
122
128
133
139
146
153
161
170
180
191
202
214
227
240
253
266
279
292
306
319
332
345
359
373
387
401
415
429
443
457
470
481
492
501
507
512
515
515
513
509
502
494
484
473
459
445
429
411
393
374
355
335
315
295
274
252
230
208
184
160
136
111
86
61
37
13
-10
-33
-55
-77
-99
-121
-143
-165
-187
-208
-229
-248
-267
-284
-300
-314
-326
-337
-347
-355
-361
-367
-372
-376
-380
-384
-387
-391
-394
-397
-400
-403
-406
-408
-411
-414
-417
-420
-424
-428
-433
-437
-441
-444
-447
-449
-449
-448
-445
-441
-436
-430
-422
-414
-405
-396
-386
-376
-365
-354
-343
-332
-321
-310
-300
-290
-281
-272
-263
-255
-248
-242
-236
-233
-230
-229
-231
-234
-240
-248
-257
-269
-282
-296
-312
-329
-346
-364
-381
-398
-415
-430
-444
-457
-469
-479
-488
-496
-503
-509
-514
-518
-521
-522
-523
-522
-521
-518
-515
-511
-507
-502
-497
-492
-486
-481
-476
-471
-466
-462
-458
-455
-452
-450
-448
-445
-443
-440
-436
-433
-428
-423
-417
-412
-405
-398
-390
-382
-373
-363
-354
-343
-333
-322
-310
-298
-285
-272
-257
-242
-227
-210
-193
-176
-159
-141
-123
-106
-88
-71
-55
-38
-23
-7
8
23
37
52
66
81
95
109
123
137
150
162
175
186
197
207
216
225
232
239
244
249
254
258
261
265
270
274
280
286
292
300
308
316
325
335
346
357
368
381
393
406
418
430
441
452
461
470
478
486
492
497
500
502
502
500
496
490
481
469
456
440
422
403
382
359
335
310
285
258
231
204
177
150
124
98
74
51
29
8
-10
-27
-42
-55
-65
-74
-81
-86
-90
-92
-93
-94
-94
-93
-93
-92
-92
-92
-92
-92
-93
-94
-95
-96
-97
-98
-99
-100
-101
-102
-103
-105
-108
-110
-113
-116
-119
-121
-123
-125
-126
-126
-125
-124
-124
-123
-122
-122
-123
-124
-126
-128
-131
-133
-136
-138
-139
-139
-139
-139
-137
-135
-133
-131
-129
-126
-124
-120
-116
-112
-106
-99
-91
-81
-70
-58
-45
-31
-15
1
17
35
53
71
90
108
125
143
159
174
188
201
213
223
233
242
249
255
260
264
267
268
269
268
266
264
261
257
253
248
243
236
228
220
211
201
191
181
171
162
153
146
139
133
129
125
122
119
117
115
112
110
107
103
99
95
89
83
76
68
60
50
39
27
15
1
-14
-29
-46
-63
-81
-99
-118
-137
-157
-177
-198
-219
-241
-263
-286
-308
-331
-353
-374
-395
-414
-432
-448
-463
-475
-486
-495
-503
-510
-515
-519
-523
-526
-529
-531
-533
-535
-536
-537
-538
-539
-540
-541
-543
-546
-549
-554
-559
-566
-574
-583
-593
-603
-615
-626
-638
-651
-663
-675
-687
-699
-710
-722
-733
-743
-753
-763
-772
-781
-789
-796
-803
-808
-813
-817
-819
-819
-818
-816
-811
-805
-796
-786
-774
-761
-747
-730
-713
-695
-676
-655
-633
-611
-587
-563
-538
-512
-485
-458
-430
-401
-372
-342
-310
-278
-245
-212
-177
-142
-106
-70
-35
0
34
68
101
132
162
191
218
244
268
289
309
326
341
354
365
374
381
387
392
396
400
402
404
406
407
407
407
407
407
407
407
408
409
411
414
417
421
426
433
440
449
458
469
481
495
509
524
539
555
572
590
607
625
644
663
682
702
723
744
766
787
809
831
853
874
895
915
934
951
966
979
990
999
1004
1006
1008
1004
1000
992
981
968
952
934
914
892
869
843
816
788
759
729
698
667
637
606
576
546
517
488
461
434
408
383
359
336
315
294
275
257
241
225
210
195
182
168
155
142
130
118
106
95
84
73
62
52
41
30
18
6
-6
-19
-31
-44
-57
-70
-83
-96
-110
-124
-138
-153
-168
-184
-199
-215
-230
-245
-260
-275
-289
-303
-316
-330
-343
-356
-369
-382
-394
-406
-418
-429
-439
-449
-458
-466
-473
-479
-485
-489
-492
-494
-494
-494
-492
-489
-485
-480
-474
-466
-457
-447
-435
-422
-408
-393
-377
-361
-345
-328
-311
-294
-277
-259
-241
-223
-205
-188
-170
-152
-135
-118
-102
-85
-69
-54
-38
-22
-6
10
25
41
56
72
87
102
118
133
149
165
181
197
214
230
246
262
278
293
308
322
335
348
361
373
384
394
405
414
423
431
439
446
452
458
463
468
471
474
475
477
477
477
477
476
475
473
471
468
464
458
451
443
432
420
407
392
377
360
343
326
310
293
277
261
246
232
218
205
192
180
168
156
144
133
121
109
98
87
76
66
56
46
37
29
21
13
6
0
-6
-11
-16
-20
-23
-25
-27
-29
-30
-31
-31
-30
-29
-27
-25
-22
-18
-13
-8
-2
4
10
17
24
31
39
46
53
60
66
72
78
83
89
94
99
104
109
115
120
125
131
136
140
145
149
152
155
158
160
163
165
168
170
174
177
180
184
188
193
197
201
206
210
215
219
222
226
228
231
233
234
235
235
235
234
233
232
231
230
228
227
226
225
224
222
220
218
215
211
207
202
196
189
181
172
162
152
141
129
116
103
89
75
60
45
30
14
-2
-17
-32
-47
-62
-78
-92
-107
-123
-138
-154
-171
-188
-205
-223
-241
-259
-277
-294
-312
-329
-345
-361
-376
-390
-404
-416
-428
-438
-447
-454
-460
-465
-467
-468
-468
-466
-462
-457
-451
-443
-434
-424
-414
-402
-389
-376
-362
-348
-333
-318
-304
-290
-277
-265
-254
-244
-234
-226
-219
-213
-208
-205
-203
-204
-205
-209
-214
-220
-227
-235
-243
-252
-261
-269
-278
-287
-296
-304
-313
-320
-328
-334
-339
-344
-347
-350
-352
-353
-353
-353
-352
-350
-347
-344
-339
-334
-328
-321
-315
-307
-300
-293
-285
-277
-269
-261
-253
-245
-237
-229
-220
-212
-204
-195
-186
-177
-168
-159
-150
-141
-132
-124
-117
-111
-105
-101
-98
-96
-94
-94
-94
-95
-96
-98
-101
-103
-107
-110
-115
-119
-124
-129
-134
-139
-143
-147
-149
-151
-152
-151
-149
-146
-141
-136
-130
-122
-113
-104
-93
-82
-69
-56
-42
-26
-10
6
24
41
59
77
95
112
127
142
156
168
178
187
194
200
205
208
210
210
209
206
201
196
189
180
171
161
150
139
128
117
105
94
82
71
59
48
37
27
17
7
-2
-11
-19
-26
-34
-40
-46
-51
-56
-60
-64
-67
-70
-72
-74
-76
-78
-80
-81
-82
-83
-82
-81
-79
-77
-74
-71
-67
-64
-60
-55
-51
-47
-42
-37
-32
-27
-21
-16
-11
-7
-2
1
3
5
5
4
2
-1
-5
-10
-17
-25
-33
-43
-53
-64
-75
-88
-100
-113
-126
-140
-153
-166
-178
-190
-200
-211
-220
-228
-235
-241
-247
-252
-256
-260
-263
-265
-268
-269
-271
-271
-272
-272
-271
-271
-269
-268
-265
-262
-259
-255
-251
-247
-243
-239
-236
-233
-230
-227
-225
-224
-223
-223
-223
-224
-225
-227
-229
-232
-235
-238
-242
-245
-248
-250
-253
-256
-258
-261
-264
-266
-270
-273
-276
-280
-283
-286
-289
-292
-293
-294
-294
-294
-292
-290
-287
-284
-280
-276
-272
-268
-263
-258
-253
-247
-240
-233
-225
-217
-208
-199
-189
-179
-169
-159
-148
-137
-126
-116
-105
-94
-84
-74
-64
-56
-47
-40
-33
-27
-22
-18
-15
-12
-10
-9
-9
-9
-10
-11
-12
-13
-14
-15
-15
-15
-14
-12
-10
-6
-2
4
10
18
27
38
49
61
74
87
101
116
130
145
160
175
190
205
221
236
252
268
284
299
315
329
343
356
368
380
390
400
408
416
424
431
437
442
447
451
455
458
460
462
463
464
464
464
464
463
463
462
461
460
459
458
456
454
453
451
449
448
448
448
450
452
457
462
470
479
489
501
514
528
543
558
574
590
607
623
640
656
673
689
705
721
737
753
769
785
800
815
830
843
856
869
880
890
900
909
917
924
930
936
939
942
942
942
939
935
929
923
914
905
895
884
873
860
848
835
821
808
794
779
765
751
737
723
710
697
685
673
662
652
642
632
623
615
606
598
589
581
573
564
556
547
539
530
520
511
500
490
479
467
455
442
429
416
402
387
372
357
341
325
308
291
273
255
237
218
199
180
161
142
123
104
85
68
50
34
18
4
-10
-22
-32
-41
-49
-55
-59
-62
-64
-64
-64
-62
-59
-56
-52
-48
-43
-38
-34
-29
-24
-19
-15
-12
-9
-8
-8
-9
-11
-15
-20
-27
-34
-43
-52
-62
-73
-84
-95
-106
-117
-129
-140
-152
-164
-177
-190
-204
-218
-232
-247
-263
-280
-297
-315
-334
-354
-373
-393
-413
-433
-452
-471
-488
-504
-518
-531
-542
-551
-558
-564
-568
-571
-573
-573
-572
-571
-568
-565
-560
-555
-549
-543
-536
-528
-521
-513
-506
-499
-493
-487
-483
-479
-477
-476
-477
-479
-482
-487
-494
-502
-512
-523
-536
-550
-565
-581
-598
-615
-632
-648
-665
-680
-695
-708
-720
-731
-741
-749
-756
-760
-763
-765
-764
-762
-758
-752
-745
-736
-726
-714
-702
-688
-673
-658
-642
-625
-608
-590
-572
-553
-535
-517
-499
-481
-464
-448
-432
-417
-403
-389
-377
-365
-354
-344
-335
-326
-318
-311
-304
-298
-292
-286
-282
-277
-273
-269
-266
-262
-259
-256
-253
-249
-245
-241
-236
-231
-225
-219
-212
-205
-198
-190
-182
-174
-166
-158
-150
-141
-133
-124
-115
-105
-96
-86
-75
-65
-55
-45
-35
-25
-16
-8
1
8
16
22
29
35
40
45
49
54
57
61
64
67
69
72
74
75
76
77
77
77
77
76
74
73
71
69
67
64
61
58
55
52
49
46
44
42
42
43
45
49
55
62
71
81
93
105
119
134
150
166
183
201
219
238
257
277
296
315
333
350
366
380
391
401
409
415
419
421
421
420
417
412
406
398
388
377
365
352
338
323
307
291
275
258
242
226
210
194
179
165
151
138
126
114
103
93
83
75
67
60
55
51
48
46
46
48
51
55
60
67
74
82
90
98
107
115
123
131
139
146
152
158
164
168
172
175
176
176
175
173
169
164
157
150
141
132
121
110
98
85
72
57
42
27
11
-6
-22
-39
-55
-72
-88
-104
-120
-135
-150
-165
-180
-195
-209
-223
-236
-249
-261
-273
-284
-294
-303
-312
-320
-328
-336
-343
-351
-358
-365
-372
-379
-386
-392
-399
-405
-410
-417
-423
-430
-437
-445
-454
-463
-474
-486
-498
-512
-526
-542
-558
-574
-591
-608
-625
-641
-658
-674
-690
-705
-720
-735
-750
-765
-779
-793
-807
-819
-830
-840
-849
-857
-862
-867
-870
-871
-871
-869
-866
-861
-855
-848
-838
-828
-816
-803
-789
-774
-758
-741
-722
-703
-684
-664
-643
-622
-601
-579
-558
-536
-514
-491
-469
-446
-423
-400
-376
-352
-328
-304
-279
-254
-228
-203
-176
-150
-123
-97
-71
-46
-21
3
26
48
69
89
108
125
141
155
168
179
189
197
203
208
212
214
214
214
212
209
206
201
197
191
186
182
177
173
169
167
164
163
162
163
163
165
167
170
173
177
181
186
191
197
203
208
215
221
227
233
238
243
248
252
256
258
260
260
259
257
253
249
242
235
227
218
209
200
190
181
171
162
154
146
138
132
126
121
118
115
113
113
113
115
118
121
126
132
139
147
156
166
176
186
197
208
219
229
240
250
260
270
279
289
298
306
315
323
331
338
345
351
357
362
367
372
376
380
383
387
391
395
400
405
412
419
427
436
447
458
471
484
499
515
532
550
568
588
608
628
648
669
690
711
731
751
770
788
805
821
835
848
860
871
880
888
895
901
907
911
914
916
918
918
919
918
918
917
916
914
912
909
905
900
894
887
878
868
856
843
829
814
798
781
763
745
726
707
688
668
648
629
609
590
571
553
535
518
503
489
476
465
455
447
441
437
434
433
434
436
440
446
453
462
472
483
495
508
522
536
549
563
576
588
599
609
619
627
633
639
644
647
648
649
647
644
639
632
624
614
602
588
573
556
538
518
497
475
452
427
402
376
349
321
293
265
237
208
179
151
122
94
66
39
12
-15
-41
-66
-90
-114
-138
-160
-181
-202
-221
-239
-256
-271
-285
-298
-309
-319
-327
-334
-341
-346
-351
-354
-357
-360
-361
-363
-363
-363
-362
-361
-359
-356
-353
-349
-345
-342
-338
-334
-330
-327
-324
-322
-320
-318
-316
-315
-314
-312
-311
-309
-308
-306
-304
-301
-299
-297
-294
-291
-288
-285
-281
-277
-273
-269
-264
-259
-254
-248
-242
-236
-230
-223
-216
-209
-202
-195
-188
-182
-176
-171
-166
-163
-161
-159
-158
-158
-159
-160
-161
-162
-164
-165
-167
-169
-171
-174
-176
-179
-182
-185
-189
-194
-198
-204
-209
-215
-221
-227
-233
-239
-245
-252
-258
-264
-271
-278
-285
-294
-302
-311
-321
-331
-342
-353
-365
-376
-388
-400
-411
-422
-434
-445
-458
-470
-483
-498
-513
-529
-546
-565
-584
-605
-627
-650
-674
-698
-724
-750
-777
-805
-833
-861
-890
-919
-948
-977
-1006
-1036
-1064
-1093
-1121
-1148
-1175
-1201
-1225
-1249
-1272
-1294
-1315
-1335
-1354
-1371
-1388
-1403
-1416
-1428
-1438
-1446
-1452
-1457
-1461
-1463
-1463
-1462
-1460
-1457
-1452
-1446
-1438
-1429
-1420
-1410
-1399
-1387
-1375
-1362
-1349
-1335
-1321
-1306
-1291
-1275
-1260
-1243
-1227
-1211
-1194
-1177
-1160
-1143
-1126
-1109
-1092
-1076
-1059
-1043
-1028
-1012
-997
-981
-966
-951
-936
-921
-906
-891
-876
-860
-845
-829
-812
-796
-779
-761
-743
-724
-705
-685
-664
-642
-619
-595
-570
-544
-516
-487
-456
-425
-392
-358
-322
-286
-248
-209
-168
-126
-83
-39
6
52
99
147
196
245
295
346
397
448
500
551
602
652
702
751
798
845
889
933
974
1012
1050
1084
1115
1143
1168
1188
1204
1217
1226
1231
1232
1229
1223
1213
1200
1183
1164
1142
1117
1090
1060
1029
997
963
928
893
857
821
784
747
711
675
639
604
569
535
502
470
439
409
380
352
325
300
275
253
232
213
195
179
166
154
145
138
133
130
129
131
135
141
148
158
170
183
197
212
228
244
260
275
291
305
319
331
343
353
362
370
378
384
390
395
400
404
409
413
417
421
425
430
435
440
446
452
458
464
470
477
484
492
501
510
520
531
542
554
567
580
594
608
622
637
652
667
682
697
712
727
743
757
772
786
800
814
827
840
851
862
871
880
887
892
896
899
900
899
897
893
888
882
874
865
855
844
833
821
809
797
785
773
762
750
739
727
716
704
693
682
671
660
650
640
630
620
611
602
593
585
577
570
564
558
553
549
545
543
541
539
539
538
538
539
539
540
541
542
544
545
546
548
549
551
553
556
558
561
564
567
571
574
578
583
588
593
598
604
610
615
621
627
632
638
643
647
652
655
659
661
663
664
664
663
661
658
654
649
642
635
626
616
604
592
578
563
548
532
516
500
483
467
451
434
418
402
386
370
354
337
321
305
289
272
256
240
224
207
191
175
158
141
123
106
88
70
52
33
15
-4
-23
-41
-60
-79
-97
-115
-132
-149
-166
-183
-199
-216
-232
-248
-265
-282
-299
-317
-335
-352
-371
-389
-407
-426
-444
-462
-481
-499
-518
-536
-555
-574
-592
-611
-629
-647
-665
-683
-700
-717
-734
-751
-768
-785
-802
-819
-836
-854
-872
-890
-908
-926
-945
-963
-981
-999
-1016
-1035
-1053
-1070
-1087
-1103
-1119
-1135
-1150
-1164
-1177
-1190
-1202
-1214
-1224
-1233
-1241
-1249
-1255
-1261
-1266
-1270
-1273
-1276
-1279
-1281
-1283
-1285
-1288
-1290
-1292
-1294
-1296
-1298
-1301
-1303
-1305
-1306
-1307
-1308
-1308
-1308
-1306
-1304
-1301
-1297
-1292
-1286
-1278
-1269
-1259
-1247
-1234
-1219
-1203
-1185
-1166
-1144
-1121
-1096
-1069
-1041
-1010
-979
-946
-912
-877
-840
-803
-765
-726
-686
-646
-605
-564
-523
-482
-440
-399
-359
-319
-280
-243
-206
-171
-137
-105
-75
-46
-19
6
30
52
73
92
110
127
143
158
172
186
199
211
223
234
245
255
266
275
285
295
305
315
325
336
347
359
371
382
394
405
416
426
435
443
450
455
460
463
465
466
466
464
460
456
451
444
436
428
419
409
398
386
375
362
349
336
323
310
297
285
273
261
249
238
227
217
207
198
190
183
176
171
167
164
162
161
162
163
165
168
172
177
182
189
197
205
215
225
236
247
260
273
287
301
317
334
352
372
392
414
438
462
487
513
540
567
594
621
648
675
701
727
752
776
798
819
839
857
873
887
899
910
918
924
928
931
931
930
927
922
915
906
896
885
872
858
843
827
810
793
775
757
739
720
702
684
667
650
633
617
602
588
574
561
548
535
524
512
501
489
478
466
454
442
430
416
403
388
374
359
343
328
312
295
278
260
242
222
203
182
160
138
115
91
67
42
15
-11
-39
-67
-95
-124
-154
-183
-213
-243
-273
-304
-334
-365
-395
-426
-455
-484
-513
-540
-567
-592
-616
-639
-660
-680
-699
-716
-732
-746
-758
-768
-776
-783
-789
-792
-795
-797
-797
-797
-795
-794
-791
-789
-786
-783
-780
-777
-775
-773
-771
-769
-768
-767
-766
-766
-766
-765
-765
-765
-765
-764
-764
-763
-763
-762
-762
-761
-761
-761
-760
-760
-760
-760
-761
-761
-761
-762
-764
-766
-768
-772
-776
-780
-785
-791
-797
-803
-809
-815
-822
-828
-834
-840
-845
-850
-853
-856
-857
-857
-856
-853
-849
-843
-835
-826
-815
-802
-787
-771
-752
-732
-710
-687
-662
-635
-608
-578
-548
-516
-483
-449
-413
-377
-339
-300
-261
-221
-181
-140
-99
-58
-18
22
62
102
141
179
217
254
290
326
361
395
427
459
490
519
547
574
599
623
646
667
687
705
722
737
751
764
776
787
797
807
816
824
833
841
849
857
866
874
882
891
899
909
918
928
938
949
960
971
983
994
1006
1018
1030
1043
1055
1067
1079
1090
1101
1111
1121
1130
1137
1144
1149
1153
1156
1158
1158
1156
1153
1148
1141
1132
1122
1110
1097
1082
1066
1048
1029
1010
989
968
946
924
902
879
857
834
812
791
770
750
731
713
696
680
666
653
640
629
619
609
600
591
583
575
566
558
549
541
532
523
514
504
493
483
471
460
448
435
423
410
398
386
373
361
349
337
325
313
301
290
279
269
259
250
242
235
229
224
220
217
215
213
212
212
212
213
214
215
216
217
219
220
220
221
221
221
220
219
218
216
213
211
208
204
201
197
192
188
183
177
172
166
160
153
146
140
132
125
117
109
100
91
82
72
61
50
38
26
14
1
-13
-27
-42
-57
-72
-88
-105
-122
-139
-156
-174
-191
-209
-227
-244
-261
-277
-292
-306
-320
-333
-345
-356
-367
-376
-385
-393
-399
-405
-410
-415
-418
-420
-422
-423
-422
-422
-420
-419
-417
-415
-412
-410
-409
-407
-406
-405
-404
-404
-405
-405
-406
-408
-410
-412
-415
-418
-422
-426
-430
-435
-440
-445
-451
-456
-462
-467
-472
-477
-482
-486
-490
-493
-496
-499
-502
-504
-506
-507
-508
-509
-509
-509
-508
-506
-505
-503
-501
-499
-497
-495
-493
-490
-488
-485
-482
-480
-477
-475
-473
-471
-470
-468
-467
-466
-465
-464
-462
-461
-459
-456
-454
-451
-449
-446
-443
-441
-439
-437
-436
-436
-436
-437
-439
-442
-445
-449
-454
-460
-467
-475
-483
-492
-502
-513
-524
-535
-547
-560
-573
-586
-600
-614
-629
-644
-659
-675
-692
-708
-725
-741
-757
-773
-789
-804
-818
-832
-845
-858
-870
-881
-891
-901
-911
-920
-928
-937
-945
-952
-960
-967
-974
-980
-987
-993
-999
-1004
-1008
-1012
-1016
-1018
-1020
-1022
-1022
-1020
-1018
-1016
-1010
-1004
-998
-989
-979
-969
-957
-944
-930
-915
-899
-882
-865
-846
-826
-806
-784
-762
-738
-715
-690
-664
-638
-611
-583
-555
-527
-498
-469
-441
-412
-384
-356
-330
-304
-278
-254
-231
-209
-188
-168
-149
-131
-113
-97
-82
-68
-54
-42
-31
-21
-13
-5
2
8
12
16
19
21
22
23
23
23
23
22
21
20
18
16
13
11
8
5
2
0
-2
-4
-6
-6
-7
-6
-5
-4
-1
2
6
11
17
24
32
42
52
64
76
88
102
115
129
143
157
172
186
200
213
227
240
253
266
279
291
303
315
326
337
348
358
368
378
387
397
405
414
422
430
437
444
451
458
464
470
476
482
487
492
496
501
505
509
513
517
521
525
529
533
537
541
545
549
553
557
562
566
571
576
582
587
593
599
605
611
616
622
628
634
640
646
651
657
662
667
672
676
679
683
685
687
689
689
689
689
687
685
682
679
675
670
665
660
655
650
644
639
633
628
622
617
611
606
601
596
591
587
582
578
575
572
569
566
564
563
562
560
559
558
556
554
552
548
544
539
534
527
521
514
506
498
489
480
471
461
451
441
431
421
411
402
393
385
377
371
365
359
355
350
347
343
340
336
333
329
326
322
317
313
308
302
296
290
284
277
270
262
254
246
237
227
216
206
194
182
170
158
146
133
122
110
99
88
77
66
56
46
36
27
18
9
1
-7
-15
-22
-29
-36
-43
-49
-55
-60
-65
-69
-73
-76
-78
-80
-81
-82
-83
-84
-84
-86
-87
-88
-90
-92
-94
-97
-100
-104
-108
-112
-116
-121
-126
-131
-137
-143
-149
-156
-164
-172
-181
-190
-199
-209
-219
-230
-241
-251
-262
-273
-283
-292
-301
-310
-318
-325
-331
-337
-343
-348
-353
-358
-362
-366
-369
-372
-375
-376
-377
-377
-377
-375
-373
-371
-369
-366
-362
-359
-356
-352
-348
-345
-341
-338
-335
-332
-329
-326
-324
-322
-320
-318
-315
-313
-310
-307
-304
-300
-296
-291
-285
-280
-273
-267
-260
-253
-246
-239
-232
-226
-219
-212
-205
-198
-191
-184
-177
-170
-162
-155
-147
-138
-129
-120
-110
-100
-89
-77
-65
-53
-41
-28
-14
-1
13
27
42
56
71
86
101
115
130
143
156
169
181
192
201
210
217
222
226
229
230
229
227
224
220
214
208
201
193
185
175
166
156
146
135
125
115
106
97
89
81
75
69
64
60
57
55
54
54
56
57
60
63
67
71
75
80
84
89
94
99
104
109
115
121
128
134
142
150
158
167
177
187
198
208
219
230
241
251
262
272
281
291
300
308
316
324
331
338
344
350
354
358
362
364
366
367
368
367
366
365
363
360
358
354
351
348
344
341
338
335
333
331
330
329
329
329
329
330
331
331
332
332
333
333
333
333
333
332
331
331
330
330
329
330
330
331
333
335
338
341
345
350
356
362
369
377
385
394
403
412
422
431
440
449
457
465
472
479
486
492
498
504
511
517
524
531
539
547
555
564
573
582
591
600
610
619
630
640
651
662
674
686
699
711
723
736
748
759
770
780
790
799
808
815
822
829
835
840
844
848
851
854
856
857
858
859
859
858
856
854
852
848
844
840
834
828
822
814
806
797
787
777
765
753
739
725
710
694
677
659
641
621
601
580
558
536
514
491
468
445
421
398
374
349
325
300
274
249
223
197
170
144
117
90
63
36
10
-17
-43
-68
-93
-117
-140
-163
-184
-205
-225
-243
-262
-279
-295
-311
-326
-341
-355
-368
-381
-393
-404
-415
-425
-434
-443
-451
-459
-466
-473
-479
-486
-491
-497
-502
-507
-512
-516
-521
-525
-530
-534
-539
-543
-548
-552
-557
-562
-566
-570
-574
-578
-582
-586
-590
-593
-597
-600
-604
-608
-612
-616
-621
-627
-632
-639
-646
-653
-661
-669
-678
-688
-698
-709
-720
-731
-743
-755
-768
-780
-793
-806
-819
-832
-846
-859
-873
-886
-899
-912
-925
-938
-949
-961
-972
-982
-992
-1002
-1010
-1018
-1026
-1033
-1039
-1044
-1048
-1052
-1054
-1056
-1056
-1056
-1055
-1053
-1050
-1047
-1043
-1038
-1033
-1028
-1022
-1014
-1008
-1000
-993
-984
-976
-966
-957
-947
-937
-927
-917
-907
-896
-886
-876
-865
-854
-843
-832
-821
-809
-797
-785
-773
-761
-749
-736
-724
-712
-700
-688
-676
-664
-651
-639
-626
-613
-600
-586
-572
-557
-542
-527
-512
-496
-481
-465
-450
-434
-419
-404
-389
-376
-363
-351
-340
-330
-322
-314
-307
-302
-297
-294
-292
-290
-291
-292
-295
-299
-304
-311
-319
-328
-339
-350
-363
-377
-392
-407
-423
-439
-456
-472
-489
-507
-524
-542
-559
-577
-595
-613
-631
-649
-666
-684
-701
-718
-734
-750
-765
-780
-794
-808
-821
-832
-844
-854
-864
-873
-882
-890
-897
-904
-910
-916
-920
-924
-927
-929
-930
-930
-929
-927
-924
-920
-915
-909
-901
-892
-882
-870
-858
-844
-830
-814
-799
-782
-765
-746
-727
-708
-687
-666
-644
-622
-599
-575
-551
-527
-502
-477
-452
-426
-401
-375
-350
-325
-300
-276
-252
-229
-206
-183
-162
-140
-120
-100
-80
-60
-41
-22
-4
15
33
52
70
89
107
126
145
165
185
206
228
251
274
298
323
348
373
399
425
452
478
505
532
559
586
614
641
669
696
723
751
778
805
832
860
888
916
944
972
1000
1029
1057
1084
1112
1139
1166
1193
1219
1245
1271
1297
1323
1348
1373
1397
1421
1445
1468
1490
1513
1534
1555
1576
1596
1615
1633
1649
1665
1679
1692
1704
1714
1723
1730
1737
1741
1744
1746
1747
1746
1743
1739
1734
1727
1719
1709
1698
1685
1671
1656
1639
1622
1604
1585
1565
1544
1523
1502
1479
1457
1433
1410
1386
1361
1337
1312
1287
1262
1237
1212
1187
1161
1136
1111
1086
1061
1036
1012
987
963
939
915
891
867
844
820
796
771
747
722
697
671
645
619
592
565
537
509
481
453
425
397
369
341
313
285
258
231
205
179
153
127
102
77
52
27
3
-20
-43
-66
-89
-111
-133
-155
-176
-198
-220
-241
-262
-283
-305
-326
-347
-369
-391
-414
-436
-460
-483
-507
-531
-554
-578
-602
-626
-649
-673
-696
-719
-741
-764
-786
-808
-830
-852
-873
-894
-914
-935
-955
-974
-993
-1012
-1030
-1048
-1065
-1082
-1097
-1112
-1125
-1137
-1148
-1158
-1166
-1173
-1179
-1183
-1185
-1186
-1186
-1184
-1181
-1176
-1171
-1163
-1155
-1146
-1136
-1125
-1114
-1103
-1090
-1078
-1065
-1051
-1038
-1024
-1008
-995
-981
-967
-953
-939
-926
-913
-900
-887
-874
-862
-850
-838
-827
-816
-805
-794
-784
-773
-763
-752
-741
-730
-718
-706
-694
-681
-668
-654
-641
-627
-613
-599
-586
-572
-558
-544
-531
-516
-502
-487
-472
-456
-440
-424
-408
-391
-375
-358
-341
-324
-306
-289
-271
-253
-234
-216
-198
-179
-161
-143
-124
-106
-88
-71
-53
-36
-19
-2
14
29
43
57
70
81
92
101
110
117
123
128
131
134
135
136
136
135
133
130
127
123
118
113
107
101
95
89
84
79
74
70
67
63
61
58
56
55
54
54
54
55
56
59
62
66
71
76
82
89
96
105
113
122
131
141
151
161
171
183
194
206
218
230
243
255
267
279
291
302
313
323
333
343
352
361
369
376
383
390
396
401
405
410
413
417
419
421
423
424
424
424
423
421
419
416
413
410
405
401
396
391
385
379
373
366
360
353
347
340
334
328
321
315
309
303
297
291
285
279
273
266
260
254
248
243
237
231
226
222
217
213
209
205
201
197
192
188
183
178
173
168
163
159
154
149
145
141
137
134
130
127
123
120
116
112
107
102
97
92
86
81
75
69
64
58
52
47
41
36
31
26
21
17
13
10
6
4
1
-1
-3
-5
-7
-7
-8
-8
-7
-6
-4
-1
4
9
16
24
32
42
52
63
75
88
100
114
127
141
155
169
182
196
210
223
237
250
264
277
290
304
317
331
344
357
370
382
394
405
416
426
436
445
454
463
471
480
489
498
507
517
528
540
551
564
577
590
604
618
632
647
663
679
695
711
728
745
761
777
793
808
822
835
847
858
868
876
884
890
896
900
902
905
905
905
904
902
900
896
891
885
878
870
861
851
841
829
817
804
791
777
763
748
733
717
701
685
668
652
635
619
603
587
571
555
539
522
506
490
474
457
440
424
407
391
374
358
342
326
310
294
278
261
245
229
212
195
177
159
140
120
101
80
58
37
14
-9
-32
-56
-80
-105
-129
-154
-179
-204
-228
-252
-276
-299
-322
-343
-364
-384
-403
-420
-437
-453
-468
-481
-494
-507
-518
-529
-539
-549
-558
-567
-576
-585
-593
-602
-610
-619
-628
-637
-646
-656
-666
-677
-688
-699
-711
-723
-735
-748
-761
-774
-787
-800
-813
-827
-840
-853
-865
-878
-890
-901
-912
-923
-934
-944
-954
-963
-972
-980
-988
-995
-1000
-1006
-1012
-1016
-1018
-1020
-1022
-1024
-1024
-1022
-1020
-1018
-1016
-1010
-1006
-1000
-993
-986
-978
-969
-960
-950
-940
-930
-920
-909
-898
-887
-876
-864
-853
-841
-829
-817
-804
-791
-778
-764
-750
-736
-721
-706
-690
-674
-659
-643
-627
-611
-595
-579
-562
-546
-529
-512
-494
-477
-459
-441
-424
-406
-388
-370
-352
-333
-315
-296
-277
-258
-239
-220
-201
-182
-163
-144
-126
-107
-89
-71
-54
-36
-19
-2
15
32
48
64
80
96
111
126
141
156
170
184
198
211
224
237
249
262
274
285
297
309
321
333
345
357
370
382
395
407
420
433
445
458
470
482
494
506
518
530
541
552
562
572
581
590
598
605
611
616
621
625
627
629
630
630
629
628
625
621
617
611
604
595
586
575
564
551
538
524
509
493
477
460
443
426
408
389
371
352
334
315
297
280
262
245
228
212
196
181
167
153
140
128
116
105
94
84
74
64
56
47
39
32
25
20
15
10
6
2
-1
-4
-8
-11
-14
-18
-21
-25
-29
-33
-38
-42
-47
-53
-59
-66
-74
-82
-91
-101
-112
-124
-136
-148
-161
-175
-188
-201
-215
-228
-242
-255
-269
-281
-293
-305
-315
-324
-332
-339
-345
-349
-353
-356
-357
-358
-358
-357
-356
-354
-351
-347
-343
-339
-335
-330
-326
-322
-319
-315
-313
-310
-309
-307
-306
-305
-305
-305
-306
-307
-309
-311
-314
-317
-321
-325
-329
-334
-339
-344
-349
-354
-360
-365
-370
-376
-381
-386
-390
-394
-398
-401
-403
-405
-405
-406
-406
-405
-404
-402
-400
-397
-394
-391
-386
-382
-376
-370
-364
-357
-350
-343
-335
-327
-318
-309
-300
-290
-280
-269
-258
-246
-234
-222
-209
-195
-181
-167
-152
-136
-120
-104
-88
-71
-55
-38
-22
-6
10
26
41
56
70
84
97
110
122
133
144
154
164
173
181
189
197
205
212
219
227
235
243
251
260
269
278
287
297
306
316
326
335
345
354
364
373
383
392
400
409
417
425
433
439
446
451
457
461
465
469
472
474
476
477
478
479
479
479
479
478
476
474
471
468
465
461
457
453
449
445
441
436
432
427
422
418
413
409
405
401
397
394
391
387
384
382
378
375
372
368
365
361
358
355
352
349
346
344
341
339
337
336
334
333
332
331
330
329
329
329
329
328
328
328
328
329
329
329
330
331
332
333
334
335
337
338
338
339
339
339
339
338
338
337
336
335
334
333
332
331
330
329
328
327
326
325
324
323
322
321
320
318
317
315
313
312
310
308
307
306
305
303
303
302
301
300
298
297
296
294
293
292
291
290
289
288
287
287
286
285
285
284
284
283
283
283
283
282
281
280
279
276
274
271
267
263
258
253
247
241
234
226
218
209
199
189
177
166
153
141
128
114
100
86
71
56
40
23
6
-11
-29
-47
-64
-82
-98
-115
-131
-147
-162
-177
-192
-206
-219
-231
-243
-255
-265
-275
-284
-292
-299
-306
-311
-316
-320
-322
-324
-325
-325
-325
-323
-321
-318
-314
-310
-306
-301
-296
-290
-284
-278
-272
-265
-258
-251
-243
-236
-227
-219
-210
-201
-192
-183
-173
-163
-154
-144
-134
-124
-113
-103
-92
-82
-71
-60
-49
-37
-26
-14
-3
9
21
33
45
58
70
82
94
105
116
126
136
146
155
163
171
178
185
192
197
203
207
211
215
218
220
222
224
226
227
228
229
229
230
230
230
230
231
231
232
233
235
237
239
242
244
247
250
252
255
257
259
260
261
262
262
262
262
261
260
259
258
257
255
254
252
249
247
243
240
236
231
226
221
215
209
203
195
188
180
171
162
153
144
135
125
116
106
96
85
74
62
50
37
24
10
-3
-17
-30
-44
-57
-70
-83
-96
-109
-122
-135
-148
-161
-175
-188
-201
-215
-228
-241
-253
-266
-278
-289
-300
-311
-321
-331
-341
-351
-360
-368
-377
-384
-392
-399
-407
-414
-422
-431
-439
-448
-456
-465
-474
-482
-489
-497
-504
-512
-519
-527
-535
-543
-552
-560
-569
-578
-586
-594
-601
-608
-613
-618
-622
-626
-628
-631
-632
-634
-635
-635
-636
-635
-634
-632
-630
-626
-621
-616
-610
-603
-596
-590
-584
-578
-572
-567
-562
-557
-552
-546
-540
-533
-525
-517
-509
-500
-491
-482
-473
-465
-456
-449
-441
-433
-426
-419
-412
-405
-398
-391
-385
-380
-374
-369
-365
-360
-355
-350
-345
-339
-333
-326
-320
-315
-310
-306
-303
-301
-299
-297
-296
-294
-292
-289
-286
-283
-279
-274
-269
-265
-260
-255
-250
-246
-242
-238
-235
-232
-229
-226
-224
-221
-219
-216
-213
-211
-208
-206
-205
-204
-204
-204
-205
-207
-210
-213
-216
-220
-224
-228
-233
-237
-242
-246
-251
-255
-259
-263
-267
-270
-274
-278
-281
-285
-289
-292
-296
-299
-302
-306
-309
-312
-315
-319
-322
-326
-329
-332
-335
-338
-341
-344
-346
-349
-351
-353
-354
-356
-357
-358
-358
-359
-360
-360
-361
-363
-364
-366
-368
-371
-374
-377
-382
-387
-392
-398
-405
-412
-419
-427
-435
-442
-451
-459
-467
-476
-485
-494
-502
-511
-519
-527
-535
-542
-549
-555
-561
-567
-572
-577
-582
-587
-591
-595
-598
-601
-604
-606
-608
-610
-612
-613
-614
-614
-615
-615
-614
-613
-612
-609
-606
-603
-598
-593
-587
-581
-574
-566
-558
-549
-540
-530
-519
-507
-495
-483
-470
-456
-441
-427
-411
-396
-380
-363
-346
-329
-312
-295
-278
-261
-244
-228
-211
-195
-179
-164
-148
-133
-118
-103
-87
-72
-57
-42
-27
-12
3
18
33
47
62
76
91
106
120
135
150
165
181
196
211
227
242
257
271
286
301
315
329
343
357
371
385
399
413
427
441
455
468
481
495
507
520
532
543
554
565
576
586
595
605
614
623
632
641
649
658
666
674
682
690
697
705
712
719
726
732
739
744
750
755
760
764
768
771
774
777
779
781
782
784
785
785
786
787
787
787
786
786
785
784
782
780
778
775
772
768
764
759
754
748
742
735
727
718
709
700
690
679
668
657
646
635
623
611
600
588
576
565
553
542
531
520
510
500
490
481
472
464
456
448
441
434
427
420
414
408
402
397
392
387
382
377
373
368
364
360
356
352
348
345
342
340
338
337
336
336
337
338
340
343
346
350
354
359
363
368
374
380
386
392
398
405
412
419
426
435
443
451
460
469
479
488
498
507
517
527
536
545
554
563
571
579
587
594
601
607
614
619
625
631
636
641
646
651
656
660
665
669
674
678
682
686
690
694
698
701
705
708
712
715
718
722
725
728
732
735
739
743
747
750
754
758
762
766
769
773
776
780
784
788
792
796
801
805
810
814
818
822
826
829
831
833
835
836
837
837
836
836
834
832
829
826
823
819
814
809
804
798
792
785
778
771
763
755
747
739
730
721
712
703
693
684
674
665
655
645
636
626
616
606
595
585
575
565
555
545
535
526
516
507
498
489
479
470
461
451
441
432
422
412
402
392
383
373
363
354
344
334
324
313
302
290
277
264
250
235
220
204
188
172
156
139
123
105
88
69
51
31
12
-9
-30
-51
-72
-93
-115
-136
-158
-179
-200
-221
-241
-261
-281
-300
-318
-336
-353
-369
-385
-400
-415
-429
-443
-456
-468
-479
-491
-502
-513
-524
-535
-546
-556
-566
-575
-583
-591
-598
-605
-611
-617
-622
-627
-633
-638
-643
-647
-652
-656
-661
-665
-669
-673
-676
-679
-683
-685
-688
-690
-692
-694
-696
-697
-700
-702
-705
-707
-711
-714
-717
-720
-724
-727
-731
-734
-738
-742
-746
-751
-756
-761
-767
-773
-780
-786
-794
-802
-810
-818
-827
-836
-845
-854
-863
-873
-882
-892
-902
-912
-923
-933
-944
-955
-966
-977
-987
-997
-1008
-1018
-1028
-1037
-1047
-1056
-1065
-1074
-1082
-1090
-1097
-1104
-1111
-1117
-1122
-1128
-1132
-1136
-1140
-1143
-1145
-1147
-1148
-1149
-1148
-1147
-1145
-1143
-1140
-1136
-1131
-1126
-1120
-1114
-1107
-1100
-1092
-1083
-1074
-1064
-1054
-1043
-1033
-1022
-1010
-1000
-989
-978
-966
-955
-944
-933
-922
-910
-899
-887
-876
-864
-853
-841
-829
-817
-804
-791
-778
-765
-751
-737
-722
-707
-692
-676
-660
-643
-625
-608
-589
-571
-552
-533
-515
-496
-477
-459
-441
-424
-407
-390
-374
-358
-343
-329
-314
-301
-287
-274
-261
-249
-236
-224
-212
-200
-189
-177
-166
-155
-144
-133
-122
-111
-100
-90
-80
-70
-60
-51
-42
-33
-25
-17
-9
-2
4
11
16
22
26
31
34
37
40
41
43
43
43
43
42
41
39
37
35
32
30
27
24
21
18
15
13
10
8
6
4
2
1
1
0
0
0
0
1
2
3
4
6
8
10
12
13
15
16
17
18
18
18
17
15
13
11
8
4
1
-3
-8
-12
-17
-22
-28
-33
-39
-45
-51
-58
-64
-71
-77
-84
-90
-97
-103
-110
-116
-121
-126
-131
-135
-139
-142
-145
-146
-147
-148
-148
-148
-148
-147
-146
-145
-143
-142
-140
-138
-136
-134
-131
-129
-126
-123
-119
-115
-111
-106
-101
-95
-90
-84
-78
-71
-65
-58
-52
-46
-39
-33
-27
-21
-16
-10
-5
0
5
9
14
18
22
26
30
34
37
41
45
49
52
56
60
64
67
71
74
78
81
85
89
93
97
103
109
116
123
131
141
151
161
173
185
198
211
225
239
254
269
284
300
316
332
349
365
381
397
413
429
444
460
475
489
504
518
531
544
556
568
580
590
601
611
620
628
636
643
649
654
658
661
664
666
667
668
668
667
665
663
660
655
651
645
639
632
624
616
608
600
591
582
573
565
556
548
540
532
524
516
509
502
494
487
481
474
467
461
455
449
443
437
431
425
419
412
406
400
395
389
384
378
373
367
361
354
347
340
333
326
318
311
304
298
291
285
278
272
265
258
251
244
238
232
226
221
216
213
210
207
205
203
202
202
201
201
202
203
204
205
206
208
211
213
215
218
220
223
225
227
229
231
232
233
233
233
233
233
232
232
232
232
232
233
233
234
235
236
237
238
240
243
246
250
256
262
268
276
285
294
303
313
324
335
346
357
370
382
395
408
421
435
449
463
477
491
505
519
532
546
559
571
583
595
606
616
626
635
643
650
657
664
669
674
678
682
685
687
689
690
691
691
690
689
688
686
684
681
678
675
671
667
663
659
655
650
646
643
639
635
632
628
625
622
618
614
610
606
601
596
591
584
578
570
562
554
545
536
527
518
508
498
488
477
467
456
445
435
424
412
402
391
380
370
360
350
341
331
322
313
304
296
287
278
269
261
252
244
235
227
218
210
202
193
185
176
168
160
151
143
135
126
118
110
102
94
86
79
71
63
55
46
38
29
20
10
0
-9
-20
-30
-40
-50
-61
-71
-82
-94
-105
-117
-129
-142
-154
-168
-181
-195
-208
-222
-236
-251
-265
-279
-293
-307
-321
-335
-349
-363
-377
-391
-405
-419
-433
-447
-460
-473
-486
-499
-511
-524
-536
-548
-561
-573
-585
-596
-608
-620
-631
-642
-654
-665
-676
-687
-697
-708
-719
-729
-739
-750
-760
-770
-780
-789
-798
-807
-815
-823
-831
-838
-846
-853
-860
-867
-874
-881
-887
-894
-901
-908
-914
-921
-928
-934
-941
-947
-954
-960
-967
-973
-978
-984
-989
-994
-998
-1002
-1006
-1008
-1012
-1014
-1016
-1016
-1018
-1018
-1018
-1016
-1016
-1014
-1012
-1010
-1008
-1004
-1000
-998
-993
-989
-984
-979
-973
-968
-962
-956
-950
-944
-938
-933
-927
-922
-917
-913
-908
-904
-900
-896
-893
-891
-888
-887
-885
-884
-883
-882
-881
-880
-878
-877
-875
-872
-869
-865
-860
-855
-850
-844
-837
-829
-821
-812
-803
-793
-782
-771
-759
-747
-734
-721
-707
-692
-678
-663
-647
-632
-616
-600
-583
-567
-551
-535
-518
-503
-487
-472
-457
-442
-428
-415
-401
-388
-375
-363
-351
-339
-327
-315
-303
-291
-279
-267
-255
-243
-231
-219
-207
-195
-182
-170
-158
-146
-134
-123
-111
-100
-89
-79
-68
-58
-49
-39
-30
-20
-11
-2
7
16
26
35
45
54
64
73
83
93
102
112
122
132
143
153
164
174
185
196
207
218
229
240
251
262
273
283
294
304
314
324
333
343
352
361
370
378
387
395
403
412
420
428
436
444
452
460
468
476
484
492
500
507
515
522
530
537
544
551
558
564
571
577
584
590
596
603
609
616
622
629
635
642
648
654
660
666
671
676
681
685
689
693
696
699
702
704
706
708
710
711
712
714
714
715
716
717
718
718
719
720
721
721
722
723
723
724
725
725
726
727
728
730
731
733
735
737
739
742
744
746
748
750
752
754
756
758
760
762
764
766
768
770
772
774
776
777
779
781
783
785
786
788
790
792
794
795
796
797
797
797
796
795
794
791
788
785
781
776
770
764
757
749
740
731
721
711
700
689
677
665
653
640
628
615
603
590
578
566
554
543
531
520
510
499
489
479
470
461
451
443
434
426
417
408
400
391
382
372
363
353
343
333
323
313
302
292
281
270
259
248
237
226
215
204
193
181
169
157
145
132
119
106
92
79
64
50
35
19
4
-12
-29
-45
-62
-79
-96
-113
-130
-148
-165
-183
-200
-218
-236
-253
-271
-289
-306
-323
-340
-356
-372
-388
-403
-418
-432
-446
-460
-473
-486
-498
-511
-523
-535
-547
-559
-571
-583
-594
-606
-618
-629
-640
-652
-663
-674
-685
-696
-707
-717
-728
-738
-747
-757
-766
-774
-783
-791
-799
-806
-813
-821
-828
-834
-841
-847
-853
-859
-864
-869
-873
-877
-880
-883
-886
-887
-888
-889
-889
-887
-886
-883
-879
-875
-870
-864
-858
-851
-843
-834
-825
-814
-804
-792
-780
-767
-754
-741
-726
-712
-697
-681
-665
-649
-632
-615
-597
-580
-562
-544
-527
-509
-492
-475
-459
-443
-427
-412
-397
-382
-368
-354
-341
-328
-315
-303
-291
-279
-268
-257
-246
-235
-225
-214
-204
-194
-184
-174
-165
-155
-146
-137
-128
-119
-109
-100
-91
-82
-72
-63
-54
-45
-36
-27
-19
-10
-1
7
16
25
33
41
49
57
65
73
81
89
97
105
112
120
128
136
144
153
161
169
178
188
197
207
217
228
239
250
262
273
285
297
309
321
333
345
357
368
378
389
398
407
416
424
431
437
443
448
453
457
461
463
466
468
469
471
472
472
473
474
475
476
477
477
479
479
480
481
482
483
483
484
484
484
483
482
481
479
477
475
472
469
465
460
455
450
444
437
430
423
415
407
398
390
381
371
362
352
342
332
321
310
299
287
276
264
252
240
228
215
203
190
177
165
152
140
127
116
104
93
82
72
62
52
43
34
25
17
9
1
-7
-15
-23
-30
-38
-45
-52
-59
-66
-73
-80
-86
-92
-98
-104
-110
-115
-121
-126
-131
-137
-142
-147
-152
-157
-162
-166
-171
-176
-181
-185
-190
-196
-201
-206
-211
-217
-223
-229
-235
-241
-247
-254
-260
-267
-273
-280
-287
-294
-302
-309
-317
-325
-333
-340
-348
-356
-363
-370
-378
-385
-392
-399
-406
-414
-421
-428
-435
-441
-448
-454
-460
-466
-471
-476
-480
-484
-487
-490
-493
-494
-495
-496
-496
-496
-495
-493
-491
-489
-485
-481
-476
-471
-465
-458
-451
-444
-436
-428
-419
-410
-400
-390
-380
-369
-358
-347
-336
-325
-313
-302
-291
-280
-269
-258
-248
-238
-229
-219
-211
-202
-194
-187
-179
-173
-166
-160
-155
-149
-145
-140
-136
-132
-128
-124
-120
-117
-113
-110
-106
-103
-99
-96
-92
-88
-84
-80
-75
-70
-65
-60
-54
-49
-43
-38
-32
-26
-20
-14
-9
-3
3
8
14
19
24
29
34
40
45
50
56
62
68
74
80
87
93
100
107
115
122
129
137
145
153
160
168
176
184
192
200
208
216
223
231
239
247
255
263
271
279
287
295
303
311
319
327
335
343
351
359
366
374
381
388
394
400
406
411
416
420
424
428
431
433
435
437
438
439
440
440
440
440
439
439
438
436
435
433
432
430
428
426
424
422
420
417
415
413
411
408
405
403
399
396
392
388
383
378
373
367
360
353
346
338
330
321
312
303
294
284
274
264
254
244
234
224
214
204
195
186
177
168
159
151
143
135
128
121
114
108
102
97
92
88
84
81
79
76
75
74
73
72
72
73
73
74
75
75
76
78
79
80
82
83
85
86
88
89
91
92
94
95
96
97
98
98
99
100
100
101
101
102
103
104
105
107
109
111
114
117
121
125
129
134
140
146
152
158
165
172
179
186
194
202
210
219
227
235
244
253
262
271
279
287
296
304
311
319
326
332
339
345
351
357
363
369
375
381
387
392
398
403
408
414
419
424
428
433
438
442
447
451
455
458
462
465
468
470
472
474
476
477
477
478
477
477
475
474
471
468
464
460
454
448
442
434
426
417
408
398
387
376
364
351
338
324
310
295
280
265
249
233
216
199
182
165
147
128
110
91
73
54
36
18
1
-16
-33
-49
-64
-78
-92
-106
-119
-131
-143
-154
-164
-174
-184
-193
-201
-209
-217
-224
-230
-237
-243
-248
-254
-259
-264
-269
-274
-279
-283
-289
-294
-299
-305
-311
-317
-324
-331
-338
-346
-354
-362
-370
-379
-388
-398
-407
-417
-426
-436
-445
-455
-464
-474
-483
-492
-501
-509
-518
-526
-534
-541
-548
-555
-561
-566
-571
-576
-579
-583
-586
-588
-591
-592
-594
-594
-595
-595
-594
-593
-591
-589
-587
-585
-582
-579
-576
-572
-569
-564
-560
-555
-549
-544
-538
-531
-525
-518
-511
-503
-496
-488
-479
-470
-460
-450
-440
-428
-417
-405
-392
-380
-367
-354
-342
-329
-317
-304
-292
-280
-267
-255
-243
-231
-219
-207
-196
-184
-173
-161
-150
-138
-127
-115
-104
-93
-83
-72
-63
-53
-44
-34
-26
-17
-8
0
8
16
23
30
36
42
47
52
57
62
66
70
75
79
83
87
92
96
100
103
106
109
112
114
116
118
119
120
121
122
123
124
124
125
125
126
126
126
125
124
123
122
120
117
115
112
108
104
100
95
91
86
80
75
69
64
58
52
45
39
32
26
20
13
7
2
-3
-8
-12
-16
-20
-24
-28
-32
-36
-40
-45
-49
-54
-58
-63
-68
-74
-79
-85
-91
-98
-105
-112
-120
-128
-135
-144
-152
-160
-168
-176
-184
-193
-201
-209
-216
-224
-231
-237
-244
-250
-256
-262
-267
-273
-278
-283
-288
-293
-297
-301
-305
-308
-311
-314
-316
-319
-321
-323
-325
-327
-328
-330
-331
-333
-334
-335
-335
-336
-336
-337
-337
-337
-337
-337
-336
-336
-336
-336
-336
-336
-337
-337
-338
-338
-340
-341
-342
-344
-346
-348
-350
-352
-355
-358
-361
-364
-367
-370
-373
-376
-380
-383
-387
-391
-395
-399
-403
-406
-410
-413
-416
-419
-421
-423
-424
-425
-426
-425
-425
-424
-422
-420
-417
-414
-410
-406
-401
-396
-391
-385
-379
-373
-366
-359
-351
-343
-335
-327
-318
-310
-301
-292
-284
-275
-266
-258
-249
-240
-232
-223
-214
-205
-197
-188
-179
-170
-161
-152
-144
-135
-126
-118
-109
-101
-94
-87
-80
-73
-68
-62
-57
-53
-49
-45
-42
-39
-37
-35
-33
-32
-31
-31
-30
-30
-31
-31
-31
-31
-31
-31
-30
-30
-29
-27
-26
-24
-22
-19
-16
-12
-8
-3
3
9
15
22
30
38
46
54
62
71
79
87
95
103
110
117
124
131
138
144
151
157
163
169
175
181
186
192
198
204
210
216
222
228
235
241
248
255
263
271
279
287
296
305
315
324
334
344
354
364
374
384
394
404
413
423
432
442
451
460
469
478
487
496
504
513
521
529
536
544
551
559
566
573
580
586
593
600
607
614
621
628
635
642
649
656
663
671
678
685
692
699
706
713
720
727
733
739
745
751
756
761
765
769
772
775
777
779
780
781
781
780
780
779
777
775
773
771
768
765
762
758
754
750
746
742
737
733
728
723
718
713
707
702
697
692
687
682
676
671
666
660
655
649
644
638
632
626
620
613
607
600
592
585
577
569
561
552
542
532
522
511
500
488
476
463
451
438
425
412
399
386
374
361
349
338
326
315
304
294
283
274
264
256
248
240
232
226
219
214
208
203
199
195
191
188
184
181
178
175
172
169
166
163
161
158
155
152
149
146
142
139
136
132
128
124
120
116
111
106
102
96
91
85
79
73
66
60
52
45
38
30
23
15
7
-1
-9
-17
-24
-32
-40
-48
-55
-62
-69
-76
-83
-90
-96
-102
-109
-115
-120
-126
-132
-138
-143
-149
-154
-160
-166
-172
-178
-184
-191
-197
-204
-211
-217
-224
-231
-238
-245
-252
-259
-266
-273
-281
-289
-296
-304
-312
-320
-328
-336
-344
-351
-359
-366
-374
-381
-388
-395
-401
-408
-414
-419
-425
-430
-434
-438
-442
-446
-449
-452
-454
-456
-458
-459
-460
-460
-460
-460
-459
-458
-456
-454
-451
-449
-446
-443
-440
-437
-433
-430
-426
-422
-419
-415
-412
-408
-405
-402
-399
-396
-394
-391
-388
-385
-382
-379
-376
-373
-370
-366
-363
-359
-356
-352
-347
-343
-339
-334
-329
-325
-320
-315
-310
-305
-299
-294
-288
-282
-276
-270
-263
-256
-250
-243
-235
-228
-220
-212
-204
-196
-188
-180
-172
-164
-157
-149
-142
-135
-128
-121
-115
-108
-102
-97
-92
-87
-82
-78
-75
-71
-68
-65
-62
-59
-57
-54
-52
-50
-48
-46
-45
-43
-42
-41
-40
-39
-39
-39
-40
-40
-41
-43
-45
-47
-49
-52
-55
-58
-62
-65
-69
-73
-78
-82
-87
-91
-96
-100
-105
-110
-115
-119
-124
-128
-133
-137
-141
-145
-148
-152
-155
-158
-161
-164
-167
-170
-172
-175
-177
-180
-182
-185
-187
-189
-192
-194
-196
-199
-201
-204
-206
-209
-212
-214
-218
-221
-224
-227
-230
-233
-236
-240
-243
-246
-249
-253
-256
-259
-262
-266
-269
-272
-275
-278
-280
-283
-286
-289
-291
-293
-296
-298
-300
-301
-303
-305
-306
-308
-309
-310
-311
-312
-312
-312
-312
-312
-312
-311
-311
-310
-309
-308
-307
-306
-305
-303
-301
-299
-297
-294
-292
-289
-286
-283
-280
-276
-273
-270
-266
-263
-260
-256
-253
-250
-247
-244
-241
-239
-237
-235
-233
-232
-231
-230
-230
-230
-230
-230
-231
-232
-232
-233
-234
-234
-235
-235
-235
-235
-235
-234
-234
-232
-231
-229
-226
-223
-220
-217
-213
-208
-203
-197
-191
-185
-178
-170
-162
-154
-145
-135
-126
-116
-106
-96
-86
-75
-65
-55
-45
-34
-24
-15
-5
5
14
23
32
40
48
56
64
72
79
86
94
101
108
115
122
129
135
142
149
156
163
170
178
185
192
199
207
214
222
230
237
245
253
261
268
276
284
291
299
306
313
320
327
334
341
348
354
361
367
373
379
385
391
397
402
407
412
416
419
423
426
428
430
432
433
434
435
435
434
433
431
429
427
424
421
417
413
409
404
398
393
386
379
371
363
355
345
336
326
315
305
294
282
271
259
247
236
224
212
200
188
176
165
153
142
131
119
108
97
86
75
64
54
43
33
23
13
3
-6
-15
-24
-33
-41
-50
-58
-66
-74
-81
-88
-95
-101
-107
-113
-118
-123
-128
-132
-136
-139
-142
-144
-146
-148
-149
-150
-151
-152
-152
-153
-153
-154
-154
-155
-155
-156
-156
-157
-157
-158
-159
-160
-161
-162
-162
-163
-164
-166
-167
-168
-170
-171
-173
-175
-176
-178
-179
-181
-183
-184
-185
-187
-188
-189
-189
-190
-190
-190
-190
-190
-190
-189
-188
-187
-186
-185
-183
-181
-179
-177
-175
-173
-170
-167
-164
-160
-157
-153
-149
-145
-140
-136
-131
-126
-121
-116
-111
-105
-100
-94
-88
-82
-75
-69
-63
-56
-50
-43
-37
-30
-23
-16
-10
-3
4
10
17
23
30
36
42
48
54
60
66
71
76
82
87
92
97
101
106
111
116
120
125
130
134
139
143
148
152
157
162
166
171
176
181
186
191
197
202
207
212
218
223
228
232
237
241
245
250
253
257
260
264
266
269
272
274
276
278
279
279
280
280
279
278
277
275
273
271
268
264
261
256
252
247
242
236
230
225
218
212
205
198
191
184
176
169
162
154
147
140
133
126
119
112
106
100
93
87
82
76
70
65
59
54
49
43
38
34
29
24
19
15
10
6
2
-1
-4
-8
-10
-13
-14
-16
-17
-18
-18
-18
-18
-17
-16
-14
-13
-11
-9
-7
-4
-2
0
3
5
8
11
14
16
19
23
26
29
32
35
38
42
45
49
52
56
60
64
67
71
74
78
81
84
87
91
94
97
99
102
105
107
110
112
115
117
119
121
123
124
126
127
129
130
131
132
132
133
133
133
133
132
132
132
131
130
130
129
128
128
128
128
128
128
129
130
131
133
135
137
140
143
146
150
155
160
165
171
177
183
190
196
203
210
216
223
230
236
243
249
256
262
268
274
280
285
290
295
299
304
308
312
315
318
321
323
325
327
328
329
330
330
330
330
330
329
328
328
327
325
324
323
321
319
317
315
313
311
308
305
302
299
295
292
288
284
280
275
271
267
263
258
254
250
247
243
239
236
233
229
226
223
221
218
216
214
213
212
211
210
210
209
209
209
209
209
208
208
208
207
207
206
205
204
203
201
199
196
193
190
186
183
178
174
169
164
159
154
148
143
137
132
126
120
115
109
103
97
91
86
80
74
68
62
57
51
46
40
35
30
25
20
15
10
4
-1
-6
-11
-16
-21
-26
-31
-36
-41
-45
-50
-55
-60
-64
-69
-74
-78
-83
-87
-91
-95
-99
-103
-106
-109
-112
-115
-118
-120
-123
-125
-127
-130
-132
-133
-135
-136
-137
-138
-138
-139
-139
-138
-137
-136
-135
-134
-132
-130
-128
-125
-123
-120
-117
-114
-111
-107
-104
-101
-97
-94
-91
-88
-85
-83
-81
-79
-77
-76
-75
-74
-74
-74
-74
-75
-76
-77
-78
-79
-81
-82
-84
-86
-88
-90
-92
-95
-97
-101
-104
-107
-111
-115
-119
-123
-127
-131
-135
-139
-143
-147
-152
-155
-159
-163
-166
-169
-173
-176
-178
-181
-183
-185
-188
-190
-192
-193
-195
-197
-199
-200
-202
-204
-206
-208
-209
-211
-213
-215
-218
-220
-223
-226
-228
-231
-235
-238
-242
-245
-249
-252
-256
-260
-264
-268
-273
-277
-282
-287
-292
-297
-301
-306
-311
-315
-319
-324
-328
-333
-337
-342
-346
-351
-355
-360
-364
-369
-373
-378
-382
-387
-391
-395
-399
-403
-407
-411
-415
-418
-421
-425
-428
-431
-433
-436
-438
-441
-443
-445
-446
-448
-449
-450
-451
-452
-453
-453
-454
-454
-454
-454
-454
-454
-453
-453
-452
-452
-451
-451
-451
-450
-450
-449
-449
-449
-449
-450
-451
-452
-453
-455
-457
-460
-462
-465
-467
-470
-473
-475
-478
-481
-483
-485
-487
-489
-490
-490
-490
-490
-489
-487
-486
-483
-480
-477
-473
-468
-463
-458
-452
-446
-439
-432
-425
-417
-409
-400
-391
-382
-373
-363
-354
-344
-335
-325
-316
-307
-298
-289
-280
-271
-263
-254
-245
-236
-228
-219
-211
-202
-193
-185
-177
-168
-160
-152
-144
-137
-129
-122
-115
-108
-101
-95
-88
-82
-76
-70
-64
-58
-52
-47
-41
-36
-31
-25
-20
-15
-10
-5
1
6
12
17
23
29
34
41
46
52
58
65
71
77
83
90
96
103
109
116
123
131
138
145
152
160
167
174
181
188
195
202
208
215
221
227
233
238
244
249
254
259
263
268
272
276
280
283
287
290
293
296
300
303
306
309
312
315
318
321
324
327
330
332
335
338
341
344
347
350
353
357
360
363
367
370
373
377
380
384
387
390
394
397
401
404
407
410
413
416
419
422
425
428
430
433
436
438
441
443
445
447
449
451
453
454
455
456
457
457
457
456
455
453
451
449
445
441
437
432
427
421
414
408
400
393
385
377
368
360
351
343
334
325
317
308
300
292
284
276
268
261
254
247
241
234
228
222
217
211
206
201
196
191
186
181
177
172
168
163
159
154
149
145
140
134
129
123
117
112
106
100
94
88
82
76
70
64
59
53
47
41
36
30
24
19
14
8
3
-2
-7
-12
-17
-22
-27
-32
-36
-41
-46
-51
-55
-60
-64
-69
-73
-78
-82
-86
-90
-94
-98
-102
-105
-109
-112
-116
-119
-123
-126
-129
-131
-134
-136
-139
-141
-143
-145
-146
-148
-149
-151
-152
-153
-155
-156
-157
-158
-159
-161
-162
-163
-164
-166
-167
-168
-170
-171
-173
-175
-177
-179
-181
-184
-186
-189
-191
-194
-197
-200
-203
-206
-209
-213
-216
-219
-222
-225
-228
-231
-233
-236
-238
-241
-243
-245
-247
-250
-252
-254
-255
-257
-259
-260
-261
-262
-262
-262
-262
-262
-261
-260
-258
-257
-255
-252
-250
-247
-244
-240
-237
-233
-229
-225
-220
-216
-211
-206
-202
-197
-192
-187
-182
-177
-172
-168
-163
-158
-154
-149
-145
-140
-136
-132
-128
-124
-121
-117
-113
-110
-106
-103
-100
-96
-93
-90
-87
-83
-80
-77
-74
-71
-68
-65
-62
-59
-56
-53
-50
-47
-44
-41
-38
-35
-32
-29
-26
-24
-21
-19
-17
-15
-13
-11
-9
-8
-6
-5
-4
-3
-2
-1
0
1
2
3
4
6
7
9
11
13
15
17
20
23
26
29
33
36
40
44
48
52
56
60
64
68
72
77
81
86
90
94
98
102
106
109
112
115
118
120
123
124
126
127
128
129
130
131
131
132
133
133
134
135
136
138
139
140
142
144
146
148
150
152
154
156
159
161
163
165
167
169
171
173
175
177
179
181
183
184
185
187
188
189
189
190
190
191
191
191
190
190
189
188
187
186
185
183
182
180
179
177
175
174
172
170
169
167
165
163
161
159
157
155
154
152
150
149
148
147
146
145
144
144
143
143
143
142
142
142
142
142
142
142
142
142
143
143
143
143
143
143
143
143
143
143
143
143
142
142
141
140
139
138
136
134
132
130
128
125
123
120
117
114
111
108
104
101
97
94
91
89
86
83
81
79
78
76
75
75
74
74
75
75
77
78
80
82
84
86
88
91
94
96
99
102
104
107
109
111
113
115
117
118
120
121
123
124
125
126
126
127
128
128
129
129
130
130
130
130
130
129
129
128
127
127
126
125
124
124
123
122
120
119
118
116
114
112
110
108
106
104
102
100
97
95
93
91
89
87
85
83
82
81
80
79
78
78
78
78
78
79
79
80
81
82
83
84
86
88
90
92
94
96
98
101
103
105
107
109
111
112
114
115
116
117
118
118
118
118
118
118
117
117
116
116
115
114
113
112
111
109
108
106
105
103
102
100
99
97
96
94
93
91
90
88
87
85
84
82
81
79
78
76
74
72
70
68
67
64
62
60
58
56
54
52
50
48
46
44
42
40
37
34
32
29
26
23
20
17
14
11
8
5
2
-1
-4
-7
-9
-12
-14
-17
-19
-21
-23
-25
-28
-30
-32
-35
-37
-39
-42
-44
-46
-49
-51
-53
-56
-58
-60
-63
-65
-67
-70
-72
-75
-77
-79
-82
-84
-86
-88
-91
-93
-95
-98
-100
-102
-104
-106
-108
-110
-112
-114
-116
-118
-120
-122
-124
-126
-128
-131
-133
-135
-138
-140
-143
-146
-149
-152
-154
-158
-161
-164
-168
-171
-175
-179
-183
-188
-192
-196
-201
-206
-210
-215
-220
-225
-229
-234
-239
-244
-249
-254
-259
-263
-268
-273
-278
-282
-287
-292
-297
-302
-307
-312
-317
-322
-327
-332
-337
-341
-346
-350
-354
-358
-362
-366
-369
-373
-376
-379
-382
-385
-388
-390
-392
-394
-396
-397
-398
-399
-400
-400
-400
-400
-400
-400
-400
-399
-399
-398
-398
-397
-396
-396
-395
-394
-393
-392
-391
-389
-388
-387
-385
-384
-382
-380
-378
-376
-374
-372
-369
-366
-363
-360
-356
-353
-349
-345
-341
-337
-333
-329
-324
-319
-315
-310
-304
-299
-294
-288
-283
-277
-272
-266
-260
-254
-249
-243
-237
-231
-225
-219
-214
-208
-203
-197
-192
-187
-181
-176
-170
-165
-159
-153
-147
-141
-136
-130
-124
-119
-113
-108
-102
-97
-92
-87
-82
-76
-71
-66
-61
-55
-50
-45
-40
-34
-29
-23
-18
-12
-6
0
5
11
17
23
29
35
41
47
53
58
64
70
76
82
87
93
99
105
112
118
124
130
136
142
148
153
159
165
170
176
181
186
191
196
201
206
210
214
218
222
225
229
232
235
238
241
244
246
249
251
253
254
256
257
258
259
259
260
260
261
261
261
261
260
260
259
259
258
258
257
256
255
254
252
251
249
247
246
244
242
240
238
237
235
234
232
230
229
227
226
224
222
221
219
217
215
213
211
208
206
203
200
198
195
192
190
187
184
181
178
175
172
169
165
162
159
156
152
149
146
142
138
134
131
127
123
119
115
111
107
103
99
95
91
86
82
77
73
69
64
60
56
53
49
46
42
39
36
33
30
27
24
21
19
17
15
13
11
10
9
7
7
6
6
5
5
6
6
7
7
8
9
10
11
12
13
14
14
16
17
18
20
21
23
25
27
29
31
32
34
36
38
40
42
45
47
50
52
55
58
61
63
66
69
72
76
79
83
86
90
94
98
102
107
111
115
120
124
128
132
137
141
144
148
151
155
157
160
162
164
166
168
169
170
171
171
171
171
171
170
170
169
168
167
165
163
162
160
157
155
153
151
149
146
144
142
140
137
135
133
131
129
127
126
124
123
122
120
120
119
118
118
117
117
117
117
118
118
119
119
120
121
122
123
123
124
125
125
125
125
125
124
123
122
120
117
115
112
108
105
101
96
91
86
81
75
69
63
57
50
43
36
29
22
14
6
-1
-9
-17
-25
-32
-41
-49
-57
-65
-73
-82
-90
-98
-107
-115
-122
-130
-138
-145
-152
-158
-165
-171
-176
-182
-187
-192
-196
-201
-205
-209
-213
-216
-220
-223
-226
-229
-232
-235
-237
-240
-242
-245
-247
-250
-252
-254
-256
-258
-260
-262
-263
-265
-266
-268
-269
-270
-272
-273
-275
-276
-277
-279
-280
-281
-282
-283
-284
-285
-286
-286
-287
-287
-288
-288
-288
-288
-288
-288
-288
-287
-287
-286
-285
-284
-282
-281
-279
-277
-275
-273
-271
-269
-266
-264
-261
-258
-254
-251
-248
-244
-241
-237
-234
-230
-226
-222
-218
-213
-209
-204
-199
-194
-189
-183
-177
-172
-166
-160
-153
-147
-140
-134
-127
-120
-114
-107
-101
-94
-87
-81
-75
-69
-63
-58
-52
-48
-43
-39
-35
-31
-28
-25
-22
-20
-18
-16
-15
-14
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-12
-12
-11
-10
-9
-7
-6
-4
-3
-1
1
3
5
7
10
13
15
18
21
24
27
30
32
35
38
41
44
47
49
52
54
57
59
61
63
65
67
68
70
71
72
73
74
75
76
76
77
77
77
76
76
75
75
74
73
72
70
69
67
65
63
61
59
57
55
53
51
49
47
45
43
41
39
37
35
34
32
30
28
26
24
22
20
18
15
13
10
7
4
1
-2
-6
-9
-13
-16
-20
-24
-27
-31
-34
-38
-41
-44
-47
-50
-53
-55
-58
-60
-62
-64
-66
-68
-70
-71
-73
-74
-76
-77
-78
-79
-79
-80
-80
-80
-80
-80
-80
-80
-79
-79
-78
-77
-76
-75
-75
-74
-72
-71
-70
-69
-67
-66
-64
-63
-61
-59
-58
-56
-54
-52
-49
-47
-45
-43
-40
-38
-35
-32
-30
-27
-24
-21
-18
-15
-13
-10
-7
-4
-1
2
5
8
11
14
17
20
22
25
27
30
32
35
37
39
41
44
46
48
50
52
54
56
58
60
63
65
68
71
74
77
80
83
87
91
95
99
103
108
112
117
122
127
132
137
142
148
153
159
165
170
176
182
188
194
200
207
213
219
225
231
237
242
248
254
259
264
269
273
278
282
285
289
292
295
298
300
303
305
306
308
309
310
311
311
311
310
310
308
307
305
303
301
298
296
292
289
286
282
278
275
271
267
263
259
255
251
247
244
240
237
234
231
228
225
223
220
218
215
213
211
209
207
205
203
201
199
198
196
194
192
190
187
185
183
181
178
176
173
171
168
165
162
159
156
153
149
146
142
138
134
131
127
123
119
116
112
108
105
101
97
94
90
87
84
81
77
74
71
68
65
62
59
56
53
50
48
45
43
41
39
37
35
33
32
30
28
27
25
24
22
21
20
19
18
17
16
15
15
14
14
14
14
14
14
14
15
15
16
17
18
19
20
21
22
23
23
24
25
26
27
29
30
31
33
34
36
37
39
40
42
44
45
47
48
50
52
53
55
56
58
59
60
61
61
62
62
62
62
62
61
61
60
59
58
56
55
53
52
50
48
46
44
43
41
38
36
34
33
31
29
27
25
24
22
21
19
18
17
16
15
14
13
13
12
12
12
12
12
12
12
12
12
13
13
13
14
14
15
15
16
17
18
18
19
20
20
21
21
22
22
23
23
23
23
23
23
23
23
24
24
24
24
24
24
24
24
24
24
24
24
24
24
23
23
23
22
22
22
21
21
20
20
19
18
17
15
14
13
11
10
8
6
4
2
0
-2
-5
-8
-11
-14
-18
-22
-26
-30
-34
-39
-44
-49
-54
-60
-65
-71
-76
-82
-88
-94
-100
-106
-112
-117
-123
-128
-133
-139
-144
-148
-153
-158
-163
-167
-171
-176
-180
-184
-188
-192
-196
-200
-204
-208
-212
-216
-221
-225
-230
-235
-240
-245
-250
-255
-261
-266
-272
-278
-284
-289
-295
-301
-307
-312
-318
-324
-329
-335
-340
-345
-350
-354
-359
-364
-368
-372
-376
-380
-383
-386
-389
-391
-393
-395
-396
-398
-399
-400
-400
-400
-400
-400
-399
-398
-396
-394
-392
-390
-388
-385
-383
-380
-377
-374
-371
-368
-364
-361
-357
-354
-350
-346
-342
-338
-335
-331
-327
-323
-319
-315
-312
-308
-304
-301
-297
-294
-290
-287
-284
-281
-278
-275
-273
-270
-267
-264
-262
-259
-256
-254
-251
-248
-245
-242
-239
-236
-232
-228
-224
-220
-215
-210
-206
-200
-195
-190
-185
-179
-174
-169
-163
-158
-152
-147
-141
-136
-130
-125
-119
-114
-109
-105
-100
-95
-91
-87
-83
-80
-76
-73
-70
-67
-63
-60
-57
-54
-51
-48
-45
-42
-39
-36
-33
-30
-27
-23
-20
-17
-13
-10
-6
-3
1
5
9
12
16
19
23
26
30
33
36
39
42
45
48
51
54
57
59
62
64
66
68
70
72
74
75
77
78
79
80
81
82
83
83
84
84
84
84
84
84
84
83
83
82
81
80
80
79
79
78
78
77
76
76
75
74
74
73
72
72
71
71
70
70
69
69
69
68
68
68
68
68
68
68
68
69
70
71
72
73
74
76
78
79
81
83
85
87
90
92
95
97
100
103
106
110
113
116
120
123
126
129
132
136
139
142
145
147
150
153
155
158
160
162
164
165
167
168
170
171
172
173
174
175
175
176
176
176
176
176
175
175
175
175
174
174
174
174
174
174
174
174
174
174
174
174
174
173
173
173
173
173
173
173
173
174
174
175
175
176
177
178
179
180
182
183
184
185
186
187
189
190
191
192
194
195
196
198
199
200
202
203
204
205
206
206
207
207
207
207
207
207
206
205
204
203
202
201
200
199
197
196
195
194
192
191
190
189
188
186
185
184
183
182
181
179
178
176
175
174
172
170
169
167
165
163
161
158
156
153
150
146
143
139
135
132
127
123
119
116
112
108
104
100
96
93
89
85
82
78
75
72
69
66
63
61
58
56
53
51
48
46
44
41
39
36
34
32
29
27
24
22
19
16
14
11
9
6
3
0
-3
-6
-9
-12
-16
-19
-23
-27
-31
-34
-38
-43
-47
-51
-55
-59
-64
-68
-73
-77
-82
-87
-91
-96
-101
-105
-109
-114
-118
-122
-126
-130
-133
-137
-140
-143
-146
-149
-152
-154
-156
-158
-160
-162
-163
-164
-165
-166
-167
-167
-168
-168
-169
-169
-169
-169
-169
-170
-170
-170
-171
-171
-172
-172
-173
-174
-174
-175
-175
-176
-176
-177
-178
-178
-179
-180
-180
-181
-181
-182
-182
-182
-183
-183
-183
-183
-183
-182
-182
-181
-180
-179
-178
-176
-175
-173
-171
-169
-167
-164
-162
-159
-156
-153
-149
-146
-142
-138
-134
-130
-126
-121
-117
-112
-108
-103
-98
-93
-88
-83
-78
-73
-68
-63
-58
-53
-48
-43
-38
-33
-28
-24
-19
-15
-10
-6
-2
2
5
9
12
14
17
20
22
24
26
29
30
32
34
35
36
38
39
40
41
41
42
43
44
45
46
47
48
49
50
51
52
54
55
57
58
60
62
63
65
66
68
69
70
71
72
73
74
75
75
76
76
76
77
76
76
76
75
75
74
73
72
71
70
68
67
66
64
62
61
59
57
56
54
53
51
50
49
48
47
46
45
44
44
43
43
43
43
43
43
42
42
42
42
42
41
41
41
41
41
41
41
41
41
41
42
42
42
43
43
44
44
45
45
45
46
46
46
46
46
46
46
46
45
45
45
44
43
42
41
40
39
37
36
34
33
32
30
29
27
26
24
23
22
21
20
19
18
17
16
15
14
14
13
12
12
11
10
10
9
8
8
7
6
6
5
4
3
2
1
0
-1
-2
-3
-4
-5
-6
-7
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-21
-22
-22
-22
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-22
-22
-21
-20
-19
-18
-17
-16
-15
-14
-12
-11
-10
-8
-7
-5
-4
-3
-1
0
1
2
4
5
6
7
8
9
10
10
11
12
12
13
13
14
14
15
16
16
17
17
18
18
19
19
20
20
21
21
22
22
22
22
23
23
23
23
23
24
24
25
25
25
26
26
27
27
27
28
28
29
29
30
31
31
32
33
33
34
34
35
35
36
36
36
36
36
36
35
35
34
33
32
30
28
26
24
22
20
17
15
12
10
7
5
2
0
-2
-4
-6
-8
-10
-11
-12
-13
-13
-13
-13
-12
-11
-10
-9
-7
-5
-3
-1
1
4
6
9
12
15
17
20
23
26
28
31
34
36
39
41
43
46
48
49
51
53
54
55
56
57
58
59
60
61
61
62
63
64
65
65
66
67
68
69
71
72
73
75
76
77
79
80
82
83
85
86
88
89
91
92
94
95
96
97
98
99
100
100
100
101
101
101
100
100
99
99
98
97
96
95
94
92
91
89
87
86
84
82
81
79
77
76
74
72
71
69
67
66
64
62
61
59
58
56
54
53
51
49
48
46
44
43
41
39
37
35
33
31
29
27
24
22
20
18
16
13
11
9
7
4
2
0
-2
-4
-7
-9
-11
-13
-14
-16
-18
-19
-21
-22
-24
-25
-27
-28
-30
-31
-32
-34
-35
-37
-38
-40
-41
-43
-44
-46
-48
-49
-51
-53
-54
-56
-58
-60
-62
-64
-65
-67
-69
-71
-73
-74
-76
-78
-80
-81
-83
-85
-87
-89
-91
-93
-95
-97
-98
-100
-102
-104
-106
-108
-109
-111
-112
-114
-115
-117
-118
-119
-120
-122
-123
-124
-125
-126
-127
-128
-129
-130
-130
-131
-132
-132
-133
-133
-134
-135
-135
-136
-136
-136
-136
-136
-136
-136
-135
-135
-134
-133
-132
-132
-131
-129
-128
-127
-125
-123
-122
-120
-118
-116
-114
-112
-109
-107
-105
-103
-100
-98
-96
-94
-92
-89
-87
-85
-83
-81
-80
-78
-77
-75
-74
-73
-72
-71
-70
-70
-69
-68
-68
-67
-67
-66
-66
-65
-65
-64
-64
-63
-62
-61
-60
-59
-58
-57
-56
-54
-53
-51
-49
-48
-46
-44
-41
-39
-37
-35
-33
-30
-28
-26
-23
-21
-18
-16
-13
-11
-8
-6
-3
-1
2
4
6
8
10
12
14
16
17
19
20
22
23
24
25
26
27
28
29
29
30
30
31
31
31
31
31
30
30
29
28
27
26
25
23
22
21
19
17
16
14
12
10
8
6
4
2
-1
-2
-5
-7
-9
-11
-13
-15
-17
-19
-20
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-31
-32
-32
-32
-32
-32
-33
-33
-33
-33
-34
-34
-34
-35
-36
-37
-38
-39
-40
-41
-43
-44
-46
-48
-49
-51
-54
-56
-58
-61
-63
-66
-68
-71
-74
-76
-79
-82
-85
-88
-91
-93
-96
-99
-102
-105
-108
-111
-114
-117
-120
-123
-125
-128
-131
-134
-136
-139
-141
-144
-146
-149
-151
-154
-156
-158
-160
-161
-163
-164
-166
-167
-168
-169
-170
-171
-172
-173
-174
-175
-175
-176
-177
-177
-177
-178
-178
-178
-178
-177
-177
-177
-176
-176
-175
-175
-174
-173
-172
-171
-169
-168
-167
-165
-164
-162
-161
-159
-157
-155
-153
-151
-149
-146
-144
-141
-139
-137
-134
-131
-128
-125
-122
-119
-116
-113
-109
-106
-102
-99
-95
-91
-87
-83
-79
-75
-71
-67
-63
-58
-54
-49
-45
-40
-35
-30
-25
-20
-14
-9
-4
2
7
12
18
23
28
33
38
42
47
51
56
60
64
68
71
75
78
82
85
87
90
93
95
97
100
101
103
105
106
108
109
111
112
113
114
116
117
118
119
121
122
123
125
126
128
129
130
132
133
134
136
137
139
140
141
143
144
145
146
147
148
149
150
151
152
152
153
154
155
156
157
158
159
160
161
162
164
165
167
169
170
172
174
176
178
180
183
185
187
190
192
194
197
199
202
205
207
210
212
215
217
220
222
225
227
230
232
234
237
239
241
243
245
247
249
251
253
255
257
259
261
263
264
266
268
269
271
272
273
274
275
276
277
278
279
279
280
280
281
281
282
282
282
283
283
283
284
284
285
285
286
287
288
289
290
292
293
294
296
298
299
301
302
304
306
308
310
311
313
315
317
318
320
321
322
324
325
326
326
327
328
328
329
329
329
329
328
327
327
325
324
322
320
318
316
313
310
308
304
301
297
293
289
285
281
277
273
268
264
259
254
250
245
240
235
230
225
220
215
210
205
200
196
191
186
181
176
171
166
160
155
149
144
139
133
127
121
115
109
103
97
90
84
77
71
64
57
50
43
36
29
22
15
7
0
-8
-15
-23
-30
-38
-45
-53
-61
-68
-76
-84
-91
-99
-106
-114
-121
-128
-135
-141
-148
-154
-161
-167
-172
-178
-184
-189
-194
-199
-203
-208
-212
-216
-220
-224
-227
-230
-233
-236
-239
-242
-244
-246
-248
-250
-251
-252
-253
-254
-255
-255
-256
-256
-257
-257
-257
-257
-257
-257
-256
-256
-255
-255
-254
-254
-253
-252
-252
-251
-251
-250
-250
-249
-249
-248
-248
-248
-248
-248
-248
-248
-248
-248
-248
-248
-248
-249
-249
-250
-250
-251
-252
-252
-253
-253
-254
-255
-255
-256
-257
-258
-259
-260
-261
-262
-264
-265
-266
-268
-269
-271
-272
-274
-275
-276
-278
-279
-280
-282
-282
-283
-284
-285
-285
-285
-286
-286
-286
-286
-286
-286
-286
-286
-286
-286
-286
-286
-286
-285
-285
-285
-285
-285
-284
-284
-284
-283
-283
-282
-281
-281
-280
-280
-279
-278
-278
-277
-276
-275
-274
-272
-271
-269
-267
-265
-262
-260
-257
-254
-251
-247
-244
-240
-236
-232
-228
-223
-219
-214
-210
-205
-201
-196
-192
-187
-182
-177
-172
-167
-161
-156
-151
-145
-140
-135
-130
-125
-120
-115
-109
-104
-99
-94
-89
-84
-79
-75
-70
-65
-61
-56
-52
-48
-44
-40
-36
-32
-28
-25
-21
-18
-14
-10
-7
-4
0
3
6
9
12
15
18
21
24
28
31
35
39
43
47
51
55
59
63
68
72
76
81
85
89
94
98
103
107
112
116
120
124
128
132
136
140
143
146
149
152
154
157
159
161
162
163
165
166
166
167
168
168
168
168
168
168
167
167
166
166
165
164
163
162
161
160
158
157
156
155
154
153
152
151
150
149
148
147
147
146
145
144
144
143
142
141
140
139
138
137
136
134
133
132
130
129
127
125
123
122
119
117
115
113
111
108
106
103
101
99
96
94
91
89
87
85
83
80
78
76
75
73
71
69
68
66
64
62
60
58
57
55
53
51
49
47
45
43
41
39
37
35
33
31
30
28
26
24
22
21
19
17
16
14
13
12
10
9
7
6
4
3
2
0
-1
-2
-3
-4
-6
-7
-7
-8
-9
-10
-10
-11
-12
-12
-12
-12
-12
-12
-12
-11
-10
-9
-8
-7
-6
-4
-2
0
2
4
6
9
11
14
17
19
22
25
28
30
33
36
38
41
43
46
48
50
52
54
56
57
58
60
60
61
62
63
63
63
64
64
63
63
63
62
62
61
60
59
58
57
56
54
53
51
50
48
46
44
42
41
39
37
35
33
32
30
28
26
24
23
21
20
18
17
15
14
13
12
10
9
8
7
6
5
4
4
3
3
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
2
2
3
3
4
5
6
7
9
10
12
14
15
17
19
21
22
24
26
28
30
32
34
36
38
40
42
44
46
48
49
51
52
53
54
55
56
57
58
59
59
60
60
60
60
60
60
60
60
59
59
58
58
57
56
55
55
54
53
52
51
50
49
47
46
45
43
42
40
39
37
36
34
33
31
30
28
26
25
23
21
19
17
14
12
10
8
5
3
1
-2
-4
-7
-9
-12
-15
-18
-20
-23
-26
-29
-32
-34
-37
-40
-43
-46
-48
-51
-53
-56
-58
-60
-62
-64
-65
-67
-68
-70
-71
-71
-72
-73
-73
-74
-74
-75
-75
-75
-75
-75
-75
-75
-74
-74
-74
-73
-73
-73
-73
-73
-72
-72
-72
-72
-71
-71
-71
-70
-70
-70
-70
-70
-70
-70
-70
-70
-70
-70
-71
-71
-71
-71
-71
-71
-72
-72
-72
-72
-72
-73
-73
-73
-74
-74
-74
-74
-74
-74
-74
-73
-73
-73
-73
-73
-72
-72
-72
-72
-71
-71
-70
-70
-69
-68
-68
-67
-66
-66
-65
-64
-64
-63
-62
-62
-61
-61
-60
-60
-59
-59
-59
-59
-59
-59
-59
-59
-60
-60
-60
-61
-61
-62
-62
-62
-63
-64
-65
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-79
-80
-81
-81
-82
-82
-83
-83
-83
-83
-83
-82
-82
-82
-81
-80
-79
-78
-78
-77
-76
-75
-74
-73
-73
-72
-71
-71
-70
-70
-69
-69
-68
-68
-68
-67
-67
-67
-67
-67
-66
-66
-66
-66
-66
-66
-66
-66
-66
-66
-67
-67
-67
-67
-68
-68
-69
-70
-70
-71
-72
-73
-74
-75
-75
-76
-77
-78
-79
-80
-82
-83
-84
-85
-86
-87
-89
-90
-91
-91
-92
-93
-94
-94
-94
-95
-95
-95
-95
-95
-94
-94
-93
-93
-92
-91
-90
-89
-88
-87
-87
-86
-85
-83
-82
-81
-80
-79
-77
-76
-75
-73
-72
-70
-69
-67
-66
-64
-62
-60
-59
-57
-55
-53
-51
-50
-48
-46
-44
-42
-40
-39
-37
-35
-33
-32
-30
-28
-26
-23
-21
-19
-17
-14
-12
-9
-7
-4
-1
2
5
7
10
13
16
19
21
24
26
29
32
34
37
40
42
45
47
50
53
56
59
62
65
68
71
74
77
80
83
87
90
94
97
101
105
109
113
117
121
126
130
134
139
144
148
153
158
163
168
172
177
182
187
192
197
202
206
211
216
220
225
229
234
238
242
246
250
254
257
260
263
266
269
271
273
275
276
278
279
280
280
280
280
280
280
279
278
277
276
274
273
271
269
267
265
262
260
257
254
251
248
244
241
237
234
230
226
222
218
213
209
204
199
195
190
186
181
177
172
168
164
159
155
150
146
141
137
132
128
124
119
115
111
107
103
99
95
91
87
84
80
77
74
71
68
65
62
59
56
53
51
48
46
43
41
39
36
34
33
31
29
28
26
25
23
22
21
20
19
18
16
15
14
13
12
10
9
7
6
4
3
1
0
-2
-4
-6
-7
-9
-11
-12
-14
-16
-18
-19
-21
-23
-24
-25
-26
-27
-28
-29
-30
-30
-31
-32
-32
-33
-33
-33
-34
-34
-34
-34
-34
-34
-34
-33
-33
-33
-32
-32
-31
-31
-30
-29
-28
-27
-26
-25
-24
-23
-22
-21
-20
-18
-17
-16
-14
-13
-12
-10
-9
-8
-6
-5
-4
-2
-1
1
2
3
4
6
7
8
9
10
11
13
13
14
15
16
16
17
18
18
18
18
19
19
19
19
18
18
18
18
18
18
17
17
17
16
16
16
15
15
15
15
14
14
14
14
14
14
14
14
14
14
15
15
15
16
16
17
17
18
19
20
21
22
23
24
25
27
29
30
32
34
36
38
40
42
44
46
49
51
53
55
57
59
61
63
64
66
68
69
71
72
73
73
74
74
75
74
74
73
73
71
70
68
66
64
61
59
56
53
50
47
43
40
36
32
29
25
21
17
13
9
5
1
-3
-7
-11
-15
-19
-22
-26
-29
-32
-36
-39
-42
-45
-48
-51
-54
-56
-59
-62
-64
-67
-69
-72
-74
-76
-79
-81
-83
-85
-87
-90
-92
-94
-96
-98
-101
-103
-105
-107
-109
-111
-112
-114
-116
-117
-119
-120
-121
-123
-124
-125
-126
-126
-127
-127
-128
-128
-128
-128
-128
-128
-128
-128
-127
-127
-126
-125
-125
-124
-123
-121
-120
-119
-118
-117
-116
-116
-115
-114
-113
-113
-112
-112
-111
-111
-110
-110
-109
-109
-108
-108
-108
-107
-107
-106
-106
-106
-105
-105
-105
-104
-104
-104
-104
-104
-103
-103
-103
-103
-103
-103
-102
-102
-102
-102
-101
-101
-101
-101
-102
-102
-102
-102
-102
-102
-102
-103
-103
-103
-104
-104
-105
-105
-106
-106
-107
-107
-108
-109
-110
-111
-112
-113
-114
-116
-117
-119
-120
-121
-123
-124
-126
-127
-129
-130
-132
-133
-134
-135
-136
-137
-138
-139
-140
-140
-140
-140
-140
-140
-139
-138
-137
-136
-134
-132
-130
-128
-125
-123
-119
-116
-113
-109
-106
-102
-97
-93
-89
-85
-80
-76
-72
-67
-63
-58
-54
-50
-46
-42
-38
-34
-30
-27
-23
-20
-17
-14
-11
-8
-5
-3
0
2
4
6
8
9
11
12
13
14
15
16
17
18
19
20
21
22
22
23
24
25
26
28
29
31
32
34
36
38
40
42
44
46
48
51
53
55
58
60
63
66
68
71
74
77
80
83
87
90
94
97
101
104
108
111
115
118
121
125
128
131
134
137
139
142
144
146
148
150
151
153
154
154
155
155
155
155
155
154
154
153
152
150
149
148
147
145
144
143
141
140
138
137
135
134
132
130
128
126
124
123
120
118
116
114
112
110
107
105
102
100
97
95
92
90
87
84
82
79
76
73
71
68
65
63
60
57
55
52
49
47
44
42
39
37
35
32
30
28
26
24
21
19
16
14
12
9
6
4
1
-2
-4
-7
-10
-13
-16
-19
-22
-25
-28
-31
-34
-38
-41
-44
-47
-49
-52
-55
-58
-60
-62
-64
-66
-68
-70
-71
-72
-73
-74
-75
-76
-76
-76
-76
-76
-75
-75
-74
-73
-71
-70
-69
-67
-66
-64
-63
-61
-59
-58
-56
-54
-53
-51
-50
-48
-47
-46
-44
-43
-42
-40
-39
-38
-36
-35
-34
-33
-32
-31
-31
-30
-29
-29
-29
-28
-28
-28
-29
-29
-30
-31
-31
-32
-33
-34
-36
-37
-38
-40
-42
-44
-46
-48
-50
-52
-55
-57
-59
-61
-63
-65
-67
-69
-71
-73
-75
-76
-77
-79
-80
-81
-82
-82
-83
-84
-84
-85
-86
-86
-87
-87
-88
-88
-88
-89
-89
-90
-90
-90
-90
-91
-91
-91
-91
-91
-91
-91
-91
-92
-92
-92
-92
-92
-92
-92
-93
-93
-93
-93
-93
-93
-94
-94
-94
-94
-94
-94
-94
-94
-94
-95
-95
-94
-94
-94
-94
-94
-94
-94
-93
-93
-93
-92
-92
-91
-90
-90
-89
-88
-87
-86
-86
-85
-84
-83
-83
-82
-81
-80
-79
-78
-77
-76
-74
-73
-71
-69
-68
-66
-64
-62
-60
-58
-55
-53
-50
-48
-45
-42
-39
-36
-33
-30
-27
-24
-21
-18
-14
-11
-8
-4
-1
2
5
9
12
15
18
21
24
26
29
32
34
37
39
41
43
45
47
48
49
50
51
52
53
53
54
54
54
54
55
55
55
55
54
54
54
55
55
55
56
56
57
58
60
61
63
65
67
69
71
74
77
80
83
86
89
92
95
98
102
105
109
112
116
119
123
126
130
133
136
139
142
145
147
150
152
154
157
159
160
162
164
165
166
167
168
169
170
170
171
171
172
172
172
172
173
173
173
173
174
174
174
174
174
175
175
175
175
175
175
175
175
175
175
175
175
175
175
175
174
174
174
174
174
174
173
173
172
171
171
170
169
169
168
167
166
165
164
163
162
161
159
158
157
156
154
154
153
152
151
150
150
149
149
149
149
149
148
148
148
148
148
148
148
148
148
148
148
148
148
147
147
146
146
145
144
144
143
142
140
139
138
136
134
133
131
128
126
124
122
119
116
114
111
109
106
103
101
98
95
93
90
87
85
82
79
77
74
72
69
66
64
62
60
57
55
53
51
49
47
45
43
41
38
36
35
33
31
29
27
25
23
22
20
18
16
14
12
10
8
6
4
2
0
-2
-4
-6
-8
-10
-12
-14
-16
-19
-21
-23
-26
-28
-31
-34
-36
-39
-43
-46
-49
-53
-56
-60
-64
-68
-72
-75
-79
-83
-88
-92
-96
-100
-105
-109
-113
-117
-120
-124
-128
-131
-134
-138
-141
-144
-147
-150
-153
-155
-158
-161
-163
-165
-167
-169
-171
-173
-175
-177
-179
-180
-182
-184
-185
-186
-187
-188
-189
-190
-191
-192
-193
-193
-194
-194
-195
-195
-196
-196
-196
-197
-197
-197
-197
-198
-198
-198
-199
-199
-200
-200
-201
-202
-203
-204
-206
-207
-209
-210
-212
-213
-215
-217
-218
-220
-222
-223
-225
-227
-228
-230
-231
-233
-235
-236
-238
-239
-241
-242
-243
-245
-246
-248
-249
-250
-251
-252
-252
-253
-254
-255
-255
-255
-255
-255
-255
-255
-254
-254
-253
-252
-251
-250
-249
-247
-246
-244
-243
-241
-239
-237
-235
-232
-230
-227
-224
-221
-218
-215
-211
-208
-205
-201
-198
-194
-191
-188
-184
-181
-177
-174
-171
-168
-165
-162
-159
-156
-153
-151
-148
-146
-143
-141
-139
-136
-134
-132
-130
-128
-126
-124
-122
-120
-117
-115
-113
-110
-108
-105
-102
-99
-96
-92
-89
-86
-82
-78
-75
-71
-67
-62
-58
-54
-49
-45
-40
-35
-30
-25
-20
-14
-9
-4
2
7
13
18
23
29
34
40
45
50
56
61
66
72
77
82
87
92
97
102
107
111
116
120
125
129
133
138
141
145
149
153
157
160
164
167
171
174
177
181
184
187
190
193
196
198
200
203
205
207
209
211
212
214
215
216
218
218
219
220
220
220
220
220
220
220
219
219
218
218
217
216
216
215
214
214
213
212
212
211
210
210
209
208
208
207
206
206
205
205
204
203
203
202
201
201
200
199
199
198
197
197
196
195
194
192
191
190
189
188
186
185
184
182
181
179
177
175
173
171
169
167
165
163
161
158
156
154
152
149
147
146
144
142
140
139
138
136
135
134
133
133
132
132
131
131
131
131
130
130
130
130
130
130
130
130
130
129
129
129
128
128
128
127
126
126
125
124
123
122
121
119
118
116
115
113
111
109
107
104
102
100
97
94
92
89
87
84
82
79
76
74
71
68
65
62
60
57
54
51
49
46
44
41
38
36
33
30
28
25
22
20
17
15
12
10
7
5
3
1
-2
-4
-6
-7
-9
-11
-13
-14
-16
-18
-19
-20
-22
-23
-24
-25
-26
-27
-28
-29
-30
-32
-33
-34
-35
-36
-37
-39
-40
-41
-43
-44
-45
-47
-48
-49
-50
-51
-52
-52
-53
-54
-55
-55
-56
-56
-56
-57
-57
-57
-57
-58
-58
-58
-58
-58
-58
-57
-57
-56
-56
-56
-55
-55
-54
-54
-53
-53
-52
-52
-51
-50
-49
-49
-48
-47
-45
-44
-43
-42
-40
-39
-37
-35
-33
-31
-30
-28
-26
-24
-22
-20
-18
-17
-15
-13
-11
-9
-8
-6
-4
-3
-1
0
2
3
5
6
8
9
10
12
13
14
15
16
17
18
19
20
21
21
22
23
24
24
25
26
26
27
27
27
28
28
28
28
29
29
29
29
29
28
28
28
28
28
28
27
27
26
26
25
25
24
23
22
21
20
19
17
16
14
13
11
9
8
6
4
3
1
-1
-2
-4
-6
-7
-9
-11
-12
-14
-15
-17
-19
-20
-22
-24
-25
-27
-29
-30
-32
-34
-35
-37
-38
-40
-41
-43
-45
-46
-47
-49
-50
-52
-53
-54
-55
-56
-57
-58
-59
-59
-59
-60
-60
-60
-60
-60
-60
-60
-60
-59
-58
-58
-57
-56
-55
-54
-53
-52
-51
-51
-50
-50
-49
-49
-49
-49
-49
-49
-49
-49
-49
-50
-50
-51
-52
-52
-53
-54
-55
-56
-56
-57
-58
-59
-60
-60
-61
-62
-62
-63
-64
-64
-65
-65
-66
-67
-67
-68
-68
-68
-68
-69
-69
-69
-69
-69
-70
-70
-70
-70
-70
-71
-71
-71
-72
-72
-73
-73
-74
-74
-75
-75
-76
-76
-77
-78
-79
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-101
-102
-103
-104
-105
-106
-107
-108
-108
-109
-110
-111
-112
-112
-113
-114
-115
-115
-116
-117
-117
-118
-119
-119
-120
-121
-121
-122
-122
-123
-123
-124
-124
-124
-125
-125
-125
-125
-126
-126
-126
-126
-126
-125
-125
-124
-124
-123
-122
-121
-120
-119
-118
-117
-116
-115
-113
-112
-111
-109
-108
-106
-105
-103
-101
-100
-98
-97
-95
-93
-92
-90
-89
-87
-86
-84
-83
-81
-80
-79
-77
-76
-75
-74
-73
-73
-72
-72
-71
-71
-71
-70
-70
-69
-69
-69
-68
-68
-68
-67
-67
-67
-66
-65
-64
-64
-63
-62
-60
-59
-58
-56
-55
-54
-52
-50
-48
-47
-45
-43
-41
-39
-37
-34
-32
-30
-28
-26
-23
-21
-19
-17
-15
-13
-11
-9
-7
-4
-3
-1
1
3
5
6
8
9
11
12
14
15
16
17
18
19
20
21
21
22
23
23
24
24
25
25
25
26
26
26
26
27
27
27
28
28
28
28
28
28
28
28
29
29
29
29
29
29
29
30
30
30
30
31
31
31
32
32
32
33
33
33
34
34
34
35
36
36
37
38
39
40
41
43
44
45
47
48
50
51
53
54
56
58
60
62
64
66
68
70
72
74
76
78
80
83
85
87
89
91
93
94
96
98
100
101
103
105
106
107
109
110
111
113
114
115
116
117
118
119
120
121
121
122
123
123
124
124
125
125
126
126
126
127
127
127
127
127
127
127
127
127
127
126
126
126
125
125
125
125
125
125
125
124
124
124
124
124
124
124
123
123
123
123
122
122
121
121
120
120
119
119
118
117
116
116
115
114
113
112
111
110
109
108
106
105
104
103
102
101
101
100
99
98
97
97
96
95
94
94
93
92
92
91
91
90
90
89
89
89
88
88
87
87
87
86
86
85
85
84
84
83
83
82
81
80
79
79
78
77
76
75
73
72
71
69
68
66
65
63
61
60
58
56
54
52
51
49
47
45
43
41
40
38
36
35
33
31
30
28
27
25
23
22
21
19
18
16
15
14
12
11
9
8
6
5
3
2
0
-2
-3
-5
-6
-8
-9
-11
-12
-14
-15
-17
-18
-19
-20
-21
-22
-23
-24
-24
-25
-26
-26
-27
-28
-28
-29
-29
-29
-30
-30
-30
-30
-30
-30
-30
-31
-31
-31
-31
-31
-31
-31
-31
-31
-31
-30
-30
-29
-29
-28
-28
-27
-26
-26
-25
-24
-23
-22
-21
-20
-18
-17
-16
-14
-13
-11
-9
-8
-6
-4
-2
0
2
4
6
8
10
12
14
17
19
21
23
25
27
30
32
34
36
38
40
42
44
46
49
51
53
55
58
60
62
64
67
69
71
73
75
77
79
81
83
85
86
88
90
91
93
94
95
96
97
98
99
100
101
101
102
102
103
103
104
104
104
104
105
105
105
105
105
105
104
104
104
103
103
102
102
101
100
100
99
98
97
96
94
93
92
90
89
87
86
84
82
80
78
76
75
72
70
68
66
64
62
60
57
55
52
50
47
45
42
39
37
34
31
29
26
23
20
17
14
12
9
6
3
0
-3
-6
-9
-12
-15
-18
-21
-24
-27
-30
-33
-37
-40
-43
-46
-49
-53
-56
-59
-62
-65
-68
-71
-73
-76
-79
-82
-85
-89
-92
-95
-98
-102
-105
-109
-113
-116
-120
-123
-127
-130
-134
-137
-141
-144
-148
-151
-155
-158
-162
-165
-168
-171
-175
-178
-181
-184
-187
-190
-193
-196
-199
-201
-204
-206
-209
-211
-213
-215
-218
-220
-222
-223
-225
-227
-228
-230
-231
-233
-234
-235
-236
-237
-237
-238
-238
-239
-239
-239
-239
-239
-239
-238
-238
-237
-236
-235
-234
-233
-232
-231
-229
-228
-226
-225
-223
-222
-221
-219
-218
-217
-216
-214
-213
-212
-210
-209
-207
-206
-204
-203
-201
-200
-198
-196
-194
-192
-190
-188
-185
-183
-180
-177
-175
-172
-169
-166
-162
-159
-156
-153
-149
-146
-143
-139
-136
-133
-129
-126
-123
-119
-115
-112
-108
-104
-100
-97
-93
-89
-86
-82
-79
-75
-72
-69
-66
-62
-59
-56
-53
-51
-48
-45
-42
-40
-37
-35
-33
-31
-28
-26
-24
-22
-20
-18
-16
-14
-13
-12
-10
-9
-8
-7
-6
-4
-3
-2
-1
0
2
2
3
4
5
6
7
8
9
10
11
12
13
14
14
15
16
17
18
19
20
21
22
23
23
24
25
26
27
28
29
30
31
32
32
33
33
33
33
33
33
33
33
32
32
32
31
31
30
29
28
28
27
26
25
24
23
22
21
19
18
17
16
14
13
12
11
9
8
7
6
4
3
2
1
0
-2
-3
-4
-5
-6
-7
-8
-9
-10
-12
-13
-14
-15
-16
-18
-19
-21
-22
-23
-25
-26
-27
-29
-30
-32
-33
-34
-36
-37
-39
-40
-41
-43
-44
-45
-47
-48
-49
-50
-52
-53
-54
-55
-56
-57
-58
-58
-59
-59
-59
-59
-59
-59
-59
-58
-58
-57
-56
-55
-53
-52
-51
-49
-47
-45
-43
-41
-39
-37
-34
-32
-29
-26
-24
-21
-18
-15
-13
-10
-7
-4
-1
2
5
7
10
13
16
19
22
26
29
32
35
38
42
45
48
51
54
57
60
62
65
68
71
73
76
78
80
82
84
86
88
89
91
92
94
95
96
97
97
98
98
98
98
99
99
99
99
99
99
99
99
99
99
98
98
98
98
97
97
97
97
97
97
96
96
95
95
94
94
93
93
92
91
90
90
89
88
87
86
85
84
84
83
83
82
82
82
81
81
80
80
80
79
79
79
78
78
78
77
77
77
76
76
75
75
75
75
74
74
73
73
73
72
72
72
71
71
71
70
70
70
69
69
69
68
68
68
67
67
67
66
66
66
65
65
65
64
64
64
63
63
63
62
62
62
61
61
61
60
60
60
60
59
59
59
58
58
58
57
57
57
56
56
56
56
55
55
55
54
54
54
53
53
53
52
52
52
52
51
51
51
51
50
50
50
49
49
49
49
48
48
48
47
47
47
47
46
46
46
45
45
45
45
44
44
44
43
43
43
43
42
42
42
42
41
41
41
41
40
40
40
40
39
39
39
39
38
38
38
38
37
37
37
37
36
36
36
36
35
35
35
35
34
34
34
34
33
33
33
33
32
32
32
32
32
31
31
31
31
30
30
30
30
30
29
29
29
29
28
28
28
28
28
27
27
27
27
26
26
26
26
26
25
25
25
25
25
24
24
24
24
24
23
23
23
23
23
23
22
22
22
22
22
21
21
21
21
21
20
20
20
20
20
20
19
19
19
19
19
18
18
18
18
18
18
17
17
17
17
17
16
16
16
16
16
16
15
15
15
15
15
15
14
14
14
14
14
14
14
13
13
13
13
13
13
13
12
12
12
12
12
12
11
11
11
11
11
11
11
10
10
10
10
10
10
10
9
9
9
9
9
9
9
9
8
8
8
8
8
8
8
7
7
7
7
7
7
7
7
7
6
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-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
-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
-6
-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
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-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
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-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
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
