In [23]:
from __future__ import with_statement
matrixPath = 'run140/Abasis_test_N28.bin'
def file_byte_iterator(path):
"""given a path, return an iterator over the file
that lazily loads the file
"""
with open(path, 'rb') as file:
for chunk in file:
for byte in chunk:
yield byte
In [24]:
import binascii
file = open(matrixPath, "rb")
with file:
byte = file.read(1)
hexadecimal = binascii.hexlify(byte)
decimal = int(hexadecimal, 16)
binary = bin(decimal)[2:].zfill(8)
print byte
print("hex: %s, decimal: %s, binary: %s" % (hexadecimal, decimal, binary))
hex: 1c, decimal: 28, binary: 00011100
In [25]:
with open(matrixPath, "rb") as fin:
buf = fin.read()
bytes = map(ord, buf)
print bytes[:10]
[28, 0, 0, 0, 2, 0, 0, 0, 32, 0]
In [22]:
for byte in file_byte_iterator(matrixPath):
print(byte[:10])
(
@
�
�
*
@
�
�
(
@
�
?
*
@
�
?
,
@
�
�
,
@
�
?
.
@
�
�
.
@
�
?
0
@
�
�
0
@
�
?
1
@
�
�
1
@
�
?
2
@
�
�
2
@
�
?
l
�
�
{
@
k
�
4
+
�
\
@
�
�
/
7
�
s
@
�
l
�
�
I
b
@
�
�
v
�
�
"
@
�
�
5
b
�
L
@
d
T
@
�
A
�
Y
�
@
D
�
�
�
V
'
@
�
�
�
�
�
@
.
_
&
�
�
@
�
n
9
�
@
~
�
�
C
~
@
�
(
�
�
@
�
�
k
�
|
@
v
[
8
�
@
�
K
#
�
�
�
@
�
�
(
^
6
@
�
6
H
�
1
@
6
�
�
�
M
A
@
~
�
�
{
@
!
0
F
+
�
\
@
�
�
>
7
�
s
@
&
Z
�
�
I
b
@
�
�
�
�
"
@
�
q
,
b
�
L
@
�
�
"
d
T
@
�
H
�
Y
�
@
:
�
�
�
V
'
@
d
�
�
�
�
�
@
�
�
.
�
�
@
�
�
g
9
�
@
d
d
�
�
C
~
@
$
(
�
�
@
�
�
�
k
�
|
@
D
&
0
�
@
,
I
�
�
�
@
�
(
^
6
@
�
3
:
H
�
1
@
}
�
�
M
A
@
l
�
�
{
@
k
�
4
+
�
\
@
�
�
/
7
�
s
@
�
l
�
�
I
b
@
�
�
v
�
�
"
@
�
�
5
b
�
L
@
d
T
@
�
A
�
Y
�
@
D
�
�
�
V
'
@
�
�
�
�
�
@
.
_
&
�
�
@
�
n
9
�
@
~
�
�
C
~
@
�
(
�
�
@
�
�
k
�
|
@
v
[
8
�
@
�
K
#
�
�
�
@
�
�
(
^
6
@
�
6
H
�
1
@
6
�
�
�
M
A
@
~
�
�
{
@
!
0
F
+
�
\
@
�
�
>
7
�
s
@
&
Z
�
�
I
b
@
�
�
�
�
"
@
�
q
,
b
�
L
@
�
�
"
d
T
@
�
H
�
Y
�
@
:
�
�
�
V
'
@
d
�
�
�
�
�
@
�
�
.
�
�
@
�
�
g
9
�
@
d
d
�
�
C
~
@
$
(
�
�
@
�
�
�
k
�
|
@
D
&
0
�
@
,
I
�
�
�
@
�
(
^
6
@
�
3
:
H
�
1
@
}
�
�
M
A
@
�
�
�
�
V
�
?
�
�
f
�
�
�
?
:
@
W
�
�
�
�
?
�
q
�
�
�
�
@
�
P
e
�
�
@
�
Z
8
�
V
@
�
�
�
{
@
1
�
�
�
{
@
}
�
W
O
*
�
@
�
�
?
+
�
\
@
/
F
+
�
\
@
�
�
x
�
�
%
@
�
�
*
�
J
@
G
G
5
7
�
s
@
�
>
7
�
s
@
n
J
�
�
�
@
�
j
�
�
T
�
@
u
Z
�
�
I
b
@
�
�
I
b
@
�
:
�
�
B
o
@
�
�
J
�
,
�
@
8
�
u
�
_
�
@
�
�
h
�
v
�
@
l
�
�
�
�
@
�
|
�
�
"
@
�
�
�
"
@
6
�
�
�
�
�
@
X
�
�
�
�
�
@
f
�
<
�
[
@
�
�
�
�
�
@
�
/
b
�
L
@
�
d
T
@
n
�
"
d
T
@
�
�
a
E
�
m
@
�
�
�
/
�
�
@
�
H
�
Y
�
@
�
�
�
Y
�
@
p
�
�
�
V
'
@
�
�
�
�
V
'
@
�
_
�
.
@
B
:
�
T
@
�
�
y
�
�
@
�
�
�
�
�
�
@
�
�
�
�
�
@
�
/
*
}
=
@
�
�
+
�
�
@
�
.
�
�
@
�
�
g
9
�
@
<
�
o
9
�
@
�
x
j
@
�
�
�
C
~
@
6
c
�
�
C
~
@
N
�
c
�
�
@
�
P
�
�
�
'
@
�
�
�
A
D
@
�
j
�
h
@
B
�
�
@
�
'
�
�
@
�
�
�
<
�
@
�
R
x
�
f
�
@
�
�
k
�
|
@
\
�
�
k
�
|
@
�
K
�
0
�
@
�
-
�
p
�
@
$
�
�
�
|
r
@
^
�
�
c
�
@
P
&
0
�
@
R
�
3
�
@
0
�
�
�
�
5
@
�
!
;
�
t
P
@
�
�
�
�
|
@
T
I
�
�
�
@
�
�
�
�
�
@
�
(
^
6
@
O
(
^
6
@
�
�
<
�
O
@
�
&
�
�
s
@
M
�
�
7
@
5
�
8
H
�
1
@
U
3
:
H
�
1
@
�
Y
�
�
M
A
@
P
�
�
M
A
@
$
�
�
4
�
B
@
�
�
O
�
�
V
�
?
w
�
!
f
�
�
�
?
!
o
�
�
�
�
?
p
T
�
�
�
�
@
�
V
�
�
@
�
n
j
8
�
V
@
�
�
�
�
{
@
k
�
�
{
@
�
c
O
*
�
@
�
4
+
�
\
@
A
�
:
+
�
\
@
�
�
k
�
�
%
@
�
b
�
*
�
J
@
�
/
7
�
s
@
�
9
7
�
s
@
�
z
�
�
�
�
@
{
h
�
�
T
�
@
j
�
�
�
I
b
@
"
l
�
�
I
b
@
�
k
�
�
B
o
@
�
K
�
,
�
@
�
�
}
�
_
�
@
�
-
n
�
v
�
@
T
�
�
�
�
@
�
v
�
�
"
@
�
z
�
�
"
@
<
�
�
�
�
�
@
]
�
}
�
�
�
@
�
�
5
�
[
@
�
�
�
�
�
�
@
�
�
2
b
�
L
@
T
d
T
@
B
u
d
T
@
:
[
E
�
m
@
,
]
�
/
�
�
@
x
�
�
Y
�
@
B
A
�
Y
�
@
�
L
�
�
V
'
@
�
�
�
�
V
'
@
T
�
�
_
�
.
@
�
_
�
T
@
�
r
y
�
�
@
�
9
�
�
�
�
@
0
�
�
�
�
@
"
�
3
*
}
=
@
�
_
&
�
�
@
�
e
)
�
�
@
�
D
h
9
�
@
�
n
9
�
@
�
�
�
x
j
@
N
�
�
C
~
@
�
q
�
�
C
~
@
b
�
d
�
�
@
V
�
�
�
'
@
X
:
�
A
D
@
�
�
�
i
�
h
@
�
(
�
�
@
,
�
�
�
@
L
�
�
<
�
@
x
r
q
�
f
�
@
�
�
k
�
|
@
�
&
�
k
�
|
@
�
�
F
�
0
�
@
�
E
�
p
�
@
|
Y
�
�
|
r
@
�
E
�
�
c
�
@
<
�
4
�
@
�
Z
8
�
@
f
|
�
�
�
5
@
~
/
C
�
t
P
@
2
�
�
�
|
@
�
�
�
�
�
@
�
J
#
�
�
�
@
r
�
(
^
6
@
J
�
(
^
6
@
�
�
�
<
�
O
@
z
�
+
�
�
s
@
�
C
�
7
@
�
6
H
�
1
@
�
�
7
H
�
1
@
?
�
�
�
M
A
@
�
�
M
A
@
�
�
4
�
B
@
l
�
�
{
@
k
�
4
+
�
\
@
�
�
/
7
�
s
@
�
l
�
�
I
b
@
�
�
v
�
�
"
@
�
�
5
b
�
L
@
d
T
@
�
A
�
Y
�
@
D
�
�
�
V
'
@
�
�
�
�
�
@
.
_
&
�
�
@
�
n
9
�
@
~
�
�
C
~
@
�
(
�
�
@
�
�
k
�
|
@
v
[
8
�
@
�
K
#
�
�
�
@
�
�
(
^
6
@
�
6
H
�
1
@
6
�
�
�
M
A
@
~
�
�
{
@
!
0
F
+
�
\
@
�
�
>
7
�
s
@
&
Z
�
�
I
b
@
�
�
�
�
"
@
�
q
,
b
�
L
@
�
�
"
d
T
@
�
H
�
Y
�
@
:
�
�
�
V
'
@
d
�
�
�
�
�
@
�
�
.
�
�
@
�
�
g
9
�
@
d
d
�
�
C
~
@
$
(
�
�
@
�
�
�
k
�
|
@
D
&
0
�
@
,
I
�
�
�
@
�
(
^
6
@
�
3
:
H
�
1
@
}
�
�
M
A
@
l
�
�
{
@
k
�
4
+
�
\
@
�
�
/
7
�
s
@
�
l
�
�
I
b
@
�
�
v
�
�
"
@
�
�
5
b
�
L
@
d
T
@
�
A
�
Y
�
@
D
�
�
�
V
'
@
�
�
�
�
�
@
.
_
&
�
�
@
�
n
9
�
@
~
�
�
C
~
@
�
(
�
�
@
�
�
k
�
|
@
v
[
8
�
@
�
K
#
�
�
�
@
�
�
(
^
6
@
�
6
H
�
1
@
6
�
�
�
M
A
@
~
�
�
{
@
!
0
F
+
�
\
@
�
�
>
7
�
s
@
&
Z
�
�
I
b
@
�
�
�
�
"
@
�
q
,
b
�
L
@
�
�
"
d
T
@
�
H
�
Y
�
@
:
�
�
�
V
'
@
d
�
�
�
�
�
@
�
�
.
�
�
@
�
�
g
9
�
@
d
d
�
�
C
~
@
$
(
�
�
@
�
�
�
k
�
|
@
D
&
0
�
@
,
I
�
�
�
@
�
(
^
6
@
�
3
:
H
�
1
@
}
�
�
M
A
@
�
�
�
�
V
�
?
�
�
f
�
�
�
?
:
@
W
�
�
�
�
?
�
q
�
�
�
�
@
�
P
e
�
�
@
�
Z
8
�
V
@
�
�
�
{
@
1
�
�
�
{
@
}
�
W
O
*
�
@
�
�
?
+
�
\
@
/
F
+
�
\
@
�
�
x
�
�
%
@
�
�
*
�
J
@
G
G
5
7
�
s
@
�
>
7
�
s
@
n
J
�
�
�
@
�
j
�
�
T
�
@
u
Z
�
�
I
b
@
�
�
I
b
@
�
:
�
�
B
o
@
�
�
J
�
,
�
@
8
�
u
�
_
�
@
�
�
h
�
v
�
@
l
�
�
�
�
@
�
|
�
�
"
@
�
�
�
"
@
6
�
�
�
�
�
@
X
�
�
�
�
�
@
f
�
<
�
[
@
�
�
�
�
�
@
�
/
b
�
L
@
�
d
T
@
n
�
"
d
T
@
�
�
a
E
�
m
@
�
�
�
/
�
�
@
�
H
�
Y
�
@
�
�
�
Y
�
@
p
�
�
�
V
'
@
�
�
�
�
V
'
@
�
_
�
.
@
B
:
�
T
@
�
�
y
�
�
@
�
�
�
�
�
�
@
�
�
�
�
�
@
�
/
*
}
=
@
�
�
+
�
�
@
�
.
�
�
@
�
�
g
9
�
@
<
�
o
9
�
@
�
x
j
@
�
�
�
C
~
@
6
c
�
�
C
~
@
N
�
c
�
�
@
�
P
�
�
�
'
@
�
�
�
A
D
@
�
j
�
h
@
B
�
�
@
�
'
�
�
@
�
�
�
<
�
@
�
R
x
�
f
�
@
�
�
k
�
|
@
\
�
�
k
�
|
@
�
K
�
0
�
@
�
-
�
p
�
@
$
�
�
�
|
r
@
^
�
�
c
�
@
P
&
0
�
@
R
�
3
�
@
0
�
�
�
�
5
@
�
!
;
�
t
P
@
�
�
�
�
|
@
T
I
�
�
�
@
�
�
�
�
�
@
�
(
^
6
@
O
(
^
6
@
�
�
<
�
O
@
�
&
�
�
s
@
M
�
�
7
@
5
�
8
H
�
1
@
U
3
:
H
�
1
@
�
Y
�
�
M
A
@
P
�
�
M
A
@
$
�
�
4
�
B
@
�
�
O
�
�
V
�
?
w
�
!
f
�
�
�
?
!
o
�
�
�
�
?
p
T
�
�
�
�
@
�
V
�
�
@
�
n
j
8
�
V
@
�
�
�
�
{
@
k
�
�
{
@
�
c
O
*
�
@
�
4
+
�
\
@
A
�
:
+
�
\
@
�
�
k
�
�
%
@
�
b
�
*
�
J
@
�
/
7
�
s
@
�
9
7
�
s
@
�
z
�
�
�
�
@
{
h
�
�
T
�
@
j
�
�
�
I
b
@
"
l
�
�
I
b
@
�
k
�
�
B
o
@
�
K
�
,
�
@
�
�
}
�
_
�
@
�
-
n
�
v
�
@
T
�
�
�
�
@
�
v
�
�
"
@
�
z
�
�
"
@
<
�
�
�
�
�
@
]
�
}
�
�
�
@
�
�
5
�
[
@
�
�
�
�
�
�
@
�
�
2
b
�
L
@
T
d
T
@
B
u
d
T
@
:
[
E
�
m
@
,
]
�
/
�
�
@
x
�
�
Y
�
@
B
A
�
Y
�
@
�
L
�
�
V
'
@
�
�
�
�
V
'
@
T
�
�
_
�
.
@
�
_
�
T
@
�
r
y
�
�
@
�
9
�
�
�
�
@
0
�
�
�
�
@
"
�
3
*
}
=
@
�
_
&
�
�
@
�
e
)
�
�
@
�
D
h
9
�
@
�
n
9
�
@
�
�
�
x
j
@
N
�
�
C
~
@
�
q
�
�
C
~
@
b
�
d
�
�
@
V
�
�
�
'
@
X
:
�
A
D
@
�
�
�
i
�
h
@
�
(
�
�
@
,
�
�
�
@
L
�
�
<
�
@
x
r
q
�
f
�
@
�
�
k
�
|
@
�
&
�
k
�
|
@
�
�
F
�
0
�
@
�
E
�
p
�
@
|
Y
�
�
|
r
@
�
E
�
�
c
�
@
<
�
4
�
@
�
Z
8
�
@
f
|
�
�
�
5
@
~
/
C
�
t
P
@
2
�
�
�
|
@
�
�
�
�
�
@
�
J
#
�
�
�
@
r
�
(
^
6
@
J
�
(
^
6
@
�
�
�
<
�
O
@
z
�
+
�
�
s
@
�
C
�
7
@
�
6
H
�
1
@
�
�
7
H
�
1
@
?
�
�
�
M
A
@
�
�
M
A
@
�
�
4
�
B
@
�
�
�
�
V
�
?
�
�
f
�
�
�
?
:
@
W
�
�
�
�
?
�
q
�
�
�
�
@
�
P
e
�
�
@
�
Z
8
�
V
@
�
�
�
{
@
1
�
�
�
{
@
}
�
W
O
*
�
@
�
�
?
+
�
\
@
/
F
+
�
\
@
�
�
x
�
�
%
@
�
�
*
�
J
@
G
G
5
7
�
s
@
�
>
7
�
s
@
n
J
�
�
�
@
�
j
�
�
T
�
@
u
Z
�
�
I
b
@
�
�
I
b
@
�
:
�
�
B
o
@
�
�
J
�
,
�
@
8
�
u
�
_
�
@
�
�
h
�
v
�
@
l
�
�
�
�
@
�
|
�
�
"
@
�
�
�
"
@
6
�
�
�
�
�
@
X
�
�
�
�
�
@
f
�
<
�
[
@
�
�
�
�
�
@
�
/
b
�
L
@
�
d
T
@
n
�
"
d
T
@
�
�
a
E
�
m
@
�
�
�
/
�
�
@
�
H
�
Y
�
@
�
�
�
Y
�
@
p
�
�
�
V
'
@
�
�
�
�
V
'
@
�
_
�
.
@
B
:
�
T
@
�
�
y
�
�
@
�
�
�
�
�
�
@
�
�
�
�
�
@
�
/
*
}
=
@
�
�
+
�
�
@
�
.
�
�
@
�
�
g
9
�
@
<
�
o
9
�
@
�
x
j
@
�
�
�
C
~
@
6
c
�
�
C
~
@
N
�
c
�
�
@
�
P
�
�
�
'
@
�
�
�
A
D
@
�
j
�
h
@
B
�
�
@
�
'
�
�
@
�
�
�
<
�
@
�
R
x
�
f
�
@
�
�
k
�
|
@
\
�
�
k
�
|
@
�
K
�
0
�
@
�
-
�
p
�
@
$
�
�
�
|
r
@
^
�
�
c
�
@
P
&
0
�
@
R
�
3
�
@
0
�
�
�
�
5
@
�
!
;
�
t
P
@
�
�
�
�
|
@
T
I
�
�
�
@
�
�
�
�
�
@
�
(
^
6
@
O
(
^
6
@
�
�
<
�
O
@
�
&
�
�
s
@
M
�
�
7
@
5
�
8
H
�
1
@
U
3
:
H
�
1
@
�
Y
�
�
M
A
@
P
�
�
M
A
@
$
�
�
4
�
B
@
�
�
O
�
�
V
�
?
w
�
!
f
�
�
�
?
!
o
�
�
�
�
?
p
T
�
�
�
�
@
�
V
�
�
@
�
n
j
8
�
V
@
�
�
�
�
{
@
k
�
�
{
@
�
c
O
*
�
@
�
4
+
�
\
@
A
�
:
+
�
\
@
�
�
k
�
�
%
@
�
b
�
*
�
J
@
�
/
7
�
s
@
�
9
7
�
s
@
�
z
�
�
�
�
@
{
h
�
�
T
�
@
j
�
�
�
I
b
@
"
l
�
�
I
b
@
�
k
�
�
B
o
@
�
K
�
,
�
@
�
�
}
�
_
�
@
�
-
n
�
v
�
@
T
�
�
�
�
@
�
v
�
�
"
@
�
z
�
�
"
@
<
�
�
�
�
�
@
]
�
}
�
�
�
@
�
�
5
�
[
@
�
�
�
�
�
�
@
�
�
2
b
�
L
@
T
d
T
@
B
u
d
T
@
:
[
E
�
m
@
,
]
�
/
�
�
@
x
�
�
Y
�
@
B
A
�
Y
�
@
�
L
�
�
V
'
@
�
�
�
�
V
'
@
T
�
�
_
�
.
@
�
_
�
T
@
�
r
y
�
�
@
�
9
�
�
�
�
@
0
�
�
�
�
@
"
�
3
*
}
=
@
�
_
&
�
�
@
�
e
)
�
�
@
�
D
h
9
�
@
�
n
9
�
@
�
�
�
x
j
@
N
�
�
C
~
@
�
q
�
�
C
~
@
b
�
d
�
�
@
V
�
�
�
'
@
X
:
�
A
D
@
�
�
�
i
�
h
@
�
(
�
�
@
,
�
�
�
@
L
�
�
<
�
@
x
r
q
�
f
�
@
�
�
k
�
|
@
�
&
�
k
�
|
@
�
�
F
�
0
�
@
�
E
�
p
�
@
|
Y
�
�
|
r
@
�
E
�
�
c
�
@
<
�
4
�
@
�
Z
8
�
@
f
|
�
�
�
5
@
~
/
C
�
t
P
@
2
�
�
�
|
@
�
�
�
�
�
@
�
J
#
�
�
�
@
r
�
(
^
6
@
J
�
(
^
6
@
�
�
�
<
�
O
@
z
�
+
�
�
s
@
�
C
�
7
@
�
6
H
�
1
@
�
�
7
H
�
1
@
?
�
�
�
M
A
@
�
�
M
A
@
�
�
4
�
B
@
�
�
�
=
-
�
O
�
�
V
�
?
:
�
u
�
�
V
�
?
L
�
�
�
�
�
?
�
�
f
�
�
�
?
]
X
�
�
�
�
?
�
o
�
�
�
�
?
�
@
�
C
�
?
�
T
�
�
�
�
@
�
�
�
�
�
@
*
�
V
�
�
@
V
�
`
�
�
@
&
�
�
�
@
@
�
�
c
8
�
V
@
�
�
�
�
{
@
�
�
�
{
@
,
j
�
�
{
@
X
,
t
�
'
@
~
�
�
0
�
�
@
"
t
�
@
�
X
X
O
*
�
@
�
c
O
*
�
@
�
�
:
+
�
\
@
>
�
?
+
�
\
@
�
�
k
�
�
%
@
�
P
t
�
�
%
@
f
b
�
*
�
J
@
�
b
�
*
�
J
@
�
�
k
V
,
�
@
�
�
/
7
�
s
@
�
�
9
7
�
s
@
X
@
7
�
s
@
{
�
�
�
�
@
�
�
�
�
�
@
0
�
�
�
T
�
@
�
Q
�
x
�
�
@
�
�
�
I
b
@
$
�
�
�
I
b
@
�
k
�
�
I
b
@
I
k
�
�
B
o
@
�
�
�
�
B
o
@
�
K
�
,
�
@
*
z
�
_
�
@
s
�
�
4
�
@
�
�
J
y
�
�
@
j
i
�
v
�
@
�
-
n
�
v
�
@
U
�
�
�
�
@
�
�
�
�
�
@
�
z
�
�
"
@
D
�
|
�
�
"
@
�
�
�
�
�
@
�
C
�
�
�
�
@
�
�
�
�
�
�
@
~
�
}
�
�
�
@
�
�
�
�
�
�
@
�
�
5
�
[
@
x
K
:
�
[
@
<
f
�
I
b
�
@
�
�
�
�
�
�
@
�
�
�
�
�
@
�
�
0
b
�
L
@
�
d
T
@
�
t
d
T
@
�
�
#
d
T
@
F
[
E
�
m
@
L
�
_
E
�
m
@
�
;
G
q
�
�
@
v
�
/
�
�
@
`
�
�
Y
�
@
^
�
�
Y
�
@
�
@
�
Y
�
@
:
�
@
�
*
�
�
V
'
@
J
L
�
�
V
'
@
�
�
�
V
'
@
&
�
�
_
�
.
@
L
�
�
T
@
<
r
y
�
�
@
d
�
y
�
�
@
|
�
�
�
�
@
�
9
�
�
�
�
@
�
�
�
�
�
@
�
�
�
:
�
@
F
�
�
s
F
@
X
�
/
*
}
=
@
�
�
3
*
}
=
@
b
;
4
�
�
h
@
�
e
)
�
�
@
(
�
+
�
�
@
�
�
�
F
)
@
�
D
h
9
�
@
P
n
9
�
@
v
�
x
j
@
V
�
�
x
j
@
�
q
�
�
C
~
@
�
�
C
~
@
�
x
d
�
�
@
�
�
�
�
'
@
�
�
�
�
'
@
:
�
A
D
@
<
�
A
D
@
�
�
�
i
�
h
@
�
Z
j
�
h
@
�
~
)
�
�
@
)
�
�
@
�
�
�
�
@
~
"
�
�
@
$
f
�
�
<
�
@
�
�
<
�
@
�
r
q
�
f
�
@
x
-
v
�
f
�
@
(
�
k
�
|
@
|
&
�
k
�
|
@
F
T
�
k
�
|
@
�
�
F
�
0
�
@
r
�
I
�
0
�
@
F
�
p
�
@
�
H
�
p
�
@
�
�
l
�
�
<
@
�
�
|
r
@
L
�
�
�
c
�
@
`
}
]
:
�
�
@
�
_
2
�
@
�
4
�
@
�
Y
8
�
@
J
|
�
�
�
5
@
�
^
?
�
t
P
@
�
�
�
|
@
�
/
�
�
|
@
�
�
X
�
�
�
@
f
�
�
�
�
@
�
�
�
�
�
@
J
#
�
�
�
@
X
�
�
s
�
@
�
�
(
^
6
@
�
(
^
6
@
�
�
(
^
6
@
R
�
<
�
O
@
�
�
�
<
�
O
@
�
0
�
�
P
@
h
)
�
�
s
@
0
�
T
�
�
�
@
�
C
�
�
@
�
7
@
C
�
7
@
�
�
7
H
�
1
@
�
8
H
�
1
@
^
�
�
�
�
2
@
�
�
M
A
@
f
�
�
M
A
@
;
�
�
4
�
B
@
�
�
4
�
B
@
(
�
f
�
�
V
�
?
�
�
�
�
V
�
?
�
�
�
�
�
�
?
�
]
f
�
�
�
?
}
@
W
�
�
�
�
?
c
B
u
�
�
�
�
?
�
�
�
C
�
?
�
0
�
�
�
�
@
b
q
�
�
�
�
@
h
n
\
�
�
@
�
O
e
�
�
@
�
[
�
�
@
@
�
b
8
�
V
@
S
�
�
{
@
�
�
�
�
{
@
�
]
�
�
{
@
�
P
k
�
'
@
�
�
�
0
�
�
@
�
i
�
@
�
�
W
O
*
�
@
�
f
O
*
�
@
J
�
;
+
�
\
@
�
�
?
+
�
\
@
R
�
q
�
�
%
@
{
�
x
�
�
%
@
R
�
�
*
�
J
@
6
�
�
*
�
J
@
a
w
l
V
,
�
@
�
2
7
�
s
@
�
F
5
7
�
s
@
0
�
>
7
�
s
@
�
/
�
�
�
�
@
x
I
�
�
�
@
�
�
�
�
T
�
@
�
�
�
x
�
�
@
�
Z
�
�
I
b
@
�
�
�
I
b
@
�
�
�
�
I
b
@
�
:
�
�
B
o
@
�
;
�
�
B
o
@
�
�
J
�
,
�
@
(
~
y
�
_
�
@
�
�
4
�
@
�
F
y
�
�
@
�
�
h
�
v
�
@
�
�
o
�
v
�
@
6
�
�
�
�
@
�
�
�
�
�
@
�
S
z
�
�
"
@
�
�
|
�
�
"
@
�
�
�
�
�
@
�
�
�
�
�
�
@
�
�
�
�
�
�
@
�
�
�
�
@
�
�
�
�
�
�
@
�
�
8
�
[
@
�
�
<
�
[
@
�
�
I
b
�
@
%
�
�
�
�
�
@
�
�
�
�
@
a
1
b
�
L
@
�
d
T
@
R
d
T
@
>
�
"
d
T
@
�
U
]
E
�
m
@
(
�
a
E
�
m
@
�
F
q
�
�
@
�
-
�
/
�
�
@
.
I
�
Y
�
@
�
�
�
Y
�
@
�
�
�
Y
�
@
�
v
:
�
@
�
�
�
�
V
'
@
h
�
�
�
V
'
@
.
P
�
�
V
'
@
�
�
_
�
.
@
�
�
T
@
Z
}
y
�
�
@
n
�
y
�
�
@
�
�
�
�
�
�
@
�
�
�
�
�
�
@
�
w
�
�
�
�
@
@
J
�
:
�
@
�
T
�
s
F
@
H
�
/
*
}
=
@
:
5
*
}
=
@
�
O
0
�
�
h
@
v
�
)
�
�
@
�
�
+
�
�
@
�
�
�
F
)
@
(
�
g
9
�
@
�
�
o
9
�
@
�
x
j
@
�
�
x
j
@
�
�
�
�
C
~
@
�
�
�
�
C
~
@
x
?
d
�
�
@
J
I
�
�
�
'
@
^
P
�
�
�
'
@
�
�
�
A
D
@
B
�
�
A
D
@
v
L
�
i
�
h
@
j
�
h
@
V
)
�
�
@
:
�
�
@
8
�
�
@
2
'
�
�
@
�
�
�
<
�
@
f
�
�
<
�
@
H
�
s
�
f
�
@
J
R
x
�
f
�
@
�
F
�
k
�
|
@
�
�
�
k
�
|
@
�
�
k
�
|
@
0
I
�
0
�
@
L
�
K
�
0
�
@
�
�
�
p
�
@
z
-
�
p
�
@
?
l
�
�
<
@
�
Q
�
�
|
r
@
�
�
�
c
�
@
h
�
\
:
�
�
@
,
&
0
�
@
:
�
3
�
@
Z
�
6
�
@
�
�
�
�
�
5
@
�
�
>
�
t
P
@
�
�
�
|
@
�
�
�
�
|
@
,
�
W
�
�
�
@
Z
I
�
�
�
@
�
�
�
�
�
@
�
�
!
�
�
�
@
z
F
�
s
�
@
�
(
^
6
@
�
N
(
^
6
@
�
*
(
^
6
@
�
<
�
O
@
N
"
�
<
�
O
@
�
�
�
�
P
@
<
�
(
�
�
s
@
�
3
T
�
�
�
@
�
@
�
�
@
A
�
�
7
@
D
�
�
7
@
�
�
7
H
�
1
@
�
�
8
H
�
1
@
|
J
�
�
�
2
@
5
:
�
�
M
A
@
n
Y
�
�
M
A
@
E
�
�
4
�
B
@
�
�
4
�
B
@
�
�
�
�
V
�
?
�
�
f
�
�
�
?
:
@
W
�
�
�
�
?
�
q
�
�
�
�
@
�
P
e
�
�
@
�
Z
8
�
V
@
�
�
�
{
@
1
�
�
�
{
@
}
�
W
O
*
�
@
�
�
?
+
�
\
@
/
F
+
�
\
@
�
�
x
�
�
%
@
�
�
*
�
J
@
G
G
5
7
�
s
@
�
>
7
�
s
@
n
J
�
�
�
@
�
j
�
�
T
�
@
u
Z
�
�
I
b
@
�
�
I
b
@
�
:
�
�
B
o
@
�
�
J
�
,
�
@
8
�
u
�
_
�
@
�
�
h
�
v
�
@
l
�
�
�
�
@
�
|
�
�
"
@
�
�
�
"
@
6
�
�
�
�
�
@
X
�
�
�
�
�
@
f
�
<
�
[
@
�
�
�
�
�
@
�
/
b
�
L
@
�
d
T
@
n
�
"
d
T
@
�
�
a
E
�
m
@
�
�
�
/
�
�
@
�
H
�
Y
�
@
�
�
�
Y
�
@
p
�
�
�
V
'
@
�
�
�
�
V
'
@
�
_
�
.
@
B
:
�
T
@
�
�
y
�
�
@
�
�
�
�
�
�
@
�
�
�
�
�
@
�
/
*
}
=
@
�
�
+
�
�
@
�
.
�
�
@
�
�
g
9
�
@
<
�
o
9
�
@
�
x
j
@
�
�
�
C
~
@
6
c
�
�
C
~
@
N
�
c
�
�
@
�
P
�
�
�
'
@
�
�
�
A
D
@
�
j
�
h
@
B
�
�
@
�
'
�
�
@
�
�
�
<
�
@
�
R
x
�
f
�
@
�
�
k
�
|
@
\
�
�
k
�
|
@
�
K
�
0
�
@
�
-
�
p
�
@
$
�
�
�
|
r
@
^
�
�
c
�
@
P
&
0
�
@
R
�
3
�
@
0
�
�
�
�
5
@
�
!
;
�
t
P
@
�
�
�
�
|
@
T
I
�
�
�
@
�
�
�
�
�
@
�
(
^
6
@
O
(
^
6
@
�
�
<
�
O
@
�
&
�
�
s
@
M
�
�
7
@
5
�
8
H
�
1
@
U
3
:
H
�
1
@
�
Y
�
�
M
A
@
P
�
�
M
A
@
$
�
�
4
�
B
@
�
�
O
�
�
V
�
?
w
�
!
f
�
�
�
?
!
o
�
�
�
�
?
p
T
�
�
�
�
@
�
V
�
�
@
�
n
j
8
�
V
@
�
�
�
�
{
@
k
�
�
{
@
�
c
O
*
�
@
�
4
+
�
\
@
A
�
:
+
�
\
@
�
�
k
�
�
%
@
�
b
�
*
�
J
@
�
/
7
�
s
@
�
9
7
�
s
@
�
z
�
�
�
�
@
{
h
�
�
T
�
@
j
�
�
�
I
b
@
"
l
�
�
I
b
@
�
k
�
�
B
o
@
�
K
�
,
�
@
�
�
}
�
_
�
@
�
-
n
�
v
�
@
T
�
�
�
�
@
�
v
�
�
"
@
�
z
�
�
"
@
<
�
�
�
�
�
@
]
�
}
�
�
�
@
�
�
5
�
[
@
�
�
�
�
�
�
@
�
�
2
b
�
L
@
T
d
T
@
B
u
d
T
@
:
[
E
�
m
@
,
]
�
/
�
�
@
x
�
�
Y
�
@
B
A
�
Y
�
@
�
L
�
�
V
'
@
�
�
�
�
V
'
@
T
�
�
_
�
.
@
�
_
�
T
@
�
r
y
�
�
@
�
9
�
�
�
�
@
0
�
�
�
�
@
"
�
3
*
}
=
@
�
_
&
�
�
@
�
e
)
�
�
@
�
D
h
9
�
@
�
n
9
�
@
�
�
�
x
j
@
N
�
�
C
~
@
�
q
�
�
C
~
@
b
�
d
�
�
@
V
�
�
�
'
@
X
:
�
A
D
@
�
�
�
i
�
h
@
�
(
�
�
@
,
�
�
�
@
L
�
�
<
�
@
x
r
q
�
f
�
@
�
�
k
�
|
@
�
&
�
k
�
|
@
�
�
F
�
0
�
@
�
E
�
p
�
@
|
Y
�
�
|
r
@
�
E
�
�
c
�
@
<
�
4
�
@
�
Z
8
�
@
f
|
�
�
�
5
@
~
/
C
�
t
P
@
2
�
�
�
|
@
�
�
�
�
�
@
�
J
#
�
�
�
@
r
�
(
^
6
@
J
�
(
^
6
@
�
�
�
<
�
O
@
z
�
+
�
�
s
@
�
C
�
7
@
�
6
H
�
1
@
�
�
7
H
�
1
@
?
�
�
�
M
A
@
�
�
M
A
@
�
�
4
�
B
@
�
�
�
=
-
�
O
�
�
V
�
?
:
�
u
�
�
V
�
?
L
�
�
�
�
�
?
�
�
f
�
�
�
?
]
X
�
�
�
�
?
�
o
�
�
�
�
?
�
@
�
C
�
?
�
T
�
�
�
�
@
�
�
�
�
�
@
*
�
V
�
�
@
V
�
`
�
�
@
&
�
�
�
@
@
�
�
c
8
�
V
@
�
�
�
�
{
@
�
�
�
{
@
,
j
�
�
{
@
X
,
t
�
'
@
~
�
�
0
�
�
@
"
t
�
@
�
X
X
O
*
�
@
�
c
O
*
�
@
�
�
:
+
�
\
@
>
�
?
+
�
\
@
�
�
k
�
�
%
@
�
P
t
�
�
%
@
f
b
�
*
�
J
@
�
b
�
*
�
J
@
�
�
k
V
,
�
@
�
�
/
7
�
s
@
�
�
9
7
�
s
@
X
@
7
�
s
@
{
�
�
�
�
@
�
�
�
�
�
@
0
�
�
�
T
�
@
�
Q
�
x
�
�
@
�
�
�
I
b
@
$
�
�
�
I
b
@
�
k
�
�
I
b
@
I
k
�
�
B
o
@
�
�
�
�
B
o
@
�
K
�
,
�
@
*
z
�
_
�
@
s
�
�
4
�
@
�
�
J
y
�
�
@
j
i
�
v
�
@
�
-
n
�
v
�
@
U
�
�
�
�
@
�
�
�
�
�
@
�
z
�
�
"
@
D
�
|
�
�
"
@
�
�
�
�
�
@
�
C
�
�
�
�
@
�
�
�
�
�
�
@
~
�
}
�
�
�
@
�
�
�
�
�
�
@
�
�
5
�
[
@
x
K
:
�
[
@
<
f
�
I
b
�
@
�
�
�
�
�
�
@
�
�
�
�
�
@
�
�
0
b
�
L
@
�
d
T
@
�
t
d
T
@
�
�
#
d
T
@
F
[
E
�
m
@
L
�
_
E
�
m
@
�
;
G
q
�
�
@
v
�
/
�
�
@
`
�
�
Y
�
@
^
�
�
Y
�
@
�
@
�
Y
�
@
:
�
@
�
*
�
�
V
'
@
J
L
�
�
V
'
@
�
�
�
V
'
@
&
�
�
_
�
.
@
L
�
�
T
@
<
r
y
�
�
@
d
�
y
�
�
@
|
�
�
�
�
@
�
9
�
�
�
�
@
�
�
�
�
�
@
�
�
�
:
�
@
F
�
�
s
F
@
X
�
/
*
}
=
@
�
�
3
*
}
=
@
b
;
4
�
�
h
@
�
e
)
�
�
@
(
�
+
�
�
@
�
�
�
F
)
@
�
D
h
9
�
@
P
n
9
�
@
v
�
x
j
@
V
�
�
x
j
@
�
q
�
�
C
~
@
�
�
C
~
@
�
x
d
�
�
@
�
�
�
�
'
@
�
�
�
�
'
@
:
�
A
D
@
<
�
A
D
@
�
�
�
i
�
h
@
�
Z
j
�
h
@
�
~
)
�
�
@
)
�
�
@
�
�
�
�
@
~
"
�
�
@
$
f
�
�
<
�
@
�
�
<
�
@
�
r
q
�
f
�
@
x
-
v
�
f
�
@
(
�
k
�
|
@
|
&
�
k
�
|
@
F
T
�
k
�
|
@
�
�
F
�
0
�
@
r
�
I
�
0
�
@
F
�
p
�
@
�
H
�
p
�
@
�
�
l
�
�
<
@
�
�
|
r
@
L
�
�
�
c
�
@
`
}
]
:
�
�
@
�
_
2
�
@
�
4
�
@
�
Y
8
�
@
J
|
�
�
�
5
@
�
^
?
�
t
P
@
�
�
�
|
@
�
/
�
�
|
@
�
�
X
�
�
�
@
f
�
�
�
�
@
�
�
�
�
�
@
J
#
�
�
�
@
X
�
�
s
�
@
�
�
(
^
6
@
�
(
^
6
@
�
�
(
^
6
@
R
�
<
�
O
@
�
�
�
<
�
O
@
�
0
�
�
P
@
h
)
�
�
s
@
0
�
T
�
�
�
@
�
C
�
�
@
�
7
@
C
�
7
@
�
�
7
H
�
1
@
�
8
H
�
1
@
^
�
�
�
�
2
@
�
�
M
A
@
f
�
�
M
A
@
;
�
�
4
�
B
@
�
�
4
�
B
@
(
�
f
�
�
V
�
?
�
�
�
�
V
�
?
�
�
�
�
�
�
?
�
]
f
�
�
�
?
}
@
W
�
�
�
�
?
c
B
u
�
�
�
�
?
�
�
�
C
�
?
�
0
�
�
�
�
@
b
q
�
�
�
�
@
h
n
\
�
�
@
�
O
e
�
�
@
�
[
�
�
@
@
�
b
8
�
V
@
S
�
�
{
@
�
�
�
�
{
@
�
]
�
�
{
@
�
P
k
�
'
@
�
�
�
0
�
�
@
�
i
�
@
�
�
W
O
*
�
@
�
f
O
*
�
@
J
�
;
+
�
\
@
�
�
?
+
�
\
@
R
�
q
�
�
%
@
{
�
x
�
�
%
@
R
�
�
*
�
J
@
6
�
�
*
�
J
@
a
w
l
V
,
�
@
�
2
7
�
s
@
�
F
5
7
�
s
@
0
�
>
7
�
s
@
�
/
�
�
�
�
@
x
I
�
�
�
@
�
�
�
�
T
�
@
�
�
�
x
�
�
@
�
Z
�
�
I
b
@
�
�
�
I
b
@
�
�
�
�
I
b
@
�
:
�
�
B
o
@
�
;
�
�
B
o
@
�
�
J
�
,
�
@
(
~
y
�
_
�
@
�
�
4
�
@
�
F
y
�
�
@
�
�
h
�
v
�
@
�
�
o
�
v
�
@
6
�
�
�
�
@
�
�
�
�
�
@
�
S
z
�
�
"
@
�
�
|
�
�
"
@
�
�
�
�
�
@
�
�
�
�
�
�
@
�
�
�
�
�
�
@
�
�
�
�
@
�
�
�
�
�
�
@
�
�
8
�
[
@
�
�
<
�
[
@
�
�
I
b
�
@
%
�
�
�
�
�
@
�
�
�
�
@
a
1
b
�
L
@
�
d
T
@
R
d
T
@
>
�
"
d
T
@
�
U
]
E
�
m
@
(
�
a
E
�
m
@
�
F
q
�
�
@
�
-
�
/
�
�
@
.
I
�
Y
�
@
�
�
�
Y
�
@
�
�
�
Y
�
@
�
v
:
�
@
�
�
�
�
V
'
@
h
�
�
�
V
'
@
.
P
�
�
V
'
@
�
�
_
�
.
@
�
�
T
@
Z
}
y
�
�
@
n
�
y
�
�
@
�
�
�
�
�
�
@
�
�
�
�
�
�
@
�
w
�
�
�
�
@
@
J
�
:
�
@
�
T
�
s
F
@
H
�
/
*
}
=
@
:
5
*
}
=
@
�
O
0
�
�
h
@
v
�
)
�
�
@
�
�
+
�
�
@
�
�
�
F
)
@
(
�
g
9
�
@
�
�
o
9
�
@
�
x
j
@
�
�
x
j
@
�
�
�
�
C
~
@
�
�
�
�
C
~
@
x
?
d
�
�
@
J
I
�
�
�
'
@
^
P
�
�
�
'
@
�
�
�
A
D
@
B
�
�
A
D
@
v
L
�
i
�
h
@
j
�
h
@
V
)
�
�
@
:
�
�
@
8
�
�
@
2
'
�
�
@
�
�
�
<
�
@
f
�
�
<
�
@
H
�
s
�
f
�
@
J
R
x
�
f
�
@
�
F
�
k
�
|
@
�
�
�
k
�
|
@
�
�
k
�
|
@
0
I
�
0
�
@
L
�
K
�
0
�
@
�
�
�
p
�
@
z
-
�
p
�
@
?
l
�
�
<
@
�
Q
�
�
|
r
@
�
�
�
c
�
@
h
�
\
:
�
�
@
,
&
0
�
@
:
�
3
�
@
Z
�
6
�
@
�
�
�
�
�
5
@
�
�
>
�
t
P
@
�
�
�
|
@
�
�
�
�
|
@
,
�
W
�
�
�
@
Z
I
�
�
�
@
�
�
�
�
�
@
�
�
!
�
�
�
@
z
F
�
s
�
@
�
(
^
6
@
�
N
(
^
6
@
�
*
(
^
6
@
�
<
�
O
@
N
"
�
<
�
O
@
�
�
�
�
P
@
<
�
(
�
�
s
@
�
3
T
�
�
�
@
�
@
�
�
@
A
�
�
7
@
D
�
�
7
@
�
�
7
H
�
1
@
�
�
8
H
�
1
@
|
J
�
�
�
2
@
5
:
�
�
M
A
@
n
Y
�
�
M
A
@
E
�
�
4
�
B
@
�
�
4
�
B
@
�
�
�
=
-
�
O
�
�
V
�
?
:
�
u
�
�
V
�
?
L
�
�
�
�
�
?
�
�
f
�
�
�
?
]
X
�
�
�
�
?
�
o
�
�
�
�
?
�
@
�
C
�
?
�
T
�
�
�
�
@
�
�
�
�
�
@
*
�
V
�
�
@
V
�
`
�
�
@
&
�
�
�
@
@
�
�
c
8
�
V
@
�
�
�
�
{
@
�
�
�
{
@
,
j
�
�
{
@
X
,
t
�
'
@
~
�
�
0
�
�
@
"
t
�
@
�
X
X
O
*
�
@
�
c
O
*
�
@
�
�
:
+
�
\
@
>
�
?
+
�
\
@
�
�
k
�
�
%
@
�
P
t
�
�
%
@
f
b
�
*
�
J
@
�
b
�
*
�
J
@
�
�
k
V
,
�
@
�
�
/
7
�
s
@
�
�
9
7
�
s
@
X
@
7
�
s
@
{
�
�
�
�
@
�
�
�
�
�
@
0
�
�
�
T
�
@
�
Q
�
x
�
�
@
�
�
�
I
b
@
$
�
�
�
I
b
@
�
k
�
�
I
b
@
I
k
�
�
B
o
@
�
�
�
�
B
o
@
�
K
�
,
�
@
*
z
�
_
�
@
s
�
�
4
�
@
�
�
J
y
�
�
@
j
i
�
v
�
@
�
-
n
�
v
�
@
U
�
�
�
�
@
�
�
�
�
�
@
�
z
�
�
"
@
D
�
|
�
�
"
@
�
�
�
�
�
@
�
C
�
�
�
�
@
�
�
�
�
�
�
@
~
�
}
�
�
�
@
�
�
�
�
�
�
@
�
�
5
�
[
@
x
K
:
�
[
@
<
f
�
I
b
�
@
�
�
�
�
�
�
@
�
�
�
�
�
@
�
�
0
b
�
L
@
�
d
T
@
�
t
d
T
@
�
�
#
d
T
@
F
[
E
�
m
@
L
�
_
E
�
m
@
�
;
G
q
�
�
@
v
�
/
�
�
@
`
�
�
Y
�
@
^
�
�
Y
�
@
�
@
�
Y
�
@
:
�
@
�
*
�
�
V
'
@
J
L
�
�
V
'
@
�
�
�
V
'
@
&
�
�
_
�
.
@
L
�
�
T
@
<
r
y
�
�
@
d
�
y
�
�
@
|
�
�
�
�
@
�
9
�
�
�
�
@
�
�
�
�
�
@
�
�
�
:
�
@
F
�
�
s
F
@
X
�
/
*
}
=
@
�
�
3
*
}
=
@
b
;
4
�
�
h
@
�
e
)
�
�
@
(
�
+
�
�
@
�
�
�
F
)
@
�
D
h
9
�
@
P
n
9
�
@
v
�
x
j
@
V
�
�
x
j
@
�
q
�
�
C
~
@
�
�
C
~
@
�
x
d
�
�
@
�
�
�
�
'
@
�
�
�
�
'
@
:
�
A
D
@
<
�
A
D
@
�
�
�
i
�
h
@
�
Z
j
�
h
@
�
~
)
�
�
@
)
�
�
@
�
�
�
�
@
~
"
�
�
@
$
f
�
�
<
�
@
�
�
<
�
@
�
r
q
�
f
�
@
x
-
v
�
f
�
@
(
�
k
�
|
@
|
&
�
k
�
|
@
F
T
�
k
�
|
@
�
�
F
�
0
�
@
r
�
I
�
0
�
@
F
�
p
�
@
�
H
�
p
�
@
�
�
l
�
�
<
@
�
�
|
r
@
L
�
�
�
c
�
@
`
}
]
:
�
�
@
�
_
2
�
@
�
4
�
@
�
Y
8
�
@
J
|
�
�
�
5
@
�
^
?
�
t
P
@
�
�
�
|
@
�
/
�
�
|
@
�
�
X
�
�
�
@
f
�
�
�
�
@
�
�
�
�
�
@
J
#
�
�
�
@
X
�
�
s
�
@
�
�
(
^
6
@
�
(
^
6
@
�
�
(
^
6
@
R
�
<
�
O
@
�
�
�
<
�
O
@
�
0
�
�
P
@
h
)
�
�
s
@
0
�
T
�
�
�
@
�
C
�
�
@
�
7
@
C
�
7
@
�
�
7
H
�
1
@
�
8
H
�
1
@
^
�
�
�
�
2
@
�
�
M
A
@
f
�
�
M
A
@
;
�
�
4
�
B
@
�
�
4
�
B
@
(
�
f
�
�
V
�
?
�
�
�
�
V
�
?
�
�
�
�
�
�
?
�
]
f
�
�
�
?
}
@
W
�
�
�
�
?
c
B
u
�
�
�
�
?
�
�
�
C
�
?
�
0
�
�
�
�
@
b
q
�
�
�
�
@
h
n
\
�
�
@
�
O
e
�
�
@
�
[
�
�
@
@
�
b
8
�
V
@
S
�
�
{
@
�
�
�
�
{
@
�
]
�
�
{
@
�
P
k
�
'
@
�
�
�
0
�
�
@
�
i
�
@
�
�
W
O
*
�
@
�
f
O
*
�
@
J
�
;
+
�
\
@
�
�
?
+
�
\
@
R
�
q
�
�
%
@
{
�
x
�
�
%
@
R
�
�
*
�
J
@
6
�
�
*
�
J
@
a
w
l
V
,
�
@
�
2
7
�
s
@
�
F
5
7
�
s
@
0
�
>
7
�
s
@
�
/
�
�
�
�
@
x
I
�
�
�
@
�
�
�
�
T
�
@
�
�
�
x
�
�
@
�
Z
�
�
I
b
@
�
�
�
I
b
@
�
�
�
�
I
b
@
�
:
�
�
B
o
@
�
;
�
�
B
o
@
�
�
J
�
,
�
@
(
~
y
�
_
�
@
�
�
4
�
@
�
F
y
�
�
@
�
�
h
�
v
�
@
�
�
o
�
v
�
@
6
�
�
�
�
@
�
�
�
�
�
@
�
S
z
�
�
"
@
�
�
|
�
�
"
@
�
�
�
�
�
@
�
�
�
�
�
�
@
�
�
�
�
�
�
@
�
�
�
�
@
�
�
�
�
�
�
@
�
�
8
�
[
@
�
�
<
�
[
@
�
�
I
b
�
@
%
�
�
�
�
�
@
�
�
�
�
@
a
1
b
�
L
@
�
d
T
@
R
d
T
@
>
�
"
d
T
@
�
U
]
E
�
m
@
(
�
a
E
�
m
@
�
F
q
�
�
@
�
-
�
/
�
�
@
.
I
�
Y
�
@
�
�
�
Y
�
@
�
�
�
Y
�
@
�
v
:
�
@
�
�
�
�
V
'
@
h
�
�
�
V
'
@
.
P
�
�
V
'
@
�
�
_
�
.
@
�
�
T
@
Z
}
y
�
�
@
n
�
y
�
�
@
�
�
�
�
�
�
@
�
�
�
�
�
�
@
�
w
�
�
�
�
@
@
J
�
:
�
@
�
T
�
s
F
@
H
�
/
*
}
=
@
:
5
*
}
=
@
�
O
0
�
�
h
@
v
�
)
�
�
@
�
�
+
�
�
@
�
�
�
F
)
@
(
�
g
9
�
@
�
�
o
9
�
@
�
x
j
@
�
�
x
j
@
�
�
�
�
C
~
@
�
�
�
�
C
~
@
x
?
d
�
�
@
J
I
�
�
�
'
@
^
P
�
�
�
'
@
�
�
�
A
D
@
B
�
�
A
D
@
v
L
�
i
�
h
@
j
�
h
@
V
)
�
�
@
:
�
�
@
8
�
�
@
2
'
�
�
@
�
�
�
<
�
@
f
�
�
<
�
@
H
�
s
�
f
�
@
J
R
x
�
f
�
@
�
F
�
k
�
|
@
�
�
�
k
�
|
@
�
�
k
�
|
@
0
I
�
0
�
@
L
�
K
�
0
�
@
�
�
�
p
�
@
z
-
�
p
�
@
?
l
�
�
<
@
�
Q
�
�
|
r
@
�
�
�
c
�
@
h
�
\
:
�
�
@
,
&
0
�
@
:
�
3
�
@
Z
�
6
�
@
�
�
�
�
�
5
@
�
�
>
�
t
P
@
�
�
�
|
@
�
�
�
�
|
@
,
�
W
�
�
�
@
Z
I
�
�
�
@
�
�
�
�
�
@
�
�
!
�
�
�
@
z
F
�
s
�
@
�
(
^
6
@
�
N
(
^
6
@
�
*
(
^
6
@
�
<
�
O
@
N
"
�
<
�
O
@
�
�
�
�
P
@
<
�
(
�
�
s
@
�
3
T
�
�
�
@
�
@
�
�
@
A
�
�
7
@
D
�
�
7
@
�
�
7
H
�
1
@
�
�
8
H
�
1
@
|
J
�
�
�
2
@
5
:
�
�
M
A
@
n
Y
�
�
M
A
@
E
�
�
4
�
B
@
�
�
4
�
B
@
�
�
�
=
]
�
W
�
�
V
�
?
�
f
�
�
V
�
?
�
�
�
�
�
�
?
�
�
f
�
�
�
?
2
B
W
�
�
�
�
?
@
u
�
�
�
�
?
C
W
�
C
�
?
%
�
�
�
�
�
@
�
0
�
�
�
�
@
�
�
X
�
�
@
H
n
\
�
�
@
[
�
�
@
@
2
�
g
8
�
V
@
�
�
�
�
{
@
r
]
�
�
{
@
B
�
�
{
@
x
�
v
�
'
@
t
�
�
0
�
�
@
�
v
�
@
�
�
W
O
*
�
@
�
f
O
*
�
@
5
&
9
+
�
\
@
�
�
;
+
�
\
@
q
#
m
�
�
%
@
�
�
q
�
�
%
@
�
�
�
*
�
J
@
�
�
�
*
�
J
@
�
Y
m
V
,
�
@
�
2
7
�
s
@
�
F
5
7
�
s
@
�
�
>
7
�
s
@
h
�
�
�
�
�
@
/
�
�
�
�
@
[
-
�
�
T
�
@
b
�
�
x
�
�
@
-
�
�
I
b
@
�
�
�
�
I
b
@
2
�
�
�
I
b
@
V
�
�
�
B
o
@
�
;
�
�
B
o
@
�
�
J
�
,
�
@
Y
|
�
_
�
@
�
�
4
�
@
L
y
�
�
@
�
h
�
v
�
@
H
�
o
�
v
�
@
h
�
�
�
�
@
f
�
�
�
�
@
!
y
�
�
"
@
T
z
�
�
"
@
�
f
�
�
�
�
@
�
�
�
�
�
@
;
�
�
�
�
�
@
�
\
~
�
�
�
@
�
�
�
�
@
6
�
6
�
[
@
�
�
8
�
[
@
�
I
b
�
@
v
�
�
�
�
�
@
�
�
�
�
�
@
3
3
b
�
L
@
�
d
T
@
2
d
T
@
�
�
"
d
T
@
�
'
\
E
�
m
@
�
U
]
E
�
m
@
�
F
q
�
�
@
,
�
�
/
�
�
@
�
�
�
Y
�
@
2
�
�
Y
�
@
�
�
�
Y
�
@
>
v
:
�
@
`
�
�
�
V
'
@
�
O
�
�
V
'
@
P
�
�
V
'
@
�
�
_
�
.
@
\
�
�
T
@
<
�
x
�
�
@
8
}
y
�
�
@
�
�
�
�
�
�
@
r
w
�
�
�
�
@
(
b
�
�
�
�
@
�
6
�
:
�
@
~
T
�
s
F
@
d
�
/
*
}
=
@
�
5
*
}
=
@
|
5
�
�
h
@
n
�
(
�
�
@
z
�
)
�
�
@
�
*
�
F
)
@
�
�
g
9
�
@
H
�
o
9
�
@
�
x
j
@
,
�
x
j
@
@
h
�
�
C
~
@
�
�
�
C
~
@
�
e
�
�
@
n
w
�
�
�
'
@
N
I
�
�
�
'
@
�
�
A
D
@
�
�
�
A
D
@
�
O
�
i
�
h
@
0
L
�
i
�
h
@
\
]
)
�
�
@
D
�
�
@
�
�
@
�
&
�
�
@
v
�
�
<
�
@
@
�
�
<
�
@
�
r
�
f
�
@
H
�
s
�
f
�
@
�
F
�
k
�
|
@
�
�
�
k
�
|
@
h
�
�
k
�
|
@
�
F
�
0
�
@
�
I
�
0
�
@
�
�
�
p
�
@
�
�
�
p
�
@
�
>
l
�
�
<
@
�
�
�
�
|
r
@
�
�
�
�
c
�
@
�
�
\
:
�
�
@
�
3
�
@
�
�
6
�
@
�
�
8
�
@
�
�
�
�
�
5
@
�
A
�
t
P
@
b
$
�
�
|
@
�
�
�
�
|
@
�
W
�
�
�
@
�
�
�
�
�
@
8
�
!
�
�
�
@
�
#
�
�
�
@
�
F
�
s
�
@
�
N
(
^
6
@
h
*
(
^
6
@
(
^
6
@
,
�
<
�
O
@
�
!
�
<
�
O
@
t
}
�
�
P
@
�
�
*
�
�
s
@
�
3
T
�
�
�
@
�
.
D
�
�
@
;
�
�
7
@
�
�
�
7
@
j
7
H
�
1
@
�
�
7
H
�
1
@
�
�
�
�
2
@
u
�
�
�
M
A
@
(
:
�
�
M
A
@
c
�
�
4
�
B
@
�
�
�
4
�
B
@
�
�
�
=
�
�
u
�
�
V
�
?
�
�
�
�
V
�
?
E
�
�
�
�
�
?
F
�
f
�
�
�
?
�
]
X
�
�
�
�
?
d
o
�
�
�
�
?
�
�
�
C
�
?
�
�
�
�
�
�
@
�
�
�
�
�
�
@
�
�
`
�
�
@
*
g
�
�
@
�
�
�
@
@
?
x
_
8
�
V
@
�
F
�
�
{
@
�
�
�
�
{
@
�
�
�
{
@
m
r
k
�
'
@
�
�
�
0
�
�
@
a
j
�
@
�
X
X
O
*
�
@
c
O
*
�
@
�
�
?
+
�
\
@
~
�
C
+
�
\
@
|
P
t
�
�
%
@
�
<
{
�
�
%
@
b
�
*
�
J
@
^
b
�
*
�
J
@
�
K
k
V
,
�
@
�
/
7
�
s
@
�
�
9
7
�
s
@
�
W
@
7
�
s
@
�
�
�
�
�
�
@
(
�
�
�
�
@
�
�
�
�
T
�
@
�
Q
�
x
�
�
@
�
�
�
�
I
b
@
�
�
�
�
I
b
@
�
�
�
�
I
b
@
T
�
�
�
B
o
@
�
�
�
B
o
@
�
K
�
,
�
@
�
�
w
�
_
�
@
�
�
�
4
�
@
=
F
y
�
�
@
{
i
�
v
�
@
-
n
�
v
�
@
)
�
�
�
�
@
�
�
�
�
�
@
;
�
|
�
�
"
@
:
w
~
�
�
"
@
Z
o
�
�
�
�
@
�
C
�
�
�
�
@
�
�
�
�
�
�
@
�
�
�
�
�
�
@
�
�
�
�
�
�
@
K
:
�
[
@
�
�
=
�
[
@
5
b
�
I
b
�
@
l
�
�
�
�
@
Z
�
�
�
�
�
@
(
p
/
b
�
L
@
�
d
T
@
�
t
d
T
@
4
�
#
d
T
@
�
�
_
E
�
m
@
�
`
b
E
�
m
@
�
;
G
q
�
�
@
Z
�
�
/
�
�
@
l
�
�
Y
�
@
b
�
�
Y
�
@
D
�
�
Y
�
@
�
:
�
@
�
Z
�
�
V
'
@
�
*
�
�
V
'
@
L
�
�
V
'
@
�
�
_
�
.
@
�
v
�
T
@
H
�
y
�
�
@
�
�
z
�
�
@
�
n
�
�
�
�
@
x
�
�
�
�
@
H
9
�
�
�
�
@
�
@
�
:
�
@
L
�
�
s
F
@
\
�
/
*
}
=
@
:
�
3
*
}
=
@
�
N
0
�
�
h
@
�
�
+
�
�
@
`
�
-
�
�
@
�
�
�
F
)
@
�
D
h
9
�
@
n
9
�
@
�
�
x
j
@
�
�
�
x
j
@
�
�
�
C
~
@
B
�
�
�
C
~
@
L
�
c
�
�
@
�
�
�
�
'
@
�
B
�
�
�
'
@
�
9
�
A
D
@
�
;
�
A
D
@
N
Z
j
�
h
@
�
@
j
�
h
@
�
~
)
�
�
@
&
)
�
�
@
�
�
�
�
@
�
!
�
�
@
f
�
�
<
�
@
�
�
<
�
@
f
-
v
�
f
�
@
.
y
�
f
�
@
8
�
k
�
|
@
\
&
�
k
�
|
@
�
S
�
k
�
|
@
�
�
I
�
0
�
@
:
�
L
�
0
�
@
L
H
�
p
�
@
�
�
p
�
@
�
l
�
�
<
@
F
�
�
|
r
@
�
�
�
�
c
�
@
�
|
]
:
�
�
@
D
�
1
�
@
�
_
2
�
@
�
�
4
�
@
$
|
�
�
�
5
@
$
B
=
�
t
P
@
�
/
�
�
|
@
�
�
�
�
|
@
b
�
X
�
�
�
@
�
�
�
�
�
@
�
�
�
�
�
@
P
�
�
�
�
@
\
�
�
s
�
@
�
'
(
^
6
@
�
�
(
^
6
@
�
�
(
^
6
@
T
�
<
�
O
@
�
�
<
�
O
@
�
�
�
�
P
@
�
�
'
�
�
s
@
�
�
T
�
�
�
@
L
�
?
�
�
@
'
�
7
@
C
C
�
7
@
�
�
8
H
�
1
@
�
�
9
H
�
1
@
�
�
�
�
2
@
f
�
�
M
A
@
Z
�
�
M
A
@
U
�
�
4
�
B
@
�
�
4
�
B
@
�
�
�
=
-
�
O
�
�
V
�
?
:
�
u
�
�
V
�
?
L
�
�
�
�
�
?
�
�
f
�
�
�
?
]
X
�
�
�
�
?
�
o
�
�
�
�
?
�
@
�
C
�
?
�
T
�
�
�
�
@
�
�
�
�
�
@
*
�
V
�
�
@
V
�
`
�
�
@
&
�
�
�
@
@
�
�
c
8
�
V
@
�
�
�
�
{
@
�
�
�
{
@
,
j
�
�
{
@
X
,
t
�
'
@
~
�
�
0
�
�
@
"
t
�
@
�
X
X
O
*
�
@
�
c
O
*
�
@
�
�
:
+
�
\
@
>
�
?
+
�
\
@
�
�
k
�
�
%
@
�
P
t
�
�
%
@
f
b
�
*
�
J
@
�
b
�
*
�
J
@
�
�
k
V
,
�
@
�
�
/
7
�
s
@
�
�
9
7
�
s
@
X
@
7
�
s
@
{
�
�
�
�
@
�
�
�
�
�
@
0
�
�
�
T
�
@
�
Q
�
x
�
�
@
�
�
�
I
b
@
$
�
�
�
I
b
@
�
k
�
�
I
b
@
I
k
�
�
B
o
@
�
�
�
�
B
o
@
�
K
�
,
�
@
*
z
�
_
�
@
s
�
�
4
�
@
�
�
J
y
�
�
@
j
i
�
v
�
@
�
-
n
�
v
�
@
U
�
�
�
�
@
�
�
�
�
�
@
�
z
�
�
"
@
D
�
|
�
�
"
@
�
�
�
�
�
@
�
C
�
�
�
�
@
�
�
�
�
�
�
@
~
�
}
�
�
�
@
�
�
�
�
�
�
@
�
�
5
�
[
@
x
K
:
�
[
@
<
f
�
I
b
�
@
�
�
�
�
�
�
@
�
�
�
�
�
@
�
�
0
b
�
L
@
�
d
T
@
�
t
d
T
@
�
�
#
d
T
@
F
[
E
�
m
@
L
�
_
E
�
m
@
�
;
G
q
�
�
@
v
�
/
�
�
@
`
�
�
Y
�
@
^
�
�
Y
�
@
�
@
�
Y
�
@
:
�
@
�
*
�
�
V
'
@
J
L
�
�
V
'
@
�
�
�
V
'
@
&
�
�
_
�
.
@
L
�
�
T
@
<
r
y
�
�
@
d
�
y
�
�
@
|
�
�
�
�
@
�
9
�
�
�
�
@
�
�
�
�
�
@
�
�
�
:
�
@
F
�
�
s
F
@
X
�
/
*
}
=
@
�
�
3
*
}
=
@
b
;
4
�
�
h
@
�
e
)
�
�
@
(
�
+
�
�
@
�
�
�
F
)
@
�
D
h
9
�
@
P
n
9
�
@
v
�
x
j
@
V
�
�
x
j
@
�
q
�
�
C
~
@
�
�
C
~
@
�
x
d
�
�
@
�
�
�
�
'
@
�
�
�
�
'
@
:
�
A
D
@
<
�
A
D
@
�
�
�
i
�
h
@
�
Z
j
�
h
@
�
~
)
�
�
@
)
�
�
@
�
�
�
�
@
~
"
�
�
@
$
f
�
�
<
�
@
�
�
<
�
@
�
r
q
�
f
�
@
x
-
v
�
f
�
@
(
�
k
�
|
@
|
&
�
k
�
|
@
F
T
�
k
�
|
@
�
�
F
�
0
�
@
r
�
I
�
0
�
@
F
�
p
�
@
�
H
�
p
�
@
�
�
l
�
�
<
@
�
�
|
r
@
L
�
�
�
c
�
@
`
}
]
:
�
�
@
�
_
2
�
@
�
4
�
@
�
Y
8
�
@
J
|
�
�
�
5
@
�
^
?
�
t
P
@
�
�
�
|
@
�
/
�
�
|
@
�
�
X
�
�
�
@
f
�
�
�
�
@
�
�
�
�
�
@
J
#
�
�
�
@
X
�
�
s
�
@
�
�
(
^
6
@
�
(
^
6
@
�
�
(
^
6
@
R
�
<
�
O
@
�
�
�
<
�
O
@
�
0
�
�
P
@
h
)
�
�
s
@
0
�
T
�
�
�
@
�
C
�
�
@
�
7
@
C
�
7
@
�
�
7
H
�
1
@
�
8
H
�
1
@
^
�
�
�
�
2
@
�
�
M
A
@
f
�
�
M
A
@
;
�
�
4
�
B
@
�
�
4
�
B
@
(
�
f
�
�
V
�
?
�
�
�
�
V
�
?
�
�
�
�
�
�
?
�
]
f
�
�
�
?
}
@
W
�
�
�
�
?
c
B
u
�
�
�
�
?
�
�
�
C
�
?
�
0
�
�
�
�
@
b
q
�
�
�
�
@
h
n
\
�
�
@
�
O
e
�
�
@
�
[
�
�
@
@
�
b
8
�
V
@
S
�
�
{
@
�
�
�
�
{
@
�
]
�
�
{
@
�
P
k
�
'
@
�
�
�
0
�
�
@
�
i
�
@
�
�
W
O
*
�
@
�
f
O
*
�
@
J
�
;
+
�
\
@
�
�
?
+
�
\
@
R
�
q
�
�
%
@
{
�
x
�
�
%
@
R
�
�
*
�
J
@
6
�
�
*
�
J
@
a
w
l
V
,
�
@
�
2
7
�
s
@
�
F
5
7
�
s
@
0
�
>
7
�
s
@
�
/
�
�
�
�
@
x
I
�
�
�
@
�
�
�
�
T
�
@
�
�
�
x
�
�
@
�
Z
�
�
I
b
@
�
�
�
I
b
@
�
�
�
�
I
b
@
�
:
�
�
B
o
@
�
;
�
�
B
o
@
�
�
J
�
,
�
@
(
~
y
�
_
�
@
�
�
4
�
@
�
F
y
�
�
@
�
�
h
�
v
�
@
�
�
o
�
v
�
@
6
�
�
�
�
@
�
�
�
�
�
@
�
S
z
�
�
"
@
�
�
|
�
�
"
@
�
�
�
�
�
@
�
�
�
�
�
�
@
�
�
�
�
�
�
@
�
�
�
�
@
�
�
�
�
�
�
@
�
�
8
�
[
@
�
�
<
�
[
@
�
�
I
b
�
@
%
�
�
�
�
�
@
�
�
�
�
@
a
1
b
�
L
@
�
d
T
@
R
d
T
@
>
�
"
d
T
@
�
U
]
E
�
m
@
(
�
a
E
�
m
@
�
F
q
�
�
@
�
-
�
/
�
�
@
.
I
�
Y
�
@
�
�
�
Y
�
@
�
�
�
Y
�
@
�
v
:
�
@
�
�
�
�
V
'
@
h
�
�
�
V
'
@
.
P
�
�
V
'
@
�
�
_
�
.
@
�
�
T
@
Z
}
y
�
�
@
n
�
y
�
�
@
�
�
�
�
�
�
@
�
�
�
�
�
�
@
�
w
�
�
�
�
@
@
J
�
:
�
@
�
T
�
s
F
@
H
�
/
*
}
=
@
:
5
*
}
=
@
�
O
0
�
�
h
@
v
�
)
�
�
@
�
�
+
�
�
@
�
�
�
F
)
@
(
�
g
9
�
@
�
�
o
9
�
@
�
x
j
@
�
�
x
j
@
�
�
�
�
C
~
@
�
�
�
�
C
~
@
x
?
d
�
�
@
J
I
�
�
�
'
@
^
P
�
�
�
'
@
�
�
�
A
D
@
B
�
�
A
D
@
v
L
�
i
�
h
@
j
�
h
@
V
)
�
�
@
:
�
�
@
8
�
�
@
2
'
�
�
@
�
�
�
<
�
@
f
�
�
<
�
@
H
�
s
�
f
�
@
J
R
x
�
f
�
@
�
F
�
k
�
|
@
�
�
�
k
�
|
@
�
�
k
�
|
@
0
I
�
0
�
@
L
�
K
�
0
�
@
�
�
�
p
�
@
z
-
�
p
�
@
?
l
�
�
<
@
�
Q
�
�
|
r
@
�
�
�
c
�
@
h
�
\
:
�
�
@
,
&
0
�
@
:
�
3
�
@
Z
�
6
�
@
�
�
�
�
�
5
@
�
�
>
�
t
P
@
�
�
�
|
@
�
�
�
�
|
@
,
�
W
�
�
�
@
Z
I
�
�
�
@
�
�
�
�
�
@
�
�
!
�
�
�
@
z
F
�
s
�
@
�
(
^
6
@
�
N
(
^
6
@
�
*
(
^
6
@
�
<
�
O
@
N
"
�
<
�
O
@
�
�
�
�
P
@
<
�
(
�
�
s
@
�
3
T
�
�
�
@
�
@
�
�
@
A
�
�
7
@
D
�
�
7
@
�
�
7
H
�
1
@
�
�
8
H
�
1
@
|
J
�
�
�
2
@
5
:
�
�
M
A
@
n
Y
�
�
M
A
@
E
�
�
4
�
B
@
�
�
4
�
B
@
�
�
�
=
]
�
W
�
�
V
�
?
�
f
�
�
V
�
?
�
�
�
�
�
�
?
�
�
f
�
�
�
?
2
B
W
�
�
�
�
?
@
u
�
�
�
�
?
C
W
�
C
�
?
%
�
�
�
�
�
@
�
0
�
�
�
�
@
�
�
X
�
�
@
H
n
\
�
�
@
[
�
�
@
@
2
�
g
8
�
V
@
�
�
�
�
{
@
r
]
�
�
{
@
B
�
�
{
@
x
�
v
�
'
@
t
�
�
0
�
�
@
�
v
�
@
�
�
W
O
*
�
@
�
f
O
*
�
@
5
&
9
+
�
\
@
�
�
;
+
�
\
@
q
#
m
�
�
%
@
�
�
q
�
�
%
@
�
�
�
*
�
J
@
�
�
�
*
�
J
@
�
Y
m
V
,
�
@
�
2
7
�
s
@
�
F
5
7
�
s
@
�
�
>
7
�
s
@
h
�
�
�
�
�
@
/
�
�
�
�
@
[
-
�
�
T
�
@
b
�
�
x
�
�
@
-
�
�
I
b
@
�
�
�
�
I
b
@
2
�
�
�
I
b
@
V
�
�
�
B
o
@
�
;
�
�
B
o
@
�
�
J
�
,
�
@
Y
|
�
_
�
@
�
�
4
�
@
L
y
�
�
@
�
h
�
v
�
@
H
�
o
�
v
�
@
h
�
�
�
�
@
f
�
�
�
�
@
!
y
�
�
"
@
T
z
�
�
"
@
�
f
�
�
�
�
@
�
�
�
�
�
@
;
�
�
�
�
�
@
�
\
~
�
�
�
@
�
�
�
�
@
6
�
6
�
[
@
�
�
8
�
[
@
�
I
b
�
@
v
�
�
�
�
�
@
�
�
�
�
�
@
3
3
b
�
L
@
�
d
T
@
2
d
T
@
�
�
"
d
T
@
�
'
\
E
�
m
@
�
U
]
E
�
m
@
�
F
q
�
�
@
,
�
�
/
�
�
@
�
�
�
Y
�
@
2
�
�
Y
�
@
�
�
�
Y
�
@
>
v
:
�
@
`
�
�
�
V
'
@
�
O
�
�
V
'
@
P
�
�
V
'
@
�
�
_
�
.
@
\
�
�
T
@
<
�
x
�
�
@
8
}
y
�
�
@
�
�
�
�
�
�
@
r
w
�
�
�
�
@
(
b
�
�
�
�
@
�
6
�
:
�
@
~
T
�
s
F
@
d
�
/
*
}
=
@
�
5
*
}
=
@
|
5
�
�
h
@
n
�
(
�
�
@
z
�
)
�
�
@
�
*
�
F
)
@
�
�
g
9
�
@
H
�
o
9
�
@
�
x
j
@
,
�
x
j
@
@
h
�
�
C
~
@
�
�
�
C
~
@
�
e
�
�
@
n
w
�
�
�
'
@
N
I
�
�
�
'
@
�
�
A
D
@
�
�
�
A
D
@
�
O
�
i
�
h
@
0
L
�
i
�
h
@
\
]
)
�
�
@
D
�
�
@
�
�
@
�
&
�
�
@
v
�
�
<
�
@
@
�
�
<
�
@
�
r
�
f
�
@
H
�
s
�
f
�
@
�
F
�
k
�
|
@
�
�
�
k
�
|
@
h
�
�
k
�
|
@
�
F
�
0
�
@
�
I
�
0
�
@
�
�
�
p
�
@
�
�
�
p
�
@
�
>
l
�
�
<
@
�
�
�
�
|
r
@
�
�
�
�
c
�
@
�
�
\
:
�
�
@
�
3
�
@
�
�
6
�
@
�
�
8
�
@
�
�
�
�
�
5
@
�
A
�
t
P
@
b
$
�
�
|
@
�
�
�
�
|
@
�
W
�
�
�
@
�
�
�
�
�
@
8
�
!
�
�
�
@
�
#
�
�
�
@
�
F
�
s
�
@
�
N
(
^
6
@
h
*
(
^
6
@
(
^
6
@
,
�
<
�
O
@
�
!
�
<
�
O
@
t
}
�
�
P
@
�
�
*
�
�
s
@
�
3
T
�
�
�
@
�
.
D
�
�
@
;
�
�
7
@
�
�
�
7
@
j
7
H
�
1
@
�
�
7
H
�
1
@
�
�
�
�
2
@
u
�
�
�
M
A
@
(
:
�
�
M
A
@
c
�
�
4
�
B
@
�
�
�
4
�
B
@
�
�
�
=
�
�
u
�
�
V
�
?
�
�
�
�
V
�
?
E
�
�
�
�
�
?
F
�
f
�
�
�
?
�
]
X
�
�
�
�
?
d
o
�
�
�
�
?
�
�
�
C
�
?
�
�
�
�
�
�
@
�
�
�
�
�
�
@
�
�
`
�
�
@
*
g
�
�
@
�
�
�
@
@
?
x
_
8
�
V
@
�
F
�
�
{
@
�
�
�
�
{
@
�
�
�
{
@
m
r
k
�
'
@
�
�
�
0
�
�
@
a
j
�
@
�
X
X
O
*
�
@
c
O
*
�
@
�
�
?
+
�
\
@
~
�
C
+
�
\
@
|
P
t
�
�
%
@
�
<
{
�
�
%
@
b
�
*
�
J
@
^
b
�
*
�
J
@
�
K
k
V
,
�
@
�
/
7
�
s
@
�
�
9
7
�
s
@
�
W
@
7
�
s
@
�
�
�
�
�
�
@
(
�
�
�
�
@
�
�
�
�
T
�
@
�
Q
�
x
�
�
@
�
�
�
�
I
b
@
�
�
�
�
I
b
@
�
�
�
�
I
b
@
T
�
�
�
B
o
@
�
�
�
B
o
@
�
K
�
,
�
@
�
�
w
�
_
�
@
�
�
�
4
�
@
=
F
y
�
�
@
{
i
�
v
�
@
-
n
�
v
�
@
)
�
�
�
�
@
�
�
�
�
�
@
;
�
|
�
�
"
@
:
w
~
�
�
"
@
Z
o
�
�
�
�
@
�
C
�
�
�
�
@
�
�
�
�
�
�
@
�
�
�
�
�
�
@
�
�
�
�
�
�
@
K
:
�
[
@
�
�
=
�
[
@
5
b
�
I
b
�
@
l
�
�
�
�
@
Z
�
�
�
�
�
@
(
p
/
b
�
L
@
�
d
T
@
�
t
d
T
@
4
�
#
d
T
@
�
�
_
E
�
m
@
�
`
b
E
�
m
@
�
;
G
q
�
�
@
Z
�
�
/
�
�
@
l
�
�
Y
�
@
b
�
�
Y
�
@
D
�
�
Y
�
@
�
:
�
@
�
Z
�
�
V
'
@
�
*
�
�
V
'
@
L
�
�
V
'
@
�
�
_
�
.
@
�
v
�
T
@
H
�
y
�
�
@
�
�
z
�
�
@
�
n
�
�
�
�
@
x
�
�
�
�
@
H
9
�
�
�
�
@
�
@
�
:
�
@
L
�
�
s
F
@
\
�
/
*
}
=
@
:
�
3
*
}
=
@
�
N
0
�
�
h
@
�
�
+
�
�
@
`
�
-
�
�
@
�
�
�
F
)
@
�
D
h
9
�
@
n
9
�
@
�
�
x
j
@
�
�
�
x
j
@
�
�
�
C
~
@
B
�
�
�
C
~
@
L
�
c
�
�
@
�
�
�
�
'
@
�
B
�
�
�
'
@
�
9
�
A
D
@
�
;
�
A
D
@
N
Z
j
�
h
@
�
@
j
�
h
@
�
~
)
�
�
@
&
)
�
�
@
�
�
�
�
@
�
!
�
�
@
f
�
�
<
�
@
�
�
<
�
@
f
-
v
�
f
�
@
.
y
�
f
�
@
8
�
k
�
|
@
\
&
�
k
�
|
@
�
S
�
k
�
|
@
�
�
I
�
0
�
@
:
�
L
�
0
�
@
L
H
�
p
�
@
�
�
p
�
@
�
l
�
�
<
@
F
�
�
|
r
@
�
�
�
�
c
�
@
�
|
]
:
�
�
@
D
�
1
�
@
�
_
2
�
@
�
�
4
�
@
$
|
�
�
�
5
@
$
B
=
�
t
P
@
�
/
�
�
|
@
�
�
�
�
|
@
b
�
X
�
�
�
@
�
�
�
�
�
@
�
�
�
�
�
@
P
�
�
�
�
@
\
�
�
s
�
@
�
'
(
^
6
@
�
�
(
^
6
@
�
�
(
^
6
@
T
�
<
�
O
@
�
�
<
�
O
@
�
�
�
�
P
@
�
�
'
�
�
s
@
�
�
T
�
�
�
@
L
�
?
�
�
@
'
�
7
@
C
C
�
7
@
�
�
8
H
�
1
@
�
�
9
H
�
1
@
�
�
�
�
2
@
f
�
�
M
A
@
Z
�
�
M
A
@
U
�
�
4
�
B
@
�
�
4
�
B
@
�
�
�
=
]
�
W
�
�
V
�
?
�
f
�
�
V
�
?
�
�
�
�
�
�
?
�
�
f
�
�
�
?
2
B
W
�
�
�
�
?
@
u
�
�
�
�
?
C
W
�
C
�
?
%
�
�
�
�
�
@
�
0
�
�
�
�
@
�
�
X
�
�
@
H
n
\
�
�
@
[
�
�
@
@
2
�
g
8
�
V
@
�
�
�
�
{
@
r
]
�
�
{
@
B
�
�
{
@
x
�
v
�
'
@
t
�
�
0
�
�
@
�
v
�
@
�
�
W
O
*
�
@
�
f
O
*
�
@
5
&
9
+
�
\
@
�
�
;
+
�
\
@
q
#
m
�
�
%
@
�
�
q
�
�
%
@
�
�
�
*
�
J
@
�
�
�
*
�
J
@
�
Y
m
V
,
�
@
�
2
7
�
s
@
�
F
5
7
�
s
@
�
�
>
7
�
s
@
h
�
�
�
�
�
@
/
�
�
�
�
@
[
-
�
�
T
�
@
b
�
�
x
�
�
@
-
�
�
I
b
@
�
�
�
�
I
b
@
2
�
�
�
I
b
@
V
�
�
�
B
o
@
�
;
�
�
B
o
@
�
�
J
�
,
�
@
Y
|
�
_
�
@
�
�
4
�
@
L
y
�
�
@
�
h
�
v
�
@
H
�
o
�
v
�
@
h
�
�
�
�
@
f
�
�
�
�
@
!
y
�
�
"
@
T
z
�
�
"
@
�
f
�
�
�
�
@
�
�
�
�
�
@
;
�
�
�
�
�
@
�
\
~
�
�
�
@
�
�
�
�
@
6
�
6
�
[
@
�
�
8
�
[
@
�
I
b
�
@
v
�
�
�
�
�
@
�
�
�
�
�
@
3
3
b
�
L
@
�
d
T
@
2
d
T
@
�
�
"
d
T
@
�
'
\
E
�
m
@
�
U
]
E
�
m
@
�
F
q
�
�
@
,
�
�
/
�
�
@
�
�
�
Y
�
@
2
�
�
Y
�
@
�
�
�
Y
�
@
>
v
:
�
@
`
�
�
�
V
'
@
�
O
�
�
V
'
@
P
�
�
V
'
@
�
�
_
�
.
@
\
�
�
T
@
<
�
x
�
�
@
8
}
y
�
�
@
�
�
�
�
�
�
@
r
w
�
�
�
�
@
(
b
�
�
�
�
@
�
6
�
:
�
@
~
T
�
s
F
@
d
�
/
*
}
=
@
�
5
*
}
=
@
|
5
�
�
h
@
n
�
(
�
�
@
z
�
)
�
�
@
�
*
�
F
)
@
�
�
g
9
�
@
H
�
o
9
�
@
�
x
j
@
,
�
x
j
@
@
h
�
�
C
~
@
�
�
�
C
~
@
�
e
�
�
@
n
w
�
�
�
'
@
N
I
�
�
�
'
@
�
�
A
D
@
�
�
�
A
D
@
�
O
�
i
�
h
@
0
L
�
i
�
h
@
\
]
)
�
�
@
D
�
�
@
�
�
@
�
&
�
�
@
v
�
�
<
�
@
@
�
�
<
�
@
�
r
�
f
�
@
H
�
s
�
f
�
@
�
F
�
k
�
|
@
�
�
�
k
�
|
@
h
�
�
k
�
|
@
�
F
�
0
�
@
�
I
�
0
�
@
�
�
�
p
�
@
�
�
�
p
�
@
�
>
l
�
�
<
@
�
�
�
�
|
r
@
�
�
�
�
c
�
@
�
�
\
:
�
�
@
�
3
�
@
�
�
6
�
@
�
�
8
�
@
�
�
�
�
�
5
@
�
A
�
t
P
@
b
$
�
�
|
@
�
�
�
�
|
@
�
W
�
�
�
@
�
�
�
�
�
@
8
�
!
�
�
�
@
�
#
�
�
�
@
�
F
�
s
�
@
�
N
(
^
6
@
h
*
(
^
6
@
(
^
6
@
,
�
<
�
O
@
�
!
�
<
�
O
@
t
}
�
�
P
@
�
�
*
�
�
s
@
�
3
T
�
�
�
@
�
.
D
�
�
@
;
�
�
7
@
�
�
�
7
@
j
7
H
�
1
@
�
�
7
H
�
1
@
�
�
�
�
2
@
u
�
�
�
M
A
@
(
:
�
�
M
A
@
c
�
�
4
�
B
@
�
�
�
4
�
B
@
�
�
�
=
�
�
u
�
�
V
�
?
�
�
�
�
V
�
?
E
�
�
�
�
�
?
F
�
f
�
�
�
?
�
]
X
�
�
�
�
?
d
o
�
�
�
�
?
�
�
�
C
�
?
�
�
�
�
�
�
@
�
�
�
�
�
�
@
�
�
`
�
�
@
*
g
�
�
@
�
�
�
@
@
?
x
_
8
�
V
@
�
F
�
�
{
@
�
�
�
�
{
@
�
�
�
{
@
m
r
k
�
'
@
�
�
�
0
�
�
@
a
j
�
@
�
X
X
O
*
�
@
c
O
*
�
@
�
�
?
+
�
\
@
~
�
C
+
�
\
@
|
P
t
�
�
%
@
�
<
{
�
�
%
@
b
�
*
�
J
@
^
b
�
*
�
J
@
�
K
k
V
,
�
@
�
/
7
�
s
@
�
�
9
7
�
s
@
�
W
@
7
�
s
@
�
�
�
�
�
�
@
(
�
�
�
�
@
�
�
�
�
T
�
@
�
Q
�
x
�
�
@
�
�
�
�
I
b
@
�
�
�
�
I
b
@
�
�
�
�
I
b
@
T
�
�
�
B
o
@
�
�
�
B
o
@
�
K
�
,
�
@
�
�
w
�
_
�
@
�
�
�
4
�
@
=
F
y
�
�
@
{
i
�
v
�
@
-
n
�
v
�
@
)
�
�
�
�
@
�
�
�
�
�
@
;
�
|
�
�
"
@
:
w
~
�
�
"
@
Z
o
�
�
�
�
@
�
C
�
�
�
�
@
�
�
�
�
�
�
@
�
�
�
�
�
�
@
�
�
�
�
�
�
@
K
:
�
[
@
�
�
=
�
[
@
5
b
�
I
b
�
@
l
�
�
�
�
@
Z
�
�
�
�
�
@
(
p
/
b
�
L
@
�
d
T
@
�
t
d
T
@
4
�
#
d
T
@
�
�
_
E
�
m
@
�
`
b
E
�
m
@
�
;
G
q
�
�
@
Z
�
�
/
�
�
@
l
�
�
Y
�
@
b
�
�
Y
�
@
D
�
�
Y
�
@
�
:
�
@
�
Z
�
�
V
'
@
�
*
�
�
V
'
@
L
�
�
V
'
@
�
�
_
�
.
@
�
v
�
T
@
H
�
y
�
�
@
�
�
z
�
�
@
�
n
�
�
�
�
@
x
�
�
�
�
@
H
9
�
�
�
�
@
�
@
�
:
�
@
L
�
�
s
F
@
\
�
/
*
}
=
@
:
�
3
*
}
=
@
�
N
0
�
�
h
@
�
�
+
�
�
@
`
�
-
�
�
@
�
�
�
F
)
@
�
D
h
9
�
@
n
9
�
@
�
�
x
j
@
�
�
�
x
j
@
�
�
�
C
~
@
B
�
�
�
C
~
@
L
�
c
�
�
@
�
�
�
�
'
@
�
B
�
�
�
'
@
�
9
�
A
D
@
�
;
�
A
D
@
N
Z
j
�
h
@
�
@
j
�
h
@
�
~
)
�
�
@
&
)
�
�
@
�
�
�
�
@
�
!
�
�
@
f
�
�
<
�
@
�
�
<
�
@
f
-
v
�
f
�
@
.
y
�
f
�
@
8
�
k
�
|
@
\
&
�
k
�
|
@
�
S
�
k
�
|
@
�
�
I
�
0
�
@
:
�
L
�
0
�
@
L
H
�
p
�
@
�
�
p
�
@
�
l
�
�
<
@
F
�
�
|
r
@
�
�
�
�
c
�
@
�
|
]
:
�
�
@
D
�
1
�
@
�
_
2
�
@
�
�
4
�
@
$
|
�
�
�
5
@
$
B
=
�
t
P
@
�
/
�
�
|
@
�
�
�
�
|
@
b
�
X
�
�
�
@
�
�
�
�
�
@
�
�
�
�
�
@
P
�
�
�
�
@
\
�
�
s
�
@
�
'
(
^
6
@
�
�
(
^
6
@
�
�
(
^
6
@
T
�
<
�
O
@
�
�
<
�
O
@
�
�
�
�
P
@
�
�
'
�
�
s
@
�
�
T
�
�
�
@
L
�
?
�
�
@
'
�
7
@
C
C
�
7
@
�
�
8
H
�
1
@
�
�
9
H
�
1
@
�
�
�
�
2
@
f
�
�
M
A
@
Z
�
�
M
A
@
U
�
�
4
�
B
@
�
�
4
�
B
@
�
�
�
�
V
�
?
�
�
f
�
�
�
?
^
]
X
�
�
�
�
?
)
�
�
�
�
�
@
�
g
�
�
@
E
�
]
8
�
V
@
�
F
�
�
{
@
�
�
�
�
{
@
�
X
X
O
*
�
@
8
�
C
+
�
\
@
�
n
F
+
�
\
@
�
;
{
�
�
%
@
�
a
�
*
�
J
@
T
�
9
7
�
s
@
M
V
@
7
�
s
@
4
�
�
�
�
@
�
c
�
�
T
�
@
�
�
�
�
I
b
@
�
�
�
�
I
b
@
E
�
�
B
o
@
�
�
K
�
,
�
@
T
w
�
_
�
@
v
i
�
v
�
@
�
�
�
�
@
�
v
~
�
�
"
@
�
�
�
�
"
@
�
C
�
�
�
�
@
�
�
�
�
�
�
@
�
�
=
�
[
@
�
�
�
�
�
�
@
�
�
.
b
�
L
@
�
t
d
T
@
�
�
#
d
T
@
�
_
b
E
�
m
@
�
�
/
�
�
@
~
�
�
Y
�
@
`
�
�
Y
�
@
�
Z
�
�
V
'
@
�
*
�
�
V
'
@
�
�
�
_
�
.
@
j
�
�
T
@
�
�
z
�
�
@
�
n
�
�
�
�
@
v
�
�
�
�
@
N
�
/
*
}
=
@
�
�
-
�
�
@
�
/
�
�
@
�
D
h
9
�
@
z
n
9
�
@
�
�
x
j
@
"
�
�
�
C
~
@
�
/
�
�
C
~
@
b
c
�
�
@
t
B
�
�
�
'
@
�
;
�
A
D
@
�
?
j
�
h
@
�
�
�
�
@
�
�
�
@
�
e
�
�
<
�
@
�
y
�
f
�
@
V
&
�
k
�
|
@
�
R
�
k
�
|
@
b
�
L
�
0
�
@
4
�
p
�
@
<
6
�
�
|
r
@
�
�
�
c
�
@
�
�
1
�
@
�
_
2
�
@
|
�
�
�
5
@
�
<
�
t
P
@
�
�
�
�
|
@
|
�
�
�
�
@
f
�
�
�
�
@
n
'
(
^
6
@
�
�
(
^
6
@
X
�
<
�
O
@
X
+
'
�
�
s
@
&
�
7
@
#
�
9
H
�
1
@
R
U
:
H
�
1
@
�
Y
�
�
M
A
@
>
�
�
�
M
A
@
Z
�
�
4
�
B
@
�
�
W
�
�
V
�
?
�
#
f
�
�
�
?
�
>
u
�
�
�
�
?
l
�
�
�
�
�
@
�
�
X
�
�
@
�
�
k
8
�
V
@
P
]
�
�
{
@
A
�
�
{
@
f
O
*
�
@
C
�
8
+
�
\
@
W
&
9
+
�
\
@
u
#
m
�
�
%
@
�
�
�
*
�
J
@
�
2
7
�
s
@
�
F
5
7
�
s
@
�
�
�
�
�
�
@
�
O
�
�
T
�
@
�
�
�
�
I
b
@
�
�
�
�
I
b
@
i
�
�
�
B
o
@
N
�
J
�
,
�
@
`
I
~
�
_
�
@
�
�
o
�
v
�
@
�
�
�
�
�
@
�
�
x
�
�
"
@
�
!
y
�
�
"
@
�
�
�
�
�
@
�
\
~
�
�
�
@
�
�
6
�
[
@
�
�
�
�
�
�
@
H
�
4
b
�
L
@
�
�
d
T
@
d
T
@
�
'
\
E
�
m
@
�
�
�
/
�
�
@
�
�
�
Y
�
@
�
�
�
Y
�
@
b
O
�
�
V
'
@
6
O
�
�
V
'
@
l
�
_
�
.
@
4
�
�
T
@
�
x
�
�
@
w
�
�
�
�
@
@
a
�
�
�
�
@
�
5
*
}
=
@
�
B
(
�
�
@
�
�
(
�
�
@
�
g
9
�
@
�
�
o
9
�
@
�
�
x
j
@
�
h
�
�
C
~
@
�
p
�
�
C
~
@
�
�
e
�
�
@
p
w
�
�
�
'
@
�
�
A
D
@
P
�
i
�
h
@
X
�
�
@
�
�
�
�
@
R
�
�
<
�
@
�
r
�
f
�
@
�
F
�
k
�
|
@
�
�
�
k
�
|
@
,
�
F
�
0
�
@
�
�
�
p
�
@
�
�
�
�
|
r
@
�
�
�
c
�
@
,
�
6
�
@
�
�
8
�
@
�
�
�
�
�
5
@
k
C
�
t
P
@
8
$
�
�
|
@
�
�
!
�
�
�
@
�
#
�
�
�
@
�
)
(
^
6
@
:
(
^
6
@
�
�
<
�
O
@
�
:
,
�
�
s
@
�
�
�
7
@
�
6
H
�
1
@
x
7
H
�
1
@
J
�
�
�
M
A
@
n
�
�
�
M
A
@
3
�
�
4
�
B
@
�
�
�
=
]
�
W
�
�
V
�
?
�
f
�
�
V
�
?
�
�
�
�
�
�
?
�
�
f
�
�
�
?
2
B
W
�
�
�
�
?
@
u
�
�
�
�
?
C
W
�
C
�
?
%
�
�
�
�
�
@
�
0
�
�
�
�
@
�
�
X
�
�
@
H
n
\
�
�
@
[
�
�
@
@
2
�
g
8
�
V
@
�
�
�
�
{
@
r
]
�
�
{
@
B
�
�
{
@
x
�
v
�
'
@
t
�
�
0
�
�
@
�
v
�
@
�
�
W
O
*
�
@
�
f
O
*
�
@
5
&
9
+
�
\
@
�
�
;
+
�
\
@
q
#
m
�
�
%
@
�
�
q
�
�
%
@
�
�
�
*
�
J
@
�
�
�
*
�
J
@
�
Y
m
V
,
�
@
�
2
7
�
s
@
�
F
5
7
�
s
@
�
�
>
7
�
s
@
h
�
�
�
�
�
@
/
�
�
�
�
@
[
-
�
�
T
�
@
b
�
�
x
�
�
@
-
�
�
I
b
@
�
�
�
�
I
b
@
2
�
�
�
I
b
@
V
�
�
�
B
o
@
�
;
�
�
B
o
@
�
�
J
�
,
�
@
Y
|
�
_
�
@
�
�
4
�
@
L
y
�
�
@
�
h
�
v
�
@
H
�
o
�
v
�
@
h
�
�
�
�
@
f
�
�
�
�
@
!
y
�
�
"
@
T
z
�
�
"
@
�
f
�
�
�
�
@
�
�
�
�
�
@
;
�
�
�
�
�
@
�
\
~
�
�
�
@
�
�
�
�
@
6
�
6
�
[
@
�
�
8
�
[
@
�
I
b
�
@
v
�
�
�
�
�
@
�
�
�
�
�
@
3
3
b
�
L
@
�
d
T
@
2
d
T
@
�
�
"
d
T
@
�
'
\
E
�
m
@
�
U
]
E
�
m
@
�
F
q
�
�
@
,
�
�
/
�
�
@
�
�
�
Y
�
@
2
�
�
Y
�
@
�
�
�
Y
�
@
>
v
:
�
@
`
�
�
�
V
'
@
�
O
�
�
V
'
@
P
�
�
V
'
@
�
�
_
�
.
@
\
�
�
T
@
<
�
x
�
�
@
8
}
y
�
�
@
�
�
�
�
�
�
@
r
w
�
�
�
�
@
(
b
�
�
�
�
@
�
6
�
:
�
@
~
T
�
s
F
@
d
�
/
*
}
=
@
�
5
*
}
=
@
|
5
�
�
h
@
n
�
(
�
�
@
z
�
)
�
�
@
�
*
�
F
)
@
�
�
g
9
�
@
H
�
o
9
�
@
�
x
j
@
,
�
x
j
@
@
h
�
�
C
~
@
�
�
�
C
~
@
�
e
�
�
@
n
w
�
�
�
'
@
N
I
�
�
�
'
@
�
�
A
D
@
�
�
�
A
D
@
�
O
�
i
�
h
@
0
L
�
i
�
h
@
\
]
)
�
�
@
D
�
�
@
�
�
@
�
&
�
�
@
v
�
�
<
�
@
@
�
�
<
�
@
�
r
�
f
�
@
H
�
s
�
f
�
@
�
F
�
k
�
|
@
�
�
�
k
�
|
@
h
�
�
k
�
|
@
�
F
�
0
�
@
�
I
�
0
�
@
�
�
�
p
�
@
�
�
�
p
�
@
�
>
l
�
�
<
@
�
�
�
�
|
r
@
�
�
�
�
c
�
@
�
�
\
:
�
�
@
�
3
�
@
�
�
6
�
@
�
�
8
�
@
�
�
�
�
�
5
@
�
A
�
t
P
@
b
$
�
�
|
@
�
�
�
�
|
@
�
W
�
�
�
@
�
�
�
�
�
@
8
�
!
�
�
�
@
�
#
�
�
�
@
�
F
�
s
�
@
�
N
(
^
6
@
h
*
(
^
6
@
(
^
6
@
,
�
<
�
O
@
�
!
�
<
�
O
@
t
}
�
�
P
@
�
�
*
�
�
s
@
�
3
T
�
�
�
@
�
.
D
�
�
@
;
�
�
7
@
�
�
�
7
@
j
7
H
�
1
@
�
�
7
H
�
1
@
�
�
�
�
2
@
u
�
�
�
M
A
@
(
:
�
�
M
A
@
c
�
�
4
�
B
@
�
�
�
4
�
B
@
�
�
�
=
�
�
u
�
�
V
�
?
�
�
�
�
V
�
?
E
�
�
�
�
�
?
F
�
f
�
�
�
?
�
]
X
�
�
�
�
?
d
o
�
�
�
�
?
�
�
�
C
�
?
�
�
�
�
�
�
@
�
�
�
�
�
�
@
�
�
`
�
�
@
*
g
�
�
@
�
�
�
@
@
?
x
_
8
�
V
@
�
F
�
�
{
@
�
�
�
�
{
@
�
�
�
{
@
m
r
k
�
'
@
�
�
�
0
�
�
@
a
j
�
@
�
X
X
O
*
�
@
c
O
*
�
@
�
�
?
+
�
\
@
~
�
C
+
�
\
@
|
P
t
�
�
%
@
�
<
{
�
�
%
@
b
�
*
�
J
@
^
b
�
*
�
J
@
�
K
k
V
,
�
@
�
/
7
�
s
@
�
�
9
7
�
s
@
�
W
@
7
�
s
@
�
�
�
�
�
�
@
(
�
�
�
�
@
�
�
�
�
T
�
@
�
Q
�
x
�
�
@
�
�
�
�
I
b
@
�
�
�
�
I
b
@
�
�
�
�
I
b
@
T
�
�
�
B
o
@
�
�
�
B
o
@
�
K
�
,
�
@
�
�
w
�
_
�
@
�
�
�
4
�
@
=
F
y
�
�
@
{
i
�
v
�
@
-
n
�
v
�
@
)
�
�
�
�
@
�
�
�
�
�
@
;
�
|
�
�
"
@
:
w
~
�
�
"
@
Z
o
�
�
�
�
@
�
C
�
�
�
�
@
�
�
�
�
�
�
@
�
�
�
�
�
�
@
�
�
�
�
�
�
@
K
:
�
[
@
�
�
=
�
[
@
5
b
�
I
b
�
@
l
�
�
�
�
@
Z
�
�
�
�
�
@
(
p
/
b
�
L
@
�
d
T
@
�
t
d
T
@
4
�
#
d
T
@
�
�
_
E
�
m
@
�
`
b
E
�
m
@
�
;
G
q
�
�
@
Z
�
�
/
�
�
@
l
�
�
Y
�
@
b
�
�
Y
�
@
D
�
�
Y
�
@
�
:
�
@
�
Z
�
�
V
'
@
�
*
�
�
V
'
@
L
�
�
V
'
@
�
�
_
�
.
@
�
v
�
T
@
H
�
y
�
�
@
�
�
z
�
�
@
�
n
�
�
�
�
@
x
�
�
�
�
@
H
9
�
�
�
�
@
�
@
�
:
�
@
L
�
�
s
F
@
\
�
/
*
}
=
@
:
�
3
*
}
=
@
�
N
0
�
�
h
@
�
�
+
�
�
@
`
�
-
�
�
@
�
�
�
F
)
@
�
D
h
9
�
@
n
9
�
@
�
�
x
j
@
�
�
�
x
j
@
�
�
�
C
~
@
B
�
�
�
C
~
@
L
�
c
�
�
@
�
�
�
�
'
@
�
B
�
�
�
'
@
�
9
�
A
D
@
�
;
�
A
D
@
N
Z
j
�
h
@
�
@
j
�
h
@
�
~
)
�
�
@
&
)
�
�
@
�
�
�
�
@
�
!
�
�
@
f
�
�
<
�
@
�
�
<
�
@
f
-
v
�
f
�
@
.
y
�
f
�
@
8
�
k
�
|
@
\
&
�
k
�
|
@
�
S
�
k
�
|
@
�
�
I
�
0
�
@
:
�
L
�
0
�
@
L
H
�
p
�
@
�
�
p
�
@
�
l
�
�
<
@
F
�
�
|
r
@
�
�
�
�
c
�
@
�
|
]
:
�
�
@
D
�
1
�
@
�
_
2
�
@
�
�
4
�
@
$
|
�
�
�
5
@
$
B
=
�
t
P
@
�
/
�
�
|
@
�
�
�
�
|
@
b
�
X
�
�
�
@
�
�
�
�
�
@
�
�
�
�
�
@
P
�
�
�
�
@
\
�
�
s
�
@
�
'
(
^
6
@
�
�
(
^
6
@
�
�
(
^
6
@
T
�
<
�
O
@
�
�
<
�
O
@
�
�
�
�
P
@
�
�
'
�
�
s
@
�
�
T
�
�
�
@
L
�
?
�
�
@
'
�
7
@
C
C
�
7
@
�
�
8
H
�
1
@
�
�
9
H
�
1
@
�
�
�
�
2
@
f
�
�
M
A
@
Z
�
�
M
A
@
U
�
�
4
�
B
@
�
�
4
�
B
@
�
�
�
�
V
�
?
�
�
f
�
�
�
?
^
]
X
�
�
�
�
?
)
�
�
�
�
�
@
�
g
�
�
@
E
�
]
8
�
V
@
�
F
�
�
{
@
�
�
�
�
{
@
�
X
X
O
*
�
@
8
�
C
+
�
\
@
�
n
F
+
�
\
@
�
;
{
�
�
%
@
�
a
�
*
�
J
@
T
�
9
7
�
s
@
M
V
@
7
�
s
@
4
�
�
�
�
@
�
c
�
�
T
�
@
�
�
�
�
I
b
@
�
�
�
�
I
b
@
E
�
�
B
o
@
�
�
K
�
,
�
@
T
w
�
_
�
@
v
i
�
v
�
@
�
�
�
�
@
�
v
~
�
�
"
@
�
�
�
�
"
@
�
C
�
�
�
�
@
�
�
�
�
�
�
@
�
�
=
�
[
@
�
�
�
�
�
�
@
�
�
.
b
�
L
@
�
t
d
T
@
�
�
#
d
T
@
�
_
b
E
�
m
@
�
�
/
�
�
@
~
�
�
Y
�
@
`
�
�
Y
�
@
�
Z
�
�
V
'
@
�
*
�
�
V
'
@
�
�
�
_
�
.
@
j
�
�
T
@
�
�
z
�
�
@
�
n
�
�
�
�
@
v
�
�
�
�
@
N
�
/
*
}
=
@
�
�
-
�
�
@
�
/
�
�
@
�
D
h
9
�
@
z
n
9
�
@
�
�
x
j
@
"
�
�
�
C
~
@
�
/
�
�
C
~
@
b
c
�
�
@
t
B
�
�
�
'
@
�
;
�
A
D
@
�
?
j
�
h
@
�
�
�
�
@
�
�
�
@
�
e
�
�
<
�
@
�
y
�
f
�
@
V
&
�
k
�
|
@
�
R
�
k
�
|
@
b
�
L
�
0
�
@
4
�
p
�
@
<
6
�
�
|
r
@
�
�
�
c
�
@
�
�
1
�
@
�
_
2
�
@
|
�
�
�
5
@
�
<
�
t
P
@
�
�
�
�
|
@
|
�
�
�
�
@
f
�
�
�
�
@
n
'
(
^
6
@
�
�
(
^
6
@
X
�
<
�
O
@
X
+
'
�
�
s
@
&
�
7
@
#
�
9
H
�
1
@
R
U
:
H
�
1
@
�
Y
�
�
M
A
@
>
�
�
�
M
A
@
Z
�
�
4
�
B
@
�
�
W
�
�
V
�
?
�
#
f
�
�
�
?
�
>
u
�
�
�
�
?
l
�
�
�
�
�
@
�
�
X
�
�
@
�
�
k
8
�
V
@
P
]
�
�
{
@
A
�
�
{
@
f
O
*
�
@
C
�
8
+
�
\
@
W
&
9
+
�
\
@
u
#
m
�
�
%
@
�
�
�
*
�
J
@
�
2
7
�
s
@
�
F
5
7
�
s
@
�
�
�
�
�
�
@
�
O
�
�
T
�
@
�
�
�
�
I
b
@
�
�
�
�
I
b
@
i
�
�
�
B
o
@
N
�
J
�
,
�
@
`
I
~
�
_
�
@
�
�
o
�
v
�
@
�
�
�
�
�
@
�
�
x
�
�
"
@
�
!
y
�
�
"
@
�
�
�
�
�
@
�
\
~
�
�
�
@
�
�
6
�
[
@
�
�
�
�
�
�
@
H
�
4
b
�
L
@
�
�
d
T
@
d
T
@
�
'
\
E
�
m
@
�
�
�
/
�
�
@
�
�
�
Y
�
@
�
�
�
Y
�
@
b
O
�
�
V
'
@
6
O
�
�
V
'
@
l
�
_
�
.
@
4
�
�
T
@
�
x
�
�
@
w
�
�
�
�
@
@
a
�
�
�
�
@
�
5
*
}
=
@
�
B
(
�
�
@
�
�
(
�
�
@
�
g
9
�
@
�
�
o
9
�
@
�
�
x
j
@
�
h
�
�
C
~
@
�
p
�
�
C
~
@
�
�
e
�
�
@
p
w
�
�
�
'
@
�
�
A
D
@
P
�
i
�
h
@
X
�
�
@
�
�
�
�
@
R
�
�
<
�
@
�
r
�
f
�
@
�
F
�
k
�
|
@
�
�
�
k
�
|
@
,
�
F
�
0
�
@
�
�
�
p
�
@
�
�
�
�
|
r
@
�
�
�
c
�
@
,
�
6
�
@
�
�
8
�
@
�
�
�
�
�
5
@
k
C
�
t
P
@
8
$
�
�
|
@
�
�
!
�
�
�
@
�
#
�
�
�
@
�
)
(
^
6
@
:
(
^
6
@
�
�
<
�
O
@
�
:
,
�
�
s
@
�
�
�
7
@
�
6
H
�
1
@
x
7
H
�
1
@
J
�
�
�
M
A
@
n
�
�
�
M
A
@
3
�
�
4
�
B
@
�
�
�
�
V
�
?
�
�
f
�
�
�
?
^
]
X
�
�
�
�
?
)
�
�
�
�
�
@
�
g
�
�
@
E
�
]
8
�
V
@
�
F
�
�
{
@
�
�
�
�
{
@
�
X
X
O
*
�
@
8
�
C
+
�
\
@
�
n
F
+
�
\
@
�
;
{
�
�
%
@
�
a
�
*
�
J
@
T
�
9
7
�
s
@
M
V
@
7
�
s
@
4
�
�
�
�
@
�
c
�
�
T
�
@
�
�
�
�
I
b
@
�
�
�
�
I
b
@
E
�
�
B
o
@
�
�
K
�
,
�
@
T
w
�
_
�
@
v
i
�
v
�
@
�
�
�
�
@
�
v
~
�
�
"
@
�
�
�
�
"
@
�
C
�
�
�
�
@
�
�
�
�
�
�
@
�
�
=
�
[
@
�
�
�
�
�
�
@
�
�
.
b
�
L
@
�
t
d
T
@
�
�
#
d
T
@
�
_
b
E
�
m
@
�
�
/
�
�
@
~
�
�
Y
�
@
`
�
�
Y
�
@
�
Z
�
�
V
'
@
�
*
�
�
V
'
@
�
�
�
_
�
.
@
j
�
�
T
@
�
�
z
�
�
@
�
n
�
�
�
�
@
v
�
�
�
�
@
N
�
/
*
}
=
@
�
�
-
�
�
@
�
/
�
�
@
�
D
h
9
�
@
z
n
9
�
@
�
�
x
j
@
"
�
�
�
C
~
@
�
/
�
�
C
~
@
b
c
�
�
@
t
B
�
�
�
'
@
�
;
�
A
D
@
�
?
j
�
h
@
�
�
�
�
@
�
�
�
@
�
e
�
�
<
�
@
�
y
�
f
�
@
V
&
�
k
�
|
@
�
R
�
k
�
|
@
b
�
L
�
0
�
@
4
�
p
�
@
<
6
�
�
|
r
@
�
�
�
c
�
@
�
�
1
�
@
�
_
2
�
@
|
�
�
�
5
@
�
<
�
t
P
@
�
�
�
�
|
@
|
�
�
�
�
@
f
�
�
�
�
@
n
'
(
^
6
@
�
�
(
^
6
@
X
�
<
�
O
@
X
+
'
�
�
s
@
&
�
7
@
#
�
9
H
�
1
@
R
U
:
H
�
1
@
�
Y
�
�
M
A
@
>
�
�
�
M
A
@
Z
�
�
4
�
B
@
�
�
W
�
�
V
�
?
�
#
f
�
�
�
?
�
>
u
�
�
�
�
?
l
�
�
�
�
�
@
�
�
X
�
�
@
�
�
k
8
�
V
@
P
]
�
�
{
@
A
�
�
{
@
f
O
*
�
@
C
�
8
+
�
\
@
W
&
9
+
�
\
@
u
#
m
�
�
%
@
�
�
�
*
�
J
@
�
2
7
�
s
@
�
F
5
7
�
s
@
�
�
�
�
�
�
@
�
O
�
�
T
�
@
�
�
�
�
I
b
@
�
�
�
�
I
b
@
i
�
�
�
B
o
@
N
�
J
�
,
�
@
`
I
~
�
_
�
@
�
�
o
�
v
�
@
�
�
�
�
�
@
�
�
x
�
�
"
@
�
!
y
�
�
"
@
�
�
�
�
�
@
�
\
~
�
�
�
@
�
�
6
�
[
@
�
�
�
�
�
�
@
H
�
4
b
�
L
@
�
�
d
T
@
d
T
@
�
'
\
E
�
m
@
�
�
�
/
�
�
@
�
�
�
Y
�
@
�
�
�
Y
�
@
b
O
�
�
V
'
@
6
O
�
�
V
'
@
l
�
_
�
.
@
4
�
�
T
@
�
x
�
�
@
w
�
�
�
�
@
@
a
�
�
�
�
@
�
5
*
}
=
@
�
B
(
�
�
@
�
�
(
�
�
@
�
g
9
�
@
�
�
o
9
�
@
�
�
x
j
@
�
h
�
�
C
~
@
�
p
�
�
C
~
@
�
�
e
�
�
@
p
w
�
�
�
'
@
�
�
A
D
@
P
�
i
�
h
@
X
�
�
@
�
�
�
�
@
R
�
�
<
�
@
�
r
�
f
�
@
�
F
�
k
�
|
@
�
�
�
k
�
|
@
,
�
F
�
0
�
@
�
�
�
p
�
@
�
�
�
�
|
r
@
�
�
�
c
�
@
,
�
6
�
@
�
�
8
�
@
�
�
�
�
�
5
@
k
C
�
t
P
@
8
$
�
�
|
@
�
�
!
�
�
�
@
�
#
�
�
�
@
�
)
(
^
6
@
:
(
^
6
@
�
�
<
�
O
@
�
:
,
�
�
s
@
�
�
�
7
@
�
6
H
�
1
@
x
7
H
�
1
@
J
�
�
�
M
A
@
n
�
�
�
M
A
@
3
�
�
4
�
B
@
�
?
�
�
{
@
d
�
8
+
�
\
@
�
2
7
�
s
@
�
�
�
�
I
b
@
�
�
x
�
�
"
@
�
�
5
b
�
L
@
�
�
d
T
@
�
�
Y
�
@
j
N
�
�
V
'
@
v
`
�
�
�
�
@
C
(
�
�
@
�
�
o
9
�
@
z
q
�
�
C
~
@
l
�
�
@
�
F
�
k
�
|
@
h
�
8
�
@
�
�
#
�
�
�
@
R
(
^
6
@
I
�
6
H
�
1
@
M
�
�
�
M
A
@
�
F
�
�
{
@
�
l
F
+
�
\
@
�
T
@
7
�
s
@
�
�
�
�
I
b
@
�
�
�
"
@
"
�
.
b
�
L
@
�
�
#
d
T
@
�
�
�
Y
�
@
�
Z
�
�
V
'
@
�
n
�
�
�
�
@
/
�
�
@
:
D
h
9
�
@
B
.
�
�
C
~
@
�
�
@
$
R
�
k
�
|
@
�
�
1
�
@
�
�
�
�
�
@
�
'
(
^
6
@
�
T
:
H
�
1
@
�
�
�
M
A
@
�
�
�
�
V
�
?
�
�
f
�
�
�
?
^
]
X
�
�
�
�
?
)
�
�
�
�
�
@
�
g
�
�
@
E
�
]
8
�
V
@
�
F
�
�
{
@
�
�
�
�
{
@
�
X
X
O
*
�
@
8
�
C
+
�
\
@
�
n
F
+
�
\
@
�
;
{
�
�
%
@
�
a
�
*
�
J
@
T
�
9
7
�
s
@
M
V
@
7
�
s
@
4
�
�
�
�
@
�
c
�
�
T
�
@
�
�
�
�
I
b
@
�
�
�
�
I
b
@
E
�
�
B
o
@
�
�
K
�
,
�
@
T
w
�
_
�
@
v
i
�
v
�
@
�
�
�
�
@
�
v
~
�
�
"
@
�
�
�
�
"
@
�
C
�
�
�
�
@
�
�
�
�
�
�
@
�
�
=
�
[
@
�
�
�
�
�
�
@
�
�
.
b
�
L
@
�
t
d
T
@
�
�
#
d
T
@
�
_
b
E
�
m
@
�
�
/
�
�
@
~
�
�
Y
�
@
`
�
�
Y
�
@
�
Z
�
�
V
'
@
�
*
�
�
V
'
@
�
�
�
_
�
.
@
j
�
�
T
@
�
�
z
�
�
@
�
n
�
�
�
�
@
v
�
�
�
�
@
N
�
/
*
}
=
@
�
�
-
�
�
@
�
/
�
�
@
�
D
h
9
�
@
z
n
9
�
@
�
�
x
j
@
"
�
�
�
C
~
@
�
/
�
�
C
~
@
b
c
�
�
@
t
B
�
�
�
'
@
�
;
�
A
D
@
�
?
j
�
h
@
�
�
�
�
@
�
�
�
@
�
e
�
�
<
�
@
�
y
�
f
�
@
V
&
�
k
�
|
@
�
R
�
k
�
|
@
b
�
L
�
0
�
@
4
�
p
�
@
<
6
�
�
|
r
@
�
�
�
c
�
@
�
�
1
�
@
�
_
2
�
@
|
�
�
�
5
@
�
<
�
t
P
@
�
�
�
�
|
@
|
�
�
�
�
@
f
�
�
�
�
@
n
'
(
^
6
@
�
�
(
^
6
@
X
�
<
�
O
@
X
+
'
�
�
s
@
&
�
7
@
#
�
9
H
�
1
@
R
U
:
H
�
1
@
�
Y
�
�
M
A
@
>
�
�
�
M
A
@
Z
�
�
4
�
B
@
�
�
W
�
�
V
�
?
�
#
f
�
�
�
?
�
>
u
�
�
�
�
?
l
�
�
�
�
�
@
�
�
X
�
�
@
�
�
k
8
�
V
@
P
]
�
�
{
@
A
�
�
{
@
f
O
*
�
@
C
�
8
+
�
\
@
W
&
9
+
�
\
@
u
#
m
�
�
%
@
�
�
�
*
�
J
@
�
2
7
�
s
@
�
F
5
7
�
s
@
�
�
�
�
�
�
@
�
O
�
�
T
�
@
�
�
�
�
I
b
@
�
�
�
�
I
b
@
i
�
�
�
B
o
@
N
�
J
�
,
�
@
`
I
~
�
_
�
@
�
�
o
�
v
�
@
�
�
�
�
�
@
�
�
x
�
�
"
@
�
!
y
�
�
"
@
�
�
�
�
�
@
�
\
~
�
�
�
@
�
�
6
�
[
@
�
�
�
�
�
�
@
H
�
4
b
�
L
@
�
�
d
T
@
d
T
@
�
'
\
E
�
m
@
�
�
�
/
�
�
@
�
�
�
Y
�
@
�
�
�
Y
�
@
b
O
�
�
V
'
@
6
O
�
�
V
'
@
l
�
_
�
.
@
4
�
�
T
@
�
x
�
�
@
w
�
�
�
�
@
@
a
�
�
�
�
@
�
5
*
}
=
@
�
B
(
�
�
@
�
�
(
�
�
@
�
g
9
�
@
�
�
o
9
�
@
�
�
x
j
@
�
h
�
�
C
~
@
�
p
�
�
C
~
@
�
�
e
�
�
@
p
w
�
�
�
'
@
�
�
A
D
@
P
�
i
�
h
@
X
�
�
@
�
�
�
�
@
R
�
�
<
�
@
�
r
�
f
�
@
�
F
�
k
�
|
@
�
�
�
k
�
|
@
,
�
F
�
0
�
@
�
�
�
p
�
@
�
�
�
�
|
r
@
�
�
�
c
�
@
,
�
6
�
@
�
�
8
�
@
�
�
�
�
�
5
@
k
C
�
t
P
@
8
$
�
�
|
@
�
�
!
�
�
�
@
�
#
�
�
�
@
�
)
(
^
6
@
:
(
^
6
@
�
�
<
�
O
@
�
:
,
�
�
s
@
�
�
�
7
@
�
6
H
�
1
@
x
7
H
�
1
@
J
�
�
�
M
A
@
n
�
�
�
M
A
@
3
�
�
4
�
B
@
�
?
�
�
{
@
d
�
8
+
�
\
@
�
2
7
�
s
@
�
�
�
�
I
b
@
�
�
x
�
�
"
@
�
�
5
b
�
L
@
�
�
d
T
@
�
�
Y
�
@
j
N
�
�
V
'
@
v
`
�
�
�
�
@
C
(
�
�
@
�
�
o
9
�
@
z
q
�
�
C
~
@
l
�
�
@
�
F
�
k
�
|
@
h
�
8
�
@
�
�
#
�
�
�
@
R
(
^
6
@
I
�
6
H
�
1
@
M
�
�
�
M
A
@
�
F
�
�
{
@
�
l
F
+
�
\
@
�
T
@
7
�
s
@
�
�
�
�
I
b
@
�
�
�
"
@
"
�
.
b
�
L
@
�
�
#
d
T
@
�
�
�
Y
�
@
�
Z
�
�
V
'
@
�
n
�
�
�
�
@
/
�
�
@
:
D
h
9
�
@
B
.
�
�
C
~
@
�
�
@
$
R
�
k
�
|
@
�
�
1
�
@
�
�
�
�
�
@
�
'
(
^
6
@
�
T
:
H
�
1
@
�
�
�
M
A
@
�
?
�
�
{
@
d
�
8
+
�
\
@
�
2
7
�
s
@
�
�
�
�
I
b
@
�
�
x
�
�
"
@
�
�
5
b
�
L
@
�
�
d
T
@
�
�
Y
�
@
j
N
�
�
V
'
@
v
`
�
�
�
�
@
C
(
�
�
@
�
�
o
9
�
@
z
q
�
�
C
~
@
l
�
�
@
�
F
�
k
�
|
@
h
�
8
�
@
�
�
#
�
�
�
@
R
(
^
6
@
I
�
6
H
�
1
@
M
�
�
�
M
A
@
�
F
�
�
{
@
�
l
F
+
�
\
@
�
T
@
7
�
s
@
�
�
�
�
I
b
@
�
�
�
"
@
"
�
.
b
�
L
@
�
�
#
d
T
@
�
�
�
Y
�
@
�
Z
�
�
V
'
@
�
n
�
�
�
�
@
/
�
�
@
:
D
h
9
�
@
B
.
�
�
C
~
@
�
�
@
$
R
�
k
�
|
@
�
�
1
�
@
�
�
�
�
�
@
�
'
(
^
6
@
�
T
:
H
�
1
@
�
�
�
M
A
@
�
?
�
�
{
@
d
�
8
+
�
\
@
�
2
7
�
s
@
�
�
�
�
I
b
@
�
�
x
�
�
"
@
�
�
5
b
�
L
@
�
�
d
T
@
�
�
Y
�
@
j
N
�
�
V
'
@
v
`
�
�
�
�
@
C
(
�
�
@
�
�
o
9
�
@
z
q
�
�
C
~
@
l
�
�
@
�
F
�
k
�
|
@
h
�
8
�
@
�
�
#
�
�
�
@
R
(
^
6
@
I
�
6
H
�
1
@
M
�
�
�
M
A
@
�
F
�
�
{
@
�
l
F
+
�
\
@
�
T
@
7
�
s
@
�
�
�
�
I
b
@
�
�
�
"
@
"
�
.
b
�
L
@
�
�
#
d
T
@
�
�
�
Y
�
@
�
Z
�
�
V
'
@
�
n
�
�
�
�
@
/
�
�
@
:
D
h
9
�
@
B
.
�
�
C
~
@
�
�
@
$
R
�
k
�
|
@
�
�
1
�
@
�
�
�
�
�
@
�
'
(
^
6
@
�
T
:
H
�
1
@
�
�
�
M
A
@
'
(
�
�
�
�
�
�
�
�
�
c
d
;
<
�
�
�
�
�
�
�
!
"
#
$
%
&
'
!
"
#
$
%
&
'
(
)
*
+
,
-
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
{
|
}
~
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
!
"
#
$
%
&
'
!
"
#
$
%
&
'
(
)
*
+
,
-
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
{
|
}
~
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
(
)
*
+
,
-
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
{
|
}
~
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
!
"
#
$
%
&
'
(
)
*
+
,
-
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
{
|
}
~
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
(
)
*
+
,
-
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
{
|
}
~
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
!
"
#
$
%
&
'
(
)
*
+
,
-
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
{
|
}
~
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
!
"
#
$
%
&
'
(
)
*
+
,
-
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
{
|
}
~
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
!
"
#
$
%
&
'
(
)
*
+
,
-
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
{
|
}
~
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
!
"
#
$
%
&
'
(
)
*
+
,
-
.
/
0
1
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
!
"
#
$
%
&
'
(
)
*
+
,
-
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
{
|
}
~
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
!
"
#
$
%
&
'
(
)
*
+
,
-
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
{
|
}
~
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
!
"
#
$
%
&
'
(
)
*
+
,
-
.
/
0
1
!
"
#
$
%
&
'
(
)
*
+
,
-
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
{
|
}
~
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
!
"
#
$
%
&
'
(
)
*
+
,
-
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
{
|
}
~
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
!
"
#
$
%
&
'
(
)
*
+
,
-
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
{
|
}
~
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
!
"
#
$
%
&
'
(
)
*
+
,
-
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
{
|
}
~
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
2
3
4
5
6
7
8
9
:
;
<
=
>
?
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
{
|
}
~
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
2
3
4
5
6
7
8
9
:
;
<
=
>
?
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
{
|
}
~
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
In [ ]:
Content source: cifu9502/nrgcode
Similar notebooks: