+
+
@@ -45,7 +47,25 @@ In other cases you can contact the developer via email: Ee?`L2{8xqh7-~_3GZ~#nFIC z+9XDbaF=^d@cr1_fHxsZb7lQ`w?R!d0af2zcUelKW7S1&%8HhY>6%I}D``_tY=q~S zpG(yBwN!+2!X*_nmOBTeG^CKWgy*yFcumC_(>6v6cA*Evn(^W0-p5a@+LOg0LdQJB zee}E6WWH<)kC{EEG8(;)BO0>%Ra6=j^Jp%%WV5>sp>8Y3y!XwA|3fpamQ8ZdJ1>5a zWp+LQkfCFriok|iUK=jfC@p?b$@TkQD2G$LVCY=(p#WGRn6g&lpx18HPl73h92WPL z^mFH%YC{x;w_A-~wM|(lP1N`M>?G@4r02)BROZ7@A +Ug0qH~ z SOD zXxm|4*b|!u1+!t9ymeObM5jFCt)o5L6jhbHl2 F|rqG&Xv*4>kQiDpaOT%uO;Yg|xzdKLaw+GX2o3 zKk9`}(OKwT9)kL!>!EKyEj59Qu`*Vo)6y =owr_V-G3~J*X zt6P*lBB$b?JXU5cnfY}z6;dxOEkQ#ofhg{=@9~uiz0(ICXxZVcfRrqS#BD)_Lf#C% z%M_)UuXh)N-#dIe*(N+k=x&s-Ou>ZosDs$7LbE~oTku%vn3?NEX%5j0-(Sa<#XQtO z(qmO=@+Ph!vZdoFa5RD(=se34vBMKRz67HV@gEDwASByUV{TgT4Vxu-ac0WfC8$wD zE*yQHJJl_&;7zs(j+lgd*l?2S9Sf&ka~pf|uzl$4#7RK!egfmv+9%+$zlVIle$%sq zl_cWzPuzlogysegxe*@6gL- h{i>T^rTMDUly$1S=jJ1-?U20>lvW7inO=%zM z9P~~dsaN3)#A`&!c=TY_VyXAX>c?odiOh;gor<4qM7o8^=~0G+qag*@fcs?B`z%UU z^846>)8Deb-(Rg)4Ec*@MfhhJq*^%BY^D~o-4D`5OgF>!5>H|q?PE}V^Da;yoa5}^ z{=P~SYavmnjkao_2T}xUn6KZQpAKs_8)0|5rM%WO$yi(Tl3pd@RI>#r++chnbKcbM zw|`b!$4sZ{78E8xYYAS|bgk(yPU!KHgiGU?fS_dQAL+^_y0p}zLJ8_@ja4?btfXkJ z%)BzLheOP0yTv&Uc{_wvc|N}B*xUwC3gX~pd3>U>&x5Q9YS(ROj7n3R@z$o-0aD=R zTQGLBaO(zl1U{L>c7m{;qEfG(CBXIMZs5D1vLJHz2fVdMDpun4mCc@ByTS9uL;}JI zWzW aF&|MAS757`FG-l~WA_kI$%7 z5Wftbye&HncA`A4B4#4sqVxHlaDgi`+yBb1?apY-2{Vn;A;OG|P&db0&k~oH+sgvi z3c4Oja;1^sa@@;t#A|P|JFbl;Z|qk1XOc(h-Ta}*tHX`N0?vMVdoJ+G`-i>NIT$+l zCNBrU%bsgGaGO#4SEJvW(WJeO4l*hT3W#dxXz@5u%rN+>r+t+5fTe5kvLZpuRA_)% ztZz+ihuAcy5eLbr@%$a6SR(XYWMkC4=hk_fFLjpI9lorhqN7uqZ{e1C66#+`1-4eg z-l%z)ffu;nMMaJEnK6Kh!);?!+of+T9#sldi@iuK>?rM2NdjFTe^$5jHEZJr2)0fB zRv@z-RHfS D#E#>OqCcK)s7+NKddHV $lq&H@oz?f} z_>wvqop|k}a|5N+q^dO(_iaLeGoh4jM AD53<8 zo{t+JAaQ3?0!|t0pFK?w@si&0-BWp8z7E*C)woKsn}H i2i~MCI>C-Pw3pRW@_dvX?751$)a03P>fXmc#+ CJFGN0{dPm900z?RVW)D7KiM#{qjqOvPp$ zt8BX-3pYS}W`n~ddQBL6$jLwq5& 12Q_?B)}Z6WX>|yBjqX1Htb_bOH5ek8D0oZ#JHE+N^yx{Y@O}AF03gsndx- zzTzZfrBsc2wVeVz;uU@LEt3bY_-{%;S~6+PU(rDl!GEEhe^CMqo}i=Er9>OChrB=) zH5<|XTrAW7GEMYdKq~Q(nPiHiSZ>l%{Y8+h4sr}zBer+A9eCeJ+^*=W-#b}vleLyK zk>pJta!zrZ^$^;O9h&@SPcd{eqhT ^ wT^cw%EjqY1U8oA>TrArRit*xTzxbe(`F q5#+Pci-jx@xD*JrmE{2<`#E-IG?ZqXAlwCza z0Av9CZv?!`2S5Pe_|vY|KU4V&2>%xPo5B8E|39JrzlHv(`iIE=miqgn{$FaB@~=1j XOA4m1MNIPNFyYl+y6Obff2RKc5%w1r diff --git a/code/components/jomjol_flowcontroll/ClassFlow.cpp b/code/components/jomjol_flowcontroll/ClassFlow.cpp index 3ee76cfb..97d77dfb 100644 --- a/code/components/jomjol_flowcontroll/ClassFlow.cpp +++ b/code/components/jomjol_flowcontroll/ClassFlow.cpp @@ -94,6 +94,23 @@ string ClassFlow::getReadout() return string(); } +std::string ClassFlow::GetParameterName(std::string _input) +{ + string _param; + int _pospunkt = _input.find_first_of("."); + if (_pospunkt > -1) + { + _param = _input.substr(_pospunkt+1, _input.length() - _pospunkt - 1); + } + else + { + _param = _input; + } +// printf("Parameter: %s, Pospunkt: %d\n", _param.c_str(), _pospunkt); + return _param; +} + + bool ClassFlow::getNextLine(FILE* pfile, string *rt) { char zw[1024]; @@ -102,13 +119,13 @@ bool ClassFlow::getNextLine(FILE* pfile, string *rt) *rt = ""; return false; } - fgets(zw, 1024, pfile); - printf("%s", zw); - if ((strlen(zw) == 0) && feof(pfile)) + if (!fgets(zw, 1024, pfile)) { *rt = ""; + printf("END OF FILE\n"); return false; } + printf("%s", zw); *rt = zw; *rt = trim(*rt); while ((zw[0] == ';' || zw[0] == '#' || (rt->size() == 0)) && !(zw[1] == '[')) // Kommentarzeilen (; oder #) und Leerzeilen überspringen, es sei denn es ist ein neuer auskommentierter Paragraph diff --git a/code/components/jomjol_flowcontroll/ClassFlow.h b/code/components/jomjol_flowcontroll/ClassFlow.h index bcad7b4f..4df4777c 100644 --- a/code/components/jomjol_flowcontroll/ClassFlow.h +++ b/code/components/jomjol_flowcontroll/ClassFlow.h @@ -37,6 +37,8 @@ protected: virtual void SetInitialParameter(void); + std::string GetParameterName(std::string _input); + bool disabled; public: diff --git a/code/components/jomjol_flowcontroll/ClassFlowControll.cpp b/code/components/jomjol_flowcontroll/ClassFlowControll.cpp index 921e40b0..48ff7fc5 100644 --- a/code/components/jomjol_flowcontroll/ClassFlowControll.cpp +++ b/code/components/jomjol_flowcontroll/ClassFlowControll.cpp @@ -275,7 +275,7 @@ string ClassFlowControll::getReadoutAll(int _type) out = out + numbers[i]->ReturnValue; break; case READOUT_TYPE_PREVALUE: - out = out + std::to_string(numbers[i]->PreValue); + out = out + numbers[i]->ReturnPreValue; break; case READOUT_TYPE_RAWVALUE: out = out + numbers[i]->ReturnRawValue; diff --git a/code/components/jomjol_flowcontroll/ClassFlowMQTT.cpp b/code/components/jomjol_flowcontroll/ClassFlowMQTT.cpp index 1d0e4c1b..fe73a89f 100644 --- a/code/components/jomjol_flowcontroll/ClassFlowMQTT.cpp +++ b/code/components/jomjol_flowcontroll/ClassFlowMQTT.cpp @@ -13,6 +13,9 @@ void ClassFlowMQTT::SetInitialParameter(void) topicError = ""; topicRate = ""; topicTimeStamp = ""; + maintopic = ""; + mainerrortopic = ""; + clientname = "watermeter"; OldValue = ""; flowpostprocessing = NULL; @@ -88,33 +91,23 @@ bool ClassFlowMQTT::ReadParameter(FILE* pfile, string& aktparamgraph) { this->uri = zerlegt[1]; } - if ((toUpper(zerlegt[0]) == "TOPIC") && (zerlegt.size() > 1)) - { - this->topic = zerlegt[1]; - } - if ((toUpper(zerlegt[0]) == "TOPICERROR") && (zerlegt.size() > 1)) - { - this->topicError = zerlegt[1]; - } - if ((toUpper(zerlegt[0]) == "TOPICRATE") && (zerlegt.size() > 1)) - { - this->topicRate = zerlegt[1]; - } - if ((toUpper(zerlegt[0]) == "TOPICTIMESTAMP") && (zerlegt.size() > 1)) - { - this->topicTimeStamp = zerlegt[1]; - } if ((toUpper(zerlegt[0]) == "CLIENTID") && (zerlegt.size() > 1)) { this->clientname = zerlegt[1]; } + if (((toUpper(zerlegt[0]) == "TOPIC") || (toUpper(zerlegt[0]) == "MAINTOPIC")) && (zerlegt.size() > 1)) + { + maintopic = zerlegt[1]; + } } - if ((uri.length() > 0) && (topic.length() > 0)) + if ((uri.length() > 0) && (maintopic.length() > 0)) { - MQTTInit(uri, clientname, user, password, topicError, 60); + mainerrortopic = maintopic + "/connection"; + MQTTInit(uri, clientname, user, password, mainerrortopic, 60); + MQTTPublish(mainerrortopic, "connected"); } return true; @@ -128,13 +121,39 @@ bool ClassFlowMQTT::doFlow(string zwtime) std::string resultrate = ""; std::string resulttimestamp = ""; string zw = ""; + string namenumber = ""; + + MQTTPublish(mainerrortopic, "connected"); if (flowpostprocessing) { - result = flowpostprocessing->getReadoutParam(false, true); - resulterror = flowpostprocessing->getReadoutError(); - resultrate = flowpostprocessing->getReadoutRate(); - resulttimestamp = flowpostprocessing->getReadoutTimeStamp(); + std::vector NUMBERS = flowpostprocessing->GetNumbers(); + + for (int i = 0; i < NUMBERS.size(); ++i) + { + result = NUMBERS[i]->ReturnValueNoError; + resulterror = NUMBERS[i]->ErrorMessageText; + resultrate = std::to_string(NUMBERS[i]->FlowRateAct); + resulttimestamp = NUMBERS[i]->timeStamp; + + namenumber = NUMBERS[i]->name; + if (namenumber == "default") + namenumber = maintopic + "/"; + else + namenumber = maintopic + "/" + namenumber + "/"; + + zw = namenumber + "value"; + MQTTPublish(zw, result); + + zw = namenumber + "error"; + MQTTPublish(zw, resulterror, 1); + + zw = namenumber + "rate"; + MQTTPublish(zw, resultrate); + + zw = namenumber + "timestamp"; + MQTTPublish(zw, resulttimestamp); + } } else { @@ -149,25 +168,9 @@ bool ClassFlowMQTT::doFlow(string zwtime) result = result + "\t" + zw; } } + MQTTPublish(topic, result); } - MQTTPublish(topic, result); - - if (topicError.length() > 0) { - if (resulterror.length() == 0) - { - resulterror = " "; - } - MQTTPublish(topicError, resulterror, 1); - } - - if (topicRate.length() > 0) { - MQTTPublish(topicRate, resultrate); - } - - if (topicTimeStamp.length() > 0) { - MQTTPublish(topicTimeStamp, resulttimestamp); - } OldValue = result; diff --git a/code/components/jomjol_flowcontroll/ClassFlowMQTT.h b/code/components/jomjol_flowcontroll/ClassFlowMQTT.h index 99035659..52e58d55 100644 --- a/code/components/jomjol_flowcontroll/ClassFlowMQTT.h +++ b/code/components/jomjol_flowcontroll/ClassFlowMQTT.h @@ -12,7 +12,9 @@ protected: std::string uri, topic, topicError, clientname, topicRate, topicTimeStamp; std::string OldValue; ClassFlowPostProcessing* flowpostprocessing; - std::string user, password; + std::string user, password; + + std::string maintopic, mainerrortopic; void SetInitialParameter(void); public: diff --git a/code/components/jomjol_flowcontroll/ClassFlowPostProcessing.cpp b/code/components/jomjol_flowcontroll/ClassFlowPostProcessing.cpp index 25c8c684..2d578efa 100644 --- a/code/components/jomjol_flowcontroll/ClassFlowPostProcessing.cpp +++ b/code/components/jomjol_flowcontroll/ClassFlowPostProcessing.cpp @@ -28,10 +28,11 @@ string ClassFlowPostProcessing::GetPreValue(std::string _number) if (NUMBERS[i]->name == _number) index = i; - result = RundeOutput(NUMBERS[index]->PreValue, -NUMBERS[index]->DecimalShift); +// result = RundeOutput(NUMBERS[index]->PreValue, -NUMBERS[index]->DecimalShift); + result = RundeOutput(NUMBERS[index]->PreValue, NUMBERS[index]->Nachkomma); - if (NUMBERS[index]->digit_roi && NUMBERS[index]->analog_roi) - result = RundeOutput(NUMBERS[index]->PreValue, NUMBERS[index]->AnzahlAnalog - NUMBERS[index]->DecimalShift); +// if (NUMBERS[index]->digit_roi && NUMBERS[index]->analog_roi) +// result = RundeOutput(NUMBERS[index]->PreValue, NUMBERS[index]->AnzahlAnalog - NUMBERS[index]->DecimalShift); return result; } @@ -83,6 +84,7 @@ bool ClassFlowPostProcessing::LoadPreValue(void) if (NUMBERS[j]->name == name) { NUMBERS[j]->PreValue = stof(zwvalue.c_str()); + NUMBERS[j]->ReturnPreValue = RundeOutput(NUMBERS[j]->PreValue, NUMBERS[j]->Nachkomma); time_t tStart; int yy, month, dd, hh, mm, ss; @@ -247,10 +249,10 @@ void ClassFlowPostProcessing::handleDecimalSeparator(string _decsep, string _val { string _digit, _decpos; int _pospunkt = _decsep.find_first_of("."); -// printf("Name: %s, Pospunkt: %d\n", _name.c_str(), _pospunkt); + printf("Name: %s, Pospunkt: %d\n", _decsep.c_str(), _pospunkt); if (_pospunkt > -1) { - _digit = _decsep.substr(_pospunkt+1, _decsep.length() - _pospunkt - 1); + _digit = _decsep.substr(0, _pospunkt); } else { @@ -264,6 +266,8 @@ void ClassFlowPostProcessing::handleDecimalSeparator(string _decsep, string _val if (NUMBERS[j]->name == _digit) NUMBERS[j]->DecimalShift = stoi(_value); + + NUMBERS[j]->Nachkomma = NUMBERS[j]->AnzahlAnalog - NUMBERS[j]->DecimalShift; } } @@ -289,7 +293,9 @@ bool ClassFlowPostProcessing::ReadParameter(FILE* pfile, string& aktparamgraph) while (this->getNextLine(pfile, &aktparamgraph) && !this->isNewParagraph(aktparamgraph)) { zerlegt = this->ZerlegeZeile(aktparamgraph); - if ((toUpper(zerlegt[0].substr(0, 12)) == "DECIMALSHIFT") && (zerlegt.size() > 1)) + std::string _param = GetParameterName(zerlegt[0]); + + if ((toUpper(_param) == "DECIMALSHIFT") && (zerlegt.size() > 1)) { handleDecimalSeparator(zerlegt[0], zerlegt[1]); } @@ -364,8 +370,10 @@ void ClassFlowPostProcessing::InitNUMBERS() } } - flowDigit->UpdateNameNumbers(&name_numbers); - flowAnalog->UpdateNameNumbers(&name_numbers); + if (flowDigit) + flowDigit->UpdateNameNumbers(&name_numbers); + if (flowAnalog) + flowAnalog->UpdateNameNumbers(&name_numbers); printf("Anzahl NUMBERS: %d - DIGITS: %d, ANALOG: %d\n", name_numbers.size(), anzDIGIT, anzANALOG); @@ -398,6 +406,7 @@ void ClassFlowPostProcessing::InitNUMBERS() _number->ReturnValue = ""; // korrigierter Rückgabewert, ggf. mit Fehlermeldung _number->ReturnValueNoError = ""; // korrigierter Rückgabewert ohne Fehlermeldung _number->ErrorMessageText = ""; // Fehlermeldung bei Consistency Check + _number->ReturnPreValue = ""; _number->PreValueOkay = false; _number->AllowNegativeRates = false; _number->MaxRateValue = 0.1; @@ -414,6 +423,8 @@ void ClassFlowPostProcessing::InitNUMBERS() _number->ReturnValueNoError = ""; // korrigierter Rückgabewert ohne Fehlermeldung _number->ErrorMessageText = ""; // Fehlermeldung bei Consistency Check + _number->Nachkomma = _number->AnzahlAnalog; + NUMBERS.push_back(_number); } @@ -519,6 +530,7 @@ bool ClassFlowPostProcessing::doFlow(string zwtime) NUMBERS[j]->PreValueOkay = true; NUMBERS[j]->PreValue = NUMBERS[j]->Value; + NUMBERS[j]->ReturnPreValue = RundeOutput(NUMBERS[j]->PreValue, NUMBERS[j]->Nachkomma); NUMBERS[j]->lastvalue = flowMakeImage->getTimeImageTaken(); zwtime = ConvertTimeToString(NUMBERS[j]->lastvalue, PREVALUE_TIME_FORMAT_OUTPUT); @@ -547,9 +559,9 @@ bool ClassFlowPostProcessing::doFlow(string zwtime) if (NUMBERS[j]->useMaxRateValue && (abs(NUMBERS[j]->Value - NUMBERS[j]->PreValue) > NUMBERS[j]->MaxRateValue)) { - NUMBERS[j]->ErrorMessageText = NUMBERS[j]->ErrorMessageText + "Rate too high - Read: " + zwvalue + " - Pre: " + RundeOutput(NUMBERS[j]->Value, NUMBERS[j]->AnzahlAnalog - NUMBERS[j]->DecimalShift) + " "; + NUMBERS[j]->ErrorMessageText = NUMBERS[j]->ErrorMessageText + "Rate too high - Read: " + RundeOutput(NUMBERS[j]->Value, NUMBERS[j]->Nachkomma) + " - Pre: " + RundeOutput(NUMBERS[j]->PreValue, NUMBERS[j]->Nachkomma) + " "; NUMBERS[j]->Value = NUMBERS[j]->PreValue; - zwvalue = RundeOutput(NUMBERS[j]->Value, NUMBERS[j]->AnzahlAnalog - NUMBERS[j]->DecimalShift); + zwvalue = RundeOutput(NUMBERS[j]->Value, NUMBERS[j]->Nachkomma); } NUMBERS[j]->ReturnValueNoError = zwvalue; @@ -566,6 +578,7 @@ bool ClassFlowPostProcessing::doFlow(string zwtime) if (NUMBERS[j]->ErrorMessageText.length() == 0) { NUMBERS[j]->PreValue = NUMBERS[j]->Value; + NUMBERS[j]->ReturnPreValue = RundeOutput(NUMBERS[j]->PreValue, NUMBERS[j]->Nachkomma); NUMBERS[j]->ErrorMessageText = "no error"; UpdatePreValueINI = true; } diff --git a/code/components/jomjol_flowcontroll/ClassFlowPostProcessing.h b/code/components/jomjol_flowcontroll/ClassFlowPostProcessing.h index 4e8858ec..30cd4da9 100644 --- a/code/components/jomjol_flowcontroll/ClassFlowPostProcessing.h +++ b/code/components/jomjol_flowcontroll/ClassFlowPostProcessing.h @@ -23,11 +23,13 @@ struct NumberPost { float Value; // letzer ausgelesener Wert, inkl. Korrekturen string ReturnRawValue; // Rohwert (mit N & führenden 0) string ReturnValue; // korrigierter Rückgabewert, ggf. mit Fehlermeldung - string ReturnValueNoError; // korrigierter Rückgabewert ohne Fehlermeldung + string ReturnPreValue; // korrigierter Rückgabewert ohne Fehlermeldung + string ReturnValueNoError; string ErrorMessageText; // Fehlermeldung bei Consistency Check int AnzahlAnalog; int AnzahlDigital; int DecimalShift; + int Nachkomma; // ClassFlowAnalog* ANALOG; // ClassFlowDigit* DIGIT; diff --git a/code/main/server_main.cpp b/code/main/server_main.cpp index ac119e22..e93573df 100644 --- a/code/main/server_main.cpp +++ b/code/main/server_main.cpp @@ -387,7 +387,7 @@ httpd_handle_t start_webserver(void) httpd_config_t config = { }; config.task_priority = tskIDLE_PRIORITY+5; - config.stack_size = 32384; // bei 32k stürzt das Programm beim Bilderaufnehmen ab + config.stack_size = 32768; // bei 32k stürzt das Programm beim Bilderaufnehmen ab config.core_id = tskNO_AFFINITY; config.server_port = 80; config.ctrl_port = 32768; diff --git a/code/main/version.cpp b/code/main/version.cpp index a4f66cad..9f656470 100644 --- a/code/main/version.cpp +++ b/code/main/version.cpp @@ -1,4 +1,4 @@ -const char* GIT_REV="f4edd36"; +const char* GIT_REV="45154cb"; const char* GIT_TAG=""; const char* GIT_BRANCH="rolling"; -const char* BUILD_TIME="2021-06-17 20:14"; \ No newline at end of file +const char* BUILD_TIME="2021-07-01 19:03"; \ No newline at end of file diff --git a/code/version.cpp b/code/version.cpp index a4f66cad..9f656470 100644 --- a/code/version.cpp +++ b/code/version.cpp @@ -1,4 +1,4 @@ -const char* GIT_REV="f4edd36"; +const char* GIT_REV="45154cb"; const char* GIT_TAG=""; const char* GIT_BRANCH="rolling"; -const char* BUILD_TIME="2021-06-17 20:14"; \ No newline at end of file +const char* BUILD_TIME="2021-07-01 19:03"; \ No newline at end of file diff --git a/firmware/bootloader.bin b/firmware/bootloader.bin index dbf2125547b57c9dd6d959a882b6e5416c1aad2d..1bbf3c6cd6238e08729dccc34134938bf009b8b7 100644 GIT binary patch delta 61 zcmdmRlyL(P$q929T3Q*HS{a#4W@M4rY$qJ(ulUa1>)~l5mYk@`tO{#1p3Jll%@CPz R{^Rbc`d^Q_o0y4c0|1RW7Nr0H delta 61 zcmdmRlyL(P$q9298CV&bSs9v6W@M4rY$qJ(ulVG3X2EoySK8^ !_QyRl=Ntv)Wq_GscpnTE6BQMc6lJSuSg2T(l&Gj!l&Gj!XzE~>3X2M_ z=EkJLqEbV{v^!*&Sl*&S#l)gS#Ui63#V!^l~zT%o%2g`v33$^E{8A&)2p0T5G?Y zea_iuofr00@6D>-msJ$3ZQc}ehiUlDW1>fn85OIs|GRZnmc=rB(_=SUMt)NCNXfmv z$s3<}^RqiGB||ob&A!@ikY;7&nEC6QMhuAH8^&sr_gl0j+VJWhJz3dhPqwqolhuOs zR! FNihJcaaW)Kf1 zgIhsz$^N~eLDK$Z0o%2kUyHmTO-!0P{WiJr3pacqZhpjn#{SO-?Fg}IDt_~1Z-J0& zp6noGBxE(@2jCNM5_}HMg0I1M;4-)hu7TU&uLZq<2k-&@_B7Sm4^W*`dZe!>8wx`# zh~KYGe0+j7ZU4rNVF}jL+q~G%&v~&|wtKM&C0=YV@^c|y08RG1_60At9K7|SVke(| zrAm6+%U-NknHMVtq$iHr)9=3G#jb*-JH6O9;PzczK6c-`nA>he`6=Xp9bRlVI`S|a zBhaAkdBye^Y}Ix@wUM6WQTYD`p4`9g_zm7Zqki;ad%%0(9BA9T@9gCv@Bi$@UI%6E z3TKd(e(_?1!4qIJ*amijy_=7nn>3{SH!rpcOueS?A<~zCKk~~vz1R-08SDl}_K!P% zpU!8Ow>O&&a=~`6YyVppW(0@yTjtFwvb|Z;a&OiGcCE0dA*1$(|M8mpgtA#M2^tOC z@6FP`*J#`zDc|(EH*42wG$niN_HVspeOZ{2uNL)kzQX42rWN!);s@{tUw}Rzdb1c? zh*|61%jYZjc}RLD^@0RJwsE1_f%+lh7(E*SW`Mb1iJeTyTJVdV@UeQ9VB0iQJ4t8# zIS%E=>6v!Cp4|uD0?F}ub}z^VYd}7D25bY>paXa@JsS(|1A9OtI5`0lcumr?@&rBm zq8oo8-wmrn(PxUDg@7BuXpjJAf+b)L*bH6;2SLQGdiFN>Hd)Vp0$(AmOVYDKq&I+9 z@6xlYAa9nQm4IV2_00bcJsXs&XJug0-Pq_mu_1R_^{fvZizn*Y0q{0>9_X CmRnxSV)!Cr6$^o7l2M{D9IM`-=6 zrE~O5Gxz@+d{OTu)UOhRd;n;)>wcc2A0ZpBL2(!cqTf9136Ke%1qGlPG=j) 39OW ?a^DclLAw#C;PC91RvIV6wV)_g7;AHh@QnF@9{o{ z8Zr&K3XtAAoHbVCz>D``iC_yTyvc{ Z!cNhs7oOu+7?yGi=KiX@Bh7 zKfJFG^Y7!sE`f1KM?gLf$w3wP(8Gtd@eRwhUkAA9eb`W69~KY3M*4X#JGONzw1Qzs zVTBLtz0Zdw0}jps%YGlW1RMmt5BRYDZ~CxYaLl&nG40oG*5oQ576r^e1M1#Ev!EOl zgWk9p?<<`U9}SrY;+*_jVDIkV3qJYqw?HyV!zUdiffyiywu3&b3Dh3+u`&rxvrr(| zULYF|YJuQC7hod%qTp|^`&Xl)3Qz)KsxjP<*&rPx0nEJ`@x=-8db>Y^E*b=b$}n$V zCL+=HHhKhVZO<2JKa_kb-F?|Ha0Yw_ezC3Es{LH6y~?K*YvZ*y^QVfn!#oT6`Z6LL zr16i6wN}qsB#8r{l;62cJKHDN! 0`yT6?CHxg zkxmA2wqx71!zRtSy~&q_fk!~U3tj9-z76C+N8~x#$ZsEP+aX6a`?5n{`?7Z+zxt+& zDM(MT-F;sBy3u%Bk{=^d?Uc>%W1I(E)jmAvt9$&I`)ofp5F~*`U>`UNI>1OErTMV| zwnJC7pZgiJj{C8V;1$pUPJp* g0M(ZJ4u<6s}~m0a`n@G(H20&>6s Sg~7N6 zoHDX}II>MA{WuHMl@D+F!NByb(4bDWTO#tYpc36AsJS-yML;J~$>< NHP)%0I7tbfL^ z{;M^bgb*Wp8Em&0*=wOjrtK$Vl@o74QQM`Ib?IRaC)JsqfbJ}qj7sbk$nrkqsp2c$ z^v*spXnZsH5nKa)a(h;#A~HBTQ`&@vUI*Rvlpolwp}XxJIC`6rJq{k4iV?Wg$PR+4 zWFuP#mQ6RZ;2B2tCZG|ef6V%mfu)0^Aoo88mK74tWDEXF7fq}f#6gz`>aG}AGw1-S zPupb!ZZom_h8S6Wl#z9gFtX^;MwT(w$Xc0^HBC0M>H)|PG%~kHBijPKTGkEatWEe& z<7s4#9@wYeIM95Itj5>KB8*0s=Wk?L(5VG1@NFl5`@bA?x&o;A)ayo81kC7c1js{2 zw}73X3PeL!dI@Jfu$QrFDp8;fwBx|mz#$rr2_O|@0T1Y6Q6Q_Ukj4XzMu9ZgQh&nM zL8_flWlEco{S~TD!DTB>U2IY5?M4=RN7t5?Vpz+d@4%59)2B-x3!NJ}mF=WUhAtSo z6m+8H7R(!oMpin-$P$p&L#mCrq0UVBs`*6Z*Xo@Vl~7djkT6}CHR?`u9;m(y=}fS2 zsgcb97BC7-0KJzR+0|?#I|>@WH(>MQM)n_Y`3WQYrNGGM6m}tP#Bm6mbrr68t85HI z;UVBz;OzVk@>KCHPrB-zeg1*QzXs#b_-!D=sS~7k_NDZ_=)g5cC# #V=;QD?e+jjuR?^{MT?H!Cd5Z;CkBp&P<#j4pj&H+oqi2{=P|HWZrZTstEr~5Ib z?xGCI#7aOgDvbp7_ZV3^8p{EyPuAV&5cIhm668E@WaT@Itoaoq%YGfZxB_SICL^=f z RSt4F?2ELME0AQG(qG(Tz)_?hF|uJ#Q*u&>Sj303jB8z`3|Ri4AL>S zv;A~0YOReY;rA)_H)PB>6U&6Oj0|T{ARVZ67~m5L;()44$Hlw=(AB>UbN~;!@`Fe~ zSN~{8T>V)ppo@Pxq*^}b6n0k$l$lUwgIrJuO2JN&sGtI}5;TBL_%=bR6=a{rC;_zt zNuS|(8VWlkbztr17+KiMK_kdO-U6FiKJD~K3>^$=2MS?qLj`(B>OeDO1Pawc#zEGB zGQOw3&Ofla0fP)W5oHimXC3k#4g6exooP_a86!&t&h`Z4vw+%u`#BufJY;}w_VDk% zH?rN}13+nyAB=2RH*C rU4fNv=%hd=pd z{DPqZ?MMfAU`&4D=LYKDvu;7U9OMACY&FsiU@e%WDj{ods>TT>mN24ge>X#y+)dX3 zT}C&Z2lBbybQZzXn-xNtG{QDukZ!AJZ8n>jM}Udd;xKOj)y%}|Kod|qVu3vlR2odI z@J18sbUG!Ppf?Aa*iPsUfIO5d0;Qk=R6|#fQ_5|8SA9|N&j9%&!>z0c4h)XTART0b z66mr}s1&H3$U{RVKx0B@(Fs*w0bMOfhrT+hOP`Adia|N_S%Xm)QY}*seLaYdwT82} z*leK=UF$k5SV8T!|06*2X6Z$6L0i7A-qP!c*nn5IpfUb3eiCG@$ zs;?dXQNbqGGCG{KgG`iZu;xPnI)Da+@=>S~s0}5ePzG?rZpud|RDCXVTR Z~qjGb)b(?fxcK1@b`>Fn~sk zNaOY{-|QF+FK8Zy5sF6a2pC8~Uf+cI8?y6!*U?@9-v$tM0aIW01x!hBC;&&{+yFX& z2lVC8Rg)g+cA##FDxEJf-P5X%D!bd2Jg%pdP@QUT##VsJF*wR`&WT97;b7E*e5B2g zs&6UzfvB;HZ^!5^-&T}2kL13?bq`uSa1dKS66)JI*~I<{=7E*q5s;FIvkUYEVPGhz zoMB@A$r%0HP0V+uiOosr!h-zhZn~OodGa5PvXgH&S=k;WoGbVkd8&BY9j 4 97;!_P$JM^AJwey+JZFb zazQ%urPeNe1R6*H< #mNfkupA8OQ=LpcA|GD6sokHJ#XMGb(Sr5A!}) z3le|_sK;m+o-naLHk#Nc;5@hl-YGP(SHVi~IM@mXZ!xhaK^BMZSra>3+{LrVmv_^# ztz^g6I6J-p Tu4 zD(<5| jKQIGRVxz z!_1D3?Bu_0)15LU-e6{H` nASwyj7u~l%IvDNaIo!QiSDA-)RAOnNwdtX_)atPn4?r%Jk9p67j(U} z{bJ{uS@HvB7JHwW1+P$ynb0j-nLTe=&ir}HvN!u|Ht;bo>H63@U(^)_j^BLP%$^1d zfE7#u8^J2D29S>IBvl`h`LfRT!9m^aqBfZa9M;8~`yZYdpMkN-`Urzk10TD@tKvIs z?;qA()p_Ji!9$0mW|j-dkM!53*v#+i(zVt<&Y0Q1!5Kj5@J8&wZk&Mrdnfx{7tJgL zj0BWk4NAH(5c!EfwX1vX{-rsKR@^&(;i7pj3+h25XaVg&e_~?18CXChhz7BMfdr5Q zQb5KDD=J2!425zb*MdS&LOPHJDnJ!zI*Fb`)_^+D02)CvXak+VtqzTYU=RVKK^#Z` z$si46f^4uB V9*Zu1~@vLXc}m zJ#fV#0W32rfF(m83!?4R4-UXnzyQ`79l*>;r$Zk(DuBhtLU$wo_>69aDGxd#J3fG= zumDzobS2}rH|k!USbGlp88m`s& 0g)gY#DN5m3{ubYF=urH#*d#6 zz@~x}Fb_NcR)IY5B-jdefO231?}1|=5{#T+d*Q6^E@4=HY5=1RuD%-^J5Ncg13 S6b7=RMT+i*&59)Z$oxQ7{(&-hHIO_1VGU%?V@_#jhuqnJZ%;)B z|E_!#w)F4p=6)EmzjNsP*uHz4T6FEJty)`br>6zW8(9y}k@&$DwZo--8Z7I%f_; z$J1MNqxj4pbSu4MV5S~Kw*<1}F9YSn%of+GE75u%_)am!{Tj&Xz6<2n1BB;n8!qXd z(Rx+?rkENbJFnS7+jJ)3fsX@&7_mAii2V~#Iv;3}9uDg5_D}3K)&IYh^Md#b|IzKX zZVC^=bb$H?2Qf+$!}|rXV(3 HGG)Bh%E7ZXH{@5~%)}!_` z<*Bh)=mJ0kAe{%=BI&^DocUj*seu&(f|wtA|B5|Ld1@>Xx kj`_YA}Re>SpUjE zdTJnLAdU|V;{b9Al(^k8Oi?=tD^ul@bFDREPGfGn{Ss(MhCHRNK4@K zD8+UQbma4Y#fEy)#UPdoG#aBuQzR$o^i}>Pi9xnmzvx1=UQw~+qR}Km7A>(o(xF?b zb*ov5ja-hC;iOqk=dS2Vm#*wew>bHDIO&U)b@^0h%jw=x&_!nlDHoZ5Yr1&vEvuBK zD Y*)p|8Qswg#&1+nVKIg|^y#~->DZ*!4ih=FX_ z6eLeS{Q2v;XL{$o7R2IqDK$U4O1Q;4YLDWY2${Cm?z%`T%<$TBP_a}%TB@n`2Y9+5 zNPM_X7&d*`r6AVY8pNjm7{qo0Bl4tk=1JHq+k#lkWt`NY4a`BFbk3Z*#P{liG2V61 z)5y0%77YnjuG?rbV!*pM1+&w`gV|>>!R*|KVD`zVU`9G;z8+@VEeQPt@8r?Jay40y zwQ<49_=fZrW)Ca6N3oPc)-O`h)S&v$*=|U)m;4STz4h6OcNApCa;0nDJ0De)Z6pg6 zcbliX@UZ95xK!o2gWKs~*7D|`TT<=m^}(!a6aOPX*v@DA3$OKJ4Z$q=GyaFa@JFvU zq$9tibON6eAo%t&d>70rzvpuUgf#<>wg$5lp!QvrJ9~%7x}%WAZ8p?=qs}|YTTy00 z9?*v Q(=6;LdV|y%2@YQ;kjkfn|ZV0Qk+f6H1Ef~6Rp{8kpV(VNO z!Ya0g$U8o+=0!!B^Lhwtwx`vNBx%?k!hQp%z#gy(WPwqDHw6hJY@dY-KMCFq`;>ax zAq%QPl#}7t0fG;IWPotcJM{y5Gmsr0D{a$p9%}n^pfE*it-l*@A%W&x2s?T C;D zBrMQ|E&V=(Jp|T+$HCKJ+RT)cdCG%}%|3nnZCi&3fo@Up?IEoFY6$cFIfTswl-~HC z5PX8B$bPU>ehqBgXR2VfwT}|&Or90fCdKE0WMJVZlZ260J(64I;!6+^IX09X9TO@a zdbD@)klq3+fZ^s)`6FeM-M<9> G(d%Xdz_IAEB6;(vsJ}G{% zQpH}VC-Xz(oC&SOeeOmT256t;o_9mLSJuua?J#KT`5e;z25oP?kF?RyTKFDlwNv -@is6OpI@L8 pxw(o=R*6btesEVA<+KH=aAMiOCC_t4u$p>+n%|?lY+Hi zcPM)ne6}x?9kPY8kHNnWhO+#3LRk$s1+0gldpDHTfsS3F?3KfzY!7%7P<|lFyH|&@ z0C47`P`2q O$G+lcB5?`~qgx sz!`$Z}>8s-Nko19nKn6}f$lD+p S&EwHW$C6lXM5#7;c;oGZh9E&3w%Kk z=m!Ra5nwEs2yO!@;GXHWdzJ_<^s;)-4r4dm9mWQMVPF&(3nqYDz%+0-m 1WC?CV;KPdR|^allIZCQa1E(>EH084fl zdjt7BU@FK4^K-)3ozOGLL4fiqr2i|(*V%TLJ@2d^n;m9#adIx8rqvE4p)nM2G_LAN zr~0ar8Y8{hDCyO-v;Wv^9Aj%>tOV JCt7fU>M%IDXeu$ zlWv$(ego3m9#Z@^LB3{BU(LlCreakSJxH~Yp5&VKO2sd%#__ZU8-ct^cmMJ5QFZ@% zqAN{0>*{9|#et$OL&lb_v|6ycbnZZTw+>7~gQR=P-tYpueC;tDYv{m=ryVw&cId!Q zt8m0Sbzp_P13#_eV^#}Otjl(Xv7B8P&N^4BdeD(iGW`EHbg$1j{~79_yyxpUNVg(G z3KeHZN_*R#DZRrfP5Cq3@}zsuNq5mHO*R#^1HP~0lug;&)i@b0Vaq2$r#4)R`~c`j zydK70g$#vMD{4YM1RMaWPVGR*ZvN#OVSu&%G*0_Z!`Pd^;}k9x$ZrFqKpL3#IW9ZU zM?o3^ ZK6HztRHv^Bkb(dQ(EmnEE+=rN8_rVbluBQW29FbCA*q-_8)i( z)4;tjmVx{0!`M#H23nCn_*od64oE&~htj*h3}YQXE4<^BCf#DEd^OU|XB59i$gB1= z{w{}2QL(Ct9;DjH-^m|P?$o)i4*i`k*{)u6^|fkR6@~YYT?V%+UFrX+Lh8V|ZXL+C z>%N4f@-N%v<*zWoejCQzeh6cB8x-ikPz+U|QwJ8>hjHkaG!68#CTT3J|L 2QfH^0(rO1P&=?9h8dvqC z>t2o;BfZ)v+10eO|BJulAUy|T@E>990 i#fy zrAcRfFGNvj!nzC<{kqa>!S2$z1EPCZ `##mUtu@?3(uq4i6l^eetXJJFeTUc$p zg?$5@I~2#d@^{(OA4ATbXkn|s9$*9aPqMH=RC)<={NHTQ9CY9-umHZ( 7&DoE%7Z+$n#_p8ms0=RMVS@eyH+)|$QC!lo|8)_|R0H1eas$!rVj z0N<^!u(QzDK<)#SS0VjhLB7tmbN0Nm{{5xckIqg#rPU79qcIe4G_LAN*S#DyMtZeT zva4xl|M!<-KkAlQ7y}ZvHUSiZ0_5*PCEsHtNQT>?^rcl6miSMF>rQFXz2TG>AGEN@ zhZH{x 6`pu7Ul#*fhM;3MzP`b}27N-ASpf=KztU9UGbrAKCo$@NK{y0kSwmZ2R zl!Aww6zObx{NkT=&UQ*WcVOqSuEt3}7wwU57quG?=XLfDod4XyK01T*>%83v8+D); zhN|SNu0|)@hmrJKpA>?*{z*Z!1wSct1WHLK4fw)v!mGj!+Co0=RbgO23p7!f^h5#w zd08|D2+AAyx>p5%iT>(-0N*oO3^6pc;*Tpl=&`ODSU}UK{Nq=Jz&`D#@aMG1i%tB} zt3s^*pFPX!4eTa9+(-16+K>$3N6rcUS`WVbH6aK+dFnM`wA69hz-IDIuL*uq4Ju3G z7hV(Y2#NaKz-Ce1?a$x=oYF~ZKNcOy=QDQ-%cM5AOyn1ah%=;^1_K*|7dPT!DI3Ww zK72Q-E5P%&M!sX05G1ujJA`k@K}RCKFfcE^?-nFukTmm|b47n`68G7SKBe;^5K=x2 zVSIu?^yejJ(ah^+Aa$Zu=*6Ehh+*0?{`PKRw6>C8*)7~5)qaV;KIRveh-MKfAHMt; z2Cx&!0eqhuHFyRq7|1>16|W1aQY`YpO5Rc~)JQ3g{MJ1%XCs@Sn6vi?qI3Xxy|O{M zSo7p4-?Rs#)&Om&;?=ZAh|_hP;h}qlo1} xUg1M& zC-T$e(dMOZp!N>r(RmZ>hu(m{;k?7HuYf%R`JsGy28L)0A6_9G^ZWB&uHZiVgdopG zxK5;9)`4BdH;Lk4-jpQX#xL*0%gUk-+7v9&5UF&!Zl56bZA5-Nl@N>g`F+Av&)^FN z=8Zip>WfgtOkc4d4|`pZY-w)_O WuMBJ#xhIfy_$o9|WDv8Z2Iz0(Cs&F7eMBtk zAon5H*5@tZMs1%)D6UYMeB1bc32Ssx4*tm9B=^BqS1J4^_OLzW{Olnd1hfFeHonP- zU0Cp~f!)bBMIqUQWFS8xiX+22kz7D^SD`;n$0!}fw2H(HU7Om67K`XlTUKk^{jTtw zZeIC!I8LeXdDp^aIM&VI8`v7MU3Rrq!?p#shsbu_VT+~{qY*X_tS#{f+59%yUOpmd zB`F0fO$6`>R|JEnyGE0ZTr$}Q@{d0dI<*b_jR (#bYS zw(-kJVqDiA<#{#2n>~zRG@t(wPJ%cTOrT_tHdWD3m05C )H&*l4MUR (FLeGm2`3~(jI)n3Am^4MmktYXB$LO8>OV%=8B?Z{u!&2C{sZ-%1Fsw z`MTYL#j^l;xgX`|2Or`l4%WuW#kW3)nv#^7qNj=?&pRPtj+_T=mZB{^hIZE~Y0P;d z=6dRnREaksC5jrKfrwH~SCjhV=z``KN0*|G3pu*-P<|<04AixS@^_C5fl^FZIJ=o2 zIgV$|ZRDSg{3s>waRNh^f%5XstW<_>*dAe!v=dIs1j^+JwbGIAMH6aG7=Pge>TYnT zdEE)r-O`oE3_DUe=(87Kb0h17V5tMf !kK8>RzM@~zvP#04&D75M~tW|>JTa5Xq zdUDBUUW6x(`A$A`w_xJwpJ5aAzuO(R@TH##x9Zq+#aQ ;h9Y_!x#91Yh4WTW-aJbI_&e<~XX zJKnN1pv&2OU4sx7(%#43 t~oU0o0ul#4)t~&oSD2u-n6Gd9T-!?@%0iR8hO55xJfg*g8jWuSOv-JPK<#h~(qG zMLn=&AB!J8Z5^$)6&{CdI ka}N5BK|&{TA1T#ArAwmp`+Ig-vsWQX171=YNwHp zgq@ZODyBi+=CI3$K>}>FgisaPUfaSC{~`qS5S*;#JI>*NEa8VBbQO2 %sFBZPi_{1y=&$gl?cS+S@PrYyM#g7Og^CnTbP9jHdjf~eO`f_ rBrwNpiZA#y-CKfgo_(8Uhm zOON4-UD?%E-9@zB)|Jmjl*QXF3fa2E0Tlh1dPU;=EgZnte~W^3sPtwY{tym3kAaRL zDET3jsrwfFO-Z-!n+T=9hsy HOKgB!w|BINY^ QTZQJ>r>Cxg_?L!40`exnA7a z8~C;#5#1#4D?j4Q&m@6yN4QeR=U>9fRH0}RpsAOWyy6lLz78c_dr62Bf)^P1u-$@@ zTP`Cqsa!zIPtj8fIgF7s3yrvirM!C@LY%_E>P@OOm$DgHM+!%+nBwTMd@^l;t@B>H zt=8360bADnSZ9b%w1llL=UFXmNsH~_Lz%-SpY$!TRl|n4lrClbmMel6MNi6oGsRLA z1vRLpkGhtQgDr_~Y7>Gct;3E*s7M6mHQHQgRd&$ob_q z!6?ysQe)-tq+c!UamdP{S~OQTO6fRkZG-vvE5c1$H$K4+X9fjL6@1eb?4e@5heRd+ z=n5`Qw0M^i7;XIt`zeh}KS7)EkdaMS;vxpMM9X{G<022lGYx$HPpHDo*TGp^#h*t` z*Sdxu{7DGarL0u~qBg28pI@c=Xh|?79_rtS@@>eDp#i~$YV6@%Hj*?b6fZ^bng2ok zX?)3lP=Bzz339yDx`Fzk#!LD~D0))kr38LKDfByuU>?wph8y#Ztb||r5;qefB8=R} zjO n>}7Cb5tjn5D|mWifzOA zg PcY|E~8Xg;|{yaaaWfdxX`k1_JF48Dt0-o_NIhQ;S?FAB5R_k z>1)@bHLzv#ke^X|>FZdkiaOBY>OxOcX)!tb#!-M&%$K7Cg4w5j#tyFKdmwb#Z}Jz; zVveI#(3E&->n}p;y|Mcd;!(?<#p;+jVx$P1n{ky`l8c%h>}scjNsfcCI9oC8$f*vy zypz*WmKJW4W29O9-Cq#UH1PNcafo#EFjf_lpU_Ipa+02R$#IdVSZ!oCQEm65Ha;^z zjIyelRgU`Qv#=RnIjU`gt4)Kcs9d!@)n%hIpCXfH*w#=h+sLNe|0E+%+e9-$`Vo6C zb`?+JhF^uHJv?zPh7X>L;)yfP^?kqMNomS^v^W_a*d3Odk(|Ld{YNlJs4nJx{(>al zq|M;kYw)Xi-^dPgpI(?Z3Xak#CeO~S7XpeZzWkbS4db+=6VIJB|0e6ET3iBRkPJ~A z^}i#c!|m_yhzWC{?x#ElE dw&dP8~Ymp3-4-Z}{iouu%4~gRY+A_XDLc{GJ%Y!LJd_s3~+Bu?`hg`$KUd26o zp&!|`E+Z pU2sQsE&ttJ94%EHr`=7vQKG2EgU{>(t>px*{wVKU8egdx z`B`$lR|~w_PRIitUFR5RhU6_>16{y(^hFyLwnKfz$F))|tZ~W%ayLHT6P9Sc4nj&i ziDg*jdTkizM|8n|esE5U6voj3{}!LF7f19-`V <~WG2RoTo8dP?cM5`6zl1$I8Y2CpTIu-mSTGJ3?GY&~wo$xMY zKtBBj8rr@Nn#x{RTGyaAOJ%9SA~`v-3_h!&|_u7RH6^I)Smv4=yk z8XiOCFrXKWS=&(lv=J52nutba^Js}gv%GnDM0&x9eLxE++MjG;(?p5ZLsav40U^;M ziZ{x)b~toqny~W x-W ^R!gln>@j|bX zv^Xm%t&hWWT}tVozLl!G^c)`>Cr;)10XP<0p!JjQ_H1hhh$czB`q2V**s*v&sVf-9 z&kYuD43QVYqxLZ0IKLyMh4CWfm!mx#rg2{z*=XegRKS- eRi+-Ddz znQnQdgm1ATw(@>63rXeuCj8+sTG;ZfJaGo_k{Ng%=Xi}NRl+lxAKH!6vZcl56)oPY zlR8@{0Fq}%dRUIff15_2tz^Du1m@0+@8rt?-L}wMM;<#;jMe7bmXE~bD^ p4|9ICh$TPmc6zmFiykFfwAxfY^CmI8hk AHChZG`R8f7{0c5+w8N4d^~pPorln5U+?628{1YWF3>F7s zBPYaS+N7m-z2yVvzCYKR3*&oKYnG$dXgTtMF77`@)(gEA^IdJJuqCwHn@OP3{fd zBQbs }Pwqv#z$HK`0mn zBcn>cb2ZYVt1Q)amG8Y-4DRuP*jda218FVR0aS^&-Q`T7o^`<1k8I}cJZy|OTRE>I z_={u2fAny4<#)(e0{Swc70JHxE*sQ=WD->p<=OykUc#?fOPg#-u<>#43d*}_UNu&X zlk#Eo>v~4mr}8%=tE3&4&d0=wxAx8M#Epc!1Gn?*dNHVn9?@dt6Xl76H)V^#5-nCf zQNFOrF*qW+A>(ig(xS+4qf?M3KAtxYz6HM<*|& ^~^K<2>&8Xhrx~>h^Zm zO`> b&KC>$Q7*5D7w7hH zI8}123p!e&^`r6NPrb{*bz>8jiycRc{>!cPEpa)@YOq1{V*qk%L9RBs?Wu-shkOhS zq?O3!Dh9f`(OnL$P%c+7y5!Ft#{2X#UOG{{G3L+bY;bR^w@8DU;HcCwL6pGuyOw)( z2&Rw{ce`Jzs~;W2`0iwq*#EX3D)+$hrBwO-jzW$(EfTid$+pDRmI@snrcc6bE1w*4 z=oMZL@AnW$i)$U;%nVOD)3^AU5cVqvFXFL2704G*&0Bb2f|!DHc3Fb>WDh4tvcW{p z$LMrjizHsW;zBLaYQ_Qb4#c%|{$yOIJow4U@S(O6 Zk}i4x=>wF;*BwR^ zZoA~J&?%$SnE3Gr@Txi8#6z=0)7HgsE#VWUz?Ie?Ms(|oifJX`03`;dC3KZnyF8nm z4SXM*5l2EG)W)99my=s>fw4+X@+LS+v>vaI94w<%jT;|#3+|sX&D3n5M63OJDczEv zWgp<1VAj^~JrH-dVgXt_=F*6-IL21qOLTS1!J5Huk!_d5CXc%T(Mwc_i5(`}aaUV3 zY^|`#4@> `L+7LU?fmmQtjLET20nmWQ(*6}Jph57jAc$ci_b z*kd$;%U@78I-QPc4|*mKn;d9waM)NdZ1lXI*10aFa!>KlTSZd{tz(@+`Rxv0`MFF6 ze5?7)Tg9M>&2W()w!G$Wk%yuLF2PY)&XS7T9JX|7s*;MsCSQj?;(Mv7m?2ool6+4) zeC4Lv;k$)jKvR>d;399;cMcbMtD xiQ^7z|CV+bu& zEpL|Ji|X*mZRNu`moL8!n^giAd9%VCF7jqo!KEHHd9#K&Z1QF`Q1NK{W=-J7Zxc;@ zT9IEuZBOHuZtF2xNaG<%;vD;316>G)DPNIAPZN)O#Qu5iqs6apq#EZtTDQ=?r9g)k zx*kBbMf|3F#1XpI82-RLVyF~5%7j>S-)zy3m);{r<8|7}dvKmw@Ymd8cn`Pw^qU0o z*016>&K6S^|G5{m;&3Rn^yr^^LCYq~wvDbfnt^E<RIZYiKZ|NbJ5HZP;cnk&o;cbwZKA#T zFVVd6HB^CIioS;874tC$^eq&g>d8HlzlN$*((>0(HA-6k8md7~%U?saC~Eo|3YQzS zgnL+g*+kc~bn!`DM~w0TRNN@#1E{=Ft{*^EA@BSFl*c5K@=EriGDz|VQ0;KCKlPA5 zfD&&~^YRB!hMSZRpduV< i{&d`?nTHZ$k`2(@m?)pp%~_!h+fCivGSAB>&tub*;XE$?4QlHt;WNREy$bY zhZ~|B&HMB5F)wdiDCUIbsm1@0i=!gtg FTpK+I 1NXOg`jZF=$aGD&2+4s@SJgoze1e=xS)T?Z8{bj439zhwT0TY&Rp4 zqBX$jp|!}!t~|`93TR@9g`L(1SKeyzYHC*gK1O~ffYv4DqZm9?GW3FP;jJcq{XcjW z)`ScmRNaT?y&_*uqJ(d{PaKO=@z{N0kbp(S`7=KY0lkYo@TC$mZy@7di3}|}K1aFq zu}lOZv;?`5m)c;)=b4#ekX3_a+%>p7h<7?Rs#M+RD7+Zd%)$D@bT!OzwbMo=!A=XJ zmm)20cG%^UJ`*-tD7}(wI~=xb8q9pESNX@UWs2|j5U @yL=OM5l(ZcFmC0#IgUxE>`yN1a(6&g4{F3i= zM1B&jP41;U?JMEoi_thOI&P2rXvJ;k$j^gsT8xmd3030x2AmOZl17gF5Wpd+M1Hh< zcUR=6;o2 1+)F*$jJ}x!O9^~zJ45EAwKmnkBi9N_` zaJ3l_Le;@0KaBR5TI3{s+iuk?wMTNlyOzjA32~X-Hgt!2{L3v-1n8D+kL2dL+9(1v zEVtW=Tx}EqT2|O+rz5hBuDM=vr4$0Dsm7D81>0dO=0_0P@pOD5fe99AdXsw=La13` z;>(T+0a62spH{v%%EJ*_!G|vugTf1P5SP#aeZf(wg$`Ew5Va8t=Laj#tMZnLqLmiX zmjj-MUsAW2kuQaRv|ha&-#qTH$?=UG{=xPb{KU;&Haf5={G)a8>1ITH* 6h zguNQ}D6->CyX}hL$@R-{TSTko)8$+I7Y|(~n(j_tYY!gYbJQXaTPbQNhAoYJKXtWL z!PX923E3_>Y;vy~U@KbZ*!ohmX{81A<*n~<_{v+aM+ipi*2`NjzO0UnTn~kbY`uN! z^<6gFdI}S1eSCTAEe@Mw>oZ}`v3A?~=xl5~t)4G${YXAOTQp5F 7R>C6##&DX;XgU0&Xhf`bG@MSyE#2D65u877T`5{T zgCDaWIiJFhA88T>OKW4*2*aH|&MI_d<)_uUl32bz2N&gXSx S=zA<_OIJQ_m1yy tczS$9|(MMU5Wef#sSJF{m_Ct7ew-)8)Z|A;u46cRi`-l-zDm;~FP5u@u zbByvWR<1*>e2Z1km6wCM;;wvBE}ls4?8+m06QxSz?I9Sw=4_X W`MF&5 zI%}-z#Ob4U-OjOcG{>V?i@|*=X_M)A_?h3eS{y1h!`U97l^{UVb&Tcju0|#LICTR! z0=Jy-Hnp6tOr1UCvt%d2GYfpp^zzK$hFmOi26};Ju)VcL9Ie$A4(6907H^W|50d0h zxafl} 34{?^Ek>)UZu7p)b=zL5p^RTK)#yvq2CYei$9x+m;$+#vq$THHR; z&mhQgSpq+YyhJ~VV2{H*)?q8~3DMAXh#!>iZ+QAToF&TVMD9BgeJS7K$Q?$GzQwso z?y!iQ{4Eadtx!a2N41CKPp>62;;RGv$~r`Ax!h+x1a|Lw1Z@d?$$DJE@S_V#&{hXW z{Q80tv{6(>Kg(bb+M3p*Qu>Jod(ak%sHu@_tq9t3N=!=7cDG}EOX(Uzvv3C7a(3WX zurT9`xvq9Pmnrz7AB-qPTI3G9e4dxWMn5D`Nw!xUHaTdkg3bPqZ@1zzfCfG<4{xaC zPe}&J^JNdyZRt)EK4g+#dLBhGkSeyJV)> ?^j$-271{?KM5k2^K-S)qk8(O z5V_n9uk`%X*v9h3Lak>S{N!gD(Wrxm$BJPA^y@|V5bjT}G4ZDskM;cK?F|!qS03eY z^qWj_mnOJ&DHZk6Z#BtXn(1nzVUL6j&%!5(W=hF5%yIRiL8jkTk!x6@c2?JkPa7V? zX&KXGX7}+8uL^#;k|sX%anTf*d%>(6ADGV(H)_lf)K {5aatwSCPmJ}wT>l{a&*0<>%R#;iR4 zwzo_E3846UKA!Bwm+*TG$UDC#rhYYD;!DZi2D^Ny%jGQ^DqjXXF7p@2o_yKN^xewW zBcFbmA18Y*?7W*Df6JlKxA8y79^7VTRHt+MF|bFs@u3?<(;P9;lNDBik387{kb~c_ zj+o)a(iVe{yjc5La0h-s@m>7T=tBH R^^Rctegu9L^11 0DUcBs4ogsB3*LL zlW96VSq$oJS)gZPhMom4)U)Ue{YZ?Io~1#t6NVbd1IRak14vgxS5T>E7F3iAnHuEI zYFBbop*Ub*5*l9%vQxcST^hFWZfwXLFBXGN$AJWpqzShzEEM0?>yk$E(C5X8ldDAh z4C$+SmUW98O9L^Z^vnbK@>ldM6Ieh2bhYqn1UMWtC1rZn@sgfZzKpIToy=c(UYy|` zwO!8`DCNIDFW%BC|Ad+CJYl=_1#!Aosw&sBR{s2p_=Z|Z9_dPc^P;#cBzc@KOYje8 zxWdwEh8hpMteNP`+WGQQ(a*YNk}pF9$#4Y9|17(G<#fbnzH+gIPkb4j38f#v53=(^ zUxounv-1^SMrUjeB%PhfC`U~c?et~%7F-kesxQOEUz1bsE5E6#sPJXfeEIvnjIKsi zHeY%-f@c^ H@TGVzeF{NX|y@Bfl`*u4~4+K~tN zk1vV0S*sWN$vdhDlGN#tw4-7mX-Bm#@RN5`8Kk_UAZZ6BK++B}K++DXO81j@P|JKj zc?VTO(he$sq?cD|kaRtYhLq<$NbH|JntBwZ9aPSbye#^~HU!|8g#Lm$=>LjMCj)H# z%fx}Y;lWyiyhR?6@(~*tE^kq%20z!1hFT%%&})RGEvmJxdsTc<&|c*syYb;$+ZEgR z-Qq>Pdpi9h5=iDl-Vv?CTWt6l5-JYa2HHUf=meTd#diIA{C@H&IE >p>VvTycrrp=9oFRTqpY<}zUseTH`~5HA`Z~%f|G5&?~4z5O?xWNz>a_q!5=^z zhd<2)x!_H32^^Y)A4X3wu-ic~_! YfuXjkr^O%KZmh;p9-z4vZ_%*$ z=Vo4uk3iZyp2gogiN(J)j>X3!JsqTv=X1}ACT#{^bxyp&TDCDEe)8=s{_34@oyp=e zkk=Tl#Xkg{21m#qk;NbF<;9*vej7-@M3?X5#ZuO3SmZn}78~rvnm}--hSe5nSaOgT z%RJ}F%59jdCt*#iFfUeovz}?5!j$di#j@PJ@XM>XcJ#)D(9H{lA2YKmOo lX4EV$) pT*mRRq}QlG(3VL``^nQ=A2^#&AtjEf|s z1!WFERwG|Ah5z=AIMiLlLH)wp6XVD8;TOe`xAr@T9~lCZKxJNgyf6NJ@D6?{r)pyS zosdny2k9xG# 7pS~Jo$ q(S?dG zSak79o52@+D?ZjIYKeuh*lY1AGx$&6;vHP$Vm_cn?1y(GQ(MGuL)IR_uLt2Y`}}nl ze*@A!;950)9|zR(Y2S$>Z@wR@Sg;(bRPZ#?)4?I6UxwTRxfT2ai~$j#H@M2*{!Sb# ziBBZNcko}o6W`Fe-NAQ%FYeWK+{N$tK@8Ql@zp _{bC#6aim_kM#)%X8trE`~S|pQ2l@Z z|L4QuoH=vm%$YND=XGc9l3;laKC|+QyG|Q6l$xbvM7QP0fqg`TeO}}NAi{;O_|QM4 zWJtFg_;!i$VxVpvKIq{(uhaJKqSFRaJx9iIcyd4I$j3elVW-wdr;WwqIp+}#m5~&8 zzemvUX!k4`86nM?hGI iE zaD%>=4LWTV2)kUpB@u{gVl)Qq%V9b#`{nag@Kk _nruBX0fpd~td+!?qR0Kbf&eR*=X95UiDGDfz&Ke?S=36ItEgeL)Q5HMbG zx!85<#h7Ebcnpi6@kJ%=E0~i!n2fLTp(KY@I_)pug{gH~eDX(Igs*un)Z#;(;Ew~$ zN7|LZ7(6ApOpjh7N#CQ>R)BXKzs#-mLc&J~oCPc{^42}Jc pY9S(eruh9w5FDaj8ac-9*GU0bkgHI6xE9J^tQXw+FBZ{Ct2LU>d@0-=N6@`XjG+ zz _!P~5Bk=ct{Qya 9vwb = z_6qyh4Esn;6KJDGm!sVusnc2!c^2>xfEp71CbFI$37^*v>|HTOuWbW8sE fgq`s%c=1HJ}q16%|spm!7?A5bw59X((@4Eh8g-roV2d$SKhMMdef?Bh%9<4G*x)#wy$fAExFrD#8nOVK8RKJXzLEnqjV z)21Li7LWlbLL)4Mj&Z-FXs04P8ITE>2Uq}jkczLp%3uX8_aq@Xq5V+HU>AY&AX=yW z6>t;bO~8?W>3})udTrf!y>`tY_yO`00B-@>1`izlz6Nse}jL1L4FNJoShx z2L26rH( ?g|)l z5g|p>4mm2(4F&BVj}G*SQl|v%1DJ~Nq$+RS1km$A4~3y_-8^-xKtD-uC zBnu^y6c}#;YyngOmL#I|NV9l?Uh6p&tpi~?M5i?~4sj1m7G0eH?(aPf!&co3JUNJ{B+uGV)Pqz`%E0t{im8xpkl)_l9JX%a!{*7A-L6 zDR}K^Xpu 9UX^J1okSoKn<$@`P?kW8i z;chpgFc0pJ?Fit}{d{z(pqnW1Cw)f@O~OtKpa{u7{Q}QCVCW?Dh=Y7EL)K|`AiN(y zc1R@dfa{>gpv%4Yj!t{@DP7=?A1HY6ly3AVGq`3K{mY+(M(65%bkd3NIlu!D{55nw z>!YivlS*U=PeV8+71Mg$q3=qPG;G_(6a30=FqHy7d!&!f2ptvUuww)$$Bbn;{iZ7k z@9F2~t8;#b{zT`ao5SIUJ`ueTbTh=8=*6z2FIT>Zx(5)o;Rdt@nDNvCmP5ld;EBK? z*mr3}oZG<=-S^-H0zW|bCg|dcKDr0kG4o4D?x0r#nh {FE#LH5I?}1kBhN}S20@ly=(PaYPz*>FzF^O)QCw@&>uhNxA z2cxQbb|XFHWeWT%bC+P<;_)=48;Qre^LM+E@TkSF`RL|hwy+Se9`sV+<$!X~p8;P5 z{vLPOrYZVT{H`gRa`#ap#LMf<`5 zMZ2~Eqgg7A?m?1pJjKuh-PHQFVBJvwo3bo?9IRV{UrLV6exyx0tJC^PLv)jX4FEPp zdIy;OlJW}R)Du3suYijHHv#2UVpX<-UUJMwCp(An4p9E9SgnDe$JhAi!hvG|i_iM# zbmw%`BaC>bG5enb^IgCvfP56t3|t0a8#+It!t+~$bwz&!>)53<+~3k2N8IYcBelWZ zQ?$iL{Hk5ZD@F?J63 Wi(Y9*P8@u=J@;S*5j>gHdt$~pn$-eavy0Y2Kefpf-VBDkiOBI%pTALE2NnI zPkSD}Y;aYl&A}FU9&q_5kFbXE)!BiQVbgfPAdWumO=b{Dj4xhqW+_RJxM^Td0u22W zVt~6hF?2NRwC=aiM6iFW18)%MiGVi&*|bzig5AqCzPe2uJ*FfxaK$l7g?=rSqZukP znOnlq5*1N%Wiom~MKZ8Opi+}Z(u& K`#^NQjH>&RjW`-$?@M}cn`HDHe&C2}meB=~WP#Lg_nAoIE6thdi!J2O z9%=o;x(NH*H|}}rB2;>9E8y`!KixWwpH8mUYd_TJwf%s<0{j4Y5Q$xC;9CICaJ{y1 zfS;}pa9fn0P7k~z+E4ci@SJ|wFaTZ+{0)om@27JBH^=ztE`;ktwGR-OhQy%}dhK{* zG8}k10M~D$NspweSZw~pVM75?k$_F0zXQJ9Pp@?V$Mn%_#{t~be!98{?5qQdLEq!( zsc4eH;p$4Ceq^ltP`IDYGYmF!bZI}5)FrT|pDrmH>8QOQ3CAA9rGBJ`W)SLZw5P9b z4)N86alX3MgRtulm $s)`{w+D5<{0vul&z)n29N>n(+HXgp}Pi Zjw9w4RP+p;Agv2_gK=a%RMHC&C@p8KbE}UU;MeB zZv2=ox hOj;{V|q=a*?y?u~>4zef-C)N2Q;~k+hx{PT)t%U%-17 zY`AR#Ov6q}Tihe9V)Y|!3~i4i!M!T5Eyk8VZr`9l80M6SiU1si_#hA3C!VMWuvIBr zMwMYTli%%;HWl%s0h0Y8x+c7bxw _DvU3Xyj+5{3R%?a~FPyP$)ACL;zanw&&2)vDj zulea(yXv%i4SKB-U<7OhR6#}oD7uI?`YY0c-Uiu_0DoORpbTl70AUmTb>q|hb&p#S z2boPyv?HXi0ZfE*Car!%`#nR(1dTq1E~yF%!K_;INXw=L$qKsi84{W^r;AERB!5+} zeGV`Wko$>L@-gr|7(WT{J?JBVi-0G9NClb>X5fJf^xDaQndkxk1FQu95wPEDdTn>W zK)_57{BoSpQ#S?lLcpPwp1Kgotp#m l$kws 4SCN{yOPG zy>=v^vm;vgz)v?B;e3Gb@)0^}L9=o(zYf+*VnX?DcbhyVHX~;?sx+s&nEdamjVj)s zF%>;ZIm_NIiW1GtG35%cQqH*t0mCch?hjp(!C8`3DPy=&S%p$!(C$$@C>gm`x@AwG zLSdJda$xdOrXydvl`Bx&Wz}wA6?6O(svAnewSTtv-PldDDZcR7r9aw}6}5k~TmNXc z*!CLM#~Tt4sM^~v%3C-)r$} mN?3i@Q zF}l(*)Gp1JjSevV);=^mFRN>OR$xk205Wv$kN4E-17ie8R= z?bdzmrhV;EQdnq-DDT-OaW(~7_fS(JNzSo6<7syI@w=HSo60X}TwtZjH>f$lw7H%C zi81$F3OXKOGPm>Fg-~tbqoa<(@ O-lFBu~9^v{m?a1Hmra9+QgsDDnw>kVuIm6E( z%&4_Y)Vh-9B#~}8t60G92EL^pqJo@rzaY1qMU`?kql8~3B>9l(v=9%Q%FXmaJO2@5 z!T{vHl#$5Y5La%QAW^;3zLm8dOH4p9XNc+^m)UNY6?2ws7Q7aSe~})h*V_3}?M+$8 z98pf4#5BL1AIa2cBDymx4UBf*;4;0~&d+9a+IE*|Qahi-=p)-*X!Z*EmH@X>nZavM zwLJDGrP8d_9Q5rk@7ad9xGC-N;S#h7x_B7r+h5~>w!KwaGIGnFZvV7xCDX;)cHS)R zpT^yTHSX@cO~cyxWF{by4Ayr^Pii+8&78PX=~t4gdFZkZ`6`(NYWuNxYh1fIyel8i z=n3)*e_02h-8lbrnTtjnO}V_9@sYN~#P?=o&$ep0tw>TT<@?YVl1c2e9*heodW(V~ z$bpxObZlq|?;%9HIn#F9ie`rHFXebY#&N&s8f@aMKJBGaLo;g5E;Ze6%P@r)HiU$} zSSpRLm9Bc0e?WgvCcQ_x+W7W1mWh 1u}D%9@Wn`(Zb;* zbpEN1L`>g7M%z@lY2a*h+1>D9HM&sr1A>St1U}l&NcL1)tC(( LE z{oywED=vxkaEA#esm}-!H26T H+GJ^Ez_DvgaVmi})a#_Fbh}uNYAu7i(%wt6{w65u3uMzW}eCziA zWw_Z0|5*|}R(vCLIr@S&n*$Ev^V?Fg{1oW({Dsbs^?a6NzBWfJ;_})G9IVWI+nCyd zONs5EoktO; zZ|KHWP$-3MXo zjJCLGZHbpa8g{tb9Lc7BZF~YNE;RBQMraP$<6dmLD7VWLNwHUycm3TRFSHq~cDvN< zm}Hsd)3@KoVCR0j<9W!m$nf}@jWWY_yIR$)XPaT4-7&V!cut9gEWML{tRpW3H{OBX z{2}7w>R!#pER03{=?xu892LtlZIM6ms_hB)KS DYn+L&Fa~vQSG&v2ko;Ojy%&}UU=@3 z8=~-VwOOTfo1Q3h+=Wt`=Eqc7AKbx{AY);hsmW}bAG#l52@6~A-eKVq{s}9BU2Zl_ zL|{J)*i1)Rh>8B$895YzG8V8pk&cD#bVex=C>7J~Fq@R2IV|Dz&R9 WDJ7A@H4;aJ?BJmhNn4WFrFWg>=X7n2juSx-+T*fi+^fT(hx4NO!z5vN$xSgkLEn zJb;A7kUiWPw;F+EV!{Vz<7y$Hy(7}GgwGaI+3uJ@@9AXE >Agx3oM%2dMVj1Xy7^kE{&JT_D$nI{K}B=diQ zKnnE|E0U}_`->#2=6)hM5oDxD&IhSsr1iBsrLq*&a{etADs{7D@2-~H-RP)P68LO) zQFuLsgG6!%$Uu=i3esOBn^<@1Bhn8T?IqA=KZtlzV=5UEJDPFqaAjQJB`Skb>8; zkT7NBrK?g*+B 6J6&&PA!+jlb3^*k&Dc$NAwdn ZAf97s zt+A+wL1MXVjzMNeHt%HOjM=~lYcvG1`TLBXyiuxoD`ZoWsm~q0R+P%NM%>|}1nXp` z@H_l*# 4dfahl+U>GZ&JlVi`wv5`FUz2u z$@Z6_n{dqGFR*}Bj-2Q49KH1{QO?@SSj?&)L}EO@RV3!{TLkHct(8UyWb+bc%~!|n zVnV1uX<3@bOv2rPS!V~s&KM{!hPn*_!_jI7@n6!{(@1ESi>;yyKcoLiBfXV%t%3`e zi}Fx5hu YZvC^M{5Au9(4i%oS{sqhj@1+^Q>6vWlI;qRfu*Ltn7VoO+jCmfXLx(jW7L?0{ gJgV$wl;8Y66~08>#bpOf05&}wewXEA#6R18Ya(ILz! z (p`7Cw`2U&ORNd4rh%=NAud)5giSH6 zd?b?-!dVh!yi%?9N%#1q_4*<%{S%rvnhXndCfcp Ug&`N~#FOfa0W| zk0!x^&cSx;YiLI;UcyYfeO{~MRl0XH=^5fouv=#cG3_&39W(z)*E$-{fg#pzO=o&L z6Q;L1GFn%(xg=qVV^(L*PG*$tU~=qcrN$sNMk|AkJ=OHLTT}m?CbiX(*17_78 N zIfYHFUz1LdZ#rgB+pXO@b*Nh%;jLo?1G?G! yqCC-G5e;LlU0Pebz;5r_>IiHt5R&`b<7b5+&b_sx)Ol*jkoo?#J}_pj z!>85c*~-fWW4dZ#jAen~4NG^s^?nPhC3u6hI!O195-C`T^pZ7PYo1!UI^S=Nl$ytq zzW9Lcv9Tm0$>3|ZRwLaLj-_-owKzGu`+c;gEXi Oz89&wy+F`a1P zYg*t5)mb`u92uD7^t4-l>d04Za(5hWF+9csP;FYh+jd4B?r9E}HgRxy(9*{mce}N? zg=KV6?x<){gjyb!ueiqw2_c)2$+1=-e{7N2t>1PE?ru2(8I&Ma7qQ8$b|(zE?fe;$KQ<*PKIPEkA#0^Q+b|#6#w?vKFLvX%GHNR~PMyh? z?P>Sfn#uY@OXa~-xRAHevExZ-)aI7l7yTyh^qfE(n_9rP8e919S;D-{*DC{bzYP7L zl(TMX;Z5|j@ua()w&YeRYwC9L>* hM^ zM|O)MaJt)yCY0FmA!zsCT#h9zEB->5&w(y;#Swj8fWG# K2# z(fJ#0ms^JmelC?cUTe|(PT!b7qK0ZRc4kTyK`2xDjFv?I%rzOtIi1@TQ(4Xz_T{U- zS|a^S9=l>$Ztmi$qcgu(dcA0&Cnk{aVTSQLlSdaw7pD5_63_wJS^MMDS_;-M{A^2Z zs^7#^C7;@oo8Xt>E&;6@sTAhTd@_xB4qI%AbkuVszPsgYxphE`@TjBpMYlNmwTRCm zUHcqKndLlPZVm2io53xP;1*$~t@))~?Bw#K{`2M&Nq%^Js9!yJa|8ZY3RhhP$=9wKzzN@W|l<4$qUA$cN3JMk(?#bVy+~qRsVeTXP>Q z@3`a5@dEeA1Ngf3E?xONiICo;+n* K9w1eYi zPVFLcibc+N$jC)bQ3nSyULxl^k&_G=g~<83g990FaB`sfE0GlgA+`=Fm8nyGf%(;p zA66LVwKY}P%i;?~LAzq>B$1KN7+dEk*v15Fnd-`?_v71GNtQrwt`O@Mrmz|3i}Kk5 zCr~IVdTXSL=HF*Lv6zfM1$=&y$YTX%yorqW2DPS>fZ_ASC{{ierDIXEMII}mqA+ +l zC$nI`k{+p&P@N>zG$y>1Q;eU+^5>tSt20PMu=C4uYfQ5^?kPeQT_4CCQO%kHdOQR5 z8{WKf*_!a?Pxt!Qs+(=bYKOYnq;BS&x1lwrO5rumq T|%h`yLp$<+lxqts` zq;X%gveJy!X814K{k9~{%5v+I+Z~Nk*6eU=7F+#CuvlmDo-v_s62`zj+H)?Kg z{ywdIfsB`4p}v#IGo$KmX9#ibS6v=+y|Yerh^DcQNb_O2)p5JS3DNCGZaa?OewB3t znm5bc8zG?RGxJ5iAcK3>A-W1*`;=N~( t~pzV?jZfU+lu+X%n4)IqFMj-ZMZ>j z!Mk+KizH5Ed9^&s{~~MY)(>vCc*V=I+Y4?x3T`Kga}3Qi`t^$>A;>VN+-eYt809Y% zu6^-s$Gi0Ei$p1%OUY!?JI6Vr+&Zz-3$t%KX5Wqy49&oBGuVXDN{vDLvVZN2+csm1 zWBP5=xZAuBs|R&}w#r;P73@~Wl-p?!UD(D$yE2rp;bzlDLuR=(slx^8ED0=af9|&9 z`P)Z4Fjw`1pyfL@W$5vjb8@*gRxqGF?Y3j|Z3tsx4S6R$Fd45ahtbx_WGvoVCcZ?% z!wuugt;$Z%hPH>@cJvetHjH2!q!LNoPc-KxqUr8TE4TV|mdoe1!>6NMN!0!l4vRQP zmRq^bXt&!Aw~pu`wB;o-ud8!dx%Kj`zsGOqEd!l9h5YBW%3G4II*G=#`h7p;`^uO? ztozhP_q;6Dof $ z32k{(i6y4oYC%@Q6yt|mjvsCb72u>ZGszsOg&xi%!@Uf54xn_HJ@9?0_f#_QSwqiq z>wF tEBx*|!{XC_j}1q&S1i ztr`E0%Dm-x`BvHu7eDpZ+VHSXyZ3Z7~Bl>48f9$t9ZgzG?FdV&6-A(7U{cxu0^v$&Ea1@+sR!bCaV^m|}SjD`} za@)!tyW*}$fv&dabds85c(E*bNrAMZW6JBQmE`*uFe(1ko8rhmmnCdo8RNNLg$bde zpqMjm@LQd)ys*b`eZO_<&5kuA=h$-7d2YYi 8A_o~g$AtRJ^JPQk_d-n=B>VWWH(`)0a!syU871@&&x$ft@rr1} z)4i YI|RMJrfJ-Mk%@Jlh4#4cYJx9nztzu3t>!!%Tt#7jMO z2^A?O&)A|bU?_cM2F?e6cypF<&cqk|6hnCB&D >o=e2S{rt-?SNbI40jTO}@!rz5(?Lub8TFCPPwLa`E3T u|})uQl@D9TlC-0-OvudJj2pdjV%n1R7L&MVlGMOE3-&w z52vgw(WHDPFD&2d#Y8K!j=zyu%Wy7TH;eQM4`IpKkX7Pbx8M58jgFpp(GAC<8{$xy zPcP0Q2_7LgX3oy#gK6+=93s)QQ{8Md04JR`o2bxDe>|InhZx#_5;F_w% E6*Nix@)jeow50J$p zo8)*9CWi(^%It2%0e$kgviufBE~NoO_03k2_|mH>h(SiI&z=zxgCJb>4pc z;p-R#JzCuCZjOW3715fP_pklskHRs1`f@A!O7eD8GxrupcW=`*kLyh;~ldZ`yy| zIZ^hJJm{7uTK4++SkKPf@7Q+z34w0~A &YKFUc0`64YznA0 -^`}Xt&o$Votzy-67>l^+i(5U69xML!z&v>vfa=b^ZfZ zWV_6=+oiy(@V=ozhG+I$y; uRIa63GTm!Eoi`raXU@>)OBdJ-KExCOD+m zO;4`zh7NtkzxBoLw qHma{1kiv-MrPWhk*Qi+&Qq1_j$x zi7Tc0xAFXMbkgZ>!;r6>bo1Ld_w WajNuM*FQeBXk;iiC*EP*WMwoN$>8?SWH&QxGq=e@9&ez?zLAGUU;KBYzZ0X zbNLGNGK rk@8cxAd=;kET@DSMRoBaE#MB#Q#w7pn8(4qoZ| z6Q??InfCYqQ?b1?=>wdRTX%*2@&Q@Ty?JGK)>6`6%4x39)gO{C`$?~C3ES)b*d?hd z!qdw?y$oG1g@&eZ13l(&D|Wjojb66O2o`mTPRu5wq&MjLY!W5?jaFupt HzY-sk-tZ(RN*RNnTzf5{K# zP|2(#()M|m|Ee@T&{rxX$9^@Bm)srC#_Fn2)2z$X_%RvPbpkU;Q69F!rt&mvJo$;2 z>BEmnBiHRRJ)J`qDIQ+>Zx1W%uR6{Dm!{{EWoQFua>-MlO_xfF%yP+uE`=p))?cER zc(R9k{Sy5;kL= 0@=FWihsw5np^&dN%6aY*J+O@Y zB|S*@E+^rA&No4Hg52=(Q@i~37XDWjT*AkADinF6SmE~Y#kKrt%6&rq3jcydu2ps2 zsxki>#%kyz#<078z{c`L!7|57O| Jv_wu zyo)q#EqRffa*=+smMroa%OaD k&=SVt07XD&eCtEquaN&c!|FC?iWxx#pbEIx(xQ*9;ws>Ae`b!4#g zSNe1vN?b}~z9gaD4qg})@8%UTigOE#$9OsUPomm&p1%Ag`Gi|~fnNTS^z;3Q>D`)j z+{}vc!37%j6?r%K-3zPB^@@O5T_uHc`>E#*<5mops3u*Y#b2S)UcEqn`HE!qjJ=TW z_;f$FVu)mN#O?dxocj;1SiSxYw+pGNXD`raDG8SkzfhsBOxhope1R^a X W zdFNPq^BdBuPau1f16_H>oY>fVeTTX!mG^qK@p 7)u&KcnS8-P1krY3FmZ|jYykPH=1mm)b^`6ZS z-|(pKE1PIhYThf+RPVNyA%_+(Y_Nqba+IAlRP5%rGt;Bw+4uXi!MtZ%kN4B=p#2z! z <2RF`%9lH&oOVIVc}|paP8Xyy&eD~eiAMSo-LaVjCuElJdZ9WF#xG#K zGj^ZM(-dBY?x=-TX3d7D6VT0TUMdL+e2QoA!+reVv-Gdc=z}IwRT1g#nIR~RI7?HC zaIb4ziQWBeud@pi^4< Zp11w~KZ*obcBM|#&Xnfzgva0B777`zjjCQHX+J`1Pb06G0 zb02?{?y!*F1OD1xjU`=vmfh3xaC<4Y{_W~6d-R&CPu{@ZH=5v(l2SLdQQ~}gU*Dh# zekXlmA!=N*QGQS2y(jNO!_vI)6#oq`(pSDGN!m!}hnz;{htC^3{P3T~PCrcS^uuyi zRKXAb`IjFeOK9WwBqsQsza6paA4j~|NPBD{%KlRtbC>0 @||m_rxC#!($jwLR+?wP>*gUn=<&gM(R^c!n)OMkCbB5OYH0V zH;%f(sY3B_wqm@GtEE$m$upSquP!FRvjQ4zW~U>d(d6F9_h~?JBLjp^od0hFI!zO4 zG;Yo{nsW;e&+QhOl&5lQjLwhrj83(?S^C5JZTtAYSR&>l=j-qhOmioaxf&11UT<)} z=i=|uE?cqichUY^apq52qEKHrt&H&76rUpXj15 +qMdKS8BMlpf ztb1j9WfvQ4<{uruHJEA|__lgPnh$zv#y!O`X4btKRQvh{`tiqEDl|+tO&02-Lzmb^ zGaXgX(WTjOqQUfY1J(dFTS+(RetK;ydDh#8s9zmB8%&l44DUlraDQe5T~$J2My+5v z6Y;Ef`Wyyjpi3amt6TMp8gvPHd~U Cf &X4Vmc-&uhrcVt8&t z=GzP#8Zvo?=QL!lVR&{!ritNM4VhMkvl=oT49{%HtY!F>hRjP0&uGYO2hK^K-jE?| z@~2M&;m@L82GNxfnIHlfF$Dx`Y3VP42xi1&5bV%F`lJR&ctgdZyo{{wESLd4I}4KD zzhNqV!q6Gynl29-+g2^ZVDZIvG}~^jwP!-iuXe905%%9E8Sd{*+v}2GwQVy>)@HFo z4w^OF71^c4rivV6K+vMJDw;8zTAaPD)r9T%S>7EuT)tKnU3knK)!lG+FP{0kdvSc! zd^oIWuD`}XP1{JH0gvmOO8iR_M$1+e8I}#ilQR|5c}>OEyt)u`WOrxtUi8M6=Dks@ zo%U>_ra2@q$FgEO&dg}Ct!z&pMBnXk0S$($0nJN$sQau9H-zq16gzwygx4oH3{)V+ z$x9?Rc<;ucU+3VRX*e^9WJ@~Jhi?}r2LHM$VCiO6{J&QPrk+9D%J=`Dy8@HX;K!m! zSdLzbW3Fb$!uTw<=&^)tKjqNDW8<-#uJN!6E_r}6JUE7g<4(>ukvpX4XhNABPO%tu zrBaKVAg8&{ f^~RS1g<9b!F$$ctzvJdI$~5c@J7R4q!3ii{%Q(XH2c~BG z`752XMQa7xXM4P=Tb}V9)sFfh#h!6H>*HmTpv^LiboWJhj>A?j-iR>#xyvHi?bu$A z0bjTxp}Dt9Avf?r)@}6)xn+5fb8(R75-K8FGs9{vu1Ddox$v(I|M=d_0Kq@m8qe(x zQ$1Y7{Ajtm!|-TV+_&{lq__hi$5Aiby|A?Ia(vw(kpl%gG!J*7?jg|;-@MDZt{$$& z)XApmZdzN 870DKCL*3+s7~F)Z%{Ddf)gg7$DYaiCcmWLOYnsCQYH)%%&0 znyaooQq!_}{=apQgst}&W(^1(jUrt7Y&?>&@# zbz0Y>%GNs;f zewQM|E-mmE->1J=FTM %}N`rn5j)aMaqnLxD5Ob8?cK zDXgAf_Ky_bq2N1)aa+S|a$`qvEmvGNlbhL;9l9Tf?(+nB#FX%h1vyi;*%T%m+5JKc zBQS2W;lI!Nb*6&oyZ@w`E0SU0&SB)+kIz82-2-7kchFLtdCs;zI0ME!Hj0t3M3gS1D}s(oFhpwN@hh%_)l1yMzJc5@_p7Za-mDtxLYU4^Hlmz zzw|U6KEoenBK%VJKVKfBd1<|;>E|>2L4o@&`#(iK`CSRWh>@?dw_@o#&Sbq%H@Ap8 z(o3Rf{50^r7Ps26Ghqt5yZPWCjr5_}G$^N 1`UF?`%IhlQy9cTah(RSjP9@~p}xZQSrLxvjAYH|h8X#G z @XrYMiZHJ7;c$KSs}rawSIn1(v^DhU!r;f9|C5 z`j9j6o3BT@r3ats8y@F8J}Td>M}7fYF*yq{a ORw0b+~nNeQH zhjtp`#R%syTinle!rDO7wM*e&mk!lc8foppI_sgjH1_>P{v6YW%OVa$tgp4#S?zU( z7OOdH28_2{??RJzkUqT)Z|`F7+^pt0MN*5GV|(2P{;x_QV3@NDN1R4deh1NWU)Rw? zJFxY(wvM*$AQcgo+%6dozww2v-5y@(Jp5z&jJg<)O5;qNbrC1oFW1piRuYwyQI|fk zZc$e6jI7v2Suw2kw)_ZRrcbELC+oZAWer%HH4t3QsxF25E{%bq*4pGc_a!b#o@#pf zz`CGflBb$q6*4PpK1-W{inf!9PNhRz$8PGR?NYd#Rr4*kJu8iS6kfCR7a%pu;dkta zISU(0wk*2TM!a*Ji?P9eDIVJGwc&L~X1KDt)hWEQAH@x*tCkhJ^Fswkm0aoviF36* z>e42=s%3Fq>yVk;94_HwI~*B-`17>^b!pGBPA$*j7jN8?G_=x~Ysb3XY5NhgIGOX+ z?Kagk^FgKN)$NK<&Ad^CCBrTSBjM#*QkSN~5q8aIqfjXUU|p$|)U6oCbU7in?~*Tg zS8E@gUNP7u3A&1xu$nBY{|Tq&GfvrMy!I4p95OzR;Z1# 9Qp5a@;r#CZdooRMUSKJ4%FUmC1Qp z>~B?9Pun?@=9FQh%X;~=>GEmk1{WARP8$Tg{j_ua->2lao#vm^qBy3lr};+$QGc3$ zC=lIF@%IJd FEdi22PdCO >c1gy|t4J2w%;F zj`~+tL1^u-A^CAD?z>{=R;-zMdgg5X>bZGqUO7#N?IK}8@BFRp2<}=-3g?x2@Xwv5 zZ|ow`VWXK}C&>5syH^U8Slrbv%U6FI>d)ua(w}zWeqQ2fT!Jd#3c41kSsQ6^ G^;W;W?X zTCiyZqyM&vz$SKwOOQsY02a#(@E3_#-d9XJ8gshat{#WjrY3)vJ$GVpqgixLM|u0Q zK&Nhli`{aR@m`Dx)lX`Gnd(O(5z9YdgjnA0VlJ$_L5yTpg;?BBT&!XE*3P8Oj9BqA z>JFy|u-)clE3(nN*ELaKCV#btezgbZ6b_xDd-jm2Ii^#l%Qcy@%z(^r)|`r&;qkR@ ztb5{{#OzTsx0t0If0!{~!EOP|_?-+}zdfZ0E9NwP{63PKHl5;EG3HA&(_GY6Vsie( zZWUuXSHiev;Zkw2NG<`_k|WZq*^JjL(#4GaPNXXsy-B1SA-{o
6TX%vN8@^_%ePQV_O%WLS0#0)wn`U{q~XQIZHcI zEnzrMoqWm?7<$oM6pQD~JG6xP IOK$It|`dI%&!nZzlJTj<3`Z<~7X zR(96g@Y|1OY*v@>U0LK%nN1xlOevff!0#8dF%wY=7G+aMZ)KbRhVzKf1g)IXqa>x4 z@Px&UcC)D?wz9dI;Vfc%2Q7Wcd`!wet!4Kj^DMeh99*%fdu?TtLqh{3x(7|2%q0F~ zt^SlHRkSEXwCK!_N5;DDM{;R{;pY(exjXZW4J2yE+30I+ss&z!H!E=Kos) CB$B{IHm$S6ileL0~A=_116oQ%#trBW_w=e(XWF_jPs?^iY6)>mq*O?Y5 zKKqa2dXZ#Re)=SBEGN-9eVE#RH ~lB^sXPSS&R5}70TtTPGiNK(M?|CV8HM;Y8z9c3^xsg5!j_WN32 zLm3Qjie*?L=ETbI9wUSPKnp>wR0y@gPhr&_ua1qO3l3o8_K+xDA=v#E3&8FyhX2=y z5&vt%QYO`Dgw@xY%8ZyJ8Zl8+%ZzxAk)1{qi$=tXMnuO@`Oh$7lPFy*7%_?kU_>Ir z|7%3h{~D3Oq&kh*;%n{6jF>7K5hGh(qQy;?A$Hw(ZB ze}@0ph}IghN&Q_N(M+n-h;MwY_iJFpM9~O|sFoS=^u)i6SRxuB3<>e-UNLlR1&kOk zN-q(N_%D-(5jPqBUn7qEuMyn8jrhXXdXgEDCK}PmG>A`X{lATvDH^edJyG%MkQjOk zMr1^YM$8n9IN4!@gW=9`;#U@^x@EQ0urVTt$sdV+DiP1RYT{f J3*&A zaQdg>1pU@Q)Lk`}(tHv$H9n(g^wjiHV*R*=o&tZ~b|%l>3|pp)!{a(Zfs|h%U^jj_ z!`9bp*zjoC;QNN$w4jF1WX#Vz-v5eAGfUXpZ3!E|1yPJ-ZW m+ch^YIFD*f{f7b zx)~PuS~WGLZib$&kMJ&tAM}sbct!@zbF=oX!GWAZA(k*q4?-Y~Y~E*a82{Y(X9S9Q zL68S0;vW?%M&=dehUS0ZiTQ+`l$a{|VZArNB{&na6G3?L0)^Fe5-Q$i@<%pfMl|z# zCGSx~e?Lfqvq+6IfMt!1Jg$bHBxK04?kZ+9+RnCwd{_WXiO3W_?eU} +kXUJMrAJAP0azAsuW?$ub{*&!@bG#yyA_hcmJrS8LZRd`o>$L%_4 z_r^lj5@mD8oyQK{enari;EHX!d~T>`JSPnb_tm_$Bd+x1XxU^px2$a^OWh4l+Y(uG z1Fnk>w{4Z#Jup6+)>d2SkYhxx)ZDY3GD?bN*^hB1Me~vkhebD>v>88ltUqbmaFTbY z9~{FWCj;GbjPwrEq}!@C*77H(?RP9ci7OQ_Mpvh-+>YnMKrbI7sXYuqwyJ%#uR=qK zWBy6^lP=8kgraI{sQx$!4A6{bSxkq(PDj>B)AW=4F*^S^Nz__=Y*i(-V-fMQ i8;XP)b(D1mFldv=UvFHIEQ=*0Jua0L=nzSeRZM5k)J|S 6 yrXF#U3ZSJJL0Anl~1PB0xO>1!vT@&Vm(0vDGo^bxp->~)g7 z0*xP^#JgP!HJ>CSk~9a)F3MG7PAEdHX(w=@+kbo|>Y+XJgk$81D7L_~>=biGH*Kjz zUpslMTlxzp@Gg~x){xL%v pVg}Bj^c0CvS>CWI zxFa{Q*u_ B}$# @;&FnJk(JJx2lB2B(59eeteY~23hS*fUpykpO 8sEcTj a|WtCOVq XP$ZHndf=t8P1=+ebu;}yG8%HY8;KygT6J!1W7OUX^bJh=q%0(U|UNwzct2n zE +N`a5oCrhfnNzfhc}+&A*x56NL^dVhfR|{H=r7+ITh^Bz`s&o_ z; vDR5>U*p2}tgvv8CR{hh)Dv#JEZwQ5b&0-t-Pnao)EWnwe0JR!il0l@ z(U^MaW%k 4SV8CQ$yb^kZ03^JQmrRxnTx zP3<;0CSkyzfvlHFy0n{TqUJ_{hDCZGz_k|h I8^>J&H1 z9%B9COc(#I9VakC0u%inomc6{-y7rWh>waKdLB-KF KovXn`qt*_|#hIUpI{H zg4Ke3&;6jOpL7O#`blRzJkH+#0G=n(*MBhf#?S5_*vcZ&qrTK%e}E&ZL<4>_HjWoI z?rXz0`r}|iw6JTR+~iEO?HY>(aX<2m()i53K}Xi@n~UlESM|XTn8*` zYE5{4G&T$uS0RUiIq`*VVs3gecQ+hc@jSGB<40rDHtIv^#+0B*ChNn~vmVb(a@EB( zf0|<69QtG=!`zd-4%^n&<_d#bl4#sd#uuT&kCOT0QzKnVv^j8!oM!n{+V5v$LOmh* zpz~dI;6by&N>6W1+CIZcRJ!_SV>7f@_%lQ6Oj`A`F)TuzyH9@ibhN#{)~98s73=AL z`$VgM#!@ZP#;S2p1EK3d=RB#)L1#a4n;tuprJU1X*5h23YHZj^oena65BTkW`nQ1l z;~*dWTZuGrUmqaGtc$kzqkr~+r&AM`Wj58Nj0dkdr?S;$9Q{?*IDVa*#wmg@ai1Ir zc$P8?zsGPt>U1BwQHe% N(`|?j%xu|&etz2+5h^9@ljowuS-3emqV>|+qR=v(NULuf>zmb2 z0HE{<15Kn+zu-8%MCbfs9E6|ZUyR*q38Ra;SkgoEDt-D3W=UfjcE@;>`;A_^gT?pv z6SV8E##7u`s=tfy%Z=!uyT%!{@{V`z5^Y{>T|&$58r|F;D*k5N8!LQW7;Wc9jz8%# z=Es`5LvDu|h2iT`VOsB#ZA>n5&4gE{QKE_WjL`vNw<0GQ#12TPboxCbjzzZnH$kLL zemAzSBeX7Rso4e}o`AW9rv7g1tQY)>xBU(wix71>SjBll*i-!M z4`aL@y=(g?mSHt-;-5xNpLdMD_RuKeq)6pM%)s;X&O_sBe&A8CuK4qG@n6RFIQ3EZ zm$5u<)6w4j19#NRbm*3S6qw&dPB|WFh9jTocCVb$I@8WSn|5LJaj$)%GU~WJ`M4GL z2Rt%PsCBCnHKDr_efG%Mid&W)5fP$9bjvm_#j4;7%wOcYXq4 z9IMOXf7q<=M7REfQ%-vn`rSX6bZ=4asj)u)lXBu_wI!N1dTLzJP~B1x-|E;XTQqpS zR8@#2MSKRYZ4^E9R1>tne~S3h;`#zC1K+^2jBOa!6(j{8OR(wKChi0)0uQfACY3gM zW{l|~wsF8WnZ;oJxjN3xmH`)|1L5NW@WC&AHHfPVMm{;p{HTw>msb4^a<57=o*{U@ z5aU?#I4Ud7=430p&t|)#fQiH2XU6xy1Y%%=t F{dfs4(HAY)LvQ#~p=`WqW`Y zwa7PM1EtkCFCi$K4dh9ND9fNhz4B`%i&85{@<1^}D3X=iuz^NJ{TK!P2?WI)xw9Ck z7Rbs^l`J>QDmvtGVxZ)amG57s33hq97%1k;%C|4m)ZKCeF;LhmD__4%lXl6fOOF4l zGKwzd$W2h+6g}C-sm0IqB+`JX+>nrIoRKaiBvdcB=oUiykJ|H@xCI`lI|i$x !fpK(40#B)Xo|wXk`3(1pH=*XC9FDE7XJbuFFXPuAl&;;;UsH@A$o zu0_T~ki(1^7Z%xmHP}3U2o^KMdhZCU59`pUwa6wejK-PB%sS%YoHgL`er9la!AkQ? zqz(6wUNVtO&Ba+cu92btgkWIp8AsH!1-@O08OO5Wah5dK_5xoddOiSsXi9$%Ae0v` z6gVs(w>4(+8ZVsnz5HP&7A} +yAVzg~17)dTWyr=$D}mnHVU>78OtR zbB+|^?Dj7Y3;XDtI;3^57+OT9);5Rh>i5>U?QA8Xd+U&PDD-U|lG<0@SipK2Z7 H1LK#4hSN{@$+U7VP_VygGjgf;w(E(J>T(**B|a< ^YywJpDd|P>!SX5paqdUYt^&Z0FGU{ZP^?Noroe^e{SUSW)~B6%}xkwBM+( z4z550F~;a _*D9?2*e7*x5!7#bF`z)A?=&Fw1Jq=AvSUuxLc;n6 z#4 NvG^nNMnEC{lpAnia!b~ygwMPFbQ%2saI zr+F)cKB(UbvF33D64O{T7NprL#*>u(^}V)0%p5gnpNmxC2mwY&r9Hzi;=pAXS%uT! zkHbK23u%LfB#C>EPG|@Oi*$ZN(gG{U?uH~BQH07GlBV1k`dvfPs=s>ElhmSOR5M-G zN7xfR_Gml5ss!O{PaBgK^FTeu9G=UxcrlOgSr0q7*JcJ3(jVRwEnTIrgp($ NO1 zY!OK{)cIB~qVKbx^5y zPjC3o4l7mrl)~lrQMHg%Dkhi8MThV bDjf+v3a0YgR~RFHFli e< A^-?H4mj$hCX)H;7K!fxO2Wlb(znHX&V_3!ClMkVBbM*bETX z?y>$_y8ce-s%RIs6Q#l15|FBHw4-NDNHder-pS0-k&psDX+j!Di_JY O616>ww0u=s^S>XZY|u1!fD_T{sT@jF?@rcP|e zg SpJHWkXrHJKs#D9PnG>j-wRu~6<)4j(Ag!IJxyv*7%isvzMaVk^dp zlf90nEriM5PzP53*S&0k`jm4-*H (S2dRq- z<-28U2Y~Pu_kSr<{wx#TDjZN$t-EeCSHb5{4XkrBe3rP7m7P|Cel0Kop|SG!W!ReD zC{u2fE%b@ryPJ`u#zHHPx(o!++#M#(EtF4cHJfAapDa^Om8tYaGqRFbXRx}WX|_PZ z>x-`z4sch`4X$lodr^s6XvLtvqo?HpNeB_A6v`|AtzcD|vZhSk(wvM9RbMTX=hUPx zd2oMWnX<4<7*5}4P7)aVgIX^`nN!9hcR)Wj7~3j6s2qRtj50>9EfF{)DrGe%jVZh@ zvTC%9%G5F;xzI8R#~>Xcwai1L=3d8?`q!=k9${4B{a63XII&FX51CqM;>F;2Z6zLF zZHm10?&5?@hE5z_cz*;k_x?Gmg3S(Pc$w6v5JMqEdYN~cBgAC>SdH?|#lTH(aqSMP ze`w+TzW>$VuT1KN0`-K3Uc^l?4{_K`Y9p^>dfeSuHX{ZV-tXe8-($osQR!MHbuV oG*I2=Rq;OxC`viUq7uf=0vdUny0tmugf9 z(@9H`s25`B ?9if`s*h*>f%J!8i`%8r|`fW?n4Q#YQEMtYih33o?MAtm{ zu+XSb-pcZ0q9GWd{yr^LHkXQYTr5fKC4?2q%S+izK|en#RhE}Rv6DGBO{0EOVawzH zo=1y5>dz)%UDw=t{>>Z2&8=6fd4pJyo{uG#5Q!9;qgP<|LVqU-O<6wb*NRvgsdWlt z##}c=#fX?&ua#nMO)gbZ(F71K(LSxnvetsJQ0~m2(;(