0
0
1
0
0
0
0
0
0
3
0
1
0
3
0
0
0
1
1
0
0
0
0
0
0
0
0
1
0
1
0
1
1
0
1
0
0
0
1
1
0
0
1
1
1
0
0
1
0
1
0
0
1
0
1
0
2
0
0
1
0
1
0
0
1
0
0
0
2
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
2
2
4
0
1
1
1
0
0
0
0
0
1
5
1
0
0
0
0
0
4
0
0
0
0
0
4
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
2
0
1
1
1
0
0
1
0
2
0
2
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
1
1
0
2
0
4
0
0
2
0
0
3
0
3
0
0
0
2
0
2
0
1
1
1
0
1
1
0
0
3
1
0
1
0
0
1
0
2
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
1
1
0
0
0
0
0
0
0
0
0
1
0
2
1
0
1
3
0
0
1
0
0
0
0
0
0
1
0
0
1
1
1
0
1
0
0
0
0
1
0
0
1
1
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
29
0
0
0
0
0
6
0
0
1
0
0
0
0
0
1
0
1
1
0
0
0
0
0
1
0
2
2
2
0
1
0
0
0
0
0
1
5
2
2
7
1
1
0
2
0
0
0
0
1
1
0
2
2
2
6
4
0
1
0
6
2
1
1
0
2
0
0
2
0
1
0
1
0
0
0
0
4
0
0
1
1
0
0
0
0
1
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
1
0
0
0
0
0
5
0
0
1
1
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
2
0
0
0
2
0
0
0
0
2
0
0
2
1
0
2
0
0
1
0
0
1
0
5
2
2
0
0
0
0
0
1
0
0
2
0
0
2
2
0
0
0
0
3
0
1
6
2
6
6
2
4
1
1
4
1
0
4
2
0
4
4
0
3
0
0
1
0
0
0
1
0
0
1
4
1
2
1
2
0
2
0
0
2
0
1
0
0
1
1
0
0
0
3
0
0
0
2
0
0
0
0
0
0
0
0
0
1
0
1
0
2
3
0
0
1
0
0
0
4
1
0
3
0
0
2
0
1
0
0
0
1
0
0
0
0
1
0
1
0
2
0
0
0
2
2
0
0
0
0
0
0
0
0
1
5
7
0
0
1
0
0
0
0
0
0
23
0
0
0
0
0
0
0
13
3
0
0
0
2
0
0
0
0
0
0
1
1
1
0
0
0
0
0
1
0
2
0
0
1
1
0
1
0
0
0
1
0
0
0
0
1
2
0
0
0
0
7
0
0
2
5
0
0
1
4
0
0
0
1
1
0
1
1
0
0
3
3
11
0
0
0
0
0
1
1
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
1
0
0
2
5
2
15
0
0
0
1
0
0
15
0
1
0
1
0
0
2
1
2
0
0
0
0
0
2
0
0
0
0
0
0
1
0
0
2
1
0
0
0
1
0
4
0
0
4
5
0
0
2
5
0
8
3
3
0
0
0
0
1
0
0
1
0
0
0
0
5
3
2
0
0
1
0
0
0
1
0
6
4
6
5
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
14
0
0
0
0
2
0
2
0
0
0
3
1
0
0
0
3
1
0
0
1
0
0
0
0
0
0
0
3
1
0
0
1
3
3
0
1
0
0
1
0
1
0
4
1
1
2
0
1
0
1
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
1
0
0
0
0
1
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
3
1
0
0
2
2
1
0
1
0
0
1
0
2
0
0
1
0
1
0
0
0
0
0
0
0
5
1
0
0
2
1
0
3
0
3
0
1
0
3
4
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
1
0
0
0
2
1
1
0
0
1
1
0
1
1
0
0
1
0
1
1
0
0
0
0
0
1
0
4
2
1
1
1
2
1
0
1
1
1
0
0
1
0
2
0
1
3
0
0
1
30
6
2
0
0
0
1
1
0
0
0
0
2
2
2
0
4
0
0
1
0
1
0
3
0
1
0
1
0
0
0
0
0
2
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
3
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
1
2
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
2
2
0
0
0
2
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
2
0
1
0
0
0
0
0
0
0
2
2
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
1
0
0
0
1
1
1
0
0
0
0
1
0
0
0
0
0
0
1
0
1
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
3
1
1
1
0
0
0
1
1
0
1
1
0
0
0
0
2
2
0
0
0
0
1
0
0
0
0
2
1
0
0
0
0
1
0
0
0
1
0
0
0
1
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
2
0
0
0
0
0
1
0
0
0
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
1
0
0
0
0
0
0
1
0
0
0
0
2
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
2
0
0
0
0
2
0
0
0
1
1
2
1
0
1
1
2
1
1
1
0
1
1
2
2
1
1
1
0
1
1
0
0
0
0
0
0
0
1
1
3
1
1
0
0
0
2
0
0
1
1
0
1
1
1
1
0
1
1
1
0
2
0
1
1
1
1
0
1
1
0
0
1
1
1
1
1
2
2
3
1
1
1
2
2
1
0
1
2
1
1
1
1
0
1
2
0
0
0
0
1
1
0
0
0
0
0
0
0
2
2
4
2
0
0
0
1
0
0
2
1
2
0
0
0
0
1
1
0
0
0
0
1
1
1
0
2
1
1
1
2
1
2
1
1
1
2
1
0
0
2
2
2
0
0
1
0
1
1
1
1
1
2
1
2
2
1
2
1
1
4
1
1
1
1
1
2
0
1
1
0
1
1
0
1
0
0
0
0
0
0
1
1
1
2
1
0
0
1
0
4
2
2
1
1
1
0
0
1
1
0
0
0
0
0
0
0
0
3
0
0
2
1
0
0
0
0
3
0
1
0
0
0
0
1
2
1
0
0
0
1
1
0
0
2
1
0
2
0
2
0
0
0
0
0
0
0
0
0
0
0
1
1
0
1
1
2
0
0
2
0
0
1
0
1
1
0
1
0
1
0
1
1
1
1
1
1
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
1
0
1
0
0
0
0
0
1
1
2
0
0
0
0
0
0
0
0
0
0
0
0
2
1
0
0
0
1
0
0
1
0
0
1
2
1
0
1
0
0
0
0
0
0
0
1
3
0
1
2
1
2
2
1
1
2
0
1
0
0
3
0
1
1
0
0
5
1
0
0
0
0
0
1
1
1
1
1
1
1
2
0
0
0
3
1
0
2
1
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
2
2
1
0
1
0
0
0
0
1
1
4
2
0
1
1
2
1
0
3
0
0
0
0
1
0
0
0
0
1
2
1
0
0
1
2
2
1
0
2
0
1
0
0
0
1
0
0
1
2
0
0
1
6
1
1
0
0
0
2
1
0
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
0
1
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
2
0
0
3
1
0
1
0
1
0
0
3
0
0
0
0
2
0
0
1
2
0
2
1
0
0
0
0
1
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
3
0
0
0
0
0
1
0
0
2
0
0
0
0
0
2
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
4
0
0
1
4
1
0
2
0
0
0
2
0
1
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
2
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
2
0
0
0
0
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
1
1
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
1
0
3
0
0
0
1
0
0
0
0
0
0
1
1
0
0
0
1
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
1
0
0
0
0
6
0
2
0
0
0
0
0
0
1
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
0
0
3
0
0
0
0
0
0
0
0
0
0
3
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
2
0
0
0
0
0
1
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
8
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
