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
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
19
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
22
-
-
-
-
-
-
-
-
-
30
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
8
-
-
-
-
-
-
-
-
-
37
-
-
-
-
-
-
-
-
-
14
-
-
-
-
-
-
-
-
-
169
-
-
-
-
-
-
-
-
-
112
-
-
-
-
-
-
-
-
-
82
-
-
-
-
-
-
-
-
-
118
-
-
-
-
-
-
-
-
-
124
-
-
-
-
-
-
-
-
-
288
-
-
-
-
-
-
-
-
-
70
-
-
-
-
-
-
-
-
-
213
-
-
-
-
-
-
-
-
-
303
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
16
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
8
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
12
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
31
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
8
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
54
-
-
-
-
-
-
-
-
-
11
-
-
-
-
-
-
-
-
-
15
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
22
-
-
-
-
-
-
-
-
-
257
-
-
-
-
-
-
-
-
-
222
-
-
-
-
-
-
-
-
-
191
-
-
-
-
-
-
-
-
-
80
-
-
-
-
-
-
-
-
-
373
-
-
-
-
-
-
-
-
-
106
-
-
-
-
-
-
-
-
-
19
-
-
-
-
-
-
-
-
-
87
-
-
-
-
-
-
-
-
-
15
-
-
-
-
-
-
-
-
-
3.65K
-
-
-
-
-
-
-
-
-
530
-
-
-
-
-
-
-
-
-
1.48K
-
-
-
-
-
-
-
-
-
144
-
-
-
-
-
-
-
-
-
268
-
-
-
-
-
-
-
-
-
36
-
-
-
-
-
-
-
-
-
266
-
-
-
-
-
-
-
-
-
58
-
-
-
-
-
-
-
-
-
220
-
-
-
-
-
-
-
-
-
113