1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
3824
661
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
74
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
none
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
---
none
---
false
---
0
0
0
0
0
0
65
1100
0
0
0
0
0
0
0
1
---
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
---
none
---
false
---
0
0
0
0
0
0
0
181
75
0
0
0
0
0
0
0
---
none
---
false
---
0
0
0
0
0
0
2089
12975
1965
0
0
0
0
0
0
2
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
23
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
51
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
126
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
20
326
58
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
---
none
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
none
---
false
0
0
0
0
0
0
2
559
76
0
0
0
0
0
0
1
---
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
---
false
0
0
0
0
0
0
2089
12794
1890
0
0
0
0
0
0
1
---
---
false
0
0
0
0
0
0
90
0
0
0
0
0
0
0
0
6
---
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
---
---
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
---
---
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
---
---
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
---
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
---
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
---
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
---
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
---
---
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
---
---
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
---
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
---
false
599
0
0
0
0
0
599
0
0
0
0
0
0
0
0
3
---
---
false
0
0
0
0
0
0
783
0
0
0
0
0
0
0
0
3
---
false
0
0
0
0
0
0
649
0
0
0
0
0
0
0
0
3
---
false
0
0
0
0
0
0
137
0
0
0
0
0
0
0
0
3
---
false
0
0
0
0
0
0
418
0
0
0
0
0
0
0
0
1
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
---
false
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
1
---
none
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
false
0
0
0
0
0
0
20
0
0
0
0
0
0
0
0
1
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
false
0
0
0
0
0
0
23
0
0
0
0
0
0
0
0
1
---
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
---
false
0
0
0
0
0
0
4133
4733
0
0
0
0
0
0
0
1
---
---
false
0
0
0
0
0
0
0
0
0
0
0
140
0
0
0
1
---
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
false
0
0
0
0
0
0
5845
0
0
0
0
0
0
0
0
1
---
false
0
0
0
0
0
0
6698
0
0
0
0
0
0
0
0
1
---
false
0
0
0
0
0
0
21825
0
0
0
0
0
0
0
0
1
false
0
0
0
0
0
0
535
0
0
0
0
0
0
0
0
1
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
0
0
0
0
0
0
326
0
0
0
0
0
0
0
0
1
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
150
50
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
false
---
3
0
0
0
0
0
3
0
0
0
0
0
0
0
0
1
false
---
150
0
0
0
0
0
150
0
0
0
0
0
0
0
0
1
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
0
0
10
0
0
0
0
0
8
0
0
0
0
70
0
1
false
0
0
29
0
0
0
0
0
29
0
0
0
0
5
0
1
false
0
0
1
0
0
0
0
0
1
0
0
0
0
1
0
1
---
none
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
0
0
1
0
0
0
0
0
1
0
0
0
2
1
0
1
false
0
0
0
4
0
0
0
0
0
0
0
0
0
0
0
1
false
0
0
1
0
0
0
0
0
1
0
0
0
0
1
0
1
false
0
0
45
0
0
0
0
0
0
0
0
0
0
45
0
1
false
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
1
---
none
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
none
false
0
0
2
0
0
0
0
0
2
0
0
0
0
0
0
1
false
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
false
---
5
10
3
0
0
0
0
0
0
0
0
0
0
4
0
0
false
5
0
0
3
0
0
0
0
2
3
0
0
0
0
0
1
---
none
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
0
0
1
0
0
0
0
0
1
0
0
0
2
1
0
1
---
none
---
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
false
---
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
1
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
1
false
0
0
1
1
0
0
0
0
1
1
0
0
2
1
0
1
false
0
0
1
0
0
0
0
0
1
0
0
0
0
1
0
1
false
0
0
1
1
0
0
0
0
1
1
0
0
0
1
0
1
false
0
0
4
4
0
0
0
0
4
4
0
0
0
0
0
1
false
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
false
0
0
5
10
0
0
0
0
5
10
0
0
0
10
0
1
false
0
0
1
4
0
0
0
0
1
4
0
0
5
1
0
1
false
0
0
0
20
0
0
0
0
0
20
0
0
0
0
0
1
false
0
0
1
1
0
0
0
0
1
1
0
0
0
0
0
1
false
0
0
0
1
0
0
0
0
0
1
0
0
2
1
0
1
false
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
1
none
false
0
0
26
0
0
0
0
0
0
0
0
0
0
0
0
1
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
0
0
2
0
0
0
0
0
2
0
0
0
0
0
0
1
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
1
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
1
false
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
1
false
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
1
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
0
0
2
0
0
0
0
0
2
0
0
0
2
2
0
1
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
---
2
0
0
0
0
0
2
0
0
0
0
0
0
0
0
1
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
none
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
false
---
50
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
false
---
8
0
0
0
0
0
8
0
0
0
0
0
0
0
0
1
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
---
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
---
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
---
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
false
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0