1
1
1
0
0
0
1
0
0
0
0
0
1
1
1
1
1
1
1
1
0
1
1
1
1
0
1
1
0
1
1
1
1
1
1
0
0
0
0
1
1
1
1
1
1
1
1
0
1
0
0
1
0
1
1
0
1
0
0
1
0
0
0
0
0
0
1
1
1
1
1
1
0
0
1
1
0
1
1
0
0
0
1
1
1
0
1
0
0
0
1
1
0
1
0
1
1
1
0
0
1
1
0
0
1
1
0
0
1
0
0
0
0
1
1
1
1
1
0
0
0
1
1
0
1
0
1
0
1
0
1
0
0
0
0
0
1
1
1
1
1
0
0
0
0
1
0
1
1
1
1
0
1
1
1
1
0
1
0
1
1
1
1
0
1
1
1
0
0
0
0
1
1
1
1
1
1
0
0
1
1
0
1
0
1
1
1
0
1
0
0
0
0
0
1
1
1
1
1
0
0
0
1
1
0
1
1
1
1
0
1
1
0
1
1
1
1
1
1
1
0
1
0
0
1
1
0
0
0
1
1
0
1
1
0
1
1
1
1
0
1
1
0
1
0
0
1
1
1
1
0
0
0
0
1
0
1
1
0
1
1
1
1
0
1
1
1
1
0
0
1
1
0
1
1
0
1
0
1
1
1
1
1
0
1
0
1
1
0
1
0
0
1
0
0
0
0
1
1
1
1
1
1
1
1
1
1
0
1
0
1
0
1
0
1
0
0
0
0
0
1
1
1
1
1
0
0
0
1
1
0
1
1
1
1
0
1
1
1
1
1
1
0
1
1
1
1
0
1
1
1
0
0
0
0
1
1
1
1
1
0
0
0
1
1
0
1
0
1
1
1
0
1
0
0
0
0
0
1
1
1
1
1
0
0
0
1
1
0
0
0
0
1
0
0
1
0
1
1
1
1
0
0
1
0
1
0
0
1
1
0
0
0
0
1
0
0
1
0
1
1
1
1
0
0
1
0
1
0
0
1
1
1
1
0
0
0
1
1
0
1
1
0
0
1
0
1
0
0
1
0
1
0
0
1
1
0
0
0
0
1
0
0
1
0
0
1
0
1
0
1
1
0
0
0
0
1
0
0
0
0
1
1
1
1
1
0
0
0
1
1
0
1
0
1
1
1
0
1
0
0
0
0
0
1
1
1
1
1
0
0
0
1
1
0
1
1
1
1
0
1
1
1
1
1
1
0
1
1
1
1
0
1
1
1
0
0
0
0
1
1
1
1
1
0
0
0
1
1
0
1
0
1
1
1
0
1
0
0
0
0
0
1
1
1
1
1
0
0
0
1
1
1
0
0
0
1
0
1
0
0
1
1
1
1
1
0
0
0
1
1
1
1
1
1
0
1
0
1
1
1
1
1
1
0
0
1
0
1
1
0
0
1
1
0
0
0
0
1
0
1
0
0
1
1
1
1
1
0
0
0
1
1
1
1
1
1
0
1
0
0
1
1
1
1
1
0
0
0
1
1
1
0
0
1
1
1
1
0
0
0
1
1
1
0
0
0
1
1
1
1
0
1
0
0
1
1
1
1
0
1
0
1
0
0
1
1
1
1
1
1
0
1
0
0
0
0
0
1
1
0
0
0
0
1
0
1
0
0
1
1
1
1
0
1
0
0
0
0
0
1
0
1
1
0
0
0
1
1
1
1
0
1
0
0
1
1
1
0
0
1
0
0
1
1
1
1
0
0
1
1
1
0
0
0
0
1
1
1
1
1
0
0
0
1
1
0
1
1
0
1
1
1
1
1
1
1
0
1
0
0
0
0
1
1
1
1
1
0
0
0
1
1
0
1
1
0
0
1
1
1
0
0
1
0
1
0
0
0
0
1
1
1
1
1
0
0
0
1
1
1
0
1
1
0
0
1
1
0
0
1
0
0
0
1
1
1
1
0
1
1
1
0
0
1
1
1
1
1
1
0
0
1
0
0
0
0
1
1
1
1
1
0
0
0
1
1
0
1
0
1
1
1
0
1
0
0
0
0
0
1
1
1
1
1
0
0
0
1
1
0
1
1
1
1
0
1
1
1
1
1
1
0
1
1
1
1
0
1
1
1
0
0
0
0
1
1
1
1
1
0
0
0
1
1
0
1
0
1
1
1
0
1
0
0
0
0
0
1
1
1
1
1
1
0
0
1
1
0
1
1
0
1
1
1
1
0
1
1
1
1
1
1
1
0
0
0
0
1
1
0
0
0
0
1
0
1
1
1
1
1
0
1
1
1
1
1
0
0
0
1
1
1
1
0
0
0
1
1
0
0
1
1
0
1
1
1
0
1
1
1
1
0
0
1
1
0
1
1
1
1
0
1
1
1
1
1
0
1
1
1
1
1
1
0
0
1
0
0
0
0
1
1
1
1
1
0
0
0
1
1
0
1
0
1
1
1
0
1
0
0
0
0
0
1
1
1
1
1
0
1
1
1
1
0
1
1
1
1
0
1
1
1
1
1
1
0
1
1
1
1
0
1
1
1
0
0
0
0
1
1
1
1
1
0
0
0
0
1
0
1
0
1
0
1
0
1
0
0
0
0
0
1
1
1
1
1
1
0
0
0
1
0
1
1
0
1
0
0
1
0
1
1
0
1
0
0
1
0
1
0
0
1
1
0
0
0
0
1
0
1
1
0
0
1
1
1
0
0
1
0
0
0
0
1
1
0
1
0
0
0
1
1
0
1
1
0
0
1
1
1
0
1
1
0
0
0
1
1
1
0
1
1
1
1
0
1
1
0
0
1
0
1
0
0
1
0
0
0
0
1
0
0
0
0
1
1
1
1
1
0
0
0
0
1
0
1
0
1
0
1
0
1
0
0
0
0
0
1
1
1
1
1
0
0
0
1
1
0
1
1
1
1
0
1
1
0
1
0
1
0
1
1
1
1
0
1
1
0
0
0
0
0
1
1
1
1
1
0
0
0
0
1
0
1
0
1
0
1
0
1
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
0
0
0
1
1
0
1
1
0
0
1
1
1
1
1
1
0
0
0
1
0
1
1
0
1
1
0
0
1
1
1
1
1
1
0
1
0
1
0
1
1
1
1
1
1
0
1
1
1
1
0
0
0
1
1
0
1
1
0
0
1
1
1
1
1
0
0
0
0
0
1
1
1
0
0
1
0
0
1
1
1
1
1
0
1
1
0
1
1
0
1
1
0
1
0
1
0
1
1
0
1
1
0
0
1
1
0
0
1
1
0
1
0
0
0
1
1
0
1
1
0
0
1
1
0
1
1
1
0
0
0
0
1
1
0
1
1
0
0
1
1
0
1
1
0
0
1
1
1
1
1
0
1
1
0
0
1
1
1
0
1
1
1
0
1
1
0
1
1
0
1
1
10
0
0
10
0
1
0
1
1
1
1
0
10
0
0
10
0
0
1
1
1
0
1
0
1
0
1
0
1
0
1
0
0
0
1
0
1
1
0
1
0
0
0
1
0
1
0
0
1
1
10
0
0
10
0
1
0
1
1
1
1
0
10
0
0
10
1
0
0
0
0
0
1
0
1
1
1
1
0
1
1
1
1
1
1
0
1
1
1
1
0
1
1
1
0
0
1
0
0
1
0
1
1
0
1
0
1
1
0
0
1
1
0
1
1
0
1
0
1
1
0
0
1
1
10
0
0
10
0
1
0
1
1
1
1
0
10
0
0
10
0
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
0
0
1
0
0
1
0
1
0
0
1
1
0
1
0
0
1
1
10
0
0
10
0
1
0
1
1
1
1
0
10
0
0
10
1
1
1
0
0
0
1
1
1
1
1
1
0
1
0
1
1
1
0
1
0
0
0
1
1
1
1
1
0
1
0
1
0
1
1
1
0
1
0
0
1
1
1
0
1
1
0
0
1
1
0
1
0
0
1
1
0
1
0
0
1
1
1
0
0
0
1
1
0
1
0
1
0
1
0
1
0
1
1
1
0
0
1
1
0
1
0
0
0
1
1
0
1
0
0
1
1
0
1
0
0
1
1
1
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
1
1
0
1
1
0
0
0
0
1
0
1
0
0
0
1
0
1
0
0
1
1
1
0
1
1
0
1
0
1
0
1
1
1
0
1
0
1
1
1
0
1
1
10
0
0
10
0
1
0
1
1
1
1
0
10
0
0
10
0
0
1
0
0
1
1
0
1
0
1
0
1
0
1
0
0
0
1
0
0
1
0
1
0
0
0
1
0
1
0
0
1
1
10
0
0
10
0
1
0
1
1
1
1
0
10
0
0
10
0
0
1
0
0
1
1
0
1
1
0
1
0
1
1
0
1
0
1
0
1
1
1
1
0
1
1
0
0
0
1
0
1
1
0
1
1
0
1
0
1
1
1
0
1
1
0
1
1
1
1
0
1
1
1
0
1
1
10
0
0
10
0
1
0
1
1
1
1
0
10
0
0
10
1
0
0
0
0
0
1
0
1
0
1
1
1
0
1
0
1
0
0
0
1
1
0
1
0
1
1
1
0
1
0
1
0
0
10
0
0
12
0
1
0
1
1
0
1
1
12
0
0
12
0
1
0
0
0
0
1
0
1
1
1
1
0
1
1
0
1
0
1
1
0
1
1
1
0
1
1
0
1
0
1
1
1
0
1
1
1
0
0
0
0
1
0
1
1
0
1
0
1
1
0
1
0
1
0
1
1
0
1
0
1
1
0
0
1
1
0
0
1
0
1
1
1
1
0
1
1
0
1
0
1
1
1
1
1
1
0
1
1
0
1
0
1
1
0
1
0
0
1
1
0
0
0
1
0
1
1
0
1
0
1
1
0
1
1
1
0
1
1
0
1
0
1
1
0
1
1
1
1
0
0
1
1
1
0
1
1
0
1
0
1
1
1
1
0
1
1
1
1
1
1
0
1
1
0
1
0
1
1
1
0
0
1
1
0
1
1
1
1
0
1
1
1
1
0
1
1
0
1
0
1
0
1
1
0
1
0
1
1
1
0
0
1
1
1
1
1
0
0
0
1
0
1
1
0
1
0
1
1
0
1
1
1
0
1
1
0
1
0
1
1
0
0
0
1
1
0
1
1
0
1
0
1
1
0
1
0
1
1
0
1
1
1
0
1
1
0
1
0
1
1
1
0
0
1
0
0
1
12
0
0
12
0
1
0
1
1
0
1
1
12
0
0
12
0
1
0
1
1
1
1
0
1
0
0
0
1
0
1
0
1
0
0
1
0
1
0
1
0
1
0
1
0
1
0
0
0
1
12
0
0
12
0
1
0
1
1
0
1
1
12
0
0
12
0
0
1
1
1
1
1
0
1
1
0
1
0
1
1
0
0
1
1
0
1
1
0
1
0
1
1
0
1
0
0
0
1
1
0
1
1
1
1
0
1
1
1
1
0
1
0
1
1
1
1
0
1
1
1
0
0
1
12
0
0
12
0
1
0
1
1
0
1
1
12
0
0
12
1
1
0
0
0
1
1
0
1
0
0
0
1
0
1
0
1
0
0
1
1
1
0
1
0
1
0
1
0
1
0
0
0
1
12
0
0
12
0
1
0
1
1
0
1
1
12
0
0
12
1
0
1
0
0
0
1
1
1
1
1
1
0
1
0
0
1
1
0
1
0
0
0
0
1
0
1
1
1
1
0
1
0
1
0
1
0
1
0
0
1
1
0
1
1
1
1
1
1
1
0
1
0
1
0
1
0
1
0
0
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
1
1
1
0
0
0
1
1
1
0
0
0
1
0
1
0
1
0
1
0
1
0
0
1
1
1
1
1
1
0
1
0
1
0
1
1
1
0
1
0
1
0
0
1
0
1
0
0
0
0
1
0
1
0
0
0
1
0
1
0
1
1
1
1
1
1
1
1
1
0
1
0
1
1
1
0
1
0
0
0
0
0
0
1
12
0
0
12
0
1
0
1
1
0
1
1
12
0
0
12
1
0
0
1
1
1
1
0
1
0
0
0
1
0
1
0
1
0
0
0
0
1
0
1
0
1
1
1
0
1
0
0
0
1
12
0
0
12
0
1
0
1
1
0
1
1
12
0
0
12
1
1
0
1
1
0
1
0
1
1
0
1
0
1
1
0
0
1
1
0
1
1
1
1
0
1
1
0
1
0
0
1
1
1
0
1
1
0
1
0
1
1
0
0
1
1
0
1
1
0
1
0
1
1
1
1
1
1
12
0
0
12
0
1
0
1
1
0
1
1
6
0
0
8
1
0
0
0
0
1
1
0
1
0
0
0
1
0
1
0
1
0
0
0
1
1
0
1
0
1
1
1
0
1
0
0
0
0
8
0
0
8
0
1
0
1
1
0
1
0
8
0
0
8
1
0
0
0
0
0
1
1
0
0
0
1
1
1
1
0
0
0
1
0
0
1
0
0
1
0
0
0
0
1
0
1
1
1
1
0
0
1
0
0
1
1
0
1
0
1
1
0
0
0
0
1
1
1
1
1
0
1
0
1
1
1
0
0
1
1
0
0
0
1
1
0
0
0
0
1
1
1
1
1
1
0
0
1
0
0
1
0
0
1
0
1
0
0
1
1
0
0
0
1
1
0
0
0
1
0
1
1
1
1
1
1
1
0
0
0
1
0
0
1
1
0
1
0
0
0
0
1
1
0
0
1
1
1
1
1
0
0
1
1
0
1
0
1
1
0
0
0
0
1
1
1
1
1
0
1
1
0
0
1
1
0
0
0
0
1
0
0
0
0
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
0
0
1
1
1
1
0
0
1
0
1
1
1
1
0
1
1
0
0
1
0
0
0
1
1
0
0
0
0
0
0
1
1
0
0
0
1
1
0
0
0
0
1
1
1
1
1
1
0
0
0
0
0
1
1
0
0
1
0
0
0
1
0
0
1
1
0
0
0
1
1
0
1
1
0
0
0
1
0
0
1
0
1
1
0
0
0
0
1
0
1
1
1
1
0
0
1
0
0
1
1
0
1
1
1
0
0
1
0
0
1
1
1
1
0
0
0
1
1
1
1
1
1
0
1
1
0
0
0
1
0
0
1
0
0
0
0
1
1
0
1
1
1
1
1
1
0
0
1
1
0
0
1
0
1
0
0
0
0
1
0
0
1
1
0
0
1
0
1
1
0
0
0
1
0
0
0
0
1
1
1
1
0
0
1
0
1
1
1
1
1
0
0
0
0
0
0
1
1
0
1
0
0
1
0
0
0
0
1
0
1
1
0
1
1
1
0
0
0
1
1
1
1
1
1
1
1
1
1
0
0
0
1
1
0
0
1
1
0
0
1
0
0
1
0
0
0
1
1
1
1
1
0
0
1
0
0
1
0
1
1
0
0
1
0
0
0
1
1
1
1
1
1
1
1
0
1
0
1
0
0
1
0
1
0
0
1
1
0
1
0
0
0
1
0
1
1
1
0
0
1
1
0
0
0
0
0
0
1
1
0
1
0
1
1
0
1
1
1
0
0
0
0
1
0
1
1
1
0
0
1
1
0
0
0
0
1
0
0
1
0
1
0
1
1
1
1
0
0
1
0
0
1
0
0
1
1
1
0
0
1
0
0
1
1
1
1
0
0
1
1
1
1
1
1
0
0
0
0
1
1
1
0
0
1
0
0
1
0
1
1
1
0
0
0
0
0
0
1
1
0
1
0
0
0
0
1
1
0
0
0
0
0
1
0
0
1
1
1
0
1
1
1
1
0
0
0
1
0
0
1
1
0
0
0
1
0
0
1
1
0
0
0
1
1
1
1
0
0
1
1
0
0
1
0
1
1
0
0
0
1
1
0
0
1
1
1
1
1
1
1
0
0
1
0
0
1
0
0
1
1
1
1
0
0
1
0
1
0
1
1
1
0
1
1
0
0
0
1
0
0
1
0
0
0
0
1
1
0
1
1
1
1
0
1
1
1
1
1
1
1
1
1
0
0
1
0
0
1
1
0
1
0
1
1
0
0
0
0
1
1
1
1
1
0
1
1
0
0
0
1
0
0
1
1
0
0
0
1
0
0
1
0
0
0
1
0
1
1
1
1
0
0
0
1
0
0
1
1
0
0
0
1
1
0
0
0
0
0
1
0
1
1
0
1
0
0
0
0
1
1
0
1
0
1
1
0
1
0
1
1
0
0
0
0
1
1
8
0
0
8
0
1
0
1
1
0
1
0
8
0
0
8
1
0
0
0
0
0
1
0
1
0
1
1
1
0
1
0
0
0
0
0
0
1
0
1
0
0
1
1
0
1
0
1
0
0
8
0
0
8
0
1
0
1
1
1
1
1
8
0
0
8
1
0
0
0
0
1
1
0
1
1
1
1
0
1
1
0
0
1
1
0
1
1
0
1
0
1
1
1
1
1
1
0
1
1
0
1
1
0
1
0
1
1
1
1
1
1
0
1
1
1
1
0
1
1
1
1
1
1
8
0
0
8
0
1
0
1
1
1
1
1
8
0
0
8
1
0
0
0
0
0
1
0
1
0
1
0
1
0
1
0
1
0
0
0
1
1
0
1
0
1
1
1
0
1
0
0
1
1
8
0
0
8
0
1
0
1
1
1
1
0
8
0
0
8
1
0
0
0
0
1
1
0
1
1
0
1
0
1
0
1
0
1
0
1
0
0
1
1
1
0
0
0
1
1
0
1
0
1
1
1
0
1
0
0
1
1
0
0
1
0
0
0
1
1
0
1
0
1
0
1
0
1
0
0
0
0
1
0
1
1
1
1
0
1
0
1
0
1
0
1
0
1
1
1
1
1
1
1
0
1
1
0
0
1
1
0
1
0
1
1
1
0
1
0
0
1
1
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
0
1
1
1
1
1
1
0
0
1
1
0
1
0
0
1
1
0
1
0
1
1
1
1
1
0
0
1
1
0
1
0
1
1
1
0
1
0
1
0
0
0
0
0
8
0
0
8
0
1
0
1
1
1
1
1
8
0
0
8
1
0
0
1
1
1
1
0
1
0
0
0
1
0
1
0
1
0
0
0
1
1
0
1
0
1
1
1
0
1
0
1
0
0
8
0
0
8
0
1
0
1
1
1
1
1
8
0
0
8
1
0
1
1
1
0
1
0
1
1
1
1
0
1
1
1
1
0
1
0
1
1
0
1
0
1
1
0
0
1
1
0
1
1
0
1
1
0
1
0
1
1
0
0
1
1
0
1
1
0
1
0
1
1
1
0
1
1
8
0
0
8
0
1
0
1
1
1
1
0
8
0
0
1
1
0
1
1
1
1
1
0
1
0
1
1
1
0
1
0
0
1
1
0
1
1
0
1
0
1
1
1
0
1
0
1
1
1
1
0
0
1
0
1
0
1
1
0
1
0
1
0
0
1
0
1
1
0
0
1
1
1
1
1
1
1
0
1
1
0
1
0
1
0
1
1
0
1
0
1
1
0
1
0
1
1
1
0
0
0
1
1
0
0
1
1
0
1
1
0
1
0
1
0
1
0
0
1
0
1
1
1
1
0
1
1
1
0
0
0
1
1
1
1
1
1
1
1
1
1
0
1
1
0
0
1
1
0
1
1
1
0
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
0
0
1
1
1
0
1
1
0
1
0
1
0
1
1
1
1
0
1
0
1
1
1
1
0
0
0
1
1
1
1
0
0
1
1
0
1
1
1
1
0
1
1
1
0
1
1
0
1
0
1
1
0
1
1
0
0
1
1
1
1
0
0
1
1
0
1
1
1
1
0
1
1
0
0
0
1
0
1
1
0
1
1
1
0
1
1
0
0
0
0
1
1
0
0
1
1
0
1
1
1
1
0
1
1
1
0
0
1
0
1
1
1
1
0
1
1
0
1
1
1
1
1
0
0
1
1
1
1
0
0
1
0
1
1
0
0
0
1
1
1
0
0
1
0
1
1
1
1
1
1
1
0
0
1
0
0
1
0
1
0
1
1
1
1
0
1
0
0
1
1
1
1
0
0
1
1
0
1
0
0
1
1
0
1
0
0
1
1
0
1
1
0
1
0
1
1
1
0
1
0
1
1
1
1
0
0
1
0
1
0
1
1
0
1
1
1
0
0
1
0
1
0
1
1
1
1
0
1
1
0
1
0
1
1
1
0
0
1
0
1
1
0
1
0
1
1
0
0
1
1
1
1
1
0
1
1
0
1
0
1
1
1
0
1
1
0
1
1
1
1
0
1
1
1
0
1
1
1
0
0
1
0
1
0
1
1
0
1
0
1
0
0
1
1
0
1
1
1
1
1
0
1
0
0
0
1
0
1
0
0
1
1
1
1
1
0
1
0
0
0
1
0
1
0
1
0
0
1
0
0
1
0
1
0
1
1
0
1
1
1
0
0
1
1
1
1
0
0
0
1
1
0
1
0
0
0
1
0
1
0
1
0
1
0
0
1
1
1
1
0
0
1
1
0
1
0
1
1
1
0
0
0
0
0
0
0
1
1
0
1
1
1
1
0
1
0
0
1
1
0
1
0
1
0
0
1
1
0
0
1
1
0
0
0
1
1
0
0
1
0
1
0
0
0
0
0
0
0
1
1
0
0
1
1
0
1
0
1
1
1
0
1
0
1
0
0
1
1
1
1
0
0
0
1
0
0
0
1
0
1
0
1
1
1
1
1
1
1
0
1
0
0
0
0
0
1
1
1
0
0
0
1
1
1
1
1
0
0
0
1
0
1
0
1
1
1
0
1
0
0
0
0
0
0
0
1
0
0
1
0
1
0
1
1
1
1
0
1
0
0
1
0
0
1
0
0
1
1
0
1
0
1
1
1
0
1
0
0
1
1
0
1
1
0
1
0
1
1
1
0
1
0
1
1
1
1
0
0
1
0
1
0
1
1
1
1
0
1
0
0
1
1
0
1
0
0
1
1
0
1
1
1
1
0
1
1
1
1
0
1
0
1
1
0
1
0
1
1
1
1
1
1
0
1
1
0
1
1
1
1
0
1
1
0
0
0
1
0
1
1
1
1
0
1
1
0
0
1
1
1
0
0
1
0
1
0
1
1
1
1
1
1
0
0
1
1
1
1
0
0
1
0
0
1
0
0
1
1
0
0
0
0
0
0
1
0
1
0
1
0
0
1
0
0
1
0
0
0
0
2
0
0
6
0
1
0
1
0
1
1
0
1
1
0
9
1
1
1
1
0
1
1
1
0
0
0
1
0
0
0
0
0
0
0
1
1
0
1
0
1
0
0
0
0
0
1
0
0
1
1
1
0
0
0
0
0
0
0
0
1
1
1
0
0
1
1
0
0
0
1
0
1
0
1
1
1
1
0
0
0
1
0
0
0
1
1
0
0
0
0
0
1
1
1
1
0
1
1
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
1
1
1
1
1
0
1
1
0
1
0
1
0
0
0
0
1
1
0
1
0
1
0
0
0
0
0
0
1
1
1
1
1
0
1
0
0
0
0
0
0
1
1
1
0
0
1
1
0
0
0
1
1
1
0
1
0
1
0
1
0
0
1
1
0
0
1
0
0
0
0
0
0
0
1
1
0
1
0
0
1
1
0
0
1
1
0
1
0
1
0
0
0
0
0
1
1
1
0
1
1
0
1
1
1
0
0
1
1
1
1
0
1
1
1
0
1
0
0
1
1
1
0
0
0
0
0
1
1
1
1
0
0
0
1
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
1
1
1
1
0
1
0
0
0
0
1
1
0
1
0
1
0
0
1
1
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
1
0
1
1
0
0
0
0
0
0
1
1
1
1
1
1
0
0
1
1
1
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
1
1
0
1
0
1
0
0
0
0
0
1
1
0
0
0
0
0
0
1
0
0
1
0
1
1
1
1
0
1
1
0
1
1
0
0
1
1
0
0
0
0
0
0
0
0
0
1
1
1
1
0
0
0
0
0
0
1
0
1
1
0
0
0
0
1
1
1
0
1
1
0
1
1
1
0
0
1
0
0
1
1
1
1
0
1
0
0
0
1
1
0
1
1
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
1
1
1
0
0
1
0
0
0
0
0
1
1
1
1
0
0
1
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
1
0
1
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
1
0
1
0
1
1
0
1
0
0
1
0
0
0
1
0
0
0
1
1
0
0
0
0
0
0
1
1
1
1
1
1
1
0
0
0
0
0
0
1
0
0
0
0
1
1
0
0
0
1
1
1
1
1
1
1
1
1
1
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
1
1
0
0
1
0
0
0
0
0
0
1
1
0
0
0
1
0
0
1
0
1
0
0
1
0
0
0
1
1
1
1
1
1
1
0
0
0
0
0
1
0
0
1
1
0
0
0
1
0
0
1
0
0
0
1
0
0
1
1
0
0
0
0
0
1
1
0
0
0
1
0
0
1
1
1
1
1
0
1
1
0
1
0
0
0
0
0
0
1
1
1
0
0
1
1
0
1
0
1
1
1
1
0
1
0
0
0
1
1
0
1
1
0
0
0
0
0
0
0
0
1
0
0
1
0
1
0
1
0
1
1
0
0
1
0
0
0
0
0
0
1
1
1
0
0
0
0
0
0
0
1
1
1
1
1
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
1
0
0
0
1
1
0
1
1
0
0
0
1
0
0
1
1
1
0
1
0
1
1
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
1
1
0
0
6
0
1
0
1
1
1
0
1
1
0
1
9
1
0
1
1
1
0
0
0
0
0
0
0
1
0
0
0
0
1
1
0
1
0
0
1
0
1
1
1
0
1
0
0
1
1
1
0
0
6
0
1
0
1
1
0
0
1
1
1
0
9
1
1
1
0
0
1
1
0
1
1
1
1
0
1
1
0
1
1
1
0
1
1
0
1
0
1
1
0
1
1
1
1
1
0
0
1
1
1
0
0
1
1
0
1
1
0
0
1
1
1
0
0
1
1
1
1
1
1
1
0
0
6
0
1
0
1
1
0
0
1
1
0
1
9
1
0
1
1
1
1
1
0
0
0
1
1
0
0
0
0
1
1
1
0
0
1
0
1
0
1
1
1
0
1
0
0
1
1
1
0
0
6
0
1
0
1
1
1
0
1
1
1
0
9
1
1
1
1
0
1
1
1
0
0
1
1
0
0
0
0
1
1
0
1
0
1
0
0
1
1
1
0
1
1
0
0
0
1
0
1
0
1
0
1
0
1
0
1
1
1
0
0
1
1
0
0
0
1
1
0
0
1
0
1
0
1
1
1
1
0
0
1
0
1
0
1
1
0
0
1
0
1
0
0
0
0
0
1
0
0
1
0
0
0
0
0
1
0
1
1
1
0
1
0
0
1
1
0
1
0
1
0
0
0
1
0
1
1
1
0
0
0
1
0
1
0
0
0
1
0
0
1
1
0
0
0
1
1
1
0
0
0
1
0
0
0
1
0
0
1
0
0
0
0
1
1
0
0
1
0
1
1
1
0
1
1
1
0
0
6
0
1
0
1
1
1
0
1
1
0
1
9
1
0
1
1
1
0
0
0
0
0
0
1
0
0
1
0
1
1
1
0
1
1
0
1
0
0
1
1
0
0
0
1
1
1
1
0
0
6
1
0
0
1
1
0
1
0
1
1
0
9
1
1
1
0
0
1
1
0
1
1
0
1
0
1
1
0
1
1
1
0
1
1
0
1
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
0
1
1
1
1
1
0
0
1
1
1
0
0
1
1
0
1
1
1
1
0
0
6
0
1
0
1
1
1
0
1
1
0
1
9
1
0
1
1
1
1
1
0
0
0
1
1
0
0
0
0
1
1
1
0
0
1
0
0
0
1
1
1
0
1
0
1
0
0
1
0
0
6
1
0
0
1
1
1
1
0
1
1
0
9
1
1
1
1
0
1
1
1
0
0
1
1
0
1
1
0
1
0
1
1
1
1
1
1
0
1
1
1
1
0
1
1
0
1
0
0
1
1
0
0
1
0
0
1
1
1
1
0
1
1
1
1
1
1
0
1
1
0
0
0
1
1
0
0
0
1
0
1
1
1
0
0
1
1
0
1
1
0
1
0
1
1
0
1
1
0
0
1
1
1
0
0
1
1
0
0
1
1
1
1
0
0
1
0
0
1
1
1
1
0
1
1
0
1
1
1
0
1
1
0
1
0
1
1
1
0
0
1
1
0
0
1
0
0
1
0
0
1
1
0
1
1
0
1
0
1
1
1
1
1
0
0
1
1
1
0
0
1
1
1
0
0
1
0
1
0
1
1
1
0
1
1
1
0
0
1
1
0
1
1
1
0
1
1
0
1
0
1
1
1
1
1
1
0
0
0
1
0
0
1
1
0
1
1
1
0
0
1
1
0
1
1
0
0
1
1
1
0
0
1
1
1
1
0
0
0
1
0
0
1
1
0
1
1
1
1
0
1
1
1
1
1
0
0
1
1
0
0
0
1
1
1
1
0
0
0
1
1
1
0
0
6
0
1
0
1
1
0
0
1
1
0
1
9
1
0
1
1
1
1
1
0
0
0
1
1
0
0
0
0
1
1
1
0
1
0
0
1
0
0
1
1
0
1
0
0
0
0
1
0
0
6
1
0
0
1
1
1
1
0
1
1
0
9
1
1
1
0
0
0
1
0
1
1
1
1
0
1
1
1
1
1
1
0
1
1
0
1
0
1
1
1
1
1
1
1
1
0
0
1
1
0
0
0
1
1
0
1
1
0
0
1
1
1
0
0
1
1
0
1
1
1
1
0
0
6
0
1
0
1
1
1
0
1
1
0
1
9
1
0
1
1
1
1
1
0
0
0
1
0
0
0
0
0
0
1
1
0
0
1
0
1
0
0
1
0
0
1
0
0
1
1
1
0
0
6
1
0
0
1
1
1
1
0
1
1
0
9
1
1
1
1
0
1
1
1
1
0
1
0
0
0
0
1
0
1
0
1
0
1
1
1
1
1
0
0
1
0
0
0
0
0
1
1
0
1
0
1
0
0
1
0
1
1
1
0
1
1
0
1
0
1
1
0
0
0
0
1
0
0
1
1
0
0
1
0
0
1
0
0
1
1
0
0
0
0
1
1
0
1
1
1
0
0
1
0
1
1
1
0
1
0
0
0
0
0
1
0
0
1
1
0
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
1
1
0
0
0
1
0
0
1
0
0
1
0
1
1
0
0
0
0
0
1
1
0
1
0
0
1
0
0
0
0
1
1
1
0
1
0
1
1
1
0
1
1
1
0
0
6
0
1
0
1
1
0
0
1
1
0
1
9
1
0
1
1
1
1
1
0
0
0
1
0
1
0
0
0
0
1
1
0
1
0
0
1
0
0
1
0
0
1
0
1
0
0
1
0
0
6
0
1
0
1
1
0
0
1
1
0
1
9
1
0
0
0
0
1
0
0
1
1
0
1
0
1
1
1
0
1
0
0
1
1
0
0
0
1
1
0
0
1
1
0
1
1
0
1
1
0
1
0
1
1
0
0
1
1
0
1
1
1
0
0
1
1
1
0
0
0
1
0
0
6
0
1
0
1
1
1
0
1
1
1
0
9
0
0
1
0
0
1
1
0
1
0
0
1
1
0
1
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
1
1
1
1
0
0
6
0
1
0
1
1
0
0
1
1
0
1
9
1
0
1
1
1
1
0
1
0
0
1
1
1
0
0
1
0
0
1
1
1
0
1
1
0
1
1
1
0
1
0
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
1
0
0
1
1
0
0
1
0
0
1
1
1
0
1
1
0
1
1
1
0
1
1
1
0
0
1
1
1
0
1
1
0
1
1
1
0
1
0
1
1
1
1
1
1
0
1
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
1
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
0
1
1
1
1
0
0
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
1
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
0
0
1
1
0
0
0
1
1
0
1
1
1
0
0
1
0
0
1
1
1
0
1
1
0
1
1
1
0
1
1
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
0
1
1
0
1
0
0
0
0
0
1
1
1
0
1
1
0
1
1
1
0
1
1
1
0
0
1
1
1
0
1
1
0
1
1
1
0
1
0
1
1
1
1
0
1
0
1
1
0
0
1
1
1
0
1
1
0
1
1
1
0
1
1
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
0
1
1
1
1
0
0
1
0
0
1
1
1
0
1
1
0
1
1
1
0
1
1
0
0
0
1
1
1
0
1
1
0
1
1
1
0
1
0
1
1
0
0
1
1
1
0
1
0
0
1
0
1
0
0
1
1
0
1
1
1
0
1
0
0
1
1
1
0
1
1
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
0
0
1
1
1
0
0
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
1
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
0
0
1
0
1
1
1
0
0
1
0
0
1
1
1
0
1
1
0
1
1
1
0
1
0
1
0
0
1
1
1
0
1
1
0
1
1
1
0
1
1
0
0
1
1
0
0
1
0
0
1
1
1
0
1
1
0
1
1
1
0
1
0
1
1
0
1
1
1
0
1
0
0
1
1
1
0
1
0
0
0
1
0
0
1
1
1
0
1
0
1
0
1
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
1
1
0
0
1
1
1
0
1
1
0
1
1
1
0
1
0
0
1
1
1
0
0
1
0
0
1
1
1
0
1
1
0
1
1
1
0
1
1
0
0
0
1
1
1
0
1
0
0
1
1
1
0
1
0
1
1
1
1
1
1
0
0
1
1
0
1
1
1
0
1
1
0
1
1
1
0
1
1
1
0
0
1
1
1
0
1
1
0
1
1
1
0
1
0
1
1
1
1
0
0
0
0
0
1
1
1
0
1
1
0
1
1
1
0
1
1
1
1
0
1
1
1
0
1
0
0
1
1
1
0
1
1
1
1
0
1
1
1
1
1
0
1
1
1
0
0
0
0
1
1
0
1
0
0
1
1
1
0
1
1
0
1
1
1
0
1
1
0
0
0
1
1
1
0
1
0
0
1
1
1
0
1
0
1
1
1
1
0
1
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
1
0
0
0
1
1
1
0
1
0
0
1
1
1
0
1
0
1
1
1
1
0
1
0
0
1
1
0
1
1
1
0
1
0
0
1
1
1
0
1
1
1
0
0
1
1
1
0
1
1
0
1
1
1
0
1
1
0
1
0
1
0
0
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
1
1
0
0
1
1
1
0
1
1
0
1
1
1
0
1
0
0
1
0
1
1
1
1
0
1
0
1
1
0
0
0
0
0
1
1
1
0
1
0
0
1
1
1
0
1
1
1
0
0
1
1
1
0
1
1
0
1
1
1
0
1
1
0
1
1
1
1
0
0
0
0
1
1
1
0
1
0
0
1
1
1
0
1
0
1
0
0
1
1
1
0
1
1
0
1
1
1
0
1
1
0
0
1
1
0
1
0
0
1
1
0
1
1
1
0
1
0
0
1
1
1
0
1
1
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
0
0
1
0
1
0
0
1
0
0
1
1
1
0
1
1
0
1
1
1
0
1
0
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
1
0
0
0
0
1
1
1
0
1
0
0
1
1
1
0
0
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
1
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
0
0
1
1
1
0
0
1
0
0
1
1
1
0
1
1
0
1
1
1
0
1
0
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
1
0
0
1
1
0
1
0
0
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
1
1
0
0
1
1
1
0
1
1
0
1
1
1
0
1
0
0
1
0
1
0
0
1
0
0
1
1
1
0
1
1
0
1
1
1
0
1
1
1
0
0
1
1
1
0
1
1
0
1
1
1
0
1
0
1
1
0
1
1
1
1
0
0
1
0
1
0
0
1
0
0
1
1
1
0
1
1
0
1
1
1
0
1
1
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
0
1
1
1
1
0
0
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
1
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
0
0
1
0
0
1
1
1
0
1
1
0
1
1
1
0
1
0
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
1
0
0
0
1
0
0
1
0
0
1
1
1
0
1
0
0
1
1
1
0
1
1
1
1
0
1
1
1
0
1
0
0
1
1
1
0
1
1
0
1
0
0
1
0
1
1
1
0
0
6
1
0
0
1
1
0
1
0
1
1
0
9
1
1
1
0
0
1
1
0
1
0
1
1
1
0
1
0
0
1
1
1
1
1
0
0
0
1
0
0
0
0
0
0
1
1
1
0
0
6
0
1
0
1
1
0
0
1
1
0
1
9
1
0
0
0
0
0
1
0
1
1
1
0
0
1
1
0
1
1
1
0
1
1
0
0
0
1
1
1
0
1
1
0
1
1
0
1
1
1
0
0
1
1
1
1
1
1
0
1
1
1
0
0
1
1
0
0
0
0
1
0
0
6
0
1
0
1
1
0
0
1
1
0
1
9
1
1
1
1
1
1
1
0
0
0
1
1
0
0
0
0
1
1
1
0
1
0
0
1
0
1
0
1
0
1
0
0
1
1
1
0
0
6
0
1
0
1
1
1
0
1
1
1
0
9
1
1
1
1
0
1
1
1
0
0
1
1
0
1
0
0
1
0
0
0
0
0
1
1
1
1
0
0
1
0
0
1
0
1
1
0
0
1
0
1
0
1
1
1
1
1
0
0
1
0
0
0
0
0
1
1
0
1
0
1
0
0
1
1
0
0
1
1
0
0
0
0
0
1
0
1
0
0
1
1
0
0
0
1
0
0
1
0
0
1
0
0
0
0
1
1
1
0
1
0
1
1
1
0
1
0
0
1
0
0
0
0
1
1
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
1
0
0
1
1
0
1
0
1
1
1
0
1
0
0
1
0
0
0
0
1
1
1
0
1
0
0
1
1
0
1
1
1
0
0
6
0
1
0
1
1
1
0
1
1
0
1
9
1
1
1
1
1
0
0
0
0
0
0
1
0
0
1
0
1
1
1
0
1
0
0
1
0
1
0
1
0
1
0
1
1
1
1
0
0
6
0
1
0
1
1
0
0
1
1
1
0
9
1
1
1
0
0
1
1
0
1
1
0
1
0
1
1
0
1
1
1
0
1
1
0
1
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
0
1
1
1
1
1
0
0
1
1
1
0
0
1
1
0
1
1
1
1
0
0
6
0
1
0
1
1
0
0
1
1
0
1
9
1
1
1
1
1
0
0
0
1
0
0
1
0
0
0
0
1
1
1
0
1
1
0
0
0
0
1
1
0
1
0
0
1
1
1
0
0
6
0
1
0
1
1
1
0
1
1
1
0
9
1
1
1
1
0
1
1
1
0
0
1
0
0
1
1
1
1
0
1
0
0
0
1
0
0
1
1
0
0
0
1
1
1
1
0
0
0
1
0
0
0
1
1
1
0
0
1
0
1
1
1
1
1
1
0
1
1
1
1
0
1
1
1
0
0
0
1
1
1
1
0
0
1
0
0
1
1
1
0
0
1
1
0
1
1
1
0
1
1
1
1
0
1
1
1
0
1
1
1
1
1
0
0
1
0
0
1
1
1
0
1
1
1
0
1
1
1
0
1
1
1
0
1
1
1
1
0
0
1
0
0
1
0
0
1
0
0
1
1
0
1
1
0
0
0
1
1
1
1
1
1
1
0
1
1
0
0
1
1
1
0
1
1
0
1
0
0
1
1
0
1
1
1
1
0
1
1
1
0
1
0
0
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
0
0
1
1
1
0
0
1
0
0
1
1
1
1
1
0
0
1
0
1
1
1
1
0
1
0
1
0
0
1
1
1
1
0
0
0
0
1
1
1
1
1
0
0
1
1
1
0
0
1
1
1
0
0
1
0
1
1
1
0
0
6
0
1
0
1
1
1
0
1
1
1
0
9
1
1
1
0
0
1
1
0
1
0
0
1
1
0
1
0
1
1
1
1
1
0
0
0
0
1
1
0
0
1
0
1
1
1
1
0
0
6
0
1
0
1
1
1
0
1
1
0
1
9
1
0
0
0
0
1
0
0
1
1
1
1
0
1
1
1
0
0
0
0
1
1
1
1
0
1
1
0
1
1
1
0
1
0
0
1
1
0
1
0
1
1
1
1
1
1
0
1
1
1
0
0
1
1
1
1
1
1
1
0
0
6
0
1
0
1
1
1
0
1
1
0
1
9
1
0
1
1
1
0
0
0
1
0
0
1
0
0
0
0
1
1
1
0
0
1
0
1
0
0
1
0
0
1
0
1
0
0
1
0
0
6
0
1
0
1
1
1
0
1
1
1
0
9
1
1
1
1
0
1
0
1
0
0
1
0
0
0
0
1
1
1
0
0
0
0
1
1
1
1
1
0
1
0
0
1
0
1
0
1
1
0
0
0
0
1
1
1
1
1
0
0
1
1
0
0
0
1
1
0
0
0
0
1
0
0
1
1
0
0
1
1
0
0
0
0
1
1
0
1
0
0
0
0
1
1
1
1
1
1
1
0
0
1
1
1
1
0
1
1
1
0
1
0
1
1
1
0
1
0
0
1
1
0
1
0
1
1
1
0
1
0
1
1
1
1
0
0
1
0
0
1
0
0
0
0
1
1
0
0
0
0
0
0
1
0
1
0
0
1
0
0
0
0
1
0
0
0
1
1
0
0
1
0
1
1
1
0
0
6
1
0
0
1
1
0
1
0
1
1
0
9
1
0
1
1
0
0
1
0
0
0
1
1
1
0
0
0
1
0
1
1
0
1
0
1
0
1
1
0
0
0
0
1
1
1
1
0
1
1
0
0
0
1
1
1
1
0
5
0
0
1
1
0
0
1
1
1
1
0
1
1
0
1
1
1
0
1
1
1
1
0
1
1
0
0
0
1
1
1
0
0
0
1
0
0
1
0
1
1
0
0
1
0
0
0
1
1
1
0
0
0
1
1
1
0
0
1
0
1
0
0
1
0
0
1
1
0
0
0
1
1
1
0
0
1
0
0
1
1
0
0
0
1
1
0
0
1
0
0
1
0
0
1
1
0
0
0
1
1
1
0
0
1
0
0
1
1
0
0
0
0
0
1
1
0
1
0
0
1
1
1
0
0
1
0
0
1
1
0
0
0
1
0
1
0
0
1
0
0
1
1
0
0
0
1
1
1
1
1
0
0
1
0
0
1
1
0
0
0
1
1
1
0
0
1
0
0
1
1
0
0
0
1
0
1
1
1
1
0
1
1
0
1
0
1
0
0
1
0
0
1
1
0
0
0
1
1
1
0
0
1
0
0
1
1
0
0
0
1
0
1
0
1
0
0
1
0
0
1
1
0
0
0
1
1
1
0
0
1
0
0
1
1
0
0
0
0
1
0
0
1
1
0
0
1
1
1
0
0
1
0
0
1
1
0
0
0
1
1
1
0
0
1
0
0
1
1
0
0
0
1
1
1
1
1
0
0
1
0
0
1
1
0
0
0
1
0
1
0
1
1
0
0
1
0
0
0
0
0
0
1
1
0
0
1
1
1
1
0
0
1
0
0
1
0
1
1
1
0
0
0
1
0
1
1
1
0
0
0
1
1
0
1
1
1
0
0
1
1
1
1
1
0
0
1
1
1
1
0
1
1
0
0
0
1
1
1
1
0
0
1
0
0
1
0
1
1
0
0
1
0
0
0
1
1
1
0
0
0
1
0
1
0
0
1
0
0
1
1
0
1
0
0
1
1
0
0
1
0
0
1
1
0
0
0
1
1
1
0
1
0
0
1
0
0
1
1
0
1
0
0
1
1
0
0
1
0
0
1
1
0
1
0
0
0
0
1
1
1
0
0
0
1
1
0
1
1
1
1
0
1
1
1
0
1
0
0
1
0
1
1
0
1
1
1
1
0
1
1
1
1
1
0
0
1
1
1
0
0
1
1
1
0
1
1
1
1
0
1
0
0
0
1
0
1
1
0
1
0
1
1
0
0
0
0
0
1
1
1
1
0
1
0
0
0
1
0
1
1
1
0
0
1
1
1
0
0
1
0
0
1
1
0
0
0
1
1
1
0
0
1
0
0
1
1
0
0
0
1
0
1
1
1
0
0
1
0
0
1
1
0
0
0
1
0
1
0
0
1
0
0
1
1
0
0
0
1
0
0
0
1
1
0
0
1
0
1
0
0
1
0
0
1
1
0
0
0
1
1
1
0
0
1
0
0
1
1
0
0
0
1
0
0
0
1
0
0
1
0
0
1
1
0
0
0
1
1
1
0
0
1
0
0
1
1
0
0
0
0
1
0
0
1
1
0
1
0
0
1
0
1
0
0
1
0
0
1
1
0
0
0
1
1
1
0
0
1
0
0
1
1
0
0
0
1
1
1
1
1
0
0
1
0
0
1
1
0
0
0
1
0
1
0
0
1
0
0
1
1
0
0
0
1
0
1
1
0
1
0
0
1
1
1
0
0
1
0
0
1
1
0
0
0
1
0
1
0
0
1
0
0
1
1
0
0
0
1
1
1
0
1
0
0
1
0
0
1
1
0
0
0
1
1
1
0
0
1
0
0
1
1
0
0
0
1
1
1
1
0
1
1
1
1
0
1
0
0
0
1
0
1
1
0
1
0
1
1
0
0
0
0
0
1
1
1
1
0
1
0
0
0
1
0
1
1
0
1
1
1
0
0
1
1
1
0
1
1
0
1
1
0
0
0
1
1
1
0
1
1
1
1
0
1
1
0
0
1
0
1
0
0
0
0
0
1
1
0
1
0
0
0
1
1
0
0
1
0
0
0
1
0
1
1
1
0
0
1
0
0
1
1
0
0
0
1
0
1
0
0
1
0
0
1
1
0
1
0
0
1
1
0
1
0
0
1
0
0
1
1
0
0
0
1
1
1
0
0
1
0
0
1
1
0
0
0
1
1
0
1
1
1
0
1
0
0
0
1
0
1
0
1
1
1
0
0
0
1
1
1
1
0
0
1
0
0
