0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
11
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
51
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
20
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
36
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
55
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
32
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
15
-
-
-
-
-
-
-
-
-
8
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
44
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
133
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
15
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
20
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
11
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
114
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
15
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
529
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
396
-
-
-
-
-
-
-
-
-
48
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
11
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
110
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
29
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
90
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
542
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
267
-
-
-
-
-
-
-
-
-
17
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
21
-
-
-
-
-
-
-
-
-
22
-
-
-
-
-
-
-
-
-
24
-
-
-
-
-
-
-
-
-
36
-
-
-
-
-
-
-
-
-
25
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
60
-
-
-
-
-
-
-
-
-
95
-
-
-
-
-
-
-
-
-
76
-
-
-
-
-
-
-
-
-
160
-
-
-
-
-
-
-
-
-
122
-
-
-
-
-
-
-
-
-
144
-
-
-
-
-
-
-
-
-
328
3
-
-
-
-
-
-
-
-
-
62
-
-
-
-
-
-
-
-
-
32
-
-
-
-
-
-
-
-
-
262
-
-
-
-
-
-
-
-
-
86
-
-
-
-
-
-
-
-
-
46
-
-
-
-
-
-
-
-
-
53
-
-
-
-
-
-
-
-
-
255
-
-
-
-
-
-
-
-
-
292
-
-
-
-
-
-
-
-
-
264
-
-
-
-
-
-
-
-
-
382
-
-
-
-
-
-
-
-
-
496
-
-
-
-
-
-
-
-
-
492
-
-
-
-
-
-
-
-
-
1.27K
-
-
-
-
-
-
-
-
-
790
-
-
-
-
-
-
-
-
-
205
-
-
-
-
-
-
-
-
-
411
-
-
-
-
-
-
-
-
-
586
-
-
-
-
-
-
-
-
-
649
-
-
-
-
-
-
-
-
-
318
-
-
-
-
-
-
-
-
-
203
-
-
-
-
-
-
-
-
-
400
-
-
-
-
-
-
-
-
-
710
-
-
-
-
-
-
-
-
-
619
-
-
-
-
-
-
-
-
-
551
-
-
-
-
-
-
-
-
-
152
-
-
-
-
-
-
-
-
-
70
-
-
-
-
-
-
-
-
-
11
-
-
-
-
-
-
-
-
-
37
-
-
-
-
-
-
-
-
-
22
-
-
-
-
-
-
-
-
-
101
-
-
-
-
-
-
-
-
-
78
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
28
-
-
-
-
-
-
-
-
-
34
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
36
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
25
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
66
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
117
-
-
-
-
-
-
-
-
-
162
-
-
-
-
-
-
-
-
-
85
-
-
-
-
-
-
-
-
-
301
-
-
-
-
-
-
-
-
-
67
-
-
-
-
-
-
-
-
-
71
-
-
-
-
-
-
-
-
-
126
-
-
-
-
-
-
-
-
-
243
-
-
-
-
-
-
-
-
-
62
-
-
-
-
-
-
-
-
-
27
-
-
-
-
-
-
-
-
-
147
-
-
-
-
-
-
-
-
-
54
-
-
-
-
-
-
-
-
-
46
-
-
-
-
-
-
-
-
-
7
-
-
-
-
-
-
-
-
-
8
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
7
-
-
-
-
-
-
-
-
-
44
-
-
-
-
-
-
-
-
-
65
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
142
-
-
-
-
-
-
-
-
-
152
-
-
-
-
-
-
-
-
-
75
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
27
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
18
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
33
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0