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
-
-
-
-
-
-
-
-
-
11
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
40
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
143
-
-
-
-
-
-
-
-
-
85
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
60
-
-
-
-
-
-
-
-
-
36
-
-
-
-
-
-
-
-
-
42
-
-
-
-
-
-
-
-
-
92
-
-
-
-
-
-
-
-
-
229
-
-
-
-
-
-
-
-
-
455
-
-
-
-
-
-
-
-
-
190
-
-
-
-
-
-
-
-
-
158
-
-
-
-
-
-
-
-
-
214
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
15
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
26
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
15
-
-
-
-
-
-
-
-
-
32
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
28
-
-
-
-
-
-
-
-
-
12
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
109
-
-
-
-
-
-
-
-
-
7
-
-
-
-
-
-
-
-
-
95
-
-
-
-
-
-
-
-
-
43
-
-
-
-
-
-
-
-
-
45
-
-
-
-
-
-
-
-
-
25
-
-
-
-
-
-
-
-
-
47
-
-
-
-
-
-
-
-
-
131
-
-
-
-
-
-
-
-
-
12
-
-
-
-
-
-
-
-
-
55
-
-
-
-
-
-
-
-
-
106
-
-
-
-
-
-
-
-
-
200
-
-
-
-
-
-
-
-
-
303
-
-
-
-
-
-
-
-
-
348
-
-
-
-
-
-
-
-
-
109
-
-
-
-
-
-
-
-
-
79
-
-
-
-
-
-
-
-
-
140
-
-
-
-
-
-
-
-
-
159
-
-
-
-
-
-
-
-
-
27
-
-
-
-
-
-
-
-
-
143
-
-
-
-
-
-
-
-
-
25
488
-
-
-
-
-
-
-
-
-
407
-
-
-
-
-
-
-
-
-
38
-
-
-
-
-
-
-
-
-
133
-
-
-
-
-
-
-
-
-
120
-
-
-
-
-
-
-
-
-
21
-
-
-
-
-
-
-
-
-
169
-
-
-
-
-
-
-
-
-
55
-
-
-
-
-
-
-
-
-
28
-
-
-
-
-
-
-
-
-
62
-
-
-
-
-
-
-
-
-
46
-
-
-
-
-
-
-
-
-
431
-
-
-
-
-
-
-
-
-
37
-
-
-
-
-
-
-
-
-
28
-
-
-
-
-
-
-
-
-
8
-
-
-
-
-
-
-
-
-
42
-
-
-
-
-
-
-
-
-
293
-
-
-
-
-
-
-
-
-
19
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
23
-
-
-
-
-
-
-
-
-
157
-
-
-
-
-
-
-
-
-
89
-
-
-
-
-
-
-
-
-
23
-
-
-
-
-
-
-
-
-
39
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
17
-
-
-
-
-
-
-
-
-