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
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
12
-
-
-
-
-
-
-
-
-
8
-
-
-
-
-
-
-
-
-
25
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
14
-
-
-
-
-
-
-
-
-
652
-
-
-
-
-
-
-
-
-
23
-
-
-
-
-
-
-
-
-
851
-
-
-
-
-
-
-
-
-
88
-
-
-
-
-
-
-
-
-
83
-
-
-
-
-
-
-
-
-
100
-
-
-
-
-
-
-
-
-
47
-
-
-
-
-
-
-
-
-
79
-
-
-
-
-
-
-
-
-
306
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
161
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
158
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
185
-
-
-
-
-
-
-
-
-
23
-
-
-
-
-
-
-
-
-
471
-
-
-
-
-
-
-
-
-
20
-
-
-
-
-
-
-
-
-
380
-
-
-
-
-
-
-
-
-
409
-
-
-
-
-
-
-
-
-
448
-
-
-
-
-
-
-
-
-
90
-
-
-
-
-
-
-
-
-
511
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
50
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
11
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
11
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
17
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
11
-
-
-
-
-
-
-
-
-
19
-
-
-
-
-
-
-
-
-
11
-
-
-
-
-
-
-
-
-
16
-
-
-
-
-
-
-
-
-
14
-
-
-
-
-
-
-
-
-
27
-
-
-
-
-
-
-
-
-
51
-
-
-
-
-
-
-
-
-
31
-
-
-
-
-
-
-
-
-
63
-
-
-
-
-
-
-
-
-
115
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
26
-
-
-
-
-
-
-
-
-
3.46K
-
-
-
-
-
-
-
-
-
2.54K
-
-
-
-
-
-
-
-
-
2.13K
-
-
-
-
-
-
-
-
-
57
-
-
-
-
-
-
-
-
-
33
-
-
-
-
-
-
-
-
-
78
-
-
-
-
-
-
-
-
-
59
-
-
-
-
-
-
-
-
-
102
-
-
-
-
-
-
-
-
-
47
-
-
-
-
-
-
-
-
-
538
-
-
-
-
-
-
-
-
-
64
-
-
-
-
-
-
-
-
-
901
-
-
-
-
-
-
-
-
-
102
-
-
-
-
-
-
-
-
-
224
-
-
-
-
-
-
-
-
-
286
-
-
-
-
-
-
-
-
-
113
-
-
-
-
-
-
-
-
-
251
-
-
-
-
-
-
-
-
-
368
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
160
-
-
-
-
-
-
-
-
-
7
-
-
-
-
-
-
-
-
-
367
-
-
-
-
-
-
-
-
-
5.17K
-
-
-
-
-
-
-
-
-
202
-
-
-
-
-
-
-
-
-
330
-
-
-
-
-
-
-
-
-
349
-
-
-
-
-
-
-
-
-
5.06K
-
-
-
-
-
-
-
-
-
88
-
-
-
-
-
-
-
-
-
79
-
-
-
-
-
-
-
-
-
132
-
-
-
-
-
-
-
-
-
91
-
-
-
-
-
-
-
-
-
5