0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
7
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
9
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
7
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
142
-
-
-
-
-
-
-
-
-
33
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
27
-
-
-
-
-
-
-
-
-
13
-
-
-
-
-
-
-
-
-
75
-
-
-
-
-
-
-
-
-
31
-
-
-
-
-
-
-
-
-
73
-
-
-
-
-
-
-
-
-
364
-
-
-
-
-
-
-
-
-
46
-
-
-
-
-
-
-
-
-
168
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
21
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
30
-
-
-
-
-
-
-
-
-
16
-
-
-
-
-
-
-
-
-
9
-
-
-
-
-
-
-
-
-
27
-
-
-
-
-
-
-
-
-
38
-
-
-
-
-
-
-
-
-
9
-
-
-
-
-
-
-
-
-
19
-
-
-
-
-
-
-
-
-
9
-
-
-
-
-
-
-
-
-
31
-
-
-
-
-
-
-
-
-
25
-
-
-
-
-
-
-
-
-
69
-
-
-
-
-
-
-
-
-
15
-
-
-
-
-
-
-
-
-
7
-
-
-
-
-
-
-
-
-
100
-
-
-
-
-
-
-
-
-
68
-
-
-
-
-
-
-
-
-
40
-
-
-
-
-
-
-
-
-
60
-
-
-
-
-
-
-
-
-
18
-
-
-
-
-
-
-
-
-
42
-
-
-
-
-
-
-
-
-
59
-
-
-
-
-
-
-
-
-
64
-
-
-
-
-
-
-
-
-
332
-
-
-
-
-
-
-
-
-
311
-
-
-
-
-
-
-
-
-
106
-
-
-
-
-
-
-
-
-
244
-
-
-
-
-
-
-
-
-
209
-
-
-
-
-
-
-
-
-
1111
-
-
-
-
-
-
-
-
-
273
-
-
-
-
-
-
-
-
-
198
-
-
-
-
-
-
-
-
-
243
-
-
-
-
-
-
-
-
-
155
-
-
-
-
-
-
-
-
-
566
-
-
-
-
-
-
-
-
-
147
-
-
-
-
-
-
-
-
-
321
-
-
-
-
-
-
-
-
-
713
-
-
-
-
-
-
-
-
-
276
-
-
-
-
-
-
-
-
-
452
189
-
-
-
-
-
-
-
-
-
231
-
-
-
-
-
-
-
-
-
173
-
-
-
-
-
-
-
-
-
118
-
-
-
-
-
-
-
-
-
35
-
-
-
-
-
-
-
-
-
112
-
-
-
-
-
-
-
-
-
87
-
-
-
-
-
-
-
-
-
277
-
-
-
-
-
-
-
-
-
56
-
-
-
-
-
-
-
-
-
191
-
-
-
-
-
-
-
-
-
31
-
-
-
-
-
-
-
-
-
217
-
-
-
-
-
-
-
-
-
89
-
-
-
-
-
-
-
-
-
154
-
-
-
-
-
-
-
-
-
128
-
-
-
-
-
-
-
-
-
2041
-
-
-
-
-
-
-
-
-
90
-
-
-
-
-
-
-
-
-
339
-
-
-
-
-
-
-
-
-
131
-
-
-
-
-
-
-
-
-
324
-
-
-
-
-
-
-
-
-
115
-
-
-
-
-
-
-
-
-
91
-
-
-
-
-
-
-
-
-
510
-
-
-
-
-
-
-
-
-
141
-
-
-
-
-
-
-
-
-
154
-
-
-
-
-
-
-
-
-
52
-
-
-
-
-
-
-
-
-
238
-
-
-
-
-
-
-
-
-
40
-
-
-
-
-
-
-
-
-
325
-
-
-
-
-
-
-
-
-
111
-
-
-
-
-
-
-
-
-
146
-
-
-
-
-
-
-
-
-
98
-
-
-
-
-
-
-
-
-
168
-
-
-
-
-
-
-
-
-
38
-
-
-
-
-
-
-
-
-
172
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
40
-
-
-
-
-
-
-
-
-
12
-
-
-
-
-
-
-
-
-
643
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
130
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
117
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
110
-
-
-
-
-
-
-
-
-
56
-
-
-
-
-
-
-
-
-
216
-
-
-
-
-
-
-
-
-
217
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
156
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
383
-
-
-
-
-
-
-
-
-
441
-
-
-
-
-
-
-
-
-
452
-
-
-
-
-
-
-
-
-
614
-
-
-
-
-
-
-
-
-
80
-
-
-
-
-
-
-
-
-
246
-
-
-
-
-
-
-
-
-
77
-
-
-
-
-
-
-
-
-
689
-
-
-
-
-
-
-
-
-
55
-
-
-
-
-
-
-
-
-
158
-
-
-
-
-
-
-
-
-
49
-
-
-
-
-
-
-
-
-
243
-
-
-
-
-
-
-
-
-
15
-
-
-
-
-
-
-
-
-
41
-
-
-
-
-
-
-
-
-
32
-
-
-
-
-
-
-
-
-
74
-
-
-
-
-
-
-
-
-
9
-
-
-
-
-
-
-
-
-
11
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
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