From e2ca6ceadecedf6490fc1dbf0815a345e332d07e Mon Sep 17 00:00:00 2001 From: Kai Lauterbach Date: Sat, 20 May 2023 11:34:55 +0200 Subject: [PATCH] Refactorized on button javascript code. Reset added to the webservers tc parameter processing after setting tc_enabled. --- ...ware.ino.bin => 20230520_firmware.ino.bin} | Bin 437040 -> 437056 bytes ...piffs.bin => 20230520_firmware.spiffs.bin} | Bin 2072576 -> 2072576 bytes ....ino.bin => 20230520_firmware_dev.ino.bin} | Bin 437040 -> 437056 bytes firmware/data/bottom.js | 82 +++------ firmware/html/bottom.js | 155 +++++++----------- firmware/webserver.ino | 1 + 6 files changed, 82 insertions(+), 156 deletions(-) rename firmware/{20230519_firmware.ino.bin => 20230520_firmware.ino.bin} (79%) rename firmware/{20230519_firmware.spiffs.bin => 20230520_firmware.spiffs.bin} (97%) rename firmware/{20230519_firmware_dev.ino.bin => 20230520_firmware_dev.ino.bin} (79%) diff --git a/firmware/20230519_firmware.ino.bin b/firmware/20230520_firmware.ino.bin similarity index 79% rename from firmware/20230519_firmware.ino.bin rename to firmware/20230520_firmware.ino.bin index b399520c90b329c0c7e6b6e3afcea1315515fbdc..84010fe19d1a78c71fb99b3855db8e0cc96e01ad 100644 GIT binary patch delta 29814 zcma&O30PHC+c$pJhK->6j0`gB*@qcH*+*1RkPW&KQ=D?_(GvABE6q8zFtpsJg(WU) zTaPJDsb!^NVWkG)$th0yvP~j7-D(Tvg;bZkgC4etM5TY)M#CLoAKZt59}pc?HuFuB$x(H4Zz1R0>jY!2&_`Jxw@|utMnIp7#T+& z*i&u%o}es}V%2*DH*hJ0Uqv$!Q1!ekm9=j8W0ld21ZENhBI9UnZ3L(r09 zR%ZwMZ%Z+2TQ8Fk`f{Lupt9HLFIBoLE2GPsgr7~{4eY@2d+2w8T{-1T>KByCDHSw5 z$i?xW(UC!6P{9j9?clC8-0y>iMk4Fb9c87WrMhQWJk4oj>kU%vv z*k3vzp0QscO&Z!lp9xL^k>$bdqV!cxD8Q_&awcV`2JZJ{BaM_M{MHChHMF=^ljsu+xBu3!L&Ey%rH! z%)jS^Fr)1PC!O%P`k7M9`fZ2XVmc%$lRVOK&!HUDUg<$?Gk?Q@+KqvSM71Fh>Jaqh z&d=Q;f^U{@WwKLw8-)0gc41=MBG-yu<-;E}38i3y|`q?D^5r922c)K26d z1PXzu&o4EI1)>?rPIW1WDZ}j2XCS6ubqImrMz=+Vc2a*uP4zB>Q0@i_9U0>{oS(Zw zgpNi<{SDTfL3U|9D)N^dLPrR-m^Ma+gzLYcrv4`r|IfghcRhmDT}Bw=g|vNChEsjT zS^bLOfC~2WP^i1i#Pa4l$2$W0u->DuMYS!4KHXI@uBuQqFvw66KLqV^SA{|`&oLF7 z)e}sAL zs?5#gnVYX4f;(7Y?r5I56V>nF&Q`t)bX$B8P`h{}0fNj%mNMSM#GR){Som^+$h?nHGR+}X;yKx*@}ruAYRr(B~ku6#_mlUxZc`HM*( zI6^Tf_R-a@m7H>tW<^K3^({$R7IL0Vwb!{sAwk4?Z~_Gb*jl8YOM1smSQ>vW>C_nB zNTY8=hqY6`PYT)Yn{OAt^$3CPTvLLtdo91UBT+v{!YW`PrHr89bDmR9(<9L_SgG$u z$3l?snCN2u4_o3IflJ(Glbo)q1l8?I7&swk+Qx~)rF@cZPnwk=MvPZ7?f$nMRkHc! zmW7SkV_$E~PA+N8-qBZ-#p@od-3P@0Nv*e4)p2pXRCeMYJJ-5qD1}}bZqg29p(F<`xKL0sma!BNh14aJ^ zXNRS3hlvrYY;0npoHCf`*HjAttF{tqw%=mg6)biO7%4gJg=0aqZmc>V9DVrSX@tLrKE(smrK5e*KLNcslUqVtI|4vhz zpYrNefZ9`)NzF1UpL<)}mbJKpA!7$71q+7i?Y%N8?P*$KOdsW~ran@J2a1#G|Iy#O zOn>ew0X_4nx5;6w$%zKJ1h|62+)zEfiC#Qimna3OuX#mN>G{OgvHC`%s%mGN5Ls1T zge1C?)l`@p!#inMQbZVk-sbF3S$W&;^i)=Mu-|l5?iC24IxR?g0xH;)6xmaq-6X4; z6X=d)z0AMr?Pbgg{JUOO99XFi#!7K8R(8fpWiGQNJN0jukgrc|BBXZ>yxIOA!|dIx zL4KK+*dsfLwK9mcV#Hb+#F!fsaf5GJKD*uT9E2O)KC&mDPHwU<%lE83}4S|lx8*LddKB+jgkv%dMGb7ad_yEKCTyH zQd7KE&ikYN#om!Q(97aWrhxAZ7T+-zEEuXDG*}#LV$r!#vNR9X}2jD?=$Wuf13 z3=#uHy*??{+YmjixfOgLgN3?-vDn90@cY2Rt$)LKD9nxFzwz==QyZl|P0diAYLqTN zWISS;cu*lVDn{*TkmElAIcz3CPT$S+yPHwtnG5|Eq!xwq(`>>zQpe`OTCVDz=eS_f zr`Y17f>nAcHM^6Z*Va{F$`Vp6JPVPC%oK~NAjGvpNbiY|kGtCELVG9A!oGc2J{=}y z`|&w#*}z>XIXOOy?vdsUQmR|TxgD-GcloVB(i0Ea-tu+3-vf_{IP1Y4)3Okh=p+5? z5r6Th8(n%@j5xJk@v}+i*bKbHu3zzpKYCo8DdZKibQWnkUFR_5C$%rCHH`JvGJ zc4;3gJkRbnn+ou$p-{V2$x@1uLRbpF%r5O_mFFUbGg3gZOk1$1X8c zscFD>hL^b2OZSMuC9cu{7+!%cf z+*Fmhnfw^XLe2z}o9$tX{5}UKMj&up4BIP)Ulc=ci>)11Q)oozw~N)84%lA-dQX2Y z5DgjPV5Ucu84l@;k*qw6WPY$iI_bf@t50*_Bhn~7ffXO*5PBfHszEwxq^eJ|(gPi0 z@B<;5ztTpk_S~xW9IN(R=f*pPoNt*KJ{!2u2f`IVLA>MHz?{9FkoKmV{hdd%j4cVx z=@MAXj{zOMk3%#)5PbBDZKPeEn%$oB+|Y}roSm#u>c0coae;|dWYKYfth4=`-r}v%v~jhw%kWrJWu4m}i6w zz1c@>(o}DDAC{eF%)ml{G7#Bp_kGwVJ!j-Ay;;5+ribrlWle)L-pjHVV<{QQ9=@zW zD)g4lLo#+b3G=h?UEL-lj!dLVM%$;<1vXImrA_S^>_!W)W+f{X4)LWrHv(aHMEOLA z)PY$^FUNkPe~ry>GXF0dTlHVHr3fghKMpHTR^lAuuO3$+7T*|sQX32&m41_vVBvF( zVWQwviSRD^AS0=#+MSKhN1p3KL^URRqAX#%;R1po)DeOzQRon6-LE%De;UcWo3%EA z4LdVGgH?{8Pj^i)>s`D<@ET}i^6#3+@xk=lu1<^MHZs)9Z16bf`(2~`)Cz>r_->+E zPxe;3U{vedE!wOndQ;9DDMj5ts0H2FZ5hWuM!RLciF)5D1OeF-A>k<1Q=dnhD*cw8@`8i43Z;8K+hFIv`4rx8SJmF1wQ0W)#dhMG$<|2ZoeO zy9X7oeBUVxZCrBtgU0N>E1hyE!VBKQSIB!#IR@bpgttEHl+zG?2jOuqJ7pQ+k68F! zr`#9eDug4EJ{;kL2%nhil*b|bVQFLbN`$8%d;;kcW;x{|gij$n4>T9GakZ3pqT+HS zuB0j1X;8|T>;#S{v?MzYk@D<#j<2WZjEIkn$bFhDvz*6SI<1!Doa!G@ zP>ph@UVPmH?Iq@ji#>@`nNtXLnA%WBPSQyIGApEBj`F{Cpytdm8JbwA~lJ_)8wo=Di<43^bCsVQS2^jbr_aU1_|(*E?6>&4IJ?cVD&N?p%N|#Cqs79 zWiJitaV%K*I^i9T%U$Ogc*IlI6H^3cV0?=7aFMMvs%J!){;6H6!-}U~fvlJ^PTFx& zi=l9V4(u5ms(*|XNZ<(?slBRd!^KYQ#vhZXN?6;naYLr=*V z>63eqjo9~AMH=Ueba&6l5XED2k@zfO))5mvd2E+uSSunt z`o^gEuk8!5qrz;-R*&wE%;RhsJ-c^ft$!ZxVnjWiVD6oY$LEKBuGe!jk!AQF~M3rQbXe^+mVucWiO9 z!_uQJdmoox=D0n^bbGIFmh~Nhr1)gy@E_6*d9m^Qk|w*jQdPIju#MHr8nY9^<76i= z6+LwZc#+=9%MDhaMt``D#HOA z{I7P`EwFw6_T_v%orjPR0FrZJM)_AE2LE3Nu4kW;!F z3}!_|c8u@H<;4@68T;ap5!90$?EKVIZhtswmur+) zkJK}1GWm)2n;o2bx;?iH=cidnDOMeh>l^~(Ez#+VwNasG?COR2`2pYDc@^n;Z>Fs@XA$Ya*kz^^#G?vDQg;EM~4F0@QaX z+jS(AKV&by&V`I2(sVRNDTc~mIN8{3KuWc}{ZI#`y?u*Cn#gkJB9~cdCl7X7M?#e+ z7{z3}AAwXCJA{hkJn4g6M`H9B?7|7md$`>2DpnuKT9AlC6PBvxLa}-RQ>m8mwo8-t-M01U7HN(ag zj>!=^{pzu#FkQC0l9Sv=Li@P*reF-Nnv`tX_?Qfn&hFD5)AjRx5)od}r-0-CMSt(( zLZoHi$;C=R6wGy@*_2ym#$*N6IK1lM+d&P~(g=;KZ`*6#jt&tE z159wy^Xfet`k7~Ls(u%4rgGP|eI>0r+A@-U5F;umUKd+xo@WlI7 zQ*=71e?)73dRxKl>N~E$oOuU{#|uM_7l!g{>FWNWgY`P>`c&OENNiVNc2`Zo-ebER z`;)3E=p;n;*^XBaXX$1r6)o<2#+{t&I!9{9O79zA9d^614J^Xt6NVLW7bfYn)qu2O z#cYr%(uXytE4yrNF-hn&wA^1>h+PZc%3DGm@^^_ZjS~MJO8u~HMu~u?5|1~R;CC7& zW)7Y1E6rj%A3tviW#Hc>J~v84DMKIUq{&P~)z@2w@84WTr#}st+nLv`&|?+}ckw^7 zrha7e>RbH=`sP2hAv4^iUyKY{8;BsABT({H`sTpasmgMLWSVjo6_pQcUbRQ$g?B{F zZuLxm3F>L&sq1YlNKX#LA#y)^$VES~TLb2@ssw(leH1rz&>blXpOFdZM}CZ*bpkhZ z*=;F|rR74EqwTq3(kL!u`z_4<-eR-u5xMTF1kiRHjAZ@@lYXTw=TRN*TU=GL{yC%M z_XS&wC4Z!(sd@I0tnJv1C-7(N&f`wMa*yQ0GI+%va@*u8s|H19@;n$q-WHEZYG_2B z(!(B-`-k)hVYFb!pxzzS+t&CfZhu=7rf~kd$kW?*?T-WxSJiOkU}VTESa#wN=Ko>? zziPNjlOK2C7yz+DDf$;ST<=Xx#P{VWb8eN4@4Xa(&+x1qgjwlzrX-%ZY3gFQ^8RcS z=G{ex?wFg#GgsDMvkB3DS*EjV&Q_hBdbSkvF2;wty15_KolNCwQ$O;n(2qm#Sz~mh zvO6+lS-{^NsgAOr#|1Z+Cqn8)Y)v!zZnDv@3H%PG()l)IwJR_(LJVC;s@svF6jRq= zv@FqHa?wy-WKuHhW#I`ZTw2c5rN={cccokAQfDy}h6dSSdI1H;smz_iGq*^eY2=o*Sd=6hqwTxFPhzS{ z9CE?VzaNiXN1}x*)ILzNwM&$ zv}~ws!&K0~m27vlZ~vpqwHHTRH-}>9b%%Bv7MtT67AMz*Vj2Uk02hE0zyY8VTc~~T zcLJXwycPZ?pbS_6ECm+PHN)bH_2o8p7^U9uG_a=$J#8T!24mqS3iYPnX3PJYv~ZU) zgXurlCgIS{i2K-&ExjLdvA=swnlQuYkW-J4!v?Q1jde-34aXel{5Nf5juDh{?N3OK zEg<0?)sG(`JIm%;lTeKD`$A;MapD#Suus`pdm3(GEE(3IaNt|@yR zvh|KOX#=wH1!7P7X%U3M3|j5sYB5pCyr%rXPxxRKH{So8#CCaoONI#?fy-cX}q zs1uZEoAflxQfcjo(0KiE!6)Z>ZgbFK+3X_q% z0z8chX^5O)tpf|?DMXqZr@L*^gGR52Q;0Hb_pT^P*Po(cRzRt6~#SP_f>=CcxY@M{rgK1P9h z-)f8tp7}PAQvO09k`45G2qb{#J*%G$raurpgo^52RuKf?8w2VNtB5%BSv}=8tH%i3 zLLdzUZdn)N{R+aELD;ksi}8v1OsCZHKv#+pSMuP)hA{|2QIx+7 z(V4PC>5)-MG5TFboLxjsK)2#!2b%3=!_5WO=?N+(k*Wzgje4?mqMpKTZCV@C1*oB| zCAR8|7*yw2N#&f?FWGZ+!%s< zQj?A94OU~GP^TC}@F)bIp&kKu*eK6@*r@tFWYFLA+MvD+HVA`N4l`lVS=CmyD5=-1 zxm6Rg2o`5$fzd_EA*KZVI~0RGE8j&~^L$|~P&91ipj8mqS+Nm^NvL$`Q|bJfd{OqN zho4Fp)vlJBy|oE=F!zQFN2VpYg2T^@!pSCVgY_Yz;B7Ns^9kwaMY}dJC zjdfd&*BtODtu3PN5&SN=D~s;smW@j>t23-a9hL-vT}dr7OCR1in&MPtYhFi_`o7t9 z{H8NA=fd;OL7#dGEOJLX%1=f4R(@89=e9UQ#q=<51D#%6c&*CK{a3vgLXC2OV4 zK{rJ01`^dGOKwUl@#i}C;WV8_7KXXxp z7u?Y46NM4cYP2N}r^DmjVd6d%HmOBcZ_$!z(h`q2^9KJPx}va0klNi=;)V_cQvy5O zf(Dc<`e)(Wt@NMT{=V{$6mu3fHE)ecCl_IR zakF)tJQDr@AQgxKf&gEj1bOFx6TksrC$I%r0c3`tKKu#5NMHa<1Cjv&s7L-y;0kaC z*avI^Rsi!t;#~3s1O@{Wz$h8M6A*xU2zCJ&SFVoh!71u`D<|SfUh^BnRBWdbfK9*( z;B9Q17QvqfOa#UO`M~2#8?!UvM*=o#emb@on_9Opj$LMb_0W48h10*|)?^=Ctd(1h z3yC>aOe<#fWj4(E;IfYI1G5d)AA=jCJjU)Yh`#e7E2FGsQ*m$9M)^;T9ObC-L{Ke5 zj@rvw)Al}k!lHa=9bQ%4Njy?~f4Bn|M~B1_RqESF!>tOhF9%;Cm|bKjdIJddWH*F8 z(Cr^RD<_h#ntkOqp9x6d8Zy|LT3Mt)~ z2D({Y!r3jk(mHlV`npwG%f1Ww5q}rezhLyz8NGBA{Smw1>L7i01S}Mvygy1BME zqQGxQU0y<6J(YEo0=KL(36~)l)5;>&D`seq6I&k_gK7I`!pRQW`w$PH00TKZPZMwi*(4Xioq#vekraFKypl(iT@KK z;xhiJXQRk$I``Rd&|LBC(?nnP9J}90c`l061v>iKAUgWF<((AKTJ`Z=wtwdx4LD39 zJh6uKYssccy)8_Ro!|L4sM)rfS=agGxI~y4@1cnkyBDiZVn)X0u^Mkpx47`U;2D^% z_jN@jMHqh@_Iykn?V=k87#uT5pl81B(1&Hr?G4M zT#lVsn{x{j_(c)9VnQzmyC62}iy|U!jPG|ArTYstORq_#_)=1TGPC-s8j;1}G|Qsg zFdr*1Wa9Du3Nq>S^^CE8%@XpYV5}l7t;H+@*BH{P9(A$xJk#7CmYO-&Fz1F`_Z@mM z;MmM-LNxfyix}_V7Dk%{hY*C9uq;iP7lDjkLd}$G(hMfR4`!CE&TSUpH?vrMz32|! zv+3s^EetY^cl1Br&s0;$C|dZJB0_Ha&~uZlzN4;5h4jx!t&1PkCRj*)Z6(g>@j5!< zyx#rM_=0Q4hIw1jh$RuNxZ!QZc}qxp-e^U=k*-{>=Ob)21;$flqW@$$CSSwjV6#3g zBG+Q-<%nYubvhHdt5B19P3i%W_5Efed5R%2d!%vJT+^Mgv!G)QcE8sfS~+bAN#T#R zyM`yUW_40TmW6$i>35AX>iK#pnN~d?HQ0GgN@8TcHXG%hY0`vx+ z2>z%gq&qHbLFtB<(&_q|h-+xPh41tbeeu2JSO9fT?rP`LAL6tmw`wqZsyO~(O-nj= zavSVaR!(lmscw33a-vo50Lz`tW?4PYDxRTaO0SF`jH_kkCoj`#FVnC7W_s4kbZ>pl z!9N&N#mSg{VLA30oj;|kU5S1uectG0$`5*2^Es`a!kAv00;W+kbSjvJH#6nkR&fCx zFtu04d@s}eUZxcWQ{{udneOv4{kXp71uxT9V5+RQ94n+pr-G^Fp){_UY1YG5ZnEKPFr-3Q|H`6Gqm`Ybq>y^>L%XFJTTv_X7T51XD=T+~gM!LSDz9!ns^sfhC z`j+LGnYNt{rVk!Sfz3=49@bdtv(p*V#nZv`4*h(3qLsh(ph>;Fzg0X>Z%of03d8^W zs;e+gJbKk#80#vG5&9kfzTUVe|Kovls)0R`*F)KICMa*zGmBAP#0$2JyN zX0AMts*Qq5h*40VM@wdi#UEdFJ#Lb|Zb-4}V{kYP8?h?$&C*6BsD);i7%QyDTPY;Y zH5+&O7avHU8Dw~yK}LPW;HORnKV_;Vq=W6&+gC9^Sb6^lS7E#%{bT)J4RHehiL;Yo4dcFNBjq+Ute* z!l5jEjyL@oWBlpEEhPo&Cy&%9L8_}q?kpphpWq#x!z?9Hd?X%mk5&un@s3yR1UH}W z1vgXe4mVZpQ4d2l-lxatwe-jfX)S-MAB9H=2hcavJZo}r9riKnvDdi*{|rzG?4YHy z77?C?&vwEZy3LN@)YWwO?A3_W&F(>-rI~Y51J8UOE6>2ElcVaw!NRix4|B)H(Be5+ zt@JL9=egQx34#Btx3!_;@tbS0FTP$)Lo7dht{$IvHRN>}L07e{k?DQ$eQ4Y^IDUWy@u zXzoj6Am)ab;>m~f@Jp?8(s1+K%y|O1jWa|(dTZD&iBww7aG zU{K;7sg0$82s|bgi&{)$i{d%Gi1sVWGn;UI-ArsAT~m}9v*S&9+*qet+Q5l{dqu}Z(UxMCa&H_L?T)GerOB6}9+NnM z=FJ^#Q@?nW^S~o^zjyhfHwWR#6LJsJ`*S;l zs@uG|y80-``bdmy%2jChm*cF;utz!d9?^2s=yIM;e|ajoNiV;gO&-wL;*O-2jwpVL zQ@7DCi{C7!_ug&9PqQx}Gj z0{X_nSCCG~&>t4NI9)VY4xrNOVPq8T^EzYs{p$xg zbvb?ajn16@5k2-sYumf!`5l{?|?Z;qot*<`KV8!J<_|OOpyY&Y(36FyV6gWeGhwknI@C|^dmZu({Iy8+S;LBzdz_0FYWQr*ycx?m~a7GpWhrg=~^Hxy_J@)noDaxV$UB$su3sO}x-spt73ZvYGZL&D=*WZw=Q0+Yo z(mnK-_u6p!F6v?4m$dDFz7P83$|y6NR<74$k4vzq*wj!;Rz8_hdIdbqyw5{D-Q3FM zyf6b@{Gb)C@Yk9UYIty=a>nQVh>$7n`9=DUmaL5P*M9k~_79h|n|`@6j^xprl^wBW z1i#Pn4$U~5326s`zIBz;CuzK>lM8BRIWeB z;@%MTV~wuDU{?21E0-7?GRTMhb}3ci1TmErLsgu^72r*1CO=uoNvRW)t_-Tmbgx;? zQ=e7oZSsDRUADtM&chUwl0H2&=ZQP6!XTXM3Au$KJRPyBo#b5Yl<%$j->7U#+y6iO zAL(bSGDr;lb5#-vr{SxUyNBIL!C8|2)T5QJ;B!vk7d8sMy&S&E=tl*dbnWNV?4`Mn zn`#!}yh?lt(; zBv-g`Z{Y_Q3)kN+T&G_5zxDRzi^uTXf$tw$6-BSFb#jfrQR}*1oIaTjUzgC4Uw~5$ zcbSjgHWcqxb9u@1vuo{W40=aPsqwsP?Qk3d+FMHX2oAuZA%YKS`8rqUmoLpF;p4-H zg!i;{oTn}_9WOi3>b!d6{?NIeTeB_+f$aUwAlRvThj*9F#u0-a6e_8-)%wJMAI?LY z=U%B1^(HV>Zv;H z8nAnMre#$JdN0OQJ z{--%1C1+42+1D+0i{HWRA8pz)GDRS-(SBP~>@Tsb@q6tB96K_fg2tC@jV5>K)~#ve zxAMzdqX=0=eYSr{4$x1w?+J+X#L6$>)kgxIS^gCH7d=^C68zpzAd#4vAfyjU5pdmm zdTj`KyZnV65nR}kQ`n8LpE5(2*pl>3b;#?J`1spmQrCNi}`1BG;Y|-dT({{B$6JUa#m$KA`TM?Z|)VlRHP+US*XN zSEd&wOpK?L%%k7!6v-@FyHh50H06tSOO_-5NhL&)A(E+;=ygqxyI|Hrc22$O*`Q zjxO09Pqxs{c4r4n_}VGg)wyIRZP@)E(SHw04^B9^@zJ2+~0OFgMP7R9oa`m zeLb0sEI<5p8$!})ZRI8M5j|S<3@N2u_dXFY8qM8;rcWq;fA8~zM3xKtN(ebb-_^U2 zGxV4~HlP-&t!ApFS^N9L441%NLC^0GBah1O@6RCSzQzyYy=p(P#q=g5@hHX6; zEBE+0R#twBl@A|`m1FUaFbv^ndj7yWZHAnJHvA>m#Hgk|tVGc_mp5iF2hPyagI`Cz zb|zNt26RDAN1z?h0a))BC&!mh`p!nM>c4!5?Iu4t^a)>iK30yRh1FeP=kHd(2Jywi zY2-UP^zfkK+&!^!HqZrV56C<&+xN!GY4Dv@v2vfEW94Lo|Ei3Ydm$Wy@L7Z-;m<|6 zAo%5o`@{boH~gjW--o{l{%rX3;17mB8-5!6Deyz!Pk?_94H^yq6#S9! zKZ8F2{&M)WKclg}IG3M=NF`L8hKyxkoB)3q-TnP@WHU`X(wY27M<0nNN6Qx-8Az}s z{dn{~=Q&M(IMyCRmOI{o{7&6)f1+cK7n85(MT9@4jvqRZbu{;f_C%voe@G{b>4!*} zOMiqrm9{+5g^VrFJ<*C_nDsm963%_>lwEjAz_k&BXwk_j#GhV2+26uf-@!XyV^4(N zcGAaA?X~b<-|_y!1xFG1EDk@7r0sX4`OT$%p?{p71}hwOrZq2{;^ez@&Y8BBB7`tY z9WNy3Iq@<2!I|#nc`%i3P{DHaS4H`)GcyRME-ruiM};JoAnPowYXq`i-W@9sg+Ceo z6Muf3+@*7WZtIs!a79Vz+Mn0s zjpH5Zg9dMF6#DotbL46+j{TntNERUR*F63bo0~RVH0Gvp{&BJlWCD?&vPrgVFMDei ze6cWyD{OtcFtBC{6)w2RTAF>KD}J_kM|y%0$EP+`FAO0s(Vs3Tek)Mhbb-dz^u!xI zJdbKF@j}ffX4QO0`V)r?>@c|-l`g&nkw3l|5pV+S*$FJC$1Z*wTL&4>03oMh<>Mz~ zMOd7=Eyr8y*GOAAy54xC~_H$4hJ%$@fk1L$j)+h9n3 zaQQLw3`?9m99S-3xY35oB1xice@p4!_6P>QYvPk?a^EbD-76fto%1Ue?NLOC*6~{| z!avc1gm?=@<|W|DFUp-98DEa)gOS8WU;iy3j%T^<Im6<;7A7;jv4=1K3vd5Dn zUCEu3&ST9v^V@KHwG~YT%7A&mNSgEeIPyCE;P;p9l>u?`R$wJi1dOJgt~`P7pruzv z2ApZi8%^(Bc^-SnaaYrMA=V}TO4nS?=3@{lp_i{xL0NQL`VnV;P_aT6{IMx)04k;e zk$^971^sgl*h-aaN67OuxHcB+b+_6qds@plx%h2t&EWe2H|gTq@lf8)+6bbQ3)lUL zS?zaQx`RVL)`3M-ys^Qo_P8zWXDRHUj{b0CRKPx%_u5@BbDHsIB5}~Mf8yMwBh~+O zwc>xcyV8{q>Bg_f>FqxgIQ?51d2^1S#@&`4_fl2pnwuYDF!jAP!K?<|mRkKyy6V;} zekZJA0nNJIF}4WZJ@2wpmeKI^Z}B4s#0LQBKn(C9+7U$GzO4j3I%IUOckGcQG`71pHprg>rak%+99OBMwY9Ly>@&)~?AxuJ%1nyLk3A=L!7lid0nN zpY@aaQCb&`S+$}r1)HPNPp`=ouIyUOFH#elSR>o zbIdl3)SI4I`6#f1hCS+tU17naBy2-xKT5^2zWGr*l0r{DYD;42y+`fL2QVS62j&4I zX-fTc>|xi`KW-;%m9!iMRPhUtlA=-(1xHZTqt0AvCQKoDR8PC?(b^!FT}QvIRI0z<*JgL;E%^h0Nz0`$XkqWF-SZz+H^_b3i2<`@jOKc)F0~<#RoE2zf`F zO32rwNRv2nDPR@Mw$GkeIZuo7A+5=|icUUc10id)pM1$c^I#vGK>{++sAceEgrJ|g zDLwPh__dR-wu&diiK5--$uk*Apb`uG1d1ntL%<$jWDs=sMq~ChoN4X^o#j9YFb~+r zZo{>A{m5(Np(eH<9m#cVNDDFrH21e4ah$$ayU~KgBO2mQa!G(T!k=^zSE3iT!%j`u z&4hdtEB^-lEJE5BSm0;F57V~!lYfy^%^W}yqECMBG84Qt!#}pc-5kGycboB3E#u$>Ou<s;;imyHKqznr#W~o)AXK?{K32W}`1)ya4l;~W*J#BK(w5e3=?`ycAbMRb)m{!H{W!Hm`#zAwqWABzTt({{#BAafZDJ7VMfPYr zg2;!QeoY%4O!CPDZF4Z`5&SFWu=9|>a~A!A@Oo@94rnBVd>b2yCEyCOg5diDzalFL zf?k3@7dQ%m?`qdWNPkWpRnfgQ!8vF$%AMBqP%?wWYF)#~-Qo?q+0NmgPal)1Cq`H# zP>-qatDiw9RFpr1Ul$_EpTJ)aq&h@-6?~ILlr{JQ@=D+ju#57m@Y4iQo(q2${1@Q+ zw-V*a@Jrx74Sz?lh<&#xKNX6|g#b|=34fQrD91d)FU7!kf~JR)5f=XCKc%fVa;tEO zWYa&YNRA*JA-`xHA_;EBS8M$uNra%by^T{3H=a=0cx`4R5usTPo}h-aj1-okX#0?o zq`dPdeiB&f%1LlnIaA2l`3JY@-`5uqca;s7ks&CqC$QqGq*Tf=h#16I2M5>*9U8EaMtJp8MsuVNG31wumM-E;+D&40j7n#4?ZQ6kZ(=*N11JL) z05gCIz+f#S8pDlhuSAnmaiQ2**0;iH15^TAfu+Dipf8XL__xwtjv;$Vw3ZVKmdmv9 zu_T?ms;!PClX8|qy4lQrfsud=Bm+*M7Q~IMEBqb*6)r+}I3NQFT0tDy6!H09^|iX8 zgK*XKXy}**_7bPxR2(~vtROckZ1I?K$uVt00vQmy32k2lj05@tnLsiS3HSpSuzU{J z&Ln2&`wwBb993-DkoAGlccQ&G+Ulwek+BD` zRxFlDF(H*&KrWd^E@?%%#96$PigE%jN7=z0HsXJWue8H&FPqZS{wp0PICINU_S~|6 z%C21gPk8Cu|AhVjE4<4n^UpsR+$Xu@LF=w)5k1IavP;|016!W6T4N8g%Fo#Yr^Q>f zwLM8!{FsPM!Zkgini<*%h0GzJXg??f+d8Ce<)-1iqFQiJl(Tf}>ODn4KNn6fb zjn|gVH>R}}*B`?cjI7Z3zN81SX}$ZBH$o@izcDqJ_%FMdrPcPubTnBr7my!GMa7i@ zlI$C>bbu(&=r3X!iyDOPNYF|LkwHWIehM{Ad0do(0z- z1_1eh3`7FHzyY*x6R;du02FB%kCP4=TR?U@uoKt=>;t|7jsm9uey}J{0x0ke4;iQxA zt}5{>ZU1oc3|U=~Is%)BkiLm7S$yovzfazF3_`c$Y195i+L0~Vs()d`z4FdTOg+Q3 z*pcMwRCSy6y^sM&Sv*ZQ|s>pbb zI0$*IqVGhq$p=L4O(yBNmp=r1;~2uY%oWQw2|gKIh6^!q>!#A%8_`?%OKrdp;Q=Q) ztZ9IpwFgM&P1q_=o+|93{Mws8uy_=|RK3UQiGO!>!hVzhv%&NQ;9r94xV z&*2|_nc}o%)5!B=fd*U2wqNLoU*As?<%#u;*#{!g+uFeCEtEOG*gS4 zfo;(uZSxFl+3PfECRBAsn?IAZbFD@V(Cd1z#j`AZwg1^6q*G~)PK5i8v0|N_P$Eu`DcvaL6!992N}Vrg`^8# zU<5}jB;EL4M(|yhnrj44veZl?82lRP70{Ulp`Ll#zh5Km_<3%ZJVkr^H7pCc+V0n2 z<43iOMUeW2_OC^x4K@%jE+SpX9c}v}vdsSLQc)I~4!r+m&>XTDEBgrT&BY{yA7`X& zUQBwDw%U!wWWPN$0poP_M}Lpg<(mFF`HIZe=D$Jqz&zvMauGcdtBA z5btQezD2Sl%Gt1w)${apZAL(8%PRE}KCqABKGnCkGihqFi5beHD4+Lnc;ST}!a1_g$y?t%rPqRRm zGuYb$tX6MsCW)k9#m>!aZ*r=__7SP^A!93Ue}Y+zJg;rvN)D5*74x=18p|0CwIl1} zGh1SAJXsN3PJ9TKkgy$O9p_tFv1bSQ+@Hi&%-l_0<;d`g2VaxtI8tBn@4cj**?Q)E z)`lDSFvu!q*yj`*K97*-zi@v~Tk9O=AOr`6!!VB0qyigHd zgDnEq0sa!XLqzStCG0A0YP)_VyGT{V9Q=b`f*E@0Z&(=}6`Ot|Jvp*myMBdyOXP~r zu99B@FdMynhy0AyV8>zC~E=Z)^i~G=JLJ((_!xMZqUv+rc$g=aa3PRF6*HSwR{| zHy`rxXIWeYNA!w&95>yMglW$NaGPQ0fh{>HDBu;e<~kR7r1W%FFs6G>wUVuQ+RpBRaxHR&ll zd05dhkn8G$bx8@~J_^{d7zH5Jx{3!OTo)2B#E4tT;}sd9Tn`e=HRYR_pFU6+*QWzy zEDhtHB!@^x+66!2dPSDX#15<$6z&v0RklF_MAiM|+ngy;# z`WfH?a1-!FnHli$?^But?qD(;Rfu)=an- z<(tF*f2Nj-O=%jC4ix9ZsbvELezUE~2>(y%nXUCidNbj&*F<>>-~=u##1RlM4oCoY zEEeS{Ne~_@1_Ji$r+>Frx&jMBz|i5eh8@5)e)W zszEFb{tBcu*BkeiD6a%cPw#vXeZhq7Y^E?~@aMsA&Kr&JM5K*_KMsB*(402_Y4Z>t41WfE8Cbr?Df@47 z$_ZO=GvbC&=pJVtc;Z`NLh-*uxhHnRbwv;al3yql<@61rJluxizR@YCqta}Y8Gteq zvHI5{e;mtO*_eIQ*OPrN9aBMfObb0+a#2@ksje}5OCI_bei~3T1%^5uLID$AZOmR$ zj~nDixV}c-_5U0lkIcwFv+J2UUH?LR;@OWT*+%jY|art9Fg{VLxZc(Gce9vX#{3qv(=X~d@S5OV8WC`$s97@u9wKOf1vkCWMK@J3m_OU()GYFjM%gALtf(3a>-+;i%YxKITZ*F z!NGOA8$PhcydykfvWSNa)M+}QEw9Tr`_hRFK98#d=m_$ah>53vA`issc={r_A}__$ zFNjy)1$czJ|M%W-vLLLA#EM;m=fh@-w=fKug~NidM5p}UM})Bbh=a8wX_E-Wr~vVq>jNJPo5QzwDZ41x{afsGur&B zIF>}?pjEjgV-y~W^kk@08^ou{G>^O}91~~&87M|gpmWJKd1L}@VkAZEOF<`fw^FhR>!eV6dH^O?#51 z!e=3kwK8fQHYf2}AzJQ|r1D|ybyLUbPSlJ>dO;Re-vbRLA8G>8x1pb@ctX(;cz zt#RbGMv`JE#|V7)IL}D8bR)m4ab#H|@iyu_3jW65k&&^FYoU&d@W`h=#4dyL>1xBP z_t|0^9PsDKsO@*&nrd~-vQ~T%Q1tVd?;nQb^;qc~Xw4jJh4)Ndg8t4IjwQ4`PAi8m zfi5~(e7b~oer~?;rhWmwqXI08Vhu;)61oNo^`fOT++;PHf1bjA-LaIWj%#JSrgL7* z%8|qK0t0-b0xSqY=SF4*eT@}+96r;6SjOBCYif$`%oGc0ehEcaHp~pLqz3pJ_Z|Hq zLW^~IQhH+sN&{1TAbiu7(Gpn450>Gx_J|1uG}!lRtVOYoJ? zzfT4ESZsfv!qO8d>oFP5$g=fRWn`=TbOW_;ELUHBM0H}8rp>eyY!>O*LT!W`m5F8a zh$|Z0;ja`fBw6xTdcPGc%eM~DlcZicKc{=t999{qo4$OEm}k;Y^Pc4~DE9_b)PD-2 z-10m3O+#KF@av)9o}d1tp7D$)&t*ERlPUOYm3xsr3T!$0XLYHrH5>5ahP z5jNc_UOR<}xmun$g*jn5a|$|-(h^r7)4rpXgtV2RXRv6P<%{T4_sOvyF9gCHxa}-G zLGFu%=V%AgPQG)FPUJ8^?^V+(GF2X}p@@RpBLD9K9YWy`3#!H3T_=lcX)-69Wc^iY zfsH8C23m*n!}GN1Yi9r8{ykdT^o4C~y0fiK&jW_Fdz?NFPLvU?S+fb=vT%R4g?uc( z^=GHu+wBRp!62>~PD8wDic7x~rGhG0)&3sJdSGF=AIdB|^CyI|2}>C3jst^{VeE74 zE1u!3zea*(Vic>SkI5#?Cg>9 zjbUu2JDDSIk7Fi^vzV4Yv618lIWh?@B8+UpR5n6`C%1G4o6ULeIe5LW%w`A)6@6#3 zX=w4b*=!Icp7QowHo_eopU>v0=$Qk{*iaJs)sN7MfHOeC&E~io@KC6PRba0Y;yc*dhY$)XgD{T5=dE{+Yq>&mqdL8THYRNS!dMHk31OCXq6b@WZMR6i8 zLB79%-85usZtBFiy3u0YWQ21|YkonZR@ zBE-(kuJ@49wQLaKwRJY#A@l0kRs#1{#AW8D!buv_z{Z*~aa-HV&2gS`T?6ZAI2-m} zV@WD6M}Dca++rPF;4+Q5&n^>uOu$3t=7K#VLRBweofBRz>MD3rH@T>X&>b(ks&RxQ ziZYY>D)AAPR_Y-5fm2$k)%bl-+0P9J$-D~B^^`BWt8mooqRy;trK+cV+e7`xjXSRf z>5E0IuiBjt_O-+NneB_`wvn-ZY7x~cP^#36ul?0#leHcV2AuNS4yvG#|BL|jUF`p+ zKy`&zDN3q<=}j1nh9KQ4%L3I&gzpKo>$)`C)oIjJiu`h5vB>L$HZ;n%!D%0?m&4hP&vb{ ztKeb49(i`AI@Axc8?;<~iSRZhcKth9yh1(cZZ5CJFw{WU0bORir;cTCtA6=`dcO_c z`^8Sx<`-S^7M^j(t~cJc>vyl&^>It>`jrB^?p}^GP!1#_zp~h_C%k(|b4p8< zddZtA7i9BA)z|0;OP$(PB?WT$RW*s292bK0o6jjqh1^lE_Hy9~7ZJ8AuU}Usf$Wvt zRJ$8}ec`rxt(BMOr6Ao06Uqv90Q#;A9BXre*h~3kNaY5`{fKdZsq#3ikPlV9y;V8t zh1e8Dxg>XU9!k6`kkRIUTjJg_ra96|t-PV}{~;KP09Ss<7@;~hzFiAi%<%JLCPi86 zf$n_{alxLj?z|u&K&@s3iy-h=?)B!^C?vP6E#5g;UTw=)QFCT3Mhz$jDrBJ#cY&ZI zogmg&c#&3vq*5n3`SLg5D=zcp)f{gxwDSIj*Yrdn0*@SZs0}z}hK=VCo{Myeyl&^! zMgza;#OFb87!u5jaE>9r4dt_3AfZE|_%&jxLe*jDrEaosH*VwR8o1i%4!0!_HL3a9`|fn2}|=&~@C|BXhuhGQYShQIs0g|noaxEII-N`O+J z9H;=Q0P8Z${#$ZJ8voJg?$OiuNiEWO3-O?kgapi^$=F`QCwS`Zi}B%E5Ve_zaYlY7 z>XZN#z!o`vCZENiOP-j+^LfZTV~9r2<@pQ;U1zg-5=@Wi1zbROPb|Q&dzJr!RsfDW zXc15)>lX4N$`g>z6mwqZn|TG2r6M2)V_GBDEBEBY0`5)xJ?}m4hEp)u9Y`kt zhUY}7Xo<^|#f5wX$A_O^&O1`m9+Z^>J0)MqmzgjLi{If)!|JiJlyCOH;vch}hiO=2 z({}OxT=~`b+-EejPjpoC;0=4+9SYNAC~nqYpshd1Ukf6L1Xp?monCfvw@!=G~){49RAvU0$r?w7LSmWlO42UR1KA-9ko!%oIDn&?dRAwmW625 zG`0Xv76t#8fxA+{lz;~ z{DGQZYiPh9jMuQ9mCBq++7xe+D=uegn{l~frZ$xE3QX1}Sv^OCw5}Cf=V>P`37A%j zlBfrztHy3DAcolA`5t9~blW+!gaG^HK ztlY-v0S-Wyaf{G%(FsUb6>3T*c;o4*N(HzE*dDDYJ1bSC326mW(-Rm!_DxF(uFK^I zuW3cbW)PO6om4TKTk^G8=-*k3jaHUOx20MyN^<3(0xendU%kezdv3PtKCA8e1MFOl zPDQT*YQMDWw`9d~t%X_~Vc3qJK{uoyL7Z8s6}dm_kQ3w~uMs0wX|?9Y-Ehyp7l@uw zlwzr`)?np1<>WQmL$ha;!y4s?>S~RQ>=_l)vs;YJ+NibTmITCm^adP2dq4$lAy}$b LmTu8jz}Eg3?w1AH delta 30077 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 delta 2948 zcmcIleNa@_6~B+&$1V$tORRzr;qfuoy#S%g(@6^%+8AVI1F+_72n~x?2Qk4?pM|NYAbP|%ZP19t?WIAc;WagRn+$UdB z=}f0n_~V^(?(cWbx##S;XU|}C&tUZA;2N>X6PAL|P*Kd*ib8@d2+vl`St17mp{<3| zP8#;rsn25O6o&SX(0zKl$^``o?v4QsP3JR*6M<* zeBfy>fI~giP}P>rHi$yvNA zHo(btJM6ZmLr%|JC}}TYo6yNDbr+PDrI@DxZLp#v2Rh0f5bbcV?;_~3ItLaV$$*39 z-!}7$K&Y=I$%$z$4EPp0;q|_y8HG1)#*5R4aeejPNFCOPvip$VQc++HJ>H zJP|wKbb{ob&%TF&m%EG2N;q;;{j9~dfM1fg*Rt;;qM~(&WmRZu4ew){vFkn`G??eX ziQd_!ywdeElyDxa5))wg#%HErc=a;b7Ib~bky#QC^!#RSH1|<9uaJwd{&FL#hy5bURe~#Qli6RZ#+>7gtkQ# zsD2>JVn}&~Y%2%W#Nm;E%<2*apg)MgUX<&(J%A1#lvx9pA4EAQvqmllQ4Yy0!sQUk z+hq0-m$${?_FXdD!R2rqMwL7mZAxT2xvrqzWQW_DvRJby2ur~g&4TuD0n{}CtlFNJ z=-NyJp%B|$By>tCaHn*}RDx+YDA}-f`za6~me~)vpNHcxE1GL5+DyH*fgt-4x9!3l zqB45~<=!SItl5BxZjEe`f$j%h*6UYR}0<-KtjT%QJ)yVBWXsJCpagf=w- z;y#)EgrDz=!}AA_+v;FHMZNdpT)4aSWq517%rw+5_7vgd^o~!6c}ql5*v~kzJr2<} znf)APPuFbh?I4JqGW!KT>%;^=wh4O(i4y!<1GXprfz5IA=0F^B-o@7K&z}UWMZil! zH@JlFAZ#6n?T^F7F00TC^&4|0fo={ob(0>1E<@;g4(-BJ_FG^@S8fU+0^wmD_^%zB z5B5V2GbZ3b_$!^dU0BEYBJ#;WG<^#_l%fYuS0>!^_zRt7vi5{E;c)|GF+k)n!oI0> zQ&S?tMHPP~C~isG%R|DT5!obHuy=TWO;k;LZ_f9>0A9e4>HIu6{0ZCPN#FyL-g z)5eA|H?P>X#X%Af(bBUUo3kKcVhpKvkcyZnIf_|d5FNyXsQ23P$J;mdz^#Ury%pMF zYB8YX7=q7hM?`2)Gx?J@ZDz+`yiIVWJj3cVZtX18eo2$Y=;Sy$7}5Gf{`y%AfHB1` z>-gJ;D?_$(qTfH|u`Bv-H-}uKJxP-%qLO}$JFFcQA-h7tMR9ME;=QpIoG|EKfoq{C zV=O2pa^qjeUQTr4}#+K2Zxh3bC(lHGk<(K+ z{g`5vB4NJ7tD*DST*yBjnB=F-#D9tN?VNvHfzo~l%;|qtIjvvmEZYZ} zhYGa8OehjgrxxOfPvo6ClY^ll?SwTU{Xd^Pc9Km=g9DYi(NMX9f`5$ zC@zfiG4=xgUWl>Z@b9Gf2yGVuP2@v@ZVZ-e5 zblabYS!}xPFT?E3>9)TPv)@x;_7s2QPvj%=G5G}Udh6<~?QdT-T_v9lxZc5=pg=z7 zH_=Av6y<$t`hxr&T<^azknrImlZXoW(zx(PRInHtxrX|A_Ay?0OebHVWkmagPBVN; zP1niS1FlamnIQ9nKX#U78imk4qaxbLKMlX1Q^9IzBthsBJi=@2Z&a|2Tg-;-ckBx) zq)gfp4eL4fB^6SqTCIlt47)}J$IW(|aq_D675%q^=P>B$Z>YMU>ItfDQgySci>jWe z>K0YEs(O;D+f+SS)l*d6uIj0(K18hTg>hn}RQ`NIn R{dQHKuj<*S^c?f diff --git a/firmware/20230519_firmware_dev.ino.bin b/firmware/20230520_firmware_dev.ino.bin similarity index 79% rename from firmware/20230519_firmware_dev.ino.bin rename to firmware/20230520_firmware_dev.ino.bin index 42f3be638d54ef495b6b0a2788421cb586b6bbc5..d7d52b1bd59234a29a766d118924b08afe78a982 100644 GIT binary patch delta 29814 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 z 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 K-mER9B>Uff>IOIf delta 30077 zcmagG30PIt8aIB{hK->6%z%t~_F+a4_CXUBWP@y^6bCZ3u9~RVtSE6xEe$KTX;G=m z+SawgA&0UYu&|q&nA>ZKW9F0^nwI9QSg64Herq4Fd%y4bKYt&8YhLgBu6Mm_*lVrB zj-wG9@L#ZXU1tt3rGFM+I^DTL$aO7Hv<(+!_s*z=&ECo&6aJm=?3N|3w>#I@z3^^J z+E$ut3+ME9bhypM=^g3IHi;;7gDs5rPj}1f=sufBczWG73hqGr;GXK`kbRt3>Ft}H zB=k+uj|B%xslsvl9??-_Gv6?o95pv~mT<0}E->aw{PY#U?pm9&BDik~Pk*t8li~EP zJ>8~m3(h8~R;71H6PHTV4{3KtA7s7aaFSU1t|P9Ey3ggV4d!W$Bg4LQlqd@;)6=Ic zY%+u{qr5ZKqfQJNPxf)+xOUPVZ>m|}9vsldWEvIkQgv5yZIO^|O||gjLPl^1T2jsY z^bpNHiF49vPODR|aRo{{JUe#8RJ90RM&Ea)aq2eugR=*xe@z2|(>eVsni=fo)Xj8w za5$R(LU1Rz%MEvb@Q^5dwJV#OdF$v>vTm~A2X4Kfn#2)8u;9m2IV9A{XN3exd&J}R zi=;(6E9uiA$sn>gq*Ju=kqeDC>mRz3b5aFEl&!(pX2j^Jkofj$U2rysw6_c; zx2iahhKF_|{&Y}i3a4(ZDi3|e4;23hui*6Ibb3T8r}w9;Ba$=ue!q?!RQMc4T`Me^!MrI$f$DleHVlo zWfwTZPsWh>?*{*SppuVj4=^SeCao#`D@;H;{fDCps zTqk{zd_<agEDZ_MT;d2M^fTg-UZlL>8u!kQg5M#z$!POr*ATAz*knU~5Na-S9eUV%(iiWC_yqc9htB1CCYoC6t{J71;M^`= zcgS!ldE#3&f6 zXS66!ZFJ_kyn98De;YNsRe${8;G0%v99DH3R9LR;V?DKx=}@m_I#igO&NDYl-3zx+ zVeVl42e_kD=9cozovwfH^jQ26P`i000fJ0NmNL%E#4S}iwX{pAM=2fzl&*g_O7H7y z6d#n-(khAHSoK@D z=?ZhR^zCp9Rpt)nnLA3~2DemU?sT5!xT4DS4lPouzdJo*r7kGV3v|GOIldnfaB>Xg4#Xt%3|;N;>mmdFH08o8V?C z%q`S6!X2zKcNEXuQhfv5=?ZNtb}ZNJEkf%jow@&NMoDHek^d#Pr$ugStK7$(;=<+@ zlL`M@bT!Qn0+2mD@FpP@t z=*RA*oPLC6$3%IQb;;Qla+=MxSGgo1QN)691Of9b z8_hW>70o&8`iZi5)r*Dudof7j8*McW-cW}>S-{vO3Hn`cO;wXr&!&;F4z;UYSn2Y( zFgq!)I;0y&RYyBi;-TAOXSPvN>{$5~D#!hkQy-_R<3@4nqckXfSh-&05Ukl&s9oRF zEUiLcvUyVdt63^&VkWiKiD?oYsHo1mw8~5_uaaZNMV+wMy%M_bl+&0$3z#VmL8qka zkFi1Y7=mFub7L`o4t8SpoO{80tI}lf;&(Pn6^s|Hix&#jFBuaI%9ovDV3R9tfyZG2 zA!SE%3lse(gNc#@CdvTDgdYGVYJbK=VJ?{HMYKyoY@z;zkC;BqDYk7AVqHvXCYIVN zGJn9Jre-qhD>SGTvN6<$QB#=h|bo#pp2f+c;!2#N7AE&G~s`7TG2^XuXx*&S!)l)WC+KwH!>@M$)9clI(?j1V?f~Z1^lAnMI)+9&e^V3^o<#U~$DAvpT zYrbA)yNo41RvcLI4#rBiGgfxSif1l_#6BpnQ{n(+VhbUqhx10~zYVjnRfFn6AF=y( z5Nl@;Ys-kWHHa}cHu9Pp}GOPPH5a9o0E1U(NChXRdz5^2N@~-07$6^3{uRE)%QEH&CJhgmZml3`Nrt8&5|1ne3+Wv!r`t%`n*wy zO;7b%yxIo3DEE!hfj$=hX3F@%VDUX;@jYX~GZ(|Zg~db7lBIPT_-C^e#8@cFJ{HPt zN3rM>^~U5lUqkdRt*uZWF<9`M8H-(vh58*>c$DuL4}B-&q3-nYP}7^GzAepAo@|yb z++#dqTX;|*Jvx@pH^`}s69rIL$Nv*>ndMzOxPO}xk9URJNJ50;*|$2OYt?E!baCgN%Ydr55+f|LBD zGhXo*FTdKYbcq!wHtM`hI>lz=3cG&ME1vYaIaBDXX6Xdd6guBiRIbmqkAJ1ek{y6T zOYPDwR=C{mF`J6;-JvhCOFLM~%Sa(CMO|o@wz0~ykir=$3+&R@EM+EA{8)%8N+hSqlG_eb~aRozK$8GGeiDW!*NPX?Px0GhX1-O4^hmc2v(f zj9LCO2TWAZkFrT%7PFjLtRHxq-6die|BF$EUt^R}enc7NMU>%RH2P|W17fmHyVxWh zfMH>xS3;Y!t?+*K5nt&eet;2w0Tq=Oe8ksxi73~P8D;cJAMsi?HB4q=PBMs30^ z!<4g4_~`HvxB7@5F)At_8Wq(&sHje0#3!(d`tzuW{aKiPx=C8&tEjeP3n1Ed(8uz9 z)XapQbjGt3Rn=!%RpnWSuqdHJ0KQ`de!nB~T3y|gXHUm}#09MIijk~)ha7Ih)7f1y z_J44AYSNkEQ->O3%Vug&euCkL8J{D9{)a<)9pg*j_ZTesg+5`of}=799QiSZu%qF| zD$GsinVY4SIOcLDnA~(PTkv-|I584|!(#YOG2)yUc1vvUs41h754~H?Pj$fliqLz? zvraVRF$Xg}qEB{6$BktDX(X$UI;5Yxn1hu`4t!A>#mBSa#SWo2yqYHIppnWy#Yzu! zh#_}{81?rKQmyx9t@lu^_bNBeA>{stnc*|exqc9?2ntdiPdjsWdP6&#ZVYf8%r>?s zG`E|xTrB||rLRLY-4*Ktt zij^_W-F_x%gV*3O+L`;AH$IgVS?hWk97>$x9}R+2Kh;56>plA^$kuMkT@KOoC!M8W_ciZQ2Rk!(e4#$fIc#B(HJjg!-pb}7z)&Zmmeg`V8S2b7!yJdT zF$UNXo22?^4g^iTJ0?mP+-M_HKWvj;_GR{G3^R>Pex#AfAF{y;Scj?om`WdV;LDy7 zF7ag_ut^hr*^jX7F2)Qj6zKzz&9>tEY|^tvzFx@kJup3dL@Udhq;Wo$eHcs0NcQrT zO;U-kw1Q;pcoJX9#z%IC?(t+SRl0Y4lAmJ(m0vns8I7H35!S2}{VRv~QiBJ9Fgv1Z zqC-k!R?^3@+vs0oW1ONsVPiXhS8b^RiYkx7%2V_>hj`xWF2Uj(t31~MgNLWzbx*XY zxxUE&$4f*N>D}(h`Ft-nTJC$V3X!##?1}Og+Zh)TBxXQRJqjHH`uZD9(sd(Ql~`*d z*|0OKY(h~Z=u^ur!80cthEXnar6 ztfcs=)fv_L^^7qqNxqcRM#{{dAQV7X_guuO57VAmZ=>E1S!^@-S5|+x1=;L_p)~uE zbfs$t)&RXrhpe4?l5-!2kB6wFl%%Yreq#C^PmRr8YQhPe?&*+C+_kX^{VhADjT#2+ z*c58(l@!aTcJNeI^vHs4QaTjA@*F9yv9Y5o6<-QOclrvB=;gNSi5*73oKpqCU%hKc zxu92Y`Qi^z5#En*?JSo(9O3l~n{yT;JRac_NFO!LB~L;4XM|^i=Ijpcw(56fj9S@J$}ge6cb)_$y*@D zl9?{K7JlJqms|(`;!7^M9{$!6mmJv9Ejwy<1l|1p?1@8{YEE+)xBQ##eg0Pi^q=h6 z7Wckjg)YhM%;~4-p4_}P>T!b)wdWPI(SI}qqa*WT+v`j0?6}rANnAMQHco|WzK)a2 z>HB%gL;BT3q4T-tQnT{(la5QAbjjQI+&+AEDrfCC`Fb4UW?S{0cIkrGT^q&M+3|f< zo2b{&;NFKq^zDi7aa`UC@1O(T%6v=_n1S(G(%VfcX>@*MxU$|ZHDJZ#FG5yK89&)^ zWQ(Ej3mudn5~i@dm-3>$0CN|M(jIlqKv~vx-CB{RByJqNkXXGfps_N$W6-z+YkC;3Q9M5q@)|4@+!qdy}jrA5HSyidR{DnLn zr+C<&9*!?j!hT{m6t0c8ue=-4Ucyp0E6Y zMkY;``mFs%noG&F=T+h`H5)1Ayu)#oLtvaGhA)e5SIjtML4X*CQ9~IIv6Qa%b7@fp z@#r}HIh5(t-zdY2Mwu{v9Ln$+cELX-29$WSV+7YihVSSj!;fXHOSfY&a~}|(zP&l_ z17Ye9_VTM-=x8EMMq~7sp)#074t5)mlJ9Kao2IAQ*IA@emOB%}c^bkyVQp0tjk-$C;l z7U-*PBr$$`PZksHL!NKv6N>NAVnC0g1n;s7<%U#xCd%<04eRO58v9v`_55r%bfHGu zPi=P}NLPkLSBw@Q2R^Lr=vf5RDfYP+y(Ujer*kPOkum8R3+jH|;4baNddQ;pL8Gs~eY5Xd?6v8?|e+iv%BRS2b=lhuPo4^dbL!oyy)E?S7X6_>BHY?A4IM6X6 zQlZ~Gk{qtcc6Um$=RjCrx0>S%#^TON??sy*kzvv~eLG{ie!g!K!b|!Vaq1KF_r7jK z+V-1JuJ?=`m5dobZ(~~f(e+OK#VX_0e- zOmNZj{2d$mS*?egt}r)Czirz++{ChtO(nCATda)2+;pC~S?Wz&M8OUa4C8OIJoN_4 zQ<$5jU#E_u9!@>n?nz0^OLOh*EN9I2d?)B(^vR;0?fJaK!zrDl4$U)f9m{BQFtueu zp&N^W(Xib`o$ZPhHB(UYWX9f%y|Jo=^8I^S)ozIb=Ppe_Z?JaI0sX@tPK=C~>vp?j z7yK~51_*#ZP>1>E2r%QV=A2#dw*ni0l|Umd5tqVW49o*&(vAINZTb~vW)@83SFBj? z4$}+$yM*a$?UAELaPG=^MFA;(5$@uWPNPeb)iqQakmOXi*hh=W9+o%49FgI!DO2ck z10vh2lR64!cfYYk=B(RDJX{ibxFk$nMn4`9HdtxEu8-Gk#bT!-v!|vEdykEF>`!XS z&`F4VXFFUwjHR2QRJ6F?aZgH~`xLn{M*7hB>ag35ZQxAYL}6GFPf4;u+YRhet_ud4 znaa@Cbp0EfM@$yF4yg*1=3>{Pw)K_ZAA3;ZYoo+JhtL3Qn^7XLrNpDHCDdx8#MB{^ z{iSJa=M&&7p$~je;!C4Mv@+yTPMW|(J)1C>)g-E;?IXA$#kZwsd`2dsAJq~&>jZAdqFYip zOUr{QN7?hla_=|b^2J>vD_=260bjGl zSPDc+7rwwAn!O3T@kI5Q-F4U%Q00~UScaN!54~k_SJr}}D`hqepNkvf6JN>&F$`J!W6E4A9ZZg*4nMH`GW3_JdoWs- zXs*{V;eWrmCdJ z>g?*$1ne3I{p1z=TXu{QLz211Fj_FASCkrSo%!d80ORi7s&BEn&BrS?Nq=}#EovIA z93tB=6*O@bo7|l{pLDx-;)v_U5bV5e(Vj!&a_ht5<%>Waa2z-Y>;kqhU<5Cxw6>C4x`j--X``&p|>qGZ7>#YqA&8L-(t)EvMv#BeKOO3 zu1&(Bn-S;ihZg)5dTxMcSr=i7(IH3gBZm!MeIo0UUN#(ap!46hjXp$B%Dp==C9a4> zWT>CtM|PIYy)3aD<9BLQ=wad!2eMDr=U5_UFPnR|`V-m?mOX5zazGagm`j|kJa5Cb zM?f^&g|K5f0*h>=9@Rp9HK_C5Y*H1=p8Fu%=F8SUVcA`6(mIx1KBpzWZ+uJk3S=u8 zHt7>&;|rR}UD@Evi*WPHS*~Q0K4!TvMwWZ!L2e~-)ig9ADp^#vp=A`6r7!LT=E*BsMN;>8tL_!Yk0$Kcgznc`7f0QV%F)wzAuH%JX-NpJXlGeH0Cb zIi3Q+9$6r?%NDx4$x~SmUPhc&JRW0L{V~f7isyz)lVH)~^(l16Q@O_%e7Z$QHQOhozJUp;TA7dvTvT!E7Dl|F7beWgt&FvvgM_V&D(u~0y|o88 z^ZzUd;jQk<4UDy#i9#C;`6eQHgS&F2AyGF(>JTw%j7DUoyK)K3QM#hS5~ITNNL~V- zMujej9AT{k3w7aX1LDlzig+_yUbkD=A~{~&iN3=T(|E|FVF)tQ?UG$?P8Ria zW-0o8RN8~F$g{u^1k`&7)WIn4S?7kZwP(C~mz6;Z^N(NzG_;gp{uRXkf{#(a!)N0{ z{S&?or1U!oM6rR+0*T;RZw;`)^ar7bP?4`^6;a`~uOiQUHpFhV)YEUWdW--IbOC`I z*134hf-q(fHm$^Bd}2ORXvByPZ3D5lGXV|ZG;c)0IQG3jQZ342FAfEWddZq6b_tCV zv;8qlGJRP~*o0^(jTyS~yA|KQzW5s3J}&fDJJ^XZmd%IyOZSms41)G3s-B1FOxf+} zff32EN4y)+W@LE0q-A$S0SPvPM*8&&tihmG?4A%pU^&jyu6ut6BCUW-f^tWs-bixPj?npZPEn_zKP z<``Y1|G<=>z-9KVe;;iv@Q1ZP(Xf^8t%AVLij6o-f~O0f%;XOiin59Bdookxdsxoy zypo8Qb8otFWLl9YI0DQloMOUO$h{M%P4T0~lq+*A(hpwuKAS$oc9lES+_3KO**#u8 z)FSF$A)wB)W9FT_%CV_teu{O7!;&blE2%|h>Cz;QN zulE*NoT@;ocu>v%AzkB8N;0a$8Il%cZr!*F^0a68V{y zywrB$nFi0kE((n*iHOyIiyX3(7k_HN8!lzGb?G7qZrq3Y=cTrl{^b?tTvO;1C6O_F zjHLjl!{a>R;w}_6@iVQyq7{>*x4h!iYw8DdNlEWuzL%}S104vaM0U6Z4d_|)dda)( zl%G5PzVwe&b2c_L?~Lxkskdp#m?t>>Diz1{VrPR!>^H;`%4e|Q4{ou=h z3kU}MfqJCR1Zsg@z!qQ)uoRdFq=ceA{9!;pKxSz`6wrvgD?lA^9M}VF29^NxfU?kd zw>%7id|()uMZvcLjS%Vza1a<=rH<{*Df~(+C*plx>w`mAIKB{pCBQu3Eo_^n!!HAd z1A~D~VAujYD1k2kCTe~vt{j_Mk1!So>iReLe78|J{X1+;@x#U1CaZBFG2M!3#mv9V zhS?*ytWzI>*@h|1jnyA!cNj$9a*vhKm$9k15VcW$y^*6FG~NsHmB``ySkHF+3q4`c z*II|w)OHmQl>ar%fs3QP;^Q^^yGX;W3a=~%Um?V}dD5Feus6FQ?2T?uoB3Ab_L_Ar=3cijHk9LWBj~Oq_}D}t^=&J= zIl|V?D)8mF7{GC>z8!oNb`z;*S+ThS{R*q}8JmaRL@8e(bt?+#J(vc1Slz;jb$QYX zc1AkiDlKQeMfI;4y-Y^08;YL9F1R*W*%k>4#V7AcNn;%5BB%VM^oFwP{*rQ&+3C<{(-NLMjBPwJ4S)ugt}@v>MH51 zqx3Y)FFTTP8G=g?fi5ESw|m!dK^Z_hNr`W71dHPv*kVRfAF~x ztHfBfjbWrct$*6ZsZJXDOs5Wfmeozt@@isnid(o4R|g}9&Q80kc8X7enW@b*skB!)KN2%CE|2*HYo^7Go6x6Wy1v&9FI&a0FJ}|} zBAaj*OgcqP`J%uF@nezudREN9R0_omiXmN)pxA zBlE<>J`Q$4Y*yw)MqV4&{{%|+7tSuYEG@*B692QA)yEsVY!0Vc7X7OEP=z6r+Rosu zH#RcH%4JLFnRdo1($-qegvB+6^qQBSZ#~U4cgb>g#%0X8q0jjb869+J>SZAYe99xo zIk>r^NpJ|kcoxgj^zuk#6bNU_E=yCG06&^pGC!+TfD2~j^!>TPrg4q|hx?n(j$xE6 z{7aFcxBQA&QH%Z(NLbW7;pUTZj8G&qzk^(zr4{P~5mVS@I1fB$aJY3Z2 z$_bq~K7$^bkYrWTVZ77XM5`BA#gjCstdHd<-|h0xExbpTf%kWfXZQZWcP}l+FPW#YH4}i{FP<66VkX^rCB%`($v%Klas9K z&ATnVzz15zU+ABc3x`a)EN!{uE{PWpU-Fd1xl3Y&{)hKB8aL{f?@Gs;jF20CDmqB;$JhUs}tEwHqjEAX1l3f!n|SS10&rf35GbJ8H+?Qn4T-+2xw!Jw6T?&a zY*Jhj%THiO0$Fg*RbJ#P>8R-+ zl#sOUK3HM3-zkP-!9OPkJ8DL;p8=)dR(qk>_Zy>O;6Io)y%g>I1_M0Xtah*z5rN07 zWZ`Gi)R_sKGK&tGSzvC!m3M2UGP-tVR_s^TVG3^Hcqr#DzH!0BwR4?wO&i0VbDQ+! zh`bdS9~N^RG-y_wi(k~liO!v(A(US{T2{m#fUZpKHG_ zc4*1fX~E0!R(PwthEqn;oVnd2 z^X|I)ndY{EHUmBDXQ#Vu!kBco%iS+f8bImXS5Y|h^$*O?utx!@0jvv6OX;@PlaT)V z>l5G(otF%d@@a}m99KVuU=7aCHR=zLJ&qmgk`68!i^ym3*PH`KIiyQvG7(YoL zeS`--i#xObIy%=$o2GD zJ}$h-GD6T}W5=KU%@HTQd@egcj|nfrubWaW*#dcu=Dqc7#*;`LU1HHA!w0Rwks29$ z4th4~g`wUmN4z)`CHRQH>-~e)y_H6eQ`_4^Ni!Y)cC`4HQ3rGrH)bv)oms5=vZRgV z%bN&Y<;Zoq>g|r?v#Q;1zd?c)EO5zX6)w4yKE5C)>7#`%nPGYh?!ymSW zy{cwG0SOrSXYC|uA~i4S-SeF~5Ko!oshNpsiM-hw!!96&%xjIMq!OaC2vSchQ+qYA zDXbTLb5WE{$wFkN-m?M61UPf;Nvjv_hh5I4DP$0>qJugqx9>$wPFR5#2!fw0W(776 zMJD$rQ*hpJ?XTiPytLh$hgiN_AFtB1#cNaf-|l6_{BL<;l-KM2D*j|n#AAs(z8;J^ zik0&3uHyI;^z(Pag4G`%l zrTf(Kenilnb2D#y@=SaJmEM22NB>L47O%%WwnyfZgwW@G8_7O`u_&kCV?SO~A7{_r z69nlheszM+G`&g?C(zCByMj8^W1YlAqSMpwFGEwyKZpqU?YBHkH1y*SFl@i2zkkqy zQ?}7I|AO}oP59UTkPR0{nAzNOtr0s3f>p`Jhu`!4^u)EaPaAp>oXskIerc#pX}(*x zW6D?kiI64k_(iIviV)SN?EI-_o5+<4GaCv@`=NNA!n%1pOFW%Je_lVIxe- zK6H^ebm51wAfqAf{X_ zuF3K&TddM{A7yqZ{6%)#_W8N?QA|Ag|>XF^`rk6 zTUye#|6l%Ly6vOxB%c2DQ8J05?vGP?Mcz)uF_bdu{?b?RB`EN7n+5+q4u5^r{UT1f zdL}(*LEfXLv-9xO58LvQ_t)LZwy=-8*P4}{_i``LijO;GDNo!FUF64V>*dW#w|i&b zsaxgX3h-kZN0LRna0W+1Ll%*pVu-u5iM+vv6Mo^6D(tK!yqn(sI3{%U@5T6q13G4% zu_O2vYSfS3)fNoIZ-VkFlSp7yX=N-ap6$UeXnU(!Toer!G$j zd8!V-Azk>5u_nx+%{i4oFx|LZjEOztS%zO`awV&GmaIBgvhr5R3iWE>P3^+DLwH5O z4+yL2Nbf9nai-sC`xSjSrHqbRk(i;*!C{G~(ogRghUc((yu_VxFCT>iMMqo7gy1lY z8hcx*`LuiaK+FjUHqviaxF4GR>nsv6F5d|SqBb)M;P<(_t@`RjiTndQAX<5$6n z+g808TO0K@@2Q;5hD30f^g4B}ObYtxG&Ftc)w3(9vNAjQlb;V&{3d35^Oom7$4BI2 zPpj^~>t3FZgU@O0)U|inwY$JS)0RI**RAXbyRBWBLKf4zD5nDotm32rP=iV&nP#BAw@u-YyN4}VQc1>LmTjcw0Qt7DY)7gz_}F*=}OjY}4% zo_p}i>Mg`3r~2pl2UbiGzFU}bl5ILFVlw@@B`TJkjJZLtaFlpl^=nOlP>zafFxF(_N0n$+P!?QqPZyW5yd%OUq75oqu%wopqRTMn9Qd`Hl*5T9Y^(XJMBdrJ9IC@I=Fa447o$M zZ0JHRR$bi?P4Kj@-KI~;5A>@|+k*seoct`_jfBxzRZo%;^mJ84$kLxdA}K3T$Sh73 zaAACGc_`7UUfvwZg}rkW`eDC}hC;E^$WM36yY4mT$aLdZ1A?ZqO#F+bLDi+HCr*OO z%-dJF?&MY_AwRKbroGO+BO#+#qM+}M2Yqtbk<~4_4cSkZSLfL?AxkQg1%4tBM(_khR+|Bi$C9Q=OSiG_D325r3b%4x31PY|Ns5u2*K zySo!}zVT~)pD1Be*%L#8>C=10gs(XjC-*!PCujd0C+pwG$;sH%*%6MU7xui@Vdzol zEKqWnMz>hS78HGNadXa6;2?ef`){MmkH^UwKpJv70Wm-Vus9%I?pQVT2OG9Rbnf0X zxL@u4g5PpFP7a|@*LK5Nx2*PcG%0Cc7g9?{?kg_uu{}=i2BZP;Kst}p?VWLQEc~#V zIJx(kI5`U8YdhlP9E5`rK7_CUe=5rP!~YEN2LE{Z7nHvN|52o0gfGFbgFhDeN8qO+ ze-Hep;BSS$wkEDz-he<`6kG#82L&tPhr?e2|JJv0@&fqB;Ln5qCH&d&--SONei{5S z`2FCIho1s}6nqQ(Veqe_K?C9Mhu;tW=kR6t74XlWL1X=KUoZiYJy2~dGTs2=F!%$g zzW-VB8I=w^1T!ChAb}jNT5wgo_UP%JGhtQiL!A9xfrLIk6x8 z;&?A}8Ehy6x|xHHU0-$g_!PqNZ&Xbg_klkg z{>ZA+KU+C|IEd%do2R2Vejv4;5y@pLoq3d8q3W5A0Z|0^sV4gAnU!Wf>$bG2$=5!e z{^OS!@>UMU<7L0Y#jkKLdjlo5+^jxl%!Y#l|tEUxsqV6r2VZD z=h;a#xXy#wqEB59K~KCbJ;8`$gG%43dyLGYzt$-M^H96t7uxx3zMzNWEmv!am(PA- z<}J6S>p1CPC*N7L`?;6m&Z8w+@3R;A%{epP#Y1HHGvRlDzYBS5fI0NUx&Opngyeew z%h5RbhoA7E9JRiHZ-r`>!dHQ@RR6UrnO=4O*BK;oX&Y1pb{u6*X?fSak2~#0is?HS zI$#8Uap4j3SWCQI2+R@iJcshXi6n(4{Fd5FJb<~vT{==t>6gu6gQ0$ZEB8G13L}UR zqvPjjgnyz93G)?-DoDhwWwa+HDxnH5Aft$bF8VDoz75Ouq>M~=@5u7={5UnCY8c^K z$R19Ka;H3$d>V^h-EYI}Tdim+umC6n`q77fA4@9e7r(!3-w+fpR{|A4DKL;`Uwi_e zS4%Dq58Bg`H;^`6d>(t*(o31Vf1F!BMb}=+;iC|mL$6+l41rI$B|Yk+ zs?)VMKEPY{OOCF543?u@< zz$UcLpMH2t32xeJbh>zR>wzmT7ett_pSer_ymh)`4a@MPi0)EXx@U*GCWkB4B% zQSA2^E_&f}V@M4>{-;E~tZMsL z8xk{lKR(P}#6wU#6Xw_7l>V$|?}e8Kcn-wk`LOzIfbFA#==J~ICGw=!khUSfvcK|D?ct3+g(8um4lL9*Xemb@p z8}D}_Y4r5{jwFFL-S1@Hf;n$7PzLm)T^lE3TfVmOQ8Qn1Q|ieG8x|MTG&yMjGYeom zFc^@56d(-n2X27E8L0mh{iNw*o7(TDbP4YZ=HQ3|e`4ZAI=FcOWWLbcH#!r;Gz#zs z&SL_p1vapW1eijLyxquqRjT(kA#=4EgnUb;Xx%yTtN0$Qz4!Jwxffs}CW3!$@S2YK zM)XK^wjcR~kQLgm{$!9j-!ERy1k!;&wOpP&E-1%tNKfB0eh$WKt9UYu=$e-&Pj`2N zWHj(2SnLD71HJHFP7GT&KzJSPzG$qjeM!LEP%XD8nvW0B!gVnMzkSi zpt-*diRYB>v_IRB1VlRok~~7Rl0ec;tU$MX3OjCqty;c|ldnNx(~-6jyN&Vi?b_FY zy3(+FLXuI~cK!y@kvztlp+$orTent-4nz5}I+k&y}7u$L@pymzWB2WjgZPp%u zZLc-}Y#TRF`_N3<$FYqO+Z3^l(0C*-fxiY=08|2nM$toN;tXfO)c2ZmrU74KC7TEg z)#K#M>LxSE@w3+<|2XhHq>4X=0iYGx$!8DcV*+5wGWW3AdjQaEL)cELdsp#zJP41hP%iH_zMX>*;VKgYkN z9d(j8ba*4n)wO=X%nV-BrUa8dWQVpjn0(49SG4gVq>v2LHinSiAxAKY{siuSoj_M0 zyc9c`Em}}0`A?jHHKh(&{_q=+bqZMmZ1iXNQ-M7Y_`G%}lnmhbk<|t5$*Y8qLfHe_ zzA!R{Bxrfzq`rLhHnu_e`(w^z>Vi=w09P;@R-FNzFj4*-{*6#kUIl+CkmwNQ_uw~} zMfn~0{>YmHAAkHrehGexAj(tWZ-)Ood{aA7ehU5^_)o%L7b40_14Maf7$V1mM0qg$ z&4HpEb>Af)2jfxNz6kQTMSc0YwBcG_4X(><%DU< zLy@5;vJBp%wT~t)PFbXNk0z0VZbuf6*L958sAwW4sc&5uv;HsMHLbiAGm5JneJnmj zagLv_?E@jR8pwD=upA{;y8|9c%AD)?HTeIug5T0giT6i&CDg~bR|lgNqdGuX#d{Mh z>@0(i)aG}9u>4EfXB|l75d9vqc(cJH^g6o$JK`r@Z${vF6d&X7COvU7$bMi~!YhxY13ri*$ABhmnC_0I&=^cdT*o_qBO0 z%v`c|*G2jTpZ^AC`?u9@fyr#v9v4X(3DM?@PH6yZW3 z9SGANizjQy7Ogp+gp(W9VF{RL$&XrDA{iLB1Pz@I3ukdE0%-?^2ajWE(i&tFKVtSMLWV7~pZ)|ja)&la$M*(5IaRk0e`!t{Q;QQIx zJbWo1swve<6f%Qs(0*1(E}5f67mx;WLJRFfej(V#^dX1Iyz1`@Nk`7S3y)A+FM-cj z-+6?zCuD(U?nio)Ky6Sz@@Cj5{K2Z$5{909rZ7XR??+r@qK3zPC&|~0QTBIYE8)N}0`>r#ftA1lU$dSH9DBfT^_l%$djt!5}$O4e&5hmnV1aqkWzUH!M$h}*RN z!^qS8vMsPXZ3)`NeCC3pX8Rse*b=OGPtf7{ZpvD_z%*Fe4(xS2S(c*EpRxd zoF}x@;pF+C#?L_ke{3vETREIOMP_OEtZu}76f~0jOx9@^Mq=l2MeF(`cAPt^r$0%S z5J+J!A@5*lEGxlgI-t5_G-~nO{A)l&tXsk){bGGw=6L!QMFfFs`7*FV_fu-MQ{=#KcW&7S^w3Q!s9XoAA^W zu%Y`}hRO+hkaXIFt@5-o66gGXGp=dt%b?G*+W9i#GS`;REn=Hx)%_ccktC>oIq5h*&p~XZk`~`B1 zwAXIFK%y|sSf-KAm|wD|5xHIcYG|V{cUTFrYxAa&XmU(jHH~z~oK!are^uhr8f3Hk z?!<{6ktbFi(Lrr=+;V@X$JhHT zcSr;L^YBLj2V4Bj@NXcUr40mRzy|mO4bc4&U>8sc%&d-nk+kPX7p?0|vWq;f-J6N| zf3#LS3v+p}Hgy)P;YRhgS)`L6S)yH{rQn4Bb_)VwX@=z2{Z( zG1u$o<>>5w-z_}Bd{1TR!ecCee=K~YB^-srau%GU{@tOY(J5uxCn`zcA2))BR5F0i zGlFq*NjE;*2$swxJ^5}%a2ZSW7{SvlHN^-i_ammkMv0B{Nj?#^Kj)L(c3UEb^|H?%4C@MQ z-y7r`Ql`y+lWd1&6;_bd7}z%|NS3)_4(1-94me-k{Vif8=%a_7e5s`@z)nKe3Koz9Q5DM| zbwx^&&^_w!9hJ#61#MiXNei*~O{$*0kX+(OyXw)4$wrPmrUh$cLT>l9s92br&7H!j zL-$-Vo5eG8oBRS^GMN(X4?C0m9*#kJnlBxHOEKe=C)JOm{g#km zE@&Sc4vGE9UhU}*Nau)e*Ptm(pw``5K5xV4qfOpbz3~H*Uh)b}ZEa=Yu@(0Z7100|EyrPVdZ z$T@$aRj)in(*5`;U*iKxJMjzV;Z@qxb=ZGQuXdlsP6L}0^RMJKiP6Y;Y))=zyUvrX zxw<=I~MLkGPpX`%Hbj*MC)$jdWHwL$7uMkThs;q-kdCxH>XT{ z%f|H~h1yRxE{&|I=Iz`SBKp4t5wgvBm9yQorNqQy#g$i{7>=Z6nW;Q!tadoL9)4Km zibA>1f>zH*0f_lYH72)iBxtA+x01)IbHljaB*ecZpJRUJAYp9ZGzk5EI5(1fqBVqb znb_w@5uB4Os#YSnPe_|*=CL6rXg4FdQD}T|6!!&*tHv7N&XJoH?UwTa{CNVoGz5PY z2Ph22xhRXQSO3p3jBFUABb=w{PRwiyc8(Ziqg3DK@Z4i&mmg=|62=GrlYp0 z<=-&GhXbR4bYMJC222Mkfy54Oc`T%vXLCJ}W*5>A0{F`_@jIc>%6xXM&au*Rb=D@BfXfT=qxAhR6oo-{yls zFz$2rAYO;?Dfq1djR(;=sN5Pqf_PYsOWpwg2Cx}evja@N!<9ZDSGx4Z`dCgBm?C9eS*cA>Q()Bxg@JMjmBke`mU2KY;kbA_zV84-tc!sc`+~tbyvQP zx(MgP_lFRbC^zR#EdOtmLrrg>p8y#+g^W7jJSy!179+eAXcZie<2+ay(*jt;3(p@<1x|Pgnt%;`?CKKSVhT z`{NrkAqXTtzEG6YKN01DHVpCAE;$`_%21{dWyWHWKac$3$g5k5t9nemM=~+|voRI) zcFR+Gpi3K?b5<7MPkq7f0!%4`p-y(o=IL<8zt)^Ht1(WVt#$9hMcQxP$L%>_Dn^;1 z;HUkw3)ku4hT)ivMq<36bp2n=If0zlyJZ$S>}^=hJLrUYxSs@-#?knLUbvqe2T|7J zxcdJTcI8n~9ohR;)vE`M4bq}SP-4^FC?Jf0qM#C<5fpcD88LvOqLRc7_bmb920Esz_^d?7BNQneNW8^=Xd6u`QtlZy?XVkURB+y zx^?TmZWVEcqk(%pvV8_?vbflZcCa)*Wz*}BO$_+hOgtj|qG=bNiqxNoVbOF{^bcQQ zgl|UyKpCLyMk=JPKtW-sLom?2*rpSup&<#3QH=fHjcD30t`cRHp!}^sIZ)6Kg_PLz z+dJ_%-oXjv0gclnZ$%MGU2b!jBdAYC^52Y{b!*lh$Xi20ZavU_lDA$~fnk2grW;we zJd8U087;j7t%SEafH*}#E=pc*Lqh}DmD~CZCRp_1IqYYgP$GNGap(o|N@x0%MCQk0 z^aE`GBU}w6ptl;s2XXy>zb`#wshgW`i`)u$x8Ug9_kK(4&6$EBXfA1y zZN%HYiD=Sb8>ATie#d)|y&}9HeIMG%?tU~`8ET2F zNZa}4b4L8{&v%v?gJ~;9rpvj*Xe*lgRjN(jIpPllAbh`3+}=jv-_y-O-1@eUogJMq z%*hmG+{-iuYcKPPLpb$+L;9rB1B@zD#o06(4<*Sb9evOsCZ|Ig+9-CV(|qjCV=`zU zRHHXC=q$2LewRUAjEog<3+qi<3y(4MSIaA7G2;P|KzHC3*0Xb1MJDdTA`5-vU-PumllI5M6_kj~=Kcp6HY2_@dvf_JyQQ zI~YI6bS1~dN<%o4pLn7`uk}pc3!uc;T?L(h{BgC z#7BnBq7hA?NoV9kw8k zi$%<0+M2v8hAoErI9}{pOhcN^GfI6u(0_2C--0;9jJTMtCWFPIB{a-rGphL$#cuWM zC3K9hIm;+DKXzrxfP7n^e^j6!%mr>Daw+wvN|qR~l(zPGI2mbdqgz6BrZ1(%W9MleZ|)hp>zLXOC{KB82`^&~+juuk6@b!g2(!lTZ5VZhHcF1sH-aT@;hCya1N zK=;GgK23QZ_B2oL76z-L`&t@6_RF?wX&u39wpm97j8t+REhmNI%}*iAKg#k?smjP! zxobW3o#=Ly=1tO395&k`{F%QIj58$^(Fz#Fa%X4E9=MUU(l>f+=>5M#H=F9Y_ zhvkODw6{h!%bUk(H+OPLwmm}!Q_t&j?RqVs53AXw zFY^(65Qcw`ksE%bBRO`3q>5IOx8#{B3a`5_Wz7}ZhhmEtUW*~QR<5q4>710v`!}c` z!3NZPi(bWf;r&~5B1{0IZqsp$d@hgPr56a(iUt_0$%2eJ+sT`yzY<++RlfuzC}$W1Rw6DcK@_ z3Sbw^zGb0y*a)iz(BNitwA<^Wl?tk0vN{pUV%j{4LxqzpG311eKWuQ%dH&(ebIW7q z9eC4;!1k;QW`hy!*#WE|EyGw(jfBYbD0YOBf62gT){@{Ty=!N7gFF_FE-afA%jI3z zCPGqVr&zXt81mPZB@vjnf9=Mwy}u^jeU15&OJenF>_hU42##m_5_5FB{=@%37VZ}T zB|zE#OS>P}CuNAvK3B;Qc{+jNs32Sp?8Qb=k|zI_#2yjvc~PipX=IFLfQRi=GcrqV z@5|0(#g3Bi_h-{^ATOV#G860$!Yz%ZkSaMMjn$jcxvAM~kVbrE>0~y8^G-8Sya=4Z z+QH1!X9jzlRLY$*SZ_+)<+E9AkeMiQz(O`#MN1rA%KDMe-9JO;0geI551=A~hperS zuK-)G;S3n8fL%Y!u7#|Z8;Owl#jGFYc`NKNDt`ANE7D+L$ymcWxcf~-Ld8qT%)ABt z%L$FgTTzk`mn6Sf&mI_JwdM=fg>h@ST`!gAOW6f?k|(#8v)+t2<)a-;x?^eCx}SYU zCd&Z_STv(Y_sKrf+s z80lGqMlhYLhU7JI=n*ommi5MOk6g9u!Lslw`zs;3jK0R2s90@#++xE`nRu+lHN3Q3 ze~YzI@nVPWvNV-D5nn6=AF?)Xm}+`FW!DI~E<>KNCT^s)j8@eeisOAhH}xY}O1HYH zhtcLa?rJ=NNw?gjPBB(w54AVR5^s8_m#OQz?ArtfwY&oPDl*5c!WPtb$^FGRpk34U$abXr4~`G40l~O#PTpR0 zv{Q=+eONEQ3|7Y*9b*YoQRg!GBwTevT_uT7d!qS7Vx&5oy6(sWk?Ok)5)~J%ZgVHQ z<()VcX17%`Fsd>)Iq*{>VKe!%eaXuhGnrlG+7-^{hWw%O?Bu4P@R$3Y*gSn9YR|rBXd+i{I*PU z=)t&u3D`H;q5n3;p(h|*Ca+9W`?Z4XhJT=rCEQ%>&`-QHLluM_h>$Zs zQHL{_x4!*MecBx59^awbTSXTvLmrPEdhH{J?z-#Hlb1O3sse|umLUw30{s!cZ@EJs zy4Ioh{j@$lRR&h7HO;82N@_K#ztIkXSJjS&Tn)RSrV*3%N|64bsiKt0uWzc|+_+vH zq-V+}_f$!cru>20#c1mrkJP&!7NrJGz!*^8U@H)@^9INCtcydGUxQR`X1tX#mmgJm zJnVp+^KBkZqzkrVqfspna2`sUl_8?}KN{kf8N(c5SB?Bt<9{NUzC+ykVf2i=(}Zu+ zf)+4%&Y2XY*eggM+7vD+-q^bV3oJqUCC%^;F}mhZGk%vsa?4ww%ouqO|Fu9pGiz}R zZ~|p=WlQb`K}T2@>->0;R*9giR{Y7IzXzjkxj(;*pL)VqcD$!y%{*`8!eqUQ)IhSF zY3I3wPenLSK5_8NMg=dn<+E`Fk(s@Td&UH6PKRpH`?tYM733$8E z5a2u@6VL%Gpa50(kPdJHc|azh16Du*s_<+DPzDqOQ-Ne4LarRcx6>#k%&uEe-t~t# zD|&!uflMF|C!Aa)q3Ef(>U7%<|>Vm^dBamyiNm+*E}t3cRQC&w4?W+Xs) z@}e0oVIOWqSO*Mih*HrIpD9-t@!@V!B=>D>`%iipnOCwqeQ zNU#eW2Cf3P16P6r!27^{;LYHc;9|LY58vpJ`ei=U%=7oR zmrdIX-%TlkwaYXv4>l9SmSR@$5mO+(+o7Wpb3IS{-a)6D<3FU+eT=Z#y*xSMrjk8;dJS7j#h%X>9c8CKgP>2MyurAnHq$& zSnQpxo%Pc(n(&rNm_yO$yp7HU7L5ziPsx%w+92wgbr7wZhPa!sWePT5o4_mZNTrxE zUmFF-mw(RJrhB>&MEOnvx0Lcp+OUGp>Pc(TcL;h^kZ}>;e>w z$`Qlg_sc`rDYw0&6&Y(lw_NS43O|9Si?r!jjTbI5YMCcnEz!DBoL3Dm(9*SlWvd;! zdx=B$UggklW5K$espyr!rK4CKW#tE21N94Tk5#x4!VrEAaebv$WNvI_6P9PZN{sqQ ztM#ni1w;EMHnfbQyd#rWY1sFr${DLQ?&TdBYmJJC>S&FO>>3f>wPR;lxKZ=vemdMb X!T>8^2Jmx?dM$8H?k?4qQj-6Fm=;kB diff --git a/firmware/data/bottom.js b/firmware/data/bottom.js index fe5af92..11dcd6a 100644 --- a/firmware/data/bottom.js +++ b/firmware/data/bottom.js @@ -310,26 +310,21 @@ pwmElementTxt.innerText = pwmValue.toString(); } updateLightStateAndPWMValues(); setInterval(updateLightStateAndPWMValues, 5000); -var links = document.querySelectorAll('[id^="on"][id$="_off"]'); -links.forEach(function(link) { -link.addEventListener('click', function(event) { -event.preventDefault(); -var id_full = this.id; -var id = this.id.replace('on', '').replace('_off', ''); +function handleOnRequest(id_full, id, value) { +var button = document.getElementById(id_full); var xhr = new XMLHttpRequest(); -xhr.open('GET', 'http://{{IP_ADDRESS}}/?on' + id + '=false&transition=' + document.getElementById('transition').value, true); +xhr.open('GET', 'http://{{IP_ADDRESS}}/?on' + id + '=' + value + '&transition=' + document.getElementById('transition').value, true); xhr.onreadystatechange = function () { if (xhr.readyState === 4) { -var button = document.getElementById(id_full); if (xhr.status === 200) { button.classList.remove("pure-button-primary"); button.classList.add("success"); -button.innerHTML = "Disabled!"; +button.innerHTML = value ? "Enabled!" : "Disabled!"; button.style.backgroundColor = "green"; setTimeout(function () { button.classList.remove("success"); button.classList.add("pure-button-primary"); -button.innerHTML = "OFF"; +button.innerHTML = value ? "ON" : "OFF"; button.style.backgroundColor = ""; }, 2000); console.log('Data successfully sent to server!'); @@ -341,7 +336,7 @@ button.style.backgroundColor = "red"; setTimeout(function () { button.classList.remove("error"); button.classList.add("pure-button-primary"); -button.innerHTML = "OFF"; +button.innerHTML = value ? "ON" : "OFF"; button.style.backgroundColor = ""; }, 2000); showToast('Error while sending data to server.', 'error'); @@ -351,54 +346,27 @@ console.log('Error while sending data to server.'); }; xhr.send(); updateLightStateAndPWMValues(); -this.classList.add('pure-button-primary'); -document.getElementById('on'+id+'_on').classList.remove('pure-button-primary'); -}); -}); -var links = document.querySelectorAll('[id^="on"][id$="_on"]'); -links.forEach(function(link) { -link.addEventListener('click', function(event) { +document.getElementById(id_full).classList.add('pure-button-primary'); +document.getElementById('on' + id + (value ? '_off' : '_on')).classList.remove('pure-button-primary'); +} +function addOnButtonClickListener(id_full, id, value) { +var link = document.getElementById(id_full); +link.addEventListener('click', function (event) { event.preventDefault(); -var id_full = this.id; -var id = this.id.replace('on', '').replace('_on', ''); -var xhr = new XMLHttpRequest(); -xhr.open('GET', 'http://{{IP_ADDRESS}}/?on' + id + '=true&transition=' + document.getElementById('transition').value, true); -xhr.onreadystatechange = function () { -if (xhr.readyState === 4) { -var button = document.getElementById(id_full); -if (xhr.status === 200) { -button.classList.remove("pure-button-primary"); -button.classList.add("success"); -button.innerHTML = "Enabled!"; -button.style.backgroundColor = "green"; -setTimeout(function () { -button.classList.remove("success"); -button.classList.add("pure-button-primary"); -button.innerHTML = "ON"; -button.style.backgroundColor = ""; -}, 2000); -console.log('Data successfully sent to server!'); -} else { -button.classList.remove("pure-button-primary"); -button.classList.add("error"); -button.innerHTML = "Error!"; -button.style.backgroundColor = "red"; -setTimeout(function () { -button.classList.remove("error"); -button.classList.add("pure-button-primary"); -button.innerHTML = "ON"; -button.style.backgroundColor = ""; -}, 2000); -showToast('Error while sending data to server.', 'error'); -console.log('Error while sending data to server.'); -} -} -}; -xhr.send(); -updateLightStateAndPWMValues(); -this.classList.add('pure-button-primary'); -document.getElementById('on'+id+'_off').classList.remove('pure-button-primary'); +handleOnRequest(id_full, id, value); }); +} +var offLinks = document.querySelectorAll('[id^="on"][id$="_off"]'); +offLinks.forEach(function (link) { +var id_full = link.id; +var id = link.id.replace('on', '').replace('_off', ''); +addOnButtonClickListener(id_full, id, false); +}); +var onLinks = document.querySelectorAll('[id^="on"][id$="_on"]'); +onLinks.forEach(function (link) { +var id_full = link.id; +var id = link.id.replace('on', '').replace('_on', ''); +addOnButtonClickListener(id_full, id, true); }); function createTable() { var table = document.createElement("table"); diff --git a/firmware/html/bottom.js b/firmware/html/bottom.js index 11f20f6..4d61172 100644 --- a/firmware/html/bottom.js +++ b/firmware/html/bottom.js @@ -361,111 +361,68 @@ function updateLightStateAndPWMValues() { updateLightStateAndPWMValues(); setInterval(updateLightStateAndPWMValues, 5000); -// Suche nach allen Links auf der Seite mit IDs von on0_off bis on3_off -var links = document.querySelectorAll('[id^="on"][id$="_off"]'); -// Füge einen Klick-Listener zu jedem Link hinzu -links.forEach(function(link) { - link.addEventListener('click', function(event) { - // Verhindere, dass der Link die Seite neu lädt - event.preventDefault(); - // Extrahiere die Zahl aus der ID des Links - var id_full = this.id; - var id = this.id.replace('on', '').replace('_off', ''); - // Erstelle eine neue Anfrage an die entsprechende URL - var xhr = new XMLHttpRequest(); - xhr.open('GET', 'http://{{IP_ADDRESS}}/?on' + id + '=false&transition=' + document.getElementById('transition').value, true); +function handleOnRequest(id_full, id, value) { + var button = document.getElementById(id_full); + var xhr = new XMLHttpRequest(); + xhr.open('GET', 'http://{{IP_ADDRESS}}/?on' + id + '=' + value + '&transition=' + document.getElementById('transition').value, true); - xhr.onreadystatechange = function () { - if (xhr.readyState === 4) { - var button = document.getElementById(id_full); - if (xhr.status === 200) { - button.classList.remove("pure-button-primary"); - button.classList.add("success"); - button.innerHTML = "Disabled!"; - button.style.backgroundColor = "green"; - setTimeout(function () { - button.classList.remove("success"); - button.classList.add("pure-button-primary"); - button.innerHTML = "OFF"; - button.style.backgroundColor = ""; - }, 2000); - console.log('Data successfully sent to server!'); - } else { - button.classList.remove("pure-button-primary"); - button.classList.add("error"); - button.innerHTML = "Error!"; - button.style.backgroundColor = "red"; - setTimeout(function () { - button.classList.remove("error"); - button.classList.add("pure-button-primary"); - button.innerHTML = "OFF"; - button.style.backgroundColor = ""; - }, 2000); - showToast('Error while sending data to server.', 'error'); - console.log('Error while sending data to server.'); - } + xhr.onreadystatechange = function () { + if (xhr.readyState === 4) { + if (xhr.status === 200) { + button.classList.remove("pure-button-primary"); + button.classList.add("success"); + button.innerHTML = value ? "Enabled!" : "Disabled!"; + button.style.backgroundColor = "green"; + setTimeout(function () { + button.classList.remove("success"); + button.classList.add("pure-button-primary"); + button.innerHTML = value ? "ON" : "OFF"; + button.style.backgroundColor = ""; + }, 2000); + console.log('Data successfully sent to server!'); + } else { + button.classList.remove("pure-button-primary"); + button.classList.add("error"); + button.innerHTML = "Error!"; + button.style.backgroundColor = "red"; + setTimeout(function () { + button.classList.remove("error"); + button.classList.add("pure-button-primary"); + button.innerHTML = value ? "ON" : "OFF"; + button.style.backgroundColor = ""; + }, 2000); + showToast('Error while sending data to server.', 'error'); + console.log('Error while sending data to server.'); } - }; + } + }; - // Sende die Anfrage im Hintergrund - xhr.send(); - updateLightStateAndPWMValues(); - this.classList.add('pure-button-primary'); - document.getElementById('on'+id+'_on').classList.remove('pure-button-primary'); + xhr.send(); + updateLightStateAndPWMValues(); + document.getElementById(id_full).classList.add('pure-button-primary'); + document.getElementById('on' + id + (value ? '_off' : '_on')).classList.remove('pure-button-primary'); +} + +function addOnButtonClickListener(id_full, id, value) { + var link = document.getElementById(id_full); + link.addEventListener('click', function (event) { + event.preventDefault(); + handleOnRequest(id_full, id, value); }); +} + +var offLinks = document.querySelectorAll('[id^="on"][id$="_off"]'); +offLinks.forEach(function (link) { + var id_full = link.id; + var id = link.id.replace('on', '').replace('_off', ''); + addOnButtonClickListener(id_full, id, false); }); -// Suche nach allen Links auf der Seite mit IDs von on0_off bis on3_off -var links = document.querySelectorAll('[id^="on"][id$="_on"]'); -// Füge einen Klick-Listener zu jedem Link hinzu -links.forEach(function(link) { - link.addEventListener('click', function(event) { - // Verhindere, dass der Link die Seite neu lädt - event.preventDefault(); - // Extrahiere die Zahl aus der ID des Links - var id_full = this.id; - var id = this.id.replace('on', '').replace('_on', ''); - // Erstelle eine neue Anfrage an die entsprechende URL - var xhr = new XMLHttpRequest(); - xhr.open('GET', 'http://{{IP_ADDRESS}}/?on' + id + '=true&transition=' + document.getElementById('transition').value, true); - xhr.onreadystatechange = function () { - if (xhr.readyState === 4) { - var button = document.getElementById(id_full); - if (xhr.status === 200) { - button.classList.remove("pure-button-primary"); - button.classList.add("success"); - button.innerHTML = "Enabled!"; - button.style.backgroundColor = "green"; - setTimeout(function () { - button.classList.remove("success"); - button.classList.add("pure-button-primary"); - button.innerHTML = "ON"; - button.style.backgroundColor = ""; - }, 2000); - console.log('Data successfully sent to server!'); - } else { - button.classList.remove("pure-button-primary"); - button.classList.add("error"); - button.innerHTML = "Error!"; - button.style.backgroundColor = "red"; - setTimeout(function () { - button.classList.remove("error"); - button.classList.add("pure-button-primary"); - button.innerHTML = "ON"; - button.style.backgroundColor = ""; - }, 2000); - showToast('Error while sending data to server.', 'error'); - console.log('Error while sending data to server.'); - } - } - }; - - // Sende die Anfrage im Hintergrund - xhr.send(); - updateLightStateAndPWMValues(); - this.classList.add('pure-button-primary'); - document.getElementById('on'+id+'_off').classList.remove('pure-button-primary'); - }); +var onLinks = document.querySelectorAll('[id^="on"][id$="_on"]'); +onLinks.forEach(function (link) { + var id_full = link.id; + var id = link.id.replace('on', '').replace('_on', ''); + addOnButtonClickListener(id_full, id, true); }); function createTable() { diff --git a/firmware/webserver.ino b/firmware/webserver.ino index 3970b8a..6cfd9c8 100644 --- a/firmware/webserver.ino +++ b/firmware/webserver.ino @@ -247,6 +247,7 @@ void init_webserver() EEPROM.commit(); Serial.print("Timing control = "); Serial.println(EEPROM.read(EEPROM_TIMING_CONTROL_ENABLED_ADDRESS)); + tc_reset(); tc_update_main(); // call the main update function to read data and set the light states } }