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
-
-
-
-
-
-
-
-
-
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
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
16
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
12
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
27
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
45
-
-
-
-
-
-
-
-
-
18
-
-
-
-
-
-
-
-
-
31
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
16
-
-
-
-
-
-
-
-
-
23
-
-
-
-
-
-
-
-
-
713
-
-
-
-
-
-
-
-
-
545
-
-
-
-
-
-
-
-
-
481
-
-
-
-
-
-
-
-
-
718
-
-
-
-
-
-
-
-
-
2.48K
-
-
-
-
-
-
-
-
-
4.19K
-
-
-
-
-
-
-
-
-
1.47K
-
-
-
-
-
-
-
-
-
3.59K
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
20
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
20
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
32
-
-
-
-
-
-
-
-
-
95
-
-
-
-
-
-
-
-
-
91
-
-
-
-
-
-
-
-
-
86
-
-
-
-
-
-
-
-
-
252
-
-
-
-
-
-
-
-
-
188
-
-
-
-
-
-
-
-
-
169
-
-
-
-
-
-
-
-
-
42
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
20
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
50
-
-
-
-
-
-
-
-
-
46
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
32
-
-
-
-
-
-
-
-
-
74
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
51
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
82
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
27
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
15
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
141
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
25
-
-
-
-
-
-
-
-
-
51
-
-
-
-
-
-
-
-
-
256
-
-
-
-
-
-
-
-
-
27
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
152
-
-
-
-
-
-
-
-
-
179
-
-
-
-
-
-
-
-
-
12
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
6.91K
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
30
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
6.97K
-
-
-
-
-
-
-
-
-
33
-
-
-
-
-
-
-
-
-
12
-
-
-
-
-
-
-
-
-
14
-
-
-
-
-
-
-
-
-
16
-
-
-
-
-
-
-
-
-
15.33K
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
18
-
-
-
-
-
-
-
-
-
247
-
-
-
-
-
-
-
-
-
166
-
-
-
-
-
-
-
-
-
15.38K
-
-
-
-
-
-
-
-
-
54
-
-
-
-
-
-
-
-
-
834
-
-
-
-
-
-
-
-
-
245
-
-
-
-
-
-
-
-
-
429
-
-
-
-
-
-
-
-
-
620
-
-
-
-
-
-
-
-
-
81
-
-
-
-
-
-
-
-
-
1.52K
-
-
-
-
-
-
-
-
-
251
-
-
-
-
-
-
-
-
-
718
-
-
-
-
-
-
-
-
-
2.18K
-
-
-
-
-
-
-
-
-
622
-
-
-
-
-
-
-
-
-
2.54K
-
-
-
-
-
-
-
-
-
97
-
-
-
-
-
-
-
-
-
983
-
-
-
-
-
-
-
-
-
699
-
-
-
-
-
-
-
-
-
1.66K
-
-
-
-
-
-
-
-
-
417
-
-
-
-
-
-
-
-
-
1.73K
-
-
-
-
-
-
-
-
-
564
-
-
-
-
-
-
-
-
-
1.44K
-
-
-
-
-
-
-
-
-
455
-
-
-
-
-
-
-
-
-
1.12K
-
-
-
-
-
-
-
-
-
961
-
-
-
-
-
-
-
-
-
629
-
-
-
-
-
-
-
-
-
238
-
-
-
-
-
-
-
-
-
2.01K
-
-
-
-
-
-
-
-
-
660
-
-
-
-
-
-
-
-
-
1.34K
-
-
-
-
-
-
-
-
-
524
-
-
-
-
-
-
-
-
-
811
-
-
-
-
-
-
-
-
-
535
-
-
-
-
-
-
-
-
-
833
-
-
-
-
-
-
-
-
-
637
-
-
-
-
-
-
-
-
-
3.21K
-
-
-
-
-
-
-
-
-
476
-
-
-
-
-
-
-
-
-
528
-
-
-
-
-
-
-
-
-
195
-
-
-
-
-
-
-
-
-
894
-
-
-
-
-
-
-
-
-
1.55K
-
-
-
-
-
-
-
-
-
1.20K
-
-
-
-
-
-
-
-
-
948
825
-
-
-
-
-
-
-
-
-
146
-
-
-
-
-
-
-
-
-
344
-
-
-
-
-
-
-
-
-
347
-
-
-
-
-
-
-
-
-
6.36K
-
-
-
-
-
-
-
-
-
1.19K
-
-
-
-
-
-
-
-
-
328
-
-
-
-
-
-
-
-
-
495
-
-
-
-
-
-
-
-
-
884
-
-
-
-
-
-
-
-
-
1.74K
-
-
-
-
-
-
-
-
-
140
-
-
-
-
-
-
-
-
-
57
-
-
-
-
-
-
-
-
-
320
-
-
-
-
-
-
-
-
-
39
-
-
-
-
-
-
-
-
-
5.45K
-
-
-
-
-
-
-
-
-
67
-
-
-
-
-
-
-
-
-
116
-
-
-
-
-
-
-
-
-
39
-
-
-
-
-
-
-
-
-
679
-
-
-
-
-
-
-
-
-
1.32K
-
-
-
-
-
-
-
-
-
29
-
-
-
-
-
-
-
-
-
81
-
-
-
-
-
-
-
-
-
34
-
-
-
-
-
-
-
-
-
60
-
-
-
-
-
-
-
-
-
2.75K
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
522
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
69
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
50
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
352
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
18
-
-
-
-
-
-
-
-
-
30
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
21
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
568
-
-
-
-
-
-
-
-
-
30
-
-
-
-
-
-
-
-
-
69
-
-
-
-
-
-
-
-
-
84
-
-
-
-
-
-
-
-
-
491
-
-
-
-
-
-
-
-
-
22
-
-
-
-
-
-
-
-
-
36
-
-
-
-
-
-
-
-
-
40
-
-
-
-
-
-
-
-
-
47
-
-
-
-
-
-
-
-
-
77
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
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
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0