0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
12
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
14
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
84
-
-
-
-
-
-
-
-
-
9
-
-
-
-
-
-
-
-
-
20
-
-
-
-
-
-
-
-
-
8
-
-
-
-
-
-
-
-
-
43
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
68
-
-
-
-
-
-
-
-
-
47
-
-
-
-
-
-
-
-
-
113
-
-
-
-
-
-
-
-
-
68
-
-
-
-
-
-
-
-
-
140
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
14
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
44
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
16
-
-
-
-
-
-
-
-
-
15
-
-
-
-
-
-
-
-
-
23
-
-
-
-
-
-
-
-
-
20
-
-
-
-
-
-
-
-
-
25
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
14
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
14
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
27
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
110
-
-
-
-
-
-
-
-
-
300
-
-
-
-
-
-
-
-
-
32
-
-
-
-
-
-
-
-
-
28
-
-
-
-
-
-
-
-
-
54
-
-
-
-
-
-
-
-
-
25
-
-
-
-
-
-
-
-
-
115
-
-
-
-
-
-
-
-
-
63
-
-
-
-
-
-
-
-
-
120
-
-
-
-
-
-
-
-
-
35
-
-
-
-
-
-
-
-
-
58
-
-
-
-
-
-
-
-
-
66
-
-
-
-
-
-
-
-
-
39
-
-
-
-
-
-
-
-
-
20
-
-
-
-
-
-
-
-
-
37