0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
29
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
11
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
8
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
8
-
-
-
-
-
-
-
-
-
33
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
8
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
160
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
9
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
33
-
-
-
-
-
-
-
-
-
20
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
11
-
-
-
-
-
-
-
-
-
7
-
-
-
-
-
-
-
-
-
14
-
-
-
-
-
-
-
-
-
42
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
9
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
11
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
25
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
23
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
12
-
-
-
-
-
-
-
-
-
21
-
-
-
-
-
-
-
-
-
17
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
68
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
35
-
-
-
-
-
-
-
-
-
12
-
-
-
-
-
-
-
-
-
41
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
30
-
-
-
-
-
-
-
-
-
7
-
-
-
-
-
-
-
-
-
200
-
-
-
-
-
-
-
-
-
67
-
-
-
-
-
-
-
-
-
233
-
-
-
-
-
-
-
-
-
57
-
-
-
-
-
-
-
-
-
465
-
-
-
-
-
-
-
-
-
138
-
-
-
-
-
-
-
-
-
88
-
-
-
-
-
-
-
-
-
78
-
-
-
-
-
-
-
-
-
93
-
-
-
-
-
-
-
-
-
311
-
-
-
-
-
-
-
-
-
43
-
-
-
-
-
-
-
-
-
150
-
-
-
-
-
-
-
-
-
91
-
-
-
-
-
-
-
-
-
126
-
-
-
-
-
-
-
-
-
229
-
-
-
-
-
-
-
-
-
203
-
-
-
-
-
-
-
-
-
223
-
-
-
-
-
-
-
-
-
190
-
-
-
-
-
-
-
-
-
199
-
-
-
-
-
-
-
-
-
518
-
-
-
-
-
-
-
-
-
131
-
-
-
-
-
-
-
-
-
115
-
-
-
-
-
-
-
-
-
277
-
-
-
-
-
-
-
-
-
125
-
-
-
-
-
-
-
-
-
541
-
-
-
-
-
-
-
-
-
365
-
-
-
-
-
-
-
-
-
748
-
-
-
-
-
-
-
-
-
784
-
-
-
-
-
-
-
-
-
901
-
-
-
-
-
-
-
-
-
811
-
-
-
-
-
-
-
-
-
1.21K
-
-
-
-
-
-
-
-
-
690
-
-
-
-
-
-
-
-
-
1.66K
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
27
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
111
-
-
-
-
-
-
-
-
-
112
-
-
-
-
-
-
-
-
-
18
-
-
-
-
-
-
-
-
-
56
-
-
-
-
-
-
-
-
-
21
-
-
-
-
-
-
-
-
-
964
-
-
-
-
-
-
-
-
-
2.45K
-
-
-
-
-
-
-
-
-
2.15K
-
-
-
-
-
-
-
-
-
134
-
-
-
-
-
-
-
-
-
5.08K
-
-
-
-
-
-
-
-
-
197
-
-
-
-
-
-
-
-
-
3.51K
-
-
-
-
-
-
-
-
-
6.67K
-
-
-
-
-
-
-
-
-
1.89K
-
-
-
-
-
-
-
-
-
777
-
-
-
-
-
-
-
-
-
11.03K
-
-
-
-
-
-
-
-
-
10.48K
-
-
-
-
-
-
-
-
-
4.41K
-
-
-
-
-
-
-
-
-
887
-
-
-
-
-
-
-
-
-
1.25K
-
-
-
-
-
-
-
-
-
2.57K
-
-
-
-
-
-
-
-
-
1.78K
-
-
-
-
-
-
-
-
-
3.11K
-
-
-
-
-
-
-
-
-
1.48K
-
-
-
-
-
-
-
-
-
2.10K
-
-
-
-
-
-
-
-
-
1.04K
-
-
-
-
-
-
-
-
-
2.23K
-
-
-
-
-
-
-
-
-
417
-
-
-
-
-
-
-
-
-
1.40K
-
-
-
-
-
-
-
-
-
668
-
-
-
-
-
-
-
-
-
2.01K
-
-
-
-
-
-
-
-
-
4.03K
-
-
-
-
-
-
-
-
-
804
-
-
-
-
-
-
-
-
-
129
-
-
-
-
-
-
-
-
-
3.62K
-
-
-
-
-
-
-
-
-
8
-
-
-
-
-
-
-
-
-
400
-
-
-
-
-
-
-
-
-
2.28K
-
-
-
-
-
-
-
-
-
692
-
-
-
-
-
-
-
-
-
947
-
-
-
-
-
-
-
-
-
936
-
-
-
-
-
-
-
-
-
431
-
-
-
-
-
-
-
-
-
558
-
-
-
-
-
-
-
-
-
1.38K
-
-
-
-
-
-
-
-
-
561
-
-
-
-
-
-
-
-
-
331
-
-
-
-
-
-
-
-
-
142
-
-
-
-
-
-
-
-
-
88
-
-
-
-
-
-
-
-
-
140
-
-
-
-
-
-
-
-
-
86
-
-
-
-
-
-
-
-
-
61
-
-
-
-
-
-
-
-
-
855
-
-
-
-
-
-
-
-
-
97
-
-
-
-
-
-
-
-
-
192
-
-
-
-
-
-
-
-
-
632
-
-
-
-
-
-
-
-
-
268
-
-
-
-
-
-
-
-
-
1.21K
-
-
-
-
-
-
-
-
-
262
-
-
-
-
-
-
-
-
-
163
-
-
-
-
-
-
-
-
-
397
-
-
-
-
-
-
-
-
-
249
-
-
-
-
-
-
-
-
-
1.66K
-
-
-
-
-
-
-
-
-
377
-
-
-
-
-
-
-
-
-
147
-
-
-
-
-
-
-
-
-
160
-
-
-
-
-
-
-
-
-
233
-
-
-
-
-
-
-
-
-
283
-
-
-
-
-
-
-
-
-
81
-
-
-
-
-
-
-
-
-
135
-
-
-
-
-
-
-
-
-
87
-
-
-
-
-
-
-
-
-
160
-
-
-
-
-
-
-
-
-
1.84K
-
-
-
-
-
-
-
-
-
38
-
-
-
-
-
-
-
-
-
2.17K
-
-
-
-
-
-
-
-
-
174
-
-
-
-
-
-
-
-
-
436
-
-
-
-
-
-
-
-
-
631
-
-
-
-
-
-
-
-
-
665
-
-
-
-
-
-
-
-
-
257
-
-
-
-
-
-
-
-
-
379
-
-
-
-
-
-
-
-
-
443
-
-
-
-
-
-
-
-
-
4.72K
-
-
-
-
-
-
-
-
-
570
-
-
-
-
-
-
-
-
-
458
-
-
-
-
-
-
-
-
-
544
-
-
-
-
-
-
-
-
-
354
-
-
-
-
-
-
-
-
-
1.91K
-
-
-
-
-
-
-
-
-
864
-
-
-
-
-
-
-
-
-
713
-
-
-
-
-
-
-
-
-
249
-
-
-
-
-
-
-
-
-
363
-
-
-
-
-
-
-
-
-
2.04K
-
-
-
-
-
-
-
-
-
615
-
-
-
-
-
-
-
-
-
1.38K
-
-
-
-
-
-
-
-
-
1.16K
-
-
-
-
-
-
-
-
-
860
-
-
-
-
-
-
-
-
-
1.88K
-
-
-
-
-
-
-
-
-
1.55K
-
-
-
-
-
-
-
-
-
2.08K
-
-
-
-
-
-
-
-
-
323
-
-
-
-
-
-
-
-
-
478
-
-
-
-
-
-
-
-
-
4.06K
-
-
-
-
-
-
-
-
-
793
-
-
-
-
-
-
-
-
-
971
-
-
-
-
-
-
-
-
-
3.89K
-
-
-
-
-
-
-
-
-
1.18K
-
-
-
-
-
-
-
-
-
1.60K
-
-
-
-
-
-
-
-
-
1.34K
-
-
-
-
-
-
-
-
-
1.44K
-
-
-
-
-
-
-
-
-
1.20K
-
-
-
-
-
-
-
-
-
1.50K
-
-
-
-
-
-
-
-
-
2.68K
-
-
-
-
-
-
-
-
-
2.98K
-
-
-
-
-
-
-
-
-
1.87K
-
-
-
-
-
-
-
-
-
1.75K
-
-
-
-
-
-
-
-
-
1.74K
-
-
-
-
-
-
-
-
-
2.60K
-
-
-
-
-
-
-
-
-
2.08K
-
-
-
-
-
-
-
-
-
1.33K
-
-
-
-
-
-
-
-
-
2.20K
-
-
-
-
-
-
-
-
-
1.21K
-
-
-
-
-
-
-
-
-
3.02K
-
-
-
-
-
-
-
-
-
1.37K
-
-
-
-
-
-
-
-
-
2.25K
-
-
-
-
-
-
-
-
-
2.41K
-
-
-
-
-
-
-
-
-
1.44K
-
-
-
-
-
-
-
-
-
984
-
-
-
-
-
-
-
-
-
1.36K
-
-
-
-
-
-
-
-
-
725
-
-
-
-
-
-
-
-
-
2.50K
1.97K
-
-
-
-
-
-
-
-
-
2.33K
-
-
-
-
-
-
-
-
-
1.88K
-
-
-
-
-
-
-
-
-
1.98K
-
-
-
-
-
-
-
-
-
1.90K
-
-
-
-
-
-
-
-
-
2.98K
-
-
-
-
-
-
-
-
-
2.65K
-
-
-
-
-
-
-
-
-
2.52K
-
-
-
-
-
-
-
-
-
2.38K
-
-
-
-
-
-
-
-
-
2.16K
-
-
-
-
-
-
-
-
-
4.54K
-
-
-
-
-
-
-
-
-
5.01K
-
-
-
-
-
-
-
-
-
2.67K
-
-
-
-
-
-
-
-
-
1.86K
-
-
-
-
-
-
-
-
-
2.66K
-
-
-
-
-
-
-
-
-
2.59K
-
-
-
-
-
-
-
-
-
1.36K
-
-
-
-
-
-
-
-
-
838
-
-
-
-
-
-
-
-
-
521
-
-
-
-
-
-
-
-
-
1.12K
-
-
-
-
-
-
-
-
-
1.53K
-
-
-
-
-
-
-
-
-
2.27K
-
-
-
-
-
-
-
-
-
684
-
-
-
-
-
-
-
-
-
1.13K
-
-
-
-
-
-
-
-
-
1.62K
-
-
-
-
-
-
-
-
-
292
-
-
-
-
-
-
-
-
-
4.81K
-
-
-
-
-
-
-
-
-
475
-
-
-
-
-
-
-
-
-
201
-
-
-
-
-
-
-
-
-
261
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
1.77K
-
-
-
-
-
-
-
-
-
10
-
-
-
-
-
-
-
-
-
143
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
27
-
-
-
-
-
-
-
-
-
2.63K
-
-
-
-
-
-
-
-
-
13
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
1.65K
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
340
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
80
-
-
-
-
-
-
-
-
-
17
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
401
-
-
-
-
-
-
-
-
-
53
-
-
-
-
-
-
-
-
-
200
-
-
-
-
-
-
-
-
-
200
-
-
-
-
-
-
-
-
-
69
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
16
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
26
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
1.20K
-
-
-
-
-
-
-
-
-
931
-
-
-
-
-
-
-
-
-
278
-
-
-
-
-
-
-
-
-
316
-
-
-
-
-
-
-
-
-
450
-
-
-
-
-
-
-
-
-
304
-
-
-
-
-
-
-
-
-
308
-
-
-
-
-
-
-
-
-
63
-
-
-
-
-
-
-
-
-
43
-
-
-
-
-
-
-
-
-
72
-
-
-
-
-
-
-
-
-
15
-
-
-
-
-
-
-
-
-
94
-
-
-
-
-
-
-
-
-
25
-
-
-
-
-
-
-
-
-
64
-
-
-
-
-
-
-
-
-
16
-
-
-
-
-
-
-
-
-
12
-
-
-
-
-
-
-
-
-
18
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
18
-
-
-
-
-
-
-
-
-
25
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
17
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
26
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
9
-
-
-
-
-
-
-
-
-
8
-
-
-
-
-
-
-
-
-
7
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
21
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
8
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
16
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0