From bf71ead8b98396c2c4fd398746e36dd7718e3239 Mon Sep 17 00:00:00 2001 From: Q Date: Tue, 12 Mar 2024 16:37:03 +0000 Subject: [PATCH 01/21] add support for Transport for EMF HAFAS --- .idea/.gitignore | 8 +++ .idea/package-hafas.iml | 8 +++ CymruSansTransport-Medium.otf | Bin 0 -> 52764 bytes NRE_Powered_logo.png | Bin 0 -> 184444 bytes README.md | 4 ++ bus.png | Bin 8462 -> 6465 bytes cache_runner.py | 1 + hafas_event.py | 94 +++++++++++++++++++++++----------- hafas_fetcher.py | 27 ++++++---- helper.py | 4 +- high_speed_rail.png | Bin 14376 -> 6885 bytes low_speed_rail.png | Bin 9115 -> 6616 bytes mapping.py | 19 +++++++ mapping_tfemf.py | 46 +++++++++++++++++ node.json | 20 ++++++++ node.lua | 86 +++++++++++++++++++++++++------ service | 30 +++++------ tram.png | Bin 8425 -> 5378 bytes translations.json | 86 +++++++++++++++++++++++++++++++ u_bahn.png | Bin 11029 -> 11966 bytes 20 files changed, 360 insertions(+), 73 deletions(-) create mode 100644 .idea/.gitignore create mode 100644 .idea/package-hafas.iml create mode 100644 CymruSansTransport-Medium.otf create mode 100644 NRE_Powered_logo.png create mode 100644 mapping_tfemf.py create mode 100644 translations.json diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..13566b8 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/.idea/package-hafas.iml b/.idea/package-hafas.iml new file mode 100644 index 0000000..d0876a7 --- /dev/null +++ b/.idea/package-hafas.iml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/CymruSansTransport-Medium.otf b/CymruSansTransport-Medium.otf new file mode 100644 index 0000000000000000000000000000000000000000..717e2afd8963b60014e4ce4ba0e8845fb8189a4d GIT binary patch literal 52764 zcmeEvcR&wA3QWNDEb%IK`#hV?oF+d>Eqj`x?zY%3^$v*{9Ue8(V$a5} zrvUq_#+n_{UNJ#J+>PTHH)SlWaDh3T} zyBr%9QcG@4{Fl%62#Lq@g#=sLgayR}4UNT*R>8sHv3TO32un|-8yX(bDgx(627v`V z3J(1X4*QWdB#K0nu_T6slVK!`#6oU8$xu=a-@c?a$}t{2YO zkE2n$7+amX*zO2N%1F`!$HQ~Y*R%=pYmfUawxhh9^YVQ&*IL9m*WR|8 zjYc~}p&ph(`TC)D7Dp)srG+77EZRy=AD@4R7h0?#Y7mLqjX<7qno!g+0yz&sn|hIY zp!%dPX@GzAoZ8@RYg%-xh1=RL2=$1ywO=sGmg^9MT3AqvP<*~E2W3=5fTF>1duz1E zcO0HG82OET%Y0-s#UhW!#2fz-Z2!D$?d6L}w|zS0U$91PCII&cwW!*x&F^^r&yj^8rc z?deD2UiruZj23m)zsR%wFm5`IfxG*!c^&MsAbCqO5_e# zgA7J{h68=FgpWqM#F24iJefc~A`?jx`IyWipO8<1jDv*^RaA64AI~1)u92gh{lthDnV}YtM(D){isbn&lLZ*|sWC58+=5rOG z4P+9=8OUX>929`^oI7XaDs$C11yK_ZPRj`#!&bLI40DXt{aKohk64I|UY4e}$W z;YyQiPR;4aujDbgf@>=19G>XqW{^iDo%~Lok^hkA9O256rKCAIPqN4pXe9XKDw6L= z2KkK>!O2q4&Po$k@*Z)6_F^EFpyyz$MQ>0CJpeR9t~OVTtHM?1yg3i9Cg;UfB`(T} zNYfu}s=^&5AVKZO`*`|rwBJUOO!kpmB$sQ=_2h!MG2BPoJjEHs&!*WXtEG&^U@=)L zTB=%VTN+#1T9PYNtWdS0q9R|hWJTAChKi<&H7a(jIJja+m2=Z6q~VHl6}d2O9k+qo#3ggP(W<+-6z(X#ZN!~K$~XSxba{VVvhC>K zl$*aRFK;g=Kgt+K-(ck|oB`N&C%>XC$^%U%P9R^Cb3nW+@c$j>LCylh-(a?K5!hA% zkxC-iq)ZJtbA_ap0!9rEjFy1hRkh*N6Y`f!Jb+Uft#zS^*MKYrK^j9LkMc-79MU+_ zCXZvm6ImW3AdyoclanEjQ_zh~gG|nqrIIWmGa)G^X!f!Ud6UmbBeIw@BVR&#T9M_D zgsKiX@PbU#gzmm9U($YqOjm?7mm)bf$<3dWbM+xr-MK;Ba4wFUz)j*l<(6@qWt?*7 zx$n3ixu3cF+%qmy!6`~B%!=xYdWx2c4vH>{o{B)lNW}!jbj7EN&lMXKDT+gilZx|- zZxr7tt|=ZUep6&AIb|_rDdl@glhQ-!rL3oHsqCQasqCX%qTCZVGTf(K`!;=shQ|zz ziwunj8Pl)e&~~w5yH;MKN7wdg6*M#s8m8^AAc_5VaCivR_VCg6U&CU8;vETN!bc9X zpNtKU2)3W>Xgkr{_Sx6=*+%~KZ8H?geMCf%?MFBJXMUN!-3piK+s(O5-){M3`gR)~ z5i~l?etUkQzTMi{&h(H!>-fu`b^Y@*uj^kp^Sb`dnb-Bt&%ACw`ObR%^6#wY)LQmS z&Ue;JD9Cqg!J)lb+uI)0Cn!HJpP+&ya$Y_`&UyI+<=4U|D8E^Q@}JPh_Q*c*wmZkz zK8MPmzC)dxHOh7>D!)wMsKRCXMmd-18j+WUN_D;^SW{Qnb#dF-&t>L{+;!lTFZXP`ObQ1z}mH2H?n{E+P~_w>CrAOCTe6< zY{;m%pon2HA(-97*p4GYMvt}~1Vu;3M2)c>hK~#l9~mAyHXO4i)FT3!`1<(Pm%n^# z*GID8xS_G5<02!`!cikJmkS?iON4UkMF+*ih6hCihlhqnM2!m>IV>bTGCVjqA|xRs zVsuzn|IVEYX1)QQLj#JQ`v%x2zX5+?_Uo9xl1XxBQ;h_oiyezjWi?k4s(}yJi0g_j zB!nBsP32Cb)3}W;<2lC^k&0c41B$bX3yNEchl=NlY^72uC`%}-DEldcmC?$D%B9LJ z%3aFC%CD7|ls_pSDxWE-OLvz5mpGRRE>m4*xy*G*cDd?uTV+;NR@GMxPz9?JR1;K_ zRU1_YROeOSscx$7s2=cIz8&9<@5e{-WBHlS5{#b-a3<`Xluu^(^&V^`fd8>D#gsjY)Jgt49g*S~OMjOVV#07qIGTHq+`VwlUT* zrk1U46yr{)SXsWCkq(j$EkC|~L(05zboK%b`$&2=XvXM>37yM*&-$q58iN^8(UJUB zHdv(-D;a6yvXzY5Z5uak+ZMTT*s#dRVZ$~?ZZm7eOd)J|;P}4ozCABLGfT~x&e}v^ z-GB9?Y%BGS5m|lf>8&NwFaYiK9IGj@Q-Km}gUWF-FtDh%&qr zSzShw*l4x(m1`vpE6FcpqbW{N??kosT(eJ%)v1?Co26(ZZr`^!b+@_C16AzkF_Yrl z$9^<#;Y9Q8Q(yl^D;p@PO4Y3H0@Dml&0(GT4>j$NiA?G2-gQu5yK(0BTY7#^wLOfK z7bbp^_-W#2>eY*veYx3v^%vt}7n>7jO#C=;=2GLDPu9*^GglqBYDdU5cb)XDG)-I) z{zcGdebf_;(|?KhVc@YNXWim8TN5`Yu(QnS7MJ|to*75S8E4np)M}r9-)?S^M)mK~ zAkoLzSd(grs!=ldXsi)cjP!T~O~qGpESj9k)ifh$NCl1dK7Emu zC?;sS?+rXjO$jeTxZrw(`jy^_@U8rVWq3Ieh1Iek#wv8|?~;CG<) z+P1URGc>GzrIwyaCP^hFcxr|jYc2G=IEhwQYwyxt-Wq!D)f~|a@K7w(e19OQZQB7s zZOlx;6jaI6GE{YwR-_e~>Lx2=*0nO;V+$%6(`KJtcjjd0bho}k!s5HmQ0v-ic-mM? z>nx&;sX&3DyL3eb4Vz|-sibLTyubn~YUHP59y7FpDHI0GR&$#;A!Z8|FcM?#q zo}*!ES{G?r8sn^Es%Y*@HEL_9#zPaVp=D|q+XZUw@>-$d;u`m;r-6DtzV~7=?)6Gy z%~%OG&Y-0iq&;P`{MaG^z0e5hmg*c^$27dH!|`E*`9VfDgMuW?GO z=9QoL6Hg6PxJk=C{@_&8)#lSHQ;+^=xYhh8R>9PPkz4$c4Uq!|L`L>CH)M)5{>tu< z4jqPsv@-khx)9_3M#d%5K54!9&EsCjI<51WU2cR?dl#a+WXX!%DTBUo|K`x)>z|tI z@v+kA76`e^(`sy5*aK09)0^k%g#MssTV?%2J-YAyTi2)JLlPZQ0>Zimkt9d<6^?DTTOkT7gf z#B%MmImS!Ecq8Lujk?9Ougpu`D?dSQpLWI(l1P8{FxD4RlQxBPH*}8(8I)wwE;Cv$ zysCMzn{*+orb@d^V{O3K4@9?kXRnGjejw7icT^vuSFNwI3NG|0dc&iFD_N)nOVrkDb=JwjY1rIdH zs6)4?6;BAvhqhEPjc}z=t48v-mf}Wn$d>TkySHrFy*qr%kRjpWLrhx1W0Cib$+Y}9 zBbt!*uB{30-bAxQ;;U-3lg4PYax-aJaolS4_LjVPZN2%@Em2xTdFvvcUS?h*hR+nL z<8^F|>K9%c+Eqh&nUhC9H0neT;UdQFqc^0=O#p}+$R$Hy2Wfzcl@e$VR)&G(V{K!j zZpp{SCGr!`*DzkoEWGwgS@b$uQ)*dM>`Inj6V20wm##fGXg!3fi`GnC>wfRbv6p7; z_Q;K)D~&5O+DGYLG=QmDfS?lwjgA`;H*xm7aVG8Taxofhmq5+W{A0Q6R!`DsvjRk* z6VJAKr8GnIPS@^|Orp0oG%_+&%fSRjHmfk5C6zd`gJ3?0$t~v0WT%pNC`pQv)KFkL zNW3^q24P*yVD^KZ5atBZl8^ub1r|mF z%IN=0V15E!hvxbonN-qbKQ4oRN3p)jeCk-JmH^Ay3 zn~~NLvVlMy#uS|UmcSSZizIi6gH?gMOfVORIf46L4dWqZSR{O-_E*nPuTY;arYtt3*eAul z*Jw4~nmElZZ9VOG#p@T}TB2@=3%a(tpG(dw)uPmlQa_ZQQ~I`RsGir?&`0afl&M)} zqo@!YiJywE%6?Y%>U+iC>-pYBH_>f`+tG5~-`~ zSQ9hPvDCHvS|PEbcO|aU;mTzz530PsO64l6tK?Q~R`rvrzj_3EZ1Chf!#wX*YgR3_ zdh6<&YLu$+an1fUSJup|)w0%CUK+2tUeCNeytjGZ^UkharS`zu2Wvm{spS*m^Rdsj zz72h6*QrrwPF;1~&+1jJ_f`D{^`A8OqQSj}UJZY3)Tq(X#)BJAZG5gtg(lOQDw_s0 zo!?B^Y(cY|&0U-KYrd_8dy7#mPPeSra%#&5t$Mclp>>1SscqhGGoj7Nwk6tr*=}Nc zuKl78jXON+IPLvgbTF7vuP>l)nkY}Xgv0=r%IGx~js z9@xM8?H-{$5__EQY3kXyXKF9^UK@Jd>_z?E{2Tel_|Njc(fhsLy?P(%eXCEuK9~EF zzNWt2`$qPi*!Nby=KTiso78V_zu)^S`-wMR|I2`q0~!t(G+^9-1p~GW z*gjxaK!t!c0~-%~6!?DNmx0-XjDzY73Lms<&<}%44{k6xVDKk{4-9@BG(G5Y(BmP& zLsEy<85%cqMKBj!BRDbmZpf_AS)r$g%?~q&4G%Yj?;jp8{Os`D5pE-zjR+aBWW@Oq z4(UYap3nF^L?`a=rjT2X{(!ugf$0?^%)XSdP`0UCe`s;SgOLdpu(*57axW$jI zsHgr3bkv_j{fl$W(38u0yf+jnpi0+iH_BX3SFU+F+14_Q23R<1=u2K`KOQlov zd!;?IM4Kip&j)0b+x2N)FUcykkgrnPR9EN`P*(;0!F&ytDg>LV?YN?wf?{YG3aL$r z>lJ9T!Bp3X>hv$J%o3?iR`a0GzNv`orT?OeBLgR8e91&A)QVpjFTJ3`%!CyQt~*eK zZ(-$}34%ixWqwvP_B>R)(2T;QM?(k&vkJX08&B)7;A z)^{3AtGr&Lc7qF7sqG~;h?Zm;T5*I)AAC06M|GChFL<@2HBq*JJZP2u$~W?4JtT`80kdS>U$vgt+i(Dv?GHYPA@ zPUQlmI^}M4&OQ52a)*pNSC%eB{`QVp|K!{?mHuUZht1aiL0Os3Wxf2Pvd~A%B@L%; zz3eT+22eMBnM6AFt@~^JMk3G9i+teL#JLtp`1N)TDitf-am!QCA`AHA7VV1>`MSNQ zl7R`v7lBJ#SLECg>CzG@FLw*{*nj8{UbFy-uWj2FJ0 zekl5Qf3>wKYbweH2C7_al0~mhB5MvC!&rkpkbOuSuoATKWRw0YOrZ76nPPEu*&rcJ z-6OJ@RcIMr{}r4H0b=-X}{dvNVn`PDAWr& zCeSFt){!8MUBK(Iy7Z|2S^mgow@3g7P9_N%Q?Nn>QW zrBeI=T4DVDahtQ;pULN*@nO@)jTj#=fK_nQ-JNwpf>sOU&~s=~X(ozrJ;4u~ zJz-7EZuUaD?8aPs^4q2_iCHs5EyY-4MClpq2MvWQtn|{6OGbS;y`1%M4G6E)ly5~# zjNLGC_1L-P9N9YQG>!uF=V`C3IWTAI&)D@9{e8QJ^L@UCbKjxioUv;-=j|Gf{*28i z`ft>YdM$|03QOQ*+3zjGD0iX=>GfPx>3iBR&-{)P1@?EANMVSlbrVggXr6qNDvaK+ zt+G0cOc*zROU!7)8X8!`N^Lw7O*%&*-#{w!%8?9(CDS9P_W!b6h`6I<%mdO3A z=TGwGyu<&n7H2R;KplRxO%i^ToBFs@f05rC6gf|Tx&43HIt5&Lt+$!^YSI6qT$?&7 zy`;h{n<^>;PalwFmeRx{XF8tg)2;Wm&da;bE~k$Gl(tOYmbfW_ea&9EjovZg;MYZB zveM=z2fLg4c5||w>X!nwcJnDcORa9JLzndLl7~p-TYy}B!1EC|`k&5+>9+-w5Af?7 zYNWGJzw?PS-XW}sdD5C_7uU;)`SN-%(IK#>6CDzpm?yG{)c9)Yzu%hDbo9fO;^_nX z_`fK>Mf23ZkwjjDLC0!egmJ7b*hX*r>H^l(Y%*)(N&0UK zJ#t2Rdqz}mR~z2QOZrY$8~%G<)T zS7g)cn-w&^eh}F7hl_%;%H&uU)Gu=^49&AjvXQ;7QfraNX=mltN4l=P#= z;?Biu_b)lcT1w;Hm>W;8SyRM>?r|}J6IS$eqd2iR%TI+1y5SS4Ldur)EH&LsHA?y) zX_DBty6VyBJw2Kl>UHnkv}xxbX(?LsQ3fsfy{XGx74vR@{SGx*2LtO%wM>O&?($Uq zjCxXIle@D7Str752wR+8TOUokJr>uloxg0^`7ckoF^$wo#Y*!u5Y{8A=4oYV z1+8pdp~A6#`p6&BNrMgwJbnPgp8Qje8jN3uTH*Yg?9hF3Qe~2VzG2nxe1d%y4Ko_ zR%Z**R6L89$onvD7-+nT# zDR!l$SxtII<{TYuZL4A{s7@Fvy)S;vTc$j*1!T3mWp)a;JZUtpJi{{@nRVsO zp{EA*MIROKleY@GekU#MF=j$fb|FzO! zn)^G;C$ky(_a3*%RTPTV{C}y4zqgu#{Y?K-`A+r+nXP|&O{F|GP5cv#6=Cg@hRY_t zb#$q`U4!ai%Us8&vgU{>VM zNFL%h7&{cyc9rgjp@)hr#x|}Dra!B6MJ%Y4{Nn``eRb=6R!_tZ7QOF$T0Z^8?~By- z#guAEtRdr*SfpBCmHucgE$XLX2H@DzBJY*aS6#qHQg4j@b&}M7eU+sot&qRU@~F@% zOMB;47Qb&qeY-H(_Eu0Kxwh@Y@~a#CXxFP^c}p=JA7LrRxt48zn$LRD;!H`65o&$# zqd#AGdGyA@OYkGd!b{p8ExZ)isY*({Xh|iu_{a^qfL8zQ;x7x;vW2Q(_onnMEK?=< zf~~n~O!y0J&PDpXU515sdCE4e{0*uy2lBV57BXVlEAg5U%Nl`&v;V6~p|{>aZPofy z3zyaSe^p1j{j20v+brNJSojz0U)I*xQ2l?^ve4Nb?0(HU#;#l4{=e6%uIPQ5R$ay=$+q*$bADKh9n!F)b#R#9WRtLC!@vM}C+rk?FD(D+@oZ5ZA=(nBP3qti zZp`c2^ofZQW4H25bGkpb7SYDm9^zx3mZ0QkTEVf=)%=>Rh^G^+M5N_;R+-LJ#g7=A zIM`ixcVT?ifCSEAMo`jTbe)*@VnUmYO4NIjY;N>f7;y0y1HCLY7p={OS^*t>@VwC5 zy%%I;&^89CiQvdco>JxIB`FHcs@VQluKzG=bd-7ajwkd~!A$G5r2rQ6&q{I_Jr>%! zyM>q%<Y;|MznL2NURp)+Vn#4`#o4#)P69s9<{cZf9NI9>c#mHGH?TPTrjM=0?kZ zYZmx!XPxaemm(&D?{?O`+gazl6YSm2y4T)dEpms$yPb9KcGfvI^~pNdyPb9KcGkVy zS!aJ)`Q6UC|FW;}-OjrFeU^o-gSIW5?{?P7UL*d-uGM!t>)!3GE7+>|ZfBj%iH!c; z&bl|5=+`Clcr44pYwuyJU-~{%Ub}7Ew1^4!^k^PNbaJ#UZG&F(RiPw*RmEV*+ zjknhog3n^VJJicSz0TZ8gYOym(Xu2mJ=3rW1~!4>fLiPxDJ+Zd=C+1TFwhAM2h0MG z6bd12;+gu)%fP(+>ibMI>DUIF(Zn^Gj>DZA{Uurj8~-(U-9*Fd?=bjHWMu@LbxBw0 z>deBcn@c!sK$`e9!sAwvIck)&-$Fc-f`yl>0bgWdfL~hM#12ItL7WAoY-Di;qqP{Mzh5 zHMlV1gk#h858u#T&01TRh95r3(#dbEnU>x}`SfM7=X6$cTwOSN4m0Qt(&Cf;%MIFUtkY(RE)KPoMsWu1|2? zN;M6DvcA-%0iNOcRvIcY?$V*7O_{gWeWb{xHA_`T`3jGJ$&DD0cOarj_E|KLzRzu@f$Q#K^;pKp30Fva9% z9Xt%}cl16IW70owAKj~C1A{JTVrISgRq=GjOG!v@-3Bhtq3&o?wZ0iWk|a`(uYLuh zA`Ez=mdj-27Rtrzo1dP1Ah5ZizTd!(9sTy*xw3cfiG?P#Fe{$qS(8}|tm?~pR50lW z-amEpyOn14UIbIr9Ag^9I8nbWQ|L82WNYMU&)#nOfxBwn>;3C=wa!{f_U-iYhH@v~ zmvnZ*t7FOZ=rua?26o*q@wu(Plne>E7OUDkd-+%E+&3;8Gb%1=Y;>dw)?#kXK#KpEVcJCv;NYJ2daILK(-vN2rp4D zUU%8N$&6VutwZKT5~s(rM`%Qt=!5&$5VI zc30=Ji#eBF-&Xcl*2|(F?IGwt>v%)ZdtKa%qaOq5!sbE^worUT&3K1S(9y|xWgrj% z+7+)xoTkfL|4bj;(EBH54Jh0muhi8<|K-AeZ{@~`axw~;ng z-pCO9v5~6#{0%x%rMrs^+t{@>8inx|HC0f*Nvj6B7w7 zp}%wluhp-xPE!5OuaG9GfOXR=y%@SNa{Km;8@J28t7Wg#Cfv(9#7mc`!TIJp@Xhss zn3pK;CJaimkw-kT^Wfu=wQea!pn#_tPiX+$BS^=TQo2-CeA-AzmK|;L{BVXZfp`Ap zRt;VZ##T~QtM;?)GUfS;QdJcdRR^ zxB>ZSP7SO?E*YMPAXDyWisJe^tEI2SX9E_etlhGEVYy79`lK!$q?DbjOaB43(~Sp!^h*t(sL2OdLEad`MC`i|}N@*B4iOr`EA~(il31%O!R2 znA~p4DN`Y-OKk4YWryZ#XF2`QSv{Rozn0X2Rr>j#p?o>J?Tq3Ap{t!W4pIkcqq5XN z`gE*PwRCQ+)JVB@s^~2>N{4&DuUK`wc=frRIQY`gC|A>4P;FKUJ2poIo0%(yodf>Q zO^2ysC_g-L*)}sZ3-@D|cmBe3?u#|c?;G%Q+oEO3rd?Fgm#;j)pB0yH3LX&=0wFCT zd%TPs4gE7t2pO?yrmdtdircR=4KUj3*y-@B1(17OY>%FX`s}A3yKk7_!y~ZX5a!BS8d%HS%yn-)6TIUM zxe-7;sE@&M7j=_wbHi=SCxCejX(FfDdv`Z=r7aD#~96e?~M~}(pLZnX;TvMsfH0q;2no948Jq7B+ zTEcU^(CX(aaJ-=r^ed*ZmPMR*+46&O{9OQ@w5Ql;vNM#cTITfuZjS6CW>j%qo{Rb_Z%|le>${m&-!)tQyyU-c(dXL-LUi0B<|OzwD(gb z^{3~>W1F_7&Nn?2qGpVm5<9W+O}BRKt~XVUkD5F@)DSv<_?JP6Th4=e@v`l@W`m(i6&`+uq`P$Zqta%_uYo1_DF7x7xjmchu+>o z{RuUDFomJd`PJzvwv?Z_Xx6-ih6S_c zf3nDg7d+*YQ{kC+%he01-_KXeujlI~vvN%WSuJ&2ezdphIzMyLtfWbXq*;?bnPloE zpZW!U6KYX?V_J5Ke1rZ;oB5qm!>_90`sF1(hEOd2N4u=6V{_?xV%m<_)DZP&ELR*b zbVPjD>9T*Zd!L;|2>gtu7S1z7DWvNLY@w=dpotqdlca(eGR{j;teFR-k*;#S#blM*d zUf>Kdl{Qk+{V3XIwLAw+CRc1hk!sSiSO*dvbUSQ&VK&f>nIl9IkBtrR~YaN*ygFupWru1d@;O z$g|R2pU{K)qmq%n_=BuyX19WR=cRul1^hv#r>tk4lhe>YXCY#J9nVkiMZ2VX)3WGX z%X+78DL8c9BAN8AiCgF^@h-0~4R4T$XymSUOSDBbf-uYw+im?)=_*u*dmsE%y<4xa0V5&T zTM~lT_Hl2~y<6kvr#|@c$j-G}mYelU2W&VVcE^|mxY~7GRGhBQAcv0NEK6>av^U$QI=n?M2N37emYxBBfsKWNXC+kRF$J6&C56p-4 z8=U)?U!41wzUW^zIQ1{qUu^x8N#EBNMF;a=wd_plmju@>RM(I${+2Fohz=rci)0pA znY2pR`?&^B2h zzrFtZr2B1HIRo>k*Vw16N&lz;T@3H)qM%Q^elRVAmNDq=&!R+1{x7jIte;Z6RbN%A z)5HTX zfUw$hxN6kasq1zbJTRxC4OzTAo9lphPK^IuuzR|?3=IacpLlkN4_O$yYJ_PP;^j?< zSJ^}6(VLiN=~`m4HYc4*3EW2MW2Lkn^FugWt7ARB^f#Hh zhku8bk;k8Ath;&edlPK3Aw7n*Vl@rA(1|bUg_jgg6*p5YT~5VH85r7DpcWG#?g-VA+Bd6g&@ZoisoB#c**~&A${zLUdHZYC7Mco&=#siwo8{+GIEVcE z|M+g5bR+Rjr=sdASJ(S!R&Uv~)0sHgcC6RgB+*gj2BfGGp$+#Gi>hmV!Cn)}u}7l4 zcKRfe*8q80=^GG73nU(;cW7BLa!b(4{&UoYpS!+raL%5U8@Fr>-xGImn)>xj`cDgr zi-bkI(OL2J`&MWC;? zbox)3U!{I)&JYH+XdMfMq#+_a>gZVfYe0)5s9;B0yAq3F%F#UnL*qAK(s`&-OF?f< z9KUDirhW_6H3j7R_0-heKc)7Yx6kh<_op`=(+*~& zq!U?3+M0cCV(!*n;??c@kA7}?Ce)Z-t(k2J<7uz{P#y6f9>hu7>svu#Lwvu>4a2I`+dCuMMJA>$URK2Ft2x)mW|s5)!= z@mJfaI@^sM=Mg(i)tFUe6{)H*En{B7CuE3i1{}D2`M`ni&CA&&C>EtKS0-5o#6{Um zi&w#8)ux&%FvR>oAJFmQrjNGAu8mPITeWEQPQ#5J#~F9PRC#ags-1>yTUQ=Fx+iw< zcGKnis=Xl{c2{?=TDcSB>K-1L(ces!eOAYfFeJ^K_VILd*R0c1aoCd3)nitw6XFu1 z!wgMM_M+SX)APVpvB8F6VR3zX2dzp8HMOmy3f%GSkSFfXo?oEcy}tV@9mIOekk(j`j|ty{k7vvL=F z1?IwjU@r6rm2W40(~NZqOZ%zWLAFHvj-G1A(^2dcT(|}BAD)fb5j|I4nv;K@;-ja= zgnZZ)^P4Bqj8l(KaU1cW+$cR4{q_f(KD~ec>C*xG{rmy~{7hJzTeo7xx^*k!qodOok*TdF7%X*cwJaVl(q%&@ z6m7NA9>34}0*PNZ#s9OVqXFsk((6gtC2#L^768!-kkemszNx&_l`iu59aGCMrC$2l zbSDNyZ(cu#wP%Z9Y~l5OFR8CeKj$U$m4E8kbLqJ31(WtrLe2u5V!G(qb?M5v&d*)< zoWFJ+{`Nk}YASvJ4|{PF#*T*nz0nhvtu%kYci$Cw?%b}ur_d^^Y&mVDJC!s_I{v0N zO&z=I2n5uXda`o+Txq>)`d-(Li{Z>uj?nW-kpX&o!A;zng77@Dhd4(lpkCXaV1{HX z75f-aE=)msJc1)^%wX9M?TUOqv^q9iItT}o*j{T3&!v$Lz8Q(D$d}S}Ru?>3b?zXo zt~{7k;!S_1g&J`T9^EMb7a~g9nq>?9LHQV!>jF>J_9%|9`4s$+pX25O?gafvc_OR6 z=tDnx0668^+KYz7yQW?P2mB|BDMGclz8~~7=(o2!8F6^ssyXwPn!Xh#jTtj-ynD>p zWgE@<=rzl?9F{?PTG}f|?m8j|?mCiX7Ufu7&at~p$AE3b=XDOFj64OJpr7BU!}*dV8eunuu!I2@xQZ$RY$| zTtRk{J&0Idi)+TULZtGU+-zCBkKt%UGAg zE>B#Zxx8@6RTWp2QI%I!L)`MORO?k+ReMy2R9~wu^DexGZ_an%d-MGfv3xeapFhiA z;ji&&{8OF@oS+qqh+5uJ=!K}|Lxo|&2w|$QLf9ni6wV9Z3hBaQAyaszR;e}Wl4?<1 z4l&ECsl5=fyotJ%x}ExcbvJb{^+5Fyb?7XOJ)B1^WByx^^NsHt^WQ6;qOr&8=%dkP zO{r+q)->8e_sumTa$iHElN*`BPNSw6i}2|6sm9r#S4V`b_0))Pr(9Fx>^~VX!NtZJ zAH;0sD;Ni9tQr?b94c!^m*%)uS@U*|qYJr>UWvUPZ{fw-2I4#j+W>4suN}Ku*_Blf zO}?KdZBA{A=HH03k~PQ6sLh(`tI=jxZh&Cu=qOfdG7yYdj;1ZUH?$aOythX7XlF47 z8yQ@3j@L}q$WAwBYiN}uV}XOscptag#?!1m&xlLduPGeeqn0r*lt-koAZ$k;4K|IwZ*+v|uzRkp zp>c$PcSrQ`m54!3??^2XHX2UHt7~4lRngd;=V@EQ{>!{77+Y!Zolnq6cdS_LaPS(8pXy&?O4qT4^3VW742QAI@k+ma+T~6 z$sgA+j@4|bfymEiJdGC{X@>tBPVVO*0(B8?3C9|X^hAg;Rx38wXdg)R5g{Gk{VN+s z$gao}jk4qMDhOA9%tte<5vrK&qnX%9BL}YkNvv!1=KVC<$$#V&c%J5uTmsL-EK_y} zJlWa*JWjr)_xX7mT`0YXi0jrC#`|(0)ruO#yr=6b*(=(ijRppSXiaL_g~o9j?I?|X zcC9^@?*bWJmBRt@iW7F<$K@Qpk9%mGJs&UBNZ++H7PW)KdH+bE-6M`|G7%d4bYE*X z9OO;)wU9{dTkYT|*uH^~*d2|i{M&_1z!;J5zI2Ik%XF=?3ZpfBXhaxzIa=&AV{fC@ zZnGF=)FP&Nfe&L0FN2K&;%}#U8WF;+iN>+k_?6MN1c@*0FZsTwry4P%cX*!uN~8Ow zt0q70Tw9Gj<{YgGRw0I56LS?h3ppdE$y@Q4~-k=J&` zE=N&|SEjU!yQ0QUJ4#k)mTR2-{<+}1oJNBn*daG%t$%jwj9A5XA}sS?TSw|a&zM}Tvhuqx4)8Sm0pCaa?o~naRfbYh)CW6 z2*(|b(C42cwD}L@A$fv0-A8j@l4H3q$O(L(%6&pk=Vl?_6S>b3e)}-aAH(?*xe_^< zfBgkHgYz6dGf?Vr1ou9bdk-a~Yqv@u{eM zM}Fd}nyPZEAf`ETvHz9DwTrfE#j92&#pE{3eUXbGl#{5j{4dn50x{Eggx%F8bo;oB=Ww{dF&*PjdKMsj1gN!%yg zB5nn@)g{qon#(6HOI$X%q_~`Px$JVsKh$fVHhvlD@&o-)!I%64QMPqGab7N;?e`A<2 z-Z;hhnelVuDr2%S#dy?s&iI4zmhqACxrvx~Q*o2Qv~;rcvIJTpEHRcbmT8s+mQ|MRmcy0{mg|;Bmgg301-?S53Wf@n z3e_vrt@(;4rBni=UyY_@ofZ|K^9O2 zP(|ER2~-(W1ymK}0rCV@164VoQl>gS#z4RbG% zMxe&Ir%99ClcXuA8K^m^1*kQisST(ts2!+1r~{}Y=zZkf8D(_=bp>?;`GLBFdVqR@ zdV%~wy^*#L%Ipj32kH+R017}E13`hHL7>6NHwZKYG!zsJ3ITV?pCV6F?t||zWBoW#@e|N+7X9e!zY64_uvEPLuc?rq zxsac^ke|7bpSh5qxsac^ke|7bpSh5q49HI!|H+ZXba0r|;*{A56WG9W)0ke@WjPa5PW4f2x)`ALKP zq(OetAU|o4pA5)P2IMCV@{UMrsosTImT|p9?hHn^S*u4jYm+2DFMxSkD; zXM^L};CMDTo(+y?gX1~icn&z81CHl_<2m4X4mh3zj^}{m+2D9KIGzKJX9N3>(IaM} zN6ZAbUxK6A;AjpwngfpJfTKC!Xbw1<1CHi^qdDMc4mg?vj%I^n+2B|XIF|mJN<&gJap?ST;D81CC{bW7*(XHaM0Ij%9;m+2B||mIIFE zfMYq}SPnRr1CHf@V>#eh4mg$#j%9;mIpA0}dY?@6KAGT1HaL<4j^uzNIp9bRIFbX7 zGsGincKNE?8B2Z91YgFu6kM-XTTXecNc6aoqb4FiSYo^aed z95e#Qk)V;FC{Q$L6etEX8rNg-9S4dBC4k0&#)8I!CV)NyO#~%^l8}B9XfkLDXewwL zXgX*H=wqar37UoDPw@RI+UhgV7pU_R(3ha4pk<)1&_>HaD^TB+pjDvNpf#Yipmm`2 z$YT@o+6+ntZ2@fsZ3Arw?Evir?E>va+WpA)0O%m-5a?3wE%YP%(LdQylnfLl{}&V` z{~?NsMo=;klnewV13}3^P%;pd32sE!F z(7cWSS=VhNO2gc{=xgo*VfTQrdqCJdAnYCxcF%#HWS}P*=t%~8l7XINpeGsVNd|h7 zfu3ZbC)tLcKFGH(s2`|5XaFbx`3wXFf(C)?h)D)wlK%^0lK&!Nl7X0HASM}zNd{t) zftX|avM?MEY z2SJBGm!R`}2K30fdkWB#0`&Zu?w$hl6s@}#t+%HDJt;s>3eb}R^rQeiDL_vO(31l6 zp6;Cj^vJq* z9(rPdp7TJ@d7$S!&~qN>IS=$q1A3+bJ+VMfEYK4R^uz)^u|SWkU#9>)DL_vO(31l6 zqyRlBKu-$LlLGXl06i%{kE~yx2YSu}J?DX*^FYsepeGjSi3NIMfu7jEI7a@NhW+nc zE6~#;Fz(LBxH})??tF~9^D*wu$GAHm{6i z7yK1?eU5ST8{qT-aQXl^eE^(308SrZ9KDNi^e)EH`4~t4U;E}C9YuA;@jEk{on*5O zQ2`@R#P|bHstH0=q-Zflpn!ngIqDh3)`im)q>DIOx165J_Vey;NC*jCXAiyqS6L&3pHL-@R|{yp7>U zWBAb+el&(3jp0XQa5)7>Q}D3?J~qI|2Kd;3e~jTDWBA7y{xODsjNu<+_{SLjF$P~# z@HB;AOyL((_{9`{F@;}D;TKbIG=)!0;S*E%#1uX;g-=Z36I1xa6h1M9PfXzxQ*bba z&r89-6#UzR_1Xi!8sJw0{Az$-4e+Z0f42jFw*!9{!{5d5cQO2341X8H-^K8EF*ull zTPb+d0FN5rQ3E_`z=zEu0@xK#T7o?)B}ZRyHs}ZXgL9cVp9fldQ=h>7%fUo22}}kp z->w%@?;@@*1~niCmVl+yxeT=Swz`4)8^KFp6L=Z4_J+Bdx5#{AE%}Uxd}3Pp#2NF6 z>E#ns%qQ}epS7<6_BHq#`x>-qU%T@3)@^KnjSaA|0X8=%V}oWkHptr8 z%p9+TG2VJ?l3_BX)( z2H4*K`x{_?1MF{r{SC0c0roe@+TYe~#HJAym0U7%o zV4s7pvCly}?Q?*A4zSMw_Bp^l2iWHT`y61OgJ$+Q$lB-3d~hMMZ9O)!6SnPyZE?m= zobeN9{KOeQah4+F%M;*9@Dz9&JOgS$#&!qT?f}~zV7miscYy5{Xv-&!MJV2 z>^sYO;C$&Q1HpH}AaDT~%rh?n<=|pa0WJYUz;Nmw0Y-vL!6+~qi~*N{v0xmSz_Ts~ z6Tu`f8BC$>E5KB6C74Eim0&uU0j>g9gPGtOa2@r`0#)D+a3{D6+zsvl_k#Pt0`LG> zNS_z+oW-C9#K01;lzuJ)kMPV#!7spa@ECZU=R5(P1W$pd!84#1tfJ0m!E<0Wcpj_) zYrzZPMX(NR;29giOJEat8EmHR-+))ZtKi*q4bib0qGL7k5#M0`1U^QWyI|;U@Co>g zuN0qy1Efu~>py=#eiUwbaLa>R9^CTamIt>yxaGku4{K>6VLtrwv6e@Qg!x#@wjyE6 zv6ihx!hCq@!&4ug`ta0;r#?LO;i-?cY>b5YSW6QL+m0vS4tI;-X#}47@G}ZOqwq5d zKcnz73O_yg>A_DAetPiJgP$J!^stB~I_ASsACCHP)Q6)!9QEO-4@Z4C>cdeVi}(ec zjKaw%oQ%TBD4g`*qz5NGIO)Mj4^Db;(u0#8*3U%Ce0b?&{f-nZ^Ra&IiI(~B+lSvi z{Py9u55Il*?Za;$>(>}9^Ra#=TDG0p!FD)b1h1p;Its6&@Hz^wqwv~;*B-p~;I#*@ zJ$UWGYYz)&B4|F`_Tjb>WCu{o9FGXL4j{AVxopS{d~_G-I_l4m%1M}U#wQZNdP z24lcwU@RC1#*=pfv*00zt5VG>h#;`+BEh&y&_%48jU#H&U6Yt+v+d< zPhuK^kK4~a+A<4IY~z>SV@jkyYr2is%>K+elg4z@F};r%sjg_@`;2Jmzqf4F;pNir zn;IyaV7~`@Z_a9Uzm1eWhyEthYnzu%f13VMdnBa(K|DY>R|yd9$o?9i-FVE@oBj*+ zbk{6q?r`vj?=UM~Rx!8E{*blySY`bN?>nr>AySZCb7S&neyo!5*vLyOuV{K2=RV&6 zgeZw=-NF2v?EuZr8*6I1Y9x@}24jTwdgi)GAAFwCW%fsu&$gBuuCPeGoc2Y?oirK( z&7MKOqI?yNa#!WlSibQ{{%;P4 zwj=M!2g1q|wmLSEE#xvQ!8)@4Hs>eG=^XpWQ0XnhWgKycDZ~Uu%XM-Sv*>wpD^UVZ z7RdGT5RvX%cpF>7wWYj$dCXE*%6wTR>zK1{W*+&7KK(I$`U=@4pU5v|AMZa;$^o`o ztJEr`MCRFMRa%7AXt~l!y2vrKqqiJS6zeQjpOx}ndy1UH+iY*%7KYL~)3WomWfyD9 zMr+F^Y0IW*%VulK=4i|2YRl$n%kI*aJ*3ZGOrImP@nhPyo7U~){Vbq;2e|$rFmiEN z>GoGrpRw88`<%Un(j$w0TtK-C<$KgNn3zvUdzVA+uH^bOq#vS>vnX4|mcw5y7O;PSEk}DAM%oLh z&FH|Qr;kx;1(J4&fz(pg=p#paZM1$Gt;^+T+GoMHZ;_)wR{%G}* zZE=q3z(EJ+u=>rkJFM+?wcWYsWGJPE%LwWmDPt)+j?LCSxb)x}(xwlV%!WB3nFE__ z)tQ6N=2P|#xsU4$*lg`pj_NPdtFZRU)n4Von3d#TCC^eDUuY<`j?LB{x~kVa&MLT@ z3-Z`9y>;kqlyrd{$KGhhQLfq24aVErb6a)gFb2-xiqV)O-(ky0A*6cC$Rey#a8(Mq zDg~k{XwOnv*s4QE#ueoZXZd?1_y$`Mmg7w%YAj4XD?;C8yuQcQ z2@CT9`w!W==-59_$9|rUp@@#5h*|)nnXs03G+&4jxR17G##+Eww6Y`4Cd$>MPgmI+ zR(-mvPgnIBR(-mvPgnKnsy@T2PgnIBR(-n4>Ri>Qt=!JA+EIOmRG&G`^y#WT!>UhL z^_i#o3^miIs|*jTK3&zPtNIM9K3&zPtNL_RpJCOftNIM9K3!#guIkfP{^zMa9o1(@ z^_kO5pRVdNton3SpLwd!5VA7Xw1oRD*8$^yxNGcM2&)jrO5`#^B9)cb^UZID*_Y3p zTRB69Rhjgts;ZJw8PC42OksbvOlRLuu4Ug}Zm7EX#wvQ3S$AyqdD+@c+L1l%Lsn<@ zIo4qIVQUzB*P71WSWjbNBXF%dR_RRUUV|95Ba!h`u5;Hmb1{?4*hF(QW7-^z9Wlox z*<)SyxI23^>(IDwW#nL4SZw=3+Gg41^gJRxly?QJoi@DNB5&()E2ToLrZ(5Mif#9R zQ-g`imlKn(zz+^#WDk??BmXDxU{4WIeuj~?Qhp`BHjTm0f7-4RXu;Y|31c-!%B3<2 zFFQsq!+MTW>&6#pd0y7YT6qC0w~l9Ezb#fNBcb)2;ccw9=*EPKE&+iBN80 zT#M|%GuQ4i`VmXq

z7N12RPtSA2H#Y!W~MYx9%j9~4X=#96}3hgyB|>-U>I&th| zc1U#G=ji$Q$WIviX8veeFpc(@xm^d+E-6!|i_SX1Z8OJ+sBJqIZIq$S0hB(0GBeSk z@x7^*nTt5K zM1QWmM!q*>m{rh-^nR-#{W<3$YnODhr#6;Lf9Z@NU6+BwT%|39CR67;@&S{_o`SO~y+jS{XTVe$D85}_dra!i+&(x8XLtAY%*R{Q-jdirE zC0aiJ2+#drmi>Rd+!sktYpk4P7fMf?b-(s0a;#k{z3oAAlC?ulw9k~2O`89`^t48C zZH9EW*GLzem7w;&q@OcE&cL%p?E%um3d=z1I$e)p^3`Dt`TA~P-zul+^>_Hs%{$V~ zn#H{2UFpNM?ppQ(>0(Xg-c;(TV9ZoVU#pDz%A}8ThV-IMy{w;tWt3UQNKaEfEoIhH zIW>!uEg>zUNBMJROj}<`54)W5W}G~NFP@P8!Y+{x_PG+Z{ziQUyJhgfv^ifS{S=M& z%`q;;3et?-Zd%VrQmo@;J{*rqk&WN5N6H}VK@VrK6ouAsZHN>(tI0Q!cHB-MiR?Q? zQmp98d7*T-a_O(ZMCq(ZNTC%$Ud70A68F2(XLGDUmiwht@7+y%CgF9y;$9i;y^Uux I&P}iX4V@ycxc~qF literal 0 HcmV?d00001 diff --git a/NRE_Powered_logo.png b/NRE_Powered_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..acb7e180f5b09b93cc4b799d06347ee5fe7f9390 GIT binary patch literal 184444 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 z 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 diff --git a/cache_runner.py b/cache_runner.py index fc5f1c1..0949303 100755 --- a/cache_runner.py +++ b/cache_runner.py @@ -43,6 +43,7 @@ def fetch_stop(stop, endpoint): stop=stop, minutes=MINUTES, key=KEY, + language=CONFIG["language"], ) ) r.raise_for_status() diff --git a/hafas_event.py b/hafas_event.py index 4b09bef..b4ca095 100644 --- a/hafas_event.py +++ b/hafas_event.py @@ -1,11 +1,26 @@ import re -from datetime import datetime, timedelta - +import hashlib +import pytz +from datetime import datetime, timedelta, tzinfo from helper import Helper -from hosted import CONFIG +from hosted import CONFIG, log from mapping import CATEGORY_MAPPING, COLOUR_MAPPING, OPERATOR_LABEL_MAPPING -REMOVE = re.escape(CONFIG["remove_string"].strip()) +REMOVE = re.escape(CONFIG["remove_string"].strip()) if CONFIG["remove_string"] else None + +class FixedOffset(tzinfo): + def __init__(self, offset, name): + self.__offset = timedelta(minutes = offset) + self.__name = name + + def utcoffset(self, _dt): + return self.__offset + + def tzname(self, _dt): + return self.__name + + def dst(self, _dt): + return timedelta(0) class HAFASEvent: @@ -20,6 +35,7 @@ def __init__(self, data): if product.get("name") and product.get("catCode"): self.category = product["catCode"] self.operator = product.get("operatorCode", None) + self.operatorName = product.get("operatorInfo", {}).get("name", None) self.icon = product.get("icon", None) symbol = product["name"] @@ -33,6 +49,7 @@ def __init__(self, data): self.symbol = "" self.category = -1 self.operator = None + self.operatorName = None self.icon = None if CONFIG["api_provider"] in CATEGORY_MAPPING: @@ -43,12 +60,20 @@ def __init__(self, data): self.category_icon = "" scheduled = datetime.strptime( - data["date"] + " " + data["time"], "%Y-%m-%d %H:%M:%S" + data["date"] + " " + data["time"], "%Y-%m-%d %H:%M:%S", ) + if data.get("tz", None) is not None: + scheduled = scheduled.replace(tzinfo=FixedOffset(data["tz"], "")) + else: + scheduled = scheduled.replace(tzinfo=pytz.timezone(CONFIG["timezone"])) if "rtTime" in data and "rtDate" in data: self.realtime = datetime.strptime( data["rtDate"] + " " + data["rtTime"], "%Y-%m-%d %H:%M:%S" ) + if data.get("rtTz", None) is not None: + self.realtime = self.realtime.replace(tzinfo=FixedOffset(data["rtTz"], "")) + else: + self.realtime = self.realtime.replace(tzinfo=pytz.timezone(CONFIG["timezone"])) diff = self.realtime - scheduled self.delay = int(diff.total_seconds() / 60) else: @@ -63,18 +88,19 @@ def _clean(self, key): if key not in self.json: return None else: - for possible_match in ( - "^(" + REMOVE + "[, -]+)", - "( *\(" + REMOVE + "\))", - "(" + REMOVE + " +)", - ): - if re.search(possible_match, self.json[key].strip()): - return re.sub( - possible_match, - "", - self.json[key].strip(), - flags=re.IGNORECASE, - ).strip() + if REMOVE: + for possible_match in ( + "^(" + REMOVE + "[, -]+)", + "( *\(" + REMOVE + "\))", + "(" + REMOVE + " +)", + ): + if re.search(possible_match, self.json[key].strip()): + return re.sub( + possible_match, + "", + self.json[key].strip(), + flags=re.IGNORECASE, + ).strip() return self.json[key].strip() @property @@ -111,13 +137,15 @@ def line_colour(self): ][self.symbol] elif provider in COLOUR_MAPPING and self.symbol in COLOUR_MAPPING[provider]: (r, g, b), (font_r, font_g, font_b) = COLOUR_MAPPING[provider][self.symbol] + elif provider in COLOUR_MAPPING and self.operator in COLOUR_MAPPING[provider]: + (r, g, b), (font_r, font_g, font_b) = COLOUR_MAPPING[provider][self.operator] elif self.icon is not None: r, g, b = Helper.hex2rgb(self.icon["backgroundColor"]["hex"][1:]) font_r, font_g, font_b = Helper.hex2rgb( self.icon["foregroundColor"]["hex"][1:] ) else: - name_hash = md5(self.json["name"]).hexdigest() + name_hash = hashlib.md5(self.json["name"]).hexdigest() r, g, b = Helper.hex2rgb(name_hash[:6]) h, s, v = Helper.rgb2hsv(r * 255, g * 255, b * 255) if v > 0.75: @@ -140,13 +168,14 @@ def line_colour(self): @property def notes(self): notes = [] - for note in self.json["Notes"]["Note"]: - # Apparently: - # A: Accessibility Information - # I: Internal Stuff - # R: Travel information ("faellt aus" etc.) - if note["type"].upper() in ("R",): - notes.append(note["value"]) + if "Notes" in self.json: + for note in self.json["Notes"]["Note"]: + # Apparently: + # A: Accessibility Information + # I: Internal Stuff + # R: Travel information ("faellt aus" etc.) + if note["type"].upper() in ("R",): + notes.append(note["value"]) if notes: return ' | '.join(notes) return None @@ -158,10 +187,13 @@ def stop(self): @property def platform(self): if "platform" in self.json: - return "{} {}".format( - self.json["platform"].get("type", ""), - self.json["platform"].get("text", ""), - ).strip() + return { + "type": self.json["platform"].get("type", "X"), + "value": self.json["platform"].get("text", ""), + } if "track" in self.json: - return self.json["track"] - return "" + return { + "type": "PL", + "value": self.json["track"] + } + return None diff --git a/hafas_fetcher.py b/hafas_fetcher.py index 0263d07..6a29090 100644 --- a/hafas_fetcher.py +++ b/hafas_fetcher.py @@ -1,4 +1,5 @@ import json +import pytz from itertools import islice from requests import get @@ -6,12 +7,13 @@ from hafas_event import HAFASEvent from helper import Helper, log from hosted import CONFIG -from mapping import API_MAPPING +from mapping import API_MAPPING, SYMBOL_IS_GROUP class HAFASFetcher: def __init__(self): self.data_sources = CONFIG["data_sources"] + self.tz = pytz.timezone(CONFIG["timezone"]) self.departures = [] self.arrivals = [] self.events = [] @@ -25,12 +27,17 @@ def fetch_and_parse(self, stop_id): departures = sorted(departures) for n, dep in enumerate(departures): for follow in islice(departures, n + 1, None): - if dep.symbol == follow.symbol and ( - (dep.platform != "" and dep.platform == follow.platform) - or dep.destination == follow.destination - ): - dep.follow = follow - break + if SYMBOL_IS_GROUP[CONFIG["api_provider"]]: + if dep.symbol == follow.symbol and ( + (dep.platform != "" and dep.platform == follow.platform) + or dep.destination == follow.destination + ): + dep.follow = follow + break + else: + if dep.category == follow.category and dep.destination == follow.destination and dep.id != follow.id: + dep.follow = follow + break self.departures.extend(departures) arrivals = [] @@ -86,6 +93,7 @@ def _fetch(self, stop_id): stop=stop_id, minutes=CONFIG["request_hours"] * 60, key=key, + language=CONFIG["language"], ) if not self.data_sources == "arrivals": @@ -154,17 +162,18 @@ def write_json(self): "icon": dep.category_icon, "id": dep.id, "next_time": ( - dep.follow.realtime.strftime("%H:%M") if dep.follow else "" + dep.follow.realtime.astimezone(self.tz).strftime("%H:%M") if dep.follow else "" ), "next_timestamp": ( Helper.to_unixtimestamp(dep.follow.realtime) if dep.follow else 0 ), "notes": dep.notes, "operator": dep.operator, + "operator_name": dep.operatorName, "platform": dep.platform, "stop": dep.stop, "symbol": dep.symbol, - "time": dep.realtime.strftime("%H:%M"), + "time": dep.realtime.astimezone(self.tz).strftime("%H:%M"), "timestamp": Helper.to_unixtimestamp(dep.realtime), } departure.update(dep.line_colour) diff --git a/helper.py b/helper.py index f6eff53..a29f452 100644 --- a/helper.py +++ b/helper.py @@ -1,3 +1,5 @@ +import datetime +import pytz from sys import stderr from time import mktime @@ -46,4 +48,4 @@ def int2rgb(ri, gi, bi): @staticmethod def to_unixtimestamp(dt): - return int(mktime(dt.timetuple())) + return int(mktime(dt.astimezone(pytz.utc).utctimetuple())) diff --git a/high_speed_rail.png b/high_speed_rail.png index d963575a884beb36bdf7dd21e2a16c51690d3300..21bd0ef0a3cf9df22da46d6edb16fbc212e2671a 100644 GIT binary patch literal 6885 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

#mb(U>ODr8QW!4 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 B>dycG diff --git a/low_speed_rail.png b/low_speed_rail.png index 5341ee22d7d55ead4476420f78042c5c4cb68029..d6b2c92163cf69f13d8eec898d3811d8b0077f9c 100644 GIT binary patch literal 6616 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 CpsM2l diff --git a/mapping.py b/mapping.py index 370f123..7b6d55c 100644 --- a/mapping.py +++ b/mapping.py @@ -1,16 +1,19 @@ from mapping_rmv import MAPPING_RMV from mapping_vbb import MAPPING_VBB +from mapping_tfemf import MAPPING_TFEMF COLOUR_MAPPING = { "rmv": MAPPING_RMV, "vbb": MAPPING_VBB, "vbb-test": MAPPING_VBB, + "tfemf": MAPPING_TFEMF, } API_MAPPING = { "rmv": "https://www.rmv.de/hapi/{endpoint}?id={stop}&duration={minutes}&format=json&accessId={key}", "vbb": "https://fahrinfo.vbb.de/fahrinfo/restproxy/2.32/{endpoint}?id={stop}&duration={minutes}&format=json&accessId={key}", "vbb-test": "https://vbb.demo.hafas.de/fahrinfo/restproxy/2.32/{endpoint}?id={stop}&duration={minutes}&format=json&accessId={key}", + "tfemf": "http://44.31.105.108:8000/hafas/{endpoint}?id={stop}&duration={minutes}&format=json&lang={language}", } CATEGORY_MAPPING = { @@ -31,6 +34,15 @@ "5": "high_speed_rail", "6": "low_speed_rail", }, + "tfemf": { + "unadvertised_ordinary_passenger": "low_speed_rail", + "ordinary_passenger": "low_speed_rail", + "unadvertised_express_passenger": "high_speed_rail", + "express_passenger": "high_speed_rail", + "metro": "u_bahn", + "bus": "bus", + "replacement_bus": "bus" + } } CATEGORY_MAPPING["vbb-test"] = CATEGORY_MAPPING["vbb"] @@ -39,3 +51,10 @@ "^(Bus )": "", }, } + +SYMBOL_IS_GROUP = { + "vbb": True, + "vbb-test": True, + "rmv": True, + "tfemf": False, +} diff --git a/mapping_tfemf.py b/mapping_tfemf.py new file mode 100644 index 0000000..8a77e32 --- /dev/null +++ b/mapping_tfemf.py @@ -0,0 +1,46 @@ +from helper import Helper + +MAPPING_TFEMF = { + "AW": (Helper.int2rgb(255, 1, 0), (1, 1, 1)), # Transport for Wales + "CC": (Helper.int2rgb(188, 0, 135), (1, 1, 1)), # c2c + "CH": (Helper.int2rgb(13, 155, 213), Helper.int2rgb(28, 45, 71)), # Chiltern Railways + "CS": (Helper.int2rgb(0, 57, 65), (1, 1, 1)), # Caledonian Sleeper + "EM": (Helper.int2rgb(43, 12, 35), (1, 1, 1)), # East Midlands Railway + "ES": (Helper.int2rgb(0, 40, 106), (1, 1, 1)), # Eurostar + "GC": (Helper.int2rgb(51, 49, 50), (1, 1, 1)), # Grand Central + "GN": (Helper.int2rgb(67, 22, 92), (1, 1, 1)), # Great Northern + "GR": (Helper.int2rgb(206, 14, 45), (1, 1, 1)), # London North Eastern Railway + "GW": (Helper.int2rgb(10, 73, 62), (1, 1, 1)), # Great Western Railway + "GX": (Helper.int2rgb(200, 40, 40), (1, 1, 1)), # Gatwick Express + "HC": (Helper.int2rgb(0, 0, 0), (1, 1, 1)), # Heathrow Connect + "HT": (Helper.int2rgb(0, 0, 51), (1, 1, 1)), # Hull Trains + "HX": (Helper.int2rgb(93, 34, 108), (1, 1, 1)), # Heathrow Express + "IL": (Helper.int2rgb(0, 146, 203), (1, 1, 1)), # Island Line + "LD": (Helper.int2rgb(29, 0, 250), (1, 1, 1)), # Lumo + "LE": (Helper.int2rgb(218, 26, 53), (1, 1, 1)), # Greater Anglia + "LM": (Helper.int2rgb(255, 130, 0), (1, 1, 1)), # West Midlands Trains + "LO": (Helper.int2rgb(2380, 118, 35), (1, 1, 1)), # London Overground + "LT": (Helper.int2rgb(225, 37, 31), (1, 1, 1)), # London Underground + "ME": (Helper.int2rgb(255, 235, 55), (0, 0, 0)), # Merseyrail + "NT": (Helper.int2rgb(38, 34, 98), (1, 1, 1)), # Northern Trains + "NY": (Helper.int2rgb(0, 0, 0), (1, 1, 1)), # North Yorkshire Moors Railway + "PC": (Helper.int2rgb(0, 0, 0), (1, 1, 1)), # Private Charter + "RT": (Helper.int2rgb(0, 0, 0), (1, 1, 1)), # Network Rail + "SE": (Helper.int2rgb(50, 190, 240), Helper.int2rgb(30, 30, 80)), # Southeastern + "SJ": (Helper.int2rgb(0, 155, 119), (1, 1, 1)), # Sheffield Supertram + "SN": (Helper.int2rgb(0, 63, 46), (1, 1, 1)), # Southern + "SP": (Helper.int2rgb(0, 0, 0), (1, 1, 1)), # Swanage + "SR": (Helper.int2rgb(0, 38, 100), (1, 1, 1)), # ScotRail + "SW": (Helper.int2rgb(0, 146, 203), (1, 1, 1)), # South Western Railway + "TL": (Helper.int2rgb(226, 17, 133), (1, 1, 1)), # Thameslink + "TP": (Helper.int2rgb(32, 35, 78), (1, 1, 1)), # TransPennine Express + "TW": (Helper.int2rgb(255, 201, 73), (0, 0, 0)), # Tyne and Wear Metro + "VT": (Helper.int2rgb(19, 30, 41), (1, 1, 1)), # Avanti West Coast + "WR": (Helper.int2rgb(0, 0, 0), (1, 1, 1)), # West Coast Railway Company + "XC": (Helper.int2rgb(202, 18, 63), (1, 1, 1)), # CrossCountry + "XR": (Helper.int2rgb(119, 61, 189), (1, 1, 1)), # Elizabeth Line + "ZB": (Helper.int2rgb(0, 0, 0), (1, 1, 1)), # Bus Operator + "ZF": (Helper.int2rgb(0, 0, 0), (1, 1, 1)), # Ferry Operator + "ZM": (Helper.int2rgb(0, 0, 0), (1, 1, 1)), # West Somerset Railway + "ZZ": (Helper.int2rgb(0, 0, 0), (1, 1, 1)), # Unknown +} diff --git a/node.json b/node.json index 37f4d9a..b210358 100644 --- a/node.json +++ b/node.json @@ -196,5 +196,25 @@ "title": "Line Height", "ui_width": 4, "type": "integer" + }, { + "default": "de", + "name": "language", + "title": "Display Language", + "type": "select", + "options": [ + ["de", "Deutch"], + ["en", "English"], + ["cy", "Cymraeg"] + ] + }, { + "name": "timezone", + "title": "Timezone", + "type": "string", + "default": "Europe/Berlin" + }, { + "name": "nre_powered", + "title": "Show National Rail Equiries Logo", + "type": "boolean", + "default": false }] } diff --git a/node.lua b/node.lua index 4aca10e..e76c910 100644 --- a/node.lua +++ b/node.lua @@ -7,6 +7,8 @@ local rotate_before = nil local transform = nil local scroll_position = {} +local translations = json.decode(resource.load_file "translations.json") + gl.setup(NATIVE_WIDTH, NATIVE_HEIGHT) util.json_watch("events.json", function(content) @@ -71,6 +73,26 @@ categories["u_bahn"] = resource.load_image("u_bahn.png") categories["tram"] = resource.load_image("tram.png") categories["bus"] = resource.load_image("bus.png") +nre_powered_logo = resource.load_image{ + file = "NRE_Powered_logo.png"; + mimap = true; + nearest = true; +} + +local function format_seconds(seconds) + local minutes = math.floor(seconds / 60) + if minutes >= 60 then + local hours = minutes / 60 + if minutes % 60 == 0 then + return string.format(translations[CONFIG.language].time_hour, math.floor(hours)) + else + return string.format(translations[CONFIG.language].time_hour_min, math.floor(hours), minutes % 60) + end + else + return string.format(translations[CONFIG.language].time_min, minutes) + end +end + local function draw(real_width, real_height) gl.clear( CONFIG.background_colour.r, @@ -87,6 +109,11 @@ local function draw(real_width, real_height) local line_height = CONFIG.line_height local margin_bottom = CONFIG.line_height * 0.2 + local available_height = real_height + if CONFIG.nre_powered then + available_height = available_height - 100 + end + for idx, dep in ipairs(events) do if dep.timestamp > now_for_fade - fadeout then if now_for_fade > dep.timestamp then @@ -114,29 +141,29 @@ local function draw(real_width, real_height) local x = 0 local heading = dep.direction - local preposition = "von" + local preposition = translations[CONFIG.language].from if not dep.departure then - heading = "Ankunft von " .. dep.direction - preposition = "an" + heading = string.format(translations[CONFIG.language].arrival_from, dep.direction) + preposition = translations[CONFIG.language].at end if remaining < 0 then - time = "In der Vergangenheit" + time = translations[CONFIG.language].in_the_past if dep.next_timestamp > 10 then - append = string.format("und in %d min", math.floor((dep.next_timestamp - now)/60)) + append = string.format(translations[CONFIG.language].next_min, format_seconds(dep.next_timestamp - now)) end elseif remaining < 1 then if now % 2 < 1 then - time = "*jetzt" + time = "*" .. translations[CONFIG.language].now else - time = "jetzt*" + time = translations[CONFIG.language].now .. "*" end if dep.next_timestamp > 10 then - append = string.format("und in %d min", math.floor((dep.next_timestamp - now)/60)) + append = string.format(translations[CONFIG.language].next_min, format_seconds(dep.next_timestamp - now)) end elseif remaining < (11 + CONFIG.offset) then - time = string.format("in %d min", ((dep.timestamp - now)/60)) + time = string.format(translations[CONFIG.language].in_min, format_seconds(dep.timestamp - now)) if remaining < (1 + CONFIG.offset) then if now % 2 < 1 then time = "*" .. time @@ -145,22 +172,26 @@ local function draw(real_width, real_height) end end if dep.next_timestamp > 10 then - append = "und danach in " .. math.floor((dep.next_timestamp - dep.timestamp)/60) .. " min" + append = string.format(translations[CONFIG.language].next_after_min, format_seconds(dep.next_timestamp - dep.timestamp)) end else if dep.next_time and dep.next_timestamp > 10 then - append = "und wieder " .. dep.next_time + append = string.format(translations[CONFIG.language].next_timestamp, dep.next_time) end end if number_of_stops > 1 then platform = preposition .. " " .. dep.stop - if dep.platform ~= "" then - platform = platform .. ", " .. dep.platform + if dep.platform ~= json.null then + platform = platform .. ", " .. preposition " " .. + translations[CONFIG.language].platform_types[dep.platform.type] .. + " " .. dep.platform.value end else - if dep.platform ~= "" then - platform = preposition .. " " .. dep.platform + if dep.platform ~= json.null then + platform = preposition .. " " .. + translations[CONFIG.language].platform_types[dep.platform.type] .. + " " .. dep.platform.value end end @@ -247,6 +278,24 @@ local function draw(real_width, real_height) ) end + if dep.operator_name ~= json.null then + local name_y = text_y + text_upper_size + if platform ~= "" or not CONFIG.large_minutes then + symbol_height = symbol_height + text_lower_size + name_y = name_y + text_lower_size + end + CONFIG.second_font:write( + text_x, + name_y, + string.format(translations[CONFIG.language].operator_name, dep.operator_name), + text_lower_size, + CONFIG.second_colour.r, + CONFIG.second_colour.g, + CONFIG.second_colour.b, + CONFIG.second_colour.a + ) + end + -- vehicle type if CONFIG.show_vehicle_type then if categories[dep.icon] then @@ -359,11 +408,16 @@ local function draw(real_width, real_height) y = y + symbol_height + margin_bottom - if y > real_height then + if y > available_height then break end end end + + local nre_width, nre_height = nre_powered_logo:size() + local nre_height_scaled = 75 + local nre_width_scaled = nre_width * (nre_height_scaled / nre_height) + nre_powered_logo:draw(real_width - nre_width_scaled, real_height - nre_height_scaled, real_width, real_height) end function node.render() diff --git a/service b/service index 21bda50..7c6eee5 100755 --- a/service +++ b/service @@ -1,26 +1,21 @@ #!/usr/bin/env python import traceback -from datetime import datetime from time import sleep +from datetime import datetime from time import time as timestamp - -from pytz import timezone, utc - +import pytz from hafas_fetcher import HAFASFetcher from helper import Helper, log from hosted import CONFIG, DEVICE, NODE CONFIG.restart_on_update() -TIMEZONE = "Europe/Berlin" - def _now(): - tz = timezone(TIMEZONE) + tz = pytz.timezone(CONFIG["timezone"]) now = datetime.utcnow() - now = now.replace(tzinfo=utc) + now = now.replace(tzinfo=pytz.utc) now = now.astimezone(tz) - now = now.replace(tzinfo=None) return now @@ -50,17 +45,20 @@ def main(): ): idle(15) else: - requests_per_stop = 2 if data_sources == "both" else 1 - request_count = len(stops) * requests_per_stop - sleep_time = max( - 86400 / (CONFIG["requests_max_per_day"] / request_count), - 30, - ) + if CONFIG["requests_max_per_day"] == -1: + sleep_time = 30 + else: + requests_per_stop = 2 if data_sources == "both" else 1 + request_count = len(stops) * requests_per_stop + sleep_time = max( + 86400 / (CONFIG["requests_max_per_day"] / request_count), + 30, + ) idle(sleep_time) except Exception: traceback.print_exc() - sleep(30) + sleep(5) if __name__ == "__main__": diff --git a/tram.png b/tram.png index 24080e288dd68e6386b6431eed324a1e2098f287..6d0f02ab25de2e015beec4d4b22271da611c0a86 100644 GIT binary patch literal 5378 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 literal 8425 zcmch6WmHsO)czfiP8EhwKtQCslo(W+5l~TD7^FKSg&{;jh7jo-Y9xiBdjt^ykr1S1 z=~r=#d+%r8bMA+yI_fl(tdsx%&}eF?JSUX9|1NS; z!X5H*?GvH6X8TC{5dc)iQJq_m5bAdvC&Ax|01*iq_3gsD!|ph zBd4`60RT9vHB}zH@SWVsB72cJmWHp`becEx@UGqv?fIN3Jd>i>^P~98x#hzuJlxDC zIQPRndUE<3Ih5pHCV5Pp?^jiWKU)2H_K4&Um3F5C@n zbXTR>>_OD1N6(Is1OsQ{oDL3Yb-MqbYrT=XCzL` z&u~62<=aR_he4eh4dn39(As9>K`;d%sJk>W;?#AC?YeQ(_VT0p6bS~4S@A8nSjeZ| zQaL!1b1s^QT%`(5Le0%xS5pysz`tZJoj#~Qm{8U$u^<_vwh{H2$Vfi9fJ0`QIJ0X{ z07Di^s^QAR!|0$vhYlP6Qn-k=j2kbwA}UG?xDM!tgIAU-KaY-fS-yVFc79HT+dbOi zO}K6fKa7dZexyzh2cd5yeiTbUp{xUxOKJM{4qvp28?}!ZWGgDR*y+6@o+W9Ms1Qj> zuAYI&XQ2uTF7$$fp0*N<%$vYs)^mHd6Ol4FalizK0m&5-k}DEq>bBrpx2^=0%&#E7 z*`z1tyylA!eto|y7qG}j=xcwZY|-eK$yRS(ejf5@56AY$2dZs@@N#`&CABqKof2N@ zd@XoMNJ%LOeDmg+BZn*UdP+~W#Ec34hsr<>o4gO_J`v0h%5=T+Q-aM!_t@A~Vs*ks z0hvL|=g*&iW3d;(OhB(m0K99tKMRk)3R@rrf;ElE7yqX&7^~oV^rtol(D3DyQVq&F%4&U?2ZXLTjwKAeC zcsVgJhFt!Y1{MC|?0LHR;P5^%%-RmODOKlb-<|-v3^7S;+Lk`tZME`OU$a$EXyFsP z6Zu@vM$f`ReCuzm$>a>A=#8@I}#7v2pYU{3KdHndxKbp0Hj@Dr+y#bTZ_ zEIInlo2xOj%~8`*=00_1R$b-dhd@FkBqZ#6J}C%@@T2N*w39)*gT6JY-$~k{hFkn5 z%64`uyF!UV1(ysPhKL2tND7F$zkg4wfz5FlS1o&T~_zw+uWu6{le zmT4+5a4N9-E3M~+zM1A3j)QqeUhVsP(C)Rqw1gf?%4Eg49gacn2#BToPhLe!+S z;o@OikRWyN*WFZD02cxgb0tl-@+D$=i{a)?=n+kf=ki}ah6EUJj`}TY8GBelF}m0c zDVR^Xbox?63FQr7xK<94Pi?qlzrNu<{yDp)izLMW9eqCUdO{k3boX}WwN>X`D=QVA zJ32ZlEGcnN&HR!@zR`FPD&;nRcWY}4)nD%7;9{TObV@pDXhJqMo&bhv_iBS{*Gx5b zPlq|q%Ez@z5|b8}D{d*(xH$W&dNo!S``xB(R5yNhf~{*+pH%Aqm8mZGs-R{@sIKli zq$Z=ZSqgQd?hEe<)>Tuom*4OpX?MAFD}CEXv-$`=&OyCLzB$UYHS`NA0?lU`5Vifzcv?y($uQH+MaL#P>!lYf`v*dMP1_A-IG=+?d(0(+LNw z58nU$2u#Aj!Re#j(#Z+t@CJpX^77y#{db>oC|;e*QBu*Q;PQ_KiCBU2!KM08LzRnN z1??4ipDXHFiaTWb*F5L$?F z)a^s3lfqir^!X{7Ir(m~4}Zah*M78#n0~IzO*6JQyS!2@m)$7*n?N^>60V4SPnKCC z*n~h~f$Hr`>!xsMXL|X}FcWcrC}qW8oqiE^aB9A(DAZSVA#$}^zxdC8;V=F&!pQUl zvlCH^@z{gTB>{m3B~O}9!_!;9?9i-go~Mh~(1DIcIj{$f&3^y*ASg`M-11qit=D91 zJw%2a<`S>wziN|_s7A&2J>-PII=v-|&*@w*hluP&ukRA{anwK2Np7v$bZlC7+)6Ju zvEpk>@2~F>Ny4C)yTl!s;X2CX$_Ih_=y*`p zRVH|u`kGI1^%XR8UhLJ}PBgld!Iq_QRo{oQ3%{9Qtak7fDzK#Z>xOODSy+TiH)K1{ z#)D=*dh*wM&3a+*(Z{9LQ-({}>5NQ;iyloz6`ghZamwu5UlJ7Hu@kKb&12WT8Mg{B|M>Z_p?Ik>)*&gn<6tGy1BUDbV|DE?MXdA zZc^f+Lz+nm9w=z9He!+dKhS1Bztzkic2B?d94y}`jWBbmvL27F+KhxxRqb-jp3;jLks3H=h zsab9H#`I|mnRvZ`jEu|qzC^;-ybi5qso$a^r5%8FmZ~pGvo3S?m1sGcG}Fs>bzAWA zpo$VFhh1M15Gb{(#xWWNH&_pLbPR8LRapAUX`8zP8?OMTj?tbYVj-K0N?YYA^Jbos zp3e+uqA1#UMDx#_!v}X&pk%b{pJ>`%vx$r@*r=L|A80XZcq8P{%Oq`eNy9Ah5IRP? zCM;(HmskW=zI2G7Y_N){%)P?-q=r9F3K3%d8{M3N{8u@5yhz*XoUnXb7CoI)*|d&+ zYwwG9!)q>L6}X0|wUDZz?^nf>p?g{_aeZuAi%Z24t*1h&GdY!{G%DtR6EsW))14=q zjT>|cT!^*bn8EX**Qpyzh%lb)$&r}69V62@{=)v!yu2F+b+N|-aw?(^=O}@x2EY8O ztPfX$uR2hadd9p*z?qPXSc8|xL=|HdYZAAOsdZnkjOB$Ot4vEbr1a9Pn)D&4t!h+FTQ~^%(ncJu`vQl0H7z9`fLjyP0RY2to{-vbUeO2Oh`W zLzHpo40~hXV}A}O%pI^#3A!OxFf_@?K<5^7Vmw>XMhspT!DDL;mFLKyIZ`z+mg$5G?Q)-$oTb*pIckl!P zi%k!3`+BKLh(a0WS)N9}s-_(cSNE0pRLa--BytkBU;u2&?vduLVJTBaJo|^@1Z1jN z%eq97FON|9ypxkly!ENjkFIq2wth}~nt#^MZ=H!!7Ltd{=prkm(xklhu}8Vt;s?|s zW?>E;R?;=_*C42=<@y(#cmzSDFfOB2v}(PVM0O=yb1`!39#e%@Ts)$1C&k-r zZFnU!lVr$U@qvC$hOfG!7hdAn8xm!I+8yO-t_IU{bvnFF-d#Uq&~&6F~W*WRv_+v~}iamRI2=Zgpn3W&s8 zA2RN&J)OBek(rr;B<-F*j1)|;yl3r-(Xa4@EBpOHT)9bsmVf{3s=PN&)+}9`r;A(& z0OPOH^+LS&Dep9Qn$U-U&|XJIv-N2+b#dPZai$46>>mV`WnalO_(})*T6Ag|fy)np z3bTVuBT01TIhWXXT3{*<@5clc**w3ei;PP(Z4p=%Yw$%WwG578IeQO{f?~Av_3Qi? z?VNv(*X9Nj0VdLLmxk`wGTBvQE`b+{!*Mh=w=yA!qI;7!<8E)HID?>>&{zaitdwYr zK7;BGfc8q#``v#TBuWu!keUvOn{J@Db2}B9_OE#e!Luvw-q=xwGcYha>61(bdQ<#! zm8Pg-xnJ{IK3B?yz0krZ>@3ab(IUFK(o*@6(a|0mICuvdjk|tRLc9E7^V@j1H#b1q zHu}=)0rcN#kIDPTMkbu9&U(=_fCiZi>hVp zPF#Nrkws+PX8g zUh$S4Ej`lf`cblybc?zIi$X0`X(Nv;tt2H^(hWjrp@nOubj0L<({!W3Z)sk*-)TTs zLGi7au^z>{{Y8fpQ&TDb7DB>pT&Gd~X?gj!sRkjjq5w58{#Hu_9wJ>_s0jY;+c-|( zM%N{85AP$f<51yX4GoQggu;Pt?+ZcfSRe+1m$i*9OAwqWOv(=?3H~zPQb{04{mnCd z!wo^@QFa!2aiWUExjw2O_jn`Qlouf~G_Xs_ZHKB}d(t*wT&|>8;Pv%eey1&aQo6{Q z(gp0^_ymv)(enWGJ`bIh0LY zY13+OucnnnTmC`Zb+^K8)^|hOt(GGA*s;ul2s&PqF9m&4AcEAx+ zp)hkN4sAuiqZ`r-a*K^d*Q#HHKmy-+Hj!8Ba6Y&z)Io6|A1l@7Agf2!JtrUdc8OS675VUj zzWJgY0r*xc^yd?$agpt@B!2=o=~9p1^dDJPg}Jham=Ly;>dKm+Z&IP6y2uUn?5iQH zEv>8DG~>RO@mtsaB>UZ{!-=smr1$nD_t{Z}R9OCw7ztTKYCWm9o<*V%P}gFUybbFK zd!-vuj|n(OJh!Qoq2+t3OylEeqX}RMf`_cdO{Nzy7f z`;%U(QNaduyL0(n8aMN#>1O@65@~w|K!nsEvP{FZyu;My*%WzKmZ@G>iELDEaDCWT zDeMK3mq@58ER|VOZS8!b6DvnZ{Gdn>+AsYpjMLH1>C_=O2!^N)hCe;c%!a6sCh&4t z{VvVQQk)40J~BZ35Sn+K>)^8k!6Zq?RMjLg;ENFBC3v4c(A?}d__>L+Q)TAEvj%k0 zI1&Hh3fZmOpGKpzXw>eKw%v2)2vbF`7O}9>j&L|J!WUjIpn77pjIMObR9x4vS^`Ov zkLl&1vQip8cNsU?Lz(Xo!<1`%HM0$gmB0+lrcV3OyxhVrl0{|4759CGWuD_6(aSe} z(t9ZNpa2~I3QL6_TDQapvjkJemoOg{vn`UbH00TNfA*|xW$bj z`O)_VW&XX#WEbBCcezO_jwR&axZ6vMztkBB%a4~XF6D=;H}ZNaM{)7&*nc}78}~VC zS4$&~2j{q@B*iJ{iD4#cGlsao>9yt*)Z~*ktu+%7TD=17M!q{rCP_xH7C!)eYn2oJ(P9SUq61+M#cu1xCZFFzJZ9-%`D%4 z{?(P=O%-Kyd(gb(qX4-qd~#)~F-Q49pa+eXX^81ZrnBV5%SZ z6{fG0Dk3PD(NyO-d_tw1K#ToAkGQFyvA&L4OUlE{Ui%0_OBYbZ8QR-{ph#9K*ipRd zm;L1aALXWv>HkvRXp@%wD=XnhRL7Ni>`>FU*OYX_nin&tqVj}aF2e4SL0TH<&(>Ut zL4ETyh^f_1zO7?~~>tXm^)m`}z0wC`^1AK1W7sL`6j>mlR3b-h*<~oE$J|r5GZrD{5=KY8tDd z0z;AQ%Xu+R0YL>LJ!{KH-~p|IQ8L=2XO?dep3JYYElyD}F}!;|^d&UhF=~Qd-tGH% zWwPV8kWjr?99<1U?@^a-W};eWB)jz<=gnet5j(;^_4O0L;^(|L`x&vSaI>dlcld>?? zkWN!eZ5m?OEn*??3h%(+DsI}dvOGyde`L7xr`&?+uu4ALl-;q05)DlpV8slWu)#nR zCyyvFrE}G*r>^I#KPp;Qe~2o^;42!g^t8wRJo9`IBuvA>27D(FK4n`6x88kIXJy-g z;ibPTt8!#JKO{vw7YfTg7i?XYPtq!9+@(EaVm5b(|G{fWug)0xiOh`+q`~gOpl#xZ zf#QMLiRr|z2?IY>RMAsw_NjSw5XBsqsxN-!LBFxad8kDQE|1A}5JrNxLfN?4n96Jp z*)WLsU=)xA2L2{?30fQC)2qT6AnV7q$X?petJdZ zIO~(8R(z>wjQG9#djVi3q>Ul|?8oL*Q9GDDDo1q~QxhwLZU?UpF^r&$*4FLWUP0(2 zYKvQtIKUeFoRyWe-CTh>SQyoDdv*?E>1^P|Z+Z4rUkh2Gi!c1$zg6^@plDvqZ6?w} zx1vckSy$AC4rg+N;ill#P=W|kS$=N2#W{+AF>W1Xx+TAwu6yYFQ?T8(q;uenIgJ2z@e0Q~b>?Gq@1}}5*i1hcqub-;;hs4u#+XjZDm^w$k zS2WQnqb<)Tg|;6PwTJ;Sy0*Gzw%jS<6N9^*uKP*~;mrvD_h%hS@>+a4ce5bSj;>fJ zZ&WnycSxl}HJ_nH9~Cj|z{|qweN1$8RN~1@Lv!QRahU5id$$csP&;92{}ksxo7>q} z@}y%|pcW*beWM)e1Y0fO(_eZs(-|6JK>|{^pDY)I^k=4H3unCM78LX~*kC;EOom zQM!^&*7&YQs;f>*M~7Xy#~dzfi6A-)oRh-Y_etR_dTMxGQl6ZN`!M@#Z_V=xUKZk3 zB4$%fNhM=DcwprxH5Ehs(JpXXGUy`&90^SR&9j{%IHgmyvS%nIav1VslWkzt#E z{VG4mjh#!BT9A5n3N@^9dj9GX8oqnS!q6UwLk-aW-C20_4J`qpoxLQdyAjSvE@n>F zygNqs4-pS29aWqkSu1ET>)&pBe()pVJmqkf0RIMD)~vhZ9{rY8x!d0r`rd*>#^bM` zm7m8fbsP9Y0CNub;Jxm1zW{ zq)z?MQ)uQx{&kAcyDZpUI8Uja{jZw+QLPZhMomB;%l@t3eQIH70nD(NkSX;A&9NxF zVAf}COVXRjin5Q}GdB#4pzQehBsa{mQK=&|?4O}Q^H;Nh#B|_rM$+A^q2g~ry+QU$ z>_XIn;zUdYwO%V2GV3$9?Jz-5y7?WAO6?v0Nm;O+-`qCXbF(l^19X?LhzP0= z`Qpv|=ln_8asSl~SLt|k(Mk+TdmKJmpE2QN)E)Yy4J}o2Kl92b>1%VV?#`ixZ2O@; zL<^i9=$D|&??WP`WhVvITr0yqT9@(Lz-#6@fi^1|gBSY0_au}QteEw=+N_gq+39s2 zc-9^oM1B)1lL|hfuh(Dv-8aMmdj0QZ-$qUec&xo$8z@kszte$!2aGD48dMq^-~4KJ zI&f&#BfA#*$#pP7j5@qkW0VKZq1=w53qs|we$V3wJZ zA!81==wLXDmt9V+{!j31#eL8(S!uLqd_Hl(d+rR1!s{vW!xc zWJ#r!QX&Y8h4_;Kjah(yu9z}>Bo*8`@U`4_bpq#2L_gJ-~PkHllw*{&qzy8 z$;f;qlP6?lKg-B`A(KDJ%1+A2yirt~B9k|5+B7aJ`$SoJLPlm(UjCDe%zHVxDQW3( z8JP!aY9D1}+O@P^DJZ;?l^vCp_3`l;R#14VsMw^d`&L%=B8@gcp^QsOd3$@mkdtE> z8~0GD_m!33OG!PGlY1gB-=(BfWNw~gZQY@w;^pP_PExW*QL#^6KHb*#k%B_JqvKXJm4hqGG7C^IZzX)6;Xao7-y%i8~aEhlfWimD)z3oYT@`>F7L>l)Oo$J{K3i zNue|;DOKp|UR6?Zb8{=z*T1Z+JRmM!r>tB^qq(}e_KJx;5)<2PXn0yhWv8(*OGV|l zn%WH+8E0qb3N^J(aq%uu(WF(Y4y&uv&CTzSNREzZmX^CUHCshQ?CtHZiHT)u zY26SOPSVjq5TsF9_^Pn*HeFq7YwL3)Qk{?xT~E)_($a@UJ1;1>X3ZK`L&ItT0W&kR zqaq@w`1wstOpJ|WxDg2Q^768>vNAF2a~~$>!-+8h_!M^FIGk8)#7fGD(TC(r}3jjtn<9cTA6t@J>jGr5YOQo0)0wK$5~D z%)K0({(<00RvJ+$DGYN1gS50X{WN3!grrCVLmu}AG$R8eBR!slUUEi!N^rVfe6k7; zfuH&phC_IAXi_vIB|0IV`Uf*OBq24$N<)L6`VVwy=)aIdlfr{jqPK_hn21Y=PyWlr z-(Xa#WoW2*a7s#2bV%wSEcf8JaBKVE=+tDYdqQYRYEpc-rNMt0zWM#s0-fSg1jGYmEg>m} z${YWQB8-}nKuw7Xr!rDQcq(dYd{}tWUkclQPlBF%LcBdMSK&#a(ZR8L8>51g!fj)t zW5TJt$f+*zDd9=+yo4si2gm*!F7?08;NRrMM*khwUrhcJm!-k~5c3}fQle90!~d%U ztpBS3s2h1@5Eh&iMh%Zk*cMGSq8Sc$^O?IbDw114)zXDiu?a5@BfqV|C1#At>SeuUQaXlS7+o2|LU#b z@w|qb#Os{ToM$`%P{+AA*m|eG{CaYQ>GQPgeu7v?ODPFf%_GIdO*LJqf8tW}vgAax z@1>__|!LLCY;>mdhKqLUBF2hfsbeJp6qzZ61}{3u-1`_C?Pw+C5mY17wEUHf_SSW)i(`f^CB&U|=S;9_lU zeULG5n16G7uE59{!D<)8Iq>lM z3#Y8t8FpQoe7f;rSlpQ6M*R~JoUG_xnwK zQC{xV(N5Q5akFMK2IZ#f93>jhZJ|cnc8)CLB@<1&*X!GSd27 z8Nu>03AJ1_*yg>r@P47Hn(ndPHqisQhBk z9)`)=$!$_EtB9&l*MP2l-l$bLIcTCPztZTI?qg zJH(DK<+BSN#>HMQf25Lr;h=*-B;Jr+b=_mPc1O8d>mA~g=bO7C!_w2!>2wxzA^pot zUuW?~?pY?CPUk5*k6CEqXCFN5TQaXCTO0Ma-yRjOYPiiDE!ZX2Db*bq)i`5gXx5OH zR+&KBb$dZru-I9s0ES<%?(I<8LH{Yc=KD874!)un;;unlvnNs-QUt{rSEBO5y zcIAtF(_8edZde#?7``jNp`+#Zfz7|)OTXc7?#uQ%E=7O5;vr}z&K1OBH2k=^p9ftz z=!>BEzUi`N})|m~%eK$nibVN6@_UZhREAn4?BFH$q zXT8tanfb_y1-UQNKSITKt+;J|S7h{SNyB}YFTP^%B=PY2vF@e!SAIxa2so*V6Y5ub z4{@)kSS*vfzNv)XXNK5sv&!C9?CCh?%Y&`L?;} z=dXo&HLH>hMkU3=iSD!bdKi-X1s0wCz`pGn6&Ud;q7upaWaS%{i3i=2nt)t@2KalYN5V#&H(pjfRET;%NT|JlCz$6Wij;+=|FovxOdeF_y89hOnWEeU3mSkL*91dU(Z zl{P-g6nAe@yA?S+5i@Smi z%$ddZlh+%1()PPAJwFMth9)k5>=`_Yga`;C&F`R=eNI?GduiEEd@xq63$JeFpMd44n-Dvck-F>KVivz1C4>@Ke+z-sK!cekfjh4i;_-XyRolB|wgay#v`wJsiLUaNhz3i2^@2N`o~cdZnH8R@*! zI1n#Bs>)8)@_g1^W24O-*|XA|&Lcs;*dImEF$acJB`1LNwf)n9i)SEKv3}$XhJZEu z%0EQ=JQBS1cb6Dgb*ono+W2NN=w1!e;1YAedY_>z1ss0K_bErAH52Q7-vGkSFT9gp z(YLu+$`8iLe_l9)Vg1Zze(0Phk&rI*L5J;6!1({cD_H5JqKpy={^}Jodee<7Wkc(dE_UVB2Sk2cW}jhyJdu@=g8%&q9Q#i_(gE zla!4Bfkz!kal~g1LC_sMX$Ts8W^);!*rwfk=}>^6e=Y9H4e$=`Z-0A)GfO56D1o`$ zf$d0joj(Kr-D3~)^NMxMQkOI+L4OasX5WeuL9?D<*$!MX28aQ!?mS0R1o{F2X@Cf% z-`vYd#3TFlSH}oduY+{*5rs|A=*azPt{Mh(i{9$}q>a-}*`s}sNL{|`(f4x5<}E<5 zmOV!Zz7F9~2a(zjo3RE3LBCw?ad_CFL8(d+yuT6DcIP#By%YdYQ1)|?Us=B@oOgiT zGe2y4Ew~5G07?{H%#X+nl^kVK=Q5)weYz-4U7^r5g5!gn&*cMB+4@i!`fIu@OA zXlOmEBXmAB1}aj@`n7Yza8TQpGJdda=dihM&U4WhWZkq1NIC0w#>OZ8Ur zKDPO9N%|c?sKY%^RDc`h52Gq=!Nl|?6Ua>V=a`Z8CN;V#r9c+*;_LBM(Dm9uEOm(F z(1c|i&5PVT0%%etBj2iEXIT(jhUE8!^ZEF{1vD$P|2UfOeE}x<6Lsg0?SS_mS&g>l z$+4$>CSjIcR_0ZO#>?kVAQ_j z8G~!MFAdE&)-43XLrC&@3C@4a3t-#s3;^c@a--qAc#!X^fZFE;fQN$J{;$B2&}wx5 z#UY3wC${xr8K3FPmmts3gZ$I<{20tmv^QW=t~BB3rl5$A90A8~gpuJea9`MA)gIZe zhe7_XMtzV*EO!HT_wSnTy6i=ZxrOSVmSg;jFWXa%-mS_i6QUjjxv@~8 zXJOGz9jDuBUR~Fqx$QUK05KxcE!F=qISx8A$xga1M87a5L_PM$cHPbEU=U^KJ;#$m z;1@4I>0g!|*KtELx7f`>qem~VMss1(RorrEoB%yF`=A_K=-*VM+O|bXCq9~FGvwGu zMwcSI0kR!?opnTZ_Gg2WllTNyxQEjG1y+?sON!aMVgtZ4!3rXG<4(7Y>@gT@7hs>w zF4tof*Wn!^K#am;NL2wXxrttDewrr$g{k@7ErW7f#J-dOM!Y;NBawWS)NOPY?G|EB zCz%q(t8wqX~2<^eTnu6+V zkO|#*TW}LN$ok>AI()nA#p%bzfO8r3F+Z|=ovJK!g5M^pWAzt|f+W~?Z^PYU()bbQ zBT6{SA~)#M&2)-G1t7R%>euS8u~Zml(}-6w3$)|a&d?ztgdy83b7Q;!ddEK|!63Vg z?RxwQ?B$~m4GB9fc3iuE11eGXoH1$cm7u)<*qZE<-H!S7#8nj)Ahd0g$Up$=c6PTh zt8Y#a^+0!@(?D*B0l4~AgD~Qqb1hE;T*V7+&%Q1II8Ml7$pXd!`4!^6ipn!20$KH&t|8po6<~if{OUp`XK5g)IESW$PR}ksgRGu z__Uk@{J=jFIofvw?<;cx3`;QLyfu(Ph+vI*_Gj*r2AimxS6F2ZiHWecHwNUCn>4s^ zvBL*;6%?O$M>{c$ZicCZv9wqC3U*lRpuk~XN?NHOJVBLKV9gYK+5_#Xn#7!eQFazP zG&T~cj@M`&X(m`wLDT{!zT>jBrDEXe47FyF--PUhJZ~7??$NApdub+i)Vnn(U#8Q# zLw#)m-a`#^B#=gOw=idF_Ds#|V|ln|4?cp=;?OPU6l`-90?+wif6CN=E*!uZ&*0mP zS*|q%hf0vG#ZFQKZ0bI?HBV6q(7n6vyMr${ zpZ-FmNkAe~E8QEgI}<}Sz|Wj>gN1Bpq)Bw9MGO>`f)oqzjc@3QMYcue6DRg|h~1!4 z5XZN;lif%4z!bA4cbb}0%+$aa1O3%%4?+Eocg0yiQjKob?0AL2{c# zRwzGNHaoZG>LccW;0BMMb_78(so!4R{k4zHPGrZy=ml|9Q82fctzIQSE8_6C$-55EbYeB z?@5pVGgk)81h57LCZ!S3j21%IVcZ7vc-%X=9EO;u(=i;o2DEP2p5ujKTR*X=Do|zZ z`|gjv8MhwY0HI0(nMVwW=g+3(%vgAg%DsPu1({99+H?sAu|wjqR6Bk~0Q(U0>P;%3 zSNAVJK*L-18xpC*2xi=oy|%(Yj{uxk4B|Ki?_O2Wp6BY!tf5-t2qrlO3Gr65XrQ7UDi7`pbU_Kq-|#}o3tvx?Q5Dvt%RMrA!(cx zR7`L-2jWY7N1(-ckm(|^1^Z=O6IQQU4+yJ(d;OEOMYkb_l;7U3xUpn5d+%t^aRt$m zSnzm);)fsA*!}JmwE2vvTQ{`QpiEchhmi&-MIG(|Ib=U$vNlYxrjOP&EVM4vyjYc6 zDu}!rT=1RTb${XRsBVK|G**P>o!xur&P63GaTs>U1%g}5Gs?)Hk@HGshSGkJ)v)3Z z-~Jj6ZnUq^=?^e19<)kV3i~~z&?2(Ko0VDYO}JC)2q4hVw*qPWWN_|B;;r^t@V!O=fTJ^z?;95_gQ6e7bCv0~_ydbkpT()^hzX-N>RCdT=hL#{1 z^+MQL6U2SeBdt{+ltI_dYnOOpV{N^&j}V>J!KW!oAYc4D9n9wqb*z;~KCCVFng@Zz zzB&#jg(9j(QQoNWU5{t2Dp-(~GwU{*6Pv)1D*r6PcqBn5h0g5$_`M3}A_$m4NlM~gC!j3zmO{$6@v zo@Wvu7@>Z0cW9tQ)GXo&zJX3q;{(n-%Z9?I{JCJX9G`A8S7Y=N+6%F8frl3?$_eMO zBVtyu&+&8(supOXO6}<&pb&aul-n4KVZ4Hf5KE|0eN%-Tv=;qT&JXuj+IOAwHwDJf z0|3tQSYl{w6^}A%$rDEduEl}~dreUw!O#&4!@hn%g}?z0Rt4Z$*+QtCl_JbPiDR*=+tXCGN|L}mJW|tT zj~-K!hy)FI(ixk31Q2;=5lqZ96UeR_z&>zkr$Q{ybOM$K3W2!2W*eXjv2;iR$Gky5 z_KYZSS_vhx#}ri{y-5sf&jx0WC}}mgB#!idpO;>JY4eqk-aP4`GyrNjycO?M)Pdr7 zUEoQf&ZZN4%M9AWWl&S!mDcHdBs3xY3Kd)!(>e5kvUXIm7SN`qcd6uo*Pji=JsbGg z0WrQOq+{M*A}mB7hUI5-x} zJlw}lzlR4>b6u-3Ap)QjmC6E~CL=QFRH8ostVzl`aCtVw7Mvd~)UkW-xE)-Ym|j_b z=MVxzaj(H8K@44OHHh<_Te$3w0ow^+WkmAythoU=GIu}?1kLM;deU*D_ZVP@AEfCw zNSVg4SMO$x6iwZrV+RN<8M_ix?hZ7}CW6Ocu)k6S-0wMU4yZ(O2$sIy48)Kj^3`)p zU8wm8DgFPSP5xVi{+swBL&@3%ScWUGT9=!LtVl~`XL78i| z>1!l;(joR<$-stMn=JX!Rd}#ev># z<<5ZOT+7stKy1S!tiK|$v7Tx1YTccP2%}@X%?mfOBfke?n;3werrC7w7U%7On)7# zj%hPE#jtG=D8mk`QD4>uyU%H~Xo#7@qU{PrOpoDf&8qAY6z=)he zoholf^+Q^r$vHVe5;tgl&PcP;nMA9W{HYyg_kq##%9+yU)uK++Sls&_RJy?hRf6m- z0i&H7(!HOPE)6chkq0n921+n)(Tv@7>JUn^*E9z-JSm@(yD7JI_e}O^(1H8UvpYhA z`#xk43sgYyT+Q-Uf;aA2F$O%%o_=q`khCV!R9I?Rpvi2oa^_rA1L3?3AGK!_AO3cS z!EI%#HaIbPU?Dr%s$9F|ny_HjmM=?|#!%cW%<3)U9Dd$ebrEq;SXAezP-;{mUqS&M zq%DbWB^`OS_aeMzicL3W1fM#I+GPUG<|mbOjB+i~ENtnv_$bE31r>$v37ysi2pQq^ zlIP=#`_LsKi1=OxbwrFVS=vDMvw+@xn)5a-Dbo@8iUpnu1Y&TOYb%hXgc%rkhXOt-8uF z&nh9-5kmn%6O8ouNz$kk=vvwsi)0FSpTJpPK8PiYdKL(yIiV|Bru2A`GuxiZ0JiST zSNYvC&DII|XrqwQQNYHN8aWbjBzb(g0pEvS7}LwE!RrL_K0K=QeCbdu`?X<;Fd;Jg za4~}=(@aY!L?7gpSO7YvAb?paL>NbnH6Rd?ommNKt9s^k9$P?cC z8JOpv>O}kBE22^hf0j3lzjy+R;9|rWH4$QLJ5&cK_g98taaD zC@vm~Dn$NxDc;?C>XOX~T-$?SeA^cktOgEMHV^QxT^>N9o2d_o%^NI;G$q!kFlr~k zTQf3@JHJK%%;Zg6;l;Y>_EsIL5mb@}D858;#l@7mn8R*NLOSW17ZgZgc>PDOcn4%5 zU_UV7aTV%tLLZ(`=&!Asspsc6#snFuj8-3I=auXNRLn%_0sn!@2+X&R8}LCFwuOAe zXy1QYmOyj zQsAGA^6a3UlIz$Bmc(6hGjSCHXoZl?{b2kK4?5Isqf`;|3T23z&07NP41o@I%$@cQ zc&0S!avbK4BmGwf2pexW1!X_aosC8dc*?f*G1yW4g4y!yMgJKe(Kn}r{5E0H3+|8D zhZ3jPMWiBH_(q{}Js6mYBNmwP{FOC*%LXlwuEf*SIAjKEwo_^}Br}IJL1K0lCZEh~-j2`G7e2hvvG@Xw{7P05`_z}rznSQN{v-h61XdsRoz^Glx z55baxZ`krJfy^}+*WXyW4d$}sn-G5t_5>&}Mu)^Xk)p*qS)V^(*(acS7g@4xiFwE9 zepZz!^?ME}PJg0CS;1pjZc4ZROw2o(@7~>hA|E%mslH6?JgOPf<}(m!OAu0e89O1c zrApCW4mA;YmcW4Nk3p$q$xh^h@d3W1OIq}9BDw|>6;1EK z_!$h?cRO+^r6;JP+ctO^Tt4@Cgs*m!FaUkH4NusC`f0UM7sPLrO79>^)GH2B4CP$q zgsoPoyw*?hs$NO_Zlq$0>Josm(3u42rgWG%D{Cc)RsY@Mz7|zq$lGczvZtKd!U|kzWwToyw>Og&3x|Zw0TN0qHNM6eLYgp z9qRD}RC7CT8$Zw>g4lTQ7aSKh<(*PO)`6Cu!|?k-I)73+~Ymb z^pwHHx3iPKghR?#Bmqf=eL~QB+t)arBm_um?2P(6lS|m>=bc!3yMn>J4zPoB|xAK^!c)Bc~}yR1|!H=)o8y4w9|5 zg;5;XYVYjh@su*gH&uiuf@L76eCDDm2A$o#cY)_f2h44L0cb~a3)(fbz%VpQwmYva z1Uv)S?hthwASrrwuL~9ou#-K@a(*Ph_RZyUh{9|Lu$%MpR2|2SHe3?|M{y+v`}THT z0(2v!R|p)#$%}(3EHK0)WbD98_$L7jKlsz5BN}L5HCzl1&_2MVX#UrSAnGZxm|q{Tv8Hao8r3E~;pU9j&q z?Rw6zC22cmW~nc3y#T07p2g0X0sL;3Q?-)o{?_{td*@OO2EdTu>g*TBh+Po*o1pl- z2N9&hW;@tJ3mr3xaQ=R%{1Ve2AmZ!+*i-uGW&m~)Ko-fJ+a9xC4%BfARL~Acxkdch z{V-5MsG4J*U$qM~S?4PA)FE@|yl{5^f)i=pLll_7Mfo7k8`M_;U9^!Jk&nI&Q0;qe6Aq%pXNvdTh0p}SDGrOBu~Z`j*26!~`^kf` z{qNQcM`j$d=MF(ENAL{L6JR+vzDbGQV;B(4N6)lmmvT&ZAWM1FV`#`y4G9=QQ5bdw z?)-6lKSA>%vzF4EGhdz3&;4)#DNxFCpA_xr%vvUbh`Zzh_a&W;oWKMk%!Q4 z0$v0{f4gM4K)d!fFn4NNTVUx`6S^uZsKS*USXb}&K@R=)qxa);o8yUO7$&Qv{!qD{AKzUiHfs_U~-F*|HQAI4*&@;mk!lP4dR!Phaws zM~s+ved-K}t)F%ihnMts9Q@=RCcoDA-2#}9SPY4Axi9^zjk}|r@Gi`ie2~v_$iHfq zbewbT7@_LaUbOV7%?YrNle%HT!v*_v*nObV3B2W|Rf0iufHNEnks_sY@Q6K?(gj+_<-JBO`R? zLPXgEn0MiJ&6%hReF>-(m%7u<$|w=N@rF=FDW!!3V0PXlQ^V zHw4?VUHA0TAtHI|_Yuvk_{`b_-77q?gjSqBX@EU^i<4V8CU#+{a#*T_R!IJAfHfcsC3GZ&W5ClNB9!ZCzbGsWt+z?FbI3Wv-29jM6%E$b zrmLdH;#D@OUf!^D>M`sdlIP2%jc=7zv-e#%mg`tXhEIHC`lu%=h=20=sY~PZ&gw8ix*ej_^U7SzP;Q&ZVD)Ki977` x^wFjIqhqYa>p?*_jpr`vswn;6U5UQSHbX`BjYVZ04u4+6b#ZiexNJwy`EOR`Xh{G7 literal 11029 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%0ARW9lQC*z-)sEVUymMFaE3lxsthkz$v<}YtsOIV zVqTxhHCcUO!RLD_kTWPEp@`OPEmZ(JW$oI>#v-2NbZ^^T`E7M&p&80})_%DA@XIT| zUZ+L}t)^4I>#^}*@6l69CC_?(*hhpZ_RTVeQpekT2{gL3{lL)xAP=n0{&tR|*AiZA zQI?h=l%LWiBseeaBxpFzg1Z%b2QJ|l9s8VjowKzjL`9bfvQJ@e0=G) z+4Loky<&JtK&ti(tQ|8CguItBL#PuHxA8D6pQfj|uD0Zut3f7=6Q7ZM{4hr{wJ76x z`Qk()y~<>>h~h#Sj{!hyyR%YnvC|CTi7W+3^tT|{AC=FCW#nPu+s~c?ZD<3w&?wUpAM~H6 zt)jU<))n)H5cOvjcwI$;2?+(5wUe5b9svUQ0 zH-hbY%#STzer!(Di_q10;U-QMxT_#Jl?1l~b!eL^GfCOCl;O&b!b zck;8S&bMD-Nb|_J(L~_cym-YQj?ZLd>Nun`P@D4>NM2CCcBaBv#i{|!McG%80dTow zN0n+~8pU6C5e!*&lFkn`4qF16HVkA@ucxx3-{pv%A@_a~BE(G(AIUSoR=s22wKo|p z_aAa;WrSH?_EulXo?MHw80sklJ*Esq?WCrf!`mxW5}9EHsG7=wjD{o1iRK#n1^%Oj ziDB}rHW>S1QWzF_P|3gd({woj*vSrLcTtd58;e7Ll zZp?l_&Kvr%cu{|CY7n$^BN4ih6;Q&Z@x??WQ1x2fxE=w>EtK~UCiLIIxxY@xuld{O zFHXUwoh|Hg;6lbT9RVl!jbt?n9h>^mR7NvMC$KwLDt?qCFFZ z-7(XDiLsC$2Y4{$BQXM19;SErsM@b~WW#4e0Bt`zAUQmtk)@+A=i4Q|l{c`*NTBDu z=^l!v^r9%xTE|Hxz1N?(RD-=Q&aP75pT1(pt2o53X~eq0nnqJpU6}&{ERC+J`aO*5 zll%8&KY~(>{|I29I_g^BXtAz2+htl1=jHK~@)2QlKPl9kDMDGpDCO zS>@SxuQ^{wvldpENsmCZIdP==Aov|kv$xxrw7fjdvBqD0v|n+*ymo}#8#o}R`?U3L zKzj?i#q?+d0&`kB?ECSSiN~@igVC|iW72DR&w;^187di*X-^-h08 z?v@T6yqtk4EEPjoxvm^#)Cb9*6Dlx1hD8dqWgBf=JqJcr2Nxi;Ay_^dmHdBGv$w-u zi{>uvwC(!b20Sjk7clGyh+1Sicd`rRtS|mUE$RN8#hXjqd79%TJ$KXZH*1`Pu<2AWkQJUR0 zn}|E<c77&8z35iLGh)anH^9cz_2?_O7DoXx80&X6*PWD0ne*yU4>sX8c-M>5Ndf590 oSb5t40s;aAo!nh~Y^*%(1U Date: Tue, 12 Mar 2024 16:45:46 +0000 Subject: [PATCH 02/21] add TfEMF to config --- COPYRIGHT | 5 ----- node.json | 7 ++++--- package.json | 2 +- 3 files changed, 5 insertions(+), 9 deletions(-) diff --git a/COPYRIGHT b/COPYRIGHT index f57295e..cee6c91 100644 --- a/COPYRIGHT +++ b/COPYRIGHT @@ -31,11 +31,6 @@ silkscreen.ttf: -bus.png, high_speed_rail.png, low_speed_rail.png, tram.png, u_bahn.png: - - Part of twemoji - Licensed under CC-BY 4.0 - s_bahn.png diff --git a/node.json b/node.json index b210358..1fe1af5 100644 --- a/node.json +++ b/node.json @@ -15,10 +15,11 @@ "options": [ ["vbb", "VBB Produktivsystem (Verkehrsverbund Berlin-Brandenburg)"], ["vbb-test", "VBB Testsystem (Verkehrsverbund Berlin-Brandenburg)"], - ["rmv", "RMV (Rhein-Main-Verkehrsverbund)"] + ["rmv", "RMV (Rhein-Main-Verkehrsverbund)"], + ["tfemf", "Trafnidieath EMF / Transport for EMF"] ] }, { - "title": "API-Key oder Cache-URL", + "title": "API-Key or Cache-URL", "ui_width": 8, "name": "api_key", "type": "string", @@ -37,7 +38,7 @@ "name": "requests_max_per_day", "type": "integer", "default": 4900, - "hint": "maximum number of requests done to API (per device and day) - will get ignored if using a caching server" + "hint": "maximum number of requests done to API (per device and day) - will get ignored if using a caching server; specify -1 for no limit" }, { "title": "Fonts and colours", "type": "section" diff --git a/package.json b/package.json index ea4b6b1..ef5894f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "HAFAS Abfahrtsplan", - "author": "kunsi, multi (forked from sophie, lara, dividuum)", + "author": "kunsi, multi, Q (forked from sophie, lara, dividuum)", "desc": "Generic HAFAS departure monitor (using REST API)", "nesting": { "parents": ["top-level"], From f04f8bcafefec645555b1a854920eb129a00438e Mon Sep 17 00:00:00 2001 From: Q Date: Tue, 12 Mar 2024 16:48:37 +0000 Subject: [PATCH 03/21] add raleway font --- .gitignore | 2 -- raleway-bold.ttf | Bin 0 -> 164048 bytes raleway-regular.ttf | Bin 0 -> 164120 bytes 3 files changed, 2 deletions(-) create mode 100644 raleway-bold.ttf create mode 100644 raleway-regular.ttf diff --git a/.gitignore b/.gitignore index 28b0d22..1259797 100644 --- a/.gitignore +++ b/.gitignore @@ -4,5 +4,3 @@ config.json *.pyc .venv *.swp -#*.ttf -*.TTF diff --git a/raleway-bold.ttf b/raleway-bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..16db3eba3b93b1eb2233893f345e2e324418dff9 GIT binary patch literal 164048 zcmce92S8NE_V>)(yGvCOv4XI$fCUR>X;!*oS3m(ZvMeAd0s{6}VG_ZVX|@qWKEcNP|+KHq!)_g$DibLPyMGiS=3dzNv=SRgE&*+yk$ z=WP3V`(6YtW=u>PHECkrqiY6?Wo+R|#=h$@Dz6}8-;n2H7>gRfScg*+^9IMSv&`?CK>IL$7bxz<5~z;~{%1%bjI`SM}bG^uw?6 zE8phw(y=UXn?S z&GzYQ*w;43ucvh3CHBLyF-?5PeBrl5+~R1tS8i1;hIqVZ-{K3LDyId)SaZ zMp!D`lxQO?Im!r2irOBQ7-@t#BFn-O>_%9;eS273#Hp~@2qSE8xDhtUW`qq4Gr|Uh z8euWLjj;Z`w}t;;vMZWIj z>)I1`ahI`y1)awR6a*Fp6m=NuUtk%l7x)+HMV;b17Wj?zE$|v^E#UF2pkq;8NA6o> zEef-aw9c}wwBBZY*7{GYVfAK3VQeIu$Y!zIn8l~eyFe=w1>QxXsFMg2v&2gAtgr+y zEiKK$ckwHl^JB*D@-n83ZT6Woy_s)pj>;oDZE|t5bz?ItD4t%plk+V_>o#v@y)(u( zUy)b%u*Tpm+9^cl4+H2a6sv(zJO@>mO1%<(HP*D*+&2x>URe zaVVQWyn`oD+8lh#7>$069*iq+yY?w^Y1*6GI~Y~(X@{9b_tOLAD70!vw4>T*+A-}5 zj2^)XC_nys;g7T4_~R@Rf1LHlA7>f(<180{9Q96sJrjQ%q?`rYi9e1}T?KnC{y1yI zAIHeP3HBZM^z?ujj(SOXq~uE+z0z<@igqei@(Eu zMZ5z0EAbWVI3d>T(;~8pS&zy z-MspEjrY3PYophVUUzvt;dQ|41Fx^W{_yVT-N!q{d#v{i?|I%Uyf62@$@_lqx4n<~ z`1{y=l6^+|8VWe%t+a`@QVHk#+-l0Q> z9vudB7~Y|vLrsVE9X{>YrQ`UHH+6ig<7XXz?c~!bxYOWHX`S*r-P>tTr-Pl2b~+v4 z70@GKK)~>T$pO^?Z*>mqJhXFZ=Z4NJJ73*-d*?l!zwP{IV8_6)z_`H7z-fV%flC4} z3%n(8XW;XJZv}o9c%q9}mmXc>x(x3!sf)AAk}lVEd9}--ELb?>eDtY1d1;zTa(Rw@KZc-5R@H(e2J|k9Ye=w-35~ z+uf^sukHi8r*)s)-PL_j_l@0e=zeea-Q8d8{(ko#d$1l?^tippS3RS8CiNWEGp}c5 z&m}#ZdLHgIve%SekM=sy>!aZ4;N;-Z!9~F}!7GEW3f>X?T=3h$Uj&~F@eK(M861)p zGAYCvGCyQv$Za9_hdkL^>z&m5+TM5fexmn*-XHY-y7#Hj0im-)mxW#yx;1on=*yuW zg?T;*jKhrwlG_^t;n|Aw$--Nw$JvS?Q7eg z;Q`?p;g^Qr7Je}NX!!96?}(le10xzEHbh(>@m|E25x?7g?Y-@(_Hp)E_Impz_G|4s z?ECE>+P|@%j_ep27MT#46`3Dd7P&BTL*(_5J0f3c zRrH(RZ*9Np`rX&>>3*mB`}Gg$Kd}FZ{*(Hb^U-`oG`{;%~v)c<>k?andb zF{v@xF@-UeF)L&K7V~P%p_m^A@Bx7XMh>VMuyVi^1MV2`$be@DyfNVLfFB34f%bup zfms6!238Gxeo%)&MS~g!Z5niVFdv*W*g1H0tbgp>*mvTl#BGjyKYm&K!||sRQW9JV z>k_smeBtnN^l%Jw%yKk1Zg4!|IGGroSf6-L;%`ZvlhTrklA4kpN_r*f`{eP-8s$tr(BYOWJz7@`gF z8`5P+@Q|D#(}vtTWap4WL&eajp_7Kz58XEOgJD6#N``G4_Q0?c!!w7E9X@UNtl?J; z|71kZ5wk|zFygfl?~X7=MvQchd?3v`EiG+f+5>5a(tb*Jq>oD9kBOyAMsUWMjFlNz zW!#$aa>k*|oXp2FpUHeZt9w@etfZ{mtkqf9WZjkZMAm_f%vPj5;|wYING@YewHZdfVs+ zM(-NEcl3eW&bfuTHMuKuug`rs_pRK|a!-sIIA+DwtH@DyS`3Q}AfP-wWO=_^RO4R53MZYV_3P zsSBpAn|l4!d#C<1O`FzrTGX`UX}Qy;Pn$Pw<+LXYd0}$lrow9rZz;U1@Z+L{qMV}1 zMYk1wUv#24u6RZ9`r_+~Z!NyN`1#_OiVsfjJbn7~N2Y%@BVtCzj4?B&%qX7m;Ea!F z`pg_MbMDNBnagJGnEB;JT`!t>(E}H~GppOIs#&XMeP5DRvZiE5$&bz)XPxu0QlHZB z(kn_oEB&_gcS&<%daTEp?qukp$e~x z?20QY98gmTimJz|UY;{(&XPI1=6pKWHn)22)pOsg zj;-yBy)@`i2sqU$|gLOyhex4sWf9m{s^ViP5d;UxFKb-&d{8RO!KCr%5egFF6`lkBr z_513-tUun+yUGmaezBXlT z?%MLT>((AvdwgBax((}YU-!tmXV<;E?(=oOulHZyfBmrah3gyFU$g$X^(Qy@Y>3}5 zX+zzH4IA#?@Z^Sr8@}8au+gzGZ=-8t!^ZU+w`{y_lt5;hIp zl(}i_ro2tlH@P;=-LzuU`b}FlUAO7hO$Rsq+|;8fwP{Mz!luicwl(c)db#PnrlU(anWdtcfQe?uj*(#c7G!HQK$}Q`%m=mu}aG z=$ZN~-KEdf7wCqii>0@vpJi~UPiUvm?xDRy!$YG&V?qaqCWj6U%?-^9ogP{hT8p`9 zUFhYZSBG97dTZ$KHqGW|3$S&y^|FQ9B5cvNSX+W^h%L)jXIo<1WV_wA&9>ckuWg6z zVcTQ2J+`OAyM%WOw}nT9M~4pz&kw&SLPS_2Iz3oqCD!Q6EB?B zPg}7Irl$jTd$DW?+bY|9n-p9t+iZ*vfo9$Y3 zyEZdDSdY|)>REcJK1Z+Dn=ApAUY1D9piu8n|Inb&kWgD_WN81;L7_>ZLqan`$AuP$ zUKCm#x;S)I=$6o{WSh6zgv|?W4z%^Kh1hJe&GEKW+2%&uDzy1d+udmM{g{y-we7M! z)uzpP;nUG(3)L$0V0)5vu{Mu#&vYw&np z$2xRBdzL-JcC#ngqwH$7lFc)+82j@l#?IhuPI@6C6BroJ6cBmqlrg1AHC)1 zh@)Od-o)R{N4{q4$j?W9YpvnP6Gt9Da_Y#PM=n2d+oz{KJ@F~dVm`eG24^ClUi0au zPiKFc%h)H!JLKWa3;#j5!p?NRL+jm`kh z`e=Jl{#zVAbkoP_6ZA>?R7;vA$1=_`)lz6Fwv=F1U1^zPskYQu>MZq^M#~z@6_%?k z_gHpV9<@AU*-Jnz&sgiM7;RRZ|5z`!uA;cM52Yfl&brXL*t*oZqHU^7t3kRlW~vpZ zJ&3CyTU)Em&`Pz7w9PaYu_vh3=4l1mHmz8z*Jf$uT9HF7}i&v6pmW4>=cm$LraR*gM{VJ>%o-Rq(-E*ef2==74TV`hS7ZOzgni$w{4wnKp2U7{zgDUJU8~ZXwRPG|tx3B@ zyG*-XJD@$Uozh<5C$t6HPV8g$X=k+k+72yK%hG<;_Gr&()3lRX2LDZ4s7=(yX_GW3 zcHDybu%6gucgKF&2I&<88J5JR;c#Ix%fo3(16#uuutn@DwnDp`UBR9P2k&N2vUk`G z{91N`ea^mPf3oB3G&{p}-kW#gU3f1(oG0>Rp2~grbUugA8yY|^sagjb`j5JC43Yg%}V(g zR>sFM7az;Y`FK{zC$Vat&uaKoHjfwRJ=uI-#4h8FY$49Vns`0Cj;~;U~m$G~K6>K}doZZDYvxoVOY$v~gHRBBIW&Q~JJAa7n;#=8E{9*PYe~|ry?__WA zUF=={4116LlmDH4%KyO*^8;)xuV&Bk?JSG;W0&(qkbY5mv>v2)XFb>-ESMSWO1=cA z9KT?$Imr@vPd1c?u_-)-74ea5IWK3I@&E`oyO&?d9^p5!m3%h4 zmM>?kcqRLo@6&$JzSX|bzSe%ye$;-~e$$R?-)TQ<-)p~UC$!TzEHrek{i(gBy^a0! zN7~2Q2iigGuRqZ~)ZWqF7eZ(vhMy635h0>PwCE#jB3$$pe!^RH6(KlJIL-gye+nEp z;yl43tT+qw72R-p&{Ool=|Qjv#pywBoE`MTtk5VHh=n*8SSps`TwtYGC065P;0l}q zTrI8=*NAJy4LA$99wz~Jif!Uzv0U6G7K>ZN&Eht(RopIa5`PnSh;?F(xLjN(28g>c zyKWbQ#64oLxL5dyOT--UnV2h%VSm2_bI^SvPTViz#RHgw9~2I;11A;_;RLi9v(rwI zA|4iJgdtMJqhhFdObio`i{au4F+%JTBQbZSi9MLPxJVaIiVV!(nK+fm#w?yA_KHzr zw0K_RiWkHfu}_Q@FN$%P>Bi&4VuCmzo)Z(rKg1;Qk|s1wOcpQWbmSG0Ctel#;x$nq zUKdlv8)BMxQxuAWm?z&7#o}!-UA!Y^h|W-Q^v78mgVyytb$Kqv-w0ehfiU(d>X6cg{+qX1;*k z#y7Cr`6hNBW`q0r)odHTjNQ$*um|`x>`|PLKgMriukc6N0i6FI^Xif`;b4+KH$%> zkN6Ah6aFGjgjQ;+wM(@1+8S+xR;Sf!HQIb_skTg8qWwdASu518#F^0+?Q*Q&Zqshk zuF|g7HfgtNH*42v*K2>%9?>4xc4>EMcWAq{2ek+IyZi(GA%Bm*PqPh+LTxyy*L~nW z;1j9*oOSf+ru>3=`*c)(jSccXto%Cb;e9~)Ev%RK4&}EZ{yOFNVpF`cl;4|GcpXxH z9}mB;-c57E@nc!qT9wD24bTdezXP|46y@*890CGE;@p$<;NO~lEEW85@+jkR^68EC znSQ~7_&(*=m@l}(jMrI5P~7xePJZn! z2EkN;R)f%!^`OUKtgUj`IA+3cz^W?;DK*Gz!-}gG9M~wirXKa$P?B;~!*wBCgAnzQ z4b-oJTMmdeUAO zqUWhiPF4z=@LYs2;bB7@)tip>Bl#Oa6Px6Lf0sUOX<7&Pi&0ZGC{Tx1mjiYguyq0Z zdF|kv^dP*Pl26MeRp-H8DC10=8!;}4PHq@&d9<~yL>sD?IEO|#^;3iNHL!uQKd7%O z5bK6mfmEWk4Y5u+@~Tl6Q8pLliB46Bug2dJ#8EF&FU&@o*|()KemwFJSJ~KjK% z+hkKIC(4+#rm{6CZT17Tox;>3t$a)UP4!Z&S+X3|tb^a=BH}12)d(7yP*Y{zRtRm| zVne?Z7Lx#hs7a-A(Ncm)?IO8QB_R=f8^(VvT#B15^X7nmi9?sl{8dOJt}*eB$9X~= z-r^7*X6Y)1wYq9MK{M;l1uQB-brY=!I#Ji8Gqu$mI|P|z8u1NbMtHaOkh>1|7%Bt2 zMSw$XA`YXx#7B+5n7EFpUWzo6*G<_>{6Kwg_JA8AjUB>=`o;#EWGc0SDAa)2#Vlp! zChVy$cUco(k|O1RY>rUML%0)M;>1>r2o|-{92dkhl+PR))MkP~+(@#6=t45aqzUmU z(T(bGDXdKXAnu`_B*?9tX10=OX_lbWY6+bIeM9{;U-FpARc*1M5l0+AGZ@jsCE-!exMW$9 zsV1!kNzOXgC?vX{e*{pD3*r59$sTGe;YAqJ8lxVo26z9RPd*H4H{;T(!{pWWQs05` z5{uE6)UJfBr9^9vp*Y)^2$Ri*w#(fL-(64J7GH8Wtpin0I<{wvE4^ znVxUsH)l?PT{1Sk*v2ErPaJ1sUrw1g-o_rlB`J*7{3&B?47ZSQk{T=_3+#X_*a6Xf znIN2vbi=7k51h{QLOPu>g|aZ<6%NeoSdm6y6?^uwUH*%*o&Srn0slqWPX9&Oj{ikj z|No+_&jpvoeK?#GY99T2A-#JK(=$d*!Rjd^Z?uh-WR5PdvBJD588&dk*?T_lf-&OQ zc@qqdo%h*c`Cbq#9WA5sW(z$z_(EFP$LXwYoT zwe$F{ih8Gu??8l;-&0+)U>?5%xB9C2&C z09McQYwOEu__zkbB&VUOrh=z6%yZT8Aq@?&aohnro)3bZ!27~>@Cew6JOp+U?*==W z2f$9@zOYld-p~*i%g(@#V<#IHls2%R8y3_x;536cfNnI=-8`~mr9D{Mreql?{R5

Yh})Cg&Jm39~Nh1pPkg;~yIP{~NgoqQ;4wrEhj`vz`^|d@~*@nLy zi_nkb?;!r3Y5BWP--!1;O#2dN)w^(_ezUd_cA6Hi#p908L7dPf;lz6jZt^AJuP+bc z^v3NFdkN?1H)H4Ch?yKwFt}xhSP69@*6_J9$J zmeT13XFC4~C8#Yre@FQQ-bdhOma0);2iFTX%Ra%qvVZc!{8QX4JIX)f$MBZ#3;reD zFvApywB@qbkFfAC($gF?9ZMjXX-?G?~)hDNso z=}urPRXT!VC-`q@{x^p_OsXE%J# zM&P!r2`gH`3Ph@V4bmHsxHeEr0$hR?;sGs0rX_1>vRUDj^VOvz$$tpMIZqFT%o zHR4O$;QLy9Bfb^iiSNY^;z#k5_*wjd(f+GAA$}7?u^@;Pf4n^~-x0Xq5UjyFg7vsH zxEXH==pDiJ;)a%*=?1n%)QUPWU;Hj`w-KROoc0gH*?;SZ7La$ks22_5wD<#gbeZEp zj~vv3jY#2QK?`h(BVNFr&6YR`iQS7gEmz`Q3-$kYya~D-?}A!sHv%}dSD<^=q1HcVB`nwyT`|2H;&_2>T!2U${hy9lB z2m5W09C*iv9Gzv30GXqc%mH4+o1PD3eI~C@h2O+?kmNY(yByRQBxMd>+rlrjPqm|9 zxnp$a5`UB@0)}{#IFWLA+|xxYNu^AclUh82h430)$xHEea|$1adzr%^*-LRlvp_d7Gkv_S{6cdvmsO)tfgw1 z2nArI^u{fR6fFaxP8c~M7_rG(Iuqg)_)maW8(`OodQj>(95`G@-aUF+8>przlKB->@$7@IVj%E zk%Dc-JD*lL-d2h$8IJddKY*)Aj!P*n^Sh<~=ThE(BV|4KUgr5#jq6(R=f57?7@Ma- zgF&ECENB=H8avPjN!n~FrN*Ow-S5)dzDak#N8gS&=?}|y>GDlF4Um>M=Q;A7`AYe| z93v6$%b(=?l_ZI6dEtI}H6l0{oGNH|OPyrH#4qhU>4}uzuaz zOV+GjwQ|MsiMWUc(aagsi;D`UO)bdJ zn>=aagz@9Xj>#Q8DyMH)fUnO0zSGY))1F!GJ8%Ho>FWot-@pO9*_zqxB_o?B#@KL0 zzc764l)~(+;PCLGV0(CTTC*ONO~zT)qz0R&2+EI^FSvyYuzTxiQ~Dv_lSliwy} zrl$}@nWlWrA~V0RIVT43GQ|v!l3`>tgQMFe=em>awq`b|si|xy)1m+-EqEuF9!ut> zMQBNpy}2~T9&Rrz2dJIi%s)K8BojV=w~yOKp$6No09Fd)nr7d{m9Mz4*;Z0fG#a^? zh-#MqdAnGmeX;2;X|}m+wq|RTy>wDxQ+P8ku?MU0ltNI9JA<3T?cuhfqFu&wA(Y!5 z4p@R^?6mWZlXs@^jd{g|sI=L(F~9I(yuHpW!G{l#NGsfBW6fzYR!}TOQWhHp@ZuCb z^Dy3iQ~uyxX{>pbOx0zC47<<@8E0nNoraO<+9k}m0GV%RG*yHYffU_LNs}pv(-G%w z#;r1Q_f@&QkrF^DyD`KWNCzCu2UJ2wrukaZywiNr{6z`g#+2(RmZq{w5(4uy7JqmA?M}Tft|7Kr%c}BCJJ)-LP`ojS|F=<31Ir0kt+ zLJZnA7CbmHX3}&FQX+<}sVU30Gfj_nx||fw3dgu_Qc3o#EE=@#64|z<<}|0P1Ua&c zWafbbfI?HY-DxX>@IZ4xxjZ|4>QhX$2`51^Aj(w%3&Wzc#9nGf(CBO*H@kgA1#)@D*~d_IKz0ma4Yz5GJ-ZA! z$T-WIHE?0Ltqk8E5zDYiQf{0x6F{_NvY}5U@TP#F#5WW|x(p$J|EA{IZG)99!5k!m z8T6<@Ca*N>(ZqR$;mvb`o2!e6U(77d=2fM(CR>1gh@C9SXQPlhs-)QxHL7`)%ZYYC zCV}@5F$NK~!cy=u0Opi5xj7ES^yrqFnrqPa9v~r7c|NKZQACC2Rg-KbMYfU>#9~qi z54JU1;Myvj#9SnHC!v1)PlD`+<7~=9Sw;gWxY-LcK!vm19uDD-xFShc*?p*e3^=5) znFTjB*_)a

jk!W`K`wwnpcYga5i1yR#gfNcGvA<+5xJ(3R97{DQOX;YG+IqKNK9 zI7o|9vRqBz#^#wAZI-CcO@U3e)Fw!+nGm>ov}AJZ(lry!9!h);q1 zfK)(75%DZhxgc*ESTC4L+nNQYGAT67^0`zrSjDJfh>>!aW=+g1CJKHgzGkIXg5T^f z|9zsGy`#|4%{p)}lf9@pZkW;!q|Guw3Fw*)fFD)SJV*bsAtfrHM}h2sC#Obg0QG#D z6QkZ~58h?$odg+Kf>4RQsEDe^KiG~+NYG6tU?LYFd!LmQswT5?zo=$EEzlV zQ6afqljUk-I!1#%+zWCH6o5dpHRr`(5|M4&AWKAp#Yuz^SMnS?%K;B54>nQF%sv`- zmF%M#hL(MFvp}%LXMY&GY;SuCIX?E3oq~Ho+Cv8013LIa&^NhC%FKxxRAwo`!)U1l zdZ456kG@??08&X%y{Eh@HDCTsox=8bcMp5oR;SP*W@*G{$sOlgo(} z*36DHLj9vVBR&vqN=4IBRog(Di_z{$R6B4$gJm$kkecrYCXmeIhlBvo@i~*V{g4=d zhCc^^rtscn7(_so+aw+63wV;xRk9oy1dPfpiYbCGhfE1_<&aS$$xn?^|8`Pefj9fq zr){FW1sF~A_7;c~+R6Q~7}kR=s4?0W0CEkHT^Eg(Alx)$C-;h08NiVNXy%ZnCO^A5 zrPxXQ@5Zi!$;Blrf^=>h(Yzd8-_+#Y;p{2i?elk#1!(Z2mpin$1Vs%8-^^yeOj^I7 z1DkzF4h=&8E`O2O4O}6Y6CTr{j6$>2U^OSn9z=T(8bv_yS}DvZqnmCOa!8xt+Q;S> zE=MIqsTVO89M% z2FUFlErnbY7Cco>OwEu(BzKB>U@bL;R>#-@*aK{Q7#n78i|i)Hgya=SBQVLs14})+01*{VyQT+2M=;?01;$ zoaQT}|HMM@-Sil@!HwE6%J}n8<2cM)Fu$3mB`pwn5@0CLDbtU9-!LyS;ugRoGx|Jc zig8ABvN2@D>2sLxJ>rjpcK<)kFQ|`9yE^sZh^qx&GhitFM!4rQ<*b{yP;)OEF22SY z_gvNyU&Hs3F8Mvp_bg5Pugo?k^xinmZD+)K<4UOEF8HwDF2@N<~QnZK9<_jAObhPfSPGt&Di7iqXD)dTJ5EVi&= zA`fp_Z)HN@6jY?6jq&(u*%O%u(?Pv!^j|dLhCmS-xJ%`nBLmGI}lW zdxdoozX3ET8gfYv8)qOhiALk6>EpR|49* zX-IS;e954FZW>9K>P24=Ezp16#7^LIFU%C+3R=_LN%M@j6TGt;czlL>{>D0JLy$)6 z7V0aaz1yX^qlU$bB=F}wtp+p?^pwZ=E~OjZkp+S7!&}TImMw-LOeT+Y7azi%4ny*4 z5?qoOm?!v8kh|`2^cB)*Tt%@#1V<}|S&e)XVYuBb4MqfNs_919n-(JzCrUaSW_W+Lxs9Hk#X-}eKYN`?1G=D+P@F04K7{u4Yr8cibdM`Fe z6L8)0u{qy$1s%J(>BoP^n$}H2q7&gu2JLI15zz|tq5dFR@E4h%=mwf~Lc4xq5t7!B z!6dK5c+|g?WlB6MjJttr24qAM;zDJe2KvlXcG4V$`wi44IR`aC4&4d!8pcaJWbCE* zMu_SqdQgAE1%E_opMsYK%3KDzzQqFM`kdASYaq)i@MYNdYyk2`Lzag?2U(El54krB zw2MP{2GYi3JUq?%LpxFo_7MFr~i83 zbR*`KCVT^R557TK2X`Ct-HZI^OCuPlA77t^%6vC@z*y@6gYxx9zOC)@ZTF~ayTa*Q z`P}f3j~y_Qv@4lSYl1n6{=gkt?Vl_}yPnx}4eoD{8&9GBB9DBC@mCy9tpm1BA)h7 z-Ix#dGd9r`{XPYJfc3XFlSNx5LQd7P4k8=%bqBA6gFZA@RI-lx3h0|VzJK+yw9;jjOP?l#)d+U_a!;S z%bB-k1>ZJ8CcF(?5@32^?BBq~i{Y$`7Rc=SmB^dGx@qHCf7IO630H0?Trw2y z1rr7{4CXx;y2VKG!7x;o48b9IxSz^K!caQpkB5vJ%>DtsKz;m9#DQ0&xdm{^5bqGK zFqD^%#u{KgcsmC)A@?7E{fP+&UvGvJ3?6~+!L3;5JSOp?`;ifR4#tuIPpn2=WIHU_xLb*0eZ&M>~xxdWDlk$?$Y=rL}VxR?PC8yX=Qi^TWhf@}De z-omZi3ty9a<12b!?uR=u9q{#fNA@7Tu@B&#(JB|HwS!%OuVU#gIQ9bgvb`(shOcA$ zu&;2BrYG-(Z|3{5avs8aV^wm1hjAMZ=Mmh_Bk_HD6pzLi>wR#mvLEi=#BjX)WBpiv zb`n|$2ID?X9FJ!)xMSnsi5Ry7@Lg{*dlg@wzs6J9DLw?>_73IPS@02jB)-Z|!{|;& z&t*V=K^D)34uetb2)@}J4QZT<`^vT_V8=}McZR~Tt71|B%0C#4wD!vWc4({gL`8|+abNPMze*OS7&+UMIfNIFJ zIeaI7m_GsuQ3DR1$F^eKoQ?ZdXE?(b*iS%n<8C&Jea-jah6}Vlu+jJ?`)TN{dluhi z@8!?&=lKhyYlSsH_ut>4wcr5%2Y*T41$q^?gkHz@SYz1lxIOeHZWF!5-^PW7cktyg zeRVtz!!j2;pWBn?N@_AwfLuc(S9=tneL1X`7p#_>yc2 zzO()n-(1su$dmkc(guL9ub~eBdxNF;2A|c=b=m?p) zljX7RSw1Te0irW>4|Wkj&@9jma}8-AJcd=~A5xD%2($=a!+uMo3ErKo~lg1JK8gM`$(Roz#l z`-pCh2#cYwfV3i9ES9%uMpy%V25X`1V7=HNHi}KS0ePvojPxc#`vK`pxJuoJypC=} zLT>_TN4Oc<5^h!667G;%6z+nSgzeCfa4&8--49I&4?+vVL%3hP6WR|Rf#!q9p!MJh zXgt_0_CU|UQ_ykn40Igqg${$~q1|8~G#l)PR)Yi3XYdmA7`y@<2CqSX!5h$Ba1eS6 z-iFSCccHJ~edsFq5PAwehK_fID}AxRV!zJA2)5r>}>)pBjRjccHkOXVb!Qm(Py7eo<}jte*82 z+S%@YrE3`)=}^hmazTP5_i%z^HgYUq@yfhK`EZ9cThG(ca=0_bH~q%DR{ zfu-zktPAGXc3)6H-@wJ%a%}~)5v+nff;G@cuofC%)ci&zO8!P4-Ji9dUUJq+DI&tk2{0d@ z?(;pt_CbHm3(#8gBJ>Ao&~I}9x)om1US?}?1N&+0gkQy;;BNMt_PX{4ZkQgFno8c$ z-o+i(_i>AL9rTnyYYDp!8cPo0mhTT(3GQMxb~)zzFm^4whF#6JGbh`|uELu4X6-O` z5H~?L&t2LPb_34R_OspC(fP2AxV3*NYhstNOQ6N)OSVQk%AP0vvMgQuoOH};UqOe; zH_)Z>9dxJs09`6SL5s>S(5CV$^r-v>4LiR>3(slo59m@k1Dz_ko~a96({2 zFD&<3P*W9`ot|yF8A-~GRc^d;9j2S^b~9C2oU9R$) zMr)SK2>@{FYn_c|y|D_PSZGg_&9Y|8OlE4FO3hHM%v4xsD(o^G&5fThDXyQMl4 zM22c$hP#1DUfHT465BWhGS1L0`j%rs+e5^jY)LCy9 zjZgO*-L_0zcD%!y+tO`7RACkGZkWU_E<01kBR$+*!Xxw`~-KuseaAOwoI(7t*IES&B&6 zu^lE>E&$KfFPK;DTp$~VIZk$$hPKr08LVjPfGI3Yu8Efaf(n$3RIE;k)+~NO+?~Sa`b%g zku~1~4Kr_Se4HXrl0rTy+gi}lCrDP+XS>}bOF=7bvsFbo3W01ltrf8B><$Hgr7Z?W zfhTQ~)4d8zcC-}G=(iR~rZl@RImJ3nlEZIWYx8}kl~tA3mp4>3Sf|adcP=dVD{4(N z%cZF9&2d25d6j89kj(^FMAgIutiDxdClB^<;jcsUiRoJv4CTLq-E+=EeKQ~g}6 zMDTUBG{;)j((Q5Cu?msc9Ba93kG0$*HBO~wsODuVbTbuNnW}l2vRObc(YL&%9@TQy zvJ7|2lD*13J3CH+j7#(?ZzCCH)v@u3sn*#NBfr_Lt&v2Ei%;;K-LAHH{OUoggv{`( zY+D8rGSOPq(r-XmVHcm{Q#FV_@5JZTCf=D6U&u*02uw`s~LbBhS zwsk=|Ci~BwU0+^aQ|+uNt8!VZW$#$4TL_FSnR+#vU{;x+NRgnbb|hG9%px@&MI1`Z zwg}Q>t-M8mrdn%TS_c8Dx+zPwGD~$=mg2%JSs~h{XdSQmD8b#ms{1o@EVZqJJWHXM z?S`guWho}fj_XkS*Fhee<5la~?}@5(qO1!7G{dj0PE6A$#Rhe@GiZatO~MblT}Gp6 z@d{5j9pc^ix#25()N;+Cq>jUs#lTnLAM2)ryB>vatb!k_>N8ilD5u(|`oR&e>cgf& z(pjx=97zg(vWibu@KaSd)g4y#q$)b6s&c6cf3=!&n46ebN4hGXZk9`Q)5qNWAYGMD z&-5v1XsmZuHM*8`Qa*%h=a##cn3!fLNal7c)?w~0;F=H;-4xDHn3x-vSckb`fvbAX zoSqR@lr*PrgjJ82a~#5ovgU$2)?qHR;VKH43vh&03$j$b=8`$qk*zq!Tv8*fD44Cv zo6ADPtMb{Ze752wbGaDn$WiUiQRUU*%#ovdAV-zYQRQ>Y@`-AsC8`mYs5n2-&FLvB ze@b>I$q8`|IoCr?h6-o24ac`jPmMRz^G2KbQ&ZZ8)6?6ARXS8}nE6#Y!e;-P8wqRMaX?P49~5(Tcp%Urr3tnhQV@pHph z^*dBQI~2Z&?tCgf(M<+ zJ;|z`RJWvdhgEx06<(>TT<&Rkg=ly<_B?c;UX@Q*<$qMUiufv}=frlN4B>WNI%qvlEy5nB^1I+?%N8+(b18Cc5Xo6qVmxFJ#k(;1KzFSfxB(#+j3GF0B zLQ=c*A}O9lnls_&D0t?`T)QBeNa6cJ-&K z_PZrvy28gDPBr1RNH&WxdMz!luN_of zVa2H+IgN`bdM;U6WBmf@?k96&L z6GZ7DnB*bcaCj!A9bC!7aHX_^D|r#F#1*c@6|S7^;7ZlkFSZX^qTm}j1pt%lQ@%pBZ;&05YFULb&%Jr!}L)dG9T3;^OuUUu8DC>|u zSqJGjl66QA)j=Lr2YJmpOdr)D^HCi#pIL|WnsvyGvJUc@^i4KrlUOCgV%4fAHbc?Z zT$jbino=09qHnUIZ?d9qvXlYXV43CO5*;O{ zwPkdAj8mjC$)eE3=37xUdjY~Y)iW_RSLQgJQJAMo>4DR1g|WHPL|9>Hu4EB5rE9FY zQbgFqI5svzWKJ^4d|qAS5>kt ze7stL$C{%wKF*Y`aFcw>8yay;(pX+*omW*uJN1TgS8Yuhm5)tObV!Iz_K`bDSM9t~ zAGv8HpURWrXXecu1l?LHPBtFp%~>fy)t?ZX?jtw29;F=}Dr;-!I!kL8qTUvmrc_T* zvq6GdCnm&Y_+zhHT3%hds5P@%wkN1Xc7mEx6V!GlL2WM*)Z#5cEz086Vm#h`(B*y= z;66Z7i|u&D?(u4Bj#rEKcs2FLtEo3WGsRCH9}s4)B>^7(K`v)Qxs}@KT4HT4VwMV#8##Hm$GoZ8>SsntxJB7K}9ZJg?YI7Q+(wYrE?`;IuZ z%1BTPi%u5u7=4oF>&EQoYDvLI8JBi?D^fo3~X$Bkgx-17Pw z7D?!{(0Oy`&6PKxNaGFZ^&@BmkBr4X5O*qSaLdIXZ$y{F!PhYzUa@Och2_@82rwwFK*)behu>( z%pql<@!t0!%quYaVfMo8fuZZTphJ|Dfw z*$~jKMMDz82aTE3CLxH0f$N#BQFBfL_) z;=KlVMI+88<9fjtBz@4u<>f7X!up5xgcWVIqOIm*MT@OyG4cREEBXR9T5o;Dx*zsl z1m$DhgAjTN_73Yk);r+dY`qTl71k!$Yt3Bnt$;yKTG5lRtF0BVOIlJ}d=z6XmUg~% zf^{@P8CKjDw31FUW{rgb6xi2U`&%QuvaF%j9tZ`>IDh!8(#I^PEXOhEzPEg7Ib!+P z@-F;uPzpVkmtgiu-!t&-lD>!Gd%$ux?5$|?4KnT~vgxs01G7c?HlmIb(zk|edMp>i zER?=F8KEr892r-J5|WaZi;%BS#!W#T+oW$C;&P-f4f!IaZwTTX(l-eCQlzgh+4NW< zOc%b87GF1n0%WQ$d^-8`GwxLVWQ*_T7T>qX@i~R`!|u3NSO3uT>u$k$l{`CPLw14!g+Q(dYSjSjx z|LE(@7=4w#)Sad`x_xJJ^%{4q7OWGKunmlzmfJ5Y4?%&`$+#_@d5G- zl`%slv_=`fNycoH{xQ;~8@q%#VB*dswXRym*GPM=w5Q2D)1<#d+6&3XT|!@!?I%_zbOux)CNWz57 z0E9G|GeyE&DPv-#Jy^zM%AA=L1I>qoPo}h`R#zS?{cn2{aN$&Ebh(X#%vgF#}35(*F=$t8>{8GX}YN8W+~~@q&uagQ*(>F zNqQr0joyd5pMS><&#&<1n++uD4};kXH^>>sD96on#xeg&V}%QX$Zs!5+I$ZKSq7eC z7$F>Y+XRD7T1M-}mtgjRbDn{_3+7>rtOt|5MtxOIvaq`hikO@^bus+G*JNvh3@)kBk+u z^vm&p6*1L&iL|##d$+Xjpq#8o`tO(i8tFd0|J#eqkn`ze$=z}k|P*R|7 zZzg(pqx~%WVDNpoQSLyTe2m}SK5~tpVV*JM{BAsMyei|)m|@R+=k^*5`JA!e*eiYe$@Y9aImpD?xRdw*{=1A9h<<2~411Pp^&7u> z_`flJ!uR!OdBDH!5pYH>x+9~4? zlTQeuaomlS484n(FaC8+Ca$eeOh_oZouHwm&Bi{-2Y__8+ z)-+k>FJtliyk|m_eNE%!M>qD6*hItc5QEVHE`x+MA5W^BeWbW^db-B5kjV$3*@F6H zyYU#M8SlXyG43#EUCpHI|E6Vr*lE0mx*s%Nlxde6j~MqL&nGaC7_U9aqA2__Fms(4<^%=CbImcsiS}P?aR}r0dD4Ds#_=g%lRQq4* z^5i$O3dwICa@AcisBjDD04f;w8MhhFP`q&z=2hcfRTASJGC|P+@*5myJZT(|Ik&>U z4TkbOVZ3dY_^Yj`)24pe?{~@Za|Z2l%L9^5N)G-NPHT+uGx|Z!AFXk2U)y=s_zDmY zK}S6vxQ8VrPMKkMiIzHP9i<-PJ>vmzDE{1W|F`bBxKVM$jTlA5e?J;~TFWE+r$MV> zhA(zn9x0VZ8CMxs8`rc%ws?%Uv2r>lN9KOxDK+}2hknJ3ZO*A!>q8!>IRWFExbY=Z zMj5xk-wZ>2^9rS$`@#G#DFcc5gL@S~TrBbX4D(>ix=^-Eog$etFUe3-hQK}VeCMV< zMm)(g_j>eag#X0f+n#(T>-oL4UgZA}<~%EhbGOb+!K^6Pn8ruO7m^=NyXn@hq_ti6 zKMWeX|HFbPMzXc_0XKgSjynnWH@Uh#E%85zI9l&~Y?U{tR)L`vLbUJ|lUL{({~5oUJ{rssAgVC&w9k&s9syEcYk+ z=q)psduB9_wn`e468HjLKBlZBsbM^>Vh)?`|IT*HxpUV*qqKFzn`1=IsqWR&tLKs> ze;rTfn+@9cr{rwniQCkUa64okq%ydLb~>h9SCWpfm$}sH!fcK4^*Q$ozqZ9q^4IeQ zR*Hc0FytoH`-h?AnhCAN)>?eZ19^R;aot~HO$pi-BZ8~eHyFQie7eK!%m24wAvgJ3E zqfB^iNE?i~N;u3wv;`b#fSeRA*aUaerAaUqXvx4Ej5CC|Ix z@gs=HA>DIBchB`WMZgN<|K@Sin|i@Gq+rGw-J0hH=&=V)d1~fsJ9kS+v_@{bLiy?3`;zvxwGSH~w~zTx z!p1wYlpjX=H?&uCKW883##NNw((aq#zsoG~uSS5o@2Rx=^h3gGLk|-c^4uiTlSH`ogc~x(C?AT-t*Gl_GwSz{jE$un0KHvG~{PUGNdzyQf z0NnPUJxAMEPk!~JKx;0XcY5w3ICQnpI{^)E2?ALAU-0Y=T?+K8uMyBr5GnQi^npg7 z{wxOicm_hJQW9iR3bfM%#P_;d61nXdd2-)Ux^beO&r|>4j_&ZXT`1TNu)aa0R=PU4>ub zx)E<`{)S&)yoKF{yGnPmyP#R&9%yv9AKHi>f?l4Tc(d~e^g57Mhh5OC@FX-yJPl0` ze}`73m)OhfHTF8*2fc~+G;ia*^}EnU^C2`J9D)vn!_bLv1aD|QXJ0_K&v9t``Wb==6C5ntYTFAN~RV5Sn|Sr$_w)KcU}K$uJ62)$;>4Jn#L4UHU%QtERhC%}4K3^W@h4G~L~4rpJA0y1UZ6VQz9u51RQ~yU%RtJhLM1 zHk01Ew_wxuI}6%%O=p?7pUmlTpO*7_db9i>?!|J&j$K%`^jp!qD9rZ<{p@}WqNgP^ zb+G3>c=!@?z$5e-+1n#wHh7eIy`ZnXXzW<;986OaboJAo52vdM+8TCMJlc-diCAZQ z(c0sEKJ;u#L?_bM1daW+=Tqryg4UkxIcV(x^!5U;gT99SC@=GTxkrM={@C+G8rv&g zFW4*A+g>#HHt+n}qZbYSo#(qedPR5Zdy=5b_j-LFT~5&E2RsLj9z>@f^ZXZDJ&0ca z)$NxFZQ=d%;%`IYbMLzap=kfqpwE4-eVnCSVM#C4u0B_?_P zY2v3oe`DfCXTC|Vv0}F2XWscm;uoIv7mEh!FLt}<-z0wP`S&`E4b)xi4?cfaBJ_j2 zKXJe3KPMiFdb1UedH#Fi@1CdV9@d-9nCf|Y;w9ZgU(pe)l(l%%^UTCd&$AM9b-yc1 zl%eN4R$3IZ9py&4KqtatHl)&b7u)SMr61UG6njs%#)0G^jAN#ykd%Y&H z#_P}vtiQcpH+W9#m${GKUN?HZ$-ad9SdmcYbw{E@FVN0Jr?nMfdizuQeOV!r?49hb z-)4Wazy*em5AURf#uK~$}_4Pb7d5F%Z16VK`ro-3g{Ngw(JO;31)-dCk7*`uMFRjbq_X^<7rZ=f9i$uK!+?yvXYb$qBl^UXr}T z^<0{~)H|0Y=^ZQhBcBg@IQFutB6MuLGI^!mtyd+l)d}@FeI`Gnlh+M8CjT_~(`Xdy zc(eCeN6$Y`{#=(wYcIV1W%8FkqpO$Kzt%M{Wi`g_dg8L0x=h}gywf|sOa3kzrq9>i zK66j<9{;^pKl-FzU-voBANABt>iKnlG*I8KKl%KhlR6&i|MigGtq&(3)?xJ#J$RGJ zN0X20Uinz^G4DL7Q}5`|4b1z0PyXE%>ImlbGrIWh8@hsdJv}+y*>nZ-N%q$@yqbK~ zci%|9;mou3Lmn2av9XsW%Y1Tva=!CaBrAPaS1|7^wYIBNPq5`asV|uK*Cf~IXjzl2 z(JOYn4#|D(2b=azU9v$pq4@i zSGGsApFUwJouW=pogRIHeLq8wPrbOJ;rei$=lOf7^P_`x;<~{5KS=$+XLR7w2la~7 z6`m)iCVIXyb!BvrPFz<-V|C-Y+Usjl*LZzx>RM;GPH(P5_=W4EPwK_>6R&Sb-Qe}4 z)FeJ2$&Lj-Q55@$A~ti7*TGK|#eSkF_7lBh4^a|(h?3Yt>>YcE-m!=19ear0v4_x~ zTTItG_7MBT9%7%5;2}O4M|K0nb{FzZ7kLchD|YQIlCif)#@-?sdy8c3Et0XfNXFix zckCyUv7gvC_7nT=(oakl1tw!}v3u+-`o`X(Z|p7l#@?cD>@E7n-eUMJyv2U8pD2#~ zL~-mVieo=f%ujS#JtG=q(So-)F!mM$Vs9}Z_7-DfZ!tFZ7JXuG(I@s6ePVCXClS0w zpTwBN7#1-2jDLxJM*l?c8U16Qu}ADP_K1B(uh?hwihV|}*k|;Lea28e<3#p1_>4Vc zpV2S&8U13P(J%HH{XVkK=o7k98cXmN{bO%&KE4a9C{p4~y-7QEc}|#diOY*zVitJ=u#T3f6yA+~;xNcGf=`TmK_s z>t7OE|J`HjpA?@C(`9u;a)f7bst)0!lKXky<^xKsWgE>3Z1V)46uo}JJD*H`(kFut z_@YSmv%Es^1f%qOJk0CQ>wP~k_6h^H^9m(BUZL9`d_DPfp9%h;DE0@vt(N;YXZ}v| zJKhhzVN^2shGgs&lCf799{Yo^gYS?0H+X`Q*b@}To*=~&T*Yn%Pq2UN3HrpIV07#Q zhFW)bt4`Y8*8f+m|ADdfAFzYn|9$fJzWaydA3TTsuJ;Pv9X$tIKP0yG17cgBifw(b z*w*h6+xk>&<@eC_@o}FIw*FJ1>c6r6!Pbvv>nD3Xg~cBlTl}Fc{-UIleXrQc7spnHTACJ~X!G{aEuBqsS(+p2I%h zd&Sm#Ky1xNv*w-p!UsFvJGSF}Vmto%*p7di9Y2#T4tD&Y*p43_+wo7wcKq|P9sfjZ z$3GF<@lV8d{4=o~|7>i>KNH*W&&GEApxBO&i|zOqVmm%Aw&P!j?f5~AN~lw~$0NDB zcr{A&zWjplxa7p}{KIE|_>(Prc>GhxF8JEy@tek<_SLU{W%E}aeg44kIQq?_|Kq9ap1N-G zt&?wk;*O&>A9d@OOOO2em(pMQ!WZ9s;*Rj{7f<}+;3w`lVp{j7rY*no-@kC^z=qHJpS*w#k{DRN>RDkC%95(l+TW|dNVYeLi!^4J#&wlRB z@ZD=meQVI?eiS})DHTW?WSS)>w@Ec_>&8c3$HG} zAbhj?ySEN{{=i%B`P{#L_UzAm@n5F>%YmQ1@z6Dge)3aCee&0z?0ZPnA(Ice^N>l0 zTyx0agEt*qdvMj*FOGS4%u8eLA9L{Nr$;|E`fK}~x%VcIH}|?`kEe#bHSnc@(+2L@ z{U}{g`i+1A?+*C+fV~I&ym;1tcZ+T*x~}L)ML#V1TG4?;L;E!KS=(oM?^k-2>iD=k z^)|`)x~{&eZgD)Gh~x2O9FM2$H~l)l5+d>4MB=T{;E!AA0Xo;Swr$I=AMyqv6y(n6%PwEe&bvmV97S+bOou=E9qK&$q-l7xf?Wx;!1N}|vH&L6e zrhkgsbu)b;>d>+Dxu}qOJvBopHY@eEgrt}3xhOH74?KqFI#vcA-YNFZ0Ph^`oiFLS z-n-D4>f^4qA}B88QYD3HslJ7}RH^RYL)7&zW*7Fu|NTUG`-$-O6W#46w%bo^x1T%v z_H*~!ezM&C#9RA`^o~*!I7-f56rBrqy7%C>FvTj0r`6w|aeNl0!Zet!Li;?t058JJ z@Cv*NGhsH&fw@oy^Q;9fFT4}YhXqgpm9WrnFEWp~7?!|NSPm;;6`Qsis-PM~;ZaRt zdE%O=pOyIi63-Rt6Vu^&cmZC7m*8c2-YbQ=#H;Wcybf=|Oqhj^v*B%+19M@aKKP6L zZ-spU*7>`kP?cybyq{<))FzsvVTqQ)D%#Oo&bVK4NMUAjBpk%+j&(c)#=%jASCU7= z$v$%mOenmQyrWQ;{0%IHcVQXS6zX}5qf*~1EKQvc*B6$jZm?2AhG)f55>ikCgJ3Z1 z0eiw;FcgNta8=t8Fr_dXcV^?xY}}cRJF{_THfk?K?S-hl5VaSg_CnOQ13jwljM6oQ z)u`ElnjNUwftnqt*@2oJDA|gVtti=wlC3D&iju7;){0VDlxjq&3@X(oItooFG#iCx zqt0y9nTR(~3GB5~Mup)T2&4>eQo7y?m)xp(}No znY_*jjP)%aMAkJb2CjgQs%SdEX>__!1wmqzEP+Mf#-#XPO)(YP8s zt-;e8JgvdgRd~7*PgmmUN<3YOrz@j{=BE~!-B}DvU@0tzl~7Yyn>d9eKW9g&>0Un% zFTjiN61?L5SK&2y9o~eQu+VoFIj$(INv!j_!LBilUN=Dt?dT{}<8uu@*CY=rtV@n{ zJOswUQH2#WVMX#}pE(646jtK(I=o(o*X!_l9bT`)>$P~j6t6RQox$ryylzbFAs>s} z_xgNP3-3c6v_KZxp#$>J30<%m3Wew0%CsVpC`?WyAqBml4-`Rh;gLj1VPm4NV?XE* zrQRP1gJ3rp0>fbh><#_LK#_j$5`e8jY-UR zjSIZ4D3m8E{m#O|V$xlaSZwS|e10js3(H_Ryk}f13J)b#`uwWG(}~rNRZtCU{9WU? z7S{Ppt>gQ!9yUPQ|2H~ra;$T#FT6l|suG#P0vfcE2CYmqLrdYkM5}A)D7>DG3Kg{I zF%>^`xx({ma#8XsKILk-2Cjwc3Tu+r7bYiv0yn@^b0{7T|i@>ckz z&)nwtEBLk7cleFpz@1+I-h2NAe}KE-Znziz2=^DJC;#L#e=c+;AE3Dp!b9*djef-c zA1yQ{AM^Stum1{@L5z?T8zjXB$?3lPs{g;?J9CU>E|ht%!v88^q1TIGscU%`mce`8 zUjb_hkFW}r$@RXU_PVa{cCsECAmhCzpJ|2`f44#wa?tL*4(IHIE+`acrc#CHQx_JV zOx?orziuVU@L*M93lOw;oY?9J@$Of=H{PBh$NGB(ZmcWJ#j*TOxRQ;z61Wg3f4^NI z1BD(`qeYP&erflfU)sc8wELx$UmE0B4)7}}zp~V?ykozo$gj-8`-OP_xN2JAcJO`?~Rv~p6mh?FfPVQ;Ex zB-!aVlY162$)SZQ?Dbr>d0z7N!n?`e`Q>}q=ZB($#MBWF+s4;zN`=+7qy1XOug&9K z*89a3erW?etnzD3er=Oqt2LI5#9VLW8S#KDk$6 zy{o8q6|Wg{HhHlB9bH&Jwl^dv@f<%DAKmVXep{$=WouBlB`KzJWz9O|KW(kcJP|+* z{#n~*C$A`Bjka+%h4j}iEOO>bXRK1ch*YE_^@qsbGEZAYF^{)hD3YitG#E?PSQ?F^ z(>Pj;quDsBjic5$nvA2#IO?3a$~fA@eKsI&4+CYlMd`IYF-Kh-b96@%myoxlSiMNBZvF^Lpt}+q>aay(^&+u) zkyyP*tRAYeBgN_?qkXKR7zz8rDA*qkfbnn)91F+6@$hYDK06v1P4xOoxC*X@NpKU~ z47b6r;Z70eZ{c@d-v#$VxHrH|j@k0ae0gs(=Dp3C_cq7YJDO*ntsIBu!vd&)N>~Vs z+(Eb)mcUY24(4s_%u*Dsb>4L(yB6MuI%olR97n@xwX%4{&+pXTG!G`x8^*G!A&w+E{Jor9L zfFHsYFcGdHSJ%RIUQdFX;4b628}5O7;Xb$@{!AtxfCu3rcmy7W$KdZU1)hOtVJbXF zE2fj_=ivo-5nh6qW%#d<;aA}`cpct^nNa3;-f<1{U;zY6Qt4a^VUg=x?7b!4TMF;O zGFT2PjDHn-um;kw2{L}G(f^vDS+3OL*da&i#X=4&Y)lS@A?8N*bli(w8)-I%teO?; zZBDGW8L{5xzv^-DC z^Rzr~?j)k&c^aOl;dvUKr{Q@To~Pk?8lI=&c^aOl;dvUKr{Q@To~MmLv)CeVl{70) zv+^`6PqVTK*%Hml(yT1a%F?Vn&C1iPJk83}tUS%i)2uwr%G0bo&C1iPJk83}s4R`j z(x@zr%F?JT?^r^k2GXWb-8hgo^`}jxqS!ob%G0JiZOYT8JZ;L;raW!R)22La%G0Ji zZOYT8JZ;L7<}7K>lIASw&6CnRDb178JSokS#@?hcPa5+iF;4>XBrZ?F@+2%z!t$gm zPrCA?D^I%eq$*FU@}w$HqVgmvSo%Ck%9Elz3ChQw`k_#Z_L^3am^_Kelaee6$&v!= zIG_vnlX&}MT<(j@eRs*_opJa74QKN`oXz8G9%u9a1J34gHjlG;oXz8G9%rpxz|C&X zj>g$yoGtkuayHnhJkI8EHosHO{%>$KaI~A7{n&$|op3XcoB0oLvv1WX=ywhMuA$d8^ty&# z*U;-4dR?PF@Mv@{O!WFnxC*WYQ4`&+q1!cdyM}Jp(Cr$!T|>8P=yna=u8AI2*?0sV zgK(GZ6YwPb6((DiZp{S`-j@gO%Y*mj!Ta*yeR=TyJb38VQpAH7@!&-~co7d?#Dn){ zGirG7B|P{N9()N8zJv!~5@n$sIv@|7&;^^JP*}pwl(92q>`WOuQ^wAeu`^}tOc@Wp zfSoBLjb)^`WOuQ^teO=fN}VO&O^y zBb8;OvW!%g@!-MU1P|VuWDaL@2Fs|cWYkqM>Z-)4a2lKrXTVu-w(p$-=fZjLeV710 zgezboTm#p_bubBj>U%di-t73Fa0~nlegU_M&wmBC!*AeD_$~Y%{#>Zx^=o+j8eYGK z*RSFAYk2({UcZLdui^D;c>Nk)zlPUu;Psn${U%<&iPvx9^_xVuO}u^suiwDyH}Lum zynX|(-ymaNCu3eGV_qj?UMFK-ClXjf!^&t_84WAzi3Dmy0u3U81{znESc0ZY;ayk; z%i%rO+?^?}XKUxml-J9Y*UOaGv%7O;%Ijsy>qXc1$duR1l-J9Y&C5dC|2H~ra;$T# zmw#nM99!dh{zl&eS;RD1#A`jayN2zqVY}CgBKjxyFXY(pP=k6@Hc`ixt3T1)qs=v* z?0cuc8Qwb+E`kZ7f=eAQhb!R6FtM;$^iU<^u99(A$+)Xz+;Rw+2w7 z-~0c6!5`o*xEt>AnR^}o2=~in{^aw2F1*LL3{5`by+`G4PdWY-Cc_kX7N){;sgoR!&0{3H!UK&I%4KnU38Fv-`R3?gPV%5q-F*Tx?8c|G*OuI^^ zT_u{S5zW+yW@N)kzzH+sEG*5-KMtpjVS&-l} z#FBEa_md-0?&wgDi28`WOGKSxM4jX4@DU>M@zH)ht&^c_G|sSPcO8W{dNSSobE@y(t>)e`Dmc2Ra_)IM(rCI0QZk zpMp=r;V=%q07t-)a5Q`cz6#@=>lio|j)UXj1n+;t%JmZ+PlA7ili?Kj7JM5{h11}4 zI1|o-v*8?`;9NM*>+izPO4F3U_z@=~*Tn;~miLT*FxC*X@NpKU~ z47b6rVOwt5#5*-bcl+KwaIe?*IsOsuhd;ps@XtM0OVm9Bvid_aAgp4~aidaSS zQ%%t;@G8uN*)Rv@LK)0+H%mFphXqgpl@RVtTx2EvVpsx8VL7aXaKFuJsDf%(12v?0 zt@Eu@KdFWHK_3EMF~cinc*P8_nBf&Oykdq|%?*@EQ0ld=3tS&%@y`4vv5$;mhz9_$rKtW1zo|CSq|PT2XB^xHz)3c z`{Co~;Olwgoy|u^ym6K{&ho}t-Z;w}XL;kS`N+t8WMn=vG9MY4kBoTZ3~$`X8#k(7 z=hUxrymBM2+|rYur+MW~ymBM2+`=oj@X9T`atp8A!Yenjg6#?2YIx;FUb&4|ZsV2P zc;!Z3xs6wDVb+IO%xk-M%KG6j3KxUKI znG;pRgiiTz0+Nt|0Z)MQ<5Fx)th+rCSJXXwa@VAIUYU7qvv?^ z9BX_2jl6h{7titHIbJ-+i|2Up950^Z#T$9?950^Z#T$9>EDxUL!5ew*9M7HO zxpO>sj_1zt+Bsf3$Fnr@+KuYwId$`#x_M6BJjZ+Ik|J;3JI8zHc<&tVo#VZ8ymyZG zZcM)F_y){z-E*PLdlmk!1oP88cq0#<<-xN&c$Npx@!&Zgypad5S2NG?;*C4hA~N1< zf@b(&U83E49X{U)T~M%sAjJ+1lMn1zYyRJ;F@LbWoZxL$H{?xbQ9->y-jtU&<>gIz zc~f5Al$ST<)HAF=Hzfn=&?L!syq8%ce4@5Lu=cF5Z>cfp@oI85vr0e4Q z9zITWc#O)z7!gQX1dqvz-b;h%>$=-;57cezynX`fv5Ap(|O?OJn(cLxEPP8;qf#)o`%QM z@OT;?PvdRNdD~D$ZDGM%Snw7WyoCjCVZmE)b0v$sM1HhHezYXGpjxNk$;kHye)2v&XbxX5u z(^3sz-zz+qIv=htOi$f_#!u4388mSQO`Jg!XVAnMG;sz^oIw+3(8L)uaRyDC zp@Q*86^uW+_osMkWy0*5`GJ1s2l|*F=x2VQpZS4)<_G$zE~IE~5zQ^4xkWU$h~^gI zY)W+@rMi$(T}Y`eq*NDDstYOcQ>*x?Rs7T{ergpz+07Z+p#ws{u1?T-PW;p=ero+E z^8y>hPHV+Z8^lf<#7-N;P9Jw(pibPhLEN-K+_XX5v_agoK}DgL4CG)L$QTuc{aBq7 z*pY+9F&||KK3#41fq&4uf1XQNXT&njkQr54>DOCbz8^_Vsmb?` zGwHGZJ_N?WQQkkA#GdT)r@#b~HqlC*E8}dchELsAa}P74TWap1&VD~X9O~p2UIWxCzMAj( zo%3N9Z&l=%^QlW+%Vlr{nB`6BXyu!^sDGGgwc0R@Vv|)cn|yE6hd(Vl_G#yx2XR@#}S=gB@>`WGRJ!>|X1)Ixy&1JdfvRrdnt(mOWOcrWcY*kJxyk`sz#?ate z*SgzRCc~mMvM7x#N+XNX$f7i|D2*&iBa70=qBOE7jVww%i&D>mL_IT%5epKrAQ1}^ zx#|X2opIF}SDkUy8CRWg)wQm=)>YTK>RMM_>#A#Abt?&PB-s(Ej?6MeBswC|kt?rt z<+UWbkwiBdK}HRu-kQpUPEJWkK?w|k!LSGH346g%7zV@TeFXq%0;*=VhQgyE_RBVgD3$>C29e{%Sf!=D`fD%&%m=V6{bPAq%^pa z23OMHN*Y{A!#|OfP+Mvv-)-c(jeNI}@3yT{G6CI^QNJD;&!j%2&92PqYP4;SKCyLH zXNuJZPs20tEKG%IFwaWQa+nVbpaLpkkvL{CEP5q1X8^iw1|4 z$EB{O)YVkEnkrXQI#*NaYARh#rK_oQHI=TW z($!>KO_i&uay3=1rpnb+xtg#xq|()_b2X)G=-Sj@;;ZPeH%Y>5hC4Y#9=+A~daLjC zR^RKbzSmoQuebVMZ}q+2@}u6acz;*CzqQh-=vVb3QD93aEsIeshs-8;fBHEQRH;62f}uj^M*pu}8u|{PkGJ zLtq>nr2=|1oa{5Fz=Xnlqu;-W7mL`F9H~i@nlw9-XGikvNS+Le}+?*n>4%Vc)&xcpbXr&?Sd1IdsXTMBu5bS;gH&LYsS5 zZRN}jxcf&v>qkCgA2Dxn;s`VK z!tcH3PLdD)=fUXfsZ*oTXfiDI-DnTA?oa#srzWtf7t_N_qPl@Mf_`Ft$S0vrp!769N3)vt>`y+RuxRY zynO4gcAq`pbM|+gy}?~s53w)($Vz+iN~_53Cm$E`=9h>MFXf>x1C>pZ)kw0cTxC^{ zWL;;C*`tNcej(52FXQu<@%hX6{6(pYy%!?BOY!(JxB@1^m2B-*#&)&iHICQ%{3P++ z$d63XNygSazP7lE(M{du{|$9J{9?xks2j$gvHmCUX%d+YEAoCzhVO~_)@83e>okkV`zs z&YjA34(z#t&Yml13sm*%ZTQ!Ox(oe!yI=42oge(=Q79MgUwN4apEx?l~iV+B-CSc6uQ(qg=|^tCx$wLGZ9FNbkA`Q@Oy-=iouZDTqO^K}6x%ihl{7T-LTb+5mGykK9rL^a?-x&y_Q6* zMe~JdoRl7R)r?xtEc)hKWThOhY8P#0t|UHKTTZY=x0_ z^~i3k(QP)mjq&L2AuXpm(`jOv?~>c^k@@rCIu_u1{QrsL4OZ@!I%B1?<(zGaZ`Yy8 zCf{7;n`?SxZk7lqD1|Sgy4AhN*&T)mxURne zr}8qHRvfWT8m^NyPBNb06Yuwako<>Se^@JhChL0^oChIazt++GIx2PQH1IT1%oC+9 zE}vXTnQ?orn`esvWvV#s2D6q zKBnZKUB!de7KSS+iTU%UT($dG8+yEMSeF)lF|69&JO0J6&f;bDKb^S!dRRFe?ig!8 zhxV8T4QSQK8Z<#Oom8z#WaAts)5F`&_^S3o53{|orMPk{Z?ovcI-*&yj=#hEdsvYB zjU=ow@1|QTiS3Bvl^gUS-^=(`nMdhLj)tSfb={O-;Vi42VYxHZI72=@!-LV`&b9E8D39**GHdW8QNKfcC*QytV3rHeb%ARDqN|@l`gdD zrISE0y0oB09xZCgL=`&Z(IJlxS#$_<@HMznO}h~!b8K0g z%5n#LR%W!7B%p-^%rokF=HIH#zg3%mt4=I)r__qV6jXSERLn{=u+SOrH-?(qR>^2$ z-)c}L-1qSsK4x?Xh*01$6zDMezmnAzDDW@}RHDEOcv_AMmH0XzUl-u(Q~3G}IX)0& z9>m+lR$jczwk=`X){&Gdw(aFqU-qhBxF=2=FaS!~p;LLxGt{uov;yNSI1euH_l544 zxWt|8mlob86K|7=x5>oYWa4>tZ4tS6o?Tmn%5S1_H7dWEx`n-XolTwL-2dQt--58y z(*La%XHlk0Wzw4dSd+7{CI|W0qQzn;qu*->EgpfU^L+DVlJ-7HYxk{sbaih92f zr9E7qrz4_Ik=3wT_F%GlfO+t&`f-+AE+>=qWO4d zbCZj;*yU%pn#{71)3o=lIcG+Ov#3P~Nr(>owcd;^?owYr-D%bhD+Z%N_Q}Cc| z#@*#ib@8}^Pk7X4<>(>G)srynytZY&YqGhir>$F@r`i|py>V|Yj)c_=?KqIbfgBF3 z#)0)XP=f<2aUiT^%izEY99WJ63&d&_VzqaSIb7ZAII@;!e#^N3!4BqF@)l!%4~N=} zf0HX+>?)VK%4M#yjjVLI!nSzjxV~;QJKWRSCUR*^om!Z|qrb?bH;Dz_;L+c}sh%8z zc5YvP?#W(x{8>Ey3?6?LZq2}{YTDc^LTSRWG>)a&(bvo*T6Ks5HL~{)-jUiGmGjl} zVF6S?B`gxNE`}u#dLA!_l_G{!WOcjQG*sxmgLKEcN5dMg4ao^2S?i0)R~z|iBVTRg zE6%%J?efS@W(9k6K?N6ZogC}+AutY(^xjcy)X{LV@0|i?cu!nr&au;c zW2gDXPV8^WM_92oMRt~b3wHabwB<+ zBMT)K7XK2PLIM`{4IHVm?!C; zTRKSWvE%&Ga=NjcZe&m}!yDJpfjTip$hqpteaN-mjb{ZajJU#xD~!0ph%1b^!iX!3 zxWb4ljJU#xD~$L>BYx3nryA{4qupe*o5;~7ahio|)3ElDhciE`GU-U+&_UyV#d5o}-Ij?uxF4NpKU~47b6r z;ZFE1h`IUYE`GTSMczP>H&Ema6nO(h-awHz%$a4)nPttHWzCso&6#D*nPttHWh3il z&6#D*nPsE7PzIrDUk>wO0aSn<547SL)O!Z?o<6sWn7HF*x~0j`Lw zb&<6$vep$1H$OQ7x@*N{WT>62bkdYeEHB+Psm-5?>>?XosbnVcxk4FRSpf3NNehvdT#23A9HE;*y!WVB5*qzW&~@Ue`Ycm*HJ@UaXZ%kXd}9?nFGDwL?g zzbaZX3nfAwcnQ0)gxy%eZd9U3yQ)(gD_E1d)_XVj+$6_aRHuTBZmHJ?9=zvjLd>!= z9)w;xF%Nd6IorC8<{P%s{Bj)bo+;l)^?oGm3!`9vH~_}OF>ov#2gk!ixDu{{t6>t{ z1UJKN@N2jeeha^YyWn1!Qg|4T9>$}G@#tYZdKix$rk}O+vzC6=($8A@SxY}_>1Qqd ztfil|^s|fJe`84lks#io=(Qo$#^;$KOd)`kJHb`>F4A0^Ktt5IQ?8lH(S~G zR`$J>eGgrx{z^BS@pC$UPDiz;6WPLyM2`LqbVtu%7@}Ubr{hRRw7}bk@%CZ7eVC4} z!{5j8_i;M9j*hOQqwDZ^G96tJ=h4|(wd_@7bq%Cp6Ucf{w*hrS_l{Q7Z9v^t)NMfBR@7}p z-B#3XK;7XJW$AfJdPZer)d)PL%rHyUT;R|%% zVq4nSmNvFUA5Itw!(ccsI|8QIhx2K82A+kfFb(FhqdSkBno(mJ8C*sNmyy9`WN;Z7 zT(*nYqlp&l1tNBMI56y|DM$U|7+YNe)k z>-@D?y>Ga+SR)`rfl~@IjA4c`%rJ%-#xTPeX3)7joy*g?Je|waxjdcA)44pI%hS0$ zoy*g?Je>>k<~#4Tw@A#j7?!|NSPm--Q|VWZZq?DPU?;n*u7JV(ZJWIS**^fKEL2fu36+pn|A8+9I6<6dSs z`WkPrls8z)8!W}ycXm=K?&z@y9X(OxQoLTnLo6lVo2(Ms^-8BKSXj-u-8QWIii4bf2j4!<`pqr5OsJc6;a!(I z_qx;ux}wM6FYp9B34ettqJXF28F&_^!ZettBV@TqU_Q7H83oEvAo$T0s4yA7C*${I z{GN>8lks~pZEY0+w2A;)MF6cLfYu(L+l0THNq6W`*d5h1tIxKm&$i-yygpPEFcS7> zzYc=2ULOME;3(eVXxO$+v<&~lylVy(!_0kHIn_+^o5{iUK0BSd4n?o`{!bilD7?V( z*GFGL(LB5M(e8E`Zccs#OflPMKWmhF3#Hydskcz-EtJ}MthC7g7Q+%)3d><-;Vl$t zrvdFWpq=!$lm2#8*)n6CZV~Ui z7?!|NSPm--FQQxv84A>DU?CeslTE1ge)rvPan3ah#b%+{EEJoCVzW@}MHG7x#kS;J z3&>8kC+Av1b~<>3d{6E*C#KG&(LUm(k+3g}g8ktD2oe2w$7A4FI1Y}7i6H(E9n?lw z!z8!~Zid_7*Kj9TgCaVp6&=)y4r^_8Z}p==4#Yjjhd@b zb2VzNM$Ofzxf(TBqvmSVT#cH4N6n{D^C{GP3N@cX&8JZEK9sxS+qIyX|1Hq!ID4DimwsV^~`Bmv)S8Ba%6U{w^_MiW{^WZZMC@jUJkc* z^NUtHe<~6BQpuqchex0H>BD{cM00r~%;lZnTc`Wh;bznOk&r>=-1cKpYOIheHrLiq z+<8Fi2EBuBaV@Vq`%J639{iYobq-ycLy|h!=YK@!!mjTS2y+x`aB(FruEfQaxVRD* z?TrJg)Gt><6;#6-SZ7|N7TyQlkRsN^-8#)tJ6PxKZk^_+6S`nC6j&SUNfXwSCafoQ zr*pkKo$KA{T%RbGE0xf%zK;E%Ka_fZAXsyn*bRn&dj=Bj8E~g_y*r)j6Qke&7!9E> zz=3T4LB2Z{4u(VElW?~Gp9AN@dGLLh06zpPA>3hHZ(gt7yk5PP0QHGUaFg%d=9+&6 zx5IDXPWUbS9&|W%7f!}qI2m{0WZZ>QZ)Lz{D+4xL8L&CA4D8+R&YWOnL%h*_N5w(r z{&u{pVkIeFxh38(7ucNC1J_-v_3m1&PyP~q4R?Y&l#_pQbjPtfYMPTeExV(p-rb`0 z?iQ_gXK2RVG#Pi()F(TkO9qlOUt_&L4QLj}REcA%#4%N*Z6$luL<2ffm%$Y<5!@3< z1JbhGDl)xN3=?AX_f^93Vech#6iG-y2@C?=ImGF9N`bv#C=3G~TS#CT2@Da!ED|`2 z1kPiJ=CMQb*r9ps&^&f%9=j6O|AZCZ)g-W*1Xh#4Y7$sY0;_lC@&AVsm?41~5||-@ z84{Qwff*7Q?zLb4fqU&UBrrn)GbAuW0y88qLjp4-Fhc?}Brrn)GbAuW0-H!+*G})X zKimJ$fpg(J_&&G`g#>0uV1@){NMMEpW=LR$1ZLuU+i&BEeg)PQlE4-c*g^tZNMK8k z1a{vuzQFY__MIhu-|Pwr>>`0(B(RGFwvfOO{-*Fhc?}Brrn)GbAuW0$WI6h6HA|lfVoK%#grLd~b5NCpoN?=!7njldeBK z64*ilt4Uxr39Kf8t9m4`lLU5>z)lj_Ndh;Kz)d8ungp&Ufz?3*qd$03qm zR*}9{q;D1JTSfX-k-k-=Zx!iVMfw(#zQu7YagILN=fV_cc^aO9XJIN#gKp{DK>F5_ zzO|%pE$LfJ`qq-ZwL7(cR;tS=@p(|qNI@!5S zcCM3@gx#a&K!)=%wDk!9$-CDTpn zf?$89h%MW`k6I^N)=84K>!W6cNs2cN8IAj8Nm805rAgBJB&nG#`{1hmOiz}R>B-B& z3fl@2l_pW?;8~*qxF7m}e7JLZ_d4`ddR<(V)VJT|~h@3h^P8}kr4v|xb$f<)2eQ2IvRIp`5{ZP?Bv9qr*v$^fvk$(H%dj8{n zwEyMbj92k@|7J{sp7HK5&biUvtoN?wmq+{G7}Pk>k=#Y(E+Tgkxr@l1&NiLVr{QoI z2Va0Az z2=~LE-~o8p`;Wk5@E3Rjo`k=`l)?jS(gSSL18mX*Y|;a4(gS$?ad%tz2PuA2Wd5ee z{7sShng@6^dVb@ER3 z)(VU1S{NopZUEhMRhB!z6bh7{G1q8d_ELyBrh zQ4NV{5sP)m20CN|9kPKA*+55>g?8wGJaj@AY=(lhwF&W75>n6$`altM_w)_-?r-1I zcfD9_y;y9$SZuvmY`s`)y;y9$SZuvmY`s`)y;y9$SZqD&ZtBSfKHSsyZ2vz8&V}>f z`!E512v@*FxJJx$Em+l_m;|A3uenXJSeIC=ODxtU7V8p=b&18g#9|%1I){EEdYX}`)cS4sr z?-aS+x{{ET?&NMIGW{OUIfnn7$7YD!$#ht?8rJ6YmeD53wwX@8wtL+`knOdxzkOU3 zw^|gpS`@ch6t`Lww^|gpS`@ch6t`Lww^|gpS`@ch6!*3$?rqwWmqWZ3oeR63OWe8K zE)>BnGN-s0mcUY24lBXh0v52D1#D&kn_0kSvfMLuKs_J*@itRLS$Djva1)_)r;)vMRxW7!_2mx zEdR62wuvm)i}>nAeDyt&a?8S=~OneVe?7JGw%4`?`qmbrIp~ByU+PdDh^O->lpsE4RqXEjGw4 zHl(igneOcNb&|O*&Tjk0Qf4Ma)O9jH7w-Gm%y(_(yTToLVTIm1Y<;skhr=x%+wH#g zjdyo=B)k7Q;fWKTIR4?|&))VpF1zIs{`bMhad)2Z#81{d)&Bx&tsp*N4zuQt{om{ z_xv?{#PH$o4F6sH_)h$M=w4sg{pQ{OefXgx{BLKE-TMyt+mI`Ue5dCza!B{1cu4W! z+QBn+tKV(VpzM(1L2nP5Jn)@?&kiXrtty@FF|l-F|5g3(={Kw2o!dQ5>v!kweLwi< z`&Qq#cJCWs**kq7@B5>^Uo5He{G*bm;z!T1cV+Lt_5NG0+j@Ps*WtbTr)sx7NXALz zLzd#6@)E~E9=+UG-hF5JD7|v_x8wHUct6!)@qViNs2Luiz87}f-ak6pTJ!^=u-Eq3 zcqi3E;=Q&%6@|UFKNs({eVDzrFSIHt?5}-H6!zCXHr`+R8+uG%9ep#JW|}{QLl=3M!h=T8TA^K&ZW`yRxvM+er_G}`_V6Cz;*WS4*O;QUKX5<{wr#?NA@4= zdfGpFDBkJxiFl{ezr{P9{yi}&F)Df{aX?~h^lZGZ=?jTN-Fx`5eND$juf{u?z7_9i zI@6A($49f{y-erZ%k*2(!gv?c#qlnt%k5%%Ui4nP=XF)Q=XG_w=XFiI=k?ln&+B#e zy#86VKHjZVRnOkmIs@9#*wy;cMA%b3c%NVw z{+Ue()+6jW(S6@?sQZQ;JAwu2wjS@Z9--==bDzP7KRNm%fAR-A{p8oToD=m2XOt1Uxo2-415iah2!9OIKf?0-+*tz ziEt8}0ynxV{C0O_{K0welGol1_rSeyAKVY+zCRy&sN#OPy~GQBlMm<=6uJdH1P{Yw z@G86k>mlP_@>AW}ds=iv>TGwRd{>41dn)AT!-VKi74y%km>+EhYOwhg`yM-nJ&$Kb zUrf!mzUl2~ub7KF@@Hqf(Q8OFtM`cLq(yXsnjl&eowSHfT0|!;qLUWUNsH*DS#;7Y zN6tmNT17Y7|H9qG2RiC{C`Zo8k#ln7oE$kPN6yKSbJ5{24!!_KfUcWzoGN6yKSb8_UI962XP&dHH;a^##GIdpx^$&qt%poRcHx(%8_$& zfFU|Q5*T4?94)?U6ZLfm;jmYwCuH7eC%RiRFn^kjf&YO~B>v&>+#%wV(3V6)6% zv&>+#JUS={JKqk-6p?olV7)~{)YQ?Tjbd}d3H{oos(zh zlSc1||ZCC|>uNW!YeO)`?O>T#1iyIoe&CC|>uvqQJeZ7Xcas60EYg6!@|bG*M# zmWiAK<*!!c&xo)gQy%+ggrccmfRYv0|a;Rb8CLPrL<$_KvrQNFdOZ*`HHu+DvT z&%MbZw`^wxd$EGOSixSbU@ulM+!Vy~jJKSG+y}Pn*5To`~99gB( z_c@mkjxg6*+Mc~(729dW=Lj+WM)WahGb?)W(MuI^hJ;Xs;u0h_Wv8uJsxK> zIGe%Q7JS*#1EJNm?!5Ow;BuR5p5>a`T=P=bd;l(Q>59@p)^pAjqW(pxuqNXMYjnbT zi@@a_zxh$Vb(r6(N*suTcfs9o58Mm)!Tk_q#VTbK$)ZRWMY1SjM=5o6_69{-P^1M# zT2Q0~MOt+EP3iKR(&aa$%Wq1T-&CSP`M+C2TN6v1H{Q?OG2YAE@jcbwtn=pR!5wtT zj1LO7pkNCMwxFQ(1o4{u_l?_XRI3wji0{f>m-+|2c?$v^c8f=JO!QS(UfaW)^{7_s z?DgU7AL%R?#%HnXj2Nhwcw$fXt{|QmFP<1Lo)|Bl7%!d}FP<1Lo)|Bl7%!d}FP<1L zo)|Bl7%!d}FP<3BPL9XNqs0^B#S`Pj6XV4b<7v{@Xwuhc(${Fx*J#q$Xwuij6Q2`L z93YZPi(AIC2uIN8)5R^L#4WptTaFaB94T)3CJS*g9-b*~8O=(Z zAZ{5gZaIOzx1?sU99wzn`?I4@i(@_|n+VeSf5X?l&Y&L~YiY02#2Blmd+sWxPx|t+ zUYD?9H&}grm`Ji1$BS{i7{`loycoxeal9DEi*dXd$HOc}F^(7GcrlI_F4KmDFhZ*ZIV;yd+ z!;N*gu?{!Z;l?`LSce&Ff+P+z*4;^3Dd`$!tiz0Tn6VBs)?vmv%vgsR>o8*-W~^gL z)0aq7%6LZ@?+D{P(0C8QwJ#fUFJm5U%=(Zxc1OS^B&Ya8V?QczB_4af9v*J(?c{e3 z@H_iBcS%gkORPmfCFdLQq4R|9r`_inhlZtSSc-!qG2f- z4kRP3b@kDZXrZaqzjD7UASwnUjMeU?xlrjJJ5m2ZQ1j==~uCT&v5PQF4HS*Lrrd%5R zed{NqXaXNSRvfb%4V*v&C(ytNG;jh9oInF7(7*{aaDov}aOMd#aDq`!FzN|3aDrc& zKm)%|Mkk=a1R6Mj22P-X7t_FtY2d{)@M0QxG3s2b64N*FZTJp|d=n%maXOpu55XhwC_Dy#hbiz3JPT9d zIh>oWuJAm(058Hz@NzUN@d~^Oufgl^Cd`CcEXHhj+waYBoD1c~K0i`nu`gYv^DcDW zMLxTP4lIRtVVQhyIU2iPowfNy@+$R5~}@g{GD+u&DlM>I-2 zF)I0cum20gILW)L=)0B$-HMa#-Yc*M zr$*<}`5Snh<5<9C+an@)^|G1iJ5=oq>cjRjp|R8!hjQ`%Ki+Er89qr+hwd;yMt zBjITH3Van#fN#Kwa1#70oD4dAsGPK`oV2T)w5y!7tDLl}oV2T)w5y!7n}=#P57n%K z(yoHiu7c98g3_*n(yoHiu7c98g3_*n(yoHiu7c98g3_*n(yoHiu7c7YnOTp_tgD2y ztAwGHM{YhwzBx|#+iJh zOkOo{tF7LZRS$Pz4D_iF_rW{{Z9mWplP3xHmM)KfV@qGlkUM|)+aKkdTRhmSWMCP- z&i8wv=V90*Hsto9`&q~xLkGpsZ7|#|DqG;WC&0yUiFvgf3QzFj>t!k3^_I7s?R{rk zKr&L!Xm?sO^P!*ILbIm&sX1G?$2{Cs6z;C9cZRT@Vq>&rBr|!W(|mKMT@ZV&YG!2b6p&F1RCtJcj8XJ6*_NhRQcVg^1D&xccaShMwQ=-diEYYdyk&I zN6+4)XYbLo96ig?vm8Ck(X&vwX*4h0WnQ|=ymXg&>8_{+vd|74kcUp_g3VBfE0kS5 zF~n{-P=bzKbg)AuqeCU5LnWg_C8GmZ+Ua12N=AoDMu$p9he}3=N=ApZ4P7|agPLs_M~BK_wfWwzROoMZnhKCrU*>$bbQTPHW+#BS zYBtR(KUG6^=Wv`|gtPXYfD#x4gJBQY6ZV3kFbsyfdvyft!$XaPeZe|&D{$(qz^PY< zueSoH-U^(0D{$(qz^Nw%-S@6pM{Xrfy_GoiR^rr0){$F@Q*R|sy_GoiR^rrKiBoSS zPQ8^l_0e5$FFeefJOYn_?#nEGGmGEM;y3GP*QC~5kNcIlUy1vbxL=9;mAGGt`<1v~ ziTjnfUy1vbxL=9;l~yH`TVYdfg-y8?Hsw~>lv`m_ZiUT!x&Iui66RZ#FyE?#`Bo*A zCkDbG*bRoja2Nr5!#*$y4uH|nz2|0=RSEO0N|Lu1-OIW&y@Pm(&xtMfuq)Vqw+CmrRXXK~b3yk8t8~h((kZt}r`#%?a;tR8)h)`c z(kZt}r#zu!gI&R@tkjvGxY_YP!OVWbUX6)gz-@YQ{R-@%qDEh#Mqi;uU!g`{q1#`R zI(?@)eWyBor#gM7I(?@)eWxA4YVFTiYk$t##6$21JPMD&-(dyyLp&fiB;%{o`$|tSF~ZP3lff>P}7SPEBg|O=|WPi4{5zuH@xb>7=^au?nhT zjlb0a6QOI-y26`w^U5aPhxM=l(*D2Eag$@6V?ADEXk#m_?67l|dn(lW>(%+|)%Zid zsL(O*RrUOO+PH`|E>gd*Po4=EfsT>t_Vrd9)mv>;PfIJ4S6S7eXR%$jy7$ez-aNoh z!0OolX0Ochf_os6^3#+%f_n3E zeR!Lq|BtzMfor?G{>ML;kU)Sy5|R)g+(Hr{Kp+9aoj~c0-mJZ7ZL71|YOC{tms+h_ zZ_HNRrf%N9)6F@z`Q2u<>b7s^+}GPSty^zWYikF#SX+@P(2Awu|31(2`6MCG-Cn=n z>;HS{DYQ9x?&p2ZbDr~@2S}3$4Tx7Gkae+7PR8%4_;&-{7le0)vgj>?PK(VngI5)y zG2el`OgE1P=wMY%`R}nX=6wb_&S%8qP&t2kN~6 zVwv@T4qri%DQhde-A8wgWJsJD5@*J)E)~*N18Ji-uD-;oqa2nLi8+K7L3uBbgBSRS zsC793bTjhAzmBM_H(-M{L4W^0n<*G`@ULX`B~M0@yn>yIJdZI?MGw!Il~=S1R#<2b zob%*@@<92ZLXZ>G4w?p<4w?a)3Az?^9q4+{deAMP+d#L2wt(&heHR{$`#}%j_lH1_ zg8tDh*Hq`{eG;G13>%zK>Phb`~5)s9-w^>(7p#~-vhMo0owNf?R$XsJwW>&pnVU}z6WUE zgY|V3cK+u;`~5)s{XqNuK>Phb`~C1VP`+q-HM-o7!?33g!=5?}d+IRk zsl(6)^lJTnXoLOG29(Eh5N|vlgKYLgHV;E9^gt_o4z2Jxw8H1m3ZFwOd=9NZuiH<| z*uZnxdi>b*aKAW0jl@>leZIlfa>boiS$C*Vc2kof$lv(_kZ+uBHaM#0lNRAcM^Mm z?k9lmCxGrfKzH?h#2%n~5A4Ikun!NzK0FMhSKmk6FX4n9Xult5e++1U3}}B0Xs^DD zcnoNN3}}B0Xnzc7Pwyi30PTB#_C3nGh$nzDU&wfaPo~V9|6(3xAk2QC^$2iO$^U_! zP!&-6Q%LX*NZ~7xq(4AnaDswt!!p}2cf4vgPt0Ip85=W>J8|r zeb7^%Lr?u3dg>5*MQ6===p@3&G_;;F+8l(g*#lkkIeKv%+5oxZ;R~A!EBY;1(Ky!x zC4tgGCXfYW1=&EEAUh~)9Ir!w{++xvE0L?|e9(WIzvf5Smpu)72J|e5-s$=o=s6J0 z0P@TLSKkJ%z71S`8@T#5X5}5=>f6B8w}Go~16SV$uD%UieH*y?HgNTA;OchZ>UQAj zcHruE;OchZ>UQAjtC-Q>09RiHuD%LfeHFO69k{w3xVjy9k{w3xVjy z9k{w3xVjyCLz6xA@6}bAUf~)TsBTS`1nOS_(P`v<$Qyv;y_41R)O-aCJLybvtl%J8*S7aCJLybvtl%J1pt#u%x#G zSGNOK_X1a61+MND?*QG2-2Qjr=eIyxu(Q4gbRTjqeFs0k3%VclAc$7!Ls+2?gB}4r z3VICm1n39AwI@MOfqn>j8uVk(GoW99@L~*bwFkJ`16-wdP=T2T zO7DS;09()Swk~d0ybbyz=ue0R0t2lCultb6e;H@OC@!_9*c7DDd_u z@b)P1_9*c7O-R-+V1-j2+jn4ve+n!7Q&{1j!U}%}R`{o|!YM2MOR&N}g%$oOtng1^ zg?|bw{2f@~pTY`%2Uhr}kW9)B%p?<5_*=kep2LXp7ZqavOZkgD$R|d5ix%MXvp}(V zi{f$?0k7W%Uhjn!z86;bUTFj9CSmJ~B5AeDN zc)b_a`CeG(J;3W8;B^o1x(9f@7kIrLc)cBXy&ZVH7uNX?VV%FNpx*Hq)O$-oJ$j9v zUV10gOJJ7aGN9slh!0v0x&U-B{?6Y6OoeqG|JK6}Sm*T0$PQTNAHzC-4QROs);VQS z{zyU00U)N5MHx|^CfLxY;iWzePxEO38RCEz^dk3HkYpK>Oef^@)_{yR1}Kh;-dH$< z)$}*4mal==lxz10YN2>^5!t9EkPJ!!rGrc$3&;wxfigjMP}cafz}{yC2mDdFpgd4M zs1W1?wS%UCrh{gHW`b6ZKL_l6PPi7oBcBKI&i|Zq7x+2=d>sJ34gg;VfUg6<*8$+`0PuAH_&NZ59RR)#0AB}yuLHo> z0pKg;U-&QJ>leV+0pRNZ@O1$AIskkffCm2O?*c4@ZMF!s7_B31kIfy#rUDlbY~z0X{nmv<$zW2f7q= z1?Xx}7w8($wRpqsdSov{<~88zAaHdMxHX*RPFM+FH0#^rt ztAoJR0pRK|aCHE%_KR1A% zzcukDaJ3(}`Zi7x1)L&^I7Jl6pNm&Je+kd}|D&&b{2L>cj8Wk)a8QrW^sEFeANL@S5?r(qvwgH3} zdZD{c0SV}Rsxj{1)aR z;XQbS{sQ_dXeVeFXg4(dnKPsg3Wu;_{s!s=^?^P{8~&3MB%CBeOPqq1I0Y?n3R>b6 zw8SZBiBr%BbSgxnOjhv6@It7g{1rx-PJj;M1c<-ONuCG~cH0x*=X_J*8CVZvCJsw$ znJ0oyfldKAkryIz3UmtSb_(cr3W(GLM54^PbbtB)kY)f#GXSI+kolW#Bl1Pq|I)qc zXx7%FK$Zc-D9}rQkr(D*y$xWN2ZWzvmUm#5cVL!xV3v1amUm#5cVL!xV3v1amUm#5 zcVL!xV3wc8EI*BzeFii84A$V(Z({HlEzj^8E>^=4tdf4vC!hh)Fz5tm6!bOd6bR?o zK)O-bN~5rqMqw+Bz*ZW8tuz8#X#}>?2yCSh*h(jvl49Ws! zgK|I)P(H{BDgu#ZigP;HNhe_^orIlq5_Zx_SgL7|`U2QGBd~QwVC#&)))|4VGXh&@ z1h&oyY@HFxv zCg>fE!MiAP2MDhYBRWTh-7x|i138|t7bhD6ISgSJ$na~^o9C48<{7C4`i#FYyaOw3 z2UZ%rTs8{bJ_6l70^L3W{XGJ`J%Z>Q3DG$c^ftXbNcX2lpnpfO8b_gjN1=a5pm#^0 zcSjIqBO%I0LX?dJeR~oSHd^Rg@+XZzkB&f(j$p+;jTJizi+&IGBBNNb|K8g}JlF7x z&=5!P8gdj{kk3Mp6%?cuIQcDRoUsEVjtaPqj#K8NIAuO6U}q~F1YyU874t8@>4gzI ziV-}Dkvj>rq|;Z*a{4hlaaGaMKCyMAMWC-aM*rKdh$*!YCQ~gG8Ne}FhjyR9YW-T- zLs8VI6*}lEaQq3@ffcc?I2RFkZq)%G>crftJMbp@d&oNZ7tmipJ3+fZdvMQuFX(+x z4`@H=An0S9-l4~$3-l85)*%x=v>m+#_Nq8I{xfJiI!pNt^vgD&-ZSEf@rT5d<6D4y zQ{`0sBS!I$7{zzdzXbN0&yw*UVKjdQ^cs;@jsFbj^)qNo8QM}K-#Gp#5bJqlns^kw zyBBMK^3W;oZXuUzZlt%*k3Wi$eg>_5{oicuJ=EHm*4&NOJi=O|w&LdTWpOp%josw` zrFW}fLB+mBrNvm#`%`q6hCGye(UOVpOQm2v&O~<{GN*c3h%(twT-dev`JcQj^fD}mS3ti8{RZ?upzWaFf!+kY4T825 z5Hle_D+}09LBISbXGlZPFGJ8TL(nfn&@V&KFGJ8T!x*zKu@@hPei?>-8HRotf_@o- zei?#(8G?Qpf_@o-ei?#(8G?Qpf_@o-ei?#(8DcZ!23F(c3Fw$%=$K*Xm|^Ic;fN%! z03YJ(pks!hV}_t(hM;4Hpks!hV}_t(hM;4HV0{i@KRpB;GXxzo3>|Y4`{t9_H=o45 z`6TwuC$VoniGA})_#;Q)j~v0?c?AB*5%?oV#3w*MfE|eJJlIE%VIMt)ee@Xi(PP+0 zk6|A@hJExH_R(Y5M~`72JqFo7g?;fT_Qj*v7ms3JJc@nsD0C8?=L|z94MQglW2FpZ zUrcw=C|lML_QWID6OUj|Jc2#(2=>IJuTD<+Cczi*w10_n+abJ9NYR*SxJzXMSwT)v z6KEL-aW4`qN(uWZ>1t3H2-%C+InGTu)!zuZ8MGO6F9?|nq03G}mkmLe4MCTwXDUO` zWkb+qL(pHeR~*J(aSVIKG3*t`utyxj9&rqN#4+pg+7NUaWjCeB|35)% z$4iuo$7$F}Q05zo0>cghdbu6;1izO>nSt0F*T7Ni=OMvgf@s%3`5bPBUv?i3PG@PaEd#EQ``}p;*JP2Kr=xr!GAso)(a$a1gE(pIL#dq zV7&;pfo=zF0l_lBY3_({Kj;AvR+WI&1e^Y(fD^&96=ts ze$XeN0njk$1PGo?SbBS5>FtH3w-=V)URZj2Vd?FKrPm8d?1d!uLK1r+iM^1-UPxje z#<~ZR*au1MgCzDr5_=(uy^zFSNMbJ}u@{oq3rXySB=$lQdm)Lvki=d{BHj5p1g{uL zVjm>250cmiN$i6p_Q5OmiO5fKQ{ks9z>GO?E=9L`axilp@K+Y##GxNvv3_{P`r#Gp zhgYm0Ua@|7#rokD>xZS-3n}h}6!$`kdm+WWkm6oQG4AGr@Omz!xEE5~3n}h}6!*d_ z)(=VU6OqXlUa@|7#rokD>xWmYAJTmg(tQxpeGt-p5Yl}R(tQxpeGpzT%2joy*q!5$ z@Z*s1@Z*s1@Z*s1-7&Y6m*MyGK$n8909_4&wGXr*3wp0~J>q4Mi5T9pet66JVNv%2eR_dDz3`Ux z!&}x5Z&^RQW&IN76W+3Zc+2{MOug`y^}}1%4}|K)o^KR;zEL1mFT7>_()U2$2R#IO z7=$dw@Rs!h#SQ|+dL_hR!CTfZJqJS61iWSa@Rs#Uh`|EF^#bAc!dl-8YrPlVvVM5W z`hj%4K)POd%SN%E9L0We6yCCac+2{MetqzkjRFDtfPlw=fX9J=$KfsOhqtUBNO&Ab zcpON097uQ^-m-q6VK30I7iicEZ&^Pq{fB{yc$pRUu@;uT4wgzHVs(-bH>5}05JfE_ zrz1m6?j?IkUXB;3F92~b8D1iV<%j%a@|B=25c1K?`t;33m8O_zdx7>WlLc zsBiophi!HQRzBHh6vaCx7?o20qj#ZU&EozWvfteX{qgU-&-EGf$7cdGKeW~ub`E0# zw7&rDFKh$tfDh$8oF@MT^jFYM5ab&DrhV2KGE8A!4uSp#>ILK6%BvT7@~s5q#&pTzM@u8^bNA(5nR9x zi3xIxXkf@`7;+khoQ5HvVaR6~@)?GFh9Qfe!HOVH-W%Ad{GXNwRTgScb{^~k{@T@< z-i@W4tkZ<+CcPiK9WwDd(5s-|gZ>wU=y{CqzxJ-|x3M4p4hZ{t;Mq~&*-`AC2C@3j z{8p@*+3n`>O~8%=z>dl9zZRoc|JPo_{Wn|KJ7o)H!H?6L3h6B&1$cy$&ea*tfsP7vRUjgRi}mTN!O=}7v|)I*H(*9Ivgpf(nB`O z=|`nHllk;p`edtgTlVR-C|&@LOHZHzbN~Dy!N8qSNElIYn6(lkXK1zTN&+ z+qcDEu396#b-H2eR?#H7!XLu?<2B0ziRnTOE71~PB5T`NgwH74$M|xl;?opG_)Nl`yoHp6hc?&~ji7BbNBtxn`Rg*xHX-G{;O4cT)7z~L? zNt)zDU7{ppn@k0nnW-8{XeIfi|NX74inNM8pNUH=7gkR&pi>1lS*orL_^p-Z#{?6h6}x2SxJpOjWrl@?c3EzYD* zP3FvKzoTRNAzQ%_iO1>0C$PVM3^YnZWJ!6*nwXrNW=hrQQt_XVme^&KWd=TeW58>w zulMSyUcaVKtra&Gy>=$6hKv@}jjkC%f1R%*=yz@Hldc z7YX)IN=~*dKdCD*DK$Z+_PmQ0z3Z>6T2$R4VM=Yf3dvb$kSrOw_-k!#&}P8jE2KQ% zdABcG^&RIrQ$u@x^}K3(Zg5^jK}SRS)s_pcZ;7SX}Bm zXPU=a>29m(bhoa(1G2_i!A1`nicnlEVx#9uP~{|^W1sK_<0y^c2vScV4;0U%laC1R zGdanF{5-Cf4b*1;9#cnsObHkZm6M?-ufuyrj$NW5ww=&~G|NB7Eb9e}U=Af2aU~s! zj;0s0ixqZ_I;mQxna!z@hO$$Xu6<(u(*L?_xBvWUH{8&1ewFmr1wUMM`BUeL7f)Z? z7%pqR3@ZrnNz$)SwhT$O(|keYX)+R|E{i5+{b0Uo3M}H3^&pE!`1qu{#K6TDhj&b> z5%a=&!$zct&C5Q-GZDgNi)>#0|7jDnFh&^j%-hrljW0lhNj9Vj`Sti4&o33c)ztR! zl@s`mBF|zB-%E@S5`-d5q|@sqtt@p(%A7$WY2H>_AdU(+NWrjKJRJUs z=ne1PumNE3+*Q9JWMU<;(JJMu7VojQG88{5v%pntFQmuhbjCrIa)Y&KO zV|Dhh)>*cRsS+Fe7nWx5vM~iTA}AH#Bin$NpN^kYzBRsl#z(dR=QBc=6Q5%$K4u$m zJ`>^&SbJeFQN@w=vhqlGGd|b`>$%=%1I_h*C*vX8fb;AWE@V9EY`S83NY`+lUFdh* zjMB)k)yO&6$e`uQh`bkBjd3m7Ej-4oiL?oG5tPZA;3XYIBnQ=HjpK;61~+6FM|vCw zSrfdB1Bg+KYcI7!vxswGCK(6T#vTE$`k>wEn^IW+CyeA2{JVw68NWH6pH`*7f>G~E?9xM-B@qC7jZm(>05sZksI3}Rt3i=Q zwOY`kH9Knxj85_D={K#cu0H>k&WpcObV>Gw_2r$lj=cK06}1<6mo4~?D0U^(U3BNX z*|)8#TQXyAO`W@aX=Pw($W>Q+_cz4U)!_$e{j)YP2}CR@Mj3BvviYdctB4TKu}}B| z<0v~LM~}i$9>d|Ko?}jVEr;2ADnLYp55*#4d|kW5WLB3arX-9ZvqpJI2iQ(1ajU|i z%o6M$j+T-ZTRM$aCv|BVT9Wy~v|O9fX~Y=9s46f@Pi_vsx@C*lPFpw87v3qo748-D zFk?BGw!KWBr3nQg%Ep?SnwY3hOGbJ67>#BO(Cm{|^Td>!BmKs&mTZ|jck6`08U9a~ z&{B-bY-SI9BJ7N;#3$LD;NLMPJ;LwVD42BWoDkZ@ezQ;1p#-KWggvaiDKACVCN0Z= zv2zRcj_Uw1la)T7mA*%)Wueb49`J{Elgo$ern>3UY?EzkUV0frg`-mLQ zf`FH2BJDpozJk?ch;YP@}y#tyaPclqd>PlqhC2V!<$@pp%1ET1Zb(YR8V(BB{zl#M=96V2YGyE&@?C_i6>qP(g zdzgH9C6tD-xq#JoSU8Fi$4sTMnc|vDskH^QCQwh|&rz&dZp=c!sg`wE{V#5yUJ%Z= zuwGoqN>$gtR-F^hAss-y;DCmBAD&$t3cz0TN~nkbJNl28rFeUiV%nqDpz`7S=ZFDe z8T)?ygzxt;4>J0ri~Bz8!bm;%{!tdYFX5FcL7K^=JBchoS(0E`1Cw;zxc2)3UJ$0& zDbl=PKUf%M(U3(rBcZHu3mxtl73tujN?{otj)A4#L4PT60=*Wl6owLMN|Pb*12cP72=g!t`Ywju0zpf;_lOp%2;k?vvnDtEz!l+ zxqgC05zDa;8O}+9V(b>o8(M+Z@iGo0mpNNU+$Nl00mYWI3k!{*TC^_UZfr??;9w;s zGwU+CBFCGgr_t|B?154<69n0uLS0uZc3*(RAkuT%NkasKB$TzaH8p#-tP|I4u3B8> znx5T|oS$ZLn8eq^%@~ww@txEDy2Uv{g_ zmA8gJ$*GxF<)2@j?Wmbo8JJg{ozQg2Z5=ajTiw`l>86eux22 zf-$N3BoA}W^$GZ(f%-%}YZWiivP~-C()+?vKd)WcS@7~{XTi%)7rw#D_fIMxqb}3V zg7X=LUo*b?srcB=g7cYhQ-|6c+!WtlDv$IQk zV?!Lnqv_;4=r`j5>KzcCW16>eQ<=gZ9VyhzEOC^IZ|o9Nh2JRO_!e4P7Aj`tNBJ?b z%qrxqU?U4Ybwt&j32$w*N4tf;GEMA_n{Cp>yrhG$s7P{^8Huc^+z3anc$?5IB)=>b zI|U(uHsmBrye8TM+&N+8)y33AtAWbl9BP~8`iU4GZ8PUn+uRsa63r8}nRBRZZja-L zw&p{&LKC;fwr1j7?-f3ndLCn>>5w8TQTv^@m240`dYEB0dU5g=Gqa2XGYc;m+hdh& zil5nuD?#PoE$n3czDfKo(Uk!G(GS0bR-F%Zg~0Y%?U*=Aw9ef0udFQ`CF1)<8Pa({NQExXKq zk2IrX8msOK>8(xSALiBM6$Wzg7%2Ri(1^ID#WbRqba{r5t1q3nVJ9;)UNd^)#yuD? zJ11$!&RE3=Md`f#*zF0;YbNT)8<}dvFssA;KzLLg@w+h^9@z4Wtm4cZuO0R_jeYr|7GrqibBuppbv{M| zvPg4$H`6PRaco2!1f4eJOt70{Ira&g7)L>r1C|(C4Qb$I;7wL$t4Mhh(UaHp{RrPj z!aBTOqkkdKNkwtVqCIeIS$)dxKmr=Tr!c{)i*3~*ygp0q&W~x;$_XVMB}67Y#7m0! zVXe5?JQJ(IPiwri(2`IAp|sGhO0{O&Dr6@+P_o*%i3GzAmR+t4%Z?VHhnzaKboykq ziC^ekH7)sd^+mI4XIv62?L5DxX5Ffi=A?@D`Nee&6=&B?JFjf|^|SoT=I2Q%x=gFF z)a@wDG#INEwAC;4+pHyy^+^s#hTEB6l$~z&&8nS!QNUVcA%tWtl^?_S{YaUsUg0(L zIZ&Z`5EzH%QqBS7+k=Rf*MNM;JSKh{eGhI5FlJR($CtPd@iKJph#2}5P(gHdSd6IcQ;%n+rYO0T^$s7G9YB-G7jF`n+YoVFnt=bLoCG8U4oiqyd z6H4k6cJY#`<4XdcI-VFU#>e}H5;L}m3jYgBgS?e6Cq$tck-7Ka&v|7xQlXf z%$9V$*%d6SY%k4BsB!x&rL%nD4slP@ik5uevUayFEyIy%vKf=ig*BCDoeTWU02clk zt3O{Tp_83Nw_7mSZT3lXH^Hzs=(sLNs}P01QP0K&mtxy;IvX!PDX%#ZBC3G+@;dWk2ilTEs*A& zeo>mYfeLqDQC9$Wkuf>lq5Rm z%n?g@X^=S93T9>fib>o)c0Q1}HC3xhoB@7kv=i$c9I$bY0Eb9c4Zy_6zq8f+Dqn-i z@&p_+0PkY?`h-7nzNC1*l`(u;`RHmU8=NbGWg*PwFVK5Cjao)3?m8(hXlQ0dpOJTn z&QT+dB60na^|K4N7>nDh{L?(9&CWU3C)8hj>vVBl_@S~z?QT!|A}{?ud((wM>KUtp zjmgU#g+v~GkQEt|c#aQ*-OTbVI3q`o!2M(SaU8Te;I(`Nk1%-=9jp+pD|kJ$-{Cwv zk@0|da#>SUo_ZRQ2oGYj`S@lteG)+xURJce-NHLepE%-LM3z0T?V!-XdQ}w5As5Mc z5sqHTg;&>-Uly~?ScB?r1T}$+?APB<7{Ah(a_W_GIEUJ1$vdgd;G;HkKDEu|F(px5 z)Mn11wz)cvBifn|g(q0A0 z5w~hI^Ee04m~lXIb_x%QH^K@p%-xj5xS?v)xowQjE!$rl5#-1Ur3e*X*M7XYMiDAy zPA9d8oM{m*>N)39dmi5++DCu`En*yK(H=3ES^2fm1|jA}1o{Zlk05?OTxr9&^@xj+#y+1s3SNKaf?LLwUPd9)civtJhx%kZ}6ooRFe(TJi! z>e8nwXA(ZY&u=8P(iX4<1G3GG0%h4L2FyXRdDFtPZ@uxnKRpyay#D5m>%&LB_vdq^ zH;x|<|E^E+;E19${61>@ppPV&)y8J)J!J*H#OA_eP*E+OqX*gJY3H38$3e2k%h)NF zuvKAYh4A^|rO^81JiEnJOr|Wn6h!`>#)xf3zmv&hsnh614dNnk3X`Ptm?=>VoD3^h z=QPXTd;V7so%sBrXMg(e=O^Gf`&!h79|`|xY)m{~M6w7G?>Gw5cTrvv0-(@ zaP%m#32AX0G&a19ox*B1HmR%-J~r{C>=HhVuLqg|eTkIPCmg_l!mq5?PS7B{BpPL2 z+iu|pY?M>t+CwP7ISvXoR+l-BgQSyl9AM|$iCfRy>kox1SQ#c>2F4zlY@~%4`y{d> z1TD>Bf+QiL0fsapo|vz3y;uOPD`Fd)E8ZKvRdR)I6K_Ag<5Ka+hD*cQ8!-N?6gIja zDdYb+t0(Fij_24Xe4BAZJ;U)F>gjn*85mo%75(M4^a1VJ*d`}M#}<9kLoQpIo1gnW=>LJeRZgQ+;sm#|sDT8hL4j3$S^xFkU?TvJoM$S2N7He}Y>tEX8@9k~sU2j-RPlXLvFxsG!S3$MEL zS&K>frmQK-$}X$)&dEs0)Ys^f%Uu~oRvXq4@6CS9@DXJl{TefzxV7G-%5gl$2Z+%m zj?hF7d5uzrR+9{jF>IT;Da2UR9giJrDOXZzf|lsR>j~t!;^o1U+)zYoYTpY>J9x>8 zSCZ8)Umhtvg;{i+lS;>|$k#`>Qjw&^ux;U#TvtW749li&Db27tCR(`%ArgsOTPO6l zNN$Xjl2%KlghGhFB(g(fz49E14^*rRZerBOyQ|3WicBq|Tht|h|5 zW*2QzX7x|%u9TOh)~1tp1M@|UZqtO(&6Ty0_8bKCByLqkX^ItlNLi1~6HAcZjg)X8 z6u+W_(YBI3B(|`<2yff5NFVkidP;yjG^f3tO)R&E_4 zWB6lM(}y)Nt-<~a<;mXzo&@2wKU?sHZ1WwCvt82?UHDHh+H_qdRaJFDas*P0YDg^8 z6z9OjqBvD-*kCf;0Jab$a!(7zr()X)9O3bxZjV6<;xEMOiNK7D&akvv-MfK>zWUW| z`7N2EM%Facl%C}+x%8Tr6^?=n8kXENO%lUv%St9v0t|qs;xk%P~=lc9}y?TAJO<(5Abu5|YE-EaZbJJ|SJ+Zhc&y$~D z+~RDka#vbcWo8)7sjjrdqzaeSmGORYQ(<9KFF@ypllc!;Y zv|q>oCfh@X++f9a+g}l(XsC#m95VJwh>MXgkcuCXw+1GXF zEN>1hZZ2@OFFP;42H$BeanzKgXtRqv`dZ&|X@B^AU#)lUs=B&Wb4t4GrS*B<*=5-k zj+-;`ZK-G?UeP@vZpk+ zfqEZpMUPU4=ZqY?5HS_gPRytSBe)VXnl1R??KY-+Z3P;GzDuJ+Fh!S*jU`2kvEBM2 zMX%C^opdRkCNou9AtluCqgfsi-6A=f)^#+j%<486oz^0sEIBT!tzACNB|fe%tIf{y zyUdp2nmn_|nJsGP-ZZPe3?7c{q&;;-j)JP{($0%gZ+75G_p*lk{QA<&R9gY}lAn+| zSX;e_i75=3i+z<9A-|G9(4k-<)%x8>;wf$^Dr%-b#no4q zUhTQseT`T+u5Yseg5jq$LX$gtz{S^Tc{e9;9eb`>;PJeJEAg znBAdjCVHx?97ya;a<^${L9CY|py$%>V4YIl_51C|XlaclVm>5S#r$8u;UZuQ1+1fyjz zEciC7O)aY}hI3+VJxW<+6FJD1VlCEc(iYQbmxsz2i)u^dz;=wZ2{rZ+VxWJ#JXlj6 z=J9#sg{76eWW{zg(=3rSrIenI>mG(}m6J**E?83vml1(7I0KlH3)YmvWm?5riZ}qO zGTKt=G3*=8C4Y1QSxO~rc)6v-=Lpsm;~;CQlUY-xY?5MmqO-IMes)60*mz>E=26t0uhmA}`6Wwl zY8Mgz^nJOw$yqWpwaYx?8x5f~Gd=A$Eq2wr*(EPJ&ve!VRCA9T4;D)RR?W)k z)4dC7^4s#W(~3=nMVmH>Th`>aT~M8#wmLDnvck0{d_CL_$R$#M*g6Yx9@PT1OxYPu zp&i%@%D7^kc&>{>b!gYPNG%!!?6hNatf;R(r?s%CZCP#eirnkw+_`wk z^`*0Omj}Evy;&C|T8j&_bSd5%N1ngPZ1vR0C7s`>t%nU2tXL6FoquIxef3ONXspOY`1zMvfkZqxp;+ ze`9uj;?`*FN_;K5gg>)df^lV#L{Lk$@&W9K6Spd#W44+b;vAYAl;OjAPPwqT~|6x<21FNca=Cqe#SFJZRujk@%Z{k^PYZgidumd z&EwOlXXtqao1;${TEH7upr4>+*$9xgT;b~x?q=RNM~doqXa?rTmej{E5G7?M$M~LL z{bTH3XSRt>FuatY5w&nfwYI(olb<5L<(hz{xx2etN;y3&ExGG1KKl4Z3alB#iDU6I z8ROi|jF0+()+e!kRI?e}gNclZq9%{5D93#M!H4vDG)A1fDOoX}_q)q@z&sba&Gk&2YK3pa{m z`h>Zwr;)_xi0#Iz?ZfBLC~@(<+Q9i$;YXXFVtB;WZq*NoS zQI1MU<*h(O^L^t@!XL42jDkf-e>uaHs>P|a;PZQF48 z$zklSTBzxMLk&fhvQGcK?%Yb*PU~y@Zj?;x%ZT-;6HqRS#cpM)Qd1G-TAz|nQLf$o zh4JMf(j8?f>!^dx313HP*l^YUBq9N{tp?<0G@WyLWx(^_?Hjd_qbY_>3wPg(hU%2%+t1g5l+a6ewPS zDLWiF(^igoESSovY3k0jq!*@|vS&G3r%U@!zgJ{W)UHW2Olv`_St$%j_Gws7?CbHM9v$V#=X=Ug-a_Rp3eGiPNBX>&OfQFjnaONTGlyq z5!Y`X($WxI5EEy{44Th-Cnn6 zW}5QnhTMzW+GgwXFKVf3E=(2OEsf1p;lGIP)`q4kXs(nC1Hq85w%*y;>E>&(o?3+2 zSjg65pLh|*8KdK7dL$BSj+R49Sa4FKXi_-eQ?&nBlUiusjTSeT@^w}e=;kp#9S;ShihrJPibH0erk+*|Z59ip&qNozLI-(qqF0?el zaaeeX_b59?pK;Bj=sjN2E;dleG-I@+K039gv9ZULM6-%Gd?&`ng$R$dOtX-d zqwBJ2yDWMI=&(^|w-BPyH?_z+616zgaU%E=uW)y$NEJ6|DOG1jfJ>~NG=AZifQ$@X zR>t%n`|1@jZRU{~lX?%k9lNYZ-<5rL8~S7xa3n znQKC!)w5i#nQQ)3)Z%fsxZq>+v=qT#xvDm}YOWVQgSGf6rd7-=E}2`!o`uA zdc|5~?uFm2C?B${>XGP5!I>M{y@zrpKpv`NRtmM4%HbSpi{%>D;t75LJ_DRj^#err zEYTJdhgRk-j_$1{wng1hNB2$q^XQoD#pwxItdnLiMtW3VLNq3wmqNB5Un$&|5GP%c z8IAWPOrFo!`B%ABUxIhi><6Q>&wL60h0#t>WS(P=NASWY?G9PJB#4=3)*x+kJ%PPf)+6zm_iX$Dr))YlDgT8s*VSZ zt!?K{!l*74pDKV=m)}~lbXAd9?MTdDFcGhCYQk0!jA^W(%9s^IvPqhYk2v>~#E zDFNulvdZi83hKO>shRoa zn;ezd(7@C#x^JqSw%OBlT?j?e8@ikc+;@f+;gG|Ccnp5v#>~Q8iKWOPXNGzjBejSn zvo5GDZ_sbvoLV1fJb#*Vb6%Y%yEH$=obNH`_?#J{5L`XKqR{wv`SFjSFYy5P_+YB`PE zl~<$2k65ju>|fl1)4%hon^rik>u#Fi@Ojb_vR$Q?yns8SD5UpxUR+ndsalOMx*h2lt$gnc9H20ZTD(p&BQiD%cU6%sK`>~wm^kKZXoV3?`@uH&6qPv( z`u#TXy5?_Kx^K!^TA7@p5g+lDg|Umgs4IP-+< znLe?c_|_bPO96RQ)Ygn2!QLmfHAjCIQ%WRG7hYQNuaXs*i?||_UT|1-uw4}wEwf#t z8}&%!INybE?IV zzK$MNhd-tcZ}eLz{jkuDwqtI66Rn?#>n$sJia92Q^paa#Q2nc z34-P2N~;+A4K}zKMqtp_l1chAqQelo?m|{Hhfto}WpZSac+o|0mIw`Z!PT2jHSi`x z(H%0U+(RLlMEWke&#ODxvaleKYcXd!O<6_8Ja^iy4Ht*%&JARGGTS;U7ObhePOJ_V zR@rYb7g!y6srePQaH^!QJEy96cA&7un`BxutN!eOT}1n=$U?hbdRbsup!6nFYBDg% zs!bovGg44;o@Zp!KSJ* zUvvc~S2}jqS-n%#i_jdIy7iQsl^VewE3hY0K6v_sYxug#o>-O@=z?)k%EDd~ z&LFH~&ZT%(M4^tI;ih2hus_ykidr0JryFscO-^At#HM2)_~F-+2axI zVm5mrYlzCzjFYsK2u~j}yJ=`N^Rh{EM0OawEVVY;6Cr0Y+EXyGJ#0_J+jH=1YH#s` z&wtGJGQ2gt$p1@wA~BC#yXu~Z>iIESd(Tc7yNZ}{n!!PPBF>?rOx5l!Dv`viFg^RefLOvWS)GT~~q zX(^&k+a+t6zY<#jZW*@)WQvMMQ9%z~2+-N2w{QLMs&kiKz5kXcnwMW$8@zIP3mp&j z_M(PspZnWWPyOvV8V_Cv_4H-F(!@DT!c38wiRb7MaCU*Y$&BPG;v6Jlyo{aj)sYlh zO~k_IgY%H&aGu@Bm`9Rh;icer4Mr&)y~XWcWR}qyBu#1pG)iKs(o?nrSY)#Waoqt| z06aRn1n}S$iTZEe_wsM#kk13tSe{v?ykxUIGxaa`+_!Plft0G*<>~q6H5#qC zstn_Ivv|kpd!6+K33P*H_y|rcg)EZir>uw8JW9cu?-SwPkCaYh&r9D8jY4CeIkANd1Be3{@EOf; z-o($Dbn?#+%%{)K+`|uXkOS%E-$z}zi3b}fC3+t~&+Y@TNtk>eAWJMjhRA1-p{pp| zdA7LX{IkP9J|F$yrO-%Ygqghkkc~hzmVY7#EX+1)NAxzp#LsCA?};w~+7~U2)X^tw z1_w03gxdftLS77GN0yIRF=*C&eU~RSRg;me>#9^uAljN^Gj?GOk9k)^;U>h!TP;S9 z5(-a&{d^^gH|MSh`p@?IC|OuqQgwOrymi4RtoAy)wX`q;305touGys} zh(0Y2d98+|+(12oPxGCD3p>KE-)S~C>GgU`p2b#_p*NEqMe%K|XmJM4j4Pd|? z(rv*W(vCf3VPwl;tDkBQiC&l~LL}PEplCs4VNp@*Qh(!0dv~|}?8}l%YaF=&SB9&t zB)7_)sz*3sJw-p%RV+PyYDrl@oRRCx%Bny#>5NiqG2Qv6R<+>dNAUm{5g_2nNY`jG zQ_&0l@ht-f+gP)3ldmgGMLNYJJb&%8u^nB*=*) z_q*C72=WfG-6k4%T-b7z?ICIyb-R!83u~(K#&era1Z@C#Kdv2PI-0?E$Ld-@E zJZ(iGi#fwU(~(_Ji0SZPIwCqNe7bZ0^%DOrCU4!$02Qzh*Is zU9ub~-aF+^pXBB;*x<=@Qw4`px`YG`hJ(+IkNi+-+zvPLFP%Ss%Z3f&gByPS^9|u| z(%6tjEd&Bk?2o}BCfJg-T}E=IMCO-8gQ$5fm<<{+N5vnS8)vzF(@IR;>BUaFztqru zUO~ClQ9G}KEKp}K&+5$;r*o~Tht^z%nqc$7;??Prv`FAit(B=N+*Uz=Dz*2*=v|$F zEM=})bKgsMZ&-KJ+8euH6x+hT2h86uUP**vNr!lu4$%pgkY0-%WNA2nrWN7$GW)qr zb}|JbWrZJK{Fg1?z6HuQZ!ZeDP6WiTcxn0PQXitXvyOCJ1pKJL}Jf8zYbyAZr6-Ur&YG+ z>5VIwbOuSC>80%Aq5DMj|rlh2!U%19Eb~R(`h(zcbZ$*V2 zn{bV`ob^o2&CaJrnH>7dKboKf_WXl-D}k0K-Qicm{@7y>{4&QBJ(cQPW~RCd^F2oK z+;h7-I%-yRbX{)EFne^S#L~c29ZqZyh>zs@9XWvlWird!mQ`GSZus8(oD}(TO{yLe zO3{g9=(z(?CI-7h-z8>e!@Xpr2t_ZgKU#S}^M5igj^F||2{lr6SKvxLd2S9q^DbuR)E|aO1;YE4m!GKXV-k0pJB|TjOLk!A`Fn} zoO8OTPglpsorv+N{+GrA-Y@xFpw%j&CFC?NUfh{wpEs|`+vc88psjRt>bmNHSu6DV zWeEKFhT;+@EkN!Bj;|Ok64BMM?ik+oC~DCG5fCgF=`OgRC=!kYeDhSuY7i*HuqcQz zH-+4iWvZ;r#`#f4M@m6KRfRq+U0YK+J0G4bQ*Md1vNMofP(P=v^t=U*K;`*fd$HYI z;I)^}@Y(B^S7moPk`1o2+goNi^;cZsu$hbRS{LyGHB55^TxM5(rfzYrH95;_vKjCq zL1tl9QE6+b#hhneo>!2ZWieS(^;&&qUS(nZyy8@|wKS)=&65*cP|fiTIv!DE(mcrr zdjJR!awg~#HMj|@!)%IT}kFa;p|y zLe>?H#km*@%7CA`EnRFulpltcK@tHfxkO`g-*@z_zI*!I%`0E=E^J)8mfkDy&ADaX zl3Qkonbq^k!q1eSMLHa%ibE(hS+ItZc#ig#WGOPX6BD$HL*a$uv*BH0Lip6Wb&_x0 z`isa{L}eU78A*ciWh9u^(6u}t_Mu##QBE&_p`}CoVR+xklla!{7yS+W$;W$3ZBjre zz&TlFNRPY1Mt!TtlTE$yt6z_`5GPs%NGPoh0=JM+y0P(+d1Yk_*0n6YA$LW_Srx8k zZ)R3StINBv$i3*QjeomX<2&n;`i9l>%BBT7ic51ULq)DoWmc(YeNo|i=Y~I0#zC6T z#=-mwm^&NV1WM7SV)Czg&4V)Ct@kKOUc zLdh3CB_@o9|2#PJr%Hdt4^c{jko=<90;$H=`F9KGTe;wGT&L9bGWb%+MwF8@q9$3_ zqK(!zG2Lp*Q|(V~xZ{;qZo}(~_;UDZ6thdLzyPpSg8MnNO3bgoU!;>;lHiYFGK^L) zqVqJCQT2Bl&KKJ^tP*ia2;csxcrL!pSIajcceJN6yyVok+OcF?+47IB5jsAl&>_BS zQd7u@Guk0vWoKO;YQKD5Y1x9y1~SXqic3OXTPAWlmW0Y|8sEY-wRNi(R8%coQxjZ$ zR=Jp6*y?xW1zPh9TdEwn{#Hf)jBF%qSm&w9$+oz4uFBwqbY&f)uKv70)zXFs@39tT zWV)=~lCN%wuX1VaD`J7!m6cs&#+o5n*Z^6e-ciQ3geYZ>L@mUpBXH$k!Qi%lz3@&Ih*Ke*ME30Gr$T00v-b zg|pRf*!c>^z~Z*qk^YOUhEeeZ#-IW#EyHrf+M&jp!wMUpbQ zAscsuDE_zJ-|qDJ@|w#U&+!$tE-dTluC6sSE~+T^c{+Ucb6kz9n?jd+#0QeH%-LBP znWp44cT2Uet=Qx)Seu$>%d%OsGE&k!joya&#V$L^3&2*gU?i|}eu>gGwE!dOI2i5X zc3y#Gd2_>Cl16+p+$g@ej=n>0<(`f2*s)@T)Z`2;M4su2)zR!k^w0~FeH`=8D6KC@ z+mP3`ddBS4A;*Ta!r%I17AH{4ghdak#8{>8QQdqHz$4ocUcMGH{67TN%pemPuW zoG6`$Q@-QbpWOQ88X$Z4Ch@M*JHf|&uTS7NBkdxUEG)XzBt!}8sAY8C#2k{5^eYkn zt7yM!`pm1=&E9tB*qX~OTQhdY%QK|%mtG2wKQ8{@^iKF+ec@G)^BQobPuc`%!SkIY zC@tgJgDJ0zlIx`VvB&N>`2HOaK5$phN0RTYx57ulpS}93m?1&~@ZPncBwVF_g%X{p z#Sp?#50T?U{??<9-Pw1;-%vTAE&RYA{#X1azFB~ANyRslNTX4n4$9I&{Uhs*CM=qy zqX172Z4>_%eo34c&R8z4Tem#?5N1viip53Zz0#kc<^9MNk!E)|N)r>y3p^$8Cl(36 z7DF$jnCJzktattOKJ2|wF5Ay8!WMwGrqN^((9ChUA`q_h6Y>Pp)(qC(9K1cn+6$EziMgqZymm@Y@Z{qJS)pb9@+fy4HB~c zXx$Rt&k=Q+Bq))VwTi4(0ktL|u07_F45cFDTya|%&nj#< z{UW|gEfm<<&1rm<&Po2xqSv+jjDeRXj?1fn80oKQ=Y2Df0a0DmRR#Ed<( z&LHKwvx{?#vR3@y{0-rpv&Ev_l5EVoTNF!IJh=9q(=Ud{@5W!mJr`g40QsJ&|MaGa zmR>bc|BgOsh5DGkBhQb7SwSDaMrQfn!h;`q$pyX4Kn9s?wAdn)gfhgGbWLI+c6vgx zPLjHiDv9Me!Ul@v*+bJAl3yd@Sc3J$9FURXi24oZ+_Jf~ zPrM2e+DD)V`g!=f^fC|;&6Wr6aR#M#c`Sh^Ee*BW^JRpYD5)*URZUxiXp}Um2`5a( zXh?yQ&4u0V_IudvX3AxiNz>&KbWRiK3_s+NbF>I-sLKQP`40hhLT|Wl@wdU$-QS%-3kp$#QZs zp6o>e{8-teaiz9n8tFv@r*ZD)8M_|~hehkN2Re`sh^FhO;Rk4{P(R7a6C^7VM4rjY zDJCoGogU;?f~I^Jb>dD>NS~CLXiV&q(v*QB`};y#-mo8r^U;>Ltg1}0xo5Q;)@e!qDRLeyUVU+W*QZ9S<4Sxp|qaNJyh1E-+Q~ahl zehT@KC?i-JMMmKrPY4PgLr~L!v7tiW^UVuZFVe^HSwIF~X2X%&;VE-`8xQYbR~34&oMG=4EeYuY0VQ`rSJ8_z z%=e!tCnY2xLp7!H!i6uIahmh#c&&&)8hJE$U`0gY2`8_l|lb?ZutQJsYRd|wKeidwk8l2m6#%@PHGRn8)=bR7EXz7 z9ealrxH8%-rD?2>Hz4-|wGE?}h-YJCyU14c^cw8BSPz{R(c8O4%-?+QZX_pW9c;K; z(ZefH2J(ZE9!?c(6MBeA;L?E;5_R_ztA;l}u;82Z!F6*V`&MyvrY+!wvJKa*p5Ae3 z!&Uh;1&(Sm)kuR#Z=w!*dk^=d(gZuSJCssGVEx=e0fBT@s*v-6j4V zlRB}!@K2>TPd751eo8)$TIqF4XUK?S6SG-xCnX6Mh`x$3Y$R!kK)2Vl$V{`VBg%BU z#uZUp&RkcGGXtsG{&>sW%YrqRbcVlpT@vlywxv?(wMeOJ^%Y-}uwGNN^zj@25IzyS zsH5%TdTHJ**F3$p$$nj~KNmUCY21Oz@*vt}7IFno$gCx`t&?-{;9Kk>jx>zrY`I2R zFJ#q{y9sai8DknYceCi)d`s8H+BIlX_(SoR*SP;b>fQrBuB%KNpL3^5Gn(Esy%&w7 zX_^_ekw)EWmTkEuc3k6$t z?VYTn`t$*B#^-ML5km5O#~g{@!*@MZqL!&*WgZ8aQRDGA+ zI6QdW&R(&QrYF-E*`FBg@JW?4X`e^Xrw^h}N$OM7WWrQA!E2z*b?q>(^BR;mn;UHl z4&(yl>FwaE$g{?YGCLa|KCs$5XD*J!Gs{cf&g!Sxa8d9Sr?Ro(4)ea$$xCN%xG2#=0*0PZoeJyu z2dYkmS(fT5;kt|XEYrF4cUXM~jmU!9(JG$H&`>*yu+Ug~I{9eV1;r3S8>B8NZ1A0T z2=3}1BWp5q*UXnk5>swr<)K3#F_;e@|JvUV4OtDORYQh-QSe%$a>;t~8qIj~%u5syKxMBUtwc5R>PVLiOaB9u=yJpwk zv$>4q{%d=BkpX^9nP051x*e6zPrmEG6YS9(I|2Xt&Pv$Atb9mZP}6^-`{(@LDR5D+0a!< zb$Pw+>bGcpKJWH+U$X4L5onyii3ul!7w{M5;&)WQ1G?2}rAaKxl*agZg<7mVA>R2= zw~^gf{rWjbC?wacS@@>#LiM#Xfu7^M!h%_E!n_A7P&%M2GAb^ZASg6)g(7#`MEd`l zj1XLu4J^S@kmLjTHz69l{d@fo4SvAbTNj>Vm#~Yf@2$QSUNzt5zwhP|(RJ=lxR6sj zJhhMooX!}Wg|MG5K{yyD2z9p-zXcC;XsR*Sa@Jh^@moHBk7InaH{lEFu)`L9%I+R4 z&$;~zKP1W~i50b@NZ(6sLO@bzP}ho2UyYunda*EYD%oAtuR?r$iTN+Mp!!`dL{cjg zkoRsxD^6fA&ORMZ2Cqw)Yt|qU8Z@#?c7|j|lD1!g`^tj^q9g*F*j-)4kRfEu4G&JH z#*>MSnX9iqULB(w-eNkS(u_=xt#G-nbU1Fi`q(@Uc!;occkAh+iXiT;1O?2JuSQW zPYQMdAFJ67O#i?|0QzX@8^2{ z5<&0e4-`MX;V%&OFq>20Dc{d$(@gztGMRA3>vTBeF^z`WJn~sg*JV?225E=YBqGdSAoguOD+wp4LY10zP4T?BO zZY99&#L2h4|Mq`+>E1`*exe%*n{jeSx%if=KKnVg0%L;;RQLk!MQDMsF^DZ{17sM3 z0&L}6Q>{!gb}m)@Hh0mEBI=hf9a%Gry>ip$=if?V;`?6ND8yH+SoqetZ`)euAw?!?nPVb7_H!VA~sx`fNnZeuCzcE^km{>3vU*4y8 zs#Ag3Sl7x_tJCRp<+t9t9#s;GiX#GY$*nk2fkt!Hj;>92uFkEW8|c6M0=FQCSH3&3 zVwtZ=l?ZpQE!*sBs4}S9`Vn4jJuZ`tNTMr_tQuQLmJ#Bf$&W~FV}k>Grc!^hwz_%j zqU_0Aw8J}&^qs%Bdh0-o<|Nidk9Fad4G=BHX$ZAf#dU!-t)}nfT6)TIt>XD67Bhky zAq$x0I-Q_V(#DlFQYnMFz$2=Z!F>@v6hu`3H=-^)@W5%=-H&|y-sfBsgUg`A_0eEQ5(cB9mHM}NAJK>ee{w954{AgLdC~MRM3T6 zIoCYyLO;1=55eAI1rq>1NOV0TzH`>ZIlv_xXV~<066~+N>ZZyH66~?7f3ifhuR?~D zcFVJv@0c(I2N>$te@gwrDoMLV4qMY7hlbcN<-qc7etmo=ia zv8bd2KLR0_P!stoOAfv@IFk@#JQ=A9Nm{8+4kxbq9-?qbSp3~r?%2>moJaR~L9mom-j5Zj-_ob}zJsh5u57 z3xm=4Xr7O4aQf;CGMNjnneJGX$Ji8wwKw0q{yW0tUpYRk>IBwqiIgL1ow>dX7)bgq zHo^5>Jlv7TC(NFX3%7&9BH%TRF0To0f))>`j5FJdtd*!&sdEmnB*Mxli6FTg4rRFr zee5w;(G$?SwBA-{w6ZeQck*PrN~e1M?XL~(E|)faORL+hRE37~xeJHmWF+7R&Of+z z+&sPJXg^80fzyYDf9G^5T1V71>xd0QtM8WySVtb@S3y3*eo?WtT#L9G8eG5le@@kE zVHw`X8DLm?UeTTu^<}))81_|z4dOF2W)>*UM1sz9W`H!R=W5Q>02^Bv`m@wv>s43H z4@^dux#n*?{P*K5&Nte(zQT2A$%XEle?ayF>eXeuSLAF)dS&Q9saJ^FS{xI%?a*2w zKRjP6WHO{mR$B0JVibUQ1x1kYD-Z#*mq(Bp_$A^spa4|7zY+VI+ajRhypm_d=S9_d zy$h+*50Lhwe9ri5ic1q#(S6bC9lX`{7D_-YwhG;o!p*PYbR>U{<@q(PC2_Od&cLrh zKY2Sd{F+>QKx_xN8-XnXj1%~z0MT1OCUZC%aO`@ie(~b5i(N;YQN7OFQo19{M7Bib z1C)qd-`(pTJ~VydZHe8^)txO}-l6do??CLp7lFf1#QG*<%P#5ST&b@Z=@{5@&(YmK z!+OkMjvkTEW5nE6Ag@B_Of!A9t$^l4yy7|8{d_EXeu+3ITy~=R)<&#cHwBY_mSWF(nZD$pU0mTPwS>PDn%PDoTDt!`brPV>sO z>zLQ0OSS9uD`;NDE2ts{#Xwq(^=KhUM^APd@tOr>={oBgQRB^f!%tPv>>R(Q*+vO4 z#U7KK0V^eT3t1jjTp+@pqoANg9D#0cId2C%2_N~7csl`J_73e}r$Z$KY)Z*!TGgkN+ATuMZE7w+tXPl--%a#$5IyBTFn=$_oyvSzfS za}~lI;-U~1MfMQ6L$cC6?&(70Z14cy;9NC1aBl+1CA1+T+)9)s32zpPPj`rq?7Ee z)%lM-a_4Vaw=YmO9<1104VH_rSy?U9XLUH#!w?NPI% zBXv_~^CC27vv5MvIg8`mw zG?FR)bF?3jh(UNWT2>*Sp^{`=97fm)TvSKNc@$u2V#2kIz3DN?`w$fq3;&FD@SXmQ z+%4DP%pr>&P93u7>9q1WGU*`+Cg_+)k&BPS>-}Xmy$i^u*LOo7x9MHpcdT?#XQ+Gp zy&V^p0;RF|=zyZQ>H6ifH*V~Z4-Ci)7u~RG=K4(q#lR!%m-6!7<=q$dhvbUhy;I#A z`Xk(eO(%Dp)6W2>CrQ7fQo+}YI3r1R!)r(jcpXQ^df4?rmpE^s!Ty2lUg^3L$#|f{ z0Dmo3eSjAz&+{tCGKj`mCHy<)gQ^MW0%o(U5q|EjS`1iS$IK0zAOHx1Vp+%foF;a@Y$QYzo>iP1}Y`j4*f8(-ERFGm99#s}`(a$;@K*tM@)pPlZ` zcJ*F5I(cYtZnCd;Do{?LIs#UxjFFqMyJ(+KE;oIH$K%GIh?O;o5g;PGiaHs|iH>JA zfH=Oyj#l$n2#3ooQXC4zlkMG5cfa*6v(IGoTJFBl>@fu0Cj?!jJJ>pCZtBlx`+XbC zKC{JZT8$@Hn5YcBfme`D@@}a|I`K^c*VZ!IfY6>p)k|m%=-T@zK3X_}zsS4g39NPAxzId%RvvAh!A!j350Ew}PPLxb8?WpDzG3v9 zd%5V?5-%5o8|uZi#L;!8mx~2a%QO>tN~KATk>NsEZGYlJ_sl0xwcdE|hdzDZZLKF; z?qG(6C-JpV{l#A$JxB5U}uc?$w=UbA+lErO^w}jgaJ3N<+me%Eh(M+~;i>9}bb$O#cPiWTQGBpQW zu41+`RLO)Y2K{h*Zlp#<;2J3Em0Oh+>W0QSfg;h)@M$6JGs(;IKe=lDM}ihkycaCI z##U4xk!TAodtC<+nrAf@PH;MULH2pvsqSTi{yA{s+i^GU!=ghxdm~1~??jo!7VWx_F5%1KaK^kQ zxtg7vf3u(nbgfn&VfMn7$pUde5;m8k_yiZ>k@W+VY|;?(rZedmm6pQ)@}YMl@vu z!NTGfM(X7k=I37!bWc6C@Y)M6)OHf(*i%uyF{wohTIBw1XiQOSj3Wx!%YZ2_&3}a= z^uaTUxPpj7JH%pH=)p2pn9vhVRDS98T-RF!jrZ8?v7S(<`*C}`Cm8CE+h2Tf9NgiNWncT+vLj<7N5)@d6;?=$wzZAM zmDHd&@CLmT7o(Y`v`7{ze@Xzzd^8EX6erUe-d6))Y zqtT%s(2G(21+uPbKug@Wrrr};4q6M*%SUR>Cj4??k~g=cNA+G|WOSx;4`*r+1`w$^ zu1{abeQKzsuL!4zBBGs{iC2=_%((^*ecK9jU88rr6}7CI2~ zJlI)?1Ommtx^QPO8p)N1vCG2f1?6%MQ!o5_J-jI_E-LxNb6G9&xZJ;^BxNQ6y8=~f zja88pLgvCnWA;7PN+Q~uR6X%2b*v{I@3ZajA6_}Mb2Jhe+u7jjN#r8YU}tz8IuVEz zItN>)w{{>JyG=T!k>TKF%nz3>PX7qI%~8w6kGxiYxSv5=BV~}sRYNq3rvVj068P;V zxl*k_nO27jQl1{H@|tB?ynqP9qSGRyQ2}x1kqU9TK=k_d%ABcYLTHD(fC|q zG@Ttow(m@4EQUS>F&(c7dh(N?eGR*7lZ;LStuzZFRb%`$eFb0+Os(h?12skPrgSN@ zy7c?`vCG$O-xO(yKHW6c*D;k^_~j=*$!vEf0)ZCH_rmGCFpBwZgXYlWbGw61b2JKH zoH<7$m@}@Nr`;pXHPNnURjn6&qn!AlAKFy41pr#=1$JSi7_%!jsytRt($nNDw6%5{ z=9e#@|JJv>D?3IuWtzJ#e8$vlRSYRDuCBG^(KYdG%TEQvimR_)@nE90eAB*V$2J#H zW8mLG5f1cF@{QB_1Vq}YefTDtu-0jUo4fh3aVAaF_WBYbZvDZ7^AA6K7J{?i%)aF< zv$vmx;v{Wc#8Lb#PZ^vxDw-b&UnNf&OFXzJUs&>`p#AA5Ae@soHll)_NMkkOu*GQ?6*=hc!?dH)+ zSH$CMybZ_hZWb^){O<=u^!hgq^D<>#dyYCnfsE@Y9pLW8hmq5bATb>b?3> znIhgS1tGK#8krtW6F0ffoIUsN^PA*ul>y3kpB!dHD6uo+A(*JGS>H z$Ig-pv1ZoOC6Wrkg@Shmmi>-YV#MJHbTTS&_QQ@Td7a>FG@Q{d=|JLV0ojyoQ38^h zV9Ne6|L$s2UGU)@Sd@O~F1Xc3+=X-*&@|z|GjKN(9C}Nosb`-Sz2=s-P5ve2o31}{ z``bQr*ZlRni$y{Al7yT~ z$i0Ni0{E-ef6_t^)w};Bn?QApy`t8oLH7%rwXkby&GqA$v&`w=%GU@kSxz((>9F&ry&VpR>G5NU`0Alr9uJAf{@mtGcO+>KxZ? zGs<2N%R*@-=~rvZ)pR*t*PxC#RDW7x!Aj1z*d`&IWU1TXyh@si}kgQ`0J~GBx6_ z{w~=Ua_7VCBk@R2%;B`)YvkB$ar81QxoucXVH0&(6WI!(rBJX6>Q= zRCuVM*Jejk=`zJrdayoJ{WC;-Io19QI%UTh4bKHVswlzN{9)=`lr$!8{a4#w8`|1& z-U^_G!g%YktDBY|=s&jxXs{GfUj-^Mp1z)BU+nKUi&P|gT%r#=NuCQpYRH--74Zu2 zpdxUdPzgx#C07WnD~P5N+t;7G^``mjo_z5oXkfOo2Nr()5=Lpj=fn6s_dn4pQSuu; zDBS;~-ipMzI=DWLj#;TaI%{9L>Z&K_=WjXw=%r!mnBHeV`W&W{~tP zN*QLcVm4ZJ8ihq`BZ!nCy(wpnjnC3tE_$EX*jd@{*yD+Nt5@u6XxRTIq`*7SpgD*X zc!Ws8t?xTK4IXB#9ruj$U3I6l_pse*SJ^RGY1RZT<^BOZgOp1=haK5g6*k+M(k=~K zbdo#2%nQ%tJi8on?}pv;?VTj|ez{mYQ}kWMf=hKpDhBBqeH=j_QH2vL`#IEPqMiSc z*vDoVxTQX#rWG`o_ksQl;ESlrn^D`|ZqtQA#yoiG7)r-*6&rbOh;qd_{wQ_pDz}j> zDIQ#_RjIStOImH*cl+U)4eUhMrjclLcysscVU#Pa9+J282NNSr`^}@9{)su{v7Tt8 zFTvK?vJT|MXma^ij#OWwGM1g&r&4Fvu`D7fQm72wf(aviC&oa2C|TtDBR`Z}uGtui zSxeAhwg|H0R=%U2=2TE0%X$4!{_J?zsw=BwfAyG-9ZPw(qE^OiKxyF9qCSvC-c0IN_M+Qb!T{-P*!;02}Xjm3syjd?1vJ~9u^LZ z|CcnZ4~U;OXzt!NZgJ?yrz-XbPTSe=^3!QWC5b=FvqvY?CH%Jfqe`YOo(RM&>TrI8YR@`Z6^-jp& zRDBY3fIgsa;%jR4Y5D|O9pkOG#H@9Dy+|u`4W|`c^Ax|v#fe3<>5CeFx(2)*a#cQu zqHB#G&$Rl)Rv&U1l?zE#Q@8RQ!Za33n<{=Lr?` z!oSYk5L@M)$+r!J)-NA?r1}c`yDv9fdaz~uqE{;A(PY}+o#-3f`0>j&eMx)81>G0) z`b6r7KK^O+?l|vVbvw<<+4_3wJ-tt}FvCZ<)T>04IOv*_(lw%$rCwzOm?23e_{$;M z@POcoh#vZkS_(PBXaw+s-BZ`mK~x=_T`%Y$yZ@Cpsu=X2U0uI_B3J~?jG=E%wEUymI{7L#_+(&$$+MxGo{wR8wGNqD= zS)>s08nTIq*DS~mo^uUO8|ZSW9ex&~9Z1_~$B791T07uX$qI;T$g-zWXomS-!p@R* zwY1)!;qAZ!fcNKZyd5NtmgrF~)1oTD6QIYs_lV2w*4jakjwS?Ha8|Vj@k>dP%N~;V zNZ1s|LLPOMydFzX-`cwBi<#B4kjP$Sn_g^cTCZ037FMnt+ME~7k`NBj8JPmO+JyU( zRH!$&Ee?grg<@yWdWr0@#9Gw%0MIlosJZ`$$Y|6&NcK3|Y;KKF?eyE7!y2Aw_f0(U z?k6`STH>QGXdAc76%n^P@7-h&v+i>CW8v!3rW{o1BvX*otU_Ptw8O4sdaVkPYBHHg z+aOxR$UEH81qoWD*|S-l9DAtx>HQ52`)+#t(>EPxXgDzc>BoOKG{j=(Fgi>Yf=%#0 zaI&UJ8V;%bewovto=YxOu@TgYHif$1Hl^9)S~kw7a@oDcg_AdlYH(LivBTfy?7g@r zx4g%)qS2r7wHF*wTe+vD#nI+(DVX;94{E|Ax%L5lQ?S+BRtYt?hl(b*G3>T^^edxo zTfh|XWDC8Z8wbu3SinGAIC1z{@~<2vrAi;T;r0AABtFUkjn~BC!V?MeScC+K98@wF zS%;mD&&yHIL((RbGY%4Ma7`*jBAu-lCn`F8DVF_0?#y~EUE3#H zE^)P?&U;UbgBNV^clcJfz1%9E;@6*Xifd}8xU~^;C*@W@{gBAjlLV@wtQv~9&`1Xn zwHU?8L>YZkT%Q+&K$+0U=j`Xw4bt#&O(qx0L@z63Dj}t27$ie3&h$4D@UWhv$FsX; z1~z0`Tgu~omy8#?x=RO;5;vJn!@R7z{3w%;?kpvyO1Wh=^X8dlThse1-Q9gR6*}2u z7L%FFV;>h$Aq4hP^b5AlkixA~$czs4T(s6PQ9_VRWTi#T-=bk#r52sBCC@1R%;uK( zn&D{DWDeTfd(7*-mrYkzCnMwC{l$DHKjK&&nQM$zlC6}-)9JIA9a^t5oh}CZ+giGl z$g~*nc>Q<*>_-#NHtMc0hQw0U}bTaM;O%q34d7^hzSH8>}+Vu3=~Oefq~x#eNe zSFs2A^`uXtilr*5SW0ILUXxTy9#C?n5=LDxHE_X$>0$s;O7gIUZLH;zhc)>v)yr@( z?n~`ZZAKM?GE98Ut52$^`Xt)zggipp6d!3*?5YMQayy!#w(v6C5o<+^6E_i$6yngY z^Dr1x_BgX_1azM4w??~1!FYj)TGrHN7U@{kPou7y-)I z?MTcbQ~I@Y`erSaax}w+#fgRxhWIz`Y*?!UTI&K8t_X|VGw&P}5S{ZWm~)NuE&TDQ zZwHm<^l$Ia^o4LRR$uP#E@xPdo_n(_xA5B5j$);~fC8Q4G0aE_`pm~LBkkyuHSY7N zbTPTXrg9my;RY>gwjitHGssbeZ|p!2EwS&5Q&a21((ct0FW`^7P2OX%yX1m*_lVdl zDjG^1MmLI2bH7OcJ?IoUsM4F_enn-20t4c-_sc>5}Z~N+eQQ z-H|O6viy$E?K|%sLBHH5i}d8kdPe-N1{HY~T$xJ9VHEPqGI$#Lu>Rm9;u@4;Lm&Wx>zAq*>U@Oc zmYPS5DbKv-kh~PmF1f~vGuMoIyHjnM9cvKu{KrJRtGwpg;jwFG;4ByJi{mj;ZtUAX znwlB3n)_nQR?K;PzA)?EH#WMzZw|%7lD)xTZ!+HLr(RCr@OlcpB>!CSRZSXABP!$= zP_0bWD8>kp6;51@fp`$QY|71o!x@jlJ5Ry^`I{%J|NGP_HYiLVJ$e*@*y-wXh{^aa zBD6$Z_Ajx@QtN8HUV+vdG3`33^zxal!&q&rdBq6cdA0%00puGaI-t}&WH|jC1^S55 zSBP*nXtgR-dT3}67!%!!IX{t4Kg;*kKuRbCE!_1$bUzTHkDPi%a6Gf{`%}ztaufRg z`eSgkt*0Bo9iSr=$gU#BcNzH|8f8jlQ$u5;cm%=!6s`A*w?JNB7(m#fdxH(GGw(Qr zC7Qe8@#`mO1PlMM#OVUI(SOI>zmI!sx;Os2 z3I*nloFGW4A!$H8k%<}ZE(Oz%PfQA>EgqN7tFw5x@NonT1UX&Q0=30 zAO@n=2qVZI0R(IG%Jj`jID+$brQ_#v%C*ynlsjVbSarM)43{Xd!&eMxEn@m`Ii2iF z+3g9RGa2^j*67m%Gi}3L@~%YM?$5=%T9$2F)>m@bgC4KN8no){Zo@Wx&}&Ie<-^5f zKxcHjJ?5j-AJ6H1=uZV00A3qzC=QK3uAGBnhjO#iwgT$!AZ)8?r6jeK=wc{#5-x^| zW@vV8OJBHhXlCkAe9ARmC|4#XJ^u2DtIgLo;aF`O-`p|0t2@y3pX%&Xd*8-Siipd?T;M0=Lq{~b@s}8Skw1tyx!A$1T9)5&3>Z+9=M1& zkj#jDxFUBiIVRMG7q(#QsOu~-gr(_g0@I$=Z6G6GM=;oBI<$&yTJScthlVcg9X@=| zVAqOxyRR4ycOc&ad;e7r=uF+ahQ{{wVodFz=Mv)c2zN2(es^4qRu z-NBb1p@V#89k8*3-{z?%u!oAun!lI?!a`}_z*w-mRWC#a+ghib)A55ttFIZV99l7P zXr%gjs5cVsjYN7Pk=~yU?di9Kos|ulRCIN*d&6Vb@4R#Q;DG_uvyAkF!?>gjb(UxW z$q8dX7u_e2{|*z5NC@mV1SPRB+g$yeV6VRGZS0w=khVxJYlYWG251*Vp8FwMDW5JL z@9eDDGU8U{q0yYV+OcHAa?zB=C(@Ui>PvD7731{rDBZI)IYMUa@aWi~kx<^{OgdXe zXOoH5qp9Yk%i9sS#TsdK1WF-WIOPa*hW^!;b~xMoo;HuG-TjThZKduV1BrojlP=NW zO;6;Tn{(qCPa&x@WCnw-xLfbaAhou~;K{H7cg$jqdYU6vYZU7hIK2}dAw7J(Kr^&j zez#IuE{SGlMRQiMq!)l~ad6nQN)q{~qBVy;Y1IM)2S-9(ZA~mX(AGMQ#hMcrYvuUi zVJ5GwR5;ShhH14Tj@oK%{P^{|-g3rjMSHPYf~*BJbrg1z6>db@h+1$72wL>@ zudyg{icuBwc2RO_wrTQ;o#BGiTK&VhtX~l18ft%1_@pNNxf4(2Lz?iAgBPA0ws3JIY5~- zhC7qt$$?~ZIv5+sn^)_zBkK#xFD-d~gr1=Sq31(aJBYvtRq z0oze7@&x=)`2QY1Ls$jG4*@@$KB?3oT?zFLJ|Gf+UR?d(0MG~CCQK24o`az9o$DkB zRa9&O3NA?zl$1+@pU3~d!_WliCo7$Ki>oHbs?~?aIgP&#M-u}FM?+n$dKQ%qy}3d0 z&>KHI!sHQHE$PGyM|#)`gM0eTk=m)(v+*(D==8vWfmm-eTtD?7Gx<+H#GYg;RVulM zbG(7mA7b5X4PJZsYad=8XKV4=$7Lw#df;vp=oD-mbjk*hiTwLOr*&r;CB)3SHRY9F zc&#u~bo)xnbA{zam#1_2C%iqWP&Q!jb+?4FLBoZK{>gBBvOk)vOoU@oebJW!{VlF! z#un^raVIH*v(z_e-N8kG=T{mAO<+-Rf57ecMc>2`kwX=DwoLNX?yml3t0tbdz)#G+ zLcM%BgC4}Z!e}?M>if{9G(PNedqwL}I5Y~abub`}iIfuSpcoW2aKw&Cn8tHL!lwiI zA)C9hzP^@p!j}%~^4k1ldev%IvfUC$n*VK0VJvTLa)#jJXKdDW>jRFlo>1CvQ8gkY zf4RtWJj4zm%Dt6%vzSS*clZZ2(#=Iql-sj7Yk;%0&Vrtau9AA|pUNBcEt+695bqio zbU3=ZJACmjQ`S%%4CE$K?TOZo+{z1+v0{_U==Qk1qlh1D_SnkSW<4+|+^$iVlgSRM z;AK1gVRjvKND>dKf|Eo80+tkm)U%)F>R<|Q?*d|!hzE`53qSkTZ+bdAzkmDct>b?@ zEgRnY;Jq|LC+O=kv=xJQY*TY20@Ix=92hicXw|+?Z9#AaFdtdu7({o+8ZV&^_bE!a z1(?z2lFQoCt2zp69c|W1G+A^fZOt9V0fnxqsZsu`Pdjw&p9_^!$x0+1$T>XmaC5+D zGuiXSLe{cuOM@083!yh}Vykgtw2;Oj3~yJ{pxaUJOC3c;)>mReMKP|ZK8poqZ%R$& zqJ1Wzx5M9OXmQT8uiw3Wwy?7O%J34=;>hxXF|WJr0K>0V=de|I5MPgFMmH3Jv{UF!z-(M|gx z)2s~yI?aO#MST=!A!f~6Rh(fE%h@91St+pDiR{WuZe_Y7=x)hQ#$uD%gfE(1>1lVk zT0K5w1a5Ob)*LfiW6h4JJ(!KhaEkXv;%U7$?hoftk|*Q?lbQ2dJqDxKZ1WjS{?D5n zI-S#Ka_D_n1;UV97FWUD)D*T2su#(AsaChdrLdZ`3m)QZ?aNbbE1WIHvcIFujD4}( z6nq6bX1DK}^<~`dw8xY7xZ5ra2J$w0rR;D)8D7We=X55UI+PWiIVUd=N_(iV$Wb*@H)(2OY4N!5&l{lGhTyz<#X^y z;O>J+qb~`p`WzyU5oA z41EX~3e2kEC)I}F_=zC>zX^6SQ>fh1QVGX`S-U45Y7QFhMmuD>jCFi-1DPm*o__>- zevqT5r_vNwTm5o}1fifF>J6#Q|MnpICJv(Iirtp?hw30|wITI;z>c~aG)I`I6PP1j z(M1@94*6UN-8fN2Dh$HVKjPX47cn%@tj%ONhSq2G|1E}I9qkD~Wf4ysIEH#Wxv;lI zYs>}+Lp>I&-(d26-sos*a+pkxCejfi2MI7#Tno#mY7ojd9EkpJjiAb)KW}vqf=2pc zNkY)ME1$<1W(y%jmE9IJQ;%4hJqbJZ63%c)LbTcc9%snXHP$dOK&)XoMyw%tLShZU zA<`ZRupF}q{{qiWa8e?s8RY^xPzSXE8@xFw?@xgg72phQKUl5~#ErI;ZzVepOjBx_ z%_}?}f;1o+%d%r=?<~Gh91%BG{aHxM`1$g>^iJ5afaaMmZBOuw-nZ9&kJj;xP>!^Ti$ms?O9OFWoYdTT%#rX zo8p=<%5g0cCtQownZjbmvTU;kE~vmYmSVS}AH)?x4m|_cYTXfmZ9vpf{zcs3tu0ge zXrGal^EK{p*EW$m1W%IndD>l`H2a){Yz_;thjSZuCx|^HWRuuKnx!H;f!;~np#nWx z0&Ut~5qBuOWxTqPkPS0R*VehiMP#cDgv--Qj0pcN?r|xR(hW7JDX+W_%_dM@(l2;F8dlG`=SSnvhN!r+>0|aObO9< z#^bFa+)eBlT09Hk#4-JM5$>kKSkBtie75LomDn~yxMS=P?tUi1i8ueBLAYayxFq^| zmN{J_+tzIG6+$5{`X-9aBEp?w*I|{i*P@XR~yLxV}uhF(VhUzNHyjS0x&Ue z5P;7`IGpwp!X0NfOY5-&;V^>#A%r`QvYJ-M05Nc7h`@>65P^Yk7E(n3;lRMb%esgf zbZ-%!#X1;KqtHyTeWHdrlikIbgR!qL7gLn0KdZi$X5(yavHDr?O2kk9UcQ&}N_pfH z%~hI9#bP!ei$$Z^j;=0A9JB^xW@-&~WCxYMmXeGiZ4|WfZ_G=vvp6?7?~Gt_mNLF_ zvOVrihjiJ-+(de2)|F_r1QMoyS@_^0bGM&0GiAB@)9Pz)C`+Ej16Dt_I7Gvs#{Ezrr)+qx!x4B|ZlU*&10-#XHkoDkUq+mL!J(28j8b`v8sRsd3~}($znuN^VVb;s$+m>IJ-j$gZ5DsR^v#Fr zQzJB&HyF6~Fwx1ihdqUJwTFL(aYbtD8dV5?Rz{ZQbp3heG|OJ*Iuj4(^b7ob7!3HF zQ)Ho9o)zFXCw>0Nc|KpDHNpGz`B%^L`GNokJ-m;ai&(Rlv8Kqq#oIr{+b;;K>hIsr z--jaue;+v}asPtgz%!HO*$-J1_CLKWP%$HcZc`&us5K38p+TlUu0+K-`0aw$Ny?us z#Y>KOUJWN%hdQpFOplqzm1D|f=FxOVTf3kcvv>Qar~TdbvC!lswT)Ch!gg3w5E=DJ zWLRUgcM$kF3sdwX?6JG6Q#=>imvCjb?3c0+u#>n_^C(=X($A2)b>7y!|CevYbTQeq z?AOf4sOFO9QTUnCep|x+70J_r`8*k~2T5Df9&g5j%x|Q>6#qeI;s{3japcUD^K3Ut z@)JVnEA}$kBxi9iIetg>?c2u=-*HFv)E#$FuTH-inMm(|Pow@5Oes4qm!)0L@&Zp( zw$`Q|ceh-Ty!^{xrw%9~(#DJP`u0nY4Wj_vdWh@O&f6C*D zS(_u4-ekAWk(uZSlumQi2%!UsX6wmf5R8;GJHbzG5!hd zV+fq3&5w;po1@IHB03wxp7<=^NAMtnmO>3zb(I!-i4PN=(*zXwgk0Pr%l2<^w;W3H zP2~`GiiiuS^Ael25e_WJ~^_NK(p`DpdV5 zZ+pRPG+0V+Qycvjy`#ybdYf?cX=_;D6t#SFkIwu%cT~Q~=F|VwqTPd==5P3?QTxQAM%drYYyjO69hkf)Nz8Ls-f{{Dnqw`buiduZ0$ zPye&*KcuUfLRr5WDkF5j)LyB4HnB%2?s=ViIfqVvm3f6-?hq_y7a5m^KRKo@||pkuQ!bn#7e

@(+k|2W>qc`3CI8^(T66~7-U(42cemabn<@8fznuZh>c z!Tkkf&}kQzvsZ9tG|3|TL{-7Cr$%-mg%V{E1tMWUCO9R@IeRv0Q#)*Jz#@k&8fKbz zyrcR%7GY{U|DFXtw{PFB{f`caPqhEK(f*Dz+Q(tu*aWwfKhgdUWuXLJKj0-^PzpP$ zzkBC9nWp-R`23wm_wU-b?{fp<6O9l3hvtI%4-8YuWpcF3JI#9x!r!JOX-1q=j!>BSJE$L2Cd8f9vU6u29!*GTm^36Y2pTE>EtVvK0^Hw zUcTyPesvL7e^$DhDOJabcMz`@?={BT|CV%h_vve8pXW0`oW_!?*NIp20rRmE68cZy zD%=mri}(bJe?m1EnO`nXG|Z{gYMTwt#QX@Pn&afcl@`4Uc8Ex!W^lj)ES;~k2AxK1 z?GV1IU;dNjHEf#?cTZinAz%5V{Cy8LR)2K<8XJX)SpOwA((K1i-y)=ho4{iv(O0uI z8YSP{Mzt*xL3oLbk-37-4fs4u&+td$nQq~8_dI- zx+^=zW9-ttz9(uwOm%L)iFjW)HNA~BeE7o)AN%l!X^z`v2iPBk5;&q9&WE@yOIy9q}6s z!^PR=l*^rLZce&gsb=maJ1RF%^5P3~-bt0u; z+D!mZSm`jUB~!^H2RrU)m&2!oxGRUq;o)2-1A`R#7K_(&f7l%?Ff`PV=^7e(MI9~l z1vZP!N$e zzYxA6VGwd%$e3E=QmLB!fFYX*K-?7_Dc5L+94Q6WC3Udmcw_Vl`q@W)eZFeHFY#vq z=$8`{Pfkp%d}I6}-|=2S058P7cS3%@4!Kg?sHMWgjq84uORbH?0?$o$#-6qjpJ)OD z|DNcGyIUJDnmy*>;nYkaFz9z1lBQ7P`0?DTFF2eVQ1jboVTX4O3~cT&8g^*3nfB3L z)i)PcV+RO87nv{(*0urs0r$97B1TCpRbKP*6a!_kg!IiLtPikPsvlJPrf#*v5r zQwORq@7}NhbQQpU`k=I*5~1W ztQ`uLx^+`Zj6=zOxXV__rUGmsI7d7f+#^?C)X}l&x`~T#kL+@9?P{ASdi`Bf?Zxe> z3ubO-Y)(8D7Ow8xeqwt3`fZ(SMyCp$vB9;O{Mt&ivv|uE*0cjD#t<)c`gQg@NV{=( z0j22_Yimt78m)3)GAV1q`UIDFsdga*Tcjh3-RkI5kRw?w^B`qKP>B9bJQE@)Es9^( zbl{TY(8OR%dm%LH>P&7P-M6!4aAGK#>5Pqey5kpDAJwt1XsgS$?5jG(g)`Zyav@g= zBGHL)t;4l;GCSFw&vixPNsH+MhnpeXVS6?!t>F8)^g^`krWex z>E&Jo#Jeg1R!9PmEbwYuKv=)`UZPou`!Tg!bg@o`;wojuxUeC4Og5?TohBHOEc4 ztuxi{v$^VR3{`0t9&7R!65X4JqyMtzku?_l(k`o@M)yaAU&)#w_xUPK9Y2kSjjWmXb5~mO~{F6czqY50Swn-2g^@xBoHIgoc z0}mw@pe5Xa_ze11;^uiuts0h>UjMn=M86Bqp4`taJ9+sxX7{b~RNL+Kcd1T{xABBvy>;6650uot$;&wR7<}ii8t!;%GrKYs_<6 z%*BRjASRK|x)joZcyY|X6bTV#q@_T{FOG@OT@ei8q$!pV&Jq_xZisbQJY9)h!{%H( ziB%K-l3P^{mbMSBTkc9Y-L1}X;R$oPlM@Aukl2^|y4`{SvWRq=4r(dsXZ zhSO`i^B2Z)kxIxCvRY!Eu9?Ix;Y*3()vdjIhkwR)c?zLuhilSI&2oZvB4be%q(9|Ge~tCQ2QNgrbgz1 zpe$A~$>eH<&7r`zCWx9#KxgiJ-*v4xT~5yKN!!O_3Q7^AXHHoYw)02n7uo&`Yx+Zh z-Zg~>?hJPLLM8v31=KJesop7kDK&<=Ve7|Qo@afbN?W=gM+3!p%7nDkBZ~SDAnMs_ zRUn{RrU}&hL+Jf%4hxsb9wLO{C?oa-?A@8m7p#7Vt*icu$vb9y0)=fO$B+0E7Dvi= z@MlMl9v>Xsf9{kL4I_So{Sy74$})cJA-&z>ak`J|8+Crb98C%k*(LR1wjKkT%!SY?T&x=%b}1)q{jnl4uamOs(Yg# zmuoas+KZE!DSs_N(&b|0rHNr#fAOj?^J?{OVTOHl&z|ZkVZ)w1n2lO1M7O|GctAEa zAqZGY8=RyPQkq0<48InhQm_ylV&AL!*!MbLJ&6W?Jn;BH^{aSbZ4{e&6w(jUp(xf$ zbf-m|K|&J;l)*-yPOH^`SyIRi_JA8s9V(5+>l5Z&UXEk1_~4}DnO+G=#BUMODC#&4 z8lY#Eca%{42Q^YD835`bmIQS*$i8!ceWw~cQ2(p?n`0|i9lz?rFW*!B{*i00JyQL_ z-Cw!j#o5^pty;x~fAW*+=e{Sz5e?i@MSbXnZ+(yS4rGk{AbReUwO1T6^cXdXApt84 zcDd2m=%BiU(jKOcKFdRc`OX;tl&J~NAiYB{E5z}@6Xmhrk6#&i$2(5me}Cx8iAU~v zu$VpU0`4xil3ukqp0y%)IDN~)V`6-#)JSX6s zlPnIqV2U&dy;BQc>=f>;ERYs4E&D7x46VIZW`0~DD3#g<3g;xb7|RK_2&tDyWpH@c z(OtWavitTPJcu9aNgp$_=h(HllW0EyoKw}KK6V!~gJ5t)hwK9OLG~529zzvxL^LCF zpn|F>Glg8PLX9i3;L+;gWZ(p}116q0iHDRE<%6qt?V8=WZS}V8v)evAyKC3#o%mz> z>g|LSMOlV@MWAXaMAOYwhg#OqpiwB5)PIs~8knzCyrk zes6!J34z)gjTQi*Rx6;ldESNgfm~z(^V~hfp&#$~6rQDkU1FIp7v&+SRDY%N2UcA-0WG-}BT{ zY?Ej2UeT!poON$>2In5fIkv8~m2u}x1sRecXN^|l9( zub8;uezeqsmfj(>p-+^3A9aZ#IyJzAA+^Nmg{)H4E7KAJ?P1#vU3uuxmDJjudyXB$ z4_Yh8=HYq!UYxUSGB2uzsgKLem8j2m+?7PfT+gI)u9tJ%Ix!&nLlJ}TsI#xdlKTAr zW-FAcJ2e_0Hy7*{?X<9lA`2@SMJZm9 zYe6I)4l;rT{YD6HjX?|6_&f>>@(Ir+N^yfR+L`E>Xlb3!#7Z%PKHimVS)Og1>S_+V zwOUsgiZ+KM!df63*h3a~*ol8e1cwt!jD#}>USM?={>*U6$gR%hXS3Dc+M_mm%#OtT z-l)+S^?JibN8AYyK^mLq^gjy&LOW!FFeE{WAc_VW)seUpSkj++78)M{fW_?hqGspp z2xB>UcBJ1ZTiikR54mc8;~OT7tA1YS@hp%%T66jWwn^Rr3eY{~G;vKaSHr}Xh*%Db zo#s|zf#aLxgZ;i`9;epR*z933yz-8DojRAc*&_&#^^6*HTa=oBcVT7U5dSks8EYXa z2;T*N!>fO#;1Xi7Ah@W_JQr+~SQ`Ks*NuYkkZqq5@z!~*Jd`|rFm2LeisHJ%7K}ZZ z8HwdCx@Ot

D>(ab~DXQD_-cy>q2| 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 AKmY&$ literal 0 HcmV?d00001 diff --git a/raleway-regular.ttf b/raleway-regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..9a70667f21431c46605be0da7fa09e11c9822b49 GIT binary patch literal 164120 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%0A5`A;pN)-|zu@XBEPHKJb|kf$DDjcgE1 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 literal 0 HcmV?d00001 From 496c169f32aff62615548cfbd397b77e3e6a8b78 Mon Sep 17 00:00:00 2001 From: Q Date: Tue, 12 Mar 2024 17:21:03 +0000 Subject: [PATCH 04/21] fix rendering of operator name and notes --- node.json | 12 ++++++-- node.lua | 76 +++++++++++++++++++++++++---------------------- translations.json | 2 +- 3 files changed, 51 insertions(+), 39 deletions(-) diff --git a/node.json b/node.json index 1fe1af5..5b20464 100644 --- a/node.json +++ b/node.json @@ -158,20 +158,26 @@ "hint": "Filter out any transport where destination matches (matched after 'remove string from destination' - regex possible)" }, { "title": "Show vehicle type", - "ui_width": 4, + "ui_width": 3, "name": "show_vehicle_type", "type": "boolean", "default": true + }, { + "title": "Show operator name", + "ui_width": 3, + "name": "show_operator_name", + "type": "boolean", + "default": false }, { "title": "Large Minutes", - "ui_width": 4, + "ui_width": 3, "name": "large_minutes", "type": "boolean", "default": true, "hint": "Show 'in X minutes' in large font on the right, instead of small print in the info line" }, { "title": "Coloured Line Numbers", - "ui_width": 4, + "ui_width": 3, "name": "coloured_lines", "type": "boolean", "default": true, diff --git a/node.lua b/node.lua index e76c910..0f547c7 100644 --- a/node.lua +++ b/node.lua @@ -183,7 +183,7 @@ local function draw(real_width, real_height) if number_of_stops > 1 then platform = preposition .. " " .. dep.stop if dep.platform ~= json.null then - platform = platform .. ", " .. preposition " " .. + platform = platform .. ", " .. translations[CONFIG.language].platform_types[dep.platform.type] .. " " .. dep.platform.value end @@ -234,6 +234,29 @@ local function draw(real_width, real_height) text_x = text_x + icon_size + 20 end + local text_y_start = text_y + text_y = text_y + text_upper_size + + -- operator name + if CONFIG.show_operator_name then + if dep.operator_name ~= json.null then + if platform ~= "" or not CONFIG.large_minutes then + symbol_height = symbol_height + text_lower_size + text_y = text_y + text_lower_size + end + CONFIG.second_font:write( + text_x, + text_y, + string.format(translations[CONFIG.language].operator_name, dep.operator_name), + text_lower_size, + CONFIG.second_colour.r, + CONFIG.second_colour.g, + CONFIG.second_colour.b, + CONFIG.second_colour.a + ) + end + end + -- third line (if exists) -- needs to go first, because we use the background colour -- to hide the text outside the view area @@ -243,7 +266,6 @@ local function draw(real_width, real_height) real_width, text_x + (real_width/2) ) - local scroller_y = text_y + text_upper_size if platform == "" and CONFIG.large_minutes then --[[ @@ -261,14 +283,14 @@ local function draw(real_width, real_height) else -- increase symbol height to account for scrolling text symbol_height = symbol_height + text_lower_size - scroller_y = scroller_y + text_lower_size + text_y = text_y + text_lower_size end -- place text scrolling_text( dep.id, - text_x, scroller_y, - max_scroller_width, scroller_y + text_lower_size, + text_x, text_y, + max_scroller_width, text_y + text_lower_size, dep.notes, CONFIG.second_font, CONFIG.second_colour.r, @@ -278,24 +300,6 @@ local function draw(real_width, real_height) ) end - if dep.operator_name ~= json.null then - local name_y = text_y + text_upper_size - if platform ~= "" or not CONFIG.large_minutes then - symbol_height = symbol_height + text_lower_size - name_y = name_y + text_lower_size - end - CONFIG.second_font:write( - text_x, - name_y, - string.format(translations[CONFIG.language].operator_name, dep.operator_name), - text_lower_size, - CONFIG.second_colour.r, - CONFIG.second_colour.g, - CONFIG.second_colour.b, - CONFIG.second_colour.a - ) - end - -- vehicle type if CONFIG.show_vehicle_type then if categories[dep.icon] then @@ -341,7 +345,7 @@ local function draw(real_width, real_height) -- first line CONFIG.heading_font:write( text_x, - text_y, + text_y_start, heading, text_upper_size, CONFIG.heading_colour.r, @@ -357,15 +361,15 @@ local function draw(real_width, real_height) time_font:write( real_width - time_width, - text_y, time, text_upper_size, + text_y_start, time, text_upper_size, tr, tg, tb, 1 ) - text_y = text_y + text_upper_size + text_y_start = text_y_start + text_upper_size if platform ~= "" then CONFIG.second_font:write( text_x, - text_y, + text_y_start, platform, text_lower_size, CONFIG.second_colour.r, @@ -376,7 +380,7 @@ local function draw(real_width, real_height) end CONFIG.second_font:write( real_width - append_width, - text_y, + text_y_start, append, text_lower_size, CONFIG.second_colour.r, @@ -388,15 +392,15 @@ local function draw(real_width, real_height) local time_width = time_font:width(time, text_lower_size) local time_after_width = CONFIG.time_font:width(" ", text_lower_size) - text_y = text_y + text_upper_size + text_y_start = text_y_start + text_upper_size time_font:write( text_x, - text_y, time, text_lower_size, + text_y_start, time, text_lower_size, tr, tg, tb, 1 ) CONFIG.second_font:write( text_x + time_width + time_after_width, - text_y, + text_y_start, platform .. " " .. append, text_lower_size, CONFIG.second_colour.r, @@ -414,10 +418,12 @@ local function draw(real_width, real_height) end end - local nre_width, nre_height = nre_powered_logo:size() - local nre_height_scaled = 75 - local nre_width_scaled = nre_width * (nre_height_scaled / nre_height) - nre_powered_logo:draw(real_width - nre_width_scaled, real_height - nre_height_scaled, real_width, real_height) + if CONFIG.nre_powered then + local nre_width, nre_height = nre_powered_logo:size() + local nre_height_scaled = 75 + local nre_width_scaled = nre_width * (nre_height_scaled / nre_height) + nre_powered_logo:draw(real_width - nre_width_scaled, real_height - nre_height_scaled, real_width, real_height) + end end function node.render() diff --git a/translations.json b/translations.json index f733b0e..178652b 100644 --- a/translations.json +++ b/translations.json @@ -12,7 +12,7 @@ "next_timestamp": "und wieder %s", "in_the_past": "In der Vergangenheit", "arrival_from": "Ankunft von %s", - "operator_name": "Ein Angebot von %s", + "operator_name": "Ein Angebot der %s", "platform_types": { "U": "", "PL": "Gleis", From dc47f7d8f420775089c4b53c64fa616b6c1a444a Mon Sep 17 00:00:00 2001 From: Q Date: Tue, 12 Mar 2024 17:24:02 +0000 Subject: [PATCH 05/21] update TfEMF to prod --- mapping.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mapping.py b/mapping.py index 7b6d55c..d7eb314 100644 --- a/mapping.py +++ b/mapping.py @@ -13,7 +13,7 @@ "rmv": "https://www.rmv.de/hapi/{endpoint}?id={stop}&duration={minutes}&format=json&accessId={key}", "vbb": "https://fahrinfo.vbb.de/fahrinfo/restproxy/2.32/{endpoint}?id={stop}&duration={minutes}&format=json&accessId={key}", "vbb-test": "https://vbb.demo.hafas.de/fahrinfo/restproxy/2.32/{endpoint}?id={stop}&duration={minutes}&format=json&accessId={key}", - "tfemf": "http://44.31.105.108:8000/hafas/{endpoint}?id={stop}&duration={minutes}&format=json&lang={language}", + "tfemf": "https://tracking.tfemf.uk/hafas/{endpoint}?id={stop}&duration={minutes}&format=json&lang={language}", } CATEGORY_MAPPING = { From c7937d131a963f3c1b694a63e6686d58607c9265 Mon Sep 17 00:00:00 2001 From: Q Date: Tue, 12 Mar 2024 20:49:57 +0000 Subject: [PATCH 06/21] add margin option --- mapping.py | 3 ++- node.json | 17 +++++++++++++---- node.lua | 21 ++++++++++----------- translations.json | 8 ++++---- 4 files changed, 29 insertions(+), 20 deletions(-) diff --git a/mapping.py b/mapping.py index d7eb314..5fb93da 100644 --- a/mapping.py +++ b/mapping.py @@ -13,7 +13,8 @@ "rmv": "https://www.rmv.de/hapi/{endpoint}?id={stop}&duration={minutes}&format=json&accessId={key}", "vbb": "https://fahrinfo.vbb.de/fahrinfo/restproxy/2.32/{endpoint}?id={stop}&duration={minutes}&format=json&accessId={key}", "vbb-test": "https://vbb.demo.hafas.de/fahrinfo/restproxy/2.32/{endpoint}?id={stop}&duration={minutes}&format=json&accessId={key}", - "tfemf": "https://tracking.tfemf.uk/hafas/{endpoint}?id={stop}&duration={minutes}&format=json&lang={language}", + "tfemf": "http://172.23.152.51:8000/hafas/{endpoint}?id={stop}&duration={minutes}&format=json&lang={language}", + # "tfemf": "https://tracking.tfemf.uk/hafas/{endpoint}?id={stop}&duration={minutes}&format=json&lang={language}", } CATEGORY_MAPPING = { diff --git a/node.json b/node.json index 5b20464..0d4b953 100644 --- a/node.json +++ b/node.json @@ -212,16 +212,25 @@ ["de", "Deutch"], ["en", "English"], ["cy", "Cymraeg"] - ] + ], + "ui_width": 3 }, { "name": "timezone", "title": "Timezone", "type": "string", - "default": "Europe/Berlin" + "default": "Europe/Berlin", + "ui_width": 3 }, { "name": "nre_powered", - "title": "Show National Rail Equiries Logo", + "title": "Show National Rail Enquiries Logo", "type": "boolean", - "default": false + "default": false, + "ui_width": 3 + }, { + "name": "margin", + "title": "Outside margin", + "type": "integer", + "default": 0, + "ui_width": 3 }] } diff --git a/node.lua b/node.lua index 0f547c7..5dbc361 100644 --- a/node.lua +++ b/node.lua @@ -101,7 +101,7 @@ local function draw(real_width, real_height) 1 ) local now = unixnow() - local y = 0 + local y = CONFIG.margin local now_for_fade = now + (CONFIG.offset * 60) local stops = {} local number_of_stops = 0 @@ -109,7 +109,7 @@ local function draw(real_width, real_height) local line_height = CONFIG.line_height local margin_bottom = CONFIG.line_height * 0.2 - local available_height = real_height + local available_height = real_height - (2 * CONFIG.margin) if CONFIG.nre_powered then available_height = available_height - 100 end @@ -138,7 +138,6 @@ local function draw(real_width, real_height) local remaining = math.floor((dep.timestamp - now) / 60) local append = "" local platform = "" - local x = 0 local heading = dep.direction local preposition = translations[CONFIG.language].from @@ -227,7 +226,7 @@ local function draw(real_width, real_height) end local x = 0 - local text_x = symbol_width + 20 + local text_x = symbol_width + 20 + CONFIG.margin local text_y = y + (margin_bottom * 0.5) if CONFIG.show_vehicle_type then @@ -305,8 +304,8 @@ local function draw(real_width, real_height) if categories[dep.icon] then local icon_y = y + ( symbol_height - icon_size ) / 2 categories[dep.icon]:draw( - 0, icon_y, - icon_size, icon_y+icon_size + CONFIG.margin, icon_y, + icon_size+CONFIG.margin, icon_y+icon_size ) end x = icon_size + 20 @@ -320,8 +319,8 @@ local function draw(real_width, real_height) 1, }} white:draw( - x, y, - x + symbol_width, y + symbol_height + x + CONFIG.margin, y, + x + symbol_width + CONFIG.margin, y + symbol_height ) colored:deactivate() local actual_symbol_width = CONFIG.line_font:width(dep.symbol, icon_size) @@ -334,7 +333,7 @@ local function draw(real_width, real_height) end local symbol_margin_top = (symbol_height - symbol_font_size) / 2 CONFIG.line_font:write( - x + symbol_width/2 - actual_symbol_width/2, + x + symbol_width/2 - actual_symbol_width/2 + CONFIG.margin, y + symbol_margin_top, dep.symbol, symbol_font_size, @@ -360,7 +359,7 @@ local function draw(real_width, real_height) local append_width = CONFIG.second_font:width(append, text_lower_size) time_font:write( - real_width - time_width, + real_width - time_width - CONFIG.margin, text_y_start, time, text_upper_size, tr, tg, tb, 1 ) @@ -379,7 +378,7 @@ local function draw(real_width, real_height) ) end CONFIG.second_font:write( - real_width - append_width, + real_width - append_width - CONFIG.margin, text_y_start, append, text_lower_size, diff --git a/translations.json b/translations.json index 178652b..c0bcac6 100644 --- a/translations.json +++ b/translations.json @@ -1,7 +1,7 @@ { "de": { "time_min": "%d min", - "time_hour_min": "%d std %02d min", + "time_hour_min": "%d std %d min", "time_hour": "%d std", "from": "von", "at": "an", @@ -29,7 +29,7 @@ }, "en": { "time_min": "%d min", - "time_hour_min": "%dh %02d min", + "time_hour_min": "%dh %d min", "time_hour": "%dh", "from": "from", "at": "at", @@ -57,10 +57,10 @@ }, "cy": { "time_min": "%d mun", - "time_hour_min": "%d awr %02d mun", + "time_hour_min": "%d awr %d mun", "time_hour": "%d awr", "from": "o", - "at": "tuag at", + "at": "ar", "now": "ynawr", "in_min": "mewn %s", "next_min": "a mewn %s", From 21ea26861efba084401a999fdea612c3c61d7db7 Mon Sep 17 00:00:00 2001 From: Q Date: Tue, 12 Mar 2024 20:52:19 +0000 Subject: [PATCH 07/21] margin on NRE logo --- node.lua | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/node.lua b/node.lua index 5dbc361..e96f805 100644 --- a/node.lua +++ b/node.lua @@ -421,7 +421,11 @@ local function draw(real_width, real_height) local nre_width, nre_height = nre_powered_logo:size() local nre_height_scaled = 75 local nre_width_scaled = nre_width * (nre_height_scaled / nre_height) - nre_powered_logo:draw(real_width - nre_width_scaled, real_height - nre_height_scaled, real_width, real_height) + nre_powered_logo:draw( + real_width - nre_width_scaled - CONFIG.margin, + real_height - nre_height_scaled - CONFIG.margin, + real_width - CONFIG.margin, real_height - CONFIG.margin + ) end end From d85830b31e3b4a6787f5e36f5364247fd22a4e88 Mon Sep 17 00:00:00 2001 From: Q Date: Tue, 12 Mar 2024 20:53:45 +0000 Subject: [PATCH 08/21] update config layout --- node.json | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/node.json b/node.json index 0d4b953..9a2058f 100644 --- a/node.json +++ b/node.json @@ -164,30 +164,36 @@ "default": true }, { "title": "Show operator name", - "ui_width": 3, + "ui_width": 4, "name": "show_operator_name", "type": "boolean", "default": false }, { "title": "Large Minutes", - "ui_width": 3, + "ui_width": 4, "name": "large_minutes", "type": "boolean", "default": true, "hint": "Show 'in X minutes' in large font on the right, instead of small print in the info line" }, { "title": "Coloured Line Numbers", - "ui_width": 3, + "ui_width": 4, "name": "coloured_lines", "type": "boolean", "default": true, "hint": "if deselected, lines will appear as grey box with white text" }, { + "name": "nre_powered", + "title": "Show National Rail Enquiries Logo", + "type": "boolean", + "default": false, + "ui_width": 4 + },{ "title": "Hours to request", "ui_width": 4, "name": "request_hours", "type": "integer", - "default": 3, + "default": 4, "hint": "how many hours of fahrplan to show" }, { "title": "Time Offset in minutes", @@ -213,24 +219,18 @@ ["en", "English"], ["cy", "Cymraeg"] ], - "ui_width": 3 + "ui_width": 4 }, { "name": "timezone", "title": "Timezone", "type": "string", "default": "Europe/Berlin", - "ui_width": 3 - }, { - "name": "nre_powered", - "title": "Show National Rail Enquiries Logo", - "type": "boolean", - "default": false, - "ui_width": 3 + "ui_width": 4 }, { "name": "margin", "title": "Outside margin", "type": "integer", "default": 0, - "ui_width": 3 + "ui_width": 4 }] } From fa9ca94f1e3332605e3896a661fdc36b5cab0556 Mon Sep 17 00:00:00 2001 From: Q Date: Tue, 12 Mar 2024 20:54:19 +0000 Subject: [PATCH 09/21] update config layout, take 2 --- node.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/node.json b/node.json index 9a2058f..646e197 100644 --- a/node.json +++ b/node.json @@ -158,7 +158,7 @@ "hint": "Filter out any transport where destination matches (matched after 'remove string from destination' - regex possible)" }, { "title": "Show vehicle type", - "ui_width": 3, + "ui_width": 4, "name": "show_vehicle_type", "type": "boolean", "default": true @@ -187,7 +187,7 @@ "title": "Show National Rail Enquiries Logo", "type": "boolean", "default": false, - "ui_width": 4 + "ui_width": 8 },{ "title": "Hours to request", "ui_width": 4, From e732b11b07a95f31ea6cd71be883f5c468cab784 Mon Sep 17 00:00:00 2001 From: Q Date: Tue, 12 Mar 2024 23:21:10 +0000 Subject: [PATCH 10/21] output scheduled departure time --- hafas_event.py | 11 ++++++----- hafas_fetcher.py | 5 ++++- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/hafas_event.py b/hafas_event.py index b4ca095..f93f280 100644 --- a/hafas_event.py +++ b/hafas_event.py @@ -59,13 +59,14 @@ def __init__(self, data): else: self.category_icon = "" - scheduled = datetime.strptime( + self.scheduled = datetime.strptime( data["date"] + " " + data["time"], "%Y-%m-%d %H:%M:%S", ) if data.get("tz", None) is not None: - scheduled = scheduled.replace(tzinfo=FixedOffset(data["tz"], "")) + self.scheduled = self.scheduled.replace(tzinfo=FixedOffset(data["tz"], "")) else: - scheduled = scheduled.replace(tzinfo=pytz.timezone(CONFIG["timezone"])) + self.scheduled = self.scheduled.replace(tzinfo=pytz.timezone(CONFIG["timezone"])) + if "rtTime" in data and "rtDate" in data: self.realtime = datetime.strptime( data["rtDate"] + " " + data["rtTime"], "%Y-%m-%d %H:%M:%S" @@ -74,10 +75,10 @@ def __init__(self, data): self.realtime = self.realtime.replace(tzinfo=FixedOffset(data["rtTz"], "")) else: self.realtime = self.realtime.replace(tzinfo=pytz.timezone(CONFIG["timezone"])) - diff = self.realtime - scheduled + diff = self.realtime - self.scheduled self.delay = int(diff.total_seconds() / 60) else: - self.realtime = scheduled + self.realtime = self.scheduled self.delay = -1 def __lt__(self, other): diff --git a/hafas_fetcher.py b/hafas_fetcher.py index 6a29090..d03c5ce 100644 --- a/hafas_fetcher.py +++ b/hafas_fetcher.py @@ -35,7 +35,8 @@ def fetch_and_parse(self, stop_id): dep.follow = follow break else: - if dep.category == follow.category and dep.destination == follow.destination and dep.id != follow.id: + if dep.category == follow.category and dep.destination == follow.destination and \ + dep.operator == follow.operator and dep.id != follow.id: dep.follow = follow break self.departures.extend(departures) @@ -175,6 +176,8 @@ def write_json(self): "symbol": dep.symbol, "time": dep.realtime.astimezone(self.tz).strftime("%H:%M"), "timestamp": Helper.to_unixtimestamp(dep.realtime), + "scheduled_time": dep.scheduled.astimezone(self.tz).strftime("%H:%M"), + "scheduled_timestamp": Helper.to_unixtimestamp(dep.scheduled), } departure.update(dep.line_colour) out.append(departure) From 204d72636044baa91550909ab7e16728c2f020e8 Mon Sep 17 00:00:00 2001 From: Q Date: Tue, 12 Mar 2024 23:21:20 +0000 Subject: [PATCH 11/21] handle case of no services --- node.lua | 36 ++++++++++++++++++++++++++++++++++++ translations.json | 1 + 2 files changed, 37 insertions(+) diff --git a/node.lua b/node.lua index e96f805..e7a1ab0 100644 --- a/node.lua +++ b/node.lua @@ -114,6 +114,8 @@ local function draw(real_width, real_height) available_height = available_height - 100 end + local has_departures = false + for idx, dep in ipairs(events) do if dep.timestamp > now_for_fade - fadeout then if now_for_fade > dep.timestamp then @@ -128,6 +130,7 @@ local function draw(real_width, real_height) for idx, dep in ipairs(events) do if dep.timestamp > now_for_fade - fadeout then + has_departures = true if y < 0 and dep.timestamp >= now_for_fade then y = 0 end @@ -202,6 +205,7 @@ local function draw(real_width, real_height) end local time_colour = CONFIG.time_colour + local scheduled_time_color = CONFIG.time_colour if dep.delay >= 0 then time_font = CONFIG.realtime_font time_colour = CONFIG.realtime_punctual_colour @@ -210,6 +214,7 @@ local function draw(real_width, real_height) end end local tr, tg, tb = time_colour.r, time_colour.g, time_colour.b + local str, stg, stb = scheduled_time_color.r, scheduled_time_color.g, scheduled_time_color.b local icon_size = line_height * 0.66 local text_upper_size = line_height * 0.5 @@ -356,6 +361,7 @@ local function draw(real_width, real_height) -- second line if CONFIG.large_minutes then local time_width = time_font:width(time, text_upper_size) + local scheduled_time_width = time_font:width(dep.scheduled_time, text_lower_size) local append_width = CONFIG.second_font:width(append, text_lower_size) time_font:write( @@ -363,6 +369,20 @@ local function draw(real_width, real_height) text_y_start, time, text_upper_size, tr, tg, tb, 1 ) + if dep.delay > 0 then + time_font:write( + real_width - time_width - scheduled_time_width - CONFIG.margin - 5, + text_y_start + (text_upper_size - text_lower_size), dep.scheduled_time, text_lower_size, + str, stg, stb, 1 + ) + local text_middle = text_y_start + (text_upper_size - text_lower_size) + (text_lower_size / 2) + white:draw( + real_width - time_width - scheduled_time_width - CONFIG.margin - 5, + text_middle, + real_width - time_width - CONFIG.margin - 5, + text_middle + 1 + ) + end text_y_start = text_y_start + text_upper_size if platform ~= "" then @@ -417,6 +437,22 @@ local function draw(real_width, real_height) end end + if not has_departures then + local text = translations[CONFIG.language].no_departures + local font_size = CONFIG.line_height + local text_width = CONFIG.heading_font:width(text, font_size) + CONFIG.heading_font:write( + (real_width - text_width) / 2, + (real_height - font_size) / 2, + text, + font_size, + CONFIG.heading_colour.r, + CONFIG.heading_colour.g, + CONFIG.heading_colour.b, + CONFIG.heading_colour.a + ) + end + if CONFIG.nre_powered then local nre_width, nre_height = nre_powered_logo:size() local nre_height_scaled = 75 diff --git a/translations.json b/translations.json index c0bcac6..35c0677 100644 --- a/translations.json +++ b/translations.json @@ -41,6 +41,7 @@ "in_the_past": "In the past", "arrival_from": "Arrival from %s", "operator_name": "A %s service", + "no_departures": "No upcoming services", "platform_types": { "U": "", "PL": "platform", From df662591e2962b7940539bd1557e8a6632971313 Mon Sep 17 00:00:00 2001 From: Q Date: Tue, 12 Mar 2024 23:38:47 +0000 Subject: [PATCH 12/21] option to add header --- mapping.py | 3 +-- node.json | 5 +++++ node.lua | 27 ++++++++++++++++++++++++++- 3 files changed, 32 insertions(+), 3 deletions(-) diff --git a/mapping.py b/mapping.py index 5fb93da..d7eb314 100644 --- a/mapping.py +++ b/mapping.py @@ -13,8 +13,7 @@ "rmv": "https://www.rmv.de/hapi/{endpoint}?id={stop}&duration={minutes}&format=json&accessId={key}", "vbb": "https://fahrinfo.vbb.de/fahrinfo/restproxy/2.32/{endpoint}?id={stop}&duration={minutes}&format=json&accessId={key}", "vbb-test": "https://vbb.demo.hafas.de/fahrinfo/restproxy/2.32/{endpoint}?id={stop}&duration={minutes}&format=json&accessId={key}", - "tfemf": "http://172.23.152.51:8000/hafas/{endpoint}?id={stop}&duration={minutes}&format=json&lang={language}", - # "tfemf": "https://tracking.tfemf.uk/hafas/{endpoint}?id={stop}&duration={minutes}&format=json&lang={language}", + "tfemf": "https://tracking.tfemf.uk/hafas/{endpoint}?id={stop}&duration={minutes}&format=json&lang={language}", } CATEGORY_MAPPING = { diff --git a/node.json b/node.json index 646e197..b255fd3 100644 --- a/node.json +++ b/node.json @@ -115,6 +115,11 @@ "name": "background_colour", "type": "color", "default": [0,0,0,1] + }, { + "title": "Header", + "name": "header", + "type": "string", + "default": "" }, { "title": "Display Options", "type": "section" diff --git a/node.lua b/node.lua index e7a1ab0..a6bf7f6 100644 --- a/node.lua +++ b/node.lua @@ -114,12 +114,20 @@ local function draw(real_width, real_height) available_height = available_height - 100 end + if CONFIG.header ~= "" then + available_height = available_height - line_height + y = y + line_height + margin_bottom + end + local has_departures = false + local y_dec = 0 + local fade_timestamp = 0 for idx, dep in ipairs(events) do if dep.timestamp > now_for_fade - fadeout then if now_for_fade > dep.timestamp then - y = (y - line_height - margin_bottom) / fadeout * (now_for_fade - dep.timestamp) + y_dec = y_dec + line_height + margin_bottom + fade_timestamp = dep.timestamp end end if not stops[dep.stop] then @@ -127,6 +135,9 @@ local function draw(real_width, real_height) end stops[dep.stop] = true end + if y_dec ~= 0 then + y = y - (y_dec * (now_for_fade - fade_timestamp) / fadeout) + end for idx, dep in ipairs(events) do if dep.timestamp > now_for_fade - fadeout then @@ -437,6 +448,20 @@ local function draw(real_width, real_height) end end + if CONFIG.header ~= "" then + bg:draw(0, 0, real_width, line_height + margin_bottom + CONFIG.margin) + CONFIG.heading_font:write( + CONFIG.margin, + CONFIG.margin, + CONFIG.header, + line_height, + CONFIG.heading_colour.r, + CONFIG.heading_colour.g, + CONFIG.heading_colour.b, + CONFIG.heading_colour.a + ) + end + if not has_departures then local text = translations[CONFIG.language].no_departures local font_size = CONFIG.line_height From b7fdd2772e2125c35bb9003328a0f918eb9da9b9 Mon Sep 17 00:00:00 2001 From: Q Date: Tue, 12 Mar 2024 23:41:21 +0000 Subject: [PATCH 13/21] translation for no departures --- translations.json | 2 ++ 1 file changed, 2 insertions(+) diff --git a/translations.json b/translations.json index 35c0677..e3f6c74 100644 --- a/translations.json +++ b/translations.json @@ -13,6 +13,7 @@ "in_the_past": "In der Vergangenheit", "arrival_from": "Ankunft von %s", "operator_name": "Ein Angebot der %s", + "no_departures": "Keine Abfahrten", "platform_types": { "U": "", "PL": "Gleis", @@ -70,6 +71,7 @@ "in_the_past": "Yn y gorffennol", "arrival_from": "Cyrrhaeddiad o %s", "operator_name": "Gwasanaeth %s", + "no_departures": "Does dim gwasanaethau ar y gorwel", "platform_types": { "U": "", "PL": "blatfform", From 8d5dee87e4f98821ce86000f0fa8ba6192b3d84b Mon Sep 17 00:00:00 2001 From: Q Date: Wed, 13 Mar 2024 13:56:11 +0000 Subject: [PATCH 14/21] show cancelled trains --- hafas_event.py | 24 ++++++++----- hafas_fetcher.py | 5 +-- node.json | 11 ++++-- node.lua | 90 +++++++++++++++++++++++++++++------------------ translations.json | 18 ++++++++++ 5 files changed, 101 insertions(+), 47 deletions(-) diff --git a/hafas_event.py b/hafas_event.py index f93f280..ca345b1 100644 --- a/hafas_event.py +++ b/hafas_event.py @@ -30,6 +30,7 @@ def __init__(self, data): self.follow = None self.id = data["JourneyDetailRef"]["ref"] + self.cancelled = data.get("cancelled", False) for product in data["Product"]: if product.get("name") and product.get("catCode"): @@ -171,15 +172,19 @@ def notes(self): notes = [] if "Notes" in self.json: for note in self.json["Notes"]["Note"]: + note_type = note["type"].upper() # Apparently: # A: Accessibility Information # I: Internal Stuff # R: Travel information ("faellt aus" etc.) - if note["type"].upper() in ("R",): - notes.append(note["value"]) - if notes: - return ' | '.join(notes) - return None + # P: Cancellation reason + # D: Late running reason + if note_type in ("R", "P", "D"): + notes.append({ + "type": note_type, + "text": note["value"] + }) + return notes @property def stop(self): @@ -187,10 +192,13 @@ def stop(self): @property def platform(self): - if "platform" in self.json: + if "rtPlatform" in self.json or "platform" in self.json: + platform = self.json["rtPlatform"] if "rtPlatform" in self.json else self.json["platform"] + if platform.get("hidden", False): + return None return { - "type": self.json["platform"].get("type", "X"), - "value": self.json["platform"].get("text", ""), + "type": platform.get("type", "X"), + "value": platform.get("text", ""), } if "track" in self.json: return { diff --git a/hafas_fetcher.py b/hafas_fetcher.py index d03c5ce..b2f254a 100644 --- a/hafas_fetcher.py +++ b/hafas_fetcher.py @@ -31,12 +31,12 @@ def fetch_and_parse(self, stop_id): if dep.symbol == follow.symbol and ( (dep.platform != "" and dep.platform == follow.platform) or dep.destination == follow.destination - ): + ) and not follow.cancelled: dep.follow = follow break else: if dep.category == follow.category and dep.destination == follow.destination and \ - dep.operator == follow.operator and dep.id != follow.id: + dep.operator == follow.operator and dep.id != follow.id and not follow.cancelled: dep.follow = follow break self.departures.extend(departures) @@ -178,6 +178,7 @@ def write_json(self): "timestamp": Helper.to_unixtimestamp(dep.realtime), "scheduled_time": dep.scheduled.astimezone(self.tz).strftime("%H:%M"), "scheduled_timestamp": Helper.to_unixtimestamp(dep.scheduled), + "cancelled": dep.cancelled, } departure.update(dep.line_colour) out.append(departure) diff --git a/node.json b/node.json index b255fd3..1c40cc7 100644 --- a/node.json +++ b/node.json @@ -97,18 +97,25 @@ "hint": "Font to use for times when real-time information is available" }, { "title": "Real-Time Colour (on time)", - "ui_width": 3, + "ui_width": 2, "name": "realtime_punctual_colour", "type": "color", "default": [1,1,1,1], "hint": "Colour to use for times where real-time information is available and the service is on-time" }, { "title": "Real-Time Colour (delayed)", - "ui_width": 3, + "ui_width": 2, "name": "realtime_delayed_colour", "type": "color", "default": [1,1,1,1], "hint": "Colour to use for times where real-time information is available and the service is delayed" + }, { + "title": "Real-Time Colour (cancelled)", + "ui_width": 2, + "name": "realtime_cancelled_colour", + "type": "color", + "default": [1,1,1,1], + "hint": "Colour to use for when the service is cancelled" }, { "title": "Background Colour", "ui_width": 4, diff --git a/node.lua b/node.lua index a6bf7f6..e0e7c3b 100644 --- a/node.lua +++ b/node.lua @@ -101,7 +101,6 @@ local function draw(real_width, real_height) 1 ) local now = unixnow() - local y = CONFIG.margin local now_for_fade = now + (CONFIG.offset * 60) local stops = {} local number_of_stops = 0 @@ -109,25 +108,36 @@ local function draw(real_width, real_height) local line_height = CONFIG.line_height local margin_bottom = CONFIG.line_height * 0.2 - local available_height = real_height - (2 * CONFIG.margin) + local available_height = real_height - CONFIG.margin if CONFIG.nre_powered then - available_height = available_height - 100 + available_height = available_height - 150 end + local start_y = CONFIG.margin if CONFIG.header ~= "" then - available_height = available_height - line_height - y = y + line_height + margin_bottom + start_y = start_y + line_height + margin_bottom end + local y = start_y local has_departures = false local y_dec = 0 local fade_timestamp = 0 for idx, dep in ipairs(events) do - if dep.timestamp > now_for_fade - fadeout then + if dep.timestamp > (now_for_fade - fadeout) then if now_for_fade > dep.timestamp then y_dec = y_dec + line_height + margin_bottom - fade_timestamp = dep.timestamp + if fade_timestamp == 0 then + fade_timestamp = dep.timestamp + else + fade_timestamp = math.min(fade_timestamp, dep.timestamp) + end + if #dep.notes ~= 0 then + y_dec = y_dec + (line_height * 0.3) + end + if CONFIG.show_operator_name and dep.operator_name ~= json.null then + y_dec = y_dec + (line_height * 0.3) + end end end if not stops[dep.stop] then @@ -136,14 +146,14 @@ local function draw(real_width, real_height) stops[dep.stop] = true end if y_dec ~= 0 then - y = y - (y_dec * (now_for_fade - fade_timestamp) / fadeout) + y = y - (y_dec * ((now_for_fade - fade_timestamp) / fadeout)) end for idx, dep in ipairs(events) do if dep.timestamp > now_for_fade - fadeout then has_departures = true - if y < 0 and dep.timestamp >= now_for_fade then - y = 0 + if y < start_y and dep.timestamp >= now_for_fade then + y = start_y end local time = dep.time @@ -176,7 +186,9 @@ local function draw(real_width, real_height) append = string.format(translations[CONFIG.language].next_min, format_seconds(dep.next_timestamp - now)) end elseif remaining < (11 + CONFIG.offset) then - time = string.format(translations[CONFIG.language].in_min, format_seconds(dep.timestamp - now)) + if not dep.cancelled then + time = string.format(translations[CONFIG.language].in_min, format_seconds(dep.timestamp - now)) + end if remaining < (1 + CONFIG.offset) then if now % 2 < 1 then time = "*" .. time @@ -193,6 +205,10 @@ local function draw(real_width, real_height) end end + if dep.cancelled then + time = translations[CONFIG.language].cancelled + end + if number_of_stops > 1 then platform = preposition .. " " .. dep.stop if dep.platform ~= json.null then @@ -217,7 +233,10 @@ local function draw(real_width, real_height) local time_colour = CONFIG.time_colour local scheduled_time_color = CONFIG.time_colour - if dep.delay >= 0 then + if dep.cancelled then + time_font = CONFIG.realtime_font + time_colour = CONFIG.realtime_cancelled_colour + elseif dep.delay >= 0 then time_font = CONFIG.realtime_font time_colour = CONFIG.realtime_punctual_colour if dep.delay > 0 then @@ -252,30 +271,10 @@ local function draw(real_width, real_height) local text_y_start = text_y text_y = text_y + text_upper_size - -- operator name - if CONFIG.show_operator_name then - if dep.operator_name ~= json.null then - if platform ~= "" or not CONFIG.large_minutes then - symbol_height = symbol_height + text_lower_size - text_y = text_y + text_lower_size - end - CONFIG.second_font:write( - text_x, - text_y, - string.format(translations[CONFIG.language].operator_name, dep.operator_name), - text_lower_size, - CONFIG.second_colour.r, - CONFIG.second_colour.g, - CONFIG.second_colour.b, - CONFIG.second_colour.a - ) - end - end - -- third line (if exists) -- needs to go first, because we use the background colour -- to hide the text outside the view area - if dep.notes ~= json.null then + if #dep.notes ~= 0 then -- scroller position local max_scroller_width = math.min( real_width, @@ -301,12 +300,17 @@ local function draw(real_width, real_height) text_y = text_y + text_lower_size end + local notes_text = "" + for idx, note in ipairs(dep.notes) do + notes_text = notes_text .. translations[CONFIG.language].note_types[note.type] .. note.text .. " " + end + -- place text scrolling_text( dep.id, text_x, text_y, max_scroller_width, text_y + text_lower_size, - dep.notes, + notes_text, CONFIG.second_font, CONFIG.second_colour.r, CONFIG.second_colour.g, @@ -315,6 +319,22 @@ local function draw(real_width, real_height) ) end + -- operator name + if CONFIG.show_operator_name and dep.operator_name ~= json.null then + symbol_height = symbol_height + text_lower_size + text_y = text_y + text_lower_size + CONFIG.second_font:write( + text_x, + text_y, + string.format(translations[CONFIG.language].operator_name, dep.operator_name), + text_lower_size, + CONFIG.second_colour.r, + CONFIG.second_colour.g, + CONFIG.second_colour.b, + CONFIG.second_colour.a + ) + end + -- vehicle type if CONFIG.show_vehicle_type then if categories[dep.icon] then @@ -380,7 +400,7 @@ local function draw(real_width, real_height) text_y_start, time, text_upper_size, tr, tg, tb, 1 ) - if dep.delay > 0 then + if dep.delay > 0 or dep.cancelled then time_font:write( real_width - time_width - scheduled_time_width - CONFIG.margin - 5, text_y_start + (text_upper_size - text_lower_size), dep.scheduled_time, text_lower_size, diff --git a/translations.json b/translations.json index e3f6c74..54936ea 100644 --- a/translations.json +++ b/translations.json @@ -14,6 +14,7 @@ "arrival_from": "Ankunft von %s", "operator_name": "Ein Angebot der %s", "no_departures": "Keine Abfahrten", + "cancelled": "Fällt aus", "platform_types": { "U": "", "PL": "Gleis", @@ -26,6 +27,11 @@ "CO": "Ausgang", "X": "", "H": "" + }, + "note_types": { + "R": "", + "D": "Verspätung: ", + "P": "Ausfall: " } }, "en": { @@ -43,6 +49,7 @@ "arrival_from": "Arrival from %s", "operator_name": "A %s service", "no_departures": "No upcoming services", + "cancelled": "Cancelled", "platform_types": { "U": "", "PL": "platform", @@ -55,6 +62,11 @@ "CO": "exit", "X": "", "H": "" + }, + "note_types": { + "R": "", + "D": "Delayed: ", + "P": "Cancelled: " } }, "cy": { @@ -72,6 +84,7 @@ "arrival_from": "Cyrrhaeddiad o %s", "operator_name": "Gwasanaeth %s", "no_departures": "Does dim gwasanaethau ar y gorwel", + "cancelled": "Wedi'i ganslo", "platform_types": { "U": "", "PL": "blatfform", @@ -84,6 +97,11 @@ "CO": "allanfa", "X": "", "H": "" + }, + "note_types": { + "R": "", + "D": "Yn hwyr: ", + "P": "Wedi'i ganslo: " } } } \ No newline at end of file From 963b6a855f0c4f86129b4af3a7418fdaf2e6662c Mon Sep 17 00:00:00 2001 From: Q Date: Wed, 13 Mar 2024 14:28:10 +0000 Subject: [PATCH 15/21] changes based on suggestions from kunsi --- COPYRIGHT | 6 +++++- README.md | 4 ---- cache_runner.py | 2 +- hafas_event.py | 4 ++-- hafas_fetcher.py | 36 +++++++++++++++++----------------- node.json | 17 +++++++++++++--- node.lua | 51 ++++++++++++++++++++++++++++++------------------ 7 files changed, 72 insertions(+), 48 deletions(-) diff --git a/COPYRIGHT b/COPYRIGHT index cee6c91..45ea58c 100644 --- a/COPYRIGHT +++ b/COPYRIGHT @@ -31,7 +31,11 @@ silkscreen.ttf: -s_bahn.png +s_bahn.png: Public Domain + +Emoji: + + Iconography from Mutant Standard Emoji \ No newline at end of file diff --git a/README.md b/README.md index 0765a82..5d680a5 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,3 @@ json files somewhere else. In info-beamer just input the path to the cached json files. Authentication is not supported as of now. - -## Emoji - -Iconography from [Mutant Standard Emoji](https://mutant.tech). diff --git a/cache_runner.py b/cache_runner.py index 0949303..fd2ccf6 100755 --- a/cache_runner.py +++ b/cache_runner.py @@ -43,7 +43,7 @@ def fetch_stop(stop, endpoint): stop=stop, minutes=MINUTES, key=KEY, - language=CONFIG["language"], + language=CONFIG["query_language"], ) ) r.raise_for_status() diff --git a/hafas_event.py b/hafas_event.py index ca345b1..6631310 100644 --- a/hafas_event.py +++ b/hafas_event.py @@ -66,7 +66,7 @@ def __init__(self, data): if data.get("tz", None) is not None: self.scheduled = self.scheduled.replace(tzinfo=FixedOffset(data["tz"], "")) else: - self.scheduled = self.scheduled.replace(tzinfo=pytz.timezone(CONFIG["timezone"])) + self.scheduled = pytz.timezone(CONFIG["timezone"]).localize(self.scheduled) if "rtTime" in data and "rtDate" in data: self.realtime = datetime.strptime( @@ -75,7 +75,7 @@ def __init__(self, data): if data.get("rtTz", None) is not None: self.realtime = self.realtime.replace(tzinfo=FixedOffset(data["rtTz"], "")) else: - self.realtime = self.realtime.replace(tzinfo=pytz.timezone(CONFIG["timezone"])) + self.realtime = pytz.timezone(CONFIG["timezone"]).localize(self.realtime) diff = self.realtime - self.scheduled self.delay = int(diff.total_seconds() / 60) else: diff --git a/hafas_fetcher.py b/hafas_fetcher.py index b2f254a..35e78d4 100644 --- a/hafas_fetcher.py +++ b/hafas_fetcher.py @@ -30,7 +30,7 @@ def fetch_and_parse(self, stop_id): if SYMBOL_IS_GROUP[CONFIG["api_provider"]]: if dep.symbol == follow.symbol and ( (dep.platform != "" and dep.platform == follow.platform) - or dep.destination == follow.destination + or dep.destination == follow.destination ) and not follow.cancelled: dep.follow = follow break @@ -94,7 +94,7 @@ def _fetch(self, stop_id): stop=stop_id, minutes=CONFIG["request_hours"] * 60, key=key, - language=CONFIG["language"], + language=CONFIG["query_language"], ) if not self.data_sources == "arrivals": @@ -111,26 +111,26 @@ def _sort_and_deduplicate(self, events, locator): for n, ev in enumerate(events): for follow in islice(events, n + 1, None): if ( - locator(ev) == locator(follow) - and ev.symbol == follow.symbol - and ( + locator(ev) == locator(follow) + and ev.symbol == follow.symbol + and ( ( - ev.stop != follow.stop - and abs( - Helper.to_unixtimestamp(ev.realtime) - - Helper.to_unixtimestamp(follow.realtime) - ) - <= 120 + ev.stop != follow.stop + and abs( + Helper.to_unixtimestamp(ev.realtime) + - Helper.to_unixtimestamp(follow.realtime) + ) + <= 120 ) or ( - ev.stop == follow.stop - and abs( - Helper.to_unixtimestamp(ev.realtime) - - Helper.to_unixtimestamp(follow.realtime) - ) - <= 10 + ev.stop == follow.stop + and abs( + Helper.to_unixtimestamp(ev.realtime) + - Helper.to_unixtimestamp(follow.realtime) + ) + <= 10 ) - ) + ) ): follow.duplicate = True break diff --git a/node.json b/node.json index 1c40cc7..4786911 100644 --- a/node.json +++ b/node.json @@ -195,11 +195,11 @@ "default": true, "hint": "if deselected, lines will appear as grey box with white text" }, { - "name": "nre_powered", - "title": "Show National Rail Enquiries Logo", + "name": "show_provider_logo", + "title": "Show provider Logo", "type": "boolean", "default": false, - "ui_width": 8 + "ui_width": 4 },{ "title": "Hours to request", "ui_width": 4, @@ -232,6 +232,17 @@ ["cy", "Cymraeg"] ], "ui_width": 4 + }, { + "default": "de", + "name": "query_language", + "title": "Query Language", + "type": "select", + "options": [ + ["de", "Deutch"], + ["en", "English"], + ["cy", "Cymraeg"] + ], + "ui_width": 4 }, { "name": "timezone", "title": "Timezone", diff --git a/node.lua b/node.lua index e0e7c3b..7730d54 100644 --- a/node.lua +++ b/node.lua @@ -73,11 +73,16 @@ categories["u_bahn"] = resource.load_image("u_bahn.png") categories["tram"] = resource.load_image("tram.png") categories["bus"] = resource.load_image("bus.png") -nre_powered_logo = resource.load_image{ - file = "NRE_Powered_logo.png"; - mimap = true; - nearest = true; -} +local provider_logo = nil +if CONFIG.show_provider_logo then + if CONFIG.api_provider == "tfemf" then + provider_logo = resource.load_image { + file = "NRE_Powered_logo.png"; + mimap = true; + nearest = true; + } + end +end local function format_seconds(seconds) local minutes = math.floor(seconds / 60) @@ -109,7 +114,7 @@ local function draw(real_width, real_height) local margin_bottom = CONFIG.line_height * 0.2 local available_height = real_height - CONFIG.margin - if CONFIG.nre_powered then + if provider_logo then available_height = available_height - 150 end @@ -212,15 +217,23 @@ local function draw(real_width, real_height) if number_of_stops > 1 then platform = preposition .. " " .. dep.stop if dep.platform ~= json.null then - platform = platform .. ", " .. - translations[CONFIG.language].platform_types[dep.platform.type] .. - " " .. dep.platform.value + if dep.platform.type ~= json.null and dep.platform.type ~= "" then + platform = platform .. ", " .. + translations[CONFIG.language].platform_types[dep.platform.type] .. + " " .. dep.platform.value + else + platform = platform .. ", " .. dep.platform.value + end end else if dep.platform ~= json.null then - platform = preposition .. " " .. - translations[CONFIG.language].platform_types[dep.platform.type] .. - " " .. dep.platform.value + if dep.platform.type ~= json.null and dep.platform.type ~= "" then + platform = preposition .. " " .. + translations[CONFIG.language].platform_types[dep.platform.type] .. + " " .. dep.platform.value + else + platform = preposition .. " " .. dep.platform.value + end end end @@ -498,13 +511,13 @@ local function draw(real_width, real_height) ) end - if CONFIG.nre_powered then - local nre_width, nre_height = nre_powered_logo:size() - local nre_height_scaled = 75 - local nre_width_scaled = nre_width * (nre_height_scaled / nre_height) - nre_powered_logo:draw( - real_width - nre_width_scaled - CONFIG.margin, - real_height - nre_height_scaled - CONFIG.margin, + if provider_logo then + local logo_width, logo_height = provider_logo:size() + local logo_height_scaled = 75 + local logo_width_scaled = logo_width * (logo_height_scaled / logo_height) + provider_logo:draw( + real_width - logo_width_scaled - CONFIG.margin, + real_height - logo_height_scaled - CONFIG.margin, real_width - CONFIG.margin, real_height - CONFIG.margin ) end From 02b98d8d8cbc7025c917c7de6cf31f85f12b5636 Mon Sep 17 00:00:00 2001 From: Q Date: Wed, 13 Mar 2024 14:34:06 +0000 Subject: [PATCH 16/21] load provider logo fix --- node.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/node.lua b/node.lua index 7730d54..f2b283e 100644 --- a/node.lua +++ b/node.lua @@ -76,7 +76,7 @@ categories["bus"] = resource.load_image("bus.png") local provider_logo = nil if CONFIG.show_provider_logo then if CONFIG.api_provider == "tfemf" then - provider_logo = resource.load_image { + provider_logo = resource.load_image{ file = "NRE_Powered_logo.png"; mimap = true; nearest = true; From 35c0ef7b27292491488156e3a9bde95fe4e153cf Mon Sep 17 00:00:00 2001 From: Q Date: Wed, 13 Mar 2024 14:37:11 +0000 Subject: [PATCH 17/21] provider logo height variable --- node.lua | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/node.lua b/node.lua index f2b283e..18b0c0b 100644 --- a/node.lua +++ b/node.lua @@ -73,6 +73,7 @@ categories["u_bahn"] = resource.load_image("u_bahn.png") categories["tram"] = resource.load_image("tram.png") categories["bus"] = resource.load_image("bus.png") +local provider_logo_height = 75 local provider_logo = nil if CONFIG.show_provider_logo then if CONFIG.api_provider == "tfemf" then @@ -115,7 +116,7 @@ local function draw(real_width, real_height) local available_height = real_height - CONFIG.margin if provider_logo then - available_height = available_height - 150 + available_height = available_height - (provider_logo_height * 2) end local start_y = CONFIG.margin @@ -513,11 +514,10 @@ local function draw(real_width, real_height) if provider_logo then local logo_width, logo_height = provider_logo:size() - local logo_height_scaled = 75 - local logo_width_scaled = logo_width * (logo_height_scaled / logo_height) + local logo_width_scaled = logo_width * (provider_logo_height / logo_height) provider_logo:draw( real_width - logo_width_scaled - CONFIG.margin, - real_height - logo_height_scaled - CONFIG.margin, + real_height - provider_logo_height - CONFIG.margin, real_width - CONFIG.margin, real_height - CONFIG.margin ) end From c074747baeb07b875992585717843f1eb43b1a57 Mon Sep 17 00:00:00 2001 From: Q Date: Wed, 13 Mar 2024 15:00:40 +0000 Subject: [PATCH 18/21] handle realtime departure before scheduled departure --- hafas_event.py | 2 +- node.lua | 21 ++++++++++++++++++--- 2 files changed, 19 insertions(+), 4 deletions(-) diff --git a/hafas_event.py b/hafas_event.py index 6631310..4bf61b6 100644 --- a/hafas_event.py +++ b/hafas_event.py @@ -80,7 +80,7 @@ def __init__(self, data): self.delay = int(diff.total_seconds() / 60) else: self.realtime = self.scheduled - self.delay = -1 + self.delay = None def __lt__(self, other): assert isinstance(other, HAFASEvent) diff --git a/node.lua b/node.lua index 18b0c0b..7967c04 100644 --- a/node.lua +++ b/node.lua @@ -250,7 +250,7 @@ local function draw(real_width, real_height) if dep.cancelled then time_font = CONFIG.realtime_font time_colour = CONFIG.realtime_cancelled_colour - elseif dep.delay >= 0 then + elseif dep.delay ~= json.null then time_font = CONFIG.realtime_font time_colour = CONFIG.realtime_punctual_colour if dep.delay > 0 then @@ -335,8 +335,10 @@ local function draw(real_width, real_height) -- operator name if CONFIG.show_operator_name and dep.operator_name ~= json.null then - symbol_height = symbol_height + text_lower_size - text_y = text_y + text_lower_size + if #dep.notes ~= 0 or platform ~= "" or not CONFIG.large_minutes then + symbol_height = symbol_height + text_lower_size + text_y = text_y + text_lower_size + end CONFIG.second_font:write( text_x, text_y, @@ -454,9 +456,22 @@ local function draw(real_width, real_height) ) else local time_width = time_font:width(time, text_lower_size) + local scheduled_time_width = time_font:width(dep.scheduled_time, text_lower_size) local time_after_width = CONFIG.time_font:width(" ", text_lower_size) text_y_start = text_y_start + text_upper_size + + if dep.delay > 0 or dep.cancelled then + time_font:write( + text_x, text_y_start, + dep.scheduled_time, text_lower_size, + str, stg, stb, 1 + ) + local text_middle = text_y_start + (text_lower_size / 2) + white:draw(text_x, text_middle, text_x + scheduled_time_width, text_middle + 1) + text_x = text_x + scheduled_time_width + 5 + end + time_font:write( text_x, text_y_start, time, text_lower_size, From 928e6e05765812b9065235ef346517dfcc21b0b7 Mon Sep 17 00:00:00 2001 From: Q Date: Wed, 13 Mar 2024 15:10:04 +0000 Subject: [PATCH 19/21] handle no rt info when deciding to show scheduled time --- hafas_event.py | 29 +++++++++++++++-------------- node.lua | 4 ++-- 2 files changed, 17 insertions(+), 16 deletions(-) diff --git a/hafas_event.py b/hafas_event.py index 4bf61b6..3f99376 100644 --- a/hafas_event.py +++ b/hafas_event.py @@ -3,14 +3,15 @@ import pytz from datetime import datetime, timedelta, tzinfo from helper import Helper -from hosted import CONFIG, log +from hosted import CONFIG from mapping import CATEGORY_MAPPING, COLOUR_MAPPING, OPERATOR_LABEL_MAPPING REMOVE = re.escape(CONFIG["remove_string"].strip()) if CONFIG["remove_string"] else None + class FixedOffset(tzinfo): def __init__(self, offset, name): - self.__offset = timedelta(minutes = offset) + self.__offset = timedelta(minutes=offset) self.__name = name def utcoffset(self, _dt): @@ -41,7 +42,7 @@ def __init__(self, data): symbol = product["name"] for regex, replacement in OPERATOR_LABEL_MAPPING.get( - CONFIG["api_provider"], {} + CONFIG["api_provider"], {} ).items(): symbol = re.sub(regex, replacement, symbol) self.symbol = symbol @@ -92,9 +93,9 @@ def _clean(self, key): else: if REMOVE: for possible_match in ( - "^(" + REMOVE + "[, -]+)", - "( *\(" + REMOVE + "\))", - "(" + REMOVE + " +)", + "^(" + REMOVE + "[, -]+)", + "( *\(" + REMOVE + "\))", + "(" + REMOVE + " +)", ): if re.search(possible_match, self.json[key].strip()): return re.sub( @@ -116,11 +117,11 @@ def origin(self): @property def ignore_destination(self): if ( - CONFIG["ignore_destination"] - and self.destination - and re.search( - CONFIG["ignore_destination"], self.destination, flags=re.IGNORECASE - ) + CONFIG["ignore_destination"] + and self.destination + and re.search( + CONFIG["ignore_destination"], self.destination, flags=re.IGNORECASE + ) ): return True return False @@ -130,9 +131,9 @@ def line_colour(self): provider = CONFIG["api_provider"] if ( - provider in COLOUR_MAPPING - and self.operator in COLOUR_MAPPING[provider] - and self.symbol in COLOUR_MAPPING[provider][self.operator] + provider in COLOUR_MAPPING + and self.operator in COLOUR_MAPPING[provider] + and self.symbol in COLOUR_MAPPING[provider][self.operator] ): (r, g, b), (font_r, font_g, font_b) = COLOUR_MAPPING[provider][ self.operator diff --git a/node.lua b/node.lua index 7967c04..cdd77c2 100644 --- a/node.lua +++ b/node.lua @@ -416,7 +416,7 @@ local function draw(real_width, real_height) text_y_start, time, text_upper_size, tr, tg, tb, 1 ) - if dep.delay > 0 or dep.cancelled then + if (dep.delay ~= json.null and dep.delay > 0) or dep.cancelled then time_font:write( real_width - time_width - scheduled_time_width - CONFIG.margin - 5, text_y_start + (text_upper_size - text_lower_size), dep.scheduled_time, text_lower_size, @@ -461,7 +461,7 @@ local function draw(real_width, real_height) text_y_start = text_y_start + text_upper_size - if dep.delay > 0 or dep.cancelled then + if (dep.delay ~= json.null and dep.delay > 0) or dep.cancelled then time_font:write( text_x, text_y_start, dep.scheduled_time, text_lower_size, From b7d1ba86591a327bd7066a46e190784417317fe2 Mon Sep 17 00:00:00 2001 From: Q Date: Wed, 13 Mar 2024 22:50:29 +0000 Subject: [PATCH 20/21] show departure board messages --- hafas_fetcher.py | 24 ++++++++++++++++++++++-- node.lua | 26 ++++++++++++++++++++++++-- 2 files changed, 46 insertions(+), 4 deletions(-) diff --git a/hafas_fetcher.py b/hafas_fetcher.py index 35e78d4..de3acfc 100644 --- a/hafas_fetcher.py +++ b/hafas_fetcher.py @@ -17,6 +17,7 @@ def __init__(self): self.departures = [] self.arrivals = [] self.events = [] + self.messages = [] def fetch_and_parse(self, stop_id): stop_info = self._fetch(stop_id) @@ -24,6 +25,13 @@ def fetch_and_parse(self, stop_id): departures = [] for dep in stop_info["Departure"]: departures.append(HAFASEvent(dep)) + for msg in stop_info.get("Message", []): + if not next(iter(filter( + lambda m: ("id" in msg and m.get("id") == msg.get("id")) or + ("externalId" in msg and m.get("externalId") == msg.get("externalId")), + self.messages + )), None): + self.messages.append(msg) departures = sorted(departures) for n, dep in enumerate(departures): for follow in islice(departures, n + 1, None): @@ -74,6 +82,7 @@ def _fetch(self, stop_id): data = { "Departure": [], "Arrival": [], + "Message": [], } if key.startswith("http://") or key.startswith("https://"): @@ -88,6 +97,7 @@ def _fetch(self, stop_id): data["Departure"] = payload["Departure"] if not self.data_sources == "departures": data["Arrival"] = payload["Arrival"] + data["Message"] = payload.get("Message", []) else: url = lambda ep: API_MAPPING[CONFIG["api_provider"]].format( endpoint=ep, @@ -100,9 +110,11 @@ def _fetch(self, stop_id): if not self.data_sources == "arrivals": payload = self._fetch_url(stop_id, url("departureBoard")) data["Departure"] = payload["Departure"] + data["Message"].extend(payload.get("Message", [])) if not self.data_sources == "departures": payload = self._fetch_url(stop_id, url("arrivalBoard")) data["Arrival"] = payload["Arrival"] + data["Message"].extend(payload.get("Message", [])) return data @@ -151,7 +163,10 @@ def sort_and_deduplicate(self): def write_json(self): log("writing {} events to json".format(len(self.events))) - out = [] + out = { + "departures": [], + "messages": [], + } for dep in self.events: departure = { "category": dep.category, @@ -181,6 +196,11 @@ def write_json(self): "cancelled": dep.cancelled, } departure.update(dep.line_colour) - out.append(departure) + out["departures"].append(departure) + for msg in self.messages: + out["messages"].append({ + "text": msg["text"], + "id": msg.get("id", msg.get("externalId")), + }) with file("events.json", "wb") as f: f.write(json.dumps(out, ensure_ascii=False).encode("utf8")) diff --git a/node.lua b/node.lua index cdd77c2..d719f47 100644 --- a/node.lua +++ b/node.lua @@ -123,13 +123,18 @@ local function draw(real_width, real_height) if CONFIG.header ~= "" then start_y = start_y + line_height + margin_bottom end + local y = start_y + for idx, msg in ipairs(events.messages) do + y = y + (line_height * 0.5) + margin_bottom + end + local has_departures = false local y_dec = 0 local fade_timestamp = 0 - for idx, dep in ipairs(events) do + for idx, dep in ipairs(events.departures) do if dep.timestamp > (now_for_fade - fadeout) then if now_for_fade > dep.timestamp then y_dec = y_dec + line_height + margin_bottom @@ -155,7 +160,7 @@ local function draw(real_width, real_height) y = y - (y_dec * ((now_for_fade - fade_timestamp) / fadeout)) end - for idx, dep in ipairs(events) do + for idx, dep in ipairs(events.departures) do if dep.timestamp > now_for_fade - fadeout then has_departures = true if y < start_y and dep.timestamp >= now_for_fade then @@ -527,6 +532,23 @@ local function draw(real_width, real_height) ) end + for idx, msg in ipairs(events.messages) do + local text_height = (line_height * 0.5) + margin_bottom + local text_y = start_y + (text_height * (idx - 1)) + bg:draw(0, text_y, real_width, text_y + text_height) + scrolling_text( + msg.id, + 0, text_y, + real_width, text_y + (line_height * 0.5), + msg.text, + CONFIG.second_font, + CONFIG.second_colour.r, + CONFIG.second_colour.g, + CONFIG.second_colour.b, + CONFIG.second_colour.a + ) + end + if provider_logo then local logo_width, logo_height = provider_logo:size() local logo_width_scaled = logo_width * (provider_logo_height / logo_height) From 03daf91072b06529ee11eaecf9d11a20d7e13dc7 Mon Sep 17 00:00:00 2001 From: Q Date: Sun, 17 Mar 2024 23:10:20 +0000 Subject: [PATCH 21/21] fix typo --- node.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/node.json b/node.json index 4786911..6cd27d9 100644 --- a/node.json +++ b/node.json @@ -227,7 +227,7 @@ "title": "Display Language", "type": "select", "options": [ - ["de", "Deutch"], + ["de", "Deutsch"], ["en", "English"], ["cy", "Cymraeg"] ], @@ -238,7 +238,7 @@ "title": "Query Language", "type": "select", "options": [ - ["de", "Deutch"], + ["de", "Deutsch"], ["en", "English"], ["cy", "Cymraeg"] ],