From 401a3b86a8a9fe9c225cbc3289bd742ed27b208e Mon Sep 17 00:00:00 2001 From: helgeerbe Date: Wed, 9 Aug 2023 15:32:08 +0200 Subject: [PATCH 01/12] show branch in system info --- pio-scripts/auto_firmware_version.py | 6 +++++- src/WebApi_sysstatus.cpp | 5 +++++ webapp/src/components/FirmwareInfo.vue | 4 ++++ webapp/src/locales/en.json | 1 + webapp/src/types/SystemStatus.ts | 1 + webapp_dist/js/app.js.gz | Bin 189165 -> 189191 bytes 6 files changed, 16 insertions(+), 1 deletion(-) diff --git a/pio-scripts/auto_firmware_version.py b/pio-scripts/auto_firmware_version.py index 2f15cc95..281899c7 100644 --- a/pio-scripts/auto_firmware_version.py +++ b/pio-scripts/auto_firmware_version.py @@ -18,10 +18,14 @@ from dulwich import porcelain def get_firmware_specifier_build_flag(): try: build_version = porcelain.describe('.') # '.' refers to the repository root dir + branch_name = porcelain.active_branch('.').decode('utf-8') except: build_version = "g0000000" - build_flag = "-D AUTO_GIT_HASH=\\\"" + build_version + "\\\"" + branch_name = "" + build_flag = "-D AUTO_GIT_HASH=\\\"" + build_version + "\\\" " + build_flag += "-D AUTO_GIT_BRANCH=\\\"" + branch_name + "\\\"" print ("Firmware Revision: " + build_version) + print ("Firmware build on branch: " + branch_name) return (build_flag) env.Append( diff --git a/src/WebApi_sysstatus.cpp b/src/WebApi_sysstatus.cpp index fbb392d9..f98b6147 100644 --- a/src/WebApi_sysstatus.cpp +++ b/src/WebApi_sysstatus.cpp @@ -16,6 +16,10 @@ #define AUTO_GIT_HASH "" #endif +#ifndef AUTO_GIT_BRANCH +#define AUTO_GIT_BRANCH "" +#endif + void WebApiSysstatusClass::init(AsyncWebServer* server) { using std::placeholders::_1; @@ -67,6 +71,7 @@ void WebApiSysstatusClass::onSystemStatus(AsyncWebServerRequest* request) snprintf(version, sizeof(version), "%d.%d.%d", CONFIG_VERSION >> 24 & 0xff, CONFIG_VERSION >> 16 & 0xff, CONFIG_VERSION >> 8 & 0xff); root["config_version"] = version; root["git_hash"] = AUTO_GIT_HASH; + root["git_branch"] = AUTO_GIT_BRANCH; root["pioenv"] = PIOENV; root["uptime"] = esp_timer_get_time() / 1000000; diff --git a/webapp/src/components/FirmwareInfo.vue b/webapp/src/components/FirmwareInfo.vue index 0ff75140..abf65d85 100644 --- a/webapp/src/components/FirmwareInfo.vue +++ b/webapp/src/components/FirmwareInfo.vue @@ -22,6 +22,10 @@ {{ systemStatus.git_hash }} + + {{ $t('firmwareinfo.FirmwareBranch') }} + {{ systemStatus.git_branch }} + {{ $t('firmwareinfo.PioEnv') }} {{ systemStatus.pioenv }} diff --git a/webapp/src/locales/en.json b/webapp/src/locales/en.json index b105fde5..94dca388 100644 --- a/webapp/src/locales/en.json +++ b/webapp/src/locales/en.json @@ -186,6 +186,7 @@ "DetectedMaxPower": "Detected max. Power", "BootloaderVersion": "Bootloader Version", "FirmwareVersion": "Firmware Version", + "FirmwareBranch": "Firmware Branch", "FirmwareBuildDate": "Firmware Build Date", "HardwarePartNumber": "Hardware Part Number", "HardwareVersion": "Hardware Version" diff --git a/webapp/src/types/SystemStatus.ts b/webapp/src/types/SystemStatus.ts index 2792483a..4c557858 100644 --- a/webapp/src/types/SystemStatus.ts +++ b/webapp/src/types/SystemStatus.ts @@ -10,6 +10,7 @@ export interface SystemStatus { config_version: string; git_hash: string; git_is_hash: boolean; + git_branch: string; pioenv: string; resetreason_0: string; resetreason_1: string; diff --git a/webapp_dist/js/app.js.gz b/webapp_dist/js/app.js.gz index 3bf6e866052a00554a2e59a6019b8cc5ec5f5d13..3e71d531d0b3fe0d48afeb1877f4b7bd2522eaea 100644 GIT binary patch delta 29575 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 Cs3#u) delta 29573 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 A2mk;8 From 940d1a6145834b58bdb8b30aad40cc188e866f2f Mon Sep 17 00:00:00 2001 From: helgeerbe Date: Wed, 9 Aug 2023 15:47:31 +0200 Subject: [PATCH 02/12] fix label for branch info --- webapp/src/locales/en.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/webapp/src/locales/en.json b/webapp/src/locales/en.json index 94dca388..7d70a01a 100644 --- a/webapp/src/locales/en.json +++ b/webapp/src/locales/en.json @@ -186,7 +186,6 @@ "DetectedMaxPower": "Detected max. Power", "BootloaderVersion": "Bootloader Version", "FirmwareVersion": "Firmware Version", - "FirmwareBranch": "Firmware Branch", "FirmwareBuildDate": "Firmware Build Date", "HardwarePartNumber": "Hardware Part Number", "HardwareVersion": "Hardware Version" @@ -203,6 +202,7 @@ "SdkVersion": "SDK Version", "ConfigVersion": "Config Version", "FirmwareVersion": "Firmware Version / Git Hash", + "FirmwareBranch": "Firmware Branch", "PioEnv": "PIO Environment", "FirmwareVersionHint": "Click here to show information about your current version", "FirmwareUpdate": "Firmware Update", From c06299878b1402b097d378761a2d70be396b370d Mon Sep 17 00:00:00 2001 From: helgeerbe Date: Wed, 9 Aug 2023 15:59:11 +0200 Subject: [PATCH 03/12] compare git hash to branch --- webapp/src/views/SystemInfoView.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/webapp/src/views/SystemInfoView.vue b/webapp/src/views/SystemInfoView.vue index ba36ec36..15b02af0 100644 --- a/webapp/src/views/SystemInfoView.vue +++ b/webapp/src/views/SystemInfoView.vue @@ -61,7 +61,7 @@ export default defineComponent({ } const fetchUrl = "https://api.github.com/repos/helgeerbe/OpenDTU-OnBattery/compare/" - + this.systemDataList.git_hash + "...HEAD"; + + this.systemDataList.git_hash + "..." + this.systemDataList.git_branch; fetch(fetchUrl) .then((response) => { From 40c720aa57cecdd0ec64982509a3f111138396e5 Mon Sep 17 00:00:00 2001 From: helgeerbe Date: Wed, 9 Aug 2023 16:01:03 +0200 Subject: [PATCH 04/12] add webapp --- webapp_dist/js/app.js.gz | Bin 189191 -> 189192 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/webapp_dist/js/app.js.gz b/webapp_dist/js/app.js.gz index 3e71d531d0b3fe0d48afeb1877f4b7bd2522eaea..3995a6ee9d1410274c4f4f76540cd07b3376c209 100644 GIT binary patch delta 44995 zcmV(%K;plL#tVqX3xI?Hv;vMae=WNRKR(^#OTyKOm>g%lE9vwqGfV*mVww?jPi^_W z=a-dZCx=dKLYyB{ffA;>(g6!w+NJO*`F49h6~o$@Vq-xYZ`n;L9pkZM%SLkdSX5=| zI}KJFg<}VQf&{Tf|K42{>z>?>2x&dc`j*L4VqIXhF?XXZ)L69T3y0dPf7bF;mS;K2 ze9BSgu$4C@<}n#04~iNjHOqq1_jU7v^3IKH49YoIsrbb+U}{7V?M16c(?u|{{dr>s z9+sGWU7XX(q224MB^){I`*eV6R}J!MtCy_b|V0xEw8Gdk@ve6htTv)O8J%Ucb|-5$Do zl8lX3i*l9R%Z=fFwl@Iw${&3LpsSBwBRuyn_FVX<@uXGuD*Ik-Y)#4xXmieyLpfrN8?KoDCl|Qu15)iuT-P;yl zXN`Z-R*7dshXn_HH0=gPxWGSRsRoU(X3PEXPXGeTI{M4~XaNP^I8UDje5ZCA$P=7z zt2^-ELxlh_2m*-%D@Q##n>%IzW%dJ*9Jp(51v zzo9b`5i0^b(hq}=uoIVYtZM(;gRdJ*#ejdP4Lp?jF`=-jrOU)eui>BjqP^C+Pb@$lf+Cer|#5}2}03mBEF>JSasjqN@A8wqI7-rTG}XDk42Uzi+{MZFjB ztx6Z<<*U8mTR=xpttx`ha8mmXBzo%QCj7JMi%)hHT5B|9Tl+ip?TS`*Mxy0L!{2}R z>p%?^^L_x&$5uG1`VHQgx;CIPeD|vdnP%ETCz=WdE3@;ek~eD4s?y!b()_q@_qf ztW(g3K=!YQh5)!X7`{@+>O1h0MFlb9 z0~NTg&{|GJkIEm49nBes4WIlz(pl4*&w0c#}p6{wYBjB4~Jme@lO6`R7*S zBbNLqN_MT@RilLemH<)>um!tuzflrD=;f5#VIrpT9k8jtpa1<&7n^_Dig?lw@exPN z>pNgxzu>4D0X8Mn68Pf*uhm|$+QqY8lhAzH#lU*TalbnC#e;mrwvE_0ri@l6o$ zeV2`_Yuf{!P?JAR!Zq@dL0EP9A6l-1@ZkY3$pDo5u&gKW5&xw%KEZ!avsu{#`kpZd zc25v&_ew#}_Z;VyfQ*RG90a*I?2EbN_0Bw43H9VF&c}F%_W7SQ%8e-eN?!1J_7qP2@jjFX#nqcQM{1*5m51K$t zMr@&2XN)Qz^#A+jFh_r?MsNM4=BDfNPc2V~J!#|%0V891F7e{2Gl zrPeO;^f2?>?p%M6XO~XJy?8|i`xwxy+rxoU^`}qm4sC8Yt7PthMZK|6=HZ%8F_f+x zbQ)F%7{Apa#(y4kYF5|tVHAz$7mbqmU4kCtryhcL9QgPZd{j^JbAJj#RS!*ojh&ZJ zAbOTt#I(~Wo&SC7VspP__MyoDgm0MsYeq5FFoQiFZH<4N7y5GpXbx*QcpElGg?)kW&d?_~i zd+z4uOl?@ama4uV-+sSBhdJDX_p3Ygox1$+ZLD}0FOET)AhbaRO{f?pMj-nLix_sc!tb8AuZxh%kSM*m1+%|FvA+uTu&5yCr{D{!;n1F8i>D zm>oBIPoK((`eqmELGdT|WB88S!sfVQLV@xaCSadWz!>qoyG^g*SM{rk>58AbAYYYg ze}Ubp(HE~?fLz5mE-l!1`7h`wASxmyw+37>BDzR(-Sf}c#X0^HEuYOs?XTOh|LuRw zBq&KL*i{0$kB?7E^{6c>fP;K^QYp#lvl`kQd8SU2C0H!BvK+wHR0l;Fc^2&SsEXBX z++qV3yAwk(h8k_FFm#g)D<~+dbPl+IsTJclV6YKC_oEfV$mjxFe+l@deeNTRanC(+ z)xBuIPUzJl>fG1O0HBsCi;StVHbj3NRh$_>qp+j#0Z;G&UrbJ9mjD#IVl^h}Fs$QM z#Omc+as|pVzG7nwlcg+7TVG{Xw90~6gPBglCR5aYcy3=H`vO3qYC08QL{?>P4ITU5 zwcTg^Xvx^HWbDAOT*E>Ol+m36^9%76X3dCNHp+i7V5w~yW3O)yY~}~BS_OZZ^cvLU zz7rWH>JCk6k2aQ#V7@0E44Za`hIDv~^#~w)YVDy+6UX(w+lWjjAR50XLw*rVqEhSR1i6$u zt877)-mFwNuqH4+ArJrsxiWv$Rqj)E1l20TK#;zPY1n9vJHMd10nh_*ASB!=YU`>B zp41{^LJD;EB@>TrvcR;-+yIE%<$s=0;j%3^Y_#Q-h>Hb)+)ercbQYF>ZR&)=C$fwq zs~BTo)<%~ZmgBi7w*qYiM!<%o92#s`H~zd;xBJ0n?N=Cw-Y6;a3u#I+c=w> z7r4iwMimI8Re~FvpWNN|ELhgtbxvKuei_gYvtYvHRqDVy`AdA`Hh_YmwLNYmq?B zVV3CZy*sd7I{~KTDTGCS4Xl#UuSJ2Cv1jLEi!yYK2y6wb8QfSLp_61eSLqnkH z%VI%e!-s{f^D(jOl4i?Cr?k>K%7FZ*DIBQr57%DtR5G+49zYHjJ(l`#mjMo03onO& zQreU7S-wNbK0<#IQ^S0CfI&!wloV=*S=a14Jd6qGp086Dn*6{s@sh5hIItWC4G2_K zb4o5nzsa<>kEw~|n}-LK66)Hkr%%;coc0#^KdbCHYRX{a_Qjm3&FiQ`23(-fbBFH; zR61r*4CgI`!i2qlE`D6p#gF9PA6BNE7Ptc9n7Z$^zb}9LqYba_Xb;?U&(wrPHR=u? z6C>mAn`5oj5L=z<_9hhG$xsUGh}(dspqOfR49PxlQfi1jQPt=mVb`H^vVS(BBObhR5;GW`O2!q*qvPmmPTX^rYL{rP!#`cyw$NGTw#Z2&-i z#I9lOUNj!wdb@!^6gbs#4jj03GaUL)kXj++dLA zSOo_aAiDLBXaZL^P6NxhkBnH{c4g`&E;Qf)a5+qL8S!vJE9Sk`@1Ni)cHIM>9eB>Q zt|Na*vyf-zDN~0*0G3i!r9ubV{AxSC7%MVK9IO(6!xC`jildn7X-V<|vDxGB zaJD$RMe{fDAhgTCX5SY;e8#068v%JR`2l|bBLx$wDlxbU=~Ns;A-&n>h~f{GdMaqn z*bsgu9;Jy}-lKsT`O-0q_hCwmNYtcYKvaLRfqW%zbxTgtXd%`^-F8|4+`;x_&$)UiX&cFae=r5@#EVF&hLqJO)I&?X^m^` zDSka=@dXc5m^y&3Lyv`J@2O^J_d$N}mFTdyx#?@NE-Z)GY#QVNpdGt5&^fRHqxHVo z-lqh6LJjsRwAa8}Qa=zM;+u!p$kJJ@@C>8F;s#pf_Q+}E;i1eQ8|Q!Qg7!{f`{l># z_`#aZvz*^Lkw}CF9Wg%P%AyVrw6$B`RI;Pm;&MI#ap;$my`%I~cD~ z=9yRNeZ`~%N&0?|9ng30?>mtLuSBd(sPt=bef`{nZD#%*+5>;&W{z#6vVZJ*V>`ed z4rJPB5Ke=r#qtejZ-dO=`#~9GuIJ|c08iFkGxSizf>l0u2P1dX+z+lCggwqat|a`Y3F_hC`OYTIp%}FZB8|J^MFQM!PBd2k7F=Ybb1<6#ud`yJoR1J zm!z)2X7UgkR3`3&6ygyTY^~>Eb>{-MRJSGybJsYK;_bM}NJ7z*Xwj zjC5EzdXJBl7;jvEPwY=&+zEy7!FTI9lcLW}Kj?|9oKlsRyg{zz4-a1C`syq5lP`pJ zp+YbOL1vE#j&g1-yHYciP6I+eCFv$@eBw9S;pGe}9D)qcS^!ZU5R=mBo0LXTwjoR7 zOGJNe(Cm@@#D<@(PgXA!&z9+0*Y*(e7b{ew@}u_1#2FtqbN|3@@lIdM3B|8o=sV&k zY1Z&tdS_B4u^f;2?F6i^eT+n!8qZh!^r`+710#$CXOs~Vcjed%)R>zgOgz+#9f@a` z!dw*il6wPg{jJNBO#ZFAWed}VoaR~bZUujAe(vUQjS?!LBA#+f7fFnj{gU_vf*QFD zUqq{4Y)G9}rJmf$&;lT6{t2ZQA;Uz8_7DHa#*CO0A1A_|>-U{^hpqZEl@SFtV}9&+ zE;65S!|O#n-I?fG{gvlA%yLbO$m4)Ql|(%jkxlG9KQD@E`nDzRJK|ZidF!IEgmL4KM}V42+qju!?fo+yzFv=HL0ptN(tSy1<9lEFrNvwVNo(%JgSs{s@0f93s;jlF$knD z$x8hM8j4)IIF><(zV&$4RGy1WkamA5*$yaja}z;Km$-yWd_i4K=+-0?5O+ujt^{O3 zv2u}g?LX0N0{be~Ao^9)PR`K1ObAd<8p4x|>j+)_#l5?%U94W zW8En-wy1^B%bqLMo6wS4JaUlUD0x@kQ z67w^gJz(Y`ijz;DZn&BVv{zx9n~Jz_`wf!YliZHZE&hy#{vP#678D;)KgYQB^3NTN zKU`jnxc!9#~-Fxl_7wuQ>7*qD52utD6s=vUj)Hn3o)8^K`XduuE?nwhWhuvE; zq;WK)hlepSEFrW$X{3Mo$f2tMUvB{(RJq)q9IzkJUH#$V_YMzklcx#d^=}d@J1x5$1Fi|hdPm%lh+2#%-L0*O{Y2b8D~ie#}y zX-wA%m!kP==~6W+wcPRolNtN+8d%Oa{_1^4WA4bbY+}5&IB0(XZBi`MiaCEuAMvxd z6xM)VM&u2GL5Na(;fLft*XsbhiHnIRxp)H;T=r`+C_v3K`H@)Wy&%7F*;2W7#m~VkF*auMuJOL}qcJf6-dS7i)izM%0H5Y(`F5^xWu|WqSW8@M8{(cOenvcbv>CPWQ_=Ab-k^vqYC@~E((y~2;w z0)b>6&oPpTXye2&(P<(Iz?^V8=!pOmAK2Azoqe=s%7K50ALxz)8!|d2Wzxw&KLr{s z3WnJiWbP(D&nI0};RNG>T1#Q+Ka{QQ^R%9c|Yn-#1`KGlJlB6|qSDzniPSy7L%Zxj ziH&V@15@sl$NNbgcU-C8mHVa_O9X=TIFLJx>MEK^oHu!*UQ4%nc-V3w5q=~R zO(J@5k+I>B3+6eR<#qEzX9dqLTg{^Xw0cMH{Nuz)y{ZXLV={1Qj>5TnDd86)Sek{ zr?MO~)(TS|XU*nU#FXPqi`3f4t4DusVu5HaHq|%6QY{KqVpUJoS*e!lNN`L%qL@FQ zK#v+wy?TvyD;|Gdzn|@4yclTb!M>-&QKl3R5=umnH1L2P{9mYDsIXM(V%2LEZ1R}p zmU{-<8}BRVC&y*3bR0!m)j_#(fAsKBK0?C-^oyoN+QP`n^+db}VM|)O<*t8EGK~#F ziqBmj)Xs(iENySLsWv#gEEZ&>$dWUxbLjg%EPR6)-j=HO~R7 z&vh~yiPqhUd0FNMgt3mJsh5c1$~@!dflu@&B8@}2K2Wq#bN)#z7A49lH(furexikA z&aJ{|AsuUq#TAg@RbzvhK$GU#+?p((qumXykz5f#Tw^)%Y$&5!Y6O3_U5KgmF_)ON_MBkTDuh z8u!9_&)r5HQ?UWMTU~!TGi$7QVXFdG6gkG399xGm%Hvhf4oS z@zxu1%?{8KW0}|+uii8%*9OjdvyAzwduJ98RRr5^Y8;fK-pX9$)o<`+DhD%nvT2S=@$ zTg$QILiY*95F|hH(-BL2#50ZB(DAyK1FcS&AKFYMfu%H%;vlicv&)G>x8=;rW{KA> znfJ_{j+sy4hCqMmc)K5B`7}gdYD`)OOu3~HLi;)}>=tIU9b$?F;UgZ)8c7Fhsjh6~ zuD>*1iQUT{h!#;tj&%`jfoLPg2;cG#9ZEb&o`&Mpj~&yZvtsStPaX75ihRnZ z+}^#{p(&#P3Gu3-kwZsgZXG&|_y*%d(2#5%J$-rvjQf9x?Bh!QfDbLq8*_zuV@#LM zi=!>(!y8;wIr_V^22WB0s-cL&rW`)V zM?Ce0b7*ZCHf*pqFyi}2ann=zm`;OI<&}AUpr=nWaz~ZAR=`RX&GQsgxlO;$U|Zf~ zn?5B^2+w~lbyR;!!IS*Fp8vi8iK|q?RDIHQ!xlcdy~@3-RfSqS@gY>f5CN6qgK9lI zz>uU*4{;uvRGH{Uep2av@S{re6Q%ZuvH+n8f{U<};D>HZj^ZnPlZ(P0XOrC7Mp*DAB7&?lC z>q~KZmcqiZml1H;GiXGfRU!tVCHW}2Or3JImgRT(0+RYDJN(;jMU=jn zy7n05qsE;w?rK6eF7y0-kyU)_?|-}5tp9E6Z(HYo|J&BZ<`$)k64oV*3e?j}F-k85 z6t91Nm#NSuaEo^+l+4IS!fhl|#){Ar;MvIv3PUZdgSq)BS(xx7+(4RsOv?{G|2vQDxto(blPDlPV_} z7?WIUk4afl*^r4Xl;!D=STnJeq9*_o8Mjh~wc{!V zW(P8%zKSpp#yuMJYjGsQhAhl3vc{=+iYgqp zl5K<&1^?_=FZx{)_W1Wub-wfa*_mFLB@5#+@GyTfFaMEsjRW~As&?2-RJ(r`XGXH# zhgR)SyohQIKSi}bbq_(K3^I^~nkaqO>wC?#`Y}YL)_a>)FSEy~AU+(VfS6!H+%Y3_ zCkJwjZwz{s3Z{LP1;(+*_8cJbG8I%m4VhhjGl7I6E-FZ^-yNpZ?~Tyy)VF#P!U2Dg z3gKNEge0-0*8JE`scE~{z#M-f6tu;2Dukmn2>oy>D<7V{Ppx-#omP)s!1q?`e&5tyJNgo9Z_h4(2|G_3<#KhJ#2gkrdQXlUsIUD(DzzxDM% zrPB}Ji9EQGnKTy2#6N#hY!w$3G&%gb+5-szZ>ykW1lkw8tDt&awI;yoO6aO$!61O@NwyJ5+$+@RJpo#;30eIbo$)=-32i|Bo00OH(0%wYQe8V>-Z;e!CLDg- z{f$ff6%0a1yo*u+ndj(J+Q{;?b0Z`JuOLyKNW@&#v{fkCX{=8iIfI!t@1mo z_Wo__r{mVaS?hoBvUPIu?nKh(xo?ISlrsmEFUzK&MHM)U1}IGb#*{&jhu?Ees6^&c z1BlPNIf!0s22&s9dMmhfdxkUsh9+e zEi`^tj33V|#K0C~qNv^V*C&_~?^iVYW4dC%xF}Q6n71@fs$X0MWHpR7^vIh5Z|vfv z$g4*L2yA~+6}v~L8E=Ajm0ey&*{ghbf~sxtVo}Nqek6m{gVYL?T0tP@6$Mi?M ze2IZ>BXXk#_4_`n-@`sMt=}I3e?tR%U9F9K7w>=6b?iGv!F+1VE}xgMaJA_Mc5g)2 z$eB{Y%2m6CNN0{Sb%)R!tS)5zLQtU29f-zP9KhLevC5z+VZF|eXJ>^fVg;%xh0;Q` zKeFB^V2+P?1BsGjj!S8U;GEicPBmgS$3Doog{nh&UXSEFA>ZbzDX(mz>K}ySRH*Gp zA4Go;q}_B_Q9N>`i0Tm-q23gN!Ry$3D9xVGZwi5E9vDX;*+aF@|KQ`{QhOw{=K}MC zxE+!VCIOJujpc-}I0&LtBZL-_3!to1ZC-^_C=%Grm+<(UbJ0HMI-621R6+FvFIO$P zXN%~YEExHynj1SbhOiPND9iwgEqq}F$vc0uWH8ZJ%L=Q63{AP}eg1#CVo4l%!@QN6 z-7$0ef)$hbD_=D?sy5?B$@>q?@4_YvK!$X=S{^XdVDR~$Bi})uh6l)@cjY;bMzZRv zwmdr%tP#9r5$nmD+wycGS}1Zre1qjlU4c8^A6hx-@o?&1F^Biu9**+O!5i2Q`CNZb zLoX-ZLJzOJ4|*fsVQT^u12T?_6S1?sy;FQMHb5wtFxp(g4eAcS+094l3}ijyBkqX+ zWq^0OxeCOye24>K-8Jr}#?bdZ|GTREJRi?vBM0_`F0;o5+BN(Me5C0#K*2W%wgUMg z-wwgt&;JqH!%&WEfNcmUyLl0OXfuD~6gL{zosP%QmA>T<3>QTJW7`M-Z3^ISPBaBZ zvpevuA&nCRa!j=x0M|&e}aBH#2&jSmf8VsLaJ z>=~0{a@2chJE^;5PU>SI^c+TBV{kWf?|9emZjg*&s!FC?_RFQQO*em+3?P3a_0Ial z-(9`AGk`rHx#DLSrg3dEX8@WF3yf>eHFjTYW1%h!0ZFpc&+<;#Tbvp|Cv!gk2lOgb z)pv{U=0MH<=YRIDhUlSo7uJkZ+)A188$KB>n@V2wJhOLn)WPsV9XdZuAk!_Ev~^!Y zsw|lzdI+;K5#-%3?IcN6FY;1&L{+Y#PE``XUgqYLLNPG%=+M33#B5k3g^1$m?YR zphQBr!V&J+ICZRGWR$lm28#sUzvgAZ$2b`Tk$U+HviAgezI^fG*^4+1zFLz*{esrk zfqiAIM+jf9(T$^zXVtZdVP`v^CKzuk2SM!YtU0uIF6=|B`WAmAQQFYf8s+Y~of!-s zu{Z1RpAQT)lfeM+jXFN)6MUN^gKIJ_0qq$Z0r@H@1`jCnQJs>&b%pNmu8dlL&Y}ge_^n; zNb~i2A`N!p4sUc?uM5u}p$l%8LE}ENyJ)0XuRrT>lJBjNpShnG<7r=KQglA4*K@7# z@w)PI9ih(}K3+%ux<*G%Lo`M{USHOc!#XzT1CQ93b%cMhQ+D;Jh{-9Jy&vJ02MS+g za*u4yYq3WZa+R(V=LTOD;Re``-MltBWkS8i9BnuS zf)fa=jl7#vbZg<}q5LCudZ42r*VK{?4cBR!IdlSW>&`FnV* zV@(6qY1!l4XVkpIanMz)?T^WLuOWouI2>e-}e4JcCQ; zj;ObgPY2bg&bufbSwSeFVMNt5D6p7)gAV5LI11I@fY+CvQ~8$|Us}ApJmMxTBv)-w z*eHMhTSd4P1fGLo@%fwtsIXD~Scx$E#?I;D@=fc4fJ4$i*cY#l*#?#}Iv_7g+%)D&~LX z11<;8T|xSB{fM*|+a}R8J-?E zKf!teUAD`yb^M_azBrDKSHV)=N{FYqY5Ca(9pcRETRB-1?f=GzVOAVf|7R4<{DLq@ zp7UM37op|kWU_%Z4!JC1l*!w`kO%A1!3qVauI2MlcC1hKcseH0C;wonmgV57j3DZ0 z+&aW!!=Hz$VM0iIM?AVWKO28e1O;=Zd=4DhC_BKK-HJ)BQYbHDrge=!I-ojt( z1F{df?k{*xm{f7^Pjib|uNcP4^BusO9Hs4k0p`gC6FwDOd(MY^t}*igVsJ0+ z>-TTH-1|HCYK`fY2I#1;F${s)xW_p`JMwbMhp+5l1jxUca)&k#XqkVX1xB7Z+z<8| zmT%JRF`f+2TgR=DfHg&jX@<^mNCwiAP{@$DbLLuJe^!DdfTCK?hVcsH9}Vu`ZJYub zAt|Zo595s44ij@iMm^jld0nG?S9?`6-gK(ZUTjy4Z!80|$}~!&Fq{PSt*xOQj;38q z?zI(mU9ao)Z?|B(cMpHh-f!7KFl9l>;8z|sO8l;)(zhd!0>9a^z9l^oWUH>j#d}y_(ui|1d9WRG?bE z)P{pT@JB8)ND4j%4p%_vlGUm@;p^~<3|0Zt20Jr(-Ve^8cpyw}CdG>z^VToX08j8& z)QP^?^``^kL#|Zk0z0dTw>bj`K`&Rzp~grz3~n?1{C}e>Dj6^~bnrQ~XkmL72M97T z1IMYP3k^$!=xKj`=x@9rq}Z62YF)Df$`n#iAC6PGbRLh)q3J^zuXuycaxxeo8qpN%=M7&2ZBNAKV}X2zFA5^#8yvGHIfECii8vGr zLx;W2d(y@W^A29Ius6y#ZB&#Kfp7I~kJG>j{w#mIyHDM#G2YcYPXmh%O!C;8xt9aK z2b$ZN37}eQj}D)fWTKI5LSDTIgelpzOPWY7RD-n8jqL1iy|7qy?wuP4av&IfP7qh3 zxGl}*yc0!0@LtRTDspZ!ji1|ytarjP!5@lJv5bJ9BjTBPV-IXRyMtG}iI4E&l)uP- z%zl5=d>cPpH_8G=W$9W;Jwf0GTojY;bmq1h!bcnp8y4oMKf$oqRDMe)|yxD&TNoB^YY1E>SvOmznYl- zgvZGuLMYsXfR<=uG1(MuM1o7Sl1*R5F$I61lF<3*d<*SQWTkW2NZ2Z7oZ}Cy9!uvr z;^P{ptCA0aM&iQePWBgOl*NIojnHWyspQa~m*PuT?`ulEjw7r+Y4#~LqF^M2%t3+y z5yhe>goTc-fc=gKL97xu!NIue9CaVQJ(Wk@?sN=z=jRx`A{gm34|J4hBqTXbKI(tT zMuPLAjVp)cp)mn?7#+!qkKa@BOCxv(Xv*Q$Rw*y@PKAn!oR?f5F zxaNE}4Xp8)xdST*q@KcqXYv}_uZ4LO<6$sRBd^;eMRmk#%0zT|5tAAkqI>e5&S`eLjk*>)ScK zIy;^}1Qqx5KhR9B2x#gCEN?y{sGX<|cxYZ*wnO>Bb7%2Lp4H`cCxL=u`VMn4@H0zv zG-mJIk+lo?Q{`#RiUDQ6R`s+I;aMMha!T9oY+mlD5_y0CwM>*XH| z=ZEpZU{4{57yuc0&D$h;&)2?F&qqYd!&1>k&iu!#V zXFd{b0@h3M;yYoXl{1SOFUt2ECm(Y^J38g9cwTrwLG?W=%Qhmrm5UrA)$b3VSX%BykZfemj3@Vl6 zf2$2`DQGD(d>MO(f}UaM;Afe^JJ(rt3M83W7*1c);H9_pMUf@i__8>gnc_;7`u)l| zL~S2Wmk(KYIxGT%>X9--RjWEojuB+Or~FQ+g2^XYVDO4O)CM@K%%KTe4zv6f#%l0f zVoHvk+@5)`3r)HnUGsmIEB!2;l>Z`5$6vHf2sMj@J{5WR)@6v-$-av(0~O01He z#e9m}ZZM?hSQKIeKd%m$4*iYtB91}M@4J@(>*%g~oyjCz1rdLp7p{$Cjs;ER zlDse8J-#eGC(P@J5Q{1h#<7AC7{U+z@Sv103C}?_*4sj)g~2WXC#rR02&Cgh0e6*{ ztI8Q0Q+!h1h{AuUd=%jM+QN&A3e9jZfbG@ug@ViPyUR}}uYh~@W2*=wV|sRO6nwP( zE9?cPq37JpNAHXL5A!k_W6QZace@y>6KhjA#^(zm&+dksG*X zNCb%2zcGwmATsDPo?YIJV3+S|#;Y2S73V1(l?NwR1}cUX$+*15nh{TyE|L;kQz+n# zToyqmUsHeAL;b$SW8D#zp!pAdk+K@3X6|gwQ}1X!)5*^mfBt6>VBiikBz-}<6r0hv zd<);(m>Ys;Jzg!?qKEfqHcE)&u!<^9O8iA`a1^C+Hx-d16r(XS`=GO+k_W3hoEE*P zBqbFCK#A$?xk1HDN~Ja8N9tPT-2S|$-i;?bRg-_2rk#LO5$Y^R!XvATw2NUudb2g- zkQb=N63SC<1oGL({0B%SL`Zkj!RLQCj*Ss#E+c0p@(a#fRw@;=TvB4Ya-2ejU!I$u zDQjfJxxdeb@k*N&l}U$dM~DKXaP z;N)i*+%FxF!#NYz$zto!JX8{Q2!eYDBwYv4xNO%#t9ov9SeCb;+t|*#F%8~&E2|gwxc_K zkR=@4&Hk(Lnjrh#F$W2t_=aU&vqGNnoHcf`j-c|UJjBpx@Alf`4NVN9$w>#t7X^;2rDJI;el)QRSK7XQsTQ|3|qgGQ;*;McDSB;Wiar8Rit8f?YF-~f7p(%Wc2Pp; zdZK!6(m&)0B*^*nMy9QXo%Da5-$(19X#^fp5>x6mp4wf7oc58#?kLg{Gg`ooJhDWJ zwUs>o>anUEr^USfu440`T;K4i_!JRZfGV%%rU|n>*x@v%GuaWPly}i^Cb|TWa@T(4 zV|oXz_UY6GqRkzmcBmZb0$40b5V`5(73P;4IGEjxmhqW2+#(M)gL8ihBo<;zBsB_= zkxP~$>9Hm`%FtAGnT?cSF)Icqpm(odw-4IQqe9-(Ml@KX{PlM2tN-=?@qPMj^Zi-- zASbl9)|8)Y#=z}t?@DL~?GNpIpk4uk9}4SJymK!lu;%I6ySMK;xqH`yEy;7eaas@6 zc)twm1aZfmazD~j>0^I-SHMqEnE1$}Hi!ezPa%lYgwx`lx`IVj5q>?EzPFJ3tAfX+ ze)^^9r=mIF_t8la!d21amhR_F*&ZaP zht-S6W~6JIpzgrBMy<%etxMdj6#3WUzEJ~SU`3{5lyiiF1yX;^07*c$ziSH{;igYg z(LuSx%c%o?QcsP;O7VQUhH^9qY^t<1Ssr+*HMNIVgy7KfuMhx;TE0vg+P6T>mDVkv zflfI7{EyH74%z})uw!o0QhO%$CBx@ir^nBBs~!8w_h42+@^bJ6Jf2U0w8R!Xqfgg# zq%gv_K^5L7<&8D&xt^DQ-7(s$_^w7lU-Oa&#RcXKbt4!U?p9ZI3yJPjKdu0*luaXE zb>;I1l!4CJr_lH&m{_i~h!0@Kt7Blb@Uq8B-~QY7%b&j4!V=$#bhMO-45^VPt#pl- z#xEf1;w~qsr-~7??L(yhH|$gOHMzi{nU-#Y{Bz`gb2#edi?u#~d~N;0~b{1fO79G#Dv8rnR(ff?5&hIKngqIeI0I9DR z0urxYKUcXB6SlgHW}o;UNg>F0Y?6XrEce}$Li)@RjR(c8iEqqs;D(GDvi+Y z7E1X1a?aeqlXrR6<8X3!Q~@Ag9aIFOi%AnKKwfo$ini3jJ!%b=Yt=r#*E9b>lJ|ht z6OjI}q44I^SWs*zNOa2uh~#dMZTM_pf67mq$NuMke?SF8BhLhw+!zCnZcM12G4OmN z9O0?66m>!sUWwozhkYWX!eMcPsY{7z(||>>a;rzleJMFU7C{t6niZ1gqcF31p5D*}f=)|i5keuA9kra;z3xp>; z+@t&f5TI~nWN)+A{Q)~N(jrsYr#XzwW%@Lb{a>puGdK5$0L(nV?5dp=>8=C;Gj)4^ zsHv%{seY6{ebfedQH~gx~r8_8%nWBtO`;GT`5{iX{5tQ#w_Bl`p z!-|m3*2V_AqfAggT*4rrQ_NI2h*EqCFcCyoakD}_zKZ?cq$ChQp#J##Y$&yFFX$)x zlD7JrPoLI$Y8%V}D&d9RVyY=O&2RsCgdNare0sXC#K&Hnwa^>GQ23!Oo=g*ebc~cl zeDz@O?BMZsSw;kojbW@Xr2lq~X2;sE)N36V(-<^QbsqOij9$gm2#JBhDKDFc+v1L< zNB^;Er0J48c&tZ}dh~a4lg-3JR})FEA;@$1FIH^MatS&x zADAE<$GPsie8O|`&vU+Sy*|3z_xDAX9!I6$-AsITJd&(Cw|nSvTT1lyj}hS}wU8pe zZYo8A)hWgC)N9E>@`>i^C67<9(=z%*hj)_o6~%Zdan z=sV~yLe?|)vM5c$KWY0?G|AQXP5Gq|jh_`!>A6Vdmp_Lq{Y~n#mrnPr{|;6{`OCj3 zQJFRL?U&;`tIo%vRt#!7*C`4y#a_SAcp zkO~W)@;yJ)@PQIYwhM)!$8X_EaD+0Drc}g!%rQnzTvDO!YJtkZMcZPEFm6io$Qi#I zfds>Hjs<&tDSh*GgP2*Pp(ZV*F8>FFZvU~op#)YAeZs%LrJQPi6m|&PVJid+!oY4G z#px-Afa`PLC+&DSm6zz}iHD-a;&|i`xu*gH{wL)B>^19=4?9#N zR{{oJ6Y+K%e}k??D@bU&2?RS)>iP8!tY)m^MBLPmGcEtkDZD~qE;=Zt-eqsc9aAVG{;kWQ*k~V z;&Y^YWSI&a$_d^BsDTwm;9_MRe7ERd;rSFs*vE;~DwAjZYnp4V!zOlh-cP5&I?3F`F(yFq^jNwX~QA z7%?T0E zSW|>49l?fZMTLOEuw5*m4!gIzqYOAugXJv6P=0F@6qYmemgl!QBVJ$xEd1v3a|-?9 z!*F}+Mf8$S zjh|?#idYRUAj@Nj>}(&Z*Psm93J{LkPrLMSW(U#RY_j%q8#^yqVw`u+PsHbl;U5n! zD6eqc;_V~_C6n}{!Np^CyRnPP>{TOE!bzHcZK~tNYdr?-q`uuf&tK9|$nl7c$#1Og zxc7Z|U_;@}xtODTw|yqVfi}UOXts}?TQcgOYw~|e+)kgS*8+)g*I4QDDk203G}=jJ zWW4>1N(RK|7UssWT@cIxF(ea=5vPM!Wc?^%+4G35g~z9Z@fDf-{l|01m7*H> zd~$p_FP{>>4=WJbAlC6F5nQOR7Sz#y=QAfBUL!L@oV)g1%=&eOT)0cu(p(e~WGF}J zYft3w+Tm%58)@EmQXghVQxm zPTh)ujy*AY-b|*W$TBg1xI5st5bNtG?-Qa#<`BK{*Yl-#ko!M=o` zznFRaV8Jl$ZXOoD$=$8L@&Jrg^HmFS4|DhCXwgM&yfj#j2XzpAx&znQ7g?-V8!`8< zgZZTQTF^xxPk0lAF(a6NJp09=oGE-&&IE^#{5@Pv+MVqWn1`~kG@RFL-;mjX58Opm z-gr#ceA6E#iCs7u8M@7HE@qzjB$#n(Z#~OH#lBwJQGt5+l2$>_BFYvAWMSs}F`#{^%$rp6FGz_CY0Vzi3K(j-wQDn&| zaVk3uE-Hz=3jjBNr1(<%BP~$#Gnk+fJ6{OE77HO8K+q`sMVWafYkg#xL$Q<$_FVQh zPBcd6c~|TDo>X*H4`LT!)g4d32DC@DrP{x_cisGuDJqKck@wvsi-xBa;ZyisS2?QY zRl8Vn=q$D0zY+J(>)`q6h{@}jc*t!V4nPu@`5L)AU z-V5)R8My*~qnLrjHn+5e`D${Qu`Ou|a~P>c?VMSM8$OZj(#05jLNWMbJ#Z4T`6O`S zzxt&#f-ma{RoDF7p~$8HxWQ^n{Cjizs6k`7s;;ItMnuQCr~G%R7*&>|=9WP5ZS)Kp zj_EXSD73Z#@`U%t=qe+r=uu4(JX3FdHYGmZ%P+itD*u?WAow;U($H)kKF%!}3@s#D zO65@*y~%UWx8tL;?Z;e8r2CC}qRad`O2i)S&n+m$fP0sPc zrZ^2khc;@qG%iY#Z^U6SJz}Hr4%Qp|Z(nW)d9A`|*bj{1$HfCQ76VYPspv{-ii)3W zDa$f{3ur9&0O=Pj%WAemwIzt_NLi^>6{c{UXXoAtcJG7$V$YQly1>UH>SGed=WYBC zDi>hocu}Nqbfb=#Qi4B${&|Eitey!D*yEy9@AG16k5hxp>uh-KmE^gCOkn64E+}Se z;apu^^(IXu$6l(-4a%?Fc(M87n{QstmcEgHssOujaZwR^wpyJ-WR2?Hz@>{{wmiqr zoHMi9^q$qb?0N#)eeoD*l-UJZi9Eqtg&e_2xQemL3&mDWKqr&12h6}hSi?9WB`_z~ z6z~G2?WyJGsL-e^HqNKX*ytT*q1hBl%~l~FW+Icr_x5N&vgwsMW>nteA?4} z9#l^Zw-mX|!FqLST73uiZ4F~@m#439qOp0+Tj$l{4p-4Q=Z7J3PhjN9O*XiY=$u1+ zRS2Af?^`Sbz{<)?-!?6rwQuBuHbgjk22a9wRQIaRkJ}2WwAHDe7P2eDgQ6aPaH6Lm zy?raEurdJ5K%DVtmWuas@U6!>7407IQXi9X>u5uDh74ZTejJJ}>Qsqr=2%l7TnRq6 z2=c>1*z>#^nf<8Q+k5&%p(OK{X3rsj?1Y_}Ap!g3!`}J%#>boSr#C;m+?>3gozyNj zqYHx$c+gS}?IiA8FRr_WacRYW*5?z@Ff-XWKW9myF0wSW!FWz_3c+-r(B)uo@hPe* zRc}FVv3tK+2}p9gn3sreC;{B@Aj1cSc|>XAb@c#*$M#QiALm9Sql{%etqJf97ao?H zpczSUCH|v!y$}rnfu>gW8G3%sk$IfvKva^G7gc`4mjZ=4Pz)6hyyupGT1u!OKu#r@ zsu2dvsntI`l?ceS8b=kV{-og^w7}Q++*E^a^DHGs&OmTC)^8t75I>u6{^n3UEyRRv zSpGd1qBqD|M4A?X+{EY--rm$y0I_#TORZ)|?o=ISC8CB4IISXdT4x8QSxMRjw1AUJ zj*z*-4P6;3id9#{G-j`VpnMOhYN;u5NdI83xMz7_ti6FY=A1m@C@=IKwxC~4a?04I zN7o$fpOtBx{y2%I@SpSEPeqolY?;?Gjh`|l%i|QW*3MIJ-~Kk%2*(-`vtZ@MMGb;z z6#Hf%JLSJf$Aq2@eCQBj7TU2fwl$+7AsufIBb*Ckcjh{xuu=#pGUUoXHsDY|%EPvsU~Z;{^Oi_;{Yjk)QF=9AVFXB5y;}sU&Hv=z{ITH#xEn1ttcnqxf09 z?5U{7GV*Bu&F*7altQJq|IG1sQlSLR)2LYHQT=-%VXKo3`CuChM9lNfR=+loK2pvcuUan?I3OWD1G9(&%B~-jO%MfX8*6BFAI@P6rcK-i{ z(UxihL_>Mw;vmpZLFpjWV~(K(M1qjDDIb*IzSnKqjeQ^L*8&U)r%TdpQlvKB^EOPH zWS{GQBC{^NUxh?~QLJ;F>}OrK#)Y zPX`ZzLnD}gNevW;488!rtVaXRn>8s)JN&O8mfYSUmZL=nz|w_v?^HVD{qxabsV9ZtL_*kYBoT-rI5I1CDvo$fWh&YFxUa z!FQtW6L5Dh2hYhuUqCM;9NB&9p0{8oS+>r`wyE^(d#ec@KZk zbx7FseSY+#@`DJX6uCLHquYN>lCt-w)O*;ueoW)m&4JHg9@wuIS}IY=w`hTr4yZDJ z2kp@lrK$sR2uFeRgQ>vKOKo!x8}o7{gp21mDSzrP8~p+KyMqY>Xx-l7o0 z93zkftEbt{noH-MjuKA{Q^O1nt#?c-MBzSl73~nk_|&SwwIb@7L)cVY`Lh2IFy`;T zbpL1EY{c(!E*7==`rvfUA?j)*{x>~;k+ixEyO>b6cBjbLk8Pq?QJ(%7VFHgIpF(qv zL%};_8~d>!$oyVij=rbX{vV`I*pd3al*=&ZE?e+o&F*E`4w^gbtTT&(_O6F{%<~z? z=i?mt;8;*{)_$JowA%W-4|>Ia2Vb8d zHdff$SRMgIL8P&%h1#X^FZSX7XUAcE&yH<1i{Jv6t<2zn-lmhetgAdOuLD<&JF(hu z_CBby2}lfog5@5MrAwo_PPckO?V=>%;L-=Swn=vklWR$U?`W1vH^&MMO!neVs_xYa zhz*a!R?^AY=M#$Y57=hKJ%r7FJ(0Aqp%eBW5b^H{fG!6=_`ru9bOaF1JRi}eZR31& zI2ROi>{+4Apug{D=f0h|X`Mmf+bNdB0gTMYdSdq@p3m0U#4gHUo8OxxFf#^f+v}N( zE$@JFZu&^lS_WWu7FThJ(Fpk3i}P#i7Z7}D61_Y@3!Z%>an&#+K`T``6Bu-s3d zJb4;)uPS_pA99F2boQ&;bC{`1w6+R0%0M->y`TAFDnzQxGL@iQw4MC|YTrh2qKD93 zO);oP4S|>?@xqV4c<3kwCvj20Dlmaf|Fy#uVKo5tDl1iAs~eqXmd2*%?Sue~Qacul z%MhXSTu11PX%Kwot2DrWABKwFCRCy?b%Gx7(w*M(B}{&-!Z@OW9O>ZN4jA(o`ygmF z7%Acqn1BEvhX9(W=6BI2{@um98~VNJAHh#a8BY^JPuzU*1RC&gpZV^_VTO_1n29|E z(%0qK&iI+{W;A@miW2BB^FVGmgh5END<%YKoE5M%X;}J@FQDbwG!s?*1a^ zTcJzFBVPO_nZyA1_`ct*IVxddCRt$CnXr zHodm%$CtW!sdi!4FZ)T!);BOp5vwB?Q+$)0L-l1SRZW?Hqvco?NmPv0>c*O-^^K>( zl$Va$kWxXo79YNR@#5JFOZU|hYrex(^acp)+;!!@T}IA*G&L(be*Nha-`eKw@7%Zd zPoFM1FR8{(7DVUiZ7w?qsiVH!D3+2bm}3b?Va5oUVQvq_+Ky-$L4&2rm*lz^o~atM zAG(|EUisdCoqNYhDyOQrz^fRqWJ_by*K;(9ii>#!{M3o>V3n_;>v;tHREgcgQ*+(I zgr3eL^r8cy&3T0UMEN$pYsUybh7kplI7E3vN~#OWQL4W{ANY1T#pCeocv-#U+vW5Q zoZU^9>SezF>><8Ctm{-RGnQop#1A^kA3#ifyO4W-{ghFV6yt{(#>*v!u^U}K%pks5 zMr3Ez1MSE%+LBbAc#v@{qcw40%Y%%=Q-8wKsVYi!uic?mQstdFya=I3$rbNfG! zV`~S0^qvb|hq$Aqhw2uYD;?ap+@N?fa_VE_2MRH3#+DTlspo{f*TD4NF{IFuqu-q} zPIWOrXm*qyjYfXw9)GC)XXysm6LxgAI*#wFD2>cgtKUfB*KaPd>}huHPsj9-2)A5E z!vi?hSXso2NJU-LMEZPPj4m4NzUTC)F+K}_21d|R%Vymo|M%+lrgTh}P>nzqtW9MI z1%ygsH)Y8w>1l#$0#1T92i?4oM&5~Vrmp)lrt^424}Kh^_QwgY27VE z8Xt)S4k;uhZ3SjDPJBcBq%AMIPQ61Dq%CJxdIoU{T5o!hW>=|aQCDiq`pBgOn6O^* zAj*Y_A_^d51CJVn{yG&54sY@=+0D^^Q1*fd3Su{n10&d}WmpJ1Hnev+XZBLnLhq0o z#c7L*;?`}DzdjlrQM9XXWV9`nn3-;T+(DJT(7C0B^(g($K6k9isYxb*Z6Fa&bX0f_ z3|b=&Nnx_P5W{81cNElG4a}E!qw7-+l?XW`=us%7n=xHipY(dqUOrz7E`-Q`TdY>4 z&zh5Yy7l=u;CfgcM9HASqcmh9AN*L9Bb8b03Nb-=_5D`erYp~k5sFv{F=B zLs7S4txl?j)jIy*zh1mV#~l{QvyZXVX7=TWSSQ1?Z0HG3L(Nr*?d$G8AdpucM&jD^ zaYs>lhM1dCKzp@XAvh+7-(XgMADk!3P2=fNDp)n4MfRVi^pdcsdbTdLut_&5HYP7R z7-?u+@+buFC*f`^VAa0`ixT!2V~0UwSX-a1{=E)LtCD20f5)HK##;P*>a7FSrKz!a zsAm@`KE3A`SGl*#YtAO6-zsz48X1hhN)9vcYxyvvD>L_elQlAuFe|+P>*qm0 zCdWG0HN<3K*+$U8L~j~@;sb-P-ZZSJBAvoMmcU1?FG2}mALdWr4S7T@MOiEfgy!yY zQ!^?fcfvTbo~o~n*I8C#1hURQFygLXl7j7}q+3Hv4% zZ8}f8(Ru1{Ji-_3pza;Q^B6wN8oN|kC}Ynf%T49^Ohhw(ixMNKLq&-d@NH4DGmfYJ z*F3gX^<9tuJONeIUm9S4)5DV3$#T!980t^Wx%0GoYceqW`oq539<1VwZ~PRTcQ?Er z6FtdLdBxp0pr1qcf_u&EL`VT*Q>Vw*czAD2hjo~}r-*=trW(-D^COx=oKEqte!$H) zq66v3&(OkuhVo2OmWh7r`{2Zld2|=3RQQdLn)1HqhhvmWP(+O;SWHIM<|Ab}o9W46ojcPeCt;MP>!@5h{r9;AGLivARnmYps zAs{1giFAJHNIBtGJO%uZP_~tBZN~kweie`6f&oB(_yZr|7pMFSZ!_Uz{5EcQC02#P z+7h5Sj1%U!+>DkrGyuN-9f#7G$63UlNcE@U`FUOVc6n|4`~w0Pc|M~^TULeOTYe%6 zK2>jSG_Ch_d%DDyx|sU+@9Vw66D`K;$G+Z;#l8+I?v4Ne0_(1%3ZyA=r}e%{lUMqQNjVKV75;AR*z-za;|?*)U9^*Gqx zaTmm49wTS`_~w2NnH4wp?A*QFF^|uCmS~HAP3~KlZeOdZwo&xb(yU)O4ZhsZj%N)* zH}(6pnoJ_k_tj?3xb!puoR|L56_?`2G;#jkVaM3G(Q~&>5C|fooQ`hr=$WtmZeAqM z;)z~Dk-=I!p6W(meJB@#VIrpKm2&ZffSaZCtp2 z-na$uCphoSfLd)XD2-8f$m8fsNa}>C3nhE&5vn52$hFl@pA;|{&~U;3(xCExhEYxZS*Aef4u zJA*66Il`as>V9<|LPPo~>Zn|Qigi(j(*ag44^Wj@Msqj0OLUY6O$|FVhO?7Rug@~L zTc-Ui@+=>UeemsiV0sw`1;?%ltd)epl=)(P(<>vF2+X=uj>l24jH`_L&ytn;<(`=0 z)b?*7X20GY3Y6u&F{x=3Ya1AKYt!1Oi{c<$`ni!NSCjTN1m_Yq)?tHxtbepzi)I}z zcQBonU1oo9e0;WG=1r2mvz{SnW^Bp%&(@*k1O^IraW)9cv0xx|aT!mv|0ur8K@iv9 z=gKwy-KEma_D)S>M#4_b51-Gl^*(cay86cEu3t!+sBZb(f1 z?h?WDH8Y0=i!=j8x`W<->pB_nZ8RvefSu*`VsS=PoY9{*8a?>34y$HYH)m;;V+@49 z2JW;MzgC1dSsJASoin)h=Ldk=KGr!}1_3mrhf5@&H#hy2)cAzCc!o|c3TeZv5MSAN(3!(j&c2_+(L zt4Wliz9_VZnJy?_fcwM8#~2$2AMa~5<=xQ3o|&KdRY7?LcnU$$9~xpDxzFjykuooL zlBc|8D?ttLJ3X7rONgscQe-L`W>X9`N0$c1RptiMwr3KkQ_Xm-K;Ib~hZ=H-WLko?HrlNfPGgM3ijXaViGfsFc%kPc{?dXi0vGlZ9aSQWP2gKdT`!6 zg;928AZJ4se|YO5uHKEP^2^G!Xd(QLa28I=kMth^VEP1fBqdN0bun$ zL?ouUAZ(H*9f{+#^Xp%!ZF8|$Xm>ub>nPj@a0!(7xr#DAp1uIVisb_11bPf=XDY0v zrp1hlu{rDR+&%_WlR|-1NM&zlRPYJ7z3>9!so)rY+w*(#-raIqg>sDhOyqE&R#aWa z1Pea@e0RNg#DkefYMJ!jgnE zuSG8*zEE$J{c0kUhJ8C80d&c(mVsu?t`?Ji7oU%p!ODZ~i-{jZpO#q`NeW&>{>yqH zC7DEjJ6Wo%Q&UeNXiftg=MUydsl?cYujY{cwy~(rQyrB-1h|W8(lP()h6aRkBdS44 zv)s-PWk*%8MiOzf6p4i^-B)oPNJYu#D@0;tZC&+2S0)7-U8OAQ@WbFmN zul~n>;T!XC`~BJ8jwhYNs3IqY(0TfQWYdt@+552PM`I_xj17TrUz+~gr)NipM+e>` z*~U7dX*Ow$#!l+%NIuXm&_P6k;yN9SVF2+>K#Uu^mss#L`@2qUk{4wa9JguY40UY4 zhX#d5S_n}aCb?zfI(fv}o0ikZ3Ak($>ZT|BkX3Ys&}hQ5BCb0MFe#dAOWDbPf-Yz> zk*QravTGKPz@AWeuM`YZ4szV4+V|A!ijj!XXSdEK31|!h^rrz4Hb@88gM`OI#Lsn! zS3ptr)HdoLV6GTr2LB8<00>90h|Jk8E;QOe{b-n6uj92LhMUwT1EbH(svxf-nmIWt z1mYWdb9(%26J*FB&k%zjpQo{ZqL8ta#BGFLR35+p?4^rdBjw86>D|k-Ht%-K!3n=Y zC>3Y+`k+KD-}ED*fhkB^wr`MPOZ}T_Z71}CX4eq6bW51U$Lv(hOIAs6&iDn$5Q&$E>!wwh%8m24DOSL1lVJnT{iDSe@* zC87p`TD2`YIPmooHPKOjiZv`i8;?ufGd>dpf%W>T0LFe*I|@UmMCfA7d~j{*rnp5C z;m3^V%$_hl$4D~d*xNd~zi6a8M&5>u^8UzMyPmJ}>_X?qVE<3B0=55&az|x*{?d1d z?XEJa8522aeL*qxTit`|n_WYm0;t2fN;GOMdNM7q>1`lNv-Em@l2wJ{wO-ck73{7u z9Rh~eHL+l;+1vjG5h+k%rgf_fOhFsK>TT#fgWpUmar1M#LLR8iljFwPgC#X=Jqmq@ zb5j=h$Oa@X$QkDz>TMF8J9KMn+e{}ICe z&IvMoy$_JBr?>9N0FKsrbJha(6Z;?Gbm*w5m%2l7pM8 z_1Uj+**yP2OPRfyQSrl7L_1>@|3CJ zg(5W%WTZ9MA^GJ+B2o#-BVsDl!vXaJB6Wt)5(!0LOUG^`T-1pqN=qZbl7wDk5x5&_PH32ykRd_zt> zn!j)k1*9H-;4eB9=b(N~?y2d8^N&k(mV;`_;VOkg`Ij{0>LG`*tGf_QhIO_ptMY*k zCTHJ(kOBP-zvd{ANKk*<>vZ?v>C_YOZTCPuRa45PS;c;vPc}C3|DQcsbLl+`p!dw7 z_s!%E7ZKiElJMpt!q1i@{ETJa?t$-yK3;rMis7UmRm0pDhV`{H zHl3poK%H#Z2m9Cs8Tv|3bzw|;N=%9%s*jaqlvzN#TCid$bFICcU{G6824_*@2Pr-r zJ7d&;I3G3pg=LfKS`%ta1Nq3!xuY)&3^(WA;Rr$iB$%9wNQV^O=YG22`;&dQPbl^c zbmv$d4r8Ww4kWd;v4MUs6MEiLr)UVcl^$b^FT|&lf?m*m@5c6niJlG3vk88Jeu1H+ ztH1g5X|1PBAf!4y-8T=01IG>@jP-!(PUFjeTRfR28o`!<;_AWP*@246G8$ZPaQ`#| z>jai=?N^{3X!trt`=IV$;E4672zyK15l#n-eP(&ct8=4AjZjG|-We)`__T}D&Gvq$ z5$fL8t#Cv<0R~3n^r$fr0j35zvy?-*X3Eh+#+2^R;JkRPr2gZ;wH>=LZ9P!7YG&KR39$3T0by`NBxM;^D>&G|c z##=C4P}RgS_WX`h$di_|WikoJN|hQ^Ip$4g2mAqj#aEZW7&oD=6uT*O-2!t$LutX2ICl{ z-d!_%hsBOS+loD(Qfza7(x>XGg{~;{`keQ~(P_+zbcC_c@Q?XlZC?(ki{rm-1?gct zg8PQ*aY|DPge&j>yL2W|38q_trlbBe(0V8-CefspzWdm|){Z=b+3_3gb$UOY22-Lw zGn8t-Qi$GHdw~9?Txx1H6N6{%t9jSj->89GsLbNo7#Mk+CBvY9YxneM2R=jufUShW z4Eb!j9QACvn0QOkd+524U_dQkR&xp(iMN2TR~{b-zSv1w%E?^=hrMwbbF)#6q?a1Q?#gP$yWH266m8RbS%*gB=P;3gHxxrnT` zB(OFeHe+{3N#_NBd}T?8GF6N63{M%t%QMtnbGVP67LMWpr`vf9e;o{M74td93|?%M zM*gr&Evhaj=I7SxGp#OVq0cchp>?`Q11@0wr#%GT8iPCemh3>Uxp1je2mZj%z_AL(Wv$rzBcW3)h zy{-x;`x7(w*#l2-Fs`MGS%+No7U5nH{v*8>*cr+Iz_Ezyjg%sedtRqsnDw`(p|C+a zG_nXS*d*ykl1WnA9K~x52G_8@lEc_P#@$8&s;#Po)J})3-7t%`m{+=Or?oG|^y4z^ zFzzwft~zgjt{?d^#nYe-E(PoqY;->4BSnbzEP31l#95{^rTMI~Sdx8MTL+bxzbq~U z@qi#QL_CUNZ%l1N;buBzJtfnIzniiBUO6Y=@6@VE|6=ODojna}&8PR3M!G6`fgu$!D$sg?YdqEO@%i=)@b zpb#Ig)!1C`uKY6Gv1>)pg0Lk+I7(kvL7}#7*=9?lcwnOYudoCrwJ?Id(%zXTmF93y}lqTzU1*OM?c#5ah zKGdOqEGA!2!?pZga!RM@Ode4E=C&`eD4SAnKQ01AAof_M%8E`si?=~TL7kwg_nxwq z+B)Owj^^Py!|76C|2Mk1cTx3#d($W_x#mZ6blR@Zc+#`csHaTO1@Cidl4rGX&xF?_ z-5&Tq5Z5Ukc;Jul^7cmU;k#b)2osG(2Lg_NFn6)*!6FwpJctN(Xp*RflD8;uL{bfL zXMX7|94wVXn<(Vc@K1Bn3=78mK-$lB{m@PcP-wvsaF{*e&8hpJKRFhlRoYX9&~^c@ zl7xh3nHrSvs71y9wPco5^XX(Kn@qr-3K$$t3iLhdR?O1yA6kP@>p_Q*#22%PUxht? z+}2_aCb>z0t-tcnjMM^PLz@b%s5$(_V>pOD-GP1U3rb}$@9v$l`JDH(-=t(`5Q4&| z<~vsXRAPJw7_9G3?gvZ&Sy%+iYjO;p(Q0@t? z@Gqf=%WZp5EKvYqWm|-UL7}ub#6!N98yo&;MOYUVVBp=ANBnNw1ZR~-{7Yhg@jp7s zL4Z>5$W++?i%e_{HqQ>C6pZ?bH%>ZrQgtse6$clU#H4weh}dDPg(~niCL<636(O@kuru+SX1vVpA@&m2O z>}uOJ@m>*ml}xf|cv=z4g6ErmB=%6!r7@`hqoKy(mPiRLa}gAiV!_teAsIP;bl7Ty zKINQUJT(>@K9Q4a8*`y08bq$P6ZG{2Y{y;-b|(Kx8H{%JKVK`N#UTFt8~OzZ`!Y*I z_Sz79Y~Vy1?f@Qfr?uWm;=zTw?pepZ8`K!LOLX z%sSFf3uSrRUh|OJCXih3v+JOHRf2;>bCo!Ld&+k{i)J6McJ)uH+ zp9AaZ33^vi>WP0(ZttX~cMm!@|2PqB{U8bihAthuV@5Q3294v`fiZ22gH|R$B-oYw zvTn)k;?`0G(|sYTfZJ zJJF?YZ9;7MNCp_-5x@~TUODU>aC1^`ZqHGr6$n;(vFmG{Hj6@-JB(iNhBYjK0jX2b zIYxED|3zw~uhb+%6%ObgbKQp_zcIn}gduAr(COMn8Q6f5WieELa}u@+WhCt5XcNbI zcAf{S6Q&Pydep}#{m* z3TZY|A$JwkFXUux&J^Idy1MF3;tLnhub1j_gJPC8UTnVj=9^cu^)~1^9Rr#xf*kIt z)q`0YYglVzW$sjeHa(|;I7-)(7{g~_N+oKtewPoY%`L%qf@g)C?E zxe2~SPhkn-K|GC!TV<=(G3E{|-weIN#kvr_1eTp@2H_ZTur&feXZeK$Wy{i1Ji$Px z*s4m0R6&C%E6xR0`}|k6I(N;_)2cVr8^df+(HYt}pC*rgH+xUum%VX0NoLplyTkW3 zZICk92lf+S6XG_gOLX%@vWLj6Np*z`~+8>LSgq5) z2Lk+eRR|z~C-~o0q5fATUD_mYW?p9n`q+pIS>#a$e2Ec*rkBoeC4poKWgx7h%`R zN8e)S()>}gxA(lI3tOvIfm=T_FM@i>hrRRjjgL3uPj7yBxjA_~JC$8-hI7Fa8MHk0 zy>RaueOVuaPEc%pJ^?*0gEI~1aN_Ams*)jT8xG=rWGyU&uSJrWO;h377M|d&S<**h z^zzn!aOj8_>@6V)*w%(UUF(vSDHlGsr#=c?eq`cXDAK&-&LkIYf;I}# zjmM*kF|agBt&#D!()Hehd-4jU?z%1ig~;$&flCTvum0hwgk7ysy_Pr~QXX+(il68f zGBHk!A>=W2xVcXIpqu-tHSVg@`vrq1H=H4V;t2?{mGBjwYMa?pZ5#u(l!KAo%^C&< z%2-b{Feb(^3QqnM!9MHto@QXgOU6F7Sq$|H?E@f1E_qDW0C6iY#5(GS4W~##HT%Q^dr7 zI!{Af!=^}3;d-8o`xB%C`r-l-bufcNIyH7KfY9o0%ipwSv=1cV?GO6_Szl^_OrmR! z!s9Gtin*1LSa#Z?A{nP3TBl%_q17dmpkTg|ABYN3MF^NciUMLN8Ty=X1ux@>r2{_) zSpM&syJedAf(vuoItS!58g)SXpgec{lE(K(*Y=W zX%YF>>M;4SPPaB4e+;_pQa45m@;EL_Am5KEgHuO?vFK}V`e+{rJdV+xde0gE^a{*U z2<6$){+nGxQ&@2aZLX+T=6%$VuqBBG@(X$~5){dktn?4zvyG`MSZ+^zA1`u$>1jHC z>(}$!CzRy~CPSOR(^q~Jpxq)8o8S16fOd09$PwBH!C(0nB9=ZXF`bB#_66fRM}RXf zB&Izx;NdSk+)?gZ1Q@iPuZvyXV`Erdpr+y2wr$(C?WD1j#zuGSq>atS4IA6GZQE=x zdC#2rGCyMP4{KfPetw3%)a!H;I3$wu0I9W|a2@h&C)9CQYPnW9AAEDoW)fuNo6ip> zP6YZCLdOGF^ZqBlFV_GJ?p?y~9<gTbvZB5q#fpj~yB4!L*=DoHmU$k0FJ@_QZ)yR`sOJJME&c!j&4%S(+$EY2m6Ysq zW~`xd!?tjkp1jmECB*zHY?P37x=~^iK)AWa0~Rdgl^`0}g(4rJm3B$%y|VZq5(cDh zxhF+B&RJ+~+;vGFiRbBz-)tBVVvMmTLPKqzjRu2aI_WGN@g|vZ!bXv~Z#}=!TW}ON zW4Z4{M?f<%Wd!(pz3pmV4M4;8h}pwb|3s`QO0Sdkx!qhxzT`ph@wKs)^-g4slt4;{ z&bzS?#Dgggi*(-wAf4AA;}RSc8{w5BoM{+GBX`izH1dL`=11Tw+6 z0v3lh+054j=oVGbo|!c2+`7{l@pRok+D4Cs5QWe&Gl0CG;wRb1L+f?kAy~ienfJMY zA`Ibb)y5*xjA6V~rEI7O0HX^eJX!5t;WzS}2fG0+j`ryt7hbKg4&!hUEaQ?7Aa{jh z?vOI@<8OBG+6Udw_#ktOdGeUA4fRAfkWQX7c0@8Q_wG*XjY7`au90(=mFUW;_kfti z&cyN8CBP2OZOr=BPWudgd`Sqe_WCv_D{<#S&Aa4xKYH+t8m>BV0a^hH;KZ?mGT=Tm zqd^!tGey6w#^Mbs1QDZm+s=}a=m@W!e`M6M8uA&+m^#(Hz_5%&hNH{Y#Pz&{fuhC1ZMnSrTmk4Nlv4#xoOT~;*1>@2+J9T+Ma%3j0>z ze^Dv1(J6B0rceoqBn}7d;rZqVBq*}N#Nc*8A$5~5HeY%3=Zdq+mM2~x3R*>=KA;T> z!!*4#T8nV(pR~K?m5lF-)6CD*$M&i02oxJO3DCK5 z;YbTd$1?5qUb%0d^R!Dv>;#bA`JJRR#s<&tfT*%mP^0nfT3d#~sytmZ!IMG1>*gZJ zzaGJ!H@{B{&~a$lwGy|qAaWqZAT(j&9J^^5OITn~k6cU<1zxyf!V3U79XTV2w{c;I z#Xl)Fz^dbS>7=|y2#lNsbZhN0i zuXE5|t=XEjNEXv;uh$W!rLe%7-u<6)4fQlt8STG|{tr2Z2Y&Q~eU@ob*arrtP+L{S zli(V4r@-}Tnse=(m#Fo-kYO!4$Og9ZYyCMoCb)6^UKF%ro_Teg21S zvDB=7{NExmVE(M-!n!m6G|^8ks>A)&W9PEG4U!=txQ!6IOgnjDuRc)W>Rtgskvmi6jBQ(|R0J$>| z(3aF5Xjd@wXc-0nDAq~LQbZ9vt=vPEPb&MWMEl{rdI&=x6xEs-Gw=F4&IbbdwF%71 zFWL5I+oA1&gdq~NEJtmaJ?~+&^6vU;o@H;rJ1MEw;BZ3-*Lzbv<_=2pz8Vl0SSX&A z@4yK?DZX0)29uQhUgp3*BCB+;fJ3(VoC0MUPUl->R z6cFX^dyNpGnt+~FT^wlf&~la{^N*#jZ+edGbpsUqrt>iK9-UmQ>eXa_#>J;{1X;G2 zDtlt-c4blA>cPiK6StVkT20^*8DC`_A(8oj#-jc;ISHZ`Xv~%^CIP{Za;Cv3!Si2+ zOxzSdj=Yyi{p;p`!Ep{YY3b3()%!FDcIdenXC?jPlzO~KAUDf@;|x12OS}E|-0v?~ zKY49&;M^ycMXzc2B8y2dR_qyX?vaOBafflYf3em#SAB@-)B5aA5ps|9YO(r-ayQ|D zNyl$ejest(75an;IZimvV+i=;;4~s>Ptr=wdFA3+M2HAfc)?Zl8RAc^P!yUlH5r1# zi%;iGA5ovuh;i?kG&CR56+%vpj;o|5R$S=cY1|ku!K@H1kD|N3({6sSgMr@j%l(uh zpUSH%%s{!|E{dBo5fVop`VK$(EQPcTu#z*Wo`;~4z-+fOw~OASn;+%R%N`c(BQeik zOr96c$+Q2{bVL0F9H+~K zl-@HRb;mB8IxbS6h0vS%n3kHD9ltqO>hI2ZsA?G>yI#)OR4~;=y&;ivT*CS9$zY;9 znUcEPD0RdsU%8zs$iz30?qrlL_fw%WiGA;j4a)`^WS5l8v}hHoi!M4wz1gBHi*8}!pq$o7PEVQ=3fpst@TfPhBx zc5+AZkXV1}LY&A)t7kcw7UWZhoTrEuL59m3M^?Ij7!<_*_yduSznG!Jt{0Ez`SXqy z%llV)PNqa}*00nh+~fs|D8o!ND}H>F>&N+H(nE*gsWL0hNrnhMtm8HeK;;7?6e$C+ z3n$n~89u^Dy{q zeLd)OE0{lSZX|uw>D|jgD7-VOJG?B`u?Hk@i5-!@WcfRP8^^Q+e4k$F^i_KC zz+VNxXMnD@H%_G8+z_GUNxI#xR>0Q;HEC49lDyn8q4AD;wtNxbs0324CNXvHQ@hbX~+JOhfv~*lSy9@qnY2YIENeCF? zyFT8PHBr?^D+jccO(iJ`);`>=0SRz9KTv0U+uASfk6tS|nkreJVVu8SVR%A2iPY}F zkVI55NM3W5?E!)PkL=2rmrkLEPXW@7pX`u-^puf=mwKpef75=dV z6HH&}dZmuyYvp*-_$_o=Zy*BoT~@gm7RTrciAdP@#vF)^@{ae#y>UlZsP@9q(L&jb z;HHz*;9vL+0SOnPmGsY6zb~q%q~<5(wdz^43fOWu@2Y1X(MVWif-c(S&<1AjYHm~h z3|g%0jFZf;7nY%wZe%(%-)Hym+>fPSc^bhsOHB}XIx9X z6Wp8vA}EYuX8ARbOeDsTmVZU!Q}IhhTUX^p0{5sPX1?x(?&=o&44(^&p)*}Vc3MaU$?ow)Uh?_@xCrF zsREa_;Nrj_jN>F5*W_kl>JKu9E13?H+-yd%MZDyuJLm9TLPrb(_PomcscD|;@Vgvn zCU(C?whG&~=*soc{Oa{q_J+T*)&D|h)QbFnJbPF1;ZQOvGEd?RIqm(h9~0~ zZPpXBwLAVg>ljn)ogH4MM<$KU;9i{M$$_#XCupSkr6#ijf${yS4{-U%-jpI~ud+Jg zvZV(9m(ywDQ}{Dg)^{si%Tcj2h5GX3VhY$53GI%A@q89T*-YHiV?7E$p9UdSK7r>RnnQkF|J-^ z(Q2jxa`>hsa?|(M(7?)ciGk1~I|=&0fy$Cw!iuHjqq;%o?D`-fV}$8Q3De8su>eU^ ztVnwaJ;g$p2~iFheG=XL;EQZ5eq7xBA=#(9aRF4fDTmE5);q5*tH?&3qt2p}$A%1B z{3s5_3AmKGa6knbfkq8HZudWIyk%QagL$0!%{nz#jh106HAo&mA8znX@emf|qcMJC z_P9&`sK*N`Vm+RFFN{3*#Rs3~t#c>;v>4uGghe^FxGL}PxDNFFX2m{bP{@=Va&j&3 zfWJ~rVeEGNvG3I;Z8L=uDgoj39~Sx62%QHZ7fd%EV4umBoRbr$wnFsyKD=aN_FKLk z+|xU0^H?=plR@dvNG|K;336U(yORpxjH{5d*t^jd zw^|C1wUmCs-YI}jqL4FtZ=Br}1V0ShRoMQws*H?!{!~ptZSJvY8n_~7z>5tidsXyJ zPNB&^VC(hHrIDEBZ_RWt?+6Yx-dE^Y_0uc$_)_-G{NKt)**wJ9D502gw_1X{t|bx- zc=(H!g;aCFepLfdSYKw1QnHGG)3pT(sv?={6VL-S89q_(k$`hKQq58;hZs@c{)ROm zPRl@r50Z~cKk8Exx*_XW4M78SW}{r+I~s!lyi8O@DW~lmJQYSO+EH!Fhu>HTK;Y-@ ztq3TBEQ3jT>~2oSw?xV(d*~-dUH`%sh^tt7=TodCK4Zh6m?f z!)cTSRl$CLTi=}Ru5$CKp?%a*80&EB?#KA0lc}RIK!oKItMrYRL(ar`?hk>JKTIir z-`-i(O6o%($mWmB7(e_Y%80se8`YEi(|N`nYq|ecS|Xb&$Bwd)ZW(03%5P^LzJAO> z@W&BuEhTPA;W4-30{axzf$Rs__CEe8J=xqBR`FIZ7RSNqynQg2ymTtj4v9l^Fo2z) zbC!QNE4UN4jDlJ^^CZXpC>9k#4z4sXb;CoKa&xNssrz^9MB^yuG^hR|B`ba?WE3|i z*92od4+7EkXBuNcv-KuPBD-wyQX%d-RBCawmBXGP(woa zZcI|aa3!CmU#dB42^YzraJ;JxgL7@O%w}Aspo}*wmp`PxbzoRP+(Qi?3{%4?1Qet+ zSK{*OQUESyOOm8Q$Ix;q*z3ZaDHHPcbA({=3eT?Z&@dcL6vN%tws2akGZw1I3WlC5 z8E4TZ7*dJDTiz|T)E0rY(ZUm0+H#{YgoCPSVSIE!xP`ecTDlkjw_?fYQ8^$($R%#2 z=wn?fK_-Ezn?Lp(EVMxJ=5*J6yN#WlIwT61lRqh&?~i`NyfB)X~|Fu-sW zv)|mrCOh9>1lU^dSu)W=JOcSD{+$>i66Y~LD4Jz+`sDI>-7C}cfGM(Go}JF__miN3 zK+PQN^3?FMv5fC4V}SwHrMvRu?N=!~Y%&D}&+p`g`a)8_ZMaSbaW*!G>%Nmq>9?ydI1{f3w%&KQ$NKpW$`)^ zY`IA=hiz&|GG}Q)d%}{t368c=vuz8$yp5R>Xy
hp6W*!h=99i7#_;a7!pq!EHs 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 delta 44994 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 From 9475a78211c1f6c72ca5ff3c21ef609b18701990 Mon Sep 17 00:00:00 2001 From: helgeerbe Date: Thu, 10 Aug 2023 10:53:33 +0200 Subject: [PATCH 05/12] catch error if git repo can't be accessd --- pio-scripts/auto_firmware_version.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/pio-scripts/auto_firmware_version.py b/pio-scripts/auto_firmware_version.py index 281899c7..4c170c47 100644 --- a/pio-scripts/auto_firmware_version.py +++ b/pio-scripts/auto_firmware_version.py @@ -18,9 +18,13 @@ from dulwich import porcelain def get_firmware_specifier_build_flag(): try: build_version = porcelain.describe('.') # '.' refers to the repository root dir - branch_name = porcelain.active_branch('.').decode('utf-8') - except: + except Exception as err: + print(f"Unexpected {err=}, {type(err)=}") build_version = "g0000000" + try: + branch_name = porcelain.active_branch('.').decode('utf-8') # '.' refers to the repository root dir + except Exception as err: + print(f"Unexpected {err=}, {type(err)=}") branch_name = "" build_flag = "-D AUTO_GIT_HASH=\\\"" + build_version + "\\\" " build_flag += "-D AUTO_GIT_BRANCH=\\\"" + branch_name + "\\\"" From cc3ab9b14bd82a3e78620a55268741e5e0d68c51 Mon Sep 17 00:00:00 2001 From: helgeerbe <59169507+helgeerbe@users.noreply.github.com> Date: Thu, 10 Aug 2023 13:02:42 +0200 Subject: [PATCH 06/12] Create test_build.yml --- .github/workflows/test_build.yml | 107 +++++++++++++++++++++++++++++++ 1 file changed, 107 insertions(+) create mode 100644 .github/workflows/test_build.yml diff --git a/.github/workflows/test_build.yml b/.github/workflows/test_build.yml new file mode 100644 index 00000000..f1853a87 --- /dev/null +++ b/.github/workflows/test_build.yml @@ -0,0 +1,107 @@ +name: OpenDTU-onBattery Test Build + +on: + push: + branches: + - 'helgeerbe/*' + paths-ignore: + - docs/** + - '**/*.md' + +jobs: + get_default_envs: + name: Gather Environments + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + + - name: Cache pip + uses: actions/cache@v3 + with: + path: ~/.cache/pip + key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }} + restore-keys: | + ${{ runner.os }}-pip- + + - uses: actions/setup-python@v4 + with: + python-version: "3.x" + + - name: Install PlatformIO + run: | + python -m pip install --upgrade pip + pip install --upgrade platformio + + - name: Get default environments + id: envs + run: | + echo "environments=$(pio project config --json-output | jq -cr '.[1][1][0][1]|split(",")')" >> $GITHUB_OUTPUT + + outputs: + environments: ${{ steps.envs.outputs.environments }} + + build: + name: Build Enviornments + runs-on: ubuntu-latest + needs: get_default_envs + strategy: + matrix: + environment: ${{ fromJSON(needs.get_default_envs.outputs.environments) }} + steps: + - uses: actions/checkout@v3 + + - name: Get tags + run: git fetch --force --tags origin + + - name: Cache pip + uses: actions/cache@v3 + with: + path: ~/.cache/pip + key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }} + restore-keys: | + ${{ runner.os }}-pip- + + - name: Cache PlatformIO + uses: actions/cache@v3 + with: + path: ~/.platformio + key: ${{ runner.os }}-${{ hashFiles('**/lockfiles') }} + + - name: Set up Python + uses: actions/setup-python@v4 + with: + python-version: "3.x" + + - name: Install PlatformIO + run: | + python -m pip install --upgrade pip + pip install --upgrade platformio + + - name: Setup Node.js and yarn + uses: actions/setup-node@v3 + with: + node-version: "18" + cache: "yarn" + cache-dependency-path: "webapp/yarn.lock" + + - name: Install WebApp dependencies + run: yarn --cwd webapp install --frozen-lockfile + + - name: Build WebApp + run: yarn --cwd webapp build + + - name: Build firmware + run: pio run -e ${{ matrix.environment }} + + - name: Rename Firmware + run: mv .pio/build/${{ matrix.environment }}/firmware.bin .pio/build/${{ matrix.environment }}/opendtu-onbattery-${{ matrix.environment }}.bin + + - name: Rename Factory Firmware + run: mv .pio/build/${{ matrix.environment }}/firmware.factory.bin .pio/build/${{ matrix.environment }}/opendtu-onbattery-${{ matrix.environment }}.factory.bin + + - uses: actions/upload-artifact@v3 + with: + name: opendtu-onbattery-${{ matrix.environment }} + path: | + .pio/build/${{ matrix.environment }}/opendtu-onbattery-${{ matrix.environment }}.bin + .pio/build/${{ matrix.environment }}/opendtu-onbattery-${{ matrix.environment }}.factory.bin From c8a561dbd7f2b48a6bc5089795271a66a51d9620 Mon Sep 17 00:00:00 2001 From: helgeerbe Date: Thu, 10 Aug 2023 13:03:51 +0200 Subject: [PATCH 07/12] fix linting errors --- pio-scripts/auto_firmware_version.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pio-scripts/auto_firmware_version.py b/pio-scripts/auto_firmware_version.py index 4c170c47..00f638a8 100644 --- a/pio-scripts/auto_firmware_version.py +++ b/pio-scripts/auto_firmware_version.py @@ -3,6 +3,7 @@ # Copyright (C) 2022 Thomas Basler and others # import pkg_resources +from dulwich import porcelain Import("env") @@ -13,7 +14,6 @@ missing_pkgs = required_pkgs - installed_pkgs if missing_pkgs: env.Execute('"$PYTHONEXE" -m pip install dulwich') -from dulwich import porcelain def get_firmware_specifier_build_flag(): try: @@ -28,8 +28,8 @@ def get_firmware_specifier_build_flag(): branch_name = "" build_flag = "-D AUTO_GIT_HASH=\\\"" + build_version + "\\\" " build_flag += "-D AUTO_GIT_BRANCH=\\\"" + branch_name + "\\\"" - print ("Firmware Revision: " + build_version) - print ("Firmware build on branch: " + branch_name) + print("Firmware Revision: " + build_version) + print("Firmware build on branch: " + branch_name) return (build_flag) env.Append( From 801fe5d027465463bd7af20024c0b164562e7dc5 Mon Sep 17 00:00:00 2001 From: helgeerbe <59169507+helgeerbe@users.noreply.github.com> Date: Thu, 10 Aug 2023 13:08:16 +0200 Subject: [PATCH 08/12] Update test_build.yml --- .github/workflows/test_build.yml | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/.github/workflows/test_build.yml b/.github/workflows/test_build.yml index f1853a87..adde3fc4 100644 --- a/.github/workflows/test_build.yml +++ b/.github/workflows/test_build.yml @@ -1,12 +1,6 @@ name: OpenDTU-onBattery Test Build -on: - push: - branches: - - 'helgeerbe/*' - paths-ignore: - - docs/** - - '**/*.md' +on: push jobs: get_default_envs: From 8e4f2345176a51a3434cfa36154b4df318a0be93 Mon Sep 17 00:00:00 2001 From: helgeerbe Date: Thu, 10 Aug 2023 13:21:35 +0200 Subject: [PATCH 09/12] action build on each push --- .github/workflows/build.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c26a991a..754dcd07 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -5,8 +5,6 @@ on: paths-ignore: - docs/** - '**/*.md' - tags-ignore: - - v* pull_request: paths-ignore: - docs/** From 1100f10c99aef2deb67a439b253d2c00c0c0e750 Mon Sep 17 00:00:00 2001 From: helgeerbe Date: Thu, 10 Aug 2023 13:27:45 +0200 Subject: [PATCH 10/12] fix use dulwich befor installation --- pio-scripts/auto_firmware_version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pio-scripts/auto_firmware_version.py b/pio-scripts/auto_firmware_version.py index 00f638a8..0e04df03 100644 --- a/pio-scripts/auto_firmware_version.py +++ b/pio-scripts/auto_firmware_version.py @@ -3,7 +3,6 @@ # Copyright (C) 2022 Thomas Basler and others # import pkg_resources -from dulwich import porcelain Import("env") @@ -14,6 +13,7 @@ missing_pkgs = required_pkgs - installed_pkgs if missing_pkgs: env.Execute('"$PYTHONEXE" -m pip install dulwich') +from dulwich import porcelain def get_firmware_specifier_build_flag(): try: From b7214161b8341b6174d6dc7fa9ed475216cdbe26 Mon Sep 17 00:00:00 2001 From: Bernhard Kirchen Date: Thu, 10 Aug 2023 13:39:21 +0200 Subject: [PATCH 11/12] live view: remove disabled -OnBattery-specifc views from DOM (#372) instead of hiding views, we can also avoid adding them to the DOM. this has a couple of advantages: * no HTTP request for data is sent and no websocket connection is established for disabled features. * JavaScript that causes errors due to incomplete or incompatible data of features that are disabled anyways do not trigger the browser debugger. --- webapp/src/views/HomeView.vue | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/webapp/src/views/HomeView.vue b/webapp/src/views/HomeView.vue index abd7eff7..ab51e705 100644 --- a/webapp/src/views/HomeView.vue +++ b/webapp/src/views/HomeView.vue @@ -114,13 +114,9 @@ - -
- -
-
- -
+ + +