From be84aef1e0b9cb13965084bc80f904c158bf648a Mon Sep 17 00:00:00 2001 From: Andy Burke Date: Fri, 4 Jul 2025 13:27:57 -0700 Subject: [PATCH] feature: favicon fix: partial attempt to clean up room loading --- public/api/rooms/index.ts | 2 +- public/icons/android-chrome-192x192.png | Bin 0 -> 7619 bytes public/icons/android-chrome-512x512.png | Bin 0 -> 34043 bytes public/icons/apple-touch-icon.png | Bin 0 -> 7381 bytes public/icons/favicon-16x16.png | Bin 0 -> 482 bytes public/icons/favicon-32x32.png | Bin 0 -> 698 bytes public/icons/favicon.ico | Bin 0 -> 3842 bytes public/index.html | 6 ++++++ public/tabs/tabs.html | 2 +- public/tabs/talk.html | 21 +++++++++++++++++---- 10 files changed, 25 insertions(+), 6 deletions(-) create mode 100644 public/icons/android-chrome-192x192.png create mode 100644 public/icons/android-chrome-512x512.png create mode 100644 public/icons/apple-touch-icon.png create mode 100644 public/icons/favicon-16x16.png create mode 100644 public/icons/favicon-32x32.png create mode 100644 public/icons/favicon.ico diff --git a/public/api/rooms/index.ts b/public/api/rooms/index.ts index 8b3dd9b..020592a 100644 --- a/public/api/rooms/index.ts +++ b/public/api/rooms/index.ts @@ -25,7 +25,7 @@ export async function GET(_req: Request, meta: Record): Promise item.load()); + })).map((room_entry) => room_entry.load()); return Response.json(rooms, { status: 200 diff --git a/public/icons/android-chrome-192x192.png b/public/icons/android-chrome-192x192.png new file mode 100644 index 0000000000000000000000000000000000000000..26aa0e7ae6a5fa1d8e2b15252c267658b9defbf9 GIT binary patch literal 7619 zcmX|GRa{hG7ro>B8FJ`uX^`#)Ndak)4yA-4rF#&N6cB0Y?(Xg`=}r-(8zjH+<$JjI zKAdy*-e;fR*>~-=!qimcp=hLN002N0-pFVmzMcOb6bRz2v0{r102JX0GOx8fjE{^^ zQ=_zrBmyCN)v|HbwZ01d8ntQ}d7(5SFC#5D7jYN+Rft=vzOybi#HgX_DfY*zIQl^2Ipr496?J-#Y4$dZV{E5^J+q3$dN*9N>g& zW?z)@Lo-`uNl&XGDm}o93~hGwCQVO0H#P%m=w1)wNzE4`NhbM*H77l&7-6f>Mx_BA6>7)>Yh+}1@ zopRX~iU`6NHR;73hf98Utkpckv`E<1%5NIZ4|J3zCCqC;a}B|hl*CF@bRBL9pP(Df z1k(dH9pdf3cjh3b#v#qfR4~Mbqlr`_?2QptM-S9)Hp~!KPtUfje~!UAYbHaN6wLgb zT(P?NHYPDMsdhJ%vV>M9;nI+e{+Y`peQ*~dMC!&UUU?LRB}o*H@^pPigaMRt+A*AN z(n$z*cSK16p&`Qf=Yu!SL6wMo2Ayv07a`5V`yerI4f8OYFxp8|dYquTwm{TK1#+!A zxM9_e3~`zvpMJMS9JlfiS&XH8oyu2M+T8qu($V5^mVMhKNyKiL+3|Gu-S6*?m9XCf zBpLT|oWy9k#rGmpJ zeQ$OOL_LqQw2Cxd6>Z&~W&D}Udfc+2I$FLVpb+|`TSV1D_IC-eZ(&Pa^R&XrQ%W>e zR9&vO%kK&_%k|Ji)BHWEx7YFPYy6;<>wVlbUvEt%;TM_tJR$KMd42LcT<_FKalZtl zdu&(^n5-K<>nJM}Bv9k)1q>QE9oGBV!JVHDD%|t4Wiw6> z@i)}HPTGpLKGueo8#ZkvrMC0I6WB!5g3;pR@n<`p4Qict6BX?q=a~GT?u!f>0=}S6 zW7WE!uy=D^-KPQ+UU{ zJn;M4@)nCU8T&}x8HfYZ5UWBXZKdN`+CC_9thO}J`uHqLALqjpI82iD>uu#1m>=IR zfSO%lN}Q0E!9)nB^_1ao0$T`k8mj@nN#h1X@_tXm*Uh!Vg{lIJ?9FlW=O;0j%RQXC zqXv^dqsh~9N#G}nH9GQ&N<#Pbw8Y~!0g0Uv9koMYYgRIBq*o*KlP9_havmgE41YS#d2Ss)}yCSGEhMRgD~r zrYlRIL@h%Jx=G`iHPan2S{|=4^0g5O=HFlMDEZ^}!qv0}q|4#l^M$P!YH6n=?6>`u zF#W6grV2LJT4#Wn42CMmej4`RC|hpa7D>qFHG#{4fpNBzcrdBNF&l%aqo8=JSHmzp zm3I-ho1i7VP9kZz@)jp6X&F~`G)*LpkUiBx!NlHus@zD2#i%*8n)vK2WBS)njvXrD zX!@gy&ChHx0uEyhJ@G@STl@RpKfuGjw|>Z-f4TYHvMtbVpY9!sGz$_Eu6Eza(<_Nf zJG3tvc;4Quo0$4wE&77An?AXE9n~@6e9pRdiXzTtH`1Tp84-NelWt!E?a$f0<%988 zTK;~%o@#alOT7&@VHOolm5WNX>^*cwl}|^-`!aoZ1#41{|4U1wh+=kR_KTo!a;C`a z<7}}7i!!+WEFKg|%oTk8d(3L_*Uz7qfAAs)WjZv<^r1y6Y4dTt?yoqp-?KWj&8iL= z1Yx-da+EeRUw;L4_HbE_y5t3`l>ZC>dt(UvphDHt&yj1R<*w~s+?q%i3r=879749jAWVqY{M`6P5}s~$EhHT z?&<6LYI9O*eD|ZJc<$2l&DT;R3spP|=hXDIcFPQM>=ny#YzA(m{I=W{!*R)M!>K~k z817|y=fNQAFthIeF1{-(>WR47=77M5O&_^hBo*qSBO?hnsb?2fu_%`0bLqVpUlxAo zEB=7&mnMcK$bQO3z1^h9&e=x<9T)~}>|q5Sp_x(Tb=?KZRfq{&8xUKe9bpE*`xT6v1lv(KhhynqDT%+Tz8CEPx1M&7(71J!)qYS(e~8b{-v4P9O(4*UQGI!{ zj@r*Ph)xwUG!#jfXxw&7nfg-N>nD+kZLD_4w$IgpyvEi3)xvgn;ro^1U!LI5FcKO{ zOHZA}5GwW@X3c)J{TXYFQEC<5t!0OsT#k;F>|!PPrMizlqtgAK=;w5SqVOm`<^8~K zvsJ;Pr>9-h19>|mM3XHi#UTS8O8~d!C|wK{VfBW{>9>$*G3fubX2T@9V=j%4vmu z%dsVmzHpA3FQRUTg>V_`QJZZ-=WjH9MOLbRPwHia%svRCJ^Wl%{NOzY#Mp%Jh%y#= z_lAOMt*4vG@B@B%()}EnLZ)KH87LRjbCdt;co9Knipi$O9b!3=K5V^3%3-WKUBK}^ zTEeVfM(Rxin&%v#n8>blwB-6dT~i}bZ$*ih?t{GSY$D}6vz*}}2sK)1-XG6txw%Wi z@4*%vo+eG@dl`T;S0`}bw!m@Hi{IF~LU;W$l}PFTz?{%%c`PVu1%xiYVPuzceAqPArAc$R+P?v_ zV4~8J@168T>=JYO8q>&h)6gVHhhX`$!K-csN>jN?f0r4x;B1CScRadjbau|{@HX`y z2!Y||EX;mv26H^7A}`bfA!9}Qb;46y{^@cfya2^(+LEtnqcxUnRypad2&BU%(e$^RF37zTZI{K+x@feU+xITz>`39KEu+XDS>rze5y1%^F_NIX*yP#4^1TQ(3g9I8Y1dEfJ;Rf$K> zQz~piQ$7T-Fya0kg``Zq8OH`jdI=y}Q0?ldmww|f-_a=b7MAddVb zU;XAi0gD#S0I4TR+(;rv*b_|uv$*N+*RPqGO#e83y!d^^>mzuw6*=u+c;5GI=GsU zAo`j;zamIv8u7wRD+_^!dxFs`0`UoAAd~CU@3;^# zV5W6Wh47{r0Pd7G zU(p)zJM$Z5FLo>5ONaOHVGva@Q2BsoO6G%XW<0dL${ZDDvt=oSeedF2ejJbl$UtPc z^_qodHR{s{d{Cgt0uFpFuPRpFS0cGL1~9t8ztI+iJMP@)7Cc?e-xtAj#8Zv800hFu zE^>EJibj^3DU>Q>DNrDTw~@N90%}Is*z4p{rQ#p1wNYc35f|E$AjY`GEf~l}BaF_W z1pSyXMD$AK)rKvdkWO8B2uw1}W~NZ}YX9uRiHJ)mJ`=M1FUzF=hy=DVUR#X)n0F&L zkSBu|SzsKx!lQoPV z7)LwvG~xqh>RvF=g&@!%Q%t7^Wsc;dN$^{}-t%%@K7OnAB|va#>te|s7^3)Q>{XPn z&KDys=IzEAE@1H5_a3uAp3?Je^DBXH7z`X^Oi3@d45bz-YUE!2l>EisBddXTX@`$TVy#`Tc(CzY(M6gA%bCR#m(F8hqc)zJYHIuGE<>CjmH*16(W{AM zxcFD!RLKAxGf_Vsj7-BO#q9A{6^0YHXFYq{(K=_Aj9t({d}6cwx974~jzn+~5dDW0 z^3QznQAipZHMX=m81NrIyz7!&+0;kxA`e@2eO6Kp1_KS=Gg8Z6Vs`2)^4Dxb;IXoW zcijPE5{{H1t))=Iu_UgV(vOgg#ZbLDQ*leT89)sy z0p0s)T2&&HB9Mr!xSDe1Qz>yz(bf`+EG;2x5;Lx~N1_jl*M&EkJT%jMXev9K>ZG*I z<&UV8U&$&0bYX(IgQX1`>@yb@+EW=6TYExO^Sw{TCTt>TX``Z2V&~yG5O|G5J4kS* z&D%iO!;z{WjGIG%m+TErV`@!H<24+VgTy{bTk5Gt!QV}~B0m~MBALQ#9eKLF5nS^8 z?D@+DHyjPZ$iC~SV8!Uvp-PR8=9hEYz%Y(!x?Lc|DYW^#i``9?dRoUg9LH~`?}oGQ zdN8MExPm=iyU@y}UrRK*SyH(~AzW*+XCUT~!j}}COtFk8h!JEPYB>^5f>s+L`UKe& zZzN`mXY(M?lq#*85e^AW7v73FLKuL>^#fGx)(dELLq&7fGqWABiv!&V;hTR7GIB5} zyed;(2vzt!4%d@1C{agqi+lj0#Ytb9_Ip4)v$JzD_9H2@%=P}R5bUJn8NQO@}hEgIx&F!qo$-oU|YIf&ryVy(lD2dMSj0#8<&c<@P3)l3du*BDHDX{f&`adA;tueYzRSVB7NAV91C#*_2E zo*SP)J7c={oiV{+ob~k9ULaP&0u2$36b{KS{i{v7CNt+-by`dnJj~7h7WJIspvEd# z@2y+y7@&5BBu|aG+0_O9MW7MzcCp2s@oL|~#OWvuZ&&U5(7jqKs0CO-^+>zBp_0Xt z7=48d<2PC12dn)}suIcnat}~{u^x^?iW904HAf4F$;-`Uulq|3P^g5P>=3(LA6lDP zwIMj58De`*i=o(f2G#V5r$GS&%sE1^T7cN@J70I3Z(1v#w)^{VMe*EX_PLnY?F*T1 z$1319b-*eq6qy&K2V41R9*m^?2>IbAE*s+a0ky*gA6791_A0RpdaK9B^NuU%dIu^8Ba8zlkph)kQC)a zGB0H1I~XLx$AY~L>;VL=iboajvov_U-S-ugv{&iY6lxmVBo)lEEuj`EdZlL#Kj zETS|9mEfeQAs-dhKWq#BRSbs;pOR7qj2xBa^B1k!)trDhAWsBX33epw_GMDi32=a+ zZ!Aw&D;sW-iF%L|u-;O`4ng4NsVItTg8AQ{?-nI>6psnS`I=z1PzG$+&tqHG3?OV*ySCp5rnT@_Viw{yivJ^U18BHv~y-1rXd z7j_P5lBN6=zCwG&JTy}C?@#>StR!G*bFWB;T%$H7)+dD7CWELAiBLvXc#7~k8{S!? zTOE@NeX4FgSgdJdI%p1={nCTsJJ7H4K|YKjDu5GJMso@E;M1c|%*#+B3rBdZK^>fy zjJ@6Qzv^&S9yp>a4~t}?G;GvF*kVRsWAkVd{3YXbgkT|2Bsgznk;L92-DW3+zBQVB2EIlLenN`HRF)dx4 zw|Y6Y>Z?H|U(uW&@05$Yu71&2e^-5cO?T{lqD@VtTdI1ErYPI3F_4$i5{1_aRVS*yd0-TJmwr^Jbqi^ie7}zOWT&2GT4k&*O z%uOfZVZh1OAHzk9ruNT5bSgm|CAgG#+H#F~9t7my3YJnk6$J>E4lh#b znheB8P3dzg0YMXtU2futkgSfR6bt3Iz13A<>>}0s0I*cqN4VP>_$uYS(&$N#$q{G96tObgIR1X2^&>~m~_fl`tu0qabj2W zlc4UH_2cq#Z`;TO*50HAO{5tZhw*WZBv%lx6(V{~-8JV-Ol6Wz?S+frev%kz z6@tX=!QRb2Jpp!mhJvuOs_1CHg4e~TIN`&o(PHl+=_|-aB|XR_`~>ZmYR9WKl}RKw zyZd_M`8gucg=*dq{=JxxApem|0S2AD7{I_(P8SV-S7AJE{Q;H3FxOGO{mzC*Ju_9u zVF4FJC;a-;eG*q7#l4Cm{!knUfyNSI(t2OY&|LqyK=@|#RIfscHxM+}#t^X@J@9;A z2`}FLQc@DdIDLG$$kYD~*~+hkW5c{(haYIwMpSb7#+~iST5B^T`*95wJk|4Jx`LcW z{$b{(w);)Fdbgwb|32y&&%2;glk1G8@_JDoR{R!@S6fKOD%jkM@6 zmWAK*70AMYKI8wv00qlI69nWeHf(C{-15|_j`yrL8;F`hbec#~eWb$vPYxFpDTl8Y z0j*POz$D;fyV}e6ZhxQ{34kY}7}Nav6vuRyD;(?2jn}a+lpH(5JTvl~W!~ z9c*gzx`wd`^y}!w-r=~2GYD%wB)5e$|2Ytf*!GNipHZeqx@8 zr6i7e;CCi=XZhQ)phgkv^l)BxCRisY@F@7@9QUA!z5tZy1{`P8McecrDPO>#bT*xg zkW8Ytu#I9!sd(8(@TBUy@HvE{M8(=64lFeww6fUQGQZ11@5|PoHT-}>X<$OP6V%YR zNzWFj&S0wciGs;uC3W+fR)KESz3-B?2efMxE$x7J)*3h4O8>;Aooef>cs|GJFa9~8 zy_}|MV^?W^8_D;`lkc`B^5!&um$isJ zO2ViWpnDXO66DPK2yIE@^88>32Clp(nKU+Q;j=CFw*&HL3drt_5Q7ixpY{DT5&1J! z^lh$M|EH;)yeixg$U`LU|C2tKX1Z#VpwELWK`D* zNKO5V!Ui4{J19ilF1axPtyYgSt6m9AY=1U-zi!`RRJQs#$xoz>Onyy94=z#B(d#Jv a&mcUN>x8RS5SoOp(gH{q1nHnO>AiQPh)OR~m6FhV2c000X9 z3I*Uq;E%(AiBkYT0_sW%Mgez!1QTW%sZRN=?1py^FYm%AuOiLh2+_Ju^*?h99{%YU z)BBvAzY^{G78b-L!#gR-cXv_U6`K*)Fo%ae{*&EDw@1fEF&}m;jXfs2eYb`J(<O*(n(blG}Z?F@|#k*=bso&feUwejosUYm~uo!>}38hk4ZgT$?fwlTn z7=GG}-CgL^Jj8Z~{8}BDW}OVbMtOFpOe1suntEDk#^NDAr*=+Dd5=Ei0>=~Vrg9;Y zi4AtX_(@B3g`SZOs)U9k@Z+*XV+6V-Y^DPbw1cTKLPbu!&2a9ou+|CK9|^Isv1i{X zSd4(Qr#Eb5wcls(9xS}_u86|gGY5N7T=163RmI!}r}dw)mM_EHHwtzq3MVZfW~tZB zn5@K3I1-_4gN!W2FPSPb$V4XeSs^GQnPk7tMLtK=HTanarI3olQtA=1O;k z$LGM)TNmC(?3zF@r7jwU#LxI9xtS-&P=8INX*2TD_U*!+U|4w#K6ISO$hH<_a?mHD>6^5vn zJb&IgCwD)%`Fr%^%o?oNZ>l;`|pQgCa}TH0Cbu9;ig-5 z-|pPbME*Y`BcZv6sKKqe3 zuMVsG@FJ95{(tslJ`uyULzG3zfN^jmtt@?Ofm!(aZQ~yc_-96m7&`>4587ajBX&Z; zvCsbwi-hi~0Db7UMF5%wkt=72o4>un#Qb+=NI)EOpa<+x?wzI|Mw5mAXa8f+XH@bU z%K|*W(Y%~VQp&$i0jdB5gb%Qy{0qUY7=R9-)RB(X`j06pp-F*hyiNY|50vckgqZO3 zk8CuM|LjT;6eA}8?|)*#;d+q0Ql7Y9&cDO{pQe(f zigBB0U#CiRrK|*$=snt0{;ru6e3_Xr#ShrO5QPqb5Fwian#KOU-2@3@7UyKk{dZ%P z=)t$A4&=W0d*B=f3a2uA9#Lt zc*OH}YEWhL{~aXgw^Z#lZwn{HE`uYD7(GJ%cO+GCq-C>T8h=+%rvQTMQl3WeUvMSy z;J%GBrT*9SJt^?uiexgu|ALFbgDYv$mG&207d*H*RcrEp7YR!O!NoMLX8wJzRX7Ol zv=%4vf5G*{gPTNGf9)^0SMlIJ;FCi9omwad2(D*s0O#LRIgPh4F~fJEh<~RBXTpPf zZ-D==!M78E59+ctE=BwWcNq^Z6aQWHzu=1D!Tmo%A`h#$8SB1%7dCg#@b4N}BEdD( zQT&}A3;qxjbLZdrdm!Zr(JueqLNRD!5ToTj_3tTvr=|y4zKZ<2Rt0da0iI)04u1zT z0@{iGg7=T7V#)Kll>P4_@UQ)M#YpJ?f9?NMke8`pY1hQ{tD}_ae~@k zd*?9T>;1j0Bbc$!@^s06t>P!ne;2p&v?GuqS8QMhZ>neH-a()RN?r{$sxqkY*&M4m z+!PraZE+gEI95;RdV#f;&g9aT&Xo3b&J=YTvk3;L=ZEuGSAt+RSsBl}1N~8d4tA~0 z2!nb%A0L!=Jo?szwd%mp;CgBWZLpg-)B3w~giw0II1#+Xet3MZ9<*4{q4FA(o_lfV zrgJ4Oeh4mXacbrT z&gUj;dU~z9x6YWcemk?qjeL4PK*xi=@TP5JIn|DOm(Kl+M)4ZqjTlA=ccmuvHf30? zJTPj}x145`#v$Yds|QgM$(L>1SUOH>U+kh~4=Z||RzG6>d@((;tbMc!|I`%cchX|3tY z*L2Y;T*ZxsQQ21&62Chs`)TK&qHKCYtn=kiCj5k6e1f|%(gB`@af!DpbqZyjmJqiV zIrspUyTFy34hB23zWU&{n}WY5T&C6o+T7+!AAHEF{8(^%Bwe9D<>4JJ1lmKEkFUa{ zExxkr@xk_pZ1np)sT$ee57WL22A?L_?7;fC9jRZ(BjrUah zEj-VUg&SG)KHwvk>)1hywJ%=X;yLNy{8b2K<7_5@Npdp|_V; z2gtVOUp1E?k(d-}bI^T((SeIa_?0Hd&uLqerc3(f%__=WHmb>k)tUUyV(6B~%HpX! z3Mr^V^*GQpx5WMOj=k4EJlDwNt9k$Q1(Lo^E4wM8LrQgt@)rO{-tx39oPFh;JKG)D zDedD}*iYE^1l^*fag4udLK0rMLby|BTNx`&Ud+am+#CywSqVP#tGdy1tTzwPvM)Qp z8cyz1)#(+-RU1`Bxt?Z=oavkn4M)or?jxaU%3T!*WK2Rh8NVq&#r%BToHMYu@RzS3t#R}HhOJXkrW>fD1@K=+4)?!kajm_Sy5vHzl0}R zFM2r)lAWh&D?0pt)?Z|NNhrH)-R`MF!73~Nkf3%NqR;|0>-C&bPyj|L!;Tt0fB%?o zDvq@u(1>M6)AS~XJ)^!3ZGh*=25amr^{VbHbQ)$r9B7vP{eRxf6f(17{d1cSC{`M0 zJ9?ib-0VEl@M`Px^WM)acfQ)RxfWYA*p}b=LCbC{0##4DMu(GSKaQv4FXl6?D}Mj1 z{<@$j+L5Ee=c4K&oYSXfaw>Y^BcKVWl&aLZCumy=hrjDdJpKh7Ic@s zR>?8(!!-cMSSp@`521AY^i=|u;%W&1Rz;l&3^Ayq3psihO4T(RfsE@{+*)u$3`A}l z4R%Xa--a2SN3c1cu?=4AdqObVT~$4sZ|^4urYQ$y&p!%0KGVta?c(1HK~sBfd!bnOzXO;1AZA)TfNe--z9!bFA>r#5&>0?revLXioUGQs)YD;a`4@(PbkI-G#i+s z&IPGKDn@py^N8Pmu!YmiX|nph1thCx>V@T|k>eK+2GH%ZlwVXfMBOWFcCo~J(n3CC+%}R}Df)7Um ziu&$AvZQ_U#DeWryW)W@`wRg~eKGfWgM;4;>7+qgo6R1#k5>uY)rdZqYj67q{kpzF zE$>RjDTI%*qSE>6!j_uc=5$V#40ZQ2-KcEDF;Fp|jhFlKhT$*oKj@mI%sTIzOqTC` z^o@_q_r_4L9M(JY6*^LtT%=&15xXijjUnDAxnp<8k#5tjPl>x=)w+^*^M1l5 z+Ie<5V%}aA@WN6xAvDO&5p&_7#UMo+wNt*vpWmGz0^Si{__vLube@L$msXRdU4Scz~>E7E1+MHbmd=v$e zUJ3mQlpjdwfH!2K)FWTN5v>-=2H*Y6HCo!CF5{$m!@8r0OP8f)s@7b`?KU;pn{c<~ zHA?@>H|_LDWem%&ul+j0NXyG39V7Gu*XCb|Xwh}aeK!JbH5`K*#y5|9Vd>xCckose zLxG@aHW|qh*58?bHAx`yhE0VU;)<;d`BH66%y#tdsep_GPE7~h*Op=)A&H)>c}C`i z2qVaLuT2gES%L@3gyCc&)Y{W^3-bKH2q*m01BJ*N?U1NT7do{-0zt#$w!BG+{_eGR z>882og&9n^JSlHYbDKDS1m^79L{+-;#i{Y>MU&z&v`Y|7KYE~u&GW|^O2 z`V3sx^C(K3j?3nOuQ-OVvvYV+3JQT8^^t-oyT$$)%@U^3#U^FF+Vi3AL+e551@i=c zt9E^mQ6xm(a`_O~X@5X`;jz?HuinyZ7^A)ZA-kGhAcwz{1+QvEnS?p~(C3{v`I=3k9Zd})4o*!R_MPr`doq6&}<*k9e29zyNyZ_hM# zR)aTD&-};bUYn$Q2kR6DjJBI&C%-6CQQXjEB|z$eQzOG<_QC7Ze)0mx^`=dYoIt;zhu_gb9MOL5(QKz z&~whFC&;`Yp5Ih(I}zIpe^CN{OJzRwSy*xv(7rOVmm-Y(#tXXa zt$hE*^kup8C3UC-CW3@xqTsg7xBDt=&`|ai4pqS~$8#@#^5te3N?dnUnrUh5`^v5J zr$V=IqGIaJqeqGH@tG6idk@h+WsOEjDqlB0NKDIk=lZ3@XHbddaWv8!N(!aDZbrEm zn)|uxShl@Dp5a#TDXjIrW`dc1R~ow-A@bA9xHokKed<0wk0(2ihEEj+He4^52Ai=ePh)OPYQOsp%HGGFVK$+)zdl~Mb=+HGrSN4x z49pTXuQTxIDOF&_KGS`)kWTx`L>TJ#W2Tyj{5T=3 z9}Pr>oE|!{RrNjaS?$+nuJkj(N3+GR7r^MPg>yM6YJ}W3Uan^7C!f3kp_%3WxDU_Soe!=tjgX;o@P^OGps)$j zPee@$505G@&ird;X2QX%_=ZZQ&L0K8pQ$$Ciome^?)*vVL;&`j(6}dvu$4W<#*99n zJ`hqnS}0fX;A39taN3Q`4v0Ggcz*KiZe{pxi;tb)>fiGYRmn={1rc33H*j0(F)u`a zeC1g#S*nKw(#7JejO*{JwmOZg-ycd5rhQ4VeY>IR-WvrBOSO%CV*TB2Ev<{a6B+%z zMTIpF&-AQFH?_FxnykX})kefSZFK`K?CT@93;RI~~JgNEVVR1Q`5U!i_m6AO*G za>&S^DC~LmzEFvgP$c{oIRy4%vew+@`rYG~G+LkFGjB*x-`Jy5B{DS7NuQwfB4dCpV%YbPksxr2$|nv|Qj&@EVqpbY(Rkf0WajJcc6wH^_>9R0AY%^To zty^vRvd7@$14((CeAEWzP%$GC(bDBbA&$!9>Gauj3f{V+a|)97=>ha+kd&2GBRNz< z&9J|ux?m%a$!BcX>LOP>oNn4IEs5}scm+lbX-3?>_n4?b62P=2aw(jo#iG?>>m7ID zn6ln`vza%`9W5S9f-Bnvw*#F$C6-@;jJyu+{;-LW+nirpP7IM~cMOlsOZPJIGY?u+ z?=!~-tgRbGU33B#2K>Mzr#Hcmu%WdE<3B%_o)e^ge|PqFz2$@L-g78|-1%t;vF}G2 z|J^Fq+N;!&+w^@^Bql&RG>?gM=jn;i?If#LkG6s7!L6zaY0K>OxO9&5w}F3tq)o_{ z9=yOqpaRt)>c6~^L*8t&X?zJxuMhgtP ze^0SSKqvih7K+hunysTHly9%!%T9s{>bS&bb#FIWzX-&5Da6{$!MKBHx4yJEbx-8@ zKe~%*Zyd0CFp{JFUJRrkOzmN5oZ*}p+1dT}c8-z{_@Kk=%EIbvFv#9DW+^^<^D+uP zXL|Rssj~8Y|3uspB`dUYZx2jRGJ~Arju4or&|A2N1)DFNC!KAXC+j^9daoHZ>6!KM z>c&rgovzX)i5Xi{@HO6^Vvg+ltinPJd&C0r1w9vk?iD+$Oe#yj=>UljB`gGdxW2-v zo?wQNh^Oy3pPxEi1|8SrH)&J26tMvT@8TVR)5&WewMt?WSEH>^Cwuiv^XY_~wVFdv zzw9CpPx?&e2HD+@{KAkSYWW0!@6s$6lFPEuz7d~&nfc8ljevQf_$TDH3(k|(;Yu@M zvBPd*(Ug=6rZyLr=T+{)eXraKUW>7`w_t>EKbnI%(d4oYxiAOeT=5r%CdQeU~P zMpzgw%@@OLzk1BJv{r*z78gR1^YICU(!llIk#lbD@P z)!PV2VI@!A{LodGgvv7L(p!J3iue09F};g+CFxa%^*|U#OO(AMKfK!nkL#vLZEx(CI?`Te(7)C|Gm6#UIYdAPF(+&F_ODZ3>+;p(II`9i4 zn(k;JL8fCN)IE|dqU{XR>k0+VFVq;qQJ0wx+K#bykn7^ZD_h6EB=t}8_&}JXy(teFL-m)j#8Pp&gsJUnZ?A|sH*lGn zmwg3xJ078p^F4%nPU7Nn*l$ zFw}f;1^T_J#?ufb!CS@btq?p9!jY?Tf`TRw%g&1o4Y~K$SfkWK_lc8$elcZL)09K`++zqLqs#xN zU_SkEEDuWOen2S{5jDVAWodt)n=9VEHU9lRKC|IJcz7py;5M_iDaC}@4{E>wx$&x5}< zZ*{J6iT?3Bl<_)$_d5U77{#)-x>94a+Q}P5=8CK9AQO>aH z8_aMiXpPOb%57YQ7*6ai$hdAyQo_I~*=IcM%JRhG>!Xo0Ac=m}sY zy$Mn`T?)rXPZr29`94^-sMAgU zjvwC%<+aAPCWo1`bF{#+RawTKj=YRYfh!JM@4_$N;`{0|39J6{QoHYVxlX4=(LG2{ zO2^hULQ*D~3M=y#M-mcjjpfT?x(ZaSu;=;n(i>w~J=!R0DVQslG{|XY8S&qKydSUz zkmzd~0g5n(Qjc(SB|hSLxrB``|NOx%(S(VFY44_rHsA>@QjwsA#swneUCG*4`dlCd z0gUY{#g4D{VO;NLX6_{2+L3x3iDZHChTiBtw6r5{;behjmCTFK0%njrF3^C*?;V}R zGjN<^W70jnd&A{rEg`)SdI4wKd2ocm)SX;;vq`W2u*uJ|xPaMAx- z)k5q0$J@qzVUc3y8t-G0q47)#LXLC&;W5#>8=uXr8JB~ZvwS~z<@on=e}GWfGq3a~ zci}*SXQTb;2b057Oz7=2-<#g+*Z5DrPU>Jt(b9;8&ZG24pN7Jkl=bSEw(q@(5=&a; zE{56;lWNGzVUmbwoO(m*N$)(3r8xfaMTD9v(e_0KF9#0EehCOZUeDDP71;9=9yZ8J z1g2VV{OqjAh*G|ecIuPPmGmmj3g|mm6^;io(CZ_Xn&yrZwTXBT? zze`h6pq)@s#rE=kX}lLN9w=b=!ctBk!J3N?VLu){MPWd1WcOT>5mMUvy34ZuE=T^9 z#n7=W!s^N1a!A#FbdjM+k*F-^SSY))hU3=3gKFh?KR+L}qt(Gg#@X9Gdch~(qNU9a zE87Y4z*{FzNV9k2UaNEKfGQ~}i=;1}DtGsAlcwcWTe9OSo|X1ei|<3JmcMt-;@bE!jr54L$hNvibHtRxaLZ>EGokW1qMJq|Ilcpg&YDl*DN-nG z?N!M=O*^74&%P@k(0Kb8ha5rIv2AWLu~6Hsj0ky#W2FjhMs5qqm>BsfDklgbf2CP8 z`H2SqHBI$*S2s!Ec7b@Zyi7y6=6fOPO`Pqu{({Ipk3Mt(FGYySEZN-E!l_~IQZr&g_7Xv(SfKH?{{W6`cu zPzjiXW|Btesp&PmiC9*?{b&ujQ24kc)G#j=(7DjgZ8K@|KTZtbJV-M64p|zhp-+t2J8B39Fj1uBFuxtNx8Hs2@sm3&f- zGMhVC*Phncr5+LSntWW;(e>6$J^#pPv5T;u8R4Wbar+zxa_nd36Tv6@ znFCP3Z9W2>0WY^Wb}=tp=qJBcH&U)`84ootQOfRL;89vqi6Wx~Qabd0C<8y0CSo@x zw>eh`8#pf`c*h!mhz0g5VO8Mu0!46mk-@r`2{*}}#NI5~DY-iPAv@i-|H3|>{j-1&;m?k!-TfGK*X@3|2G%`rG&U>m9P+u=4Ee!An64vl&=;bw|AjN9MkP_& z;;|^Bt=IOHz`G+>kq0q(SgHx-Mpno~0-BIyb4VO+ui~kuD1;n(?|N6&2yitMh8z~V zej)9UwqP(W*Lpk>nlFv^i1*;+5;*3Fn1?H99pgh;WgmIem zeML#-Ox@#XKfk=kFDI(TEBTC_9n0FfOMSBG*Sx^w+Yo9+$t-Q#A>%414|@bw(*)E; zjNT?KB=DzV1vw}@Uq?{olm|VVBu@iDuyWwK5pK@R?Yf2wXB+7!Va(lnDj@8<@yUZV z$0IqB^>e$>x135HxBz1-i5}C&#%GQswLalj<*ts5T)0cj9lS!8AZs@l@XWS@@E4^4 zP)x3u7Yc+ywx`@mmy+u@B+;TKJP;n!q|4|s&F_}hb$O&{f+Fv?AKa3 z*H*iUn(59h;O>uShN({Gz73mFq1?;0%-I*^L_vZfyoJ+V>DrfuUPD=bc(JJlSDUvsnJ;6dw3+Ki+^mAx3=l2vxvqh3& z{>m10ce~lI9)%G$(`mFDfJSV>zUJP0y49IB=FAr`k^BiyA%lE>S$SuA^{X#3Z&G*6 zixri>UBnz+TTRg-gO>a6%og`xPvutAT8t}!8EFy9Loz1=vl&j!9QE`t9O`60()m-- zjYyh{#qMZgRW_NGOw+~B1ECsMAH%8of|oI}`MtNb+~(V#dI9wHAQgN-dS=tEcoMfQ_<%(EnrADrjsu%Xmxh)?WMrA^<+DwF_kYwuZTmpAc#tpJ`^SNO;O*x z%{5eK^O1`B#~6b93gKm%&(aOXz)G&LJC>Mfd%FH<%L}lk=e1zgAWJ<<*biCGCn%sb zLu&V{Uv!NgO>B-=v}$e^I^#lU)0@(Da!BPBO)X&cM-}RQ^-1GtB+b%Mo%e@{R%W9g zUwA>~1PvZpyxc81c{Qwps4C0}qZR^-M0P|GL^_R>p{45S>Qbh9YH!XxoUPANUxi%c zn6)F8PbJBo1*?Fm!FZ`Y9JW5{JD68QIi;^f=!6r9OqVIx!HF422`@R zuWYhZeK?>#v7gXo>N*1Qu{nxQ9}v{Tu4^(%)ENd)ezB;^AeGOe zzsKVqKhYtvcpP4;p1u4^g^!lqtQe@ZXuWQ$!tc1kvuhuhLqo|zOWzL_%IBx$7j8L{ zAAu{mKI1p#ZIQUN?+zxKP(TwHcm+qJ$$v5-(%1w(waoVfYfepo#E(zHJHGLS$Bt)4 zKy4m9C!?%^CBnFnLsiF3CppMs;rBKVmWE>hMQ!k<`q8(mk6wrKevCkB+AVY#OINz2 zBoRnz7$9lV_p-$COfaeaV%JIHAM#)9W?%I@?aCup)xd}+K=r}<40CuWn3{V8Apw* zgU@=nwugxnkwv700DXD%uZk>{d{Xr0l>nu)f%s?t)Ct&mxjx_|ne%T4s@z!A1v8_$ zvP$KmFoOZ1gFicG)f0q53j2@t*Sv%~i_5_eeJ9wFt|#Mw#!x~adSF6hsoze>9g>2> zsK!&*(fT9zK8OUDN+JT(T@emYwDP2iB9adfuT6nYTfnu7= zQQLO!s_%BUwYlCd)5zdqj-sdb)2!WIdDCm0E79zy^g5;a%$Zi_PJ()w#(Jg}vemXv z>)p*pVH&Wu7wPg!uh`!HHJ*)WTx6DPFnzR1rOm2!U(`%+5AfR@(}a3!!Q(uUuLE~x z=~lPPvXlX*7iQzF&TP7KK>(7rUsvuTT8D9A6p(M$G_8$VGP@ zkktADW`eG{R11YV`A>$R;>H}zH&l<6i78I4#!8D2*NhOv2)fKWrh$Q~XTkA|UIb_Y z;C?6=gIm0~+kL(G&hl?I6<~X1!GFp0;sXcmuT{q@z;Qc-@dl!N5G> zko>{H&t9B`&WE9Nodo%VDC*@KmmJ=gdF`)}=sUWK_Hh!~a0gF|Hcp0{*(Kh&0=vTq zRSu8!@}mCpgP$sZ7L-<8H)re_e5!vww`euh?|Ue>rmXCVbs5;MFQ9P0>QRy^37@cvI&I_o-68YUR z3~MKXiS5q4_kRvEu7Jfkfgp-v#TNYQcB?uYieNOQNj#^YJ&!cKPv~S zkodtw%gg*}&>r08_}gvU%=^-+(mrMSWVAfjoTNa~e9VzsI84$p^x5_78uM2Vh?QL( zO2-AAXbI6mI6V8bcs>%{!FHLJ6a#u@t1zKx1y~qfF74SKd2R{DeW@EbP;3Lgs3%eQ zcn((OdHPU&4Y=FYqiO@8kH#xTYxvA>x&o=D(3GQYw>d7cfIU?95%bExeapLkl}%Rc z;m}2Fp>Y`i>KZd||H6vnGsS)frY43>tj%JYDK~+Zt8Gs>Io3)npWC#1w*5&TrPTa(D-YU7xOX@{$|nTNLD-y3U&&c^3>CyZ!6-4@ z`tsn_qfCe3Hxv%xT6vNNO~C4E(#$93KcVo;{~EXR<=-`4ii&X=yrELGkN1fwcgOpA zBP&2?!39<=z-r{bkJ zGPDVj@j-a7P%Nmh2;Vr1ee~oo;I1S83QmG;DBY&fKJ}{fA*0kqG>61hFTm5c3k;k~ zHcEB!xmNECwC|0nVkI1 zv!88oilppu8lRG0Xe@2~RU#-c*a;S!8)XBkRs^jJ#s$&q7MsI%J~NWPSmjtMq9|FB z%4qPYY~yFy4iUwP{qzj{RBMly82mOHijX|#{(CngT&293#-qt|5+w7N?3uRzTi2*Loy}IBk*8f&MCU4zDzS(d>3_rx+eKC zLYHaX^H?bwR9>j!Mh$JD%z#e`6yfKMpL)=2xMi!8Oof zf3qXO243z`BkYeA0xNVXpQ3ME9!QF!I5SxVf;0fm2{>|3%QFFCua{4S zIFSUe+wDk+E@gb;00!TJY;6_j#7SvNofM+TR;}o-XH~^3?uaiix9P$X@F(OGZ3dsQ zNvr!sOSM^JHPwM!6h%4?FSM*S9u~XpzNV(1LKM@r2QmSd6>UgJ$ZLVisCH}CK_aJi zyNMPaV?K*k4_pHDN{Z8~M}$gxB9mif2kNl@tLMIK(m>A`G!s?Pe{KH=J>(&_Fj%U z!t2lU4vY43=y{&-_;x!_f+sSkfV|Cv5WE)1wFpXZ3h{C0C>vX&wVJP?=fpnkg(0W9 zzWZy9F(){Pgm_S?oFW8ZMUxQ1y#Q`qmg#|HY}F-Z=^_MDg+u@vb6RiS+@s^IJo~Wf z)8eg|PV26KyAJ{KaWA0e{x0voX4wD*V>1p}&$TzX)Ok-7I&r1&!ks)!^L{(>g3lhFo6(B~e>o_Fu%FuO7j7f$H z0lrEpfDLng@j;}U6E5g7RSAEIHS}f_ubrw`>f;mtlOl+vd935(dPzC{=_jX@pK44I zBogqf6$H5?NH*Sl6KTg;(l(H;+cs$|$XIoLLKamV8L>bue8cl`@&30~7gL%)_wQ=M ztiY}$G+f7dtn{5xxmLE(Xu%CQr=T+=D+Nq-w|y!JJ9s`yq(O-li`2-VZ2H72BNDhG ziD<nG|(6;)fwlu7FoRWw`msEd4BScgC5tW+dCfbpNP zQOD;tLB9m5&Y#J4XJaJD{ntOJH?6QCK9!cLr5a2t@RX3T7b|&+-LsYgMJ9V$qD~o& zvh9s_W&tT%;G*t7|0NjWS`3_jyWz2<3rXmj8&358AT0II;5l*)C2WYTLe;>DtXEc98L{O=1#Gr?VSzh-lz2Z*njM!<=$3N|`mQu0Top z|6KgsgOmLIviE|L4vqLI?D5SN<_L-TbWR6KwZxpp6rc6EU8}fD6PCUkMd8vyW?QnR zILH2bOAJ&-cpDch(%rL$3hbSqi1=Fdvp*n+aHL<}f3nl+@7wWE{hrIBT*ll>kL`?6 zv){?6^VCvZwj7(q!4uGH#e8Ba*=OFzQJp^n^&Rlm(}M@{AvYiIU$#E=kCdfg78{F> z79-6u6XF2X_fuwtS|S`*83Qgeetas>`DFWr+?Hf=$>0pj#hdVLvZ;JZ*<#SZ) z7UIrPCMkg3Nchoe^C*@xTL|CzRtZG-QY>?3acN)8|Bmfa!sYS>)=b=v#j=X52mbQT z1*gsWsVGso!wlpe_)C+sV+h*8CYQWR_^`nYqRzm$RD1jM=W@VMCV&0ucp>(FDzw3p zA7BMLwL&aTw4brbGss`&ru~fN@fmM*xe<9CFbtz$9dHMgTZ(Z@Gi$h`d#iIo`<4ES zk9E%y4zBQLz+6FLsme4_R*j%dkE8Q@rX|5u$>lTL67HfxnG_HJl5EVF{T zh{)O*$7!$E*QYA4c2jXbo_8?2eOv#jDxmqacGhCQgjVBqul74oxd*Ga?)@s@DnBTi4+)NZEV)NyqDRRtlZ=Fe-liK3FGaBykpD+k427;x?3mtLD^P-&T|`)%M|77QawP2T3PBh4k`AZ$lZI zIEg4u72iUv4E%pK`M6@z18|Cb0Eu$KG)?Fbz5`DyD}4W@PCmC$JiVIBFrwUq1!W0R z8PKcMxEJOJ;gewRlUfnXXXi9;j|;6amEpQ@m80dIjGwDMm`MsvQoL=`B*ZitzD)|m zcRt$XxWbyi5{Gf7p!L+{MhcBN_n8I_23+=!N_1NkMQ%J4!EDW@)l7qP>&uCu?(<&P zqTvTP?Z6|VcKL2s4m?X9%&{)(sh--5l=4()$8IcIequRD?X{A047u$V-2c-?e&`3*b$=OX%CCq z{cIC4%F1{-ZZ3-&ABJxA;x6>scibFsfwbZnN_xOZ7bb@$30=bV$4c_D&@lKb_2ny) z{I?4c&5J)AkjGiL#?X~}8hQ)6pNa{#(si-LAkkf{+whUZ;mvyJF$pcP;&}uw=kobU zvm$AW@3zVai~rz+k#v*wf7*3t?}5vOzlo4=nX+idY2t~kPGUbz*Hd9(mx+zfOZ-{Q z`CQ-L8yoD*$#EQFKtk!}Sg;Z7@BlJXpy&iEdMm0yh-tfGhl;_}<8A)6F$8@qG$vx1!`0+3rLoq@CGxKVhzlc%YHQqWr5+O3~qK|Hx7@qYn1sw43X_ z(O^Qhb{}so8Y99L<&Ku;4*j>;))s%%* z4=6GjnbHzZ4%YkUoGq5440QW4ke7gfk6FT>jTo4w1?hmd+E-+L;QKuz9LEgHG+yw} z(3yC2|L!e;BaxpH=0RoGNgR$zx@Ad=L2-glNWi)yudUiAmAbDSCPw@8dUk~iUl3<2 zU7o9PENv8cB}IzPu|fOr2Q%PD$e$5>dmLDYtJcZyU=%fd4zm2#{p*@v8tQC%=}SIm zzoMw+Yk(eZ9#ro^vka;mR_d+K!monycRwVBmIwPA93~_ofRIWk5p*Aj5#SLvR|2JR zhI6R_H5ySHbtIi5J99558t-{IPgE+9x&snMjdz4>r|Y^Sjd($KNkVWf!u022xAh1p z5Aba5uC|9qGatSH_mYCSR}IDF-r?v-+m zs1xVJdrr-#!s4Yg+({&DLvZ;-!uMZ6yT#Bc!ti~A^6+&Yw^^TRPz+jaTK~*vh1GL9 z_ZRNoy&Ore2yxT;iCcf(Dhl0{aknFAy_vz^013gK5Fb@#{`>+-D(eOdZkzoLmP*SI z{3h5+fl_rVtqJ_q*LHI6GN=SM!ZX?3`a9ENKkB1x9sK6mU8Z>Yrh~l7(zoJo$m*RP z{VZcd7L+LvVv-(4cO#+6c;W~?MLafvxd3T~NyNNByXCP?W#Dh3-^F=)3(L48j#N;Z zVch9QFxmW_jMR#(TrG6o*^b10;4>lO(tLm}J3<|t%{6K_R~3*&t~CL2s`I1{uI;<` zp)Mw>zAEBm9()i|1<#Jh8d&Vo2kA|Qq{s~35nAH?0khgMVfu7yx_eZtfBMez>Cv`& zU;Sg`9YDlV;9cq0)T_tJwQI&F?ou`7fC_%@RrlDlEwIcq3AQavzR%ROb}A4ws;o3K zzbfwfAi;rT6BYB~vamh6lrW8Q`LoMY@H+$w9)jOQpoDMNkCnf|{dsjj6HNL#sz~Yh zwq>$Oux}8aH?eOY5Sfg0q5NmO4~mBP3VUiMI?zMt?mmMuu~@X1dPWaQN8`y*tq%{A+UVx3a<9 z#{eYd^tyiy{w$MBQFkHZ3Dsv@#)JmP=1MZ4a>4Hd;C^<;8{e58mZ#A$7MfKK8iq00 zoR*lc@%aL*2$KE&35u7)nG!{MqFm7oHbI)9KD=Nv<)C!8*H?>H$Inc>)Jl)>z3%Nd zW6&3PfBPsYjayfc4u@|*GH9bu@GXa79rM&cwT4|a8I=>m6@aJJs>XyMQ^Erq({j?F zB2P>n>GC=vb$0gAw3(c%dlo5rr1?z`6$HP|Fe{R5k%z{gKhw1kE)Sg1wyyu9T}Y>K za{bYVRQ;MzU#639k$J;L8C0F?$HB6x`^~Ofw&_u@oZB!H1JB4Z(Ka6m=>Wr;^d0I@ z4Bm}Pn#grF*(xZNNf_hX@2>MP_khRMBjzXSOB3PN)+E0|(%==F@JvpSEtq`%mJHu< zHh2tVbX0(%@%q7J);jf2zip}ZO>%%^Mib1%V7b~Q~D<$)p!3pw~R(!T%n5m;t0Txe*s*5w2CV8yiXNVp^nG(ZI{+ObauA=Vig%%_R?6K>q*{29B2;oQ9Ik}_?hggDb(Mjy zU1^Q=SuC=LIj0_jL!BP-TIcWDNV6_j4mg2ntH8HV1qxRUv|KGfKonH$w>!V3ar&*_ zR+A7ZyzvXXrf%X51^RvJg-i^|)x(x@ScDw14+X{xclYd1 zRj)}~LGIF+*>(7A@{%W1(mN`GDy?ELgqZ;UevJhUO0{{?2tyL&E;eoWz{cpoVuh#= z*o(l4hlLlKV5x9605t<)w;C-yIBi_6QjT@(Vef43CsuAhRPQIS9@<66;=C&eeW5D25FE6m6DVO zi9tjG=@z7=yQF16kx)WHkd~5^?iLUO1f?6KOS)m^xw!B9UF%)z`TTtQ`^Cjto4q%) zXJ7j~kMnmNI|wriP(~R0wjAO!3S4OfDw0BWuOEB?b6!JbJ%O_?0W0JBz=zBA zSqwVJ5GHO_$?cemX8_VEP|!y>zd-ZAOu#-#5i8i#K?CxCtigac40}z< z$UkzGp$KRv}x2;8+n$AIW7J)siDzhmn#rSJVv)W6>u_dddvUSRoaCE z4AG3EaaMO_lwL{-Dqgd#qCdoRZj)d`&Jh2jS48i1Kzj*%RyAy*oe57GJvFbx!meF@ zi62RRI3K;T2s-$91ACR*y{pUyLcq0Nf<7#h{iSQUE@$2}!ipqBqO{}gdduimSsM@6 zI@#nPQCrJL7p=4aHW;MZspVJJDh)~8gjVr@acDk1#v7}U1Vlc z@(7o;p=B*T+@UI1%f#*d25jX+;N$UEO3fn$u@i*Ib_Zy9#jx(Vp>BbO!fKEzUclv7 zOxQMnN3hAq7Omuz*$rsP@WM-o;-4>XO^OwRdC!JtJF#E%Cx2hV=M4Vuc*chw@n7mC za%vjpsb_X@vim%1A3H&xZ`)(fz5LY*Y`tcL@M;JlKrvWq)Y1JeA%t18%O9dGc@ z#(}f6=x{?Hd%)w^G^Ak_jEV|-ZI$m}eRp%KuwVLaWq)?CO90rcIKlC&VR~L_pOyWE zFa^K|HMU!hjnscxdoYp*_gv{*sKd8+EZGZX!ftzhi(^fZP=aO&F4?{wn*v%n<*s+* zM3s%rD!uC}qxpL|Cn&!6O#xm#AYA%-Pl9fxG_*wv+WgEOr!&<7wfE3>r07C1AqNKV zEyjSEVz3l>(~ooapZg7-97@ji9q%}3FuxS5UNRu*36MqIe~LL8bZYlv3FreOXu*4j zkrEo2orMOWfL;zY1`2Fw&06v9e&gH_$?p;Zs-nVzg3T}UC^+gmks|P|qQBHvp zDD%2{-V|7Chfpkayf`23Va7zI{@`baNh}xi4V29~H0sF{SaPMX*q+UYb$`Z%yiudw zN%`XnAMHl&q~wEd(^K1ki{05nk81T0yZ_{1pI(CYZApxwP|}(=4)cxUU;?1H02`cTm3VUS?tj z5YCxT09&Eems0aq9MaaM+n#RXE_~lA+!vZ5Yjxw0#3Lj`6`O!E(uJTCeZ0TY4@ysT zajna2?$1nFnxmsJh^+jdqr7KrZa1v4FS8$g{&^K22OX4#o;N+R2MZEYE?~v%xKU;I z1?)wW6O`hSL&6WWuv&P``VYGMllumC`e7Er526`zMV&0(yh<8n>p@e1rJAXN&P?xB zKjw60cHlm{)tgF8hiQbp#|xamZ>viWdy~qL$5bvfeiay%P{Ph%>s3LRkx9Hat;KMCVtn!V+2MJ3H=bs^>L4l*kbkc-G8gSDlYdAZ#EEc%K4L4_N>I_W|Yq@HG~NfWhOU45A(DjIlZRsYb12ZKS%(>S^AewtZ`10XX>sedI9-~v%} zLlweJ!}V^RY*exTU4^g`6qt8>CoDFsnJ_VBW(XRzTJL{>C|uLVHG`uxX^49Kks z;@l@f1u0IkAhQEccR!S{1lO!Hpqym+>eGde@U(zKqynslp|`bi>l+@M|KO9G%g_+B z?1Uu>71*|LvJ8a~LJGl-u^>eTPgiIha!MvX>bP}v+aQ_W1cCBb`-&5g1c4)@1c>FI z>G|qu9$vH)j34UL7yfEC``Bqh8ngpAz~Pc_0DZ+a>vSw9VFzoeD|6r?=Zk&JRvo5f zZ}E=4_ROM%+2p(&B(XB)YKFa&jUp!HLmh238Quv%Slz&Zs6@e1dBr}|%bo*w3!vf? zb*~h=k3n%5pVJDwt+BV)!ijATRy#7@NP%0i7y*+xcbpx7(=Se6QTzn7%P+xK;tjYl z&#N+JgXH?oXBDMSpBg2~1mf_Q;YUk%;jv&C658co1(fm`H_kPfAt|jx2(Q>h`8STP zb@E=SoY2>wS)?$2AT-ROH4V%XyzA0nc%qJcnJ4p%A3|d~%*?Ci`x5 z_m2rNo$!_NXq3qF*nMH723%t$QWo2k|NfYPDiVxr5gN#wk!fgEk9YpQa*bY_SAF9g zP}RAI@{UtTqy9R(gme^5g;BmDt~p$G8l{))~sjU)+;IcA@VT-LulUo zXQsvfGeX>TjwXe6CvN45p!v&pbDL(1bsk&zzK0uFc@A%X{gd}ON^E=E z9048~#W*BrWmW=4%u!qxDXAL973=Bugz=LBFr@heY>+n!QJ@1BnPGm$QjOOh1)5{Q zgE=5&kyL&Xk9ihgd$fK%GPm4zC5fJrsUaBZ0qnvN*1iMb~XGHu=+2;I;2S28=| ze^OuIx8EmAS4Mz06~iQ5^8Ca+BIS-{T=cj4)x5%;E`!0mM`hXB?uybhgIv?zf2W3d zvQ~x*wK+;UX9fuXiSn%mBl|H;8Hg-7mzZxQsVvXFO5?R}2FM_4C9Vq2tJQ@Q{pPv)-A*`2D1#X!n#r$5mQ!7ro=1T=TLvfz|u$ zW={Y@C9#S`6ghN zr<;ABHj!2Si|akc?UuKZz9&0!hu=7Y^uaLNhQ+KoTw(?8cox0_3i_J!Fv%*pX;2jc z&yU@2&JE;2H9VG8p8W$y_u5sm#)#^*yNhZFGZ>OdQk01we@yg0EG@4Twwx)ZV}AjB zk@gC6D7`PA{OxW(ksbjcld?(@Z*M#p2PY0Vj;Vmtw#TSE=MO?-!DVmv+tr zKgd<}P9{A$j9wr|EEQ&@ zq``_e%7Irx1lYS;c1!fcBm9&aJ$=W}_3Jnnj-t#xJ4{`@z{sR<-bi%Q&fRC0h-UeK#{l>mQihj9 zEcEI)_>AiJJ^{~dVzTX{cRca2WuZ%koUrEOr9zP-_{An*7qJ3TS}vswc)YzMYES@$sTaQNXmz*;lD%LBwV zg%hep*a05%Np`gyp$g!V%NIi&i~Nt#lEc-tyTMbwZ} z#Ydhd6B|Sna=i=@LW_Oze4#)oCMnczltdIABa2Q2;bd(e_Xau;;VUGqhJ(VT2IOBM zq~4cmyM+^mi5(Qqco>Li;?_xb1U%_AsO0*h@x5b_p=4B|%h4v6{qbMM4^3`(+lxxr z?bOV<`~<$~qOeTu0_ul=QrnSU0Xm)iU@GO#ix|KU!3Ub}6Cmj3{0`|Hw6}`&>gU=C z>YsiK0B%>BJq9gWu~QwyY^{?NMG~L!kn)mG4M0-xMQb#r@}R68k}-@QU`Xvpomu#q zwc!}jNO=}=hBr^k;TktyfY=9Lw)0NUQ=2qWg|qlG>_2B5KPAp);MiLbqRn(!4QNVVye zo)vj-C*_H@NKh-9rVM1snJTBmCjEv9fo>FZHw8dG(wcMD|L)j9ZLk0knu0r)t)p)z zpJj~PIDRQ!#&&`MO6wI~D;seG6vRBtQuX>hCl|&>KI*A|f8LxtPJp9mh_&vMa)!{f zDampD2Ci#mB`xY35f>`=A13Kv;guct5-ClXmKQTpWCF7VLK&s%`=5y2m=ZLAf!Ms_ z8Q&FY?4&nqT2tXz;Zf4Lud!PAAJe|U3f~D)eCi=^s$Zz3J*7-5loD8H$!Q?Zc`9u` zWL8Y2+|LQ&Nqvv!Xrsh@OTU|`NiBGSA-fLfPfo=UjP{M!kilorTHUjM^-At`gf3g#Uao+ z!V3=Sml`w@^aoNh*{Xi$vuO~zC(kY~GV6m5rN*FK26!~?kI{cF!aVw6DZDHiY3w=4xTl@qIuJ-*Isrm9Qjk>z8e=A(yc2cWfcN$J1Yo1e89!x%C~>5F6SsDa!Lo zW2q0&V(s!4bw`mCA4qzl^ zgimxBhpJ;7Y8SB|s<9aJ36__87|DmG@Ir*Rwl)n`_&PdrO20!Bf?C z>CluI-6#DL4hX?KM%ws*1(Pi48N`Qi#!mnha2PC5d4IVZ_ zpn1wy?VlV1M(#IazBU$m06#k(qo%DjSl_ zw}{RuPhDftazukk$8al#pQ;3^J;wyM6jMP#v6?YV{jXoyN}gdjoL6}>ieZ__xYARz zhc;oT_djz{WbPv+TxSOjii2THg5!zdb;kKb;qN7jL5>_9yY(LN<-wY^#b-tl`&dwC zlVx78(D%l&=GYJB#}_@W%Ai^fGVlRKa3OE=O;74?uUH;Zjh8hT!rH&Vc`Tsy^?R8Y}iyEs?_N{^lN2MG`{A z*>#vz4VMSBXdbRu?QHv7bY$oa%s~>5W z^IkQ;3|u*x#C5Un|5Tnx?K3QPLBQHC)oy8oW{B>UDn^GAGv zsBsk~S+cSJj|CuJdl@Fn5Xhtd^Y|W2x_pg>-~=L7XbwDIb|o5~@c%;#w7REQ$CjS5J&_R&!IS$13or|@L4qdcn+D-#T%YeUy}S7_+<^*0T(I_>FD1?D zjaMqHoeDf8!4Hz%Lj%=YPetBDa7%JY?rUaSEFw}A01zg(*|Eu1HK67PRK$6V!N$f- zNAD7h2j!a3B9MaPx46?YA^o1e?YtiSi+ei(lNuv$M~LgviGfN~*0^y!V%|;5OMmn> z#1dKnP}OMiElz%__z+d*UJamt+f>p!p5MWn(+O7e+=)p2q#kpf%(SAQBSVK8Fp3=f zC)o;*3@WV2rU5xCD9!w$i+ADW0UtMt(2Zk`{oc5(!TS2B%MI9!D3}IMHGy`TjVnjZ zovJ|(*8YPbH3*>ay6Z#i8!g;-mhQpY!z?)9t!D?E*A7~D&ko8-S+Axq0vvvQ7B5l8 z8cl$Q`x4n5LL+J61JJ>)>r5|%{`9Y}|ISPLgx3FI3oFAlhdgeT$O~DkxDPGI+^N@s zAvI{SF&&pNcrMLTsst(x;=kS+O)c_t&5Di?@IV?&=41j~GVy;5?(j-}%e_v}I~O9i z6%8^lY0IYPnMu}#vcBBC-Q4|!X>Tg+rG*KFe~jmvU;(gDuMGxS>SiJ5yJq;F&K@)W zO}k#T0HP^9mU$**hg77`9Zhq{rgx}jKw23Px(p(lSyW$I@WaP^NU=2P_)G*s-#j~5 z{ncrK-CptDTPhyM!$ETP(0 zA-jq~f?QWcWr@Y42wC4pEs@_24jdo~x3SSk)wrNAH5WI99p|$lvIXb9e+;dVPN`Ad zZy~ExRT*4c`i>7f$2qo?g7;N=JWqF_26{pH*jkXOWj`o@J>1Gog#xa4O6$7cc|UNm zl?z%IEuT#WWR5#&7dZboe~Axkwl%{B9fs~awm`!g(pSpuPx9Hx0_LNsV3=3>S*kf* zO?sW`JEAV6?~u#$eVY%yp_tKXBz_a1;>ue(vg<&W%b@Yz{qwP%`QO-&o&r=fs>$;* zYr$2_`>&@t8VeUi(d|V5nfx*He1Q$U?#?}_pXT_nmMPK2ZgXR&mW)3{SUC5(RbLA4 z4*#opcb=_I*Mi}0LpGQ~eyyQJfNrNvc1n_>>Mgx%a()_fU{p*YzwR*AMR(Fbx zWb$Z?tdI23<~XYqvA|{JQ&%57_SLK_^Vdq-i}HpEi?bfv53!)nGU>(aT;3g4Sh)>) zz8io=9@6cWq_rXMd<0hrlDXKC-lgA5Ak9d+FaDQ+S~4N#71g&~ROAuBtt7v$`cqL< zja2ZzH@owa5U2k@sQ-XEE+5PevHgot{k`FPn+^XGz1vcHFWO z?gn5KLA=inUzmgUL^Xb+t^S)Fp?gpAK0w>9 z(As*qD|uH{%d;&4Rq|?sQIzR+nu4>Ny7^&n8*@H}oK2ZK0bQd62m$W?9D2c~CploL zBwQqQY2NiWMsU{6Uj(tCKkP1q6@#QgU%rsZ{4kNR);a70U;t94wHxGT85rO*k$U(s zqm@Ng1kzzb&1W5^lccxT+2*>7Sm+liB;d#Lqm5U?~R7q547zx26GnHPt zE%fA8LvNJX2%9M8UTCCpD~O-;$_;3;tDEHS2^I$VxPK0qX}oosyj&1MIvcGEz?sbP zJQtr8!_1E#Pvo3DKVJ1Qvj3fm`AF$8!V8Zh?rOjh5SQ-}d%QVb__!xu>G1@J*laVHb)qN3mQp>xnM?Lyj88QKnBsWyXFk zWDXM%kOEI#y(TaFjlNmF%(k{V@yna}gw*17-JT8iV90hncQ%lpU2^tuxBzYpKK zHE?H5QV~GZWIPZjorRVL9eG3h;K!Iz6-}e7RwE38HOG_HYhTO2RHV0(0NlWm1pxvj-n-p49LmX*@_plYt0!7Q7FVJpez%=w zr$ioq6-;q}8lSM+;5%gih!)lg2m}oz)n|eD5dx33yf@dR9+nrdmWxU@HdFe*2Q&NN zZ1jcc`ztxrJE@C{k zooSAu#D#OkD#=N*^u~gkX$U*NHf1xC%1Is{QgyAecGCG4_e&Bv;CR%(fb2M*2QN1w z;BnWO%fe$RCHfvb+55e%3%0#>ur|1{_w%$%_w`_#>M$d-s7uz|tL&p`@62#|-2M#u z?q38@HinD{QAvIBR)s*T%5@#Y>mBDs-+hfqPKz3-1wpA)zHY(ky}5H;K1Z9h#;9fP zhzCcFC$F)CSxFxw^JihZeYi9DV>|rDlKceFpO>P}_Z{1*^m{x(8lIMgD41Cl8{3a} zX*uM4!*ra=v*W@Wc7v@(OJQl?`XGsZ1Jo;9Gv(8C^q}k>20->d6I-)SOq`w3ch$Hx zATwuCTDRyV(y_0=Gm>knvcH5-()>e!lBIn|H&{ate^0{c?h0#<@&MUV>AdBSxe-kw z4ZRh}*1zEnb14cacFvmlY?x|OX2-8ZAxbjHh)$eaQB0?*?+@9 zL>_NwyGp+%OYx+sifw-e<3wJS>iR37)hTj6qp8XE7K$}8@QRXUCzN}x*vAJ3cjafn z`O}^O;AKN{9XKF4-=W|Lmk+n@wIvmbh*l7g(AmTL{cWt)Z1EwXSlTmSK6-1cCxWC* z=^|}FG|Hj(4~WI0vrdUb_e>F=gkt@y5wgTdoA(LQTbm4@gOax7Ock z2jH3A{LEG5x#s?P65#J01x@T9_TdiDpYV1@*FRluj6SvMxD?wOAciMiM>tKziNY*8 zs!j2&#hHMf+O?-X{0o6^W+%V)?{E?Y%i2p2F{4X!U2hr>>g91KY_wMpKo{t*n1=`a z)j{zgRo5Lr)e#NyxKknqSBj~y2YLuqrSvAlPCWFDuX>K_ab6?W4OtQa%X7L?YH zV5G?&AbU#0HrM-J`)oyNJa@;Rldzm_?jr_E``JASobm=Nj{3TQOv*iqlGg%TA0H*D zS#Xp35UY?~PvzEkP9HTLSU>oIEXVx>9Cp8JMDri5XC_5DNr2v}OLnia$!mk+>&2_f zl=ng$ub1&=8M|BXp7zn@nfNX-;){1G_2dF{+tdQm$m-fCL6M~5x{9_-@rD z=)l(n!1WjE6H zZb0u$QxAsP3vk$K6Md(Vv6dFrh&decI-d5<@^$7)^%N zN(@NXzVfx2;6N>$z*7!J1_bWpd5t`|rb@mDwvIa89;*h3P=BZn#b>Bdw86s>5{Hng9|d^b(zBQRB@;!K5* zcU8FT+m0rfb9rSwm>ZLse9YV?q(VN8PL=+uTNx!b?Sw{6F*ym08Zfz^^8P=#DV8Fs zet78Rl>97>2%gYTX&N^6Tk|H2XIHiILO!mUi@5DCZl(OB;*XpEUQl6{P8->=w)n56 z9rSS}J|yga9Le2kYU|i6P`cgc%OK@5aO1lTFU@(2=;?Nr)#UGJ2ZqF3Am)m)$t{4R z59@1-L@c|IH0ENk_U$+3m|PU^Yt5F;q}O_IB6`v0tS$>f_JS-m48M1b+OuTAGE^Mv z)thL8)G^-oRnudv@myQ>@-=YyU<@yiot-^E}-jP8ds zX)2Anidwu3S0%8SFE_nx>&$ZQ1^be6f4al-g)fJp92q{hwk$tU-Da4kxGwlKToq4>!^(F^20k$# z?F*Y0>OGxS4xAbpd6#jKNDrjw(Z|c9p*UB^(QI(Xm_9$%HTHRgp4}U>3{sVbZkg`Z zMf>4+Q8@6PehzI@JcZmzusF#Q{a{Rio^}&NuX6n1c|1AFG$lMSG{(XlY$O)qS^m)y ztw!AD;Mx10yt35f^2r3R=E5b<{#`eR1O>?T8=J>qqr+BD#y+QYoTQFH<>E|2V3hHg zd+h_X$HVWBK8*jIh;sjxeRq(~#<-Yanr47FXz^Y?pv@8gNw%_9RU;wPy)Fw_^!O5eG;a*L$Bj$ytL%PmnikSvi6F|Q@Fi@ zL#fWBdeY5e=utZ95(>9IlLusXN-*UiyOYkWp%b-9cdW9U+fFWDfrJAj~Ii}%_4 z)(g%~#JH@2ng1m(9oX7_U4ZRQQ<3#*oOHMgQ_$)U^8#b#0PFXKD!&?1Gf!MvHFC zqx;o&Y;@218Xn1^mi=w{;>dA_M}t_mZh!q%2cI~%7|aiv5XbCurEj+eVysIrw^CU= zApy@-S}vs?AUtS)PD~5SR_CoStX?ItD@p7N0++7D!_;?4$|%qMy>SllWA6M@E+BYv z0l#^Wva~Kk3rCh!a0-j~^MDt`$10B~5F)}^VF^>xvMtAamhW<3%A~lKsw4s9wHgK5 z(D3NvsR08A2dOADz_07HI zpT-lQLr+WUo*#`LazXX$MH}~|i0$7OX<=ft<6qj16*M?tR_zhbqhG$y=fBVg#r^hL zmZ^0dkNu*TXcG4qGgV5qaj}lW=X5Q%UBo-7yb+W5G335(>u3Z!eEn4!6&BDXW!vtk zUYFV^(LBPaA4>bmab|C%FS!<2F?YGNe;B6u+`HQkCPr$2^ z*3?|uHoEQqWP)S4hE{z1)TH~_8|+l}Vt-{e?On9pJD;EOqXlpjaG=QAh}>SDvJbk9 z0$k10_0l1!;8(9A>?-HJzRjVf6aSf*#mYTBm)N4dUj&$9`}pGH{JfFU((|oZnNP_M zoTK!_^iXf|ZelgsG#FL;q|euu$7{IAMhngorCNcOwQ=Z@s(TjSv{|{G=Ld zbJDAM`c1m9F7ottpm$$^K2j_&FT&YYeAEx;r;@1yRj{8Rx33Q}NUTOPMo`zDd=`Cq z&SN)xZs(i`hp^#|&rZ)Lyhj}X79!-F2;NJKx!GGe99np1cN?<)( z?i+kI+*vtlJYDc8X(nkIR&MN-vCO$8TA2OSvR}m;J zRZ|m~Os;G99t3=*Zk|p3RF&;tdjFG75E@vNRV`{fTR$D|(GDG&YL;|D=WGTs;03%x zeF+)f@}G2StNb*lIsW$G{$a0>dVU7C9@e76HEdYpJPDK3tu4U<%1%1Ef!vO>Gkm+% ztTuM4+g`gH_@wOjZf*&t?6rF90ybV)ey05j9`N;l%h-OekBlN@`W8nYdL0)3FkLuP&L0^cC(F?+Q0Qesp~v~sk7|p~ zSBw^nSy9M3Y|nUoq<}@&YK|PrFJ?$PD~zR-?>czt-C04BAK4xgT_-=^@ZeyRdk*J- zj>+?=4R8lCw5)A>DN`*psLQPDR`WcHm4-NqgfY<&9PdCs7>p^jV^DgOwq+5Gjd#{O z4zF?A7JOoIUCfb@J<98g9GW!4jPI`X4^KbeEZ(OuWmb!SP}87evw{hldC$H>)w4Uf zsnp7L82)#>>IeB@vy-%H(_mj_PBQ`z`dpp#+;aT0h>C{>8A1?$HUHCm2v}!xWAgfI z=#)Ex+20qfAf>TIL_{98>8*RJrtql=4E2*JXC|54et0*`^HZfy;O$WZaIjwv%Ln0n+ z;{I*I=4GDy+fClR@0+plpyp66W*CAL2?e9z2na?WdYcsmK0TH>UL-Wft8$9Ra`hvE zk_EyW8zt|NA+LVK<3vKF<(dWL|86=1jz9A`A?E7nC?paFN1>wbC4w^po91-X#s5cN z)Nh<90|-LIDczUT`QMlJfA=NJ|F!f`LJZaMM3tk^cD&|)>mlA#n$>bT1}&(3REE~N zjCH*DKK8#$9J1XANrL7jfMzPyzcAp#o7I*7TYOn!^|QLwFlxhKQp;3YRFq0b3*ytpFzlRi;!oO=O3TYA?G`7ZE>5mT7 z9n4p~+Z`=IP277|kTQ!3#)IEGiTv+ef@dfPe#@$&{l}cqs#{xI{5pl6sd(ZeG69n& zVn!?ilQNaJ%EiXH2>&_r;AS}P)|XjFT?5CmkAU-U62pch0rfAEmy@$#PY6ACG>xtr zD%km_=U>jBW;T$+pvMb+4oLT5$@b|9L7|;jgl{{rbD)GS*|=bXxYQuyDND zeM$Ke)0s&CDT}61n9Y{ZV|e@nJ53Ic=*-JfZgxQOSczV&yUzcdz6BvD6h5Ivn}UMO zm}hH8t44}3MS)XUcQERDn0@C(-71@YnT3H5@}_mnXZZ?bGzK5yxAy0cEE18MguxU4 zJeqahA;YFW8g0q6befcnZ;Y?6uYX+M*f2^-NvVdEA}S^n0mbmlB)N#`noy9afP`fU5_aLj;)+WK$t*~gRdR48>>?sy#Dw9A zilAKei4hYZDhLWlP+tGDENq%N)qVP$(=*fceSGpsb$35Yi6%$nn@P41Sp7p_b&F^=a>IrVS!j-tse1M5E5tuG z5`Qf&*{5Z<7GPW8AB_Mj@RRvR0DINOjT@U56DxCq7-xaTvDgY)Mr#3$7QpYNJpjE) z{N-wm9ow#~1%k4`Cjj(5G5SeCN#M=6$3IB^?B?8Q5e+iB(~!|x&wgY-0PX$mouQ9q zu@=x_0SjmyR*dF8^sJ1=SU>=}npmN&b3=AUa&Zu2c#t(ietrY?PIiTMH-)yfVHPMF z(8e!21}p`JO{7`k1UEnWR_Ne#Fl#QokjD50#tWs@`qT$#wefAMIIw`9zefw`H~>^U zsaPbS?d~CX2>7|G1+T3>3G523&z80)11u27fR2^#P^{>o=hqMjpzRdsnLPAjZCT)M z$Lm-QYjAzwwLLjoAdnT>SuAG`duVdDQ9N=u0NTPP9zhY!I!Ema9nD6!vU_I%3uy0b zYkLmB0v6B#7~Kx(odqnQy|bSIUUrm=Qu4GC2$}3C4;-{P@}bgPv%3&hn5t@xwYW^CJ$_ZEmNKznaaJ3`PFh%!LO z!Ja4%RP++`Q3hx)O=0_v1q)a}$HFXH9gbPRU_jd=oW-fU1q=qXyfT~?c8kifQuOk~ z9iXFks=Sx{!_~)O0=+L2qp+9@~?xojWdy&?xSxtNP>^4sA=mB(| zy~4bC%c*SHQ(4Ar-uw<0U#v2T_b2I$Gs;t1+Hk5`^-}F>{_)2inl)<*z5o6@bolUL z?fvKP(0RicJ%B!1Bj~cruAot)rm_v!x^;cAvK(Ub#|mTV(xs_Zt-92s$HR2O2`BiX z);HgLNs}j!qHWuLBJmKWFJl%Q#9Tm!`7yR@*Oi(y!7I)@dhWU9G;dx8k2waoup-}i zXG7}Lse5QE5d{78)AuxG$`}H`{U&n(U4$iy7cWk;XJ^x?rG0u0)T&i|Hor2X z0bWLIDFzG}Mdiw!uB?X6hVQ-i7G-2i5c}>wb#@!Euc(T)!y#tk#930t!Kbfn+lEnf zQkPQjD09n}iPXGhf_Tr&tQXDTEtxuXECJkpP*knZ&6_8P)wYAQU6w7&q$Nw{OSg-L z2KZ_X9WtJ-yy{w`#eMI+w`u(NM?9C&ctGcV$+0(FxNxQLk;=c~{L3#tQ*v@!&yDH# z066$P`sfTg@4O5A9$IO9d)wdFSQ8PMt*&GO~Xq!}}oaP`W^cjU-Fp?&n< zfB&u2-o!@uVZ$C}%A9PXcwuGQy7dR@)vKdtGW!f@bv+t4Zcd4bNy;58TsVVPuFO_$ zZ&JgPPcBRI=PxIGwR92A8t^0I5(NtY`o?w!o)VqoK;HlUcO#7$(Kj@fZejsieO=Wj z?xID{6F#x3^!3-9sc+vNs?CjRmzlYmPCW5M2bm(z+QEYd39IG$_3zT#Z@)%A{q#dv z-|?lFUM_sv*HiWCwdw4$&kbFVyQMeZe3hn68>`)4%>uMr;oY{!wd~@>FSzRF@4pX= z6~3v6QTWSMKS4JhIB<*r)^*Ba;JP|1Yhmc>y5JVf`5sO@fgx7z8*ccwxC^+SF1+w! zWjWAr+O%|9yLOGMJ_oaGcq0x#UVs1)vw=F*x^4);^Ve7D{BEg z^NiX#q^Ln_*S>+0l2WDa1q$}lty^pQ?YCc)bSkP*Q~=uTb|Y8ujT_$=*X9GX8PCs- zDpaT_u9asKf{SEn`}VCga9}Umz593BrjGpB26pL^Lbu*}mm_ac43O!82bwFjjaoo2 zTlR_;g>mRfOl&MJSq>`o$N3~Hb`|c*xxwHH2My|Ee(}&OpAN;S9;e%>)%Pn_O&z^my zhkyO`mqJ(1@LKpmwQAL&e*H#D4+U>W%a--z+ldwh??sIV^qe`_T4NJ%qMtl@w6yVp zYEZm*iI9s<*5CZqSDy=TsqMGj=z8CMZK-u@c|Y^Ib#IAFqG4`^4z<+-Xpg?d@Pop; zQKCc%*NWzLfYqQ)n|p-M)!dNMykFQhZ937t_qLJJf9KBMs9U#I+FfECA>aj>IB_;z za6x4b`!OCITHCj8qP!ig$tjR5)&6B zojTn|2)qx1u(q9Z);Z!UI7h@`JNe4x`17S$LB5FA8I zCzT&GE-a=_9TT`}DuHBs_Q2!O!uiV*VMkyrpy8g%%v=>Q*Ddd?!8LX6x#zJa65fu4 zgoc_^hV<^caOI4>^NA<&gR!tWw`g(aQ5#6O23S^;V?wUttXWIxlvBz|H5@l?Xegaa zm5c>6{F+D~;t=-5{rmri($o2wDc!rbqa8c8MeaU8Ok8orH8gzqM2`B$co28|=9_w4 zoKgdaVNOWsOii1%lIm*X#t+0@L4T<>d6|s`^w6Q>>FTSivlRRD&pn|}6%LR%NOEY! zilyQUAeSt_=~ovILS@U8DI?V#4!b6m9Kd0I{`?hEA-}keZ`&4!cD00CV*s7^gDvab zc>eikXztwUVny#GZmjNRfdHRp_&!}HbL!n`gk&#SvZP2zkh`K^z4~bZp2u0b`^ki_ z48ArpG;(A=`skzeGEI*08UyIO(qDi5E%eYsgV_qTY11I&?x|L-77ZFSR-&Em6;00` z1xc>my7gx30mh`H*7WPI`eGua1~0&z_cxA1Jr4IWm zpcX7x!S-7(T{@q#voqP__{Er&^^({+@qO>evQA0qq*pvWzs-B1p$eg9dqX{6U}+)Nv5S{O`SSVD(O`%0a)XHf-zCpK4BXrL#i%F7NBJW zal?!4#*?BJSI_JAM827lo9TDHmqiJ~})5Ws&B@^QA*^ zfEl1Ron!&68ZBrPpp%nRMXA>Y?72xyY(o3??JdNA&N&stL_f*yXXeZ)^zzFQ0?gSx zxno2kYQKIXq&i7XPM}|Y*)G*4mYIzKG;WpP-r>?$Uu_nXA3lqF=FFv`GO`@nvgK>) z)2ADU)l;4a9~>wWP;X_A@#mj^P=^l9*!=OpXbhkMK7f!*DBJq>+pmXZ@7s4cU3Xnw zR(H6RY1gh%;Du<$kAGZbQuEWSzWeSQaRJqprDMD>83SnCjKSr`rKF@b;%00|Sa#&! zArFsBDF6D_Td#82Bl4;G5Hd0{Lv=5>^x=o=Xv~;FTy}XrKiykg=^Tt}44|{K*RU(} zpeRa8igTLJQ%^m|D)tQ?ASq~lvgnF z24N%4n85>DNQu>%`+Neb?4a5Xmt_2(C`*O%R6$V9n*S0>3ZtZk#(@wALrcdk5ICT5 zJBZ3iT!OzCeq%1lR9%9%1F2ccu^pE|9?h{!d0pnQP?x?{&4 zbk99}U+Rz{sr1=ro7hIfn|#U153%_N4osoVn?Ggq>tbx!@IK*FPL}GfMGGV-NEVSX z715gH3LMZgXD$&JAZM~B5|7VdRgxju1Lvw$%S24|6EZ^-;#E1|v})Cnnm6aaG9XuN zNJS!7CJ3x?pn%5XnTU+z#x5W&2kAL71h2uOMbCv^Oyv-+(mQmxHxw)FCw1x4i|)Fs zF?&el+_h@OOE+V88Uu`h0=jM62dG&y{s9k<&fxJGS(2?jgeMbF4BSsbp+gir{nir!JL_^;>Gjm>8GD!^Xp(t zN$F2F-E=#x+hp=Xdv`a+Mnx#wmS=4x>9jl+~ zjBtrbvw)T`Rs`0-0F5UN+O_M#*5ZjLCebUeJjdoQ$S9i$gD5scv-w39(0VK#7@)_D znMRjfayd(j{3WhfO$sqxbyYQbS?mBowa zibI-nFp^V;Lx+wN<;7|^u^s#O+2u%)p#ExJ=0@GvKtN(y@QeHRS21pCL-TX0h#x zqTwib;s<#NXg}oFJBAY~!jI-VpljBwBcjUq56h^gvxiezro@5V^|HGubp~|)tfk+|)`@yXs!I^{09l_$5o zGobU26!#Y^VSX*XuFxl)R7Mn%;b&N2yV1IJedSug`5};Ffr=F?hu;6-QlUbKUi`|1 zFu8!{cAo=icz%v>Rf%#w-g=({XdbU?gTU_$|1+1odV+1nj3rdQe3%Ho0*FFtRzd=< z+`R>kU7@+Ch|K5f3O#Jt1iJFdYuS?HIp58j^}kky+S8~(%_X<*esIRIfaX}qnMW_6 zBdqi)1^bY+x_|#ZXDuW-F2DS08ZlxLyVb`Ze<=9nUvgy+AQ*f0OcPlv{MS_dzW9;R zB}iVqfR3QadFNFW&yCG5nxlvxg4ZCzULJdT4k1PwWyidvPMvyCg9iM}9lS*X|GcHV z7AU6aC0T}5M~#|7mtA%xgENO^(xj2}&O2|g`DGbp+;`}E`0&28Y149k`?{ah%z=6OFC4&Pg?jhyL_hxceMEH>=Yr; zhT;|gx9@yBj)t9PF# zs>wd|j>3{CFljo;)BuMr+-FA$>dgbRf`7eLs}3U8AVJ#B3PVYcp`!r`C8A)WZjyax zW&QehMJ4~iy2a4mpKR#Enl-Cw#tgZy6@=yiT0y;O(-u&L3g;`d)X~KIpT+3W18BpB z_jL%HuaB`~r_;q3^ACnO)l!?O7irh7LD3z`0(#1n(c)FI*QBNM1ke>KR1{A;%$F7> zni}Ae1p!pL>BbvxrQW>qUGom-g-3N2#fux$K_s zp_=4E6F|#e5SS8^ z0G~O0=UhS-3lb6ZQZdTRTqza%f~+27_n1n!($Dd7@W{;zx!M6;zWiBYGru^zC8Ao7*Gy;lrDWj z=miBCa`VN}4(J#+oCg0WQRc#E}de%_ORBuP;&OPbw zyXDf?1`Oy)UwrX@O4C{-pxyWgrcZy8&N-(7TbTLtAE(u;pJwxW&4{lHzA{`wECpgJ zbQ6A9_<_lg>b_HE3|ZdUv$N>5)6QTw+p}l4IDe`8__eOkvV~-zB_7elW16N=uU`Gd zTPOUdAvSH=Ao2~r0)7&r~irS;Ny((!1bgf#~i@o0nwk!zZ&v{?l z-xsGM33%m|)o9o-en_TQ!AeLCd*X>j>?iMXb;45`*b13IaNWX%%O%8_<4m%B`&Mp~ zLVQ{Qjmn;=@W~|vrz1$+G?Got@~R*XTwQQ^$O9X0a`CP-m&|h+FsN4<;W!+keh8kAmLY6`uod!z z7^X+M9lkE7oKjXwgb5Qy(7W%hjnKwTzf?P2%(4|`G48Hizlrp=`y-0L$!IAI zXilplhQ$+YC}z&3wQFAy*W>&j0JmRVe6p7TX=%wKjPpxf!{_SNOHS?iA^6bQSV(w?gOn0?5?3fVPMbgYVQ-l1&|Z=9wk*)Kh#P zwv65=0Wo-RI{U$++`bXtF>Khwp40~{O8)Dvt1IfM3=gkbm>q-D7tVR3aePR3fIiw! zjT-+FH6=!|=jia^L*g^q)R@zFQGz#W)STM4=O0jZ?AR_ILXr=c31AsC zD1~*94GMz$ak7~wX#cJ>;n&%D>So|jzmKQwyuG%1<#+6H_4jEo7iWy@DuOm^$7 zcZCkDc;;G#5POoE+C{5lz%`&{w;S+o;EGn)Cq~7P+%_FMcBgyp;lG0A^|k|Y-+p@o zN={DYs!)gzmlr4^pOv*h$+d?s7q%C8+WPFX&sCNK-YpdE!Bw|Tat-J~gT{!x-F0l4 zwru%YINasjQ0&e%Gvf1(ua6ADeTRLkmo#wT7^+^KZ}V`nU@L;q)A!$hM{Gydicr|X zzH1cPL}`VZHEUCi8g&RS@?x7IM}=KyMF$|s9RG@zz%`&{bKtVGGim8keS0Q3!^&|N zD^{Gcv*q^Dw_0r3)^oEZH)6c6=dlf#St}9@@DA^tIR467D3v zFB!_TZ{LKFp%N`5`yPvGwz7&n($a=g?b>z2Gippx;^^_NcOt9y;_P`t;L}J(Mbc*EqN) zCUzB-OZjO|z6mD=!od%FW;aoETzQoNE&Gxb1oEnc7FStSzTv|s(iK-+!*0HH>klI0 zts|RX2V>>RRYTjq(@r~GM|ax#z#;}WtzR)a%7B)AwF#db=j5|?!9~e4Bbj%zWrL2UGJe)4ob)qbL~V|j0AK70O#LP zrw?gST-vs6tH{0xw$v^B#kk3C-uWQ%Hv93~`1;7kYG;7wHJu=eDl9Jl6`MqYu82}y;lxM@26<=95gg4L;qKX3W z>(;$>tg8UmoRADkfOcaD+ctO$lqywP_^)rE8*cb_==vHDC*cOLWXV$EPl?bwFNmYY zO(OCWQECD=iU9ED&7TqudT_y-NEXm0&WdL;={taWCZfxZEudW*&^9;A0v6C_&4+7g zVt);eY$6M2*AR-_LC}XJkJZc9y$L@i3ur%Q+>YhB1uURFH?bYSPYYN;`)O_0V+H?F z4_*RSduXosTt3$`YCEtNh-d-3LVF32csdb!X~%GV7hzuuXiXDgv8&0DdAm{g@JA7# z6}0of#sOMrU0_)jy}UD^%;uz=mbA2s^w4I4HzI`&wd z05u*G94Y=>9Kfs?H)OD1PUFmBvOwPzFJ8R=`t|DscENF;|A)&#_N-JY%MHaLnzWo6UV!`KduV-d= z?*r7tO*Yw`ojG&n%&aOD{3wbP5k=T;@tL(ro@sZsb=D$n%05E|e zKmavQCWUC85(hpBfU|{Q<{4%SK)>M{fK&lmzflmBlDxKDw%6;2)IGnX<@^d&Yb6uK z08Wx2oK8-UsNKGxgZ;f&#{|@PHjg{BvA#(`W!IL#b}T(I+0!gI%Rs+VE!h51Ut59^ zQR@!@7$TsO3edO*?mj1mTH`Lj*uQGX>_ou)9jzPY03#|P1!?^OW1aZylxCW1qM z*9ARzk^0gtaAGn*xm-#*B%@^q$#enri~2ie?0~F?xL42(u+xKVXY%h(rat}tjc z&Zt=2qM(WZJJB(Ks6#ZeI(Rvc?)tB>Cd$WO2oWTN{+L33Zne5J9^cbs@@eNbBvk+d zNs3^F!;C8sAmxVJBI89N4eSau-SEUBhIlt)>;y`LS{MK%aI7V1|WV(*OVf07*qoM6N<$f(Gr>j{pDw literal 0 HcmV?d00001 diff --git a/public/icons/favicon-32x32.png b/public/icons/favicon-32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..f7058e041f597b79627f229042d6baf6e94ff2e2 GIT binary patch literal 698 zcmV;r0!96aP)kOY3u|QY(xx*ou-gP^e|m)lE&61 zg{@#G!BV^6WAAc%na$1KZXReLMcA30-^_n@c4Ne1u^;%ykMZXK2Fn(uY{X_+1^TW* z*KT$tzu7mWU(&uRK!nwcNWcjIJ;Lh+Rao^^fuTfpH|Y(arxNKID*-I4=CGzxa{!v+ z9~_**)YObnD94}pH~; zkIxUtWL7*rKLEm`0cafxg)5ktnC!?!41`+-VUGw5r>p=D=Q$GnrIreS+vM{*@cR1V zz)AtQaWd(a2Tr93S3^E3lYq87Luv;Ap+d8Y+1WfM+xi4 zDNK_AB!>xrryt5yrgI{(2Ai8ZLIv~&F>wlt#R`m!j0TE$c(@0R#*=3giA11Oss>0P zpW(ji_}kXgo}VB=U>2^7(daZB9i6rHUS(G-djE0%$Hy8J3de$qGC&ew zm0g*9Upwv>`{H+IHz;l~o$DBrc>r5mIapX)@!eK!W3h`>dQ%Yl`+0bNZuok;QvuD_ z4s|*PaFySNs$;0Tu7Xp(31xwFCmrqI@umR~_F#d8c4I&Mf5G~$fUX28J3RnWNVhfv gmPijkmBs+;zdySk(8(<0+5i9m07*qoM6N<$f@nZN&;S4c literal 0 HcmV?d00001 diff --git a/public/icons/favicon.ico b/public/icons/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..48bc866e4fe8d92d97b66ffd603d0946db9c566c GIT binary patch literal 3842 zcmai%X*d*I8^_O>1%vFO!b~I~WZ%u$vS-h3B3qb9BofKkvXl@p)=;*Gh(TtMh_aNi zuOYHz=RwJ<=lSw}c(3a{*L9zB{`WcG{{IiZ8vqD^0SpHGvoz@d&^f-LQ2*)%8USLC zd)(ar>Inz{nhXH2u>7lMjx~zu_>YP4WhUe)hl_;^{XD03A|K z3u_VNIAQ1DZK2JfHfDPPCwbB1-pmykqhMeAIzVGZEhKd#2Q~WF%_D~8Smi9u9;I5b z(ASt^@=S8S7Hf>9hMQnT1zVviGDuGr`Zm~CEHV~C!~EErIPznnN&1dkPex;7=(>>6 zXh?5X&e}bHxB2lgjInW#`vXkw3A0c_#sitACm@7sunjTQrnau^>{c+$&Ci?t(BT{l ziX$cKqAcV|3Adr7U9b%=^hZ6({qU-qLuUUvJe)OP`NJ#4ns_ULis~YGvl3r&&a2P* zQsvP0285t3<$V@$Ppp+gnMW7 z-q;-$^SguAO?q}A`bo$7TN(3B$$5JzNQ64Uv)?V~gzG|Y&VzD03UyScuGOvopg6Bj zBI0vIguEwUDI|T%d*>M0-o6$i08X76d`DoQB+vOFxT$6KJdrliQ;CLWX!CcLOQ$!# ziLVLU8g0gV-MI0vtZZd3G)wT3jlL8c4JteIl2Y6?{ov8j`%yJAnkNaluq|x}P_>jg zjT#9Dzp!0LRiGnbBQo%okMvPq~k=5pAUO!Flkl|98_%2E16*I8GTfWX5` z-&1l6Dpp;-ul}A0kcbP11HZtzgFFkf)$zPti zua?DWbAh&&r$jN4uIN|h?#(5ZIc<@ADkSE@LWcDe1Gd+zIA6u_hJb$CE1sV4PZ?X{ zU4r}|63wAhY9Xeqp5qhe%~gfg%#IHINxr&NYyI10HZ@a5?};ohFEV^6>ov1xIu7r> ze^r=kVstb(UBOT4xvZBGH^Lf-;YK()Og5cGWmKzfd`kkH!ItdY3oY3~fP)<4g zIR1slY2`EZ3!!J1?+8wK@u84xBH7Z>|R56s6sxr|z9Mp2pRwtUhe^iQSqSb!dXG>Q_TSnvP8) zK_vt7;|H;sED)2S6tXL`GHm)6qhZf=yD`YL`iAII-b%5#de+Yy2$PtE8D4fAFmyX) zyw|9aM=1#SwHI4??cI=I?aLeC{#TfRD#kFmE&KtLwx#8vx;6YdG`%1_$*(#B0em2r zLn4G;*xDMumJW0?oZJ0Dxwf-pCP0z`Z?AQpepX~~hCOO`m&?lJZx_Ao{qY$YZlqtw ztkakEYPBhv%!<}lHenH4eRrm<^S7ygkUo;eg*ID|RdPYpv}ykm7EMt!gY;cZJiFysTNgf%3CwO< zZ2510zlz(MCkm(QAiPJu&=u$;U{m`ze-T|bei*I)|`?4Lh$AsJ;%x3&xn+qqZ7;W_hTXw zjW9ePTsmw=LLLewIS4>&{9|hWj^X~;bqZ-@RPKSnL+)yB?`;TJzYWTsdpj9>aNr<$ zYwn|9rY$HbmDj+pawN0G=SV#sR&!n*r?GxL2gP3O@Ux3NqUtw z72hm{-#TBNRLJR$<~*#rd$LaKi~qs4N}j9uNx|QBFYSf|;_be#sL&7nbwvLzIw@kL zdI1}JAgzz9OiW3JxVol3es-Q5{f^^q`6Kk*B8XRpxtcjMVNaYxy}Tsnu0>8) zS5M%bBSb)em$3H`mx#?mp@GB72Yc-=Hg=7KHy{0VU)$?iD?N!Qw?}+4w~?~#m$4#@ zSm^f8DK}5bq=roHl1vr-&bCd8%IV;>_uSK~<3hvn2<5*QIWZX`SA={+Nw5qKTdX!y zrS;rT>S)sXR|OuXIGnxE1@OH!k2C{~8-9EpB=JQTYNwh!>BgH9+vk1HHrIEQK>A)J zF1;O5^tqGBR3H}bY$R1>SUY#GI|_=rjEk`kY(A;m`CL?O+u9g%QVQ?#D-^Q-DO+rF zCRjLV8!|0=GnqC|DjEo6uZ0zJuU5fP5h3!(K#qfh`X7p1|02)w06l6`<0#z zO6}zeKXYlZfg6Q`mBR;v5}Wj(PvZCc1QQ!Vr(W+HRcvZ@%C~X-s>)wn-y^f@f z1%UX-Rp{O3W&=N{zz*R9&rwF?UpRdsi(n!L9_cpI1J%}LxTW=u<%2w}K>03n68nLl_w!+$2Ll}e2_5$?#@Qve9B34Xn0B-rL^t)JPI%J62%x{QN2$QM+9 zPZ_Pc6Bal&>J>Ph)XV(gx|NEWI%q9`c<>?#qUq`BD<8BOBkd5^lIR$V%fN{RMYhAj zG-UYL+?MkC!NE+kK7`~aml?Ug@2XoY-RDiliq~Pg#u&nfs7gS^%MuJUlwC;WobKpt z(Cqj;ks!*NB=K%{SNw}pn8g#Ia{6OKRAy#=wO#!$@YR>QWB_UJn9acY={8sLs~t4W z_-k*QMzhQG%N-XCpF#wq>BEcpyDW?R&sHHaGnF;q+lWhk$hh~&`1p84Tu=~+Hlh8g zJA15Fu0;t#7nSpsyu3Hr?Kq&*usI#t-rkPpxIwX+oXXrjW5RoWq@k-fvE4^p+&I@U zY#lmnXBZf=VPxpfYFnQ648=FrLY^wCpUuueVR2j)@t?oToZ%(D*>QBeDi(a?chu2w ziUZjZ5hsOV!=*Z8+;dW1J^6Fyj+?wN{t|JS`{`X^XQyawZM!jH<>ONI$THZR<>$}4 zLHF@{!HwpS?x7O_N(kT7si+c{myHz>=45);2e;4j{+QY*g0Sr39z+JZsQ(IUIj9J) zfQcxp0yEt@IcS4<0u_*$j>Zq0pEU4(Upjm^2Z;Cnh>3>ZOb?^?Vjwm4|v-syPm{ARS(SAk8ff6=A;swE0-8vF{rsDN#_XBS-Xg-->RhkdmYryypw=8bQGTPCg?f5Bmr^UD=l8KeC zvp*jB8D66tnamuyI|!uM@$opGTO@5g8r*qr1+i6sdJ(?#u_ue7zRAzbMrEDsI_>GLZ^HD6y z&o*$6?wXg9`8S?S@XS*T_JQOBGzQ3C5h8eGv(c*2hgTDD^E_@07|PdE;T8~EiYZG< z^4nVb+M(rWsw(Bhw_iw0uXF70fpIcA%h)*Sw;w4HizG?p z`uv3s+Rwx_OVH?NY7#0Gp&2#=R}Fe{@a3YfvlOP@USCPDz?HW1He~0~fwJ35cv&>* zY9CW&|3h#0&HZyrJ33|+k{&WWFRjP(bK`*W=S$%)HDz8a1t})29{g1$)Yaic$0`{4 zJ6+>G{!N1n-&FtgP0s~6K}!JDi^CD##f!3_zD13loz+G&tsrG4*4xfT1nRFO>nM4O#g=G(a#F8PU^L4l=f autonomous.contact + + + + + + diff --git a/public/tabs/tabs.html b/public/tabs/tabs.html index 936214b..c41ad36 100644 --- a/public/tabs/tabs.html +++ b/public/tabs/tabs.html @@ -2,7 +2,7 @@ window.addEventListener("locationchange", () => { const hash = window.location.hash?.slice(1); if (hash) { - const target_tab_url = hash.slice(0, hash.slice(1).indexOf("/")); + const target_tab_url = hash.slice(0, hash.slice(1).indexOf("/") + 1); const target_tab = document.querySelector(`[data-hash="${target_tab_url}"]`); console.dir({ hash, diff --git a/public/tabs/talk.html b/public/tabs/talk.html index 4082df8..bfd51a7 100644 --- a/public/tabs/talk.html +++ b/public/tabs/talk.html @@ -229,12 +229,23 @@ const room_id = room_chat_content.dataset.room_id; const last_message_id = room_chat_content.dataset.last_message_id; + if (!room_id) { + return; + } + const message_polling_url = `/rooms/${room_id}/events?type=chat&limit=100&sort=newest&wait=true${last_message_id ? `&after_id=${last_message_id}` : ""}`; + room_polling_request_abort_controller = + room_polling_request_abort_controller || new AbortController(); + api.fetch(message_polling_url, { signal: room_polling_request_abort_controller.signal, }) .then((new_events) => { + console.dir({ + room_id, + new_events, + }); append_room_events(new_events); poll_for_new_events(room_id); }) @@ -245,6 +256,8 @@ } async function load_room(room_id) { + const room_chat_content = document.getElementById("room-chat-content"); + if (room_polling_request_abort_controller) { room_polling_request_abort_controller.abort(); room_polling_request_abort_controller = null; @@ -259,7 +272,6 @@ } const room = await room_response.json(); - const room_chat_content = document.getElementById("room-chat-content"); room_chat_content.dataset.room_id = room.id; room_chat_content.innerHTML = ""; @@ -328,14 +340,15 @@ const room_id = hash.substring(12) || first_room_id; if (!room_id) { - alert("failed to load chat room!"); return; } const room_chat_container = document.getElementById("room-chat-container"); - room_chat_container.dataset.room_id = room_id; - load_room(room_id); + if (room_chat_container.dataset.room_id !== room_id) { + room_chat_container.dataset.room_id = room_id; + load_room(room_id); + } } window.addEventListener("locationchange", check_for_room_in_url);