0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
51
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
36
-
-
-
-
-
-
-
-
-
80
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
63
-
-
-
-
-
-
-
-
-
21
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
16
-
-
-
-
-
-
-
-
-
491
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
7
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
21
-
-
-
-
-
-
-
-
-
526
-
-
-
-
-
-
-
-
-
15
-
-
-
-
-
-
-
-
-
166
-
-
-
-
-
-
-
-
-
22
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
395
-
-
-
-
-
-
-
-
-
18
-
-
-
-
-
-
-
-
-
193
-
-
-
-
-
-
-
-
-
106
-
-
-
-
-
-
-
-
-
156
-
-
-
-
-
-
-
-
-
3.27K
5
-
-
-
-
-
-
-
-
-
39
-
-
-
-
-
-
-
-
-
21
-
-
-
-
-
-
-
-
-
73
-
-
-
-
-
-
-
-
-
375
-
-
-
-
-
-
-
-
-
622
-
-
-
-
-
-
-
-
-
193
-
-
-
-
-
-
-
-
-
342
-
-
-
-
-
-
-
-
-
247
-
-
-
-
-
-
-
-
-
3.30K
-
-
-
-
-
-
-
-
-
705
-
-
-
-
-
-
-
-
-
383
-
-
-
-
-
-
-
-
-
1.11K
-
-
-
-
-
-
-
-
-
190
-
-
-
-
-
-
-
-
-
2.07K
-
-
-
-
-
-
-
-
-
785
-
-
-
-
-
-
-
-
-
1.39K
-
-
-
-
-
-
-
-
-
449
-
-
-
-
-
-
-
-
-
269
-
-
-
-
-
-
-
-
-
4.33K
-
-
-
-
-
-
-
-
-
208
-
-
-
-
-
-
-
-
-
868
-
-
-
-
-
-
-
-
-
1.73K
-
-
-
-
-
-
-
-
-
89
-
-
-
-
-
-
-
-
-
4.63K
-
-
-
-
-
-
-
-
-
1.39K
-
-
-
-
-
-
-
-
-
555
-
-
-
-
-
-
-
-
-
324
-
-
-
-
-
-
-
-
-
110
-
-
-
-
-
-
-
-
-
1.99K
-
-
-
-
-
-
-
-
-
365
-
-
-
-
-
-
-
-
-
68
-
-
-
-
-
-
-
-
-
72
-
-
-
-
-
-
-
-
-
346
-
-
-
-
-
-
-
-
-
1.55K
-
-
-
-
-
-
-
-
-
436
-
-
-
-
-
-
-
-
-
57
-
-
-
-
-
-
-
-
-
144
-
-
-
-
-
-
-
-
-
210
-
-
-
-
-
-
-
-
-
1.16K
-
-
-
-
-
-
-
-
-
23
-
-
-
-
-
-
-
-
-
43
-
-
-
-
-
-
-
-
-
87
-
-
-
-
-
-
-
-
-
16
-
-
-
-
-
-
-
-
-
675
-
-
-
-
-
-
-
-
-
43
-
-
-
-
-
-
-
-
-
349
-
-
-
-
-
-
-
-
-
175
-
-
-
-
-
-
-
-
-
38
-
-
-
-
-
-
-
-
-
3.17K
-
-
-
-
-
-
-
-
-
44
-
-
-
-
-
-
-
-
-
162
-
-
-
-
-
-
-
-
-
831
-
-
-
-
-
-
-
-
-
657
-
-
-
-
-
-
-
-
-
152
-
-
-
-
-
-
-
-
-
38
-
-
-
-
-
-
-
-
-
263
-
-
-
-
-
-
-
-
-
543
-
-
-
-
-
-
-
-
-
161
-
-
-
-
-
-
-
-
-
22
-
-
-
-
-
-
-
-
-
13
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
56
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
306
-
-
-
-
-
-
-
-
-
298
-
-
-
-
-
-
-
-
-
331
-
-
-
-
-
-
-
-
-
226
-
-
-
-
-
-
-
-
-
6.52K
-
-
-
-
-
-
-
-
-
185
-
-
-
-
-
-
-
-
-
250
-
-
-
-
-
-
-
-
-
537
-
-
-
-
-
-
-
-
-
208
-
-
-
-
-
-
-
-
-
2.78K
-
-
-
-
-
-
-
-
-
259
-
-
-
-
-
-
-
-
-
744
-
-
-
-
-
-
-
-
-
288
-
-
-
-
-
-
-
-
-
352
-
-
-
-
-
-
-
-
-
489
-
-
-
-
-
-
-
-
-
605
-
-
-
-
-
-
-
-
-
1.35K
-
-
-
-
-
-
-
-
-
133
-
-
-
-
-
-
-
-
-
103
-
-
-
-
-
-
-
-
-
628
-
-
-
-
-
-
-
-
-
69
-
-
-
-
-
-
-
-
-
632
-
-
-
-
-
-
-
-
-
19
-
-
-
-
-
-
-
-
-
12
-
-
-
-
-
-
-
-
-
134
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
354
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
50
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0