0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
46
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
112
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
16
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
23
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
60
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
124
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
117
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
70
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
156
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
87
-
-
-
-
-
-
-
-
-
18
-
-
-
-
-
-
-
-
-
55
-
-
-
-
-
-
-
-
-
68
-
-
-
-
-
-
-
-
-
73
-
-
-
-
-
-
-
-
-
29
-
-
-
-
-
-
-
-
-
232
-
-
-
-
-
-
-
-
-
75
-
-
-
-
-
-
-
-
-
308
-
-
-
-
-
-
-
-
-
62
-
-
-
-
-
-
-
-
-
395
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
47
-
-
-
-
-
-
-
-
-
23
-
-
-
-
-
-
-
-
-
9
-
-
-
-
-
-
-
-
-
15
-
-
-
-
-
-
-
-
-
12
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
116
-
-
-
-
-
-
-
-
-
226
-
-
-
-
-
-
-
-
-
180
-
-
-
-
-
-
-
-
-
49
-
-
-
-
-
-
-
-
-
281
-
-
-
-
-
-
-
-
-
8
-
-
-
-
-
-
-
-
-
134
-
-
-
-
-
-
-
-
-
9
-
-
-
-
-
-
-
-
-
194
-
-
-
-
-
-
-
-
-
18
-
-
-
-
-
-
-
-
-
33
-
-
-
-
-
-
-
-
-
84
-
-
-
-
-
-
-
-
-
55
-
-
-
-
-
-
-
-
-
66
-
-
-
-
-
-
-
-
-
76
-
-
-
-
-
-
-
-
-
25
-
-
-
-
-
-
-
-
-
152
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
98
-
-
-
-
-
-
-
-
-
30
-
-
-
-
-
-
-
-
-
530
-
-
-
-
-
-
-
-
-
77
-
-
-
-
-
-
-
-
-
361
-
-
-
-
-
-
-
-
-
42
-
-
-
-
-
-
-
-
-
466
-
-
-
-
-
-
-
-
-
115
-
-
-
-
-
-
-
-
-
214
-
-
-
-
-
-
-
-
-
48
-
-
-
-
-
-
-
-
-
212
-
-
-
-
-
-
-
-
-
93
-
-
-
-
-
-
-
-
-
189
-
-
-
-
-
-
-
-
-
59
-
-
-
-
-
-
-
-
-
248