0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
4
1
2
1
2
0
35
0
2
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
1
0
3
1
0
0
3
0
1
1
0
0
0
0
0
0
0
1
0
0
0
2
1
0
1
0
1
2
0
0
35
0
0
1
0
0
2
0
0
0
0
0
2
3
4
1
0
2
0
6
0
0
0
5
1
0
3
0
4
0
0
0
0
1
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
1
0
125
0
0
0
0
2
0
0
0
1
2
2
4
0
1
1
0
0
0
0
0
2
0
1
0
1
0
3
0
1
5
1
0
2
6
0
0
2
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
1
0
2
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
2
8
1
0
0
0
1
0
0
2
0
0
1
0
0
1
0
0
0
0
0
0
0
0
1
1
1
0
0
0
0
4
0
0
0
0
0
0
125
0
0
0
0
0
2
0
3
0
0
125
16
89
0
2
0
2
1
0
0
1
0
0
0
0
0
35
1
0
0
0
0
0
0
0
0
0
0
0
0
1
3
0
0
4
2
0
0
0
0
0
0
0
1
0
125
1
2
1
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
1
1
0
0
0
0
0
127
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
2
0
0
0
0
1
0
0
0
1
2
0
0
0
1
0
0
0
0
0
0
1
0
0
0
2
1
23
2
3
3
0
0
0
0
0
0
0
1
125
2
0
0
0
0
0
4
10
3
27
1
4
0
0
0
2
6
4
2
0
1
7
0
16
23
4
0
1
3
1
0
2
0
0
1
1
1
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
3
0
8
3
5
0
0
0
0
0
2
3
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
1
2
0
0
0
4
0
1
0
0
0
1
0
0
2
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
1
0
0
35
2
0
0
47
0
0
1
0
1
185
0
1
0
49
0
1
0
0
0
0
0
0
1
0
0
0
0
0
4
0
0
4
0
0
0
0
0
0
0
0
0
2
3
1
0
3
2
2
0
0
0
0
0
2
0
1
0
0
0
0
0
1
1
0
0
2
5
0
3
0
0
0
2
1
1
1
2
4
6
19
1
2
0
1
0
125
0
0
1
0
1
1
0
0
0
0
0
0
2
0
0
0
2
0
0
0
0
1
0
0
0
4
0
3
0
0
0
0
2
0
1
0
1
1
11
18
0
10
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
126
0
2
0
0
0
0
0
2
2
0
0
0
0
126
0
0
0
1
2
0
1
0
0
0
0
0
0
0
0
1
3
0
35
0
0
0
0
18
0
0
70
0
0
1
1
0
0
2
0
1
1
0
0
0
0
0
0
0
1
0
0
0
0
1
1
0
0
0
70
0
0
0
0
1
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
125
0
0
0
0
0
0
0
0
1
1
0
2
0
0
1
0
1
0
0
0
0
0
3
0
0
0
0
0
0
0
0
1
0
0
0
1
1
0
0
0
0
0
2
0
0
0
0
2
0
2
0
0
1
0
0
1
1
3
3
0
0
2
2
2
0
21
4
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
1
0
0
0
0
1
0
2
4
0
0
0
1
0
0
0
1
0
0
0
0
1
0
1
2
0
0
126
3
2
0
0
0
0
3
0
2
1
0
0
0
0
0
0
0
0
0
0
0
4
0
0
0
0
0
0
0
1
7
0
0
0
0
0
0
1
0
0
1
0
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
1
1
0
0
0
0
0
0
1
0
1
0
0
0
2
0
0
0
0
0
1
0
0
0
0
0
1
3
0
3
0
0
1
0
1
1
35
0
0
0
0
0
0
0
0
1
0
1
2
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
2
0
0
0
0
0
0
0
1
2
1
0
3
1
1
0
3
0
3
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
1
0
0
0
0
0
2
125
0
0
4
2
1
0
0
1
1
0
0
0
1
0
0
2
0
5
1
3
2
2
1
1
0
0
0
0
1
3
0
0
0
0
0
2
0
0
4
1
3
0
0
0
2
0
2
2
5
8
0
1
0
0
0
2
0
0
1
6
0
0
0
0
0
5
0
0
3
3
0
0
0
8
2
0
1
0
0
0
0
0
1
0
0
2
0
1
2
0
1
0
1
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
2
2
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
1
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
2
3
0
0
1
0
1
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
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
8
1
125
1
0
0
0
1
0
0
2
0
0
0
0
0
0
0
0
0
0
2
0
0
0
2
0
0
0
0
1
0
0
11
3
0
0
1
0
0
0
0
0
0
0
1
1
0
5
3
2
2
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
4
3
0
0
3
2
0
0
1
0
0
0
6
4
0
0
0
1
0
2
0
2
4
0
0
4
0
2
5
0
0
0
0
0
0
1
1
0
0
0
2
0
0
0
0
0
125
0
2
2
4
4
0
0
2
3
0
1
0
1
1
0
4
0
0
0
0
0
0
0
2
0
0
1
0
0
0
1
0
0
1
1
0
2
4
6
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
2
0
0
0
0
0
0
0
0
0
1
0
0
0
0
16
1
0
105
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
1
0
1
10
2
0
0
3
0
0
0
0
1
0
0
0
0
0
1
0
0
2
0
1
0
0
1
0
3
0
4
1
1
0
0
0
0
2
1
0
2
1
0
2
3
0
0
0
1
0
2
0
0
0
0
0
0
0
0
0
0
2
0
1
0
4
0
0
2
0
0
0
0
0
1
0
3
0
1
0
3
1
1
1
0
0
0
1
0
1
1
2
1
0
1
0
3
0
0
1
0
1
1
1
0
0
0
0
4
1
1
3
8
6
1
1
0
0
1
4
1
1
0
0
0
0
0
0
4
0
1
0
1
0
0
2
0
1
2
2
0
1
4
2
3
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
2
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
1
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
0
0
0
0
0
0
0
1
0
2
0
0
0
0
0
0
0
36
1
3
0
5
0
1
0
1
0
1
2
0
0
125
0
1
0
0
0
0
4
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
3
0
0
0
0
0
0
0
35
35
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
2
7
0
3
0
0
0
0
0
0
0
0
1
0
2
0
0
0
46
1
0
1
0
0
0
1
0
0
0
2
1
0
0
0
0
2
0
0
0
0
0
1
1
0
0
0
0
2
0
1
2
0
1
0
0
0
0
0
0
0
2
0
0
0
1
1
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
1
125
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
4
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
0
0
0
0
0
0
0
1
0
2
0
0
0
0
4
0
0
2
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
2
0
1
0
0
1
2
3
0
5
0
0
2
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
2
0
1
0
0
0
1
0
0
0
0
2
0
1
0
0
0
0
0
0
0
1
0
0
0
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
2
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
1
1
1
1
0
0
0
0
0
0
0
1
4
0
0
1
1
0
0
0
1
0
0
1
0
6
0
0
0
1
0
1
0
0
0
0
2
0
0
0
0
0
1
1
0
8
5
1
11
6
13
1
3
5
12
13
3
10
51
4
3
2
0
2
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
9
0
0
0
0
0
2
0
0
0
2
0
0
0
2
0
1
0
0
0
1
0
2
0
0
0
0
0
1
3
0
0
0
0
0
0
0
0
0
125
0
1
0
0
0
0
0
0
0
0
0
1
1
0
0
2
2
1
0
2
0
1
0
0
3
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
5
0
0
1
3
0
8
1
4
1
0
7
21
9
9
4
0
0
0
2
0
0
0
0
2
0
0
0
0
1
125
0
0
0
1
11
0
0
0
0
0
0
0
0
0
4
1
0
0
1
19
4
8
0
1
0
0
4
1
4
2
1
1
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
3
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
0
0
1
0
0
0
0
0
0
0
125
1
3
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
1
0
2
0
0
0
2
0
0
1
1
0
1
0
0
1
0
3
2
0
1
1
0
0
0
0
2
0
1
0
0
1
0
0
0
0
0
0
0
0
3
0
0
0
0
1
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
2
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
3
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
125
0
5
0
0
0
0
0
125
0
1
0
130
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
1
0
1
2
0
0
0
0
0
1
142
47
0
0
0
1
1
0
1
0
0
35
2
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
2
0
0
0
0
1
2
1
0
0
1
0
0
0
0
0
0
0
0
0
0
1
1
0
2
0
0
2
1
1
2
0
1
125
0
0
0
0
0
2
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
2
8
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
36
0
0
0
0
37
31
2
0
0
0
0
1
0
0
0
0
0
0
0
0
0
4
0
0
6
0
0
1
0
0
1
0
2
0
1
3
0
0
0
1
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
1
0
0
2
0
0
2
0
2
0
0
0
0
0
0
1
0
0
1
0
1
35
0
1
1
0
1
0
0
0
1
0
0
0
0
0
0
2
1
0
0
2
1
0
0
35
2
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
1
1
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
4
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
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
1
0
1
1
1
5
5
3
1
0
4
1
8
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
125
0
0
0
0
1
1
0
0
0
0
0
0
125
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
1
2
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
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
1
0
0
0
1
1
0
0
2
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
1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
46
0
2
2
2
0
0
0
0
0
0
0
1
0
1
125
0
1
0
4
0
0
0
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
1
0
0
0
0
0
1
1
0
0
1
0
1
0
3
0
0
2
2
0
96
27
11
7
12
3
0
7
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
2
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
1
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
1
0
0
1
0
3
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
0
3
0
0
0
1
1
0
0
2
1
0
12
1
1
8
0
1
0
0
0
2
0
0
2
0
0
2
0
0
0
0
0
0
1
0
0
46
0
1
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
46
125
94
0
0
4
0
233
46
1
1
1
1
1
1
0
0
1
46
127
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
1
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
2
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
6
0
0
0
0
4
0
47
0
1
0
1
0
2
11
1
2
1
1
4
0
0
48
47
0
0
0
0
0
4
2
1
4
2
0
0
0
0
0
0
0
0
125
0
0
0
0
0
4
0
0
0
0
0
0
0
0
0
2
0
0
0
1
0
0
0
0
0
1
0
0
1
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
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
1
0
0
0
0
0
70
0
1
2
7
0
0
0
1
0
0
5
2
0
2
0
3
0
0
0
0
1
0
0
1
0
1
1
3
1
0
0
0
0
0
0
0
0
1
0
3
0
0
0
0
0
0
0
1
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
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
1
0
1
1
0
0
0
0
0
1
1
1
1
3
3
0
1
4
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
3
0
0
0
0
1
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
127
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
35
1
3
0
0
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
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
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
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
2
0
126
1
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
2
0
0
0
0
31
0
1
2
0
1
0
1
2
0
0
1
0
0
0
2
0
0
125
0
2
0
4
1
0
0
0
3
0
1
0
0
0
2
2
1
1
0
0
1
0
0
0
1
0
0
0
0
0
1
1
0
0
1
0
0
0
0
0
0
1
1
3
0
1
0
0
0
8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
8
0
0
0
0
0
1
0
0
0
0
0
0
0
2
0
0
0
0
3
3
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
1
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
1
1
0
4
0
2
1
3
1
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
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
125
0
0
0
0
0
0
0
0
0
1
0
0
0
1
2
1
1
0
0
1
1
0
2
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
125
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
47
0
0
1
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
2
0
0
0
0
2
1
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
46
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
2
4
1
3
43
0
1
1
2
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
3
1
0
0
0
0
0
0
0
0
125
0
1
0
0
0
0
0
0
0
7
0
0
0
0
0
0
1
0
1
1
1
0
1
0
0
1
2
0
125
0
0
0
0
0
0
0
0
1
0
0
0
0
3
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
0
0
0
1
1
0
3
0
1
0
0
0
0
0
3
250
2
2
0
3
0
0
0
3
0
0
0
3
1
0
0
0
1
0
1
0
0
1
5
1
1
1
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
3
0
0
0
9
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
3
0
0
0
0
0
0
0
1
4
4
0
0
0
1
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
125
0
0
2
8
0
0
3
0
1
0
0
0
0
0
0
0
0
1
2
0
0
0
0
0
0
0
3
2
0
0
0
1
1
3
0
1
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
3
0
0
0
0
0
0
1
0
1
0
0
0
0
0
1
0
0
0
1
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
0
0
0
2
1
0
0
0
0
0
1
0
0
2
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
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
2
0
1
0
1
0
0
0
0
0
1
0
0
0
2
0
0
0
0
0
0
0
1
0
0
0
0
1
0
1
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
1
35
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
2
1
4
1
0
1
0
0
0
0
0
2
0
0
0
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
1
0
0
1
2
1
0
0
0
2
0
0
0
0
0
0
0
0
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
125
0
3
1
0
0
0
0
0
0
0
2
1
1
0
0
0
2
0
1
7
0
0
2
0
2
0
1
1
0
2
0
0
0
0
0
1
0
1
4
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
3
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
1
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
1
0
0
1
0
0
1
0
0
0
0
0
1
1
1
0
0
3
0
0
1
1
4
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
2
2
0
0
0
0
0
0
0
0
3
0
0
0
0
1
0
1
0
0
1
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
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
2
1
0
0
0
2
0
3
0
2
0
0
0
0
0
1
0
1
0
0
0
125
0
0
1
0
0
0
0
0
1
1
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
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
3
0
0
0
0
0
1
0
0
0
2
0
0
0
0
0
0
0
0
1
0
0
1
0
126
0
0
0
0
4
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
1
0
0
35
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
2
0
0
0
0
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
126
0
0
0
0
0
1
0
0
0
0
0
0
2
0
1
0
4
0
0
0
2
0
0
0
3
0
0
0
2
0
2
0
0
4
0
0
2
2
0
0
6
2
0
1
1
0
0
1
7
3
0
0
0
1
3
1
0
0
0
0
0
0
0
0
0
0
1
0
2
2
0
1
35
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
1
0
0
1
1
1
0
0
1
1
3
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
2
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
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
46
0
0
0
0
0
0
0
0
0
0
0
1
0
0
3
4
1
0
2
1
1
1
0
0
2
1
0
0
0
0
0
0
0
0
0
4
0
2
2
0
0
0
0
0
0
0
0
0
0
0
0
0
3
2
1
1
1
0
0
0
3
0
0
0
1
0
0
0
0
0
250
0
0
0
0
0
0
0
0
1
2
0
1
0
0
0
0
0
0
0
0
0
1
0
46
0
0
1
2
0
0
0
0
0
0
0
2
0
0
0
0
1
0
0
0
4
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
2
4
1
0
0
5
0
0
2
0
0
12
0
0
0
0
0
0
0
2
2
1
0
0
0
0
1
0
0
0
0
0
1
0
0
1
1
0
2
0
0
0
0
0
0
1
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
2
2
0
0
3
1
0
0
0
0
0
0
1
0
2
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
1
35
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
2
2
0
0
2
0
0
0
0
1
1
2
0
0
0
0
0
0
1
0
0
0
0
2
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
92
1
0
0
1
0
0
0
0
0
47
0
1
0
0
0
0
0
4
2
1
8
7
8
3
2
0
4
0
3
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
24
0
0
0
0
2
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
3
0
0
0
0
1
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
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
0
0
0
0
126
0
0
0
1
0
0
1
1
2
0
1
2
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
5
0
0
0
0
0
0
1
1
0
2
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
2
0
0
6
0
0
0
0
0
1
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
6
1
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
138
0
0
0
0
0
0
0
0
95
0
2
2
47
0
0
0
0
1
0
46
1
0
0
0
1
0
0
1
1
2
0
0
1
4
1
0
0
1
0
0
0
1
1
2
1
2
1
1
1
0
2
0
0
0
3
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
1
1
0
8
4
0
0
0
0
0
7
0
0
0
1
0
5
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
1
2
3
4
2
4
2
0
0
3
7
0
0
5
2
3
2
3
2
4
3
2
4
1
2
4
1
9
2
5
0
0
2
0
0
0
0
0
0
0
0
2
0
0
0
3
0
0
0
0
1
0
0
0
5
3
0
0
5
1
0
0
0
0
0
0
1
0
0
0
0
1
1
3
1
0
0
0
2
0
0
0
0
0
1
0
0
0
0
2
2
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
1
2
2
0
0
0
0
1
1
0
3
1
1
0
0
0
1
1
0
0
35
0
0
4
0
0
1
0
2
0
0
0
0
1
0
0
0
2
0
5
0
0
0
0
0
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
1
0
0
0
0
1
3
9
7
14
2
16
23
20
1
5
2
0
0
0
0
0
7
0
1
0
1
5
0
0
1
0
0
1
3
0
0
1
2
0
1
0
0
0
0
0
4
0
1
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
2
0
0
1
0
0
5
0
1
1
1
0
129
0
0
0
0
0
2
0
0
2
0
0
0
0
0
4
6
4
0
0
0
1
0
3
0
0
0
2
0
0
2
0
4
0
1
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
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
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
1
0
0
0
1
0
0
2
35
0
2
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
6
36
0
0
0
9
0
3
0
1
2
0
2
1
0
3
0
2
0
0
1
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
0
0
0
1
0
0
0
0
0
1
0
0
4
0
0
0
0
0
0
0
0
251
0
0
0
0
0
0
0
1
0
0
2
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
2
1
0
1
16
6
1
0
0
0
0
0
0
0
1
5
0
47
4
47
0
1
0
0
0
0
0
0
1
0
0
1
0
0
1
0
0
0
0
1
0
0
1
0
1
0
0
3
2
2
1
0
2
0
0
0
1
2
1
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
1
0
0
0
0
1
0
0
0
0
0
1
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
3
0
0
0
0
0
0
1
0
0
2
3
0
0
0
0
0
0
0
0
0
2
1
0
0
0
0
0
0
0
0
1
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
2
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
0
0
0
0
1
0
2
0
0
1
0
0
0
0
0
0
0
1
0
0
2
0
0
1
0
0
0
0
0
0
0
0
0
0
0
6
0
0
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
70
0
0
0
0
0
0
0
0
1
0
1
0
3
1
0
0
0
0
0
0
2
0
2
0
0
1
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
125
0
0
2
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
1
0
0
1
35
2
0
0
0
1
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
4
0
0
0
2
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
0
0
0
0
0
0
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
1
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
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
0
0
0
0
1
0
0
0
3
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
1
1
0
0
0
0
0
0
1
1
0
0
0
0
0
0
1
125
0
1
0
1
0
1
0
35
0
0
9
1
130
2
0
0
1
126
3
253
44
8
1
19
0
1
6
5
1
1
0
2
0
0
0
1
1
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
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
125
0
0
0
0
0
0
0
1
2
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
24
0
0
0
0
0
0
0
2
0
5
0
1
0
0
0
0
0
1
1
0
0
0
0
3
1
12
3
2
5
0
4
1
0
0
0
0
0
0
0
4
3
8
0
0
0
0
0
0
0
2
0
2
0
1
1
0
0
0
1
0
0
0
0
0
0
1
3
3
3
1
0
1
0
0
0
0
0
1
2
0
4
0
4
3
1
1
0
0
0
2
1
2
0
1
3
1
7
6
5
0
0
4
3
1
0
0
0
0
0
0
1
0
0
0
4
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
2
2
0
0
0
2
3
1
1
0
0
0
1
0
0
0
0
0
0
0
2
0
2
0
0
2
0
0
0
0
0
0
0
0
2
4
0
1
2
0
0
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
2
1
0
0
4
1
1
0
0
0
4
0
0
0
0
2
126
2
0
0
0
4
4
0
0
0
0
0
0
0
0
4
0
0
0
1
0
1
0
0
0
1
1
1
0
0
0
125
0
0
0
0
0
1
0
0
0
125
0
0
0
0
0
0
0
0
0
4
0
0
1
1
0
0
0
1
2
1
2
0
0
0
4
1
0
0
0
0
0
0
1
0
2
2
0
1
3
1
12
2
1
0
0
0
0
0
0
0
1
0
2
1
0
0
0
0
0
5
2
0
0
0
0
8
0
2
1
3
0
0
0
0
1
0
0
0
0
0
0
1
0
0
1
0
0
1
0
2
0
0
2
1
2
1
0
1
0
0
0
2
0
0
0
1
0
5
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
1
0
0
0
0
1
2
35
0
0
3
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
125
125
4
1
0
1
4
0
0
0
0
0
1
0
14
0
0
0
0
0
2
0
0
0
1
47
7
6
47
3
4
2
0
0
0
0
2
95
47
0
0
2
95
0
0
0
0
0
0
0
0
1
2
0
1
1
0
1
0
0
1
1
0
1
0
0
0
1
3
0
0
0
0
0
3
0
1
14
4
0
0
1
0
0
125
0
0
125
0
5
2
2
0
2
3
0
0
0
0
0
1
0
4
0
0
1
0
0
0
0
0
0
0
0
0
0
3
0
125
0
0
0
0
0
0
0
0
0
0
0
47
0
0
0
0
0
0
0
2
7
2
4
6
49
3
1
0
48
4
1
46
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
2
2
0
0
0
1
0
0
0
0
0
0
3
0
0
0
0
0
0
0
35
126
0
2
0
0
0
1
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
125
3
0
0
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
0
1
2
0
0
0
1
1
0
0
0
0
0
0
125
2
0
2
1
0
0
2
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
1
2
0
2
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
2
2
1
0
1
0
0
0
0
0
0
0
0
0
0
3
4
0
2
0
0
0
1
0
0
0
0
2
1
186
0
0
0
0
1
0
0
1
0
0
0
0
0
1
0
1
0
0
0
1
1
1
0
0
14
139
0
0
1
0
6
0
2
0
1
1
2
0
0
0
35
0
0
0
0
0
3
2
4
0
0
1
0
0
0
9
1
0
1
0
1
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
1
0
0
125
0
0
0
0
128
1
0
0
0
0
1
0
9
0
0
324
0
1
184
1
0
1
98
139
2
185
0
0
0
0
0
0
0
1
2
0
0
0
0
2
1
0
1
0
0
0
1
2
0
0
0
2
0
0
0
5
2
0
1
0
0
0
0
1
0
3
1
0
0
0
2
0
1
0
125
2
0
0
0
0
0
0
0
1
2
0
0
1
0
0
0
0
1
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
125
1
3
0
0
0
0
0
0
0
3
0
0
0
1
0
2
0
3
3
1
4
1
3
2
4
0
0
0
0
8
5
17
1
10
1
0
0
11
2
0
1
0
1
0
1
0
0
0
8
16
8
6
2
0
0
6
7
2
0
0
1
4
1
1
1
1
2
0
0
1
0
0
2
4
0
2
2
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
1
0
0
2
0
0
0
0
0
9
0
0
0
35
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
126
0
0
2
0
125
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
48
0
0
0
0
19
0
1
0
0
0
0
1
0
0
92
2
8
19
11
2
1
0
2
0
0
0
0
0
2
0
0
0
1
3
0
0
0
0
0
1
2
0
0
0
0
0
37
0
0
0
0
0
1
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
2
0
0
1
0
0
1
2
0
0
0
0
0
0
0
0
0
0
0
0
125
0
0
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
0
1
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
1
7
1
0
0
0
2
1
0
5
0
0
0
0
1
0
0
0
0
1
0
1
2
0
0
1
1
0
2
0
0
3
0
2
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
1
0
1
0
0
0
0
1
0
1
0
0
0
0
1
0
0
3
8
1
0
1
0
1
0
0
0
0
0
0
1
0
0
1
0
0
0
2
0
125
0
0
0
0
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
0
0
0
0
0
0
0
0
0
0
1
0
4
1
1
0
3
0
0
0
0
0
0
0
0
2
0
4
0
0
0
0
1
0
0
2
0
0
0
1
0
2
0
0
4
1
0
0
0
1
0
48
0
0
0
2
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
1
0
0
0
0
46
0
0
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
0
0
0
0
2
0
0
7
2
1
0
0
0
0
0
0
0
0
0
1
1
0
3
2
5
3
4
7
5
0
0
0
1
1
125
0
0
0
0
2
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
36
0
0
0
0
0
0
0
6
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
125
0
0
0
0
3
0
0
0
0
2
0
0
0
0
0
0
0
0
0
35
0
0
0
1
1
0
0
0
0
0
1
1
4
1
1
0
1
4
0
0
0
0
0
0
4
2
0
0
0
2
0
0
0
0
0
0
0
2
0
0
0
0
0
2
0
0
0
0
0
2
4
3
6
5
3
2
1
1
1
0
0
0
1
2
0
1
0
0
0
0
0
0
0
6
3
4
0
4
1
2
0
0
0
1
1
0
0
1
0
0
1
0
1
0
0
0
2
3
0
0
0
2
1
0
1
1
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
2
1
2
0
0
0
0
0
0
0
0
0
2
0
0
1
0
2
0
1
1
1
2
1
0
2
2
2
1
2
0
0
1
0
0
0
0
2
2
0
0
0
0
0
0
3
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
1
0
3
0
7
0
1
0
2
2
1
0
0
2
0
3
3
0
0
0
0
1
1
0
1
0
1
0
8
2
0
2
2
0
7
2
0
1
1
1
5
0
0
0
0
2
0
0
0
0
0
0
0
2
0
0
3
0
1
0
1
2
1
0
4
0
0
2
0
0
0
0
1
0
0
0
0
2
0
0
1
1
1
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
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
35
1
0
0
1
1
0
0
1
2
6
0
0
1
1
0
0
3
10
2
8
5
2
3
3
0
3
11
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
2
1
0
3
0
1
0
1
1
1
1
0
0
0
1
1
0
0
1
0
3
3
0
0
1
0
0
0
0
3
1
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
8
2
0
0
0
5
1
1
0
0
0
0
0
0
0
9
3
0
0
0
46
0
46
0
0
0
0
0
0
1
0
46
0
0
3
1
1
0
1
0
2
0
0
0
0
2
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
2
0
0
4
3
0
6
1
0
0
35
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
0
1
0
0
0
0
0
9
35
1
1
0
2
0
0
1
0
0
16
1
0
18
0
0
0
0
1
0
2
23
1
9
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
25
11
7
1
1
6
1
0
9
8
7
0
0
1
0
0
0
0
0
2
0
0
0
0
0
6
1
0
0
0
0
0
1
1
0
0
0
2
0
1
0
0
0
0
0
0
0
1
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
1
1
0
1
0
0
0
2
0
0
6
0
0
2
0
1
1
125
0
0
2
0
0
0
0
0
1
0
0
2
0
0
1
0
0
0
0
0
0
2
1
0
0
0
0
0
0
0
0
0
0
4
0
0
0
0
0
0
0
0
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
4
1
9
6
6
1
0
2
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
5
0
0
0
0
0
1
0
1
0
0
0
0
4
9
0
0
0
0
0
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
0
4
0
0
3
0
0
3
0
0
0
0
0
0
0
0
49
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
1
1
0
0
0
1
0
0
0
0
0
0
0
0
2
0
0
0
1
0
0
0
0
0
0
1
0
5
3
7
0
3
0
0
3
0
0
0
3
0
0
0
0
2
6
0
0
0
0
0
0
125
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
3
0
0
0
35
0
0
0
0
0
1
0
0
0
0
0
0
0
0
7
0
1
0
2
0
0
0
0
0
0
0
0
0
0
39
0
0
0
0
0
0
3
0
0
0
0
1
0
0
0
0
0
0
0
1
0
9
1
0
4
1
48
0
1
0
1
2
0
47
1
125
0
0
0
0
1
47
0
463
0
0
26
194
1845
4210
1567
1
2
2
46
0
0
0
46
139
0
46
12
46
140
97
3
186
47
2
1
0
2
4
3
1
0
0
0
0
3
4
5
0
0
24
0
15
0
0
0
0
0
0
0
11
2
0
0
0
1
0
2
0
1
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
3
5
3
1
2
5
3
0
0
0
1
0
1
0
1
0
0
0
0
0
0
3
4
5
0
0
0
4
0
1
0
0
4
1
0
0
0
1
6
1
0
0
0
1
1
0
0
0
0
1
0
1
125
0
8
14
18
0
0
0
0
0
0
0
1
0
3
2
3
0
0
0
0
0
0
0
0
1
4
0
0
0
1
0
1
0
0
94
1
165
0
46
46
2
0
0
46
93
0
0
0
0
1
1
0
1
0
0
0
51
4
0
2
6
35
0
0
0
1
0
0
2
0
0
125
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
250
1
1
0
0
0
0
3
1
93
0
49
1
0
3
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
0
0
0
3
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
14
56
107
6
2
2
1
0
0
0
0
0
0
0
0
3
3
11
165
10
0
0
1
1
9
2
0
3
0
1
1
1
1
0
0
0
1
0
0
0
0
125
0
0
5
0
3
0
1
0
0
0
2
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
50
51
281
281
0
0
0
0
0
0
1
0
0
0
0
0
92
49
0
0
0
0
0
0
1
36
0
2
2
16
0
0
0
0
0
0
0
7
1
0
1
0
9
4
0
0
0
0
1
0
3
0
1
1
0
0
0
0
1
0
0
0
0
0
0
2
2
2
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
1
0
0
1
0
0
0
0
0
0
125
0
0
0
1
0
0
0
0
0
0
1
0
0
1
1
0
0
0
0
0
0
