4
4
1
1
4
1
1
1
4
4
1
1
4
1
1
1
4
4
1
1
4
1
1
1
4
4
1
1
-1
4
-1
-1
4
4
1
1
-1
4
-1
-1
1
4
1
1
512
4
3
3
512
1
1
1
512
4
3
3
512
1
1
1
512
4
3
3
512
1
1
1
512
4
3
3
-1
4
-1
-1
512
4
3
3
-1
512
-1
-1
1
512
1
1
-1
512
-1
-1
512
512
-1
512
-1
-1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
-1
512
-1
-1
512
512
3
3
-1
512
-1
-1
1
512
1
1
-1
512
-1
-1
512
512
-1
512
-1
-1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
-1
512
-1
-1
512
512
3
3
-1
512
-1
-1
1
512
1
1
-1
512
-1
-1
-1
512
-1
-1
-1
512
-1
-1
3
-1
512
-1
3
-1
-1
512
3
-1
512
-1
512
512
512
512
512
1
512
512
512
1
512
512
512
1
512
512
-1
512
-1
512
512
-1
-1
512
1
1
512
-1
-1
512
4
-1
-1
1
512
4
512
512
512
1
512
512
512
1
512
512
512
1
512
512
-1
512
-1
512
512
-1
-1
512
1
1
512
-1
-1
512
4
-1
-1
1
512
4
512
512
512
1
512
512
512
1
512
512
512
1
512
512
-1
512
-1
512
512
-1
-1
512
1
1
512
-1
-1
512
4
-1
-1
1
512
4
-1
1
-1
512
-1
1
-1
512
-1
1
-1
512
-1
1
-1
512
4
-1
-1
1
512
3
512
512
512
1
512
512
512
1
512
512
512
1
512
512
-1
-1
512
512
512
-1
-1
512
1
1
512
-1
-1
512
3
-1
512
-1
-1
-1
512
-1
4
-1
512
-1
-1
-1
512
-1
-1
-1
512
-1
-1
512
512
-1
512
-1
-1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
-1
512
-1
-1
512
512
3
3
-1
512
-1
-1
1
512
1
1
-1
512
-1
-1
512
512
-1
512
-1
-1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
-1
512
-1
-1
512
512
3
3
-1
512
-1
-1
1
512
1
1
-1
512
-1
-1
-1
512
-1
-1
-1
512
-1
-1
512
512
-1
512
-1
-1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
-1
512
-1
-1
512
512
3
3
-1
512
-1
-1
1
512
1
1
-1
512
-1
-1
512
512
-1
512
-1
-1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
-1
512
-1
-1
512
512
3
3
-1
512
-1
-1
1
512
1
1
-1
512
-1
-1
-1
512
-1
-1
-1
512
-1
-1
512
512
-1
512
-1
-1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
-1
512
-1
-1
512
512
3
3
-1
512
-1
-1
1
512
1
1
-1
512
-1
-1
512
512
-1
512
-1
-1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
-1
512
-1
-1
512
512
3
3
-1
512
-1
-1
1
512
1
1
-1
512
-1
-1
-1
512
-1
-1
-1
512
-1
-1
512
512
-1
512
-1
-1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
-1
512
-1
-1
512
512
3
3
-1
512
-1
-1
1
512
1
1
-1
512
-1
-1
512
512
-1
512
-1
-1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
-1
512
-1
-1
512
512
3
3
-1
512
-1
-1
1
512
1
1
-1
512
-1
-1
-1
512
-1
-1
-1
512
-1
-1
2
2
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
-1
512
-1
-1
512
512
3
3
-1
512
-1
-1
1
512
1
1
-1
512
-1
-1
512
512
-1
512
-1
-1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
-1
512
-1
-1
512
512
3
3
-1
512
-1
-1
1
512
1
1
-1
512
-1
-1
512
512
-1
512
-1
-1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
-1
512
-1
-1
512
512
3
3
-1
512
-1
-1
1
512
1
1
-1
512
-1
-1
-1
512
-1
-1
-1
512
-1
-1
512
512
-1
512
-1
-1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
-1
512
-1
-1
512
512
3
3
-1
512
-1
-1
1
512
1
1
-1
512
-1
-1
512
512
-1
512
-1
-1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
-1
512
-1
-1
512
512
3
3
-1
512
-1
-1
1
512
1
1
-1
512
-1
-1
-1
512
-1
-1
-1
512
-1
-1
512
512
-1
512
-1
-1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
-1
512
-1
-1
512
512
3
3
-1
512
-1
-1
1
512
1
1
-1
512
-1
-1
512
512
-1
512
-1
-1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
-1
512
-1
-1
512
512
3
3
-1
512
-1
-1
1
512
1
1
-1
512
-1
-1
-1
512
-1
-1
-1
512
-1
-1
2
2
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
512
1
1
1
512
512
3
3
-1
512
-1
-1
512
512
3
3
-1
512
-1
-1
1
512
1
1
256
512
1
1
256
1
1
1
256
512
1
1
256
1
1
1
256
512
1
1
256
1
1
1
256
512
1
1
-1
512
-1
-1
256
512
1
1
-1
256
-1
-1
1
256
1
1
-1
512
-1
-1
512
512
-1
512
-1
-1
256
512
3
3
256
1
1
1
256
512
3
3
256
1
1
1
256
512
3
3
256
1
1
1
256
512
3
3
-1
512
-1
-1
256
512
3
3
-1
256
-1
-1
1
256
1
1
-1
256
-1
-1
256
256
-1
256
-1
-1
256
256
3
3
256
1
1
1
256
256
3
3
256
1
1
1
256
256
3
3
256
1
1
1
256
256
3
3
-1
256
-1
-1
256
256
3
3
-1
256
-1
-1
1
256
1
1
-1
256
-1
-1
-1
256
-1
-1
-1
256
-1
-1
256
256
-1
256
-1
-1
256
256
3
3
256
1
1
1
256
256
3
3
256
1
1
1
256
256
3
3
256
1
1
1
256
256
3
3
-1
256
-1
-1
256
256
3
3
-1
256
-1
-1
1
256
1
1
-1
256
-1
-1
256
256
-1
256
-1
-1
256
256
3
3
256
1
1
1
256
256
3
3
256
1
1
1
256
256
3
3
256
1
1
1
256
256
3
3
-1
256
-1
-1
256
256
3
3
-1
256
-1
-1
1
256
1
1
-1
256
-1
-1
-1
256
-1
-1
-1
256
-1
-1
256
256
-1
256
-1
-1
256
256
3
3
256
1
1
1
256
256
3
3
256
1
1
1
256
256
3
3
256
1
1
1
256
256
3
3
-1
256
-1
-1
256
256
3
3
-1
256
-1
-1
1
256
1
1
-1
256
-1
-1
256
256
-1
256
-1
-1
256
256
3
3
256
1
1
1
256
256
3
3
256
1
1
1
256
256
3
3
256
1
1
1
256
256
3
3
-1
256
-1
-1
256
256
3
3
-1
256
-1
-1
1
256
1
1
-1
256
-1
-1
-1
256
-1
-1
-1
256
-1
-1
2
2
256
256
3
3
256
1
1
1
256
256
3
3
256
1
1
1
256
256
3
3
256
1
1
1
256
256
3
3
-1
256
-1
-1
256
256
3
3
-1
256
-1
-1
1
256
1
1
128
256
1
1
128
1
1
1
128
256
1
1
128
1
1
1
128
256
1
1
128
1
1
1
128
256
1
1
-1
256
-1
-1
128
256
1
1
-1
128
-1
-1
1
128
1
1
-1
256
-1
-1
256
256
-1
256
-1
-1
128
256
3
3
128
1
1
1
128
256
3
3
128
1
1
1
128
256
3
3
128
1
1
1
128
256
3
3
-1
256
-1
-1
128
256
3
3
-1
128
-1
-1
1
128
1
1
-1
128
-1
-1
128
128
-1
128
-1
-1
128
128
3
3
128
1
1
1
128
128
3
3
128
1
1
1
128
128
3
3
128
1
1
1
128
128
3
3
-1
128
-1
-1
128
128
3
3
-1
128
-1
-1
1
128
1
1
-1
128
-1
-1
-1
128
-1
-1
-1
128
-1
-1
128
128
-1
128
-1
-1
128
128
3
3
128
1
1
1
128
128
3
3
128
1
1
1
128
128
3
3
128
1
1
1
128
128
3
3
-1
128
-1
-1
128
128
3
3
-1
128
-1
-1
1
128
1
1
-1
128
-1
-1
128
128
-1
128
-1
-1
128
128
3
3
128
1
1
1
128
128
3
3
128
1
1
1
128
128
3
3
128
1
1
1
128
128
3
3
-1
128
-1
-1
128
128
3
3
-1
128
-1
-1
1
128
1
1
-1
128
-1
-1
-1
128
-1
-1
-1
128
-1
-1
128
128
-1
128
-1
-1
128
128
3
3
128
1
1
1
128
128
3
3
128
1
1
1
128
128
3
3
128
1
1
1
128
128
3
3
-1
128
-1
-1
128
128
3
3
-1
128
-1
-1
1
128
1
1
-1
128
-1
-1
128
128
-1
128
-1
-1
128
128
3
3
128
1
1
1
128
128
3
3
128
1
1
1
128
128
3
3
128
1
1
1
128
128
3
3
-1
128
-1
-1
128
128
3
3
-1
128
-1
-1
1
128
1
1
-1
128
-1
-1
-1
128
-1
-1
-1
128
-1
-1
128
128
-1
128
-1
-1
3
128
3
3
3
1
1
1
3
128
3
3
3
1
1
1
3
128
3
3
3
1
1
1
3
128
3
3
-1
128
-1
-1
3
128
3
3
-1
3
-1
-1
1
3
1
1
-1
3
-1
-1