0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
15
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
18
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
28
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
51
-
-
-
-
-
-
-
-
-
252
-
-
-
-
-
-
-
-
-
217
-
-
-
-
-
-
-
-
-
80
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
19
-
-
-
-
-
-
-
-
-
14
-
-
-
-
-
-
-
-
-
65
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
14
-
-
-
-
-
-
-
-
-
100
-
-
-
-
-
-
-
-
-
136
-
-
-
-
-
-
-
-
-
43
62
-
-
-
-
-
-
-
-
-
57
-
-
-
-
-
-
-
-
-
201
-
-
-
-
-
-
-
-
-
305
-
-
-
-
-
-
-
-
-
267
-
-
-
-
-
-
-
-
-
65
-
-
-
-
-
-
-
-
-
488
-
-
-
-
-
-
-
-
-
118
-
-
-
-
-
-
-
-
-
68
-
-
-
-
-
-
-
-
-
82
-
-
-
-
-
-
-
-
-
198
-
-
-
-
-
-
-
-
-
30
-
-
-
-
-
-
-
-
-
17
-
-
-
-
-
-
-
-
-
38
-
-
-
-
-
-
-
-
-
39
-
-
-
-
-
-
-
-
-
403
-
-
-
-
-
-
-
-
-
250
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
169
-
-
-
-
-
-
-
-
-
167
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
92
-
-
-
-
-
-
-
-
-
119
-
-
-
-
-
-
-
-
-
110
-
-
-
-
-
-
-
-
-
94
-
-
-
-
-
-
-
-
-
36
-
-
-
-
-
-
-
-
-
228
-
-
-
-
-
-
-
-
-
276
-
-
-
-
-
-
-
-
-
26
-
-
-
-
-
-
-
-
-
345
-
-
-
-
-
-
-
-
-
208
-
-
-
-
-
-
-
-
-
309
-
-
-
-
-
-
-
-
-
30
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
245
-
-
-
-
-
-
-
-
-
74
-
-
-
-
-
-
-
-
-
273
-
-
-
-
-
-
-
-
-
184
-
-
-
-
-
-
-
-
-
102
-
-
-
-
-
-
-
-
-
140
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
21
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
26
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0