0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
69
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
8
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
352
-
-
-
-
-
-
-
-
-
50
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
41
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
23
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
8
-
-
-
-
-
-
-
-
-
45
-
-
-
-
-
-
-
-
-
8
-
-
-
-
-
-
-
-
-
51
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
16
-
-
-
-
-
-
-
-
-
11
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
151
-
-
-
-
-
-
-
-
-
35
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
3539
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
13
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
3675
-
-
-
-
-
-
-
-
-
1750
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
3500
-
-
-
-
-
-
-
-
-
729
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
2001
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2325
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1602
-
-
-
-
-
-
-
-
-
4160
-
-
-
-
-
-
-
-
-
7
-
-
-
-
-
-
-
-
-
1342
-
-
-
-
-
-
-
-
-
5502
-
-
-
-
-
-
-
-
-
15
-
-
-
-
-
-
-
-
-
282
-
-
-
-
-
-
-
-
-
4143
-
-
-
-
-
-
-
-
-
3020
-
-
-
-
-
-
-
-
-
6017
-
-
-
-
-
-
-
-
-
35
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
676
-
-
-
-
-
-
-
-
-
314
-
-
-
-
-
-
-
-
-
17
-
-
-
-
-
-
-
-
-
30
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
0