From 950af2e753bd8318f2405a8163928f7715659d5c Mon Sep 17 00:00:00 2001 From: Russell Geraghty Date: Tue, 28 Apr 2020 08:28:16 +0100 Subject: [PATCH] Tidy up documentation, correct rendering in test --- README.md | 15 ++- cypress/integration/rendering/journey.spec.js | 18 ++- docs/mermaidAPI.md | 109 ++++++++++++++++++ img/user-journey.png | Bin 0 -> 39750 bytes 4 files changed, 127 insertions(+), 15 deletions(-) create mode 100644 img/user-journey.png diff --git a/README.md b/README.md index 2a94d75f2..e5475f17e 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ __mermaid is a Javascript based diagramming and charting tool. It generates diag Check out the list of [Integrations and Usages of Mermaid](https://github.com/mermaid-js/mermaid/blob/develop/docs/integrations.md) For more information and help in getting started, please view our [documentation](http://mermaid-js.github.io/mermaid/) and start simplifying yours. Alternatively, you can also play with our [live editor](https://mermaidjs.github.io/mermaid-live-editor/). - + :trophy: **Mermaid was nominated and won the [JS Open Source Awards (2019)](https://osawards.com/javascript/#nominees) in the category "The most exciting use of technology"!!! Thanks to all involved, people committing pull requests, people answering questions and special thanks to Tyler Long who is helping me maintain the project.** @@ -170,7 +170,7 @@ Crash --> [*] pie "Dogs" : 386 "Cats" : 85 -"Rats" : 15 +"Rats" : 15 @@ -187,8 +187,13 @@ pie + + User Journey
+ [docs - live editor] + -
+  
+  
   journey
     title Hello
     section Go to work
@@ -200,14 +205,14 @@ pie
       Sit down: 3: Me
 
- User Journey Diagram + User Journey Diagram -## Related projects +## Related projects - [Command Line Interface](https://github.com/mermaid-js/mermaid.cli) - [Live Editor](https://github.com/mermaid-js/mermaid-live-editor) diff --git a/cypress/integration/rendering/journey.spec.js b/cypress/integration/rendering/journey.spec.js index 5fa822060..8bcf58412 100644 --- a/cypress/integration/rendering/journey.spec.js +++ b/cypress/integration/rendering/journey.spec.js @@ -16,16 +16,14 @@ section Order from website imgSnapshotTest( ` journey - title Go shopping - - section Get to the shops - Get car keys: Dad - Get into car: Dad, Mum, Child#1, Child#2 - Drive to supermarket: Dad - - section Do shopping - Do actual shop: Mum - Get in the way: Dad, Child#1, Child#2 + title My working day + section Go to work + Make tea: 5: Me + Go upstairs: 3: Me + Do work: 1: Me, Cat + section Go home + Go downstairs: 5: Me + Sit down: 3: Me `, {} ); diff --git a/docs/mermaidAPI.md b/docs/mermaidAPI.md index 6dd749e27..b5ab27571 100644 --- a/docs/mermaidAPI.md +++ b/docs/mermaidAPI.md @@ -209,6 +209,41 @@ This will display arrows that start and begin at the same node as right angles, This will show the node numbers **Default value false**. +### actorFontSize + +This sets the font size of the actor's description +**Default value 14**. + +### actorFontFamily + +This sets the font family of the actor's description +**Default value "Open-Sans", "sans-serif"**. + +### noteFontSize + +This sets the font size of actor-attached notes. +**Default value 14**. + +### noteFontFamily + +This sets the font family of actor-attached notes. +**Default value "trebuchet ms", verdana, arial**. + +### noteAlign + +This sets the text alignment of actor-attached notes. +**Default value center**. + +### messageFontSize + +This sets the font size of actor messages. +**Default value 16**. + +### messageFontFamily + +This sets the font family of actor messages. +**Default value "trebuchet ms", verdana, arial**. + ## gantt The object containing configurations specific for gantt diagrams\* @@ -263,6 +298,80 @@ The number of alternating section styles. Datetime format of the axis. This might need adjustment to match your locale and preferences **Default value '%Y-%m-%d'**. +## journey + +The object containing configurations specific for sequence diagrams + +### diagramMarginX + +margin to the right and left of the sequence diagram. +**Default value 50**. + +### diagramMarginY + +margin to the over and under the sequence diagram. +**Default value 10**. + +### actorMargin + +Margin between actors. +**Default value 50**. + +### width + +Width of actor boxes +**Default value 150**. + +### height + +Height of actor boxes +**Default value 65**. + +### boxMargin + +Margin around loop boxes +**Default value 10**. + +### boxTextMargin + +margin around the text in loop/alt/opt boxes +**Default value 5**. + +### noteMargin + +margin around notes. +**Default value 10**. + +### messageMargin + +Space between messages. +**Default value 35**. + +### messageAlign + +Multiline message alignment. Possible values are: + +- left +- center **default** +- right + +### bottomMarginAdj + +Depending on css styling this might need adjustment. +Prolongs the edge of the diagram downwards. +**Default value 1**. + +### useMaxWidth + +when this flag is set the height and width is set to 100% and is then scaling with the +available space if not the absolute space required is used. +**Default value true**. + +### rightAngles + +This will display arrows that start and begin at the same node as right angles, rather than a curve +**Default value false**. + ## er The object containing configurations specific for entity relationship diagrams diff --git a/img/user-journey.png b/img/user-journey.png new file mode 100644 index 0000000000000000000000000000000000000000..02368521a10edfc80ec53a757a193f5e23763a16 GIT binary patch literal 39750 zcmeFZby$>L_XbKzN=XXBfOLn_DGk!y2nB!XSA&YhzOjFccJZq@lh(mLxrO@4I*U`n^MRG{|<&ia|l4iuzt1 zZ5^N?&|t=3TUvs)_7XnE60C9uRF*<}tvPBa=(>`zw-}E_>s~W;clIl7x%uK2)Q#QS zGiq--iZ7f55)aTTp=&;$v7S8niVf1LZ_0-1+J~wX4fYO$soeCQ+QK-0g298-!4ISQ z3~LS5Xc4LsK8g(sV$9qERp}TN(KQx1CGRfe&D7Q@-roD8qmTaE!1zaRUrBh10vrm^ z3|DJLB{dsgmPk7$zElBnnrojMH?r6hu_vgg8O(wC_a3lBaiIo8h!r$psHkW{g6-OV z2}8I~0%QUS@GmdOx|B&+nGc%`^f|k= z1D-(xKhJ?5C@9#d04N0DHx}?Ck^%E)D;#|W?4Qq}_a5IUq$DgU3H(+vv;%{!?B82E z1Rq}y14B)kDyuuF%e>__w6%t8@wFEo71G!jQSlM&C@R9xT z4sPK2TwzdOG1Qb>qFem(~8$PV#DBA-BG;zY`tl4m#a#LYb1 z%`bnlUKrdRwvgF9@JL9#*l)b@bPlNBOtrW2v7vZF3XKK&%|n1J;#>H2M`;8U(r+H# zl!E^7R4~77TExug=s2)K;t_!%7yRFcKm6wJhy1^O|F7-Ky%30(cTRvCOQabz25Lwo zLjK2{6D)ovLA1kA4j2K%8)S2J48GbaYc(1#RH?LEm#Vj04<_QY0rh+KtauE>F+}lu zy3xpI2*&Int@&_R&3&V9$1Z!pebH0{ zEuJ?p_RPDle_2a}w;ZDUyX9xQM_CHg^r#Sm+k@5ztCR+hbPnq@;fDIAPWZG-KIpn= z_4V!Xq6zY}=zrZ$Z!H*Q^*Yf`lKm>)e+qQ!H{ zp;oG`nE3`i@KxHskDj0iTz+{_5L%gNV%y$qEqEl24{bd&!sT!YBAjFkv;MWhuqRaM zPS)QaHq4v5K%**`Uav*F!EuKY_6cglc#)d)XOWLEW~jUL|5}$S73g(6RDmx_mF*pEX}BL^rvfT+1xtF=|s&NX0}52clic zq)%b~%aNGC%u#eDA}JYod-H%{=iZb@dCvH9Elxmv{;F3u{%Yyx z_bgVUUJS`(_L8>=%LdVfpnT*uv4Ww{Yg%WbeR>6c=&ertR+i#NVG&m?0sWP;4 z0`_G!Lh>EDX3OJbh+`eNNodn)t{VgeTD7I1DasnLFUZAo7%pRj^K)`GH@j6MaE&1z z$9+_8HzPWYPDnF!n$`KlY{jnuTQw}1+44AA>1H+jiaOowUW<16v8G}bNn4S50WiA$ zp=6F6u}{yB2bfwVrYpgz+lQ3UaU$|Qw|5td*N*qMuFV571&TQ-ob`oxhGMt4r#F{J zt9BcM1oa>88qy}~7IElQW8xUJkc(9Zv2bxINBAyM(9F!TIm~`YqISpuWjm_C1I8nPEG_rfJ7})$8(HD}$Z|=q3WWK61CL5$o-U8&%Ggtzr=Sw^ zP8Aeu?sDf4IMS>KFq$#s;a-WwUcb1ro~bTS;!`P9Mp8qDN)@NUNhu}V%hxd=+ODd} zt9d|G>&K~GkM*Iw&574VR+B;vbPIj9u83WVdu}yAc*oqDCmBtty{BuSygbgcAFEg@ z;#M}ew>(9=-XD9CKO%*R`Qd0qG;n3260icao+f81J+HejN?NV=*F}xHZ>fHXmg!hQ zw=7lH{xYP{)<|_#<(#%Fein0e-!r+@CUC@_*z*Cm6c5h&6$(A>98%h;R;}3H_pHFi zUD>VqMrUV2*GB^0ME!H2@#06iyXtZ{~}=V;_wS4R*Dt&lL>4i2hj=nJBWoT}&9@ z@a!RuK0FGGF~{ridQz<)?ouj2#!^+rLvXX3ZnWj+E@$IvIf4+FG~9~K&N~HU2FntR z>E=p2JA0@BY&j8{{A{H>Su|W6rlvz5VFmT~^g0bcNQXRFJ+B>33hsIN&Zi8~OnHCB z5MHE${{F3VA3@s)bMQ-}OR~j{{w{^(-lnaNkQUQ1%01TQLWZ3cde`H%W>zU>h}Jmq@-wuK0L_U=48=;`wMpCK8Rp2pD1>-O`%bubZ?km?@Yt@_a&E%3aZ4l zu_0wC6cQK=rq8C6#(|)G)cA%+ZPYfc(z^77#cr*a8Xnd^WGIS4dT?kuoMnW}PN~ww z!vTsSRs(P~pv=rnm?x@`(E(oZCCX@SN3%eS{TLTSvqrOV+Q23`zOxug=j#b?woA%MX*!pfXjXZzx$Mj z9w`RJTUb+ss-K}#vK`X>nX44Of3=`hgZaFy<+?v5+mJG$=TnIB4sut%%Vw%GQNMnB za27@bgO?fs(lX^1O$B9v?HPRYUbDk(n@yEx-ZeDBnsarP%a@Wb2hBscL*pw) z5yR>C+krD{F=8DPLLcC-NbOey->7uahUv+&-OgiRhyS_Qf~a)4fzC;)Zz;z5?)psZ zHE}Clx1SQ9)bv_qlbyY7{|>7m+(#+WW%o(O1zYO>S?Ig||g1r6H=(APH$aZbG3mPqFUj6fm z2H&;5Xz}gIvV(}8=;%U~BIK1YQsLLl%xS#Ki zR+-4zN8RD$;;4S?g-37||MVQpfVIU{%)i7AnR;Q|E(@CaM3xJWi}5v#d86Uo)@ZH_ zp?%cCU8jW2YbTu0(K-t+CcT!XyD3iZWWU-ajtYJq8rTc=kS zY^XoHx<9qs0O9Rd6#n+4=Bo%u#MuCD(a)8?KcQQ5bD`ONDE^CGw+bq(QHN^0>Ll(C z*@QMhjoqj1iBubDW)uT`5z!;V(wDS76Z%CPODU@USlc~!6~QXsy>~V)2`6q#hiykn zq|oY&1PicKAhRenUH*zsPhd)gY-}N)VcHdkjugH<@u?!~&DSWFYVt)u=k};6M&|7j z7J`!dCq9Qlx?}@T^zGF?oc>~YMipaAX1Sn^U{wc{oO|p}P^T5XnY1*--~UXqZoC8L zjQ3*B9?hY=oNY#Q7kOv+sVY1~cv(U=&1D5Cuq|c^2M+QEQ@V`^7Fw=8cE_i=<|!fj zd+-2o_K6JMf`W4G%qup9wUKr{V?$HD#Ion<&8rD;OxCH-L&Sc{LaI)$h1bKPU~S}> zEt5Q9i93jAE;x$Lf7wQ(>pPx=fJ1wMTzl5gkWnM(Sja)!7>e(h&hM$I-wlg`-?ewB zoUzM>vSOl6Kp@4dt_k|!uQ5|=eSkgI>5=;Dja@ z{ba+zeJ){hedZ~yPTKOrBUJ!5ZYg&aqT2K?Q9?7)PQ^{qcL(D{$I_{7TiU*R4W~vHI`phU zv!x9SF&(K02Hp0}_C(2!WbB~uukr11X>vyhdaD!NT=axL7>V67n1yST_6gyFaT(0e ziQcQIgTfu(1-{yW8JdC_yFDf7_YHf&L*`x$=gC1wRvcTP!(TmsGRH@z7y(-F8GjBn zfjv?8LKXf~Js&k)@jh(n3TMKA$k``CX?qn|3=N2IV4^qKyb- za3I$u9pjsKxQX!L!W93)F(i*fhWL{27mXr+_!TvLA03cB%z+f@4zji|NW>f!!MwQ_ zA=*owJ)t|P49J0qnGA-`)Wb82y+=D@1xXDTzQZ=UB&<3n45*jTg_^7Sccy#YZ?QA_ z&#?ZWHukEGtJMqo3Oz>=+Lk%>wEOwbXAq^5kmdKU@b*5N6=~;9QA|ixu%S4)+SWFP zyly=svL!2yBP!Ro`J(jkOYs>|yZR8!!i0WhU5m*Gu|2z|#i#EEM&-0e`nE=@RzeEP zR%p*14^!bJy#IdO`a|L1-rG_6WRR32eQ+;|^;f}!G|2B?ZKn5R zYJHT{^K?exgM)f4Fx{i%q9%8c*~Ls}JeXP&Mqb85h_beIop$OI>=5+xDZLP@KEDplJKZ#*97D_t%u-d@GfnC?u*58wwaR9)teMYu_ zEh!jS(g#N#m_|0{PaKVg`mYe{OmWpkjRxX|Qpgd5O`p;O_NTub=%1-lF5zf01hs?m zryVP zWyT{}J6_OTA*_o7_1#ieyX`UtrYkcvHt($IZ6fQk+47!z*_UuL6y?C3eOX?byc)Tu zY9R)B{Dm&4XydfCIC;FZh}pu#ax-km`Rb^$X9SanrSvE%rCJ&qBe4{3F98Z?Xxzo4 z7+X=d)}-3{)n|i9KRUc<>hUaWHL=&S2WDy*@s6}~88%?}^_X;|U&8!S8QlAKnW~sE z38eatv&;x{uWI$3P}-lp>q;ySuBZy)npatp(RMx);i~aC8}byNEv2W4Kx5JK9Y9P= z6DQA+j>p|4S~lfHwg^Y23l;f@C8}&0s_WZ05QO@`l8pv zCuTu2k+VD{1|NNhIqpvVRnpZ|(ukYYT6bLT&pZtb!WDq1siJCE`ARQesE&6rab2>x zar}ss!CPdDA8tz0)Hci$v}~UGu=b9ly_Sw=#OcyKQUy{U%Kpz12XA3;IXO_i2H*Us z1WVgjM$;k9d0=>TCMazTCNKrb90LsAPKoUhv@uJq4$YZ7vE^j3#+Y_2e=bkZGc3w~ z@>Z8z5IE+$!xR2Wcjz}zM|6WM^yO1EjCG$fL6q=L%-+WxO&DyYt1pC5hQ`LmKjU3t zyl0V&BIm3gs5Tu-fpMK-5q!U@NDHZEi!gj(G)%Gt|vK+SZM!+`{bx*-7-j~dld?Siowx`^m;|N2rP-zR+uEQY(1`RI39 z|6EvvAP9&MWD)zgH``HAHIuKbxq|by^W@T3K)Wq>z#~XMx#@=D@^(a6>CxY{A%QeTOnV~Za+M$3;!KhW2J~7* z{lkd6lmN=IYmAVjxAVh#teVK)^JP24ASG{qQ=`)7j3{g@Af&dZa9Y9pQx%;%_l78= zkICtd-Mumta{OQ-TjL&9jil$p-Nn4_Cj39)5Z0j@3~IwxnRCG1aS{}a;tCRXERJp# z%1@YbdS{ic95jMusUdpquZ7YnSW!M3@(=H8KB|jE<0c(tfR%G~MI)BS1V#Wc2>~ zj$&mxGb0?96kU%Toj!eBaL!?1ls2y_~-s``lb~?7W1ML+Low%oY6p4umD8xJqrtB+b)G=S+af6(m0QR-SMpMR=nlk|V0E_&QA+VPN6&8HahCUqyk4 z2m;sWV9L(TD18^q4vIFW8UL_9ZxXCa*E#FsSv9)5a+6)f46OH;29~DNW$!Ya((foC z8I%}c|L#OK6Qir+b-T;*JxRCs@AH3@>FHI12XKG1adKY3NyWM9FzPn#^TU=!c*n!B z8oy;|tnu0f(-{AUDMd7f@uh91;$WOd-5|BIuzd?s35a2J8*AgViX8$XrpueQ9eiAQ zW!~vK$v(U!IsPlRrsA0v?N*!6SK7kFQnxP!!J@Z~n-zQp!v#~6gV&M(q6Hly%4=Y{ zTnsL{4|1&^I0xN@jKDS7q3P9HrB+)`iuF&>(qy#|0;C_Mt^OoUaqKPo4HJ!4Y3N`w zj~>8&Y}oJ>QlXRZ$DC}ANJo)Nk^||ILP@~-KMvd9ClJQZy9XIXT}Dvjd%nF+fpTri zz_JkJdy|%MUld#PaHHkU`TP1H?Rq=Wmb-H;0P2JTDwA4mBA31K*0)UGANdNMU=nSL zG#+Q!N~6A&ZLG21PIDXK-NQ(F_vCae4rf0GXQP4?y_i{^vJi%%GlEpuXtu^ubL)GZ zt)c0+3`pAy8ITDQtKBTPA3R1U-r@19*Jnxm1; z#dp^IJ6nay$^<_5nzjxYD+;FO(he0_uRLMrz{V@1lhl4rGgIEepBvf zdR=VVObp$RKbz*JbP32GFw()nICN6M*fevv^DUl@y9>=)Z{EBi2Pojmcb!iN_}r>J z~h1A!zTsF_+WKNl6d(J9B{B}n`d-u`QbOYv~Lis~7gQ)v#fg*ug{-4hZBKD@ml ztO}95uE#%9`2h`%5|Dbvq>!?R)m1=K8^9&Q;o?tWW~)~iTpt6gJmZNW2q2e9Qr>K~ zT@8rra{kAz{v8JesFoB^Q9_~Puue9H<7@V2dh4U{vfl-A%g&~BJcWzHkyiy-D;LwD z>H?r3j>Yh6FOY^8I6sFNtN=n`rQ?pOWGrp0$Msg;W32al3SqC9-vU}3k6It@wX}=@ zA0lGy7+fMp^)>+{8iE^(O28@sh%TRuFJ*tb@IW|TRrQPmfN+Sm)T)(kg}!?{aF3_u z#wic6{9^)+4eWG{qg!vJrY>&Zs!{(Pe}AZO;7 zPnI47>K}>|Li`zp-j>l4lYa zrR21CJoX!*kAkokX9lkmmXP<*Pj!{L9dUK_1g8fYKp}u+ zB5RJYZgwX9C{2Yh$i39WAkSdpc^Og)KMRd+c)IU@9J~$rx5l>FFeKiW5PZ<#R=cxd z2Ck|Q3^~RaTvKH^GY48X96iy>8;n4heUg20rQEk@@uPWi2R32P)J$a)6MmKL|Fj-F zI9{}dExcwh)&Cv?;FT5l$HIbc%MH+P4hpCo5b812FG89r{x*|8Z3p5a1nOs@Ut#@e z+*J3Bi2S!WEY*7w_c0`mR~4-dq>HyC+{IZmTz~nnjBi>O!28={4viH=3tdJ}5AXz3 zmOM2vg*r;TelOR_O_9Ytd&X)j`#z(qN>2wb2Pu0DeU15{MNm88N!4;4@4Af zGlS_5X73!6zRBcDjlrQthJR8@ihe9MIr>?xOt;cYa(mof zxK@}(x3)aSRC{jEQTGu?K?Et6jyS*%Le}pGf}f|diE`_%aa9Stl{emABOx0)pzT~A zh<~hfsB}FsrqQY?<{JP`^crBcfQ*I-R8fTUr6Q0o1q=GXA+1fD5J#K1u}ARMvmp(W zBA};5-oxhg&p6&_5q<<7__G<<_VlO1`~=|1*MN-j-05jZ2#{&aj=2cJ zlp>P9O%TlWoYWFSJ)n0zF^c1H-tU9J=26h^reRY@$ZY?h*(yv>Gc{NJ6bF_LbX5sR z{L2zo&>{3!Y<+DMWfD2;;OfeinJYrO`=1n;XQ(+2od!|t=1KUFNWr`P%*VqjSdMwv z+hG6zEX4{*r+6#SzIPiR99X^vIQjdP^)dn<=FYpWug`WWtrz)efcgi&z`$7@5&d`X zaMu!93hF-NiD05q))3*InsxCUNb>E}O~O2lu^I0lT?erf@7GFm5V3_I6ew~aO4*Xj^KT3_~k zAZAS}J4$#AJ)fo8UIIvjfEDNT9_1OZ{YdY^6rgJ{sOd98>wqdFV!E(*u93{|-aG;* zfY}hs6IOtB#)^Sp8P3(&0;M5^`N!|-p(wxATAR<`T%oY{A7Tnji`y-Cye43=%e^B) zP#0G{@75W@1kbo^o#^-xpBgQ!@Z&D6TNtP4CBEZS!k=Cw+MX73kJu_;wUOD8&6fI_wBF-5XVQD_)Fu>6lf9M;+~UTgOk&G&pHWG*zPjjjPur zorxuB`~aXe;v}EBBgHVC;8{f2k}%rT4L|$KG38?-GNg+KPtfM0$Q=lbloktiESL10 z4QR8?iO!%~Qi_^kM<^30_Sbjf8FlWK9QSmMpD)5}+-|J)ELu|3ORYsWN8;W}EWn7{znaEgAwCE`H z0iSbG*IJ?y!*n4J5@W8b7+>#kU3hyk39Z3tl{nX6H#^5i{8-W?7=!4thJ}@rl%;`) z{1I54^!{A^mt*L0%lQVCN#u3-74;OL*d|>rjaQ=;{ROx3;d6lxO|O6o6#djcY8%XN zpS2>k1(Rt_IJkWy@jAB8_9Z!0btgD?qUuW*C`#dT7p*jsrQ4fP#-ygeqH?-pk&GlO zXkKW%*hkSV7$c95i0G=cSr9axtSJPIobA-+=(q2(8rdKaaAu@7hh8nM6@&nxTV&z0JX*&Hpwhq zM{>unF?J6Nun;=wOFFkY;QEQ|P3r%1<$*Ren*_-2Aj`{5Ss@K((FdyX|ln=BO z+&nL;hpk6?VINH=hzxp?jzt;_kmGjCdIxta@&Fo)1pwRD6rQ}Qa)F{K-*QVn!)uII zG9brMY;D;K!LlN)3*aQ^i=uc2x0V7_uK`tFdRB9FnaO;v$Jw<*Y=B5F7>e9G-*^FT z4c2-m@e#{)EeDTqR!^SVXedfm*QGRbc+|R0nMSXmtlEr6Y$%gQ^ZU14N1Uv>PWPNC&$6nqTi-wN)GRT> z?290c#a0Lopq2U#wRPkGd$&*s7M0BY;8(2KERID}gl2txJ2v=QF?)(mv3RY>ZvXbR z4#|Dfsv$Ue|0naLW8&{tC|!e9{ONhHFwPr-utIxXm15I?A*3q5?gY znRwwSz*3C3+GEERwLU{yfUn*Bl9F{dwRw(q2^~fHD9Tf z8I)6i#trka%D>6+H-^`0Mp z4$ag)%w`iydqySu-Wgr^9mGLhiiq1mf>yPd8UTjl8p~D&aA$tq-2jX=_1c?nRAabh zeGea~z_hrE4k6#Bfrmpz>EdU}R_umhb&#OCDFQsPfF^5MO|aksm;K~UaWeZIT{8PD zJ*E^bMIeV_rU!JY=XxQZ-R&iOeI7j%rQE%6PXj<#iXh`u(sRC#=(*y zjE|>EFE($TJFH-xx&CZPn0y9*{nIjCAhlfGYO$p#mRYPDJmA+q>&vq}CdaQ;?EI9a z^yn|S0(1?hKMz&!bpa6upT)p@9%}n~JziP1mx)wN2D+Ibijk%&?S%!em)mW-z373_ z%IKIOBb%<)Pre`WO~99rAeTy!IF1`GC}H3&ao#*|het;2n&qrs&$qIgJoao@fZahG z_$18%Zv`@~%8v6rO|*QBkbq5Bx?PepDH>2=2aL2woL7?#LD`Zr=9 zL9mPfIWNQQxDN{9S1-BUwiAn*b#ncVkmpDcbEX=4i6gIWG?J!ct=C}CjjSUBl!`fe z0ldNI5=Nk^FKdiWIUm&QesNwyvw^M%BOaDE`BIn&p)Mdr!HPJ7Li#>VtF~jU1hVJI zZJ?I@*3^EF({rP;=G8ZX@$_bQIjQCb3W}YVlUOhLDxI_Vv(S6JWa|Cf+@P&U_P3Ms zR>WgyqUE@q@+rH2s1_h%G#qYzn)w134Bu7iP0=-~S1WbrmgB&|yTxW;BS^X;h2aGY zlhd0gWeRPM`Bx=@;2=hw%Wh>U;y#YC#&I8sVx8s((_=F}cUIi{2$Y`tDkr}cC|gq2 zwYPb(aOZ=OMB1(TRj*_-44S)@n_Zy%>ac@Kp!-rde4FuNXW}YIIy+$OqFLy7-vVff z9B_-o8tNI>6>#vifKHNq;r9&r zDK%4#^e1^&jKnWt<9M+3XteWWmQpCS~9Ndbh*}VMDM)mp@kPeL02G72(A}6xoWm$0~c)_|6{!l^8%S9jiPFmd=uU zO5tZaG=+o z4eDwm*?O(b>h)_(4M$GF= zP6ff~Z8)nb8MZmn8uwBM-&USlyX(H35Ouh=P_D7xRA_$LTkiZ}R1y)*W<4m z$sleBAKm%Dw767Ao`C1vei}3$AW#awpk;SDrPk(aMf3O=l0%3))=pQU^K)7_Qs9+C z{^55?i*a{@+Pw><5~`vpK;1+0SxWCy0a^cH%w2Gh2VxX=d95#I<3_U^I-_3S2#=*& zrXSJsUkUb$=^9s$m{^>jPn;flqbNeiWz5*d16N>?k?VZ%ee8RWR(o;)Wt4lP+Xo)S z2sq8$e1=~`Vdzk$ZYh|BEElIgYrr?3AUHv7ooJ%$p+zwy4~@2i?0+6=XjHpYRlnC& z$dz-~sj=cIo)=x3f%b3T<=P1?mOYU6ny0kXREslx*kN!VpUCVLSSm3c-C55y8#ay_ zBK+DfhJ&7ErjmTTdb8!#mm|&2CX?5%+|lGpm@Rhpxzeyl!5#G}weGjtqJG-7@O2(X z7P)JSy4*T51XJ`MHEj`q|CY=P8y~kK?*|^KrEfXh|5bk(L<~*+d?Qqye#G;{ zFMA|Xbs^!dNt@qM#hNeaG*Y_odq)xpd!OORWK?MV*ubHR=lWrsp<;%euBYozc=DbQ z^QYUimLApSA{8%lJ_XSW=flbcJF`WNW@$tpU&aTgPlF^?KgJkYNgmUKI*O&(4wx^3 zuFQ_d=ri+%KnBAd1~)3q<0o~;v@I^J0C58WF{*yA?G$g~+0@352%tCsMK|D;^@4WN zYx7)O-}oP@Q8eVPcC)x)UmaU|1Yo9Qt8J?=S?xsBOed8P7prz{$S&!m-m?{<-TzC0P*a195a}j#~ z<++~pW@HJ4a{-a2Ektv_;2{v*il1_Ts&q7Vp}|dye~(=w4S!bF4tF4zp80s7x%{T` zyyqz<eOz0tCEMNvpm2;nL>-M(_3Hagc?uBk#ZMHlu? zh^q+7?jo*8y-^mig!?K|9Fok@sSUPGe3Aq2<4Q&hD5N1|!T~?*ZoA-1c$xL=om0fe z9k)*@UO0^P!s6ka5@_XUQWSdDOstk|=E=Q1o-D1<`ww5k4|=44_}{-aPVyTN+3+A3 z_jw4@=JFhRN5y83VpAZI$nUSs?J7zKJvjNA=Q)cPct9hu*Ri zVmwU=q!;9mMSXA>OzyI6={UG);XYhk3wzBylq(gZ%9xWZ(tZ`o9HRgKU1-Putq`FkC$WZ zoU-~mE(r?I@X5jA&13^7%7q50~z5E(s9|5M|-oWDM|rH}3x}^*@{Z|LI+&k#7J*nQg%>+8Y889A_TPnpj2h z<59r~gi{1d5CoP~6kG~=+tc#Tfx}qjfkF|?eCJ{GoB1#H3dl=-lr?u_tYz1slj2_Bw1JD&f6Q)zj#4E2+x@n;!a ze;iWmzT9~1`Cg%vgoJ_D9_5YbACP7V76yHvFG2>TW?*}ZaD6H)n*S$sGAi!B6-9jl z+#VqqAyL2>Ga6EfQ2!)_{?ufEAOME|-QWk;mbN_3U+FPdEUUwWLv5Na&9j|P@j(xpTv)hJ zxF9{6X;bHF@9ih3miIU4Zo=6if+<0;D?wwYr zNaEo*({&8q8F*tII`A910GepD2AhdwVm}3i=R~zz7a*d=0uq=cpjv_FZdNb(h%-(= z>J58a9vi+<`t_^rd}za)OD(NLI$e+MI|04yD+uDaGa)$}#*kw+i9Pz++DS60jvbQ%)e=qAn&CnTkTH@Ce-FLf#D*43+VG~zLn9?p$1}-pH*gLh zEk%)=Vg-gRK5e9H9lDpUDVd=Fw5QFBI@lL!T{zHkn`~azUE?p_@q8z3yCQnwMo)+e zTn1u5BR-U&w{e|Cchsn{i(A2WE+s!cUA9%9#~h%>a-o~b0W)evR1b5>;~dAehL8}B zH+4j9WFcB8)=4^fza(36-VW0VJQiG1Y4H^qkdSyLXI(RQeDuS6*>E=jlP*a~`^?<8skgr3SBW3tR-&Lb z?X^dZwJIJ5;yv=uin`UsH2q#uA+Dpzd&kk2!W;PZ#wzKLHyikP=bcQy4{7B<#qzii zhe;W^cTt?2Pbni$w~!APcLQR*u0} zF1vDoRorb^l{2-FFX4-{#q+(J6_SQ(gn-&|UmJ^xz>4X{2x%ZAT|NVB&#QrOSK0x| zg**MCxQUjc5c^bJ1M-2i1>VQ**qyh*`Qtht1z@-AlRb-s#?N`rsU8>Nz%hlV2kcr$ z{OPLX>{P>#si$4Zq*AtqY)Z&)an;sS zZPnU6ZPc2J_jmEA1vH&FSW4Jt2^c z9K7qr!PLlstsDeio!{A>mNB5hY6CZZXiX|j>Iq`_3XEP|Of>DcuJ2Mdcc*xEOyTm=Nx7C~JpK=*$A1q*_BbTk2-8(&9Xw*!f~I(MziE2mB@9K1)Sg|4(2A z-PBgv4O^9o*dG-oBT>7JGVxkD03Jm?4$Dg_U19Lg?*c%oOIETK>e87_8L<@-;GDJL z$b)gL2BPA2DoXhWDj99b4-eN-#fi40qiHYEfy?rTyNv|yk-!4ZIZff?(MuIui*Rf$ ziTxQZf1jjc)JSI1@2Z=t+<Gq`e{DPx=$UV7qVUe%&YMx!*oeo@!s3?VQKhDwv-kR6l!uxl@6EPCh; zI~jrCYN~^&bgCiu_Suq0nCa(YCX7E~O3(|F^t*7ubL|n4nF1iqlAgMgu{+s*N25yR zyT%YL5-;Q}(^c$Eh?sV+pn*x#?-IRy`caaffbI`N^?Wo`+vtvt`#8c$bgAW0e+spH zhI~pG3o>K)IYE7m_JgC0^x>7Ft2rREiR@@TTMDqKJ89f)JPnU2j8?FVL;4QJ(0|54 z2dpA*Qdw0bn03ME@^q>3?-^Q>Mk=7=kVB?2p3Ci=8bM4lAS)|YQ>OI~ZMYXOfZw_# z^jdoEcWH%jIF4>GY_f`W$VZ6;H|DW%;qrDkw5@nR?PNL{K1~QaIOJJvc<=a)ngbS~ z+cOK((xSfc;6S`IgY;Zk%t5#GkVESYZ6*-;D&W<=el2mxCyOM=5=k$5&uJO`DN@h^ zh$vwUmBo{Qs-8NMwsF#pKShaz50{ZZol=->+wY8p_#W_o(4IF_SJYVgs3FuohAh9q zT_DI5P-rN+TLB*WPu};h{}srAR_yi){NDh@2*KUQBUU819b{fUlb^nV#y6lfK}BntVxj!z7ve+Jmz0M}#iukHWOpB3T&T%R%=Ncv572&k|UKk;_OpBy`FOb)D=>$mcS`!M11^f!6-zRjyB;Wv znZnZva!S4|t})Y)M8@vL-D^;XSR<0lBq~?p4b#$$QiOj&d*tl>n9&K4w4-EM5;Fxe*b&=h4JyVOewJ(c|)6cl*aTaAU`$0X4on(tqD`rd@ zdxW9!f+*b16&IBl=8+Y`JaCANqBx$yvjV=iA`&T`DH0GUb}wLu;uxB>n`~tE=e?Fx z^t`T*WN7plTTfj!*fhRela%$d+Uq~-1>~vSg`tY(82^=@Zz zcS!;yyjLPRTX#}yuFgN`uT}J zPXlG@v%C@-mC?42wpQ)lpD0{i+Kzni6=_vDFq4Sl6)Bf*_Ph&IgEx05Am0mk75kcv zePGTx-bE!Y5%79CXZ7#D*JkST3lj6YP}AiWM_(CQELu0`@-w&&Y(#xzdK-Udj=sgK zkjg`?oui{sFq_pd_`xKyIHf^ovPa-35Q;>jJKcRKQWG(TK2fbum4+Uu^{LPU3YUFj z|xOXPY3Eo);6Rz22IIx+}xu1J!v_(5{O6;Q@HFk_UXWC_uq<- z*Pb~Vtp`U&F(b_fis45L{6Amu{x+E^yvecFYk_8NbU2ZhHZ_;~kcP!iF8c>|zGa}s~ z^58j=GaREBl`BC;GnV(w_tWqk%a~Mzx3n5t_@&)jl#oliJT6%T7*SgJliM^IpgVuz4C#T39kJ@&v^Jmd}g@A7iy&jdVHHZlXMg$p*xHkta-5t zFB_$5sRW$x#kJ=jg7{&@0(tuk*VY@oF!N_Bny|~X)Sb6SB+ZT5Zw5}4jOd#PdDWCA zZtMEMffY68^TGd|mAM||*+IDbckjYh!qE}J8QF2tXtRsA=WK!$D zKMP#X)|_j=GUrm;YozU|uA`E#(gN@8+uDpNTvZQ{x2FthGFQ#9Xv}*|SOyynM(c)I z3Ka1C?3=TFjkVJhWJavEPA0W_8xkZtr#Bz$=j#I+!l(i+E!cK6vQhWE1sU-p_%g*sQaosu8cu zITcyN6=T$&lVUd_o4t`jvZ)Q^0}pcrZ?iXhW9c|3M1!-BzwR*Pm_{E*G3nvfJJP+~ z7}jEn&b=kQxkzW_=v;*Y9Uc$Jobh!xdp4Z}p1TH$&iyc@BNFp|Fw%2riR8`1Cdiap zc3fV0tx+<#8HjeH@K_lgG091z!(HaVwG6LuG-*X}d+zX3BaZ(0XG4Tn7QEWrj>V+S z$^s%=AmEE|XiUd)fiF}UE*u#~zH&MyxkivaGN?Z#D$B!-xomH7n%BKDUamYhR!y616m%`2f7mRf3YKJZnu8?D!GSJ;d#Nzx6aY%tnV9`-Kwj*S-|`l=6f zpHVYqOz}Bf7AqI3%P$bmDM-ckXKiHlmd^K_IQ59JNZBYXxd`Nx7A`Tmu3a`s2KtW zw6!HeT4>w&Y_YVs5sl6yy>e`moO4hfsx8+mq9xw0B_rgii=?n}9i;GyRXO7N< zv$De^_0$6`<$OUv!HoZD>ceNh`3AaZ-D?Higj2uWThFpJMHXmz4%+#~jf`7Po0hpI zJ83)YA<9p>r3~F>c%zG}545%M0gH|^0P zs`D!qz5PXZ(6jUh-9owxO!FHA4&v|YS3MVSQTYjPBBZIxeje}eG2Es&b3kl`SYC0+N!OkWOi- z4N6F3z@}S8x;r)kN=b=GBPyLDEuA8vAl=>FeHV(J1LvGOzWeWv@%d{H-_3g0nrp^0 zpE>th_@Cxc%b}yskAH;O8qR!^mr#Dbox3b_BZ!-xCG{R%*sMrad$&&O@n!@YdY^b@ z?E{9eyDh|Z2BQZEX+%iP+s~GsM?_ZJL#|a!w#4c=*~>|v8QIFe!4on(M#xMLHfo~x zE?YdEq+R)}_KAv}8jsw91Qw5jQK^xwBr<#$4NDE3ll%~RSDIr)`tGA8Aq_U4vcbE< z&h*_Yc*N33^p)(}8fXNDZoM&jXuPER|R20m_?Ah2AC>-1gG#;`$ z3;afdX&=4lBf{~T@bJ*{28ubqxaK!r!75Zms(Mdh-J63xmo#NshmP{;+ST}M(ChTX zn_`HP-`e1ZY2x7fyJ9xPQv$8~4B}L;@L%{M8TyxQ*-{>%F+wVib8olCm8La3fV)1Y zs{b<3d-0?-X^%6Mk0wM}r#Z4$q3KoYG?yK{Wz8!iktw>21?Z01^0)FR!To0aYuEIg z{IR>e%BpdO}uX2ICAx-1x!Hm@|vER-CPPmcBkLW zC!u4~Zt174iAS*2!@*ZWd+T}j!*_evwkgN24Ig@4$e?e3B$w&DKJSGevXy37;nO~q zNgK+~^-klV|0Y-D{kwI_A13p!xAC!j3TO&VA4YYZE~7V$e)SEbBwED`Lqnn2ljuSU zwY#_A(@_dqU$GzdxoSNXx5|c?*JcO_$OWg>vjFjnZ%@s0D{Tay3DZO0KuZrl-M9hR`0S2)w&TpHP8DaYzBV zQG4-&hKJszdkOcngsxiDZ1e3Y;1b{-mPc5*VI;Sq-tbVm<%|;j_Ddcqs1aYQ7Z6y9z0U%euhOdS1Nv9X+ zBWKCM;rT|Ib@b$u+v5JbGP$8;ouuT@VTD4WDra$3EgBVNkvhMr_RaE@c9nY{Whorr zE#vLl_VSqC&E4oW-BSZ~+f9w5i4O5S($~@_#1{8c%=XPJt@R*z^Y+Gq7a8|lJ^B;! zUW_Z1O{w22nqg{cA6F<`oJZfKn?a2cbW{prP-zW-h?A9n)iqKUZP{;nxc4ytz$??PXoqb$sXIk=|mM~~{PprE zo1J>Y4!XJVv@%aqyYos~gJ3bYjRV4h1mqrIWU_xrdxehwYOFe(Ywn?B4r-~>R#bq| zO;MljBgIEo4|^$@;@I_*y@lKtyEm!YkS3K8pJ=nY!dXO?zwLhI$!Bm#7ts>cem0h% zkr%qB=B;eFu|MVAzi4}VbVaGb_h!NZz3SR`id$tC`HGr6k|7y;2kvF=p`zi#VHB5I z?{{5uw)Oa~T4OTYf1Du*)sK=7W{W$LpB`j?oPKcB!Wg+Sf#>+HN1zXaOeoFEn3T=- zV2KM*aalo{hmi+OR~+B%2&@^l8I5JRs!YC_B7u~?UJf&ru{WOlq0jas)LwbB6P@uL z@A3~aHo9Ye{TK;8`-MnyG99x*iY|?|y2Xm65Xy(c5ryf2;h+lMm*=z==|9`%Q)WrN z;{{Sx;i^^%SGj}M$Lf!#0>Y>VE0X2?;(PS=m?qYj86Gs|dwZA9 zj49-&6(rl`ysEta*-}3~^eS0eZ#WD5jo4H=#kj*Yq1k?|o2&B?3*DIMR|p?+eo;Up zQs?*a9?aXuUI!gCn&CGy!rZvc06>=_z@Vbf1{`hnx>?^wwn^VXwy;n1eH#=@nvra$ zv0Cx#H#a0RW1gWXY?00``gvnD2xZ2Jsf6@ecVQ6N zWAY^~Q`9})c!~bv@j}wL+&<1`VD~{ZOxiH@QnAZ!$txyfXE6+v^}~Iv$$*cnQJnU% zKMyO+n%fAUu}Edv`p!A^x>=S zqHjHU>Zoom?oNBbik}-RvXb1)aaTullE0s}#+}$&EUmv$zK?@ca|=lsdFl<$?$_zp zJWWD14wHBCklIr}|$(o)?hfeug%VOH2RAYk3xEUHAp`9orDBQ(;NZex5_) zL`Fw~-_{Uv*38$ve>BAya=U=}69aP&CgXrintcI7pJLKh*h8AKkB=I)m5S9;%1yOP zE`L#Lr6^C)1dZwW)rLV+c##l?-#VkhhJlMD|9E+R*p69AYJTm z$g7kk_Z*3>=g^ZP^5nTyke#LN;P;%OdT9)u$S`AhYA>K<lAiPfZ!TRZBo`?u|-sIKL1x(^e`G1Nx$0s><)V?Wl^vgLc>=`j@^y@CnT$D=# zD$TZ4V~xy8M#CC$4T#$pq(?qC9YU<6Q4+jMFBwELup1k!AI;>h_mN$+UVN6TU>t$n z%m81~!O(@*>we#9SR?CesoilQnFUzMD>Cr092f@;ZHyQF5G+b<6lFBKO_Q&? z%(=U)9oqa3%?c^Y64svP9=e1uG<_V~Kv=6Gd7?ZSE@qo4A}x^3I;L6@KNe@hfP_ym zgx_bo8900wjkzK$gPU}~VtZ+Ru%gd(q9MI_EAf`g6^D;M~Est&T5|+}_(;tCJ~! zJ%=||eW=}=8ydfF%zbrwZaaAJ7KD&h5Itt6Y6nH$_ASVhyP7zKC_4J{w8~v>lN%qr ze8qC?!wd)K3Tnk6UqxIzj_Znbt)EcGGDKS1+}qq=yeMjdDpm4{M?`O2EQE@Oi5z(( zK|ax*^DXt^hUo!4M|AoJ;}dw<*(4CSHs2m>dchK~W0Nwj}A z+Yoyw>Ck92Ru!(H3M3u%b^u)~Ut5x$z6WSjO}AgCX7Ufk^qbqjXM|0qr4~2_!tt=F zgM@RBl#~e`@!QXMe(pB$ly$Z)fa=f>=tPy7?F;EorrPo5>(=WM~2PKssGqlsHAZZ-$ zXK_!jZ*V?t-hZ=a@@Btsya*hLBtEeA$k+{5$?ktF8Mz?VjIkR}XxeV%yhYl*`~pq4 z2=2nWsle}k6m>N;awEi-+D?YuV7m34lVq^&^1=HsY%fd^1N&v+ES8(t8n_4!%&-2T zO%IWq!d@UNd|ADi5_8Xk$kPt0_=3pw*;km5;f>I#komiBK|1z=BuBkYsFLdY&g#nx z{;w*jJjC(hl&d~GX|Ij24Tc9?5QVfL8Eh{Le7NjGCdf_!&6!BOSDYiv6UR3XLQauA zEa3@f997L=V}=I%N0KFm#_f&!n>IIPhgN@F?-DGwHf&GYsZYEjzze(LAG9|2C7%-f z0<4{tIfo!}tzxoIEG1yCS+qHxh1%U<87H4YRaFb?3gk_H4@$CoML|go>K*6ZH93BZ zN}g@?f|U1})+=Sb8Ad3;^?z=t^PUqJM!n#?HgO}fGVbkwbO1{x4ji{M6t_M9OQVAI3msHTc;W_^_)=Ol^$4UlLC0`S$M=Z2wkxF?b8a9|8H}3Vi&l3?#)reVbQx{^zNYZ+z zPexo}Y^2o?b=$2auoqjVO++UqpmCHDV3p3p%V9YA^?nLILobG*QWb$|7L);>(3~c5 zt1R`oqkhnZDTaX{>>8BN3O%j;fwFZeoX4hvg9Eu!x0{I$h7fD-URxR8oKm_u>GbqP za(wZdBNL*xe(8k*|Jtyd`b^@~MU)yaH>G|i zs^F=Vkim&0HF(vHnitUHAAovYeYZ$RA?T9QfLvk3yoF7K`)E~R`#_eZ{^(Vl(A?Le z?f711Xx7=@t2)jZ>eFH@g&Ybe#?)07KLH**A#Q1**--MUj(1k1aL@WShJRr8&0O+C-!>le$(6g8-(O zW~#xfjAB|grX1;W!3W@@dFmRfi|bd94&q&Y+`pM#8UG?$3BCx0hywjKnCp34qWnpe z1LA#$1fPpQ8K#)nqFl;9l4_F~RcGTifw)<}15N@$J%Zs7DedFnO@6oly^vm1bL=*o zaHnR8m_h`7Xm8f*h7%pF%d)PqQnPL?zNgDxFI6G6*EOfjIrohvuH${P;v-g{P`&!* z&b5q>5B3dbmGh%tEZ*I>?@*q}bj`(WoWj&Md>1wSFum^;0u_ca@7q|r<35&IH9W7G znnNPLZ`Zl7%0tD}Hg738QkbnQ9Z6f4kAiG>!Dt{o>tjh#`XFm_StUW@iz<)G2sU}Q zdoRsI-mdFB5B!>(-IU~5@CJA4Cf||%7_sBlS3#%C!8pcyC%*=xQKxK(je4Cbys@)k zS;of4fx{Y6xV)M6bLwK`~XPBEm&h&!>7r?@4}DebvW~bJu!Jt+QU_-UnCyS@zG~V3UTB1b~b zCdWwnGPQLTCf}E!5`t*pHwmKMv?*j_U75plZ>5!x(qD8mX*(Tx20B$?-9W7B^E6MC z-df2tx<%%;`vS4rS}HOdE3xwGI))TI$;xfVNGGeuJB}sQoTKYE`WlFv@B~v?KX@{Z z8EuWnioAL_C&@$L&=ZMNHJvk}QK4Ir^{7s})L;*bX){d1B=h+j$c|_r#Te?=^|dFZ zoGPX_TSU-wx(OE!5XqH2Ja|iZ@b~(y^7}_@nHgejxtv#CJyL{1u_>nnJk9J}4leF% z*m75oHr;&kEJ}pkp6vnqbDe%E)H$WFA6m$!Di1|3zRjq-KNBRPN;58Ur24oj=5yLB z_czu>S9#My-aVTASaDc>`*OA`I0}4;Q23(iE35HET~3<|3MLEz9v@{oA*=C{3Lh~i z$2!vsH>M~0Hq}eAjOPXzXY}qYs;{pLvZGd7Rb_muJ9r-IxYFP8;bHXmt%NKL_aT}d z#HFUk@B&d)r0sG-?ISh!LP@T^;-{CfU3lHI%Q-P4ZyFZISzAvZCQsA|nsi&nC?`@9 zTzh4Vdg=0f!YH-LYg-9N`>IDumyyx$=syqPeLza+cZ^e+=&muJZBr>jS~GcZm0oAp z!s%Ewa>zZ))sn}xQqVNS0~!m5Q!dqwRs?c z7I{i_!sTlVf>tuI$zNYfn6IN2zB=BFOSRWxPpR45WC}g(G2^Y>EKKG+(VAi?mJ!OsYF<=QWrS165gQR zCD2n*)*-}NXXP!-8thuf5@?4Fw2-OPRK_&0QtY^a)AlrOn`u7WOf7zT@Mvp;lTbe% zQ-#b>Ee1y_!R)}j;?8)6Di2=3NgFq<&U2Kyiv+7a)zzJ_6>1`+OMw)L4vbeO5pQ!W z9@axQ zamq_AKupy0mQ{+TWL7GLpyEeI>X7_pInCUV2+-1#a;pnXCDp=k)oyFxVFQL)s}4s5 zx3O9#ALnDly_KHTbtlos@(mp2>YN5rEDZ`87K$nGb(H<$>?!MIhiSsjSEp_uJ*oHQ_M8*4Op1(Njzl#`w))N;^MvMonyea~nc+9)==Sri3yR=Vf;o?1 z*sU^jrlS6V#*u3V!TxkVwm+%OI8xU;;7I)-m8nU&xM*1UI^$`~6dYeMO=qA!3lt7N zd{bud`B+U)(d%rmD5)%*)-58mWA?ybB3(nHZTg9A*8?Im#iD6K1&!QNXe4W?pbf9R zhM~k~440{Z-3dkogP(D`Xzp1>((Y5xYK2weReR}S*L4fzD>v@kA$xA=o0d+ zl^0Wd!n_e=BGOJ(kC&L{D#JEXq`)*k$iGHohCF`tv6%!B+WcZ%kJWx6Wxp+Gv$PW& zr&}d?VVJ4M7J3u$0b)0^BB5CL@cT%bpzP!z8nb{#r|yE?SXNBwMq|DImPX)u)Aa`7 zq0eI`nA2Hu)=mbC(d%nH_Q*P$9ud4_W=lnB7yYstUulN8PU-FCji$xR`ny7G(0pC% zO%NwN9iBcOy@Dc7F4ZCaeniF24J0-A&ZMbs@<}5^Wd-U1pMH3TYMx5LGT)dsnZEho z`y)JG12#$2*_faGq=n=KKjitnxjVo37K0aJ;1U;0s6)WK?V@%;VRG6lqvhBBPPz z-~Q|58KN43PT-x&Mf3Z6r+<)kO))1$T8;F~7*JS3j)$kXE+Zz|UjzRfB@G#mIW3gn z`MH+@3QkAqjr8sFqc9?&_@}+EqdfOgbPW3cT~i;B9VzG^Dp$o_#_b8Mgjzoh&MowM zZ)u8rDf0fa0L^HWo8MT_uG~yEbDd^UCr+8=+qCWez$#Hz=0FwS#zpreR-Vk_8b#?V@%2N{mXM0k05YbnLs>ekbgr&AwvWFO zf2@M#Raj=qZu@X|V113>@|lOr(1kIhOq6?#)7wXLWTOSzLpZml-Nnm}6rPZ`3u}$_OnaY_M8n>B{X^YgWPfvP(>wnp zRx$wz0?tNqcp-8XB8MH^CI=U{ZbX@|W*xN$KQp(+RsK$Dg|r(Z^J%%zQ+&T`AmFTW z!q$L>e_;y&%~F3?H^deiJ^Yh-OUs+HI!nW*)6p^!(Rkt9DEr77y5GyWdG*iga`0zh z5Nk399&)%jUoAV7KMk&jv@L2KC$(q^^O}nH3sLM2ENz<6{Dp;xmxVu(t6{-%+tfgteP?EHY+sV+IQ~F$g=&j7+>$ty{@^emz36y~wH2?Z_m4BCcf=IB4&|Gd=DDx#s#_~;zJsbGx8X^lkJ z3Vi0i!l_5HXZJajP%%f!&G*VV*ZfHV4DD)cR)2PiP)8(tw7dWI^-6q#MRjXV+P|wa z666bTo-`GAF7g#ftk~reYkO6wjmy+UjHg{ zFvYsePv?!A@g%6Asu4koJv3ihpOaekGA(N3G;KyA{{&=>KjO)-`G2Su9&@NR)x~pT zFXAfxyWUo6iv8=?ExiA4zJf=tlC|Le0Zr5h_> z6x?n$H#ZxI+`oVS8FBsVF-EwFugp0Iq$q-L-QUtAw_%3=cxrrA?qmmc|QiyD>Ib0^Fnqf3e36^v3CHmbRL}{+F0}8_&9YgU|A3EkuoxJ%y^y$t>C|t9#{KMB!3QXv8OAz+>p@D6Q5j^JzG1=LzDF zRDAG^37!G|6ovvRf2M-;5jz~Mak?o5B@G4>R`FoIV+efq&8G-P5dRJ(<%^|q-3rhN z=D7vWIRQ+(6qyh`p)$`pC(NL85$qyL`SIa$x0!OqgHjw4_PG~$> z_`z-J_#MKAAV9Cpy%OL-@wal_JSRNV4Ja7vV$}Wf*whMaebZ*Az}Xo=zdZwPXTxI( z@7(?-XdtP;U(Ki6pa1{MAWD&cixJZi0M2{pWt{bW+~Bs<%onRBl3==$ZN;fT*guqO z9SW$S@rCbHmaXxb=gQn96wYokF$0)pqaioL+3^+4!SGJm@!!t{K?!sarl})3-=AF; ztn4IAFK==>ogLg?<^v7x4>*0r(W zl9iS9`ts!qJ2yAJ&-3TF*Nb(r>1na;7hg7nP)qv7Cg3ByfcUHZ^`CU(uQ-mE2o7aL zdbniudWH*Xp!kO(Y=`9$larI|0sPmv7Ux!?~txe+gBf-i(FD(rt3nVr;^H zbYfsO;}Dz_SKZtkkj{cWYs5v56!8s9T5I4YK#AAW_7(~~+DHxwI)|aa#G#w>IOfUiR_GO@D=`0EhW~cAr*Gv z8*tlS6xy7m`L%rs{19PtuE#7bG|0Qm7=EZAgHdYtskBAbGu+8-Aph!zZ(qJWIEsrk z5WOgA8GE0{m1)U&^#>tZ<=ar*m{( zf7I606f-0OWvm-EHWir*UmbaS*w3n5`*QqJOm241;{}0w3v4MRsFql~wnY5cPJnNv zGV;W_@~2OkYGA+8>gt&8!-OMJ`!mY%nWOUK9^KD{4M6FKCaK*pX|z(_-+#%W z$9(yhodHl6&kNv-TwJb;+1lKeyBRvcA#bO?4D#3qlifksSRDRp+KbHwV-a_1LC1~a z1v=sKF3U2z+_oNjLA?y34$)s`^GOoCeJjJ3n#(rJ8WYyM3CfY@ji@Ms_U5@Xz5q3->-*U*j?>a2GgvL9_^|@S?zI|!2aESD1 zX_?ihE?I7>uJ!etf{qsihSmH)$?tZK z0YsejcGyzlBaI={lt+B1T%s^xUS0fX?#uDKK!m38fi7mwmo|9ZQT&GnVmhr5ySuyC z%M-betppc{O7m?3iKy%SIP^_^i_`^(G^(QBH0rI3S;y0D^DH3JydU@dkqHP0KK3pR z=H<<2h&T!!4lt`8ZZQTQ zN5{Kg>giGV-i9OIUw5<)cU%bM5Tg5*4vV|*_|kMC`AHmsDdB#b{$wt1{f3|`f~1`y z5$Bqef{u|91IdpiO?}PF+b;`;uaWPLO|!XU(j4gqW}6E775Gn2=C1XS?61ZAisMgS z!;Z||j;`yBFZj8=r0-+hif?GrHxHQQM`)p}#WY!)=!=N2e|l2d<9;$-j-=^X07c(d zNJzX%fF-YY9pUM}Qz4{W8?6^f!fG9e5Gk8lPF!3A^EI}c!92Ah9LR3P?(Sm`voOXz z{=_Gxg39Ej>ay85Gvd&;RKbRlO(iY`|AMbzF{O1IYJHIMYoS|vM4E}9ysgnF!E@6} z-;lZ)JY~XQ#{Q+o?AVBd;e!KC82+v!zTS4>;T5Wr2UJN!i`b3UjBUA$k79wORB-MG9H9d+(|zBZ1&4^tb^a=p zDVDdSb!Yx~G^ zQwW=z;H?V&im2~TBC1Vyed9HPH*elFO4!?3ewe4+qn`scW(Tl(_%mNvT# z_0W$wHUY>z*?HIA1f5_uD=_2+Gdn+jWZ=?9q_w6bzx9m%sJrm0Z1;B7ww@qeT>s*U zKuhyiiBBB{=`TrF)<^Ds&Q+>i{}uhimU{4*+cin3W#BqbpE6#-#PsIG_&R#fG_Mk9 zGhJ&sTF_r#9pq-UmbRU>S*?Arll{?pte7O|e`-1)_SI}`*zkFQg8_(Xa2h3Q0w+EoCgq6Jt!*CG7{$q#xhLtpdem zXr?gb=n?}o{&K4Ja1T1crltTjMNZ|>;eH-YOpE|oYq`}?+V_CKa_WNyk)7C;w&OZN zvCmFpYLYH&1-_=^{3Jm=_5nCSf>ZT8ai=Jt1+NkGx;ws$obNAC{W4vUxwADbU}Ln{ z1ra}wlPKv>|dG+a@QVjA1sZx`B=-uTAT*c^gai0Ff_`TCjQtc zqrYgDXV2j^fEh!7D4bhp#mPd|IjQAkM-+}G6spI@^orKYmak%wJI$y0o81o3-sj`q zc6k%MAHA?RJG<>&n!J2PpgyZSjY{PBOY-9y5Wh&l?Ya2E`@L;bZ2NN1>qy5J*&;u% z2MdElP8d3u$OXKf^t;a03m_a__-0IeuPQMK<8jX{Dl;3~^9FKf=8UYYN8`r!klGy3*9Ir{kcxcaP^IwTx*hr%J89phdI05Yg*Z{m=_runwq z^##^(hmf{Px3`9>N}S`p6I!iUH8^wiHZyZ=I^~!OU&*48l8y4}K#$}C69{wQsJpae zvY%@EBbaU(z)dUX=?Z9joF%pWMylhrX^i@CL8gn!>O0|R{H`U899 zwLmW`U!kyZ-Q~Dg-R-R0{8EpBk9M84fxYVK>E=G+tt6uhW76QnzFA*d15Sp&y2O5un#TU0qmM=(`kc-5V?HhkasPv$L}cT_4IJ z_wL9>;~~3Di+Dd|_i+Qr*6r?GG9%auK+qQIj!{=>W_phyBj$fk8=eSKY5 zSC^8Rg~eMwIn1>6dNTHQG7%XWCN3_nu9ekISvfiH(a}-jmR3bHuMzi=FP^kuSlY}- zrBh?;5~W?Gvw7ida@wPrEz3Tc+}%+Z5Sgg8kXlXq!SKV0>0MZi%#PeIOt5hqU;;P# zIcj{65Hv}@=ePQA}(UWyTzUdL6|6bqe7%Q*A7_$F- zAK;bD?p}HE=S{ypSVUm+{|45-|AvNc1l@n)b*;zQq~rn;3I;zcK@U(zDpy!FQh~r8 zXvL~9L*xH3RXRNRDyp}2?B}zu5f(5;uNTS^|#MqgNb zk#K&`_H-A}39LL|bs%@kBGM?j2XdR#&$qJSATd5aRR#JOPjNASUHbFtp$<6Un}~Dr zk&*|bX7LRU=-EUJ1}LM6b6HLPFSY-6E!?rLCTrFnALcg0P9c0K_nZVC= z34C~hPQZ}qlMCbk6+NG`y<{g~9cu$_o6mOc0TD4VdPhfx?(xx~u8Yg(d48?GOvge9 z7{~mqLl9UL3n8D~0vz13=_c7aHA%+N(;<(2~`NfR)!~)ZF4VD`pVJnMmS5`d{+H)+5tA)dE z&TN|ee`-<*hCm5e)Ga!00DrNGJQj{0B(w!r&iEPi;vGhYOho+VWAl2QErv-7X+#lmd{!oB7%0fgB=XT zD}sLJbuV&B|I*|vx&$3dA+qHYN!);}rbGW9axtJlBWi&0wqm)S4b}lTr@XwpUXyW< z&BY4;$-Q1{FB-6k943pP2f3`SkCK^J7`o;uzSjg9<_mi)Uk-5SvW+-J++V)25yhk= z@~3l0yhhjf?7$(oH}j6t?By;=eDQIbdPF@FQ~7#Xa`v~~=H#p1mme>cj^!sVjrs@ETjgW;`&V><%tLcGRkZfkp7=LZy31)r%Yp_jwX_(iTB zf(GPfe_X^2Enp$!>Wl%)2`VtYMI}pj!4c+^0_GsxYPKEExb9c)n7)e`_7562CJ6#> zcXZ4U+^R1Zq+>@#a*x0KS5kFV3?_^vCKUK)D@W=yCSAmZtEn~VEe~;b*Z8@R7h%L}q4)050=C+gXs`GezCQT#WF$xr0$4T)`4k2ZQ4s8#Gc<>Uts z=m8__ZLc?o_n#zLySr|Gvr&6PLqqp92e69hWrFF$tE(^K{hl>hX|3NN`)AS}TiOJwAc@So;Yl*@9a% zn-u-=Ze~`wYVX8J0@eh<_!H0+Nx-!Gn8Oh~;wRj<>X)fzeVdI;0gnuup%jyQKxlS` z2ox#{G9a|XtyiF+oCn`TF0tL1j!k!Hf zuyP_RfBg9A>VPY%*$waJH7;M=)(;?Jst?E|`!hUp3ECA+HGz_{QSKAZ{v@cfLqUX0 zKK2&=mfSLCh1<%KvHXGiK{kcPdfBG=L7w~C>ZU@r!$Cz*EIQq^{Bv;bsQ~y9>5SjD z;GbzggE5M#sZMu?pr^v!oo62|#kb$I+fJi5%poDT_T~dh$DgVhEc1lqo1f&|xrJV< z`Eq>Jt=(3m>`~C}DN&|7UHfEbBP8gNcJIt|z&MKQu1|a5QR9+tQ}E zPCw*G*gRVCG8z!I7eS3;0Sllf<>38S!PxyDI4!{HHdLSl*Z_rx}V@>8e^Zt04a{Y{^50!>6TVDH_H-TzmC>cv0~-0Hrx9x$n>Qi#UC!| zk7@PD!m9K*DNj5f@E8D#kFJc?MEDb|GLiQ8c2LEU>^J)3=Pnb~oH9PZD0MiIoZ%+4 z6Rsz5KvBohk)IU&aG05u^-*4sJyx;(Fqv*cPo_85Sf-3ZjLYiUrRY^-=xP&sou8Ns z@t?S#0nnDz#gok|N`jT+JRZ_%n{enUef+qm%$PYKaOk7mjr#uyd`3n!5eG|PQtP`m z^9X_T=}0^t30&CIe^;s{R3&QjadbVf!^)~W)^k>z!sm6)g)4;Og=s-BQQ z)*MM3xJ5R7qJoB3PU2F60RnEpXEUQ%bbPe`Po9?9X+YNcA2h8DdF0ZcpcV!CBEC;_ za`T?-pc0e-x>PcswLrJr<-Xc@fQ!%o?yx^}r zJ0t+evqF4R@*K1>Q3q1!_qqkm;YRGl9v?U#s|(yWhRg!J+UTl%;RI?QW&Qk|LLe#) zMG+}21NdiOS`weCqqL3B<#w_Ue{=%+4F>$gCDt^CKfCqwA)*A3K0jPh0^|QU!k-_w z6akzfE=o!I<7j^2ra4vsL`$+0R{wHj? zQx!mPY{!ib`};~yrgQVej+3&=|7_i_FCgMT!;6!i^)+aR^Lv+0ItvepTWU)02aVlJG%y$83ScD)>2Cbj-*42 z;$43f=--Hn=rRIX$EWV(=I;#fSE=ddXEz*{KnHd_t|#W)4ubRwK)!#K&A^TKbUbut z6$A-lh+b5kD68pucE^z*LTCfuI#j_{B|JtHeYF$>cNMi;Q^?Z<`vDU)yb++E{?9BG zS6M|R&rCu>qIzcL3821E!@|OJPgo`_EOTzJE#ym#z>HzLD9d?(3+8+hSaLrn<-6W> z#$N)>5jqd1?FcXkS07tia)2u)eo|E+o6Z3j=CTV54{egNowi^cf_<5(NG1QJ4G3fu zaNRV)O9~M;M+0ZthMFNEff~T8>Y8l4W(SPq)(~I|bw8|2@Rb%_laJ>oY-MJC?ClT# z%x5tI<8xRUnG_a0wW}sjzNT+eZu_MkFbHHd&F`IL&?6Pu+R=sRA(Ev*d&wSve!9O8 zx~yBg5Gftbr*>JnxQsTfqJ>2#Urr?78rzCazG_Uv$;p{jFq1Yd{&N$*iGZr!Z2X6~ zQ?;!{)^eKtuu_YwV4%I)!_Pr1e3Uzzf&Kj}dt14c@WIG)>(POGj~AZ?gjnpXj9Tn3 z7H+qPTc7?h1Sl&?FxP2JoTJ0e&Tv@BZTP5H7rX3gzf*g0`_aCV$z$4o!_NW6t!+f}(_39Ef08#*N9kjS2Sy zTpLbk{8MBBa|c~5?L23xV+Xk`s_X7{%5SZ8xbMAN zX(SY(7+T#@@8ZP}@2dkdao7$fTL1R;w#vpR+HXZfiZ(NAYwJDTc(I?F9wfZ?2t4)5(F3Yn_5(kkAWaxlGx34n>l)rl1(W?CsbE)6>=yQszAdytr7(X5M zTd7C3*M`}&>@Q1(a-7sBGT@**age4be*N~~KY;WhP{5fJJ;A#MP&6fN;8QASyzxgx z7UHSuYB8REP}8%E-IQGJC#*LoDLc?|A=U18z%wOmJE7!xw*|dk;jacJF6#9I&R?K> z>eM0%Kz%va^|sJy~>W2vsNG=GJNW_bew^f z_ODy>{1R|*a3#2_{p0t5fC0F}17Ix}$y0Gy*4FM}v7ADOXwousl zc6s^Bp5WHB2>S6X*0FJs{<6VN`?4G5z*g&$He2u31shnx9e|u=YCCNwL3p)VGk`F{ zY4Y$ciTzSu6P1yqXfyQm^mJnpbDwDQ@+}q#g-lJk)#!@N@RiN%L%W^J6i1c#y2sy} zvklvh#~R%6g*PMJ$&O}3+#MJF{I@l~KROH}Vj|}#IL$?7;!og1+dTzjbhMtyBJ3~; zZk*sYZq*b5OzYpszGx~#hWQP>v)=8-Cmd;CG}5UyZhG9GEM&aEnuJr zu37igGd==C?X8~O%GL>4>La>-s>b37UtiyafINSuZoze#pab2Vrscy&Z-p4ggb6B+ zC*5(!`2QN~^l!L9RLOKSI%NiF{$6r$G@I>QnM-FHRT24=J-rU-~s($?(HZk_Z&!iP003Rof*o%7LU*loVk zW`cTW@&(v2vPns=h>Q>pJ&jJpxR@+)=N*`Ex4~OAu4a&#vI`0Q%pBxnTsRK)s!Frp z97Y~*TfO1m=t_!G`JDSDOnWz6$QZ?6q$2GhC;^<-4M8gQK)IT4j}ml`yoI+3`>?({KIs^AsntD}QpD()}9~%g{E?LK80MP9^ z^N{e=J+J~+wAgDHneoI(L5tA?V5CgC1P1<)T#J(ez(NMafd%WU)!|2a@wv+mwQxWD z>)yvT&0SpBBL{0%2Kx%fgS5E7DMXxKtB^foKbl%0&wBQA(56jF)LKWmE z?vIG$^>1aW0D$UPZu2ywpndw^T;RxGm*OX@gAMVRmczbUK@MgM)NIPN<*xYeRph3B?ku7O5DUe{Aq1!E z4n!HFjRE)7gNxMsdznwNxb3A<>XSY{`EBg4u**dj|qL%=oeOTA^=`3 zveox=m{{aL@w)L`yv}FhFl!!C*L39s=`QMHLY3-S>q%@5!&zwU|7Ms+N&8Kl2f& zVj7SG;2-HM@_+VNEz!B=2dd1`fqsQTaLkeA=RQ34<#HYTsx%QX#B0)%y$GZ8hlHI~v0vAM{^j(4CaCLk8 zy&0QZy0*65#$>!5r2io0F@+qZe|eBsEC7xbwgNKev6+5(2W1a*eB>vUjD5UzwGG( zVgh7A|3->~j=ggWJ0Z|L|FbCa*Gzv-=D&7cF(>%q>8pRQ5M~9!{eRUA&duTf3*oLD aBjrBd8qCv4?6?5_-4&O=lO?9(`F{X=89T86 literal 0 HcmV?d00001