Formal Approaches to Testing of Software

Rob Hierons and Thierry Jéron (Eds.)
Formal Approaches to
Testing of Software
FATES’02
A Satellite Workshop of CONCUR’02
Brno, Czech Republic, August 24th 2002
Proceedings
ii
Preface
Testing is an important technique for validating and checking the correctness of software. However, the production and application of effective and efficient tests is typically extremely difficult, expensive, laborious, error-prone and time consuming. Formal methods are a way of specifying and verifying software systems by applying techniques from mathematics and logic. This enables the developer to analyze system
models and reason about them with mathematical precision and rigour. Thus both
formal methods and software testing can be used to improve software quality.
Traditionally, formal methods and testing have been seen as rival approaches. However, in recent years a new consensus has developed. Under this consensus, formal
methods and testing are seen as complementary. In particular, it has been shown that
the presence of a formal specification can assist the test process in a number of ways.
The specification may act as an oracle or as the basis for systematic, and possibly automatic, test synthesis. In conjunction with test hypotheses or a fault model, formal
specifications have also been used to allow stronger statements, about test effectiveness, to be made. It is possible that the contribution to testing will be one of the main
benefits of using formal methods.
The aim of the workshop FATES — Formal Approaches to Testing of Software — is to
be a forum for researchers, developers and testers to present ideas about and discuss
the use of formal methods in software testing. Topics of interest are formal test theory,
test tools and applications of testing based on formal methods, including algorithmic
generation of tests from formal specifications, test result analysis, test selection and
coverage computation based on formal models, and all of this based on different formal
methods, and applied in different application areas.
This volume contains the papers presented at FATES ’02 which was held in Brno
(Czech Republic) on August 24, 2002, as an affiliated workshop of C ONCUR’02. Out
of 17 submitted papers the programme committee selected 9 regular papers and 1 position paper for presentation at the workshop. Together with the keynote presentation by
Elaine Weyuker, from AT& T Labs, USA, they form the contents of these proceedings.
The papers present different approaches to using formal methods in software testing. The main theme is the generation of an efficient and effective set of test cases
from a formal description. Different models and formalisms are used as the starting
point, such as (probabilistic) finite state machines, X-machines, transition systems,
iii
categories, B, Z, Statecharts, UML, and different methodologies and algorithms are
discussed for the test derivation process, ranging from formalization of the manual
testing process to the (re)use of techniques from model checking.
The papers give insight in what has been achieved in the area of software testing with
formal methods. Besides, they give clear indications of what has to be done before we
can expect widespread use of formal techniques in software testing. The prospects for
using formal methods to improve the quality and reduce the cost of software testing are
good, but still more effort is needed, both in developing new theories and in making
the existing methods and theories applicable, e.g., by providing tool support.
We would like to thank the programme committee and the additional reviewers for
their support in selecting and composing the workshop programme, and we thank the
authors for their contributions without which, of course, these proceedings would not
exist.
Last, but not least, we thank Antonin Kucera for arranging all local matters of organizing the workshop, and the Masaryk University of Brno for giving the opportunity
to organize FATES ’02 as a satellite of C ONCUR’02, INRIA for supporting the printing
and distribution of these proceedings, and the EPSRC Formal Methods and Testing
network.
Brunel and Rennes, August 2002
Rob Hierons
Thierry Jéron
iv
Programme committee
Ed Brinksma
Rocco De Nicola
Marie-Claude Gaudel
Jens Grabowski
Dick Hamlet
Robert Hierons
Thierry Jéron
David Lee
Brian Nielsen
Jeff Offutt
Doron Peled
Alexandre Petrenko
Jan Tretmans
Antti Valmari
Carsten Weise
Martin Woodward
(University of Twente, The Netherlands)
(Università degli Studi di Firenze, Italy)
(Université de Paris-Sud, France)
(Universität Lübeck, Germany)
(Portland State University, United Kingdom)
(Brunel University, United Kingdom), co-chair
(INRIA Rennes, France), co-chair
(Bell Labs, Beijing, China)
(Aalborg University, Denmark)
(George Mason University, USA)
(University of Texas at Austin, USA)
(CRIM, Canada)
(University of Nijmegen, The Netherlands)
(Tampere University of Technology, Finland)
(Ericsson Eurolab Deutschland GmbH, Germany)
(Liverpool University, United Kingdom)
Referees
Boroday Serge,
Ebner Michael,
Jard Claude,
Le Traon Yves,
Marchand Hervé,
(CRIM, Canada)
(Universität zu Lübeck, Germany)
(IRISA/CNRS Rennes, France)
(IRISA/University Rennes I, France)
(IRISA/INRIA Rennes, France)
Local organization
Antonin Kucera,
Masaryk University,
Brno,
Czech Republic
v
vi
Contents
1
Thinking Formally About Testing Without a Formal Specification . .
Elaine Weyuker
1
2
Generating Formal Specifications from Test Information . . . . . . .
Thomas J. Ostrand
11
3
Testing from statecharts using the Wp method . . . . . . . . . . . . .
Kirill Bogdanov, Mike Holcombe
19
4
Testing Nondeterministic (stream) X-machines . . . . . . . . . . . .
Florentin Ipate, Marian Gheorghe, Mike Holcombe, Tudor Balanescu
35
5
Complete Behavioural Testing (two extensions to state-machine testing) 51
Mike Stannett
6
Formal Basis for Testing with Joint Action Specifications . . . . . . .
Timo Aaltonen, Joni Helin
65
7
Queued Testing of Transition Systems with Inputs and Outputs . . . .
Alex Petrenko, Nina Yevtushenko
79
8
Optimization Problems in Testing Probabilistic Finite-State Machines
Fan Zhang, To-yat Cheung
95
9
BZ-TT: A Tool-Set for Test Generation from Z and B using Constraint
Logic Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
F. Ambert, F. Bouquet, S. Chemin, S. Guenaud, B. Legeard, F. Peureux,
N. Vacelet, M. Utting
10
Using a Virtual Reality Environment to Generate Test Specifications . 121
Stefan Bisanz, Aliki Tsiolakis
11
Towards a formalization of viewpoints testing . . . . . . . . . . . . . 137
Marius Bujorianu , Manuela Bujorianu, Savi Maharaj
vii
"!$#%&(' )*+
,-.
/10 !324)56247&
8:9<;>=<?A@CBEDGFH@JILKNM>@PO
Q3RSRUT ;WVAX7Y7Z[@JX@P;\O]_^
`PaWbdc ;WOM Qfe @P?AKA@
g49ihAO^N;Wj c ;WOkMElNmB bWnWoWp\q
r @JINKNMs@POtO)@JX@P;WO]J^uDv;swwxDy]Jhzj
{}|-~JP€xE‚s
ƒu„…J†‡‰ˆi‡‰ˆ‹ŠPŒW„‰Ž[‡Ž‰‡ŽŠ‘’‡”“•…‘„k–P„‰—˜z…—™…‘ŒW˜™šz…–x›‡‰Šœ…‘žP[˜W†kˆiމˆ‹ŠPŒWŽ…JŸAŠP \‡¡“4šA…J‡3‡‰†šs¢
ŒWˆ‹£s WŽu‡Š[ Wމ‡‰Š[Ž¤‹†‡-‡kŽ‡*˜z…‘‡¥…\¦N§4šWˆ‹Žu¨z…J¨A„*˜Wˆ‹Ž‰† WŽŽ‰Ž-“4šz…J‡uˆ‹‡Eœ,©…JŒWŽ%’Šx„EŠxŒW‡‰Ž‡-˜z…‘‡¥…
Žk¤ik†‡ˆ‹ŠPŒª†„‰ˆi‡‰„ˆ‹ŠxŒ‡‰ŠŸAfœŠP„‰«N†‡‰ˆi–x‡‰šz…JŒ…‘ŒWŠP‡‰šW„¦1¬>–P„…J¤*¨\„ŠP¨AŠPމ˜}†Šxœ¨z…‘„ˆ‹ŽŠxŒ
„k¤<…‘‡ˆ‹ŠPŒ\Ž•…‘„¨W„‰ŽkŒ­‡‰˜}…JŒW˜C˜Wˆ‹Ž†k WŽŽ‰˜E¦3®$¯z†kˆikŒW†ˆ‹Ž…J„‰¡š\ˆi°xšW¤‹ˆ‹°Pšs‡˜%±W…JŒW˜™…f˜Wˆ‹Ž†k WŽŽ‰ˆiŠxŒ
ŠJ4šWŠJ“²‡š\ŽC„k¤<…‘‡ˆ‹ŠPŒ\Ž–PŠx¤‹–P˜}ˆ‹Ž¨W„‰ŽkŒ­‡‰˜E¦}§4š\ WŽ³ W¤‹ŒWŽŽŠ‘3œ¨\ˆi„‰ˆ‹†©…J¤uŽ‡‰ W˜Wˆ‹Žfˆ‹Ž
…J¤‹Ž‰Š›†ŠxŒWŽˆ‹˜Wk„˜E¦
´ µ E*¶d2-&k
·[O@J]J@P?\w9‹I";s¸N¸EO@JXkX@J¸¹;™j6@J@Jw=º?A»hs¼¡O)hzKA»z^A9‹I½ bWb Xhs¼”w r ;WO@fw@JXw@POXxD Q 9‹9-hs¼4w©^A@Pj r @PO@VNO)=i»A^WwPl
@J¾N¿N@PO)=i@P?A]J@J¸*l4MA?Ah r 9‹@J¸N»W@P;WVA9‹@Wlu@J¸EKA]P;sw@J¸*DfÀÁhWXw r @PO@¼OhzjÂw^A@wk@J9i@J]JhAj™jCKN?A=i]P;>w=‹hz?AX r hzO9‹¸ÃY
9º;W?A¸Chs¼uw©^A@3Xkw©;sw@[j™;s]J^A=<?A@WD$·*;sX©Ms@J¸C^Ah r j™;W?\Ihs¼Ew©^A@PjÄOhzKAwk=<?A@J9‹ICX©; r ;[¼”hzOj™;>9WX©¿N@J]J=ÆÅE]P;swk=ihA?uD
·f=º?A]J9ºKA¸N@J¸ÇX©KA]J^Hw^A=<?A»\X6;>X e ;\O=‹hzKAXwIN¿N@JXChs¼Xw©;swk@6jd;s]_^A=º?A@JXPl$ÈAw©;sw@J]J^N;WOwXxl*ÉÀ T l T*ÊRÊ Èul
8:Xw@J9‹9‹@WlNÈAË T lN;W?A¸ÍÌÎX©¿N@J]J=ÆÅE]P;swk=ihA?AXPlNhzO$;W?WIAw©^A=º?A»C@J9‹X@›w^A@JI™w©^A@PjCX@J9 e @JX[]J9º;sXXk=vÅE@J¸";>X¡;f¼”hzOjd;s9
X¿N@J]J=ÆÅE]P;sw=‹hz?uD[·?AXwk@P;s¸Chs¼&X@J@J=º?A»C;fX@P;fhs¼Ï^N;\?A¸NX4=<?6w©^A@›;s=ºOJlW· r ;sX=º?AXwk@P;s¸™»zO@J@Jwk@J¸6V\I;f]J^AhzOKAX
h>¼Ï9º;WKA»A^Ww@PO‘D3ÈNKNO@J9‹IÍ·4^N;>¸}whW9‹¸Í;,»zO)@P;sw*ÐhzMs@WD4·-w©^A@P?dw©^AhzKA»z^\w[w©^N;sw[¿N@PO^N;W¿AXf· r ;>X¡;sX©M\=º?A»™whAh
jCKA]J^ r ^A@P?Á·KAXk@J¸¹w^A@w@POjÒÑ©OhAKAw=º?A@J9iIAÓ";W?A¸ÁXh·jChz¸N=ÆÅE@J¸Hw^A@ÔNKA@JXw=‹hz?ÃwhEÕCÑ©Öh r j™;W?\I
^N; e @}×xØP×PÙ[Xk@J@P?H;d¼ÚhAOj™;s9*X¿N@J]J=ÆÅE]P;sw=‹hz?NÛ‘Ó Ê ?A@™9‹hz?A@¿G@POXhz?ÜO;s=‹X@J¸Áw©^A@J=ºO^N;W?A¸ÃY›^A@KAX@J¸Áwh
r@J¾Nhz¿NOk@PM"O)=i=º@P?Ü?A]Jw©@W^AD @ªX r =‹w]J^A=<?A»H;WO)@P;¹;\?A¸ÝX©; r =‹wC=º?Þw©^N;sw;\O@P?N;ND R ^A=‹X r ;sX=º?A¸N@J@J¸²;W?Á@JIW@Yhz¿G@P?A=º?A»
·ßw=‹X e @POIÁ]Jhzj™j6hz?Á=º?Hw^A@™w@J9‹@J]Jhzj™jCKN?A=‹]P;sw=‹hz?AX r hzO)9i¸Üwh¹^N; e @ e @POIH^A=i»A^ÝO@J9‹=º;WVA=‹9‹=‹w¥IàO)@Y
ÔNKA=ºO@PjC@P?\wX›á”¿G@Jhz¿A9‹@hs¼”w@P?,X©¿N@P;WMhs¼¡Ñ)Å e @?A=<?A@JXkÓhzO[D oWoWo\oWo O@J9‹=º;WVA=‹9‹=iwIWlE;>9iw^AhzKA»z^,@J¾L;>]Jw9‹I r ^N;sw
w^N;swjC@P;W?AX=‹X[¼O@JÔNKA@P?Ww9‹I}KN?A]J9‹@P;WOâf;W?A¸ e @POI^A=‹»z^Ã; e ;s=‹9º;WVA=‹9‹=iwI"O@JÔNKA=ºO@PjC@P?\wX™á³XhsY]P;s9‹9‹@J¸ q ½sY n
hAO;s9 r ;xIzXC; e ;s=‹9º;WVA9‹@PâJD"FÜ@™X©¿N@P?A¸à;λzO@P;sw,¸N@P;s93h>¼7wk=<j6@Í;W?A¸ÇjChz?A@JIH;W?A¸Þ@ã*hzOww@JXkw=º?A»¹w^A@
Xkhs¼Úw r ;WO@WDfFH@™^N; e @™j™;W?\I}w@JXwk=<?A»}Xkw©;s»W@JXPÕfKN?A=‹wPlu¼”@P;sw©KNO@Wlu=º?\w@J»zO;>w=‹hz?uluXIAXw@Pj}lu9‹hz;s¸*läXw©O@JXkXPl
¿G@PO‰¼”hzOj™;W?A]J@WlA@P?A¸AYwh>Y@P?A¸*lNhz¿N@POk;sw=‹hz?AXO@P;s¸N=º?A@JXX[whC?N;WjC@$Ð)KAXw[XhAjC@hs¼w^A@›9‹@ e @J9‹XPlE;\?A¸w©^A@PO)@
=‹X;CO@JX@P;WO]J^ª9‹=‹w@PO;sw©KNO)@w©^N;sww@J9‹9iXKAX›^Ah r »WhAhA¸}=iw r hzKA9‹¸"VN@C;W?A¸ r ^N;swwkh™¸Nh r =‹w©^};,¼”hzOjd;s9
X¿N@J]J=ÆÅE]P;sw=‹hz?ul4;W?A¸ÃIW@Jww©^A@™O@P;s9 r hzO9‹¸"w©^N;>w›X©¿G@P?A¸NXw©^A@Cw=ºjC@™;W?A¸HjChA?A@JI"¸NhW=º?A»}w©^A@Cw@JXwk=<?A»
¸NhA@JX©?uåyw9ihAhzMª;sww©^N;>w9‹=iwk@PO;sw©KNO@V\I};W?A¸"9º;WO»\@WlE;W?A¸}hs¼”w@P?ª=‹X©?uåyw@ e @P?"; r ;WO@fhs¼•=‹wPD$ÈAh™w©^A@PO@=‹X
;6¸N=iXk]Jhz?N?A@J]Jw1;\?A¸"=‹w=‹X1?Ah\w]J9‹@P;WO r ^A@P?ÎhzO r ^A@Jw©^A@PO7w©^A=‹X›»z;\¿ r =‹9i9-VN@VNO)@P;s]_^A@J¸*D
R ^A@PO@¼ÚhAO@Wl*w©^A=‹XC¿N;W¿N@PO,=‹Xæ%çWè3;WVGhzKAw r ^N;>w¿N@JhA¿A9i@ªw©O;>¸N=iwk=ihA?N;s9‹9iIÞw©^A=º?NMÁ;WVNhAKAw r ^A@P?Üw©^A@JI
^A@P;\Ow©^A@,w@POjÒѼ”hzOj™;s9-jC@Jw©^AhA¸NXÓÍ;>XXhA]J=<;>w@J¸ r =‹w©^ÃXh>¼Úw r ;WO@fw@JXw=º?A»EÕ?N;\jC@J9‹I"w@JXwk=<?A»}KAX=º?A»
;鼔hzOj™;s9fX©¿G@J]J=vÅE]P;>w=‹hz?uD귏?AXwk@P;s¸²=iw r =‹9‹9VN@Ý;WVGhzKAw}hWw©^A@POdw©^A=º?A»WXÃw©^N;swÁëìÆíWîAè1VG@Á¼”hzOj™;s9‹9‹I
;>XX@JXX@J¸ r =‹w©^AhzKAw;f¼”hzOj™;>9NX©¿N@J]J=ÆÅE]P;sw=‹hz?ul%;W?A¸w^N;sw4¸N@JX©¿N@POk;sw@J9‹IÍ?A@J@J¸ªwhCVN@;sXX@JXXk@J¸O@J9º;sw= e @
wkhXh>¼Úw r ;WO@,w@JXwf]P;sX@CX@J9‹@J]Jw=‹hz?ÜXw©O;swk@J»W=‹@JXPD·?Ü¿N;WOw=‹]PKA9º;WOJl*· r =‹9‹94¼”hz]PKAXhz?Á^Ah r whª]Jhzj™¿N;WO)@
w^A@›@ã*@J]Jw= e @P?A@JXXhs¼*w@JXw=º?A»CXw©O;>w@J»W=‹@JX[wh^A@J9º¿}KAX[¸N@Jw@POjC=º?A@ r ^A=‹]J^ª=‹Xw©^A@VN@JXw;W¿N¿NOhA;s]_^¼ÚhzO
;λW= e @P?Þ¿NOhW»zO;\j}l*hzO1¼ÚhAO;s9‹97¿NO)hW»zO;Wj6X=<?Ü»W@P?A@PO;>9ÚD÷ r =‹9i9[¸N@JX]PO)=<VG@ e ;WO)=ihAKAX¼;s9‹X@};sww@Pjd¿AwX
1
;>w¸N@Å&?A=º?A»}]Jhzj™¿N;WO=‹XhA?}O@J9º;sw=‹hz?AXPlu;W?A¸}¸N@JX]PO=ºVG@ r ^A@PO@ r @;WO@?Ah r D$· r =i9‹9-¸N=‹X]PKAXX r ^\Iw^A@
¿NO)hz¿NhWXk@J¸¹O@J9º;sw=‹hz?AX r @PO@?AhWwX;sw=‹X¼;s]JwhzOIWD4·[^Ahz¿G@w©^A=‹X r =‹9i9-]J^N;s9‹9i@P?A»\@XkhzjC@hs¼4IWhzKªwhdw©^A=º?NM
;\VNhzKAwfw©^A=‹X›=ºj™¿GhzOw©;\?Wwf=‹XX©KA@C=º?¹?A@ r r ;xIzXPl%;W?A¸Á9i@P;>¸"wh};O)@P?A@ r @J¸Ã=º?Ww@PO)@JXw›=º?Ãw©^A@™¿NOhzVA9‹@Pj}l
;\?A¸}XhzjC@@J¾A]J=‹w=º?A»"?A@ r =º?AX=‹»z^WwkXPD
Ä!$[u#
0 [*#u
c OhzVN;WVA9‹I,w©^A@[Å&OXw4XKA»W»W@JXw=‹hz?¼”hzO-^Ah r wkh]Jhzj™¿N;WO@[Xh>¼Úw r ;WO@4w@JXkw=º?A»Xw©O;swk@J»W=‹@JX3KAX@J¸™w©^A@[X©KNV\Y
XKNj™¿Aw=‹hz?}O@J9º;sw=‹hz?uD$·?\w©KA=‹w= e @J9‹IWlEX©KNVAXKNj™¿Aw=‹hz?}=‹X›; e @PO)IÍ?N;swKNO;s9 r ;xI™wh,]Jhzj™¿N;WO)@Xw©O;swk@J»W=‹@JXPD
·ßw¡O@P;>9i9‹I™Xk@J@PjCX39‹=ºMs@f=iw[]P;W¿AwKNO@JX3w©^A@@JXX@P?A]J@fhs¼ ^N;sw @›jC@P;W? ^A@P? @X;PI,w©^N;sw$hz?A@w@JXwk=<?A»
Xkw©O;sw@J»\I™=‹X›jChzO@@ã*@J]Jw= e @,hzO[jChzO@]JhAj™¿NO@P^A@P?Ar X= e @Cw©r ^N;W?};\?AhWw©r^A@POJD r
g%hzOj™;>9i9‹IWlu]PO=‹w@PO)=ihA? zëC× ]PO)=iwk@PO=‹hz? =Ƽ[¼ÚhAO@ e @PO)I"¿NOhW»zO;\
j Clu@ e @PO)I"w@JXwfX©KA=‹w@
w^N;sw[X©;sw=‹XÅE@JX ;s9‹Xh™X©;swk=iX)ÅE@JX xD
·‰? `W` ;\?A¸ `Pq l*Z;W¿N¿AX;W?A¸ÁFH@JINKNMs@PO=º?Ww©O)hz¸EKA]J@J¸Ý;}?A@ ¼;WjC=‹9‹I"h>¼3¸E;sw©; Eh Y¥VN;sXk@J¸"w@JXw
]P;>X@X@J9‹@J]Jw=‹hz?éXw©O;swk@J»W=‹@JXPl&;\?A¸"X@ e @POk;s9]JhA?Ww©O)hW9 Eh r Y¥VN;sX@J¸¹;\r ?A¸"¸E;sw©; Eh r Y¥VN;sX@J¸"r]PO)=iwk@PO=º; r @PO)@
]JhAj™¿N;WO@J¸™KAX=º?A»w^A@¡XKNVAX©KNj™¿Aw=‹hz?™O)@J9<;>w=‹hz?uD4FH@$Å&OjC9‹I™VN@J9‹=‹@ e @J¸ªw©^N;sw4w©^A=‹X3O@J9º;swk=ihA?C=º?A¸N=i]P;>w@J¸
w^N;sw[w©^A@X©KNVAXKNjC@J¸¹O@J9º;swk=ihA?AX r @PO@9‹@JXX›»\hzhA¸}w©^N;W?ªw©^A@,X©KNVAX©KNjC=º?A»}O@J9º;sw=‹hz?AXPD
Öh r @ e @POJls=‹w r ;>X39º;sw@PO$O@J]JhW»z?A!= J@J¸}w©^N;sw$X©KNVAX©KNj™¿Awk=ihA?^N;s¸ª¸N@Å&?A=‹w@¸N@ÅE]J=‹@P?A]J=‹@JX r ^A@P?ªKAX@J¸
wkh"]Jhzj™¿N;\O@wk@JXw=º?A»ÁXw©O;swk@J»W=‹@JXPD R ^A@ªÅ&OXw¸N@ÅE]J=‹@P?A]JI r ;sX™O@J]JhW»A?A="J@J¸à;\?A¸ ¿GhW=º?Ww@J¸ÇhAKAw6V\I
Z;W¿N¿AX›;W?A¸}FH@JINKNMs@PO$=º? `W` lz?N;WjC@J9‹I}w©^N;>w¡j™;W?\I™w@JXkw=º?A»™]PO=‹w@PO=º;™;WO)@1?AhWw[]Jhzjd¿N;WO;WVA9‹@KAX=º?A»
XKNVAX©KNj™¿Aw=‹hz?ul%=º?}w©^A@X@P?AXk@w©^N;sw?A@J=‹w©^A@POX©KNVAX©KNjC@JXfw©^A@hWw^A@POJD
Q ?Á@ e @P?ÞjChzO)@™X@PO=‹hzKAXC9‹=ºjC=‹w©;sw=‹hz?Þ;sXXhA]J=º;sw@J¸ =‹w©^ÜX©KNVAX©KNj™¿Aw=‹hz?Ü=‹XCw©^N;sw=‹wC]P;W?HVN@}jC=‹XY
9‹@P;s¸N=º?A»ED[·”w[=‹X[@P;sXI™wkh]JhzjC@KN¿ r =‹w©^d@J¾L;\j™¿A9‹@JXhs¼*r w@JXw=º?A»CXw©Ok;sw@J»W=‹@JX[X©KA]J^™w©^N;>#w 3XKNVAX©KNjC@JX
¼;WKA9‹VNwXPKAl ww^A^A=‹@P9‹O@@™w@J;WXOw[@CX©wKA@J=‹Xww@JXX©KAw©=‹^Nw;s@Jw3XXw;s^Nw;s=‹wX¼”I%X©;s w=‹X¼”lz$I w^A@1PjCluw©hA^AO@d@›¸NX©KN@Pjd¿N¿N;WhW?AXk¸N@J=º¸ ?A»™r X@Pw©;WOMs;>@PwOf@J»WXIWw©OklW;s¸Nwh™@J»W?AIWhWl%w[w©@J^N¾N;s¿NwfhW@JXk¾L@1¿G;WhW?\XI@
¼;WKA9‹wXPD r R ^A@"¿NOhzVA9‹@Pj ;\O=‹X@JXVN@J]P;\KAX@"w©^A@PO)@";WO@ªw¥IN¿A=‹]P;s9‹9‹Iàj™;W?\IH¸N=ÆãÏ@PO)@P?Ww™wk@JXwCX©KA=‹w@JXw^N;sw
X;sw=‹X¼”Ié;λW= e @P?ÁXwO;sw@J»WIÁ;W?A¸Þ»W@P?A@PO;s9‹9‹IHw©^A@PO@d=iXC9‹=‹ww9‹@}hzO?AhûzKA=‹¸E;W?A]J@";sXwkh r ^A=‹]_^Ühz?A@™wh
]J^AhAhWX@WD R ^A@PO@¼”hzO@WläIWhzKHjd;PIÁVN@™9ºKA]JMWI r ^A@P?ÁX@J9‹@J]Jw=º?A»Áw©^A@™w@JXkwX©KA=‹w@™¼”hzO C;W?A¸ÞKN?A9<KA]JM\I
r¼”hz^A&O @P?™X@J¸N9‹hz@J@J]JXw=º?A;C»ªVNw©@J^Awwk@@PO4Ð hzwVd@JXhsw[¼:X©KNKA?A=‹w]J@Wh lAe hz@PO)O$=<?A=‹w»6j™¼ß;W;xKAIC9‹w@ Xe @Pw©?}^N;WVN?ª@f¸Nw©hA^N@J;sX›w[w©w©^A^A@}@ªÑÑ©?N?N;s;sw©w©KNKNOOk;s;s9‹9‹ÓCÓww@J@JXXww[X©X©KAKA=‹=‹ww@@w©wk^Nh;sXw@J9‹hA@J?A]J@w
r hzF²KA9‹¸}=‹w©^ÎX@Jw©9‹@J^A]J=‹wfX1w¿Nh™OhAX©VA;>9iw@P=‹jX¼Ú'I =º?ÁJjCD =º?A¸*)l (hzKNO9º;x*I n =º?\w©OhA¸EKA]J@J¸Hw©^A@¿Gh @POO@J9º;sw=‹hz?uD Q ]PO)=iwk@PO=‹hz?}=‹X
X;s=‹¸w'h +W×Pè”× ,Pèu;¼ß;>=i9ºKNO@=Ƽ¡×xØP×x.Ù -w@JXw3Xk@Jw¡w^N;sw3X©;>w=‹XÅE@JX[w©^N;sw3]PO)=iwk@PrO=‹hz?ª]Jhz?\w©;s=º?AX;W?™=º?N¿NKAww^N;sw
]P;\KAX@J
X Âwhª¼;s=‹9”l;W?A¸Hw^A@PO@C=iXC;swf9i@P;>Xwhz?A@Cw@JXkwX@JwX©;sw=‹X¼”IA=<?A»Ãw©^A@C]PO=‹w@PO=‹hz?ü”hzO CD R ^A@P?ul
]PO)=iwk@PO=‹hz'? [=iXf;sw[9i@P;>Xw;s0X /L2ç 14×P4Ù 3576z;sX]PO=‹w@PO=‹hz'? =Ƽ¼”hzO4@ e @POIÍ¿NO)hW»zO;W8
j ClN=Æ9¼ ¸N@Jw@J]JwkX7;
¼;s=‹9ºKNO@=º? ClNw©^A@P?}Xkh™¸Nhz@J:X PD
Q 9‹w©^AhzKA»z^ w©^A@"=º?\w@P?\w}hs¼1w^A=iX"O)@J9<;>w=‹hz? r ;sXªwhÝ;s¸N¸EO)@JXXXKNVAX©KNj™¿Aw=‹hz?uåyX}¸N@ÅE]J=‹@P?A]J=‹@JXPlw^A@
¿Gh @POfO@J9º;sw=‹hz?ÃXwk=i9‹94^N;sX @P;\Mz?A@JXXk@JXPD›·‰?¹¿N;\Ow=‹]PKA9º;WOJluw©^A@C=º?A]Jhzj™¿N;WOk;WVA=‹9i=‹wI¹¿NO)hzVA9‹@PjO@Pj™;s=º?AX
Xk=<?Ar ]J@Áj™;W?\IÝ]PO)=iwk@PO=º;Ç;WO@}r Xw=‹9‹9f=<?A]JhAj™¿N;WO;WVA9‹@ÁKN?A¸N@PO™w©^A@Á¿Nh r @PO™O@J9º;sw=‹hz?uD²·? ;s¸N¸N=‹w=‹hz?ulw^A@
¿Gh @POO)@J9<;>w=‹hz?Á¸NhA@JX?AhWw@P?\w=ºO@J9‹IÁ@J9i=ºjC=º?N;swk@}w©^A@CX=‹w©KN;sw=‹hz?Á=º? ^A=i]J^Üw©^A@ÁÑ @P;WMs@POÓ}O@J9º;sw=‹hz?
@J¾N¿Nr h\X@JX$¼ß;WKA9‹wX r ^A=‹9‹@w©^A@™ÑXwOhz?A»W@POÓhA?A@¸Nhz@JX?AhWwxD Ê ?A@¿NOhzVA9‹@Pr j=‹X[w©^N;sw4w©^Ar @›¿Gh r @PO$O@J9º;sw=‹hz?
=‹XVN;sX@J¸Áhz?Îw©^A@¸N@Å&?A=‹w=‹hz?Áh>¼1ѸN@Jwk@J]Jw=º?A»WÓ";,¼;s=‹9<KNO)@ r ^A=‹]_^Ã=‹X; e @PO)I}¸N@Pj™;W?A¸N=º?A»}hz?A@WD·³0¼ =‹X;sw9‹@P;sXw;sX›¿Gh r @PO¥¼ßKA9;>XxlNw©^A@PO)@j™;xIªXw=‹9‹9•VG@¼;s=‹9ºKNO@JXw©^N;sw r =‹9i94jChzO)@hs¼Úwk@P?"VN@,@J¾L¿GhWX@J¸
V\'I w^N;W'? @ e @P?ªw©^AhAKA»z^}?A@J=‹w©^A@POf]PO=‹w@PO=‹hz?θN@Jw@J]JwXw©^A@Pj =<?Îw©^A@f¼”hzOj™;s9uX@P?AXk@WD
·ßw1jd;PI};s9‹Xh}^N;W¿N¿N@P?Ãw©^N;>w Ä]Jhz?\w©;s=º?AX¼ß;\KA9iwkX1VNKAw?A@J=‹w©^A@PO ›?Ahz0O f¸N@Jw@J]JwX;W?WIª¼;s=‹9ºKNO@JX
VG@J]P;WKAX@ªhs¼¡w^A@™Xw©O=º?A»W@P?\wO)@JÔLKA=ºO@PjC@P?\wXChs¼[w©^A@?AhWw=‹hz?éhs¼¸N@Jw@J]Jw=‹hz?uD Q X,¸N=‹X]PKAXX@J¸ÇO@J9º;sw= e @
wkh}w©^A@CX©KNVAX©KNj™¿Aw=‹hz?ÜO@J9º;sw=‹hz?ul4jChWXwfw@JXwXk@J9i@J]Jwk=ihA?H]PO=‹w@PO)=<;θNh"?AhWwO@JÔNKA=ºO@™w©^A@™Xk@J9i@J]Jwk=ihA?Áhs¼
2
X¿N@J]J=ÆÅE]"w@JXkw™]P;sX@JXPl:XhH;Á]PO=‹w@PO=‹hz? r =‹9‹9›VG@"X©;swk=iX)ÅE@J¸àVWIÇj™;W?\IH¸N=Æã*@PO@P?Wwdw@JXwCX@JwXPl:XhzjC@ªhs¼
rÈA=º^A?A=i]J]J@,^ w©r^A=‹=iX9‹9f=‹X=º?Aw©]J^A9<@KA¸N]P@Á;sX=º@W?NlA¿N=‹wKAw=‹X}X›¿Gw©^NhW;>XXw=ºVA¼9‹;s@=‹9”w©l ^Nr ;>w¡^A=‹w9‹@¹^A@›h\ww©@J^AXk@Pw¡OXXk@Jrw=‹X9‹@J9›9‹@J?A]JhWwwd@J¸}=<?A¼”]Jhz9ºO:KA¸Nw©^A@Ý@ ;\?W@PIÞ;WMs=º?N@P¿NO$KA]PwOX=‹w@PwO^N=‹hz;sw,? ¼ß;s=‹=‹9‹9”9 D
r
@J¾N¿Nh\X@jChAO@¼;WKA9‹wXfw©^N;W?ªw©^A@hA?A@X@J9‹@J]Jw@J¸Ã¼ÚhzO$w©^A@,Xw©OhA?A»W@PO$hz?A@WD r
c @POk^N;W¿AXw©^A@jCh\Xw=ºj™¿NhAOw©;W?\w¸N@ÅE]J=‹@P?A]JI"=‹Xfw©^N;sww©^A@PO)@=iX?Ah}O@JÔLKA=ºO@Pj6@P?Wwfw©^N;sw[w©^A@¼ß;WKA9‹wX
KN?A]Jh e @PO)@J¸ V\I ;W?A¸ CVN@ªw©^A@ªX©;WjC@WD R ^A@PO@¼ÚhAO@Wl CjC=‹»z^Ww,¸N@Jw@J]Jw™?AhWw©^A=º?A»HVNKAwCw©O= e =º;s9
¼;WKA9‹wX r ^A=i9‹@ ¸N@Jw@J]JwX]P;>w©;sXw©O)hz¿N^A=‹]f¼ß;WKA9‹wXxD
Ê ?A]J@Á;s»z;s=º?ul[;W?Ç;swwk@Pj™¿Aw r ;>Xj™;s¸N@}whH;s¸N¸EO)@JXXw^A@ r @P;\Mz?A@JXXk@JX;sXXhA]J=º;sw@J¸ r =‹w©^ VNhWw^
w^A@™X©KNVAX©KNj™¿Awk=ihA?Ý;W?A¸Ç¿Nh r @POO)@J9<;>w=‹hz?AXPD}·?ÞZ[@¼”@PO@P?A]J*@ ` läFH@JILKNM>@POJl-FH@J=‹XXPl4;W?A¸Ç֛;Wj69i@Jw
=º?\w©OhA¸EKA]J@J¸²w©^A@ [8 RR 8$Z O)@J9<;>w=‹hz?uD R ^A@JIÞÅ&OXw™¸N@Å&?A@J¸²w©^A@Á?AhWw=‹hz?Çh>¼;Áwk@JXw™]P;sX@ÁVN@J=º?A»
Ù× Aì’Ù× +}VWIÇ;Á]PO=‹w@PO=‹hz? whHw@JXkw6;Ü¿NOhW»zO;\j Cl$=Ƽ1@ e @POIÝwk@JXw™X@JwCw©^N;swdX©;sw=‹XÅE@J%X jCKAXw
=º?A]J9ºKA¸N@Hw©^N;>wwk@JXw™]P;sX@WD R ^A@P?ul[]PO=‹w@PO)=ihA? ™=‹X w^N;W?Þ]PO=‹w@PO=‹hz? d=Ƽ¼ÚhzO6@ e @POI
¿NO)hW»zO;Wj Cl[=Ƽ;W?\IÁ¼;s=‹9<KNO)@Y]P;WKAX=º?A»à=º?N¿NKAwÁÙ¥× Aì³Ù¥× +"V\I Pl$=‹XÍ;s9‹Xh Ù¥× Aì³Ù¥× +"V\I _D R ^A@JI
X^Ah r @J¸}w©^N;>wPÕ
á ©â á !"$# ©â á %'&
()%*&%*+,.-/0.12(%*â
R ^A@JIÍ;s9‹Xhª¿NOh e @J¸}w©^N;sww^A@]Jhz? e @POX@¸N=‹¸¹?AhWwf^AhW9‹¸*D¡·ßww©^A@PO@¼”hzO@f¼”hW9‹9‹h r X›w©^N;>w¡w^A@JX@w©^NO)@J@
O)@J9<;>w=‹hz?AX1;\O@1;>9i9-¸N=‹Xw=º?A]JwO@J9º;sw=‹hz?AXPD
Q »z;s=º? w©^A@¹?A@ r 9‹I\Y¸N@Å&?A@J¸ O)@J9<;>w=‹hz? w©^N;sw r ;sX™¸N@JXk=i»A?A@J¸UwhHXh\9 e @¹w^A@¹¿NO@ e =‹hzKAX9‹IWY¸N@Å&?A@J¸
O)@J9<;>w=‹hz?AXPåu¿NOhzVA9‹@PjCXPl*^N;s¸Ã=‹wXh r ?}¿NOhzVA9‹@PjCXPD Q X1VG@¼ÚhAO@Wluw©^A@=º?A]Jhzjd¿N;WO;WVA=‹9‹=‹w¥IH¿NOhAVA9i@Pj^N;>¸
?Ah\w7VG@J@P?}Xh\9 e @J¸*lL;\?A¸ e @POIC¼”@ r ]PO=‹w@PO=º;™;s]Jw©KN;>9i9‹IHÙ× Aì’Ù×[w©^A@fX@J9‹@J]Jw=‹hz?}h>¼X©¿N@J]J=ÆÅE],w@JXw[]P;sX@JXPD
R ^A=iXfjC@P;W?AXw©^N;>w¡w^A@X@Jwhs¼*¼;s=‹9ºKNO@Y]P;WKAX=º?A»}=º?N¿NKAwXÙ× Aì’Ù×+V\I;C]PO=‹w@PO=‹hz? =i9‹9-wIL¿A=‹]P;s9‹9‹I"VN@
@Pjd¿Aw¥IWlG@ e @P?ªw©^AhzKA»z^ ]Jhz?\w©;s=º?AX[¼;WKA9‹wXPD[·”w=‹X;s9‹Xh e @POIª¸N4= 3]PKA9‹wwhCX©^Ah r w©^Nr ;swhz?A@]PO=‹w@PO=‹hz?
=‹X"[8 RR 83Z w©^N;\?};W?AhWw©^A@PO$¸N=ºO@J]Jw9‹IWD Ê ¼Úw@P?ªw^A@›@P;sXk=i@JXkwhzO$hz?A9‹I r ;xICwhCX©^Ah r w©^A=‹X=‹XwhX^Ah r
w^N;sww^A@¡XKNVAX©KNj™¿Aw=‹hz?™O)@J9<;>w=‹hz?™^AhW9‹¸NXPlA;W?A¸™^A@P?A]J@›VWI,w©^A@›;WVGh e @3w©^A@JhAO@Pj}lsw©^N;sw4w^A5@ [8 RR 83Z
;\?A¸"¿Nh r @POO@J9º;sw=‹hz?AX^AhW9‹¸"whAhED
ÈAh @X@J@Cw©^N;>w1;s9‹w©^AhAKA»z^}X@ e @PO;s9ä¼ÚhzOkj™;s9 ;xIzXfhs¼3]Jhzjd¿N;WO=º?A»Xkhs¼Úw ;WO@wk@JXw=º?A»Xkw©O;sw@J»\=i@JX
^N; e @VGr @J@P?Á¿NOhz¿Nh\X@J¸H;W?A¸¹KAX@J¸Ãwh™¸Nhªw©^A@]JhArj™¿N;WO=‹Xhz?uluO@ E@J]Jw=‹hz?Ã=º?A¸Nr =‹]P;sw@JXw©^N;>ww©^A@JI}¸Nhz?uåyw
O)@P;s9‹9iIÁw@J9‹9[KAX r ^N;sw r @Wåy¸Á9‹=<M>@w©^A@Pj wkh}w@J9‹93KAX;WVGhzKAww©^A@O@J9º;swk= e @™@ã*@J]Jw= e @P?A@JXXh>¼¡¸N=Æã*@PO@P?Ww
Xkw©O;sw@J»\=i@JXxD
R ^A@PO@[=iX[;W?AhWw©^A@PO r ;xIhs¼&?AhWwk=i]J=º?A»Cw©^N;sw-w©^A@;WVGh e @Y]J=iwk@J¸™wIL¿G@JX4hs¼&]Jhzjd¿N;WO=‹Xhz?CO@J9º;sw=‹hz?AX:¼ß;>9i9
X^AhzOwfhs¼¡=‹¸N@P;s9”l4;W?A¸Áw©^A=‹X^A@J9º¿N@J¸ÇKAX¼”hA]PKAXhzKNO;sww@P?\w=‹hz?Ã=º?H;ª¸N=Æã*@PO@P?Ww¸N=ºO@J]Jwk=ihA?uD76[hz?AX=‹¸N@PO
w^A@3¼”hW9‹9‹h r =º?A»X=ºj™¿A9‹@f@J¾L;Wjd¿A9i@WD T @J0w ²VN@›;¿NOh\»zO;Wj r =‹w©^,¸Nhzj™;s=º7? 8:9<; b l ` l q l p ly>½ =zD Q XX©KNj6@
w^A@PO@=‹X›hz?A9‹I}hz?A@f¼;s=‹9ºKNO@Y]P;WKAX=º?A»}=º?N¿NKAwf=<?Îw©^A@¸NhAj™;s=º?ulE?N;WjC@J9‹I b D
Q XX©KNj6@w©^N;>w O@JÔNKA=<O)@JXw©^A@ªX@J9‹@J]Jw=‹hz? hs¼›hz?A@ªw@JXwC]P;sX@d¼Ohzj(w©^A@}X©KNVG¸Nhzj™;s=º?? ; b l ` l q =
;\?A¸"hz?A@Cw@JXw]P;sX@¼Ohzj w©^A@,X©KNVN¸Nhzjd;s=º@? ; p lyA½ =zl r ^A=‹9i@ ,O@JÔNKA=<O)@JXw©^A@X@J9‹@J]Jw=‹hz?Ãhs¼3hA?A@w@JXw
]P;>X@,¼ßOhAj w©^A@CX©KNVN¸Nhzjd;s=ºB? ; b l ` l q =C;W?A¸Áhz?A@™w@JXw]P;>X@,¼ßOhAjêw©^A@dX©KNVN¸Nhzjd;s=ºC? ; b l p lyA½ =zD R ^A@P?
Xk=i¾Üw@JXwX@JwX,X©;sw=‹X¼”IÁ]PO=‹w@PO=‹hz? J7Õ ; b l p =zl ; b lyA½ =zl ; ` l p =zl ; ` lyA½ =zl ; q l p =zl*;W?AD¸ ; q lyA½ =Aluhs¼ r ^A=‹]_^
w r hEluEá ; b l p =;\?AF¸ ; b lyA½ =sâJlWhzO7hz?A@Yw©^A=ºO¸"@J¾N¿Nh\X@w©^A@f¼;WKA9‹wPD3m=<?A@Cw@JXkw¡Xk@JwXX©;swk=iX)¼ÚIª]PO=‹w@PO=‹hz? PÕ
; b l b =zl>; b l p =zl; b ly½A=AlA; ` l b =zl; ` l p =zl; ` ly½A=AlA; q l b =zl; q l p =zlz;W?A¸G; q ly½>=zlWhs¼
^A=‹]J^ªÅ e @,@J¾L¿GhWX@w^A@
¼;WKA9‹wPlAhzO$jChzO@w^N;W?™hA?A@Y¥^N;s9Ƽ•hs¼*w©^A@¿Nh\XX=ºVA9‹@w@JXw$X@JwXPD R ^A@PO)@¼ÚhzO)@Wl 3r XKNVAX©KNjC@JX VNKAw¡w^A@
/uwk@JÙ¥X7ç w›IH Xk@J‘w›ì 6‹ì³Xè @J-9‹@Jw©]J^Nw;s@Jwf¸Þ;™VWwI @JXkw›JXD @JwfR X^A@J@™9‹@JO]J@Pw;s@JX¸ÝhA?}KAXkw©=<^N?A;s» wf w©^A =‹rX=‹^N9i94;W¿N@J¾N¿G¿N@P?Ah\X@J@™¸ ;C¼;s;WX›KAw9‹w^N;s=‹Xw ^Ab =il%»Aw©^A^A@P@COfhzw©?A^N9‹;WI"?}=º?Nw^N¿N;sKAw[w¼”whz^NO›;s; w
¼;s=‹9‹@J¸*l4hA]J]PKNOO@J¸Ç=º?ÇVNhWw^Áhs¼ xåyX,X©KNVN¸Nhzjd;s=º?AXPl¡VNKAw r ;sX=º?Þr hz?A9‹IHhz?A@ªhs¼ _åyX,X©KNVN¸NhAj™;s=º?AXPD
R ^A@PO@¼ÚhAO@ b ]JhzKA9‹¸"VG@X@J9‹@J]Jw@J¸";sX[w©^A@O@P¿NO@JX@P?\w©;sw= e @fhs¼@J=‹w©^A@PO7hzO3VGhWw©^ªhs¼ åyX$X©KNVN¸NhAj™;s=º?AXPl
VNKAwf;sXw©^A@O@P¿NO)@JX@P?Ww;sw= e @hs¼4hz?A9‹I}hz?A@hs¼ JåyXX©KNVG¸Nhzj™;s=º?AXPD
3
#&_Ç*fk#%&2 !3#**!3#
R ^A@hzVAX@PO e ;sw=‹hz?ª¸N@JX]PO=ºVG@J¸é;>w¡w^A@@P?A¸"hs¼w^A@¿NO@ e =‹hzKAXfX@J]Jw=‹hz?ª9‹@J¸Ãg&O;W?NM\9*;W?A¸"FÜ@JILKNMs@PO$wh
]JhA?AX=‹¸N@PO*¸N@Å&?A=º?A»O@J9º;sw=‹hz?AX-w©^N;sw r hAKA9i¸C;s¸N¸EO@JXX-¿NOhzVA9‹@PjCX-hs¼Lw^A=iX4?N;sw©KNO)@WDÈA@ e @PO;>9zO@JX@P;WO)]_^A@POX
^N;>¸¿NO@ e =ihAKAX9‹IÍKAX@J¸};¿NO)hzVN;WVA=‹9‹=iXkw=‹]jC@P;sXKNO@ wh;>XX@JXX$w©^A@›;WVA=‹9‹=‹w¥Iªhs¼;wk@JXw=º?A»;W¿N¿NO)hz;s]J^
wkhKN?A]Jh e @POä¼ß;WKA9‹wX[;W?A¸C¸N@Jw@POjC=º?A@ r ^A@Jw©^A@PO:hz?A@[]PO=‹w@PO=‹hz? r ;>X•jChAO@[@ãÏ@J]Jwk= e @›;sw-Å&?A¸N=º?A»,¼ß;WKA9‹wX
w^N;W?";W?Ah\w©^A@POJlN=º?A]J9ºKA¸N=º?A» ½Ll a l ` ½ D·?"Z7@¼Ú@PO@P?A]J@ lNg&Ok;W?NMW94;W?A¸ÃFH@JILKNM>@PO=º?\w©OhA¸EKA]J@J¸¹w^A@
]Jh e @PO)X¡;W?A¸}KN?A= e @POX©;s9‹9‹I}]Jh e @POX[O@J9º;sw=‹hz?AX;W?A¸"KAX@J¸ ;sX; r ;xIChs¼•;sXkX@JXX=º?A» r ^A@Jw©^A@PO$w@JXwk=<?A»
Xkw©O;sw@J»\=i@JXCO@J9º;sw@J¸àV\IHw©^A@JX@}O@J9º;sw=‹hz?AX @PO)@»zKN;\O;W?\w@J@J¸HwhHVN@"j6hzO@™@ã*@J]Jw= e @";sw,¸N@Jw@J]Jw=º?A»
¼;WKA9‹wXPD r ;sX¼ÚhzOkj™;s9‹9‹I¹¸N@Å&?A@J¸é¼ÚhzOf¿NrOhW»AO;Wj r ^AhWX@CX©KNVG¸Nhzj™;s=º?AXC;WO@ ; 8'
8% 8'=zl
X¿N@J]J=ÆÅE]P;sw=‹hz? Ç;W?A¸}w@JXkwX@J9‹@J]Jw=‹hz?}]PO)=iwk@PO=‹hz? Â;sX$¼ÚhW9‹9‹h r XPÕ4Ë@P?Ah\w=º?A»™w©^A@X!= J@h>¼•X©KNVG¸Nhzj™;s=º?
8•V\
I lL;\?A¸"9‹@Jww=º?A» •VG@w©^A@?AKNjCVN@POhs¼*¼;s=‹9<KNO)@Y]P;WKAX=º?A»}=º?N¿NKAwX=º? 8lGw©^A@P?
á 3â 9 ` á ` â Q XX©KNj6=<?A»w^A@3=º?A¸N@P¿N@P?A¸N@P?\w3X@J9‹@J]Jw=‹hz?,hs¼EhA?A@3w@JXw-]P;sX@:¼ßO)hzj²@P;s]J^X©KNVG¸Nhzj™;s=º?CKAX=º?A»;KN?A=Ƽ”hzOj
¸N=‹XwO=ºVNKAw=‹hz?u!l =‹Xw^A@¿NOhzVN;\VA=i9‹=‹wI}w©^N;sw;Cw@JXkwX©KA=‹w@ r =i9‹9-@J¾L¿GhWX@;sw9i@P;>Xwhz?A@¼ß;WKA9‹wPD
guO;W?NM\9&;W?A¸}FÜ@JILKNMs@PO:¼”hzOj™;>9i9‹Iª¸N@Å&?A@J¸}w©^A@]Jh e @POX[O@J9º;sw=‹hz?};sX$¼”hW9‹9ih r XxÕ T @Jw ¡;W?A¸ VN@
]PO)=iwk@PO=º;Nlz;W?A¸d9i@Jw"$#%[á $â-¸N@P?AhWw@w©^A@f?Ahz?A@Pj™¿AwIjCKA9‹w=‹X@Jw[hs¼&XKNVN¸Nhzj™;>=<?AX$¼Ohzj r ^A=‹]J^Cw@JXw
]P;>X@JX;WO@fX@J9‹@J]Jw@J¸"whCX©;>w=‹X¼ÚId]PO=‹w@PO=‹hz'? ¼”hzO[¿NOhW»zO;\j Ä;W?A¸}X©¿G@J]J=ÆÅE]P;sw=‹hz&? D ,çWØx×PÙ #
¼”hzO ')(+*-,/.=Ƽ3¼”hzOf@ e @PO)I"X©KNVG¸Nhzj™;s=ºC? 8102"$# % Wá 33âw©^A@PO@™=‹X;ª]Jh\9i9‹@J]Jw=‹hzD? ; 8'
458*=™hs¼
XKNVN¸Nhzj™;>=<?AXVG@J9ihA?A»W=º?A»™w6h "+# % >á 33âäX©KA]_^dw©^N;sw 8 8794:78 9 8ÃD zæ%ì’Øx×PÙ H 6 6!-
,çWØP×xÙ R =Ƽ4^A@J¼”hzIO$X©@ ^Ae h @POI"@J¸C¿N=<O? hW»A O ;Wlsj}w©^Nl\;sX©w3¿N@J;]J?A=ÆÅEKN]PjC;swVN=‹@PhzO-?Áhs¿N¼ ;s=ºOC@J9‹9Æá Y¥MA?A$h âJl ?C ]PO=‹]Jwh @Pe O=º@P;O0X ;\O@[O¼”@Jhz9º;sOwá@J¸™VW3ICâ‘Dw©^A@[]Jh e @POX4O@J9º;xY
wk=ihA?ulWVNKAw4w©^N;sr w*@ e @P?,=Ƽ ]Jh e @POX -¼”hzO3á r 3â‘lP=‹w4=‹X3r ¿NhWXkX=ºVA9i@7¼ÚhzO;Âá .$â=<>Âá 4.33âJD
R ^A@JI}X©^Ah r @J¸Ãw©^N;sww^A=iXXkhzOwhs¼3=º? e @POX=‹hz?Á^N;W¿N¿G@P?AX r ^A@P?";dX©KNVG¸Nhzj™;s=º?Ãhs¼3w©^A@,]Jh e @PO=º?A»]PO=ÆY
wk@PO=‹hz?ª=‹X1KAX@J¸ÃwhC]Jh e @POjChzO)@w©^N;W?ªhz?A@X©KNVG¸Nhzj™;s=º?Îhs¼•w^A@]Jh e @PO@J¸}]PO=‹w@PO=‹hz?uD
R ^A=iX9i@J¸}guO;W?NM\9*;W?A¸}FH@JINKNMs@PO$whC¸N@Å&?A@;C?A@ O@J9º;sw=‹hz?ulAw©^A@¿NO)hz¿N@PO9‹Iª]Jh e @POXO@J9º;sw=‹hz?ulN=º?
Z7@¼Ú@PO@P?A]J@ D R h}XhW9 e @ªw©^A@¿NOhzVA9‹@Pj(hzVAX@PO e @J¸Ár ¼”hzOfw©^A@™]Jh e @POXO)@J9<;>w=‹hz?ul-w©^A=‹X6?A@ r O@J9º;sw=‹hz?
O)@JÔLKA=ºO@JXfw©^N;sw[w©^A=‹Xf]P;W?uåyw›^N ;W¿N¿G@P?uD3 g%hzOj™;>9i9‹I r @^N; e @WÕ
T @J?w "$# % >á 33â 9 ; 8 445 8 @ =zls;W?A¸ "+# % Wá $â 9 ;.8 458 =zD )/&Ùç /L×x.Ù 6!-,çWØP×xÙ 3JçWAÙ ')(+*-,/.=Ƽ3w©^A@PO@=‹X;™jCKA9‹w=ÆYX@Jw
D C 45 5 C E3F 445 C 445 C E5G
XKA]_^ªw©^N;>w B =‹X›;CX©KNV\Y¥jCKA9‹w=ÆYX@Jwhs¼?"$# % ­á 3â[;W?A¸
D C 747 5 C E3F
DD
C 747 / C E5G
·‰?\¼ÚhAOj™;s9‹9‹ICw©^A=‹X¡X;PIAX4w©^N;sw4=Ƽ 3 ¿NOhz¿G@PO9‹I™]Jh e @POX $ w©^A@P?6@P;s]_^6hs¼ På X4X©KNVN¸Nhzjd;s=º?AX¡]P;\?™VN@
Ñk]Jh e @PO@J¸NÓVWI 4X©KNVN¸NhAj™;s=º?AX1á³@J¾N¿NO@JXXk@J¸;sX3;KN?A=‹hz?6hs¼&XhAjC@ -X©KNVN¸Nhzjd;s=º?AX©âJD3·‰?™;s¸N¸N=‹w=‹hz?ul
=‹wCjKAXkwVN@™¸Nhz?A@d=<?ÜX©KA]J^H; r ;xI"w©^N;sw?AhA?A@™hs¼ P åyXX©KNVN¸NhAj™;s=º?AXChz]J]PKNOXCjChzO@Chs¼”w@P?Ã=º?Hw^A@
]Jh e @PO)=<?A»Üw©^N;W?Ü=iwª¸NhA@JX™=º?H"+#9% l3w©^A@PO)@PVWIÇ¿NO@ e @P?\w=º?A»Hw©^A@}XhAOwChs¼1jC=‹X9‹@P;s¸N=º?A» e =i@ r hs¼1w^A@
]PO)=iwk@PO=º;NåyX@ã*@J]Jw= e @P?A@JXXfw©^N;sw r @fX©; r =º?}w^A@@P;WO9‹=‹@PO@J¾N;Wj™¿A9‹@WD
AæEì³ØP×xÙ 6 6!- u/ Ù¥ç5L/ ×PÙ6!-
, çWØP×xÙ 7 =v¼ä¼ÚhzO:@ e @POI¿NO)hW»zO;Wj Ä ;\?A¸™X©¿N@J]J=ÆÅE]P;swk=ihA?& l2¡ ¿NOhA¿\Y
@PO)9iI}]Jh e @PO)X ¼”hzOá 33 âJD
B
9
; 8
8
8
8
8
8
9
8
8
9
8
8
H
4
=
ß· w r ;sX¿NOh e @J¸Ã=<? w©^N;>w›=Ƽ 1¿NOhz¿G@PO9‹I"]Jh e @POX1¼ÚhzOf¿NOhW»AO;Wj c ;\?A¸¹X¿N@J]J=ÆÅE]P;sw=‹hz?HÈul
w^A@P? á 3â Âá 4.33âJD
R ^zKAX r @]P;W?ªX©;xI™=º?};,]Jhz?A]PO@Jw@ r ;xI™w©^N;>w¡]PO)=iwk@PO=‹hz?'[=iXjChzO)@›@ã*@J]Jw= e @;sw$Å&?A¸N=º?A»d¼ß;WKA9‹wX
w^N;W?Ç]PO=‹w@PO)=ihA? l$¼”hzOª;ÁX©¿N@J]J=ÆÅE]Ý¿NO)hW»zO;Wj CD (@P?A@PO;s9‹=!J=º?A»àw©^A=‹Xªw©^A@JhzO@PjVWIàKAXk=<?A»Çw^A@
KN?A= e @PO)X©;s9‹9‹IÝ¿NOhz¿G@PO9‹I¹]Jh e @PO)XO@J9º;sw=‹hz?Ãw©^A@JIÁX©^Ah @J¸¹w^N;sw›w^A@PO@ @PO)@6jd;W?WI @J9i9ÆY¥MA?Ah ?Áw@JXw
Xk@J9i@J]Jwk=ihA?ª]PO=‹w@PO=º;Cw©^N;sw r @PO@1O)@J9<;>w@J¸ÍV\I™w©^A@KN?A= re @POX©;>9i9‹I}¿NOhz¿G@PO9‹Ir ]Jh e @POX[O@J9º;sr w=‹hz?ulE;\?Ar¸Í^A@P?A]J@
w^A@JX@]PO=‹w@PO=º;d]JhzKA9‹¸"=º?";CXk@P?AX@VG@O;W?NM>@J¸*D
·‰?Ý;μ”hW9‹9‹h r Y¥KN¿Ç¿N;W¿N@PO l4g&O;\?NMW9[;W?A¸ÝFÜ@JILKNMs@POd?A@J¾zwC=º? e @JXw=‹»z;sw@J¸ r ^A@Jw©^A@PO6w©^A@PO@ r @PO)@
h\w©^A@PO;\¿N¿NOhz¿NO=º;sw@ r ;xIzX-hs¼&;sXkX@JXX=º?A»w©^A@$¼;WKA9‹wY¸N@Jw@J]Jw=º?A»;\VA=i9‹=‹wIChs¼&;]PO)=iwk@PO=‹hz?ulz;W?A¸Cw©^A@PO)@¼ÚhzO)@
]JhA?AX=‹¸N@PO@J¸ ªlw©^A@Ç× /L× ,Pè”× +Þæ Aë k×PÙÁç 3 3 H\ì 6!AÙ¥× +W×xè”.× ,xè”.× +\D Q »A;s=º?ul›9‹@Jwwk=<?A» "$# % á 33â 9
;.8 44 8 =zl;\?A¸ ;sXXKNjC=º?A»Ý=º?A¸N@P¿N@P?A¸N@P?\wHO;W?A¸Nhzj X@J9‹@J]Jw=‹hz?²hs¼hz?A@Ãw@JXw™]P;>X@}¼OhzjÒ@P;s]J^
XKNVN¸Nhzj™;>=<?uluKAX=º?A»};™KN?A=ƼÚhzOkj¸N=‹Xw©O=ºVNKAw=‹hz?ul r ;>X¡¸N@Å&?A@J¸ÁwhªVN@WÕ
Íá 32
â 9 guR;W?AO^A;W¸}@J?NI"X©M\¿G9W;s@J;W9‹]JX?Ah=vÅE¸]P¿NFH;>Ohw@J=‹e hzIN=i?KN¸NMs@J¸Á@PO-lA@Jw©¿N¾N^AO;Wh@Pj™?e @J¿A}¸9‹@Jw©á Xf^N;sw©^Nwu.;s=‹w-w3=i3X©X4^Aâ ;sh 9‹Xhf@J}¸"w©Oá KAw^N@4;sw©w^N;>=º?}w*3=Æw©â‘¼ ^AD @,Ï]P¿N;sO)Xhz@,¿N=<@P? O9‹I,^A]J=‹h ]_e ^ @PO)X XäKN¼ÚVAhAX©O*KN¿NjCOhW@J»zX Ok;Wj Pl
VNKAw +WçP׿EçWè*¿NOhA¿N@PO9‹I}]Jh e @PO0xlNw©^A=‹X=‹X?AhWr w›?A@J]J@JXX;WO=‹9‹I"w©^A@]P;sXk@WD r
R ^zKAXPlAVWI™KAX=º?A»Cw©^A@KN?A= e @POX©;s9‹9‹I}¿NOhz¿N@PO)9iId]Jh e @POX¡O@J9º;swk=ihA?ulzguO;W?NM\9E;W?A¸ªFH@JILKNM>@PO r @PO@›;WVA9‹@
wkh6Ok;W?NMCw@JXwk=<?A»d]PO=‹w@PO=º;™KAX=º?A»}VNhWw©^dw©^A@¿NOhAVN;WVA=‹9i=‹wI}hs¼¸N@Jwk@J]Jw=º?A»Í;sw[9‹@P;sXw[hz?A@f¼;WKA9‹w›;W?A¸}w^A@
@J¾N¿N@J]Jwk@J¸ ?AKNjCVN@POh>¼¡¼;WKA9‹wX,@J¾L¿GhWX@J¸*l4;W?A¸H¸N=‹¸ÞXh}¼”hzOOhzKA»A^A9iIÞ;ª¸Nh J@P? r @J9‹9ÆY¥Mz?Ah r ?Üw@JXwk=<?A»
]PO)=iwk@PO=º;ND
.)&[u# H
,-" #u#
Q 9‹w©^AhzKA»z^dw©^A@KN?A= e @POX;s9‹9iI}¿NOhz¿G@PO9‹I]Jh e @PO)X¡O@J9º;sw=‹hz?ª=‹Xw^A@1jCh\Xw¡?N;swKNO;s9&;\?A¸Í¿NOhAjC=‹X=º?A» r ;PI
h>¼G;sXkX@JXX=º?A»fw©^A@4@ã*@J]Jw= e @P?A@JXX-hs¼Lwk@JXw=º?A»›Xkw©O;sw@J»\=i@JX-¿NOhz¿Nh\X@J¸wh¸E;sw@Wlxw©^A@PO@3;WO@4Xkw=‹9i9N;f?zKNjCVN@PO
h>¼•9‹=ºjC=‹w©;sw=‹hz?AX;sXXkhz]J=º;sw@J¸ r =‹w©^};W?\IXKA]_^};W?N;>9iIAX=‹Xfw©^N;swX©^AhAKA9i¸ÁVN@CO@J]JhW»z?A!= J@J¸*D
Ê ?A@[=ºj™¿GhzOw©;W?\w¿NOhAVA9i@Pj w^N;sw r ;sX4?AhWw*]Jhz?AX=‹¸N@PO@J¸ª;WVNh e @$=iX-w©^N;sw4;s9‹9Ahs¼Lw^A@JX@O@J9º;sw=‹hz?AX r @PO)@
;\¿N¿A9i=‹@J¸ÃwhC]Jhzj™¿N;WO@f=‹¸N@P;s9‹!= J@J¸ e @POXk=ihA?AXhs¼w@JXkw=º?A»Xkw©O;sw@J»\=i@JX ^A=‹]_^Ã;WO@ e =ºOw©KN;s9‹9‹I"?A@ e @PO[KAX@J¸
=º?Þ¿NO;s]Jw=‹]J@WD}·?Ü;}X@P?AX@Wl-w©^N;>w=iX,w©^A@ª]_^NOhA?A=i]ª¿NOhzVA9‹@Pj ;sXXhA]Jr =º;sw@J¸ r =‹w©^¹¼ÚhzOkj™;s93;W¿N¿NOhA;s]_^A@JX
wkh™Xhs¼”w r ;\O@1¿NO)hz]J@JXXk@JXPD·[VN@J»z;W?Îw©^A=‹X›w;s9ºM}VWI}¸N=‹X]PKAXXk=<?A»"j,I}@J¾N¿N@PO=‹@P?A]J@ r =iw^}w@JXwk@POXX©;xIA=<?A»
w^N;sw3w©^A@JIª?A@ e @PO[X©; r ¼”hzOjd;s9EX©¿G@J]J=ÆÅE]P;sw=‹hz?AXf=<?}¿NOk;s]Jw=‹]J@WlN;W?A¸}w©^A@PO@¼”hzO@WlA?Ah6jd;sww@PO$^Ah r »WhAhA¸
;¼ÚhzOkj™;s9&;\¿N¿NOhz;s]J^ªwhCw@JXw=º?A»j6=i»A^Ww›;\¿N¿N@P;WO[wkhVN@WlN=‹w r ;sX?AhWwhs¼•=º?\w@PO@JXwwhCw©^A@PjÂ=Ƽ•=‹w r ;sX
¿NO)@J¸N=i]P;>w@J¸"hz?};¼ÚhzOkj™;s9uX©¿N@J]J=ÆÅE]P;swk=ihA? r ^A=i]J^}¸N=‹¸Á?AhWw›j™;swk]_^ªw©^A@J=ºOfO@P;s9‹=‹wIWD
ÈA=ºjC=‹9º;WOw¥IN¿N@JX,hs¼3=‹XX©KA@JXC;WO@™;sXXhA]J=º;sw@J¸ =‹w©^H;>9i94h>¼¡w©^A@C]Jhzj™¿N;\O=‹Xhz?ÁO@J9º;sw=‹hz?AX,w©^N;sw·¸N=‹XY
]PKAXkX@J¸";WVNh e @WD:gEhzO$@J¾N;Wj™¿A9‹@WlNhz?A@]JhzjdjChz?Ar9‹I]JhA?AX=‹¸N@PO@J¸Áw@JXw=º?A»™]PO=‹w@PO)=ihA?ª=iX%JÙ HWæ ,Jîè”×_è”ì³æWíAl
;>9iXkh"Mz?Ah ?Ã;s%X +W× ,P4ì _ì³çWæ ,©ç\ØP×PÙ HJíA×PD·?\¼”hzOjd;s9‹9iIWl-VNO;W?A]J^Ãw@JXw=º?A»"O@JÔNKA=ºO@JXw©^N;>w›X©'K 3ª]J=i@P?\ww@JXw
]P;>X@JX3VN@r =º?A]J9ºKA¸N@J¸}Xhw©^N;>w4@ e @POIVNOk;W?A]_^,hzO-hAKAw]JhzjC@[hs¼*;f¸N@J]J=iXk=ihA?™Xw;sw@PjC@P?\w=º?dw©^A@¿NOhW»zOk;Wj
KN?A¸N@PO7w@JXw›VG@@J¾z@PO]J=‹X@J¸Á;sw[9‹@P;sXwhz?A]J@WD$mhj6@P?Ww=‹hz?ª=‹X›jd;s¸N@hs¼•^Ah r w©^Ah\X@›wk@JXw[]P;sX@JX›;WO)@›wh
VG@X@J9‹@J]Jw@J¸*D[ÀÁhzO)@f¼ÚhzOkj™;s9‹9‹IWlE=º?}hAO¸N@PO[wh¿NO)h e @w©^A@XhAOwX[hs¼3w©^A@JhzO)@PjCXw©^N;sw r @Wå e @›¸N=‹X]PKAXkX@J¸
;\VNh e @Wl*=‹w r ;sX?A@J]J@JXX©;\OIÁwh¹j™;\Ms@™w©^A@¿NO)hz]J@JXX™jChAO@™¿NO@J]J=‹X@WD}gEhAOw©^A=‹X™O@P;sXhA?ul*w©^A@C¼”hzOjd;s9
¸N@Å&?A=‹w=‹hz?Þh>¼1VNO;W?A]J^Hwk@JXw=º?A»¹;sXkX©KNjC@JXCw©^N;sw,w©^A@¸NhAj™;s=º?H=‹X,Å&OXwC¸N= e =i¸N@J¸Ç=º?\whÁX©KNVN¸NhAj™;s=º?AXPl
@P;>]_^d]Jhz?\w©;s=º?A=º?A»@J¾N;s]Jw9‹I™w^AhWX@jC@PjCVN@POX[hs¼*w©^A@f=º?N¿NKAw¡¸NhAj™;s=º?ªw©^N;sw$]P;WKAX@;»W= e @P?ªVNO;W?A]J^™=º?
w^A@¿NOhW»zO;\j+wkhVN@,@J¾z@PO]J=‹X@J¸*D R ^A@P?Î=iwf=‹X›;sXXKNjC@J¸"w©^N;>w¡hA?A@@J9‹@PjC@P?\w›hs¼4@P;s]J^ªX©KNVN¸NhAj™;s=º?}=‹X
Ok;W?A¸NhzjC9‹IªX@J9‹@J]Jw@J¸HKAX=º?A»Í;™KN?A=Ƽ”hzOj¸N=‹XwO=ºVNKAw=‹hz?uD
5
ß· w3=‹X3¸N=43]PKA9‹wwkh=<jd;s»W=º?A@›w^N;sw4w©^A=‹X¡¿NOhA]J@JXX r hzKA9‹¸™@ e @PO$VN@[¼”hW9‹9‹h r @J¸ª=º?™¿NO;s]Jw=‹]J@WD c O;s»zjd;swY
=‹]P;s9‹9‹IWluVNO;W?A]J^™w@JXkw=º?A»wk@P?A¸NX¡wkhVN@KAXk@J¸ÍjChAO@›h>¼Úw@P?d;sX; r ;xIChs¼;sXX@JXkX=º?A»w^A@›w©^AhAOhzKA»z^N?A@JXX
h>¼¡w@JXwk=<?A»%l*O;sw©^A@POfw©^N;\?¹;>X;}VN;sX=‹Xf¼ÚhAOfX@J9‹@J]Jw=º?A»"w@JXw]P;>X@JXPD Q w@JXwk@POfw¥IN¿A=‹]P;s9‹9‹I¹Xk@J9i@J]JwkXw@JXw
]P;>X@JX›VN;sX@J¸Ãhz?}=º?\w©KA=‹w=‹hz?Á;W?A¸}@J¾N¿N@PO=‹@P?A]J@KN?\w=‹9w^A@JIÍVG@J9i=‹@ e @dw©^A@JI"^N; e @¸Nhz?A@;6]Jhzj™¿NO@P^A@P?\Y
Xk= e @ÐhzVuD R ^A@JI"jC=‹»z^\ww©^A@P?}KAX@C;™VNO;W?A]J^ª]Jh e @PO;s»W@wkhzhW9uw©^N;>w¡¸N@Jwk@POjC=º?A@JXw©^A@¿N@PO)]J@P?Ww©;>»W@hs¼
w^A@›VNO;W?A]J^A@JX3hs¼*w©^A@f¿NOhW»zO;\j w©^N;sw3^N; e @›VG@J@P?™@J¾A@PO]J=‹X@J¸}VWICw©^A@wk@JXw3X©KA=‹w@fw©^A@JIuå e @;sXXk@PjVA9‹@J¸
XkhC¼ß;\OJD4·³¼3w©^A@C¿N@PO]J@P?\w©;s»W@=‹X^A=‹»z^ulEw^A@w@JXw@POj6=i»A^Www^A@P?}X@J@ r ^A=‹]J^ÁVNO;W?A]J^A@JX›^N;s¸¹?Ah\w›VN@J@P?
]Jh e @PO)@J¸";W?A¸}w©OI™wkh™¸N@Jw@POjC=º?A@C;W?ª=º?N¿NKAw›w©^N;>w r hzKA9‹¸Ã]P;WKAX@@P;s]J^ªhs¼4w©^A@KN?A]Jh e @PO@J¸¹VNOk;W?A]_^A@JX
wkhÍVG@@J¾A@PO]J=‹X@J¸*DC·³¼3w©^A@™¿G@PO]J@P?Ww;s»W@ r ;sX›9‹h r l%w©^A@P?Ãw©^A@Cw@JXw@PO r hzKA9‹¸Á9i=ºMs@J9‹IÁ]Jhz?\w=º?zKA@dwhÍKAXk@
;>¸é^AhA]jC@Jw^Ahz¸NXhs¼[X@J9‹@J]Jw=º?A»"w@JXkw]P;sX@JX;W?A¸Áw©^A@P?HO)@P;sXX@JXXw^A@6VNOk;W?A]_^Ã]Jh e @PO;>»W@;s]J^A=‹@ e @J¸*l
=‹w@POk;sw=º?A»KN?Wwk=i9Aw©^A@¿N@PO)]J@P?Ww©;>»W@3hs¼&VNOk;W?A]_^A@JX4]Jh e @PO)@J¸@J¾A]J@J@J¸N@J¸;›¿NO)@JX]PO=ºVN@J¸™9‹@ e @J9NhAO*w©^A@$w@JXw@PO
VG@J9‹=i@ e @J¸¹w^N;sww©^A@JI}^N;s¸"¸NhA?A@@P?AhzKA»z^uD
·Ú¼VNO;W?A]J^ w@JXw=º?A»Þ=iX}KAX@J¸²=º? w©^N;sw}j™;W?N?A@POJl[w©^A@P? r @¹MA?Ah r æEç\è³îzì’æ\í 1-î HWè JçP×xØP×xٙ;WVNhzKAw
^Ah r =‹wX@ã*@J]Jw= e @P?A@JXX]Jhzj™¿N;WO@JXwhChWw©^A@PO$w@JXw=º?A»™Xkw©O;sw@J»\=i@JXxlLVG@J]P;WKAX@ r @¸N=‹¸¹?AhWw;sXkX@JXXè³î HWè
e @POX=‹hz?Ühs¼1VNO;W?A]J^Üw@JXw=º?A»El r @};sXX@JXkX@J¸ ;\?H@P?\w=ºO@J9‹IݸN=Æã*@PO@P?\w™w@JXwk=<?A»HjC@Jw^Ahz¸*D R ^A@ªX©;Wj6@
=‹Xw©OkKA@¼”hzO;s9‹9-hs¼3w©^A@Cw@JXw=º?A»ªXw©O;>w@J»W=‹@JX›]JhAj™¿N;WO@J¸ÎY¡w©^A@JI r @PO@C?AhWw›w^A@Ù× H26NXw©O;>w@J»W=‹@JX›w^N;sw
wk@JXw@POXKAX@,wh™X@J9‹@J]Jwfw@JXw[]P;sX@JXPlGw©^A@JI r @PO@=‹¸N@P;s9‹!= J@J¸ e @PO)X=‹hz?AXPD
Q ?AhWw©^A@PO:9‹=<j6=iw;sw=‹hz?dhs¼*w©^A@ hzOM¸N@JX]PO=ºVN@J¸";WVGh e @=‹X3w©^N;>w3w©^A@PO@=iX?AhC¿NOh e =‹X=‹hz?,¼”hzO$^zKNj™;\?
e ;WO=º;WVA=‹9‹=‹w¥IWDf83;s]J^}wk@JXw@PO[]Jhzj6@Jr Xwh™w©^A@,w©;WVA9‹@ r =iw^}w©^A@J=ºOh r ?ªX@Jw›h>¼•@J¾N¿N@PO=‹@P?A]J@JXPlu@J¾N¿N@PO)w=‹X@JXPl
;\?A¸é;>]JÔLKA=ºO@J¸H=º?\w©KA=‹w=‹hz?ul;\?A¸¹Xkhw h™¸N=Æã*@PO@P?Wwwk@JXw@POXKAX=º?A»"@J¾N;s]Jw9‹I"w^A@X;WjC@;\¿N¿NOhz;s]J^}wh
wk@JXw›;d»W= e @P?ÃXhs¼”w r ;WO)@›XIAXw@Pj r =‹9‹94r »W@P?A@PO;s9‹9‹I"Xk@J9i@J]Jw¸N=Æã*@PO@P?\wX@JwXh>¼3w@JXwf]P;sX@JXPD R ^A=‹X›=‹X™æEç\è
VG@J]P;WKAX@fhs¼*w©^A@ e ;WO=º;WVA=‹9‹=iwIª¸EKA@›wkhO;W?A¸NhAjÄX@J9‹@J]Jw=‹hz?6Y•=‹w$=iXVG@J]P;WKAX@fhs¼*=<?A¸N= e =‹¸EKN;s9‹= J@J¸H^zKNj™;\?
VG@P^N; e =‹hzO[;W?A¸™w^A@›9º;sw=‹w©KA¸N@¿NOh e =i¸N@J¸ª=º?™w^A@›X@J9‹@J]Jw=‹hz?ªh>¼Ï@J9‹@PjC@P?\wX[hs¼;XKNVN¸Nhzj™;>=<?uD$Öh r ]P;\?
rKAXk@,=<?A]J»ªhz¸N¸N=Æ=Ƽ”ã*I"@Pw©O@P^A?W=‹XwVNw@J@PX^Nw; =º?Ae »=‹hzOfjCX@Jhªw^Aw©hz^N¸N;sX©w Û r @,]P;W?}X;PI"j6@P;W?A=º?A»s¼ßKA94w^A=<?A»\X;WVNhzKAwfw©^A@,@ãÏ@J]Jwk= e @P?A@JXXhs¼
Q ¸N=ÆãÏ@PO)@P?WwM\=º?A¸Hhs¼¡=‹XXKA@=‹XCO@J9º;sw@J¸Áwh}w©^A@™;W¿N¿NOhA¿NO=º;sw@P?A@JXXhs¼O@J9‹Iz=º?A»Ãhz?Ãw©^A@™jC@P;sX©KNO@JX
;\?AhW;Ww©?A^A¸@POJÄD3m;>@JX7=‹w©;C^AVN@POf;sXkhs=iX$¼4w©¼”hz^AO:@JX¼Ú@C@J@JjC9‹=º?A@P»™;sX©]JKNhzO?\@JÅEX¸N¸N@P=vã*?\w@POw©@P^N?\;>ww3=º;shzw?A@JX@f;sw@Jw›X;>w=º9i?A94»CVN@JXww©Ok;s@Jw@P@J?}»WIC^A=‹¸N»zhA^Ã@JX7]Jhz;C?AVGX@J@JÔNwwKA@P@POä?AÐ¥]JhA@,V™¼ß;Ww©KA^N9‹;\w? X
;\?A¸"w©O= e =º;s9-¼ß;\KA9iwkXPD R ^A@PO)@¼ÚhzO)@WlE=Ƽ¡]PO)=iwk@PO=‹hz? _l%w©^A@C]PO=‹w@PO=‹hz?Ãw©r ^N;>w›¿NOhz¿G@PO9‹I"]Jh e @POXf]PO=‹w@PO=‹hz?
¿NO)PhWl$»z@JO¾L;W¿Gj hWX@J;sX™X[wwO@J= e Xwk=º;s@J9[¸"¼KA;WXKA=º9‹?Aw» X r ^A=i¸N9‹@ hA@JX›™?AhW@Jwf¾N¿NOh\@P;sX@J9‹9‹XI}]P=<?A;>w©¸N;s=‹]PXw©;sO)wkhz@¿Nw^A^N=‹]™;sw[¼;W=iwfKA=‹9‹X›wXPjCl$w©hz^AO)@@P?Þ¸N@Pw©¿N^A@P@ª?A¼¸E;s;W]JVAw™9‹@™w©^Nw©;>^Nw;\?ªw^A=i@w
r
r¼;WhzKAKA9‹w9‹X¸^N@P; Oe @@fKNVN?A@J]J@Ph ?de =v@P¼*O=‹@Jw¡¸™^NKA;>X¸=º?AVN
» @J@P?d_lWw;W@JX?Aw¸C@J¸ªw©^AKA@PXO)=º@ ?A» ;sX3P;fD R^A=‹^A»z=‹^AX[@P=‹O4X39‹w©=ºMsOKA@J9‹@=º^A=<?dhzhAX©¸}¿A=‹hsw¼E@@Jh>¾N¼Ï¿NwhW^AXk@[=<?A¼ß»;>]J¼ßw4;\w©KA^N9iwk;sXPw3lWjCX=º?Ahz]JO)@@
w^A@hz?Ar @JXIWhzK r @PO@@J¾N¿Nh\X=º?A» r @PO@hs¼49‹=‹ww9‹@C]Jr hz?AX@JÔNKA@P?A]J@WD
Q ?A¸ ^N;sw;WVNhzKAww©^A@]JhWXkw¡h>¼•¸NhW=º?A»ªw©^A@w@JXwk=<?A»ª=‹wX@J9Ƽ_Û c @PO^N;W¿A:X +WçP× ¡¸Nhª;CXhzjC@ ^N;sw
VG@Jww@POfÐr hzVÜhs¼›w@JXkw=º?A»Hw©^N;W? xl3;W?A¸Ç@J¾N¿Nh\X@JXjChzO)@™¼;WKA9‹wX™hs¼f@JÔLKA= e ;>9i@P?\w}X@ e @PO)=iwIHw^N;Wr? ¸NhA@JXPBD [KAw r ^N;swd=v¼ C]JhWXwXdhzO¸N@POX™h>¼1j™;s»z?A=‹w©KA¸N@ÁjChzO@ªwhHKAX@Ãw©^N;W? Û ·ßX™w©^A@";s¸N¸N@J¸
VG@P?A@ÅEw r hzO)w©^™w^A@;s¸N¸N@J¸}]JhWXkw©Û
c @POk^N;W¿AXw©^A@"VA=‹»W»\@JXw™¿NOhzVA9‹@Pj(=iXdw©^N;sw ^A@P? @};WO@ª¸Nhz?A@wk@JXw=º?A»Áw©^A@Xkhs¼Úw ;WO@™KAX=º?A»Ý;
e»\= @P?C]PO=‹w@PO=‹hz?ulA@ e @P?C=Ƽ=‹w[O@P;s9‹9‹I=‹X[w©^A@›VG@JXw3r h>¼&w©^Ar@hA?A@JX¡VN@J=º?A»C]Jhz?AX=‹¸N@PO@J¸*l r ^N;sw4r ¸Nh r @MA?Ah r
;\VNhzKAww©^A@d¸N@P¿N@P?A¸E;WVA=‹9‹=ºwIÝh>¼¡w©^A@™wk@JXw@J¸ÁXhs¼”w r ;\O@PÛ R ^N;sw¿NOhzVA9‹@Pj ^N;sX?AhWwCVN@J@P?H;>¸N¸EO@JXX@J¸
;>w7;>9i94V\Iw©^A=‹X r hzOkMED Q O@w©^A@PO@,]Jhz?A]PO@Jw@ r ;xIzX[w©^N;>w r @]P;W?ª¸N@Jw@POjC=º?A@,w©^N;sw=º?\¼”hzOj™;swk=ihA?NÛ
0 [* Ï)&!4* Ç 0 *24k
ÈAhd¼;WO @^N; e @¸N=‹X]PKAXXk@J¸"¼”hzOjd;s9;W?N;s9‹IAw=‹] ;xIzXhs¼•]JhAj™¿N;WO=º?A»ªXhs¼”w ;WO)@›w@JXkw=º?A»]PO=‹w@PO)=<;GD›·”w
=‹X;s9‹Xhr ¿GhWXX=ºVA9‹@Cwh™]Jhzj™¿N;\O@w©^A@JX@,]PO=‹w@PO=º;™@Pr jd¿A=<O)=i]P;>9i9‹IWl-;W?A¸*lN=º?ª¼;s]JwPr lNw^A@PO@;WO@,w r hC¸N=‹Xw=º?A]Jw
6
XkhzOwXChs¼@Pj™¿A=ºO=‹]P;s9fXw©KA¸N=‹@JXw^N;swC]JhzKA9‹¸ VN@Á¿N@PO‰¼”hzOj6@J¸*D R ^A@ªÅ&OXwd=<? e hW9 e @JXª¸NhW=º?A»Ý;ü”hzOjd;s9
Xk]J=i@P?\w=ÆÅE]C@J¾L¿G@PO=ºjC@P?\wPl r ^A=i9‹@,w©^A@X@J]JhA?A¸}=<? e hW9 e @JX;,¼;WO$9‹@JXX¼”hzOjd;s9u]P;sX@Xw©KA¸NIWD
g%hzOj™;>9N@J¾L¿G@PO=ºjC@P?WwkX›»W@P?A@POk;s9‹9iIª=º? e hW9 e @1;\¿N¿A9iIA=º?A»w^A@›w@J]J^N?A=‹ÔLKA@CKN?A¸N@PO[]Jhz?AX=‹¸N@PO;>w=‹hz?ªwh;
XKNVAXw©;W?\w=º;s94¿Nhz¿NKA9º;sw=‹hz?Ühs¼3Xh>¼Úw r ;WO@,XIzXkw@PjCX;W?A¸ÁhzVAX@PO e =º?A» e ;\O=‹hzKAX]_^N;\O;s]Jw@PO=‹Xwk=i]JX,hs¼3w©^A=‹X
;\¿N¿A9i=‹]P;swk=ihA?ul›XKA]_^²;sX™]Jh\XwPl[@ã*@J]Jw= e @P?A@JXXPlhzOd@P;sX@"h>¼KAX@WD gEhzOjd;s9@J¾N¿N@PO=ºjC@P?\wX"^N; e @"w^A@
;>¸ e ;W?\w©;s»W@w^N;sw›I\hzKª]P;W?}@J¾Aw©O;\¿NhW9º;sw@¼ßO)hzjÂw©^A@CO@JX©KA9‹wXhzVAX@PO e @J¸"¸EKNO=º?A»ªw©^A@@J¾N¿N@PO)=<j6@P?Wwwh
h\w©^A@PO$XIzXkw@PjCXPlNVN@J]P;\KAX@w©^A@X©KNVAÐ@J]JwX[hs¼w^A@@J¾L¿G@PO=ºjC@P?Ww r @PO)@X©KN¿N¿NhWXk@J¸N9iI"O)@P¿NO@JX@P?\w©;sw= e @fhs¼
w^A@9º;WO»W@PO[¿NhA¿NKA9<;>w=‹hz? r ^A=‹]_^d=‹X[IWhzKNO3KN?A= e @PO)X@WD [KAw[w©OKA@X]J=‹@P?\w=ÆÅE]@J¾L¿G@PO=ºjC@P?\wX›;WO@fO;WO@J9‹IC=Ƽ
@ e @PO-¸Nhz?A@[=<?6w©^A=‹X3;WO@P;X=º?A]J@=‹w r hAKA9i¸™O@JÔNKA=ºO@w©^N;>ww©^A@PO)@7VG@›;]J9i@P;\O3KN?A¸N@POXw;W?A¸N=º?A»hs¼ r ^N;>w=‹X
j6@P;W?WwV\IÍ;éÑwIL¿A=‹]P;s9‹Ó¿NOh\»zO;Wj]Jhz?\w©;s=º?A=º?A»ÝÑkw¥IN¿A=‹]P;s9‹ÓC¼;WKA9‹wXPlE;W?A¸ @»W@P?A@POk;s9‹9iI}¸Nhª?AhWw^N; e @
w^N;sw4XhzOw4h>¼Ï=º?\¼”hzOj™;>w=‹hz?ulW@ e @P?6=<?d9‹=ºjC=‹w@J¸}¸Nhzj™;s=º?AX$X©KA]_^d;sX¡jC@J¸N=‹]P;sr 9%hzO4wk@J9i@J]JhAj™jCKN?A=i]P;>w=‹hz?AXPD
·‰?C]Jhz?\w©O;sXkw4whw©^A=‹XPlA;]P;sXk@›XwKA¸NI@J¾N;WjC=º?A@JX[w©^A@›;\¿N¿A9i=‹]P;swk=ihA?ªhs¼Ï;w@JXw=º?A»CXw©O;>w@J»WIhzO:]_^N;WO¥Y
;>]Jw@PO=‹Xw=‹]JXhs¼4w@JXw=º?A»ªXw©O;>w@J»W=‹@JX¼”hzOhz?A@hAO›;,¼”@ r X©¿N@J]J=ÆÅE]™XIAXw@Pj6XPD Q 9‹w©^AhzKA»z^Î=iw=‹Xf¸N4= 3]PKA9‹w
wkh¸Nh}w©^A@Pj r @J9‹9Úl-;W?A¸Á@J¾L¿G@P?AX= e @™whª¸N@JX=‹»z?H;\?A¸é¿G@PO‰¼”hzOj w©^A@Pj}lu=‹w=‹X?Ahz?A@Jw©^A@J9‹@JXX»\@P?A@PO;s9‹9‹I
jCKA]J^Ýj6hzO@C¼”@P;sX=ºVA9‹@}wh¹¿G@PO‰¼”hzOj(]P;WO@¼KA9‹9iIÞ]PO;x¼”w@J¸H]P;>X@Xkw©KA¸N=‹@JXw^N;W?Á¼”hzOjd;s94@J¾L¿G@PO=ºjC@P?\wXPD
Éf?\¼”hzOw©KN?N;swk@J9iIWl4^Ah r @ e @POJlu=º?ÞjChWXw]P;sXk@JX=‹w=‹XC@J=‹w©^A@PO¸N4= 3]PKA9‹w™hzOf=ºj™¿GhWXX=ºVA9‹@"wkh}@J¾zw©Ok;W¿NhW9º;swk@
¼OhzjÄO)@JX©KA9‹wX[hzVAX@PO e @J¸d¼”hzO-w©^A@fX©¿N@J]J=ÆÅE]XIAXw@PjCX$w©^N;sw$X@PO e @J¸;>X3X©KNVAÐ@J]JwX$hs¼*w©^A@›]P;>X@Xw©KA¸NICwh
XkIzXwk@PjCX[=<?ª»\@P?A@PO;s9uX=º?A]J@w©^A@X©KNVAÐ@J]JwX r @PO@fw¥IN¿A=‹]P;s9‹9‹IHæEçWè%X@J9‹@J]Jw@J¸¹VG@J]P;WKAX@w©^A@JI r @PO@f@JX©¿N@Y
]J=º;s9‹9‹IO@P¿NO)@JX@P?Ww;sw= e @WlzVNKAw3Ok;sw©^A@PO4VN@J]P;\KAX@w©^A@PO@ r @PO)@7¿NO)hWÐ@J]Jw3¿N@POXhA?N?A@J9 r ^Ah r @PO@ r =‹9‹9‹=<?A»Cwh
¿N;\Ow=‹]J=º¿N;sw@C=º?"w^A@Xkw©KA¸NIWlEhAO›j™;\?N;s»W@PjC@P?\w›XKN¿N¿NhzOwxlEhzOfVN@J]P;\KAX@™w©^A@C¿NOhWÐ@J]Jw›=‹wXk@J9v¼[=º?A=iwk=<;>w@J¸
w^A@Xw©KA¸NIªwhCÅ&?A¸"hAKAw=º?\¼ÚhzOkj™;sw=‹hz?};WVGhzKAwè³îz×xì’Ù¿NO)hWÐ@J]JwPD
FU^A@P?øNhW=º?A»";ª]P;sX@CXwKA¸NI}¼”hzO›;ª9º;WO)»W@C=<?A¸EKAXkw©O=º;s93Xkhs¼Úw ;WO@XkIzXwk@Pj}lE=‹w,=iXh>¼Úw@P?Á?A@J]J@JXX;WOI
wkhÍëCç +W× 6Aw©^A@XIAXw@Pj r ^A=‹]J^}=º? e hW9 e @JX¸N@JX=‹»z?A=º?A»";,X=ºj™¿A9‹=ÆÅEr @J¸ e @POXk=ihA?ªhs¼w©^A@XIAXw@Pj r ^A=‹]_^ª=‹X
]J9‹hWXk@@P?AhzKA»z^dwh™O@P;s9‹=‹w¥Iªw©^N;sw$w©^A@hzVAX@PO e ;sw=‹hz?AXj™;>¸N@;WVNhzKAw[w©^A@jChA¸N@J9*;WO@ e ;s9‹=‹¸}¼”hzO$w©^A@f¼KA9i9
XkIzXwk@Pj}lNIW@JwXk=<jd¿A9i@C@P?AhzKA»A^}whVG@w©Ok;s]Jw©;WVA9‹@WD Ê KNO@J¾N¿N@PO=‹@P?A]J@^N;>X›VN@J@P?Ãw©^N;swfjChWXwXkhs¼Úw r ;WO@
wk@JXw@POX$Å&?A¸¹j6hz¸N@J9‹=º?A» e @POIª¸N4= 3]PKA9‹w›whd¸NhED4·?";>¸N¸N=iwk=ihA?ul r ^A@P?Îw©^A@]P;sX@Xkw©KA¸NI=‹Xf]Jhzj™¿A9‹@Jw@J¸
¼”hzO$w©^A@,X=ºj™¿A9‹=vÅE@J¸ÁXIAXw@PjÎlNIWhzKd¸Nhz?uåyw›?A@J]J@JXkX©;WO=‹9‹I"^N; e @;W?};s]J]PKNO;>w@¿A=‹]Jw©KNO@h>¼:^Ah r w©^A@O)@P;s9
XkIzXwk@Pj r =‹9‹9VN@P^N; e @WD
·‰?Ý;>¸N¸N=iwk=ihA?Þwh"w©^A@JXk@9‹=ºjC=‹w©;sw=‹hz?AXdhs¼]P;sX@ªXw©KA¸N=‹@JXPl4w©^A@PO)@Í;WO)@»W@P?A@POk;s9¡¿NOhAVA9i@Pj6Xw^N;sw;WO)@
Xk=<j6=i9º;WOfwkh™w©^AhWX@C;sXXhA]J=º;sw@J¸ r =‹w©^Ãw©^A@¼”hzOj™;>9Ï;\?N;s9‹Izw=‹]C]Jhzj™¿N;\O=‹Xhz?"O)@J9<;>w=‹hz?AXPDg%hzO[@J¾N;Wj™¿A9‹@Wl
]P;>X@›Xkw©KA¸N=‹@JX›j™;xI™;s9‹XhC=<? e hW9 e @fw©^A@KAX@hs¼*=‹¸N@P;s9‹!= J@J¸ r ;xIAX3hs¼KAX=º?A»™w©^A@f]PO=‹w@PO=‹hz?uD$·?};s¸N¸N=‹w=‹hz?
w^A@PO@j™;xI™?AhWw›VN@;\?WI¿NO)h e =‹X=‹hz?ªwh™;s]J]JhzKN?\w[¼”hzO4=º?A¸N= e =i¸EKN;>9º=!P@J¸ÝVG@P^N; e =‹hzOJD3·Ú¼•w^A@›]P;sXk@Xw©KA¸NI
=‹X$Ð)KAXkw=º?Ww@P?A¸N@J¸Áwh™;sXkX@JXXw©^A@,@ã*@J]Jw= e @P?A@JXXfhs¼•¸N=Æã*@PO@P?\ww@JXw]P;sX@X@J9‹@J]Jw=‹hz?ÃXw©Ok;sw@J»W=‹@JXPlNw^A@P?
]Jh\Xwj™;xIH?AhWw^N; e @VN@J@P?Þ;sXXk@JXX@J¸H¸EKNO=º?A»Áw©^A@™]P;>X@™Xw©KA¸NIH;W?A¸Ç?Ah"]Jh\XwY¥VN@P?A@ÅEw,Xw©KA¸NIÝjd;PI
^N; e @VG@J@P?"¿G@PO‰¼ÚhAOjC@J¸*D[ÈA=<j6=i9º;WO)9iIWluXk=<?A]J@Cw©^A@f¼;WKA9‹wfX@ e @PO=‹wI=‹Xf»W@P?A@PO;s9‹9‹I"?AhWw›;\?}=º?Wwk@J»zO;s9*¿N;WOw
h>¼&w©^A@wk@JXw3]P;sXk@¡Xk@J9i@J]Jwk=ihA?ª]PO=‹w@PO=º;NlW=‹w r hAKA9i¸}VN@fKN?zKAX©KN;>9E=Ƽ;]P;sX@Xw©KA¸NIC¸N@JX=‹»z?A@J¸ªwh]Jhzj™¿N;WO)@
w^A@¡@ã*@J]Jw= e @P?A@JXkX4hs¼E¸N=ÆãÏ@PO)@P?Ww4XwO;sw@J»W=‹@JX r hzKA9‹¸@ e @P?]JhA?AX=‹¸N@PO-w©^A=‹X4¸N=<j6@P?AX=‹hz?ulN;W?A¸,¼ÚhzOäX=ºjC=‹9º;WO
O)@P;sXhz?AXPlxw©^A@PO@$=‹X3?Ah1O@P;>Xhz?wkh›@J¾N¿N@J]Jw4w©^N;>w•;W?,;sXX@JXkX©jC@P?\w*hs¼Ew©^A@[h e @PO;s9‹9WXkw©;sw@4hs¼Ew^A@¡Xkhs¼Úw r ;WO@
r =i9‹[94KA^Nw,; e ]P@;sXVN@™@J@PX?ÃwKAj™¸N=i;s@J¸NX,@¸N;sh¹w^Nw; ^Ae @@™@PXk?Ahz¸"jChs@¼4Ow©@P^A;>@93]P¿N;shWXX@=‹wXk= w©e KA@ª¸N]JIW^ND ;WO;s]Jw@PO)=iXkw=‹]JXwhAhED R ^A@JIH]P;\?H¿NOh e =‹¸N@;
Ñ¿NOhzh>¼Ehs¼E]Jhz?A]J@P¿AwÓ ^A=‹]J^Cj™;xIVN@[X©'K 3]J=‹@P?\w4wh›@P?A]JhAKNO;s»W@¿NO;s]Jwk=iwk=ihA?A@POX4whfw©OIw©^A@[w@J]J^N?A=‹ÔLKA@
VG@J=º?A»}=<? e @JXwk=i»A;sw@J¸*lNr =º?}w^A@ÅE@J9‹¸*D·”wj™;xIVN@,]Jhz?AX=‹¸N@PO@J¸ÁwhAhVA=‹»Í;dO=‹X©Mªwh™w©O)IÍ;™?A@ r w@JXwk=<?A»
wk@J]_^N?A=‹ÔNKA@hzO$hWw©^A@PO$Xhs¼”w r ;\O@[¸N@ e @J9‹hz¿NjC@P?\wXw©O;>w@J»WIChz?ª;9º;WO)»W@1¿NO)hz¸EKA]Jw=‹hz?ªXkhs¼Úw r ;WO@f¿NOhWÐ@J]Jw
VG@J]P;WKAX@Chs¼3w=ºjC@™;W?A¸ÁO@J9‹=º;WVA=‹9i=‹wIH]Jhz?AXkw©O;s=º?\wXPD›Öh r @ e @POJlN=Ƽ3=‹w]P;W?"VG@CX©^Ah r ?}=º?H;C]P;>X@CXw©KA¸NI
w^N;swhWw©^A@POX=ºjC=‹9<;\O¿NO)hWÐ@J]JwX^N; e @™KAX@J¸Þw©^A@™w@J]J^N?A=‹ÔLKA@";\?A¸H»WhWwwk@P?¹VG@Jww@PO,O@JX©KA9‹wXCw©^N;W?Áw^A@
]PKNOkO@P?Wwk9iI\Y¥KAX@J¸¿NO)hz]J@JXXxlsw©^N;sw3jC=‹»z^\w•VG@X©'K 3]J=‹@P?\w3whf]Jhz? e =º?A]J@›jd;W?N;s»W@PjC@P?\w-hs¼Ew©^A@KAX@¼KA9<?A@JXkX
h>¼w©^A@?A@ r ;W¿N¿NOhz;s]J^uD Q ¸N¸N=‹w=‹hz?N;>9i9‹IWlu]P;sXk@Xw©KA¸N=‹@JX›]P;\?}¿NOh e =‹¸N@;W?ª@JXwk=<jd;sw@hs¼4w©^A@¸N4= 3]PKA9‹wI
h>¼1KAX=º?A»Hw©^A@ªw@JXwCX@J9‹@J]Jw=‹hz? ]PO=‹w@PO=‹hz?uD Ê ¼”w@P?Þ=‹wj™;xIÁX@J@Pj wkhé¿NO)hWÐ@J]Jw¿N@PO)Xhz?N?A@J9w©^N;>ww^A@
7
9‹@P;WOk?A=<?A»}]PKNO e @ r =‹9‹94VN@CwhAh™Xw@J@P¿Îwhj™;WM>@w©^A@;s¸NhA¿Aw=‹hz?}hs¼3w^A@?A@ r w@J]_^N?A=‹ÔNKA@ r hAOw©^ r ^A=‹9i@WD
$IHX^Ah =<?A»Á^Ah
hWw©^A@PO,¿NOhWÐ@J]JwXC^N; e @;s¸Nhz¿Aw@J¸Þw©^A@}KAX@™hs¼fw©^A@™]PO=‹w@PO=‹hz?ul$;W?A¸Ý=º?A]J9ºKA¸N=º?A» ;
¸N@JXk]PO=º¿Awr =‹hz?}hs¼4w©r ^A@@J¾N¿N@PO=‹@P?A]J@Chs¼4w@JXw@PO)XPlA=iwfjC=‹»z^WwfVN@¿GhWXX=ºVA9‹@CwhC]Jhz? e =º?A]J@;d¿NOhWÐ@J]Jw[whCw©OI
KAXk=<?A»ª=‹wwhAhED
Q ?AhWw©^A@POä=‹XX©KA@[w©^N;sw4j™;xIfX@PO e @[;sX•;fOhz;>¸EVA9ihA]JMwhw^A@7;>¸Nhz¿Aw=‹hz?h>¼&;›?A@ w@JXw-]P;sX@$X@J9‹@J]Jw=‹hz?
]PO)=iwk@PO=‹hz?™=‹X$w©^A@›¿N@PO)]J@J= e @J¸}hzO4;s]Jw©KN;s9N]Jh\Xw3hs¼*KAX=º?A»C=iwxD•8:Xw=ºj™;swk@JX3hs¼uw©^A=‹X¡]Jr h\Xw4]P;W?™VG@›@JXXk@P?Ww=º;s9
=º?Ã]Jhz? e =º?A]J=º?A»Hj™;W?N;s»\@PjC@P?Wwhs¼¡w©^A@C¿NO;s]Jw=‹]P;s9‹=‹wIÁhzO[¼”@P;sX=ºVA=‹9‹=‹w¥IÜhs¼¡KAX=º?A»}w©^A@CXw©O;>w@J»WIWD R ^zKAXPl
hA?A@¡wk@JXw4]P;sX@Xk@J9i@J]Jwk=ihA?™XwO;sw@J»WIjd;PIÅ&?A¸ `Pb j6hzO@$¼ß;\KA9iwkX4w©^N;W?C;W?AhWw©^A@PO‘lzVNKAw4=Ƽ*=iw$]JhWXwX4hA?A@
^AKN?A¸EO@J¸Áw=ºjC@JXjChzO@WlGhzO=‹wf=‹0X 3_× HWÙ.× +w©^N;sw=‹w =‹9‹9]Jh\Xw1jCKA]J^"jChAO@wh}KAX@WlEw^A@P?}=‹w1j6=i»A^WwVN@
¸N=‹X©j6=iXkX@J¸hAKAw3hs¼^N;W?A¸*D Q ]Jhzj™¿NO@P^A@P?AXk= e @›]P;sXkr @Xw©KA¸NICw©^N;sw$=º?A]J9<KA¸N@JXf;W?™;s]J]PKNO;>w@›;sXXk@JXX©jC@P?\w
h>¼Ï=‹wX[]JhWXkw3whCKAX@›hA?™hz?A@hzO[jChzO@›O)@P;s9&¿NOh\Ð¥@J]JwkX¡j™;xIVG@X©'K 3]J=‹@P?\w¡wkh r =º?ª;s]J]J@P¿Aw©;W?A]J@f¼”hzO4w^A@
Xkw©O;sw@J»\IWD
Ê ?A@ChWw^A@POKAX@¼ßKA93¿GhWw@P?\w=º;s93¿N;xIWhsãÝh>¼3¸NhW=º?A»¹;d9<;\O»W@™=º?A¸EKAXw©O)=<;>94]P;sX@CXw©KA¸NIÃwh}¸N@Jw@POjC=º?A@
w^A@"@ã*@J]Jw= e @P?A@JXXªhs¼;ÁXhs¼”w r ;\O@wk@JXw™X@J9‹@J]Jw=‹hz? ]PO=‹w@PO=‹hz?²O@J9º;swk@JXwhÞjChz¸N@J9‹=º?A»EDU·ßw=‹Xªhs¼Úwk@P?
¸N4= 3]PKA9‹wfwh™¸N@Jw@POkjC=º?A@;W?d@ã*@J]Jw= e @»zOk;W?zKA9º;WO)=iwIC¼”hzOj6hz¸N@J9‹=º?A»w^A@Xhs¼”w r ;WO)@WD*FU^A@P?ª=‹w›=‹X›?A@J]Y
@JXkX©;WOI™wkh6j6hz¸N@J9;,XIAXw@PjÎlL¿N;\Ow=‹]PKA9º;WO9‹I r ^A@P?ªw©^A@XIAXw@Pj=‹X9º;WO»\@Wlzw^A@w©;sX©MC]P;\?ªXhzjC@Jw=ºjC@JX
Xk@J@Pj h e @PO r ^A@J9ºjC=º?A»HwhH¿NO;>]Jw=‹w=‹hz?A@POXPDÞ·?Þw©^A@JX@}Xk=iwKN;sw=‹hz?AXPl[;Ã]P;sX@}Xw©KA¸NIÜw©^N;swC=º?A]J9<KA¸N@JX";
¸N@JXk]PO=º¿Aw=‹hz?Ãhs¼w©^A@,9i@ e @J9*hs¼4»zO;W?AKA9º;WO=‹wIÍ;sw r ^A=‹]_^Îw©^A@jChA¸N@J9i=º?A» r ;sX[¸Nhz?A@,]P;W?}VN@,@J¾zw©O)@PjC@J9‹I
^A@J9º¿\¼KA9”D
Ê KNO,¿N@POXkhz?N;s93@J¾N¿N@PO)=i@P?A]J@"^N;>XVN@J@P?Üw©^N;sw,9º;WO»W@™=º?A¸EKAXwO=º;s93]P;sXk@XwKA¸N=i@JXC;WO@™¸N4= 3]PKA9‹w;\?A¸
@J¾N¿N@P?AXk= e @›VNKAw e @POI e ;s9ºKN;WVA9‹@$¼”hzO*w^A@¡O@P;sXkhz?AX•j6@P?Ww=‹hz?A@J¸C;WVNh e @WlW;\?A¸w©^A@PO@¼”hzO@ r @J9i9 r hzOw©^fw^A@
wk=<j6@;W?A¸Ã@ãÏhAOwPD[FH@C^N; e @¿N@PO‰¼”hzOjC@J¸H;™?AKNjCVN@POfhs¼4]P;sX@,Xw©KA¸N=‹@JX=º?A]J9ºKA¸N=<?A»Áw©^Ah\X@¸N@JX]PO)=<VG@J¸
=º? ` l q l p l o l `Pb l `Pp ;W?A¸Á¼”hzKN?A¸Áw©^A@Pj wh"VN@d@J¾zw©O)@PjC@J9‹I¹^A@J9º¿\¼ßKA9$¼”hzOw©^A@O@P;sXkhz?AX›¸N=‹X]PKAXkX@J¸
;\VNh e @WD
24#u#
FÜ@^N; e @CXw©KA¸N=‹@J¸H; e ;WO=‹@JwI"hs¼¡¿NO)hz¿NhWXk@J¸ ;xIAX›hs¼3]JhAj™¿N;WO=º?A»ªXhs¼”w ;WO)@w@JXw=º?A»}]PO=‹w@PO=º;Nl*;\?A¸
¼”hzKN?A¸Áw©^N;swjd;W?WIÃhs¼¡w^A@¼”hzOjd;s9]JhAj™¿N;WO=‹r Xhz?ÁO@J9º;swk=ihA?AX^N;s¸H¿NOhs¼”hzr KN?A¸Ý¿NO)hzVA9‹@PjCX;sXkXhz]J=º;swk@J¸
rw^N=i;sw^}ww©w©^A^A@@Pj}9‹@PlG;sX@ we @P¿N?}Ohzw©VA^A9‹hA@PKAj™»z;>^ªw=‹w©]^A@J]JI}hzj™=º?A¿N=‹;\w=ºO;s=‹X9‹9ihzIH?";WO)¿N@J¿G9<;>@Pw;W=‹hzO@J? ¸Ãw;shX[VNw©@,^A@C=º?W¿Nw©KAOhz=‹w¿N= e @P@JO)9i9‹I}IH]JOh@Pe;sXk@PhzO)X›?N;WO@JVA9º9‹;s@WwD3=‹hzFÜ?u@l%X;W=º?AO»A]JKA@C@J=i¸ w
jd;s¸N@]Jhz?A]PO@Jw@ r ^N;sw[=‹w1j6@P;W?Ww7¼ÚhzO$hz?A@,]PO=‹w@PO=‹hz?Îwr hC¸Nh;™jChzO)@@ãÏ@J]Jwk= e @ÐhzVªhs¼4w@JXw=º?A»™w©^N;\?
;\?AhWw©^A@POJD4Öh r @ e @PO‘lz@ e @P?}w©^A=‹X›O@J9º;swk=ihA? r ;sX›?AhWw r =‹w©^AhAKAw›X@PO)=ihAKA0X &; r XPD
Ê ¼E]J@P?\w©O;>9W=ºj™¿NhzO)w©;W?A]J@ r ;sX*w©^A@:¼ß;s]Jw-w©^N;sw-;s9‹9Nhs¼Lw^A@3]PO=‹w@PO=º;fw©^N;>w r @PO@4]Jhzjd¿N;WO@J¸™VWIguO;W?NM\9
;\?A¸}FH@JILKNM>@PO @PO@=‹¸N@P;s9‹=!J@J¸ e @POXk=ihA?AXhs¼4w©^A@ ;PIª¿NO;s]Jw=‹w=‹hz?A@POX;s]Jw©KN;>9i9‹I}w@JXkwXhs¼”w ;\O@WDÈAhEl
@ e @P?w©^AhzKA»A^ r r @[Mz?Ah r ¿NO)@J]J=iXk@J9iIC^Ah r w©^A@JX@$=i¸N@P;>r 9i!= J@J¸™]PO)=iwk@PO=º;]Jhzjd¿N;WO@¡VN;>X@J¸hz?w^A@3r @J¾N¿N@J]Jw@J¸
?AKNjCVN@POhs¼4¼;WKA9‹wX›¸N@Jwk@J]Jw@J¸¹;W?A¸Áw©^A@C¿NOhzVN;WVA=‹9‹=‹wI"hs¼-Å&?A¸N=º?A»}¼;WKA9‹wXPl @;\O@?AhWw;WVA9‹@wkhXw;sw@
]JhA?A]J9<KAXk= e @J9iIÁ^Ah r w©^A@¿NO;s»Aj™;sw=‹]P;s9‹9‹I"KAX@J¸ e @POX=‹hz?AXhs¼4w©^A@JX@Xkw©O;sw@J»\r =i@JXXw©;s]JM™KN¿uD
Q 9‹XhElW?Ahz?A@hs¼Ew©^A@¿NOhz¿GhWX@J¸™]Jhzjd¿N;WO=‹Xhz?CO@J9º;sw=‹hz?AX4wkhzhzMw©^A@[]JhWXw-=º?Wwh;>]J]JhzKN?WwxD•·Ú¼ r @Mz?A@ r
w^N;sw3hz?A@f]PO=‹w@PO=‹hz? r ;sX[;,9i=‹wwk9i@VG@Jww@PO[;sw$Å&?A¸N=º?A»C¼;WKA9‹wX[w©^N;W?ª;W?AhWw©^A@PO$VNKAw¡w^N;sw[=iw[]JhWXkw¡j™;W?\I
wk=<j6@JX;sXCjKA]J^ul r hzKA9‹¸Hw©^A@}jChzO@C@ã*@J]Jw= e @ªXw©O;swk@J»WI"Xwk=i9‹9VN@ª;sww©O;>]Jw= e @™hzOf@ e @P?鼔@P;sX=ºVA9‹@wh
KAXk@PÛ R ^N;sw r hzKA9‹¸C9i=ºMs@J9‹I™¸N@P¿G@P?A¸Í^A@P; e =‹9iIChz?,w©^A@;W¿N¿A9‹=‹]P;sw=‹hz?d;W?A¸C=iwkX3O@J9‹=<;\VA=i9‹=‹wIÍO)@JÔLKA=ºO@PjC@P?\wXPD
Q ?A¸H=Ƽ]PO=‹w@PO=‹hz? r ;sX¸N@J@PjC@J¸ÇjChzO@C@ã*@J]Jw= e @™w©^N;\?"]PO)=iwk@PO=‹hz?*V\IÁXhzjC@™O@J9º;swk=ihA?ul•VNKAw
;>9i9-w©^A@f¼;WKA9‹wXfw©^N;sw r @PO@CVN@J=º?A»}¸N@Jw@J]Jw@J¸ÁVWI r @PO@wO= e =º;s9ä¼ß;\KA9iwkXPl&VNKAw ¼”hzKN?A¸¹¿NO)hs¼ÚhAKN?A¸
;\?A¸Í¿GhWw@P?\w=º;s9‹9iI}]P;>w©;sXw©O)hz¿N^A=‹][¼ß;\KA9iwkXPl r hAKA9i¸ r @fXw=‹9‹9u]Jhz?AX=‹¸N@PO0;jChAO@›@ã*@J]Jw= e @]PO)=iwk@PO=‹hz?NÛ
$I};s9‹9w^A@O@J9º;sw=‹hz?AX r @=º? e @JXw=‹»z;>w@J¸}w©^A@JI r hzKA9‹¸¹VG@]Jhz?AX=‹¸N@PO@J¸ÁXw©OhA?A»W@POJlAX=º?A]J@Cw©^A@PO@=‹X1?Ah
r ;xI™wh6¼ß;s]JwkhzO$=<?Îw©^A@X@ e @PO)=iwIªhzO[]Jhz?AXk@JÔLKA@P?A]J@,hs¼•w^A@f¼ß;WKA9‹wXxD
8
c @POk^N;W¿AX1j6hWXw=ºj™¿GhzOw©;W?\w=‹Xw©^N;sww©^A@PO@=‹X?Ahª=º?A¸N=i]P;>w=‹hz? r ^N;swkXhz@ e @PO[hs¼¡^Ah r ¸N@P¿N@P?A¸E;\VA9i@
w^A@¡Xkhs¼Úw r ;WO@ r =‹9‹9&VG@ r ^A@P?=‹w3^N;sX3VG@J@P?Cw©^AhzO)hzKA»z^A9‹Iw@JXw@J¸™;s]J]JhAO¸N=º?A»wh›XkhzjC@3]PO)=iwk@PO=‹hz?uD38 e @P?
MA?Ah r =º?A»w^N;sw›]PO)=iwk@PO=‹hz?›;s9 r ;PIAXf¸Nhz@JX;j6hzO@@ã*@J]Jw= e @fÐhzV}h>¼3w@JXw=º?A»ªw©^N;W?}]PO)=iwk@PO=‹hz?Pl
¸NhA@JX›?AhWw=<jd¿A9iIÃw©^N;sw0 ¸NhA@JX›;CíAçPç +7Ð¥hzVªh>¼•w@JXkw=º?A»ED
ÈAh ^N;>w¡;WO@fw©^A@f=ºj™¿A9‹=i]P;>w=‹hz?AX›h>¼•;s9‹9uw©^A=‹X©ÛÃg4=<O)XwPlAw©^A=‹X[=iXf;]P;>9i9%¼”hzO3?A@ w©^AhzKA»z^\w¡;W?A¸}jChzO)@
=ºj™¿GhzOr w©;\?WwPlA?A@ r w¥IN¿N@JX[hs¼-w©^AhzKA»z^\w3whCVN@¿NKAw[=º?Wwkh6;>ww©;s]JMW=º?A»,w©^A=‹X7¿NO)hzVA9‹@Pr j}D4FH@fX©; r w©^N;sw3w^A@
=º?A=‹w=º;s9[¿NOhz¿Nh\X©;s9‹X¼”hzOf]Jhzj™¿N;\O=‹Xhz?HO@J9º;swk=ihA?AXX@J@PjC@J¸ÞO@P;sXhz?N;\VA9i@ª;swÅ&O)Xw»W9º;W?A]J@Wl4VNKAww©KNO?A@J¸
hAKAw™whÝVG@ &; r @J¸àVN@J]P;WKAX@Ãw©^A@JIàO@P;s9‹9‹IǸN=‹¸U?AhWw¿NOhz¿G@PO9‹IÇ]P;W¿Aw©KNO@Ãw©^A@}@JXX@P?A]J@Áhs¼ r ^N;swd=iw
j6@P;W?AX[¼”hzO$hz?A@w@JXw=º?A»™Xkw©O;sw@J»\I™whVG@jChzO@@ã*@J]Jw= e @;sw7Å&?A¸N=<?A»d¼;WKA9‹wXw©^N;W?};\?AhWw©^A@POJD R ^A@P?
w^A@PO@ r ;sX[w©^A@,=<?AXk=i»A^Www©^N;>w›KAX=º?A»Í¿NO)hzVN;WVA=‹9‹=iXkw=‹]jC@P;sX©KNO)@JX r hzKA9‹¸¹VG@jChAO@;W¿N¿NOhz¿NO)=<;>w@Wl&;\?A¸
=º?d¼;s]Jw3w^A@JI HWÙ×jChzO@;W¿N¿NOhA¿NO=º;sw@WD [KAw¡w^A@PO@1;\O@›Xkw=‹9i9uX@PO)=ihAKA0X &; r XPD4·-¸Nh™?AhWw[X@J@1; r ;xIwh
;>¸N¸EO@JXXw©^A@¿NO)hzVA9‹@Pjw©^N;sw r @;\O@C]Jhzj™¿N;WO=º?A»}=‹¸N@P;s9‹=!J@J¸ e @PO)X=‹hz?AXhs¼w©^A@Cw@JXw=º?A»ÃXw©O;swk@J»W=‹@JXPD
·ßw›=‹X e @PO)I}¸N= 3ª]PKA9iw,whª=<jd;s»W=º?A@™^Ah r whd¼ÚhAOj™;s9‹!= J@ r ^N;sw=‹X=º?Á¿NO;s]Jw=‹]J@™; e @POI}=º?A¸N= e =‹¸EKN;s9º!= J@P¸
¿NO)hz]J@JXXxD
·;>9iXkh¹Xk@J@"; e @POIÁ=<jd¿NhzOw;W?Ww™Oh\9i@ª¼”hzO@Pj™¿A=ºO=‹]P;s9Xw©KA¸N=‹@JXPD R ^A@JIH]P;W?Üw@J9‹9›KAXCw©^A=º?A»WX™w^N;sw
;>9i9-w©^A@,w©^A@JhzO@PjCX=<?Ãw©^A@ r hzO9‹¸"]P;W?N?Ah\w›w@J9‹94KAXY^Ah r XhAjC@Jw©^A=º?A»ÍO)@P;s9‹9iI r hzOM\X=º?¹¿NOk;s]Jw=‹]J@WD·
Xk@J@›]Jhzjd¿N;WO=º?A»;W?A¸};sXXk@JXX=º?A»CXhs¼”w r ;WO)@¡wk@JXw=º?A»XwO;sw@J»W=‹@JX[;sX; e @POIC=ºj™¿GhzOw©;W?\w¡;\?A¸@JXXk@P?Ww=º;s9
¿NO)hzVA9‹@Pjêw©^N;>w›jCKAXwVN@XkhW9 e @J¸"=º?}hAO¸N@PO[wh™@J9‹@ e ;sw@Cw©^A@¿NO;s]Jwk=i]J@,hs¼4w@JXw=º?A»ED3·$w©^A=º?NMªw©^A@CVN@JXw
^AhA¿N@}¼”hzO™;ÜXhW9ºKAw=‹hz? r =‹9‹91VG@¹w^A@"]JhzjCVA=º?N;sw=‹hz? hs¼1]P;\O@¼ßKA9‹9‹Iàw^AhzKA»z^\w™hzKAw™w©^A@JhAOIWl[¸Nhz?A@¹V\I
¿G@Jhz¿A9‹@ ^AhÍKN?A¸N@PO)Xw©;W?A¸ÁVNhWw©^Îw©^A@JhzOI};W?A¸Á¿NO;s]Jw=‹]J@Wlu;s9‹hz?A» =iw^}]P;WO@¼KA9‹9‹I"w©^AhzKA»A^WwhAKAw›]P;sXk@
Xkw©KA¸N=‹@JXPD3r ·”w r =‹9‹9u=º? e h\9 e @1;»zO@P;sw$¸N@P;s9Ehs¼*w©^AhAKA»z^Wwxlz;»AO@P;sw3¸N@Pr;>9Ehs¼*=º?A»W@P?AKA=iwIWlE;\?A¸;»zO)@P;sw3¸N@P;s9
h>¼•@ã*hzOwxlzVNKAw^Ahz¿N@¼KA9‹9iIÃ=‹w r =‹9‹9•;s9‹9VG@ r hzOw^™w©^A@,w©OhzKNVA9‹@WD
Ä! P!:Ï!724!3#
` Qw©^AD @›Q›;seXkXO@J=‹wXJ@X©PjCOC@P;W?\?Aw3¸Çh>¼8w©Dä^A@BED*O@JFHX©KA@J9‹INw=ºKN?AMs»C@POJXDhs¼”wR ^A;W@ O)@WQ l KAIwhz jd ;swu=‹]Ù HW»\æ @P?A%@PçWOæ;sw,&=‹hzç ?Á3Jè 1h>¼›HWÙ9‹hz× ;s[¸HæWwíz@Jì³XkæEw××PX©ÙKAì³=‹æWwíz@JXlWÈA;\@P?A¿A¸ w
r
`PoWo lz¿N¿uD nW'b Y nN` ND
q Q(¡ÙD H Q›,xeè”ì O,=‹× w J@HWPæ O[+7;W?A ¸}/N8×PD\Ùì’BE×xDWæ FH,×P@Jl IN4KNhWMs9”@PD OJq DäNËl%@PmOhE= e D N=º?AlA» BzKNr ?Ahz@ OM\`P9‹o\hzo;sN¸NDX4¼”hzO$¿N@PO‰¼”hzOj™;\?A]J@›w@JXkw=º?A» ,&ç 3_è 1HWÙ×
p QVN;sD XQ›@J¸}e Ohz=‹?}w J@;\POCO]_;W^A?A=‹w¸Ç@J]J8wKNDäOBE@D*OFH@ e @J=i@ INKNXPMsD@POJ¡DÎ:ë À¹/&ì³@JÙwì O,=‹H ]J6X,uwkçh¹3_è ;s1XH\Xk@JÙ¥!×XX[w©æW^Aí @ª9‹N=ºMsç @JA9‹=<Ù©^Aæ hAH hA6‹l ¸à4hshW¼›9”DE¿N½EOlNh\mÐ¥@JhE]JDw,p X©lNKAÈA]J]J@P@J¿AXwPX D
r
`PoWoWo lz¿N¿uD `Po\n Y qN`Pp D
½ BEçWæDAFÄ,&ç Dz3JËè 1KNHWOkÙ;W!× ?¡;\æ\?Aíz¸Íì³æEÈu×AD ×P6Ùì’DNæ\mízlzw©ÈN;x¼”8•hWY XP`PD b Q á n ?dâJÕy@ ½ e pW;sa 9º
KN½W;s½sw=‹½Ehzls?ÎBzKAhs9‹¼•I O;\`P?AoW¸Na ½EhzjD w@JXw=º?A»ED I uÙ HWæ H ,xè”ì’çWæ wc @JD Xw(™=º?AD%»}g&OjC;W@J?Nw©M\^A93hA;W¸N?AXP¸HD 8 Du B% DuFHuÙ@JHWILæ KN M>H @P,xOJè”D ì’ç\Q æ ¼”hzçWOæ j™,&;>ç 9•3_;Wè 1?NHW;>Ù9iIA$× X[=‹XæWh>íA¼¡ì’æ%w©×©^A×x@,Ù©ì³¼æW;WíAKAlL9‹w¿N;>¸N»W@J@JwX@J]Jq\wbW=º?Aq »Á
LqN;W`xVAp =‹9ilA=‹wÀéIÁ;\hsOJ¼ D
`PoWoWp D
c uDÙ HW(™æ DuH g&,POkè”;Wì³?NçWæMW93›;\çW?Aæ ¸Ý,&8ç 3JDäè 1BEHWD*ÙFH!× @J¡INæ\KNízMsì³@PæEOJ×D ×PÙc ì’æ\Oízh el ;W`xVAo 9‹á @ª`Pb =ºj™â‘Õ o ¿NOqh ze oW@PjC'n @Pl ?\Ê wX]JwxhzD ?H`PoWVNoWOkp;WD?A]_^éw@JXw=º?A»ED I n BEuD3Ù HWÈuæ 0D (H ,Phzè”KNì³çWO)æ9<;x›IWçWD æ Q ,&ç j™3Jè ;s1w©HW^AÙ@P!× jd¡;sæ\wíz=‹]Pì³;sæE9[××P¼ÙO;Wì’æ\jCíz@lzr ÈN8•hzOkY MÃo á ¼ÚWhAâ‘OCÕ w©a ^A@"
NnW=ºbW? oe @JlWXmwh=‹»ze ;>D w=‹`PhzoW?Ça\p hsD ¼w@JXwk=<?A»%D I 9
a
o
˙DW֛;\jC9‹@Jw7;\?A¸ÍZD R ;xIA9‹hzOJD c ;WOwk=iwk=ihA?Cw@JXw=º?A»C¸NhA@JX7?Ah\w3=º?AX©¿A=ºO@]Jhz?\ÅE¸N@P?A]J@WDI uÙ H\æ
H ,Pè”ì³çWæ 1çWæ ,uç 3_è 1H\Ù¥× ¡æWíAì’æ%ש×xÙ©ì³æWíAl ` Eá `xq âJÕ ` ½ bWq ¹` ½ `\` lAË@J]WD `PoWoWb D
ÀÇDP֛KAwk]_^A=º?AXPlAÖDJg%hWXw@PO‘l R D (hAO;s¸N=º;Nls;W?A¸ R D Ê Xw©Ok;W?A¸*Dz8:¾L¿G@PO=ºjC@P?WwkX4hz?w©^A@$@ã*@J]Jw= e @P?A@JXX
hs¼¸E;sw©; Eh r Y;W?A¸Ç]Jhz?\w©OhW9 Eh r Y¥VN;sX@J¸Þw@JXwC;s¸N@JÔNKN;s]JIH]PO=‹w@PO=º;ND c OhA]J@J@J¸N=<?A»\Xhs¼w©^A@ ` sw©^
·?\w@PO?N;swk=ihA?N;s9 6[hz?\¼”@PO@P?A]J@hz?}ÈAh>¼Úw r ;WO@83?A»W=º?A@J@PO=º?A»El%ÀH;xI `Po\o ½Elz¿N¿uD `PoN` Y qWb\b D
`Pb ;WR?ªDy=ºBE?AD ¸EÊ KAXXkw©w©OO=º;W;s?A9-¸Á@P? ;We ?A=º¸¹Ohz8?Nj6DyBE@PDN?WFHwPD @JIN KN Ms,)@P- OJJD è”×P6[ë hW9‹9‹@JHW]Jæ w=º+ ?A»",&ç ;W3_?Aè 1¸}HW]PÙ;s×xwkl @J4»WhWhz9”ODy!=½EJ=l º?A`x»oWa Xk½EhslN¼Úw ¿Nr ¿u;WD OqW@fa\o @PY OpWOhAbWbO[D ¸E;sw©;C=º?
`W` X@JÈu9‹D*@J]JZw=‹;Whz¿N?u¿ADUX·;\? ?A¸é(¡8Ùç Du,BE××.Du+WFHì³æW@Jí2INKN,&Msì@P­OJè³Dî Ë©æE;>w©è”×x; Ù©EæhHWrè”ì’ç\;Wæ?NH ;s6 9‹IA3XçW=‹Xæ3_w×x@JÙ]J×P^Næ ?A,=‹×}ÔLKAçW@Jæ X,,&¼”hzç O›3_è ¿N1O)HWhWÙ»z×O;W¡j æ\ízwì³@JæEX×w×P¸EÙì’;>æ\w©íz; l
¿N;s»W@JX q\nWq LqWn\a lWÈA@P¿AwPD `PoWaWq D R hAMWIWh%lzBA;W¿N;W?uD
`Pq IÈuD­Z ;\¿Nu¿AÙ HWXæ ;W ?AH ¸,xè”8ì’ç\DJæBE›DJFÜçWæ @JIL,uKNç Ms3_@Pè 1O‘DWH\ÈAÙ¥×!@J9i@J[]JæWwk=<íz?Aì³»æE×Xk×PhsÙ¼Úì³w æWr íz;WlAOÈN@-8-wY@J`X½uwä᳸E½z;sâJw©Õ ;[p KAnX
L=º?ApW»n' ¸El ;sQ w©; ¿NEOJD h r`xoW=ºa ?\ ¼ÚDhAOj™;sw=‹hz?uD
`Pp I8D%>BEDu,)FH-­:ë@JIN/NKNç Ms_@Pì AO›ëê;\?AçW¸ æ Q ¹D ×xQ›è”Ù©e ì O,=‹Aw J@'POJD Q jC@J=w©O), =i]C3w.WhªlsBz¿NKNO?A@J¸N@ =‹]Jq\wbWbWXqhs¼”lNw ¿Nr ¿u;WD O` @f\q XY]P`;sW9º;Wa VAD =‹9‹=iwIWD (¡Ùç , Wè³î
` ½ è”ì’8ç\æD%BEDEçWFÜæ @J,&ILç KN3Jè Ms1@PHWOÙ;W$× ?A¡@¸ æ\›ízì³DGæEBW×@P×P?AÙ»Eì’æ\D ízQ l `P?Nn ;sá 9‹n7I âJJ=Õ<n\?AbW»"p L¿NnN;\`\Ow` =‹lsw=‹BAhzKA?}9iI wk@J`PXoWwoN=º?A` »D Xkw©O;sw@J»\=i@JXxD I uÙ HWæ H ,
` »W8=‹@JXPDNDBEDA·? FH(¡@JINÙçKN,Ms×@P.× OJ+Wl%ì³æWÈu2í DE m*DAç FHAÙ@Jè³=‹îXXx,lE-s;W:ë?A¸}/Lç ˙JìDEAÖfë ;WjCçWæ 9‹@JwP,&D ç 3J6[è 1hzjdHWÙ¿N× ;WuO=‹× XJhzè”?ªì³æWhs/í ¼4* ¿NOæhW»zH O6!- ;\Jj+4ì *wk@JHWXæ w+=º?A»™%×PXÙw©ìOk0;s,wH@Y
è”ì’ç\æElN¿N;s»W@JX ` &`Pb D Q 6[À c O@JXkXPl Ê ]JwPD `xoWoN` D
10
!"
#$&%'( )*$+
-,.%/(0
(
13254 687 68259;:=<>:@?BADCE2FAGIH"JKML@NPO5Q
JRS25T!<F4U.V=WX4Y7YAZ<F9.[
H"J\]J_^`<>a+4bc?/4Y?/<>AZdR
e/f O!1g<>A h;H(iF?/9kj.?
G3lm2FAZR.<FTn1g<>A h@o+p#UqOsr>tFuFQ
254Y7YAZ<F9+[=v#A ?/4Y?/<>AdZRVP<>7Y7BVPdw25T
xy`z/{'|~}+F{
€‚Š—5ˆŠƒƒ„…‡sˆ’ƒ ƒŒ†5‘’‡kƒŒ„~ƒˆŠ#‰‹ƒŒ‘’„5ƒŠ ‘#ƒŒŽ—/–Šƒ‘’‘Љ¢’š#ƒˆ“‰‹‘gŸ¢•'”ˆ(ˆŠ‰¡‰‹„sŠ‡5ƒD F’Šƒ‘X‘Š“5Z•~•/‘’XƒŒ‘`“F–mƒZ—~œ;ˆ"‡5ƒZˆŠ†F—'‡k˜™ƒˆŠZ•~Xš#Š‘F›>ƒŠF‡5ƒˆŠœ—'˜~Yˆ“F•'—>š—~‘Š’ƒM—;ŠFˆŠƒƒZ‘“ƒZ‡k‰¡ž'ƒƒ' £;‰‹kM¤¥ŠŸ‹“ƒF‘Šg—~ F˜™•'¦‘ŠƒMŠžwƒ•'‘ŠŸ¡’ 5ƒƒˆ“‘‘
šX s„5•wŽFœ§ƒˆ“‘’‘Š“Š•'•'ˆŠ„s(ŽF¨™‰¡„5œ§˜(Š—'F–=‰¢„5Š©™5‰¢ƒM„F˜q‡sˆ’—'—~–¥˜~ˆ“‰¢•'„5šªŽF‰¡ž™‰¡„s‰¢Ž5Z 5ˆŠƒ•'•'Ÿ`‘ŠŠƒƒ‘`‘Š#’—X•X•'‘Їsƒ‘—~›‰¡„™—~gˆ(”˜~FˆŠƒŒ—~ˆ’ 5ƒ‡5Š‘F—/ƒ–¥œˆŠ5ƒZ•wŸ¢•/ž~ŠƒƒŽ;š( 5ŠƒY‘Š#š#•'—~‘ŠˆŠƒƒM‘©™›@„5˜™—BˆŠ”"•~Ž5Ÿ‹ƒŒ 5ŽF•'˜'Ÿ‹Ÿ¡ƒœq—/“–+F“ƒZF‰¢ƒˆ
°‰¡‡s(ˆ’•~—~ sˆ’˜~Š‘Љ‹ˆ“•~Š•'¨F‰‹š…—™Ÿ‹ƒ„« ‘±²•'¨k‘ƒƒ•²ŠsF•w–m—Fž™—~Ž(‰¡ˆ“—~š#—/ˆ–s•'“”Ÿ`5•'ˆŠŽF‰‹„XƒŒŠ‰¡‘Љ¢„5‘˜ˆ’ƒZ‰¢‡F•†5Š‡5’‰‹—™ƒŒˆ’ƒŒ‘’„§‘БЗ/‘“ƒ‡s–Ž#ƒŒŠ‰¢5„¬‰‹kƒ¬•Z–³•' 5k’„5„F‰¡—~Z‰¡’„’ƒ‰¡—~Š‘’—D„5ƒ•'ZŸ‹•'‰¡—/´‡5–Sœ§ŠŠ 5ƒ—/ˆŠ‘Š–ƒ­­•µ“ZF•~‡s‰¡‘’‘ˆ’ƒŒ—~š#‘Z˜~£@—™ˆ“€q•'ˆ’ƒ3š…ƒ˜'£²‡5ƒŒˆ’„F¤-—™ƒ‡sˆ“®3•/—™Ÿ>‘’•/ƒ©>Š„FƒZ s˜~—B‘’—~”"‰¢„FˆŠŸ‹œ~˜ƒŒ¯¶ŽF“°˜'F•'ƒ~ƒˆŠ›B’®3•'‰¡’„5•/‰¡ŠŽ#—~ƒZ„µšX˜~—~’•'ˆŠƒŒ©/œ~‘’ƒ¯
‘“•~‡k„5ƒŽX ‰‹ˆ’kƒŒ‘Š 5•/’Ÿ‹“‰¡—~‘„—/–IZŠ—~F„5ƒ¥‘Љ¡‡s‘ŠŠˆ’‘—~˜~—/ˆ“–•'š…Ÿ¢•'£+ 5·"‘ŠƒF‘ƒŒ‘’Šƒ5•'ZŸ¡•~ŽF 5ƒŒ‘’‘ŠƒŒ‘@ˆ’–³‰¢ F¨sŸ‹ƒsŸ‹‘ŠŸkƒZ´“”`‘—D—'–‡5žB s•'ˆŠŸ¡‡k F—~ƒŒ‘Š‘"ƒ‘–m—™¸+ˆ"“F‰¡„sƒZ‡5œ# FZ•'„X‡s•'¨kˆ“ƒ•'š# —™ƒZš#Šƒ‡5ˆ“‰‹‘ZŸ¡›5ƒŽ]‘ŠŠ¨™•'’œƒ•DžB‘“•' FˆŠ‰¡‰¢Š•'•'¨F¨5Ÿ¡ƒŸ‹ƒ‘
“‡sFˆ’ƒ—F ‡5ƒŒˆŠ‘Š—'‘Š—~˜™ˆgˆŠ•~‰¢š„™’« —…‘­–³•¬ 5„5‘’ƒ ¥Š‰‹—'—™–­„5•/•'Ÿ¡ ‰¡“´œ' 5£•/Ÿ=·"’FƒŒƒD‘’Ÿ¢•/ZŠ•'’‘Šƒƒˆ"‘‡s–m 5—~ˆ¥ˆŠ‡kŠ—~F‘Šƒ#ƒM‡5‰¡‘gˆ’—~“˜~Fˆ“ƒ•'š…‘“ 5›k¨>•~¹ºƒ„5ZŽ"Š—/5–ƒZŠœ²F‰¢•/‘Ÿ¢‘’‡5—•~‡s‘’ƒŒƒŒˆ’ˆZž~£ ƒ•'‘¥•ŽFƒ‘“ZˆŠ‰¢‡F’‰¡—~„—'–
» ,.#
@¬¼!½3
#
·"•/5ŠƒM‰‹—™ s„]‘Š—/ 5–+•'ŸS“Fž>ƒM‰‹ƒ‘’”—'‡s–m´—~”3‰¡„™•~gˆ’ƒ~—/£@–=·"–m—~Fˆ“‰¢š#‘gZ•'•~ŸS„¬•'‡5¨s‡5ƒDˆŠ—~ŽF•~‰‹¾¬YFZƒ F‘`Ÿ¡3’—X’—#Šƒ‰¡šX‘Š’‰¢‡F„FŸ¡˜Xƒš#‰¡‘gƒ„™Š—Xg‰¢Ž5„ƒˆŠ‡5‰‹ˆ“ž~•'ƒZŠ’ƒ‰¢ ‘Šƒ"¨kZ•'ƒ‘Šƒ•'‘` 5‘Š–³ˆŠƒ—~š#š_—™•(‘’g–m—™‘’—'ˆŠšX–m´”3•/ŸS•~ˆ’‘“ƒ‡sƒŒŽF —>‰‹5ƒ‘¯
–m„5—™—'ˆŠMÁºšX„5•'•w“Ÿ.ž'Fš(ƒ‰¡‘ƒ•Š‡5F•'–m—~—F‡kˆ“Ž5ƒšX‘ˆ£ •/”`Ÿƒ‘ЇkˆŠƒZƒž~Zƒ‰¿Àˆ“Z‘’ƒ•/ŠŠ‰‹F—™ƒ(„S›S 5•'‘Š„5 sŽq•/Ÿ+š#ŽF‰¢—~ˆŠ‘Šƒ Š‘Љ‹—/—™–m„S´”g›s•~•'„5ˆŠƒŽƒ „5—~˜'„s‰¢‘’„F‰¢ƒZŽFƒŒƒˆŠˆ‘Š•'F„5ƒŽµ‡k’—~ƒ‘“‘Š‘’M‰¢¨FŽF‰¡Ÿ‹ƒ‰¡´‘Šœ‰‹˜™„F—'–ƒˆ“˜'‘ƒ„5Ÿ¡•~ƒYˆ“©•/’“‰¢ˆŠ„F•'˜#‰¡„F–m‰¢—~„Fˆ“˜…šX‰¡•/„ Ÿ
‘“•'‡kMƒk ˆ“‰‹k‘’•/˜~’Ÿ¡‰¡•~—~„5„s ‘ƒX–³ˆŠ“—~FšÂ‰¡‘(šXŠƒ•w‘Šœq¬Z‘Š•~ƒZƒ‘’ƒŒšÃ‘(Ÿ‹•~‰¢„5©/ƒ¬Ž*Ž5š#—'—™‰¢„Fˆ’˜²ƒ…˜'ŠFƒŒ‰¢„F„Fƒ˜™ˆ“‘•/Ÿg‰¢„§‰¢„>Š–m—~Fˆ“ƒ¬šX”•/ˆŠ’—~‰¡—~„5„*˜•wŽ5žB‰¡ˆŠ•/ƒ‰¡Ÿ¡Z•~’¨F‰¡—~Ÿ‹ƒ„S›@’—§ŠFŠƒŒ5ˆ’ƒ¬ƒ…•~Šƒˆ’ƒ¬‘Š’ƒŒšXˆZ•~£„~œ¤Ÿ¡ˆ’ŠƒŒF•'—™‘Š F—~˜~„5 ‘
”•~„5™Ž…œ!’‰¡ƒŒD‘’ŠZƒ•~ŽS„q£¨k·"ƒ¬F 5ƒ(‘Š‘Šƒ ‡k–³ FƒŸZ‰¿Šk—•/˜'Šƒ‰‹„5—™ƒ„…ˆ“•/•'’ƒX„²•¨kƒ–m—~ 5ˆ“šX‘Šƒ•/޲Ÿ•~‘Š‘"‡kƒŠFZ‰¿ƒ(ÀZ¨5•/•'Š‘Љ‹‰¡—™‘„q–m—~•/ˆ"–m’“ƒŒFˆMƒŠ„FFƒZƒ¬†F‘ŠœFž'‘’ŠƒŒƒˆŠšÄ‘Љ‹—™„…5•~—/‘D–•/ŠŸ¢Fˆ’ƒ(ƒŒ•'‘’ŽFœFœ²‘Š’¨kƒš…ƒZƒŒ›k„”¨sF F‰¡Y‰‹Ÿ¡ 
Z•~—~Ž5 FŽFŸ¢‰¡Ž’‰¡—~Š„55•'ƒ„²Ÿ’¨kƒƒ‘ŠD¨5Z F•~‰¡‘’Ÿ‹ƒŒ‘ 5‘ŠZ‰¡—~„F F˜Ÿ¢Žµš(¨k—™ƒ]ˆ’ƒŽFŽ5ƒˆŠ‰¡‘“‰‹ž~ ‰¢ƒ‡FŽ!Ÿ¡‰¡„F–³ˆ’ƒŒ—™ŽšÇ’ƒŒ‰‹Y£#5„F·"‰¢Å™F 5ƒXƒ‘“‘‡s£ƒŒÆ ‰‹„sk Zƒ•'’“‰¡F—~ƒD„µ–m—~•'ˆ“šX„•/¨sŸ+ƒX‘““‡kFƒƒ] ‰‹k¨5•'•/‘Љ¡’‘¥‰¡—~–m„—~ˆM‰¢‘¥‡5•'ˆŠƒ¥‡s5•'•~ˆŠ„5‰¡„FŽS˜ ›
Ƀ sž'‘’‰¢„5ƒŒƒŒˆ„q•/Ÿ¡ŽFŸ¡•/œ'—F–m›5’Zƒ•( sˆDš(–m—~•…ƒŒˆ“„™šX“FŠ•/•/—~ŸSŠˆŠ‰‹—~‘Š—™‡k F„Sƒ˜™›Zµ‰¿•'À„5‘ŠZƒZŽ;•/MŠ‰‹—/—™•'–g„„;’ƒŒ¨k‘’•'ƒ“„…‘D 5¨s5‘ŠƒDƒ•'ަ‘D•X¨k’¨5—!ƒZ•~ƒŒ‘’ƒZ„‰¢†F‘3‡5ƒ –m†FŸ¡—~•'ƒˆg‰¡„;•' F„s’“ƒŒ•/F޵Ÿ¡ƒœ™Ê”"‘Љ¡œF„5‰¡Š‘’˜#§Šƒ•~šÈ
„ 5—™ŽˆŠ’ˆŠ—µž~ƒƒZ‡kˆŠ‰¿—'–mˆŠœ>Šƒƒ‰¢‘“„F„™ F˜#’Ÿ¡‰¢Š•/Š‘FŸg›.ƒ 5‰¡‘Š‘ŠƒœFš#ˆ“‘’‘Š•wƒœq•'š…„s¨sަ« ‘"ƒ¬‡sZŽF 5ˆ’‰¢—™‘“‘Š’‡s—™—BƒŒš#ž'ˆ’ƒŒŠƒ‰‹ˆ’ƒŒˆ“ƒŒ‘Z‘ZŽ £Ë
“5•/Ék"—~“ˆ"FšXƒD•'”„™ˆŠœ¬—~„F‘Š˜Xœ>‘Š‘’’œFƒŒ‘ŠšX’ƒŒ‘Zš_›F„F5—~3•'‘"—™„F¨kŸ¡ƒZœ]ƒŒ„–m—~¨5ˆ“šX F‰¡•/Ÿ‹ŸS£ ‘ЇkƒZ‰¿ÀZ•/Š‰‹—™„5‘›>¨s F•'„™œ]´œF‡sƒM—'–@ —™šX‡FŸ‹ƒ’ƒM•'„5Ž… 5„5•~š¨F‰¡˜~ 5—~ 5‘
‘“‡5‡kŸ¡ 5ƒ‘3 ‰‹“kFƒ•/’‰¢‰¡ŽF—~ƒŒ„s•'‘=‘`•~‰¡ˆ’„]ƒ`“Ÿ¡F•~ƒDY©~ŽF‰¢„Fƒ‘Š˜k‰¡£=˜~„F±!ƒŒ•~ˆŠ‘„~«~œDF‘ŠƒŒœF•'‘’Ž5Š‘`ƒšX—/–=‘=”•~ˆ’5ƒ3•/ŽF`ƒŠ‘ЁF‰¡ƒM˜~„F‡5ƒŒˆŠŽ—~‡k—~ƒ„5ˆ­Ÿ‹œD–³ 5—™„5„D ŠŠF‰‹—™ƒ"„5¨5•/•~Ÿ¡‰¡‘’´‰¢œ'‘=›F—/¨s–kƒŒF5‰¡•w˜~ž>F‰‹¯E—™Ÿ¡ƒZˆZž~›>ƒZ•'Ÿ>„sˆ’ެƒŒÅ™•' 5‡5‰¡‡kˆŠƒƒš#•~ˆŠƒ•~„™„5“ ‘Zƒ ›
—'“F–+ƒ¥Š5ŽFƒƒŒ‘’”3‰¢ˆŠ—~ƒˆ“Ž]©™‰¡¨k„5ƒ˜5‡5•wž>ˆŠ—>‰¡—~Žsˆ 5›' •'"„5‘“ŽXF“—~F Fƒ¥Ÿ¢ŽZ—'¨kŸ¡ƒ'Ÿ‹ƒŒ£ ·"’‰¡5—~„#ƒ‘Š—'ƒ–I‰¢ŽF“Fƒƒ•~‘Š‘gƒ•'‰¢ˆŠ„5ƒ‘ŠŠ‘“•' 5„s‡5 ‡kƒ—~‘`ˆŠšX’ƒ•wŽœ(¨™¨kœ¬ƒ‘Š•'‡k‘­ƒZ ‰¿Ÿ¡k—~‘Šƒ‰¢„5•'‘Š‘Š“•'F„sƒ ƒ‘Š‘3œF‘’“Š5ƒ•/šÌ3‰‹ƒŸ¡ž'Ÿ¢ 5ƒŒ‘’ˆ“˜'ˆŠ•'ƒ’Šƒ‘
Š—]͕#—B‘“”·kƒ‰¢‘¥‰‹k‘“ 5•/Y’‰¡—~•¬„.£ ‘ŠœF‘’Šƒš_Šƒ‘Š’ƒŒŽkϧ·"FƒDÀˆŠ‘Š"’ƒŒ‘’¥•'‘Šƒ‘•~ˆ’ƒD“Fƒ(‘“‡kƒ ‰‹kD‰¢„5‘ŠŠ•~„5 ƒŒ‘"Š5•'”3ƒˆŠƒ 5‘’ƒŒŽ’—
—™“Ž5F‡sƒƒ¥‘ŠƒŒ‰‹ˆŠ˜™‘Š•'œF„’‘’ƒ“ŠƒF•~š…ƒ¥‘D‘Š›™ƒ œ>•~†5‘ŠŽ5‡k’ŽFƒŒƒšÌ‰¡Z’’‰¡—~ƒ‰¢„#ަ„5•'Š—~Ÿ5F„;’ƒgƒŒk“‘’F“ˆ“‘­ƒ‘Š‘Š•~ƒ‡Fˆ’ƒŸ¡Z•~•~ŽF ‘’ƒƒ~ƒŒž'£‘Zƒ£!Ɵ‹—™¨™¤‡sž>ƒŒ‘‰‹ŽS—™“›~ 5F‡k‘ŠƒŸ‹ƒœ~ˆ“Š›/5ƒ‰¿•'‘Š–I’‡sŠƒŒ5‘ˆŠƒ¥‘(”"‘’•'‰¡œFŠ„5X‘ŠŽ¦’ŠƒŒ5Ž5šÌƒ¥ƒZž'‰¢ ‘ƒ—>Ÿ‹’—~—™—D‡k‡sƒ¨kƒŒˆ“ˆŠƒ•/‘ƒZŠ¨s‰‹ž~—™ƒƒŒ„#„# —~—/ š#–SŸ¡—~Šƒ…‘ЁFƒ"ƒš(’‘’—™—œFˆ’‘ŠƒX’—™ƒ–³ˆŠš…•~ˆŠƒš#« Z‘‰‹ZŸ¡ƒ›B‰¡•~ž'‰¡­ˆƒ„™š”"“ s 5‰¡Š‘’•/  Ÿ
s‘“ ‘’ƒŒƒŒ„5ˆŠ‘•'£@ˆŠ‰¡¤Ð—~‘` —~—™ˆgš# 5š#‘Šƒ—™„]•'š(‘Šƒƒ‘Š›™F”—FŽ]5‰¡—'Y…–+Z•'ˆŠˆŠƒƒ•'’ƒZ‰¢†5„F•'˜DšXŠ‡FFŸ¡ƒŒƒ‘’‘3ƒ—/’–@ƒŒ‘’Š“F‘ZƒD›™ƒ‘Š‘“œ>‡s‘Š’ƒŒƒŒ š…‰¢•/Ÿ¡« ‘gŸ‹œ(¨k–mƒ—~5ˆ`•w‰¢ž>„~‰¡Š—~ƒˆˆ“£•'ZƏ’“‰¡ž'Fƒƒˆ"‘Šœ>‘Š•'’‘ŠƒŒƒšX‘3‘Zš#›™•w‰¡‘`œ¬¨™¨kœXƒŽ5Zƒ ˆŠkƒ„F•'’‰¢„FƒŒŽ˜
¨™œ—~¨s‘’ƒŒˆ’žB•/Š‰‹—™„²—/–“Fƒ#ƒ †F‰¡‘Š’‰¢„F˜Z•~‘’ƒŒ‘ZËIŠ5ƒ#‘ŠœF‘’Šƒš…« ‘M¨kƒ5•wž>‰¡—~ˆ¥—~„µ•‘ЇkƒZ‰¿À(•'‘Šƒ(šX•wœ²‘Š F˜~˜'ƒŒ‘’¥‘Š—~š#ƒ
11
Bž‘“šX•~ˆ’¤•/‰¢•/Ÿ¡–mŸSŠ’‰‹žBƒ—™ˆ¬•'„5ˆŠ‘gŠ‰¡•'F¨s’ƒ!‰¡ƒŒ—~ ‘Š„5—~œF‘`š#‘’Š‰¡ƒD„…ƒš „F“ƒF”Љ¢ƒM‘]‰¡Š‡F„5ƒŸ¢‡s‘Š•' FZŠƒZ‘"Ž*•'—™‘Šƒ‰¡ˆ3„ ‘Š£ F—~ƒ‡kƒ‘Šˆ“œF•/‘’ŠŠ‰‹ƒ—™š_„S›`‘Š•§Š•'’„FƒMƒ”-Š5•'‘Š"—~ s ˆŠ—~Z 5ƒŸ¡Ž…—'–• IƒŠƒ‘ŠZŠ3‘]“F•'ƒDˆŠ‰¢‘’’ƒŒƒŒ‘X‘’—~« ‘g F—™X F—/Š–Z—~–³š#•/‰¡Ÿ¢ƒ' 5›5ˆ’•~ƒ²„5ŽˆŠƒ‡kŠF—~ƒŒˆŠ‘’Šƒ‘
–³‡sˆŠˆ’—~—Fš&Ž5 5ŠZ5ƒƒŽ]s“ƒFŸ¡ƒŽS£–³•/¤‰¡Ÿ¡ 5–m’ˆŠƒŒƒMˆ•'•XˆŠƒ¥–³•'•'‰‹Ž5Ÿ¢ 5Ž5ˆŠƒƒ ެ¯´ZŠ•~— 5‘’“‰¢F„Fƒ˜#˜™–³ˆ’•'—B 5”"Ÿ‹‰¢„F5˜•'Š‘ƒ¨s‘Š3ƒƒ¨s„!•'‘ŠˆŠƒ'ƒ£‡5¤¥•'‰¡‘3ˆŠƒ‘ŠŽ. s›5ZŠ FƒŒ‘Šƒ(‘Љ¡‰¡ž'„sƒ¥‡5 Fž~Šƒ‘ˆ“‘’•'‰¡—~„s„s޲‘‘’—/œF–.‘Š“’Fƒš-ƒM‘’‘ŠœFŠ‘Š•/’Šƒƒš “5•~•/ˆ’ƒ
Š‡sƒˆ’‘Š—F€Ž5Z 5ƒµ•~Z‘’ƒ‡5ƒŒŽSˆŠ‘`—~›/‰¢‡kˆŠ„…ƒZ—~˜™‘ŠŠˆ’ƒFƒŒƒ‘ŠŠ‘Š5ˆŠ‰¡ƒZ•'—~˜™¬„Mˆ’ƒŒ’ŠƒŒ‘ЁF‘Š‘’ƒµ‰¡Š—~‰¡„5’„¬ƒ˜‘Š‘“¨k Fƒ‰¡’Z•'ƒ'—~‘Š£ š#ƒ‘]ƒ‘=ŽF‰¡ƒšXž'ƒZ‡kŸ¡—~—~ˆŠ‡kŠƒ•~Ž*„~–m›'—™•'ˆ¬„s•;Ž•¥‘’œFZ‘Š—~’šXƒŒš š#—~Z„(•~„‡s—~¨sŸ‹‰¢ƒ! œD“F‰¢‘@ƒ²’–m——™Ÿ‹ 5ƒŒ„5•wŽ5ž'ƒ`•'’•'‰¡—~Ÿ‹Ÿ~„ –³•'—/ 5–Ÿ‹’•¯E‰¢„5–mŽ5—~ 5ˆ“šXZƒ•/Ž Ÿ
‰¢žB‘“„5‡k•'‡5ƒŸ‹‰¢ 5 Ž]‰‹ kw‰¢„5—™•/‡5 F’ FŠ‰¡‡s—~"„q F‘“­‡5–m•'—™ˆŠƒZZˆDŸ¢ƒ'•/ŠËF’FZ‰¡ƒ…—~•~„.‘’‘’ƒŒ£@œF‘‘Š·=Š’ƒsƒŒ‘Šš•/g£ZŽF•~·"—#‘’ƒŒF„5‘ƒ¬—'Š`5ƒZ•'†5ˆ“ 5­‡s„ƒŒˆ“ 5‘Š’„X 5ƒŒŽ§‘Š 5ƒŒ—~‘Š F ‘’ƒŒ“–³‘Š F‡5‘’Ÿ¡ F–³Ÿ‹ Fœ]“‘Ÿ¡Ÿ‹‡kœX—/—'–"‰¢Z„~•~Š3ƒ„#‘Š—~ŠŽ5 5‘ƒZ3Ÿ¡Ž5‰¡‡F„Fƒ Ÿ¢ƒŒk•'•/„FZŠƒƒƒ‘`©/ŠŠFƒZ5œqƒ•'3¨sžB—™•/•~ 5Ÿ¢ˆ’ Fƒ¥„5ƒŽ5—~‘D‘ F—'“—'–"‘’–S‰¢ŠŽFŠFFƒƒƒ¥ŠF‡s‡sƒMˆ’ˆ’—~—~„F˜~˜~—~ˆ“ˆ“ˆ“•'•'šXš…š…•/«« ‘‘ Ÿ
‰¢‘“„5‡5‡5•~¤ 5 ƒ'Š„~‘£*œ ›sŽF·+‘’ƒƒ ƒŒXÀ‘’“„F—/‘Xƒ–MŠŽF’5ƒ‰¢•'‘Š‘ŠZX]—~ˆ“„™Z 5•~’‰¢„ ‘’„>ƒŒ F‘]‘Љ‹ sŠ‘ŠZ‰‹‡kƒŒ ƒ‘gƒŒZ‘Š—~‰¿‘’sˆg–³ FƒŒ‰¢‘]Ÿ¡„ Ÿ‹œ~s‡5›­ƒŒ•' ¨5ˆŠ’X F‰¡—~¬—/„…–•~‡kˆ’Šƒ—'F‰¢ƒ!Š„~ˆŠ“¨kƒ‘"•'ƒ—/’5ƒ–•wŽ Šž>5‰¡ŽF—~ƒM‰ˆ#Àƒ‘Š—/—/Œ–mˆ’–M´ƒŒ”gŠ„™5•'’ƒ!Ÿ¡ˆŠœ;ƒ'‘’£ –³œFˆ’‘Š—™’šÂƒš…Š›3F„5ƒ²•'šXš#•BƒZ¹ºŸ¡œ—™ˆ’‰¡“´Fœ§ƒ…—/k–M„F‘Љ¡ 5’ƒ! ‘ŠƒŒƒZ‘Š]‘’–³ F—'–Ÿ
‰¢¨k„5ƒD‡5Z 5•~º‡5¯¶—~•' F¨F“Ÿ¡‡5ƒM F—/M–‡5¨s•/ƒ‰¢‰¡ˆŠ„F‘˜X—/˜~–`ƒŠ„FFƒŒƒ#ˆŠ•'’Ÿ‹ƒŒ‰¡ÊZ‘’ƒŒ“‘Zެ£D’·=—]—‘“‡s¨kƒŒƒX ‰‹š#–mœ—™¨kˆ’ƒƒ5˜~•wƒž>„F‰¡ƒŒ—~ˆŠˆ`•'Ÿ‹ŠŸ¡5œ²•'" 5‘Љ¡ƒ‘"–³ F„5ŸE—'›.gFƒ —B†5”3‡FƒZŸ¡‰¡ž'ZƒŒ‰‹ŠˆZŸ‹›Àœ•]˜'k‰¡ž'„5ƒŒ‰‹„ŠƒX¨™‘Šœ¬ƒZ—~„5—/ƒ–­Š—'ƒ–=‘Š“ŠF‘MƒDš’ sƒŒ‘’‘’
‡s•'ˆ’—~‘Šƒ˜~‘ˆ“£µ•'šÄƄF‰¢„>ƒ¬–mƒŒ”gˆ’•wƒŒœµ„5 —/ƒ–•~ŽF‘—~•q‰¡„5˜!š(ƒŒŠF•'„5‰¢‘(‘‰¡—/‘–¥Š5•~‘ŠˆŠ‘Š—~ƒ F‘“˜™‘’;‰¢„F˜²‡5ˆŠ“—'F˜~ƒˆ“•'•~šÄŽFƒ‰¡Å>„> 5–m•~ƒŒˆ’ ƒŒœ„5—/ƒ –•µ€‘ŠƒZƒZœ(—/–"E£²’ƒŒ€‘’XƒZZœF•~ 5‘’©'ƒŒƒ‘Zˆ(£!‡5·"ˆ’—™F‡s‰¢‘#—™‘’•'ƒŒ‡5ާ‡5ˆŠ 5—~‘’•~‰¢„FY˜
‰‹‘“¤¥–­ FŸ‹˜~““FF˜'ƒ]ƒ—~‘Š 5‡5’˜~ƒŒˆ’XŽX—~˜~ŠŠˆ“55•'‰¡•'š&‘`"‰¡‘`•‰¡„F•'‘Š–m„]ƒZƒ3ˆ“•~ˆ’—/‡5ƒŒ–+އsŠƒŒƒ–³•/ˆ’‘ŠŸ¡—™3‰¡šÇ„5˜D•'Š‘ŠŠFƒF‘­ƒ#ƒ—~Z’—~ˆŠƒŒƒZ F‘’’DŸ¢‰¢ŽZ•'•'¨kŸ5‘ŠƒM–³ƒˆ“‘ •'—~š#”`„sƒŒ‘’ƒZˆ’‰¢”3ŽFƒ(—~ƒƒˆŠˆ“Å>ƒ©Mސ F–m‰¡—™žw•'ˆ­•'ŽFŸ‹YƒŒƒŒ5ř„™•~ sˆŠ•/•~Š’— ƒ’ƒŒ’Š—#5ˆ’‰¡ƒXÊZ’‰¢ƒŒ•~„F‘’˜M3“ 5Š’FƒŒ•/‘’ƒMŸ`‡5¨k•'ˆŠƒŽF—'5ƒŒ˜~•wřˆ“ž> s•'‰¡•'š-—~ˆ`œ~¨k—/›'–=ƒZ‰¡‰¢•(„F–³˜‡5•~ˆ’Š—~ƒƒ‘­˜~‘Šˆ“’´•'ƒŒ”`ŽSš — £
‰¢Žs„>•'–m 5ƒŒÍˆŠ„™—BˆŠ’‰¡”`‰¢„5„Fƒ˜X˜ž'•Xƒ‡5ˆˆŠ‡5›B—~ˆŠš¨5—'Ÿ‹ 5˜™ƒŒYˆŠš#•~‘š ZŠ•'5–³„(ˆ’•'—™¨sš ƒ3•'ˆŠ˜~‘“ƒ"•'•'‰¡‰¡šX„5„#ƒ‡F˜'ŽMŸ¡ƒŒƒ–³„F‘gˆŠƒ—~—/ˆ“šÎ–@•/Ÿ5‰‹“Š s‘5„5ƒ`¨kŽFŠƒƒƒ5Z‘Š•w‰¡@Žsž>”•'‰¡—~¨FˆŠˆ‰¡Ÿ¡’›>ƒ'‰¢›>•~„F•'„5˜„5އ5Ž#ŽFˆŠ—F‰¢ƒZ„]ŠƒƒŒ‡5ˆ“‘Šˆ“š#‘@•'‘Š‰¡5„FŠ—~‰¡‰¢Z„FˆŠƒ˜]+•/—/‡5Ÿ¡–s”3ˆŠ•—'•w˜™œFˆŠ—™‘•~šXšŽF‡F‰‹¾¬Ÿ‹ƒƒÅ>Z’ F Fƒ3‰¡Ÿ¡Yžw5•'’•'Ÿ‹—(ƒŒˆ“„5•'•'ZZƒ~’Zƒ£—~ˆŠšX‰¡Ê‡F•/Ÿ¡Š‰¡‰‹‘“—™S„ ¸
—'‘“‡k–=ƒ“ F‰‹ƒk#‡5ˆŠžB—'•/˜~Ÿ¢ Fˆ“•'ƒš…‘M—'£@–`€‚“FFƒ]ƒ„’ƒŒ•#‘’’›+ƒŒ‘’¨5Š Fƒˆ"ˆ“ŽF•/ƒZ“kF„FƒƒŒˆ‘—/•#–"’•…ƒ‘ŠˆŠ•~„FZ•~˜'‘’ƒ#ƒ~—/›F–gFƒDžB•/‰¡Ÿ¢‘3 F–³ƒˆŠ‘ƒÅ>Š FsƒŒ•/„™D’ŠŸ¡œ5ƒ¬Š5‘’‰¡‰¢„5„F©™˜'‰¢Ÿ¡ƒX„F˜]Z•'„F‘Š—'ƒ]"ˆ’—'ƒŒ–=‡5“ˆŠFƒƒD‘Šƒ—~„™„FŠ‘ƒD£(‘ŠƒZ·""F—'‰¢‘ –
‰¢“‘gFƒŠ5š#ƒM—~¨s‘Š•'3‘Š–³‰¡‘g 5„5—'Ž5–=•~Šš(5ƒƒŒ„™ƒŒŠÅ>•/ FŸ=‰‹žB •'—~Ÿ‹„sƒŒ„5ƒ ‡5ƒD3 ‰¢Ÿ¢„…•'‘“’‘gƒŒ‘’•'Š‡5‰¡„F‡s˜kˆ’—™£ •'Y¬Š—X’ƒ‘Šg˜'ƒŒ„Fƒˆ“•/Š‰‹—™„ >›5€‚Æ >›s€ E›5‡sˆ’—™¨5•'¨FŸ¡œ
˜~“Fƒƒ„F·"ƒŒ‡5FˆŠˆŠ•'ƒ—'Ÿs˜™ZŽFˆŠ•/ƒŒ•~Š‘ŠšƒZ˜~ˆ’« —~‰¢‘3‡FˆŠ¨s’œ~‰¡ƒŒ¯´—~‡55„X•~•wž>ˆ’—'Š‰‹–.‰‹—™ŠƒˆZ‰‹Å>—™£ F„!‰¡žB’•/ƒŒŸ¡‘’ƒ(„5‘ŠZ‡kƒ¥ƒ ZŸ¢‰¿•'k‘“‘’•/ƒŒŠ‘‰‹—™—/„–.ŠƒÆ ‘Š`Ž5•'>Š› •sg›™•~ÍM„5Æ Ž]‰¢‘­3•Z„5•~‡F•'ŠŠ 5 sˆ“ˆ’•/ƒŒ‘DŸs–mƒ —~†5ˆ“•'šXZ•/’Ÿ¡Ÿ¡œµ‰¡‘“šÌ“F–m‰¡—™‘ˆ­´œFˆŠƒ‡s‡5ƒ¬ˆŠƒ—'‘Š–ƒ„™š(Š—™‰¡„Fˆ’˜ƒ
( (@
Z ,.%/(0 ½² ¥¥#
@$ Z#
0 "
#$
‘Š®`œF—™‘’·"„5Šƒ‘ЁFš…‰¡ŽFƒ3ƒŒ£ Ÿ¡‰¡ˆ¥¨5“ˆ“F•'ƒ(ˆŠœD–m—'5Ÿ¡•'Ÿ‹—B‘=”"Šs‰¢„Fˆ’˜ƒƒ3„sŽF•/‰ ŠIƒ sˆŠˆŠ•'ƒŸ=„™=Ÿ¢•'Z„FŸ¡˜™•~‘Š 5‘Š•/ƒ˜~‘=ƒ—/–kŽFƒŒš#‘ŠƒŒˆ’š‰¢‡F¨k’ƒ‰¡ˆ“—~‘Z„!¸+ˆŠ—/ƒZ–`˜™‘Š F—~Ÿ¢š#•'ˆ+ƒš#—'ƒŒ–­šŠ5¨kƒƒˆ“–m‘ZƒŒ› •/¹’Š 5 s„5ˆ’‰‹ƒŒ—™‘¥ˆ=—'š#–`ƒ•¬š(Ÿ¡¨sƒ„5ƒŒˆŠŽ5‘‰¡›/„F•'˜…„sŸ¡Ž‰¡¨5Yˆ“F•'‰¡ˆŠŸ¡Žœ
š#•'˜'ƒŒƒŒš‘ ¨kƒˆ“‘Z•'£­„s®3Ž;F 5‰¡Ÿ¡‡SŽ…£…š#Áº„;ƒš(•'¨sŽ5ƒŒŽFˆŠ‰¡‘"’‰¡•~—~ˆ’„.ƒM›@•/ˆŠ˜~ƒZ˜™ƒ‘ FŸ¡B•~¯ ˆD5›Œš#¹’ 5ƒš„F‰¡¨k—~ƒˆ"ˆ“š#‘DƒŒ”šF¨k—qƒš(ˆ“‘3ƒ•~ƒZˆ’ƒMZ•/ƒ˜~ˆŠŠƒ•'‘ ‰¡„§/ˆŠ¯ ƒÅ>s F›>‰¢•'ˆ’„5ƒŒŽ…š(ƒŒˆŠƒZ„™˜~Š‘D 5Ÿ¡Z•~•~ˆ`„;š#•'ƒ‡5š(‡5¨sŸ‹œµƒŒˆŠ–m‘"—~•~ˆˆ’•ƒ
‡sˆ’‰¡3ž>‰‹•'Ÿ¡ƒZY˜~¬ƒ¨kސ—>š#—~©XƒŒš‰¢„¬¨kƒŠ5ˆ“‘ŠƒFŸ¡‰¢‰¢‡S¨5£ ˆŠ•~ˆ’œX‰¢‘g Ÿ¢•'‘“‘’‰‹sƒŽ•'‘g•ˆŠƒZ˜™ FŸ¡•~ˆ`¨k—>—~©À›F•ˆŠƒ –mƒŒˆ’ƒŒ„5 ƒM¨s—>—™©k›>—™ˆ`•#ˆ’ƒŒ‘’“ˆ’‰¢ ŠƒŽ¬¨k—>—~©À£
¥Š‰¡š#ƒ –mƒƒˆŠƒ‡k„sƒˆŠƒM‰¡—>¨sŽ.—>›@—~—™©>ˆ‘"ZŽF•~—X„§„F¨s—~ƒ…g¨sZ‰¡—™ˆ“ˆŠZˆŠ 5—BŸ¡”`•'’ƒŒƒ'Ž!›F•~—™„5„FŽŸ‹œ§ˆŠƒ¨™‘ŠœqŠˆŠ•!‰¢ ’‡sƒŒˆ’ސ‰¡ž>¨k‰‹Ÿ¡—>ƒZ˜~—~ƒ©>ާ‘gƒZš#‰¡ŠƒFšƒŒˆg¨kƒ ˆ‰¢ˆŠ£² F·+Ÿ¡—²•'’ƒƒŒ„5–m—~—™ˆg 5•#ˆ“•/‘Š˜'5ƒX—~ˆŠœ~’—~ƒ 5ˆ3„F“˜!5•'‡k„…ƒZ—™„F‡F—~Ÿ¡ˆ“ƒ¬šX’•/— Ÿ
“ˆŠƒF•~ƒZÁ¶ŽSœ…–=›S¨kŽF•—~—]ˆ“Y„FˆŠ5—B—'‰‹”`Ÿ¢g޵ƒŒ—BŽ]”3—™ˆ`¨sƒD—>¹’•' 5—~„™„F©>œ]‰¡‘3—~k•'ˆM„FˆŠš#ƒ¥ƒŒ‘ZƒˆŠ£ ƒZšŠ¨k sˆŠƒ„FˆMƒŒšXސ•w‡5œ²•~‘’Š`•~©/ŠFƒ#ƒ—~‰¡ˆg FMŽ5 5¨kƒ—™—™Ž5©>•'‘¥’ƒ'–m›>—™“ˆFŸ‹ƒ—™„FŸ¡‰¢˜'¨5ƒŒˆŠˆ¥•~ˆ’“œ]5•'•~„q‘Š‘ŠƒŠF‘“‘’ƒ]ƒŒ‘„F•D—™ˆŠÀšX„F•'ƒŸ=—™Š„¬‰¡š#“ƒ]Fƒ•'‘¨k—~Ÿ¡—~ˆ“ˆŠ„F—B˜”`•'ƒŒ‘ˆ
—'‡k–"ƒˆ“£ š#X‰‹Š‡s’ƒŒƒŒŽµˆ¥Ž5Š—…•wœ~¨k£ —~gˆ“ˆ’—~—Bˆ“”ÌˆŠ—B”`•~„™ƒŒœˆŠ‘`–³—B 5”"ˆ’“‰¡F„5ƒ˜¬ˆMš(¨k—™—>ˆ’—~ƒD©>‘M“5 5•'„™„ ’‰¡ŸFŠ£ FƒX‰¡ˆM•'ˆŠ•'ƒ  —™—™ 5„5„™‘Љ¡ŽF‰¢ƒŒ‘Mˆ’ƒŒ‘’Žƒ’š#’Ÿ¡ƒ•/Ž.¹º—~£ ˆ¥Ž5—ƒZŸ¡š#‰¡„5ƒÅ>š( FƒŒ¨s„™ƒŒŠˆM‘›k‰¡‘M•'„s•/޲Ÿ¡Ÿ¡—B•'”`ˆŠƒŒƒŽ²„F—'’— 
¨k—~ˆ“ˆŠ—'—B–m” ´”3š#•~ˆ’—~ƒ#ˆŠƒ‰¢‘D“5’—²•'„ ¨kƒ#X”¨kˆŠ—>‰¡’—~’©>ƒŒ‘"„•/Š"5•'•'D„™œ¬”"—™‰‹Ÿ¡„FŸƒMšX’•'‰¢š#„5•'ƒ'˜'£ ƒ#ŠFƒ¬„FƒƒŽFƒŒŽq–³ 5„5 Š‰‹—™„5‘M—/–3ŠFƒ]Ÿ¡‰¢¨5ˆŠ•~ˆ’œ~£ —~š#ƒX—/–`“Fƒ
=ˆŠšXƒ‰¡•~Å>¨s„5 FˆŠ•~•/‰¢ˆŠˆ’˜~ƒœ~‰¡Ž¬„F› ˜#g—™‡s—~Š5ˆ“ƒŒˆ’ˆŠƒD—B•'”Ÿ‹’‰¢‰¡¨5—~•'ˆ“„5„5•'‘`ˆŠŽ œ¬Šs •/ƒZ—'"“Ÿ¡ 5Ÿ¡5ƒˆŠ•' „Š„s‰‹ŽF•—™Ÿ‹„SgƒM›5—>“‘“F—~ 5ƒM©ÀY› ‰¡„™•'’ƒŒ‘ƒŒ‘’ˆŠ`ƒŒ•~ˆ’„™ž~Š’ƒ¥‰‹ƒŒ—™ˆ• „5¥‘3gƒ—/—>”–@—~©À sg‘’›>ƒŒ—>•'ˆŠ—~„5‘3©ÀŽ ”"› ‰¡Šƒƒ„5’Ž Š‰¢ˆ’Fgƒ ƒD‰¡Ÿ‹Ÿ¡ŸE‰¡†F£­¨s‰¢ˆŠÆ‘’•~ŠŠˆ’‰¡„5Fœ]˜ƒŒ•'ˆ­gˆŠ—™ƒ —>‡s/—~ƒŒ—~©ÀˆŠ‰¡•'›k„’®`‰¡•'—~Ÿ¢•'„5„5‘“Ž‘­‘’‰‹‡s+–mœƒŒƒŒˆ’•wg“ž'•/—>ƒ¥‰¢„]—~“©ÀF’£—ƒ
#
&%
$
('
! "
*)
,+
- .
23
/ 0/1
4
5
6
7
;:
</
=
>
98 @5
A
5
B4
-:
12
C
=
5
&
D4
E
=
?>
@
€‚€‚ss¤•/•/‘"”"•'‰¢‘ˆŠ‰¡ƒŠ“¦F“ƒFšXƒD •'‰¢ˆ’ˆ“„™ƒŒZœÅ> F FŸ¢ˆ’•/‰¡ƒŒˆŠŠÅ™ƒ‰‹—™š# 5„‰¡ƒŒˆŠƒ„~Š‰¡š#“š#‘`ƒƒD–m„™—~“–mˆg—™‘ˆ¥‡5ŽFˆŠ„F—F‰‹ž>—™Z‰¡ˆŠ 5Ÿ‹šXƒš#˜'•'ƒŒƒŸ.„~ލs“š#‘Z—>›—~ƒ“©>šF‘‰¡¨k‘(•'ƒ„5ˆ“ŽF‘“ŽƒF‘“–m‰¡Z—~‡ÀˆŠˆÏ…‰¢‡Fˆ’’€‚ƒŒ‰¡‘’—~“5„§ˆ’•/‰¢gŸ¡ƒŠ‰¢•wƒ‘gž~ŽŠƒF¨k‘DƒD—™šX—™¨5©>•'•~‘„™‘’ϵœ§‰¢‘`Á¶Å™–m–­—~ 5•]ˆ"ƒ‘ŠZ‡5’Ÿ¡ˆŠ‰¡•~—~‰‹‘Šž>„5‘Љ¡‰¿‘Ÿ‹–mƒœ> s˜'‰¢ƒŒ„5„FŽ…˜X•'„5š#•(‘Š”3ƒŒ¨kšƒ—>ˆŠ—~¨kƒ©5ƒŽSψ £
Š—™¨k‰¡ˆ—~š#ˆ“Ž5ˆŠƒB—™—BÏ ƒŒ”‘—‘(‰‹>M•ƒ‘­š#ˆ’ƒŒŠƒF‘’•'“ƒ „µˆ’‰¢ Š/Š5¯¶ƒ•'¨kŽ M—>—~¨sŠF©—>ƒ#—™šX©k’•B›3—~†FŠŽF•/‰¢—>šŸƒ 5„>‘Xšª 5‰¡š(]•'¨s‡sƒŒ‰¢‡FˆŠˆŸ‹œ# F—'–`Ÿ¡’•'—¨k’ƒ…—™ƒ•'—™–mY©>—~#‘ˆ#‰¢“„5 5F‘Šˆ“ƒ!Šˆ’•'ƒŒ„F„s„~—~ Šˆ“ƒŸ‹šXœ²—'•/–I¨kŸgž>ƒZ‰¢‰¢’„F‘’‰¢‰¡š#˜²’‰¢ƒ'„F¨s›3˜—™—~ˆŠ“ˆŠˆ(F—Bƒ”3–m—~Ÿ¡ƒˆ#‰¡Ž²¨s“ˆŠ¨™F•~œ!ˆ’ƒ!œ(•‘Š’5—š#—~ˆŠ¨kƒ’—~š(ƒˆ“ˆX¨sˆ’—BƒŒˆŠ” ƒˆM‘ŠZŠ¨s•'ˆŠ—>‰¡„sZ—™„F’©™ƒŒ—'‘Ž  ›
ƒZ†5 ƃZƒŒ¨™Ž ž>‰‹—™™ 5Ï ‘ŠŸ‹œŠFƒŒ‘’ƒ•~„5޲šX•'„™œ…—'Š5ƒˆ¥Å> FƒŒ‘’Š‰‹—™„5‘š( 5‘’¨sƒ(•'„5‘Š”`ƒŒˆ’ƒŒŽ¨sƒZ–m—~ˆŠƒŠFƒ(‘’—'–m´”3•~ˆ’ƒ•'„²¨kƒ‘Š sY¯
Z•~ƒ„5‘“‘Š‘º”`–³ 5ƒŒŸ‹ˆŠŸ¡‘+œq–³ˆ’ˆŠ—™ƒZšŸ¡ƒ•~Š‘’5ƒŒƒŽSˍZ 5ŠF‘Š’ƒ…—™š(‘’œFƒŒ‘ŠˆŠ’‘ƒ£+šÉÀ 5•'ˆŠˆ“ŠYFFƒŒ‰¡’ˆZƒ›/Z“ZF›@ƒŠŽFFƒƒž'ƒZŽFŸ¡ƒ—~‘Їk‰‹˜™ƒ„FŽ#ƒ‘Šˆœ>›@‘Š—~’ƒŒˆš ‡k—~—~‘“¨™‘’ž>‰¢¨F‰¡—~Ÿ¡œµ 5‘Š“Ÿ‹œFƒ•'ŽF„Sƒ« ž'ƒ¨sŸ‹—™ƒ"‡sŠƒŒƒˆŠ‘Š‘D’ƒŒš(Ž( 5—™‘’ˆ@(žw‘’•'ƒŸ‹ƒ‰¢Ž5©!•'“’FƒŽ ƒ
”"‰¡Z‰¡« ‘Š5‘“—~ 5 F‡5"‡k“—~F‘ŠƒƒŽ•'„s’—]‘’”3ŽFƒ—kˆ“£ ‘Z›5‘Љ¢„5 ƒD“FƒˆŠƒD”`—™ FŸ¢Ž…¨kƒ„F—]”g•wœ¬—/–©>„F—B”"‰¢„F˜X”FƒZ“Fƒˆ¥ŠFƒ‘ŠœF‘’Šƒš_‰¢‘ŽF—~‰¡„5˜]”5•/
“Ÿ¡‰¢F©/ƒ²ƒ·"ˆ’§FƒŒƒÅ>—~ F•~ˆ‰¡šˆŠƒ¨FM±š#‰¡˜~;ƒŒ 5„~‰‹›S“Š‘Z‰‹”3ƒŒ£ ‘`ƒ#Áº—'‡s„5–=ˆ’‘’—™‰¢Š„>‡sƒ–m•~—™—~Ž ‘’ˆ“ƒ(šX—'Š•/–FŸ.ƒ]•'ˆŠ‘“ƒ 5©™Å>‘Љ¡ F„5ƒ(‰¢˜qˆ’—'ƒŒ–­‘Šš#—/Š–mƒ5´„™ƒ#”gŠ•'‘gŠƒˆŠ•'ƒ‘ŠˆŠƒMƒŒ‘“„F¨5‡k˜'ˆ’ƒ‰¢—™„F F‰‹ƒZk˜~ƒŒ™ˆŠ•/‘(3’‰¡’’—~—X—;„µŠ 55Ÿ¡•~‘ŠƒMƒ²„F‘“˜~•! 5 sˆ’•/–m–³—™˜'•'ˆŠƒ(ZšXƒ—/•'¨™–­Ÿgœ“‘“F•'‡kƒ’ƒ’®3ƒŒ‰‹šXk•/Š‡FƒZ•/Š˜'’‘"—™‰¡—~Šˆ’„*—#œ™¯¶–m°Ÿ¢—~•'•'ˆ“„Fš#ˆŠ˜™’ 5‰¡•'’Ÿ‹•/‰¡‰¡—~˜~ÊZ„ƒƒ
Š•wƒžB‘Š•'‰‹Ÿ¢•'ŽF¨Fƒ‘ŠŸ¡ƒD‰¡˜~‰¢„§„>–mš#—~ˆ“ƒZšXŠ5•/—>’‰¡Ž —~„µ´®`•'°`¨k
±—~ F“£+•X€ –³‰¡ 5Š„5 Z’®`‰¡—~°`„S± ›.•~„5Æ Ž”Fˆ’‰¡› ’ƒŒg‘¥ÍM‰¢„>Æ –m—™ˆŠFšX›+¤¥•/ŠÆ ‰‹—™„²5›ŽFgƒ‘“‰¡Z„ ˆŠ‰¢¨F‰¡¶„5›+˜¬“FŠƒ¬Fƒ(’ƒŒ–³‘’ 5Š„5ƒˆZ’•~‰¡—~„5„S•/« Ÿ¡‘œ>ÊZ‰¡„5ƒŒ‡s‘ F“ŠF‘ƒ ›
“‰¢„>F–mƒX—™ˆŠƒšX„™ž>•/‰¡ŠˆŠ‰‹—~—™„s„š(ZƒŒ—~„™„5‘Š’‰¢‰¡„Š F”ŠƒF‘"‰¡Y•#q’ƒŒ‰¡‘’"—™‘“‡s‡sƒŒƒŒˆŠ•'‰‹’kƒŒZ‘Z•'›.’•~‰¡—~„5„S޵›F“”F5ƒ¬‰¡YˆŠ…ƒ‘“Z F•~Ÿ‹“„‘¨kŠƒD5•'‡5Dˆ’—FŠFZƒƒ#‘“‘’–³ 5ƒŒŽ¬„5Z’’—]‰¡—~‡5„§ˆŠ—F‡5Ž5ˆŠ 5—FZŽ5ƒ 5ŠƒŒƒ‘Z‘Š"£XZ·"•'F‘ŠƒƒX‘`”–m—™ˆŠˆ`‰‹Š“’ƒF„ ƒ
‰¢šX‡F·"Ÿ¡Fƒš#ƒ(ƒ®`„™°3’ƒŒ±ÈŽŸ¡‘’•~—'„F–m´˜~”3 5•~•'ˆ’˜'ƒ~ƒ£ ‰¡‘¥Å™ 5‰‹Šƒ‘’‰¢šX‡FŸ‹ƒDŠ—]Ÿ‹ƒŒ•'ˆ“„S›5•'„sŽŠƒ‘Š’ƒŒˆŠ‘"•~ˆ’ƒD•/Ÿ¢ˆŠƒ•'Ž5œX–³•'š#‰‹Ÿ¡‰¢•'ˆ"”"‰¡Š…Š5ƒ•' Š‰‹ž>‰¡´œ
—'‘Š—/–@–mŽF´”gƒŒ‘’•'‰¡ˆŠ˜~ƒ „5¯´‰¡‡5„FˆŠ˜#—FŽ5’ƒŒ 5‘’ ‰¢„F˜…•'‘Š ƒ—~‘šX£­Æ‡5•~ž'„Fƒ‰¡ˆ`ƒŠ‘5£Xƒ·"‡55•'ƒ]‘Š ˜'—~#•'Ÿœ'5ƒ•'•~‘DˆŠ‘•'›>Ÿ‹Š”gF•wƒœF•~‘ F¨kŠ5ƒZƒŒ—~„ˆg5’—!•'‘"‡5¨kˆŠ—FƒZƒŒŽ5„ 5 •~ƒ]‘Š‘ŠZ—F—~ ˆ“‰¢ˆ’•/ƒŒŠ ƒZެ›+”"ƒ ¾¬‰¡Š…‰¡ƒ“„™5ˆ’ƒ‘ŠƒD—/–mš#´”g•/•'¹º—~ˆŠƒˆ
“Šƒ5Y•/5„5‘“‰¡ 5Å>‡5 F‡kƒŒ—~‘ˆŠ5Š‘=•wž~ŠFƒƒg„F —'—™(š#¨s‡sƒ•'ƒ„™„¦œI 5« ‘=‘Ї5ƒŽ¦ˆ’—FŽ5‰¡„¦ s •~Š„™‘œµ£=·=—/—–Š“FFƒgƒZ‰¢¨sˆ#ƒŒ‘’‘’—'@–m—/´”3–5“•~Fˆ’ƒgƒ¬•'ŽF Fƒ“ž'Fƒ—~Ÿ‹—™ˆ‡5« ‘@š#©>ƒ„F„™—B”"‡5Ÿ¡ƒˆŠŽF—F˜~ ƒ'ƒ›‘“‘Š–m—~ƒ‘ˆ“š#›=¨5•' FŸ™#‘“‡kŠƒ5 ƒ‰‹kˆŠƒ•/5’•w‰¡—~ž'„ ƒ
“•'sFŸ‹•w”gƒZž'‰¢•wƒ`ˆ@œF•¹º‘­—~ŽF¨k¨sƒƒZ‘Z‘ŠƒŒ›F‰¢„ˆ’•'ƒ`„sŽF–mŽ—~ƒŒŽFˆ@ 5‰¡•‘“ 5•/š#•'ŠƒŸ‹—™Ÿ¡Žœ]ˆ’ƒ3’ƒ‘’ƒšX“‘ŠˆŠ’‡F 5‰¢„FŸ¡Z—B˜#Šœ 5—~ˆŠ‘ŠˆŠƒœ>˜~Ž(‘Š•~’•'„FƒŒ„5šX‰‹ÊŒŽ(•/•/Š’š#‰‹‰¢—™—~„5ˆŠ•'‘ƒ`‡5‰¢‡5„—™ˆŠšX—~‡F•~Ÿ¢‡F•'YŸ‹ZFƒƒ'ƒ’£ƒ"‘3€‚•'•'‡s„sF‡5ސ‰¡ˆ’Ÿ‹Zƒ—™ s•'ŠˆŠY5ˆŠSƒƒ£.„™Š·=gƒ—M‘Š•'’ Fš(ƒŒŠˆŠ—~ƒ‘3ƒZšX•'ˆŠ•/ŠƒŠ5‰‹ s—™‰¡‘‘Š„¬ 5„F’•'ƒ—>ƒŸ‹Ÿ¡—~ŽSœ]Ÿ¡›/‘Å>“›F FFŠ‰‹ƒgFŠƒƒMZœ•/˜'Š•/—>ƒZŸ¡—F˜~”g—~ެ•wˆŠœ>•/œ~‘¯
‡s‘ŠƒZ•'ž~ˆŠƒ’ˆ“‰¡’•/‰¡ŸF—~‡5„§ˆŠ—/š#¹ºƒŒƒZŠ5Š‘ —>Ž¦Æ”3€ •~‘D‰¡¶„™›~“‡5ˆ’ˆŠ—F—BŽ5ž> 5‰¡„5Zƒ˜Ž;‰¡Š•'‘­ž>‰¡—~•~„F¨Fƒ‰‹Ÿ¡‰¡—/´–"œŠ‰¡F„]ƒŒ•D‘’ƒZ—~ šX—~šXš#‡5ƒ•~ˆ“„F ‰¢‰¡•/ƒ‘Ÿ5›@‘Š—/•~–m„5´”gާ•'”3ˆŠƒ3•~‘DŽ5ƒZƒž'šXƒŸ‹‡F—™Ÿ¡‡5—Bœ'š#ƒŒƒŽ§„™‘Š 5ƒ„™ ž>ƒŒ‰¢‘Šˆ’‘’—™–³„5 Fš#Ÿ¡Ÿ‹œƒ„™‰¡Z„ £
/
93
-
1
*61
*
63
) @¥ ÐD@
Z( "
¬¼
–m—'¤ —™–ˆM’•/·+ƒŒŠ‘’ƒŒƒZ‘’˜' —™Z•~ˆ’œ™‘’ƒƒŒ¯´„5‡5‘]ƒ•'–mˆ“ˆŠ—~•/’ˆ’‰¡’‰¡—~‰¡Š—~„.5„Xƒµ£(Š·"–³ƒ 5‘ЁF„sƒ# ‘Š’‡k—~‰¡—~ Fƒ„.Z“‰¿‡5£ À FZ•/·"Š‡55‰‹—™ˆŠƒq—F„Ž5‘“‰¢‡s 5‘gƒŒZ‰¢ƒ „‰‹Žµkƒ Z¨™Àƒ•'œ!Œ’‰¡ƒZ—~†F„‚•XƒZZ‡5 5—~ˆŠ’„™—'‰¢„FŠ˜™•'˜ˆŠ‰¡•~„5“𠑐FƒX´””`’ˆ’ƒŒ— ‰¡‘’’ŠšXƒ‘“„•/‡s‰¢‰¡ƒŒ„‚„ ‰‹‡5•k•'Z•'ˆŠ‡kŠ’‘‰¡ƒ—~› „q‰‹“kF‡5ƒ
•/ˆ’—~’‰¡˜~—~ˆ“„•'š-@•'‰¢„F‘"˜™•! 5$•/#&‘Š%˜~ƒZ ƒ
•~•wžB„5•'Ž ‰‹Ÿ¢•'ŠF¨F
ƒŸ¡ƒ'–m—~ˆ"()“F*+,ƒ Š-ƒ!.‘Š$¥#&%‘Šs‡k˃ZŠ‰¿FÀƒZœ •/Š‰‹•~—™ˆ’„…ƒ!Ÿ¡Ž5•~ƒ„F‘“˜~Z 5ˆŠ•'‰¡¨k˜'ƒƒ~Ž ›5•/¨kŸ¡ŠƒZFŸ¡—B—™”& F˜~‰¢…„>–mƒ—™•~ˆŠˆ’šXŸ¡œ•/Ÿ¡ž~Ÿ¡œ'ƒˆ“£ ‘’‰¡—~·"„sF‘3ƒˆŠsƒ²•wž'‰¢ƒ‘¨k‡5ƒZˆŠƒƒ„‘Šƒ„™”’ˆŠŸ¡‰¡œ*’’ƒŒ„5„²— •' „5—™Žš# 5‡5‘Љ‹Ÿ¡ƒƒŽ ˆ
–³”3g sƒD„5ÍM‘ŠÆ Šs‰‹•/—™Ÿ¡>„²Ÿ.›Sš#—/Ɩ•~€ “©/FƒDƒ•'Ÿ¡¶‘“‰¡£‘“¨s 5ˆŠ·+šX•~—]ˆ’‡Fœ‰¡’Ÿ¡Ÿ¡‰¡‘’ 5—~œF„5‘Š‘ŠŠ‘"’ˆ“ƒŒ•/•~šŠ¨sƒ—™£ FŠ¤g5gƒ¥ŠFžBš#•'ƒƒZˆŠ‡sŠ‰¡—~5ˆ’ 5—™—>‘‡sŽ.ƒŒ›k‡kˆ"”3—'¨s‰¢ƒ„™ƒŒŠŽF5‘ƒ•wž'”ž>ƒZ‰‹F—™Ÿ¡—~ƒˆ`ˆŠ‡—'ƒ–@•]““FŠFƒƒƒ‘Š˜~¥‘Љ‹œ>‘“ž~‡s‘Šƒ’ƒŒ„²ƒŒ š…‰‹ˆŠkƒ£ ZÅ>•' F’‰¢‰¡ˆ’—~ƒŒ„…š#–mƒ—~„™ˆŠ‘ŠF•'ƒ ˆŠƒ3„F—™—'ˆŠˆŠ—B‘Š”g‡k¯ ƒ3Z‰¿—>À—™/© ›
$
&+
=
;
6/
,>
/10325476893:<;=2?>@:ACBD6
“‰¢®3ŽFFˆŠƒŒƒXƒ„~•'‰¡Š„s’‰¿‰¢k‡5„Fƒ F˜ŽS›kŠ•'FŠ„sFƒ²Žqƒ‰¢„5Š‘ŠƒŠ‡5‘Š•' F’’ƒŒƒ]ˆ‘’‘Ї5ƒŒ‡s•'•'’ˆŠ‰¡’—~ƒX‰¡’„ ‰¡“—~5‘Š„s•/Š‘"•'DˆŠ‰‹•Š¥‘XIƒ‰¡„™”"Z’D‰¡—¬Š ŠŽ5F‰¡‰¢ƒ]‘³ŽF¹º—'ƒ¨k‰¢„™ƒ„™Š5‰¿•w–m‘’œ>ž>ƒ‰¢‰¡Š„F—~‘˜;ˆ—'—/Š–@–3FžBƒ!ƒ•'•~Ÿ¡Ž5 FY‰¡!ƒŒ‘Š‘Z’–³‰¢›À 5„5Z„s •'¬ Ÿ‹’Ÿ¡ƒ•'‰¡—~ŽL’„.“ˆ’!.£X‰¢*M¨5FN¤ F("(.–mŠ’)ƒƒŒ(Y‘ˆËÀ›3Š•F•/ƒDZŸ¡Ÿ‹•/ƒŒ˜~ŠEŽ—~ƒZ•'˜~!"Ÿ.—~FGˆŠ‰¡‘HœHIJŠs5%•'•'K)‘M#&¨s(ƒ›g•~ƒƒY—'„ –
žBZŸ¡•'•~Ÿ¡Áº‘Š F„‘­ƒM‘Љ¢˜'F„…ƒ—™„5Š FƒFŸ¢ˆ“Ž#ƒ•/ˆŠŸEZ›ƒŸ¡•~‡s‰¡‘Š„sˆ’‘"ƒŒ‡5‘’‘“ FƒŒFŠ„~—~‘ 5•D•~Ÿ¡Ž…„5‘ŠŽƒZ¨s­ƒD‘Š—/ŠƒŒ–I•'Å>žw’ Fƒ§•'‰‹Ÿ¡žB 5 •'ƒ—~Ÿ‹‘ƒŒ„s„~ŽF“35‰‹Š•/–m‰‹—™—™`ˆg„55‘…’•wƒž'Z‘Šƒg’•'‰¢„Š„F5˜¬ƒ¥• Iƒ‡5‘Š•~ sš#ˆŠ‡kƒ"—~•;‘Šƒ ƒIƒ–³‘ s£  „5` Š—~‰‹„#—™„SŠ5« ‘²ƒ"¨k–³ 5ƒ„5sZ•w’ž™‰¡‰¡—~—~„Sˆ« ‘­‰¡„s¨kŽFƒ‰‹5ž>•w‰¢Ž5ž>‰¡ 5—~•'ˆŸ‹›~Ÿ¡œ ‘Š—D—~ƒˆ•~Y‰¡„
Z5—~—Bš(” ¨FŠ‰¡5„sƒ•/’ŽF‰¡‰—~Iƒ„#ˆŠ”"ƒ‰¡„™Š]ZƒŒŸ¡•~•'‘ŠY‘Ё#ƒ‘—'“‰¢F„™’ƒƒˆˆ“£•'¤"Z–m’”ƒŒˆ­Fƒ“F„#ƒ¥Š5•/ƒg’–³ƒ 5˜'„5—™ ˆ’Š‰¡ƒ‰‹—™‘„X5ƒ•w†Fž~ƒƒ¨s Fƒ’ƒƒŒ„¬‘Z¸=‡sŠ•'FˆŠƒ"’‰¡Š’ƒ‰¡‘Š—~’„FƒŒƒŒˆŽS‘Š›'‡k“ƒFZƒ¥‰¿kŠƒƒ‘‘Š’žBƒ•/ˆŸ¡‰¡ŠŽXFƒŒ•~„¬„5Ž#‘Їk‰¡„™ƒZžB‰¿•/kŸ¡ƒ‰¡Ž ‘
‰¢Z„5—~‡5š( 5¨F¥‰¡„s•'•/„5’Ž…‰¡—~‘Š„.Š•/£ Šƒ —™š¨F‰¢„5•/Š‰‹—™„5‘›5•'„5Ž…Š5ƒˆ’ƒŒ‘Š 5Ÿ‹Š‰¡„F˜X—™ FŠ‡5 5Š‘•~„5Ž‘’“•/’ƒYs•'„F˜~ƒ‘gŠs•/"—FZ 5ˆg”"‰‹“ƒ•~Y
13
‰¢šX„5•~Z·"Ÿ¡„™ 5 sFŽ5•/ƒ…ƒŸ¡Ÿ‹‰¢•/œ„>Ÿ¡–mŸI–³—~ˆ’ ˆ“—™—~šXš š(•/¨F’“‰¢‰¡F„5—~ƒ„;•/ŠZ‰‹‡s•'—™ˆ’’„5—Fƒ‘˜'Ž5—~—' 5ˆŠ–.Zœ™ƒŠ¯¶Fަ‡sƒ•'•~ˆŠ‰¡‘(„5’‰¡‡s•q’ F‰¡—~3ˆ’„ƒŒ•~‘Љ¡„5 5„>ެŸ‹–m(—™‘ŠˆŠ—/ŠšX–•'’•'Šƒ5’‰¡Z‰¡—~‘X—~„S„5•'›ÀŽ5„s¨5‰‹•/Š FŸ¡‰‹¥œ>—™‘Š„¬‰¡‰¢‘ ‰¢Ÿ¢‘"Z•'•~‘“–³„¦‘’•~ƒŒˆ¥‘Z¨kš#£ƒ…·"—~ 5ˆŠF‘ŠƒƒƒŽ¦‡5’ƒˆŠ’—>‘Š—q`Žs 5Ž5•' ƒ Š‘Šk‰‹ƒž~„F‘`ƒƒ…Z•'•'’„5„ƒŒŽ‘’¨s#ƒƒ ZÀƒ‡5•~Œ‘’ˆ’ ƒŒ—FŠ‘Ž5‰‹ž~ s“ƒ5ƒ’•/Ž— 
s‘“‡k‘’ƒƒ •~‰‹k„•'•/’ F‰¡Š—~—~„šXŠ•/sŠ•/ƒ"އ5’ˆŠ—>—B—~ž™Ÿ ‰¢£3ŽF€‚ƒŒ‘3F•Xƒ¨F„µŸ¢ F•XƒŒ’‡5—>ˆ’—'‰¢„™Ÿ=3‰¡‘–m—~•wˆ"žw•'F‰‹—BŸ¢•'”‚¨5“Ÿ‹ƒ~F›5ƒDŠžBF•/ƒŸ¢ F‰¡„>ƒ–m‘g—™‰¢ˆŠ„šXŠ•'F’ƒ‰¡—~„…•/‰¡’‘¥ƒ˜'”—™ˆ’ˆ’‰¡‰¡’ƒŠ‘3ƒ„•'ˆŠ‰¢ƒ„!Z•]—~š(‘ŠŠ¨Fˆ“‰¡ 5„5 ƒ“Ž 5ˆ’’ƒŒ—#Ž–m—~’ƒŒˆ“š‘’
Šƒ‘Š sZ‡5•~‡s‘’ƒŒ—™‘­‘’ƒ#–m—™Šˆg5Šƒ FƒMg—™–³ sˆŠˆŠ„5—B ”gŠ‰‹¯ —™g„S—>£ —~©]–³ 5„5 Š‰‹—™„µ5•~‘´”`—‰¡„5‡s FŠ‘›.• "% % ##•'„5Žq• "K #/£·"FƒX¨s—>—~©~¯¶‰¡Ž
Ÿ¡s¨kƒ•'—>•~‘—~‘’D©>•'‘M“5ŠŸ‹ƒŒ5ˆŠƒZ•'ƒ¬ƒ¬‘Š"š(Z´•'ƒŒ”`’šƒ—¬¨k˜'—~ƒ•/ˆMˆŠ‰¡Šƒ‰¢ƒZ‘D‘˜'¸D—™Zˆ’ 5Š‰¡Fˆ“ƒˆŠƒ‘ƒ¸„™š#Š’5Ÿ¡ƒŒœµƒš¨k¨s¨k—~—>ƒˆ“ˆD—™ˆ’©k—B´œF« ”"‘"‡k‰¢´ƒ'„FœF›˜s‡k£(ŠƒF€qƒ•'„5ƒ¬š(Ž‘ŠƒŒ‰¡ŠšŠ•~‘ˆ’¨kM‘’ƒ“ˆ”"•/« ‘“‰¡ 5ŠŽF‘"ƒZ‰¢ŠŸ¡„‰¡5„sƒ]ŠÅ™F 5—~ƒƒ F„5ŠŸ¡‰¢ZŸ‹¨5‰¢œq„FˆŠƒ]•~‘Šˆ’Š—/œ~•/–g£`“ 5•…·"‘F’›@ƒƒ(•~‘Š„5š(ާ‘“ƒŒ‡sšŠƒŒF¨k ƒ‰‹ƒkˆ’„™Z¯E s‰¢•'Ž²š’‰¡5—~¨k„µ•~ƒ‘ˆD–m—~•/—'ˆ –
“Fƒ‘Šƒg´”`—‰¢„5‡5 F“‘Z›~˜'‰¡ž™‰¢„F˜—~„FŸ¡œŸ¡—'˜~‰¡•/Ÿ>„5•'š#ƒ‘@–m—™ˆ@ŠFƒ•/’ƒ˜'—™ˆ’‰¡ƒ‘@•'„5Ž(Š5ƒgZŸ¡•~‘Š‘Šƒ‘@”"‰¡ŠF‰¢„(ƒ•'Y#Z•'’ƒ˜'—~ˆŠœ'£
=
-/.0.102354
E
!#"%$&#"
"
')(*$&+ ,
-/.0.1027698: ;
35<=>?@354
A ;;BHI6 CD?E3@> JKAG6*;F 4 .0.1.0.1
A ;KLM; A ;K<NJ; F .0.1
O 6P>Q6*CDH A A F
F .0.0..1%1J>
RD=>;J3@?51> ;4?@; .CD6
F .0.1%<N.<2J3 F JCN?5>Q6*3@<DB
A
ST;U F ; A 2354 F
ST;U F ; A 276V8D: ;
35<=>?@354
AWICN;B<DCD3@. ?E> A
JRD35?54 A
: 3@=35?@;B;4
XY;?@3@<#Z0CN;A <DJK8
<N.<D;
U[35<D. A
U\>
W9.
]GCNU F ; A 2.C6YA ^_<CNU F ; A .L F .0.1H`JC AaA ;<06*?b8 F . aA A .cd;4#e
<N.<D;
>Q6f?@;>HI6hgiD?@;HaHf6*RN><U\>Qj3@U)CNU
U\>Qj3@U)CNU
•'t,’ “Áºˆ’u„5‰¢¨5‡s" F. FKŠ(ƒC%‘‘ŠËƒ>Z–m’—~•'‰¡ˆˆŠ—~ƒ3„;•!YsZ˜'•'•'‰¡ž'’„Fƒƒ˜~˜'„§ƒ—~•'¨kˆŠ¨5‰¡—>ƒŸ‹ƒ~—~‘D›/©qZ‘’•~“—~•/„;ˆ’ƒZ¨sš#¯¶ƒ…¨sƒ•'š(‘’‘Š“¨sƒ•/ŽƒŒŠ‰¡ˆZ]•'›’“—™“Fˆ’ˆ‰¢ƒZ¨5Y‰¢ˆ F5Š•~žBƒ„F•/‘˜'Ÿ¢Ë/ FƒŒŠƒŒ•'F‘¨FƒŸ¡‰¡ŽFƒ'ˆ—µl£ žB•'„5kŸ¡—' F% ƒŒ%‘Y•'59ˆŠ•~m-ƒ3„F#šX˜'ƒ~•'•'£1„s‰¡„™oŽ Š•' nF‰¡„5$Qƒ(Ž›q-¨™p .œK “*+9F# m-sƒ" r(‘’ œF.•'‘Š@ˆŠ’ƒ¬!QƒŒmBšÌ‘’›“•'•/•'Š„5„5‰¡ŽŽ 
šX•/•wŠœXƒZ˜'Y—™5ˆ’•'‰¡ƒ„5‘g˜'‰¢ƒ¥„•~Š‘­5•ƒ ˆŠƒ‘“ƒ F‘“ FŸ¡Ÿ¡—/–.‘ŠƒƒZZ†F’ƒ‰¡—~Z 5„…’—/‰¢„F–˜Š5“Fƒƒ’ƒŒ–³ 5‘’„s ‘Š’‡k‰¡ƒ—~Z„.‰¿£k·"•/FŠ‰‹ƒ—™‘Š„SŠ›s•'”"’ƒ ‰¡¯´Š¨5!•~Z‘’ƒŒ—~Ž#„5Ž5•'‰‹’Š“‰‹ˆ’—™‰¢„5¨5‘" FŠŠƒs‘3•/Z•'Ž5„ƒ‘“•'Z‡5ˆŠ‡k‰¡¨kƒƒ•~ˆ­F•/—B˜™” •/‰¢Š„]Fƒ•'œ ‘
Ys•'·"„FF˜~ƒƒZ•~ˆŠ‘"—~•#‘“‘@ˆŠ‡sƒˆ’‘“—F FŽ5Ÿ¡" 5—/Z–@ƒ—/†F–IƒŠF Fƒ¥’‰¡‰¢„5„F‡s˜X FŠ­FZƒM•'–³’ sƒ„5˜'—~ŠˆŠ‰‹‰¡—™ƒ„S‘£ ŽFƒ À„Fƒ‘“Fƒ"ƒ„™Š‰¡ˆŠƒ‡s—~’ƒŒ„~Š‰¡•'Ÿ5‰¢„5‡5 F­‘“‡5•~ ƒ3–m—~ˆŠƒ‘ŠZ•~‘’ƒŒ‘Z£
Ék‘“‡k—~ƒˆ` Š‰‹kFƒ •/g’‰¡—~—~ˆ“„ˆ’—BŸ¡”g•~„F¯ g˜~ s—>•/—~˜'©ƒM‘“‡k‡sƒƒŒˆ“ š(‰‹k‰¡ZŠ•'‘"’Z‰¡—~Ÿ¡•~„S‘Š›>‘Šƒ“F‘3ƒŠˆŠ—#ƒ¨k•~ƒˆ’ƒ •'/„5† „5B—'† Š•'w’† ƒŒ/ެ† %”"v‰¡Š1K (("$‡sK)—™#&!.‘БР#&‰¡¨5%GŸ‹ƒ(­‰¡—™„5ˆ‡s F* #_" # —~ (`š(“¨F5‰¢•/„5"•/ŠˆŠ‰‹ƒ—™Ž5„5 5‘ZZ£ƒ·"“FFƒƒ
g„>Z—~ 5—>š(š(—~©~¨F¨s¯¶‰¡ƒŒ„s´ˆ¥œF•/‡s’—'‰¡ƒ²–­—~„s ”"—™‘M‰¡šŸ‹ŠŸM5¨F¨k•'‰¢„5ƒq•/•'Š‘“‰‹ˆŠ >—™ƒ¬¾¬„5ŽF‘ ƒ‰¡“ƒÀ5„™„F•/’ƒŸ¡œ*ާ•'‰¢ˆŠŠ„§ƒƒ‘Ї5’ŠƒŒFˆŠŽ—FƒŽ5‘Š”" 5‡k‰‹ƒ“ƒŒZ‚ŽS‰¿k£¥•¦Ék•/‘Š—~Š‰¡‰‹ˆ„5—™˜'„Sƒ Ÿ¡†5£…ƒµ•'·"šXš#5‡Fƒ‰¡šŸ¡‘(ƒ'›À¨k ƒŠ—~5ˆ’ 5¯¶ƒŸ¡‰¡Ž;ŽS’›ƒŒ¨k‘’ˆ“ƒŠ•/ƒ“•'ˆFšXƒ ˆ—™•wš#œŠ5‡5Ž5•~Ÿ‹ƒ‰¢„‘Š 5‰¢ŠŽFƒFާƒ(ƒ Š¨™5œq•'‡FaŸ¢•'v •'„!Z‰¡w‰¡„F„™† ˜²žBB•/†“Ÿ¡F‰¡Ž ƒ ˆŠƒ‘ŠŠˆŠ‰¢ ’‰¡—~„
>±!ƒš¨kƒˆ’¯¶´œ>‡kƒ v ˆŠƒZ˜™ FŸ¢•'Yˆ w ƒZŸ¡‰¡„sř 5ƒ„5Zxœ v „5—~„F[ƒ w 5š(¨sƒŒˆº¯¶—~ Fh v̄F—~„Fƒ
—™“F„ƒgŠŠF5ƒˆŠƒZ‰¡„™ƒ"žBZ•/Ÿ¡•~Ÿ¡‰¡‘ŠŽµ‘Šƒ ‘@Ÿ¢•'—/‘“–À‘"ŠF—/–ƒ g“—>•/—~“©~ 5¯E‘´œFZ‡k•'ƒ'’ƒ£"˜'¤¥—~ˆŠ‘œ'•¬£=·"ˆŠƒF‘“ƒ" FŸ‹•'„5›s„F“—~5Šˆ’•'ƒ’ƒ‰¡—~’„5ƒŒ‘’‘“•'‘¥ˆŠ”3ƒg—~ŽF 5ƒ‘“Ÿ¡ŽZˆŠ¨k‰¡¨kƒƒŽ(˜'ƒŒ‰¢„F„(ƒš#ˆ“•/—~ŠˆŠƒƒgŽS›ÀŽFƒZ —™“•/ˆŠ‰¡ˆŠŸ5ƒ‰¡‘“„ ‡s—™3„5ŽFÍD‰¢Æ„F˜X’¶— £
A5
1
(1
1 :
=
D
14
žB•'Ÿ¡·= FƒŒ—X‘Z˜'£ƒÉk„5—~ƒˆgˆ“•/ƒ ’†5ƒ•~š#•'Z‡5Š 5Ÿ‹ƒ~•'›FŸSŠ’Fƒƒ ‘Šgƒ‰¡Z„sŸ¡‡5‰¡„s FřŠ 5‘3ƒ–³„5ˆŠ—~ZšœZ“•'F’ƒDƒ˜'Áº—~„5ˆŠ‡5œI 5« ‘gZŸ¡ƒ•~ ‘ŠŠ‘Š‰‹ƒ—™‘g„S›F —™ƒ F•~YŸ¢Ž¨kZŸ¡ƒ•~‘ББ3‡kƒ‰¢‘"Z‰¿•'k„5ƒŽ„F—~•'Š‘3•'’–mƒ—~ސŸ‹Ÿ¡—B”"”‰‹“‘Z¸ •#ˆ“•'„F˜~ƒ—'–
ƒZŸ¡‰¢„5Å> F„Fƒ—™„5„FZƒ œ 5£ š#šX‰¢•B„F¹º—~—™ˆˆ 5F££ #£‹£‹££ s£ ¨˜~kƒƒZ„F´·"”3ƒŒFˆŠƒZ•'ƒ!ƒŒ’„ ƒ]„5—'‘“sŠ‡s•'£ ƒŒ’ g‰¡‰‹—~k•~„ ]„5މ¢‰¢š#„5‡5‡5k FŸ‹£ ‰¡(ƒ5‘]žw›/•'“•~Ÿ¡5 5„5•/ƒŽ#¬‘–m•;—~ sˆh‘’‘“‰¢ „F F˜²‰¡F Š.%•~Š¨F5K Ÿ‹ƒƒ²‘Š5ƒžB£ •'ˆŠŸ¡•~M F„Fƒ•'˜'„5ƒŒ–mŽX—™‘Z£ˆX˜™ˆ’ŠƒŒF‰¢•/š(ƒ ’ƒŒ‰¡@Ÿ¢ˆZ•'%£@ˆ·"ˆ“]F•'ƒ„5Ÿ¢˜'•'ŠƒXƒ‘“‘Š‘X‰¡­„F‰¢‘Š–m‘ ‡k—~ˆ“ƒš#Zs‰¿£ À•'’Z5‰¡•/—~›Š„;–m‰‹—™—™Z„]xˆ —~‡5 FˆŠŸ¢#ާ—>Z%¨sƒK]‘“ƒ…‘’•'—™‘Š„™ˆ@ 5œ>‡s”`Š‡F—™5Ÿ‹ F‰¡‰¡„FƒŸ¡ŽŽ˜
–m‡s—™•'ˆˆŠ’“‰¢FZƒ FŸ¢•'—~ˆ­ŠF–mƒŒ—~ˆˆ“šX‰¢„5•/‡5g F—/#–@ZŠ•/FŠƒMƒZ˜~‰¢ŽS—~« ˆŠ‘g‰‹ƒŒ“‘Z5£²•/"·"•~Fˆ’ƒ ƒM3 5‘Š—>ƒ—™Ž…©'¯¶¨~´œœF‡sŠƒ¬FƒM•~Ÿ¡„5‰¡Ž¦¨5ˆ“•'±²ˆŠœ'ƒŒš£·"¨kƒFˆ’ƒ ¯E´gœF—>‡k—~ƒ©~ˆ“¯¶•'‰¡Ž „F˜~ƒŠ‘D•'Š”3 5—~‘g F‰¢Ÿ¢‘"Ž;• ŽFgƒŒ‡s—>—'ƒŒ„5Ÿ¡ƒŽ;•~„¬—~„§žB•/“Ÿ¢F Fƒƒ
–m —™ˆF 7ƒ#_•' Y ( Ÿ¢£•'¤¥‘“‘›. •'—™„5ˆŠŽFŽ ‰¢„F˜M s’š—D¨k“Fƒˆ’ƒ¯E—™‰¢„> F–mD—~ˆ“5šX•'‘•/ŸsŠ‘“5‡kƒ¬ƒˆŠ•~‰‹k„F˜'•/ƒŒ’‘ ‰¡—~ „.›'gŠ–m5—~ƒ"ˆ žw•'%Ÿ¡ 5ƒ › —/–S ©£‹‰¢£]‘ © s"›~–m¨5—~ 5ˆ FŠFƒ"*M"FNŠƒ()‘Š ’ƒŒBˆ›=š#•~„5‰‹˜™Ž ~­© ”3g•~–m—~„~ˆ
Š—Xžw•~ˆ’œ©]’—]Šƒ‘Š"ŠFƒ‡5ˆŠ—'˜™ˆŠ•~š š(—™ˆ’ƒM“F—~ˆŠ—~ F˜™FŸ¡œ'£
=
8 8 8 8 781 81 ?8 78 =
?
<:
D
=
;
!/
/1032 2 9
: ;=2 >@: ACBD6
¥•~„5ƒŽ;‘“ F‡5Ÿ‹“•~‘Dˆ’ŠŽF‰‹ƒŠ‰‹‘“—™Z„FˆŠ‰¢ƒ¨sŽ…ƒX¹’Š 55‘Šƒ#—™Ÿ¡‰¢ F©/Šƒ¬‡s“ FFŠƒ‘•~‰¢„5„5‡5Ž F“‘’‘Z“•/£q’ƒ]·"FY5ƒ¬•~’„FƒŒ˜'‘’ƒŒŠƒ‘Mˆ(‡5šˆ’—F 5Ž5‘Š s( ƒŽFŽƒŒ ¨™‰¢ŽFœ²ƒ¬Š”FƒX5•'–³ s(„5Y 5Š•~‰‹—™ˆŠ•~„S Ë=Š“ƒFˆŠ‰‹ƒZʜqƒ‘M•'ˆŠŠƒX5ƒ]•/–³ 5ŠƒZ„5˜'Z—™’ˆ’‰¡—~‰¡ÊZ„SƒŒ« Ž ‘
gˆŠ‘Šƒ—s—>‘“›.—~ F–m©µŸ¡—~ŠˆD‘–³›F 5”•'„55„5Z•'Ž’‰¡—~Š„S‡sFƒŒƒŒ›­ˆ’„Š‰¡F—F ƒŽ—~š#©/—/ƒ–gƒDœ’ 5‰¢ˆŠ‡š(ƒ‘“ƒ~”" Fˉ‹Ÿ¡“‰¿–"‰¢•²‘Z•/¨s“ŠF—>ƒZƒ…˜~—™—~©²•~ˆŠ ‰‹‰¡ƒŒ“‘‘­ 5¨s•/“—™Ÿ5ˆŠ•/gˆŠ—B—~”`ˆ“•'ˆ’ƒŒ—B‡FŽS”"“›+ 5‰¢F„Fˆ’—Bƒ˜s” ¸#Š5Z‰¡ƒM‘•~„;–³Š 5F„5Šƒ¬F Šƒš#‰‹—™š#ƒ„Sš(ƒ« ‘"š(¨s¨sƒŒ¨sˆZƒŒƒŒ« 5‘Dˆ•w‰¢ž>“„>•'‰‹–m—™©/—~ˆZƒˆ“£šXŠÉsF•/—™ƒ…Šˆ3‰‹—™¨sŠ„qF—>ƒ—™ 5©qg‡ÀŽ5—~—™•'ˆ“ FˆŠ’Z—BƒË`ŽÀ”g‰¿Ï –¯
·"* % 5FGƒs‘Š›SƒM•'•~„5‘ŠlŽ ‡kƒt,ZŠ‘gu—'"–=.KŠC5%ƒ 3E£ —™gˆŠˆŠ—~—Bˆ“”‚ˆ’—BˆŠ”gƒ¯´‘“‡s FƒŒŸ‹"ˆŠš#•~ˆ’‰¢‘ŠƒM‘Љ¡Z—~•~„¬‡FŠ‰¢ 5‘ˆŠ• ƒŽg‰¢—™„—~Ÿ‹“ƒŒF•'ƒ„…ZžB•'•/’ƒŸ¢ F˜'ƒ—~ˆŠ“‰¡5ƒ‘•/k‘’%G“K)•/K Š% ƒq‘ ” 5KƒZ Š5# ("ƒ()ˆ#&%ŠsFƒ› ?3—™ ˆŠIGˆŠ —B#” C% ‰¢‘ ‡k¨™œƒˆ“Šš#F‰‹ƒŠ’š#ƒŒŽSƒ£š(=¨sƒŒƒˆZ„F£`˜~ŠÁ¶>–¯¶Š—/F–8ƒ¯¶Ÿ‹—™š#•'ƒŒ„š‰¢‘D¨kƒ•ˆ"„>‰¢‘ 5š#‡kƒƒŒˆ“ˆ’š(‰¢‰¡’žBŠ•'ƒŸ¡Ž Fƒ#Š—¬˜'‰¡¨sž>—™‰¡„5ˆŠˆŠ˜—B” Š5“ƒXF„>ƒ 5¨kš(—™¨s—™ƒŒ©Àˆ›5Š—/F–`ƒ(Ž5„™•wœF s‘šŠ¨k5ƒƒXˆ"¨k—'–—>—~¨k©²—>—~šX©>‘•wœ²‡5ˆŠ¨sƒƒ]‘Šƒ©'„™ƒ’‡FŸ¡œ 
—™ F 5š–m—™¨kˆƒˆ’Š¯¶5—~ƒ¥ Fš#Mˆ’ƒƒŒš‡5¨kˆŠƒƒ‘Šˆ­ƒ‰¡„™„sŠZ‘ˆŠƒŠ•'F‘ŠƒXƒ‘­‘“•'¨~š#œ ƒ#'›™‘ŠŠˆ’•'ƒŒ’‡5ƒZˆŠ¯¶ƒ¨5‘Š•~ƒ‘’„™ƒŒ’Ž!ƒŒŽ#•/Š¨™Šœ#ˆŠ‰¡Š¨sF F)ƒ ’ƒ]t •' ‘“-F.ƒ(KCÁº%„s‡5k FZ•/ŠZƒZ•'˜~’—~ƒˆŠ˜'œ'—~£=ˆŠ·"œ 5ƒ 5š(ƒ¨s‘“ FƒŒˆºŸ¡`¯¶—~ F•/’£ƒ˜'·"—™Fˆ’œƒ
¥‰¢„…ƒ’‘“ƒŒ FˆŠŸ‹šXZ‘g•'—/’–@ƒZ˜~Š—~FˆŠƒDœ‰¢„5”"‡5‰¡ 5Ÿ‹Ÿ@Ÿ¢•/žB’•/ƒŒŸ¢ Fˆ¥ƒ¨k‘ƒ(£ •~„5„F—'“•/ŠƒŽ”"‰¡Š!Z—~„5ŽF‰¡’‰¡—~„s‘¥“5•/ŽFƒ‘“ZˆŠ‰¡¨kƒF—B” “Fƒ(•/’ƒ˜'—™ˆ’œ…Y5•'„F˜~ƒ‘
–m‰¢‘—™ˆg•'“ƒF‡F‘Šƒ…“‰¢ŽF 5¨kƒˆŠƒ—~‘`Žˆ“š#ˆŠ—B‰¢•~„”`„5ƒŒ•/ŠˆZ˜~F›@‰¡ƒ „5ŽF˜Dƒt ‘“ŠZ%GFˆŠ ƒ¥‰¡#&¨5!"Ž5Q‰¡„FƒZHŠ˜q%•'I‰‹ŠnŸ¢F‘ƒ…Q—'–Sˆ’ƒŒŠ-‘ЁF. 5K¬ƒ Ÿ‹(3ˆŠƒ—™—/‘“–¥ˆŠ FˆŠŸ‹F—B”¦‰¢›"‘”"—™“‡sˆŠ‰‹“•~ƒŒ „5ˆŠ•'‘“Š•'’5‰¡ —~ƒµŠ„S‰‹—™‘’›~„§‰¢Š„FF˜~”"ƒŸ‹ƒµ‰‹‘’“œF¦‘Š•/’“ŠƒFƒZš ƒ˜'—™Ÿ¡š#ˆ’‰¡¨sœ ‰‹ˆŠ˜™•~k~ˆ’`%Gœ~•/K)£µKŸ¢‘’% ·"—DqF˜~ ‰¢ƒ‘(„F%„F$ƒŒ#&—~ˆŠ!"•'’ ‰¢’› ƒƒ”•—~F„F F‰¡Y—~“’‡5‰¢ F ‰¢ƒ‘
‡s•'ˆŠ’‰¡’‰¡—~„FƒŒŽ‰¢„™’— ] Ÿ¢•'‘“‘’ƒŒ‘gŠ5•'Y5•'ˆ“•'Z’ƒˆŠ‰¡ÊZƒ¥“FƒˆŠƒ‘“ FŸ‹g—'–@“Fƒ g—~ˆ“ˆ’—B”‚•'’’ƒŒšX‡FZ£
5
B
;>
!
,:
5
21
[ %+D !#"%$&#"
"
')(*$&+ ,
-/. AaA .c`3@<NB
-/. AaA .cq2: ; A U[3@HaHa3@.<
80;H
<N.
;<DB6*RD2.QL2?@. ><
AHa;RNB. CD6f?E> : A ; : 3@; .A 435.4
?5.<NB[A : ; A [email protected]
]GCNU F ; A 2.C6
<N.<D;
g 1 U\>
j35U&CNU
U\>Qj3@U)CNU
]G.6*3@J;26*.Q2U[;U F ; A
-/. AaA .cq2<N.Q6*35JK;
-/. AaA .c .1 N4D>Q6*; 4CN;
-/.0.1.CD6 N4N>
6*; 4DCD;
>< 6 F . AaA .c A ;KLM; A ;<NJ; F .0.1
>< 6 F . AaA .c .cd; U[. A ;G6*RN><
!
!
#"
#"
%$
%$
'&)(
15
,
:
&
*5
„5‘Š—/ƒ–m ·"´ƒŒ”g‘ЁF•'‘“ƒM•'ˆŠƒXˆŠ–m—™œ;š(ˆŠšX’‰¡—;˜~•'™3Šƒ—'‘ŠŽ5–=]ƒZ“Ÿ¡–mF‰‹—~ž~ƒˆXƒZˆM—~•'Š’’F—²ƒZƒŒ˜~“ˆ¬—~FˆŠYƒ¬œ™5¯¶Ÿ¡•~‡5‰¡¨sˆŠ•~•~ˆŠˆ’•~Š’‰‹ˆ’ŠƒŒœµ‰‹ˆ’—™‰¢ s„¬‘Š’‘’‰¢ƒŒ‘“Z‡sˆ‘#ƒŒ•²—/‰‹–Mkš#ZŠƒF•'š#’ƒµ‰¡—²—~—~„… FŸ‹‰¢“‡s‘Ї5’ƒŒ‰¢ FˆŠ„Fš#Z˜µ£Ð‰¡Š 5‘"És‡À—™ƒŒ ˆ]•'—™‘Šš(ƒ œ¬†5‰¢„Fš(•'˜²šX—Fƒ‡FŽFž'Ÿ¡‰‹kƒ'ƒ›g„™•/“•§‘’‰¡Ÿ¢—~•/•/„…D’ƒŒ“”ˆ]FFƒ¬ž'ƒŒƒŒ„Ÿ¡ˆŠ‰¡¨5‘Љ¡‰¡ˆ“—~•'„¦¨kˆŠƒœ'—'›=—™–‘Šš# 5“FYƒ ƒ‘
•~t‘"%‘Š$‡k#&!"ƒ
•~ ©/ %0ƒŒaˆŠ ‘›5
š 5"‘Љ¢K(Z•/ˆ’Ÿ.ƒŒ‘Їs Fˆ’Ÿ¡—~X˜~¨~ˆ“•'œ¦šX•~‘ZŽ5›™ŽFs‰¢Ÿ¢„FšX˜§‘Z›s•q—~„Fˆ"ƒ‘“” ‡sƒŒZ •'‰¢•/’Ÿ+ƒ˜'¨k—~—>ˆŠ—~œ ©‘“•/NŸ¡.ƒ ‘ £(·"F%‰¢$‘#&!" —™›3 F•'Ÿ¢Ž…„5Ž*¨kƒD‡5•'ƒˆŠ•~’‘’‰¡‰¡’Ÿ¡‰¡œ¬—~„F˜~‰¢ˆ“„F•B˜–mŠƒ‰‹#Ž…‰¢‰¡„~„™ŠŠ—q—#““FFƒƒ
ZŸ¡•~¤‘БЖmƒ’‘gƒˆš#ŽFƒƒ„™’Šƒ‰‹—™ˆ“š#„Fƒ‰¡ŽS„5‰¡£ „F˜ŠFƒ ƒ‘“ FŸ¡Š‘•'„5޲“FƒZ‰¢ˆ¥•/ŠƒZ˜'—™ˆ’‰¡ƒ‘›5“Fƒ(„FƒZ†F‘Š’ƒ‡!‰¡‘¥’—¬”ˆŠ‰‹ŠƒƒZ†F‡sˆ’ƒŒ‘БЉ‹—™„5‘"“5•/
Y‘Љ¡s—~•'„5ˆ“‘g•'•'ŠˆŠƒƒˆŠ‰‹”ʃˆ’‰¡’ŠŠ5ƒƒ„ ‰¡—~„„sŽF’ƒŒ‰‹ŠˆŠ‰‹šX—™„5‘3‘g—/ 5–@„5ŠFŽFƒDƒŒˆgZ•'”’Fƒ‰¢˜'Y—~ˆŠ‰¡ƒŒƒ•'‘3Y•'„5ZŽ…Ÿ¡•~ ‘ŠŸ¢‘3•'‘“—'‘’–@ƒŒ‘­•#—'ˆ’–=ƒŒ‘Š“ FFŸ¡ƒM"‰¡‡5„5•'‡sˆŠ F’‰¡’‰¡‡5—~•'„ˆ“•'”"š#‰‹Ÿ¡ƒŸ.’—FƒZˆ“‘ 5›™ˆ•~£@„5ސ·"F”"ƒŒ‰¡‘’Ÿ¡ƒMŸ.¨sƒZƒŒ†F ‡s—~ˆ’š#ƒŒ‘ºƒ ¯
“‘“F‡kƒMƒ ¨5‰‹k•'‘Š•/‰¡‘`’‰¡–m—~—™„.ˆ3›.”"ˆ’ƒŒ‰‹•/“§Š‰¡„FŠ˜(Fƒ¬ŠF•~ƒMŽ5—™ŽFˆŠ‰¡’•~‰¡ —~Ÿ¡„qƒ‡5—/•~–gˆ’Š3F—/ƒ¬–+Z“—~F„5ƒMŽ5’‰‹ƒŒŠ‰‹‘’—™g„5Z•/•~Ÿ‘’ƒŒƒZ‘Z†F£ ‡sgˆ’ƒŒƒZ‘ŠŸ¡‘Š—B‰‹”D—™„5›~‘”3£¬ƒM®`‘Š—™F„5—BŽF” ‰¡’Š‰¡F—~ƒD„5‘ ˆŠ(ƒ‘“Z F•~Ÿ‹„g‡5¨k•~ƒ¬ˆ’3•/Š—/Š–+•~“YFFƒMƒŽq’ƒŒ’‘’— 
¨k¨™œ¬—'“ƒµž'ƒŒ“ˆ’Fœ¬ƒXZZŸ¡•/•~Š‘ŠƒZ‘g˜~—'—~–@ˆŠœ“F•~ƒ„5ZŽ!•'’ŠƒZ—˜~Š—~FˆŠœ'ƒX›™ ”Ÿ¢•'F‘“‰¡‘’Ÿ‹ƒƒŒ‘•X”" ‰‹Ÿ¢“•'F‘“‰¡‘"„ •…—™„5ZŽF•/‰¡Š’ƒZ‰¡—~˜~„—~ˆŠ‰¡œ'‘¥£D‘Ф•'’‰¢Z‘ºs•/ŠƒŒƒZސ˜~—~—™ˆŠ„FœŸ¡œZ—~¨™„5œ¬Ž5Š‰‹FŠ‰‹ƒD—™„µ‰¢„5ŽFš‰¡ž> s‰¡‘’ŽsM 5¨s•/ƒ]Ÿ+Z‘“Ÿ¡•/•~Š‘Љ¡‘‘’s£ ƒŽ
5
-/. AaA .c`3@<NB
-/. AaA .cq2s; A U[35HaHa3@.<
80;H 354
3@<=>?@354 F .0.12HI6P>
6*CNH >=>Q35?5> F ?@; 4D;?@3@<#Z0CN;K<NJK8 U\>WI. A <CNU F ; A 2.CD6 U\>Qj ^ F .0.1027698: ; A ;KBCN?5> A
^ .0.1027698: ; ;KHI6 35J6*;4 354 : 3@=3@?@;B;4Neae
<N. 35F 4 3@<=>?@354 A F .0.A 102HI6P>Q6*CDH . CD6 A 4D;?@3@<#Z0CD;<NJK8 U\>WI. A
<^ CD.0U .F 10;2769A 82.: CD; 6 U\;HI>
6 j 3@JK6*;F 4.0. 1273E6V48D: ; : 3@A =;K35LM?@; ;A B;K;<N4#Je; F
A A
A
;<NBQ6*RD2.LE2V?@.><
-/. AaA .cq2s; A U[3@HaHa3@.< 80;H
AHa;RNB. CN6f?5> : A ; : ;[email protected] [email protected] 4D;[email protected]@<#10Z02769CN8;K: <N; JK8 ;U\HI6 >3@WIJK. 6*A ;4 3E4 : 3@=35?@;B;4
?@.<DB A : ; A [email protected]
@F ^_3E4 JRD35?54 35A 4 A W9CN<N3@. A e F .0.1A 276V8D: ; A ;BCD?E> A 4;?@35<NZ0CN;<DJK8 <N.<N;
] CNU F ; A 2V.CD6
<N.<N;
]GCNU ; 2.C6 -/. AaA .
cq2: ; A U[3@HaHa3@.< <D.
g 1 U\>Qj ^_] CNU F F A ; A 2.CD
6 102Pg -/. .cq2: ; U[3@HaHa3@.< 80;HPe
^_]GCDU F ; A 2.C6 1 -/. AaA .cqAaA 2: ; A U[3@A HaHa3@.< <D .0e! U\>Qj3@U)CDU
^_] CNU F ; A 2.CD6 U\>Qj3@U)CDU 2Pg" -/. AaA .cq2V: ; A U[35HaHa3@.< 80;HPe ^_]GCDU F ; A 2.C6 U\>
jD3@U&CNU# - . AaA .cq2: ; A U[3@HaHa35.< <N. e$
]G.6*3@J;26*.Q2U[;U F ; A
-/. AaA .cq2V<D.6*3@J;
-/. AaA .
c .1 N4N>
6*; 4DCN;
- . AaA .cq2: ; A U[3@HaHa35.< 80;H
-/.0.1.CD6 N4N>Q6*; 4CN;
- .0.102HI6P>Q6*CNH JPRN;JP1 ;42.CD6%
>< 6 F . AaA .c A ;KL; A ;<DJ; F .0.1 - .0.1027698: ; A ;KL; A ;<NJK;
>< 6 F . AaA .c /.cd; U[. A ;G6*R#>Q< & XG;?@35<NZ0CN;<DJK8 U\>
W9. A !
"
!
"
%$
%$
& (
‰¡‡kŠƒ‘Dˆ“·"š#ZŸ¡F•~‰¡ƒ‘“‘ББŠ=‰‹ƒ—™ƒ‘„!„F£X˜~ˆ’¤¥ŠƒŒ>‘Š„™ 5¯¶œ!—/Ÿ‹–8—/¯¶Ÿ¡‰¡–3—~‘Š•'œ'F„ƒŒƒ¬‘ZZ›ÀZ•'Ÿ¡”’•~ƒZ‘ЁF˜~‘Љ¢—~ƒYˆŠ‘!œX‰¢‰¢„q‰‹šXŸ¡Ÿ¡“ s‡FF‘’Ÿ‹‰¡ƒ“ƒˆŠ‘•'+’“ƒŒƒ5„F‘g•/˜'““F>Šƒ¯¶F—/ 5ƒX–8¯¶‘ŠŸ‹ 5ƒM—™‘Š•'—/ƒ„!–@ˆZ5—~•/•'„5’‘ƒŽ5˜'•‰‹Š—™‰‹‡sˆ’—™œ²ˆ’„5—™‘"•'‡sˆŠ•/ƒŒƒ]Šˆ¥Š‡5•'‰¢ŽSˆŠY—>›S5ŽsƒŠ5Ž 5ƒ# ’ƒŒ—¬¨kŽ!—>¨k—~—~—'„5©…ŠŸ‹œ!‰¡‘M•X‰‹•w–gZžBŠ•'•/F’‰¡ƒŸ¢ƒ•'˜'g¨F—~Ÿ¡ˆŠ—~ƒ'œ]ˆ“›IˆŠ•'•'—B„5„5”gŽŽ ¯
“Ž5Fƒ ƒk„F 5ƒD‘Šƒ”ˆ¥5‰¡‘ƒ„„F—'ŠF—™ŽF‘’ƒZƒŸ¡‰¢‘“„5‡sÅ>ƒŒ F ƒ‰‹k„™MZ£ˆ’ƒŒ·"‘Ё5 5ƒŸ‹“‘g —™—>„5ŽFZ‰¡ 5’ˆ‰¡—~£ „5‘¥—~„Š5ƒ‰¢„5ŽF‰¡ž™‰¢Ž5 5•'Ÿ=ZŸ¡•~‘Š‘Šƒ‘•~ˆ’ƒM–³ sˆ’“Fƒˆˆ’ƒŒ‘’“ˆ’‰¢ Š‰‹—™„5‘"“5•/
ŠZ‰‹Ÿ¡—™•~„5·"‘ББ`Fƒ‰¡ƒ"‘‘`£ 5Ÿ‹‰¢‘Š©/ƒ3ƒ—/•–s“šXFƒ"•'ˆ’ˆ’ƒŒ—(‘Š FZŸ¡•/Ÿ¡ŸÀZ•/Š5ŠƒZ•'˜~­—~”"ˆŠœ ‰¡Ÿ‹gŸS¨k—~ƒˆ“ˆŠˆŠ—Bƒ”g‡F¯¶Ÿ¢‡k•'Zƒƒˆ“š#ެ‰¡¨™‘“œX‘’‰¡—~ŠF„ƒ‰¢„•/Š“—~Fš#ƒ ‰¡+ƒ „5—™˜'„5ŠŽFF‰¡¯E’—'‰¡–8—~¯E„5Ÿ¡—~‘`•~‰¡„„•'Š„5FŽ ƒ g 5—~ˆ“š(ˆ’—B¨s”gƒŒˆº¯´¯¶‡s—~ƒŒ 5ˆŠ@š#Z‰¢—~‘Š„5‘Љ¡ŽF—~‰‹„ ¯
•—'~–„5ŽX—~·"š#ƒF†5ƒ‰¡‘“‡k‘Š®`ƒ‰‹—™ˆŠ° ‰‹„…ƒŒ„5‘“•~‡s „5ƒ"ƒŒŽ! ‰¢‰‹„]Zk—~ZŽFšX•'ƒŒ’‘’š#‰¡‰¡—~˜~‰¡„!„F‘“‘’‰¢‰¢„F‰¡‘D—~˜D„.ZŠ£3ˆŠƒƒÁº‘Š•'„²`’ƒŒZ‡s޵•~•'‘’ˆŠ¨™ƒŒ’‘Zœµ‰¢£@Z F•…¤¥Ÿ¢•'‘­™ˆ s”"›sš#‰‹”"“•~¬‰¡Š„S²•'›+„™¨5•¬œ(•~Z‘’>—~ƒŒ 5šX޵šX‡F—™•~Ÿ¡„!ƒ„>†²¯¶“F‘’ˆ’ƒ]œFƒŒ•/‘Š’’ŠƒŒƒŒƒ‘’šŽXŠƒ•'›ÀˆˆŠ‰¡« ’‘M‰‹–³šX©>•'„FZ•w—BZœ”"›'‰¡¨kŸ¡ƒƒ(ŽF‰¢‘­ŽF˜~‘“‰‹ƒ(¾¬ 5—'¨>Z–`¹º FƒŒŠŸ¡ ¥5ƒXŠŠ——‘ŠœF•'ƒ‘’‘“ˆ“Š‘“ˆ’ƒ 5—™š…ˆ’ˆŠƒ‘ ›
“5•/X“Fƒ²ˆ’ƒŒ‘Š FŸ¡] —™„5ŽF‰¡’‰¡—~„5‘]•~ˆ’ƒ —™„5‘’‰¢‘Š’ƒ„™X•'„5Ž  —™šX‡FŸ‹ƒ’ƒ~£ ¤Ç‘“‡sƒŒ ‰‹sƒˆ]š#‰¡˜~™Z›­–m—~ˆX‰¢„5‘’“•'„5Zƒ'›`”ˆ’‰¡’ƒ
>
&>
&
B>
;:
' .<N4D3b6*3@.<DH`> A ;YHaC AaA .CN<N4D;4 F 8[H*Z0C#> A ; FDA >QJ1 ;6*H(*),+- A ; : A ;Ha;<06*[email protected]@J>?/. ]GX0)1+ - A ; : A ;Ha;<06*[email protected]@J>?
23 )
!
16
„5Z—~—~š(„>¯´¨FŽF‰¡‰¢„s‘m¹º•/—~’‰¡‰¡„™—~„XZ‡5—~ˆŠ„5—FŽ5Ž5‰‹ 5ŠZ‰‹—™ƒ„5‘‘´”3–m—™—ˆŽF´‰”3Àƒ—Œˆ’ŽFƒŒ„~‰ Iƒ`ˆ’ˆŠƒŒƒ‘Š„™ FŸ¡ŠZ‘Ÿ¡£@•~‘ŠÁ¶‘Š–.ƒŠ‘¥F‰¢—/‘­–­5••~‡5Z•/‡kŠƒƒZ„F˜~ƒŒ—~ŽSˆŠ›~œ'“›ÀF‰¡šXƒ„]‡F•~Ÿ¡œ>„™‰¡œ(„F˜ŠƒŠ‘Ё5­•'Z•~‘’‘Šƒ"—~š#“5ƒ#•/­‘Їk‘“ƒ•/ZŠ‰¿‰¡k‘’sƒŒ‰¡Ž(„s‡5“F Fƒ
Z—~•'„5‘ŠƒŽ5‰‹“Š5‰‹—™•/„5‘‘“•/–m—~Š‰¡ˆM‘’s¨sƒŒ—~‘gŠŠFƒDŸ¢•'´”3‘“‘’—]ƒŒ‘¥ —~”3„s—~ŽF 5‰‹Ÿ¡ŠŽq‰‹—™¨s„5ƒX‘g”3ƒ †5—~‡k FƒŸ¢ŽZ’ƒˆŠƒZŽqž~ƒ’—²•'ŸÀ‡5“ˆŠF—FƒŽ5ŽF 5‰¢Z‘Šƒ#ˆ’¨kƒŒ—'‡5“•'q„s ˆŠœ'ƒ£‘“ FŸ¡Š‘£ ¥ 5„5„5‰¡„F˜²•~„q•~ Š s•/Ÿ’ƒŒ‘’
‘”gŠƒZ•wœ®`—'—™Š–À—š#Šƒ©™‡5‘Š„5Ÿ‹ƒ—BZ’”*ƒ•~„5‘’‰‹ƒŒƒ–.‘‘“•‘‡5®`‰¡ˆ’‘—B° ž>•M‰¢‘Šš#ŽF‡kƒ—~ƒ‘ ˆŠZƒ"‰¿“ÀŽFZ—™‰‹•/š#¾]Š‰‹‡5—™Ÿ‹ F„#ƒŸ¡’‰¡ƒ"‘‡5 •Dˆ’—B—™ž~Z¨F—~ƒŸ¡ˆ“šXƒ•/š…‡F˜'Ÿ¡ƒ£ ƒZ~Šƒ¥ 5—'–À‘ŠŽF“ƒF•'‘“ƒ"Z‘ˆŠ–³•M‰¢ 5‡FšX„5’‰¡Z—~•B’¹º„#‰¡—~—~—/ˆ@„5–I•'‰¢‘ŠŠŸ‹‘“‰¡5´ Fƒ"œƒg–³Š—/ 5—–I„5¨s’ZƒŒƒ"’‘’‰¡—~ŠŠ‰¡ƒ„S„5‘Š£˜’ƒŒ·"‰¢ŽS‘F›~ŽFƒ“ƒŒFŠ ƒƒ‰¢‘ŠˆŠŽF’ƒg‰¢ƒŒ„F‰¡ˆ‘­˜M „F”—™—D FFŸ¡˜'ƒZŽXƒŒ“F„F—™ƒƒš#ˆˆ“•/‰‹•  Ÿ
•DƎ5š#‰¡‰¡‘³’¹’Š 5‰¡„5„FZ˜²­“—~Fˆ­ƒ  —~#„B¹’v 5„5# ­–³Fˆ’—™*+#š ¬ƒZ•Ÿ¡ƒZš#—~„5ƒŽ5„™M‰‹Š‰‹–³—™ˆŠ„S—~š›~”"Š‰¡ŠFXƒ “gF—™ƒˆŠˆŠˆŠƒ—B‘“”g F¯¶Ÿ¡‡kƒŠˆ“5š#•'­‰¡‘““‘ЁF‰‹—™ƒ„ ’ƒŒm ‘’)3(DZ•~Ÿ¢‘’•'ƒŒ‘“‘‘•'ZˆŠ—~ƒ F 5Ÿ¢Ž„5ŽFœ™ƒŒ‰¡ˆºƒZ¯´Ÿ¢ Ž—™„5’ƒŒ‘’“‘’ˆŠ•'‰¡„5•'ƒ‘ŠƒŽS‘ £
”"‰¡Š•~„‰¢„™žw•'Ÿ‹‰¢Žš#ƒš¨kƒˆ’¯¶‰¡Ž…•/Ÿ¡Ÿ‹—B”3ƒŽ’—¬¨k—~ˆ“ˆ’—B”‚•]¨k—>—~©À£
) $+
à !"
Z( D$Ç0 Y!"
(
·"ƒ5 ƒ¬Š‰‹—™®`„¬° Z‘“•'‡s’ƒƒŒ˜' —~‰‹kˆŠZ‰¡ƒ•'‘­’‰¡Ž5—~ƒ„§‘“Z•'ˆŠ¨k‰¡¨k—Bƒ¥ž'ƒX“F5ƒ¥•~–³‘D s•/„5Ÿ¡ ŸŠŠ‰‹—™F„Sƒ]« ‘3ƒŸ‹‰¢ƒŒ„5š(‡5 FƒŒ„™“‘ZŠ›F‘M•~—/„5–"ސ•ŽF‘’ƒ“Ÿ‹•'‰¢š#„5Žs‰‹3•'Šˆ“5޲ƒ–m—~žBˆ“•/šXŸ¢ F•/ƒMŸˆŠ‘“•~‡s„FƒŒ˜' ƒŒ‰‹k‘Z—'•'–.’Š‰¡—~F„Sƒ£¬‰¡„s·"‡55 Fƒ#Š‘Áº£„s·"‡5F Fƒ
¥•ƒZ‘“•/ FŠŸ‹ƒZ˜~—~‘’ƒŒˆŠœ ’•'‰¡—~ˆŠ„²ƒ‡5Ž5ˆŠƒƒ ‘“¯´Z ˆŠ—~‰¡¨k„sƒŽF‘"‰‹Š“‰‹—™F„5ƒD‘–³ 5–m—™„sˆ­ ’‡k‰¡ƒ—~ˆ’„.–m—~« ‘ˆ“š(‡s—™‰¢„F‘Š‘Š˜‰¢¨F“Ÿ‹FƒDƒ—™—™ F‡sŠƒŒ‡sˆŠ F•'Š’‘‰¡—~Ëk„X“F’ƒ(—Zœ™—~‰¡ƒZ„5Ÿ¢Ž5Ž]‰‹Š•D‰‹—™žB„5•/‘"Ÿ¢ F—~ƒ„²”"•~‰¡„Š5‰¡‰¡„s„]ŽF“‰‹ž>5‰¢•/Ž53 5 •'Ÿ¢Ÿ=•'‘“ ‘ZŸ¢•'£‘“·"‘"F—'ƒ –
“ZFŸ¡•~ƒD‘БЗ~ƒ‡k‘gƒ“ˆ“F•/ƒŠ‰‹šX—™„S‘ŠƒZ£Ÿ¡ž'·"ƒŒ>‘¥ 5•'‘ZZ› ¥•'‘¥‡s—™‘’’¯¶Z—~„5ŽF‰¡’‰¡—~„s‘"Š5•'¥‘“‡sƒŒ ‰‹–mœ…“FƒžB•/Ÿ¢ Fƒ—'–ŠFƒ•/ŠƒZ˜'—™ˆ’œ•B–m’ƒŒˆ¥‡kƒˆ’–m—~ˆ“š#‰¡„F˜
=ƒ„F˜~Š>¯¶—/–8¯¶Ÿ¡—~•'x„ v 5—~ˆŠº¯´‡sƒŒˆ’‰¡—FŽ
‰¢‘"•X‡s—™‘’’¯¶Z—~„5Ž5‰‹Š‰‹—™„“5•/‘“F—~ 5Ÿ¡ŽF—~Ÿ¡Ž…•B–mŠƒˆ g—~ˆ“ˆ’—B”g¯´¨k—™—™©#‰¡‘gƒZ†>ƒŒZ FŠƒŽ…”"‰¡Š…ŠFƒ‡sˆ’ƒZ¯¶Z—~„5ŽF‰¡’‰¡—~„s‘
g—™ˆŠˆŠ—B”g¯¶‡kƒˆ“š#‰¡‘“‘Љ‹—™„ v œ'ƒŒ‘ w g—>—~©~¯¶´œ>‡k\ƒ v ƒŒ‘’“ˆ’‰¢ ŠƒŽ w ±²ƒŒš¨kƒˆ’¯E‰¢lŽ v ‡5ˆŠ‰¡ž™‰¡Ÿ¡ƒZ˜'ƒŒŽ ¶£
–m—'—F–·"“ 5F‘’Fƒ!‰¢ƒ„F˜‰¢®`„5°`—~‡5„² F± …“‘ЁFZ 5ƒ(•'‡s’Š‡FƒZƒ˜~Ÿ‹‘Љ¡—~ƒˆŠ‘=‰‹ƒŒ´•'”3‘Z‘Š›3ƒ—‘•'¨k›k„5ƒ“Ž „FFƒZƒ(“sF‘“Šƒµ‡k‘@ƒ”  —™‰‹Fs„5ƒŒƒŒŽF„ˆ‰¡’‰¡5‰¡=—~•~‰¢„5‘=‘‘¬ sZ‘’Š—~ƒŒ5„5ŽD•'¬ˆ’’ƒ—MŸ‹’ƒŒFƒ(•'ƒZŽžwŸ¢‡D•'Ÿ¡Š˜~ 5—;ƒƒ„F‘ŠƒŒF‰¡ˆŠƒµ„q•'’ˆŠš(ƒ`ƒ‰¢‘“•„5 FŽS–mŸ¡—~Š›I‘ˆ“ƒŒ£ÐšX„5•/•'·=Ÿ~¨Fƒ‘“Ÿ¡‘Їk‰¢¬„Fƒ˜ ƒ ‰‹†FkZƒŒŸ‹ƒŒZ•/•' F’ˆŠ‰¡—~‰‹ŽF—™„.„ƒ£+‘“ZɇsˆŠˆ’‰¡‰¡ˆ“—B‡5‘Šž>’Z‰¡‰¢›/—~ŽF¨™„5ƒœ ‘‘
š#•~‘Š—™‘“ 5ˆ’ƒšX—™‡F‡5Š‡k‰‹—™—~„ ˆŠŠ‰¡ 5‘„F‰¡Š´sœ•/’—…“F•'ƒˆ“ˆ’‰¡’ž'ƒƒ‘Š•'‘Їk•'ƒ„µZ‰¿•'kZ•/ 5Šˆ“‰‹—™•/„’ƒ(‰¡•'‘…„5•Ž!ZZ—~—~ˆ“ˆ“ˆ’ˆ’ƒŒƒŒ "–mŽ5—™ƒˆŠ‘“šXZˆŠ•'‰¡Ÿ=‡F‘“Š‰‹‡s—™ƒŒ„  ‰‹k—/Z–•'“’F‰¡—~ƒ§„SŽF£ƒ¤‘Љ¡Ÿ¡ˆŠŠƒFŽ —™ F–³˜~ 5µ„5 ŠŠF‰‹—™ƒ#„5 5•/‘ŠŸ¡‰¡ s´•/œ'Ÿ›
‰¢•~šXšX„5•wŽ;‡FœŸ¡ƒ“‰¢š#„55ŽF•/ƒX‰¢„™ZŠ•'•µ•'’’ƒŽF‰¡—~‰¢•M‘“„ Z„FSˆŠƒƒ‰¢ƒ„5‡5Ž#ŽF•~„5‰¢’Z— •'œ§Y’ƒ5¨s‘•~ƒ„F•M´˜'”`š#ƒgƒ‰¡ƒ“‘ЁF„;Š•~ƒ“©/‘ЁFƒ3‡kƒ…‰¡ƒ„(Zƒ ‰¿†5ŠÀ5‡sZƒ3ƒŒ•/ Š‰¢šXŠ‰‹—™ƒ„#‡FŽ Ÿ¡’ƒˆŠ—š#ƒ‘“¨5ƒ FˆŠ„™Ÿ¡‰¡Š„5•'˜’Š‰¡‰¡—~F„Sƒ…‰¢›'„#’ŠƒŒ•'F‘’˜~‰¢#‘ˆŠƒZZšXƒŒ•'š(•w‘ŠœƒGƒŒM„™„F@•'—'„5”"ަ¨s‰¡Šƒ"#ŠF““FƒFƒ"ƒ•'ZZ‰¢•~Šš#‘’ 5ƒ~‡5•'£=Ÿ‹Ÿ3ƒŒ·=š(ˆŠƒƒ‘ŠƒŒ‘“@ F„™ŠŸ¡ˆŠ •/ƒ‘“Š³‰‹ F“—™Ÿ¡F„SŠƒ‘ £
‡‰¡sX•'ˆ“ƒ·"•'•~Fš#‘’‰¡ƒ¬ƒƒZˆ(Š‘Šƒƒ’ˆ“Z—§‘—~„5•'”Žq„sˆŠŽ ‰‹¨sŠƒ…ƒŒ‘Š„FŠ“•/ƒ FkŠƒ²ƒD‘ŠžB‰¡‘M‡k•~ƒˆ’“‰¢ZF•'‰¿ƒÀ¨FZŸ¡®`ƒ•/‘#Š°`‰‹‘Š—™±;ƒ„S‡5« ›`‘•~•~ˆŠŠŽ•'„5F’ަ‰¡ƒZž>Ÿ¡‰¢‰¡œ'‘]Ž5£§ƒ •'¯´Áº„*•'„*„5•/Ž>•'‰¢¯´Ž  “—™ 5Š„5•/—;Å>Ÿg F 5 5ƒ„5‘ŠˆŽFƒ'¬›ƒŒˆŠ•~”3‘Ї5Šƒ‡5•~ˆŠ„55—~ŽF•w•'‰¢ž'Y„Fƒ!˜q–m—/—~“–3F 5ƒ„5•~„5Ž —B•/ž'ŠŸ¡ƒŒœ>FˆŠÊZ‰¢•'‘]‰¢„FŸ`•'˜…¨k‡sƒŠ‡55Fˆ’•wƒ]—™ž>•'‰¢‰¡„5Y—~;ŽFˆ#‰¡ž>šX—/‰¡–¥Ž5•'“ s©'Fƒ•/ƒ ‘ Ÿ
–³ s„5 Š‰‹—™„S£
A5
&
=
5
>
=
-
5
½²0D
–m—'·"—™–g5ˆŠšX•µƒM•'‡s‡5Ÿ.ˆ’ˆ’—™—~‘Їs‡k˜~—™ˆ“ƒ•'Z‘Š•'šX‰¿kŸÀš#—'•/–@ƒŠˆM‰‹“—™F•B„‰¢–m‘Š—'ƒ‡5–ˆ•'•]‡k‘Š—/ƒ‡5–mˆgˆ’´—~”g‰¢‘g˜~•'ˆ“’ˆŠ•'—]ƒ]š… 55« ‘Š‘­•'ƒD‘–³ s’¨sƒŒ„5ƒ‘’ "ƒŠ„§‰‹—™•'„5‰¢‘Šš#•/ƒŸ¡‘"‡5‰‹´Ÿ‹•'ƒŒœ~„sš(£­Ž€§ƒŒ„™Šˆ’ƒ’‰¡ƒ‘Š’Ž.‰¢„FˑŠ˜]‡k‰¡„ƒŠZƒ–³‰¿‘Šk•~¥ZZ•/•~›Š‰‹‘’•—™ƒŒ„5‘g˜~‘"‰¡—™‘•'—F‘"–³Ž§ˆ’ƒŒ•X‡5řš#ˆŠ 5—'ƒƒ˜™„™•~ˆŠ’„5•~Ÿ¡š#œ‘g—/š#“–FƒŒƒM•'ˆˆ“kˆ’šX‰¡ˆ“ž>‘’•w‰¡œq„F•~˜X” ’•/ˆ’‰¡"‰¡—~’„•ƒ
–³“ sF•'„5ƒ¬‘Šƒ Š‘Šƒ‰‹£@—™‘Š·"„5•/5ZŸ¡‰¡•'‰‹‘"´‘Šœ§ƒ‰¢‘‘›5”3¨s—/ƒZ–ƒZŸ¡Ÿ­–m —~—~ƒŒˆŠ„F sƒ]—~ˆŠŠ‘Š FFƒ'˜™ƒ›F;ƒZZ†F’—F•~—qŽF ƒ'Š•/Ÿ‹£…Ÿ¡œ¬Ÿ‹—B¤ ”” sŠ•µ•/Fg—™ˆŠˆ’‰¡ƒ—™‘¥•~ FŽF•'˜~ƒYFˆ‰¡’ƒZ‘Š—qƒZž~ƒŽ5ސ—'ƒZ–3¨™’ƒŒœŠˆŠƒš#•(‘Š‰¢–m„F—™ZƒˆŠ•~šX‘’“ƒŒF•/‘ƒŸ.‘Š‘“5‡s‡k—~ˆ’ƒ—~ F ˜~Ÿ¢‰‹kާˆ“•'Yš…•/5’«‰¡•'‘—~ˆ“„.•'¨s£ZƒŒ’5ƒ•wˆŠž>‰¡ÊZ‰‹ƒ#—™ˆDŠF‰¡„ ƒ•'‡sŽ5ˆ’—~ŽF˜~‰¡’ˆ“‰¡•'—~š…„s•/« ‘ Ÿ
–m‡s—™ˆ’ˆŠ—™€šX¨FŸ‹•'ƒqƒŒŸ‹šX‰¢5‘Šš ‘g•wž~‰¡„5ƒµZZ•~ 5Ÿ¡„ s‘ŠŽFƒˆ’ŽƒƒŒ‘’ŽF“ƒŒƒZFšŠƒqƒ¨Fˆ“Ÿ¡š#ƒµ•/’‰¡•§„Fƒ˜'‰¢„FŠ—™ˆ“˜Xˆ’•'œ™Ž5”¯´‰‹‡5FŠ•'‰‹ƒ—™ˆŠŠ„5’F‰¡•/ƒŒ’Ÿ¥‰¡ˆg—~–mŠ„ —~Fˆ“ƒD–mš#—~Šˆ“•'ƒšXŸ¥‘Š•/‘“Ÿ¡‡s‘Љ¡‡k‘“ƒŒš ƒ‰‹Zk‰¿kŠZ—¦•'•/’ƒ‰¡Š—~†5‰‹—™„S‡5„£ÌˆŠƒ‰¢‘“‘"±!‘] •~Š—™„™ƒšX‘Šœ*‡F‰¢Ÿ‹Z‘Šƒ•~‘“’ Fƒ‘’ƒŒƒŒ•~‘Z‘¬„5›ˆ’Ž•~ƒŒ„5šXZŽ—~•/„5‰¢‘“‘Š„F‰¢‘’—B—~Š”ƒ‡k„™„ƒZ„S£ F£Ì—B”DZ!•/Š¹ºF—~‰¢‘ˆ
'
¥%/¥"$
¤¥Æ
°‡s•'£IˆŠ¤¥’‰¡šX’‰¡—~šX„•'„s’ƒ„!‘Š’•'‰¢„F„5˜kŽ ›s=£IK Æ % !S F% ŠZ›
n‘’‰¢„F˜ –m —~ˆ“š#5•'Ÿ=› š#•'ƒZ‰‹““FF—FƒŽ5ˆ“‘‘“¨5Š 5—ˆŠ˜sŽF›FƒŒˆ’± ‰¡ž'#›ƒ’'ƒ‘Š s"„Fƒ–³ˆ“•'š#ƒs‘¥›‰¡ „µB¯Z•/5ŠƒZ£ ˜~—~ˆŠœ~¯
1
17
&/1
.
gÍMÆ
Š±¦FGƒ‘Š£ "‘“•/‡sŸ¢.ƒŒK)ƒŒ # ˆZ‰‹k›~!"Z€F•'$’#&£>%‰¡—~Ík„5› •'‘ƒ‘Š› Ÿ¡Œ‰¡„F ˜kK ›~% ·M! £55% ƛ ‘’ “ ˆŠB •~¯ „5 ŽS5›.£ ¤ F’ —™š#
•' ’‰¢# K˜~ ƒ„FƒŒm0ˆŠ3•'’‰¡=—~„#%—/"–. DŠƒFG‘ŠK `‘“Z ˆŠ‰¡‡F() “# ‘ –³IˆŠ —~š@–mFG—~*@ˆ“mNšX()# •/(Ÿ
£ (/¯ £ g5‰¡„s£ ŽFƒˆ› ("$# JI ."!.V K)#&. mN(" Q (Y›s¤Ž5ŽF‰¢‘’—™„>¯E€ƒ‘ŠŸ¡ƒZœ'› ƒ•~ŽF‰¡„5˜s›k±µ¤ 5›
·M £I/Æn²‘’› “ˆŠ•~—~„5Ÿ Ž•~~„5› Ž…¥—±;5£ › "~•/ 5Ÿ¢„F ƒŒƒ ˆZ›·"Fsƒ› ®3•'/’¯ ƒZ ˜~—~sˆŠ£ œ™¯¶‡5•~ˆ’Š‰‹Š‰‹—™„¬š#ƒZ“F—FŽS› %0T#&!"F$#&% (% F7!£5$€#&% ƒZœF( 5%©/ ƒŒˆZ=›3K ¤¥%-IG‘“K ‘’FƒŒ‘БЉ¢„F#˜XJI’ƒ?‘Š¥FJŽ5I •' Š•]F.IJ•~ŽF(,ƒFGÅ> 5 •~ œ¬mN()“H5Qˆ’—™ F( ˜~› —'‡5Ÿ ˆŠ—'F˜™› ˆŠ¥•~—š s‰¡›k„FƖmƒZˆŠƒ „5Zƒ'›5 › /n¯ K 5F£ (
%G £5€ % ƒZ"œF D 5©/FƒŒK ˆ •'=„sŽ IG# M-£ .'K)ƒ# „5J˜sI'››­¤—~„5Ÿ •/Ÿ¡œ>FÊZ› ‰¢„F˜¬— ‡5>•'› ˆŠ~’ F‰¡’Ÿ ‰¡—~„’~ƒŒ›‘’Š‰¡„5/˜¯ ‘’“ˆŠ'•'£ ’ƒ˜'‰¡ƒ‘›D K-F (.F7!$#&% (
·M K£=% Æ!‘Š Šˆ“F7•'!„s# =Ž!!)•'t„5Ž 5£I%€" —>D—>FŽ.K ›Áº „5 Ž5F s*+‘’# 9“m ˆ’‰¢•/ Ÿ%•' ‡s‡FK Ÿ‹.‰¢Z@•'!"’Z‰¡›s—~°„5‘—™ˆ’—'Š–­Ÿ¡•~Š„5FŽSƒ]›sÆ •/’ƒ›k˜'—™Æˆ’ œ™ ¯´‡5•'ˆŠ’F‰¡’£ ‰¡—~„š#ƒZ“F—FŽS›
s £ K FG£ (.F —™!.—F #&ŽF%GƒŒ „F(—~%G 5 ˜~µ%•~"„5 ŽDFGK £ ­=£ JI ƒŒ# ˆŠ@5"•~.ˆ’K)# J›]I'·+› —B”g—'•'Ÿ ˆ“~޵› ¥•…— Š55ƒZ› —~'ˆŠ 5œ!„5—'ƒ –3Šƒ‘ŠMF£ Žs•/Š•‘ŠƒZŸ¡ƒZ’‰¡—~„S›
ˆŠƒZ£ ž~sƒ£s•'€Ÿ‹‰¢„FƒZ˜MœF 5‘Š 5©'ƒ¨ÀˆŽF—™•~š#„5Ž•'‰¡·M„s‘Z£ s›£I
ƑŠŠˆ“•'„sKŽSFG›3 ·"(.F 5!.ƒZ$—~#&%ˆŠ‰¡ ƒ(‘g%G—/–‡5ˆŠ% —'"˜™DˆŠ•~FGšK ’=ƒŒJ‘’ŠI ‰¡# „5@˜".•'K)„5# JŽ…I'›“Fƒ(—'Ÿ •~s‡5›‡F¥Ÿ¡‰¡— •/s’‰¡›'—~±!„…•w—'œ –
5› B¯ s£
E/
g‰¡„
Æ
€ƒZœ
!
5
1 / 1 6
€
4
?
6
23
: 21
: ? = >
4
5
:
6 3
6
61
18
/
1 3 )
€‚Æ
/
<
'
ƀ
5
4
:
6
3 6
3
3 6
E3 : Testing from statecharts using the Wp method
K.Bogdanov, M.Holcombe
emails: fK.Bogdanov, [email protected]
tel: +44(0)114 2221847, fax: +44(0)114 2221810
Department of Computer Science, The University of Sheffield
Regent Court, 211 Portobello St., Sheffield S1 4DP, UK
Abstract
An existing testing method for Harel statecharts with hierarchy and concurrency is
based on what is known as the Chow’s W method. This paper presents an extension
of this statechart testing method to build on the Wp method, making a test set smaller.
Subject to some specific conditions and subsequent testing not revealing faults, both
the original and the extended testing methods make it possible to prove the correct
behaviour of an implementation of a system to its specification.
Keywords: specification-based testing, formal methods, software testing, finite-state
machines, statecharts.
1 Introduction
At present, a variety of methods for test generation from state-based models of software
are available. Most of the methods perform a coverage of varying kind [18, 2, 25], generate tests from a test purpose [23, 21, 3] or a conformance relation [29, 26, 11]. Such
tests can be effective at finding faults but they do not make it possible to decide when to
stop testing. Finite-state machine based testing methods [9, 12] consider behavioral equivalence of state machines as a conformance relation and produce a finite test suite to check
it. The amount of testing depends on an a-priori known upper bound on the number of
states in an implementation automaton. The inability of finite-state machines to represent
data without a state explosion can be solved by using functions (further called labels) on
transitions, which can access and modify global data. This has given rise to notations such
as X-machines (also known as extended finite-state machines). Finite-state machine testing
methods have been adapted to X-machines by treating labels on transitions symbolically
during test generation, i.e. by generating test cases in terms of sequences of labels and then
converting them to sequences of inputs to attempt to drive an automaton of an implementation through these sequences [17, 19]. Further, the X-machine testing method has been
adapted to test hierarchical and concurrent Harel statecharts [5], where a test suite is built
by incrementally following the structure of a specification. Both X-machine and statechart
testing methods preserve the complete test guarantee of the original finite-state machine
testing method, but introduce a number of restrictions X-machine and statechart specifications and implementations have to comply with. The original statechart testing method was
ultimately based on the Chow’s W method [9]; this paper describes what needs changing in
it to make use of the Wp method [12]. The advantage is a reduction in the size of a test set
without weakening of the results obtained by testing. Statecharts are introduced in Sect. 2,
19
followed by the description of the original testing method for statecharts in Sect. 3. The
extension of it is given in Sect. 4; concluding remarks can be found in Sect. 5.
2 Statecharts
Statecharts [13, 14] is a specification and design language derived from finite-state machines by extending them with arbitrarily complex functions on transitions, state hierarchy
and concurrency. Consider a simple tape recorder capable of playback, rewinding, fast
forwarding and recording as well as changing a side of a tape when the button play is
pressed during playback or when a tape ends. The statechart to be presented models the
control portion of this tape recorder, interpreting user’s button presses and sending appropriate commands to a tape drive mechanics. The inputs to this controller are events
play, stop, rec, rew, ff and tape end. Most of them have intuitive meanings; the last event
is issued by the tape mechanism when a tape stops. Output variables are operation and
ff direction, giving a command and a tape direction to the tape mechanism respectively.
The underline font is used to denote input and output variables and events (variables with a
special property described in Sect. 2.2), transition labels are given in italics and state names
are CAPITALISED.
2.1 State hierarchy
TAPERECORDER
MAIN
play
PLAY
direction
stop
RECORD
pause
play
rec
PAUSE
RECORDING
continue
STOP
stop
SEARCH
rew_or_ff
IDLE
stop_rew_ff
REW_FF
Figure 1: The tape recorder statechart
The statechart is shown in Fig. 1. It consists of two parts running concurrently, MAIN
and SEARCH. The first one describes the playback and recording behaviour of the tape
recorder and the second one is responsible for forward advance and rewind, making it
possible to skip portions of music during playback. Concurrent parts are separated by a
dashed line. The TAPERECORDER state containing them is called an AND state. Every
concurrent part of it behaves similarly to a finite-state machine with functions on transitions
except that some states can have a behaviour defined in them. For instance, the behaviour
of the RECORD state is a two-state machine describing whether a tape recorder is actively
recording or waiting for a user command. Only one state in any non-concurrent state can
be active. While a statechart is idle in the MAIN state, this could be state STOP; during
recording this is RECORD in MAIN and RECORDING in RECORD. Non-concurrent
states with behaviour in them are called OR states and those without any, such as PLAY
and RECORDING — BASIC ones.
20
Initial states in any OR state of a statechart are pointed at by transitions from blobs. For
the MAIN state this is STOP, for RECORD and SEARCH — RECORDING and IDLE respectively. There is no need to do this for AND states as every substate of TAPERECORDER
has to be entered whenever TAPERECORDER is. When a transition to an OR-state s is
taken, it is followed by a transition from a blob in that state. If the initial state of s is an OR
one, a further transition will be taken; entering an AND-state involves entering the initial
state of every concurrent part of it. Consequently, taking a single transition in a statechart
typically involves following it with a number of further transitions. The whole set of transitions taken is called a full compound transition, abbreviated FCT; the abovementioned
blobs are default connectors and transitions from them — default transitions.
In the example transition labels are named to reflect user actions, i.e., play occurs when
a user presses the play button, rew or ff occurs if either rew or ff buttons are pressed. To
simplify the presentation, details of transitions’ behaviour are not shown on the diagram.
A precondition which has to be satisfied for a label to be able to fire is called a trigger; an
operation carried out by a label on a transition when that transition executes is called an
action. A transition with a triggered label may only occur when a statechart is in its source
state; such transitions are referred to as enabled. The direction transition is triggered by
the play button to change the side of a tape and by the tape end event when the side being
played back ends. If the MAIN statechart is in the STOP state and a user presses play, then
both play and direction labels will be triggered, but only the play transition from STOP will
be enabled and thus taken by the statechart.
play
PLAY
direction
stop
play
play
STOP
pause ¬stop
¬play
rec
PAUSE
RECORDING
continue ¬stop
¬play
stop
stop
Figure 2: The flattened statechart of the MAIN state
A statechart within a state is left when a transition from that state is taken. For example,
the RECORD state is left when the controller takes the stop transition, regardless of the
substate, RECORDING or PAUSE, it was in. The equivalent statechart to the MAIN state
in Fig. 1 is shown in Fig. 2 where the state hierarchy is removed. To do that, the state
RECORD has to be replaced by its contents; the outgoing transitions stop, play and the
incoming rec one have to be replaced by the five corresponding transitions. The hierarchy
of states imposes priorities on transitions in that those at a higher level have priority over
lower-level ones; to retain these priorities, labels of transitions between RECORDING and
PAUSE states have been appropriately modified in Fig 2.
Full statecharts [14] contain considerably more constructs than those introduced above.
Specifically, there could be multiple transitions from default connectors with labels on them
while this paper considers a simplified problem where there is exactly one non-interlevel
transition from every default connector with no label. Taking labelled default transitions
into account appeared to make testing significantly more complex [5]. A variety of connectors, connecting parts of transitions are considered syntactic sugar and are thus not
elaborated upon; history can be represented by default transitions to every state and test
generation for it is left for future work.
21
State hierarchy of a statechart can be viewed as a tree; the one for the tape recorder
(Fig. 1) is shown in Fig. 3. The root state is the implicit top-level state; it was introduced
because TAPERECORDER is an AND-state and statecharts require the top-level state to be
an OR one [14]. The parent-child relationship between states in the tree is given using the
function, similar to [24]. provides a set of substates of a given state. (RECORD) =
fRECORDING; PAUSEg. An opposite to is parent, such that parent(RECORDING) =
RECORD. The scope of a transition is the lowest-level OR-state above all source and target
states of it. For example, the scope of all transitions with labels play is MAIN and the one
with pause — RECORD.
ROOT (OR)
TAPERECORDER (AND)
SEARCH (OR)
MAIN (OR)
RECORD
(OR)
PLAY
(basic)
STOP
(basic)
REW_FF
(basic)
IDLE
(basic)
PAUSE
(basic)
RECORDING
(basic)
Figure 3: The state tree of the tape recorder
Sets of states which are left and entered by full compound transitions are called configurations and consist of states a statechart can be in simultaneously. For example, if the
statechart enters the PAUSE state, RECORD should also be entered since it is a parent of
the PAUSE one in the state hierarchy. Additionally, if an OR-state is entered, exactly one of
its substates must be entered too, for instance, the controller cannot be in the RECORDING
and PAUSE states at the same time. Every substate of an entered AND-state has to be entered, so that a possible configuration in Fig. 3 is froot; TAPERECORDER; MAIN;
SEARCH; RECORD; PAUSE; REW FF g. A configuration is uniquely determined by a set
of basic states in it [24, 5]. Every state in a flattened statechart corresponds to a configuration in the original one. The formal definition of a configuration is given in [24, 7, 5].
Static reactions are a special case of transitions which may occur within a state, without
leaving it or entering it again (thus no states are left and no default transitions fire when
static reactions are taken). Interlevel transitions are transitions which cross levels of hierarchy. For instance, if the controller had a transition from PAUSE to STOP, it would be
interlevel. Interlevel transitions are not considered in this paper. Sequences of labels of
transitions (not necessarily those which could be taken) are called paths in this paper.
2.2 Step semantics
Assume that an environment the statechart is running in generates some events or changes
variables which enable transitions. Transitions which reside in concurrent states, such as
rew or ff and play, can be taken together, but not stop and play. Such a decision is based on
whether the lowest common ancestor of scopes of two transitions is an AND-state [7, 27].
Priorities of transitions mentioned above are formally related to their scopes in that a transition with a higher scope w.r.t state hierarchy has a higher precedence than any transition
22
with a lower scope. Among the enabled transitions which cannot be taken together, one
can eliminate from consideration those which have a lower priority to any enabled one. If
scopes of any two enabled transitions are the same (such as for play and rec), there is no
rule to prefer one over another one, which implies a nondeterministic choice. In the paper
it is assumed that such a situation never occurs in both a specification and an implementation. The set of transitions resulting from elimination is taken by the system. Enabled
static reactions in states which were not left or entered by transitions in this set will also be
executed. The execution of transitions and static reactions selected as described above, is
called a step. Transitions taken may in turn generate events and make changes to variables.
All changes, including those by the environment, are collected during a step and applied
after the step has ended; all events active in the step which were not generated again are
discarded. The possible loss of value is what differentiates an event from an ordinary variable. Statecharts considered also have to satisfy the condition that no pair of transitions
or static reactions taken in a step modifies the same variable. This implies that actions of
transitions and static reactions taken in a step can be executed in any order and justifies the
word ‘set’ used above to describe a collection of them.
Unlike the synchronous time semantics just described, the asynchronous one allows a
statechart to perform more than one step in response to actions of an environment, within
the same instant of time. This is accomplished by taking steps until no transition or static
reaction is enabled. Since this behaviour severely limits observability and controllability of
a statechart under test (Sect. 3.4), it is prohibited for a specification and an implementation
during testing. For the same reason transitions from states are not allowed to have labels
with empty triggers, i.e. those which are always triggered.
3 Test generation for statecharts
In this section the X-machine testing method and its application to statecharts with state
hierarchy and concurrency are described following [5, 6, 8]. Initially, the method is given
for flat statecharts, followed by the description of testing for hierarchical and concurrent
ones. The testing method is primarily aimed at testing an implementation against a detailed
specification or a design, although it could be used with minor changes to test from a
relatively abstract specification [6].
3.1 Test case generation for statecharts without state hierarchy
With restrictions introduced in Sect. 2, statecharts which do not contain state hierarchy or
concurrency are behaviourally-equivalent to X-machines [5] so that the X-machine testing
method [19, 17] can be used for testing them. The method is founded on the Chow’s W
method [9] and relies on a separation of function and transition diagram testing (similar
ideas are mentioned in [4]). The method concentrates on testing of the transition diagram;
behaviour of the labels of transitions is assumed to have been tested in advance, for example, using the disjunctive normal form (DNF) approach [10, 15]. As a result of testing not
revealing faults, an implementation is proven to be behaviourally-equivalent to its specification [19]. The approach to testing of a transition diagram is very similar to testing
of labelled-transition systems [28]. The main difference is the reliance of this work on
an input/output behaviour of transitions rather than on deadlocks to tell a tester whether a
transition with a given label exists from a particular state in an implementation or not. This
is addressed in more detail in Sect. 3.4.
For a systematic construction of a set of test cases, auxiliary sets have to be built.
Here the MAIN state is used for an illustration, without consideration of the structure of
23
the RECORD state. The set of transition labels (denoted by ) is the set of labels of a
statechart, = fstop; play; rec; directiong. State cover (denoted by C) is a set of sequences
of transition labels, such that one can find an element from this set to reach any desired
state starting from the initial one, C = f1; play; recg. Here 1 denotes an empty sequence
of labels. A characterisation set (denoted by W) allows a tester to check the state arrived
at when a transition fires. For every pair of states, it is possible to construct a path which
exists from one of them and not from the other. Such paths for every pair of states comprise
a characterisation set, W = fstop; playg. Each element of this particular W is a sequence
consisting of a single label. For C and W to exist, a specification of a system has to contain
no states having the same behaviour as some others or states with no transitions leading to.
This property is referred to as minimality.
According to the method, every state has to be entered using C and verified via W.
Additionally, every label has to be attempted from every state and in case a transition corresponding to that label fires, the entered state has to be checked. For instance, in order
to test the play transition from the state RECORD to PLAY, one should begin by entering
RECORD from the initial state STOP. This can be accomplished by generating event rec;
in response, operation should change to rec, assuming that it means a command to a tape
mechanism to start recording. Afterwards, label play has to be attempted by generating
play and observing operation changing to play. Finally, one needs to test that the PLAY
state was entered. This can be done by generating the tape end event to trigger direction
because transition direction exists only from the PLAY state. After triggering it, the modification of the ff direction variable has to be observed. In addition to testing play between
those two states, it is necessary to test its existence between STOP and PLAY as well as
to make sure that no transition labelled by it exists from any other state. The latter test is
needed because in a faulty implementation a transition labelled play could exist from some
state other than RECORD and STOP. The described testing approach yields a set of test
cases C W [ C W using the notation A B to denote set multiplication. For some
sets of sequences A and B, A B = fa b j a 2 A; b 2 Bg, where a b is a concatenation of
sequences a and b. has a higher precedence than set operations [, \ and n.
For implementations potentially containing more states than the corresponding specifications, longer sequences of transitions have to be tried from every state in order to exercise
extra states. Let n be the number of states in a specification and m — the estimated maximal
number of states in an implementation. Assuming the possibility of (m n) extra states,
the set of test cases following [17] is
T
=
C (f1 g [ [ 2 [ : : : [ m
n+1
) W:
(1)
3.2 Test case generation for state hierarchy
The most simple approach to testing state hierarchy is to flatten a statechart, i.e. turn it into
a behaviourally-equivalent one without AND or OR states. For example, Fig. 2 depicts a
result of flattening of the MAIN state in Fig. 1. Such a transformation results in a simple
but, in practice, huge statechart. Flattening is essentially what is done by [22]. As an alternative, an approach of an incremental test case development using the hierarchical structure
of statecharts is proposed. It has the advantage of following the development process and
thus the set of test cases can be continuously updated to reflect specification changes made,
avoiding the ‘big bang’ in test case generation. Moreover, if certain parts of a statechart
are implemented separately and do not share any labels, one does not have to test for faults
where labels from one part are used in another one and vise-versa, significantly reducing
the size of a test set [8, 5].
24
Test case generation begins with the construction of a tuple (; C; W ), called a test case
basis (abbreviated TCB) for every non-basic state considering all its substates as basic ones.
Afterwards, one has to walk the state hierarchy bottom-up, merging TCB tuples at every
level. The idea of merging is to produce a TCB which could be generated from a flattened
M
M
statechart. The result of merging for the top-level root state (M
root ; Croot ; Wroot ) can thus be
used to generate a set of test cases for the whole system following Eqn. 1. When transitions
are added, removed or substates are removed from a state in the process of development,
only its own TCB has to be recomputed and merged with TCBs of the higher-level states;
addition of non-basic states additionally requires computation of merged TCBs for them.
The elements of the test case basis for the RECORD state are given by
RECORD = fpause; continueg; CRECORD = f1; pauseg; WRECORD = fpauseg: TCB for the MAIN
state is MAIN = fplay; stop; direction; recg; CMAIN = f1; play; recg; WMAIN = fstop; playg:
The rule for C constructs paths to all configurations in MAIN, i.e. for every basic state
in it, C should have a path leading to it. CMAIN contains paths for basic states directly
M
— for all basic states underneath RECORD, starting from
underneath MAIN and CRECORD
the boundary of RECORD. Consequently, taking all sequences of CMAIN and prefixing all
M
with a path in CMAIN to enter RECORD yields the expected
those from CRECORD
M
M
= f1; play; recg [ frecg CMAIN = CMAIN [ fpath in CMAIN to enter RECORD g CRECORD
f1; pauseg = f1; play; rec; rec pauseg. WMAIN distinguishes between any pair of states in
M
— between states in RECORD; uniting the two sets gives
MAIN and WRECORD
M
M
= fstop; play; pauseg, identifying all configurations in MAIN.
WMAIN = WMAIN [ WRECORD
M
M
MAIN = MAIN [ RECORD = fplay; stop; direction; rec; pause; continueg is clearly a set of all
the labels in MAIN and its substates.
3.3 Test case generation for concurrency
Testing of concurrency follows the same approach as testing of state hierarchy, except that
multiple transitions are attempted. The elements of the test case basis for the top component, MAIN, have been constructed above; those for the bottom one are built similarly:
M
M
MSEARCH = frew or ff; stop rew ff g; CSEARCH
= f1; rew or ff g; WSEARCH
= frew or ff g: In order to visit all configurations and consider all transitions as well as their combinations, sets
C have to be multiplied and W sets be united; M has to contain a label of every possible
set of transitions with orthogonal scopes [7].
M
TAPERECORDER
= (f1 g [ M )(f1 g [ M ) n f1 g = fplay; stop; direction; rec;
MAIN
SEARCH
pause; continue; rew or ff; stop rew ff; play-rew or ff; stop-rew or ff;
direction-rew or ff; rec-rew or ff; pause-rew or ff; continue-rew or ff;
play-stop rew ff; stop-stop rew ff; direction-stop rew ff;
M
CTAPERECORDER
M
WTAPERECORDER
=
=
rec-stop rew ff; pause-stop rew ff; continue-stop rew ff g;
M
M
CMAIN
CSEARCH
= f1; play; rec; rec pause; rew or ff; play-rew or ff;
rec-rew or ff; rec-rew or ff pauseg;
M
M
WMAIN
[ WSEARCH
= fstop; play; pause; rew or ff g:
AB = fa b j a 2 A; b 2 Bg where a b means that sequences a and b are taken sideby-side with ith element of a and b taken in the same step. Notation-wise, in order to take
several transitions in the same step, these sets of sequences have to be considered to be sets
of sequences of sets with elements of inner sets shown delimited with a dash (-). For example, (pause stop) rew or ff = pause-rew or ff stop, (pause stop) 1 = pause stop. Here
dash means that pause and rew or ff are taken in the same step, while stop (separated by a
space) — in the one after it. Multiplication is used for C construction in order to produce
25
the shortest possible sequence of transitions by taking as many of transitions as possible in
the same step. A sequential multiplication could be used instead, leading to longer test
sequences. For the tape recorder under the assumption of an implementation containing no
more states than the specification, test case generation produces 672 sequences. It is later
contrasted with the size obtained using the Wp method.
Static reactions can be transformed into ordinary transitions through a well-known
transformation of a statechart. The idea is to consider static reactions as ordinary transitions
executing concurrently with the behaviour of states, with which these static reactions are
associated. For example, a static reaction in the TAPERECORDER state can be expressed
by adding a third concurrent part to it with a single state and a transition looping in this
state. In order to represent static reactions in other states, such as RECORDING, those
states have to be converted to AND-states. With this transformation, static reactions can be
tested similarly to ordinary transitions.
3.4 Test data generation
Since the aim of the statechart testing method is to test a transition diagram, it is assumed
that all labels are implemented correctly. Thus, an implementation may contain a different
number of states, transitions traversing them in any way but labels of implemented transitions behave the same as those in a specification. Since sequences of labels generated by
the test method are often not related to those taken by a system during routine operation, it
is necessary to force those labels to be triggered through changes to externally accessible
variables and all other labels — not to be triggered, even if they become such as a consequence of actions of some transitions. In addition, for every executed transition some
output changes have to be observed, giving evidence that a transition with the expected
label was actually taken by the implementation under test. The requirement of being able
to trigger, the one of the input-output pair to identify a transition label, a requirement of absence of shared labels between states of a specification, and the one that transitions cannot
directly enter default connectors, comprise the design for test condition. Under assumption that labels rec, pause and continue are triggered by the same rec event and an output
from them makes it possible to uniquely identify them, the controller satisfies these requirements. More complicated statecharts may have to be designed in the first place to satisfy
this condition; it is always possible to add extra inputs, outputs [20], slightly modify labels
[6] and re-route transitions to default connectors [5] to satisfy design for test.
Reference [28] considers labelled transition systems; such a system deadlocks if no
transition with a label attempted by a tester exists from its current state. The method presented in this paper converts labels to inputs; in response to an input triggering a label with
no corresponding transition from its current state, a statechart would either take a different
transition, a static reaction or simply ignore such an input. An output from an implementation (or absence of any) would then indicate which transition or static reaction (if any) has
been executed.
If these requirements, those provided in Sect. 2.2, as well as the assumptions of the
minimality (Sect. 3.1) of every OR-state in a specification, availability of a reliable reset
(for both a specification and an implementation) and a known upper bound on a number of
states in an implementation are satisfied, a test set can be generated, applied and provide a
provable compliance of the behaviour of an implementation, to that of a specification [5].
It is important to stress the requirement of the synchronous behaviour of statecharts postulated in Sect. 2.2. Its purpose is to prevent uncontrollable sequences of transitions taken by
a system under test. As a consequence, communication between concurrent states has to be
absent. For some statecharts, it could be possible to test the core transition structure with
transitions which do not trigger others and then test the remaining part of it, following the
26
approach described in [16].
4 Testing of statecharts using the Wp method
This section describes changes to the above testing method for statecharts, so as to use the
Wp method as a foundation.
4.1 Description of the Wp method
The Wp method [12] is an improvement of the W one, targeted at the reduction of a number
of test sequences. Instead of using a single W set, multiple smaller sets are introduced, each
identifying a specific configuration. By ending test sequences with smaller sets, the number
of test sequences is reduced. Unfortunately, in a faulty implementation small identification
sets may fail to identify configurations correctly. To cope with this, a two-phase approach
is taken where the first stage tests a part of a statechart and checks whether the small sets
identify configurations; the rest of the statechart is tested at the second stage.
Formally, for a configuration conf , an identification set wroot
conf is a set allowing one to
distinguish between conf and all other configurations in a statechart. The purpose of the
root in the superscript of w will be explained later.
The first phase of the Wp method corresponds to the part of the W method where every
configuration is entered and verified using the full W = [conf wroot
conf set. Consequently, each
configuration conf is also checked whether it could be identified by the smaller set wroot
conf .
The set of test cases used in the first phase can be written as
= CM (f1 g [ M [ (M )2 [ : : : [ (M )m n ) W
This differs from the full test set (Eqn. 1) in that the highest power of M is m
than m n + 1.
T1
n rather
In addition to configuration verification, this phase also tests many transitions with labels used in C. Specifically, transitions labelled by singleton sequences in C get tested
(between the respective configurations), since both their initial and final configurations are
verified with the full W set. For non-singleton sequences, such as rec pause, the intermediate configuration does not necessarily get verified and thus in general none of the two
transitions get tested during this phase. If, however, the rec label exists in C as a singleton
sequence, the intermediate configuration is verified with W and thus both transitions get
tested. This can be generalised, such that for a prefix-closed C (for every sequence s 2 C,
C contains all prefixes of s) all transitions traversed by C get tested between their respective
configurations. This holds for the tape recorder.
At the second phase all transitions which were left out in the first phase are tested, using
small sets wroot
conf to identify configurations and therefore create less test cases compared to
the W method while still providing the same level of confidence in the result of testing.
Let the initial configuration of a statechart be denoted by confinit . The set of test cases for
the second phase of the Wp method (without leaving out already tested transitions) is the
following:
fpathg wroot
T2 =
CE(path;confinit )
[
2
path TS
M
M 2
where TS = C (f1 g [ [ ( ) [ : : : [ (M )
) and CE stands for Configuration Entered. CE(path; conf ) is the configuration entered after taking a path path from
a configuration conf . For instance, with confinit = fSTOP; IDLE g, wroot
CE(rec pause;confinit ) =
wroot
(only
basic
states
in
these
two
configurations
are
shown).
fPAUSE;IDLEg
M
M
27
m n
4.2 Merging rules for identification sets
In this subsection sets wroot
for every state s of a statechart, merging rules for them and the
s
are
described.
construction of wroot
conf
Let wi;j denote a set of paths which distinguishes between states i and j in the same flat
statechart. For example, wSTOP;PLAY = fplayg. For a state s 2 (st), an identification set is
defined as ws = i2(st) ws;i , which is a set allowing one to distinguish between a particular
state s in a statechart st and all other states in st (but generally not those in a different state).
For the controller these sets are: wSTOP = fstopg; wPLAY = fdirectiong; wRECORD = fplay; recg;
wREW FF = frew or ff g; wRECORDING = fpauseg; wPAUSE = fcontinueg: The characterisation set
W can be expressed in terms of wi;j as
S
Wst
=
[
2
ws;i
s;i (st)
=
[
2
ws
(2)
s (st)
Rules to construct a characterisation set W M for a statechart involve merging WMAIN
of the main statechart and merged WsM sets for every non-basic state s in it. The same
approach can be applied to merging of identification sets. As defined above, a state st in
some statechart can be identified with wst ; using S to denote this statechart, it is possible
to write wSst = wst . In order to obtain the identification set wSs for a state s contained in
st of a higher-level state S (assuming the last two are OR states), one has to identify s in
st and st in S. This gives wSs = wSst [ wsts . Consequently, wSs = wSs1 [ wss12 [ : : : [ wssn
where s1 : : : sn are such that s1 2 (S); s2 2 (s1 ); : : : ; sn 2 (sn 1 ); s 2 (sn ). For
= wMAIN
[ wRECORD
= fstop; play; continueg. The proposition in the following
Fig. 1, wMAIN
PAUSE
RECORD
PAUSE
subsection describes how to reduce this set. The general rule for merging of w sets can be
written as follows:
? if S = s or S is an AND-state.
ws if s 2 (S) and S is an OR-state,
S
ws =
where ws identifies s within its enclosing one S.
wSst [ wsts for some st 2 + (S) and s 2 (st).
8>
<
>:
Above, + (S) means a set of children, grandchildren and so on of S. Identification of a
state s in the whole statechart is accomplished using wroot
s .
The identifying set for a configuration conf can be defined as a union of identifying
sets of basic states in the configuration, i.e.
wroot
conf
=
[
2
wroot
s
s conf ; s is basic
Applying this to the tape recorder, the size of the set of test cases for the first phase of the
Wp method is 32 and the second one — 306, resulting in 338 sequences which is a half of
the set provided in Sect. 3 above; the reduction could be much bigger for complex systems,
where the number of transitions to verify is high.
4.3 Optimisation of state identification sets
Above, wRECORDING and wPAUSE were merged with wRECORD even though it was not necessary
as wRECORDING and wPAUSE already identify states in the flattened MAIN state. Note that if
wRECORDING = fcontinueg was used, there would be no way to tell STOP and RECORDING
apart in the merged statechart because transitions with the continue label exist from neither
of them. These considerations give rise to the following proposition.
28
Proposition Merging rules for state identification sets ws within an OR state parent(s) can
(s)
= wparent
if the following holds:
be simplified to wroot
s
s
Labels used in any state of a statechart are not used in any other one.
For all states s of a statechart, ws only contains labels which exist on transitions from
s (described above).
The first condition of this proposition implies, for instance, that rec cannot be used
inside the RECORD state as it is used in the MAIN one. This condition holds due to the
requirements for the statechart testing method described in Sect. 3.4; the second one can be
made true by construction of ws . Using the proposition,
MAIN
wMAIN
RECORDING = fpauseg; wPAUSE = fcontinueg:
4.4 Optimisation of configuration identification
Consider the configuration with basic states PAUSE and IDLE. The identification set
for it is wfPAUSE;IDLEg = fcontinue; rew or ff g, but it could be reduced to a single element
continue-rew or ff by taking the two transitions in the same step. The rule for construction
of an identifying set for a configuration can thus be optimised as follows:
wSs [ wsconf if S is an OR-state, where s 2 (S) \ conf ,
i.e. the only substate of S in the configuration conf .
S
?
if
S is a basic state.
wconf =
1 [ws2 [ : : : [wsn if S is an AND-state,
wsconf
conf
conf
for n substates of S, si 2 (S) \ conf .
8
>>
<
>>
:
a
b
a
b
[wsconf
= fseqa seqb j seqa 2 wsconf
[ f1 g; seqb 2 wsconf
[ f1 gg n f1 g,
where wsconf
S
such that seqa and seqb can be taken in the same step. The purpose of wconf is to identify
a part of a configuration conf underneath S, thus it is assumed that wSconf = wSconf \+ (S) .
For example, when applied to the configuration cfg with basic states PAUSE and IDLE, the
above definition becomes
root
TAPERECORDER
TAPERECORDER
wroot
cfg = wTAPERECORDER [ wfMAIN ;RECORD;PAUSEg [ wfSEARCH ;IDLEg
q
q
RECORD
wMAIN
wSEARCH
RECORD [ wPAUSE
IDLE
The aim of the rule is to take as many sequences in the same step as possible. For sets
a
b
, wsconf
optimised as described in Sect. 4.3, all pairs of sequences from any two sets wsconf
(sa ; sb 2 (S)) can be taken in the same step, but applicability of configuration identification does not depend on whether state identification sets are optimised or not. To avoid
redundant sequences in wSconf for an AND-state S, every element of the identification sets
i
has to be used only once (not shown in the definition). One of the seqa and seqb
wsconf
above is allowed to be empty (denoted 1) to accommodate pairs of sequences which cannot
be taken in the same step as well as to handle varying numbers of sequences in the sets to
be [-ed.
4.5 Merging rules for the characterisation set
The definition of W (Eqn. 2) for the case of merged w can be shown to be consistent with
merging rules for W, such that after using the provided merging rules to construct wroot
s ,
it is possible to unite these sets afterwards (Eqn. 2) and obtain the rule for W construction
(sections 3.2 and 3.3). The proof [5] is omitted from the paper. For example, W for the
MAIN
MAIN
MAIN
MAIN
MAIN state of the tape recorder in Fig. 1 is W = wMAIN
STOP [ wPLAY [ wRECORD [ wRECORDING [ wPAUSE =
fstop; direction; rew or ff; pause; continueg. This W set and the reduced ws were used in
the computation of the size of the set of test cases in Sect. 4.2.
29
The described optimisation of configuration-identifying sets by taking multiple transitions at the same time may lead to a bigger W set than that constructed using the W
method. For example, in the controller every configuration can be identified by a pair of
transitions from its basic states. Optimised identification sets could use pairs of such transitions continue-rew or ff, pause-rew or ff and so on, a union of which is
fstop; direction; pause; continuegfrew or ff; stop rew or ff g, containing 8 elements as opposed to 4 for W constructed from unoptimised identification sets. Such a growth of W
causes the number of sequences in the first phase of the Wp method to increase to 64 but
in effect actually leads to a reduction in the total size of the set of test cases. This follows
from the wconf sets being reduced twice and thus halves the size of the second phase. In the
overall, the reduction is by 36% from the Wp method without optimisation of wconf (but
with optimisation of state identification) and by 68% from the W method.
4.6 Usage of status information
In some statecharts, it is possible to detect a state not by taking transitions but by observing
values of some variables such as dashboard lights. This could lead to a considerable reduction of the size of a test set. Information obtained by observation is further called status
information. Its usage is not new - most state-based object-oriented testing methods rely
on it, such as [1, 30].
Status variables have to be correctly implemented and their usage restricted in the same
way as labels: if some variable is used to identify a group of states, all those states should be
within the same higher-level state. For example, information about whether a tape moves
or not, cannot be used as a status as it is present in both PLAY and REW FF states (which
belong to different higher-level states) because one cannot independently identify states in
MAIN or SEARCH with it.
Since status makes it possible to identify groups of states without taking any transitions,
when constructing ws for a state s, it is necessary to distinguish it only from members of the
group it belongs to. More precisely, when identifying states, one could rely on statusgr to
identify groups gr of states and then construct ws;gr for states within each group. This leads
to usage of a pair (statusgr ; ws;gr ) instead of a set ws . For example, in the tape recorder
a tester can see whether a head is close to a tape; this is assumed to be unaffected by
the state in the SEARCH statechart, which only controls the speed of tape movement.
The head position permits an introduction of the status headclose boolean status variable,
considered to be true in the PLAY and RECORD states of the MAIN statechart and define
wSTOP = (f: status headcloseg; ?). : means that the output should be negative from the
status. The negation sign is not actually used in the set of test inputs but is shown here
for clarification of the expected output. Note that the proposition in Sect. 4.3 is easily
applicable to status variables. Here the length of test sequences for identification of the
STOP state as well as the length of those in the W set of the first phase is reduced by one.
There could be more than a single status variable; for example, if one can observe
the red ‘recording in progress’ light, the RECORD state can be assumed and wMAIN
PLAY =
(fstatus headclose; : status recordinglightg; ?). Here both STOP and PLAY states are
identified without taking any transitions. WMAIN = (fstatus headclose; status recordinglightg;
fpauseg) can be used for testing of the statechart. The speed of tape movement could also
be used to tell REW FF from the IDLE state. In the example, status information only
reduces the size of the first phase of the Wp method, however in complex systems with
configuration identification sets containing a number of labels, one could expect it to reduce the complexity of testing significantly.
Having constructed statusgr and the corresponding ws;gr state identification set, it is
necessary to integrate them. Since one can check all status variables in a single step, they
30
all can be united into a singleton sequence, the only element of it performing all status
reporting. Variables and sequences of transitions used to identify states can be merged
to identify configurations using the rules described in Sect. 4.2–4.4. Semantics of Harel
statecharts makes it possible to observe status variables at the same time as applying the first
element of a sequence from a state identification set. In practice, however, a tester is more
likely to make a separate step devoted to observation of a status report. A configuration
root
conf can be identified by a set fstatusconf gwroot
statusconf ;conf instead of a larger wconf . Here
statusconf is the set of status variables, used in the identification of this configuration; if
a particular value of statusconf does not single out conf , wroot
statusconf ;conf is used to identify it
among configurations satisfying that value of statusconf . The operator is used instead of
in order to observe status and take a transition labelled by the first element of sequences
in wroot
statusconf ;conf at the same time.
Certain aspects of consistency of statecharts can be verified by testing. For example, it is possible to ascertain that if a state is entered, its parent state is entered too. For
the tape recorder, one could verify RECORDING 2 (RECORD) by using wRECORDING =
(fstatus recordlightg; fpauseg), since wRECORD = (fstatus recordlightg; ?) and from the
proposition in Sect. 4.3 wRECORDING = (?; fpauseg). Status information provides a ‘free’
way to do this type of checking.
5 Conclusion
The Wp method can be applied to statecharts in a similar way to the W one [6, 5, 8], by
extension of merging rules for identification of a configuration. Due to the complexity
of statecharts, the Wp method can be expected to provide a significant reduction in the
size of the set of test cases, compared to the W method. Further, rules were provided
for different optimisations of such sets, allowing additional reduction in the complexity of
testing. Direct observation of state information can lead to further reduction of the size
of a set of test cases and can be applied together with the other optimisations described.
Usage of status variables also permits verification of state properties of a statechart, such
as whether a parent of an entered state is itself in a configuration.
The most important limitations of the presented extension are lack of handling of interlevel transitions, requirement for labels not to be shared between states and a need to force
sequences of transitions during test execution. For the first of these, one might consider
interlevel transitions to belong to their scope states; shared labels can be overcome either
by partial flattening of the structure of a statechart or by making TCB construction sensitive
to shared labels. The work on these two issues is close to completion. For the last problem,
constraint logic programming [23] could potentially be used to derive sequences of test
inputs without resorting to artificial test inputs. This is a possible direction for future work.
Theoretical foundations of the usage of W and Wp testing methods for statecharts have
been shown to be correct in [5].
Acknowledgements
This work was funded by the DaimlerChrysler Research Laboratory (FT3/SM), Berlin,
Germany.
31
References
[1] T. Ball, D. Hoffman, F. Ruskey, R. Webber, and L. White. State generation and
automated class testing. Software Testing, Verification and Reliability, 10(3):149–
170, September 2000.
[2] M. Benjamin, D. Geist, A. Hartman, G. Mas, R. Smeets, and Y. Wolfsthal. A feasibility study in formal coverage driven test generation. In 36th Design Automation
Conference (DAC’99), June 1999.
[3] M. Blackburn. Using models for test generation and analysis. In Digital Avionics
Systems Conference (DASC’98), 1998.
[4] M. Blackburn, R. Busser, and J. Fontaine. Automatic generation of test vectors for
SCR-style specifications. In 12th Annual IEEE Conference on COMPuter ASSurance,
COMPASS ’97, 18–19 June 1997.
[5] K. Bogdanov. Automated testing of Harel’s statecharts. PhD thesis, The University
of Sheffield, January 2000.
[6] K. Bogdanov and M. Holcombe. Statechart testing method for aircraft control systems. Software testing, verification and reliability, 11:39–54, 2001.
[7] K. Bogdanov and M. Holcombe. Properties of concurrently taken transitions of statecharts. In Semantic Foundations of Engineering Design Languages (SFEDL), 2002.
[8] K. Bogdanov, M. Holcombe, and H. Singh. Automated test set generation for statecharts. In D. Hutter, W. Stephan, P. Traverso, and M. Ullmann, editors, Applied
Formal Methods - FM-Trends 98, volume 1641 of Lecture Notes in Computer Science, pages 107–121. Springer Verlag, 1999.
[9] T. Chow. Testing software design modeled by finite-state machines. IEEE Transactions on Software Engineering, SE-4(3):178–187, 1978.
[10] J. Dick and A. Faivre. Automating the generation and sequencing of test cases from
model-based specifications. In J.C.P. Woodcock and P.G. Larsen, editors, FME ’93:
Industrial Strength Formal Methods, volume 670 of Lecture Notes in Computer Science, pages 268–284. Formal Methods Europe, Springer Verlag, April 1993.
[11] J.-C. Fernandez, C. Jard, T. Jeron, and G. Viho. Using on-the-fly verification techniques for the generation of test suites. Lecture Notes in Computer Science, 1102:348–
359, 1996.
[12] S. Fujiwara, G. von Bochmann, F. Khendek, M. Amalou, and A. Ghedamsi. Test
selection based on finite state models. IEEE Transactions on Software Engineering,
17(6):591 – 603, June 1991.
[13] D. Harel, H. Lachover, A. Nammad, A. Pnueli, M. Politi, R. Sherman, A. ShtullTrauring, and M. Trakhtenbrot. STATEMATE: A working environment for the development of complex reactive systems. IEEE Transactions on Software Engineering,
16(4):403–414, April 1990.
[14] D. Harel and A. Naamad. The STATEMATE Semantics of Statecharts. ACM Transactions on Software Engineering and Methodology, 5(4):293–333, 1996.
32
[15] R. M. Hierons. Testing from a Z specification. Journal of software testing, verification
and reliability, 7(1):19–33, 1997.
[16] R. M. Hierons. Testing from semi-independent communicating finite state machines
with a slow environment. IEE Proceedings on Software Engineering, 144(5–6):291–
295, 1997.
[17] M. Holcombe and F. Ipate. Correct Systems: building a business process solution.
Springer-Verlag Berlin and Heidelberg GmbH & Co. KG, September 1998.
[18] H. Hong, Y. Kim, S. Cha, D. Bae, and H. Ural. A test sequence selection method for
statecharts. Software testing, verification and reliability, 10:203–227, 2000.
[19] F. Ipate and M. Holcombe. An integration testing method that is proved to find all
faults. International Journal on Computer Mathematics, 63:159–178, 1997.
[20] F. E. Ipate. Theory of X-machines and Applications in Specification and Testing. PhD
thesis, University of Sheffield, July 1995.
[21] A. Kerbrat. Automated test generation from SDL/UML specifications. Obtained
privately, March 1999.
[22] Y. Kim, H. Hong, S. Cho, D. Bae, and S. Cha. Test cases generation from UML state
diagrams. IEE Proceedings - Software, 146(4):187–192, August 1999.
[23] H. Lötzbeyer and A. Pretschner. Testing concurrent reactive systems with constraint
logic programming. In 2nd Workshop on Rule-based constraint reasoning and programming, Singapore, September 2000.
[24] E. Mikk, Y. Lakhnech, C. Petersohn, and M. Siegel. On formal semantics of statecharts as supported by Statemate. In BCS-FACS Nothern Formal Methods Workshop,
pages 0–13, Craiglands Hotel, Ilkley, West Yorkshire, U.K., July 1997.
[25] J. Offutt and A. Abdurazik. Generating tests from UML specifications. In Second
International Conference on the Unified Modeling Language (UML99), Fort Collins,
CO, October 1999.
[26] J. Peleska and M. Siegel. Test automation of safety-critical reactive systems.
http://www.informatik.uni-bremen.de:80/jp/papers/
sacj97.ps.gz, August 1996.
[27] A. Pnueli and M. Shalev. What is in a step: On the semantics of statecharts. In
T. Ito and A. Meyer, editors, Int. Conf. TACS’91: Theoretical aspects of Computer
Software, volume 526, pages 244–264. Springer-Verlag, September 1991.
[28] Q. M. Tan, A. Petrenko, and G. von Bochmann. Checking experiments with labeled
transition systems for trace equivalence. In IFIP 10th International Workshop on
Testing of Commnication Systems (IWTCS’97), Korea, 1997.
[29] J. Tretmans and A. Belinfante. Automatic testing with formal methods. In EuroSTAR’99: 7th European Int. Conference on Software Testing, Analysis & Review,
Barcelona, Spain, November 8–12, 1999. EuroStar Conferences, Galway, Ireland.
[30] B. Tsai, S. Stobart, N. Parrington, and I. Mitchell. Automated class testing: Using
threaded multi-way trees to represent the behavior of state machines. Annals of Software Engineering, 8:203–221, 1999.
33
34
!"#$&%('*)+,#-/.
021436587:9<;=49?>A@BC;D7
6E FCGHJILKNMPO8Q"R+GTSVUAWXGAUYZ6[/S\K]UAYK4S2^_W`S\a8UcbcYdSLKNM
R<K4be+F8bgf6HihjSNWlk6FJIVUnmJZXo8p:ojo-[SLKqUAYK4S\ZsrtO8uvFJW`SVF
wxBC58=4B`9zy|{"7:3s58}+{_7
~Ud€F8bDK4uiUcW<K/OQ2‚Ou$€HsKqUcbR<GgSƒUcWXGUDZ+R:„<Uc…iUcI\h†^W`SLaUAbTYgS\KNM
rtUTf`UcW<K‚O:HJbDK‡Zs[/O8bK]OCˆCUcINIVOR<K4bU
U8K‡Z+RC„+Uc…iUcI\h`Z+Rm-‰J~t["Z^"Š
w‹=ƒŒ+7P361\Žj3+‘’7
~Ud€F8bDK4uiUcW<K/OQ2‚Ou$€HsKqUcbR<GgSƒUcWXGUDZ+R:„<Uc…iUcI\h†^W`SLaUAbTYgS\KNM
rtUTf`UcW<K‚O:HJbDK‡Zs[/O8bK]OCˆCUcINIVOR<K4bU
U8K‡Z+RC„+Uc…iUcI\h`Z+Rm-‰J~t["Z^"Š
“•”_– 365i—™Bs˜ 1dB`˜ 9"7:šŽ ”
E6FCGHJILKNMPO8Q"R+GTSVUAWXGAUYZ6[/S\K]UAYK4S2^_W`S\a8UcbcYdSLKNM
R<K4be+F8bgf6HihjSNWlk6FJIVUnmJZXo8p:ojo-[SLKqUAYK4S\ZsrtO8uvFJW`SVF
› "š;
58B`Žj;jœ]ž Ÿg¡T¢C£C¤s¥
¦£¨§:©«ª¬N­N¦
ž:§6¦¡g®6¯°-±]²v³j´cµ:¶V·<¸A¹vºƒ¢!¡n»•¶V¼½¸
·+¾c¸
¿\À«²Á³!´TµC¶V·+¸¹‡Â-Ò¦¡g¦vÄ`¡T¢jÄ+¢!Åg¦£
§:©ÁÆ¢j­Ç¥¢!Èɧ+¦¬NžPÊË!ÌjÌ-Í!Å/Í$§6ÍjÅg¬NÅ΃¢j¡’ÍÉÄ6¢ ÅgÅg¬N§`­½¦ÏÅdÄ+¦¥
¬ÑÐ+¥
Í8ŸT¬½¢!žv­NÍjž`®j¤6ÍJ®j¦Íjžs£ÒÅg¬½ž6¥¦ŸTÓ`¦
ž™Í$ž:¤`ÈnÔ
§+¦
¡•¢JÎ΃¤s¡dŸTÓ`¦
¡•¬½ž:Õ!¦ÅdŸg¬N®!Í8ŸT¬½¢!žsÅÓ6́Õj¦t£`¦
ÈÁ¢jžsÅdŸg¡cÍ8ŸT¦£ÁŸTÓ`¦ÏՁÍj­½¤s¦¢JΟgÓ`¬Çŕ¬N£C¦DÍ`Ö:×zž:¤`ȧ6¦¡’¢jÎ_¥­ÇÍjÅTÅg¦Å
¢jÎØÔqÈÁÍ!¥cÓ`¬Nž`¦ÅtÓśÕj¦§6¦¦
ž«¬N£C¦ž Ÿg¬½Ðs¦£«ÍJžs£«Å‡ŸT¤s£C¬N¦£X¯<ÈÁ¢!ÅdŸÏ¬NÈÁÄ6¢!¡dŸcÍJž Ÿg­N©|ŸgÓ`¦Á¥­ÇÍjÅTÅt¢JιAÙL¿g¸c³8²Ú°-±
²v³j´cµ:¶V·<¸A¹AÖ6×۟gÓ`¦¢j¡T©i¢JÎ"Ÿg¦DҟT¬½žs®v§sÍjÅg¦£|¢jžÅdŸg¡T¦ÍjÈÚØÔqÈvÍj¥cÓ`¬Nž`¦DÅÓsÍjÅÍj­NÅg¢Á§6¦¦
žP£C¦Õj¦­½¢!Ä6¦D£XÖsÜÓ`¬ÇÅ
Íj­½­N¢8ÃÅϟgÓ`¦i®j¦
žs¦
¡cÍ8Ÿg¬N¢jž¨¢JΟT¦ÅdŸÅd¦
ŸTÅ$ŸgÓsÍJŸÍJ¡T¦ÁÄ`¡g¢8Õ!¦£‘Ÿg¢P®!¤sÍJ¡cÍJž ŸT¦
¦nŸgÓ`¦™¥¢j¡T¡T¦¥AŸTž`¦ÅTÅ¢JÎ2¬NÈÁÄ`­½¦
Ô
ÈÁ¦
ž ŸcÍ8Ÿg¬N¢jžnÍJ® ÍJ¬Nžsҟ"ŸgÓs¦ÅgÄ+¦¥¬½Ð6¥Í8Ÿg¬N¢jžn¤`žs£`¦
¡¥¦¡dŸcÍJ¬Nž¥
¬½¡c¥¤`ÈvÅdŸTÍjžs¥¦DÅ
Ö8×Ý¡g¦D¥¦ž!ŸÄsÍjÄ6¦¡®j¦
žs¦
¡cÍJ­N¬NÅg¦Å
ŸTÓ`¬NŒŸTÓ`¦
¢!¡g©nŸg¢ŸgÓs¦Ï®!¦
ž`¦¡TÍj­6ØÔLÈvÍ!¥cÓ`¬½žs¦ÈÁ¢C£C¦
­XÍJž6£X¯:΃¤`¡gŸgÓ`¦¡gÈÁ¢j¡T¦j¯!ŸgÓs¦t¡T¦Åg¤`­½ŸTŕÄ`¡T¢8Õj¦
žÒ¥ÍJži΃¢j¡TÈ
ŸTÓ`¦v§sÍjÅg¬ÇÅt¢jŸ‡Ã•¢£C¬ÇҟT¬½žs¥Ÿ-Ÿg¦DҟT¬½ž`®PÅdŸg¡cÍ8ŸT¦
®!¬½¦DÅ
ÖXÜÓ`¬ÇÅÄsÍJÄ+¦
¡É®j¦
žs¦
¡cÍJ­N¬NÅg¦ÅŸgÓ`¦DÅd¦v¡T¦¥
¦
ž Ÿ-¡g¦DÅd¤s­ÑŸcÅϟg¢
ŸTÓ`¦tžs¢jžCÔ]£C¦ŸT¦
¡TÈÁ¬½ž`¬ÇÅdŸg¬Ç¥Ï¥ÍjÅg¦jÖ:ÜÓ`¦®j¦ž`¦
¡cÍJ­N¬NÅTÍ8ŸT¬½¢!žv¬NŞs¢jžCÔLŸg¡T¬½Õ:¬ÇÍJ­<ÍJžs£i¬ÑŸ¥ÍJž™¥
¢jÄ+¦Ã2¬ÑŸTÓ|Íj­½­+Ÿ‡©:Ä6¦DÅ
¢jÎ_ž`¢!žCÔq£`¦Ÿg¦¡gÈÁ¬Nž`¬ÇÅdÈ(ŸTÓsÍ8Ÿ¥ÍJž|§6¦΃¢!¤`žs£|¬NžÍjžØÔqÈÁÍ!¥cÓ`¬Nž`¦Èn¢C£C¦­\Ö
Þ7 ßXàÉ3s5 – šjá6ܦDҟT¬½ž`®6¯:Ðsž`¬½Ÿg¦$ÅdŸTÍJŸg¦-ÈvÍj¥cÓ`¬Nž`¦!¯º4ÅdŸg¡T¦ÍJÈÒ’ØÔqÈvÍj¥cÓ`¬Nž`¦!¯C΃¢j¡TÈvÍJ­XÅdÄ+¦¥
¬ÑÐ+¥
Í8ŸT¬½¢!ž
âãäâ BC;D7 }+365=\7:šjá`åÖ æ`Ö æ`¯`åÉÖçæCÖ è
é
!ê ë’ìCí`î2ïðñ+ì`òdî/ë
ó ž`¦-¢JÎ"ŸgÓs¦$ҟT¡g¦ž`®JŸTÓsÅ¢JΣC¦
Õ!¦
­N¢jÄ`¬Nž`®vÍ΃¢j¡TÈvÍJ­ÅgÄ6¦D¥¬½Ð6¥
ÍJŸg¬N¢jž¢JÎÍvÅd©CÅdŸg¦
ÈÚ¬NşTÓ`¦Î4Íj¥Ÿ2ŸgÓsÍJŸ¬ÑŸÏ¥
ÍJžÍj¥ŸÍjÅ
Í$¡T¦Îƒ¦¡g¦žs¥¦tÄ6¢!¬½ž Ÿ/΃¢!¡/ŸTÓ`¦Äs¡g¢jô‡¦¥AŸ£C¦
Õ!¦
­N¢jÄ`ÈÁ¦ž!ŸD¯!¬½Ÿ•¥ÍJži£`¦Ðsž`¦!¯:¬½žvŸTÓ`¦t΃¢j¡TÈõ¢jÎÍÉö ¤sÍ!Åd¬½ÔL­N¦
® ÍJ­sÅdŸTÍJŸg¦Èn¦ž Ÿ¯
ŸgÓ`¦¡T¦ö ¤`¬N¡g¦D£v¢j¤`ŸT¥¢!ÈÁ¦¢JΟgÓ`¦ÏÄ`¡T¢Jô‡¦¥ŸÍjžs£v¬½Ÿ¥
ÍJž™ÍJ­ÇÅd¢§6¦-ÍÉÅg¢j¤s¡T¥
¦¢JÎ_¬½žC΃¢!¡gÈvÍJŸg¬N¢jžvŸTÓsÍ8Ÿ2¥
Íjži§+¦t¤sÅg¦£ÒŸg¢
¦ÅdŸTÍj§`­½¬ÇÅgÓvŸgÓsÍJŸ/ŸTÓ`¦¬NÈÁÄ`­½¦ÈÁ¦
ž ŸTÍJŸg¬N¢jžÒ¬ÇŒ¥
¢j¡T¡g¦D¥AŸDÖj]žÒ¡T¦¥
¦
ž Ÿ/©j¦DÍJ¡cşgÓs¦
¡T¦ÓsÍ!ŧ+¦
¦
ž|Åd¢!ÈÁ¦¬½ž ŸT¦
¡T¦ÅdŸ/¬½žÒŸg¡T© ¬Nž`®
Ÿg¢Ï¤sÅg¦/ŸTÓ`¦’¬NžC΃¢!¡gÈvÍ8ŸT¬½¢!žÉ¬NžÍ΃¢j¡TÈvÍJ­:ÅdÄ+¦¥
¬ÑÐ6¥Í8ŸT¬½¢!žÉÍjÅͧ6ÍjÅg¬NÅ΃¢j¡"Ÿg¦DҟÅg¦Ÿ®j¦
žs¦
¡cÍ8Ÿg¬N¢jžÖDÜ_¦ÅdŸg¬Nž`®¬ÇÅÍJ­N­CÍJ§+¢j¤CŸ
Ðsžs£C¬Nž`®ÉÎ4ÍJ¤`­½ŸTŕÍJžs£ÁÕ!¦
¡T©Åg¦
­Ç£C¢jÈ÷ŸgÓs¦¬ÇÅgÅg¤`¦¢jÎXŸgÓ`¦ž:¤`ȧ6¦¡’¢jÎ<Î4ÍJ¤`­½ŸTÅ/ŸgÓsÍJŸ/¡T¦
ÈvÍJ¬Nžv¬½žÒŸgÓ`¦t¬½ÈÁÄ`­N¦
ÈÁ¦
ž ŸcÍ8Ÿg¬N¢jž
Í8ÎVŸT¦
¡Ÿg¦DҟT¬½žs®|¬ÇÅ£C¬ÇÅg¥
¤sÅgÅg¦£Öø’¦¡gžs¢JŸ¦Ÿ$ÍJ­LÖù úJû/ÍJžs£«åtÍj¤s¥cÓ:©¦Ÿ$ÍJ­LÖùÑÊ!Êû¥¢!žsÅg¬N£C¦¡ŸTÓ`¦v®j¦ž`¦
¡cÍ8ŸT¬½¢!žP¢JŸg¦Dҟ
Åd¦
ŸTÅ_΃¡T¢jÈÛÍJ­N®j¦§`¡TÍj¬N¥/ÅdÄ+¦¥
¬ÑÐ6¥Í8ŸT¬½¢!žsÅ
¯DÓ`¦¡g¦/ŸgÓ`¦¡g¦•¬NÅÍÈn¢!¡g¦•¥¢!ÈnÄs¡g¦Ó`¦
žsÅg¬NÕj¦Îƒ¡cÍJÈÁ¦
Õ¢j¡TüÁºVŸgÓs¦•ýjÓ ©:Ä+¢JŸTÓ`¦Åg¬NÅTý!Â
Ã2Ó`¬Ç¥cÓ|Íj­½­N¢8ÃÅ΃¢!¡’ŸTÓ`¦Ï¬NÅTÅd¤s¦t¢jΟg¦Dҟ¦þ<¦¥Ÿg¬NÕj¦
žs¦ÅTÅ/ŸT¢§+¦£C¬NÅT¥¤6ÅgÅg¦£i§`¤CŸŸgÓ`¦tŸg¦Dҟ2®!¦
ž`¦¡TÍJŸg¬N¢jžvÄ`¡T¢C¥¦ÅTŕ£C¢:¦Å
ž`¢JŸ¦
ÿCÄ`­½¢!¬ÑŸ2ŸTÓ`¬ÇÅÄsÍJ¡gŸg¬Ç¥¤`­ÇÍJ¡T­N©jÖ
ÜÓ`¦-Ä`¡T¢j§`­N¦
ÈÚ¢JΟT¦ÅdŸ¦þ<¦¥Ÿg¬NÕj¦
žs¦ÅTŬNÅ2§+¦ÅdŸÍj£s£C¡g¦DÅgÅg¦£i¬ÑÎ"ŸgÓs¦Ÿg¦ÅdŸÅg¦Ÿ¥
Íjž™§+¦-®j¤sÍj¡TÍjž Ÿg¦
¦D£vŸT¢ÁÐsžs£†³8¼V¼
³ C¼ Ù\¹¢JΟgÓ`¦É¬½ÈÁÄ`­N¦
ÈÁ¦
ž ŸcÍ8Ÿg¬N¢jžÖ ó ž`¦$ÍjÄ`Ä`¡T¢!Íj¥cÓ|¬Çşg¢i¥
¢jžsÅg¬Ç£C¦
¡Ÿ‡Ã•¢ÒÍJ­N®j¦§`¡TÍj¬N¥Ï¢!§Cô‡¦¥ŸTÅ$ºƒŸgÓ`¦ÉÅgÄ+¦¥¬½Ð6¥Í8Ÿg¬N¢jž
ÍJžs£™ŸTÓ`¦¬½ÈÁÄ`­N¦
ÈÁ¦
ž ŸcÍ8Ÿg¬N¢jž+ÂA¯`¦DÍj¥cÓi¢jΟTÓ`¦
È ¥cÓsÍJ¡cÍj¥Ÿg¦
¡T¬ÇÅd¦D£v§:©iÍJž|¬½žsÄ`¤CŸ 8¢j¤CŸTÄ`¤CŸ§+¦
ÓśÕ:¬N¢j¤`¡D¯CÍJžs£iŸg¢ <¿ 8¸
ŸgÓsÍJŸ¯_¬ÑΟgÓs¦Ò§6¦ÓśÕ:¬½¢!¤`¡cÅ¢JΟgÓ`¦DÅd¦v¢!§Cô‡¦¥ŸTÅ$¥
¢j¬Nžs¥¬Ç£C¦Á΃¢!¡ÉÍJž:©‘¬Nž`Ä`¤`ŸÉ¬½ž ŸTÓ`¦vŸT¦ÅdŸÉÅd¦
Ÿ¯ŸTÓ`¦
©¨Ã2¬N­½­/¥
¢j¬Nžs¥¬Ç£C¦
΃¢j¡ÍJž:©n¬½ž`Äs¤CŸ•¬NžÒŸTÓ`¦t£`¢jÈvÍJ¬NžÖ:ÜÓ ¤6Å
¯!ŸgÓ`¦ÏÅdÄ+¦¥
¬ÑÐ+¥
Í8ŸT¬½¢!žiÍJž6£ÁŸgÓ`¦Ï¬NÈnÄs­½¦Èn¦ž ŸTÍ8ŸT¬½¢!žÒÃ2¬N­½­+§6¦Ï®j¤6ÍJ¡cÍJž Ÿg¦¦£Ÿg¢
ÓśÕj¦’¬N£`¦
ž Ÿg¬Ç¥
Íj­!§+¦
ÓśÕ:¬N¢j¤`¡"Ä`¡T¢8Õ:¬N£C¦D£ÏŸgÓsÍJŸ_ŸTÓ`¦
©-§+¦
Ó6́Õj¦/¬Ç£C¦ž!ŸT¬N¥ÍJ­N­½©Ã2Ó`¦žÅg¤`Ä`Ä`­N¬N¦£$Ã2¬½ŸgÓɟgÓ`¦•¬Nž`Ä`¤CŸcŬ½ž-ŸTÓ`¦
Ÿg¦Dҟ’Åg¦ŸDÖ ó §:Õ:¬½¢!¤sÅd­N©j¯JÅg¤s¥cÓvÍJžvÍjÄ`Ä`¡T¢!Íj¥cÓnÕ¢j¤`­Ç£É¢!ž`­N©É§+¦ÍJÄ`Äs­½¬Ç¥
Íj§`­½¦ŸT¢$¥¦¡dŸcÍJ¬NžnÅg©CҟT¦
ÈvÅÍJž6£nÅgÄ+¦¥¬½Ð6¥Í8Ÿg¬N¢jž
35
­NÍjž`®j¤6ÍJ®j¦DÅA¬½Ÿ_Ã2¬N­N­jž`¢jŸ§6¦’ÍJÄ`Ä`­N¬Ç¥
ÍJ§s­½¦ŸT¢ÍJž-ÍJ¡T§`¬½Ÿg¡cÍJ¡T©¥¢!ÈÁÄ`¤CŸg¦¡_Åg©CҟT¦
È÷º\ÍJž$Íj¡g§`¬½Ÿg¡cÍJ¡T©Ü_¤`¡T¬½ž`®2ÈvÍ!¥cÓ`¬½žs¦ÅcÂA¯
¢JŸTÓ`¦
¡TÃ2¬NÅg¦ÏŸgÓ`¦-Ó6ÍJ­½Ÿg¬Nž`®vÄ`¡T¢j§`­N¦
È(΃¢!¡Ü¤s¡g¬Nž`®ÁÈvÍj¥cÓ`¬Nž`¦Å¯:΃¢j¡2¦
ÿ`ÍJÈÁÄ`­N¦j¯CÃ2¬N­½­§+¦$¥¢!ž Ÿg¡cÍj£C¬Ç¥AŸT¦£XÖ
ÜÓ`¬ÇÅtÍjÄ`Ä`¡T¢!Íj¥cÓÓ6ÍjÅt§6¦¦
ž‘¦ÈÁÄ`­½¢8©!¦£¬NžPŸTÓ`¦Íj¡g¦DÍv¢JΟT¦ÅdŸt®!¦
ž`¦¡TÍJŸg¬N¢jžÎƒ¢j¡tŸgÓs¦nÅg¢JÎVŸ‡ÃÍJ¡T¦$ÈÁ¢C£C¦
­N­½¦D£§:©
·6¶VÙq¸¹AÙ]³8Ù]¸É²v³j´cµ:¶V·<¸A
¹ vù½Ê JûL¯"ù 8ûq¯_ù½Ê
èjûL¯"ù æ`ÊûqÖ+ÜÓ`¦É§6¦Dҟü:ž`¢8Ã2žŸg¦DҟT¬½ž`®™ÈÁ¦ŸgÓs¢:£sŧsÍ!Åd¦D£¢jž ÅdÄ+¦¥
¬ÑÐ+¥
Í8ŸT¬½¢!žsÅÍj¡g¦ÏŸg¡cÍJž6Åd¬½Ÿg¬N¢jžCÔLŸg¢!¤`¡-º4ܕԇ•ÈÁ¦ŸgÓs¢:£†ù `Ê
ûL¯ù JèjûL¯C¤sž`¬Nö ¤`¦
ÔL¬Nž`Ä`¤`ŸdÔq¢j¤CŸTÄ`¤CŸº  ó ԇ•Èn¦
ŸgÓ`¢C£†ù JûL¯
ù jèJûq¯!£C¬ÇÅdŸg¬Nž`®j¤`¬ÇÅgÓ`¬½žs®ÉÅd¦Dö ¤`¦
žs¥
¦Éº4å ԇÂÈÁ¦ŸTÓ`¢C£ùÑÊ ûq¯6ù Jèjû6ÍJžs£v¥cÓ6ÍJ¡cÍj¥AŸT¦
¡T¬ ¬½žs®Åg¦ŸÏº ?ԇÂÈÁ¦ŸTÓ`¢C£PùÑÊ 8ûq¯6ù JèjûLÖ
ÜÓ`¦Ä`¤`¡TÄ6¢ Åd¦|¢JÎÏÍJž:©¨Ÿg¦ÅdŸg¬Nž`® ÈÁ¦ŸTÓ`¢C£ ¬ÇÅɟT¢†¥¢jÈÁ¦™¤`ÄlÃ2¬½ŸgÓ?Í8ŸÁ­N¦ÍjÅdŸnŸ‡Ã’¢«¡g¦Dö!¤s¬½¡T¦
ÈÁ¦
ž ŸcÅ
áº4Í Â$ŸTÓ`¦|Ÿg¦Dҟ
Åd¤s¬ÑŸT¦ÁÅgÓ`¢!¤`­N£P§6¦Á¡T¦
­ÇÍ8Ÿg¬NÕj¦­½©ÅgÓ`¢j¡gŸÍjžs£º4§6ŸgÓ`¦nŸg¦Dҟ-Åg¤`¬ÑŸT¦nÅgÓ`¢!¤`­N£«¥¢8Õ!¦
¡tÍ!ÅȤs¥cÓ«Í!ÅÄ+¢!ÅTÅg¬½§`­N¦ÁÍJ­N­_Î4Íj¤`­½ŸTÅ
ùÑÊèJûq"Ö !’¢!žs¥¦¡gž`¬Nž`®ÁÎ4Íj¤`­ÑŸ¥¢8Õ!¦
¡cÍJ®j¦!¯ ŸgÓ`¦­NÍ!ҟŸ‡Ã•¢vÈÁ¦ŸTÓ`¢C£`Åt¥
¢8Õj¦¡ÍJ­N­Î4ÍJ¤s­ÑŸcÅ
"Ö :Ó`¢j¡gŸg¦¡ŸT¦ÅdŸtÅd¤s¬ÑŸT¦ÉÓsÍ!Å2§6¦¦
ž
¢j§CŸcÍJ¬Nž`¦£Îƒ¢j#¡  ó ÔLÈÁ¦
ŸgÓ`¢C£¬NžŸgÓs¦¥
Í!Åd¦É¢J$Î  ó Åg¦ö ¤`¦žs¥¦DÅÃ2¬½ŸgÓP¢8Õ!¦
¡T­NÍjÄ`Ä`¬Nž`®Pù ûq¯s¢!¡¦¬ÑŸTÓ`¦
¡tÃ2Ó`¦
žŸTÓ`¦
ÓsÍ!Å¡T¦Åg¦Ÿ¥
ÍjÄsÍj¥
¬ÑŸ‡©¨ºVŸTÓ`¦
¡T¦$¬ÇÅÍJž¬Nž`Ä`¤`ŸŸgÓ6Í8ŸŸcÍJü!¦Å2¦Õj¦
¡T©™ÅdŸTÍJŸg¦-ŸT¢vŸgÓs¦$¬½žs¬ÑŸT¬NÍj­_ÅdŸTÍ8ŸT¦D¢j¡ÓsÍ!Å­N¢:¢jÄsÅ
ºVŸT¡TÍjžsÅd¬½Ÿg¬N¢jž6ÅÃ2¬ÑŸTӟgÓ`¦$ÅTÍJÈÁ¦¬½žs¬ÑŸT¬NÍj­ÍJžs£iÐsžsÍj­ÅdŸTÍ8ŸT¦ÅcÂÏùÑÊ
ûL¯`¢!¡Ã2Ó`¦
ž|ŸgÓs%¦ &' ¥
¢jž ŸTÍj¬½ž6Ŧ
¬½ŸgÓ`¦¡¬½ž:Õ!¦
¡gŸg¬N§`­½¦
Ÿg¡cÍJžsÅg¬½Ÿg¬N¢jžsÅvù½ÊúJû¢j¡¬½ž:Õ!¦
¡gŸg¬N§`­½¦vÅg¦ö ¤`¦žs¥¦DÅ¢JÎ/ŸT¡TÍjžsÅg¬ÑŸT¬½¢!žsÅvùÑ)Ê (DûqÖ× Õ8ÍJ¡T¬NÍjž!Ÿ¢J*Î ?ÔqÈn¦
ŸgÓ`¢C£ ¥
Íj­½­N¦,
£ + ÄsÍJ¡gŸg¬ÇÍJ­
?ÔLÈÁ¦
ŸgÓ`¢C£ +º4¢j*¡ ÄCÔqÈn¦
ŸgÓ`¢C£s’©:¬N¦
­Ç£`ÅÅdÓ`¢!¡dŸT¦
¡’Ÿg¦Dҟ2Åd¤s¬ÑŸT¦Å’ŸgÓsÍjžÒŸTÓ`¦ ?ÔLÈÁ¦ŸTÓ`¢C£‘ù½Ê
èjûLÖC×­N­+ŸgÓ`¦DÅd¦ÈÁ¦ŸTÓ`¢C£`Å
ÍjÅTÅd¤sÈn¦ÁŸTÓsÍ8Ÿ-ŸTÓ`¦Ò¥¢!ž Ÿg¡T¢j­ÍjÅgÄ+¦¥AŸcÅ-¢JşgÓs¦ÒÅd¢jÎVŸ‡Ã•Íj¡g¦ÁÍJ¡T¦vÅd¦ÄsÍJ¡cÍ8ŸT¦£‘΃¡g¢!È*ŸgÓ`¦™Åd©CÅdŸg¦
È £`Í8ŸcÍÍJžs£ ¥
Íjž«§+¦
ÈÁ¢:£`¦
­N­½¦D£i§:©i.Í †Ö`Æ¢8Õ¦
Õ!¦
¡D¯!¬NžÅd¢!Èn¦Åg¬ÑŸT¤sÍ8ŸT¬½¢!žsŕ¬ÑŸ2¬ÇŒÕ!¦
¡T©Ò£C¬ /v¥
¤`­½Ÿ•ŸT¢vÅd¦ÄsÍJ¡cÍ8ŸT¦ŸgÓs¦Åg©CҟT¦
È ¥
¢jž Ÿg¡T¢j­
΃¡g¢!È ¬½ŸTÅi£`Í8ŸcÍ ùÑÊ 8ûq¯/Åd¢ Í ÈÁ¢!¡g¦¥¢!ÈÁÄ`­½¦
ÿÝÅgÄ6¦D¥¬½Ð6¥
ÍJŸg¬N¢jž?ÈÁ¢C£C¦
­ŸgÓsÍJŸi¬½ž ŸT¦
®j¡cÍ8ŸT¦ÅnŸTÓ`¦Åg¦Ÿ‡Ã’¢ Í!ÅdÄ+¦¥ŸTÅv¬ÇÅ
ž`¦
¦D£C¦£Ö
:¤s¥cÓPÍÁÈÁ¢C£C¦
­_¬NşgÓ`¦n°-±]²v³j´cµ:¶V·+¸Éºƒ¢!¡Ï»•¶V¼½¸
·+¾c¸
¿\À|²Á³!´TµC¶V·+¸TÂA¯XÍÁ§`­N¦
žs£¢j0
Î &'PÅ
¯+£`Í8ŸcÍvҟT¡g¤6¥AŸg¤s¡g¦DÅÍJžs£
Ä`¡T¢:¥
¦ÅTÅd¬Nž`®2¡T¦
­ÇÍ8ŸT¬½¢!žsꃢ!¡X΃¤`žs¥Ÿg¬N¢jžsÅcÂA֝]ž-¬ÑŸcÅX¦ÅTÅd¦žs¥¦ÍjžØÔqÈÁÍ!¥cÓ`¬Nž`¦¬NÅ­½¬Nüj¦1Í §s¤CŸÃ2¬½ŸgÓ-¢jžs¦¬½ÈÁÄ+¢j¡gŸTÍJž Ÿ
£C¬½þ+¦¡g¦žs¥¦!Ö×õ§sÍjÅg¬N¥Á£`ÍJŸTÍÅg¦Ÿ-¯ 2¯X¬NŬǣC¦
ž ŸT¬ÑÐs¦D£«Ÿg¢j®!¦ŸTÓ`¦
¡-Ã2¬½ŸgÓ ÍÅd¦
Ÿ$¢JΒ§6ÍjÅg¬N¥nÄ`¡T¢C¥¦ÅTÅg¬½ž`®™¡g¦­NÍJŸg¬N¢jžsÅÁº4¢j¡
΃¤`žs¥Ÿg¬N¢jžsÅcÂA'¯ 3¯ Ã2Ó`¬Ç¥cÓi¢jÄ+¦
¡cÍ8ŸT¦¢jž™ØÉÖ:ª/Í!¥cÓiÍJ¡T¡g¢8ÃݬNžÒŸgÓs¦Ðsž`¬½Ÿg¦ÅdŸTÍ8ŸT¦tÈvÍ!¥cÓ`¬½žs¦t£C¬ÇÍJ®!¡TÍjÈx¬ÇÅ/ŸTÓ`¦
ž™­NÍj§6¦­½­N¦£
§:©ÁÍÉ¡g¦­NÍJŸg¬N¢jž‘º4¢j¡/΃¤`žs¥AŸT¬½¢!ž6Â/΃¡g¢!4
È 3¯ ŸTÓ`¦ÏÅg¦ö ¤`¦žs¥¦DÅ¢jÎ_ҟcÍ8ŸT¦Ÿg¡cÍJž6Åd¬½Ÿg¬N¢jžsÅ/¬½žiŸgÓ`¦tÈvÍj¥cÓ`¬Nž`¦t£`¦Ÿg¦¡gÈÁ¬Nž`¦ŸTÓ`¦
Ä`¡T¢:¥
¦ÅTÅd¬Nž`®$¢jÎXŸgÓ`¦Ï£`Í8ŸcÍ$Åg¦Ÿ•Íjžs£ÁŸTÓ ¤6şgÓs¦t¡T¦
­ÇÍ8ŸT¬½¢!žv¢j¡Îƒ¤`ž6¥AŸg¬N¢jž|¥¢!ÈnÄs¤CŸg¦D£XÖ ÜÓs¦t£`ÍJŸTÍ$Åg¦5Ÿ 2 ¥
ÍJž™¥¢jž ŸcÍJ¬Nž
¬½ž`΃¢j¡TÈÁÍJŸg¬N¢jžPÍj§6¢!¤CŸŸgÓs¦$¬½ž ŸT¦
¡TžsÍJ­_Èn¦ÈÁ¢j¡T©i¢JÎÍÒÅg©CҟT¦
È ÍjÅ2Õ¦
­N­_Í!Å£C¬½þ+¦¡g¦ž ŸtÅd¢!¡dŸcÅ2¢J΢!¤CŸgÄ`¤`Ÿt§+¦
ÓśÕ:¬N¢j¤`¡
Åd¢v¬½Ÿ¬ÇÅ2Ä6¢ ÅgÅg¬N§`­½¦ÏŸT¢vÈn¢C£C¦­Õj¦¡g©i®j¦
žs¦
¡cÍJ­XÅd©CÅdŸg¦ÈÁŬNžP͟g¡cÍJžsÅgÄsÍj¡g¦ž!ŸÃ́©jÖC]ž Ÿg¡T¢C£C¤s¥¦D£i§:©|ª¬N­½¦ž §+¦
¡T®ùÑʁæû
¬½ž«Ê6Ë (ès¯8ØÔLÈvÍ!¥cÓ`¬½žs¦Å/Íj¡g¦Ä`¡g¢!Ä6¢ Åd¦D£Á§:©nÆ¢j­Ç¥¢jȧ6¦nùÑÊDË8û<ÍjÅ/Í$§sÍjÅg¬NÅ΃¢j¡•Í$Ä+¢!ÅTÅd¬N§`­N¦ÅdÄ+¦¥
¬ÑÐ+¥
Í8ŸT¬½¢!žÒ­ÇÍJž`®!¤sÍJ®!¦
ÍJžs£¨Åg¬½žs¥
¦ÉŸTÓ`¦
ž ͙ž ¤sÈɧ+¦
¡-¢JÎ/΃¤`¡dŸTÓ`¦
¡-¬Nž:Õj¦DҟT¬½® Í8Ÿg¬N¢jž6ÅÓśÕ!¦£C¦ÈÁ¢jžsÅdŸg¡cÍ8ŸT¦£ŸTÓsÍ8ŸŸTÓ`¦ÁÈn¢C£C¦­¬NŬNž Ÿg¤`¬½Ÿg¬NÕj¦
ÍJžs£|¦DÍjÅg©vŸg¢Á¤sÅg¦vù æ`Êûq¯ù æJèJûq¯ù æ ûq¯ùÑÊ 8ûqÖ
× ž:¤`Èɧ+¦
¡2¢jÎ"¥­ÇÍjÅTÅg¦Å•¢JÎ"ØÔqÈÁÍ!¥cÓ`¬Nž`¦ÅÓśÕ!¦t§+¦
¦ž¬N£C¦ž Ÿg¬½Ðs¦£|ÍJžs£|ÅdŸg¤s£C¬N¦£ ù æCÊ
ûL¯ù 7æ JûLÖCܒ© Äs¬N¥ÍJ­N­½©!¯:ŸgÓ`¦DÅd¦
¥­ÇÍjÅTÅd¦DÅ$ÍJ¡T¦i£C¦
Ðsž`¦D£ § ©¨¡T¦ÅdŸg¡T¬N¥Ÿg¬N¢jžsÅ-¢!ž ŸgÓ`¦™¤`žs£C¦¡g­N©:¬½žs®‘£`Í8ŸcÍÅd¦
8Ÿ 2 ÍJž6£¨ŸgÓ`¦|Åd¦
ŸÉ¢JΧsÍ!Åd¬Ç¥ÁÄ`¡T¢C¥¦ÅTÅg¬½ž`®
¡g¦­NÍJŸg¬N¢jžsÅ«ºƒ¢!¡Ò΃¤`žs¥Ÿg¬N¢jžsÅcÂA1¯ 3¯•¢JÎ-ŸTÓ`¦‘ÈvÍj¥cÓs¬½ž`¦DÅ
֕×ÈÁ¢jžs®lÍJ­N­ŸTÓ`¦Åg¦j¯’ŸgÓs¦«¥­ÇÍjÅTÅÒ¢jÎv¹AÙ\¿g¸c³J²ä°$±]²Á³!´TµC¶V·+¸¹
º :9
Ø ‘Â/ÓsÍjÅ/¡g¦D¥¦
¬NÕj¦D£ŸgÓ`¦tÈn¢ ҟ•Í8ŸdŸT¦
ž Ÿg¬N¢jž;Ö :Íj¡dŸT¬N¥
¤`­NÍj¡Ÿ‡©:Ä6¦DÅ¢J<Î C#Ø Pů!Ó6ÍÕ ¬Nž`®$ÅdŸTÍ!¥cü:Åù æ!æûq¯j¢j¡•Åd¦Dö ¤`¦
žs¥
¦Å
¢JÎ_Åg©:Èɧ+¢j­ÇÅù 8ûXÍjÅ/Èn¦ÈÁ¢j¡T©j¯ ¢j¡/¢!¤CŸgÄs¤CŸÅg¦ö ¤`¦žs¥¦DŬNžsÅdŸg¦Í!£v¢JÎ"Åd¬Nž`®j­N¦¢!¤CŸgÄ`¤`ŸÅg©:Èɧ+¢j­ÇÅù æûq¯!ÓśÕ!¦ÍJ­ÇÅg¢$§6¦¦
ž
¥¢!žsÅd¬Ç£C¦¡g¦D£XÖ
ÜÓ:¤s=Å C#Ø PÅ"ÍJ¡T¦®j¦ž`¦
¡cÍJ­N¬ÇÅgÍJŸg¬N¢jžsÅX¢jÎCÐsž`¬½Ÿg¦•ŇŸcÍ8Ÿg¦’ÈvÍj¥cÓ`¬Nž`¦Å¯Åd¬NÈÁ¬½­ÇÍJ¡Ÿg¢¦
ÿ:Ÿg¦
ž6£C¦£Ð6ž`¬ÑŸT¦•ÅdŸTÍJŸg¦’ÈÁÍ!¥cÓ`¬Nž`¦Å
º4>ª &'‘Âù æjË8ûq¯2ù ËJûLáÓ`¦¡g¦!¯ŸgÓ`¦Õ8ÍJ¡T¬ÇÍJ§`­N¦ÅÁÍJ¡T¦|¡g¦Ä`­NÍ!¥¦D£ §:© ͨÈn¦ÈÁ¢j¡T© ÍJžs£ŸgÓ`¦Åg¦ŸcÅÁ¢JÎtÄs¡g¦D£C¬N¥Í8ŸT¦ÅÁÍJžs£
ÍjÅTÅd¬N®jžsÈn¦ž ŸTÅ2ÍJ¡T¦Ï¡g¦Ä`­NÍ!¥¦D£i§:©iÍvÅg¦Ÿ2¢JÎÄ`¡T¢C¥¦ÅTÅg¬½ž`®n¡T¦
­ÇÍ8Ÿg¬N¢jž6ÅϺ4¢j¡Îƒ¤`ž6¥AŸg¬N¢jž6ÅTÂÖ
× ŸT¦ÅdŸg¬Nž`®tÅdŸg¡cÍ8ŸT¦
®!©t΃¢!¡"Åg©CҟT¦
ÈvÅ"ÅdÄ+¦¥
¬ÑÐs¦D£-§:©$ҟT¡g¦DÍJÈ ØÔqÈvÍj¥cÓ`¬Nž`¦Å_ÓsÍ!Å_Íj­NÅg¢§+¦
¦ž£C¦Õj¦
­N¢jÄ+¦£iù æ 8ûq¯ ù 7æ JûL¯
ù æ`ÊûqÖÆ¦¡g¦!¯Íiž:¤`ȧ6¦¡-¢JÎ/ŸT¡TÍjžsÅg¬ÑŸT¬½¢!ž¨Íj¡g¦n®j¡T¢j¤`Ä+¦£‘¬½ž ŸT¢|Äs¡g¢C¥¦DÅgÅg¬Nž`®™¡T¦
­ÇÍ8ŸT¬½¢!žsÅÁºƒ¢!¡t΃¤sžs¥AŸT¬½¢!žsÅTÂÍjžs£‘ŸgÓ`¦DÅd¦
ÍJ¡T¦$ÍjÅTÅd¤sÈn¦D£ÒŸT¢v§6¦É¬½ÈÁÄ`­N¦
ÈÁ¦
ž ŸT¦£¥¢!¡g¡T¦¥Ÿg­N©jÖCÜÓ:¤sůCŸg¦DҟT¬½ž`®ÁŸTÓ`8¦ :9Ø ä¡g¦D£C¤s¥
¦Å•Ÿg¢ÁŸT¦ÅdŸg¬Nž`®v¬½ŸTÅ2ŸT¡TÍjžsÅg¬ÑŸT¬½¢!ž
£C¬ÇÍJ®j¡cÍJÈ ºƒŸgÓ`¦vÍ!ÅgÅg¢C¥¬ÇÍ8Ÿg¦D£l³ CÙ J²Á³JÙ J·|¢jÎ/ŸTÓ`¦vҟT¡g¦DÍJÈ*ØÔqÈvÍj¥cÓ`¬Nž`¦ÂAÖÜÓ`¦Á¥¢!¡g¡T¦¥Ÿgž`¦DÅgÅt¢JŸgÓ`¦ÁÄ`¡T¢C¥¦ÅTÅg¬½ž`®
¡g¦­NÍJŸg¬N¢jžsꃢ!¡Îƒ¤`žs¥Ÿg¬N¢jžsÅc¬NÅÏ¥cÓ`¦¥cü!¦£|§:©ÍÒÅd¦ÄsÍJ¡cÍ8ŸT¦$Ä`¡T¢C¥¦ÅTÅás£C¦
Ä+¦
ž6£C¬½žs®™¢!žŸgÓ`¦žsÍ8ŸT¤`¡g¦¢JΟTÓ`¦É¡T¦
­ÇÍ8ŸT¬½¢!ž
ºƒ¢!¡Îƒ¤`ž6¥AŸg¬N¢jž+ÂA¯<ŸgÓs¦Åg¦n¥ÍJžP§+¦ÉŸT¦ÅdŸg¦D£P¤sÅg¬½žs®ÒŸgÓs¦nÅTÍJÈÁ¦ÉÈÁ¦
ŸgÓ`¢C£P¢!¡ÏÍj­ÑŸT¦
¡TžsÍ8ŸT¬½Õ!¦-΃¤`žs¥Ÿg¬N¢jžsÍj­Èn¦
ŸgÓ`¢C£`ÅÁù æCÊ
ûL¯
ù æJèJûq
Ö s¤`¡dŸTÓ`¦
¡TÈÁ¢j¡T¦j¯CŸTÓ`¦$ÈÁ¦ŸTÓ`¢C£P¥
Íjž¢jž`­N©™§+¦ÉÍjÄ`Ä`­N¬½¦D£¬ÑΟTÓ`¦$Ä`¡T¢C¥¦ÅTÅg¬½ž`®v¡T¦
­ÇÍ8ŸT¬½¢!žsÅ$º4¢j¡2΃¤`ž6¥AŸg¬N¢jž6ÅTÂÈn¦¦Ÿ
Åd¢!ÈÁ¦|ý!£C¦Åg¬½®!ž†Îƒ¢j¡nŸT¦ÅdŸÁ¥
¢jžs£C¬½Ÿg¬N¢jž6Ågýs¯"¥
¢jÈÁÄ`­N¦Ÿg¦ž`¦ÅTÅnÍJžs£¢j¤CŸTÄ`¤CŸdÔ]£C¬ÇҟT¬½žs®j¤`¬ÇÅdÓ6ÍJ§`¬N­½¬½Ÿ‡©jÖÜÓ`¦|ÈÁ¦ŸTÓ`¢C£ÃÍjÅ
Ðs¡cҟ$£C¦Õj¦
­N¢jÄ+¦£«¬Nž‘ŸTÓ`¦v¥¢jž ŸT¦ÿ:Ÿ-¢JΕ£`¦Ÿg¦¡gÈÁ¬Nž`¬ÇҟT¬N¥ÁÅdŸg¡T¦ÍJÈ*ØÔLÈvÍ!¥cÓ`¬½žs¦ÅÁù æ 8ûÍJž6£PŸTÓ`¦
ž¨¦ÿ:Ÿg¦žs£C¦D£‘ŸT¢iŸTÓ`¦
ž`¢jž`Ôq£C¦
Ÿg¦¡gÈÁ¬Nž`¬NÅdŸg¬Ç¥-¥
Í!Åd¦¥¢!žsÅg¬N£C¦¡g¬Nž`®nŸg¦Dҟ2΃¢!¡2¦ö ¤`¬NÕ8ÍJ­N¦
žs¥
¦Áù æJúJû¢j¡2¥¢!žC΃¢j¡TÈvÍJžs¥
¦vùÑÊDÌ8ûqÖ
× ¡g¦D¥¦
ž ŸÄsÍJÄ+¦
¡-ù æ (û<®!¦
ž`¦¡TÍj­½¬ÇÅg¦Å/ŸgÓ`¦Ï¦ÿC¬ÇҟT¬½ž`®vÅdŸg¡T¦ÍjÈõØÔLÈvÍ!¥cÓ`¬½žs¦tŸT¦ÅdŸg¬Nž`®ŸgÓ`¦¢j¡T©v¬½ž|ÈÁ¢j¡T¦ŸTÓsÍJž™¢jž`¦
Ṍ©!-Ö _¬N¡cҟT­½©!¯X¬ÑŸ$¥¢!žsÅg¬N£C¦¡TşgÓs¦v®j¦
žs¦
¡cÍJ­"ØÔqÈÁÍ!¥cÓ`¬Nž`¦ÈÁ¢C£C¦­ÍJžs£¨Åd¦D¥¢!žs£C­N©j¯+ŸgÓ`¦Á¡T¦Åg¤`­½ŸTÅÏÄ`¡T¢8Õj¦£‘¥
ÍJž¨®j¬NÕj¦
¡g¬ÇÅg¦Ÿg¢vŸ‡Ã•¢Ò£C¬ÇҟT¬½žs¥ŸŸg¦DҟT¬½žs®iҟT¡TÍJŸg¦®j¬N¦ÅÖ`ÜÓ`¦Åg¦$¡T¦Åg¤`­ÑŸcÅÍJž6£iŸTÓ`¦
¬N¡t¥
¢j¡T¡g¦DÅdÄ+¢jž6£C¬½žs®ŸT¦ÅdŸg¬Nž`®iÅdŸg¡cÍ8ŸT¦
®j¬N¦Å2Íj¡g¦
ŸgÓ`¦ž ÄsÍj¡dŸT¬N¥
¤`­NÍj¡g¬ÇÅg¦£«Ÿg¢ŸTÓ`¦™ÅdŸg¡T¦ÍjÈ ØÔqÈvÍj¥cÓ`¬Nž`¦Ò¥
­NÍ!ÅgÅÖ ó ž`¦v¢jΟgÓ`¦DÅd¦iÅdŸg¡cÍ8ŸT¦
®!¬½¦DÅ-¬NÅÍÅd­N¬N®jÓ Ÿg­N©¨ÅdŸg¡T¢jžs®j¦
¡
΃¢j¡TÈÚ¢jΟgÓs¦-¡g¦DÅd¤`­½Ÿ®j¬NÕj¦ži¬Nž†ù æ 8ûqÖ
Æ¢8Õ¦
Õ!¦
¡D¯XŸgÓ`¬ÇÅ®j¦
žs¦
¡cÍJ­N¬ DÍ8Ÿg¬N¢jž¨¬ÇÅÉ¢!ž`­½© ÍJ¬NÈÁ¦£ ÍJŸ ?j¸
Ù]¸¿A²n¶V·s¶Ç¹AÙL¶4´ÉØÔLÈvÍ!¥cÓ`¬½žs¦ÅÖ ó ž†ŸTÓ`¦i¢jŸgÓ`¦¡ÉÓsÍjžs£X¯
ŸgÓ`¦¡g¦¬NÅÏÍvÄ`¡cÍj¥Ÿg¬Ç¥
Íj­ž`¦¦£Îƒ¢!¡Ÿg¦DҟT¬½žs®‘· J·s@± ?!¸Ù]¸¿A²n¶V·s¶Ç¹AÙL¶4´ÈÁ¢C£C¦­NÅBÖ A¢jžCÔ]£C¦
Ÿg¦
¡TÈÁ¬½žs¬NÅgÈ*ÍJžs£¥
¢jžs¥
¤`¡g¡T¦
ž6¥©
36
ÍJ¡T¦$Ÿ‡Ã•¢i¬NÈÁÄ6¢!¡dŸcÍJž ŸÎƒ¦DÍ8Ÿg¤s¡g¦DÅ¢jÎ΃¢j¡TÈvÍJ­ÅdÄ+¦¥
¬ÑÐ6¥Í8ŸT¬½¢!žP­NÍjž`®j¤6ÍJ®j¦DÅ2΃¢!¡Ï¥
¢jÈÁÈɤ`žs¬N¥Í8Ÿg¬Nž`®|Åd¢jÎVŸ‡Ã•Íj¡g¦!¯s¬Nž‘ÄsÍj¡dÔ
Ÿg¬Ç¥¤`­ÇÍJ¡-¥
¢jÈÁÈɤ`žs¬N¥Í8Ÿg¬N¢jž‘Ä`¡g¢jŸg¢C¥¢!­NÅÖ6×­½­ÈvÍ8ô‡¢!¡tÅgÄ6¦D¥¬½Ð6¥
ÍJŸg¬N¢jž«­NÍjž`®j¤sÍj®j¦DÅ΃¢j¡¥¢!ÈnȤ`ž`¬Ç¥
ÍJŸg¬N¢jž‘Åg¢JÎVŸ‡ÃÍJ¡T¦-Ô
¦jÖ ®sÖ ó Ü ó Pù Ì8ûq¯ Cå ù û<Ô/Åg¤`Ä`Ä+¢j¡gŸ2ž`¢jžCÔ]£C¦
Ÿg¦
¡TÈÁ¬½žs¬NÅgÈ'Ö ¢j¡T¦
¢8Õ!¦
¡D¯!ÍnÅd©CÅdŸg¦
ÈÚ¢JÎ"¥
¢jÈÁÈɤsž`¬N¥Í8ŸT¬½ž`®Á£C¦
Ÿg¦
¡gÔ
ÈÁ¬½ž`¬ÇÅdŸg¬Ç¥-ØÔqÈvÍj¥cÓ`¬Nž`¦Å•Èv́©ÒÓśÕ!¦ž`¢jžCÔ]£C¦
Ÿg¦
¡TÈÁ¬½žs¬NÅdŸg¬Ç¥Ï§6¦ÓśÕ:¬½¢!¤`¡-ù èjûLÖ
ÜÓ`¬ÇÅ2ÄsÍJÄ+¦
¡2®!¦
ž`¦¡TÍj­½¬ÇÅg¦Å’ŸgÓ`¦DÅd¦-¡T¦¥
¦
ž Ÿ¡T¦Åg¤`­ÑŸcŕŸg¢ÁŸTÓ`¦-ž`¢jž`Ôq£C¦
Ÿg¦¡gÈÁ¬Nž`¬NÅdŸg¬Ç¥-¥
Í!Åd¦!Ö`ÜÓ`¦-®j¦ž`¦
¡cÍJ­N¬ÇÅgÍJŸg¬N¢jži¬ÇÅ
ž`¢jž`Ô\ŸT¡g¬NÕ:¬NÍj­ÍJžs£|¬½Ÿt¥
Íjž¥¢jÄ+¦-Ã2¬½ŸgÓPÍJ­N­XŸ‡©:Ä+¦Å¢jÎ"žs¢jžCÔ]£C¦ŸT¦
¡TÈÁ¬½ž`¬ÇÅgÈ ŸgÓ6Í8Ÿt¥ÍJž§6¦$΃¢j¤`žs£¬NžÍJžØÔqÈvÍj¥cÓ`¬Nž`¦
ÈÁ¢:£`¦
­LÖÜÓs¦«ÄsÍjÄ6¦¡™¬ÇÅҟT¡g¤6¥AŸg¤s¡g¦D£ ÍjÅi΃¢j­N­½¢8ÃÅáÅd¦D¥AŸg¬N¢jž æ ¥¢!ž ŸTÍJ¬NžsÅ|¥¢!žs¥¦ÄCŸTÅi΃¡g¢!È &'&ŸgÓs¦
¢j¡T© ÍJžs£
Ÿg¦ÅdŸg¬Nž`
® `Åd¦D¥AŸg¬N¢jž n¬½ž ŸT¡g¢C£C¤s¥
¦Å’ŸgÓs¦Òºƒž`¢!žCÔq£`¦Ÿg¦¡gÈÁ¬Nž`¬ÇҟT¬N¥DÂ/ØÔLÈvÍ!¥cÓ`¬½žs¦ÏÈÁ¢C£C¦­ÍJžs£™¡g¦­NÍJŸg¦D£i¥¢!žs¥¦ÄCŸTÅ
Åd¦D¥AŸT¬½¢!žsŕènÍjžs£ ÉÄ`¡T¦Åg¦
ž Ÿ’ŸTÓ`¦ÏŸ‡Ã’¢ÉŸg¦DҟT¬½ž`®vÅdŸg¡cÍ8ŸT¦
®j¬N¦Å’ÍJžs£iŸgÓs¦Ï¥
¢j¡T¡g¦DÅdÄ+¢jžs£`¬½ž`®ÉŸgÓ`¦¢j¡T¦ŸT¬N¥ÍJ­<¥¢jž6¥¦
Ä`ŸTÅÍJžs£
¡g¦DÅd¤s­ÑŸcÅ 8ŸTÓ`¦Åg¦Íj¡g¦•ŸgÓs¦
žvÄsÍj¡dŸT¬N¥
¤`­NÍj¡g¬ÇÅg¦£ÉŸg¢-ŸTÓ`¦ÅdŸg¡T¦ÍJÈxØÔqÈÁÍ!¥cÓ`¬Nž`¦¥­ÇÍjÅTŬNžÒÅd¦D¥AŸg¬N¢jžvús¯8ÐsžsÍj­½­N©¥
¢jžs¥
­½¤sÅg¬N¢jžsÅ
ÍJ¡T¦-£C¡T́Ã2ž|¬NžÅg¦¥Ÿg¬N¢jž (:Ö
vòdëò‡ì!ì_ì
ñògë ñ<î/ëñì
ÜÓ`¬ÇÅnÅg¦¥Ÿg¬N¢jž£`¦Ðsž`¦DÅ$ŸTÓ`¦†³CÙ 8²v³8Ù 8·‘¢!¡i¿g¸c´ TÀJ·6¶¸
¿ÉÍjžs£ ŸgÓs¦ ·s¶VÙ]¸Ò¹AÙ]³8Ù]¸|²Á³!´TµC¶V·+¸|ù æJÌ8û2ÍJž6£†Ä`¡T¦Åg¦
ž ŸTÅ
¡g¦­NÍJŸg¦D£™¥
¢jžs¥
¦
ÄCŸcÅÍJžs£™¡T¦Åg¤`­ÑŸcŕŸgÓsÍJŸÃ2¬½­N­§+¦-¤sÅg¦£™­NÍJŸg¦
¡2¬Nž|ŸgÓ`¦-Ä6ÍJÄ+¦
¡DÖ
ø•¦Îƒ¢j¡T¦Ã’¦®!¢†ÍJž:©†Îƒ¤`¡gŸgÓ`¦¡¯’Ã’¦¬Nž Ÿg¡T¢:£`¤s¥¦ŸTÓ`¦ž`¢JŸcÍ8ŸT¬½¢!žÝ¤6Åd¦D£l¬NžÝŸgÓ`¬ÇÅÒÄ6ÍJÄ+¦
¡DÖ0 Ó`¦
ž ¥
¢jžsÅg¬N£`¦
¡T¬½ž`®
Åd¦Dö ¤`¦
žs¥
¦Å¢Jά½žsÄ`¤CŸTÅ¢j¡¢!¤CŸgÄs¤CŸTÅÒ¦$Ã2¬N­N­¤sÅg¦ Ÿg¢i£`¦
ž`¢jŸg¦-ŸTÓ`¦ÉÅg¦Ÿ¢jÎ"Ð6ž`¬ÑŸT¦Åg¦ö ¤`¦žs¥¦DÅ2Ã2¬ÑŸTÓÈÁ¦
Èɧ+¦
¡cÅ
¬½
ž $Ö Ã2¬N­½­•£C¦
žs¢JŸg¦ÒŸgÓ`¦™¦
ÈÁÄCŸ‡© Åd¦Dö!¤s¦
žs¥
¦iÍJžs£ !#"$%'&<s¢j)¡ (*,+.-/J0¯ (+nÃ2¬N­½­•£C¦
ž`¢jŸg¦vŸTÓ`¦
¥¢!žs¥
ÍJŸg¦
ž6Í8Ÿg¬N¢jž‘¢JÎ/Åg¦ö ¤`¦
ž6¥¦Å (ÍJžs1£ +BÖ s¢j3¡ 24*,5768j¯ 295:"$(;+)<;(=->24*,+3-5?% BÖ s¢j¡ÏÍҞ`¢!žCÔL¦ÈÁÄCŸ‡©
Åd¦Dö ¤`¦
žs¥
9¦ ()#(@A&B&B&C(ED™Ã2¬½ŸgFÓ (@G*B&H&B&B*I(;DJ-FK*MLONz'Ê *PGQR(EPCSº (CT #(;Di£C¦ž`¢JŸT¦Å•ŸTÓ`¦-¡g¬N®jÓ ŸTÈn¢ ҟ¦
­N¦
ÈÁ¦ž!Ÿ2¢jÎ
ŸgÓ`¦$Åg¦ö ¤`¦žs¥¦ PGQ$('PCUº 6¬ÇÅ2¤`ž6£C¦Ðsžs¦£XÖ
`¢!¡|͆¡T¦
­ÇÍ8ŸT¬½¢!ž‹ºƒ¢!¡|ÍÄsÍJ¡gŸg¬ÇÍJ­Îƒ¤`žs¥AŸT¬½¢!ž6W
 V Xá ZY?[]\i¯•£C¢!ȺVÎTÂ|£C¦ž`¢JŸT¦ÅiŸgÓ`¦¨£C¢jÈvÍJ¬Nž ¢jÎ-·5Ö s¢j¡
26_^E`$a¨Uº VXÂA
¯ Vbº 2-c 8"G+X<ed(f-=2‹Ã2¬ÑŸTFÓ (Vg+R%E&`¢j¡•Ÿ‡Ã•¢ºƒÄsÍj¡dŸT¬NÍj­ÇÂ΃¤`žs¥Ÿg¬N¢jžshÅ V‘Ká !i[j\f*;kiKá \l![jm*
k9noV‘Ká p![jmx¬NÅÍÉ΃¤sžs¥AŸT¬½¢!ž£`¦Ðsž`¦D£|§ f
© kXn4VSº (CTÂ qk<Uº VSº (CÂdTÂ rg(s-t3&
`¢!¡ÍÉÐ6ž`¬ÑŸT¦$Åd¦
h
Ÿ 3*vuB('PG^+Sº ÏÂ2£C¦
žs¢JŸg¦DşgÓs¦-ž ¤sÈɧ+¦
¡2¢JÎ"¦
­N¦
ÈÁ¦
ž ŸcÅ2¢JAÎ 3&
w™E7 x9_=4;=\368
9 y+9œ zt·iÍj¤CŸg¢!ÈvÍ8Ÿg¢!ž†¶Ç¹É³Á|¹ {¹AÙq¸
² #xUº }.*,~?*C4*I€‚'*MƒtX „_µs¸¿TH¸ …
}.*I~?*Cƒ ³J¿g¸vكµ`¸ ·s¶VÙ]¸n¹
¸
Ù ¬Nž`Ä`¤CŸcÅ
¯ÅdŸTÍJŸg¦DÅÒ³8B
· ?ÁÐsžsÍJ­ÅdŸTÍJŸg¦DÅ
¯ ƒl6~† ¶Ç¹ÁÙVµs¸ž`¦
ÿ Ÿ$ÅdŸTÍJŸg¦ C·+´
ÙL¶ 8· ‡
x;á ~‰ˆt}Š!i[eæ ‹*³JB
· ?3€  -=~ ¶Ç¹كµ`¸¬Nž`¬ÑŸT¬NÍj­ÅdŸTÍ8ŸTE¦ Œ
`¢!¡ÁŸgÓ`¦ŸT¦ÅdŸg¬Nž`® Ä`¤`¡TÄ6¢ Åd¦DÅvÍJ­N­ŸgÓ`¦ÅdŸTÍ8ŸT¦ÅvÍj¡g¦|ÐsžsÍj­Å‡ŸcÍ8ŸT¦Å
¯ ƒŽ~Á¯’ÍJžs£ŸgÓ:¤sÅnŸTÓ`¦PÅd¦
sŸ ƒ Ã2¬N­½­2§+¦
¬½®!ž`¢j¡T¦£Ö
 JÙq)
¸ KŒ]ži®!¦
ž`¦¡TÍj­\¯ ÍJž™Íj¤CŸg¢!ÈvÍ8Ÿg¢!žÒÈv́©v§6¦n· J·s@± ?!¸Ù]¸¿A²n¶V·s¶Ç¹AÙL¶4´•¬½žiŸgÓ`¦Åg¦
žsÅg¦ŸTÓsÍ8Ÿ•΃¢j¡¦DÍj¥cÓiÅdŸTÍJŸgX¦ €$ÍJžs£
¬½žsÄ`¤C)Ÿ ‘ŸgÓs¦
¡T¦ÒÈv́©P§6¦iÈn¢!¡g¦ÁŸTÓsÍJž ¢!ž`¦vž`¦ÿ:ŸÅdŸTÍJŸg¦!Öמ Íj¤CŸg¢!ÈÁÍJŸg¢!ž«¬ÇÅ$¥
Íj­½­N¦£ ?!¸Ù]¸¿A²n¶V·s¶Ç¹AÙL¶4´$¬½Î Ú¬ÇÅ$Í
ºƒÄsÍj¡dŸT¬NÍj­Ç’΃¤sžs¥AŸT¬½¢!Fž ÷'á ~‰ˆ=}Š!i[’~?&
w™E7 x9_=4;=\36/
9 “Xœ ” €;*C€G•-t~?*‘–-–} ³8"· ?3€G•—-Wv˜º €;*C‘ „/¸-¹
G³ {vكµ`³J0Ù ‘?¶Ç¹³J·iÍJ¡c¥ ¿ J
² €Ù 3€G•³8"· ?s„¿A¶VÙ]¸
‘Ý
á €s[™€G•˜&†” €;*C€G•T-~ ³8¿T¸n¹ s´Tµ«Ùƒµ`³JÙ2ÙVµs¸¿g¸iC¸ š!¶Ç¹ATÙ €R@G*B&H&B&B*I€BD @›-~?‡0L_N ‡o„¶VكWµ €R@œ€;*—€HD @9€G•
³8"· ?s‘vtiá €Ho[ž€B @ J¿v³J¼V¼fÊ Ÿ Ÿ8L*¡„/¸n¹
G³ {كµ`³8Ù „/¸Éµ`³ ¸|³ÁÄsÍJŸg>Ó ¢s‰‘i@0&H&B&C‘D ¿ 8£
² €‘Ù s€ • ³JB· ?
„¿A¶VÙq›
¸ ¢™á €J[ž€G•˜&& 89¿ €F-¤~?*—¥o¦›:"$¢.-}s.<d;Pt-_~ ¹ s´cµÙƒµ`³JAÙ ¢™á €J[™PE%‘¶Ç¹Ò´c³8¼V¼½¸ ?PÙVµs¸-­ÇÍJž`®!¤sÍJ®!¦
Íj¥¥¦
Ä`Ÿg¦£§:W© Û¬½=ž €Œ†” €€B™Ùƒµ`¸
W· ¥o¦v¶Ç¹-¹A¶V² +§¼ {´T³J¼V¼½¸ ?™ÙVµs¸É¼N³8· À s³
À ¸Íj¥¥¦ÄCŸg¦D£™§:F© ³JB· ?i¶Ç8¹ ?j¸
· JÙq¸ ?
¾‚{›¥T¨4Œ
ÜÒ¢ÍJ¤`Ÿg¢jÈvÍJŸTWÍ õÍjžsO£ h•ÍJ¡T¦Á¥
ÍJ­N­N¦£ 2)!2¦ö ¤`¬NÕ8ÍJ­N¦
ž Ÿ—¯ 2£6}s¬½oÎ ¥ ¨=© 2:¥ ¨gªi© 2«&+qÎ 2:Š}s
ŸgÓ`¦=ž ÛÍJžsW£ h•ÍJ¡T¦¥ÍJ­N­½¦D£i¦Dö ¤`¬½Õ8Íj­½¦ž!ŸDÖ
w™E7 x9_=4;=\36­
9 ¬9œ z Ðsž`¬½Ÿg¦$ÅdŸTÍ8ŸT¦ÈÁÍ!¥cÓ`¬Nž`¦vº ‘ÂɶǹɳÁ|¹ {¹AÙq¸
l
² ®¯‹bº }.*I°)*,~?*C4*,6 „_µ`¸
¿gR¸ …
}.*I°)*,~ ³J¿g¸ ·6¶VÙq‚¸ ‡’· 8·6±d¸² +UÙ {Ò¹
¸
Ù4
¹ ¬Nž`Ä`¤CŸcÅ
¯<¢!¤CŸgÄ`¤`ŸTÅÒ³8"· ?ÁҟcÍ8ŸT¦Å¯"¿T¸A¹ s¸T´
ÙL¶ ¸
§¼ {$±c ¶Ç¹Éكµ`¸-ž`¦ÿ:ŸÏÅdŸTÍJŸg¦
C·+´
Ù\¶ J·¨³8¹¶VF
· ²¸ ·6¶VÙ\¶ JO· ™³8B· ?›'á ~‰ˆ=}l!i[’°)*"¶Ç¹-كµ`¸¢j¤CŸTÄ`¤CŸ2΃¤`ž6¥AŸg¬N¢j0ž Œ
w™E7 x9_=4;=\36q
9 ³_.œ ´¶ 8¸·³™¹
¸
Ù ¶V· CÙ¹
,¸ µ s¸·<´T¸¹ 276}sG*˜Ù „ i¹AÙ]³8Ù]¸AT¹ ¶†*C€¨³8¿g¸v´c³8¼V¼N¸ ?.2)!É,¸ µ C¶ 8³8¼½¸
·sÙ2¶
¶Ý³JB
· ?3€¿T¸A¹ 8B· ?f„¶VÙVµP¶ ?j¸
·sÙL¶4´c³8¼ CÙ CÙ¹
,¸ µ s¸·<´T¸¹Ù ™¸T³!´Tµ¶V· CÙ/¹
,¸ µ s¸
·+´c¸$¶VF· 24&
37
ÜÒ¢ P¡Å ®Íjžs)£ ®•sÍJ¡T¦¥ÍJ­N­½¦D?£ 2?!2¦ö ¤`¬NՁÍj­½¦ž Ÿ'¯ 26­}s’¬½Î<ŸgÓ`¦¬½¡¬Nž`¬½Ÿg¬ÇÍJ­+ҟcÍ8Ÿg¦DÅÍJ¡Th¦ 2)!2¦ö ¤`¬NÕ8ÍJ­N¦
ž ŸÖ
Ü Ã’¢ PÅÍJ¡T¦Ï¦Dö ¤`¬½Õ8Íj­½¦ž!Ÿ2¬½Î_ŸTÓ`¦
©|ÍJ¡T¦2)!2¦ö ¤`¬NÕ8ÍJ­N¦
ž Ÿ’΃¢!¡ÍJž:©iÅg¦Ÿ2‹¢Jά½žsÄ`¤CŸÅg¦ö ¤`¦
ž6¥¦ÅÖ
«¦ž`¢8ßT¤`¡Tžv¢j¤`¡/ÍJŸdŸT¦
ž Ÿg¬N¢jžnŸg¢8&' Ÿg¦ÅdŸg¬Nž`®ÉÍjžs£n¬½žvÄ6ÍJ¡gŸg¬Ç¥¤`­ÇÍJ¡ŸT¢-ŸgÓ`¦®j¦
žs¦
¡cÍ8Ÿg¬N¢jžn¢JÎ<ŸT¦ÅdŸ’Åd¦Dö ¤`¦
žs¥
¦Å
΃¡g¢!È Í8 ÅgÄ6¦D¥¬½Ð6¥
ÍJŸg¬N¢jžÖ¦
Ÿ2¤sÅ¥¢jž6Åd¬Ç£C¦
¡’ŸgÓs¦Íj¤CŸg¢!ÈvÍ8Ÿg¢!žiÍjÅTÅg¢:¥
¬NÍJŸg¦D£vÃ2¬ÑŸTÓ|ÍjžiØÔLÈvÍj¥cÓs¬½ž`¦Áº4Åg¦
¦A¢jŸg¦
!ÂÖÜÓ`¬ÇÅ$ÍJ¤CŸT¢jÈvÍ8ŸT¢jž¨¬NÅÉ£C¦ŸT¦
¡TÈn¬Nž`¬ÇҟT¬N¥j¯§`¤CŸ¬½ž ®j¦ž`¦
¡cÍJ­žs¢JŸÉ¥¢!ÈÁÄ`­½¦
Ÿg¦­½©‘ÅgÄ+¦¥¬½Ðs¦D£XÖ_ÜÓ`¦ÁŸT¦ÅdŸg¬Nž`®ŸgÓs¦
¢j¡T©
§sÍjÅg¦£¢!ž PůsŸTÓsÍ8Ÿ¬Nž Ÿg¦¡g¦DҟcŤsů6£C¦DÍJ­ÇŬNžP®j¦ž`¦
¡cÍJ­Ã2¬ÑŸTÓ &'PÅt£`¦Ÿg¦¡gÈÁ¬Nž`¬ÇҟT¬N¥j¯sÈÁ¬½žs¬½ÈvÍJ­L¯<¥¢jÈÁÄ`­N¦ŸT¦
­N©
ÅdÄ+¦¥
¬ÑÐ6¦£‘Íjžs£¡T¦Îƒ¦¡Tşg¢™ÍjžP¦ö ¤`¬NÕ8ÍJ­N¦
žs¥
¦É¡T¦
­ÇÍ8ŸT¬½¢!žsÅdÓs¬½Ä§+¦Ÿ‡Ã•¦
¦ž‘ÅdÄ+¦¥
¬ÑÐ+¥
Í8ŸT¬½¢!ž‘ÍJž6£¬½ÈÁÄ`­N¦
ÈÁ¦ž!ŸcÍ8ŸT¬½¢!žº4Åg¦
¦
ùÑÊ 8ûq¯_ù½Ê
èjû_ÍJžs£†ù !æ8û΃¢j¡ÏÍÁ¡g¦Õ:¬½¦Ã ¢!ž &'äŸg¦DҟT¬½ž`®:ÂAÖ+×¥
¥
¢j¡c£C¬Nž`®ÁŸg¢vŸTÓ`¬ÇÅ2ŸgÓs¦
¢j¡T©j¯s¢jžs¥
¦$Ò¦ÉÓśÕj¦-ÍÒÅgÄ6¦D¥¬½Ð`Ô
¥
ÍJŸg¬N¢jž Èn¢C£C¦­½­N¦£«ÍjÅtÍ Ã2¬ÑŸTÓPŸgÓs¦nÍj§6¢8Õ!¦$Ä`¡T¢jÄ+¦
¡gŸg¬N¦ÅÕ¦nÈÁ́©¥¢!žsÅdŸg¡T¤s¥AŸÍҟT¦ÅdŸÏÅg¦Ÿ 2 ÍJžs£‘Ã2Ó`¦
ž
ÍJÄ`Äs­½¬N¦£iŸg¢ŸgÓ`¦¬NÈÁÄ`­½¦ÈÁ¦
ž ŸTÍJŸg¬N¢jž Á¬NÅÍJ§s­½¦tŸg¢nÐsžs£|ÍJ­N­<¦
¡T¡g¢!¡TÅ/¬ÑÎ_ŸgÓ`¦¬NÈÁÄ`­½¦ÈÁ¦
ž ŸTÍJŸg¬N¢jž Á¬NÅÍjÅTÅg¤`ÈÁ¦£vŸT¢§+¦
ÈÁ¢:£`¦
­N­½¦D£¨Í!Å-Í &'ù½Ê JûL¯ù½Ê
èjûL-Ö s¢j¡TÈÁÍj­½­N©P¬½Î•§+¢JŸTÓ zÍjžs£ ‘ÍJ¡T¦ÈÁ¢C£C¦
­N­N¦£ ÍjÅ PÅ$Íjžs£¨ÅgÍJŸg¬ÇŇ΃©‘Åg¢jÈÁ¦
¥¢!žs£C¬½Ÿg¬N¢jžsůjÅg¤s¥cÓvÍjÅ"ŸgÓs¢!Åg¦•Äs¡g¦Õ ¬N¢j¤6Åd­N©$ÈÁ¦
ž Ÿg¬N¢jžs¦£X¯8ŸTÓ`¦
žnŸTÓ`¦
©ÁÍJ¡T¦¦ö ¤`¬NՁÍj­½¦ž Ÿ¬½þiŸTÓ`¦
©nÍJ¡Th¦ 2)!2¦ö ¤`¬NÕ8ÍJ­N¦
ž Ÿ¯
΃¢j¡ 2 Í-ŸT¦ÅdŸ•Åg¦ŸÍjŕÍJ§+¢8Õj¦jÖ Ó`¦
ž™£C¦Íj­½¬Nž`®ÉÃ2¬½ŸgÓ|ÍJžÒØÔLÈvÍ!¥cÓ`¬½žs¦j¯!ÍjžiÍJ¤`Ÿg¢jÈvÍJŸg¢jfž º $Âtº4Åg¦
9¦ A¢JŸT9¦ ÂÈv́©
§6¦tÍJ­NṌ©CÅ£C¦
Ðsž`¦£Ö `¢!¡Ÿ‡Ã’¢-ØÔLÈvÍ!¥cÓ`¬½žs¦Å ÍJžs£ 9•˜*jÕ¦ÍJ¡T¦¬½ž Ÿg¦¡g¦DҟT¦£n¬NžÁÐsžs£C¬Nž`®$Í-Åg¦oŸ 2 ¢8Õj¦¡ 3Te*!Åd¤s¥cÓ
ŸgÓsÍJŸÃ2Ó`¦ž`¦
Õ!¦
¡-ŸTÓ`¦
¬N¡É¤sžs£C¦
¡T­N© ¬Nž`®PÍj¤CŸg¢!ÈÁÍJŸTtÍ º $Â$Íjžs£ ɺ 9•ÇÂ$ÍJ¡T.¦ 2)!2¦ö ¤`¬NÕ8ÍJ­N¦
ž Ÿ¯Åg¦
¦ A¢JŸT¦8Å `¯XŸTÓ`¦
ž
ŸgÓ`¦©¦ö ¤`¬NÕ8ÍJ­N¦
ž ŸÖ<ÜÓ`¦
¡T¦$ÓśÕ!¦$§+¦
¦
ž«Åd¤`®!®j¦DҟT¦£Åg¢jÈÁ¦ÉÃ́©CÅ2¢Jή!¦ŸdŸT¬½žs®™Í ΃¡g¢!È Íjž‘ÍJ¤`Ÿg¢jÈvÍJŸg¢jž ù (DûqÖ
×¥¥¢j¡c£C¬Nž`®Ÿg¢†ù (Dû’Íjž ¬½žs¥
¢jÈÁÄ`­N¦ŸT¦
­N©«ÅgÄ6¦D¥¬½Ðs¦£ ÍJ¤`Ÿg¢jÈvÍJŸg¢jž¨¬ÇÅŸg¡cÍJžsÅd΃¢j¡TÈÁ¦£«¬½ž ŸT¢PÍ¥¢jÈÁÄ`­N¦ŸT¦
­N©«ÅgÄ6¦D¥¬½Ðs¦£
§:© ¥
¢jžsÅg¬N£`¦
¡T¬½ž`®‘΃¢j¡Á¦
Õ!¦
¡T©¨Ÿg¡cÍJžsÅg¬ÑŸT¬½¢!ž¢jΟgÓ`¦Íj¤CŸg¢!ÈÁÍJŸg¢!žÍJžl¢j¤CŸTÄ`¤CŸ
Ê "΃¢j¡ÁÍJ­N­ž`¦
Ãڟg¡cÍJžsÅg¬½Ÿg¬N¢jžsÅ
¬½ž ŸT¡g¢C£C¤s¥
¦£P΃¢j¡ÈÁ¬NÅTÅd¬Nž`®|¬½žsÄ`¤CŸTÅÍjžs£P®!¢j¬Nž`®ÒŸT¢|Í|£C¦Í!£‘ÅdŸTÍJŸg¦j¯XÍjž‘¢j¤`ŸgÄ`¤C%Ÿ i¬NÅÍjÅTÅg¢:¥
¬NÍJŸg¦D£Ã2¬ÑŸTÓÖ `¢!¡ŸTÓ`¦
¢j§CŸcÍJ¬Nž`¦,
£ †¯Ã2Ó`¬Ç¥cÓÈɤ6ҟn§6¦£C¦
Ÿg¦
¡TÈÁ¬½žs¬NÅdŸg¬Ç¥iÍjžs£ ÈÁ¬Nž`¬½ÈvÍj­\¯ÍŸT¦ÅdŸÁÅg¦JŸ 2 Èv́© §6¦|§`¤`¬N­½ŸvÍ!¥
¥
¢j¡c£C¬½žs®
Ÿg¢Í™®j¬NÕj¦
ž‘Ÿg¦DҟT¬½ž`®ÅdŸg¡cÍ8Ÿg¦®j©†ù½Ê 8ûq¯ùÑÊèJûq-Ö `¤`¡gŸgÓ`¦¡¢jž—¯ 2 ÈÁ́©§+¦n¤sÅd¦D£PŸT¢™Äs¡g¢8Õ!¦$ŸgÓs¦n¦Dö ¤`¬½Õ8Íj­½¦žs¥¦n¢JΟTÓ`¦
Ÿ‡Ã’¢ÁÍJ¤`Ÿg¢jÈvÍJŸTÍ¡g¦Ä`¡g¦DÅd¦ž Ÿg¬Nž`®$ŸTÓ`¦¤`žs£C¦¡g­N©:¬½ž`®ÁÅdŸTÍ8ŸT¦ÈÁÍ!¥cÓ`¬Nž`¦Å’¢JÎ_ŸgÓ`¦-ÅgÄ6¦D¥¬½Ð6¥
ÍJŸg¬N¢jž™Íjžs£™¬½ÈÁÄ`­N¦
ÈÁ¦
ž ŸcÍ8Ÿg¬N¢jž
ØÔqÈvÍj¥cÓ`¬Nž`¦ÅÖ
$
ñvògë ñ<î/ëñì
ÜÓ`¬ÇÅÅd¦D¥AŸT¬½¢!ž™Ä`¡T¦Åg¦
ž ŸcŕŸgÓ`¦-ØÔLÈvÍj¥cÓs¬½ž`¦ÈÁ¢C£C¦
­_ÍJžs£™¬½­N­N¤sҟT¡TÍJŸg¦DŬџÃ2¬½ŸgÓÍJž¦
ÿCÍjÈÁÄ`­½¦!Ö
w™E7 x9_=4;=\36
9 9œ zt·ÒØÔLÈvÍ!¥cÓ`¬½žs¦Ò¶Ç¹É³Á|¹ {¹AÙq¸
² pxº 2=*,~?* 34*I4*C€‚'*CuG*I^v*,°)*C`J „_µ`¸
¿gR¸ …
2~ ¶Ç¶Ç¹-¹Éك³ µ`¸ ·s¹c¹A¶VÙ]¶4¸¾¼ Åg{Ò¦Ÿ¶V· ¢j Î"·sÅd¶VŸTÙ]ÍJ¸ ÁŸg¦¹
Å ¸Ù´c³8¼V¼½¸ ?iÙVµs¸£`ÍJŸTÍÁÅg¦Ÿ
3 ¶Ç¹-كµ`¸$¹¸
Ù §sÍ!Åd¬Ç¥ÏÄ`¡g¢C¥
¦ÅTÅd¬Nž`®n¡g¦­NÍJŸg¬N¢jžsBÅ ‡/³ ·6¶VÙq¸-¹
¸Ù s³8¿AÙL¶4³8¼ C·+´
Ù\¶ J·`h¹ VPá2 Y?[ 2
 ¶Ç¹-ÙVµs¸žs¦ÿ:ŸÅ‡ŸcÍ8ŸT¦ C·+´
Ù\¶ J· ‡•³ `³J¿AÙ\¶4³J¼ C·+´
Ù\¶ JJ· ÷Eá ~‰ˆ3!i[Kæ ‹1
€  -F~ ¶Ç¹-كµ`¸¬½žs¬ÑŸT¬NÍj­Å‡ŸcÍ8ŸTe¦ ±
uÁ¶Ç¹-كµ`¸tҟT¢jÄ`Ä`¬Nž`®v¥¢!žs£C¬½Ÿg¬N¢jž )‡’³ <¿g¸ ?8¶4´c³8Ù]¸ 8· 2
^«¶Ç¹-ÙVµs¸2ŸT¦ÅdŸg¬Nž`®v£C¢jÈvÍJ¬Nž )‡’³ C·+´
ÙL¶ 8.· ^Òá 3_![æ Ú¹ s´TµÙVµs³8gÙ rVt- 3­^+˜º VXo 6q^'`$a º˜VXÂ
° ¶Ç¹-كµ`¸¢j¤CŸTÄ`¤CŸÅg¦Ÿ
`¶Ç¹$كµ`¸¢j¤CŸTÄ`¤CŸÎƒ¤sžs¥AŸT¬½¢!ž )‡•³ s³8¿AÙL¶4³8¼ C·<´ÙL¶ 8W· `ná 2j!i[ ° „¶VÙVJµ ^E`$a¨˜º `J q^'`$a º3‚*„_µ`¸
¿g¸
^E`$a¨º 3T ^'`$a ˜º VXÂ
!’¢jÈÁÄsÍj¡g¦D£lÃ2¬½ŸgÓ ŸgÓ`¦«Ä`¡g¦Õ:¬½¢!¤sÅi£C¦
Ðsž`¬½Ÿg¬N¢jž ¢jÎ$ÍJž ØÔqÈvÍj¥cÓ`¬Nž`¦ù æCÊ
ûL¯/ŸgÓ`¦¨ÍJ§+¢8Õj¦P£C¦
Ðsž`¬½Ÿg¬N¢jž ¬Nžs¥
­½¤s£`¦Å
Åd¢!ÈÁ¦tÅgÄ6¦D¥¬½Ð6¥¦­½¦ÈÁ¦
ž ŸTŒ¬½ž ŸT¡g¢C£C¤s¥
¦£Á΃¢!¡/ŸT¦ÅdŸg¬Nž`®ÉÄs¤`¡gÄ+¢!Åg¦Åá:ҟT¢jÄ`Ä`¬Nž`®n¥¢jž6£C¬ÑŸT¬½¢!ž‘Sº uÂA¯ Ÿg¦DҟT¬½ž`®n£C¢jÈvÍj¬½ž‘˜º ^ ¯
¢j¤CŸTÄ`¤CŸ•΃¤`žs¥Ÿg¬N¢jž‘˜º `J ^£`¦Ÿg¦¡gÈÁ¬Nž`¦Å/ŸgÓs¦t£C¢ ÍJÈvÍJ¬NžvÕ8ÍJ­N¤`¦Å/¢JΦÍ!¥cÓvÄ`¡T¢:¥
¦ÅTÅd¬Nž`®-΃¤sžs¥AŸT¬½¢!žvŸgÓsÍJŸ•¥ÍJžÒ§+¦¤sÅg¦£
¬½žÒŸg¦ÅdŸg¬Nž`®6'¯ `ϟgÓs¦¢j¤`ŸgÄ`¤CŸ’ŸgÓsÍJŸ’¥
Íjžv§6¦t¢j§sÅg¦
¡TÕj¦D£X¯JÃ2Ó`¦¡g¦DÍjcÅ u¡T¦
Äs­NÍ!¥¦ÅŸgÓ`¦ÏÅd¦
Ÿ/¢JÎXÐsž6ÍJ­6ÅdŸTÍJŸg¦DşgÓ6Í8Ÿ/¤sÅg¤sÍj­½­N©
ÍJÄ`Ä+¦Íj¡TŬNžÄ`¡T¦
Õ:¬½¢!¤sÅ£C¦Ð6ž`¬ÑŸT¬½¢!žsÅ2¢jÎÍjž™ØÔLÈvÍj¥cÓs¬½ž`¦!Ö
 JÙq
¸ EŒ#`¢!¡/ÍJžvØÔLÈvÍj¥cÓs¬½ž`¦ Í!ÅÍJ§+¢8Õj¦!K¯ `ϬNÅ/¦ÿ:Ÿg¦žs£C¦£nŸT¢ÉÍ΃¡T¦
¦
ÔqÅg¦
ÈÁ¬N®j¡T¢j¤`ÄnÈÁ¢j¡TÄ`Ó`¬ÇÅd
È `Éá 2O!i[j°3K&
ÜÓ:¤sfÅ `C˜º +t *•ÍJžsq
£ `Cº @ &H&B&!#"!. `Cº @  &B&H&C`Cº #"!| *˜¶‰N'Ê &]ž?Ã2ÓsÍ8Ÿv΃¢!­½­N¢8ÃÅÁÒ¦Ã2¬N­N­¡g¦
΃¦
¡vŸT¢ ŸgÓ`¬ÇÅ
¦ÿ:Ÿg¦žsÅg¬½¢!žÖ
qŸ$¬NÅÉÅd¢!Èn¦
Ÿg¬NÈÁ¦Å-Ó`¦­½Ä`΃¤`­ŸT¢ŸgÓ`¬Nž`ü¨¢JÎ2ÍJž ØÔqÈvÍj¥cÓ`¬Nž`¦vÍjÅ$Íjž†ÍJ¤CŸT¢jÈvÍ8ŸT¢jž¨Ã2¬ÑŸTÓ ŸgÓ`¦ÒÍj¡T¥Å­NÍj§6¦­½­N¦£¨§:©
Åd©:ȧ6¢!­Nŕ΃¡T¢jÈ 3Ö
 JÙq
¸ $'Œ#`¢!¡ÍjžØÔqÈÁÍ!¥cÓ`¬Nž`%¦ xÍjÅ2Íj§6¢8Õ!¦j¯:ŸTÓ`¦i³¹c¹ ´
¶4³8Ù]¸ ?™³ CÙ J²Á³JÙ J·v¬N«Å º $T ‹º 34*,~?*C4*I€‚8| &
38
» š:³8² +¼½?¸ 'Œh¦Ÿ¤sŬ½ÈvÍj®j¬Nž`¦ÏÍn¥¢!ÈÁÄ`¤CŸg¦¡Ä`¡g¢!®j¡cÍJÈõŸgÓ6Í8Ÿ¯CÃ2Ós¦
žÅd¤`ÄsÄ`­½¬N¦£™Ã2¬½ŸgÓÍÅdŸg¡T¬½žs®n¥
¢jž ŸTÍj¬½ž`¬Nž`®ÁÍJž:©
­½¦
ŸdŸT¦
¡D¯:£`¬½®!¬ÑŸÍJžs£ÁŸTÓ`¦§s­NÍjž`üv¥cÓsÍJ¡cÍj¥Ÿg¦
¡D¯j¥
¢j¤`ž ŸTÅ/ŸgÓs¦ž:¤`Èɧ+¦
¡•¢JÎÕ¢j¡c£`Å΃¢j¡•Ã2Ó`¬N¥cÓҟgÓ`¦Ðs¡TÅdŸ•¥cÓ6ÍJ¡cÍj¥AŸT¦
¡¬ÇÅtÊK*
ÍJ­N­_Äs¡g¦
Ð`ÿC¦Å2ÓśÕ!¦$Ívž:¤`Èɧ+¦
¡t¢JÎÊDşgÓsÍJŸt¬ÇÅ®!¡g¦DÍ8Ÿg¦¡2ŸgÓ6ÍJž¢j¡t¦ö ¤sÍj­Ÿg¢ÒŸgÓ`¦ž ¤sÈɧ+¦
¡¢j0Î jÅÍjžs£¥cÓsÍj¡TÍ!¥AŸg¦¡TÅ
¢JŸTÓ`¦
¡cÅ2ŸTÓsÍJž Ò¢j¡$Ê!¯sÈv́©|¥
¢j¤`ž ŸtÍ!Ŧ¬ÑŸTÓ`¦
¡ÏÍ v¢j¡ÏÍJž†'Ê & ¨¢j¡c£`ÅÍj¡g¦$Åg¦
ÄsÍj¡TÍJŸg¦D£™§:©|¢jž`¦É¢j¡ÈÁ¢!¡g¦-§`­ÇÍJžsü:ÅÖ
`¢!¡¦ÿ`ÍJÈÁÄ`­N¦j¯jŸgÓ`¦2¬Nž`Ä`¤`Ÿ•Åg¦ö ¤`¦
ž6¥
¦ •\Ê K(+Ê 7`$Ê + `Ê :ÊjÊjHÊ •8Ã2Ó`¦¡g¦ Ï£`¦
ž`¢jŸg¦Å/ͧ`­NÍjž`ü<¯j¥
ÍjžÁ§6¦ÅgÄ`­N¬ÑŸ’¬½ž Ÿg¢ŸTÓ`¦
΃¢j­N­½¢8Ã2¬Nž`®Ã’¢!¡T£`TÅ •\Ê K(+Ê '• *;•sRÊ + sHÊ •sÍjžsf£ •\ÊjÊ!HÊ • & qΟTÓ`¦t¥cÓsÍj¡TÍ!¥AŸT¦
T¡ (n¬NžÒŸgÓs¦Ðs¡cҟ•Ã’¢!¡T£v¥
¢j¤`ž ŸcŒÍ!Å/ÍJ.ž •4RÊ •`ŸTÓ`¦
ž
ŸgÓ`¦•Ä`¡T¢j®!¡TÍjÈzÃ2¬N­½­C¥¢!¤`ž ŸŸ‡Ã•¢Åg¤s¥cÓ$Õ¢j¡c£`Å
¯¢JŸTÓ`¦
¡TÃ2¬NÅg¦j¯D¬½Ÿ"Ã2¬N­½­:¥¢!¤`ž Ÿ_¢!ž`­½©¢!ž`¦/Õ¢j¡c£XÖ×žÉØÔLÈvÍj¥cÓs¬½ž`¦’ÈÁ¢:£`¦
­
¢JΟgÓs¬NÅÄ`¡g¢!®j¡cÍJÈ(¬ÇÅ2®j¬NÕj¦žž`¦ÿ:ŸiÖ ~õ¬NXÅ "$€‚'*C€R@G*C€e*C€G%ÉÍjžst£ x¬ÇÅ£C¦
Ðsž`¦D£§ W© vSº €B'*C ]¡Â #€e*ivSº €K*CQ8T €'*
vSº €K*,VK@=
 ’€R@$*ovSº €K*,V
g= ’€K*¡vSº €$@G*,V$D= ’€K*¡vSº €$@G*,V
T= j€K*¡v˜º €R@e* k`F ’€R@e*¡v˜º €'*IV
Tt j€'*
vSº €K*64
 8€'& 2Ž}sXˆ=•†ˆ ¯6Ã2Ó`¦¡g›¦ }7" *KÊ *,+R%'*=•1"E!-KÊ *H!æ *B! v*B!2vè %'&:ÜÓ`¦É£`ÍJŸTÍÒÅg¦Ÿ
¢JşgÓ`¦ÁÈvÍj¥cÓs¬½ž`¦v¥
¢jÈÁÄ`¡T¬NÅg¦ÅtŸg¤sÄ`­½¦DÅv˜º ¢'*ML*`| *,¢.-_} g¯ L#- • * -†¯XÃ2Ó`¦¡gf¦ ¢Á¬ÇÅϟgÓs¦ÁÅdŸg¡T¬Nž`®Åd¤`ÄsÄ`­½¬N¦£
Ÿg¢iŸgÓ`¦nÅd©CÅdŸg¦
Èi¯ L†¡g¦Ä`¡T¦Åg¦
ž ŸTşTÓ`¦£`¬Ñþ<¦
¡T¦
žs¥
¦É§+¦Ÿ‡Ã•¦
¦žŸgÓ`¦ž:¤`Èɧ+¦
¡t¢JÎÊÅtÍJžs£ŸgÓ`¦ž ¤sÈɧ+¦
¡Ï¢J0Î jŬ½žŸTÓ`¦
¥¤`¡T¡T¦
ž ŸÃ•¢j¡c£ ÍJž6
£ ŸTÓ`¦™ž:¤`ȧ6¦¡Á¢JÎÕ¢j¡c£`Å
&Ö `¢!¡¡T¦Í!Åd¢!žsÅ-ŸTÓsÍ8ŸÁÃ2¬N­½­§+¦™¦
ÿ:Äs­NÍj¬½ž`¦D£†­ÇÍ8Ÿg¦¡0¯ L Èv́©†ÍJ­ÇÅd¢
ÓśÕj¦ŸgÓ`¦ýj£`¤`ÈÁÈÉ©Cý-Õ8ÍJ­N¤`¦Å !-KÊ *i!æ *i! -¢!¡ !2è &3>8"R I*IQE*IV  *,V @ *,V * k*%!¯jÃ2Ós¦
¡T¦ŸgÓs¦Ï£C¦
Ðsž`¬½Ÿg¬N¢jžsŒ¢JÎXŸTÓ`¦
Ä`¡T¢:¥
¦ÅTÅd¬Nž`®Á¡T¦
­ÇÍ8Ÿg¬N¢jž6ŕÍj¡g¦-Í!ŕ΃¢j­N­½¢8ÃÅá
Uº ¢K*H!2v
è * ! AUº ¢K* * !ÂA¯ Ã2Ó`¦¡g3¦ ¢9-–}s8¯
º ¢'* *s Q:˜º ¢'*B!-'Ê *`¯:Ã2Ó`¦
¡T3
¦ ¢9-=} ¯ .-†¯ i¬ÇÅ2ÍJž:©i¥cÓ6ÍJ¡cÍj¥AŸT¦
¡•¢JŸTÓ`¦
¡ŸTÓsÍJž Êj¯
º '¢'* v*`C V$j˜º ¢'*H!
æ *!ÝÊDÂA¯sÃ2Ó`¦
¡T3¦ ¢9-=}s8¯ .-t* `¯
ºdRÊ ¢'* v*`C V @ ˜º ¢'*KÊ * ÊDÂA¯sÃ2Ó`¦
¡T3¦ ¢9-=}s8!¯ g*MLO-"t*
#º e¢'*ML*`MÂ V
˜º ¢'* v*`¯CÃ2Ó`¦
¡T
¦ ¢9-=}sJ¯ J-t*CL1-=•%$h"E!2è %E*
º i¢'*ML*`b kX˜º ¢'*ML&*`¯6Ã2Ós¦
¡T¦ ¢)- }sJ'¯ *CL>-(t*º L * O->"*Iu$%$ÍJžs£ J!-ʁ¢j¡º -"!'Ê *Cu$%
Íjžs&£ s ʁÂA¯`Ã2Ó`¦¡g9¦ u£C¦ž`¢JŸT¦Å2ÍJž:©i¥cÓ6ÍJ¡cÍj¥AŸT¦
¡•¢JŸTÓ`¦
¡ŸTÓsÍJž n¢j¡-'Ê *
º i¢'*ML*`) _˜º ¢'*B! v*`¯CÃ2Ó`¦
¡T3¦ ¢9-=}s8'¯ J-t*CL1-=•$h"E!2è %E* t-–}.&
«¦iŸTÍjüjW
¦ °*–•cˆ+t*0`CUº ¢'*ML*s›Â º L*`ÂA¯ ¢O-}sJ†¯ L*H-,=•U*-q-, 0uJUº *CL*`? /. P10iQ™Îƒ¢!¡ÍJ­N­
L1- • *.-t*`¢jŸgÓ`¦¡gÃ2¬ÇÅd¦ÏÎ4Íj­NÅg¦jÖ
qŸÈv́©¨§6¦™¢j§sÅg¦
¡TÕj¦D£¨ŸgÓsÍJŸ k«¬ÇÅnÍ¡g¦­NÍJŸg¬N¢jž Í!ÅgÅg¢C¥¬ÇÍ8Ÿg¬Nž`®ŸT¢«ÍJž:©¨¦
­N¦
ÈÁ¦
ž ŸSº uB¢'*ML*`| *"Ã2Ó`¦¡gJ¦ uÒ¬NÅnÍJž:©
¥cÓsÍJ¡cÍj¥Ÿg¦¡2¢JŸgÓs¦
¡2ŸTÓsÍJž v¢!¡$Êj¯s¦
¬½ŸgÓ`¦¡˜º ¢'*CLW!?'Ê *`•¢!¡É˜º ¢'*ML&zKÊ *`Â2Íjžs£ 2º e¢'*CL*` - ^E`$a 3º + © ^E`$a¨Uº V ‚ &
ø•¢JŸgÓ¢jΟgÓs¦$ÍJ§+¢8Õj¦-¥¢!žs£C¬½Ÿg¬N¢jžsÅ2Íj¡g¦£C¬½þ+¦¡g¦ž!Ÿ2΃¢!¡gÈvÅ¢jÎ"ž`¢!žCÔ]£C¦ŸT¦
¡TÈn¬Nž`¬ÇÅdÈ ÍjÅÕ¦ÏÃ2¬N­N­ÅdÓs¢8à ΃¤`¡gŸgÓ`¦¡2¢jžÖ
w™E7 x9_=4;=\365
9 4Xœ ” €;*I€G•X-8~?*¡Vp- 34*t³JB· ?F€G•X-vSº €;*IVX. „/¸|¹
e³ {«Ùƒµ`³JhÙ V۶ǹ³J· ÍJ¡c¥ ¿ 8² €Ù F€G•$³JB· ?
„¿A¶VÙq.
¸ VÛcá €[ €G•˜&¡” €;*C€G•9-p~ ³8¿g¸|¹ s´cµlÙVµs³8Ù$كµ`¸
¿g¸PI¸ š!¶Ç¹AÙ € @ *B&B&H&‚*C€ D @ -p~)‡4LN ‡„¶Vكµ € @ €;*
€ D @ :€G•t³JB
· ?JV  á €  [¯€  @ J¿i³8¼V¼/WÊ Ÿœ 9Ÿ‰L*T„/¸Ò¹e³ {ÙVµs³8Ù „/¸nµs³ 8¸|³ÒÄsÍ8ŸTtÓ ¶.7V @ &B&H&IV D ¿ J²
€‘Ù )€ • ³8"
· ?W„¿A¶VÙq«¸ ¶.Ïvá €?[™€ • &"»³j´cµ `³JÙV›µ ¶!.4‰V @ &H&B&CV D Àj¶ ¸¹¿A¶Ç¹
¸ÁÙ ³™¿g¸¼N³8ÙL¶ 8· qكµ`¸ÏÄsÍJŸgӑ¡T¦
­ÇÍ8ŸT¬½¢!ž V "76’á 2 Y?[ 2™„_µs¸¿g¸ iV "86 i•/¶ ³8B
· ? 8·6§¼ {v¶ d @ *B&H&B&‚*! D @ - 2 ¹ s´cµÙƒµ`³JÙ  V   @ J¿³8¼V¼9Ê Ÿ cŸ_L*
„_µ`¸
¿g¸ @ —*! D @ i•˜&
× ÈvÍj¥cÓ`¬Nž`¦¥¢jÈÁÄ`¤`ŸTÍ8ŸT¬½¢!žŸcÍJü!¦ÅnŸgÓs¦™Îƒ¢!¡gÈ ¢JÎ-ÍPŸT¡T́Õ!¦
¡cÅgÍj­’¢jÎÏͨÄsÍ8ŸTÓ?¬½žlŸgÓ`¦PÅdŸTÍJŸg¦ÅgÄsÍj¥
¦|Íjžs£ ŸTÓ`¦
ÍJÄ`Äs­½¬Ç¥
ÍJŸg¬N¢jž¯:¬NžÒŸg¤s¡gž¯:¢jÎXŸgÓ`¦ÄsÍJŸgÓi­ÇÍJ§+¦
­ÇÅϺƒÃ2Ó`¬Ç¥cÓi¡T¦
Ä`¡T¦Åg¦
ž Ÿ•§sÍjÅg¬N¥Ä`¡T¢:¥
¦ÅTÅd¬Nž`®$¡T¦
­ÇÍ8ŸT¬½¢!žsÅcÂAÖ:ÜÓ`¬Nŕ®!¬½Õ!¦Å’¡g¬ÇÅd¦
Ÿg¢ÁŸTÓ`¦-¡g¦­NÍJŸg¬N¢jž¥¢!ÈnÄs¤CŸg¦D£i§:©ÒŸTÓ`¦-ÈvÍj¥cÓ`¬Nž`¦!¯`ÍjÅ2£C¦
Ðsž`¦£|ž`¦
ÿ:ŸÖ
w™E7 x9_=4;=\36,
9 9œ :<µ`¸P¿g¸
¼½³8ÙL¶ 8·z´ 8² CÙ]¸ ?†‚¾ {)‡V<; á 2 Y?[ 2 ¶Ç¹ ?!¸ ·+¸ ?†B¾ { V<; • ¶ ³8"· ? 8·6§¼ {«¶
d€)-F~*³JB
· ?|³ s³8كXµ ¶!.’Ká €B[j€™¹ s´TµÙVµs³8Ù iV "76 •2³JB· ?3ujº •VÂ$¶Ç¹ÙL¿ sR¸ Œ
]ž-®j¦ž`¦
¡cÍJ­L¯
ÍJž-ØÔLÈvÍ!¥cÓ`¬½žs¦ÈÁ́©Ï§+¦ž`¢jž`Ôq£C¦
Ÿg¦¡gÈÁ¬Nž`¬NÅdŸg¬Ç¥J¯¬½žŸTÓ`¦’Åg¦
ž6Åd¦ŸTÓsÍ8ŸŸgÓ`¦/ÍjÄ`Ä`­N¬N¥Í8ŸT¬½¢!ž-¢JÎ`ÍJž-¬Nž`¬½Ÿg¬ÇÍJ­
£`Í8ŸcÍÕ8ÍJ­N¤`¦ vÈv́©ÉÄ`¡T¢C£C¤s¥
¦2Èn¢!¡g¦•ŸTÓsÍJžv¢!ž`¦2Õ8ÍJ­N¤`¦2¢JÎ+ŸgÓ`¦t£`Í8ŸcÍ-Åd¦
ŸÖjמvØÔqÈÁÍ!¥cÓ`¬Nž`¦2¬NÅ/£C¦ŸT¦
¡TÈn¬Nž`¬ÇҟT¬N¥¬ÑÎX¬½ŸTÅ
ÍjÅTÅd¢C¥
¬NÍJŸg¦£ÁÍj¤CŸg¢!ÈÁÍJŸg¢!žv¬NŒ£C¦ŸT¦
¡TÈn¬Nž`¬ÇҟT¬N¥j¯ 3¨¬ÇÅ/Í$Åg¦Ÿ/¢jÎXÄsÍJ¡gŸg¬ÇÍJ­s΃¤`žs¥AŸT¬½¢!žsÅ¡cÍ8ŸTÓ`¦
¡ŸgÓsÍjžv¡g¦­NÍJŸg¬N¢jžsůjÍJž:©Ÿ‡Ã’¢
Ä`¡T¢:¥
¦ÅTÅd¬Nž`®v΃¤sžs¥AŸT¬½¢!žsşTÓsÍ8Ÿt¦
ÈÁ¦
¡T®j¦-΃¡T¢jÈ ŸgÓs¦ÅTÍJÈÁ¦ÉÅdŸTÍ8ŸT¦ÉÓśÕ!¦$£C¬ÇŃô‡¢!¬½ž Ÿg¦D£P£C¢!ÈÁÍj¬½ž6ÅÍJž6£ž`¢ÒÄ`¡T¢C¥¦ÅTÅg¬½ž`®
΃¤`žs¥Ÿg¬N¢jžP¥
Íjž™Äs¡g¢C¥¦DÅgŕÕ8ÍJ­N¤`¦DÅ΃¢j¡2Ã2Ó`¬Ç¥cәŸgÓ`¦$ÅdŸg¢!Ä`Ä`¬Nž`®v¥¢jž6£C¬ÑŸT¬½¢!ž¬NŕŸT¡g¤`¦!Ö
w™E7 x9_=4;=\365
9 =9œ zt·Á°-±]²v³j´cµ:¶V·+¸ ¶Ç¹Ï´c³8¼V¼½¸ ?Ï£C¦ŸT¦
¡TÈÁ¬½ž`¬ÇÅdŸg¬Ç¥ „_µs¸s· ÷'á ~­ˆ 3¤![’~63 ¶Ç¹t³É¹
¸
Ù s³8¿AÙL¶4³8¼
C·+´
Ù\¶ J·`¹É¿T³8كµ`¸
¿$ÙVµs³8· ¿g¸
¼½³8ÙL¶ 8·s,¹ ± 8¿Á³8
· {iUÙ „ ?J¶Ç¹cÙL¶V·+´
Ù +¿ ´c¸¹T¹A¶V·:À C·+´
Ù\¶ J·`¹ Vi* kt- 34*¶ d€s-1~*¹ s´Tµ
ÙVµs³8Ù2Sº €;*,VXo -t^'`$a Sº $Ân³8"· ?i˜º €;* k`4 -t^'`$a Sº $Â$ÙVµs¸W· ^'`$a ˜º VX © ^E`$a º k`T ?>' J¿³8· { +¿ D´c¸A¹c¹A¶V· À C·<´ÙL¶ 8·
Vi*_¶ t-F^E`$a ˜º VXÂ-كµ`¸
.
· ujº +¡/V(A@˜¢RQE&
×¥¥¢j¡c£C¬Nž`®nŸg¢nŸgÓs¦-Ä`¡g¦Õ:¬½¢!¤sÅ2£C¦Ð6ž`¬ÑŸT¬½¢!žÍJž|ØÔqÈÁÍ!¥cÓ`¬Nž`¦-¥
ÍJž|ÓśÕ!¦ÏènŸ‡©:Ä+¦Å¢JΞ`¢!žCÔq£`¦Ÿg¦¡gÈÁ¬Nž`¬ÇÅdÈá
¹AÙ]³8Ù]¸-· J·s@± ?!¸Ù]¸¿A²n¶V·s¶Ç¹A²‹¬½Î"ŸgÓ`¦¡g¦¦ÿC¬ÇŇhŸ €›-t~?*IV–-3lÃ2¬½ŸgtÓ u‚(EPG^6˜º vSº €;*IVXÂgB KÊ &
39
? `8¸
v² ¿g³8³8Ù¶V·¨8¿-· · 88·6·6±@±@?j?j¸
¸
ÙqÙq¸
¸
¿A¿A²n²¶V·s¶V·6¶Ç¹A¶Ç¹A²‹²‹¬½Î_¬ÑΟTÅgÓ`¢j¦
ÈÁ¡T¦¦¦¦
ÿC­N¬N¦
ÅdÈÁŸh¦
€›ž -tŸTÅ~s¢JÎ=*IV 3Ý@ *,ÍJV ¡T ¦- ¡g¦3­NÍJŸgÃ2¬N¢j¬½Ÿgžsӆŕº˜¬Nžs€;*IÅdVŸg¦@ Í!Â|£|*º˜€;¢J*IÎ_V Ä6 ÍJÂ4¡g-FŸg¬ÇÍJ^'­<`$΃a ¤`žsºS$¥Ÿg‚¬N*I¢jV žs@ÅÖ V Íjžs£.^E`$a º˜V @  © ^'`$a º˜V  >&
Ù]¸¿A²n¶V·+³JÙ\¶ J·‘· 8·s±@?!¸Ù]¸
¿A²¶V·6¶Ç¹c²x¬ÑÎ"ŸgÓ`¦¡g¦¦
ÿ:¬ÇÅdŸt-2–*IVt- 3lÃ2¬ÑŸTÓ –-W^E`$a¨ºUVXÂÍJžs£FuJº+ÂT5. P10iQE&
ÜÓ`¦nØÔqÈÁÍ!¥cÓ`¬Nž`¦É¬Nž«ªÿCÍjÈÁÄ`­½¦™ÊÓ6ÍjÅÏ£C¢jÈvÍJ¬Nž‘Íjžs£P¢!Ä6¦¡TÍJŸg¢j¡tž`¢jž`Ôq£C¦
Ÿg¦¡gÈÁ¬Nž`¬NÅgÈ §`¤CŸž`¢JŸ-ÅdŸTÍ8ŸT¦É¢!¡ŸT¦
¡TÈn¬½Ô
žsÍ8ŸT¬½¢!žž`¢!žCÔ]£C¦ŸT¦
¡TÈn¬Nž`¬ÇÅdÈ,º4¬\Ö ¦j֟TÓ`¦|Î4Íj¥ŸŸTÓsÍ8ŸfuÒ¬ÇÅ . P10iQ¢!ž`­½© ΃¢!¡º˜—*ML*sÂÉÕ8Íj­½¤`¦DÅÁ́Õj¢j¬Ç£`Å$Ÿg¦
¡TÈÁ¬½ž6Í8Ÿg¬N¢jž
ž`¢jž`Ôq£C¦
Ÿg¦¡gÈÁ¬Nž`¬NÅgÈÒÂAÖ
]ž®!¦
ž`¦¡TÍj­’ÅdŸTÍ8ŸT¦™žs¢jžCÔ]£C¦ŸT¦
¡TÈÁ¬½ž`¬ÇÅgÈ ÍJžs£ ŸT¦
¡TÈÁ¬½žsÍJŸg¬N¢jžlž`¢jžCÔ]£C¦
Ÿg¦
¡TÈÁ¬½žs¬NÅgÈÍJ¡T¦iž`¢jŸn¡T¦Íj­½­N© ž`¦¥
¦ÅTÅgÍj¡g©
Åd¬Nžs¥
¦ŸgÓ`¦©l¥
Íjž?§6¦¡T¦
ÈÁ¢8Õj¦D£§:© ¡T¦
Ã2¡T¬½Ÿg¬Nž`®¨ŸgÓ`¦PØÔLÈvÍ!¥cÓ`¬½žs¦j֝]žs£C¦¦£X¯•ŇŸcÍ8ŸT¦|žs¢jžCÔ]£C¦ŸT¦
¡TÈÁ¬½ž`¬ÇÅgÈ ¥
Íjžl§+¦
¡g¦ÈÁ¢8Õj¦£‘§:©¤sÅd¬Nž`®Å‡ŸcÍJžs£sÍJ¡c£‘ÍJ­N®j¢!¡g¬½ŸgÓsÈÁşgÓ6Í8ŸŸTÍjüj¦ÁÍiž`¢!žCÔ]£C¦ŸT¦
¡TÈn¬Nž`¬ÇҟT¬N¥ÁÍj¤CŸg¢!ÈÁÍJŸg¢!ž‘ÍJžs£«Ä`¡T¢C£C¤s¥¦ÁÍJž
¦ö ¤`¬NÕ8ÍJ­N¦
ž ŸÏ£C¦
Ÿg¦¡gÈÁ¬Nž`¬NÅdŸg¬Ç¥ÉÍj¤CŸg¢!ÈvÍ8Ÿg¢!žÖ6ÜÓs¦$Ÿg¡cÍJž6Ň΃¢!¡gÈvÍ8ŸT¬½¢!žP£C¢:¦Åž`¢JŸÏÄ`¡g¦DÅd¦¡gÕ!¦ŸgÓ`¦Á£C¢!ÈÁÍj¬½žP£`¦Ÿg¦¡gÈÁ¬NžCÔ
¬NÅgȯsÍjÅ2¥ÍJž|§6¦$Åg¦
¦ž¬½žªÿ`ÍjÈnÄs­½¦-æCÖ
» š:³8² +¼½¸ ;Œh¦Ÿi¤sř¥¢!žsÅd¬Ç£C¦¡ÒÍJž ØÔqÈvÍj¥cÓ`¬Nž`¦ÓśÕ:¬Nž`® ŸgÓs¦P΃¢j­N­N¢8Ã2¬½ž`® ž`¦
ÿ:Ÿ|ÅdŸTÍ8ŸT¦Îƒ¤`žs¥Ÿg¬N¢jž4á vº v*IVXF "!'Ê *T;æ %E*CvºdKÊ *IV @ –
 *CvºLæ *,V 1 †Ã2Ós¦
¡T1¦ ^E`$a¨Uº V @  © ^'`$a ˜º V  >&•qŸ¬NÅ|ҟcÍ8ŸT¦‘ž`¢!žCÔq£`¦Ÿg¦¡gÈÁ¬Nž`¬ÇҟT¬N¥
§`¤CŸv£C¢jÈvÍj¬½ž £C¦
Ÿg¦¡gÈÁ¬Nž`¬NÅdŸg¬Ç¥JÖמ¦ö ¤`¬NՁÍj­½¦ž Ÿn£C¦
Ÿg¦
¡TÈÁ¬½žs¬NÅdŸg¬Ç¥ÒÍJ¤`Ÿg¢jÈvÍJŸg¢jž†¬Ç)Å 9•\º *IVX›Â ÊDæ *I9•4ºdÊDæ *,V @ ) 9•qº‡ÊDæ *IV c
 v&JÜÓ`¦2ž`¦
Ãl¦ö ¤`¬NÕ8ÍJ­N¦
ž ŸØÔqÈvÍj¥cÓ`¬Nž`¦¬NÅÅdŸTÍJŸg¦£C¦
Ÿg¦¡gÈÁ¬Nž`¬NÅdŸg¬Ç¥§`¤CŸ/£`¢jÈvÍJ¬Nžžs¢jžCÔ]£C¦ŸT¦
¡TÈÁ¬½ž`¬ÇÅdŸg¬Ç¥JÖ
/7:  >
B y6%œ J¿É³8· {°-±]²v³j´cµ:¶V·<¸ ³J·¨,¸ µ C¶ 8³8¼N¸·6ٕÙ]¸
¿A²¶V·<³8ÙL¶ 8· ?!¸Ù]¸
¿A²¶V·6¶Ç¹cÙL¶4´°-±]²v³j´cµ:¶V·<¸ 9•’²vG³ {™¾c¸
´ 8·`¹AÙL¿ s´Ù]¸ ?KŒ
•¿ Œ” ¶Ç¹Ù]¸
¿A²¶V·<³8ÙL¶ 8· · 8·s@± ?!¸Ù]¸
¿A²¶V·6¶Ç¹cÙL¶4´Áكµ`¸
· 9•„¶V¼V¼_µs³ 8¸Òكµ`¸ ?!³8Ù]³|¹
¸$Ù 2–•0 2’ˆ"*eÊ %'*
„_µ`¸
¿g¸ 2 ¶Ç¹ ?!³8Ù]³Á¹
¸Ù 4*³8"
· ?vكµ`¸¹
³J²Á¸$¹
¸Ù ¹AÙq³JÙq¸¹ „¶Vكµ 4&zt¼V¼Xكµ`¸ +¿ D´c¸A¹c¹A¶V· ÀÒ¿g¸¼N³8ÙL¶ 8·`¹ 9•c„¶V¼V¼
¾c¸ ?!¸ ·+¸ ? 8· ¹ s¾¹
¸Ù\¹ 2 ˆ"%… 3 • "GV • <dV_- 34* r †*) - 2&¶ iV'lÙVµs¸·lº —* !C V • º i* !| %†u • º +Â
„¶V¼V¼ J·s§¼ {‘¾c¸ . P 0Q«¶ q- 2 ˆ"!KÊ %'&= 8¿i¸c³j´cµ¨¹AÙ]³8Ù]
¸ €=-_~)‡·<‚¸ „Û¼ <±d¾c³j´ PÙL¿g³J·`¹A¶VÙ\¶ J>· „¶V¼V¼•¾c¸|³ ??j¸ ?KŒ
zt¼V¼ÙVµs¸A¹
¸|ÙL¿g³8·s¹c¶VÙL¶ 8·sJ
¹ „¶V¼V¼¾c¸|¼½³j¾c¸
¼V¼½¸ ? B¾ {¨³¨¿g¸
¼½³8ÙL¶ 8· .|*2كµ`³JÙ-Ù\¿T³8·`¹A¼½³JÙq¸¹|¸ ¸
|¿ { º —* !. - 2 ˆ" %¨¶V·6Ù º †*
ÊD9 - 2’ˆ " eÊ %'& 8·s¹
I¸ µ s¸
·sÙL§¼ {$‡09•iá ~lˆ3•!i[ ~ ¶Ç¹ ?!¸ ·+¸ ?‚¾ {)PJ- 9•qSº €;*IV•Ƕ 8PJ- vSº €;*IVXÂÁ³JB· ?
9•qSº €;*).d
 l"R€E% 8¿Ò³8¼Vg¼ €.- ~s& :<µs¸vÙ]¸A¹AÙL¶V· À ? J²Á³J¶V=· ^'•¶Ç¹ ?j¸ ·<¸ ?|B¾ {?^'•L˜º V•V«Â l":º †* !X < - ^+˜º VX, %‘³JB· ?
^6º .dT
 p" º !6,* !| % 8¿n³ s³8¿AÙL¶4´ C¼½³J¿ 6o-2=&"/¶V·+³J¼V§¼ {›`G•Lº †* T /`Cº +‚* J¿É³8¼V¼ =-W^E`$a Sº `J| &
×¥¥¢j¡c£C¬Nž`®™Ÿg¢|ŸgÓ`¬ÇÅ­N¦
ÈÁÈvÍiŸT¦
¡TÈÁ¬½žsÍJŸg¬N¢jž¨ž`¢jž`Ôq£C¦
Ÿg¦¡gÈÁ¬Nž`¬NÅgÈ ¥ÍJž‘§+¦ÁŸg¡cÍJž6Ň΃¢!¡gÈÁ¦£‘¬½ž ŸT¢£`¢jÈvÍJ¬Nž‘ž`¢!žCÔ
£C¦ŸT¦
¡TÈÁ¬½ž`¬ÇÅgÈ|Ö
`¡T¢jÈ ŸgÓ`¬ÇÅtž`¢JŸT¦É¬½ŸÎƒ¢j­N­N¢8ÃÅ2ŸgÓ6Í8ŸtÕ¦$Èv́©|¦ÍjÅg¬N­½©™Ÿg¡cÍJžsÅd΃¢j¡TÈ ÍJž:©™ØÔLÈvÍ!¥cÓ`¬½žs¦$¬½ž ŸT¢iÍҞ`¦ÃÛ¢jž`¦ÉÓśÕ:¬½ž`®
ÍjÅTÅd¢C¥
¬NÍJŸg¦£iҟT¢jÄ`Ä`¬Nž`®Á¥¢!žs£C¬½Ÿg¬N¢jžsŒŸg¢n¦
Õ!¦
¡T©vҟcÍ8Ÿg¦!ÖCÜÓ`¬Nŕ¢!§sÅd¦¡gÕ8ÍJŸg¬N¢jžsŕÅdÓs¢8ÃşTÓsÍ8Ÿ•ŸgÓ`¦-Íj§6¢8Õ!¦Ÿg¡cÍJž6Ň΃¢!¡gÈvÍ8Ô
Ÿg¬N¢jžÁ¬ÇÅ¢jžnŸgÓs¦2¢jž`¦ÓsÍjžs£Á¥¢jž6Åd¬ÇҟT¦
ž ŸÃ2¬½ŸgÓnŸgÓ`¦ŸT¦ÅdŸg¬Nž`®-Ó:©:Ä6¢jŸgÓ`¦DÅd¬ÇÅÍjÅgü:¬½žs®Îƒ¢!¡/ÍJ­N­`ҟcÍ8ŸT¦Å§+¦
¬Nž`®ÐsžsÍj­`ҟcÍ8ŸT¦Å
ÍJžs£™¢jžiŸgÓ`¦Ï¢JŸTÓ`¦
¡ÓsÍjžs£ÒÄs¡g¢8Õ!¦ÅŸTÓsÍ8ŸÅdŸg¢!Ä`Ä`¬Nž`®n¥
¢jžs£`¬ÑŸT¬½¢!žsŕÈÁ́©Á§+¦¬½®!ž`¢j¡T¦£XÖ :¤`§6Åd¦Dö!¤s¦
ž Ÿg­N©vÒ¦ÏÃ2¬N­½­¥
¢jžCÔ
Åd¬Ç£C¦¡tØÔLÈvÍj¥cÓs¬½ž`¦DÅÃ2Ó`¬Ç¥cӑÍj¡g¦ÉÅdŸTÍJŸg¦nÍJžs£ŸT¦
¡TÈÁ¬½žsÍJŸg¬N¢jž‘£`¦Ÿg¦¡gÈÁ¬Nž`¬ÇҟT¬N¥ÍJžs£Ã2¬½ŸgÓs¢j¤CŸ-ҟT¢jÄ`Äs¬½ž`®™¥¢jž6£C¬ÑŸT¬½¢!žsÅ
ÅdÄ+¦¥
¬ÑÐ6¦£XÖX×¥¥¢!¡T£C¬Nž`®vŸT¢ÒŸTÓ`¬NÅt¢j§6Åd¦¡gÕ8Í8ŸT¬½¢!žPÅd¬Nžs¥
¦$ž`¢8ÃÛ¢jž«ÍJž:©™ØÔLÈvÍ!¥cÓ`¬½žs¦ÉÍjÅt¬½ž ŸT¡g¢C£C¤s¥
¦£§:©å¦
Ðsž`¬½Ÿg¬N¢jž
nÃ2¬½­N­XÓśÕ!¦tŸTÓ`¦-ž`¦
ÿ ŸÅdŸTÍJŸg¦Ï΃¤`žs¥Ÿg¬N¢jž¢JÎ"ŸgÓs¦΃¢j¡T7
È xEá ~ˆ 3_![j~÷ž`¢vҟT¢jÄ`Äs¬½ž`®v¥
¢jžs£C¬½Ÿg¬N¢jžÍJŸ2Íj­½­LÖ
å¢!ÈvÍJ¬Nž‘ž`¢!žCÔq£`¦Ÿg¦¡gÈÁ¬Nž`¬ÇÅdÈ Íjžs£¢jÄ+¦
¡cÍ8ŸT¢j¡Ïž`¢jž`Ôq£C¦
Ÿg¦¡gÈÁ¬Nž`¬NÅgÈ*¥
Íjž`ž`¢JŸ§+¦¡T¦
ÈÁ¢8Õj¦D£§:©¡g¦Ã2¡g¬½Ÿg¬Nž`®ÒŸTÓ`¦
ØÔqÈvÍj¥cÓ`¬Nž`¦j¯2Åg¢ ŸTÓ`¦
¡T¦«Åg¦
¦ÈÁÅ|ž`¢l®j¢:¢C£ ¡T¦ÍjÅg¢jž?ŸT¢l¢!¤CŸg­Ḉà ŸgÓs¦Åg¦PŸ‡©:Ä6¦DÅ|¢JÎɞ`¢!žCÔ]£C¦ŸT¦
¡TÈn¬Nž`¬ÇÅdÈ Íjžs£X¯2ÍjÅ
¬½­N­N¤sҟT¡TÍJŸg¦D£™¬Nžªÿ`ÍJÈÁÄ`­N¦nÊj¯CŸTÓ`¦
©|¥
ÍJž|§+¦-¤sÅd¦
΃¤`­LÖ
1htí4-î/òdë’ìì—!ìEXìlî G
‰ñòdëh—
«¦/Ÿg¤`¡Tž$ž`¢8è¢j¤s¡_Í8ŸgŸg¦ž!ŸT¬½¢!žŸg¢2ŸT¦ÅdŸg¬Nž`®sÖD×Å"ҟcÍ8ŸT¦£¬Nž-ŸgÓ`¦/¬½ž Ÿg¡T¢C£C¤s¥Ÿg¬N¢jž¯
ŸgÓ`¦•ÍJÄ`Ä`¡T¢!Í!¥cÓt¤6Åd¦D£-¬Nşg¢¥
¢jžsÅg¬Ç£C¦
¡
Ÿ‡Ã’¢iØÔqÈÁÍ!¥cÓ`¬Nž`¦ÅÍjžs£™Ÿg¢Ò®!¦
ž`¦¡TÍJŸg¦-Í ·s¶VÙ]¸2Åd¦
Ÿ¢JÎÅg¦ö ¤`¦žs¥¦DşgÓsÍJŸ¯6Ã2Ó`¦
žPÍjÄ`Ä`­N¬½¦D£|Ÿg¢ÁŸgÓs¦$Ÿ‡Ã•¢vÈÁÍ!¥cÓ`¬Nž`¦Å
Ã2¬ÑŸTә¬Ç£C¦ž!ŸT¬N¥ÍJ­<¢j§6Åd¦¡gÕ8ÍJ§s­½¦t¡g¦DÅd¤`­½ŸTů ®j¤sÍj¡TÍjž!ŸT¦
¦DşgÓ6Í8Ÿ•ŸgÓ`¦ÏŸ‡Ã•¢ÉÈvÍj¥cÓ`¬Nž`¦DÅ/ÓśÕ!¦¬Ç£C¦
ž ŸT¬N¥ÍJ­<§6¦ÓśÕ:¬½¢!¤`¡DÖ ÜÓ`¬ÇÅ
¬NÅ΃¢j¡TÈvÍJ­N¬NÅg¦£ž`¦ÿ:ŸDÖ!ÜÓ`¦Åg¦¥Ÿg¬N¢jžvÍJ­ÇÅd¢¬Nž Ÿg¡T¢:£`¤s¥¦DşgÓ`¦¥
¢jžs¥
¦
ÄCŸcşgÓ6Í8Ÿ’Íj¡g¦¡T¦ö ¤`¬N¡g¦D£¬NžnŸgÓ`¦Ÿg¦ÅdŸg¬Nž`®-Ä`¡T¢C¥¦DÅgÅ
ÍJžs£ÅgÓ`¢8ÃŕÓ`¢8à ÍnŸT¦ÅdŸÅd¦
Ÿ¥
ÍJž|§+¦-®j¦
žs¦
¡cÍ8Ÿg¦D£XÖ
w™E7 x9_=4;=\36
9 œ 8¿³8·°$±]²Á³!´TµC¶V·+¸ ¡‡$³ s³8¿AÙL¶4³8¼ C·+´
ÙL¶ 8
· á 2O1!i[ 2 ´T³J¼V¼½¸ ? ³Í«§`¡g¦DÍJü:Ä+¢j¬Nž!Ÿ
¥¢!ÈnÄs¤CŸTÍJŸg¬N¢jž ¢jÎ ¶Ç¹ ?j¸ ·<¸ ?«³8¹ ; º @&B&B&!D`) /E@0&B&H&)KDi*2; ¶ ÙVµs¸¿g¸I¸ š!¶Ç¹cÙ\¹™³ `³JÙVOµ VK@A&B&B&,VGD ¿ J² €‚
¹ s´TµÙVµs³8Ù bVG KC* -F^6Uº VGq| *"9
Ê Ÿ¤ TŸL*LON &
 JÙq
¸ ŒtÜÓ`¦n¦
­N¦
ÈÁ¦
ž ŸTÅ  ΃¢!¡-ÍJ­N­tæ Ÿ8 ŸL ¬½ž«ŸgÓs¦ÁÍj§6¢8Õ!¦£C¦
Ðsž`¬½Ÿg¬N¢jž‘΃¢j¡Ã2Ó`¬Ç¥cÓ  @ ÍJ¡T¦¥
Íj­½­N¦£
¾¿T¸T³ 8¶V·6Ù ³J¼ s¸A¹•¢JÎ ; &
40
ÜÓsÍ8Ÿ|¬Nů͆§`¡T¦ÍJü:Ä+¢j¬Nž Ÿ™¥¢!ÈnÄs¤CŸTÍJŸg¬N¢jž ÍjÅTÅg¢:¥
¬NÍJŸg¦DÅiÍ Åg¦ö ¤`¦žs¥¦P¢jÎÉ£`Í8Ÿc͆Õ8ÍJ­N¤`¦Å™Ã2¬½ŸgÓ ŸTÓ`¦«Åg¦ö ¤`¦žs¥¦
J¢ ÎÉ£`ÍJŸT͆Õ8Íj­½¤`¦DÅÒÄ`¡T¢C£C¤s¥
¦£?Ã2Ó`¦ž ͆ÄsÍ8ŸTÓ ¬½ž ŸgÓ`¦«ÈÁÍ!¥cÓ`¬Nž`¦¬NÅiŸg¡ćÕj¦¡TÅg¦£Ö0A¢JŸiŸgÓsÍJŸ¯•¬½ž ®!¦
ž`¦¡TÍj­\¯Îƒ¢!¡™Í
ž`¢jž`Ôq£C¦
Ÿg¦¡gÈÁ¬Nž`¬NÅdŸg¬Ç¥ÁØÔqÈvÍj¥cÓ`¬Nž`¦!¯XÈÁÍjž:©PÄsÍ8ŸTÓsÅÈv́©P§+¦ÁŸg¡ćÕj¦
¡cÅg¦£P§:©P¢!ž`¦vÅd¦Dö ¤`¦
žs¥
¦Á¢JÎ2£`Í8Ÿc͙Õ8Íj­½¤`¦DÅ-ÍJžs£
΃¤`¡gŸgÓ`¦¡gÈÁ¢j¡T¦ÍÄsÍJŸgÓvÈv́©ÉÄ`¡T¢C£C¤s¥
¦2ÈÁÍjž:©Åg¦ö ¤`¦
ž6¥¦Å¢jΣ`Í8ŸcÍՁÍj­½¤s¦Å¯jÅd¢$ͧs¡g¦DÍJü:Ä6¢!¬½ž Ÿ¥¢!ÈÁÄ`¤CŸTÍJŸg¬N¢jžvÈv́©
ž`¢JŸ§+¦-¤`ž`¬Çö ¤`¦
­N©™£`¦Ðsž`¦D£X¯sÍ!Ŭ½­N­½¤6ҟT¡TÍJŸg¦£™§:©vŸgÓs¦΃¢j­N­½¢8Ã2¬Nž`®Á¦ÿ`ÍJÈÁÄ`­N¦jÖ
» š:³8² +¼½¸ $EŒ s¢j¡ xÍ!Ŭ½žªÿCÍjÈÁÄ`­½¦ÁÊ-ÍJž6£
g@hõº‡Ê!HÊ (6CÊK*H!2v
è * ÂA¯ !Xõº‡ÊjRÊ (6:Ê'* v* !¯ 'X÷ºdHÊ (6CÊK*
'Ê *
ʁÂA¯ 3÷Sº (6CÊK*Tæ *
ʁÂA#¯ Xõº A:ÊK* *ÊDÂA¯
h‹#º :ÊK*H!æ * !ÂA¯ h‹ºdKÊ * v* ÂAÖ
Ò¦ÏÈv́©Á®j¦Ÿ¦
¬½ŸgÓs¦
¡ ?5 @ 7K*:¢j¡ ;•i5 @ • e*:¬½ÎÄsÍJŸgJÓ V @ k'kV  V V @ ¬ÇŒ¤6Åd¦D£XÖ !’¢jžsÅg¦Ô
ö ¤`¦
ž Ÿg­N©iÕ¦-Èv́©i£C¦
Ðsž`¦ º +Âo5™¢j¡ •; º <¡,;•˜*`Ã2Ó`¦¡g¦ t @ &B&H& '&sÜÓ`¦-Õ8Íj­½¤`¦DÅ  *9Ê Ÿ ¡Ÿ (nÍj¡g¦
¢j§CŸcÍJ¬Nž`¦£Í!ŕ΃¢j­N­½¢8ÃÅá ;
E@«‹º‡Ê!HÊ (6CÊK* v* º g@| #E@tÍjžs.
£ v˜º €‚E*M ‡c ­€D¯
‹º‡RÊ (;A:Ê'*
KÊ *ÊDº V @ ÍJžsW
£ vSº € *,V @ T /€ @ ÂA¯
h‹Sº (6CÊK*c
æ *
ʁº !Bk%ÏÍjžsW£ vSº €R@e* k`c ­€$@
¯
‹º A:ÊK* *ÊDÂAA
¯ • xº E+KÊ *KÊ *ÊD| *<º kA * k• ÍjžsF£ vSº € @ * k`c /€ @ ¯
‹2º CÊK*B!
æ * ÂA¯Xº V  ÍJžsF£ v˜º € @ *,V  ¡Â ­€ ÂA¯
‹º‡'Ê * * !¯º V
) ÍJž6.
£ v˜º €e*,V
TT ­€D¯
h‹˜º —*
'Ê *
ÊD¯º RV @ ÍJž6W
£ v˜º € *IV @ c /€ @ ÂAÖ
qŸÈv́©Ò§6¦-¢!§sÅg¦
¡TÕj¦£ÒŸgÓsÍJŸ ¬ÇÅÍn§`¡T¦ÍJü:Ä+¢j¬Nž Ÿ•Õ8ÍJ­N¤`¦-¢jÎ_§+¢JŸgÓ ; Íjžs£ v•; º j¯ • ÂAÖ
]ž¢!¡T£C¦¡ÉŸT¢‘ŸT¦ÅdŸnžs¢jžCÔ]£C¦ŸT¦
¡TÈÁ¬½ž`¬ÇÅdŸg¬Ç¥Ò¬NÈnÄs­½¦Èn¦ž ŸTÍ8ŸT¬½¢!žsů"¢!ž`¦|¤sÅd¤6ÍJ­N­½© ÈvÍJü!¦ÅnÍ«Åg¢JÔ]¥
Íj­½­N¦£ ´ 8² +¼N¸Ù]¸±
Ùq¸¹AÙ\¶V·:Ài³8¹T¹ C² +ÙL¶ 8·6¯<ù JûXÃ2Ó`¬N¥cÓ|Åǵ©CÅ/ŸgÓsÍJŸ•¬½Ÿ2¬NŕÄ+¢!ÅTÅd¬N§`­N¦j¯:§:©ÒÍJÄ`Äs­½©:¬Nž`®Í®j¬NÕj¦ž™Åg¦ö ¤`¦
ž6¥¦¢jÎ"£`ÍJŸTÍÉՁÍj­½¤s¦Å
¢nŸg¢Í™®j¬NÕj¦
ž«¬½ÈÁÄ`­N¦
ÈÁ¦ž!ŸcÍ8ŸT¬½¢!ž«ÍiÐsž`¬½Ÿg¦Áž:¤`Èɧ+¦
¡¢JÎ/Ÿg¬NÈn¦DÅ
¯<ŸT¢™¦
ÿC¦
¡c¥¬ÇÅd¦nÍJ­N­ŸgÓ`¦nÄsÍ8ŸTÓsÅ¢JÎ/ŸgÓ`¦Á¬NÈnÄs­½¦Èn¦žCÔ
ŸTÍJŸg¬N¢jžŸTÓsÍ8Ÿ¥
ÍJž§+¦$ŸT¡T́Õ!¦
¡cÅd¦D£i§:=© ¢!Ö ¬½ŸgÓ`¢!¤CŸ-Åd¤s¥cÓPÍjžPÍjÅTÅd¤sÈnÄ`Ÿg¬N¢jž¯6ž`¢ÒŸT¦ÅdŸÏÅg¤`¬ÑŸT¦Åt¥
ÍJž®!¤sÍJ¡cÍJž ŸT¦
¦΃¤`­N­
Î4ÍJ¤`­½Ÿ2¥¢8Õj¦¡TÍj®j¦’΃¢j¡’ž`¢jžCÔ]£C¦
Ÿg¦
¡TÈÁ¬½žs¬NÅdŸg¬Ç¥¬NÈÁÄ`­½¦ÈÁ¦
ž ŸTÍJŸg¬N¢jžsÅÖj]žvŸT¦
¡TÈvÅ/¢jÎ<ØÔLÈvÍ!¥cÓ`¬½žs¦Å¯JŸgÓs¬NŒÈÁ¦ÍJž6şTÓsÍ8ŸŸTÓ`¦
ÍJÄ`Äs­½¬Ç¥
ÍJŸg¬N¢jž¢JÎÍvÅg¦Ÿ¢JÎÅg¦ö ¤`¦žs¥¦DÅ vŸg¢ÁŸTÓ`¦$¬NÈÁÄ`­½¦ÈÁ¦
ž ŸTÍJŸg¬N¢jžÍnÐsž`¬½Ÿg¦$ž:¤`ȧ6¦¡¢jÎ_ŸT¬½ÈÁ¦ÅÃ2¬½­N­¡T¦Åg¤`­½Ÿ¬½žÍ
ºƒ§`¡T¦Íjü:Ä6¢!¬½ž ŸcÂ¥
¢jÈÁÄ`¤CŸcÍ8ŸT¬½¢!ž™¢jÎ_ŸTÓ`¦-¬½ÈÁÄ`­N¦
ÈÁ¦ž!ŸcÍ8ŸT¬½¢!žÖ
× Åg¦Ÿ¢JÎÅg¦ö ¤`¦žs¥¦DÅ¢JÎX£`Í8ŸcÍ-Åd¦
Ÿ/Õ8ÍJ­N¤`¦Å -Ã2¬½­N­6£`¦Ÿg¦D¥AŸ’Íj­½­`ŸgÓ`¦2Î4Íj¤`­½ŸTÅ¢jÎ<Íjžv¬½ÈÁÄ`­N¦
ÈÁ¦ž!ŸcÍ8ŸT¬½¢!ž • ÍJ® ÍJ¬Nžsҟ
ÍÒÅgÄ6¦D¥¬½Ð6¥
ÍJŸg¬N¢jž õ¬ÑΟTÓ`¦ÍjÄ`Ä`­N¬N¥Í8Ÿg¬N¢jž¢jÎ ™ÍÒÅg¤ /Ò¥¬N¦
ž Ÿž:¤`Èɧ+¦
¡t¢JΟg¬NÈÁ¦Åºƒ¬LÖ ¦!ÖsŸT¢Ò¦ÿC¦
¡c¥¬ÇÅg¦$ÍJ­N­ŸgÓs¦$ÄsÍ8ŸTÓsÅ
¢JÎ ÛÍjžs£ 9•sŸgÓ6Í8Ÿ2¥
ÍJži§6¦tŸg¡ćÕj¦¡TÅg¦£Á§:© Ÿg¢ ‹ÍJž6£ 9•+Ã2¬ÑŸTÓi¬Ç£C¦
ž Ÿg¬Ç¥
Íj­6¢!¤CŸgÄs¤CŸ•¡T¦Åg¤`­½ŸTŒ®j¤sÍj¡TÍjž Ÿg¦
¦DşTÓsÍ8Ÿ
ÚÍjžs£ 9•Ã2¬N­N­§6¦ÓśÕj¦n¬N£`¦
ž Ÿg¬Ç¥
Íj­½­N©Îƒ¢j¡-Íjž ©PÅg¦ö ¤`¦žs¥¦Á¢jΒ£`Í8ŸcÍÅd¦
ŸÕ8Íj­½¤`¦DÅ
Ö :¤6¥cÓ¨ÍÅg¦ŸÃ2¬½­N­§+¦Á¥ÍJ­N­½¦D£‘Í
‡¾¿g¸c
³ 8¶V·6Ù ÒÙ]¸A¹AÙ/¹¸
Ù ³8"· ? 9•\Ö
w™E7 x9_=4;=\368
9 yœ :—„ -°-±]²v³j´cµ:¶V·+¸¹ ³8B· ? 9•³J¿g¸-´c³8¼V¼½¸ ?ϟT¦ÅdŸg¬Nž`®JÔ]¥¢!ÈÁÄsÍ8ŸT¬½§`­N¦n¶ كµ`¸
¶V9¿ ?!³8Ù]³¹¸
Ù\I¹ ‡_¹
¸Ù\¹ ¾c³¹A¶4´ +¿ D´c¸A¹c¹A¶V· À™¿g¸
¼½³8ÙL¶ 8·s,¹ ‡’³8B· ? CÙ CÙ C·+´
Ù\¶ J·`¹$´ 8¶V·+´
¶ ?jR¸ Œ
w™E7 x9_=4;=\368
9 yiy6œ ¸
Ù º 2=*,~?* 34*I4*C€  *I^v*,°)*C`JÂݳ8B· ? 9•– º 2=*,~9•˜* 34*C9•˜*C€G• *I^v*,°)*C`JÂݾc¸ UÙ „ °$±
²Á³!´TµC¶V·+¸¹PÙVµs³8ÙÁ³8¿g¸‘Ùq¸¹AÙ\¶V·:ÀJ±d´ J² s³8ÙL¶4¾¼NH¸ Œ :<µ`¸
· ³ ·6¶VÙq¸|¹
¸
Ù 86 2 ¶Ç¹‘´c³8¼V¼N¸ ?l³§`¡T¦Íjü:Ä6¢!¬½ž ŸÁŸg¦DҟiÅg¦Ÿ
*³8"
· ? 9•/¶ „_µ`¸
·+¸ ¸
¿-ÙVµs¸¿T¸ÉI¸ šj¶Ç¹A-Ù ³8"· ? ª UÙ „ Ò¾¿T¸T³ 8¶V·6Ù´ J² CÙq³JÙ\¶ J·`¹ *³8"· ? 9•˜*¿g¸¹ `¸c´
±
Ù\¶ 8¸
§¼ {$‡¡„¶Vكsµ `n ; º +¡­`n ; ª º <Â|* t-; =„/¸µ`; ³ X¸ V ; #V ; ª &
 JÙq
¸ KŒ#`¢!¡_Ÿ‡Ã•¢ØÔqÈvÍj¥cÓ`¬Nž`¦Å ÍJžs£ 9•˜*8¬ÑgΠɺ $ÂÍJžs?£ ɺ 9•NÂÍj¡g¦•¦ö ¤`¬NÕ8ÍJ­N¦
ž ŸÍJ¤CŸT¢jÈvÍ8ŸcÍtŸgÓ`¦sž V ; /V ; ª Ö
Æ¢8Õ¦
Õ!¦
¡D¯jŸTÓ`¦$¥¢!ž Õ!¦
¡cÅd¦¬½ÈÁÄ`­N¬N¥Í8ŸT¬½¢!ž™¬ÇŞ`¢JŸŸT¡g¤`¦!¯CÍjŬ½Ÿ¬ÇŦÍ!Åd©nŸT¢Á¥
¢jžsÅdŸg¡T¤s¥Ÿ’Ÿ‡Ã•¢ÉŸT¦ÅdŸg¬Nž`®v¥¢!ÈnÄ6Í8Ÿg¬N§`­N¦ØÔ
ÈvÍj¥cÓ`¬Nž`¦Å•ŸTÓsÍ8Ÿ¥
¢jÈÁÄ`¤CŸT¦-¬N£`¦
ž Ÿg¬Ç¥
Íj­X¡g¦­NÍJŸg¬N¢jžsÅ2Íjžs£iÓ6́Õj¦ž`¢jž`ÔL¦Dö!¤s¬½Õ8ÍJ­N¦
ž Ÿ2ÍjÅTÅd¢C¥
¬NÍJŸg¦£|ÍJ¤`Ÿg¢jÈvÍJŸTÍ`Ö
:¬NÈn¬N­ÇÍJ¡|Ÿg¢lŸgÓ`¦ £C¦
Ÿg¦
¡TÈÁ¬½žs¬NÅdŸg¬Ç¥ ¥
ÍjÅg¦lù 7
æ JûL¯ù æ (Dûq¯•ŸgÓ`¦¨¬Ç£C¦Íl¢JÎÉ¢!¤`¡ÈÁ¦ŸgÓs¢:£z¬NřŸT¢lÄ`¡T¢8Õj¦¨ÍlÅdŸg¡T¢jžs®j¦
¡
¡g¦Dö ¤`¬½¡T¦
ÈÁ¦ž!ŸD¯:ŸgÓsÍJŸ2¬NŕŸTÓsÍ8ŸŸgÓs¦Ÿ‡Ã’¢ÁÍjÅTÅd¢C¥
¬NÍJŸg¦£iÍJ¤CŸT¢jÈvÍ8ŸcÍÍj¡g¦¦ö ¤`¬NÕ8ÍJ­N¦
ž ŸÖ:]ž|ŸgÓs¬NÅÃ́©j¯:¬Nž™¢!¡T£C¦¡•Ÿg¢nŸg¦Dҟ
ŸgÓ`¦nŸ‡Ã•¢™ØÔLÈvÍ!¥cÓ`¬½žs¦ÅÏÒ¦Á¥
Íjž‘¤sÅg¦ŸgÓ`¦nŸg¦Dҟ$Åg¦ŸcÅt¢jΟgÓs¦ÁÍ!ÅgÅg¢C¥¬ÇÍ8ŸT¦£PÍj¤CŸg¢!ÈÁÍJŸTÍsÖ<Æ¢8Ò¦Õj¦¡¯sŸgÓ`¬ÇŬN£`¦Í|¥
ÍJž
¢jž`­N©‘Õ¢j¡Tü¬½Î•¬½Ÿ$¬NÅ$Ä6¢ ÅgÅg¬½§s­½¦nŸg¢P£`¬NÅdŸg¬Nž`®j¤s¬NÅgÓ §6¦
Ÿ‡Ã’¦¦
ž†ÍJž:©Ÿ‡Ã•¢™Äs¡g¢C¥¦DÅgÅg¬Nž`®¡g¦­NÍJŸg¬N¢jžsÅϤsÅg¬½žs®PÍJÄ`Ä`¡T¢jÄs¡g¬ÇÍ8ŸT¦
Õ8ÍJ­N¤`¦ÅÖ
w™E7 x9_=4;=\368
9 y“X3œ zt·P°-±]²v³j´cµ:¶V·+¸v¶Ç¹Á´c³8¼V¼½¸ ?ÁÕ¦Íjü¢j¤CŸTÄ`¤CŸdÔ]£C¬ÇҟT¬½žs®j¤`¬ÇÅdÓ6ÍJ§`­N¦¶ J¿Á³Jv· {sVi* k–- 34*¶ كµ`¸
¿g¸
C¸ š!¶Ç¹AÙ —* i•@ *!• -2™„¶Vك
µ iV i•@ *!k • ³8B· ?›`Cº i•@ c #`Cº i• Â$ÙVµs¸F· V.­ki&
zt·°$±]²Á³!´TµC¶V·+¸’¶Ç¹•´c³8¼V¼N¸ ?ÅdŸg¡T¢jžs®•¢!¤CŸgÄs¤CŸdÔ]£C¬ÇҟT¬½ž`®!¤`¬ÇÅdÓsÍj§`­N¦t¶ 8¿•³Jv
· {4Vi* kf- 34*:¶ كµ`¸
¿g¸2C¸ š!¶Ç¹AÙ —*!•@ * • 2™„¶VÙVµ iV i•@ *!k • ³8B
· ?`Cº i•@ T /`Cº i• Â$ÙVµs¸W· VWqk†³JB· ?%i•@ i• &
41
ÜÓ`¦ÉØÔLÈvÍ!¥cÓ`¬½žs¦$¬½ž«ªÿ`ÍJÈÁÄ`­N¦ÒÊɬÇÅÅdŸg¡T¢jžs®Ò¢j¤CŸTÄ`¤CŸgÔq£C¬ÇÅdŸg¬Nž`®j¤`¬ÇÅgÓsÍJ§`­N¦+¬NžP¢j¡c£C¦
¡Ÿg¢iÈÁ¦¦ŸŸTÓ`¬ÇÅÄ`¡T¢jÄ+¦
¡gŸ‡©
ŸgÓ`¦$£`¤`ÈÁÈÉ©iÕ8Íj­½¤`¦DÅX!-ÊK*g!æ*g! nÍjžs£1!2ènÕ¦
¡T¦¤sÅg¦£™¬½ž|ŸgÓs¦$£C¦Ðsžs¬ÑŸT¬½¢!žsÅ2¢JÎAQE*V  *PÍJžs£. ,*`¡g¦DÅdÄ+¦¥Ÿg¬NÕj¦­½©!Ö
ó §:Õ ¬N¢j¤6Åd­N©j¯¬½BÎ 3P¬ÇÅÍÏÅd¦
Ÿ¢jÎ"º4ÄsÍJ¡gŸg¬ÇÍJ­VÂ΃¤`žs¥AŸT¬½¢!žsÅ¡cÍ8ŸgÓs¦
¡"ŸgÓsÍjž¡T¦
­ÇÍ8ŸT¬½¢!žsůÕ¦Íjü-¢j¤CŸTÄ`¤CŸdÔ]£C¬ÇҟT¬½žs®j¤`¬ÇÅgÍj§`¬N­½¬½Ÿ‡©
ÍJžs£-ÅdŸg¡T¢jžs®2¢j¤CŸTÄ`¤CŸdÔ]£C¬ÇҟT¬½žs®j¤`¬ÇÅdÓ6ÍJ§`¬N­½¬½Ÿ‡©t¥
¢j¬Nžs¥¬Ç£C¦!Ö
]žŸgÓs¬NÅ_Åd¦D¥AŸg¬N¢jž¢!ž`­½©ŸgÓ`¦’ýJÕ¦ÍJüCý¥¢!žs£C¬½Ÿg¬N¢jž-Ã2¬N­½­!§6¦/¤sÅd¦D£X¯
ŸgÓ`¦$ý!ҟT¡g¢!ž`®!ýn¥¢!žs£C¬½Ÿg¬N¢jž|Ã2¬½­N­§+¦-¡g¦Dö ¤`¬½¡T¦£™¬Nž™ŸTÓ`¦-ž`¦
ÿ ŸÅg¦¥Ÿg¬N¢jžÖ
«¦nž`¢8˞s¦
¦£«ÍiÈÁ¦D¥cÓsÍJž`¬ÇÅgÈ Îƒ¢!¡ÏŸg¡cÍJžsÅg­NÍJŸg¬Nž`®iÅg¦ö ¤`¦žs¥¦DÅt¢jÎ/Ä`¡T¢C¥¦ÅTÅg¬½ž`®i¡g¦­NÍJŸg¬N¢jžsÅt¬½ž ŸT¢|Åg¦ö ¤`¦žs¥¦DÅ¢jÎ
£`Í8ŸcÍ`ÖsÜÓs¬NŬÇÅ͟g¦Dҟ2΃¤`ž6¥AŸg¬N¢jž¯sÍjÅ2£C¦
Ðsž`¦D£™žs¦ÿ:ŸÖ
w™E7 x9_=4;=\368
9 y¬œ ¸
Ù : º 2–*I~?* 34*C4*C€BK*I^v*I`JÂÒ¾c¸i³8·‘°$±]²Á³!´TµC¶V·+R¸ Œ :<µ`¸
·l³ C·+´
Ù\¶ J· . ; "á 3Ts!i[ 2O
¿g¸c´ C¿c¹A¶ 8¸¼ { ?j¸ ·<¸ ?™³¹ 8¼V¼ G„B¹ …
. ;J¡¿ Uº 6¶T N *’± ´ J·`¹A¶ ?j¸
¿ . ; ?j¸ ·<¸ ? 8¿Ò³8· {i¹AÙL¿A¶V· sÀ V @ &H&B&,V ".- 3T$±2كµ`¸
· 8¿Ò³8· {i¹AÙL¿A¶V· sÀ V @ &H&B&,V "eV " @ *
. ; Uº VK@0&B&H&IV " V " @
Â-¶Ç¹É¸¶Vكµ`¸
¿ …
¶ VK@0&B&H&IV " ¶Ç¹™³ `³JÙVµ ¶V· äكµ`³JÙ$¸²v¸¿LÀ!¸¹ ¿ 8²äكµ`¸™¶V·s¶VÙL¶4³8¼’¹AÙq³JÙq›¸ €‚¨Ùƒµ`¸
(· . ; ˜º V'@0&B&H&IV " V " @›Â . ; Uº VK@0&H&B&IV "  " @G‡c„_µ`¸
¿g¸ " @-F^6Uº V " @Â
JÙVµs¸|¿ „¶Ç¹
¸ . ; ˜º V'@0&B&H&IV " V " @c ,. ; ˜º V'@0&B&H&IV " B Œ
¶Ç¹´c³8¼V¼½¸ ?|³Ÿg¦Dҟ2΃¤sžs¥AŸT¬½¢!ž fŒ
]ž‘¢jŸgÓ`¦¡Ã•¢j¡c£`Å
¯6΃¢j¡ÏÍJž:©Åd¦Dö ¤`¦
žs¥
¦É¢jÎÄ`¡g¢C¥
¦ÅTÅd¬Nž`®Ò¡T¦
­ÇÍ8ŸT¬½¢!žsTÅ ¶!.4V @ &B&H&IV "C<¯ . ; §º ¶!.d¬ÇÅt͙Åd¦Dö ¤`¦
žs¥
¦É¢jÎ
£`Í8ŸcÍnŸgÓsÍJŸ2¦ÿC¦
¡c¥¬ÇÅd¦DŒŸgÓ`¦-­N¢jž`®!¦ÅdŸ2Ä`¡g¦
Ð`ÿi¢jiÎ ¶!.ŸgÓ6Í8Ÿ¬ÇÅ2ÍÄ6Í8ŸgÓ¢jÎ_ŸTÓ`¦-ÈvÍj¥cÓ`¬Nž`¦-ÍJžs£|ÍJ­ÇÅg¢ŸT¡g¬N¦Å•ŸT¢Á¦ÿC¦
¡c¥¬ÇÅd¦
ŸgÓ`¦-Äs¡g¢C¥¦DÅgÅg¬Nž`®¡T¦
­ÇÍ8ŸT¬½¢!žiŸTÓsÍ8Ÿ2΃¢!­½­N¢8ÃÅÍ8ÎVŸT¦
¡ŸgÓs¬NÅ2Äs¡g¦
Ð`ÿX¯C¬ÑÎ"ŸgÓ`¬ÇÅ2¦
ÿ:¬ÇÅdŸTÅ'Ö A¢JŸT¦ŸgÓsÍJŸÍŸg¦ÅdŸÎƒ¤`žs¥Ÿg¬N¢jž¬NŞ`¢JŸ
¤`ž`¬Çö ¤`¦
­N©™£C¦
Ðsž`¦D£X¯CŸgÓs¦
¡T¦-ÈÁ́©v§+¦-ÈvÍJž:©ÒŸT¦ÅdŸÎƒ¤`žs¥AŸT¬½¢!žsÅ2¢jÎ_ŸTÓ`¦$ÅgÍjÈÁ¦ÏØÔLÈvÍ!¥cÓ`¬½žs¦jÖ
» š:³8² +¼½¸ iŒ s¢j¡’ŸgÓ`¦ØÔqÈvÍj¥cÓ`¬Nž`¦Ï¬½ž|ªÿ`ÍJÈÁÄ`­N¦nÊj¯CÍ-ŸT¦ÅdŸ•΃¤sžs¥AŸT¬½¢!ži΃¢!¡’ŸTÓ`¦Åd¦Dö!¤s¦
žs¥
¦ VK@,k'kV$HV
'™¥ÍJžÒ§+¦
¥¢!žsҟT¡g¤6¥AŸg¦D£Íjŕ΃¢j­N­N¢8ÃÅ
á
.Sº ]=
 @ .º V @ = @ .º V @ kC= @ .º V @ kEk`= @ .º V @ k'kV  – @ .Sº V'@Ck'kV$HVgT
 @ ! ! .º VK@,k'kV$HV +c g@ ' ' .
º
S
'
V
C
@
'
k
k
$
V
H

V
'6c
 @ ! ! Ã2Ó`¦
¡T¦ @ * *! * * *!K* ÉÍJ¡T¦ŸgÓ`¢ Åd¦-¬NžPªÿ`ÍJÈÁÄ`­N%¦ `Ö6ÜÓ`¦É¥¢!žsÅdŸg¡T¤s¥AŸT¬½¢!ž|¬ÇÅ¥
¢j¡T¡g¦D¥AŸÅd¬Nžs¥
¦ @ -=^6Sº ]‚Â *
-–^+˜º V @ | *! -–^+º k`| *
-1^6º kC‚ * -–^+˜º V  | *!›-–^+˜º V | *!›-–^+3º +ÂAi
¯ V @ kEkV  V ¬ÇÅÍvÄ6Í8ŸgÓ΃¡T¢jÈ €  §`¤CŸ
V @ kEkV  V ¬NŞs¢JŸÍnÄsÍ8ŸTÓ|΃¡g¢!7
È €Ö
w™E7 x9_=4;=\368
9 y;³3œ z Ùq¸¹AÙ C·+´
ÙL¶ 8· . ; ¶Ç¹2´c³J¼V¼½¸ ?«LvžsÍJŸg¤`¡cÍJ˜­ ‡ELON æ *`¶ 8¿³Jv· {VK@G*B&B&H&‚*IV " - 34*@e*B&H&B&B*! " 2
8¿³J¼V¼X
Ê ŸO¶tŸL*_¶ . ; ˜º VK@A&B&B&,V " c g@0&B&H& " كµ`¸
· bVG @ J¿³8¼V¼_XÊ Ÿ ¡Ÿ–¶f!ÝeÊ &
ÜÓsÍ8Ÿ"¬NůÍŸg¦Dҟ_΃¤`žs¥AŸT¬½¢!žÉ¬ÇÅ LvžsÍJŸg¤`¡cÍJ­!Ã2Ó`¦
ž¯
΃¢!¡"Íjž ©Åg¦ö ¤`¦
ž6¥¦¢jÎ`§sÍjÅg¬N¥Ä`¡g¢C¥
¦ÅTÅd¬Nž`®2¡T¦
­ÇÍ8Ÿg¬N¢jž6Å¢JÎ`­N¦
žs®JŸgÓ
Í8Ÿ/ÈÁ¢ ŇcŸ L¯jŸgÓ`¦Õ8Íj­½¤`¦DÅÄ`¡T¢C£C¤s¥¦D£n§ ©ÉŸgÓ`¦Ÿg¦ÅdŸÎƒ¤`ž6¥AŸg¬N¢jžÒÍj¡g¦¥cÓs¢!Åg¦
žvÅd¤6¥cӟTÓsÍ8Ÿ/ŸgÓ`¦žs¦ÿ:ŸÕ8ÍJ­N¤`¦¬ÇÅ¢j§CŸcÍJ¬Nž`¦£
΃¡g¢!È ŸTÓ`¦$¥¤`¡T¡T¦
ž Ÿ•Õ8Íj­½¤`¦ŸTÓ`¡T¢j¤`®!ÓҟgÓs¦$ÍJÄ`Ä`­N¬Ç¥
Í8ŸT¬½¢!ž™¢jÎ_ŸTÓ`¦-¥¢!¡g¡T¦ÅgÄ6¢!žs£C¬Nž`®nÄ`¡g¢C¥
¦ÅTÅd¬Nž`®n¡g¦­NÍJŸg¬N¢jžÖ`ªÿCÍjÈÁÄ`­½¦
èÒÅdÓs¢8ÃÅ/ŸTÓ`¦$¥¢!žsÅdŸg¡T¤s¥AŸT¬½¢!ž™¢jÎ"ÍÁèÁžsÍ8ŸT¤`¡cÍJ­<Ÿg¦Dҟ΃¤`ž6¥AŸg¬N¢jžÃ2Ós¬N¥cÓ|¬NŞ`¢JŸ žsÍ8ŸT¤`¡cÍJ­º4Åg¬Nžs¥%¦ -J kXº Âg| &
“ {"7 36587: y+œ _¸Ù pÛº 2=*I~s* 34*C4*I€  *C^*I°)*I`J³8"· ? 9•‹º 2=*I~3• * 34*I9•U*C€G• *C^*I°)*I`J¾c¸•˜Ù „ 2°$±]²Á³!´TµC¶V·+¸¹
ÙVµs³8Ù³8¿T¸$Ù]¸A¹AÙL¶V· Àj±d´ 8² `³JÙ\¶4¾
¼½¸Á³8"· ?f„/¸c³ CÙ CÙ\@± ?J¶Ç¹cÙL¶V· À C¶Ç¹gµ`³!¾¼½‚¸ ‡/¼½¸
Ù . ; ¾c¸³iÙq¸¹AÙ C·<´ÙL¶ 8· 72‰6 3T
³8"· ?J. ; bº 2-| &—” كµ`¸
¿g¸vI¸ šj¶Ç¹AÙ ; ³JB· ? ; ªtUÙ „ ¾¿T¸T³ 8¶V·6Ùt´ 8² CÙ]³8ÙL¶ 8·s¹ ³JB· ?9•˜*¿g¸A¹ s¸c´ÙL¶ ¸
§¼ {$‡
„¶VÙVJ
µ `n ; º +ÂT/`n ; ª º <Â|* =- «Ùƒµ`¸
.· ɺ $ÂɳJB· ?3º 9•VÂɳJ¿gX¸ 2n±d,¸ µ C¶ 8³8¼½¸
·sÙ Œ
•¿ Œ _¸
AÙ V @ &H&B&,V D -=24&¸ +¿ 8¸Éكµ`³JAÙ V @ &B&H&CV D ¶Ç¹É³ s³8كµ¶V· ¶ #V @ &H&B&CV D ¶Ç¹É³ `³JÙVµ¶V· 9•bŒ
&H&IV D ¶Ç¹Ï³ `³JÙVµ™¶V· (كµ`¸
· ¿ 8
² ²n¸ ·s¶VÙL¶ 8=· $Á¶VÙ¿g¸A¹ C¼ Ù\¹Ùƒµ`³8Ùكµ`¸
¿g¸-I¸ š!¶Ç¹cÙ  -t^'`$a ˜º V   8¿-³8¼V¼
¶XÊ Ÿ_V @ c&BŸ
L¹ s´Tµ™Ùƒµ`³JÙ . ; ˜º V @ &H&B&,V D c
 @ &B&H& D ³JB· ?nكµ`¸
¿g¸-C¸ š!¶Ç¹AÙ @ *B&B&H&‚*) D - 2 ¹ s´cµ™ÙVµs³8Ù  V   8¿
³J¼V¼_›Ê Ÿ/ 4Ÿ­L&†z´c´ 8¿ ?J¶V· À™Ù ›²n¸ ·s¶VÙL¶ 8· W„/¸n²Áe³ {?j¸ ·<¸Á³|¾
¿g¸c³ 8¶V·sÙ´ J² CÙq³JÙ\¶ J· C·<´ÙL¶ 8· ;
¹ s´cµ$كµ`³J!
Ù ; º @ &B&H& D c @ &H&B& D &'” كµ`¸
¿g¸I¸ šj¶Ç¹AÙ\¹ ; ª ³¹/¹AÙ]³8Ù]¸ ?϶V·vÙVµs¸/;µ { 8كµ`¸¹A¶Ç¹ كµ:¶Ç¹•ÙVµs¸ 8¿g¸
² ‡
¹ s´cµ«ÙVµs³8T
Ù `n ; º @ &B&H& D  ‰`n ; ª º @ &B&B& D Ânكµ`¸
·†¶VÙ J¼V¼ G„¹vكµ`³8ÙÙVµs¸¿g¸iC¸ š!¶Ç¹AÙ @• *B&B&H&B* ;D• - 2
¹ s´cµlÙVµs³8
Ù `n ªgº @ &B&H& D J @• &B&H&) D• & J·`¹
,¸ µ s¸
·sÙL§¼ {¨ÙVµs¸¿T¸‘I¸ šj¶Ç¹AÙ V @ • *B&H&B&H*IV D • - 37„¶Vكµ  V  • •
J¿i³8¼V¼/F
Ê Ÿ‰ 9Ÿ; L*2³8B· ?J`Cº @ &B&B& D 9 Š`Cº ;@• &B&H&)D• ‚ &$+¶V·+´c8¸ 3 ¶Ç?¹ „/¸c³ CÙ CÙ\@± ?J¶Ç¹cÙL¶V· À C¶Ç¹gµ`³!¾¼½¸³JB· ?
`Cº   œ`Cº • , ‡‚¾ {™¶VB· ? s´ÙL¶ 8· J·¨?Ê Ÿ Ÿ#LA‡•¶VÙ 8¼V¼ e„¹nكµ`³JTÙ V  œV • ³JB· ?vµ`¸
·+´c3¸ V @ &B&B&IV D ¶Ç¹v³ s³8كµ
¶V· 9• Œ
42
V¶ @
¶Ç¹· 8ÙÁ³ s³8كµ?¶V· كµ`¸
·z¼½¸
Ù œ-Š" v*B&H&B&|*ML¤!ÛÊe%l¾c¸Pكµ`¸P¼½³8¿LÀ!¸¹AÙ· C²Á¾c¸
¿ J¿t„_µ:¶4´cµ
¶Ç¹³ `³JÙVµ‘¶V· 4&:<µs¸·†³j´c´ 8¿ ?J¶V· À|Ù ›²n¸ ·s¶VÙL¶ 8· $W„/¸-µ`³ ¸ . ; ºUV @ &B&H&IV D Â4 @ &H&B& @
J¿Á¹ J²Á
¸  - 2=*•Ê.Ÿ‰ 3Ÿ Ê'& _¸Ù :¹v³8¹c¹ C²v¸vكµ`³JÙ4V @ &B&H&IV @ ¶Ç¹i³ s³8كµ ¶V· • & :<µ`¸
·lكµ`¸
¿g¸
¸Iš!¶Ç¹cÙ @ *B&H&B&‚* @ - 2 ¹s´Tµzكµ`³8Ù  V   *  -Š^+º˜V  Â,‡ 8¿ ³8¼V¼ Ê/ŸŽ 1Ÿ õÊ?³J·B?+ ; ª „¶Vكµ
ª º @ &H&B&! @ Â @ &H&B& @ & :<µ`¸
·ÝÙVµs¸¿g¸|¸Išj¶Ç¹AÙV@ • *H&B&H&B*IV• @ - 34*)@• *B&H&B&H*)• @ -,2 ¹ s´cµ ÙVµs³8Ù
;
³8·"??`Cº E@&B&H& @ Âp`Cº• &H&B&)• ‚&
V@ • &H&B&,V• @ ¶Ç¹n³ s³8كµ«¶V· ³J·B? bV • ;• 8¿Ò³8¼V¼Ê?Ÿ# Ÿ Ê
@
@
¸·<´Th
¸ `Cº Kqc #`Cº •  J¿É³8¼V¼Ê9Ÿ_ cŸ5 Ê'& +¶V·+´c¸ 3 ¶Ç¹9„/¸c³ CÙ CÙL±@?8¶Ç¹AÙL¶V· À C¶Ç ¹gµ`³j¾
¼½¸‚‡•¾B{v¶V·B?s´
ÙL¶ 8·
J·PX
Ê Ÿ ¡Ÿ ?eÊ ‡¶VÙ 8¼V¼ e„¹$ÙVµs³80Ù Ve—#V • ³8B· ?µ`¸
·+´c¸ V'@0&B&H&CV @v¶Ç¹-³ `³JÙVµ¶V· £„_µ:¶4´cµP´ 8·6Ù\¿T³ ?8¶4´
Ù\¹
C¿-³8¹c¹ C² +ÙL¶ 8
· Œ :<µ :h¹ VK@0&H&B&CV @Ҷǹ· 8Ù³ s³8كµ¶V· 9•U&
â 3s583+1414B`5D
ß y6œ _¸#Ù pÛº 2–*I~?* 34*C4*C€B'*I^v*,°)*C`J³8"· ? 9•‹º 2=*I~3•S* 34*C9•˜*C€G• *C^*I°)*I`J•¾c¸•UÙ „ ’°$±]²Á³!´TµC¶V·+¸¹
ÙVµs³8Ù³8¿g¸Ù]¸¹cÙL¶V· Àj±d´ 8² `³JÙ\¶4¾
¼½¸³8B· ?s„/¸T³ CÙ CÙ\@± ?J¶Ç¹cÙL¶V· À C¶Ç¹gµ`³!¾¼½¸³8"· ?Á¼½¸
Ù . ; ¾c¸$³vÙq¸¹AÙ C·+´
Ù\¶ J· 4&” 2
¶Ç¹É³ÁÙq¸¹AÙ¹
¸
Ù º $ÂɳJB· ?ɺ 9•ǹ s´cµ|كµ`³8ÙC¸ š!¶Ç¹AÙ ; *' ; ª UÙ „ Ò¾
¿g¸c³ J¶V·sÙ2´ 8² CÙ]³8ÙL¶ 8·`¹ *³JB· ? 9•˜*
¿g¸¹ s¸c´ÙL¶ 8¸§¼ {$‡4„¶VكJµ `hn ; º +«8`hnB ; ªdº +‚* O-(. ; Uº 2-‚ *ÙVµs¸"· . ; Uº 2$Â$¶Ç¹n³¾
¿g¸c³ J¶V·sÙ2Ù]¸A¹Aٕ¹
¸Ù ³JB· ?
9•U&
•¿ Œ0”A"· ?j¸c¸ ? ¿ J² :<µ`¸ 8¿g¸
² ™¶VÙ 8¼V¼ e„¹Ùƒµ`³8cÙ º $Ân³8"· ?›º 9•VÂn³8¿g3¸ 2n±d,¸ µ C¶ ³J¼½¸
·sÙ³8"· ?|³!´c´ J¿ ?8¶V·:À
Ù E$¶VÙ J¼V¼ G„¹ÙVµs³8ٕÙVµs‚¸ {i³J¿g¸,¸ µ C¶ ³J¼½¸
·sÙ2³8B· ?|´ 8·s¹,¸ µ s¸·6Ù\¼ {9V ; V ; ª &
ÜÓ:¤sÅ
'¯ !’¢j¡T¢j­N­ÇÍJ¡T©iÊt¥ÍJžv§+¦t¤6Åd¦D£ÁŸg¢®j¦
žs¦
¡cÍ8Ÿg¦tÍ$§`¡T¦Íjü Ä+¢j¬Nž ŸŸg¦Dҟ2Åg¦Ÿ’¢jÎ ÛÍJžs£ 9• ŸgÓs¬NŒ¬NÅ ›,. ; Uº 2-‚ *
Ã2¬ÑŸT1Ó 2‹ÍŸT¦ÅdŸÅd¦
Ÿ¢J0Î º $Â-ù½Ê JûL¯Xù JèjûL¯ù½Ê
èjûLÖ
A¢jŸg¦|ŸgÓsÍJŸÁŸgÓ`¦|Ÿg¦DҟvÅg¦ŸÒ£C¦Ð6ž`¦£l¬½žlŸgÓs¬NÅvÅg¦¥Ÿg¬N¢jžl¥
¢jžsÅg¬ÇҟcÅ¢jÎtÍ«ž ¤sÈɧ+¦
¡v¢JÎÏÅd¦Dö!¤s¦
žs¥
¦Ån¢JΣ`Í8ŸcÍ«Åg¦Ÿ
¦
­N¦
ÈÁ¦
ž ŸcÅ
Öª’Íj¥cÓ¨Åd¤s¥cÓ¨Åd¦Dö ¤`¦
žs¥
¦Á¦ÿC¦
¡c¥¬ÇÅd¦DÅÍiÄsÍJŸgÓ ¢JŸgÓ`¦ÁÈvÍj¥cÓs¬½ž`¦vÍjžs£‘¦DÍj¥cÓ«¦
­N¦
ÈÁ¦
ž Ÿ$¢JŸgÓ`¦vÅg¦ö ¤`¦žs¥¦
¬NÅiÍJÄ`Ä`­N¬N¦£lŸg¢ ŸTÓ`¦Ä`¡T¢:¥
¦ÅTÅd¬Nž`®¨¡g¦­NÍJŸg¬N¢jžlŸgÓsÍJŸÒ­NÍj§6¦­NÅvŸgÓ`¦P¥
¢j¡T¡g¦DÅdÄ+¢jžs£`¬½ž`® ÍJ¡c¥J¯¡T¦
® ÍJ¡c£C­N¦ÅTÅÉ¢jÎtŸTÓ`¦¡g¦DÅd¤s­ÑŸ
¥¢!ÈnÄs¤CŸg¦D£ §:©‘ŸTÓ`¦|Ä`¡g¦Õ:¬½¢!¤sÅ$ÍJ¡c¥JÖ"ÜÓsÍ8Ÿn¬Nů_ŸgÓ`¦ÍJÄ`Äs­½¬Ç¥
ÍJŸg¬N¢jž†¢JÎ2ŸTÓ`¦ÒŸT¦ÅdŸnÅg¦ŸnÓsÍJÄ`Ä+¦
ž6ÅÍ!Å$ŸTÓ`¢j¤`®!Ó Í8ÎVŸT¦
¡
Ä`¡T¢:¥
¦ÅTÅd¬Nž`®vÍJžPÍj¡T¥tŸTÓ`¦$ÈvÍj¥cÓ`¬Nž`¦$ÅdŸg¢!ÄsÅÍJž6£™¡T¦¥
¦
¬NÕj¦DÅ2ÍÁž`¦
à £`Í8ŸcÍÁÕ8ÍJ­N¤`¦-΃¡T¢jÈ ŸTÓ`¦-ŸT¦ÅdŸÅd¦
ŸÖ ¨¦É¥ÍJ­N­XŸgÓ`¬ÇÅ
ŸgÓ`¦i¾
¿g¸c³ 8¶V·sٟg¦DҟT¬½ž`®ÒÅdŸg¡cÍ8ŸT¦
®!©Á΃¢j¡2ØÔqÈvÍj¥cÓ`¬Nž`¦DÅ
Ö
×­½ŸgÓ`¢!¤`®jÓÁž`¢jŸ¤`ž:¤sÅg¤sÍJ­C¬NžÁÄ`¡TÍ!¥AŸT¬N¥
¦j¯ŸgÓs¦2ž`¦
¦D£ÉŸT¢-Ä`­ÇÍj¥¦§`¡T¦Íjü:Ä6¢!¬½ž ŸTÅÍJÎVŸg¦¡¦Íj¥cÓÁÍJ¡c¥•¢JÎ+ŸgÓ`¦2ÈvÍ!¥cÓ`¬½žs¦•¬ÇÅ
Ä`¡T¢:¥
¦ÅTÅd¦D£$Ã2¬N­½­:¢!§ Õ:¬N¢j¤sÅg­N©¥
¢jÈÁÄ`­N¬N¥Í8ŸT¦/ŸTÓ`¦•Ÿg¦ÅdŸg¬Nž`®Ä`¡T¢C¥¦ÅTÅ֝‡£C¦DÍJ­N­½©!¯¢jž`­N©ŸgÓ`¦¬Nž`¬½Ÿg¬ÇÍJ­:Õ8ÍJ­N¤`¦¢JÎ`ŸTÓ`¦2£`Í8ŸcÍtÅg¦Ÿ
Ã2¬½­N­<ÓśÕj¦Ÿg¢É§+¦tÅg¤`Ä`Äs­½¬N¦£ÒŸg¢$ŸTÓ`¦ÏÈÁÍ!¥cÓ`¬Nž`¦j¯jŸgÓ`¦Åd¤s§sÅd¦Dö ¤`¦
ž Ÿ’Õ8Íj­½¤`¦DÅ/Ã2¬N­N­6§+¦Ï¥
¢jÈÁÄ`¤CŸT¦£v§:©nŸgÓs¦Ä`¡T¢C¥¦ÅTÅg¬½ž`®
¡g¦­NÍJŸg¬N¢jžsŒŸTÓsÍ8ŸÈvÍJü!¦t¤sęŸTÓ`¦ÄsÍ8ŸTÓi΃¢!­½­N¢8Õ¦£Ò§:©vŸTÓ`¦-ÈvÍj¥cÓ`¬Nž`¦ÁºVŸTÓ`¬NŬNÅ2Íj­NÅg¢ÉŸTÓ`¦-¬Ç£C¦Ín§+¦
Ó`¬Nžs£™ŸgÓ`¦-¥
¢jžs¥
¦
ÄCŸ
¢JÎ_ÍjJž LÝ·+³JÙ C¿g³J¼8Ÿg¦Dҟ•΃¤`žs¥Ÿg¬N¢jž£C¦Ð6ž`¦£™ÍJ§+¢8Õj¦DÂÖ ÜÓs¬NŒÈv́©nžs¢JŸ2ÍJ­NṌ©Cŧ+¦ÏÄ6¢ ÅgÅg¬½§s­½¦!¯:Åg¬Nžs¥¦t¬½ž™®j¦
žs¦
¡cÍJ­+ž`¢JŸ
ÍJ­N­XŸgÓs¦-ÄsÍ8ŸTÓsÅ¢JÎ"ŸgÓ`¦-ÈvÍ!¥cÓ`¬½žs¦¥ÍJž|§6¦-¦
ÿC¦
¡c¥¬ÇÅd¦D£i§:©iÍjÄ`Ä`¡T¢jÄ`¡T¬NÍJŸg¦Ï¬½žs¬ÑŸT¬NÍj­Õ8ÍJ­N¤`¦Å¢jΟgÓs¦$£`Í8ŸcÍvÅd¦
ŸÖ
Æ¢8Õ¦
Õ!¦
¡D¯_¬½ÎÏÍ«Õ8ÍJ­N¤`¦¥
ÍJžl§6¦¢!§CŸTÍj¬½žs¦£ §:©ÍjÄ`Ä`­N©:¬½ž`®«ŸgÓs¦ÍjÄ`Ä`¡T¢jÄ`¡T¬ÇÍ8Ÿg¦™Ä`¡T¢:¥
¦ÅTÅd¬Nž`®«¡g¦­NÍJŸg¬N¢jž ŸT¢‘ŸTÓ`¦
Ä`¡T¦
Õ:¬½¢!¤sÅÕ8ÍJ­N¤`¦v¬Nž«ŸTÓ`¦iÅg¦ö ¤`¦žs¥¦nŸgÓs¦
ž¨ŸgÓ`¦¡g¦v¬ÇÅ-ž`¢žs¦
¦£«ŸT¢Åg¤`Ä`Äs­½©‘ŸgÓsÍJŸÉÕ8ÍJ­N¤`¦nŸg¢ŸgÓs¦ÒÈvÍj¥cÓ`¬Nž`¦j¯Åg¬Nžs¥¦
¬ÑŸÃ2¬½­N­§+¦ÒÅd¬NÈÁÄ`­½©¨¥¢!ÈnÄs¤CŸg¦D£ § ©‘¬ÑŸDÖ_ÜÓ:¤sÅϟgÓs¦iÅd¦Dö ¤`¦
žs¥
¦Áž`¦
¦D£`Å-ž`¢jŸÉ¥¢jž ŸcÍJ¬Nž‘ŸTÓsÍ8Ÿ$Õ8ÍJ­N¤`¦!¯ÍJžs£«ŸTÓ`¬NÅÉ¥
ÍJž
§6¦É¡g¦Ä`­NÍ!¥¦D£i§:©™ÍvÅg©:Èɧ+¢j­XŸTÓsÍ8Ÿ¬Nžs£C¬Ç¥
ÍJŸg¦DşgÓ`¬ÇÅÖ6ÜÓ`¬ÇÅ2¬Ç£C¦ÍÁ­N¦Í!£`ŕŸg¢ÁŸTÓ`¦É¥¢!žs¥¦ÄCŸ¢JÎI¸ šjÙ]¸
B· ?j¸ ?ÒÙq¸¹AÙ/¹
¸
ÙÍjÅ
Ä`¡T¦Åg¦
ž Ÿg¦D£iž`¦
ÿ:ŸÖ
V @ &B&B&IV D
&H&B&,V
ì —!ìEXìlî $
ñvtòdëh—
¦
Ÿ$¤sÅtÐs¡TÅdŸ$¥¢!žsÅd¬Ç£C¦¡Åg¢jÈÁ¦nž`¢JŸcÍ8ŸT¬½¢!žsÅ-ÍJžs£«£C¦Ð6ž`¬ÑŸT¬½¢!žsÅ֝qÎoQ - 2 ÍJžs£ 2$£C¦ž`¢JŸT¦Å2/"RQ'%'*+ŸgÓs¦
ž«Îƒ¢j¡
=-28¯f- 2 Õ¦-£C¦
žs¢JŸg¦§:J
© LA@º †*)`¦¬ÑŸTÓ`¦
¡ †*`¬ÑÎ /Q$¢j¡ *`¬½Î .#QE&
מ ¦ÿ:ŸT¦
žs£C¦D£‘§s¡g¦DÍJü:Ä6¢!¬½ž Ÿ$¥¢!ÈÁÄ`¤CŸTÍJŸg¬N¢jž¨Ã2¬½­N­§+¦Á΃¤`¡dŸTÓ`¦
¡-¢!ž¨¥
¢jžsÅg¬Ç£C¦
¡T¦£«ÍjÅ-Í|žsÍ8ŸT¤`¡cÍJ­¦ÿ:Ÿg¦žsÅg¬½¢!ž«¢jÎ
§`¡T¦ÍJü:Ä+¢j¬Nž Ÿ2¥
¢jÈÁÄ`¤CŸcÍ8ŸT¬½¢!ž ; *C¬Nž!ŸT¡g¢C£C¤6¥¦£|§:©iåt¦Ðsžs¬ÑŸT¬½¢!žËsÖ
w™7Ex9_=4;=\368
9 y X%œ J¿™³8·†°-±]²v³j´cµ:¶V·<¸ ¡‡³ s³8¿AÙL¶4³8¼ C·+´
Ù\¶ J· =á 22 ![ 2 ´c³8¼V¼½¸ ?|ÍJž¦ÿ:Ÿg¦žs£C¦£
§`¡T¦ÍJü:Ä+¢j¬Nž Ÿ2¥
¢jÈÁÄ`¤CŸcÍ8ŸT¬½¢!ž™¢jÎ ¶Ç¹ ?j¸ ·<¸ ?i³¹ ; º @ &B&H& D c 5 ; @ &B&B& D *_¶ ÙVµs¸¿g¸nI¸ šj¶Ç¹AÙ\¹-³ `³JÙV.µ V @ &H&B&IV D
¿ 8
² €  ¹ s´cµ ÙVµs³8Ù @ V @ @ * @ -/^6Uº V @ | *³8"· ?fLA@8º  *)  g@ M V   *LA@º  *)  g@ s -/^+˜º V  | */æ ŸŠ )ŸŠL*
1hìëtïï
L1N &
¬Nüj¦ ; £C¦Ðsžs¦£$¬Nž$ŸTÓ`¦Ä`¡T¦
Õ:¬½¢!¤sÅ"Åd¦D¥AŸg¬N¢jž¯Îƒ¢!¡"Ítž`¢!žCÔq£`¦Ÿg¦¡gÈÁ¬Nž`¬ÇҟT¬N¥/ØÔqÈÁÍ!¥cÓ`¬Nž`¦j¯DŸgÓs¦’ÄsÍj¡dŸT¬NÍj­ ΃¤`žs¥AŸT¬½¢!žsÅ
ÍJ¡T¦¬½ž®!¦
ž`¦¡TÍj­+žs¢JŸ¤`ž`¬Çö ¤`¦
­N©i£C¦
Ðsž`¦D£XÖ
;
»š:³8² +¼½¸ 'Œ s¢j¡ ÍjÅÁ¬Nž?ªÿ`ÍJÈÁÄ`­N¦†Êj¯  *  *ʟ WŸ (* • *’ÍJžs£?Í ÄsÍJŸgÓ 0p V @ k'kV  V V @ Í!Åv¬½ž
ªÿ`ÍJÈÁÄ`­N¦ `¯¬½Î ? @ Q$QRQ Q$QE*XÒ¦ÁÈv́©‘¥¢!ž Ÿg¡T¤s¥AŸ ; * • ; "á 2 2OJ!i[ 2OG*_Åd¤s¥cÓ«ŸgÓ6Í8Ÿ ; º 9 ÍJžs£ • ; º c 5•˜*CÃ2Ó`¦
¡T¦ ),E@7 *•5;@7• 7 &
43
ÜÓ`¦§`¡T¦Íjü Ä+¢j¬Nž ŸÁŸg¦ÅdŸi¬Nž Ÿg¡T¢:£`¤s¥¦D£l¬Nž å¦
Ðsž`¬½Ÿg¬N¢jžÛÊ!Ê|Èv́© §+¦P¬Nž Í žsÍ8ŸT¤`¡TÍj­2Ṍ©¦ÿ:Ÿg¦žs£C¦£Ý¬Nž?ŸgÓ`¬ÇÅ
¥ ¢!ž!ŸT¦ÿ:ŸÉ§:©«Íjž ¸Cš!Ù]¸·"?j¸ ?«¾
¿g¸c³ 8¶V·sÙÙ]¸A¹AÙ¹¸
Ù J6422O §:©¨¡g¦Ä`­ÇÍj¥¬Nž`®|ŸgÓs¦ÒÄsÍJ¡gŸg¬ÇÍJ­Îƒ¤`žs¥AŸT¬½¢!žsÅ ; * ; ª
Ã2¬ÑŸTÓ ; Íjžs£ ; ª¡T¦ÅgÄ6¦D¥AŸg¬NÕj¦­½©!Ös× ŸT¦ÅdŸtÅd¦
Ÿ ϟTÓsÍ8Ÿt¬NÅtÍvÅd¤`§6Åd¦
Ÿ¢JÎ2"$QK% Ã2¬½­N­§+¦¥ÍJ­N­½¦D£Í·+³JÙ C¿g³J¼Ù]¸A¹AÙ
¹
¸ÙLÖ
ÜÓsÍ8Ÿ¬Nů͞sÍJŸg¤`¡cÍJ­¦
ÿ:Ÿg¦
ž6£C¦£ §`¡T¦Íjü:Ä6¢!¬½ž Ÿ-Ÿg¦DҟnÅd¦
ŸÉ¬NÅ$ÈÁÍ!£C¦Ò¤`Ć¢jÎÅd¦Dö!¤s¦
žs¥
¦Å-Ã2Ó`¢ Åd¦ÒÍj­½­/¦
­N¦
ÈÁ¦
ž ŸTů
¦ÿ`¥¦ÄCŸŸTÓ`¦-Ðs¡cҟD¯6Íj¡g¦3QE&sÜÓ`¬ÇÅ¥
¢j¡T¡g¦DÅdÄ+¢jž6£`ŕŸg¢ÁŸTÓ`¦ÉÅg¬ÑŸT¤sÍ8ŸT¬½¢!žÃ2Ó`¦
¡T¦-¢jž`­N©ÒŸTÓ`¦$¬Nž`¬½Ÿg¬ÇÍJ­_£sÍ8ŸTÍÁÕ8Íj­½¤`¦É¢JΦÍ!¥cÓ
Åd¦Dö ¤`¦
žs¥
¦-¬NÅ2Åg¤`Ä`Äs­½¬N¦£™Ÿg¢nŸTÓ`¦Ÿ‡Ã’¢ÁÈvÍj¥cÓs¬½ž`¦DÅ
Ö
/7:  O
B “X9œ ” s-2OÁ¶Ç¹$³Ò¾
¿g¸c³ J¶V·sْÙq¸¹AÙ¹
¸Ù ³8B· ? 9•Ùƒµ`¸
· P¶Ç¹$³8¼ç¹ Ò³J·«I¸ šjÙ]¸
B· ?j¸ ?ÁÙ]¸¹cÙ¹¸
Ù ³8"· ?9•bŒ
•¿ Œ 8¼V¼ G„.
¹ ?J¶V¿g¸c´ÙL§¼ { ¿ J² كµ`¸ ³j´
ÙÙVµs³8Ù ³8B· ? ; ; &
w™E7 x9_=4;=\368
9 y43œ z `³J¿AÙ\¶4³J¼ C·<´ÙL¶ 8· ; á 2 ¡ˆ.3T!i[ 22O ¶Ç¹Ï´c³8¼V¼½¸ ?Ò³J·Á¬½ž`Äs¤CŸ’¦
ÿ ŸT¦
ž Ÿg¬N¢jž ¶ 8¿
³8· {g@G*H&B&B&H* iD–- 2=*—VK@G*B&H&B&B*,V - 34* ?Ê NL_N v* ; º g@A&H&B& iD*IVK@A&B&B&,V  @ &B&B&!D - 22O ³¹ J¼V¼ G„B¹ …
g@J¿- Ê g@
sŸ_L
¶
VK@0&B&H&IV @-¶Ç¹t³ s³8كµ كµ`³JÙ_¹AÙ]³8¿AÙ\¹³8g
Ù €‚v³8"· ? g@-t^+˜º V @
Âكµ`¸
· ­QÁ¶ g@RV @ ³J·B? JÙVµs¸¿|„¶Ç¹
¸‚±
¸
¼ç¹
¸  C*
sŸ_ cŸL&
ÜÓsÍ8Ÿ¬ÇÅ
¯:¬½Î ¥
ÍJž™§6¦¥¢!ÈÁÄ`¤CŸg¦D£i§:©vÍJÄsÄ`­½©:¬Nž`®ŸgÓ`¦¥¢!¡g¡T¦ÅgÄ6¢!žs£C¬Nž`®$Ä`¡T¢C¥¦DÅgÅg¬½žs®É¡T¦
­ÇÍ8Ÿg¬N¢jžÒŸg¢ g@ ŸTÓ`¦
ž
­Q ¯¢jŸgÓ`¦¡gÃ2¬ÇÅg¦ '&DÜÓ:¤sÅ ; Ä`¡g¢8Õ:¬Ç£C¦ÅՁÍj­½¤s¦Å£`¬Ñþ<¦
¡T¦
ž ŸÎƒ¡T¢jÈQ•¢jž`­N©ÏÃ2Ó`¦
ž-ŸTÓ`¦’¥
¢j¡T¡g¦DÅdÄ+¢jž6£C¬½žs®
Ä`¡T¢:¥
¦ÅTÅd¬Nž`®Á¡T¦
­ÇÍ8Ÿg¬N¢jž6ŕ¥ÍJž`žs¢JŸ2§6¦-¦
ÿC¦
¡c¥¬ÇÅd¦D£i§:©Ò¤sÅg¬Nž`®nŸgÓ`¦-Ä`¡T¦
Õ:¬N¢j¤sÅ2¥
¢jÈÁÄ`¤CŸT¦£™Õ8ÍJ­N¤`¦ÅÖ
A¢jŸg¦PŸTÓsÍ8ŸD¯¬½ž ®j¦
žs¦
¡cÍJ­L¯Îƒ¢j¡Í žs¢jžCÔ]£C¦ŸT¦
¡TÈÁ¬½ž`¬ÇÅdŸg¬Ç¥‘ÅdŸg¡T¦ÍJÈ ØÔqÈvÍj¥cÓ`¬Nž`
¦ ; Èv́©?ž`¢JŸ|§6¦¨¤`ž`¬Çö ¤`¦
­N©
£C¦Ð6ž`¦£X֕׭ÇÅd¢6¯Îƒ¢jF¡ 2 6 3Te* ; º . ; º 0<‚ *)0XÂn¬NÅi͆Åd¦
Ÿi¬½ž6¥­N¤s£C¦£Ý¬Nž 22O */Åd¢ Íjž?¦ÿ:Ÿg¦žs£C¦£
¥¢!ÈnÄs¤CŸTÍJŸg¬N¢jž ; Èv́©Ò§+¦$£C¦Ðsžs¦£XÖ
» š:³8² +¼½¸ KŒ s¢j¡ 4*!—*)ÁÍjŬ½žÒªÿCÍjÈÁÄ`­½¦ -Íjžs£ 00* •Í!Ŭ½žÒªÿ`ÍJÈÁÄ`­N¦ C¯jÕ¦2Èv́©É¢!§sÅd¦¡gÕ!¦•ŸgÓsÍJŸ . ; º 0XT †*
; º —*)0X? vÍjžs£†¦ÿC¬Çҟ ; * ; Åd¤s¥cÓ ŸgÓsÍJŸ ; º +Âs ; º Â$¬LÖ ¦jÖ ; º . ; º 0XÂd? ; º ; º . ; º 0X| * 0<Âg| &
ÜÓ`¬ÇÅ2¬NÅÍÈÁ¢!¡g¦®j¦ž`¦
¡cÍJ­<¡T¦Åg¤`­½Ÿ2Í!Å2ÅdÓs¢8Ã2ž™ž`¦
ÿ:ŸÖ
/7:  1
B ¬Wœ ´¶ ¸
·P³8·Ò°-±]²v³j´cµ:¶V·<¸ xº 2=*,~?* 34*I4*C€  *C^*I°)*I`J| *. ; ³Ùq¸¹AÙ C·<´ÙL¶ 8· ³JB· ?926,3TK*
8¿³Jv
· { ; ÙVµs¸¿T¸I¸ š!¶Ç¹cÙ\¹ ; „¶Vكµ ; º ;2º . ;º 0<‚ *)0XÂdc ; º . ;º 0XÂd 8¿É³8¼V!¼ 0=-=24&
•¿ Œ ¸
<Ù 0W/V @ &B&H&IV D -=2«* @ &H&B& 95. ; º 0<‚Â *# @ 0&B&B& ; º . ; º 0X| *)0XÂϳ8B· ? ; ³8·P³J¿
¾¶VÙL¿g³8|¿ {
C¸ š!Ù]¸"
· ?j¸ ?|¾¿g¸c³ 8¶V·6Ù2´ J² CÙq³JÙ\¶ J·‘¹ s´cµÙƒµ`³JÙ ; º @ 0&H&B& o ? @ &B&H&);&zt´T´ J¿ ?8¶V·:ÀiÙ ; ?!¸ ·s¶VÙL¶ 8·
„/¸nµs³ 8%
¸ @ f->^6Uº V @ ‚ * @ |V @ @ ³JB· ??LA@8º  G*)  g@ 9 -¤^+˜º V  | *†L@Jº  G*  g@ C V   8¿i³J¼V¼_Fæ Ÿp XŸ &
¸ <¿ 8¸Á· G„zكµ`³JÙ 4-O^6Uº VGL‚ * iUVGK 8¿v³8¼V¼)Ê Ÿ# «Ÿ g&¸ +¿ 8¸ÁÙVµC¶Ç¹nB¾ {i¶VB· ? s´ÙL¶ 8· J·«?Ê Ÿ/ hŸ &
:<µ:¶Ç¹t¶Ç¹ !¾ D¶ :¹A§¼ {Ù\¿ s¸ 8¡
¿ AÛÊɹA¶V·+´c¸ @ g@G& ¸Ï³8¹c¹ C²v¸tÙVµs³8Ù"ÙVµs¸ +¿ `¸
¿A˜Ù {-µ J¼ ?¹ J¿9Ê Ÿ
sŸ_ I&”
 @ /Q™ÙVµs¸·  @  @Ò³JB
· ?ÒÙVµs¸ <¿ s¸¿AUÙ {µ J¼ ?¹ J¿ ʙ³4¹ L@ º  @e*)KLT "! @G&$#•Ùƒµ`¸
|¿ „¶Ç¹
¸
„/¸nµs³ 8¸ i @) 'M*/¹ Kh-^6Uº VG @
‚ *)KbVG @K @‘³8B
· ?‘³
À ³8¶V·Ùƒµ`¸ +¿ `¸
¿AUÙ {™µ 8¼ ?¹ 8%¿ KÊ & ¸·<´c?¸ „/¸
²Áe³ {?j¸ ·+¸v³¾
¿g¸c³ 8¶V·sÙÏ´ J² CÙq³JÙ\¶ J(· ; ¹ s´Tµ‘Ùƒµ`³JÙ ; º @&B&B&!  E@0&H&B& */³8"· ?³j´c´ 8¿ ?J¶V· ÀÙ |كµ`¸
´ 8·`¹AÙL¿ s´ÙL¶ 8· ³j¾ 8¸-µ`³8¹كµ`¸ +¿ s¸¿AUÙ { ; º ; º . ; º 0X| * 0<Âgc ? ; º . ; º 0<Âg J¿É³8¼V¼ 0–-t2«&
 “œ _¸Ù pÛº 2=*I~s* 34*C4*I€  *C^*I°)*I`J³8"· ? 9•‹º 2=*I~3• * 34*I9•U*C€G• *C^*I°)*I`J¾c¸•˜Ù „ 2°$±]²Á³!´TµC¶V·+¸¹
“ {"7 36587:¯
ÙVµs³8Ù³J¿g¸Ù]¸A¹AÙL¶V· Àj±d´ 8² `³JÙ\¶4¾
¼½¸P³JB· ?«¹AÙ\¿ 8· À CÙ CÙ\@± ?J¶Ç¹AÙ\¶V·:À C¶Ç¹gµ`³!¾¼N¸P³8"· ?¨¼½¸Ù . ; ¾c¸P³¨Ù]¸A¹AÙ C·+´
Ù\¶ J· 4*
276 3 * ; ³J· ¶V· CÙI¸ š!Ùq¸
·`¹A¶ J· ³8B
· ? X ; º . ; º 0<‚Â *)0X| &—” كµ`¸
¿g¸vI¸ šj¶Ç¹AÙ ³JB· ? ªÏ˜Ù „ C¸ š!Ù]¸"
· ?j¸ ?|¾¿g¸c³ 8¶V·6Ù2´ J² CÙq³JÙ\¶ J·`¹ ³8"· ?9•˜*_¿T¸A¹ s¸T´
ÙL¶ ¸
§¼ {J„¶VكJµ `«n ; º o #`n ; ; ª º | * ; X- ÙVµs¸W· ɺ $Âɳ8"· ?º 9•ÇÂɳJ¿g¸ 2Á±dI¸ µ C¶ 8³8¼½¸
·sÙ Œ
•¿ Œ ¸ <¿ 8¸ÙVµs³8Ù¶ `in ; º c /`n ; ªgº Âكµ`¸
·ÒÙVµs¸¿T¸tI¸ š!¶Ç¹c<Ù ; ³JB· ? ; ªA„¶Vك9µ `n! ; #`n! ; ª *
8· *„_µ`¸
¿g¸ J. ; bº 2-| & :+µs¸n¿g¸¹ C¼Ñ«
Ù „/¸v³8¿g¸v³ Ùq¸
›¿ „¶V¼V¼Ùƒµ`¸
· 8¼V¼ e„ ¿ 8²*كµ:¶Ç¹Á³8¹c¹¸
¿AÙL¶ 8· ³8"· ?:+µs¸ 8¿g¸
²
KŒ
¸
Ù .  ¾c¸Ùƒµ`¸¹
¸Ù ³J¼V¼ s³8كµ ¹ ÙVµs³8Ù_¹cÙ]³8¿AÙ³8
Ù €  ³8B· ? . • كµ`¸¹
¸Ù ³J¼V¼ s³8كµ ¹ • كµ`³JÙ¹AÙ]³8¿AÙ³8Ù
€G • Œ _¸Ù 0=V @ &B&H&CV D - 24* t @ &B&H& ) . ; º 0X| * h @ 0&B&H& & ; º . ; º 0X| * 0<‚ * tŸ­L& :<µs¸· ¶VÙ
8¼V¼ e„¹Ùƒµ`³JÙ2³J· I¸ š!Ùq¸
B
· ?!¸ ?i¾
¿g¸c³ J¶V·sÙ´ 8² CÙ]³8ÙL¶ 8· ; I¸ š!¶Ç¹AÙ4¹-¹ s´cµÙƒµ`³8Ù ; º ¡Â ?f? @ &B&H&)E& :<µ`¸
·
¿ 8² _¸²n²v³ $Òكµ`¸
¿g¸nC¸ š!¶Ç¹AÙ\B
¹ ; „¶VÙV&µ ; º +Âo ; º c 5&
44
X¿ 8² `n `n ; ª * 8¸
¿ ™¶VÙ 8¼V¼ G„¹Òكµ`³8Ù = @ &B&H& F- ; º <Â|* ;• @• &H&B& • - ; ª º Â
¶VÙVµJ`Cº `Âc#`Cº ; •VÂ|&
:<µ :¡
¹ V @ &H&B&,V3- .  ³8·"?  -t^6ºUV  ‚*  V   8¿t³J¼V¼6Ê9Ÿ_ cŸ5¶ ³8·B? 8·6¼§{ɶ ÙVµs¸¿T¸Ï¸Iš!¶Ç¹AÙ4¹TV@ • &H&B&,V• . • „¶Vكµ @ -¤^+º˜V@ • Â|*!@ V@ • ;@• ³8·"??LA@ º i * • g@ Â9-¤^+º˜V • Â|*CL@ º * ;• @ ÂCV • • 8¿i³8¼V¼"ætŸp XŸ &
X¿ 8:
² `Cº '\4 `Cº •  8¿n³J¼V¼_)Ê Ÿ­ 4Ÿ?*³8·"? :¹A¶V·:Àiكµ`¸É¹AÙL¿8·:À CÙ CÙ\±@?J¶Ç¹AÙ\¶V·:À C¶Ç¹gµ`³!¾¶V¼Ñ¶V٘{ +¿ `¸
¿AÙU{ 4*
‚¾ {i¶VB
· ?s´
ÙL¶ 8· 8·‘Ê Ÿ oŸ, ¶VÙ J¼V¼ G„¹ÙVµs³8ÙVG0V  • J¿n³J¼V¼Ê9Ÿq ¡Ÿ5 ³J·B?0#LA@ º i *) • g@  J¿³8¼V¼
æ Ÿ TŸ &
)
:<µ :?
¹ V @ &B&H&CV¤- .  ³JB· ?  -^+˜º V  | *!  V   8¿³8¼V¼2Ê Ÿ7 fŸ ¶ ³J·B? 8·6¼§{¨¶ V@ • &B&B&,V• - . •
³8"· ?  -^6Uº V • ‚ *  V • • 8¿P³J¼V¼2OÊ Ÿ fŸ*g*³8B· ?F`Cº `f `Cº •V| & ɸ
·+´cW¸ „/¸²vG³ {†¾ C¶V¼ ?( ; ª¹ s´cµlÙVµs³8Ù
`n ; º +ÂXœ`Xn ; ª º +Â|* >-&0z +§¼ {8¶V·:ÀP· G„:+µs¸ 8¿g¸
Ž
² ¶VÙ 8¼V¼ e„¹Áكµ`³JT٠ɺ $ÂÒ³8"· ?sɺ 9•VÂv³8¿g¸2?!
,¸ µ C¶ 8³8¼½¸
·sÙ Œ
â 3s583+1414B`5D­
ß “Xœ _¸#Ù pÛº 2–*I~?* 34*C4*C€  *I^v*,°)*C`J³8"· ? 9•‹º 2=*I~3•S* 34*C9•˜*C€G• *C^*I°)*I`J•¾c¸•UÙ „ ’°$±]²Á³!´TµC¶V·+¸¹
ÙVµs³8ÙÁ³8¿g¸PÙq¸¹AÙ\¶V·:ÀJ±d´ 8² s³8ÙL¶4¾¼½¸«³8"· ?¨¹AÙ\¿ J· À CÙ CÙ\@± ?J¶Ç¹AÙ\¶V·:À C¶Ç¹gµ`³!¾¼N¸‘³8"· ? ¼½¸
Ù . ; ¾c¸‘³ Ù]¸A¹AÙ C·<´ÙL¶ 8· ¹ s´Tµ كµ`³JٙC¸ š!¶Ç¹AÙ * ª ˜Ù „ I¸ š!Ùq¸
B
· ?!¸ ? ¾
¿g¸c³ 8¶V·sÙ|´ J² CÙq³JÙ\¶ J·`¹ ³JB· ? 9•˜*$¿g¸¹ `¸c´
Ù\¶ 8¸¼ {$‡?„¶Vكµ
;
;
`n ; º <ÂJ`n ; ª º <Â|* - . ; bº 2-| *ϳ8B
· ? ; ³8· ¶V· CÙI¸ šjÙ]¸
·`¹A¶ 8· fŒo” 2 6 3T¨¶Ç¹³†Ùq¸¹AÙ¹¸
Ù
ɺ $Âv³8"
· ?›º 9•VÂnكµ`¸
·†³JB· ? 9 ; º . ; º 0<‚ *)0X¶ǹÁ³8· I¸ š!Ùq¸
B· ?!¸ ?¾
¿g¸c³ J¶V·sÙÙ]¸¹cÙ¹
¸
Ù ³JB· ?
9•U&
•¿ Œ=X¸c¸ 8¿ 8¼V¼½³J|¿ {WKŒ
“ {"7 36587: ¬œ _¸Ù ‹º 2=*,~?* 34*I4*C€  *C^*C`JÂɳ8B· ? 9•iÛº 2=*I~3•S* 34*C9•˜*C€G• *C^*C`JÂɾT¸$˜Ù „ -°$±]²Á³!´TµC¶V·+¸¹-ÙVµs³8Ù
³8¿g¸2Ùq¸¹AÙ\¶V·:ÀJ±d´ 8² s³8ÙL¶4¾¼½¸³8B· ?t¹AÙL¿ 8·:À CÙ CÙL@± ?8¶Ç¹AÙL¶V· À C¶Ç¹dµs³j¾
¼½R¸ ŒE” كµ`¸
¿g¸I¸ š!¶Ç¹AÙ4¹ . ;ݳ89· L«·+³8Ù C¿g³J¼!Ù]¸A¹AÙ C·<´ÙL¶ 8·
89
¿ L ¹ ´
¶4¸
·sÙL§¼ {¼½³8¿LÀ!‚¸ ‡ÙVµs¸·†Ùƒµ`¸
¿g¸™C¸ š!¶Ç¹AÙ4¹Ò³·<³8Ù C¿g³8¼/I¸ š!Ùq¸
B· ?!¸ ?¾
¿g¸c³ 8¶V·sÙÏÙ]¸A¹AÙ2¹
¸
Ù ³JB· ?
9•U&
•¿ Œ _¸«Ù 2 ¾T¸™³Ù]¸A¹AÙ2¹
¸
Ù º $™³8B· ?fɺ • ‚ *—L ÙVµs¸v¼½¸
· ÀjÙVµ كµ`¸v¼ 8· À ¸¹cÙ¹
I¸ µ s¸
·+´c¸v¶VO
· 2 ³JB· ?
.Ò³8t
· L ·+³8Ù C¿g³J¼"Ù]¸¹cÙ C·<´ÙL¶ 8· 4&=¿ 8² J¿ 8¼V¼N³8|¿ { P¶VÙ J¼V¼ G„¹vكµ`³JÙ 3 ; º . ; º 0X| * 0<Ân¶Ç¹Ò³8·
C¸ š!Ù]¸"
· ?j¸ ?|¾¿g¸c³ 8¶V·6ٕÙ]¸¹cْ¹
¸Ù ³8"· ?9•U&<6¶V·+´c¸ . ; ¶Ç¹ L ·<³8Ù C¿g³8¼ ‡ ¿ 8:
² ²n¸ ·s¶VÙL¶ 8O· i¶VÙ J¼V¼ G„¹nÙVµs³8Ù
„
6
2>"RQ'%GR&
’ìCí
ÜÓsÍ8Ÿ2¬ÇÅ
¯`ŸgÓ`¦¦ÿC¬ÇҟT¦
žs¥
¦¢JÎ"ÍjFž L‘žsÍJŸg¤`¡cÍJ­+Ÿg¦Dҟ2΃¤sžs¥AŸT¬½¢!ž™Îƒ¢!4¡ L¨Åg¤ /Ò¥¬N¦
ž Ÿg­N©Ò­ÇÍJ¡T®j¦ÏÃ2¬½­N­X¦
ž6Åd¤`¡T¦ÏŸgÓsÍJŸÍJž:©
ÄsÍ8ŸTӑ¬Nž2(¥
ÍJž«§6¦n¦ÿC¦¡T¥
¬NÅg¦£¤6Åd¬Nž`®™Í!ŬNž`¬½Ÿg¬ÇÍJ­£`ÍJŸT͙ՁÍj­½¤s¦ÅŸgÓ`¦nÓ`¦Í!£P¦­½¦Èn¦ž ŸTÅt¢JΟTÓ`¦nÅg¦ö ¤`¦žs¥¦DÅϬ½ž $&
ÜÓ:¤sÅ
¯ t¬NÅ2ÍnžsÍJŸg¤`¡cÍJ­X¦
ÿ ŸT¦
žs£`¦£|§`¡T¦ÍJü:Ä+¢j¬Nž Ÿ•ŸT¦ÅdŸÅd¦
Ÿ2¢JÎ xÍJž6£ 9•˜&
G
‰ñòdëh—ëï ! ìCí
G
ñògë ì;†jì`ògë
ÜÓ`¬ÇÅÅg¦¥AŸT¬½¢!ž™¬Nž Ÿg¡T¢C£C¤s¥¦DşgÓs¦$ҟT¡g¦DÍJÈÚØÔLÈvÍ!¥cÓ`¬½žs¦Íjžs£|ÄsÍJ¡gŸg¬Ç¥¤s­NÍj¡g¬ÇÅd¦DŕŸgÓ`¦-¡T¦Åg¤`­½ŸTÅ2®!¬½Õ!¦
ž|¬½ž|ŸTÓ`¦$Ä`¡T¦
Õ:¬N¢j¤sÅ
Åd¦D¥AŸT¬½¢!žsŕŸg¢ÁŸTÓ`¬NÅ¥­ÇÍjÅTŒ¢jÎ"ØÔLÈvÍ!¥cÓ`¬½žs¦ÅÖ
w™E7 x9_=4;=\368
9 y9X3œ zt·°-±]²v³j´cµ:¶V·<¸ xº 2=*,~?* 34*I4*C€BK*C^*¡*C`J¶ǹt´c³8¼V¼½¸ ?Á³ÅdŸg¡T¦ÍjȋØÔqÈvÍj¥cÓ`¬Nž`¦ C° 8¿
¹gµ 8¿AÙ Ò¶ كµ`¸ 8¼V¼ e„¶V· À³8¿T¸$ÙL¿ sH¸ …
9ˆF® ˆ=}sG*†„_µ`¸
¿gX
¸ ® ¶Ç¹كµ`¸ 8¹c¹c¶4¾
§¼ {Ò¶V· ·6¶VÙq¸ ÏÈÁ¦Èn¢!¡gi© ‡†} ¶Ç¹-ÙVµs¸ ·s¶VÙ]¸¬Nž`Ä`¤CŸÍj­½ÄsÓsÍJ§+¦Ÿ
2
³JB· ?ڶǹ-ÙVµs¸ ·s¶VÙ]¸2¢j¤`ŸgÄ`¤CŸÏÍJ­NÄ`ÓsÍJ§+¦HŸ ±
ˆs® ˆ."$%c
 ?>|³JB· ?nكµ`¸
¿g¸-I¸ šj¶Ç¹AÙ\¹Ï³¿g¸
¼½³8ÙL¶ 8· Eá ®™ˆf}Y?[­ˆs®
¹¶ sVt´cµÝ- ÙVµs3 ³8hÙكµ`r¸
s·k^'-`$a 9˜º $VX*C a1© *C
ºaW9•?4-‰
®8*,¢_-l}sG*Š-¡*C‘7-} º k*MaO*I¢R‘M Vº kA*MaF•S*,¢Â¶ ³8"
· ? J·s§¼ {†¶
Sº a1*I‘Â º A*MaF•NÂ
¢A
 ,. P10iQ|¶ ³JB· ? J·s§¼ {i¶ ¢
ri`™k?¶Ç¹--³ 9GC*C·+a ´
Ù\¶ -=JJ· ®8`É*iá uJº ki *Ca1ˆ.*,®¯
`¿g¸
Ù C¿A·s¹tكµ`¸É¿A¶ÑÀDµCÙ\² ¹AÙ2¸¼N¸ˆ.²v}s¸·6XÙ !i [³8· {v?!· ¸ 8·6·+±d¸ ¸?Ò² B¾ +{XUÙ { `Cº kiC*CÙ a1 C*,Ù/¢c ¹
I¸ ­µ sPG¸
Q$·+(E´cP:¸ ºKkCŒ ‚ * kJ-9G*Ca -=®8*I¢9-=}s
ÜÓ`¦|¢j¤CŸTÄ`¤CŸÒÅd¦
sŸ °*¤sÅd¦D£ ¬NžŸTÓ`¦£C¦Ðsžs¬ÑŸT¬½¢!žl¢jÎtÍJž ØÔLÈvÍ!¥cÓ`¬½žs¦™¬ÇÅnž`¢8
à ¬½žŸgÓ`¦ÍJ§+¢8Õj¦™£C¦Ðsžs¬ÑŸT¬½¢!žÖ
:­N¦Í!Åd¦ž`¢jŸg¦ÏŸgÓsÍJ
Ÿ ¬NÅÍÉÐ6ž`¬ÑŸT¦$Åd¦
ŸÖ
מ :9Ø Èv́©ÓśÕj¦ÅdŸTÍJŸg¦ž`¢!žCÔ]£C¦ŸT¦
¡TÈn¬Nž`¬ÇÅdȯ¢!Ä6¦¡TÍJŸg¢!¡+žs¢jžCÔ]£C¦ŸT¦
¡TÈÁ¬½ž`¬ÇÅgÈ ÍJž6£-£C¢jÈvÍJ¬Nžž`¢jž`Ôq£C¦
Ÿg¦¡gÈÁ¬Nž`¬NÅgÈ
§`¤CŸ2ž`¢jŸ/Ÿg¦¡gÈÁ¬NžsÍ8ŸT¬½¢!žÒž`¢!žCÔq£`¦Ÿg¦¡gÈÁ¬Nž`¬ÇÅdÈÖC×Å/΃¢j¡’ŸgÓ`¦Ï®j¦ž`¦
¡cÍJ­6ØÔqÈvÍj¥cÓ`¬Nž`¦ÈÁ¢C£C¦­\¯:¢jžs­½©Á¢jÄ+¦
¡cÍ8ŸT¢j¡•ÍJžs£Ò£`¢JÔ
ÈvÍJ¬Nž|žs¢jžCÔ]£C¦ŸT¦
¡TÈÁ¬½ž`¬ÇÅgÈ Ã2¬½­N­§+¦$¥¢!žsÅd¬Ç£C¦¡g¦D£i¬Nž™Ã2Ó6Í8Ÿ2΃¢j­N­N¢8ÃÅ
Ö
45
JÙq¸ `¢!¡tÅg¬½ÈÁÄ`­N¬N¥
¬ÑŸ‡©!¯<¬½ž«Ã2ÓsÍ8Ÿt΃¢j­N­½¢8ÃÅÒ¦nÃ2¬½­N­¥¢jž6Åd¬Ç£C¦
¡ÏÄ`¡T¢C¥¦ÅTÅg¬½ž`®i¡g¦­NÍJŸg¬N¢jžsÅ¢JΟgÓs¦É΃¢!¡gȍV†ái® ˆ
º4¬\Ö ¦jÖ:Õ¦Ã2¬N­½­<¤sÅg¦ ¬NžsҟT¦Í!£v¢JΆV™Îƒ¡T¢jÈ(åt¦Ðsž`¬½Ÿg¬N¢jž«Ê(jÂAÖ:¬½ÈÁ¬N­NÍj¡g­N©j¯ Õ¦Ã2¬N­½­<¥¢!žsÅd¬Ç£C¦¡/ŸTÓsÍ8Ÿ
ŸgÓ`¦nŸT¦ÅdŸg¬Nž`®|£`¢jÈvÍJ¬Nž‘¢jÎ/ŸgÓs¦ÈvÍj¥cÓs¬½ž`¦n¬ÇÅÏÍi΃¤`žs¥Ÿg¬N¢jž ^Pá"38!i[,æ &<מ CØ# Ã2¬½­N­§6¦v£C¦ž`¢JŸT¦£P§:©PÍ
Ÿg¤`Äs­½¦ pÛbº }.*¡*I®8* 34*C4*C€  *I^ ‚ &
 JÙq
¸ RŒt×,
ž C#Ø ,¬ÇÅnÒ¦DÍJü¨¢j¤CŸTÄ`¤CŸgÔq£C¬ÇÅdŸg¬Nž`®j¤`¬ÇÅgÓsÍJ§`­N¦i¬½Î΃¢!¡nÍjž © Vi* k­- 34*¬½ÎŸgÓs¦
¡T¦i¦ÿC¬ÇŇ)Ÿ a1*CaW•@ *MaF• ®8*C‘O-=}.*=- Ã2¬ÑŸTӆº aO*C‘M Vº 0*CaW•@ | *Sº a1*I‘b kXº A*MaF• ’ŸTÓ`¦
=
ž VWqk&
 JÙq
¸ 'ŒtÜÒ¢-ÅdŸg¡T¦ÍjȋØÔqÈvÍj¥cÓ`¬Nž`¦Å/ÍJ¡T¦’ŸT¦ÅdŸg¬Nž`®$¥¢!ÈÁÄsÍ8ŸT¬½§`­N¦2¬½Î+ŸTÓ`¦
¬N¡¬Nž`Ä`¤CŸ•ÍJ­NÄ`ÓsÍJ§+¦ŸcÅ
¯j¢j¤CŸTÄ`¤CŸ’Íj­½Ä`Ó6ÍJ§+¦ŸTů
ÈÁ¦
ÈÁ¢j¡T©iÅg¦ŸTůsÅg¦ŸcÅ¢JÎÄ`¡g¢C¥
¦ÅTÅd¬Nž`®n¡g¦­NÍJŸg¬N¢jžsÅÍJž6£iŸT¦ÅdŸg¬Nž`®v£C¢jÈvÍj¬½žsÅ2¥
¢j¬Nžs¥¬Ç£C¦!Ö
» š:³8² +¼½
¸ $Œª/Õj¦
ž‘ŸgÓ`¢!¤`®jӑŸgÓ`¦ÁØÔLÈvÍj¥cÓs¬½ž`¦Á¬Nž¨ªÿ`ÍJÈÁÄ`­N¦™ÊnÄ`¡T¢:¥
¦ÅTÅd¦DÅtÍÅg¦ö ¤`¦žs¥¦n¢JΕ¬½ž`Äs¤CŸ$Åd©:Èɧ+¢j­Çů+¬½Ÿ
¬NŞ`¢jŸÍJž :9Ø ºƒ¬LÖ ¦j—Ö £C¢:¦Åɞ`¢JŸÄ`¡g¢C¥
¦ÅTÅŸgÓ`¦™¬½žsÄ`¤CŸnÅg¦ö ¤`¦žs¥¦i¬½ž Íjž :#Ø Î4Í!ÅdÓs¬½¢!ž Íjžs£ ŸTÓ`¦i£`ÍJŸTÍPÅg¦Ÿ
£C¢:¦Å/ž`¢JŸ/¬Nžs¥
­½¤s£`¦¦ÿCÄ`­N¬N¥
¬ÑŸT­½©ÁÍJžÁ¢!¤CŸgÄ`¤`Ÿ•ÍJ­NÄ`ÓsÍj§6¦
ŸcÂÖ!Æ¢8Õ¦
Õ!¦
¡D¯8¬ÑŸ•¥
ÍJžÁ§+¦¦DÍjÅg¬½­N©É¡T¦
Ã2¡T¬ÑŸgŸg¦žn¬NžÁŸgÓs¬NÅÎ4ÍjÅgÓ`¬½¢!ž¯
ÍjÅvÅgÓ`¢8Ã2žÝž`¦ÿ:Ÿ5Ö :¢ 2 Xfˆ¤® ˆ¤}s|Ã2¬ÑŸT#
Ó } "$u><Tu|¬ÇÅÁ­½¦
ŸdŸT¦
¡Ò¢!¡Ò£C¬½®!¬ÑFŸ % _"›*8E%¨#º «¬NÅnŸTÓ`¦
§`­ÇÍJž`ü‘¥cÓ6ÍJ¡cÍj¥AŸT¦
¡ÏÍJžs£ õ¬ÇÅ-͙Åg©:Èɧ+¢j­¤sÅg¦£‘Ÿg¢|ÈÁÍj¡güŸTÓ`¦vҟcÍJ¡gŸÏ¢jÎ/ŸTÓ`¦Á¬½ž`Äs¤CŸÉÅd¦Dö ¤`¦
žs¥
¦DÂg¯ ® ˆ(t*
p"R‘ <G‘–-–}.*,Vt- 3o%'*3>"H ,*CQE*IV  *IV @ *IV * k*%!¯JÃ2Ós¦
¡T¦2ŸgÓ`¦t£C¦Ðsžs¬ÑŸT¬½¢!žsÅ¢jÎ+ŸTÓ`¦Äs¡g¢C¥¦DÅgÅg¬Nž`®¡g¦­NÍJŸg¬N¢jžsÅ
ºƒÃ2¡T¬ÑŸgŸg¦ž¬½ž™ŸgÓ`¦Î4Í!ÅdÓs¬½¢!ž|¢j=Î A¢JŸg¦$ú •ÍJ¡T¦Í!ŕ΃¢j­N­½¢8ÃÅá
ºgº * !‚ * Aº  *º * Âd¯
ºgº *`|Â *Iu
 Q:˜º u R*º *sÂdÂA¯sÃ2Ó`¦
¡T¦ J-t*vu-–} $h"!KÊ *›*;%'*
ºgº *`| * !C V  º *º v*›!ÝÊDÂd¯`Ã2Ó`¦¡g¦ .-"=* s¯
ºgº *`| *ÊDC VK@º‡Ê *º‡'Ê * ÊDÂd¯`Ã2Ó`¦¡g¦ .-"=*
ºgº L*s|Â *I+
M V ˜º + *º *sÂdÂA¯CÃ2Ós¦
¡T¦ *ML1-=*
ºgº L*s| * <ÂbkXº *º L& *sÂdÂA¯+Ã2Ó`¦¡g¦ g*ML>-(=*"Sº L v* ->"*CuG%ÉÍJžs£ .!-ʁ¢j¡nº ->" KÊ *Iu$%ÉÍJžs£
)‹ÊD¯`Ã2Ó`¦¡g9
¦ u-t} $h" v*
'Ê *›*;%'*
ºgº L*s| * <Â)_º v*Dº L*`Âd¯`Ã2Ó`¦
¡T¦ *MLO-t* =-=} $h"%'&
ÜÓ`¦$£C¦
Ðsž`¬½Ÿg¬N¢jž¢JÎ ¡T¦
ÈvÍJ¬Nžsŕ¤`žs¥cÓ6ÍJž`®!¦£XÖ
:­N¦Í!Åd¦nž`¢JŸT¦ÉŸTÓsÍ8ŸŸTÓ`¦ÁՁÍj­½¤s¦X
Å ‘ Sº ‘q-}.*,V- 34* ÂÏÍJ¡T¦¥
¢jžsÅg¬Ç£C¦
¡T¦£‘¬½ž õ¬½ž¨¢j¡c£C¦
¡tŸg¢|üj¦¦
đŸgÓ`¦ÁÈvÍj¥cÓ`¬Nž`¦
¢j¤CŸTÄ`¤CŸgÔq£C¬ÇÅdŸg¬Nž`®j¤`¬ÇÅgÓsÍJ§`­N¦jÖ6×­ÇÅd¢Áž`¢jŸg¦ŸgÓ6Í8Ÿ2ŸgÓs¦$ýj£C¤`ÈÁÈ©:ýnÕ8ÍJ­N¤`¦DXÅ !-KÊ *B!æ *B! v*B!2è$¤sÅg¦£™¬Nž|¦
ÿ`ÍJÈÁÄ`­N¦vÊÍj¡g¦
ž`¢v­N¢jž`®!¦
¡ž`¦
¦D£C¦£Íjžs£iÓ6́Õj¦§6¦¦
ž¡T¦
ÈÁ¢8Õj¦D£XÖ
w™E7 x9_=4;=\368
9 y=%œ J¿³J· :° 4*_³ s³8¿AÙL¶4³8¼ C·+´
ÙL¶ 8&· • ásUº ® ˆs}ÁI !i[9v´c³8¼V¼½¸ ?Ò³J·Á¬½ž`Äs¤CŸdÔqÈÁ¦
ÈÁ¢j¡T©
¥¢!ÈnÄs¤CŸTÍJŸg¬N¢jž (¶Ç¹ ?j¸ ·+¸ ?n³¹ •; º @ &H&B& D c @ &H&B&; D *<¶ كµ`¸
¿g¸-I¸ šj¶Ç¹AÙ\¹³ s³8ك)µ V @ &B&H&IV D ¿ 8œ
² €  ³JB· ?
a  -F®8*"9
Ê Ÿ¤ ¡ŸL*¹ s´cµÙƒµ`³JÙ  -F^6Uº V  ‚ *  V  º  *Ma  ‚ *_9Ê Ÿ TŸ_L*vLON v&
 JÙq¸ 'ŒtÜÓ`¦ÏŸg¦Dҟ2΃¤`ž6¥AŸg¬N¢jž¬Nž Ÿg¡T¢:£`¤s¥¦D£™§:©iåt¦Ð6ž`¬ÑŸT¬½¢!ž Ê nÃ2¬½­N­§+¦
΃. ¢!; o¡ Uº 6¶T N *X¥¢!žsÅg¬N£C¦¡ . ; £C¦
Ðsž`¦£«Îƒ¢!¡Íjž:©PҟT¡g¬Nž`t® VK@0&B&H&IV " - 3T7<ŸgÓ`¦ž¨Îƒ¢j¡-ÍJž:©PÅdŸg¡T¬½ž`t® VK@0&H&B&,V " V " @$*
. ; Uº VK@0&B&H&IV " V " @
•¬NŦ¬ÑŸTÓ`¦
¡¢j·á
¬½Î V @ &B&H&IV "|¬NÅ$Í|ÄsÍJŸgÓ ¬Nž ŸTÓsÍ8Ÿ$¦Èn¦¡g®!¦ÅÏ΃¡T¢jÈ*ŸTÓ`¦Ò¬Nž`¬½Ÿg¬ÇÍJ­/ÅdŸTÍJŸgf¦ €  ŸTÓ`¦
ž . ; Uº V @ &H&B&IV "eV " @ 9 . ; Uº V @ &H&B&IV "J #" @ ¯`Ã2Ó`¦
¡T¦ #" @ -F^+˜º V " @ | *`Ã2¬½Ÿg
Ó " @ ÛSº a1*I‘| *va -F®8*sÍjžsW£ ‘1-=}.&
¢jŸgÓ`¦¡gÃ2¬ÇÅg¦ . ;Uº V @ &H&B&CV "'V " @ c 5. ;2Uº V @ &H&B&IV "JÂÖ ]ž|ŸgÓ`¬ÇÅ¥
Í!Åd¦ . ; bº 2-| *i26 3T¥¢!ž ŸTÍJ¬NžsÅ2Åg¦ö ¤`¦žs¥¦DŒ¢jÎ"Ä6ÍJ¬N¡TÅ-Sº a1*I‘o -t® ˆ=}.&
» š:³8² +¼½¸ EŒ s¢j¡ xÍ!Ŭ½žªÿCÍjÈÁÄ`­½¦ (C¯CÃ2¬ÑŸT"Ó 0Fq V @ kEkV  V V @ ÍJžs£ @ e*CÃ2Ó`¦¡g¦
@ ºdº * |Â *8JÂA¯ (ºdº v* |Â *
ʁÂA¯ ºgº‡'Ê *
ÊD‚Â *
ʁÂA¯ ºgº\æ *ÊD‚Â *I+¯ ºdº *
ʁ| * !ÂA¯ X(ºdº v* | *I+
ÂA¯
hÛºgº v* !‚Â *
ʁÂAÖ
Ò¦$¥ÍJž¥¢!žsҟT¡g¤6¥AŸ v•; Åg¤s¥cÓiŸTÓsÍ8Ÿ •; º :c 0*CÃ2Ó`¦¡g¦ F!dÊ Ê + Ê " &
w™E7 x9_=4;=\368
9 y œ ¸
Ù ‹bº }.*¡*I®8*,~?* 34*I4*C€‚E*C^:Â$³JB· ? 9•i‹bº }.*¡*I®8*I~3•S* 34*C9•˜*C€G• *C^:Âɾc¸-UÙ „ n¹AÙL¿g¸c³8²
°-±]²v³j´cµ:¶V·<¸A¹ÏÙVµs³8Ù³8¿g¸ÏÙ]¸¹cÙL¶V· Àj±d´ 8² `³JÙ\¶4¾
¼½R¸ Œ :<µs¸·P³ ·6¶VÙq¸¹
¸Ù s6 ˜º ®™ˆ)}Á ¶Ç¹Ï´c³J¼V¼½¸ ?v³8·n¬½ž`Äs¤CŸdÔqÈÁ¦
ÈÁ¢j¡T©
Ÿg¦Dҟ2Åd¦
Ÿ ³JB· ? 9•¶ „_µ`¸
·+¸ 8¸¿كµ`¸
¿g¸$I¸ šj¶Ç¹AÙ •; ³JB· ? •; ª UÙ „ ɶV· ª CÙL±]²Á¸
² 8|¿ {v´ J² CÙq³JÙ\¶ J·`¹ ³JB· ?
• *¿g¸¹ `¸c´
Ù\¶ 8¸¼ {$‡¡„¶Vكµ •; º +¡? •; ª º +‚* =-*†„/¸µ`³ X¸ V ; #V ; &
 eŒ#
}‰Y?[#ˆ?®
46
“ "{ 7 36587:ž³_œ _¸Ù ‹ºU}.* T*,®8*I~?* 34*C4*C€  *I^ Ât³8·"?9•xºU}.* T*,®8*I~9•S* 34*C9•U*I€G• *I^ Ât¾c¸ÙU„ ϹAÙ\¿T¸T³J² °$±
²Á³!´TµC¶V·+¸¹$ÙVµs³8Ù2³8¿g¸ÉÙ]¸A¹AÙL¶V· Àj±d´ J² s³8ÙL¶4¾
¼½¸³J·B?J„/¸c³ CÙ CÙL±@?8¶Ç¹AÙ\¶V·:À C¶Ç¹gµs³j¾
¼½¸³J·B?i¼½¸
Ù . ; ¾c¸³ÒÙq¸¹AÙ C·<´ÙL¶ 8·
fŒA” 2 6 3 ¶Ç¹Ò³Ùq¸¹AÙ¹
¸Ù º$Âi³J·B?Jɺ • ÂÁ¹s´cµ¨Ùƒµ`³8Ù¸Cš!¶Ç¹AÙ • ³8·"? • ª ÙU„ ¶V· CÙ\±]²v¸
² J¿|{
´ 8² CÙ]³8ÙL¶ 8·`¹ ³JB· ?9•S*"¿g¸¹ s¸c´ÙL¶ 8¸¼§{$‡o„¶VÙVµ•; º <¡ v;• ª º <Â|* –-. ; ; ºb2-Â|*كµ`¸
; ·&. ; ºb2-Â$¶Ç¹³J·‘¶V· CÙL±
²Á¸
² 8|¿ {ÒÙ]¸A¹AÙ/¹¸
Ù *³8"· ?9•˜&
•¿ Œ 8¼V¼ G„.
¹ ?J¶V¿g¸c´ÙL§¼ { ¿ J² :<µ`¸ J¿g¸
² ™³8B· ?)²n¸ ·s¶VÙL¶ 81·  'Œ
w™E7 x9_=4;=\36/
9 “%œ J¿$³8· C° 4*"³ s³8¿AÙL¶4³8¼ C·+´
Ù\¶ J&· v• Eá }sX!i[9v´c³8¼V¼½¸ ?|³8·Ò¬Nž`Ä`¤CŸ¥
¢jÈÁÄ`¤CŸcÍ8Ÿg¬N¢jž
¶V
· a -Š® ¶Ç¹ ?j¸ ·<¸ ?l³8¹ v•; Sº ‘ @ &B&B&I‘ D = ; @ &B &B& D *¶ كµ`¸
¿g¸ I¸ šj¶Ç¹AÙ\¹‘³ s³8ك¤
µ V @ &B&H&IV D ¿ J²
€  ³JB
· ?Oa  *MaF• - ®8*-#
Ê Ÿ OŸ L¤!x'Ê *«a  *MaF•D - ®8*«a  a1*¹ s´cµ كµ`³JÙiº a  g@ *I‘  > -£^6Uº V  ‚ *
º a @ *I‘  M V  º  *MaF• | *"9Ê Ÿ¤ ¡ŸL*L1N &
 JÙq)
¸ 'ŒÜÓ`¦tŸg¦Dҟ•΃¤`žs¥Ÿg¬N¢j"ž . ; Ã2¬N­½­<§+¦£`¦Ðsž`¦D£iÅg¬½ÈÁ¬N­NÍj¡/ŸT.¢ A¢JŸT¦ÏËÃ2Ó`¦
¡T¦ŸTÓ`¦£C¦Ðsžs¬ÑŸT¬½¢!ž™¢jÎ . ; ˜º V @ &B&B&,V "
V " @Â"Ã2Ó`¦
f
ž VK@0&H&B&,V " ¬ÇÅÍÏÄsÍ8ŸTÓn¬Nž Ã2¬N­N­s§+¦2¡g¦Ä`­NÍ!¥¦D£É§:© . ; Uº VK@0&H&B&IV " V " @
c 5. ; Uº VK@0&H&B&IV " M ‘ " @e*'‘ " @}.*¬½Î¦ÿC¬Çҟc3
Å a " @W-/® Åg¤s¥cÓ ŸTÓsÍ8Ÿ™Sº a " @e*C‘ " @
s -q^+˜º V " @
‚ &]ž ŸgÓs¬NÅn¥
Í!Åd¦ . ; bº 2-| *c2 643Ti¥¢!ž ŸTÍJ¬NžsÅ
Åd¦Dö ¤`¦
žs¥
¦Å¢jÎ"¬Nž`Ä` ¤CŸÅg©:Èɧ+¢j­Ç«Å ‘O-t}.& w™E7 x9_=4;=\36/
9 “y6œ ¸
Ù ‹bº }.*¡*I®8*,~?* 34*I4*C€‚E*C^:Â$³JB· ? • ‹bº }.*¡*I®8*I~ • * 34*C • *C€ • *C^:Âɾc¸-UÙ „ n¹AÙL¿g¸c³8²
°-±]²v³j´cµ:¶V·<¸A¹|ÙVµs³8Ùɳ8¿T¸|Ùq¸¹AÙ\¶V·:ÀJ±d´ 8² s³8ÙL¶4¾¼½R¸ Œ :+µs¸·z³ ·s¶VÙ]¸™¹¸
Ù _6£}s«¶Ç¹|´c³8¼V¼½¸ ?†³J·¨¬Nž`Ä`¤`ŸŸT¦ÅdŸÁÅg¦Ÿ ³8B· ?9•¶ „_µ`¸
·+¸ ¸
¿ÁÙVµs¸¿g¸iC¸ š!¶Ç¹AcÙ a -®8*-v•; ³JB· ? ;• ª ˜Ù „ |¶V· CÙtª ´ J² CÙq³JÙ\¶ J·`¹ ³JB· ? 9•˜*
¿g¸¹ s¸c´ÙL¶ 8¸§¼ {$‡•¶VJ· aZ„¶VÙVµ •; º +¡? •; ª º <Â|* =-=} *†„/¸Ïµs³ 8X¸ V ; V ; &
“ {"7 36587: œ _¸Ù Uº }.* T*,®8*I~?* 34*C4*C€B'*I^ Â|³8"· ? 9•4 Uº }.* T*,®8*I~9•˜* 34*I9•S*I€G• *C^:Â|¾c¸™UÙ „ ¹AÙL¿g¸c³8²
°-±]²v³j´cµ:¶V·<¸A¹ÁÙVµs³8Ù³8¿g¸ÁÙ]¸¹cÙL¶V· Àj±d´ 8² `³JÙ\¶4¾
¼½‚¸ ‡„/¸c³ CÙ CÙ\@± ?J¶Ç¹AÙ\¶V·:À C¶Ç¹gµ`³!¾¼N¸i³8"· ?¼½¸
Ù . ; ¾c¸Ò³Ù]¸A¹AÙ C·<´ÙL¶ 8·
4&i” 2œ6 3TÁ¶Ç¹-³ÁÙq¸¹AÙ¹
¸Ù ɺ $Âɳ8B
· ?3ɺ 9•ÇÂϹ s´cµ™ÙVµs³8ْI¸ š!¶Ç¹c—Ù a-F® ³8"· ? • *!• ª ˜Ù „ n¶V· CÙ
´ 8² CÙ]³8ÙL¶ 8·`¹ ³JB· ? 9•˜*"¿T¸A¹ s¸T´
ÙL¶ ¸
§¼ {$‡’¶VF· a „¶VÙV"µ •; º +Â4v;• ª º +‚* 1-. ; ; bº 2-| *; كµ` ¸
· . ; bº 2-Âɶǹ
³8·«¶V· CٕÙ]¸A¹AÙ¹
¸
Ù *³8B· ?9•˜&
•¿ Œ”Ù J¼V¼ G„8¹ ?J¶V¿g¸c´ÙL§¼ { ¿ 8² :+µs¸ 8¿g¸

² i³8"· ?²n¸ ·s¶VÙL¶ 8· KŒ
 JÙq)
¸ K'Œ#:¬NÈÁ¬½­ÇÍJ¡iŸg
¢ L۞sÍ8ŸT¤`¡TÍj­ŸT¦ÅdŸi΃¤`žs¥Ÿg¬N¢jž Õ¦‘Èv́©?ÍJ­N­½¢8à ÍÅg­N¬½®!Ó!ŸT­½©ÝÈÁ¢C£C¬ÑÐ6¦£ ¥
¢jžs£C¬½Ÿg¬N¢jžzÃ2Ó`¬N¥cÓ
Åǵ©CÅҟgÓsÍJŸ™¬½)Î V @ *H&B&H&‚*IV D - 3 Íjžs£ ¦ÿC¬ÇŇWŸ ‘  - }.*  - T*oa  -:®8*t­
Ê Ÿ –Ÿ L*oa  -7® Ã2¬½ŸgÓ
º a @ *I‘  M V  º  *Ma  | *9Ê Ÿ¤ TŸ_L*:ŸgÓs¦
ž . ; ˜º V @ &B&H&CV D T /‘ @ &H&B&M‘ D &
]ž†ŸgÓs¬NÅ¥
ÍjÅg¦ÒÕ¦Ò¡T¦¥
ÍjÄCŸg¤s¡g¦ÁŸTÓ`¦ÒŸT¦ÅdŸÉ΃¤`žs¥Ÿg¬N¢jž£`¦Ðsž`¬½Ÿg¬N¢jž¤sÅd¦D£ ¬½ž ù æ`Êû’Í!ÅÉÍJž†Ã•¦Íj1ü L?žsÍJŸg¤`¡cÍJ­/Ÿg¦Dҟ
΃¤`žs¥Ÿg¬N¢jžÃ2¬½ŸgFÓ L‘®!¡g¦DÍ8Ÿg¦¡•ŸgÓsÍjž|¢!¡2¦ö ¤sÍj­<Ÿg¢nŸgÓ`¦-­N¦
žs®JŸgÓ¢jΟgÓs¦-­½¢!ž`®j¦DҟÅg¦ö ¤`¦
ž6¥¦¢JTÎ 24&
/î ëñgðh:ò‡î’ëh
ÜÓ`¦$ÄsÍjÄ6¦¡Ä`¡T¢8Õ:¬N£C¦DŕŸgÓ`¦$ŸgÓ`¦¢j¡T¦Ÿg¬Ç¥
Íj­§sÍ!Åd¬Çŕ΃¢j¡2ŸTÓ`¦$®!¦
ž`¦¡TÍJŸg¬N¢jž|¢JΟg¦DҟÅg¦ŸcÅ2΃¡T¢jÈڞs¢jžCÔ]£C¦ŸT¦
¡TÈÁ¬½ž`¬ÇÅdŸg¬Ç¥ØÔ
ÈvÍj¥cÓ`¬Nž`¦$ÅgÄ6¦D¥¬½Ð6¥
ÍJŸg¬N¢jžsÅÖs×(Ù]¸A¹Aْ¹
¸Ù¬ÇÅÍnÐsžs¬ÑŸT¦ÉÅd¦
Ÿ¢JÎÅg¦ö ¤`¦
ž6¥¦Å¢jΦ
­N¦
ÈÁ¦
ž ŸTÅ2ŸgÓsÍJŸ®j¤sÍj¡TÍjž Ÿg¦
¦DŒŸgÓsÍJŸŸ‡Ã’¢
ÈvÍj¥cÓ`¬Nž`¦ÅÓśÕj¦-¬Ç£C¦ž!ŸT¬N¥ÍJ­§+¦
Ó6ÍÕ ¬N¢j¤s¡Ã2Ó`¦
žŸTÓ`¦ÉÍjÄ`Ä`­N¬N¥Í8Ÿg¬N¢jž¢jΟgÓ`¬ÇÅÅg¦ŸŸT¢vŸgÓs¦-Ÿ‡Ã’¢vÈvÍ!¥cÓ`¬½žs¦ÅÄs¡g¢C£C¤s¥
¦Å
¬N£`¦
ž Ÿg¬Ç¥
Íj­¡g¦DÅd¤s­ÑŸcÅ
Ö`]žÎ4Í!¥AŸD¯CŸgÓ`¦É¬½ÈÁÄ`­N¬N¥Í8ŸT¬½¢!ž|¬ÇÅÅdŸg¡T¢jž`®!¦
¡Dá:ž`¢JŸ¢!ž`­½©iŸgÓ`¦É§6¦ÓśÕ:¬½¢!¤`¡Tŕ¢jÎ"ŸTÓ`¦Ÿ‡Ã•¢vÈÁÍ!¥cÓ`¬Nž`¦Å
¥¢!¬½žs¥
¬N£`¦j¯8§`¤CŸÍj­NÅg¢ŸTÓ`¦
¬N¡ÍjÅTÅd¢C¥
¬NÍJŸg¦£-Ðsž`¬½Ÿg¦2ҟcÍ8ŸT¦•ÈvÍ!¥cÓ`¬½žs¦ÅցÜÓ:¤sÅ_ŸTÓ`¦2ÍJÄ`Ä`¡T¢!Í!¥cÓ-¬NÅ"ŸT¢t®!¦
ž`¦¡TÍJŸg¦Åd¦Dö ¤`¦
žs¥
¦Å
¢JΒÍj¡T¥Å2ŸTÓsÍ8Ÿ-¥
ÍjžŸg¦DŇŸÏŸgÓ`¬ÇÅϦö ¤`¬NÕ8ÍJ­N¦
žs¥
¦™ºƒ¤6Åd¬Nž`®™ŸgÓ`¦n¦ÿC¬ÇҟT¬½ž`®iŸg¦DҟT¬½ž`®™ŸgÓs¦
¢j¡T©|΃¢j¡tÐsž`¬½Ÿg¦ÁҟcÍ8ŸT¦ÉÈvÍj¥cÓ`¬Nž`¦DÅTÂ
ÍJžs£ÒŸg¢n¦ÿC¦
¡c¥¬ÇÅg¦ŸgÓs¦Åg¦t¤sÅg¬Nž`®nÍjÄ`Ä`¡T¢jÄ`¡T¬ÇÍ8Ÿg¦ÏÅd¦Dö ¤`¦
žs¥
¦Å’¢JΦ­½¦ÈÁ¦
ž ŸTŕ¬NžÒŸgÓs¦£sÍ8ŸTÍnÅg¦ŸÖCÜÕ¢ÍjÄ`Ä`¡T¢!Íj¥cÓs¦Å/Íj¡g¦
¬½ž:Õ!¦ÅdŸg¬N®!Í8ŸT¦£XÖ:ÜÓ`¦Ðs¡TÅdŸ’¬ÇÅ/Ÿg¢Åg¤`Ä`Äs­½©v¦DÍj¥cÓÒÍJ¡c¥2¬Nž™ÍÉÄsÍ8ŸTÓÒÃ2¬ÑŸTәÍÅd¤`¬½ŸTÍj§`­N¦Õ8ÍJ­N¤`¦¢jÎXŸgÓ`¦£`ÍJŸg¦tÅg¦ŸÍJžs£ÒŸgÓ`¬ÇÅ
¥¢!¡g¡T¦ÅgÄ6¢!žs£`Åt¬½ž«Ä`¡cÍj¥AŸT¬N¥
¦ÉŸT¢™Äs­NÍ!¥¬Nž`®i§`¡T¦Íjü:Ä6¢!¬½ž ŸTÅÏÍ8ÎVŸT¦
¡¦Í!¥cÓP¡T¦
­ÇÍ8Ÿg¬N¢jž«ÓsÍjÅt§+¦
¦
ž¨Ä`¡T¢C¥¦ÅTÅg¦£XÖ<ÜÓ`¬ÇÅt®!¬½Õ!¦Å
¡g¬ÇÅg¦Ÿg¢ÁŸgÓs¦™¾¿T¸T³ 8¶V·6ÙÙq¸¹AÙ¹
¸ÙLÖsÜÓ`¦|C¸ š!Ù]¸"· ?j¸ ?vÙ]¸A¹AÙ/¹¸
ÙÅdŸg¡cÍ8ŸT¦
®j©i¦
­N¬½ÈÁ¬NžsÍ8ŸT¦ÅŸTÓ`¦$§`¡T¦Íjü Ä+¢j¬Nž ŸTÅÃ2Ó`¦ž`¦
Õ!¦
¡
ŸgÓ`¬ÇŒ¬NÅ/Ä6¢ ÅgÅg¬½§s­½¦§:©n¡g¦¤sÅg¬½ž`®ÉՁÍj­½¤s¦Å΃¡T¢jÈ÷ŸgÓs¦Ä`¡T¦
Õ:¬N¢j¤sÅ¥
¢jÈÁÄ`¤CŸcÍ8ŸT¬½¢!žÖj‡£C¦DÍJ­N­½©!¯j¢!ž`­½©ŸgÓs¦Ðs¡cҟ’ՁÍj­½¤s¦¬½žÁŸTÓ`¦
Åd¦Dö ¤`¦
žs¥
¦ÉÕ¢j¤`­Ç£§+¦Åg¤`Ä`Ä`­N¬N¦£X¯+ŸgÓs¬NÅÏ¥¢!¡g¡T¦ÅgÄ6¢!žs£`şT¢ÒŸTÓ`¦n¥ÍjÅg¦$Ã2Ó`¦ž‘ÍJ=ž L ·+³JÙ C¿g³J¼Ù]¸A¹AÙ C·<´ÙL¶ 8·|¥
ÍJž§+¦
¥¢!žsҟT¡g¤6¥AŸg¦D£™Îƒ¢j¡ÍÁÅd'¤ /v¥
¬½¦ž Ÿg­N©Ò­NÍj¡g®!X¦ L&
ÜÓ`¦Åg¦Ÿ‡Ã•¢ÍjÄ`Ä`¡T¢!Í!¥cÓ`¦ÅÍJ¡T¦ŸgÓs¦
žÁÄsÍJ¡gŸg¬Ç¥¤s­NÍj¡g¬ÇÅd¦D£$ŸT¢ŸgÓ`¦tҟT¡g¦DÍJÈxØÔLÈvÍ!¥cÓ`¬½žs¦¥
­NÍ!ÅgÅ/ÍJžs£ŸgÓs¦¥¢jž6£C¬ÑŸT¬½¢!žsÅ
¬½ž?Ã2Ó`¬Ç¥cÓ?Í«ÅdŸg¡T¦ÍjÈØÔqÈÁÍ!¥cÓ`¬Nž`¦Íj£CÈÁ¬½ŸTÅvÍJ
ž LzžsÍJŸg¤`¡cÍJ­•ŸT¦ÅdŸv΃¤`žs¥AŸT¬½¢!žÝÍj¡g¦|¬Ç£C¦
ž Ÿg¬½Ðs¦D£XÖ/ÜÓ`¦|ŸgÓs¦
¢j¡T¦ŸT¬N¥ÍJ­
¡g¦DÅd¤s­ÑŸcÅ2¬½ž™ŸgÓs¬NÅ2Ä6ÍJÄ+¦
¡ÍJ¡T¦®j¦ž`¦
¡cÍJ­N¬NÅTÍ8ŸT¬½¢!žsŒ¢JÎ"ŸgÓ`¦-¡T¦Åg¤`­½ŸTŬNž ù æJúJûLÖ
47
ñ 2ëî _ïc—
ë’ì
«¦Ã’¢!¤`­Ç£­½¬Nüj¦-ŸT¢ÒŸTÓsÍJž`ü™ŸgÓs¦ÍJžs¢jž:©:Èn¢!¤sÅ2¡T¦
Õ:¬N¦
Õ¦
¡cŕ΃¢j¡ŸTÓ`¦
¬N¡ÏÕj¦
¡T©iÓs¦
­NÄC΃¤`­¥¢jÈÁÈÁ¦
ž ŸcÅ
¯<ÍJ­N­½¢8Ã2¬Nž`®v¤sşg¢
¬½ÈÁÄ`¡T¢8Õj¦ŸgÓs¦Òö!¤6ÍJ­N¬ÑŸ‡©P¢jÎ/ŸTÓ`¬NÅÄ6ÍJÄ+¦
¡D-Ö «¦ÒÍj¡g¦ÁÍJ­ÇÅd¢|®!Íj¡dŸT¦Îƒ¤`­ŸT¢|ŸgÓ`¦Ò>ª :> ! Ä`¡T¢Jô‡¦D¥AŸc9Å ó ܝ tª ºƒ®!¡TÍjž!Ÿ
) J;ú (((jÂ/Íjžs£ ó Ü2>
ª CÜ÷º 2è sÊ 7 Â΃¢!¡2ÄsÍJ¡gŸg¬ÇÍJ­N­N©v΃¤`žs£C¬Nž`®v¢!¤`¡2Ò¢!¡gü<Ö
, íëtñ—
"!#"$ %&')(+*,*-./10324!5768 0:9;5<-==?>@.A-B"CED'FGDH54CED-.ACE*,I#.D'JK*MLN!@B!ECEKIO-P
I,.LN!EFQ.I,*&CE*,R;C:S-*,.*O!#TCED-.UVR*,/W.U0&X;YZR*5JK*,.I,*OR[.V/Q\!#P+]^D.*,R*_R;CEFQ.`%a-"!ER,_7!EKI,*O*5/D.SR
TL)_7!ETCEKI,-Pb"B*,I,DdcI5TCED-.+%a*OR;CED'.S./U*e!EDcI5TCED.U&XXX#f-g4hi=j":CEP'.KCEDI]^DdCk2Kl&T!CEhnm&P'P'T.V/+
oK%&p3q Prq .*,RI,st&*O.*O!#TP'DR*5/GR;C!E*5TFvuhnFQI#D.*,Rw[DdCEG-"CEB"C:/"*,PD'FGDdCE*5/Ck2"B*-xsyze{M|-}"~&r€E‚Oƒ„y;…†)yT{&€V‡ƒrˆ
‰‹ŠKŒs5oKfŽ4hn?="+o-
Ž%&p3q Prq .*,RI,ss68t&*,T!ES-*+68m&PI,-F*-V*eCE*O!EFGD.DR;CEDIR;C!E*,F‘u3hnFQI#D.*OR’VR*,/“.”S!#TFGFQT!R;2"R;h
CE*,FGR,D.–•—yTz˜E™7𐁛O‡eŠ‚#eE™3œ^z|{{G|z#E™s|ŠŒ‡|5ŒKeOžaŸ ezE&¡[‰ry-}yEŒ¢T™:†)y{3€V‡ƒiezš‚O‰neŠV‚ee™s‰‹ŠŒ‡‰‹Eƒ„‰r‚O|Š˜
£ |TƒN e{G|ƒ„‰„‚O{QEeƒ„™¤?-PFG*@-V]36—4!CED.hn&D'/*$T.V/WV6UDC!#T.V@*,/R,V¥PKw:*O!5Vo-
"¦’p:T!E.T!#/+¦":§¨DdCiw:!CE+[68:§©K/"w:T!#/+3]^[email protected]#D.*,R,ª#Š,…,yz#{G|ƒ„‰ryTŠ«|TŠ˜¬šVy;…eƒ„Ÿ|z
­ ‚# ŠVy-}yEŒ¢T™aŽ="?"ehn??fKa,<-<-j
gK®^7p*,PD'."m&S!E*OLN*-)%:*`]’]^Xk%’%^hiRB*OI,DdcVI54CED'.¯T.V/A/*ORIO!EDBCED-.AP'.S-S-*†)y{&€V‡ƒiezG°eƒ„Ÿyz±T`|Š˜
ª#š²&°³š¢Eƒie{@E™75ja,ŽKf5hE5Ž?gTj",<-=<"
j$tp*O!E.TC5+68+t/*,P.V/”p+6—T!!E*-sbL´Ckw’4!E*CE*OR;CED'.SQVR*,/—-.”L‹T!EFQPRB*,IODcI5TCED.R,µ+@CE*O!2”T.V/”
CEKPrsšy;…#ƒ„Ÿ^|TzE¶:ŠŒ‰‹ŠEeze‰‹ŠKŒW·y‡z#Š|-} Vj"Ž-=-f4hn?-g,<-<"
fK¥Mp^-S-/T.4¤VCE-FQ4CE*5/WCE*OR;CED'.SMLmT!E*OPr¸ RR;C#TCE*,I#V4!CER,_7«CE*,RDR,b*O¹M*,P'/U0&.D'¤-*O!ERDdCk2K0&¥MoT--
=%&7p-P-S.*,RD„º[p!ED.»RFQ"aXk.KC!E/IOCED-.©CE”CE*GXbY¼RB*,IODcI5TCED.½(aY%[Yb†)y{&€V‡ƒiezG°eƒ„Ÿyz±T`|Š˜
ª#š²&°³š¢Eƒie{@E™7,9;4>eo-g4hkgT<"a,<-=-f
<¥M hi%&]^*,.SQT.V/—$ bV¥!EDR.»FQ4!5VCEFQTCEDI&L‹.IOCED.VPsCE*,R;C&S*,.*e!#TCED-.”RD'.SMCE*$*O¾CE*,./*5/QcV.DdCE*
R;C#4CE*FQI#D.*FG/"*-¿’z;y5‚4Àa²[~†+Ohij"s5<<-Ž"
,"$%&Kb-]^5wK%s*,R;CED.SRL´Ckw:T!E*/*,RDS.GFG/*,PP*5/K2$cV.DdCE*:R;C#TCE*[FQI#D.*,R,?ª;¶¶)¶ ­ z|TŠe|?‚Oƒ„‰ryŠ3yŠ`šVy;…eƒ„Ÿ|z
¶:ŠŒ‰‹ŠEeze‰‹ŠKŒ™s4f=4hE5=?fK5<-f=
-$_TI#2KK6ÁtTV/*OP.V/Qp36—4!!E*-"0&RD.SPS*,!#TD'I&RB*,I,DdcVI54CED-.R’D.QRL´Ckw:T!E*&CE*,R;CED.Sµ"$I5R*3R;CEV/"2M-.
CE*RL´Ckw’4!E*TL7.—CEFQTCEDIRKw:52K+·y‡z#Š|-}ay;…š¢TEƒie{@šyk…eƒ„Ÿ|zEeo-o-oT<ThkoT,<-<-Ž
5obVº7DP'*O."*e!ES+~‡ƒny{M|ƒn|™a|ŠKŒ‡|,ŒKe@|TŠ˜ £ |?‚# ‰‹ŠeE™Pr$VI5-/"*,FGDI_7!E*ORR,a5<-fT"
,Ž"68+®VTDd!CEP'Ssa68m&P'IO-F@*+®^XkBV4CE*-s]3+¦-T!#/.+at+(a,2"I,KIe»“T.V/ÐVT.s03RD'.SUT.8uhnFQI#D.*CE
FG/"*,P+@¤D´/"*,MI5TRR*OCCE*!E*,I,T!#/*O!5)†‡zezeŠƒ^ª#EE‡Ve&‰‹Š`¶[}'‚Oƒ„z;yЉr‚ £ y5˜KO}‹} ‰‹ŠKŒ™Ž"+,"OhE5j-,<-<-g
Oba®Ä;Ddw:T!#"ts¤?-.8p^KI#FQ..ss®^+¥*,./*,»s68s3FQTP-8.V/8st&*5/TFGRDrs%a*OR;CR*OP'*OIOCED-.1R*5/Ã-.
c.DdCE*R;C#TCE*$FG/"*,PR,ª;¶)¶)¶ ­ z|Še|?‚Oƒ„‰ryŠyŠ“šy;…eƒ„Ÿ|z¶:ŠŒ‰‹Š#ez#‰‹ŠKŒ™4fg<Ohij-Ž",<-<"
5gtt&.*,.I-¨FG*OCE/@LN!:CE*&/"*,RDS-.QL+L„TPdC[/"*OCE*,IOCED-.Q*O¾"B*O!EDFG*,.KCER,ª;¶¶)¶ ­ z|ŠO|-‚Oƒ„‰ryŠyŠ©†)y{3€V‡ƒieze™
,<"ggeh;gg=5<-f"
,j"\$ 68sm3D*O!E-.R,aº¾CE*,.V/"D.SQCE*,R;C$R*5JK*,.I,*@4¤?*e!EP´TB8K2“D.¤?*O!CEDDPDdCk2K ­ U†)y{3€V‡ƒiezG·y‡z#Š|-} ™7Ž<"sŽ?og4hiŽ-Ž"
,<-<-jU
5f\$ 68m&D*O!E-.R,%a*,R;CED.SL´!E-F¼c.DdCE*[R;C#TCE*&FQTIeD.*-µ-*O¾CE*,.V/"D'.SD."¤-*O!CEDDPDCi2MCE$R*5JK*,.I,*,R, ­ †)y{&€V‡ƒiez
·y‡z#Š|-} ™-"o-o4hkoŽ-5<<?fK
,="\$ 68m3D*O!E-.R,68m&T!EFQT.s4%a*OR;CED'.S&I,.LN!EFQ.*CE33JKRDdhn.-."hi/*OCE*O!EFGD.D'R;CEDI)R;C!E*5F«u3hnFQI#D.*Txayz#{G|-}
~&r€E‚Oƒ„y;…M†)y{3€V‡ƒ„‰‹ŠŒ™5oKoTŽThn-?o+oT--
,<"68m&P'IO-F@*u3hnFQI#D.*OR’R[@RDR:L‹T!3/"2".VTFGD'I3R;2"R;CE*,FÅRB*,IODcI5TCED.sašVy;…eƒ„Ÿ|z&¶:ŠŒ‰‹Š#ez#‰‹ŠKŒQ·y‡z#Š|-} ™
ŽVj<Thkfj5<=-="
oT"685m3-PI,F@*-,®^5XkBTCE*)./4t3!E.V/"-V/"DR,T]^-FGBP'*eCE*7LN.IOCED-.VTP-CE*,R;CED.S[TLRE4L‹*OCi2hiIe!EDCEDI5TPKR;2"R;CE*,FGR,-šV|;…5eƒ„¢
|ŠV˜—Æ[O} ‰r|?ÇO‰‹} ‰‹ƒ„¢—‰‹Š8¶:{Qez„Œ‰‹ŠŒA†)yŠƒ„z;y-} ­ ‚# ŠVy-}yEŒ‰neOž^~¼¿[yEƒd€Vz#‰‹Šƒ&ÈTy-} ‡{Q3…#zy{ɃN @ª;x~†Ê•—yTzE±T; ye€½yŠ
šV|;…5eƒ„¢U|Š˜QÆ[O} ‰r|?ÇO‰‹} ‰‹ƒ„¢Q‰‹Š”¶:{Qez„Œ‰‹ŠŒ8†)yTŠƒ„zy} ­ ‚# Šy-}yEŒ‰re#+,2CE-.Qp^*5I#s®P'T!ED'/"0b$a5<<ThkoT7OhiŽ
l3T¤-*,F@*O!&5<-<-g
oK-68+m&PI,-F*@T.V/î^XkBV4CE*-’†)yz#zE‚Oƒ&š¢Eƒie{,ž7¡’‡"‰‹}˜‰‹ŠŒ—|W¡’‡"E‰‹ŠeE$¿:zy5‚#eE@šy} ‡"ƒ„‰„yŠ™b"B!ED.S-*O!)*O!EP'S"
p^*e!EP'D.+a5<<-=
oo$®^XkBTCE*$./—68m&P'IO-F@*V.CE*O![PK-»`TCI,FGBC#TDPDdCk2KVª#Š5…,yTze{M|ƒ„‰r‚E|™+oT"Ž-g<4hkŽ-f-oK5<<-j"
oTŽ"$®^TXkBTCE*^.V/68Tm&P'IO-F@*T3.$D.CE*OS!#TCED.CE*,R;CED.S3FG*OCE/CETCDRB!E4¤?*,/CEcV./TPPL‹PCER,Kª#Šƒiez#Š|Tƒ„‰ryŠ|}
·y‡z#Š|-}ay;…G†)y{&€V‡ƒiez £ |TƒN e{G|ƒ„‰„‚O#™sjŽ"a5g<4h#5f=5<<?f
o4$®^XiBVTCE*&./`68m3-PI,F@*-bB*,I,DdcVI54CED-.`.V/MCE*,R;[email protected]*,.*O!#TPD'HO*5/`FQTIeD'.*,R,µ$B!E*,R*O.C#4CED-.`.V/Q
I5TR*$R;CEV/"2KšVy;…eƒ„Ÿ|z ­ eEƒ„‰‹ŠŒ™Ëeze‰ Ì^‚E|ƒ„‰ryŠ©|ŠV˜MÆ[O} ‰r|?ÇO‰„} ‰Nƒ„¢™V="j"Ohi=-,<-<-=
og$®^^XkBV4CE*Ã.V/–68^m&P'IO-F@*’ÍFG*OCE/ÎL‹T!`!E*Oc.D.SÏT.V/½CE*,R;CED.SAS-*,.*O!#PDR*5/–FQI#D.*”RB*,IODcI5TCED.R,
ª#ŠƒiezeŠV|ƒ„‰ryŠV|-}·y‡z#Š|-}ay;…M†)y{&€V‡ƒiez £ |ƒN e{G|ƒ„‰r‚OE™sj-=a,<?f4hkoK5<"s5<<-="
48
oTj"$®^+XkBTCE*@.V/©68+m&-PI,F@*-st&*O.*O!#4CED'.SUCE*,R;C$R*5JK*,.I,*OR&LN!EFÉ.-."hi/*OCE*O!EFGD.D'R;CEDIS-*,.*O!#PDR*5/©R;C!E*,FÉu3h
FQTIeD'.*,R,Vxayz#{G|-}V~r€‚Oƒ„y;…M†)y{&€‡"ƒ„‰NŠŒ™4oKV?ŽThn?g="o-"
of$®^XkBTCE*-V68t&*,!ES*./—68m&P'IO-F@*V%a*OR;CED'.S—9„R;C!E*5TFW>^u3hnFQI#D.*OR,RFGDdCCE*5/
oT="Â¥V5¤D„sšŸ)‰Nƒn‚# ‰‹ŠŒW|Š˜x‰‹Š‰‹ƒi&~‡ƒny{M|ƒn| ­ EyTze¢T™a6UI4t3!#,w’him3DP'Pap^K-»U]^-FGB.K2K5<-f="
oT<"@+(+*,*MT.V/868 :T..VT»-T»D'R,_7!ED.IOD'BP*,R$./ÃFG*OCE/R3L^CE*OR;CED'.S`c.DdCE*R;C#4CE*MFQI#D.*,R&h[³R!E¤?*e2K+¿’z;y-ˆ
‚#E˜‰‹ŠŒyk…ƒN ª;¶¶)¶:=Ts5-<ThE-5oŽ5<-<j"
Ž"t(+"+t¤p^KI#FQT..”T.V/“V_*OC!E*,.»?V%a*,R;CR*OP'*OIOCED-.ÃVR*,/—-.”I,[email protected]."hk/"*OCE*O!EFGD.DR;CEDI
c.DdCE*OhnR;C#TCE*WFQI#D.*ORRD'.SÓS*,.*e!#PDR*5/¬§¨B"hnFG*OCE/7ª;¶)¶¶ ­ z|ŠO|-‚Oƒ„‰ryŠ—yЬšy;…eƒ„Ÿ|zG¶’ŠKŒ‰‹ŠEez#‰‹ŠŒ™
oT"aO?<4h#,j"5<<
Ž-bKlTDCET.V/Q68"%:R.52FQK®VTPdC’/"*OCE*,IOCED-.GLN!:R*,J*,.KCED'PVFQTIeD'.*,R,"¿:zy5‚3ª;¶)¶¶Ïxa|‡"} ƒ ­ y}'ez|Šƒ3†)y{@ˆ
€V‡ƒiÀ:†)yŠ5…,À'™a,<-="
Ž-o$$a_*eC!E*,.»?"+®VPdC$FG/*,Pdhi/"!ED¤?*,.”CE*,R;C/"*O!ED¤-4CED-.8L´!E-FÁc.DdCE*@R;C#4CE*MFG/*OP'R,µsT..TC#TCE*5/ÃDPD-ST!#B2K+D.
£ y5˜?O}‹} ‰‹ŠŒM|TŠ˜8ˁez#‰ Ì^‚E|ƒ„‰ryTŠÃy;…:¿[|z|}‹}'O}"¿’z;y5‚#e#OeE™®^]:TRR*,H-]3"¦?T!#/p3\-H,52K"68 @?\2T.G*5/R,"(+l]’b
oT-j?fK5<jThko-g+oT--
ŽŽ"¥M ¥M4b".V.D?T.V/ %&5"!#"58B!ECEKIO-P?CE*,R;CED.S’B"!EKI,*5/"!E*-V†)yT{&€V‡ƒiez)°$eƒ„Ÿyz±T:|ŠV˜[ª#š"²3°¯š¢Eƒie{#™
gKoT=?g4hkoT<?fa5<-=="
ŽT@ _-b"D'/./%& hn¥M(s*,.S®T!EFQPFG*OCE/RaLN!)B!ETCEKI,-PCE*,R;CED.S"µ-&/*OC#TD'P*5/R;CEV/2K-ª;¶¶)¶ ­ z;|Še|?‚Oƒ„‰„yŠ
yŠ“šVy;…eƒ„Ÿ|zE&¶’ŠKŒ‰‹ŠEez#‰‹ŠŒ™5g5Ž4hnKoj5<=-<
Ž-g
^.Sp3./03!#TP„m_7!ETCEKI,-P"I,-."L‹T!EFQ.IO*^CE*,R;C7S-*O.*O!#4CED'.MRD.S&F@PdCED'BP*^0&X;YÎR*5JK*O.I,*,R7T.V/$4¤?*O!EP'B"h
£ ž[†)yT{@{@‡Š‰r‚E|ƒ„‰ryŠ#™7~z‚# ‰NƒiE‚Oƒ„‡zeG|ŠV˜M¿:zyƒny5‚Ey-} E™a%^w:*,.KCE*-%:*l3*OCE*e!EP´T.V/"R,
BD'.Ss~† £ š"ªTœ&
† £—
b*,BCE*,F*O!o4hko-fKa-,=ThE4of,<-<"
49
50
Complete Behavioural Testing
(two extensions to state-machine testing)
Mike Stannett
MOTIVE Research Associate
Verification and Testing Research Group
Dept of Computer Science, University of Sheffield
Regent Court, 211 Portobello Street, Sheffield S1 4DP, United Kingdom.
[email protected]
Abstract. We present two extensions to state-machine based testing. The first allows
us to extend Chow’s W-method (CHOW) to machines with non-final states, thereby
including infinitely many more specifications within the scope of the method. The
second is a radical extension to Holcombe and Ipate’s 1998 stream X-machine
testing method (SXMT), itself an extension of CHOW. This method involves the
construction of a bespoke model of computation, the behavioural machine
(β−machine), which extends Eilenberg’s 1974 X-machine concept. Examples of
β−machines include X-machines, stream X-machines, semi-automata and automata,
and even some concurrent system specifications. Despite this generality, we
demonstrate an algorithm for generating complete behavioural test sets for systems
specified by β−machines.
Keywords. Algebraic models of computation, Chow’s W-method, complete
functional testing, concurrent systems, object-oriented testing, software testing,
stream X-machine (SXM).
Acknowledgement. This research is sponsored by the UK-EPSRC through the
project, MOTIVE (GR/M56777: Method for Object Testing, Integration and
Verification; principal investigator: Dr Anthony J. Simons; co-investigator: Prof W.
Mike L. Holcombe).
1
Introduction
This paper describes a unified approach to testing sequential and concurrent systems, which
extends both Chow’s W-method (CHOW) for verifying designs presented as state machines
[Cho78], and Holcombe and Ipate’s SXMT test-generation method [HI98] for the stream Xmachine (SXM) [Lay93]. In addition to covering more classes of specification model, our
methods also allow the coverage of more machines within each of the standard classes. Both
CHOW and SXMT require the system specification to be a minimal completely specified machine,
in which every state is final and precisely one state is initial, and these constraints ensure that
infinitely many specifications are untestable within the method. In contrast, we present a simple
technique, super-minimisation, that allows machines with non-final states to be put into a form
that satisfies the CHOW- and SXMT-style preconditions. Moreover, super-minimisation results in
a machine with up to 50% fewer states than the standard minimised variant of the original semiautomaton. Because the number of tests required to characterise a machine’s behaviour depends
on the size of the underlying state set, our technique can result in significantly smaller test sets.
Although there are differences between CHOW and SXMT, these are essentially imposed by the
different natures of the systems being modelled (automata and stream X-machines,
respectively). We present a unified model for state-machine-style specifications, which we call
the behavioural machine (β−machine). This model includes many standard sequential models as
instances, including automata, stream X-machines and standard X-machines, but also applies to
concurrent models. Moreover, β−machines can be equipped with a general purpose testgeneration method of which CHOW and SXMT are instances. Just as SXMT can be used to
51
generate complete functional tests of sequential systems, so the β−machine method (β−method)
can be used to generate complete behavioural tests for β−machines of any sort.
1.1
Structure of the paper
In Section 2, we illustrate our simple super-minimisation technique for including machines with
non-final states within the remit of CHOW and SXMT. In Section 3 we present our unified
behavioural model, the β−machine, for state-machine-style computations. We show that Xmachines [Eil74, Hol89, Sta90], automata, and even some concurrent specifications are all types
of β−machine. In Section 4, we summarise and extend CHOW and SXMT. We demonstrate an
algorithm for generating test-sets for β−machines, and prove that they are behaviourally
complete.
1.2
Notation and conventions
Finite state machines can be defined both with and without outputs. Following [LP84], a finite
state machine (FSM) without output will be called a semi-automaton, and an FSM with output
will be called a automaton. Throughout this paper, F denotes an FSM with input alphabet A
(also denoted In), output alphabet Out (if F is a semi-automaton, we take Out = In and regard
each label a as the input/output pair a/a), state set S, initial state set I ⊆ S and final (aka
terminal) state set T ⊆ S. Given any U⊆S and a∈A*, we write U a to mean that there exists a
path in F, labelled a, starting at some s∈U. Likewise, U a V means there is a path labelled a
from a state in U to a state in V. If a = (a) is a string of length one, we write →a in place of a,
and if U = {s} is a singleton, we write s a in place of {s} a. F is completely specified (or
complete) if, for each s∈S and a∈A, there is at least one transition s→a, and deterministic if
there is at most one such transition. A language L ⊆ A* is a (state) cover for F if, for each state
s, there is some a∈L with I as. Given any language L⊆A*, and any integer n, we define L(n) =
∪{Lk | 1 ≤ k ≤ n}∪{ε}, where ε is the empty string over A. For n≤0, this reduces to L (n) = {ε}.
If F has at least one cover, we say that F is accessible. If, given any states s ≠ t, we can find a
with s a t, then F is said to be (strongly) connected; any connected machine is accessible.
Conversely, if an accessible machine F has only one initial state and is equipped with a ‘reset’
action which returns the system to this state on demand (i.e. if there is a transition s →reset I from
each state s), then F is strongly connected.
2
Testing semi-automata with non-final states
Consider the simple semi-automaton (FSM without output) shown in Figure 1a. We can think of
this as the specification of a system which is allowed to perform any combination of as and bs,
provided the last operation it performs it definitely an a (for example, industrial machinery
might carry the specification “power must be turned off at the end of the shift”). The figure
shows the minimal machine for the relevant language A*a, where A={a,b}. It has two states, of
which the one on the right is final and the one on the left initial (but not final).
a
b
a
b
Figure 1a. Minimal semi-automaton for A*a
52
We can regard any semi-automaton as an automaton by interpreting each symbol a as the
input/output pair a/a, so it’s meaningful to consider this machine in relation to CHOW. In fact,
however, neither Chow’s W-method nor its functional extension, the SXM testing method, can
be used to generate tests for systems with this sort of specification, because these test methods
require all states in the minimised specification machine to be final, and here we have a nonfinal state. The minimal versions of infinitely many specifications fail the very stringent
conditions of these methods.
To overcome this problem, we need to re-express the specification as a minimal machine in
which all states are final. We do this by super-minimising the machine. Rather than representing
each symbol a as the pair a/a, we instead append a ‘fake’ output symbol to capture the
termination behaviour of the relevant transition. If the transition ends at a final state we add the
‘output’ T (true), and otherwise F (false). The initial arrow is labelled ε/F (in this example) to
indicate that ε is not deemed a member of the behaviour. The distinction between final and nonfinal states is now superfluous, because all of the relevant information is encoded by the T/F
components of the transition labels (Figure 1b). We can therefore declare all states in this
‘transducer’ representation to be final, without losing any information.
a/T
b/F
a/T
b/F
ε/F
Figure 1b. Generated machine for A*a
Because we have imposed a new state configuration, there is scope for further minimisation.
Minimising this particular machine yields the minimal machine in Figure 1c, with just one state.
b/F
a/T
ε/F
Figure 1c. Super-minimised β−machine for A*a.
Consequently, we have achieved a 50% reduction in the state set, even for a very simple
machine that was already minimal. This is a significant saving, and has the important corollary
that Chow’s W-method can now be applied to a behaviour that was previously untestable by this
method. To see how to use the method, suppose we are given a 2-state implementation to test. In
this case the implementation under test (IUT) has one more state than the (super-minimal)
specification. We use Figure 1c to choose a cover, say C = {ε}, and a characterisation set W =
{a} and construct the CHOW test-set TS = CA(2)W, i.e.
TS = { a, aa, ba, aaa, aba, baa, bba}
Looking at the specification, we see that the accept/reject responses for each of these strings is
a
T
aaa TTT
aa
TT
aba TFT
ba
FT
baa FTT
bba FFT
Have we successfully generated a test set? To find out, suppose Imp is a 2–state semi-automaton
with the accept/reject patterns specified. Call the states L (left) and R (right), with L initial. It is
clear that transitions L →a and L →b must exist, because there are extensions of these 1-
53
transition paths that are accepted. Moreover, the first clearly leads to an acceptance state and the
other to a rejection. There are only two layouts that meet these criteria
a
b
b
a
Looking at the length-2 patterns in the test set allows us to complete the diagrams (again we use
the acceptance of length-3 paths to determine that the second b transition must exist)
a
b
a
b
b
a
a
b
The languages accepted by these machines differ only as to whether they include ε. We contend
that “testing ε” is a meaningless activity, because no test based on the empty input string ε can
be assured of generating any observable output. This is why we require the designer to specify
explicitly whether or not ε is to be included in the language. In this case we have the
specification ε/F, so we reject the right-hand machine.
Clearly, the only 2-state semi-automaton that satisfies our test-set requirements is the machine
we started with, so our 2-state-machine test set is indeed working. The reason it works is
straightforward: the super-minimal machine precisely captures the accept/reject behaviour of the
original semi-automaton. Consequently, any machine constructed to match the behaviour of the
super-minimal machine automatically matches that of the specification machine itself.
Moreover, we can obviously extend the method to allow testing of more complex machine
types. So, for example, we can generate tests for automata or stream X-machines with non-final
states by extending Out to include the T/F information, and likewise, by adding T/F information
to the fundamental datatype X, we can generate test sets for X-machines with non-final states
(see below for an explanation of X-machines and stream X-machines).
One word of caution. We have seen how we can regard semi-automata as automata with T/F
outputs, where a transition emits T if and only if it leads to a final state, and emits F otherwise.
Chow’s method applies to this automaton, and hence to the underlying semi-automaton, but we
have to be very careful when applying the method, because the behaviour of the machine F is
different when viewed as an automaton, as compared with its behaviour when viewed as a semiautomaton. As a semi-automaton, all that matters when we supply an input string a is whether or
not it is recognised. But as an automaton, we also have the history of acceptance/rejection
decisions as the string was submitted. This extra information is vital to Chow’s method, so we
need to make it available. We accordingly require of any test set that it be downward closed.
That is, if a is in the test set, so is every prefix of A. To make this unambiguous, we will write
L↓ to denote the downward-closure of the language L. Obviously, if L is finite, so is L↓. The
extent to which the need to use downward closures matters is open to debate. In the example
just considered, for instance, it is clear that the information obtained from the input strings T
and TT is also available in the output recorded for the longer string TTT. So while downward
closure is necessary as a theoretical precaution, it may have little relevance to practical test
generation.
54
3
Behavioural frameworks and β−machines
Whenever we draw a state-machine diagram, we implicitly make certain assumptions about the
symbols used to label the transitions. These labels can vary considerably in algebraic
sophistication, but always share certain key properties. To put things in context, let’s review the
difference between automata, semi-automata, X-machines and stream X-machines.
All four machine types are based on the standard finite state machine, but differ as to the labels
they associate with transitions. Rather than deal with large numbers of definitions, we’ll assume
instead that F is a semi-automaton with alphabet A, and that B is some set of behavioural labels
that we’re going to associate with transitions. In other words, each symbol a becomes the name
of a behaviour in B, and we can represent this by supposing the existence of some labelling
function Λ: A→B.
Loosely speaking, the labelling involved in each of the models is as follows. For semi-automata
the labelling is the identity map, Λ(a) = a, and for automata we essentially take B = In×Out. For
an X-machine (XM), the labelling maps A into R(X), the set of all relations of type X↔X. For a
stream X-machine (SXM), we map A into a set of relations of type In×Mem↔Mem×Out, where
Mem is a potentially infinite auxiliary set called the machine’s memory.
The basic operations involved in representing languages by semi-automata are concatenation
and aggregation. Concatenation occurs when one transition follows another. Thus, for example,
when we regard the two transitions →u→v as a single path uv, we are implicitly assuming that
the labels u and v can be concatenated to yield the string uv. Notice that the type of uv differs
from that of u and v themselves. This is unacceptable for our purposes, because we want to
build a model of behaviour which is self-contained. The concatenation of two behaviours should
be another behaviour – it should have the same type. We can overcome the problem easily by
thinking of u and v as the strings (u) and (v) of length one. Now, behaviours are represented as
strings, and the concatenation of the two strings (u) and (v) is again a string. Aggregation occurs
when we combine the various successful paths through a machine and regard them as a single
language. Again, this seems to violate our principle that all behaviours should be of the same
type, because we are operating on strings and generating sets of strings. Fortunately there is
again a simple solution. Wherever we have a string u, we regard it as a language {u} with a
single element. Looked at in this way, aggregation is simple set-theoretic union. Given these
interpretations, we see that semi-automata can be modelled by taking a labelling of the form
Λ(a) = {(a)}, which replaces each symbol a with the singleton language containing the singlecharacter string (a). This is important for our purposes because we now have a model of FSM
computation in which all components are of the same basic type (in this case ℘A*), and this
type is closed under concatenation and aggregation.
More generally, we take B to be any algebraic structure that satisfies the following conditions.
These simply express basic rules that can be established to be necessary by considering FSM
transition diagrams, and asking the question “what must be true for B to be closed in this
situation?”
3.1
Regular sets over monoids
Suppose (B,⊗) is a monoid, i.e. a semigroup with an identity element 1. Given any alphabet A of
the same cardinality as B, we set up a 1-1 correspondence Λ: A → B. This extends to a monoid
homomorphism Λ*: A*→B given by Λ(ε) = 1B, and Λ(b1,…,bn) = b1 ⊗ … ⊗ bn. This in turn
extends to a function Λ**: LANG(A) → ℘B given by Λ**(L) = { Λ*(a) | a∈L}. If L is a regular
language over A, we’ll say that Λ**(L) is a regular subset of B. The set of all regular subsets of
B will be written REG(B). It includes ∅ = Λ**(∅) and all finite subsets of B.
55
Notice that ℘B is itself a monoid, with identity element {1B}, where we define U ⊗ V = {u⊗v |
u∈U, v∈V}, so it is meaningful to discuss regular subsets of ℘B. Moreover, REG(B) is also a
monoid with these choices of operation and identity.
3.2
Definition (Behavioural framework)
We will say that a triple B = (B,⊗,Σ) is a (behavioural) framework provided
1. (B,⊗) is a semigroup, with a 2-sided identity element, 1B. We call ⊗ concatenation.
2. Σ: REG(B)→B is a function, called (regular) aggregation, satisfying
a. Σ∅ = 1B
b. Σ{b} ≡ b
c. Σbi ⊗ Σbj ≡ Σ{ bi ⊗ bj }
d. ∀ regular {Vi | i∈I } ⊆ REG(B) : Σ∪{Vi | i∈I} ≡ Σ{ ΣVi | i∈I}
If B is a framework, we can define a commutative binary addition ⊕ by u⊕v = Σ{u,v}.
Frameworks are ubiquitous in theoretical computer science and mathematics. The distributive
laws (2.c) means that frameworks are closely related to algebraic rings, though the concepts are
not identical because ⊕ need not allow inverses. In particular, if X is any datatype, the monoid
R(X) of all relations X↔X is a framework, when we take ⊗ to be relational composition, and ⊕
to be set-theoretic union. Likewise, if we treat Σ as inf and ⊗ as sup, then every frame (hence,
every topology) is a framework, but again the converse is not true, because we don’t require ⊗
to be commutative.
3.3
Definition (β−
β−machine)
β−
A behavioural machine (β−machine) is a pair (F,Λ), written FΛ, where F is a semi-automaton
over some alphabet A, and Λ: A→B is a function, where B is a behavioural framework.
Given a string a recognised by F, the path behaviour computed by a is the behaviour Λ(a),
where we define Λ(ε) = 1B and Λ(a1…an) = Λ(a1) ⊗ … ⊗ Λ(an). The behaviour of FΛ is the
aggregate of its path behaviours, |FΛ| = Σ{ Λ(a) | a ∈ |F| }.
3.4
3.4.1
Examples
LANG(A)
The set LANG(A) of languages over A is a framework, where ⊗ is standard language
concatenation, and Σ is set-theoretic union.
3.4.2
MAZURKIEWICZ TRACE LANGUAGES
(Mazurkiewicz) trace languages were introduced in [Maz77; see also CF69] as a tool for
modelling Petri net behaviours. They have since become one of the most popular models for
concurrent semantics [Gas90, Arn91, KS92, Sta94, DR95, DG98, DG02].
Each trace language can be viewed as a quotient A*/≡, where ≡ is a congruence on A*. That is,
whenever a ≡ b, we also have ac ≡ bc and ca ≡ cb, for all c. This congruence ensures that
56
concatenation of traces is well-defined, and we can construct languages (subsets of A*/≡) just as
we could construct LANG(A).
3.4.3
REG(A)
The set REG(A) ⊆ LANG(A) of regular languages over A is a sub-framework of LANG(A). This is
not obvious – indeed, our formulation of behavioural frameworks was originally motivated by
the related question: under what circumstances is a union of regular languages again regular?
Obviously, an arbitrary union of regular sets need not be regular, because any non-empty
language is the union of its (necessarily regular) singleton subsets. The framework concept
embraces one answer to this question: any regular union of regular languages is again regular.
This is what we now prove. We need to do this in any case, to verify that our choice of
aggregation operator Σ is well-defined. In general, aggregation is represented by the operator Σ:
REG(B) → B, and since we are taking B = REG(A), our aggregation operator must have signature
Σ: REG(REG(A)) → REG(A). By hypothesis, we are taking Σ to be set-theoretic union, ∪, so we
need to verify that whenever we are given a regular set of regular languages, their union is again
a regular language.
Theorem. Any regular union of regular languages is regular. Formally, suppose that {Li | i∈I }
is a regular subset of REG(A), and let L = ∪{Li | i∈I }. Then L ∈ REG(A).
Proof. By definition, there is some regular language L0 over some alphabet A0, and some
labelling function Λ0: A0 → REG(A) with Λ0**(L0) = {Li | i∈I }. Because L0 is regular over A0, it
can be generated by a regular expression e0 over just finitely many of the symbols in A0, so
without loss of generality we can assume that A0 is finite. We can also assume that A0 is nonempty, since otherwise L would be finite and we’d have nothing to prove. Without loss of
generality, then, we can write A0 = {a01, …, a0n} for some finite non-zero n. Setting L0i = Λ0(a0i),
we observe that each L0i is a regular language of A, so we can choose regular expressions e1, …,
en, all defined over A, where each ei generates the corresponding L0i. Let e be the expression
over A obtained by simultaneously replacing every occurrence of each symbol a0i in e0 with the
corresponding expression ei. Then e is a regular expression over A. It is now straightforward
(though rather tedious) to show that e generates the required union, L = ∪{Li |i∈I} = ∪Λ0**(L0).
So L is regular.
3.4.4
AUTOMATA
As we saw in the introductory preamble, semi-automata are simply β−machines over B =
REG(A). Automata are slightly more complex, but essentially straightforward. We won’t prove
the details here, because the methods are identical to those used in the more difficult case of
stream X-machines, below.
3.4.5
X-MACHINES
The X-machine is a computational model introduced by Eilenberg [Eil74], that forms the basis
for many subsequent models of computation [Sta90, Sta91, Lay93, LS93, BeH96, BCG+99,
Sta01]. At its heart, an X-machine is essentially a semi-automaton whose transitions are labelled
by operations of type X↔X. Each successful path through the machine corresponds to an
operation obtained by composing the relations on the various transitions, and the behaviour of
the entire machine is defined to be the union of the path behaviours. Clearly, this is just a special
case of the β−machine construction, where we take B to be the relational monoid R(X) of all
relations on X, with ⊗ equal to relational composition and Σ equal to set-theoretic union.
57
3.4.6
STREAM X-MACHINES
Stream X-machines were introduced by Laycock [Lay93] as a version of the X-machine
equipped with the stream handling capabilities of an automaton. The SXM captures the idea that
a system handles inputs by changing its internal memory states; an SXM is given by a semiautomaton whose transitions are labelled by operations of type Mem×In ↔ Out×Mem. If the
system memory is currently mem, and the input in is received, then crossing a transition labelled
φ causes the machine to change memory state to new_mem and to generate some output out,
where (out, new_mem) ∈ φ(mem, in). Clearly, all automata (hence all semi-automata) can be
modelled as SXMs with unchanging memory. In fact, all SXMs can be modelled as standard Xmachines.
Given an SXM with operations of type Mem×In ↔ Out×Mem, we represent it as an X-machine
with type X = Out* × Mem × In*. Each relational label φ: Mem×In ↔ Out×Mem is represented
as the associated relation φ*: X↔X given by
φ*( out, mem, in::in) = { (out::out, new_mem, in) | (out, new_mem) ∈ φ(mem, in) }
In this form it’s easy to see where the name comes from. The behaviour of an SXM causes input
streams to be converted into output streams, with the exact conversions being mediated by an
embedded X-machine of type Mem. Since all X-machines are β−machines, the same is true of
SXMs and automata.
4
A general test method for β−machines
A key motivation behind Laycock’s introduction of the SXM was the existence of a general testgeneration technique for automata. Chow’s W-method is based on the idea that states in an
automaton can be characterised by input-output behaviours.
4.1
Chow’s W-method
We presuppose that a system is specified as an automaton, Spec, and that a second automaton,
Imp, has been generated as an implementation. We have complete knowledge of Spec, and can
therefore assume that it is minimal (if not we minimise it). For technical reasons, we need to
assume that Spec and Imp are defined on the same alphabet A, and that we can reliably estimate
the number of extra states in Imp. Our goal is to determine whether or not |Imp| exactly matches
|Spec|, and our lack of knowledge of Imp’s internal structure forces us to make this
determination by supplying various input streams, and observing the corresponding outputs. The
basic strategy of Chow’s method is as straightforward as it is elegant. We supply a set of input
sequences that take us to each state of the machine in turn, and check, once we get there, that it
admits precisely the right set of ‘next-state’ transitions. In this respect it has much in common
with other early test techniques [Moo56, Koh78].
4.1.1
DEFINITION (CHARACTERISATION SET FOR AUTOMATA)
Recall that S is the state set of the machine F. Given any W ⊆ In*, we can define a function fW: S
→ [W↔Out*] by
fW(s)(w) =
(w,out)
out
if s
undefined
if no such path exists
T
58
If the function fW is 1-1 and each of the relations fW(s) is actually a function fW(s): W → Out* (so
that each input stream w generates a single well-defined output stream out), then W is a
characterisation set.
Remark. For F to have a characterisation set, it must be minimal. For if F is not minimal, there
will be states s ≠ s’ which cannot be distinguished by their contributions to input-output
behaviour, and under such circumstances we must have fW(s) = fW(s’): so W would fail to be a
characterisation set.
Characterisation sets allow us to decide what state the machine must have been in, and can be
used to check that test sequences have caused the machine to migrate to a required home state.
To construct a test set, we first choose a cover C for F (this requires F to be accessible and
deterministic), and then a characterisation set, W (requires F to be minimal). To test an
implementation we use C repeatedly to visit each state in turn (this typically requires F to be
connected, i.e. to have a reset mechanism); then we supply each symbol in A (requires F to be
complete), so as to exercise every transition; then we check that the transition took us to the
appropriate next-state using W.
4.1.2
THEOREM (CHOW)
Suppose that Spec and Imp are automata over the same alphabet A. Suppose, moreover, that
Spec is minimal, complete, connected and deterministic (so it has precisely one initial state), and
that all states are final. Let C be a cover, and W a characterisation set, for Spec. Suppose Imp has
no more than n more states than Spec. Then Spec and Imp are equivalent if and only if they
generate the same output string for every input string in CA(n+1)W.
Remarks. (1) In its original form Chow’s theorem takes the test set to be of the form TA(n)W,
where T is a ‘transition cover’ for F. In order to keep things simple, our statement of the
theorem uses the fact, for complete machines, that CA(1) is a transition cover whenever C is a
state cover, so that a suitable test set is CA(1)A(n)W = CA(n+1)W. (2) Recalling our method for
machines with non-final states, it is clear that Chow’s method can be extended to infinitely
many more specifications than currently included.
4.2
SXM Testing
The strong similarity between SXMs and automata was the original motivation for their
introduction; Laycock [Lay93] recognised that Chow’s method could be extended to cover
systems specified by SXM. The technique was largely perfected in [Ipa95, IH97, HI98] and has
been extended more recently to include non-deterministic specifications [HH01a, HH01b]. It
has been applied both theoretically and in practical system testing [FHI+95, BH01, Van01], and
support tools are becoming available [EK00, KEK00a, KEK00b].
As with Chow’s method, we assume the existence of a minimal, complete, connected and
deterministic SXM specification Spec, and an SXM implementation Imp, and need to decide
whether or not they have the same behaviour. The basic strategy involves constraining Spec so
that the equivalence of Spec and Imp follows from that of their underlying automata.
Recall our basic requirement that Spec and Imp should be defined over the same alphabet. In the
present context, this means that they should use the same transition relations, or equivalently,
that they use the same labelling, Λ.
In Chow’s method, characterisation is used to identify machine states, and relies on the fact that
individual letters can easily be distinguished (the output streams out1 and out2 are distinct if and
only if they differ in one or more letters, so we only need to be able to distinguish the
59
latter).This principle no longer applies for SXMs, because it is impossible to guarantee a priori
that distinct label relations can be distinguished. For example, suppose two relations differ only
at one particular (mem, in) pair. Unless we know a priori that we need to test the relations with
this particular (mem, in) combination, we could wrongly conclude that the correct relation is
implemented when in fact it is not. This is a particular problem because Mem may well be
infinite and even uncountable, so we cannot exhaustively test all (mem, in) pairs. Consequently,
we strengthen characterisation by requiring output distinguishability; there should be a priori
known (mem, in) pairs that can be used to distinguish between the relations used to label the
transitions of the machine.
The concept of cover now needs to be strengthened as well, because it is not enough to ensure
that we reach every state in turn. When we reach a given state s, we need to be certain that mem
has taken on a value suitable for characterisation to be possible – we have to arrive at s with
mem appropriately set for firing transitions with the key (mem,in) input pairs. This is typically
established by imposing the (somewhat stronger) requirement that for each mem, there is some a
priori known input in for which (mem, in) can be processed and at the same time contribute to
the characterisation process. This can be regarded as the SXM version of completeness, though
it is not quite the published Holcombe/Ipate “test completeness” property [HI98, p. 181], which
omits the contribution-to-characterisation requirement.
Finally, of course, it is not enough just to know that Imp is giving the correct responses, because
this could occur by accident. If the implementation is written in a programming language whose
compiler is faulty, we could well be generating the correct responses for each of the key (mem,
in) test inputs, and yet still not have a correct system. We therefore impose the requirement that
the relation labels themselves must be a priori correct.
4.2.1
THEOREM (HI98, P.185)
Suppose that Spec and Imp start with the same initial memory value, use the same set of relation
labels Φ, and that Φ is output distinguishable and complete [in our sense, above]. Assume that
the associated automaton of Spec is minimal, complete, connected and deterministic (so it has
precisely one initial state), and that all states are final. Suppose also that the associated
automaton of Imp has no more than n more states than that of Spec. Then TS is a test set for
|Spec| where TS is Chow’s test set.
It is normally stated that the correctness of labels can be determined recursively, by applying
this same technique to the labels themselves (see e.g. HI98, chapter 8). This is only partially
true, however, because we have assumed extra properties for these relations as part of the price
for using them during testing. It is not enough simply to prove that the label relations are correct
in their own terms, because they also have to satisfy the consequences of our completeness and
output distinguishability criteria. This means we have to prove properties that hold for all values
of Mem, and this may not be a tractable, or even a possible, problem. For example, the function
test: N → BOOL given by the program {while(n>1){ if (even(n)) n=n/2; else n = 3*n+1;} return
true;} is clearly computable, and we can even prove that it correctly calculates a particular
specification of interest to number theorists, Consequently, we can (by traditional arguments)
use test as a valid label in an SXM, because it is correct in its own terms. But this is not valid,
because no-one currently knows whether test is a partial or a total function – we can prove its
correctness in its own terms, but we may not necessarily be able to prove the extra requirement,
totality, entailed by our completeness criteria.
60
4.3
General behavioural testing
It is clear that the SXM test method relies on properties that can be expressed entirely in
framework-theoretic language. It is not surprising, therefore, that the method can be extended at
a stroke to include all behavioural frameworks.
Henceforth, suppose that B = (B, ⊗, Σ) is a framework, and that FΛ is a β−machine with
alphabet A. Write Φ = Λ(A) ⊆ B. We call the members of Φ behavioural labels. Recall also that
theoretical caution requires us to regard test sets as downward closed; this is reflected in our
statement of Theorem 4.3.3 below.
The first step is to define what we mean by a characterisation set for a β−machine, because we
can no longer rely on the output language Out* for characterisation purposes (it isn’t part of the
general framework definition).
4.3.1
DEFINITION (CHARACTERISATION SET FOR SEMI-AUTOMATON)
Given any W ⊆ A*, we can define a function fW: S → W→BOOL⊥ by
fW(s)(a) =
a
T
if s
F
if no such path exists
T
If the function fW is 1-1, we call the language W a characterisation set for F. If, in addition, for
each s there is at least one a∈W for which fW(s)(a) = T, we call W a positive characterisation set.
If F, G are semi-automata over A, we say that two states s∈F and t∈G are W-equivalent if fW(s)
= fW(t), where fW(s) is evaluated in F and fW(t) in G.
It is worth recalling that characterisation sets can only be constructed for minimal machines,
because non-minimal machines contain indistinguishable states. We can generally construct a
positive characterisation set piecewise. That is, we first find languages that distinguish s1 from
s2, for each pair (s1,s2), and then take the union of all of these component languages. In general
this is less efficient than constructing a global characterisation set, but may be simpler in
practice.
4.3.2
DEFINITION (DISTINGUISHABLE BEHAVIOUR LABELS)
Let ∂: Φ → [B → BOOL] be the function which maps each φ∈Φ to the predicate
∂(φ)(b) ≡ (b = φ)
We call ∂ the distinguishing function for Φ. If ∂(φ) is decidable for all φ∈Φ, we say that Φ is
distinguishable.
In general, this is the best we can do, because the actual proof that ∂ generates decidable
predicates will depend on the exact nature of B. For SXMs, for example, we avoid the
requirement that ∂(φ) be decidable by imposing the stronger requirement of outputdistinguishability instead.
4.3.3
THEOREM (COMPLETE BEHAVIOURAL TEST SETS)
Suppose that SpecΛ and ImpΛ are β−machines over the same framework with the same Φ, and
that Φ is distinguishable. Suppose that Spec is minimal, complete, connected and deterministic
(so it has precisely one initial state), and that all states are final. Let C be a cover and W a
61
positive characterisation set for Spec. Suppose Imp has no more than n more states than Spec.
Suppose also that the initial termination behaviours of Spec and Imp are identical (i.e. the
unique initial states of the two machines are W-equivalent). Then SpecΛ and ImpΛ have the same
behaviour if and only if they generate the same behaviour for every input string in (CA(n+1)W)↓.
Proof. We will show that Chow’s theorem can be applied to the F/T automaton representing
Spec. To this end, we have to choose some a ∈ CA(n+1)W and consider the stream translation
function f* defined as follows, where f = fA*(ι) and ι is the initial state of Spec.
f*(a1, …, an)
( f(a1), f(a1a2), …, f(a1, …,an) )
In other words, the sequence on the right simply gives the acceptance/rejection history of the
string, as it evolves one symbol at a time. This is the automata-style behaviour of Spec, and we
need to show that it is the same as the automata style behaviour of Imp. It will then follow
immediately that |Spec| = |Imp|, and that, therefore, |SpecΛ| = |ImpΛ|.
By hypothesis, SpecΛ and ImpΛ behave identically on all prefixes of a. In particular,
|Spec | is defined for the prefix u if and only if |ImpΛ| is also defined for u, and this occurs if and
only if u∈|Imp|. Consequently, the corresponding stream translation function for Imp
Λ
g*(a1, …, an)
( g(a1), g(a1a2), …, g(a1, …,an) )
satisfies f*(u) = T ⇔ g*(u) = T as required, and f*(u) = g*(u).
5
Summary
We have provided two extensions to state-machine testing theory. The first allows us to extend
Chow’s W-method and the SXM testing method to include specifications given by machines
with non-final states, by first encoding semi-automata as automata with output alphabet BOOL.
The second part of the paper demonstrates a general extension to these test methods, that applies
to any system that can be specified by a behavioural framework. Although a novel concept, the
frameworks in question occur ubiquitously in computer science, with examples occurring in
both sequential and concurrent machine theory. We show that Eilenberg’s X-machine concept
can be extended to give behavioural machines, which are essentially semi-automata whose
transitions are labelled by elements of a behavioural framework. The SXM test method extends
automatically to behavioural machines, provided we recognise the different natures of semiautomaton and automaton behaviours. Accordingly, we need to use the downward closure of
Chow’s test set to generate the test-set for a semi-automaton-based β−machine.
There is clear scope for future work in this field. In particular, we are studying the feasibility of
modelling object oriented systems using β−machines, by incorporating both the sequential and
concurrent representational capabilities into a single framework. Given that tools are becoming
available for SXM testing, we are hopeful that tools can likewise be developed for β−machine
testing, though any such tools will require considerable built-in user support.
6
References
[Arn91]
Arnold A. (1991) ‘An extension of the notion of traces and asynchronous
automata.’ Theoretical Informatics and Applications 25, pp. 355-393.
[BCG+99] Balanescu, T., Cowling, T., Georgescu, H., Gheorghe, M., Holcombe, M. and C.
Vertan (1999) ‘Communicating stream X-Machine systems are no more than Xmachines.’ J.U.C.S. 5(9), pp. 492-507.
62
[BeH96]
Bell, A. and M. Holcombe (1996) “Computational models of cellular processing” in
R. Cuthbertson, M. Holcombe and R. Paton, eds., Computation in Cellular and
Molecular Biological Systems. Singapore: World Scientific.
[BH01]
Bogdanov, K. and M. Holcombe (2001) ‘Statechart testing method for aircraft
control systems.’ Software Testing, Verification and Reliability 11, pp. 39-54.
[CF69]
Cartier, P. and D. Foata (1969) Problèmes combinatoires de commutation et
rearrangements. (Lecture Notes in Mathematics 85), London & Berlin: SpringerVerlag.
[Cho78]
Chow, T. (1978) ‘Testing software design modelled by finite state machines.’ IEEE
Transactions on Software Engineering SE-4(3), pp. 178-187.
[DG98]
Diekert, V. and P. Gastin (1998) ‘Approximating traces.’ Acta Informatica 35, pp.
567-593.
[DG02]
Diekert, V. and P. Gastin (2002) “Safety and Liveness Properties for Real Traces
and a Direct Translation from LTL to Monoids” in W. Brauer et al., eds., Formal
and Natural Computing (Lecture Notes in Computer Science 2300), London &
Berlin: Springer-Verlag; pp. 26-38.
[DR95]
Diekert, V. and G. Rozenberg, eds. (1995) The Book of Traces. Singapore: World
Scientific.
[Eil74]
Eilenberg, S. (1974). Automata, Languages and Machines, Vol. A. Academic Press.
[EK00]
Eleftherakis, G. and P. Kefalas (2000) Model Checking X-Machines: Towards
integrated formal development of safety critical systems. Technical Report, Dept of
Computer Science, CITY Liberal Studies, Thessaloniki, Greece.
[FHI+95]
Fairtlough, M., Holcombe, M., Ipate, F., Jordan, C., Laycock, G. and Z. Duan
(1995) ‘Using an X-machine to model a Video Cassette Recorder.’ Current issues
in Electronic Modelling, 3, pp. 141-161.
[Gas90]
Gastin, P. (1990) ‘Un modèle asynchrone pour les systèmes distributes.’
Theoretical Computer Science 74, pp. 121-162.
[HH01a]
Hierons, R. and M. Harman (2001) ‘Testing conformance to a quasinondeterministic stream X-machine.’ Formal Aspects of Computing (Special Issue
on X-machines).
[HH01b]
Hierons, R. and M. Harman (2001) ‘Testing conformance of a deterministic
implementation against non-deterministic stream X-machine.’ Working Paper, Dept
of Computer Science, Brunel University, UK.
[HI98]
Holcombe, M. and F. Ipate (1998) Correct Systems: Building a Business Process
Solution. London & Berlin: Springer-Verlag.
[Hol89]
Holcombe, M. (1989) ‘X-machines as a basis for dynamic system specification.’
Software Engineering Journal 3(2), pp. 69-76.
[IH97]
Ipate, F. and M. Holcombe (1997) ‘An integration testing method that is proven to
find all faults.’ International Journal of Computer Mathematics 68, pp. 159-178.
[Ipa95]
Ipate, F. (1995) Theory of X-machines with Applications in Specification and
Testing. PhD Thesis, Dept of Computer Science, Sheffield University.
[KEK00a] Kefelas, P., Eleftherakis, G. and E. Kehris (2000) Communicating X-Machines: A
Practical Approach for Modular Specification of Large Systems. Technical Report
CS-09/00, Department of Computer Science, CITY Liberal Studies, Thessaloniki,
Greece.
63
[KEK00b] Kehris, E., Eleftherakis, G. and P. Kefalas (2000) “Using X-Machines to Model and
Test Discrete Event Simulation Programs” in N. Mastorakis, ed., Systems and
Control: Theory and Applications. Singapore and America: World Scientific and
Engineering Society Press; pp. 163-168.
[Koh78]
Kohavi, Z. (1978) Switching and finite automata theory. McGraw-Hill.
[KS92]
Kwiatkowska, M. and M. Stannett (1992) “On Transfinite Traces” in V. Diekert
and E. Ebinger, eds., ASMICS Workshop on Infinite Traces, Bericht 4/92,
Universität Stuttgart Fakultät Informatik; pp. 123-157.
[Lay93]
Laycock, G. (1993) The Theory and Practice of Specification-Based Software
Testing. PhD Thesis, Dept of Computer Science, Sheffield University, UK.
[LP84]
Lidl, R. and G. Pilz (1984) Applied Abstract Algebra. London & Berlin: SpringerVerlag.
[LS93]
Laycock, G. and M. Stannett (1993) X-machine Workshop. Technical Report, Dept
of Computer Science, Sheffield University, UK.
[Maz77]
Mazurkiewicz, A (1977) Concurrent program schemes and their interpretations.
Technical Report DAIMI Pβ−78, Aarhus University, Denmark.
[Moo56]
Moore, E. F. (1956) ‘Gedanken-experiments on sequential machines.’ Automata
Studies, (Annals of Mathematics Studies, no 34). Princeton University Press; pp.
129-153.
[Sta90]
Stannett, M. (1990) ‘X-machines and the Halting Problem: Building a super-Turing
machine.’ Formal Aspects of Computing 2, pp. 331-341.
[Sta91]
Stannett, M. (1991) An Introduction to post-Newtonian and non-Turing
Computation. Technical Report CS-91-02, Dept of Computer Science, Sheffield
University, UK. Available online from
http://www.dcs.shef.ac.uk/research/resmems/.
[Sta94]
Stannett, M. (1994) ‘Infinite Concurrent Systems – I. The Relationship between
Metric and Order Convergence.’ Formal Aspects of Computing 6, pp. 696-715.
[Sta01]
Stannett, M. (2001) Computation over arbitrary models of time. Technical Report
CS-01-08, Dept of Computer Science, Sheffield University, UK. Available online
from http://www.dcs.shef.ac.uk/research/resmems/.
[Van01]
Vanak, S. K. (2001) Complete Functional Testing of Hardware Designs.
Preliminary PhD Report, Dept of Computer Science, Sheffield University, UK.
64
Formal Basis for Testing with Joint-Action
Specications
Timo Aaltonen and Joni Helin
Tampere University of Technology, Institute of Software Systems
P.O.BOX 553, FIN-33101 Tampere, Finland
Tel: +358-3-31153951, fax: +358-3-31152913
email: ftimo.aaltonen, joni.heling@tut.
July 3, 2002
Abstract
A new method for formal testing of reactive and distributed systems
is presented. The method is based on having a joint-action specication
of the implementation under test. A testing hypothesis is made to allow
assigning formal meanings to correct and incorrect implementations. Utilizing these we formulate meaning of nding errors in implementations in
a strict way.
1 Introduction
Traditionally testing and formal methods have had little to do in common.
However, recently it has been realized that these two need not be exclusive but
they can complement each other. Rigorous specications give an excellent basis
for testing: notions like correct and erroneous implementations can be assigned
an exact meaning and descriptions of test cases become more precise.
One diÆcult eld for testing are reactive and distributed systems. Reactive
systems obtain stimuli from the environment and react to them. The behaviour
of a distributed system is not very predictable. Little changes in timings of their
complex interactions with the environment and between components make the
system behave in non-deterministic manners. Therefore testing them thoroughly
is extremely diÆcult. Formal specications allow us to deal with this nondeterminism in an exact way.
In this paper we attack problems of testing reactive and distributed systems
by utilizing joint-action specications which are introduced in Section 2. Systems are rst modelled with them and then they are implemented. We make
This work was supported by Academi of Finland under project 510005.
65
a testing hypothesis which claims that there exists a joint-action model for every implementation. If an implementation is correct then this model can be
achieved from the specication as a legal renement. Testing is searching for
a counterexample to this renement relation. These aspects are discussed in
Section 3. In Section 4 an example of utilizing the proposed testing method is
given. Finally Section 5 concludes the paper.
2 Joint-Action Specications
Joint actions were introduced by Ralph Back and Reino Kurki-Suonio in [4,
5]. The intention with them was to describe the behaviour s of reactive and
distributed systems at a high level of abstraction. By abstracting the details
of communication, a joint action models what several parties of the system do
together, not how the desired behaviour is achieved.
Basic building blocks of our joint-action specications are class and action
declarations. Formally a class is a set of similar objects sharing the same structure. Classes can be inherited in an object-oriented fashion. Then an inherited
class forms a subset of the base class. Besides class denitions, record types can
be declared. Unlike objects of classes, values of record types have no identity.
The state of an object means evaluation of its attributes. The states of
objects can be changed only by executing multi-object joint actions. A joint
action consists of a name, a set of roles (in which the objects can participate ), a
boolean-valued guard (which must evaluate to true for the participating object
combination) and a body (which is a parallel assignment clause assigning new
values to the attributes of the participating objects). When such a combination
of objects exists that the guard of an action is satised, an action is said to be
enabled (for the satisfying object combination). Selection of the next action to
be executed is non-deterministic among the enabled ones. Actions are atomic
units of execution which are executed in an interleaving manner. This is an
abstraction of parallel executions of operations.
States of all objects constitute the global state of the system. A new global
state is obtained form the current one by executing an action which is enabled
in the current state. A sequence of global states starting from an initial state
s0 is called a behaviour : =< s0 ; s1 ; s2 ; ::: > where s0 is an initial state of the
system and each state sk+1 is obtained from state sk by executing an action
enabled in state sk . The method is not sensitive to stuttering in behaviours. In
other words a behaviour is considered the same even if its states are arbitrarily
repeated. A joint-action specication induces potentially an innite set of behaviours whose initial states are legal initial states of the specication and new
states are obtained by executing the actions of the specication.
As an example we give a specication of counters. Objects belonging to class
Counter hold the value they count in attribute val, which can be incremented
by executing action inc. The action can be executed for objects having value
less than two in val; the body of the action increments val by one. It is assumed
that all counters are initialized to zero:
66
specification Cntrs = {
class Counter = {val: integer}
action inc(c: Counter): c.val < 2 ->
c.val0 = c.val + 1;
}
From the innite set of behaviours the specication induces we show two. In
the rst one just one counter has been instantiated, the value of attribute val
is given in parenthesis:
<(0); (1)
; (2)
;(2); >. The
second behaviour consists
0
1
2
2
2
2
of two counters:
;
;
;
;
;
; .
0
0
0
1
2
2
Formal properties of behaviours are often divided into two categories: safety
and liveness properties. The former are such their violation can be detected
in a nite prex of a behaviour. In terms of temporal logic[10, 13] an example
of safety property is p, which states that proposition p holds in every state.
For example, (8c : Counter :: c:val < 3) holds for specication Cntrs, if
counters are initialized to zero. On the other hand liveness properties are those
whose violence cannot be detected in a nite prex. An example of such is q
which states that eventually q will hold. In this paper we concentrate on safety
properties.
<
>
2.1 Renement
Joint-action specications are rened towards implementations by superimposing new layers onto an old specication. A superposition step maps the old
specication to a new one, which is a renement of the old one. Our variant of
superposition allows adding new attributes to existing classes, introducing new
classes, strengthening the guards of old actions, adding new assignments to old
actions, introducing new actions, but the new assignments are allowed only to
newly introduced attributes.
In terms dened in [8] our variant of superposition is regulative. I.e., the
safety properties of the specication being rened are preserved by construction,
but liveness properties can be violated. This means that if we have an abstract
specication s and its renement s then all behaviours induced by s (denoted
beh(s )) are also behaviours of s with respect to variables of s: beh(s ) vars(s)
beh(s).
As an example, specication Cntrs can be rened by adding running bit to
each counter and introducing actions to set and reset the bit. The guard of
action inc is strengthened with a conjunct stating that running must be true
for the participating counter; the body of the action remains unchanged:
0
0
0
0
specification Ena refines Cntrs = {
Counter = Counter + {running: boolean}
;
action enable(c: Counter): not c.running -> c.running0 =
;
action disable(c: Counter): c.running -> c.running0 =
action inc(c: Counter) refines Cntrs.inc(c): c.running -> ...;
}
true
false
In a renement the values of abstract variables can be represented by several
variables distributed in the system. In these cases quantied expressions called
shadow assertions state formally the relationship between the abstract and the
67
concrete variables. To ensure that shadow assertions are not violated they must
be formally veried. When a variable has become abstract then it is not needed
in an implementation.
Several joint-action specications can be composed into one compound specication. Applying renement and composition lead to abstraction hierarchies,
which are directed acyclic graphs.
2.2 Abstraction Function
Remember that our renement mechanism allows only adding new variables
to the specication and strengthening guards of existing actions and making
such augmentations to the bodies of existing action that assign only to newly
introduced variables. Therefore, if specication s is a renement of s then each
behaviour induced by s has an image in behaviours induced by s in terms of s.
To be able to deal with behaviours of one specication in an abstraction
hierarchy at the level of another, we dene abstraction function : afss : B 7! B ,
where s and s are specications and B is the universe of behaviours. The
function is dened if vars(s) vars(s ), where vars(s) are the variables (attributes of objects) of specication s. The function maps behaviours induced by
specication s (more concrete) to behaviours of s (more abstract) by ltering
variables vars(s ) \ vars(s) from the behaviour and by computing the values of
shadow variables of s.
For example, behaviours induced by Ena can be mapped to behaviours of
Cntrs simply by ltering the values of attribute running from the behaviour.
More formally
Cntrs f(bEna ; bCntrs ) j
afEna
(8i 2 N : (8c 2 Counter : c:val(bEna (i)) = c:val(bCntrs (i))))g
0
0
0
0
0
0
0
where N is the set of natural numbers and c:val(b(i)) is the value of attribute
val in the ith state of behaviour b.
3 Testing with Joint-Action Specication
In this paper implementations are created according to the most concrete specication (denoted c) in the specication hierarchy. The objective is to produce
an implementation that is a legal renement of c. Our renement mechanism is
superposition, thus the implementation should be obtainable by some superposition step on c. Then the implementation can only restrict (not liberate) the
behaviour induced by c. In our approach conformance means that an implementation exhibits only such behaviours that are induced by the specication.
3.1 Testing Hypothesis
A diÆculty in this approach is that an implementation is not a formal entity
but lies in the physical reality, consisting of a compiled program written in some
68
programming language, pieces of hardware in which the program slices are run,
an environment with which the actual system interacts etc. No concepts exist
on which the described correctness can be formally based on; we are not able
to validate whether the implementation actually is a renement of its specication. This dilemma is solved by making a testing hypothesis, which states that
every implementation under test (iut) has such a formal model (m ) that if
it and iut are both put in a black box which transmits behaviours only at the
abstraction level xed by m then we cannot distinguish iut and m . Model
m is a joint-action specication. More formally the hypothesis states that
m (beh (iut)) = beh(m )
8 iut 2 Imps 9 m
2 Specs : af '
(1)
iut
iut
iut
iut
0
iut
iut
iut
iut
where Imps is the universe of implementations, Specs is a universe of joint action
specications, beh : Imps 7! 2Behaviours maps an implementation to the set
of real world behaviours it induces (Behaviours is the universe of real world
behaviours), af 'm : Behaviours of iut 7! Behaviours of m projects the
real world behaviours of iut to the behaviours of model m and function beh :
Specs 7! 2Behaviours maps a joint action specication to the set of behaviours
it induces. Behaviours is the universe of behaviours induced by joint-action
specications.
Believing that m exists is a leap of faith which cannot be formally justied.
However, it is easy to believe that all real systems can be modelled with joint
action specications, because their expressive power is reasonably high. For
example, a specication which contains images of all the variables of iut and
an action for each atomically executed piece of software works as the required
model.
The testing hypothesis does not require m to be actually created, it just
assumes that such a model exists. For testing purposes we only need to be able
to produce such behaviours that m would produce. To be correct, model m
should be a renement of c. Therefore, behaviours of m can be mapped to
the behaviours of c by applying abstraction function af cm .
0
0
0
0
iut
iut
iut
iut
iut
iut
iut
iut
iut
iut
3.2 Denitions for Correct and Incorrect Implementation
Correctness of iut can now be dened formally:
iut is correct
def (8b 2 beh(m ) : af cm (b) 2 beh(c))
,
iut
iut
(2)
In an ideal case we could produce a perfect model m and formally verify
that it is a legal renement of c. Unfortunately, for reasonably sized systems
producing model m is not an option and, moreover, utilizing it would not be
testing but verication. Instead, we investigate a subset of behaviours induced
by m and try to catch errors with them. An attempt is to produce behaviour
bce to satisfy the right hand side of Equation (3) below, which is achieved by
negating both sides of Equation (2):
iut is not correct , (9 bce 2 beh(m ) : af cm (bce) 2= beh(c)) (3)
iut
iut
iut
iut
69
iut
Behaviour bce is a counterexample for the subset relation which should hold for
behaviours beh(m ) vars(c) beh(c).
iut
3.3 Setting
Figure 1 illustrates the setting for testing. Implementation iut in the bottom
left-hand corner is created based on specication c in the top left-hand corner.
According to the testing hypothesis m exists and iut is correct if and only if
m is a legal renement of c. Each specication induces a set of behaviours
depicted as ellipses. Arrows from beh (iut) to beh(m ) model function af 'm
which projects real world behaviours to behaviours of m , and arrows from
beh(m ) to beh(c) model mapping afcm . Our renement mechanism enforces
the set of behaviour images of the rened specication to be in a subset relation with the set of behaviours of the specication being rened. Testing is
an attempt to produce a behaviour bce which is a counterexample to this subset relation: bce 2 beh(m ) ^ af cm (bce ) 2= beh(c). Behaviour bm
5 is such a
counterexample in the gure.
iut
iut
0
iut
iut
iut
iut
iut
iut
iut
iut
induces
c
bC
bC3 4 bC
bC1 bC
2
bC6
5
renes?
m
iut
induces
bm
1
bm
2
bm
3
bm
5
bm
4
corresponds
b1
0
iut
b2
0
b3
0
induces
b4
0
b5
0
Figure 1: The setting for testing.
3.4 Observation Objectives
So far we have discussed what are correct and incorrect implementations and
how errors are detected if some behaviours of m are observed. If iut does
nothing then it denitely does not violate the safety properties of specication c.
Therefore, a set of behaviours must be enforced. Similarly to [16] we dene some
iut
70
set of behaviours that we whish to observe during testing. These observation
objective s are given in terms of c.
An observation objective is a set of behaviours that intersects the set induced
by c. Objective o is said to be satised if at least one behaviour bo 2 o is
observed. An objective describes behaviours we whish to observe, but it is not
directly related to the correctness of iut. An example objective for specication
Ena given Section 2 could be the set of behaviours where the value of some
counter has rst been one and later it has been incremented; more formally
objective o = fb j P (b)g where
P (b) = 9i1 ; i2 2 N j i1 < i2 : (9c 2 Counter : c:val(b(i1 )) = 1 ^ c:val(b(i2 )) > 1)
where c:val(b(i)) is the value of attribute val in ith state of behaviour b.
The Venn diagram in Figure 2 depicts dierent sets of behaviours. The
large square is an innite universe of behaviours. The horizontal large ellipse
in the middle models the behaviours induced by specication c (these are legal
behaviours); the horizontal small ellipse is an observation objective (these are
the behaviours we wish to observe) and the vertical large ellipse models the
behaviours afcm (beh(m )) (these are the behaviours iut induces). All the
sets are innite in the general case.
iut
iut
observation objective
Behaviours
b3
c
induces
b6
b5
b1
b7
b2
mI U T
b4
induces
b9
b12
b8
b10
b11
b13
b14
Figure 2: Venn diagram of behaviours.
4 Example: Distributed List
We have applied the proposed testing method for testing an implementation of
Distributed List[12]. Our version of the protocol specication consist of two
layers atomic list and messages.
4.1 Specication atomic list
Distributed List is a protocol for maintaining a circular, singly-linked list
of cells. The protocol is an abstraction of a part of a multiprocessor cache
coherence protocol for linked list of processors sharing a cache line. A more
71
comprehensive description of the protocol can be found in [12]. In the list there
is a special cell, called the head cell, which coordinates the addition of cells.
In abstract specication atomic list of the protocol cells can join and
leave the list in synchronous actions. First a base class Cell with two derived
classes HeadCell and NormalCell are given. Objects of class Cell have attribute
next a (a for abstract), which is a reference to the next cell in the list or a self
reference if the cell is not in the list. In the initial state there are no cells in
the list. Actions atomicAdd and atomicDelete model joining and leaving the
list, respectively.
Action atomicAdd has two roles: nc, in which the cell willing to join the
list participates, and h, in which the head cell participates. The guard of the
action requires that the object participating in role h is not yet in the list. In
the body of the action reference next a of the head cell is assigned the reference
to nc and next a of nc get the previous value of h.next a:
action atomicAdd(nc: NormalCell; h: HeadCell) is
when nc.next_a = nc do
nc.next_a0 = h.next_a ^ h.next_a0 = nc;
end;
Detailed description of atomicDelete is omitted for brevity.
4.2 Specication messages
Synchronous specication atomic list is rened to specication messages, which
is an asynchronous implementation of the atomic specication. In the rened
version a cell not in the list may request to be added to the list and successively
to be removed from the list. Communication is message-based over a reliable
but not order-preserving medium. Every cell has a specication variable next c
(c for concrete), which holds the identity of the successor cell, or its own identity
if the cell is not on the list.
Cells other than the head cell can perform two types of transactions, add
and delete. Addition consists of sending a request message to the head cell,
which results in the cell being added to the list in front of the next cell of head
cell and a reply containing the identity of the new next cell of the requesting
cell.
To delete a cell from the list, knowledge of the predecessor cell is required, so
a message called pred carrying the identity of a cell's predecessor is circulated.
A cell initiates deletion by sending a message to its predecessor and waits for
acknowledgment. Handling of the deletion message depends on intricate details
about the scenario, but basically the actual predecessor of the requesting cell
updates its next c variable and acknowledges.
The abstract atomic specication atomic list is superimposed by layer messages, in which abstract atomic actions are implemented by more concrete ones,
and abstract variable next a is distributed to several concrete variables. The
transmission medium is represented with singleton class Net holding a set of
Messages. Class Cell is extended with a state machine for message-based implementation of the protocol and variable next c, which together with elds in
72
atomicAdd
transaction
initiateAdd
processAdd
add
processHead
Figure 3: Actions of transaction add.
transmitted messages implement the abstract specication variable next a. A
set of shadow assertions state their respective relationships.
Distributed implementation of the add transaction consists of three actions
depicted in Figure 3. The transaction begins when a cell is in normal operating
state and wishes to join the list. Action initiateAdd results in an AddMessage
sent to the head cell and the cell entering state waiting for a HeadMessage in
reply. Set manipulations of Net correspond to message send and reception:
action initiateAdd(nc: NormalCell; net: Net) is
when nc.state’normal ^ nc.next_c = nc do
net.mess0 = net.mess + {AddMessage(src0 = nc, dst0 = nc.theHeadCell)}
nc.state0 = w_head();
end;
^
Action processAdd is rened from atomicAdd and locally processed by the head
cell upon delivery of the AddMessage. The action guard ties the sender of the
message to the shadow role 1 nc. Action body consists of sending a reply message carrying the new value for the concrete variable next c of the requesting
cell. The concrete variable in the head cell is updated correspondingly with the
abstract variable. Three dots in the guard refer to the guard of the action being
rened, and in the body they refer to the original body:
refined processAdd(nc: NormalCell; hc: HeadCell; net: Net; am: AddMessage)
of atomicAdd(nc, hc) is
when ... am 2 net.mess ^ am.dst = hc ^ am.src = nc do
...
net.mess0 = net.mess - {am} + {HeadMessage(src0 = hc,
dst0 = am.src,
new0 = hc.next_c)} ^
hc.next_c0 = am.src;
end;
Transaction add is nished when the initiating cell executes processHead action.
The cell updates its concrete variable next c with the value received in the
HeadMessage and returns to normal state:
action processHead(nc: NormalCell; net: Net; hm: HeadMessage) is
when hm 2 net.mess ^ hm.dst = nc do
net.mess0 = net.mess - {hm} ^ nc.next_c0 = hm.new ^ nc.state0 = normal();
end;
Implementation of the delete transaction, which is more complicated, is not
described here.
1 Shadow role means that only shadow attributes of the role are accessed in the action,
therefore, it can be left out in implementation.
73
4.3 Implementation and Testing
Implementation (dli) of Distributed List was written in Erlang[1]. As explained in Section 3, we are not able to really create the model m but iut
is instrumented to demonstrate its behaviour according the the most concrete
specication messages. In other words, we observe such behaviours that could
have been produced by m and abstracted to behaviours of messages. More
formally:
messages (af 'mdli (beh (dli)))
8b 2 observed behaviours : b 2 afm
dli
dli
The testing was carried out oine { behaviours were rst produced and their
correctness were validated afterwards. The actual validation was done with
DisCo Animator [3], a special tool for animating joint-action specications.
To be able to exploit Animator observing just states is not enough but we
must be notied of the executed actions as well.
Execution of the add transaction of the protocol is safe-guarded by a precondition that the next reference of the node in question must point to itself and
the node must be in normal operation state. However, should an implementation inadvertantly leave the second requirement unenforced, simply relying on
checking the next reference, an error would have been introduced. In that case,
initiating a new add transaction in the midst of the previous add transaction,
before the next reference is updated, would become possible. A scenario depicting this situation is given in Figure 4, which contains four states and the
three actions responsible for state changes. In the initial state the network (net
in the scenario) contains pred message and the head cell (hc) and both normal
cells (nc1 and nc2 ) refer to themselves and operate in normal state. First nc1
wishes to joint the list and, therefore, action initiateAdd is executed; then the
head cell handles its part of the transaction add (action processAdd), but before completing the transaction by executing action processHead nc1 attempts
to initiate joining again. However, action initiateAdd is not enabled in the
third state in the specication and the error is detected.
iut
iut
0
initiateAdd(nc1, net)
net(fPredg)
hc(hc, normal)
nc1(nc1, normal)
nc2(nc2, normal)
processAdd(nc1,hc,net,Add) initiateAdd(nc1, net)
net(fPred, Addg)
hc(hc, normal)
nc1(nc1, w head)
nc2(nc2, normal)
net(fPred, Headg)
hc(c1, normal)
nc1(nc1, w head)
nc2(nc2, normal)
net(fPred, Head, Addg)
hc(c1, normal)
nc1(nc1, w head)
nc2(nc2, normal)
Figure 4: Erroneous scenario.
An actual error in our implementation of the protocol was found during
development when the guard of an action was erroneously enabled. This was a
result of a reference to an incorrect state in the implementation of the guard.
Another error resulted in the consumption of the pred message by a cell in the
midst of add transaction, never to be put to circulation again. Even though this
was a violation of a liveness property, the deadlock was detected by the testing
engineer, because no cell was able to commit the delete transaction.
74
5 Discussion
We have presented a new technique for formal testing of reactive and distributed
systems. The technique is based on joint-action specications, which model
behaviours of systems at a high level of abstraction. Testing hypothesis asserts
that each iut has a model m which is indistinguishable from iut. Now, iut
is correct i m is obtainable as a legal renement of the specication for iut.
Correctness is dened so that iut is correct i each behaviour induced by m
belongs to behaviours induced by its specication. Testing is searching for a
counterexample to this relation.
This paper is focused on the ideas behind testing, not how testing is carried
out in practise. Thus, this paper reects virtually no methodological aspects
of testing. The next step will be on developing a comprehensive method incorporating these ideas in actual testing. The main contribution of the paper is
in giving a formal basis for testing with joint-action specications. Up to our
knowledge joint-action specications have not been researched from this point
of view.
A signicant amount of research has been carried out on formal testing
methodologies for reactive and distributed systems[9, 15, 11]. A well-known
formal approach for conformance testing of concurrent systems is presented
by Tretmans in [15]. First a formal framework for testing is developed and
then instantiated for labelled transition systems (lts). Similarly to our approach
formal testing is justied by a test hypothesis, which enables the consideration
of implementations as formal objects where an implementation relation is used
to link a model of an implementation to its specication.
Compared to our method Tretmans emphasizes the input-output relation
(where internal state changes are abstracted away) in testing, whereas, our
stress is laid on more abstract communication where no distinction is made
between input and output. Therefore, our denition for conformance is somewhat dierent. In [2] Aaltonen et al. have presented a mapping of joint-action
specication instances to timed automata, which is an lts-like formalism. This
mapping can be utilized for clarifying the dierences of the two methods. This
is left as future work.
Automatic generation of test suites containing stimulus to iut with the expected response is a considerably researched topic [6, 15, 14]. For the time being
we do not have any algorithms or methods for generating tests. However, we
believe that by utilizing observation objectives it is possible to create suitable
suites { at least with some guidance by the testing engineer. Presently we are
developing a method for producing tests based on observation objectives.
The method for checking that iut behaves correctly is often called test oracle.
We have developed a toolset for simulating joint-action specications [3], which
includes Compiler and Animator. The compiler produces an engine which
maintains the state of a joint-action specication instance and is utilized by the
animator. This engine can be considered as the test oracle since it veries the
validity of reached states and execution scenarios. In [7] Dillon and Ramakrishna
develop a generic tableau algorithm for generating oracles from temporal logic
iut
iut
iut
75
specications.
The abstraction hierarchy of joint-action specications was not exploited in
this paper. In specifying it is considered as the most essential contribution by
our method. Therefore, utilizing the hierarchy also in testing is one branch for
future work.
To date, research on formalizing testing has been concentrated on nite state
formalisms. We are making an important contribution by taking testing to areas
where theorem proving has been the dominant mean of ascertaining correctness.
However, dierent approaches have their respective strengths and selection of
an approach should be based on the nature of the problem.
References
[1] Open source erlang project WWW page. At http://www.erlang.org/ on
the World Wide Web.
[2] Timo Aaltonen, Mika Katara, and Risto Pitkanen. Verifying real-time joint
action specications using timed automata. In Yulin Feng, David Notkin,
and Marie-Claude Gaudel, editors, 16th World Computer Congress 2000,
Proceedings of Conference on Software: Theory and Practice, pages 516{
525, Beijing, China, August 2000. IFIP, Publishing House of Electronics
Industry and International Federation for Information Processing.
[3] Timo Aaltonen, Mika Katara, and Risto Pitkanen. DisCo toolset { the
new generation. Journal of Universal Computer Science, 7(1):3{18, 2001.
http://www.jucs.org.
[4] R. J. R. Back and R. Kurki-Suonio. Distributed cooperation with action systems. ACM Transactions on Programming Languages and Systems,
10(4):513{554, October 1988.
[5] R. J. R. Back and R. Kurki-Suonio. Decentralization of process nets with
centralized control. Distributed Computing, 3:73{87, 1989.
[6] Igor Burdonov, Alexander Kossatchev, Alexander Petrenko, and Dmitri
Galter. Kvest: Automated generation of test suites from formal specications. In J. Wing, J. Woodcock, and J. Davies, editors, FM'99 { Formal
Methods: World Congress on Formal Methods in the Development of Computing Systems, number 1708 in Lecture Notes in Computer Science, pages
608{621. Springer{Verlag, 1999.
[7] Laura K. Dillon and Y. S. Ramakrishna. Generating oracles from your
favorite temporal logic specications. In Foundations of Software Engineering, pages 106{117, 1996.
[8] Nissim Francez and Ira R Forman. Interacting Processes { A Multiparty
Approach to Coordinated Distributed Programming. Addison-Wesley, 1996.
76
[9] Juhana Helovuo and Sari Leppanen. Exploration testing. In Proceedings
of ICACSD 2001, 2nd IEEE International Conference on Application of
Concurrency to System Design, pages 201{210. IEEE Computer Society,
June 2001.
[10] Leslie Lamport. The temporal logic of actions. ACM Transactions on
Programming Languages and Systems, 16(3):872{923, 1994.
[11] H. Lotzbeyer and A. Pretschner. Testing concurrent reactive systems with
constraint logic programming. In Proceedings 2nd workshop on Rule-Based
Constraint Reasoning and Programming, Singapore, September 2000.
[12] Seungjoon Park and David Dill. Protocol verication by aggregation of
distributed transactions. In Proceedings of the International Conference on
Computer-Aided Verication, Lecture Notes in Computer Science, pages
300{310. Springer-Verlag, July 1996.
[13] Amir Pnueli. The temporal logic of programs. In In Proceedings of the 18th
IEEE Symposium Foundations of Computer Science (FOCS 1977), pages
46{57, 1977.
[14] J. Tretmans. Test Generation with Inputs, Outputs, and Quiescence. In
T. Margaria and B. Steen, editors, Second Int. Workshop on Tools and
Algorithms for the Construction and Analysis of Systems (TACAS'96), volume 1055 of Lecture Notes in Computer Science, pages 127{146. SpringerVerlag, 1996.
[15] Jan Tretmans. Testing concurrent systems: A formal approach. In Proceedings of CONCUR'99 Concurrency Theory, number 1664 in Lecture Notes
in Computer Science, pages 46{65. Springer{Verlag, 1999.
[16] Rene G. Vries and Jan Tretmans. Towards formal test purposes. In
Ed Brinksma and Jan Tretmans, editors, Proceedings of workshop on Formal Approaches to Testiong of Software 2001, pages 61{76, August 2001.
77
78
Queued Testing of Transition Systems
with Inputs and Outputs
Alex Petrenkoa and Nina Yevtushenkob
a - CRIM, Centre de recherche informatique de Montreal,
550 Sherbrooke West, Suite 100, Montreal, H3A 1B9 Canada,
E-mail: [email protected]
b - Tomsk State University, 36 Lenin Str., Tomsk, 634050, Russia,
E-mail: [email protected]
Abstract The paper studies testing based on input/output transition systems, also known as
input/output automata. It is assumed that a tester can never prevent a system
under test from producing outputs, while the system does not block inputs from
the tester either. Thus, input from the tester and output from the system may
occur simultaneously and should be queued in finite buffers between the tester
and system. A framework for a so-called queued-quiescence testing is
developed, based on the idea that the tester should consist of two test processes,
one process is applying inputs via a queue to a system under test and another one
is reading outputs from a queue until it detects no more outputs from the system,
i.e., the tester detects quiescence in the system. The testing framework is then
generalized with a so-called queued-suspension testing by considering a tester
that has several pairs of input and output processes. It is demonstrated that such
a tester can check finer implementation relations than a queued-quiescence
tester. Procedures for test derivation are proposed for a given fault model
comprising possible implementations.
1. Introduction
The problem of deriving tests from state-oriented models that distinguish between input and
output actions is usually addressed with one of the two basic assumptions about the
relationships between inputs and outputs. Assuming that a pair of input and output
constitutes an atomic system’s action, in other words, that a system cannot accept next input
before producing output as a reaction to a previous input, one relies on the input/output
Finite State Machine (FSM) model. There is a large body of work on test generation from
FSM with various fault models and test architectures, for references see, e.g., [Petr01],
[BoPe94]. A system, where next input can arrive even before output is produced in response
to a previous input, is usually modeled by the input/output automaton model [LyTu89], also
known as the input/output transition system (IOTS) model (the difference between them is
marginal, at least from the testing perspective). Compared to the FSM model, this model has
received a far less attention in the testing community, see, e.g., [BrTr01], [Phal93],
[Sega93]. In this paper, we consider the IOTS model and take a close look on some basic
assumptions underlying the existing IOTS testing frameworks.
One of the most important works on test generation from labeled transition systems with
inputs and outputs is [Tret96]. In this paper, it is assumed that a tester (implementing a given
test case) and an IOTS interact as two labeled transition systems and not as IOTS.
79
Accordingly, the LTS composition operator used to formalize this interaction does not
distinguish between inputs and outputs, so the tester need not be input-enabled to satisfy
compatibility conditions for composing IOTS [LyTu89]. The tester seems to be able to
preempt output from the system any time it decides to send input to the system. This allows
the tester to avoid choosing between inputs and outputs, keeping the test process
deterministic. On the other hand, such a tester appears to be able to override the principle
that “output actions can never be blocked by the environment” [Tret96, p.106].
Another assumption about the tester is taken by Tan and Petrenko [TaPe98]. In this work,
it is recognized that the tester cannot block the system’s outputs, it is only assumed that the
tester can detect the situation when it offers input to the system, but the latter, instead of
consuming it, issues an output (a so-called “exception”). An exception halts a current test
run avoiding thus any further non-deterministic behavior and results in the verdict
inconclusive. Notice that the tester of [Tret96] has only two verdicts, pass and fail.
Either approach relies on an assumption that is not always justified in a real testing
environment. As an example, consider the situation when the tester cannot directly interact
with the IUT, because of a context, such as queue or interface, between them. As pointed out
in [dVBF02], to apply the test derivation algorithm of [Tret96], one has to take into account
the presence of a queue context. It also states “the assumption that we can synthesize every
stimulus and analyze every observation is strong”, so that some problems in observing
quiescence occur.
The case when IOTS is tested via infinite queues is investigated by Verhaard et al
[VTKB92]. The proposed approach relies on an explicit combined specification of a given
IOTS and queue context, so it is not clear how this approach could be implemented in
practice. This context is also considered in [JJTV99], where a stamping mechanism is
proposed to order the outputs with respect to inputs, while quiescence is ignored. A
stamping process has to be synchronously composed with the IUT as the tester in [Tret96].
We also notice that we are aware of the only work [TaPe98] that uses fault models in test
derivation from IOTS. In [Tret96] and [VTKB92], a test case is derived from a trace
provided by the user.
The above discussion indicates a need for another approach that does not rely on such
strong assumptions about the testing environment and incorporates a fault model to derive
tests that can be characterized in terms of fault detection. In this paper, we report on our
preliminary findings in attempts to elaborate such an approach. In particular, we introduce a
framework for testing IOTS, assuming that a tester can never prevent a system under test
from producing outputs, while the system does not block inputs from the tester either and,
thus, input and output actions may occur simultaneously and should be queued in finite
buffers between the tester and system.
The paper is organized as follows. In Section 2, we introduce some basic definitions and
define a composition operator for IOTS based on a refined notion of compatibility of IOTS
first defined in [LyTu89]. Section 3 presents our framework for a so-called queuedquiescence testing, based on the idea that the tester should consist of two test processes, one
process is applying inputs to a system under test via a finite input queue and another one is
reading outputs that the system puts into a finite output queue until it detects no more
outputs from the system, i.e., the tester detects quiescence in the system. We elaborate such
a tester and formulate several implementation relations that can be tested with a queuedquiescence tester. In Section 4, we discuss how queued-quiescence tests can be derived for a
given specification and fault model that comprises a finite set of implementations. In Section
5, we generalize our testing framework with a so-called queued-suspension testing by
80
allowing a tester to have several pairs of input and output processes and demonstrate that a
queued-suspension tester can check finer implementation relations than a queued-quiescence
tester. We conclude by comparing our contributions with previous work and discussing
further work.
2. Preliminaries
A labeled transition system, or simply a labeled transition system (LTS), is a 4-tuple L = <S,
Σ, λ, s0>, where S is a finite non-empty set of states with the initial state s0; Σ is a finite set
of actions; λ ∈ S × Σ × S is a transition relation. In this paper, we consider only LTS such
that (s, a, s′), (s, a, s′′) ∈ λ implies s′ = s′′. These are deterministic LTS.
Let L1 = <S, Σ1, λ1, s0> and L2 = <T, Σ2, λ2, t0>, the parallel composition L1 || L2 is defined
as the LTS <R, Σ1 ∪ Σ2, λ, s0t0>, where the set of states R ⊆ S × T and the transition relation
λ are smallest sets obtained by application of the following inference rules:
• if a ∈ Σ1 ∩ Σ2, (s, a, s′) ∈ λ1, and (t, a, t′) ∈ λ2 then (st, a, s′t′) ∈ λ;
• if a ∈ Σ1\Σ2, (s, a, s′) ∈ λ1, then (st, a, s′t) ∈ λ;
• if a ∈ Σ2\Σ1, (t, a, t′) ∈ λ1, then (st, a, st′) ∈ λ.
We use the LTS model to define a transition system with inputs and outputs. The
difference between these two types of actions is that no system can deny an input action
from its environment, while this is completely up to the system when to produce an output,
so the environment cannot block the output. Formally, an input/output transition system
(IOTS) L is a LTS in which the set of actions Σ is partitioned into two sets, the set of input
actions I and the set of output actions O. Given state s of L, we further denote init(s) the set
of actions defined at s, i.e. init(s) = {a ∈ Σ | ∃s′ ∈ S ((s, a, s′) ∈ λ)}. The IOTS is inputenabled if each input action is enabled at any state, i.e., I ⊆ init(s) for each s. State s of the
IOTS is called unstable if there exists o ∈ O such that o ∈ init(s). Otherwise, state is stable.
A sequence a1…ak over the set Σ is called a trace of L in state s if there exist states s1, …,
sk+1 such that (si, ai, si+1) ∈ λ for all i =1, …, k and s1 = s. We use traces(s) to denote the set
of traces of L in state s. Following [Vaan91] and [Tret96], we refer to a trace that takes the
IOTS from a given state to a stable state as to a quiescent trace.
To define a composition of IOTS, we first state compatibility conditions that define when
two IOTS can be composed by relaxing the original conditions of [LyTu89]. Note that L1 ||
L2 for IOTS L1 and L2 means the synchronous parallel composition of LTS that are obtained
from IOTS by neglecting the difference between inputs and outputs, so these IOTS are
treated as LTS.
Definition 1. Let L1 = <S, Σ1, λ1, s0>, Σ1 = I1 ∪ O1, and L2 = <T, Σ2, λ2, t0>, Σ2 = I2 ∪ O2, be
two IOTS such that the sets I1 ∩ I2 and O1 ∩ O2 are empty. Let st be a state of the
composition L1 || L2. The L1 and L2 are compatible in state st if
• a ∈ init(s) implies a ∈ init(t) for any a ∈ I2 ∩ O1 and
• a ∈ init(t) implies a ∈ init(s) for any a ∈ I1 ∩ O2.
The L1 and L2 are said to be compatible if they are compatible in the state s0t0; otherwise
they are incompatible. L1 and L2 are fully compatible if they are compatible in all the states
of the composition L1 || L2.
Clearly, two input-enabled IOTS with I1 = O2 and I2 = O1 are fully compatible, but the
converse is not true. Based on the notion of compatibility we define what we mean by a
81
parallel composition of two IOTS. Let IOTS(I, O) denote the set of all possible IOTS over
the input set I and output set O.
Definition 2. The composition operator ][ : IOTS(I1, O1) × IOTS(I2, O2) → IOTS((I1 ∪
I2)\(O1 ∪ O2), O1 ∪ O2), where the sets I1 ∩ I2 and O1 ∩ O2 are empty, is defined as follows.
Let L1 = <S, Σ1, λ1, s0>, Σ1 = I1 ∪ O1, and L2 = <T, Σ2, λ2, t0>, Σ2 = I2 ∪ O2 be compatible
IOTS. If L1 and L2 are compatible in state st of the composition L1 || L2, then st –a→ s′t′ in L1
|| L2 implies the same transition in L1 ][ L2. If L1 and L2 are incompatible in state st, then
there are no outgoing transitions from the state in L1 ][ L2, i.e., st is a deadlock.
The IOTS L1 ][ L2 can be obtained from the LTS L1 || L2 by pruning outgoing transitions
from states where the IOTS L1 and L2 are not compatible. For fully compatible IOTS, the
results of both operators, || and ][, coincide.
3. Framework for Queued-Quiescence Testing of IOTS
In a typical testing framework, it is usually assumed that the two systems, an implementation
under test (IUT) and tester, form a closed system. This means that if L1 is a tester, while L2 is
an IOTS modeling the IUT, then Σ1 = Σ2, I1 = O2, and I2 = O1. To be compatible with any
IOTS over the given alphabet Σ2 = I2 ∪ O2 the tester should be input-enabled. However, the
input-enableness has two implications on a behavior of the tester. Its behavior becomes
infinite since inputs enabled in each state create cycles and non-deterministic since the tester
has to choose non-deterministically between input and output. Both features are usually
considered undesirable. Testers should be deterministic and have no cycles. The two
requirements are contradicting.
It turns out that a tester processing outputs of an IUT separately from inputs could meet
both requirements. To achieve this, it is sufficient to decompose the tester into two
processes, one for inputs and another for outputs. Intuitively, this could be done as follows.
The input test process only sends to the IUT via input buffer a given (finite) number of
consecutive test stimuli. In response to the submitted input sequence, the IUT produces
outputs that are stored in another (output) buffer. The output test process, that is simply an
observer, only accepts outputs of the IUT by reading the output buffer. All the output
sequences the specification IOTS can produce in response to the submitted input sequence,
should take the output test process into terminal states labeled with the verdict pass, while
any other output sequence produced by an IUT should take the output test process to a
terminal state labeled with the verdict fail. Since the notion of a tester is based on the
definition of a set of output sequences that the specification IOTS can produce in response to
a submitted input sequence, we formalize both notions as follows.
Let L be an IOTS defined over the action set Σ = I ∪ O and pref(α) denote the set of all
the prefixes of a sequence α over the set Σ. The set pref(α) has the empty sequence ε. Also
given a set P ⊆ Σ*, let {β ∈ pref(γ) | γ ∈ P} = pref(P).
Definition 3. Given an input word α ∈ I*, the input test process with α is a tuple α =
<pref(α), ∅, I, λα, ε>, where the set of inputs is empty, while the set of outputs is I, λα =
{(β, a, βa) | βa ∈ pref(α)}, and the initial state is ε.
82
We slightly abuse α to denote both, the input sequence and the input test process that
executes this sequence. It is easy to see that each input test process is fully compatible with
any IOTS L that is input-enabled and defined over the set of inputs I. Notice that in this
paper, we consider only input-enabled IOTS specifications, while an implementation IOTS
(that models an IUT) is always assumed to be input-enabled.
To define an output test process that complements an input test process α, we have first to
determine all the output sequences, valid and invalid, the output test process has to expect
from IUT. The number of valid output sequences becomes infinite when the specification
oscillates, in other words, when it has cycles that involve only outputs. Further, we always
assume that the specification IOTS Spec = <S, I ∪ O, λ, s0> does not possess this property.
Thus, in response to α, the IOTS Spec can execute any trace that is a completed trace
[Glab90] of the IOTS α ][ Spec leading into a terminal state, i.e., into state g, where init(g) =
∅. Let ctraces(α ][ Spec) be the set of all such traces. It turns out that the set ctraces(α ][
Spec) is closely related to the set of quiescent traces of the specification qtraces(Spec), viz. it
includes each quiescent trace β whose input projection, denoted β↓I , is the sequence α.
Proposition 4. ctraces(α ][ Spec) = {β ∈ qtraces(Spec) | β↓I = α}.
Thus, the set ctraces(α ][ Spec)↓O = {β↓O | β ∈ qtraces(Spec) & β↓I = α} contains all the
output sequences that can be produced by the Spec in response to the input sequence α.
Let qtraces(s) be the set of quiescent traces of Spec in state s. Given a quiescent trace β ∈
qtraces(s), the sequence β↓Iβ↓Oδ is said to be a queued-quiescent trace of Spec in state s,
where δ ∉ Σ is a designated symbol that denotes the absence of outputs, i.e., quiescence. We
use Qqtraces(s) to denote the set of queued-quiescence traces of s {(β↓Iβ↓Oδ) | β ∈
qtraces(s)} and Qqtraceso(s, α) to denote the set {β↓Oδ | β ∈ qtraces(s) & β↓I = α}. Next, we
define the output test process itself.
Given the input test process α and the set Qqtraceso(s0, α), we define a set of output
sequences out(α) the output test process can receive from an IUT. Intuitively, it is sufficient
to consider all the shortest invalid output sequences along with all valid ones. Any valid
sequence should not be followed by any further output action, as the specification becomes
quiescent, while any premature quiescence indicates that the observed sequence is not a
valid output sequence. The set out(α) is defined as follows. For each β ∈ pref(Qqtraceso(s0,
α)) the sequence β ∈ out(α) if β ∈ Qqtraceso(s0, α), otherwise βa ∈ out(α) for all a ∈ O ∪
{δ} such that βa ∉ pref(Qqtraceso(s0, α)).
Definition 5. The output test process for the IOTS Spec and the input test process α is a
tuple <pref(out(α)), O ∪ {δ}, ∅, λα, ε>, where pref(out(α)) is the state set, O ∪ {δ} is the
input set, the output set is empty, λα = {(β, a, βa) | βa ∈ pref(out(α))} and ε is the initial
state. State β ∈ pref(out(α)) is labeled with the verdict pass if β ∈ Qqtraceso(s0, α) or with
the verdict fail if β ∈ out(α)\Qqtraceso(s0, α).
We reuse out(α) to denote the output test process that complements the input test process
α. For a given input sequence α ∈ I* the pair (α, out(α)) is called a queued-quiescence
tester or test case.
To describe the way the output tester interacts with an IOTS Imp ∈ IOTS(I, O) after the
input test process α has terminated its execution against Imp, we denote (α ][ Imp)↓O,δ the
83
IOTS that is obtained from (α ][ Imp) by first projecting it onto the output alphabet O and
subsequent augmenting all the stable states of the resulting projection by self-looping
transitions labeled with δ. In doing so, we treat the symbol δ as an input of the output test
process, assuming that the tester synchronizing on δ just detects the fact that its buffer has no
more symbols to read. Strictly speaking, treated as an output, a repeated δ violates the
compatibility of a system in a stable state and a tester that reaches its terminal state. With
this in mind, the correctness of the construction of the output test process (the soundness of
the tester) can be stated as follows.
Proposition 6. For any Imp ∈ IOTS(I, O) if the IOTS (α ][ Imp)↓O,δ ][ out(α) reaches a state
where (α ][ Imp)↓O,δ and out(α) are incompatible, then the output tester out(α) is in a
terminal state. For the Spec a state, where (α ][ Spec)↓O,δ and out(α) are incompatible is
reached only after quiescence, while the output tester is in a terminal state labeled with the
verdict pass.
Thus, the tester composed of two independent processes meets both requirements,
namely, it is compatible in all the states, save for the terminal ones, with any IOTS, it has no
cycles and never need choosing between input and output, thus the tester possesses the
required properties.
The composition (α ][ Imp)↓O,δ ][ out(α) of a queued-quiescence tester for a given
specification with an implementation IOTS Imp over the same action set as the specification
has one or several terminal states. In a particular test run, one of these states with the verdict
pass or fail is reached. Considering the distribution of verdicts in the terminal states of the
composition, the three following cases are possible:
Case 1. All the states have fail.
Case 2. States have pass as well as fail.
Case 3. All the states have pass.
These cases lead us to various relations between an implementation and the specification
that can be established by the queued-quiescence testing.
In the first case, the implementation is distinguished from the specification in a single test
run.
Definition 7. Given IOTS Spec and Imp, Imp is queued-quiescence separable from Spec, if
there exists a test case (α, out(α)) for Spec such that the terminal states of the IOTS (α ][
Imp)↓O,δ ][ out(α) are labeled with the verdict fail.
In the second case, the implementation can also be distinguished from the specification
provided that a proper run is taken by the implementation during the test execution.
Definition 8. Given IOTS Spec and Imp, Imp is queued-quiescence distinguishable from
Spec, if there exists a test case (α, out(α)) for Spec such that the terminal states of (α ][
Imp)↓O,δ ][ out(α) are labeled with the verdicts pass and fail.
Consider now case 3, when for a given test case (α, out(α)) all the states have pass. In
this case, the implementation does nothing illegal when the test case is executed, as it
produces only valid output sequences. Two situations can yet be distinguished here. Either
there exists a pass state of the output test process that is not included in any terminal state of
84
(α ][ Imp)↓O,δ ][ out(α) or there is no such a state. The difference is that with the given test
case in the former situation, the implementation could still be distinguished from its
specification, while in the latter, it could not. This motivates the following definition.
Definition 9. Given IOTS Spec and Imp,
• Imp is said to be queued-quiescence trace-included in the Spec if for all α ∈ I* no
terminal state of the IOTS (α ][ Imp)↓O,δ ][ out(α) is labeled with the verdict fail.
• Imp and Spec are queued-quiescence trace-equivalent if for all α ∈ I* all the terminal
states of the IOTS (α ][ Imp)↓O,δ ][ out(α) include all the pass states of out(α) and only
them.
• Imp that is queued-quiescence trace-included in the Spec but not queued-quiescence
trace-equivalent to the Spec is said to be queued-quiescence weakly-distinguishable from
Spec.
We characterize the above relations in terms of queued-quiescent traces.
Proposition 10. Given IOTS Spec with the initial state s0 and Imp with the initial state t0,
• Imp is queued-quiescence separable from Spec iff there exists an input sequence α such
that Qqtraceso(t0, α) ∩ Qqtraceso(s0, α) = ∅.
• Imp that is not queued-quiescence separable from Spec is queued-quiescence
•
•
•
distinguishable from it iff there exists an input sequence α such that Qqtraceso(t0, α)
Qqtraceso(s0, α).
Imp that is not queued-quiescence distinguishable from Spec is queued-quiescence
weakly-distinguishable from it iff there exists an input sequence α such that
Qqtraceso(t0, α) ⊂ Qqtraceso(s0, α).
Imp is queued-quiescence trace-included into Spec, iff Qqtraces(t0) ⊆ Qqtraces(s0).
Imp and Spec are queued-quiescence trace-equivalent iff Qqtraces(t0) = Qqtraces(s0).
Figure 1 provides an example of IOTS that are not quiescent trace equivalent, but are
queued-quiescence trace-equivalent. Indeed, the quiescent trace aa1δ of the IOTS L2 is not a
trace of the IOTS L1. In both, the input sequence a yields the queued-quiescent trace a1δ, aa
yields the queued-quiescent traces aa1δ and aa2δ, any longer input sequence results in the
same output sequences as aa.
?a
!1
?a
?a
!1
!1, !2
?a
?a
?a
?a
!2
L1
L2
Figure 1: Two IOTS that have the different sets of quiescent traces, but are queuedquiescence trace-equivalent; inputs are decorated with “?”, outputs with “!”;
stable states are depicted in bold.
?a
85
The IOTS L1 and L2 are considered indistinguishable in our framework, while according
to the ioco relation [Tret96], they are distinguishable. The IOTS L2 has the quiescent trace
aa1 that is not a trace of L1, therefore, to distinguish the two system, the tester has to apply
two consecutive inputs a. The output 1 appearing only after the second input a indicates that
the system being tested is, in fact, L2 and not L1. However, to make such a conclusion, the
tester should be able to prevent the appearance of the output 1 after the first input a. Under
our assumption, it is not possible. The tester interacts with the system via queues and has no
way of knowing when the output is produced. The presence of a testing context that is a pair
of finite queues in our case, makes implementation relations that could be tested via the
context coarser, as is usually the case [PYBD96].
4. Deriving Queued-Quiescence Test Cases
Proposition 10 indicates the way test derivation could be performed for the IOTS Spec and
an explicit fault model when we are given a finite set of implementations. Namely, for each
Imp in the fault model, we may first attempt to determine an input sequence α such that
Qqtraceso(t0, α) ∩ Qqtraceso(s0, α) = ∅. If fail we could next try to find α such that
Qqtraceso(s0, α). If Qqtraceso(t0, α) ⊆ Qqtraceso(s0, α) for each α the
Qqtraceso(t0, α)
question is about an input sequence α such that Qqtraceso(t0, α) ≠ Qqtraceso(s0, α), thus
Qqtraceso(t0, α) ⊂ Qqtraceso(s0, α). Based on the found input sequence, a queuedquiescence test case for the Imp in hand can be constructed, as explained in the previous
section. If no input sequence with this property can be determined we conclude that the
IOTS Spec and Imp are queued-quiescence trace-equivalent, they cannot be distinguished by
the queued-quiescence testing.
Search for an appropriate input sequence could be performed in a straightforward way by
considering input sequences of increasing length. To do so, we just parameterize Definitions
7, 8 and 9 and accordingly Proposition 10 with the length of input sequences. Given a length
of input sequences k, let Qqtracesk(s0) = {(β↓Iβ↓Oδ) | β ∈ qtraces(s0) & |β↓I| ≤ k}. The set
Qqtracesk(s0) is finite for the IOTS L with a finite set of quiescence traces. Then, e.g., Imp
and Spec are queued-quiescence k-trace-equivalent iff Qqtracesk(t0) = Qqtracesk(s0). If
length of α such that Qqtraceso(t0, α) Qqtraceso(s0, α) is k then Imp is said to be queuedquiescence k-distinguishable from Spec. With these parameterized definitions, we examine
all the input sequences starting from an empty input action. The procedure terminates when
the two IOTS are distinguished or when the value of k reaches a predefined maximum
defined by the input buffer of the IUT available for queued testing.
?a
?a
?a
?a
!1
?a
?a
?a
!1
?a
!2
!2
Spec
Imp
Figure 2: The IOTS that are queued-quiescence 2-distinguishable,
but not queued-quiescence 1-distinguishable.
Consider the example in Figure 2. By direct inspection, one can assure Imp is not queuedquiescence 1-distinguishable from Spec, for both produce the output 1 in response to the
86
input a. However, it is queued-quiescence 2-distinguishable from Spec. Indeed, in response
to the sequence ?a?a the Spec can produce the output 1 or 12. While the Imp - 2 or 12.
It is interesting to notice that the notion of k-distinguishability applied to the IOTS and FSM
models exhibits different properties. In particular, two k-distinguishable FSM are also k+1distinguishable. This does not always hold for IOTS. The system Imp in Figure 3 is queuedquiescence 1-distinguished from Spec; however, it is not queued-quiescence k-distinguished
from Spec for any k > 1.
?a
?a
?a
?a
!1
?a
!2
?a
!1
?a
?a
?a
!1
?a
!2 !1
!1
?a
Spec
Imp
Figure 3: The IOTS that are queued-quiescence 1-distinguishable,
but not queued-quiescence k-distinguishable for k > 1.
This indicates that a special care has to be taken when one attempts to adapt FSM-based
methods to the queued testing of IOTS.
There is at least one special case when distinguishability can be decided without
determining the sets of queued-quiescence k-traces for various k.
Let Imp↓O denote the set of output projections of all traces of Imp.
Proposition 11. Given two IOTS Spec and Imp, if the set Imp↓O is not a subset of Spec↓O
then Imp is queued-quiescence distinguishable from Spec, moreover, any quiescence trace β
∈ qtraces(Spec) such that β↓O ∈ Imp↓O\Spec↓O yields a queued-quiescence test case (β↓I,
out(β↓I)) that when executed against the Imp produces the verdict fail.
The statement suggests a procedure for deriving test cases.
Procedure for deriving a test case that distinguishes the IOTS Imp from Spec.
Input: IOTS Spec and Imp such that the set Imp↓O is not a subset of Spec↓O.
Output: A queued-quiescence test case (α, out(α)) such that Qqtraceso(t0, α)
Qqtraceso(s0, α).
Step 1. By use of a subset construction, project Imp and Spec onto the output set O.
Step 2. Using the direct product of the obtained projections, determine a trace ρ that is
a trace of the output projection of Imp while not being a trace of that of Spec.
Step 3. Compose LTS <pref(ρ), O, λρ, ε> with the Imp and obtain the LTS, where
each trace is a trace of the Imp with the output projection ρ. Determine the input
projection α of any trace of the obtained LTS and the queued-quiescence test case (α,
out(α)).
87
Proposition 12. Given two IOTS Spec and Imp, let (α, out(α)) be the queued-quiescence
test case derived by the above procedure. Then the queued-quiescence test case executed
against the Imp produces the verdict fail. Moreover, if no pass verdict can be produced then
Imp is queued-quiescence separable from Spec.
5. Queued-Suspension Testing of IOTS
In the previous sections, we explored the possibilities for distinguishing IOTS based on their
queued-quiescent traces. The latter are pairs of input and output projections of quiescent
traces. If systems with different quiescent traces have the same set of queued-quiescent
traces, no queued-quiescence test case can differentiate them. However, sometimes such
IOTS can still be distinguished by a queued testing, as we demonstrate below.
Consider the example in Figure 4. Here the two IOTS have different sets of quiescent
traces, however, the have the same set of queued-quiescent traces {a1δ, aa1δ, aa12δ, aaa1δ,
aaa12δ, … }. In the testing framework presented in Section 3, they are not distinguishable.
Indeed, we cannot tell them apart when a single input is applied to their initial states.
Moreover, in response to the input sequence aa and to any longer sequence, they produce
the same output sequence 12. The difference is that IOTS Imp, while producing the output
sequence 12, becomes quiescent just before the output 2 and the IOTS Spec does not. The
problem is that this quiescence is not visible through the output queue by the output test
process that expects either 1 or 12 in response to aa. The queued-quiescence tester can
detect the quiescence after reading the output sequence 12 as an empty queue, but it cannot
detect an “intermediate” quiescence of the system. It has no way of knowing whether the
system becomes quiescent before a subsequent input is applied. Both inputs are in the input
buffer and it is completely up to the system when to read the second input.
?a
?a
?a
!1
?a
?a
!2
!1
?a
?a
!1
?a
?a
!2
?a
Spec
Imp
Figure 4: The queued-quiescence equivalent IOTS.
Intuitively, further decomposing the tester for the Spec into two input and two output test
processes could solve the problem. In this case, testing is performed as follows. The first
input test process issues the input a. The first output test process expects the output 1
followed by a quiescence δ, when the quiescence is detected, the control is transferred to the
second input test process that does the final a. Then the second output test process expects
quiescence. If, instead, it detects the output 2 it produces the verdict fail which indicates that
the IUT is Imp and not Spec. Opposed to a queued-quiescence tester, such a tester can detect
an intermediate quiescence of the system. The example motivates the following definitions.
Let α1 … αp be a finite sequence of input words such that αi ∈ I*, i = 1, …, p, and αi ≠ ε
for i ≠ 1. Each word αi defines the input test process αi (see Definition 3). To define output
test processes that complement input test processes α1 … αp, we first notice that the first
88
output test process is designed based on the fact that the Spec starts in the only state that is
its initial state. This is no longer true for any subsequent output test process; the Spec can
start in one of several stable states, depending on an output sequence it has produced in
response to the stimuli from the previous input test processes. Let αβδ ∈ Qqtraces(s0), then
we use Spec-after-(α, β) to denote the set of stable states that are reached by Spec when it
executes all possible quiescent traces with the input projection α and output projection β.
Consider the input test process α2, before it starts, the Spec has produced one of
|Qqtraceso(s0, α1)| output sequences, each of which defines the set of stable states Specafter-(α1, β), where β ∈ Qqtraceso(s0, α1), these are the starting states for the second input
test process α2. Thus, we have to define |Qqtraceso(s0, α1)| output test processes that
complement the input test process α2. Each valid output sequence produced by the IUT so
far is used to decide which pair of input and output test processes should execute next, while
each invalid sequence terminates the test execution. Thus, testing becomes adaptive. For an
output sequence β ∈ Qqtraceso(s0, α1), the Spec can produce in response to α2 any output
sequence in the set Qqtraceso(Spec-after-(α1, β), α2). Generalizing this to αi+1, we have the
following. The set of output sequences the Spec can produce in response to αi+1 is
Qqtraceso(Spec-after-(α1…αi, β1…βi), αi+1), where for the output projection β1…βi it holds
that β1 ∈ Qqtraceso(s0, α1) and βj ∈ Qqtraceso(Spec-after-(α1…αj-1, β1…βj-1), αj) for each j
= 2, …, i. A sequence of output words β1…βi with such a property is said to be consistent
(with the corresponding sequence of input words α1…αi).
Each output projection β1…βi defines, therefore, a distinct test output process for the
(i+1)-th input test process. The set of output sequences out(αi+1, β1…βi) the output test
process for the given sequence β1…βi can receive from an IUT is defined as follows. For
each γ ∈ pref(Qqtraceso(Spec-after-(α1…αi, β1…βi), αi+1) the sequence γ ∈ out(αi+1,
β1…βi) if γ ∈ Qqtraceso(Spec-after-(α1…αi, β1…βi), αi+1), otherwise γa ∈ out(αi+1, β1…βi)
for all a ∈ O ∪ {δ} such that γa ∉ pref(Qqtraceso(Spec-after-(α1…αi, β1…βi), αi+1).
Let β1…βi⋅pref(out(αi+1, β1…βi)) denote the set {β1…βiα | α ∈ pref(out(αi+1, β1…βi))}.
Now we are ready to generalize the definition of output test processes (Definition 5), taking
into account a valid output sequence produced by an IUT with the preceding test processes.
Definition 13. Let α1 … αi+1 be a sequence of input words and β1…βi be a consistent
sequence of output words. An output test process for the IOTS Spec, sequence β1…βi and
the input test process αi+1 is a tuple <β1…βi⋅pref(out(αi+1, β1…βi)), O ∪ {δ}, ∅, λαi+1, β1…βi,
β1…βi>, where β1…βi⋅pref(out(αi+1, β1…βi)) is the state set, O ∪ {δ} is the input set, the
output set is empty, λαi+1, β1…βi = {(β1…βiγ, a, β1…βiγa) | γa ∈ pref(out(αi+1, β1…βi))} and
β1…βi is the initial state. Each state β1…βiγ is labeled with the verdict pass if γ ∈
Qqtraceso(Spec-after-(α1…αi, β1…βi), αi+1) or with the verdict fail if γ ∈ out(αi+1,
β1…βi)\Qqtraceso(Spec-after-(α1…αi, β1…βi), αi+1).
We use out(αi+1, β1…βi) to denote an output test process that complements the input test
process αi+1 and the output sequence β1…βi. For a given sequence of input words α1…αp,
the set of the tuples of pairs (α1, out(α1)), …, (αp, out(αp, β1…βp−1)) for all consistent output
sequences β1…βp−1 is called a queued-suspension tester or a queued-suspension test case
and is denoted (α1…αp, Out(α1…αp)).
It is clear that for a single input test process, a queued-suspension tester reduces to a
queued-quiescence tester. The queued-suspension testing is more discriminative than
89
queued-quiescence testing, as Figure 4 illustrates. In fact, consider a queued-quiescence
tester derived from a single sequence α1…αp and a queued-suspension tester derived from
the sequence of p words α1, …, αp, the former uses just the output projection of quiescent
traces that have the input projection α1…αp while the latter additionally partitions the
quiescent traces into p quiescent sub-traces. Then the two systems that cannot be
distinguished by the queued-suspension testing have to produce the same output projection,
moreover, the output projections have to coincide up to the partition defined by the partition
of the input sequence. This leads us to the notion of queued-suspension traces.
Given a finite sequence of finite input words α1…αp, a sequence of queued-quiescence
traces (α1β1δ)…(αpβpδ) is called a queued-suspension trace of Spec if α1β1δ ∈ Qqtraces(s0)
and for each i = 2, …, p it holds that βiδ ∈ Qqtraceso(Spec-after-(α1…αi-1, β1…βi-1), αi). We
use Qstraces(s) to denote the set of queued-suspension traces of Spec in state s.
We define the relations that can be characterized with queued-suspension testing by
adapting Definitions 7, 8, and 9.
Definition 14. Given IOTS Spec and Imp,
• Imp is queued-suspension separable from Spec, if there exist a test case (α1…αp,
Out(α1…αp)) for Spec such that for any consistent output sequence β1…βp−1 the terminal
states of the IOTS (αp ][ Imp after(α1…αp-1, β1…βp−1))↓O,δ ][ out(αp, β1…βp−1) are
labeled with the verdict fail.
• Imp is queued-suspension distinguishable from Spec, if there exist test case (α1…αp,
Out(α1…αp)) for Spec and consistent output sequence β1…βp−1 such that the terminal
states of the IOTS (αp ][ Imp after(α1…αp-1, β1…βp−1))↓O,δ ][ out(αp, β1…βp−1) are
labeled with the verdicts pass and fail.
• Imp is said to be queued-suspension trace-included in the Spec if for all α ∈ I* and all
possible partitions of α into words α1, …, αp, no terminal state of IOTS (αp ][ (αp ][ Imp
after(α1…αp-1, β1…βp−1))↓O,δ ][ out(αp, β1…βp−1) is labeled with the verdict fail.
• Imp and Spec are queued-suspension trace-equivalent if for all α ∈ I*, all possible
partitions of α into words α1, …, αp, and all consistent output sequence β1…βp−1, all the
terminal states of the IOTS (αp ][ Imp after(α1…αp-1, β1…βp−1))↓O,δ ][ out(αp, β1…βp−1)
include all the pass states of out(αi) and only them.
• Imp that is queued-suspension trace-included in the Spec but not queued-suspension
trace-equivalent to the Spec is said to be queued-suspension weakly-distinguishable from
Spec.
Accordingly, the following is a generalization of Proposition 10.
Proposition 15. Given IOTS Spec and Imp,
• Imp is queued-suspension separable from Spec iff there exists a finite sequence of input
words α1…αi such that Qstraceso(Imp-after-(α1…αi-1, γ1…γi-1), αi) ∩ Qstraceso(Specafter-(α1…αi-1, γ1…γi-1), αi) = ∅ for any consistent γ1…γi-1.
• Imp that is not queued-suspension separable from Spec is queued-suspension
distinguishable from it iff there exist a finite sequence of input words α1…αi and
consistent γ1…γi-1 such that Qstraceso(Imp-after-(α1…αi-1,
Qstraceso(Spec-after-(α1…αi-1, γ1…γi-1), αi).
90
γ1…γi-1),
αi)
•
•
•
Imp that is not queued-suspension distinguishable from Spec is queued-suspension
weakly-distinguishable from it iff there exist a finite sequence of input words α1…αi and
consistent γ1…γi-1 such that Qstraceso(Imp-after-(α1…αi-1, γ1…γi-1), αi) ⊂
Qstraceso(Spec-after-(α1…αi-1, γ1…γi-1), αi).
Imp is queued-suspension trace-included into Spec, iff Qstraces(t0) ⊆ Qstraces(s0).
Imp and Spec are queued-suspension trace-equivalent iff Qstraces(t0) = Qstraces(s0).
The queued-suspension testing also needs input and output buffers as the queuedquiescence testing. The size of the input buffer is defined by the longest input word in a
chosen test case (α1…αp, Out(α1…αp)), while that of the output buffer by the longest output
sequence produced in response to any input word. We assume the size of the input buffer k
is given and use it to define queued-suspension k-traces and accordingly, to parameterize
Definition 14 obtaining appropriate notions of k-distinguishability. In particular, a queuedsuspension trace of Spec α1β1δ…αpβpδ ∈ Qstraces(s0) is called a queued-suspension k-trace
of Spec if |αi| ≤ k for all i = 1, …, p. The set of all these traces Qstracesk(s0) has a finite
representation.
Definition 16. Let Sstable be the set of all stable states of an IOTS Spec = <S, I ∪ O, λ, s0>
and Ik denote the set of all words of at most k inputs. A queued-suspension k-machine for
Spec is a tuple <R, IkO*δ, λkstable, s0>, denoted Specksusp, where the set of states R ⊆ P(Sstable)
∪ {s0}, (P(Sstable) is a powerset of Sstable), and the transition relation λkstable are the smallest
sets obtained by application of the following rules:
• (r, αβ, r′) ∈ λkstable if αβ ∈ IkO*δ and r′ is the union of sets s-after-(α, β) for all s ∈ r.
• In case the initial state s0 is unstable (s0, αβ, r′) ∈ λkstable if αβ ∈ IkO*δ, α = ε and r′ = s0after-(ε, β).
Notice that each system that does not oscillate has at least one stable state.
Proposition 17. The set of traces of Specksusp coincides with the set of queued-suspension ktraces of Spec.
Corollary 18. Imp is queued-suspension k-distinguishable from Spec iff the Impkstable has a
trace that is not a trace of Specksusp.
Figure 1 gives the example of IOTS that are queued-suspension trace equivalent, recall
that they are also queued-quiescent trace-equivalent, but not quiescent trace equivalent.
We notice that a queued-suspension k-machine can be viewed as an FSM with the input
set Ik and output set Om for an appropriate integer m, so that FSM-based methods could be
adapted to derive queued-suspension test cases.
6. Conclusion
We addressed the problem of testing from transition systems with inputs and outputs and
elaborated a testing framework based on the idea of decomposing a tester into input and
output processes. Input test process is applying inputs to a system under test via a finite
input queue and output test process is reading outputs that the system puts into a finite
output queue until it detects no more outputs from the system, i.e., the tester detects
91
quiescence in the system. In such a testing architecture, input from the tester and output
from the system under test may occur simultaneously. We call such a testing scenario a
queued testing. We analyzed two types of queued testers, the first consisting of single input
and single output test processes, a so-called queued-quiescence tester, and the second
consisting of several such pairs of processes, a so-called queued-suspension tester. We
defined implementation relations that can be checked in the queued testing with both types
of testers and proposed test derivation procedures.
Our work differs from the previous work in several important aspects. First of all, we
make a liberal assumption on the way the tester interacts with a system under test, namely
that the system can issue output at any time and the tester cannot determine exactly its
stimulus after which an output occurs. We believe this assumption is less restrictive than any
other assumption known in the testing literature [BrTr01], [Petr01]. Testing with this
assumption requires buffers between the system and tester. These buffers are finite, opposed
to the case of infinite queues considered in a previous work [VTKB92]. We demonstrated
that in a queued testing, the implementation relations that can be verified are coarser than
those previously considered. Appropriate implementation relations were defined and test
derivation procedures were elaborated with a fault model in mind. Thus, the resulting test
suite becomes finite and related to the assumptions about potential faults, opposed to the
approach of [Tret96], where the number of test cases is, in fact, uncontrollable and not
driven by any assumption about faults. The finiteness of test cases allows us, in addition, to
check equivalence relations and not only preorder relations as in, e.g., [Tret96].
Concerning future work, we believe that this paper may trigger research in various
directions. One possible extension could be to consider non-rigid transition systems,
allowing non-observable actions. Procedures for test derivation proposed in this paper could
be improved, as our purpose here was just to demonstrate that the new testing problem with
finite queues could be solved in a straightforward way. It is also interesting to see to which
extent one could adapt FSM-based test derivation methods driven by fault models, as it is
done in [TaPe98] with a more restrictive assumption about a tester in mind.
Acknowledgment
This work was in part supported by the NSERC grant OGP0194381. The first author
acknowledges fruitful discussions with Andreas Ulrich about testing IOTS. Comments of Jia
Le Huo are appreciated.
References
[BoPe94] G. v. Bochmann and A. Petrenko, Protocol Testing: Review of Methods and
Relevance for Software Testing, the proceedings of the ACM International
Symposium on Software Testing and Analysis, ISSTA’94, USA, 1994.
[BrTr01] E. Brinksma and J. Tretmans, Testing Transition Systems: An Annotated
Bibliography, LNCS Tutorials, LNCS 2067, Modeling and Verification of Parallel
Processes, edited by F. Cassez, C. Jard, B. Rozoy and M. Ryan, 2001.
[dVBF02] R. G. de Vries, A. Belinfante and J. Feenstra, Automated Testing in Practice: The
Highway Tolling System, the proceedings of the IFIP 14th International
Conference on Testing of Communicating Systems, TestCom’2002, Berlin,
Germany, 2002.
92
[Glab90] R. J. van Glabbeek, The Liear Time-Branching Time Spectrum, the proceedings of
CONCUR’90, LNCS 458, 1990.
[JJTV99] C. Jard, T. Jéron, L. Tanguy and C. Viho, Remote Testing Can Be as Powerful as
Local Testing, the proceedings of the IFIP Joint International Conference,
Methods for Protocol Engineering and Distributed Systems, FORTE XII/PSTV
XIX, China, 1999.
[LyTu89] N. Lynch and M. R. Tuttle, An Introduction to Input/Output Automata, CWI
Quaterly, 2(3), 1989.
[Petr01] A. Petrenko, Fault Model-Driven Test Derivation from Finite State Models:
Annotated Bibliography, LNCS Tutorials, LNCS 2067, Modeling and Verification
of Parallel Processes, edited by F. Cassez, C. Jard, B. Rozoy and M. Ryan, 2001.
[Phal93] M. Phalippou, Executable Testers, the proceedings of the IFIP Sixth International
Workshop on Protocol Test Systems, IWPTS’93, France, 1993.
[PYBD96] A. Petrenko, N. Yevtushenko, G. v. Bochmann, R. Dssouli, Testing in Context:
Framework and Test Derivation, Computer Communications, 19, 1996.
[Sega93] R. Segala, Quiescence, Fairness, Testing and the Notion of Implementation, the
proceedings of CONCUR’93, LNCS 715, 1993.
[TaPe98] Q. M. Tan, A. Petrenko, Test Generation for Specifications Modeled by
Input/Output Automata, the proceedings of the 11th International Workshop on
Testing of Communicating Systems, IWTCS'
98, Russia, 1998.
[Tret96] J. Tretmans, Test Generation with Inputs, Outputs and Repetitive Quiescence,
Software-Concepts and Tools, 17(3), 1996.
[Vaan91] F. Vaandrager, On the Relationship between Process Algebra and Input/Output
Automata, the proceedings of Sixth Annual IEEE Symposium on Logic in
Computer Science, 1991.
[VTKB92] L. Verhaard, J. Tretmans, P. Kim, and E. Brinksma, On Asynchronous Testing,
the proceedings of the IFIP 5th International Workshop on Protocol Test Systems,
IWPTS’92, Canada, 1992.
93
94
Optimization Problems in Testing Observable Probabilistic Finite-State
Machines
Fan Zhang1 and To-yat Cheung2
1
2
Department of Computing, Hong Kong Polytechnic University
e-mail: [email protected]
Department of Computer Science, City University of Hong Kong
e-mail: [email protected]
Abstract: In this paper, we investigate the transfer sequence and diagnosis sequence for
testing a probabilistic finite-state machine whose transitions have weights. These
sequences are adaptive and are measured by their average length. We discuss the problem
of optimal strategies for selecting input and thus for generating these sequences. In
particular, we show that, if the probabilistic machine is observable (i.e., the next-state of
each transition can be uniquely determined by its output), then, polynomial-time
algorithms can be obtained for the following problems: (1) Find the shortest transfer
sequence from a start state to a target state, or prove that no such a sequence exists. (2)
Find the shortest pair-wise distinguishing sequences for a given pair of states, or prove
that no such sequence exists.
Keywords: Average weight, Diagnosis tree, Probabilistic finite-state machine, Software
testing, Transfer tree.
I.
INTRODUCTION
Nondeterminism is common in testing systems that have concurrent processes and
internal actions. Recently, research interest in testing has been extended from
deterministic finite-state machines (DFSM) [1,4,8,13] to nondeterministic finite-state
machines (NFSM) [2,3,5,7,9,12] and probabilistic finite-state machines (PM)
[2,3,14,15]. A PM is an NFSM with transition probabilities that represent the chance of a
transition to be triggered by the input.
In the state-based approach of testing, the system under test is specified as an finitestate machine M and a test sequence is designed based on M. During testing, the input
portion of the sequence is applied to the implementation under test (IUT) and the actual
outputs are compared with the expected ones to uncover any possible output or statetransition errors. Two major test activities must be carried out in this approach: statetransfer and state-identification. For state-transfer, the problem is to find a sequence of
95
inputs that drives the IUT from its initial state s to a targeted state t. For a DFSM, the
inputs along any directed path connecting s to t will serve this purpose. For an NFSM,
however, this problem becomes much more complex because the same input sequence
may bring the IUT sometimes to t and sometimes elsewhere. Therefore, instead of a
single path, we have to find a transfer-tree (TT) of which every path terminates at t, so as
to always bring the IUT to the expected targeted state.
State-identification is to verify the identification of a state. During testing, the current
state of the IUT cannot be observed directly but it can only be inferred from the output
observed. After the IUT is brought to a state t' that is expected to be t, the identification
of t' need to be checked to make sure the reached state t' is t indeed. For DFSM, a
diagnosis sequence of input/output pairs for t is derived. The following three kinds of
diagnosis sequences have been used most frequently: A distinguishing sequence can
identify the current state among all possible states. That is, the same distinguishing
sequence can be used for every state. A UIO sequence can differentiate a specific state r
from all other states. Different UIO sequences may be needed for different specified
states [11]. A pair-wise distinguishing sequence can identify the current state between
two given states. For an NFSM, similar to generalizing a transfer sequence to a TT, a
diagnosis sequence is generalized to a diagnosis tree (DT). For a general NFSM or PM,
most of the problems are computationally difficult. For example, deciding the existence
of a TT or DT is Exptime-complete; also, the algorithms for finding TTs and DTs require
exponential time [2].
For testing purpose, we believe that the PM is a better model than the NFSM. The
main reason is that the test sequence for a PM can be measured but cannot be (at least not
fairly) for an NFSM. Another reason is that the PM can reflect the stochastic behavior
pattern of the system under test but the NFSM cannot.
This paper reports our recent investigation on TTs and DTs for an observable PM
(OPM), a special but important class of PM [10]. In such a machine, the next-state of
each transition can be uniquely determined by its output. The transitions of the PM have
weight representing cost or time. The test sequences can be measured by their average
length. We discuss the problem of optimal strategies for selecting input and thus for
generating test sequences. In particular, we show that for an OPM, polynomial-time
algorithms can be obtained for the following problems: (1) Find the shortest transfer
sequence from a start state to a target state, or prove that no such a sequence exists
96
(Section III). (2) Find the shortest pair-wise distinguishing sequences for a given pair of
states, or prove that no such sequence exists (Section IV).
II. DEFINITIONS
This section gives definitions. Most of them can be found in [15].
Definition 2.1 A nondeterministic finite-state machine M is a quintuple (S, I, O, D, λ),
where S is a finite set of states, I is a finite set of inputs, O is a finite set of outputs, D ⊆ S
× I is the domain of the state-input pairs, and λ is a mapping from D to O × S. A
transition (i,j;a/y) starts at state i, ends at state j and is associated with an input/output
pair a/y. The symbol ε denotes “no input” or “no output”.
•
M is called a probabilistic machine (PM) if it is associated with a probability function
ρ: S × S × I × O → [0,1] such that ρ(i,j;a/y) > 0 if and only if (i,j;a/y) is a transition
and that ∑y,j ρ(i,j;a/y) = 1 for every (i,a) ∈ D.
•
M is further said to be an observable PM (OPM) if, for any two transitions (i,j1; a/y1)
and (i,j2; a/y2) with the same (i,a), y1 = y2 implies j1 = j2.
•
For the rest of the paper, M always represents an OPM with a weight function ω: S ×
S × I × O → [0,∞) such that ω(i,j;a/y) > 0 for every transition (i,j;a/y).
Example 1. Figure 1 shows an OPM N represented by a directed graph. In this OPM,
every transition has weight 1 and probability either 1 or 0.5 (not shown), depending on
whether there are one or two outgoing transitions with the same input. N is strongly
connected, i.e., for any two states s and s', there is a (directed) path from s to s'.
a/y
c/y
a/x
1
2
c/y
a/y
a/z
a/y
c/x
3
a/x
c/y
Figure 1. An OPM N.
Definition 2.2 A single-input tree T for M is formed by all possible execution paths
under an input-select strategy g. It is defined as follows: (1) T contains the starting state s
as its root. (2) At any node v of T whose corresponding state is i, there are two cases:
Case 1. No input is selected (as a testing goal has been achieved), v is a terminal node
and has label (i, ε). Case 2. An input a is selected by g, and the node in T has label (i, a);
97
also, for every outgoing transition (i,j;a/y) from i, an arc with label y and ending node j
will be attached to the node in T. (Note that a single-input tree may be infinite.)
Definition 2.3 Let T be a single-input tree for M and P be a path of T.
•
ρ(P), the probability of P, is the product of the probabilities of its arcs (transitions).
•
ω(P), the weight of P, is the sum of the weights of its arcs.
•
P is called a full path if it starts from the root and ends at a terminal node of T.
•
ρ(T), the probability of reaching a terminal node of T is defined as limitm → ∞ ∑(ρ(P):
for all full paths P of T with length ≤ m) and is denoted by ∑P⊆ T ρ(P).
•
T is said to be almost sure if ρ(T) = 1.
•
When T is almost sure, its average weight ω(T) is defined as ∑P⊆T ρ(P)ω(P). ω(T)
measures the efficiency of reaching a terminal node of T from its root.
•
T is said to be a t-targeted transfer tree (TT) at state s if it is an almost sure singleinput tree whose root is s and terminal nodes all have label (t,ε).
•
A policy f of M selects an input for each state, that is, f: S → I ∪ {ε}.
•
Tsf denotes the single-input tree at s determined by f, whose labels are (i,f(i)).
Example 2. Figure 2 shows the top part of a t-targeted TT (t = 1) at state 3 for OPM N
(Figure 1): T3 is determined by policy f: f(1) = ε, f(2) = c and f(3) = c. The probability
and weight of every arc of T2 are 1/2 and 1, respectively. T3 is almost sure, as ρ(T3) = 1/2
+ (1/2)2 +...+ (1/2)k + ... = 1. It average weight is ω(T3) = 1(1/2) + 2(1/2)2 + 3(1/2)3 +...+
k(1/2)k + ... = 2.
(3,c)
y
(3,c)
y
(3,c)
x
(1, ε)
x
(1, ε)
y
x
(1, ε)
Figure 2. A t-targeted TT T3 for OPM N.
Definition 2.4 Let M be an OPM with target t and f be a policy for M.
•
Mf denotes the submachine induced on M by f. That is, Mf = (S, I, O, Df, λ), where Df
is the domain {(i,f(i)): i ∈ S}.
•
M is said to be t-targeted if for every state v of M there is a directed path from v to t.
•
f is a t-policy if Mf is t-targeted.
98
We mention two useful facts about t-policies [15]: (a) If f is a t-policy, then Tif is a ttargeted TT for every i ∈ S. (b) If M is t-targeted, then there is a polynomial-time
algorithm for finding a t-policy f for M.
III. OPTIMAL TRANSFER-TREES
Now we consider the problem of finding an optimal policy for M that generates TTs
having minimum average weight. We first consider the case where M has a t-policy.
Definition 3.1 Let f be a policy for M = (S, I, O, D, λ), n = |S|, i, j ∈ S and a ∈ I ∪{ε}.
•
µ(i,a,j) denotes the total probability of all the transitions which start at state i, have
input a and end at state j, i.e., µ(i,a,j) = ∑y ρ(i,j;a/y) and µ(i,ε,j) = 0.
•
Af denotes the n × n matrix (aij), where aij = µ(i,f(i),j).
•
E denotes the n × n identity matrix.
•
bia denotes the average weight of those transitions outgoing from i and activated by
input a, i.e., bia = ∑ y,j ρ(i,j;a/y)ω(i,j;a/y) and biε = 0.
•
bf denotes the vector (bi: i ∈ S), where bi = bif(i).
Optimality Condition of a t-policy f [15]: f is optimal if and only if z = (E − Af)−1bf
satisfies the following inequalities:
zi ≤ bia + ∑j∈S µ(i,a,j)zj,
for every (i,a) ∈ D and i ≠ t.
Algorithm Optimal-Policy
Given: A t-targeted OPM M = (S, I, O, D, λ).
Result: An optimal policy h for generating the shortest transfer trees.
Step 1: Find an optimal solution z* to the following linear program (LP):
LP:
maximize
∑(zj: j ∈ S)
Subject to: zi − ∑j∈S µ(i,a,j)zj ≤ bia, for every (i,a) ∈ D
zt = 0
Step 2: Let M* be the OPM induced by D* = {(i,a) ∈ D: z*i − ∑ j µ(i,a,j)z*j = bia }. Find
a t-policy h of M*.
Theorem 1: Algorithm Optimal-Policy is correct and has polynomial-time complexity.
Sketch Proof: Consider the dual linear program of the LP:
DLP: minimize
∑( biaxia: (i,a) ∈ D)
Subject to ∑a∈I xja − ∑(i,a)∈D xiaµ(i,a,j) = 1, j ∈ S\{t}
xia ≥ 0,
(i,a) ∈ D
99
As M has a t-policy, say f, we construct x* based on this f as follows: For all (i,a) ∈ D,
x*ia = x* if(i) if a = f(i); x*ia = 0 if a ≠ f(i); and x*iε = 0. x* satisfies the equations of the
DLP and especially,
xjf(j) − ∑i µ(i,f(i),j)xif(i) = 1, for all j ∈ S\{t}, and xtf(t) = 1,
which is, in matrix form,
(xif(i): i ∈ S)(E − Af) = (1,1, …,1).
Furthermore, as (E − Af)−1 exists and is non-negative, (x*if(i): i∈ S) = (1,1,…,1)(E − Af)−1
is non-negative. Hence, x* is a feasible solution to the DLP, and the LP has a finite
solution z*.
It can be easily shown that M* has a t-policy h. As all (i, h(i)) ∈ D*, z* satisfies
z*i − ∑j µ(i,h(i),j)z*j = bih(i), and hence z* = (E − Ah)−1bh. Because z* satisfies the
Optimality Condition, h is an optimal t-policy.
The LP can be solved in polynomial time [6], yielding a finite optimal solution z*. As
mentioned in Section II, a t-policy for M can be obtained in polynomial-time. !
For an arbitrary OPM M, one can reduce M into an OPM M' that has a t-policy [15]
and then apply the algorithm presented here.
IV.
DIAGNOSIS TREES
This section investigates the problem of finding a pair-wise distinguishing tree that
has a minimum average weight for an OPM, and also discusses UIO trees and
distinguishing trees.
Definition 4.1 For two states t and r of an OPM M, a pair-wise distinguishing tree (PDT) T
is an almost-sure single-input tree rooted at (t, r) that can decide the state under test to be
either t or r whenever the input/output sequence of any full path of T is executed.
An example of such a PDT for OPM N (Figure 3a) is given in Figure 3b. The symbol
“~” stands for “state does not exist”.
100
((1, 2), a)
a/y
c/y
1
a/x
x
2
c/y
y
((1, ~), ε )
a/y
((~, 3), ε)
3
a/x
c/y
((~, 3), ε)
((2, 1), a)
x
y
a/z
a/y
c/x
z
x
((1, 2), a)
z
z
((1, ~), ε)
y
Figure 3a. An OPM N
Figure 3b. A PDT for (1, 2).
The problem of creating a general PDT was first investigated by Alur et al [2]. We
shall find the minimum-length PDT by a similar approach, that is, to transform the
problem of finding a PDT to a problem of finding a TT. It can be briefly described as
follows: First, construct an auxiliary ONFSM M' from M. The state set of M' is a subset
of (S×S) ∪{θ}, where S is the state set of M and θ is the target state representing the
cases where an inference of the state identification can be drawn. Next, find an optimal
TT for M' from the start state (t, r) to the targeted state θ. One can show that an optimal
TT for M' with weight and probability assigned according to the algorithm below is
essentially an optimal PDT for M. For the following algorithm, we assume that M is
completely specified, that is, D = S × I.
Algorithm Optimal-PDT
Given: An OPM M = (S, I, O, D, λ) and two states t, r ∈ S, where the probability of the
state being t is p and the probability being r is q = 1 – p.
Result: An OPM M' = (S', I', O', D', λ') and an optimal θ-policy f for M'. If f(t, r) ≠ ε,
then an Optimal PDT can be obtained by applying f on M'. Otherwise, PDT for (t, r)
does not exist.
Method:
Step 1. Construct M' from M as follows, where ρ' and ω' are the probability and
weight functions of M', respectively:
S' ← (S × S) ∪ {θ}, I' ← I, O' ← O, D' ← (S' \{(v,v): v ∈ S}) × I;
for (every (i,j) ∈ S'\{θ} such that i ≠ j and every input a)
for every transition e1 = (i, i'; a/y), construct a transition e of M' as follows:
If there exists j' such that e2 = (j, j'; a/y) is a transition of M,
e = ((i,j), (i',j'); a/y);
101
/* add ((i',j'), y) to λ'((i,j), a) */
ρ'(e) = pρ(e1) + qρ(e2), ω'(e) = pω(e1) + qω( e2)
else (no such j' exists)
e = ((i,j), θ; a/y).
/* add (θ, y) to λ'((i,j), a) */
ρ'(e) = pρ(i, i'; a/y), ω'(e) = pω(e1);
end for
for every transition e2 = (j, j'; a/y) such that no transition (i, i'; a/y) exists,
construct a transition e of M' as follows:
e = ((i,j), θ; a/y).
/* add (θ, y) to λ'((i,j), a) */
ρ'(e) = qρ(e2), ω'(e) = qω(e2);
end for
end for
Step 2. Find an optimal policy f for M' with targeted state θ by applying Algorithm
Optimal-Policy of Section III.
Theorem 2 Algorithm Optimal-PDT finds a policy f for generating a PDT with minimum
average weight (when f(t, r) ≠ ε) or concludes that no PDT exists for the pair (t, r) (when
f(t, r) = ε).
Remark on the Algorithm Optimal-PDT:
(a) If p = 1 and q = 0, then the policy f is to verify the current state is t but not r.
(b) If p = 0 and q = 1, then the policy f can be used to verify the current state is r but
not t.
(c) If both p and q are not 0, then the policy f can identify the state as either t or r.
(d) The way of assigning the transition probability and weight of M' ensures that M' is
an OPM and that the PDT is optimal.
Definition 4.2: For a given state s of M, a unique input output tree (UIOT) is an almost
sure single-input tree T of M rooted at s such that, when the input sequence of any full
path P of T is applied to a different state, the output sequence is always different from
that of P.
One of the approaches for obtaining the shortest UIOT for a state s is to look into the
state space Sn, using ideas similar to the PDT. A UIOT for state 1 of OPM N is shown in
Figure 4a in the space Sn, where T1 is a PDT (p = 1, q = 0) for the pair (1, 3) and T2 is a
PDT (p = 1, q = 0) for the pair (2, 1). For the arc from ((1,2,3), a) to ((1,∼,3), a) of the
UIOT, its probability and weight are respectively assigned 0.5 and 1, same as those of the
transition (1, 1; a/x) of N. For the arc from ((1,2,3), a) to ((2,1,1), a), its probability and
102
weight are respectively assigned those of the transition (1, 2; a/y). In general, the
probabilities and weights of a UIOT for state s are the same as those of the corresponding
single-input tree starting at s.
((1,2,3), c)
x
y
((~,2,1), a)
((2,1,3), c)
((1,2,3), a)
x
((1,~,3), c)
y
x
T3
((2,~,1), a)
((2,1,1), a)
y
((1,2,3), c)
x
T1
y
T3
T2
Figure 4a. A UIOT for state 1
Figure 4b. A distinguishing tree for OPM N
Definition 4.3: A distinguishing tree for M is an almost sure single-input tree T such that,
whenever the end of a full path of T is reached, the initial state is uniquely identified.
As an example, Figure 4b shows a distinguishing tree for OPM N (Figure 3a), where
T3 is a PDT for the pair (2, 1). As for a PDT, the average weight of a distinguishing tree
is related to the probabilities p1, …, pn, where pi represents the probability of the state
under test being state i.
V
CONCLUDING REMARKS
In this paper, we described a polynomial-time algorithm for finding the shortest
transfer tree for an observable probabilistic finite-state machine. We also reduced the
problem of finding the shortest pair-wise distinguishing tree into the shortest transfer-tree
problem.
Many problems remain unsolved and require further research. For example, for state
transfer, a direct combinatorial and polynomial-time algorithm for finding an optimal
policy is desirable. For state identification, algorithms for generating the optimal UIOT
and DT need to be investigated.
ACKNOWLEDGEMENT
We thank the referees for their comments. This work is supported by the Hong Kong
Polytechnic University Research Grant G-YC51.
103
REFERENCES
1. Aho, A.V., Dahbura, A.T., Lee, D. and Uyar, M.U. (1991), “An optimization technique
for protocol conformance test generation based on UIO sequences and rural Chinese
postman tours,” IEEE Trans. on Commun., 39 (11), pp. 1604-1615.
2. Alur, R., Courcoubetis, C. and Yannakakis, M. (1995), “Distinguishing tests for
nondeterministic and probabilistic machines”, Proc. Twenty-Seventh Annual ACM
Symposium on Theory of Computing, Las Vegas, Nevada, pp. 363-372.
3. Cheung, T. and Ye, X. (1995), “A fault-detection approach to the conformance testing of
nondeterministic systems”, Journal of Parallel and Distributed Computing 28, pp. 94100.
4. Chow, T.S. (1989), “Testing software design modeled by finite-state machines”, IEEE
Trans. on Software Eng. 4 (3), pp. 178-187.
5. Fujiwara, S. and Bochmann, G.v. (1992), “Testing non-deterministic state machines with
fault coverage”, Protocol Test Systems, IV, (J. Kroon, R.J. Heijink, and E. Brinksma
eds.), pp. 267-280.
6. Khachiyan, L.G. (1979), “A polynomial algorithm in linear programming”, Soviet Math
Dolk. 20, pp. 191-194.
7. Kloomsterman, H. (1993), “Test derivation from nondeterministic finite-state machines”,
Protocol Test Systems V, (Bochmann, G.v., Dssouli, R. and Das, A. Eds.), North
Holland, pp. 297-308.
8. Lee, D. and Yannakakis, M. (1996), “Principles and methods of testing finite state
machines - a survey”, Proc. IEEE 84, pp. 1090-1126.
9. Low, S. (1993), “Probabilistic conformance testing of protocols with unobservable
transitions”, Proc. Intl. Conf. on Network Protocols, pp. 368-375.
10. Luo, G., Bochmann, G.v., Das, A. and Wu, C. (1992), “Failure-equivalent transformation
of transition systems to avoid internal actions”, Infor. Processing Letters 44, pp. 333343.
11. Sabnani, K. and Dahbura, A. (1988), “A protocol test generation procedure”, Computer
Networks and ISDN Systems 15, pp. 285-297.
12. Tripathy, P. and Naik, K. (1993), “Generation of adaptive test cases from
nondeterministic finite state models”, Protocol Test Systems V, (Bochmann, G.v.,
Dssouli, R. and Das, A. Eds.), North Holland, pp. 309-320.
13. Ural, H., Wu, X. and Zhang, F. (1997), “On minimizing the lengths of checking
sequences”, IEEE Trans. on Computers 46 (1), pp. 93-99.
14. Yi, W. and Larsen, K.G. (1992), “Testing probabilistic and nondeterministic processes”,
Protocol Specification, Testing, and Verification XII, pp. 47-62.
15. Zhang, F and Cheung T.Y. (2002) “Optimal transfer trees and distinguishing trees for
testing observable nondeterminstic finite-state machines”, IEEE Trans on Soft Eng,
accepted.
104
BZ-TT: A Tool-Set for Test Generation from Z and
B using Constraint Logic Programming
F. Ambert, F. Bouquet, S. Chemin, S. Guenaud,
B. Legeard, F. Peureux, N. Vacelet
Universite de Franche-Comte, France
M. Utting
The University of Waikato, New Zealand
Abstract
In this paper, we present an environment for boundary-value test generation
from Z and B specications. The test generation method is original and was
designed on the basis of several industrial case-studies in the domain of critical
software (Smart Card and transport areas). It is fully supported by a tool-set:
the BZ-Testing-Tools environment. The method and tools are based on a novel,
set-oriented, constraint logic programming technology. This paper focusses on
how this technology is used within the BZ-TT environment, how Z and B
specications are translated into constraints, and how the constraint solver is
used to calculate boundary values and to search for sequences of operations
during test generation.
Key words: Computer-Aided Software Testing Tool, Specication-based test generation, boundary value testing, B notation, Z notation
1
Introduction
From the end of the 1980's, specication-based test generation has been a very
active and productive research area. In particular, formal specication has been
clearly recognized as a very powerful input for generating test data [BGM91, DF93,
Tre96, FJJV96], as well as for oracle synthesis [RO92].
In [LPU02b], we presented a new approach for test generation from set-oriented,
model-based specications: the BZ-TT method. This method is based on constraint
logic programming (CLP) techniques. The goal is to test every operation of the
system at every boundary state using all input boundary values of that operation.
The unique features of the BZ-TT method are that it:
takes both B [Abr96] and Z [Spi92] specications as input;
avoids the construction of a complete nite state automaton (FSA) for the
system;
produces boundary-value test cases (both boundary states and boundary input
values);
produces both negative and positive test cases;
105
is fully supported by tools;
has been validated in several industry case studies (GSM 11-11 smart card
software [LP01, BLLP02], Java Card Virtual Machine Transaction mechanism [BJLP02], and a ticket validation algorithm in the transport industry
[CGLP01]). The method is currently being used in another industrial project
to generate tests for an automobile windscreen wiper controller.
B Source
File
Z Source
File
Java Module
Sicstus Prolog Module
Parsing
Parsing
XML Format File
Type−Checking
Intermediate Form
Generator
Source Format File
Type−Checking
Intermediate Form
Generator
Intermediate Form File
BZP
Table Generator
Script
Test Patern
Table File
Executable
Test
Generation
Executable
Test source
G
U
I
Tests sequences
File
Test
G
E
N
E
R
A
T
O
R
TEST
Builder
Test
Sequences
CLPS−BZ
Executer
Reducer
Bondary
Value
Integer
GUI
Solvers
Relation Set Sequence
A
N
I
M
A
T
I
O
N
GUI
Figure 1: Overall Architecture of the BZ-TT Environment
Figure 1 shows the architecture of the BZ-TT environment. The key component
in this environment is the CLPS-BZ solver, which is used to calculate boundaries
and simulate the execution of operations. It is this solver which enables the test
generation process to be eectively automated. Furthermore, since it is a general
reasoning engine, whose input is a pre/post specication format, it could potentially be used with notations other than Z or B, and for purposes other than test
generation.
This paper describes how the CLPS-BZ solver is used to support the BZ-TT
method of test generation and how it enables both Z and B specications to be
represented as constraint systems. Section 2 gives an overview of the BZ-TT test
generation method. Section 3 describes how Z and B specications are mapped
into a common format: the BZP intermediate form. Section 4 describes the CLPSBZ constraint solver, and how BZP predicates are represented as sets of constraints.
Section 5 describes how the test generation modules use the CLPS-BZ solver. Section
6 discusses related work; Section 7 gives conclusions and outlines future work.
106
2
Overview of the BZ-TT test generation method
Our goal is to test some implementation, which is not derived via renement from
the formal model. The implementation is usually a state machine with hidden state.
We specify this state machine by a B or Z formal specication, which has a state
space (consisting of several state variables) and a number of operations that modify
this state.
A behavior of such a system can be described in terms of a sequence of operations
(a trace) where the rst is activated from the initial state of the machine. However,
if the precondition of an operation is false, the eect of the operation is unknown,
and any subsequent operations are of no interest, since it is impossible to determine
the state of the machine. Thus, we dene a positive test case to be any legal trace,
i.e. any trace where all preconditions are true. A positive test case corresponds to a
sequence of system states presenting the value of each state variable after each operation invocation. The submission of a legal trace is a success if all the output values
returned by the concrete implementation during the trace are equivalent (through
a function of abstraction) to the output values returned by its specication during
the simulation of the same trace (or included in the set of possible values if the
specication is non-deterministic). A negative test case is dened as a legal trace
plus a nal operation whose precondition is false. The generation of negative test
cases is useful for robustness testing.
The BZ-TT method consists of testing the system when it is in a boundary state,
which is a state where at least one state variable has a value at an extremum {
minimum or maximum { of its sub-domains. At this boundary state, we want to
test all the possible behaviors of the specication. That is, the goal is to invoke each
update operation with extremum values of the sub-domains of the input parameters.
The test engineer partitions the operations into update operations, which may modify
the system state, and observation operations, which may not.
We divide the trace constituting the test case into four subsequences:1
Preamble: this takes the system from its initial state to a boundary state.
Body: this invokes one update operation with input boundary values.
Identication: this is a sequence of observation operations to enable a pass/fail
verdict to be assigned.
Postamble: this takes the system back to the boundary state, or to an initial state.
This enables test cases to be concatenated.
The body part is the critical test invocation of the test case. Update operations
are used in the preamble, body and postamble, and observation operations in the
identication part.
The BZ-TT generation method is dened by the following algorithm, where
bound1 ; bound2 ; :::; boundn and op1 ; op2 ; :::; opm respectively dene the set of all
boundary states and the set of all the update operations of the specication:
f
g
1 The
f
g
vocabulary follows the ISO9646 standard [ISO].
107
for i 1 to n
preamble(boundi );
for j 1 to m
body(opj );
identification;
postamble(boundi );
endfor
postamble(init);
endfor
% for each boundary state
% reach the boundary state
% for each update operation
% test opj
% observe the state
% return to the boundary state
% return to the initial state
This algorithm computes positive test cases with valid boundary input values at
body invocations. A set of one or more test cases, concatenated together, denes a
test sequence. For negative test cases, the body part is generated with invalid input
boundary values, and no identication or postamble parts are generated, because
the system arrives at an indeterminate state from the formal model point of view.
Instead, the test engineer must manually dene an oracle for negative test cases
(typically something like the system terminates without crashing ).
After positive and negative test cases are generated by this procedure, they are
automatically translated into executable test scripts, using a test script pattern and
a reication relation between the abstract and concrete operation names, inputs and
outputs.
3
The BZP intermediate form
B and Z have many similarities. They both support model-oriented specication and
they have similar operator toolkits and type systems. The main dierence between
them is that in Z the schema calculus is used to structure specications and specify
states and operations in a exible way, whereas B provides an abstract programming
notation (the generalized substitution language ) for specifying operations, plus a
specialized machine construct for specifying hierarchies of state machines.
The BZ-TT environment supports both B and Z specications by translating
them into a common notation, called BZP (B/Z Prolog format). Since the underlying
CLPS-BZ solver manipulates constraints, which are restricted kinds of predicates,
operations are specied in BZP using pre/post predicates.
Figure 2 gives an overview of the translation process. The generation and discharge of well-formedness proofs for B is done using standard B tools (typically
before test generation begins). The B to BZP translator is written in Java, and uses
the rules from the B book [Abr96, Chap. 6] to translate the generalized substitution
language into pre/post predicates. The rst stage of the Z to BZP translator uses
standard Z tools, while the second stage is a specic translator.
For simplicity, and to improve the scalability of the test generation process, we
impose three restrictions on the input specication. Firstly, it must specify a single
machine. For B, this means that we allow only one abstract machine, without
layering etc. For Z, we must identify the state, initialization and operation schemas
of the machine. Secondly, operations must have explicit preconditions. For Z this
means preconditions must be calculated (either manually, or using a theorem prover)
before translation. This is good engineering practice anyway. In B, operations
usually have explicit preconditions, but it is possible for the precondition to be
distributed throughout the operation. We require the entire precondition to appear
at the beginning of the operation, and also require this precondition to be strong
108
enough to ensure that the operation is feasible. Third, all the data structures must
be nite, which means that the given sets are either enumerated or of a known nite
cardinality. If everything is nite, then all specications are executable (by labelling
if necessary).
B Specification
Z specification
Typechecking;
Typechecking;
Translation to
pre/post format;
Precondition calculation
Translation to
BZP syntax
Well−formedness
and feasibility proofs
Z + explicit preconds
Schema expansion;
Translation to
BZP syntax
BZP File
Figure 2: Translation of B and Z specications into common BZP format.
The BZP format is a Prolog-readable syntax which supports the union of the
B and Z toolkits and provides special constructs for dening state machines and
operations. The syntax of expressions and predicates is similar to the Atelier-B
ASCII notation for B (*.mch syntax). A BZP specication contains an unordered
set of facts, each of which has one of the following forms:
specication (Spec Name ):
predicat (Spec Name ; PREDICAT KIND ; ID ; Pred ):
declaration (Spec Name ; DECL KIND ; Name ; Type ):
operation (Spec Name ; Operation Name ):
The ID terms are used only for reporting errors, and are typically the line number
where that predicate appeared in the original specication source.
The PREDICAT KIND and DECL KIND terms relate each fact to some section
of the original B machine (and similar constructs in Z), and are dened as follows.
PREDICATE KIND indicates the role of the predicate, and must be one of the
constants: constraint, property, invariant, initialisation, assertion or one
of the terms pre(OpName ) or post(OpName ).
Similarly, DECL KIND indicates what kind of name is being declared, and must
be one of the constants: parameter, set, constant, variable, definition or one
of the terms input(OpName ) or output(OpName ). For definition, the type is a
singleton set containing the right-hand-side of the denition.
Invariants have dierent roles in B and Z. This dierence is visible in the resulting
BZP le, since when we translate a Z operation, we include the (primed) invariant
in its postcondition because it often contributes to the eect of the operation, but
when we translate a B operation we do not include the invariant. However, the wellformedness proofs for a B machine check that every operation preserves the invariant,
so discharging these proofs ensures that the B and Z approaches are equivalent.
To illustrate how Z specications are translated to BZP format, we translate the
following fragment of a simple process scheduler [DF93]
PID ::= p 1 p 2 p 3 p 4
j
j
j
109
Scheduler
active ; ready ; waiting : F PID
#active 1
ready \ waiting = ;
active \ waiting = ;
active \ ready = ;
(active = ;) ) (ready
= )
;
New
Scheduler
pp ? : PID
pp ? 2= active [ ready [ waiting
waiting 0 = waiting [ fpp ?g
ready 0 = ready
active 0 = active
The declaration of PID and the state schema produce:
machine(scheduler).
declaration(scheduler,
declaration(scheduler,
declaration(scheduler,
declaration(scheduler,
predicat(scheduler,
predicat(scheduler,
predicat(scheduler,
predicat(scheduler,
predicat(scheduler,
set, pid,
variable,
variable,
variable,
invariant,
invariant,
invariant,
invariant,
invariant,
The New operation produces:
3
4
5
6
7
{p1, p2, p3, p4}).
ready, power(pid)).
active, power(pid)).
waiting, power(pid)).
,
,
,
,
,
card(active) =< 1).
ready /\ waiting = {}).
active /\ waiting = {}).
active /\ ready = {}).
(active = {}) => (ready ={})).
operation(scheduler, new).
declaration(scheduler,input(new), pp, pid).
predicat(scheduler, pre(new), 10 , pp /: active \/ ready \/ waiting).
predicat(scheduler, post(new), 11 , prime(waiting) = waiting \/ {pp} ).
predicat(scheduler, post(new), 12 , prime(ready) = ready).
predicat(scheduler, post(new), 13 , prime(active) = active).
predicat(scheduler, post(new), 3 , card(prime(active)) =< 1).
predicat(scheduler, post(new), 4 , prime(ready) /\ prime(waiting) = {}).
predicat(scheduler, post(new), 5 , prime(active) /\ prime(waiting) = {}).
predicat(scheduler, post(new), 6 , prime(active) /\ prime(ready) = {}).
predicat(scheduler, post(new), 7 , (prime(active) = {}) => (prime(ready) ={})).
4
The CLPS-BZ solver
The CLPS-BZ solver is implemented in SICStus Prolog, and is comprised of three
subsystems:
The Executer: which manages the execution of the specied machine. The Executer obtains predicates from the BZP specication, and passes them to the
other modules to achieve the eect of executing the desired operation.
110
which translates BZP predicates into lower-level constraints.
The Constraint Store: which records the current state of the specied machine
after some sequence of operations. In fact, we use symbolic execution, so a
single constraint store typically corresponds to many possible concrete states
of the specied machine.
We now describe these three subsystems, in a bottom-up fashion.
The Reducer:
4.1
The Constraint Store
The CLPS-BZ solver manages a constraint store, which encodes a predicate (or a
set of states) over the variables of the formal model. The constraint store contains
both set-oriented constraints and nite domain (integer) constraints. The former
are managed by a customized set-constraint solver called CLPS, while the latter are
managed by the SICStus Prolog CLP(FD) solver. In this section we focus only on
the set part of the store (CLPS).
The CLPS solver was originally developed for solving combinatorial problems,
and is designed to work on homogeneous hereditary nite sets [ALL96]. It provides
ve primitive constraint relations, which are the classical set relations, ; ; ; =; =,
and three operators ( ; ; ). It also provides the cardinality operator, which is
important because it links the set constraints to the numerical constraints. Cardinality constraints are one way that information propagates between the CLPS and
CLP(FD) solvers. The API of the solver includes procedures for adding each kind
of primitive constraint, query procedures for nding information about the domains
of variables, and labelling procedures for iterating through all possible values of a
given variable.
Internally, the CLPS solver represents the domain of each variable using one or
more of the following representations: undened, min-max (bounded) and enumerated. Initially, the domain of a new domain variable (say X ) is set to undened.
When a membership constraint (e.g., X PID ) is added, an enumerated domain
is used to record all the possible values that X can take. When a subset constraint
(e.g., X Expr or Expr X ) , a min-max domain is used to record the lower
bound and upper bound of X .
Usually in Constraint Satisfaction Problems (CSP), solvers allow only valued
domains, where domains are sets of values. CLPS extends this by introducing the
notion of V-CSP [BLP02], which allows variables to appear in the domains of other
variables. This means that more complex rules are needed to manipulate these
symbolic domains, but the advantage is that a higher level of abstraction can be
achieved. CLPS allows variables within min-max domains and within enumerated
domains under the condition that all elements are dierent in a variable domain.
When two variables are unied, the intersection of their valued domains can be
calculated immediately. However, for the variable domains representation, it is not
always possible to combine the two symbolic domains, so the variable domain stores
a set of domains and the true domain of the variable is the intersection of these
domains.
The execution model of CLPS can be viewed as a transition system, where transitions represent reduction, inference and consistency rules [JM94]. The consistency
algorithm used by CLPS ensures partial consistency, using on one hand the domain
representations, and on the other hand the constraints store. To maintain domain
consistency, CLPS combines arc-consistency techniques derived from AC3 [Mac77]
and interval-narrowing over valued domains. So it is possible to have some elements
2 62 [ \ n
2
111
6
in domains not removed by these techniques, because only couple of variables are
checked. The solver uses similar methods to reduce variable domains except that
instead of manipulating one domain per variable, it manipulates a conjunction of
domains (enumerated and min-max).
The constraint store is used for two purposes. Firstly, it allows the propagation
of domain reductions, which enables consequences of constraints to be deduced. Secondly, it allows the solver to detect some semantic inconsistencies, which is crucial for
pruning the search space. The following example shows how propagation works when
constraints are acquired by the solver. In this example, B ; C ; D ; G ; X ; Y are variables, Val DomX represents values included in the valued domain and Var DomX
represents the conjunction of variable domains.
Acquired constraints Val DomX Var DomX
1 X B; C ; D; Y
undef
ffB C D Y gg
2 X B; C ; D; 2
undef
ffB C D Y g fB C D 2gg
3 X 3; 4; G
undef
ffB C D Y g fB C D 2g f3 4 G gg
4 X 1; 2; 3; 4
1; 2; 3; 4 ffB C D Y g fB C D 2g f3 4 G gg
5 Y =X
1; 3; 4
ffB C D g f3 4 G gg
6 G =5
3; 4
ffB C D gg
Constraints from line 1 to line 4 build up variable domains and the valued domain
for X . On line 5, one of the variable domains is reduced from B ; C ; D ; Y to
B ; C ; D . When a domain is included in another domain, the solver uses the
following rule: V Dom1; V Dom2 ; Dom1 Dom2 ; T = Dom2 Dom1 V T .
In this case, due to the fact that all elements are dierent in a variable domain, it
infers X 2 , which is equivalent to X = 2. On line 6, one of the variable domains
becomes valued, which causes the valued domain to be recalculated by intersection:
3 ; 4; 5 .
Dom ValX = 1; 2; 3; 4
After all 6 constraints have been added, we can conclude that X = 3 or X = 4,
and that at least one of B , C or D must also equal 3 or 4. If a unique solution
is not obtained after all constraints have been added, a user of CLPS-BZ typically
uses the labelling procedures to explore the possible solutions, one at a time.
2 f
g
2 f
g
2 f
g
2 f
g
f
6
g
f
g
f
g
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
f
f
2
2
62 f g
f
4.2
g
g
n
)
62
6
g\f
g
The Reducer
The Reducer reduces BZP predicates into the basic constraints of the solver CLPS.
The most important procedure in the reducer API is add(P ), which conjoins the
predicate P with the current constraint store, by reducing P into primitive constraints which are added into the constraint store. The reducer API also includes
procedures for adding and deleting variables, so that the association between each
specication variable and the corresponding Prolog constraint variable can be maintained.
The reduction of predicates to constraints is specied by a function , which
takes a predicate as input, and returns a constraint as output. Generally, we have:
(Expression1 Operator Expression2) =
(Expression1) Constraint Operator (Expression2)
In the Process Scheduler example, the precondition of the New operation is
pp /: active / ready / waiting. This can be translated into constraints as follows
( Active, Ready, Waiting, PP are Prolog variables that represent the constrained
values of the specication variables active, ready, waiting and pp).
n
n
112
( pp /: active / ready / waiting)
= ( pp) nin (active / ready / waiting))
= PP nin (active) union (ready / waiting)
= PP nin Active union (ready) union (waiting)
= PP nin Active union Ready union Waiting
where \nin" and \union" are operators of the solver CLPS. They respectively
represent non membership and the union of two constrained values.
n
n
n
n
n
4.3
The Executer
The Executer is used to animate a machine specied in a BZP le. The executer
API provides commands for loading a particular BZP le, initializing the machine
specied in that le, and executing the operations of that machine.
To initialize a machine, it simply declares all the state variables of the machine
then sends all the initialization predicates to the reducer.
The execution of an operation takes place in two stages:
validation of preconditions, then
execution of postconditions.
First, all the precondition predicates are added. If no inconsistencies are found,
all the postcondition predicates are added, and the primed state variables become
the new machine state. If inconsistencies are found, the operation is not executed.
5
The Test Generation Modules
The generation of boundary Goal is performed in two main stages. The rst is
computed a set of boundary goals from the Disjunctive Normal Form (DNF) of
the specication, The secound is instantiated each boundary goal into a reachable
boundary state. Finally, the boundary states of the specication are used as a basis
to generate test cases.
5.1
Generation of Boundary Goals
For test generation
purposes, the postcondition of each operation is transformed into
DNF, obtaining Wj Postj (op ). The DNF transformation is not in general purpose,
but only computes one by one operation and the conditions described in it. Then
we project each of these disjuncts onto the input state, using the formula [LPU02b]:
( inputs ; state ; outputs Pre Postj )
We call these state subsets precondition sub-domains. The aim of boundary goal
generation is to nd boundaries within each of these precondition sub-domains.
In practice, the CLPS-BZ solver reduces each sub-domain to a set of constraints.
For example, when the New operation of the Process Scheduler example is translated
to BZP format, and each of its precondition and postcondition is transformed into
DNF, we get the following predicates:
pre (new )1 == pp waiting ready active
post (new )1 == prime (waiting ) = waiting
pp
prime (ready ) = ready prime (active ) = active ::
prime (active ) =
prime (ready ) =
0
9
62
[
^
[
[ f
g ^
^
fg )
^
fg
113
^
which is reduced by the BZ-TT solver to the predicate PS such that:
PS == Inv #(waiting ready active ) < #PID
We compute boundary goals on the basis of the partition analysis by minimization and maximization using a suitable metric function chosen by the test engineer.
(e.g., minimize or maximize the sum of the cardinalities of the sets). According
to the optimization function, this results in one or several minimal and maximal
boundary goals for each predicate.
Given the invariant properties Inv , a precondition subdomain predicate PSi , a
vector of variables Vi which comprises all the free state variables within PSi , and f
an optimization function, the boundary goals are computed as follows:
BGimin = minimize (f (Vi ); Inv PSi )
BGimax = maximize (f (Vi ); Inv PSi )
The optimization function f (Vi ), where Vi is a vector of variables v1 : : : vm , is
dened as g1 (v1)+ g2(v2)+ : : : + gm (vm ), where each function gi is chosen according
to the type of the variable vi .
For example,
from the predicate PS of the process scheduler example, boundmin and BG max are computed with the optimization function f (Vi ) =
ary
goals
BG
Pv V #v 2. The result of constraint solving is a set of constraints on the cardinalities of the set variables waiting , ready and
active such that: BG min = waiting =
max
ready =
active =
, and BG = waiting = X1 ready = X2
active = X3 where ( i Xi
p1 ; p2 ; p3 ; p4 ) and ( i i = j
Xi = Xj ).
ItP should be noted that other optimization functions could be used (Pv V #v ,
v V v ,...).
f
^
[
[
g
^
^
2
i
f
fg ^
fg ^
f
gg
fgg
8
f
2 f
g
5.2
8
g ^
6
f
)
g ^
6
2
p
2
f
i
i
Test Construction
This section describes the generation process of each test case, which is comprised
of a preamble, a body, an identication and a postamble part [LP01].
5.2.1 Preamble Computation
Each boundary goal is instantiated to one or more reachable boundary states by
exploring the reachable states of the system, starting from the initial state. The
CLPS-BZ solver is used to simulate the execution of the system, recording the set of
possible solutions after each operation. A best-rst search [Pre01] is used to try to
reach a boundary state that satises a given boundary goal. Preamble computation
can thus be viewed as a traversal of the reachability graph, whose nodes represent
the constrained states built during the simulation, and whose transitions represent
an operation invocation. A consequence of this path computation is that state
variables which are not already assigned a value by the boundary goal, are assigned
a reachable value of their domain.
Some boundary goals may not be reachable via the available operations (this happens when the invariant is weaker than it could be). By construction, every boundary
goal satises the invariant, which is a partial reachability check. In addition to this,
we bind the search for the boundary state during the preamble computation, so
that unreachable boundary goals (and perhaps some reachable goals) are reported
to the test engineer as being unreachable. If all boundary goals in a precondition
sub-domain PS are unreachable, we relax our boundary testing criterion and search
for any preamble that reaches a state satisfying PS . Finally, the test engineer can
114
add and delete boundary goals, to customize the test generation, or to satisfy other
test objectives.
5.2.2 Input Variable Boundary Analysis and Body Computation
The purpose of the body computation, or critical test invocation, is to test, for a given
boundary state (a preamble), all the update operations, with all boundary values
of their input variables. For the boundary values which satisfy the precondition,
we get a positive test case, otherwise we get a negative test case. Note that, from
the same preamble and boundary state, several bodies are usually obtained for each
operation, with diering input values.
The process of boundary analysis for input variables is similar to that for state
variables, except that invalid input values are kept, which is not the case for unreachable boundary states. Given an operation Op with a set of input variables Ii and a
precondition Pre , let BGi be a boundary goal. Note that BGi is a set of constraints
over the state variables, typically giving a value to each state variable. Then, given f
an optimization function chosen by the test engineer, the input variable boundaries
are computed as follows:
{ for positive test cases:
minimize (f (Ii ); Pre BGi )
maximize (f (Ii ); Pre BGi )
{ for negative test cases:
minimize (f (Ii ); Pre BGi )
maximize (f (Ii ); Pre BGi )
^
^
:
^
:
^
5.2.3 Identication and Postamble
The identication part of a test case is simply a sequence of all observation operations whose preconditions are true after the body. The postamble part is computed
similarly to the preamble, using best-rst search.
6
Related work
The BZ-TT proposal follows an important stream of work in test generation from
formal specication, particularly from model-based specication. But despite the
enormous popularity of boundary-value testing strategy for black-box testing in
the software practitioner guides, this approach has not been widely investigated
for automatic specication-based test generation. But boundary-value analysis is
related to partition analysis which has been the subject of systematic research since
the early testing literature [Mye79] [WO80] [OB88].
Dick and Faivre [DF93] present an approach for partition analysis by computing
a Disjunctive Normal Form - DNF - both for input variables and system states.
The idea of automatic partition analysis was already present in the work of Gaudel
et. al. [BGM91, DGM93] by unfolding axioms from an algebraic specication. In
TTF [Sto93, CS94], and extensions of it [PA01], partition analysis and DNF transformation are used as heuristics for manually dening test templates. In [LPU02a],
we present a precise comparison between BZ-TT and TTF on the basis of the GSM
11-11 Standard case-study.
Various works [DF93, HP95, vABlM97, Hie97], use the partition analysis to build
a Finite State Automaton - FSA - corresponding to an abstraction of the reachability
graph denoted by the specication. Test cases are then generated by nding a
115
path (or several) \which traverses every transition with the minimum number of
repetitions " [DF93]. Unfortunately, this method is not easily automated, because it
is diÆcult to choose an appropriate abstraction of the state space to generate the
FSA. In the BZ-TT approach, due to the transformation of the B or Z specication
into a constraint system, the FSA is never explicitly computed.
During the last few years, the use of constraint logic programming for test generation has seen growing interest [Pre01]. For code-based test generation, Gotlieb
et. al. [GBR00] present a framework where a system of constraints is built from a
Static Single Assignment form of the source code (for C programs). The resolution
of the constraint system allows nding a path in the control ow graph to sensitize
a given point (statement or decision) in the source code. Meudec [Meu01] uses CLP
for symbolic execution of Ada code in order to generate tests. In specication-based
test generation, Marre et. al. [MA00] interpret LUSTRE specications in terms of
constraints over boolean and integer variables and solve them to generate test sequences. Pretschner et. al. [PL01] translate System Structure Diagrams and State
Transition Diagrams into Prolog rules and constraints to allow symbolic execution
of the specications and thus test generation. Van Aertryck et. al. [vABlM97] use
DNF and constraint solving to generate an FSA and test sequences from a B-like
specication, but this is not fully automated. Mostly, these techniques use existing
constraint solvers (Boolean and nite domains in general). In BZ-TT, due to the
specicity of set oriented notations of Z and B, we developed an original solver able
to treat constraints over sets, relations and mappings. This solver co-operates with
the integer nite domain solver.
7
Conclusions and future work
We have presented an environment for automatic boundary-value testing from setoriented formal specication notation. This environment is strongly based on a
constraint technology which oers specialized support for the B and Z toolkits (sets,
relations, functions and sequences).
The major advantage of using this constraint technology is that it dramatically
reduces the size of the search spaces during test generation, which allows the method
to scale to larger applications.
Firstly, the constraint technology enables boundary goals to be found more efciently, due to the constraint representation, which is based on min/max interval
domain representation (both for sets and numeric variables). This means that some
max/min limits can be obtained directly from the constraint store, without search.
Even when labelling is used, the search space is reduced because the constraint
system prunes the search tree.
Secondly, the boundary goals that we obtain are also a set of constraints, rather
than a specic value for each variable. Typically, some key variables will have
extremum values, but others will just be constrained. This allows the boundary
goals to be more abstract, which makes it easier to nd a preamble that reaches
the goal. In other words, the constraint approach avoids premature commitment to
precise values for every state variable, which could result in choosing unreachable
states.
Thirdly, the search for a preamble is reduced in complexity. At each point during
the best-rst search, we must still consider every operation, but with constraints it
is not necessary to consider every input value to each operation, because the entire
set of allowable inputs can be represented as a set of constraints.
116
These three reductions in search space give this boundary-value test generation
method good scalability, and allow us to handle applications that would not be
possible without the constraint technology.
Typically, the number of boundary goals (and thus preambles) generated is proportional to the number of operations, while the number of tests generated is proportional to the square of the number of operations (because we try to test each
operation at every preamble). The time taken to produce each test is more diÆcult to predict, because it depends upon the complexity of the constraints and the
average length of each preamble. The rst2factor is bounded by the worst case complexity of the CLPS-BZ solver, which is n nd d [BLP02], where n is the number
of variables, nd is the highest number of sub-domains and d is the size of the largest
domain. The second factor depends upon how easily each boundary goal can be
reached, which is highly specication dependent.
In the realistic industry case studies that we have completed, the specications
were quite complex, but the test generation time was acceptable on a typical personal computer. For example, in a recent case study on the Java Card transaction
mechanism [BJLP02], the 15 page B specication contained 20 operations and 15
state variables, where some state variables had sizable domains, such as the backup
memory variable, which was a total function from addresses (0 : : 255) to bytes.
In this case study, 60 boundary goals were computed, producing around 4500 test
sequences, taking around 15 hours of computation time on a 1GHz Pentium.
We have also used this technology to generate tests for other smart card applications. In the GSM 11-11 standard case study [LP01, BLLP02], the ve page
specication contained 11 operations and 12 variables, and produced 38 boundary
goals and around 1000 tests, with a computation time of 50 minutes. In the transport ticket validation algorithm [CGLP01], there was only one operation, but it was
complex (5 pages) with 15 variables, and generated around 100 test cases in 20 minutes. The number of test are huge but one human test must be 5 to 10 automatic
tests.
Until now, the BZ-TT environment has been usable only by the development
team, because it lacked user interfaces and integration between components. However, we are currently developing Java interfaces for animation and test generation
and consolidating the CLPS-BZ solver and the overall environment. The objective
is to produce a beta release for Windows and Linux by the end of 2002, under a
free license for academic use. See the BZ-TT website [BZT02] for updated release
information.
In the future, we will be focusing on several areas:
Supporting the full B and Z notation, such as parts of the toolkits that are
currently missing (sequences, trees etc.) and layered machines in B.
Extending the CLPS-BZ solver for continuous domains to be able to address
problems with real or oating variables.
Extending the solver and the BZP notation to support other specication
notations, such as state charts and the UML object constraint language (OCL).
Acknowledgment
This research was supported in part by a grant of the French ANVAR - Agence
Nationale de Valorisation des Actions de Recherche. The visits of Mark Utting are
supported under the French/New Zealand scientic cooperation program.
117
References
[Abr96]
J-R. Abrial. The B-BOOK: Assigning Programs to Meanings. Cambridge University
Press, 1996. ISBN 0 521 49619 5.
[ALL96]
F. Ambert, B. Legeard, and E. Legros. Programmation en logique avec contraintes
sur ensembles et multi-ensembles hereditairement nis. Technique et Science Informatiques, 15(3):297{328, 1996.
[BGM91] G. Bernot, M-C. Gaudel, and B. Marre. Software testing based on formal specications:
a theory and a tool. Software Engineering Journal, 6(6):387{405, November 1991.
[BJLP02] F. Bouquet, J. Julliand, B. Legeard, and F. Peureux. Automatic reconstruction and
generation of functional test patterns - application to the Java card transaction mechanism (condential). Technical Report TR-01/02, LIFC - University of Franche-Comte
and Schlumberger Montrouge Product Center, 2002.
[BLLP02] E. Bernard, B. Legeard, X. Luck, and F. Peureux. Generation of test sequences from
formal specications: GSM 11.11 standard case-study. Submitted to the Journal of
Software Practice and Experience, 2002.
[BLP02]
F. Bouquet, B. Legeard, and F. Peureux. CLPS-B { A constraint solver for B. In Proceedings of the conference on Tools and Algorithms for the Construction and Analysis
of Systems (TACAS'02), Grenoble, France, April 2002.
[BZT02] The BZ-TT web site. http://lifc.univ-fcomte.fr/RECHERCHE/TFC/Page_BZ-TT.
html, April 2002.
[CGLP01] N. Caritey, L. Gaspari, B. Legeard, and F. Peureux. Specication-based testing {
Application on algorithms of Metro and RER tickets (condential). Technical Report
TR-03/01, LIFC - University of Franche-Comte and Schlumberger Besanon, 2001.
[CS94]
D.A. Carrington and P.A. Stocks. A tale of two paradigms: formal methods and
software testing. In Proceedings of the Z user workshop (8th Z User Meeting), pages
51{68, Cambridge, June 1994.
[DF93]
J. Dick and A. Faivre. Automating the generation and sequencing of test cases
from model-based specications. FME'93: Industrial-Strength Formal Methods, LNCS
670:268{284, April 1993.
[DGM93] P. Dauchy, M-C. Gaudel, and B. Marre. Using Algebraic Specications in Software
Testing : A case study on the software of an automatic subway. Journal of Systems
and Software, 21(3):229{244, June 1993.
[FJJV96] J-C. Fernandez, C. Jard, T. Jeron, and G. Viho. Using on-the-y verication techniques
for the generation of test suites. In Computed Aided Verication (CAV'96), volume
LNCS 1102, New Brunswick, New Jersey, July 1996. Springer-Verlag.
[GBR00] A. Gotlieb, B. Botella, and M. Rueher. A CLP framework for computing structural
test data. In Springer-Verlag, editor, Proceedings of the First International Conference
on Computational Logic (CL'00), pages 399{413, London, UK, July 2000.
[Hie97]
R. Hierons. Testing from a Z specication. The Journal of Software Testing, Verication and Reliability, 7:19{33, 1997.
[HP95]
H.M. Horcher and J. Peleska. Using formal specications to support software testing.
Software Quality Journal, 4(4):309{327, 1995.
[ISO]
ISO. Information Processing Systems, Open Systems Interconnection. OSI Conformance Testing Methodology and Framework { ISO 9646.
[JM94]
J. Jaar and M.J. Maher. Constraint logic programming : A survey. Journal of Logic
Programming, 19/20:503{582, May/July 1994.
[LP01]
B. Legeard and F. Peureux. Generation of functional test sequences from B formal
specications { Presentation and industrial case-study. In 16th IEEE International
Conference on Automated Software Engineering (ASE'01), San Diego, USA, November
2001.
[LPU02a] B. Legeard, F. Peureux, and M. Utting. A comparison of the BTT and TTF testgeneration methods. In ZB2002: Formal Specication and Development in Z and B,
volume LCNS 2272, pages 309{329, Grenoble, France, January 2002. Springer-Verlag.
[LPU02b] B. Legeard, F. Peureux, and M. Utting. Automated boundary testing from Z and B.
In Lars-Henrik Eriksson and Peter Lindsay, editors, Formal Methods Europe, 2002,
LNCS. Springer-Verlag, July 2002. To be published.
118
[MA00]
B. Marre and A. Arnould. Test Sequence generation from Lustre descriptions: GATEL.
In Proceedings of the 15th IEEE International Conference on Automated Software
Engineering (ASE'00), pages 229{237, Grenoble, France, 2000.
[Mac77]
A.K. Macworth. Consistency in network of relations. Journal of Articial Intelligence,
8(1):99{118, 1977.
[Meu01]
C. Meudec. ATGEN: Automatic test data generation using constraint logic programming and symbolic execution. The Journal of Software Testing, Verication and Reliability, 11(2):81{96, 2001.
[Mye79]
G.J. Myers. The Art of Software Testing. Wiley-InterScience, 1979.
[OB88]
T.J. Ostrand and M.J. Balcer. The Category-Partition Method for Specifying and
Generation Functional Test. Proceedings of the ACM Conference, 31(6):676{686, June
1988.
[PA01]
K. Periyasamy and V.S. Alagar. A rigorous method for test templates generation
from object-oriented specications. The Journal of Software Testing, Verication and
Reliability, 11(1):3{37, 2001.
[PL01]
A. Pretschner and H. Lotzbeyer. Model Based Testing with Constraint Logic programming : First Results and Challenges. In Proceedings of the 2nd ICSE Workshop
on Automated program Analysis, Testing and Verication (WAPATV'01), pages 1{9,
may 2001.
[Pre01]
A. Pretschner. Classical search strategies for test case generation with Constraint Logic
Programming. In BRICS, editor, Proceedings of the Workshop on Formal Approaches
to Testing of Software (FATES'01), pages 47{60, Aalborg, Denmark, August 2001.
[RO92]
D.J. Richardson and S.L. Aha T.O. O'Malley. Specication-based test oracles for
reactive systems. In Proceedings of the 14th International Conference on Software
Engineering (ICSE'92), pages 105{118, Melbourne, Australia, May 1992. ACM Press.
[Spi92]
J.M. Spivey. The Z notation: A Reference Manual. Prentice-Hall, 2nd edition, 1992.
ISBN 0 13 978529 9.
[Sto93]
P. Stocks. Applying Formal Methods for Software Testing. Phd thesis, The University
of Queensland, 1993.
[Tre96]
J. Tretmans. Test generation with inputs, outputs and repetitive quiescence. SoftwareConcepts and Tools, 17(3):103{120, 1996.
[vABlM97] L. van Aertryck, M. Benveniste, and D. le Metayer. CASTING: a formally based
software test generation method. In 1st IEEE International Conference on Formal
Engineering Methods (ICFEM'97), pages 99{112, 1997.
[WO80]
E.J. Weyuker and T.J. Ostrand. Theories of program testing and the application of
revealing subdomains. IEEE Transactions in Software Engineering, 6(3):236{246, May
1980.
119
120
Using a Virtual Reality Environment to Generate
Test Specifications
Stefan Bisanz
Aliki Tsiolakis
University of Bremen, Germany
{bisanz,tsio}@informatik.uni-bremen.de
Abstract
The creation of test specifications that can be used for automated testing requires considerable skill in the field of formal methods. This article proposes
a method that enables the development of test specifications by interaction
with a virtual reality representation of the system under test. From these
interactions, a formal test specification is generated. Its goal is to reduce the
need for formal methods expertise and therefore concentrates on the knowledge of the application to be tested. It addresses domain experts who are not
familiar with formal methods.
In this article, the character of the virtual reality model as well as its creation are discussed. Further, the generation of test specifications is explained.
Statecharts are used as formal specification language for the result of the
generation step.
1
Introduction
Testing embedded real-time systems is a complex and time-consuming task and thus
a high level of automation is advisory. Ideally, the test team receives a complete
and consistent system specification in a formal specification language. By use of a
test tool, the automatic generation of test cases, the automatic execution of the test
and the automatic evaluation can be supported based on this specification. This
idea relies on two main preconditions: On the one hand, the existence of a formal
system specification developed by the domain experts and, on the other hand, on
the availability of an appropriate test tool.
However, most system specifications are informal, natural language descriptions of
the system’s behaviour and the test experts have to develop the necessary test specifications manually based on these system specifications. Since the formal specifications require considerable skills in the field of formal methods, the domain experts
can usually not generate the test specifications themselves. Nevertheless, approriate
121
test tools can be found. For example, RT Tester1 supports automatic test generation, execution and evaluation based on formal test specifications in Timed CSP.
These Timed CSP specifications are then translated into labelled transition systems
(LTS). RT Tester has been applied in many application areas – from avionics to
railway controllers.
Thus, the process of automatic test execution and evaluation is sufficiently supported by existing test tools. To fill the gap, we want to introduce a new approach
of generating formal test specifications by interacting with a virtual reality representation of the system under test (SUT) called the Virtual Periphery. The Virtual
Periphery represents the functional interface of the SUT embedded into its environment. For example, consider as a SUT the fasten-seatbelt signs in an airplane
that can be switched on or off automatically depending on the status of specific
sensors or manually by a dedicated switch in the cockpit. The functional interface
consists of interface objects like signs, switches or sensors which are represented
as interactive objects in the Virtual Periphery. The additional non-interactive objects constitute the geometry that is not of functional relevance to the SUT but
serve to model the SUT’s environment. To specify that the fasten-seatbelt signs
are switched on by toggling the switch, one has to interact with the corresponding
interface objects. Thus, the approach assists the domain experts intuitively during
the specification process because the interaction’s semantics can easily be learned.
Interactions with VR components are mapped to specification fragments of a formal
specification language that can be composed into the complete test specification.
Nevertheless, this basic Virtual Periphery is not sufficient to specify specific concepts, e. g., parallelism, or alternative interactions. For example, it is not possible
to express by these interactions that all fasten-seatbelt signs have to be switched
on in parallel because it is not possible to perform several simultaneous actions in
the Virtual Periphery. To reduce this drawback, it is necessary to enhance the Virtual Periphery with visual representations of commands, graphical menues, gesture
interactions, or voice commands. Furthermore, the Virtual Periphery only reflects
the ”present point in time” while it is not possible to investigate the history of past
interactions or the potential future events. In order to overcome this, we have chosen statecharts as a formal but as well graphical specification technique. Statecharts
provide an alternative view on the test specification fragments and facilitate their
understanding. This choice has essential impact on our specification approach because, on the one hand, it affects the semantics of the VR interactions and, on the
other hand, it defines the maximum expressive power of the resulting specifications.
In the next section, we give a detailed overview about the Virtual Periphery and
some possible enhancements. The representation of the test specification fragments
as statecharts is described in section 3. Section 4 refers to the integration of the
generated statechart specifications with RT Tester. In section 5, we discuss ways to
automatically generate the Virtual Periphery.
1
RT Tester has been developed by Verified Systems
(http://www.verified.de) in cooperation with University of Bremen.
122
International
GmbH
2
Virtual Periphery
The Virtual Periphery is an incomplete simulation model of the SUT, i. e., it is a
model of the real world that only contains those objects that are relevant for the
SUT’s interface. Additional non-functional geometry enriches the Virtual Periphery
and serves to model the SUT’s environment such that it resembles the real world.
The interface objects consume inputs (e. g., switches, buttons, sensors), yield output
(e. g., signs, loudspeakers) or process input as well as generate output (e. g., touch
screens, buttons with back light). Each interface object can be in a number of
different states, and only specific state changes are possible. For example, a specific
two-state toggle’s states are on and off, and a specific indicator can yield the
states red, yellow and green. Each interface object is associated with specific
attributes which include the interface object’s type. Returning to our previous
example, the fasten-seatbelt signs in an airplane denote a specific type of sign which
has the attributes seat row and aisle. Thus, specific objects of the same type can
be identified. Furthermore, similar interface objects can be grouped, e. g., applying
the condition type = "Fasten-Seatbelt Sign" and seat row > 20 and aisle
= left identifies all interface objects of type Fasten-Seatbelt Sign in the left aisle of
an aircraft at seat row 21 or higher.
As interface objects of the same type share geometry, possible states and attributes,
interface object templates can be provided by interface object libraries. General
purpose libraries contain general switches, indicators, etc. while domain specific
interface objects (e. g., the fasten-seatbelt signs) are defined in domain specific libraries. The interface object templates and thus the libraries are modelled manually
and are utilised within the Virtual Periphery creation process (see section 5).
The use of our Virtual Periphery exceeds simple simulation. By interacting with
interface objects the user generates test specification fragments. This means that
specific state changes in one input interface object are reflected in state changes of
other output (or input/output) objects. More precisely, the state changes in the
input interfaces are initiated by interactions and are used as stimuli for the SUT.
The expected reaction is represented by the correct output.
Interaction with interface objects takes place by navigating a 3D cursor that looks
like a human hand. By touching an interface object (i. e., more exactly by colliding
the 3D cursor with it), it gets selected for further interactions. Moving or rotating
the 3D cursor generates a basic test specification element.2 What movement or
rotation is appropriate depends on the type of the selected interface object, but
it should conform to the direct manipulation metaphor. This direct manipulation
changes the interface object’s state and its visual representation. For example, a
toggle switch changes its state according to the rotation direction: the movement of
the 3D cursor’s fingertips chooses which part of the toggle switch is pressed down.
Figure 1 shows a 3D cursor and three-state toggle switches in the cockpit of an
airplane. For an introduction to 3D interaction see [BKLP01] and for a general
discussion on direct manipulation see [Shn83] and [HHN86].
2
If a conventional mouse is used for interactions, there are two dimensional mouse interactions
that correspond to these three dimensional ones.
123
Figure 1: 3D cursor interaction with toggle switch
However, the direct manipulation metaphor is not appropriate for all interface objects. Consider interface objects that are not targets of tactile interaction in the real
world (e. g., a sign or a sensor). Their state changes are selected using a graphical
3D menu within the Virtual Periphery that is triggered by a 3D metaphor of a mouse
click, i. e., by a short movement of the 3D cursor’s fingertips towards the interface
object. An example of a 3D menu to select the state change of a sensor is given in
Figure 2.
Figure 2: Selection of a sensor’s state change using graphical 3D menu
Besides the central direct manipulation metaphor, we make use of a technique that
integrates naturally within virtual reality: voice commands. While direct manipulation is used for interaction within the Virtual Periphery, speech input is used for
system control and therefore for interaction with the Virtual Periphery itself.
In order to realize different semantics of direct manipulation interaction, the Virtual
Periphery must provide different interaction modes. For example, a causality mode
would enable specification fragments like
124
if switch SW changes to state on, then sign SI will be lighted,
and a parallel mode would enable
all signs SI1 ...
SIn change to state lighted in arbitrary order
Note that speech based system control is superior to graphical system control because it does not interrupt the interaction within the Virtual Periphery. Simple
navigation is also controlled by speech: predefined viewpoints can be activated such
that the viewer3 is immediately transported to the corresponding location within
the virtual world.
Another feature supported by speech input is the selection of interface objects: in
order to use several similar interface objects within a specification fragment, one
selects them before interacting with one of them that then acts as a placeholder for
all these objects.
While speech selection provides selection of currently visible interface objects, alternatives are mouse based selection on the one hand and attribute based selection on
the other hand.
Figure 3: Reference gesture (left) and time gesture (right)
In order to switch specific interaction modes, gestures can be used. For example, the
so-called reference gesture is a rotation of the 3D cursor so that it looks like an open
hand, palm up. In combination with a subsequent direct manipulation interaction as
described above, it references the complete interface object and defines the current
specification context. The so-called time gesture will switch the specification mode
so that further interactions are time dependant. Thereby, the 3D cursor which is
equipped with a watch is rotated as if the user is taking a look on it. Both gestures
are shown in figure 3.
3
That is the person interacting with the Virtual Periphery.
125
3
Incremental Development of Statecharts by
Interaction
Behaviour Template With each interface object a pre-defined behaviour template is associated: a statechart consisting of its possible states and appropriate
transitions. The behaviour template of an interface object is created manually based
on its interface and stored as an additional attribute of its template in the interface object library (see section 2). Note that the states in the behaviour template
correspond to the informally described states of the interface object. Additionally,
the behaviour template contains transitions between the states based on the interface description of the interface object. Considering a simple two-state switch as an
example, the corresponding statechart contains two states on and off. The state
changes would be switching from on to off and vice versa, therefore the statechart
contains two transitions triggered by the events Switch.off and Switch.on, respectively. Figure 4a shows the behaviour template of the two-state switch.
Switch.on
Lamp.light
off
on
dark
Switch.off
light
Lamp.dark
(a) Switch template
[in(dark)]
dark_pending
(b) Lamp template
dark_checked
light_not_yet
dark_not_yet
light_pending
light_checked
[in(light)]
(c) Lamp checker template
Figure 4: Behaviour template of switch and lamp
Additionally, the behaviour template can contain a checker component that is typically needed for our test purposes. As an example, consider a simple lamp or sign
that provides outputs to the SUT’s environment: while on the one hand the real
lamp is in one of its states dark or light (see figure 4b), we want to check if its
state changes occur appropriately depending on certain events or conditions within
the SUT. While these events and conditions are subject to the specification process,
the checker component generally distinguishes valid and pending situations. Figure 4 shows the behaviour template of a lamp consisting of a statechart for the real
lamp and the checker statechart. The latter is denoted in figure 4c and contains
different states: The states dark checked and light checked represent the correct (and checked) states and thus correspond conceptually to the states dark and
light in figure 4b. The states dark pending and light pending represent the
126
situation when the event (or condition) to change the state has already occured but
the correct reaction of the SUT has not been checked yet. Finally, dark not yet
and light not yet denote that after the occurence of the change event the SUT
is not expected to react yet.
Interaction Scenario Let us now consider the interaction scenario for the following requirement:
The lamp must be dark, if the switch is off
and it must be lighted, if the switch is on.
The interface objects are a two-state switch and a lamp whereby the former is
initially in state off and the latter is initially dark. On template base, the application specific dependencies between switch, lamp and checker component are
not yet defined. The following steps describe in a step-by-step manner how these
dependencies are introduced to the templates of figure 4 for the concrete application
context. Since only correct behaviour should be specified, the system state has to
be consistent with respect to the current specification context.
1. The process is started by choosing the specification context, i. e., this is the
lamp in the example. Therefore, we navigate to the lamp within the Virtual Periphery by issuing the voice command view lamp. By applying the
reference gesture and touching the lamp, we reference the lamp’s behaviour
template (i. e., the corresponding statechart).
2. To define the trigger for the state change of the context object, we navigate
to the trigger object, i. e., in this example to the switch, by voice command
view switch. The following manipulation of the switch – a rotation of the 3D
cursor – changes the state of the switch to on. This state change is represented
by a transition in the switch’s statechart.
3. To define the effect of the trigger on the context object, the current state of
the context object is considered as the source state for a transition. Since
the lamp cannot be manipulated directly, the target state (i. e., the state
light) has to be selected using a 3D menu. Although the corresponding 3D
menu provides the states light and dark (i. e., states defined in the lamp’s
statechart), the checker statechart is affected. The transition with source state
dark checked and target state light not yet is labelled with the guard
in(Switch.on).
4. The same steps have to be applied for specifying the second part of our specification, respectively. Thereby, the transition from state light to target state
dark not yet is labelled with in(Switch.off).
In the above specification scenario, the resulting specification fragment is only
causally coherent but does not contain any timing constraints. Moreover, the checker
might stay in state light pending without detecting any errors. Since the system
specifications usually imply specific requirements to react in a certain time interval,
127
it is necessary to apply as well the time gesture (see section 2). Thus, before starting the above described specification process, the time gesture is applied to indicate
that the following specification mode is time dependant. The effect of the timed
specification mode is that when the trigger of a state change is defined, additional
transitions and labels are inserted in the checker statechart that check the lower and
upper bounds of the time interval.
In the above example, in order to check the upper bound two transitions are
added – one at state light pending and the other one at state dark pending.
The transitions are labelled with a timeout event tm(en(light pending),t2 ) and
tm(en(dark pending),t4 ), respectively, and a resulting ERROR action.4 The
events are triggered tn time units after the last entry to state light pending or
dark pending, respectively. The lower bound check of the state change to light
is realised by the timeout event tm(en(light not yet),t1 ) in combination with a
new transition between light not yet and light checked. The latter can only
be taken before t1 time units elapse and therefore results in an ERROR action.
The lower bound check of the state change to dark is specified in a similar way.
The concrete timer values tn cannot be set directly, therefore default values are
used that have to be further adjusted (e. g., by the use of a 3D menu in the Virtual
Periphery). Note that the lower bound check as well as the upper bound check of
the time interval can be omitted.
The resulting statecharts are shown in figure 5. In addition to the above mentioned
statecharts for interface objects, another statechart is generated during the specification process. While interacting with the Virtual Periphery, the user triggers
certain input interface objects (e. g., a switch) to change state. These user statecharts cannot be defined as behaviour templates in a library, since their states and
transitions depend entirely on the test specification for the SUT.
Switch.on
Lamp.light
off
on
dark
Switch.off
light
Lamp.dark
(a) Switch
tm(en(light_pending),t2) / ERROR
(b) Lamp
[in(dark)]
dark_checked
[in(Switch.on)]
[in(dark)] / ERROR
dark_pending
tm(en(light_not_yet),t1)
light_pending
[in(light)] / ERROR
dark_not_yet
tm(en(dark_not_yet),t3)
light_not_yet
light_checked
[in(Switch.off)]
[in(light)]
tm(en(dark_pending),t4) / ERROR
(c) Lamp checker
Figure 5: Instantiated and extended statecharts
4
A more detailed error handling is necessary but is not discussed in this paper.
128
4
Testing with Statecharts
Test specification session
VR model
Virtual Periphery
generation
Test specification
(Statecharts)
Test execution
Input
is read by
Input
and
output
Test
system
Test
log
System
under test
(SUT)
Output
Figure 6: Test process overview
An overview about the complete test process is given in figure 6. While, on the one
hand, the statecharts (as discussed in Section 3) are the result of a test specification
session, they are, on the other hand, the input to the test system. We focus in
our work on RT Tester. RT Tester generates and executes tests automatically by
sending inputs to the SUT. The tests are evaluated on the fly based on the given
inputs and the outputs coming from the SUT. See [Pel02] and [PT02] for application
examples and [Pel98] for the theoretical background.
Since the RT Tester tool accepts test specifications as labelled transition systems
(LTS) to allow the use of arbitrary formal test specification languages that can be
translated into an LTS, we have to provide such a translation relation.
This translation depends on the statechart semantics used during the specification
process. Different semantics are available for statecharts: Harel introduced statecharts in 1987 (see [Har87]) and gave a formal semantics in [HPSS87]. A variant
described in [HN96] has been implemented in the STATEMATE tool5 . Statecharts
have as well been integrated in UML (see [Obj]) with a slightly different semantics.
Other semantics have been discussed as well, and a comparision of different statechart semantics is given in [vdB94]. As well, different approaches for the translation
of statecharts into LTS have been discussed, see e. g. [US94], [Lev96] and [Joh99].
Most variants are tailored to meet specific needs. We need a semantics that can at
least deal with our timing constraints and which has a step semantics with a greedy
approach. Nevertheless, we are currently investigating the specific needs of our approach with respect to the statechart semantics. Thus, we can yet neither provide
5
STATEMATE is a commercial tool by i-logix (http://www.ilogix.com) and is actually applied
to industrial projects.
129
a complete algorithm for the translation nor a precise semantics for the statecharts
used in our approach.
5
Virtual Periphery Generation and Reuse
One crucial point within our approach is the creation of the Virtual Periphery itself.
Since the manual generation of the Virtual Periphery is a very time consuming and
thus expensive task and moreover highly SUT dependant, it is desirable to minimise
any manual effort to create the Virtual Periphery. Hence, we want to discuss in the
following an approach to support the generation of the Virtual Periphery. Figure 7
gives a first overview.
CAD document
VR specification environment
Virtual
periphery
generation
VR model (interactive):
Virtual Periphery
Parameter
specification
Test specification template
Test
specification
session
Test specification
instantiation
Test
execution
Test specification
Figure 7: Virtual Periphery generation and test process
In most application areas, there are static geometry models of the SUT’s environment and/or the SUT itself. This collection of documents – typically CAD documents – can be converted straight-forward into an appropriate virtual reality model.
Additionally, some SUTs are equipped with some kind of parameterisation module in order to configure system features. Consider the Cabin Intercommunication
Data System that is used within Airbus airplanes. It contains the so-called Cabin
Assignment Module that parameterises for example, how many attendant handsets
are available in the cabin and to which controllers they are connected. A similar
example is the number and mapping of passenger service units6 to seat rows and
aisles. Although the parameterisation modules are typically domain specific, once an
evaluation is realised it can be used to generate appropriate variants of the Virtual
Periphery depending on the specific parameter values.
6
A passenger service unit is a collection of signs, keys, lamps, . . . above the passenger’s seat.
130
Typically, only an intermediate format – a non-interactive virtual reality model
– can be derived automatically from the given documents. Hence, the interface
objects have to be inserted or replaced manually by interactive objects in order to
specify the tests as discussed in the previous sections. This process can be supported
by libraries of interface objects which contain for each type of interface object its
geometry as well as the corresponding behaviour template (see sections 2, 3).
CAD document
Interface object
libraries
general + domain specific
Enhanced
VR model
(non−interactive)
CAD−to−VR
converter
+
Parameter
evaluator
Interaction
toolkit
Decoration
toolkit
VR model (interactive):
VR model
(non−interactive)
Virtual Periphery
Parameter
specification
Figure 8: Detailed Virtual Periphery generation
Figure 8 gives a detailed view of the Virtual Periphery generation. It also contains
an optional step via an enhanced non-interactive model. This may be desired if the
Virtual Periphery is supposed to contain decorations like textures, which usually are
not provided within the CAD documents. Enhancing the model is a manual activity
similar to the insertion of interface objects.
While the previously described generation approach itself reuses the CAD documents and the parameterisation module (i. e., documents generated not specifically
for the purpose of testing), it is as well possible to reuse parts of the test specification fragments based on concrete parameter values. Considering, for example, the
reading lights in an airplane, all reading lights can be switched on or off by a central
button (using the selection mechanism described in Section 2 to select all reading
lights). Additionally, each reading light can be switched on or off by a toggle switch
above the passenger seat. Nevertheless, it is neither desirable to specifiy this specification part for each reading light separately nor should it be necessary to specify
the behaviour of all reading lights once again, if the parameter value denoting the
number of reading lights has changed. In contrast, a test specification template
could be used which is instantiated with a concrete set of parameter values before
testing (i. e., more precisley before generating the LTS). This approach is visualised
in the lower left part of Figure 7 focussing on the test specification instantiation
based on the generic test specification template and the concrete parameter values
defined in the parameterisation module.
131
6
Conclusion
This article proposed an approach to facilitate the creation of formal test specifications providing interactive virtual reality components. The approach addresses
domain experts who are not familiar with formal specification languages and allows
them to create basic test specifications quickly and intuitively. Nevertheless, the
person interacting with the Virtual Periphery should have a precise understanding
of concepts like parallelism and the sequencing of events.
Thus we expect the benefit of our approach to be:
Simple specifications Simple specifications can be developed without applying
elaborate concepts and thus without a detailed understanding of the underlying concepts of the formal specification language.
Team development Within a test team, domain experts and test experts can
cooperate to extend the simple specifications.
Introduction to formal specification languages Additionally, our approach can
be used to become familiar with formal specification languages in an intuitive
way and thus to gain necessary expertise in it. Eventually, the expert will then
even prefer to define the test specifications using directly the formal specification language.
The Virtual Periphery described in this article is partially implemented using Java3D
which is an API for the general purpose, object oriented programming language Java.
It is proved to be superior to VRML which we used during earlier efforts (see [BF99],
[PBFE99]), because Java3D allows more flexible modelling. For further information
concerning Java, Java3D and VRML see [GJS97], [Jav00] and [VRM97].
One main design guideline during the implementation is the use of conventional
personal computers without extraordinary input or output devices. Hence, all interaction must be possible by mouse, keyboard and low cost microphone. Our 3D
cursor is carefully designed to be used with the mouse to allow movements and rotations to be gained from two-dimensional mouse movements combined with so-called
modifier keys (e. g., pressing of mouse buttons). Furthermore, the output has to
be appropriate for conventional monitor screens and stereo pairs of speakers. Note
that this is the reason why no haptical output like force feedback is available with
the Virtual Periphery.
Nevertheless, it is possible to enhance the virtual reality feeling with special equipment. There is no inherent restriction of our 3D cursor to be used with the mouse,
so that alternatively a data glove could be used. For visual output, a head mounted
display as well as stereoscopic viewing solutions can be applied. As virtual reality
audio enhancement, dolby surround or similar techniques are available. To gain an
overview about virtual reality equipment refer for example to [MG96].
Future work will include the definition of a formal statecharts semantics and a corresponding translation to LTS that can be used by the RT Tester tool. Since the
132
formal language is exchangeable as far as there is an appropriate LTS representation, further evaluation of appropriate formal specification languages is planned. In
particular, we will consider hybrid automata (see [Hen96]) that enable modelling
of continuous behaviour and are in this respect more expressive than statecharts.
However, the chosen language has essential impact on the interaction’s semantics
within the virtual reality.
Another point that is subject to further research concerns the test evaluation that
is so far based on the generated test specification. A way to map an event from the
test log of a test run to the corresponding Virtual Periphery representation would
be valueable in order to interpret errors and warnings or even to find inconsistencies
within the test specification itself. Since the test execution is based on labelled
transition systems, this is not a trivial task. Even the mapping to the corresponding
part of the statechart is non-trivial.
Finally note that although we focus on developing test specifications, our approach
is not restricted to this kind of specifications but can be expanded to more general
specifications.
References
[BF99]
Stefan Bisanz and Ingo Fiß. Grafischer Entwurf von CSP-Spezifikationen
für den Test eingebetteter Echtzeitsysteme. Master’s thesis, Universität
Bremen, February 1999.
[BKLP01] D. Bowman, E. Kruijff, J. LaViola, and I. Poupyrev. An Introduction to
3D User Interface Design. Presence: Teleoperators and Virtual Environments, 10(1):96–108, 2001.
[GJS97]
James Gosling, Bill Joy, and Guy Steele.
The Java Language Specification.
The Java Series. Addison-Wesley, 1997.
http://java.sun.com/docs/books/jls/html/.
[Har87]
David Harel. Statecharts: A visual formalism for complex systems. Science of Computer Programming, 8(3):231–274, June 1987.
[Hen96]
Thomas A. Henzinger. The theory of hybrid automata. In Proceedings of
the 11th Annual Symposium on Logic in Computer Science (LICS), pages
278–292. IEEE Computer Society Press, 1996.
[HHN86] E. L. Hutchins, J. D. Hollan, and D. A. Norman. Direct manipulation
interfaces. In D. A. Norman and S. W. Draper, editors, User Centered
System Design: New Perspectives on Human-Computer Interaction, pages
87–124. Erlbaum, Hillsdale, NJ, 1986.
[HN96]
David Harel and Amnon Naamad. The STATEMATE semantics of statecharts. ACM Transactions on Software Engineering and Methodology,
5(4):293–333, October 1996.
133
[HPSS87] D. Harel, A. Pnueli, J. P. Schmidt, and R. Sherman. On the formal semantics of statecharts. In Proceedings, Symposium on Logic in Computer
Science, pages 54–64. The Computer Society of the IEEE, June 1987.
Extended abstract.
[Jav00]
The
Java
3DT M
API
Specification.
Version
1.2.
http://java.sun.com/products/java-media/3D/index.html, April 2000.
[Joh99]
Sebastian John. Zur kompositionalen Semantik von objektorientierten
Statecharts. Master’s thesis, Technische Universität Berlin, August 1999.
[Lev96]
Francesca Levi. A process language for statecharts. In Logical and Operational Methods in the Analysis of Programs and Systems, pages 388–403,
1996.
[MG96]
Tomasz Mazuryk and Michael Gervautz.
Virtual reality - history, applications, technology and future.
Technical Report TR186-2-96-06, Vienna University of Technology, Institute of Computer Graphics and Algorithms, A-1040 Wien, February 1996.
Available as http://www.cg.tuwien.ac.at/research/TR/96/TR-186-2-9606Abstract.html.
[Obj]
Object Management Group (OMG). OMG Unified Modeling Language,
Specification. Available at http://www.omg.org/uml/.
[PBFE99] J. Peleska, S. Bisanz, I. Fiß, and M. Endreß. Non-Standard Graphical
Simulation Techniques for Test Specification Development. In H. Szczerbicka, editor, Modelling and simulation: A tool for the next millenium.
13th European Simulation Multiconference 1999, volume 1, pages 575–
580, Delft, 1999. Society for Computer Simulation International.
[Pel98]
Jan Peleska.
Testing reactive real-time systems.
Tutorial,
held at the FTRTFT ’98, Denmark Technical University, Lyngby,
1998.
Updated revision. Available as http://www.informatik.unibremen.de/agbs/jp/papers/ftrtft98.ps.
[Pel02]
Jan Peleska. Formal methods for test automation - hard real-time testing of controllers for the airbus aircraft family. In Proc. of the Sixth
Biennial World Conference on Integrated Design & Process Technology
(IDPT2002), Pasadena, California. Society for Design and Process Science, June 2002. To appear.
[PT02]
J. Pelska and A. Tsiolakis. Automated Integration Testing for Avionics
Systems. In Proceedings of the 3rd ICSTEST – International Conference
on Software Testing, April 2002.
[Shn83]
Ben Shneiderman. Direct manipulation: A step beyond programming
languages. IEEE Computer, 16(8):57–69, 1983.
134
[US94]
Andrew C. Uselton and Scott A. Smolka. A compositional semantics for
statecharts using labeled transition systems. In International Conference
on Concurrency Theory, pages 2–17, 1994.
[vdB94]
M. von der Beeck. A comparison of StateCharts variants. In Proc. of
Formal Techniques in Real Time and Fault Tolerant Systems, pages 128–
148, Berlin, 1994. Springer-Verlag.
[VRM97] VRML Consortium.
The Virtual Reality Modeling Language.
http://www.web3d.org, 1997. International Standard ISO/IEC 147721:1997, Part 1 – 3.
135
136
Towards a Formalization
of Viewpoints Testing
Marius Bujorianu1 , Savi Maharaj2 , Manuela Bujorianu2
.
1
Computing Laboratory, University of Kent,
Canterbury, Kent, CT2 7NF [email protected].
2
Department of Computing Science and Mathematics,
University of Stirling, Stirling, Scotland, FK9 4LA, UK
{mlb, sma}@cs.stir.ac.uk
25 June 2002
Abstract. Test case generation from formal specifications is now a very mature field. Partial specification or viewpoints represents a co-operative approach in
software specification. Although partial specification has a long history, only a little
was done towards application of the methodology to formal test case generation. In
this work we propose a categorical foundation of viewpoints oriented testing, obtaining a sound methods integration and a formal testing methodology for composite
(heterogeneous) software systems. In particular, we plan to address the combination
of specification based testing and test case generation from proofs.
.
Keywords: formal testing, viewpoints specification, category theory.
1.
INTRODUCTION
The most challenging issue of software engineering still is the question how to master
the complexity of the development of large software systems. For projects involving the
specification and development of large systems, the structuring of their descriptions is
crucial to the project’s success. Traditionally, systems were decomposed according to
functionality; modern approaches favour, in addition to this, decompositions according
to “aspects” or ”viewpoints”. Also, these viewpoints may be views of the system’s functionality from different participants. Viewpoints mean different perspectives on the same
system, aspect oriented specifications written in different languages by teams having different backgrounds, etc. Of course, for an implementation we need an integration of all
these formal descriptions, more specifically a minimal one, called unification.
The increasing importance of the viewpoint model in software engineering is exemplified by its use in the Open Distributed Processing (ODP) standard, OO design methodology, requirements engineering, software architecture, reverse engineering and the Unified
Modeling Language (UML). ODP, for example, defines a viewpoint framework for specification of distributed systems using a fixed collection of five viewpoints: enterprise,
information, computational, engineering and technology. We are particularly interested
in the construction of a general model applicable to most of these application fields.
Different models for viewpoints have been proposed, like the VOSE framework [11]
and the ’Development’ approach [5]. Our approach follows the general model presented
in [6] and [16]. In this work we extend the categorical framework developed for the
homogenous case in [7]. Viewpoints are written using the specification language associated
with a general logic [22]. The correspondences between viewpoints are expressed using
diagrams, specifically spans from the correspondence specification to the viewpoints which
are unified. Unification is given then by the pushout of the diagram.
1
137
Towards a Formalizationof Viewpoints Testing2
Although viewpoints oriented specification like techniques are used in a great variety
of development technologies, there is no mature use of them in testing. Notable exceptions are MacColl and Carrington’s framework MATIS [17] and Pemberton’s VOCAL
[23]. VOCAL: ’Viewpoint-Oriented verifiCation And vaLidation’ is an application of the
VOSE framework to software testing. Viewpoints have been applied for the identification
and structuring of test deployment. Using such an organization helps to ensure that all
important test perspectives are taken into account. In the VOCAL approach, viewpoints
are classified in group viewpoints, verification viewpoints, validation viewpoints and quality viewpoints. The test technique applied within viewpoints provides test coverage. In
contrast, MATIS is specification oriented and is much closer to the idea of our work.
Tests are derived from viewpoint specifications specifically, according to the formal
language used by each team. Viewpoints could have different concepts for tests, different
languages to describe them precisely, and different techniques to derive them. When we
have a big heterogeneity of viewpoints, and implicitly of tests derived from them, we need
a common definition and understanding of them, as well a set of tests for the whole system
description (i.e. unification).
We suppose the reader is familiar with the basics of category theory. The space limit
of this work doesn’t allow a background presentation of the category theory, which has
been used. We recommend the book [1] for the necessary background information.
The paper is structured as follows. In the next section we give a brief summary of a
categorical and logical approach to software specification. In this section we study also
the unification process and the development relations involved. In Section 3 we sketch a
formal theory for composite viewpoints. In Section 4 we present the formal testing theory
for axiomatic specifications as application introduced and developed by M.C. Gaudel [13].
In Section 5 the formal frameworks are applied to unify the tests generated from the
viewpoints in order to obtain tests for the whole system. The partial conclusions of this
formal experiment are sketched in the last section.
2. Axiomatic Viewpoint Specification
This section defines the formal concept of viewpoints used in the rest of the paper. We
stress here especially the logical and categorical aspects of formal software specifications.
2.1. Categorical Specification Logics. The categorical logic we describe in this paragraph is based on the papers [??] and [22].
• Syntax.
Vocabulary : is given by a category of signatures SIGN. Associated with the category SIGN we have a functor Sort : SIGN → SET, called the sort functor for SIGN;
for any signature Σ , the elements Sort[Σ] (or S) are called the sorts of Σ. By SIGNV ar
we denote the category where an object is a pair (Σ, X) where X is a Sort(Σ)-sorted set
whose elements are called variables, and a morphism from (Σ, X) to (Σ0 , X 0 ) is a pair
(σ, v) with σ : Σ1 → Σ2 a morphism of signatures and v : X1 → (X2 )|σ .We call an object
in SIGNV ar a signature with variables. We often ask for this category to be cocomplete.
For the case studies we will consider in our work, SIGN is cocomplete.
Formulas are given by a functor Syn : SIGN → SET, assigning to each signature Σ
in SIGN a set of Σ−sentences Syn(Σ).
We do not use here any specific language. We will introduce the syntax gradually, as we
will use it.
• Model Theory
The interpretation is given by
138
Towards a Formalizationof Viewpoints Testing3
i) a functor called interpretation functor Int : SIGN → CATop contravariant in SIGN,
which gives to each signature Σ in SIGN a small category Int(Σ) of Σ−models. These
Σ−models provide the interpretations for the names in the vocabulary. Thus we can
suppose that there are some concrete entities, to which sentences can refer. For any
signature morphism σ : Σ1 → Σ2 in SIGN, there is a functor Int(σ) : Int(Σ2 ) → Int(Σ1 )
is called the reduct functor and denoted by −|σ .
ii) a family of Logical Satisfaction Relations ²= {|=Σ , Σ ∈ SIGN}, |=Σ ⊆ |Int(Σ)| ×
Syn(Σ), such that we have the Logical Satisfaction Condition M2 ²Σ2 Syn(σ(a1 )) ⇔
Int(σ(M2 )) ²Σ1 a1 is fulfilled for all signatures morphisms σ : Σ1 → Σ2 in SIGN, all
Σ2 -structures M2 ∈ |Int(Σ2 )| and all Σ1 -axioms a1 ∈ Syn(Σ1 )
• Proof Theory
Proof theoretic methods have been successfully applied in formal software development. Notable examples are the work in [3] for formal integration of VDM and B specification languages and in [19], where correctness proofs have been used as a source for tests
generation. Anyway, in this work we will present only background introduction in proof
theory for specification logics, necessary for a further implementations into a theorem
prover.
A consequence relation (shortly CR) is a pair (S, `) where S is a set of formulas and
`⊆ ℘f (S) × S is a binary relation such that : (Reflexivity) a ` a; (Transitivity) If Γ ` a
and a, Γ0 ` b then Γ, Γ0 ` b; (Weakening) If Γ ` a then Γ, b ` a.
The closure operation on sets of formulas Λ ⊆ S of a CR (S, `) is defined by
Cl` (Λ) = Λ = {a|Γ ` a, Γ ⊆ Λ}
A set of formulas Λ is closed under ` iff Cl` (Λ) = Λ.
Definition 1. A theory (wrt `) is a set of formulas closed under ` .
Definition 2. (CR morphism) A morphism of consequence relations τ : (S, `) → (S 0 , `0 )
is a function τ : S → S 0 (the translation of formulas) such that if Γ ` a then τ (Γ) `0 τ(a).
Definition 3. (Category CR) The consequence relations as objects and morphisms
of consequence relations as arrows form a category, denoted CR, with identities and
composition inherited from the category of sets.
If τ : (S, `) → (S 0 , `0 ) is a CR morphism and Λ ⊆ S then τ (Λ) ⊆ τ(Λ). Thus the
image of a theory under a CR morphism is not always a theory. Moreover τ (Λ) = τ(Λ).
Definition 4. (Logical system) A logical system is a functor L : SIGL → CRL , such
that the deduction relation `Σ is sound for the logical satisfaction relation |=Σ for every
signature Σ ∈ SIGN.
A Σ−theory is a theory in L(Σ). A L−theory is a Σ−theory for Σ ∈ |SIGL |. The
category of theories will be denoted TH.
DCL = (SIGN, Syn, `) forms general deduction system and the structure MCL =(SIGN, Syn, Sem, ²
) gives the model theory (the institution) of the general logic CL .
• Examples of Specification Logics
Example 5. The logic FOL= : many-sorted first order logic with equality
139
Towards a Formalizationof Viewpoints Testing4
Signatures are many-sorted first order signatures. Models are many-sorted first order
structures. Formulas are many-sorted first order formulas. Formula translations mean
replacements of the translated symbols. Satisfaction is the usual satisfaction of a first
order formula in a first order structure.
Example 6. The logic LT SHL: the labelled transition systems hidden logic
Signatures are many-sorted first order signatures enriched with hidden sorts. Each hidden
sort models the states of an lts. As used in hidden logic, we ask operations to be monadic
on hidden sorts. Formulas are many-sorted first order sentences, models are simply manysorted first order structures, satisfaction is defined also like in first order logic. Labelled
transition systems (lts’s) (S, L, →) are modelled as first order structure, where the support
of a hidden sort models the state set S. Labels of L are behavioral formulas of the
form precondition ⇒ action. Actions are simply assignment statements as in imperative
languages. The transition relation is a predicate →⊆ S × L × S. We use the notation
op,l
s − {l} → s0 = op(s) for the transition s → s0 , where op is an operation from a hidden
sort to a hidden sort from the algebraic signature.
2.2. Viewpoint Specification and Unification in General Logics. A Σ−presentation
in a general logic is a signature extended with a set of axioms. In most specifications an
axiom consists of a set of variables and two terms of the same sort belonging to the term
language of the signature with respect to the set of variables.
The semantics of a viewpoint is an element in a category, often an algebra. An algebra
is presented by a presentation if it is denoted by the signature of the presentation and
satisfies the axioms of the presentation.
Any specification formalism based on a general logic L determines a class of specifications, and then, for any viewpoint P SP , its signature Sig[P SP ] ∈ |SIGN| and the
collection of its models Sem[P SP ] ⊂ Int[Sig[P SP ]]. If Sig[P SP ] = Σ, we refer to P SP
as a Σ−specification.
Consider an arbitrary but fixed general logic,
Definition 7. For every signature Σ in SIGN we define Σ−viewpoints P SP by
• any Σ−presentation P RES = (Σ, Eq) is a viewpoint P SP with the following semantics
Sig[P RES] = Σ
not
Sem[P RES] = {M ∈ |Sem(Σ)|, M |= Eq} = SemΣ [Eq]
• enrichment : unif(P SP, P SP 0 ) of the Σ−viewpoint P SP with the Σ0 −viewpoint
P SP 0 , where Σ ∩ Σ0 = ∅, is a viewpoint with the following semantics
Sig[unif(P SP, P SP 0 )] = Σ ∪ Σ0
Sem[unif (P SP, P SP 0 )] = Sem[P SP ] ∪ Sem[P SP 0 ]
A bit of syntactic sugar: we write the enrichment operation as
spec ENRICHMENT is
enrich PSP_name with
PSP 0
endspec.
Example 8. Consider the parallel specification of a telephone account by two different
teams. The first team’s perspective is that of an account in credit. It uses the partial
logic LT SHL to define a general consume operation on the account. The second team
concentrates on deposit operation on the account and uses the FOL= logic.
140
Towards a Formalizationof Viewpoints Testing5
spec CONS is
enrich AMOUNT with
sort Sum
hidden sort State
const ok, outm : State;
opns Consume : State Sum 9 State
Balance : State → Sum
var S : State; X : Sum;
axioms
(S = ok)−{ Balance(S) ≥ X ⇒ Balance(Consume(S, X)) = Balance(S) − X}→ (S =
ok).
(S = ok) − { Balance(S) < X ⇒ Balance(Consume(S, X)) = Balance(S) − X}→ (S =
outm).
endspec
The specification AMOUNT defines a standard numerical datatype like integers. Observe that the operation Consume is partial because is not defined in the state outm.
spec DEP is
enrich AMOUNT, BOOLEAN with
sort State, Amount
const init : State;
opns Add : Credit Amount → Credit
Acc V alue : Credit → Amount
var S : Credit; X : Amount;
axioms
P ositive(init) = true.
(P ositive(S) = true) ⇒ (P ositive(Add(S, X)) = true) ∧ (Acc V alue(Add(S, X)) =
Acc V alue(S) + X).
(P ositive(S) = f alse) ∧ (Acc V alue(S) + X < 0) ⇒ (P ositive(Add(S, X)) = false) ∧
(Acc V alue(Add(S, X)) = Acc V alue(S) + X).
(P ositive(S) = false) ∧ (Acc V alue(S) + X ≥ 0) ⇒ (P ositive(Add(S, X)) = true) ∧
(Acc V alue(Add(S, X)) = Acc V alue(S) + X).
endspec
.
Definition 9. (MC-refinement) A (partial) specification REF refines (by model containment MC) a viewpoint P SP , and we note this by REF wP SP if
Sig[REF ] ⊆ Sig[P SP ]
Sem[REF ] ⊆ Sem[P SP ]
We adopt the view on viewpoints consistency expressed in [6] by
”A collection of viewpoints is consistent if and only if it is possible for at least
one example of an implementation to exist that can conform to all viewpoints.”
Definition 10. (unification) ([6]) The unification UN IF [P SP, P SP 0 ] of two viewpoints
P SP and P SP 0 is defined as the smallest common refinement
U N IF [P SP, P SP 0 ] w P SP
U N IF [P SP, P SP 0 ] w P SP 0
SP w P SP 0 , SP w P SP ⇒ SP w U NIF [P SP, P SP 0 ]
An effective procedure for constructing the unification of axiomatic specified viewpoints can be found in our paper [7].
141
Towards a Formalizationof Viewpoints Testing6
Example 11. Consider the viewpoints DEP and CONS from the Example 8. Their
unification is
spec UNIF is
enrich AMOUNT, BOOLEAN with
sort Amount
hsort State
const ok, outm : State;
opns Consume : State Amount 9 State
Add : State Amount → State
Balance : State → Amount
var S : State; X : Amount;
axioms
(S = ok) − { Balance(Add(S, X)) = Balance(S) + X }→ (Add(S, X)) = ok).
(S = outm) −{Balance(S) + X < 0 ⇒ Balance(Add(S, X)) = Balance(S) + X }→
(Add(S, X)) = outm).
(S = outm) −{ Balance(S) + X > 0 ⇒ Balance(Add(S, X)) = Balance(S) + X }→
(Add(S, X)) = ok).
(S = ok) −{ Balance(S) ≥ X ⇒ Balance(Consume(S, X)) = Balance(S) − X }→
(Consume(S, X)) = ok).
(S = ok) −{ Balance(S) < X ⇒ Balance(Consume(S, X)) = Balance(S) − X }→
(Consume(S, X)) = outm).
endspec
Of course, the concrete method (pushout applied to some translations of the viewpoints)
for construction of the unification makes necessary supplementary constructions, which
will be given in the rest of the paper. In particular, the following signature morphism has
been applied to DEP
Credit → State, Acc V alue → Balance, true → ok, f alse → outm, P ositive → Current
3. A Framework for Composite Viewpoints
3.1. Translation Between Specification Logics. Over the last ten years there have
been a lot of variations in defining morphisms of logics. These notions have been given
many different names, including morphism, map, embedding, simulation, transformation,
coding, representation, and more, most of which do little or nothing to suggest their
nature. We present in this paragraph what are, in our view, the most useful and logically
articulated definitions..
Let L = (SIGN, Syn, Sem, ², `) and L0 = (SIGN0 , Syn0 , Sem0 , ²0 , `0 ) be two categorical specification logics.
Definition 12. A logic morphism (Goguen [14]) M or between logics
∂ = (φ, α, β) : L → L0
is given by
• a functor φ : SIGN → SIGN0
• a natural transformation α : φ; Syn0 ⇒ Syn : SIGN → SET
• a natural transformation β : Sem ⇒ φ; Sem0 : SIGNop → CAT such that the
simple map of institutions condition
142
Towards a Formalizationof Viewpoints Testing7
β(Σ)(M ) |=0φ(Σ) f 0 ⇐⇒ M |=Σ α(Σ)(f 0 ) (Satisfaction Condition)
holds for each Σ ∈ |SIGN| , M ∈ |Sem(Σ)| , f 0 ∈ Syn0 (φ(Σ)).
The functor φ on signatures and the natural transformation β on models go in the
same direction in this definition, while the natural transformation α goes in the opposite
direction.
Logic morphisms compose and form a category LOG.
Definition 13. A logic comorphism CM or (or a plain map -Meseguer [22]) between logics
∂ op = (φ, α, β) : L → L0
is given by
• a functor φ : SIGN → SIGN0
• a natural transformation α : Syn ⇒ φ; Syn0 : SIGN → SET
• a natural transformation β : φ; Sem0 ⇒ Sem : SIGNop → CAT such that the
simple map of institutions condition
β(Σ)(M 0 ) |=Σ f ⇐⇒ M 0 |=φ(Σ) α(Σ)(f ) (Co-Satisfaction Condition)
holds for each Σ ∈ |SIGN| , M ∈ |Sem(Σ)| , f 0 ∈ Syn0 (φ(Σ)).
Logic comorphisms compose and form a category COLOG.
Proposition 14. LOG and COLOG are both complete.
Because we are primarily interested in specification morphisms, and in our approach
specifications are theories, we need to consider generalizations of logic morphisms that
involve mapping theories instead of just signatures.
Let Sg : TH → SIGN be the functor which forgets the formulas of a theory.
Definition 15. The logic of specifications over a general logic L = (SIGN, Syn, Sem, ²
, `) is LSP = (THL , SynSP , SemSP , ²SP , `SP ) where THL is the category of theories
over L , SynSP is Sg; Syn , SemSP is the extension of Sem to theories, ²SP is Sg; ² .
Definition 16. A specifications morphism is a morphism from LSP to L0SP which is
signature preserving.
We denote by SPLOG the category of logics of specifications and their morphisms.
In the rest of this paper we will use the notation LOGICS to denote anyone of the
categories LOG, COLOG and SPLOG.
Example 17. (A translation between PFOL= and LT SHL ) Consider the specification
logics presented Examples 5 and 6.
∂(Credit) = State , ∂(Sum) = Amount ,
∂(Consume) = (Consume, {a1, a2, a3})
∂(x) = x otherwise
143
Towards a Formalizationof Viewpoints Testing8
Figure 1:
3.2.
A Category for Composite Viewpoints.
Definition 18. Given a functor G : Cop → CAT, the Grothendieck construction constructs the fibration induced by G, i.e. a category F(C, G) defined as follows:
• an object of (C, G) is a pair < a, x >, where a ∈ |C| and x ∈ |G(a)|
• an arrow < α, ρ >:< a, x >→< a0 , x0 > has α : a → a0 an arrow of C and ρ : x →
Gα(x0 ) an arrow of F (a)
• if < α, ρ >:< a, x >→< a0 , x0 > and < β, σ >:< a0 , x0 >→< a00 , x00 > then < α, ρ >
; < β, σ >:< a, x >→< a00 , x00 > is defined as< α, ρ >; < β, σ >=< α; β, ρ; Gα(ρ) >
This construction provides us with a way to give a domain where objects are very
general logical structures and whose arrows are compatible relations between them.
Let ∂ = (φ, α, β) : L → L0 be a (co)morphism of logics and < Σ, Γ > , < Σ0 , Γ0 >
theories from TH and TH0 .
Definition 19. A ∂−composite viewpoint translation between < Σ, Γ > and < Σ0 , Γ0 >
is an arrow ♣ :< Σ, Γ >→< Σ0 , Γ0 > such that ♣ : φ(Σ) → Σ0 is a morphism in SIGN0
and such that Γ0 `Σ0 Syn(φ(Σ))(α(Σ)(Γ) ∪ ∅0Σ ).
The composite viewpoint translations compose and build a category which is on top of
the category LOGICS.
Theories from arbitrary logics as objects and composite viewpoint translations as morphisms define the category HPSPEC.
The category HPSPEC is exactly the Grothendieck category G(LOGICS, T h) where
T h : LOGICS → CAT.
144
Towards a Formalizationof Viewpoints Testing9
Given a composite viewpoint translation ♣ :< Σ, Γ >→< Σ0 , Γ0 > , its denotation is
the reindexing functor Sem(♣) : Sem0|= (< Σ0 , Γ0 >) → Sem|= (< Σ, Γ >), which maps
models from the target to the source logic.
Definition 20. (Indexed Category of Composite Models) Let G(LOGICS, T h) be the
Grothendieck category. and < Σ, Γ > , < Σ0 , Γ0 > theories from THL and TH0L0 . Then
the assignment < Σ, Γ >7→ Sem|=,L (< Σ, Γ >) ,
♣ :< Σ, Γ >→< Σ0 , Γ0 >→ Sem(♣) : Sem0|=,L (< Σ0 , Γ0 >) → Sem|=,L (< Σ, Γ >)
defines an indexed functor HSem : G(LOGICS, T h)op → CAT.
Definition 21. We define the category of composite models and composite morphisms
as the split fibration induced by HSem : G(LOGICS, T h)op → CAT, i.e. the category
F(G(LOGICS, T h), HSem).
In general the indexed category of composite models and composite model functors
HSem : G(LOGICS, T h)op → CAT as the semantically functor which maps composite
viewpoints to their model theoretical counterparts.
3.3. A Logic for Composite Viewpoints. A general logic for specifying the unification must be able to keep some original viewpoint specification logics. A candidate
logics for this are the Grothendieck logics.
Definition 22. (Diaconescu [10]) Given an indexed logic L : Indop → Log, define the
Grothendieck logic L# as follows:
P
P
, i), where iP∈ |Ind| and
a signature in the logic L(i) ,
-Signatures in L# are pairs ( P
, j) consist of a morphism d : i → j ∈ Ind
-signature morphisms (σ, d) : ( P1 , i) → ( 2P
and a signature morphism σ : 1 → ΦL(d) ( 2 ) (here, L(d) : L(j) → L(i) is the logic
morphism corresponding to the arrow d : i → j in the logic graph, and ΦL(d) is its
signature
P translation component),
P
-the ( , i)−sentences are the -sentences in L(i), and sentence translation along (σ, d)
is the P
composition of sentence
Ptranslation along σ with sentence translation along L(d),
-the ( , i)−models are the
−models in L(i), and model reduction along (σ, d) is the
composition of model translation alongP
L(d) with model translation along σ, and P
-satisfaction (resp. entailment) w.r.t. ( , i) is satisfaction (resp. entailment) w.r.t.
in
L(i).
4. Formal Testing for Axiomatic Specifications
We develop our formal approach to software testing in the algebraic tradition initiated by
M.C. Gaudel and B. Marre in [2] and [21].
A testing hypothesis describes assumptions about the system or the test process to
reduce the size of the test set. But too strong hypotheses could weaken the generated
tests, as an industrial experiment [21] shows. We consider here only uniformity hypotheses:
we define sub-domains of interpretation for items, such that the system has the same
behavior for all the values of the sub-domain. Then we assume that testing for a value of
a sub-domain is enough to test for all its values. The sub-domains are defined in a logical
form by the concept of test cases.
Definition 23. A test instance is a couple (C, D) where C is a test case corresponding
to a test hypothesis and D is a test data defined with respect to this test hypothesis.
145
Towards a Formalizationof Viewpoints Testing10
Let P rog be the program under test and a a specific test goal (like a axiom of the
program specification or a desirable program property). If an execution of P rog satisfies
one Σ−test data set D , we say ”P rog satisfies the test data set D” and we notice
P rog mΣ D and P rog mΣ C. We use the same notation for a test case C: P rog mΣ C
means that all the executions of the program P rog satisfies C (and we say ”P satisfies
the test case C”).
Definition 24. A test instance (C, D), with respect to a program P rog, is called
• unbiased if (P rog m C) ∧ (P rog |=Σ a) ⇒ P rog mΣ D.
• valid if (P rog m C) ∧ (P rog mΣ D) ⇒ P rog |=Σ a.
• correct if it is valid and unbiased: (P rog m C) ⇒ (P rog |=Σ a ⇐⇒ P rog mΣ D))
Unbiased test sets are ones which accept all correct programs, but incorrect programs
can also be accepted as correct. Valid tests do not accept incorrect programs, but correct
programs can be rejected. Thus, an ideal test must be valid and unbiased, i.e. correct.
Definition 25. The category of Σ−test cases, denoted TCΣ , has
• objects: test cases
• morphisms: for a test case morphism C → C 0 , at each instance of C we associate a
an instance of C 0 with the same item, i.e. an inclusion between the set of instances
of both test cases (or equivalently the logical implication C ⇒ C 0 holds).
TCΣ is a finitely cocomplete category: initial object is a an empty test case, pushout
is defined by putting together the instances of both test cases without repetition of shared
instances.
The instantiation of test cases with values generates the test data sets.
Definition 26. A test data set is a subset of consistent ground instances of formulas
from TCΣ .
Example 27. Consider the viewpoint DEP from the Example 8. As a test cases we could
consider an uniformity hypothesis like
C1
C2
C3
C4
C5
C6
C7
=
=
=
=
=
=
=
{P ositive(S) = true, Acc V alue(S) > 0, X > 0, Acc V alue(S) > X}
{P ositive(S) = true, Acc V alue(S) > 0, X = 0}
{P ositive(S) = true, Acc V alue(S) = 0, X = 0}
{P ositive(S) = f alse, Acc V alue(S) < 0, X > 0, Acc V alue(S) + X < 0}
{P ositive(S) = f alse, Acc V alue(S) < 0, X = 0}
{P ositive(S) = f alse, Acc V alue(S) < 0, X > 0, Acc V alue(S) + X > 0}
{P ositive(S) = f alse, Acc V alue(S) < 0, X > 0, Acc V alue(S) + X = 0}
We can observe that from C one can derive
P ositive(S) = true ⇔ Acc V alue(S) ≥ 0
Using a test notation like
< P ositive(S), Acc V alue(S), X, P ositive(Add(S, X)), Acc V alue(Add(S, X)) >
a test data set is
146
Towards a Formalizationof Viewpoints Testing11
DDEP ={ < true, 25, 20, true, 45 >,
< true, 25, 0, true, 25 >,
< true, 0, 0, true, 0 >,
< false, −25, 20, false, −5 >,
< false, −25, 0, f alse, −25 >,
< false, −20, 25, true, 5 >,
< false, −25, 25, true, 0 > }
.
Example 28. Consider the viewpoint CONS from the Example 8. As a test cases we
could consider an uniformity hypothesis like
C1
C2
C3
C4
C5
C6
=
=
=
=
=
=
{Balance(S) > 0, X
{Balance(S) > 0, X
{Balance(S) > 0, X
{Balance(S) = 0, X
{Balance(S) > 0, X
{Balance(S) = 0, X
> 0, Balance(S) > X}
= 0}
> 0, Balance(S) = X}
= 0}
> 0, Balance(S) < X}
> 0}
Using a test notation like
< Current(S), Balance(S), X, Consume(S, X), Balance(Consume(S, X)) >
a test data set is
DW IT HDR ={ < ok, 25, 20, ok, 5 >,
< ok, 25, 0, ok, 25 >,
< ok, 25, 25, ok, 0 >,
< ok, 0, 0, ok, 0 >,
< ok, 20, 25, outm, −5 >,
< ok, 0, 25, outm, −25 > }
.
Definition 29. (Testing functor) We define a functor Test giving for every signature its
category of Σ−tests
T est : SIGN → CAT
T est(Σ) = TCΣ
such that the satisfaction condition for tests
M 0 mΣ0 T est(σ)(a) ⇔ Sem(σ)(M 0 ) mΣ a
is satisfied.
In a categorical specification logic, a program is identified with a viewpoint P SP and
its execution with the semantics of the specification Sem[P SP ]. Thus, a test goal is a
formula a ∈ T H[P SP ], and the satisfaction relations P rog mΣ D and P rog mΣ C are
replaced by the test satisfaction relation for models mΣ ⊆ |M od(Σ)| × |T est(Σ)| for each
Σ ∈ |SIGN|
147
Towards a Formalizationof Viewpoints Testing12
5. Testing Unification by Unification of Tests
Suppose we have generated the test instances (CP SP , DP SP 0 ) from the viewpoints P SP,
P SP 0 , correct for the test goals XP SP , XP SP 0 and similar for the specification CO, which
expresses the correspondences between the viewpoints. It is important to note that we
do not use any hypotheses about the way tests have been obtained. For example, DP SP
could be obtained from a correctness proof, as in [20], and DP SP 0 could be obtained by
any method of generating test cases from a formal specification.
Consider the unification obtained by the following pushout of viewpoints,
CO
P SP
m1 .
& m2
&
m02
m01
U NIF
.
P SP 0
corresponding to the pushout of signatures
Sig[CO]
Sig[P SP ]
σ1 .
& σ2
&
σ 02
σ01
Sig[UN IF ]
.
Sig[P SP 0 ]
We are interested in the way (CUNIF , DUNIF ) for UN IF can be obtained. In the correctness of the method.
Proposition 30. Correctness of test instances is preserved by signature translation and
composite translation morphisms.
Proposition 31. The test instance (CUNIF , DUNIF ) obtained by pushout
(CCO , DCO )
(CP SP , DP SP )
t1 .
& t2
&
. t02
t01
(CU NIF , DU NIF )
(CP SP 0 , DP SP 0 )
is correct for Syn(m01 )(XP SP ) ∧ Syn(m02 )(XP SP 0 ).
Proof.
By renaming according to m01 we have a test instance (CP0 SP , DP0 SP ) defined on Si g[P SP ] and correct for Syn(m01 )(XP SP ) and similar we get a test instance
(CP0 SP 0 , DP0 SP 0 ) defined on Si g[P SP 0 ] and correct for Syn(m02 )(XP SP 0 ).
We consider a model M 0 defined on Si g[U N IF ] such that M 0 satisfies CUNIF = CP0 SP ∧
CP0 SP 0 . M 0 satisfies CP0 SP and CP0 SP 0 and correctness of (CP0 SP , DP0 SP ) and (CP0 SP 0 , DP0 SP 0 )
gives
0
M 0 |=Si g[UNIF ] Syn(m1)(XP SP ) ⇐⇒ M 0 mSi g[U NIF ] DUNIF
1
0
0
M |=Si g[UNIF ] Syn(m2)(XP SP 0 ) ⇐⇒ M mSi g[UNIF ] DP0 SP 0
If M 0 satisfies DP0 SP and DP0 SP 0 we can build a consistent test case on Si g[U N IF ] by
conjunction, so M 0 satisfies DU NIF . Reversely, if M 0 satisfies DU NIF ,it exists a test case
0
of DUNIF satisfied by M 0 and build by composition of a test case of DU
NIF 1 and a test
0
0
0
0
case of DP SP 0 . So M satisfies DP SP and DP SP 0 .
We obtained that
M 0 |=Si g[UNIF ] Syn(m1)(XP SP ) ∧ Syn(m2)(XP SP 0 ) ⇐⇒ M 0 mSi g[UNIF ] DUNIF
Because XUNIF = Syn(m1)(XP SP ) ∧ Syn(m2)(XP SP 0 ) we obtain that the test instance
(CU NIF , DU NIF ) is correct for Syn(m01 )(XP SP ) ∧ Syn(m02 )(XP SP 0 ).q.e.d.
148
Towards a Formalizationof Viewpoints Testing13
Example 32. We construct now the test instance (CU NIF , DUNIF ) from (CW IT HDR , DW IT HDR )
and (CDEP , DDEP ).
We consider the following notation for test data
< op, Current(S), Balance(S), X, Current(op(S, X)), Balance(op(S, X)) >
The symbol op ranges in the values {Add, Consume} and the symbol ⊥ when the attribute
is not defined for the current operation. The test data DU NIF is
DUNIF ={ < Consume, ok, 25, 20, ok, 5 >,
< Consume, ok, 25, 0, ok, 25 >,
< Consume, ok, 25, 25, ok, 0 >,
< Consume, ok, 0, 0, ok, 0 >,
< Consume, ok, 20, 25, outm, −5 >,
< Consume, ok, 0, 25, outm, −25 >,
< Add, ok, 25, 20, ok, 45 >,
< Add, ok, 25, 0, ok, 25 >,
< Add, ok, 0, 0, ok, 0 >,
< Add, outm, −25, 20, outm, −5 >,
< Add, outm, −25, 0, outm, −25 >,
< Add, outm, −20, 25, ok, 5 >,
< Add, outm, −25, 25, ok, 0 > }.
Similar we construct CU NIF
C1
C2
C3
C4
C5
C6
C7
C8
C9
C10
=
=
=
=
=
=
=
=
=
=
{Op, ok, Balance(S) > 0, X = 0}
{Op, ok, Balance(S) = 0, X = 0}
{Op, ok, Balance(S) > 0, X > 0, Balance(S) > X}
{Consume, ok, Balance(S) > 0, X > 0, Balance(S) = X}
{Consume, ok, Balance(S) > 0, X > 0, Balance(S) < X}
{Consume, ok, Balance(S) = 0, X > 0}
{Add, outm, Balance(S) < 0, X > 0, Balance(S) + X < 0}
{Add, outm, Balance(S) < 0, X = 0}
{Add, outm, Balance(S) < 0, X > 0, Balance(S) + X > 0}
{Add, outm, Balance(S) < 0, X > 0, Balance(S) + X = 0}
6. Conclusions
As the title suggests, this work is only preliminary. Much more remains to be done in the
sense of using effective test case procedures and describing concrete development relations
to be used in the unification process. We intend to instantiate our framework with more
formal notations, like temporal logics and co-algebraic specifications.
The basic achievements of this work are:
• a method of unification of heterogeneous viewpoints using category theory,
• corresponding to this, a method of testing the unification by unifying the tests
generated from the viewpoints
• an exemplification using a small case study (a simplified telephone account)
• a formal framework for constructing proofs of correctness preservation for the unification process.
149
Towards a Formalizationof Viewpoints Testing14
The formal testing theory we have presented here is connected with general logics only
on their model theoretic counterpart. Despite of a careful presentation of proof theory,
issues like general logics for theorem provers, mappings of viewpoint logics into a universal
logic didn’t get their natural place now. A future work might describe all these issues in
connection with using correctness proofs as a source for test case generation [20].
This work is all theoretical, conducted by a toy example. A next step is to consider
an executable logical framework (like LF [15], Maude or HOL) in which the Grothendieck
viewpoint logic should be embedded, and a real life case study (we target an air traffic
control example).
As future ’test’ study, we will concentrate on testing of ODP and UML system specifications. ODP defines a basic framework for conformance as part of the reference model,
rather than it being retrofitted later, as in OSI. UML allows systems UML allows systems to be described using diagrams and notations of various kinds, but none of these
is assumed to fully characterise the behaviour of the system being specified. Thus, for
an UML specification, any diagram could be mapped into a viewpoint specification, and
consequently develop a specific theory of testing. We also intend to apply our logical
viewpoint specification and testing framework to hybrid systems. This can be done in
few ways, for example by extending UML capabilities to specify hybrid systems or by
modelling them using a particular categorical logic.
Acknowledgements
Authors want to thank Dr. Eerke Boiten who contributed to the first part of this paper
(we have actually used his work on a categorical framework for viewpoint specifications)
and read a draft of this paper. The financial support from EPSRC under the grant
GR/N03389/01 is also fully acknowledged.
References
[1] J. Adamek, H. Herrlich, G. Strecker Abstract and Concrete Categories Wiley,
New York, 1990.
[2] G Bernot, M—C Gaudel, B Marre Software Testing Based on Formal Specifications:
a Theory and a Tool Software Engineering Journal, Nov 1991.
[3] J. Bicarregui, M. Bishop, T. Dimitrakos, K. Lano, T. Maibaum, B. Matthews,
B. Ritchie Supporting Co-Use of VDM and B by Translation In J. Bicarregui, J.
Fitzgerald (Eds) VDM in 2000! Proceedings of the 2nd VDM workshop, 2000.
[4] E.A. Boiten, J. Derrick A Constructive Framework for Partial Specification EPSRC Fast Stream Research Proposal Case for Support
http://www.cs.ukc.ac.uk/research/tcs/framework/
[5] E.A. Boiten, H. Bowman, J. Derrick, P.F. Linington, M.W.A. Steen Viewpoint Consistency in ODP. Computer Networks, 34(3):503-537, 2000.
[6] H. Bowman, E. A. Boiten, J. Derrick, M. W. A. Steen. Strategies for Consistency
Checking Based on Unification. Science of Computer Programming, 33:261-298, 1999.
[7] M.C. Bujorianu, E.A. Boiten Consistency Checking and Unification of Partial Specifications Using Category Theory submitted.
[8] M.C. Bujorianu, M.L. Bujorianu On the Hilbert Machines Quantitative Computational Model QAPL’01 Workshop on Quantitative Aspects of Programming
Laguages, Satellite Event of PLI’02, September 3 - 7, 2001 — Firenze, Italy. To
appear in Vol. 60 of Electronic Notes in Theretical Computer Science, Elsevier,
www.elsevier.locate/tcs/
150
Towards a Formalizationof Viewpoints Testing15
[9] M.C. Bujorianu, M.L. Bujorianu Linear Logic: From Stochastic Analysis to Software
Testing BCTCS 18 British Colloquium for Theoretical Computer Science, Bristol,
UK, 2002.
[10] R. Diaconescu. Extra Theory Morphisms for Institutions: Logical Semantics for
Multi-paradigm Languages. Technical Report IS-RR-96-0024S, Japan Institute of Science and Technology, 1996.
[11] A. Finkelstein, J. Kramer, B. Nuseibeh, L. Finkelstein, M. Goedicke. VIEWPOINTS:
a Framework for Integrating Multiple Perspectives in System Development. International Journal on Software Engineering and Knowledge Engineering, 2(1):31-58, 1992.
[12] M.C. Gaudel, P.R. James Testing Algebraic Data Types and Processes: A Unifying
Theory. Formal Aspects of Computing , 10(5-6), pp. 436-451, 1998.
[13] M.C. Gaudel Testing Can Be Formal, Too. TAPSOFT 1995, pp. 82-96, 1994.
[14] J. Goguen, G. Rosu Institution Morphisms to appear in Formal Aspects of Computing.
[15] T. Harper, R., Sannella, D., Tarlecki, A. Structured Theory Presentations and Logic
Representations. Annals of Pure and Applied Logic 67:113—160 1994.
[16] P.F. Linington, J. Derrick, H. Bowman The Specification and Conformance of ODP
Systems. In 9th International Workshop on Testing of Communicating Systems, IFIP
TC6/WG6.1, Chapman & Hall, pp. 93-114. 1996.
[17] I. MacColl, D. Carrington Testing MATIS: a Case Study on Specification-based Testing of Interactive Systems Formal Aspects of Human Computer Interaction Workshop, Sheffield, UK September 1998
[18] P. D. L. Machado. On Oracles for Interpreting Test Results Against Algebraic Specifications. In Proceedings of AMAST’98, volume 1548 of LNCS, Springer, 1999.
[19] S. Maharaj Towards a Method of Test Case Extraction from Correctness Proofs. in
Proceedings of the 14th International Workshop on Algebraic Development Techniques, Bonas, France, pp 45-46, November 1999.
[20] S. Maharaj Test Case Extraction from Correctness Proofs Case for Support 2000
http://www.cs.stir.ac.uk/~sma/testing.ps
[21] B. Marre, P. Thévenod-Fosse, H. Waeselynck, P. Le Gall et Y. Crouzet. An Experimental Evaluation of Formal Testing and Statistical Testing, IV. Fault Removal.
Section C., pages 273—281. ESPRIT Basic Research Series, Predictably Dependable
Computing Systems. Springer-Verlag, 1995. Also SAFECOMP’92, Randell, B. and
Laprie, J.-C. and Kopetz, H. and Littlewood, B. (ed.)
[22] J. Meseguer General Logics. In Logic Colloquium’87, pp. 275—329, North Holland,
1989.
[23] D. Pemberton, I. Sommerville VOCAL: A Framework For Test Identification & Deployment in IEE Proceedings - Software Engineering, Vol. 144, Issue 5-6, , p. 249 260, 1997.
[24] V. Wiels, S. Easterbrook Management of Evolving Specifications Using Category Theory Automated Software Engineering 98 October 13-16 1998, Hawai
151