From efc4da0bb6ee3ff729e24ca630b157afbb5880b4 Mon Sep 17 00:00:00 2001 From: Mit4el Date: Fri, 28 Mar 2025 20:43:10 +0300 Subject: [PATCH] *web* 2x, 3x chart, d&d OTA, Info --- PrepareProject.py | 8 +- data_full/build/bundle.css.gz | Bin 6171 -> 6511 bytes data_full/build/bundle.js.gz | Bin 49721 -> 51213 bytes data_svelte/build/bundle.css.gz | Bin 6171 -> 6511 bytes data_svelte/build/bundle.js.gz | Bin 49721 -> 51213 bytes data_svelte/widgets.json | 41 ++- include/Global.h | 1 + src/Main.cpp | 6 +- src/StandWebServer.cpp | 39 ++- src/WsServer.cpp | 8 +- src/modules/virtual/Loging2/Loging2.cpp | 415 ++++++++++++++++++++++ src/modules/virtual/Loging2/modinfo.json | 48 +++ src/modules/virtual/Loging3/Loging3.cpp | 427 +++++++++++++++++++++++ src/modules/virtual/Loging3/modinfo.json | 51 +++ src/utils/WiFiUtils.cpp | 6 + 15 files changed, 1030 insertions(+), 20 deletions(-) create mode 100644 src/modules/virtual/Loging2/Loging2.cpp create mode 100644 src/modules/virtual/Loging2/modinfo.json create mode 100644 src/modules/virtual/Loging3/Loging3.cpp create mode 100644 src/modules/virtual/Loging3/modinfo.json diff --git a/PrepareProject.py b/PrepareProject.py index 7e8a495d..6d480783 100644 --- a/PrepareProject.py +++ b/PrepareProject.py @@ -199,6 +199,7 @@ for section, modules in profJson['modules'].items(): configItemsJson['num'] = itemsCount configItemsJson['name'] = str(itemsCount) + ". " + configItemsJson['name'] itemsCount = itemsCount + 1 + configItemsJson['moduleName'] = moduleJson['about']['moduleName'] itemsJson.append(configItemsJson) else: # В первую очередь ищем по имени deviceName, чтобы для данной платы можно было уточнить либы. Если не нашли плату по имени в usedLibs пробуем найти её по типу deviceType if deviceType in moduleJson['usedLibs']: # проверяем поддерживает ли модуль текущее устройство @@ -208,9 +209,10 @@ for section, modules in profJson['modules'].items(): allLibs = allLibs + "\n" + libPath for configItemsJson in moduleJson['configItem']: configItemsJson['num'] = itemsCount - configItemsJson['name'] = str(itemsCount) + ". " + configItemsJson['name'] - itemsCount = itemsCount + 1 - itemsJson.append(configItemsJson) + configItemsJson['name'] = str(itemsCount) + ". " + configItemsJson['name'] + itemsCount = itemsCount + 1 + itemsJson.append(configItemsJson) + configItemsJson['moduleName'] = moduleJson['about']['moduleName'] with open("data_svelte/items.json", "w", encoding='utf-8') as write_file: json.dump(itemsJson, write_file, ensure_ascii=False, indent=4, sort_keys=False) diff --git a/data_full/build/bundle.css.gz b/data_full/build/bundle.css.gz index cb7a83a5f94142c4cc930bfd3ee0002fe5d97d18..de44f689bfa9f04e1abd637189ea8b417695831a 100644 GIT binary patch literal 6511 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 literal 6171 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 SmH>71JO2ehS+u?X!U6y`a1bT{ literal 49721 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 diff --git a/data_svelte/build/bundle.css.gz b/data_svelte/build/bundle.css.gz index cb7a83a5f94142c4cc930bfd3ee0002fe5d97d18..de44f689bfa9f04e1abd637189ea8b417695831a 100644 GIT binary patch literal 6511 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 literal 6171 zcmai&Wl$VSx`u;0gu&g0;2y#dEO>Ad0t5&eV2~h#Gq}419duwIxa;5!!GpV7AV_cz z_w3fG+O50y)^_!;_x+xy|8;dWLlpM2e=gi3L$A24R|!v?azufuClQgr4vWK$t3ZQg zl+=gnE|ive98`UTUBTt+$m0gZ-#%ApN?#H54LjM#=Eo^hD-qiA8n9HGmXYLOI%y)}SLUQ7_7KGWo#V ze9*cvNrJ?qKLXx+4nL0;UEg499TvE$eDZMYG(J-sbHWmT5L3?WhtumjyY{S9MJnV+jU`2jUHY?Izcxm<6y@LH}_J-5j(Ng)@rRk{E?mqP1}*T z!}EoR=Z%Jj@_DJA4s-~010K#l&m8nnDvFXN;}GdZbMTS$ihc$ettmUM-j7K-UXg&M zT(5+{Qk8P|a%`nGI72Ee#6>o`Z3gkmjSyvp^Dnw-GOs)VpP{j5lwukg^BnK=K^T47 z14WbK!^5cZ^C(h}w_)PL8^*tn;~5Y985~o#32&IjHIu~F@5Q;!(US>1ZZvATY5t416=X=(RFk6CLBH*wJgOCl7$s#3 z{|avP?N3^=M|~&briYYf-PJ?Z*(3_36f#{boAl#Jkdh7K{TX4PS_C2iLqNTeu&G{_w$jX;J6Tk*CBczCCSKyIvY}T_08b?QKlQbWr zBbiMx&H?RCWfs~1OBt8?*@uSg)Tj7|g$(yPYPABMZpyvyuE3Y7kO;l=kMyrNOxOOD zVWDv1Mzaqw(+-vWB8bfPXsJccrn6VRAq9_^Cy*XhmC3NbXt$%MQ&z4qOlF{T_!3UY zU73c3s&o|%01R7u$8A2y@A6u;=OMXERU{ZfOB#T~H_Jxx__L$-9=8GYo;HZ*^_oWm z;R^Q~SI#^3IO?0OhJG-IMpjEE{K&j_I2=8cm9pLWMlRVrO8nxaO0j0zEyEI>F^c0T zJ4|ZC650YBQRrFS!Abal(5dqmgL#EdlH2%Vkj>uesf^f63D*X5_ni5!TET)N*0AyYbg=up42OZ4RQflYE3}coiUX4mqjVqNb z9l|3ecEf#y=6HXUw+d`fo~}v~K%LIX^$dKvVT9BBRv^%LoTedLhn@ms>jk)m(U=cF5g27VY2O=v{&VnPEc?Gs)B zvm$r#197aZJxfr;0t9_3Fal=i)Q@f(XxqPC;1= zZYoydVMo1CjL|qC>mg9W#cS>kftH_vFIowi;#3f|-Oj4*&U{G^%noW9#e&DxI zLDLJ%Fj6gmwCGRhw*J=RHmQ7h_YF6$Qa>Aec9qj<5GE7qFnQmcV@Z2 z)ae`kte_MBy)pWGz(Mf>8vV_>XEr#W($X+*2mx8%u}?soQCrfq-$00wMO5~1aHcJY zu$jI|uaPpbh>DaGlx#@n-L%zAG~Ntkd?cM})l8n#mYzt=Y2+#@eoVJ9svJt6s%)_& zcqw!Kx_rV#xbTv)?dnx#^M?1F*3==XX(6_l{5%IjL>?(dEh{xdVq7WcmegzehvB=U zet0$g&LGq1Q2Zt;%hiPY8|4~OIw>gO@5YN$$Y`AW_bcFRi3O!;H3HBbbWPm8n#+8_ zp+5eUunEhF;}|@EJloZ(1WD>Boa(CJLs_%2g71v@eXxqV&Lj?AXN+`wC>f(!p78XM z7J03aBzWtiW`4%|LQv*l+n2;sthgYe^?eD=1SKG)8!>Xw##%;XC+@BQY1Z*+R{ITE z$t-h9nJ04HjY_2pf>52Jt;pFaF(o&7(4Xg6Bq9Ho2Fho`4AnV zZH81O=-RhZ|ci`Z$t*wt%qhR@JPH?RXZvWDP zh^R&GXkCuDkgH-{t7L%w?(B2{pZ-8ct4iQLI{K7#TkDMB33ntq<3qK13P> znC$+w8+(uN-}!LacqIoe5D2A@c6wu`{IQ^UpN`*0^+otSMJbt|RDj7rM+B#(P|hFT zVi`JotUhAwHCle6RI!1Ihv~~R+vZnv<$WPlMFIFxw`cA6cUcmWVNiy+@!ZvV3MXu6 znvHR4zA+uHHyFw;JASznU(1p&B{Ouv@Fn==3*g+xM$GT9i}F(e&LB~71q*&fMX4ah zDQ=yMoLYJ+VdZwmcyzAks@~64Ejwly_gi(bj7tM=)IWz=LTrCONbVjB9mzDc%6C$e0 z6FY2LV#65LVyfppXhd6ibl{*ia*$ad>l@ZK9t(yKWZ;Q1d}rL5pQ8_U7l?H$S9#}_IB%A zu-2kD^>EWpzDpKw;k2na=zEuKxIr6g#G2LXy|8;`!G6JYZgqTk7OvMJm|_jS7P@FV zs0~Mmhqk-BY5m;S6yRkK3Ghw9V-^V!ms5Htk4(tOUZ4KNdGokszJIPH()`RhYjD3S zhe5ikU7Dcvj|AjgE0IbyJ#tg4pLJ=%A-pr*%CXoQMm_Csoj^g=14{YP}R z8@lT%V%Dseu#ir<{~o#Uh;JV;#_PxMVRu-1&jy0OxRCs{E|N7HX&l?jle)Z+jJX!8 z;C%gKYES1ApVv06Lje|OAtx0eDg3On!JmyLV z6P2}NGqt=Pxg2=%`X!4q<1#G?z~p<>rrM$38d-+Ks2r)Hoa9c-=g#-R?fclJxTwz8?x8p4kbbgwCZ z2#FDVL4Y#k&+Jb4^#h3{4%i4MQuh6(&8|n&UhXU7q zZWr7l2qT|;*RYafpnHeH1XnHLyJC4YF=H2yrD?}esdCuw9K{h|IjZc@BeEK&$S;KD z9!CDQCGJe_qhvIWv5_O|a2dGKs9Cnjr7|?-7Oab$H646zk-YzfLJ&jm+Xl*d8!0G? ztV3IM>2u{Pl23B(pC`g6XgRDru$1gyqH(!quR(|Mr=HB1Ge5%2X3!=#sD+OR(?gxPmdV#8@$uFY14O3-0f8BCjMZm!d zwtOCzqf|k?x3si=M3zY+Eq^9-)oN~( z_U1edq}@?dJiY1pjQ(OEieaDCc9`fmUTUoCM~YOF>>s3BV~R!%?9d6+l82^nJLZBy zI&l4#=mi(Q@!6U{H$kDy48Vea?AVg6yi6dd5%k4sd#pbyt1Q^U5R&!MY;UVnOwWI& z1gvFPoK?-=?IkQuj=6*B{=JPK6LUxXINq!43TtO|!n!fbqhNl*iH}x_V7RS^l3b`N z6XJ#BO$v)&`HYV;_lEKHal^V8bab!hOAYEDW=f`;Z2K*;6moAhdk4%`j@xehd9o33 zyH}YzdAJD8Qw!@AA%fka6_$2a!{`iNg8-TM^qz4t5G=i0k>VW zoei}T^vYuG;(gS1qWxK)$z8}8za9AZeX&on%Yr)fMdFZ_|K@bj?{v66@MS&w_}T;B zs#SSkVs0PtAKPpu%99VfgKSybQ5zS^Q8bh<2`ZY>g^!%P`}EvI>+ceB)rl`W!zyf4 z31VE-!l@_q>4xswfJH$u6q(jhd3|+aKjv74^4fRxisv&=F<~f64^5UcEn~UZy6S+K zqUJ6jSl8ZtrtKo?dghl4H(#^TM#+Mc&vvZjL@1K7Tfzmm8NxR=8D8a zi#X19uhx@uB~6W>KU9$6$YN!OmQ>t7+*rIkscFBIwP&38x%@>GZ@D?y)2YyvcvF$WqX46`)BsURm+XWv?p$ z;|(~`=v||XXtV_($LW&5+z4J38Y3}+p{ZYmOWK*Je$}YDrR;p~l$GvY6&cfZ<%3X( zV6tP*kBV4tdE@Z5C1;HS@kHLzM2wy`eJ$W~2Q4givRlXAd5M_N<(!nI)1z%MABK=7 z6wjareV%-$#?KXNvKwK8*>;8X*Zbt>?)~e<)Wc?paoeBg&E11ZAnC|yvJfF_wsvH<8gr@;eJt>|E<1pVL7n3V&OiQAZ&2=j$ zZ#uPuIH-Mx8FtS?h`O;89>tcIWc!?$6W_I$!QDw2D+I)a&@b6#;kGg|8B)(Jia~4k z^2CC%wG#gHFXcE(0Y;#K+80UO-aHm;dd4-oE$(o<7gD9mSq{5fY&9?INV$7tD4t`N z7ff(6SfH<2oDn^2CPe;P9HC&ap_K63{r1gTA^!6;K`}b(pjhfBE}N>0^lN(I=OvFL zbZeIq#*&YHs43{)AIo*JG{=gGxBB;@12Xj5@@k2esGjs1S8f!(b=#A#Hzfj0K5XV5 z70s>29T2=@gS~GoBP=|e!}EGjGz(F>X~ZJzx%weJe%Bc=>U$fq(_$$2T(NN$>~)l6 zS~oC368kieJWVkCr-@s0mM94}CYRY;w2b>*C3LIYtEP3r2}n4PA;9Gzmwfj5QdPNz z3CE%R2DV-=e$kRGEDyBpo4OS;RYh|fnycAqD)!-eZ}*JYWFJg3D20Hhrrp- zc)t>fA4Vj-9Fp#6>Wd}Lye>*`UhQQ}_ZG^xHp?x0*CThkudi>%*;(t=!*UMz>=}|x{y5;32Zbn0ytXouA_Y`h~&RWy{-2)zwq_#OI$&$h}ism2AV+mOm4Q+6!o z&TbRo>?XoKhu3m};4)-F#2%|l#y$MF#kxG#$pW1Io!mhTPOEDPtWq#T|IU`pBs=Be zmDMP(s5HLLFNCNkk$m+W!SIk(!@!Qr027=FdHL}BA$YeD{*+hFvzOmy2#-WMc*<2Y zuMxM%GL@z$W>+4S!vVC~3beO=M=LEz%`@!nrk-^ie;5UQnCB&v%r*bIJ{7StBCgfq z$)y}=@9CbU^9h9b30HxIk=wD(?h4ywq;e}?`xHVa-Sqxc@4Q$j{x~B?% z8J>$Qc_ejD5&GGP)KOibq2Q^Gcu{`hO-AYMXFnf4zR#ZNHFTqU)Qd7u(M@j|54NuOMrC%(O1jbTPXV1oiBXN0u?lR$wm`3oq`e zIa+E6$a5VU1H7)Be+%79j{y>{=5CY)s4yigw@@-u`<*&r@Ax;XQruff{_G{(gJF{D&25lS5s?s(`-wOWuH$Dt*82UzV7SOt0-w zDy!}r{B>J*kp5z*V)AGA%)npVkB*)8p#{M$mLeE{-`0Rn{CK1L2BDU&(Rl@axjq;9 zt=)1^K_gRE393r|B>jH6287cxm{+Z$np|rS`Q;^=afw-n-y9Np@~Zjl~|CvaJ%#h&Pwvn;Yd6enE&zN5?*N)>BvG&BPkU%a82}l5xP(~7Go+-zlNM%Y@E@sKfN*9(i6A< z(KDTFE*#dM--+->4Ab;(B=$R!MQRvkw-UuVZ2Pd{4S+XpxM|@bTeXhfA0T4(4iOfVIk$Es*iBx5U2*}z#_EbRDRsF^TMb;%(s}ggX4EV;R zfAQi6o~ke{d7^kAR(bA}lTd*Q=SBHZk}d-7WR*?bo=x-^Q`bvg%zLUSSOkjl28;uy z#+)%8s{_XPW}|%HD-Z_f>&<3oojF&%d{oz*wQ9~cn;>ViB3+$xVLS9u&fzWa5|0p? zhl`TW8K;Udre7L3(}2@33_(V+Wx~o8hsk#bfo~1k> z6eEWNu+cX{%9e zGNpn&PSheiPp$&k7>W&Oy4&keNwsM1v}n70x$KF>Q);UddtEn4xSLHA5ZUaAlHyeK&g&SujgIaiwGER&K8 z^?5PlzVE(;B|k4NxNbu^-(56V45K61U?lD%LO*vpp0D{O?G8GPxPaH<& zF~-ywnure_7WG);4riWs$f*iviAsPw`F@~Zn2Rk>ExKPM`HC|>9(!Js`)M=MO;@D4 z&MoSGSr$uPs%zaJog=wwlHudAmz^(*QYAupacd^Oumjb_^kND5vW4+$%eLxlAm`aU zkm0ju8hnS#0T~WtD0$9P#b@kbKq}$;4RzjZ0##>!B4+%G^&@nF@bg@$&i! z7B9-ci_-;9U-Fq(Gb`@<+ya8k{qu&XdX7fJe3PIw4Jb~+NiFDyr`C9Ocg8g$nRA%>R! z2yEdeHkpoK#6Exro$(c9e9XQqi}OqZw#g#D-~qvM-?M|L8QgCIvi^Rv3BG3s1Nw2O z7F-0saV3u5LoYwr?)`U={#Bi>8~&QXR6OAdTl$s_nudO(=WKAm*tZ7FMwWShKAIJ4 zRbC?|kG{SCqeb0@zyCP-b~^g@@Q?yF(BB3ygrus{M5PPl6Nm`*LpGq_vH?{URQRQq zWobKe^i$o)PvNpy1|%RIj{1Qup_~=O*#{Ff9eo`x5|DQ`o8W7pp8+S72ZU4~)U8yP zi!A5Ck1gS2^i|#LS9P;6CG_hs&3RG=1iRP_^ly!90G&8sOoj6@IRn-JglDy!fv`@f z3{?06dFeBqMn=u@LqTO^e%YiSO=(jN5Ka3WF0}|kIS}Y%u6SvxtMT#oFzQ(I?^=_s zR5RBcHXll{br}z68c(Kl87t+`c%ch~d(-I_Nvdhx zd9n;R3Fld^co~!+v$l38OI;jlHd|_&HjWIg3kOMqW{=Vl zizn032MxKD>_I;Q<{oCimcEz=l8m_qP{QWKJP|@go5%)`_5tItw{eFM=3h9S#Sd$^ znr9Rxsaw+N0D~@3+#0dT)aies0uCDnn$wJ?G@&b8ptg@Q_W9_`pkB>$#=~2;SToyL zZK|$tkpZs7DK#^%s3_Dk{^KgiQ3#~01ZmcYxhc`(OuEye|mrCxKJ&AOriu97eeWrOP_vy#zRP6pFhSOEYl z@%>EKHc?Y*A6Q9zKRB3&4WPb1Hw#!z-RGbrbm{x;4YfhYTer*}b1?P&;77|l={JE{ zFnZHE&+n&@zxSo~pLCt#Ig=dE9{jyB1!+BYp1HXVB7;H`?se-z)(cD=i&2yM* z@@-e%l_95lN~ZxCm0>1SS@^zG0bqZ_0BMGc$23XHFcImZC}|m{E2)Zevj-#eHvy@> z3}&QC^F+$tO091hv=7J{C=f_i5uxxK+AOB3Td<3vS`l03(RmjE6Cf@eQxIc`wL_$dW3lBtE#k?c$P!Z}K;YJxShj|{M-1iS!b$N(Y zhftnSXNz`Li$kEegGxlRb|48W7L&o$CX10)%;A0q5ME*RRtNzW?Rl^u2%#kdiOvi+ zfEw^IU^*}v6kY*@F^kT4@D-hwnHc^8ZZ}**a*#+Y{IDr8~wg_$fse+XRDM4 zLBJ`p5M8FDd}ws8C^B}n6_QZB|7Ycx$7Mz6L1e!;kiL(jQ*JgO3~x3EQ3KsMu5)M; zq z)#**3CeRa5L`Tya>@mE>@MkiZB1>FXuD(&V&m6}5P{pp2=1MiYM@Nk?d76o`nD$^1 zR6uAi6uqVBrJ~o0tsi~zw&Ruz2-3z|N2*t^Cwpe)yj;Ek?MFu@+cCM5U)2_nT+x;7k#P}6=P7KvP> zi$t7pR;MkCrBsRH?7|4a{D46VUwr(r?_aAB28&a`=Iu{_J-QiA{elo2tI8nI`n;I& zSi+FSiakI;=@}e3NwN-Hc?^isf$;s{mSUGiki-rxGO3F4dJ>4SSMp_^q}+==z*is~ zPXHos8mueof!=mxU{?sD3|^{37#jWZ{8zWuyn1flFBAhdLV)#wUKPNmNOeI+su-tI zr+_|SZH7q(dXON48!XLacvj%bH*4FhnncR%Oz7F6sv$>+35PFKutSFHEI4He=R{FH zCF}toAE2sltm5al)~aH+)>`b#B>n~*_Enm)Qjf&EdXBph(jwWaroO&MU}uG@KtjE- zM*uJZyYmJ0e&xaVC_)bu0!=D<&efur$zWTtToXmDpayLl(G^p{IFd!Kf;FbZyfXMI zfScncuXGAQ^H9d35x%bhi`>c)NRSgsidq`XEK##gbu(*&F|lw;2qmQJs|O;*jIeXf%ImG$24~yY$Qzbxwj^Pi7m`ajb)LW(^VGwh`~E@&f_l1;M-L+EJ(E12dw`owHt?W+ zb|#9FdxRE@hp8&_-}39thKJ`|CFU{7m3fkjY!1&TV(BVT<8)B^{z2jU!pP}Nv_%*X zpz}yQ0x{nD(IF3VR6^t4jdk|rOL64 z1)j6lZFIR-QD$eEfHncO?SyZgO?hdar7t~dBihZhr^)gY4mm>B&ip!VJ;)6lu)cn+``H7;PgAq{0+SbOO1W%N1 zGrm%R2M+=1HPY`&s@@CUD_3BKfTuW#xb8i_|5dS4{K4}cDjuAZokHZ-?g81S4&_^y z@KG7BE6T5uRDq(&_66B3f`L!^h*>|+&GsGjQhb(`Tz@*xN~v%F;O#}plUZ7>&R>|i z?8rnEVU)4i4$~x6nK`p=66cLl%odZ^BJIgVarv>$Ge=%11K1CIKS(ZVHWpih9~Nz@{#5XLM3WqoBOEF(AR`43mZ zDrf2h_E0&dJP4Cpz^*2ys6B##Tmz9AFwM%KT@YOKi>{?Ji49?Ei*BG4q1^BoLb=hl ze4#*cfn|p@Xy_XvbmGJI>7#ZoXi0Q77}dCo^7CdTjA}*u#F&94(-5W zNxx7eJ`3Olx7od=Vy^Cl>^|6dr`@pFQ9F^Ij5oTyKMDD;~%GR(@<@;A~V&x3ahqYn` zgq~ZsWL_v4OSZ1)ty?lJmY||woUT!-Dj2AX@VzF5IkW^RH9^d5ibEDto8}P5ME8nu zx`GqW88kX)>&oEda)(TXJYutXtVRJ3k#d8WV__k_f29K0p43TWPxFVKO?cqNhGq1i zOU%2q)?19qd+@yK_0mNA4e}YoV{WbaJ5{E|Vw7tu??LY}Q;Qw~iY1;`&$YlPmv*`cT?5!WN~ z96qqq${J!z%dnYR=t%uS%dnYXrkodA)>M&}{0w9>y(tPT44@4HMQKSi!!rueCe!SL zO5F_vyT!)b{FCx)+#K-6J#0mpmg}^?)EgW60vuw&V#F24sk6B$%x)&HSlQ)AG-K^kCdE)Od@ul-wp5xg8r+*qDK7C6 z)cpl(DOeq4q9d}$9vKJbv{cobIYPZ)^2a~?;b?kDJQ6p%`#<~v6u>#-W|%>e`HG)? zbhQkg|MAwksBS&41#L9YEr9~uQ2se=)N=r#mKKa6P{LL@pKws<6S~&oTxrF02@fjH zCxfYhdO*Q6iJ)j!1@(e3X9%rn&k%VG(gPnWEzL0xaEOi%wM2BLkDxkoO6kZcrqfnj z!5OMblzUm``)f1PdfLr=8)V6#UR4XK4eZS_lW~LKTqO?bqA>3iw5COy4V)G0(aMap z@0@VRMi{DEs~f7eO>EVTc(MlNKhWIEPR zAGf!9Ese`?f$K32U~N8zJ%w$rTNc(rX(UEMaqhRIwR-vrR(3Zt&=n)TGVCp33>6QQ0(-MYjbIO}RKntII))MZX-+F}fZdJP)X zrS8(C#Uu#zjMPyVxkpPpE5}q)=~Hmc?@-^j9v%<<=4jmam-g)2h%C)UEpzv2sk==} zDpJwOiq7cVF}*0MoSGxzN2Pwm@v>+Pyt)csOW568}<-lBinyX>F#V43twKI@+h z2EBAu%A)Kqi%ck9+D|Sre)&OhkoUwliu*e=7A-IM?F!PUI_}vQN>H{Q7>JU zu$CVdc~Q1A`&h-t7e>SgfbyDfwF75xO4fretx z!t0;f8?(mf$-PHEWiwM=H*8%L$ zU_rbLV8H4^xeBtj`3NGv#n~i3?=NO$7nLvjQFIh(RLYy=dCsqTKdhw6=GT2LX1&XP zU5s~%Ws0B6e#$l4YphB%R&kmDI>GEU$R%OV35kXN$plLu8lCuHdm!}OG8jujvk+}Pgxy!BdSBTZ9oTB8?Oo=se7ol~J58FZ zAZuag2QD>h(=j_|l3n9k>5P0mA$r8PU5DHbRXqj~^zkvM2cVYSOUH%jt8Gji*^4@p z4;1}LO=;FLb4lCB$f!~{0Da4N5bHO5iQ;}#{cRvv3I?ZmFrLBTcRmqQNHMJ>OifN2 z<;#q%f&?`r$5TDU?l?IZU+XMN#O;~y&+xT{a!Gz}hfG=|lZ5`Q@O^+KL~KJmf~V3{ z)1(%SvST&XqqJaRr29k#V{9?5D}!PyP%1Y#e3-UFNIUKbX%kJ#ODgeDCJTt=Am6_m2l-ghuaJZ2u^3Q2 z2ocr2AGSEkHw|ssqAZ3-gqaY$eDw73XY6n8&$5diLd9Id4Ak3Fa!sUr=b7j)`Z6s! z2Xm|bNpE=te_r&511;2;g7Q3mkr(Mpcv$ua-h);f*%hCGT8XRvp!edee^w^f{b+#C z#WG1Vb=|*vr>Dw9$P9X9Q@vhNW=VgM&1PIMPn9d~J-B}~%Pt=D{vdk2UT>=}HMpIw zw3tr|yz_ptQiVyw+egfMQIs=Y_EoX$ryyCy2%FwEdG^E0el+MU;EySOVjo`QD~__B zd6z|=&3Y(K@mYVq%JW_#vhzgozFcO)_G$a?-?UkQ9?74eNjsdy1uy4$aoNAt-7w4p z$1P7@aJc>R;@YF$c`-}!zFrijP+8<4Le8=zFV0$DVquT!5#MG!6gXYU`)=gqH;R7SVxQQJs6|?S*FqSOeY*&piRDUlwlV?< zP$;=jV=r5(eko>Vf1jN#l%@Ev*}pRwc=4_>^CDfz*p$q~EITW(uxUvu4x95q7}*rC zIRyp4>imV>ItjgIgkCdG;oubEQi)oDptjir1)KbUkfWubM?u&o6q9t%C~kwMs0}v@ zPQrqdzAp|K3;wEo_5Iec!s(&({U-s}w}{~)v(qEr?{=|Es6ZnigQA7>`e^7EIK^f{ z;e$V8I#0Kz^X@NfI?ZJMCFYXkMBneE-7i3(9(|bLK5!!>7uXNE5~NbioCj zdT>xBKkmH89&CPL)L;gC^FpZpiz1(S9WCr-e|U6^iRl}Zt;bzWEr`~cI`1!~*sn8e z)T^aduL_#!pVSP`d63qdn-tWuI7;o*l^Lvd>dcH;ooZxgJ~h((92Ul$;l9A&lTwG?2b|`<5B6rk-a%KLL04}(=&*pCNhP$wV`b59yc{n>y%~vvB}1{1YV^^gln@fb z=4`1qZA-Ihvsm9$bT&S#D>`HPhP_5SJ+Lc6;xpe5&U8g*wj#4enu-?VMP1Q?A!no- zW%XRl2#FWIA1ri5iy9)mqMC{>#us%(7Yu1P)yVElABit~Ke*6!T`;?&+;uL4m@~6W zYGxPH%r2u@`^cu`wI8HI#z)p8)vN$(Na@^_E4aSws93I_s60G0jwJ>MOx3<6%xx`E z0M&%kE5|c|{&H=tkn9ap?wlOMk-xUyAGBQNokO&lQEr0sHZ`8_I9v+(}}yzs-xCPbzobj-Ah-@=8RxVSTIBoFVr3E zV~6y6)OjBeQsIVqV!0QZSeenn%ie>VhJd)B)Z_a^o5<=73B}4t^%tqRsrL=l=0UrL zqW$TR7JoH}?A|-&@3i;MIF%gs-Ui19)Zlk}`<*xv$CkW7m-LJ-=*1i4j!P{Zpf`p? z&)Xvzw8Vi6I12@~p5bX5?1)o*PuO*EX?gyL2cq50Nku!^x z0vmunm>cxKfn8E2BGvB}CL>HE6gKS~Yz8>)bo6_21@FhxwvMm19B`$NlIHp+(?6;H zNwhL<2A{ygTubV6%3VqQY_ka#AgRwANuA>XFD4m5-AQQ*or36o=9nGSGRg%A92ajT zqg)UgooX#*W|S;g#U)g6skyC1QT!yKm!`-HitNRyzmQn7GL0>vu|ETi)L#&d073`1 zVW-JW8sd@OG2d$v0h#ofCH4i7puNZ0DUaaq%>2$lq{6+=q9ui_T+ZB+HQ_2<=3Hzu z=bV+{c?JfkV8VK}Q#-oFMavtxXz?ywwA{f(!N?AeD1erZz^F}Xcc3_x^(SDE7ryj; zaFT%!0k9I&p`$W<3Eb}3_RJ=nz#YK4RnBr+u#Bc=7!qB$-C&^loZJqQeoBslqR+`; zN=VJCE!}T*q1?}XOPAM`HLokdlSB!;t~9)^>8E94vv*@+D^8RBOiWif=WA#sOM9uh z8nvpV92DyUeN)Uidgaj-qfZfV+{5Nz^83=FUS(>sNzLaLt9Ez==3}(hSFo;%c@It( z#yr+maoSr2o)=Jnpb+!yED+z*^->jsqSV=Fwku;Zay!>(Z`vU$+HG_4vJGOcS+ z4XAoth(5tW3*|s{dkdFp&7jmCT6x#I1Gk2%BQq1m3x(8fFXd*V)8XO)K8&XKX2Z!fW0RD$caXX7!7JrrHZ z8dSgxGLmrp%!LN*W*aXv6G4k94S$3gP!5d?yquKy(8$(3iT*LY?POrZHJ4+-%J=;toO;WL(6Bwde17 z#2EB*_5dB`;#Y7p)_5r-#H|yZ8^ncmMdfB)B&CPvb#mg}@(znBYv<#YU+Klx0}sr9 zuOK_U$rckn4PRseM!wy?wk(JX-!ED-)NU(Ls@&C7$Jr}1)2<%u2)DljUrbQ8HM-F3 zvl7PNTu??pN-hH8l7}wgI#9IJS7R)Iu2@*n__79^_4UaGJZgudc;8OBB-#+MmiHkb(On`pR`s=# zn%=`&qzXM3#FMF8>yt$?D=r)IkD3;J-Ss9yhXm4i@7Ur8YCqv_d~hX7CF#O6uRVx( z#gYrJa+wEQ;)D`k6@{W}>(8zxuhdR%JXx#cEH*PpouwWNbPY_ozH2)kuPg9MXI@J# z#^cF!S`lhpJk%MT6c;Mg23elGta&mFC^J`OTwV*8fm&?JDdeyor&vAVteHlO08TM^ z0ad}w!SoUKV9CR0*sP~{C@8Q@S-e-~`bnobe3*4V#Onui9fn~}uVO{7V@}bmI~H`o z;cy_9w7iN-T3*LRMYE=FS()a%ZbM&s>eQ~w==vp1p@9@yC}UC4vaSlmcn4Uhs_0gQ z7WY_DNv|S+G>SRB8peWN4`W$@!*^5NvdFLNDm9{aDzhbYg`A?Pyo^;vMXQ#xLfl-* zSs`w$1FkOauK=!&n6GE;4*{ib9$MscW?-*kPOo7|_3+@TQB_^pvl>&|U>J;DBhil$ z4qPpwvTlaY?6iP~mir+4sRv>#VnrA3gnO+4~S&A%d@rr`b8&^1I?JI;9t!MR({e&Y~f`gp`q9h1YzIPQu|z>->zZ zXGw{!1AubH-ixI4DB7k;bl1ttteC~a!JryRo<9Tf16Ki;C6^LB6z`O*wbu-?zD6d{ z@r$bO% ziF*KZc~wyytJsqlOOIY8rFn9ws3~yH#cEf&9zyf2d8z0cVT!$3CYO0~9mAo~uCHIL zlq!Vm;eK4#VUqTjHaYP_9(a#?LmCZxk9xyl&pe-oLmHiit@pd(U3kU!=x%s-I|04` zmwG5i*~<>-bO>EAWa`5N9AZ=z?E<3*EfZ%z#2m4nB*Hd(o+R9!BsC zk6)iWzS}$b?6`Lif1{{(ZzmAid%-Q;iX%m;;_NKvfv0b|ddBI*vyzJ$Y$dB5;35im zk@WWU^_k@AadH(zyE<#WK7Zrar-K_lU%c`2|QU4e~!_QCd_QR9AFbJo|t$s&+9380Q7%Ld|!@DO?cixAd z_fNv%_cyGEhEBI$jef(v-mqMDtq*4ck9)%i7V9xSJ$g?k9QUF-k0JGu`ThDmk7zUi zwWUnUU8rSO@WpZmJmx#jgei#AF$B(0Xy(mJIxceCYes`f;!X`(1KuH;t{@L5#yo@82Go3KYPMU4EVrHDsBo3HPQ~M z&^9B9v-9MPgBIxU>O3E%i=+hQ=1R@`_o#QsMOw`G@4x!wp>;nLfKN2j(9^>BLPH>@NSE4bG?g<-$<__TNW z8O+FTGOrx~fy27J+{UFZy=eGoICwl9^rGQs(Mj*LdBg?~C(#~%Ut5rAo0?YBrny<6 zEC-IwJ_^POYt(s$!RviM?__y3GFyRObZ^<>^la=QmGQf7J; z4`CB9JiL2b(J~%VxO^Ie79{BR;fR5Fm3Hs5ccmFIV#fk9M@YJumRR8TsiuT4XdsZ!&S zJ?zxJ%Dvb-&t|inJ59lKfj_Od7acFJJVb|9Z&gv`DqDK{fqRd@XBDUv+OAK{{((w% zJb*))JJyAD!MsAKVwEn?3kaOe0O2yk(moh+iS#vR1H2_kQ|+)cVe6}SK(FILW&Qi$ zbpiHZ&4V>=ffU6S;(~(HzPKsBETr=`E0eQ0p|}y^v$z;%*55B1#<|@KqIDj+We(O? zv2*sq`{=sy19-{A*+b+GU-1+idFFhs2)%ZT%NvTrMX3G55X!VH^89JB1g|nnRFeeY zXyJ^1OZD$}aQ22Y!X2K}_mSqprm|QmaQ>Y#sW+MMj+Y`*v)h70zJ;zM_5EP`Lt~h9 zuFF_&=tju}pDcjO=+mj>g$$DLirg=K-$}S8_rVK~1EQ)%sQtE{R*g&PI@S~@8Nv5I z9Hh>k!mM&hbO^gv8r+P`W?ZOjp7GL&F(nZ>MvgA8qOxws8XR>hSo5w2HUn?jl7XHDMp1jhk+r+NZI7O_ zz|*~0+m$QBtG)=Y=yfc^>%IuD^(uylVpmj#*RUkO-4f`gO{dQUOl@9wY&Tm@+O|6k`@7k93H|ZD@`77l3>D@aj;2!|*F|1b1z8+OKmA7+R3@@8_4LY$80-J-UV;P2?8W%L2Ryq@?e>ufX=e zg|n(!OFOe?Y%m9zUc`8i7T_IiiF<*38{PEC!`dEbq_XSXIHJnJc_wtkIF!bCn9VR) z&y0`}T%`_nAYWz!UQO_yj3vsOX!3cnl3WkYTQCPKy;^!`%P6;6*dCd^)$b{4>n?Gj=DSxH5;gEC ze1SsEx0<{)3E%A?bZ+r$=j}U9{FZQERx>1F8W!6Pg8;d;=9XYQynE@IEK##^;N=)} zZ|BOy5iodzE3<<}8c1}#kHMDq)Sv}}x(4&=){t*D{0)_W2Efz-UV|iV`*#dTM9(y{ zbY?=uxb14jWra?_87 z7$ia~4Al3$EDl-wLrIQ?;N#9oyUqHhwmXN>8$Z7tM12)53mIM=LEMU3Ib%E;KP$Q9 z>U&$uGu(DO)|>KROY860FW?}8`9e!WY6Z_)axrc9wKHWr@*>uR?mQELlTJ-p^b2sr zZ@0#E*_>YM;9X{?U!NbEt>NA}&9O3gnA%krp71wy$wP5ubVGUw&UC=u!0ztBei8Kj z*yubjiZUpV^wGef7kh{HP%()3@$C|Jn4diP!e|SL^|Kk#;gD3;sdYVzeM6PQt1iOW z34sX=4x;Y-v~6O5vS>>s!#LypQ)~_+&1liqoWj+gH;=yk)GAwy21)cUc>jvSu-Bg& zou@g$gGl9)E3XB;Wflhh`gLy|sMB$4&;)#Em)&AWB#fOG@}SrRe}Z`noH=Q&qucFC zDOhx8KyxG$W*Ca2A?5u7R(OWqyCE`(#R=6vtmEy?{4McK0h_AR^5ELecZs9g6^ax0wO9%{-svw6>=+Xtf;PjXd zzyb8Gg`q#L2z|zbEGVtd*q%ok7p=zx{G0WUx0}|>ibg}a-lI7qpy$#jGTPjM=!w+Q zbrUVe8W(8IAlafFMz7W$DU2Vfrd1s%$SsPBqYsL!z^zQU^dh|KpBUViTE%~O&+M5` zYEu@Y=0Cg#HZ3Q6$O}5{Bvx6ukNWH&V|BL-ROr(OjN#+w_?QFg-CFa0)HfjZPpV#Y zk36qH&6cn|ZDIIu9pFtb5zA7YuzXH8Kr{^=s6#Kt>mp;X@5Nalb|UB zn$TMijy0G(GrS)J4Xx9k@G!Z`mD8Oslgqv6O! z&y|ClvnIr))0at!0qZ!^-2tma(4)xDlh46O7e6WBP%tS);C&)467Zx22a`R#7Z76z zGCjyP6e*BaqnYo6NfM$cILGf`=>Xy&eGRpERgC`bRq-)+*b0WEdQJy4-$veni?`1> zDxT_+h!Q$Aa=dO2NxQ^!n>3kIo;Jm`9A-tYfVUV)fez`g%U}#-=qR@Kofe13nj_3j zeA5;#TKzbEJ2b1wkzmnC+^;Xaio-*+kDrL?16E=Xw+X!T%ll=YPeebOjztVVrgamP z+`#|^D!cXDj7aw@6RFJ@z~NxbGMT){`797boA*P#c*GfWzP_TIo`AJfn~lIw3UV{+ zX*<{jXMDtJIJreRV3xbVt?BI!l$6u)SRyiF4&XV2Zk1CPHBIJ9WJ-VGd5Erj8(m#8 zON`v1h{jod$c9mavzW1kw%kQq2($)@2P3N5&EIZfa}*6)#qJ*uY~Wq{;qic2Ng6DK zVe)w+vcu7z4xsxLK7a8-^6~=W={2zfFzgQoto*Vp&NIn_lK;5kQoWDv^|C^ITtc9> z?mmrlnh6VCdCRcC2-P-%OM2kl|{ptJ+<)+G-##k$q&y#b`z~T>Y z)>$+FL&>oRe?2%5K3k~zxLlh|pimEJc!q~|+aifU(FQ}{WU_;1tn*&m1Q@l0hYne6 zT)H5bkj5h>Fz9bowL2ty8w2Kxvg!b zV+`q0Xg7A++htCPl*JwzKW_#zHVdm3R7myQ9y!ZpVlCKIHQiDJ z+a?bx6Kczb5Y`(~7Nfv8FFVJjHhBxZ9YdCekbvE6!_V0Z9+0DmA8!WTuWOUb2Jc-B z$UIZqijT&eW%oyVLq6F0PIBE=ZM56HK~bx%+#xkODG;UFms*t7uNZNHlabN2XcdIG z|6cRIF$gmvw&VlPXsd~CCSv?rfKx+K*Og* z05tG4k<$_0xq|P-w5seSBzH7g=(~UJwj0*F@&@mvi}!L1?`13r4GzR+BkoILX%x<) z0oR>HQdM=-J%=p2r=2$-x2gxP!|m7R769Jlc4@r#StfYTJH&9oRYSFG(7G-?L7LQ3 z-Ue@>z1^Zl_0!twZEvAf*7kKa!<0dzvp*A~qwLAma-p^uI%qoRqJi3{|KD*ip!NT- zmiYZUgElhlMj>~4wZVxNOcz`~QVuGuD{jLC9|j!QMc;w-wrVL~wb_L$^+Gh?DRZbR zyw{iu);a3Fuv-bGw-T+LFqqyT1)Qkq1J>S=YUP&E4If5zMZPa4>M%0pT@__(<7!dF zOvGAyRmJURN89rDTlROKF}h=V-fov~)Ns)en6LGtqrs?irBXDCg!WEkGMJ9|eZ11j zIHCLjdK_k)RFW~M5OW4F@eFIm?5J_K4Ct_>9{{EAF8u%+M<7zcMK_C74zRKXY{}G- za8wZ)D*{RS<8iQ@P+G1#&LgKk-wW~;`u zPBHv=q=OQ}3&>?!w+G&b&6c7h71~K@uPPc%XwCwh**oN@pcxDA-Ofku+IB_@``77J zOVbKnvO;7Tm`J2BkI%;3u1fPU5G-RqgRoU z%V*qcXJFH4Hhfa!ATQN5;Gt12QoJ7+wRZd$0XYmK(qb}Z=&zz!z>Q1^cQXsPmRTHT z6m+q%q6iIK{e%cjDd4kfu(lT~%>)!o9YsJn#e;e}opPf#p*4zfCD&rzZl8G zLyOU_AahjQ7R0S^!YAbvB^LOtDjUG07I%#0Sw9B?LU9|ka>dAPly?r_Ycy{c=cJ=< zQWyaoxKswVVGJG#g}?XFSk)xp$H`_BfLe$3bCZImN*K;hfAb*0K=-KgqRpf#^1Q)t&ITiXzc`FWyjfH-$olzhj$YakL+RRfb(Y9Q0^2Pw_U`uXdFaf3vvEaYxAJE^(14Iy#TkL(vFzWu z=?HYDQD0bUGidX}1bhuQd!a^oJs1fb2+As z9U7yKKD1ZF7T8?OBQAg38LD$0ONVF`9K@^;z-35i4oiw^P7|_!J zJs!|#K=06K3L>t2z#yUkQ$|Z)Vr0@Vs!dTW^)1Qm(#6`8XSpL{A4zgswvDLG6$u?J zeProW(U-S#u*d7GmWVD$YfFKq&G-9v@7R;bz7wE>@Y`;wlT0e zfU%Xk%t1pxLiJ7zsw31#R-H|{xm2c&H}>we&2iD*d~2t$m0!7hqxR(D=xc%Fw%>R1 zRjt9T8ZoR@SFPI*@7#&Qle<;JBWyVo=EBpiG)F3}+_-V1TM9Qj(hr8+^OgYBdwtw2 zz)+J)>rw2<1-#(Jkf45LiYm?jZ^7%nWA1ook*-Yxsq77J+hTo$)YZh)rv)Q>h%s_B zCL@hhgOU9{8jKLygQ)g@0uh=*IBvmXl(lAz@vr9d`ADys_*YRBjr2;3f0ZWiufi{2 zrs@x(G@1>E^*8A;{Hs4ZN#GxTwodXqMpLbkd(+TfG<5D6I!6xrUL^*cwYNCoO5sRb z%HX5x$YBJ3`Z|y**fgX?zB(5p9iz&*qd8hh2s_1d5a;n4<1(4St*#iZi@qqX;9?!T z+JIHXmF{|T9~w+CFf$4LmFrJwPad@)4G5{d1IS|-3Gl32)vFQt5sw_?NKDH8T%6dbS+H-$=cX>5x?lDF% z_?nQ#=B}v=LI^a(ihK4BV|YT`GQCh!ItN@m{CAsc!0>pUlxLYRP@L9XHCJgTY|r%EIw+3!*oS z{*H0(;(|$TkM2mLcMPJkj=`p(gSAUWHuOR=%T^Lc&Em^&d1Y7NX)~_)?967=8CE+C zdm6=s+4>+}z#4g*@~~Xic4VBj0~f;IW-{Mt&@2k$iod(Osywr)e(Crda=f9cU$f)W zf%Ud{yEZcxH0le`BEr=w7VtxLbUYxxj)vfns4s8V;&A;%**~W5^-D0X>_@dT_wwvT z;2k=0@9@r@+hs5yR}ddR~DHxb6K*w}+ccn`Nz2O6u-4 zJDbV^0Lm*uA97H&E;%?>2-YT`bnL-iQHPUmoC9g(9y-1Q;Mv}&hkb6M7T|np#~!!k z3t(%9yA@?RHesZ<15Dc-*c3NT?mycdiG(!{wfB4a-WLNTZJd7B1zZow9@g89!O``_ zoi$nVV%aycAKwa<3_dcHn|(t7?QRf`ypF{Ip0go_aK|ro3Qn9;rrgmmeyG!ZUXZaW zeLLE5d;Fy1_PDH_-4+n*trc~^9&fBGYyMHx!JO<7~J z^{ut4p2IHhqR3{w0fTTaa%y&a!kCdjN@WiP9-tY~gojsCCbT7wAy1jP9ByFEG00zA z%SZ*|bvJ#=)fA&c7VGrO-dONU6H7d;gTJdF??!xY z=vB!)BWvjpzL`pL@NsCp(Q7$E70Xt{-=F8BUR|la{HYrqzC~#3keqcG&URdQNG>2b z!>FbB)WqooIvE^fHWa*}mT&gr537vY4}HIc@BS?Y1|8!&bJHBUuB#D(78GV_G96Ym z*Fo$H8!R+4L0-E->a$M3*B$xY;IH^wU@&`#59>0IPxnQ$c{?xo(j_pHI?Cr4@3w3| z<@D+PW&6?F1Q?;0^cj6fpU|iDQ~Jft;YMx>FQOj{yZmx?9emM57O4xY;8B|@La32C zy%lfdOaN~{kiSPEYjQ6!;h8JD6g7%ue~pMF<*rC%5KChQfk<>jHgL4x4hNDhc>3~1 zan*@j;>ogKi2NFp7j^Ol^YpqxSfeRMmB7f^r>(FOrzWg~3AcUPj-#y)MEbdoU;V7E z{UHNyS#J~lBr^3UFJzIg6z{>lryup;YDm<(?4R@&{gZa1O{DTp`?IFgCC?M%8uGJX zMIq{jN1t@YZq<}`1C;mlj;wEXWLQP=7l;FQQwWyA%AQ6%P2eYi;34P13SzpQ2QvuA zHV<){`HaD&Vd|OATO{ODqCt-dSS?%!klc zvn1XW$>lG$Bmf#`O&VyP05ng!gI2GRecPC)I(W;cEk^YD{;+D=xcZ4o6pu?A&w6h- zmz`nOnqXS(xNBoC@?vk`(VrDO%>k?vLCwk84i7VYx9~7^kToyzSRGhxteZL*5P-i) zw=f(;tte`4Toz-_q%j$V?m8X|?6r!0;l?a?|MK0q`{$f~)DFSoPH1EUvJ6{H|HGT( zm^N(x4Uxs3nS3*7&a*A?gDHWLoyN`M&BDSy4aMb-D5Z%luwvK2GY}G>z|y9kvFpJ5 z|Nl=9M1||%hkvX1qzzx1G4JwB^^=+EOO-cG*Zdt}ID^9l6YJI^P{Yy{34T@${{}Hq zO;FUDMW(=&!cWA0b=;lSf`Q zgO6^Qf3ZYU z5q1zYj3q{L_?`0#b1H4k) zgw(>oT{$f*UH|0W==vj0KWx)=Jz#A@{(e2gR#|8*2Aa4fljsiE!HFrAlj!c02`ZZk zetfG6?ll#>H)Wj4$#BrA=qHz@)G9($>U^(irH;|wy!zi?{prQ;;|KZjD`|3Zw z`coK&jiM%3foSPrYRZ#=^{9?(t92Q%(z|)7ck`mVTbJ$K{H}bvn@7vk_U`?IT^cP0 zp$mQgD~@_{SS~be85*M%ne`$z;)g6EDO_jyEe~+EGKgto^c4xFX5cgU`KYKB zT3j1APEMxde5|8Pf^vsOBo1M@t~ZOC)nukzkWo4j({TWQ!=(wwqwtkRgv9s+I3fwfG6q^xK&RDRC+L0= zVHT`uxfwJBA_)W;0qB)gdd-7_f~;W>y2G8dhFfZsG(+sD!$9&%Lw)!jd{7iQPsGhL zS2|U7HD`zp81*_xJ8SPNckNknqJ6agcAK31Z?FFJ`hR})r{1go{OV7y{^iv_z4}kD z|9$WEKfLR(^|-%$SbzkmJrknk_B{`J*AzW#Tw{;Bu+f5AHbKd9&R-@pEM zy;uL(d-We*{p+iLdHp}U`sY{w;q^a2ORxX_)xW;}yI22o&?07h2QiaK%)k;3?=t`% z;|vK+$at4fi8dkImG2NT-Wkk~cdO=^(WSwq9iZ`sh5G*Yc%L$5W(&4m;2SKEFfS3; zU|O|Z;`dl$#Z2(qt^DsWf5!AN;CBAkya~O91DSze%M=f*a0B4`DZUD=JoNpghqaj1T52}A!B+%GD{RP?bq`>fD>p4lLIl#fUU%tL&`FTlw}=Kwr6I? z={QKcP^5-HF+J;PO`4D{0U>pvfFPHt14ZicwJsEU&}W>CgQN>aqQOX*Myr!pfS2PwdxWzxihT~@%5qmft{IpV^HXAMJpNT6ELZ?KFBO8LVwaH z$~fo+&}Xwr0SvjBQHYvRh+68!{q|Zh**^6u+oxX8MS9PsVz-#W=-zM%O&15YLU(n8 zey4%OxU>Y^H?@z?iUz;r`TP1!^Edn}F0LyKMS#RFkV3k{7`F@GM zVX*W_PonHhBE(vWe4`!Dv8Sfza1k(XI-5HhrGlB>=44b(^65B$zu__{a8)UM)iVxH zFgyjJSjNn|DWKD~XTQ-b<*b3A=^_GCfC8zjSrXlmlwF-tiHacM>Xcad25nN=)h5-I zSj@TzO1c}Ze)|qeq-GV-TeoChfZsCfd1&$*KCK`*EtWi9r|K$J)z47zn2EQ#!F4qn zqT2@?{0K@Z1PRpY>fvMv7j1;n#4)+S5+YWuB$+*7uw_lPJiNnvand2 zBOKJp+OwO?W!lI%x8dgDRi6PHB~DEaVR_h1f<2cqge#6X3N))(luwj79xz2T}wQ*AhmU5j%7bW;RN5E}`LdPa-hI zjyMA9?t0y^SHd;j$dl`0r9PE~(B>OZ3j|6y<5Hict>vP)jC0qDBfG(h0|p)J$s5mI zA~-S7?mBvF+V7ZcG#P|?2#;g50Y`9{26z1z#iesPm&1Y6qPW~PueqJT-P49K{l-UKHvX|8bS%&DkKB%+_y=Yoiya`!8PM ze_Qa_lTa?+=_FJM`a3)cb#Q+`HOfa6(S2w)D95eSQ6XG2m)gjsZFF)OVE9X*I+rG# zJt&GV0~_=cIHCKNwcgO)L*Lo)s14nTiEx?c@t`+Y3{NhGCyxd{)h4M|9`)|jZ`U66 zqM>~);SFDMQ_|$+?V`C`G_ytDt6!a>nOoF3>;nV2%l>K4Iqg3g40c&n3aalydDI)8 z*c5Gm-%2vKsXXcpdi|lfPi692H=w9DY^Q^@$*Kerisl$L6RwrG!z#8ePEm6`YC9Ki zPu1C)ovf_+%E~cc5!=^_QgA-Qe$bMr(-M&0Iwd+DhtOAECr?=@n{^V)z_L0+z1g~1b76pCLvS`Hb*Q3;I0}sg>@&&8& zzyX~7OzQZR3Veuy-_u&ssvvhISR?$Q-Nd>f2--oQ4x<5f#q&(?8TeAZUh-nzvmxHd z+7syL0^I9iR#37;1nY`|Jv#~c)iNu&Hg7V|takPSe?n1Q2ITPG=?TAcyDo#*)^>ec zKZUCJ{nLlmMGQoe-4Xm;5$j?kIQn%koE)E=elXqK`Dk-G*xY?cj?UhwudtFUw59jYCBai^|TOxk0Jp#0P5$_SF;=aPAeoH_V#v2M1kb+H4eQ5YCNA zk3fw(?{!~#9*HLqK6PE8r=zlQAzE7WESQ*-b@v%cI)#lYWy6{rw1vzk0@VJ~A2c#*wNmpcDkC+;Ro0wQa;9Ycq65DXTfaRV?HNJAX zHmDW%BfR@~nW@G5N|o7*mEy7)U}wi^9AOs%JW}w|RHgm3)L){y18aL|3+}GW`MRmn zy323s18vB!;{)#v7x;4xB2kSss0cH7EkWnHE&U? zrsdnzbULVQ9#11}^LRS!*gT%SJ4mO;4oH*J6I1h@PR)zA0`YWvl+NGk!}prLb^G+< zZ7R4MZMS?S{+lxZy%2k@H0z5JBe~BW?f=+q8RqR!Eq)|+s}_rWb^l+l|3|cD`_t>c zd-cz+{&`oOpYN$N?bf;d>4&>NMYkn$P*8&L>m$)Q$k=0;s!((3T&OPXMeCxSzU6iz zS3%k?l3=M?K~4 zdb&2ODIRpCaLTB)x4HSvFf}!AiNS(K%e!iknp}B01-s+gujztPn^Q zu3><*btVs=J=2G`rTu<&PPsYIt#fa1aR55@t1@AiomU<=XQ(suoPIcOy3FenNKQ6~*-9pJOb?3Da?hYH#eW${@ zORi0zJK!(f0cU9U&~fvQ=dq%79t&G<_DlpQ8VNim-h24lIkIdHf87JAo6e*q9{$Sa z$ZFJHjC$*iZd|BmZ(69I{#z~7 z&-U$VnoWArI=>&9H58fKEN6v$iOF z({?75bLb>+C(sqZH&=Qj2q0ss0%H=5z)#+e5!2z2R3Z9`-_5%Q-yA5ZBnLYYI z&4^;04t;@(A_1z}%!qN5l@NMr3gnuqqRnN~j_+@^yvwar*|?Vi&r>vQEO9vzFt*poflRV_U-z z+_$_H?%qH{F2vxhT+%bWT6Sf_bGhU5XH3?cVoGEid zX|?N85Zp{!X-c)SyX~DA*tvpJ>^|Rn+Qr2N+X_vbP7QGq??#+<5}*A9L~Ij~8)n!g zAi2J>oVTtlKSgj|0wFQ#1J0)*5JjzMTp}~U`8>6I?!D_@+_?ThHA&0%7=PN5x^zDe zG^+T%Cs!{zDcQ_liOfldPYqwR^24*8hqS zkF5cpL<2qqUt8{>!QR%6SD=y&SA%G+2JFy2!{skpNWagK&L#TJ`;>k}Kc`>P59uTN z34NdbNPnUq(68vn8ZkmM7%e*eJ+7SLduHWi?KK1Ke#5}Ll76=>Yk$)cf4>7+`v(!= z$-*}%Yd6;m^!gl_R#xp+8bfzoEHcHGdy4%=7aN*lmwSr+)@4B_4hz~<_;)RSbz%yW z>QmHcm!j5a>l6Log0}lh%==Mw@?6`8y2fLyafrdY3H?N0;p^7=JF5s+%1+s$xb*#p zyLn<;kS*DD@bNDB)uC{XBSg$ZKZrU!!In3N?^^qz@9chPrq$$i70W#?6EXAB&3uTN zPa45b1)sK6@E>7`&)pJVwo817B_6pYK53VDA4@0*Zm)1L{SQ>4-1!irkpPw13 zZ!^2pKHpo@YJW|&V`V+D^)>e3>yB5!PL<1>fLm?@H{V;+X|ENlFoHsY5k)mkPd3B`0E zAm3??&dT+SGU5%Q)Z9-iOl&%{%~!TVUA$?!y6kjSU+3y#k1c)KDUE0Y#oKr^YF`7< z8WyRI+t_aj{nXy3Xlw!!Fs3E$DWIwth(2o$5 z5MvrCEd(jmI)VF1pTK>(U+?frULH8R|f1Xcog$^5D%&3*J{X^yGM@suvMrLD6TzWo>W-n_YSB+C>0DhyZ* z3+Qk$Na_qK5gHwFC^D|p5r>oi z?O$t_l~vglm6;Xw6{xSUpJeyF=MK1ophQI|>ax@yBH(a$IQ;hae((2M&`}4ziD-%@ zla7e{B;wEKQIWw0L?E;`n%h9jZ4YvL;+qIu87PKstHRK2Pd9Yin~*280*Tk)g) z_Ef8G+#deh@a^yqpWNiF+quvEoc5OyeZ4+$)Zs6OZ->7b{`>Hov!7fh(YM3zhF=YT z1HhHZll{~1tKn~lUn4=$+u=78Cd~Dx=8fAQIr1krd3gIr0%C!iPQD-12O}M0PwNYX)YWv`Fx8uC4Rgqfzy7eSdDih$(9HQ5y&HHJMhE| z7=AQHg*Uh1&2ZsS5j@%@d9+LNMt4c04VBOD>ANI=M6kxmiP?osg`eyquzg_bpoh(2 zSfGW?XM`;PNp&MZiW4;(AzB0xBo)^1c?f`5fBxP`PT zCfvXb8(Iv*VG_cNgxHO?0#VXD5j9UFwgNKTmahk2sioqy)OW;fhH#d0b*aD9kKrtR zo91wu{*?B!D*b%k?9(dR7aEgtab_XTRWz@~W~R%tbJJ?w5V71qC6S>MLK-bvODn%Vn zn*Z+Edl#7h>ODDBG8x?lv|t;6g9$k0(qNnea}S<3XyNbb^w_%Wa`Y_k9&#siV_ioW z^uZO$ZfUxjnu5BAQ{|kTZf1*81YOo-(dA-M(t=ClD`zk@Uo7U@u7gg+I0&9|jiAcX%M39`ca0h0QjG{|w}P z!(R=*8@@&Ey{`dRdG_D3i1_}?@a@^(1A!lM0=_%@F);oCg`c5|8uqylC+!YTXe$G0 zNE2wHULm@7cV}j*iMTgy_>v{GU7JWo2xQwtE&B8#bmiCz`q$yRv;T~ghd_3SRRc9Z zjE84G9=;p?4!IA%hI&x8b8&`2D#L#negk}l!`~`sUCKBk&v%Bp3ykyhQhEMA!*9>N zl#Mc`?Eu!Q2*ac+ke({9l9H~0X$=2y`2EE>f-nq{#Cz7}sOX9MLt5*ognF5wJ!Uwy zn%f0yNHCxBY7R90%?F!L9?J+qe$(*Uv9k;CegJI#ox3v78R?q3Ia-c(-czxyS;p?C zbgnFByp}sl`Xbb-_|u?0NEfmbTb5W((S(cE$%%O&cM~*R`0n(rc#|N5W{Mc(sX?V` zN|?cSXUZ7nsL`fjchS;z7s&dmugp(VD|1sl={7T0=q%M&H(pKT!LbR_Q=HKbbf)WU zJ*;YGuM;AaW~)ofer27&5sqCWwoGRtT(!cEud-a8Ka>G*|Lxh2&wdWW*U)L|J3-xP zPr;Ty*PWWnNtd)!15~*h7JC4(JI>)$Z1cNNJZPOWO#D>lxp>8r?l9WTeWfUCmqkVEXLth` zT@2OIE}w5np=iqX*sH|TRJO)U@T55VL5~+YLA}>@9~0acb!o{nr^j1CD4*?Qq+4^N z8a#VG3h_#!f)Z%mZv+EoIie}%nf)?_zj|Rmn|!uufdNI7>QeuR z%PcS+e=oLNzo=;Yimt>Df$g#nGebL-MM@}=8-720H~h`nPlw-OUeejez}&D@@kCep z1&cGTr!xLuhhLM;O~r^kf}jFU(SdcP3M|g0Kf2=_zCHU=7Ow&xPayd#dtmNpDzg@7 z`?m1@K~i^5@DWfwJQ>+peT5sf??Lti)AHDTOT|zXZ@u=2RAyT{B5g~l%u`IX78mY5 z-mfQxTaF92oGRS^Jp1YJ_rq`L{kgL*Rf{8Rmp7Q#kt`5M;1(qn}swY?XdCsSsQA^8kJxfVVODxkEpXFYdbe{5Hv{gx+is(mkc*iTVtF*5PNJ zEz{2%`ZrJ{knl2ocJXu_3=WJS-jWkq5&@~y>fkQHqwqN0ikH?U$w7TcEMp>2{0J=WxCe$rY# zwU#gBXxk$ywP&yiq9wIA!>WaIl+GkV< zpoaQWBPGDo`D)_c&p8LPe{{~4k?JC~4*U=BiGbV2;k)6lhwrrI88?n+Kgpf_t+HDD zF12%1>u2K4;!4`eXJmIXp=rT}Z`S{OjDD!`GOd0_Kk!`Jg8D_a1si`V+k%aY_W3qq zy`*^_>w@#D86-UnoldkQI44-nuue{l9QlxIibSY4PuK}Q_ir|t@yUL8d&HI8dBeLQ zhIh^sPUX5ZzzxgLyvyx}MzZG|z|p^c{`ham@!z;;Irh(yy129)16n0>ZfL-;PgSFs zAR77vA)IbrT*1PRT31irgyfS|y>N5ZJZJ8?JAw|586*#UcIaQkAUXRH86?BMM*c{u z-W?yd^TV%(zZ-ss6L#+G7vK-)>=$_M`10%*xwF5e$HRBS@5c*Ila_hzQ`6u&V)LoO z?2ShbZxuqvuLm8|`Ww@o;x|e$TLe7>sSix^30=HO2L;aIYJuPIn#k@)4&n%f6JZEZ zTcTtK?}^_ss=2-sdcoEquXq^Ji`)=Aid1R|7p4Q3J-f*2c2U@sv*XA)a98n-m99!c z#g0RFKM44ps9R}j4_bh~Nq9C!R*`nHirf%AU2ff+DDs-fA=5_fmDe!Ae8@%nyMcXJ^TaJ!c9Ey{fJ7P}5Vzkz_e6F=f#5>9$ z+?U){nbgHMEChtvHjFzY1**BGi#;^!MKb$@0K~M8TZN7jzP1f7;2ndt3e>1}NU&Mk z1Wqp?6XG_A#tUTI;57y&-gccZLXv81qZvz(1}XD^m;jIjC!US+Fd5~YPIu8z$ZI~q z&^FfsZ)0E+0+mqHFhBpix9dzDEl=$fr*2h`XHHK(|9tm9^{OYk|LOD3jjHuGhWUB) zHx+B?%7+d|v+>Ysp-y?7DZVyEi_cs=^a% z30QLA^SNc6T4w6&Tb8xRfnVx#|8rmVYWucv!%HYP#b`nPFvKUXw1a&UfIr8eTBvA> z2axOm?T*(l`<`D9`UT%P@R|+}!a^t7bPn7n;ghcGLmt+JG4QCc=(ZzQY(cm}LxqG_ zciJx8nTBIni}5p%C(^IXUK?hpMags_Ub?;UP-H=4WqacxK;C$v6}k=EXS`4k z`hGib>bA=S^_!_NyV4j{vJ2gV;I)#SZ!x_@#5N^MbZW7pb$SYvQ|@6m2sw&H4eRv2 zX*$usuaVE7zT@#6EGh!ZbwCrzb^J-@g+4m3yd}bwH#c1_Drse~UN;rBkFdHm3=q^E z)8X(5D0C}>QQ}^zzSnkAG8$RO;J~vPgoBDkL0Z@lguY!@>4I(gui`)=qrAn%vc3AOFC3lQ7!ou(TWg0Okh>3TP*XuS}7b9B?G*9`_$<5rAX5Jm>; zxV#nAE5_3&n_C7WR)VN30l)D~#lGR6d3#v{9TgkhC0R$M1^!`$^__w=xpaKcGTVJo=F!EU4ws9k~`kAq}-*)`hhQ-`448q9XJ?=!! ziV?iti+Z)18%4%x)vAbxQK92Tk<)Y&t~T|{fEtPIDIE_QS561n%}>kBhc!JI0I}mM zXkZQvoYjTy-PwYv(#5v)%~F{)M44UD&K6TE!od16SOYwrWrVwe`FP7cFHra|3Z_aH{u?%y@UW=8X84u{s>NcmP`#A@JzXr?^J-P_6$mxHJNpIHK64dY zTBx{9QxyeT410S{rEnBg8?!jNbt7KWQmGe>125z~r@iO4kB)INH-L^A;C$1ksM}{ZBdgkaX>ir~?(ECl@Y{;P{Pc`Vvxkoxnrl%Zcx~}k81!?n54r}?@52=dM;oISFHEk*Aw=5PWqdJuZj%(9U z%aYU3Gv5y1rZW`#UD$$H1>SOfleWn?8O^eXHc!nzRIeZ=su=7c*e+5$p+huFGi()) ziM4) z!3%)$#A1d#<;9U^K;m1F!D%N0vmgYPP6m>LU;KQIb>VsZ06aph?EINV}} zvQvv=EdZv!pghTRTrf93KR;hyQ2ZC5#N~QEZ(axg?XXuf)xH2zDxSKaFI+n)cz&(j ztGkhDD2D}0&aw!d7W)jR?S|ak@#SKy9w*{6e8KbU?%|V$o?XJnoLHe3L8fUQfPm%v zoLuXM8}rSM=7YH~{dF+3)tMINFzr~F9(C8GJm^~S)O08K{J>W7gZUYcskUtgcx+t~ ziLif%9n%>83$8lf3-7__VGWl)_i3qt!TzhWpALVMI1&D8`0oi)5k%>KfTc9|qq8q3 z$LswFglr~_z}>3c6c~m$oZCTayAY-340@WQZdf+}1C^>F6ksJM7r=I=`loM}rdecr zk}&vl->^g*-zWhewy;WyK*n6KP_vQ07f)YfWhrH3RLe*% zoRcYUyj*&8-t{2`K#}a^IdJ>-K1vAf+pyDNf@^tT@`6`~J*&br!QcgYrGfRnyBk%( zvgo}^{b3nc$DW?52(oiM6}5KPwD7kneh>9Na-FgP6lRo}zAw^<Gl+z73^>!s8-h zU!%o@g_h)>e|b6n`E8%wCI0zD=2>E@ytB*_S?4rU<(x$p%Q$Dq`N=F(gqd?JkzdX; zRhY1FN@6ty1EhKwoP_qbJgrh0muE8Bm0$ez@c`c&uhohxXB=JczreW$EXL0M{_JP8 zkie?&ZSJ{u*UKXB<o^IVSxtG>Fp+ z32}OWdE80zxbxoiMTL5d89q%iTvKah1cJPNx!3(GnxlOU|8v84!(ZWH`fD)j!vpj$ zs0>6g^d@=Bky?foe0ndRzlT7P4ZOXpnaY#`wOinEO~mMJe{m2 z)-!A3=;E5_>`%@7xmL%~Xmz}qtU9#)u~*N*zo}Z#j;6}FrqdPHBX>tFEho0~Rk)6e zg8cmg04mypY?*aR;dEgLDEw)$pPVs#X_yA~tMqt4KYMBRw2ryS9$may$>(2?Rmh{5 zPUR6xjn9}^OyaBtCE%S)dMQ(WDhF+H} zpI4yPaXX=yLvP57yKu1sR4dO*i=7HGq#|#LFKL%{YDa3$K41c*7b5{3l;?ljPGGq~P z^ByZ%74x1Ahevi#(!f9{gTA|=B9J#Mt8x!S4+8XjPeDB2)8NihTC_t)^n29Xl|wm& zjFPpyh%E?K#P~@7%p2nOt_A%P%mt2g7eI85>Gz*M@5(Xs7xt#)~5~JHgE=H zeq8+Qqkmrb!Jqdo>*L4^yZ&vRsba1>RZMn*6y>9TVla_p>>wo@%e2`~;AtDGU5DY$ z8gjnsyy1K)j4Fm(n$`oOsG^d=iBLbPxDmqO?%EqLbL`l6C$eXsNGuj_7ojOM2?Pp) zhVRaPA@wYO811-H5-}nu+evdJQn2@dlDaPwxrh``DeO6dDI|+KCw|(vtlS5=cIZ{a zs?$s|YpJg~AkG~{PIk#x0Ra)>ExtYbl3q9>Tw7INxQS06DRQyPz3?B0-ve&&4Jo8U+f9GH+p1r zCOa}VGHass7h4mp(VA#ZRulcqnppjdt%=pqn%JAHCLU$h#GSv`nz%Ds6Hg|qiKm%0 zvHq7WUs@lnj{8?BUwZT2@}(Vxy>7E85 zrw9l1(;t;I?SZ6e%Uo4bg>J(;RK!m%d!$K?kg((l2#>bRJ4w3jNS0BRC%GCW$$bzV zZJF!J+wcq@)B7ic{wF8q3dn+bs%VB7c3Wx?5$vw2K_oJ|qXv=8Xk7^^lg#LiN>x?@ zG0%}E<`Il08^l#+?hrEvZKT-_hQNMRXwkiBMplQ zRx=V{145FFR>eejMiXsERIrf-#RTgaZxIribX%sR7&{5k>~caae?%gS740z9j^2~> z^s*G3nRJ$uF`Jglmt;2eB6FNk|2?0*xX`G7`Xd_k?}pXCMzj8eQ8H5O=Z_R&vUA)2t~9dO1Rwdm0HHWdf!nA#|TSHi(QTjh#rg z6$rc*9h%?M!Pk)@+n)4AQnY#Zv{r(Q$Ur!04wc+`JcE z0&Wgi^VzEHt0?n&^jC*6Z=_dKm<2Atmjn56p;zxlOCaMRvdVYEZ!`7=ITNs)AiB)q zegaeo-&;oI;&f1NXFo%%)$g>l8PM|1x#0Dk^PuJX9}`+Wf*UW5$Bk3_ds0N6xB^YV z!`&DjE+MP!aro~!0sO{Bv;U-xX0f^XQgPwdt>Sxu(J}GD+|0ySbg|`WUjj|ueh=h$ z`&^W`I?TFR!)%OVBZG|CM%L#-Ke|x@Zn8CTFA2@=i+isNckA-54tLAI#Ra#GgC%)U zF{X&*?2U*@M$1b^fWD25iV-v#c*Txn@~-DMmy*jkixnGvx7;q~^CK4PqX_U3$Cv`! zgw8d=1&luUq(8^=z}>3nz=_b^iTmS^hxDGv$@~DkhK;&DADC+zpc#Wvsp1$!3wK`w z9pm$+Jpk`xEet+ToNW%^lqd;=W$>y!fJ37~9gM+G?16bCU2d-A^DBa3H`7gKZq#99 zhR^iOcn&jwX~$r78@V|uH*Xp@WEW1MJI~FiJ7K(o3FEzr<89hwW9Ez-rao*G1*uUn zVjaF=rI>rqefL&>kuom+gadhCh3`4-s_M`n^!UKCJ5h@Xv+}oya^Xm^#SIkqP9eEu3eYDJk_OX2<0SG}M5@9X`P zoOJ%bfBV0`x1Z55c6^gMQ+=8PPp62%`Ev3y{3Dr>g0UJwcMw4H?(D~x@v{2O*^ke@ zBrw&aiALaAlPCR`;oITwhrfPr=c(#4mgzioM?H=+1GN&ER-7#D4Q0G4YWOu^&@#K4beXc6lr?R$crHw<8&1un z@OTL{Qeur1@RV@;f-Y&G`~3`hE?9Ar@$x&AnqB|X zI!2IMBgTmO%$xE{8)%ObzqI-p8&C>aer#zwIb8&(Xt6LGyV?@xngmgTpjHBnqbjzdcCdDb{Ucza7+G)4n|}js#H8 z6~(3<>j3Vo8%C}_Rf4*o(MZDYW8VxR^oZ{;vMFN6KX!cLuNuj>^ugyq&T}K5Eb&IEC3lbdYgJAhv2$=-hd07 zT{~tYmi;zpKiZ(fdV>z@4LGGknmw6#l`>yVOr7v&i+&QUNyofHz>>#slNt*?gri;2& z&Rx}4@!f1I9I*@Yt;HSmRlKA7D&C2G6~h&5+ainYD87nC1PY@z)f^QkuT44ymf(5p zs2H|vOWRA^u^XCgo3?he>~5?6o450MbDOX*+k!38ymoYQGEFD&?0Gb9s*@9Z*UNm~ zd`X$Sq)aL=mtMxNe`&X9XNj+;&egTVi%4HEfRp|tlOf6rl=;(QLgA3nk+e4mS<1(l z>99=7bZRM{qL0$l`FC{(EVMhf7LOE9(L46e1)iey=^#`x88trI0huw*3Ne7k6Tda_ zTNl3#G5X_(d*XK$xCHRzwxJz&_M^)9A#%j8|wU}^#oM=-UdC#QgL$pZm%!|t6%!pU%p8F80S;o;(N$R`V+Cvb5(Ku-*f z6f#bPTFg)fOH%S8qT|$O0z;=qD^P!?tpuia z{c+oe*1W-FE1$n-qN zMyKS`w1#i%Pl9ioN$_nmX?)w@uMgk$`aIyxg*>YN3KK0_VSbOUh+)Pa^*^13NqcZv zLRIZm^FvW@o+V>6jOJ<6iWCz&etZ)BQ0yIpcEr=QJ4_S|+1Q1)x6odR&p; ze0)CFHa9&zye7k)3qX3)7lHILa2OYIxC-}+9ydKLtcGDu9M&5H<`WJQPo%HJQuTc} zUCVRx8QENx+%>Bx=TN+QlHyh5QN!<>Q}=A^@V@5dfH zl6RP$_j!!6H7WI4IA!fsx!uxI}nS6Nz1 z{shH+^xhrf;*w`Eu3TBcw=P}qpA5f4X&wr>{^;d>a4Bqb3K>0y5P2IYk=YA&kA2EM zW1KUWGoQ1FvyiiZvo>cQXEn|o&U&2HIcsp%<*dnBi?a@A`<(v-IeW_48fW)8Tjy+mvH2u^=otS<`5>MLSldC>a(B8*3(5C$iR$T4f{?p z6x79&k5EjYx&IX%AAf@3e+#n0vo9rg5`pg15RWdxI|gRxW)N8~E0 zvK%D^SdpdO03QY}uv2OyWNEe?i|YaZ7jmeiAz#=7v+Y{!9>(}I ziSe0od8LH}wyZC4gZnlI7M4^(&dJpSSEd~<3mI{HV0tbbCkW=H#A<8TAFZUo08b_L zs0=mby-r-x9+VWsw{?ouP-1np>#OOe;BgamkAy5muQsXEgW$`j^0d@4xcPk7MNL+R zo;KZlzDXhbB0lg&P{<*L05Z2jAqNz)@8H(<&6*H*4u>Eb6kr(qF7r>tOwfl$0%c??L;jq zG|O00G5`l|ZayWw|J*u7BrOgfiu0MG|hqf+c;D$pCH z5Jz#bSD@H+*J2wK>#h=ON4vh7Vx#lGv!5ZZ^s6lK`EQd&@;Mc0TPeoNxZuyA;0>4~ zDb}Z4gK2)suaYvPKUKatJ!0W-(Ey!5V!u~s9z57XGrWjQt|VUOP7EG%vdY@Hg0j{p zEo*J!vL0lWb@d9$I*t)+q^xNQ|M6vgl2z8HS5Vf+la}?t#ARL1D(lJ>l=W!RvaU~D z*5_GeeRc(9eK~1acP1|DXIW+S`4tq_<&&27(}_#l=2^vcuA;cLiHjSgV~#IxH?zF0 zNnS-IJ&Zn>U=!gQQ~e;U6AHL7dGYr$i~n%6y2l8pvg&zt@{iY>3sb+Iyzmb)3;+0o z3V-K=3codZ;ny<@fAm3xe{-3_6F7eI0`FuN_+=9Mf(w~i81VuRHp%m>r8u^J4!)l2 zLDR4ZP&+>6ox_?d-1aSLVt%8NsuzT=PEa@7m#&+;lh@6sN>tVI?vPyv5$z#!!6&We zJurd6hl-&k#PuL9T+}F$fU(!ept7bIR0_;G#BIt%ElSiPBl8v+nYR?~L;+ogxLY#O z14<+e%^wha{ec2s7k)M%?tPhPof54RYJHvDYOI5Sa>qPkEAX?zHYo00nP`U+?Xc(c zvrRuQ;pZiL20zc(3yOPBCi;{Teab$gAI|C5CALVAJ)^!CB+!&1P+YU%|+pa61Z z8Oz65=cpYpO_%vfnh4XR)DakOlSN9r5aXrP6c}%fg-W~tFzN;il&Ects;f0H z+6&fJqInoCrS2e}3C=tvVhtmv^dLka!5N6QG;PLG*F8BgyRMB&4IxgFL#)Fss{&)r z?7C!&(RGDIho<{jYCSXL(;mCbWCJ&0GYsuH#;Jej?6^U!Yu7WCi||vNje%5 zsEJIjLnbgcnEN7=eVK`-vspTXOb%W95ovTt1}8G>hLz#)D;aNI>Ob%Ro zi}XJvwo|7Us{%8Qc_6Ymh(Ad51_ygXN()9En=?o0HfV2eW~s+8_EXM!O6)qu*7Rl= zZH2SC60L#JbcGtmd&XHqiT8p-yg%bz4VdF-`>!+$L8cK*Q~b8X@0R#|Ab#(Q-}S^{ z5B~0m-+SWsQ}G*0=zbtC>hhwItd8|W5?oJ2!1YA-TTg_(^+eiRPsF^jvCcqd|5{!= zk{4U@VohG$kNpqHi@WmTp1k;!)8t-a+|_9go?Omd${$PX>6L4_&DDpwX4ebe%YE;a zD>t!3Ys*TBvNf3*OfHIl5pj8CB|7^VK|B$IA#@fazDovbxyFc1Q)Dus58jF9wP87# zA6CED*%xPq3w?52y%_a<%HGH-`$rI~wzA4T_^`4MvdZ3{wCrhL6=TZ&p8guUp1-;J z@La>?j1wPG&WPk|%ap1slQ$`OlT4SJbOdbD5wH(7q+8~Il6&Ra-OznwvAvTMb2Ux8 zGfhqg+p6vG^vnqJ&h)GdQlb$-&p?efFN2h53t)-7r){W9V%^;|1#^!j>D#HU6fcFc z@{%Ntj3jHzlA}kduq4SKl|oF3J1z_{zQ_2R_)d^k-N7jWfkde&f?iEc&bC{iFSnz;gDr*srly zuI2N%WdZdwN6hyfyxqiG==P5@364G%I_v+2^%qST-U+IfvtLM$Uw`T?%kUqtGYVsn zUqjy%yhiVaU!S*!iTikC#3kj=gq4Zt!ykW_qe6<_4u1=_UGN<+jugjn*?XS&I|ixm z_#cEI5XL9sTUOI9*c5EngRA+L{|#q=KY;OPhE`jE7zo3lKp50s^Aw-1B~KOBp8HpY zI+MtMF^zo(20v7|b$q>o8+)Vj3#H*)vd|lZTu`B0h#OE~0~qiu33#DgULmjndJ-`c z{OauI(2db1KL=c4XFnbOdieJ2KaXvgY^<03cCLUR2#zJc-Y5J+q(lg~FeXZZ#^R&o z^%d2ESdReZ^aot6RO2hJTodyGm8PzgfG}C|b5&GUQ~TVO06ZxX1P1Cr3A!!;MfvXs?#`se zd^B+}?`IWrMKE=>gQmRCBI;5=9V$`R-8gthqpvAefxh4>c)GSfE>D*NG|_mv-bkJ< zSuYA-*hMs5%ab?Gm)BhBcQYgf^R z2Oqf&yW`prkTKMVvU*gk%teh@pBO+i0yVl?*%7Gjjsj2>UQT*+Ibl&ub_W-aDE1>_ zq<=&}fkz6@-In>73fFH^il;K^8YNvLlDjn^b%!5B4J;FC;EjSBSWyVhXzIr&8x-L# z{XD0iZF<8?`Ko91Dnt;#&prD2R6!4XCeQz)Urv-w7Ot76M6BN?FSWP}1OZws<5*t2NGnVc)KKx9SS;}Z%a<=|7qk;!_xVVvaZ!yw-Aj4LQOzVQz{XH${$@ zl!i-UMbgxY-=|VfD}G;!-)AyEshh3Ii|ag|}sEfzy~B$k&z+<9sQ}k1;(0ErRUhS-&dOroiea! z)P;brxe$ne%5W_*k;=(O7Xq2ho1!6&bS_g#^R9_CT2r^?a>0QcHh?r?Fy-`kkYT5P zVb1w{M104>#Sb-Nh%BoM`Ea)=7#{=7Nql%<7Z-!%TLXouw{44$4XnjzH>fVbze3k+ zBfBHqK!t$!E(k{kO1OyMPo%tyK~mI!iW*dLT3D3fwtW5R2sLYzVvSnA6rHLu{GY?G zhQAwrmm~g_ug`u?V(#JZQ)(hz(idau_rV$ZC0Re0M_50zxE^2@0Is#TK$6JxZ>hwU z9C{+VZW<8}1HXx`aRw&eEy3m~iwNSJvInvk1*1^nh=mF=v3P4vEQ^oKkkQ-552QEe z>AMmp%0`OUv{bGxEk~90=oFH6?FP)XO}jf@zm#Ui5Ykq(R{XDm)KS)4uHl6prysh7 zea{Eo#&^TFxwgl7+igS`cJ}4j-visLd?eEJsW0q|?R}UqYFnS=*oeG({Ft4}_ z(JW8|3<>2$02h3Brc?zcCJ1TEN1nW>$qNTAfPAVBXAl>@*=fSGYOqz4oc-WlUwvS9 zLA$w7O$ZBl(oYK!54umopzAapA~R&&Ld|Kn1p%RTnq(Ms#anJw^+3K`qN7cq9vn(^ zw(*qXPU5mC4w}K^MNd0jbZy%N8@64J4jf&%lHDTLJz|}&>4AuQvXjwR> z8`g0{OtcN5)P_77;x-h&fouZW6k?eC^~7&Y{5nLZ#Uit=O%zAtnUG&cY;YkH@~w}^ zgdF}=^B}KiJjjX%XJSLH1)=-MjUuP%Mv@O%WylP4s^YdzRa^t+^@l+-N_&b=96hI9 z#k+hZ4Em89Zh0LyO_kj1wgabr*9$v+Cv?+<$$@{@YrC6n+pTf8Ua2R3>l;ML?1WAy zT5(-}6$e_q(uGR0UDkv?*}{fm9XsBc>qNU5e&x$Zx2yS;S1U|m%LUq9_0c%O+#+%B z>V&x?6t*+ujXq(pjVoFq)dl9=I6Tvv{2UVRCf?++OiJ}DZs#2;mGaPHhTa@;>;YA%$-9zUj3=yC5|KAA|hVmH6Ce4h29vrcSoKB_in(t$WWDRKqLdNI(zC#BwHk(@dCxEp#6r#8kmhz1NCF73>Kw@=iLZ zelzWVUdf;cL#>!f(GHqv`roX#YH3I)bZ)ZDcX{R7@~+I6^s8thP7O;+2Ry<(2}88LP97Q%qYs>SW(t%x1$H@{hab27;ufkbyj#S|J_#N<0#P0s!3*;m2fwwb!fry>q zu^V;QpH@QKFu-|+s9w$Y#fDpRy#u$Ni`?+Q4cDJmu=h{sqyh6!`Def|;V?i>xGyg^ z;ciFlxypS{pHTwVc{pM}i|pgDS2+gUi02pFj^nkBig5>jnF#H|*rhL!PGrC~_`<+6sTL;J+GNZo}sL^Z*MDThq>eXs)6p2~$H%Jfm)u;!a zuMFmf;T{g~J@*i3_l@B%hhLrj9mM{vniOPs=$K>p`?Ft2w?Nl&tC$n`Cir`l2>rd1 z48%B!7bJ9IfV{@UA4RytSdIctLm@MI`ZZDl{v9FtfKeXG>D22~R^VF4Fa8y*1Ua-8 zlIXv0L9&z-{jK=K#vayfI_1|?&v=Q9X_9juDiRX*A~)Rg10Gk;zYV`a#IbN>srh0W zegpSH>iMg)pMwPSx7f_!q3Iie!+eX){xyk1;T_N;D#q}ihTp_r@fI^C*(AVglb!+z z+)kGd_F(#jO)vB%QJL=~-8EL^Td^3tRa3zSjZ1+YRq-_|I|zP1Jj*U6wC>kP=!gzy zbE3b?Pupv|K5ywgp8Dc<oFykvu;uH#fB+eI7GH@wwHRl#cHKzEjmlC8CjKv9h#A~6jk^s zYua9+<8)0Ex0fI&;0(Qs^ zJXhiA@i+pVeFGIC*Gi|S>^SP}N43z~cPkBU9t2)JS7be_5C@+w!d|6!YBsoOggwK; zqCjQZ$ETKkJ2}hJ?hU*}x)yJRK|cp)vpaCuGz~wx;Oe zp6tJJYrOE<9Ym&YQ42t=OL-JzyWuwP9Cpnwj*lUO)6*}Q(KM{Z$c_r3+ig4OpUnp^ zmax%|PDQO)R&r>#H;JF2QZe>3R4S+Z41N07cM$$;{K3l&84oWyc$I!oJ-p|!i-(#B zf(5ceh2vctB-UcFV%&?pu19X@OEFbXLDM60Fz0l;t`j`#$j`0jgGUsqONSDt`U zhE!KleVzTO52?exsKay_MIEMt^?Ll9_%Cg{*4dw$!?4X!+yxhp6rjd_bE@C+xGS-! z<->N2Q9W$KXD{Tsd}=P&-Je>>#ciYTGmBd4IEPcQafF{TO=wM#&^6bYDg*y$XKDtR zM>|ss!dM~VPRLWX4k^%~PbegRl+dtawwVV%9ynuzJBNOHU^38SF7kniu1cxu^po%# zcFZno(p`&w`jEI!iDhF@s=bRRhkSmW5O%^j{32YfQu0ms*#skpCnqQ79l)UUV(7ZN zODOfe5<(dDO@(g&nJu1Za1XCxl5_UQfUSItp4&&KcZ6crz?NbL;`S5>xl%^}B=0e< zR~zO26moy6$f}rd1B*>$F${+d7hX_12*9DAw46^Z=L^8047cUGPwDg5 z;PcnC&rg;@{Qd`QZH$ng9hmE|pg$qp%N=b6_d{*-NpC<{H6UNDERe7S2S!;aKk2co zJ5|herbbMX52KvNowirI2-yp24s6W?vYRTGK=+;pqm9C`JL}IP_UR8QjgPpu4nswy zk&6}`ld~5Qo}U3e64@LMhOxQ>D~9klpu>3L!+J&F9`GE=JZLEC1=5KIek}*bQ$V)B zBWsa|18Qm8={p|JHC$e6nFgrFqRP#i-5}&nyWj=9Ln^*P5H@c*UGJvTVwLI%_olw5hBXH#=r!aUMwA?e9#mD?fQds>HsM2%VC=g&P>|Ov zIgGT*3(bHBrg2k9reNzF(AO727qsH0b()E5O6jJ;L^q{&21P|h2&Lo^XsYD#1M!xs z>uI@?=%A4DsE=y7Dr7|@$Vxj#9|Ym0lwo1WqEJzWX`Q^Jd17vd6G%v=ORt`%@oIE)Cm9T#8BPwi)AZh z%?rg)vpFfmjsV-uUt!&V>ugRMv>Oqp&(`Fw=^&`tVbD1zyl(Y`c< z{v!LKZyl%eUW%5WZ&24Qm-0Rtnt@mEk_A>sHolwD+eA2nm$+(=f@M2G8&&GWkLC;Sl{Es9$b;ypq#LjP zS=1fi29*X)n?%EW%-TAu&8QqpI&LOD_!ABM`DEZv-}+(T|1j_`HSn*0gn@tXXFBi?KF+}J|A_|vf->+I zei-;a4E#$C{J}>U`29cAf#3f)1OIjQzz2)SD-l_q--wnBKy#xPg}(zhHej6J zB{28#+*Mxpk28oK?|1Yr(Xj^CV}!&Q&FAUOfl@rfNYu0#M9;B2jD0j?f+@;Zgi~ z#=T=fddj2C(g!pqcA)_FM>5Yg`sn-UwF6V0(i-P<;fGmW*aqSc(oO5sTy2e-%LCoQ z)6hiSUK^>oq$-=+w?l4vyIfUScnDb}neRwH=gvMVSFxvaP)m>awBVs6iRXY-JIcXN z*Qpz~KjE$T(SCcXRX1)A|7rNu@V8{U0aWmx+~lp>xzGJv#$Q(QU!qwHm?!+=(n+O* z2bpm4r2m2@F26=InRjR+^VMbF{;$Jd4d0#p7>#DIcYR0(jp&l8FBLu4pPCm*KDo)m z+dopLB@Up15neY>!-jbYubZ!d@FX{J8eJ#xdFcs+@3#?vIO&{mVX5+Yj}U92K&%C- z+}>-L)3;`4iSkPYYKfsoK&^H*P)iIq-&*tlsAYNyQVSF@a7#KGxPtKsDlCcGN+M8L zTtLEbxk8Z`zd89dEJV%ptwm7RoC>W0*k}aSv0fc*og$AW0#OA*li=ANuy}AcG*^NE zXb8@)(@@DIt!_9ly_C{-bKD_B2XWg-FFVPm36R+bB04#1Wqs5otvTE^DIARcmg{x5 zZWVa&FsM0gSMV!>jSV{nDv+JPcPqx7UKn)Uo6kJg_Z{OD_d?XVd-m>D$R34N_Da)A zuWDLpv09X>g@`-67Ztjp3%m;uHC{`Sr}`R`gf}8pwOzMYVJp|LU+vbb_TFwiQEk%% z9mcbBT^yWR8Uq^!x9x#>p!ovAV83AoZc?LW}!+Gent%KTF5dID`3rQ&6AVa zQW-U^RzBZ?oxwy$ILq;;o599^0W~xJqarhLgc8tZ?8c^uG{zF@Jw^$ zvc3B_WOu?Ud!x;fM=9iv7&rhabnEI&*SC)#(^vMJ-G0?x-tDJny1K5`hpBE$%81%= z3@?cRMl%mA)%h64&}?M}<`Zcivrhh(@%j}JPA6`F0$)gQLi^6>E@k|D<|#=X`*F$) zD0hg zxY!gEYAo+EuWi!Q7SPnT1ykE3BT!7GTb7crfxJ z2mNi^kLg8P-oG%T^icyK$RaI2sAWs8ZU}**SBrEy@U-Y^OJM_o87iL=fkZ&=hK*Fua;iL zX;Z`aRXpdvf;sOf>o(~p`_1qz05dZ-YB5hP z-YeXlk+Bw=S)6VWuW`uK4h+(tz0=PziN_BTW=(B=@9ylF{7(Lcir9D2f;B2rE0rWgnj| z!U7eM3z2}xJ8ftmLM#Sy0>1*lxPn;JEB5J#`eMR!m@Vz|E{>YdZ(bpO_v*{1VSr~# za~UAu%|Bld@S4_w7n$*IB|f1it{<}F=eu)>T_;)alQt>M2ZiSS>vr*)ZL72-AojO} ztcxwD(;^QJrhFs3`vmn~+l>kbUdVe+d(Uk{w~pA+sI>l#CapgLY5ienqOr&ul-5Jk z6+PR?^`jt+*v4pfD_V9NklpprL?f1!IJ>)gcJ85D>w)rjukIdrH8)~AqZ!}TGTwoV z2cd~(Hh1HUpQp-+2G9}P9?kB#mfbdFw-=gd{_{M}?xoFl7pm;pX!4g@@@J6zRcNC5 z(aSjb3wu4ENA(}Oha%g2{$YA7XQ}T(Vo6Yrl3hGWBE^BS1b4ejTSo0>M17`3eI}ze@e5lTzeC?1nD+%s1bdOszYqsv zxV@Lp-y?5Fc)K-146%H9on@LJVbUb$s2kI}P<#%ceoZGCbt=j24A|`_w{u{>pWH6w z4%^CYshlgP1DZ}(kOwHvZxd#MnS@+mEA#oeo(z3Wyy+^e0I}0T^89dkaVO2^k4O{Z z#J2km>s{Pq^ZAX@boGn7Z$7^>nyztiU(V;Z^>otp;)Pv1pMORvp*9y|M~!gNqH1jc z{Q=zX!98|z#g89)Y{agv1a8WUEy`jG84iH=>(0rE`50&pTB_4N@}0M(2F(Gj!JRa% zfqCu8$;k|9o)iLtiI+T!T+}=TS;CW(lesvn*qC2m4>7*S)+|<`k^F zOe|!+wRi-2up^bQ0B&Hhi!62|RbNM>?}E-36BZn4Ss%rO1v1>0?>+@Wh|%(oSv{%T zE7|21E2eKPZa}#=)N;cOtg4a4He|UsWV!1}xi_?|H{x>3aC_zaa$mSi(-+*${sOTy z`_|$Pe8G}Xl<#9tu8?YrlH!I=F3mHT;ixy2s9w-&dd z+}moo;Rf~zk;S%UxwmDxRkvDxGI#hicgUj4aQnGhbcr=m3omvbRM?l4{Wid{1SPLUE9N71-p&W4ht`>)Q zADqQXoQrw>KG$OFOD~pQ#4dDR*tD0Twf{wi%&zhxpEqBS*zrZ|Ch=Bv>E4ogPvpbk z*yzeL$~`)x+_N9jHcg&UAe_NeyQ#in)3Pe}lrzdb<&1JqKcldb3R;E=8ozZHL?+Af zbn}ExH}@>bIU`Ru6p|@;Oaw;kz&wIe?18yKKRfiZ&Ez?#3%AeW+h!u0#NR!!0;xht zT7Hs{P4T;B!2$wOkH@+vzwuVp-HllXr$6}b)gS6E)WuEI+eJ5x8@zzMW4(SQ zy~Dkrclgjd;!%)UasDMM?m!tx^l`abVb3GSJ+*{hrXF9injD+shTD6Q6~$F7yo^jj zR`h}6FpI9JHUVAH0?cD+x*{YhirYpTbUJwvq@IYp=(^H0JzyE?1P5-at`%Y;!I+jo zOT_vjC*qtwo`9#Qr1BJ{R}IBK8*mk+AA>J4T2K@RZQxK%gj&o{mKeq98hBJwo>(yr zxI&)<9@RwXI0mIz^pB=7C=sV7tWb(`HgJn3gVEbsyl5$o*&66-Eq(%AOtn~woJf!( zc3cGhh!Sv>ONRgdf&}tk4!<#28EEW>-x_RM=d(9X*&#b%*IAzlBL!H$i_G1Pq`i!N zjf*S5O8g08S@!J%(_-Ad-Ou`I(8!)_Erq(ym_0G0L)hxT+pZ^mu$C{!M718W`w0_O ziH+=c%1rKcrkT3WnPGB|lcKMhW%1r-j;Z^a`SI?o-i%?q5h}sHX+#H2)Z_O}1MGLC zo*jrwAI;}V3(iboE;mz{$rW?OTq#$~P2Fl0o!Q(>VO9i{O1W~YHcX!#*ckJ#UTft+g}L|4HnqIByz*R9LjJ}p2?MG zWIXVZ{Mwz8IhOTsgBi762pi$mpdEzrAu5C!Y%<(bK2Y;Dr)w|+Ex9tDz6#LQhIo9w zPpMtEY8{t=ZBd|hlrt7?M&35IKO;9DO&}zFVY8Drf>9R7dKb{kR5oA>4o- zRzjNy0tb}p{P=5uVzuBZZvz{v)V{Qs={(Mx`XroAWLK~Xx(7c=2(43<}BGkkC z8AT8oGyP0?e%)&ZsO1nLKuSceB1l8L00MFHS;%*1r>o@d65Jl>x{&VSR0-`bOH!lI zmKufFc4BgC3Bhu-_yl;|pb!ikF~Yey0ExG+`f{En|IT{Y49L905h~x}%);!vYHkt5 z<`&RQkzHJjl9q`SL0o8yrisAbBC0OIze3jxQE&w}(0l-HfN&62;6?l?LI4*fUmej` zM?wH6!(*e1)AHP{nT46+v=nB=m60}GCBp|49k2*+5vuRCQDibqY16aSf)LD)bhMxg zDTNJYUHbetHfTRI^}}O+oOEWUf^TCM+)li|LWYEFKra z0(o6hy3sP7WB2wlV|qzyqV35M=VaJi#;)0P5;@oJ?d<{ocD$^HZo^>l27SC)>bOEa z`+!3JpHRfJpMs;Ei3=K2oL;`DFD3-Scl4?Jeu6-P{ZPfYnMK9+=@=@uXiOfpz;AfX zteid@lT$E0C*Q>{%*u@i*|~XRa%+1L&&tOglaDhdpJ)(4>t*ERkIAV%CMWQznUzm8 zCZFz@d}Pnb$SNF@Rcl-&5ohseM!}ejviAYZCyd1iC0{7R13kPg!#zE`Cc_;)yeGr! zdU!*IclGe53~y!ZR}SO-$|1?LeYim4zc?rqK|vDK7C~MTR1-l?64Vnx^(3evg1Sji zQv|grsH39Gzk})E=LcU@dGXrp8dF@~ye)az;kA@fih_Q7qHyA?|Q`{?;s%DkHDn_`E#It0(hn zKwhQd{PeBj{LE}tT{XsM=1^u0nOPGvo1Q6`=5JvJ>Aafb^Qu!`%|xhve7ZO{Jzp%9 zXR^MrGd`;>Wz~^c?L$`6)3dWPGnrMtKR&A#WwkHWBAqdt@+>yWC^c?Hn3oaeWQ5f- z!nzq@t#nxDf&)S(GiF9v!;G?q8D$MK${J>rHOww+>afBTj@c-_5Ai;T@7s9q#rHM5 zcjEgV-q+*%2Htm7MPm);4{c{~Z~Q?ngHxIe;J+PyclP&S!XWG!Vrz!qilh4t16&7w zGyGPkoSyI~sLg5-jxT|2HKPKS#D1TW#PeKaebnRTr{inX_2U{vNf^Kk3Uw!Hv9>b^ zdK@KSXb#A_=pCN#&R1DKdfJOx6}~$=U%is*EYHp*6$%Bh?F7z`;rTWJB>kg~p4Z@N4Z zjZi9A8M^C{_oXTW*8{5<8CqkZ%0Q{-KMb1CQnR1>bQV@lIdv7RWEsP___rqxI@6e+5?z7u-E)*+`*P^Uvzdl`2% z@6=*Pg>Eluk-Q+_C?JS)2O*i26-CJ#SW2w(d!8TnytKMsu^fP&7fQ>4q~}p#EH+cT zr94;K!^ZZ2&N;J?M2MS*OzSK*Q@S-XU7Sf`$lA8Cwk>we&*v9Px5_dGbVL@6R5g1^ z^#J`4zWZ8~&(rcL(nXYRr1oXPNF;PqHWA^N0TEubew{lYcrbRxaiWYFCpk9h9d@S5 zqR6YSqOl3zotvc|zv*%gw{vv+=ndV@S6Sq8?)lAlh|E?QDly}LdCF1V&VAJREBP#o zO_%5Alu1f0sEq}+SZTUcoLA<#q~tc1++uUHaw|=lh%d46Oa551ojbm9uV*zboMIW_ z1RsKB7gAH#ttx{Y*TE@Q#S55IudlfW>%PcwzF1|x+h4=Cz#AaG>({q} z<#wAwaqSXQrc70?vaTBfn7aZ@X;4ad^yI(|L$3}Q%}-aEqAlLQGC}yvN9{RKXNfo~ zj*!%%Eg-xTbgS9vxrO=St&-BS;;OQ-s?fVwvVKyHAdTH0t55lXInFK(7s`cFyif+} zLP?U1j4^(0@0y?0d)NG2mG!!y1i$NroxT%d%TqQhVbG7Gkz>h>XgE&FxJ|ay%B%3Z)S>WIG+U_Pw=-qk+x#TieUuo9X3WCV< zo6jh7dLkFsjdj!|ZBJFSoHgLboIwJ%L^@2%>Wb zK{S41eVH|}f-sJ`QFr|*%y{$Fg4g|+a}vA`+7u)U^Xi5hi(tzl{IRBtaC~hohZ(gc zM2@4Xeq@18ZG$xpKHps^S2Yv>(woFc0JL@1(Ew;e8$$??Z1!U|O$>A?&y`CvGf9;6 z$J+R@$-Xp>nBJEzOfM|V6_rL-KHtXAhecz4e!i?N9rPv}Ys6xjxJRr{NhR4>Nfw(e z&y*LGH;G!avDW@ry(t*qn}Sqtx>n3+>nmy9$?EHmQz30_MLv(GXdp~tAE`#MY>nM# z>uj05VMlC*ZLqs+hdpO6*)#Tn-D97!&lu+{;EUTP-<>U232W(aGzZG(cK}Y%gS**k zK9BnHWKU4%DRg+bTwQt=R$hjuHEgk!q{Rq-a7`$w=c*U6WuBf=NgCXS*I2B}?FLWC zgqqymy%(|-e`nxrsjpQ_M7b5ceQfH}<8vv7b^m{ttw{eU-4x0{Cr!`Rv81S7qweROi;?X zYWTb1cV|Bb6K`xLYV;$#S&1{)!27#!-*FJ|xf3_g^Q3D$!^HP6@~7nQJwO_4_NhkD zQTGlcMF;wn)}2M?Y64)Z8pa+TM!JQpaeK`@aN9xGt>^X!xwVeR!$EE(2))SlUk9Ju zta}GY@S!ldblX!ixo!ym5Hq6l!C+BR?Q5DOt*N36MrY!rD(6A7*>>dv;ZPjG?)$-E+P69-+2_9QI(;Ok z{#b>4KT*iz{p#45t4U0u@=n?Nrs8jD@ugxLp4=Im=1!7EsGT8nZEXBC1@{2zZU|c* z8+$p4jjCt}TS;{X_y=asxo#UAr}L@l#Fadm{iV&IMH`65>FN1l*mI2%wgz1Uaz@AW z1a90(XD0^TL-TI@d6V92$zgbdkU7QPJ3#4&Oj*D zr)meD(K@a`X5syGu_(K)a0>5^tESjHyv%F1m}TrORwA91(od0M%T*}$yq>UKBCoZ_ z%^LHR3=+=Ej@bjh@bvE|i@JOvA6xVuk3>+rMAmg(*dPP=d=Kc&Tv=x2q# zXoG(4!p~i{13x?Lxy5k3FLcc3N+sN*pHD6J85~ME2mBfb0NX~$jL?m|BSNc{5y4j1 z5Nxv-%gR{(R>C5JD~$rCWBJUJ^_71QDN4&gVY(IY-!vbim*0<9k#!NJqm z1kT|pb4T=n+T%+-9(xVwaU1t=Ol(j@4{2Lg1v-q`<7BDXqrBv13uO#*^QGd#!kl)x zZwDZso^(%Vv6?);vsjj(_cMz%IH1Mkwhy3UT~R2x17uxJp*1sZ{Uga&=h-h8<)-eX zZQI@wHMFb&S#>SG>!}8Wc&}R!iajBFw)8AcKC(}I78?;hgO+-h^eC`5{p{pK3T9rw zXMOO*gD_@gB9mv2&*<#okQTf)BJbelGwRgJLBt_7^ho4TMot^FikYWw#?uR2)&Pvb zx^zR84Oh_X5#5N#8EhJ$fL~n!-ys*2QKzaae4&Dnd?EMR5W;IFPYfMnU9pluF}^(kOnRlcO5i;&=@#Y#|Cl zZkocFha+0@6BmD$rb-nGxGe%ol_Ct?LeHo4s8P{yvM~g&}gO!m*GZ-~oUFE`X_13&FTm`!(kV_O=PSi35U$AhiaeT^Z z_FR$m>>8^>uV}#R+J&p8T@PwK=y`?M45}4G9PQRx5DfqvY#-ttf-UNSeGJ;@%C!=s zt&_MCn(EX+1t{T@)?|4(Rkg2K@#4+RV-TU0mnlR8Y%BSZ!OPC`V&H`tx!M7oZWEy)Cq=Kd9lILNKUcTv8GipyxoB)};2-!r# zDz4Oj#(sz)Um?KvJW1MI1mOuDyRd4#21h1VzqnQ2sX%dMiDR!9M?MNC#U9S*5& zE*(JNtTlPtYwNo-9N}#UcM7*!NsP0H9Q*iXuw>~7AXFKjiU?5rMvS^qH7TCwiCfMY zJIV-Vh28R&at-6XQ+Uagb^19)w!?0f!-Lx$4DK9>Kmr{UfrucoMg%s8$(iB0f}o}s>P8Mc z_9eGh2jYlGg+W&E)or#8V|iMueTW${&gw;lmaC5Zp<`2cJ1DG=Cn6kL!o`?p#hTJn z3mUFYLhMmBPzX8mEPXrw;q*1>S*=MJ>^&#fG3U&QZrQ6cmJ#+5)M}dw2?_OQ`9Unf z>K+cQ_r_rlSV{WeJZnum5;&ra!Ef+u`c{bocMt8twB2>yZ0c0x)G*Wy0RhM#?ZfaQ zy*g$|iyESA0kL^-C^nmX>d|q?_$P*k*iwV7=boF8{>dg@YZ1U}{MZ0&`lb=+TnzzN zTE7K=U*;nNxZ#dQu+0hrO>7{7#@Ny;{F%ZV$~PdF+Qb_!(*0GwZ*-q?3!nkytJDx; ze=znJ0e_9ZZ-UouR0?$ZNMMO2T?FiPzG;9pyd4OzSwWy_3ttEt8TWe%G%O;Mj|K)! zAv(YK+3dxwu5>`fLX2EfALaZLH_v&a^B}as10N`8;xJsE`JQOhlL%vX7C^`izGWb! zWQ-=Xl&h(mP<9U|gGIV|m)|$K(e`74o<8Xv5Q%Yq2jo_1Ya3->wc`;H>WoVd+28P# zQR4FXD5%v;3ZD-iZfC*6b>P4bEN&qd0aKtKkWEzlTcY4x<7OZqo%z>aN`= z)m%yZ99AX!kz>oi@;2-`USpspIqqcaX*SD>)#$(IMlwFJ0ecKjiiCC()OXGG$%Ddv z3Osw)t_Q~08$3`0U1_qq-LX-xCQOxDU@-s0TO@jFc%d{INh{1S8{)DFVcA3pAEG06ipbu@8(pT`PM=F$vh#Sn{y2;^hj#{h_O~K0 z4i|!aJAX6({`9lcFTt|zT4-_q=Q=RxZa*A|gj@5kPCuJ}clu}i-5YupiEbPQ=dtjd z_}S)pV^$KL!Tw@%R#cqAI-F&vGAUa?OP4BJh)vNA3~mb^4E_inGnNLPO#Y%)b4DZx zK?l^1x?nlWXx5KrAcKq6tZ?LGt#tSdy?-9lmwB*E$wJ(0cx!vlvX7A!aov&g2uu) zss1;x`5#D@h;b~eDj%fn}aTN|_y$)#Rvz4Iy@v@~*fGR?_7plNe4-87mqUBGb2?As??;hia zA>_|hn#o4Wk1e6dR>8{cDh&{nRT1sG5V``%t_r;!8oiZe7rNnR3+SzT(4F9?OHg7d z19$B00`B$)1VD4P8YRO-RiL20X^wQPe$lhf#Ro=r1*@+T3wwXv>iaz=y1(*+i!a@Ma30 z>$cq+)k%3dpie`UgwPMiW736MT|iKr9&AeuV7#@wveC$-w+cxHrOmiP+7wC? zK~je|39%iCoGnBAq2-VH$f($gZaER+K7wT!cFM9##M_uVvrrux(rj!>vq=S&-Ms@? z$byVBLfaCxT18X*E+pndNHb>vnW1kr4C1i)H1U9Ia@`=DI(eIx!vB_#7KR%^#Q17c zT*kS4iiv^x-LX8;)hH9~k;_c+Xn7%ti(A^0S}@T8(*`X0y~FDNLl_<024${vyORl8 z--!I|Ns^0lYMPYm z^}%*~W&U>lwYmZBhb*T4_37vH|IEKR{R_MzTU_3o_^q8$Dx^G4E}14^_5z|+@vD4C z-_O6p3Ca?*CZ;Pmo2faIhv9K|d}7xNN5mA!sbQQc-ibaktyL=F?g;HrFTyEsd;LgI^>DQRk^w7kA6Iu{b}m@!nqPi!=X2+s@HEJiODFVcDopg!Oi;XGx$!T0fP zYRS@giT46uN)eZlw+~_hWhivJV-d;1O29Sn?fgf~?eNCRA;X#fef}0-zMcPz7U)kP zQGb2<<@^T=*Dc+%`DXr;r8X7b!wG3%nO!wOpsi30wn9cXj{UvB+3oOc);b5V5|wv~ zk7%~^nvDI56`3<<9vMp*10GLIn!J3`idk&&!%|sfF3y<>jV}e};H8wgkxnzzl`<=i zN=q;(;CGhr5&93rVA(@`0Y=6b03GK5`9lXxzQ=%iTz50l1eHKT3)J(5NcX(}|M8F* z7%!mzJX9of--WMx7>S|(s&22^^?lbLU?Fh*0k;Ex3|=E~ttKh{6A~k%VhO}QoxPw| zvwPhL8ip=d`PhuwT%|@Z;94yN;ocYVt`n$Ilk3tN>nO0-7XC?Ey39I?mrxE(7;ysh z&{keXs>=KfU_`WNy!IqF|PH(9gU9OM()>ay&n^kk5kh810vu{D`$iInTwB z=86i`WzvoMVqgu&-M!dCB_hZK7k2jv!yCOoN1Jx>OlqC5)@6r*j6yh+grSrcRSI=& zjbOBHjDhc`2VhJ3{gH^ayYa|$FxrMfxG?ffxL> zmYT?#Yv-0MqpS8wL3bBOo{1hWP+;rM78Q|{paa6DssK+mRMn=K+LUQlRl#N-l-0r? zpj!9=c}08#)0eTwD^OkB4%_B-*oN((U2K%-4A-`Rdkp{s`luaPkkx;X?}0=2CC@NJ z?aZ4ufYnaFXG?t#xp64RHq)yO-QJW-o9RV+ALXs>y!HV7e?;nWv<3S8DP-JAQcc@7 z<#hg7OI=>G(SYlCl%Fp+DmK8g(RJOAIbJp(;f8^ai${<2(c2gP(ZK_yo2mkj9m9$0 zgVc!%PJ(OvvG-67()gkWq<_zp)D;d)ZUD5z&1nyER#sO`F>l3?$4w5LE4Th5C-`{Gk`87A@m0WSQN0oVt2FQRK|1@F)4l z0VEG_*52h$GR}%WK}12_H1_n+p!OaSlqcZ3u59b*$&%e1tkg1m;zc*X@zS`G)?mWo zet`$O3oi$t9a1eQqXq0n0Tpn#sAHy)&LW*S&FsW6E($^%Bfz{OTEiy^?gW|qGXSqu z0dAjh$kTYO_(+VUK%K=epeNZtN_)6`zXiiH*~q_Np#pi;QND#h3Zb6{-&82Lv>Js` zBu-}brMj$Nvez5QB?H>0(#&0+LPT1<4oU%hsg!9mf3Pn3NF1*Vj=6`|gCr+s#hLg9 z0LpwZToXmBclQwEvBB;AfcMlr5o3(Z9`R>Nq!{xvgFSszc2X%$v=|(q2#wEzbpAY$=i~@l>Ad^%Cm5rN8~+< zD2#LmQvS2VZ1B{(gZbid5#8WVGgm{r-2sl5oP6v-V;#0bzRId8Ixj2idmAaq$9D(# z4(_JVg}b@d>9pk#F!H2gm{{Jt|BPN-;m=gxcQx4Cy3o^w|f0;K!#qfM`O7!1Z> SmH>71JO2ehS+u?X!U6y`a1bT{ literal 49721 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 diff --git a/data_svelte/widgets.json b/data_svelte/widgets.json index 21a983fc..ecd0a7e8 100644 --- a/data_svelte/widgets.json +++ b/data_svelte/widgets.json @@ -177,6 +177,39 @@ "maxCount": 86400, "type": "bar" }, + { + "name": "chart4", + "label": "График Часовой", + "widget": "chart", + "dateFormat": "HH:mm", + "maxCount": 3600, + "type": "bar" + }, + { + "name": "chart5", + "label": "График двойной", + "widget": "chart", + "series": [ + "Температура, С", + "Влажность, %" + ], + "dateFormat": "HH:mm", + "maxCount": 86400, + "pointRadius": 0 + }, + { + "name": "chart6", + "label": "График тройной", + "widget": "chart", + "series": [ + "Температура, С", + "Влажность, %", + "Давление, кПа" + ], + "dateFormat": "HH:mm", + "maxCount": 86400, + "pointRadius": 0 + }, { "name": "fillgauge", "label": "Бочка", @@ -321,10 +354,6 @@ "widget": "anydata", "after": "°", "icon": "speedometer" - }, - { - "name": "nil", - "label": "Без виджета" }, { "name": "anydataBar", @@ -332,5 +361,9 @@ "widget": "anydata", "after": "Kg/cm²", "icon": "speedometer" + }, + { + "name": "nil", + "label": "Без виджета" } ] \ No newline at end of file diff --git a/include/Global.h b/include/Global.h index 0df14fe3..278630f0 100644 --- a/include/Global.h +++ b/include/Global.h @@ -10,6 +10,7 @@ #include #ifdef LIBRETINY +#include #include #include #ifdef STANDARD_WEB_SERVER diff --git a/src/Main.cpp b/src/Main.cpp index 0e4272cb..5dadadf7 100644 --- a/src/Main.cpp +++ b/src/Main.cpp @@ -224,9 +224,9 @@ void setup() { stopErrorMarker(SETUPINET_ERRORMARKER); - bool postMsgTelegram; - if (!jsonRead(settingsFlashJson, "debugTraceMsgTlgrm", postMsgTelegram, false)) postMsgTelegram = 1; - sendDebugTraceAndFreeMemory(postMsgTelegram); + // bool postMsgTelegram; + // if (!jsonRead(settingsFlashJson, "debugTraceMsgTlgrm", postMsgTelegram, false)) postMsgTelegram = 1; + // sendDebugTraceAndFreeMemory(postMsgTelegram); initErrorMarker(SETUPLAST_ERRORMARKER); diff --git a/src/StandWebServer.cpp b/src/StandWebServer.cpp index 79be8f59..6ac28403 100644 --- a/src/StandWebServer.cpp +++ b/src/StandWebServer.cpp @@ -9,6 +9,12 @@ static const char FS_INIT_ERROR[] PROGMEM = "FS INIT ERROR"; static const char FILE_NOT_FOUND[] PROGMEM = "FileNotFound"; // static bool fsOK; // const char* fsName = "LittleFS"; +// Типы обновлений +enum UpdateType { + FIRMWARE, + FILESYSTEM + }; + void standWebServerInit() { // Кэшировать файлы для быстрой работы @@ -88,10 +94,12 @@ void standWebServerInit() { // - first callback is called after the request has ended with all parsed arguments // - second callback handles file upload at that location HTTP.on("/edit", HTTP_POST, replyOK, handleFileUpload); - + // отображение страницы с полем ввода для сервера обновления HTTP.on("/localota", HTTP_GET, handleLocalOTA); - + // непосредственно ОТА обновление со стороннего сервера HTTP.on("/localota_handler", HTTP_GET, handleLocalOTA_Handler); + + // Обработка обновления от WS drag&drop HTTP.on("/update", HTTP_POST, []() { HTTP.send(200); // Для CORS }, handleUpdateOTA); @@ -176,13 +184,28 @@ void handleCors() { } void handleUpdateOTA() { + UpdateType typeOTAfile = FIRMWARE; HTTPUpload& upload = HTTP.upload(); - + if (upload.filename != "firmware.bin" && upload.filename != "littlefs.bin") + { + SerialPrint("E", F("OTA"), "Неверное имя файла: " + upload.filename); + return; + } + if (upload.filename == "firmware.bin") + { + typeOTAfile = FIRMWARE; + } else if (upload.filename == "littlefs.bin") + { + typeOTAfile = FILESYSTEM; + } + int updatePartition = (typeOTAfile == FIRMWARE)? U_FLASH : U_SPIFFS; if (upload.status == UPLOAD_FILE_START) { - Serial.print("Начало загрузки: "); - Serial.println(upload.filename); - if (!Update.begin(UPDATE_SIZE_UNKNOWN)) { + //Serial.print("Начало загрузки: "); + //Serial.println(upload.filename); + SerialPrint("i", F("OTA"), "Начало загрузки файла: " + upload.filename); + if (!Update.begin(UPDATE_SIZE_UNKNOWN, updatePartition)) { Update.end(); + SerialPrint("E", F("OTA"), "Ошибка: Недостаточно памяти"); HTTP.send(500, "text/plain", "Ошибка: Недостаточно памяти"); return; } @@ -190,17 +213,19 @@ void handleCors() { else if (upload.status == UPLOAD_FILE_WRITE) { if (Update.write(upload.buf, upload.currentSize) != upload.currentSize) { Update.end(); + SerialPrint("E", F("OTA"), "Ошибка записи данных"); HTTP.send(500, "text/plain", "Ошибка записи данных"); return; } } else if (upload.status == UPLOAD_FILE_END) { if (Update.end(true)) { // true - перезагрузка после обновления + SerialPrint("i", F("OTA"), "Обновление завершено"); HTTP.send(200, "text/plain", "Обновление успешно"); - Serial.println("Обновление завершено"); ESP.restart(); } else { Update.end(); + SerialPrint("E", F("OTA"), "Ошибка завершения обновления"); HTTP.send(500, "text/plain", "Ошибка завершения обновления"); } } diff --git a/src/WsServer.cpp b/src/WsServer.cpp index 7a27698b..2adb1f5d 100644 --- a/src/WsServer.cpp +++ b/src/WsServer.cpp @@ -235,7 +235,7 @@ void webSocketEvent(uint8_t num, WStype_t type, uint8_t* payload, size_t length) if (headerStr == "/localt|") { String timeStr = String((char*)payload + 8); - Serial.println("Время с фронта: /localt|" + timeStr); + //Serial.println("Время с фронта: /localt|" + timeStr); // Обрезаем дробную часть, если есть int dotIndex = timeStr.indexOf('.'); @@ -253,9 +253,11 @@ void webSocketEvent(uint8_t num, WStype_t type, uint8_t* payload, size_t length) // Устанавливаем время if (settimeofday(&tv, NULL) == 0) { - Serial.printf("Время установлено: %ld\n", unixTime); + //Serial.printf("Время установлено: %ld\n", unixTime); + SerialPrint("i", F("Time"), "Время установлено из браузера: " + String(unixTime)); } else { - Serial.printf("Ошибка установки времени: %ld\n", unixTime); + //Serial.printf("Ошибка установки времени: %ld\n", unixTime); + SerialPrint("i", F("=>WS"), "Ошибка установки времени: " + String(unixTime)); } // timeval tv2{0, 0}; // timezone tz = timezone{0, 0}; diff --git a/src/modules/virtual/Loging2/Loging2.cpp b/src/modules/virtual/Loging2/Loging2.cpp new file mode 100644 index 00000000..71573552 --- /dev/null +++ b/src/modules/virtual/Loging2/Loging2.cpp @@ -0,0 +1,415 @@ +#include "Global.h" +#include "classes/IoTItem.h" +#include "ESPConfiguration.h" +#include "NTP.h" + +void *getAPI_Date2(String params); + +class Loging2 : public IoTItem { + private: + String logid1; + String logid2; + String id; + String tmpValue; + String filesList = ""; + + int _publishType = -2; + int _wsNum = -1; + + int points; + //int keepdays; + + IoTItem *dateIoTItem; + + String prevDate = ""; + bool firstTimeInit = true; + + // long interval; + + public: + Loging2(String parameters) : IoTItem(parameters) { + jsonRead(parameters, F("logid1"), logid1); + jsonRead(parameters, F("logid2"), logid2); + jsonRead(parameters, F("id"), id); + jsonRead(parameters, F("points"), points); + if (points > 300) { + points = 300; + SerialPrint("E", F("Loging2"), "'" + id + "' user set more points than allowed, value reset to 300"); + } + long interval; + jsonRead(parameters, F("int"), interval); + interval = interval * 60; // приводим к милисекундам + //jsonRead(parameters, F("keepdays"), keepdays, false); + + // создадим экземпляр класса даты + dateIoTItem = (IoTItem *)getAPI_Date2("{\"id\": \"" + id + "-date\",\"int\":\"20\",\"subtype\":\"date\"}"); + IoTItems.push_back(dateIoTItem); + SerialPrint("I", F("Loging2"), "created date instance " + id); + } + + void doByInterval() { + // если объект логгирования не был создан + if (!isItemExist(logid1)) { + SerialPrint("E", F("Loging2"), "'" + id + "' loging object not exist, return"); + return; + } + + String value = getItemValue(logid1); + // если значение логгирования пустое + if (value == "") { + SerialPrint("E", F("Loging2"), "'" + id + "' loging value is empty, return"); + return; + } + String value2 = getItemValue(logid2); + // если значение логгирования пустое + if (value == "") { + SerialPrint("E", F("Loging2"), "'" + id + "' loging value is empty, return"); + return; + } + + // если время не было получено из интернета + if (!isTimeSynch) { + SerialPrint("E", F("Loging2"), "'" + id + "' Сant loging - time not synchronized, return"); + return; + } + + regEvent(value, F("Loging2")); + + String logData2; + + jsonWriteInt(logData2, "x", unixTime, false); + jsonWriteFloat(logData2, "y1", value.toFloat(), false); + jsonWriteFloat(logData2, "y2", value2.toFloat(), false); + + // прочитаем путь к файлу последнего сохранения + String filePath = readDataDB(id); + + // если данные о файле отсутствуют, создадим новый + if (filePath == "failed" || filePath == "") { + SerialPrint("E", F("Loging2"), "'" + id + "' file path not found, start create new file"); + createNewFileWithData(logData2); + return; + } else { + // если файл все же есть но был создан не сегодня, то создаем сегодняшний + if (getTodayDateDotFormated() != getDateDotFormatedFromUnix(getFileUnixLocalTime(filePath))) { + SerialPrint("E", F("Loging2"), "'" + id + "' file too old, start create new file"); + createNewFileWithData(logData2); + return; + } + } + + // считаем количество строк и определяем размер файла + size_t size = 0; + int lines = countJsonObj(filePath, size); + SerialPrint("i", F("Loging2"), "'" + id + "' " + "lines = " + String(lines) + ", size = " + String(size)); + + // если количество строк до заданной величины и дата не менялась + if (lines <= points && !hasDayChanged()) { + // просто добавим в существующий файл новые данные + addNewDataToExistingFile(filePath, logData2); + // если больше или поменялась дата то создадим следующий файл + } else { + createNewFileWithData(logData2); + } + // запускаем процедуру удаления старых файлов если память переполняется + deleteLastFile(); + } + + void SetDoByInterval(String valse) { + String value = valse; + // если значение логгирования пустое + if (value == "") { + SerialPrint("E", F("Loging2Event"), "'" + id + "' loging value is empty, return"); + return; + } + // если время не было получено из интернета + if (!isTimeSynch) { + SerialPrint("E", F("Loging2Event"), "'" + id + "' Сant loging - time not synchronized, return"); + return; + } + regEvent(value, F("Loging2Event")); + String logData2; + jsonWriteInt(logData2, "x", unixTime, false); + jsonWriteFloat(logData2, "y1", value.toFloat(), false); + jsonWriteFloat(logData2, "y2", value.toFloat(), false); + // прочитаем путь к файлу последнего сохранения + String filePath = readDataDB(id); + + // если данные о файле отсутствуют, создадим новый + if (filePath == "failed" || filePath == "") { + SerialPrint("E", F("Loging2Event"), "'" + id + "' file path not found, start create new file"); + createNewFileWithData(logData2); + return; + } else { + // если файл все же есть но был создан не сегодня, то создаем сегодняшний + if (getTodayDateDotFormated() != getDateDotFormatedFromUnix(getFileUnixLocalTime(filePath))) { + SerialPrint("E", F("Loging2Event"), "'" + id + "' file too old, start create new file"); + createNewFileWithData(logData2); + return; + } + } + + // считаем количество строк и определяем размер файла + size_t size = 0; + int lines = countJsonObj(filePath, size); + SerialPrint("i", F("Loging2Event"), "'" + id + "' " + "lines = " + String(lines) + ", size = " + String(size)); + + // если количество строк до заданной величины и дата не менялась + if (lines <= points && !hasDayChanged()) { + // просто добавим в существующий файл новые данные + addNewDataToExistingFile(filePath, logData2); + // если больше или поменялась дата то создадим следующий файл + } else { + createNewFileWithData(logData2); + } + // запускаем процедуру удаления старых файлов если память переполняется + deleteLastFile(); + } + void createNewFileWithData(String &logData) { + logData = logData + ","; + String path = "/lg2/" + id + "/" + String(unixTimeShort) + ".txt"; // создадим путь вида /lg/id/133256622333.txt + // создадим пустой файл + if (writeEmptyFile(path) != "success") { + SerialPrint("E", F("Loging2"), "'" + id + "' file writing error, return"); + return; + } + + // запишем в него данные + if (addFile(path, logData) != "success") { + SerialPrint("E", F("Loging2"), "'" + id + "' data writing error, return"); + return; + } + // запишем путь к нему в базу данных + if (saveDataDB(id, path) != "success") { + SerialPrint("E", F("Loging2"), "'" + id + "' db file writing error, return"); + return; + } + SerialPrint("i", F("Loging2"), "'" + id + "' file created http://" + WiFi.localIP().toString() + path); + } + + void addNewDataToExistingFile(String &path, String &logData) { + logData = logData + ","; + if (addFile(path, logData) != "success") { + SerialPrint("i", F("Loging2"), "'" + id + "' file writing error, return"); + return; + }; + SerialPrint("i", F("Loging2"), "'" + id + "' loging in file http://" + WiFi.localIP().toString() + path); + } + + // данная функция уже перенесена в ядро и будет удалена в последствии + bool hasDayChanged() { + bool changed = false; + String currentDate = getTodayDateDotFormated(); + if (!firstTimeInit) { + if (prevDate != currentDate) { + changed = true; + SerialPrint("i", F("NTP"), F("Change day event")); +#if defined(ESP8266) + FileFS.gc(); +#endif +#if defined(ESP32) +#endif + } + } + firstTimeInit = false; + prevDate = currentDate; + return changed; + } + + void publishValue() { + String dir = "/lg2/" + id; + filesList = getFilesList(dir); + + SerialPrint("i", F("Loging2"), "file list: " + filesList); + + int f = 0; + + bool noData = true; + + while (filesList.length()) { + String path = selectToMarker(filesList, ";"); + + path = "/lg2/" + id + path; + + f++; + + unsigned long fileUnixTimeLocal = getFileUnixLocalTime(path); + + unsigned long reqUnixTime = strDateToUnix(getItemValue(id + "-date")); + if (fileUnixTimeLocal > reqUnixTime && fileUnixTimeLocal < reqUnixTime + 86400) { + noData = false; + String json = getAdditionalJson(); + if (_publishType == TO_MQTT) { + publishChartFileToMqtt(path, id, calculateMaxCount()); + } else if (_publishType == TO_WS) { + sendFileToWsByFrames(path, "charta", json, _wsNum, WEB_SOCKETS_FRAME_SIZE); + } else if (_publishType == TO_MQTT_WS) { + sendFileToWsByFrames(path, "charta", json, _wsNum, WEB_SOCKETS_FRAME_SIZE); + publishChartFileToMqtt(path, id, calculateMaxCount()); + } + SerialPrint("i", F("Loging2"), String(f) + ") " + path + ", " + getDateTimeDotFormatedFromUnix(fileUnixTimeLocal) + ", sent"); + } else { + SerialPrint("i", F("Loging2"), String(f) + ") " + path + ", " + getDateTimeDotFormatedFromUnix(fileUnixTimeLocal) + ", skipped"); + } + + filesList = deleteBeforeDelimiter(filesList, ";"); + } + // если данных нет отправляем пустой грфик + if (noData) { + clearValue(); + } + } + + String getAdditionalJson() { + String topic = mqttRootDevice + "/" + id; + String json = "{\"maxCount\":" + String(calculateMaxCount()) + ",\"topic\":\"" + topic + "\"}"; + return json; + } + + void publishChartToWsSinglePoint(String value) { + String topic = mqttRootDevice + "/" + id; + String json = "{\"maxCount\":" + String(calculateMaxCount()) + ",\"topic\":\"" + topic + "\",\"status\":[{\"x\":" + String(unixTime) + ",\"y1\":" + value + ",\"y2\":" + value + "}]}"; + sendStringToWs("chartb", json, -1); + } + + void clearValue() { + String topic = mqttRootDevice + "/" + id; + String json = "{\"maxCount\":0,\"topic\":\"" + topic + "\",\"status\":[]}"; + sendStringToWs("chartb", json, -1); + } + + void clearHistory() { + String dir = "/lg2/" + id; + cleanDirectory(dir); + } + + void deleteLastFile() { + IoTFSInfo tmp = getFSInfo(); + SerialPrint("i", "Loging2", String(tmp.freePer) + " % free flash remaining"); + if (tmp.freePer <= 20.00) { + String dir = "/lg/" + id; + filesList = getFilesList(dir); + int i = 0; + while (filesList.length()) { + String path = selectToMarker(filesList, ";"); + path = dir + path; + i++; + if (i == 1) { + removeFile(path); + SerialPrint("!", "Loging2", String(i) + ") " + path + " => oldest files been deleted"); + return; + } + + filesList = deleteBeforeDelimiter(filesList, ";"); + } + } + } + + void setPublishDestination(int publishType, int wsNum) { + _publishType = publishType; + _wsNum = wsNum; + } + + String getValue() { + return ""; + } +/* + void loop() { + if (enableDoByInt) { + currentMillis = millis(); + difference = currentMillis - prevMillis; + if (difference >= interval) { + prevMillis = millis(); + if (interval != 0) { + this->doByInterval(); + } + } + } + } +*/ + void regEvent(const String &value, const String &consoleInfo, bool error = false, bool genEvent = true) { + String userDate = getItemValue(id + "-date"); + String currentDate = getTodayDateDotFormated(); + // отправляем в график данные только когда выбран сегодняшний день + if (userDate == currentDate) { + // generateEvent(_id, value); + // publishStatusMqtt(_id, value); + + publishChartToWsSinglePoint(value); + // SerialPrint("i", "Sensor " + consoleInfo, "'" + _id + "' data: " + value + "'"); + } + } + + // просто максимальное количество точек + int calculateMaxCount() { + return 86400; + } + + // путь вида: /lg/log/1231231.txt + unsigned long getFileUnixLocalTime(String path) { + return gmtTimeToLocal(selectToMarkerLast(deleteToMarkerLast(path, "."), "/").toInt() + START_DATETIME); + } + void setValue(const IoTValue &Value, bool genEvent = true) { + value = Value; + this->SetDoByInterval(String(value.valD)); + SerialPrint("i", "Loging2", "setValue:" + String(value.valD)); + regEvent(value.valS, "Loging2", false, genEvent); + } +}; + +void *getAPI_Loging2(String subtype, String param) { + if (subtype == F("Loging2")) { + return new Loging2(param); + } else { + return nullptr; + } +} + +class Date : public IoTItem { + private: + bool firstTime = true; + + public: + String id; + Date(String parameters) : IoTItem(parameters) { + jsonRead(parameters, F("id"), id); + value.isDecimal = false; + } + + void setValue(const String &valStr, bool genEvent = true) { + value.valS = valStr; + setValue(value, genEvent); + } + + void setValue(const IoTValue &Value, bool genEvent = true) { + value = Value; + regEvent(value.valS, "", false, genEvent); + // отправка данных при изменении даты + for (std::list::iterator it = IoTItems.begin(); it != IoTItems.end(); ++it) { + if ((*it)->getSubtype() == "Loging2") { + if ((*it)->getID() == selectToMarker(id, "-")) { + (*it)->setPublishDestination(TO_MQTT_WS, -1); + (*it)->publishValue(); + } + } + } + } + + void setTodayDate() { + setValue(getTodayDateDotFormated()); + SerialPrint("E", F("Loging2"), "today date set " + getTodayDateDotFormated()); + } + + void doByInterval() { + if (isTimeSynch) { + if (firstTime) { + setTodayDate(); + firstTime = false; + } + } + } +}; + +void *getAPI_Date2(String param) { + return new Date(param); +} diff --git a/src/modules/virtual/Loging2/modinfo.json b/src/modules/virtual/Loging2/modinfo.json new file mode 100644 index 00000000..0841e795 --- /dev/null +++ b/src/modules/virtual/Loging2/modinfo.json @@ -0,0 +1,48 @@ +{ + "menuSection": "virtual_elments", + "configItem": [ + { + "global": 0, + "name": "Двойной график", + "type": "Writing", + "subtype": "Loging2", + "id": "log2", + "widget": "chart5", + "page": "Графики", + "descr": "Датчик", + "num": 1, + "int": 5, + "logid1": "t", + "logid2": "h", + "points": 300, + "series1": "Температура, С", + "series2": "Влажность, %" + } + ], + "about": { + "authorName": "Serghei Crasnicov", + "authorContact": "https://t.me/Serghei63", + "authorGit": "https://github.com/Serghei63", + "specialThanks": "@itsid1 @Valiuhaaa Serg", + "moduleName": "Loging2", + "moduleVersion": "0.0", + "usedRam": { + "esp32_4mb": 15, + "esp8266_4mb": 15 + }, + "title": "Логирование в график", + "moduleDesc": "Расширение позволяющее логировать любую величину в график. Графики доступны в мобильном приложении и в веб интерфейсе. Данные графиков хранятся в встроенной памяти esp. В окне ввода даты можно выбирать день, историю которого вы хотите посмотреть. Старые файлы будут удаляться автоматически после того как объем оставшейся flesh памяти устройства будет менее 20 процентов", + "propInfo": { + "int": "Интервал логирования в мнутах, рекомендуется для esp8266 использоать интервал не менее 5-ти минут", + "logid1": "ID 1 величины которую будем логировать (температура)", + "logid2": "ID 2 величины которую будем логировать (влажность)", + "points": "Максимальное количество точек в одном файле, может быть не более 300. Не рекомендуется менять этот параметр" + } + }, + "defActive": false, + "usedLibs": { + "esp32*": [], + "esp82*": [] + + } +} \ No newline at end of file diff --git a/src/modules/virtual/Loging3/Loging3.cpp b/src/modules/virtual/Loging3/Loging3.cpp new file mode 100644 index 00000000..0a2dcfa9 --- /dev/null +++ b/src/modules/virtual/Loging3/Loging3.cpp @@ -0,0 +1,427 @@ +#include "Global.h" +#include "classes/IoTItem.h" +#include "ESPConfiguration.h" +#include "NTP.h" + +void *getAPI_Date3(String params); + +class Loging3 : public IoTItem { + private: + String logid1; + String logid2; + String logid3; + String id; + String tmpValue; + String filesList = ""; + + int _publishType = -2; + int _wsNum = -1; + + int points; + //int keepdays; + + IoTItem *dateIoTItem; + + String prevDate = ""; + bool firstTimeInit = true; + + //long interval; + + public: + Loging3(String parameters) : IoTItem(parameters) { + jsonRead(parameters, F("logid1"), logid1); + jsonRead(parameters, F("logid2"), logid2); + jsonRead(parameters, F("logid3"), logid3); + jsonRead(parameters, F("id"), id); + jsonRead(parameters, F("points"), points); + if (points > 300) { + points = 300; + SerialPrint("E", F("Loging3"), "'" + id + "' user set more points than allowed, value reset to 300"); + } + + long interval; + jsonRead(parameters, F("int"), interval); + interval = interval * 60; // приводим к милисекундам + //jsonRead(parameters, F("keepdays"), keepdays, false); + + // создадим экземпляр класса даты + dateIoTItem = (IoTItem *)getAPI_Date3("{\"id\": \"" + id + "-date\",\"int\":\"20\",\"subtype\":\"date\"}"); + IoTItems.push_back(dateIoTItem); + SerialPrint("I", F("Loging3"), "created date instance " + id); + } + + void doByInterval() { + // если объект логгирования не был создан + if (!isItemExist(logid1)) { + SerialPrint("E", F("Loging3"), "'" + id + "' loging object not exist, return"); + return; + } + + String value = getItemValue(logid1); + // если значение логгирования пустое + if (value == "") { + SerialPrint("E", F("Loging3"), "'" + id + "' loging value is empty, return"); + return; + } + String value2 = getItemValue(logid2); + // если значение логгирования пустое + if (value == "") { + SerialPrint("E", F("Loging3"), "'" + id + "' loging value is empty, return"); + return; + } + String value3 = getItemValue(logid3); + // если значение логгирования пустое + if (value == "") { + SerialPrint("E", F("Loging3"), "'" + id + "' loging value is empty, return"); + return; + } + + // если время не было получено из интернета + if (!isTimeSynch) { + SerialPrint("E", F("Loging"), "'" + id + "' Сant loging - time not synchronized, return"); + return; + } + + regEvent(value, F("Loging3")); + + //String logData2; + String logData3; + + jsonWriteInt(logData3, "x", unixTime, false); + jsonWriteFloat(logData3, "y1", value.toFloat(), false); + jsonWriteFloat(logData3, "y2", value2.toFloat(), false); + jsonWriteFloat(logData3, "y3", value3.toFloat(), false); + + // прочитаем путь к файлу последнего сохранения + String filePath = readDataDB(id); + + // если данные о файле отсутствуют, создадим новый + if (filePath == "failed" || filePath == "") { + SerialPrint("E", F("Loging3"), "'" + id + "' file path not found, start create new file"); + createNewFileWithData(logData3); + return; + } else { + // если файл все же есть но был создан не сегодня, то создаем сегодняшний + if (getTodayDateDotFormated() != getDateDotFormatedFromUnix(getFileUnixLocalTime(filePath))) { + SerialPrint("E", F("Loging3"), "'" + id + "' file too old, start create new file"); + createNewFileWithData(logData3); + return; + } + } + + // считаем количество строк и определяем размер файла + size_t size = 0; + int lines = countJsonObj(filePath, size); + SerialPrint("i", F("Loging3"), "'" + id + "' " + "lines = " + String(lines) + ", size = " + String(size)); + + // если количество строк до заданной величины и дата не менялась + if (lines <= points && !hasDayChanged()) { + // просто добавим в существующий файл новые данные + addNewDataToExistingFile(filePath, logData3); + // если больше или поменялась дата то создадим следующий файл + } else { + createNewFileWithData(logData3); + } + // запускаем процедуру удаления старых файлов если память переполняется + deleteLastFile(); + } + + void SetDoByInterval(String valse) { + String value = valse; + // если значение логгирования пустое + if (value == "") { + SerialPrint("E", F("Loging3Event"), "'" + id + "' loging value is empty, return"); + return; + } + // если время не было получено из интернета + if (!isTimeSynch) { + SerialPrint("E", F("Loging3Event"), "'" + id + "' Сant loging - time not synchronized, return"); + return; + } + regEvent(value, F("Loging3Event")); + String logData3; + jsonWriteInt(logData3, "x", unixTime, false); + jsonWriteFloat(logData3, "y1", value.toFloat(), false); + jsonWriteFloat(logData3, "y2", value.toFloat(), false); + jsonWriteFloat(logData3, "y3", value.toFloat(), false); + // прочитаем путь к файлу последнего сохранения + String filePath = readDataDB(id); + + // если данные о файле отсутствуют, создадим новый + if (filePath == "failed" || filePath == "") { + SerialPrint("E", F("Loging3Event"), "'" + id + "' file path not found, start create new file"); + createNewFileWithData(logData3); + return; + } else { + // если файл все же есть но был создан не сегодня, то создаем сегодняшний + if (getTodayDateDotFormated() != getDateDotFormatedFromUnix(getFileUnixLocalTime(filePath))) { + SerialPrint("E", F("Loging3Event"), "'" + id + "' file too old, start create new file"); + createNewFileWithData(logData3); + return; + } + } + + // считаем количество строк и определяем размер файла + size_t size = 0; + int lines = countJsonObj(filePath, size); + SerialPrint("i", F("Loging3Event"), "'" + id + "' " + "lines = " + String(lines) + ", size = " + String(size)); + + // если количество строк до заданной величины и дата не менялась + if (lines <= points && !hasDayChanged()) { + // просто добавим в существующий файл новые данные + addNewDataToExistingFile(filePath, logData3); + // если больше или поменялась дата то создадим следующий файл + } else { + createNewFileWithData(logData3); + } + // запускаем процедуру удаления старых файлов если память переполняется + deleteLastFile(); + } + void createNewFileWithData(String &logData) { + logData = logData + ","; + String path = "/lg3/" + id + "/" + String(unixTimeShort) + ".txt"; // создадим путь вида /lg/id/133256622333.txt + // создадим пустой файл + if (writeEmptyFile(path) != "success") { + SerialPrint("E", F("Loging"), "'" + id + "' file writing error, return"); + return; + } + + // запишем в него данные + if (addFile(path, logData) != "success") { + SerialPrint("E", F("Loging3"), "'" + id + "' data writing error, return"); + return; + } + // запишем путь к нему в базу данных + if (saveDataDB(id, path) != "success") { + SerialPrint("E", F("Loging3"), "'" + id + "' db file writing error, return"); + return; + } + SerialPrint("i", F("Loging3"), "'" + id + "' file created http://" + WiFi.localIP().toString() + path); + } + + void addNewDataToExistingFile(String &path, String &logData) { + logData = logData + ","; + if (addFile(path, logData) != "success") { + SerialPrint("i", F("Loging3"), "'" + id + "' file writing error, return"); + return; + }; + SerialPrint("i", F("Loging3"), "'" + id + "' loging in file http://" + WiFi.localIP().toString() + path); + } + + // данная функция уже перенесена в ядро и будет удалена в последствии + bool hasDayChanged() { + bool changed = false; + String currentDate = getTodayDateDotFormated(); + if (!firstTimeInit) { + if (prevDate != currentDate) { + changed = true; + SerialPrint("i", F("NTP"), F("Change day event")); +#if defined(ESP8266) + FileFS.gc(); +#endif +#if defined(ESP32) +#endif + } + } + firstTimeInit = false; + prevDate = currentDate; + return changed; + } + + void publishValue() { + String dir = "/lg3/" + id; + filesList = getFilesList(dir); + + SerialPrint("i", F("Loging3"), "file list: " + filesList); + + int f = 0; + + bool noData = true; + + while (filesList.length()) { + String path = selectToMarker(filesList, ";"); + + path = "/lg3/" + id + path; + + f++; + + unsigned long fileUnixTimeLocal = getFileUnixLocalTime(path); + + unsigned long reqUnixTime = strDateToUnix(getItemValue(id + "-date")); + if (fileUnixTimeLocal > reqUnixTime && fileUnixTimeLocal < reqUnixTime + 86400) { + noData = false; + String json = getAdditionalJson(); + if (_publishType == TO_MQTT) { + publishChartFileToMqtt(path, id, calculateMaxCount()); + } else if (_publishType == TO_WS) { + sendFileToWsByFrames(path, "charta", json, _wsNum, WEB_SOCKETS_FRAME_SIZE); + } else if (_publishType == TO_MQTT_WS) { + sendFileToWsByFrames(path, "charta", json, _wsNum, WEB_SOCKETS_FRAME_SIZE); + publishChartFileToMqtt(path, id, calculateMaxCount()); + } + SerialPrint("i", F("Loging3"), String(f) + ") " + path + ", " + getDateTimeDotFormatedFromUnix(fileUnixTimeLocal) + ", sent"); + } else { + SerialPrint("i", F("Loging3"), String(f) + ") " + path + ", " + getDateTimeDotFormatedFromUnix(fileUnixTimeLocal) + ", skipped"); + } + + filesList = deleteBeforeDelimiter(filesList, ";"); + } + // если данных нет отправляем пустой грфик + if (noData) { + clearValue(); + } + } + + String getAdditionalJson() { + String topic = mqttRootDevice + "/" + id; + String json = "{\"maxCount\":" + String(calculateMaxCount()) + ",\"topic\":\"" + topic + "\"}"; + return json; + } + + void publishChartToWsSinglePoint(String value) { + String topic = mqttRootDevice + "/" + id; + String json = "{\"maxCount\":" + String(calculateMaxCount()) + ",\"topic\":\"" + topic + "\",\"status\":[{\"x\":" + String(unixTime) + ",\"y1\":" + value + ",\"y2\":" + value + ",\"y3\":" + value + "}]}"; + sendStringToWs("chartb", json, -1); + } + + void clearValue() { + String topic = mqttRootDevice + "/" + id; + String json = "{\"maxCount\":0,\"topic\":\"" + topic + "\",\"status\":[]}"; + sendStringToWs("chartb", json, -1); + } + + void clearHistory() { + String dir = "/lg3/" + id; + cleanDirectory(dir); + } + + void deleteLastFile() { + IoTFSInfo tmp = getFSInfo(); + SerialPrint("i", "Loging3", String(tmp.freePer) + " % free flash remaining"); + if (tmp.freePer <= 20.00) { + String dir = "/lg3/" + id; + filesList = getFilesList(dir); + int i = 0; + while (filesList.length()) { + String path = selectToMarker(filesList, ";"); + path = dir + path; + i++; + if (i == 1) { + removeFile(path); + SerialPrint("!", "Loging3", String(i) + ") " + path + " => oldest files been deleted"); + return; + } + + filesList = deleteBeforeDelimiter(filesList, ";"); + } + } + } + + void setPublishDestination(int publishType, int wsNum) { + _publishType = publishType; + _wsNum = wsNum; + } + + String getValue() { + return ""; + } +/* + void loop() { + if (enableDoByInt) { + currentMillis = millis(); + difference = currentMillis - prevMillis; + if (difference >= interval) { + prevMillis = millis(); + if (interval != 0) { + this->doByInterval(); + } + } + } + } +*/ + void regEvent(const String &value, const String &consoleInfo, bool error = false, bool genEvent = true) { + String userDate = getItemValue(id + "-date"); + String currentDate = getTodayDateDotFormated(); + // отправляем в график данные только когда выбран сегодняшний день + if (userDate == currentDate) { + // generateEvent(_id, value); + // publishStatusMqtt(_id, value); + + publishChartToWsSinglePoint(value); + // SerialPrint("i", "Sensor " + consoleInfo, "'" + _id + "' data: " + value + "'"); + } + } + + // просто максимальное количество точек + int calculateMaxCount() { + return 86400; + } + + // путь вида: /lg/log/1231231.txt + unsigned long getFileUnixLocalTime(String path) { + return gmtTimeToLocal(selectToMarkerLast(deleteToMarkerLast(path, "."), "/").toInt() + START_DATETIME); + } + void setValue(const IoTValue &Value, bool genEvent = true) { + value = Value; + this->SetDoByInterval(String(value.valD)); + SerialPrint("i", "Loging3", "setValue:" + String(value.valD)); + regEvent(value.valS, "Loging3", false, genEvent); + } +}; + +void *getAPI_Loging3(String subtype, String param) { + if (subtype == F("Loging3")) { + return new Loging3(param); + } else { + return nullptr; + } +} + +class Date : public IoTItem { + private: + bool firstTime = true; + + public: + String id; + Date(String parameters) : IoTItem(parameters) { + jsonRead(parameters, F("id"), id); + value.isDecimal = false; + } + + void setValue(const String &valStr, bool genEvent = true) { + value.valS = valStr; + setValue(value, genEvent); + } + + void setValue(const IoTValue &Value, bool genEvent = true) { + value = Value; + regEvent(value.valS, "", false, genEvent); + // отправка данных при изменении даты + for (std::list::iterator it = IoTItems.begin(); it != IoTItems.end(); ++it) { + if ((*it)->getSubtype() == "Loging3") { + if ((*it)->getID() == selectToMarker(id, "-")) { + (*it)->setPublishDestination(TO_MQTT_WS, -1); + (*it)->publishValue(); + } + } + } + } + + void setTodayDate() { + setValue(getTodayDateDotFormated()); + SerialPrint("E", F("Loging3"), "today date set " + getTodayDateDotFormated()); + } + + void doByInterval() { + if (isTimeSynch) { + if (firstTime) { + setTodayDate(); + firstTime = false; + } + } + } +}; + +void *getAPI_Date3(String param) { + return new Date(param); +} diff --git a/src/modules/virtual/Loging3/modinfo.json b/src/modules/virtual/Loging3/modinfo.json new file mode 100644 index 00000000..11a9420d --- /dev/null +++ b/src/modules/virtual/Loging3/modinfo.json @@ -0,0 +1,51 @@ +{ + "menuSection": "virtual_elments", + "configItem": [ + { + "global": 0, + "name": "Тройной график", + "type": "Writing", + "subtype": "Loging3", + "id": "log3", + "widget": "chart6", + "page": "Графики", + "descr": "Датчик", + "num": 1, + "int": 5, + "logid1": "t", + "logid2": "h", + "logid3": "p", + "points": 300, + "series1": "Температура, С", + "series2": "Влажность, %", + "series3": "Давление, кПа" + } + ], + "about": { + "authorName": "Serghei Crasnicov", + "authorContact": "https://t.me/Serghei63", + "authorGit": "https://github.com/Serghei63", + "specialThanks": "@itsid1 @Valiuhaaa Serg", + "moduleName": "Loging3", + "moduleVersion": "0.0", + "usedRam": { + "esp32_4mb": 15, + "esp8266_4mb": 15 + }, + "title": "Логирование в график", + "moduleDesc": "Расширение позволяющее логировать любую величину в график. Графики доступны в мобильном приложении и в веб интерфейсе. Данные графиков хранятся в встроенной памяти esp. В окне ввода даты можно выбирать день, историю которого вы хотите посмотреть. Старые файлы будут удаляться автоматически после того как объем оставшейся flesh памяти устройства будет менее 20 процентов", + "propInfo": { + "int": "Интервал логирования в мнутах, рекомендуется для esp8266 использоать интервал не менее 5-ти минут", + "logid1": "ID 1 величины которую будем логировать (температура)", + "logid2": "ID 2 величины которую будем логировать (влажность)", + "logid3": "ID 3 величины которую будем логировать (давление)", + "points": "Максимальное количество точек в одном файле, может быть не более 300. Не рекомендуется менять этот параметр" + } + }, + "defActive": false, + "usedLibs": { + "esp32*": [], + "esp82*": [] + + } +} \ No newline at end of file diff --git a/src/utils/WiFiUtils.cpp b/src/utils/WiFiUtils.cpp index 5b7bf79d..7170db7e 100644 --- a/src/utils/WiFiUtils.cpp +++ b/src/utils/WiFiUtils.cpp @@ -3,6 +3,7 @@ #if defined(ESP32) #include #endif +#include "DebugTrace.h" #define TRIESONE 20 // количество секунд ожидания подключения к одной сети из несколких #define TRIES 30 // количество секунд ожидания подключения сети если она одна @@ -50,6 +51,10 @@ void WiFiEvent(arduino_event_t *event) mqttInit(); SerialPrint("i", F("WIFI"), F("Network Init")); + bool postMsgTelegram; + if (!jsonRead(settingsFlashJson, "debugTraceMsgTlgrm", postMsgTelegram, false)) postMsgTelegram = 1; + sendDebugTraceAndFreeMemory(postMsgTelegram); + // Отключаем AP при успешном подключении WiFi.softAPdisconnect(true); break; @@ -70,6 +75,7 @@ void WiFiEvent(arduino_event_t *event) } else { // если попытки подключения исчерпаны, то переходим в AP + sendDebugTraceAndFreeMemory(false); startAPMode(); } break;