d8hCIM&QyK)#bhw1ngCg6d9XRO&tz z`WF %|PBa^ZC0PGN8HS1~{sdvte%$ za1%sS3&{htunQ<1kQ}@fT&yf~1vm>}mm~KW7;a)^?oi3~=Ju7_ums*kR?UQtWj4a& z0ajTC<DmUxk338ZdPtVK0h0)%Fl#0g*~99HHD6Vdkekk zG~vfWQB^j~1UmJh@X amT9PvJ$@m-C;JIzIy+N) zhX8mYf|BM4-V>6V?z-N>iU}rkp0FNtZ| 8Vg>zG)?P}42po51PQ!Y)~Da@blEwrCz zBOKM+ut__BMq2JbM+Ce9nS%1S$ u1l4eKHjGzk=5~hDHT%8t9k71SUj-drX7lPI2 z^k`G{7tI(WJe?j!PYQlB{OwMnFM=) I}Po)I#;_F>sB+yta$~H(O>eA?L%ue|P;%|F8i1_U?!I zaKFx)qlPEv+K%%ZS^i_`cEfb|#B6W$#Qa9a<=~ABEp3wV8TpMKpQGQ%5k_*9pkHXO zbg0}7myj@Op|h}ep_%Y_p;tdQBPV>Eev=tyUz1!0GVCYt^EjylHeIGcHd;pBuJM0- z#!oSRhW}5``ENbjLvd0xdqagEYMtSfz)`ro$kq=l{H849=YOp58+}>r{Y5P)jTRim zK)_VMRAD&B#o|_n*5E3wI4z(*m@W|%v2c|gcjix4E@zwZC%15+-&t!er3jWwOkvnu zmVC_jr>%tVmLvdoT QR&<6(vt=9~tw^9 Am vQR#TK^4kR?sg6Uo;}_;kcLMK92i29^iP8 z;~^b-9*Pod4rg%5rgr$@W^xewAGa0e9XrRRTN3Ya!oY2X)+gIax|Ju}fOPj{g7t8$ zU0=9DE>_}s5YypFP?#{}R0Ny>tvEG|;)zd;kW!!W)>+T$`tJOcXAs5noI;9cH_^hY zuOcWM*qk2!_7P1HKW-WS_EAg+em)Z;bo@G6`PPw(lW^qgV&mytTY5H9_V&Sxt#Iu^ zg7Gm+)Wvob4^^Ut{TCxB9-|b#eRN_b=)cJ}J~;XHn+_C@NrHsJOBu!oB&RNQ;Kw3C zLfT~?vz5?4!8C|DRIU_CFS}?4dKlIfnM2Qv?`oG^hMn(7IONnpnh9w$q&<*+ghVxj zI6(@9lnto>(nv^~Al-)KVL?b5qz;fOAZ>%RA5uM}E0C<35t0XK6r_cazJT-tBnL}E zd?AHG>S{^!WCREkAgzRS4bmM*rdHqxDIU@oNK+xrgR~3MRY<=;Qd<*Z56K6T7Sb?C z>mk)bIt=M+NKYU&K=QUBq%WkQkUoO64ALP;f7`$VmkKt}wvfCaWk4#1GzQXANE;xX zhIAFuD@f6>n@)!`1kxNxOCTM9^cAFskgQ=l-4;?WNRuFa2x%Ln{g7@za)Ir1H%Nt$ zRzmtr4{#3B50D6KrhOr`fixV_ct|TCeG2I;r0*d$LNbS4wH8tWqyk9OA#H+m8`2X< zcFu&vLaKmN1!*0mdPs8EZd*Z$gwzvKB_!(_fUS`BLAnkp=5FoZSL4kK;$R9?;))-{ z ${HTyx=gd4ilc-wWnc%$**oI+ygLOxDX67?opU7Lg?_Tn+5I@n2uwE zG6j2EkJ|#K _~m`bQ&)l?b01 z_)x-haO!GxPb+NyRS|=yKj_M>xPf3gjt$DO7`p&Rd4O@X61Y!-FzKGX36~p``9i^C zdl%enU?e_;leibh2IW4X;{$s=uHH@d6mI9(pxlckjm4728JCpGeK 1Jb0jcn73&Vj-_c!|ur7Q8R>5_uW*PT+Rg9QAmEGaLJOg@g}t4Mve{2I&4Bn zwq)nmVvaG%l?cCN^LWlY!SXkIJ(nAld$68Ev5CWto7k3na%@meXlje0iIQ5^q<*W3 zuwDIUjN40uSFD3XuoWhi9eEKQg)P6i*>*CrRCeZu&caW>IR^0=-GwVSHYg`Gm1?Mr zq^`uFw(V*hryI}KO~`rR7Sr9>(1RN|HYjT`-uq*Wr?hx5yXt{`9+w-G@I3#{)yn5| zFDW!1(%ur`7ib@e@TCp*C=jr(K!10$=*MM_4aylp`-k=}`I0Xm;r`stu|c^LN7x1C z`#+Nu<~_vX*r43OCo!yg|JdPj1v|$E<@SHyz#{I$u|c`0scD8zmDG!y)Ne+Zw`-78 z7H`*J9>;`#H7G^CW)I=IAwrvnZt`M~g@X_6={Brq%rGf0ZzoJSs3*q;<<|G=$uIp8 z+-HPv_MtQzMsfwm2BpwcLqo+S^#Xq3ml&5dif7~4pgfFqu`M;W<1-i2l?lThx!IN* z8!EV=LRkJtT413h@Ek21eq^7< _n#nq2nL;G;Qc$18zu_-AG@h4xm+pS z0C^IZCvjQNWj)A-rDihlrq!^D8#y*8kMoH*#n?WT+c`EUPw-BiW^A9%?bC&QPuy&0 z7#lv|h7W`XV3=uan8gjV1h=PdDtz*Q#|
1$fW2@r{BD1DI|TD0JKS!`r7I%GR2}=_Z^^+Gynjt_S{MhBp!1 z6 9>M5*p3;!*FYEk_UK(Do=?HsLO8@_ z6EWL+=gr$eX;dS0H#&Z16Y)jLJ4evMqCcC*-j0B$l}Yf(1jBME59H1jWyK>0!yW?m z{V-$K!uH#zYiDw51tIVdM0~QkW~amVRpDQMhQsMw;9p(!zrc $C> zOh{}-TEKdsB$i%6xRU(LaU;iR-l*xov6y2#*T3@AL4 DKp8H*-H8~bA+&qX3$jVK3CYj*lOg`bbH6G;^ zZi-}6@-Vl5k~1j`LCtE=I1|wYaY`$*)DY4x`dNxI*#xpP*&KlwnTyyt8c wYz{Bwg2w_durmsx%Clg>wIg^Dc zd&5GAU&^x-CD{qH$AVOOeiCazvIF^WcnGa5$SqHyRU-MC;o#nZ;Z7t;dOp$>eC*9) zz6OIj@{h1o@=c^HKuKI+gp|bJ1@Te Pv~{bK5+>ST zAvggKcvoxf$pd#B?}u6F(*b;x r(@II^HAf6i!}hg= zN=K2?Zf9T+FSpsC4I^JVA^w@Y0V|P#)`Kx;^f1xdzzXF|e#*>Ew n~TuUPc!!&G+ z8=P!Gyx>PZO7dYWPWEy>g J$AlH>Bs;M8{HepY|z{MpGucqif+IXt=(5t9*x z=;6_c **Evg`p*B>4dfo^eVU2aoZ;PBWH4kw$1c9XFhUdTj@ 4K;lS>fze9bk1 zuG u5j3B97BJF66k8V>b6Z9*w!g=6T?071R~b)CrsM!Vz(03>H@Jij_Fg z3ZqRi!#-YX=A(zNOU_8Nyo*vZ9-DfR3deq+8PsL~v_|8DAq0PH-|pDKfM;VzfWBKi z20d(62I%DP3cmsF6*30ojV`fZJrbt_+|98b`j`@H&lJ#vK(A2Z)7%wMojKX8yONwV z#d_^BZv(2iS=jB)QJ7(D{B+Qaj86wNi7x|umXU5|MV|Pk0R9X}Nsh%#D7c$uE}$-8 z0bo~W#7p8MMjhJk^sNE1l;f8i*KrI>6hYrCZ9QTR;!xku0B@M0e8qG-V1yRYm*Z0p zlv|2jWi%y$rhN{?(|IqTJC_4ASmsU*2Hk7E9MHB6;-xIawp{b02IXDiHxNSa*7^{T zyw=A6!&}z_4&m~F1l0eTfcmQmsCP(2Ifd&daD5-HU&iInw?>=9=JvC{v(yQO1ve<`#&Df)HKPv37@|F@hhL=W+e{=$}E;kd1m s7 % zHfCEC$_JxRUa3awB{fFasm2JynYd9wt@UUf$vv~e(0@}7Vr3L|#E>k^m28T+JWVlI z1&?3F<1gU3s(JjOPUzV+5c3uXV$5P5CnpW%r;%ta=k@Q*>%XZvw)*q*8a;d+O~*#g zh{4Qa3})EOi`m1AIm?Urffq9+9Rt<#%olmC+Z;dS1+U}<&*23R mZIZOwegLm*+;Jye%5TMXFIwRHOf7b{Fsy zIbuHrVsR*1M~9-d1DE@7*_F!yT#n>&D$08D87Bw1A&y_vS6s1kBKY85aKUiH1F(k{ za`fT)!(5-`jQSBAGr7Kz>#O2XKbK>yE6R=>ljCvz+4A}A5RH19Ah?7miMMct_2s(u z0pKaIUPXOu4#Q1^lD@E*Qt}yJQok1)RrG6py~jdx1-an``w23iIOT3IHz9L ##Miy~)N8K`JKd_Y&>lJp?+?;$Sv0~SC%$)2p 6%-7&SMpe5e M!`n7HPL1n zSU?D}g`CYG<(aQ&YjU+M+MpJCC_aHK?7%5$ZqaC-K+a37U$Rn@NX%iM1+JuJvIhQO zp^L;^l5I7~WVytWlU+0^ ?W>8}f~S9eo=4qy$+NnF@_aBWvO93bFt* zco;|{74WVBX(-$()5zx01~w3GK569k7y~ j5nOU)E`w_N2eWva)kE9Z5B3 zGsxFaL}xM&-WXsJTYz;Xec<&Hvd#XlXm_%_(!g%Efx`syo5Z?;XAkm9V&fxU(O%>X zoS$I6u&7FfzBg% 2pZ#0Ei|){_v4y#U)r zk|Hq^$oDDfA~6EC&190qUP1|5$wrCYw$W;~lZ&6jZx^t=KZ0>5c_kT-LdIPrd$*zZ zvryn}GLEwuWGRgO7i1njr$Igy%$dEUdXIrQ0NYQt?~@qBJV@mG4J-hvc9?XP7=;1- zk`x1j@~cQX6mg6Qk}(a6KS2&lY)mVy<`kKEz!2sX)cY&)QexKv0yJkxz(IpegnVbo zDT%FwnCHomLui8)!s!*gNTwY&cm_i8-;l$|^icdApqGi|5rfec!hB1DB<2KRu90+! zDPUTDPlibBVGFJ1M>0xcyJ7XXPHNudgP1o-t;Du@RB3LJOA^b3D8G>9Ut)RsD$*V3 zT{7^fp?Ei7_ek(D1JeTgjXafDEmY=rVtL$P`xGkrh=fRN4|qNy@e=zEY=4lh61xle z{zXb8b{;(cBA*(Vp8N{*1-T&^+ree=lEj=a6p@vqB(F)E%LYb+W@%oNQxda+)-!tQ zioxasOioXIYhY2pl=Re918W1!gr2%)V7-Bv(o^3Vn0^FMb9(A~1AP#r)mYF|KNwg8 zFiU#sM+2J-p4K$|Cj(mm%$6RO*idMMJq@@nc>;5!^CXrKH(ujRwKoj5S3cu4uJpXb z&gvnIJMDkdVB7}GlRlQ%w=kmKwCx>(Eg050U)n=rpIOFe{OK`?6*Y^|1W@f=gJ(9_ zf@rnGu3N-tf~oJX23rx>Lg-A1O|#U;XteZ!MAINl80~S-;A#o35%iSAHbR&vns?t| zn*%I{o|o7Ys|A`kn*5u=mJh5o-7c|Uh>}P>9~f*$Azw1J{oTM$SS`?NQt1PUMnJ}N zdhDUWXbLQo#ym2x<-pp|%@S)470sa$j}106V0m=2#4bRA?Wp4ugKabv*nv)z*dy@l zL?27+GBAA?+W)D+bsx}f^t{Ao0P8`M|1j99f%T%>IlDt0vXrC`y}{W{+A+f)82m91 zxXyQc9=BA}j}GE&Dr`lRq#qs0nP8%dSqZkK65H;+R?|;UYb3hg{ZlY*l2~cj4o$uk z2DV8MCZ8VTwyESVQU|tkoEZx2|CVQe`n}}2knGpIYx`NUdC^Kmf2x1NDHah-3aH8! zTQS4rviCYxNSjIQy0;}Mq>d6BoV$( C_=ir%sfqUn;& zjKVnr9i(q69_d2K7%NAHU5_71dZpu^1NQ}lhxRPg)cK?403bX;L>c^0UzCgbbMR(} zlDlwFNXh5ssL=$XTnJW5l44MUdP;1O7*v!Tb~VW2Ry(>`JZMLK#a{N*QQwkh-k*b3 zLkI&lM5D$SlfzI`1bRlA`TZ}+`u}ktLlupS-_EPPinrBRZ!Eu`%b?lkgw4oxf_o%9 z#q&VM+5XRDJ#^_)-ueG$MZPtN@PhxpQ?OL7{(o;O{f}poaf9{7x$DSMu z0PRRImrFU0=Qs<{8O{kXW(}YxIl|=&fR^MM$D14rsIE0^t*m6cc)(y13K#}&*U+^} z7Stw}%#v+t(*f`grvms_BTwThK#tFt0Jus_apx^KLwreBSuNmAc^$C@r$-<^jdP?m zvY}y~bcf8!FBWiaNCsejd=B8f+|GbYL;BEADtDX(n9v;YBlEd{n*oo=+ P T?&0RxieGK<9UTF zPtrt&SFu?6gUD*;L~C6!(0Vw6bfQn=HnAn(124wpALs67T|hnsxGm!>>%-+Ivi4c` zm=~Mx`jibMA8VP+i=B2d$&*#dk2yAz1v2PxnHBAo=pmag&&l+c4To$opqINP0tWb5 zk|(k+Vsd0l g6SQqhuH4s?aI2Yw~D|nSj_8*W~@vDNK{Iak((^E%LU>ddkbwYdP+b-IM>AeMELm z*2m?9ECniePWD3Xrn&;yHTefwHfVm9QN>^Bzsl~>`fN**P47CbV-@77FLXi$iMEJ= z+Ii+=vYya6@D5GBD9>4*LfxIb kQr}2h6De~>c z%Doid=1>x-XbtCN#WXGo5yOQla4HwmTR~Ou`_E$d!BR2Z15X{L+*(Qxo6MBQD$=qt z**)2`=Ia=?Y`Od ys)gLlFvd5g?ZGB3qT?@Z>UxaWOPzJy@>dihTdcBBva zEaOXg7r;|;SGeT#weaHryyjfVOvOIHzZG}n1< H|;MuR4X)> zcqxwOETB$`j&@xX(?~&PU%+UeS#%n??A=!}hjjPptGGuGXRl*7W$7Lx6iXnQC7I7q zvxKz`s8p1)2T+xJFy|NP75C&Zo=X8QX0KA Cd9SgGhK z*X7*?%_|KQPyggy+AZ@w=${9`RVAOLz9K77Y>IiNSO~)hL!+4H%#`B|!vr$?^*oJr zwgz0A=LGnw4JCRfYMxEW3;Eyvo}l{Ozd7I^&UVC!E_TCf>zpqIWT80fo_?8dokhVs zSPlgs;uI^Uj(!JWT(dkDDUa};JHl`t^ptPNU8=;nx(Z^dEY>S$$%@mrDrYHf=k8Zl z$!tUGl~sD#x}17t4P-l~oUg#vBVOk6D~j@WT&7$ >x;*A$n+(p788bdO aWc8h z!` lLn)Fe!P-Pp>-6l`i z5?C9aFkHFz$e*{;!78>SeZNT+J!`fYZVa}e7fh;P_%4{>jp1999emDL(UoAWmtS>P zk|(q_7cW}dP*XK}nyO1_t8_~>l|=@+sl8+gf$Q`v1?mV(mvT>*kNO_9g4s@$IL1}7 zSE;$MG~Sh8Fqu!i;070~h|W3)7vXczrzkFaFQ#f)cb~=73+}bE)jgH!tOe= S8XJD%Z8BQIF?xy}UkRqq<6xgMGKD_4V?a$c^e*Ty=rYu-dJ@K%ZIeR@ciz z; r74OxufpwU@b)&L~Rnr@^^X0?$p%r zy%5wim=}e6JPN gI`Uw>;m=kb?QuP-mAdyA~7YNdHcy_ zhhCGGUBS=8ET0^DEt9t^7*XVFnGZko#>(+Ji&dSOorT4@Mw4)DaAYu?tCzkOt0poB z8YXV(%sevXytHmunssMl{-!AyVaaP>^@T=Rs8+kS!Pn$uBMU{rq9-xwCN(&r(Wk!g z0I?@^qfFTnO1q1u=BzL6Ar3KTy=YJIs5wiu>rbj)6Z0-b<0`tB6^t4Mznb 2YTXBFT%cK3p zZI-MXEfAGfY-fuB*n<{*i3v6|wPaiv^qy&dBF8o-H2SJfLPtjN{wok~S+Q*E!6XN2 zkTQID$=LL=l2J wvO5q@;VQJi%RMNmm%VxHq4t25}yoXt?Rnlvi?*x5X*BK zBJQ_io^LEp_RO8CiqK*^L`-yGE^jQ09hembveA*1(7~dk6PrYbh@umF;8~3BRzrwc zdeMN 3XM*(F*bPHxUd(9v}do3lh}GX|Y42N2Vg0p&0mDvHWRiWgci zHy;n%q2$}wMANxwcu`?R(ZKAH1B=G_s)oWZ7>~mghRY#TOu0xM#Kcl&BCZT%fpn~R zDv%vkjl+;OMRgwsF =A zSG3Gvd*}l3s|;4B642K~jzBs%C zJ3?2AAsyK+)hg6MTkds)wp5FscVeHbYETD*Roa=QG4*O>u0x2uxHXyDoBx~30a{cy zt{V%ZbdC5~cea|Y72EY-tLQrMVGnkft{1QLgsAvd-`6Q$T+oXhryIo{z1eQ{Ce*p- z6Gu_snmX3C>cgHWRG*^KdVtt`0BcEy)^!~Kvs?8UD(#1eOADFXn;G`3kOfhAN#Ie$ z)~mLl162A<5mQjQRlGQeZB}hFD8=c6*;Tq->^B7Ju>*B3`E}04%$ln3g}$%z5HWlx z^Li6^{!pf+>RPmT4IwUK|1@eZ-WbL#4GtaYE-`I5yQBJC%BvmmCT~Z&yKe0WmMl}% zq0Mf9_}eHJ3XO0pWm_oyLOfl@maFhpxo@-lx{>7!eh9f&>_3*diWA1bQoGL}zeIU| z9q6w!dO%E`z}Bb^VkYZ+@%{w%6+I+=t^?g+NtZv79iT@ en?Tzp!^_NY#v(kZ`g=M<)7^km(hX>6*Ro)Qy2V!x>B(dbYl27U~y z!65PLg)Cg0@iE-az7lVL%tq7GVy}5{xt$UJn#Ueke2w1rMer-7vVvhnV(7=bKX|6h z1*{J}E3R1pi`+TUQGiK#Ufd 3p%EyO`R55{7KcNi`5Gim#dYpdp_=B_ z2|lYMhuE2}UOY+jFNaIc5vr7q@(U08T R?&-H7 zTIVIU8hW$C;XT{GxV>wUe#iN$MFo2Y%-(u7(|^sYVvlBJy&s${yz{gE%E~tPO?&j3 ze$uXM3)A-MbDJHy3S+117Ul(eO$>Q(<#yGVf30`lR(kDr#oR-AS61JwzH}w ^=j86=;Wf)TLb^~*C&gv3NK#F-26K1<$1M@_hg~i-{fa;>zrAC-8yn|-UIz} zpPzcqUA4w@$Lw*7G!fmhg_@bYFGbd`To~y$p;P8!O>N_$m!EFPocQ^JKgq8Bjwik+ zSI1O$3Y&AT@aV?nlmF$k_37N_Us}yM_+h`HL$;=k8h+&X=(G mS9mfaR@ z4qMhKa9qOFk1~EeIDPjoz0TdgyF4+qqVvJ~%0HX+@1S`Y-|Zl6_k8g8f8MGK75lAX zj{1!3^pq}ba#vi=o!PFy_2iT8Tld`AxnoJ6PSb*er|p~ _g{_2$w){=e&9A zPjt%53C?_&9pV>doijho&&*6*ko%y+#6#!qU08BA;qIBxLw{cye=e`FG4|Z=5jkOw zTVkdydp>#W7jqJNOsn~|`=DEa?muh0)hL7=7R?{a&*?+mJ`cB4J=TnHB;m{~)Z@vf z*WX7?Jl3n^QhmSHCwzt<%lTnyT7~V&QkSvYod<>VEA0HdtJMd`H!PX9>G_mg$LSGA zOHJKIZ9UQ7@@etO{SU%kHb418_oxj!T(;e~Di*a^JWxC^;7QU|>q%DKKeW03#n!{w zjvt)zDz~`rZ~tv*iKAXz{n_y!j{o`~?AZ7{lVfgnt#|k~a$3x+kmFvX*dIF{kFO|@ zxt?9U_W0$gmeKPIf1my9vrOxg7cbwMdeygW$I{oS yJHNHE;c8w2!;b zUpG(I``g@j{B`=4m 78eUwyhrHb3A)jw|4B*?Y~-ro%9r~R Date: Sat, 27 Apr 2024 22:21:09 +0200 Subject: [PATCH 02/79] Added delay in serial communication task since otherwise ESP32 S3 stops working randomly --- Arduino/Esp32/Main/Main.h | 8 +- Arduino/Esp32/Main/Main.ino | 30 +- ...597b5af1-bc02-422e-8eb6-33885e73db26.vsidx | Bin 151549 -> 0 bytes ...5c3ac7eb-6ad2-46b2-9c2f-da08afb37ad7.vsidx | Bin 0 -> 154381 bytes ...5fd9a84a-93f2-4915-88a0-1c4b8d0fe17f.vsidx | Bin 151516 -> 0 bytes ...aa0985f9-44a4-4984-aad9-947859249234.vsidx | Bin 151516 -> 0 bytes ...c3c25cf0-0216-4a3c-82ac-00a3225209d1.vsidx | Bin 0 -> 154414 bytes ...c3d79629-38a4-4dd6-96ee-b896faba96c5.vsidx | Bin 0 -> 154381 bytes ...ca598da7-9c64-48e4-8ef7-23c022dbf4f9.vsidx | Bin 0 -> 154414 bytes ...db79079c-1386-442c-a771-085bea39fee8.vsidx | Bin 151549 -> 0 bytes SimHubPlugin/.vs/User.PluginSdkDemo/v17/.suo | Bin 288768 -> 288768 bytes SimHubPlugin/bin/DiyActivePedal.dll | Bin 174592 -> 174592 bytes SimHubPlugin/bin/DiyActivePedal.g.resources | Bin 67191 -> 63378 bytes SimHubPlugin/bin/DiyActivePedal.pdb | Bin 163328 -> 153088 bytes SimHubPlugin/obj/Release/DiyActivePedal.dll | Bin 196608 -> 174592 bytes .../obj/Release/DiyActivePedal.g.resources | Bin 67191 -> 63378 bytes SimHubPlugin/obj/Release/DiyActivePedal.pdb | Bin 163328 -> 153088 bytes .../obj/Release/SettingsControlDemo.baml | Bin 66945 -> 63132 bytes .../obj/Release/SettingsControlDemo.g.cs | 4189 +++++------------ .../obj/Release/SettingsControlDemo.g.i.cs | 4189 +++++------------ ...uginSdkDemo.csproj.AssemblyReference.cache | Bin 90513 -> 91819 bytes 21 files changed, 2474 insertions(+), 5942 deletions(-) delete mode 100644 SimHubPlugin/.vs/User.PluginSdkDemo/FileContentIndex/597b5af1-bc02-422e-8eb6-33885e73db26.vsidx create mode 100644 SimHubPlugin/.vs/User.PluginSdkDemo/FileContentIndex/5c3ac7eb-6ad2-46b2-9c2f-da08afb37ad7.vsidx delete mode 100644 SimHubPlugin/.vs/User.PluginSdkDemo/FileContentIndex/5fd9a84a-93f2-4915-88a0-1c4b8d0fe17f.vsidx delete mode 100644 SimHubPlugin/.vs/User.PluginSdkDemo/FileContentIndex/aa0985f9-44a4-4984-aad9-947859249234.vsidx create mode 100644 SimHubPlugin/.vs/User.PluginSdkDemo/FileContentIndex/c3c25cf0-0216-4a3c-82ac-00a3225209d1.vsidx create mode 100644 SimHubPlugin/.vs/User.PluginSdkDemo/FileContentIndex/c3d79629-38a4-4dd6-96ee-b896faba96c5.vsidx create mode 100644 SimHubPlugin/.vs/User.PluginSdkDemo/FileContentIndex/ca598da7-9c64-48e4-8ef7-23c022dbf4f9.vsidx delete mode 100644 SimHubPlugin/.vs/User.PluginSdkDemo/FileContentIndex/db79079c-1386-442c-a771-085bea39fee8.vsidx diff --git a/Arduino/Esp32/Main/Main.h b/Arduino/Esp32/Main/Main.h index ba86b2ea..a73588b7 100644 --- a/Arduino/Esp32/Main/Main.h +++ b/Arduino/Esp32/Main/Main.h @@ -87,6 +87,7 @@ #define BLUETOOTH_GAMEPAD //#define USB_JOYSTICK + #define SERIAL_COOMUNICATION_TASK_DELAY_IN_MS 1 #endif @@ -113,6 +114,7 @@ //#define BLUETOOTH_GAMEPAD #define USB_JOYSTICK + #define SERIAL_COOMUNICATION_TASK_DELAY_IN_MS 1 #endif @@ -146,7 +148,7 @@ #define BLUETOOTH_GAMEPAD //#define USB_JOYSTICK - + #define SERIAL_COOMUNICATION_TASK_DELAY_IN_MS 1 #endif @@ -177,6 +179,7 @@ #define BLUETOOTH_GAMEPAD //#define USB_JOYSTICK + #define SERIAL_COOMUNICATION_TASK_DELAY_IN_MS 1 #endif @@ -207,6 +210,7 @@ #define BLUETOOTH_GAMEPAD //#define USB_JOYSTICK + #define SERIAL_COOMUNICATION_TASK_DELAY_IN_MS 1 #endif @@ -248,5 +252,7 @@ //#define BLUETOOTH_GAMEPAD #define USB_JOYSTICK + + #define SERIAL_COOMUNICATION_TASK_DELAY_IN_MS 15 #endif diff --git a/Arduino/Esp32/Main/Main.ino b/Arduino/Esp32/Main/Main.ino index 30615d45..6895a924 100644 --- a/Arduino/Esp32/Main/Main.ino +++ b/Arduino/Esp32/Main/Main.ino @@ -231,11 +231,16 @@ TaskHandle_t Task4; void setup() { //Serial.begin(115200); - Serial.begin(921600); + //Serial.begin(921600); //Serial.begin(512000); - Serial.setTimeout(5); - //Serial.setTxTimeoutMs(0); - + // + #ifdef SERIAL_TIMEOUT + //Serial.setTxTimeoutMs(0); + Serial.begin(921600); + #else + Serial.begin(921600); + Serial.setTimeout(5); + #endif Serial.println(" "); Serial.println(" "); Serial.println(" "); @@ -1211,9 +1216,13 @@ void serialCommunicationTask( void * pvParameters ) - delay(1); - // read serial input - byte n = Serial.available(); + delay( SERIAL_COOMUNICATION_TASK_DELAY_IN_MS ); + + + //if (Serial) + { + // read serial input + byte n = Serial.available(); bool structChecker = true; @@ -1427,6 +1436,7 @@ void serialCommunicationTask( void * pvParameters ) Serial.flush(); //Serial.flush(true); + } // transmit controller output if (IsControllerReady()) @@ -1442,8 +1452,10 @@ void serialCommunicationTask( void * pvParameters ) SetControllerOutputValue(joystickNormalizedToInt32_local); } - - + /*#ifdef SERIAL_TIMEOUT + delay(10); + #endif +*/ } } diff --git a/SimHubPlugin/.vs/User.PluginSdkDemo/FileContentIndex/597b5af1-bc02-422e-8eb6-33885e73db26.vsidx b/SimHubPlugin/.vs/User.PluginSdkDemo/FileContentIndex/597b5af1-bc02-422e-8eb6-33885e73db26.vsidx deleted file mode 100644 index b3409e9063fbcd6398c7210558bbac4707ee2f1c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 151549 zcmXWD?Uw5((k9wx&iON!QB+qKWJ(~(cG_vBvljv+kw(A zp(-<18W*S~r5TTloQgkBLU5Ngry75e>vem|n$&*=Ae^t(X6_vjCJ2| 0DL=$44h$U1ZRQ-Xf0#y{%2-O9u zVW&cMjp_!~2UH(XeM0pcs?Vstp!yxv5j6-k1!^kPG^jbC=7^dTYTi(DM$H8^@92Qg zp+JWU9cpxF(BXs*XLPur!#g@6bS%)3qGN@QH98*9@raHmbVBG 4@GC zdMnTyMQ;^)YtY*Xy}h9`Lgxyd8+1OR^9h~dkuy49&;_9jMVAU)YIHfE%L!f1=yE~t z2)$S6{ea$2=>38|8}#{sK0EX&(5FP75q&1~?@z=L;vM1waf!G=+#? p4!BsG#Vk{g1ns(Pd> zQUR$I^$7JG^$PVp>NV;e8cH;9G$=ImXjEv_Xmn^yXxz~F6X_CZf%Js5MLHs#(3eB^ z9^D6Y*T`^W6f&^m(8STC(4^5cp~<6ZLzW|}kaft;$RXq`avr&a9Nc{%Un0+uSIBGR z4e}28fM5^?je P{Y3xuME~i~f9~i% z_V=p#{c!mGAbvlJ-_PpzbN~DM`|t1l??U|E_rLq_PelHS{`1fO{;xk!`-fNm8q&W^ z`WNh^>Ccxx|K$CjJpHNcpIZK@E&fg7-xU6>#|Ys(TWX9Nj1CxGFya^qj3h?z?10gT zk;Z7k$YSI$@)!k-B1Q?L8KVbA3r2ro^k4X&2 ?hPx*g9E%YPhsBH~$5LUbv2<9%-4)9X zD~grH>VegYdyadJdxLw2`+x_I2ZM)zHNkN9bi`i~-!(QI8- E8%_i# zh0} X7hX7CM!a~u1iVDN7I@Woo$%`L3U{A)-SJl7P2 AS3=hHwKS;i{ QKDL+dNL?7>_khVExGq( z;$+&0>xlEjE8-3DfdoZ@CsC2;Nm3+D (yLPb>+6)mdoqWZh2Nm0|Hu8IZ~O;I$kb1Is1(R>$& zqBtCjV^JKd;@A|&zl#$pPDOF5iZ@ie6~$XsT&l7pWxlm#`B9diWtqx~mQ|heVNJ^V zrL2pxuFCpUHbvPqWpm2k=vbCVS{_BtmM8LmzF_%A%X3{`P PC68s-l$|O&U3RYQ=Ca#LQI>+2Vl0Izg)7BeN?uA;N?l4 U$MNK^8PFhFDG42v9!FjqO_{Cu5?}L z`qJ6b`O+<==cQMrccl+y;AK!{ 1 z3(6(shH_8&56UCuiSn892ki*$IPC=O6zw$a4DCGa0_|qnZB&$0a4HlPBNc`UM@67w zrjk>ssMJ(CDg%{?DoIsOm7!{)%2M@%s+IPd_J;P3_JIxs9XK5n9W)&b9pI6jj+~B) zj+%~+YC-ixwWS*NBh`t1Ir *? z>h9DT>MV7hx 1^rj=^W@B>73}JrVmaZ zias=be9`4V7fu&Nmys@-E}kxdE|IP^T^qW#bmesYn{GAT8oIS~` GzX<|A+39 z?vY{1NXv4NdSx$~y*T#bSy?jn!WjI8+l?{KSjU)POfsez>lqsu8yVA#eKB@t%rG`F zW*PI01;!#{iLsfn2V)CkD`OjDJ7fQ0>~B_AtUj{(oi&6t1#3#yRIF*)p=O7M9nS1< zVMof&H9Mc#`x|>dv(J)!e&lb#JH`d$l5xwpXFM`KvyQV)u}-tju+FhAu?`;GnBYt( zCPpR<6OM_%Bxh1FIWVc2bWFk{E0Y^joGHPSVahVKvYxYEv0k&@u->sgutBjwvjKK? zHgYyPHYPT1O!rI=OixT(rX$mdeL40O*}Z4?ff>$>U`8>c*~Hlde JCVP;XVs8}3X)GRs{J&TD&czj`TV~MjQSW+yFEIF0} zn>Cv)n?0K&dvNyX+2e~Xf-NIkG+R7d0$UcgmTcv0o!A=L9xFsD#47Zep~)XbMMy %~kPoU~Y2a4^I9BBw1Z&806|E{-SG0kkQ_)jJ z-zs{pC_L3ybgXEq=%b=b#SmQhip7d8RfVeRkE$Y7^#UIN@2~Q$uBxW04pnums<*1T zR8?D5qN={Dnm}%;YF5>6Rozw%sv44C+cZ^ksG3vNT&hD+9qQ_Es1AKT!0}Wa->ajl zPN+Ju>Qq&ywt7R=8_UN&qv{Nwfbxf2-m7<3y`QQpsy _{oU4x)TpQttI=moNKI%>+M0aVFQI;&>H@xOQ iSnuuIaI+r<%Ui zw6CeIsjul$GhMSaW5Mc=x+0K`;UvN-sH>)~j&*gatG2Gzj1=ptu1|ISUf0*UmKiuU zMcvT4sp{rbH &Red_ur#8dQH&VY9 z`E bFb%*4AfQpILpb>hq~SpX>9bKEK!Jw!RegrK&G=eR-=d=lY%2?^XSNsNYZZ zJKTM*ue|$=X8wyV?87o(RG!=nT zE0;5QB*E!{@o{RZwyBRzeQN5rrj{8}=MR9Y1fGW5IV0=?X%0 aYL08h z+$WL;*Qsevr~iw;&lS9*IiH&IIb-n)X)Z-`IX0J5b7`CRQ}h1Te6Z$*8Y!C|HC8sy zujc8SZ`ypf2Sg62I3RXFp9j)HO_YZ%g{?nOeW30@ o?~^(;k}sa6ow; yq^vq?7-21e;mZ|(4P){d+7VacY8$S zh>9a(NA!6l ?w%!O2coGJpfErhKc zA*%LN@l24w^n+^-SN#Cn1-|s@*qn~1(@~s&N;#2JJ}&$9bbETMPZxH&yq(_b(|db@ zm#Fg8pHC4=X7YyE8~S`B_>GV^(!LS-M#39e--_z3OmDP$qx~CQ-q@OHnCcIxuOU9= zd0Dk@_4%!a@r2$E?Co%Q1I`9Wnp5$1IssMlc0q6N?OTW5zS}b*XH=XKJJae+PiNYn z>2hX|%;i+YxjLV#_jA?4tcDqz*&QhQnmS+h<^ vruP=&hmU#mvdjA`{vvq&;9w_!`=RZ$OSPV zhA!ye7eX$iy%g1@I9|%?Qg# 0wsw&6??^XL=qxYJ;H!#6~**d--+DvYp{&+tf-%suP z8+wPUaz4DD-+}RZzp(d9_x?`copAsCgS~fe@2Yz5kMG|v@87Ri#IC5l7R8mZYxT#q zuC7gWJ<{v3y1rG{OLe`*D~Byz`Qs|at1wsLuJU$O=BkIQo~}Axjk`|bI>oEyR~N2P zT%)?i@f!6t`fE(rxLs#`o#S=AUDxTl#_M0U{nya`%e0KOJhsBMar^kKgwpDRbstQ8 zF!{lT4>o?V>4W(X7Cu<~VCjR+AMEkL){lR$A3T2W`J>Yxo%`ruXZsNRLyRB7eMtTx z)rWK+z4;iz$GClH`(gNp(I3 YQ>c0(0p6$qs_bhx484V`Z2?S{@bbh)AT8{#+A-H^B; zc|+=k`WqT h8{Px+|YVM+YSA^q5s?} za;w@~O>T92J5;wLy`8GtslDB*+pWHJ)vY_ -o*-+r)2EyjgW~{1)}?p>O}W ze`55B@h2t#i9ad*Y$#N+pC97$BYb{5K5vK5&U}jbQ|iy4J|q8(@OS%6>NAa>&+gw| z|2wFEufQ!5jtY)ijy^ddoV5J)mA}@!gslU_3n-VDUw}3_<$%WkbaARU?Ex|YMgrsm zfCoShrw(8Y02M$c06YLZ07Bq&;}F-`k=GY~;QS=`<;<@d1{RDAIH&w}J`N;XGxHeo{t^?PJ-&=lH{GKxXY%n*3n^$fMZpw^w4ddp@ zP0P)V8_rF~jo?Odqqyn08Mqm_(cFA-bLYlzGjZd%@!SM%A~$f@nVW^1jhmfMh) 1DsBgEEw_%_$Zg{G!R^NF z&&-;8!hMl(xv#lzxxaC*xbL|ix!2qq?mhRB`^5duf6SR>515C72MX7dhmHrqgXBT+ zFz}#xxbt9na6EV(0uPag#KVJ!jfW=>dnV~4=8^DN00)!FfE=!FJbv=Xc@#V<9!DNE zk6%3Ad7OB(JVqW9j~kCWPnajdfy)6FA${`1c@jJ+o<^QDPmZU+Q{*Y}H1o9awDY;= z^T21rXV2%z=fvlgKRACV{uuZ}^M~UL=F7kr&6mWNov( %dpdSHoAwSI^hL*T~nMZ-{T0Z-j3J-%7qwzO{Tae4F^@_!jw=`1a)6&Yy@sEB>tc zv*FJJe;)Z$^XC_TTK@F>ufO `Sp`t@=hwBbE z9U&cg?MT^?wtKC+*VL7DSBkFm9Yq}#9ql_hc2sxNbQB(p9bG!Qc695is;drNedwCH zd+WOMx#I%HD_q)+$4;P5kWRdIqUc1KsTyHA;X1Kr&IV?%5}i_=8ag$0N_Wb1%62Mr zDt4plwCJ?ywC!~2zDV~~bYE@vrShaV@K<-nb!P6&mPt6rJJ)s2bk21ybS`yn?%djW zlzDMqWOB%>&hH(>lAyZax-fSUbrE-wbg}4w)r+)?tc%wiQDWak*G1pO*u~Vvy-U1H zwwwEI9=cg~bL{2>%wM-%yDfE3)IF>2S$EH-dmg&yv3u(7`PDsbw^!X>cYD+Ahi*SY ztm<~r?R~eKZlAi{cY6|u2vi8f1ZsiM7uX9zfN>V26|c1@VFN-(2-*ue0^bDWj-U@g z7eQA+H*r+r^d`=oxOC#Z6ju$YC<|6VLIYFFi_A^t&|E`^6kJ0uUsfA2g1XEZjB2*z%nQ1n46{;2LCe)`;U4E02 zLMfqop|ns&s7WX*loQGe6@-dH!Eqi!EkZqo+C^WAo{1jfHz;f%UjTInH3-}lVw7T3 zVjRS%#puKs#F)gm3ti?&ucgqv&{}9Kv==&wI}+?nK-Rai`*b757%$Z{q%$)55(I zcOmXd+y`+V#a)ZL6?Z4@UfiR&KgE3)hGf>zaAA}%S{Nrx5M~xO2`7a!!cD?i;knqev%_ z-b6Z!bP?%Yq!!YbNJ1nfQZJGg=}ROdk`pP26h(q#&LVw_w2QeDvk`L;a}pa7+f{6> z*o1gi;;F@6iM Vkj<8V)eW>MB*6iv`t5CGu-kFV!HGk!q64O68>rQo*~DR1c|E zsh+aevUjo%a)1&; L_)RdX{>VUr~O|@-F3ll153R zrTtUd86<^FV7pE_A)S(LlFmw(q=ToHT()>6y^}u3z-3S}I2o~wt&B>>QN|?WBIBM* zn*r~_snxO<@KfrwXh28JD2bwyW2H=v9aQ;JPM%PRKBOha{1HBvQEb)jmh8Uh@I zIw|#b1jwtd2#}b%&g%M?YMJ_gty3R801|bp)XgXW37=SfQuW!W&kv~hq1;!WPsNeq zMDZf$ A| Rdyz+&y-K!9-jw`Qk}KKe)RE_*QnH5` zqU4v7cNqOJ&|z4^Xof)yLsm&RY#y3QK9&4S$!{fhrLOQcrADQUQdTLi)DNW|O07!$ zrTRkkmFjP*=c-q#?^Ul=Z&dG8A5@>zz}2ACpw$r6FsorxBhLpLhg_jRD$`17*tbe2 zr61}ms(VrfDT9?E%DgI5W;MwGX#P}&=b{E;1AG^wl`+a#Wt=imnN69eGP|0Pnn;!h zL4cZCHGQgytEp3yQj=EGq$Z~(ucoM`9ZW;nQ3BGvCCV0AQ3TD(w#wd=<+*x-91B4R zez)zF9hB9|-j%h=I%T7>N!eN1RoS1)b;|Y1P0Cs2f^xHR59P7)ugdd$+PqfYDIb)N z$|v;$sUJlBD6&NMqg6j{>c^~pJk^gqJ6r-*fvE7RLZL#b0#$*jP^)lJ;i^Kb!cB!w z6?m@iApZxYLa)N0!l;5)!Kg5)U{!D`col*QQH7+!tinTuMTJd;rwV_mu&anv#3~XM z3l&QhsftX+tBS3PHx)l~aS@e@gNmbyT1BJcq@q>PspwUVDkc?Y6;~CXD()&Fm554( zN~HoxFfo;mDzz%zRN^Xixl~C?rCy~`C9TqzN=7BCl2gg66jX{TC6#8C9x5#=Z7Mxg z+SN?e9MqiD1E~kk!| zG)c9#YQ3qIt5xK&ylS-?wK}zWwI;QGtL>(?q_)4+6RBsVp0#?usb`nVt0!b3t)5@% zY1GrIr&rHaJ-^joR(%)ho2u_t?NsfR+H18pYCotQ9^nc~^&P4+sbFI5z1j!0k80Oy zzpLG-eNwwsyHmSYdr*5+ds6$X_J`URwXX`o`2Mp;q(?=M+8*;BcRiLp?t83z?0W2b z9D1C3Jok9*@z#^FC$ujweaZW>>&w*BzNcePV^3j!=~>@bK=0LkQ}svHpZfkR`%Lf^ zz~5!65BL{wTJa0il0DaenR`C AeZThu??>Ki(rb|;haP%udTo0hdYyW`_U6zVo+FBJy_tKn^^@x@ z1Q_sqfyD+?Wz##`JJ-9=ySaDI-tB$hIs63IM+icwPq >Omy@ zso-1m`_S)GzlVNL10n+|2E+!`4(M~hWWddU<$(2o{eb6zkb#t7UKvO`5H%1t5I>MO zkTkqBL)j1IIFxQE(@-u0rJ2>B-9W`a)j<1!4g(zrst0NYIt?@qG!1kf=wqPEz#32- z2R02X4s0EccDSOUjX>uC1vc<*;CkQ_ApC*Hfv2IvgK&eG2MMeR*xw*|Ljs2ESP!Zh z)OAqppl+E^QQe^ApoSp_UjwmhP!8e+%<4g zbT?=@Xgla1gN}oSM;?O_gHeNVgV}~jWwypngLQ-BgG+;(2hRtu1|J4LXCeoZK+r>Q zLqtQwLnK2ihDe9l4)J4%pF tO$RA_p#%>-3AH_IINTel@VHwORD1_neFe*JNGpcD+7BT_E zYlyI;+Qz|Tw5R2$`%%Nb9d#Ua8jTt!G+H$}IXXSMFuHkk%jne@U>nBZ#+b5?GT||i zF%@GfvuvK)G2Jq7OlnMSOmR$UoV#(J#yO6UuW|F>yBxpUaj(a{8TZ2o?A_jtyBzm^ z+{ba(<9;7^Gw##4yK(p99>)DK?u$l56WFLGt$wM&IF-FT08g_42;4v59pRcPu$6#` z1Y9GUTJU6m>jKOZ;0XYUUDt2A<-iwfPBm|V+ypWaXg(mbfSJ;r2EIdgL3gk}XJ@D& z*?1ya0P|Xij3+YEhI0mh)@k7Ze*)$N#Ha p|vPDNj+DmZKiD9*iEW9z0AEm>VzwU_k3JXic?F`mQuc4ZxKesSWIFZHzWi zo21RG&8DYPPh3w*Poti+o+dqcJ 5PQX$yyaX!}#!JzIMm)2`L7({9qvY8SMd zwMW{Q+EeXs+H>uV_Fns_ebRo{KjzH%0;CH{hr14w4pxV#L(*XfXQhrLyS>0P1SXEy z>d18z8UIC<2Yb{yPC8m0osM3|sAJM`)^P_ruufPf0!}e79O={ouMEsbu1OQj5;&Je zr%5NLQ_v~ulysVPdg!$2IqC<8(p5j4Uc6qhUX|WTy>Y#Hz3uuZ*FTm1>GU_z-&B9M zdLQ&Y={ JIhLm(yQv`- pPZrtnb*}vA^T_PTD)=cPj66xKn+nUw0brG~VgsPS-nI?pFrF$^F*fKg&BGfb0f> z_|DgR=kCJYrMfG0S2)|O)b*}zfDrBq9_(QdLCJep@vhQcEqAp+v68LRJ=iUa?8)l) zY@;3uFw5Kre;)z_ue+8o4({6D4Zlz7K8<&)?$+Jie0Pt#=XbDl#dMGJJ5-xsxYd|RyeRGsjE>fAX1|~v$6q%ZU&8j@c=48^#oZO0>EUHHOd1vfC?T8Zlh+S z;DAv0ZcxY?^$j&Blv7X~m?1zG$-+nult9`+AcMOQZtg};Mq8MfMn{+xM*lQl&fFoi z5Mv5sT4QeTBQrQNV~#h*854|w24N#w^Bc#_U;XnY5Xlv9QIgx&Q+W)F4z7?rxkl z&KVbsgQt>li}B8c(gZ+z*hFd~GqE*MWbg;aj?Tnn;${*u37bSrdNHXqiJHVrx|-Bx zF((NF_!8n@awbKSW|Q`;@XXT8%FKhACo=~#M>8k$&}M-!iOfdKM$L9L+s$mBz>%9x zm`y@83PCjgn$4Rnnk|{_VYb~o59X=O^V{sT*&DMTKsz#fXMhUbC4f}3_hui=uFd{s z_B)&mvrlHXW_M=yW)EhMW={r&{r)ifV)oVS+l1N)eNLE6SWVbXgib_EWthq|(Q=~Q zM8!nqM2Crv;GvwTndmf8J5fK;Fwr #wXTIOiWBpOik=-Vs~)1P3*_S z!o=dl(!}P8EmMuAnt=ZaoKI8TP7RsPXu5Jxqo><6eSS=zGPh0e&xsEcA9G59NuRYe zJ8?hp0MgOK)5O;d#5*%}ZtAwIdyCs7IFP@& Lw*7B`4MAl$F7}1-v~e4_Frv>7>%6mPtJ)^$k#J8p1TTP>xJmOj_o#mNOhACrATn z`ihf5lOYftCPOE~CUc!kKN&ljn43THx!{>FnA|k^X_}{Lo9u0}VzP3wae`(MhbKp} z`P9kD*~z)dg~`EFX>#-A9=U_WlgSt0PMv%^`CC>Cy~qp%WLj?~? 0)Gm|{CcnHh^XOfgRJImLZSZb}>E>S;F9Y^OO+51kdrB}^Newr<+| zw84G?O>)}1X%|3vOnX1=dV IU=r~NZQ&xXbSw3t}j zSj;UJ7E6nr#oppzakLm-vs%1aLM)+{FiToX{@cD{TMAoBTlTj6vZb|Uv}Lj-xL}c` z)KYF~XQ{AMTH0GWSUOtzW$9$81-CA^axD#(MoW{Wi>13|on_Lp(XwdSYHMU0Y#VBu z)*c#rMfO_Q>(O4L{b2S(f-}J0j`r5&-W?8q0h$=gClFsj6SX{9K3o0(k PfktN;~a)oj(ns>P}m zNP%2oWuUv-0oeiDf!N{24uu^`J5W0?0E%{K?eJlTn;ky0)I10~$jn*|eXh<1V~5EO z-VVVI(GJNDvmG9Gc-mpN!`}cl05e!!S}mY@gF4CTWbdE$KG?glcL+}#%x9Q#c8XcY z&R-W^=d2Uf$z1L^xEHL8)+Os^>lW*|^~!o@eXxGEKU(`^wgJd9WFxkbSa9M;Y9q5? zfr+gJ=SBR?@_6iQ6gJ9Cv&BA_kP)&3Ogm?zw=vl`+ql^Hv =1#zDTm=Nv>PdhHT3^L1CPVABgB!x zl{~ApCG2Qd23LYB9o+fAi-40JeDL6Iheu{dAC4}Lu8wiAP=guTfo -(81t8%_7>x*~T-fT6zQt{YwV1*)*?lIv#IZLZs$AWqzz;Gk=Q zBng_L6B;DIJT8QDVs-+QiPlL4s*IB}s1!~qpiqH81kx(^Ui7`|HSjgA2egmfK;6LH zaC8F)b_2)=Hw 7-Pk&XZ6(;4oJbOxRp zoY7E-KuH0G0_1*YW@k2Mo{(|fgxplPiMolosdm%ZO; n6Cy$k{(3COS);EgW=^ 0h4VM(x$|9CO}%p7Iq#hh z&PV6rWsCEh^ScYk1?&QG;nju0g)( HP`dfIzBX823*o*GX* zw4gwfiKp;_2egIws`6FitD~>pe0A|P0w=q#AO6tzD+4E-zd^(W@f<`;;NAd3gOdp! z0S{30Jb~xN^UZgl>mx75Ja9m XaLc*^u>ZU7OW%*acfJSa4(KZFHSzkzYX+o=*V1bPEP&SmAh*}a>qmAoWgG$! z!g(`8>Fg)uCk#cZpO~LosOS6?{gnI!0g*$-@=infpVLSlju8fg_bPJ(-sDm5gZD8@ zD?$I70Yz@;iPx;O#L*|%fI@(25qwHM%|2~@?)+^0oczN5hW%Fh&G;?&r}ob;@K}Mj z#qYxJ((lUez2665AfP&fDdl(X_vrWJ_vHs7KL~8}2WfxM{s$eQBj^WBKj`u!Brs}a zRcF>ep8Cf={n(+omjqM}^^%P!X zC}k*hC~cm>Wek*L=U490f?h0Wz5 >lnDW0)GU)1iodtsS820*={Df zEInlhiOwM;yCwD@QII7#4}xT%+-J5%+8kXZNE*->4SlPi3PV#J$h2)xw`^Dg15uVX zL5Tz*3z&Q0iGkw*s0Xz$6bo=+e*_gl77FSS)EasodINNS7+4s(ta=SP3?U2=XkuVX zgC;@KpjptjY=z5AAMkfFD`P-E>nUiP;~WeY9f8mZ`VsUR^v`g|;a&i567DSAZ`nh4 zkKqo05WqZua6ry|F#11dQ|vz$WW#8EF6=1tBwrX%0|=TLkrMu-9PQ?83`+BoubQ zS3yjLN+{;maOf~|Z8qpRFt&iF0Q8ES-h%rI?j8W_x(Sj&4!}9ALkNa {>D*O(EHw0g?|XgcL)XL)t=mhO`Ip>43C2PXUU%IfOZ8 zry(ef4;>zmG P 34os<>Fqx3F~D@&=deG*zC=VK zDk5UAasjlULnnE}B;q<7*1*bv`&^Ae9>YH35OIt+Mf`}ly_rVRM)G$oMJ5-2^^V5U z#nQ(z#xiB&Bskr`mqcaOPHCS74LW8T5-2VpDgeVlg$wC1_Zh;ah>^m(pcU{Df3^8V zR!4S->>SxU^ulG+921er$oj~}$YNv(T4-YPj8_z|EM6rT$1^Ux#`wz`9)B6Z|HaeFdXq2KP^t zH!$}^dCxVtgz*9k7=RH3{2WE@h0Pud=xKY4s*UOvRTq`Wb{G(f707PD$^c-6;vLEX z2*W?}aLZCLD7$;?UF<{FlR-(!A_@p0Z5(geZ8~;w6j^7^`h){f0kni{LDgOMd}YRb z$ULr|G9Z8|Bh$D*$o`C94hYJ4*YO_X9k>{v-hku+iVDy;5FbE506_rAAHd0 Vx03z573dHNK7v=70^JO+eTBHE%WI!J8Hoc2`V}e(m-OR zDdQU`of6DWI6#UCj_` bH#_HhpJ(Zq$uMa5-|i;im< z*N?dNaShN(5H}mQ7@t*q*74cIr;g9B`1J7^;$DHJ7mS&47og$Cy$1;{?jx|{alZrK z5O)iuT-<%!W872R=eR!-A_*0+DoR3af;B<%;tsGz14+0_xK6l9_>k~9+w`!^GAyv{ z_$%{sc*>v+s=~aS0fZkoJt^Ti;U(cU5tP?0AS96j76?eB%|>I=Wv?HR*<1irJ(&{m z`HYe+z0~QYNw2S|s8Z2D*Lo`JRKm_Nm6z;LF1zdy1V6&BZtz@+LZ~ZKDj%s_5=Du2 z*+2NJhdB$ybjUgY{YrGoXfihsLx(U#N4RbYI(QR>cddzTi8YDw#QMZ0Xz5Jsk=U9l zl&S(cBvaL-8l{?~x=1xm^&2$HrG})YfcCa@K 6H0Y7|#Od=ReS#+&)*T^ QL%TF7UgMemQ#6FF$S)MfQegrzzC_*}Ivt zu@Y=*C}jsBSoFZ_0PCRqo)@dgj 7q%}MQ#e$ZT7`y(Ghe+5Cy^f0%{+y(Nm@$00U*A3-T?50Z^D8DN95yeSu5@ zJUa*pU{(dz9`=C{2VM^tRbV`UYV^QoW&2E~T>zN?K>*7VKqv9Pvj;x|b+EXCxh6yF zEMd8? -bW~!6V%GTs?rql(iC~kgIpIv zO$PN7)Fmkec)^y!6B1{NB*g-fT*|4dP4SjumrXr6Sl=_qiynenid$|D$QK5Fu*t|T ze-a#P%N+x=%nl&X*?@zAnjOlG90d>Q!Luz0#J9&+T2S@}Ej}$Ft?)ir+JvO7gtq$x zebrl=wp-dn0$E^#s{fI;@3igdS)^x`o^^UQ>3K-cV|u=&r%q3wp5N)4r0+I;f28kQ z+7WauB(SURU<#ICK}vg{z?%S?;r^BOJE#W 84J$bU*H^?`+n|!&ck&c`gs`UVVnn@ zf%WhJi^Hr@UYtO;v%Z0<4HEUNdk}^*zokP?Ec%gqHNd-?wITyz$vlyHs^_Vhr*@wB zJazLV=1BoLp82rMVgoUk=~VE#0)q(*<7{>2$ueP=W*73ZMjqClDQAD1{pai@Ai&I` zc|Ql94c9?tlULAlu(_5Dkk%e~8Kj8kNak2TPy8I)Io@&y3G@v_1 VIg_L0GZ=5 z$90a|9G{S)VDThKDsv)pDq!h_IbG+}&gll-1`vSeBq1WqsfX!0Cq1Wo<`{mB^*O~k zCAg6DL(MCh*J57V`R6=;lll8~{x0WlI)AqhL>{nA54k>S^f tNsyFZ+H{Gz2E&Ocmw{Gv-9nW}(VvwZC0vG ~5oLfWO23oK1EmbW!K9-EqhuKSy8cKwBmBb6)fJg;%UX}O2|ssO4^mg_4Rcv%e541 zDc7=J%L!I6S?Rb^y;8GMxNBD$*SxyNva)7nF)t)gleI3^x?Str+Mu-|Yg6RaJ95K$ zyEeD=fYz&6uXcqF%-o=OT5oQ>{b&6wS3YGEqL^1DRwdW$dvm{fo9qe|oKCsJ31r&I ztWK=1UtP#9MerJUxB9SVNbJ{0)>y2tYDjF>DAx#&JlBNQU**)AiZzu`udKhSlQq?A zYSwgEQ@f@cr0_L$YZ7ac+5DLLHR(0kHTg9yYueTXhuYU?wLa_h*{sjQ`aG`B)B4ow z)2`ottlwn)F4k|lez)uQ4SKNFy<2wye)e@&>)x;Xur znvJTB4*x%I_Z?kjy>5L!^xg!iA`nCfCG-wT=$%jktc0+n_aa3Q1VK7drS~pPy7b;b zLArFQ3WA^rf+*lKr+lCB?lZ=D{yXPgBly|#x_<4x*Gd9OU >s zfjU(Jbt3}$rcu4B`Z{T#UR1zeajW8=1c|KYKjZpqC^Z5N!vYQS2O5S48WssOtP*Ib zioVLIPkZ{klz!~AdZ1B_K%;v4Y#L}32sDleG_Dc|lnulb3d9r+#1sj{6b-}_3&a!; z#MB7H)D6T$24WfnV$13;v;~3{1Nu7z!K(VflR&VJzHAu?Mh1cn0|P<>1Ik2)m5q+5 z7#-0lx=NntDq+!83Pe{aA6=zVbd}2f5tS tuO=3bLWAgi- zr-><4Af`}kOyNQ?g=1ri#KshjjVTrzQ#>}NME;l(u`v-1V=6|(RE&zL6y=|&ty&|d zn!asbIi^P4m>RMEb4ktEe}BL>)<0kySvw}Op1&B-ph`@GdNB>F=nq0MO>4w74aUTV z#l+^1iH&Jish Q>TUm}pkFYO{J#%_3_zYtXD&!^--%@tQTO)T~*(X3ZjF zb4A96g~f)2$A*=S&HGMl-k8{Y@5JWI7h9k}Y aFgCnVY yU_m4g1exc-}~{;Fq0l;3wFg29TR!HQwQiur>T!-Eye1}jDc{Z|cZ1S{6_S4Q=v zmx@uriosx|&|syoV5R)QO5wpuW&QUf^|$f-*U9w54*GhzzCsfftP~7Z4h>cg3s%nW zf3K)=* )j!V` ztQH=u77?r#3|0>fR?p)fovvOlSUni55f-eGFIb~+utr(`JsAHCoW9Gg@2bTHYXpNe z>ji7-kFfeFr5gT=oBkmi{g{jXcfDYp2>%?Gz7t+Y|65<&jSAL{2-dBq@AC!gg$C<| z1?%Mx)(a2*`^_+a-PhmnP|M#=`1c*FP%yG^FfzhFudSaR)emk&*7H}MB7?#DQNacg z{vqxL^@0r|^#wA2sA~}T_q`;-e?QD$2dN%xSi?W);V&!rPxX2?4f+pJ`jd(O VWj^c9u*sG92#t#C)hZ`KP}$4 zYOrz5pg-{kgH8McmHGl$uxVJZY5ri-g2AR`gH6lpqj|7tY%mZO4CD_63I+q^gMpY} zbXYLDO8-Ln`xhF}zhaI4wHo)Y8_~aRl~3}9f6_c=Kxo*2u(AX4793Ev;DDGyixa&5 z=UDrSN@bcw^=#9lXR}uAdvxg8tX|hPm3wsfs7 r$Nm(S0lRZrPz#!|t6sbZryfs^@>RYe-1(AJ G@ywpD_7 Y!=b8XPYi9JAYiGYuo>F!wbY)yMM*f|KaENKlau8Lx*-< z8+GW?ra_yY-Fo+ErMu9#MVHP|dH;9!{r`4*eS$VUUO&zM|LxnOO;3NI;L*MQ|HAe5 zY~86#o36b(=w%h&z3YGb!J~7gy~D0m`5%5={onVTO5M8l>d~$9zwg9;QvdJ8%4OUC z7v7KlU;F;YdvMXz<^KJ+k^J`S!zAWR{^zv)%m2u>|2b_xtZV)!x2-?CyPpXC&vLt- z6q8|cOd&l!m411xH}uQn(_%V&Q+iwmaz@OAnWg)0k+YJsNv|7 GKpL7snD 9# KM(D(19rqt==TSY>!M#i ze>ZY>au2dU^Lkt_?2R8`AM}S4kNX(=VSoGt2jD>bRC@ox 4)|H zqj0qJ!@B-Cj=`}w4#(pJoGAUUp8o|-!pS%Vr{Xl6E`41y$+K`a&cV4jPx|$_P`^BH zF?lI@x%4?!;7aPN$g6P;uEllI>un%^jT@!++d|$dJ#IUB2kxZ48~0M*hx@4?#KSV7 zejV2@pZ7cc^13I XQf}q7xc^LxlFz$J^wo1z?;(R-6sEtKj9s`i$CK%>3P54 zL;Ov8pGV}!_y_f;