Jan Jürjens Secure Systems Development with UML
Jan Jürjens
Secure Systems Development with UML With 79 Figures
123
Jan Jürjens Dep. of Informatics Software and Systems Engineering Technische Universität München Boltzmannstr. 3 85748 München/Garching e-mail:
[email protected]
Library of Congress Control Number: 2004112217
ACM Computing Classification (1998): D.2.2, D.2.4 ISBN 3-540-00701-6 Springer Berlin Heidelberg New York
This work is subject to copyright. All rights are reserved, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilm or in any other way, and storage in data banks. Duplication of this publication or parts thereof is permitted only under the provisions of the German Copyright Law of September 9, 1965, in its current version, and permission for use must always be obtained from Springer. Violations are liable for prosecution under the German Copyright Law. Springer is a part of Springer Science+Business Media springeronline.com © Springer-Verlag Berlin Heidelberg 2005 Printed in Germany The use of general descriptive names, registered names, trademarks, etc. in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant protective laws and regulations and therefore free for general use. Cover design: KünkelLopka, Heidelberg Production: LE-TeX Jelonek, Schmidt & Vöckler GbR, Leipzig Typesetting: by the Authors Printed on acid-free paper 45/3142/YL - 5 4 3 2 1 0
! " # $ % &'& "& ' & %
(
)
# $
* ! +,,- !
!
. !
/ . 0 !
( (
Æ ) & .
.
.
.
.
1 .
.
!
2
0
. . )
.
" %
.
! 3 4 "!34% . .
5 . 6'
.
.
* # $ .
.
.
0
' 7--8
) . .
2 9
.
. Æ '
.
Æ
: 1
6 ' "6'% (
Æ ; ) 6' <
2 6' )
6' " 6' %
; =
6'
=
6' 6'
: : 6' .
1
6' 6'
6' ( ( =
6'
6' 6' +> = . = 1 6' *
: ! &
< 4 & 1 6' . ? 1
2 6'
6' @' @'! 6' . 9
.
.
.
" A . %
. 2 6'
' B 5
6 = 6 'C
. ) D?C -8E
. !
; &
= )
2 6'
6' " ! %
6' . ( "
%
.
! " # # $
" % . . ! . . . 9
. & ) . " % '
5
Æ & F & 4 6 ' " . %
. " 6'% " % (
. . 6' ! . . ( 2 ! " . * ' & 4 & & "*'&4&&% A & !
"A!% 9 & & A! 5 < <
& & . & 5 !*! 1 . A +G # * & ) 9 $%
6 ' "
5
! .
.
%
& / H A
. ) 2 ! .
; ' I J ) / ) . 4 ) ) ) 9 5 5 '
5 H 5
) < 2 9 < 9 '
9 H. 4 ) * 22 4 5 * 2 H * =
A A A ) A 9 A
H A &
A ?
A C ? A
& 0C 0
0
& 0 0 )
! A 3.2 9 3 3 & 3 ' . 5
1
/. 2 A * . ' & ' < ' 0 ' A ' H ? H 5 H H
& H
& ' &
& & 2C 5 & & & & = & & ' & . A 1 5 K
* ! . .
&
/. * < & "6 4 % 5 " % < "6 = % & F & 4 "6 '
% * "A ' 4 % 0 / . "' % / "A ' 4 H % < . .B D?C -8E
'C ) 7--8
! ! . ) ( H * H .
L
++
=
+7
= +7
+L
0 6 5. +L
7+
,
+>
& H < 6 < 9 +M
77
& 5 ) 9 +M
7L
& 6 9 9 +G
78
& < ! & 9 +N
7>
& & 6 & 9 7-
7+
L+
& 4 7+
L7
6 ' 78 L7+
LL
6 < 9 7>
L77
< 9 7M
L7L
& 9 7M
L78
& 9 7N
L7>
) 9 L-
L7M
9 9 L-
L7G
& L+
L7N
6' 4 ' L7
) 2 6' ' L8 LL+
L8
LL7
= * & L>
LLL
' < LM
LL8
& ) 6' 9 LN
LL>
! & 8+
%
! " # $ % 8+
8,
6' 8,
8++
H 6' 4 9
8+7
4 >-
8+L
) H MM
& < & 8,
87
9 & & MN
8L
) &
88
G7
G-
8>
9 GL
& ' >+
G>
& <
G>
>7
) / ! & N-
>L
< 4 & NN
>8
>>
>L+
,-
>L7
,,
9 & ? ++N >8+
) < ? ++N
>87
9 +7-
>8L
4 ; * ) +77
* ) +7> >>+
' / 5 . ) +7>
>>7
5 ) & +7G
>>L
) 4 ) +7G
>>8
A 4 0 < +7N
>>>
4 =. +7N
>>M
4 & ) ! < +7N
>M
+7,
>G
9 +7,
( ) ( M+
M7
+LL
4 6' <)&4 ) +LL
M++
' = * "'=*% +L8
M+7
@'5 9 5 '9H +LM
) 6' +LG M7+
* +LG
M77
! 9 +L,
%
ML
M8
M7L
'<. 6' & +8+
M78
) +87
M7>
5 ) . A +87
. ' H 9 ; &) HOL +87 ML+
) ) & H +88
ML7
! 9 +8G
MLL
4 H +>+
. ' < +>> M8+
& A +>>
M87
< A < ) +>N
M>
+>N
MM
9 +>,
* ' +! +
+M+
G+
6' ' +M+
G7
6' ' & +M,
GL
H
G8
HA & +GM
G>
H ) & +GG
+G7
G>+
H +N-
G>7
& +N7
G>L
! +N8
G>8
) +N>
G>>
* +N>
G>M
& !
* +NG
GM
+NN
GG
9 +N,
, +! ! ! % N+
N++
N7
+,+
* & * 6' +,+ A < +,8
N+7
< 9 7-+
N+L
& 9 7-7
N+8
& 9 7+7
N+>
) 9 7+G
N+M
9 9 7+,
N+G
& 77-
9 6' 77M N7+
H 77M
N77
HA & 7L-
N7L
H ) & 6' 7L-
NL
7L+
N8
9 7LL
%
- $ . + ,+
,7
7LG
' 6' ) 7LG = ) & 4 7LN ,7+
& 4 & 7LN
,77
= ) 6 6' 7LN
,7L
* ' ) & 78-
,78
= H 787
/ 0
78L
- ' ' (% 1/ ( ! 2 3
78G 78, 7>L
<+ 6' ' 7>L
<7 H
7>8
<L HA & 7>M <8 H ) & 7>G <> * & 9 6' 7M7 <M & <
7M8 <G ) / ! & 7M> <N < 4 & 7G<N+ 7G<N7 7G8
2 4
7GG L->
++
'
7+
6 +M
77
+G
G
7L
4
78
3 +,
+G
7>
<
L+
6 7>
L7
< 7G
LL
& 7N
L8
& 7,
L>
) L+
LM
9 L+
LG
& LL
8+
6' >+
87
6' >7
8L
6 >L
7-
88
>8
8>
H >M
8M
8G
8N
4
8,
3 M+
. >G
8+- &
.
>N M-
ML
8++ <
M>
8+7 * ; MG 8+L &
; G+
8+8 &
;
G7
>+
4 ; GM
>7
4 ;
GN
>L
/ & . N+
>8
H & . N>
>>
< 4 & N,
>M
=& ,+
>G
& <4& ,7
>N
H <4& ,G
>,
+--
>+- +-+ >++ ; +-+ >+7 & +-L >+L ; +-8 >+8 ; +-8 >+> & +-> >+M / +-M >+G & ++L >+N H ++8 >+, H ; ++> >7- H ; ++> >7+ & ++M >77 A +7+ >7L A +7+ >78 A : +77 >7> * ; ) +7L >7M * ; +78 >7G ) +7M M+
'=* .; +L8
M7
'=* .; +L>
ML
6 '9H +LG
M8
6' +L,
M>
+8-
MM
= B +8>
MG
& +8G
MN
& +8N
M,
+8N
M+- < +8, M++ & +>+ M+7 & 2 +>8 G+
6' ' +ML
G7
5 6' ' +MG
GL
4 6' ' +MN
G8
5 6'& +G7
G>
5 6'& " % +GL
GM
& +GL
N+
4 ; 7-G
N7
& 7-,
NL
4 7+-
N8
4 7+-
N>
4 7++
NM
4 7++
NG
4 ; 7+7
NN
4 7+7
N,
6' ' 7+M
N+- ) 7+N N++ ) 4 7+N N+7 ) 4 7+, 5+
6' ' 7>-
' 5 '
.
) .
2
! B . ) . ! !
".
.%
# ! 9 Æ ' : * D,>E +G .
& D&GNE '
. * +,,G
&) . . 6& 9
9
6&
,++ 1 9< D&,,E 1
<
<
& ! ;
&
'
+7 *
77L
P8>>N8N--- DH-LE
3 *
.
)
. & . 2
;
.
.
.
!
.
.
. D) -+E; ) ) & !
. ! . D&,,E ) < 4 & "<4&% D<4-+E
.
.
. 0
<4&
!
.
& >L ) D1--E
A&'
.
# $
.
D&&G>E ' # .
B
B $ "H % ! D&,,E N>Q < 4 H
'
(
"<4H% D<4HE . .
# . $ D/'-7E 5 Æ
D&,,E 2
) DANN ) -+E )
.
.
B ! L- D&&G>E
D&,,E . D) -+E &
!
( ' !
#
$; ! 1 .
&
# $ D1,> 'A,NE *
; 4
*
(
.
. . &
D) -+E 0
* '
D'-+ -+E
) 7--+
)
' !
7--
D5N+E Æ
D'<*NG 5)N, ',+ ,M ,N )A,,E 2 ;
) .
.
(
.
. )
.
Æ
DA-LE 6
D0,M 0,, 33-8E D<1,ME )
D9&--E & < ( 2 D,NE ! Æ &
4
6
' "6'% )
DA-- )--E
2
DH&A -+E
& )
'
*
. ; 1
0 2
$ % 6 ' "6'% DH?5,, 6'-LE 1
. 6' A * ++
!
;
. .
Requirements Verify
Models Codegeneration
Testgeneration
Code
$# *
6
2 & .
+
' 6' (
; ) 6' 6'
6'
Æ
6'
( . ! ( " % <
2 6' D6'-LE 6' )
6' 6' 6'
2
. .
; =
6'
=
6' 6'
: : 6' . ' 6' 6' 6' ; 6' . . .
6'
" %
'' ,
-
( 4 1 6' D6'-LE 6' H " % ( 6'
.
=
=
6'
6' . . 6' 6'
A . 6'
; !
.
. 1
" 2 % 1
6'
1
6'
' 6'
1 ; 1 6'
'
' 1 : . ! & D)&,,E
1 6' <4& 1 :
"
%
1 6' ? 7
1 A . .
( *
.
1
.
D?&) -8E . 6' @'! 6' . *
6'
@'! @'! 6' " % 6'
.
6' . 1 . 6'
6'
.
!
. 6' . . ( )
* .
6'
& .
'' ,
''
&) HOL
&) HOL
6' <)&4
@'
6'
@'!
6'
. . 2
5
2
.
. ) D*-8E # $ 1
. 6'
2 6'
6'
! * 6'
)
& '
: . DA ,>E
6' '
:
.
. ( . =
:
:
5 6' ' . 2
6' 5 6'
. 6'
D5
'
'
6' 1 (
.
6' / 6' ' 6' ' & . ! 6'
.
.
0 ; < 7; *
#. $
6'
!
< L; & .
. < 8; ) 6'
6' 1
6' !
. < L 1
6' < >; )
6' 1 :
.
!
& D)&,,E * 6' <4& 1
:
1 6' ? 7 < M; . 6' 1
. 6'
6' @'
6'
) . ) .
.
6'
&) HOL 1 . 6'
'. / 01 < G; 1
'.
1
6' '
!
: 2 1
: < N; 1 6' ' 6' ' & 6' ( 6' ) 1 6' < ,; )
< +-; 1
. ) ; 1
6' 7- 6' '
< > G N
5 . 6' .
;
6' !
. . 6' 6'
. & . 6' . & L+ L7
.
*
6'
6'
& LL 6' Æ
. < G N
6' . (
.
'&
'
. . . *
< L 8 & M7 M8 * < > ) ' < G N ) D?C -8E . ! ; &
. = )
2 6'
6'
!
* . $
.
6'
#.
6' !
* . . 6 ' "6'% : < L 6' < 8 )
6'
6'
. ; &
& "
% "
% &
!
!
6' D?&) -8E < M
. !
.
')
21$3 4 "
6
* 7+
; 1
)
Sales application
«fair exchange»
buys good sells good
Customer
Business
#
!
) .:
& . * * 77
2
!
.
.
. " 4 " 5" 5
'*
«fair exchange»
Purchase
{start={Pay}} {stop={Reclaim,Pick up}}
Customer
Business
Request good Pay
Wait until delivery due undelivered
Deliver
delivered Pick up
Reclaim
"
9 1
.
" % <
2
. "
% !
.
: 6' * 7L
remote access
«secure links» {adversary=default}
client machine get_password client apps browser
«secrecy»
server machine
«call»
web server access control
«Internet»
6
'+
21$3 4 "
1
' (
.
< 8 *
!
*
6' < M
" # $ & ( 6 6'
*
. . 1
. . ) .
&& 2 . * 78 .
0 . "% ;;
.
)
& >7
6'
* 78
D&GNE !
;
;
;
;
" ;;
" ;;
%
%
" ;;
%
& 4 "$% 47 5 «data security»
Secure channel
C:Client «critical» ; ; ; ;8 9
3
:
'-
3
«critical» S:Server ; ; ;
«send»
3
:
3
«send» init(n:Data,k:Key,cert:Exp) xchd(mstr:Exp)
resp(shrd:Exp,cert:Exp)
S:Server
C:Client
8
8 33 99
8 33 33 9 8 33 9
8 9
<" 1 & >7
6'
= 0
1
.
:
# $
.
& LL8
. .
0
6'
21$3 4 "
% &
B
B )
. .
1
* 7>
!
"%
" %
!
+--- (
"%
.
! * 7>
.
6
"%
"%
.
)
2
Customer account rm(): Data wm(x: Data) rx(): Boolean
«no down−flow» rm()/return(money)
rm()/return(money)
rx()/return(false)
rx()/return(true) «critical» Account {high={wm,rm,money}}
wm(x) [money>=1000] ExtraService
money: Integer rm(): Data wm(x: Data) rx(): Boolean
/money:= money+x wm(x)
/money:= money+x
NoExtraService
[money<1000] /money:= wm(x) money+x
% #
/money:=0
1 :
.
. & . 6'
5
. = 1 :
& 1
. * . . DA,, ) -+E D/'-7E D)A,>E #<$ D&&G> ANN ),ME ) D'=/,M A5,,E ) .
D4H1N+E < . !
!
.
! .
. & .
)
) Æ
= $1 >6 1 .?
. 0 1 )
.
.
.
A Æ
. ! " % . ! ;
(
(
.
'
DA,, +GE )
2
1
.
!" 1
"
!
.
# $
=
$
%$ & )
$ !
.
!
.' 4 " 6
.
& (
'
&
% "
!
& (
%
"
$
.
.
)
!
$
" % )
" %
' ( )
D5GLE !
$
(
(
* ; 1
.
:$ ;
(
:
# :$
#
: (
)( $ DA'N8E
;
DGLE
:
&
. 0 1
& =
; $ & R
*%+&
&
'( )( * 6 ' "6'% DH?5,,E
! A 6' D&,, *-8E 0
6' +> D6'-LE
6' ( . ( ! . . ;
(
;
=
"
%
;
0 B D0A,GE
,
&
:
" .
%
( . (
= $1 >0 ' @ &? 4 1 # A A
. B !
)
(
.
* .
!
. . )
11 3 ! 6 6
)
)
4
)
* L+ ) .
= .
) .
"
) * L+
buys good sells good
Customer
Business
)
. 0 1
11 3 ! ) #
&
)
$ D6'-L A+-E )
#
)
$ D6'-L A8E 1
(
)
!
)
. 9 . !
( . )
6'
R & L7N
6' )
)
% "
"
% ! . ! * * L7
)
1
6
*
!
;
6
11 ! 6' D6'-LE
. B
*
«Interface»
«Interface»
sending
receiving
send(d:Data)
receive():Data «send»
Sender
Receiver receive():Data transmit(d:Data)
send(d:Data)
% 0 D0A,GE )
#
$
D6'-L A+8E & " %
" % ) " , " % 1
%
1 )
*
. * LL )
D E
S S
" %
"
%
" " %%
;S
.
" %
" % " " %%
"%
!
"%
R
A
R
.
+
. 0 1 ) * LL
"
#
% ) "
#
1
#
&
"
%
" ;;
send(d)
entry/i:=i+1
Wait
/request()
" "% S
"
;;
Request
return(K,C)
> 8 9 ; 33 ? 8 33 9
Send
4
11" 7 ! ) , # !
)
" % " %$ D6'-L A+LE 4
1
*
*
1
C " # # 4 ...
. B
-
2 (
;;S " "
5 " * " " " " %%%
* L8
. DE
!
) * L8 !
"
" ;; %
" " %% S !
" ;; % " ;; % .
.
. !
& >7
C:Client
Si :Server
8
8 33 99
8 33 9
> 8 8 99 ; 8 8 8 999 ; ?
8 33 9
> 8 8 99 ; ?
8 9
33; 33; 33; 33; 33; 8 8 99 33; 33; 8 8 8 999 47 A " # # 4 ...
.
. 0 1
11& ' ! ) 6' +
D6'-L L+>ME <
-
2
&
2
)
(
1
*
& . )
D6'-L 7+G+E )
D6'-L 7+G8E )
) * L>
$
*
& *
$
11) ! ! ) #
$ D6'-L AME
. ) <
.
. . (
4 A A
. B C:Card
L:LSAM
entry/nt:=0
entry/n:=0
entry/ nt:=nt+1
entry/ n:=n+1
nt
n
.'
I:Issuer
i
c
l
A " ) * LM
;
R
.
6'
& 8+7
!
client machine get_password client apps browser
«secrecy»
server machine web server
«call»
access control
«Internet»
5"
11* # ! )
6'
= . .
.
. 0 1
0 . . .
# $ D6'-L A+>E )
&
!
= 2 R 2 ) * LG )
(
4 )
(
11, $4 ! 6' (
# $ ;
D6'-LE 1
# $ &
6'
.
)
* LG
< 8 6' +8 D6'-LE = )
S
9
H ! 5
S
)
)
S
)
* LG
* LG
< 8 &
. B
..
«data security»
Channel
{adversary=default}
send(d:Data)
s:
receive():Data
send(d)
Wait
Send /transmit(d)
S:Sender
R:Receiver
r:
transmit(d’)
Received
Wait receive() /return(d’)
r
s
«Interface»
«Interface»
sending
receiving
send(d:Data)
receive():Data
S:Sender
«critical» {secrecy={d}}
«send» R:Receiver receive():Data transmit(d’:Data)
send(d:Data)
Sendernode
Receivernode
«LAN»
Sendercomp S:Sender
«LAN»
Receivercomp «encrypted»
R:Receiver
«send»
4#"
6'
)
6'
6' +8 D6'-LE 6'
D6'-LE . " D<3' ,,E
% ) ;
6' # $
.&
. 0 1 4 6' 6' & 9
D6'-LE 6' 5 ' D6'-LE D&H,NE . D*H--E
! + )* )( ! 6'
6' . 2 6' ! 2 6' *
< N
6'
6' ' < G
6' R 6'
Æ
11 5 1
D)A'--E
Æ
A " %
" % "
S "
" %
%
% 1 D E
Æ
Æ " %
)
$
"
%
+ + + + + + + + + +
+ *
. *
*
!
1
S 1
.. A "D
.(
11 0 +! ! ! 6'
$ 5!
'
5! $4
)
& LLL
4
% % =
S
"
"
"
%
$
"+%
;
%
"7% )
!
"L%
%
%
! . . : *
.
.
& LL8
)
6
&
6' )
)
& ( ;
2 $ # # "
.)
. 0 1
. = .
,
.
6' ' ;
"+% !
.
"7%
.
"L%
.
.
1
"
.
& LL8 )
6'
!
6' )
O
$"
O
$" O
( O
11 3 1
6'
; 6 6 1
6
" %
1 . . ; .
R
1
S
. 1
- 1 6 - ; 5! 5!
& L+
1
)
.. A "D
.*
" $4 - 6
; ;;
" %
" % " %
" %
" % " % " " % " %
" % " % " % " % " %
;
" % S " $4 6 % " " " %% S " $4 6 %
"% "%; $4 % " ;; % S $4 % " ;; % S " $4 S ;; % * "% "% * $4 ;
" % S " % " %
S "" %%
" % S """ %%%
" ;;
%
;;
S
;; " ;; % " "
1
. D9TNLE
#$ . . !
' ) < "')<% D'=/,ME # . $ D5,NE ) . & D)?-+E .
;
S
U + ( .
6
$4
.+
. 0 1 5
2
" %
6'
& 8+ !
$4
$4
*
$4 $4
$4 $4 $ ! $4 $4 ! .
.
.
!
11" ' ! !
6' . '
& G> = 6' 1 (
*
.
. 1 6' '
.
.
.
6' '
&
6' ! *
*
& L+
. (
.
1
"%
&
.
!
6'
.. A "D
& 8+
"%
&
.
R
. *
.-
=
2
. *
. .
&
.
.
; ! .
* .
6'
"%
!
"
&
% ;
* !
"%
)
( $4
*
.
$4
. "% " % . " %
!
;
6' '
Æ
6' ;
)
"% "%
"%
4
&
.
&
;S
;S
(
;
@ 4 .) .* #" " # @ B 4 *(
&
. 0 1
"+% . .
"7%
.
"L% . "8%
" %
.
!
(
(
"%
.
0
6'
" % !
&
(
. .
.
"%
. *
! .
.
.
* 6'
!
! Æ
&
"
6' '
LL7 "8% ;
"+% ) "7% "L% "8%
.
. & 8+
.. A "D )
$"
O
$" $"
O
&'
11& ! =
2
* . &
2 6' & >+ ! 2 . 1 D9TNLE
. 1
:
2
'
.
.
.
& LL8 =
.
8 1 1 .
" ( " / " ( 0 /
&
. 0 1 . & LL8
.
.
.
( 1 1 2 *
6'
2 # $
:
Æ D)--E ) 2 & LLL; . ) H&)
2
# $ DA5,,E
.
.
! 2
. 2 ; .
.
* .
* !" ;; $4
5
'
!
.
.
!
. !
)
.
. .
.
.
. .
.
.
.. A "D
&.
2 ;
(
!
(
8 11 $4 " 0 ( ( ( ( " 0 / ' S $4 0 (
( ( /
! #$ :
:
)
:
*
.
S
$4
. .
.
. (
.
' 2
8 11 ( 0 ( / . "% (
( ( "
0 "
( "
0 , ,
/
%
&&
. 0 1
D'=/,M L>,E DA-LE * ; !
(
.
9(
!
!
+ 1"1 ( 0 ( / ' 3 4 ( ( ( 0 0 ( ( /
.
. !
*
DA-LE )
2 . "
%
1
DA,M A-LE
2 (
+ ; 6 ; )
.
;
#" =
.. A "D
&(
5 ; 6
.
& LL8 *
8 1&1 & 6
( 0 ( / 5 9 L>
6
& LLL ( Æ
6
& & G>>
! +% 1 . :
Æ
* ;
(
& L+ 6' ' A
&
!
!
!
LL8
;
!
! 8 1)1 0 ( 5 : ( ( , 9 $ ( , "% "9%0 S 9 S : ( ( , 9 $ ( , "% "9%0 S 9 S /
&)
. 0 1 !
( %
:
$
"
. <
:
(
.
)( 2
$ DA'N7E
D?C -7 E
!"# $
% & '
!
6' 6'
6' 6' 6'
R
. < M 1 6'
1
6'
" )*
'
* 6'
& L+ '
& LL
"1 1 2 7 ! $4 ! 3 ! 1 6'
* ='A H
"H*%
(
& $# 4 " 6
%, ; & ; =
; ! (
.
& ; =
$ (
& ; = & ; = 6 ; ! .
& ; &
.:
* %, !
.
? <=H5)
. ! 2 =
:
"1 1 ( $4 1 D6'-LE; ) & ; 6' & / < ; ! * 8+ 6'
D6'-L L>,E * 87 )
9
! # $ # $ ; 6'
#"
#
! " "
1 1 1 1
" " " # " #" " " 1 #" " " #" " #" "
$E #"
$E #" #" #
#"
#
" AC ,4 " "
0 % #"
4"
"
" " #" 1 " " " "
$E $E #
"
$ #
% "
E E # #
1 " # " 7
"
AC
,4 " " " #
$#
$ 7
5
&' B ('
( & $# 4 " 6 ! 4" !"
F
F "
" ' # F # F " # " F # F # 8 9 F # 8 9 F " F " 8# F 9 " 8 9 F F
F " 1 " ' " " " ' " " 8# F 9 " " 8 9 F # '
5 " " # B " " " " " $
" " " " " " #
! 2 1
* 8+ 87
6'
& LL &
!
S
"! %
!
* 8M
.
& LL8 !
2
!
S
!
* * 87 V
2
&' B
(.
< M Æ
!
1 .
) ' 6'
< >
" 3 4 !
1
# $
!
!
.
!"
* 8L
* 88
;
*
Sales application
«fair exchange»
buys good sells good
Customer
Business
#
" 3 4
(&
& $# 4 " 6
% !
. "
2
Æ
"
"
¼
"
"
; *
¼
.
!"
* 88
; 0
.
«fair exchange»
Purchase
{start={Pay}} {stop={Reclaim,Pick up}}
Customer
Business
Request good Pay
Wait until delivery due undelivered
Deliver
delivered Pick up
Reclaim
"
&' B
((
.
'
.
)
$4
0
'
;
*
!
$
%
"
%
"
*
2 ; *
!"
" %
" %
* 8>
! . 6 .
!
2 *
.
+----
!
()
& $# 4 " 6
-
!
$
& 87 .
& ML 0 .
Granting a credit «rbac» {role=(supervisor, credit approver)} {right=(credit approver, authorize credit)} {protected="authorize credit"}
Employee
Supervisor
obtain customer details set up credit
[credit>10.000]
authorize
[otherwise]
credit
transfer money
@$#
' 0 0 (0 0 6* 0 . " % . . " % 1 . *
"%
&
')
;
$(
"%
&
&' B
.
"%
&
"% "%
&
&
.
.
& LL8 A 6'
"%
&
(*
"%
&
. .
"%
LL8
6' & LL7 . 6' ' & & LL8 1 . 4
* 8M 8G * 8M
.
.
.
! . = ! . .
.
. . 0 . =
.
.
. ")%
"
"=&%
& >L% )
.
. D)3,ME )
.
=&
4" " AC ,4
89
! 1
2 " " # #
# # #" G H #
(+
& $# 4 " 6 4" 89 " AC ,4
! 1 * 8G
.
& >L ) !
. .
.
.
0 0
& L+ LL
= .
" %
" %
6 %
"
:
&' B
(-
*
(
;
( *
=
1 .
.
'
6'
.
;
S
S
S
!"
1 .
* 8N A
* 8M
"% S "%
" %
.
!
" % !
&
!
.
& " %
)
& $# 4 " 6 «secure links»
remote access
{adversary=default}
client machine get_password client apps
«secrecy»
web server access control
browser
«Internet»
6
'
"
server machine
«call»
; *
%
!
%
!
"
"
"
"
"
%
!"
* 8, .
H
3 ' ; 3
3
H !
H
&' B
)'
«secure dependency»
Key generation newkey(): Key
«interface» Random number random(): Real
Random generator
Key generator
«critical»
{high={random()}}
seed: Real
«call»
random(): Real
newkey(): Key
<" #"
'
& LL; ;
; A
!
.
. ; * " %
; 1
6
.
!
" %
.
& LL8
;
.
* . !
.
)
& $# 4 " 6
!"
!
* 8+-
& D)&,,E
.
.
. .
; .
" ;;
% .
. ) & LLL
" %
)
" " %
" %
1
)
.
;;
= 2
6' < M !
!
!
.
. '
& >7
.
!
R
"%
&
*
!4 8! " 4 "9 " 44 84 4 1 "9
&' B «data security»
TLS variant
{adversary=default}
«critical» C:Client ; ; ; ;8 9
).
S:Server
C:Client
3 : 3 Æ 3
resp(shrd:Exp,cert:Exp) «send»
«critical» S:Server ; ; ;
3 Æ:
entry/i:=0
entry/j:=0
entry/i:=i+1
entry/j:=j+1
tls.C
tls.S
«send»
> ; ?
> ; ?
3
init(n:Data,k:Keys,cert:Exp) xchd(mstr:Exp)
tls:
Si :Server
C:Client
8
8 33 99
8 33 9
> 8 8 99 ; 8 8 8 999 ; ?
8 33 9
> 8 8 99 ; ?
8 9
33; 33; 33; 8 8 99 33; 8 8 8 999
«LAN»
clientsite
33; 33;
33;
serversite
«LAN»
«Internet» serverapp
clientapp C:Client
«send» «send»
!4
S:Server
)&
& $# 4 " 6
.
.
.
. # $ # .$
.
& "%
)
=
. . ) .
.
( $)(0 $)( ; !
$4
.
: .
"
%
'
6'
: " :%
& LL>
!"
* 8++
< 7 !
" %
!
"%
*
+---
.
"%
"%
"%
.
:
"9%
9
6' '
S <
S " "-% "% %
9 S " "----% "% % #
"% #
9 LM Æ
S
9
&' B
)(
«no down−flow»
Customer account rm(): Data wm(x: Data) rx(): Boolean
rm()/return(money)
rm()/return(money)
rx()/return(false)
rx()/return(true) wm(x) [money>=1000]
«critical» Account {high={wm,rm,money}}
ExtraService /money:= money+x wm(x)
rm(): Data wm(x: Data) rx(): Boolean
NoExtraService
/money:= money+x
money: Integer
/money:=0
[money<1000] /money:= wm(x) money+x
% #
S "
1
"% % S 9
*
& LL7 ;
S "
S "
5
$" % % "ß% $" % % "9%
S "
$" % % S " $" % % S
)
6' D?&) -8E
)
? 7
& >8 *
)
& & >8
!"
1
( !
; ! . 5 . * .
))
& $# 4 " 6
) 2 * )+
* 8+7
! ? & )
&
, ,
*
2
,* *
*
*
.
+ 7
* A
+ 7 '
& >8
& >8 !
) * 8+7
*
*
, ,
,* *
"1 1 ' 2 7 ! 1 . 6'
& 8++ 6'
%, & ; * 2
; &
%
"
.
& ; 1 & ; ) & >8 ? & ) & ; & 6 ;
&' B Local
)*
«guarded access»
JavaSecArch:
getObject(Exp,Exp):Exp StoFi.Read():Exp StoFi.Write(arg:Exp) FinEx.Read():Exp
[obj=FinEx] /ExcGd.chkGd(sig)
FGdReturn?
return /return(FinEx)
getObj(obj,sig)
WaitReq
CheckReq
/return(MicSi) /MicGd.chkGd(sig) return MGdReturn? [obj=MicSi]
MicSi.Sign(req:Exp):Exp
[obj=StoFi]
JavaSecArch
«call»
chkGd()
/FinGd.chkGd(sig)
MicGd limit: Bool
«call» chkGd()
«call»
«call»
«call»
FinGd
«call» ExcGd
slot: Bool chkGd()
StoFi
«guarded» {guard=FinGd}
«call»
FinData: Exp Read():Exp Write(arg:Exp)
chkGd()
FinEx
«guarded» {guard=ExcGd}
MicSi
«guarded» {guard=MicGd}
ExcData: Exp
MicroKey: Keys
Read():Exp
Sign(req:Exp):Exp
ExcGd:
chkGd(sig) CheckReq
WaitReq [sig=cert] /return
FinGd:
MicGd:
chkGd(sig) WaitReq
CheckReq
[sig=bank slot=true] /return
chkGd(sig) WaitReq
CheckReq
[sig=finan limit=true] /return
B 3 " & ; * 88
)+
& $# 4 " 6
* %, ) . ? " & >8% <=H5) " & >L%
.
&
(
1 6'
. 9 6' . H D?C -7 ?1-L 0?-L ?15-L 550 -LE 1 : ! D<,LE
& D?C -7 E
D?5H,NE D<,LE
"
,
1
D&&G>E
! = # $
. .
$ =
! ) .
.
< 4 &
"<4&% D<4-+E & >L7
& 5 4 4"
)-
. ) & >8 6' ? . ? & ) 1
'
=
*
=
6 & )
& >8 * (
!
' 6'
6 A
6'
D?&) -8E !
&
( .
*
& $# 4 " 6
6 & 1
" !
6' * < N
! .
6'
DA0?/,>E .
2 =
6' )
)
! . 6'
%
6'
&
6'
&
" %
%
6'
%
" %
" % %
%
0 6' 0 < . * 8+L ) .
Æ . . * 8+8 ) & <
& >+
; !
* 8+L
* 8+8
&. A" 4 " Channel
*'
«data security» {adversary=default}
send(d:Data)
s:
receive():Data
send(d)
Wait
Send /transmit(d)
S:Sender
R:Receiver
r:
transmit(d’)
Received
Wait receive() /return(d’)
r
s
«Interface»
«Interface»
sending
receiving
send(d:Data)
receive():Data
S:Sender
«critical» {secrecy={d}}
«send» R:Receiver receive():Data transmit(d’:Data)
send(d:Data)
Sendernode
Receivernode
«LAN»
Sendercomp
«LAN»
Receivercomp «encrypted»
S:Sender
R:Receiver
«send»
4 " 3
* 8+L ;
%
* 8+8
%
%
6'
&
* 8+8 & >+ .
*
& $# 4 " 6 «data security» {adversary=default}
SecureChannel
S:Sender
send(d:Data)
R:Receiver
receive():Data
s: send(d)
entry/i:=i+1
Request
/request()
Wait
entry/i:=0
entry/j:=0
s
r
request()
r:
8
> 8 8 99; ? 88 8 999
Send
transmit(E)
WaitTrm
receive()
8 33 9 9
WaitReq
entry/j:=j+1
return(C)
33; 8 8 8 999 >
8 8 8 999; ? 8 33 9
Received
«Interface»
«Interface»
sending
receiving
send(d:Data)
receive():Data
S:Sender
3 Æ:
«critical» «send» {secrecy={d}}
3
«call»
send(d:Data)
Sendernode
S:Sender
3 Æ:
«critical»
;
receive():Data transmit(e:Data) request():Exp
Receivernode
«LAN»
Sendercomp
R:Receiver
«Internet»
«call»
3
«LAN»
Receivercomp R:Receiver
«send»
4 " 3
"" - <
.
& < , D?C -+E )
. 6' D*0,GE 6' &
&( 5
*.
6' . ) . < , ! D?C -+ ?C -8E 6' D?C -+E ? D?C -7E <=H5) D?C -+E D?A-LE ) < >
)
D?C -7 E
D?C -+ ?C -7E 6' 6'
6'
& 87 . D?C -7E & 8L D?C -+ ?1-7E D?15-LE 6' D0?-L ?0-8E . 6' 6'
. D?C -7 ?C -7 ?C -L ?C -L ?C -8 ?C -8 E
D?C -8 ?C -8 ?C ->E
D?C -8E = 6'
"% 1 6' 6' 6' 6' H
R
6' =
1 6' 6' 1 6'
.
1 6'
6' 6' 2 . == .
*&
& $# 4 " 6 * 6'
6' A .
&
< >
( )##
! 6' 1 6'
) : . ! & D)&,,E 6' < 4 & 1 : " % * 6' ? 7
6' < M ! ) <
% )
6'
* >+
6'
*)
( A «data security»
Channel
{adversary=default}
send(d:Data)
s:
receive():Data
send(d)
Wait
Send /transmit(d)
S:Sender
R:Receiver
r:
transmit(d’)
Received
Wait receive() /return(d’)
r
s
«Interface»
«Interface»
sending
receiving
send(d:Data)
receive():Data
S:Sender
«critical» {secrecy={d}}
«send» R:Receiver receive():Data transmit(d’:Data)
send(d:Data)
Sendernode
Receivernode
«LAN»
Sendercomp
«LAN»
Receivercomp «encrypted»
S:Sender
R:Receiver
«send»
6 #"3 ) & >7 !
! .
)
(' 4 %
1
**
!
.
&1 1 7 S /
( ( 0
2
)
2
! &
.
.
* >7 &
B . .
.
. .
Æ
1 . .
.
Æ
)
6'
& 8+7 ;
*
;
H
.
. )
. (
6
& LLL
9 GLM * GLN
;;S " " & L78
1
*+
( A «data security» {adversary=default}
SecureChannel
S:Sender
send(d:Data)
R:Receiver
receive():Data
s: send(d)
entry/i:=i+1
entry/j:=0
s
r
request()
r:
Request
/request()
Wait
entry/i:=0
8
> 8 8 99; ? 88 8 999
Send
transmit(E)
WaitTrm
receive()
8 33 9 9
WaitReq
entry/j:=j+1
return(C)
33; 8 8 8 999 >
8 8 8 999; ? 8 33 9
Received
«Interface»
«Interface»
sending
receiving
send(d:Data)
receive():Data
R:Receiver
S:Sender
3 Æ:
«critical» «send» {secrecy={d}}
3
receive():Data transmit(e:Data) request():Exp
«call»
send(d:Data)
Sendernode
3 Æ:
«critical»
;
Receivernode
«LAN» «Internet»
Sendercomp S:Sender
«call»
3
«LAN»
Receivercomp R:Receiver
«send»
6 #"3
.
+
1
.
. 4
.
;
Æ
+
. ;
(' 4 %
;
1
*-
" ;; +%
;;
;
9 N+L
&11 7 $"
S ( " ;; ; $4 Æ % S ( " ;; % S Æ $4 /
.
;;
.
H & LL8
.
" ;;
%
S
.
.
& ;;
(
&
;;
;;
;;
.
" "
%%
.
S '
# $ . 1
Æ D) -7E
>> (
. ; !
"%
!
. )
"%
" "% %
" "% %
+
( A
&11 7 S ( " ;; ; $4 Æ % S ( " ;; % S Æ $4 /
) >7 # $
% ! . , $
/*
1 2 . ! &
D)&,,E 1 :
D?C -+E
( : 6'
* >L
.
1
;
;
!
(
'
1
!
.
!
.
.
B . !
.
!4 8! " 4 "9 " 44 84 4 1 "9
( A !4 «data security»
TLS variant
{adversary=default}
C:Client
«critical»
; ; ; ;8 9
+'
S:Server
C:Client
3 : 3 Æ 3
resp(shrd:Exp,cert:Exp) «send»
«critical» S:Server ; ; ;
3 Æ:
entry/i:=0
entry/j:=0
entry/i:=i+1
entry/j:=j+1
«send»
> ; ?
3
> ; ?
tls.C
tls.S
init(n:Data,k:Keys,cert:Exp) xchd(mstr:Exp)
tls:
Si :Server
C:Client
8
8 33 99
8 33 9
8 33 9
8 9 > 8 8 99 ; 8 8 8 999 ; ? 33; 33; 33; 8 8 99 33; 8 8 8 999
> 8 8 99 ; ?
«LAN»
clientsite
33; 33;
33;
serversite
«LAN»
«Internet» serverapp
clientapp C:Client
«send»
S:Server
«send»
!4 1
+
( A
" % . " % " % 1 . ) " ;; % 1
.
. )
;
)
)
6'
& 8+7 ;
.
&$
)
.
&
6
.
!
) . * GLN .
. ! 2 * .
1
)
;;S "
& L78
"
!
( A !4
+.
1 "%
"
" " "
D
" ;;
;;S
;;S
" "
D
%%S
"
&
"
;;S
" "
;;S ;;S
%
" ;;
% .
" %%%S E ;;S " " " %%
" "
"
"
+
;;S .
%
" ;;
%%
%%S E
"+%
+
"+% S
" %%% ! .
!
D&GNE
;
;
;
;
" ;;
%
%
" ;;
%
" ;;
* >L
0 D)--E * .
" ;;
" ;;
%
%
.
!
.
.
S
S S
6
. .
= 6'
& 6'
( .
+&
( A
( +% 1 2 & M7+
.
( ! &1"1 0 / 8/9 S ( /
:
.
/
o
o
/
/
/
D)&,,E
( +4 1
;;
;;
;;
.
* >8
0
.
=
;; ;;
)
;
;
;
;
" ;;
" ;;
%
;; %
" ;;
1
>8
%
.
.
. 0
( A !4 «data security»
TLS variant
{adversary=default}
C:Client
«critical»
; ; ; ;8 9
S:Server
C:Client
3 : 3 Æ 3
resp(shrd:Exp,cert:Exp) «send»
3 Æ:
entry/i:=0
entry/j:=0
entry/i:=i+1
entry/j:=j+1
«send»
«critical» S:Server ; ; ;
+(
> ; ?
> ; ?
3
tls.C
tls.S
init(n:Data,k:Keys,cert:Exp) xchd(mstr:Exp)
tls:
Si :Server
C:Client
8
8 33 33 9 8 33 9
> 8 8 99 ; 8 9 8 8 8 999 ;
8 8 8 999 ; ? 33; 33; 33; 8 8 99 33; 8 8 8 999
8 33 99
> 8 8 99 ; ?
«LAN»
clientsite
33; 33;
33;
serversite
«LAN»
«Internet» serverapp
clientapp C:Client
«send»
S:Server
«send»
@ !4 1
+)
( A
.
!
.
B
.
<
.
. .
0 . ( ( =
. >8
.
1
'
* >8
1
.
.
.
* >8
+
=
.
( ! &1&1 ( " 0 0
( S / "
" ( " 0 0 S S / 7 " S ( ( ( 5 ( &$
"
"
+
"
(
$4 $4
.
" ;;
0 0
;
+
;;
%
( % ;
" ;; %
" ;;
(
6
S
0 /
S
S
( A !4
+*
. " ;; ;; % .
%
S
" ;;
%
"
S
%
" ;;
%
"
1
. . 1
.
.
S
"
+
S
(
"
& LL8 % !
!
.
" ;;
;; %
.
>8 .; B .
.
.
;; ;;
"
;;
%
.
B
.
+ ) (
.
# $
.
Æ
Æ !
+
< & ! $ $ .
.
*
) .
.
++
( A
. ; ! .
# $ &
1
;
3 &1)1 & " "$ 0 ; 0 S ( ( " ( 5 ( " ;; ;; % ; ; ; 6 S
$4
$4
-
"
-
-
0
;
;
+
0
" ;;
%
" ;;
%
2
>>
0
/
S
S
.
1 .
!
.
+
+ )
.
. .
% &
'
! 6' < 4 & "<4&% D<4-+E <4& 2 ,- Q B " / !
% ! . D)?&1--E . & # $ "=&% (
(. % 6 4 B
+-
; !
* >>
<4& D<4-+E
; " % " . % " % =& " %
; " % H " .% ! " % < " % < 4 " % " % 6 " % : ; 9
Funds Issuer LSAM Load Device
Card Issuer
POS Device
System Operator
Card Appl.
PSAM
% 6 4 B
-
( A
!
&
<4&
& .
!
!
D<4-+E 0 <4&; (
!
. *
&11 ( ( B B =& * >M =& D<4-+ & GGE =& & ) ' "&)'% &)' ) B &)' ! <4& ! D<4-+ 5 H @E
8 ! * >G 6'
*
;
1
& L78
;;S "
1
"
)
&)'
=&
(. % 6 4 B
-'
POS Device Functional Components Scheme Operating Data Chip Card Reader Transaction Data store Display (Optional) POS Terminal Application User Interface
Power Supply
Key Pad Collection Interface Receipt Printer (Optional) PSAM
,4 <4
%
&)'
!
%
'
!
" % .
5 .
" % .
"
"
!
( &)' *
)
<
& . &)'
.
&
&)'
8+7 !
) . (
)
6
-
( A
security» Purchase «data {adversary=insider} «critical» ; ;
CEPS
3 :
C:CEPS
3
P:PSAM
Pcert(id,k,cert) Deb(nt,exp) «send»
PSAM
; ;
3 :
«critical»
;
entry/NT:=0 «send»
D:Display
3 3
purch.C
entry/NT:=NT+1
> ;
purch.D
?
purch.P
Ccert(id,k,cert) Resp(e,exp)
purch:
C:CEPS
8
8
> 8 9; 33 8 8 8 999 ; 33 33 33 33 ? 33; 33; 33; 33; 33;
8
33
8
8
33 99
> 8 9 ; 33 ?
33
8 33 99
33; 33; 33;
«POS device»
POS device Card
8
33 33 9
> 8 9; 33 ? 8 8 99; 33 33 33 33; 8 8 99 33; 8 8 99 33; 8 33 33 33 9
D:Display
P:PSAM
33 99
33 33
8
«smart.card»
PSAM
«wire»
Cardapp C:CEPS
«send»
«smart.card» PSAMapp P:PSAM
«send»
«send»
Display
«wire»
Dispapp D:Display
4 B %6 4
9
(. % 6 4 B
)
-.
1
. )
=& &)'
&
- 5
&
! &)'
-
&
U
&)'
!
'
!
=&
'
&)'
4 &)'B
.
.
"
!
B
&)'
!
;; %%
!
"
!
;; % "
!
%
"
!
" %
5 .
.
. . .
#. $
. &)'
'
'
!
&)' 9 .
&
B ;
. ; . 'B ! B
.
&
.
. ! .
!
. .
.
&)'
. ! & !
.
-&
( A
( <4&
&)'
=& D<4-+ 5 +L * 7-E
B &)'B . =&
&)' &
=&
&
. &
' &)' !
" ! ;; ! ;; ;; &% S
!
&
. .
.
!
&)' .
.
*
2 =&
; < ; . B ' ; < ; &)' 1
.
!
=&
&)' .
(. % 6 4 B
-(
&)' 2 1 .
"
!
&)'
;; % B .
!
& " ! ;; ! ;; ;; &%
! ' " ;; ;; ! ;; ! ;; &% . ! ' ; 4 ! ' " ! ;; % " ! ;; ! ;; ;; &% !
< ; *
!
!
&
< ; )
&
.
!
!
!
" ! ;; ! ;; ;; &% ! !
)
" ;; ;;
&
!
;;
;; & %
!
.
!
2 )
.
&)'
<4&
!
=& .
. * 8G
: 6
.
<4&
=&
!
. 1
.
.
.
.
.
&)'
'
.
'
.
&)'
'
1
.
'
-)
( A
. ;
)
*
'
'
'
"
;;
!
;; ;; &%
o
o
&)'
.
/
/
!
o
.
: ;S
!
.
'
o
'
'
'
!
/
1
!
'
/!
.
.
( ! &1*1
( " ;; % /
/
!
$
D?1-+E
.
.
<4&
D0 -+E
.
.
&)'
'
'
.
.
!
!"
%
(. % 6 4 B
.
-*
.
%
!"
6
. &)' &)' = .
&)'
* >N
POS device
«POS device»
PSAM
«smart.card» «send»
PSAMapp
Dispapp
P:PSAM
«send»
D:Display
«wire»
«send»
Card
«smart.card» Cardapp C:CEPS
@ %6 4 B 1 *
& 8+7
&1,1 3 ( 4 ( S /
!
#
&
'
!
.$
&
-+
( A
&)'
( =& . # $ # $
&)' ) .
1 2
( ! &1.1
S
; & Æ " % ; $4
" % ; $4 & Æ
(
" % ;
$4
S
$4 ( " ;; % 0 S S S S / 7 ( 5 5 0 0 0 0 " ;; ;; ;; %
" ;; ;; ;; ;; %0 / 5 ! 0 " ;; % " ;; ;; ;; % 0 0 ( / 5 & 0 , " ;; ;; ;; % " 0 0 0 ( " / &0 , " ;; ;; ;; ;; % " 0 0 " 4/ 7
0 ( /
!
!
!
!
&
!
!
'
!
!
!
&
!
!
!
!
&
!
'
&
!
&
!
!
&
!
&
! !
!
!
&
!
&
!
!
&)'
!
. ! . =& &)' !
.
!
#. $ &)'
'
(. % 6 4 B
.
'
--
. !
*
.
=& ! 2 4
!
!
!
0 !
.
=&
=&
&11 ( <4& 1 .
. . (
D<4-+ * H +7E * >,
D<4-+ & +,E
!
) & ) ' "&)'% &)'
.
&)'
5 2 &)'
8 1
<4&
*
6'
* >+7
* >+- >+8
'
( A Load Device Display/ Cardholder Interface
Secure PIN pad
CEP Card Terminal Application Functions
Chip−Card Reader
LSAM
Load Host
Card Issuer
7 * >+M * * >+>
;;S " 0 "
5 " ) )
; "
% ;;S
) . &)' =
.
*
&)'
&)' 0 <4
. *
$(
)
$ $$
$
(. % 6 4 B «interface»
IntCard
«send»
RespL(s2)
LSAM
«critical» Card " # "
«interface»
IntIssuer
RespI(cep,nt,sl,hc) RespC(s3,rc)
«send»
«critical»
" $ # " !
Issuer
!
«send»
«send»
«critical»
" # "
Load(cep,lda,m,nt,s1,ml,h hl,h2l) Comp(cep,lda,m,nt,r2l,s3)
RespI(cep,nt,sl,hc) RespC(s3,rc) RespL(s2)
Init(lda,m) Credit(s2,rl)
''
«send»
«send»
«send»
CLog
LLog
ILog
!
!
! !
Clog(lda,m,nt,s2,rl)
Llog(cep,m,nt,rc)
Ilog(cep,lda,m,nt,r,ml,r2l)
.
1
$
* >+7
$
& 8+7
$
; !
6
$
$
% #& % #! &
Init
!
RespI
! # $ !$$ $ % ! $ $ $ & $ ! $ $ ! ! & % Credit RespC Fail & %& & $ && ! & Success
3 7
«critical»
«send»
& $ ! &
RespC
& $ ! ! &
Fail
Init
&
%
«send»
«send»
%& &&
Credit
«critical»
C:Card
c
!
entry/ nt:=nt+1
l
!
entry/ n:=n+1
entry/n:=0
L:LSAM
Ilog(cep,lda,m,nt,r,ml,r2l)
! !
ILog
«send»
Load(cep,lda,m,nt,s1,ml,h hl,h2l) Comp(cep,lda,m,nt,r2l,s3)
Issuer
«interface»
! # ! $$ $ $ entry/nt:=0 $ $
RespI
Llog(cep,m,nt,rc)
!
LLog
«send»
RespI(cep,nt,sl,hc) RespC(s3,rc) RespL(s2)
!
!
«send»
«critical»
RespL(s2)
IntIssuer
$ % ! ! $ $
Success
Clog(lda,m,nt,s2,rl)
!
CLog
Init(lda,m) Credit(s2,rl)
«send»
LSAM
«interface»
RespI(cep,nt,sl,hc) RespC(s3,rc)
IntCard
Card
«critical»
$ "
«data security»
% #& % #! &
l:
Load
i
I:Issuer
' ( A
Init
i:
& Load
C:CEPS
Fail
Load?
L:LSAM
«smart.card»
l:LLog
loadapp
Loadacq
«Internet»
«send»
«send»
4 B
«LAN»
«send»
«send»
i:ILog
I:Issuer
«issuer node» issuerapp
Issuer
%# ! !
! !
%# & ! &
!
! !$$ $ $ $ %
% ! ! $ $ %& Fail $ $' % ! ! $ $
Init
! & # &
Success
&
$ $ &
$ & $
RespI
$
! $ !
# !
«smart.card»
c:CLog
cardapp
Card
c:
(. % 6 4 B '.
'&
( A 8 9 33; 8 33 33 33 9 33; 8 33 33 33 9 > 8 9; 33 33 33 ; ? 33; 8 33 33 33 9 8 9 8 9 RespI 33; 8 33 33 33 9 8 9 33 33 33 ; ? 8 9 > 33; 8 9; 8 33 33 33 9 8 9 8 9 !
#
!
Success #
# "
33; 8
!
"
#
Load
8 33 33 33 9 9
"
Fail
#
33;
8 33 33 33 9 8 9
"
$
" !
$
!
3
8
9
%$
" "
89 8 9 ?
% "
33; >
8 9 33; 8 33 33 33 9
%$
!
Fail
$ '
8
9
%$
Init
"
#
Init
!
>
!
Load?
8 9 8 9; 33 33 33 8 9; 33 33 33 33 33 33 33 ? 33; 8 33 33 33 9 33; 8 9 33; 8 33 33 33 9 8 9 &
!
!
% !
8
9 9
$
! #
8
%$
!
3
8
!
33 33 9
33
9 33 33 9 33 33 9
8
9
#
8
!
9
8 9
8
"
9
%
!
!
9 33 9 33 33 33 33 33
33
9
"
9
9
9
!
!
!
%$
933;
9
"
!
33 33 33 9 33 33 33 9
8
9 9; 33 33 33 9; 33 33 33 33 33 33 33 ?
%$
8 8 8 &
>
I:Issuer
8 33; 8 9 33; 8 33; 8
47
!
#
8
" #
8 9
% !
$
8
?
"
%$
!
>
;
33; 8 9 33; 8 9 33; 33 33; 8 33 8 33 33 33; 33 33 33; 8 !
8
%$
L:LSAM
> ;
8 33 33 33 9? ;
33 33
#
33 33 33
8 9 33; 33; 8 33; 8 33; 8 8 9 33; 33; 8
9
"
$
!
!
> 8 9; 33 33 33 ; ?
C:Card
(. % 6 4 B '(
')
( A
!
.
$
)
)
;
. &)'
.
&)' !
.
&)' ) .
)
&)'
*
5 &)'
)
2
"
%
# 6 4A # # 4A " 1" 4A # 7$ B # B B 3 8 33 33 33 9 3 8 33 33 33 9 7 1" # 1" # 4A 33 33 33 33 33 33 33 9 8 #" 4A9 8 3 8 33 33 33 9 3 8 33 33 33 9 3 8 33 33 33 9 8 33 33 33 9
%
!
! #
!
B
(. % 6 4 B 1
&)'
$
&)'
B
$
.
#! 2
-
.
&)'
$
&)'
-
1
$
$
<4
#! 2 $
6'
'*
#
- "% % 7 0 "% %
. . % &)' ) S " ;; ;; ;; ;; - ;; ;; ;; 7 % - 7 . &)'
7 .
.
" "-
%S
.
;;S
"
.
"
% 0 .
-
% %
7
;; ;; 7 0
" " % S ;; ;; ;; ;; - ;;
.
% &)'
;; ;; ;;
-
.
! . # $ $ -
"
.
.
&)'
.
/
&)' 0
/
.
=
" %
&)'%
$
/
'+
( A !
&)'
# $
S /
.
$
! &)' 2
# $
.
$
/ /
!
.
.
#
$
.
!
/ .
/
0
S /
!
0
0
.
/
/
!
0
)
! .
.
! &)'
0
.
0
.
$ 0
.
S /
&)'
-
! &)' #
$
)
0
/
$
$$
/ .
! &)'
$
/
"
. %
/
)
0
$$
!
.
0
$
&)'
!
.
S
/
S
/
.
S /
.
( 1 )
&)'
!
.
.
.
)
.
(. % 6 4 B ( )
'-
.
&
.
0 .
=
.
'
#
$
D<4-+ & MM+ME
&)'
&)'
) &)' . ;; ;; ;; . 7 &)' ;; ;; ;;
.
&)'
;; ;; ;;
&)'
-
0
.
;; ;; - ;;
B
B 1
<4&
&
<
; * D) -+E
4
% <4&
#
''
( A
O
.
$ D<4-+ 5 +,E 0
!
* ; < ; !
; )
< ;
.
!
.
" . %
=
.
2 1 2 1 )
<4&
$
.
D<4-+
& MM+ME 2 ; ; &
S
"
;; - ;; ;; ;; 7 % S " ;; ;; ;; %
;; ;; ;;
;
(. % 6 4 B
$
$ " %
$ " / %
;
$$
;
"
%
"
$$
% $ " ;; ;; ;; % " % S
'''
: 1
. .
1
,
. % * 1 !
S " ;; ;; ;; ;; - ;; ;; ;; 7 % 1 S
1 ;; - ;; ;; " ;; ;; ;;
;; 7 % < *
.
1
0
*
,
! (
.
D) -+E &
&
;
&
"
%
( ! &1 /1 ( /
«critical»
«send»
RespC
«send»
! RespI
Llog(cep,m,nt,rc,s5)
!
LLog
% (
%& &&
Credit
& $ &
( ! $ ! &
Fail
& $ ! ! &
RespI(cep,nt,sl,hc) RespC(s3,rc) RespL(s2,s5)
«send»
! «send»
«send»
c
l
!
entry/ n:=n+1 entry/ nt:=nt+1
!
entry/n:=0
L:LSAM
entry/nt:=0
C:Card
Ilog(cep,lda,m,nt,r,ml,r2l)
! !
ILog
«send»
Load(cep,lda,m,nt,s1,ml,h hl,h2l) Comp(cep,lda,m,nt,r2l,s3)
«critical»
Issuer
«interface»
! # $ !$$ $ % ! $ $ $ ! $ $
Init
Success
Clog(lda,m,nt,s2,rl)
!
CLog
Init(lda,m) Credit(s2,rl)
«critical»
RespL(s2,s5)
IntIssuer
«send»
LSAM
«interface»
RespI(cep,nt,sl,hc) RespC(s3,rc)
IntCard
Card
«critical»
$ "
«data security»
% #& ( % #! &(
l:
Load
i
I:Issuer
'' ( A
Init
& Load
C:CEPS
Init
Fail
Fail
Load?
! !
%# & ! &
L:LSAM
«smart.card»
l:LLog
loadapp
Loadacq
«Internet»
«send»
«send»
4 B
«LAN»
«send»
«send»
i:ILog
I:Issuer
«issuer node» issuerapp
Issuer
!
%# ! ! ! !$$ $ $ ( ! $ $ %(
% ! ! $ $
% ! ! $ $ %& & $
$'
! & # &
Success
&
$ $ &
$ & $
RespI
$
! $ !
# !
«smart.card»
c:CLog
cardapp
Card
i:
c:
(. % 6 4 B ''.
''&
( A D?C -+E ) <4&
.
. D0 -+E
-
0
. -
0
.
6
1 ;
.;
;S " ;; ;;
;; ;; - ;; ;; ;; 7 % . % . %
$
;
$".
.
" %% .
* >+N
6'
>7-
* >+G *
* >7+ 1
.
2
«interface»
IntCard
RespI(cep,nt,sl,hc) RespC(s3,rc) «send» «critical» Card " # "
«send»
CLog
RespL(s2,s5) «send»
LSAM
"
«critical» $
# " ! !
RespI(cep,nt,sl,hc) RespC(s3,rc) RespL(s2,s5)
Init(lda,m) Credit(s2,rl)
«interface»
IntIssuer
«send»
«critical»
Issuer
" # "
Load(cep,lda,m,nt,s1,ml,h hl,h2l) Comp(cep,lda,m,nt,r2l,s3) «send» «send»
«send»
LLog
ILog
!
!
! !
Clog(lda,m,nt,s2,rl)
Llog(cep,m,nt,rc,s5)
Ilog(cep,lda,m,nt,r,ml,r2l)
@
(. % 6 4 B
% #& ( % #! &(
!
Init
''(
RespI
! # $ !$$ $ % ! $ ! $ $ $ $ & $ ! ! & % ( Credit Fail RespC &
%& ( ! $ & $ && ! & Success
@ 3 7
8
9
%$
" "
8 9 3; 8 33 33 33 9
%$
>
? 8 9
$ '
!
Fail
% " "
8 > 8 9 8 9; 8 9; 33 33 33 3; 8 33 33 33 9 3; 8 3; 8 33 33 33 9 8 %$
Init
&
!
9 Load? 33 33 33 33 33 33 33 ? 33 33 33 33 9 9
!
!
(
% ! (
8
9 9
$
! #
8
%$
!
@ 3
( A '')
!
8
8
9
8 9
!
#
!
8
9
% ! (
(
8 %$
"
!
9
!
" #
9
" (
8
$
8 %$
!
(
9
> ; 8 9; 33 33 33 33 ? !
L:LSAM
9
"
%
!
9 9; 9;
!
%$
!
9 33;
"
9
33 33 33 33 33 33 33 33 33 33 ?
8
33 33 9 33 33 9 33 33 33 9
33 33 33
%$
&
>
8 8 8
I:Issuer
8 33; 33; 8 9 8 9 33; 33; 8 8 9 33; 33; 8 33; 8 33 33 33 9 33; 8 33; 8 33 33 33 9 33; 8 33 33 33 33 33 33 33 9
8 9 > ;
8 33 33 33 9?
!
#
;
C:Card
"
9
33
33 33 9 33 33 9 33 33 9 33 33 9
33 33 33
!
> 8 9; 33 33 33 ; ?
8
$
8 9 33; 33; 8 33; 8 33; 8
!
9 33; 33; 8
#
8
47
(. % 6 4 B
''*
1 *
6'
& 8+7
&1
1 % 0 0 0 0 0 0 0 0 3 % 0 0
( 4 ( % S /
.
1
2
.
$;
< ! "
$
%
&)'
%
$
.
$
( ! &1 1 ' %
;
Æ .
;
S
Æ
(
S
( 5 5 " % ; 0 S 3 0 ( 4 S ;; ;; " ;; ;; ;; % ;; " " % S " ;; ;; ;; % 3 0 $ 4/ ( " % " % ; 0 ( S / , 5 ( ( ;; ;; ;; ;; ;; ;; ;; 7 % ( S " S " ;; ;; ;; % 7 S " ;; ;; ;; 0 0 0 %0 / 7 " ( ( 5 " % ; 3( $ 4 " % ; 0 3 0 , 40 ( % ( S " ;; ;; ;; ;; % ( S " ;; ;; ;; % S 3 0 , ( 4/ .
/
.
$
/
.
.
$
-
&
&
.
-
$
$
$
$ /
*
&
$$
$$
&
&
*
''+
( A
5 " % ; 0 S " " % S ;; ;; " ;; ;; ;; % ;; " ;; ;; ;; % 0 $ / 1 , .
$
/
.
2
S
.
$
" ;; ;; ;; ;; - ;; ;; ;; 7 %
.
$
%
.
>++
$
$
$ " / %
. $ )
;
$$
%" 0
9 ? ?93 +7 & ) DA ,, 3 --E Æ
* )+
.
DA ,N 5/,,E ! ) . 1
6'
) . ?
? ! & >8L
&1"1 '
3 ; ) 2 D&&,8E
-
9 (
"<5%
(& 5 4 I (
<
''-
' *
) *
Æ
! ?93 +- & )
( 0
"
* ?93 +7 ( DA ,, 3 --E
)
D&&G>E !
?93 +7 6H .
+ '
2
+ '
*
, '
)
.
?93 +7
&
) DA ,,E !
* )+
)
*
* )+
* )+
.
* A
*
.
.
*
)+
'
( A
* )+
0
Æ
DA ,NE
* .
.
&1"1 1 . 6'
; "+% * "7% 6
*
. "L% '.
*
Æ
"
. < M "8% 4
.
0 "+% ; " 6H% " % ! & >8L
; & ; 2 : * ;
! . & . . 5
. . ?
. .
(& 5 4 I 89
8
8
''
recMaster
99
8 9 > 8 8 99 ; ? 99 3;
8 8
8 9
)
*
waitReq
checkReq
8 9 3; 8 = #
> ; ?
9
!" * >77
#
. .
* >7L ! .
;
(
# . * . . . Æ
89
o
)
8
8
99
/
8
o
o
8 9
8
)
)
99 )
8 9
)
= #
'
( A
. .
#
.
=
#
. .
. .
"%
.
1 & LLL
.
1
* "%
)
.
*
.
. .
& >7 :
;
.
#
.
. * >78 0
.
1
: . 6'
/
o
o
/
)
)
= # " E
&1"1 $4! + ' 1 ) ;
(& 5 4 I
'.
www.bankeasy.com Server
Local <
>
Browser
<> Store
<>
www.finance.com Server
<>
B 3 A
& . 6' 1 6'
1
* )+
6' ) 6' ( !
; !
. 5 . *
* >7>
.
; "+% ) . + 7 " . % "7% ) " % . & !
.
< *
.
"L% ) . " .
%
.
* ! )
2
*
'&
( A
)+
1
* >7M
Local
«guarded access»
JavaSecArch:
getObject(Exp,Exp):Exp StoFi.Read():Exp StoFi.Write(arg:Exp) FinEx.Read():Exp
[obj=FinEx] /ExcGd.chkGd(sig)
FGdReturn?
return /return(FinEx)
getObj(obj,sig)
WaitReq
CheckReq
/return(MicSi) /MicGd.chkGd(sig) return MGdReturn? [obj=MicSi]
MicSi.Sign(req:Exp):Exp
[obj=StoFi]
JavaSecArch
«call»
chkGd()
/FinGd.chkGd(sig)
MicGd limit: Bool
«call» chkGd()
«call»
«call»
«call»
FinGd
«call» ExcGd
slot: Bool chkGd()
StoFi
«guarded» {guard=FinGd}
«call»
FinData: Exp Read():Exp Write(arg:Exp)
chkGd()
FinEx
«guarded» {guard=ExcGd}
MicSi
«guarded» {guard=MicGd}
ExcData: Exp
MicroKey: Keys
Read():Exp
Sign(req:Exp):Exp
ExcGd:
chkGd(sig) CheckReq
WaitReq [sig=cert] /return
FinGd:
MicGd:
chkGd(sig) WaitReq
CheckReq
[sig=bank slot=true] /return
chkGd(sig) WaitReq
CheckReq
[sig=finan limit=true] /return
B 3 " 1 ? & )
(( A
'(
1 2
*
1
,* *
+ 7
*
.
. 0 .
)+
! 6' < 8
.
!
? 7 & )
"L% & >87
Æ
1
2
6'
.
2 ! H "8% & >87
%% 1 ! 1 ' & 4
&1&1 - 8 ' ! A . DA0?1-LE
. .
<)&4
6'.
D&0,,E
.
*
')
( A
Client
Webserver
Backend
+$ $
8
9
$
8
8
*
99 -$
!!
-$
8
-$
8
!!
8
9
*
-$
99
8
-$
8
=5
!! !!
8
9
*
99
,$'
,$'
A "
%
&&
. && .
.
B
&&
. "
%
* >7G )
2
" %
.
.
B B . B . . * . !9
. !9 . B
.
!9
.
(( A
'*
.
. .
!9
=
.
! DA0?1-LE
6'
6' " %
*
&'/ D'',LE
.
. )
&'/ . &'/ .
"
% ! &'/ :
6'
.
' DA0?1-LE
&1&1 ! ' ! !
/
D/ -LE
A *
' H "5'5*% 6' A
!
! 5
.
& Æ 6' < M 1
6'
.
. .
6'
&1&1 '! $! ' ) / ) A
'+
( A
. &
6'
&1&1" < ! $ : 3 )
A * ' 0 &
& "5'A&% 4 0 < "A . % D0-LE ! 7--M
N-
A !
4 4 5 2
. 1
6'
&1&1& $ 0# !
6'
=. ' 1 <4& & >L )
.
)
6'
&1&1) $ ' 3! ) A 0 6'
.
5
6'
(* 5
'-
%2 - & >+ >7 (
D?C -+E H . & >+ D)*A-7E .
<
<
)
& >7
&
! D1-7E D,NE = 2
& >7
& D)&,,E .
2
& >L D?1-+ ?C -+ ?C -8E <)&4 D0'H ,NE
D?1-+E
6' . D?1-+E
<4& '
& M8+ H
& >L
DH4--E )
D)?&1--E
& D)53,LE & 2 D) ,, &<1--E & >8 D?C -+E ! D?C -7E 6' <=H5) H & >8 ? 7
DA ,,E . ? 7
D3A,N 1*,N 3 --E " % . ?93 +7
%3 1 6' 1
1 :
.
! & D)&,,E 1 < 4 & :
'.
( A
1 6' ? 6' 1 <4 2
6' .
: <4
=
6'
)
6'
.
>--
.
D<4-+E
6'
. . 6
.
2
.
6' .
!
. ( (
.
< M ! 6'
* ##
+ * ##
*
!
.
6'
6'
1 .
6'
@'!
.
.
6'
6'
* .
6'
&
. &) HOL 6' 5 2
. . * . 6'
2 &4 ( )* !& / ! / 1 . 6' !
@'!
6' ' = * "'=*% 6' @' ' ! "@'!% !
'.&
) !
@'!
)1 1 0#9 + =0+> 4 6' 6' 0 6'
)
6'
6' 6' @' ! 7--- = ' A "='A% @' ' ! "@'!% D@'!-7E 6'
@'!
'=* D'=*-7E '=*
.
6' <1' "< 1 '% ! :
( 2 * M+ !
<=H5)
< 6' <1' 1 ( '=*
/
* M7
#5 ' $
#3 $
-
6' )
6
.
( (
MOF Model
0
M3
UML Meta Model
M2
UML Model (structure) Information (instance)
, 13 $
M1 M0
. '
)' 6 %A46 ! A " ! $$ J , $ J 8 9 %2 J 5 J @
,$ $
,
$
'.(
.$
$
, 13
2 '=* '=* . ; '=*
'=* !
'=* " '=*
'=* .
) .
'=* .
.
'=* . '=* 2 ) '=* .
'=* .
'=* .
.
. '=* ; 9
< 4 <
'=* <
'=* '=* ; @' ' ! "@'!% '=* @' !
@' '=* * 2 6' 6' '=* @'! 99 @' & 6' 2 '=* '=*
@'!
'.)
) !
; '=* ? ' ! "?'!% '=* ? '=* @' @'! ! ?
) '=* '=*
)
)! . 6' @'!
@'
6'
)1 1 ? % 2
@'! ;
< @' " ?
" @
@&% @'! . @'! ?
: (
@'!
@'!
@' < D<-LE 0
@'!
@'!
6'
6' * 6' 9 H %
'9H "'
D -LE
6'
4 DA -LE )
+M <
&6'
D&6-LE '9H '=* @'! ?'! * ML . 6' ! +
@'!
2 '9H . 6'
@'! 6' +> = '
A "='A% ) 2
) A !
'.*
MyApp JMI MOF
r
ate
MDR 3:
[UML 1.4]
ge
2 : ins
1: 01 - 02 - 15 . xm
ne
UML 1.4
ta ntia te
MyUml
l (U
4: M
ML 1.4 Me tam od el)
yU
ml
. xm
i
5@ #" 7 ) @'! '9H ?'! L 6' ! 8 6'
?'!
?
@'! 5
'9H
6' 6'
2 ! ( / , )* 6'
6 ' D?&) -8E
)11 ( +
6' & 8+7 ;
'.+
) !
& ;
& ;
2 "
%
< ; 6' " . % !
4 !
6'
.
2 6' &) HOL
6'
6'
.
2 6'
2 2 6'
6'
2 & < G 6' 2 < N " % 6' & 2 6' 6' 6' * M8
(
6'
6' )
"
% 6'
* M8
6' +>O@'! +7
6' '9H
) A ! UML Editor (UML 1.5 / XMI 1.2 - compliant) e.g. Poseidon 1.6
'.-
data flow “uses"
UML Model (UML 1.5 / XMI 1.2)
Modified UML Model
Text Report
Result Error Analyzer JMI MDR
Analysis engine Static Checker
Dynamic Checker Model and Desired properties
Analysis Suite
?'!
'9H .
2 . 6' . . 6' ! . 2 2
. . 6' 2
)11 ! ! 1 .
6'
'&
) !
6' . ! . 6'
.
.
(
O 9(
)
6' ) ; ! 6' ! 4 . 4
6' .
6'
.
4
* M8 * M>
«framework» GuiWrapper
IGuiMode
ITextMode
«tool» MyUmlTool
«framework» WebWrapper
!
IWebMode
) A ! ( 4
*"
. "A6!%
&
'&'
""
A6!
.
0
*
O
"
A6!
)
6' . 6' +>
@'! +7 6'
!
D@'!-7E
6' . !
& M> = ; . 6'
)11 3 8 1 2 . & D0-LE 6' . < 8
< N
.
& < 8
.
&
!
& )
&
A
.
'&
) !
)11" '! ( ! 1 6' 2 " % 6' . < .
.
6' .
.
D&&-+E B &404= D'! ,G &1-- &-+E &)&& D150 -7E 1 D05/,GE / DH/-+E * 6' * !
"%
. !
& . Æ
. # $
)11& ' < & 0 (
B B & .
0
.
2 * )( 5 !
6
. 6' & . &) HOL D0?-LE @'
&) HOL
). 1 @ 53 4A @K.
'&.
6' 6' <)&4 @'! 6' . .
2
5 2
. .
< &) HOL Æ 2 . 2 2
M----
.
.
!
DH-LE !
2
= # $
9Æ
" % & 2 2 ! A . . M---- )
.
2
.
. &) HOL .
6'
. .
(
6' . & M7
@'
&) HOL 6'
'&&
) !
6' <)&4
@'!
2
.
5
2 . . !
)11 '! ' 2 ( < .
6
. / .; ! ! . ! : B ! ( ! . .
. . &) &) ; ( . : . :
' * MM
) &)
*
.
B ! &
@' B
@'
). 1 @ 53 4A @K.
Data
'&(
Executable
Business Application Data
Business Application Structure
Analyzer
Rules
, L 6' ) @'!
B
H @' 1
. )
# $ B # $ B
( '
2
(
& M+ !
='AB .
.
6' +
"'+% - "'-% )
#$ #
$ 2 *
# $
6' # $ '+ =
'&)
) !
2 .
#
$
'-
'+ '-
)
#$
4 #$ # $ #$
6' '+ 1
.
#? $ #
$ # .$
# $ @'
! "H5)<%
6'
! 2 H5)< !
: 2 )
* MG;
* MG
3
2 B
$
!
$ !
$
$
#
# $ : 6' : B ! :
# $
2
! # $
!
). 1 @ 53 4A @K. user -name : String
'&*
role role_id
-role_id : int
-name : String -role_id : int
role_id
transaction
permission
-name : String
-name : String
-role_id : int
-role_id : int
-transaction_id : int
-transaction_id : int
transaction_id
4 $#
#:
$
# $
)11 5 # $ 0
. ! 2 @'
)
* MN 2 @' & 6' 1
@' &
2
2 )
. * M, =
'&+
) !
4 B
# $
# $ * M,
!
# $
# $
# $
# $ # $ # $ # $
2 2
H
* M+-; " % H=0!5!!= H4<= 9!!= "
% " % "
( 9456A !*= 1)H!A 4HH=H *)) %
User +name: john +uid: 500 +role: users
Role +name: users
User
User
+name: peter +uid: 501 +role: users, admins
+name: karen +uid: 502 +role: admins
Role +name: admins
!
). 1 @ 53 4A @K. rule
'&-
subrule 1..* -head : String
-subrules[1..*] : subrule -name : String
contains
-type : int
-tail : String -constraints[0..*] : constraint
-message : String -level : int contains
0..*
has type
constraint
-PROHIBITION : int = 1
-element : String
-PRECONDITION : int = 2
-condition : String
% 2 B ) ; 2 B
0 ; . . 1 !
# $
# $
;
; . ; H=0!5!!= ; . ; 4HH=HS8 ! ; ; ; ; SS
'(
) !
;
SS
.
;
# $ ) @'
# $
2
) !
"
# ; $%
"
2 B # ; $%
4HH=H "# $ # $% . ; =
. 1 2
*
# $ # $ 1
! ! 2
B !
! . 4
= .
! 2 .
; . ) . 5 *
2
2
& * < )
). 1 @ 53 4A @K.
'('
)
B
& # ?$ =
# $ &
+ ) 2
# $
)11 $ 2 1
! Æ Æ !
#) $
2 # ) $ .
2
$ ' ! 1 D&-LE &)
!
< 4 I
2 *
*
. . * MG
&)
Æ ) * M++
@ ! " % 8 $ 9 " % 8 $ 1 < 9 "
$ 4A #" <
" 4 "
'(
) !
; 3 & ? 3 & ?
3 & ? ? 1 ;
; # $ # $ ?
# $
# $
;
H=0!5!!=
1 W ! )
#
$ ;
1 ;
. ;
!
* M++
3 #
$ & # $ 3 & ) 2 !
.
). 1 @ 53 4A @K.
'(.
!
' ( ) 2
5
&) .
5
Æ
&) =
!
Æ
!
&) .
2 B . !
5
.
=
3 3 '
!
* M+7 # $ .
&) &)
2 ) 6' &) 1 <)&4 6' 1 * A6!
@'
1
)
2 .
2
.
'(&
) ! Business Application
Rule creation
SAP
create model (CASE tool)
create rules (GUI)
UML model
XML (rules)
XML (information)
analyzer
security−report (format defined by templates)
4 B "D
2 2 0'
+ ' 2 . &) .
.
=
B 6'
@' @' & B )
@'
A6!
*
2
)& 1 %
'((
! . 6'
. 6' *
& 87
2" * )( ( ) D*-8E
# $
!
. 6'
)1"1 ( 7 < ! : 6'. 9
D?1-+ ?1-7 1?-7E !
0
* Æ
.
<)&4
6'.
B
.
2
; .
'()
) !
5
<
; ) # $ . &)) . . .
D?1-+ ?1-7 1?-7E
. * & . . *
- # 3 )
*
= D=@,,E
.
. # $
.
Æ
+
!
+
= +
+
! D=(,> /',NE !
*
.
;
)& 1 %
'(*
1
.
)
,
* .
,
. D)3&,ME !
.
.
3 @ '# (
! 2 D95A-+E
0
. ; !
" D)H-- )?-+E
.
%
<
* . &
!
.
.
0
'(+
) !
)1"1 3 < 3 ' . :
6'
1
.
& )
'
0
6'
1
*
5
2 6'
2 *
2% - & M+ M7 D?&-8 ?&-8E . 6' D?&-8E D?C -8 ?C -8E 6'
. D?C -8.E ( 7- ' B 5 6 ' D0'H ,N H?1 -LE
@'!
D& -+ & -LE
6'
4 <
1 . 2 6' &
6' D5?'*-7E 6' 06A= D&3'-+E . 6' < &
6'
6' D,,E 2
)) 5
'(-
. . 5
D
6'
.
.
6' & ML D0?-LE H 2 #< H $ D,7E
4 .
. . = D5/&-7E DH&-+E &X DA0H-LE . 2 D5-8E
)
. & M8+ D?1-+ ?1-7 1?-7E 1 . D9*,L &,G 0&,GE 9 2 A
. D95A-+E )/) D/',NE 1
. *
.
H
)A'=-8 <
D'0,N
22 ) . 6' ! .
')
) !
2 6' . 6' = 6'
2
6'
=
.
6' 1 . 6'
.
&) HOL
5 2
.
. )
2 &)
. (
. (
.
6'
6' . * :
. 6'
.
, ) $
!
< N
6' 1 6' ' . 1
: ! 1
34
6' ' :
.
. 1 6' ' * 6' ' & 1
: 2
5
6' '
. 2 6' ) <
3 )* ) = 6' '
! 6' 1
6' '
')
* A
6' !
) & ' DA ,>E 6' ' .
: D5 NM ) ,-E
1 6' ' " % (
$ , " , %
6' ' 1
7
; ) !
%
% "
-
%
8 *1 1
0 0 0 5 3 4 5 $ ; / . 0 0 / - / ) . ) -
-
%
%
-
&
1 )
!
8 *11 & 6' ' S "- 2 % - 0 - 0 2 ( / ;/
%
%
% % ( (
6' '
/ " K 7 7 # $
*'
33; 8M9 3; 8 9 8 9 8 9 8 9 8 9 ! 89 ! 89 3
').
3
%
1
%
6' '
5
R
) 5 ) 6' '
2
R
6' ' ( 5 9 G+ G7
-
&. ;
&
%
!
6 ; A
%
6' '
% "
% ;S
Y Y Y
% "Y Y % Y
R < ; !
')&
* A
!
!
5.; !
< ; % "Z %
;S
% "Z %
;S
S
!
6' '
*
<; !
" %
&
&
;S
" %
" %
" %
;S
&
%
"%
!
"%
& ; !
!
7
7
* ; !
" %
%
" %
" %
" %
R
R
*'
"%
"%
')(
=
6' '
! ; !
"
%
) & '
DA ,GE
*
; ; ! " %
; !
S
"%
S DE
" %
" %
1; !
" %
"%
S
" %
%
< ; !
;
;
;
'))
* A
;
!
" % ! % " % !
)
;S
6' '
Æ
%
%
*
Æ
.
2
2
2
S
6' '
;
% ;S %
*
2
%
1
;
R
.
# $
6' ' !
<
%
'
6' %
!
!
%
1 6' '
2
S
2
/
/
, -
S
-
/
# 1 #$ # # %%4 >+-? " %%4 # 1 1 N B 1 "
*' =
O
A 6' '
6' '
"%
"%
S DE
6' '
"&"%% - " "&"%%% S - " % - " "&"%%%
')*
2 " "&"%%% * G7
"! 8#$ 88%999 3 ! % 8 " 9: 3; "! : 8 9 3; 8 9 : 3;
$ /
$
$/
$
$/
0 0
%
;S
"
"
"%
%
;S
%
"%
%
%
)
"%
DE
S
%
"%
!
%
"%
%
%
%
"%
)
%
8 *11 0 " %$ O "% , $ , $ "% " % " "%%/ S S 0 ( ( "% O / !" ) 6' '
')+
* A
- S
% %
S
%
S
%
S
2 * GL
"! 3 3
3;
;
3; 3 3;
8 9
/
/
/
$$/
6 O 2
+ *1"1 , " %0 " % , " % ( 0 + 5 3 0 4/ " % " % 3 4/ 7 " % "" % % 7" " % " % " % -/ -
"
"
"
"
"
"
"
' )
"
"
"
)
'
) "
"
.
.
2 " ""
"
%
2
! B # 4 ..'
%
)
* 4"
"
""
% """
%
%
"
)
' 7 " "
* G8
')-
%
.
"
"
)
( 6' 6' < N
3 )* ) 1 . 6' '
6' '
.
6' '
34
!
:
6' ' = . :
.
) 6'&
6' & N+G
$
;;
5!
1
;;
;;
5!
6'& "
7
L%
5!
5! 6' ' 5! 5!
6' '
0
;;
;;
;;
;; ;; 1 5! 5!
;;
2 2 % 0 " 2 % * 0 5! 2 5! ' 0
;;
;;
0 ;;
0
"
.
. 6' < N
'*
* A
1 $ "" " % ; 5! S DE 2
"
$4
"
$4
$
.
!
DE
'" %
S "" " % S "" " % !!" %
S " % S 1 " "" " %% " % " 6'& 6' ' % & " "" " %% " % "" " %
1
# .$
6'&
8 *1&1 &
6' ' & "6'&%
#
S "
( 5 5! " 6' '
$ %
& 5! / & 5! / ! / !
0 ( ( / ;/=/ & 0 / & . S / & 5! / ! 0 ) / 0 ) $ / 7 , " , / 7 ) / *(0 , /
(
(
(
$
4
%
4
%
4
6'&
* 4" .
S
$
'*'
6' ' 6' ' 6'& !
.
$
. 6'&
#
6'&
D?3-LE
6'&
#
6' '
6'& 6' ' ! 6' '
- "$4 #%
6' ' 6' '
% "% ; $ .
"$4 #%
(
$4 #
(
4
6' '
6' '
.
4
:
2 "$4 #% * G8
! * G8 .
$
#
#
6'&
;
" % ! % "% ;S % "%
%
.
#
! .
#
.
#
6' '
$4 # R
6'&
*
# )
#
6'
' " %
#
% 6' '
;; ;; ;
#
;;
"
6'&
'* * A "! &' 3 ! 3 ( (8 9 8 9 ( (8 9 ) 3; ( (8 9 8* 8 99 3; : 8 9 9: 8 3; : ! 8 9 3 8 9 8 9 9: 8 8 9 3; : "! : 3; # : ! ( (8 9 ) 3; ( (8 9 8* 8 99 3; : 8 9 ;
8 8 9 9 8 9 9:
8 3;
/
$
$ /
/
$ /
/
$
%
/
0
0
$
$/
$$/
$/
%
$ /
0 4 !
S
6' ' !
;;
;;
;;
;;
2 $4 # 0
( 6' 6' '
S ;
Æ 0
/
$
* G> S
.
!
* G> 6' '
* G8 )
6' '
* GM
4 6' ' 6'&
#
$4 #
3 '
)
( D9 MN
1 G+E =
*. @B "! &' 3
'*.
$
89 3 8 / 9 / 89 89 ; :
$ /
3; : 8 9 3; : "! : 3; # : 8 9 3; 8 $ 8 9 3 3; /
%
/
0
0
%
/
$$/
$/
$/
3
$/
$ ; 89 : 89 ; &' 9:
$
0 4 8 " " 9 3 "!
"!
"! :
#
0
3;
0
0
4
*
& N7+ 1
. & G+ < !
D5&-+E
: 1
! : ( = & >+ *
: D),LE
8 *1)1 7( , $
[ S [0 ( , $0 [ , $/
'*&
* A
, $ ( ( $ % $ $ $, / 7( , $ $ $ / % % !
!
!
!
!
!
*
Ý
S
"
2
% ; "
%
;
& LL+
.
!
$
8 *1* = 8 ! >1 ( 0 0 $ / . $" %$ , $ ( 0 (
"
"
"
""
""
%Ý
"
"
%Ý
. $ , $ ( "
"
0 ( ,
"
"
"
"
"
""
S $ 3 4 $" %$ /
=
"
%Ý $ % ""
"
S
S
0
"
(
"
%Ý
"%
<& D0N>E <<& D'N,E
! :
!"
"-% "+%
"+%
6' '
6' '
;
% 0
"0%
0
/
2
2
/
S
- +
*. @B
'*(
+ *1,1 3 4 $" %$ $ /
1 .
($"
6'& 0
. !
#.$ 6' '
$4 # 6'& # *
G+-
1 6' ' /
8 *1. = 8 ! >1 & # S % "% " %$ # S " % ; ; 0 " % 3 4 " %$ ( S S 0 0 $ S S
/ "
$
$
0
0
(
(
0
(
(
4
$
$
0 0
1 6'& 6' ' 0
$
6' '
+ *1 /1 ' # # $ $4 # $4 #/ ! 6'& # # 6' ' $4 # 6' ' $4 # 6'& # $"
6'&
#
6' '
6'&
+ *1
1 % / 1
6'&
-
# "&
&
) % 6'&
#
# " &
6' '
&
&
* 6' '
% 6'&
'*)
* A
+ *1 1 ( - # "& & %0 ( & 0 S + 0 ( # # / ' S + 0 $4 # " %$ $4 # ( S S # "$4 # $4 # % # "$4 # $4 # %/
(
4
1 2
( ! *1 1 % ( $ - /
6'&
8 *1 " = 7 >1 7( # # 3$ 4 , # 3 4 # # 3 4 #/ 1
3 *1 &1 !, ( $ / 1 :
8 *1 ) = 8 ! >1 # # - ' "& %0 # 3 4 ' # # 3 4 ' "#%/ .
( ! *1 *1 ! # ' $ 0 (
' "& % S & / #0 # 0 # # ' $ # # ' $ # 0 # ' Æ ' $ #0 ( ' Æ ' "& %
S ' "' "& %%/
3" #7 '
$ " > %
D5&-+E
8 *1 ,1 , $0 ( $ " % " % 0 ( " % / & $ " %0 ( , $ 0 /
1
"
"
1
1
"
"
1
*( @ A# 4 " 1
'**
$
( ! *1 .1 $ " % ( Ý S Ý S 0 S ; Ý S / ' $ $ $ " % $ " %/ ' $ 0 $0 $ " %0 $ " %/
1
1
1
1
1
1
! "% "
%
R
3% !8 1
& LLL
6' 6'& 1
. ( *
.
.
. 1 6' '
.
6' ' &
&
#
* 6'&
;
6' '
!
6'&
6' '
6'&
(
S
S
'*+
* A & 6'&
#
6' '
.;
6'&
6' ' 6'& (
!
#
"%
. .
S
$
"%
;
"%
"%
"% S " % S
S
. 6'&
.
"%
# =
6'&
R
.
& < 8
(
"%
$4
"%
$4
$
$4
( $4 (
#
$4
.
"%
1
( "%
6'&
8 *1/1 & " % ( ( $4 # - - - # S 0 " %;
" %
0 ( S 2 ( 0 ( 0 " % " 2 5 " %0 1 " %S '" % ; $ ( $4 $ $4 0 / 9/9/9 (
%
%
%
%
%
*( @ A# 4 "
'*-
1 "
"% % "% " % "%% "%
" % % " % " % " %%
" % " % "%% S % "% " % "%% S
% " %%
% " %
1 1
.
.
.
"%
. 2
"%
. * ! . . .
#
#
6' '
#
.
- # S - # - # #
( "%
S
2 #
2 #
S 2 $4 #R 2 & 6'& # " % * 2 # Æ
& G+ . "#% . ;
(
"#% "#%
.
S "#%
$
% " %
" % " %
1 2 B
+ *1 1 ( #0 0 " 2 # / 7 " 0 "#%/ 1 (
( "%
Æ . .
# "#% S " # % ( "%
# 1 "#% S
"#%
2
'+
* A "#%
+ *11 # " % 0 # "#%0 / (
& 6'& ( "%
#
. .
#
) ' "# ;
#
*
%
2 #
"#%
Æ
' "# % S "# % ' "# % '
1 :
Æ : # ' "# % S ' "# % ( "% # # 1 ' "# % S ' "# %
2
2
+ *11 # ( 0 2 # 0 $
' "# %0 / #
( "%
#
' "# %
*1&1 2 8 ! 1
/
.
; )
)
/
) & . D)&N>E 0
* D',8 ',MER D)--E%
*( @ A# 4 "
'+'
*
' DH&,NE 1
& GL
.
! ( ; 6 ;
<
. ) 6 ;
* .
. 1 . 1 .
1 .
* . . !
(
. 0
=
1
6'&
. 6'&
8 *1"1 7 ( 3 4 " %.
# " % " " % %$ $4 ( 3 4 " $4 # /
(
(
1
'+
* A
+ *1&1 ( # ( ( #0 0 (
( #/ 7 ( $"
#/
*1&1 = 2 6'&
. .
2 6'&
2 9 G+8 )
& >+ !
2 * D9TNLE
2
.
8 *1)1 #0 ( " $4 #
$ " " %0 , ( $ 0 , # ' "% ( / *( ( # / 0 ( # $ "
( 0 # / . # # $ /
(
#
$ & LL8
.
!" 6' ' !
.
;;
$4
.
*( @ A# 4 "
6' '
. !
6' '
!
'+.
#
.
.
. .
.
.
. .
.
.
#
#
.
.
' < > 1 2 . .
( ! *1* = 3 @>1 & # $ "#%/
2
"#%
#
1
( 1
* 6'
6' ' < N 1
* 6'&
( ! *1, = # 4 2 8 ! >1 ' # ( 3 4 #0 ( (
#0 ( /
. 6'&
( ! *1. = # 4 2 8 ! >1 ' # ( $" # ( /
!
"
'+&
* A
*1&1 1 2
(
8 *1/1 ( # $4 " / . # ( 0
$ 0 " " % , ( $ 0 " # 0 / *( ( # ( / ' S $4 0 ( # /
(
.
#
. (
#
! # $
:
:
)
:
4 < > * Æ
:
( ! *1 = 3 @>1 ! # ( $4 " ' "# % /
( ! *1 = >1 ( # (/ # ( $4 " ( " %$ $" #/ 7 ( ( /
)
!
"
*( @ A# 4 "
'+(
*1&1" ' 1 2
8 *11 ( #0 ( / . # "% ( $ " % , ( $ 0 " # 0 ( ( "
0 , , #/
(
%
#
.
#
.
4 < >
1
( ! *1" =' >1 ( (/ # ( $ ( " %$($" #0 ($ ( #/ 7 ( ( / #
)
. 1
& LL>
*1&1& + 1 6'&
8 *1&1 & 6 # ( #
# ( / ' 0 ( /
& < >
. R
6
S
U + ( .
& LLL
$4
1 .
'+)
* A
8 *1)1 & " $4 "$ $4 $4 / 1 - 6 *
8 *1*1 & " - 6
" $4 $4 ( $4 0 , - 6 ( $4 / * ; )
$4
& LLL
"
;;
%
S
"
;;
S
%
$4
S
+ *1,1 " - 6 "$ 0 " " " / ; *
+ *1.1 " - 6 "$ - 6 0 /
Æ
6'&
#
9 GL>
* GL,
# #
6'&
#
; + *1"/1 ( 6 # ( ( #0 ( (0 / 7
2 # 0 , " 0 " ( " /
%
0 ; .
.
*( @ A# 4 "
'+*
*1&1) ! +% 1 . :
Æ
A
;
5! !
!
!
!
! 8 *1" 1 5!0 ( 5 : ( ( , 9 $ ( , "% "9%0 S 9 S 0 : ( ( , 9 $ ( , "% "9%0 S 9 S / ! : $ " ( %
. < :
(
. 4
& 8+7
)(
2
DA'N7E
' 2 R
4 6' ' :
6' '
H
.
!
(
:
# $ "
1
%
:
" .%
'++
* A
( ! *1" = ! +% >1 ( $)( 3/ $)(4 ( 5! / 7 ( $)( 3/ $)(4 ( /
:
/
/
.
32 - 6' ' (
D?C -7
?C -7E 6' ' ) & ' D51-- ?C -LE
D5 -- 5 -+ 5&-+E !
D5 ,G 5 ,NE ' DH,8 H,ME ) # )&'$ D'!5,N &,NE
6' '
)&'
6' ' & & . D?C -LE
D?C -+E
: D?C -- ?C -+E
) < , 0
D&,ME 0
D0&-+E Æ
<& D&0-7E *
: DA<&,+ ',7 ',8 ',ME DH11,8E # $ &
: D' -+E < D' -7E
D)?-+E &
D?C -+E
** 5
'+-
33 1
! < N 6'
6'
< M
.
) 6' ' < > H 1 6' '
6' ' &
:
6' '
B 6' ' & 2
1
;
. )
$ $ !"#$
1 6' ' 6' ' &
6' 6' ! . 6' =
& 6' ' &
.
< G 6' 1 (
6' 1 * 6' ) <
9 1 , 1 , )* 6' D6'-LE
6'
6' . 6' & NL 6'
( )
.
Æ
'-
+ 4" 5 1
6'
6' !
6' '
D5
)
!
1
.
6'
=
< M 6' !
. ) D31-+ +>E ) Æ
)
. D,,E * 6' 1 6'
1
& DH-7E )
6'
0
=
( 6' *
( 6'
( 6'
+' 4
'-.
0 . ; & N7+ .
6'
2
&
. 2 .
Æ
6' 9 . 6' 6'
( = 6' # $ D<--E
6' Æ < > . 6' & 2
6'
. Æ & 6' ' 6' ' & < G . ! 6'
. & G>
.
< M
6' < 8 * . 6'
=
.
; " % D5
'-&
+ 4" 5
(
1
( .
6'
% ! 6'
.
D6'-L 7+NE
D6'-L 7+G7E 1
( ; 1
Æ
( :
. 6'
5
D5&-+E * .
!, 1 6' .
%$ *
& G8
6'
,1 1 < 3
A
Æ
+' 4 D1 -7 8E ! 2
'-(
DA&-+E
<=H5)& *
6' D6'-LE 6' 6'
*
6' ! 2 !
6'
. 6' 6'
6'
=
$4
'
6' ' 6'& & G+ '
. 1
4
" % # $ " # $% ) & G7
5! 0 2
6' .
#& $
#'$ #
& $ D6'-L LML+E 0
; * # $; ) D6'-L LG77>E # = &
& ;
$
'-)
+ 4" 5
" %;
" %;
#& $
#$ " # $ %
" & G7% # $
) #
$ D6'-L AGE 0
) & G+
$ "" % 5! S ;; ;; 5! " $4 ! " , % )
%
%
& G7 6'&
S ""
"
%
$
"+%
"7% # $
$4
;
6'&
%
& G7
!
"L%
%
%
! . . ) & G7 : * . . ( 6' )
1 (
6'
;
6'
%
6'
+' 4
'-*
6' '
" %
# $
" %
(
&
% "%
& N+L N+8
* N+
1
"
*
"
%
"
* %
(
%
1
5
. .
. .
(
# . $ = 6'&
& G7 1 . ( B . B
&
.
. D0A,GE
! # # #$ " # " O
'-+
+ 4" 5 6'
D&-7E
! 9
& N+L N+8
(
(
(
(
(
*
* N7 6' *
&
" & N+L % !
6' ' 6' 5
. 6' = (
1
. . ) .
6'
.
.
'# - 6 0 6 1 =
(
1
+' 4
'--
& L+
- 6' '
4
! )
#
)
$ D6'-L A7E 1
'
1 ; < ;
"
"
$4
& ;
$4
%%
" "
$4
%%
H ;
) ;
" "%%
0
0
;S " '# $4
/ ;
"
5 6' '
"% A
" %
.
1 .
0 " % !
6' '
"
% S DE " " " % ;S "
;
%% " %%
"
%
% %R
"
' 2 "
%
0
' 2 " " " %%% ! " " % % & ; ' 2 " " " %%% ! " " % % H ; ' 2 " " " %%% ! " % ) ; ' 2 " ;S " % ! ;S " / ; ' 2 " % ! < ;
%
%
+ 4" 5
6'
' 2 "
%
6'
2
6'
6'&
6' '
( .
6' )
# $ '
* N+ !
'
1
6' ' 6' 4 6' '
5
$
4
6' '
6'
6' '
1
# ' 6' '
;
2 $4 # ;
1 4
;S
! 6'
* < 8
.
6' 6'
+ " $4
$4
6' ! 6'
. 6' ' ! & N+G (
+' 4 .
'
6'
6'
,1 1 3 ! 1
% ; 0 S " % )
S"
$4
1 # $
% ; S " % '# S " % )
S"
"
(
) # $ " % S " % ) " % ;
" R
%
)
S " " % !" %% " % 1
!" %
A B " " # " !" #
+ 4" 5 )
S ")+" % !" %%
!" %
)+" %
(
Æ
6' " % " % " %
& N+G
D6'-L LL8E
,1 1 ! 6
( 1
6'
* 6'
Æ
" %
H
2
2 D1 -7E .
1
*
1 D5
; 4
(
0 B D6'-L 7+G8E
1
. Æ ;
+' 4
.
4
! & N++
. & N++
D0A,GE ' ) .
1
'# 4 ! 1
)
S ")+ & & %
& & 1 )+ " .
)+
& N+G
,
#
' " % " % '
" %
;
" %
"
%
" %
'
; 1
" %
!
" %
" %
7
S
"
"! % # " % "! % S S ! , & " % S " % S
* *
" %%
,
!
# #
&
*
!
#
" %
S
&
+ 4" 5 ) ! + S S ! " % ) ) " :%
! 2 ) ! ) 2 ! ) 2 2 ) ! & )
)
!
) 6 <
" %
) !
" %
1 (
! 2 * # $ )
& & ;
&
$ 5 "% $4 5"% ' " % "%
"%
"%
& "
"% ,
%
"%
&
& ;
"
% "% "%
"
!
* "% "%
"
!
S
"%
"%
S
S
%
" %
"%
-
"%
" %
& "% !
#
"" " % $ " %
" S
"%
+' 4
(
' * "% "%
"%
S
"%
&
S
"%
S
"%
D6'-L 7+>,E
" % " % *
! ( ;
)
)
*
'
) D5
"%
S
$
" %
)
# ! "
; )
;
ev[gd]
S
/op(arg)
*
" "%% "%
S
S
5"%
#
S’ S
returnop(a)
"%
T
S
0
"%
.
C # O # "
)
+ 4" 5
.
*
( * * N+
!
&
6'
D&-7E
D0A,GE ;
ev[gd]
S
/a:=op(arg)
T
ev[gd]
S 0
S’
/op(arg)
returnop(a)
T
1 2
)
! 1 6' ' ! D5
(
6'
)
1
.
( .
+' 4 call(x1)
Init
Init
/store(x2)
store(x3)
Init
RespI
/call(x4)
*
return(x7) /return(x8)
call(x5)
Init
/return(x6)
63 (
" %
&
" %
(
1
. (
' 2 "
"
%%%
"
)
" %
=
) * N+ )
-
.
6
7
8
.
.
.
1 D0A,G L,E; #1
B . B 2
< 0 .
$ ! .
Æ 6' D&-7E 1
(
'#
6' '
S S )+ ;
" %
%
%
"
#
%
" %
0
+
+ 4" 5 ;; ;; "
;
4
%
"%
H
(
&
6' ' & G+
6' ' "
( %
:
4
& N+G (
6' '
2 %
' & N++ 5
4
6' ' * )
&
$4
4
" %
4
;
S DE
6' '
6'
" %
" %
%
S & " "& %%
!
4
6' '
%
"
" %
4
6' '
=
$4
0
* N7
!
* N7 * .
4
;S
=
!
=
)
+' 4 "! &' 3
-
$
8$ 9 0
-
3;
; & $8$&9
3;
: 8 9: ! &' 8 8 99
/
/
/
& $
4 $ . $ D6'-L 7 +M7E 0 .
1
!
.
;
! ; * & ""% S "% S % " 4 " # " % , %%
"%
* NL (
"%
!
, & "%
2
, & "%
" %
%; "%
S
S
*
"
@ &' 8 9 " 8 9 # " " "
'
+ 4" 5 8 9 ! 89
8 8 99: 8 9: 8 8 99 & $
-
8 9
&
$ &
6 "%
"%
*
S
" %
S
" %;
!!"
"%%
"%
"%
"%
;
!!" %
S
, "%
)
;
; * " % "% S
;
, & "%
S
&
1
" %
;
" %
"% S ; , "%
* N8
8 9 8 9 ;
! 8 9 8 9 3;
: * "! 8 8 99
6
+' 4
*
''
* N> !
" %
'"
"%%
'"
;S
%
'"
"%
%
8 9 * 8 8 99 3; * 8 9: ( (8 9 )
8 8 8 99 ( (8 99 3; 8 9 8 8 * "!! $ 8 8 99
&
$
8 99 ( (8 99:
$
1
6 1 *
" %
2
* NM
=
!
"
% 2
8 9 3; : * "!! 8 8 99: ) 8 9 ; >?:
8 8 99 ! 8 9 8 9
)
6
$4!
* NG & G+
6' '
* NN
6' '
* G8 * < >
'
+ 4" 5 send(d)
Send
Wait /transmit(d)
63
,1 1" 7 ! 1 2 & N+ Æ
H
2 1 6' )
6' * D6'-LE
2
D6'-LE ! *
* 6'
!
3 3; 3
3;
( (8 9 ;
3; 3; * 8 9
3 3;
8 8 9 9
$ $
$
/
/
/
$
$
$$/
$
6
+' 4
'.
D*-8E
&
&
" 1
6
2
H
D31-+ +>E
!
D)--E;
3
3
. ;
3
.
3
3
(
1
)
(
)
&
& & >7 ) * L8 & >7
" 0
;;S
'&
+ 4" 5
"
5 "
'# 4 7 ! )
)+" %
S ")+" % " %% ;
" %
" % " % " % " %%
" %
" %
"
%
S "" %
$4
5
$
)+"%
" %
" %
)+" %
" %
" %
)
)+" %
" %
(
)+" %
)+"
(
% S
9(
" %;
!
! 1
!
( *
! #$
+' 4
'(
* 6' '
)
6' ' ( )
& N+L )
.
. 6' '
%
(
"
6' ' & G+
7
%
"
1
.
' 2 "
(
%% & N++
"
(
( (
0
& N+G 1
1
6' '
S D
%
%
"
" %
0
1
" % "
" %
-
%
1
;
E
4
%
)+" %
&
%
"
')
+ 4" 5
;;
;;
& 0 S " % S " % S " % 6' ' 2 " % & N++ * ' 2 " % ' 2 " % ' 2 " % A
" % S " % S B (
)
6' '
%
%
S " %
4
;S
6' '
;
* N,
!
!
!
" %
"! &' 3 ; > ?
3; 88 99 ; 88 99
* "!+8 88 999: 88 99 ;
3; 8 9: 88 99 ;
( (8 88 999 ; ( (8 9 3;
: 88 99 3; * 8 9: ( (8 9 )
8( (8 99 3; 8 9 8( (8 99: 3; 8 9
0
$
/
/
/
7
+' 4
"
"
%%
!
!
.
1
'*
4
. )
" %
!
,1 1& ' ! !
) .
6' + D6'-L 7+GNE
6' ! 6'
.
! 9 ( D6'-L 7+GNE & Æ 1 :
& N+L
)
S " & & %
&
&
" %
, ;
#
'+
+ 4" 5 "! &' 3 8 9
! &' 8 9
-
$
0
3;
A "
' " % '
" %
%
" %
" %
'
" %
& &
"%
&
"%
;
5
$
& N+L
"
"%
$4
& N+L
& N+L
(
'#
6' '
!
* )
0
)+
8 9 ! 89
8 8 99: 8 8 99
& $
-
8 9
&
$
A " 6
" %
+' 4
*
'-
& N+G !
( !
$4
$4
5
6' ' & G+
(
6' '
1
& N+L 6' '
$4
"%
* N+-
* N++
" %
" %
& N+L
& N+L 1
* N+7
8 9 3; * "!+,! 8 8 99
8 8 99 ! 8 9 8 9
)
A " 6
,1 1) ! ! 1 ) ;
%
S "
S " %
)
" %
$" %
" %
S "" % $" % !" %% ;
S "" % " %%
" %
.
" %
2 2 " #" " B
+ 4" 5 " % " % " % " S %
!
1 .
4
S " %
S
S " " %
.
,1 1* # ! !
6'
. 6'
6' *
. !
. 6' Æ
< >
D6'-LE
;
4
! 6' '
)
4
& N+L
"
6' ( D6'-L LG87E )
& N+8
(
(
& N+8 4
)
! "
+' 4
'
H 2
6' ! D6'-L 7+L7GE # $ & 6' + .
1
*
. . 6' + & N+> )
;
;
!
& B
& N+8
(
) (
(
)+" %
)+"
%
5 (
(
(
;
+ 4" 5 (
"
(
% (
. *
&
3
5
&
3
6'
3
5
1
3
&
6' '
)
3
5
!
!
3
5
) 6'
.
; = 2 2 *
2 6' < 8 ) (
'# 4 ) 3 4 %
("
%
"
0"
%%
"
%
"
S " " %
%
"
%
"
%
"
;
" #"
%
!"
+' 4 % 5! (
" %
"
%
" %
"
%
%
("
%
"
("
'
" %
!"
%
"
.
%
6' '
6' ' 6'
%
%
"
. ; "
%
"
" % " %
" %
%
"
" %
4
)
" %
S "" % !" %%
" % & N+7 1
!" %
D6'-L LL8E
6'
!
D6'-L LL8E
3 % ! ) & * '
; 1 )+" %
S
"" %% " % S " % S )+ "% S " %
" %
S
6' '
6'& < G
&
+ 4" 5
0
# + *
"
%
S
% " %
"
" %
S
*
4
4 *
* *
%
0'
"
" %
%
"
!!"
%%
)+
"
%%
"
!!"
;
%
"
;S "
*
)+
& ;
!!"
%
)+" %
"
"
%
%
"
"
%%
"
%
!!"
"
%%
1
& G>>
.
6
6'
'
;
+' 4
B
(
& N+8
! # ! ( H
(
(
(
( (
.
*
6'& & G7 H D31-+ +>E ) Æ
)
1 &
%
S " " %
$
5! 6'&
6'&
;
+
(
%
%
("
6' '
(" %
.
!" % .
!
%
(
$"!" %%
" %
"
%
!"
("
$
%
!"
)
+ 4" 5 5
6'
6' '
)
6' '
*
(
:
& N+> 1
+ ,1 1 " 0 $ / !
6'& 6'
' 2 3 " %
' 2 " % )
!
# $
9 )* ! 1 6'
,11 2 8 ! &
( D9 MN 1 G+E
$(
= .
+ 5
*
; 7-- D5N+E <
)
2
( ;
& !
;
#
$ D5,+E !
D0A,G 8-E
.
6'; ! 6'
.
D6'-LE
4 D6'-LE H 2 . 2
)
=
(
.
*
; "+% !
"7% !
.
.
" 1 #
+
+ 4" 5
D'G+ 0G7 ? G7 ? NG ),+E ! D1,8E
:
;
=
1
( .
& =
. = .
.
1 . < G
.
1
$"
($" .
D)&N>E !
& G>+
8 ,1 = #4 8 ! >1 ( $ 0 0 $ / . 3 4 $" %$ $" $4 3 4 $" %$ $4 / * , 5!
. S $ ; !!" % ,
=
(
,
+ ,11 3 4 $" %$ $" $ $
/ . ($"
.
+ 5
-
6' ! .
8 ,1" = #4 8 ! >1 7 3$ 4 " %$($" 3 4 " %$($" /
1 .
+ ,1&1 ' ($" $" / 6'& G+L
( ! ,1)1 .$" ( / 8 ,1* = #4 7 >1 7( 3 4 ($" , 3 4 ($" $ 3 4 ($" / 1
3 ,1,1 .$" , ( / ! : B
' .
2
8 ,1. = 2 8 ! >1 - ' "& %0 3 4 ' 3 4 ($" ' " %/ ( : ! ) .
(
D&&H5--E
.
+ 4" 5
( ! ,1 /1 ! ' $ 0 ( ' "& %
S &/ 0 0 ' $ $ ' $ 0 ' Æ ' $ 0 ( ' Æ ' "& %
S ' "' "& %%/ ) . $
DA0?/,>E
.
0
. . 1
& 8L ) & >+
,11 2 < 8
< G
8 ,1
1 , $0 ( " % $4 " %/ ( ! ,1 1 $ " % Ý S Ý S / ' $ $" $ " %/ ' $ $" $ $ " %/ 1
1
1
1
1
1
1
! 6'& * N>
,11 2 '# 1 .
9 G78 6'&
8 ,1 1 7 3 4 .
3 4 . /
+. C )
.'
+ ,1 "1 ( 0 0 ( ( #/ 7 ( $" #/
1 6'
8 ,1 &1 . " $4 3/ 4 / ( $ " / "% (
$ / & 6 ( 0 / ?/;0 / : " :% ( $ /
1 & G>
( ! ,1 )1 ( / ' $" 0 3 4 ( ( #0 / ' ( $4 " " %$ $ " / ' ( " %$ $" ( ( #0
( / ' ( $)( 3/ $)(4 ( 5! ($" ( $)( 3/ $ )(4 ( /
9 - 6' D?C -7 ?C -7E .
6' = ( .
6' ; *
.
+ 4" 5
! . 1 . )
6'
D1--E D*4H,N 4*H,,E
6' D34H,, H1,, H)<0--E D500 ,G 5A0 ,G 5A0 ,NE .
6' D&1,GE
6'B . D3 ,,E
6' DA,N 400&--E
6' D,,E 2 6' DH)<0-- H<)--E D'&--E 6' 5 D'-7E
=< 5 D59--E <& D5
) 6'
DH<)-+E D' -7 &3'-+E . DH*5=-+E 6' D3 C -7E 6' 6' H D9A0-7E 6' 6)) DKA-7E =< D5-7E 6' D? -7E 6' D1&-7E
D/-LE
6' D5A-LE 6' .
6' . ' & < D3 C --E H D95-- 9&--E
R D95-+E )
6' D03,NE D1-7E
6' D& C -LE 6' D55-LE 6'
+& 5
..
9" 1 6' 6' ' 6' ' & !
. . 6' )
!
6' < M
.
1 6' ( 6' &
6' ' & . & G> 6'
! :
6' ' 6' 1 6' .
. 6'
# $ 6'
&
6'
6'
= 6'
Æ < >
.
'#
/
!
. 1
6'
: ) )* ! 6'
;
D?C -L ?C -8E 6' D?C -7E 6' <=H5) D?C -7 ?C -L ?C -L ?C -8 ?C -L ?C -8 ?C -8E
2
6' D?C -7E 6'
D?A-LE
D?3-LE
D?1-7E
6' D?1-L ?15-L 550 -L ?C -8 E
6' D?C -LE 6' ' D?0-L 0?-LE 6' .
.+
-
: ! & 1 6' 0
6' R
.11 % $ < . 4 D4.,> 4',G 9*&,NE D9&--E D) ,8E ! D1,>E D*0,GE
D* ,NE !
1 .
D*-+ &-LE
D?3&,> &5,GE H 4 DA''-L 'A'-LE
! A
. D?C -L E
.11 0 ' ) 6'
. D?C -+E .
D*0,GE
6' (
)
6' D0*,GE D*0,GE 6
1 .
6'
D* ,, *-+E &
D?<* -7 ?*&-8 ?H**-LE;
.
- , A 4 " 6
.-
DA*H-7E 6'
9
! DA*H-LE 2 ( 2 DH*A-LE
*
<
DH3*-L 3H*-8E
6'
H 5 ) < ' ) <
. D05&-7E 6' . <=H)& . . D9HH -7 *3A -7 )59 -7E . 2
. !
6'
. .
)&OK& 8LM- !&=O!4< +GG,, ! . . H'=9 . 6 ( @' D00-LE & ) 6' 6' . . .
.
2 . D*'''-7E 6'
!
6'
!
=<
=&<
D3-7 53-7E
6' 6' ) 6'
&
- D5-7E 6'
D59-7 59-LE 6'
2 D00-LE
6'
6'
?
: "? % . D)1-LE 6' !
6' 4 . <=H)& D& \-+E 464 D4-+E 94A)& D94A-+E A D) -+E
.11 +! '
: 5
DGLE
R
:
.
: DA'N7 A'N8E )
:
D',8E '
: D*A,> *A,G )-+ 5*H-7 '&-L 90&-LE =
& GM ' 2
:
D9TNLE = D',> A&A,, )-- '-- &<-+E DH&A -+ < ,E & H ( ;
'
.
.
. !
!
(
- , A 4 " 6
&'
& 2
. . 4
D'<*NG 3N, ',M *AA,G ''&,G A,G 4.,N ?1-+ A=H-7 5'/-L 31-8E <& D,M H,G H&A -+E <<&
D9*A-- *A'-LE D,N 5'',,E
.
4 D&,M &,G &,, *0A,, 1,, A -- 59-+ &-7 559 -L 0 -L 5-8E D)A,,E ) ! D1-7E D,NE D3)0,, 0-+E & < H
. )&'
D5H,G 5H,NE ! D --E
D5&-+E
D1--E
!"
2 2 .
*
5) ' 5 ' I J ) H D5)N,E !
5)
# @$ "
@% # @$ " @ % #@ $ #3 . X$ =
* @ . 3 3 . X
X @ !
2 5)
5)
DAT,- &=,8 3,NE ) D&<-+E ) "<)&4% H?1 -LE
6'
D50,G 0'H ,N &0,,
& 6' . 6'
A = >04 .?
&
-
. &'/
D?1-+
.
11-+E )
! D/11-7E
"9)%
< < D<<-+E D=-7E
! D1-7E
H . D ,GE D?C -+E D?C -+E D?C --E
: 6
D0,M 0,, &-- )H-- 33-8E
.11" 0 5 2 7 ! D3 -7E . 6' D'-+ 59< -+ 0A-7 05-LE
6'
D -7E ='A A H '
6' D -7E
6' D*00 -L &-LE D<' -L ''-L 3&K-LE 6' D@-L ?03-LE
X & 6'
0 1
A .
) . . . 6' 2 <
6' . 6'
)
6' D?C -8E A
. .
&
# .
$ ) .
2 .
& M8 !
& ML 6' 2 & ,+
&&
' ,1 ) 6'
6'
< >
6' Æ
& 6'
6' (
1 2
6' . 6'
! 6' & M7 . Æ
# $ & : Æ
.
)##
) * 20
)
6 '
6' 7- 2 ! . 6' +>
. ) 6' 7- ( 6' D*-8E '
; *
6' +> 6' 7-
! 6' +> . 6' 7-
6' +> $ 6' 7- 6' 7- ( . 1
6' +> . 6' 7-
7 .
6' 7-
6' 7-
6'H
!
6' +>
) .
)
&+
A !
6' 6' 7-
6' +> 6' +>
6' +>
(
6' 7- 6' 7-
: 6' . & . ! . 6' +> 6' 7- ! 6' 7-
6' +> ) 6' & 6' 7- . . 6' ) 6' 7-
; 1 6' +
6' 7- . 2 . : & 6' 7-
* $ 3
1
6' ' !
) & ' D&&5-+ 5&--E
8 1 = >1 & " % %0 ( $ 0 /
0
%
%
0
%
0 )
6
* 2 6 2 R 6 "2
2 R 6 S "% 0% 2 ; * "% % 6 6
% ; )
6' '
H
R * * 5+ A 6' '
7
1 7 D 7 D
7
7 D
-
-
E
- E" % S S - E" % S 7 " %
*
+
7
;
7
7
8 1 = ! >1 7 $ ( (
(
0 ! 4 @
; ;
Ë
; ; ; ; ; 3 ;
Ë
3
;
# !
/ +/<0 "/ *$ (0 / 7
2
2
& G+
* 5+ * 5+
(
2
2
" % !
%
%
8 1 =3 >1 & ( 5 ' " " % % " " % % S 2
%
0
2
%
2
0
!
2
2
8 1" =+ >1 7 $ ( ( ( - 5
!
%
0 ! 4 @
('
' " " % % 0 " %S / ' ( " " % % 0 " % S " %/ 8 1& =2 >1 ( 0 0 / / & 2 , ( 5
S / Æ 0 ,
1 ( 0
0 1 " ( / Æ 0 , 0 " ( 0 S / %
0
0
%
2
%
%
0
0
2
%
8
7
8
2
2
2
2
2
2
2
2
1 . < > G N
< >
< G N
& LL
< > 6' ! 2 6' < M '
6'
)* )
!" + *1"1 , " %0 " % , " % ( 0 + 5 / " % " % / 7 " % "" % % 7" " % " % " % -/ 6/ 2 " "
"
"
"
"
"
"
"
' )
"
"
)
'
) "
"
.
"
"
%
Æ
""
"
"
% ""
"
%
%
(&
% 1
"%
6' '
6' '
S
Æ "
% ""
"
%
"
S
""
"
%
S
6' '
% ""
%
"
S
.
%;
"
'
+ *1,1 3 4 $" %$ $ / 6/ 1 "% " % : $ * 6' ' $ "%Ý $ "%Ý "%Ý $ % "%Ý % : 1 "% " % $ & 6' ' $ "% " % "% " % " % " % S 1 " % Ý "%Ý "%Ý $ " % Ý 5 . % "%Ý "%Ý "%Ý "%Ý $ "%Ý 1 " % Ý " % Ý "%Ý $ % %
"
"
"
$ %
+ *1 /1 ' # # $4 # $4 #/ 6/ & 6'& # # #
#
1
'
#
6' '
#
6'
% @B # #
. 6'& ! Æ
((
. " % " %%%
#
" % " %%%
#
6'&
0
0
9 G,
(
6' '
0 "%
S S + *1
1 % / 6/ 1 6'& : *
'
" $ %
#
"
0 %
(
%
"
4
0
6'&
S
;
#
S
* GN
1 6'& & 6'& S "
$ %
#
S "
$
# # # 0 ; 0 ; " 0 % # # 0 Æ 0 ; %
#
#
S " $ %
"
0 %
* GN
+ *1 1 ( - # "& & %0 ( & 0 S + 0 ( # # / ' S + 0 $4 # " %$ $4 # ( S S # "$4 # $4 # %/ $4 # % # "$4 # 6/ & 2 6'& # "& & %
(
4
&
S +
# # & $4 # " % $4 # S ( S 4
S + 1 # "$4 # $4 # % # "$4 # $4 # % * S S
6'&
&
R
#
#
#
#
( ! *1 1 % ( $ / 6/ * G++ G+7 3 *1 &1 !, ( $ /
()
%
6/ G+L ( ! *1 *1 ! # ' $ 0 (
' "& % S & / #0 # 0 # # ' $ # # ' $ # 0 # ' Æ ' $ #0 ( ' Æ ' "& %
S ' "' "& %%/
6/
' "#%
#
& 6'& S
#
#
S
&
:
"
' & 6'& # # # # '
# # ' # ' Æ ' "& % S ' "' "& %% ' Æ ' "#% S ' "' "#%% 5 . # ' "#% # ' "# % 5 ' "# % ' "' "#%% # ' "' "#%% " G+L% # ' Æ ' # G+L%
#
' "& %
#7 '
( ! *1 .1 $ " % ( Ý S Ý S 0 S ; Ý S / ' $ $ $ " % $ " %/ ' $ 0 $0 $ " %0 $ " %/ 6/ & 6' '
1
1
1
1
1
1
" 1%
Ý
1
S
1
6' '
1
" 1% &
.
"% 1
Ý
S
"% 1
1
"% 1
5
"% "%Ý "%Ý 1Ý S 1
"%
1
"% 1
5
1
"% $ %
%& @ A# 4 " " !8
(*
+ *1 1 ( #0 " % 0 " 2 # / 7 " 0 "#%/ 6/ & # 1 (
"#%
"#%
+ *11 # " % 0 # "#%0 / 6/ & # 1 (
.
( "%
"#%
"#%
&
# 5 *
G7+
"#% "#%
+ *11 # ( 0 2 # 0 $
' "# %0 / 6/ & 6'& # " %
$4
# 1 ' "# %
( "%
(
5
' "# % . ' "# %
' "# %
' "# %
+ *1&1 ( # ( ( #0 0 (
( #/ 7 ( $"
#/ 6/ & 6'& ( # ( # 1 6' ' ( .
6' '
#
#
& . 6'& Æ
(
" % " %%%
" % " %%%
(
6'&
'
S
0 "%
%
"
4
#
0
0
9 G,
(
'
6'
S
(
(+
%
( ! *1*1 & # "#%/ 6/ & 6'& # $4
# "#% 1 1 "#% 1 #
*
Æ
"#%
.
5
# ' "%
5
"#%
( "%
"#%
&
"#%
&
.
* G77
"#%
"#%
R
# ' "%
&
.
Æ
# #
"#% 1
#
.
# ' "%
!
( ! *1,1 ' # ( 3 4 #0 ( ( #0 ( / 6/ & 6'& #
$
&
6'&
(
#
1
(
& ( "% ( & ( # ( "%
#
"
% &
(
#
( ! *1.1 ' # ( $" # ( / 6/ 9 G78 $"
%& @ A# 4 "
(-
( ! *1 1 ! # ( $4 " ' "# % / 6/ & 6'& # $4
#
&
' "# %
' "# %
' "# %
#
&
1
Æ
5 * G7L
( ! *11 ( # (/ # $ ( $4 "$ ( " %$ $" #/ 7 ( ( / 6/ & 6'& #
$4 $ &
6'&
( " %
6'&
#
&
1
$4
( "%
(
1
(
.
( " % 6'& # ( "% ( # & # (
&
. ( ! *1"1 ( # (/ # $ ( ( " %$($" #0 ( (
#/ 7 ( ( / 6/ & 6'& # ( & #
( " % 6'& # 1 . (
6'&
)
%
( "%
( .
(
.
%
" % & ( " % # " % & # &
(
(
#
. .
#
)
(
%
(
#
.
" %
.
.
(
%
+ *1,1 " - 6 " 0 " " " / 6/ &
#
1
$4
"%
#
$4
*
$4
%
"
)
"%
;;
"
"%
%
$4
1
#
&
$4
1
;
;;
1
$4
-
6
&
"
"%
%
!
$4
$4
" %
0
;;
&
" %
" %
;; *
9
9
"
%
)
" % " " %
%& @ A# 4 "
)'
+ *1.1 " - 6 " - 6 0 / 6/ * GLN - 6
S
+ *1"/1 ( 6 # ( ( #0 ( (0 / 7
2 # 0 , " 0 " ( " / 6/ & 6 6'&
%
#
.
.
%
! Æ
6'& & G7
1
.
%
2 #
. %
#
2 #
)
%
)
.
.
#
5
.
. 5
%
.
( ! *1"1 ( $)( 3/
$)(4 ( 5! / 7 ( $)( 3/ $)(4 ( / 6/ & 6' ' 5! :
/
/
/
/
1
/
:
&
9 "% "9% S 9 1 S & . "% "9% & : S /
/
/
:
)
%
% 1 )*
+ ,1 1 " 0 $ / 6/ 1
6'&
' 2 3 " % ' 2 " %
;
% "%
% "%
)
% %
6'&
% "%
6' '
& G7 " %
. 6'&
"
S + 7% <
Æ
6'& *
6'
) 6'& 6' ' & G7 " %
+ ,11 3 4 $" %$ $" $ / 6/ * GN + ,1&1 7 ($" $" / 6/ * G+- ( ! ,1)1 .$" ( / 6/ G+L
%( 4" 5
).
3 ,1,1 .$" , ( / 6/ NM ( ! ,1 /1 ! ' $ 0 ( ' "& %
S &/ 0 0 ' $ $ ' $ 0 ' Æ ' $ 0 ( ' Æ ' "& %
S ' "' "& %%/ 6/ G+G ( ! ,1 1 $ " % Ý S Ý S / ' $ $" $ " %/ ' $ $" $ $ " %/ 6/ G+, + ,1 "1 ( 0 / 7 ( $" #/ 6/ G7> ( ! ,1 )1 ( / ' $" 0 3 4 ( ( #0 / ' ( $4 " " %$ $ " / ' ( " %$ $" ( ( #0
( / ' ( $)( 3/ $)(4 ( 5! ($" ( $)( 3/ $ )(4 ( / 6/
1
1
1
1
6'& G7, G7N GL7 GL8 G87
)&
%
2
&1 1 7 S ( ( 0 /
1
.
6/
1
1 G7G & .
%
& " " % S $4 & "
%
.
&11 7 $" S ( " ;; ; $4 Æ % S ( " ;; % S Æ $4 / 6/ 1 6'&
0
6' ' 6' '
$4
$4
" % " ;; +%
6'&
.
&
;; ; * " ;; +% S " ;; +% " + Æ %
! &
;;
! " ;;
%
0
6
% & S
" .
)
! .
.
%
*
0
6' '
$4
%* A !4 . 6' '
% %
"
%
)(
$4 "
%
&11 7 S ( " ;; ; $4 Æ % S ( " ;; % S Æ $4 / 6/ &
>+
" ;; ; $4 Æ % S " % S >7 " ;; ; $4 Æ % S " ;; % S N+M .
3 ! . , $
/*
( +% ( ! &1"1 0 / 8/9 S ( / 6/ 1 . 1
"
.
" ;;
.
S % .
" ;;
%%R
%%
.
"
.
" ;;
%
" ;; % " ;; %% "
"
%
%%
1
" ;;
. 1
"
+
;
"
)
) ;
))
%
2 $4 ; " % S !!" % S " % ;S "' " % "" " "' " %%% ;; " % S !!" % S " % ;S " "' " ;S " " " "' " %%%% " % S !!" % S " ;S "' " %%
%
%
%
' "%%
%%
%%
%
%
.
( +4 ( ! &1&1 ( " 3 40 0
( S 0 "
" ( " 3 0 S S 4/ 7 " S ( ( ( 5 ( &$
"
"
+
"
(
" ;;
(
;
(
+
;;
% ;
6
S
$4 0 " ;; % S 0 $4 0 " ;; % S / 6/ 1 G7G & G>7 1 3!1 ( "#% $ " 0 ( ( 0 " ( $4 ( ( 0 "#%/ 0 ( 3<4 , 5
89 ## # " O " #
%* A !4
" ;;
;
)*
" ;;
% ; Æ
% ; " S S %
6 Æ * 6 $4
" % S " % S
" %
" "
" %% S "
%
3@4 , Æ ;
" 6 0 " " $4 0 "
( " ;; % 0 ( +
"
;; ;; %
"#%
"#%
S " %
"
+
.
%
6 /
! .
"#% $4
.
*
" ;; % * " ;; %
& .
.
$4
"
+
;;
;;
6
" ;;
%
.
%
.
+
" :
% *
.
6
" % .
"
%
S
$4
"
%
S
C 8'9 7 $ Æ 3
)+
%
" "
&
$4
.
" %% S "
%
6
. .
Æ
& "#% S "#%
1
"+% "7% H
$4
& LLL
(
S
!
S
S
"
.
6 $4
" %
" "
"+%
6
" %
6
& " % S " % S
.
" %% S "
%
6 $4
" % S " % S " "
" %% S "
%
" % " % S S "
% & " " " %% S " % S +
. " ;; ;; % " "7%% " ;; ;; % " 5
" %
S
+
"
(
S S % *
(
" % .
+ (
5
%* A !4
)-
;; ;; % 5 "7% . S S
"
"
. % 0
" ;; ;; %
.
=
.
; "+% !
"
.
.
.
" %
(
. . " .
% "7% *
$4
% "L% *
$4
" ;;
%
% &
;;
"
% "
6 %
"
" ;;
%
S
" ;;
%
S
"
"
3 &1)1 & " "$ 3 ; 4 S ( ( " ( 5 ( ;; % ; " ;; ; ; 6 S
6/ "
$4
$4
-
-
;
;
S
0
+
0
&
-
"
" ;;
%
" ;;
%
0
/
S
S
*
%
S
"
+
S
(
(
&
.
9 &
'
31,1 ( : ( ! &1*1 $ ( " ;; % / 6/ 1 . 1 % ;; " !
!
. " . % 1 " % . ' " ' !% . . &)' ' ;
2 $4 ; " % S
%
!!"% S '
% ;S % " %R % ;S ' " !
% "
% "
"
!
;;
%%
% S !!"% S ! ;S " "' "%%%R % " % S !!"% ' ! % " % ;S % " %R % " % S !!"% S '
% " % ;S % " %
% " % ;S ! !"%
% "
* & G>
% "
"%
1
'
! %%%
"%
% "
%
! ;S % " %
. 6' ' !
' " !
" "' "
% ;S
! % " % ;S % " %
2
6' '
"
!
;;
%%
=
)
'
%+ % 6 4 B
!
! ' ! !"%
*'
"
6
&1,1
;;
!
;
!
3
;; ;; &%
3 ( 4 ( S / 6/ * .
!
&
. 1
. )
"
% *
!
.
! *
&
&
.
*
&
- - U + - U + U +
&
( ! &1.1
S
; & Æ " % ; $4
" % ; $4 & Æ
" % ;
S
.
(
$4
$4 ( " ;; % 0 S S S S / 7 ( 5
!
!
*
%
5 0 0 0 0 " ;; ;; ;; %
" ;; ;; ;; ;; % 3 4/ 5 ! 0 " ;; % " ;; ;; ;; % 0 0 ( / 5 & 0 , " ;; ;; ;; % 3( 0 0 0 ( " 4/ &0
, " ;; ;; ;; ;; % 3( 0 0 0 ( " 4/ 7 / 6 5 1 & " !
!
&
'
!
!
!
!
!
&
!
!
!
!
&
!
'
&
!
&
!
!
&
!
!
!
&
!
&
.
" ;; ;;
! !
&
!
!
;;
!
!
. "
;;
!
!
%
!
;; &% 1 .
;; ;; &% 1
!
!
'
1 ;
. '
!
.
3!1
"
%
$4 6 " ;; ;; ;; % " ;; " ;; ;; ;; % % ; " ;; % " " % S ;; ;; ;; ;;
!
!
" ;;
"
!
!
;; ;; ;; % %
%+ % 6 4 B
*.
* " % .
" % ) .
" %
.
"
.
" ;; " ! ;; ;; ;; % %
;; ;; ;; %
!
6
$4
1 .
! ;; %
.
"
" ;; %
" " % S ;; ;; ;; ! ;; " ;; % " ! ;; ;; ;; % " ;; " ! ;; ;; ;; % %
. ' ! ! "
%
6
"
"
$4 ;S 6 " ;; ;; ;; % " ;; " ;; ;;
1
" ;; ;;
.
%
;;
!
;; &%
5
! %
;; ;; &%
!
S " !
;; %
% ;
&%
!
" B
. " %
"
!
5 4 ;; % "
!
5
)
&
.
'
'
"
!
;;
!
;; !
"
"
!
;;
%
" ;; %
;; ;; &%
!
;; ;; &%
!
' ;; ;; &% !
!
"
!% !
;;
!
'
*&
%
. R
&
" ;; %
'
;; ;; &%
" ;;
!
'
(
5
31,1 ( : ( ! &1 /1 ( / 6/ ) . .
Æ
. " %
.
[
"
1 ;; - ;; ;; ;; 7 % ;; ;; ;;
(
$;
2 $4 ;
; "
$
$ ;
" " % S ;; ;; ;; ;; - ;; " ;; ;; ;; % ;; ;; 7 R
" ;; - ;; - ;; %% $ R
$
$"
$"-% , %
"
" . 0%
R
[ . % , R
"
"DE DE R ; ;S
,
7 %
" "-% S ;; ;; ;;
$
, ;
" -
"%
%
[ /% , R
" /
%
4
0 [
! " ;; ;; ;; 1 ;; - ;; ;; ;; 7 %
6
&1
1 % 0 0 0 0 0 0 0 0 3 % 0 0
( 4 ( % S /
.
%+ % 6 4 B
6/
*(
&
"
% &
%
.
"
%
&)' )
*
.
& 8+7
"
%
"
"
%
( ! &1 1 '
&)'%
% ;
S
(
Æ . ; Æ S
( 5 5 " % ; 0 S 3 0 ( 4 S " " % S ;; ;; " ;; ;; ;; % ;; " ;; ;; ;; % 3 0 $ 4/ ( " % " % ; 0 ( S / , 5 ( ( ;; ;; ;; ;; ;; ;; ;; 7 % ( S " S " ;; ;; ;; % 7 S " ;; ;; ;; 0 0 0 %0 / 7 " ( ( 5 " % ; 3( $ 4 " % ; 0 3 0 , 40 ( % ( ;; ;; ;; ;; % ( S " ;; ;; ;; % S " S 3 0 , ( 4/ 5 " % ; 0 S " " % S ;; ;; " ;; ;; ;; % ;; " ;; ;; ;; % 0 $ / .
/
.
$
/
.
.
$
-
&
&
.
-
$
$
$
$ /
*
$$
$$
&
*
&
&
.
/
.
$
*)
%
6/ 5
;
$
&
S -
" . %
1
S -
" ".% S ;; ;; " ;; ;; ;; % ;; " ;; ;; ;; % 5
;
;
" . %
S
-
S -
%
;
" ".% S ;; ;; - ;;
S " ;; ;; ;; %
" . %
$
1
" .
S
)
" . %
" ;; ;; ;; %
&
)
$
" %
&
)
)
%
, 5 & ;; ;; ;; ;; S " ;; % 7 S " ;;
1
$ "
"
U +
- ;; & ;;
S
;; 7 %
%
S
;; ;; .
- %
" ;; ;; ;; ;; & %
&
" ;; ;;
;
-
$$
% * " ;; ;; ;; % S &
S
5 .
"
$
;
$ "
"0 &
%
S
&
- %
$". * %
;; ;;
% ;;
;
$
-
$$
$
S
-
" ".%
S
*
;; ;; + ;;
" ;; ;; ;; %
S
"0
*
% %
" . %
;; ;;
" "* %
%
S
" ;; ;;
;;
&
-
;S
.
" ;; ;; ;; %
>++%
;; ;; 7 ;; - ;;
)
". %
$
" - & %
" ;; ;; ;; % 1
$
" ;; ;; ;; %
&
S
*
&
%
;; ;; & "
5
S
$
" ".%
S ;S
.
)
.
"
" " % S ;; ;; ;;
3
>A# ?
A# 4 " 0 @ 4 #P .-J) ,4 A 4 4 1# = " >A0<-.? A# 0 % < 0 A $ '893-.J''. '--. >A#- ? 4 A#1" A D < # "
1 !" # $# %&'&( 'J' 4 0 /# C Q1 '-- >A05 ? I R A 0# ! 51 0 A = 5 @ < 4S $# 1 " ) * + + ,--,( ('J) 666 % 4 " C Q1 >A= ? A# % = = 4
# * '*&8'93.*J+. >A=--? A# A 5 = A " 3 ! * '&+8'93'J* I " '--- >A= ? 4 A#1" 5 =##" ! 4 6 # . / 'J( N+* ! % C Q1 '--J >A=, &? 4 A#1" 5 @ = A 4 1 %$/ , A" B < I A 1 %- * 0 0 ,--1( $ !
>AI '?
-++
&'J&.( 4 0 /# C Q1 & A# I IP C <#" 0 % 0
"
1 * # 0
*+
@ '( $ ! +J -& 4 0 /# C Q1 ' A# 4 I / * 2 666 % 4 " 4 4 5 '--( 5 C A1 I 4 2 4 " " (.3&(J&&- @ A < ! J " 3+!*4 + 'J'' '--) ! A < 6 4O " $ " %& ! * !*( (('J() '--) A# ! B 0 +893(.J+& " '--' A# % B 0 / $ %5 '3*.J'. I " '--. A A ## E # < = C %, * 0 !36 ,--%( '(& $ ! '(J')+ 4 0 /# C Q1 ' A# @ C "$ *+++ 0 " + 8'93)J'( I " '--) @ A 2" "" .*8''93.J& C# '--& @ A ! B " " / " I 0 * / &.J( 4 0 /# C Q1 '--- @ A + 2 7 8 I 2" T 4 C Q1 ' @ A ! 1 # 1" "" ! @ %A$%$!@$(&- " %# A# / 5 =# 4 " A# >AI -(? '& .. J.&- 5
A 5 4 ! " "3 / " U / *+++ * ( *'*J*( 666 % 4 " C Q1 '--- A# @" @ "" 8! " 9 I , 2 # /" 5 ! 0/ # * ** 0 ,--- $ '+* $ ! .J 4 0 /# C Q1 ,--%(
>AI -(? >AI42 ? >A<-)? >A<4-)? >A-'? >A-.? >A '?
>AC-)? >A -&? >A --? >A '? >A ? >A =-(? >A 4--? >A@ ?
@ >A@ #?
*-
6 A = @ 0 .)3.J.& >A '? A 4 #" ' >A4+(? 0 A 4 5B * $ '8&93'+'J'+( , # '-+( >A2 .? < A# 5 21 % 4 >4 .#? .*.J.+* >0AC+-? 0 A# @ C A 6 # &)8'+*'93..J*' 5$ # '-+- A 4@% @ @ .- 0 ' '3'+J .) 8#" '-- 9 >00 .? 6 0 0 6 B IP >I@ .? &*J) >005 .? % 0 0 D 5 C / @ C A$ %) *+++ / /%) ,--9( ')J'& 666 % 4 " C Q1 . >00/ .? @ 0 < 0 /
I IP = = 2 D <" " # " %) * : " ; + ; < *+ ,--9( . >0%@ ? 6 0P A % 6 @ # "
4 Q = < ,1" ! = 0 '-' $ ! .J&' 4 0 /# C Q1 >0%@ &? 6 0P A % 6 @ # , D A4 * ; " 0 &)8(93+*J - & >05 ? % 0 I 5 # B # 4 ! >4! ? ').J'+ >05% '? A 0 5 % 5 D1 A D = 4 5 #" " " # " > + ')3)(J*( ' >05 .? 5 0 I 5 ! " $ " ' 0 0 ,--9( ' J' - A% C Q1 . >05CC '? % 0 5 C / @ C 4 " $ " E = = @D # A 4 0 0 2 4 $ B ' >0 4 ? 0 4 5 % 4 A #
0 * / (8'93'J.( #" >0-+? 4 0 %"" / < D"1 / 6?0 @&' '&) $ !
+
@
&)J(( 4 0 /# C Q1 '--+ >0 @ ? A 0 @ % DD 4 @ ! $ 1 E " / < % @ & * " 0 0 ,--,( &
$ ! *'J+) 4 0 /# C Q1 >0= .? I 0 = A
IP >I@ .? '-J'.( >0=/ -*? @ 0 @ = /# 0 @ 2 4 ! # $ 7 I 0 4 / 0 # + %&&A 6 '.(* $ ! 4 0 /# C Q1 '--* >0=/ -+? @ 0 @ = /# 0 @ 2 4 4" 4 A < 0 3B $ C 0 -.J' - " $ /# '--+ ' 21 =@,, =$A#1 >0// -*? @ 0 / 1 % /
% < 0 0 @ ! ! D B $ A1 4 1 +@&A / / '&' $ ! .&&J.)) 4 0 /# C Q1 '--* >0/ -*? 0" /# 0 0 @ < 4 4 " # B 0" 0 @ 6D 0 " + 60+ @&A( '() $ ! &.J)+ 4 0 /# C Q1 '--* >0I ? 0 I 1 4 I 5
IVDV7 >I/% ? .-+J&'' >0< ? = 0 < <$ P $ * 0 *0( >0 &? 0 0 A " " $ ,--1 *+++ +)J' 666 % 4 " C Q1 & >0 ? 0 0# A 6 / @ 86/@9 6 " % ! 8%! 9 >0--? 4 0 1 % I %A 4 C@ "D /B " +/ 0 +0 %&&&( 666 % 4 " C Q1 '--- >0 .? 5 A 0 4 P W A $$E" $ 1 " " 4 11 =
>4= .? (.J* >0+'? 02 0 " + + / 6 $ %O CI '-+'
@ >0-'? >0 &? >0@-*? >0@-+? >0 '? >0+)? >0-*? >0-+? >0 ? >0 '? >04 ? >04 '? >04 .? >0 --? >02 ?
+'
= 0 / 0 $ K% @ %" %A '--' @ 0 = A $ 2$ >2 &? ')(J'*- = 0 6 @ # " <# $ " > 3 .8'93'..*J'.+' 5 # '--* = 0 6 @ # A "$ " #" A4 = 5 * ( '*J'.+ '--+
C,@A!< '--+ @ 0 "" / * 3$ 4 0 /# C Q1 ' 0" A " " 0 &(3'J)' '-+) 0" % B " > &&8)93+( J+-' '--* 0" A K $ B " '.8'93+*J''- '--+ 0" A# B " 0 / .-8'93.J& 0" ! *+++ 0 " + *8'93&J(* ' 6 0P I 4 % # $ 7 A4 % / 4 # $ $ ,---( '+) $ ! &'J) 4 0 /# C Q1 0" < 4S B * 4 0 /# C Q1 ' 0" @ 4 #P * 4 0 /# C Q1 . 0 011 I 1 % B " %1
*7$! # $/ # $ %&&&(
+J-) '--- 0" 2 A# ! @
' * " 0 0 ,---( $ !
'+')
+-J'++ 4 0 /# C Q1 >% .? % % #" A# I . >% ? A % E */ 3$ $ " 5 5 V % >%% '? % % ' >%%= .? 4 %1 6 %1 A = 4 I / B$ % ,5 * " + *+ ,--9( .+(J.-( 666 % 4 " C Q1 .
+
@
>%6 '?
%6 4%, % 6 4 B ' 0 @7 * @7 ). ! $
4 B . # >%6@? %6@! % % 8%6@!K%%9 >%-.? % 5 " 7 $ " 5 * / * + + %&&9( .&J (' 4 0 /# C Q1 '--. >%< --? 4 %1 A < @ 0 @ I 2 A 2 5B " # % 0 " 0 / $/ 0$ B %&&&( 666 % 4 " C Q1 '--- >% .? 4 % # 4 5 DD A D A " IP >I@ .? '-J.& >% ? 4 %1 ! "3 B 1 6 >6<4 ? ((J)& >%@4 &? A % 6 @ # 4 A 1 3 $ / / A , @ 2 # 1 ,--1 ( '('-J '(. & >%2-)? 6 %1 I 2 3 4 +8&93))J)&. '--) >50 ? I 5 1 6 0 @B # ,# $X 4 ! >4! ? (*J** >50 '? I 5 1 6 0 6B F /F2 A % $
! " 4 0 /# C Q1 ' >50= '? I 5 0 5 = 4$ ! = = 9' ( )'*J) A% C Q1 ' 5 >56= '? 5 ' >5-.? I 5 1 A A 7
$# B +/ +( %&&92 * / )*
$ ! )+J+& 4 0 /# C Q1 '--. >5= ? A 5 @ @ = A "D " 0 " + -8&93&++J(+ >54-+? 5 # 4 4### ! 7 $ ,- * " + / ')J'.( '--+ >5=/ ? < 5 =D / 1 IP >I% ? .(J(
@
+.
>5/4 .?
A 5 @ /P 5 4 A " E = >= .? '''J ' A# ! "#$%&# '()* + * >5)+? 6 2 51 4 # >5+? #" '-)+ >5+? 6 2 51 4 2 'J'& 4 0 /# C Q1 '-+ >5@@ ? ! 51 0 @ 5 @ I R A 0# < 4S 4 / /# $# " 1 # " 3 ! %,@A4 $ I 4 ! ** +/# +/8 # +/7 ,--,( **
>54 ? >54 #? >5Q+.? >6 1-(? >6 1-+? >6 1 .? >6@--? >/ .? >6//4 ? >6<4 ?
*9+
..
'(-J'*( < A 5 I 5 1 = 4 4 B ,# $XK%4 2 =1 ! 4 0 4 * / * ,---( '-&( $ ! '-&J'. 4 0 /# C Q1 5 # 4 4### 4 "3 A 0 " + *J.- 4 % 4 6 8%46 9 5 5 A Q , " # 1" *+++ 0 * 0 !$-893'-+J + '-+. % 6 1 " I / 6O 4 / 4 %% * * + %&&5( .*J(& % T / '--( % 6 1 !$ B " %1 * * + %&&'( % T / '--+ % 6 1 *0/ C GE# H # , $ # P . A 6 @ 0 < 0 @ $ $ / < 0 @ 4 8/ B 8 < A A '--- #
. = 6 I /
@ / 1 4 4 5" $ 3 A #$ 6 >6<4 ? ..J..* A 6 4 < 0 4 0 3B $/ 2 3$ ,---( '-.- $ ! 4 0 /# C Q1
+& >6-*?
@
% 6 1 5 1 5 3 A " %9 * * + %&&'( )*J*- % T / '--* >6@2+'? 0 D 6 % 4 @ % 2 * 4" 4 A $2" @ A #" '-+' >6@-+? @ 0 A 6 < 0 @ !
; * '-3.(J ..& '--+ >-+? 6 0 D A " '--+ !
>--? 6 0 D % " $ * + +4 %&&&( +.*J+&' '--- >=-(? @ @ = A " " # > .8'93(J.& '--( >=-*? @ @ = ! " 13 A B E " *+++ 0 " + .8-93(( J(*' 4# '--* >==-*? @ A = @ = " " / , % * HB '--* A# # ( ) >= .? @ @ = A 0 -'8.93+(J .* . >/-*? 6 0 D I % /1 5 6/8 ''J'( A% C Q1 '--* >// .? @ 0 / /
/ /Y
A < 0 4 I IP 2L " U IP >I@ .? >I ? 6 0 D I IP A " 3 %A * /
* + ,--,(
8 9 / $" ><= ? @ 1 < 0A = < 4S !A , ! 51 ! %,@A4 1 $# 1 4 A 4 0 $ ,% * # 6 + ,--,( &.& $ ! -&J' ( 4 0 /# C Q1 > ? 6 V D$ A VZ D %
#3 " # IP >I% ? -.J' ) > &? 3$ A $2" @ A $ &
@ > '?
+(
6 0 D @ Q A $ " $ $ ,--%( ' ,) % + > @ ? 2 0 @ $3 A
# $ 1 6 0 %1 + / + ,---( '+( $ ! ).J+ 4 0 /# C Q1 >=++? = 8 C @ $ C Q1 '-++ >=0--? 4 = 0 "" 4 % G%"" % 4 "H ! '--- >=%4-'? I =$% I 4 , B $
( .(J& '--' >= .? = . >=@ ? = = @ 0 @" A $# " IP >I% ? ' *J' >=@ .? = = @ 0 @" % " # " IP >I@ .? .(J&) >=/I -(? 6 = @ / @ I I C + 6 / " A $2" @ A '--( >=/I2 .? I =P # / /
I IP = 2 B " " 3 A # 1 / # 6# + ,--9( *++ $ ! '')J'- 4 0 /# C Q1 . >=/@ .? I 5 = A /D I 5 @ E "3 6 = >= .? +'J- A# ! "#$%&# '()* + * >=-+? = P 1 ,' 7 ! @ # " '--+ >=<2 ? 5 =
= < 2 A + / 6 +6* ,--,( ( $ ! 4 0 /$ # C Q1 >=-*? = = $# B
" ,!,4 / , % $ * HB / '--* A# # ( ) >=+? I = I 4 " " ;( ''J 666 % 4 " C Q1 '-+
+)
@
>=+&?
>= . ?
I = I / ;( *(J+* 666 % 4 " C Q1 '-+& = I " @7 "3 A " $ #" 4A $Q 4 4 2 ! 2 4
,, * / +6 ,--9( +'. $ ! / ).J*) 4 0 /# C Q1 . = @ C @ Q @ # #
" ;( .&J&+ 666 % 4 " C Q1 '-- 5 =
2 #" " U / ;( &)J(& '--) 5 =
I 2" T 4 C Q1 '--- 5 =
, B " J 4 4 @" * " . + ! 0 6 A 5 =
A " " A A# @" 4 4 ,--,( )- $ ! *'J+ 4 0 /# C Q1 . 5 =
A #" *+++ > '8'93++J-( I " . 5 =
" % 7 /
>= -+?
+*&
'-J 4 0 /# C Q1 . = I 4 " A 8I5<'9
>= .?
>=CQ- ? >=-)? >=--? >= ? >= .? >= .#?
>= --? >=,@ ? >= .? >= -+?
= + # $ # # # *0I+0 * # 7 ,--9( $ !
) -) + , # '--+
=
* > , C # * # *
A $2" @ A '--- 4 =P , P % @ @ # $ B " " " " $ +4 ,--, &*.J &+ 666 % 4 " C Q1 @ = * 0 / *0@-9( 2= '* A% 4= AC = 4644 . A# ! "#$%&# '()* + * = $ 4 3 A $ 0" 5 % ! # 0 @ / " 0D 0 %&&'( ((J* ! P !$-+ . '--+
@
+*
>=4=--?
4 =D 5 4 = 4 " 1 # "3 $ " B > 8+93)-(J* * '--- >=44 ? 2 =1 ! 4 0 4 , * * * ,---( '-&(
$ ! 4 0 /# C Q1 >=-(? Q = 6 # '--.3 6 0P B H -J.) , " , '--( >=-*? Q = 5 A4 = ! @ %46$!@$ ..)$-* " 66%4 5 " '--* >= ? I = 4 " 3 1 @ @ = ,---( '*' $ ! 4 0 /# C Q1 4 >/0 -*? ! / # A 0 @ 0 2A564!6@ J $ 7 > 6/ 8'+93)(J* '--* >/04 ? 4 / /# 0# 4 < 4S ! B $# 1 IP >I% ? *-J- >/--? % /" B 3 / @ A# * / >/ '?
0 %&&&(
0D
/
' &*J' (. '--- % /" A" G H B$ " " =1 A 41 I " 1 * /
# /! ,--%(
!"
( $ ! / +&J+- 4 0 /# C Q1
>/ .?
' /
" " B # $ /
0D ,--9(
>/-*? >/=-*? >/= ?
!"
60+
*)* $ ! (*J * 4 0 /# C Q1 . I % /1 6 0 D 6 $ # " 7 ! @ !@$%46$-*$&* 5 % 4 T 6 A " '--* 5 / 6 =" 6 # # . 8*93.'J& '--* < / = D " " IP >I% ? '&*J'(&
++
@
>// .?
@ / / 0 $# $# " 4 11 =
>4= .? .(J( >// .#? 4 / /# < / ! B $# 1 " " IP >I@ .? -(J' & >/ '? @ / , " ' >/I .? 4 /P I IP A 1 4A " $ ) * * * ***( 8 9 < A 5 . >/I .#? 4 / /# I IP 5 1 #$# " $# 1 %- / B " + + ,--9( &++O 666 % 4 " C Q1 . >/<-+? /D = < 5 J 1 I 0VD $A 3$ %&&' C 8 ! ')'+ $ ! / -J 4 0 /# C Q1 '--+ >/@ -+? /# 4 A @ 0 4 PD 4 , 4$ ! B # "$ * " + / '((J')& '--+ >/C4-*? 4 /1 ! C " ! 4 A $ X B # I 0 / " 5 ! F 3 F3 %&&A(2 0 F B ! '' $ ! (J*' 4 0 /# C Q1 '--* >/*? % A @ / * '3*'J+ '-* >/+(? % A @ / D / 6 %O CI '-+( >/-)? % A @ / / # U $% = I 2 1 + %&&) +(2 * 8B ' (' $ ! 'J'* 4 0 /# C Q1 '--) >/ .? = /D
0 A $2" . >/ 4 '? / A BD
! 4 % B "$ B ( -(J. ) 666 % 4 " C Q1 ' >/!0 .? @ /1 !" 0 A " " B IP >I@ .? .J'+ >/Y '? / /Y
1 * " + +( - $ ! 4 0 /# C Q1 ' >I ? 5 I ## B B$ 3 A " IP >I% ? ''J'.
@ >I0@-+? >I% ? >I4 &? >I= .?
+-
I # = 0 I @# 0 3B " / A $2" @ A '--+ I IP % 6 0 D 0 @ @ 4 " 3$ 3$ ,--,( ! P ! @ !$ + 1 I IP 6 0 D @ 4 % " $ $1 > " & 4 # # I IP I =P # % " 3 , $" 1 * /
" + # B * # !" # I ! ,--9(
>I/ .? >I/ &? >I/% ? >I/< .? >I< .? >I<4-(? >I *? >I +*? >I 2 ? >I 2 .?
('J('* $
A % 4 8A%49 . I IP 4 / /# 5 "$ " $# 1 " +&* $ ! .)&J.)( 4 0 /# C Q1 . I IP 4 < /# @1$ "$ " < A 5 & 01 # # 8#1 9 I$ IVDV7 / /Y
4 %1 5 * 3B $ 3$ ,--,( &) $ ! 4 0 /$ # C Q1 5 C I / /
I$ < A [4$ $ 4 >4 .#? *)J-' ) % I IP ! < # #$# 3 % * I* ,--9 A 5 4 " 8A549 . / $" 4 I 0 < @ 4 A $ # $ A# >AI -(? 5 % 0 I 3 A # 6"L / * *7$! ! '( J')- '-* 0 I HB 5 5 % 4" " '-+* ! @ 5%4 +*K - I IP = = 2 ! " $# " A + $ +$ ,--,( 4 " $ = I IP = = 2 $ "$ "
-
@ ,# = 8,=9 . A +3('J() . I IP 0 @ @ 0 6 0 D / " 3$ 3$ ,--9( # !$ .'* ! P ! @ . . 1 I IP 4# A B $ " 7 I$ IVDV7 / /Y
4 %1 3$ ,--1 C 0 3B $ &) $ ! &'J&( 4 0 /# C Q1 & I IP 4# $# " " 3$ 4$ 8 " + 56A = # & ! # # I IP 4# A $ " %% *+++ * ,--9( * 8
>I@ .? >I4 &?
>I4 ? >I4 & ?
+ 8 ,--1(
>I4A &? >IP ? >IP '? >IP '#?
>IP ' ? >IP '?
>IP '?
+8
0 %D @# " &J) & 666 % 4 $ " C Q1 I IP 4# 6 A A = 4 /P 5 < # 4 4 = <1 D 4 4 DP 4 4 & A # # >IP &? A# $ I IP 4 E % !36 ,--- %% * 0( '+** $ ! .-(J& - 4 0 /# C Q1 I IP A# ## */
,--%(
(.J)& 666 % 4 " C Q1 ' I IP %#" " =1 41 " 1 *
# /! ,--%(
!"
( $ ! / +J.+ 4 0 /# C Q1 ' I IP 5 " J #$
5
HJK *0/ ,--% H* ,--%( 55$ #P 2# ' I IP B "$ " HB / H ,--%( , ' # ,% ! $
@ @=$@@$ '$ * A# . //++& 0 I IP " $ " 5" 0 */
2 0 !" -.J' + 8 9 < A 5$
@ >IP ' ? >IP '? >IP '?
>IP '?
>IP '? >IP ? >IP #? >IP ?
>IP ?
' %) * * + ,--%( I IP , # =# > '(+3'+.J'-) ' I IP 4 "$ B * + +( ' $ ! '.(J'( 4 0 /# C Q1 ' I IP 4 I 0 5 5 1 I 4 6 / !" ' *J'& $ 8 9 !%$'' 2= ''& < A 5 ' !" */! ,--%( I IP ! " / /Y
1 * " + +( - $ ! '+*J 4 0 /$ # C Q1 ' A , " % #$ " !@$-$ 8C# 9 +1+ I IP ! J "$ " 0 3$ 03$# +0 ,--% +( ' I IP A $ >/ ? ' -J' '. I IP % " $ $ ,--,( 6 6 % T 4" 86%49 1 I IP 6 " 0 % 0 % I A @ / &)* $ ! -(J' ' 4 0 /# C Q1 - $
21 ! ' J' ) I IP #" 0 I$ # A @ 1 5 * /
,--,(
>IP ? >IP ? >IP ? >IP ?
-'
/8
-J&& $ 8 9 < A 5 I IP 6 1 %,@0A$A / + !$ 4 I IP 5 , " % #" I IP 4 " J 6 % $
! 8%! 9 1 I IP J B ) ,--,( ,#$ = 8,=9 / $"
-
@
>IP ? >IP ? >IP .?
>IP .#? >IP . ? >IP .? >IP .? >IP . ? >IP .? >IP &? >IP &? >IP ? >IP & ? >IP &? >IP &?
>IP & ?
I IP 3 6 " IVDV7 >I/% ? &'J&( I IP $ " $ >/ ? ' )J' .' I IP A# 3 % $ " 0" A X + 5 */ : * < * ,--9( +- $ ! ..+J.&. 4 0 /# C Q1 . I IP % " $# . ! 4A6%, . %4!64!$6 . 46 & 5 - , I IP 5 "$ "$ " 6 " . 1 I IP 5 "$ " 4 >4 .#? .) J.* I IP 5 3$ + ,# $ = 8,=9 . / $" I IP 4644 # 21 = 4 6 4 " 4 " 846449 = % 4 " 8=9 2# - , . I IP $# " 3$ 0 . 1 I IP # $ & A # # 3 @ 3 #1 I IP % " > 0 & ! # # I IP % 4" 5 & 4 # . J & - , I IP 5 $ " 3 A + *+++ * . + .+ ,--1( .'J& 666 % 4 " C Q1 & I IP 5 "$ J 1$ ! ')+ KA & I IP 5 4 "$% 4" & 4$ . ,= 5,%$ 46% 6!A 4 . ,= 21 , 6 A . 4" . A46 . ,,54 . 6%,, & 2%% & 5
- , I IP */
H" H ,--1(
0 &
@ >IP &? >IP &? >IP &? >IP &?
>IP &1? >IP (? >I2 '? >I2 '#?
>I2 ?
>< ? ><+-? ><6@--? ><=-+?
-.
I IP " <$ D & = $
I IP " L 3 ! $ " " 0 *0+0/+ ,--1( 0# & I IP 4 " 1 * / ,--1( & I IP 4 #
"$ "$ " ,9 * # 6# + ,--1( C % 4 4 0 /# C Q1 & $" I IP ! % 4" 5 %& <
* " + ,--1(
+
* : * < ,--%( $ !
*
666 % 4 " C Q1 & I IP 4 " % ( I IP = 2 " $ " %) * / " + + ,--%( & +J&'' 666 % 4 $ " C Q1 ' I IP = 2 4 " $ 3 ! % 6 4 B 0 4 < 4 1$4# ! 0" +/ 2 +/# +/8 # +/7 &+-J( ) 8 9 < A 5 ' % 6$% 6$0 6$= 8.6 '9 I IP = 2 4 B $# B 5 0S 0" A X + 1
&&
. +J .') 4 0 /# C Q1 I <#" A % /" A" " 3 A 1 *+++ */ . %&&&(
+
.+
+'J++ 666 % 4 " C Q1 '--- = < I # " J I ( &J. @ A < A "D " B $ 7 *+++ > *8&93&&+J&(* " '-+- 4 < A 6 0 @ A[ A 4 5" / 0 # + %&&& 6 '*&. $ ! ..J() 4 0 /# C Q1 '--- <# 4 = ! D I 4 " A I5< ' [7 >[5=-+? '-'J *
-&
@
><< &?
>< --?
>< ? ><@ &? ><P ? ><P ? ><2 '? ><2 &?
@ < $< % B # $ U I IP + ,--1 & 4 21 21 = 4 6 $ 4 " 4 " 846449 = % 4 " 8=9 A# - , < / C
A " [7 >[5=-+? .&(J.) A < A @ 0 0 @ 3$ @&&2 * 0 3B $ '*. $ ! '')J'. 4 0 /# C Q1 '--- < $ A " B IP >I% ? ).J*+ 5$< < @" @ 0 C $# D 2 >2 &? '+ J'-. / <P " D 5 P 1 ! P / <P ! B $@! IP >I% ? '-J.& A < I 2 B 4 5" 4 $ ! < ,# C ' 5 + @
>*.? >0*.? >05 ? >=4 '? >/ ? >< ? > .?
--)
.+J .-. 4 0 /# C Q1 & 0 2 A B # ')8' 93)'.J)'( '-*. I 5 6 0 4 "3 A $ ! ! !@6 % '-*. @ > &3.-J). '--) ! 5 0 I 5 4 3 A $# $ " IVDV7 >I/% ? &)J&&' 5 =
@ 4 B# B $ " %A /
&( J&(- 666 % 4 " C Q1 ' = 0 / / = 0 ,--, ( A% 2 P A < < /$ 4 I 4 5 < < 1 %A@!@,C%$ 3 0 " $ 1 " " IP >I% ? .J'* DD A D 4 A $ " IP >I@ .? ''.J'
@ >-*? > ? >-(? >-)? >-+? > --? >@-*? >2-&? > '? > ? >%+*? > =-+? > -&? > -)? > -.? >-'? >-? >-(?
-(
D ! " "$ > 5 .'J)* '--* D " B " + ! 0 . 56@AK@/ 21 4 A '--- = A 1 C$4 # $1" $ * $ ()8.93'.'J'.. C$ # '--( = 01 B C$4 # $1" $ 5@ " 0 '*8.93-.J' '--) = %3 A " " > )8'J93(.J+& '--+ I 1 @ 0 0 @ 0 3B $ 3$ %&&&( '*. $ ! &. J&&( 4 0 /# C Q1 '--- = 0 @ %4 !C *+++ 0 " + .8' 93)(-J ))- '--* 0 1 I 2 A # #" 0 $ ')8)93'+''J '+&' C# '--& / E B ;( *+J-. ' / , " ,--, *+++ ++J' ' 666 % 4 " C Q1 I < 4 % %1 4 0 ! 3 $ " " *+++ 0 " + 46$'.893*&J++ #" '-+* = = ! " 3 2" $ $ *+++ + A '--+ I 4 " I 1 + " + I 2" T 4 C Q1 '--& I A " G# H *+++ 0 " + 8'93(.J)* '--) < < A 0 '--. % A " B " 1" $ ;( '+J'-( '--' % # # #" ;( '**J'++ 666 % 4 " C Q1 '-- % B " 3 A " I D"1 @ 4 $C %&&1
-)
@
>-)? > ? > ? >= .?
>/-+? >0-+? > '? >*'?
-'* $ ! '.(J'( 4 0 /# C Q1 '--( % ! C@ A "D3 A > $ )893''.J'.' '--) % , " $ " 6 * + *+4 ,---( .*J( 666 % 4 " C Q1 4 D J # 1 8 19 IP >I% ? / = = A " " 3 ! $ " I 6 1O %5 *
* + ,--9( $ !
+
, * > B * %&A%(
*>*
)+'
).J *+ 4 0 /# C Q1 . % / 1 = E $/ ! '&&.3.).JUU '--+ @ 0 A# 4 $ = >=-+? .*J&- ! C # $ B A ( ' A# @ A # B #
&+'J&+- '-*' >+-? @ / C Q1 '-+- > -*? , # @ D I 4 # % = I 4
< " 46!/6, 6$46!/6, J ! %A56$'. 4" > 6 >6( '+893.*J&) '--* > ? @ C " ! ,% 0 IP >I% ? '&*J'(& >4-*? I 4 A " "$ ;( '&'J'(' 666 % 4 " C Q1 '--* >, ? ,# = %=1 B A A# >4 ? 6V " ! 4 0 B 0 =1 >=44 ? .(+J.*- >4 .? / A 4# A " " $ # $ > ''8&93)'(J)*) . >, -)? A D , 4 . %@% 0 @ '--) 5 >C6 '? C6 !C6 '
@ >C .?
-*
C# , A# . >CC4 ? C / @ C / 4 CD# " D# / = # & * ,--,( &** $ ! J.( 4 0 /# C Q1 >C 2 ? ! C1 % 2 D * I.$ / . / $ 4 0 /# C Q1 >C4*+? @ C 4 " $ 1 '8'93--.J--- '-*+ >C4 .? C C4 A# . >,O-(? I ,O %, * 0 " '--( >,P ? = ,P < 1 #" 6 >6<4 ? .(-J.)+ >,--? I ,O Q 4 % B $ # 5 *+++ + / *+ %&&&( ''-O 666 % 4 " C Q1 '--- > ? A D $ U IP >I% ? ').J'* > -+? % " !4 8 $ 9 0 % 0 % 2 4 /# @ '(( $ ! '.J. 4 0 /# C Q1 '--+ ) 21 > -+#? % ! " " $ > )8'J93+(J'+ '--+ > ? % " 3 A " IP >I% ? '*'J'+ > I20 .? = I IP = 2 @ 0 4 "$ " %- /B " + + ,--9( &*+J&+* 666 %$ 4 " C Q1 . > '? X D1 A D % 1 " + ,--% '+* $ ! &)J(( 4 0 /# C Q1 ' > -? 2 ! 1 A " #$ " !*0 C 4 ! " 5 # '-- > @-&? 0 0 @ A B #$ C 0 ! 5 0 + %&&12 * 8B / +*. $ ! '(&J'*&
-+
@
4 0 /# C Q1 '--& 4 4" 6 > 4-*? I 1 4 ! "$ " > '-3(.J** '--* > 2 ? 0 BD
2 % " " A ,---( &(J(& >[5=-+? I$I [7 Q 5 % 5 =
+ 6 +6*( '&+( $ ! 4 0 /# C Q1 '--+ >@A%/ ? = @ 6 A % %" / /Y
A " J A ! 4 6 # " + + ,---( '*+. $ ! '*J'&) 4 0 /# C Q1 >@%A ? = @ % 6 A A # 5 /" A C$ = 4 $ $ ,---( # ') ! 21 $ ! " 8!2!9 " ! C A# " 4 ! " 8AA4!9 21 >@%A '? = @ % 6 A ! /Y
>/Y '? '*'J'+) >@6 ? 2 @ 1 2 6Æ . I 2" T 4 C Q1 >@0, '? 5 @ 4 5 0 1$ C ,# ! $ *7$! / / # $ / $ ,--%( *7$! !
.) 8''9
.*J.&' A% C Q1 C# ' >@= .? @" @ 0 C = = A $# * ; " 0 . ! # # >@ .? @ @ . %4K0 " " ! % 4 " 4 " . A# >@I0--? I @# I # = 0 0 3B $/ 6 A $2" @ A '--- >@I2 .? I @# I IP = 2 , 4 = / 5 ! 9 * / ,--9( &-J( 666 % 4 " C Q1 . >@< .? @" C 5$< < @ 0 D " ) * * * ***(
8 9 < A 5 .
@ >@4-+? >@4 '? >@4= '? >@-)? >@ ? >@ &? >@ '?
>@2--? >@22-&?
>40%I-*? >4% '? >4 -)? >4 -*?
>4 -+? >4 --? >4 --#?
--
@" 4 4 A 1 * $ )(3*J' '--+ A @ 6 4 A # 3 -'J' & $ 8 9 ' @" 4 4 = = 0 @ 0 2 A $2" @ A ' 0 @ +" / 5 ! P '--) 0 @ 6 # A U * ; 0 * 0 / )-*J* ' 4 = #$ 0 @ 3$ 4 0 /# C Q1 & A @D A 1 '' 8" 9 @ =V A ! C1 * > 6 *>6 ,--%( +.
$ ! .*)J.+ 4 0 /# C Q1 ' = @ @ 2 !" #
'. " 6 3$2 $ '--- ,, 4A '--- 1 A @ I 2 1 2 C $ $ 5 =
9 + 6 +6* %&&1( +*( $ ! ..J(. 4 0 /# C Q1 '--& 4 6 0 A % 4 I $ E # $ " *+++ 0 G" + (&J(.* A '--* 4" % ! ,---( $ '*' $ ! ).J'.) ' 4 4 4 " %4 *+++ ;( '*&J'+* '--) I 4
A B " 46!/6, 2 % %1 * +/%1( '&- $ ! +*J' 4 0 /# C Q1 '--* 2 4 P A# 4 = >=-+? J.) 4 0 C A " 2 5% '--- A# I 4
K46!/6,3 A "
C /# 5 %%
.
@ ')..
( J( & 4 0 /# C Q1 '--- 2 4 2" L " U =1 >=44 ? -*J-+ I 4
0 " + / 4 0 /# C Q1 ' 4 + " C # 0/ # !" *(& $ ! 4 0 /# C Q1 . A 4 !$ " # 4A . 4" ! P 4 4 " 5 % I 2 1 + 2 / B# 6B# , " % #$ " ! @=$') 0 4 ! 7 "$ " 8 19 IP >I@ .? 'J 6 4 11 5 =
' + 6 +6* ,--9( + +
$ ! 4 0 /# C Q1 . 0 4 PD /# 7 I 2 I 2 1 I 5 * HB H @&&( $ !
>4 ? >4 '? >4 .? >4 .#? >4%2 ? >4 .? >4= .? >4/--?
%&&&(
>4--? >4/ ? >4< '?
>4 --? >4@-+? >44*(? >44-&? >44 '?
'* - $ ! ' )J '( 4 0 /# C Q1 '--- A 4 %" 9 * %&&&( '--- ! 4 / A BD
% B "$ B J =
>=<2 ? '-&J'' ! 4 P A < 4 D 1 $ # 4 5 4 2 " ((8.9 + ! 0 6 A ' 4 '. % %$ A B 8%A '9 4 @ " 3 3$2 " " / A $2" @ A '--- 0 4 I @# $ " A# +2 '--+ I 4D 4 ! $ " *+++ ).8-93'*+J'. + 4# '-*( @ 4 4 A 3 *+++ E .8-93& J&+ '--& = 4 O % 4 ! # #" ' A# 33
@ >440 '? >44@0 ? >4! ?
.'
@ 4P1 I 4 6 0P > > C B# B# 4 0 /# C Q1 ' 5 % 4 4 / @ 0
/ " I 2" T 4 C Q1 % C1 ,# 4 4 % ! 1 * /
,---(
/8
'** ** $
8 9 < A $ 5 >4 '? 4 , B $ /Y
>/Y '? '& J'(( >4 '#? 4 A U ! ' ' >4 .? 4 4$ : U > " + ' 8'93*J' . < >4 .#? 4 0 3B $ 3$ ,--9( $ +). $ ! 4 0 /$ # C Q1 . ) % >4S '? < 4S A 1 1 " " " ,--% * !" ! ,--%( 5&J5'' ' >4P .? / 4P A B $ IP >I@ .? *-J-& >4,-&? 4" , , " " *+++ '&J+ '--& >42-*? A 4 P A 2 B B L K 1 I 0 4 / 0 +@&A 6 ( '.(*
$ ! ''J'( 4 0 /# C Q1 '--* >42 ? = 4 D A 2 6$46!/6,3 A @ 5" 1O 6 " 0 6 08$+34 ,---( '+&* $ ! &.)J&& 4 0 /# C Q1 >!/=--? I !" V# I % /D I 5 = 4 3 " > *8'9 '--- >! '? ! @ " B A ( ' A# )-) % % % >!4 ? I ! D 4 DDW " + + ,--9( )' $ ! '.(J'&- 4 0 /# C Q1
.
@
> .? >0 ? > .? ><4X .? > -+? > ? >, ? > .? > 22 ? >2 ? >2 ?
,# = 7 3B $ / . '( ,= 5 K .$ .$ ' 0 1 A $ " '893'. J'&' # . I <1 0 4 I X1 A " $ "$ " IP >I@ .? ''J'+ I = = " *2 * / + I 2" T 4 C Q1 '--+ I = = 8 " A $2" @ A 5 ,# D " " =
>=<2 ? 'J+ 5 A D A B IP >I@ .? ).J*+ = 2 A 2 4 " $ # %- * / " + +/%-( '-J'.+ A% C Q1 21 , " .= 1 0 C +366?0 '+ * $ ! ' J' . 4 0 /# C Q1 0 2 C $ " 6/0 + ,= I" '(J'+
/'%))% B %=5
# %" *+%# %4+!5
>20/ ? % 2 # 0 ! / # 6 < % !# 5 !V 4 %' * +/%'( .- $ ! *(J*- 4 0 /# C Q1 >2 ? / 2 % 1 # #" B 0 I$ # A @ 1 5 * / ,--,(
>2-(? >2--? >2-+? >2 ?
/8
*-J-& $ 8 9 < A 5 % 2 A# >AI -(? $ '' )-J-) % 2 # ! " " B$ / = D %) * +/%)( '). $ ! .'&J.+ '--- 5 4 2 6 2 I 1 *+++ ;( (O '--+ I 2 " " 3 A > ''8&93&J'.
@ >2*'? >2I ?
>2 &? >24 ? >22 '?
> .? > ? >X= ?
..
C 2 #" B / '&8&93'J* A '-*' A#
1 = 2 I IP 4 B $# "$ " * + *+( &-( $ ! &*'J&+ 4 0 /$ # C Q1 2 ! " + + ,---( -+& $ ! 4 0 /# C Q1 & A 21 4 %$ $ IP >I% ? '..J'&) = 2 A 2Y 6 7 " 5" 0 * 2 0 !" &)-O 8 9 < A 5$ ' ') % 4 " 846% '9 X I A
$ # B IP >I@ .? ' (J'' ,# = 7 4$ * 4*( B I " X
= A ,% IP >I% ? (.J)
4
8 9 .) 33 .* 3; '). .+ ; * ; * ')) > ? .& 89 ')* .& .* * * *
*
.& .& .& .& .& .& Ý '*& '*& '* 8 9 .* 8 9 .* 8 9 .* 89 '+ 89 '+ 89 '+ ** '*+
. 89 '* & '*+ 89 '* 89 '* & '*+
( &( '+* ( &( '+* Æ .& Æ .& 89 .& 8 9 .*
.+ '*+ & ''+ # & # 1 & '*+ * '- '- (( . * "! 89 '-* "!+89 ') * $ " " & . '* ')89 '*+ " '*+ (. (( (- ) " 1 '*" " .+ * 89 '* K '*)
$
, &
&
.)
" 1" .) " ') '+) # '-+ . " . &. + '+( .' (+
# .& #$89 ')* # B '*& '*( + # 1$# B .) '*( + # 1$# B
. # 1$# B " &' # 1 ')& # ') 0 #&' ) ')( (( ')& ')& ) ' & ) ' # ( &* ) ( ( ( &* * # * '). B " .
'&
&* #" . ')& # ) . . .%,@0A &
.
$$
(+ " ' .) " . ) 1 (* " $B '*& " # 1$# B .) " # 1$# B " &' " $# 1$# B + " 7 '*) " B '*& '*( " $# 7 " $# B + .+ '*+ " ) ' " & . ')& $ " . '+ $8 9$B '*& $# 1$# B + " )+ () " " . " * 7 '*) 7 ')) .( '* '-) 7 '-) &$
.( '* &' '*' .) * &' .( .* '* '-( &'$## .+ .( .* '* '-(
$ )+
(.
') B * B * ')(
')&
. &( '+( .'
0
(+
. 89 .* )) # & )) & )( # '' & .* 89 .& '* .& . (+ (+ )& $ B '*) ')& .* '+) E '+ " 1 . 1 '*+ * 7 .( ') * K # ')* .( '). .+ '*+ ) " . &. '+& .' (+ (+ &+ &* ) ) B '*) " . '+ * () " '-* () 89 ')( ')( * I 4 " A &
/
$
.*
1" .) .) 1 '* () ) ) 1 7 .) $$ ')( $$ ')( ! ')( ! ')( . %,
.( " . ') B ' " & ( (89 '* - .( .( - .( ')$ . $ .& !
$ )& $ )&
$ . &) '+*
$
. .) $ $' 2$' $ 2$'
# ) ' # & # &* ) ') ) ') 7 .( ') * .( '). $/
1 & .' 1 &* ')& D 4" '*( &*
.+
* . $# . '' () " '+& .' " # &' '+ .' " &' '+ .' $E &( '+* .' $E &( '+* .' 1 & '*+ B .. '' (( " '+( .' " #" * 3 &
$&
(( .+ '*+ D * B '*& '*( * B # '+ "$ '*) "$ B '*) . " ')89 '- ') ') (( (( $# (( "! ')) ')) $$ )
$
&( '+( & .' " . &' '+ .' (+ (+ 1 . ( E . &) '+* ( " " '-+ ) 89 '-- * )
')& 7 & + 7 * 7 ')& 7 # * + ') ') .* '). () 89 .* 89 '* & '+ (& . * .- ') & ) & ) . . . ) B * + " . ) (+ ) () (. )) )( (+ (+ ) () () () $ )& $ )& () (( (( (+ ( ( ) () () (&
$
%,
$ $' 2$' $ 2$'
3 & $&
'
$
$ '** $7 '*. # " . ## .+ # '+) # * #" & . . " 1" .) " D # . " ')" . . (( (. (( (- ) (+ (( (+ )) (+ )& (+ (( (( (+ (& (&
89 .& '* .& & '+ ') ')
89 .* .+ '*+ .- '*+ 89 .+ () 89 .- '*+
$
&
$
$
&* 89 ')) 8 9 '*' 89 ')) . '* $ ) " '*) * ') & ') $ /
$ / $$/
&* ')' ') .( '* 4" '* /-.( .( '* 4 '* ') B '*. '+' #" '+' '). & ( 0 .) # ') ') 0 ') #" ') ')( ')( $# '*( $# 7 $# B + () '
.-