From c0fe404512ed0dd976ed932fd33bd1f5e32d4591 Mon Sep 17 00:00:00 2001 From: ismailali1553 Date: Fri, 17 Jan 2025 13:08:40 +0100 Subject: [PATCH] =?UTF-8?q?Loopback-Adresse=20127.0.0.1=20wird=20in=20den?= =?UTF-8?q?=20Tests=20verwendet,=20um=20sicherzustellen,=20dass=20die=20Te?= =?UTF-8?q?sts=20=C3=BCberall=20bestehen=20und=20die=20lokale=20IP-Adresse?= =?UTF-8?q?=20nicht=20st=C3=A4ndig=20angepasst=20werden=20muss.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cypress/e2e/gmaMarkersLayer.cy.js | 81 +++++++++--------- ...rdinaten anzeigen' is clicked (failed).png | Bin 0 -> 73647 bytes ...ooltip on hover over a marker (failed).png | Bin 0 -> 632679 bytes ...enu on right-click on tooltip (failed).png | Bin 0 -> 73215 bytes ... den eingegebenen Koordinaten (failed).png | Bin 0 -> 601382 bytes 5 files changed, 41 insertions(+), 40 deletions(-) create mode 100644 cypress/screenshots/gmaMarkersLayer.cy.js/GMA Markers Layer -- should display coordinates when 'Koordinaten anzeigen' is clicked (failed).png create mode 100644 cypress/screenshots/gmaMarkersLayer.cy.js/GMA Markers Layer -- should display tooltip on hover over a marker (failed).png create mode 100644 cypress/screenshots/gmaMarkersLayer.cy.js/GMA Markers Layer -- should open context menu on right-click on tooltip (failed).png create mode 100644 cypress/screenshots/mapInteraction.cy.js/Karteninteraktion -- zoomt zu den eingegebenen Koordinaten (failed).png diff --git a/cypress/e2e/gmaMarkersLayer.cy.js b/cypress/e2e/gmaMarkersLayer.cy.js index 4117057fe..0e36b3855 100644 --- a/cypress/e2e/gmaMarkersLayer.cy.js +++ b/cypress/e2e/gmaMarkersLayer.cy.js @@ -1,53 +1,54 @@ describe("GMA Markers Layer", () => { - before(() => { + before(() => {}); + + it("Der Test stellt sicher, dass das GMA Tooltip-Element für 'Rastede' angezeigt ist und die erwarteten Werte wie LT:, FBT:, GT: und RLF: enthält.", () => { + // Testbeschreibung: Dieser Test überprüft, ob der Tooltip selbst korrekt dargestellt wird und den erwarteten Inhalt anzeigt. + // Besuche die Map-Seite - cy.visit("http://192.168.10.33:3000/?m=12&u=484"); // Passe die URL an - }); + //cy.visit("http://192.168.10.33:3000/?m=12&u=484"); // Passe die URL an + cy.visit("http://127.0.0.1:3000/?m=12&u=484"); - it("should display tooltip on hover over a marker", () => { - // Simuliere einen Hover über einen Marker - cy.get(".leaflet-marker-icon") // Selektor für Marker-Icons - .first() - .trigger("mouseover"); + cy.contains(".leaflet-tooltip", "Rastede") + // Wählt das Tooltip-Element mit der Klasse `leaflet-tooltip`, das den Text "Rastede" enthält. + .first(); - // Überprüfen, ob das Tooltip angezeigt wird - cy.get(".leaflet-tooltip") // Selektor für Tooltip + cy.get(".leaflet-tooltip") + // Wählt das Tooltip-Element erneut aus, um weitere Überprüfungen durchzuführen. .should("be.visible") - .and("contain", "LT :"); // Teste auf spezifischen Inhalt + // Überprüft, ob das Tooltip sichtbar ist. + .and("contain", "LT:") + // Stellt sicher, dass der Tooltip den Text "LT :" enthält. + .and("contain", "FBT:") + // Stellt sicher, dass der Tooltip auch den Text "FBT:" enthält. + .and("contain", "GT:") + // Stellt sicher, dass der Tooltip auch den Text "GT:" enthält. + .and("contain", "RLF:"); + // Stellt sicher, dass der Tooltip auch den Text "RLF:" enthält. }); it("should open context menu on right-click on tooltip", () => { - // Simuliere einen Rechtsklick auf einen Marker - cy.get(".leaflet-marker-icon") // Selektor für Marker-Icons + // Testbeschreibung: Dieser Test überprüft, ob ein Rechtsklick auf den Tooltip das Kontextmenü öffnet. + + // Besuche die Map-Seite + cy.visit("http://127.0.0.1:3000/?m=12&u=484"); // Passe die URL an + //warte 2 Sekunden + cy.wait(2000); + + cy.contains(".leaflet-tooltip", "Rastede") + // Wählt das Tooltip-Element mit der Klasse `leaflet-tooltip`, das den Text "Rastede" enthält. .first() - .trigger("mouseover"); + .should("be.visible") // Überprüft, ob das Tooltip sichtbar ist. + .trigger("contextmenu"); // Führt einen Rechtsklick (Kontextmenü-Ereignis) auf das Tooltip aus. - // Füge einen Rechtsklick auf den Tooltip hinzu - cy.get(".leaflet-tooltip") // Selektor für Tooltip - .should("be.visible") - .trigger("contextmenu"); // Trigger Kontextmenü - - // Überprüfen, ob das Kontextmenü angezeigt wird - cy.get(".custom-context-menu") // Selektor für Kontextmenü - .should("be.visible") - .and("contain", "Koordinaten anzeigen"); // Teste auf spezifischen Menüpunkt + cy.get(".custom-context-menu") + // Wählt das Element aus, das das Kontextmenü darstellt. + .should("be.visible") // Überprüft, ob das Kontextmenü sichtbar ist. + .and("contain", "Station öffnen (Tab)") // Überprüft, ob der Eintrag "Station öffnen (Tab)" vorhanden ist. + .and("contain", "Koordinaten anzeigen") // Überprüft, ob der Eintrag "Koordinaten anzeigen" vorhanden ist. + .and("contain", "Reinzoomen") // Überprüft, ob der Eintrag "Reinzoomen" vorhanden ist. + .and("contain", "Rauszoomen") // Überprüft, ob der Eintrag "Rauszoomen" vorhanden ist. + .and("contain", "Hier zentrieren"); // Überprüft, ob der Eintrag "Hier zentrieren" vorhanden ist. }); - it("should display coordinates when 'Koordinaten anzeigen' is clicked", () => { - // Simuliere einen Rechtsklick und klicke auf "Koordinaten anzeigen" - cy.get(".leaflet-marker-icon") // Selektor für Marker-Icons - .first() - .trigger("mouseover"); - - cy.get(".leaflet-tooltip") // Selektor für Tooltip - .trigger("contextmenu"); - - // Klick auf den Menüpunkt "Koordinaten anzeigen" - cy.get(".custom-context-menu").contains("Koordinaten anzeigen").click(); - - // Überprüfen, ob der Alert mit den Koordinaten angezeigt wird - cy.on("window:alert", (text) => { - expect(text).to.match(/Breitengrad: .* Längengrad: .*/); - }); - }); + //----------------------------------------------- }); diff --git a/cypress/screenshots/gmaMarkersLayer.cy.js/GMA Markers Layer -- should display coordinates when 'Koordinaten anzeigen' is clicked (failed).png b/cypress/screenshots/gmaMarkersLayer.cy.js/GMA Markers Layer -- should display coordinates when 'Koordinaten anzeigen' is clicked (failed).png new file mode 100644 index 0000000000000000000000000000000000000000..e601136513df4efcb4b945dffc2f10c3073faa97 GIT binary patch literal 73647 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�KG=Is29Y1xI>?L|iRM&dDFP?d^Eb^e`SVr4kz3VX8Rpg{l zXLurrRu3J!OLnT_BqmZTtUP@OX^CQC8BKLT6>;BzobwCw&>F3< z{gt$y{j)3PT~~9MgdWXjP#rcSHKdGov*$HF@3ol!1My-^9kC!rByQ`hDN?J=G`*Qb ze^KyIs7=WzAnm)XPc}nbmkX>3~_1*@1eZV)?r|NqU0R=Ik#u4jZQ!n-@W*M;c zS`fTn;UvQ(eJ!Zy5(xtE((gFh%BzM7S2d&#rvlC&<5U$M>JER}Fq*Ei%ZVJWGRwYl z0@vAgRMoKk1$qOcl1v@Lga3n8dArN1OCLQ>jPy2!!3UFi%%sNC)%`noo4Hlcvwq=G z(>gqTwl~M2rcfeMjUFiAjEg)GknMRUkhC||QiHaMO$d#e@# zl+|(MN;C9%qEM_|BPK2aRPOrC9mmxpx4B|XT4ibw%4F{+jI56JX2Q8R#S#6_Sp zE(;eoFYeDax}rZ``YE2RsR<<^J0X@dz)cV>2X7R$y!IXp`Ap1q&JPh(D?i(+?vh08UFeT)0^tx;M;XC zqs&pn_HY^6nlzEIm7~FNm#uTYBL@MRgyb^u>fjjjfpd~?s$%8CNlATrrh=TDiY_V= z#f;^pOQg-t+dmbZh5wmXS=m^4ea^Q^vuesi$iy?EA^PjMK@&aK=j3&u9mnTa50&S-*KR8-cn_yj&lOKR+S9L4 zZ$zSPs5gs3TfVSD#^DPaD5F=@GmQJg6ZOx5C*UUS?gYTRSL5TSc{}4R2g4MfVqkBiz*~ddmNa;b98SzK?`-|fYh_v39YjeToa3Q|PpJ`_B*_nPq zy)eH_%()J2a<0V4EAjMA`H05I3i6XRuq|&m_?AsaMB~PLgI<$gxq<7a5Jn3m;(Xjl zh=sA_`6c4~fYzaYE0-8BUaCXOpl~JtYokA-MD-~{A{5oedSr}W5ewU;HO-%Lb+Z}A ztLVX8(ndw!3;if|^!3dEp5X0+wqEck)n@^yW66kx2LoVPwWTxBeV-ZOqyt1q%*%ibIr)-)ImX` zuIl=c>CFYy)kfrz0HXwMR`vX9Gy3#uQ*R@<*d%45N8JZvWJ&6pZX*bVC%Y@2TQ5W6 zRYJYLI+oB1_D~cY&hO80kc{&YfQm$m;HAR0ad7Ao0|c; z5b77JVNuO{p~q*f_0u;4retfwAmYtyQlEr49=UIpBRlh1w9xr;`3eJ}b`If#n$i+I z+?^p0`RPo!#G9_pUA|A2%sG$(pU!-ncA0|e2oJURlWwoLwC>IJaUPhm$5@hR;KM|Z zCj_i-i<*T;{k0Eupoy84Pixip7vC^s-(snD^t*Vbj9UlPd!N2meB2;@pq@D>WhM}s zuf={m)Vz9HF4mD|*>n-+jJ`70dmg+QD}w~qJ`p&_bAFHNvS~Ke(j17G8NbA7aub2z z+RA}>?dDL?N%(zFg7bX?*SL%<*sRwey*V)9rlJ3yBx&J~n|^MWId1m4PO$$qo-}|R z40!W*PrH2-vp4G_)Znh_Pjwu!L&g7jFoo2T2>K~#L{VnNy7$hRK3(|df3Wy`^(a^D z32a9?y4=BAD>V2M#VVl~xBhzmHk)tXl-@Bu*>1dq_?^>^og$Hehq!5pokhhv)gH|( z5CWZ93;gp$7CoSmrkQI*VlVtKSW^RqXRE!@bZ#Lz_w4WiQTA0%v}E**emi@3VBWrC zA>kQffkJAjXj&;Bc=tPNU!fyo2Nb>K#&|2n*ZR`_oE9ZR)*p6%ea>jX3L+Y>zC7Kn zvw=;jhBoYr9+W{bi#^6p5355n{qu@LY0DA(@Eea$@pFhUgk#p6UhcaLJzKjkzqu$p z2i;pNby2Op9`l!#gx)X6c2GaF(Hr+K9`d!ABq?j_z8=%vph}!~1{nC$E0Mhi7{N-! zS#h3e(~;$_GAp+Oiz{1JMvTPfz}5%Q-qvELYGwK@8ywi0I(l& zhwZR`qSy@o3j<#JZb^X<|Kj*9s9{GEmHx+yXrZIR#jX4wBdMD$$IlID+J|?rNj>i? zHK<8^qtPjq+EPtLRKy_r1+M$8tc3aTCAuL{*7v7-{jLJmvNn*0j}gx=otL`C+Z;uT z%Uioc9Y_KW)YNbltF);E_a+Iok02d*`j}<+;K~NP75FiOy3$DwX}_5fgONvaT732> zS3JhJpR>$Sgd#?yV@<;gUvW#nTby$D)m=|+Kc8?i2n$=(WU0emOCcMYDwz;smWG^9 z^Mlv1iQ5PGhufw9q2M^FD7-ZwI?`~H#^J{@47iuP!+hUrd(LUPl%mJwMWua%NKr!DTI69%?>w;hnj+_ljLxM_NK17T9y?WYAZQvppKiYmH?ug3^XYsdQJ#!9Vbc#vj3uS#WslkOxw>>mP&s=-O z!d>-@8Du@kPIJ+f?*x;z`H!36pPU|GlR8S24~On3&@BvA6Up2h1R>qH7KV-$%R8i) z>YY0O%J;wke>`{zZPDOU`t@a9ZRQa~N<0ZU0XlS`I;XHSrPwzSBp2?s+uy1?_tp=j zWNm!s1hT4XZ1D~orv-K|^%=`T?mYX-#0zLs($XNcW@zvgxXlvU-F5SY!@ElX}_&B z16x4oGwvUs-(PGM3wqv3LeGp`PPR|b6lU8+kB_}WjvuqqZOHDoFP>}3@#!VmJZ;c! zdF{jrp7e_BR3qx2Aof4*l)F;ZbpUmZm*PdFk91^D53QcWyI$Lx-p~zV_0on@hNs6d zcj4yi;uiU&G4*J>GYKv-=#(z|(<%182%)y45g6j;0lo?32?~S`#^5&;c=C`v{Zx3| z?(fg%3tkTt2Nk*9otCBvUVLn`b=pxPyPr?IIjfue1c8ed>4WPI_iMR&(Uy42NBYQu zaWa!WIS1H_aYgT$o_11?s3F|;aZ`~?H|`gJ<)&K|aJNFoAC~ZAdZTj3Sz6GB*JNL( zqK9?2yeu_3zySqZf#WRihMC#9cU}&@DKRaH!IY!SS8~4(Sjf;s0PRbBroJy`d{?R#70;(p z=}a2m#1@I)cRe|-@PB6?;_mnVYMcQac8>=0?7L?Y{wNOSz#do+DE}h=($4OPYw|r`4LdBWUb_(d z(-;)?FWy6ep6S2W|DUOk|0~17!Q=vZZp>;N(xFcfH|Q%g%3k&0UXJ05OL)ZwR`$JL zw-U8ohEN9LoN-uA%8O2{pU1?;zH9TU0|)J%K-qG0zv6?rdEwKAS4Y5zS<}beUk%B} zGlWf2C%=B_#!EG_4MA`B8L8{+e8mrG9R0-l)gpY1C=_*lFV!%0@{RTFN!?pPFRwV8 zZ~<;XUa3SMZg9lbV#%ac%-g2hTPZGrLBjS?Gb&o4CM$C6PB4DbX5HHsFR!FXi7Hx4 zj+pce#5Z(;1Cbp!R#?{Xuu1YXRi#GtnsPK%`3tjTQ4=J{`fPcz#prj>W#+6~&HntrZU}~jGjQ*>d5$&#UKQD^b97*E9{vfw zeFt}Qdne74TB$vvVofB(?X4ZM@`%Y@O$a`zd&F$bss!KOir!!^a{IFUj2^Y@G?6B$ z9<{FfN($aNChHI}&_?#53s|?&st`v~yk}|ZPD*eCzSd=F( zM#WZ?^mjLo#!D)3SS2Q_|AdPoP8OJl)}ojgc23ymKXZ%GR#c_}%}miy#1g2={Z$Z4 z?sCH<9m+#2^Mi|3!4-?oUMz~N*=)Avo9;F^TgFhnz|wrlx2J}T&h($$Rs{g59oET& zy4b35+O&H(;2C=QyL+8(8TXwHNaHnS@PKw5tQ>6=c)#)b2ridJ9hn03&9LgjGLDau zDjUPe8X7D##R&j*YmCpYl1zk+G~yvy8Mas0jZG-mrQjw16hzIl@>SX?w3f5 zA-6AKVKVmBBLqR@^9vmd^;gp`bSvopu_K->2TsX|RJiYJq3)uWVN)$Ny57Q-59zDf z<_`2Uq4k2#bqEJA!>_sM}xT_5&_1w=@!*&E0&S zIdQF@x}Ca?F)w|;f?Lv56*sw|Fx7Jln^Q>Z$y6OoPinf7W4t*Wz#rWrrcnQo_ptHwKkBChM z5!wH00bF!-ciFDbcPj6)juEmEd?Xv^wStZ0u{3>MqPo$=DD3hj#dzSYwdA0D(oVfnbc)5spO0sD2UdOvJ zLAK2flKQdxR|)1}fe)+mT@70U;6SRd9p(QxQ~9>Fz?%D};SLtEa*vns7}{EqKcia0 z*~ABSr#cc|8V`%aP^nxDg4u2M#8%YBjk@YiYtg{BvTE&qXIdZEvV?gkk3UGK9WC^; zOMvCD_l4g@6@Ss}0tor8rGZ6QQsr*GA=tX+g;rx!Ja6MV-}6(Hj&J3*cV*^h$C&Y~^klhx?+OZ8w;QF@$C3QmO2&3QxXQ2SS!~oJJw8jTgU!neUdW zo99%Lj`)+qGfh3*LaLu0G3SC;efr96`z4DiIfX}wMkP%e=4wkCJus-9zi;B|S}<;m z$uo~2?tbPUNj;vS#>+kRRx9yI0;?^u68eRZjeA_CHM- zU4)&Q9-&nANVgFh+PiYF+dMG%=)_d)RerL#zxpx`6=VD&IT?-#_OJT+E#C0o>sfpU z*_(~Y@yfc!rA?qYmbx4rmmK5M6O(~_Pu|=m<%XB>mpT`ZluUEQ^A$UBN#)#P?Mnq8 zswv1kBg=cd7F;S#RN)}HZW+FpFP0uVWw@6g>H3K>^7k)Ph>ty!4(lNs31*)8#)WMRD`AiwavP-S5d~N>&_2#JPDASMCuG+bkyO zgIg%iQ^T+9B}35^r=O=;2@ruvDFm}P%VTjZ=Hg~gpCx*1){oJYDu{?0 zA$=;lgU9{6S@c}qq-oVHWPd+%z3$?9izjT|YAtC2oZ#Fm*S$Mp8<-Iy+mfbKr_}2= zCkQDU!=;{(lO$&q<+W{Pm5?;HN|N>a$vA?FxP;pHt}uq9r8B3fery4b)!|cobNn$? zz6mdEMJm7jgC}|$($;|#tJjKNo!q zT3)J8GM8b{PMyuJOP$)EF2=wgT@Ke|9Aujw;xDvhf8&B4rg>~5L|9zgdMwat*fm;@ zcxCF~GBT272@cEdgWJDfB7Va2`4YzE61VD|bVX<+C&oE;h2z^yU%tY2wVmem!P*wf zl21nTd@zP#yYr;+6ps2wf@c9*lh$6wCNgGe5@{0W%ud@*iC9 zeA{x;yvn1BYWD|W1lMx{5S`(e5d|^qTIbNbTsG-f{kTY2)z)in8!yiA_byPpqjL zPtuynb+dTv*Irv?YWB#m>m6Y#h}fKbNiS?rS*+rY4u3_vI}98?0M8%XpLwL)hwV#W zIFrP|z4p2>+DY?OSvxd(Qfygn&h3Yv?Gt~O|5uZ}jj3KTOxVTcnUay=S7^wz?&Sq+ zhfZPlNyX|#jYjflS38t9wi^R3Z?C17I>nA^Q#-$=KKik|Yf5g5yE{entGh$SZK}}n zOJ=}jY9Ai*JW2Bo3qRV0I&nXyB(6I3hxwR>u)Uh(4Sq5I!u*#ZwU595D@01~t_NCL znl2dLk=~r(M&54A{4PZ$LySrH+kTY@%D)`I-Uz^*om_3{8-cr!O1(MLBJK!MA#hM3?YaJRye-YuCAg{ z-~Lvg1C+S4>#}6bWorHuySKX5 z7&FHD8fXD?#fFI}c}4sE;RNSSP;q}-QRzbyX@7F?z!;p~d5@T==Miuy4UA~U=Zp^o z{j1_%VclPPcOcl@|9G5aXnpLi;U><UWQ)M4Hs^9(aWgT5QKMiZI5yqR7y4FC@cp6QN5ZIouwl97 z0%qMMbNwRT!mdBsLVh$v*r(z$zMxO_trHe0D8d=FC$^BDncXr}r-QC~U*(&z+voey zdNT}NkU4#$DFzfJx+2&qRd)UCyyfQws=sK*kZFU9!v-5_xUlS)v`MeQ(d)M8>>V=O z1xdp>H=59;{m)d6>F)cDQ>__XV~Uf!N@3kwc}@)*T$3I`WN@##<_AW~U{?nRualYk z5bXTcW?0U4R68`pwfc^guR0mHRS(v;r&S(G325_D(!kkF;AIH<`Rq1)rVlUL|2CM( zN;VF~8tqV&q9bT;z*Fh!{itTtgm8{t(kY*D%Doha)B#-krD6m4ZR-!tiGz!md9k+`fOG`MhM)ckdy8R zb|2ZpsI;FhuzlI_tudL{V|%2(FX@nZYIJ5kU9sBD3jG!PfaWQti4p9zJt~ioyyPA# zm~P=l>>_2vF+Ea%RU4?h2lu=&@*!6KKl$CJqP3Jf1ndsk3buv9fb z{w2ly9PXp&6;8IOA12$g?nkAM!hA1eUYmZs!ek_FHkw-q8jKC^MPBzi-8&a5DK3L# zl^(kb~iO#Zo2^K^Vs>k@=Q=}Vet;C-}^AhD_CxOc1byjcU+^WtOH6fc(j}1 z9-Y{R@LKpJ0T{ZH1c0AI@k&lzxSm-FdK2HSG570)-%Vm()V6hOm)+6psrH(rCdY9I zGaR$xuP(}|ZKDfowEA~`PYs8R#Wv-|&bS=)*)!nRjQ~(NRB*IeUUjRqe1qGRx?p)) z4|1`=@?I5>(L-*v^9omBSI~*m+ISKEhzq1JRNT(aoP?(^mznF3zmFr3*?ARLW7Cj1 z6SyWorgzHU-CF0BAYjBu=+E@Bzn1boe|<06`b}C~O*<5hVqXMkv}$hLznX8n;y&qP zbfTQ|_(cF2|Jv#wHd+<~k;O(?cWCe0dp=If`-P+!p+j!v5F@h1#uw$|0I(s?10>Q_n zG}{M&1NAb|(vEavg$bRxRfovx+>?yG#68I4$QSSdlwcVvn9)6;BBz~S!dp%=qsJN$ z;X$7jPdYt{2?Vb{yeloOI+0_{TrZP9Ibv_KF{vVFGZ7iRYM$M6YYmbZA8BSOK;6WI zdkmBYm1$UHUK2#(^Z%`I9uXK_lN`VI)a{4tjNGr1{f#Ru?4Bu@d8H)+L6kHw1-UF0 zAW>dOjZv343EvE_Gq)m(tM#0m7Ct_)^+&s-Fll4=ORwe?@Of7{{bDGs3D$^F0r^rp zkU)!d=7X0wb>E-aNE5o~kGG`~n^KF5^TDqQ-9O4cGKod>k>nbGi23YNS!F4-)4{jc zj7PnQkSG3c=M8Hi=@^ilBi2`8pXYnrb5h276u0+rrEC1p>&ERNS2A)B-tNpZr;FR& z&lgP^J|K2WCh}SH_`kZoVEc5a-)*9P0g(!6%XpsVb*QbQUJoSTSRS#-bW&voTq0+A z&?kSnJyGl9Q}nGn@7qo&X5P`2bI~+}ov}|-0M*IAulfwYaMJuzo~|xwJ#06S*NdNc zgz+ItOvy-J&24)~OZ#l_{#w^tMWp>R{Kx+5(6;c}`<)GYNw(I&kW&-h@xiTJ?M8a` z_`h$f(vPKpN!q0#Cz*?yv^$)~7Nep#d(8dcUmKL{;`T%o(y~g*`me}_0=VHT4oXLw zKBH84M=~e22^JE{4mt|6KvQ5Vht#7 zYHLD6s3dTwfw>GD>61sSl2OfzR4f5|RtzxF(W}9bhKOPFV~O78;KZv{E++dg%y;eG zwmOcP=PMud>Orp90iT~7yKC<8S;4rVxUHE&)}MfrR4htx_fo@pL36(%IROREOMP40 z1AN5l1+kP~ITHzf!enmCy#(VhH8C-31Yo`+()HMK`t3_#=SrGkS&!hv83c!XIJLd*IXwO=P`V!bQD!JEdZLyW&RVek}ezuhl3A$S9#9sM_ck4cT7~4v!lezh#yXRpvAg4H>wT0)k^IkrH1}1n1iJ(^<}xw_tfOM(JUa z5^AwuSZj?5McN>n4d>OmVo)y-fqtp^)&Y#9GP75C2z=jJ4}wIR8oBF)P(MS~&q zGa-YY3|ZNwc!_CNi>vdZas5J7LavvnLdNkW8jay&#ggP+9O&91`^TgoOTLPW;eAkO!WF6p znE%syO^q(Zy+4u-Tvc_jwKG3BRyVFO3OPqOarbg<5en$WqKH8*wIXqJZ=%=M4q335 z^)h||6ywL@JaL^~A+Tyr;rnE-8MQz&Jv1EpDVM7E-Xk}D=6|Fv1NuufaIiG3fzT6N zK%&6!Qvy?Ud5QD)HdOB)CyUxk-A5s$c=UT-Okx<~@ zrSbVBJ6Wj5CRf6*I*Ex<{Rx6jioe0eHTMWfT%>X9e01VgKkWEr_5GBIB|l9@rp_m^ zBuHel}5)kprjoa}uDI=x*zad*k7+TJ%FO zFhj*$>kA{NYKsTP>R3M90B1BjmkBEv1{{h+lZ*|Lt$>%VcR#%s!I{~Y2f||?*{ZWI z;&Pd!;VCH2HxHk`c0mT%ou@V{>lL$33xDjrtSm=$rQv8xtk0>kiu|`#wUF)@zN*94 z9gB-=jMoFd-)|uk2CrW<*+6wpAm8zZuFP$0^bIdOy|n!+ajHEuF>DRC-7f<|bZ&7M+>Xi9k+aFa`EmS|bP*9o>Gtl@TBpz9T8nM&z{g&W({4(SgfEmTTw3 zbNyE{01B&u6CIit8U?sxyv!$iWSzLWwP5%;U;H?Mqo`Ee+RW+Xv1$= zhZS8ZVPEe?oc$^Xc{8`(KTGuD7=K~zmcpY#W+1v?eN+UZc;%@cb=H^MeIBAK_G!-y z3rONE8}~O)lws*3ArRcDiOE@C*qD-zTWB0R2LJAl?7xB7$`St zm}Sn6&+jx}2R7}bz2#Hq=9nnI-_dI_H#!!4-|M&S$?1- zcj^9j*m}l{>IY;oJY>Y|x8yDc0i-hNKE}WfEA86XiSb_$gwFjqA{8N3#DIgtLhZwu zdTmn0K0O$r{p!Zt|;AQ%h@!F5hJ( zz(SiqFdyh~!H$cw4qThC4+geTvRBz_V!Q1)SxSpQDaSw!_}t_g*rpMFQel1HQ0`Hg zr>#-%%wZ-)1J>ww$35`40h_$0!5e0-P`%14{vi3%?oa9jH$5l}|VKnMm7>+Npt99^-o zV#@RG^r}9=Br)wwHXtJ6?Z5+D0VRCJ8UHuZl!+nal?%me1c(Ycy}d6K8@fyZJ*W9R22RPYRgd$ih#nY<3}RQ1j^gXGuwbNC%<*u03sfs z%KAWq+CVVJjx&@%83AZ_8hQ6Wd6~bwEI=PYa}*R5)YoDXBKvDp&HK@8M$c5T=2tmK z*{w})!>{%j*B}US%7rl?d(yv|E!_8y@C+DArRN{c#&X|kpy?g|6h~QJ2H2@1Dea?z zPGDv~czA6M6X0F3ey-Gkk+g=jfr$xBe}8`vf&8r`(8(aJ^FI^$lOP&VC~~Vo;~^$Z z1&xf=MBjV1PKU3OrP+Ft6KrhcIgho1hXjswKCzaC+1?QP0Be#^w;ynuvk8Gf7?;n<0<2gJryR@tm9E zvtFG*VI6ym?m)zD3r34U=fs*iR@b131;X|lNt(F5eIj|*e9enhhkuiXf%R(rogN#w z(*>;J7k9I-08d%YTd8?If`o*;03B<{8o{lMTTV|-jQ}VZRG^umbrW$;z*>%gvO7b; z&%x3-bHS2A0L)!=g5*od^I{Wc{NNHQ!3gCr{DWMmDE=RXWj^q@U6Q@=IMDP1F{*u1Yy>(y2R_ASBWV22 zDE<@CB^=x`0%&7xt)V%V~NY+ng~Kb`)qa39wucjO*C^1-1R1Gas#b6~xl0qhEF z9S}Mwt=K~GyAx8v*c3bv!PK&T{CuPBDE&HVndct0XVKlkfrHix7d@C#C$yFfu0(4u z>AD5bmVXimi@=6||3s{jks+)Y)^eYqn&DWdryNgERoiB|moeboBvsaQa`DZ(Cv<*?zx!>&aP~Sbe zg3;$rrDJ4DGwK1>Q92g%K{gdg*naq(>ty%o?M0w021z0!xz!h1jWD!^?w(wL^x0q9 zZACFZP6DUN9daZ#*maAXxw~m%?R=Pq6=wmKk>UX`ms@zT|AzsYW^6D0x-)Do_;FHf zCEgh$J;Pe9bf`ZjmF=(+Fjz73B17BT;&DFSK3|LHnk0%IfrDE=STi#97y>vAn289W zasSRtIZ^@Hxng13%wit^;~|eqNwTAdI*p5O6`T?I_^x7PI$h@k zHWz))tA4{d3roUkMU$XNCyVE-MPLBi;Jx{$Gk|ZW7&Z{s06XEsHWU?z@@H|{r-&TH%yV$a~4=_yim+u~!VRRA0rcFDiE zzv!8g7!}M)8_4;m1aMS!)z^_iiLg0ddfS}|@6zWs_0gRJYXkcLGKAZFb^_RnvMx`= zE`t_bGQumzs%on(h_MlC?(0)RpiaN)cP<rXbg2YK(qC))f6jR}tw! zotf!Pce@yhVYP{rK>hr)br%*n`=Hi$pRRNcDnuKPUGnST%*|7uuvLvOr!2=5+uTI- z(Ov|bru}-E^qyB`J=gLYoSzMEhcS%YOFj|qw1+OMeX+~8;I@DgJlel7H%|`tzV&<5 zyx)8?M8;&<1!(Tym$mob6=Cjt&FyX5@3l1P{1w8|p+qNmR4YJmKkkq7*!}j|Q)A3o zmEq$)wiuUbDcAjpKHA|6UE~)ToNNRtr{bh#O+%|9kBsaaacTZ<-#KCn;?r;AIsiVqea5OBwd@PHXEV_n$s!