diff --git a/figs/inkscape/test_id31_cf_control.svg b/figs/inkscape/test_id31_cf_control.svg new file mode 100644 index 0000000..7ed3793 --- /dev/null +++ b/figs/inkscape/test_id31_cf_control.svg @@ -0,0 +1,1996 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Plant + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Damped Plant + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/figs/test_id31_cf_control.pdf b/figs/test_id31_cf_control.pdf new file mode 100644 index 0000000..96700b6 Binary files /dev/null and b/figs/test_id31_cf_control.pdf differ diff --git a/figs/test_id31_cf_control.png b/figs/test_id31_cf_control.png new file mode 100644 index 0000000..4438bae Binary files /dev/null and b/figs/test_id31_cf_control.png differ diff --git a/figs/test_id31_cf_control_alpha.pdf b/figs/test_id31_cf_control_alpha.pdf new file mode 100644 index 0000000..be11ffd --- /dev/null +++ b/figs/test_id31_cf_control_alpha.pdf @@ -0,0 +1,2299 @@ +%PDF-1.4 +% +1 0 obj +<< +/Producer (Apache FOP Version 2.4.0-SNAPSHOT: PDFDocumentGraphics2D) +/CreationDate (D:20250420221333+02'00') +>> +endobj +2 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +3 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +4 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +5 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +6 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +7 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +8 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +9 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +10 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +11 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +12 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +13 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +14 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +15 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +16 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +17 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +18 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +19 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +20 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +21 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +22 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +23 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +24 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +25 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +26 0 obj +<< +/Type /ExtGState +/CA 0.14901961 +>> +endobj +27 0 obj +<< +/Type /ExtGState +/CA 0.14901961 +>> +endobj +28 0 obj +<< +/Type /ExtGState +/CA 0.14901961 +>> +endobj +29 0 obj +<< +/Type /ExtGState +/CA 0.14901961 +>> +endobj +30 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +31 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +32 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +33 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +34 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +35 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +36 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +37 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +38 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +39 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +40 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +41 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +42 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +43 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +44 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +45 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +46 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +47 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +48 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +49 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +50 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +51 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +52 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +53 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +54 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +55 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +56 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +57 0 obj +<< +/Type /ExtGState +/CA 0.2509804 +>> +endobj +58 0 obj +<< +/Type /ExtGState +/CA 0.14901961 +>> +endobj +59 0 obj +<< +/Type /ExtGState +/CA 0.14901961 +>> +endobj +60 0 obj +<< +/Type /ExtGState +/CA 0.14901961 +>> +endobj +61 0 obj +<< +/Type /ExtGState +/CA 0.14901961 +>> +endobj +62 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +63 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +64 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +65 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +66 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +67 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +68 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +69 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +70 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +71 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +72 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +73 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +74 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +75 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +76 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +77 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +78 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +79 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +80 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +81 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +82 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +83 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +84 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +85 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +86 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +87 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +88 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +89 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +90 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +91 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +92 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +93 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +94 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +95 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +96 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +97 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +98 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +99 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +100 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +101 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +102 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +103 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +104 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +105 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +106 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +107 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +108 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +109 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +110 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +111 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +112 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +113 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +114 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +115 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +116 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +117 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +118 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +119 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +120 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +121 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +122 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +123 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +124 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +125 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +126 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +127 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +128 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +129 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +130 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +131 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +132 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +133 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +134 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +135 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +136 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +137 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +138 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +139 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +140 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +141 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +142 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +143 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +144 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +145 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +146 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +147 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +148 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +149 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +150 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +151 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +152 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +153 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +154 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +155 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +156 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +157 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +158 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +159 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +160 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +161 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +162 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +163 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +164 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +165 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +166 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +167 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +168 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +169 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +170 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +171 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +172 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +173 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +174 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +175 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +176 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +177 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +178 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +179 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +180 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +181 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +182 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +183 0 obj +<< +/Type /ExtGState +/CA 0.5019608 +>> +endobj +184 0 obj +<< /Length 185 0 R /Filter /FlateDecode >> +stream +xˮ$K7裡/ @H4xfFDAh?3sUŽ;WUp7ooGɳ?G.~}I?׿Uc?sKZ{?-˩hy/kٟnS??c5cIOG?tGi2rmU{1lYgʣU˙O_E}{%]uMO_E{y~hYx!C.fҵ޽xe\o|MH-[9-כ|X8_5lZcڪ|7 g??/=*Cg{Ok4! kJ8x}פiezOk4w)Uz_U;R~5i:H#_,[R8;g5IGJ+ݏxY|Q/ck?Lx_1k_jW/??Y,š}}u/"' ҵC~xoOP87V1o?}d-]ƻ?xWOՍ{}"?nnWn|?Wh|\TNsƷS%ڌk 窌osǷS粏o~Oe =9>Wx|?r|.\-\>U|. \,TJsyȷS纐o!~Ou+A +>>|t?_fcyfPe-Ysy,Mc$R&z?"?oŞw~Ay?zZ,eG¹77׼ +? +s;k^wXx}o/z-_~q#{94Xm#N4Iv߸:H-L.c)_s>fqX-tr￸kn4ni|/oҪZM_rq{y_rϋeo;//Ú<~rz7&r}W?Yg2i73nO41fO31OOTuUr[r_s{se ^ >?൚_-fe_.gkg"fje_.g3c wf+y_' xgYguwfy_' +xgguwfy_'xk^feZO<3:!?9fO33: ;3;<3ό3:;35wJ~^=/7~O/8^g힀_=?=`{{~i   O3nO/3=~WO  |'|3vO/_g힀_p=`|{~ i # ˸ ~K\2u   |'g |'|vO/_g힀_p ~w{~%~o x=?=? xJr֊&ljEf=R%. sbX=irpZ7=A ~ʊݬ7nh©Q%t?J Ō|X;> oG_viVi} 苽Qxrâiɺ"Wt|y~?~UZ_Y'{a%`!ʘImP|dL Ix][أ~u]w-@'2u]w:2V"'mt H[K(M^z(kFY(Kn;aT~M?~ohM'`Mk=8Vpez7*%U{.ν@G<v&]n,Ga{] ]cIζEGx^+}EBU˧"x< HoɰsjXiMR!\ q/s-XfEkGq4knlU,Kf8؋0ߩTqJkأP][ǤQ 5+9n6qDMԪ%W]m/Egu+zc_#eU e} 4ZMT>x$VL15mѴnjհZTd+ERU0[\`oE*i̺Lń?L;(uF&yΟfɥe-[jiMmIf`CVJM6LOOgѲ͛]os;ZzD296>:7azL`K[J>tU6#QjJ&|@0ijm {.)Q 2] JIʑUGM"̵V%-4&TMCk Vj~ѪRK%YLeiF,K0̏"qNrC]] Eﱗ +Ĕ`3vc$W $W`=0 a * im ]K`x[Z}uPW0 D +&>yOZ:⣚u0uR;&Y:T +a[eſ@_ <щw&+3h;u +ô 1{c.ZR2:W=,梥8&[ 9JIHS.jDI%`S>Z&Bz EiPA2Glzƾ6iĖj7L S@&sW4FeYQN1 &CtZXZ(R`2ҥCCeXmX% -fIIP1lHRz-[D$*."I-37vyRť[]:x߆UDfj`ڲD sBj Qsi%Q=P qLlyhBRsujHm"a*Մ᭩L î[IedMVU+eM "2GVad!?3ZX%5wkS]S\m_mRCK@t$.CԎ +ey30i6Rx'UxU2:ul5uˠ溎m{;ugF0dF\.6'YkC.NsBo4AMEpuHrHilM;T/DrLoX-¡T}Ht\vBJ!_0q0-Sٖ#D_} 0!LltF`Ƽ«l2_5[3{D%K1IV8IVk&0dvPFg\t@yArp0a@ZZ'R=1,@Z`tTmx0L/뼔+81C2fzꋬ9M u4G.ӟe2j(/e135h$Cкﶴe.Tt&š[jCZ:t~%9b*c$*GTpf`bl 枖zx"G7Lm&s0RAbd0n/!}ucn b,TrY2rSzN:)¨(I-&=<-ƺ]Q#6PA_Os`#$mMj1J|H6 JTc8tR$bX16TǷ +k-ӊjƸ[dTrh¶M4.GaW~e0]dX⬝q2jfL;|d#m.piKk%U x R00BiW`,0u<7a#LcwQŏ Ǝ۵ u G#2~W0 *5Ϡ!8͌i)\hrֆC_eϐb ~aqHHYC(@.)ֈ iAǐ7/,Q _I΃q|KT@`-;SLK@e2{@nɼ u.4ujSX)g l /3hccm^dE1ͯ{ǢT}-P hEX 8o;1+jJ0m tQIuCxҥIbΕh`HML,8 YY 3թ@ 㪺֏Kq6ֶ/\4#}0<@Xd,>^[G4{3Y@zel@ \fPfiol;1l +? GO/"$1DZMYL9 _ <:!ɝL&j9۫8ƘbqPvW"-ӧ7y1>G@@^fy.%޶LT<keRylВT|eĝ=9&nZ[=1H*V_hׇ{W vZk: gI-'gRx[6d\Bd6Oem$ePM) 'ڠ!婖4\Q?-6ɑ~QLJ\U eJl*e+PvEf@:a7Ig>%D6FxX[g)ϟlڗwuL4cꬓb`g3y(ْ5l$x)FZ[޻kz\C!԰͇òBՃO4p9FsMfM8vkzB(K(n6&Y:sW~0(efgU2"S =*iͦ|LxJ`_v[zbz}7Vx}UO liV `U,]߭ĢZӃ0i{!qI #by6IC(ֹdsGdil^֙S|SNдvQ0FH%[ES\t.>M<d!?E4|SͳڇI*RЎc><Z#Hq-})w ? |̂ `x&1??=8Y׎I(Oha#;!9!U<|HTiy97I8jZ +Y5s5~;Fo^Sqir¹ﻟZ%tzn)Uƫ?l4#SEm`%ٜ$kMzG]sl}0 + R}B\B47>UK1qc1Z` +>sSlN)OS1}~QCB"ASË2)ON lZV1#*\+J"#^-&vã`9GNHK>&}Qb`tTQga"])m쫸>=Da͗FdqhP䏎OWםFޒaZ2QZI%Äm7Hf0eڅ!f#L Cy Ce>&iږ+0)R+.)&f)Er5HVi'y5حKcK ]cZo|P wbv:l,& +AgáUZ1Wʺ +퇧\`|P5dZMBޥȢhKdyi&LçXtDJi ::N%kֈ-IGh- "OH ,1+?+UJ dbt^dW D"#S^nEڨ|ub;dAXp|2LslZ3DNf1NI5 }q 94li[aa9ep/ KiT їIEqgA#6 8`KQ4<1jZTJ@d෵=(>uկ$☄x-Y-4D1Y$s6:u|;&,)ćrܰSV0%* [8ͼmxjkUFRo &Dڟ_Gڸ6P>i905B2bi;-5e]hWq4 3~Ɔ{p2؀i-9=#$_{BXƐ쳔H QH`G~F\%Ċ[%3W?P#4.([! O#}3}sj#Ȣ)aخj)`^W{3t3W#uu5$cSlYhU; CsDc Y"`=d/×FJ[BفIc1QK7)TgՖ tR p Pg5Zp\qmDW"4&$̨ד6Q" +~;fK-9Y(t``fG-3iZIgu\R1T[\^=0P`8U3$L@:)& :Fj20kؑ_cx=c0gLJ_cCmB׻fT{1x-0kdR8Oe0\zgL˩-M]Tи%w,? T7$Sű~\gW`YAfgtĿ|^CRU*%!:s I\g;k_)2&rv4XıaZȊ;2}U^o8\QG$/^LJQ80)öVX3'<1`,4{ԯj1R: +5gE}ZNĎYa٨$Q68IZ31dZڎ5a(9ƌ[a뢸1i$}`ݚJb=L0(e[lCkaEIf=H*){ K20"4#0Rl;6P0XY эt?c.sTΤtܤlu0%B3忄ޛIY2o0IS˅wҘ +:r$@rY֍ߍ C0sR4c55l% +xe~S8`y?'!1}ogt_G;gBhSABpM 7ΐr!+q2zӧ- +}8/:\F0pƔI`B(ǹ\i2~xBņQB@gu3l'_T6X4A.6?cnqJҳ,[!B9KF7 vGi)>:6s _ܦӸ)ռdjѐ1$i\:f9'63iMܰnցp~9y|m.[{i.ؐQ7Za0ׇU~`u{=şY/|tI|$hrǔF{M-F,\iIc,kX2\`O'gݠQz|( ^ FQ9ѵ˻ if爠#X럇RvJ5X؊gH51I6 +5K3վ9g`I5= +M72l#<-XS:~Fd<a^C !)THg0 Cau7<yyZ/;ڭwW Z;AF?, +-|F/8y=hmpjBDHA!W/5k$S0ussՊBGhJDU!*~N0jiDhIB&4HӴXaQf-!eX+ U~_,6kH8]Ѐy4-`Ւ^aQ:BxdN$BvEu7)+(btm)̙4ɎYj:`Uz:UV gkg*֘&5)=vֱ-)ZHQ׏ 9XISK\π'y d}Y "zhҤcNQ"gLYcJl9XZTa©YQYs)ʊ+iAOUƇ, 2Xܴ_6<J\fgG7 _wW#b>h.L0"%nq^ӝdUGz1gb#G^n>u2#0UGuz h4tb2}h~u18YԿp + s1 ֝@Si, v]~u;Ex7l$O.!&܈Q8+/[u8RTdoqhb+Zk%,А` ¼QAЩ<$foS(i3EG*"zbIxyr 5ܻā!zU%zt% +.ӡXb.liNt}(Iem̫SO3aY1h{|XcЏG.;:ny90 +,j 7-Kwcw +d6IEf~:B,-INdTi9)-g̍S:(=(_4ҍ1+l`^:u*Cg쩦ѳ35C5o RcP3ɯ("\!&u7\-8D 42͠&/`g9IֺCI^ +Ъּ5%ӓ^䘖&(r(޶ :YC} _r 섈ϘX&ڴYd`ї5+$rJ`tnmsy?dgD4:5bo;A+N3$A\: R7[uu38Exqv(ħz@=CֿG=j0u g,`N5Trv dQu0cgaErIyv(9K?Z5(f܇E#_Fx.'yn(ODkcǏSOhs9^ˡ `<ו}Jgz$8)w`e+OŴdF_kk.k,e[WI0lFɣLKK?pC;1ghltaBd}hhA+Ʌڸ z0p:Dݜ)15"vHߚwF$,tGo3=1ӞSFIQZW%GT@ʥz!q5'Ҝ(bSYaDϐ|PRB63N)sj=57Wqʦ]n鶵›[t=)Y3rP`&y)T ל8j`T9pm~-jyÿb+yǺ!plÆ6.LS{q܍{MXڋcQ: hXa4:{Fs +/C'Wok hCsƼ.h# B6z9|##50l"gLVN%]M^o+ )\}4ჽ寧ljBNU(7(;ZXhМ[r}c*(IQ-حh;4NG岀| +z!][`d 50"$bŪt谺5&u:=8Q&EgM`@}DQ))g*dcDL|g*^S! +MaYhM!ءW-$4"あh7$`\6Jf Q\O;ݸwrQtHHXDKIԽJ)FËBEXاtǩCuSKL2 ɯ܍V'߭Zah*-0:˺SY pO/NY+ 9\g*}Hz9: A Ku3 +;Jr54ϷXFdHGs7Y5j'YY1p)Hu%֝1;Vut/IʍņBeIOd;4,H,uv;Iu<!H"e#v0Vґx.IiՎƯ5;)>o%Ɖ?A3&tpoQ v?틸_%!T2 +6AI Ltam{\_|%ͳF|wr{өCJ N~tUQt\8FAd-6!8c#G +C 9$hL hBr} +ޮpv% #]Vrydžk@,(7\<-٧ F7b~_i--M73j-lmf素>3szpl{7=ObܞF[URwKtV9s-!Ǣ4|&i>"<#9nF*弤TIÌpo Q02Og5)򁞨^VCVWWfr3G# lˢnH݂X&=]7{or*ȐkEҧJ@?>I=/g:Irb|bGB=*t/ӈhwVvF$ΈP? ?@4hŎeӒmGkV֭+vn?!)eRhoA74x[@$=Sz^f.+FA$aDV3cL+ИMUKHY`Qk 0XE.t6fߧыbG͢ϳn*_>1-8YhOl`^{Eg-X]sg4ZgB: +3LsN h3#Fi|@{sNP:9|Hơ@xJIn2N- f >jm%hI=| Yg'mmZ,[F3FZSFR(ϻ$+toapr F65qSxF:bL;ON"}$ yVJ@CAvźOlfdMi'j̶u ևGfBzticad=Sc8+/^brﺠ0=G{xE98Os{ÈqW[9e|:HIqv͐FS>HyUQ*moNX0hW7l1fOJr'/ Tݵ?,1t,LִS !-o\'ȶ @ v9}!-0-&Y`9L6o; k\`pJLBqM`x.] +-%y.ݼC~P#ޖz#p8%Yn 'CN杼Θt(VWe.TFY:;A*w5uDslϒ;H`|B[2\0B{R 6OMiQ`H1 ;iVBDZ&dJx'yq%ASXVXv}t䩥|0hk<<+]URKۏsS>/ډ#)~U|,܍4ۏ8Y3mv"QA@Mz'^Hl{\Gv~l/ȫˑ5k}? UG3ns@.C"Nlz:O-x q (fV%MYJ|]Hm:Kb ,q0/<7Áٹc*Ҷe^k܉Iy<>P9^#VM}Wiqګѫ^){@<k`{\=?$t7Y.$ړj/bz{KIyZ~:O7-$ +}qOgثe2N{wYej4QJxLS *90<_P]|!*,Uh w"T!HzjJ>'AIS#qe#L &@V;5֚P*;-@F$miW}D@K`c'%[XOy-搱X@}o`ElIOx*55 F]$\:[";6-u1{ ᓟ `˪ުTyRVɴlSk$1a0;A>Yekme_;kh)N2s̳}bG6;ABD6|^O4>H]g.t0o)=ش"x`Bp*hy g-DhsyÒӕRPSI +H%B뤗h+)Ii{]Iڔ %&Q)A +:ڳ¿4n+ bahzc&$0YtՄ@x?a?\`֙ ϩbG`#`dzyٵVB^@Ӌn=ʢ>5|6693 lr]Ұ'|B䫵w<$8f=.p~`~™b},'g0l#u%>}O^j>rwv>8V ҠR~?F +eyˈzULCX1և+N%/@ GFxCq?E+F@đqw1l<8O Iɮrx~aO' {ljЈ={缙]`nLo~B +%i}Vɛݩ\1,,;guΘ$~637yzP>wv=k8\W(xqʇN构̸bgevQ5?lBuȗޘ)` N[0[֬xv[5Ɖp7 /ӻ]!LA8bVqG.Kᐥw{mя 2_r!`p=9%=KIԽq5>,8e'gs^`iӣڄTs=`kFolJ> Na۔7ͩ`ߝ&`s7'K},L6AЍT6`:X*-Ė~Dz)ҟݬz߇l.k#aFOrr&RJXdt\aH|׻ +CG@&=erbǞ.u0g~V'Sn"_' 駇@z /:6 +/]3F CO{Gj{]:t]v /{[)5}(<〖1PSLL;^PT|uv#[d]m|8a}@nh1)f"l?厓Ug Q5^é$yrNJ ֝uB3fLg>8ZP<`Y1(Ao f힇$1i1H +yVd@d|{1G$|Ef:#k&2t(1k60}.KJxDӡg8p߈QNVwM[}mx_OY|xc6F{YgH╥XCwmQ5<$FV[e +7wͧh +`<ң91nzM;jk?D{4ԳtǦ̗AW:UWfKq-1!kJKTH.q>rSmH.NY=s/AR].ٟ2QsV*.͇jAC +2o?i"0X{sY;uWN纗¬~(1W5m]G}a{]%qw_OSrsdr(q?4 0 +:#ҰY̓pna 6id̋I 8uH去?USU29`FT+9`[+q^<`KBC bgfE]vIvy_źs^ـak`x7 U{KһZudD-2 ] yMYv?'JmvԷݦcn20į +cd=|jdJXx +qYz?R:6Oz3U +1ؗQBl'$7!QQu$md +|'1B%fBS#_F 57+͏Km *y [&!w/A<QDHp!Wی+_ދ1'Irhx8/6@`NIOx1uB)p[}*|ff>0X@,q|Vzt)hߕ|Qb<%G*,ƒb3H劭Ehς|?x;a9X`a0enQ3G#1-ViFCřrUq"s]P GP1Kɸ0Y_w^Gd=\~nʊF y$i4<]ݝoPS~7WL#*duvQ WXNp[7iG|?x6׮؜`D$V^sxX},ぅ,M<ՖWoS\1-j%?zaݰD9}#.xFxvWJA6=q\jvBBo]M.51+_.sU"ך}¾W섖TSUNӛwN <7Q6Htl9 _r-_ʤw(]V L9s (s+o-.;4_ + %Z/θI~W>է%$>)U$W"'$kﱊC\B[`~ˍJFOC0.;.ok.!:-(KiGR),5d9^W>7%@ʧJ89T=€)8gC\X4BC\eW"7gC(FBoЛfǏSgM}֥?-]IJ̎bND$|+ڿ$ɯ.tDHh}{nyK6)9Ά=~c{g@VޱIX@c|]B Ot:vX,ƯbYX6࿽@oٮp+$O`FeY+ח:5R hb}KO|;́J& +x'h? +meF~m.S|*xB<.}aj>~4X`xk\lϲG9`Ee%,ǗՃ gd2D)A|3u4YٞWNrn D7q1Ma +%/ß_tMۄF ` [2Ags|;V|r,hWb㕷"}QN>%>y\&KF:y"ȓtwG~)aOva %բ&6[悚X(_<VˑX-zŰ',>JsK˿6Z^݀& K)xX* ^\c tyX5+&MU:0^1[|x%ŴO\֝)ϑ/s  #(S^RԛʇL{~uC 2sAjh#'Ir!&jRҺ{uDR`ؗ% ³wgS`k@/`d֍c95Q6?YʎĖw2`d--`MbX,GϺ׷ +4ålg6Zz3X=P$c;ܙ +ХN>9e1҄x*|Usn*Dk\yӮiذP&%rXJcjx[el4n[G]Lե(R^҅f/Tc8tSl51s3VmKtOFo4arb-wWuU=~ǒE7фF,﷊.;0ɂ:و!^kox\R0)]0[6lƔ㎖v5**ٔ>SS`˅W+sdB(ջ]a7@:=b]2㖴nwsYlKKab, EYӶ`QϿ/ Ao6_*9Fv!,0nny+1F.{J+BE.*~JMQE]x<=F#)p` $;# U*oM/ߣ3^3mίb#PC엢GyA~߁~7w0~.# +0K ;JmG$2?w">._O. .W4h-,%|[Ճ,=FoF`dbg{wQm-Yd"#jۦP­`i4G:HR@i_s 8z˯ +ݯKb9cɂlmڎ{B,T,s&\FyF|]㸣] +wѺ:V{IYU^}׷\iu7֣=(O +\"Sˆb54_%b?܉u[Ӫ7ѝN`/EH>j4:[JQk`(gN`['X;36}ɑDh)F _ Ƿ/O/֘ `͹5gBRmFx'KWRS+w}b5]7eهu8Ydgeve0=-ҹ'0*_ w._NןjR +ޯ\ {e¨,A\f`ߣ=ѺDC 嬄V}+ mjp읅y4;ú ltpvnخ z>$U VQ(Y,krbZ@Ȕ7y*@ձ\rﶨFan}|,>@h߅ne($v{0iK6ek\3{fbaͳ,n%/Ėcuz[\F6:9>޿N#Vx/;)036l $|/;Ӟ1w([f]>9 :P kw#Q`|sƞryʜL lka8O8Qf&^G^~˫jkϣ8ssEf ѥ?U["R&1~.n@6ռg x01+KWVډ5߸ѐn}Öz0'_u;W3d6mUO?폾Sa{zk]6ݫ^+`{vވ`˵b_$"}Tĸ10r׵zmWώ3` +,ZU3z#x S yCh0lToK硌HQ;Q DXue\8 +R)og>(>_-nmO;I#%UO"#nʿб5NŚ[^c'6laIFU 1)m}l~ac {Z ̂x_4L=MuϷ.e~嶟o`q@Le JLl]LͿ[՝`7|>#)ֆc(|h뿺2_$ ?pcV=%d ydu)m##e6'-_~u: +}#|[j ⏁ww +eS&囶tMN[^euzG%,ʗLn%^{[6M8|U +^iLxrxY8F"Z} 4>yGRV&-Cs?ԒHM-4@Gj!ooIOq;9~oOmLRٚ‰lr@1P%^`X$5} +h,[yӚ`źg"o@Y埭 Lg{D;PM~8 +BF}K͜DP-mnonoÿkmS-Pۡs K-\\\j= 52.todccK%6~qu9۽V*>}b#Y@(͎jRok]7u2{PPYu`}PgK i_0ŵR<[jg-IJUْv}7`å~5Pљ!~G +]= +]glkobxU9#>zʄ&y_XWbhn^!8(W+hˁoǍ`׼yxMB]_;k#E\. +StzHgM_BXU"4=8jىh|a:֜߇@Q&<7(j2j M(pӦxV?&6}8vԧwc|uޮZ7qN[Y,L~:,jb6LEְ*Z2~0d&ćAWxs*`vr{Tf`UGf6mɻ0:&M"n}2 CO嗚?wX\R\1x^-0Rzq`e\4K6e:O $^;38EsA_|k|a2Թcej༖ a78{AvZT>qz!Q} +"͹fRl?c} Vf%EElOJ;\-<$\W`o@Hmsqk$A[CJFl}!7YXnh~ G +;ܰ\y] {kqᓃ6?T%JP'D l6O _5j=~_a*kҤ^ˁYiN:vk>izEaʌk$&+rëϰNwGhw|;>dM2fL1C{}0ѸVp<=9tKGl.?u=n1nD+!9W ^Zx :Pt*.{K2H2TCV~9¯0~ l{.o>1y3Lc;SGZ@Ϩc5qMѿG2 +ϧS]kPxO43(}nj%*Qns>U%W{L6>aTޒ!X?Ug~u7}{X/D$4dR;[Nai?+4-͋}!Ε;H_玾~K +zMWkfz۝E6y'`[o ǫ4u;A hxG}6CYmSr|Ι|S`!yC=W=7+SUg +fWg?_;|867z׀O~u!*~y`~wW]<2L4젡Jjg?%joJSqW)y~|T"](f_??d-CR{_??5o__I֐T)#2EYgg? W4AN um )Tmw5KцBf@zU A[RUžhxlURiԳگxju!e ] +c66aNScqxǰYI=}~l}lOն PXHM?!">i{!kz-sf޺}+mxkf:f<MDXB=\BmSkF R|?`ŹR +#z- C200F[E@ϒlͲn p?$h x5u˃*0 Bli(T'٫"6?JUUL] VRaX-a5iisj=!F.E)V,x5y*Բ]^BUt|Wl!q'94 D/)=#JW>%.Fr/NEv#_C0 +emϛۦYKOrMd Zʀt;}:,M誰iЂ5 +K&=981udBO1i,#b>mX^ +6h6t'Lb7`t/ -F` Ɂj5ǃx0 +502o +b@=\"˷\(Jrx;վ+ڔaFC*rpEl>[%}I +vg>bU}q>6EY+0G06ݽFl + f港M[3GGU +Gif~-0[r#E4V\%݊;׃х6;^]FЎ/8^.!UJ.`rGRS>5%6jI#}jU9L*wFbW4n.VÂZhw`G?(ќȭW N5,*Of6~_7|`!:~n T79Hr/N@^^J^e&3@ mrhJ!\S1LZj:IzٰRqϨubH2])!.`(wJ5&mUO|艹Q@e黢gIՉk^OdMZSE!iC[eHٹ FvȀ6`0ܶ? ʥz'WYTÎDvZb{c#.ڙ*9cOY 4gٰGKE苖ԂyǸǁѧ?b۔4#DPBh[ ͻgҶFxJ!bv $0U8`aXT4dDh(H6pۮ +D3,AeH4RsqKn +~0kFǞKޭ4_9 ܔyDt!aXFuG~j9T)%c͎sjC}LE4`!w"W[Gl`9u`6~Õ/0tl]0T9 fQRv8N:C-;v^9(~j8Tx 0-rvžn\.*<5!i;#+2}2Yx_u#Z%AʍrV`䋆ȉJt${wĺ0.ߓxZnvW k~X$˴)r`\ 3n +gv`;@krV~Q)ZZYxp$ * {> f]R\$CʵT/9#IU;Gs?emɆ1K#Obs铀4J +θ"qOE -Jg)?& |]A q HVހ6uevt!Z .yY)F!b{ົ(8#W!&/){]EnS7 Be94GM [!\D/jP{d6뇣?GDyAwQ4ʎnSg DYr໡< :v}T2O 9 }%Tj@>\bkQέX<_aDn\t'ȤαQ 'DťR "DV6 bs :%~824}* UH=A>^tՁ<%'in*#qB|Xu̢I`BRILhWO*{59Ci+o(}bn#BEriv=z@M0S v!jDEٖ< -қBzQCpvQ5, hH;סRG\4"M%*em]o:Ը0`iP#5?4%%#ߡ+A/+U)ߧz&vl"LaE:*{G {x60qAaMK>ʒij%G8ՈJQy~D i(4:m`t~&a7ȾN@;nJ/ɉ|"KAO7ޑ簤9W抖OYl -[] ՃO-, ZZƗ-#26TV r{^h{Dqbm&Ʌ}Tw䊭ĞѬRQE!%]@3/uiP`GNSBi, "ˉEUhiU蜷 +bJm65,=&eq0Ҙw *XnT3*X/ $rd@YF-g fU@?8^֍잭X:n &cLN rG~Ay7G%dR1$'ax@[ƨG!*^Me_TGMpoٶT%r{'>kHK>ME4;C~;cڣBi| .h^y[2|^k]kuy_ЁL<9y?oUqI>W *ף :c_:+@ÂTx4NFZG3O@ 1=:hT6?c42Y6:PnSZ6:8ڇNiCD,AdKa+ +?4y!pS_?-yDyMgL: +Q>M5 )= +Kӫ> yst.ިCdMr<η.٢#of;u2k$9R'SSniAb <>s9\2>'ûD_W_: ռ}GIgV6dOz> Y +d#U'1ar|IEU3#ǓB`0‰Յ-f[ٺ:bI -P<%9-#g{Ja֖LOHaBj)cH}zkC=IHA vMH*+l9f/)jcFM2Ȗh_ ̯ɹ3@r?taĮNCYaJ2)cc_.xa726p c0T;{7G<`D("5uGs0aפG&ld>q &c95&4:vUNvu} +y D'wV1$!LvnIVWUEI'ujٜ`[b-INqNYW {C=e;0f6GpSI{)̀DlChGFܢz\eu- + H j:H0R]+/yXCs)hfGH[u|;Dxd!\ Zbnk}:T(?@քvea-јRޓBS-K͖'HcȌ>%29K>g͋y=Ş&{<=4EYiv6lp,J[!- =ޱ$KvA4 l ;,n'8&KdqK S`$Kra^xvk^3:IFɉNh WtwTdZEoR#;/9q=!c5/`A Q<-\luDR?ГU׆IF0wtI=R#3H3)St.BIy'cqm^'#5f*&QC(9/e eDĦ=[ eszF$kÒeǤZzbq5 CAT~hMB<~\*| q"3td@GCA|;gw#V;U( +0yR7) (srg3BEL9lvvˍ3K%ImNҋp Kw#NRţpN_ql^`Ǧ빓`!nk6h\5}I0ژv".4k׃.-4Wrp< M^7̻>-F9 s~ĶJudRnX5I1~|'=/|3EnpPxa`N'L.k_E^':d{9>5'tZǢז$-z}N)$cA<Tgqg T9Ao}uow=׵3 ƵEƉ:X"-*h- A]SжWt:YJ'!1'4,C+Ԇy7].7 ObxsΖx^'whQx)njyJrki(3\/SnPnK-/FrqXHK7 lo-Ι9Nr%$..TR}!JI adU}s$K_i=EOI%i +4]DPX &aĦ7|W~FRݷX|&0ļ$Ep H/j" ;ٿA&Bz~UIx)=+CIg늓^.e{ q^Zyr};Bc`!u0XڜQÇ:;5EZwZ.Rꫯ(mzĉ?E;-[ .'8. YCH{) -r=?E9_c)'0dęsl!ZJn=o,t(C%#c26hkyҽW2ZK8n0D>ALJۙ %?ܯ Hg5m}-%8`S~9/iQ >:5K21D# $AV ^`dWj${D11Qr hhKұؐT)WRX cZ@n40(eНokmH^q\44#%+O9! +,&x40YĎzx1rɍcդ/ ,MT7@ą"&RPxml踽yāQт{}d^{2"eE?<^*VNL^Pnؔ; '@_ ӯ[mF^s')Ʌkp׺ׅ:qSYsSc''NCQ%/u]Aj|EjZ]GN;,/ g P4O陮ޓx]Jd>Ǣ@U6fa͏]SchҲkiO ɲ4r&Pm܂}=*jkk? 0ZƓZoZ|uDGtRf[1\sI~eB +^ED)؀ݬrR"] H$9BEjsh/BHQ$9N9Rc Ci +ƺàz%U3/)AY'['HC"Dn7lCbNVsXC.J^ 2 ( ݥN SI=e,jx$@\RW_?>OuJ (wTFH*7@|dRǏdiq)&)C-!J` zBZ\46ktlUc6T T9]JoA~D%S;o[C"gO6e;O1RNjJAxh XVOg 7j4|'DԒjو y'Vy]%mD lB"J3/ۃ&&ەln2kk+"%qW!M%(㣮EeR=[ԭ"J+#R^5թdljXZ b}R>~I@%$R;4Sx`>"I{ᔈIb&6=)5$>G;KLĥl'v-D7;uUCϏ.!HGk^ :^;( aIDmi]\0vNCBsgdɛcDg|nxBY<1pf<BV)ZWr5N~/u#KD4H}?N59'* 8"% '4HyF+xā{S\k᬴ME}<1kS~S?mş`Y(- 1H $a-p]Z8cj0Zp|g(c*QGۻC. Nz^+7H!G!YO;Qq߱Żb<tJaH9'::KHb[AXq+sjoS7[}!yBM`[]3Xg< &e N|Ė$kLq JpN[R ScjK2xiA +#{Yt9@ ǭ3p`-fU^ց/l`3.Ђx=ru*MqE-b=Cd#ym3* pIT =tH?!VY4&Z-w4 f;ٔ ssb8ok~WM[`c^0˝y'aUVh嵿`\Ip͕pì?)#S2v6䴵ǟ!.֭.&bD;1#0Ν^BМt%oE$˂[cy)U$~!UPa/@hPV#3w;d ^OO~LjMab#HDuRȱ %e `-Q`1[JqJ)ZR%V]l9E/L1v:[%zW&Q + @}⵰UJ$3cHG>ÐP`TL.KB#k:,T0!9lJ [o+,RْRrHs8*Gu1}eH=.yA=7\-g &r.r 0WI.Vnzd3`6SJΜr#ZGcLaAg$ ?d9-iIBp@W>>VcϿک6EW`r>5&w J!^˭Yr9c$_)]KAK҆ܢ4/tFhA@ GIlzN\:ICEcZĭ@[̸YO҄OnCvvsHI[G@׼@=D)Ug- zK<{K~ZIֳ`a?\&F$뜮sZLzjw ,]zR2*ͦꚇZ 60ROB@@vs%OR(屧j8cVܳkՁ4\# A[KVtO]5&RuDhŖ-ēaydF^k.%S'7Dܘߕ{iݝ3|)X(9tM>AHy̙lC+#. w*969Yf g25t;o +O8ܲHk`|c2x4 +.;4J?Fb0a&ފ9[96ݪ%c6bP){u_Zv-C㣴H!JOw 9ҟ;oO|n!l;5nxho ^L| B+x[yHB(%1c]l9fDy(NJtͻlAr0'Ɇ΁Lx-϶KP z#NĽ Pf:}w^{?t<1+*lN[mtGX(M;f+S4AӯGTRPrN$IԵtEO81ݖ[1g?,lyͅ4,8EKS0}rD4R='q@qycXϣrVnࢢoR :ֹ~C-qXKrcU/Sr6 +i`4X% noI mےGb㇊!YqMDY>!j{+^˒h`s5ce{05@xzΫ-j]#tcyx=ՠC$FN/K~yzcDcT/ُZCf_~}4tUzI&VSg#I<޺bAKn9dM%1>kG?zON7Dף' lpc Sh!#n`C|Wcnq/kPԙ'%/<>J(mxv< #e<CÆVI !6gy o`ʵ0P˦t"KW7"RPE==_Rkڑ$(vē Ė_2#Gq9SFa\FI*̾}g+I÷y2OV.o5RεxWH 2sԥՇPh ,VP)qw+In6FsCyp"MC`:bw\ d~iqxm</7)ObXGۄwΟk8џjA0K4)W%Uͷ-$_ةq؝`8ez UTgWv'~I +Yܚ4{>h}?M1*AEֻRb]fam N +4>'/rDy:G["ER8WC (& +f/!z0:SIN.(;}slj- `ެ$#u.%Y-0 l zEa<qD7UƛyM#wL<>#y(P11E ?˒,V*0ξs(,r:u =AC G3ť9-V ۘ#Y7r$; +$N?iuёwQ8YrD#ᚽO- g?W!w,Լ&T{$uNJ@@d|qڳ9KUh@+WiXq\yiX{AP`ۛ ȅ!{DE7^RnI 9 +J;58>yٿwBG}r;_}~yBf)C6=~vоf0lq6y vʰ~q޶c_KPvey=DW)D(xN; ɮ|ϴ[5' ++NXɠ"؃3T ipr Q}\rA9e!Y:n0N ;G>)!AilO`my}ߠhSb\I?;&q\C9"P۴wWWYU϶E[A婗˾Vb| =!Q"3KiR^ :p6L6}}4M9[ٔd>Kc̡dW> "Or2K_AJzn|ќؒx#>ð}[)㱋8%=~ʫ>ǩsK);Iq|Z~ڑM-i$%XO!3&#=y5$JbP*hI` +݈'^9iRi-4Jftbqu W,haH4X]hv6IFLz8 ($^\RU7G?yP i!X֡_5Kܹ2tۘ,b~;n"Gڱ{D3;љMQXL.b4SիMoLjL- ( F(2;[IrNR:E&N؟*Ņ)Ngh2:!{ NZ"~$AUɱ5h\q-{N4KMD"dZ8Ncʊ^0[F/S -T'07+x&@ofJ.^< +z8.s4L[ktKYq";uwJ?I{9HGeyP~椎Y'Q#<9ᬝBy24"Թ\$5rQyE70gX4*9I[Bsgv<< ;\^߼ރ˒'Bv5j~OY![/R|zs.T8j_\0  y+).ux'Fo"%/yе^R`N]fWѐ8nn2EX>4EMjQ)Q-x(O4?nЁbl]Yt[^U(=R3_s2pra._o*vXW fB "3KPX޷LEf+ e_{{+QCnOj;;őt+ i6Ƒ).5U>9~gZDc𝸊>\xDrmd/1U +{^i5Lt+OdԐ54 xz,?W<4t=mفl/K;R;]GHM1|Q&'9hVRF +K>?gG(?>=W#Obn +' ri;ؓ2$ÁQ֟q8WFn>lФf攤c,FHͥ$sl#gU^%;SAx͸%#E<';dd^Ȁ+3^dN3 :[\yH|lTNoeIs )';v3jYf3݊W{xl:.[XkǸ`9g/pqבJح^qYZ>-nzd53?" +fb?\zKb Z!Xw# !sl+ _de_l&_V ]柛{Vx{|+?rWsQ{eΖ50)R!~l$+$c!54|Eݬ=oUt K&0:O֚?2q V4.A<Ǎ- PPw. |}쟲 &Ty +aq7F:'0>=6u b6Qz,~Jvw.6cMUKzxjЬ ++)\)%cg7 '.ĝFb(áPsXtm}H-0D|ϛ˛[H hmݰwzoGDe#XoL Cf`)*Xrnʘa$eoI +s0U/q"3ۼ*O|}r9ί B%}" *y(D\ʻ 86]q>!Ñߎ܅;rũ,gĜz6C ѧh؝ajnC\j*phW72g6B=Nws)8WGʱAnZWGbNe}D$~O ʖ:~l@<|>,+/*feжLl)7~eA_̇SvN|r GJF%q; $T]k%PVwm3SoaS|d,st9 餳;ݎs0ryf6b~ #=f&~Ie_J`ͩ7Q:k{!K{ !Wqi!ʘ^+Y2 [Sx$T xNs$Q@gaĠ֘,]ߕ:쿭3=6~+$1%&<`nU *~,\Rx衱@6 RèݟUfU ´D큅=w8^*I+Nee\A-\p:n M4Ymi v7H!@m P}Ќ0@.mMu4 үj3tӧQg8`ьwNT'g+G>ouf*!^ +sξ.s`_!3n.kKgI; Qʎ^g uUyqF*z5AIh{gW-#%+eha!,qqH3{&-0:mֹظ@(I{{?9,$ݶʸT~BGB=`uiAZ8:J +U{=t{޷+;vrً[QCv˾+'׼搕X`kǎ׾"iztL{Є&]h'g|uF컯T#8i'<N|Ѓ=Kbty{#[;E'G㨆0n.K^SۗNbAl~BT8;Lf$',R + [~[1܂ AG8Wrr Nd떁-_T$R8w>3)cseԂ'L:Y[>Cջus=i_`k{7:1uhOB +tgDInOOGT>mTawL4w(PWJo?ͨDEDбSd䘃9t\-/7E#ˤETUc:spP9m7'!kNqN }7Rz.Gf鶎$Rÿ"k>{NB/ h +kjrY-D-!47_'@dgxh|;F*s˜4iF&DGYkPgg@Fi~0e{Dxm߷9ĹU}{s|,s4|Dz:uf\`s7D!]ή4O`irQd`(Y؆-`Sl<Ļ.~oKE!qvڻ.N{u F7qE̯;k%\QZJ:V^16kɵYogjHԒ +7[fyj dfĊM:[/!Wqc Ud$KnYA|3L [=D0|nw5`U vbb>#Hf'O;0qwi0W~ne +k<>psYx&w܊#FWw6Mj~,yas7푊㕆B-k"XWE9 K\ayxWG.[qBhoˎ_K=ֻnHJ~7:'U|1Z?V"#ue@%J|(D'R{cuY|0IlO]`P΀DwWib"O +Tv/i +y"`}Vbzxa`>?h,NfU8[·夑p% +i@߀!q:}; o#׫rb$FՍIJC2G*PxI1Kr]g'bCi`K~h7v 7s?WevtCp*6B]oߤ?|k&ǵR k94?4r6m=r!'wZUf|;:k}Xws0 ŸMy0á!1[ Nն֙+n㘿9AݑmM$=q +O3ݡ{[@ fylN`>G{4_2WWrpH~~} tfQv1ڏ1{H<~3ֿ}/<5`Zor;z +7[GMpivK͋t[V~uF{9G(sZH-uV =omnKΎï߿ 6HqS6LB`m{(\7ȯW*o{vz Q +0czWri~!IJA&ۖ [NnIP6;Y]ml}0c`!۠; &k/brA`7W䝹8D26иYw< + &o_o "v/ŅFcZq mCpsʛ Њ5Kx3qݙ_`N'7nKg%j .0X(7r|pbCc{Z}*wXD UR<D|L8Qݒ[s|yc>@K[n5;gv[ksu]SP:$\$ ]N B7Zpݤщ|@w]ʽ7wy&%xhYRcw[08Z xDM _Ddۍ=`׻H+0pG6USnBE05uո~c2/˖zbvE(:^>?!C#y g8;6K^yk':No')E%_S-oW-1Ϋ{%`o +X {`:mYr~[r!I>xv~Kh/{3p^/Pڡvs_ƶaջwo& 3\K&U= 0xDz_m tU[E.vdb0oWZzu(E bXX>{ɬ{:bKCa?)ڵ?pD"ěaCtK2*mf91HH +}:Qf`"m9ed,f!_&R7|p_J/0w"J~95pW!m[zeoed |Dqw~Kfl'PlCa{צs,sy$O^%#Ld +-9އ|&d@{cKaS G6lߓk{ڐzP 3<7?!gO`w; +!*D팮 0 ى>!s&.&~CJ,|`;F ^#7y3huogɭiLgPB0b{w/ + @f@?WlrثyzC_8mc/lv F9`AyLNU!Ώ]7< `;45}YMJ %Ht`W|(kgIVE~OW~ l {;9˚JIGԸ\im}]#+sF_˰ܞe ,tw`Kyx̥ҟJ˰y]=;+ncvd9{fަrIQyz/A` +b9eث~N.*UVu%yJr]*xhb6a%u]]i!^/_mzbdNgh1~)V`C ׊KRHow|!17=ok赞g}7Ib ԷCvB^s{܏:y}=/*'K#N>SHêrJC4|ۉ9EP~Nwޖrלt{Lb22[8];- }VLA$zT`?skUzg%%amd +f_{'ׯ iǾo~D{> m\YoQ̚S$9`~cM3?T` Q_G3o"nY%ϕӀP+NVp+r_||{zy5 `䲼HoNCkno^#sZؗnK*sӊYhrߛ_ =!E`Jrl@uIlpJ72'!WHLO?\]yf:c|E롰*5m:,g` +BoR$-\Ci~–kZ|9 *RKϡ5.fW1i`xY|{#XKKT^ Lj @]7=__c@?ˀ6!^Y8%fk\Xf,`]zf~n࠽H缯\%6rPA\25rw`xwIxREis~?:4XLsg,+1k@\gW;JVJ\=15x;aɔ +j+ـlMtXJf0 +)M'׃ ?~98*b?BU)H"B?/ CWZ@A;9!Te;jBg݋bk$ -tE#}^{*vX6-.fe-ё[dO :DQMpG:ݑׇV=Ġ"< |#kzDxPU&-;T4?9i<75gR;xv`pKb["ڭVwSu \6~9||9R[Xq-2bϬ}/ܠ+}`}c6 B#|o_ ɸ*D)nkY`&>7Z%=@+zbV]#x Wnpu`!RB#F# ~Qab+$.͎nNJ'iƺݪ8h)mB[ Fhwb/ou,`.#|6މ +of&[e9`{2^ϰ[@\2?"9}MW>~@VdّGW+ҽ's!vkP&fUgz,L㮗qgqc/=`̵:_`Ű4^\fY&FO4zmLO+6)R$Fr}3Q2Y o;[X} *eaLۭ=6eK{Vs|N3E +[^ߞVԜ`kQqM@(_&;` ʕF@}ujozV$w_Ҡ`k 1Yq>(/0h0r7(ʲrhǠO>Pܯ:wns~ASYp٦G^ٷU7 G 0|egQG@IQmiTiFo(xbc3Rq KP A> }M9DAߕ}/XhԘxm,yEl۱Z?_κ4oy&˓ﳍ%~U:h\5 xay 6]/_ٝasx gp+}o8Ҥoe'6O5r"Uy)Og9 'MSLn`FoH@ԭ&ϛ=&SJW_*V~y}BSBqėwդ\l/1kU zŦoSOy- -|=2_K30^+׉4CYz}߉%- +u +?/Hz?u?WAYV~1h0y@Am}(l_*7An +w'j1L^Z~*[ u<]Appp *6v>ad.`mB>*#u3k=*@Xª]`{˶(Opg/Q l~S95>aӟ* hyP̈~KD0OuMCDD lieҺKx\2MJ`6\''n!^*en fkЕ31X(ZHBٮx aw[.Uk:Sy 붆Jd ͙Ƈ,B^^9o?ߚVJ3Gd}Cv-}|]!>9`"qޥٶO/΍> F9ԗ5^yz7 j31\m=~>c{Vmǘq3 `+@:f˃kV{R-WJlfly]5پ+ľ*Z[M1oz2j.} lpV#ㇽ~)QO~50X>i')-e1,(y߀6rvn ĖgM~l F W4qF}qp]f9~-{5Oq)]ɀ~6gtKMe\w^Ǧ(u`i=xf=zߡp):N%F%z K8Dl%+Oi<ޒp +nᐕ)a\1ηVC=`E4th[be#}VF>~''~ )^y%JZ?nZD0 7Uv^7-xɌx%BA +۬Ob+Hf3YB_C&0xj$f+V(#?m*Tabs{iaUK]ב{S`V %g x1 øJO61׀Pa}>Gls$fyɲ|Li3g5;7ݞrD7i}o{ +/}LLxfiLeyo%{ ;wI"^>8aff m<1c r-Bϕ_F8VSRǯ#Aߵ~JSsbh}7fӹ,wN ݝIlR!j_K`ms~&`~+o&c顶Î5v~Ϲ;jщH~e]gޖ R{] G 6!㽦Ym L.\&!חo'׼,𺾷e}@"T wl &ˋ5 vMvspױRR Q`[mOI!/)W['e`AQ}eyHv~n}I5= +;B{>Z P\Z|TJ +hCYNM} Xs.9ZYnj|@w ++Qu(o7.UDؓ`ʸ͇ l)f?Fv,16J)X\yLC 7~'_C^#at¬zLUNl q:қ?I(}tU2.S̊%"p7 +ӞVZnDgyO "=QP:4+֓6fBf+ep>zDloNj.2B5[\}-;;9;`>r{=#|T}3t/}9P?O<%_WyP|>#G(ǿAP~OW__ޕ$e|F@TUڮ菽 Kس% +=}lVϿkLn` r +DV/^ +lX`.>{ @ųL&ѢS4[oz F?((W6]Oal5+V 6B86z:BXH/=\ly~nu6C0FgVt0K=IXn= 8ܚIfdyw,G`B+lCO嶋E]θÿAkz@Pz2LC<{ȿ?͏=`w^~*ӣ ٫ra0.4]{:}%SC|?<&DyfS,3yM't(G{I +iI̱* 6tSx*'>u,Lzp;E[P`Wd +jUr Q<>)N뀀=9TTҫ2:֑z -&3e IPGZxBwi~&Aja`E +[įZl]ǰ"d9l)vD>)*Eb ,ʭh配eNϨS b?0(7ciW/%3녉ݵOzaz.ޝ#Adp"a VL ۶;,%uU9[ކ]Z9ٍPINJ~DYgPsPv{wu$1M-X<-E"f8CƷcjfy}0vBvq;AߑLAS{zoCmØw +Nn`Vt䟣;bgO&l ~/ 5@>rѱУAU 3\-tq 7^R{֘1q/Dg{`K*=jF;^3ǎMCmwR4 7WDX%"GGPTc`EڹЙ2Ұ0 !MrXG,@Wh/t@Lj+tl܏B*c4\k3xǺc_n71LOX, K6؝wz\Ml$ y"eWBXG'=9)mkgw?5H7V xi +HgXyf??0C 3Dڈ0TbQezpϤ29PXqwag?A>rK25NPxzu>c_ޓ,n,[#Y&"J">Uw#Yz|ꊷriؖOl͚ƑQdZПHnZl*̣-h'YVĊKDҁr%=adK":ՏmL4>=0Ll=MW\._΂vLk3SYLS6IJ>8nKR F|MGԒ/G*-_ C-@6@Vv2O@@\:`G*Dl?`ݥ-K:6@ BiL%p-znYgC ƸV~'!(fQEcз\=?Yc pccGWyo''1{(Zv3zGO3@;=*EѿMܹJ6G+j`L o~1W,Z4gz6P`7VQKڷt$J녅dFk-(Q1@N^K]l1QK8@yIF)Mtg1%&CQ8(;1>F^ a~}UCҟo"d:tFhcϰ^Q=?$BVp +evcB+{W}׮Ln +ZeEZ$X@z`'YZ@Fc_ +E՛YT/ +K_R^2i9ֶ{3z uc6pAk䋟HTeNg0 J҃ɬDzS`Ӱ58XZ\k4OXr;JvGk` w SuEx\JgYBD=0]pP}A5dvpX۩'0zx]~Tt΁,l&sX4ٺ,,1OjUIEjFçUNl(nͥם+ %qr97DpR*U[Ѡ08L]NqT3*Ӥ|[ao\`>CNO&REm$v |J67 +. '4j0[u "ՊoTZAl. /r-RUVkpP4ŷN2a VϵSeXqQ:aX W[v\`l~r4=ҳN)2*?W\K8=N L*ȵ`4g1D|[6M8NMnخߓ *FF<$ǜ c\][*6YrlH1bq)(dZy%CC6 6BeƎ!1pN/jcQiF_6K6kuie0֠}rAz$O%t, ++)YQ|-I{0Mw7/{qS*3  X "~M톋'dBF0_AoE.|A;hřI`"k6:1m,EkFB@FKnhJ]mNmAROUÑ}a5 LV'o4: ic쪀0BS=+V5(-]) EᎾxئ/S{ oP*xq#r&1fߥ`A守SE?u =îWg4w7`-O;fmE#U@ `q i}8=ۅyix O<(aꒁ`F&g۵ܬ;잲4b1(= MXQ_[0OC=Y`'od'>"lFz`ty[ȊtcJfHQf ^<7U7p c75C2+r lb}"U0YDz{C` o>^ԀUY +6ئ+Ϙmi*br+YS`~&@Q0N?l%BǝD[)43DN@!Dluӯ +|e +H<% x{ '} M"DzH)j)A"֟:v$uIh;^4[qaeܺaz9M(HPa%_>af|;P8ΈGXvV:fDٙ?pq0lyW*45u^}πʀ,QvV%┭x +ZwY폦@2aJ;sc.蹁aF{FK .tq QU՝xh/jB ǃڢ܊w9섎i/&%bJ^tΫ^!x#tq +0ʁ)[PtN[eY$cEE\EE5܈Q,*ce2Ӈ\v"8ZN<$f&%X3.S +!k;T4JD +!pi.vu0ror#ڌcpbb^!CR+b#r1PbdTOM/i#`V +;`+ARq-RM?Cdr;rqh7maɅ95# +khʘ SJii׆\` ף"6'uϠ/`/Oyk[dXCmz^=*BڋyT?-<[D!ix9Bw,Cr7j85 dWh$MNo^p5F:qYT4؟G <#GDE,uc0/ +~c#b4xt&]LѾDf°?VLؑlsa1"P~Sȝ✊dac:^0BbOsҥ)sY`f,Nw1(6\7qt1>L*Ceii."ꂱ.WȂX m>! ϭ!7ۭY]Ai-I [xK̫s"m"wFBuظ,٨h\B"VpE`|d +kZ\h OFS92zmldeb?No"\ +5JJk9P w$X N.CLhb^Y1gמl8IrY<{T#t7hz^ȦLNQ#+ʹ_}Ј_y8Yn|8F&{},[ +3Zi}L#΅u1-j + o 1°yg.BxL"L˵W؈6zW7tiQ2t9MIJ hk?=wa@`>&yx=pt0+CNoJ0` .L[E/lc;%)^%*(YcpYy߇8h܆0uQ <;;E&S0u(A.q;5tl9;oi{JZȰ. +w\`7ą nbû,0HP7hۥ:ESK15h;pvhuL_n#"J`,;`AiCW X5>Eau};S3mйߢcc!:bALƴ#om; F4*0?_ciT 䳮k̻g2k 3Pf3c+]>9!0<{~#1SFad>D3fB FrżSaŸrf\1p@谛roΧ~ ysqMh7.&?a[Oτ.`G +\^;fw# N4;MEս̄{ڊ:F}K1ض 5XXD&^LlD+Nrs뛆f[E; é)tH]LCʢE]tvAekoȵv|wMzW [B =k0oQ9*Dn>N&A| >eWE{4­kfbQ΃ +z4U)CNq(PnM,uRDce*Ri_၂_^̖6/ ^%ddUgm*.0?'b=^Dm/h,?e-p!.ʸ_Q@ l'μlmȾhw척^m +v v`rqTe +i]ڍT&BuArqPЖ_:9A ,' 5ɶ?E3t/o0Ͱƈљ)>`L1agn[NN8=I@=oMڌJ +eradqǶva@_kͨ&&n9gCZXڵ#ov$ [8vZga.YR a *%S]8j`'ӈ!V0`4KC2?x dFY  Z %>!7!FmUKSF+>ئ[@V#CCBaf6RU&W-V#Bɀ۪@d1\ Mb#{^c@&v6l)"sbzbcèXJ;{w@MVi.4O1l9p̞F}s=f)HxavG\y܉V(]M}uH#*tM(3"9375HJ`/F%k˧5l1s4uEW̗_%4Y%}0"D"|nY0j-fp.,Y6ʑlsl'N LzN`'&m-xyKrZ;Ҁ<":*^-^`d5y@"G(4X?(17%$Yfe*ʏ,:\mM#rih9uec'0]G(U6ak`YN.'MGyBI l#rb)e*80j@atnYo5kZ-GרhLlc>)(?LD68-G|i`FD-pf؄: 6D+IDZZèACtAc!#].:!leRE}D LjaÞ4R-;2&}`+24n͆8VeQ.mm}줈ieo0S +wk\(՛PXZo!ަ=d0;ϏX͞[ :~P% EYW`|$(!>ܗ-5)'u74yh H[=[rU]Njz{Vdt!s%1U}6ﰂw$D]vK bC.Yjȉ,&gcO1M?4a"ޠPjH(-#R ˦\E"F4=CIl#R5.6> CFJ;T7f +KH죮L+#db%>{S5WkkI"5rE1]60ZJ"h2@\ρC(]'k]ҷVsɌA& %oaTSj7%7P JHhhﰓŗsiΡRNYwq5LFvd, (k@M&+m1Dtٰĉ:GZ2Kt¹rIRt}JhdѽIvkQA3syLںyHTjOuO/?3<+S ϹƋU#q +)dx~='9M\siŗ-,{(Xinx'R`;tyxP-r }VɈƤ['1b_P|$1V&ڻUO\ ^L"]ubj$Y=Husͷ2]&6$RC#"/LmzID +݊ݣh]0'? A@:i})[%Ub-j¬ՏSs$疐GC{8v l)q@#o8bT֎CW4$y3 Pva^B(mK~ޖsB"ɲzTk{-g D&{8vUQH%% (Ujx.G6t]fj`jD\Y9hf*`=$o"1W^ +'Я'1OZ m/ 8A-[dBǹӔkB..X &aL*\zblNi8͇̈W4AoA# n:`- :z¾ʌ`*ɝ#J%nUnXLuVum)#_ѝ19±7pw d'&]/Ww˒{r4CY|:CH? 6<2ZNJ.j%* o4T9a!@KxG_=h;pDF^+LɐJtR'#aHb)S?'w10EHlHFDGxX h0D~' +95Fla3O hG$͵+,|ei,@1VucfU;h>e+?K&ޫ""{C_I5- EweqϩF ^=]黨eU? _޷r:MCP0++QFCi@ !;ѝ+qLWЖVph<9##ӛQ1Dx$^gZSj"&nH\Ipg{u;y-hu,6~i]zJ@7Wn@T"\ 5$_ūr3J/Q5whvL֍&uuv%mxV/͝xZH^?VZ6kf}7Z0+ lwS?9Ek[&&ɭFTZ,Vaڂ͗;v< Kĝ^WSLMIUT_92qUU ^9S $=šc +?EiM-*o/"Ln6瘇\N>4И>+5LhкVXi||S_SΊy3e/P>eh `\!¯fMM=帙X@oб;6Xuo2># U{Zg)UCg28Eo"A% \W;E:g>#%hy:;h"\Zꥒ8|, $R +9S`VeϹOT l*q'Az@8W6eG,F_$y0vpf|+" :>7`,PJz9doei JՕNKjjERwQ)p7h=kϟhȑQ7`_W%oN*XCE,~W6vo[hw(lCup<Esj=?/DB1OC+M cd)˼QjDZlBa[tes aRȗw JqzW飲ٚ&!h$!-t +|b{zO"DI8|L9IMͯDi5~,!1Ԗ h /@̮z7)sTSccj0w^ ]vCH/,5cDDr4$vwl; ~Z{tLNJKiMA2xX~*JyV,X'QgDjޡ e#`.01t:X~r=ll M{KDI"{ e Ϭy'GI5Y z+A7`U2 !\K(( >_~30:EO^` ON+id@q Lwwd.8Mv`&Mȅd}n:_\) vYE+{+´ J‹\/eBe((9"b/ L 40ڟ+^Bz|u*e Ë&< G,8 +HdZؓM@ĥؐ/NSY%Rw 9L(Ou^' 4NWV +ZxPD-'aj8VҢu'wj0kQkDPmFkQ  :F;{)`o!'Sz݃мǰ;Kifg*,L";LZJr<HԄA,\Q?ό9R̂&+ f'MP +aˊ" +Z[uL{(@sRtM{acW,ۋ߾Ӳ|tB0F"̀xI|!8Yz55i$!ǫATAI rA*El@㘽!J0Cx!۴g6Y.RLSSaJ=*iNM*n +!O8V@lKIi`>0)w=0tav+EOG[wՙӳضǷSݠ')%b20( k3| #˟jCA~K#0 af%G +Koou ,Va9eA +lprUsDa*[ Z"F91&0\j|WZtq4.ncfTR<ޓ6>Fķd⎇nM:O2,?wH6ҧ Z>5?^_R^ɴPq^[I@Tә1ӊist &W ~ٓ l4T]J'_і5f:K_trP +:'w+TnLULrmdt]);<%' l5:wip;`W( 3ςS|9O)2vw f 1 lpyA~uʃ7l=˯t,Rw0B[ux Pu{C"9{zRdB=+AjFS*5bHoTa( +,o +{ؐϹoOXg;\^~YGAxc0 $Y9! mbbq98p׎I`=ؕzQ&{@踬 w( 9Hfj&Ypk۝ۑvcGDxɕ +3*rv<-<^HFNJce܌UɾfWkru*[WRM﫚f)LdsAO1 +.4p<~>l7s0{RE wZy&RcX1O2}3ܻRۖYw_ޚލGĢ{tJ cxXĹS +lf&K8{ty,Rmŕ+PIIf~  +ž(;v~L:0HRAsL?1=UfPKYi8ᄬ)HN^nhzpuv#~P~lb>^: "B+Fi4R?B.iU*!Br =twѵOˇ<7%0 rUCdK?^o"c_@ŭ,i~5Eq0}J;Nͮ87O_eO$ ܙ:֩mw層*jiH&3##`&|z&7KqƔGhգJ=m$n.Rs4e2:TƐ\^dGz^9&=y}]%}K)?J)6~J|X R?q!$W0:C{d=iaW)TD@uh˖!;uWչ[) #b]j!A?n\,`7Ò:GyKyŸd.h)Wc/o,9=Z4qbr1J&@# A #-~޴ -H  %E!*Sut'!qyDb9@[ٹ/eLɕ=fĄ\-]gI:Bk~v? %ٮ}~\hm~练fR$l7U0'xD^ԯbCK*<CwAv'Pf_I@uiWwc"^~??u|H%VV*C 棼;ڑ3Cb .ảiȪi`ҤW'"xh~x!yD-eŧh[2H K=0c6v7/Pz9rӻt~[#m-}*f0MkkL#JԎ5jKҽ9J~i@d$ N8GQϵ}|y.7!HI +jζ'=GX:׋Bd /zOp+~F6V`WBX=9ŲBJ)U̥K9CDN +;)=`hu\+bj<`om؉;d݂mҕt55#d mRP):B~K4@Ul]}V%pIs i!F g^J{NL??)ٻJ?1[24Tz.JHTΟC0J^LgVzXʉvFroAbw8IenXE6Jm]Qiy ZC贮G#++O1颪ܹg0%4)K8,[N+󻘿ۤ%YZ;dr +G0ߏF /jMGΧ 1*SӔvEZ]v.NSY w}e{pZF+UĪXݣ+ Xϛf%ԔdLp%a2.y݊tZY O?4vϞQ"1 X|xuqng{,aBf6<.#1&oxhG%2ȭ-O&Տ.y{,bH;za~!K F?VUws:׺ؖd!DL\}v- +ϹEu^&yYSA_n9Nb؏;"LZzܣQTn͓]MB}e+5Ց]sK>6>n׼?o>vK04M\GGP C ^.lE]lZrwL0R89ݤqg!@1,ywPgXmc/9m̷z;y/S NO9kn|:VV'd{CVLǩ+R׹fR|'\cGf!6Y|F-ζ74u 61Zbˉ^UqNMEn3sbO#[fxCn%61JEe{Rn~;𸦻&'zbߨn')ﲙ縶m$&AZbͪQEis@lZ6/Ʋܒҵ}\WlUs$mŁ>< "UGZs5Peb:zy)BE^/<#V4b3ȅL<+K'ʑ6F7I yiӲTOl+_v<HML,z{C<\P*h!^!LWFђ\8y(!xS$^'m:¦!u*[3]?\^#?aa+QN~jv}H$$[-+!+q :BRr)R3;dL7BX25bUEp0R3r%XiIPܲg #<1%?,P~kBR߻]]X8QP!cm-EJ~\uJ*5-/?@-˭>)^#;{fSCKbK2Kg4eH˪|qE=jvlͶhO@pD=Xl҇>y0-ZGt{4-OLX36M|=+]dzF]~$7F?":)B@DZ걔1f%AX֘`?ź\LHcb18ƱY; tF(=2G>;.Rec!F5P3ݫ޽T Eܿspa)8_i6~al2gM$tޥ>T6Vx- o*k5^GX/eϲÓnc,[K;j-@WyBe6h!BbO`(JKp+soay} dER۱~G:C-,?D0, ^WEDP&-a6o?aG]=,aMQuu*yGYh:y52 #栒ǺTR.؂mR*vcJ䋹mE/GqPR喣.J1\}$PK&zu0='L(KPcjM [GǠ^ѧKHխ_ϵޜ$+RBq9O~06ǷHFŗ毇,fnhn.v݇AkzC{cl|EGխUiMVtbzN2r"k &_~o%>oF񱛮&gOۗzӔ~8'>o*Oۯ~w!KxdфnA[+`d;$b(*fO]o cٔLC{ :ovasme3f(WZRWOX};(۬<<0xaY&/L/RǓ،#uAQ9|֠[<"E-IP<8gD?gIc 9܅XJq{L:I:ta%HrEpۭ,$&VP5bwR"p!3'őI3WOp.RhgZ;B8,bx7yJ}h[sv7 ++fBlt1x@ަznz ?>]7-]hJi nm@@&=M K2'6n]oBr).",bH8H+G+KN^NIL ݆ҭl '})(% y*]2X}ބW' Nn[nxFi,VkN;:4<ޞIכ#Z["߇}+q[i#^֛PebN5;)z]fYxaw#o|X=ę1=}_(_R}>m/*]F{Z|j5 -7XfYyn3: +ˮC7a-6 6*~bj&V^YԻ_M +Mcڬ+icpa%o +\Ca7 g젗3a(XD A` +$_=!z-.oڒFnV6)d?O[/!Idaz-a쎡::fL_$*v`(0VPt춫5r? `JdGXDjn),bnFDa0Rr䊿"|}в%lKaD$v*woER.\|m0eH&-$ +XA5|(@AXۡC9gl'a# ``:?xsHa lRn)UX^;1fa%F8}-rpf,y'"oo$4ѼԓcƸ/$;ƈe{ w"6/yt}dA˲$4PDHw*Es<`-mR1A]T 8 qH&ۤZ|.bv؁@6CVbt*6MȆ# r` MV_sC6A{6J`xbwkd,L ^~C(EB羁)ƌ܂p 7Dhc6>1Ms~@q4[x{gc\^Jn^(]n1+2cx;Za#Dp[1"`-NuA+noxMU#&N?ji\2s}EXG#`ehYrY4MY5`|oPb;-v8)T*oNB[ubM$V h"k2e˅&],lpVrԍ,d=F%tntsfbP-gn*4yW+QU02b!S(f +)4BwvT|0|/Na:.͒Kmj`2q*Ju:Fb.uz#ޚfI_>_`h,W+)0:U 3#ljuѴHXJ] +A#&:Ӿ)N^*-qf qih>q{hTDOjB+e\Fi0B@h!Bi Q堹(t,:8@Hܿ`u0J +|4!ڈ`2-ԗ) 1G6-VNbׁ;!3@:|l@GLqD /+UP8I2ʐm)zQrӾmlɠ5 wc'%MHgY>Uv8VJ& 2ʚD.Ued@"^|e%2=h+JK&X@j't%8l tMU +b ]xdCUǨد+G㗍+yĥ&PND$B" +kB iHˏ}0N|qwW$i7ellHy&Aڨq!#{*ÎJh h0ts§ּ*o'%~Śsװn9 M a&ԨE2C1P}- +-uqqZ\AZ<ݎj@d 3d&dhxrePmv@+sA' +r5^|N3T# XJ39٨ IN/ đVDK5|t|Eq\h3 HAP2$l)5 Q.@Y.hE0kḮMj!]NV҂Gd]Zh 9g+!@ƢŒЦYy˶jg[caOBH I hV|+6 +թ~+vt/_H[@|c1ڈHDOۚ  -|Kzc|:ݙ7AIbk:QJH^ax,b[͢ѕȝs`=һ \ +ZOڼÐ'hh4Q^=WqgN  Hܡ}rDOd%CΥ;ZS)ԝPqa(fniBծ!\]3[-IK˥r^ZNtoR{l5y^8VJVWq2_.,N #W݉vVf{|ä(WqfF; q"#6KչUqPTU"*VUA댅,/&(>ijDQhSJMIHD,`…F`WXec.T%vSKx2Uн"-G&IBiAP0Oz${D3d( (3Rd4/8B]h6eHf \L^#GFB8L;{5͚,A.tH,K,0mFsdžn P[jJ+uy-I̙Qp8b!E=zxJ +T;߂yWra'tw +H UR_JǪ6c/ !ob4r +p!aD[䎈|/u8ŶKf.V=>#&D;d{*KL ٽX>} 5ǎ 5-#*V[͢?d lLK#yOտȀ}?-4S`~ubN$/u5hVXm!v^V4'bY ۻIU +}6c{8 DrCR!_%lݷRE&m5 []4GHpc35'ݤ* VՋoOIT`9(l Aw 4ĒmagN7a=؜i1~5 Q/„WOJp %RTGR(S-qZ'4]#Cwz#2ժ LM< /UvF'P/y1I8l0Mhҫ[CD4[&+AWdOэCnnn,ych^>}"Hr`-&1`DL *cy G˳)*WL%.+FOL\b1>E4 *M&j(Br[sV|PӿS薻Z(w%"kIl "}{ |D +`6/4`.OW q,$$S5/_T'^N5Ҁ3A[T)Bi.i x<`" 9؍iz + 9G c*1 HlVE3JM.p eA`Ke˒8+e%1D}5ZrQ*GN d)G yTp;!оЄ( Ts Y)rxoyrK!0!(ns,lT]nO,__iPy x. .SqǩEke@]E?tFߠ] 5aO+ kۥԼ1n+c"Pf[BaD~u98wK1cN&u*`dL YP3H~Nb]QfE0l#h/ "D*u]2{bPt +TBϊ"/VV0v rdrqQLxOw%P$1Ŗ>Zw< w7nCw/ƽ}HeV땏"rzU")ӿhQmf؊cN 6K3v~nRJ_Th.3b]{XRLLrǷlƨ`ɯ4۔W&z۲_:8OI-%!HZID~y މ'+h_X"p5ɢ T+ZшHn;,&:\SEA(΄벩pW[EkłA>E]&6]LS|Vg +}<\#~ypy}t0ĽMFb!W?05vQĩ:GW d6m"[-J`aH/VpƋ`"':'D8h_tkTp>OIJ|ƍI/Jzb.i#MNz>,X(c& +y/)d{;\/lɃWX}H.8#w.$ct~Qm9s}* +#g c2oh㻅E!l~r9vg[$)MZNLn1>,}ɥJK^ vlP$Oke +S؂e1f.)JA U`$dD~JØל56,5I{!8#W=jҋKKDFM &zb/xS72b!Pak 4es=^LZݤJnfƷu s:/ӱur;DT)0~0R ഘ$ѧؐ3-\NMCyxV?lUfrCWꤑ[$"Lnض(MllL9}4I.4_CNQ&EjDԤc9?"'#HJLGYC%,KW K66%< nKRL!-KT""g a?EurdaFGrbElNj[}&>`&8 8e";FiIaE2;ř"K?}v%Hl|Iy5}'6($qjbt(+.2m_d%?tgJ~DuIGb0阘_JY#e.hLZ:fR=b^UǴ4k$rHB4PZoզ-1O`u<$nOڟ' tr#NQN^>]x3Մ9"{;U3a]6x n1|IIJl~v& JȊsjkNٜdo˃l0#m:ȹYcco 'xCJX^*4#F IΗݭcL۶TDRMGfLK/5_x9HtctUoSȲz^g6ѦuKy2s{,::̰m9_Dʪ nNO̞0hl>eWn`δqC^OZvf\&XƄ=ii09EҴ1pwN%F1[ȏ5*,_4(E BC05MeW lVZf{.gCplk V1i"Lmqw!!pIHzڴj07&V;r-JW^>gOgV$i+Tƶ6`)IcXLq|>xxKam5M#p8c"}pӧu,y禫*tW{v,\fe jKK"s΢ ʅ*)249#v/$X kŖ.kL5yvO?F+ֶ$ُE,V2@iMbTQhwfi0:b@9;̫8GaF6zbT LA.K“)_I΅[%$M۪"i/zj3squ_hK\vB`0+P +<}Hxda,"#sRy5߱(NWk8S%жTuG͏"= BNӤg2\8g,@4ƕ;ik31XM<>mAHre 7q{#niP:u+ ],gjtDD'Vw4KHDO-i{0ch覨"78Nn4<oU8Q yF^Y +>Hl#k*aL%ZNZ/^WRǝ_ W.sJMEOeTݱ'HsSjT%+ È]?vVRW ,Ȟ; u|ITjcʉ|HP&kzba`:Tv䷠wq[y85DtM{d'B>_ HvS_uX]BggL2E`|'ArKTD5Oĩ wX3}SpgPu&s2ZTIE+}:c:H>}Y9w&Jo'$. xUQct ]~s&D^[?Q%YyrڪUIDFkF2NƐ4JȺT'*[ˁq0E _"M%&a.?hM[GO& .j\IW?Ak=U8Ϝt+dVS&t?DHjq^`#w=" +ڣaRK?D|NL! [Z)9 (]\뎭(Il(e xĪwX=H"m7 + Z­ÏkA mVwbߓv 5tؓ,jW(ʁpXL]|^b7 IbR)⛤:]GQxsCYl91aH"'W瀤1l81WM2VFG4;B qV')!ٌpCŘ]GOLx!{ȉ2BXWf!5> Yc4qc[O/! #p%׎|ZȐ*h!s=#=cU\hv+3I MOȊ6c0Zu^$SzEbqT߇!dO"I>w[w57Xa +enGq+IҌͅl ++KX($B!mظ jL]) TW$?&fNWc&5/I%$\ҳ$t\w18`6g +|$`;b Ѻ=vbj +X|:3Ɉa&BwbOku%fjԧT +6[cO-5X]KMFF86R7VIuOH$O#B~uT:1(F5ٰм*ot5v ?2񁨩>%!jZ4[b۞TfUF' e58xcu_bbo^?O\"fdPΤd$q< ʅ(+=s1X!n.u69K!8:LԮaH!8 E'}Ҙ{uyBl +A?Ko`®ĔK)F|.ļ#!q0P'"VK*WW.lrh“-b mC1Vgn%}3Nz<X6&TMe'yBib> cqnA'6S(UM[BOq;)?5;Z"JW(pkRXr mnӁCf 6)iRDQYIY5Q{9NK\4蚝,d.f=dh(V5J\z@PCġߛ2AƼĞʚ ̯oH kziW=WRSg]S.{Œ8cf9HXE\X G,#&[Yv'͘JQ;`:5e''B){I-5Eg8)<ߕf9+Yq+tNKvuB<9q+'iÒ ^z*)w2t& $:e֮uHcijF}*Y'6tӗ ֨PM(.ӁRVlY*zjn3N(>.:5'ZbuIvD  /]%ތE>:?[d*Ր}-h{1'[G* 0鑣Pn8= +Os~x`#R!ԤVSە5s:h?)fC1CnH7YޫwlՂ:hnƮȾ̲:sA(֔[%tr^[ŧ֛꙽-ٯC]$_/4֜򀞿F@ ;0k}4Vq٥nKBy&FɅG 4rtR3Gl50t$*`æ^=3Mkl=_ 5aׇ+.h,&ئsL(͒?2yffIϣ?9"ݝuL1&L-X%vӛ18 ԻQVfׇEC{eG{'g>Rd0WisTԦʗɼD{:OX?mcJyX {\@0Xiչսs?]_#WU_# qy4}`yCG6#"'}[ZS~;/4Jak1)}ܟr?.LBHjZi@cRE&^ +aGey"jhETdH$#sq.*V#R[lp ;&X㲎L./6ME`>ڬr(_ 蓼κ>4PKo0s):0K14ϑj#C>7qpVcHP!tMXE"]juL=8MUUe"h=xd<5 hiRv]jEeRx'/(k|)l# +˕&zMB{y[{U(Պ1=-C=DRl 3P[H:#@8e6M`,'m /ex0eO[RF-o5>M^:&nRCeY (1"( cf7~V5[#@ٌH_劮6i픓P#XewùXo5:O5P>H apzB+~uH&؎oKN$jyxF*0j4K)ȫϔgQK |Ttj06{e57)ݵxql._].i)/d`hOsD-bl(F񩃭MCîS4!J5mjGXE]2Vby&8*GZ`Vɣ<%EDLEXe" Vie ^!잶,t 0i;vmJ,UO-m[Q-I'vR [EջOcdbۧj&U')%1zr}v?ri`i" i +R$MW#,UnjqgNFmK+э:Θ3)a,")Z7]H d6#g٨EO<25Ob.5jX׋@#]b\JgKn&F&JtUd(8Cnn-R@lh H Oq+j6Eh)~um`4]r0?E|"1w>GIXc :1,|V"Q\YNJKMty}Gb%u uqC?PbCJd*ss[Xϲ`GS|zC={{=,툽Jnj"A,/̶#:_5GZuXQ2HYү.>SSw\5+`nuZbT{00 5 .猁TzpO2/rJ{KϪ(7gJ|2ؤ,-W29pAw[@qܱqL0cCH5Hڑ!q6`7s#w4:m`:1xg 3B e?gh@yX]kG2KW'5iCO"yQ9fȓ!TH얮$ˆ(YLmZ dZ#MXFZ%}[T̊,G.O 'r'*R0ִFBȡUm8:xwb(fIҲ-uL.r͡Ӫ+޲2F:Gڐ;m`T_H¿W Ҙ xQ;;%~W~{z$N.efqQ#pD7wF <:=}lw1}j0H6UIYk+)O& >W~AU`P ]S]xu]rq(O9fo1 'yeS[G4SuO4j#x_4,XImx:4&>R%G"-4Dz%^ +aWB-!x 4`!8K;eʔG"%==`* FB>q&I!١_j芭R>3H+KJCnbkO&<[Z:Ln- 17R-H{ϻs1'ى=̄ 嫯gxf#NT^G uV` utbO^}旳~KI)SzM/ڑb3PH%{"zO:*鵾?~yZY>"KD=y`1@JSUˑ~ۓn+^y@[џOg3lM`M.ozL K7O5p[uIV"zJqޠ@a\u:ԧڋRj !T1HNju :"Ybqeߦ$jVY8cJ41XzHKn&-NČ[LMwC=u=SH{(UG3fEXގed*/rQAiOm^p} L׻XR7cx\vOC [7vqđC'ˈ[9t !}H^=%H2}d7C΍c 98NUpG^r81 ܂^eQĀ$ԷU2;ӞnLzV=nEi_SPQ.V_.|5ōe|VfyE鑔.W'V=Jҙ|QRU\̤]R`gbI*.IF%jr(c,坆:Kr[ITUOy :]wZ_􈈔T6u ɳt֥ZOy-iC{EJ}"LmuWz*1xK~oC4x|߬pq>f;#6B!vY7#0g.vW9A8k^(3f4 KQ߷x7~*o?iUĶe׷|SwUX҆ut0"A}AIelΓ`Q9d}F*_fD]ņ}o`8a3IL0CrG5]!C!ؑ: v/˽^~$) !i2& +y l^~,ioCdﱣaʾLZq2U!/^n稚ɑff)@\bS RwCZ[o)g*;15z%oweJ9Ȳ\Zoт$vF3n0G+[/f?X*[ƫB:^/7nf׾S$&T ulD3Cx٣Ǎ:?A*x!.L8z?Kj/q_˽%ȦL4(yd7 w껕īhjtFDYSX6sMc"ˁ!B'g,L(9oW/#2B?3I]5p) WY2 @AMQy#e,P,.O0'&ª2 +'lZ+_}ۚ cp};QSPm!Tu֩e} Bx |+lDn@;&^a_av,^a>tw#x72+u`PB02!nwJTADMRjS$_exzQbuiM2$ʎxvCLJ~ˍ>:3qREig79!yѽ$boCʡd:j^50yo2 +p`TfbhnG4EX& _e\]]A{2@nW;=[=۸Xv/{nPo0O xE{0%Cx#umJI9lˊa!Miiߌ Uo<GcZa +4,)ll]`+mGaEe, {In胣ocǛQ Z풅WbHAFAaKȇ4x;1IJʓ~߈5gCJLKaSRD|C]3,礫M"A˒[6USa-O .>MW9l c+c&?gxTR r0{Dױ\Stc1~hH~?c\hG;m.;s?y,_0Ъ4V#5zHy"R[MO=yqa.D1i3 3ߢj-iVp_Ո/1uQGQJODmcb45‚hrH,zZuϱ۟֝?~v'W܉'DOO褍H }=L +endstream +endobj +185 0 obj +110989 +endobj +186 0 obj +[184 0 R] +endobj +187 0 obj +<< + /Resources 188 0 R + /Type /Page + /MediaBox [0 0 226 173] + /CropBox [0 0 226 173] + /BleedBox [0 0 226 173] + /TrimBox [0 0 226 173] + /Parent 189 0 R + /Contents 186 0 R +>> +endobj +190 0 obj +<< + /Type /FontDescriptor + /FontName /EAAAAA+mwa_cmr10 + /FontBBox [-43 -250 1008 750] + /Flags 33 + /CapHeight 683 + /Ascent 750 + /Descent -250 + /ItalicAngle 0 + /StemV 0 + /MissingWidth 500 + /FontFile2 191 0 R + /CIDSet 192 0 R +>> +endobj +191 0 obj +<< + /Length1 6388 + /Length 193 0 R + /Filter /FlateDecode +>> +stream +xY pי_-KaI>tXmuX!˲-.9|>[9JҐ4I3lɲ)mnI#L٤nt6#IB,%H{]67i-[N#oX5{Rk +\=;V@胉خ&(o%+'f/"3s[q>M--{R_3__|%ur~naA PrQ7>-gFdPeXv pkW^ϱy2ok 4(<,Ll-X A D !@-X,;]aϱ$+cfdtAfEUyr?w|Sxpw +\x +Wx(H̡L#((KBUD:mF]*,P*䂌XxuXNvmzt-e/URgHGџ4y=nP5^OCF2`]&#fL2kK鰧,cS}۬ DqX&23mVsXoNofhy_:bm7>7CI14z=㱁 +:3tGjrg|gdh{ +؎Sv0XIF!W+DSILit3 kPXFYSX:'^A b(5 bm\S1{b]Xo[&_u[^yihkm,Uu57<kv#ͣNbZTy˻(`A)\B[RƂ}E8c7L +2 +M! iܞ?jaU[%[If'}3μi}JeLNb95G<5(`KU ,!5g^ZuW L=u2@ o-ӗp}X--qJ@b6+n.lA=XjrJ8A +RNCw۟t‵͛L^Mi/)B4jm?1jsǞ.}eM}ϴ1gZ bāRДPQJ-]Y!sÁ 9 8tm'5=kѩk=5߽R_x+}Mǚ5E]#wG z=ѨgGL3S&{{]x*?."Qpzp6ɉMo+( As')#S&^#*I}C=d-hDڎ&-/3ځGG$|ph퉬lqe+_?VB0Vuu*NI]*RFS؉P +2lau,qHIֈwu/}:vINm@֖!4QBjs# f3L4޺A'鯢VA ./TZAVeSI +PMZIA@krf,ڱxni"hV!~]!!֜ɐWg-mp[oPH)xl,zc87o?;h?F^aʾ_L}Ӌ; +KI91E橾h%]6rQdYM! ,fI}}>w]1P!"VM5IzDI!>trޗʾ\N.~2gvI_Sҵ3ѵ{NST\HK$e+䃢bCH45~Dl{t3h2[({Y&3`+( P v%B>::{YOB/W/ۡ)Zk+7LF)S`,F,4vZ` +B9R*E,9>"X9@`sJ+S25G +nWMm6ks]omV從?=D_ouD\MM3ǷeUqױcM ؾZAcv~>/ǵI]'hI/^T@8Uq45&PU94#(Fq5kUS=hFQ͠;)KI+"0h͋PJDs'VW[GjZ=F8Me ^.?/^PG̗֌)]wnb{h皡|oNS1*Cxz`1Zz;ۼ|p:Kп,;oRpDKMb|s)*=$g,)χ;Q)O1ڜm]-Ӟ=5#2. .s/o(9~uyspԧ%D%aAl29-SU`ɔNCX%H$yĜ3MgS|k5]ڡء +>:=X{ODl|4a~aB$| HEP*LLc,N#sĀn4=݆3aDÑ jz~sW}ފiG-~/desi{Ѡpߗvw*oz㾖O:6zNϲPȊ^PW\lEi9Kn{}[sM>=,U} ML*uIZe"ůȉy1@;PpP%C#W5~8="nNjK5Ik}m,Vupk 6Zcu}/'M.?؅9HF)VsbUR +z#.%`xj)E!XfgPEP}$lpww*d|iLY4Hp2=C/# ziΊ&]3WlIJ 6 mBCȄ/8.* Nmb?^8/Eh3p| uMYG: e)Kw9@y̳'O>Oi +u8lGF@4K h%OSPHZ4[4<͂:`! `v^Pu=fe1HAz-4 ǖ_`'`Hm"HYmAƱ=w G~i͵ngR+(LJ=뤝ƱNj}s}'[:-A%ZY֧f |KR`I/;0>櫫Rk֧,]s{cnff|teo 7En1ף01:Id.'}Ljߚ{1aB=@;m u}HymSTTkR^vx]/sc( +endstream +endobj +193 0 obj +4720 +endobj +192 0 obj +<< /Length 194 0 R /Filter /FlateDecode >> +stream +xk`edX*0[ +endstream +endobj +194 0 obj +20 +endobj +195 0 obj +<< + /Type /Font + /Subtype /Type0 + /BaseFont /EAAAAA+mwa_cmr10 + /Encoding /Identity-H + /ToUnicode 196 0 R + /DescendantFonts [197 0 R] +>> +endobj +197 0 obj +<< /Type /Font +/BaseFont /EAAAAA+mwa_cmr10 +/CIDToGIDMap /Identity +/Subtype /CIDFontType2 +/CIDSystemInfo << /Registry (Adobe) /Ordering (UCS) /Supplement 0 >> +/FontDescriptor 190 0 R +/DW 0 +/W [ 0 [365 500 500 500 500 651 391 443 526 555 555 443 526 276 750 443 276 916 500 500 276 388 555 776 276 500 ] ] +>> +endobj +196 0 obj +<< /Length 198 0 R /Filter /FlateDecode >> +stream +x]j0E +-Eg!PR +^A~,SC- ^+Tܙh&VO&A48VkOȿe/.r2NWX +MP2}q ?]߬"]mbGZot}U"P)'K> +endobj +200 0 obj +<< + /Length1 1968 + /Length 202 0 R + /Filter /FlateDecode +>> +stream +xU]hWdj~VlTdc.JI5%[ddv3l\@%VRP|"E&yhb +Eh+BK>(g&Z[sιw=  w#ʡOfH#9iodp?*M7ߚ.,L|+?Js9NFHޞ#EVɛrŹvd䪂5I\8Yێ~di([fwHpgJVyn-4c/͚%KF= =+6q*>yx'2Qa'؆HU_um8"oBYGa1>2.RO]Fq#1M ֆ낵5U~(LB'emꈪ,wȼhs"LJUNUY} vMJI9#k4Jˆ]J&GF#Ԗiu.r}аqp4bK#94*w[;lv#̙bw)*9*_Ӳh$m^7㚪 J6/kˌ.2lAvVb !y-hZݙ-Q0YۜفΰHU!+W4Jb9$%i5f KOUȤtJ7UUU:}πs.H.?ڒ-2GGTIsaL >nM# EB3z)$|TXnnt1_ ;β\;r70ŭF$$KS&;=վvn~;uIo{Q9 FG\ ѽ( ]|?+ObTSa0OzQ˾i&֐tr0Ca}aBՋY1ho8Uz`PMɣ@x1zVLT\]?i'leW2i4)FYM=.w$Pf<'+$ib$J1PVia6?R> +stream +xk +endstream +endobj +203 0 obj +9 +endobj +204 0 obj +<< + /Type /Font + /Subtype /Type0 + /BaseFont /EAAAAB+mwb_cmsy10 + /Encoding /Identity-H + /ToUnicode 205 0 R + /DescendantFonts [206 0 R] +>> +endobj +206 0 obj +<< /Type /Font +/BaseFont /EAAAAB+mwb_cmsy10 +/CIDToGIDMap /Identity +/Subtype /CIDFontType2 +/CIDSystemInfo << /Registry (Adobe) /Ordering (UCS) /Supplement 0 >> +/FontDescriptor 199 0 R +/DW 0 +/W [ 0 [750 776 ] ] +>> +endobj +205 0 obj +<< /Length 207 0 R /Filter /FlateDecode >> +stream +x]Pj0+l CԒX}q z0h[lE^X gBpjV& +:G:g} +endstream +endobj +207 0 obj +234 +endobj +208 0 obj +<< + /Type /FontDescriptor + /FontName /EAAAAC+mwb_cmmi10 + /FontBBox [16 -215 882 715] + /Flags 33 + /CapHeight 0 + /Ascent 715 + /Descent -215 + /ItalicAngle 0 + /StemV 0 + /MissingWidth 500 + /FontFile2 209 0 R + /CIDSet 210 0 R +>> +endobj +209 0 obj +<< + /Length1 2240 + /Length 211 0 R + /Filter /FlateDecode +>> +stream +xU{lSU{iF.clh -SBHڭvV6lQ45rY ! >PH$HLԄ5wߧ9~ ADh@-U+?᱑zG' ] ?@ȖGL޾WȦ|cc=)s|l<1;6WTF[/?&iϏ3'.a/YSxG(!܋ G?"؊[ kЅqcIǶscg_)~IWJ_KKҀX/s!6q_hZ;ֲF\%_ sxiSxԽxIK#0i}nL";,Kʷc )&R~7Z\[S]r.pm\,{XQݪw 2cVꌲ?TЦznlЀ`b&I=nˆVt9~"uS; f'i؛u;o5ΨҮЮ\ܞf87k%x/UUToӲhL3݆S4-2a%<Ѐ!)ZQnSFH-&4zXFLRh^M4\g510{Y>!3b0] OP&~^=z75m*z:!/2v4< 6ɃRiF;M(]$zrܮ$8~[U#eq^zօ*ĮjZR&5 *ka+Qȗ +U MpDYSjxuuV-jnfkVe{`AMiZRZk|l=s*M6f1;?yg#BTrW zp +3_ :X5 L:?urϞcC#1G }yjc@_dE.^dGcO;BB/=a_Z2 "$X|xmwfߢu?R-kcwfM`v-zeෂyZe3t:yO܆ńP]XhT[9"`g;X$%GY6_L*%kΊ21C X@%X"cE,9Fs#1oHaILޮ$o+~IϥLUN +BfG4E(*HsF:[β'(Gqfo2TK-FLȓFL[L Q)G4;v`<5W[e05=J˛}r>K&>yc:-Gi99%o?雳}ܓp6N M^yK"H%`?eH#pP&67B4-bdZ9O *>YZj>?n`ZxV1 *.n25ZYahy#*EjE%{~j +endstream +endobj +211 0 obj +1548 +endobj +210 0 obj +<< /Length 212 0 R /Filter /FlateDecode >> +stream +xk`p +endstream +endobj +212 0 obj +11 +endobj +213 0 obj +<< + /Type /Font + /Subtype /Type0 + /BaseFont /EAAAAC+mwb_cmmi10 + /Encoding /Identity-H + /ToUnicode 214 0 R + /DescendantFonts [215 0 R] +>> +endobj +215 0 obj +<< /Type /Font +/BaseFont /EAAAAC+mwb_cmmi10 +/CIDToGIDMap /Identity +/Subtype /CIDFontType2 +/CIDSystemInfo << /Registry (Adobe) /Ordering (UCS) /Supplement 0 >> +/FontDescriptor 208 0 R +/DW 0 +/W [ 0 [750 639 ] ] +>> +endobj +214 0 obj +<< /Length 216 0 R /Filter /FlateDecode >> +stream +x]Pj0+l ťCP' K+GPKb-ƅ.13ð:g#ycc&B +aѺA[wķd(DqpXz ;@|iӫF_h/!.B=t_~)'>N'95 Ԍ- t#2UTMv77`S6FUBeY+쒷qDT QJX9uxl5U|~}@ +endstream +endobj +216 0 obj +235 +endobj +217 0 obj +<< + /Type /FontDescriptor + /FontName /EAAAAD+mwa_cmmi10 + /FontBBox [-34 -250 1047 750] + /Flags 33 + /CapHeight 683 + /Ascent 750 + /Descent -250 + /ItalicAngle 0 + /StemV 0 + /MissingWidth 500 + /FontFile2 218 0 R + /CIDSet 219 0 R +>> +endobj +218 0 obj +<< + /Length1 3164 + /Length 220 0 R + /Filter /FlateDecode +>> +stream +xV{lS}8ľvl6)8N@Ʌ8qCCU TZZt!&h(VmRQ:m4EcM+ :&ev=ν==@Gey@{gɚC@F'r2t,{pX@ +\Τ呱M=Wu"$?d~k@!>Psr܃rU6moeks ar.'Σ|:=,Xa:>1؞wM܆8u Žhy>βg0gy1,<߇x6BHA'iۚj:w[`b~~^d>fY Gf m}B,姚r#&z'K +?a ށ 98 o||qcp+z> ;ЇwCXɚ6l2V2NXx a~׼K.zZ(I])A$C^)T]~] +EB7JBG{Aa.YY緥Y;9Q(.Y-)Cak֔wĵ=_o]ڙlq/lo?ǰ`T':!'%%(KZ"I.PTq%. ENb*gpPa] .i\\bhBW&)z/ HĒE\ +nLX|[J^JnDO^E³xN > +Pc"lI[pc[)H4Kc/ijtIJ(4W ;?I2p5 4Fv`C< +aԵHm:eSOquՖr&Gd# @6Ok> +(ۚprx 96rk8 <'j L\'?l%\Ha L;gh-TpzJƎ0MYFkVnI`;,sgЄ`+xI[QD +ϯ(uUgCD5Q)GLJ&\AKX@}G*z){d%KHpŌ3]35 + +_躯 +"m|4N[^Pm5}󧴣`r,B_\E^Å+tut +Ō4hM1;emxTpT?n 7^["} nmn?pGGiC έ#)U)Mu0UZ?KIxv޲@ktyYyLxk?~'n8uIg@3t'==ßusWvxj6iiΑ 9 `}a}xkC"|@kik-s7i9VtK5>Ta 'bZgU8I4ez=ZFt=s?jxe\%yb  7;`kx=/2i5QHqb=FhUF5 :_5TMQ aj0z/oh[$\\ I6Z}>iuVL&a%'Ep(XW`£C -_gٳh[ UG_*vZ@KP%M|c]+4I9(Fn/6 +A%^n<~VԓH S-%L#/af[¸q&at(])j%LO:KF~ćJZ s_a0ci` mE,q"ɢjau"X6Uاq|V,UKs򰷤zZJcі:zW\)#"jv889>$@{{WLz'tf€:mJHO'g#@P{Нߋ|6==3(9EЏV$gݹx^ݲ8m<-1U"^cX,| (>۾)twZM3:Ls/x,J1XѱWy<a +endstream +endobj +220 0 obj +2211 +endobj +219 0 obj +<< /Length 221 0 R /Filter /FlateDecode >> +stream +xk```Pb +endstream +endobj +221 0 obj +15 +endobj +222 0 obj +<< + /Type /Font + /Subtype /Type0 + /BaseFont /EAAAAD+mwa_cmmi10 + /Encoding /Identity-H + /ToUnicode 223 0 R + /DescendantFonts [224 0 R] +>> +endobj +224 0 obj +<< /Type /Font +/BaseFont /EAAAAD+mwa_cmmi10 +/CIDToGIDMap /Identity +/Subtype /CIDFontType2 +/CIDSystemInfo << /Registry (Adobe) /Ordering (UCS) /Supplement 0 >> +/FontDescriptor 217 0 R +/DW 0 +/W [ 0 [365 831 680 612 583 276 ] ] +>> +endobj +223 0 obj +<< /Length 225 0 R /Filter /FlateDecode >> +stream +x]Qn +|VRHTrCMD!_0iV%0cƃmX=uZy`Έ=JKY@pR:+JJ.fn3m8wz4P%\`x&̀ q7')=hZ3j9PK}tΝ $sH3>7P.R H\,踞0>k:e `BE@y^?&T&$8 +şhyMRt =sQ+u{S,Zȱ +endstream +endobj +225 0 obj +262 +endobj +189 0 obj +<< /Type /Pages +/Count 1 +/Kids [187 0 R ] >> +endobj +226 0 obj +<< + /Type /Catalog + /Pages 189 0 R + /Lang (x-unknown) +>> +endobj +188 0 obj +<< + /Font << + /F405 195 0 R + /F407 204 0 R + /F408 213 0 R + /F409 222 0 R +>> + /ProcSet [/PDF /ImageB /ImageC /Text] + /ExtGState << + /GS1 2 0 R + /GS2 3 0 R + /GS3 4 0 R + /GS4 5 0 R + /GS5 6 0 R + /GS6 7 0 R + /GS7 8 0 R + /GS8 9 0 R + /GS9 10 0 R + /GS10 11 0 R + /GS11 12 0 R + /GS12 13 0 R + /GS13 14 0 R + /GS14 15 0 R + /GS15 16 0 R + /GS16 17 0 R + /GS17 18 0 R + /GS18 19 0 R + /GS19 20 0 R + /GS20 21 0 R + /GS21 22 0 R + /GS22 23 0 R + /GS23 24 0 R + /GS24 25 0 R + /GS25 26 0 R + /GS26 27 0 R + /GS27 28 0 R + /GS28 29 0 R + /GS29 30 0 R + /GS30 31 0 R + /GS31 32 0 R + /GS32 33 0 R + /GS33 34 0 R + /GS34 35 0 R + /GS35 36 0 R + /GS36 37 0 R + /GS37 38 0 R + /GS38 39 0 R + /GS39 40 0 R + /GS40 41 0 R + /GS41 42 0 R + /GS42 43 0 R + /GS43 44 0 R + /GS44 45 0 R + /GS45 46 0 R + /GS46 47 0 R + /GS47 48 0 R + /GS48 49 0 R + /GS49 50 0 R + /GS50 51 0 R + /GS51 52 0 R + /GS52 53 0 R + /GS53 54 0 R + /GS54 55 0 R + /GS55 56 0 R + /GS56 57 0 R + /GS57 58 0 R + /GS58 59 0 R + /GS59 60 0 R + /GS60 61 0 R + /GS61 62 0 R + /GS62 63 0 R + /GS63 64 0 R + /GS64 65 0 R + /GS65 66 0 R + /GS66 67 0 R + /GS67 68 0 R + /GS68 69 0 R + /GS69 70 0 R + /GS70 71 0 R + /GS71 72 0 R + /GS72 73 0 R + /GS73 74 0 R + /GS74 75 0 R + /GS75 76 0 R + /GS76 77 0 R + /GS77 78 0 R + /GS78 79 0 R + /GS79 80 0 R + /GS80 81 0 R + /GS81 82 0 R + /GS82 83 0 R + /GS83 84 0 R + /GS84 85 0 R + /GS85 86 0 R + /GS86 87 0 R + /GS87 88 0 R + /GS88 89 0 R + /GS89 90 0 R + /GS90 91 0 R + /GS91 92 0 R + /GS92 93 0 R + /GS93 94 0 R + /GS94 95 0 R + /GS95 96 0 R + /GS96 97 0 R + /GS97 98 0 R + /GS98 99 0 R + /GS99 100 0 R + /GS100 101 0 R + /GS101 102 0 R + /GS102 103 0 R + /GS103 104 0 R + /GS104 105 0 R + /GS105 106 0 R + /GS106 107 0 R + /GS107 108 0 R + /GS108 109 0 R + /GS109 110 0 R + /GS110 111 0 R + /GS111 112 0 R + /GS112 113 0 R + /GS113 114 0 R + /GS114 115 0 R + /GS115 116 0 R + /GS116 117 0 R + /GS117 118 0 R + /GS118 119 0 R + /GS119 120 0 R + /GS120 121 0 R + /GS121 122 0 R + /GS122 123 0 R + /GS123 124 0 R + /GS124 125 0 R + /GS125 126 0 R + /GS126 127 0 R + /GS127 128 0 R + /GS128 129 0 R + /GS129 130 0 R + /GS130 131 0 R + /GS131 132 0 R + /GS132 133 0 R + /GS133 134 0 R + /GS134 135 0 R + /GS135 136 0 R + /GS136 137 0 R + /GS137 138 0 R + /GS138 139 0 R + /GS139 140 0 R + /GS140 141 0 R + /GS141 142 0 R + /GS142 143 0 R + /GS143 144 0 R + /GS144 145 0 R + /GS145 146 0 R + /GS146 147 0 R + /GS147 148 0 R + /GS148 149 0 R + /GS149 150 0 R + /GS150 151 0 R + /GS151 152 0 R + /GS152 153 0 R + /GS153 154 0 R + /GS154 155 0 R + /GS155 156 0 R + /GS156 157 0 R + /GS157 158 0 R + /GS158 159 0 R + /GS159 160 0 R + /GS160 161 0 R + /GS161 162 0 R + /GS162 163 0 R + /GS163 164 0 R + /GS164 165 0 R + /GS165 166 0 R + /GS166 167 0 R + /GS167 168 0 R + /GS168 169 0 R + /GS169 170 0 R + /GS170 171 0 R + /GS171 172 0 R + /GS172 173 0 R + /GS173 174 0 R + /GS174 175 0 R + /GS175 176 0 R + /GS176 177 0 R + /GS177 178 0 R + /GS178 179 0 R + /GS179 180 0 R + /GS180 181 0 R + /GS181 182 0 R + /GS182 183 0 R +>> +>> +endobj +xref +0 227 +0000000000 65535 f +0000000015 00000 n +0000000145 00000 n +0000000197 00000 n +0000000249 00000 n +0000000301 00000 n +0000000353 00000 n +0000000405 00000 n +0000000457 00000 n +0000000509 00000 n +0000000561 00000 n +0000000614 00000 n +0000000667 00000 n +0000000720 00000 n +0000000773 00000 n +0000000826 00000 n +0000000879 00000 n +0000000932 00000 n +0000000985 00000 n +0000001038 00000 n +0000001091 00000 n +0000001144 00000 n +0000001197 00000 n +0000001250 00000 n +0000001303 00000 n +0000001356 00000 n +0000001409 00000 n +0000001463 00000 n +0000001517 00000 n +0000001571 00000 n +0000001625 00000 n +0000001678 00000 n +0000001731 00000 n +0000001784 00000 n +0000001837 00000 n +0000001890 00000 n +0000001943 00000 n +0000001996 00000 n +0000002049 00000 n +0000002102 00000 n +0000002155 00000 n +0000002208 00000 n +0000002261 00000 n +0000002314 00000 n +0000002367 00000 n +0000002420 00000 n +0000002473 00000 n +0000002526 00000 n +0000002579 00000 n +0000002632 00000 n +0000002685 00000 n +0000002738 00000 n +0000002791 00000 n +0000002844 00000 n +0000002897 00000 n +0000002950 00000 n +0000003003 00000 n +0000003056 00000 n +0000003109 00000 n +0000003163 00000 n +0000003217 00000 n +0000003271 00000 n +0000003325 00000 n +0000003378 00000 n +0000003431 00000 n +0000003484 00000 n +0000003537 00000 n +0000003590 00000 n +0000003643 00000 n +0000003696 00000 n +0000003749 00000 n +0000003802 00000 n +0000003855 00000 n +0000003908 00000 n +0000003961 00000 n +0000004014 00000 n +0000004067 00000 n +0000004120 00000 n +0000004173 00000 n +0000004226 00000 n +0000004279 00000 n +0000004332 00000 n +0000004385 00000 n +0000004438 00000 n +0000004491 00000 n +0000004544 00000 n +0000004597 00000 n +0000004650 00000 n +0000004703 00000 n +0000004756 00000 n +0000004809 00000 n +0000004862 00000 n +0000004915 00000 n +0000004968 00000 n +0000005021 00000 n +0000005074 00000 n +0000005127 00000 n +0000005180 00000 n +0000005233 00000 n +0000005286 00000 n +0000005339 00000 n +0000005393 00000 n +0000005447 00000 n +0000005501 00000 n +0000005555 00000 n +0000005609 00000 n +0000005663 00000 n +0000005717 00000 n +0000005771 00000 n +0000005825 00000 n +0000005879 00000 n +0000005933 00000 n +0000005987 00000 n +0000006041 00000 n +0000006095 00000 n +0000006149 00000 n +0000006203 00000 n +0000006257 00000 n +0000006311 00000 n +0000006365 00000 n +0000006419 00000 n +0000006473 00000 n +0000006527 00000 n +0000006581 00000 n +0000006635 00000 n +0000006689 00000 n +0000006743 00000 n +0000006797 00000 n +0000006851 00000 n +0000006905 00000 n +0000006959 00000 n +0000007013 00000 n +0000007067 00000 n +0000007121 00000 n +0000007175 00000 n +0000007229 00000 n +0000007283 00000 n +0000007337 00000 n +0000007391 00000 n +0000007445 00000 n +0000007499 00000 n +0000007553 00000 n +0000007607 00000 n +0000007661 00000 n +0000007715 00000 n +0000007769 00000 n +0000007823 00000 n +0000007877 00000 n +0000007931 00000 n +0000007985 00000 n +0000008039 00000 n +0000008093 00000 n +0000008147 00000 n +0000008201 00000 n +0000008255 00000 n +0000008309 00000 n +0000008363 00000 n +0000008417 00000 n +0000008471 00000 n +0000008525 00000 n +0000008579 00000 n +0000008633 00000 n +0000008687 00000 n +0000008741 00000 n +0000008795 00000 n +0000008849 00000 n +0000008903 00000 n +0000008957 00000 n +0000009011 00000 n +0000009065 00000 n +0000009119 00000 n +0000009173 00000 n +0000009227 00000 n +0000009281 00000 n +0000009335 00000 n +0000009389 00000 n +0000009443 00000 n +0000009497 00000 n +0000009551 00000 n +0000009605 00000 n +0000009659 00000 n +0000009713 00000 n +0000009767 00000 n +0000009821 00000 n +0000009875 00000 n +0000120942 00000 n +0000120966 00000 n +0000120993 00000 n +0000136192 00000 n +0000136053 00000 n +0000121191 00000 n +0000121446 00000 n +0000126286 00000 n +0000126264 00000 n +0000126384 00000 n +0000126404 00000 n +0000126889 00000 n +0000126563 00000 n +0000127316 00000 n +0000127337 00000 n +0000127589 00000 n +0000129001 00000 n +0000128979 00000 n +0000129088 00000 n +0000129107 00000 n +0000129498 00000 n +0000129267 00000 n +0000129810 00000 n +0000129831 00000 n +0000130083 00000 n +0000131751 00000 n +0000131729 00000 n +0000131840 00000 n +0000131860 00000 n +0000132251 00000 n +0000132020 00000 n +0000132564 00000 n +0000132585 00000 n +0000132841 00000 n +0000135172 00000 n +0000135150 00000 n +0000135265 00000 n +0000135285 00000 n +0000135692 00000 n +0000135445 00000 n +0000136032 00000 n +0000136115 00000 n +trailer +<< + /Root 226 0 R + /Info 1 0 R + /ID [ ] + /Size 227 +>> +startxref +139232 +%%EOF diff --git a/figs/test_id31_cf_control_alpha.png b/figs/test_id31_cf_control_alpha.png new file mode 100644 index 0000000..4ee6495 Binary files /dev/null and b/figs/test_id31_cf_control_alpha.png differ diff --git a/figs/test_id31_cf_control_dy_dz_diff.pdf b/figs/test_id31_cf_control_dy_dz_diff.pdf new file mode 100644 index 0000000..19a8a7f Binary files /dev/null and b/figs/test_id31_cf_control_dy_dz_diff.pdf differ diff --git a/figs/test_id31_cf_control_dy_dz_diff.png b/figs/test_id31_cf_control_dy_dz_diff.png new file mode 100644 index 0000000..ff276bf Binary files /dev/null and b/figs/test_id31_cf_control_dy_dz_diff.png differ diff --git a/figs/test_id31_high_bandwidth_S.pdf b/figs/test_id31_high_bandwidth_S.pdf new file mode 100644 index 0000000..1862f4e Binary files /dev/null and b/figs/test_id31_high_bandwidth_S.pdf differ diff --git a/figs/test_id31_high_bandwidth_S.png b/figs/test_id31_high_bandwidth_S.png new file mode 100644 index 0000000..f873368 Binary files /dev/null and b/figs/test_id31_high_bandwidth_S.png differ diff --git a/figs/test_id31_high_bandwidth_T.pdf b/figs/test_id31_high_bandwidth_T.pdf new file mode 100644 index 0000000..d8bf519 Binary files /dev/null and b/figs/test_id31_high_bandwidth_T.pdf differ diff --git a/figs/test_id31_high_bandwidth_T.png b/figs/test_id31_high_bandwidth_T.png new file mode 100644 index 0000000..57092df Binary files /dev/null and b/figs/test_id31_high_bandwidth_T.png differ diff --git a/matlab/mat/2023-08-21_14-09_m0_cf_inv_tustin.mat b/matlab/mat/2023-08-21_14-09_m0_cf_inv_tustin.mat new file mode 100644 index 0000000..f15d1f1 Binary files /dev/null and b/matlab/mat/2023-08-21_14-09_m0_cf_inv_tustin.mat differ diff --git a/matlab/mat/2023-08-21_14-19_m0_cf_inv_tustin_Dz_60Hz_a_20.mat b/matlab/mat/2023-08-21_14-19_m0_cf_inv_tustin_Dz_60Hz_a_20.mat new file mode 100644 index 0000000..312d749 Binary files /dev/null and b/matlab/mat/2023-08-21_14-19_m0_cf_inv_tustin_Dz_60Hz_a_20.mat differ diff --git a/matlab/mat/2023-08-21_14-20_m0_cf_inv_tustin_Dy_60Hz_a_20.mat b/matlab/mat/2023-08-21_14-20_m0_cf_inv_tustin_Dy_60Hz_a_20.mat new file mode 100644 index 0000000..1a90e71 Binary files /dev/null and b/matlab/mat/2023-08-21_14-20_m0_cf_inv_tustin_Dy_60Hz_a_20.mat differ diff --git a/matlab/mat/2023-08-21_17-56_m2_cf_10Hz_a2.mat b/matlab/mat/2023-08-21_17-56_m2_cf_10Hz_a2.mat new file mode 100644 index 0000000..6e5cc0f Binary files /dev/null and b/matlab/mat/2023-08-21_17-56_m2_cf_10Hz_a2.mat differ diff --git a/matlab/mat/2023-08-21_17-58_m2_cf_10Hz_a05.mat b/matlab/mat/2023-08-21_17-58_m2_cf_10Hz_a05.mat new file mode 100644 index 0000000..a9c48e6 Binary files /dev/null and b/matlab/mat/2023-08-21_17-58_m2_cf_10Hz_a05.mat differ diff --git a/matlab/test_id31_5_experiments.m b/matlab/test_id31_5_experiments.m index 8441bfc..a25a1c4 100644 --- a/matlab/test_id31_5_experiments.m +++ b/matlab/test_id31_5_experiments.m @@ -934,6 +934,129 @@ data_dt_1000ums.Dy_rms_cl = rms(detrend(data_dt_1000ums.Dy_int(i_dt_1000ums)-dat data_dt_1000ums.Dz_rms_cl = rms(detrend(data_dt_1000ums.Dz_int(i_dt_1000ums), 0)); data_dt_1000ums.Ry_rms_cl = rms(detrend(data_dt_1000ums.Ry_int(i_dt_1000ums), 0)); +%% Complementary Filter Control - Experimental Validation +% Parameters to analyze results in the frequency domain +Ts = 1e-4; % Sampling Time [s] +Nfft = floor(2.0/Ts); +win = hanning(Nfft); +Noverlap = floor(Nfft/2); + +%% Closed-Loop performance identification (S and T transfer functions) +% Different parameters w0 in different directions +data = load("2023-08-21_14-09_m0_cf_inv_tustin.mat"); + +[S_dy, f] = tfestimate(data.Dy.id_cl, data.Dy.e_dy, win, Noverlap, Nfft, 1/Ts); +[T_dy, ~] = tfestimate(data.Dy.id_cl, data.Dy.Dy_int, win, Noverlap, Nfft, 1/Ts); + +[S_dz, ~] = tfestimate(data.Dz.id_cl, data.Dz.e_dz, win, Noverlap, Nfft, 1/Ts); +[T_dz, ~] = tfestimate(data.Dz.id_cl, data.Dz.Dz_int, win, Noverlap, Nfft, 1/Ts); + +[S_ry, ~] = tfestimate(data.Ry.id_cl, data.Ry.e_ry, win, Noverlap, Nfft, 1/Ts); +[T_ry, ~] = tfestimate(data.Ry.id_cl, data.Ry.Ry_int, win, Noverlap, Nfft, 1/Ts); + +%% Obtained Closed-Loop transfer functions - Different Complementary filters for Dy and Dz +figure; +hold on; +plot(f, abs(S_dy), '-', 'color', colors(1,:),'DisplayName', '$S_{D_y}$'); +plot(f, abs(S_dz), '-', 'color', colors(2,:),'DisplayName', '$S_{D_z}$'); +plot(f, abs(S_ry), '-', 'color', colors(3,:),'DisplayName', '$S_{R_y}$'); +hold off; +set(gca, 'XScale', 'log'); set(gca, 'YScale', 'log'); +xlabel('Frequency [Hz]'); ylabel('Magnitude'); +ylim([1e-3, 5]); +xlim([1, 1e3]); +leg = legend('location', 'southeast', 'FontSize', 8, 'NumColumns', 1); +leg.ItemTokenSize(1) = 18; + +%% Effect of a change of complementary filter parameter alpha +% w0 = 10, alpha = 2 +data_a2 = load("2023-08-21_17-56_m2_cf_10Hz_a2.mat"); + +[S_a2, ~] = tfestimate(data_a2.Dy.id_cl, data_a2.Dy.e_dy, win, Noverlap, Nfft, 1/Ts); +[T_a2, ~] = tfestimate(data_a2.Dy.id_cl, data_a2.Dy.Dy_int, win, Noverlap, Nfft, 1/Ts); + +% Analytical formulas +w0 = 2*pi*10; +alpha = 2; +Hh_a2 = (s/w0)^2*((s/w0)+1+alpha)/(((s/w0)+1)*((s/w0)^2 + alpha*(s/w0) + 1)); +Hl_a2 = ((1+alpha)*(s/w0)+1)/(((s/w0)+1)*((s/w0)^2 + alpha*(s/w0) + 1)); + +% w0 = 10, alpha = 0.5 +data_a05 = load("2023-08-21_17-58_m2_cf_10Hz_a05.mat"); + +[S_a05, ~] = tfestimate(data_a05.Dz.id_cl, data_a05.Dz.e_dz, win, Noverlap, Nfft, 1/Ts); +[T_a05, ~] = tfestimate(data_a05.Dz.id_cl, data_a05.Dz.Dz_int, win, Noverlap, Nfft, 1/Ts); + +% Analytical formulas +w0 = 2*pi*10; +alpha = 0.5; +Hh_a05 = (s/w0)^2*((s/w0)+1+alpha)/(((s/w0)+1)*((s/w0)^2 + alpha*(s/w0) + 1)); +Hl_a05 = ((1+alpha)*(s/w0)+1)/(((s/w0)+1)*((s/w0)^2 + alpha*(s/w0) + 1)); + +%% Obtained Closed-Loop transfer functions - Effect of changing alpha +figure; +hold on; +plot(freqs, abs(squeeze(freqresp(Hh_a2, freqs, 'Hz'))), '--', 'color', colors(1,:),'DisplayName', '$\alpha = 2$, $H_H$, $H_L$'); +plot(f, abs(S_a2), '-', 'color', [colors(1,:), 0.5], 'linewidth', 2.5,'DisplayName', '$\alpha = 2$, $S$, $T$'); +plot(freqs, abs(squeeze(freqresp(Hh_a05, freqs, 'Hz'))), '--', 'color', colors(2,:),'DisplayName', '$\alpha = 0.5$, $H_H$, $H_L$'); +plot(f, abs(S_a05), '-', 'color', [colors(2,:), 0.5], 'linewidth', 2.5,'DisplayName', '$\alpha = 0.5$, $S$, $T$'); +plot(freqs, abs(squeeze(freqresp(Hl_a2, freqs, 'Hz'))), '--', 'color', colors(1,:), 'HandleVisibility', 'off'); +plot(f, abs(T_a2), '-', 'color', [colors(1,:), 0.5], 'linewidth', 2.5, 'HandleVisibility', 'off'); +plot(freqs, abs(squeeze(freqresp(Hl_a05, freqs, 'Hz'))), '--', 'color', colors(2,:), 'HandleVisibility', 'off'); +plot(f, abs(T_a05), '-', 'color', [colors(2,:), 0.5], 'linewidth', 2.5, 'HandleVisibility', 'off'); +hold off; +set(gca, 'XScale', 'log'); set(gca, 'YScale', 'log'); +xlabel('Frequency [Hz]'); ylabel('Magnitude'); +xlim([1, 1e3]); +ylim([1e-3, 5]); +leg = legend('location', 'south', 'FontSize', 8, 'NumColumns', 2); +leg.ItemTokenSize(1) = 18; + +%% Trying high bandwidth controllers - 60Hz +% Z direction +data = load("2023-08-21_14-19_m0_cf_inv_tustin_Dz_60Hz_a_20.mat"); +[S_dz, ~] = tfestimate(data.Dz.id_cl, data.Dz.e_dz, win, Noverlap, Nfft, 1/Ts); +[T_dz, ~] = tfestimate(data.Dz.id_cl, data.Dz.Dz_int, win, Noverlap, Nfft, 1/Ts); + +% Y direction +data = load("2023-08-21_14-20_m0_cf_inv_tustin_Dy_60Hz_a_20.mat"); +[S_dy, ~] = tfestimate(data.Dy.id_cl, data.Dy.e_dy, win, Noverlap, Nfft, 1/Ts); +[T_dy, ~] = tfestimate(data.Dy.id_cl, data.Dy.Dy_int, win, Noverlap, Nfft, 1/Ts); + +% Analytical formulas +w0 = 2*pi*60; +alpha = 2; +Hh_60Hz = (s/w0)^2*((s/w0)+1+alpha)/(((s/w0)+1)*((s/w0)^2 + alpha*(s/w0) + 1)); +Hl_60Hz = ((1+alpha)*(s/w0)+1)/(((s/w0)+1)*((s/w0)^2 + alpha*(s/w0) + 1)); + +%% Bode plot of the Weighting filters and Obtained complementary filters +figure; +hold on; +plot(f, abs(S_dy), '-', 'color', colors(1,:), 'DisplayName', '$S$, $D_y$'); +plot(f, abs(S_dz), '-', 'color', colors(2,:), 'DisplayName', '$S$, $D_z$'); +plot(freqs, abs(squeeze(freqresp(Hh_60Hz, freqs, 'Hz'))), 'k--','DisplayName', '$H_H$'); +hold off; +set(gca, 'XScale', 'log'); set(gca, 'YScale', 'log'); +xlabel('Frequency [Hz]'); ylabel('Magnitude'); +xlim([1, 1e3]); +ylim([3e-4, 5]); +leg = legend('location', 'southeast', 'FontSize', 8, 'NumColumns', 1); +leg.ItemTokenSize(1) = 18; + +%% Bode plot of the Weighting filters and Obtained complementary filters +figure; +hold on; +plot(f, abs(T_dy), '-', 'color', colors(1,:), 'DisplayName', '$T$, $D_y$'); +plot(f, abs(T_dz), '-', 'color', colors(2,:), 'DisplayName', '$T$, $D_z$'); +plot(freqs, abs(squeeze(freqresp(Hl_60Hz, freqs, 'Hz'))), 'k--','DisplayName', '$H_L$'); +hold off; +set(gca, 'XScale', 'log'); set(gca, 'YScale', 'log'); +xlabel('Frequency [Hz]'); ylabel('Magnitude'); +xlim([1, 1e3]); +ylim([3e-4, 5]); +leg = legend('location', 'southwest', 'FontSize', 8, 'NumColumns', 1); +leg.ItemTokenSize(1) = 18; + %% Summary of results % 1e9*data_tomo_m0_Wz6.Dy_rms_ol, 1e9*data_tomo_m0_Wz6.Dz_rms_ol, 1e6*data_tomo_m0_Wz6.Ry_rms_ol; % Tomo - OL - 6deg/s - 0kg % 1e9*data_tomo_m0_Wz6.Dy_rms_cl, 1e9*data_tomo_m0_Wz6.Dz_rms_cl, 1e6*data_tomo_m0_Wz6.Ry_rms_cl; % Tomo - CL - 6deg/s - 0kg diff --git a/test-bench-id31.org b/test-bench-id31.org index 2f27ced..1eaa40b 100644 --- a/test-bench-id31.org +++ b/test-bench-id31.org @@ -3529,6 +3529,7 @@ Several scientific experiments were replicated, such as: - Diffraction Tomography:continuous $R_z$ rotation using the Spindle and lateral $D_y$ scans performed at the same time using the translation stage (Section ref:ssec:test_id31_scans_diffraction_tomo) Unless explicitly stated, all closed-loop experiments were performed using the robust (i.e. conservative) high authority controller designed in Section ref:ssec:test_id31_iff_hac_controller. +Higher performance controllers using complementary filters are investigated in Section ref:ssec:test_id31_cf_control. For each experiment, the obtained performances are compared to the specifications for the most demanding case in which nano-focusing optics are used to focus the beam down to $200\,nm\times 100\,nm$. In this case, the goal is to keep the sample's point of interest in the beam, and therefore the $D_y$ and $D_z$ positioning errors should be less than $200\,nm$ and $100\,nm$ peak-to-peak, respectively. @@ -3942,7 +3943,7 @@ data_tomo_m0_Wz180.Ry_rms_ol = rms(data_tomo_m0_Wz180.Ry_int(1:i_m0) - (y0 + R*s A comparative analysis was conducted using three tomography scans at $180\,\text{deg/s}$ to evaluate the effectiveness of the HAC-LAC strategy in reducing positioning errors. The scans were performed under three conditions: open-loop, with decentralized IFF control, and with the complete HAC-LAC strategy. -For these specific measurements, an enhanced high authority controller was optimized for low payload masses to meet the performance requirements. +For this specific measurement, an enhanced high authority controller (discussed in Section ref:ssec:test_id31_cf_control) was optimized for low payload masses to meet the performance requirements. Figure ref:fig:test_id31_hac_cas_cl presents the cumulative amplitude spectra of the position errors for all three cases. The results reveal two distinct control contributions: the decentralized IFF effectively attenuates vibrations near the nano-hexapod suspension modes (an achievement not possible with HAC alone), while the high authority controller suppresses low-frequency vibrations primarily arising from Spindle guiding errors. @@ -5041,6 +5042,236 @@ data_dt_1000ums.Dz_rms_cl = rms(detrend(data_dt_1000ums.Dz_int(i_dt_1000ums), 0) data_dt_1000ums.Ry_rms_cl = rms(detrend(data_dt_1000ums.Ry_int(i_dt_1000ums), 0)); #+end_src +** Feedback control using Complementary Filters +<> + +# TODO - Add link to section +A control architecture utilizing complementary filters to shape the closed-loop transfer functions was proposed during the detail design phase. +Experimental validation of this architecture using the NASS is presented herein. + +Given that performance requirements are specified in the Cartesian frame, decoupling of the plant within this frame was achieved using Jacobian matrices. +Consequently, the control space comprises the directions $D_x$, $D_y$, $D_z$, $R_x$, and $R_y$. +Control performance in each of these directions can be tuned independently. +A schematic of the proposed control architecture is illustrated in Figure\nbsp{}ref:fig:test_id31_cf_control. + +#+name: fig:test_id31_cf_control +#+caption: Control architecture in the Cartesian frame. Only the controller corresponding to the $D_z$ direction is shown. $H_L$ and $H_H$ are complementary filters. +[[file:figs/test_id31_cf_control.png]] + + +# TODO - Add link to 2DoF model +Implementation of this control architecture necessitates a plant model, which must subsequently be inverted. +This plant model was derived from the multi-body model incorporating the previously detailed 2-DoF APA model, such that the model order stays relatively low. +Proposed analytical formulas for complementary filters having $40\,\text{dB/dec}$ were used during this experimental validation. +# TODO - Add link to the analytical formulas + +An initial experimental validation was conducted under no-payload conditions, with control applied solely to the $D_y$, $D_z$, and $R_y$ directions. +Increased control bandwidth was achieved for the $D_z$ and $R_y$ directions through appropriate tuning of the parameter $\omega_0$. +The experimentally measured closed-loop sensitivity transfer functions corresponding to these three controlled directions are presented in Figure ref:fig:test_id31_cf_control_dy_dz_diff. + +#+begin_src matlab +%% Complementary Filter Control - Experimental Validation +% Parameters to analyze results in the frequency domain +Ts = 1e-4; % Sampling Time [s] +Nfft = floor(2.0/Ts); +win = hanning(Nfft); +Noverlap = floor(Nfft/2); + +%% Closed-Loop performance identification (S and T transfer functions) +% Different parameters w0 in different directions +data = load("2023-08-21_14-09_m0_cf_inv_tustin.mat"); + +[S_dy, f] = tfestimate(data.Dy.id_cl, data.Dy.e_dy, win, Noverlap, Nfft, 1/Ts); +[T_dy, ~] = tfestimate(data.Dy.id_cl, data.Dy.Dy_int, win, Noverlap, Nfft, 1/Ts); + +[S_dz, ~] = tfestimate(data.Dz.id_cl, data.Dz.e_dz, win, Noverlap, Nfft, 1/Ts); +[T_dz, ~] = tfestimate(data.Dz.id_cl, data.Dz.Dz_int, win, Noverlap, Nfft, 1/Ts); + +[S_ry, ~] = tfestimate(data.Ry.id_cl, data.Ry.e_ry, win, Noverlap, Nfft, 1/Ts); +[T_ry, ~] = tfestimate(data.Ry.id_cl, data.Ry.Ry_int, win, Noverlap, Nfft, 1/Ts); +#+end_src + +#+begin_src matlab :exports none :results none +%% Obtained Closed-Loop transfer functions - Different Complementary filters for Dy and Dz +figure; +hold on; +plot(f, abs(S_dy), '-', 'color', colors(1,:),'DisplayName', '$S_{D_y}$'); +plot(f, abs(S_dz), '-', 'color', colors(2,:),'DisplayName', '$S_{D_z}$'); +plot(f, abs(S_ry), '-', 'color', colors(3,:),'DisplayName', '$S_{R_y}$'); +hold off; +set(gca, 'XScale', 'log'); set(gca, 'YScale', 'log'); +xlabel('Frequency [Hz]'); ylabel('Magnitude'); +ylim([1e-3, 5]); +xlim([1, 1e3]); +leg = legend('location', 'southeast', 'FontSize', 8, 'NumColumns', 1); +leg.ItemTokenSize(1) = 18; +#+end_src + +#+begin_src matlab :tangle no :exports results :results file replace +exportFig('figs/test_id31_cf_control_dy_dz_diff.pdf', 'width', 'half', 'height', 'normal'); +#+end_src + +Another test was conducted with a $26\,\text{kg}$ payload. +For this configuration, complementary filters were implemented with $\omega_0 = 2\pi \cdot 10\,\text{rad/s}$, and parameter $\alpha$ was varied. +The resulting experimentally obtained closed-loop transfer functions are compared against the theoretical complementary filter responses in Figure\nbsp{}ref:fig:test_id31_cf_control_alpha. +As illustrated in the figure, a close correspondence between the measured closed-loop responses and the target complementary filter magnitude was observed. +It also shows that the parameter $\alpha$ provides a mechanism for managing the trade-off between low-frequency disturbance rejection performance and the potential amplification of disturbances within the crossover frequency region. + +#+begin_src matlab +%% Effect of a change of complementary filter parameter alpha +% w0 = 10, alpha = 2 +data_a2 = load("2023-08-21_17-56_m2_cf_10Hz_a2.mat"); + +[S_a2, ~] = tfestimate(data_a2.Dy.id_cl, data_a2.Dy.e_dy, win, Noverlap, Nfft, 1/Ts); +[T_a2, ~] = tfestimate(data_a2.Dy.id_cl, data_a2.Dy.Dy_int, win, Noverlap, Nfft, 1/Ts); + +% Analytical formulas +w0 = 2*pi*10; +alpha = 2; +Hh_a2 = (s/w0)^2*((s/w0)+1+alpha)/(((s/w0)+1)*((s/w0)^2 + alpha*(s/w0) + 1)); +Hl_a2 = ((1+alpha)*(s/w0)+1)/(((s/w0)+1)*((s/w0)^2 + alpha*(s/w0) + 1)); + +% w0 = 10, alpha = 0.5 +data_a05 = load("2023-08-21_17-58_m2_cf_10Hz_a05.mat"); + +[S_a05, ~] = tfestimate(data_a05.Dz.id_cl, data_a05.Dz.e_dz, win, Noverlap, Nfft, 1/Ts); +[T_a05, ~] = tfestimate(data_a05.Dz.id_cl, data_a05.Dz.Dz_int, win, Noverlap, Nfft, 1/Ts); + +% Analytical formulas +w0 = 2*pi*10; +alpha = 0.5; +Hh_a05 = (s/w0)^2*((s/w0)+1+alpha)/(((s/w0)+1)*((s/w0)^2 + alpha*(s/w0) + 1)); +Hl_a05 = ((1+alpha)*(s/w0)+1)/(((s/w0)+1)*((s/w0)^2 + alpha*(s/w0) + 1)); +#+end_src + +#+begin_src matlab :exports none :results none +%% Obtained Closed-Loop transfer functions - Effect of changing alpha +figure; +hold on; +plot(freqs, abs(squeeze(freqresp(Hh_a2, freqs, 'Hz'))), '--', 'color', colors(1,:),'DisplayName', '$\alpha = 2$, $H_H$, $H_L$'); +plot(f, abs(S_a2), '-', 'color', [colors(1,:), 0.5], 'linewidth', 2.5,'DisplayName', '$\alpha = 2$, $S$, $T$'); +plot(freqs, abs(squeeze(freqresp(Hh_a05, freqs, 'Hz'))), '--', 'color', colors(2,:),'DisplayName', '$\alpha = 0.5$, $H_H$, $H_L$'); +plot(f, abs(S_a05), '-', 'color', [colors(2,:), 0.5], 'linewidth', 2.5,'DisplayName', '$\alpha = 0.5$, $S$, $T$'); +plot(freqs, abs(squeeze(freqresp(Hl_a2, freqs, 'Hz'))), '--', 'color', colors(1,:), 'HandleVisibility', 'off'); +plot(f, abs(T_a2), '-', 'color', [colors(1,:), 0.5], 'linewidth', 2.5, 'HandleVisibility', 'off'); +plot(freqs, abs(squeeze(freqresp(Hl_a05, freqs, 'Hz'))), '--', 'color', colors(2,:), 'HandleVisibility', 'off'); +plot(f, abs(T_a05), '-', 'color', [colors(2,:), 0.5], 'linewidth', 2.5, 'HandleVisibility', 'off'); +hold off; +set(gca, 'XScale', 'log'); set(gca, 'YScale', 'log'); +xlabel('Frequency [Hz]'); ylabel('Magnitude'); +xlim([1, 1e3]); +ylim([1e-3, 5]); +leg = legend('location', 'south', 'FontSize', 8, 'NumColumns', 2); +leg.ItemTokenSize(1) = 18; +#+end_src + +#+begin_src matlab :tangle no :exports results :results file replace +exportFig('figs/test_id31_cf_control_alpha.pdf', 'width', 'half', 'height', 'normal'); +#+end_src + +#+name: fig:test_id31_cf_control_results +#+caption: Measured closed-loop transfer functions. Different bandwidth can be specified for different directions using $\omega_0$ (\subref{fig:test_id31_cf_control_dy_dz_diff}). The shape can be adjusted using parameter $\alpha$ (\subref{fig:test_id31_cf_control_alpha}). +#+attr_latex: :options [htbp] +#+begin_figure +#+attr_latex: :caption \subcaption{\label{fig:test_id31_cf_control_dy_dz_diff}Chose of bandwidth using $\omega_0$, $m = 0\,\text{kg}$} +#+attr_latex: :options {0.49\textwidth} +#+begin_subfigure +#+attr_latex: :scale 0.9 +[[file:figs/test_id31_cf_control_dy_dz_diff.png]] +#+end_subfigure +#+attr_latex: :caption \subcaption{\label{fig:test_id31_cf_control_alpha}Effect of a change of $\alpha$, $m = 26\,\text{kg}$} +#+attr_latex: :options {0.49\textwidth} +#+begin_subfigure +#+attr_latex: :scale 0.9 +[[file:figs/test_id31_cf_control_alpha.png]] +#+end_subfigure +#+end_figure + +Finally, $\omega_0$ was gradually increased to estimate the maximum bandwidth (i.e. the best low frequency disturbance rejection) that can be achieved with this architecture. +No payload was used for this test, and the parameter $\omega_0$ was increased for the controllers in the $D_y$ and $D_z$ directions. +A value $\omega_0 = 2\pi \cdot 60 \,\text{rad/s}$ could be achieved. +Measured closed-loop transfer functions are shown in Figure ref:fig:test_id31_high_bandwidth, indicating a reduction of disturbances in the considered direction of $1000$ at $1\,\text{Hz}$. +For higher values of $\omega_0$, the system became unstable in the vertical direction, probably because of the resonance at $250\,\text{Hz}$ that is not well captured with the multi-body model (Figure ref:fig:test_id31_hac_plant_effect_mass). + +#+begin_src matlab +%% Trying high bandwidth controllers - 60Hz +% Z direction +data = load("2023-08-21_14-19_m0_cf_inv_tustin_Dz_60Hz_a_20.mat"); +[S_dz, ~] = tfestimate(data.Dz.id_cl, data.Dz.e_dz, win, Noverlap, Nfft, 1/Ts); +[T_dz, ~] = tfestimate(data.Dz.id_cl, data.Dz.Dz_int, win, Noverlap, Nfft, 1/Ts); + +% Y direction +data = load("2023-08-21_14-20_m0_cf_inv_tustin_Dy_60Hz_a_20.mat"); +[S_dy, ~] = tfestimate(data.Dy.id_cl, data.Dy.e_dy, win, Noverlap, Nfft, 1/Ts); +[T_dy, ~] = tfestimate(data.Dy.id_cl, data.Dy.Dy_int, win, Noverlap, Nfft, 1/Ts); + +% Analytical formulas +w0 = 2*pi*60; +alpha = 2; +Hh_60Hz = (s/w0)^2*((s/w0)+1+alpha)/(((s/w0)+1)*((s/w0)^2 + alpha*(s/w0) + 1)); +Hl_60Hz = ((1+alpha)*(s/w0)+1)/(((s/w0)+1)*((s/w0)^2 + alpha*(s/w0) + 1)); +#+end_src + +#+begin_src matlab :exports none :results none +%% Bode plot of the Weighting filters and Obtained complementary filters +figure; +hold on; +plot(f, abs(S_dy), '-', 'color', colors(1,:), 'DisplayName', '$S$, $D_y$'); +plot(f, abs(S_dz), '-', 'color', colors(2,:), 'DisplayName', '$S$, $D_z$'); +plot(freqs, abs(squeeze(freqresp(Hh_60Hz, freqs, 'Hz'))), 'k--','DisplayName', '$H_H$'); +hold off; +set(gca, 'XScale', 'log'); set(gca, 'YScale', 'log'); +xlabel('Frequency [Hz]'); ylabel('Magnitude'); +xlim([1, 1e3]); +ylim([3e-4, 5]); +leg = legend('location', 'southeast', 'FontSize', 8, 'NumColumns', 1); +leg.ItemTokenSize(1) = 18; +#+end_src + +#+begin_src matlab :tangle no :exports results :results file replace +yticks([1e-3, 1e-2, 1e-1, 1]); +exportFig('figs/test_id31_high_bandwidth_S.pdf', 'width', 'half', 'height', 'normal'); +#+end_src + +#+begin_src matlab :exports none :results none +%% Bode plot of the Weighting filters and Obtained complementary filters +figure; +hold on; +plot(f, abs(T_dy), '-', 'color', colors(1,:), 'DisplayName', '$T$, $D_y$'); +plot(f, abs(T_dz), '-', 'color', colors(2,:), 'DisplayName', '$T$, $D_z$'); +plot(freqs, abs(squeeze(freqresp(Hl_60Hz, freqs, 'Hz'))), 'k--','DisplayName', '$H_L$'); +hold off; +set(gca, 'XScale', 'log'); set(gca, 'YScale', 'log'); +xlabel('Frequency [Hz]'); ylabel('Magnitude'); +xlim([1, 1e3]); +ylim([3e-4, 5]); +leg = legend('location', 'southwest', 'FontSize', 8, 'NumColumns', 1); +leg.ItemTokenSize(1) = 18; +#+end_src + +#+begin_src matlab :tangle no :exports results :results file replace +yticks([1e-3, 1e-2, 1e-1, 1]); +exportFig('figs/test_id31_high_bandwidth_T.pdf', 'width', 'half', 'height', 'normal'); +#+end_src + +#+name: fig:test_id31_high_bandwidth +#+caption: Measured Closed-Loop Sensitivity (\subref{fig:test_id31_high_bandwidth_S}) and Complementary Sensitivity (\subref{fig:test_id31_high_bandwidth_T}) transfer functions for the highest test bandwidth $\omega_0 = 2\pi\cdot 60\,\text{rad/s}$. +#+attr_latex: :options [htbp] +#+begin_figure +#+attr_latex: :caption \subcaption{\label{fig:test_id31_high_bandwidth_S}Sensitivity} +#+attr_latex: :options {0.49\textwidth} +#+begin_subfigure +#+attr_latex: :scale 0.9 +[[file:figs/test_id31_high_bandwidth_S.png]] +#+end_subfigure +#+attr_latex: :caption \subcaption{\label{fig:test_id31_high_bandwidth_T}Complementary Sensitivity} +#+attr_latex: :options {0.49\textwidth} +#+begin_subfigure +#+attr_latex: :scale 0.9 +[[file:figs/test_id31_high_bandwidth_T.png]] +#+end_subfigure +#+end_figure + ** Conclusion :PROPERTIES: :UNNUMBERED: t diff --git a/test-bench-id31.pdf b/test-bench-id31.pdf index 604e487..eeb3ec0 100644 Binary files a/test-bench-id31.pdf and b/test-bench-id31.pdf differ diff --git a/test-bench-id31.tex b/test-bench-id31.tex index aca3f8a..af261fd 100644 --- a/test-bench-id31.tex +++ b/test-bench-id31.tex @@ -1,4 +1,4 @@ -% Created 2025-04-07 Mon 14:38 +% Created 2025-04-20 Sun 22:21 % Intended LaTeX compiler: pdflatex \documentclass[a4paper, 10pt, DIV=12, parskip=full, bibliography=totoc]{scrreprt} @@ -215,6 +215,7 @@ Results are summarized in Table \ref{tab:test_id31_metrology_acceptance}. The obtained lateral acceptance for pure displacements in any direction is estimated to be around \(+/-0.5\,mm\), which is enough for the current application as it is well above the micro-station errors to be actively corrected by the NASS. \begin{table}[htbp] +\caption{\label{tab:test_id31_metrology_acceptance}Estimated measurement range for each interferometer, and for three different directions.} \centering \begin{tabularx}{0.45\linewidth}{Xccc} \toprule @@ -227,8 +228,6 @@ The obtained lateral acceptance for pure displacements in any direction is estim \(d_5\) (z) & \(1.33\, mm\) & \(1.06\,mm\) & \(>2\,mm\)\\ \bottomrule \end{tabularx} -\caption{\label{tab:test_id31_metrology_acceptance}Estimated measurement range for each interferometer, and for three different directions.} - \end{table} \section{Estimated measurement errors} \label{ssec:test_id31_metrology_errors} @@ -739,6 +738,7 @@ Several scientific experiments were replicated, such as: \end{itemize} Unless explicitly stated, all closed-loop experiments were performed using the robust (i.e. conservative) high authority controller designed in Section \ref{ssec:test_id31_iff_hac_controller}. +Higher performance controllers using complementary filters are investigated in Section \ref{ssec:test_id31_cf_control}. For each experiment, the obtained performances are compared to the specifications for the most demanding case in which nano-focusing optics are used to focus the beam down to \(200\,nm\times 100\,nm\). In this case, the goal is to keep the sample's point of interest in the beam, and therefore the \(D_y\) and \(D_z\) positioning errors should be less than \(200\,nm\) and \(100\,nm\) peak-to-peak, respectively. @@ -748,6 +748,7 @@ In terms of RMS errors, this corresponds to \(30\,nm\) in \(D_y\), \(15\,nm\) in Results obtained for all experiments are summarized and compared to the specifications in Section \ref{ssec:test_id31_scans_conclusion}. \begin{table}[htbp] +\caption{\label{tab:test_id31_experiments_specifications}Specifications for the Nano-Active-Stabilization-System} \centering \begin{tabularx}{0.45\linewidth}{Xccc} \toprule @@ -757,8 +758,6 @@ peak 2 peak & 200nm & 100nm & \(1.7\,\mu\text{rad}\)\\ RMS & 30nm & 15nm & \(250\,\text{nrad}\)\\ \bottomrule \end{tabularx} -\caption{\label{tab:test_id31_experiments_specifications}Specifications for the Nano-Active-Stabilization-System} - \end{table} \section{Tomography Scans} \label{ssec:test_id31_scans_tomography} @@ -824,7 +823,7 @@ Nevertheless, even with this robust (i.e. conservative) HAC implementation, the A comparative analysis was conducted using three tomography scans at \(180\,\text{deg/s}\) to evaluate the effectiveness of the HAC-LAC strategy in reducing positioning errors. The scans were performed under three conditions: open-loop, with decentralized IFF control, and with the complete HAC-LAC strategy. -For these specific measurements, an enhanced high authority controller was optimized for low payload masses to meet the performance requirements. +For this specific measurement, an enhanced high authority controller (discussed in Section \ref{ssec:test_id31_cf_control}) was optimized for low payload masses to meet the performance requirements. Figure \ref{fig:test_id31_hac_cas_cl} presents the cumulative amplitude spectra of the position errors for all three cases. The results reveal two distinct control contributions: the decentralized IFF effectively attenuates vibrations near the nano-hexapod suspension modes (an achievement not possible with HAC alone), while the high authority controller suppresses low-frequency vibrations primarily arising from Spindle guiding errors. @@ -1083,6 +1082,74 @@ Alternatively, a feedforward controller could improve the lateral positioning ac \end{subfigure} \caption{\label{fig:test_id31_diffraction_tomo}Diffraction tomography scans (combined \(R_z\) and \(D_y\) motions) at several \(D_y\) velocities (\(R_z\) rotational velocity is \(6\,\text{deg/s}\)).} \end{figure} +\section{Feedback control using Complementary Filters} +\label{ssec:test_id31_cf_control} + +A control architecture utilizing complementary filters to shape the closed-loop transfer functions was proposed during the detail design phase. +Experimental validation of this architecture using the NASS is presented herein. + +Given that performance requirements are specified in the Cartesian frame, decoupling of the plant within this frame was achieved using Jacobian matrices. +Consequently, the control space comprises the directions \(D_x\), \(D_y\), \(D_z\), \(R_x\), and \(R_y\). +Control performance in each of these directions can be tuned independently. +A schematic of the proposed control architecture is illustrated in Figure~\ref{fig:test_id31_cf_control}. + +\begin{figure}[htbp] +\centering +\includegraphics[scale=1]{figs/test_id31_cf_control.png} +\caption{\label{fig:test_id31_cf_control}Control architecture in the Cartesian frame. Only the controller corresponding to the \(D_z\) direction is shown. \(H_L\) and \(H_H\) are complementary filters.} +\end{figure} + + +Implementation of this control architecture necessitates a plant model, which must subsequently be inverted. +This plant model was derived from the multi-body model incorporating the previously detailed 2-DoF APA model, such that the model order stays relatively low. +Proposed analytical formulas for complementary filters having \(40\,\text{dB/dec}\) were used during this experimental validation. +An initial experimental validation was conducted under no-payload conditions, with control applied solely to the \(D_y\), \(D_z\), and \(R_y\) directions. +Increased control bandwidth was achieved for the \(D_z\) and \(R_y\) directions through appropriate tuning of the parameter \(\omega_0\). +The experimentally measured closed-loop sensitivity transfer functions corresponding to these three controlled directions are presented in Figure \ref{fig:test_id31_cf_control_dy_dz_diff}. + +Another test was conducted with a \(26\,\text{kg}\) payload. +For this configuration, complementary filters were implemented with \(\omega_0 = 2\pi \cdot 10\,\text{rad/s}\), and parameter \(\alpha\) was varied. +The resulting experimentally obtained closed-loop transfer functions are compared against the theoretical complementary filter responses in Figure~\ref{fig:test_id31_cf_control_alpha}. +As illustrated in the figure, a close correspondence between the measured closed-loop responses and the target complementary filter magnitude was observed. +It also shows that the parameter \(\alpha\) provides a mechanism for managing the trade-off between low-frequency disturbance rejection performance and the potential amplification of disturbances within the crossover frequency region. + +\begin{figure}[htbp] +\begin{subfigure}{0.49\textwidth} +\begin{center} +\includegraphics[scale=1,scale=0.9]{figs/test_id31_cf_control_dy_dz_diff.png} +\end{center} +\subcaption{\label{fig:test_id31_cf_control_dy_dz_diff}Chose of bandwidth using $\omega_0$, $m = 0\,\text{kg}$} +\end{subfigure} +\begin{subfigure}{0.49\textwidth} +\begin{center} +\includegraphics[scale=1,scale=0.9]{figs/test_id31_cf_control_alpha.png} +\end{center} +\subcaption{\label{fig:test_id31_cf_control_alpha}Effect of a change of $\alpha$, $m = 26\,\text{kg}$} +\end{subfigure} +\caption{\label{fig:test_id31_cf_control_results}Measured closed-loop transfer functions. Different bandwidth can be specified for different directions using \(\omega_0\) (\subref{fig:test_id31_cf_control_dy_dz_diff}). The shape can be adjusted using parameter \(\alpha\) (\subref{fig:test_id31_cf_control_alpha}).} +\end{figure} + +Finally, \(\omega_0\) was gradually increased to estimate the maximum bandwidth (i.e. the best low frequency disturbance rejection) that can be achieved with this architecture. +No payload was used for this test, and the parameter \(\omega_0\) was increased for the controllers in the \(D_y\) and \(D_z\) directions. +A value \(\omega_0 = 2\pi \cdot 60 \,\text{rad/s}\) could be achieved. +Measured closed-loop transfer functions are shown in Figure \ref{fig:test_id31_high_bandwidth}, indicating a reduction of disturbances in the considered direction of \(1000\) at \(1\,\text{Hz}\). +For higher values of \(\omega_0\), the system became unstable in the vertical direction, probably because of the resonance at \(250\,\text{Hz}\) that is not well captured with the multi-body model (Figure \ref{fig:test_id31_hac_plant_effect_mass}). + +\begin{figure}[htbp] +\begin{subfigure}{0.49\textwidth} +\begin{center} +\includegraphics[scale=1,scale=0.9]{figs/test_id31_high_bandwidth_S.png} +\end{center} +\subcaption{\label{fig:test_id31_high_bandwidth_S}Sensitivity} +\end{subfigure} +\begin{subfigure}{0.49\textwidth} +\begin{center} +\includegraphics[scale=1,scale=0.9]{figs/test_id31_high_bandwidth_T.png} +\end{center} +\subcaption{\label{fig:test_id31_high_bandwidth_T}Complementary Sensitivity} +\end{subfigure} +\caption{\label{fig:test_id31_high_bandwidth}Measured Closed-Loop Sensitivity (\subref{fig:test_id31_high_bandwidth_S}) and Complementary Sensitivity (\subref{fig:test_id31_high_bandwidth_T}) transfer functions for the highest test bandwidth \(\omega_0 = 2\pi\cdot 60\,\text{rad/s}\).} +\end{figure} \section*{Conclusion} \label{ssec:test_id31_scans_conclusion} @@ -1104,6 +1171,7 @@ Overall, the experimental results validate the effectiveness of the developed co The identified limitations, primarily related to high-speed lateral scanning and heavy payload handling, provide clear directions for future improvements. \begin{table}[htbp] +\caption{\label{tab:test_id31_experiments_results_summary}Summary of the experimental results performed using the NASS on ID31. Open-loop errors are indicated on the left of the arrows. Closed-loop errors that are outside the specifications are indicated by bold number.} \centering \begin{tabularx}{\linewidth}{Xccc} \toprule @@ -1132,8 +1200,6 @@ Diffraction tomography (\(6\,\text{deg/s}\), \(1\,mm/s\)) & \(\bm{53}\) & \(10\) \textbf{Specifications} & \(30\) & \(15\) & \(250\)\\ \bottomrule \end{tabularx} -\caption{\label{tab:test_id31_experiments_results_summary}Summary of the experimental results performed using the NASS on ID31. Open-loop errors are indicated on the left of the arrows. Closed-loop errors that are outside the specifications are indicated by bold number.} - \end{table} \chapter*{Conclusion} \label{ssec:test_id31_conclusion}