0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
20
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
11
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
8
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
15
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
22
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
22
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
8
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
12
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
36
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
9
-
-
-
-
-
-
-
-
-
14
-
-
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
-
-
41
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
31
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
250
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
35
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
16
-
-
-
-
-
-
-
-
-
248
-
-
-
-
-
-
-
-
-
87
-
-
-
-
-
-
-
-
-
8
-
-
-
-
-
-
-
-
-
55
-
-
-
-
-
-
-
-
-
29
-
-
-
-
-
-
-
-
-
118
-
-
-
-
-
-
-
-
-
23
-
-
-
-
-
-
-
-
-
72
-
-
-
-
-
-
-
-
-
74
-
-
-
-
-
-
-
-
-
88
-
-
-
-
-
-
-
-
-
29
-
-
-
-
-
-
-
-
-
132
-
-
-
-
-
-
-
-
-
108
-
-
-
-
-
-
-
-
-
36
-
-
-
-
-
-
-
-
-
164
-
-
-
-
-
-
-
-
-
413
-
-
-
-
-
-
-
-
-
180
-
-
-
-
-
-
-
-
-
439
-
-
-
-
-
-
-
-
-
166
-
-
-
-
-
-
-
-
-
277
-
-
-
-
-
-
-
-
-
181
-
-
-
-
-
-
-
-
-
235
-
-
-
-
-
-
-
-
-
112
-
-
-
-
-
-
-
-
-
942
-
-
-
-
-
-
-
-
-
292
-
-
-
-
-
-
-
-
-
742
-
-
-
-
-
-
-
-
-
252
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
25
-
-
-
-
-
-
-
-
-
35
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
20
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
217
-
-
-
-
-
-
-
-
-
220
-
-
-
-
-
-
-
-
-
809
-
-
-
-
-
-
-
-
-
2.56K
-
-
-
-
-
-
-
-
-
4.76K
-
-
-
-
-
-
-
-
-
326
-
-
-
-
-
-
-
-
-
3.73K
-
-
-
-
-
-
-
-
-
2.72K
-
-
-
-
-
-
-
-
-
4.65K
-
-
-
-
-
-
-
-
-
2.22K
-
-
-
-
-
-
-
-
-
995
-
-
-
-
-
-
-
-
-
1.24K
-
-
-
-
-
-
-
-
-
6.32K
-
-
-
-
-
-
-
-
-
5.09K
-
-
-
-
-
-
-
-
-
6.43K
-
-
-
-
-
-
-
-
-
1.43K
-
-
-
-
-
-
-
-
-
623
-
-
-
-
-
-
-
-
-
2.52K
-
-
-
-
-
-
-
-
-
1.26K
-
-
-
-
-
-
-
-
-
1.75K
-
-
-
-
-
-
-
-
-
799
-
-
-
-
-
-
-
-
-
1.45K
-
-
-
-
-
-
-
-
-
361
-
-
-
-
-
-
-
-
-
1.05K
-
-
-
-
-
-
-
-
-
2.62K
-
-
-
-
-
-
-
-
-
1.38K
-
-
-
-
-
-
-
-
-
759
-
-
-
-
-
-
-
-
-
911
-
-
-
-
-
-
-
-
-
300
-
-
-
-
-
-
-
-
-
385
-
-
-
-
-
-
-
-
-
459
-
-
-
-
-
-
-
-
-
84
-
-
-
-
-
-
-
-
-
906
-
-
-
-
-
-
-
-
-
120
-
-
-
-
-
-
-
-
-
448
-
-
-
-
-
-
-
-
-
525
-
-
-
-
-
-
-
-
-
314
-
-
-
-
-
-
-
-
-
339
-
-
-
-
-
-
-
-
-
834
-
-
-
-
-
-
-
-
-
84
-
-
-
-
-
-
-
-
-
28
-
-
-
-
-
-
-
-
-
512
-
-
-
-
-
-
-
-
-
273
-
-
-
-
-
-
-
-
-
24
-
-
-
-
-
-
-
-
-
114
-
-
-
-
-
-
-
-
-
23
-
-
-
-
-
-
-
-
-
1.49K
-
-
-
-
-
-
-
-
-
74
-
-
-
-
-
-
-
-
-
34
-
-
-
-
-
-
-
-
-
75
-
-
-
-
-
-
-
-
-
38
-
-
-
-
-
-
-
-
-
596
-
-
-
-
-
-
-
-
-
407
-
-
-
-
-
-
-
-
-
16
-
-
-
-
-
-
-
-
-
47
-
-
-
-
-
-
-
-
-
22
-
-
-
-
-
-
-
-
-
851
-
-
-
-
-
-
-
-
-
156
-
-
-
-
-
-
-
-
-
671
-
-
-
-
-
-
-
-
-
160
-
-
-
-
-
-
-
-
-
115
-
-
-
-
-
-
-
-
-
247
-
-
-
-
-
-
-
-
-
285
-
-
-
-
-
-
-
-
-
149
-
-
-
-
-
-
-
-
-
228
-
-
-
-
-
-
-
-
-
112
-
-
-
-
-
-
-
-
-
9.42K
-
-
-
-
-
-
-
-
-
233
-
-
-
-
-
-
-
-
-
263
-
-
-
-
-
-
-
-
-
306
-
-
-
-
-
-
-
-
-
2.93K
-
-
-
-
-
-
-
-
-
5.73K
-
-
-
-
-
-
-
-
-
992
-
-
-
-
-
-
-
-
-
161
-
-
-
-
-
-
-
-
-
3.27K
-
-
-
-
-
-
-
-
-
3.72K
-
-
-
-
-
-
-
-
-
7.11K
-
-
-
-
-
-
-
-
-
2.19K
-
-
-
-
-
-
-
-
-
944
-
-
-
-
-
-
-
-
-
482
-
-
-
-
-
-
-
-
-
1.03K
-
-
-
-
-
-
-
-
-
2.57K
-
-
-
-
-
-
-
-
-
619
-
-
-
-
-
-
-
-
-
1.64K
-
-
-
-
-
-
-
-
-
560
-
-
-
-
-
-
-
-
-
311
-
-
-
-
-
-
-
-
-
3.10K
-
-
-
-
-
-
-
-
-
333
-
-
-
-
-
-
-
-
-
474
-
-
-
-
-
-
-
-
-
4.89K
-
-
-
-
-
-
-
-
-
627
-
-
-
-
-
-
-
-
-
5.40K
-
-
-
-
-
-
-
-
-
5.60K
-
-
-
-
-
-
-
-
-
1.36K
-
-
-
-
-
-
-
-
-
2.07K
-
-
-
-
-
-
-
-
-
440
-
-
-
-
-
-
-
-
-
2.50K
-
-
-
-
-
-
-
-
-
522
-
-
-
-
-
-
-
-
-
802
-
-
-
-
-
-
-
-
-
481
-
-
-
-
-
-
-
-
-
561
-
-
-
-
-
-
-
-
-
987
-
-
-
-
-
-
-
-
-
605
-
-
-
-
-
-
-
-
-
586
-
-
-
-
-
-
-
-
-
642
-
-
-
-
-
-
-
-
-
584
-
-
-
-
-
-
-
-
-
4.61K
-
-
-
-
-
-
-
-
-
624
-
-
-
-
-
-
-
-
-
955
-
-
-
-
-
-
-
-
-
523
-
-
-
-
-
-
-
-
-
704
-
-
-
-
-
-
-
-
-
920
-
-
-
-
-
-
-
-
-
1.28K
-
-
-
-
-
-
-
-
-
477
-
-
-
-
-
-
-
-
-
474
-
-
-
-
-
-
-
-
-
526
-
-
-
-
-
-
-
-
-
1.23K
-
-
-
-
-
-
-
-
-
391
794
-
-
-
-
-
-
-
-
-
364
-
-
-
-
-
-
-
-
-
895
-
-
-
-
-
-
-
-
-
1.43K
-
-
-
-
-
-
-
-
-
719
-
-
-
-
-
-
-
-
-
1.49K
-
-
-
-
-
-
-
-
-
1.11K
-
-
-
-
-
-
-
-
-
563
-
-
-
-
-
-
-
-
-
3.04K
-
-
-
-
-
-
-
-
-
556
-
-
-
-
-
-
-
-
-
1.51K
-
-
-
-
-
-
-
-
-
664
-
-
-
-
-
-
-
-
-
1.63K
-
-
-
-
-
-
-
-
-
3.81K
-
-
-
-
-
-
-
-
-
1.44K
-
-
-
-
-
-
-
-
-
364
-
-
-
-
-
-
-
-
-
949
-
-
-
-
-
-
-
-
-
533
-
-
-
-
-
-
-
-
-
6.31K
-
-
-
-
-
-
-
-
-
538
-
-
-
-
-
-
-
-
-
2.27K
-
-
-
-
-
-
-
-
-
8.73K
-
-
-
-
-
-
-
-
-
926
-
-
-
-
-
-
-
-
-
2.85K
-
-
-
-
-
-
-
-
-
416
-
-
-
-
-
-
-
-
-
1.13K
-
-
-
-
-
-
-
-
-
752
-
-
-
-
-
-
-
-
-
402
-
-
-
-
-
-
-
-
-
4.37K
-
-
-
-
-
-
-
-
-
1.40K
-
-
-
-
-
-
-
-
-
612
-
-
-
-
-
-
-
-
-
5.10K
-
-
-
-
-
-
-
-
-
4.97K
-
-
-
-
-
-
-
-
-
6.87K
-
-
-
-
-
-
-
-
-
511
-
-
-
-
-
-
-
-
-
222
-
-
-
-
-
-
-
-
-
426
-
-
-
-
-
-
-
-
-
349
-
-
-
-
-
-
-
-
-
1.57K
-
-
-
-
-
-
-
-
-
246
-
-
-
-
-
-
-
-
-
744
-
-
-
-
-
-
-
-
-
71
-
-
-
-
-
-
-
-
-
404
-
-
-
-
-
-
-
-
-
224
-
-
-
-
-
-
-
-
-
224
-
-
-
-
-
-
-
-
-
384
-
-
-
-
-
-
-
-
-
2.67K
-
-
-
-
-
-
-
-
-
83
-
-
-
-
-
-
-
-
-
40
-
-
-
-
-
-
-
-
-
227
-
-
-
-
-
-
-
-
-
7
-
-
-
-
-
-
-
-
-
203
-
-
-
-
-
-
-
-
-
58
-
-
-
-
-
-
-
-
-
36
-
-
-
-
-
-
-
-
-
16
-
-
-
-
-
-
-
-
-
66
-
-
-
-
-
-
-
-
-
16
-
-
-
-
-
-
-
-
-
221
-
-
-
-
-
-
-
-
-
144
-
-
-
-
-
-
-
-
-
65
-
-
-
-
-
-
-
-
-
12
-
-
-
-
-
-
-
-
-
73
-
-
-
-
-
-
-
-
-
12
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
15
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
707
-
-
-
-
-
-
-
-
-
540
-
-
-
-
-
-
-
-
-
383
-
-
-
-
-
-
-
-
-
1.32K
-
-
-
-
-
-
-
-
-
270
-
-
-
-
-
-
-
-
-
1.87K
-
-
-
-
-
-
-
-
-
1.03K
-
-
-
-
-
-
-
-
-
677
-
-
-
-
-
-
-
-
-
1.43K
-
-
-
-
-
-
-
-
-
260
-
-
-
-
-
-
-
-
-
264
-
-
-
-
-
-
-
-
-
125
-
-
-
-
-
-
-
-
-
291
-
-
-
-
-
-
-
-
-
201
-
-
-
-
-
-
-
-
-
170
-
-
-
-
-
-
-
-
-
140
-
-
-
-
-
-
-
-
-
158
-
-
-
-
-
-
-
-
-
102
-
-
-
-
-
-
-
-
-
82
-
-
-
-
-
-
-
-
-
95
-
-
-
-
-
-
-
-
-
45
-
-
-
-
-
-
-
-
-
48
-
-
-
-
-
-
-
-
-
38
-
-
-
-
-
-
-
-
-
68
-
-
-
-
-
-
-
-
-
30
-
-
-
-
-
-
-
-
-
62
-
-
-
-
-
-
-
-
-
15
-
-
-
-
-
-
-
-
-
13
-
-
-
-
-
-
-
-
-
826
-
-
-
-
-
-
-
-
-
11
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
4
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
3
-
-
-
-
-
-
-
-
-
5
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
2
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
1
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0
-
-
-
-
-
-
-
-
-
0