5
1546
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-2
-1
-1
-1
-1
-1
-1
-1
-2
-1
-1
-1
-1
-1
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-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
-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
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
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
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
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
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
-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
-3
-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
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-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
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
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
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
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
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
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
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
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
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
-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
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-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
-4
-4
-4
-4
-4
-4
-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
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-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
1
1
1
1
1
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
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
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
-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
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-3
-3
-3
-4
-4
-4
-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
-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
-3
-3
-3
-3
-4
-4
-4
-4
-4
-4
-4
-4
-4
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-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
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
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
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
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
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
4
4
4
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
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
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
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-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
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-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
1
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
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
3
3
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
3
3
3
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
3
3
3
4
4
4
4
3
3
3
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
1
1
1
1
1
1
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-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
-2
-2
-2
-2
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-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
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
0
0
0
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
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
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-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
-2
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-4
-4
-4
-4
-4
-4
-3
-3
-3
-3
-3
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-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
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
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
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
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
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
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-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
0
0
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
0
0
-1
-1
-1
0
0
0
-1
-1
-1
-1
0
0
0
-1
-1
-1
-1
-1
-1
-1
-1
-1
0
0
0
0
-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
-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
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
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
4
4
4
4
4
4
4
4
4
4
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
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
-1
-1
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-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
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
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
1
2
2
2
2
2
2
2
2
2
2
2
2
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
2
2
2
2
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
1
1
1
1
1
1
1
1
0
0
0
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
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-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
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-1
-2
-2
-2
-2
-2
-2
-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
-3
-3
-2
-2
-2
-2
-3
-3
-3
-3
-3
-3
-2
-2
-2
-2
-3
-3
-3
-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
-2
-2
-3
-3
-3
-3
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-1
-1
-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
0
0
0
-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
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
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
3
3
3
3
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
4
4
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
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
3
3
3
3
3
4
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
2
2
2
2
3
3
3
3
3
2
2
2
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
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
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
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
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
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
10
10
10
10
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
12
12
12
12
11
11
11
11
12
12
12
12
12
12
12
11
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
11
11
11
12
12
12
12
12
11
11
11
12
12
12
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
8
8
8
8
8
8
8
8
8
8
8
8
8
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
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
4
4
5
5
5
4
4
4
5
5
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
3
3
3
3
4
3
3
3
3
3
3
3
3
2
3
2
2
0
-3
-7
-14
-23
-36
-53
-73
-93
-112
-129
-140
-144
-139
-125
-106
-83
-62
-44
-33
-29
-32
-41
-52
-61
-66
-69
-70
-70
-68
-63
-54
-43
-31
-21
-11
-4
-1
-4
-14
-29
-43
-50
-50
-45
-41
-43
-53
-67
-82
-93
-99
-101
-101
-103
-108
-118
-131
-142
-149
-151
-147
-142
-136
-132
-131
-136
-146
-163
-184
-210
-237
-268
-301
-340
-385
-434
-484
-530
-567
-592
-607
-613
-619
-628
-642
-659
-675
-686
-690
-690
-689
-693
-707
-733
-768
-810
-853
-893
-929
-961
-988
-1006
-1010
-997
-959
-895
-808
-705
-595
-486
-382
-284
-187
-90
1
78
128
143
124
76
7
-74
-159
-235
-292
-319
-313
-282
-240
-207
-198
-222
-275
-342
-402
-432
-423
-382
-333
-300
-301
-335
-382
-414
-400
-327
-198
-35
125
249
320
344
345
352
383
439
511
591
669
739
785
785
727
612
463
315
192
101
29
-41
-123
-213
-299
-367
-412
-439
-459
-486
-524
-564
-583
-557
-475
-348
-203
-73
22
82
128
188
278
402
543
669
751
766
719
630
530
445
383
338
299
257
213
165
107
33
-59
-159
-249
-315
-355
-376
-392
-407
-415
-407
-378
-326
-259
-182
-99
-12
79
171
265
359
450
531
593
630
635
610
558
485
402
325
268
237
232
244
264
286
310
329
337
324
285
228
166
114
77
53
35
23
23
47
102
184
278
364
423
444
428
385
331
282
250
237
244
265
289
306
310
301
288
281
284
295
303
303
296
292
296
303
301
277
236
196
182
211
280
371
461
535
585
609
607
577
520
442
356
275
206
150
105
63
18
-39
-112
-201
-294
-369
-405
-389
-328
-245
-171
-127
-117
-128
-141
-138
-115
-72
-16
47
112
172
218
241
240
214
172
121
71
29
3
-4
4
23
47
72
97
115
115
85
21
-62
-139
-184
-189
-163
-128
-104
-93
-88
-80
-66
-49
-30
-4
39
101
179
260
333
396
452
504
545
568
564
536
492
445
402
360
311
251
181
106
36
-28
-86
-145
-207
-274
-340
-397
-437
-452
-436
-386
-307
-208
-108
-21
45
91
124
154
182
211
238
265
289
308
317
313
305
301
307
319
320
300
257
205
160
131
117
107
94
80
69
60
49
29
5
-17
-32
-45
-67
-109
-167
-228
-273
-292
-287
-263
-222
-164
-90
-11
54
91
96
81
61
45
31
11
-19
-61
-108
-158
-206
-252
-291
-315
-321
-307
-277
-240
-204
-176
-159
-150
-146
-139
-127
-113
-102
-101
-108
-115
-115
-104
-89
-82
-92
-120
-158
-195
-222
-238
-247
-254
-261
-265
-261
-247
-227
-207
-192
-181
-164
-133
-80
-10
69
147
218
284
346
403
448
476
482
466
434
391
345
302
268
243
225
206
176
132
75
9
-60
-127
-184
-223
-239
-237
-225
-216
-216
-217
-204
-160
-84
12
107
186
248
297
342
384
417
435
435
421
397
364
316
250
164
69
-21
-92
-136
-155
-159
-158
-162
-169
-175
-174
-164
-147
-132
-123
-120
-118
-107
-80
-37
18
75
130
178
215
239
246
233
202
158
107
55
5
-41
-76
-97
-97
-80
-54
-30
-14
-6
2
19
49
87
127
156
168
155
121
72
22
-14
-26
-17
4
23
35
39
38
32
14
-23
-78
-138
-182
-195
-172
-119
-49
23
89
143
181
205
217
221
216
202
174
135
94
62
47
49
58
69
77
89
111
141
174
201
218
227
230
227
212
183
141
93
48
13
-13
-33
-52
-71
-89
-105
-117
-125
-123
-100
-52
22
115
211
291
343
361
348
309
254
190
122
59
5
-36
-67
-92
-115
-134
-142
-134
-109
-72
-36
-10
5
12
11
3
-14
-36
-57
-67
-66
-61
-62
-76
-95
-109
-109
-93
-66
-27
28
109
214
327
422
475
481
451
407
365
331
299
260
210
151
92
41
6
-10
-13
-10
-9
-14
-24
-33
-37
-35
-27
-10
19
60
113
169
221
268
312
357
403
440
460
460
446
427
411
395
376
349
316
281
245
205
158
102
43
-14
-65
-111
-156
-199
-234
-256
-264
-265
-268
-274
-274
-253
-198
-110
-3
102
192
262
318
363
392
400
377
327
257
181
107
40
-22
-73
-107
-114
-89
-36
30
95
148
188
215
229
228
204
156
96
46
27
48
100
165
222
266
303
343
387
426
448
446
430
415
407
400
377
323
241
147
68
19
2
8
20
29
30
24
18
18
30
60
105
158
209
250
278
294
300
297
286
269
252
243
244
249
246
223
180
124
73
39
28
32
39
43
44
53
76
113
150
170
163
133
96
71
67
79
94
100
91
70
43
14
-15
-41
-61
-68
-56
-29
5
35
49
48
42
48
81
144
222
294
338
344
317
275
233
205
197
213
253
314
388
460
518
556
576
586
590
586
565
515
433
324
204
96
21
-8
8
54
109
157
191
215
235
256
274
283
278
264
247
233
224
216
203
180
146
103
56
12
-25
-56
-86
-120
-163
-209
-251
-286
-313
-339
-370
-409
-448
-480
-501
-513
-527
-554
-598
-655
-715
-765
-800
-819
-829
-835
-839
-840
-834
-824
-809
-792
-770
-741
-710
-690
-694
-732
-795
-865
-918
-943
-940
-917
-876
-814
-721
-599
-461
-329
-222
-145
-91
-46
-1
46
91
134
174
217
267
329
405
490
574
645
691
706
691
646
577
486
384
285
206
161
150
166
196
225
246
256
257
255
258
272
297
323
336
324
286
230
172
124
91
69
51
32
11
-12
-35
-58
-83
-112
-148
-192
-240
-286
-329
-370
-416
-465
-507
-521
-487
-398
-263
-103
59
207
333
428
482
488
444
358
248
131
18
-90
-200
-322
-467
-638
-832
-1032
-1219
-1374
-1482
-1539
-1546
-1506
-1426
-1318
-1199
-1083
-979
-886
-802
-734
-694
-697
-740
-805
-860
-884
-872
-840
-803
-771
-742
-707
-662
-609
-549
-483
-411
-338
-273
-230
-217
-232
-264
-302
-337
-365
-388
-404
-414
-422
-431
-444
-463
-489
-526
-579
-652
-739
-827
-902
-957
-996
-1026
-1051
-1065
-1054
-1010
-940
-856
-777
-712
-664
-624
-587
-554
-531
-526
-549
-604
-689
-799
-923
-1049
-1166
-1262
-1322
-1332
-1277
-1153
-966
-732
-473
-207
55
310
556
784
982
1139
1247
1302
1304
1254
1157
1020
862
695
534
384
250
135
46
-11
-37
-42
-44
-56
-81
-111
-136
-149
-149
-135
-103
-43
45
148
238
280
253
155
1
-184
-379
-563
-722
-839
-902
-902
-847
-753
-641
-529
-428
-340
-266
-205
-160
-134
-129
-142
-167
-198
-229
-258
-284
-309
-339
-378
-429
-493
-563
-630
-677
-692
-670
-613
-529
-431
-329
-235
-156
-102
-75
-77
-102
-144
-196
-255
-319
-381
-436
-478
-506
-525
-544
-570
-609
-661
-725
-796
-867
-923
-947
-922
-835
-684
-482
-247
-2
234
451
645
821
982
1127
1251
1344
1398
1414
1395
1353
1296
1228
1148
1052
936
804
664
531
413
313
225
138
43
-63
-177
-292
-399
-498
-587
-666
-726
-753
-733
-661
-541
-388
-219
-50
108
250
371
467
531
566
580
582
584
585
582
567
537
494
440
374
294
198
88
-32
-158
-288
-420
-546
-649
-709
-714
-665
-574
-457
-326
-187
-46
90
212
318
409
492
567
627
662
663
634
581
514
435
345
248
157
85
37
10
-10
-31
-54
-71
-73
-55
-16
38
103
175
249
317
380
435
487
533
567
584
578
553
513
461
399
328
253
183
129
92
67
45
19
-10
-40
-72
-104
-135
-160
-168
-152
-113
-58
7
76
154
240
331
417
488
537
563
568
555
525
479
419
350
280
221
187
191
246
352
500
671
846
1008
1153
1274
1368
1435
1472
1480
1464
1428
1373
1302
1217
1121
1018
915
814
721
639
570
511
452
386
310
226
142
66
3
-45
-79
-97
-102
-95
-78
-55
-26
7
38
64
80
87
92
102
121
143
161
168
164
154
140
123
103
79
54
34
20
9
-4
-22
-43
-62
-73
-75
-69
-59
-46
-30
-7
27
74
133
199
262
316
355
383
403
419
431
435
427
410
391
377
375
390
421
464
514
564
609
645
669
682
683
666
627
564
485
397
312
236
175
135
126
150
205
273
333
366
367
341
296
245
196
157
137
141
171
220
280
349
428
521
623
723
805
857
874
859
815
741
634
495
330
152
-24
-185
-323
-433
-513
-563
-585
-586
-570
-541
-500
-446
-377
-295
-201
-101
-1
96
186
271
353
434
508
569
605
610
581
520
431
319
192
65
-44
-119
-152
-147
-111
-58
7
78
153
228
299
367
433
497
557
605
632
633
613
581
547
512
474
425
363
287
202
110
13
-92
-203
-318
-434
-544
-646
-735
-805
-849
-859
-833
-772
-683
-576
-460
-342
-228
-121
-26
54
119
169
208
238
261
278
287
285
268
236
192
146
107
86
84
89
88
65
16
-54
-132
-205
-268
-322
-370
-414
-447
-462
-451
-414
-356
-290
-227
-177
-143
-129
-131
-147
-169
-190
-201
-200
-189
-177
-170
-173
-186
-203
-218
-226
-226
-221
-216
-214
-218
-227
-235
-240
-240
-239
-240
-245
-250
-246
-230
-202
-173
-159
-169
-206
-260
-317
-365
-394
-404
-398
-382
-367
-364
-380
-420
-478
-543
-600
-641
-659
-655
-635
-603
-560
-502
-423
-322
-207
-97
-9
42
56
45
22
-3
-29
-58
-94
-134
-175
-214
-255
-300
-346
-390
-428
-460
-489
-520
-550
-569
-572
-556
-531
-507
-490
-478
-462
-439
-406
-366
-319
-261
-188
-99
-1
96
187
265
328
372
392
389
368
344
327
322
324
324
319
308
296
285
274
260
243
224
203
178
143
96
43
-5
-36
-47
-45
-44
-55
-79
-107
-128
-131
-115
-85
-52
-22
0
18
36
60
87
114
133
142
139
128
113
103
104
124
169
240
336
448
566
679
778
852
896
909
899
875
848
820
788
749
702
651
605
567
534
495
444
377
296
211
131
63
11
-26
-55
-80
-104
-122
-124
-104
-65
-16
31
70
101
130
159
187
209
224
236
252
273
297
317
326
324
315
304
293
283
275
272
276
287
304
319
325
320
301
270
230
186
143
104
73
50
37
39
57
91
134
178
218
253
288
328
370
409
440
459
469
472
469
457
437
412
389
374
370
373
378
381
382
379
367
343
303
249
186
121
58
1
-48
-87
-116
-138
-158
-184
-217
-254
-289
-317
-339
-355
-369
-379
-381
-376
-366
-357
-355
-363
-378
-392
-401
-406
-408
-414
-424
-438
-453
-465
-473
-476
-475
-472
-467
-459
-448
-438
-432
-433
-443
-460
-479
-499
-521
-550
-588
-635
-685
-730
-766
-792
-811
-829
-849
-869
-882
-881
-862
-823
-773
-719
-669
-627
-595
-569
-547
-529
-518
-520
-539
-578
-632
-693
-749
-790
-808
-803
-777
-737
-689
-640
-593
-553
-520
-496
-478
-465
-452
-437
-417
-392
-361
-326
-291
-258
-231
-208
-184
-156
-120
-79
-36
4
36
59
69
67
54
35
18
8
7
9
5
-10
-34
-62
-89
-114
-139
-163
-187
-206
-221
-235
-255
-285
-322
-358
-387
-408
-421
-431
-438
-436
-418
-379
-319
-245
-166
-93
-34
5
27
38
51
73
108
154
201
242
272
289
293
283
261
229
193
157
126
100
80
63
49
39
34
38
53
82
126
184
251
323
394
460
514
556
584
596
593
576
548
513
476
442
411
386
369
361
367
387
417
446
464
462
441
407
368
325
280
230
180
134
100
79
64
51
36
23
20
32
59
95
131
160
177
181
173
154
124
87
45
2
-40
-78
-108
-128
-136
-128
-108
-82
-56
-36
-21
-5
18
49
79
99
100
86
68
56
53
52
41
17
-15
-43
-59
-63
-62
-63
-66
-64
-54
-35
-13
7
25
44
65
85
101
109
111
115
127
150
180
213
248
280
309
335
363
397
441
491
534
555
541
491
414
327
244
176
130
104
95
95
93
85
68
48
27
11
-3
-13
-22
-30
-37
-48
-64
-83
-99
-106
-104
-97
-89
-83
-77
-68
-58
-54
-60
-79
-108
-145
-187
-236
-289
-341
-382
-409
-422
-427
-431
-433
-434
-431
-429
-431
-442
-457
-470
-475
-471
-463
-455
-452
-455
-464
-479
-501
-527
-554
-578
-596
-609
-618
-619
-612
-597
-576
-554
-533
-515
-503
-498
-498
-501
-500
-485
-454
-410
-360
-310
-264
-220
-177
-138
-103
-75
-50
-24
4
28
41
39
27
13
3
0
1
5
12
26
46
70
92
107
112
105
90
70
52
41
43
56
75
90
92
80
55
23
-14
-53
-89
-117
-131
-124
-99
-62
-24
5
17
14
1
-12
-16
-8
13
43
77
113
148
182
213
238
257
268
273
271
262
244
218
188
159
138
127
124
123
120
112
100
90
87
96
117
148
185
223
259
292
321
345
361
373
381
388
393
391
377
348
304
249
186
122
60
7
-31
-54
-61
-59
-50
-35
-11
23
64
107
146
179
207
232
255
271
278
275
266
257
251
254
267
296
339
394
451
500
532
545
542
529
515
501
489
478
464
447
426
402
379
361
348
340
333
324
311
296
279
262
245
233
229
234
248
267
289
309
326
339
347
351
353
356
364
377
392
401
400
386
365
340
313
286
256
223
189
155
123
92
63
37
18
6
0
-1
-2
-6
-12
-20
-27
-33
-38
-40
-39
-35
-29
-21
-11
-1
12
28
47
70
93
113
128
135
134
129
122
119
119
123
124
119
106
87
68
57
55
61
69
75
77
78
78
77
71
58
36
7
-23
-54
-82
-109
-137
-163
-187
-206
-218
-224
-224
-220
-216
-216
-222
-235
-251
-269
-287
-305
-326
-349
-374
-398
-420
-438
-451
-460
-464
-460
-449
-432
-412
-393
-378
-367
-362
-365
-377
-395
-416
-432
-440
-440
-436
-430
-423
-412
-393
-366
-338
-316
-308
-316
-337
-364
-391
-417
-443
-473
-511
-557
-609
-661
-707
-743
-766
-780
-790
-800
-812
-824
-831
-829
-816
-791
-756
-713
-665
-616
-569
-524
-484
-448
-416
-389
-370
-360
-358
-364
-376
-391
-408
-423
-435
-443
-450
-456
-464
-475
-487
-501
-513
-521
-524
-519
-504
-483
-458
-434
-417
-408
-406
-408
-410
-411
-410
-410
-410
-411
-412
-410
-407
-402
-399
-400
-406
-418
-436
-458
-480
-501
-518
-528
-531
-528
-517
-499
-471
-430
-377
-314
-249
-190
-146
-118
-102
-94
-88
-81
-72
-62
-51
-41
-33
-31
-36
-48
-65
-80
-89
-91
-89
-87
-91
-102
-118
-135
-150
-161
-169
-178
-187
-197
-205
-206
-203
-196
-190
-185
-183
-183
-182
-183
-187
-197
-211
-230
-251
-274
-298
-324
-349
-370
-382
-385
-378
-364
-345
-324
-297
-265
-226
-183
-137
-94
-55
-25
-6
1
-3
-14
-23
-24
-13
6
29
47
58
61
58
54
50
49
52
61
77
101
131
164
198
231
258
279
294
303
313
326
345
366
386
400
408
411
412
412
411
408
404
400
396
393
388
380
367
349
328
304
279
253
229
210
198
194
199
208
220
228
231
225
211
191
169
152
141
140
148
161
176
192
207
221
234
247
259
270
280
290
301
315
333
354
379
404
430
453
471
482
486
485
479
472
467
466
470
481
495
510
522
526
525
520
519
525
539
557
576
594
613
638
673
717
767
814
853
879
890
888
877
860
844
832
826
824
822
816
802
783
761
739
718
698
678
660
642
625
609
594
580
566
551
534
514
490
465
440
416
394
372
350
328
305
281
256
228
198
166
135
105
79
58
42
30
20
10
1
-4
-5
-2
2
2
-3
-10
-15
-15
-13
-13
-17
-24
-31
-34
-32
-27
-18
-7
9
27
47
66
83
102
126
154
184
211
230
242
248
250
249
245
242
243
253
269
287
302
311
314
313
308
299
287
274
266
266
278
299
327
356
382
404
419
428
433
434
431
422
408
390
373
359
346
332
313
288
258
229
203
184
171
166
168
177
191
207
219
226
227
225
218
207
191
174
157
147
144
147
153
156
156
152
144
134
123
112
103
98
96
97
96
89
75
52
24
-6
-35
-64
-93
-122
-149
-173
-193
-210
-222
-231
-236
-235
-231
-225
-223
-226
-237
-256
-281
-312
-347
-382
-412
-434
-447
-449
-442
-429
-411
-392
-377
-367
-363
-361
-355
-342
-322
-295
-266
-238
-211
-186
-165
-147
-130
-112
-94
-77
-62
-53
-46
-41
-34
-26
-19
-14
-11
-8
-3
5
16
26
34
36
31
16
-6
-31
-54
-71
-79
-79
-74
-64
-54
-41
-29
-15
-2
13
30
48
64
79
91
104
117
132
147
155
154
141
121
98
79
67
62
60
58
49
35
15
-7
-28
-46
-59
-67
-69
-66
-56
-42
-25
-7
9
21
30
36
41
46
51
56
60
62
64
66
69
73
77
80
85
92
102
114
126
135
141
144
145
142
136
127
117
110
109
116
129
146
164
182
196
208
215
220
221
220
216
209
197
182
162
137
108
75
39
2
-32
-63
-91
-114
-134
-149
-156
-156
-151
-144
-139
-136
-134
-131
-124
-114
-105
-100
-100
-104
-105
-100
-84
-60
-32
-7
13
27
36
39
36
25
8
-12
-29
-40
-44
-46
-46
-47
-46
-43
-36
-28
-20
-11
-1
10
20
29
34
37
40
45
52
60
65
67
67
64
60
55
49
43
39
36
35
31
23
9
-10
-30
-49
-65
-76
-84
-87
-84
-75
-59
-37
-12
12
34
52
66
74
78
75
65
50
31
14
1
-7
-12
-17
-28
-44
-65
-84
-99
-107
-108
-106
-100
-91
-80
-68
-55
-42
-30
-17
-6
3
9
10
8
5
2
-2
-9
-21
-38
-57
-75
-89
-99
-106
-112
-118
-125
-135
-149
-169
-194
-219
-240
-256
-265
-271
-274
-272
-263
-246
-224
-201
-182
-170
-163
-160
-159
-160
-162
-164
-164
-159
-148
-130
-106
-77
-46
-15
12
33
48
57
62
65
68
73
79
87
94
97
96
89
79
68
58
48
39
32
25
23
23
27
34
41
51
61
72
81
86
85
82
77
71
64
53
40
24
10
2
0
6
16
30
44
55
64
69
73
76
80
86
94
104
115
126
137
148
157
163
166
166
164
162
159
157
157
159
163
168
174
179
182
180
171
151
122
85
46
11
-15
-31
-40
-47
-56
-70
-85
-99
-110
-117
-123
-126
-126
-120
-107
-87
-64
-44
-30
-24
-25
-34
-48
-67
-88
-109
-130
-150
-169
-187
-205
-223
-241
-257
-269
-275
-275
-268
-259
-250
-244
-238
-231
-220
-205
-184
-157
-124
-86
-46
-7
27
54
74
89
102
112
121
126
127
123
113
100
85
71
58
47
36
23
8
-9
-28
-47
-66
-82
-94
-101
-104
-104
-102
-97
-89
-77
-65
-55
-51
-53
-57
-61
-63
-64
-67
-74
-87
-104
-123
-140
-153
-162
-169
-173
-177
-182
-188
-195
-205
-217
-233
-249
-263
-273
-278
-283
-291
-304
-322
-343
-367
-393
-418
-442
-464
-484
-503
-524
-547
-572
-594
-611
-622
-627
-630
-632
-632
-630
-624
-614
-600
-584
-567
-552
-540
-532
-527
-522
-516
-506
-492
-474
-453
-431
-408
-386
-366
-347
-329
-310
-290
-268
-244
-218
-190
-161
-133
-109
-89
-73
-62
-58
-62
-76
-97
-122
-147
-169
-185
-196
-202
-205
-208
-213
-223
-234
-242
-242
-234
-217
-195
-171
-146
-122
-101
-84
-71
-61
-53
-46
-39
-35
-34
-36
-39
-40
-39
-33
-22
-4
20
47
74
95
110
119
127
135
147
160
172
181
185
184
182
179
177
176
178
180
182
180
175
166
151
133
111
88
65
41
18
-4
-25
-41
-52
-59
-63
-65
-67
-68
-66
-63
-59
-58
-59
-63
-67
-70
-72
-74
-77
-84
-96
-112
-130
-147
-161
-170
-174
-174
-171
-164
-154
-141
-126
-112
-100
-89
-76
-60
-42
-22
-2
18
36
54
72
87
97
100
95
85
72
60
51
46
46
52
63
78
98
120
143
166
187
204
218
228
237
244
253
264
276
290
303
314
322
325
323
314
301
287
274
266
262
261
259
254
245
234
220
204
186
166
147
130
115
101
86
68
51
34
19
7
-3
-10
-12
-10
-4
2
6
6
2
-3
-3
3
15
31
47
62
74
82
86
87
87
84
82
78
74
68
60
49
34
17
-1
-17
-29
-36
-37
-34
-29
-24
-20
-18
-18
-20
-21
-24
-27
-33
-40
-46
-52
-56
-60
-62
-64
-63
-59
-53
-47
-43
-43
-45
-49
-52
-54
-55
-55
-55
-55
-54
-53
-51
-48
-43
-38
-32
-25
-19
-12
-6
-2
-1
-3
-8
-14
-19
-24
-31
-39
-48
-58
-66
-71
-75
-77
-79
-82
-87
-94
-104
-114
-125
-133
-141
-147
-155
-164
-176
-187
-197
-204
-208
-209
-209
-209
-208
-207
-206
-204
-200
-194
-186
-175
-162
-149
-137
-126
-116
-107
-99
-91
-85
-82
-82
-86
-92
-99
-106
-112
-114
-112
-105
-96
-86
-77
-70
-64
-60
-55
-48
-38
-26
-11
4
18
30
38
43
44
43
41
41
42
45
47
47
43
35
24
11
-4
-20
-36
-49
-58
-62
-61
-56
-47
-35
-20
-1
23
51
81
113
146
177
208
238
267
293
315
331
343
350
354
355
355
356
357
358
359
359
359
359
362
368
377
387
396
404
410
417
424
432
443
457
474
493
511
526
539
549
558
566
573
577
577
571
560
545
529
513
499
488
479
472
465
458
448
436
423
409
395
381
366
350
332
311
289
268
251
237
225
214
203
193
186
182
180
179
176
170
161
149
135
120
107
99
98
102
111
119
126
131
133
133
130
124
116
103
87
69
49
29
10
-5
-19
-31
-42
-53
-63
-70
-74
-75
-71
-61
-45
-26
-5
15
31
42
50
54
57
58
58
57
53
46
36
24
12
0
-11
-24
-41
-62
-86
-111
-137
-161
-184
-205
-222
-238
-253
-269
-288
-308
-329
-347
-364
-379
-393
-408
-423
-438
-451
-462
-471
-477
-479
-477
-473
-466
-456
-441
-423
-402
-380
-359
-340
-323
-307
-293
-281
-269
-259
-251
-243
-238
-236
-236
-236
-237
-235
-231
-222
-211
-195
-177
-159
-140
-121
-103
-86
-72
-60
-50
-37
-20
3
31
60
87
112
133
148
159
164
164
163
161
158
155
148
139
128
118
111
107
108
111
117
123
129
133
135
137
140
144
148
150
150
146
140
131
121
109
97
86
77
69
61
50
38
28
20
14
10
6
2
-1
-2
-1
2
6
10
17
24
33
41
49
56
61
63
63
60
56
52
49
48
48
49
51
53
56
58
59
59
59
58
57
56
56
57
60
64
66
65
60
54
48
43
40
38
36
35
36
39
43
46
49
50
51
54
59
64
68
69
66
58
45
27
7
-14
-34
-53
-71
-86
-99
-110
-121
-134
-150
-168
-186
-202
-215
-226
-234
-242
-248
-254
-258
-261
-264
-265
-265
-264
-263
-263
-266
-269
-272
-273
-273
-274
-278
-284
-292
-300
-306
-309
-309
-306
-299
-292
-285
-279
-274
-268
-262
-255
-247
-237
-226
-212
-193
-170
-144
-115
-87
-60
-34
-13
4
16
23
26
28
31
35
42
51
59
66
74
84
98
116
139
164
190
216
241
265
287
307
326
345
364
384
403
418
429
434
434
430
424
416
406
397
388
382
378
378
380
384
391
400
409
418
426
431
435
437
437
435
431
426
419
411
402
393
383
374
364
354
344
334
324
316
310
305
300
295
289
282
274
265
255
242
228
212
195
178
162
148
137
126
116
105
94
82
69
57
45
35
27
20
12
4
-7
-19
-30
-41
-48
-52
-53
-52
-50
-47
-43
-40
-35
-30
-24
-19
-15
-12
-10
-9
-8
-9
-10
-13
-15
-17
-17
-16
-14
-11
-7
-4
1
6
12
18
26
35
47
59
73
87
99
110
119
127
134
139
142
144
145
145
146
146
146
143
137
126
111
94
76
60
46
33
21
9
-5
-18
-32
-45
-60
-76
-93
-110
-125
-138
-148
-158
-168
-179
-191
-202
-213
-222
-231
-242
-254
-266
-278
-290
-300
-308
-316
-322
-328
-334
-339
-346
-353
-361
-370
-377
-383
-385
-383
-379
-372
-365
-358
-350
-342
-333
-323
-315
-308
-305
-306
-310
-317
-325
-332
-338
-342
-343
-344
-344
-344
-345
-347
-354
-365
-379
-396
-412
-425
-434
-439
-441
-439
-435
-431
-425
-419
-410
-400
-389
-379
-370
-364
-358
-354
-350
-346
-343
-341
-338
-334
-330
-326
-322
-318
-312
-305
-295
-285
-275
-266
-257
-250
-242
-233
-223
-212
-201
-190
-180
-172
-166
-161
-158
-156
-156
-157
-158
-156
-152
-145
-137
-129
-120
-111
-101
-91
-82
-74
-69
-65
-64
-65
-68
-72
-78
-83
-86
-86
-85
-81
-74
-67
-59
-52
-45
-37
-27
-16
-4
8
21
32
44
54
61
67
71
76
82
91
100
108
115
121
127
133
138
140
138
133
126
116
105
95
85
76
68
60
51
41
32
27
25
25
25
25
26
27
28
28
27
24
18
11
1
-10
-23
-37
-48
-57
-64
-71
-79
-88
-95
-101
-103
-102
-100
-97
-93
-90
-87
-85
-84
-85
-87
-89
-92
-93
-93
-90
-86
-83
-81
-82
-84
-87
-92
-98
-106
-114
-120
-123
-122
-120
-118
-119
-122
-128
-135
-144
-152
-160
-167
-171
-175
-178
-182
-186
-192
-199
-207
-216
-224
-232
-237
-240
-241
-240
-238
-235
-232
-229
-226
-223
-221
-218
-215
-213
-212
-212
-213
-215
-217
-219
-220
-221
-222
-222
-222
-222
-220
-216
-209
-200
-188
-175
-160
-146
-132
-117
-102
-88
-73
-59
-46
-33
-21
-9
5
20
37
56
75
97
119
140
161
179
195
209
223
239
254
270
284
295
305
313
321
331
343
357
373
388
403
415
426
435
445
456
469
482
493
502
508
513
519
527
538
550
563
577
590
603
613
621
626
627
625
622
617
613
610
608
605
601
596
589
582
576
569
562
553
542
530
518
507
497
487
478
469
463
458
456
454
450
443
433
419
404
389
373
356
340
325
312
301
293
285
279
273
269
266
264
264
264
263
261
257
253
247
240
233
225
217
209
202
194
185
176
167
158
148
136
124
110
97
86
76
67
61
56
52
51
49
47
44
39
34
27
19
9
-2
-14
-27
-39
-49
-59
-66
-72
-76
-79
-82
-84
-84
-83
-80
-75
-70
-65
-60
-56
-52
-49
-44
-36
-26
-11
7
28
49
70
90
111
132
151
169
186
203
220
238
254
269
282
293
303
311
317
320
321
321
321
322
322
320
317
313
311
312
317
325
335
346
359
370
381
388
393
393
391
387
383
380
378
379
381
384
387
391
394
396
398
400
401
400
397
393
386
378
368
358
349
341
334
328
323
318
313
307
299
290
279
267
255
243
232
221
209
194
176
154
129
104
80
58
37
17
-3
-22
-40
-58
-74
-88
-100
-110
-118
-125
-131
-135
-139
-142
-145
-148
-151
-154
-157
-160
-163
-165
-168
-172
-174
-176
-176
-176
-176
-177
-180
-184
-187
-190
-191
-188
-184
-177
-170
-163
-156
-150
-142
-134
-125
-116
-109
-104
-100
-96
-94
-93
-94
-95
-97
-97
-96
-96
-97
-103
-112
-124
-137
-150
-162
-171
-178
-182
-183
-182
-179
-176
-173
-171
-169
-167
-165
-163
-162
-161
-161
-161
-162
-163
-165
-167
-170
-175
-181
-190
-203
-217
-233
-249
-264
-277
-290
-301
-311
-319
-326
-331
-337
-343
-350
-358
-368
-377
-387
-396
-404
-408
-410
-409
-407
-404
-400
-394
-386
-378
-371
-366
-365
-366
-369
-372
-374
-375
-376
-375
-373
-370
-366
-362
-358
-353
-347
-341
-334
-327
-319
-311
-303
-296
-289
-285
-283
-284
-287
-290
-292
-289
-283
-273
-261
-248
-237
-228
-220
-213
-207
-201
-196
-190
-184
-175
-166
-154
-141
-127
-111
-94
-79
-66
-54
-41
-28
-15
-2
7
13
14
13
9
5
-1
-7
-14
-21
-25
-29
-32
-36
-40
-46
-50
-53
-53
-52
-51
-50
-52
-56
-60
-65
-69
-73
-77
-82
-86
-91
-95
-98
-100
-101
-101
-100
-98
-97
-97
-98
-101
-106
-112
-120
-129
-139
-148
-156
-160
-161
-160
-158
-157
-157
-160
-165
-171
-178
-185
-191
-199
-208
-219
-232
-245
-259
-271
-281
-290
-297
-301
-304
-306
-307
-308
-309
-309
-309
-307
-305
-302
-300
-298
-296
-296
-296
-299
-303
-310
-318
-327
-336
-343
-347
-347
-345
-340
-335
-329
-321
-312
-302
-291
-281
-272
-263
-253
-242
-230
-218
-208
-200
-196
-194
-193
-191
-189
-185
-180
-175
-171
-167
-165
-163
-162
-161
-159
-156
-151
-145
-138
-131
-126
-122
-120
-118
-116
-114
-112
-111
-110
-110
-111
-112
-114
-117
-120
-122
-125
-127
-129
-132
-135
-138
-139
-138
-135
-130
-123
-116
-110
-107
-107
-111
-117
-124
-132
-141
-151
-160
-168
-172
-172
-169
-163
-157
-151
-145
-139
-135
-132
-130
-128
-127
-126
-125
-125
-125
-126
-127
-128
-129
-130
-129
-127
-126
-127
-130
-134
-139
-144
-148
-150
-152
-151
-149
-148
-148
-152
-159
-166
-172
-177
-180
-184
-188
-191
-193
-194
-195
-197
-200
-206
-214
-224
-234
-243
-250
-253
-252
-250
-247
-243
-239
-234
-227
-220
-213
-206
-200
-195
-191
-191
-193
-197
-204
-210
-217
-224
-230
-235
-240
-245
-250
-255
-262
-268
-272
-274
-274
-272
-269
-265
-258
-248
-235
-218
-200
-181
-162
-144
-126
-109
-92
-75
-61
-48
-38
-29
-20
-11
-2
7
15
23
30
39
49
62
76
91
107
123
137
150
161
170
178
185
195
208
224
242
260
278
296
311
325
336
345
352
357
362
367
373
381
391
403
416
428
440
450
458
463
468
470
471
472
471
469
466
460
452
442
431
419
407
396
387
379
374
371
369
366
360
351
341
329
317
306
296
288
281
275
270
265
261
257
254
251
248
245
241
238
236
236
237
241
248
256
265
273
280
285
291
298
308
319
331
343
355
366
377
388
399
411
422
432
440
447
450
451
450
446
439
429
418
407
396
386
378
370
364
359
354
349
344
339
336
333
333
335
340
346
354
362
369
375
379
382
384
386
387
388
391
394
400
407
415
423
431
439
447
454
460
466
473
482
492
502
512
521
529
537
545
549
550
547
540
531
521
511
499
488
477
467
457
448
440
432
425
419
412
405
397
388
378
369
361
353
346
340
335
330
325
317
307
294
278
259
239
219
201
185
172
162
153
144
135
127
118
108
99
91
83
78
73
69
65
58
50
41
32
24
17
12
8
5
2
-2
-8
-15
-22
-30
-36
-43
-49
-55
-61
-64
-66
-67
-67
-68
-68
-69
-69
-68
-68
-68
-70
-72
-75
-79
-84
-89
-94
-98
-101
-103
-104
-105
-106
-105
-104
-103
-103
-102
-101
-98
-93
-85
-75
-65
-56
-49
-42
-38
-35
-35
-36
-40
-45
-50
-57
-64
-73
-83
-93
-102
-110
-117
-122
-127
-133
-139
-147
-156
-167
-177
-187
-196
-204
-211
-216
-219
-220
-217
-211
-203
-195
-187
-181
-175
-169
-162
-154
-146
-137
-127
-119
-110
-102
-94
-85
-75
-64
-53
-41
-29
-17
-6
5
14
23
29
35
39
41
43
44
45
47
51
56
61
68
76
87
99
113
127
140
152
162
171
177
182
186
190
193
196
197
196
193
189
184
181
179
180
182
186
191
194
196
196
194
193
193
194
197
200
202
203
203
202
202
202
202
203
205
207
209
211
211
211
211
211
212
214
217
219
220
219
217
214
210
205
199
191
181
169
156
142
129
117
105
93
80
67
54
40
28
15
4
-8
-17
-25
-32
-38
-45
-53
-62
-72
-82
-93
-105
-118
-133
-149
-165
-182
-198
-211
-222
-231
-236
-241
-245
-250
-255
-259
-262
-265
-267
-269
-272
-276
-282
-290
-301
-313
-325
-335
-345
-354
-364
-374
-385
-396
-407
-416
-423
-428
-431
-431
-429
-426
-420
-414
-407
-400
-394
-387
-381
-373
-364
-355
-345
-336
-325
-313
-299
-283
-265
-245
-227
-209
-195
-184
-176
-168
-159
-148
-134
-119
-103
-86
-69
-51
-34
-18
-3
11
25
40
58
76
94
110
124
137
147
157
165
172
179
186
193
200
208
215
221
226
231
236
240
242
242
238
233
225
215
205
196
189
184
182
181
183
184
184
184
183
182
182
183
185
188
190
191
190
189
188
188
190
195
200
204
206
206
203
199
194
190
186
183
179
175
170
166
163
162
162
165
170
176
184
191
197
202
206
209
213
215
216
213
208
200
191
182
173
164
157
149
142
133
122
109
94
79
65
51
39
29
21
15
11
7
3
-3
-11
-20
-31
-45
-59
-75
-89
-101
-110
-116
-118
-118
-116
-113
-111
-110
-112
-119
-129
-143
-159
-177
-195
-214
-233
-251
-268
-282
-291
-295
-294
-289
-280
-269
-256
-243
-231
-220
-211
-206
-204
-206
-210
-216
-224
-233
-241
-250
-258
-265
-271
-277
-280
-282
-282
-280
-277
-274
-273
-273
-275
-278
-282
-285
-289
-295
-302
-310
-319
-328
-335
-340
-342
-343
-343
-343
-344
-347
-351
-357
-362
-366
-367
-364
-358
-352
-345
-340
-336
-333
-332
-332
-333
-333
-331
-328
-324
-319
-314
-310
-306
-302
-301
-301
-303
-309
-316
-324
-334
-345
-355
-364
-372
-377
-380
-381
-380
-376
-370
-363
-355
-346
-337
-329
-320
-313
-308
-305
-305
-307
-309
-312
-315
-318
-320
-322
-322
-321
-319
-317
-314
-312
-309
-305
-299
-292
-283
-275
-266
-258
-251
-244
-238
-232
-226
-220
-214
-208
-202
-196
-192
-189
-189
-189
-190
-190
-191
-191
-193
-196
-200
-206
-213
-222
-232
-244
-255
-265
-275
-284
-292
-299
-306
-312
-318
-324
-330
-337
-344
-352
-359
-366
-370
-374
-375
-374
-371
-366
-359
-351
-342
-331
-319
-306
-292
-277
-261
-246
-232
-218
-207
-200
-196
-194
-194
-192
-188
-181
-172
-161
-148
-133
-116
-98
-80
-64
-51
-41
-33
-29
-26
-26
-27
-27
-26
-23
-19
-12
-3
5
11
14
14
11
6
-1
-8
-14
-20
-25
-28
-31
-34
-37
-41
-45
-50
-55
-61
-67
-74
-80
-87
-93
-100
-109
-119
-131
-143
-154
-164
-173
-180
-188
-195
-202
-208
-215
-220
-225
-228
-230
-230
-230
-229
-229
-229
-230
-233
-237
-242
-247
-251
-253
-253
-251
-246
-239
-229
-219
-208
-197
-185
-173
-162
-151
-141
-132
-123
-115
-105
-96
-88
-80
-71
-62
-50
-36
-20
-3
16
35
55
74
93
111
128
145
161
176
189
200
209
218
225
233
240
246
253
260
267
276
285
296
308
319
330
340
349
356
363
368
374
380
386
393
402
412
424
436
447
458
466
473
477
481
483
483
482
478
471
460
448
436
425
415
406
398
391
384
379
374
371
368
367
366
365
364
363
362
361
359
357
352
346
337
327
315
302
289
277
265
254
246
239
235
232
229
227
225
223
221
219
218
218
218
220
223
227
231
234
236
236
237
239
241
244
249
254
260
266
271
275
278
282
285
289
294
299
305
312
321
331
343
355
367
379
391
401
409
414
418
421
423
424
424
423
420
415
409
402
395
387
380
374
370
369
370
372
375
376
377
376
375
374
373
372
370
368
364
358
352
345
337
329
319
308
296
283
270
256
243
228
211
193
174
156
139
125
114
106
99
95
93
92
92
92
91
89
86
83
81
78
76
73
70
67
62
57
51
45
41
39
40
43
46
49
51
49
46
41
34
27
21
15
12
11
13
18
25
35
46
56
64
69
71
70
68
66
66
68
72
77
83
88
92
93
93
91
88
85
83
80
77
73
68
62
57
52
49
46
45
45
45
46
46
45
44
41
36
31
24
17
11
5
-1
-8
-16
-25
-35
-45
-54
-62
-71
-79
-88
-97
-106
-114
-122
-128
-133
-137
-140
-143
-148
-153
-159
-165
-171
-176
-180
-183
-184
-185
-185
-186
-188
-191
-196
-202
-211
-221
-233
-244
-255
-264
-270
-274
-276
-278
-279
-280
-283
-286
-289
-291
-290
-288
-284
-277
-269
-260
-250
-241
-233
-226
-222
-220
-220
-224
-229
-233
-235
-234
-230
-223
-215
-207
-199
-192
-186
-182
-180
-178
-177
-177
-175
-172
-168
-162
-153
-142
-130
-117
-103
-89
-77
-66
-57
-51
-47
-44
-43
-41
-38
-33
-26
-17
-7
5
19
33
49
66
83
99
115
129
141
153
163
171
178
183
189
195
202
209
216
222
227
231
233
233
231
228
224
219
214
209
203
197
191
185
180
174
169
164
158
153
147
141
133
124
115
106
98
92
87
85
84
85
87
90
91
91
90
88
86
86
86
89
93
98
103
107
111
114
116
118
120
123
126
128
131
133
135
136
137
138
139
140
142
145
148
151
154
156
158
160
162
163
164
164
163
161
158
157
156
156
155
153
150
145
138
130
121
113
106
100
94
88
82
76
69
63
56
50
45
40
36
32
30
27
25
23
21
19
16
10
4
-4
-13
-20
-26
-32
-38
-45
-51
-58
-66
-74
-81
-86
-90
-91
-89
-86
-80
-74
-66
-58
-49
-41
-32
-22
-12
0
12
24
35
45
54
63
69
73
74
72
68
63
58
52
47
43
40
38
36
34
32
29
24
20
15
11
7
5
4
3
2
1
-1
-3
-6
-9
-12
-14
-16
-17
-16
-13
-9
-6
-2
0
2
3
4
5
6
8
9
12
15
19
24
30
37
43
49
53
56
58
57
56
54
51
49
48
45
43
40
36
33
29
25
20
14
8
2
-3
-7
-11
-14
-18
-22
-29
-37
-47
-58
-70
-83
-97
-112
-126
-139
-151
-163
-175
-186
-196
-205
-211
-217
-221
-226
-229
-231
-232
-231
-228
-223
-218
-212
-207
-202
-199
-196
-194
-193
-191
-190
-189
-188
-188
-188
-188
-187
-186
-184
-181
-175
-167
-155
-142
-126
-110
-95
-82
-72
-64
-59
-56
-52
-48
-43
-37
-32
-27
-23
-20
-19
-19
-19
-20
-21
-21
-20
-18
-15
-11
-7
-2
3
8
14
19
24
27
30
32
34
37
40
44
46
48
48
48
47
46
46
48
51
55
60
66
72
77
82
86
87
86
83
79
74
70
65
61
56
52
49
45
42
38
34
31
27
24
23
21
21
22
23
25
29
32
36
40
44
48
52
56
60
63
64
63
60
56
50
44
38
33
29
28
28
29
31
32
32
30
28
26
23
21
19
18
18
18
17
17
16
14
12
8
3
-3
-10
-18
-26
-34
-42
-51
-60
-70
-81
-93
-104
-115
-125
-134
-142
-150
-160
-170
-182
-195
-209
-222
-236
-249
-261
-273
-284
-295
-306
-316
-327
-338
-348
-359
-369
-380
-389
-397
-403
-408
-413
-417
-420
-423
-425
-427
-429
-432
-436
-440
-444
-448
-451
-453
-456
-460
-465
-470
-476
-482
-488
-494
-499
-503
-506
-507
-508
-507
-507
-506
-505
-504
-502
-499
-495
-491
-486
-481
-476
-470
-464
-457
-449
-441
-433
-424
-415
-407
-400
-394
-391
-389
-388
-387
-387
-385
-383
-380
-376
-371
-366
-360
-354
-349
-343
-337
-331
-324
-318
-311
-303
-296
-288
-281
-274
-267
-260
-251
-241
-230
-219
-208
-197
-187
-176
-165
-154
-143
-131
-120
-109
-98
-88
-78
-68
-60
-51
-43
-37
-32
-28
-27
-27
-29
-32
-36
-40
-44
-48
-52
-55
-59
-61
-62
-62
-60
-58
-56
-54
-52
-51
-49
-48
-47
-46
-44
-41
-38
-34
-31
-28
-26
-24
-24
-24
-23
-22
-21
-20
-19
-19
-18
-17
-17
-17
-16
-14
-12
-8
-4
1
5
10
15
20
24
28
30
31
31
31
30
29
29
29
31
33
36
40
45
51
58
67
77
87
96
105
114
122
128
135
141
147
153
159
165
172
180
188
197
207
218
228
237
245
252
259
264
268
271
273
275
275
275
276
277
280
284
289
293
297
300
302
302
300
297
293
289
287
285
284
283
283
281
279
277
274
272
271
269
268
265
262
259
254
249
243
237
233
228
225
223
222
222
222
223
225
228
231
234
238
242
246
251
255
260
264
267
270
271
273
274
276
278
280
283
286
289
291
294
297
300
303
306
310
313
316
319
321
323
325
327
327
327
327
327
326
326
324
321
317
312
307
301
294
288
283
278
274
271
267
262
257
251
244
237
231
225
219
215
211
208
205
202
199
196
195
194
193
193
193
192
191
190
188
185
180
174
166
158
149
141
134
128
124
122
121
121
121
122
122
121
120
119
119
119
119
120
122
123
123
122
121
119
117
115
113
112
110
110
112
114
118
123
129
136
142
149
154
159
163
166
169
172
175
177
179
181
181
181
180
178
176
173
168
162
154
146
138
131
126
123
122
122
123
123
122
120
119
119
121
126
133
141
148
155
161
166
169
171
171
171
170
169
167
166
164
164
164
166
167
169
171
175
179
184
190
196
203
210
216
221
225
227
228
228
227
224
220
215
208
202
195
188
182
177
172
168
164
162
160
159
159
160
161
162
162
162
162
162
162
161
159
157
154
151
147
144
140
138
138
138
138
139
139
139
140
141
142
143
143
142
140
137
133
127
120
111
102
91
80
69
60
51
44
38
33
29
25
22
20
17
14
12
9
6
2
-1
-3
-5
-6
-6
-7
-8
-9
-10
-13
-15
-18
-22
-24
-26
-27
-27
-25
-24
-22
-19
-17
-14
-10
-6
-2
3
7
10
12
15
17
19
22
25
28
31
34
36
36
34
31
27
23
19
17
15
14
13
12
10
7
4
0
-4
-9
-15
-21
-28
-36
-44
-52
-62
-71
-80
-88
-94
-99
-103
-105
-107
-109
-112
-114
-118
-122
-128
-134
-141
-148
-154
-161
-167
-173
-181
-189
-197
-204
-211
-217
-223
-228
-234
-240
-246
-252
-257
-262
-265
-268
-270
-273
-276
-281
-285
-289
-293
-297
-300
-302
-304
-305
-305
-304
-304
-304
-306
-308
-312
-316
-322
-327
-332
-337
-342
-346
-348
-349
-349
-347
-345
-342
-339
-337
-335
-334
-333
-333
-334
-336
-337
-338
-340
-341
-343
-344
-345
-348
-351
-355
-359
-364
-368
-374
-380
-387
-395
-405
-415
-426
-438
-449
-460
-472
-482
-492
-500
-505
-509
-511
-513
-515
-518
-522
-526
-530
-534
-538
-540
-542
-544
-545
-546
-547
-547
-547
-548
-549
-552
-555
-558
-562
-564
-566
-567
-567
-565
-562
-559
-556
-553
-549
-544
-539
-532
-525
-518
-510
-502
-494
-485
-478
-470
-463
-456
-449
-442
-436
-429
-422
-414
-405
-396
-387
-378
-369
-360
-352
-343
-333
-323
-312
-299
-285
-270
-254
-238
-223
-210
-198
-187
-177
-168
-159
-149
-140
-130
-119
-109
-99
-90
-81
-72
-62
-51
-40
-27
-15
-2
9
21
31
40
48
55
60
64
68
71
74
78
83
87
90
94
97
100
103
106
109
112
114
116
119
123
129
135
142
147
152
156
160
163
167
170
174
177
179
182
185
188
190
193
194
195
195
195
194
194
195
198
203
208
214
221
227
233
238
244
250
257
264
270
276
282
287
290
293
295
297
299
303
307
312
318
324
329
332
334
335
335
334
333
331
328
327
325
324
323
323
322
322
322
321
320
320
319
318
317
315
313
310
306
301
296
291
286
281
276
272
268
265
263
264
266
270
275
281
287
293
297
301
304
307
310
313
316
318
320
322
322
322
320
318
316
314
313
313
314
315
316
316
314
312
309
306
303
301
300
299
299
298
295
292
288
282
277
272
267
264
263
263
264
268
272
276
281
285
289
293
297
300
303
304
303
301
298
295
292
290
287
286
284
284
283
284
285
287
289
291
293
295
297
298
299
299
299
300
300
300
299
297
294
291
286
280
273
266
258
250
243
235
226
218
209
201
193
186
178
169
160
149
137
125
113
101
91
81
72
64
56
48
40
31
22
13
3
-8
-18
-28
-38
-46
-52
-58
-62
-67
-71
-75
-79
-83
-87
-91
-95
-99
-103
-107
-111
-114
-117
-120
-123
-126
-128
-129
-130
-128
-127
-125
-124
-123
-123
-124
-126
-130
-135
-141
-148
-155
-162
-169
-175
-180
-185
-189
-192
-194
-197
-199
-201
-203
-207
-211
-216
-221
-225
-229
-232
-235
-238
-241
-245
-249
-253
-259
-266
-274
-283
-293
-302
-312
-321
-329
-338
-347
-356
-364
-372
-380
-387
-393
-400
-406
-411
-417
-421
-426
-429
-431
-433
-436
-439
-442
-446
-450
-454
-458
-462
-465
-467
-469
-470
-471
-472
-474
-476
-478
-479
-480
-479
-477
-475
-472
-468
-465
-462
-459
-457
-456
-454
-453
-452
-451
-450
-449
-447
-443
-438
-432
-425
-417
-409
-402
-394
-387
-380
-372
-365
-358
-350
-342
-334
-326
-317
-309
-301
-293
-285
-278
-272
-266
-261
-256
-251
-246
-242
-238
-234
-229
-223
-216
-208
-200
-193
-186
-179
-173
-167
-160
-153
-145
-136
-125
-115
-103
-92
-81
-71
-61
-52
-44
-37
-30
-23
-18
-13
-8
-3
1
4
8
10
13
15
17
20
23
28
34
41
48
55
60
64
68
71
75
79
83
88
93
98
104
110
116
121
126
129
131
132
133
133
133
133
133
133
133
133
134
134
135
135
136
136
137
137
137
138
138
140
142
146
152
158
166
173
181
187
193
198
203
207
210
213
215
217
218
221
223
225
227
229
230
231
233
234
236
238
241
243
247
250
252
255
258
262
267
273
278
285
290
295
299
303
305
307
309
310
312
313
315
316
316
316
316
314
312
309
305
300
294
288
282
275
268
262
256
250
245
242
239
238
237
236
235
232
230
227
224
221
218
216
214
213
212
212
212
213
215
217
218
219
219
219
219
219
218
217
216
216
216
217
219
222
226
230
233
235
236
236
237
237
238
239
241
242
243
243
243
243
242
241
239
237
235
233
232
231
231
231
231
232
231
230
229
227
225
223
221
219
218
216
214
212
210
207
204
202
201
201
202
205
207
210
212
213
214
215
214
214
214
215
217
220
223
228
232
237
243
250
258
266
275
282
289
294
298
302
305
308
311
314
318
321
323
325
326
326
326
325
324
324
323
323
323
323
322
320
317
314
311
307
304
302
300
300
300
300
301
301
301
300
298
296
293
290
287
284
282
279
276
273
270
265
259
253
246
238
231
223
217
211
206
202
199
195
192
190
188
185
183
179
175
170
165
159
153
147
141
135
130
124
118
111
103
96
90
83
78
73
68
64
59
55
52
48
45
41
37
33
28
24
19
14
9
2
-4
-12
-18
-25
-31
-37
-43
-48
-52
-56
-59
-62
-65
-68
-71
-73
-74
-74
-74
-73
-72
-70
-68
-66
-63
-60
-57
-54
-52
-51
-49
-49
-49
-51
-53
-55
-58
-61
-64
-68
-74
-80
-85
-90
-94
-97
-100
-102
-105
-107
-110
-113
-117
-120
-125
-129
-133
-137
-140
-143
-145
-146
-146
-146
-145
-145
-144
-145
-147
-150
-154
-158
-162
-166
-170
-175
-180
-186
-193
-200
-208
-216
-224
-232
-241
-249
-257
-264
-270
-275
-279
-282
-286
-290
-295
-301
-308
-314
-321
-328
-335
-342
-348
-354
-361
-366
-372
-377
-382
-387
-391
-396
-399
-403
-405
-408
-410
-411
-411
-412
-412
-413
-413
-413
-413
-414
-414
-414
-415
-416
-417
-418
-420
-422
-425
-428
-432
-436
-440
-443
-445
-447
-448
-449
-449
-449
-448
-448
-447
-447
-448
-449
-450
-452
-454
-455
-457
-459
-460
-461
-462
-462
-462
-461
-460
-458
-456
-454
-453
-452
-451
-450
-450
-449
-448
-446
-445
-443
-442
-442
-442
-442
-443
-443
-444
-445
-447
-449
-453
-457
-461
-466
-470
-473
-475
-477
-478
-480
-481
-484
-487
-490
-494
-498
-501
-504
-506
-507
-507
-507
-507
-506
-506
-506
-506
-506
-506
-507
-508
-510
-512
-514
-517
-520
-522
-525
-527
-529
-530
-530
-529
-528
-527
-524
-521
-518
-515
-510
-506
-500
-495
-489
-484
-479
-472
-464
-455
-445
-434
-424
-414
-406
-398
-390
-382
-374
-364
-354
-342
-331
-321
-312
-303
-296
-290
-285
-280
-276
-271
-266
-260
-254
-249
-244
-239
-235
-231
-228
-226
-223
-220
-218
-216
-214
-214
-215
-216
-219
-222
-225
-227
-229
-230
-231
-231
-231
-230
-228
-226
-224
-223
-223
-226
-230
-235
-240
-245
-251
-257
-262
-267
-271
-276
-280
-284
-288
-291
-294
-295
-296
-296
-294
-292
-290
-289
-287
-284
-282
-279
-276
-273
-271
-267
-264
-261
-257
-254
-251
-247
-242
-237
-231
-226
-220
-215
-209
-203
-196
-188
-180
-170
-160
-148
-137
-126
-116
-105
-95
-84
-72
-60
-47
-34
-22
-10
1
12
23
34
45
57
70
84
98
113
128
143
158
174
191
209
229
249
270
291
311
330
349
367
385
403
422
440
458
477
494
511
528
544
561
577
593
610
625
640
654
666
678
689
699
708
716
725
733
743
753
763
773
783
792
801
809
818
827
835
844
853
862
870
878
887
894
901
908
914
918
923
926
930
933
937
941
945
949
952
956
960
963
967
970
972
975
977
980
982
985
987
989
990
990
988
986
983
978
973
967
961
955
950
944
940
936
932
929
925
922
917
912
907
901
896
890
885
880
874
868
862
855
848
840
831
821
810
799
786
774
760
747
733
718
704
689
675
662
650
639
629
620
612
603
595
585
575
563
552
540
529
518
509
501
494
489
484
479
474
469
463
456
448
440
431
423
415
408
401
395
389
384
380
375
371
368
366
363
361
358
355
352
349
345
342
339
336
333
330
328
325
323
322
321
321
321
322
321
319
317
313
309
305
299
293
286
279
272
264
256
248
240
231
223
216
208
200
193
185
177
169
160
152
144
136
128
121
113
106
99
93
87
80
73
65
57
49
40
32
24
16
8
0
-8
-16
-24
-31
-38
-45
-52
-58
-64
-70
-75
-80
-84
-89
-94
-98
-102
-106
-110
-115
-120
-125
-131
-136
-142
-148
-154
-159
-164
-168
-173
-178
-182
-186
-190
-193
-196
-198
-200
-202
-205
-208
-212
-215
-219
-223
-228
-233
-237
-242
-248
-254
-261
-268
-274
-280
-286
-291
-297
-302
-306
-309
-312
-314
-315
-315
-316
-318
-320
-323
-325
-327
-329
-330
-332
-334
-337
-340
-343
-347
-351
-356
-360
-365
-369
-373
-377
-380
-382
-383
-383
-382
-382
-380
-379
-378
-376
-375
-373
-371
-369
-367
-366
-365
-366
-368
-370
-373
-375
-377
-380
-382
-383
-385
-386
-386
-386
-386
-384
-383
-381
-379
-377
-374
-371
-368
-365
-362
-360
-357
-355
-352
-350
-349
-348
-348
-348
-349
-350
-350
-351
-351
-352
-352
-352
-353
-353
-354
-354
-355
-355
-355
-355
-354
-353
-351
-349
-347
-344
-341
-339
-338
-337
-338
-339
-341
-343
-345
-347
-349
-351
-353
-356
-360
-363
-367
-371
-375
-380
-385
-391
-395
-400
-405
-409
-412
-414
-416
-416
-415
-415
-415
-416
-417
-419
-421
-424
-426
-429
-431
-433
-435
-437
-439
-441
-443
-445
-447
-448
-449
-449
-450
-451
-451
-451
-452
-452
-452
-452
-451
-450
-449
-449
-447
-446
-445
-442
-440
-437
-434
-431
-428
-426
-425
-424
-424
-424
-424
-424
-424
-424
-423
-422
-419
-417
-413
-409
-405
-402
-398
-394
-391
-388
-385
-381
-377
-373
-370
-367
-364
-361
-359
-357
-355
-353
-350
-347
-343
-339
-335
-331
-328
-325
-322
-319
-316
-312
-307
-301
-294
-288
-281
-274
-268
-261
-255
-249
-243
-238
-233
-228
-223
-219
-214
-209
-203
-197
-190
-183
-177
-170
-164
-158
-152
-146
-141
-135
-129
-123
-117
-110
-103
-95
-88
-80
-73
-66
-60
-54
-49
-43
-36
-30
-23
-16
-9
-2
5
10
16
21
25
29
33
36
38
42
45
49
53
58
62
65
69
73
78
83
88
93
98
102
107
110
114
118
122
125
128
131
132
132
132
133
135
139
143
147
152
157
161
165
169
172
174
176
177
177
178
178
178
179
179
179
179
178
177
176
176
175
175
174
174
174
173
173
172
171
169
167
165
163
161
159
157
154
152
149
146
144
140
137
134
131
127
123
118
113
107
101
94
88
82
75
69
63
56
49
41
33
25
18
12
6
2
-1
-3
-4
-4
-6
-7
-9
-12
-16
-20
-24
-29
-33
-37
-41
-44
-46
-49
-51
-53
-54
-55
-55
-55
-54
-53
-51
-48
-45
-41
-37
-34
-30
-28
-25
-24
-23
-23
-23
-23
-23
-23
-23
-22
-22
-21
-22
-23
-24
-26
-29
-31
-32
-33
-34
-34
-35
-36
-37
-39
-41
-44
-47
-51
-54
-57
-60
-63
-66
-68
-71
-73
-75
-76
-77
-77
-77
-76
-76
-75
-73
-71
-68
-64
-60
-56
-51
-46
-41
-37
-33
-29
-25
-22
-18
-14
-10
-6
-2
1
4
7
9
11
13
16
18
21
25
28
31
35
38
41
44
46
48
50
51
53
55
57
60
63
66
69
72
74
75
75
76
75
75
74
73
72
70
69
68
69
69
69
68
67
65
62
59
57
56
55
54
53
52
51
50
50
49
49
47
46
44
42
40
38
36
34
32
32
31
31
31
31
31
32
34
38
42
47
51
55
59
63
67
72
77
83
89
94
101
107
114
121
127
134
140
147
154
161
168
176
184
193
203
212
222
231
239
246
252
258
263
267
272
277
283
289
295
302
309
317
324
332
340
349
357
366
376
385
395
405
415
424
432
438
443
448
452
456
460
463
467
471
476
480
484
489
494
499
505
511
516
521
526
531
536
540
544
548
553
558
564
570
576
582
589
597
606
615
624
634
644
655
666
677
688
698
707
715
723
731
741
751
762
773
782
791
798
805
811
817
822
828
833
837
840
840
840
839
838
837
837
838
838
838
837
836
834
833
831
830
828
826
823
820
815
809
804
799
794
790
786
781
774
766
758
749
741
734
728
720
712
703
693
682
672
660
649
638
628
618
607
597
587
578
570
562
555
547
539
530
520
510
501
492
483
474
463
453
441
428
415
402
389
376
363
351
339
327
315
303
291
278
266
253
241
229
217
205
193
182
172
162
152
141
131
120
109
99
89
79
68
58
48
38
27
18
9
-1
-10
-20
-32
-44
-57
-70
-83
-95
-107
-118
-129
-140
-150
-161
-172
-182
-192
-202
-212
-220
-228
-236
-244
-253
-262
-272
-282
-292
-301
-311
-320
-329
-338
-347
-354
-360
-366
-371
-377
-381
-386
-389
-393
-396
-399
-402
-405
-407
-410
-413
-417
-421
-424
-428
-432
-435
-439
-443
-446
-450
-453
-456
-459
-462
-464
-465
-467
-469
-472
-475
-479
-482
-486
-489
-492
-495
-499
-502
-507
-512
-517
-522
-527
-532
-538
-544
-551
-557
-562
-567
-571
-575
-579
-583
-587
-592
-597
-603
-608
-614
-618
-622
-626
-629
-633
-637
-642
-646
-652
-658
-663
-669
-673
-676
-679
-681
-683
-684
-686
-687
-689
-690
-691
-690
-689
-688
-688
-687
-686
-685
-683
-680
-676
-673
-671
-669
-667
-665
-664
-663
-661
-659
-657
-655
-652
-649
-646
-643
-640
-637
-634
-631
-627
-623
-619
-615
-609
-601
-594
-586
-579
-573
-567
-562
-557
-553
-548
-543
-538
-533
-528
-524
-520
-516
-512
-509
-506
-502
-499
-495
-490
-486
-482
-479
-476
-473
-470
-467
-465
-463
-461
-459
-456
-452
-448
-444
-440
-436
-432
-428
-423
-419
-414
-410
-404
-399
-393
-387
-381
-375
-369
-364
-359
-354
-350
-346
-344
-342
-340
-338
-336
-334
-331
-327
-324
-320
-316
-312
-309
-306
-304
-301
-298
-295
-292
-289
-287
-284
-280
-277
-274
-270
-266
-262
-258
-253
-249
-244
-240
-234
-228
-223
-217
-211
-205
-199
-194
-188
-182
-176
-170
-163
-156
-148
-140
-132
-124
-117
-110
-104
-99
-95
-92
-88
-86
-83
-80
-77
-75
-72
-70
-68
-65
-63
-60
-57
-54
-50
-47
-45
-44
-44
-44
-43
-42
-40
-38
-36
-34
-31
-28
-26
-24
-23
-23
-23
-24
-26
-27
-29
-29
-29
-28
-27
-26
-25
-23
-22
-20
-18
-15
-12
-9
-5
-2
0
3
6
8
11
13
15
18
20
21
22
22
22
22
21
21
22
23
24
24
25
26
27
28
30
32
34
36
38
40
41
41
41
40
39
37
34
32
29
27
25
23
21
20
18
16
15
14
13
12
11
10
9
9
8
6
5
4
3
2
2
1
1
-1
-2
-6
-10
-15
-20
-26
-31
-36
-40
-43
-45
-47
-49
-50
-51
-51
-50
-49
-47
-46
-44
-42
-41
-39
-38
-37
-36
-35
-34
-32
-31
-30
-29
-29
-30
-31
-31
-32
-34
-34
-35
-34
-33
-31
-29
-26
-24
-22
-19
-16
-13
-10
-7
-4
0
4
8
12
16
19
22
26
30
33
37
41
44
48
52
56
59
62
65
67
69
70
71
71
71
71
70
68
67
65
64
62
60
58
57
56
56
57
58
60
61
62
63
63
63
62
60
59
58
57
56
56
57
58
60
62
64
66
68
71
73
76
79
83
88
93
100
107
114
121
127
132
137
142
146
149
152
155
157
159
161
163
165
167
169
171
174
176
179
182
184
188
192
198
203
208
213
218
223
228
233
239
244
249
254
258
263
267
271
275
278
281
284
286
289
292
295
299
302
305
308
310
313
317
320
323
327
330
334
337
340
343
345
347
349
351
353
355
356
357
358
359
359
359
358
357
356
355
354
352
351
350
350
351
353
354
356
358
360
362
364
367
370
373
376
379
382
386
389
391
393
394
395
396
397
398
398
398
398
398
398
398
398
398
398
399
400
401
402
403
406
409
413
418
423
428
433
439
444
449
454
457
460
463
466
469
472
476
479
483
488
494
500
508
516
524
531
538
544
550
556
561
567
572
577
583
590
596
602
607
613
617
622
627
630
634
637
641
646
650
655
660
664
669
673
678
682
687
691
696
701
705
710
714
719
725
730
736
742
747
753
758
763
769
774
778
783
788
793
797
801
804
807
810
812
814
816
818
820
821
822
823
822
822
822
821
820
819
817
814
810
805
800
795
790
785
781
777
773
768
764
759
754
749
743
737
731
725
719
713
707
701
694
687
681
673
666
658
649
640
631
621
611
601
590
580
570
559
549
538
528
517
506
495
483
472
461
450
439
427
414
401
388
374
359
343
327
310
293
275
258
241
224
207
190
173
155
138
120
102
84
66
47
29
12
-5
-21
-37
-53
-70
-86
-102
-119
-135
-152
-169
-186
-202
-219
-236
-253
-270
-287
-304
-321
-338
-355
-371
-386
-401
-416
-432
-448
-465
-483
-502
-521
-540
-559
-576
-593
-610
-627
-643
-660
-676
-692
-707
-723
-739
-754
-769
-784
-798
-813
-828
-842
-855
-867
-878
-889
-900
-911
-922
-933
-944
-954
-964
-974
-984
-994
-1004
-1014
-1024
-1035
-1044
-1054
-1062
-1070
-1078
-1086
-1094
-1102
-1110
-1117
-1123
-1129
-1135
-1141
-1147
-1153
-1159
-1164
-1170
-1175
-1179
-1183
-1186
-1190
-1194
-1198
-1203
-1208
-1213
-1218
-1223
-1227
-1230
-1233
-1235
-1238
-1240
-1241
-1241
-1240
-1240
-1239
-1238
-1238
-1238
-1238
-1239
-1240
-1241
-1242
-1244
-1245
-1246
-1248
-1250
-1251
-1252
-1252
-1251
-1250
-1247
-1245
-1242
-1238
-1235
-1233
-1231
-1229
-1227
-1226
-1224
-1222
-1220
-1217
-1212
-1207
-1202
-1196
-1190
-1184
-1178
-1172
-1166
-1159
-1153
-1146
-1138
-1130
-1120
-1110
-1099
-1088
-1077
-1066
-1056
-1046
-1036
-1027
-1018
-1010
-1002
-995
-986
-977
-967
-957
-947
-936
-925
-913
-902
-890
-879
-868
-856
-845
-833
-821
-809
-797
-784
-771
-757
-742
-725
-708
-691
-672
-654
-636
-618
-600
-582
-564
-547
-529
-512
-496
-479
-463
-448
-432
-416
-400
-384
-369
-353
-338
-322
-308
-293
-278
-263
-248
-234
-220
-205
-191
-176
-161
-146
-131
-117
-103
-90
-77
-65
-52
-40
-28
-16
-4
7
18
30
41
53
64
75
85
95
105
116
126
136
146
156
165
175
183
192
200
209
218
226
235
243
252
261
270
280
289
299
309
319
329
338
347
355
363
370
377
384
391
398
404
411
417
422
428
434
440
446
452
457
462
467
472
477
482
487
491
495
499
504
508
512
517
521
526
531
537
543
549
554
559
564
569
574
579
584
589
594
599
604
609
614
619
624
629
634
638
642
646
650
653
656
660
663
667
670
673
675
677
679
681
684
687
690
694
698
702
706
709
712
715
718
721
724
727
729
732
734
737
739
741
744
746
748
750
752
754
755
757
757
757
757
758
758
759
759
760
761
762
763
765
766
767
769
771
772
772
772
771
770
769
768
767
766
763
760
756
752
748
743
739
734
728
723
717
711
705
698
692
685
679
674
669
665
661
658
655
652
649
646
644
641
639
637
635
633
631
630
628
625
622
618
615
611
607
602
598
595
591
587
583
579
575
571
568
565
562
559
556
554
552
550
549
548
545
543
539
535
532
528
524
520
516
512
507
503
498
493
488
483
478
472
467
462
458
453
448
443
438
433
428
422
417
411
405
399
392
386
380
375
369
364
359
354
348
341
335
328
322
316
310
304
298
292
287
281
275
269
263
257
251
245
239
233
226
220
213
205
197
189
181
174
166
157
147
137
127
117
107
98
89
80
71
63
55
47
38
29
20
12
3
-6
-13
-20
-27
-33
-40
-47
-54
-61
-69
-77
-86
-94
-103
-111
-118
-126
-133
-140
-148
-156
-163
-171
-179
-187
-195
-202
-210
-217
-223
-229
-235
-240
-246
-251
-257
-263
-269
-275
-281
-287
-292
-297
-301
-306
-310
-315
-319
-324
-329
-333
-338
-342
-345
-349
-352
-356
-359
-363
-366
-368
-371
-374
-377
-380
-382
-384
-386
-387
-389
-390
-392
-394
-396
-399
-401
-402
-403
-402
-401
-401
-401
-402
-403
-405
-407
-410
-413
-416
-418
-421
-422
-424
-424
-425
-425
-424
-424
-424
-423
-423
-424
-424
-424
-424
-424
-423
-422
-421
-419
-418
-416
-415
-413
-412
-410
-409
-408
-407
-407
-407
-407
-408
-408
-407
-407
-406
-405
-403
-401
-398
-395
-392
-388
-384
-380
-377
-374
-370
-367
-364
-360
-357
-354
-351
-349
-346
-343
-340
-337
-334
-331
-328
-325
-322
-319
-316
-313
-311
-308
-305
-301
-296
-291
-286
-281
-276
-271
-266
-260
-256
-251
-247
-244
-240
-236
-232
-228
-224
-219
-213
-208
-201
-195
-188
-181
-173
-166
-159
-152
-145
-139
-133
-127
-121
-116
-112
-107
-103
-99
-96
-92
-89
-85
-82
-79
-78
-76
-76
-75
-75
-73
-70
-67
-63
-58
-53
-49
-44
-40
-37
-33
-30
-26
-23
-19
-16
-13
-10
-6
-2
2
7
12
16
21
26
31
35
39
43
46
50
52
55
57
59
60
62
63
63
64
64
65
67
69
71
73
75
78
80
82
84
86
86
87
86
86
85
84
84
84
85
85
86
86
87
87
87
87
88
89
89
90
91
93
95
97
99
102
104
105
107
109
110
111
112
112
113
114
115
115
116
117
118
120
121
122
123
125
126
127
128
128
129
129
130
130
131
131
132
134
135
137
139
141
143
144
144
144
143
142
140
137
134
131
128
125
123
120
116
113
110
106
103
99
96
93
90
87
84
81
78
75
72
69
66
64
61
58
55
52
50
47
44
41
38
35
32
28
24
20
15
10
5
-1
-6
-12
-18
-24
-31
-38
-44
-50
-56
-61
-67
-72
-78
-84
-91
-98
-105
-111
-117
-122
-127
-132
-137
-142
-148
-154
-159
-165
-170
-176
-182
-188
-194
-201
-208
-215
-223
-229
-236
-243
-249
-256
-262
-269
-275
-281
-286
-292
-296
-301
-306
-310
-314
-318
-322
-325
-329
-332
-334
-337
-339
-342
-344
-347
-349
-352
-354
-356
-359
-361
-364
-366
-368
-369
-370
-371
-373
-374
-375
-376
-377
-378
-378
-379
-380
-380
-381
-382
-383
-384
-385
-386
-387
-387
-388
-389
-390
-390
-391
-391
-390
-390
-389
-389
-388
-387
-387
-387
-387
-386
-386
-385
-384
-383
-382
-381
-380
-379
-378
-377
-376
-375
-375
-375
-375
-374
-373
-372
-370
-368
-365
-363
-360
-357
-354
-351
-348
-345
-341
-338
-334
-331
-328
-326
-323
-321
-319
-316
-314
-313
-311
-311
-310
-310
-309
-309
-309
-309
-308
-309
-309
-309
-309
-309
-309
-308
-307
-306
-303
-301
-298
-294
-290
-286
-282
-278
-274
-270
-267
-263
-259
-254
-249
-244
-239
-234
-228
-223
-218
-213
-208
-203
-198
-192
-187
-181
-176
-170
-164
-159
-152
-146
-139
-133
-127
-121
-115
-108
-101
-94
-86
-79
-71
-63
-56
-49
-43
-37
-31
-26
-21
-15
-10
-4
2
7
13
19
24
30
35
41
47
54
60
67
74
80
87
94
100
106
112
118
124
131
137
143
150
157
164
171
179
187
194
201
208
215
222
229
237
244
252
260
268
277
285
294
302
309
317
323
330
337
344
350
357
364
371
379
386
394
401
408
415
423
430
437
444
450
455
461
465
470
475
481
487
493
498
504
510
515
519
522
526
528
530
532
534
537
539
542
545
548
551
555
558
562
565
569
572
576
580
584
588
591
595
599
603
606
610
614
617
620
622
624
625
626
628
629
630
631
633
634
636
637
638
639
640
640
640
640
640
641
642
643
643
644
644
645
645
645
644
644
643
643
644
645
646
648
650
652
653
655
656
656
657
658
658
659
660
661
661
661
661
661
660
659
658
657
655
654
652
651
650
648
647
647
646
646
646
645
644
643
642
641
640
640
639
639
639
639
639
639
639
639
638
638
637
636
634
632
629
627
624
621
618
616
613
609
606
602
597
593
588
583
578
573
568
563
558
553
548
543
538
533
528
522
516
510
504
498
491
484
477
471
465
459
453
447
442
437
431
427
422
418
413
407
402
395
389
383
376
370
363
356
349
342
335
327
320
313
306
300
293
286
279
271
264
256
247
239
231
223
216
209
201
194
187
180
173
166
159
151
143
134
125
116
106
97
88
79
70
61
52
43
35
26
17
8
-1
-10
-20
-29
-39
-49
-59
-68
-78
-88
-98
-109
-119
-129
-139
-149
-159
-169
-178
-186
-194
-203
-211
-219
-227
-234
-242
-250
-257
-264
-272
-279
-287
-295
-304
-313
-322
-331
-341
-350
-359
-368
-377
-385
-394
-402
-411
-420
-430
-439
-449
-458
-467
-477
-485
-494
-503
-511
-520
-528
-535
-543
-551
-558
-566
-575
-583
-592
-601
-611
-620
-629
-638
-647
-656
-665
-673
-681
-687
-694
-700
-705
-711
-717
-723
-729
-734
-739
-744
-748
-751
-755
-758
-761
-764
-766
-769
-771
-773
-775
-778
-780
-782
-785
-787
-789
-790
-792
-792
-793
-793
-794
-794
-794
-795
-795
-795
-795
-795
-795
-795
-796
-797
-799
-801
-803
-805
-806
-808
-808
-809
-809
-809
-809
-808
-808
-807
-806
-805
-804
-803
-803
-802
-801
-800
-799
-798
-797
-796
-795
-794
-794
-792
-791
-789
-787
-785
-782
-780
-778
-776
-775
-773
-771
-770
-767
-765
-762
-759
-756
-752
-749
-745
-741
-737
-733
-729
-724
-719
-714
-709
-704
-699
-694
-689
-684
-680
-676
-672
-668
-664
-661
-657
-654
-650
-646
-642
-637
-632
-626
-621
-616
-610
-605
-600
-594
-588
-581
-575
-568
-562
-556
-550
-544
-538
-532
-526
-520
-513
-506
-499
-493
-486
-480
-474
-468
-463
-457
-451
-446
-440
-434
-428
-423
-417
-412
-407
-403
-398
-393
-388
-384
-379
-373
-368
-362
-355
-349
-343
-336
-329
-323
-316
-310
-303
-296
-289
-282
-275
-267
-259
-250
-241
-232
-222
-213
-204
-195
-186
-177
-168
-158
-148
-139
-130
-120
-112
-103
-94
-86
-78
-69
-60
-52
-43
-34
-25
-17
-7
2
11
20
30
39
49
58
67
76
85
94
103
112
120
128
137
145
153
161
169
176
183
190
196
202
208
215
222
230
238
247
255
263
272
280
287
295
303
311
318
325
333
340
347
354
361
368
374
380
387
393
399
405
411
416
421
425
429
432
435
437
440
442
445
448
451
454
458
461
466
470
474
478
482
486
490
493
497
501
504
507
509
511
513
515
518
520
522
524
526
527
529
531
533
536
539
542
546
549
553
557
561
565
570
574
578
583
587
592
596
601
605
609
613
616
619
621
623
625
627
628
629
631
632
633
635
637
638
640
641
642
643
644
645
645
645
645
644
643
641
638
636
634
632
630
628
626
624
622
620
618
615
613
611
609
606
604
601
598
595
590
586
581
576
570
565
558
552
545
538
532
525
520
514
509
504
500
496
493
489
485
481
477
473
469
465
463
460
458
456
453
450
447
443
439
435
431
427
422
418
414
410
406
403
399
396
392
389
385
382
379
375
371
368
364
360
356
352
348
345
342
338
335
332
329
326
322
319
315
311
307
303
299
296
292
288
284
281
277
273
268
264
260
255
251
247
242
238
234
230
226
222
217
212
207
203
198
193
189
184
180
176
171
167
162
158
154
150
146
142
139
135
132
128
124
120
116
112
109
105
101
96
91
87
83
79
75
71
67
63
60
56
53
49
47
44
41
39
36
33
30
27
24
21
18
16
14
13
11
9
7
4
2
-1
-3
-4
-6
-8
-9
-11
-12
-14
-15
-17
-19
-22
-24
-27
-30
-33
-37
-39
-42
-44
-45
-47
-49
-50
-52
-54
-56
-58
-60
-62
-65
-68
-72
-75
-79
-83
-87
-91
-96
-100
-104
-108
-112
-115
-119
-122
-125
-129
-132
-136
-140
-144
-147
-150
-153
-156
-159
-161
-163
-164
-166
-167
-169
-170
-171
-173
-174
-176
-177
-178
-179
-180
-181
-181
-182
-183
-184
-184
-184
-184
-185
-185
-186
-187
-188
-190
-191
-192
-193
-194
-195
-195
-196
-196
-197
-198
-198
-198
-199
-199
-200
-200
-201
-201
-201
-202
-203
-204
-205
-206
-208
-210
-211
-213
-215
-217
-220
-222
-225
-227
-229
-231
-232
-234
-236
-237
-239
-241
-242
-243
-244
-245
-246
-247
-248
-250
-251
-252
-254
-255
-256
-258
-259
-260
-262
-263
-264
-264
-265
-265
-265
-265
-266
-267
-268
-269
-270
-271
-272
-273
-275
-276
-278
-280
-283
-285
-288
-292
-295
-299
-303
-307
-311
-315
-319
-323
-327
-331
-334
-338
-342
-345
-349
-352
-354
-356
-359
-361
-363
-365
-367
-370
-372
-375
-377
-380
-382
-384
-386
-388
-390
-391
-393
-394
-395
-396
-396
-398
-399
-400
-402
-404
-406
-408
-410
-412
-414
-415
-417
-418
-419
-420
-421
-421
-421
-421
-420
-419
-419
-418
-417
-416
-414
-413
-411
-409
-407
-405
-404
-402
-400
-398
-396
-395
-393
-392
-390
-388
-386
-384
-381
-378
-375
-371
-367
-363
-359
-356
-352
-349
-345
-341
-337
-333
-328
-324
-320
-317
-314
-310
-307
-303
-299
-294
-291
-287
-283
-279
-276
-272
-268
-264
-259
-255
-250
-245
-241
-236
-231
-225
-220
-214
-208
-203
-197
-192
-187
-181
-176
-171
-166
-160
-155
-150
-145
-140
-135
-130
-126
-121
-116
-112
-107
-102
-97
-92
-87
-82
-76
-71
-66
-62
-57
-53
-48
-44
-40
-36
-32
-28
-24
-21
-18
-14
-11
-8
-4
-1
2
5
9
13
17
21
26
31
36
41
46
51
56
60
65
69
73
77
80
84
87
89
92
95
97
100
103
105
108
110
113
115
117
120
122
124
126
127
129
131
133
135
137
140
142
145
147
149
152
154
157
159
161
163
165
166
168
169
171
173
174
176
177
179
180
181
182
183
184
185
186
188
189
190
191
192
194
195
197
199
201
204
206
208
211
213
215
217
219
220
221
222
222
223
223
224
225
225
227
227
228
229
229
229
229
228
228
227
226
225
224
222
221
220
218
216
215
213
210
208
205
203
200
198
195
193
191
188
186
183
180
178
175
173
170
168
165
162
160
157
155
153
151
149
147
146
144
142
141
139
138
137
135
133
132
130
128
126
124
122
120
118
116
114
113
112
111
110
109
108
107
107
106
106
105
105
104
103
102
102
101
99
98
97
95
93
90
87
83
80
76
73
70
67
64
62
60
58
56
55
53
51
50
49
47
46
45
44
43
43
43
42
42
42
42
42
42
42
42
43
43
44
45
46
47
48
49
50
52
54
56
58
61
64
66
68
71
73
75
78
80
83
86
89
92
95
98
102
105
109
113
117
120
124
127
130
133
135
138
141
143
146
149
153
156
159
163
167
170
174
178
182
185
189
192
196
199
202
205
208
210
213
216
219
223
227
230
234
238
242
245
248
250
252
254
256
257
259
260
262
263
264
265
266
267
268
269
271
272
274
275
278
280
282
283
285
286
288
289
290
291
291
292
292
293
294
295
296
298
299
301
302
303
305
306
307
309
310
312
313
315
317
319
321
322
324
324
325
325
325
324
324
323
323
323
322
322
322
321
321
321
321
322
322
322
322
322
322
322
322
321
320
319
318
317
315
314
312
311
310
309
308
306
305
303
301
299
297
294
291
288
284
281
277
273
270
266
262
258
254
249
245
241
236
232
228
223
219
214
209
203
198
191
184
177
170
163
156
149
143
136
130
123
116
108
101
94
87
79
72
65
59
52
46
40
34
28
22
16
10
3
-3
-10
-17
-24
-31
-37
-44
-51
-57
-64
-70
-76
-82
-88
-94
-100
-106
-112
-119
-125
-131
-137
-143
-148
-153
-158
-162
-166
-170
-174
-179
-183
-187
-192
-196
-200
-205
-209
-214
-219
-224
-229
-235
-240
-246
-252
-258
-264
-270
-276
-281
-287
-293
-299
-304
-309
-313
-317
-321
-324
-327
-330
-333
-336
-338
-341
-343
-345
-347
-349
-350
-352
-354
-356
-358
-359
-361
-362
-363
-364
-366
-367
-369
-371
-372
-374
-376
-377
-378
-379
-380
-380
-382
-382
-383
-383
-384
-383
-383
-382
-381
-381
-380
-379
-379
-378
-378
-378
-379
-379
-380
-381
-382
-384
-385
-387
-389
-391
-394
-396
-399
-401
-403
-405
-406
-407
-407
-407
-407
-407
-407
-407
-407
-407
-407
-407
-407
-407
-407
-407
-407
-407
-406
-406
-405
-405
-404
-404
-403
-403
-403
-402
-401
-400
-399
-397
-396
-394
-391
-389
-387
-385
-383
-381
-379
-377
-375
-374
-372
-371
-370
-369
-368
-366
-364
-362
-360
-357
-355
-352
-349
-347
-344
-342
-339
-337
-334
-331
-329
-326
-322
-319
-316
-313
-309
-306
-303
-299
-296
-293
-290
-287
-283
-280
-277
-274
-271
-269
-266
-264
-261
-258
-255
-252
-248
-244
-240
-236
-231
-227
-223
-219
-215
-211
-207
-203
-198
-194
-189
-184
-179
-174
-168
-163
-158
-153
-148
-144
-140
-135
-131
-127
-123
-119
-115
-111
-106
-102
-97
-93
-89
-85
-82
-79
-75
-72
-69
-67
-64
-62
-60
-58
-56
-55
-53
-51
-50
-48
-47
-45
-43
-41
-39
-36
-34
-32
-29
-27
-24
-21
-18
-15
-12
-9
-6
-2
1
5
8
11
14
18
21
24
27
30
33
36
39
43
46
49
53
56
59
63
66
70
73
76
79
82
85
88
91
94
96
100
103
106
110
114
118
122
125
128
131
134
136
139
141
143
145
146
148
149
151
152
153
154
154
155
156
158
160
161
163
165
166
168
170
172
173
175
176
177
178
179
181
182
184
185
187
188
190
191
192
192
193
194
195
196
197
198
198
198
198
197
196
195
194
193
192
192
191
191
191
190
190
189
189
188
188
187
187
187
187
188
188
188
189
189
189
189
189
189
190
190
190
191
191
191
192
192
193
194
195
196
196
196
196
196
195
195
194
193
192
191
190
190
189
188
188
188
188
189
190
191
192
194
195
197
198
199
200
201
201
201
201
200
200
199
198
197
196
195
194
194
193
191
190
189
188
187
186
186
185
185
184
183
183
181
180
179
177
176
174
172
171
169
168
166
165
165
164
163
163
163
163
163
163
162
162
161
161
160
159
158
157
156
155
154
153
153
152
152
152
151
151
151
150
149
148
147
145
143
142
140
138
137
135
134
133
132
131
130
130
129
128
127
126
125
124
123
123
121
120
119
117
116
114
112
111
109
107
105
104
103
101
100
99
98
97
97
96
96
96
96
96
97
98
99
100
101
102
103
104
104
105
105
106
106
106
106
106
106
105
105
105
104
104
104
103
103
102
101
100
99
98
97
96
94
93
92
91
90
89
89
89
89
89
89
90
90
90
90
90
90
89
88
87
86
84
83
83
82
82
81
80
79
79
78
78
78
77
77
77
77
77
77
77
77
77
78
78
78
78
78
78
79
79
80
80
80
79
79
79
78
77
77
76
75
75
74
73
73
73
73
73
73
74
74
75
75
76
77
78
79
80
81
82
83
83
84
85
86
87
87
88
89
89
89
90
90
90
90
91
91
91
90
90
89
88
87
86
86
85
85
84
84
84
85
85
85
86
86
86
86
86
86
86
86
86
85
85
85
84
83
82
81
80
79
78
76
74
72
71
69
67
65
64
62
61
60
59
58
57
56
56
55
54
52
51
49
48
46
43
41
38
35
32
29
25
21
17
13
9
6
2
-2
-6
-9
-13
-16
-19
-22
-24
-26
-29
-31
-34
-37
-41
-45
-49
-53
-57
-61
-65
-69
-73
-78
-83
-88
-93
-99
-105
-110
-116
-122
-127
-132
-136
-141
-145
-149
-152
-156
-159
-162
-166
-169
-172
-175
-178
-181
-184
-188
-191
-194
-198
-201
-205
-208
-212
-216
-220
-225
-229
-233
-237
-241
-245
-249
-253
-257
-262
-265
-269
-272
-275
-277
-279
-281
-284
-286
-288
-291
-294
-297
-301
-304
-308
-312
-316
-320
-323
-327
-330
-333
-336
-338
-341
-343
-345
-347
-349
-352
-354
-356
-357
-359
-361
-362
-363
-364
-365
-366
-366
-367
-367
-368
-368
-368
-369
-369
-370
-370
-370
-370
-370
-370
-370
-369
-368
-368
-367
-366
-364
-363
-362
-361
-360
-359
-358
-356
-355
-353
-351
-349
-347
-346
-344
-343
-341
-340
-339
-338
-337
-336
-335
-333
-332
-331
-329
-328
-326
-324
-323
-321
-319
-318
-316
-315
-313
-312
-310
-308
-306
-304
-302
-299
-297
-295
-292
-290
-287
-285
-282
-280
-277
-274
-271
-268
-265
-262
-258
-255
-251
-248
-244
-241
-238
-235
-232
-230
-227
-225
-222
-219
-216
-213
-210
-207
-204
-201
-198
-195
-192
-189
-186
-183
-180
-177
-173
-170
-166
-162
-158
-154
-150
-146
-142
-139
-135
-132
-128
-125
-122
-119
-116
-113
-110
-107
-103
-100
-96
-93
-89
-86
-82
-78
-75
-71
-67
-63
-59
-55
-51
-47
-44
-41
-38
-35
-32
-30
-27
-25
-22
-19
-17
-14
-11
-8
-6
-3
-1
2
4
6
8
10
12
14
15
17
18
20
22
24
26
27
29
31
32
33
34
36
37
39
40
42
44
45
47
49
51
53
54
56
57
58
59
60
61
62
63
65
66
67
68
69
70
71
72
73
74
75
76
77
79
80
81
83
85
87
90
92
96
99
102
106
110
113
117
120
124
127
131
134
137
140
144
148
152
156
161
165
169
173
177
182
186
191
195
200
205
210
215
221
226
231
235
240
244
249
253
257
261
265
268
272
276
280
283
287
291
294
298
301
305
308
311
314
317
320
323
327
330
333
336
339
342
345
348
351
353
356
359
361
363
366
368
370
373
375
376
378
380
381
383
385
386
388
389
391
391
392
392
392
392
392
392
393
393
394
394
394
394
394
395
395
396
396
396
397
397
398
398
398
398
398
398
398
397
397
396
395
394
393
392
391
389
388
387
386
385
384
383
382
381
381
380
380
380
379
379
379
379
379
378
378
377
376
375
375
374
373
373
373
372
372
371
370
370
369
368
366
365
364
363
362
361
360
360
359
359
358
358
357
357
356
355
353
352
350
349
347
346
345
344
343
341
340
338
336
334
332
330
327
325
322
320
317
315
312
309
306
302
299
295
292
288
285
281
277
273
269
265
261
256
252
248
244
240
236
232
228
223
220
215
212
207
203
199
194
189
185
180
175
170
165
160
155
150
145
140
135
129
123
117
111
105
99
93
88
82
77
72
67
62
56
52
47
42
38
33
28
23
19
14
9
5
0
-6
-11
-16
-22
-27
-32
-38
-43
-49
-54
-59
-64
-69
-75
-80
-85
-91
-97
-102
-108
-115
-120
-126
-132
-138
-144
-149
-155
-161
-166
-172
-177
-183
-189
-194
-199
-204
-209
-213
-218
-222
-226
-230
-234
-238
-243
-248
-252
-257
-262
-268
-273
-278
-283
-288
-293
-298
-303
-307
-312
-316
-320
-324
-329
-333
-337
-340
-344
-348
-352
-356
-361
-365
-369
-374
-379
-383
-388
-392
-397
-402
-407
-413
-419
-424
-430
-435
-440
-444
-449
-453
-457
-461
-465
-469
-472
-476
-479
-483
-486
-490
-493
-497
-501
-504
-508
-511
-514
-518
-521
-524
-527
-530
-533
-535
-538
-540
-542
-544
-545
-547
-548
-549
-549
-550
-549
-549
-549
-548
-548
-547
-547
-547
-546
-546
-546
-545
-545
-544
-543
-542
-541
-540
-538
-536
-533
-530
-527
-524
-520
-516
-513
-509
-506
-502
-499
-495
-492
-488
-484
-480
-476
-472
-467
-463
-458
-454
-450
-446
-442
-438
-434
-430
-426
-422
-418
-414
-410
-405
-401
-396
-392
-388
-384
-380
-375
-371
-367
-363
-360
-356
-352
-349
-345
-342
-338
-335
-331
-328
-325
-321
-318
-314
-311
-307
-303
-300
-296
-292
-289
-285
-282
-278
-274
-270
-267
-263
-259
-255
-251
-247
-243
-238
-234
-230
-226
-222
-219
-215
-211
-208
-204
-200
-197
-193
-189
-185
-182
-178
-174
-170
-165
-161
-156
-150
-145
-140
-135
-130
-125
-120
-115
-111
-106
-101
-97
-92
-88
-84
-80
-76
-71
-67
-63
-59
-55
-52
-48
-44
-40
-36
-32
-28
-24
-20
-16
-12
-8
-4
0
4
8
13
17
21
24
28
31
35
38
42
45
49
53
57
61
66
70
75
80
84
89
93
97
102
106
110
114
118
123
127
131
135
139
143
147
150
154
157
160
164
167
171
175
178
182
186
190
194
198
203
207
211
216
220
225
230
235
240
245
250
255
260
264
269
273
278
282
286
290
295
299
303
307
311
315
319
322
326
329
332
335
338
341
343
345
348
350
352
354
356
358
360
362
364
366
367
369
371
373
375
377
379
381
384
387
389
392
394
396
398
399
401
402
404
405
406
407
408
409
409
410
410
410
411
411
411
412
412
412
412
411
411
411
411
410
410
411
411
411
411
411
411
411
411
411
411
411
411
411
410
410
409
408
407
406
405
403
401
399
397
394
392
389
387
384
381
379
377
374
371
369
366
363
361
358
356
353
350
348
346
343
341
339
336
334
331
329
327
325
323
321
320
318
317
315
313
312
309
307
305
302
299
297
295
292
289
287
284
282
279
277
274
271
269
267
264
262
260
258
256
253
251
249
246
243
240
237
234
231
228
225
222
219
216
214
211
208
206
204
202
200
198
196
194
191
189
187
184
182
179
177
174
171
168
165
162
159
155
152
148
145
141
137
133
130
127
123
120
117
114
111
108
105
102
99
97
94
92
89
87
85
83
81
79
77
75
73
71
69
67
64
62
59
56
53
50
47
43
40
36
32
28
24
20
16
12
8
4
0
-4
-7
-11
-15
-19
-23
-27
-31
-35
-39
-43
-47
-50
-54
-58
-61
-65
-68
-72
-76
-79
-83
-86
-90
-93
-95
-98
-101
-104
-107
-110
-113
-116
-119
-122
-125
-127
-130
-133
-136
-139
-143
-146
-149
-153
-156
-160
-163
-167
-171
-174
-178
-181
-185
-188
-191
-195
-199
-202
-206
-209
-213
-216
-220
-223
-227
-230
-234
-238
-242
-246
-250
-254
-257
-260
-264
-267
-270
-273
-277
-280
-284
-288
-291
-295
-299
-302
-306
-310
-313
-317
-320
-323
-326
-330
-333
-336
-338
-341
-344
-346
-349
-351
-353
-354
-356
-358
-359
-361
-362
-363
-364
-365
-366
-366
-367
-368
-369
-370
-372
-373
-374
-376
-377
-379
-380
-381
-382
-383
-384
-385
-385
-386
-386
-386
-385
-385
-385
-384
-384
-383
-382
-381
-380
-378
-376
-374
-372
-370
-367
-365
-363
-360
-358
-356
-353
-351
-348
-345
-343
-340
-337
-334
-331
-328
-324
-321
-317
-314
-310
-306
-302
-298
-293
-289
-285
-280
-276
-273
-269
-265
-261
-258
-254
-250
-246
-242
-237
-232
-227
-222
-217
-212
-207
-202
-198
-193
-188
-184
-179
-174
-170
-166
-162
-158
-154
-151
-147
-144
-140
-136
-133
-130
-126
-123
-120
-117
-113
-110
-108
-105
-102
-100
-97
-95
-93
-90
-88
-86
-84
-82
-80
-79
-77
-75
-72
-70
-68
-65
-62
-60
-57
-54
-51
-49
-46
-44
-41
-39
-37
-35
-33
-32
-30
-28
-26
-24
-23
-21
-19
-17
-15
-13
-11
-9
-6
-3
-1
2
6
9
12
15
18
20
23
25
28
30
32
34
35
36
38
39
40
41
43
44
45
47
48
49
51
52
53
54
55
56
56
56
56
56
55
55
54
54
53
53
52
52
51
51
50
50
50
50
51
51
51
52
52
53
53
53
54
54
54
53
53
52
51
51
50
49
49
48
48
47
47
46
46
46
46
47
47
47
48
49
50
51
51
52
53
55
56
58
59
61
62
64
65
66
67
68
69
70
71
71
72
73
73
74
75
75
76
77
79
80
82
83
84
86
88
89
90
92
93
94
95
96
97
98
98
100
101
102
104
105
105
106
108
109
110
112
113
115
117
119
121
123
126
128
130
132
134
136
137
139
141
142
144
145
146
147
148
149
150
151
152
153
154
155
155
156
157
158
159
160
161
162
163
164
165
167
168
169
170
171
172
174
175
176
178
179
181
182
183
184
185
186
187
187
187
188
188
188
188
188
187
187
186
185
185
184
184
183
182
182
181
181
180
179
178
177
177
176
176
176
176
176
176
176
176
176
176
176
175
175
175
174
174
173
173
172
172
171
171
170
170
169
168
168
167
166
166
166
165
165
165
164
164
163
163
162
161
161
160
159
158
157
156
156
155
154
154
154
153
153
153
153
153
153
154
154
154
154
154
154
154
154
153
153
152
151
150
149
147
146
145
144
142
141
140
138
137
136
134
133
132
131
129
128
127
125
124
122
120
118
116
114
112
111
109
107
105
102
100
97
95
93
90
88
86
84
83
81
80
78
77
76
74
73
72
70
69
67
66
64
62
61
59
56
54
52
49
47
44
42
40
37
35
33
31
28
26
24
22
20
17
15
12
10
7
5
2
0
-2
-4
-6
-8
-10
-12
-14
-17
-19
-22
-24
-26
-29
-31
-33
-35
-37
-39
-41
-43
-45
-47
-49
-51
-53
-55
-57
-58
-60
-62
-63
-64
-66
-68
-69
-71
-72
-73
-75
-76
-77
-78
-79
-80
-81
-82
-83
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-95
-96
-97
-97
-97
-98
-98
-98
-97
-97
-96
-95
-94
-94
-93
-92
-92
-91
-91
-91
-91
-91
-91
-90
-90
-89
-88
-87
-86
-85
-84
-83
-83
-82
-82
-81
-81
-81
-81
-81
-80
-80
-80
-79
-79
-79
-79
-79
-79
-79
-80
-80
-81
-81
-82
-83
-83
-84
-85
-85
-86
-87
-87
-88
-89
-90
-91
-92
-93
-94
-94
-95
-95
-96
-96
-96
-97
-97
-97
-97
-98
-99
-100
-101
-102
-103
-105
-106
-106
-107
-108
-108
-108
-108
-108
-107
-107
-106
-106
-106
-106
-105
-105
-105
-106
-106
-106
-106
-106
-106
-107
-107
-108
-109
-109
-110
-111
-112
-113
-113
-114
-115
-116
-117
-118
-118
-119
-120
-121
-122
-122
-123
-124
-124
-125
-125
-126
-126
-127
-128
-129
-130
-131
-132
-133
-134
-135
-136
-137
-138
-138
-139
-140
-140
-140
-141
-141
-141
-142
-142
-143
-143
-144
-144
-144
-145
-145
-145
-145
-145
-145
-145
-145
-144
-144
-144
-143
-143
-142
-142
-141
-141
-141
-140
-140
-139
-138
-138
-137
-136
-135
-134
-133
-132
-131
-131
-130
-129
-129
-128
-128
-128
-128
-128
-128
-128
-128
-127
-127
-127
-126
-125
-125
-124
-123
-122
-121
-120
-119
-118
-117
-115
-114
-112
-111
-109
-108
-106
-104
-103
-101
-100
-98
-96
-95
-93
-92
-90
-89
-87
-86
-84
-83
-81
-79
-77
-75
-72
-70
-68
-66
-63
-61
-59
-56
-54
-51
-49
-46
-44
-42
-40
-37
-35
-33
-32
-30
-28
-26
-25
-23
-22
-21
-21
-20
-19
-19
-18
-18
-17
-16
-16
-15
-14
-14
-14
-13
-13
-13
-13
-13
-12
-12
-12
-11
-11
-10
-10
-9
-9
-8
-8
-7
-7
-7
-6
-6
-6
-6
-5
-5
-4
-4
-3
-2
-1
0
0
1
2
3
4
5
5
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
6
6
6
7
7
7
7
8
8
9
9
10
10
11
12
13
14
14
15
16
16
17
17
17
18
19
19
20
21
22
23
24
25
26
27
28
29
31
32
34
36
38
40
43
45
48
50
53
55
58
60
62
64
66
68
70
72
73
75
77
78
80
81
82
84
85
87
88
90
92
93
95
97
100
102
104
106
108
111
113
115
117
119
120
122
123
124
125
126
127
129
130
131
132
134
135
136
137
138
140
141
143
145
146
148
149
151
152
154
155
156
157
158
159
160
160
161
162
162
163
163
164
164
164
164
164
164
164
164
164
164
164
164
163
163
163
163
164
164
165
166
166
167
167
168
168
168
169
169
170
170
171
172
173
174
176
177
178
179
179
180
181
181
181
181
181
181
181
181
180
180
179
178
177
176
175
174
173
171
170
169
167
166
165
164
162
162
160
159
158
157
156
155
154
153
152
151
150
149
147
146
145
143
142
140
139
137
135
133
131
130
128
126
124
122
120
118
116
113
111
109
106
104
102
99
97
94
91
89
86
83
81
78
75
72
69
66
63
59
55
52
48
44
40
37
34
31
29
26
23
20
17
14
11
9
7
5
3
1
-2
-4
-7
-10
-12
-15
-17
-20
-22
-25
-27
-30
-32
-35
-38
-40
-43
-45
-48
-50
-53
-55
-57
-59
-61
-63
-65
-67
-69
-71
-73
-75
-77
-78
-80
-82
-83
-84
-86
-87
-89
-90
-91
-93
-95
-96
-98
-99
-101
-102
-104
-106
-108
-110
-112
-114
-116
-117
-119
-121
-123
-124
-126
-127
-128
-130
-131
-132
-132
-133
-133
-134
-134
-134
-134
-134
-134
-135
-135
-135
-136
-136
-137
-138
-139
-140
-140
-142
-143
-144
-145
-146
-147
-148
-149
-150
-151
-152
-153
-153
-153
-153
-153
-153
-153
-154
-154
-154
-154
-154
-154
-154
-154
-154
-154
-154
-154
-154
-154
-155
-155
-155
-156
-156
-156
-155
-155
-155
-155
-154
-154
-153
-153
-152
-152
-151
-151
-150
-150
-150
-150
-150
-150
-150
-150
-150
-150
-150
-150
-150
-150
-150
-150
-150
-150
-150
-150
-150
-150
-150
-149
-149
-149
-148
-148
-147
-146
-146
-145
-144
-143
-142
-141
-140
-139
-138
-137
-136
-135
-133
-132
-131
-130
-129
-128
-127
-126
-125
-124
-122
-121
-119
-117
-115
-113
-111
-109
-107
-105
-102
-100
-97
-95
-93
-91
-89
-87
-85
-83
-81
-79
-76
-74
-72
-70
-68
-65
-63
-61
-59
-57
-54
-52
-50
-48
-46
-44
-41
-39
-37
-34
-32
-30
-28
-25
-23
-21
-18
-16
-14
-12
-9
-7
-5
-3
0
2
5
7
9
11
13
15
17
19
21
23
25
27
30
32
35
38
41
44
47
50
53
56
58
61
63
66
68
70
72
73
75
77
79
80
82
83
85
86
88
90
92
93
95
97
99
101
102
104
105
106
108
109
110
111
113
114
116
118
119
120
122
123
124
125
126
126
127
128
129
130
132
133
134
136
137
138
139
140
141
142
143
144
144
145
146
146
147
148
148
149
149
150
150
150
150
150
150
150
150
149
149
149
148
148
147
147
147
147
147
146
146
146
146
146
147
147
147
147
147
147
147
147
147
147
147
147
147
147
147
147
147
147
147
146
146
146
145
145
145
146
146
146
147
147
148
148
148
148
148
148
147
147
148
148
148
148
149
149
150
151
152
153
153
154
155
156
156
157
158
158
159
159
160
160
161
161
161
162
162
162
162
161
161
161
160
160
160
159
159
159
158
158
157
156
155
154
152
150
148
146
143
140
137
134
131
127
124
120
117
114
111
108
105
101
98
95
92
89
86
83
81
78
75
72
69
66
63
60
57
54
50
47
44
41
37
34
31
28
25
22
19
16
13
11
8
6
3
1
-1
-3
-5
-7
-9
-11
-13
-15
-17
-20
-22
-24
-26
-28
-31
-33
-35
-38
-40
-42
-44
-46
-48
-50
-52
-54
-56
-58
-60
-62
-64
-67
-69
-72
-74
-76
-78
-80
-82
-85
-87
-89
-92
-94
-96
-99
-101
-104
-106
-108
-110
-112
-115
-117
-119
-121
-123
-125
-126
-128
-129
-131
-132
-134
-135
-136
-138
-139
-140
-142
-143
-145
-146
-148
-149
-151
-153
-154
-156
-159
-161
-163
-165
-167
-168
-170
-171
-173
-174
-175
-176
-176
-177
-178
-178
-179
-179
-179
-179
-179
-179
-179
-179
-179
-179
-178
-178
-178
-178
-178
-177
-177
-177
-177
-177
-176
-176
-176
-175
-175
-174
-173
-173
-172
-172
-171
-171
-170
-169
-169
-168
-168
-167
-166
-165
-164
-163
-162
-161
-160
-158
-157
-156
-154
-153
-151
-150
-148
-147
-145
-144
-142
-141
-139
-138
-136
-135
-133
-132
-130
-129
-127
-125
-123
-121
-119
-118
-116
-114
-113
-111
-110
-108
-107
-106
-104
-103
-101
-100
-98
-96
-94
-93
-91
-89
-87
-85
-83
-81
-79
-77
-75
-73
-71
-69
-67
-65
-63
-61
-59
-58
-56
-54
-52
-51
-49
-47
-46
-44
-43
-41
-40
-38
-36
-34
-33
-31
-29
-27
-24
-22
-20
-18
-16
-15
-13
-11
-9
-7
-6
-5
-3
-2
-1
-1
0
1
1
2
2
3
3
4
4
5
5
6
6
7
8
8
9
9
10
10
10
11
12
12
13
13
14
14
15
15
16
17
18
18
19
20
21
22
23
23
24
25
26
27
27
28
29
30
31
32
33
33
34
35
35
36
36
37
37
38
38
38
39
39
39
39
39
39
39
38
38
37
36
35
35
34
33
33
32
32
31
31
30
30
30
29
29
28
28
27
27
26
25
24
23
22
21
20
19
18
17
15
14
13
11
10
9
7
6
5
4
2
1
0
-1
-1
-2
-2
-3
-3
-4
-4
-5
-5
-6
-6
-7
-7
-8
-8
-9
-9
-10
-10
-11
-11
-12
-13
-14
-14
-15
-16
-16
-17
-17
-17
-18
-18
-18
-17
-17
-17
-17
-16
-16
-15
-15
-15
-14
-14
-14
-13
-13
-13
-13
-12
-12
-12
-11
-11
-10
-10
-9
-9
-8
-8
-7
-7
-6
-5
-5
-4
-3
-2
-2
-1
0
1
2
3
4
4
5
6
7
7
8
9
10
12
13
15
16
18
20
21
23
25
26
28
30
31
33
35
36
38
40
43
45
47
49
51
53
54
56
58
60
62
63
65
67
69
71
74
76
79
81
83
86
88
90
92
95
97
99
102
104
107
109
111
113
116
118
120
123
125
128
130
133
135
137
139
141
143
145
147
149
152
153
155
157
159
160
162
164
165
167
168
168
169
170
170
171
172
172
173
173
174
174
174
175
175
176
176
176
176
176
176
175
174
173
172
171
170
168
167
165
164
163
162
160
159
157
155
153
151
149
146
144
142
140
138
135
133
131
129
126
124
122
120
118
116
114
113
111
109
108
106
104
102
100
98
96
94
92
90
88
86
84
82
80
78
76
73
71
69
67
64
62
59
57
54
52
50
48
46
44
42
40
39
37
36
34
32
30
29
26
24
22
20
18
15
13
11
9
6
3
1
-2
-4
-7
-9
-12
-14
-16
-19
-21
-24
-26
-28
-31
-32
-34
-36
-38
-40
-42
-43
-45
-46
-47
-49
-50
-51
-52
-53
-55
-56
-58
-59
-61
-62
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-77
-78
-79
-79
-80
-80
-80
-81
-81
-82
-82
-83
-83
-83
-83
-83
-84
-84
-85
-85
-86
-86
-86
-86
-87
-87
-87
-87
-88
-88
-89
-89
-90
-90
-91
-91
-92
-92
-93
-93
-94
-94
-95
-95
-96
-97
-98
-99
-99
-100
-100
-101
-101
-102
-102
-103
-103
-103
-104
-104
-104
-104
-103
-103
-103
-102
-102
-102
-101
-101
-100
-100
-99
-98
-97
-97
-96
-96
-95
-95
-94
-94
-93
-93
-93
-92
-92
-91
-91
-91
-91
-91
-90
-90
-90
-90
-90
-89
-89
-89
-89
-89
-89
-89
-88
-88
-88
-88
-87
-87
-86
-86
-85
-85
-84
-84
-84
-84
-84
-84
-84
-84
-84
-84
-85
-85
-85
-86
-86
-86
-87
-87
-87
-87
-87
-87
-87
-87
-87
-87
-87
-87
-87
-88
-88
-89
-90
-91
-91
-92
-94
-95
-96
-97
-98
-99
-100
-100
-101
-101
-102
-102
-102
-102
-102
-103
-103
-103
-103
-103
-103
-103
-103
-103
-103
-104
-104
-104
-104
-104
-103
-103
-103
-102
-102
-101
-100
-99
-98
-97
-96
-95
-94
-93
-91
-90
-89
-88
-87
-86
-85
-84
-83
-82
-81
-80
-79
-79
-78
-77
-76
-75
-74
-73
-72
-71
-69
-68
-66
-65
-63
-62
-60
-59
-58
-57
-55
-54
-53
-52
-50
-49
-48
-47
-47
-46
-45
-44
-43
-42
-41
-41
-40
-40
-39
-38
-38
-38
-38
-38
-38
-38
-38
-38
-38
-37
-37
-36
-36
-35
-35
-34
-33
-33
-32
-31
-31
-30
-30
-29
-29
-28
-27
-27
-26
-25
-25
-24
-23
-22
-21
-20
-19
-18
-16
-15
-14
-12
-10
-8
-6
-4
-2
0
3
5
7
10
12
14
17
19
22
24
27
30
33
36
38
41
44
47
51
54
57
61
64
67
71
74
77
81
84
88
91
95
98
101
104
107
110
112
115
117
120
123
125
127
130
132
135
137
139
142
144
146
148
150
152
154
156
158
160
162
164
167
169
171
173
175
176
178
180
182
183
184
185
186
188
189
190
191
192
193
194
195
196
197
198
199
200
200
201
202
203
204
205
206
207
207
208
209
210
211
211
212
212
212
212
212
212
212
212
212
212
213
213
213
213
214
214
214
214
214
214
214
214
214
214
214
214
214
214
214
214
214
214
214
214
214
214
214
215
215
215
215
215
215
216
216
216
216
216
216
216
216
216
216
216
216
216
216
216
215
215
215
215
214
214
213
213
212
212
211
210
209
209
208
207
206
205
203
201
199
198
195
193
190
188
185
182
178
175
172
169
165
162
158
155
151
148
144
140
136
132
127
123
118
114
110
105
101
97
93
89
84
80
76
72
68
64
60
56
51
47
43
40
36
32
28
24
20
16
12
8
4
0
-4
-9
-13
-17
-21
-25
-29
-33
-37
-41
-44
-48
-51
-55
-58
-61
-64
-67
-71
-74
-77
-80
-84
-87
-90
-93
-97
-100
-104
-107
-111
-114
-118
-121
-125
-128
-132
-135
-139
-142
-145
-148
-151
-154
-156
-159
-161
-163
-165
-167
-169
-170
-172
-173
-175
-176
-177
-179
-180
-182
-183
-184
-185
-186
-187
-188
-189
-189
-190
-190
-191
-191
-191
-191
-191
-191
-192
-192
-192
-192
-192
-192
-192
-192
-192
-192
-192
-193
-193
-193
-193
-194
-194
-194
-194
-194
-194
-195
-195
-195
-195
-194
-194
-194
-194
-194
-194
-195
-195
-195
-195
-195
-195
-195
-195
-195
-195
-195
-195
-195
-195
-195
-196
-196
-196
-197
-197
-198
-198
-199
-199
-199
-200
-201
-201
-202
-202
-203
-203
-203
-204
-204
-204
-205
-205
-205
-206
-206
-205
-205
-205
-205
-205
-204
-204
-204
-204
-203
-203
-203
-202
-202
-201
-201
-200
-200
-200
-199
-199
-198
-198
-198
-197
-197
-196
-196
-195
-195
-194
-194
-193
-193
-192
-191
-191
-190
-189
-188
-187
-186
-184
-183
-182
-181
-179
-177
-176
-174
-172
-171
-169
-167
-165
-163
-162
-160
-158
-157
-155
-154
-152
-150
-148
-147
-145
-143
-141
-139
-136
-134
-132
-129
-127
-125
-122
-120
-117
-115
-112
-109
-107
-104
-101
-98
-96
-94
-91
-89
-86
-84
-81
-79
-77
-74
-72
-69
-66
-64
-61
-58
-55
-52
-49
-47
-44
-41
-38
-35
-32
-29
-26
-23
-20
-17
-14
-12
-9
-6
-4
-1
2
4
7
10
12
15
18
20
23
25
27
30
32
34
37
39
41
43
45
47
49
51
53
55
57
59
60
62
64
66
68
69
71
73
75
77
79
81
83
85
87
89
91
93
95
97
99
101
103
105
107
109
111
113
114
116
118
119
121
122
124
125
127
128
129
130
132
133
134
136
137
139
141
142
144
145
147
149
150
152
154
155
157
159
160
162
163
165
166
168
169
171
172
174
175
176
177
178
179
180
181
182
182
183
183
184
184
184
185
185
185
186
186
186
187
187
187
187
187
187
187
187
186
186
186
186
185
185
185
185
184
184
183
183
182
182
181
180
180
179
178
178
177
176
175
174
173
172
171
170
169
167
166
164
163
161
159
158
156
154
153
150
148
147
145
143
141
140
138
136
135
133
131
130
128
126
124
122
120
118
116
114
111
109
107
104
102
100
98
96
94
93
91
89
87
86
84
83
81
80
79
78
76
75
73
72
71
69
68
66
64
63
61
60
58
57
55
54
52
50
49
47
45
43
41
39
38
36
35
34
32
31
30
28
27
26
25
24
23
22
21
20
19
18
16
15
13
12
10
9
7
5
4
2
0
-2
-3
-5
-7
-9
-10
-12
-14
-16
-17
-19
-21
-22
-24
-26
-28
-30
-31
-33
-35
-36
-38
-40
-41
-43
-45
-46
-47
-49
-50
-52
-53
-54
-55
-56
-58
-59
-60
-61
-62
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-86
-87
-88
-89
-90
-90
-91
-92
-92
-93
-93
-94
-94
-94
-94
-94
-94
-94
-94
-94
-94
-94
-94
-94
-94
-93
-93
-93
-93
-93
-93
-93
-93
-93
-93
-93
-93
-93
-93
-92
-92
-91
-91
-90
-89
-89
-88
-87
-86
-85
-84
-83
-82
-80
-79
-78
-77
-77
-76
-75
-75
-74
-74
-74
-74
-73
-73
-73
-73
-73
-73
-72
-72
-72
-72
-72
-72
-72
-72
-72
-72
-72
-71
-71
-71
-71
-71
-71
-70
-70
-70
-69
-69
-68
-68
-67
-67
-66
-65
-65
-64
-64
-63
-62
-62
-61
-60
-59
-58
-58
-57
-56
-55
-55
-54
-53
-53
-52
-52
-51
-50
-49
-48
-47
-47
-46
-45
-44
-43
-42
-41
-40
-38
-37
-36
-35
-34
-33
-32
-31
-30
-29
-28
-27
-27
-26
-25
-24
-23
-23
-22
-21
-21
-20
-19
-19
-18
-17
-16
-16
-15
-15
-14
-13
-13
-12
-11
-10
-9
-9
-8
-7
-6
-6
-5
-4
-4
-3
-3
-2
-2
-1
-1
0
0
1
1
2
2
3
3
4
4
5
5
5
6
6
7
7
8
9
10
10
11
12
12
13
13
14
14
14
14
14
14
14
14
14
13
13
12
12
11
11
10
9
9
8
7
7
6
5
4
4
3
2
2
1
1
0
0
-1
-1
-1
-2
-2
-2
-3
-3
-3
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-3
-3
-3
-2
-2
-2
-2
-1
-1
-1
-1
-1
-1
-1
-1
-1
-2
-2
-2
-3
-3
-4
-4
-5
-5
-6
-7
-7
-8
-9
-10
-10
-11
-12
-12
-13
-13
-14
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-25
-26
-27
-28
-29
-29
-30
-31
-31
-32
-32
-33
-33
-34
-34
-34
-35
-35
-35
-35
-35
-35
-35
-35
-35
-35
-35
-34
-34
-33
-33
-32
-31
-30
-29
-28
-27
-25
-24
-23
-22
-21
-19
-18
-17
-15
-14
-13
-11
-10
-8
-7
-5
-4
-2
-1
0
2
3
4
6
8
9
11
13
14
16
18
20
22
23
25
27
29
31
32
34
37
39
41
43
46
48
50
53
55
58
60
63
65
67
69
71
73
75
78
79
81
83
85
87
88
90
91
92
94
95
96
97
98
99
100
101
102
103
104
105
105
106
107
107
108
109
109
110
110
110
110
110
110
109
109
108
108
108
107
107
106
106
105
105
104
104
103
103
103
102
102
101
101
101
100
99
99
98
97
96
95
95
94
93
92
92
91
90
89
89
88
87
86
86
85
84
83
83
82
82
81
81
80
80
80
79
79
79
78
77
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
43
42
41
40
39
38
36
36
34
33
32
31
30
29
27
26
25
25
24
23
23
22
22
21
21
20
19
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
2
1
0
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-27
-28
-29
-30
-31
-32
-33
-33
-34
-34
-35
-36
-36
-37
-38
-38
-39
-40
-40
-41
-41
-41
-42
-42
-42
-43
-43
-43
-43
-43
-44
-44
-44
-44
-45
-45
-45
-45
-46
-46
-46
-47
-47
-47
-48
-48
-48
-49
-49
-50
-51
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-62
-62
-63
-64
-64
-65
-66
-66
-67
-67
-68
-68
-68
-69
-69
-69
-70
-71
-71
-72
-72
-73
-73
-74
-75
-75
-76
-76
-77
-77
-77
-77
-77
-78
-77
-77
-77
-77
-77
-76
-76
-75
-75
-75
-74
-74
-74
-73
-73
-73
-73
-73
-73
-73
-74
-74
-74
-74
-74
-75
-75
-75
-75
-75
-74
-74
-74
-73
-73
-73
-72
-72
-71
-71
-70
-69
-69
-68
-68
-67
-66
-66
-65
-65
-64
-64
-64
-64
-64
-64
-64
-64
-64
-64
-65
-65
-65
-65
-66
-66
-67
-67
-67
-67
-67
-67
-67
-67
-67
-66
-66
-66
-65
-65
-64
-64
-64
-63
-63
-63
-62
-62
-62
-61
-61
-60
-60
-60
-59
-59
-58
-58
-57
-56
-56
-55
-54
-53
-52
-51
-50
-49
-48
-47
-46
-44
-43
-42
-41
-39
-38
-37
-36
-35
-33
-32
-30
-29
-28
-27
-25
-24
-23
-22
-20
-19
-18
-17
-15
-14
-13
-12
-11
-10
-9
-8
-7
-6
-5
-4
-4
-3
-2
-1
0
1
2
3
4
5
6
6
7
7
8
8
9
9
9
9
10
10
10
10
11
11
11
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
11
11
12
12
12
12
12
12
12
13
13
14
14
15
16
16
17
18
18
19
20
20
20
21
21
21
22
22
23
23
23
23
24
24
24
24
25
25
26
26
27
28
28
29
29
30
30
31
32
32
32
33
33
34
34
34
35
35
35
36
36
36
36
36
36
36
36
36
37
37
37
37
38
38
38
38
38
38
38
37
37
37
37
37
37
37
37
37
37
37
37
38
38
38
38
39
39
39
39
39
39
39
39
38
38
38
38
38
37
37
37
36
36
35
35
34
34
34
34
33
33
33
33
33
33
33
33
33
33
33
32
32
32
32
32
32
32
31
31
31
31
30
30
30
30
30
30
30
30
30
31
31
31
31
32
32
32
32
32
32
32
31
31
31
31
30
30
30
29
29
29
29
28
28
28
28
28
28
28
28
28
28
28
27
27
27
27
27
27
26
26
26
26
25
25
25
24
24
23
23
23
22
22
22
21
21
21
21
20
20
20
20
19
19
19
18
18
18
17
17
16
16
16
15
15
15
15
15
14
14
14
14
14
14
14
14
14
13
13
13
13
13
12
12
11
10
10
9
9
8
8
7
7
7
6
6
6
5
5
5
5
5
5
5
5
5
6
6
6
6
7
7
7
8
8
8
9
9
9
9
10
10
11
12
12
13
14
14
15
16
17
17
18
19
20
20
21
22
22
23
23
23
24
24
24
25
25
25
25
26
26
26
26
27
27
27
27
27
27
27
26
26
26
26
26
25
25
25
25
24
24
24
24
24
24
23
23
23
23
23
23
23
23
23
23
22
22
21
21
20
20
19
19
18
17
17
16
15
14
14
13
13
12
11
10
10
9
9
8
8
7
6
6
5
4
4
3
2
1
0
-1
-2
-3
-4
-5
-6
-7
-7
-8
-9
-9
-10
-11
-12
-12
-13
-13
-14
-14
-14
-15
-15
-15
-15
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-17
-17
-17
-17
-18
-18
-18
-18
-19
-19
-19
-20
-20
-20
-20
-21
-21
-21
-21
-22
-22
-22
-22
-23
-23
-23
-23
-23
-23
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-25
-25
-25
-26
-26
-26
-26
-27
-27
-27
-27
-27
-27
-27
-27
-27
-27
-27
-27
-27
-27
-26
-26
-26
-25
-25
-25
-25
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-25
-25
-25
-25
-26
-26
-26
-26
-27
-27
-27
-27
-28
-29
-29
-30
-30
-31
-32
-32
-33
-34
-35
-36
-38
-39
-40
-41
-43
-44
-45
-46
-47
-48
-49
-51
-52
-52
-53
-54
-55
-56
-56
-57
-57
-57
-58
-58
-58
-58
-58
-59
-59
-59
-59
-60
-60
-60
-61
-61
-61
-62
-62
-62
-62
-62
-62
-62
-62
-62
-62
-61
-61
-61
-60
-60
-60
-60
-59
-59
-58
-58
-58
-57
-57
-56
-56
-55
-54
-54
-53
-53
-52
-52
-51
-51
-51
-50
-50
-49
-49
-49
-48
-47
-47
-47
-46
-46
-45
-45
-44
-44
-44
-43
-43
-42
-42
-41
-41
-40
-40
-39
-38
-38
-37
-37
-36
-36
-35
-35
-34
-34
-33
-33
-32
-32
-31
-31
-30
-30
-30
-30
-30
-30
-30
-29
-29
-29
-29
-29
-29
-29
-29
-29
-29
-29
-28
-28
-28
-28
-27
-27
-26
-26
-25
-25
-25
-24
-24
-23
-23
-22
-22
-21
-20
-20
-19
-18
-18
-17
-17
-16
-16
-15
-15
-14
-14
-14
-14
-13
-13
-13
-13
-13
-12
-12
-12
-12
-12
-11
-11
-11
-10
-10
-9
-8
-8
-7
-6
-5
-4
-3
-2
-1
0
1
2
2
3
4
5
6
7
7
8
9
10
11
12
13
14
14
15
16
17
18
19
20
21
21
22
23
23
24
24
25
26
26
27
27
28
28
29
29
30
30
31
31
32
33
34
34
36
36
37
38
39
41
42
43
44
45
47
48
50
51
53
54
56
58
59
61
62
64
65
67
69
70
72
74
75
77
79
80
82
83
85
87
88
90
91
93
94
96
97
98
99
100
101
102
103
104
105
106
107
107
108
109
109
110
110
111
111
112
113
113
114
114
115
115
116
116
117
117
117
117
118
118
118
118
118
118
118
118
117
117
116
116
115
114
114
113
112
111
111
110
109
108
107
106
105
104
103
102
101
100
99
99
98
97
96
95
95
94
93
92
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
75
74
73
73
72
72
71
70
70
69
68
68
67
67
66
66
65
65
64
64
63
62
62
61
61
60
59
59
58
57
56
56
55
54
53
52
52
51
50
49
49
48
47
47
46
46
45
45
44
43
43
42
41
41
40
39
38
38
37
36
35
35
34
33
32
31
30
29
28
27
26
25
23
22
21
20
19
18
16
15
14
13
12
10
9
8
7
6
4
3
2
1
0
-2
-3
-4
-6
-7
-9
-10
-12
-13
-14
-16
-17
-18
-20
-21
-22
-23
-25
-26
-27
-28
-29
-30
-32
-33
-34
-35
-36
-37
-38
-39
-41
-42
-43
-44
-45
-46
-48
-49
-50
-51
-52
-54
-55
-56
-57
-58
-59
-60
-62
-63
-64
-65
-67
-68
-69
-71
-72
-74
-75
-77
-79
-80
-82
-84
-86
-88
-90
-92
-94
-95
-97
-99
-101
-103
-105
-106
-108
-110
-111
-113
-114
-116
-117
-119
-120
-121
-123
-124
-125
-126
-127
-129
-130
-131
-132
-133
-134
-135
-136
-137
-138
-139
-140
-141
-142
-143
-144
-145
-146
-146
-147
-147
-148
-148
-148
-148
-148
-149
-149
-149
-149
-149
-149
-149
-149
-149
-149
-149
-149
-149
-149
-149
-149
-149
-149
-149
-149
-149
-149
-149
-150
-150
-150
-150
-151
-151
-152
-152
-152
-153
-153
-153
-154
-154
-154
-154
-154
-154
-154
-154
-154
-154
-154
-154
-154
-154
-154
-154
-154
-154
-154
-154
-153
-153
-153
-153
-152
-152
-152
-151
-151
-151
-150
-150
-149
-149
-148
-148
-147
-147
-146
-145
-145
-144
-144
-143
-142
-141
-141
-140
-139
-138
-138
-137
-136
-135
-134
-133
-132
-131
-130
-129
-128
-127
-126
-125
-124
-123
-122
-121
-119
-118
-117
-116
-115
-114
-112
-111
-110
-108
-107
-105
-104
-102
-100
-98
-97
-95
-93
-91
-89
-87
-85
-83
-81
-79
-77
-75
-73
-72
-70
-68
-66
-64
-62
-60
-58
-56
-54
-53
-51
-49
-47
-45
-43
-41
-39
-37
-35
-34
-32
-30
-28
-27
-25
-24
-22
-20
-19
-17
-16
-14
-12
-11
-9
-7
-5
-3
-1
1
2
4
6
8
10
12
14
16
18
20
21
23
25
27
29
31
32
34
36
37
39
40
42
44
46
47
49
51
53
55
57
59
61
63
65
67
69
71
73
75
77
79
81
83
85
87
89
90
92
94
96
98
100
101
103
105
107
109
111
112
114
116
117
119
120
122
123
124
126
127
129
130
131
132
134
135
136
138
139
140
141
142
143
145
146
147
148
149
150
152
153
154
154
156
157
157
159
159
160
161
162
163
164
165
166
166
167
168
169
170
171
171
172
173
174
174
175
176
176
177
177
178
179
179
180
180
181
181
182
182
182
183
183
183
183
183
183
183
183
183
183
182
182
182
181
181
181
180
180
180
179
179
178
178
177
177
177
176
176
176
175
175
175
175
175
175
175
175
175
176
176
176
176
176
176
176
176
176
176
176
176
175
175
175
175
175
174
174
174
173
173
172
172
171
171
170
169
169
168
167
167
166
165
164
163
162
161
161
160
159
158
157
156
155
154
153
152
151
149
148
147
146
145
144
143
141
140
139
137
136
134
133
131
130
128
126
125
123
121
119
118
116
114
112
110
108
105
103
101
99
97
94
92
90
87
85
83
81
79
77
76
74
72
70
68
67
65
63
62
60
58
56
55
53
51
49
48
46
44
42
41
39
37
35
33
32
30
28
27
25
24
22
21
20
18
17
16
14
13
12
11
10
9
7
6
5
4
2
1
0
-2
-3
-4
-6
-7
-8
-10
-11
-12
-14
-15
-16
-18
-19
-20
-21
-23
-24
-25
-26
-27
-29
-30
-31
-32
-32
-33
-34
-35
-36
-38
-38
-40
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-53
-54
-55
-56
-58
-59
-60
-62
-63
-64
-65
-67
-68
-69
-71
-71
-71
-71
-71
-70
-70
-70
-70
-70
-70
-69
-69
-69
-69
-69
-69
-68
-68
-68
-68
-68
-68
-68
-67
-67
-67
-67
-67
-67
-66
-66
-66
-66
-66
-65
-65
-65
-65
-65
-65
-64
-64
-64
-64
-64
-64
-64
-63
-63
-63
-63
-63
-62
-62
-62
-62
-62
-62
-62
-61
-61
-61
-61
-61
-60
-60
-60
-60
-60
-60
-60
-59
-59
-59
-59
-59
-59
-58
-58
-58
-58
-58
-58
-57
-57
-57
-57
-57
-57
-56
-56
-56
-56
-56
-56
-56
-55
-55
-55
-55
-55
-54
-54
-54
-54
-54
-54
-54
-53
-53
-53
-53
-53
-53
-52
-52
-52
-52
-52
-52
-52
-51
-51
-51
-51
-51
-51
-50
-50
-50
-50
-50
-50
-49
-49
-49
-49
-49
-49
-49
-48
-48
-48
-48
-48
-48
-47
-47
-47
-47
-47
-47
-47
-46
-46
-46
-46
-46
-46
-45
-45
-45
-45
-45
-45
-45
-45
-44
-44
-44
-44
-44
-44
-43
-43
-43
-43
-43
-43
-43
-42
-42
-42
-42
-42
-42
-41
-41
-41
-41
-41
-41
-41
-41
-40
-40
-40
-40
-40
-40
-40
-39
-39
-39
-39
-39
-39
-38
-38
-38
-38
-38
-38
-38
-38
-37
-37
-37
-37
-37
-37
-37
-36
-36
-36
-36
-36
-36
-36
-36
-35
-35
-35
-35
-35
-35
-35
-34
-34
-34
-34
-34
-34
-34
-34
-33
-33
-33
-33
-33
-33
-33
-32
-32
-32
-32
-32
-32
-32
-32
-31
-31
-31
-31
-31
-31
-31
-31
-30
-30
-30
-30
-30
-30
-30
-30
-29
-29
-29
-29
-29
-29
-29
-29
-29
-28
-28
-28
-28
-28
-28
-28
-27
-27
-27
-27
-27
-27
-27
-27
-26
-26
-26
-26
-26
-26
-26
-26
-26
-25
-25
-25
-25
-25
-25
-25
-25
-25
-24
-24
-24
-24
-24
-24
-24
-24
-24
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-22
-22
-22
-22
-22
-22
-22
-22
-22
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-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
-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
-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
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-1
-1
-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
1
1
1
1
1
1
1
1
1
1
1
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
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
