0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
41
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
14
-
-
-
-
-
-
-
-
-
25
-
-
-
-
-
-
-
-
-
26
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
25
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
108
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
180
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
484
-
-
-
-
-
-
-
-
-
7
-
-
-
-
-
-
-
-
-
12
-
-
-
-
-
-
-
-
-
9
-
-
-
-
-
-
-
-
-
907
-
-
-
-
-
-
-
-
-
225
-
-
-
-
-
-
-
-
-
370
-
-
-
-
-
-
-
-
-
75
-
-
-
-
-
-
-
-
-
2.07K
-
-
-
-
-
-
-
-
-
106
-
-
-
-
-
-
-
-
-
476
-
-
-
-
-
-
-
-
-
93
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
201
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
20
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
16
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
43
-
-
-
-
-
-
-
-
-
68
-
-
-
-
-
-
-
-
-
1.02K
-
-
-
-
-
-
-
-
-
67
-
-
-
-
-
-
-
-
-
132
-
-
-
-
-
-
-
-
-
1.15K
-
-
-
-
-
-
-
-
-
465
-
-
-
-
-
-
-
-
-
883
-
-
-
-
-
-
-
-
-
2.03K
-
-
-
-
-
-
-
-
-
582
-
-
-
-
-
-
-
-
-
176
-
-
-
-
-
-
-
-
-
1.26K
-
-
-
-
-
-
-
-
-
51
-
-
-
-
-
-
-
-
-
38
-
-
-
-
-
-
-
-
-
226
-
-
-
-
-
-
-
-
-
1.35K
-
-
-
-
-
-
-
-
-
37
-
-
-
-
-
-
-
-
-
72
-
-
-
-
-
-
-
-
-
69
-
-
-
-
-
-
-
-
-
1.08K
-
-
-
-
-
-
-
-
-
484
-
-
-
-
-
-
-
-
-
312
-
-
-
-
-
-
-
-
-
54
-
-
-
-
-
-
-
-
-
3.08K
-
-
-
-
-
-
-
-
-
234
-
-
-
-
-
-
-
-
-
506
-
-
-
-
-
-
-
-
-
416
1.69K
-
-
-
-
-
-
-
-
-
1.60K
-
-
-
-
-
-
-
-
-
1.07K
-
-
-
-
-
-
-
-
-
674
-
-
-
-
-
-
-
-
-
2.93K
-
-
-
-
-
-
-
-
-
1.99K
-
-
-
-
-
-
-
-
-
6.12K
-
-
-
-
-
-
-
-
-
994
-
-
-
-
-
-
-
-
-
4.99K
-
-
-
-
-
-
-
-
-
1.02K
-
-
-
-
-
-
-
-
-
3.17K
-
-
-
-
-
-
-
-
-
172
-
-
-
-
-
-
-
-
-
5.55K
-
-
-
-
-
-
-
-
-
2.07K
-
-
-
-
-
-
-
-
-
34
-
-
-
-
-
-
-
-
-
2.84K
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
559
-
-
-
-
-
-
-
-
-
242
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
434
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1.00K
-
-
-
-
-
-
-
-
-
428
-
-
-
-
-
-
-
-
-
548
-
-
-
-
-
-
-
-
-
28
-
-
-
-
-
-
-
-
-
36
-
-
-
-
-
-
-
-
-
18
-
-
-
-
-
-
-
-
-
27
-
-
-
-
-
-
-
-
-
21
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
16
-
-
-
-
-
-
-
-
-
35
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
3.03K
-
-
-
-
-
-
-
-
-
405
-
-
-
-
-
-
-
-
-
230
-
-
-
-
-
-
-
-
-
54
-
-
-
-
-
-
-
-
-
310
-
-
-
-
-
-
-
-
-
50
-
-
-
-
-
-
-
-
-
171
-
-
-
-
-
-
-
-
-
52
-
-
-
-
-
-
-
-
-
42
-
-
-
-
-
-
-
-
-
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