From a7689dc178ef52c794454a82896cde4e8d674e21 Mon Sep 17 00:00:00 2001 From: YunHorn Technology Date: Wed, 21 May 2025 18:01:38 +0800 Subject: [PATCH] add upload message status return --- LoRaWAN/App/lora_app.c | 4 ++-- STM32CubeIDE/Release/WLE5CC_NODE_STS.bin | Bin 183656 -> 183656 bytes STM32CubeIDE/Release/WLE5CC_NODE_STS.elf | Bin 267260 -> 267260 bytes STS/Core/Inc/yunhorn_sts_sensors.h | 2 +- STS/Core/Src/yunhorn_sts_process.c | 8 +++++--- 5 files changed, 8 insertions(+), 6 deletions(-) diff --git a/LoRaWAN/App/lora_app.c b/LoRaWAN/App/lora_app.c index aa5ebc6..0e76cc3 100644 --- a/LoRaWAN/App/lora_app.c +++ b/LoRaWAN/App/lora_app.c @@ -1022,7 +1022,7 @@ void STS_SENSOR_Upload_AppData_Message(LmHandlerAppData_t stsAppdata) } -void STS_SENSOR_Upload_Message(uint8_t appDataPort, uint8_t appBufferSize, uint8_t *appDataBuffer) +int STS_SENSOR_Upload_Message(uint8_t appDataPort, uint8_t appBufferSize, uint8_t *appDataBuffer) { LmHandlerErrorStatus_t status = LORAMAC_HANDLER_ERROR; UTIL_TIMER_Time_t nextTxIn = 0; @@ -1056,7 +1056,7 @@ void STS_SENSOR_Upload_Message(uint8_t appDataPort, uint8_t appBufferSize, uint8 } } - + return status; } static void SendTxData(void) diff --git a/STM32CubeIDE/Release/WLE5CC_NODE_STS.bin b/STM32CubeIDE/Release/WLE5CC_NODE_STS.bin index 988e770825a09ea68ea1e81cb18943563533ad58..bf8942c024ca85a88ee6e8b6490400c4d61f059a 100644 GIT binary patch delta 6029 zcmb7I4_H*yw%=?1o)HlSB*2lFGsDO~QO1F*M8xoC4g&*`sTG+f@qCWAxOf99?;NYD4a_ulut`M!15 zTEDgSK6~%A_S$>S*)0)gw?rrj0ljIXGM`^vLpX^}&lu+u`X$s|61K56zIg)FrV=g* zX+kIXlVtt|Y{K?`@#Gu)%{RzWn^e>bZou#rw@L2_zi6V<@*5l`u>X~dxo}twr$vqC z0>DqAYtn-<*h}jo4@chaB?iR{R$jS1j@iYMDfs}~X>-&uZJx*AjCJM-Q74Lpc|sgB z(}$z;V5;~=^a6l~M4xv3WVnkq-@MAUJIM7CR_@c<*YO5+=}x` z_VxQ*pNeTc(Y>pff^dT>$Cj1F%v!vqw(_!f&a_$;i=z#CBV3}J^yS*69(}JYZR*e} z1`0?~v2W=`eFJQuwR|l+L`V3>_zK@~ckA<{bIeV$KmU0WNhp1DcPuNU^9@;Gr_F{2 zxJWM|jvEKBK2n%HU?2Y0|~M z>E?PL*%LgYlcM6|`V_2#)|d)m740+`BjbErZ^-pSXtG_+^63E+4@>EJlM!-g)Qm(} zLepoM`&8gi*69*}xDM2|LHSaUB1KcEEX!4P5UR<^8lO z)f~%(q_|^?S|yW(6u62>bYp6|#^AB`Dp4DwBdM91AFgXd)Rmf-)aW(~NR<`X^WAg-1h1#R^t?^W;fF} z(kzK@2k_l>^6S|r&pUKZd5^k7$zGv9r=`Mds!QkL6fHD`$Dm}?pCL%=tYpv86G-8!9R3;E!+Ix2mjc1ljfUtf$)n>;@qsvZ*OgcY16?pnswkdMTcwXB9 zs}Vk$}UQZ$NY`%Q&q}%Dbqd*%J|~xdO?bTitV9A z=B)IF@TfK32s`09b`~pn$R+ct!y1Gn&F4|z4%kOK%tn5xdmh#W4p*bbJ;#~q*iu|E zDhp?%$uWtl*i-bVxeC-YeNM72H{91t9+Upc3SyA)uRow*odJ_xfxD(|POkBB&xutE zwg&fYv{gdIL0pqkV&(cK2_VRD6)WhzIXt{akIm6VTnVVk6?QOi>;WpbEHU04&|;f~ z0ix#yrJc$3sd1DKE!7BpNNMtCb(fe}}%L}}d?07WtN=7`m9)=c_d~T`AC{P>U?LY6u zxJD3r$g`**jr0~h)=tjV)% zAfhtD4ki=!6A0;>(glvq4=B<80`@h}DoJhQRn_j+61_C~G$bd=8aDae?7q&PkZY>X zj&W89s_ilC-XO;^f=Z#am&{5j!{&Ow;IP?s&XLMTYwCJA_NM@(aidZ}=*A1f_(Ce!(NL5_V;^fG7~uYZ zD!cj0?{;zQNqXv6v(wx6)%QhLMcZdK&1y=~#IPpcwcS%3r2}bAiA^Eb4v(}%8hrn| zG=FYx)N{Crq~*snLac%|&y9=N6%Lye+E%)4t}*FFw=^PY3+iKtJ_U*E)38c+%K(SP z%10+1$8Mj zl6|q)>@eS8U*MhXm>sqkU2ZkUV3`}9r)w_ord41Gz(V$+dj?8UNgH&VP*R|@*KI_J zLrHW?UK~pd=^aw}J?2d=PsX&jg`{UjFbc;z;!Sc8KB0+YYkazL(ynu8oH|_R7&gh9 zh<4Gd=#geVkVClpqKUpchtS1&CRj_?K!D_<#GahLpNc#M+ z{sijd_VTd)JM$C```T1J}<2Q>o4uil)ojmS?8W35WWRxbdx&?=Z4p*`WP1N z)}d@gG{Qa2K~fT(q}_s-t~AV*CcJ*dFy0%7Gq~A16`wlqR7aw7s)MvwUs+Rc5Q<7- z5d9aA))9lVHV9hOmUv`6Qg#4aGbrUmu0XgGTB6dQwi50b9k|63K|SO3Foyk=x^5|g zZ8R@GNjuY*(PV7eQvBUlQZTga6S^Xw*E9yIEA{ojO6bOXBYO7br$Z$@o}UU|Q1z|( z@japTvvQK@Xmyk4pG7HQnO@Mc*J#bH`HAPemL|w-zLK{~>d{;;$APgDEi=-cx7K7# z`F@f^Utf!RetZkO=v|+r5MY#JbzZ$tKe*ia?R`Hj1k2eoG`nCb^if-ZIc1KIq(oj) zlQy^7%CQDtOhu(Jwq9+d^;_NQ?1lA37SPiz1=+?mgQXZ~3#R#Rkw^DUw@BOG7J-XcM)}*S`Oy$BNL6wXZl&=mdDGrM zKLcbx)(x<0@&2~)wpjk02exb3?}PAC%&mC#c5B)0pkA0PB^=(PwCpPV__o#j6JF?^ zCmeDsS`@6wi=o5+7kD=K(gXvZ&I;B}7Z;}TEqFuJ*s;RR$5X;5otR)?XNWwl1851A#5mRXQOo8AfI=UBf zFYH#7PSOWmopfheGBnadWoGz^hRVv}Zdz_1Y0j@CT)AEgq6V!d(Hh7&+ z;8$<()&4iz!{vnA>aNHx$&b$b@OyaWPPdWCD+o6mX`=mx3bK$JM#l+Yg8Oc8n!qG} z8hxLum>SNOP7fBlWkJ^;uJfloU|j!mY-`AMFFjtagLkQ~JQJKWwIVsb-B*gGml*5n z!K606T7SCU)DUzH(Ipinu$8`C(FPxivmFh97oL|Z9T>(7m30{2`Bf|73A(Q;3r56q zRXb#|P*B`_#~%UmME=e=C|89D{yD>xW7|A3eZY0l57+gMu>O%>I%&rLw8>dp7<(6e z{u5gt#(Ko&1-S~?B=+6C4Im&cswvTF67d$AFyM1dr7!=s3%bRE)lo7Srd5p#q@-$0 zl0~(8l!DROjf5hinM-M&L2sUb4lMK0Z`I^zFgYI$rQT1uGe@tzUi*Uc_dE5l> zJxyMl4Ex2xwT()cO#7cqk97HoZhP^y!-^AL*Cp}7lY?@YL3ccJ0lH}CvsqD3c~wHD zvukCS>XmQ2uC?^YvsL&<+}OGT40J>5{cu@4-?|u}R4n_W2=Hssw_&yn?xdN|=_KsA zF~EG|pHBk2Sor)K0FTf!8*MP3X1&mu6c_j`&Y8eYSvRS&1qmQk4#%;!M>lNBb$m+m-`gb<;PFboc=0qtwHa}|tpGw&0JStDb8Th>Gb+Sy?nD&GPN3E7elvtK| zT+A!2m>l&T#Yb_)&(hH5^r*v_0^hkg^O#&($%Axm2Oqf)v3<_2Fw#etcNimI4I?#S zWGmg&kp)lDkq%Sbqu8hDd;oi$EEmr|8TAeJyOIVvEZS;pVZ8pfy@;04q8E2b-$7n1 zgU@MRXD0NC%RAKo_%UcpCqz(nSElw0Ozu<8E)^Uh`gwyM*C({3D;;|2!(H+48hyH} zQ5N!x!LFBNP)fW0v=hD)%eT2yU=xd8$9?V<#W!-5n#|V;*MT%DUV7`WOmk!xer4++ zTsl3p%LX5au{~LGEW1Ub1sdpTu^EoheeV>~oOhmqHR8T^jzQvvVD%a4gAga%Qv1*u zG87DjE|L~vT_^VL*#Iy=3--oCmAGhcF2DzL!$2a4;%ft20dTnccH;MoOZ!&At77eY z3m{V4N4SAKgj**Pu8Iy1UVvzE*ZWxtn`4AEO}OY9aP#=wOQ1*v`}>U*uoB=xf13l0 zGJyWxDyYJ*pBSOZqkUK)wtP^xN(Q+yxK!pIin506iUD z4?yiRb+D&Sc4c|3vk28HdK76j`ZOS|Lis_YIP9wksTSo60&qvrwiRg*<;Rd06##bt?dC-=iJQ9!Ux?tt z{c8`%&d74lEXFiIio1_+eUgm)OXP`52nS0EcL*u*e!>+Y9YMSf`TCB|gEGhThR+CR zMk+wscnCk@;BWpx!gZtGadJ5%m`)(F_6x%8MC$<3>FZvS=Mls|M%~s?a7dQ#qt#A_q=21v& zd^9x)*(gyorp+~KjaTplkr;x;7;TJ+L~TlJs>Y_oSmX9NXWn<6K~nGi?!Di4=lj-K zYyEre*V=2Zy=Q;3De{|5kxD|qVC+!l8=GqgC(+l_#`w5?4RyDKb=1eTjf2`$!X+Y& z>jZz2Y`hB_FZ;iE(p~n}yJV?OD(VGyVc5m}Qa|C2#v3ia%U~S)U%8M2r_^v!h={lX z@DIT~;ZYgvqYY7~qAI<_qerukBv>oK`vTzS0ad=WpJk7b#3 zX>=awgzeGu0Ddm`v@0jVgS71j%SwBKTrXkeKCMIE2|G_*f(MnX$uD7Zd=ni?_EA8R z^L*7TWaUs-_*M9A2`cfsz^~xt$frF^wm>cNtRwwZ8n(UDqU|V*DmxJdS#Z$L(3Q_ zAX&vu)2oJNSWD}T_3(3g*w_;1@SPLayi7KZh$QRyjR_>a>3bxsOO`K&?FUge@@c5A@=M=7`h2ocztqJV~RN{#>e%B++T$zI@BzW{xQV}3+d$)Gh|cEv;?T7 zY16E6uli&-j-x(enr_hYO7^mEI_g8Td0I?aY)Ih*!(nj^kw&LtW$%(9q96+tOfw|) zH8B)&KNKXaR}8tg`^RQbi*cb~Vo=h+NDM0W7kYeJ;^I#akfBbT8DQ(DhNM1E4mFiE zl>tUu`5+l;okR@ddLimFG-J9QEe{Ogs@avSe+ZL=gJauq9KXeKzaHn0AKcrQu z))-YtT6e5buVf^oKriZPM`~Jx!DH`LqV_pGoSGhS{*E?C-Klwr%S9`%-2^t6*8zk%?KB0LE1%FM2*u2w7(koGtOP<;QBbT zyiUy~)63JXNx7cv@Aq2603j3KR`)3@l)IvhKx5dCXnuMkm}yPAZQh6&?S$m1O@zHA z>X;=E<7LC5Y7gxnu`2ote9J7~n2>DZ6LeDIrSJ7VuWjw7f_CmgYp z1v>T>ts@$*S73=}OvP8kkY3YpmG#zFK1&j5U*cB`uzccD)<4TdHP!bqr*w4N} zj8f!#>8CSNBm6!Ellc{lqoEn)Ny~lmod#aM0dtXWI-iGQP_hpHbYAkalKqx0$yg6H zG?0-7(`f3`!4!!Y^nC(h+ZYru6 zmW3lS#W{hh*mLx(wF;CpEjvkX3)kN4Nip19LQFE_n~x}1S0Kfpz+Kajonv0%IloN7 zT5;b-+a|Eaj9(Wmg(LoPn8{r-LWwt)@dO%gKaDa(pbyRM9*gQX=#X1iJ zh=CiFb|%-S#!)_sr%uSN^e7z)wt=p+)xvdp&XxkZsdAPzZQ(o7eMQ%!ALA;CC4NZG zs~zS#9lPK+x)d0}iv!X~WGGFei)JO1=X)nO@MttDSx`iOnA%bDh*FkOpf_n{@13kID?j>9}$Y zP1l+@_F9k(uqF;iasqQ)lU&`ypz?pu_xr7>~r8c zD|poo9a|9Om?fy>*YuK^$z@pm2Y%jJ>d?D37a954LkYOGxA+SYuk$DLWDUCbkbBUl z+9AV*^5yI*@O!xdFq@lVD;u6{=;hev09d$TDIsjf3&WTr6>KD=aYi^sS_v+2UqF@B zcJqln9BZc+f0&u}%7Lc7=&ESPjMka0$q_pCgzxs=NzRf1OKU=F$i2%WxhMkr-%s;% zb2PujO(eM=!w4}4ZOe^~+#OyvX=zu{t-0pJ4Wcw6X$u;3#E^`{^+m7>v3-EUnC?jUegOVf|OA zkCm5&^(WANtb9&z1J?iL_w{qb`oDf(Ka(2ojcH2|vw31{#~Do)6LD^MoodptNunNQ zJE9Td6emeeaFI?MUb-w8D^K9{OUIJDu{eXN-pTk)@J@CnxF$PEXZ6h|n@oIRu@2Ek zJX)s?XKmuOsMUI8JyLW4YaNtg!palwyq2g8U)u>cLI>`(MRs_`@}Z7>LEZNj!WNpB zpQxSgo8D?}-Bk4XNog^(>;t+a-x#qxP+e(g0#-;n^37=3m!Ad|^jv-_d`#8%<;VR; zsPh{+Nq4Rh$;+!zimx;9TJ{F5xi3Fq)N5;n^tPLMd!!bvO>!ILL1#wkY#QiEWw4gVVFOTJi2eHV`}A^9v!tQ1qN8i{aDEC0-L!m5}jB|jrUg@KMfgqDND}7tu&S;C+~lK6_8_? zH^8CA`&-BTF~(63?9j3&gRoh5AD+ECwX7#-;3rA}hxaHgyFriKzufq=7k19(Pl$?k z1$)AaONak2@NDo|coUw^3ib-Eos(+(72Xgd9GKze;wj;iPE0VdQDTxK*50gOzoc)> z=>R9qv6sOxea7AguTxuLl@!Q@qhO_tMOKKX-9=_l(V?OXuwM9G@v{IssJS#0dG(#EZl$oZ`;nFhY=~1QeGn&ZjA)V&& z#)zMV^Fzp;MH~2D>@2p-2!ErwWd%5tUdXw!S5Y#-5OjCb z-m)Yd;&7Q27?nH9@d{GqINX+7NjQ&#a7UeEJmHQmVdJ#zPT9a6K8|0z%Qou2l{J7D6n&;-BrVt{`pPAcEr!j&t{2M&p>oFQDy<6_dk}((S=S zR~K}@aEGti838(}Vk-VEORq?hZ}64Sj*1vKMC&VxVJqEMu?{{EY|duDo9wnqC*;s;l?`x) z&aY~Ob~;p*0Y`)@Rl8&|2nm~h{2PFLA?1NsDCa^1|F2;bvaKGOA>jVR4|nvgu>PT6 zI()|d$I02cF!nCm{1aOl#`X#;=jAA%OBi@)D_|crHO2Y}Jzh-X2Yl{(=(fkZVV6+2 zTqA?SbZ*N$*eGmkNt9`R<5BWvSGTKHeff;fy^;>EXn`_X{$vv5(#9u;HJ^xMB053RyBLMtD2)&Rg!@u>JFX|=i#SuuV2}&)6s?97nZD9glW%{VQ=yw@3IC@_8ISvZTHBczm5DX;U0*0C zV!br_d}lsH(nFnz;HT$0W8oUT)tMf3)^|{EFTFN$^6wt^8Je-)81+FIxjiy~$a}PQ zeIo3kD-eIpcUUhJ-5#Ncze=~SPl7e{==#FcB|e38bMh0*b2#5RAJI>++#Z>aRzLOG zQT}wK8f9FW4GB^lZCGuS`&9e^*I9W2jw|3@sh6d@N3`c{E;BAwWU&qXdfh8|Mq0XE zMQ72o-%@#3n&u3K#OESs9g#~O`-J9q8KVXfJK*XLBmK0o%N(^WjMRjYt#o5o20nxw z?MjJVj%^CAN3hk2a^doGn$y_sqZD4XY3E`M^PS%IBZ`0FUfm=4=hZSeK?^pfL%-0t zQ4L_D&6_qt6pido*Pg^}aM9JRf-}T0d(h)PM$5X>@PKRXj)U!VZFh?d0)lMwW*NT8 zY<+Dvj0ja*-6|*(O5enc;1~M0=O`mm-y|GGIw9P8>y#{Fcn{$cdI*<7hxe4i`$Ak# zh8**DsbIrriWNc|oTEc;&!My5UIkAJLvMcxu#Rro7pHhez-I7x6i)B^1;7DXxIYfc zg_`|20PoY61`?o8*g3ET0LOS>H#E~*2bRG$Vez~3AS$YlaDDp-CpA${j|^VHhce;4 z3`J?#VZs$6&Ho?hvG@NgUVE2~RA-zpp&iEex?MuY5w$ELkbia z-3NsG@)+ULP&QymY&>wS$Zri1E=tHdhILDYZ6Bp7FjJoRfL5wvbkwB3$0z33myxSd?d#5yQ=6GH(5!(5pzhKf`xcOLSE@w;FA&i#jwoc$$m)xD~}Iu+t{aIkAh9&FV1mIL=eEit@> zl#&ZvX}|VfI28fU_J3Urg(~={KeYlH0j~CUIKeCfd4FFOR6!gI$nZ||LVzUS<23M7 zn?ml|;8k~ZS3)(U!-cNWYAA!lUF)i$2L91CS`E*`&aS0DhCUGc&2ync7Wd_#%rbFE zj!#jyN5OD&batPD|IU50|M)zZFN3vR#-G4r5ZAx{C(r`0s6T1}|M=@}V5gW7vmoo=ABhKqWzMNfKO$TPQXbN}6ZkTOzp9T3w+;2K3yUE>V;heCuHgW35P~L00000 diff --git a/STM32CubeIDE/Release/WLE5CC_NODE_STS.elf b/STM32CubeIDE/Release/WLE5CC_NODE_STS.elf index feecb9b8bc814624f90db0ce2bfed30bf52bb6f4..d22cf79cb85a766cca19723a152fdd22ab792aee 100644 GIT binary patch delta 32319 zcmb8Y4Ompw7XN=XGr;&lG6)GFGQ&%PN`gv3N`eA{h_CoA3aN#qg{6h24VD&_l-^@) zO(`o)Ou1=D>P@bgcGHs5(wp9-G_&+3HQq4Z<@a5~8PA$|{{P?e{OB3aeAajEwb$8a zpMCauo7#5xw(am;7bqh42L0AUM5>;?L#<1vD<=9}xw~`ee~0GiWAraN7QVmzDA6Z@tBp$}U0m zLi}FYc-NyI;($6g5A@&J2A<;Xrmg(z2Tp>^iO=CFdE1&QfBE{;e~ zNDr{bsf#R$!oPBdWs(pJD_gD4cNbGs+dYq`eRRvTSFvZdnllU=#Ln7lBFEGIL>t+L zw|39)w4ZFJ?}@GB>>Y6?uveQG{#|y<6aUU=Go~A`?5z$S*fIR?x4Kz8?RB@5Fmt*u zzP*3T*J9X{+hqLB)BeprO;uiYbF=T>$L&VNRPB}Z=7JIS;dZH z*l=+}eLXhQJiFPl*CWdR@Z)x26cJwbf2)7QE*7t-`EmJTp?Wm#>0YB-e{3pQr))ak zq{M#tXICXK^@ERk+J~zX2E~XB)i!9c_(Q!hXsIYsA08YU^lWofx(M^NdfAsXi?DGG z#rfmx>yo|fPpEGX4hcwV8rP88OY9^Y*8fGr8(#Lo>gmBf`$t1jMvQAP_PnizlN!?G z8!mQ6rNjH)+G~bXFT20mV@N=Lm!@Q={XWA6FS}?8OYdR56Kzr6M*n`-M(l-eTifX0 zuN~}-ZyVd_-_IRPp6eX`hr!nLXmCjz{kvaXGsGIauPtzI^;J`{Vt@32sd}}CVo_q1 zWRc-zKcgNQ(zD0uTY+JU)uX(p{p2k#`xolvA)`bewSRnY&kveRd!P9D)~~^|Ra#9| zM!Qs}#}5~etDEA(eF9oddpjC`>gb-~Z6B(hh_{N_>TmJkVu;$~-XM{yM&BFP>&;dV z7mg|% zCD7Zls+GeiYYlyM#3-@AU+oSC8J;zspY=9abCfOAL9sDK6bJ-IDHQ zf4jwVWc^1K!EvC#!y?klen`zuh>v`##WP)rx_Np?m`Lw}E%Cp$arQl_#o;E^R6edD zIs6XQ+uldrkuW&u@9n62u0iX4hQ!)yp3}Ugr~O^^&xF2WpcN!x2UW(;D_3L4MyWDCu+Kp{Sdsnq%SZ3(ct%jYJ zbi*4Mi(31oCn5(=yV}+-o!Z&c{;K+L((7WT+MX0GqSU?*B#PhE{0D;L+nalbS<_AB z*e_EJ8+zJrHV*;!K>OR92V}%#t-{`2|X_NUdo5A^hT1*2R? zY*O#ik0@g zDTh0ImPfj9@L1KH96;G6M~nXIgyg=$sxC{8^tq$6UuOu6MkaMva%9i%+AQgP=X%*+ zzcmPJ=K=c_^>T7bNH6qX-zu*$9#-mU$8LF8NA$L&(>Cz3f2^jY#6&N4WZk8uTZUpa z*{@Z*F# zSF7KrWD9RKdPHb&yd&0@=15D!!%CQk_5BBp_D$`P79;kWxg+AkpJ~4MxY52G`>k&> zSu3m2CaFrYsj6$bNcTW1j#fVzVHJnex)H(M8rr=wjTs`$WPeaKjLZ$6+HOXfoOZ=x zs-`{DROO8<7vZSW(dgOinPIeVRG%L?Q#7bQj*Ju^s-CHF(X;>ITQ%Z;zE7IQC{clj z4e8z);dy@c%Wc*IBYN<|?UacJzD22XQiC#+TDoT7&}j9vE6r$+uwr~`ZK6@e2Z_)d{|Q5n%)El|V(&0N`}Jn8 zaAEC-EjPFDMxn{R^_FtbUT8ulUt^3bO!mgNFVx_)!L~P>%xD9O`g&6jeCv$&S`+Po zIc;6+Ma_8!yN&6VAtECYr@g~c6rFCePiXgq{x`%*NTzS4oug_-lUcD)_EGp0;CmN) z_kYAzZQ9e(=---w?QBf<_jD?TM`}NbhK@ZuKhnz=mo~+m&>y#dJ`FhZhEnnY(=MUX%T;b`fPdO#{MC zOc**F(rEv_qeoVkjPpebHt_y-uUK2dQy-e_ Nw2S#uBq_E02+c#rC(LF^GUHt4t zt$%%VM^@^=sG^{vj>cWh)I?oS|3B2BqvCtKik*m>AKeJH(W-4!K(`Man~gSYiTd`a z@Q{s7lo9QM7C*%jfsd)Gi+xN}@j(*?j~_=Rc8l+z4Q)V)bTvF9ZThti!%kr_*{^im zmvvu;vLOtcvSqQK{n3{Ata!$ATLxzh2Ggb?eP&BsRvgnOwG7M}=+IOCR}$xkVeUvq zuq~-2YBYub3}l}+-HmTFq*XUX;+qlQ4m5@1n+e}4o5;;+XF(ePW>5}Fx`ZlBgc z|Mt7p1Nk0p3CU8dfkh_!^48!?WkYaQmx5rlv!A_dOAz$R7ULdT^MgYa(=1=bvU7-{ z&diJyE7et*!}IfR4YG7JzKSVMF@_AIeY%5RXr>*3c!GnU1$XM14t@&$oqEcxH&Fhu z+vO7-{Lt<4ajJE6Pg`))pmfDrj5WHmDFo|==~SVg-M1+i-;-hO)^t~v5)o9OY#5A5 zR}}h65vE^$c56!j)}T*|KmHAF@y`k>@Xt~ zH%EMTiZ+JX{x9|6ENhpi+sBQu6bk!Db$wPiJgc&z#TfO+tiIwa)qBj)UVAz=Ts0{D zvr3wjbuZ#uV4fx2Y~QXNW6`$)4rT&);0z26<@x@K7l z^Rdr&?gATIo)0mmi_<3i+!jlEVfFlif6w|oM-0CDs~Vf_FRIkE?6``X|nZ88=c?L{rvbU44jv7t38Jq$-@qkV%qb6j6*F=mKeGBCnTz)_-=j+i3M z{;LvZfUS73(O#&&H*USiR^!Ky65pyT$5)AW)xi_8#WU)v3BQWL>Vk=J;x2Xb#BgC! z4^O-#WaT@PRtfQe8a}yy@QBmh!b_VxV+UoGHhCpiHeIx+O+Uq!Hko4YQ5Q^(6XELS z$uV6#26&t{9qg6WTdkcu%JZ9FJ*}tIpeey3T8*D#?J~-f5jZ*x&Sfiea@uHl1-`G2_ILD_P0bkW@@_T0q%GGpi}2_F z>{-&$I79t$da(G1+B&_zC{X*(2<^3@H5Egz5`v~u9g#R3zacV=Z_GuF?Vi_JSBcY%0T{UkR=9Id>TyUW9)<5uMxc`pl*SZRGQ zKxBG#C^$Jom$Sd!>|tqdJlQ5RmJUAFMn{^?lQx6B)M5Jve01CM4%?ne+uV4gc)haf z;kSioubjMKWN?=t%t8YXwl?~!@2uV|c2*{>>ER)csM#-0qE7WaI8H#b$MrjOnqu#Vfsk!R7^< zz1}_3(zsGRE38j3Xxhl>di_a9;s~IJkUc-RQtabOt!bq z3-mYZ))0|VIehC5A)ZiweJ4#!P-EVGIwYXoJN@5H8)7$kC*Rm!+}!BXel*zJ|K@q) z#pXtD^~k#cJ=)s5aez;|r9>S()!cYfz4Gqx9%mi4K-gYC-Q4()e#`mw!kHdFtiT8u3cf9}NVA1N8{z<|2 zh9Im#Ys>S&9{n57n=cMV*4~D0BM0X-H`-gM#SGwGBfdwAUsXHakM8j;y1;i$rnvJ4 zYRQx8eLJi^pTPD>!Dff0N}azW+~+-qWxB&sroO%-Myytk?uZO{5-}?a9z@jchRWZb z>v0Bg7pUz!2AjvBM7UPl0a!<=Ddiv1b&&E=;!8DgXMa&uIe(|O5V#oh!6wm7_1@Lr z{1rO)<$}##;;dpxsBUijmpXD+wAiaI+SN;JSJ&)%+M}bb^46{`9wJrU{Pzm+U1jEn zjb0+HGUa3J=Pi|$`{O;k^nYJ5NqkOM-Z=EFN0+l7;wsx7#T2d99!?WAl|5@>3>bD( zjt&-!)ul&mqE7wf*l=~ou@}Vh%1@5fiJ(_*jr)}@2$?+I%wPDca`;w9#~(_ulDw*N z@4sFV;-H#zyqCzXoP0c9h#K{k6G5V~a{GxgA&~Bu6}WzJOm0~*h zv0_?PshG0WBenIyxAMcUVvK27M-@{VKGXj{K2Lw@YM;Y=sEqS7ywdtDuDO@nvlAps!TPyAEP%@mu=RhhzcY^Gw_jZgG_!j!q+XSDdXi?Hp#G)bg* ziR1gjXNUzt)bB5yDZ)L3*uOVdWaILu?3gVAM79i=Bl?RUWy%~eN*s|d%@NbZf92&l zVvX1#7vza5@z?&)e6ij`d@uLTMT!6I|9q~P>>)~J$V1{u5wL&#L*i*6a`$&B5JNr0 ziT!Dh2<2eA}u-VM#(-ACRA1O==U^|j5 zOo_vVDH5x2I!&0&slqfF_9Xb!u1)sC9&&Be28FR@aD`@c-iYX4CBz)G_;wldQCY)4EJLURI9--EiUn!;v zm=EG}MU%Fn0M5jJ;9ID7p71k6x0zJ&i(9{@P!0+2gRm z7J)14l!c;rDC9Scu?2iD;~4N*#&O`$jFZ4K7-xc)Fb;C#sZ{B#{q?_k{1`a_d-d%^ z$Z-f`I4biPlfIBK={0U#Btz~ngxc1Q(!-M58O9Xm0%OwmU>b)7{yY@YYZ#O6izyzd zPJJO`(pNA>`H4ymGmt|QCZbf_8K5^NsZJ){f2_`wz%a(7Uz9#Q3?JHJC+Kcu-o}`U z?O{y1X`=2=dLU!cXE7$dfHCQN7(@3{YM6l>dhgHnHM}OwC)jqNKwrpuvmtcCkV$&| z#a$I89-If+1OHL+bxfyX8yLR}|JT7Qn17qh^)n1K`{w9jDNKYc^D~5|44dp~UdNcC zZ*k+@j48}k*^cP>$EN6Es8|DIazo~~w;kyw#-wkV=Bn2)Cf#>`X-`9_Fc-0%#9^1! z{)XYUVKemNWS+;Es$0mI^bL$1Ysr}OV~j~Z$(Zy8#?U7!ZOlLp5g72Wz+dOiF@Q1Y zIgF`-S&T_vEo%b|b8KswncVid@mFqq#*Ke*V}Fd%2!p@QwAM1FYJD+wJ7nlt-4wa& zPJ`7P$c*H)PuAUO2#q_y%nQ3I%0Y0tBXVbK1>?Un78N@#V|rnjIq7D;&X`uw?#6*Q zY&gS^p6tdCy76;vyoWK;kYDyPq}cw;j9ZcWZ{Q~ooc1xt=E&14{Ri}1@H`v~ocrLR zd|fC18pdbge+1l}`PV$?;%`$(tl_AJ&-?EOcQT z_5c@yqKq%l3s8WcAJv%xG%+SU>M>V+h#QZ8T-V9}Vxi7KsZ;?sfWKJG9Ka)hSRLRpQl z;ssfE7k29src#o77*lQg-1t*BKE;^IpJPnrFEA$kXU5QN%2j3{2Rma5(7>2wpK;X}GN$srD_r$J#?N+_GeQi0<{W0DG6iyF2nNZ8 zEA^seUdx!;cO7HWuQPURKgOhYe^!r2x-VnWV;S%6uE^j%2D5DlGuB`O#e;{y*|~uV znEn;?1>iB7PC?6=PL=LsO!^X=Yf>8+L!YQb6uUYkyYX>19<<8Ue+y%(aF}fGgT~Ex zPIvS4QIt$@EM({4zJ%$NcM)R>vw<<`TNsnRhp}V58AA`lX^@@(IruWB07bGo)G#ov z*v-6=v7=tbR4i78Sg?8ttM%w)E?J{96luCMdKASYm$q6H*} zDa_$R1egkbis>hr{sr_}@IqC0^D8&>HS}MP~}Qk1^>5 zrLKCR8$TtJ!VID2($bBuW^QUL)&K%y!((e1gGrlRj*{tDeD_^m&Y_)e0C- zMVD6AZEy{+g)s%#@P?bt*pc8ySA7;^(u){V0xK9#HNvn_hC~_$+O{zJMKnYi7>nCm z;sd7t31Ju5!t^hg-o1ySd=nxo_F6Kn8in;I}|e`IoTOg@(qkhkJzjS zAw7yQ={bx^pT?N4s1-QzX^tD@D6IkcQ<&4R{O;+EHeb4xoUX0Ac z7*jRLj7eY3nDn)bNiSzi`ffM=yDNJrhh%PF6szFUs%Z@4RxG*g9Mn6z_@NxvXh z_Q%}dA~TcQkiYB2$Sr{}={2$z#caozd4jK^dF%EMO4C|j?3Z+_4_7`N-T!SkM1wOlro7Lv0K|7e#{z$ymwS4<@!f75<;I1K zE2uXvhQT=!QU$A-191ssTBE{B*93|ge~J~LJBKG7>2+T7&DiJaKZfx)HWbK);TS8> zy~?$KFXPMbr(2Ze>;l#9k6rx_Fm8cA-Ok*`{Kp^A{cW^{vzUR_FykM(1L=is9QcW= ze$|a99&*+9F{b!OFs8Wkj_GkoFL2{^j19E<;EnKe_O8IsT*{A7qL_gy z$YD$sOmpKR#^i62)q`+um;AXNm&_YvJ(GMxf$VN3zHGA4Z+W71dDx>TsFV;s|ydOr-#D?C)7T-M)f7-!wh{3gMTZte5- z-Y0YKL$5r*+@6OU-TmioHB6`UjxjESKRp@X0Xyw`q#tMcLFgyIJi7}_hkuyzGcz1V z0ebX+@63fVBmq0wim&u$_yKP8v;rUUYGf|lY-gC;4Y<+63xx)KXz>494@2qBU`&nY zf7(@#Vodt5Z(Q|M#=ibooirGDdt@*N3NS{7BpMz!k7s7eW1cKa#99_Ja}LJ;RbbwF z8)RJ~T?b%ptGsX>0PLIyQ6;;XPSN);UJOTih==>vFrEC5F)oJVXW$6fwE@nj^KOJcdqI7VN88+)_GkgKEv429Byp-kM6%K0H+sSV3>u1&ZGJ?=0E}F zG47AfGar1N`6qv`2PFUTjE`c4CV($6|K1n4Kl<1JW;l%kG2jeVU>?({f+dW9gFih| z$Nl#)o%|0m7I!KNJ$^Ud8J|vejdeUD+)rZM3k7_@4bB2sUSv8|p!}eh9}0f~{x60L zXNzVqo&1k8j-+k2;*uVK99A%r^b?yPso6<7Zij7#88 z&m$Hx|BFngG_Es#>rQkPdRXyx%fVs5FRm2~W4s>~&;yR#e+AR2g0+lkJ@+vt{Safv z1>%#;Kn|xEQ-IX}x+b)aG3i?wQ~7O-Nk7Aw^oxug7l;SQMakF_!+z82p>j=(sho1% zRlk!l>F+Y8@?(D2{Yjt4nDo_*q1zPSKlB2Q#O*p$fQyVtuldteKgXE#zy?>nH)GP* zx-f>P@v<}p4YBYqy&U-!HS0`ylrtuMT8pdx5M$E!wY%!a7?WPE2oo0g)24+7n1LLw zdbl_!O^iwJZFJS67?VDYF|9xzW70Rcu>4?z;kmecw;}dH##Ck#Ydnhirpz6Q$0fGO zl~~9_BMq_i=mdT5o@%g&buuK?Fh{PX?;psrRKsv_K-Q&_oM!M9HPR;y=k#OJ4BZ1L z+DT8>HTp_sr{U4JQ_S3}7tYJU7PvbHhwDtIFm}e2v`JPVjIFzu9-Yiv8B?*{j7e`} zOuFLjT0W35>Ae|K`5}y<+mr-mAcuvFDZmoOq?a%zeJx|s?TkrpU`)Evq$fPNoBSf( zFvx0Rwh_G)r3-ine4TBXAVWscsKDGPR32lhY93?Kw=yPu8)MQ>GA8{LW76%6q1%)O zW*`Sk7kynQKm=pb6Bv^|j4|mO8I!(+G3nbF2PrrWC}#$8I3Tk#FpoaO%u9OV2n>D} zva|gzGM(zVzpI{i3H*nGozqs*-(va}=x>8-w0NZFb<@l5>V=0?^I_m~#@^B=6B{g| zyYBZX;zWXnX>q1vc@NVm?jXjb&tmMTm+=pXmk-{@;`#dM^}*k!_%lNz3Iu>3(h5+( z6-=iJcQYn^A7j#M7?XaCG3n7Fm{sr;o3=_1|A)9ip4J`MZ`*mOf)}AL6e7SM%&UUHL0Fen94;m^m;| zccZ!^WGO|9ax-Tzrd1lln2ODkbz`tg<}ow56}a(oH(u?=ue$MDZd~rh`&=2%h`Jh- z3vS%t#(qKi>Qlmf+_;|`<0n=4OhFmp!h_MNTnsp{xbbSn)Nmy-X)LaOp-gw_=~8WXF{UsR8IwLn`iwJ-GcO5tEw)WA z8i)OLx0^Ymx9&#Kau`#zJjSH&W=#48#-v|lOnO3yOMIJ>$_(VtyN`>5GK4Yd!$Mv4 z@r+47WO3DN-1sjS#x2)2W|%5>jz^q-O!`&Eq+e%DdLUk)#sYuZ zy*4-AsB`CyoC~_aaU;hrvnSv>)uXIIsh)+hb^=mvV%}t)7~xvoJU4#BjlXeYyBh~a z>hWlGerAmNFr#oaC{cIo1t_5!#uVTrW71E#@qgU7UtiaFIW9aG)6ghahjniJFE>8L zm=e0qm=bDWO!@$sJqd$rLbP5Dna9hOldxCjFf)~2;>ORqagMA*vV;pQ!|uI2->HU}eojhp#8 zm#?_G*~W-=aPy2y;Q=6|_y z*dRS9>8m-Tk~QE0R>@Va!+zb3|8ixUGGwr81p|iYOj)NgrUWt=lb*+z^m&X)U%{C4 zV#b}9ESP~DPBEqc*BO&;XH2>&UQd|x?u<$A&6soxA*-hvLi3B=%zGG9?FZcWq#Iv!V>@H2#v+rZ;XZK$UeyHQ z&qJAlm7w=SjSlME!=jkJ5IVgAYteKHlPoKy8A6jXm|HR2GTq$rm`>RjFy0`er{gUC zeVIv%PvrtEY$p+f-b3ZN6tP0zL8o_5!?au|=oY45f==(K@@wd)m`?s@7~h0Hz1OPk zBU2p5l-LBlaj3vB#>QY=mILGRq+^Sdp2~DHbb1k&-wl~1lV%t~1M-+#Ke*9*wO!@< z8HQdWN$!M)Z9J^>_AOugCs?U@(CJNG+H}sba0SyJgHCVrrfNEEsY6VsWNR3|2!DE8 zSgX(G7+jAr2MGsyML3EDyvlS6c%AWf_|t2}T5~#DGb7QpHFFqOz@J`6_IJd$b@sgi z=5PQG^d2)VhTdM|Vx}L1PVYW%UNY*uM0xHNPQI#QdpYRxqZp>ll;%24m8XF@|naj&lPlq?fIW zaMR8?(p=>_0@xW-zyWwc8w>n(Hf%EEIK-nDxSQC`qX@hxuKVN4egZROq5!=~Ucw5L zC-Va6Ta0JGpWZ${!xCOG($#+h<4567Z>=wPq>F@y;EQjnUf@|c(Ch0pEP;7Ur!_tx z+jDX2=v10sYy*nXoA3OV%RZSj8yomgy6#p1H+r$%c|@mZKQrCY(-|LxKfM%xoUNY! zC_NteM=+*%#psAw;Lou={FHsnKn{4Cezw78UclCh;yfZ(&cXEMn49-WSuqFmlv8fz z2F6sni7{2ud$dayiiPnxtd$iU1wZEilfiTrQj~jpE#{OgVgeifAw|P|O*j9Yo(8=4}_$xPVVoU+&$&k6&nF`0b z*0YTl7erHVn|6`1JBb0R$^aA9tg)vq5DPz+A#hCOQ=`#;Q z+pLMMVTu@&+XluIW}_SLV@&>b#^m4R#u1bB`rvQF?+)k&$9lN&F*p9*jT;zK0&R>b zo|2=-C*8z22=y!7nSmVq8B>5j#-tBnOnL%i(o-3ep23*(@r)gVLJl*K!z{)WAdfNW z1&m2w$e8pcj7cwIO!{iZjvHGg%s>viWzs`9jO=kUN6AGG8D5Kvovb$~g}>L0hq>_x zne;H8pdI689_z+Avg~0)up^&YZqjU7@h}e7dCZ&=f@v{04+%JDIfrCD+-x<>Z7$r7 zfN?qSw%Zw|Q~u`|KL-EvZvNMqPX2br)LQ;i^!9ir1h1GC;B>rns<{2o7Zr+NPE=?B zW71<8lb*ns^kIzOL6S+}64;&Vet_xl_fw8B0|hLWF$=Iw*CH z@O<(Jo37_a9Ko1e^B9vpk1^?EX1JDL$e8pJS^cQtZQELA9^VI-oWYI>zt&p&m`>Fk zU_2ZC2f?`Dufa zBHTtv&DGt=jEiuKu;)y3GnX)?+SW3rVp|xKzLhcQhZvJy!>Gzl*()@JVcIsY>An{n0v$Fx>jQ zr*J$rO2s~h`36Q!I#DD39vmVomZFj*SqE?NnhbdgR3)>Y!lkWcm@^<9hwpVSV;G%Pgb^gI8hRZ_zjo9Bu5p&O>?@I7Zf@8q`*g#f0j& zI^Q`Z^<$_D@bJBJg}w$)#vOwxTC_`~2MWjAzU2QWI0XAxl<2J87@;Wd$lRw9_Dj|P z!(h(EtEkSTCV=UGl7Uk~JYkF13c%}Ec0MsmVV8kdGXGb>WwI7w&5gL-V$`xZ0`q6G z9cJsOC5q{8&FmAYD3gMO<3(7C77EUnNkwowjf?UqFdt+|E&<;sSHdl>4y#Cq zOe(z-=4CxPZ>15R1h09a^F=A*AHYenwg|u8R5wa7{j3#BM>Z9h~_9VvN5qoV}ttr7}Ox>x5UaJDRa2CM(Ptfj?i+5QY#VY19#fu`a$ zr}V>INS2a06FZ2rp+AE8C0Przjec(Lq*il4e_Zw{RveQITG_k7^z(bp%G7vpGA8n$$DDclp!|wPWq?5c~`_JN>7<>gSu3%#KL+5TM`@4 zQIEhppbY)DyT-xbNLg#cWNQsxOK~>CX1YHlV~SBBVqsyOgA-b3^49RGq$C4;lr&2HlxiI=Bu8 zUT24xLjH2)Dx~y@EW^UQ3hnJ2HL9UvcPH~QbW~@MKPiZ8r$QAnsLoias$Wo{&M<(i-JPdOrs_@rBE(M>)xaQnMYrvVfN@LM<3I0~rBaH3oQsuVW zw=h>=$1d00egmtlb`g)Kp|PW*SsiN{2!09GWN6$EydBTX4%7Hv@FMI^7L7-Nr*GB| z@6+QEW<3h{YYq>=VW})zgKoPFN1|hz`7D{)k?D8vO<4~&+O994sV2*$7tq7F(*f+n zwHWxYksQf>4*nW_#@Pe^173h`?d%_=+>T(sa*jM7!5qCqF%@aWJ_8?=?Qlc)3wa5PGMR)$TwlE9>pX_se?Lx0F)I3M zg=Tw4pQ1eJ}@oqL@x;VJCqXV~XtDu=BtHGWTWVjv){W>rT8nxIy#&l1fJk$2$pB z=`}D$)t9l^zeR5tp}F0Q=1s&1?QG@g__9p;yn;QZ9S4|H&Fu}C`HuEJI0dWpv8EpY zkHkcfT8?TvN{j=Jv*pf$BQe2nuJTnd?;j!wJss=r^tU7-$YNQ6JgjxFch};Mho8hi zkK&Gc9s%!_^>7oO(q}EEujc1FpZ2FL&XUSDL?f8j+7(07RBX7lTC`a3N*{eN9s%Bt z>FWhepA0UQrEAeo+hsLs^AOkN4{Hs5Fv7M2#d;Z1>ew7frH0`X=3|8mw4&9+U90{I zOh2^irRkTzT`)f^(fAg)86%mqGjvNvd0C6-DX(FTob5aw<~lq*(_1UHfZW&!QUs0} zqU(PHUz0JfBFUFzHWn_Ely<1`a^Z}f z`fyMUu9CH{p@S^Kr7~v+X@R+aUwwuWFp^f-XPqHD#yQeWhpFnh&bNUm;U(mP{p=BK z1xmmtWbQf~k|wk1z$ut-%CdDBBX%y=OM74!5p0SR2;RlEP&|04tVc2NjPzNL9vX>> zNuXBO8&H$*n-9*l-UW_+t@GtF%Iz4q>oFoN!ftbyW=@CsEDm7K-ZmM$9=#2R2FEsg0z84uuGWH+WIM98d7=q0SUcRlB)2>C z?0*N}#B{HZrgwm=FuQeTV@}8T$v7H(ItI^Scyz`~0-K-Jv!4JC#i-%jnDf(>LCVcY z{k&xr9CFz(vjMymjqhyEgWw6W_HXDEiP3t`t%vzE8%0{cJQj-&2Bv|N^eQ)I~NIM6Ib^ElV+D9q<^w%DM#{Tn==4I1@et6cdy+G(;ZLus2Q z8q+zGoI4tW;xGCPVKF!o)8-;AS_zovz8Sm#bGm7oz7M!ROjnmRH)AwMfvb8edPy%Yh{weHJ8a~QHxgB6EJVb)Odi# z>%r4ynKTUaqhDOdX@_Hf`VnSPE`N}QK5>_Dp<|wAw`SvDP|^9TWK?TBn6L3z@J$)B z5&gGR=5EAU%>wL|2ei_jW9dAldLz~#NY-Hy*Um1)e zrE6t2Evn?AO}HGr6FYi$t%^S5Fl)edp@ka9g0F4HtM3{of$@9ux5t|t@Jkq_qcr_V z@H?^|(NnggSgK~;1@mIe)4eo41P;NkLJZLOB=|*iJq#a?_WKSTAhX{@l1t?xEUZ>s zD{*$L;W#2)!lZka=A8wul@)L^FMC&UJoHD6`wYxwvhGd8xVXLOE@7JY=P>89N!nR( zHXC|=0e>!YH{&Sr3{u9Hbfk3e1YCxYWt(vo;GnGEjLh~*pDkF_%NSbV0v#>N7^GS~U&Gp`FU&y=<9-hPwl!a+OC)(N5L)LJJV19LdexgONgnFm&7Qkh#_ z@520}Tm*BRPrN=TU4S`mioTg!!D}!co3v=%bEv7RQOtUTjg%8%HsI2Zvo|~f4w3C} z%P+;?T%eUMhk4aJ<#ukLf_bn020Xc+Fg>NM%O!9qyP|Uge43s7DU-32$(3)RIRj+b zTi6*eK?0d;*+ozpXe0MDO}Ev{{Yhr#qeA8|HN(KPHa6*B1^w81r*i-ma^t|Q*9 zg*yxPOj!zZKK&mgwrXbMbj+wQ)cR|DCpi8wOi#30?g7{07W*kp&jjya9qb`+B(h4@ z^rygUq|dvky%gto&ag*dUM!Q|#bBI*2jHD;;6DQ++*n*hFm&#sao|g`45e|gqnZ{= zWgQl_&(QUcYgN1erxWbdZ!37hhl=C*Wg0a;23KJ>bvDem;KaY{NAMfq$+$l>UWLMIOcWd6?fbU~7tt;T~ zup#GZ`W?C0)A7tgjmDASe4GiTYMcbd{<9sOc|F@uufn_+`%|&zwgvo|T(ljBj})An zI!A(wFehQG4bnT zSm)#Pd5{*Q7EaT#2My8qM{usJgWCiiI}C@DOK6bCG`9rsi4*$v983I=e)yjcwqiyS ztNE`4Uy<26k;Edo2#dH)IAQfqX4t1??gzN;F?f}JlIMkaIB$6%Yui=pc1g`?56m{Nls7m0CQtNIOFPIm zqTM&!OZ~i)zNfa2Rl5?bU`vNL{(a=C7yg~nVR4wT?V}_P?i#W6YEPS&`omQzD$o&t zZyT-#*v#7sTP(kOsmK0p-RZ6Rw+3u~K($ELdhguV=8aU-N4{2^_gCAHKE>W@FJ)nT zwEU;?N_j8@xrQ*7|Q2UOW2_w!ayD1XK;l$R>S3B~fg%E5$3dS|!))KaxvT79}j zivQy8>!i@kci-=&rYQwO;$(;79I{YuQZ5f!BtNUnO^gg%+#2hUqXO*S>Laak)YvPP z#bedw>E3Fo@=jF|Yicy9;Vl8t z^5$3vyl-vz&7A421}XkYA;mr|>2CW_^GYwZt1HUkZ@&R;@lFT*d$NPr8{b~-d-(euq1)>(TGJ)?m%6E>S~^R zRZ_RNbTx14=&r$Z^b3pHa+OH7OEz!yjPk{;5p%x!NZPj&HIotjn|+k$v3;eZOGnG- zZ8`PQzVhoOo0~JhgZ#TW9iAWU!(L1GQg`i>BstrvZbCVhL6=dl@AhbM@%iu%VBePtLxgl zMm4=(8=e3P-6zL*s~;-)DakQqZC(y3_MhWPQL>{4_JrCoR^66a8EsXpHDj-&M_;e_ zsC|`9DT!fQJCXM+v)22}sSUq*P4N+4>U!nxl>Ty@5}s<8&naoC=jEA-{kA=UPwY8` zx_f0?cUq&(MLue<^80NGkwaUDTszig?U5wk9X>m~#&~TBu**s>^$um&un0L?nK~?S z!s(WPT)AK0Qc2y~5~Rj<`eg^HBRc(Zsi*fTmTW=l?VVlCpR`J93-lpZ?WkFhdWUOU ze=#5(wtttQ1o;CctCTKH2~zJ=ei}B_FQ>!HVNu6-cx77D93^Xb@qi$V4i+_}BQxEi zhT`8rMJd=*QfXJDY&RjF59-lNv3+0pYIy%19qks?)L~JrO4sn5$VKhu%{GVmRg6XL zH#<^M1}}9*$IT9EXD@Y`GB@oNd8*QxHbA~f>3@5w{F_pIdw6ntYu_ll!&-ymGSj@W zm-=^W64)Q@|3~Yf?6}+|Mf-n~lKza||C>3fGCH&P>0%#sk+S{vUVck4%5^p0)gFm{ z@rrW%_7M3o<-+Ze^3RIThy=MpNgc6ya9$_Iz{KcTk}ZJh5i6xr4>dU?I~{uy_jUIy zlS6iKo)VZILZwR|AP-Oq()-Ji%A@Hqe!kuPI$OqQ)np&p*XE#o;H~aZGBV-@Jm4yIkG7uKlHIEQ2P1h` zv#HI;MO`jxZ?)hE*rSMyX#0$o6pRa2w8rF?Atn8DUmH2*xXINcV{)%kyw#_aA2RY~ zFJ-{U$nZp0>b0#gwkva`D3kr2yDh5djImj8)XW;09Q|nP*#|6YIgZDHasIb??kt(dKRG}11As5FiY@A+4!ca9}njct6Bol1{76k@yECBc-1X*1di|Mp+4MN zw5MlY&ulp+265WEY~=$SR&{Kr7xd+bm6A^1Ug#cGvs(fs8)X9+OxRKFSzFRN+N^uz=;+dryjhRU+HO_XcFM8V<1`>_!i1r_Aua0Z zF8|yf*{91T?BJc9-to>W55H$sE0yz(!2@3YsB~vQen9r1@>|OL^$1cQZvWr=*XL&L zi7gK+?`q!CN=?)Q`R`VSjZXGohJ%QjAKeJHY{fY`q-U*bx6!VBR(WG|bi}JIR3bVA zZ9$T)A3oNdJ=8HRm3yohJboIT+B30>cC;BOGL`7;tf?2e%$sGKRXyJ|GSQQiY> z5xJ5*wA`wew}m#ndiuCtiOFz`b_gqUq zSh0`ks8MiB1nP$ARB4cUeM>mLr^DK#rBANZFRVmbnTSbOEc(jBn0^JR zk!>NULEpAu{2SI5oEugWoGYyyd*!jxC`ZPqAXx8i4a^Nft)m=)py{oqZPYttwY;AC zM1n)Io(+_|ZNH{V*3-(KF^N4_w04h&LF)HP^Oy{Iosyax5qNX^&E?VMuZ{ff810Ne z^^h_**WP1M=h!@3sjOxwD{`aZxifcwJVyB`x4(Q;@yQ$3`(IrvFPf!+xm7LF^5^g^ zw8-WNRNq#n<_!zG(3V&(4|HBheUBn0l$ud6byT2gS8DU7-t2ekx?EdnF^>7}L*Ugm z?|AERDmuoy59gG8JL8Xua^i0nO6!&Q{9w6G$;waY7vC=R^SkULRk!%S?Sb~7F?rFw zN`0c0(seC9@e@mBTSlVtT7GSI^swL!yi?%f=yZo6u8_)>?%JStHATRD8kBKzVtd2@=Rp~X^Z zQ6Fx@uEX^O&JFFcjwqa+E$Yk4^s)WzPhf`FBO4=J0nQTbbjFmU)C*FS8MexW7WIDR z?XfH5TqSwjX!*EOF>a^4UP&y-r;c23K~7NSjZct6l{Mp|Wp8EQ_;d0rb#G31QkH9! z=t%>^(~tLzu5R&)Pspuq@lLO6Icrl|evYqhvBt+K^Cl(8QOcT0abCT1O;LT6D+GbiF^w zA*n~N25gs;o8Gr%UT3@7yhhnRITA%YJ~=^F74wuFOhNLe9CQxNldP@TlJ(Qv?roUH zWOIKuYT6!c>$YEJzJ3O6UXEm4*D@x4)UbeoAD@!n8s8GFcEL7qj2`#7F_P0-52HJv zd)v&M+&0>tgYS!Df?YjjO)CbvqN~j>Xxryn<>;sX?p4**Jfpp%AW#hDJ`A}Wr^o25JvKwdQ%E`**8MEY*%A~@1a;37bFit*P*HpO0WRkn;UMqTD zmWS2F+#Mq4Si2-#ub~&JZ?u|hoy}i%$Qlb5f6_rGpYH28vs&%4?S+qSd)j4tzwYT- z$rf4E?V0xiok+;-kJmYVY4=M%EO^{dDZG0}mN2#*;jSFqfpVy75e#A?@Uis+d0e-C=Qh3eC z|9xXQ+t&Pd-Q}0-&2p^r-m6U*pVo;u|7Y909Ro|&%vWO7q);lc#ieJHA7yUh@fsUqQ#yDAWH=J1$U3qtURRVB6Z9g_LAj%#{o(0Zmro!2 zPiyl@C2phL?~u##ztekQ`L{BCV}$&k@+j=Dw;v3z8~MM}3hb+tO&cTSD&^CS8U5$B zTWIFgA;mt0`WCfI;n&6f@AM>iO>0lb_peTm#dqwPcfzP2z4Kh6x!v3GQOOVHFqEsa z?dfpSz~<9|XA?`Jv8#HHN<_Q<)kZBtyKc+KAJDS@Rm__P_@6|V_^!p8aN0~Q_N6jx zlijZ#wvS5IxGcMrd7GmBHo7cRU6wbL)tln55c27!n2<$?Syys5qWYTaet*jU1mfPO z$Tf+91xOLC<+dAET*B47N9|KHT5eF%HV>3{)y>=NBg=`(!gp88eoD_R0|SrYFgRbb z##=rq*;49Tn~x}?w+z4uZsC^R@+M{JmPbr-XPs&5S`*e}-uPFoe7Y|Gy=HHDbY0d5 z7!f+^cI`^`>e2rl$*SPfQ1{Q?Z%jRozb9G4wn^3)<@mlV`Qy6Y`{T?Qx3dl=VwvL6 zgHHJ;W#6F@O3I;U<;8XT4mHYhwX*J$-j<3wgb6s@x9-Fz^JV!XCF4kMIj3&wkz`r^ zSb6EQFnMR)=Fis2GRpWxt-MhA=ZgpAjdgR5PLTclc1qTrA4paTk)s@LXu?8S-IsBe ztkDN0YX&}({y#nsee7wU&U`41`-1`P8?4uDsatW<$J8TczhupJ;H;~>`Q0P->I0Is z`jBL8JR(^K;JXbqI}iVe)lPi;e}cnV z$(oGMVSIkar{J7qeG(u4pCxNMwzIIEb6&D8#r85je!svUp9T2r!6y=N{$DyS{0w#ud&XG zZEM}qwx4>+2X@W#mcNJ(U)U-;VjX`rf7D{fzq?!hXnwcLte)xov-#OwV~5JUgXH~U zZjQVMsBF#J6*xxzric9Gu3sm}8Q${eyZTR)=gIP)yH-q>qfN4T z*UmyYU+%4TnlLGPp;PL2L$1xyx3sHy`qe+1$BM9-@<92V$eJmSmJf>RnetTmlDIHa zen#Fb78J=l<(6I1#qtVM@5XvltnWTE)}sD*LAG7Fkh0U__@nvCt}kZElT7kbVZTRy zNbbGsm3!nzWO?Q;zY=+vN&aG2&b=~@j0bl8S}O06<@d!K56Zb`wrOdy^)U3fN%D2p#7W2y#(BFcPMaS0 zNj^UvT?L=O8IpB7eaH3-Y(okqYbQRR-G%QnvAm7XaoA^K>lAV4Ou1nTK9{U<_@v@f z-GHSb{N*2&tQ*CObEZi9qhCta%`or8=bR>!%W>EbfHTDLbEfZPo7nubslS{qj$`9h zcDHN|5Zlk2dWnGZCab(egq=4H^g0T&rQ59jY_f==^CpYeF&MqOjqAx+31g3MVeE@s zMvLt~n|cfK_Oi&5^w+N1^QL`frwz;XR0>HlN#vKp*ajZLI1W69aRS)EI1PL!;~a1) z<1hnHrc9^oYPw+hDW;$=u5F;>&m@s!JYzUYMT|)=VNCj71DA=2>&=nQs?mB_ay!PD z!kl7E`c}*jvB6(=G4?Vh-4}C5m#pa}j7cwNjQHcFz05!kS1`ln0YWkRbu;M!cj!z7 zOkqs=8R6$|e$P3mKzAeadd8G&D`V0v<8^=1gBg=Pg)!-~8I!)1G4vp5FEfxs=&t+# z^GkBzVYVMA&?llP&>UG1KS9sG@;XUM02e_v;Xg{gjOmnYIpeqBzXH6N`L~F|AoJir z--&uy3S$%Ng3OT_DU&?S%NSGiRR*qMOkviFPDC%>f2SUXlBtZzt%EV?mdUz5>8qyb zO!{8Nr2Fow?q!aY1IyS!;4&MIamw`~Ug+`z{S{Ih`rFh(N` z{<@1*#h9}7#klQ~q38CL#FiV(_P}6fB&Thn@dk5b!VYGh-&2xyf*r2N-LX5EPRS05 zxZW6Mj^MQ5&VtMr8B-N688{fH4Yxn(!wr0wfuAt&R>sIre9_yS;rtIXu1DD~fFDF~ zI>ubPqe##6L+De%vvDqPAA`G#b)Ee8GCm3aday6^-+Q-*zf(HmX^^fO_}*C_38cld zJ^4oiAG$}^sZ~qn>P!Wk@4-$S0UicP$}7P)`N`Hzm>1P>3 zcS^r7136q`OaWBJq<1hTU0S3!59z*)Ne^I5dS4F~xAiqgIc>}~(^r!0U^>#>$6zee zDMsicdY+U=tbxxM_!q{Me(|Fo>7CL_PlKc~rUc6$^GG0VFtGHvr(VLC()%v<)Pos6 z;VY&^n1cexF&m|sEh-`~NS0LSNy%KrnCiZaG3gf>lddu*-TH(ck91$gqz_`e)mIYX zH<|;T@yxg%J17C11ZVdSn$7etq0a&5X*vbnz;w!V8)MQ-ot}kS&KUZ5$yVv5VQ6Fg@oUqtnUdh;%FJnqJNJQ9By`&|2bTTh_MrTU4j4|o+pY_zs z3|wj8=MB7;G2)ppKd7g2>|pk3Xy%<@x^8lJpJPm)2mLsBkfu|)T9{7d?qIwa{+-0y zIo72=r`Kb-9|pNj817^lj<3=k-a~*1;D?!hgz29{{|r2y>3x>!=_$j$2L8l@XJOXp zVL%NSQw_Ji;2CfmW720=d+PHI{GdpSGDikJY%qT;7LeKZMbFgth;=Y0lrb}9QpuQV zwS+P0dqoqHIS(1k#~4$x6O1X@S;nOQ!kF~Xmpn_?k1^>J8K++_i5H?VBF$jNiPuX~ zAs7SCwJue{^tsUI8T2xyKL&jfIEbZxmg%oTf6g;KP8rN$GaOz4pU?tOsq>b5)~bXt z=_xBb^-RX37cr(*o6UGKy0o-xrDuRuj48nKR}DI2R{>Xf>Qfk#UdEUTP|kQVEl8~t z5i#b$&Q;8Q77ei)jLo$@@eb4fhOh~2WBMmd_w|>gPr-edewOJ}uJYIPa`*SgEItO^ zVKFn3(%bCo(2|Eo10+OY50|9L_SP0KYIMy=tvz0hSqf z17q@U5%o9W*ppt@laV=vF=aEHG3k|zNv~o|`Ub|N*BJO+Pc})rMPYxG;|R0Q!%q7Q z9E|kt6Xz+WQ`|F*pM`&;!T%D|$zNqm{&UI5zD zD;b9&e`zf@fIAF4qsBA9A;zv2Fz}(xxo@X|Bj47K#j2}UIy6fj&X<8P5w(fm5k0xV|yF)Bbe7mvD%*S+SOxx>>x zoAK99B*=l`5KCa)>6yTn@p<^uUCbJ`KvnaBr~eMdZSbc%o*S5d-frFBNj03p3{=C+ z4|NC9=NmZqBTxMo1K+XNQ{Tpz;_s-xrr+RNvOA<3T+8GZQE`iTu-*FaYktzrfs)h% zoQd@Akup;>z%4wFxlwWN&{;I!Vvb4pQ8&1>I$b zEPGYdlG_#LwhC@^KR1-QSwz!d^WY5M{d%S!z|9ZL-TE?}3e}G>HQFUn7;hetAsx`e zkhvdYN*2r5hHg!FoB7$LQZ&Y+(94*cy_Y1>4QhT^pAr!XSeyTaxw#6#m~vAM9Qv_m z>CzdKeIP8DaI7w3}e#Qf2P-i^h1nE zj};L~<}Ujn+)4)F&m=9tH67hvc3&EjTarji#=33_b6W#9x&zJK(wR=VWis9Y|12;+ zev3qHGA@VaGq<1NMmM-qTxIDVzgIDx!fs%E1^yesd^rA`>E!<8St{>~!preu(LNpdSYF z(w$;D{G+6^%y0w==&=KSFwYkeDLBZ=zto%IN4U|G3Vg`hD+=M}JjUEE!;KzXC^hRt zL%>&h7%J|ajH&Sgj(h6;7?YmzwWprWI3O6+$$){kM<#Qi0NElU)%-wU9y3!pip089 z)N(O1PsI3N0p_i@Tr{TA8US;9(i>|4VD}`5GO1xYMc>MJAsp!$AMU@G>EyqkaU~oN zfcwF&4X{q>EOVd)zc5~d1iymg^#oGDH=fNF%=q8%4*~P@+@hgh92 zGM%z$VVn*BRxqzZ=(lr85Ugkj?mBB%r6c_()VG@`t03tz>S` zz>OaK;%>)8HQbzMncI4}odfsdN78qm#qGnG`rwq)x=wtIv8y=@Z24aI-x7jL3ojUE zAffxLK9M<4fFi~N(Rqr&mze+XAM}9apU3zhDwGdC!~8?faDVi%SY|km1Ovd?EI|>| zDT7kRzr&xNxa0oYm`?t?8Ot|F5f9R%dVsIE6JUFW>6AeS z<6-dc1pgPqg}X&Ff7IiV{~^XPw9m@Vc{)@wCVjnVxE)<(_b;Aq7a8A=e18Kkhr2u9 z(qBFO%NbX}pB`5%W&UTFPUXDF`1KpmRp?p9Yb^(d*#CHDkivKuGN9)lxqms+DT6A; zRL^aUN#D)bwK#l)8OY%%V+xS|U(W(9V@#*}_NW73Z?CjAU!*Wz%jSdflAk@CBq z52d@pn9_AHCOznq?oaybj7iV_!&5I}OnN0_q<2cbf9eUy;h3tktKf`D-}|?xeu6RS z!B;%>P{yQJc`$~jJW-v2hA8=;o{s#=T6Ly!Y+y|K#5Pa;ZpNf<>-5z3GbVk5BwMk; zpEfPr!3^Z^i^;=5y26ZMDk1^>J8B+yjFeZJu2a9({nx9H2Gz_tKF{U)Hu*Rd9 zuZqG^cvND&sKBQ0VlU4UJ;7M48f8urXGWO=DDz;^H`6>$-XIDy@qKNkIbQxi zG-M*!UeSn+@Xf-5xkp4qmN{HZ$ub9L9A(jZ_r~Qp*oHE=$B2ter?OpQOl7x-+AQp6 ztG8ZAGOuM!$!Zvr-olvl4#uPh`{?mV4`obxJY(oiDTx`#p@cC7C}m9g62_!gF(&;I zW71W|q)S%4fRlQP&mHC=b_=tO>@7)N;3T-Z+cHT+jHbbXxlyPYj47)k#-y)hO!|7p zq#t2S`ccNDUt$d1DXGjr4t;y*b)f(@#-t}PCOw5Q=_?tNzKSvF>luehxEk2N4CJsw z1&~{0q@u1kv^lRo_ z-zfz!Lo*Ttg7481P{4AgQ-(E+N#Dkp^u3Hp-_Mxz6O6;8XiUpJ4Cpb}>m{TFnIeA- z8Y<6VE@Dji%w|lh%xl>(h+7LhjD?P8BAnMdcPn~J(e-) zl_D({j|f*WGnL~QV{-HD>D8wK_c8EI1|DMI+dViD>);*+oLCH8$(R~$iAcKx z%WPH5{6wfEEd{fyMri}nshrywzX1R3;EAxi$G#R(dk3C~vh>lbN4ed=n8Mt_nDlJn zH`Y8hur%B=*?O^HERNS2gE_OW?ncqZF{WrU7?WPZnDkSONk7Aw^rQ%n_)aOE8OR~@ zMh^!mo-yeuk)C=UW72oqJoUW>{>y_SF%Mw|R|a+#K&&2zMj|tQmxfO(rQwW8|AjGC z{32u0gQGpuhZ=aLfluk|?Yft9N#qw`xoR$JP|Bx7G!&qSS9EvR;@=(pJhLk@@XH4N z(!iGt92}#^qw1VxjACF$;c1Zi-J~a=a_(hJ0gf;x{iuPzHSkUSJ>!k@;8~c4#(Fv| zGw{a-KFXL1bdfO?NM%fVtjM2$!8K`so(-AvM8yOgmE)M1QkNR|F$0eijfht8$v{2Y z2T1oR_$ef(W1hlf57PDhFyw%jF#RagsWgW~{zMe=Xq=vm%*#Z@MDvKiRq>wY9im|( zM)q`ZQNnr+Z7|u8e zO`HZk3cLG+)WLLDhPQeaAVm~TrZW#SyBb2&Pc}yuFE*IBGNx!d41C1EXAFFaF=f+N zq)ox?VjJGp1mVvl-HA%jE20(`bsu5{m4$+?Vu{W{r`J^ZQuADy3_WlS8`hAO%9FcX9bmktrf=nmICg z26MX^ZuDxc`_U8%a}U$gpwnx(7O`-exwkw{EJXz8Y*^`KUD|c-v9O$_x*s~d(3`30 zw5N76opRaB_&NB~3&VUD>}R@wPA>_^cE@wN&bYrY2MTzR@kS(|H;Z|5W~O>J=Qzf- z@TWJDgS#_u4eqm%J` z2D&U~pwp|)gIv^oLo`Xm%|K%hXKw$%joyZKU)=V@?xnY_`E7|Z=1=WX&X|g|j4|mi zGbVjMW9Uxl5H}!0dfmDlx9;2n%`aR>fJ=-iU@TtI#s+`g?KYfo0^-pt+%4=Dk`1ql z>;72ZPhy4~B%pW6t5|{!={y0t7UOB~r}xiKumYEl^7LQM_&)g4d+U$6ii-j#;frsk zp5O^M&kIty_F>1dXoY$cM>yYKwQ%QlgA7k2P&hwfGjH+r?*eL|;b zXPNHm=#2NkpI(bU!m1ZAT8~HmHpUchG5R4k_;c-#AZZ&jkOQ8lzsu|loWp8GaqbZn zGckMFZ}2`MYG-1aa@1f}8B^*jj46}QF&?Fm`Z7L+T19|k;pZM-GMP^4%NZlSQ(DXn z#Febf)v1^79oai7^F8F>oeh@-Jdc{<9gA zUdhq1~X8=A_E^`Oc``ACVwek z&ye&a#-yh(COuDQJYfmLINjjlX$GEc;Kc^sYTz#o9B_wc0ZXp&XziSE&Ct#34g9%* zuP~+>6^V#hIGE;-^~`5IW2$EjV@h_6G3h4^d}N$wy#F#L|34Tb-biU#fu4XIRxzdw z|IL{6j~SCbPWa8n&^BefXP7d^9ZM=Uc#94QpTj0F($o|aR@mqVFq%j5o!0}G_uuT?k5)9V}2=P z&?Me~_{kCjrx^Hl1E-6)xwzmTV=#|1@SO&pA}Z$Mj@$0J=3x5_re#E6ehe-`!QJzn z-J)qO`u1MtHVba`V5|#Xb34X#YKIey?}z_Mga1XQlm8{g)NTQH>Miql1YS2Q!FBo4 z$?~;_z$lT8IZ>im#-tBoOnMSy(o-0}i9)7=t6+E6eFxLwA0+K(1`4=X#LdIrtwOm# z`0Jj_28+UZxY)E!@iY$-_4DwCe3HRDgE5t=h%seS#hCPEj7i@w((c8A%28$}x3i-9 zUh^9XDl?OJ@Kn7}R6pF(y5GnrEmI#-uM1_4k?Ia8@z%xErzd z4CXWcZA_;U?O=Qt{C9$}^5fbor2oux;?U`y#TdsJ#kgBq%M6rYJ!2~8MaHCGVoZAQ z49^Tg8Iv9>(iY%;N_wI0MrN$WEx?g8(O_P}m~yLPOvzR;CVeeq(swf^eJ^9uPcVk= zluj`NIr!eCmy-enFeZIAW76j{CVe?$(pNGjy@qj^Gy%^UG6Ok;&h#vRjWOwYj46Y0 zj7dKxn(jw?pE8((Mce~ev#^PL+N6sGv?&wS*aR-QThEe0>=pH-9uMAJjSg~G24n+g#}o24Qj8&l^5aetZlMtc?>YNVq-2p#lU z8(zY@tNXz@;#a_ridstbk7y_}50-m~PEf+?Y28mkl2f`JPwPG-Subiq#)1FA^+T-2 zv%w7_f022F-RUK}9wVh>pTgXPQIjs&h<^ZwiP}ZTBvmxRTYf=AJPg_{@*l<;*CNaw zP#l-{r&+FaqpOX3k)H!$<-(8`vzy-K&;*C{~H{JV=Pwg&fU^a zlGcgBM-cW?)&Rp{o{HB}-GwRu)BlA77l(M_)+EgaS66gDK}umC1wYFCUj(lf4G0_f zx2=0QhTIOod_Z)O2y;T52-PJ6R#i zz=@&)ZV9JRMLK0t>di1O^6$Q6G;QCDhkvyO zzXEfXSO>FwSu{Lq9xKli5szW#=8Lq)Fk!!pbBenNzx9`-`)1*_Z7ppVn0|c@OMI>@ zL$TNWUX-lUG`}G%lX&cNNKd06I#z-YSvc)LV5<1Luf!kE8ld(LkF9 z(fK%9p+Mv>MpN;eGj7IQNK}(K3kQh1q2Gu38PNcQdLiEPp2IpFn%2iYD4z77h$ zc%Q+N^gFI(+>L4ndx`2w?81gOB-bh`HBBYVe~X4n45WvJ-;-z|881e;OX7nytA?BO zpt0azp}R}w0H4N**WDrRB!5xyB#N|4tivX-0`2V{HR_?_a3}L3bX0eczbT05q(qxV z#8cR;5ou4MK&wT?Q)r=jQ43>We+*OCYb|o!5R^kSk}n1^+WaFTp2j9dq+t_S@tR~U z(|mt}?;f!L=8UO$TQC@h7*#w3j~QIHcCX42CxeUG5uXG8dx&hM|1T2hCEzB}@HEPm zD*TopuUAAIZE8jS5;W>T)`62SQVkH*P&4Ys>m`{BvmIFkYathb8!)c9chNK8EUeeq zG+ltd5={u>e5hKw=JpNDn{i;*Xl}oQUt+n-$#^;%2RfS7Rq{~qGsq@e6;u+fE z8s7?@hr`LH@o4a*HTvm&YBIu9BSEm{a1R_7ignMR+b+VH=#XYUNoICt`U8AfG{KGb z>$7O80+IGCdKh=wjf40z41Cy0uEKr_{sMi*-2=Y|&q23#cY0|k3MXn2#y-!1v!XUc zjD@*}w`^Ung_#4+5}n92Fa}j|H^sX!$B4M+uww#|$$ZVb1Ll2N_o8!ZPxNPA$iCnO zbGu&yp}vp={z6nghngJ_^@xU{vytcv;a7zYQX%rIkh6^0fxD4!PL-sOLTy-K4Cd`GNY=etJ)QyEMLoIIe(OVEm};QtXkRFg6X+%zI&egLS7f;J-t<@4Hat zTfq-t7;=y1KEp7&i%x_|cm{3g4l@+ykdGwmF)i!_@B&Pc-8*(RI8YQmkFsM3#Kyi6 zuM)1*yuYB-F|z9&1gBc>H6m`u&> zRhapK_6|4=Rr)~FcY{Y@B1kPqxg8|N3CG=XC&6}1Fx*wX2WLfwv!}Qhf>F%fhsT3zkWjmr7%yYdCL(>H8 zxMfXDnN^LO#%GV_fXVLO3xwTP&8?T)l+ z^N50CRJcS-T0g=w>o39dqr2Xkeh%z~`C*mDSHb^aBy)F$p6N(08W26>1=Psh&f{P{ zjmK#EYRTr28yi8&!2^L@)?njjmIRV6KaB}co7HSlcJu~CgkOgy*h(N zgeI5^=qGQf2m#c{Fn@w}Ys_W#oe6>|U(`Rp7&-a5+v%_gv^G$EP%i11s19%{$LBvi}mRj8?3^jdEL$Gp`2vKf`_5P0>glIy-2@hNZ! zCLg=C^cTVNaP87hW3Mcl2~@AZh%^s}O&`tdfcZF1VD8>F30#fdhEs!UpFIf9XS1ti z;8f9x(mL_u+Sev0Uy$4Ndg=cFU&eIrMlDPicspjd?$QK0Fn%%~0B(rG0~x07Y}3Gg zPw1sD0Ec7LaPQ1H4rz#VIYz&3c@hp&*)X#bybz<8yE*rO^F_nU=oHBV^nKCJ#C9K1Vq)4mtcQEtr{9kZJ zglttc{VK6&Qn2#25j);J11QOsq?saZB@VR$QLz$1m(I`!qMxBQywm-PD(&_^!8{Xl zj%&_I$&%TOD;?&>gzg*ilxzlg1PB%r%Z3p-j zoYvg?@F=)9I|*L|%a7~x?JHx@WqCkLE|v*I;j0)LSL3YeZs9v&u0ZFF*YbG?JpBgQ z^=cS3&T{bS%~;#ehJ`B3;}?l~gpn7CM%wfjo!Hoyj_!WlixSye%r_=9VxeQUX1C|# zWKi4v3uTmRGMLx+4)A3Ww+j7tsVH29tC~4DDtBwCz3!mvl=@YuL5OI?CZUxr$=nUK zf?dRxfK$pBV~xNWsS%Uz8Jc%4_%l%px4=bjNv@~=sBs^Md9`SK z%{(@t7TqOE^Zpd(LN-Y|3C>|d&ws!NMd2EpB_2VMu_s+cy0rky5MtdLtOD#5O>0oH zTH&`Ao8LqnZLmN`o7G|gHXbM6_r}xZ(K<4p_S0uxXJDQz8jRjS6KLU}6J~pUBs#U$ ziSuBN#5LF5T5)EBUlM8S40*i;^ABPH%n3b`^+D+j%yD<>ySW|wB*tT_77af|j;5+d zGJ8E6DaXUyb+_Id?gfX5PPi2>#o%0`rLKXwVzzXxY#)Ppul^cbaI(c5?HXj1E+z zXBh^@O6z(wo{VGLq9vOSb1{aBbd4Vbzak3PqhDQqR9_p}1v9P~k=mJoUg%E!6Pek3 z?+>uRu5s(v;b5?%Q0_uTf)f()WRaHJ?ck|c@O4iVrh$v6VvlS4U@n;cUnTAaDxZQQ zX0u3p6K(LTD8wdk5!MlJ(!!mDdzPq%xtRWM66-ayWh!P=7;1wxz5$$YKc**IF1LU` z!_D?%nw|rGn{}{zz;=`>UDF>1KPmj)Lheg(jpq(~0OkcE?JW$(X?P&s-3GzaFv8t| zMFeyAA({Yg6zh;0iyif}StuH@aUMX|KcZ#vESwIrOTYEt{P!f+gUmE)d;s2#!_?g{ z-++_fH-lyCT8-Pm{K&t)80W%8`W5tG z@H~-UgT^Qp6*Z{Ybg>Q_doeDbhiE|>;4}$GP?E+!fv1W_xE1i&Q8=A6qCxK0+)}`Y zKhyW;9mMzOr~f(N2+T<0HUA3mIg!5^g_tK6V3Y6)u31NF>P4vkU@fU!<163{c34|x z(egX$ i2%P$Cn)i+1&7u}=9^K?&m>WeC%yPu8h%M%yO8yT|j6+WV diff --git a/STS/Core/Inc/yunhorn_sts_sensors.h b/STS/Core/Inc/yunhorn_sts_sensors.h index 126b14a..ce311be 100644 --- a/STS/Core/Inc/yunhorn_sts_sensors.h +++ b/STS/Core/Inc/yunhorn_sts_sensors.h @@ -520,7 +520,7 @@ void STS_ClockSync_process(void); void STS_Reed_Hall_Presence_Detection(void); void STS_SENSOR_Upload_Config_Invalid_Message(void); -void STS_SENSOR_Upload_Message(uint8_t appDataPort, uint8_t appBufferSize, uint8_t *appDataBuffer); +int STS_SENSOR_Upload_Message(uint8_t appDataPort, uint8_t appBufferSize, uint8_t *appDataBuffer); void STS_SENSOR_Upload_AppData_Message(LmHandlerAppData_t stsAppdata); void STS_SENSOR_MEMS_Get_ID(uint16_t *devID); void STS_RR_Sensor_read(sts_tof_range_data_t *sts_rr_sensor_data); diff --git a/STS/Core/Src/yunhorn_sts_process.c b/STS/Core/Src/yunhorn_sts_process.c index be8e0e4..829003e 100644 --- a/STS/Core/Src/yunhorn_sts_process.c +++ b/STS/Core/Src/yunhorn_sts_process.c @@ -2040,9 +2040,11 @@ void STS_FHMOS_sensor_upload_map(uint8_t map_index) } APP_LOG(TS_OFF, VLEVEL_M, "\r\n Bitmap uploading, size=%02x\r\n", i); - STS_SENSOR_Upload_Message(YUNHORN_STS_L8_LORA_APP_DATA_PORT, i, (uint8_t *)tstbuf); - - sts_fhmos_bitmap_pending = FHMOS_BITMAP_FINISHED; // 2; + int status=STS_SENSOR_Upload_Message(YUNHORN_STS_L8_LORA_APP_DATA_PORT, i, (uint8_t *)tstbuf); + if ((map_index ==0x02)&& (status ==0)) + { + sts_fhmos_bitmap_pending = FHMOS_BITMAP_FINISHED; // 2; + } APP_LOG(TS_OFF, VLEVEL_M, "\r\n +++++++++++++++++++++++ \r\nBitmap Pending uploaded, fhmos_bitmap_statue=%d\r\n", sts_fhmos_bitmap_pending); } #endif