0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
8
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
15
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
20
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
9
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
26
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
12
-
-
-
-
-
-
-
-
-
58
-
-
-
-
-
-
-
-
-
21
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
129
-
-
-
-
-
-
-
-
-
371
-
-
-
-
-
-
-
-
-
680
-
-
-
-
-
-
-
-
-
67
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
15
-
-
-
-
-
-
-
-
-
22
-
-
-
-
-
-
-
-
-
31
-
-
-
-
-
-
-
-
-
38
-
-
-
-
-
-
-
-
-
43
-
-
-
-
-
-
-
-
-
110
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
119
-
-
-
-
-
-
-
-
-
970
-
-
-
-
-
-
-
-
-
151
-
-
-
-
-
-
-
-
-
93
-
-
-
-
-
-
-
-
-
22
-
-
-
-
-
-
-
-
-
44
-
-
-
-
-
-
-
-
-
144
-
-
-
-
-
-
-
-
-
17
-
-
-
-
-
-
-
-
-
151
-
-
-
-
-
-
-
-
-
50
-
-
-
-
-
-
-
-
-
23
-
-
-
-
-
-
-
-
-
184
-
-
-
-
-
-
-
-
-
8
-
-
-
-
-
-
-
-
-
28
-
-
-
-
-
-
-
-
-
9
-
-
-
-
-
-
-
-
-
182
-
-
-
-
-
-
-
-
-
43
-
-
-
-
-
-
-
-
-
22
-
-
-
-
-
-
-
-
-
27
-
-
-
-
-
-
-
-
-
407
-
-
-
-
-
-
-
-
-
36
80
-
-
-
-
-
-
-
-
-
23
-
-
-
-
-
-
-
-
-
554
-
-
-
-
-
-
-
-
-
17
-
-
-
-
-
-
-
-
-
23
-
-
-
-
-
-
-
-
-
21
-
-
-
-
-
-
-
-
-
275
-
-
-
-
-
-
-
-
-
25
-
-
-
-
-
-
-
-
-
58
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
334
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
14
-
-
-
-
-
-
-
-
-
224
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
272
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
147
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
290
-
-
-
-
-
-
-
-
-
132
-
-
-
-
-
-
-
-
-
315
-
-
-
-
-
-
-
-
-
14
-
-
-
-
-
-
-
-
-
68
-
-
-
-
-
-
-
-
-
8
-
-
-
-
-
-
-
-
-
67
-
-
-
-
-
-
-
-
-
142
-
-
-
-
-
-
-
-
-
94
-
-
-
-
-
-
-
-
-
153
-
-
-
-
-
-
-
-
-
59
-
-
-
-
-
-
-
-
-
22
-
-
-
-
-
-
-
-
-
156
-
-
-
-
-
-
-
-
-
39
-
-
-
-
-
-
-
-
-
228
-
-
-
-
-
-
-
-
-
271
-
-
-
-
-
-
-
-
-
45
-
-
-
-
-
-
-
-
-
177
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
53
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
291
-
-
-
-
-
-
-
-
-
64
-
-
-
-
-
-
-
-
-
258
-
-
-
-
-
-
-
-
-
19
-
-
-
-
-
-
-
-
-
13
-
-
-
-
-
-
-
-
-
14
-
-
-
-
-
-
-
-
-
113
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
154
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
25
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0