From 4639211ea47e12fddd606bdd691465d568c4bf5e Mon Sep 17 00:00:00 2001 From: bezza Date: Tue, 20 May 2025 13:33:57 +0200 Subject: [PATCH] on complete le test dijkstra --- .~lock.probleme_ouvert_voiture_elec.odt# | 1 + .../insa/graphs/algorithm/MyArcInspector.java | 37 +++++++++++------- .../shortestpath/DijkstraAlgorithm.java | 1 + .../insa/graphs/gui/simple/TestDijkstra.java | 34 +++++++++------- probleme_ouvert_voiture_elec.odt | Bin 0 -> 42461 bytes 5 files changed, 44 insertions(+), 29 deletions(-) create mode 100644 .~lock.probleme_ouvert_voiture_elec.odt# create mode 100644 probleme_ouvert_voiture_elec.odt diff --git a/.~lock.probleme_ouvert_voiture_elec.odt# b/.~lock.probleme_ouvert_voiture_elec.odt# new file mode 100644 index 0000000..37598f0 --- /dev/null +++ b/.~lock.probleme_ouvert_voiture_elec.odt# @@ -0,0 +1 @@ +,bezza,insa-10821,20.05.2025 11:05,file:///home/bezza/.config/libreoffice/4; \ No newline at end of file diff --git a/be-graphes-algos/src/main/java/org/insa/graphs/algorithm/MyArcInspector.java b/be-graphes-algos/src/main/java/org/insa/graphs/algorithm/MyArcInspector.java index 41c32a2..7d767ce 100644 --- a/be-graphes-algos/src/main/java/org/insa/graphs/algorithm/MyArcInspector.java +++ b/be-graphes-algos/src/main/java/org/insa/graphs/algorithm/MyArcInspector.java @@ -2,38 +2,45 @@ package org.insa.graphs.algorithm; import org.insa.graphs.algorithm.AbstractInputData.Mode; import org.insa.graphs.model.Arc; +import org.insa.graphs.model.RoadInformation; public class MyArcInspector implements ArcInspector { private final Mode mode; private final int maxSpeed; - - // Constructeur qui prend en paramètre le mode de transport (TIME ou LENGTH) et la vitesse maximale. - public MyArcInspector(Mode mode, int maxSpeed) { + private final boolean restreint; + // restreint sert à savoir si le user veut restreindre le path à des chemins uniquement accessible en voiture. + public MyArcInspector(Mode mode, int maxSpeed,boolean restreint) { this.mode = mode; this.maxSpeed = maxSpeed; + this.restreint=restreint; } @Override public boolean isAllowed(Arc arc) { - // Ici vous pouvez définir des critères personnalisés pour autoriser ou interdire un arc - // Par exemple, vous pouvez filtrer selon le type de transport ou d'autres critères - return true; // Par défaut, nous autorisons tous les arcs + boolean result=true; + if (this.restreint){ + RoadInformation.RoadType type=arc.getRoadInformation().getType(); + if (type==RoadInformation.RoadType.PEDESTRIAN || type==RoadInformation.RoadType.CYCLEWAY ) { + result=false; + } + } + return result; // On autorise tous les arcs sinon ceux uniquement en voiture si restreint. } @Override public double getCost(Arc arc) { if (mode == Mode.LENGTH) { - // Calcul du coût basé sur la longueur de l'arc (en mètres, par exemple) - return arc.getLength(); - } else if (mode == Mode.TIME) { - // Calcul du coût basé sur le temps de parcours - // Le temps est calculé comme distance / vitesse maximale - double lengthInMeters = arc.getLength(); // longueur de l'arc en mètres - double speedInMetersPerSecond = maxSpeed / 3.6; // convertir la vitesse en m/s - return lengthInMeters / speedInMetersPerSecond; // Temps = Distance / Vitesse + // Calcul du coût sur la longueur de l'arc + return (double)arc.getLength(); + } else{ + // Calcul du coût sur le temps de parcours + + double lengthInMeters = arc.getLength(); + double speedInMetersPerSecond = maxSpeed / 3.6; + return lengthInMeters / speedInMetersPerSecond; } - return Double.POSITIVE_INFINITY; // En cas d'erreur + } @Override diff --git a/be-graphes-algos/src/main/java/org/insa/graphs/algorithm/shortestpath/DijkstraAlgorithm.java b/be-graphes-algos/src/main/java/org/insa/graphs/algorithm/shortestpath/DijkstraAlgorithm.java index 28651cf..a33f81e 100644 --- a/be-graphes-algos/src/main/java/org/insa/graphs/algorithm/shortestpath/DijkstraAlgorithm.java +++ b/be-graphes-algos/src/main/java/org/insa/graphs/algorithm/shortestpath/DijkstraAlgorithm.java @@ -76,6 +76,7 @@ public class DijkstraAlgorithm extends ShortestPathAlgorithm { // avant de le mettre à jour if (succLabel.getCoutRealise() != Double.POSITIVE_INFINITY) { heap.remove(succLabel); + System.out.println(succLabel.getCoutRealise());// print de confirmation , pour verif si tous les couts qui sortent du tas sont croissant. getTotalcost pas croissant!! } succLabel.setCoutRealise(newCost); succLabel.setPere(arc); diff --git a/be-graphes-gui/src/main/java/org/insa/graphs/gui/simple/TestDijkstra.java b/be-graphes-gui/src/main/java/org/insa/graphs/gui/simple/TestDijkstra.java index c0172b9..d933fb1 100644 --- a/be-graphes-gui/src/main/java/org/insa/graphs/gui/simple/TestDijkstra.java +++ b/be-graphes-gui/src/main/java/org/insa/graphs/gui/simple/TestDijkstra.java @@ -46,7 +46,7 @@ public class TestDijkstra { } // fonction pour tester un scénario - public static void testScenario(String map, int depart, int arrivee, Mode mode, boolean petitGraphe, boolean Astar) throws Exception { + public static void testScenario(String map, int depart, int arrivee, Mode mode, boolean petitGraphe, boolean Astar, boolean restreint) throws Exception { final Graph graph; final Path path; int maxSpeed = 130; // La vitesse maximale en km/h @@ -64,7 +64,7 @@ public class TestDijkstra { - ArcInspector arcInspector = new MyArcInspector(mode, maxSpeed); + ArcInspector arcInspector = new MyArcInspector(mode, maxSpeed,restreint); ShortestPathData data = new ShortestPathData(graph, origin, destination, arcInspector); DijkstraAlgorithm dijkstra; if (Astar) { @@ -145,9 +145,9 @@ public class TestDijkstra { } // Affichage graphique - /* final Drawing drawing = createDrawing(); - drawing.drawGraph(graph); - drawing.drawPath(path); */ + // final Drawing drawing = createDrawing(); + // drawing.drawGraph(graph); + // drawing.drawPath(path); } else { System.out.println("Aucun chemin trouvé."); @@ -156,22 +156,28 @@ public class TestDijkstra { } public static void main(String[] args) throws Exception { - //cartes non routières - System.out.println("== Chemin de longueur nulle =="); - testScenario("carre.mapgr", 9, 9, Mode.LENGTH, true,false); - System.out.println("== Sommet hors du graphe =="); - testScenario("carre.mapgr", 0, 9999, Mode.LENGTH, true,false); + //cartes non routières + // System.out.println("== Chemin de longueur nulle =="); + // testScenario("carre.mapgr", 9, 9, Mode.LENGTH, true,false,false); + + // System.out.println("== Sommet hors du graphe =="); + // testScenario("carre.mapgr", 0, 9999, Mode.LENGTH, true,false,false); + //cartes routières System.out.println("== Test en distance =="); - testScenario("insa.mapgr", 369, 838, Mode.LENGTH, true,false); + testScenario("insa.mapgr", 369, 838, Mode.LENGTH, true,false,false); System.out.println("== Test en temps =="); - testScenario("insa.mapgr", 369, 838, Mode.TIME, true,false); + testScenario("insa.mapgr", 369, 838, Mode.TIME, true,false,false); // autres scénarios - System.out.println("== Trajet long (et pénible avec les enfants) =="); - testScenario("bretagne.mapgr",48233,135047 , Mode.TIME, false,false); + // System.out.println("== Trajet long (et pénible avec les enfants) =="); + // testScenario("bretagne.mapgr",564429,602395 , Mode.LENGTH, false,false,false); + + + // System.out.println("== Trajet impossible (piste cyclable) =="); + // testScenario("insa.mapgr",90,922 , Mode.LENGTH, false,false,true); //marche pas } } diff --git a/probleme_ouvert_voiture_elec.odt b/probleme_ouvert_voiture_elec.odt new file mode 100644 index 0000000000000000000000000000000000000000..72544fc5b43f79ac85e098d17ef39d670ee3efd0 GIT binary patch literal 42461 zcmb@s1CX!1vNt-m));GS&l=n2e{9>fZLYCx+qP}nGi&U*>)q$>Q+4a^I$xct@2N_4 zI+ad3dAgHy@&ibLf}sKdK>-03i#KZM3^T%!0|5d3ll~R~S({rMJGt8#>)Y8`nH%am zncLdXyVw}f+3Gu*JJQ+O8QU1y8ai7W+c?oV8M`?F{y&ZVmH+P#^KVYb*2cu#)Y;)* z%{VgBJK5S=8R$FE|L>$stZen2jQ_V%e^qq;pZmi84;tFp+Bw_(BlH6?rKBDp_?2`%LZpP(~wW$mVVDI*Gbg3#BMJR zH{2Kl1&tRiX#RNUh0QU&4{f37%mRk>_->lFT+Ds7d&mRpfJs#u~ z__JMBYKSTMUY?^b?`nTUuWKPNpIh&iI%Z~dI}EP)NN2aJ_F5}&$1BOq08`M;~l=TSPei55~}gpY#tmK2q+K~ z2B`VpPuiRMr8 z>S!wI=kt+gg9Jj?FWc>mG&a2YlKV2PuE46KIZZ^!ycQ7JD5dsQ5Bd&UpM9PqUB>&j zaxeySVMmaw4;1$9^TKwM;H3IZ53v)f5Wq&WfE1`9tZ;u^K8VD1>vwgo_br(S{kBK+ z(&VkilJq^w;v}>Q)vP1zQ=jpGnjy{5e7S`c2Xg|50CZQWD0{Ejakf;^_htrMiFriG zr8LVh&7e=j+>MoC^st*g;@r1Jsta3cYBxQ)Y?s%z%?-;8#7IAgEAGHeGb9JJ#9?T> zTt6-XmQI5+YT=IEsL@go%`BT$3r^ zYww$~ZPKdOmz`9i;_W$UR=J!UDyS)mdEx`On&G6A$T){ zu2;*(cD)4fhR)hf&gpQLY{sfO2jGJ=`j{+!_FBgXgLG+*tu8H3C4}>c$m#`_B;g-_ z0NHtREdke`DX)D0n81gd;pEg`6Il8mP2e97ax`{wGPf~x{KpKsGq&YXNdoyjx3-DMZI zQPjwzdFgR|I4Q3DW29*w4?CUMtgd|NyxU$bCZk3e12nAiX@IYuaou8LTY0>+J2Z?Q z)b?T1mRN{0omgm*?O5=aq+vW>HLe~PnsRA+?kWp?xanoOh@YUT~9qjD1rhR+3aeb^gYlmnCdeL`u(~e7>>KX?e-Y`rf+Ya&H z=Y<5D*EF@rj88~^I$TNgUk+ImDc^j)P4n>Twh)An(bC?$xJS4q&i$SjX}W83Q1PKR zb{xaSd{4?pj2QEdtIMfI{cwHUE!@qm5s)pe2-SY|^73lUdgxo6d_yY85OAb=0NccY zCpJWd(r&+H4ZLz{bRI}g3&cSg;5;+T+Z^71Mv1?c!X025yoqjFAL-{hy>aPI8{7Dk zk;iFEij}e1)~itc*j2D_FaYw^LZ?BMbnu(j`#^`2L!tKF4BCLBp9|``CK@H8-yqNi z^G2rLZmet2G-CczkH9@gI4@j}zGuSEnl8mVwqc@;)1a28{E@Zxbzm;#N zqLz=h^0A@1Jp)MVAYX<2TSrMd&1d1G_mSmX%)?IY4P=T}s_g|xQ&c7cr0&CPDKhzC zuLh3=oU5V{_u4>CB1y|O1Cd5N*kMz#(FQatccz%5#Nx~(0Ka0>0=y)H!)s%IQdK7` z&d`hL!>lkute~h|ZWqxN6}Vl;jG*H19FSCT{n*)(Gmnez9D3MRaBP`0f4q$}4WCC) z;RsX`X3y$F<++(_Ds;}KyV*{7WL9?6C=5qCdw|%=H?|`BnB6oPgQAI*=`q<3ta^XG z^uU-8RSTt4P?4p=aoelA28o$hMIXTz;7;Z0>9Z0wQ)6LBUF zK2}{282rLtbZSc9Ar#oxz%c+)FeP(Ti{ zf*%xA?B{}C!n;uuBMcCtlsMdyxdFv`tw091-hl}%48s6wsyZUDBbmgSSu~)>(m&5k zv=-aQ6>4cM6M$c$h>3TK>Tdb5L;PN0dv1J0($kt+7gIn8McF4mB#4|k^Yw#Kw%d{U zk)KlKOuXakjBCpAMuPAni}2C`b*uvRiAi}mN;92lb2`0&4+}VjP13tf9{MWJRTDTK zG-@zb>jZ*h?xD6a#9mb73*ORZ;$UT>6uk+*4ryfq$^>n~Pd1*lyQi-1h9@657}BC) z#DygRu2W^XcaUdq`7iFZFQr2u6mCDnBFs8&^qlo_yQGN;p^bUOtjQU~q<;)H#c^XL zl~dL(a=G<_P#*!?2gOvFYN607L7I<2O2VKx}izptWi`LL0_Y#<)QEf)O*aV(+PRHgTd*>wiXJ{WM~D7?vSOJ~E}f9u zqbMk)s9U;%>kWfwX5$#%@-Znr7eBEJoDrvIo?L`oKpCFFgb#}l%)Z5eVyq7)y~FBZB5t0gAMf}Lu_fB-;uIVy1mWh z*wF72*8(=3&BxM~k%}6TRb)}iH@7xD--zb3MQto!n#Y|#XUwtb7Apiz1?`>heb*Xq z5V^Fd`dzSoyMi}7_6e9tE_byc96+pObB=Pa5uyfd{lRpuPYmwMD(g{Qv5#S4Cw2%g z2FMq;mJi1Ku*bikDp+DQRb|yEEfz1kk?pvJTCJ`aqjpm{!>de*2TWEtm*m(x6TJX0 z>p8z=^fv-pa*0K61&`h4V*|R==IkjECI_RoMjZ5%Kb_q)c(}{((0WrX!%0)gczfN9 zfX%U~2U_FP_qqABH&a{GK>nOy;Rs4gPW5o1D%L(a<>YAJoEJ035U<+?<*+hrDM%tH z?}`B{_-!JmiGVrs^!lyf)+wdOq`R=i4PFaKk1(cMaj(B+Q3HN+{%&O>EBs8 zI~&t*fUFoi3^vT)D)18G!U{k@z!pG2AV5%mw{4(I|7E+s%rih*NdyE03EpQmmrtoHBaC^!VcJR3bd=io8?+K1K;aUR41aRWUAeB|b?paS3Tf zX?b-eDG3Exc{O=iH5D}pRZ~eFM|CYD8GRQmeG5%fXCoCUBP}&YT{#CGWqloe3w+ucqh+LNAEZu;TJAYrl$N={wKbzDLm;7jt zqImDXfWW}uh>)fWi!zQy+b@s`n*uG#I@slBeb z!@kPY;kvBRmg0fV#=fqO@$UNhuCm#ly564Nsotuw{`RH5%7wv(xuN#u(dNam&b6Vs zjj_g!$&St0?!BqjgSoDek&&Uv#i_Z8p}D2Oxy{MB#fgQDiS?DK)y;*;p|yqamDQDz z)syk<+vTl;?Y*t3-OH)H`}O_PwbRF~KW_(11AEKk$7@4}Ym;Y7edlXK=UWp8n+yBf z>u1~Ze>O)hcBjt{*6#Nv?@!lW|7@R}oE%-Q>Ny8C#0`1<<#YyaQh-!4i5BS1i&6%xV%N^a{{pT1f+E6KZ&+1XsrQ(d;( z-Zzh%ZQhmZtV?5WkjkK!V`_;FKSv^YEd@o?k@(z ze=jCSmrE*pUcD_>Yg=AvcwXiB$8{GxFai7fY4FpM05|z*h=W-CH;DsV{D=D&A%rdk z|I7W02qFVu|8oB#!6dopf4To668yBe=n4O{mHTC*co}~6p(xh%biVWLV|aFq1GMnI z+q)^`$&4SI^aR%1HhY4=duf;5X}dHAQ`$pOL}v7a<*+3a(g10wPwI9|`K)(K({No3 z%+A;QXwBfg&VyJb(6oii)x#<0U=zX>>)Z58)xxa>f3$&Fp#6j^d3kyxpXq_y4ZW9% zIM;{bvp+|&cx{olNppYtOWgcC<#nhUwM5}41qkr@Vi1&$0MGLDy%k1NsF4t#aIX$L zCW{YE04rX-xX5L60>hh0ZeY$jWndB)CgC>bmSqBvfGNe7%&?xsr7RSTq>Gh%S5yBG zRpj^JqR(tuEAHqRS$+D-pLIUU`+-JnsO-<}HeKA4z65^SaV0s0&{ge&`C^p~6ip9a ze~r}Hn3o&ANgNJaiZA|Q0>LgkmY1EBt>_cSq`@F1MM;@d!5LA0G)31rLFV#c^l29; zbOh-6&6xqqn6Y!L4Dyv-{?+kWsLCi+0udfGoMO*=6*EejrZ8E(x+Dd14vEZm5!&<$ z76%6)0o)_qibp`3}y2gB*GVkf%|Ev*zERA&)BOjtx@rOt^ji zN)QK_Mc>u@Zk+Ywo@?y>{eu~)FX+d=e(C=u^8mn}LHcpt8AYJFOU_o3c6%-=Wi*}0 zZ;;D^2p^4!#ERso)xq@|jr5 zIsemmf$}>U{FH?WanyrgOKF?dgVu3wKEx>30S{9!<UE}^tx5o=R(fziW$))ulmt2ea z^`S0dNb|&9oZrfCz&6IO%5^rwm{AQy%9kJBy8cwC|-Qob!#Q7xLS@gxC?9 zVyICNU1^3&+!U8Xdudf}FzjuC(W_}m8ry8$k)X@jmkpJ+Fo6;pbB9eEP16`DX#yfz z?x4aI$-nW}z)}C(SNM%|`D z4FyQjiSc~W7bDnYmI}WIA#bhmmu@=VBven*(|})tp%JHC*t*FL=^DbNBk)D0v)#TY z11XRabr9}zPAW1ei3k|M1eLp$9ElJ04tNrms>IUzoHt{Ytd(}5$&`^@B7$dnf4`0cYzJygttl`myjpHAy0_4vzIfXu8;7a$A&uqYvp z0<>hmkZgn-{lJ85hi)H?%QIwJpL`q`6Ft+*!&(xSL%i)eZ4Nw{$D|nFW5xAX&^_z0 zdj)URf;UgGoc)u|HrWRgem_Vn!FqX1-S0jWInArKqo^AS2pn8v^Po~sqA#Z=GpC-xh&$KdGs82wfcOCgN$dcZj$x4{a@+;oaG)xc}< z?*eDW4tApB!O~*aqB;zR-B}zaoiTTae$8s}E&EhS_o=UBB^)r`D}1!@iQrrqf0M!& zxc1(_Y^@ZB4{&kAk^4>6(8K9|(2*lNO43(~4&}14KnnX@PW9Hg_F-OU9IA+Mx}JCi z-2yx+JOyW3=4>^&5@?*yD+_}7CHC3)CCv6Kvt3Gvs>%f#;ZtE6@e%XIZBY<^%vpQ2 z5)^qd!5UE&;x9}KPcv)-=B!-e2hQl2fF(78x{%~lWr(YR%J(@G6CUvcZQ_T>7|ht9 zTtgN4IMl$A3nD^Gvv61vA~*a- z+eQ2^AsRoDf*r%wG67S+z+brm!hsUu6g{Ia7eCaVK{28#iPl!fd;@)Ek5?7&)(NR&vZL^uWxj5#E^rPjV$O0poN;6@ z|E%%;+O>PH2<*ApB1InQ{YzR1L$JQ?{}n-*OAqT+(Ov~#L+AgE!y zMBa{^PQj!x=<1^!KG|EGKtLcuP}TP%`8ek3B4H_KXX7JAG5!p+J3o9)u`cYc^z;po zBbU^&MX__0WH!S}jP`tmkP|U>C+-B4luW0ph{11C#r>sm@-^{J_B7GR+p54;MBP!y z71HieZv`Yhaj~$OF)^TO9h)&h?PLuM2k5&2#P`DVTce*2yo;v`;rZ^ zC|={^o1vUS$aX7UfxU4D3u)z26!n-9vQ;EOtLOqr*~}1KJy6W!Q;<25b zlR`tb&eBP}p$&STN~C=m=U1if$(BF_(%|Uw$sC!Ap-_2e%kJCGIDp!|jjkcGRubJ# z1h0aa;I}jOAd)4!;<=E+l9V_&VhOxnLs)DUEvL*a*q{y^S|~}2!lhm9H>DYWoW2dC zaGqH`LuRDKV|RvuxUqiaOyLa9Kq-p)k01|iRIMEPyFTNiDytU;umWcZ&5K;25P)hk z{iZ^$=+QcCG;!^8P?6#1O8IW4?%zcO;{7wgdEX)H9?S#DENUFghMzs$BtC3*P!L{E-P$sskS|b4*uz{QmBnL1Pm@eOf$yQULQ>{?n^h161k0IiE+)bO~1u>dD9b-0< z$fC6N-HRg*=NvC=m|aCodBznkor_I(jT9QxAmNE`^y;=bIy1MBC7V2(6;^`L&a8?6;B*>Uq|+UB7btTtDOxf5Tuw z+sY$q6!Nh=d5b$b%#HXvd8kSX2p1O?qhtCJbjQdf$^)X6tl=i#rRLpr>u=nlGJ#Uu z?BKT@Lx9X$DiUi({cB+}PljLq{TDy@!L!pT)g193EevIo`^JJ2rvaR|Q=MeS3zU;a zmxZ%|r>@~VP$sm88gWOiax^sSMH|Bzo#CP;UD^t}%g1JCf6fOb3eS(}0^iKks|K{b zkq@JHh&B6qc)GOM38nj{iqe(~u{#R_QQwaCMQz7aAFbQ|)0G(VheJ?+4+A!j#<7K7!HC+4oPj1AQoyQU%* z>f`Ll_Ujl8C0K1-N81Y*^4zAJbBo8c5a|IOruor+YY#6?d~PamgZz-+1Zc*^hb&d- zN8Ia(%VdkvHK7ezA+>_I%!;IF?JIA2&%?>8@!1^aKSa{w(43uJB|IhUiexaT^SD5J zmJ~avE-@w~1H|_~mzNeo)58|hzld7yh>zR^yzv z0?x{*S*Rct%4Ty0l%*-J(@jrlOd9E_1-#;LcTuAUQY;xy7K$rMPz#oNOWa!$>Ci*{ z#5EOhd|8LEXE{RjefFLmT0Ls5gz?oW7ED2ToP5PDrj0yR@54g9QBa+ z>TlVi;^!nm3a?D|#)k9)xE(!CurMw!>YkffGNa~*9(AdB=h01NfM}*<8!VPVQ}D|A z6c#2Lf|Eo(SgObMmWs*QCCn*CYrDsF=YQntwVg|9$MXQi?U5N)qegN57FZrk1Y+`q^?j4+z$ zS^=WcWnXauf#j5SUJgbZ>L|Cv;H6J{+M;snfzjq3{rFzat+Ykcsp(b-6bT&?f`>rP zP+HOL>HMw{$7aknS)BIDV0%_m+E0peU;^>HTp%$-QKlrRnu8-N91ePsi*y=StzMwhQW-WB(GnN z_%%K2$6ICW0;I^{FI|#IBj#v|@tr=mx2f8Le}qJ^Kg;-&l<}NLy|L~y z(A}Qu*ETUh?iZE$m1X%<=aqgm2@uG6&P#>AmxUTP~J$gTt)IuFU{RAX3DlXV2@cxg1 z_fMmr8ZAIxl~J=5%v~X_DFx)a=+mOfJ-TRlpcQb@*{w_pFelg)FhjFh(~tlcn#xyy zqf>FX@WD_BWN|7p)=3PX?1bK%-uIK!T1-j_^dQBk*HeOGVtAp;vSY_*iA8I^n4ZVi>Zu{~^L);MkpJJ^c z@V!F$5%8&2?@zDoliAyO{1(z#k5xJ$XbD7b*x1! z`V)QXX!J{HCMG%B*}V+gGPb+al`Y4a*#EAov_Cvzl30NIhL&>i^qKA*nK|s8;GNo+ zy6J1ub?BfES2v>U`HpfRwye&W7~(lF0Q{bDxzH2ZJe8m`=BT0lu)6VKAtt`JrHp*& zF`z>gOw4PSuMlVru-y>xQB%1~5H&7Bd{3}H-dB9lJ7f9SKZ!clHW2DhvYz_?I9>tYpCyDj6)uLF zE8{COB-U5m3p>vTW9tk5#IEO^FFTK1cHli&q?;rxGBPt!sFVra=nM5SK7O-Z%Z?b) z$39&u&+t4hLTOuJ`FUY?(=7`VFQWLYZ>f0ao7wiTyXpbzv1n{@{cu z^UanB?zZ5_U&pp&oo6~o1D-|~_u=Nfai7N>LXfX6l@|t8tyb!RX z&DEu+lYZ;^Tlf_k+$6xp2sC#W;eGUR*sng{1l9S|Ivtp?&7L9c7j&cbQV3PK^=yxU zVFCyx&IQkmpcsgX)kE$Mt0in^Y=_Bp(~_M_Tp#@%kD4)F?a&OFH^+gV<4g@)YwFl; zM0D0e2P+I-E#qq7T}jDh)oM>WX}+`XeV}jacy?Si_M-0U^K^j=#F=-6nlrb{jtgT* zjHZz9EC1$unkJU>bJ6NyN|~8uPB(Hdol713Oit>R&3ntVS4|B}H^+IXb?O-8n=Nmj zH(c!b+@1-5Sc@5s>*OfYrxJ46=`Ek&Kc&3zZ0B;jn&TEGn(Q zi@V>X*;<5IiD2L;daxd@`Bt2O6v2Y>RwqCyTSaP+p01efh>*Ckvemcd5Bqu*O%)|+ z`-a=c&6D;epOsGoVNR-C1x2pT8diJoljCDA&65sWfu$qJE`J9_bBO_hrzFh-_IuHZ2jacm2Y;~(mo-mF zz;x#Fq)zunZ;i_8mYsZe7e2PE+MlfOgx zhXSqkT$Y;#exz=8aiZ?k>)RS}!_x&zN|!YvpQE$f1hdo5uk+QFC(qaPN2+8$d;qdE z=6|@2=A&EW=J0go9>n(9TLG;?jJk~kfFfSvWyK0S{L*<}CIx=PD9-m;(iZa>8}_~H z#&09eeDLq$k}wciTSv5ex;MF>hy*#OmmVUfeV^CKpz(DUFq%9dolD4q&5uYN|2VDY z5y&mX^clENgtEDxHu9EZdED9txyZOG>mFB^H%?Ma;VZfTwlin)LOcHa+Y-OF$^d?CP z0p>Re@VsWeKBR{M!6lpxnVslvY@PM<>NA{MMa)dzTc@dPatxUlO@C-)%`IxItcwPh zycjw#BnK??^(@=}|bNmk_akIIF--aL20@7ZMwGDZE1;XW+GX{ z6*|phxfb1IcCMQfa{GOpLD$fAUch-NWmKr4jZNbIi`#>o2;w{MSNAkA0p6vl=Zw(H96I9#L0L&e| z?WmUr9r+kjmasOdf^``;OXf)Iyu)a|(Qq}{?yEO=LG6-)+NoJw^n}w>_nEC3&7qw* zpNoCBt6Nz6%IY3V>+kjCioGBhA7#+;$w@2ouwaj3SxnS}Wc4zrMWE|nI_LV}1?rNh zovW9_YFyZuD6VNSaNL%g;W+V**qH1USl8XMV$y<*LfL4ySAOvKeOu~UQdpr3+|8)Y zst^A?=MWJkvLPg>!ZvAoPeD(`xfB?$Wa4>#7A@@2)+X_gb551zggR?#fJAt=H1|o7 zXJF+HI{g$5=QprKayvf(Dq!gnC3XHt25FTEm-7H*YYM3*)(+?!$#aoO4(jlth3U@t zPr-dmDO?7g0H=U4$878mE-%Q0|6R}4OnMZY7>TQ56uFl;wDV@8Y%3j`q}7TQNRy!2SDfFgq{ z!L)BVR7!^!pQ^C-nlwMY(0kQ3J*h+VfAeB(*)uWLqjv1Q&A4JFY?GZbvTfwR`is79 z5&^!y9u^8zb9~lrfAlLJHqZfP$N*K{O~#;)VyBaK%s7$>aIil>w^o_*lw2&KX0`nQ zy04_w+L}UCkcl=2-*+U7^94O%N*e&dl8MMx8JcezJgptD0^j6Wb`3O%aQf)obZy;G z%g23s7y#*qwVee{`BM7t(`rPrKtLh6Ff?ym9n?=sN&bSqapCWL{1prNPM4*$z{7pB zrn0e?C$rEHMSh)`w$~Mj#Z$(W>U0?SD&7aqb|h%6hevYU(*26YrSspv`faT*F86he z4bpf*9k`xD{3LUP)*FNT1HtVVgEXlGZzXt}*z#kG-zln;CwhfhL8p?Z@nUKng&Dk1 zJ=Q9GVRh_h69@89Tuqp$_jkdK`yV8O>EEa!o;Kxkz^0(R>=(76b)4^Hi!)N0;IlL{ z0d5oi$Ws$B+k^pgl?RK>cIu`WN$cBAnak@@-4b2ODGbwo6ZUjPUHz`gp@oyCL}hRy zlWvZBq|w4?tqq%HdQ!2X3%Cq<>@E0LLN}W;rtwPaAeAY-8{Kw&vGSlC&*0Y`oktTf z#oe-CV~AILKjDS{^-lQze;_;;!yLDHzBJV7c922rq>S3`$w+#&2ze61;{tL*6$`lf zWTv^&cm{1NQ0@+RT%I5Mz|W=*vOHPuIrLgyEoo7~c=lAl$F29e{MxIdTXz25O&N~& zlv01L?j`n|b~{@H<(2c|q8Au-;M;I;rKzTNirG@rHq;|;NVvqiYTa1s{3@#j`@?^8 ze*y}v`^Ym?Dz;m{U+dE$R>&%yq8y@E?$sey$p~bYc<6G#b=I`MiWkYdRDFkQMxV!~ zOa)8^|1EIl$1*|;n~b~(f>}G*{NFp7*xJvgs~*q zcE#n5Bs1-E=$(97i8&5s%s`56FXf{eI-F-;hzAMy7J^Y$sE=Des=~bI-uUj-l#zFGpI>U8m2OdKV9e z^p4Hmg>n`@p6Uw}y6`rbeMtbuV@eCO-j89s)l=&=wWY>J2DKOKmr#t&vv{t*kt7T& zP?=L=q4zdF^A^F`?-*#m>K%*br?%4su6|43Cq<(K?_YzgZaK#mQ=$RD5DYs=hAK&| zREWy4#25|VRw@~YBLLgTTl`E5m#%4TgJIFb0k$DoNsQC*6+Mvh&+j{@X2F0n^d2M9 z^7QuN^CwSe&#D+3%2P*Fl0#z_A+0TV9#qRAW4r5GJYUE?n=z8QYTN5nxa?B(!0vaI zk3G1piHceekWYCF3xa`^98!$Ly_AUYmoX-!PJWD4rX4U3m(JcT6nQb|@*>L|K*826 zW()m|9!kK&vHz5S%tkPFz~QcB-&V{{0$Z%Ns5H$kNUIr88$@1P5u2`FEn13O+SMzF zEV1auO&32}Sc^FOh#@^7Omh)Kk_jsOiKWCm+L&oeO52aJJ z%a@ki$Yg}EUqz9{0n!pSt_nBbu*{X-l?83pRjqD08fiK$rzDr3sVZp7P)~kUQN~nL zHgUKK`utq82~S`Qi6xfWoJdr1fsS?6PSJ`6q?@6sZ^gm>&0M?(?Z)OX<_Vok+vPMN z@itaxleyK+&dPB5ETR#u^%A)M3hM^_d6e1K(q7B-<69?sN6W?h+}J_&7Xw}YQUL}e zcQO`tWJnbol-?x|42Jrx+Ga|KmP%$H_@+>$o0^XXh)nq4#d^9Lq-pq7GCDAg>_J-9iQodc(1%uxUS$@ z?s3A}S9$kpTeDjwRxflSv-9i2--ax)WjqFS)aGGV?yb#s;mhw@H?PviT>M)ZSOF%E zh)dft&U65DC5D=z9WJ3Yp5$P&m53t9WncS5PLmRk;(DxBg#q=;pDsLq_d+detM)Ee z^Pzp6hFmcZTTh(0E~e~Y3Ec|#qXkR-`9@gkWRC6mvr}WveLN|o<*6=U?xMQjJeo4c z+N7*S#}O?PZ*I!;`bCeQIpJ0Lj4P^IMt~7fXg`BA?3y z#vC(C*jH+mW@E0JphlCmp&Bh1r)n zR0$)8`6DXslQ>QauEo%E{sYQ%8?0%`PE^5kl_APT&9WMwFma>S^I^H@s!<_Cf;;35%{*&JbaiOR_@PSwPuPsCAFT z4-+NOg|uIP0m@Oqenf?{k{{_q`Egd^cr}W&gvJRnA#cKK^+Rx1+<6FS@d|I@dD-hb z?=%WVI5EflCL4N^4YAn%tRb zvosNTtEzdur6X_#6!pu|ICe%}Q{oEI%c}}HciIf4LKfd-8*nP3^T^SkcW>SX;`t#8 zq)aa7=?)E7+^nif4da?U{&T!Bz3D9D!1D{SKkrqvYeY+5nJK<**5bZmYw(rU%?hoE z7fov^?TmAZ$&WN1kJ2N{c)g-9MJMheFWJk#mW!fG6Aa8aD8Z*Z=|dtu?>vIqhvFd~ z$Jp5^G+ELrILZu+Dp_bBf&h*VCZF_j=&oa?iUyCyPdb-mY4RBfW@iUdoVt0!C(XGU z37iF#81BN`s1Tx#8jjZ0E>6JA5RzJ2_M=7wBuOE_<^ITLF3#M zXA{FO%hECCPnz2;r3B@aKwn*oTdBHM8g5@T?fP$53y3BhpP#MDlDo^>ztB*=o1SF3 z$3_h9!oREFDrCBJrPO%x_N6Qjh~29>)2&NB0kV0C_-Ks}6KcC1h);p#Q^i{9ewu4l<7j*ep|oI36!)f#VDz7Q zk+f^LRE0G$oDq{+GJvaP<8?ItpuhKh%J1>sKJu0ya^f2{eg2xZXm*;JJs7^Fok^iA zvnj_UZo`y1{GZO2&gY%F_u1`jwWmErQxOA{D#iys$hnljJy7LB6Kf=(EqBE}1@$Fc zN)G$(8pkscg*xjFQe!2uf6-Aon$hdJu{$UaU?1`=VB!`KouzBMGj=DYn?AXl_N}B@ zp`)GTyRwySY0j=-Dr0MYI3Q+$elIvwo|boF?UZi1;jk3oUH<^H{tKV=FEG!)AzyOn z&JRmS{73ypP&I1!=UZy#6;`%Az8j(7Cp4b1@LqFq{z>(anP23rCa&op0X`^Hul5pjS;%~NL?1zNwRE~WYNFL@Ra?oq_1QOLXgPfJ_@pcIhhGP>R0a?iaDDLCZ4VezC zO(F18Ii-FA#%tj1De0pT;jzsF8wWgyQMdifb_B5U#q? zwfi4zo=d>lyJGGPIf)&T#Uy&@*1+=nM?M6m@+Qo2#UHz+djoXCLhV~LH+}ba({w;5 zCY_BKXlWrE5p&PAP}4FK=Hs~JJl9}vY3Y0ut!X$ew|cG|u^CQc$2HG}Yxiz=5^U?z z36}RHZV{pKE~kYmfHgxi`nwH5833|kj}bGCE zN}m}skq5bV{*@_OaleROtjmb0%Yl%F{Kdn_a-1oLEtw-3nD`~E%J!Ui%CMLUE#R=-#{vMXxWs6M0a>LCeFVGeD?rgC`jhrmT zH))R`d*q!}_j9ElV`!c@ELCn5mX!7+<5H-@TS5nY@*Eb@Dt4TE!t0m!6&y6uMSTH>5L&ib9`4eft0!RGB zst)iFOK+ap_QB=1h4TXL%S{v)|VDltU~v922oeCf5yxv%?oJ4 zg)kU_P>pd8@lg1%zKxV+Y^(mur$yA8hYuUQf8(N!HHf75^r!i)E)8ZAJqHP)h7NN; z$)0l5&A|fQ3dggQo)}nc+kM>N-IsZW#`LT5mfZX(gV^{>iRZ;3Kt5iXXB$ARQ zi4YH{OIL+oy%0wG`_k^}aS^_;CQ?a5_}UD(_uLYRB!Si$pBi4?^mj)lZ}CkQ&B2tI znSSHxQ#YC7L2MAnhMQf5Uc@OhIY``?nS$7C49$+N*?ofhB*aoG*d$tf0eypJDYk5Y zvk>Syx^CZukH#Nwpnm#LfMOr8t>!rVygbEM_L2zAi_$7$9Vxvp=4hns`iNA#niHe#AQM0m1# zTJav(H9(qI6(K7hWShNms-F1`I1kTYHa;^09FYoCF1NGHJuJ>hFZs3E!uhw%cU8Ca zo`t6;Z^_o;lTSy3l!FGJu+()7Df{jV1V%y2wbpchw9Q$)nx=sz z3W1MhX+c8a1iZOK`zByqQ!=TW1dMt_IPuOf*zZ!cH3o|ME4LC~ zG&+n*9PnyM`Kxc?K+}r9^Ege%mtNgcy|qxz-$awmv^lTJ8eI;<%|{9bDJQIcBphr9 zJFn;87~g-d`~QOazTuRVRN6j*7x*l?m0l8*h!)H6sc%m;uKw`;CJ_7Pzbxf|f51?QEWH`=%xZRG)wWlNn+Hdn9 zQlFquUk}2Bv>C+8Ot%B8%#2)ax^KD%yXLr}yItZvzxKWkaweeiZ;Xv$k;E?#lYMT! zHmt^z?UuyBnIzCYR<&X68Z&La>N$mEcd@rzXP?N2$Uk!<2fGaULfsN@WJdpKg(SP% z$0@p-G<4r}My$@3%l&<~F45y?KYvBGwVMr&CDn1@=7H+fTp^4^3%ED34da~2kE&ZF z_vaK`_`%&r>t{iBpF<*_Z`^7xYz!MPEVle^VuQgUdic#$WCSy_<-m&${Blm`#gXZ{iI)1 zvJ6r732)GYNKRtAlNpFc5JgK2p6}G0jZwByiVz}(H#U28X`~+Ukt-ps1mwg1-~x;E=ST*=~hDK%i!w-RfV2wq*Q=ULW9y@Ks`CzC$Yp6;mF;BjgKiSydMdhrU&xU0QYQwxI>>@!2 zZ|gxJfdb|fTO0_w@bY{no`3q_Bsz=1(SN!^)3@o!)E=;?yZ*&e>k*+7Y7{#VEY8&v zDdqkNu#x>`Guyd#xI-Czm5AP>FIs9j{1?ZIS+zC`04mm(5yw@SvSh+A2A03E_iOPi zDu8MV8V3)U41Hs&3R1SJ<9T-87Vw^G_8>i*DNX2#KtItt;dN3R@rY7 zYELl>^sWLtu6+vDIWPtZ9 zsW%ks+ONY_;S-kdNBJ_ORg`R2bo01MAgXX~E5_B-%>m80{ahFNjznk=w@m6)+yKdq zu|FOTOKfdV0f&=R6y zLD>lg%lXd5Lcu;&Pv2-xF{dP^Q+yodiTu6e#5al z-bdGzcPv8eok;~i-vgoui$O7_KUFLPJK7yaO=;wsV9?IwS za(}6dLQe`Ug0V7PpV|%w9O<9F``i5K?Z%OuaSNU!&x7(J;WInwX{4I5Cdq0+oIyfX zNGMUMB;}webR#MYt|BdU@K-o!D&53ckM#-i#JRhQ_PfFqdoLMTl$v9eOT?5LV}0%# zqvDpXpB=EeqbowGZdI^oghWS&D6e9*LJmWg;`|N&4_{~17FWB#O~C7^?u-9*d35 z1cf5|0h_UmT~$HJKi7`YHSyXIvOG4TS0i$>;ys%z#UH4GcoO*yeN8)T%#<3{zK^_0 zxz`KTgLDGsSPd+J7F=|~vG-J+vHZcBWp?5teCw_={z>bWuS&0dBOMWIZ?q5FH9TTo z0ZNb9JD^Or6R?V*UzK2eGCL;^+vN^osBp5=CgrAYZ}@k>i-sXEu2h8JCBni#~P!iy-L4Q1V&NpiZTcz3kAq&Yuwvy%5%Hwy!pQABA zI1sb21b_t95Yd&`5xdq{VzDO%j}))k!3}@Tl{L%;;m>-jbmWG-wnpZurQ>7MlLR4f1`&ZWUtiARCCrgL>@9-7_Yb#QmR4q zQ0+ZQv{XZuO#Tqk$i3kZ2{#Ihh&4@AuSADJfa)(WL;tZA;+mzDsF_lBe0hX1pRcoB zzQoX&4fRfVUYCw(fwR2azSm%1`2~w@t7P*Foi2W#=NcKN^&O)_>NT}Tiq_pGCsW>Q z6{s_EZEZ^9{q4eB0BW<2zZWI8Kcb66<7Yj>@p2_qr>A{REL{%w->?)lo*u+mL+4?G z`)WQhVJ}b_4%KyHh!xXB8`Vt z4TImBf5}6?iJX7(m+B3JJ04B5mvv6UgInDWX!>>r;Io#z>S&_H^SXReiDuShsV`jP z8$+#Q!AlcPDu7?9&1Vwa0L>7_l-63bHLNuZwi8!vhNDu4QY*i?C6=li{=oh4&Fm79 z6|(HOkjec-3d2?weRsP*zq6lU4Q%UXRI4<}5-;HQ@hQ67cq9eQIjNAkt23ouLXG>x zx)u+r(=;xJb`4+qGH_qXysw^ZtB1V!!Kbk{n8hJoEiD$0)xnQj<8pj2+)%!kdpG9# zUM&ulnVdiN7%Q1t;K=#je&Eb9mF+$v@2V8P60P28XApXbfI6`}jfC-|8g;lVYq!oG zkz446w;uqnsnc4Mn{`@L^OndumcD}zE_tEmtsE@@P-6w5h91_~T9Z+gfsHy?AhOi4 z$Dk{yyOnUIL)*PYWUP;w<2{}U2!gu|9BT{&H<8p%Oh?NDn=grb{n-Y-65UH@Ex*&b z*Klq!%;Mf=euj>N`ODVF+jz0_Uu2rIdHP%%D0<3y4{DcN9yn@rnz`!rUkg$?^)j#H0BiWYeGR( zYnEkwCNbJ+alcGA;;VcbfKDVGJ0NKS+!_!qsu(1Cax2IQGVv$^JswvG<^( zp?6(qwf_tD1q>gXgPD@N49Q-|jYe<8H#`O@U8KXs$7pFUh7vA#p4<6E3zDFh#515v z!0AQ+)wN1%Q>%roX(jrcjhSI}mtH8;3Pw!@J>j)+)^#zb`t2X2Z0hZRKPf{V%{+zQ zY)}p{bFxhQ6_ z4MbmzNfh-;A=Dv^h2t&PB!&^1lnWb74ehBh4^{DLkx9TARV!R}4g&kw7ti)ksLIzB zM13nqfAd?Tsh9!#NAQd$cWUEyxaJ-=wj`&&Jq%~BR|YVIyjv!GxMPF!TS*Ori?Ya~ zzE#db=;0=#$D(7tx^V}&cJqVn^3_7s^xXv8=agSeGb#xzK)ej?M%pjGO!oV#V%~h? zxRMo&_s%LXe-g>4yza$pDX@A1Rt-KN}nJUzym%Db_5JL|eQ(n8>W{VNFGHI3z zaqlSYm&V8G1hPMzJxT_aSGJy-DJcL#I=3te7!cPK7MhS;%JaO%ES{E_BWEW%f>$T2 zY$;@$Wde8Kc2eTnqlZ7|-R}oY8-#){EBdeZ$@s==itT0ZV%UCY}d=&0b}Kaz4Ghv}5QW5c&UQSN^vlUSSCuI}mZi zVY<%SN%7x{D8bpRAkVr8{Y`;{HPk6daP2lp1T@0VnWrUo8PP^FvAdoA-s@QE_0MD0 z_}G=ldUbsK3%HPs(}PX>uBk}$Y=ux&U4=^k4>Eyi6E#FfkR$>y1zImP>9v%DReuw# z*UoFh4rfh(m<_>6Vah?ZU3Q^Woqnz5VNkUSv~zxvJ9lv`+LKu8k!dG*;%}79ouBw( zcCj;II;5rBM5*(|{DS|_edEi;130k_G*#NXMdi?`O0*FCXt>7@6^Gu;)8;8Fxo(TnpxxX?Bz@1b&_jDY|R0YR4vvA>h*4qxJ6{w*N` zG1&zeRj;}W2pp9=Bg?gax@>Enm^Yqf*3-O681gp2+N^HtniP$MFc45ZA)`zx>aw$8 zNaRtJ@TgA&F&$2@)Lfun-g)POJ3`yfdbLB9GusA@QGbbhqZeF+BE?6+g*#m^eanv? zS1*27Y#LckQEjfbe@H-yqgFZiLhNg2&Cc0_)YIFcH5)fZ&rb6QE#BD%T9?BR&J9y< zO|N*vglcxtgrRFh=oz0Fh-lzPRvmM0%@$BHUE+$6WQpd^*f}-} zV>Ek@o6i@G77(A&20>^qUfu)fyar1my#R1x`$Ji$2|y~@C=kR?TmoADYZn6I_$0mV z0C9zV)5+2IPZoT$t~s>spW0{3fmG9!>R?~WgChI%DRfC=D@Wo|g7eL29>nxg)Oo#J zdP-GsCg0{??}hL#n`M0^>zHRHXaP2?irzTPd#^0(xl@F>7cCAgMHtqaE=q{*iGDTe zP}v`qS#wqm$NG7H?D=zVsZhyt8rglBQTqK}>*_1Jrt4urN2=~x+`v6Y2i@a}5C0fD5emDvVVb4l9oKu2V&2w&zV1i_4Na_evJl%A*gFk9vh_KpZ16R z7$omZukPro$l5exiMxW^PpTWSDJvIbkV(59(JRRVlfctaBAyW2vzrkX#8eK26*6Lr z5^*e4BB!ikHah~TJ56bbT+;{i z*lZS8{gpcWkE3w!y-ap!+DoPT*DA7(Y*|Sl)E6KYsXcial_SN!=+a25UEXUh>rPXM z{CgNgKmuP#A#oqE_U$k{b#q{d!UvIqxT1EKlNTrVuWgtWmKjlkR;a$cPQ2J?WdQlf zKV2B#r|77KCl-wKO)ozcLyfamqhTHVdozOveluPdyT2wx*HG3%8k~2*h=yry<*>e% zF=3!2yD_30UCSW^<{Xsol%f)L+@8#Ym=t}`jV3yPL$PX?W(^{*d2bl?p?fwg7VG@x z@}`%#i_>^Jn(&vs6LDqR2e)kYt(aARetH*H*LLSAFIPyb#CGSebO)slt#Z*l?rwU9@!l1@Xn4ImB)@(o<4H2}AKCw7R#@a{t_rAX9TW z0g3teUu4GU_!;@UCyAT7`gFa z6`%_hK#`im^*})VVtD>itn7$6I4#5z6I)0U@X(_h|MwT7b(At1kBFqjieN1tCVUNb z^@0>VWUp3I-VdID#o0^5VXtwX8P$2i^9Ap&z$8v0-j9JPV&&tH(mPFr|7+tb{lCY5 z8Qk|M@a!K1T9*Ev2&3jav$j|7X6KPHwcglfkMc@}=r}}QwVYk!ytZdOx2T)dgWi|R z)1OP3LJ{`a@6(N9X&PR{vsH4UFOUS8wNZ&WeBmx93aU;vl6rk&LH)W8D9UGlcdKW*=F|u`iU@L7t$slFm|}4?HP8R-Y%lB_=pKKPna`Y=4e~iU z%SxwR3+`V|lYSeE55MW`O(QS2MfE%p=n`uJ`BmTx?uvTU8{E(8GCuQlmzP{#C1CYZ2|Afs*9M`cv_c z>rOX%2YD7Y#7Mr%)EoNDSV}k_PU4_xExJJCJq)g243%L?4+Djw9#hB7%YNGgG{gYh z+#>Ch5d5xXb?m3j2Rtm~%HDIPfH*!h*bes)CHEF!fXEO(Jk2U}lO7y9N|Fv9B7%w$ zdz`rkFvf)p`}%U-)hP}YC+q_GqYli;ljWpCmVVcx`_Jv@S|G$Z!=Zdl7K4N?F=zW8 z`z6k;PH#6Luh*Wg8jMYng83ejC=TSN#E;yUQ7|HauxsVX2rYzFWt3L-(Q*pmeSZU= zeCMkKJNZMqP8Hlw^kAXC;(2!j8~+7Cj$OI!gwdJobs7M^wm8a2>HF;9iU6ZX9rcA- z>^f2BsurS_^6HszmDZ;S1nucU{RkFu1%gkLiy5J>Ug^vTa`JUl7)Bv!AaJ|$+{gcO z*fHd<%OLO5@g5Z=PxdxzYI0Yj613r9{MBhOx+6q&_Kt*@!}LIX8l$-$578K3{})mW zmD7&cvDDME3K8n*1>5~>kC*}r*N%w^vBT0NoHSAd6sV1O);MU@eb-Zn-}y%68`9=# zr*LET)n7`#@teyE`H<1|QiPEadKNnB6R@I=6FkTe`bo)h{)KKr9~*)4Tb3;<#9iLL z2kcYCf$NZ=-Qt&OZ-z9Blo&c%uj56|r%w4djmWM>#6}nZoaU@khkAM=@vQ~m?S$K} ze;*nOL*_0xL+J!*22q`mUyoycZDnEYc`EP5eS04SJ%AKGlp7rZ1syJs^jDo=C%I~5 z4FfgB{DsabNKz(6{e=xVqXo3(>G&GY-kL5g$pF;*{BjGJ0|XzXu`_Aen*h6;cu(~5kY zTSGCQxsW`wSM~jn*S$`klR1w`@om$42qV)66<0b9C#Fjf5h`BPvab-@&6XNlX>?j& z2|x{C)(GB%3jD>0v2w@%SVH8IO?VJ13~Cy|d3g~dkEW@U;}t>Kn+ZN3`w3;C)bu3M zi)XfOARdM`3I!DZ-Xn5J%EQU6p_Ff9I%}w^J!RkCM z5>T|aU}>(uo~z0zO<7985qvA0w|X!I?i|k*4fZX+x#l19b(L);Llza9*MTan)okH9 z=Tnt-1<|^J@`z}dst)tg&xMlQTbj4%NTXEAydqaVQ}Z!x$3jSRETbJip_p7A zf{Ws=AM7GU2g9t|r_n^YzG)o)+=qjKlVm=TZ(^bHXCpIH$3t~39RDcY12&WQlA2fu z?|T)a7f8smYMUQB=yUPnP$rCvoChCFE(Ht(TThBc>u(IUMf88$i{rsAaOtX@Z(ezb zI0m;qn^~4P=7v$Y{b>a>Y_Y9#1tdKg%PGRg%s$tmd&qM)Q&^Ax86U+KMcstm3mJ+} z_0AZSZ@Q_Z5Biu_jp3oksdS%>7nWhdTpz(Zm2ASEZL4Wh@T@l* z(=&BujQt0Raan<_)bWwmCx<=bphsC??d&l~1r8u9WVoun#Ydt3%Te^MbeUc);Ar+uxXz9xNshubUbMal zPEH3+67^inuDc7e3$>9!!E?3yaa56e7i-2(Nh-ohkhDnW%zDSxAn629xy9^(?_rC?8Z8xtpB5+9+hK>^eUYdUX0~A9uiL7!U>=+D z)jo=`v3dI{Zx?|`r$6CScs|x0fP{Yoba{)-bf4^_;N5u&@sWPZo%;4va%I#`6h?=q zeEa*2MA!Jn;BwH+(Y=(2?YhJ}hprsQbCrtS`pm@lcoX^XnImraV(rl&bZXl*c6F75 zS-)#sv|~lj9+ykGD4{%Ab=s|t=D4BIMX?Af&u3}5p_@%mJr!33;S+4j9YOxBypOkB z?S1!`kSsE${Aq2C$Grt{B}SYlpt2!pW8yVXrO3HwSjKjR(U$vVN7Va5KK~!PtfvVa zy(lVtFh#4I@XFeEBC7#8hI@vv6!FDhkw4)Vv3AIPSD1#phW9*RVV3g2dTfp1c=J zfVmnty_zvnDuM7eUtxcP$yutA+=x8RMh!ZL50H@nP=HES+~-c*$o`~BaPuVE&KW2O zjjP?UOKaiH?eTHlpAmJ;@rB1+9PoMUb?u8@0!WtKzU3VZ;t~nhr_;0Kof1G7N|HBY zX1GEuoXq{sU1G5>bSEwAVU?Q2P)FSeD8o*$PzwF@omxoftqT=_PPiM4BlSU*OQ_aTJmDQ(K9oK3YbrQ?-%^!vuEwUTa3h-|^)>eqwvu4+fxvqzA>S8ytR{BWLuC$0q6P}gE<1%gN8 zufDJU-$Fh2T`%91D9y#{Ezca!GWM=Fc4`v==DWhw@W0j`p^kk=fn%`dG04j*DDSJ5 zw$|x;LVv;5UxpuBnNKlFA6_aBA0CUM4wsG&|Ew76msuYf6$4Rh*|yFtKhE;K1;+N? z97FjSpCFc;U3Z51J2NU}TMFWySWaJmr%qh02cE`yQ4pJTl_?+B{#7(t($E>8YnT1;m2Os<^sc+kLa-<1r=|OxS{a((|H!-!j+`A<83Cx967j|cp5SD<+ZZ<@~!FCBNe$~m}lYnB!)eC}Z1O}2t>)-82LVcKW8lq=5qPC;(%C|BzZbR5@} zkR!%nfiS$BJQr@tkWYtJ4(p{IrmyADy|VT{RuP;t9wV&Rkbl@!)A2E}McXUXY+-cOJf{1%@_TBFKlK)mzYBmup#~Nx@thqeR49%(z zMvjjGh0nwdI|~0KR6|E3(+dcv8~6}&*ME1pyH0b+WM2{-Zm)5=dL9@W zx)|Y#E+g8hqxcWC&4D%X`&_XViEt&vTX==5&?}dCfA#r|IZLvvYWlu7 zG#+%)Eo6ydih!;&{TC2kuiW!kqOt+_3i8|T;qbJV@C6S%RVlMQjoQlw{62VJ^sI%} z?D4r6Fcu%KCSUwg=GvSjng#M!7#++f>AeCjUNN2e84M~0^E}V#_8SXRIPyJJ%1hg| zZSK*O-;Sa%(b6X>VK4%2O`mQSrhi&mw|_6GteYx2)ba^sEVYdU$q=4`P_7x zLugWMe6_&j3B{@Nrp~e}GxhG-F#p5TdFW|wQnyO zYhwmjCiVlgdt~M1W5PGq0y{e+%o!GQk}LQ5HTFbccr64{W^K>4{=w&JzzkNM6|#CF z;^ES&gcDe~jV6(fB&Peo8!La4GE`>7CWkX8WTal)7gGC+h3#6adoIMCycZHk#-xcI z{blZI?yE}!N-Tyqe@HUhtZ_scoMJ8S8>FHh$T3@PC;Zr|@K;oJ1{WFvei@yCjB{k1 z1N)B;8Zdw-*fdhKjJPQ=v3|fN*WeMg5*G8*5s}V+7bR)ZG6_YzV<;St$d@Z*&tbfv zstKLQiy!KeA`R!^x5s8DSC&j`>{nk-038gbo@PnZ&t>V+jF+c%!^1 z#;c^FDQb{zHB3vqZJBl|-ba($sJ1C5fdwF=-0jb9G8j6Yo9}_-evz_7i zY#uPN1Hb17p#D2FSj1xv)X4+8Xis$k_SU!}hx)h4)ID$8_1r4Y`QY1j#B%OG_*wvh}T?yw|Qox$ijYf1<^FRn;`|KKoD+#qTwq&|D-VHH# zerSe6EA`02dk8Mf$)qA9hbqVGkM2Yi-xcV*U*VEYxI6O-QthFI-~1|?@Q+Vg5qn_A zg^@5+7IubPzD^b9CyKnS+0{uX%&E;#B;(cz-^?vD9hLxPran;$G6rPFRAIQTc_IVn zlkEm39wo~q2665x9x~qP!Ye|wbaeujli7?j+W@so;*OPjXDMxR$5c#HsT|B;OjTPh zOPR;Xtc53)jon&rw-L~ME|2a$?92pO0W82jw@~$U1`r6<#L^98cOiH<)eTZ}4!5$f z%E-(e7&dmw=7r$A?X(#k5WvwLDEw3X>v1puHt@vBG_+Bs{_y+M4pM5v0`ct{F5+=s zeFp1s=iF>}`a*LP$!xl<%0{y8E+@p3j>2L}H7Bd{x$mgmCopCk zq-xrM1JRUR-?=qL@q^e_!#M3P@11LlB%{(|lXx0v;ULD{dCfRhoZ`?#UQ6;K+eeF; zki)G^uuq6_e5tZHZGN0?S-m#iLRX6~1T7g$q5)*w>9~J=87)i__c$+tR26JCF`~Xo zv=SPa7$D8zC~Yy=pJ*0Wi)4vK$Ms^_DhZ6M{u@shrhGiw6CH56@a6cn7n8HsbXH93 zXV-LVHJB6lILC~9sv3qDR|`3Jnp&ItNzbbfispli=VGNe5TTmk*~=Xc8ccM_mD}DddU>D70jL_PI)Kq>d*&g+06Duqfad)rK6F1c5v}GY;!}AQ=*n zJL5Mzy(~kon$vViB8Z)-?$QmVvg1f7fN4uKx`M&XFrJ^whm`*3LQh7!19BcRh6V)| z%6tU8NhgV&>Q8lMeLr%lY-)hRRRx28hF(+q-*&fZJdJgG*X@cAdLY1z#?yG_ve%k@RR(BQaN*vZBX&Oc?bv2nvhSJLBS>s2 zp99Q_lEjb2E9b>`|p6+m8fp4CGVSw}V5roo7phVBP!N=lN0<90T@+?7ZD}S=&zkn%&vKBU>`?~ zau{-Z#a21ULoU(zb@_Ghvp*>VDdmY$+A*dJ1A;a%*_90A(Z?dqk1*C05Ruv^7$VgnGxvT}i| ze`vo5D%C&a56BK_v{K{k;mm|;OuESGTAYVDInO+dI(M>0+*Uacc$9+ly=P4GBG~v@ zAbz-Ec_Qdab`l zkp|x5Gpj5V{W+m(ouClV@7Y=UeRlsBrzsbQP|q&ljQr%}i&W!SCVBR!1tJ2+z0ct_?w zxQ$NA!&39X19zAhDQT?py$=Q7xfX?PwHQM$BEoyhl!$*JOlc`cB2p7j1wP~Y(_ZTJ z!8yKwbIxJg+lT~)U+CB!>l%lZX(F;%pCeST?^V+IWhAf}GKu|IHW4RAkU-Q2x;Eom zJ5bCo&TgFC`}zb8dRY5|%Ai~SSPQtMrU$U|yG!B4vQxShB1EVdx<7zPkTq@q>~l4(c@j%ZpM_ zi~>K9C-o$8A>n=ujDyBX^1&};X4_gTKV|h`b|jv(%s?vJpnr@|D%^69Xz!$U>?L|m zl~F$Aph}Pl6~qWKco8m$N%@U%d0JR8T)J!<+|_uS=HRuV@`lQW8d344(*(D5m*xt2 z*UTk9mobR@?>g_l!6^TGC7NFuoG~oH;`Yl_?QjUB52!9mfkn_-Y!Yl}rqFTN(s{y! z`(oG!s>O!$HO!j4YG!RbU&!;6C9-L$yP?2)CtVy6bN@;h#UrEbK@`z3c<%)Va(^7! zroZ!Dke`gJ)t;j>8+D&LfA9C++%PyS8N6hoWiz;LSG_2%tCMy5)(rLFbWKp zpn6x9*5xd^GxPb6T&s{!D6S?X&GH|<3dt%Au%d`pMD3r&n`4V7pgO`)^X@fL4Gyoz z)BAq+uB_Ysz0rVYl8t}Y{wH?U#>M1;&yiy%9SGOZ*ZyW{laa+wlsIks9a3Kl?dm}~ z1M#UKke(JU1{K$S7$RetfC_@PMLt_tyD(k>rAm98m!ixnvkE_QzKAqpjPV;5{CX$`nzP5 zT;q!11QH!yDDJCCR20b~Id-|)M&!(qITu4)gGpQ29ikj|#e@v?Xr*;@gs3yqW4UKx z(f}LVrAgRngeWZO!>*o#)mP5k8)1MD+kHo-)@b4m+I$%*VID$R(I2%Rrh26~8u936 z(H5ZoQZdQ27kO`OItWr^ucEi>UhQsqaH*T|*{hpcnLQbOiNPri^FBKRD)9~l!x&|% zLn~_N_=GWT=vai}=rX-cNmB52+uf(I6&f34OfKif7|ow5poZ@;j?F-a+Zu_h!n-@! z#PCF!+aT`NVWAY^kU%avgZ}F*Sw%+OT&Hw13}|sYY`_!!DNlqIS`o1!_tv4S*nX$i z)L&a-W?_`1Q`2y-mhaGWE(-Aj8?~U$l=+^zCv72XA~laL9`wyWm5EHRv@xGxE2sDk zhegC3yY*2Yw`M`1s=}luR|bhDRDd5Y3oA9cMVqq!wUelW%w5LmMg2-6I%t4n58G+U zu3_bK?zZm^!UZG{MInEH4Gm0@ljH=TK_H0kT&Jg>8M4X>KRk(wk=l9_a*}2;{kUTn ztw*xp4A1b(F1?Q3Vl-W(L_~_Q99FnbFD6iOxTQ`|B}0J_SLH(>SsE$K%mQOc$=S-dto?k%f$K}w>axRg7Hp1TG#zM+Xl<8L4mZM zZ$hx>gdQn*{PEh9ty3zX$>NPWt1QxEcffA~UR!r5!EhZZ4~_)HUqX~pcjB!Zht@PML{~mh4d+Umu69+R<=)HExji)WGy&p^r zB6IoOsuw*DN@k&ys}pRfQI9Y(x@9&Of45A6alf=+#pF<{Htar*mKKGDpj*H!7oca) z@+v44sdv-;$`&98it9}HSKiKAgZIB~&` zKswLGDqA<=k~dsJp3u;)qow=vt>Gt0;c6dTWmT(F(g(pDUvp22)iw!H+a)prLGBIg zfo;9V&xU{UR50%Bp2wLnexoI-Y}v%mJ8cvpdi(xfjM^A62Pm1JjM@L-naqOA6Elrw zaE8~=YmM=je{7-?E-zF0v&fMj(rYQcw`FU^?oG_lu4ZU`l;$xy{{k1uC^kFka2L^6 z%2a&xxw;A4oQ=(BXh`OyQ<1Kr+}SR?{5nHQCX1GSJSZ1kX5X;ow^Cxb&|2@PnWuCu z8VQk;{M$PzKh0LM?)47vw}Kal?_SVYbdkjmDmRh;bY3|nFs<{)_|KoQ5s=pgj7Jr= z6cL>Z_L!>{-smFCZ~d8Wl5SjT1BoC5^5V|ImZ58F~2e5b^OBjNf! z)|5rC(@A3`Lhqk}FCoa4#0501T!)jxIvnV*Gx^H_Wa+t^#jf@GrIe}b@9*8_ z{%wbwd?skHw?3zhq_^lImEYK{(xRI&8K{&_?PSpke&7J38B0i-DxyrOl+9o<;9mdi ztXr6zl`Q&coihe`)NQRT;vCmFt8xi_uWP4T``78CsHld`49C<2<2jqi2uO)`oAgzD zB#eYIGwlJK=4aBsOTR`~53TLt=+q-$nKpPPmhdnB7G3l!w{CppW7`8gY+R2TO%&~& znuf4USGc+ie=<2X2UH<1md-D4)Hd$I)$gVGG2TV;)RhcgqqDWI9A5i+-R9WXulMy& z`RkpJjYg+|ig&djFEJ~c>|eC#@o*yBw*%fKZiYv%lnw4Ly&=J4gl}rGd#qP>6@PQ4 zV<$G!`rm4gZH9|a{9Q4z*F5bEVUiaOgi|inG#G`Awz3BTCD(1kDG1Z4u3RA=8I`)b zFMAhup4tdV451q9ai=Xp$UYHjvMH8&6^$J#UX^qm9X7*EF3a@Ryp71Ig*D0uEqeH? zl*`(4c!eo94%nGKBz(lPe6saLg7SSQ&3lfdSm*HpIqdt_$konK!k7AkT$z&4O%9Dg z$j8&-JjZjWM1uEX9fGXJFbIta)+!x*59hf*hP8Kgo`#n5$Xd>g@pmM)!}vZ7f1e53 zT=P?!KH1SldmfqZ1Hfj87;Em{!Cv>iiALApc2Lz%@xQJIQsU>lPkP8pDfcOX90Dsb z+2fN~%|)5@cW#3XgA>U(uXqSYF@%10goMwYigy_Ts~i-+Kl2&awCj~c$bD+;m&uUA z``)?ayJbbB8jvh95Cii2jb(rDWQ*HEezz25`Rq7MCJD0-gZ_!(lUhRe?Bn9Bg%#i! zc>0H+_=K~G8H~|XEpQ=?&bDBesmm7W?5B~G0{b<}e~Z`U&p?~_z+cQ$n*V92w*R3R z`kiR7J6?%C_3BET;(oO zs==xCWOU(VNxAi7FNYp7A#B7n?wM#mQn)k7NW#?pmiP@8*?&4xSmU`q=f1x(;IX{w zy!{vRoAi<3`(1q3KjRwXhjYK6BuHLc@D=B! z59I2E+xKy1=G)1t##i3+^4$Hp^1-*r$%E)t1!AKnkRB?tve)ww9(v#Mc`$>gzRzQ_ z5*7{&TnmVzMt(euy!z`P4L16E-~BMrip_d|{ zHLKi}&uQEuy~c} zpdo~gofWrvK+9L^bFDY=CrCulT;~Po_W~tP$4$RP;M*n_REMuWByS{(X56sxctdD# zG~$FVvV)9gRFEp4OW*INlJ>2pFTP3YD1B$Jn8QZF=8jM(nJ%@w{^u5Baa=2F-CiJ8 zt;P{25l(fZcash6l^cbQsop~+e%Yp4h^;Di)xIFqrJ<9_b-m#F9u;;Nl_i`AR7_xIy^O`MFcZeWweat>jUg$k*2U zVZJDoz^Q6;iCu;WLx~CrNjJ+;_eV2c4KghFS=gm@tY41BfK%uGffj}JVujrm>#bCnygR^*N=v|Kmc^*bH`DaWLE4snzHpmqppD{x^TBaaDLUeXE zUwqOtT}yW|f4Z9Yl#PR8ltleeXG++_JLfiNRZ)*wE~|y+Jmk?48hoTpd2;TqYbXL> z#ZCnE%P^X>mYK8+DoZoZ%zfmc+Z?F`j&iHArk4V^GxwE6Uh;MV%?tzzwAYP!6A%&M zkznNCfeE})3*H~W{|Qn}y@QR~>;rG1&$wWSY%!Gf1du#y8swJBCep?caXtwy1vPm( zpp1HI%l36tP}?T+X=?DlObmXxKb;^BE!8pM9sHfJl5}Y(+}V3{?>) zhj~*WOt#yn4!yd(=CIi-GAi%fp5H)57W5+SZr@eDq@xwwaJwx>jMP;$BXoKXr|igy zp4xAmzz~_#okRa+9ObXsAqtvl(9|Gpcxj8nP*No3Q*JV( zyJmfw)oPs65NS%uo0#a}P7ej%T$+K&TV2i1oU+~EEWJ!W>$xmT)jJ@rxU@d;-&FXJ zY4@DlT^gE;8ZO{5KwpqAnZaV^u}u}nXD5P6yK&{cchQxcu{>r;?(9==nX=4$0}j2* z9<(mHv=?D7-GQ{H)7NH1s^!=4c_un0|Adk>H_?PO?Vf?El3k0(9+}PT;iDS&XV!LH zC$%@)R}6~hCwA@jThye=-XzjpNW9HGr~w?3u9mR{Wt`s^R6T69gFn_J`1u=*pzVV0 zR48;*S;Y%U|3yiX7@1Ut=)wT>c*9$wf)|F~={ZgnT)5zPH4G=A{=D3e!v-i8C3O9Q zHm-qonHe$G4S}EOaINH_HHatIw;4)QUYVa(cTAY`p>)h<`14iDgu)GXxyGTRrWPfC zr9*6Q1aYTA;?-7)aUTP|&7|db(8Ix~`BK+)n;K7%{nLdv6T&P5?Bv(=F;PhdtWdD5 zoh-aCsm_+6)hLc90T)fGXX})ORBQN#HI{l4tpdxcphp=ss9WzBPq;!13E#ITv2Ozr zELr*k2Gw))3Sd+||F=b@*1}JZvb@_GEN?S^D-Avzun*!Xq{LijtrvFMiS}+zvV=>L zcE#h!(%j0yoNg2K@*5t)>WY0gSaoe>JdOD}jTG@n^Nqy8&FRwI5ZxJxDnmX-a0(!w zKUK4MMHAm2u>h1bhKKKB`Ef5PQ{s@~&&+e2|Gr{;xO+rHYqFS=(PQvH#-f=W_4b)l z`tCj=O6EGA)hp89rHxgENeaFMT-`M-C22{N{(i{%lhSp1y|>PkfwXN=8NnNORNJ+v zs)|1BHboz;1UFFc^OcTxFC>A?_{^b^)~Pk3hf1j-tg~EzQR{uOIm*MtHDI;jmx}3X zOj=o7RIeCy7g^S) zgAzd6k-!1#=3e=vSH+-RC>rA2$mrH$wY?o4@=jlnbhYIXvTSI`{K4YFsV$KXq&wD$ zZ>I2@1|)DfvJ!}saY3=LJE;P8>YS)~^SRfa`;G*nvDk?})eTdh1t%x%y7``Qk_?mL z@L;EIozOC=Po7IH!X9)}sLEZsAzG|N18@EVB0W8AB2!5qcxPT1@=-#H(WQ$Z|9MwyOVA?ebEDsKK2ZQDBqL(PkoEEpM0}Jx}Q}O zo(!?$M^wbaZ*xA_K~4Xb0qhWB*X@@d=%rw*x7h;P4Z=Ex{#3Q-YE47_l!MA$m596c z8jQq4Egkv|EU&31UW~0L%@Z5jQ)`WsF5MR!57*H#;^i#}45Y4P*_9 z_J%`WuHxo%v&Z$m+5S0sC98y8_`{PdR(XTAgpiV4B#KzIz>**pC4h1)tic+j6HHfa zsEj^8rXqPsfiwk%f?CZ%!^EH^!`5~?GfkGFD?=IQHrb9PACig_fr+i=o&;O!Vf|( z#5lFg*%wkwEAqNpoEkHf)_B4_^b--2C>qTS9`vwI)svTv#F+y4R`hgLPYZhsz`=Ra~xX24DD)V57dM%Z~SjnQE` zRw<}Gn!xKO66NQ^SgMXJpuH#;6n93{sO+`tMSr)dcIdcLA|iaO{1bWpjTjdn$xKZc zD+2p?@e@C6QMWq}rh8RmE!_+_J{e~hcPwq0S2j}hxpFkiJK&GjZ=GF`h{fJzd{;57 zWf=BlFlz|WlBF2jb4JvwLO!(jA+5;0VKMvjl^wXNyp7B=W=wowBnSXI#3qd~8FXlb zDJ9C3Bp3^zL4i`)IA999&!5^^xq9T4zv`4p!P?NImRD(-t&Z;ZSuSV-Sk@7~AepfZ ze-nIv=DVHq99--p2V~oIePMPfyVJklHC`2)@(TJtm3;+N9NV(?Kp?nVa1WB;1a}|Y zA-Fq(4Z$I}yCql{AV_d`4;pOH;1D1<1cK|E-2czJ=bU%$eedpBy;gTm*VlX3^scF{ z>aGs}74m{$$|kmD>x(83j$&-9398Uc!*Kv#`)S#UjF{DA8H4sFQp- z)mclpyICWi=lTI^lg{A(xfnWc?Cp$jYbpv7>!?0(6Maa8Uw!uK(S#ijv-3sWwYVJY z9f4mooqyoxgaz$y7-AMeeTo=(TZ-HH_6irX-=@l9Vj5%7-QG7_i1zijYJ)D|YF!D+ z=XHM|=)Uuf(eN_ac$*sg_7)1qDkk!&HX~;B#dJPeb(+EaS9AKRljl9b%fS?k0)Cz3 zWaJT;zLmwK)eMeb!UFs`vnVmcWSOAw=eE{QMVeFBVhw7D@8-pu{uA6~(^6 z?an?xjXa2JUVM7 z)*GYEyxfqWiZI~jcS1UU+LrnRcjMRIGfP<~uUy<%OZ(`%7@BqZj--+l1u9njn$1+yGtATqrjkX5t2Idi(4g}^he zlhp!EdyF?L<*V|+0%~d=WFC!M6b(m{H9T%uoa|F55KB}lV3CX#V+)SuN+>ddrK$7j zx2#sA8b;LaDCjog${cG{^oE_b6?Yu9{U)=yg#+&sO*IqwX(Q!v?7sO_%ovr{^|=@} z&&zn0lDGxiHJpED`Pj%?QR>)s@dbC z`UKM^3!_1)LC~y85%`|@_A*9lbG|Z9h+cPs(4j+q5(j<&aIMLOSfJQdkpDZNMxqJ z1FZd%Rbu&TxSHh4v@WAtw)qs4riU_j1$e=b)c(C%?f$}Z!`kNA z(%Knqgg8~((*xjPj1Cd3sEo-(x{ET4O8qhYrTP}~T~qhqr!5-e+BgmjvZEF?BaZY` zfIBiT6={jr*p-TmaPOiS&$Nm5-pgg8`c6!q_xJ0Zq*^jZ4o(@8q&w|_?f&MZ?dfnu zSmY{)GYhfg0+nN*ZePvM$Xgs`PLKJxyX;r<^p_e3_$bp8%@4DZzZZ(i;Tgk=;BA~+ z{WRwdPF}tsT?n+Lr+}a7jdbZf7646l5;8Iv>(8GG=RFvB-$Dk?LhqBYZlUR(%ts>S z89+xelh*B-+jbn#8?V-`^H^*4IvQ!3y9sFO#Y#ANaO3z23qs|`dJ`W$qT{eaJa^Hm zR{}q|ArA&ozDI@nkBX5|Ydjn>qF2i77qVVK^s-?qUN*Gt7uOO?c*6l7oajEZq4Wx$ z#y&f5E{9U~aTBk;*xQ|oU$}WZ^6`vjmKDR0!SQjkr}VXv76>@29Om8IP}=_q)CqAD zVHCmZO-^=*vzHck!xuJGbT1De*o;Dje8j%@ZT9v?zA{wu-q`_@p^_uF+Zn)He>nV} z=w?YTzP(G%kX0m{7U*nLm&N4~x_HjpXTi_yF`|@mXa);aXYOGrIbDh;`{3o3HIsga z@b2C-L1s6J^R;^C@?`AN%C-V32wD=Wqq7af2fXck&wjq8EdD4w}+q|AD-E{fv4089%hpUGcGXk z=?^XI3i;urMQkuk^*6Ts*Q7oC(K0?%3P+D78GUcQC&Jzf(@5YpWZ%mhGKPn|_T>m+ z;jpIUjH#S~J?MC0D={X*&xEpl@|j#kFEl&%)N?45LX;S2KPM z-8zBk)}R;e^9FX_M*H(BZ7?pMVL#WFvan}ockizKp%%^Wnnyq7#Fj0q{Cr*o?b z`1JB=Z41k16M18jRp0LTjI)R_ft?QzDYf%~$Uv`ZjJ#`_cZoFLQCKb(*E&D=OJQ|i zIz3!u6fwmPJzsZ8O_rc88H*VtR%G4m$K~H%q|*4b6hh4gG?m>pIOyFntHwO^P#ur_ zXi)MrK!{>{Ahp~7hJKp6U=SFJ$s+F_dg;d~Hx%l+LkH@zq<ZeRafPy-IGhhanjbFAM6sbC zPm1him9i_U9}IMBucFM4d!E%cacEawTe!VyV%YQ4npRVl4hi0tS}&>Lo+WZOtGg1y z*N1wyV`9vRYlvtK0y$Go6Y1M1Zavz+HX3Un&Xvreywl-d%dl3^nmN!;gEzSs!Vx70MpF2pUf=FSY~5MLNi5DzNTEVeG}G8Qv79rMpCN zTLHo#QY&j&33Y?&me@C0_DYxV>BO;5!pl3=P+p}WOG6H4XMyxr*6{bp8&%W+wJo;U# zM!u=KCL70bjTpcUoQf2dS{T(DPHbxa&V%-T+E0W+uE6OE zJk2_}h?V@alVRR|rd@Ez8-#CR>FTn}O$!(X`+lZM^e9b`iBh|ex$ZnE#O%03$|hJH z8MA;zs9Tw?q%Uzxf$>`k76r@xXRH?lE4`}BBVy>WF}Piq1I8ppIEX9=H;PiG=nZyf z7BpYST{yB1S=1Fg25mSx*+?G+rOD0}zBAU##QnJF{phfK!R1QAIxW15F?*BC&<=sI zOm#r6q0o&e1)^^3o=ihRJ(=*e+~%YWeQoyHIjIYtSXybz zgu5u#5l1+t^nz~%4gHw^Qt)2IADAN|h$uUCd^9tC#&s_vvm+9`6rFeLROGWu zenvgc@hDGVma!EwaxArf3WVO=nPeZlYy3*a)@f$*mI1-v%&Wrwhr)2J7jyOH@^`-H zt@wC?M*_YaMm4f}5`u-+Vy);5dVI$!M&|pq83OFrmr;SXhB-xMl9j1hWKyEtu%cK5 zk`W~SI+8mtSS~49RbnsN)GuV#d!`<%Q*x0kHpO%?8ZY+Ys`70sKauTz@jy?lbt$Vb zIiK#Z_QOq|K3lBPe7+yiirXznC0THQ<_8r0+<;W#mD!C?V&hMTvXJe_5;`{LHjoPv zBj@tTlT70c2b0&d@E7bSv}Q`SU^aLDT0I6~?h0(qj8Yqh3oVgNx)0ubPcSlXxI*(P zP&i%Ibe5*88l67@fkE%TRvX&7=B_!0KM-Z2jf|8l-zvm{$P%U za>FF?)2)*adZ9d*fIsvu2&^kUVB}LUV%d5z0(mOCwbB0^* zbI;wF`tjLHZ`1m0NBBOP^%~H86Zy!wA$+FaT6cL2meqYP+YKo8nB_^KRXS6NON07W zN9_3kB%M8kzntIA6o=L$JLgImsNQQ7d6zV+!fOzm9h1tyYB=^T$PxwTY1EuvGf4d7E#Ni6^em8BE@ls=n?^1yPik?mr5TFC*WA?aGv z?0k(OzA&=%G>K~=YtZFXpFTAfi}ckS12OMb_f{vP#U-a_gx`(VIz6$Z-`4Wb>WY@X zi=XfaL=tq9yei5|rC6VIR`ATQb=>bVq0SS3+D3eSK z833qf0RaBB-+>16JItLxU`r7Am*X*`H|k2-jMK5rgkAV8uR$)>zwLFj(a=Y^m8jaJ zEjjR;Y)xjwvA6gK#3tw_QcNWdhk~0ai#bVJM%0Z}r!=>8*Cg+#!>3o}>Kc=xg`RMe zEXP)Mg3#};Yk$79wC>R@nR#RH=U(0y66H=aW7B%x@+f@?+@Bv)5t-|S#7MJ2T@q2Y zTB@}%A34jk8;GpxXBW#gwoi@lcMXc!TRx34F6innM)mlV8sO=-?iQYIoOrso?ONUr z;EcLw^LePz3v&XKj2JLRGog&~O&iNxO#Pyz+F2i34i*UZ_4V}=Ka@*_FIa3ZmiH8| zj2z{BdtW8&l7mJ&WSw(S*B?}&9A=1e89U~~g(ytf>gx2usmfjW=H|y5od^MOIOcv+ zhVSr4dz|C9MtVl7{w2+EDeE0S?sLNToE){rP<|U@RGd#&3Ch7C->s^ z4CiH1A0E3F!o0UKX>JTiCB-j*=#;!O5;a}Me*A%uUDu@YN<`KTefV3xC@&I~Y0dl!446=^D3Z3Lm{axH@d#gdG=VW-ZnUPVl7|gmsd)JZJlO6ZDYtoWrAtcXK^?2Rr#;d|kYKfm?dO%(S{X(aW3$ebOy1 zQNkzKiB#bQ)u?Wr8w5pd=Xpv0bKE8bCf(46ia=v$Bzt!anVl(?! zGq+E`4nbVh2nnTXbKAo#DON*t?kpEtKZ)gD?qV{YnpgzVXV&2U8TI~Mjoq&ud>c{m zRo|^P2oV%Ej!OLRJ8qnW-=pnIHN;%9)lb0%_;fxbWgjftEa$Do+mKU3-g~_o!m=_3 zYdoZHv^l@cO?H{ve~%mdD7ZaZdcJG)@sOX_*TU0ZPs!x%5&6SMQtj+qALS;XUh22q zJP@WUQ9sahUiCJt>Wc_0yMSp8C2B;Y5bfZ}7Ya7T#Wk3)R;@`B7?*T9lqm z@fGJABWm#YY?yxe!pKMxA~C8y3u&)pdXsS(_@AFrbSiA93J zGJ8v6&~Rj+GHW4Q9oEmr{+_6c8OeiT**rn^piargO+{*xl=P}^e$>-3`xTf^l_KlB zhS^$LoSUK|K~Z6^LWj!P$?pOZ3jsRC`R3UOhR$hkW57o9dtWDFdfO9i zKJB?hOz-RW5kM33;P%_SGv)GXo(S&>t)Azr)es>Gvl}V6FHKYbY_Mv%YDkpt%PWe6pXliDp|}_%tOMtcPFk&S`_a?0 zTRJ3ER&Mh6rnt+~=49?K*LX6?!>i)@^aA^zr$5a>?HjX*>gw6T-sQ>RIl<1Zky@*9 zqfWt9(0xnJ>4iy);Fui21zdHS6ZIRhsU7&ha`d@lK89jSOfMK$(RdhM-7Mi0UN@I) zqz%KKbS3OO_Qg?+(`Dpf=V_&}dR5Irth_%Zl|Fq(w}INZ&wtearoKW^Et;QY*% zAzi_O^F|?rhj79;+Z%v>HfMGmjhJUldg`A#GP1*!p?Q{)k7b5{(1_691n|(Jpo36c z)i_X<_48-}>$C^()j!E-fw4QtVy@8HVLYI~rV9xNYagxCuy@EZfSwRa4B`F5zkWJh(aOV*UCy z2wG2ig2X|%UFJ~u!dgc_vk-a{bmE)NEY9LT$VG$Y%dNn2tWf_ITQRf-aZS!KKlxMF zTJOExc7}gP`cFREx=MsB=QNZ(SvYAjHN7j{cy(d12VdkLLT`!IJz^5l4!)71ba@$f z_{r+n*hScV4$UuO4=bK*wvk7x9)45gK~^BeXGq`gL!vAyzdXfW({iIakpO|bazp1f zl{mi`G(KSKApl(Fe~qMnBe)h4A*CH__FPgp|9S2=6e^ajCn+gelMz&k)Gj?lroz|h z=Hs_I7@tQ+)h6z==prE4KkD!%T(_c#!{JWRD*L=@zYIS~sER&Qf4sI&G>{F62%^A* zTTDqWgRgOJGNa~+Um;o$&bHF>Jft#qkw}6wOoy!H$MgNnt{d~yT|~~M+>j=gTU}5* zuJK|{m`N$1R;+hz|2*W4tiq}@JccJLc+D`Jb=f8<8}ovN>iGyaG1(*Ei1Msw=i%}0 z_K}um2Q96vdcDrhwe+OX^^?V?+41vmk@u5G-}BlTmrNg8ZNtmm-!ZFG?K)rXiyn0x zQML;S_|~3+EAV7(-IH{r9`jws?&dmo7IdX>^m-Jpf*T+|F?=h)xVVd=(KOBQ6XCsZ zAGcy?Ns;u5f?hm7tlZoIkFXh;P4V2HELK*Diu%SgnpJ9vz4Hi0J@GXR`XCpiIJKS9 zgBMqxfjhxTAPrVQv^v9UYMl;CM3Y03V8_0Wc;hW3 z!2{k_We5}-s2ony+3N{or-PR-%8SI+LQ+#_$wqQ8$QBSw3fSK&21gS@@$$Bw8ZRNMWq+= z#4|1RV~E+XkNqArfzP~mfcS^yepU^}^I6X;aIsQmPeiQKH}S)F3EQ(?oNY$9vymzu zLNMBtb%XOHX&pO2N%tQ413O1G2}vO1v7@iRm8bkN7PEPN?(U#)gNKx2ksh|Bf41Kq zi_og?3Ia*P4~`?{yW726<6rttQ3yw4fdc^O5q{|#4jvzX4*dU)W01Q*`IJ2V86g$HDhXS zZs}kNQ42N4Acp)|PH;61HGRQ)jpT9^UW7K;5OyBqHqe!A}4H^gn^g!NC68Zn#=l z{l5HuOWt{!kBq`3XJC?lzVyRkdtev7>94!|ze?HAQ6auS0st;J{(8PBL|9tF5)8Hl zS^pz3@muouR2xqKgSPzvfM3g>C(SXe=?V?*IS* literal 0 HcmV?d00001