0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
7
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
9
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
9
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
32
-
-
-
-
-
-
-
-
-
23
-
-
-
-
-
-
-
-
-
60
-
-
-
-
-
-
-
-
-
41
-
-
-
-
-
-
-
-
-
37
-
-
-
-
-
-
-
-
-
23
-
-
-
-
-
-
-
-
-
63
-
-
-
-
-
-
-
-
-
58
-
-
-
-
-
-
-
-
-
47
-
-
-
-
-
-
-
-
-
403
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
36
-
-
-
-
-
-
-
-
-
17
-
-
-
-
-
-
-
-
-
50
-
-
-
-
-
-
-
-
-
78
-
-
-
-
-
-
-
-
-
155
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
23
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
9
-
-
-
-
-
-
-
-
-
8
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
19
-
-
-
-
-
-
-
-
-
20
-
-
-
-
-
-
-
-
-
19
-
-
-
-
-
-
-
-
-
19
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
14
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
27
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
18
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
17
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
56
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
23
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
173
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
186
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
69
-
-
-
-
-
-
-
-
-
98
-
-
-
-
-
-
-
-
-
131
-
-
-
-
-
-
-
-
-
79
-
-
-
-
-
-
-
-
-
125
-
-
-
-
-
-
-
-
-
86
-
-
-
-
-
-
-
-
-
72
-
-
-
-
-
-
-
-
-
51
-
-
-
-
-
-
-
-
-
106
-
-
-
-
-
-
-
-
-
109
-
-
-
-
-
-
-
-
-
806
-
-
-
-
-
-
-
-
-
202
-
-
-
-
-
-
-
-
-
248
-
-
-
-
-
-
-
-
-
291
-
-
-
-
-
-
-
-
-
445
-
-
-
-
-
-
-
-
-
421
-
-
-
-
-
-
-
-
-
917
-
-
-
-
-
-
-
-
-
180
-
-
-
-
-
-
-
-
-
286
-
-
-
-
-
-
-
-
-
163
-
-
-
-
-
-
-
-
-
512
-
-
-
-
-
-
-
-
-
248
-
-
-
-
-
-
-
-
-
800
22
-
-
-
-
-
-
-
-
-
310
-
-
-
-
-
-
-
-
-
172
-
-
-
-
-
-
-
-
-
511
-
-
-
-
-
-
-
-
-
68
-
-
-
-
-
-
-
-
-
709
-
-
-
-
-
-
-
-
-
52
-
-
-
-
-
-
-
-
-
391
-
-
-
-
-
-
-
-
-
31
-
-
-
-
-
-
-
-
-
721
-
-
-
-
-
-
-
-
-
68
-
-
-
-
-
-
-
-
-
290
-
-
-
-
-
-
-
-
-
645
-
-
-
-
-
-
-
-
-
270
-
-
-
-
-
-
-
-
-
204
-
-
-
-
-
-
-
-
-
34
-
-
-
-
-
-
-
-
-
557
-
-
-
-
-
-
-
-
-
52
-
-
-
-
-
-
-
-
-
106
-
-
-
-
-
-
-
-
-
54
-
-
-
-
-
-
-
-
-
138
-
-
-
-
-
-
-
-
-
151
-
-
-
-
-
-
-
-
-
56
-
-
-
-
-
-
-
-
-
14
-
-
-
-
-
-
-
-
-
17
-
-
-
-
-
-
-
-
-
30
-
-
-
-
-
-
-
-
-
43
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
31
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
44
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
106
-
-
-
-
-
-
-
-
-
371
-
-
-
-
-
-
-
-
-
87
-
-
-
-
-
-
-
-
-
628
-
-
-
-
-
-
-
-
-
27
-
-
-
-
-
-
-
-
-
125
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
88
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
207
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
11
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0