5
2012
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
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
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-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
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-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
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-26
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-25
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-24
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-23
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-21
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-20
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-17
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-16
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-15
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-14
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-13
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-10
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-9
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-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
-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
-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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
11
12
12
12
12
12
12
12
12
12
12
13
13
13
13
13
13
13
13
13
13
13
14
14
14
14
14
14
14
14
14
14
15
15
15
15
15
15
15
15
15
15
16
16
16
16
16
16
16
16
16
16
17
17
17
17
17
17
17
17
17
17
18
18
18
18
18
18
18
18
18
18
19
19
19
19
19
19
19
19
19
20
20
20
20
20
20
20
20
20
21
21
21
21
21
21
21
21
21
21
22
22
22
22
22
22
22
22
22
23
23
23
23
23
23
23
23
23
24
24
24
24
24
24
24
24
25
25
25
25
25
25
25
25
25
26
26
26
26
26
26
26
26
26
27
27
27
27
27
27
27
27
28
28
28
28
28
28
28
28
28
29
29
29
29
29
29
29
29
30
30
30
30
30
30
30
30
31
31
31
31
31
31
31
31
32
32
32
32
32
32
32
32
33
33
33
33
33
33
33
33
34
34
34
34
34
34
34
34
35
35
35
35
35
35
35
35
36
36
36
36
36
36
36
37
37
37
37
37
37
37
37
38
38
38
38
38
38
38
39
39
39
39
39
39
39
39
40
40
40
40
40
40
40
41
41
41
41
41
41
41
42
42
42
42
42
42
42
42
43
43
43
43
43
43
43
44
44
44
44
44
44
44
45
45
45
45
45
45
45
46
46
46
46
46
46
46
47
47
47
47
47
47
47
48
48
48
48
48
48
48
49
49
49
49
49
49
50
50
50
50
50
50
50
51
51
51
51
51
51
51
52
52
52
52
52
52
53
53
53
53
53
53
53
54
54
54
54
54
54
55
55
55
55
55
55
55
56
56
56
56
56
56
57
57
57
57
57
57
58
58
58
58
58
58
58
59
59
59
59
59
59
60
60
60
60
60
60
61
61
61
61
61
61
62
62
62
62
62
62
63
63
63
63
63
63
64
64
64
64
64
64
65
65
65
65
65
65
66
66
66
66
66
66
67
67
67
67
67
67
68
68
68
68
68
68
69
69
69
69
69
69
70
70
70
70
70
70
71
71
71
71
71
72
72
72
72
72
72
73
73
73
73
73
74
74
74
74
74
74
75
75
75
75
76
76
76
76
76
77
77
77
77
77
78
78
78
78
78
79
79
79
79
80
80
80
80
80
81
81
81
81
82
82
82
82
83
83
83
84
84
84
84
85
85
85
86
86
86
87
87
87
88
88
88
89
89
89
90
90
91
91
91
92
92
93
93
94
94
94
95
95
96
97
97
98
98
99
99
100
101
102
102
103
104
104
105
106
107
108
108
109
110
111
111
112
113
114
115
116
116
117
118
119
120
121
122
122
123
124
125
126
126
127
128
129
129
130
131
132
132
133
134
135
135
136
137
138
139
139
140
141
142
143
144
145
146
146
147
148
149
150
151
152
154
155
156
157
158
159
160
161
163
164
165
166
168
169
170
172
173
174
176
177
179
180
181
182
184
185
186
187
188
189
190
192
193
194
195
197
198
199
200
202
203
204
205
206
207
208
209
210
210
211
211
212
212
212
213
213
213
213
213
213
213
213
212
212
212
211
210
210
209
209
208
207
206
206
205
204
203
202
202
201
200
200
199
198
198
197
196
196
195
194
193
192
191
190
190
189
188
187
187
186
186
185
184
184
183
182
181
180
178
177
175
173
171
170
168
167
165
164
162
161
160
158
157
155
154
152
151
149
148
146
145
143
142
141
140
138
137
136
135
133
131
129
127
125
123
121
118
116
114
112
110
108
106
104
103
101
100
99
98
98
97
96
96
95
94
93
92
91
90
89
87
86
84
83
81
79
78
76
75
74
73
73
72
72
71
71
70
68
67
66
64
62
60
58
56
54
52
50
48
46
44
43
42
41
40
40
40
40
40
40
40
41
42
43
44
45
47
48
49
51
52
53
54
55
56
57
58
58
59
59
59
59
58
58
57
56
54
53
51
50
48
46
44
42
39
36
33
30
26
23
19
15
10
6
0
-6
-12
-19
-26
-33
-40
-48
-55
-62
-69
-76
-83
-90
-97
-104
-111
-117
-124
-130
-135
-141
-146
-151
-155
-159
-162
-164
-165
-166
-166
-166
-166
-165
-165
-164
-162
-161
-160
-158
-156
-153
-151
-148
-145
-142
-140
-137
-134
-132
-130
-127
-126
-124
-122
-121
-120
-119
-119
-119
-120
-120
-121
-122
-122
-122
-122
-122
-121
-120
-119
-117
-114
-112
-110
-108
-106
-104
-103
-101
-100
-100
-99
-99
-99
-99
-100
-100
-102
-103
-105
-107
-110
-112
-113
-115
-116
-117
-117
-118
-119
-120
-121
-123
-125
-127
-129
-131
-132
-134
-135
-136
-137
-137
-137
-137
-136
-135
-133
-130
-127
-123
-118
-114
-109
-104
-99
-94
-88
-81
-75
-67
-60
-52
-45
-38
-32
-26
-20
-15
-11
-7
-3
0
3
5
8
9
11
12
12
13
12
11
10
8
6
4
1
-1
-4
-6
-8
-9
-11
-13
-14
-16
-17
-19
-20
-22
-24
-26
-28
-30
-32
-33
-35
-36
-37
-38
-40
-41
-43
-45
-47
-49
-52
-54
-56
-58
-60
-61
-61
-61
-61
-60
-59
-58
-57
-56
-55
-55
-54
-54
-55
-55
-56
-57
-58
-58
-59
-59
-59
-58
-57
-56
-54
-52
-49
-45
-41
-37
-32
-27
-23
-18
-13
-9
-4
0
4
7
11
14
16
18
20
20
20
20
19
17
15
12
8
4
0
-6
-11
-17
-24
-30
-36
-42
-48
-53
-57
-61
-63
-65
-65
-65
-64
-63
-61
-60
-58
-56
-55
-53
-51
-49
-48
-46
-44
-41
-39
-37
-34
-31
-28
-24
-20
-16
-12
-7
-2
3
8
13
18
23
27
32
36
39
43
45
47
49
50
51
51
52
52
53
54
55
56
56
57
57
56
55
54
53
51
50
49
47
46
45
44
42
41
39
38
36
35
33
30
28
25
22
18
14
10
7
3
0
-3
-5
-7
-9
-10
-11
-12
-12
-12
-12
-12
-11
-10
-9
-8
-6
-4
-2
0
2
5
8
11
14
18
22
26
29
32
34
36
37
37
37
37
36
34
33
31
29
27
24
22
19
17
15
12
10
7
5
2
-1
-4
-7
-11
-15
-18
-22
-25
-29
-32
-36
-39
-42
-44
-47
-49
-51
-53
-55
-57
-59
-61
-63
-64
-66
-67
-67
-67
-67
-67
-66
-64
-63
-61
-59
-58
-56
-54
-52
-50
-48
-45
-43
-41
-39
-36
-34
-31
-28
-24
-21
-17
-13
-10
-6
-2
2
7
11
15
19
23
26
30
33
35
38
41
44
46
50
53
56
60
64
67
70
73
75
77
78
78
79
79
79
78
78
78
77
77
77
77
78
79
80
81
83
85
88
91
95
99
103
107
112
116
120
124
128
132
135
138
141
144
146
148
150
151
152
152
152
151
150
149
147
145
143
141
138
136
133
129
126
123
120
117
115
113
111
109
108
106
106
105
105
106
106
107
109
111
113
116
118
121
124
126
129
132
135
138
141
144
147
149
152
154
156
157
157
157
156
154
152
149
145
142
138
134
130
126
123
119
116
114
112
110
109
109
109
109
111
112
115
117
120
122
125
128
132
135
138
141
144
148
151
154
157
159
161
162
163
164
164
165
165
165
165
164
164
164
164
164
163
163
162
161
160
159
157
155
153
151
149
146
144
142
141
139
138
137
136
135
134
134
134
135
136
137
138
140
142
144
146
148
150
152
154
156
157
159
160
161
162
163
164
165
165
166
167
168
168
169
170
172
173
175
176
178
180
182
184
185
186
188
189
190
191
193
194
195
196
197
198
199
199
200
200
199
199
198
197
196
194
192
190
187
185
182
180
177
174
171
168
165
161
158
154
151
148
145
142
139
136
133
130
127
124
121
119
116
114
111
109
106
104
102
100
98
96
94
92
90
88
87
86
85
85
84
84
84
84
83
83
83
83
83
83
83
83
83
83
83
83
82
81
80
79
78
77
77
76
75
74
73
72
71
70
68
66
65
63
61
59
56
54
52
50
48
45
43
41
39
36
34
32
31
29
28
26
25
24
24
23
22
22
21
21
22
22
22
23
24
26
27
29
31
33
35
37
39
41
44
46
48
51
53
55
56
58
59
60
61
61
61
61
61
60
59
58
57
55
54
52
50
48
47
45
43
42
40
38
36
33
31
28
26
23
21
19
16
14
12
10
8
6
5
4
3
2
2
1
0
-1
-1
-2
-3
-4
-4
-4
-5
-5
-5
-5
-5
-4
-4
-3
-3
-2
-1
0
1
2
3
5
7
9
11
13
15
17
19
21
24
26
29
33
36
39
43
46
50
53
57
60
63
65
68
70
71
73
73
74
75
75
75
75
75
74
73
71
70
68
66
64
62
60
57
55
52
50
47
44
42
39
37
35
32
30
28
27
25
23
21
20
19
18
17
17
17
18
19
19
20
21
22
23
24
26
27
28
28
29
29
29
29
29
29
28
28
28
28
28
28
28
28
28
28
29
29
31
32
34
36
39
42
45
48
52
56
60
63
67
71
75
78
82
86
90
94
98
102
106
110
114
118
121
124
127
129
131
132
133
133
133
132
131
130
128
126
124
121
118
115
112
109
106
103
101
100
99
99
99
100
101
102
103
104
105
107
108
110
112
114
116
118
120
123
125
128
130
132
134
136
138
139
140
140
141
140
140
139
138
136
135
133
131
128
126
123
121
118
114
111
107
103
99
95
91
87
83
79
75
71
67
64
60
56
52
48
44
41
37
34
31
28
26
24
21
19
17
14
11
9
5
2
-1
-5
-9
-13
-18
-22
-27
-32
-36
-40
-45
-49
-53
-57
-60
-64
-67
-69
-71
-73
-74
-76
-77
-78
-79
-80
-81
-82
-82
-84
-85
-86
-88
-90
-93
-95
-98
-100
-103
-105
-107
-109
-111
-113
-115
-116
-118
-119
-120
-120
-120
-120
-119
-118
-117
-115
-113
-112
-110
-108
-107
-106
-104
-103
-102
-100
-99
-98
-96
-94
-92
-90
-88
-86
-83
-81
-78
-76
-74
-73
-71
-70
-68
-67
-65
-64
-63
-61
-59
-57
-55
-53
-50
-47
-44
-41
-38
-34
-30
-27
-23
-19
-15
-11
-7
-3
1
4
8
12
15
19
23
26
30
33
37
40
44
48
52
56
60
63
67
71
74
76
79
81
84
86
88
90
92
93
95
96
97
97
98
99
99
100
102
103
105
106
108
109
111
112
113
114
115
116
116
117
118
118
119
120
121
122
123
124
124
125
125
125
125
125
125
125
125
125
125
125
125
125
124
124
123
122
121
120
119
118
117
116
115
114
113
113
113
113
113
113
114
114
115
116
116
117
118
118
119
120
121
122
123
124
125
126
128
130
131
133
135
136
138
140
141
143
145
146
148
150
151
153
154
156
157
158
159
161
162
163
164
165
166
168
170
173
176
179
183
187
191
195
198
202
206
209
212
215
217
220
222
223
225
226
227
228
228
228
229
229
229
229
229
228
227
226
224
222
220
218
216
213
211
209
207
206
205
204
203
202
201
201
200
200
200
200
200
200
200
199
198
198
197
196
196
195
195
195
195
194
194
193
191
190
188
186
184
182
180
178
176
174
172
170
168
166
164
162
160
157
154
151
148
145
142
139
135
133
130
127
125
123
121
119
117
115
114
112
110
107
105
102
99
97
94
91
88
85
82
79
77
74
72
71
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
50
49
48
47
46
45
44
43
42
41
40
39
38
37
37
36
36
36
36
36
37
38
39
40
43
45
48
51
55
58
62
66
70
74
78
83
87
91
96
100
104
108
112
117
121
125
130
134
138
142
146
149
153
156
159
162
165
167
170
172
174
175
176
177
177
178
178
178
178
178
179
180
181
182
184
185
187
188
190
191
193
194
195
197
198
200
201
202
204
205
206
208
209
210
210
211
211
210
210
209
208
206
205
204
203
202
200
199
198
196
195
193
192
190
188
187
185
183
180
178
175
172
168
165
161
157
153
150
146
142
138
133
129
125
121
118
114
111
108
105
102
99
97
95
92
90
88
86
84
82
80
78
77
75
73
71
68
65
63
60
57
55
53
51
50
49
48
48
47
47
47
47
47
47
47
48
48
49
49
50
50
51
51
51
51
52
52
53
54
55
56
58
60
62
64
66
68
70
73
75
77
79
81
83
85
86
87
88
89
90
91
92
94
95
97
98
100
102
104
105
107
108
109
110
112
114
117
120
123
126
130
133
137
141
145
149
153
158
162
166
169
173
176
179
182
184
186
188
190
191
191
192
192
192
192
191
190
189
187
185
183
181
178
175
171
168
164
161
157
154
150
147
144
142
139
137
135
133
131
129
127
125
123
122
120
119
117
115
114
112
110
108
106
105
103
102
100
99
98
96
95
93
91
88
86
83
80
77
73
70
67
64
60
57
54
50
47
44
41
37
34
30
27
23
20
16
13
10
7
4
2
0
-2
-3
-4
-5
-5
-6
-6
-6
-6
-6
-7
-7
-7
-7
-7
-8
-8
-9
-10
-12
-14
-17
-20
-23
-27
-31
-35
-40
-44
-48
-53
-57
-61
-65
-68
-72
-75
-78
-80
-83
-85
-86
-87
-88
-89
-89
-89
-88
-88
-87
-86
-84
-83
-81
-79
-76
-73
-70
-67
-63
-60
-56
-53
-50
-47
-44
-42
-39
-37
-35
-34
-33
-32
-31
-31
-31
-31
-32
-32
-33
-35
-36
-38
-40
-41
-43
-45
-46
-48
-49
-50
-51
-52
-52
-52
-52
-52
-51
-51
-50
-49
-48
-47
-46
-44
-42
-40
-39
-37
-36
-34
-34
-33
-32
-31
-31
-30
-29
-29
-28
-28
-28
-28
-29
-30
-32
-34
-36
-39
-42
-45
-49
-52
-56
-60
-64
-68
-72
-76
-79
-83
-86
-89
-92
-95
-98
-101
-103
-105
-107
-109
-110
-111
-112
-113
-114
-114
-114
-114
-114
-114
-114
-113
-113
-113
-112
-112
-112
-112
-113
-113
-113
-114
-115
-115
-116
-116
-117
-117
-118
-119
-119
-120
-121
-122
-122
-123
-124
-124
-125
-125
-125
-125
-126
-126
-126
-127
-127
-127
-128
-129
-130
-131
-132
-134
-136
-138
-140
-142
-143
-145
-146
-147
-148
-148
-148
-148
-148
-148
-148
-148
-148
-149
-149
-150
-151
-152
-152
-153
-154
-155
-157
-157
-158
-159
-159
-159
-159
-159
-158
-158
-157
-157
-157
-156
-156
-156
-156
-156
-156
-156
-156
-156
-156
-157
-158
-159
-160
-161
-162
-164
-165
-166
-167
-168
-169
-170
-171
-172
-172
-173
-173
-173
-172
-171
-169
-167
-165
-163
-160
-158
-155
-153
-151
-149
-147
-145
-143
-141
-140
-139
-139
-139
-139
-139
-140
-140
-141
-142
-144
-145
-147
-148
-150
-150
-151
-151
-150
-150
-149
-147
-146
-144
-142
-140
-138
-135
-132
-129
-126
-123
-119
-115
-111
-107
-103
-99
-95
-92
-88
-84
-80
-76
-73
-70
-68
-65
-63
-61
-59
-58
-56
-55
-53
-52
-51
-51
-50
-49
-49
-49
-49
-49
-50
-50
-51
-52
-54
-55
-55
-56
-56
-57
-56
-56
-56
-56
-55
-55
-55
-54
-54
-53
-53
-51
-50
-48
-46
-44
-41
-38
-35
-32
-28
-25
-21
-18
-15
-12
-10
-7
-4
-1
1
4
6
8
10
11
12
13
14
15
15
15
16
16
16
16
16
16
16
17
17
18
20
21
23
25
27
29
32
34
37
39
42
45
49
52
57
61
65
70
74
78
82
86
88
91
93
94
95
96
97
98
99
99
100
101
101
102
103
104
105
106
107
107
107
107
107
107
107
107
106
106
106
106
106
106
106
107
107
108
108
108
107
106
105
104
103
102
101
100
99
99
98
97
97
95
94
93
92
91
90
90
89
88
88
87
85
84
83
82
81
81
81
82
82
82
83
83
82
81
80
78
76
74
71
68
66
63
60
57
54
51
48
45
41
37
34
30
27
24
21
19
17
15
14
13
13
12
11
10
10
9
8
8
8
7
8
8
9
10
11
13
15
17
19
22
26
29
33
38
43
48
53
59
66
72
79
87
94
102
110
118
125
133
140
148
154
161
168
174
181
187
193
200
206
212
218
224
230
236
242
248
255
261
267
274
280
287
294
301
308
316
323
331
338
346
354
361
368
375
381
387
393
398
403
409
414
419
424
430
435
440
445
449
453
457
460
463
465
466
467
468
469
470
471
472
473
475
477
479
481
483
485
487
488
490
491
492
493
495
496
497
499
500
501
502
503
504
504
505
505
506
507
508
510
512
514
516
518
521
523
525
528
530
531
533
534
535
535
536
537
538
539
540
542
543
544
546
547
549
549
550
550
549
548
547
545
544
541
539
536
533
530
526
522
518
515
511
508
505
502
500
497
495
493
491
489
488
487
485
484
483
482
480
478
476
473
469
466
462
457
452
447
441
435
429
423
416
409
401
393
385
377
369
360
352
344
337
329
322
315
308
301
293
286
278
271
263
255
247
239
230
222
213
204
196
187
179
170
162
154
147
140
134
128
123
118
114
110
106
101
96
91
85
78
71
62
53
43
32
21
9
-4
-18
-32
-47
-61
-76
-91
-106
-121
-136
-151
-165
-179
-193
-207
-220
-232
-244
-255
-266
-277
-287
-296
-304
-312
-318
-324
-328
-331
-333
-334
-334
-333
-332
-331
-329
-327
-325
-323
-321
-320
-319
-318
-318
-318
-319
-320
-322
-324
-327
-330
-333
-337
-341
-345
-349
-353
-358
-362
-367
-372
-377
-382
-389
-395
-403
-410
-418
-426
-434
-443
-452
-461
-470
-480
-490
-500
-511
-522
-533
-545
-556
-568
-579
-590
-600
-610
-618
-626
-633
-638
-643
-646
-647
-648
-647
-644
-640
-636
-630
-623
-616
-609
-602
-595
-589
-583
-579
-576
-574
-573
-573
-575
-578
-581
-586
-591
-597
-605
-613
-622
-632
-643
-655
-667
-681
-694
-708
-722
-736
-749
-762
-775
-787
-797
-807
-816
-823
-830
-835
-840
-843
-846
-848
-849
-850
-850
-850
-849
-848
-847
-846
-845
-845
-844
-845
-846
-848
-852
-856
-861
-867
-874
-882
-891
-900
-911
-923
-936
-950
-966
-983
-1000
-1020
-1042
-1063
-1085
-1108
-1130
-1152
-1174
-1194
-1214
-1233
-1251
-1267
-1282
-1296
-1308
-1318
-1327
-1336
-1343
-1349
-1355
-1361
-1366
-1372
-1378
-1384
-1391
-1399
-1408
-1417
-1427
-1438
-1450
-1462
-1474
-1486
-1499
-1511
-1523
-1534
-1545
-1556
-1567
-1578
-1588
-1599
-1611
-1623
-1635
-1648
-1661
-1674
-1687
-1701
-1714
-1728
-1741
-1754
-1767
-1780
-1792
-1804
-1816
-1828
-1840
-1851
-1863
-1874
-1885
-1895
-1906
-1916
-1926
-1936
-1946
-1957
-1966
-1976
-1985
-1993
-2000
-2005
-2009
-2012
-2012
-2011
-2007
-2001
-1995
-1985
-1974
-1960
-1945
-1927
-1909
-1889
-1868
-1846
-1825
-1803
-1782
-1762
-1743
-1725
-1708
-1692
-1678
-1665
-1654
-1643
-1634
-1627
-1619
-1613
-1607
-1601
-1596
-1591
-1587
-1583
-1580
-1579
-1578
-1578
-1579
-1581
-1584
-1587
-1592
-1596
-1601
-1606
-1610
-1615
-1619
-1622
-1626
-1629
-1631
-1633
-1634
-1635
-1635
-1634
-1632
-1629
-1625
-1619
-1613
-1605
-1595
-1584
-1572
-1559
-1545
-1529
-1512
-1494
-1475
-1456
-1436
-1416
-1397
-1378
-1360
-1344
-1329
-1316
-1305
-1297
-1291
-1287
-1286
-1287
-1290
-1295
-1302
-1311
-1322
-1333
-1346
-1359
-1372
-1384
-1397
-1409
-1420
-1430
-1438
-1446
-1452
-1456
-1458
-1458
-1456
-1452
-1446
-1438
-1429
-1418
-1405
-1391
-1375
-1359
-1341
-1323
-1303
-1284
-1263
-1242
-1221
-1199
-1177
-1154
-1132
-1110
-1088
-1066
-1046
-1026
-1008
-992
-977
-965
-954
-946
-940
-935
-933
-931
-930
-930
-929
-928
-926
-924
-920
-914
-907
-898
-887
-875
-860
-843
-824
-804
-782
-759
-734
-708
-682
-655
-628
-600
-573
-546
-519
-493
-467
-441
-417
-393
-370
-348
-326
-304
-282
-261
-241
-220
-201
-182
-165
-149
-134
-121
-110
-101
-94
-88
-85
-82
-82
-82
-82
-83
-85
-86
-86
-86
-85
-82
-77
-71
-63
-53
-40
-26
-11
6
24
43
62
82
102
122
142
162
180
198
215
230
244
256
267
277
285
292
298
303
306
309
310
310
309
308
305
301
297
293
288
283
278
273
268
264
259
255
250
245
240
234
228
222
215
207
199
191
181
171
159
148
136
124
113
103
94
86
81
78
78
79
83
90
98
107
118
129
142
155
169
184
199
214
230
246
262
279
296
313
330
346
362
377
390
401
410
417
420
420
416
409
399
386
370
352
332
311
289
267
245
222
200
179
158
138
119
101
85
70
56
45
35
27
20
16
13
12
13
16
21
28
37
48
61
76
92
110
128
148
168
188
208
228
247
264
280
295
306
316
323
328
330
329
325
320
312
303
293
282
271
259
248
237
227
217
207
199
191
183
176
170
165
161
158
155
154
153
152
152
152
151
150
149
148
148
147
147
149
152
156
162
169
177
185
194
204
213
222
230
237
244
249
253
256
257
257
255
253
249
244
238
232
225
218
210
202
195
187
180
173
167
162
158
156
156
157
160
164
170
177
186
195
206
216
227
238
248
257
265
273
280
285
289
293
295
296
296
296
295
294
292
290
287
285
282
281
279
279
280
283
286
291
297
305
312
320
327
333
339
343
347
350
352
354
356
358
362
366
371
378
385
394
404
415
427
439
451
464
477
489
502
514
527
539
551
563
575
587
598
609
619
628
636
643
649
653
655
656
655
653
649
644
638
630
622
614
605
597
589
582
575
568
562
556
550
543
536
530
522
515
508
502
497
492
488
486
484
485
486
489
493
498
504
510
516
523
529
534
539
543
546
548
548
548
546
544
540
536
530
525
518
511
504
497
489
481
474
466
458
451
444
437
431
425
420
416
414
412
411
411
412
414
415
417
419
420
421
422
423
423
424
425
427
429
432
436
441
447
454
461
470
480
490
500
510
521
532
542
553
563
573
583
593
603
611
619
625
629
632
633
633
631
627
623
618
612
606
600
595
590
585
581
578
575
574
573
573
574
576
579
582
585
589
593
598
602
607
613
618
624
631
637
643
649
655
662
668
674
679
685
689
693
696
698
699
698
696
692
687
680
673
664
655
645
634
624
613
601
589
576
562
547
532
515
498
480
462
443
425
406
387
368
350
331
313
295
277
260
244
228
213
200
188
177
167
159
152
146
142
139
137
136
137
138
141
145
150
156
163
169
176
183
189
195
200
205
209
212
215
217
219
220
220
220
219
218
216
213
210
205
200
194
188
182
176
170
164
158
152
147
140
134
127
119
111
103
94
85
76
67
58
50
42
35
28
23
17
11
6
1
-4
-9
-13
-17
-20
-22
-23
-24
-24
-24
-23
-22
-21
-20
-19
-18
-16
-15
-13
-11
-9
-7
-5
-3
-1
-1
0
-1
-2
-3
-5
-7
-9
-12
-16
-20
-25
-29
-35
-40
-45
-51
-56
-62
-68
-73
-78
-83
-88
-93
-98
-102
-106
-111
-115
-120
-125
-130
-135
-140
-146
-152
-157
-162
-167
-171
-175
-179
-183
-186
-189
-191
-193
-195
-196
-197
-197
-196
-195
-194
-192
-190
-189
-187
-186
-185
-184
-184
-184
-185
-185
-186
-187
-189
-190
-192
-194
-196
-198
-200
-202
-204
-205
-206
-207
-207
-207
-206
-204
-201
-197
-192
-187
-181
-174
-167
-160
-153
-146
-138
-131
-123
-116
-108
-99
-90
-81
-71
-61
-51
-41
-31
-21
-11
-2
6
15
23
30
37
44
50
55
60
64
67
70
72
74
75
76
77
78
78
79
80
81
81
81
81
80
79
78
77
76
75
74
73
72
72
72
72
72
73
75
76
79
81
84
88
93
98
104
110
117
124
131
139
147
155
163
170
178
184
190
195
199
203
205
208
209
211
211
212
212
211
210
208
206
203
200
196
193
189
185
182
178
175
172
170
168
167
166
166
167
168
170
173
176
179
182
186
189
192
194
197
198
200
202
203
205
206
207
208
209
210
210
210
210
209
208
206
204
201
198
195
192
189
186
183
180
177
174
170
166
161
155
149
143
137
130
124
117
111
105
98
91
84
77
69
60
51
41
31
19
7
-5
-17
-29
-41
-53
-64
-75
-85
-95
-104
-113
-122
-131
-140
-149
-157
-166
-175
-183
-192
-200
-208
-216
-223
-230
-237
-242
-247
-252
-256
-259
-263
-266
-270
-273
-275
-278
-280
-281
-282
-283
-283
-283
-283
-282
-280
-278
-276
-274
-271
-268
-265
-262
-259
-257
-254
-251
-248
-245
-242
-239
-235
-231
-227
-223
-218
-213
-208
-203
-198
-194
-189
-185
-181
-178
-174
-170
-166
-162
-159
-156
-152
-150
-147
-145
-144
-142
-141
-140
-140
-139
-140
-140
-141
-142
-144
-145
-146
-146
-147
-147
-148
-148
-149
-149
-149
-149
-149
-149
-148
-146
-144
-142
-140
-138
-136
-134
-133
-131
-130
-129
-128
-128
-127
-126
-126
-124
-123
-121
-119
-116
-113
-108
-104
-98
-92
-85
-79
-72
-66
-60
-54
-50
-46
-44
-42
-41
-41
-42
-44
-47
-50
-55
-60
-66
-72
-79
-87
-94
-102
-110
-118
-127
-135
-143
-152
-160
-167
-174
-180
-186
-190
-193
-195
-195
-195
-193
-190
-187
-182
-176
-170
-164
-156
-149
-140
-132
-122
-112
-101
-90
-78
-66
-53
-40
-26
-14
-1
10
21
32
41
49
56
63
69
74
78
82
85
87
88
89
90
89
89
89
88
88
89
89
89
89
89
89
88
86
85
83
81
80
79
79
80
80
82
84
86
88
91
94
98
101
105
109
112
116
120
123
126
129
132
135
138
141
144
148
151
155
158
162
166
170
173
177
180
184
186
188
190
191
192
192
192
192
192
192
192
191
191
190
189
188
187
186
184
183
181
180
179
178
177
177
177
177
178
180
182
185
188
192
196
200
204
209
215
221
227
233
239
246
252
259
265
272
279
286
294
301
308
316
323
330
336
342
348
354
358
363
367
370
373
375
377
378
379
379
378
378
376
375
373
370
368
365
362
358
355
351
347
342
337
332
327
320
314
307
300
292
285
278
271
264
258
252
247
241
236
230
225
219
214
209
204
200
196
193
190
187
183
180
177
173
169
165
160
156
151
147
143
139
135
131
128
125
122
119
117
114
111
109
106
103
101
99
97
96
95
95
95
96
97
99
101
104
107
110
114
118
122
127
132
137
143
148
154
160
166
172
178
184
190
196
202
207
213
219
225
232
238
244
250
257
263
269
274
280
284
289
293
298
302
306
311
316
321
327
333
339
345
351
357
363
370
376
383
390
397
405
413
421
430
440
449
458
468
478
487
496
505
514
523
531
539
547
554
560
566
571
576
581
585
588
591
593
595
596
598
599
600
602
603
606
608
611
614
618
621
624
627
629
631
633
634
636
637
639
640
642
644
646
647
649
651
653
655
656
658
660
662
665
668
671
674
677
681
685
688
692
695
699
702
705
708
711
714
716
718
721
723
725
726
728
730
731
733
735
736
738
740
742
744
746
748
750
752
753
755
756
757
758
759
759
758
758
756
754
751
748
743
739
734
728
723
717
711
705
699
693
687
682
676
670
665
660
654
649
643
637
631
624
617
609
601
592
583
573
564
554
544
535
526
517
509
501
494
487
480
474
468
462
456
451
445
440
434
429
423
418
413
408
404
399
396
392
388
384
380
376
371
367
362
357
352
347
343
339
336
333
330
328
327
326
326
326
326
327
328
329
331
333
336
339
343
346
350
354
357
360
363
367
370
373
376
380
383
386
389
392
394
397
399
402
404
407
409
411
413
415
417
419
420
422
423
423
424
424
423
423
422
421
420
418
417
415
414
412
411
410
409
409
409
409
409
409
409
409
408
407
406
404
403
401
399
397
395
393
390
388
386
383
381
378
375
373
371
368
366
364
362
360
358
356
353
350
347
343
339
334
330
325
320
316
311
306
301
297
293
288
284
279
275
270
264
259
254
249
244
239
234
230
226
223
220
217
215
213
212
211
210
209
208
208
208
208
208
209
209
209
209
208
208
208
208
208
208
208
207
206
205
203
201
199
196
192
189
185
180
176
171
166
161
156
151
145
140
134
129
124
120
115
111
108
105
102
100
98
96
94
93
91
89
88
87
85
84
84
83
82
82
81
80
79
77
75
73
70
67
64
61
57
54
50
47
43
39
35
30
25
20
14
9
3
-2
-7
-12
-15
-19
-22
-24
-26
-28
-30
-32
-34
-36
-37
-39
-40
-41
-41
-41
-41
-41
-41
-41
-40
-41
-41
-41
-41
-42
-42
-43
-43
-44
-44
-45
-46
-46
-47
-48
-49
-49
-50
-50
-51
-51
-51
-51
-50
-50
-50
-51
-51
-52
-53
-54
-56
-58
-60
-63
-66
-70
-74
-78
-82
-86
-90
-94
-98
-102
-105
-109
-112
-116
-120
-124
-128
-132
-135
-139
-142
-145
-148
-151
-153
-156
-158
-161
-163
-165
-167
-169
-171
-173
-175
-177
-180
-182
-184
-186
-187
-189
-191
-193
-194
-196
-198
-200
-201
-203
-204
-205
-206
-207
-207
-208
-209
-209
-210
-210
-211
-211
-211
-211
-211
-210
-210
-209
-208
-208
-206
-205
-204
-202
-201
-199
-197
-195
-193
-191
-190
-188
-187
-185
-184
-183
-182
-182
-181
-181
-181
-181
-182
-182
-183
-184
-184
-185
-186
-186
-187
-188
-189
-190
-190
-191
-192
-193
-194
-195
-195
-195
-195
-195
-195
-194
-193
-192
-191
-189
-187
-184
-182
-179
-176
-173
-169
-165
-162
-158
-154
-151
-147
-144
-141
-139
-136
-134
-132
-130
-128
-127
-125
-124
-123
-122
-122
-121
-121
-120
-120
-119
-119
-119
-120
-120
-122
-123
-126
-128
-131
-134
-137
-140
-143
-146
-149
-152
-154
-156
-158
-159
-160
-161
-161
-162
-162
-162
-161
-161
-160
-159
-157
-156
-154
-152
-149
-147
-144
-142
-139
-135
-132
-128
-125
-121
-117
-112
-108
-104
-99
-95
-91
-86
-82
-78
-74
-70
-66
-63
-60
-57
-54
-52
-50
-48
-46
-44
-41
-39
-36
-33
-30
-27
-25
-22
-19
-17
-14
-11
-9
-6
-4
-1
1
4
6
8
9
11
11
12
12
11
11
10
9
9
8
8
8
7
8
8
8
9
10
12
13
15
17
19
21
23
25
27
29
31
33
35
38
40
43
45
48
51
54
57
60
62
65
67
70
72
74
77
79
82
84
87
89
92
95
98
101
105
109
112
116
121
125
129
134
138
142
147
151
155
159
163
167
171
175
178
182
185
189
192
194
197
199
201
203
204
205
206
207
208
208
209
209
209
210
210
211
211
212
213
214
215
217
219
220
222
225
226
228
230
231
232
233
233
234
234
235
235
236
237
237
238
239
240
241
242
243
244
245
245
245
245
245
244
243
242
240
239
238
237
236
234
233
231
230
229
228
227
226
225
224
223
222
222
221
220
220
219
219
219
219
219
219
219
220
220
219
219
219
219
219
220
220
221
222
224
226
228
230
233
235
239
242
245
249
253
256
260
264
267
271
275
279
283
287
291
295
299
303
307
311
315
318
322
325
328
331
333
335
338
340
342
345
347
349
352
354
356
358
360
361
363
364
365
366
367
368
369
370
370
370
370
370
370
370
370
370
369
368
368
367
365
363
361
358
355
352
348
343
339
334
329
324
319
314
309
304
299
294
288
283
277
271
265
259
252
246
240
234
228
223
217
212
206
201
197
192
187
182
178
173
168
162
157
152
146
140
134
128
122
115
109
103
97
90
84
77
70
63
56
48
41
33
25
17
9
2
-6
-13
-21
-28
-35
-42
-48
-55
-61
-67
-74
-80
-86
-91
-97
-103
-108
-113
-118
-122
-126
-130
-134
-137
-140
-143
-146
-149
-151
-154
-156
-159
-161
-163
-165
-167
-169
-170
-172
-173
-175
-176
-177
-179
-180
-181
-183
-184
-185
-187
-188
-189
-190
-191
-191
-192
-192
-193
-193
-193
-193
-192
-192
-191
-190
-188
-187
-185
-183
-180
-178
-176
-173
-171
-169
-167
-164
-162
-160
-158
-156
-154
-152
-150
-148
-147
-145
-144
-143
-142
-142
-141
-141
-140
-139
-138
-137
-135
-134
-132
-130
-128
-126
-124
-122
-120
-117
-115
-113
-111
-108
-106
-104
-102
-101
-99
-98
-97
-96
-95
-95
-94
-94
-93
-92
-92
-91
-90
-89
-88
-88
-87
-87
-87
-88
-89
-90
-91
-92
-94
-96
-97
-99
-101
-103
-105
-107
-108
-109
-110
-111
-111
-111
-111
-110
-109
-108
-106
-105
-103
-101
-98
-96
-93
-90
-87
-84
-81
-78
-74
-71
-67
-63
-60
-56
-53
-50
-47
-43
-40
-37
-34
-31
-27
-24
-21
-18
-15
-12
-9
-6
-3
0
3
6
10
14
18
22
27
31
36
41
46
51
57
62
67
73
78
84
89
95
101
107
113
119
125
131
136
142
148
153
159
164
169
174
179
184
189
193
198
202
206
209
213
216
219
222
225
228
230
232
233
235
236
237
238
239
240
240
241
242
242
243
244
245
246
247
248
249
251
252
253
253
254
255
255
256
256
256
255
255
254
253
252
251
250
249
248
247
245
244
242
240
237
235
232
229
226
223
220
217
214
211
207
204
200
196
192
187
182
177
172
166
161
155
149
143
136
130
124
118
112
106
101
95
90
85
80
76
72
68
65
62
59
57
56
54
53
51
50
48
47
45
43
41
40
38
36
34
33
31
29
28
26
24
22
20
18
15
13
11
8
6
3
1
-2
-4
-7
-10
-12
-15
-17
-19
-21
-23
-25
-26
-27
-27
-27
-27
-26
-24
-22
-20
-18
-15
-12
-8
-5
-1
3
7
11
16
21
26
32
37
43
49
56
62
69
76
83
90
98
105
112
120
126
133
139
145
151
156
161
166
170
174
178
182
185
189
192
195
198
201
204
206
209
211
214
216
218
221
224
226
228
231
233
234
236
237
238
240
241
242
243
244
245
246
247
247
247
247
247
246
246
244
243
241
239
237
235
232
230
226
223
219
215
211
206
201
195
190
184
178
172
167
161
155
149
144
138
132
126
120
113
107
101
94
88
81
74
67
60
53
46
39
32
25
17
10
2
-6
-14
-22
-30
-39
-47
-56
-65
-73
-82
-91
-99
-108
-116
-124
-132
-139
-147
-154
-161
-167
-173
-179
-184
-189
-193
-197
-200
-203
-205
-207
-208
-209
-210
-211
-211
-211
-210
-210
-209
-208
-207
-206
-205
-203
-201
-200
-197
-195
-192
-189
-186
-182
-179
-175
-171
-168
-164
-160
-156
-152
-149
-145
-141
-137
-133
-130
-126
-122
-119
-115
-112
-108
-105
-101
-97
-93
-89
-85
-81
-77
-73
-69
-65
-61
-57
-53
-50
-46
-43
-40
-37
-35
-32
-29
-26
-24
-21
-18
-15
-12
-9
-6
-2
2
5
9
13
17
21
25
29
33
36
39
43
46
49
52
55
58
61
63
66
68
70
71
72
72
72
71
71
69
68
66
64
61
58
55
51
46
41
36
30
23
17
10
3
-4
-11
-18
-25
-32
-38
-45
-51
-57
-63
-69
-75
-80
-85
-90
-96
-101
-106
-111
-116
-120
-125
-130
-134
-138
-143
-147
-151
-155
-159
-163
-168
-172
-176
-180
-184
-189
-193
-198
-203
-208
-213
-218
-224
-229
-235
-241
-246
-252
-258
-264
-270
-276
-283
-290
-297
-304
-311
-318
-325
-332
-339
-346
-353
-360
-367
-373
-380
-386
-392
-398
-403
-409
-414
-418
-423
-427
-430
-434
-437
-440
-443
-446
-448
-451
-453
-454
-456
-457
-458
-458
-459
-459
-459
-459
-459
-459
-459
-458
-458
-458
-458
-457
-457
-456
-456
-455
-454
-454
-452
-451
-449
-448
-446
-444
-442
-440
-438
-436
-433
-431
-428
-426
-423
-420
-417
-414
-411
-408
-405
-402
-399
-396
-393
-390
-387
-383
-380
-376
-373
-369
-365
-361
-357
-353
-349
-344
-339
-335
-330
-325
-320
-315
-311
-306
-301
-297
-292
-287
-283
-278
-274
-270
-265
-262
-258
-254
-251
-248
-245
-242
-240
-238
-236
-234
-232
-230
-229
-227
-226
-224
-223
-222
-221
-220
-219
-219
-218
-218
-218
-219
-219
-220
-220
-221
-221
-222
-222
-222
-222
-222
-222
-222
-221
-221
-221
-220
-220
-220
-220
-219
-219
-219
-218
-218
-217
-217
-216
-215
-214
-213
-213
-212
-211
-211
-211
-211
-211
-211
-211
-211
-211
-212
-213
-214
-215
-216
-218
-220
-222
-225
-228
-231
-235
-239
-243
-247
-251
-255
-259
-263
-267
-271
-274
-278
-281
-284
-287
-290
-292
-294
-296
-298
-300
-301
-302
-303
-303
-304
-304
-305
-305
-306
-306
-306
-306
-306
-306
-306
-307
-307
-307
-308
-308
-309
-309
-310
-311
-312
-312
-313
-314
-314
-315
-315
-315
-315
-315
-315
-315
-314
-314
-313
-311
-310
-308
-306
-304
-302
-300
-297
-295
-292
-289
-287
-284
-281
-278
-275
-272
-269
-267
-264
-262
-260
-257
-255
-253
-250
-248
-245
-243
-240
-237
-234
-231
-227
-224
-221
-217
-214
-210
-207
-203
-199
-195
-191
-187
-184
-180
-176
-173
-169
-166
-163
-159
-156
-152
-149
-145
-142
-138
-135
-131
-127
-123
-119
-115
-111
-107
-103
-99
-95
-90
-86
-82
-77
-72
-68
-63
-58
-53
-49
-44
-40
-36
-32
-28
-24
-20
-17
-14
-11
-8
-6
-4
-3
-2
-2
-2
-2
-3
-3
-5
-6
-8
-10
-12
-15
-18
-21
-24
-27
-31
-34
-38
-41
-44
-47
-50
-52
-55
-57
-59
-61
-64
-66
-67
-69
-71
-73
-75
-77
-79
-81
-83
-84
-86
-88
-91
-93
-95
-98
-101
-104
-107
-110
-113
-116
-118
-121
-123
-126
-128
-131
-134
-136
-139
-142
-145
-148
-151
-154
-157
-160
-163
-165
-167
-169
-171
-173
-175
-177
-179
-181
-183
-186
-188
-191
-194
-197
-200
-203
-206
-209
-212
-216
-220
-223
-227
-231
-234
-237
-241
-243
-246
-248
-250
-252
-253
-254
-254
-254
-254
-253
-252
-250
-248
-246
-243
-240
-237
-234
-230
-226
-222
-218
-213
-209
-204
-199
-194
-189
-184
-179
-174
-169
-163
-158
-153
-147
-142
-136
-130
-123
-117
-110
-104
-97
-91
-84
-78
-71
-65
-58
-51
-44
-37
-30
-23
-16
-9
-3
4
10
16
22
29
35
41
47
53
60
66
72
78
84
90
95
100
105
109
113
116
119
122
124
126
128
130
131
133
134
135
136
137
138
139
140
141
142
143
144
146
147
149
150
151
153
154
155
156
158
159
161
163
165
167
169
171
173
175
177
178
180
181
182
182
182
182
181
180
179
177
175
173
170
167
164
160
157
153
149
145
141
137
133
129
125
121
117
113
109
105
101
97
92
88
83
79
74
70
65
61
57
53
49
46
43
39
36
33
30
27
24
21
18
16
14
12
10
9
7
6
5
4
3
2
2
1
0
-1
-2
-2
-3
-4
-4
-5
-5
-5
-5
-5
-5
-5
-5
-4
-3
-2
-1
1
3
5
8
11
15
18
22
26
30
34
38
42
46
50
54
57
60
63
66
69
71
73
75
76
77
78
79
79
80
80
80
80
80
80
80
79
79
79
79
79
79
79
78
78
78
77
77
76
76
75
75
75
75
74
74
74
74
74
74
74
74
74
74
74
73
73
73
73
72
72
72
72
72
71
71
70
69
68
67
66
65
63
62
61
60
58
57
55
54
52
50
48
46
43
41
39
36
34
31
29
26
24
21
18
15
12
8
5
2
-2
-5
-9
-12
-15
-17
-20
-22
-24
-26
-28
-29
-31
-32
-33
-34
-35
-36
-38
-39
-40
-41
-42
-44
-45
-46
-48
-49
-50
-51
-52
-54
-55
-56
-58
-59
-61
-62
-63
-64
-65
-66
-67
-67
-68
-69
-69
-70
-71
-71
-71
-71
-71
-71
-71
-71
-70
-69
-69
-68
-67
-66
-64
-63
-62
-60
-59
-57
-56
-54
-52
-50
-48
-46
-44
-41
-39
-37
-34
-32
-30
-28
-25
-23
-21
-19
-17
-15
-13
-11
-9
-6
-4
-2
-1
1
3
5
7
9
10
12
13
15
16
17
18
19
20
21
22
23
23
24
25
25
26
26
27
27
28
28
28
28
29
29
29
29
30
30
30
30
29
29
28
27
26
25
23
22
20
18
16
15
13
11
10
8
7
6
5
4
3
3
2
2
2
2
2
1
1
1
0
0
-1
-1
-2
-3
-4
-5
-6
-7
-9
-10
-12
-14
-15
-17
-19
-21
-23
-25
-28
-30
-33
-36
-38
-41
-44
-47
-49
-52
-54
-57
-59
-62
-64
-66
-69
-72
-75
-78
-82
-85
-89
-93
-98
-102
-106
-110
-114
-117
-121
-124
-128
-131
-133
-136
-138
-140
-141
-143
-144
-145
-145
-146
-146
-146
-146
-146
-146
-146
-145
-144
-144
-142
-141
-139
-138
-136
-133
-131
-129
-126
-124
-121
-119
-117
-114
-112
-109
-107
-105
-102
-100
-98
-96
-94
-91
-89
-87
-85
-83
-80
-78
-77
-75
-73
-71
-69
-68
-66
-64
-62
-60
-58
-56
-55
-53
-51
-50
-48
-46
-45
-44
-43
-41
-40
-39
-38
-37
-36
-35
-33
-31
-30
-28
-26
-24
-22
-20
-19
-17
-15
-14
-12
-11
-9
-7
-6
-4
-2
-1
1
3
5
7
9
11
13
15
17
19
21
24
26
28
30
32
34
36
38
39
40
41
42
43
44
44
44
45
45
45
45
45
45
45
45
45
45
46
46
46
47
47
47
48
48
49
49
49
49
49
50
50
50
50
50
51
51
51
51
51
51
52
52
52
52
53
53
53
53
53
54
54
54
54
54
54
54
54
55
55
55
56
57
58
59
61
62
64
66
68
71
73
76
78
81
84
87
89
92
95
97
100
102
104
107
109
111
113
115
117
119
121
122
124
126
127
129
130
132
133
135
137
139
141
144
146
149
152
154
157
160
163
166
170
173
176
179
182
185
188
191
194
197
200
203
206
209
212
215
217
219
221
223
224
225
226
227
228
228
229
229
230
230
231
231
232
232
233
233
234
235
236
237
238
240
241
242
243
244
246
247
248
249
251
252
254
255
256
258
259
259
260
261
261
261
261
260
260
259
259
258
258
257
257
256
255
254
253
252
250
248
247
245
243
241
239
236
234
232
230
227
225
223
221
219
217
215
213
211
209
207
205
203
201
199
197
194
192
190
188
186
184
182
180
178
176
175
173
172
170
169
168
167
166
166
165
164
164
163
162
162
162
161
161
161
162
162
163
163
164
165
166
167
168
169
171
172
173
174
176
177
178
179
180
180
181
181
182
182
183
183
183
183
183
183
183
182
182
181
181
180
180
179
178
178
178
178
177
177
177
177
177
177
177
177
177
177
177
177
177
178
178
179
179
180
180
181
181
182
182
183
183
183
184
184
184
185
185
186
186
186
187
187
187
187
186
186
186
185
185
184
183
183
182
180
179
177
175
173
170
167
164
160
157
153
149
144
140
135
130
126
121
116
111
106
101
96
91
86
82
77
73
68
64
60
56
53
49
46
43
40
37
35
32
30
27
25
23
20
18
16
13
11
9
6
4
1
-1
-4
-6
-8
-11
-13
-15
-17
-19
-21
-23
-25
-27
-28
-30
-32
-33
-34
-35
-36
-37
-37
-37
-38
-38
-38
-37
-37
-36
-35
-34
-33
-31
-30
-28
-27
-25
-24
-22
-20
-19
-17
-15
-13
-12
-10
-8
-6
-4
-1
1
4
6
9
12
14
17
20
23
26
30
33
36
40
43
47
51
55
59
63
67
72
76
81
85
90
95
100
104
109
114
118
123
127
131
135
139
143
147
150
154
157
161
164
167
171
174
177
181
184
187
190
194
197
200
203
206
209
212
214
216
219
220
222
223
224
225
225
226
226
225
225
224
223
222
221
220
218
217
215
212
210
207
204
201
198
194
190
186
183
179
175
170
166
162
158
154
150
146
142
138
134
129
125
121
117
112
108
104
99
94
90
85
80
76
71
66
62
58
54
50
46
43
39
36
33
30
27
24
21
18
15
12
9
6
3
-1
-4
-8
-11
-15
-19
-22
-26
-30
-33
-37
-41
-44
-48
-51
-54
-57
-60
-63
-66
-68
-71
-73
-75
-76
-78
-79
-80
-81
-82
-83
-84
-84
-85
-86
-87
-88
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-100
-101
-102
-103
-105
-106
-107
-108
-109
-110
-111
-112
-113
-114
-115
-116
-118
-119
-120
-122
-123
-125
-126
-128
-129
-130
-132
-133
-134
-135
-135
-135
-135
-135
-134
-133
-132
-130
-128
-126
-123
-120
-117
-114
-111
-108
-104
-101
-97
-94
-90
-87
-83
-80
-76
-73
-69
-66
-62
-58
-54
-50
-46
-42
-38
-34
-30
-26
-22
-18
-14
-10
-7
-3
0
3
5
8
10
12
14
15
17
18
18
19
20
20
20
20
20
19
19
18
17
16
15
14
13
11
9
8
6
3
1
-1
-4
-6
-9
-12
-15
-18
-21
-24
-27
-30
-33
-36
-39
-42
-45
-48
-50
-53
-55
-57
-59
-61
-63
-65
-67
-69
-71
-73
-74
-76
-78
-80
-82
-84
-86
-88
-91
-93
-95
-97
-100
-102
-104
-106
-108
-110
-111
-113
-114
-115
-117
-117
-118
-119
-120
-120
-120
-120
-120
-120
-119
-119
-118
-117
-116
-115
-114
-113
-112
-110
-109
-107
-105
-103
-101
-99
-96
-94
-91
-89
-86
-84
-81
-78
-76
-73
-70
-68
-66
-63
-61
-59
-58
-56
-55
-54
-53
-52
-52
-51
-51
-51
-52
-52
-53
-53
-54
-54
-55
-56
-57
-58
-60
-61
-62
-64
-65
-67
-69
-71
-72
-74
-76
-78
-81
-83
-85
-87
-90
-93
-96
-99
-102
-106
-109
-113
-117
-122
-126
-131
-135
-140
-145
-150
-155
-160
-166
-171
-177
-182
-188
-194
-199
-205
-211
-217
-223
-229
-235
-240
-246
-251
-256
-261
-266
-270
-275
-279
-283
-287
-291
-295
-298
-302
-305
-308
-311
-314
-317
-320
-323
-326
-329
-331
-334
-337
-339
-342
-344
-346
-348
-350
-352
-354
-356
-358
-360
-362
-363
-365
-367
-368
-369
-370
-371
-372
-372
-372
-372
-372
-372
-371
-371
-370
-370
-369
-368
-367
-366
-364
-363
-362
-360
-358
-356
-354
-352
-350
-348
-346
-344
-342
-340
-338
-336
-333
-331
-329
-327
-324
-322
-320
-318
-315
-313
-311
-310
-308
-306
-304
-303
-301
-299
-297
-296
-294
-292
-290
-288
-286
-284
-282
-280
-277
-275
-272
-270
-268
-266
-264
-262
-260
-258
-256
-255
-253
-252
-250
-249
-248
-247
-246
-245
-244
-244
-243
-242
-242
-241
-241
-240
-240
-240
-239
-239
-238
-238
-237
-237
-237
-236
-236
-235
-234
-234
-233
-232
-231
-230
-230
-229
-228
-227
-226
-225
-224
-223
-221
-220
-219
-218
-217
-215
-214
-212
-211
-210
-208
-207
-205
-204
-202
-201
-199
-198
-196
-195
-194
-192
-191
-189
-188
-186
-185
-184
-182
-181
-180
-178
-177
-176
-174
-173
-172
-171
-170
-169
-168
-168
-167
-166
-166
-165
-165
-164
-164
-164
-164
-164
-164
-163
-164
-164
-164
-164
-164
-164
-163
-163
-163
-163
-162
-161
-161
-160
-159
-158
-157
-156
-155
-154
-153
-151
-150
-148
-147
-146
-144
-143
-141
-140
-138
-136
-135
-133
-131
-129
-127
-124
-122
-119
-116
-113
-110
-107
-103
-100
-96
-93
-90
-86
-82
-79
-75
-72
-68
-65
-61
-58
-54
-51
-48
-45
-42
-39
-36
-33
-30
-27
-24
-21
-18
-16
-13
-11
-8
-6
-4
-2
0
1
3
4
6
8
9
11
12
14
15
17
18
20
22
24
26
28
30
33
35
38
40
43
46
48
51
54
57
60
62
65
68
70
72
75
77
79
80
82
84
86
89
91
93
96
98
101
103
106
108
111
113
116
118
121
123
125
128
130
132
134
137
139
141
143
145
147
149
151
153
154
155
157
158
159
160
160
161
161
161
161
161
161
161
161
160
160
159
159
158
157
157
156
155
155
154
153
153
152
152
151
151
150
150
149
149
148
148
147
147
147
146
146
146
145
144
144
143
142
141
140
139
138
137
136
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
119
118
117
117
116
115
115
114
114
114
113
113
113
113
113
113
114
114
115
115
116
116
117
118
119
119
120
121
122
123
124
125
125
126
127
128
129
129
130
131
131
132
133
133
134
134
135
136
136
137
138
138
139
140
140
141
141
142
142
143
143
144
145
145
146
147
148
149
151
152
154
155
157
159
161
163
165
167
170
172
174
176
178
180
182
184
186
187
189
190
191
193
194
195
195
196
197
198
198
199
200
201
201
202
203
203
204
204
205
205
205
205
205
205
205
205
205
204
204
203
203
202
201
201
200
199
198
197
196
195
194
193
192
191
190
189
188
186
185
184
183
181
180
179
177
176
175
174
172
171
170
169
167
166
164
162
161
159
157
156
154
152
151
149
147
146
144
143
141
140
138
137
136
134
132
131
129
128
126
125
123
121
120
118
117
115
114
112
110
108
107
105
103
101
100
99
97
96
95
95
94
93
93
93
92
92
92
92
92
92
92
93
93
93
93
93
94
94
94
95
95
96
97
97
98
99
99
100
100
101
101
101
101
101
101
101
101
101
100
99
99
98
97
95
94
93
92
90
89
88
87
85
84
83
83
82
81
81
80
80
80
80
80
80
81
81
82
82
83
84
85
86
87
88
88
89
90
91
92
93
94
95
96
97
97
98
99
99
100
100
100
101
101
101
102
102
103
103
103
103
104
104
104
105
105
106
106
107
107
108
108
109
109
110
110
111
111
112
112
112
112
112
112
111
111
111
110
110
110
109
109
109
109
109
109
109
109
109
110
110
111
111
112
113
113
114
115
115
116
117
118
119
119
120
121
122
123
124
124
125
126
127
127
128
129
130
131
131
132
133
134
135
136
136
137
138
139
139
140
141
141
142
143
143
144
144
145
145
145
145
145
145
144
144
143
143
142
142
141
140
140
139
138
138
137
136
135
134
133
131
130
128
127
125
123
122
120
118
116
115
113
111
108
106
104
102
100
97
95
93
90
88
85
83
80
78
75
72
69
66
63
60
57
54
51
47
44
40
37
33
29
26
22
18
14
10
6
3
-1
-5
-9
-13
-17
-21
-25
-29
-33
-37
-41
-46
-50
-54
-58
-62
-66
-69
-73
-76
-80
-83
-86
-89
-92
-95
-98
-100
-103
-105
-107
-109
-111
-113
-115
-117
-118
-119
-121
-122
-123
-124
-125
-126
-127
-129
-130
-131
-132
-133
-134
-136
-137
-138
-139
-140
-141
-142
-143
-145
-146
-147
-148
-149
-150
-150
-151
-152
-152
-153
-153
-154
-154
-154
-155
-155
-155
-155
-155
-155
-154
-154
-154
-154
-154
-154
-154
-154
-154
-154
-154
-154
-154
-153
-153
-153
-152
-152
-151
-151
-150
-149
-148
-147
-146
-145
-144
-143
-142
-141
-140
-139
-138
-138
-137
-136
-136
-135
-135
-135
-135
-135
-135
-135
-135
-136
-136
-136
-137
-137
-138
-138
-138
-139
-139
-139
-140
-140
-140
-141
-141
-141
-142
-142
-142
-142
-141
-141
-140
-140
-139
-138
-137
-136
-135
-135
-134
-133
-131
-130
-129
-128
-127
-126
-125
-124
-124
-123
-122
-121
-121
-120
-120
-120
-120
-120
-120
-120
-120
-120
-121
-122
-122
-123
-124
-125
-126
-127
-128
-129
-130
-131
-132
-133
-134
-135
-136
-137
-137
-138
-139
-140
-141
-141
-142
-143
-143
-144
-145
-146
-147
-148
-149
-151
-152
-153
-154
-156
-157
-158
-160
-161
-162
-163
-165
-166
-167
-168
-170
-171
-172
-173
-174
-175
-175
-176
-177
-178
-179
-180
-181
-182
-183
-184
-185
-186
-188
-189
-191
-192
-194
-195
-197
-198
-200
-202
-204
-206
-207
-209
-211
-213
-214
-216
-217
-219
-220
-222
-223
-225
-226
-228
-230
-231
-233
-234
-235
-237
-239
-240
-242
-243
-245
-247
-249
-251
-253
-255
-257
-259
-262
-264
-267
-269
-272
-275
-278
-280
-283
-286
-289
-292
-295
-298
-301
-304
-307
-309
-312
-315
-318
-320
-323
-325
-327
-328
-330
-331
-332
-333
-333
-334
-334
-334
-334
-333
-333
-332
-331
-329
-328
-326
-324
-322
-319
-317
-314
-311
-308
-305
-302
-298
-295
-291
-287
-283
-278
-274
-270
-265
-260
-255
-250
-245
-240
-234
-229
-223
-218
-212
-206
-200
-194
-188
-182
-175
-169
-162
-155
-148
-141
-134
-127
-119
-112
-105
-97
-90
-82
-75
-67
-59
-52
-44
-37
-30
-23
-15
-8
-2
5
12
19
25
32
38
45
51
57
63
69
75
81
86
92
97
102
108
113
118
123
128
133
138
142
147
152
156
160
165
169
173
177
181
184
188
191
195
198
201
204
207
210
213
216
218
220
223
225
227
229
230
232
233
234
235
235
235
236
235
235
234
234
233
232
230
229
227
225
223
220
218
215
212
209
206
203
200
196
192
189
185
181
178
174
170
166
163
159
155
152
148
145
141
138
135
132
129
126
124
121
119
117
114
112
110
108
106
104
102
100
98
96
94
93
91
89
88
86
84
83
81
80
78
76
75
73
72
70
68
67
65
64
63
61
60
59
58
57
56
55
54
54
53
53
53
53
53
53
53
53
54
54
55
56
56
57
58
59
60
62
63
64
65
66
68
69
70
71
72
73
73
74
75
75
76
76
76
77
77
77
77
77
78
78
78
78
79
79
79
79
80
80
80
80
80
80
80
80
80
80
80
80
80
80
79
79
79
79
79
79
78
78
78
78
78
77
77
77
76
76
75
75
74
73
73
72
71
70
69
69
68
67
66
65
64
63
62
61
61
60
59
59
58
58
57
57
56
56
55
55
54
54
54
53
53
53
53
53
53
53
53
53
53
53
54
54
55
56
56
57
58
59
60
61
62
63
64
65
66
67
68
69
71
72
74
75
77
78
80
81
83
85
87
88
90
92
93
95
96
98
99
101
102
104
105
106
107
108
109
110
110
111
111
112
112
112
112
111
111
111
110
110
109
108
107
106
105
103
101
99
97
95
93
90
88
85
82
79
76
72
69
66
62
59
55
52
48
45
41
38
34
31
27
24
20
17
13
9
5
1
-2
-6
-10
-14
-18
-22
-26
-30
-34
-38
-42
-46
-50
-53
-57
-61
-65
-68
-72
-76
-79
-83
-86
-89
-92
-95
-98
-101
-103
-106
-108
-110
-112
-114
-116
-118
-120
-122
-123
-125
-127
-129
-130
-132
-134
-135
-137
-138
-140
-141
-143
-144
-146
-147
-149
-150
-151
-152
-153
-154
-155
-155
-156
-156
-156
-156
-156
-156
-156
-156
-155
-155
-155
-154
-154
-153
-153
-152
-152
-151
-151
-150
-150
-149
-149
-148
-148
-147
-147
-146
-146
-145
-145
-144
-143
-143
-142
-142
-141
-141
-140
-139
-138
-138
-137
-136
-135
-135
-134
-133
-133
-132
-131
-131
-130
-130
-130
-129
-129
-129
-128
-128
-127
-127
-127
-126
-126
-125
-125
-124
-124
-123
-122
-122
-121
-120
-120
-119
-118
-118
-117
-117
-116
-116
-115
-115
-115
-115
-114
-114
-114
-114
-114
-114
-114
-114
-114
-114
-114
-114
-114
-114
-114
-114
-114
-114
-114
-114
-114
-114
-114
-113
-113
-113
-112
-112
-111
-110
-109
-109
-108
-107
-105
-104
-103
-102
-100
-99
-98
-96
-95
-93
-92
-90
-89
-87
-86
-84
-83
-81
-80
-78
-77
-76
-74
-73
-71
-70
-69
-68
-66
-65
-63
-62
-61
-59
-58
-56
-55
-54
-52
-51
-50
-49
-47
-46
-45
-44
-42
-41
-40
-38
-37
-35
-33
-32
-30
-28
-27
-25
-23
-21
-19
-17
-16
-14
-12
-10
-9
-7
-5
-4
-2
0
1
3
5
6
8
10
11
13
15
16
18
19
21
22
23
25
26
27
28
30
31
32
33
34
35
36
37
38
39
40
41
42
42
43
44
44
45
46
47
47
48
49
50
51
51
52
53
54
55
56
57
58
59
61
62
63
64
65
66
66
67
68
69
69
70
71
71
72
72
73
74
74
75
75
75
75
76
76
75
75
75
75
74
74
74
73
73
72
72
71
71
70
70
69
68
67
67
66
65
64
63
62
61
60
59
58
57
55
54
52
51
49
48
46
44
43
41
40
38
37
36
35
34
33
32
31
31
30
30
30
30
30
29
29
29
29
29
29
30
30
30
31
31
32
32
33
33
34
35
35
36
37
37
38
39
40
41
41
42
43
44
45
45
46
47
48
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
66
67
67
68
68
69
70
70
71
71
72
73
73
74
74
75
75
76
76
77
77
78
78
78
78
79
79
79
78
78
78
77
77
76
76
75
74
73
72
71
70
69
68
67
66
65
63
62
62
61
60
59
58
58
57
56
56
55
55
55
55
55
55
55
55
55
56
56
57
58
58
59
60
61
62
63
64
65
66
67
67
68
69
69
70
70
71
71
71
71
71
70
70
70
69
68
67
66
65
64
63
62
61
59
58
57
55
54
52
51
49
47
46
44
42
41
39
37
35
33
31
29
26
24
22
20
18
15
13
11
9
7
4
2
0
-2
-4
-6
-8
-10
-12
-14
-15
-17
-18
-20
-21
-23
-24
-25
-27
-28
-29
-30
-32
-33
-34
-36
-37
-39
-40
-42
-43
-45
-47
-48
-50
-52
-54
-56
-57
-59
-61
-63
-64
-66
-67
-69
-70
-71
-73
-74
-75
-76
-76
-77
-78
-78
-79
-79
-80
-80
-80
-80
-81
-81
-81
-81
-81
-81
-82
-82
-82
-82
-82
-82
-83
-83
-83
-84
-84
-85
-85
-86
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-97
-98
-99
-101
-102
-103
-105
-106
-107
-108
-109
-110
-111
-112
-112
-113
-113
-113
-113
-113
-113
-113
-112
-111
-111
-110
-109
-108
-107
-106
-105
-104
-102
-101
-100
-98
-97
-96
-94
-93
-91
-90
-88
-87
-85
-83
-82
-80
-78
-76
-75
-73
-71
-69
-67
-65
-64
-62
-60
-58
-56
-54
-52
-50
-48
-46
-43
-41
-39
-37
-34
-32
-29
-27
-24
-21
-19
-16
-13
-11
-8
-5
-3
0
2
5
8
10
13
15
18
21
23
26
28
31
33
36
38
41
43
45
48
50
52
55
57
59
61
63
66
68
70
72
74
77
79
81
83
85
87
89
91
93
95
97
99
101
103
104
106
107
109
110
111
112
113
114
115
117
118
119
120
121
122
123
124
125
126
127
127
128
129
130
131
131
132
133
134
134
135
136
136
137
137
138
139
139
140
140
141
142
142
143
143
144
145
145
146
146
147
148
149
150
151
152
153
154
155
156
158
159
160
161
162
163
164
165
166
167
168
169
170
170
171
172
173
173
174
175
175
176
176
177
177
177
177
177
177
176
176
175
174
173
172
171
170
169
167
166
165
163
162
160
158
157
155
153
151
149
147
146
144
142
140
138
136
134
132
130
128
126
124
122
120
118
116
113
111
109
106
104
101
99
96
93
90
88
85
82
79
76
74
71
68
66
63
61
58
56
54
51
49
47
44
42
40
38
36
34
32
30
28
26
25
23
21
19
18
16
15
14
12
11
10
8
7
6
5
4
3
2
1
0
0
-1
-1
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-3
-3
-3
-4
-4
-5
-5
-6
-7
-8
-9
-10
-12
-13
-14
-15
-17
-18
-20
-21
-22
-24
-25
-27
-28
-29
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-40
-41
-42
-42
-43
-43
-43
-44
-44
-44
-44
-44
-45
-45
-45
-45
-45
-45
-45
-45
-45
-45
-45
-45
-45
-45
-45
-45
-45
-45
-45
-45
-45
-46
-46
-46
-46
-47
-47
-47
-48
-48
-49
-50
-50
-51
-52
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-65
-66
-67
-69
-70
-72
-74
-75
-77
-79
-80
-82
-84
-85
-87
-89
-91
-92
-94
-96
-98
-100
-101
-103
-105
-106
-108
-109
-110
-112
-113
-113
-114
-115
-116
-116
-116
-117
-117
-117
-118
-118
-118
-118
-118
-118
-118
-118
-118
-117
-117
-117
-117
-117
-117
-116
-116
-116
-116
-116
-116
-116
-116
-116
-116
-116
-116
-116
-117
-117
-117
-117
-118
-118
-119
-119
-119
-120
-120
-121
-122
-122
-122
-123
-123
-124
-124
-124
-124
-124
-124
-124
-124
-124
-124
-124
-124
-124
-124
-124
-123
-123
-123
-122
-122
-122
-121
-121
-120
-120
-119
-119
-118
-118
-117
-117
-117
-116
-116
-115
-115
-115
-114
-114
-113
-113
-113
-112
-112
-112
-112
-111
-111
-111
-111
-111
-110
-110
-110
-110
-110
-110
-110
-110
-110
-110
-110
-109
-109
-109
-108
-107
-107
-106
-105
-104
-102
-101
-100
-99
-97
-96
-94
-93
-92
-90
-89
-87
-85
-84
-82
-80
-79
-77
-75
-74
-72
-70
-68
-66
-64
-62
-60
-58
-56
-53
-51
-49
-48
-46
-44
-42
-40
-39
-37
-36
-34
-33
-31
-29
-28
-26
-25
-23
-22
-20
-18
-17
-15
-13
-12
-10
-8
-6
-4
-2
0
2
4
7
9
11
14
16
18
21
23
26
28
30
33
35
37
40
42
44
47
49
51
54
56
58
60
63
65
67
69
71
73
75
76
78
79
81
82
83
84
85
86
86
87
87
87
87
87
87
87
87
87
86
86
85
85
84
83
83
82
81
80
80
79
78
77
76
75
74
72
71
69
67
66
64
62
60
57
55
53
50
48
45
43
40
38
35
32
29
26
23
21
18
15
12
9
6
3
1
-2
-4
-7
-9
-11
-14
-16
-18
-20
-21
-23
-25
-27
-28
-30
-31
-32
-33
-34
-35
-36
-37
-38
-38
-39
-39
-39
-40
-40
-40
-40
-39
-39
-39
-38
-38
-37
-36
-36
-35
-34
-34
-33
-32
-32
-31
-30
-29
-28
-27
-26
-25
-24
-23
-22
-21
-20
-19
-18
-17
-16
-15
-13
-12
-11
-9
-8
-6
-5
-3
-1
1
3
5
7
9
11
14
16
19
21
24
27
30
32
35
38
41
44
46
49
52
54
57
60
62
65
67
69
72
74
76
79
81
83
85
88
90
92
94
96
98
101
103
105
107
110
112
114
116
118
120
122
123
125
126
127
128
129
130
130
131
131
132
132
132
132
133
133
133
133
133
133
133
133
132
132
132
132
131
131
131
130
130
129
128
128
127
126
125
125
124
123
122
121
119
118
117
115
114
113
111
109
108
106
104
103
101
99
97
95
93
91
89
87
84
82
79
77
75
72
70
67
65
63
61
59
57
55
53
52
50
49
47
46
45
44
43
42
41
40
39
38
37
37
36
35
34
33
32
31
30
29
28
27
26
25
25
24
23
22
22
21
21
21
21
20
20
21
21
21
22
22
23
24
24
25
26
27
28
29
30
31
33
34
35
36
38
39
41
42
44
45
47
48
50
52
54
55
57
59
60
62
64
65
67
69
70
72
74
75
77
79
80
82
84
85
87
89
90
92
93
95
96
98
99
100
102
103
105
106
108
109
111
112
114
115
116
118
119
120
122
123
124
125
126
127
128
129
130
130
131
131
132
132
133
133
133
134
134
134
134
134
134
134
134
134
133
133
133
132
132
131
131
130
130
129
128
128
127
126
126
125
124
123
122
121
120
119
118
117
115
114
112
111
109
107
105
103
101
99
97
94
92
89
86
84
81
78
76
73
70
68
65
63
60
58
55
53
51
49
47
45
43
42
40
39
37
36
34
33
32
31
29
28
27
26
25
23
22
21
20
18
17
16
14
13
12
10
9
7
6
4
3
1
-1
-2
-4
-6
-8
-11
-13
-15
-17
-20
-22
-24
-27
-29
-32
-34
-36
-39
-41
-43
-45
-48
-50
-52
-54
-56
-58
-60
-62
-64
-66
-68
-70
-73
-75
-77
-80
-82
-85
-87
-90
-92
-95
-97
-100
-103
-105
-108
-111
-113
-116
-119
-122
-124
-127
-129
-132
-134
-137
-139
-142
-144
-146
-148
-150
-152
-154
-156
-158
-160
-161
-163
-164
-166
-167
-168
-169
-170
-171
-171
-172
-173
-173
-174
-174
-175
-175
-175
-175
-176
-176
-176
-176
-176
-176
-176
-176
-176
-176
-176
-176
-176
-176
-175
-175
-174
-174
-173
-173
-172
-171
-171
-170
-169
-168
-167
-166
-165
-165
-164
-163
-162
-161
-161
-160
-159
-158
-158
-157
-156
-156
-155
-155
-154
-154
-153
-153
-153
-153
-152
-152
-152
-152
-152
-152
-152
-152
-152
-152
-152
-152
-152
-152
-152
-153
-153
-153
-153
-154
-154
-154
-154
-155
-155
-155
-155
-155
-156
-156
-156
-156
-156
-156
-156
-157
-157
-157
-157
-158
-158
-158
-158
-159
-159
-159
-160
-160
-160
-161
-161
-161
-162
-162
-162
-162
-163
-163
-163
-163
-163
-164
-164
-164
-164
-165
-165
-165
-166
-166
-166
-167
-167
-167
-168
-168
-168
-169
-169
-169
-169
-170
-170
-170
-170
-170
-170
-171
-171
-171
-170
-170
-170
-170
-170
-169
-169
-168
-168
-167
-166
-165
-165
-164
-163
-161
-160
-159
-158
-156
-155
-153
-151
-150
-148
-146
-144
-142
-141
-139
-137
-135
-132
-130
-128
-126
-124
-122
-120
-117
-115
-113
-110
-108
-105
-103
-100
-98
-95
-92
-89
-87
-84
-81
-78
-75
-72
-69
-66
-63
-60
-57
-54
-50
-47
-44
-41
-37
-34
-31
-28
-24
-21
-18
-15
-12
-9
-7
-4
-1
1
4
6
8
11
13
15
17
19
21
23
25
27
29
31
33
34
36
38
40
41
43
45
47
49
50
52
54
56
57
59
60
62
63
65
66
68
69
70
72
73
74
75
76
78
79
80
81
82
83
84
85
86
87
87
88
89
90
90
91
92
92
92
93
93
94
94
95
95
96
96
97
98
98
99
100
101
102
103
103
104
105
107
108
109
110
112
113
115
116
118
120
122
123
125
127
129
131
133
135
137
139
141
143
145
147
149
151
153
154
156
158
160
162
163
165
167
168
170
172
174
175
177
179
181
183
184
186
188
190
192
194
196
198
200
202
204
206
208
210
211
213
215
216
218
219
220
222
223
224
226
227
228
229
230
231
232
233
234
235
235
236
237
237
238
238
239
239
239
239
239
239
239
238
238
237
236
235
233
232
230
228
226
224
222
220
218
215
213
210
207
204
201
198
195
192
189
185
182
178
175
171
168
164
161
157
153
149
146
142
138
134
129
125
121
117
113
108
104
100
96
92
88
84
80
76
72
68
65
61
57
54
51
47
44
41
38
35
32
29
26
24
21
19
17
14
12
10
9
7
5
4
2
1
0
-2
-3
-4
-5
-6
-6
-7
-8
-8
-8
-9
-9
-9
-9
-8
-8
-8
-8
-7
-7
-7
-6
-6
-6
-5
-5
-4
-4
-4
-3
-3
-2
-2
-1
0
0
1
2
3
4
5
6
7
8
9
10
11
12
13
13
14
15
16
17
18
19
19
20
21
22
22
23
24
25
25
26
27
28
28
29
30
30
31
32
32
33
34
35
35
36
37
38
39
39
40
41
42
42
43
44
44
45
45
46
46
47
47
47
48
48
48
48
48
48
48
47
47
47
47
46
46
45
45
44
44
43
43
42
41
41
40
39
39
38
37
37
36
35
35
34
33
32
32
31
30
29
29
28
27
26
26
25
25
24
24
23
23
23
23
22
22
22
22
22
22
22
21
21
21
21
21
20
20
20
19
19
19
18
18
17
17
17
16
16
15
15
14
14
13
13
12
12
11
11
10
10
9
9
8
8
7
7
6
6
6
5
5
4
4
4
3
3
2
2
1
1
0
0
-1
-1
-2
-3
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-26
-27
-28
-29
-30
-31
-33
-34
-35
-36
-38
-39
-41
-42
-43
-44
-46
-47
-48
-49
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-63
-64
-65
-66
-67
-69
-70
-71
-72
-73
-75
-76
-77
-78
-79
-80
-81
-82
-84
-85
-86
-87
-88
-90
-91
-92
-93
-95
-96
-97
-98
-100
-101
-102
-103
-104
-105
-106
-107
-108
-109
-110
-110
-111
-112
-112
-112
-113
-113
-113
-113
-113
-113
-113
-113
-112
-112
-111
-111
-110
-109
-108
-107
-106
-105
-104
-103
-102
-101
-99
-98
-97
-96
-94
-93
-92
-90
-89
-88
-86
-85
-83
-82
-81
-79
-78
-77
-75
-74
-72
-71
-70
-68
-67
-65
-64
-62
-60
-59
-57
-56
-54
-53
-52
-50
-49
-48
-46
-45
-44
-43
-41
-40
-39
-37
-36
-35
-33
-32
-30
-28
-27
-25
-23
-22
-20
-18
-16
-15
-13
-11
-10
-9
-7
-6
-5
-4
-3
-2
-1
0
0
1
1
2
3
3
4
5
6
6
7
8
9
9
10
11
12
13
14
15
16
18
19
20
22
23
25
26
28
30
32
33
35
37
39
41
43
45
47
50
52
54
57
59
62
64
67
69
72
75
77
80
83
85
88
91
94
97
100
103
105
108
111
114
116
119
121
124
126
128
130
132
134
136
138
139
141
142
143
144
146
147
147
148
149
149
150
150
151
151
151
151
151
151
151
150
150
150
149
148
147
147
145
144
143
142
140
139
137
136
134
133
131
129
127
125
124
122
120
118
116
114
112
110
109
107
105
103
101
99
97
95
92
90
88
86
84
81
79
77
74
72
69
67
64
62
59
56
53
51
48
45
42
39
37
34
31
28
25
22
19
17
14
11
8
5
3
0
-3
-6
-8
-11
-14
-17
-19
-22
-25
-28
-31
-33
-36
-39
-42
-45
-48
-51
-54
-57
-60
-63
-66
-69
-71
-74
-77
-80
-83
-86
-88
-91
-94
-96
-99
-102
-104
-107
-110
-112
-115
-117
-119
-122
-124
-126
-128
-130
-131
-133
-135
-136
-138
-139
-141
-142
-143
-144
-145
-146
-147
-147
-148
-149
-149
-150
-150
-150
-151
-151
-151
-152
-152
-152
-153
-153
-153
-153
-154
-154
-154
-154
-154
-154
-154
-154
-154
-154
-154
-153
-153
-153
-153
-152
-152
-152
-151
-151
-150
-150
-149
-149
-148
-148
-147
-146
-145
-145
-144
-143
-142
-141
-140
-139
-139
-138
-137
-136
-135
-134
-133
-132
-131
-130
-129
-128
-127
-126
-125
-123
-122
-121
-120
-118
-117
-116
-114
-113
-111
-110
-109
-107
-106
-104
-102
-101
-99
-97
-96
-94
-92
-90
-88
-86
-85
-83
-81
-79
-77
-75
-73
-71
-69
-67
-65
-63
-61
-59
-57
-55
-53
-51
-49
-47
-46
-44
-42
-40
-38
-36
-34
-33
-31
-29
-28
-26
-24
-23
-21
-20
-18
-17
-15
-14
-13
-11
-10
-8
-7
-6
-4
-3
-2
-1
1
2
3
4
5
6
7
8
9
10
11
12
13
15
16
17
18
19
20
21
22
23
25
26
27
28
30
31
32
34
35
37
38
39
41
43
44
46
47
49
51
52
54
56
58
60
61
63
65
67
69
71
73
74
76
78
80
82
84
86
88
90
92
94
96
98
100
102
104
106
108
110
112
114
115
117
119
121
123
124
126
127
129
130
131
132
134
135
136
137
138
139
140
140
141
142
143
144
144
145
146
146
147
147
148
149
149
150
150
150
151
151
152
152
152
152
153
153
153
153
154
154
154
154
154
154
154
154
154
153
153
153
153
153
152
152
152
151
151
150
150
149
149
148
147
147
146
145
144
144
143
142
141
140
139
138
137
136
135
134
132
131
130
129
127
126
124
122
121
119
117
116
114
112
110
109
107
105
103
102
100
98
97
95
94
92
91
89
88
86
85
84
83
81
80
79
78
77
76
75
74
74
73
72
71
71
70
70
69
69
68
68
68
67
67
67
67
67
66
66
66
66
66
65
65
65
65
65
64
64
64
64
63
63
63
63
63
62
62
62
62
62
62
62
62
63
63
63
64
64
65
65
66
66
67
67
68
68
69
69
70
70
70
71
71
72
72
72
73
73
73
74
74
74
75
75
75
76
76
76
77
77
77
78
78
79
79
79
80
80
80
80
80
81
81
81
80
80
80
80
79
79
79
78
77
77
76
76
75
75
74
74
73
72
72
71
71
70
70
69
69
68
68
67
67
67
66
66
66
65
65
65
65
64
64
64
64
63
63
63
63
62
62
62
61
61
60
60
59
58
58
57
56
55
54
53
52
50
49
48
46
45
43
42
40
39
37
36
34
33
32
30
29
27
26
25
23
22
21
20
18
17
16
15
14
13
12
11
10
9
7
6
5
4
3
2
1
0
-1
-2
-4
-5
-6
-7
-8
-10
-11
-13
-14
-16
-17
-19
-21
-22
-24
-26
-28
-30
-31
-33
-35
-37
-38
-40
-42
-43
-45
-46
-47
-48
-49
-50
-51
-52
-52
-53
-53
-53
-53
-53
-53
-53
-53
-53
-53
-52
-52
-51
-51
-50
-50
-49
-48
-48
-47
-46
-46
-45
-44
-44
-43
-42
-42
-41
-40
-40
-39
-38
-38
-37
-37
-36
-36
-35
-35
-34
-34
-34
-33
-33
-33
-33
-33
-33
-33
-33
-33
-33
-33
-33
-33
-34
-34
-34
-34
-35
-35
-35
-36
-36
-37
-37
-38
-38
-39
-40
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-53
-54
-55
-56
-57
-59
-60
-61
-63
-64
-66
-67
-69
-70
-72
-74
-75
-77
-79
-81
-83
-85
-86
-88
-90
-92
-94
-96
-98
-100
-102
-104
-106
-108
-110
-112
-114
-116
-118
-120
-122
-123
-125
-127
-129
-131
-132
-134
-136
-138
-139
-141
-143
-145
-146
-148
-150
-151
-153
-155
-156
-158
-160
-161
-163
-165
-166
-168
-169
-171
-172
-174
-175
-177
-178
-180
-181
-182
-183
-184
-185
-186
-187
-188
-189
-189
-190
-190
-191
-191
-191
-191
-192
-192
-192
-191
-191
-191
-191
-190
-190
-189
-189
-188
-188
-187
-187
-186
-186
-185
-185
-184
-183
-183
-182
-181
-181
-180
-179
-179
-178
-177
-176
-175
-175
-174
-173
-172
-171
-170
-169
-168
-167
-166
-165
-164
-163
-162
-161
-160
-159
-158
-157
-156
-155
-154
-153
-151
-150
-149
-148
-146
-145
-144
-142
-141
-139
-137
-136
-134
-132
-130
-129
-127
-125
-123
-121
-119
-117
-115
-113
-111
-110
-108
-106
-104
-102
-100
-99
-97
-95
-94
-92
-90
-89
-87
-86
-84
-83
-81
-80
-79
-77
-76
-75
-74
-72
-71
-70
-69
-68
-67
-66
-66
-65
-64
-63
-63
-62
-62
-61
-61
-60
-60
-59
-59
-58
-58
-57
-57
-56
-56
-56
-55
-55
-55
-54
-54
-54
-54
-53
-53
-53
-53
-53
-53
-53
-53
-53
-53
-53
-53
-53
-53
-53
-54
-54
-54
-55
-55
-56
-56
-57
-58
-58
-59
-60
-61
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-78
-79
-80
-80
-81
-81
-82
-82
-83
-83
-84
-84
-84
-85
-85
-85
-86
-86
-86
-86
-86
-86
-86
-87
-87
-87
-87
-87
-87
-87
-87
-87
-87
-87
-86
-86
-86
-86
-85
-85
-85
-84
-84
-83
-82
-82
-81
-80
-79
-78
-77
-76
-75
-74
-73
-72
-71
-69
-68
-66
-65
-63
-61
-60
-58
-56
-55
-53
-51
-50
-48
-46
-45
-43
-42
-40
-39
-37
-36
-35
-33
-32
-31
-30
-28
-27
-26
-25
-23
-22
-21
-20
-19
-18
-17
-15
-14
-13
-12
-11
-10
-9
-8
-7
-6
-6
-5
-4
-3
-3
-2
-1
-1
0
1
1
2
2
3
3
4
5
5
6
6
7
7
8
8
9
9
10
10
11
11
12
12
13
13
14
14
14
15
15
15
16
16
16
17
17
18
18
19
19
20
21
22
23
24
25
26
27
28
30
31
33
35
36
38
40
41
43
45
47
48
50
52
54
56
58
60
62
64
66
68
70
71
73
75
77
79
81
83
85
87
88
90
92
94
95
97
99
100
102
104
105
107
108
110
111
112
114
115
116
117
119
120
121
122
123
124
125
126
126
127
128
129
129
130
130
131
131
132
132
132
133
133
133
133
133
133
133
133
133
133
133
132
132
132
131
131
130
130
129
129
128
128
127
127
126
126
125
125
124
124
123
122
122
121
121
120
120
119
119
118
117
117
116
116
115
115
114
113
113
112
112
112
111
111
110
110
110
109
109
109
109
108
108
107
107
107
106
106
105
104
104
103
102
102
101
100
100
99
98
97
97
96
95
94
93
93
92
91
90
89
89
88
87
87
86
85
84
84
83
82
82
81
80
79
79
78
77
76
75
74
73
72
71
70
70
68
67
66
65
64
63
62
61
60
58
57
56
55
54
52
51
50
49
48
47
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
29
28
27
26
25
24
23
22
21
19
18
17
16
15
13
12
11
9
8
7
6
4
3
2
1
0
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-12
-13
-14
-14
-15
-16
-16
-16
-17
-17
-17
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-18
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-19
-18
-18
-18
-18
-17
-17
-17
-16
-16
-16
-15
-15
-14
-14
-13
-13
-12
-12
-11
-11
-10
-10
-9
-8
-8
-7
-6
-5
-5
-4
-3
-2
-2
-1
0
0
1
2
2
3
4
4
5
5
6
7
7
8
8
9
9
9
10
10
11
11
12
12
12
13
13
13
14
14
14
14
15
15
15
15
15
15
15
14
14
14
13
13
13
12
12
11
10
10
9
8
7
6
5
5
4
3
2
1
0
-1
-2
-3
-4
-5
-6
-8
-9
-10
-11
-12
-13
-15
-16
-17
-18
-19
-20
-22
-23
-24
-25
-26
-28
-29
-30
-31
-33
-34
-35
-36
-38
-39
-40
-42
-43
-44
-46
-47
-48
-50
-51
-52
-54
-55
-57
-58
-60
-61
-62
-64
-65
-67
-68
-69
-71
-72
-74
-75
-76
-78
-79
-80
-82
-83
-84
-85
-87
-88
-89
-90
-91
-93
-94
-95
-96
-97
-98
-100
-101
-102
-103
-104
-105
-106
-108
-109
-110
-111
-112
-113
-115
-116
-117
-118
-120
-121
-122
-123
-124
-126
-127
-128
-129
-131
-132
-133
-134
-136
-137
-138
-139
-141
-142
-143
-145
-146
-147
-148
-150
-151
-152
-154
-155
-156
-157
-158
-159
-160
-161
-162
-162
-163
-164
-164
-165
-165
-165
-166
-166
-166
-167
-167
-167
-167
-167
-167
-167
-167
-167
-167
-167
-167
-167
-167
-167
-167
-166
-166
-166
-165
-165
-164
-164
-163
-163
-162
-162
-161
-160
-160
-159
-158
-158
-157
-157
-156
-155
-155
-154
-153
-153
-152
-151
-150
-150
-149
-148
-147
-146
-145
-145
-144
-143
-142
-141
-140
-139
-138
-137
-136
-135
-133
-132
-131
-130
-129
-127
-126
-125
-123
-122
-120
-118
-117
-115
-114
-112
-110
-109
-107
-105
-104
-102
-100
-98
-97
-95
-93
-92
-90
-88
-86
-85
-83
-81
-80
-78
-76
-74
-73
-71
-69
-67
-65
-63
-61
-59
-58
-56
-53
-51
-49
-47
-45
-43
-41
-39
-36
-34
-32
-30
-27
-25
-22
-20
-18
-15
-13
-10
-7
-5
-2
1
3
6
9
11
14
17
20
22
25
28
31
34
37
39
42
45
48
51
53
56
59
62
64
67
70
73
75
78
81
83
86
88
91
93
96
98
100
102
105
107
109
111
113
114
116
118
119
121
122
124
125
126
127
129
130
131
132
133
134
135
135
136
137
138
139
139
140
141
141
142
143
143
143
144
144
145
145
145
145
145
145
145
145
145
145
145
145
144
144
143
143
143
142
141
141
140
139
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
120
119
118
117
116
115
114
113
112
111
110
109
108
106
105
104
103
102
101
100
99
98
97
96
95
95
94
93
92
91
90
89
88
87
87
86
85
84
83
83
82
81
80
79
78
77
76
75
74
73
71
70
69
68
66
65
64
62
61
59
58
57
55
54
52
51
49
48
47
45
44
42
41
39
38
36
35
33
32
30
28
27
25
23
22
20
18
17
15
13
11
9
8
6
4
2
0
-2
-4
-6
-8
-10
-11
-13
-15
-17
-19
-20
-22
-24
-26
-27
-29
-31
-32
-34
-36
-37
-39
-41
-42
-44
-46
-47
-49
-50
-52
-53
-55
-56
-58
-59
-60
-62
-63
-64
-65
-67
-68
-69
-70
-71
-73
-74
-75
-76
-77
-79
-80
-81
-82
-83
-85
-86
-87
-88
-90
-91
-92
-93
-95
-96
-97
-98
-99
-100
-101
-102
-103
-104
-105
-105
-106
-107
-108
-108
-109
-110
-110
-111
-111
-112
-112
-113
-113
-113
-114
-114
-114
-115
-115
-115
-115
-115
-115
-115
-115
-115
-115
-114
-114
-114
-114
-113
-113
-113
-112
-112
-112
-111
-111
-111
-110
-110
-110
-110
-110
-109
-109
-109
-109
-109
-109
-109
-109
-109
-109
-109
-109
-109
-109
-109
-109
-109
-110
-110
-110
-110
-110
-111
-111
-111
-111
-111
-112
-112
-112
-112
-112
-112
-112
-113
-113
-113
-113
-114
-114
-114
-114
-114
-115
-115
-115
-115
-115
-115
-115
-116
-116
-116
-116
-117
-117
-117
-118
-118
-118
-119
-119
-120
-120
-121
-121
-122
-122
-123
-123
-123
-124
-124
-125
-125
-125
-126
-126
-126
-126
-127
-127
-128
-128
-128
-129
-129
-130
-130
-131
-131
-132
-133
-133
-134
-135
-135
-136
-137
-137
-138
-139
-140
-140
-141
-142
-142
-143
-144
-144
-145
-146
-146
-147
-147
-148
-148
-149
-149
-150
-151
-151
-152
-152
-153
-153
-154
-154
-155
-155
-156
-156
-157
-157
-157
-158
-158
-158
-159
-159
-159
-159
-159
-160
-160
-160
-160
-160
-161
-161
-161
-161
-161
-161
-162
-162
-162
-162
-163
-163
-163
-163
-163
-163
-163
-163
-163
-163
-162
-162
-162
-162
-162
-162
-162
-161
-161
-161
-161
-161
-161
-161
-161
-161
-161
-161
-161
-161
-161
-161
-161
-161
-161
-162
-162
-162
-162
-162
-162
-163
-163
-163
-163
-164
-164
-164
-164
-165
-165
-165
-166
-166
-166
-167
-167
-167
-167
-168
-168
-168
-168
-169
-169
-169
-169
-169
-169
-169
-169
-169
-169
-169
-169
-169
-169
-169
-169
-168
-168
-168
-167
-167
-166
-166
-165
-164
-164
-163
-162
-161
-160
-159
-158
-157
-155
-154
-153
-151
-150
-148
-147
-145
-143
-142
-140
-138
-136
-134
-132
-130
-128
-126
-124
-122
-120
-118
-116
-114
-112
-110
-108
-105
-103
-101
-99
-97
-94
-92
-90
-87
-85
-83
-80
-78
-75
-73
-71
-68
-66
-63
-61
-58
-56
-53
-51
-48
-46
-44
-41
-39
-37
-34
-32
-30
-28
-26
-23
-21
-19
-17
-15
-13
-12
-10
-8
-7
-5
-4
-2
-1
0
1
2
3
4
5
5
6
7
7
7
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
8
8
8
8
8
8
8
7
7
7
6
6
6
5
5
4
4
3
3
2
2
2
1
1
0
0
0
-1
-1
-1
-2
-2
-2
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-2
-2
-2
-2
-2
-2
-1
-1
-1
-1
0
0
0
0
1
1
1
1
1
2
2
2
2
3
3
3
3
4
4
4
4
4
4
4
4
4
4
4
4
4
4
3
3
3
3
2
2
2
1
1
1
1
0
0
0
-1
-1
-2
-2
-2
-3
-3
-3
-4
-4
-4
-4
-5
-5
-5
-6
-6
-6
-6
-7
-7
-7
-8
-8
-8
-9
-9
-9
-10
-10
-11
-11
-12
-13
-13
-14
-15
-16
-16
-17
-18
-19
-20
-21
-22
-23
-25
-26
-27
-28
-29
-30
-31
-33
-34
-35
-36
-37
-38
-39
-40
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-66
-67
-68
-69
-70
-70
-71
-72
-72
-73
-74
-75
-75
-76
-76
-77
-78
-78
-79
-79
-80
-80
-81
-81
-82
-82
-83
-83
-83
-84
-84
-84
-85
-85
-85
-85
-85
-85
-85
-85
-85
-85
-85
-85
-85
-84
-84
-83
-83
-83
-82
-81
-81
-80
-79
-79
-78
-77
-76
-75
-75
-74
-73
-72
-71
-71
-70
-69
-68
-68
-67
-66
-66
-65
-64
-64
-63
-62
-62
-61
-60
-60
-59
-58
-58
-57
-57
-56
-56
-56
-55
-55
-55
-55
-54
-54
-54
-54
-54
-54
-54
-54
-54
-54
-54
-54
-54
-54
-54
-54
-54
-54
-54
-54
-54
-54
-54
-54
-53
-53
-53
-53
-52
-52
-51
-51
-51
-50
-50
-49
-49
-48
-48
-47
-47
-46
-45
-45
-44
-44
-43
-42
-42
-41
-40
-39
-39
-38
-37
-36
-35
-34
-33
-32
-31
-30
-29
-28
-27
-25
-24
-23
-22
-21
-20
-18
-17
-16
-14
-13
-12
-10
-9
-7
-6
-4
-3
-1
1
2
4
6
8
10
12
14
16
18
20
22
24
26
28
30
32
34
36
38
41
43
45
47
50
52
54
56
58
61
63
65
67
69
71
73
75
77
79
81
83
85
87
89
90
92
94
96
97
99
101
102
104
105
107
108
110
111
113
114
116
117
118
119
121
122
123
124
125
126
127
128
129
130
131
131
132
133
133
134
134
134
135
135
135
135
135
135
135
135
135
135
135
135
134
134
134
134
133
133
133
132
132
132
131
131
130
130
130
129
129
128
128
127
126
126
125
124
124
123
122
121
121
120
119
118
117
116
115
114
113
112
111
110
109
108
106
105
104
103
101
100
99
97
96
94
93
92
90
89
87
86
84
83
82
80
79
77
76
75
73
72
71
69
68
67
65
64
62
61
60
58
57
56
54
53
52
50
49
48
47
45
44
43
42
41
40
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
13
12
11
10
8
7
6
4
3
1
0
-1
-3
-4
-6
-7
-9
-10
-12
-13
-15
-16
-18
-19
-21
-22
-24
-25
-27
-28
-29
-31
-32
-33
-34
-35
-36
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-59
-60
-61
-62
-63
-65
-66
-67
-68
-69
-71
-72
-73
-74
-75
-76
-77
-78
-80
-81
-82
-83
-84
-85
-85
-86
-87
-88
-88
-89
-90
-90
-90
-91
-91
-91
-92
-92
-92
-92
-92
-92
-92
-92
-92
-92
-92
-92
-92
-92
-92
-92
-92
-92
-92
-91
-91
-91
-90
-90
-90
-89
-89
-89
-88
-88
-88
-87
-87
-87
-86
-86
-86
-85
-85
-84
-84
-84
-83
-83
-82
-82
-82
-81
-81
-81
-81
-80
-80
-80
-80
-80
-80
-80
-80
-79
-79
-79
-79
-79
-79
-79
-79
-79
-79
-79
-79
-79
-79
-79
-79
-79
-79
-79
-79
-79
-79
-79
-79
-79
-79
-79
-79
-80
-80
-80
-81
-81
-82
-82
-83
-83
-84
-84
-85
-85
-86
-86
-87
-87
-88
-88
-89
-90
-90
-91
-92
-92
-93
-94
-94
-95
-95
-96
-96
-97
-97
-98
-98
-98
-99
-99
-99
-100
-100
-100
-100
-101
-101
-102
-102
-103
-103
-104
-105
-106
-107
-108
-109
-110
-111
-112
-113
-114
-115
-117
-118
-119
-120
-121
-122
-123
-124
-124
-125
-126
-126
-127
-127
-128
-128
-129
-129
-129
-129
-129
-130
-130
-130
-131
-131
-131
-132
-132
-133
-133
-134
-135
-135
-136
-137
-138
-139
-140
-141
-142
-143
-144
-145
-146
-147
-148
-148
-149
-150
-151
-152
-153
-154
-155
-156
-157
-158
-159
-160
-160
-161
-162
-163
-164
-165
-166
-167
-168
-169
-170
-171
-172
-173
-174
-175
-176
-177
-177
-178
-179
-180
-180
-181
-182
-182
-183
-184
-184
-185
-185
-186
-186
-186
-187
-187
-188
-188
-189
-189
-189
-190
-190
-191
-191
-191
-192
-192
-193
-193
-194
-194
-194
-195
-195
-195
-196
-196
-196
-197
-197
-198
-198
-198
-199
-199
-200
-200
-201
-201
-201
-202
-202
-203
-203
-203
-203
-203
-203
-203
-203
-203
-203
-203
-202
-202
-202
-201
-200
-200
-199
-198
-197
-196
-195
-194
-193
-192
-191
-190
-189
-188
-187
-186
-184
-183
-182
-181
-180
-179
-178
-177
-177
-176
-175
-174
-173
-172
-171
-170
-168
-167
-166
-165
-164
-162
-161
-160
-159
-157
-156
-155
-154
-152
-151
-150
-149
-148
-146
-145
-144
-143
-142
-141
-140
-139
-137
-136
-135
-134
-133
-132
-131
-130
-129
-128
-126
-125
-124
-123
-122
-121
-120
-118
-117
-116
-115
-114
-113
-112
-111
-110
-109
-108
-107
-106
-105
-104
-104
-103
-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
-78
-77
-77
-76
-76
-76
-76
-75
-75
-75
-75
-75
-75
-75
-75
-75
-75
-75
-75
-76
-76
-76
-77
-77
-78
-78
-79
-80
-80
-81
-82
-83
-84
-85
-86
-88
-89
-90
-91
-92
-94
-95
-96
-97
-98
-99
-100
-101
-102
-103
-104
-105
-106
-107
-108
-109
-110
-111
-112
-112
-113
-114
-115
-116
-117
-117
-118
-119
-119
-120
-121
-121
-121
-122
-122
-123
-123
-123
-123
-124
-124
-124
-124
-124
-124
-124
-124
-124
-124
-124
-124
-124
-124
-124
-123
-123
-123
-122
-122
-121
-121
-120
-119
-119
-118
-117
-117
-116
-115
-114
-113
-112
-112
-111
-110
-109
-107
-106
-105
-104
-102
-101
-100
-98
-97
-95
-94
-92
-91
-89
-88
-86
-85
-83
-82
-81
-79
-78
-76
-75
-74
-72
-71
-70
-69
-68
-66
-65
-64
-63
-62
-61
-60
-59
-57
-56
-55
-54
-52
-51
-50
-48
-47
-45
-44
-43
-41
-40
-38
-37
-36
-34
-33
-32
-30
-29
-28
-27
-26
-25
-24
-23
-22
-21
-21
-20
-19
-19
-18
-18
-17
-17
-16
-16
-15
-15
-15
-14
-14
-14
-14
-13
-13
-13
-13
-13
-13
-12
-12
-12
-12
-12
-12
-11
-11
-11
-11
-10
-10
-10
-9
-9
-9
-8
-8
-8
-7
-7
-7
-7
-7
-7
-6
-6
-6
-6
-7
-7
-7
-7
-7
-7
-7
-7
-7
-8
-8
-8
-8
-8
-8
-8
-9
-9
-9
-9
-9
-10
-10
-10
-10
-11
-11
-11
-11
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-12
-11
-11
-11
-11
-10
-10
-10
-9
-9
-9
-8
-8
-7
-7
-7
-6
-6
-6
-5
-5
-5
-4
-4
-4
-3
-3
-3
-2
-2
-2
-1
-1
-1
0
0
0
1
1
1
2
2
2
3
3
3
4
4
4
5
5
5
6
6
6
6
7
7
7
8
8
8
9
9
9
10
10
10
10
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
12
12
12
12
13
13
14
14
15
15
16
16
17
17
17
18
18
18
19
19
19
19
20
20
20
20
21
21
21
21
21
22
22
22
22
22
22
22
22
22
23
23
23
23
23
23
23
22
22
22
22
22
22
21
21
21
20
20
20
19
19
19
18
18
18
17
17
17
17
17
17
17
17
17
17
17
17
17
18
18
18
18
19
19
19
19
20
20
20
20
21
21
21
21
21
21
21
21
21
21
21
21
21
20
20
20
20
20
20
19
19
19
19
19
19
19
19
19
19
19
20
20
20
21
21
21
22
23
23
24
25
25
26
27
28
28
29
30
31
32
33
34
35
36
37
38
39
41
42
43
44
45
46
48
49
50
51
52
53
54
56
57
58
59
60
62
63
64
65
66
67
68
69
70
71
72
72
73
74
74
75
76
76
77
77
78
78
79
79
80
80
80
81
81
82
82
82
83
83
84
84
84
85
85
85
86
86
86
86
87
87
87
87
88
88
88
89
89
89
89
90
90
90
90
90
91
91
91
91
91
91
91
91
90
90
90
90
89
89
89
89
88
88
88
87
87
87
86
86
86
86
85
85
85
84
84
84
84
83
83
83
83
82
82
82
81
81
81
81
80
80
80
80
80
79
79
79
79
79
78
78
78
78
77
77
77
76
76
75
75
74
74
74
73
73
72
72
71
71
70
70
69
68
68
67
66
66
65
64
64
63
62
61
61
60
59
59
58
57
57
56
56
55
55
54
53
53
52
52
52
51
51
50
50
50
50
50
49
49
49
49
49
49
49
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
51
51
51
51
51
52
52
52
52
53
53
53
54
54
54
55
55
56
56
56
57
57
58
58
59
59
60
60
61
62
62
63
64
65
66
66
67
68
69
70
71
72
73
74
74
75
76
77
77
78
78
79
79
80
81
81
81
82
82
83
83
84
84
85
85
86
86
87
87
88
88
89
89
89
90
90
90
91
91
91
92
92
92
92
92
92
92
92
92
92
92
92
91
91
91
90
90
90
89
89
89
88
88
88
87
87
87
86
86
86
85
85
84
84
84
83
83
83
82
82
82
81
81
81
80
80
80
79
79
79
79
79
79
79
78
78
78
78
78
78
78
78
78
78
79
79
79
79
79
79
79
79
79
79
79
79
78
78
78
78
78
77
77
77
77
76
76
76
76
76
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
76
76
76
76
76
76
76
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
70
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
69
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
59
59
59
59
59
59
59
59
59
59
59
59
59
59
59
59
59
59
59
59
59
59
59
59
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
