Caromel · Henrio A Theory of Distributed Objects
Denis Caromel · Ludovic Henrio
A Theory of Distributed Objects Asynchrony – Mobility – Groups – Components Preface by Luca Cardelli
With 114 Figures and 48 Tables
123
Denis Caromel University of Nice Sophia Antipolis I3S CNRS – INRIA Institut universitaire de France 2004 Rt. des Lucioles, BP 93 06902 Sophia Antipolis Cedex, France e-mail:
[email protected]
Ludovic Henrio University of Westminster Harrow School of Computer Science Watford Rd, Northwick Park Harrow HA1 3TP, UK e-mail:
[email protected]
Library of Congress Control Number: 2005923024 Library of Congress Control Number: 2005923024
ISBN-10 3-540-20866-6 Springer Berlin Heidelberg New York ISBN-13 978-3-540-20866-2 Springer Berlin Heidelberg New York ISBN-10 3-540-20866-6 Springer Berlin Heidelberg New York ISBN-13 Springer Berlin Heidelberg Yorkor part of the material This work 978-3-540-20866-2 is subject to copyright. All rights are reserved, whether New the whole is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadThis work is subject toon copyright. areother reserved, whether the in whole part of the material casting, reproduction microfilmAllorrights in any way, and storage dataor banks. Duplication of is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadthis publication or parts thereof is permitted only under the provisions of the German Copyright Law casting, reproduction microfilm in anyand other way, and for storage in data banks. of of September 9, 1965, on in its current or version, permission use must always be Duplication obtained from this publication or parts thereof permitted only under the provisions of the German Copyright Law Springer. Violations are liable forisprosecution under the German Copyright Law. of September 9, 1965, in its current version, and permission for use must always be obtained from Springer is a part of are Springer Media Springer. Violations liable Science+Business for prosecution under the German Copyright Law. springeronline.com Springer is a part of Springer Science+Business Media © Springer-Verlag Berlin Heidelberg 2005 springeronline.com Printed in Germany © Springer-Verlag Berlin Heidelberg 2005 The usein ofGermany general descriptive names, registered names, trademarks, etc. in this publication does not Printed imply, even in the absence of a specific statement, that such names are exempt from the relevant proThe uselaws of general descriptive names, registered etc. in this publication does not tective and regulations and therefore free fornames, generaltrademarks, use. imply, even in the absence of a specific statement, that such names are exempt from the relevant proTypesetlaws by the usingand a Springer TEfree X macro package tective andauthors regulations therefore for general use. Production: LE-TEX Jelonek, Schmidt & Vöckler GbR, Leipzig Typeset by theKünkelLopka, authors using Heidelberg a Springer TEX macro package Cover design: Production: LE-TEX Jelonek, Schmidt & Vöckler GbR, Leipzig Printeddesign: on acid-free paper Heidelberg 45/3142/YL - 5 4 3 2 1 0 Cover KünkelLopka, Printed on acid-free paper
45/3142/YL - 5 4 3 2 1 0
P
U
#
U
!
!
!
!
+
+
#
Y
F
!
+
#
Y
%
+
!
#
6
G
%
A
#
A
#
M
G
!
!
M
F
M
M
6
!
O
!
O
O
#
!
6
%
q
+
#
A
#
5
+
A
O
F
A
M
O
O
O
O
s
O
#
G
+
y
M
F
#
O
O
A
z
%
%
!
Y
#
k
o
+
?
M
n
#
<
!
<
#
A
#
8
A
+
!
M
9
j
8
!
i
%
#
#
u
A
#
!
+
6
#
A
%
#
+
A
%
+
A
%
%
#
g
\
+
M
M
M
6
A
Y
#
#
g
M
%
+
6
6
A
6
g
G
#
M
M
+
Y
A
A
A
#
M
+
A
M
%
F
A
#
F
6
6
6
A
5
!
#
#
!
M
+
+
\
F
#
A
#
+
!
+
!
+
+
%
A
F
F
Y
!
%
A
0
g
!
6
+
%
6
A
M
M
%
!
G
A
M
#
F
G
F
A
.
!
#
!
Y
F
G
M
Y
+
#
Y
A
!
+
+
+
A
F
G
#
G
+
G
M
#
\
+
#
+
A
A
M
!
A
A
M
%
!
Y
M
!
+
!
#
A
M
6
!
#
v
%
Y
!
!
#
F
P
A
!
#
M
F
!
!
F
M
A
c
+
+
%
F
F
F
!
#
A
!
!
A
A
%
U
+
F
!
A
G
A
+
+
F
F
Y
A
U
A
!
U
.
!
%
9
Y
+
8
+
<
#
<
A
v
%
O
#
A
O
"
*
,
.
"
$
%
5
*
%
2
6
'
"
8
4
6
"
6
;
0
A
.
!
!
"
D
$
@
"
'
)
!
)
>
.
!
)
$
!
A
)
,
.
.
.
0
1
.
)
.
'
>
6
>
!
)
)
I
1
!
;
)
$
!
)
,
.
>
.
0
@
)
=
0
A
.
0
!
!
!
K
$
)
1
!
D
R
T
K
)
A
)
!
"
!
K
1
!
>
>
!
K
@
1
'
1
K
'
@
!
>
A
.
I
1
)
!
I
;
D
I
@
$
1
.
0
!
=
K
.
1
!
"
@
A
!
'
K
)
1
I
!
"
)
$
.
!
)
)
,
1
.
R
]
)
.
.
A
.
I
1
)
!
!
0
.
1
!
>
>
0
1
!
.
.
.
K
K
R
@
_
.
>
!
!
A
)
.
0
.
0
)
K
)
@
!
=
d
1
'
!
)
!
A
)
>
>
A
>
!
K
"
!
)
.
)
=
0
@
)
!
A
)
>
>
A
R
6
.
>
!
K
;
!
=
d
1
.
>
,
.
I
1
)
!
!
0
.
@
>
!
)
.
0
K
!
.
1
!
"
!
.
)
!
l
!
0
.
.
)
!
)
=
d
1
.
;
R
m
K
I
1
!
1
0
)
)
!
K
I
1
>
)
I
)
I
!
I
0
K
!
@
$
"
!
)
)
.
0
K
.
!
=
1
!
>
K
K
I
1
!
>
0
@
$
'
=
I
'
1
.
.
I
R
T
.
1
.
!
"
.
o
.
q
.
r
"
0
0
K
I
1
>
!
K
=
)
!
.
=
!
@
)
$
.
1
K
K
@
0
@
=
0
K
!
)
K
I
1
!
1
.
"
!
)
>
K
'
@
0
)
)
K
A
0
A
.
;
@
)
!
0
.
.
)
=
0
!
=
d
1
1
K
1
0
K
=
.
A
R
]
!
$
)
;
.
.
u )
"
.
!
)
>
>
K
_
K
I
!
)
A
.
$
0
K
!
"
)
0
)
.
;
"
0
0
)
.
.
)
=
0
)
!
!
0
.
1
!
>
0
!
=
A
;
!
0
)
K
$
!
)
I
!
.
"
1
.
K
)
.
0
1
.
;
=
I
R
)
x
!
)
!
A
D
)
>
>
>
K
;
A
>
.
!
)
$
1
1
!
!
.
.
I
1
>
0
1
!
>
.
;
$
!
.
0
"
)
!
!
0
.
D
1
)
0
0
.
0
K
1
!
>
=
!
!
)
K
D
K
!
.
0
!
)
.
I
!
0
'
'
@
!
)
!
0
1
.
)
@
!
K
!
@
@
0
@
d
R
.
@
1
!
"
1
=
K
@
1
!
1
0
)
)
D
1
0
!
R
@
{
.
>
K
.
.
l
0
K
)
@
=
I
'
1
.
.
I
!
A
)
>
=
1
!
>
.
A
K
I
1
!
1
0
)
)
0
)
$
'
@
D
1
0
!
;
I
.
0
1
1
!
1
0
)
)
1
I
!
.
!
K
$
I
.
>
K
I
@
>
0
K
K
!
0
1
!
>
.
)
!
@
.
.
=
K
R
m
!
"
>
>
!
!
A
)
;
=
I
!
"
!
)
>
K
q
!
!
"
0
1
1
)
@
.
1
K
1
!
)
=
0
!
.
!
"
@
1
!
!
A
)
>
>
A
>
!
K
;
.
@
!
"
!
)
)
>
.
1
K
0
!
1
!
0
1
!
"
)
!
A
)
>
.
R
@
u _
.
>
!
!
A
)
)
.
.
.
)
@
>
K
.
0
>
=
K
!
=
K
>
.
=
K
!
A
.
"
0
'
@
A
=
K
!
1
,
.
$
)
A
1
!
)
)
1
.
)
=
0
)
!
A
)
>
.
R
6
1
!
.
'
@
u
0
.
.
A
1
.
"
!
)
$
)
;
@
A
)
K
q
A
.
!
>
!
"
)
1
l
0
.
;
)
!
K
)
K
I
)
!
"
"
!
)
>
K
q
A
@
=
.
.
)
!
!
@
0
A
.
!
K
"
!
0
.
.
!
"
)
;
1
!
>
A
0
$
@
$
1
'
@
!
"
!
)
"
0
)
)
.
0
I
R
_
1
l
0
.
@
.
0
)
K
.
!
)
I
)
@
1
1
K
!
K
R
@
>
=
)
A
;
0
1
'
)
'
K
K
%
.
"
.
1
3
"
1
3
6
$
%
%
'
(
*
*
*
8
+
'
6
3
6
.
<
'
>
6
@
%
6
@
A
C
1
'
3
'
.
1
6
1
$
.
H
3
'
6
8
(
+
J
.
%
.
>
$
'
1
>
3
K
1
$
K
'
1
>
8
8
8
8
(
*
8
+
3
*
1
J
U
%
R
6
'
'
T
6
X
W
Z
[
<
;
[
[
[
.
c
^
*
B
[
%
'
6
c
*
C
*
1
=
3
'
6
3
'
%
*
%
3
=
$
$
"
%
)
f
$
*
'
$
*
*
%
'
$
%
]
6
$
'
'
6
$
K
]
$
$
%
%
%
U
3
$
%
$
a
/
b
;
b
;
;
>
_
$
*
'
'
'
_
/
/
[
K
%
$
-
5
*
*
3
-
^
H
*
-
3
*
`
3
%
5
$
$
*
'
$
*
-
$
^
)
]
"
]
`
B
A
'
3
K
$
3
3
$
$
%
*
3
*
%
*
3
*
%
$
$
%
C
6
5
C
-
6
$
*
B
$
'
$
B
%
'
]
%
'
-
"
$
$
'
`
5
^
/
$
;
^
]
)
C
[
B
Z
U
[
(
.
,
.
2
!
,
!
6
2
#
!
.
8
8
'
.
6
4
%
2
(
(
;
<
=
?
(
2
@
2
.
!
B
.
, !
D
F
2
.
, G
.
.
H
'
;
,
B
@
?
2
2
.
J
.
2
.
8
%
,
8
8
.
(
W
,
!
.
.
.
2
6
.
4
%
2
8
V
?
4
(
(
(
Y ,
6
.
4
, !
4
.
.
4
O
J
6
?
,
!
!
B
.
@
<
R
.
#
H
.
2
!
2
.
(
"
$
&
(
+
-
(
(
(
+
"
#
H
.
!
2
!
!
!
2
!
!
!
2
.
(
(
Y
2
!
?
,
4
.
1
F
=
!
!
.
8
.
2
!
2
.
!
;
"
3
5
"
(
"
(
+
(
"
"
(
"
$
2
.
2
;
^
.
G
9
!
<
(
*
!
2
`
2
&
"
!
O
1
8
(
.
2
!
2
!
2
`
.
!
$
!
=
O
b
F
1
:
=
.
H
(
&
#
+
&
(
(
(
(
2
>
2
b
.
D
!
H
2
R
?
=
F
!
=
4
W
b
2
2
`
?
.
!
G
D
#
2
%
!
!
=
!
B
<
?
.
!
'
;
(
(
<
.
%
<
.
!
`
!
#
#
#
%
%
&
$
(
%
$
+
(
&
(
,
(
#
#
(
&
)
-
%
%
-
$
2
$
+
&
7
.
)
4
&
(
(
#
+
#
#
/
(
(
&
:
;
<
#
#
/
?
-
)
)
$
,
-
@
E
2
#
A
4
&
<
(
(
C
H
#
(
6
&
(
7
#
?
?
L K
(
C
K (
7
@
;
J
/
D
?
)
-
$
O
Q
(
&
H
&
#
-
$
(
(
#
-
-
-
$
$
(
$
-
&
K #
U
#
(
(
&
O
K
Q
(
(
&
(
(
#
&
H
K D
7
#
[
=
$
_
(
6
]
7
(
&
#
&
,
@
A
-
_
_
C
;
-
J
)
=
c
]
7
^
#
(
=
,
_
7
#
/
D
-
(
&
-
;
/
$
$
D
-
7
(
#
7
$
%
-
D
=
7
(
#
O
c
7
#
$
%
-
D
D
_
$
<
_
<
@
H
(
@
;
_
(
7
@
O
c
7
$
%
$
)
-
J
=
#
#
#
(
K g
7
(
C
+
Q
#
&
&
C
#
-
?
-
B
C
D
C
4
.
/
2
4
C
4
F
/
?
?
=
$
O
C
c
(
2
-
)
D
-
?
-
<
&
&
D
-
/
/
2
4
C
4
F
/
_
#
(
C
H
+
(
D
-
-
$
-
_
(
4
#
@
(
C
^
+
(
C
Q
&
#
+
#
(
D
D
D
J
-
D
(
D
(
_
(
(
#
#
(
C
(
K
#
(
C
7
#
D
D
%
%
#
(
/
*
6
(
9
#
(
:
<
/
<
0
1
*
3
(
*
*
?
@
<
3
<
*
/
0
1
?
*
E
<
E
<
3
5
5
3
5
<
F
#
/
0
1
I
5
<
J
6
6
J
*
#
6
N
5
!
"
&
:
6
/
0
1
?
6
5
S
*
U
*
? E
6
I
5
6
*
6
?
6
3
5
? 3
6
*
<
W
5
?
*
*
E
E
? E
6
5
6
*
:
<
<
5
5
!
+
&
.
1
2
&
4
5
3
3
<
#
?
Y
U
*
? Z
U
E
*
E
#
\
3
3
[
*
E
8
(
<
*
\
;
=
>
"
_
.
:
&
*
"
&
8
(
<
*
&
&
@
A
;
>
C
;
@
@
(
*
:
*
3
(
[
(
4
*
A
&
#
#
/
0
1
a
<
*
E
W
I
5
*
;
@
[
#
*
:
5
#
*
*
F
? <
6
6
<
*
(
#
/
0
1
3
5
*
6
E
5
H
*
&
:
E
*
1
*
0
E
E
:
*
U
&
*
N
f
:
<
<
*
:
Y
*
*
(
(
I
I
3
5
#
*
*
E
9
*
W
6
*
(
#
E
E
*
(
3
5
*
*
E
8
E
5
*
8
a
<
$
&
(
)
,
-
,
-
#
/
)
0
-
1
2
0
4
5
2
0
6
-
1
-
-
2
/
"
#
;
<
=
?
-
2
@
0
$
2
0
?
2
D
#
$
/
F
(
0
)
4 $
)
F
'
F
0
)
?
*
1
D
*
1
?
0
1
?
0
)
?
,
0
0
0
2
,
,
J
,
$
/
*
0
0
,
-
1
2
;
-
-
0
2
-
-
-
$
D
F
,
2
D
0
P
0
P
;
;
;
;
-
-
2
2
0
0
$
1
#
0
$
,
4
-
2
3
0
-
?
-
5
D
D
$
0
3
$
D
2
D
2
2
D
@
D
0
2
2
5
0
0
/
4 #
)
6
4
'
*
*
8
(
#
#
#
-
4
#
)
(
&
,
<
B
-
F
>
D
,
?
2
<
=
"
?
D
D
?
(
-
)
4
<
*
;
4
)
@
<
-
@
#
?
-
2
0
)
'
D
,
?
8
"
,
D
2
)
)
&
2
?
D
(
'
4
*
8
"
*
D
D
E
$
$
2
,
?
,
0
4
&
-
D
0
d
D
2
,
0
-
D
,
,
-
4
D
D
-
,
5
?
0
D
?
?
2
?
,
-
D
C
?
$
?
5
F
0
4
?
2
#
/
*
,
2
0
2
D
?
D
=
=
&
D
,
D
?
<
,
D
2
D
2
0
,
5
F
5
3
)
0
)
5
2
?
$
-
)
6
3
-
5
2
0
2
5
1
#
$
#
#
$
#
#
$
#
$
$
,
0
&
d
,
0
4
,
-
?
D
,
?
0
,
<
4 -
i
0
;
D
1
?
-
<
k
2
0
;
<
5
=
"
F
?
0
8
'
4
#
$
$
/
F
$
$
-
$
2
-
6
0
$
,
D
?
F
-
2
?
@
?
-
2
-
2
@
?
;
<
=
?
-
@
P
5
5
,
-
<
D
,
-
,
$
$
$
$
E
/
1 #
/
*
"
#
!
!
%
)
#
!
#
!
!
#
!
%
'
#
#
'
.
+
%
)
0
0
2
!
6
8
!
)
9
:
#
!
'
.
@
A
,
%
=
#
!
?
0
6
8
*
#
'
%
'
#
+
C
)
#
D
=
8
?
F #
0
8
#
!
0
6
)
=
#
?
0
8
#
!
!
8
#
%
+
'
*
=
#
8
V
M
)
9
0
0
#
S
!
0
6
#
.
+
-
/
3
5
5
5
F
X
%
X
#
8
5
%
[
X
0
0
,
0
0
#
?
#
#
!
8
S
#
!
8
0
a
_
!
8
?
#
8
8
F
%
X
%
!
F 0
%
5
#
5
V
#
C
'
b
%
%
.
.
%
.
%
.
%
.
.
%
+
5
%
F A
8
#
!
!
#
)
c
9
5
5
3
F A
C
=
0
V
8
#
0
!
!
2
#
M
!
?
8
9
!
8
#
?
#
S
c
!
#
$
!
%
&
A
'
C
#
<
<
>
?
3
/
-
<
D
<
<
G
3
/
< >
G
3
/
H
<
<
<
<
<
!
!
!
!
!
!
!
,
'
K
9
)
,
$
4
$
'
[
)
;
)
K
'
1
'
'
G
4
9
,
'
$
'
Q
T
T
!
E
Q
!
)
!
!
P
!
T
'
)
)
P
$
$
!
7
)
'
'
$
)
V
4
F
$
)
,
,
)
$
?
'
$
V
'
$
9
)
#
)
'
,
,
)
)
F
F
<
)
)
,
)
)
<
K
'
'
G
R
!
;
F
9
E
!
$
9
& #
R
)
$
G
4
$
'
)
$
T
!
!
?
!
!
!
T
)
'
#
!
)
E
h
$
'
9
Q
$
$
)
)
;
c
'
4
;
;
4
'
$
'
9
4
E
V
4
'
$
)
?
#
E
<
9
#
?
E
E
E
E
E
!
!
R
4
<
4
;
1
K
$
j
;
$
k
;
<
7
T
R
T
R
!
$
$
$
;
<
p
k
K
$
)
[
!
T
R
E
E
j
;
c
'
'
K
)
)
$
)
<
T
& E
!
F
G
4
$
)
,
R
F
G
$
$
$
'
)
)
!
4
$
r
;
<
R
!
h
)
)
$
)
<
'
)
4
4
'
)
R
F
E
h
4
$
r
K
)
,
F
)
1
)
)
$
$
R
F
G
<
)
,
K
)
,
F
)
h
4
$
r
K
)
,
F
)
R
)
)
[
$
;
<
7
$
$
$
7
7
)
<
)
,
K
)
,
F
)
1
7
)
;
$
1
1
R
$
R
$
)
R
G
R
)
'
'
'
P
4
)
;
Q
K
)
)
;
'
c
'
P
)
Q
T
!
&
'
&
(
*
+
.
2
'
'
2
4
'
4
!
:
=
'
.
?
=
F
!
+
.
H
?
B
D
'
J
J
"
#
'
(
"
)
$
J
Q
F
4
O
.
*
4
'
F
.
=
F
!
4
.
4
!
4
4
+
?
*
*
*
.
4
:
X
4
:
!
4
X
Y
!
'
'
&
'
=
&
J
[
4
4
O
.
\
'
&
'
&
=
.
\
4
4
+
'
'
=
Q
(
H
Y
:
4
*
4
!
?
.
4
?
4
!
'
'
J
F
!
4
4
*
4
O
!
?
4
'
'
?
4
!
+
.
.
4
!
'
'
b
b
'
c
F
c
b =
[
H
g
4
4
4
O
4
+
!
4
.
.
O
4
4
+
!
!
'
'
'
'
'
=
'
=
'
=
J
'
&
'
4
?
*
4
\
!
F
'
J
&
'
&
=
h
4
?
*
4
F
'
J
'
'
'
'
=
'
F
j
b '
O
[
.
!
4
O
?
F
!
?
O
.
!
?
*
.
4
'
!
J
'
'
'
F
*
.
'
=
Y
!
!
:
j
4
!
'
!
4
!
?
*
4
*
.
4
:
j
4
!
'
'
'
F
4
:
4
?
*
.
j
4
!
'
'
'
J
F
c
4
*
.
4
!
4
'
J
'
4
H
4
O
4
*
4
!
'
'
F
4
H
4
O
4
4
*
4
!
'
'
J
'
F
4
:
'
J
=
4
'
&
!
!
4
4
'
'
%
)
!
+
-
!
5
6
+
+
+
!
;
%
!
7
%
9
9
6
7
%
%
!
!
!
7
7
6
%
!
5
?
7
%
%
%
6
D
+
%
6
6
)
!
5
)
H
6
%
6
9
5
D
+
%
L
D
N
O
!
%
+
+
9
6
N
!
)
D
+
+
9
6
7
!
-
-
9
6
7
!
5
?
7
7
+
%
%
+
N
O
%
!
9
6
-
6
6
-
6
N
6
6
+
+
+
N
6
%
)
Y
Y
!
6
-
6
6
9
6
6
N
)
Y
Y
!
\
^
7
D
6
+
+
+
6
-
6
6
!
Y
6
?
7
?
%
7
D
+
\
6
)
6
6
+
+
+
+
+
+
6
\
6
D
%
D
6
-
N
%
+
%
D
%
N
%
6
N
^
%
7
9
6
+
N
%
%
6
N
9
)
Y
)
Y
)
Y
)
Y
)
Y
)
)
Y
5
O
%
D
6
!
!
D
+
9
6
)
Y
!
6
9
6
6
N
)
Y
!
5
f
D
+
%
%
D
6
9
6
)
Y
!
f
D
+
%
%
D
D
6
9
6
)
Y
!
f
D
+
%
%
6
9
6
)
Y
!
6
D
+
N
%
7
+
j
D
6
!
9
6
7
%
9
; l
)
)
!
7
7
6
m
L
^
+
)
5
!
)
6
+
%
6
9
-
p
-
7
7
6
7
7
6
)
!
6
+
6
+
!
7
%
6
?
7
%
%
)
!
7
6
7
%
6
D
6
L
6
H
%
%
6
9
-
)
)
Y
!
5
%
%
9
H
%
%
6
9
-
p
7
7
6
6
N
7
%
%
9
%
)
)
)
!
t
j
-
7
7
6
7
p
+
-
7
7
6
%
6
7
!
7
7
6
7
)
)
!
%
6
9
%
)
)
!
\
^
+
p
N
%
%
-
D
6
j
-
6
j
N
7
%
)
)
!
)
%
L
-
%
-
D
D
6
D
6
6
7
%
7
j
N
7
%
%
7
H
H
5
%
-
6
D
6
9
%
7
%
%
9
%
L
6
l
D
6
w
7
9
9
7
7
6
%
)
)
)
)
)
!
6
!
%
H
6
H
+
+
+
+
l
9
w
6
+
+
7
+
%
%
)
)
!
)
+
?
7
7
%
z
7
6
9
z
!
)
)
;
+
9
z
%
6
9
%
)
!
+
%
%
%
6
9
%
6
%
9
6
?
7
%
%
)
!
!
!
%
)
$
*
+
-
/
-
$
*
6
8
$
*
=
/
8
!
!
/
*
)
>
1
>
-
!
/
1
!
3
%
+
)
-
!
!
1
!
3
+
$
@
$
*
$
-
>
$
*
$
3
$
-
8
%
@
!
!
$
+
D
D
6
8
%
-
%
$
-
$
@
I
$
$
@
+
K
$
D
$
+
#
%
&
2
&
'
'
'
)
%
&
#
#
#
/
2
2
4
2
6
/
#
&
7
&
#
'
&
#
:
&
:
2
=
2
?
2
2
2
4
=
2
6
?
A
A
&
/
'
&
'
#
7
'
&
'
A
&
&
A
&
'
'
'
&
'
#
'
'
#
:
#
2
2
2
I
2
L
N
2
2
2
4
P
2
6
I
P
'
'
'
/
A
'
A
)
#
&
7
)
#
&
)
&
A
'
A
'
N
&
&
X
A
:
'
'
'
&
%
Y
=
=
2
2
'
\
2
2
=
/
#
&
7
2
=
I
2
2
?
4
6
/
#
&
7
)
)
#
#
&
'
'
=
I
=
2
2
4
6
/
#
&
7
6
c
#
A
&
'
'
=
e 2
2
&
#
'
#
6
#
:
#
f
&
h A
'
&
&
'
'
#
#
6
#
&
'
'
=
=
=
2
2
I
h
\
=
2
2
2
2
4
2
6
/
#
&
7
l
'
c
m
&
'
#
N
c
'
N
?
I
?
2
2
2
?
=
2
2
2
=
2
4
?
6
/
#
&
7
A
A
&
'
&
'
'
'
?
?
?
2
2
)
/
#
)
&
&
7
/
&
L
m
&
#
'
'
&
'
&
#
&
'
'
&
'
#
:
&
:
?
=
"
#
%
'
)
"
#
%
'
)
#
*
-
/
0
"
*
*
0
"
5
*
>
"
5
"
"
"
0
'
@
:
0
'
0
:
@
-
0
B
/
0
?
@
#
B
"
"
J
*
"
)
-
0
'
@
0
"
*
"
"
"
@
0
M
P
-
)
/
0
0
)
/
0
)
/
)
R
"
"
5
*
"
"
U
'
"
*
"
*
"
X
0
0
0
*
P
?
M
0
"
*
"
*
"
0
0
@
?
M
0
'
'
*
)
"
"
#
/
@
"
*
M
[
0
0
:
0
0
'
B
'
0
:
-
-
M
B
J
5
> )
)
a
"
`
/
#
*
0
5
*
>
:
0
-
/
0
?
@
#
B
5
& %
'
(
!
"
'
*
!
/
(
2
2
3
!
*
'
6
(
!
!
*
!
"
!
2
9
:
(
(
'
<
!
*
!
"
%
*
'
6
*
6
*
6
!
!
%
A
B
D
/
*
D
'
!
!
*
B
D
J
"
M
!
O
(
'
Q
(
*
%
R
O
(
B
<
D
J
'
"
M
!
!
O
O
(
(
'
M
(
Q
'
(
!
A
*
2
"
!
"
A
&
*
M
"
Q
A
*
& %
*
A
M
"
Q
A
:
(
(
!
*
2
B
9
B
D
J
D
J
"
"
M
!
M
!
A
M
(
'
A
*
%
A
!
<
'
!
Q
a
a
9
A
O
(
!
M
b
!
a
%
b
'
"
!
a
A
b
'
"
/
*
f
g
h
g
h
a
A
&
2
Q
(
'
"
/
*
f
a
A
& 9
*
'
J
J
(
(
!
M
(
'
"
M
(
J
(
(
(
M
!
A
*
R
O
(
<
'
"
M
(
J
(
(
(
M
A
*
R
O
(
<
'
M
Q
l
M
A
o
6
!
M
M
(
'
M
(
'
A
A
"
&
& a
n
n
(
(
'
'
Q
(
!
f
q
%
%
&
%
$
)
$
/
2
%
&
%
%
&
4
$
$
2
2
)
9
%
$
$
2
$
<
$
>
@
B
)
)
$
$
/
$
G
$
$
/
$
/
I
)
$
<
)
G
I
M
I
N
$
2
$
/
/
)
I
)
I
$
/
2
I
I
)
M
I
I N
$
2
$
$
$
$
R
S
X
B
B
B
V
V
V
V
)
)
$
/
$
/
$
R
S
B
V
V
)
Y
S
$
/
$
/
B
S
B
V
V
)
$
$
2
R
S
@
)
B
V
V
V
)
X
$
$
)
)
X
@
)
)
X
)
X
$
$
$
%
X
$
c
$
$
c
c
d
c
/
f
V
d
)
)
B
&
)
c
2
g
f
V
G
V
B
V
V
V
)
h
/
c
g
f
V
G
2
d
c
c
c
g
f
V
V
g
G
@
f
V
G
f
B
V
)
G
V
@
)
d
2
c
$
<
)
V
d
d
c
c
$
$
$
c
&
)
V
)
n
V
B
c
$
I
X
d
d
c
c
$
/
$
2
)
X
<
$
c
$
V
p
B
f
V
G
c
$
V
M
$
N
c
$
V
V
B
V
V
V
)
/
c
$
V
M
N
/
I
c
<
V
c
$
g
f
V
G
V
B
V
V
V
)
M
N
c
g
f
V
G
B
&
S
f
V
G
)
<
c
<
d
$
I
Y
V
2
"
!
"
$
6
4
%
)
'
%
)
%
)
%
)
,
1
1
?
/
%
%
)
1
?
)
)
,
,
?
,
,
%
4
1
%
4
4
)
,
,
E
E
E
F
E
%
M
I
P
J
,
S
4
1
%
P
%
F
F
F
"
"
1
3
1
3
4
?
L
(
A
-
(
M
)
N
1
E
(
,
&
(
(
)
,
9
;
-
(
&
3
?
1
A
(
9
(
(
6
1
3
6
(
&
(
(
(
4
&
&
3
)
3
9
1
3
3
&
9
3
N
3
(
(
N
?
N
I
9
(
9
E
(
9
-
6
;
N
U
?
3
?
&
3
U
(
(
)
(
Z
(
(
?
6
?
3
N
(
)
)
3
)
E
3
?
-
a
?
?
1
(
3
-
9
Z
(
U
)
N
3
N
(
3
3
3
U
f
(
!
?
N
&
N
&
9
E
(
(
9
&
?
c
(
N
3
U
(
6
1
3
1
3
E
9
&
N
?
(
)
N
E
&
1
3
3
U
9
3
(
)
6
)
3
3
U
(
E
&
(
-
i
(
&
3
f
3
6
(
(
9
6
(
(
)
6
N
E
M
*
N
.
(
+
+
(
o
(
3
(
3
4
-
)
-
9
m
(
(
1
9
E
6
U
(
A
E
N
-
&
E
N
3
3
N
?
(
N
?
?
N
U
N
(
f
N
(
N
(
6
N
N
*
3
E
(
?
(
N
(
9
3
?
?
N
N
(
N
9
-
3
3
3
E
?
U
1
N
3
;
E
E
)
&
3
)
3
c
r
U
N
3
U
-
&
f
(
(
n
)
&
(
E
&
(
(
N
U
1
q
)
?
(
N
(
N
(
6
&
9
N
I
(
9
(
6
6
3
(
1
3
f
6
v
(
-
3
E
1
9
&
E
N
3
3
9
3
&
3
f
(
&
N
3
3
(
N
(
E
6
E
3
U
9
&
(
3
1
f
&
(
(
&
3
3
6
U
N
&
)
(
6
9
E
N
)
N
3
U
(
-
6
1
2
9
&
6
&
N
(
1
(
E
3
3
?
N
(
N
E
U
6
N
(
6
3
1
f
6
v
(
(
3
(
)
(
3
U
9
?
N
N
3
U
N
1
3
U
(
(
f
3
6
(
3
U
;
-
N
(
(
(
(
)
N
?
3
1
&
?
3
U
9
(
(
(
N
f
6
z
&
3
3
E
(
&
&
E
(
)
(
(
3
N
)
)
N
N
3
3
E
f
(
?
U
9
U
?
N
(
(
N
(
?
3
I
3
N
E
E
6
3
)
N
-
{
)
U
&
9
?
N
(
3
3
U
N
(
E
(
(
)
(
9
(
f
(
6
&
&
N
N
)
N
3
6
(
)
(
U
U
(
N
(
3
3
9
$
&
'
'
&
C
'
K
'
&
$
B
4
6
$
F
:
&
'
$
&
&
'
B
>
&
&
F
&
@
B
&
&
K
4
I
'
$
&
&
U
&
$
V
B
K
@
F
B
4
&
$
F
F
F
&
@
^
'
&
4
6
B
&
&
V
'
'
B
K
$
F
K
&
&
:
&
&
K
$
C
B
@
&
&
'
&
B
4
b
'
&
K
&
&
&
C
C
F
&
d
&
'
'
C
&
F
'
f
&
&
&
'
&
C
&
&
$
&
&
4
'
:
B
&
B
^
&
B
4
U
h
'
B
'
F
K
F
@
C
&
K
B
l
$
&
B
&
'
U
k
4
4
K
@
k
4
4
K
@
l
K
$
&
'
$
&
'
F
&
&
@
$
&
U
'
'
B
F
@
'
4
d
p
:
U
B
&
&
'
$
&
F
'
F
$
B
B
&
&
&
U
'
V
&
B
K
&
B
$
&
&
4
@
K
B
@
B
F
:
&
'
&
'
C
&
&
C
&
4
d
F
V
)
*
,
*
4
d
$
&
'
&
&
U
B
&
'
C
B
r
&
F
U
:
k
&
C
l
&
'
4
s
C
K
U
'
f
)
*
'
'
1
2
4
&
I
&
'
&
F
B
C
F
U
&
B
F
B
u
C
'
&
F
&
C
&
U
&
F
C
$
&
4
B
F
K
B
4
&
F
V
&
)
1
C
$
4
B
)
&
&
4
V
@
6
$
6
$
&
B
&
C
C
$
&
B
&
K
B
4
4
K
p
F
&
F
&
@
&
$
$
&
F
F
@
B
@
B
r
B
F
C
U
'
&
d
&
&
&
u
&
&
B
$
'
&
&
&
$
&
'
B
&
B
V
>
,
B
9
$
)
C
<
U
U
&
4
k
&
6
l
K
&
@
&
&
$
C
U
4
&
&
'
F
4
d
&
'
4
&
$
&
&
B
U
F
&
:
K
&
:
$
C
'
&
$
@
C
$
&
&
&
'
'
&
$
'
&
K
&
&
'
'
&
B
&
C
&
$
)
)
&
K
'
'
K
F
C
&
4
b
$
B
&
&
&
&
@
$
K
F
C
&
&
&
$
$
&
K
C
&
K
'
B
'
C
&
F
&
&
'
4
6
&
$
&
'
&
F
&
K
w
x
x
K
w
y
K
F
{
x
B
&
K
$
F
1
+
1
3
)
)
$
(
:
)
(
"
+
$
+
(
(
+
)
+
)
-
=
?
+
(
"
+
"
@
+
"
(
+
+
@
+
(
+
:
"
(
+
1
:
(
)
+
)
1
3
)
+
"
(
)
(
+
+
+
@
+
)
+
1
:
(
:
+
)
+
+
+
:
)
+
+
+
$
(
@
+
=
@
+
1
+
=
K
L
@
=
P
(
(
L
)
@
@
(
-
@
)
@
@
F
@
+
1
+
"
+
+
@
+
)
$
+
S
$
(
1
L
@
$
$
+
S
$
(
)
:
(
:
+
)
=
Z
@
1
)
(
+
)
@
)
)
1
:
+
@
1
+
@
=
]
+
+
"
)
(
@
+
)
]
K
+
@
+
]
)
a
b
$
(
)
(
(
@
+
(
)
:
+
+
@
(
+
"
(
+
:
:
L
@
$
$
+
S
=
d ?
(
+
"
(
1
+
+
S
:
f
(
(
$
-
@
)
)
=
d
K
K
K
K
K
"
+
:
+
)
(
+
+
@
+
@
+
"
)
+
g
)
"
$
+
S
(
@
=
@
K
)
(
$
"
+
)
(
)
d +
"
+
"
$
:
+
)
+
+
)
+
+
L
@
1
:
=
k
+
(
+
+
@
"
$
+
S
$
@
(
(
)
@
d
+
)
+
1
)
+
+
=
K
+
(
+
$
$
)
+
"
+
:
L
@
)
(
+
+
1
+
1
3
)
+
:
)
(
+
+
1
)
+
+
)
L
@
)
+
)
+
(
+
+
)
+
P
+
)
+
)
+
Z
$
(
L
@
n
(
)
)
=
:
:
f
@
:
)
)
+
1
:
+
"
)
)
(
+
=
+
n
)
+
=
$
?
(
+
(
+
+
1
:
L
+
1
@
k
:
"
@
)
+
+
@
+
+
)
+
"
+
(
+
)
f
1
+
@
=
@
+
+
"
@
)
@
+
)
@
"
@
(
"
=
"
+
K
)
+
L
9
:
0
'
g
%
_
'
8
P
%
d
"
%
+
"
8
%
%
0
%
:
+
J
8
%
3
+
M
%
%
0
0
%
0
'
'
:
'
0
F
'
%
+
8
3
P
8
8
8
%
O
G
%
"
P
8
9
'
%
%
8
F
%
R
F
_
9
O
8
P
J
%
%
+
%
O
+
%
q
8
%
:
%
%
'
0
'
%
%
"
%
F
_
9
8
:
O
%
%
'
'
M
'
9
+
^
"
%
_
J
:
'
R
8
+
n
"
:
9
'
'
%
+
F
+
"
%
8
+
8
l
%
+
%
'
+
'
O
'
%
/
%
0
+
:
'
7
:
%
+
_
%
R
8
d
9
9
%
'
F
"
'
"
%
O
%
9
+
%
-
%
9
F
+
%
'
'
'
l
+
J
0
O
8
'
0
'
%
0
+
"
0
O
9
%
9
:
'
+
-
9
9
'
9
O
+
+
'
#
'
+
%
:
0
9
R
:
%
n
+
%
8
+
F
_
"
P
%
'
0
%
'
J
G
%
O
9
:
%
+
'
+
p
R
%
P
%
%
F
9
9
_
+
^
8
%
%
"
O
'
+
9
g
%
%
"
:
%
+
d
+
'
d
9
+
'
%
%
+
%
%
0
:
"
:
%
0
'
%
'
%
8
0
%
P
%
%
_
%
+
%
'
%
'
0
%
%
d
8
_
d
'
F
+
%
8
%
M
W
0
V
+
0
P
V
J
8
%
%
P
8
8
S
G
8
'
T
'
d
8
S
%
9
9
%
d
:
+
3
'
%
'
%
M
'
O
9
R
:
+
:
M
+
%
R
+
_
%
F
:
+
"
'
O
9
'
8
+
d
0
%
+
r
'
"
8
+
r
:
'
0
p
%
+
M
'
P
8
%
%
%
0
R
+
%
8
_
+
%
9
_
:
'
+
R
O
'
_
%
P
9
9
"
%
"
%
+
%
:
0
'
O
-
O
+
8
F
%
9
M
q
R
M
%
:
S
V
V
s
'
_
%
#
%
5
%
3
7
%
0
#
;
%
%
'
%
*
%
2
A
#
;
%
A
%
F
0
;
0
*
2
2
#
3
2
#
;
?
I
K
7
#
%
N
3
7
N
Q
2
0
;
%
S
T
U
%
%
#
'
3
?
W
2
;
A
#
5
2
?
I
2
?
3
;
2
Z
%
N
%
I
?
W
2
W
#
#
Y
S
N
%
3
7
#
5
7
%
%
?
N
2
%
[ N
0
?
%
S
T
?
U
5
?
2
2
?
;
%
#
2
0
%
2
?
%
2
;
2
K
K
K
W
2
Y
7
'
%
;
%
'
;
2
%
'
%
2
#
2
#
2
;
W
;
?
3
2
%
W
2
;
2
%
T
^
2
%
2
[
%
#
N
i
N
2
K
K
%
I
^
0
;
2
0
%
T
Y
S
N
;
#
[ I
;
N
%
T
c
2
;
2
5
[ I
T
Y
#
S
N
%
?
K
%
?
%
T
)
N
+
N
N
S
N
[
T
?
W
0
?
0
?
0
7
?
2
?
?
#
?
%
T
?
^
;
#
?
Y
j
T
W
?
;
0
%
#
;
2
%
T
^
2
%
;
N
%
#
2
?
W
2
;
0
0
;
[
T
?
I
;
Y
#
T
0
0
'
%
2
?
Y
i
T
m
S
N
2
;
;
2
5
;
A
0
0
#
3
?
[ I
T
Y
)
2
;
0
?
?
N
S
W
2
%
?
;
?
0
0
;
?
T
?
.
.
,
/
%
%
#
%
(
%
2
%
;
*
%
#
2
7
3
;
'
'
2
p
%
#
;
*
q
2
2
0
;
2
%
.
%
#
2
1
.
2
%
T
%
U
3
W
;
2
#
2
%
;
N
%
%
0
%
;
;
0
2
0
2
3
;
2
2
;
;
%
T
"
#
%
;
A
;
'
#
;
%
2
N
%
%
?
;
2
A
2
;
#
%
N
W
2
2
?
2
W
%
;
?
2
0
0
W
%
#
2
W
2
W
%
%
%
N
%
;
%
A
2
?
%
'
;
0
Y
t
j
N
A
;
Y
i
i
;
N
2
%
%
'
%
%
p
;
;
%
A
q
%
2
2
;
;
%
%
0
%
;
;
'
%
3
;
N
W
W
2
q
%
;
;
A
%
2
2
#
w
;
;
%
?
p
;
;
%
T
?
U
?
2
?
N
[
%
%
;
#
N
Y
0
N
t
?
N
%
T
q
Q
5
;
;
A
2
N
m
%
t
N
Y
Y
N
'
q
B
B
B
-
/
0
2
4
2
4
#
B
/
5
B
B
;
<
=
;
!
$
%
#
B
-
<
;
@
4
;
@
&
$
!
B
5
=
2
5
<
/
;
%
&
%
%
B
2
<
;
@
&
/
4
;
=
!
#
#
'
)
#
)
*
*
)
*
-
#
/
:
1
*
3
*
5
*
'
#
*
5
!
!
)
#
#
<
#
#
5
#
-
F
)
5
*
A
#
*
'
!
<
!
)
)
/
C
A
3
/
5
)
#
*
)
-
!
!
#
*
5
#
*
)
A
)
/
A
U
#
*
A
/
#
*
#
#
'
#
'
)
#
3
*
)
*
!
)
<
5
S
)
)
A
*
!
#
*
*
A
!
)
*
#
/
A
#
*
A
)
)
*
A
#
*
!
!
6
,
,
$
2
2
,
!
#
$
6
!
!
@
C
$
!
'
)
,
E
>
!
)
F
K
#
K
)
2
6
$
,
2
"
N
"
M
5
K
@
"
,
(
,
'
R
4
N
$
5
6
,
,
+
,
,
6
6
/
K $
1
"
"
2
1
L
!
#
)
!
)
)
M
U
'
)
5
M
@
K
]
R
M
K
C
$
2
,
,
,
,
,
,
2
E
T
$
W
R
6
@
,
,
$
#
$
)
)
)
)
7
!
)
Y
'
$
!
)
M
N
W
9
)
W
6
)
2
N
W
N
K
F
#
M
,
@
C
,
$
$
5
U
,
d
,
6
,
2
K
,
4
a
]
$
K 2
6
R
@
W
R
L
,
R
,
$
#
$
)
)
)
R
F
F
)
f
L
$
$
#
6
@
,
7
g
)
$
$
$
[
!
L
$
!
!
!
#
'
$
E
[
9
)
$
#
!
'
)
L
!
)
[
)
Y
!
@
E
6
>
f
]
2
2
$
2
K
$
2
a
,
L
K
@
f
2
M
W
$
E
6
W
)
5
K
N
T
L
6
)
K
W
7
#
#
[
$
#
!
[
#
$
!
'
>
h !
g
)
M
E
!
[
$
#
!
$
#
#
$
#
>
K
,
$
5
N
$
d
R
>
i
d
@
>
@
>
2
6
6
2
>
L
6
$
,
,
,
,
2
2
@
2
>
6
2
,
)
,
@
,
6
,
>
6
$
,
2
K
K 6
2
R
,
,
>
@
2
7
)
i
d
@
'
2
2
2
@
C
>
s
R
,
,
$
6
>
6
,
N
,
@
,
,
)
t
,
,
L
$
6
N
>
,
2
,
,
6
@
,
N
,
@
,
!
#
[
)
>
W
6
,
2
f
R
f
R
>
U
)
)
$
2
,
$
w
,
$
6
2
2
>
a
$
R
@
,
C
$
>
N
$
]
$
)
Y
)
>
,
6
N
,
N
2
2
N
,
R
2
>
$
a
2
,
N
L
,
$
6
>
,
)
5
,
L
!
#
$
!
!
$
>
6
,
6
w
6
,
>
>
!
'
$
>
6
6
,
L
>
R
>
>
6
>
C
)
$
#
(
*
#
+
#
+
1
-
+
(
-
.
/
1
9
+
#
+
(
1
-
+
+
+
+
+
(
-
=
+
(
-
A
#
F
+
-
-
=
+
(
-
.
C
.
E
F
+
+
#
-
-
+
1
-
F
I
<
!
!
!
&
)
+
+
!
-
.
7 -
&
&
)
3
-
5
6
+
!
+
.
&
-
3
&
)
<
-
&
?
!
&
+
-
3
)
-
B
.
5
7
!
.
3
-
-
-
.
.
7 C
!
-
5
6
+
F
)
?
.
-
+
&
3
H
.
F
$
F
(
5
L
.
!
-
+
F
)
!
-
+
+
&
-
&
.
3
F
&
<
F
-
+
<
+
5
.
7 Q
<
-
-
.
V
F
!
-
<
+
!
-
&
+
.
!
!
+
+
-
-
B
)
+
+
-
V
-
-
-
.
-
&
+
-
-
V
-
.
.
7
-
&
+
V
3
-
5
!
L
-
&
)
)
V
!
7
-
5
6
+
-
)
+
+
V
<
a
-
)
5
7 ^
.
.
)
+
/
<
F
1
V
F
)
)
!
1
V
&
!
+
V
-
3
+
!
8
-
3
$
F
1
$
+
(
<
V
+
-
+
.
-
!
F
+
-
+
-
-
.
!
f
-
.
-
V
-
f
5
5
F
-
!
g
5
3
!
-
-
-
!
?
+
3
3
3
-
!
g
-
&
3
!
)
-
-
!
F
3
-
<
)
-
Q
-
)
-
+
-
<
-
V
$
F
V
!
V
B
F
!
B
+
3
H
5
!
)
-
)
+
a
.
!
;
.
.
7
.
-
.
7
-
)
.
.
-
.
3
.
<
.
.
%
'
%
)
@
8
(
C
-
n
!
F
.
&
0
+
)
5
0
8
9
&
5
)
)
+
+
0
6
&
)
@
B
+
+
+
D
6
@
)
6
0
+
0
6
6
6
N
0
8
M
&
+
5
6
0
+
+
6
0
.
+
+
6
Q
.
+
@
+
6
&
+
.
.
6
0
6
)
.
@
6
&
)
)
)
6
.
)
8
W
5
5
5
+
5
[
5
@
6
+
)
0
&
0
8
6
N M
0
0
N
5
5
+
6
0
]
)
0
.
+
5
5
6
]
6
.
6
0
5
0
8
&
.
+
0
0
0
5
8
0
+
5
.
+
&
@
+
0
5
@
5
0
c
6
&
.
5
+
&
6
.
)
&
0
)
0
5
5
0
6
5
@
@
e @
8
0
5
5
f
g
.
+
5
0
@
8
M
6
@
+
@
0
0
.
+
+
0
0
0
5
.
+
f
0
+
g
)
@
5
+
8
5
5
h
[
5
6
0
.
+
&
+
+
0
0
@
e
i
W
5
+
)
D
0
f
i
@
W
0
W
D
f
W
g
g
+
&
@
6
)
&
+
0
@
5
5
+
6
&
6
8
N
0
.
5
&
0
6
m
+
.
)
5
@
D
8
M
&
5
6
&
0
[
&
.
0
)
5
6
D
0
@
@
+
8
o
5
@
6
D
@
0
+
6
+
.
&
&
0
)
6
0
)
+
5
0
&
6
.
5
@
5
0
B
+
.
+
0
0
&
&
8
9
5
f
g
]
0
.
+
0
@
5
6
0
@
5
0
5
8
o
)
6
.
+
Q
@
5
6
)
6
@
+
6
.
5
0
.
+
0
8
+
5
6
p
0
+
)
8
0
.
6
.
0
]
6
-
0
!
+
&
(
)
&
-
%
5
6
+
%
&
(
%
,
%
,
.
!
#
#
4
!
$
$
,
0
5
$
4
;
?
?
$
0
$
A
B
C
!
?
5
C
C
5
4
5
?
$
A
J
;
$
5
?
!
;
C
?
P
$
$
Q
5
C
4
C
R
!
5
U
A
J
;
5
A
$
!
C
;
?
U
?
?
$
!
5
5
,
5
4
5
?
;
$
?
C
5
5
5
;
0
U
?
5
5
$
5
$
`
4
C
5
0
4
5
!
C
5
4
$
$
A
d
;
!
,
5
$
!
5
?
?
5
5
5
?
C
$
5
5
4
4
U
,
5
;
$
4
5
5
?
?
$
P
!
?
?
$
5
A
g d
4
,
$
4
5
,
5
C
5
5
C
A
g h
$
!
5
?
5
5
5
C
C
5
$
P
4
?
5
C
C
5
4
!
5
5
5
$
!
?
U
4
?
;
$
;
5
?
k
5
l
;
5
5
?
$
0
g 5
5
5
5
$
!
U
g
?
5
C
C
5
g
;
!
A
h
5
5
?
?
$
5
5
?
!
5
C
C
5
?
g ;
A
$
C
;
Q
,
R
!
5
5
5
l
0
!
!
U
4
p
!
p
5
5
5
U
5
;
l
;
!
l
$
5
r
;
?
$
4
A
!
,
;
k
5
g
t
u
v
$
5
?
5
5
?
U
;
A
r
$
5
$
$
5
5
5
,
s
5
U
s
5
t
t
;
0
4
!
B
!
t
t
l
5
5
A
4
5
5
5
l
;
;
U
5
U
4
;
5
4
U
A
C
;
!
'
(
;
P
4
$
,
!
4
p
5
5
C
5
k
;
C
k
A
|
?
$
4
$
!
k
;
5
!
k
U
0
k
5
4
5
5
5
Q
5
!
A
R
A
d
?
U
$
!
;
$
5
C
C
l
5
5
;
5
5
C
P
%
'
#
#
#
,
'
,
#
0
#
'
,
0
#
,
A
#
'
0
D
#
#
,
#
A
A
#
!
#
,
.
0
2
4
2
8
2
4
>
@
2
2
C
2
H
K
@
2
2
8
4
8
K
C
#
,
8
P
Q
>
4
.
#
,
K
>
2
H
H
2
K
H
2
,
8
8
W
K
>
2
2
4
2
[
,
@
^
P
K
K
H
K
4
,
@
W
K
P
0
2
4
2
K
K
>
2
2
K
2
8
8
C
>
,
2
8
8
H
K
b
K
2
2
4
H
,
P
@
2
,
2
8
K
4
8
@
2
H
P
f
4
>
8
@
>
4
2
2
2
K
K
i 8
K
K
2
2
8
8
P
8
Q
H
k >
8
8
K
,
W
K
q
K
m
K
n
>
o
2
4
H
,
K
@
4
2
>
K
K
8
2
H
8
H
2
,
4
2
K
8
8
H
P
f
2
H
>
t
4
H
,
K
2
K
8
8
H
P
t
@
2
2
K
[
P
P
>
0
2
K
m
>
m
n
>
2
K
n
>
m
o
^
H
#
8
2
4
8
8
#
K
2
"
y
#
%
'
8
8
z
@
4
2
P
2
2
@
2
8
2
2
4
8
,
.
2
8
4
H
P
)
)
+
'
2
K
2
{
4
,
@
>
"
$
$
&
"
8
H
P
i
+
4
,
8
8
,
@
W
P
y
2
K
2
>
8
8
P
2
H
,
4
8
4
>
8
K
8
2
,
@
8
>
K
,
W
4
P
0
2
K
4
K
2
K
2
!
#
#
%
%
%
)
!
#
#
%
<
*
+
%
#
4
%
1
>
%
#
#
%
:
%
4
8
%
4
>
%
#
8
4
*
:
+
1
%
%
%
4
4
%
#
:
1
P
#
4
8
K
L
1
4
N
#
8
!
N
4
4
P
#
%
4
8
4
8
:
*
*
:
8
4
>
*
U
K
%
1
!
#
#
8
K
%
8
%
4
#
%
%
L
1
4
#
#
%
%
:
8
#
%
%
#
L
!
1
%
%
#
%
8
%
4
%
4
#
4
4
8
)
+
%
#
L
%
%
4
#
L
1
%
4
%
#
1
#
%
1
%
%
8
4
%
*
%
b
*
*
b
8
4
%
%
1
c
%
%
#
%
N
L
d
#
4
L
1
4
#
#
%
h
%
:
%
#
N
#
4
U
%
!
K
%
!
%
e
U
g
*
%
d
%
%
d
%
>
4
%
1
4
#
%
k
%
#
#
*
+
%
%
:
N
%
%
4
%
4
%
#
!
%
1
L
L
P
!
N
4
%
%
%
%
#
%
4
%
#
%
)
4
N
L
%
#
N
:
1
N
%
4
4
%
n
N
N
#
N
8
4
N
*
>
%
%
4
:
1
8
%
"
$
#
%
:
L
1
N
L
!
!
*
#
%
L
1
N
L
%
)
K
%
4
%
*
%
%
%
%
N
N
4
c
%
4
4
4
%
p
4
L
1
4
4
#
N
e
g
*
q
4
%
#
>
N
%
4
1
N
:
%
#
N
#
*
+
%
4
%
:
e
4
g
N
8
%
:
%
%
K
%
4
<
L
!
*
t
%
#
%
4
1
%
:
#
d
!
U
:
%
4
%
L
u
1
c
v
:
#
N
%
4
1
%
%
4
8
%
#
#
%
%
%
*
n
!
4
4
1
N
:
#
1
%
#
#
%
8
%
%
#
d
e
4
d
g
d
)
%
4
8
K
#
%
%
%
%
N
8
%
%
h
%
4
%
4
%
)
%
'
'
%
$
*
'
1
:
8
%
4
4
*
+
%
b
{
{
N
#
%
1
K
#
4
%
L
1
N
L
%
#
8
1
4
!
#
%
#
%
*
u
%
%
%
%
%
4
4
%
%
1
N
N
:
%
4
L
1
N
L
%
*
#
8
:
N
4
*
1
#
%
L
8
%
%
4
4
N
*
|
8
!
:
#
8
K
.
'
#
#
'
/
:
;
<
=
/
"
$
&
(
&
*
&
&
&
;
?
7
0
8
#
1
/
(
A
3
"
1
&
/
/
'
A
#
#
A
;
?
/
6
#
#
!
"
!
%
(
)
+
+
,
!
/
!
(
"
"
"
/
7
"
%
+
%
(
+
"
%
,
(
+
7
/
+
"
"
(
+
?
B
!
+
"
7
,
(
+
+
)
(
(
/
(
(
"
+
%
(
?
(
(
/
7
(
!
,
,
(
I
/
+
(
+
,
+
(
,
7
I
"
L
L
%
+
%
)
?
/
%
(
+
B
(
!
+
,
(
7
S
+
/
+
(
+
"
$
%
(
)
W
O
"
Y
,
!
Z
/
"
7
,
S
/
S
(
7
(
+
!
"
+
)
+
,
"
+
"
`
"
/
7
(
!
(
(
B
B
(
"
+
/
,
(
"
)
a
+
!
!
+
%
b
(
Z
c
(
!
(
/
L
(
!
!
+
"
(
I
(
(
!
I
)
B
)
(
+
+
(
c
/
(
B
B
(
(
/
+
,
!
/
(
B
B
(
"
/
(
,
7
(
!
(
L
)
d
(
?
7
`
!
B
+
/
e
/
(
!
(
+
B
+
B
%
"
+
"
+
!
!
,
+
+
%
+
'
(
)
+
/
+
"
"
7
+
"
+
B
!
!
,
+
+
,
+
S
B
(
7
(
+
!
+
"
"
)
k
7
,
(
%
(
,
(
'
)
,
!
,
+
(
B
(
(
"
(
S
,
(
(
!
/
k
!
(
,
7
(
/
+
+
+
,
I
)
B
)
l
Y
L
,
+
/
+
7
%
+
B
,
B
(
S
/
(
b
+
B
"
m
,
/
7
!
!
+
+
B
(
7
(
!
%
W
(
?
!
/
+
(
+
)
%
,
!
!
(
e
,
7
+
B
!
+
,
+
"
(
!
S
(
+
B
+
!
7
'
(
"
'
(
"
"
$
o
7
,
(
+
(
,
(
7
p
+
"
k
a
,
,
/
(
7
(
(
"
?
+
B
,
"
$
)
+
+
(
e
"
(
7
(
+
p
/
+
"
/
/
(
(
q
e
/
/
p
/
O
"
7
I
!
/
L
(
!
!
,
+
+
!
+
"
!
,
!
/
(
(
(
7
,
(
!
7
/
!
+
c
(
%
+
,
(
B
)
(
/
+
(
+
+
,
+
"
!
!
,
+
!
c
+
+
)
W
(
+
+
,
,
/
!
Z
,
(
/
/
+
(
+
,
/
+
(
+
,
%
(
+
"
e
,
/
+
(
+
,
d
a
d
l
(
S
(
,
"
+
B
+
B
"
/
+
(
(
/
+
,
)
O
,
%
7
(
(
"
7
(
(
/
+
(
+
,
%
7
!
,
!
,
+
+
/
B
,
(
+
+
!
/
+
+
S
'
(
W
"
'
+
(
+
"
,
,
!
"
(
b
$
)
%
"
(
+
B
7
7
!
!
,
+
S
+
+
"
?
+
%
"
B
!
+
(
,
(
+
"
,
(
/
)
k
/
+
S
'
6
9
#
$
#
'
1
$
$
$
;
+
$
7
+
$
$
$
A
$
$
$
!
7
$
5
+
$
2
$
+
0
+
5
$
$
$
$
$
Q
0
5
9
$
<
$
$
$
%
;
#
;
$
$
$
+
$
+
$
U
#
$
2
!
$
S
2
$
$
;
$
+
$
<
$
0
7
H
0
!
P
+
+
$
$
$
+
$
+
5
$
$
$
M
$
E
A
E
V
$
+
$
$
+
$
<
7
$
$
$
A
$
$
$
5
A
;
$
$
+
$
7
7
;
$
$
E
V
$
$
<
$
$
5
A
;
$
A
$
$
+
$
H
$
0
0
+
<
$
0
S
a
$
$
$
A
$
$
$
M
;
$
+
7
$
$
$
$
$
P
<
$
V
$
M
$
E
d
e
f
<
5
7
$
+
$
9
;
0
Q
$
!
;
$
V
5
Q
5
7
$
+
$
9
;
Q
5
2
S
2
U
$
$
;
V
Q
5
7
$
$
g
$
$
V
$
0
2
5
$
V
<
$
5
$
V
+
$
A
7
$
;
$
5
+
5
V
l
$
2
M
n
M
$
V
+
+
A
$
<
$
$
5
$
$
$
;
$
A
$
<
+
$
+
<
+
!
$
V
5
$
E
V
l
$
!
$
$
$
V
$
$
$
;
+
$
5
9
;
+
$
!
7
$
+
$
$
+
$
7
5
$
$
;
A
A
$
$
M
+
$
<
A
$
+
7
$
$
9
;
7
+
0
$
5
Q
$
5
$
$
$
+
$
$
A
+
7
$
;
$
E
5
0
V
$
$
$
;
$
<
l
$
$
p
$
$
A
M
$
$
$
V
$
;
$
5
;
$
$
$
5
A
+
+
+
A
$
5
$
0
2
S
2
5
7
$
$
<
$
$
$
V
$
$
;
$
5
<
$
$
+
+
$
$
M
V
5
;
$
;
$
$
+
;
V
U
V
$
$
+
$
E
V
$
$
0
2
5
<
7
5
V
A
$
A
$
$
$
+
$
<
;