From 1eb45b466c57d10868822d538efd738e66e35d73 Mon Sep 17 00:00:00 2001 From: harisankar95 Date: Sun, 28 Jan 2024 18:54:07 +0000 Subject: [PATCH] deploy: d7008cc2086639637b9b8e4ab0233368b9c33cdc --- .buildinfo | 2 +- .doctrees/CHANGELOG.doctree | Bin 12112 -> 12598 bytes .doctrees/environment.pickle | Bin 1367323 -> 1474267 bytes ...thfinding3d.core.diagonal_movement.doctree | Bin 0 -> 11359 bytes .doctrees/pathfinding3d.core.doctree | Bin 289470 -> 3653 bytes .doctrees/pathfinding3d.core.grid.doctree | Bin 0 -> 79641 bytes .doctrees/pathfinding3d.core.heap.doctree | Bin 0 -> 29540 bytes .../pathfinding3d.core.heuristic.doctree | Bin 0 -> 41264 bytes .doctrees/pathfinding3d.core.node.doctree | Bin 0 -> 80106 bytes .doctrees/pathfinding3d.core.util.doctree | Bin 0 -> 38449 bytes .doctrees/pathfinding3d.core.world.doctree | Bin 0 -> 22302 bytes .doctrees/pathfinding3d.finder.a_star.doctree | Bin 0 -> 56650 bytes .../pathfinding3d.finder.best_first.doctree | Bin 0 -> 57021 bytes .../pathfinding3d.finder.bi_a_star.doctree | Bin 0 -> 57208 bytes ...pathfinding3d.finder.breadth_first.doctree | Bin 0 -> 55718 bytes .../pathfinding3d.finder.dijkstra.doctree | Bin 0 -> 54170 bytes .doctrees/pathfinding3d.finder.doctree | Bin 466346 -> 3771 bytes .doctrees/pathfinding3d.finder.finder.doctree | Bin 0 -> 70925 bytes .../pathfinding3d.finder.ida_star.doctree | Bin 0 -> 70418 bytes .doctrees/pathfinding3d.finder.msp.doctree | Bin 0 -> 59292 bytes .../pathfinding3d.finder.theta_star.doctree | Bin 0 -> 56639 bytes 404.html | 115 +- CHANGELOG.html | 71 +- INSTALL.html | 27 +- INTRO.html | 27 +- USAGE.html | 27 +- _modules/index.html | 28 +- .../pathfinding3d/core/diagonal_movement.html | 29 +- _modules/pathfinding3d/core/grid.html | 51 +- _modules/pathfinding3d/core/heap.html | 41 +- _modules/pathfinding3d/core/heuristic.html | 37 +- _modules/pathfinding3d/core/node.html | 37 +- _modules/pathfinding3d/core/util.html | 41 +- _modules/pathfinding3d/core/world.html | 37 +- _modules/pathfinding3d/finder/a_star.html | 35 +- _modules/pathfinding3d/finder/best_first.html | 33 +- _modules/pathfinding3d/finder/bi_a_star.html | 33 +- .../pathfinding3d/finder/breadth_first.html | 33 +- _modules/pathfinding3d/finder/dijkstra.html | 33 +- _modules/pathfinding3d/finder/finder.html | 51 +- _modules/pathfinding3d/finder/ida_star.html | 35 +- _modules/pathfinding3d/finder/msp.html | 37 +- _modules/pathfinding3d/finder/theta_star.html | 262 +++ _static/documentation_options.js | 2 +- genindex.html | 408 +++-- index.html | 48 +- modules.html | 42 +- objects.inv | Bin 1539 -> 1891 bytes pathfinding3d.core.diagonal_movement.html | 193 ++ pathfinding3d.core.grid.html | 398 +++++ pathfinding3d.core.heap.html | 274 +++ pathfinding3d.core.heuristic.html | 274 +++ pathfinding3d.core.html | 1191 ++----------- pathfinding3d.core.node.html | 522 ++++++ pathfinding3d.core.util.html | 308 ++++ pathfinding3d.core.world.html | 237 +++ pathfinding3d.finder.a_star.html | 327 ++++ pathfinding3d.finder.best_first.html | 328 ++++ pathfinding3d.finder.bi_a_star.html | 329 ++++ pathfinding3d.finder.breadth_first.html | 328 ++++ pathfinding3d.finder.dijkstra.html | 325 ++++ pathfinding3d.finder.finder.html | 377 ++++ pathfinding3d.finder.html | 1556 ++--------------- pathfinding3d.finder.ida_star.html | 364 ++++ pathfinding3d.finder.msp.html | 355 ++++ pathfinding3d.finder.theta_star.html | 325 ++++ pathfinding3d.html | 279 +-- py-modindex.html | 62 +- search.html | 27 +- searchindex.js | 2 +- 70 files changed, 6596 insertions(+), 3407 deletions(-) create mode 100644 .doctrees/pathfinding3d.core.diagonal_movement.doctree create mode 100644 .doctrees/pathfinding3d.core.grid.doctree create mode 100644 .doctrees/pathfinding3d.core.heap.doctree create mode 100644 .doctrees/pathfinding3d.core.heuristic.doctree create mode 100644 .doctrees/pathfinding3d.core.node.doctree create mode 100644 .doctrees/pathfinding3d.core.util.doctree create mode 100644 .doctrees/pathfinding3d.core.world.doctree create mode 100644 .doctrees/pathfinding3d.finder.a_star.doctree create mode 100644 .doctrees/pathfinding3d.finder.best_first.doctree create mode 100644 .doctrees/pathfinding3d.finder.bi_a_star.doctree create mode 100644 .doctrees/pathfinding3d.finder.breadth_first.doctree create mode 100644 .doctrees/pathfinding3d.finder.dijkstra.doctree create mode 100644 .doctrees/pathfinding3d.finder.finder.doctree create mode 100644 .doctrees/pathfinding3d.finder.ida_star.doctree create mode 100644 .doctrees/pathfinding3d.finder.msp.doctree create mode 100644 .doctrees/pathfinding3d.finder.theta_star.doctree create mode 100644 _modules/pathfinding3d/finder/theta_star.html create mode 100644 pathfinding3d.core.diagonal_movement.html create mode 100644 pathfinding3d.core.grid.html create mode 100644 pathfinding3d.core.heap.html create mode 100644 pathfinding3d.core.heuristic.html create mode 100644 pathfinding3d.core.node.html create mode 100644 pathfinding3d.core.util.html create mode 100644 pathfinding3d.core.world.html create mode 100644 pathfinding3d.finder.a_star.html create mode 100644 pathfinding3d.finder.best_first.html create mode 100644 pathfinding3d.finder.bi_a_star.html create mode 100644 pathfinding3d.finder.breadth_first.html create mode 100644 pathfinding3d.finder.dijkstra.html create mode 100644 pathfinding3d.finder.finder.html create mode 100644 pathfinding3d.finder.ida_star.html create mode 100644 pathfinding3d.finder.msp.html create mode 100644 pathfinding3d.finder.theta_star.html diff --git a/.buildinfo b/.buildinfo index b3aede5..c30db9b 100644 --- a/.buildinfo +++ b/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: 3c7cbc2567366b70bfa993aea4e8883c +config: f7d25218f9a02756d96ec1b9e14444fd tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/.doctrees/CHANGELOG.doctree b/.doctrees/CHANGELOG.doctree index 724e7a4db32c991fdfe39c065e4c10304bf6bf94..90003d0750b678f49d6f1067e244985016d1e5e1 100644 GIT binary patch delta 2045 zcmaJ?UrbwN6z99W_p+8k*Ip=HTiSxaN}-n)_eZ9{z&~RdvQ3Rs6DA#h{Mv1R87%XG z46>McT}_;)8c|}mzNimNKnyX9CL>XoEHPPpS)5^v#3vJoMl{9;<2m1L*_JH6oSy%` z-*>+6p58pVcubj6-fxW0D+|oglHtXD8SYLiF@2Zb0@vAWm;d=Oo*X$78XO&%I5{*j zo)}M#j)W%01{32$gN6M6O@dC@165@;5L4b|EwH3?!B@=7M!{JYfmldZin))UfX?zb z3`lRYbFePG$ljr-aseafVBE6XagO`Bg;(|RK<~sco`$QIFw5STEh&w` zyeFoVabIdH#2n3}aWme(}OG#*&jLQW>YPBpF{#D|D)7A=B0@r*IShNPEgVe2w z#<<0a9eY?&5%O$-PTQl>fQh7`zh5Ac)(0!LK8Tm5q&^1IJ~z&#+(vVtU=O*xFrzu4 z*sd`g2f{pU4@%j4FmBA7Ex_EgC!_@v#)JMjf>BAk!eA^AhVM$dr5k2^8+xw`8l+u8 z8ezCp_Oi5UhP~*#Bf_Ma;k4td^tT!Iq4Q4>Cd~|gvh_okLnvxyMHDz>if93I1_bJ*=d`^#qF)N-ny>;d>>8_Phz-9p1No@4l(wsw<{YZ#yt| zqwUE&5}yA4(b7O>&CwomJK!^|g1NZ}@S9s^N1(m@J=e&?PjX38$S+0P+r3SOJ zh$P<|C)RS@cAp+grhE#CYEF2ALIB17b8Peqkxq0xRAWUhirku0~7;z1WX}cKFoi zfv2@6-*^iC}B313nLGtO*Ymg{ERopf8yG$Di`s-!MDvL3+VN4}8B31*LIqFvlll2;O z*J^BsIEPW|k>XS>HjvtZdAbZg)t+>9$b}Clzp}-5Dea@=FnyTc*Bukjw-akRAYR|B zkfx(nsio!QU_72l@JI09sID)Qwjeuqxq|(<9T#E6!Z-DoC6-xuwc(8AY!abT!-SXQ z!~8bCmD-Q%DfJAA84@3mcmW@F>M)5}5;G($78FG!A|$qx$dZ^P(MWy6BoZW!qL@fq zM-nH8#@`qlIz>A_h1h3{44yRjZ9~8s0@4t0hJZ2zj3FQl(cTcP4bj$^;MLSf@V6uX zD8I!|2=aW{WKKIh&s-ddm>(e_m}eVE71Y&D>QT}J^&DwLoi65&=!Tj@{Xhw<=>z`( DND@!z delta 1882 zcmZux?@wE06yE#x-dkuXE&WB;-riAG;9B~NF~VSCV9_ivgKkcfX;}Cn&28t*j1UJ2 z0hXCiC1h~w2R}%}U|jTzh%-|#_+iNs6C#sjMq{S_15*|jKk7N}Ep$uv<>cu(&-Sk+ZxY`Qbmi3a87Ow6({Y`DaKeTpCRpPCecCM8of$u{;W)tFy5DFlh~ zgZnN!aNx0xjKRA91i#0i%lj0Yfoq=jHrjOnPn5Vu93P5*md9&K%X_3;d`V+q@jlIW z_M|R&bz4aaKJu#kE`v31S|Ram(;2}LaerP!LwolJTaGHY>hmx+-e3xD`+_{eVa1-7 zgGkfhr@%q*OCfmPf8O1~pEMHdfKG1=CyG^f3L7dOY~j$Q`=KN1r3K5BIs*TAn^_8D zBfS=davITak3KiF1$-=s9=dtf?5|-xgZ zIA;B@QD+`wwuqD3P-WCdVmXc=lFK1)`qn$Qj!U6A~GKp{mPPV zHO!&Lv2F$ym&}@N1BBQ0S-7M9=z!}OUB7FUE8mzT_ub7lnu7iL;nMSR0}Bp diff --git a/.doctrees/environment.pickle b/.doctrees/environment.pickle index 3adc3b9b59532bb628edf7ce056dd4e94a91aca1..5275de11ec54b0db456abf16fd090ff05a866a55 100644 GIT binary patch literal 1474267 zcmeFa37i~PbuTPS);8J~?>3YrW6j7jJu@0Dmh7=DS(0%ijg2K^C$ea2x@)Gp)tkGz zH5wVcz?T5hOB3KR2?4$&Cv4;R*3uJ+Wgg^oz+xz&k@a6rIm;CrbzW+Jr z-m1D))ji!kHI@xBqNc0r*17kdd$xP-x#zxe`Hx+*q z+VD)Jc6PXG*K9BZ*XUv^L3}}<|}1)?hN|q;pBWhWjE>-R5RDy zq7j9M`6*q+^?|2U)NPbXc5QaffI%H~T;O#>pfrIsp`Ob-Gnq=(F`t(0YNhB@%5%+N zUDNq`t}$7)r_q(>3j$#C<(yN?*X?q~NoVu+bj>cA@bILXJD0y;HnD{9D%j`enl}op zwCZ=dK3jD_Aazu8Q|OglE?4Sy9cY_tZc^_umFnzdqh6+3tF1AYfMf{ckZNOH~Phf6+kydh39Oy zxlyAa4FakI4a`%^>-l;S4O#yv`fW{A>ef+0(_Hh~$x0Tq^oqWFbEEf}FYg`3qrSd- ztM{F()M~SX){J9iDve^cyrXUr=UMffUAKrrQuhv5rRb^JtkrPAlX&S^u4C6SIcu_V z-m28B>55gyKRhR9_P?8JG`D)KZq$lENX?nbgH$$z_?kw%(x`#(+{P4@AbD|Zss_rR zXf8{Y(4kc{%Gt_H8BqI5wp({87%i_?c-u}-s(M+u!Oq0mM}qqTZAtsluK z5*26kK=(ISrd@tA*US%Bs&&XDG&EbUREilJ@P{9r1yPlU$5MBvM(-Xzzjya=F+Vw6 z<)?T!?B?svP}R6~L{L6VagyXl(n;PROqh7&S0Qz;hhD%y;K`Dp=u8G;X_b9OfP@DkYEE0WGSRmhKH z*EZMX%S_t2d^QWocB#3B+1^c8%Ej5a%V4vB0!dFh(4~++D0ge{dA?Mw)Ig2tl2e+5 zyuy3_4qTKjRWfJOQhgyeP2F!xSCTE3`SQ|Q-yj>j9g`2C=Ac%ZDorWlZ z0IX!ZSC^U_K%D1*kl-UFEWAg}HR<$>W1oe9A{ZN85bjVwBcj=x)UA{CzM_ZIWyq1C zQYG6cIzx7`ICrVhTwk4?CVR*Q4}oyVOc7cKwLf>y^mgsl%pFLd~!pek!h9>X~;j;D-cIDs5CZ@mYzBUrQqf-pfP>h_NGP#t-Dhr z+kn+6s1tsEY;AKn=q3-_VigoCjT~gl%E@VvFDb$`bwG2gc8v_ZM)Ue$#bp>DfqIv_ zIlGFQu7!%O&*k1opcRxA6+j^!y?Og$JMg#ocn zfClavn!b0Mn@Gy#oMIIc#&xK2G~6(2hCnMY1jzC@pN4_L^hd_(26=?n4S9y%&gw}-g9Oy zH)J2XhF)(%UHS4;Wz8%$YcA8gmVk1>ow>Vme@0)7 z(EbyDrdlS=xOx_mF^JMRl_osGj5w<_^iL4a%T&$`~392INbl zJ~edrkei>D#^qj|dsxbD)Iv32IyT8DSKVK$6;%!MDTTb|jdnJR4wac`K}VK~j>1=SErWp8#e~K~;;VD75yE+GPBnOwubX^BitEXZ=5}%6<_2wy zrYA8Qh8&-e=j+ZoPBlGa*UD@G$UwowX;fK{_-`NwxaHRaGi<_vuxS#f=LUFBCIXK(bN?YnXqKFwD%xayNCoSm^=U#4@?eBDmsY_GT=&{C+z-&r zqLU{ksJ@Nzj7&T=pT9WAFV;esu`FXVQaGo%3bsa-thc$#Txh+zPm4JKvB!_MnvXF) z(-5=jU)uP)M)3dX+-Icex0USk`4ZlPjLUW%l8KB_T%7VWG@okT z2AY(U2?0BgSWnlniJv=9la-^Cp!#Bs{sNq?G1ynflnthGeri@fT0@U8m2qmYnrmEOzW#IrH0h1U=D@SGtwimzrw==7P__o&EAxy6V{^3@Ei9Xs7Ho+0 zRXnXDD;652xeQ|jYl9@soYPR45*kipHlDNHJgje+{uw7%DZ-l6T+m#{O2gBsP(c}@ zhPC`yPZJ(`V3o2luBGQJsQS2sOa==-0GAkF=-bWyn}B8Oy;dLcygfJIJzm3K36DZm zde5bS8Uu5=9o`$!cW6&B@4|Bv{79)n&&!d!%lm2r*8}H6xt^cOlU=>CQ9fIyiM3Zo z+Tvou3Nxcn40di6f8NMv<+-3*x|AUo+1xS9t!N?l2IMT625I3O?=V)I4Gv8~)| zu%0|mirqRa^FH0M4 zVi?L--o(CEPb;rf$KQ&xMJ5DFp{(XcK-5>XidoA~rZ7Jy14@eJ9?!j0TK~!1r{u?@ zxtB3!-UWOiLqloRO-MKx%Vo>71ZG~q2V$s61VFe`) z3Q;cPjL2tL*6};3+PC>Yehm8yxi89(v^>z>kZKWAS8-@umI7zg-_!E9c|Et;_oQe? z8N6h52)$sFh|ECTWpUDx`NwUN@gdI9-zrSY3$jhk7rB?IM&2lOvnz)ke<&xuYSpc$ zR3l}Ch*(JwlTm%W?@uCY4$fToIH|pv<}J}zc~>-K74zEL1Fy-=!S=6)LEJ^2gqs3| zYEB6PNR^cBrLY%*ryDEy1YI=Fg=(YYWpFaBUD(qMO;eoO|*W zeM^>TJJW&-1~co&oarOytNr3{8L*z|v+!RHYZA4xB@a_Iht*yG@afdfyY7G49nW0s zA9%&-r_Ma})S2PwL2JiTPu+3nj)8lu;bH5JJFSv~sl5elX3aoBIu@(}NdK$?)_1Y5 zZ+PdA_Rxp@^2wmCMk5!*;nuB8v4TnIxav-dZ>fX*^;*LLG6|bf z#^$!dD7VPYotkCb7W3yE3oYg0%1>GS3X8fD8bv^mHtH5+rR)3+6=3+OryEXf_N2nk z!D7(^l>+S?fv>rr5N3_v$6tdQh&lQP2JT@v7lQ;N0Q0m0M;N$=M|;?M5OyPZGeHqf z8G}oNY>AK5%DZR=%wH#)vYvp~#+r1nUVteYtsOXAC4OKLVFq|mCHv4b=t!(HP?@p? zugfHtW(u;g?4U^2s^%TYQW|uA#en2XTA@HykZ@TmU$(@Z6BtJJ>pX~t%21*=50Wq{ z*9W=z()veP4pE6gbOfyAoUdX`r|hEZ3|b^>2!fP4PJ)I89OFBv21efaPYE$cNVJ%R zNv2TkTBJM(i2_L5whdY&Lk?Fmhe?9)BTWG3P=x0QRT(F`XI8wYk4FqBJY3=R8d|Hc zFx28E35qVu6J4%FSl#yGBaa;+=a9Hsw%yN=2r|$}O{PYo6}R6W*WzH|7fZ9bY_JPn z+cGr=+En#`conjWrYPjM0fM+WphQex!KmDF22Y%z2SQ_lC|xjt>dMXx1P_b69WU$O zVciuwns~fppg*;9V8;N1g)G5{D&aT}JVUI~fQCtBAOc-_4a`F>2qEh6KYhj@J?S|w z%Aq4nWB$wONcxjUzKoiRa2$cDb9|03Ty2=K>P6+@w7UXlkgrb)aJQb=Ih=PLQEMeAcj6ca;lS^Yw}(ge?IXP{!l z-zb{e_EdSB!PbFNXkOqh+&-%dAYiU*xt@kpRu5DNB85^<3&! zo)MAHpI!burvN6@YG0uVkBM|jDu$rRVP=Ck1*%xN%^33TG)>*{P|u*KD57a(!rHti zSFcyy1H;3aY&lhMY07b~mMS~-;c~S!tjazxHte{25G8Pas8lKrWvFc^tdPd8K!O;? z$$DLta#oNZZRu0}2%dRrV9t@|dmpQXb9S~Zed;t7I-?7DfS`8Bd#DCPf4d7ax47qH z;pcj(Kv4%q;P1(uwoyO#*5%cUwfaSa+)6jIM` zk}v9&YSB68AWBJA!XSDuto-FxDG~8|1i=PeVN1&u)vPV@A-^L}3VhJyg{ALuzn1%T zfquOd3OHRnS07ifNwtp_-W0bH-L9IfRL){m4!$?Uc44)eR);~K{LLEm4SO?l|3ec-l%`N^L?Y;DDaUweg8z{sJ zWe`O*3XlZ$$ptQj*87miP3(PqlmEQtU|tBqm0%SA(@nu5(7kY;9J@xK242s@J{c}oyONZzwk6`Y@xsM3=&EQd9!H!|Sjrv_+4PL&wUcZTF9&cIPZ#P9}$kLvo zf$KDgGFH!>It&Ob={Gd@-l*SZY89-SdaHq?V`WHDpsqVl^F%Pr%AMmw|7F`xdD;p(a*N=$vUA(PH$ zIc|jF2tbu!2rj#sV(OqV+OUyI!Z>M6qYss{SpQHQu*HADR7Qc=`dxp) zK4(jWS7)`{L_WJ}U?q~=MbMXS4j{R!w@YACn)FPg{50Z2Xw50hp}}fRT$Q{-mF%c{ z+f-p4&WEmG(E&4C#Jv?6xVOG{9XJ&1%z-nA3xn3+umyx#toGjUdfpcA7FGingi$e3 zc<<6BOUMe@>c7q+U=TA|4i#DMl!p+0;uX8mFQ%aAHN@sMqkggVelc0h@BjqrIXg+t z>}-P~n70_KFhde{?0vM+2ZxWyP>pRkO_(7;&G$F>-^y~l7U-8f@HhEIO8GL(np(+Q zZ}tiW@Q1+AsxT&2D>VWGZIs{=TFTTfH~2NErK8P8hb;tJReki`;uj|yoR-2NM`%S8 zqQ&oeU@*L55+ZQMhjqOVi~En62Wx!9C^y{N@MOL`jA*oa9!qJuwE>iQaOIm#-Z%P% z|CQxe1iEDd24YO&Nhv@WB==J?B`ck! zqVTzxP$DV(NK_6^O{ z0BkN=wUJc@Ut}polzTc?d91zAu(G~KA*9H0lQ5Shk z8rcNnR^J$f2TKQYFp7jE`K6#-ugj@e8U!xDnyu-EHbisg&M6JLg^H`?I6*D1yh)3= zPW_U|gGLmxy-GGEjZ3bgz`P&`Mh6h5X+fXor>LFn2LqrHGpzAfRV8l=0+gT_9ScPm zQ`N4;kZ|M!^frS%8)axh z{r)=rUI%xHXgDTzXYRkM8Topm9h%^uRngXJV$Y8qvPA0T>e%X>M6U~vR|MWeN)TQ_+T!qb%sELESXHHlo-W9pUE;cXltO>1HFk*A|0 z#Z1TJB#=(UPNc(-Z^iRIp(S8+uIeUur{yco$X2ntX*YO zY%+=?1f1L~%#53jH@s4*Nz!~(BVN|8wi;h4>r=n<#|0)X^fp$o+>j~aeQpQ{dVTtJ)>6n@s*U`2usQQN+T%XZC6A-{_a{ z02zqh;uj$LG2U(V-zmoRFm$5}rh$bytJDuf0wyoCHBSpm|67s0zFW&kRMPzkvSZs zadQPcO|(mJBG=zsFEN=ZFpzBBTluK^rFUZHR^?Vxly7qtXooG7x!1!3bOUu(ZyU{~ z$iaj<#M=}<`WIkqqE&ke+DBk?OtBoC(iCcrxc|8R!wZB?>iu!I znE+I0v-!eV7)7*!A@2QLb6ecw)FjQ1p&h0WFpkEpe0bvIse{Ll8q~BF&N8w(B}5KUTbqsNSmgm?5#g`e1U=GR1;o%&mW1}MCo_?JKv0^z zGju5p&pMG`#fmMF``42Bg_QuB8o>8NTdEN83Itz<)I+JW2uxYS%* zMLasK+wgq1i5NCnNx@?`B{(2Y{4lo6P|1MxFoB)LQ<=cGcj|8uD`Kz z1ArJBCU+r0qVEhy>+@yWaOACq<^H9)9v|=|H+`Oz5Fw4ck#1wse7Z^dC=mrU#Re#f z_T}s%JRRhlhcmW$J+lhUM#`a4SdoOwWBvyLrb8i9{ zQTRL92nCmsq^O@1gv>me9fc;+Px=X&+ofyIT07NyvJHe?RM0v7sU69 zbq)b|LxBjJTCy#^q^JL-G!cFW?S4anc%n@~vYR^Uz&r?gLxI?>O+_7#-~5;&R;HS^ zM=&LZPKcz5*V{DABb+FIC~(SrBI4|1a9Yulhw7FUi80e|I6N$NN982o2n8)`4s`KF zt+48wbKJs~uokTsB$$&L$WB^+M@vlT`9Qm&nol(JIFzK1Izd8z%f<)I`Sv3jpo$jk z@6mLN_dRx!)NH5p+7U~(6cu_-)E*IwM$%+KbTXPP$#woAS|mCoYbU9ew;UZkKjhKr zXrPm&Lo(tz>E!XA?4E$tXQ-@>#B@|m3MmZ3+mVD=dP9M1)=oOV0NV7#M@tw1&TFZd zeD6!Uj`t>tFfmddb?k!tA}~_;5-wzbH`gJ+k0J-ePYTae^ZGRH6QB z9GVK>D8Ya9BJxtETVC2P%xtNxF!#yr#lBbA{3@~9>Y6>HGNZtqwknfD!Xv~^Aee$D zn}kp|C7GmGuZF9p*5%hxzi1lK4nJNgHP^GzW^V(Bb zzof}Xq}Z$HB;(r(4rQp%6(#_@xtcmDO)or14_2r~Pc&(QkFDg5NxRuc-fa~PLN1qO zc@FSE5QoYEfL<*ZzaM_B!ro5*hT;z}{icABMssD|Mmz{Mu;%V5oJMuWt|>f;KZWn3 z%MVcf_jjK%ZrF3&QBtbLWZ_`|l3@rV^o03F=L*v(JV`B3`NI^xq(PaE(_={ESm&>0?`ID7DQ~ak<$lDDOw>oi6w-iye47U#c9f+mMcljKbE1gvZ3J#@JAaevH&>>+WCorif<)^islNm0?S}?&3)QUFBwj;23Q(Kh^tEL zxqpx05IsE1jN=Z2aYR!V{*hY5a({Jul4?wbWv3}L<78z(t0?Fnjv^olt)ifRAW7)H zR#DJdK$@bXjaJzeuT@Cdw9zU`7AL1wMne2aL6jpV&EK}XwMgtMw&VW$EOaUQqrY=~{rOd95w&|+y>@_>P{bFOJ9R|y{t8zgcwN4P6igqap zj#AL?Y6-pb;kxZO?eoLNc7&JYupin}_{OLS`sXQYVD`~y+dNg?J>3Rm)q26~i75Oe zFsq;^f!S>*@?~s&MgUMvg-p0)X3^57#Q{i&3^t6)PChVjJRQYBGC1BKIL=1lCxK%H zy)}+|;5=U+DBfVv*0DYqi`NGu?e&3@qDkq4J*ns{gPs{<-i(gP0>)hHgH1BvmkD^n z`e1{w0ZlRxP62B;kf3xzXuI20MH! zQPc$3;YPvEKSbdt!43-gH(NsQT%6o|{ISQ80tfzhq;Wv37xMn7c+C)g+Z8l$x^hL5 z^OFEhZxWnd8-BdM~;tCiPajH#q z-OO_f-$B!wV=)dx3T!VAM;kg^#S+=@p50Mr;jKbUF_=)qBz;>tXe|JB8$zRK;w|#l zK-zSoNV`1-X;lXsX|SkW7Na@hPwfyz*Q7efP!C3_zpkg+^KcX~N$|gd-kSe=XuCh- zR`vdtMv zp+neWkVV!=OYMBH&W)xrMOA@*-7!-7-@s0(< z-Z;TPOxbp(t=K6!!4REk?+(wjzZS(>0)kA}}zoxkGUHttk8?m_|YW zhnCPgm(_PY{@8I>M;p-)@L_-SqfSYS;TXZr?Fx?I3x>LJ)Ie8X8d&dJxkxki7YWu^ zM&T!cbp<^MtZzLeG_HgHWc#B*;_*ccJl-Dd=K|P2K)rVg9$yfJp9CHi^wxOnL0$PG zU-1S@uZ~6jzIc&8k1ePKWl|!4EXEe3XU3QxjgH9z##}pB`(?l%B;Y}jACB0%{Rn62 zKnRvYi?uF0JPzd#`T<+onv)4$2jz|4ol3NK0gB!k=wQcGad#Y5(1^4(1Qae4p^9ZA zsWB6y{KUXnDN&qhiWn4x73QOeoF;?b;p;H|B{)jeVS>9HcC@Gwj zF7e`_MLVPZU8Z&Mjp%4BV6?R^*)2o;H3Htwx>!Ns*3qG!i!cT%r74+{! zM^i!XT-&Thv^mSU&@yu1xq-1;qCHvwr3WZzzhLafDEuTarl7aRSXlCO5QXi}oz!?R zqsCKzctX&r`L`#Ej%3h%PtOe7Ic-r`B%Lp+oY$UL8%~mVzU|}#gBl-REcA>EdX7fn zCqa!0`h!VA_o-1qZ%vJ1T5n#9-C8tfH+BFvS zYW98^>$3#BotnMtVez}dvxoGbIQNAzLh*9Vyo)n8wfxkyBVN&_gNv{<^TTbb>qh;_ z(#+}Zmu80dOxk06r!sp+_KxhD+%vgmPiF7#$$e9kyBxPq@XiR#7guqbmk%Qa71`$9=C_0zScYxscC~+9URK3oz&q< zbpcGgWvg{tCRSUSd4q6lSG%DEZyz=fLUSuJobjnAlu!)O^n3z4B>*z#v+89nb;p8yb~le^W-Fqh_~q%=|xBG)}~Q?8)KPzL!8f=fRYU30k{ z%+$Os^djjY;% zv}Y5!K6KO12Z#g(??dsz`*CTm%Qi|lZUD;(oIem4;s<$03uj89Ypf9OX5;ITB)g8SY<7x1V>|J zNdqHKxezJEsXnx(@ENrGQgaOwG)Jnk+bPwOfnPD+H^+=zY1d?1QSZ%&C6nwyZB5S^@pTOkmThmJBgB4=Unsia`Q zV?dkoZfIvFWpBXqmGn@4_ZQwtD(oF}c_-~sdV>%7eMUFNzjb3K>2j>`=HGQ+;y;A9Mxl!5!iT7mmippJ2$c)uj~iFe9y zpEx95`ox{3KJnr`_lehZxKF%L!F^&M4EKrcMCwz4v|XdQ&J$)pIU{^sMkN}he3bHp zQf=yTGP1!ZQV!$2(VZ<#R*Fc~Eho=#(XF9}Ug_0FvDLa({%ErSA94;!?m_+6g<+{T zP%B{kOr=5mJXiQb5NLDdgX;E8pdyw6$JV%0(Il;2v3`0!#Jh5EF8ih27(y9j455@G+6s^8C@*m7%Hm6@Oqf9 zjCs;6t5G{Q=Q{dDR&D}@v$7m+)F7MVJtRR<*?zlDfwJ~7oKFP-BZ|~Sgz?Hi#L%K3 zLM5%(sS!~az%LAX0xKxj%iO{mvc^((BmNdP-84??G)KNwA*1UD6YYAyR#ur!?u)`# zc<9D}ROa6+N!*>r<(PtgPfO^X`y-aa77M!y)iVQAPe$un0Jj7%wL<1Bk4NDrfhh&O zHKxKd33ILzJ0tSF3Thmf#!X40+8&0E%*R0v4Np?SZ`0Eq_i#NsNBvZ|s(0>mnfz1nJULpfo#A#DbIxB5?8~W;Yl`E^cN+-jnL*wWGv*v0{ z6%M$3`Vr3ML|SpDcFxf*jkgdsIqeJ+MohoGv@;PFyOyXS;&jkY+pv@(#Y9+Y^eEI4 z&XaPAl`3gttJBkTq>CyA3b-UiO4J4lpxo95=dGo*A#w3J*$G zj53ND{7`^Khct~2360|5J!eSM=n&IrSYZ)}F3G&D-%Sx%YZi=f`&uRH#r6-kFZ{L* z_bbDl=K?Wk>@GK;@A4ycR`@kcB5D5mZu~vAr0^U3C+O8H{3aev6yC#E^4}HSho6e2 zK1fgDp(}idUw@ddAK~k7@%5v)7Ji#9AHxNC7(Xt5K7l_Ih2P=pC;9p*dZGPeg-_Gn z^1^5M)o1zoySQrCSK)KGVeeGo_vqK})8!AmXMae)zCf2R(&dlnBCe;xALBQ9nhIaS zkD!aG@F(=9@TYwJGGG6UuV3NoSNZzqeEkbt*@`NBjqkrs_kT$j_W2aPfuHE=U*V7E z+bR6DJX}nNPT_A*$3)?8afPt{pZJ4`^Ec(s-^-tWlt16%KmCQjA`NlfzBJsMODrjQT4Gc@7aKGe?*T0y^(o#wCBAe;B}G|k8PM{1HE zws$w4c=(ic9OsVX?2*2pecm5g^I8)q>fwcr!sUFiyTz}Jfs!dG({ zCyjeR8vyyzbjr=;onqEafi^^T=V@0!Kh1#Vs|v*_VOe9SN%G%sO~I zuepD&unW&!r46@J+u3Y5UC^6 z%y!1?pqqD8!!}F@E(bq|NnJ zqsZ=wD1>MA)IvFGYy!?x3*uJvCM*|^2h@O{-%U0Th+A-sw(6g4y<^{+oV6a{?U9kK z`dz{{*|OFKFA=tk+le1!#Mr(3#xPuHQ(afQ$y@b3-V6x0R$EA;f=tbvV=%yMs0G=z zg!%;_ZG{Y*r{j30tREW4d0nE&@y<32Bd2Ffgm>b{V9w*I1&IqaGR#)-;v&poj|G@u z>@d69kmV0)|8U5A+0A25WigNGc5N2(K03sc7!8v^6s`IO8lS~Yc{LzdT#wDfwXql# z7=!=Lga%(36~63MuDC9c`QU>RtWlh$Es#hjg7f;UeT=CgIXc2c!fFa7pdG9z1J9;H z@1RACsm0ll-!c)12D*N8vCy?vOtCiTN?Z8G2Cs74H9Sve?e@c5?J0G?Qs$$pr9u~0yiI$^WrS# z9P6ZGBm0xpf9UAR0n_+xSJ1%ez0p2qHOy zXcUu4P>q7#nreDzyC24-W-M(cs$nO|+w@Fhkdz2bI>ScRPOEO8MXqy1ElGY8N?1pC zQ@jL1QA>1JLb6dr$yY2p!-2V}J|SxHyPU)6IyQ_xe2Qu&G56tUCc8X~I;Sc2Y066} zjae>s<~!Liy?c`)G}R=;4@SqzqlI{?pZ|;NVv(^3^~N#4z8-Pjb@M_CGV`M)PUy`4 zRag$hd=ZC+%~9g%x`&~oX*#UAzhfFTgi;K2j}UucY=6#o!+aj7F!Uw@Mgr>|G2tY} z+cx1OYCWU%I!&bNbpih=0`tOkM_#w7T*b2Rf_JRfw;Kb&k7eNn)T^;9a8S^8scvIg z7<BDe)8Z$M_NRqyyPg{P7O+)>74=~ zrbreiY{Ku3988Xz!LCeR@DVj^Tg6J{EHc`&p`#BEz;wEpbs|~P4=%U@Q^oCVgXhR% z>?+;3&=7i$jUl|R4d`y)NuxZwZ+x}vcq)1wM3QZ#h`~W&4;rtRV^?`& zVe~KNvt+cf3SD3-HCaG6tMkx>HOTCo&j?AHqh`D@I`#tz4V)Rcp!R?~LBKh1L7_N2 zWq8R!eZqjjN0c3vRst9dg1`Ya?mQ;@zsoVTZG!Q+HFBdH|> zI-FU5M7f{i3d-Vo%BJ1_d}<-p&@#2?^RWX$3^Ku)!&vpcwP1zBP0h90T+oUbJU?*{ z?CGx#Ky zIc34YWliR%r%^Y3C%|L}FF(jo_y!t7p9lNrJ22Ey$Q*cnYESoNV&WWb+iXB^wP__~6xfd?1&2sgG#s&OI^ zUJlCp%9l0c)d7Gn^4T5$gMEKH%3jH^uUfD8NEE(e-yVd6FZmSo4<-rS_iHQYZA4F4 zlb_p;#Zi_c#6qw)S(1SEcbp%zW(TbcJNimC65gD*#-Zd>*x={(_m2%)^lxB5y*oWR zXwknjC^TYO+p&Jl8D)YJMNbP6{m;oLjt2HVUa3X|HR@L|B8#d~TMde*Q6r}0)I_E3 z9I(D$ZE>azq}lw`6ru`gdnp~O;K^o}WSl3TA!2K@G^-$K=<+&54QFH2c&6cl5dQUM z6=L!~Ta_Bj{QpGRAsJ>?Cr7oyePeP#W{lGGiI_1Pl^H{9NH%UL3N-rKK;Y7KNqU(A zo6*(5H2)bLpu~)s=4&~dOBtuRuo*|ahaplx+AukTk5GbTGcqI)EjyEk5unsLAFIgw zLCYEJw5Cug?7*h5jv}W-VbYhcd6^0+tvKr@*ac7B`~_Z6)9_8V!gHoo#z0@cSOfh+ znOJOz!cRi&Dd-!Mgzl?71-%WChSlE9tmej<)A~ihjmw`|$o-L~SXw^AS zeJn_lDK<|;lHH;Vij$O{irMZ6yj{eq;q2UPOB!VVaFlS8Q4lW@vOgMypO}1ma)2jm zuzE@~Ut`JRp$2IhtumoT#|IE$rmP1mNaROp@bH2h8o*=S8j-1#6j#$ML=oVOD@?So z(FTz7HRycrQz<`1!MJeD)F@RO=3tPa)Q0ncl7rGJr0qg;=;dtSB@ZDzM08C}US9~j zPFW}AxTkuhY89O+%m6F3veeT*GHB7i0T0GxrCx`d2q&oKjDoucE&4ZLS|e9c*A?mv zmN^q8>10^uPGOlJh{8`oQz+<9BnjQu6bgD9b`NWcF=4-Po*1Qw_dKHRBjydh&_rw+ z5XsScVo`NVD|95ITa<`RM7L}Ynu;Wo9`*grh@CEDp)q7Qcl3q9IB$rOUNVd` zB#iUADE!29P4nZPHMVOPzK4ra_Hml9Rok&4tm}iP>-VZjL z$>kA|4&70%Kp9Eo87Up4FSQ%Rx>hyiY?|QVlevq zs*V9$8-<^Q^j6SUCkfq`-U@mfQV&b-zunG8xcFtU@Y@;f_HFN+cv-$fvY)P|u*V;M zVk}(L*x5^4DVQeD^Z{T%fM7`*0>tfOV(;HpscIYZz&247gVr`?wxUy>uIK0}e)ZEM ztZJ#R=#Jj-Q`5TnUg>mDR}FyT7FAcZBD!RBl@j8ubyW|V@W0Tq$Z6Q|$5cd1n}D-$ zc;G`k<5JGJnOp@6>MG8`lDU>nZJeo8XNNFv8mihZ32aF6qCG3hAs<$fi9t0)<&mhc zNk+3C63yBMZ6R^<ebTpP0>qg|npAIeTiW+P&U)k!13^lXa)+4nK+jY{Xj( z9|FTphc`>LC}S8MvxyoVI_+duI(&|Rx7)q(&rk3%5>PUv+Yn4O2KSLR$y}Tshgr3Y zd}CNLEmNdQ3GxXwG56Ca0jhPK`4T3>obm14#b2_Hu6PkDhf#?Oc`-A)5ywK z#C)Dd1Ac|_S*jEVvC)b!?8#y!oV8EoN?XntFkQp1Z8IhXrqfkUshR_0_=gV4i4>vT ztj5;4&^v<)-q@zb9-KO_CvZ&iF?^m~{f`98F%0N=&$$mx79 z*nv}(S?h@G!aP7~jX02~`qWItI;5DuI$1}k_pFyMOXQGYP&F3<$Uxh>5~0!`JF^6# zBKYr&$}_5kR!)%j3sg%xp;bEW)OWDxaN#MbVZA6Yr&J4kGn8KflSnPN*!L%qA0&gE zSq_>5BJFGer%R%+Csve0Qb{1s52)nDGE{C#ix0HHiY#d@`^GEZ((N}8rfB=K(m`X4 z+x2EatWgMzZai!JAp8t*D!;$wj*;lbwC#cUCmGQaE_uYps;*|4ki)&BFANlYsm*}* zAgq1qQ4|z?F$zC95Bv!ofeYIA0^w;Bjq68NlaO%;Wtu0f{v9)wS}{AagBNGzW^{)i z$E28JZ*Ra&-uPy;`<`%a#ZU8pvqC!XY*e+Jk<>#?KhfGR_vDv##>W+?{S z;DUCaEJ#q4g$w>JN(MM^W?>@`>FX7T>q#>iv zfrf0?LHLA!FVaY~3ZgvWnJRSJnx-}gL)h$t3GdB=uDUb1Q>&OEVB0B!bB8)6846I zek@7ozP+KKw;`aAz0te?ji#J=G$#f@7%EI+zjcT=Qd_Xsp`R#W)O@FunfcK8V8nc9 zs1^-rq<4MoRme?PZEwMi1s$rm0M<^DA4G%Aux-v%0?CLnX9*49d zJpf#!jdI>A3@2#-*dPTq({`Oo8BSh0*OWY`A?Ci~tue&FGf_rLMhsk@PZlpo$tg*n zh>{z4+)JkP1X-Wt=Q?4RDT~<&?VmR_o|>Nb`5&5dx&PJ%sga=aHZf=7YqoFbIJd)~R(0zZ-j|fS?qcuWMy&0Aqr8kOu*HJ&yc6O*ftP_LLjN-( z2iUhjE*$wadNE{+EfAIruVDXQfuBV+r&^)Nlm0!>kUtq!B0CX1y`6%$lmN93W@;7J z)ysHT?>05G%%eK`!eFKi8y9J6`X(99wNd!V>8@XX9EY1xdWyg{H4-O;GfXu}|442O zTgC0u9F+`Unz_h^Z&GY5fv^UMkAekUS?;3}Do~-GNA@f1{-Ygu^btZ$Wz*gan^C^% z6!_*Yzpx5ir5kUG{q0eNdD1PS0gYXFMzDbK#u)Lt+ElP0Z5Y$?IBnRtA|tc_BroUD zHC3v5W*~O_3L|zyz|0^5TtJrt+Y$|`3OqNu{>T;X`YN?uF|@=KLy;aY^&sVa!+cJJ zn-%SL5|)C3ep`~zeM><>ZzGt)mckp6t1P241Cne-%!J-E-N(WHm!qKP<& zUhC(G!pV`epHOK_cKb*MG+tCBmyWlHPlh`7wd256^81wFOhR#vD561zm*{Ea&&=3W zdlFh1d+2zJofmcFyM+-pfUr7bWbss@STE0+RvEJGhoWrg36UQ3r7uK&ay|>G2NC5P zqRReC#1OsirFj>rQ1cgPR!?J1hG{4arbQV8m2X`vRQ|M}^375B$r+n*J2*k%6J%0~ z<>#iXCx`*c2g(b0&#m{%Sd!~Nbi zAba2(-+>p?);LS^a1!Iv1(w)rcul(7FOKE2$&I`*05N#-#ulHzgCOH>MWD2Ubtpjk$o|3*!rL3LH6IJ$+#8jJe;} z%1>F<(|9_LjI(E?EC77S#rA#ZI0L+Jn6DjTxoi6ES9PCvB*#UN={1VEu~^ z}!2x_eL4c=!UgAv^{i9nXb(@s%yzh-63~mCsEK20pZ_XzS79?+#s7XZL-uP%k z(%d8c4xLOtY5%M-~gA?-hg&Md7!Qu1}uFmeJ>D8SNB1rE?5LG_=FN^4WcDf>u(jFS19U(6 zncAnq+tXt=Fo&Tx_tz`4Ln__bkPf>pPY=NY8PcnAoDu^Y_=jeYiDSqflKmBtOe+Tf zO7C(%pv@Ux&cTFD!@^|GNCx1+ib;!-`>fzxZMx@7A)WQ=I^<`oxg*;EmW*cV^rFbR(V=*!fz3~gyQyyKUdPiY>iuLGiS*0MT}X}x#%or0X`_5U*Rh< zMREyvyZj12b`qxqQmhm<8z6_OYvr6`b*jNfDV|d+iR5ZinOw1~j3g~|=0<};3$WWr z0SSRz*v}eB0_dL$jO>-=F@1>aEIYz+6o+e78#SB)=6Gw(YEi6lMH*?Y z4gGMNVT!D|t&k3yw4fgvqu*=;wg(TSzwQ>(-nezQo3T(iS;OIKF@s<bbQClXeocDzvtb_W`moe! z>Wf=AkDE$J>Bi5KYIlH;$%PYnndLd3P5?!hb0P z{k~|wTlk}zo2z-s^b7fkF^m%yaRr2ArLM1_uHF}ku0^7^T)V@PTXiKF+fCu?JuUIo z1C{uT#tJ&KU93O}k9Bh$5{U=IhHc8P=<7CCjpBLMyRnsbAMHhfS3d zTf&fROE)L!)Yg*i?}P~dlLjzoT_lm!XTB5UjkT!x3LCh%K2cl*ws!yDf{raw_^tT= z3o6q`#qH~h$^EO}ikXD$_?5Bj^XoYJ@5T-W)z#W2glX7BBo>{u%g(Fttqzi zh-F7V0d_%sRl_bO2aw3mUr#)S-ZA>&oC_;(W)98ZexdsCySNI;gX#% z4=dlEI~<~;Mj;2dg@2^WXgI=EU8+YE0fGm9>JNL0G8sclG|iZ~$0O5DaR2Q$p0H$imk{|0!hg zhA4bZ7U7VvZ*JF}H#@FRGIFicDlGjByu{uaxpFi@x>~15(_Iwe#s5D;hkL50dj_qs zyYc@qK4nI&)6+_lpBECFMUXIv2EeSGc3nyeG=Qf;(y7hVVbd`OGwfstsCpoBzUWSA zQ%He+FLgYq`F{qqv8YC6E8=Ud`F~#0)0_hL?IcG9HW6`_8SDuer*}=SkU!$#Bh1Q%B+6kQMK51FRd(q-2F}7{s(P&M?^1(}st!T8REUvG$tzBzF(s{dj4m7ZOpR>yLs5z15n~BrN>Wz}`2KC1p?T zo!FqT_qAvRE%YAm;n)uED2|4pjciC6uv70`rG-;$NOUrEVj66N$f3S2R;OUO^?ZB} zCC5r*+EPxJD``DF;ed*UE9+n?6bmb1h>i4c%`s11oY+Yr8XP?YjjIlJgWZ|VRB%Y* zIHfm8O{+uOreqTby*Xe#L)IymI*{5ubx}@oql4b)$T#a5@5DE}p~FM*i2hs*%}}pm zcrh>>)a2g+wJ)kBZ^cfnHTkCSKH`vgh zVZvDo(+KIW*YcAM9F;N!WA5P2u=TW~L!hQ5@q#u45;3iop+V-b@DqdL?rZ~aLFQFV zOXJL|<(y)si%zn+6iv7uQ(ef!TIz;&__qBdeDeD>( zfrjkv4!#IESK58igZ1W{H{0hGUOj;Kj6=_QO2j(cqT`kPfS!;Jh%I5zQa)K)@)7wW zg~+LB1=>z*6*tkvnITW6k%HedlC^zDzUYAKgN(Wo>`!a5*l=X4RHjm-+==4s=Gdlq z?{^tal>z1UE|c4qX1gdliHIqhvMPT!vJa4mm9$oX-6)lP&x?FigY?eiZ0yM@4l)## z;wrxMbdAo<^2+O|ECf~604BBq>YV;Unsa{k0{MrY#ZI0N_^mqVCFQc#ZZ0IaR8yUH zoxBkEBEFL_>p4G|=WTej0%yj9#Y!WqQWB`cYh^IYmKPP5#aVb1m6@&CGwErE;^=Dm zK%x{Ce>2ttxtRj;Vw5F({Sj6MD}+={ji4VIto-UWU>BrbW7-?1UcdHiQrZ<@r-cln zuwrNs)k9+t-~7Eah*v;dJS&6v3s-m$Z}B-XA`TaTfIeT8nv@)TVNml2uP`FK?7wne zc}tPM0HkaPsS6V`k+%kVK7WPLb4|#qjuG^pV(P){^^L(hl`(iB+F@-Bh8D}7T#Cdm zINm#pMTh**fOmhw<`Y60tBqLc;l1qaz-`}+l2io+&OkKl}@u>oD~^Z_i| zArp+(1>LmMcsfk2E7|8GmE)zkj&>C%F5^UaNSye81B&Y1fzv_URx6VA9CJM|hCd(F zj4{)iF**+1dh#`38JdR30xz$^(Uhg;ARN{OAHgujB#100ZEBMjsZ}|if{2aH{-`J< zl$cGivkD$;o=>5SP1B>8I3mxLZ4FVT6K_`KKNsm7m|fwp8*Ut*n?VyVYDdaCnJ;HJ z6|h~z?(FQWmBVovGNm%&3DmbD`Y9s@&U&T<83;MR)J?r`HJlIbhA9a1xS2UVFp-x7xEmDyByJPL#Yn!5(qttsyk45jC}$@y5_(E4C); zO!ik!V_F_F_jqzOr3t%AeKgfYW=~^iVle29eGjtBSL!25see04TrHG(^V8cc?C1dt zY9U2}h=h>H4;AUcH=gMVkv3|PpI_L!69@RyjPC?%y;(TB*D!pnJD zO0mMnp15Lvzb}21RKf=Ik<>m^q%Kk&VCW51B85!8`0nXeP_@1QJiVx@wH4tcqgpk2 zCZSrJ-=3(0OM%Aib;=5-GS+zG&BQ zsuMj^s#OKfqH^(X1zvG2a$J;y{2sGfr3=hpQ`jd5=3_~T(??+!R4W`BDb?t9s5%9( zrgi228txJmrZn2uMo~mG(F$q1Zh*v|>xYJryT1+C1^K>W+8d*PnlD!~?nN8wg!VM>#99-o?bkZGgjD6PutWd@GJHCzu!EdpY}w7Sh#@ z70ef|a93A}f(g%^+YRi3G|WMzVcrq#cPkC^6VNb{jgV&w#LQNPmbLq;nJoF1#}H#G ztJbqApV#{b=zU5lB`MaRqr2*}sh2t#ME{Rv<*)K!OL?Wa+Lo6xAr11}ZDvqId=q$I zR1MK;V3W}hntT$`5I^r}h?iE*J4N28rH)hc_GbF@q(mV(hB1qr$s^yzv{R;iBy_^~ zIfB3kVfcd#aYV%hN^YgyZHkG(VgTfFaoW zNsNt;?ji4WrIw%0m&dW#%eHm@>7g-t>|ZgbGpXu(rPD%nvYz`8Xkt+nb1S0r6muk5 z!ab+pg=GqW!lS8t&6&a;NLqyCIX+y%lkC;4oTC-iDMXpq`Iu5C>n#L|>vBPm4BmVq z$~vB$??Dgwi#m_Z%bPv0zQ5kBSw9iO<+K_9>`MhPGiLHxc-(1-a&%aF-4}(fZ*8!P zJ!ov;h;<~V@CHszd|%MMDpRMF+YC;`0$I+@G#Ot#Ge-Pe8=yUmxWB?0)7m)8BW^Mn z^QlLLk&dpAQ80U|9~xb~bcMSbP@0`kiqZCVDCvQ7e8xPb81rltIjxlDtF~LM$hMDE zncgs*rRk{ExyM=`vK?_%_z1){*kLZS(@XHa~f(};f)Ve7{@ND0C$4QrDQ}kq=D5)#d27`-!ElT8`VCg~F z`CN2*UM}i^NqzOEnKTjgc01V}i+EVprxpvzXB3h@5v@Rrs@EW~PB4#9z-0Fn#2tM` znZlnCxWK_xxr{+GUyjz+6U`JxQExM?(+XiTNJ>%*fxT*2XTeHMeZDM1W`ZHCvLg`& z&fFcA%%G`i89V&OP>u9yH-255E9|8Qe}i7QDu2XwdhjIWA^PKJ-%K67Af`yqJ6;Q7 z3QZ2JnW6{qUV6|II)t+IMzbEk`z)>Zv9;c@*8_MzF}+IM$C)?d^NWUAWst-IMK57> z5y#(BD91S)@gkGRu14wE4p<{&>2rB!hSJ$-W>RJ>ip^^Gvpk-P<^pS7 z@6wSm6Y#orfMt(p=q%UyzqpnG%u{`jt2|EnFxkaD0z^5swB+B93y}FQuQ+b8jWbjqFZChvXjWlGd zHjH6f4Z&C%q6PEF841BsY^bSHZJMHz_&<-2NZ4kiFt*Fc7fC)aijpqD{Xr?Bw8#-g z>Er{0k0#nkhVHeTN^pF_QPh5npa(M?hotM1w;_=Dktyi-L3MrtvZLi|EL;)VhwR>n z1JpgGXgNYbHebU+8l_jmDhNa{sDXV#WSK+vV;5pbmxLPto>jZ z0?#W{#k_Y+MJ6IiB4Y0CS#PqSG|JCCFOX%5>ZjU}Sj26yA%snnyd!T7TF$nqsC!y2 z_&%GM9>i&>wLz-5LO3{gg>i7J;2@s-7l4yB0oE~T!gyoQ!=)>XiyaCV0k?HLj~lIy zAvVtl4C~Hr5}BTu4hm({%2Xyu#1}t!+^HkwO$NRUB~Fne0g1e*N3H_{7~&b{-r$V1 zvwkX3C90O;TXVqQ-ex?Mo%fAbzNOo5`a5o)f#!CNSrD4@^P@S5JpcU%U8pA{i-hJZ z(aBM46!9?(wB<~Wr9nQ0P>PbyKQplPp*BO;gJ|_VL}wMY-XE<%6J=q)(h$3bsVuPE#PL#%Nnzbmf{MBO|Vg&jN3Y z>Q!wuFrHVn2WIi7`+E4_+j{sr-jLb+)uUJ~L^=~!pZ><14LN28a@RjlOPPH#r?GL& zme|xfnYuE;O8IQIsPflvbg) z@p`3dVNn_@V^Y|&?L_uH?^4{iC#hjsK5)`&rs^P9Xyb_PcvPl|GGZ&-9Nrl#kG6xRa726JzadFxNwz zp>4l4N=_Mw9b^&Y?FyEFbbc0}02&{wrVG`PuJtw!yD|Bp(R%tffTkUaP-G-!^!`DM z{!!^uA%ZmQs;gKG@O4*M42tLfcd^BDE4D~RJZt7lL_FWkC#fO7gkEY3sn>wDOd8p9 z@^}`EGAuWS;g}X<-wkb?sNr-^kqKpR#iJQ{YlytfZ7S+P$GUH*acEiK&&r6<8X*7D4-fU-u&B^P2 z*qBvs;KUublM~ks;rM*+M^HTN#K>}J^IA@iT zP(<=q!}2SW^U#k3Q!=AvLi+Dvv3oW1$QD0jgY1FIa2!VMIH*=#{56`V*OBjgEBufOoD1N;{t(xi*$1 zPm+UUAZ0zwDW75h@J4$q<^$VOUABv}E)+sh79}es&TK{sz)uh8i`hVqC)OQQF0hEquKH80)TD3PE2;d# zc^YK${8!uXV5^nR`M=qVmChbI-9^*F?lEI+-LO}UHwOLweVe{7NWjM+C{Dn~?VO4E z)Z?i{wcB^DaOc&@5lWIV=V9)X?OSC-)oaTcJ?RcKRh?%TnzjcEu%+B?3Lh>UKb^lifKw2~`Ya9Y zMShMCphyF;<*vVRkv$}>gu&u@NbW?JS_RMdpm%)v_Um2Cx8}!!Y!vjC?Ac}5AVGGt zMo0UCpV7OJ8wCdu(?4>fAg43^qn~3)?@Sq<@e|tt=^y>XlC}Q1R~E48DN?QCZZG|W zLk4&I=;!?IneT=U1?hkHg6Mx<-_X3&--E*SEp4rE6S1^^5OHL)Y8xa%`oujGq(k3z zgwQ__X~10*FtJmX3Ka|(sC*h{Aon+`F$B$Em$>J?3NP+%jcbl+$ed`y=n-Siuv0s< zU>|Q&K@XC|cTvQ&JkEl}F$fwza0JeS^Dc1H;(WcBR{6#;e=}xIJUSa!!}x4hM-RN< z3+MMK;rxBkF>7Uf9)lZpyLGftmQ4h3$7Sqdrcu;k3E}SbWgTdHU4#umq;_=c{Uo6W z4)j_0kH0~D5Z|!1R>v|(JzaLr*U4_Xkgsy_)09loODuUteN7OuIEy|zi~nDM^{2kX zxfV#@U#;``7W&z!dd6_120GV*%k4VD4e(lY*SOW6J->73F6%A;SAQ?y?|`*)Cz5XO z;o{gE(Wv40GxUi=mvmRzW)5S6nK(3W?!(+#g-$YN(1VuvB9nan3IYO1+20Doad3UR zi%%MEy{Z*zw)l++Fj={wK487;sdAthW?`w4J~h|5p1ew2SBZggpV4Gc}dZQt%`z*uD zbR8I~?`T8Z5koZ+YiJm&k++6*^-FCk>Vb=VgEgiHaR%#)LI!L6;F*?c3}}z@BgpB+ zivRExM#^!A3t>fr`rA>`g60-qoL7hR0N$U* z>#0j3)A(Ia$Z08hFTI3;&2iZJjB zsom6t`k^tJ|JDZVf@E1td*fu;8YmhMLq^MD0C*Cs2SV^|l|NQ=_7Bmnx0=JgXU&o& zYFC?J78~8{YA!8_gt6twwWce9eJHjb{;B+Q11b=c-YBIY274M)x9LjiD3|Kz*L zm&FvfgR&*$Xc^yDJE<4Q! zX3p2?lXPfUn;!G~-n+X$uDj8P=x+33m))(@kotwhRNFy5QU>Q3@+&BC@U~@N&-AhL zEU;@bgB&C^D2|Gor)(>I>VDjMhAY_CsBSx8J+tjRt_bzrHmm+#z~9k}(ui%cA<{3G z8r{8b|E|6J?;hE^Z_nP{d$9r~AErk3?im@~vw!#QJ-hDSJ-TNE>sQ+d)X+$3WdF#% zk+HFT`}XhMwQFQ_mj>?4Iv(WF)Y!=WePes}0|utwV`C803i57D-1qO>efQnFQN!K4 zvHrz?cLDC6(LK9I_wEJYyGQqEu+>_nAPHs|I_(L?k8M?Gk}5qv=WIjKi=)spv&m>1zsMX0p%aPU%z(CAKr z@uzE*MmeiQ0ghj-gGvk#6!D;57b!fK4w4NOagoWvhc$kx)^JQ1bm}rG&NkIBfr7DV zL+u&!>nviO&yJ7!4+9cvwtdHEziT^wp?$|Md{=f{4SdnTDHd6=syteqwab}Yr8d3| zJLLoPIXga*+P~kYo%6aFZO{#rJCAZB0UDc}R>WGHp0xXS?SVw`FF0^?Kz*y4B#g!k z$o82w&(68l!JXQ!V9rg8BpjDNgCaOjQZ5woQ3>mFuny9az&G@TkJc$|p&!2O&nOHox=Py^y`0qtCURDMqn0n()iyTbdYGI&tT*mkL#|2W- zW^AQWQxTe%z)?}NCTo=$WY~w-TWtiE4X(6Oq*n%bpRKn{B>R?<1Z=FXSU}>Ugl`{N zDx=g2iH*qu@4{S$qX*0_m`_e)n~HU>Tc0gD_lb#==X1uC2aF{cuNuJPH8S#|dwerW z4&OOo?Hw7Zo)0|t<=qeqyaU$uLwg^*`|zQAtl^#3an24$^BBu7Xzd*K;Z9=Dfm1tR z?W&%)TsUO1*7m)J5AE51l)rzdMmw{mOw4CPH9MPcxM=Jivr(1vLvGH-IZW{60Wkf4 zRR7?~^T;6o51!>fUn*5QgJVtcO=^GOF-##Gl7c3hJ+InX%F9TY@+!aBXWct2=rvXb zuOc2J@N6MID9J{;mt-pt?OL+ybGbh&{L*T$@VjtP>FHC%(x@BzV5D4Hew?97bp!Bes?}v5h)%@0B z9X){ePB1y4Gp2HCeG@%8SRhPN!&qpZ=LnPC=>UUij#68nZ=d&bGcY9AX5b>Hn5-KK zRvoH&>Bw#qbhRDm*mF$g|6)1!d=cu2i!QmA_HTAxS2vU*Cz-rNAEYFQD9v|r(qyqR zIcy%EWDH2`Std^?28tPIO@cBODYK_Brl*n9PjrJ?^F$bYbDMGc2_im+_+*Wt z%G8iPZz6I8iT*}x=GZ7veAD_s67N`y)+drg+PO-#(~Yzy_@;H8$5d?5?Q0{_REwA~s!Ta!2sre7m z)7(81g%9!T5A*dSeEluHeiYZjZ`0*txS%H=mp`AtpNYcn@b!~?{S>`eTKF_-IJUg- zX}Vip_zb`LEMI>Y*Gq*@;C=323ZKJG;q!F)J-YlpUH-s(_J{QA3v~G+UH*tJpQ8_V z6#f{$Cvtrgg)iYpE>n0P_2~U{`4f6m_*1@qnXiAw*RSyPt9<=)zWxQSg1xWt{nzRK zFX{3b0J>E827aQee}z9MHts0=4jx`E{Ixv%B;S01D*PZ_KE(GQ#`RL+BlO_6=<-oq zCJMhzKR-s7kMsSfaJ^jkEIs<ykHUD6E9mzg+k{?k-^x^f#zuqVTu4A~o0l#2=iI z_D%Wo_wwf-<9J)+z!X-%1mJDBGz$M50DPH&US@!o8Q5h8beVx%W&oG@dMDyI3 zbJR9&%rDR{ZVaDL#Etn`Y7sYvk58h;6iAdb3jZQK{@?QF-|+{y`L_J|5Bc+-^5+_u zy?D1w{w&8I4B`s6<=7znHT4 z7oEz~ymvTPDLKQ)?}+5}!*qokjR(DJmTxoetT9&H@Z*M8cw)kZ2ox^ zYT>K&jB&D3JC#-uA5eIX=~?m^xbOfC!%9WztqMJbLL}cv&OvazT>ebTA4B&`<49&S zSAx}RH~?f0Vxqb3(SRs8{QtA}CSZ0H)#7;eWgv!xuy2<&H<+2Qh-iQ)2to`Q5D-zs z;b!ig%ruj^wEfh#r-{fxC_dvA_9V_ptvCjs66zc2&lO6Kj&0+ zSD)^#x?R288T`L|U;6fRb)Tv_b+$U^R8`xZySD$VGfrz?)^>NK4OK>A^(*9fwcYt^ z`_DY<_)|~CqPZ_=RyNk~_sru@J_(=nyZ~0>Y^;?|t#53*3tw=`@%<;Cbn0m*Ls7pw zA0lBBu$eOaQFC`385To8k6Q`bM)p zHaZFK^?)xg(0ykH);1e2^YF5e>cyA5+MK2ENE$AW;V{ynWoked3dH^aiY7K_sK#9^ zhp~4H`zu=t87)IcA10T#a) zI51uAJ_^IxPV|Uqaon9 zV9_xffW1PKvISln_}uJ8(av^4VcDHSZE|NfTUC%8aP7r5)=X57EfiG$La0&8OR*r_ zc>o^hyG=%syO93E$!ptr2>^5F!voCLY`e3u9qtZrt!>2}Lq}R56tH+pr7_mtMxTOh zvk^|Hauq@(W1fhp2=V`JqRq!!w^_m@?^8U?jjxWdr+jrV|B7|g39p;)g>!cquZ<7j^k-nAF*?wyfjb12ih#KR&wCF(>{->e zbjV-Z^)t<|Md9whjzKY5*g%?Op_5*&PS%9!`+!}cbRzJ%i7f*9_(+mD^ebwEaYJf27E-aZCp*oxK8L6_KuIOoE9-*hp{q9mW3Uo3z#SE75=VJeN3?N87UUoi? z?fxWOYMHgULcxw=;NJsa_1extn;Q`xr_Fb0252R$%R_|*O&&wJe4xYg#j^88=rhbs z0@0u6=pvU44ZimUPR z6})^AE^6wDh1;nhF!iLDiHVRcL@vcV85c;Vt?;`L|MCPdckT!r4OVS$laq@(u_9F6 z?gl$0%UE{R0L<=3S_1=+pSK#L@(}5Tg&VNfHhWD*=w%8Rb<}4~&;p1d2W8jP&bLuy zKx;mplex7gLjma;Uvx2>%k(1C(vKsa2yu_#T~3DAqfw~tT05G+k!L9yaIgt%a2c|` zwm?O(lk$|7m-Bi6=mue!eSaaqJfJCa%9Eb1klLxK z8N|6Oq1MHhL)@Fxf*iH87MKiOg&dpEj1-DnXfJ6?aOrOq(e9Ekn%Mh0&_AbS{ob1ilN1?js+EI|s-i(+M zU9mt{3bcnje|(U9M7P~%ir2YAQ1^D6l^TOUWu@kAWJ6p9W^_PQ?(sZX+FO>&JD@{1^TWp=>Cx2@CvZC!CWguf8Lw(_TVx6T%B%q(yol~tf2YI5R@9Zs$ zoW^J1D+A4ujbjx!d8Wo+c9(`5qIOM_-!G=`D`Rj{x=34QlXdrqbB{d`w{TlsT27c+ zzGh|VSg*=~Cb+w5t4sbXrR8hZK*Z2nP(kkax%3@RAi6%vKWg}?=YF?D9ieW`EP0iP zjCS~&as4d@_!?iZJ9CRU$N1X_lTrk+^>+Cqk);IJ`oO*#ZL0eoJ5jF=&MZU%4(XQZhTvrBKQ!|8RCzOHj?r}n;S%XbdR)h2*{#t#$K!=~XD%Zu&moIWL zelT{#ZwfcwoKOn2yHsCE_y`4O6#|y2*donUjuK<6!wuEzB#TI>o;5y+*=du#LifcB z6gd>?gqU8aPw)PSTmHfcm}T)F1Hb}lu2KtY^Z2*B3t@~TF%kt~`^BIMW)V5p^CY5V z94Z{bt6gH>2BFmwd&wBBnu(g1t ziVEL$(FusVpblfsrJ4e52k@S0u#C)FFm(pT@f_HRxM}3fvepuUCJN-0(0F!0wiwj1OQz&PUz2F&5zbs( z3;Hvt&z%nz8m-)PevW_A>@M*4{INQ%Q-npFJIY&J-Hj`~7mwAYf!~ymWIw(DfR@v~wcb_XtmA*=yfL`&uL3Msq9#@SuI)5BLrUDz}r8-77__ zJ_U6cZ33lbWvgtp?1~hvve2@!RYJ=i!L=-w>G&g}{nBaK7@lwzV6`6IMe2E!FfPS^ zky=(Oc1X#d42_IavQo}?I`$NJEuv!s9TdvqF(w&+bc@ijyb_^f11-_c`t5Y=IXHOt zQGf96m;T-TaJSugfUXbXbvh`|myHY!R9fI7ZMFvLuz;~H53b8Yovu%(PBkqmQo)uZ z3Rc$$t;*f4!xuscYu{pOxq*b!J+(X*t-4M41PWAe8w9h!tOa6{O60B|@18T9T78{~mUQl==7Z zj+8mwO-p6|QrwYkV9RiAY+$UOt14fYPL;>Dr$|M9NJNpxH$kh$cQL*%l(^;{rota) zJW%+|`q$Cw+$*N73fJJ+6QofE{;c#0{2x)wMe6%#7^XP& zt&vNf@_r6{7E#^-1PJB*02_#clsB(LDDOZ^a#G%>AUTurUW<36yy-5R@{W*+fgB~i zm7o7h+*2OTu<6uunWdqLsF08UY`@np^?OZsHod0IQ|7!6_qyy{4qb7d$qWOrG^HwY zX#LIo;f8Xy!)u=T$C?a4FX7v`c!hGeeUnoVR2xxEyq$XS3W4~)#VdfvG>caVd;j8# zSDf>a$7Llgt$wldo2H53$5%x2WOh(2m=Nhu z3MIyk9SS$2Z`&c4I8L4&nscKTc2Idw?P?bkG0^Id<+R#mUnV$(?8CL6p15PVGo4;$ zQ;#-MB+0_J;T@CWnxI}RfeGE^?Pd0kC{(xKj?i=~TCm$)S;VrR&_l6{SZLj?yRUd7 zZruvK5Vuq%1~dK)qo9!Y;TtAKMyoK%hs>Jtic%R?r-+90EeRA=L4MhR8iMN!z>1xk z8~c|$jci?@o-%E`xUwWpZd_TS9qCuXF&U5!xAnMw2t=%e6*myoZ`O``VP&)leC5PIPRza7|X!8~bJ!f^S+Xy-cPGJUFF3@)9! zunFF5Pb^SbO1Wu}7Z2-GU^mZESU}H{*WESQXw{=Twi?T?FI3lDu_37^`=5_XylCwS zuHPDrU@{73DP@6H@Er_cQ!VN&waZ{f}^FFlfW_CG$bUlB0pVfYC$ z_BLVUt7 zaX_({*tZLq*dd@ZJlZHni9@{Qy&!bJJo%8JWOcD9c{ZU$h@K^WS}dFz-KezcjgU0x zl&>t?1t1z{3X%ch1lfOqGhcIJo_j~E(XmZE7O=!Pm2qpg9>6*!bx(@b~g z=EV4Tz0n$I!d}a*S54GgaDs`KN}&$C5Ume8E%=^meCfZvNLs{96b~m+>YFd$^WG5T z=RakLYuY2uu@Fvm01x_nE&K$9YbQ#3ZHiXC1imqfOhsy5t6*=`V5{bm>Bq4qpD~=h zJw@xP+SVndFwy8@DQw4})$1W5hQQ=&-W!s@yr&FVpGtu&3j+HXfKNeSUrEs_3j*_6 z6(X=?vh2nbZOcwxqRF|ES2|#@zZeMRkpbG@-Zxy~Pq36dx%&W^M?!0KHoND5izmS4 znb-H0OzV4*1=Nz>yP=tCMI?H1q<>y5>5XZ>KTC<=?^?17h5NspEE6+sS1)R$T)0c? z8ysw?L$RL6kofS=%fy-mcTr&K1$#9_0y=>?ju?^a5teW60&nV4E2FD(>n~{3;2eb# z`58);LD9P#*xjnF*tLwXUoXwXlX;OG|_|u zE#Z?YPOvt?DG8-5!*CF#1loWJWJ7eu+OLR7}UA+BDYw>??_-V^VXizy%~3S_rO2_8;@oC2gx|A zSJPRF;K=q3EQpQ`_3EUitI5x$^RW|I{(CS@`_YZpT2bolE#VpP;t^~z z3MZx$xB1-Rc@joPfS)R(1F#<{o>7v{F>qwQXg%CVYcJdZ7HRG|t5oLcdRVAr5+BU) zx_yN?iU1NIe`ct?57Ab zyqtfz@Kte!me1lj`Ut2YU=+dGt2H=-C`8EKLx#84!=5uJ`_U@X+t zs%PM}pXtM8`%*?KgFNFr2g4}$ikn$#%?6z&miK%{At9ymOndxMJhCgJQ;hMz+__2 zo2`c;Gke}7ob#pfdWs331t$%YX?%R?$P-JIMx!!`8}O5-7(wP*o|cJBsdIVd14#|tvu=c)n}h>e8gzP)W1xEZkaWWWEOOvkinr+ zc|*NEy0TOsZ;jvvv?T37;ItYOko|%pMhZK~^+A__l#e9SP)fn}tfj-iYao1XAkCU1 z)mo!g?eS$%=`{GRv1O!L3xe|j#C;rf%|!*7AII{d(L|R1Q#NoL^JQ)|SsA2((-=co zm|c|3!SUfjOgv&eyx35ejqH(hrNq}H_0R@H7V-6J>_#&2B~c%q+s#@T+JFilFjTdR zLX~V$X#YnwT@N>PfyZ-vbk$?l?2i}K?2mMHggO3RN2q@`AhKwH$FLj8G=M~WSgdx|01FS)4~k7cBdC%sDo6wDSyZ!k z1Hg8vgIPv+Z|sKE2*+vwBWGzfKHwrD(Mo3E4ULHJ@O8B&YsnP%^G)RzfxNK_Vo5Ed>F-pU{5Ad5&!=Ql8MZ=`%$O14K1e$op91rED0IW8J;3=A6O#;UQX`q)y76P30 z0^6#C*VwrC^8ogPcEdREAh@I5FzBxHz7VvIm<&o<3(8g$7qr54Ir6Ic@HMoyU|nn6 zQMg#thY*Tf(E1{*K&)gv?l5mHE8bC@7H@=)Uan`wHhBwJL#tZ@>siB_3>R~}+ObFh znxq8llLSsQ0MqHxyI^^&adC(`NdVib<$%~ZOk^dG+SC3y(YCsc?yj&UvQ(>3i(SC{ zvS@$(bau_yWLdx*gI?zxY=Xb&HoTH}jzCAyfESOL<-RdZH`1>i?%a(BA*ntv9d=Ko zblr?%!1JD#Ba2_>OYrKA$dXTb!z&jiblgJVOYAXev%YK+z(Y!b?fSB}q-d4J@*l5N zq2)g_599cPzZuoNH$|(mFZ>aW)oA==@=h(Lo)F^^UQE3}r1~A_BOtn_%u6<9QC;sL zL(>;hpvhuI*%hJ-wj^~!idI>Wl-DXtlKO6nR%ItC(b!^1YQD63JeG=5RML#e-=x5i z1wB2Gj-H-K(JBji@>*p{PqPo!8*&=`?qsJY(b!_?Der~-d#AvZ1y$`1;8Q5RLsPWM zf~ve$g{Ugoy4UBVXj>H)mBrijNtacNCKpRv1uUz6aSCKvkk@(upMtywQnbo~yu4PW zBCky;+E&d>UZTmxl2;M?LR^*tTNd>7Isl)7zS=2TWkFwFt3vdZbYF;%q-b3=Glhvp z=SpGefI0UaE1N|SXmub=*P6*cWFcrbtJ&^cG1jrg+4Y^tkC}+QW^d! zSLoBdjFGBS1p{6X;Y>aX0laJuT+q7;yqA1ge#S$ye`sKfa1_bv(Cm8=aL|+EodwON zi@!8fuQ6H6Sq{y<2kNs6KX3wMA->-NFq=cO#d=&K5nPW;w9(<5>?w3d3d%(KuyeRd zYNwD7g~9)UV=R1r0_G3!L6F)n1IiCN&<;CZY$?&GjW=p|x@1#kxsR91m1gP4YOj}u zK^Ye-LTMKEpEH`Ab4ajxJhG#q$yiTJ7!gzHTh<_cp)La^d4`Yu<_&w~i(i#_u`2>5 zl2ZZ}g{d~r=VDHGegaTA`ReY)VrvF}w+7|$2(R%b z3l&dtq7Ul{>%jDcDObig+RQ&jv(Ln%nNTunxNsNSNeeUGl!#Y9WaH zaN4{P_cUB{W42l_eHAf%Z1za#wZ^0Dt=c2uPy&&hi*}N$%@eSZ=XK_`h1?;5$?;2Y zgnTu_N!o@=WbYIsO^V*dGZGf+YR#9C-f5^QMgJ5dy`B1J10u*s&MV<_i_H+)*p1|j z6hwZQk&L+4GLq@5OpLVI8jqP7X|Y%qo`8>%I^e&B!&3woeVwqQQAb#)t2JLP`l+EN z8y1j5r?}{D>YojWEL`++>_&1f3L-zuMMm6fxybZYCN8?p8jqQ|=t#MqwyctH=?-?2 zf+XD1#ig;T*mdCI5^jJ?t8?{+pSQIz*I1$o9%Ej#Tu=2jgcQ+O3jwg!^uxmJye4yd zgERh^EaU?Wb*1Q`;jf2W3AP8cYsuL$olW2JZlTSlLHa9 zn<2lMQAar6`Pib+CflRUCJ#3>*(k3ss<|&JaFm_r0`LL{*;#{F3GzpHl!uB!TQQ@& zxv1tg0kEZ$ZegP~RIP7xbh||thg$>> zSc~o}xJ8Lo>wIZca!bH}${PJ>QH_2C02d~D!))m;f~~s7C;R-4XXen^V4HLN(G!Nd zp0eKDwXq)~6Fyt{n=J8WucDf}I{@z5P&@lzH>}5(W}D&pDdJf>U(wD_O6-AWfGYuTjMda$Xv>H*6ZN0^Y^Rc!qPjri3!W=^CdPVEUzXcX@n&fW*3&p zcCow5P?wFYix^DbrykmX$RaL(gxyFkE`#U~TOda4YuU;4RVH@2${LRvc1qC-wL{JF zw0?TEcL*kMq)IkYJJjr)wiOHfmEAl&iN}o#THt)xzyRzb(;67S^LyE;t?JZXTEbj{ zgGq<$xYGGx(`$Vmyx1kr#ttSw!}m;Ft?Ad4_uA+1+Rz1lmzYpikC{~NU7?qc8i7-G z(ytL+5v|U>sQW94{lN&F*88+woO)sur+#X$W(aK-r#>IRLr82bq(ui)4?7)xct(m= zStPl8tqLW%cUqi!eu`FAGbgu;#@Z;2$YOl8IQ3XD9)&JWolJoyi**wdq6@Yp^`;c9 zvLGq1RhA_6?i8)cPEw+=#gbHhi&L*ifg=lg`mc2KbWMs@S4Ox zEd%f=?5aajw910KyjG)PSgQDKwKx*n1r@D)n_oL012}=K(I!QXFEB<6Q zg0q95kGZZ>6)O$*#x;lkhLlE!Nxui~T(P~DtGp<0k|#?qX5EWBTRJcjBK_qMriDQV zBwxh3RGuweDUH>(@B?mz13c~p=J5G&3J%%;%fBF{rz(Di=tqv6zj|?6xN!u2Kft;O z_+2;^tM|UlTEV@eI=74g(Q5VH7Z5P5-cyu?mc)U&UgofRZfb6cTE6pG1B*w%+;Bi+>h{F4>~Qk#%*x5qGcqry((EyZD)Uda@ZJiAXidI|ASg zNlAYNbXqJuTY}xN9_82wyOG1RA;HdHB|0wK1SVo#*enIT1@LJ%9CAd}QqY?SMDnGe zhXiw@noKAsUn}~;d&F79}2AJDd5*qMH4uu8#8G zQjKz~Og3_u)@JVf71_)&f{0CFOkgsJHO7apKiRw=)}~&Ou}x3HJxM@cAsFG{2>!`8XXj^ z6=pW83og!=!Ie1MN&}}ceX%gRI7_y=;2nm#Y~)YG_n5%wk}WF8`2AW@&Azg$qkK)OQI0i!jXb7RRGq(i^E48HOb3~oo=FEySd&0z9aQiF z+(+}}7A5unmr$jV`dFA<>L+n{%a5$t+Y3Nl}ThioR`Q<(F(O<@SAC)i)zIn zCXHlVG5FcEtxzild1elG6{o|$ya ziz&ThWaS~U-Vw5a17gFAB$vgZhx?M^UtyNoyY0nymc^6rh*symX(|>^#tejEA?4nb z9;O*159iU-J41&;?|KVxeJNgo=g5Kp_sko7vBc#l(-hfQhiLKa7fSxgd+U?Q|b678!rY z9~l~T9(%lqVmM9ue2iRmK8h%r4(aoIXmwwwRQi~1`I0Y!KNtF2R4V@Yoak$g1wGwoEXQyn9{=)RxluUpe{Z9GJd#=JGV74KC1e$Hndb{*BPtFCugi4 z9IZ5)Ggi+ypWdEvzTfZA6xm$@uZy==i+9zlxA2;sb=dUaKAo~D3~}r25tr#CthG>| zordR2T$tnJr2x$SBrIebl~gTG!jh5chfP|1SVAz&L>ki$}u{11BiaK7kKUf%bMp(Vp8vJ?ahb!44ys_~Z% zHR+}(hLu7pIpGV`KN}E1VP(4%8nhPbiXwoGc!{D2R$8*!&3wo^#WjR z<{TF4YR#96UTCPvh6N&A^aARi4TvmUbP9GOxjG6WKg>l&+-teW^i?J4{bnLa9i@jVLDiWavVaj{?11L zeX=OD$p(eI82Xc3la2C~MK$+J|I(xUy`s=o%qZViRCDk7mmcLOi$a_2C?`qDT6maV zH`oZw#F2~K)CrrRwFpZqf` zeA3g}f?JeWxB6!~v7mtel!XOeUR0xB3V^%Dm!^}RQdv@NlB~&QQMj`ez{#>E-%wO@ zU)#;0b}qwiSc_nqZiXkQh-dADMLR(?eU)i~+ORfPG!xVmtx#E$?@H@zQsJZ55r`D6 zQ0FX&@KFj7Dr<5%v_dz!DNGKPHOZso;Xu($ZQ!gdJeox=Nxy`S7L}N^_;5fXB_{0#cV1#ri1fXTq0)31{N$`hwxw;02|TA=>G)G}0_l<}K$`-AjyR_rsp% z7qd{ieoh-k6v*D2^%Ic2P?Pm!lioF7q<1wr-uKDJB6-RsT_wR;1Gpj zwCF%h2cyJvR%4>JvJ)|BUSfSbDc?S-gr5@tu-#NkvY)cp5KUUU#gsFoEVe!ZVUh5| zlKj|Im6b3YZpashicSU)a27h@tI@S{b(&R(cUi}_ko$uf_)AzGcgWeVmI0yn`np}Sq(LFQr~-3Bzix|d;eImz5jhTdVit5_o_(r{zBgS z9geVOH=FZp<^%Yg$KFQWC_>V#@`+)8=Lbj-J||A$EP5f$qDeCF)dSL0Q3qtibi?Q1 z2)?d{{uMQOJ{-x3CeP1>J8$wV#Jo3W-ofuy+^U@b_QmY&TE?GNQ{`nR*IFgSU#Ze6 zjn|taEm-jEvkLJ;{3}c&9iM_l44K$!nmpBdM&Nf1>t0T?WBcU}XR~H-3p3Lk`Ah^% zb00-oAd~cSo+WV?6{Cgjy%Dkw7G0C$Y<Nb3?B~1>KDSsR@k8uJa`p=%Kg@nc+-upd^H)6q za%Ajh`ZN>!U1>c8+1c+x#eNqiVZRP@l%6B?j9^1svSW(<<^f=>_QS&Nu-|@$no{&n zvESa*KN}EP*l&OAMsoHGB0tQ2M%-)Juk%+u0di#QXZkb~`^~l<0uB46XvIaiUYdf% z)wDuD`JvH_&gh3eoj_Q`Q2b~ba~k?j*$7tiWg-xwzHrru{A{A5lY z%pm?<)ietw@KK^58x1AJqoU&vrv;(t7>6+zI!+;^RYo6o#BdKt3cxDH#yx0ZdNsw^ z$N*0gW5X9kjP0jLiWFm`yJ;C?>l=Zs4{f4s2O6Vn0$P!AHkoE5THQI)Hcz(5lPP2| zc@LT3cnn9&Zf2V$+V=Zsb?)R8MB6<4_+I|5#@l+HWsP*3n9Do>pIgjj76HpM-gZE- zz2CPRy;l>~NUT*A5!cNO#oJaF+xutd-+LR?(=px_BLJM4h!UR@r!d|o0#i~pbcndc zbVMIB}qftWG=j!9~8lI*|F zj2SCl+s3@*lVD!yuYHats2)NIs+3eXG*TO_`W_(6RTbDRZK{m>7BBHh(vO(-8ppod zX)lvsmTXG2=BI&95~Hw*br41&kIYs3*xVagGq`1%!gg2lr`I81nm;K51l={AVslOt zP21r9gAlA^RQTb1v7_9R?+3tI_aqkTXg}ZRz?Td)r5JtXp8P!Z&jv(rerlQj>3jvd z5pYkUxHJUkg2)fMCylt*x+gn-r47!RKDE)$k;(IWt%o4up8R(LQCM)!xgo-Tp#-kq z;Xvl61r+~1Bzi^z8VQbLp{~|^`ESNi`kHK*M~YojWEc~|~yOEs#g2)f^pAq+3{_FgeHautgG!y?FW<3NN{!7sc z6`p%nS}CAh*l0;-bYZ`SKok_7`?q|VNKGN$ihymV5aICLe*Wq+;2+qMWM{a2CqRxG3(tu%o+a8L&HSOJ($e%7#&kg>eTPLv|j#B7=6jlF!wvsoXhix4?UsyGGSx zCKva^akHEDW(nQx6|K&_XbM7i3P*m(psT^VXGihiJN|WI(PFXO5dc27;9Va9%QJY_ zUu^GR)Q#S&2%T;4Zm8JaZ^*y*HfpG2@GeFKIK7AxpA)ArcqbxUzI5mizKiLK&&3g( z?FxM?DtzZ6{wRFchC45Or$oLNz+23f$%<$QFEA1!c(gl$_7wy;Qj&-8)~FC(Yq(Zw zjf~a;lcJ4~vsS8%RdL&pkroy-VVzy2S@N;ZO#7_BnAUqg>lC-SbmBMBV!Y{~%fz_7 zmvs@wZEAvkpJ&a;jA=FRx&i^yyi1WR=)9*_(C@ZC=dgvRRS$ zE$bnOI6c2XAf_^*)zp|%K)&J|FEz-{I}9jQ;Pm6{#!x)vjGw0Kj#S; zc#EK4A9f=-{{@jB=079uwfxulD{auv^l2vkTVg!~+4(Q;pxB&=#BL<#zaa9%{Aa|ymj60`r49O-KF!2`udp5h4gaNR zg$nvzpH>SiH#l0-8QtKY7K%LivBv)DJ2uDjpR&o?HTg1;nnHXP0ozO=!a={49fE!| zy^WvF+I`CKaeKb_P$89D(^9meB}8erX^92>7(KBPhQo*R#i639-yq;DG?g(N_*70E z%b+e|!hszoOn)P)vC(Eylq%Z&OIi?$c5&!(q1_Y$U4;X=--b`lQvg=sK<>y3)2JyN zNY;9ia3H=Y!huIT2ks~wNO#jR9C*aQU}bc0V6fh7CEqD?xiKK9AQl-C+>5-ps;+Vs zqJmY}H?wNmII~B6z$1gf0wyHa;UN01Urve|X3Y{CJULpOd&v~U27`F=V-n%$V2{GN zht242nzO33@QOHTDT;vXJX=of$rIdrXbE*LqAle+3akpCFmIGkqG-R5lUAM~TEz zjH24Z^ASO%uZ88+am&b~C(~5fCZ2wWrJE?ahi+%9^rU<#RB_<(M4_6P1r~OP17B{a zDaF_+4ty!~&jv)01DyllbBmbaE3g~MIWUO)Fb5iOujRnbUqQ^!CrHMDrcX0*;2P^8 zh{P=HIgkYn{SF&Au+y~Y9XPbUiOIE*4SC7FDGq!qp-01kSg5NtUmf@fLrp3Ar#SGV z)IS>#Svc@h*p1{I7({-U1C6-Xa$x7LAZq9nB;!ESrVK5s1d%hS_v6v^*(zv27 zL~^&Oi$x0)#u4{etyc;*a#k|AqOx5Pa26_?J2YCaw7jXNUO@@zDPCse(U()#GN=&O z>qK%bawxRgZki`iugG_KS`dnSarAN_-xN|_g%Y_-hucXh0IN_U_wj|v)D%i2BR)we z5nmLc#0t_Og%as*T80u2PZ3Ex#288R0TvlZ>>~%SUsV~mm>#ICq{EH|HmoddK@V%I zRz2>8mCjD$YCS7(gJ!d3S_6FU}j#$X=LtC*Hxh;}ipfA=seF==fhE z%DW8lWoMI^LDwUCq`oV&x^BRL03!YktMw>kIi+LNohfHytm@mqd&-?iRSR41nLLE=&T?%VM zQSHE)9>E;|)nnGvml^6zK^)5aeKz&f21L+xVH*KH7rPPgTc8j&M1X_C5cYl>M?v^+ zO7~y-t`awdI)AkzBT_a9rjH|9%q9kWob@0`YevO@R}+Zjt40qX2Hg;1P(OPJOFMCB zl8M4QaDemEABscYD*8(U9oaw@3w5;?#i5@t)M>+Ba%2^Uew2D@10u+w&KP`d5h4B* zb|X2528SWcp~g|ra%ktT7I7+NENc2X6N|ptdK5CV=o#L`vsB(tuaB-Q)yMIW?aC|U5KONPRVGGTB{mm}DqS_5WolPFW@x?#siX+D z{t2O36KuvpU9HL4ny)1yIuwss5C3SW%Z3*t?EHJ`p$&*E?EE-(BRM-u^oMPgSu0DP zGLS<94;Z?7j@1v1O{jmbawXii#p4d#jlG&Vp-~%i&|6mP8 z9{j2({{U7ok5o3|+;3o0eRFLSEc-g{MEPXBe9$*m+gxjy@)3NP+%{gQo-=dn_c+FO zle{eX2)~V1HziR5g$)&H3+E&Bp?@s-pm_L><|oVvI@%(kXI?6%s`LRHr+LR&kCV-k z=ve^X&TufqN&iVQIFgxAPDG>6wC_KU3+)F6L&S(5V#>)Xw7(B7;I530`b)E$ zrTS2*J_c*G13?xcq&mFISnE|OSj!MEp4!m7KN@Yx0|M=1tdCO`n!k)SgWK#WW;JR; z`FaFQ6G}yKplk~b&G#bNh2wtss8ug*1XA^fqBPW~Z}Mb*G-8m`OL|g4UPZ`KvvNg5$}RiAWPD8-*@CVaglv|Ez~3;xPUX0+Bpm|E7q2TPlx?wL(!r zI5xn0ujI`XF&qf`r@p0D?I|~FwNhl{+tt0;8I7HOTY;ijtCAtPt?n2qwvqME&;tE1eP zYLtn^!fL?CVOllN`Kt|G5O!>6O-;(APJTlIDuoPC`Cmevq-ceTKep4hLb=${p3UfD zzmz}}6n}hGzRal%`7s1+W5|c&kGqV*_FgzKWHUvsQZ(-{8hu^9Jya&oYXGpFl8M9* z5lP*qjx_PZ59NzPMJ4Y?z*(r|8K(l3oa@a$&hyBltT$9hzRtnV_-y4%IrTAvCETMZCxWOWu4sivhx(|O6!ltOzb`S9N~Ha2*P z$OmMPT;xNFj;H`F_c?KAPYS>)K+AoIVL4z5(2|9oBtVNViU94*=fNEXXz4DW0PVZy z%z)){@b8i~h#XkPGd$>-#IJzA@aZez7vz#5``w)n(aXjNtjRkM-oIjRn0%}n9IaKx zCdQM;X%8~56Bpo;Mrqv(r()T&Y$N$Q`@xg-MZiSd_HAY7DqiBs#djXgloklDK%X!1 z>b)T(r~i~myS}KCtqP@FCtDE{^SO-k#gk!z4AV6SG<&l8W1N#Af&jIdmV!H0E zKy*xp=+BOnec;hehuBX{PxP^$CD6s9Vn5GE^ik~R6u9$ZKR%&*k)JT*NDXu)@RtzB zfngA1wG09KTmjUv|32|t8rfuV#}^3xENz4pa6SQ%y}^qZ7oN`Qu?|p!MXBh8Dwb5NF)#mv40MVOCs~>d` zw8p0p(e-oina9l<=%6YO0aBeiI9h2o+qGCvrZX2;tK)m3=M#R<>CUF-@7NE3ASGxS zwCsEq-f{P3nzeVZ-l+8=3HNTQS0_em&{C$`L+|(D`+fL6xS#3$ic^JJ!6X=>AHj0N zw+bSB8@4KhypP~BLf$Mps&wZy>l2MZShq$XKDR(vBwv8vbu*kV($9os`QxE6&X?d( zzw>3feq}a1xC(Bi3cebj4j;OcxGFW-R6x|z;5#m|lK)9-wX zt~b&3+gLEmxfyC$H`lot|C;OELPfXI^*eCg=G+M7!%sN3!5_};c=;|~?!e3U{Ab_C zyC2}?PQ2WOm)r2e<<1Y`zJIu<-}w>TfMIqO_UNm4xf@HIAJg?Gbp0t^e@54z)Ab&@ z{sOK7d-u}c_u=1onONhNbMo`xuoqpEPj3`ejX7&e-J;fejdQO2rf4sG|3+dDY4Ap~ZFIFvtvwgK5i6V4N2H2y4po`fG5(7%bFe~6!_#Lvuy zR5n}u%!MBy&3X7U!;#Yy zapt(QR#Q-R*7K5B(KuYIjC-Qdvnt6b;Br^U(csI>O!xxgi<c0^gN4>ngZ4WfF|*8nG!FWH?f2|0?X8?H?FRPyxz(A`g{onuOxMzr01#T&i4 z7lsG>TkVR}Qzz>&lbv00c>BgDS0mD3Mm)9={lB_q5#mtNg+0gbJ9A{yI2I^B_ZfnIn>&L3SC1f#H6E*~C63i3>JDsaa1zBOCZIoe zp+^3(Ucon~pzbKsgaOkxG?HRP+dV*2)TiLY`o?&7xLUFBPwlFzk*gPQLg0H*%FcBm zht?729(!P`wzajow48dke9g+zvDI30aG*J|aiBR~8LX`?`LC3guUP}S{DnaJ=s_fk zm(wUlSGzo4uOywDLrs_&THy?TGhq7|fa$pSE~vw}gW9*@1;M@8R=bI4#KCl}4{S-a zt?pJkJiEfG;7w%xgn+7NnpPXOd8e>u(}rOcR(PD}Fq$F$!U zQ4vJ#2=F{lLfP2`f$RzwjiA~Sirn2a0=4ZtK8t)pdm|KVsBo6Q5AX2L%i7LZLoE|ClaMXpD$nJ zTKL1P=8%CBO6YT!>ML<>;S&YtzYwsnD1_3PCz{2p|BRt}t%^Add|JZIy;S6DC zJlx3ko(Ru`2W!fW3_+hrC3eP??1{4UZ^n@hTKXTr2SJ(-Ps9K7_)=3$#OaDlbSt=B z6XkS?$$7QXs+3@+KQY*vXw+ysr%fXl;*1>5YYeb1%+*_^O%+HfhX0Ve4KT*xyhkrX z40UdEWeGu5S`$tBx>gw+ru9Vd947sh($K`%AXN`(@{JnC+c%2^N6kKu(*&VEjoQsr z;T>#1xG2!@Vxmdj)LY7eh$95IkZ&NVQZJGp71MKirBT_09-1a6f?xr|@`L$eS*61L z5&=_WQmGeU+Co=8?Hsf6$-_f*IYYAbO;6>EAhl@WZvYtZL6%@-(E=7KX~cgC zY(E*M<^3Q{JS2$PRL&VAg=NR<>rBCLYWczv0Bot{7J?e9)=@;ZE!Q`>K|y1IJ|^QA<^b0-lcYIqI{v-8{>Br^{I zq9*Z(@!Bg5b)^_W#cStM4{bm&8*&AF9%nIWldjYlCmdQ<5&vnu#`>Fii>WwAv>p-Sj)2q21dq4S_1=`WMp!KD^G3-%<17e1UKAg#t6I6 z%Y7c~*yxL~v&plA_fw7Y>x&P=gwur=_|0Rk5cQbJsrwC_r%^Cj5{7>ft5xy>5zPGrdYY@VTzJXJUw$+a z7A2QI5ANJxw9Zws(aSO4C8n!!TMPxpMySi5;a~+ljLE&~&t3}}Yosy?&ctS^HC!vH zHk2qMs8ZTEvKd^6nMo-DRIxeg0+I% zM>?5jK(}(wy$k`9drr|Qh`&PJa~Hf^#0z?M7P7(qO&W@?GLF z9ti}=8AUh-8QE{icN~;Qq6vVtUO+5V5`&L^QC>jTP-hB?Q=Wl}glC|}QP9pnJAZXS4zz#&rSBQK|I+t%rhi7w zrnW^iuZ<6K+bB|4ORxIv(U$Se{iz(QTE z$>qab!X59Te8&3t6GLq&`luwskEo9}AcB&?xg0)E?z41$hTTXm8RP(joPExks?e94ey={p_@@P%d;nQRSvb3Jj?=-`rmjo-CTSGa-$f zWX(6eC{{jiLyn_0-*ne`THEvL8~-QAE;t#&8CsD+5no612XRl4sGzV zv20@sCnbp~bgZ?=Xu~SyYU)eUf6tCAN7CaD=={0&v51=|`GAS6%k9N>mWag%qSd+Y zo4SZaXEIT);&3b@_dQTzaN~Ry@iiU1)q&+!323^LA3LV2dO!Ai00%|+v2Q~Bk{|oK zaL4`FNqEWga9gvy)XyrTJTTJ2oBIE-Y5x2e9A3$N-^ZWm30>j(CKsSDc~u_l21q=w z!nXS~!^eCTOw2{I$DiB_sgeUcCUkzpy2kZyikXw2qWrWFC1P~%WGFEB%F6|9`}tee zfXri{+~f}-U~-cyk~X@@!&&1mJYG>~Yq-)XwJH~&?@2nlCvai6Sj7z~ z6&){63qsK`4r90Jc-|S65m=Jtk2?*o_mBXGqXF<1Q_Pw8f}@NE_k&$pu0x$l@Z9v%<uiaqdPeO$WcufeC1} zlQ$=(gL-ey4bbzVyg82`R>_<5C%EI@96h&qKAePX8}Zx(#!~3SZ(uWgjw0IX0h=P4H$LEVfMTct;a27fYI5cENQ7Yfe z**SGEIEl>1H-iey;F~#vhF@d8b(F$1b2}|92t~&@jNPVV&ke&e$-IY5f4w@V!HxK4 zE<(UrsCQcXX8t{2v?<@ryNFtBXg0`JP8B}a`evLr0>3cV%zLmK0oP0ihI%_SPVbt* za%IzTm7L8rV}hK*@t_oyOI@V=l%5NNr|5`s&2W2+<30so<(lD!dYGk6t{Ec6 zB(52JQMhLA#yfJ&(A~6j%{+U&K2CW$wyu~Y3w=G*sE6u$6OsuIq8>Ai z@&_D3e`3c8QNw3hTq(bcRyT#qdlja9zeV9GF)5$%4@*C)BQLd6*UIEna4{5y{=iwCJGiE;+F=WT=9Sv_Z8mAEpi!nNYb#w~c9jjRb z5{Xq4rqwj_Xar1#x*|-lXOg=+_QgDK%ASfNKR;F~48Tq=GwNEGZ=aRbcM1T`=$=5d zWwiR9MIZ`xPYmaaLq#_=1e}F#)OK;+G_`|!0%P#~xT=;B$t5{;FgTC0c2D?C3(lrc zX&BrSlTe(B2o)V~P76Z0CvX^Zq2m;j3^jY<;+0Fc6oA$2h3nQZy_#k(Zvn)(NoFtj zqL{sW9`9)OLU+@0_Hy+2L~}UR^krp&NU{&S$ob2jfpDB(A?;KYI4UB%N6|w6O>O}N zo-?s>D~_d|Ws_wZb5pcB_jOYi5f0$WpG1V`F?^fThxg;@PP{a-X+4??d>mpnNBCtF zC;mJ@Gn2I0pXeR{Zzq4%UOLjKSNjwFBm*$b#yl}3;rtj;;t$Cb&g+)N@nEMIcubG{ z0gXucuR~Xhn%K=h8PG@*yTx$FCw2jW;LYp;=hF1~tP!_2Phfb&wBegLUcMBun%eDo zItc1ON_Sw-63#iM7nw-g4SVf3hAUYeKN&WCAv1&~Ytu+j3A8U`JvGeMER65qR@a`v zN;$8=0*3FEtQDE@txWF~2$)Q7MQ|X>l26%=qUl=Mvs(QvE$Fe>DF^AiR%Kh|cx0D$ zvzz1d#fJ)-90!1*`!pJn%`C7`NA<}!vxrVsL^`{NLOv%s+fZi;PCEs1i3MSwNjEWk{2u?wJAiRNPXqL_=lAMa=`Mt9S4F7{kH zV^b{pwhborC76u`z!y0m3#LZ~s+4=j)<>%YLxzdj4uMZR4I@N3D`8ChWgJ{POD4LbOc#wO9R40&5GwCx z0H515?M4C?*+zCQLz5Gpu7-+*x)Pr-vV5>uOx%}0CT!%nn*C}ftTAljd=pXP6X_IA zSc7x8AP04bMaJ~WC+-OHJ_DUCYRcMk3LuiEtV`jJPg$9u^d_yl2WIGj4#!Pf1A`=Z z?g~c8R@2sf&%kq|YyN(C#_(gOml=2Mi5RdG`lbk&n!ZjeQ7#5xH`Z4efN+lSd9-b* zGXe44W(!VPZNi?Uc(yMb?p15i%I__;5*3eZ9D{N-9wS5eYPDW#_P|*iB?!uo!#r=O zQQt)G!~}^8u8R%w3f6IMeCm`*5+8+AM!+P9W@}J9B^&V`mv4WSk6<+dCLe*~ZljOj zVhFphcy0Rr?Cj1kAz47J(tog7)kx>r&kZ9oKB z*LfX$uFo0A1AysuZ#n-p*p1|@8ytWz>l*Q|W!=tS?SZTtPpND~Opr3M>j$kzM8mEr zT5*xj@$1sILS=`b6_L>+d34%VD32t!hPhFg0z=9p$>%v?bIIh9B&JD{9fB_kkK_(( z;f_3#beGK|nW@|S9B$EVb(*TF+jNefJONsBp!nRG&`o?#^m=!{*K}vo>(4$9fS?Jh zopG0)+u|9muyk>o(F$lR31mbfGX3RhX{0s2AZie$k`k9cj;do^1 zFTtaJ=gV~c%4~RW72Ha*{c3zVd`!P{4HaKY*X!tdJzZ~rtMhfdd;>1)W;)*#KR3cp zzw<4+-bB}LW5F!vW~gD^T<2!|Yp!z(72QhL@4$7Nb0d@wKjGX4e>k_}<-2&f125n6 zpM4+iet?%d@p2blZo?0kJ3oZ`{^6c}=SOe@GmfjUM_rd(WGrInq zuJ_RO7jPBWyO;jH5C47?j~2fL0Bv*bhrgk#55Uj*ot8T{z{7s$I;`V*y!;X0d<-w& zq>``W!*Af_ad^0HfioZIdAsujzVRo#+zw^ioLljY@8IRn@Nm2HEx6t8JSghAiT?N+ zmR^mQYv}K5;kwQFHr@~as2^q(zk;{>onONhNbMo`xuoqpEPj3`ejX7&e-Jz~_!|0*A8%FLveG|?T0=It_KTpCB;OKAS=O5zdDe*INA(hP*KXc&+2yGtz%y8zz zkFyXimq2LvjJC4~ZUN3>@v{Ve`kkfXk7e{nuqXckMBov7EHij32C|_OX-=!<|hAyod zn;0F%cqRB7MYD~agCj2YH+8EI!P)mM`N5VuQG2UfSC*=i@c+UpBa>*jbyjt&R~QL02FrxI0$ye~_>4UcZ1Q101>o(h zR}~SI6sYoHKSsbJf!0~oNdp2@nMA-ON5GB6BH)IuAmBm+0#unqz=a$EKQ9&mKh7Tk zHuF?PPMQF7j93eCW!?eig9n6y3mFn2dDwR6Hflq7oY#8*gDRqoW}M^|r{SeAL zq2t@K`DzRHfD{zE=28UW+kaq3?GN7vbZQ`w6b@oue&%>>5Kn0IHA`s-_EPV~5SFONXs2HS5CDJPgN@j*gZpqgyJIO+3(XurfM0F^Xrcl`2hmv!@ESZDni_ zce{qzDCHpa4Xr4_8IOTi>tmyn6!PqWmm9EocD*z>0h?owVLWsMuHw6mzNH|%x=(}l zGKH}iN7Wyitfsl6BIeV=mJsB(BkLoOpDv7RvqyX|rJGqM!2*WrgIF^%qgusr_ea1K z$5otHbR74f>Q?XMLtuuLB?@qegAccsJO=aBSTyL<*^+r)zSvUXo?`$o(16gMr83u^ zSg2zMi*QfEV-3$T)TS}{W1TNj0;_P(i>Z$`AcEl@%cZT(+1QOhxQ8^wdJysbvSI45 zQ;B@*BMmndg(=w}?Xu!fOWoN(?H*YR8loqR(Jv{gu@`0Dtm#1tTb0gn6oE*d&T&w6Qm4}=6Y2C$lkAuqVM;bA@z5sG>C201>_Gsydvbq8)?rPc)1Oxqs%*zKsZKw=s0Od^>e!x< zb!i~C5JXvr(>B;PRLZcm@{BHf7KIEYD}k_KFy@lAFvkTIq38YbvpgRL^{2b zzqy?+NhqEEZ^S&Bc{&zqX(F-UPpZ@Z(@>j@LYAYcG}R}lk2WB(==4uxH84LJ>GZc+(}PB*r)Y)B<31v-Wufx8 zF^Z5ek9%JNVXqIgO@hwC&DHMbv-EC<>DAL7|%Y}4PNZ$qf1Jw`@@&GfB?4|&$7N79Mi7<(p zR$)-AN1g7Y$p)c?82GAKi17`iLRx-8cbykvP&zN6fO1S(VsAm2rO(<_8H2;jA%Vjx zz4Q=M%1fUQv&bCNUHn?gDiP36A1OQCN;Lf$jEEG$c1Dg$6qM$U$~*lF0n0h>boXKrunfQ#j{xQC3vX{UtE$R~8Snw)g2ReMz{>m) zV56B8Icf4vJ9Fh!=bioz$i73~X-p@4NfyD@4**_qd8gP~k#~9?5*GgH<(=-}%jdX_ ziUOig7-x4OBwyWGC7&)^@7WqE{WLUJjemu4#$XE0NU~qeG}591)915}PFbGiR@Mw| zjcfF=DXUIR6DJTbO%oN7fmGJ-shh)oIfdt0zAImBsrb#?0Wcs(Xp3;3B^D~CO$p&dXBcYZi%Cr1_ zQH}j>reSrih0iVWEbqi_WEs{Z@tdMhWjn5(lPNf{lFyjZ{A*DS{xbl!v!sJ8Ydf}o z&pNgV;y3+zQEDTZBJmqJv?Rd8d6rnFmEZJ5T%Kj;ue5oVrcWcLsZE}xYfTT4_|0|# zF^%#p*W^nQN~f;|z*?P-g<6_OEclb=WSnWJEfd+FPJOfikwrkf1iO(;_)Fx6G-c;J z%L|Ialx$Gqp-qyLaZyo?-P+Y*y(H_fCeZ2cDhgG$`gJIZZz7BpQ=2@CP&7{+RX)VGvIz2@zRG#H!X}tw1WeKAQ8B>-T!r|}?NI;6;MP+AR z;`$ktY^MtUDf7I2IA1zd;gb&_V4LtsIL~saANY%`ToL9=+zYI4pU<~%DwXXD0Bom; zBy}pfK=gE*F4AOSem7qnD*E^i0?tAoA)TeQVT9a^$-;afr>LSR#})l{LEvDDFCZ1OrAjyCQ(xsCPjjhWntp0A`5fZ)8US? zFzIf3W?|MQ21iG#wOq3>eVB!2VfwX9Z5HM#9A!T(g;T4BpR;6PJ~LX~)a8%(Ltx6n z47?N!7A{oJnQC7X?Vz8#q{V0Y-9KaS=^Temn93~7v+QwTlZAOYfVVSpRN9<0cT^VU zsRS(NEX>hj5ir~p1gK0)`z*{i6pMgM^GAS(~+$-?Z+l~bLC`Fy}&hb+vPPWX~6 zf~`XUUU6BN*jkZ=`FXsB}_Is{;35VjTtCFXZll!1k-jT?)Z%E}2&$Sitao8*4^p ze5;A$EeMzEbOrr$NcjikHO1Zy{ zm`9V$frVO{NG$l1CUbn!P+KNV^)c$B4Tvnl|39%C$%MZ|en?YxPSCu*C``!)B_7%& z$sBhS)!5s*I;`K%I;;tF`frLtmF>7D)#-mJs=-fmb!`8db!=1N z7aMBJME3pEM;j1Xbo!atjbu7qBHvo4j}(O|*`UNjn?$Ei7S-6zT^-hovJPtko&JuZ zP-Q!=Np<>1ifZtOx;nNW%R085b^6ze!jv4^Se=e#TKTQj>7BpQCTN;I&7{+hvZe=( zPEXMam7w|4wB7=h&4l5EjM+>#35P@SXo{bT$wDdqQx->g+(0rm8dRcR#Zewbz&3G| zNP?yx6Z9i>d|%9^F)y&b%{^1k4k`MkvfO3?U^}m(M315iL{GQrB29wk0r}!k(Z_xW zI17D*be7hJ5ppjkLG$RGx|YFsj7!io#CeWPOLvNN4@(O|kuHv0E~J}6Hmd|p9*5?^ z#T0;5f+kNc2$QHOL6agu$r3d2Rgs|SAQe)ACf!ZX1kJ(W+J?#IaBXvr+hqDM3r*1U zYnj>v&DY~7`xz^oS~aRDOM>QWqSZ}ZB8fi)rUcEvODsWCJ!h)@ozV{ZX-!&urccm} z!Kd>MY{FC~Xnx8b2Q~?s9|Q1qMvls;lje>}(EKm~%Q->whGG$LO;-?*B|-DY#UkLY z{1ITInH4!{5;Qw=A@(%wzJ!mWu5h4S=<=9W2!GME=Q` zryFY1*k>jVR5_UIsgE`wg41)`9LzJY8-dsk$;J2_Oo@E^*iKQHk`2=OMM5o2l!G~0 zRAV=18dj$UpIhW$UWDDqGOS5rJ4K<&c3eY#GOau8BSkg%Ljc%rA`xU++p+yv*0D_x z+bIfDa%f{?J6NWb-`dzt=dZLmn5Iu7hN(>s=CiEnArjj;oIp&Y9L!%EM#n~3$(|~m ze!u7`4e+e+#@AS=rHRCXKWV{Cj2GxLz=R44(84; z(T|HwHzhSFOvwf%9@-@N8V45D*b)Hlp4>keyOCvB6X^6~ib9p`xF*%7BpQ=3tsW&7{-swHDzy==6efF#j!Il2AI`CFaqr ztH44nO(YilNp3b^0^T){9ab$rLfe<>)6{FOEb)AVU3oxa_g9yB^VMJrSeW?x#%LM1F=6d_~6(w+pOpu@;d$(K%5_~ax6 zY!g0-RJZlF)jzw5a)Rl5lss9p-A@)X+bE`#gWT}bW_M?m4nH{ z&phs%0#=*5q2Fa3od1tgb_tmS0>zit;8WUq%YPgo_gmO8=DortbJo!BDjbPHH_mC;_Uq}1p=P7BVVU~l*W6aFbLb;aFVx|-ZQm{j!)5xcZ#uVs%1?%OMWm&dZ zGq|;_(ZHshIyDV^6#@=X7RceJcb4Vb^Tn2m-n<0>YqKn|P;nw3qx`chKW3;c1x2Vl zgUhLpHXwo%aN8`)Phd9!(HoM5@mZD<`S#J9qA(>Jr1gA+TAC=!^7f({duyg)b-oIp zTVz?@f!)Y5tVyCbMWM=eTtl8Pt;6e2MK$;_0BmPF2U*s3Z2yvVY!gIp&e4lf8_6Wi zCnenE(8fk@uuLnzwb7f-Uum-}O`k@LQJXBwZPxT45p^l-Ixg&=z5K4=&n8)YSXs&x8&ge*;#B^GLFBC+64s?(n| z)Rv-;%9Q;R_0a}I7M=b#>_#%3E|G7o)0ezVKQ1=ij2Qj0L5YVpiB8|YsK)LKfV(%B zI}p2(WmpsF^ye0ZD%){Qs?%RoRD)0M>e!x|b!{MPF9&R=P> zEKQ$g(&_hDi*SujPtgjMW%;_a-U5}9gi(ZyDM@3(;ZV#@m+#M)PF48iy$IMQd=k#G zTr5I;ehiMMSVl@&1n$4{?UhPW`!4`&r-LM2DvChFbekg5a90p^T8W z(poP<;>F}w-kVd`GMJ5V`IUwU&(DZxQrLQmbbp){gd$xWxm-v$g;ZAgl|1mwqlqa1 ztNcoyFc2nDQ+_4IfRg1`;;SORa_P(Aj`Az%E?a(OxZ`DKd@aPKc&=kFX3h2bS#!Oc z>eY$STD#^j7kcQUKK!W9|EMHCsyJ0}iJ#YYhUiC#x#3%dkNh;KJ7kDBgZPZ{)MnX9 zP9^Ld`f=B(%m+AVI+3?^hxLxtu zHhy(AJ{>-$-?@g0uchmCbiJOgH^9~TI$pj3mvu9pZ;GEA;iupE7F}$kCBmUA=I zux_q%GyXN#xrK^urR#U#y3M%}%7>qDZi7FZ+wt;Uyxf78@A=QZk9R-7%bj?+3op0f zhs&KG!hQd6PrvgcxPfy-ufiUE6)$&ViSuK+{)DbSrR&e=`g6M8L)TxxRbcO4`ujfo z`_Vn&ati?3=G+f|LsuVwpY=N}cW!`({myk*$MtymBfj|v-FX7v_!C}khq7(Xt@y@w@bYJPxZU{{+-`Rs6m{K1e|!x~ug1$Y^!K%J-R687 z?}vW`CsR7Vg17sfU&9qh?IHNNr0qN`etsu@9uYr(5I=jp9ANDZm!|Va^<;a~c_mN= z5&)JtXCN&igE)8X<&(xq@P>a*tMdx^K7I#PkDe+DKOd`bH zGDUf=d{Z>)axfd})!6;lN&IvALe>Fm>o9ZJRvapXYunS z`~YVDCVu`Qex4FPGZ#|XZ1FP}et^8@;m-_bKKwWf;c`j)jqNkq&LX%4IE%&468PzN zmWn@?(I3H9e*|ge1Q-*^&wS93K=(6uhu;A#x{xX^fI$OPeTHu zCa=XiG<5t#I(r2^e2kE&r$(W={dR;^tq(R?PIaK$eT`;I(hEpuXG=n^V0wcq1b2RI ztkoE)HQVO_*S#J9y88*$aZE{r`?kBUc%xVM!th{!t6h=0=435qe0=BMkt-nI&|Th- zlu{lXtu&jZkuhC=RD z0!v`m`oJ!Uw$*Le@h2k{vA_W(Qs4OGYGhqtrm>Bs`jC#=1WBot0QZHky*q=iBwi@D zRsR|rn-50&>kqVMY_hB$i9xUP0c?W5@FBd0V-9f`6XW6$>&9o&bR+$a*`2$Qccyr0 zK#0_k1iOrlHZc^Y|<>&h|zq*iexlemmabpE5t3?q#c0W_W;51m|CfpZO{p^j-3e zc=tG=(yTRCmsSH;lKfkJetm;e8*H8L$ucP&=gSwlNc#b+nHvY;OjviRz7ppaZqGPB zN5Fi!5;cog{|iI)TCP27PZ*h5mL?uItm zr-u%g${I;ZRzj)L0&8N!M5_iSs%~;aZ}ttx8mXM5_y{@4jntXLJ^_W)w{sxUKv15+ zyNpN0Fj{r^qgL8juZ)(; zC?1YK6sAOjqZ3s$SFy-<9j*wOnmNH_WU+>IkyBT|(-1Hz5k)$nj>1cx{Md!$&yYTGHXs;TW*?l{m{ae9 zwu9x`8^42r{10wNNM0k$fh?VBPOT2>tN`837j$<%)D$Cb46YanQ^j#`oKsmDi-5$# z1R|StDnmf32C5Jb=Pgd*k$Fbvo~sZKmw@4}fEd?6FFO;^KX;+8I3Z{fw`9|q3!ZR# zSHyVUhghK)58ZW+@sQ7uD2j9}^BxxD%{p{rZq~xa0<8t-gq@XG37ZSSGLagyk;}|4 zGV z3$;?SRcW*WHiI-ELNAb@ueXt{;e)J?^IAFDZYAC=<22LWeS z{C_|&sTKbdIrXl)ivN!}wc0>;iv-<00yV`5j?U^&DSjMht&TIXL!9E5&H5=rK&l2R z#m{+*Q@BPoo0_c@KbK`;S_grwfnIiIzaqKf$9IL|Ux9a|_~~wXD*mC|6#r0xir<|% zq;(TKAJHr&j?nuu&9z2lbX2+vz$H*2pJ8dDDO>`c>!3VTI~RrT@O7{q&$#}9alX&|ov1MqzU zT#?qnJXwV&WWuh2I}qzZ6T$m{sfzF8Tivr0ZjV+MuoHHP;h3A@iyZ8P9fG40F%}>) zO2gmw42B1xR)fK?i;zOMvffx341H)Yj7@CXP-|drOKW5kL>X0dVYt#PZK&18N}^pM zXMydETFsT zX%-BQ)|)w+1p-{5W`V52Q~hDHU;wes%mVoV6EhWj%TCN>2^*Xjtu9~|>=nZ?=fD@a znFSuo!af9do-Faqf)>CiNMo^<}fRGX$h+pwjxBu{e2a z^s=ehO6zlB6()2Ly&CAS5E1&9RO{orLhJt+??~&@-SpJ@pb!Aix!>^<@>F zhzV=`-y_zU)|VeJIrAvK)jh5MztQRfT7Ul-j(G^a$W7~eD2r-+S>kE^Ij=No{r!a$ zdYJXbO6%`~&Hz!VNEASifR||)Qu`g=W#hR6G~9ALO+q7Xs(+y9`~p@}H}(F0tY$74 zQ`k02@9&L(6X^YCoHpJXsgG4g&qWuLzgWx(TL7yNo?yXpc*%oWeoMi;1s+Hq(|cA< zUCm+!sHO!siRzFfc(|eAatYkIysO49I@nJ*3>?}zL;W^15=5MH0sxI$gdtK{F`JoQ zhwPt?wN~4UN+!3Tj3^K>-}87kOmZ7eQiFRgK5YF3=ZC7ZPe z8|PFFR2CN(XVaXe$INzQAhgrj2$Bt2uKYm5p{2 z0#0C~8N)F@K_HSZ&89^(9P^8udKR=SY!_|VhGTw~Q=1KrnP&=$yBlhXksUT>0*H_9K zZw$vA0AJ)_4u~ub4`mTUz{8Da0<3{r4JJUZkU|Hs-lQ}EP}!F%W7X1&CN_=to?agr zYxSO4t273OwI+b+6E?ahu?BJxqA~VNA|%cPSS3(#0;{Q;Ccw*B&6)eCOn|cyZ~_y+ z9G)3LD2Z%F373T1}orjL3A6TrWlc7V+G(KYZab}7vih{*{m}e z0#Y?lSpl4}IC*RIw5i$33gE&kOz0qrHPFk>#n8W`Rsg;$tbmW;9a#Z%H!ZDz!v+Ta zKla`O&XS^97~f^{k~1zKm*n1s-C33eB`r!45LkE!2GVe6=I+jIX6BCf&ak^A!N6mE zSH14ejoabfLWj4Ij6e1>Qr~t?dou6zW4w3_uIZbUENiu zPMuWeoT_S!H75G|@%VF>1E4Yr!Sv=3Z1%9f>$N^vUzvu$wlvd~E$KUy874tzp?oO{ zCJU!<^q47+uP`#^lxI;Mc{~L-#hdF~+WY;!)R3v2u%6h9Z4%enLLu4Q)zTq*VtbuE z4%G@lmeBX$Zp25l8Q1jfV%6E2(brU$4XqNoV&Bl}^Uy~>&6aB_wn`*ay)u6I8-h zI&F2+2njv0YlOwn#j-TQ;fOxc2*<#k)CduwONC%EPD~$Y!yxp*)>v^WeQ-5T*zX*6 zX1!gXsLalu8bb%A)q@f5dgvnBI~liJ z3pI?Pg1YZbcL}4HRFs)#E^=|axz5BisDHqi6!)xB%*d#8324I z068|E`6DBv(j~yt@#dyQ0szLW65!VWW4RJQ?tinmrX+yA|IL>0JSG9=z(Xbhe#>xK zlEaKQA|!wYNkI}|3HFU7!0vcQ5`gYzqy+Had;-M4>N3Ru-!36}J`io1AmyI0%t$DP1TW6mPDxX&NR5a)%D9WH=B2ElV=+AtVFgWN1!0ROC2?{*>S)P!HNwaz%s$fkeb+Xf6^FVTlwG zZ-BCxh#$Vh`1Y?i$p|NB1ObK zP!}BI48dpllJr8xbNxgQOr4@e}L{iHM)#9f=6Kn~@?S>oO~_C7xfVph#K< zWDys9F%X-2@FFHUo@EqQy6E^_yt&S+r(puZ7gkvX$bSL2WeJd^p(Qc0Xh4Y(K5|l+ zEQU8?!ek40$b`wS8Lms3lJG`^Fwr0>NSG|az6q}d-U+V--pxp1;=dRJ#K;TE6eE23 zfJK1FMFdQA$cId59D=Bi)Kuw0FWL|C%OU3nuF%t)jY zd-$=UqUYM#quqKQ9%$)0SZFxvbtCFE-TCyIPMF4(B4vkk4?MBe7{c7ER7Yj&=Sr^D zk0zJ3BudPJj>|q%Hd5WV=Ah-3O?bHkFB@tj7u5zv>TAwwP1fPhdSm_Y#F|xoP_!O; z*WVagv$i<~C44v8c%LI~wv11n0;Mm;+6y(%%`Svp34JaHF7& ze9xQP{4p5(9oncRa$9Ih{1#pis_pAgJ=hB;S2)bG*BDT(;ZS`y15{^28&0TBf)_Yc zOAM$YJchVBh(q;o2B?OtP<3`}PmYf_TNC~5Q8?l3Rg+Dy&89YoDD2GU!1@>%F`4&^ zXgt0m#v?{Upt$6SRD&1|ZIWdnUN&*O{5b<&JZR`y0kba+%^w5|TJ)Ml)CC?iB%$)8 zp`9{7m7j(LuqD$F*gcX?5@_fWSr*dJC7gyuLz=2kC~M)kO5yFv~@u?+8WOQl?QD}s0`Ygi}MkV zHSvgH?20t7y={wGprqhmZ~;sTVdKWop3hHe0`_uAZLyk?Np!^NY`%C&z96VfK4chs zM;eS7i1MJZw`QZUk7a<$gT^FO293>uX)Z?@Jz@B|Ap>Oj2}=N6E@5q@&+jD~;-s}8 zd`-R~Xe)ZkkoD~h$nqeryRs42PclH|L0l3lgSh6R+k_)cJYpDoDg$i!$xDD-E_rQd zI*cSP;v}}E_NshKkQpmsh?_m+Z#8?6+CQ?9+O`>>@*p({RVGr~GXre-Nlk!UD5+(u zEO;1ZxN_F2_Il{pd_$fPjj%DW@Qn z;h$Ge1$)V&SmZ|YtqD)ZrC32U33fzos^)&%or8|8wd?I8Do2cOI%067)@~nh;T5i( z1}>B$rW&fU@OwVbJHx>(=C0nIW!`NEch6-$o!}g7PxmB(vM{%|KF$a557+2Ug}pc)-lQ18bi2w0Dv_N00s>(_)T-@`Pz8&2o`w%} zp1FE1qp8l$K-rB!ane9ztWu+hjqf@-iMFX=2kqt>dymM`^ITS^-tZ1e(#nMW&pJBtP1bSZ-pV?zuX3@@ z?}$z^3`Gvsxg-tiY_%Ft&a{pZ;W@fk(o(E*1d*0S>tJDTSm#VfOBu#XvCiq#Kc6ae zt>eo&XJI$evyP5@lXaZ9x3Z4wt6Z$}0&hI#);c@NI8~*Jr(3!Ww~h*5F-B64nHBf? zV(Crs(^Z5g3qN6DetzPcNfRj~>I!c>=H{p!L`1GqT{qIKb(sluWTcLAqq~O)=Bmgdz(wVPSq| znn$SMlcMk$>*HgN)_iy&#!e4YAAPFG!%k0NH`23{J^&^=Iq`30C)ZcG*y#>$JmzMn z-NGm&S$LJpDi~brqNSn`CF82-DI>X^*Vzf&hhD;dDz@4lDzEO?ioED z-?KA~F9|?XWIB1vDl%PPX7`t3uEd43@ z`5MBT#VoCJ&v|~#9z!Pc_;PIrwR`VdiYXsN1=a8o=&?ZIHKTK z!#>gH^rAEz2U9wc;AAus7o|6rg}D%>f<@`=Wr6$6G6&i`hB&wryWu^)iK5iWW>!(^ z`YM+weYH0pEuu676qn8gtdd{nOq@bkD zu=^l9Xp7;?^-~pn|C)Wez1_Dlaq*i62V1Y_=uk5Zt%stoJm6S#5=h-WJNxZq> zjX)(Lb6`$FXk%yi!Y?UEWM!bp5s5#T0@PV7M-Ik9r2=)db#jO*xt{wVXf$NYoA!Wu zC_t^jDVS_m))}v?pgqqTu2(j~s?}y|s4-TXs8^cnDiiQ*4AN?h9EdLOGCSb;3?$Aj zmf=j53!x3tJkj~ptR?9DA|7H^vFG%833EjpN)La`J!{i=olkyV!dlMVN0p0kB35h+ zHBOKB|TU=XOy5xA@}sT>5arS@tt z3jIrafFHgqwuN{r-qE%Ybmy}{0;xsBb(ASumZFDbhHk3cQ_*iKQ_<^b6{e!s%Y>P1 zq+DFb$dpr-MKk14^q+_~r*ZV61UC5yd{L;Phvl}kaSJB==!zauB^CYGpizgSUnC^Y z$5?0l75yd;MQ?wXDf(|QkWvk&ucF^lbp9KxrCuuf2U*Lx`=}KC53piGntLnyr?8TY zivHIH^{khQ{+9*8>`?Su3yS+sXemKJ_$YcDVXIDaF@id&SDE`ESl?p^$ONEL^qi|W zZCg~a3v8w6xvVm&90aeW_G<7q=wDhzkM9aazxS|I^mI2f6+NV06|CqlDO1twNnoa; z*UN;WHxk4S#{u!nt<0n7pC4~dQ}o*=u*oX;qEJN-dmXCa}!!FuLp5L912TnCSS3*7pRwpisjSR1Ph)M-=8`Vc&CH7C~(8{Yo(pD{Dx zF$O3XGXiaFh$|AZv%E%9SN zj!je(c?^ZHd+B}u3kw3;VJSRE5Zzp8DM5_*SPD4ER;8GT%Mh$2OCbd7cZ?!40jMkm z&RCqhExOzVwz3qs5HkrK#IvRLYVaIDds<5Y-xZd^3-OLD1-hG&mcnY80N+jXvjD)- zZg2O6J6#PAuAP{w2?82EQP42OH7qRdb3C@OnU-lIybQ6g+X#u7`meyZEWlXwMIJA~ zS@GsH3t{&J&N&^vD8NG4R#^zNcXYC=AX?%et%Hl8b%%AZyBN`bVZHLQ4tB)^fRG05 zp?~XJO!v1K7+i2z#?mD?l3WCPiVinfOTEBFf_8ze)IXO}Car_)wbWh>J_-FxtN!s_q5l5^?@0aA-HcTKhpZQ;2YAK> zx<(QD!g|Ye6GUr-q`WaLfd9k+&@F)I3#K-n!q<9d0z46KPBQ`aPT-!0;fn%HfbAj^ zKn_l_k08R5Gy?tx?K_Nsy@hOgl=aKY2&keF&=``re+ZuDEf}beG{@GrD-%uAMUeV4 zHr`tV-s9~OFiB>@z5*rxG*QyC+`wIm?V~aicEpNPmGxIf&areNKm>u$PmeN-y7%Sv{ROY@2VGB)-9Dxn@|M*Kae~HM z+R_AW+6-S5V5;pDnQHn#C7WvuThe6v7{K8$*_H~K^>3_yUM3qY#?XKhwp$qBG3>N1 z@3Im86ay*M2)iU>l5w_7bpDg9rC$1QZe=a!?xQl!Zo!IE7-!o^d*xhQU~0F{zJvAU zvd(@`P*-&;!*?Y|ChP2b4#1PGGv^m>>nvd*^RFE3TO?f~ALxh+9*0Uj%(HOGb$Umb z69tL(nd=LS&QI*7!*zC`VE6l>?+F6i$38>$vYH|;u#)Vv5Uek=an1ywvd_3khdXYOTe?vb5^Wqv{$s+ z6Dw9|yU2rYL))kRy|BPm|7P|Pk>5iIza#kMbZxxv(NZs)jQ<3*;XIb`J-7=ytvY`R zR1ZDzJ#+QE3{ZKTxf()cD8$aT7Ocj0;2%No^w~n(wK3-3gIpW%2ZU(bhz$VwfQdCE ze%8^CV*~z;P+2h>@DpM}#Tf0g56h7Sjq5aGk=}_aEp{5DIsrFP@Fp{-Ydt(CM`_s6mXU*BCr)95wpk3{ZLSbO@C%PhXz_Dt}xFA!nR&iV)lMNw4TG z*3N1G%5R$9+127xnF_k@uy8-LrZ2qIcUbrjD2q+hHKq}4dMHDpW1=3M2l54#7C%ET zNd|?jDkG0KB8)r@61$NnCS)m%yq{xN9ziAbFy4`oM|U&R$n#wq4MyJKy)p8lQ*^85 zsnqY+br4%dgn$V=emU>=Tz zm8Dh;Z)k#|7`s62Q&gv!^*8_58b2TzAkB^r5HRsPVA8&5jtUN%QRUegM<=qkQdy%fZ zZ$kAMth@&@K;@wkLZ~uZc~2mCZY%FU{db1LPlr$?T6tJz(2AJ}cypas zPg5*c?So*|SW6N^x_Gc!j+pLi<2WeN5PUUMpTQ7(O9rSsltu`ZX$Wqo#dH~3V?o^y zA$+7EEC4;0hcJD`(9; zt2J4daZ>-t?%n<)?PCt!P6O+04*nu#LPpDkA!*HU>GgQJmifC^H77NAoFl1 z=&&#kcg8z159w}3nupmo!a(Ej;4+QF_`VG`(@<`2!Stwn$hfu-hog69;Q{gHI+stE zSr~49VO3qbCmMxxBxVk)@R&FXinI#XK=m1{!qYQA<)J%5s7$MHd(A53c#WBb{Rp6L z7AEZ(QSW;@|a1eagZXc9dY3m;W3?ZIpu}tRn9wCGjDKtNVK}L8rLjc)`$Evj-ev0#=k-J8LY;wn|9%D zvx+=4O9+)|HSUgRwP0O(nqv0jo(QULKdPmmjPm#L?~-mpE*Rgm0ztEEJ`hUyyC5@L z2=v{dIlq;Dj#R>BP?=^y&Lu#S7I|){wZ^742d84{H68^NoQ8Lw9e~TaB~Zt<1~E@{ zF(t!+5|Kh#&=mSbZG{t zJZ29eRKBx^%^9Hbkntf@!mGTtIc6MeiN!YQ(JShUwevX8W?9pR1cQ#|5C0z^LZ3fG zcANAme*#{JO&~Nb68h#zCXGv)K=4My1VV$Ppb5myNE$SO_!8dH1cL5nI7x@8J;j&d+>*yt&S6rfEW-3Hb6gX)=UJ9-OugqB`xiN=tNEbj zm}hJm&KXe_b(=4;5jEx;t`Ut{V%g>!3ECle1PQ6E`Nm8ANyKNqaXL|i_k5$40Vt8V6jb}^osgo?c5EtS=M~RV*AmY|ySFS#9FsVf|yxq53kZvg3Kt3nXaFAd8-|Y01qvg1+|Hf5U!I z!9U?rPq!=1@9}-whUvz5bJG^*h_DnXy(jkKdsZ!0=$6=FsFwy}gocZL@N)*{ZKZew*sdYt`2^ zhNe2oK_w}OM{)#MaRJ<(JdPf7Y)R8ki)5<3qR^|)q6a`D)xzn6nWY@HF1ex z+De$9*eNR%YQJDEI60SOz)&Sp|6D1W!VC6SwbWh>UJ1SG%olSKOAuZh=72AX8QB}~ zj%H+ZHzQ|ceZwhcV$mrUFd5s2*<^5DL#y706yGOBQr~cy(=fG{@Ngvi%&mm?Js0q< z`@d%ob4LCM4oqYkaq_ZAvpl=ZeIVZ4wCz6vSd(^ptf%h=I7>2jJ8ay@?7azE)6Cug zM@_nMZicc@G${-BdPJiDUMSl4;)7@y9Tsk$%_n&yLSkr;*d>P7=970~SICWX7v7Q3 zpu3qVG}ad`G}iY(WncJ-S9y)j3rqbyb&QZG)M{(8pmN*NN607cO*3EZbk}? z)y?txSbfM-axCpSM-kPQDL&N7tFSF8Cyd!jXTDKR?g#mh`3=rzR9Lz&d1bu0X}H)XpuOw zik2w=wtUed!64D{d1#V}matTcmK&fvCR(mTr0SyO?f9T<(ZU-MqD6zGAklIgc7;UC zxA2Zc3*F63(K23Z)yF0Zw^~HCy%8;8TUOCxlnc=kK4hZhAx4Fzix28ouZp-CoM!cr+(o`Le1X!$QhsxDf7h!4sZExZvSS~N%s5-oGuQnbv) zI}$B)HzP&M;jQ{atufX=*qrnhFe|!Fi}cFN6f-+V!6Me8P1tOe_!fyAUc>~?o;aKl zjg~HWo)d4b^V(@z<-_r16+b%x$YqHi+YplwIv5((g%BS_DT-FZTQN~|Afj0pMZ4gG zXqZd#&G1HqDAFJ)NE981T@k(+yc50|yql4tX!S(BJyF60N>p2>_)!!3uq~V5nQxQ} zD<^!&gw6Sk3QHF@uZ%Z0ZB~xNkyXr`1;CaiX5vFBd^6CbE@0$9O3~7W@|bA32$8Cb zmY3m!vPBDTM2Hp*l7d9bYq2ZBH-mS=H-mRGQnVb>-`^N(O!W8rEfiSR)xeSUmMLA% zjf@-FT6N=^gO*n|;pGy%$UVT<;C96DC++>X2DYGEURmF24D~mL*5Kv?%Vp|gqdC^5 zCys>%3uR+bu!@A0dd$St`xs@HF0S4cZ?5yk-r7d}{e!J~ZKB@4Zmhq*@2HXHU~Qy* zbf3bS6kmb4^5CSRMo*4RHMVeJ4m6=k%_R%7;rwqFWZcMuj5o%y8|Adel6=B^LXQOs z*F*JSR-Fv11N0>E*KMe_BOQs=E zPYxQ2&U_1L=n_st&&_}r4;oqm)n|}H%QHZAww2>UqfyBr36&=e9gzX5{4^whEtiJ2 zX4Z|Jn$*!SOu4DYOm4q41HL?H>vX6-18vnZKy`L{+LBNiw8c)b5UiMR1VS?dZ22in zfLtzxEmj7zoxJ1*^NhIULq=NHWI&V$X}u1r&p=vl&j8ig=}AjMWssJ>54NDJ_$JC9 z%>Y?`!V&&Q2ka655N!I1xHIhbT2(W(Ng)(Q~!Lb&{-#V z4Sb%og*xn92uD;ty9Jakf?aOHO>u&oup8-FM@PQNI!@eMS;zHNF4lRsHy-n|&LwGB z2hY%Ea(TAl@O%o#qzu-1f>2`7I#_6HwOH2qyQ3u^x{tBWU#NdRRpeov|Hf{lXB{2+ z2J5_S)+~tWz`wvb2v#0)eU*!c9`#0OZXViE`gto=JVV)S!D+{iGLEu%dskj;CvhLD z2|KBD(t%L1)ttk^{EQ{eL1w*7I5hfrM_Ui;XmX3adwE`#h ztsLe0Di=ppz44fvqjnH}?MjtSpX|a=(v{5!O+I9Pp$)~7nqsClp~#}8urNO}g@;G7 zP9~kT*>SYy!wWG@wVC?pQ$-$jdJ}ddJv-?GV6u}F|5kQ#eU*!y#=Y^Fo1JzGz4>J7 zRW7TbtGNqPMLv8+aM4r7R$nic(%#;fEMYeV6*@Q$-$@ z`XP2BJxhhiH#gjy1N0-^Q(|Q32_uMKm4&bnCgW^~$lDf}z^03{{G%*z|Ju{>{b#1} zB>`xPOeb$yMW*YkTq5&kZ#?D}nR{vxs!A0PPe>;>Sx}0}PFBL$<)96AN#-LQ!cHss zxg09C+W1(QUw(>%H&{m#&f+-1(N=~YDjWY;>Y+~+9uoBMrQGw>VP|Q0h|+KzOzD(H zlwMF4=0cbX7NyOyz#S=bpkpq^S7A5OtI80UiJ}zCtZZf#rLM1XiPB}>c(jPp3{YGe zIrvY_>ZDQIvto$Ox*{YokvQy#+Me|=s=^~ex#gMliOJSjML4GQC>$$c!u@*3`1{DM z5PB7({4`eV6QjJEM)7oDb<9H`n|vy}ke*Y&k(K;uUv=8l_iI_J zP_&CfR|xH9U_!OE@S#BdHp!HMGAq&6!aQxjq*2$_!W0Qgv$Zh3C>C-38Oe|qanaq3 zT*S3{aHL)vn;iFB!l2mQ$Vdei=M7Gdz;eBz%Eh&j$$EQvWnHV@9n z5U@gc+@$3kt$7gmrT0Y7`=g%IolnnCJqKz+6E<3;Y4*Ar1n^Ghxf+SD9$JB0?XSSC z_E(7Gk>C^pmZ4<4ueRo|gzwjaA!zmdsbC%b2+|q8M-bu32$g}n^YIxWZwo)F?96XB zCtHJ%$3j(Hzi`&9%crWr=i&F1S-}nTGZ~WZF#t?(BRpCge1WcCoC6PThTBkIeg&Tn zAGtR8Diz;C*RRp_>vX*puE96(@=ds$GCR0U{Co?3)&{rJ^$xn;i3M8(cR>rM%nRczG5cp0Y4l0Q9^$ z_yfN2N4(qzW!D7v;2ZbiKo>f|sw--?zZ^n&3{nAO0bl zI#0seYlHuUE0Ee#@N@Z8@JsRYEAjIi@$)WH4K;M+!OF6fPrp*?$Z!2jJy#ygY>$Ji0WX^LFuMw}4Kz!$U6u zI-vu1vJYt6{atW(GulfVx0MZOBV61CGN64canrVdwwc5IlLFfJ3AZ>2Xj2x|>0zbeSe-l6d5I_GEKeHE6*&OjR4}O5j=i|?;U;+FDi{NrO zth+sPD%cusp`LBU&-U=MHrPS@u@n8FQ_-7{V~+)XNt%TOCtC`t!D+lCQOQhBG)AP7 zVG|Lq!GuQAUuFi^dl6p*^4sx_X-NN>`S6i~o!%9%wX@cby@#5E#!-Z-Cw(nAU^>!~ z!G_%}2=+J%aRF={*=oQ(0_TJ5do5Jh*-I$!BXyg1^^gK$s`Fg&M$!&%i0{O?asp-| zi=_CDd}a^m$jX7*;6)Ry+F%`>0*$edXl(t0fAFI=k86VqG9maBTtapCFuqUD zy?f%#bvF3%2OW9uu;b+(b#hBLC(19PYJMbT(*q-xI@79Wat zt2-96pQoFE#o%WMf}DQD91nAmsG`1@8+!0kb3+eaD%{mn9Yeu0{wN4M)&%|*s`r~2 z#Jncz?ArgzQJG~aTlXR9>Djd;isjk0!NbsBby_Xz=a4bgX|)OPM-*&M8iU)RK56e( zgPr#T%G(7l7HO~qiaNV8wpG$qtUmzDdJn7x0Tm}{R5pcwUOg4;g%xZWu_XA=LhzMu zNTYrsXzs+CA{FoO4aLu-9XwX5j!JD1rouxgP~db>ID{L73T?OCs^jxE98^10fgLa@ zW<{kF!+ncE+YF9O(pLj;>}cpn!dL6?A33KTiFe^g>Pd@?Tc3yMjnI?V0tzCR)3gh7 zG5Y(m?!o9U+M6lSXeL+g`pF|17`d^$19U?4?=Y;GVv~ySF%xB9OE+VSA(tT;8Ykh> zBcSt$(ZCVf9FLdcI8ezqr$WWhWzt8n^^#aOOp6B5W#Chz|_IF`Vg2YZq5;~=4EvM zY8MNcvY~KQ6VqnQwVC9&6ylBS*OR@6B1D=BP9yJTazCrYibJUikHm@vBC*0a$2)q; zaQ6Wm|Ke1G5?b%Yit`AqxoAU3c_bKLJYw))Uo8A8G2zpMbssj2jXk2E*JIC8XP6vg zB@Bo66^lbf1NUIXd1zo8OcjmxJq4eX$P%jBg}Ruq;AeafxyK6Xqb_TMOQ6#9OKm%0 zc4sjd~gzz z3&<9Q$b}3YQ3*@jYUbu@hKg0VluyP?{&yuT5kD38x}GJkMM{>g&}8vT)>oz_LUpJfu=r&m^{mvRriA#zmq*Ot?iwtpa+ z)0XYBJPC)_&p^rJvOGTCTmjidelAOmR%8edG=b^0+)5uEsTqZx#EY1&e|fxrk>|%E z)bb>2C7?5S8G>N-U2cOGzoIkQvH0HB^Tmtuh1kx-W;s~~@*%^?s6S48oS6-%zA$HI zohplM^ey@|&;=Q)TtmhHSDdde7a3O-j|?AWrQF08&u({uokq{@D*<_3Ji7_-NBkW_ z)C-}$Qarl|sPOE59`Eo^>Dk>z7h6frT}?a)_t!C01%!(O)Z8EmZHa$z=kAzt?xJ@q z!8yA;^ys!jhc9?=F$r*>v0|tJeqXdhY9p0n4#?o=?RDc!rrpet#;rSxoOijWl*>1N z)^l!UD9GXqtcO4r)8qBMkAaaJ(c0u0E2hb_;s~UEtJk-HUGw%5I@NF$i`-Z&lKLg? z9+rxgxg6v}Mww3)i!kLPegY~6{E%vkxrnjQW=7hl%qMdXyO!0=`l)8Ftf&8Qw3&ei zm5cbV)Ki}-^m)0ji};_|4b5pmB0bqftPg?dB6f}d4O-I1dfmTTtdS=}zw6VOD)ey+ zKkAMC&;@WMDlwXQ{+y~vzbD_G#FzsHW6B6)H?~Y;_Z@nvok4skE$pgd%T-XZl`XNb z*KGL`N1GXXs@U>G>Zwl^I$H)iz~||`iNUGZjdX0O4}r;+&JnP(W%sWZM#RaO()D33 zrtI@ZzJ)0>Kyhir*FViF8dSvS9;zY(6e?nLr;sk`Hw%tpLrkqjPuU2*8R^c?A>*_aSxBl|E`D;*-YsoM)<0T z80~c#+)>1c?q+1fsIOJq`|z%Jk)p$JSp5u>JdvV9 z;>~p~?rn0r#JVF&v{1bxawmj-P>-2jKQZ2?$a`!NV0ofL2`CI+j38K}Lp#LjOHF>w zME8aAW%)`hMihTTsJ!SyhMn{MvEvgbdL>j}Se)o=sw@^Kk{wna0W<$U{su#d5iOc5 z7bUMM9wk1Cs%x~UI{{B)wCH3&UYBT50{jub#}Ks=>MJE$gn)`@(TDL4|CG_9#Zr7F zMT#_0A-rm<@bgFmfYT{`r08`gHZHEiUR03RFZ_uzgP%k}V+^*8fW0EZ?0?)z0^iii zDkGa<;lSdisA8lsR>wHfDC{#aunFI7v$vN++I1Vs;C1L=1rg-Y)55wp*(&EV2} zfgs*b`H->UuO01WU_<4>{w4L&rwZM>;Tu@`Ep|hjxRdlx4lL>DH$B)+?2{x-3M_U1 zYWp~qvQco=5L2E$@uly2k3!6qeLq!^KEAYH$W9Pp5>!ZRiY|OA5c*G2rkzQZS?Mww z_rKiEEyKc&`ZUnFQ8ufRG~9zumybX5oS6HyOEAbb@ZD| z>cqa4NxOfwtx2PdMP1+LV$tV%kAa0nGeDuDP4{LM6e{BIWvU_r6e`+ulaMv#M4MiX z23|)p5`xrxJv}wl?+{PTX9!QXo!bVAagVE=;#r975oZpz0J{4sk zf^zzty(xo5oKnW3K3yyh6@~mStT+#aY)`9~=t3v&oS$a_(>Dw1W)5AD5RP(~Y+ob# zNe)M0nT@OM1~aLNg#GXzbkyb}Bc>NMVh)O!X%BS4LDES@znK9@kf$o8GZz?v7{NFv zfe;@U%=`*q(9i!GDitL&QDhV%Gc$BV#p$>ogX_!;6{|QM_ph0<(G{m7 zqcdHc4qp{sA0Je{ z?>r@IDl<~Ir-C<}@=Zsm?pPdIKdUZJsP5=^b3Na>BpO^5+Cw7Z zmy421i${r%x>ESHtnKPfz|$D5dnq8VOSCQl{)pdWh&mkVD4JE@-r7+Pg-m}DRP|ZbJ)o-TiQ?VKz{rhd<(Bvs zR!nXQ#ZaJ${wGE89xE1iDvI}WsMs1Hz(OUC_=wpjM<0q|<9L3YoZw3gQ*tZ4?y%@WZj!AX& zn@sA&zLiP4f8~zixxUZEqE+uPu&`(bC{z^h2U!J$@;jnUkkjw@4IyjFiQ;WW@{25e zu3CLqAVj}1hOWkneT*S@h<=izcvxoRYP-Q~i{d@zsLe-4OfPE0927B= zDT?>!8GwX@C|+6ukukZdLW7k+lA?G5ZyB_yl9{&y2L1f9p;A#Y6GcWLGBZO*R1}Z< zF}TjmP_c^QakrZ(8(mR6GCI>m@$gj<#an$P+))&d?q*~ZZ&iKcI3)b{zTA$L zFx&Cmc;_OYzD4WhiQy&SGB^i8u*UHCrV8c~J6>w8CF7++@zbu}3SsrTa@{wbqU zTWf5Y6qnNIUzjZ?U=5Lc14d6DmwJT={nQ{SbaWiz6S&9=DPAodtBln*&?8tCR-32{ z*Dz2cmXo#X>qp^?w)SE;z^pM*X^c(OTjNbSt=Nb#mDdd8%#Siea1+ELoYF;#reA!E zk^T_tAdK|%#EQPez{rhfHTnG_R!oy$MdTn1?Xe=$J+eO%Z>35(tYTrv`Lr^G9>eJ| zg0*D2N_=5RIt_4tvHe%BAvNk!^6QbTgS8()Fs6j`Txl_&G%feI$&#o|y=#pPIW z9;(<%H;*JyWH_VfZ3Xo(hZ0B#4mfoDTZnX$g9BLRZ(Wf%PE@kjIqLIKvU!jr0ZXYR z8F~y&=t55}{qQCl6CaGkBmy!-Arc`&N0k4Y&&{}bo}psp|2_e9mqD4_2WF|gDh#T0 z{%^Fsg#Y_7BwX@;)7^~pf3I$jHsSEv`k0pooF<3s8e@3)t$u8LAFHiQANUH^QgwZ+ zF|<7Nw@kL{{c`i5H7~A>w0n2T`rmNGBmWVnTnl67@sIy0-dyL>-ulPcFgQHqTN^Lx z6G5Yl*-wjKlL4dIPh3yHXs`%DuzJa#>n1&A6vQ0p_@OM0?N2wCl?n$sJ!06Y_+!V% zfxZV+?`LB=9O%1IWwDhm+)tD(j&NAHXgH(?XxJexwIpp+W5ltQ{<3^c7-PJM5z86n zV(C;dz9(0hm!&g%4F?eZW>8&_0jjg1jhf5fd=k7M{Jat>?)&M?BfY>O3!gFQMlwJ* zWQDG?V|#LZyxE%QZ;#em6R(UCjyhrOj7{5)1n{uxE?V362@SOpw}wIf8f0z=Q*GlmbPg&kJx_#CL% z%8poA06U_`+2|oXVm&DVzuy%Eao9&~<5 zS(pj|Dk126PFWzoyr+YEUhcu|8gy=zg(;oUP2un4bF1+0{?&Fe=p2bb#`3NTaw&pc zys09$B6x}J->6gvn$3~rmFBoOl9#Nq4a0SCTDK~Yhy?HAR_b(Q3hb`FsWMbwSDPG} zsIV!1Tvu>U3Cs21MGVdFFP5Z~?szw$S?H`-!V(r1pgRzehVGz8tcN!^+VTDdLzGLVjfehl+oqE#r8^NGOdJ){h~}E zViZLnVtP#xSu&YUFBXT2GET*c^H4^iYn_J*>Shl8pODVvaOPY{^dpQfGc6g*{B18% z90}>*mpE$kkqy&}8sUCM%w$^YeC-TCLc&_-v;<-#bU6t`m>lv89d8-5sFIoI0|s-- zOcWV~$jl5KQMq0`gu!D687fw}UOXOV%0|~(XL3@d%k{!nMXuMqNYa$+MRzkZ*9#9P z>u;{>Z#UKtPo!P#Y|ZszwUwFcwKr=i%=H>;4%JsJui($YJzM|$gumd*li&47yt!US z9~tUh`CZ0~EWeAFF{|>Kco(BkyhR`8Sp}Vd(cozW!J6N-14j4+ok?<&lk93dnTdr1 zW64acR9Fb~h+$;W>+SZ21tUH=UGt!NKh5FDEtyS~#n3R1m{X!DmcC>Zi#fLVgkfUu zaxt-IuP|}28xyKnVd7x!Xga)HOdMJ~CVX_aA}~w7QFpGL#(bkcfcWT=ZSD)NoiAvxinQN9tA&`J45nvfJm>_b>vlwJc-&-6>>Pd{$BK6p{3u?~+% zg;b#iBo9>(0z6ZRY?I1BePTl$Pi5WEBo*HVH$P+<)G@%32%3E>;R!rU!Mb@AcOU)}f2sOQyS9BJfB216qB;XChjlp3$ zR~WTm8`joqLH>B;DqU{)dyB=Mid4N5Dz;`hV4)HVe9VeYI{KWWtqk;`B2}NE9{NH2&MsW`>?BhW#7$)TauaVS_v1bC0y7 zSy!iKSbYdghINjBm0`PowT(fbYzSPR=i<)CyoVq+ckYY)cW?rCw(EmU$VN}Wo+;*D zhvI0L!Jez2Vyhm-LR+h4vFA%1ZTj$5IIxO6Po$puRFQ{0PsMJe)2I3nnC$5s0V{iU z|7u%gPn|*;f4aWU#h-oNV_@OW3{a@(|C_T)2^H%_<2`5G;!>)jq&-aDTr3xa`+zM^?N(CXqcSA|H5Y!8{5J!Xw;eCZceraL03=}*Dstk>+-2;@Ok(>Wma$l z{Y-{Lehm0SgB#(|+TaUx{o)*Wa5LP7KF6=%)8Ql624AJ(Tj=^Vx_+Imx572}2421i zms4g3w~3!`!Oz;@cDmj{*E_Lbi{LJ3;gos7UHI3$;BG3qhpzX+^_t*YP(J*J;M?#= za35ao$IE}<O$)ZM&txt?+Pd z@HK4X>v(w@-+Tryw^7MA@ZmS{@+>?&Wnr*jHlC{d2Ylm?c)1VCt_kkJH}1vDpWxx< z;C8s(96TY~x`Y1sGM0V?FJGmmId!ZT12)89@sr1jT7LF=(Nb-yzqVe z4w}Z7Whf)u_D|yHFYp66`kVOqhxqxY z_?f+k%I1ildGG^-HXnax1q8-=!M>f+P;81~>DP&Q{a{DcNrkeHdf2P-;Av; zb5v$ys|TPB=SDAg!V7}G5LQ3qR;3+;(*KsIvhg^qok>4tW%R!iEwPn?WX3lgfs72C z1@UYMc(WHZRtjlLWhOmhApAMjFXhmRk#)Ss2IwvEPDi6{8K6ALZ3#FIu0;@{R4nt9 zjd_CGm}n25v5tHoOGmQr8P>fcPwd6my)zF3zbXoD?hIxWn`vZ5v2aC-8W|eC;Ex8M zM6%C8^?q}L7{jU4H9noAGE34>_hBhIX=v|$q5BLatug;pXI`tm4!3>#5Oi2&4WU^S z3ZXf061tFR2_1;|(VQ;^7eRf})U5_PV0IV?3++_l1oVAVbPCK{4BDkz&1&rDfFCUYwddbh{_QlG)X@laba^H zs1HtDC`DYTy%vNoa+UMHSAB$Sq@^9eTY zK=7s`e)TaGvIXF*n6WXS<~C&lwJQUY6P3Z*7#t0AalJAMYuFp(BO*(vZS13!sRpJU zc0s5kuH?L7A-0VnBMD8smMvfT8%nVo|L8?^UeW5VkZT9L#lyXaJgh>+Xi>FivPZWDWi5=K{j)-$Vzk_X<;G!2 z{@8>2`x|48iT-|EmzqG#!g)p>pbD%a7;X-MW0rOdO!7ku=UJbuGtooq>|}Zm?al;K z)Ktt>YkIL3MnEwuQaxtkY0hRlg8E2@@71QGQj1VegV_^7Aj~{J`{}A~2 z(RP9A{q%&xkG4aO$}E1g1d<50N0dZ<+G+Hob++N$H^n^~p?Fn3wS>;teQJLNW+>LD zCcGl#R(lbma8LAX-j?NI*it-W zWOqris8Ifgi=krZd9wcj3vI++wEyAFju8sE0mPc=#VMs=%hCZ^3S8QxlYg zLF7G-xgA3E8pkhBeLm%4Uqwu+hx8cj!jl4sf!rSnj zve4x_w&}bLkCp}Q&!OVpjqc+`jBaqQ;Qop88D=B$GO35nmexCagvMkg+~JNv6J>6 z2(fn>8^X`IOQRdhlzX^EF-Zbcg*UsI&2a)&}_AR{4re|H+@m1 zWjbW4V!{-)RmF9n%PT{T+WO{LZ3L1uF0PM4YNM7;XZmOsMIUo(Q+v)h_f#BFzllyB zFU?8u<~pyQ9xsiCsK_5+x@mT`41mOK!aiF1(%snpQFB=-iDdDJjmcmfNzqi_X5juE z61AN9hQEau#H_C$s`pd44!6y@R9S2vt?gqpD^V81iQ`p5P(nGw)}`fQYeVta@{#un z^%f^r0!IbsAW9;lo=zv%wuVIO=H*K0O+@-Jv>gZCEX~XHA;ckhxjqSZk(W!8qteZ_ zz0t=cKbJNlf(cK+>La=9<>#uLSceTfq>{r#Tv*;(S>L!AcAY}`VmQ3Izs}g{a||$U zsMv&0lIalIVNtTtj1lt!|DR#qbhy5%r6$_k!NACkZRPvA4J#(!mm)oo`gY$}0SC~n zK7Xf(U7)f|-yA?__przIaP7In&3_7GHT^_5|v;#)po>3wBtml+;O zI}!YiYXONo8}pBjHZ!oK@|itDJ@u(VcdT^D*@^kg{*2ww94jbS9X>OC7|iIoa}=yI z-R@s4agZyMlCG*^ddepd{}b;a2?gzyQ8Mk1sEYJkMV%9~)hboUGNK)$V9Nzr3M;6@ z?1Oea92seDs1Gf!w(IpueQa_R*CEL_ljbRAMqYwd$5 znHkv`tc?uz4>sF$0!-RW+isDasM0bcJ1d2cFlvh;JN-3rI!FJ&^2!GE=S|dy*3j9n zt^iL|2Uq!v)N>}4R^h<DY%>d7Hal&sO2Z`c%oM*oHP`(h0 zYMAAuIOIb%Kqtj97P-7_;?X18b39aEShVLwR9P(ABl%qI^XdD(W#Kla1wKWw&_e~9y=ggpe=mHpqt77-H;W!&W`QL@$qJBqQ5;_YfZdrvN-`e3~dh0 zk`87{P^NW@dl`t_6t=0dnH)Qe21u^t5hHOI>n4nZEp5Ks*x@4#jNI5(Zik1k zVsbkuA_N3C|4a3Lwy*`=z((- z2$k~^*4uXfYOzM5jM!YC#`Ka;gz#A+whW`FB80ye^m-K#l4e%f*TGO)N&kSsocc)s zA@jv!`R3HXZu*~8EX^wJJf3J)@Jnp(4J_<6cb@NPGsCzl?mUNj>QjZzox%R_xkqfT zAG?vBJN02OxzjlcR_^Tn)s{MqGWK+Rn~Ob<@g9TF=FiTaE9FG8QpMfrDR9357Mj;v z70A4qY}Z5YQoGV@0V_xQhs3#6%{`emRgW1Cr;q?5i??JJ!ZU!h+i2XNN^}7m;paGvVF!B>&B9s$i|4p%MrDiVwg%$hET+9&r5>}SshKB5_=;b+BaUOb^w{E0a zixjF|{Rqh@US{O6s-UjrP!Ap1iS!y`1widL4GdAQ$oGJ(RVebs(JO>}GstTd|K;8w zZUtqiSjB(2!_OpBSNxX@`84rgd{M-IhmZ~_{!4c=GXA@2aHL)vn;iF9*Y`Ykn7A*j zGHvX)bNTcvR+C_oj~)*yNx#cexCAG{oz!F1z+5}HAZkT-F-1?A+`0nk#n1N76IQ+? z-rS5Bic^3MW1Bl|0seeBe=^Q>aX5NnL7>N@6?+N24?2jE84b83`bS`zmwqrk6BKJBkcW8KN;>(WTv0PB{~@npJ*q;VOcH-SJM1UJHG6Ek@~AmKDGPKW9{drE;{~@X3}}NxT+$uTB5+LA2q?J&jer2n zhUq;A4n+w-{hor(fit!}#;st%Uk}G!T~u3doKx(6l_~h0-we1SdABXzF^TN2;N=N$ zJH%`4oZ?4J2`9jbF8Ad0w>`x1Hs*yzB@$gLH1QzE!VVd>T;2`L+v7P-2F@SKUq>$_8vBz%F?lf&l zz;jWr0hrmerE&a!rY#U(7Soon_dndUtp*!VY)s&#iI)+$Oorzli^9!R0IAXP7-V{x zSPGdWwXusY8ysvLD`GtcdEC!FVbXo2;M$dPzxzJ-$(NyoXZ{Z^K0t#ak^&TE(`&_| z)BtEcQjit9FToRToLbIT=kHf;1FC`he30R8k&64(SJouQGf|2)PF(0xWax7Rbggkzn z1}pB(6UKur#f7pY{A;=#^9Q@%`w=+QKV?CS(UJxa(c0&KDC!comS<5Sggn&?1@1!C0c%0G_7+PTV4XfS~(6-_8F z(x{n`<{43kng`^%dD3#CeJQKpb58fGOd|g^j)rLbEkl;)yyXO}2Y*2jqVSg)$=p(7 zMczwR!aB9^T5mOzC!*QCQ|4OLkzUFaiM9C3*KIf$>P7Rk=S9(r@*R=UsXb={@Lc}^ z@Hwq!2~-ap;=96ec?PIFRyaziU^=X&;&|$N*dZ^^F2#bNcH#{4XX^ z)%wO=#Hg4DiH8}-YgS1d#Fx*`7b;c0AZSZIWN3P61~hrBus&UM!I!XV8KCkYED4oC zShFLH3WUMm3|GwzP~|5n0c^P>RgG;=XED4aMa4-jVN*Ibw@D~x$h{^5ay2fRrLP%`@#OULz5%*_DaWGeyTGM4!p)woEHN{sy!^w@fya?)Y*;+eTe4M zF=RaeGhgWwuLe6~%Gxe)v7~q{!Gjo+1Cya|kj~qNwZC+>BLXXOB9B69!#}SUr#aGn z2)W99)TZGgSocHb8i4thE%UJ&OMQI)v9)%+eMIF5aDxnv)Y|PMF1&(aSh|-(@1AfG zUMP8|D#Xr$uoiCC9^>F0bJa#?Wkv{syZM6Z;1q0C&!wI(VCJx$=77!WO*sohiO6nT zIKF8Gq04fHPdH|G0c>K3PKNgEf!U<}I5_#Tr6w_HdahY#7dZ;qh?>*DV+tJRIpd%nyOS`Z=8|Zz(~Dv zSp}Ugw0c^}l!G}G9nE>gI9q$pl=fSSMVne9{YI!5utYJn*scaxs7QtnmMQMkwhysA zM-(Zk>Ig& z<1ws4ZA0;|R7Lu8B(@U{S#@}Xr1|(h6Vgq~M5uho_+swA+a;NgNC1ha8;`kF)-K9nUa8XV3|-8B-I30?OD|w-HB~IxDYm+n&}CsO zEX>bVa$^YHg%Lhuef*@OH6Ol+vDU|_k3Lo8VXf=18|hg~9{`iJocOo0mg}orto253 zJmzMtB{C{Nx(jANY1m7}3>b5%$BgWLRxH^m)_Rc8WnnEW%+FeBY{TC>TJqtE7+d{@ z`sY(c9=3W0yOEx)LgbtC(lnFkMQ^najZbf52n%6KJ&8^$IG2Ete};BB=-WQ*IYV7~rZq zddyUJ+h6eINw#gqo9nz`+Vi%fF_a7C!5{Vix1`@U#78CyecM#FM>@#WP(5JPH#hU0 z8KCk=2a!-2=^*J`?;pg^{0l6N8_`7U`xW$zJRLO%7B~%6>+VXjs$zXel z84%lLfImOUif)xlvgIfJF3W&B4~pC$s?VTvUyuQ+v#p19$tiqvl$eCdph*9u-xD&x znV<3m_~lYwc}c$)WWbpR#hnAyXP~%|3{ah&p5i1_2F3X${a%s*#{ASKKrfWqvQ=hD z`c0V61y`Y-jaGzCZ_;mPr=+R6wl!*E8gN3dqPb8EeF1d0@HAjb@)eoDA40;T-BCXY zcOABFwxcHda+B0uk~*ApuAMea!mTvI>?2^~^clnZV>)f6Jq%|u!p2XqdD_G<9CrfQ zTa{xDfDKgFH(QN~;Zd1}BK-L&zhTD4=Q1#1QXXxnl%ibEndpNMgYp^HV;Gc0JP%Si z=hB}LvG|Nys|KF6daKQcL@!`?zk@-+-Gw&ifCKL;=kzwLm~u`PIid#H*VfAda!yZ5 z$T_8Gvw99k^$g*WJ%iD4jYF`9L~U%aUTLnY99$W1HpV6*E)rY|hv^Yn>8ffYM)j{6m%m&KUKuibvBt-tid!S;G zoF7pY=@TONGZP}izt_PrTzC#^eP}&IDnd?;bF<8cWUMS7GNkpr&CXFiq#5>D@$msr zv6YXpFh3us34|Z#XemSg6!*S}`sY)H&b`5w@VQ5}@d?-{f8=?ycP0{i~f4 zNt6+rtCCzCy3~6xa&zc8j!etOx{54?jm$2tk3wj%(rDwx{LKyZp~cm99awm5a) z^vgG4X`pyh+mp#$LXwb($yhw0oDIMwNJi0mpxjoG;`WPa04!P?3vI2YUs95W+u!VH z$%j=#>QLO?q5k<)k%!ygg55~Z?K<*JZg=9|%I)31dSPA~XLRXmFPC6wdyiXg!LTAZ zF%)vz`YN#Z8kQp4i{nKdI$Tc+WlXLYFf86tEcGky{w873!rfSypS#nhJ^j?tnh$%% zIQ&8CqfZriIQ${(MtTm{2f*ZTC;qJ*-uZ4aG z_$|%=2Af0m%4lQ#@B~T~Xbws?Egr$8h_KD$cy!oLd~%>tVwqS`kJ$k4@OC?U`*2G* zI!dT)0~K2*2w0e3sH8C&mO5I>&_87|>_`3csUnX+S%%$6FHm&kn*zm&d#ga{{?(WN zFJ>mj60WZ1l6hNtlZ-{?Wq?AZj6RUn-Jw!O(Mg&!W%SmpP%MnHPPr$V&vr6kNF6H1 z;|``b*mb-nP5aXvDuyqLqqR07XVal#bl3f8E!yguR`OEvDBJY9q>Y!49UQI?UerHU z2Ym!Ov7ISl_62DZW{t+m%$t3s9-A`St>TFy6U#xp4=pFf4oZK#J_g$^x8W(>UR)cQ ztmDqj18|4~==i~U|G*~N)>)h6o9VFI8tq6opRm7UrA#!v1&PIPf}bZj_Kor8I&Yc& zWPs}I^odgvDkE{KTNd+v8KBCaDkXsRu|)ml@AfgvLy}LN#J~BpV|b-g;HC#$}EX_3ASYL z0hI5N@ixtgdAmF20^RcS5;_-IaxpAk1HCRYKkrJUKg!R$2JVdfyx9Cgrs?hJ=zdbR zo;G$OG3*UYS%dCKpRIQ~W$TUAH-?#d?fQC(sSd!lpF`;TT;I63J_erBp*r|rTa{LQ zVzMOJ25xs`qNxnPnLE)EOr3ey5!`e26R-fLjC=TR9R7d(DyiINHq6Q^k>cQBQrU z&^a>rC6IzguHJswjr1I;4}-~(&QY*(WcRNYMx@F3(e+_2ew^<;0J-_`ICQ!Rh9o6P ze@+b7CMxZTW~)xgc#sv}ZZ~iP=k`Q>yuA{_`dHAetUi7Pdhw+miL29ePPl+#)Bb9-AWxUlK zthaHph?7W3)^Wbp9L>^SPh+M%XDIzxvGlJv{6mCN3x{K20UVBalc)$eoF1_re%aBM z4|~Qq{3hz5PZfDM{HxfF^c=3E-{f#7_N^S={VRwkrzBrCK(2~&arOJX2PijJ@1&v} zY4$DFV;_uN^#X>h-xo{GieGlr2 zNkVI(tbiW~_J)FboI`kb6lfkI{Awa8!O*kM<(Ba~sJ<2unNz5uOesXD zX6T5@ndU(|9xcmIvC5g|(O*+|x^kw;{hB6c8ebGS)4xZ$rkrWIo0&P&wej(hP5sfH z2j%8W8;zBjGkv6uxH3DuTx1;D17vK&d0ZkTo`0zA zHN?C*+H*!I|57e)P7`D6o8j7@0Vg zG>|@ZZ=aLuBjd3AdEMmLAg+zZP09!arTV2r5UM=Q2TTmSg8|1)R-3+XBzUO=yBVpo z#eht)KEr@aPj20(7#O)xuN*9&#EQwmqG%DccB#2_dkG81Na9)7XuX{Fr*`Q-$uS z@lCJ$Id(&fM4;Gpq}S=gU`8UGqd*p5QhHtYuNG@0%7(!8X-uX0q}Sc*Jp{4H;4M@| z`t-VR!e}t3*hD84ccwA6cY2SVPkab2?5*O??Vw^ScVc0$xpSGL%?v$N-1$7}sZSL; zcfM`*tl6{hU+{aN509L?1F=8p*;F47lTDq&VP(_qUu~%qE8|nwx4HOqYwy9x&8IVP ztJ({TrFF&C=Mj2^)f!7_$HD@*+H0%YNk^MLEE!UP;_4Rl)Tauat9_Yy19l@lGwZ`( zGP83Otjyf~tDIZax*EvE@vrnAC=17DfI_7gd^xLqphC z4xcI(hl(Gi{3h;V$AS11z|`Tj9$ z6^eXu^a>&043b%ece&q)J8Uvktirox~aQA3ExXYWZ;tB;3*NWY{8hBJ4ihM@Zs59^mCmp0e#?bYUEKMTU0IgX#+l?Y@F4 zi-mUQ>aO5el$)25A{CDq#cnJY4HG>;!!EIH>xsb?`IrQfur)n1s1nK<&aN#NXB{!x zzQNx2XMoBh*eju0k|o&tsSL2?5B3U>eQXIwuvhS4w#qEQ-URU-yc{tlrDm+P7eQ&6 z!QLfyl{zK1X}J#|Fk-!?MwFr6J?xbwMS8WKi@@TsjA+1Toj%gL>cx1Zn%o0)d8G{} zc2)4en&X4UMYzNDayVOUdF9x~3j8_w_+t)`(n3s4Gknh^#19$h+_ueX{o{0NMrwC4 zTHj|~hS8dyFz|mdFmhvFO?jWfifPKL2o*GZsbS!muyB0-`@Busz>(6RT-IAa#nwO+ z7TOGHdw#hYCQi3-e0N7%8JJbMs&}Iv`c$ENBYeZddtx^|lnvdd#%%u%k^MZj8mA>eN%8Ds+Yp4ua1;0?7e( zBRxaw!(cMBa}=x$-TkX24svBf;;Jea+n(w@B)Qr4|H|XmK7hpJ=b1{U#@|B&VBvl& zw6&UEji*^{exsu$ABK(b{O72DK2_x5`7dHO((}BIe3R#$xVQ3r_pgdQZq3zRF2V3l z?{TvTh73@s@bh1?S`{isNLP%IDhPMDJ&SYyUszBuQnkrbJnHgfNgyC>$u{c!Ju^(2P zhdQ?5%iWcE?G8pKEaN_^pg!hM9G&@0d6yvA685!e0iXyKVq|dZ?dzDvspSFk@9$Y&yRTG3a ze4^k8I_1kU%Ls1RgN2TU2SXK74Q}Qoou#qJ0dSRr8{e)QCL%f-QcJ-|T`NgKZ?7Y$Dq zj|Lwtr|8NOFisE~!S#p|888l}`CO8nlch;#eyhH2s5v+ld}IzVTQCfv%wW!*aG`C$ z61o*Jcnp8lwxy%c(VxPH;8CqU~4ry3mHaR)~ z8;U`QxiL|1)o@cWBgX7{k@fYZ#r9PNlg@yO{rsCDx)hxtx_V6~ETqh6g_STIju(qV zMK7aRaUOcv?ySl2kvi?LzP!>Hn@GL6`aJrOJH%gKP&ad^kWL7fhZeaCpq4XYGvJJ6 z{yLo0OF}&UJ&xLZ#6}+c#N+W@W~w@Rwpd=_Bc204lsw0{hOY5^h%wHLafccVs4eILShUuc?KpHH&Y6=Cz32>|BT3ux+ z3Ct<(;U{dY4^HBg_ADUT6E+Uk>71y_iWMeF*91{VbS$aZad6bZ9PrLA$&JaHgyyil z#Kz#fV#h$m4_*ls`^}^E`9qgD*Xxf5akdDuBp@YgeI1TMy#TwR*~cjF9C5C*2{?hK zq^*0g+&aOcdDLEpoQe%9!?LTsn67Z>q)-AYoBK@aNCsw6p{&ydE>aWv(Gl&PIXTvL z6MBNwmNc4)+F6UTCX?FvOKcq8>KNAyNL18*t@k+S)E>MFKDWn^V$}XN>_&QO?+|cy zYR7UnweJ_B_N0+zsCHGFi{v*`Z!(OQN%9$>Q10YYvqGWVgs7!*PIeE=3dO>`VaUmr z0=ryZclViPNF7&rzMNIzu1u4QWx|(Nl{D*jR z(>yt5sEKB#u>|#l^qu9>jFcRKcmjJ7Da+e^*n8M~ju6`ls`s->V{U+7L~ekER9P&0 zo$oJUrmyo-;gd&!z&+U2a?!9~5701Q5R)XA*oJ#%IiW&6WUTz6a*=UV50JqYEtn+1 z3JDGI6%DT_7YAqc00)aA(Ql=RgjWb3+H*!30jm5PE(&0MjO?z;C|hNg z^)m@JO|SqlWp#7^4y>S_xw*N4LvHTd0Xoyo&0b4%bL(#;twhoKEaps4Gh@%o&E0r; zy)uZNZuAOH4A(2`8yDBd=p3X^JAqeWP6>0nct>L;`lk zZfL$yR0)nqfR27MS=Whu8nC3;LHDl;NY-^V;$s8E0t$a3a?CK^%Deh3Rgr#e%!RZo zUiCy+e7P1T!pksZhWd{lLo9ftaZw#tYEIPK6N{@A#Z7;H?8Ixv_V9T)pU z!lReKA7?ZneEiaStu;8Txt7d0TDr;jDaCSz;{6keGc3H1h532kZ`Ip{jy5yUgpvX0 zQ%`-W&}BeSh0pErk(dk^z;2|M0s1hQGQc?sRvFO!tJ8|5aHjlSt>+RB$9s=rC||M* zhnEO1lCkZpFptrzETlvgQp)k!;ABfZG(?9(3`nmN%bS)D8EW5wl;!7DcBL#RQSeqm ztwj`Ip{>>QW`Lh4_>`kfA3hE#K#77+Qcr!V$Ri3qgWX6k3iM$xMS*h^tfHX%SBGY! zW=5B;R&ufYwcewZo8^zeEg9nG06rZ@t&X;UoD+j#fNYO5;!p(OtXWQd<9k1+akV~P zEafX6f0%G-;c+bNHIM(<(WVcB#(4Y>)Ki}-^6>ayu^Z`mTptFL$DN~Kc=xYXAcv=?VMd3p+H>)D)q9k3^Y>*cP*tf8G@B#D;A8dr zP<<%Ogq0Keb{%v%U=6tRmv1hjArCa!ThCfD>`BaIS(1}V2uZbWC|vaQ|e(GTM8yQ z+_I!#;)@~$^Vg_`l!8gW@}*$rLi>S_C2VN$SA1rSTc17~SA&&#yR~%l}2N- zn(DX-=F9{@_@2P}k1^Kt%LVI;ut^w7Gw$A44sM2bn!B+zj@`IdZ?)cC>Bc<_yN5>y zCWfleT7g5@XziON;+rL6d%jZmO(hs0yn{7#6FNG0yNKFcm_o!K#zdUu7|@y9fKhyZ zbuu6j-|i5L@V*Q8V`c=G&}|~L5zC=5!S~=%Pw;)Z{$MkBa2fmzSLj@UPX`a^39h8# ztLS<)U9X|*wQvot!^`z>Ic8>XgSg!Yx1Qi8y53CJTd-hOa4Xbs%$(p>{A*5d8x`G7 z*E`_4A-ECB2cHk_gg=72@bV+P+>Mue;%E2buOH*(KD^wImpk#p#lcVDch6vFPw)Wz zfW<|ZAx1yM%Y#@F{FJUgqwCM<`Vd`zLDyf>^;d8e)O(ozegyx12J&2j+W^pp;8FM+ zP<;$;tF~SoTni6-f~&EPYw+?czWHao+(0GQ;lu0k@*F%orX!dKa=kHl9^d#2Uhaaj z4Z-dB#vOQh0UmA)Zi1g1gU3Z(H`5=NW9b!mxsv|A3a%T1Tk!Yb13fSc`VG9@6Z{sg zu;B6uxScZ@{6XBF6t_Q$+tcFq!v6zU&%vb;JS(4UY|xrbT%v_#0cj7aM{xhnv1qWx zTl!j0d^t)^N!9J zikA(ag3CwnGV`-=nTr=Z1vQ|J~ zTnKF@BwmZZm_>IP1Bdqa0AYX2NvO@YxQQWbA>3GMB!s|d3D6>xGqCBwx{SKSIvd`N zH0MEBre1>;pxC3H4*;8s1+fpHyd><3V0yRjfXWron91hr#GBnMTAjM4A%$Xb&sscU z--1=p&DS3a5_JU0Q<+8$7?Ez#_B|$>d$f3ENetE<(d@?ttczjID6O~E&)!IP@`U_CY=nu{dQ;)vCf<2heGX9#WZLFgrH;LF(&dd2}Eefy1}skAN;&62B= zw&cx_FY3!N=EpBa?+8<%JZB8}f;$6TmMnc1z(dcxvcv{O&6&%1>)>zJs&9C-$|2D{ zY8A{1l%ZO4cF*Vt%<@=Nf*!H9UGCAg0l+`qh&H!vOpJ|<*2jAr!;n7x&WTaT6r0=_ zs$vu8>y(Emn(X3PNZ3}n_UluED}R8+U@HC{QO_CCAi0ubu6QMSLC9A0kdf&=4>J87 z8kA0^kRE@Em#^I|P;eEjUwgF5L9n7$X@b>i1;?K}S~ZYcq(o!eD^lgGL$FAqk|MWF z0z~w#kiL|1CWsyX2|DCB!*LMA*#O?d!tLPEDhEM~TBQl%4(a1xPEgZJjHxkZsUJ)`UA2XWOJ!s}2aU*^bcdkdP93(Dk zl_qf=(Oh1mT>O|(?xP-U%r9-C>4i$0A27q>%9P2uHZd&vaI$i*aIR@S!Q`xdvN;E~ z)~XFm1|PZ*oLuo~Wayj?N0IV0vJ^bx`E-I{s{vl*f-eW#P7W>^7*+H5wV6uZI%NQcoTPV9j~B zvE2HxD(Hb|N!rqrb(Q+a_ASVEHZlOaMY;3E-inr<#SL1q*_ zH_v232Wd+0h@uU3zV7tPzxB*=X_O_iQGh&E0<>> zU|P8>jXq907rlnLaN@l`i`W!&VeCpQl@F^74ORMvs-?3_=n5A9OYe~+VOMgBH#;KIMC1qu;_+jK=^HF{8u}Mo z>_w(D??afnfKa=R7VDJvTO9T@;f|%vt)Pd2pvjULNi~I$cPMHPL7vQzCpsNB1JU9n zq$iAe$F+-kVVe%;Qw1~Avw4b7Z&!0q%f;;AX!tyBR6xT98j+H0MBCH$AsR}GYBv6o z&gm(tR+TfRsM@|tjM6Q^eYH;~QGAs%9YYZ3#sjz=2t@Yv;#&&`dZ`R+!CF|+$gR#y zX!MZj#RbTrcqqaxnTtsXv6J@mV*|vaXN@PI!~Tra*?Gb5B#LnypZs7 z0ijw=S4FxQ(a5eyD)DtiveMqDNVczXDN@s!j=2?S=R{Z_i%z8k3z&MPlrv3xs8~sq zn)V=3&@fWL!l}`;r!6(Ps7c6PscBCUel8&LXxg)gMs`h8iLYy#mG(wWvwf9I)9!bs zV{T2`K?XQV8u(z^r4}%?T6B?Fz+Ge}(Sa=lz{Uvx7Uoy0IYbgZbPb;| z9N%QA%>zfNT5lj6T|neft^E;=?5d?QKvyj*{f(++`zn`e?cz+w+^V%8isDe;1v8*5 z>Lp`5Ou6J^CU$2OD|WKST1(_I^jKJ!U$wG~4bQdIu0}FgM-=?Ji%X)ijBen6~UgOCQ zO4@Xs%3H$4?xO>+CSae`P+{6POQM=m7YA5T&%QX|+_;Hxb(?CHfPPqFM~px3yyM5L z^PcrJb2n;`u{`HMyp*)G&3~IFIrlLqqlINKtpDGZtoS-Z!BOb+>BM++2O1?yCgRyhb( z)GAG|S|w`-9<9nRQlhc#6{%^EtbM)*aUBHly?%oDagSCx2x8PKO%P3a*lgfndWj7q zzUa~Z{30vRYOlz)KUw=S5863MnXlH)O6U}e0zIqi=Q@!2kk zaN6-b3ZsOB=|wh2hv{1O9Ph3pVE2krV-QxG!XkKDdS04n;NthVEiyBe2ejNiWrL4H zJd`riAv)96Ga(qYjNuK8+9VmNC$Uy=XQIJ_WJ@@d8L1~AV9H39B8uLFMLa)J=Fk;z zO#M+Q8L5;+C7;tin{1Em0oWU)GSUw_b*?GxBR1iV4{&Gc&lh3S0&jAuTBLpJ-8YW>g~1vxY!qPnXvLnJn)m+zBA$H0wRyLmk^EY+O85`*LExIjoRM&tAq2( zIFn0TeYp(7EN8yuHVobAX`_(wwxk4m>R~CWeWThxIx=AC!_}lwrsQe?qvA=$O25?Z zHxm^NV{$CauiaUbq5?~8F6x=+&({);E+Fz~_z4YVwud@ z;N;TW9%p{!*4#T;Rw_-fi3XM7QP5jDs|vSBEuj(*!FHRa3LIxCPQz%>p_QHG(J^tp zMOSHbWN3YObO!9VS*@1_C)UEj(QsZSj03{*Pi6P8yZZ6N3##1q<^Vl`MI*Kd{u~Vhs`oDVb1;PSTtSrN{ZULMD`QPc-)d zdr(Lo(ZOR8x;NN%Lxh3(9$-7k(3EzxQ%<7wBul`cBZwzsdV6cd29E>CjoF3IYepPnwsu?aH9v0Xh!c2_&EA_gS4Af78ej9v)z zorm>u>LH_tjB#&FQZf$Qn#KtZ2@d-Lc(*;3EZLV!30RtjN89pez=$Th3?*7>oF6bl z226_S4wfLLVk|R?X!la-V+tUOccLcoKod|O=(v}ioz6-xtB21!7kMd!5 zHlm-F7Nc-aWLvxntBeN&;DXPd7PH$?)uAzPOstt0p;I|=zc%Vm!4irwmOhd}#8AVhJW)UcUvv z#wZyUN=@c$${rK%I1)UJJqjVjj6yzUqVck&P7ei@@v^@YrY;~<=a*}4%gk>A=@jP| zT3<_Ui^>Mw`DNt-iOihRqvu|r9Wd1Tt4>8k84GNmCOR>fO}-v;WmRR2~!sk zs&)q3!RHRSD?NxtcI{Nzplhd<3r6j1{nh5Gj577KeVa=?_j2YzZuOjoX{6_)Y_vm} z-%I2*M3=D8RI7tB%UwX#ZTw_*DHEj6Sn71q#83*PGJldVbpeq_nLmqYWLIXD4Z1R0 zxnNZ0)?ejJBehkKOXJUWW|TqWJz627JHJdF7JPEnjF~g=A3u?r9}*fiM}~QD0+2Jz zbDJ1qWS{@cJE1y0Q6GsDXM~E!PnpjBvRIvyGoPO$V3(PXzDN32aipMhW@Tt1p0O;zouv0x__|Re@5>Jo}3K1T#fd} zt+fi<8Ml6`^ek(&mSJUBeY^`&&(ogD@@GR-RO8*&sy&#juKCGL5YOKMr9&Mi{I!u@3mk&C#AQ5YOAA!i8{IURi z1)5&s6MIrx79YYx$WS-Wm~AU7sgVx~4AV6d3r)4QOCz7Q)ajy5AupvyK1GqwT|7`gp%H19I!*Vd%FK3Q0@3>Cf@O z%6O?UK3a!m+^`!9Y>U=t)bM=Y#&~tCu@u&IV?m>|?}~18hDSriWHxCwzt`e#o0Z5# z8be}8)m;RDjh!hL=2zX>*qKHI5Z$(T#3bfGOI;oqN|oJ@FmwTtM`aH}G_tF#N`75s zt<*QFZ0oOH?oJ*^RoEel`tGAPZ zf-J|{s^J5su4(}z)-}aSv((osh*$=F#lrmhnq@na`z?i-&4t$Q(j(UX*A?4-nJ2dh0J|klgd~u>M-ogm z?^!Y@<3B55G(4B1Oexfft`*EcM3ZNM_i}iT&o90t*4z9$wk@hWFe!~5dq+9 z7f&t-;~d7jDVyeC!dH_>iT-ouDI6&*bMHQhOtX^%+7Syh7sHT;M50-F$s@unNS#Js zD{+Y=j8pb~(|{IoZK^LlPUA>f#f79|X7q(hL5~hq8r3%gA#)m4v?+xcRS!gD@-YwE z@o1R`V3~Z(Bfz@xv?U*t`!!4QF}^60kFP`>uK1V;ZSAWKeGg;M+}x9TMBylafpE(FG)B3wt)$ zPbp_KTi9Nj?MyUtPU!3QXq7`kU(_nEguVkj+Lk||Pc+$OMA1?Q{eT$~`ch1I@LM!X zk=0Dpb~lu^JE3nUQ^z_f_MJKvc**kl^j;4KEs_aY(UlmrMwX3yr^ z8#^Ni!iW`DU8P0^_QS_xZB_)eGjJd5uF~>7yGn=Fy79Jh#qvEPTOqo6kMEg%sCr1d zB^!)p0O$yqw*9-{SRX?hIJRkW@!rLn!Dkny9?e31>5y56fXN{vg%vutw&vnZhYW*H z7E4eW&-ge1Hf9)Lq11oQMzbSgCC`g&X3H?R*ix5=$jA(XuM&nXAXJZ!Ynt9S5Dg`w zftK2mrl*o$k7!t_Ph-inG`-ee6_8XpBsboq)wz2-BC=YR$%2momMnklvBL7ODO>&XQyTw9Nt=Sb>@!+Z3 zFUZHN2Y$g)rw67|p`Rm6T|lS`9b5ySJ7oF&717A9&?*~rg|>3RsL-vyT3``Z#u6K- zTx$D}GfQ%-?LXzgY)dXN>!FK4C$xW00Br2Wu`s{(XGu#q%u4 zhz-SRo}6*L9|60}xb!rLZH6H7ji+iw&H!ysuat7uY5jY#n8{e)r+j5oN(B;Us-=RZ zK`@^wD`7PJL9sNH(s2m_&LbUL^1KK+yteO%l@jm2qaYk}bR5lOyuZc#?-mlE^mGU; zbMLmPPcaP1e{F#{MSW{iHqD`jWn_wi`eotrvXRN7*O2z%M&gYNUBbRg+6PpRLhOSF zA~M#`oq~MM=>b^A`ni8tw*$6VKTX22#QO0?5$oUSd+>{5{q$>E#`+JU*eizWJ+~O! z*D=gb`GkZ0J>!!VA$)^J3ay|s!3=(e;F4Wt%-G|+$#W(l`wV>A@y`9_;4)s)e61Eg zAk=7?r?RbBywtuN=m%iUj|mc4c46z3=d7dJ8<}iqwm}o~1n|3))ol_7f6De?3gMzq zR3d=Cwa$r%$jNZMwk})`$7;o5VnWb)#Qvxx!HSI7uK@6cg{luBV2Ox5TZ^mHffW)J zlAC><-d-A1YH;zrfH2j&7Pr@()-ua#LTKxgubixk_P%zNf8`EUHYx1P7ke=p6160Qx_1b!@xCM`~;$*c$(2jTf)UE8+1>z zl?!4(mvW?0>#vNvy4XHVbbc;D;M<*9kZ>B`LLjmSf!nsL%dX!y>xPSvg&0bWTmXQL z8i|Edt&#g$>h!==YUEyosS5~IBZC(~6ddBcZ$LD%Yoy8sT_derFluD$uME4o*gnjq zk2^XuAh$kFhn%aRSb>(RyN2i~MyrWb4J^#By4iBB-fOALMc+bpOO-vFFmwTtM`h1L zG_tF#N`75st<*QFZ0oNI$hoprl1sh&otb4&Z;w{U810R|oxb92ClDU3cm-rEidoOM z#kiq8=M>#oth&j$%ykIZWiF$~XcwSg7uIV{4EMoF!4RvhjaTcH@!F_<0F&)SHf#P# zvAD{p%#VGgRmusHD`!;3Sx#7NHe=NG*gNZIFGz+y?SD7s7hyR5S2RdBK0tyZ6l6H-zF{R43bzEi3$68 zX*tnw6k<6&5Rvh0?waHV!vnC4XLB#MZXs>)Y?@?diD%=BBAy+f+)_N7eof1G_VP2T z)v@0C#K;Kv-91Cv|C&9dt=87gb?eIVI<-oObc8)~GLXH6`eO8&n8NWQW}D7;w@rD% z+3!tO*ZjyPUysfy7lp?X!R%R*{K2V^m4Mj^?|?guEiBGM8K(=4)nf}mtxksTf)r{5 zA4dvBO-R^^cR^{pBXm2+5E~~99n|n;XaNh-ap8*MbY=k#scqq^!^#Jk?V0?k>yx&|WpYpbvc z?IVbWGEPQ&XNh+`NR1O@N?YuR<;IB?&8HS>wkp9?Mr9kkL~mi~l|m~l$KLl7A|CeX zT>- zvGP9 z@>M)J>BU|u=cM;?-&V*;FCPN%PS}G&a?;DkgL-#toAi=4WSR8hi(=B-hayaqUivjX zC%xe&^1ZmMw*8Y{wYGLndXJJ554B3RRohsl4o9wqson9;`~0kE+ay^9%+3B5tcY2l zcU#Pw!Pw`SB(FEL|Zh6EYV21GOzJ+t_LN$|z(CBuJC0U72BVTw`J389zM;5vH9 zh;e;;iE;H55QD7(&?&(Ri44gl0zYpr4IY>R8Ym~BMBz%E5-G0`J(TB6GM;TORsJ{y zRB78m*qxV|$M%L!(B**Qxd0v{lS=4Bwe03~6ucm&v{9?H{R~?jg#9{? zR^{KxP&C$MsNJ$N@&jgAkdiX42{xj}8QtA=D4jxgHy`4VyZcDsBzJeSmr~r_YI)kq z6a`};W8=)|IJvuPZ>^T-5M=ZWjt^Fq6NpQ-1}s>CRVt7xgC!W_D)p@|^;d@aCx#$% z29~MR#v7geqpz!}DPXz}pqnN=t%(Mp%mi8_56ce`Xir?6gTpO5#@D~p~_ zC)c_vHj|-72>DpWkS@lx-g$hb4*Oj~4wdF!R|^>FtE?4#c5gEO7Sc->dmjQO7rWF9 z>45M@Y^u)la{(XL`Ej>eu6M`0pSo4 zcy5*!5%@Hsq4-F#ORz))RPyV|yH@HG!_s01t-mTDdDm8n%P1fbSXl4Otb~{KOahU8 zt<34P-CX&|@GKiTkrDeqdc3Y$8mgU9#nqeR)y8;dnM%TKfFWEAyZ&N77)%V0iH#TG z(b4e7@uLt*KCxP<_YW!#COw|UC+o!0lz>Qm2aohnPwm@GxQO0z$O`!Nu^oIZl$W0godZ*=>Nz2Hgf&xnQ&bt-o4T ztc0`9-&T7r<8ZSx7jqkjqlF(y+fP*tkoH>h!==nu32JOkF_aF$H@e8re;O$_CvOSh-*{ z1+Bk&gP$}rxwO@iOXXkb%&puizZ|z|NDc?^=@|CvI2MTJ#V{~{kpj(%m6>xi{Y`GF zoWJAoA$=*@#AV9aq_)>$sH*Mjdbc z)lw8w7YSzCZG)dnyWio=r~KL-hk=y?*pWK4ttTD6j(Mzb4tu@Qe+K%)(5V%5?C2LW zYqt_8U|qTLoYD0=#mc|b^luVf4VsRH`87RUL8A`pQ#P@@*;1E_dL}gd2Exz>*l z717A9;VSuc4YyL?sNt=@>UNW1CWkiYx%B&DXD;Q|@3YmT*!xCDhiE=OQmqbD2f~cl zXhPqpLSGJ=k6(o9KU!*xf}?W~{N0_^p$2yEm66iw`UIS)Fwp=Ac;ruCt$UzWul8fo zZDmOA+tjcO@zs;vnQc%D7*qaHtm;VP@K<7r!8l-H0mcCdAK6J!(`Ey07I}=rc8ErH zM#xl5jArCa#q9NMg-pfdAtN5F@t}}Q#pJO{J#1r3#UzJYmQ+l9QKVw_qZ(2wCjH8n zikS=Tw_KR8Yr%SaW{g~m)cbO9^jE>pIH!N8(r8RpQ*#c2IWqwez9+CAi?OC(E?Aeb zNf=6tQ`~f{%fS)wPV;qa#bY<_3e@Vj36 zt`vS(2?n4Qur6*5-Gn(Gyj{dIUzIuG2*B@*K4=#hB;fkFr@af3RoTHv~6A`QY=xo$yC+ z7hZmZm%H(DPyFm&{PknJ+=rL@@p31AxH$L;{O%d->P(-F)A`Q8{jk8k`1FLy!NhTwL5;|{#M01r0?H^I-1 z!Q-N?o9U0svGfYOTuFal1=kJ1E%n2>Q8(*N>fSI@#dUb z15{&jLnw*&0bo+p<~f^S@vGEVo@hXb$5APu?`qOiy!`bdxV(gy9lrsWUGUQXEw~Kg z1rHnz=$umAK{n{d3$9cZ3tTaYC&1jFiQsub^%unLuW$p#y(n(~5Vx1bZRUI`+f3Z% zzzsxjF5YGY^WYZDhs!yzO~(n7!7Jb=z}ZUNwt-tu@JjK=cJzme(1= z05)GI`kezPRSA0~nCrt785g4MjH-C@GW|#eqB@D1Ty4knqe>bbCJXoEm!(ltMemZ=+tF#W|?&Hh$ z?kXjZ=U!2(ti|d0D#%A029_@wsh(M_chQ>H-l5uXZG744m8%Z#J$B`)m8-i-!jID6P3C9)!Lx}`(W_!$4<*~$+~{UWn7l3(1Iwj-waAE!t=}JQ4X8b&ErJJ^y`Io> zO}yh#dhm$GgoQ2Oa2BC2{h_E0}6>RJAgOSmzZ0)vY(mvl=QzxHQBbhZQtRZ{8f5N-Go5ExCMYOWq9m zVq%p-{9^QuFbVVJbH;#@I|E!Y@pl36&{MC3BzTpoGnet!!QZS^OFUZTkcl6)Y5{N6 z?4HpPefbkTVr@InqiqAmRRYaz8xvz=qxJFL#xP`9zjI;~63HevhAP>_={&867fsfu z;CxEWhc*ctD;J0DB)IYiP1ZZ29yDT3Inc#xu6QMSLC9A0kdf&m4>J878f5Kr{uHlo zd$T~nRj~R!TIC>EQL8k;YPH1UogS^qFH)kh?G>qV)}dG=QAv^8CIKRPS4dwhxBnUC#dNqM%DlHXn%f@6==0rWVgo+o)U9{h(t;G z?3C|EFA2d^3mEOL@t~c9L|)-1k#~8t%0VKdR%sI1DW_c;^^^iey@x#7nP2im^V=(V z+a#u)5lNC#*AcxNy&_~zK4vs~&VyzS68E&9#Lc?WdGH@NNLZB-;>!5Ty+J+P2u{bY#H3iwDwpr)UrP7oT!&&@*_ zq86{}4bDK>5dJR#^ALOxyRJapKEMU9xz~x{R~~}k4XzG@M6!YEn##n`IIanc5AzcX zqeIe0nk2e%_s?0!RcFo18|MjPLQF$vtbrc|>>8@BU}iQ%EnsB-V6kMEOPk+^fN5#7 zH2mmVTf{fvlpSpWyN51}orb0IVU?kwO5aemban}SVw5)-32bsDgW_&vbW@%)vVFN& zvdMJDF92Ym5@p9F7BFL>RAH_odaoo2n^?pcktQNXI24Z`GfXeF)M@BrQqurJ10`23 zeUC780ikvuEw(n@Z!z=>>UeA`=w%>&vLr@Q&2i+NirPz%FEiwcPRGqav^WXr38UV< z?V?`TrtGWMGx>@iZC7(2&c*EDPWU`+WI#g)8kMTd4jxA|lpNM<{3V^!b6AniMwK(> zu-d*#4Ad=C3bj`!QT&`U9YYZ3#)G)e5Qyvx%C{CS^imlXi?y(#kz<{i(C8u4i|wy6 zlhwr}gxE>@xeWj|+D|MrGBdL(iQ`1n5qk32lRYgpdEh6l=3>In1%zrfT@|Sd(a5ey zD)DtiveMqDNVczXDbkkCbj+w|1q~w=ESwrm zt6OSvQIn9pQqx8WKNk>rG;JKw$gXKB@pVnJ(%z_Pwy$z&+FP9Im|N3!kRgszdCkyh zrB%nJhCY~fsRc}}E-Y5;q+0z4k;|Y~SeRd}<`7Bv&^3I`ZX4=reZ$--AX(DHyodV6alwej9w^AQkn0yWF^E#ZRr z(E(T|@P^cgq0GBxpDl^%OIS6K{6JG~nHM{Frs)?{hbT zc~Yg%O;*?Z#I(u7m*OLH(*L)mZhtPxp*VZNH12Uo>iIN)2hX2thV9opTIG<`6SWFL z&T2w=w$$xQJ=&H(nMX9)rDwCGZeJj{($>`NdpyYGAXs+_6kG-CS01f$5Ui+Gnqaj` z-G0)eRry6qG`77WH4Rd?=Un4HvvUx{nE>9y!for(DhEM~TBQl1DJz=|9ZWB=fy8S( z+Mi!!1zPPD+4iSy@9#l72Z{VwKZ!ibqg4(P8MR82NcYt3w|KNOzvPMLw^#Dom%2Ub zK{E%5JHt=n&hcoKgTzIx(j?9;b^F5}ZOkuiqUnW7n;$Sk>UPS!F8BlvV&b*EvtP}| z)-v%)+o{BoXF-0@@DybC)a~XD>GSr<7U|q6sKpba1P$K}I7j=e6q(K~^0;>a8V27* z0i=xX%i&j3TL-O7|K-U)>K+a895?OcABANi{qY<&5QSk)_U!L6?g>$948kf@*nNrC z!>pj%ca`=l(Or6Hw3BjUk80NsDO_HJdAZrD8E}Gm1 z7W&H!)%y`JWvEKw#PRi_HfE?Em6D-KNmcSWZOq9w?)c=Q z{Hd(Z7E50lZu=tu26B>jKat9ch55s69WtF$&Bv0DnI_M>)?BBDB*|2f*#Ou-EYl*D zHE|xtd_+SDyrHocXY$}0oG?&9YaA$LP-TN2ma%fd7?x@M)n3lx%ot^>Aki^ey7iD2 zWO9iX|4kz4!E2d5`Gk<_^Z4QkIq1+=RqU>(PlkWv*1NdMqB^h^Hc$v>#Yt_BvM1TJ zIeN&5c5t!ME%o>Sl5T?@V_|+h&Js3XZK=tFqf&d{O!&EgU}5uJ;B$xEu`?qy*dUVJYf=quM_@GGOV<)ofB#+nZ_uqvC_b zO25?Z`-qB$P8|#LYj@UcsV6P9xu|EzW~t%7CmdZsTxEc+;a2(^HN5p# zJDMbx$(#*NF3r8inIE||_fD3sN;7SuL1lOp^p?(t#@$p)sKi6CBWJ172VNx_m^bLS z%g*xXm^c}ut2879ovJh@_Yn>Yr zp_4le&!JbN^27$PTCwQs#3zhLKTHxWj>Q^y1WcW?-WN_*Eq+A&iE>g@#@NFbX ztgV|q;bKRF6>pVsk%C*ScCY~nnpR;@-?iVjiZ+3U|U|&R5uJ`J_WUaap3i= z8JR{oHV()4^u|;OQx_1bH^w#VVhy69 zcw^9DTe2=xHt60MD;JF3nATr)Dgw$_VEZ)D?YZPr9OcY{gm>d`0+D??ss-5HaJ`H= zAhT9x8U6lWWN2|ch}6i>2n>m_i99GQG}YQJjr@+KP8W3wc_}sWTZE|#2vsA4_3*hv zCdDO)Ms|%<*`RBrl?z6VZ2eV7ESgLoZ6D^+$4@#lAh$lAN<%(UND8mepK#9jI1CU+ z>kwLjR0+sgY&2@P8E0d>I@VYUu@)?7l=fZGJp{>(o#lQwm%I;RBjVt4$a6$6wiC#+ zP34|I5ow1`KTd=;gio>1RBLvfo{hb1WYR=U;t><2e^}~rQN)BU|BWzo0g*?SUq&>t z>#|CIU6-xYH|lchuT~W+*^G;}+H)C%UpsTrU=Tc7A;S-c`nE!bA8-w}OrnARGE zt}7VR))2G3$Z$QeSX^a#?(qQF%}W}ROUen7YpUgBb0H@su^X+Lh|WqF4abV5p_G?l z1e`}+wq89kHdH<3Sm>9#AggIyIsMbPQIasL^dUc?;Qa-mnWJxM&Jpc$=w8kvArk67 z^AwH|mbrKCM4;J7Qx5HO7HBSJBM*Hu?Z8N z(>S|r#PR51rR97NNvw;+BrGQyjzTP_2O=`S&z+gvi|7GZ2Kc$}Tepz506$Gjvjq6@ zMG@eC0_Bzh{Pb&D2KbMxjExPg?~PaL_=ouqbPDrp)wVO(zl;Yymj4%>Mb6va@hGIYL&M0MYjFT z20Yr9f5!{aWS7B2OO5jbW=OzDG14xD-%f! ziS95;WmsqhnU>I?P(g&g|HgVZr-X*xj;aogfkR}?#7I9nLokzp`XxCGi0viW!z>@L zj^m>q(%m4%?q#Q6#C!e1vF7!*V#HhfG|rE|y?2{&_h7HfAJXp}RXp z-$h)e9xy!RV}|K{mO4E|L&iVvAxvFBsD2yQjD(*c8j4>6t*<2`L1lv;GqG}ktlyl{ zqvu|rxq4cE)v1UmV}b3{MEB;Bk#MOq3qtcMcX;?7fykbb5Y8VpLk9TI2LE}AIAu|xZ<2x*n zk!2kB=ZuehUW_cVXJN;=25eXxKV>%iJH@J+j3|E#0lQ3iJ}{eQnK!qJ9qXktD?=0U zY(?0qL@C4S`eLz?5wmN2tUH?z?Zv=xSz%YunhQe z-=Hq0wtz2<^s@wf@kJ5vU3@eAqJS^`nw|mQ{=sVh8NDM_*kJ^AIcZE)z*nobodMrd zxJy~9IkCnYwsaY*j`U&*a`=<_r)7J0mHI0EXTT0F{SX*l-!dGm)f0K+!v0M!Wd`gJ z6dbn<pq;E}9I9_6EviJ`B-=7HJ3kw$?N5B%{VzydFrvob_DkK+@kG7Wv zXG{SN`1%5!2)vZ2kg|~cgY6~5`BOlK`LThF6ep2Mk@5-=M0w6E-WS_TmCsE9Rkk3i zgndOsm~w(Lo$|HlCDA3Q1&lVAwwE@S5N(`~NW00SRSqcxQLD5Rf>tM4-RIG&ff5GF z(}JwcZ5tC~W3cyIZ(|rXf_dk}D4Z=YxiK7fH)ldGP5bYN#<~nlEy)80`@2nI@DYhm zQpUDW-;G`qQpSszoIUA5JBLo{2|qden@6i0;}?whw&l1sgxn|k#=F!s!r%DAqabUfU0 z2UEiFxB=LNXI%}p-+`TV#_FT})dtQNaUN;bYsG8J#*oT$Hi$g3SoxQo^I;_a1`Wr; z0yLb~<1;i!Fu%TLIs4-x zOHD4SmgtW!B>Y@J1a?Yk5f8&y5-53( zB$#U6v;0nG>{$t;;f}YN?XHU{3sq3cz;*~Yj|}W|TzIS&Z8UWX&Qg0|)OuRx-KIJs z0DOqwRS?EGjCWHu&B271q2ZBxSl@FB%iOz9vh67Y+CweST!bPIiIRIxwQ$>}l1GGD zu&B{zp4bx|3_kFarvWWw(|pB6+hxisE<}x)(HANOJvvlrR9_2(baPjPHboj$v?+xc zRS!gDJ~9v5@o1R`V40811HiiRwB;j{`!!2GGQKGCkuN~GrhH`jH7)azkHAfVibzL3 zz-j*}UTZtEkq_b7$h_h*y0gUIQ(eiEqg$mMZ^?o2!IWOeh6LYmw|IFHjxS19*Zk&KABL=UF3c#q&FnVS7bKvH2~htYFo0|t{`BEY~tDK z1{H}MNnR?3Ec5{r+K1Xph6ksB3_B!FhbJAE;-d>l%E9k!)Spt$X!hs!((F%y+bbcX za*y*S&zUR-hhtjK%w-WqVqyn>vsTT#-8_^v4L%)m{GwKQ<@jyo(YE|Kexk`PLyML= z=m*S@ z3z@#bR4#jh-`+<+_XL3%u`sKv)Tj(&&R)H=BB-5#2T6CqNm^Z{Lu=i5Te)KSo?OX1 zzGq6gpNHUEGQ?5=@Ck>>B3g(qeKf})VDiyOSw$Da zqBfqJH64-;YQ+*%hB&GKIC9Y>k`A!Y-AAKuWR)%H;60YQJVZw33B8*zbOE6{fm}29 z&P6noAO{+3OXi+Rem%%xr9O=+(>Abb{Z#=;2ewKQU8l=dSAEXRN<>n62}JfBziu3w zYa3nBBiK9ZDS#huECJH0u8W%0oM{hrTP&rg{^KjD@CJ%}z#Lkrk)j z5il+Ww>H%#AF~el4ojUb+88oeD)g;{sS5~Ip@R$HbBDygyAX}+3azq1S7<92j0)ZQ zs|6NuWh}9Q%B8md<;;@YYWw!Y+*2kOzygt|v@|?=W|dZ!)acl*(RI~<&T^w#g(F@k zhT$xb_|4wv&3G+IQpZ!~r%vd9{WC1QXfQvnO}Yk!tZg&m8um_wWyYmvMr?yyk>D9!kuN|yqAR7G$>wmen91;70D#?W zN@#YaR3LGtS}Is(1nYfR38UeMilw2Hjt?T>Jkqfx=Bvt72|2vB@0*p90`SFxaLmzh zG?OU+E#`lpBLNEC%G#-1Smxes+lJ)dw?K3me&ivMoGm!?u#8MmoWCqwUN$m$^cvDW ze1>@ALYIVnK=mlZK6oG^!~fhV$h~nMfMxifyN7i=MN<4OhnpM`0;@b3d2QmZ){MGxV>;C)8>om=N|v z<>1*}c=T)w^~LBlVexno>#^qCX*PZamCO^;pP8(#+1%72eNMP2G?fVG&yv&+P6fXV z#x36={4*BUTO#20*g~K?v(3@51w5F=X+zsz><&###KyRY zMUgSPD2HbJQV?We(-hS?l$_SS2$#Awr#vCSSb5E$$8nC4j z8-+&?8O0A}wev36V9spoz2yM>U<6D9a4DoP;=EDxmf?KA-FHjz{Z z&@CcN?_U8{ZGOGF2DX)4TZL7QeTatQoIs58Yjq<7B9kbY09`{imw)GrYgZy zMr9kkM89F_pF$%nhvRP{L_Cy5ZvSwipv8I6IV$-*QucJ$#X+&`oiH)dunT&M;f`d~ zOWIkD5hPvO`AduspSJMTgNRbvC!P7AN_#K?pPR!k32Fa#L?gSj{~I;VEbUlsm-gKg z(w@dyMrs?-Tq6Gw!p4JJy2yL9LV8b+_icsrlVLBFa~^!4Z!6?Hm=6KCsq>(aoCova zpxzzZ=E0;5S?0m`qL>Fij=yLgOuwe*JUCpM-;0sSshS6?b+&UJd@P@dsMWFr__0bI zcC-ukbdGm6;G1&W=FKW#-T`dEikL0>2TDggGvP9BFeG{A&3{c+x9R82j5_h8H8F4A zOHG8&!mNl1?MaK@?k;D}xtz(oHGp>;q$WHB@=WF}2v}Rv;=9^QhVm4UVXhFSNL&)@ z1N3ro*+&nVHm_(eF%FpmVz9l{_4NR(kjRkSc>UD&(%|GNpn*iyyN(1JzC|kN+fC(_p3Bp?KpmsN2~I$4-t)Z8FRPn zjQoHZ)`z4FYl6*@QbrH>b1)E^S`RoM<&X#bHfUnf1I}JFc)-RVsxuMG813{}PX9(3rdjMWr?M(c#kQM4dj3dtfr9Q&=xE)j#%7v40M4yDBx4p>7EA zxSQczjJLh>_(~lX5sg>tn#Wx&V3hwIYelBXP&Tjo;|Q3%?ou(@?RB3H%TQ+h$bF7t z5oPIAd@n)11~ENYJy_vn@l}u~-b13|0W_HvdxHrY(X5&&|?;1g}Cg z6t^k%43;2)O8!I!tBv}^u(Ys(m1p!-0n1QqmAH%t60wFCNgNIS5}S#Tj@SPo5ZRZZ zoK8vnCMTZu{R%lE`?Fqjw~6U$lP(b4e7 z@uLu2KCxP<_YW$bCOyQKZN2(&#cGDs{bNWo47!hn`E_4OI?J$fWx!IWhfGKtP$5iR zK&Un#=z`D9p_7CSSc7O}w*e{}bQ@shg3$)F{%TdR63#k*TkW}w!%@y$4DE}*aX4Cd zl(bc9VuXxNW??1DkYtU|`X}o0p=LTPW+3uFMJ@{BYxIzj_H!s%Zcb*K(Uhj((?nW> zDZoNgt=WeGZl>VdmO5SZIFtZs3cg90x`4=I3cibIWH$vW8+21(<$}=^wEpT1e$ve3 z(pF0@m7jFxR&JGFUWMsxayWob$FNt&u|PB}hJgX9Jx+>46Mz%vX!e_2#+JqH`nzH! zU+VZ{L`#E?W8qZm_}?vcx+rKu$Nx&0x`4=|<1Zl^*>zlHgRbLNE*N#Z^;b(#OkE_H zX}1l2F71BAnNRt(JB|k{JKZC7Xt5OSa*r9Vu;D$N*L((QHTtxoj@_=^O2~k9<;rtL z*M09c>zs@5hD4E?z7zl(C-qpEU(>?{H|n51Wogh+mbyGJl)d=jgrN(FJQ{v9qLE$0 zRr2c^Zl%6a!&`sV?Iy!a4sFnL>35eimvZa(+3KG6eWRm8G@l=-RtMm;3Xx$JP3Rj{ z=*vO#@rzLXM@x-STnqy4?#}8^1H1RiNNII_0`{qx!1FF}AEmxp_du;)?Z-Ua%225? zw05*!8y_5QScdrO7W&LKs0EBE?=4n!q;YsRF~u+pz`_EI0}?(O1&Nww(<6rAq@^ww z%}#XxA14f5K;$tFpF%XU8wZvAx^b{l-)J0Kf3-gr*MOE=2RIDWtq2Cgm*0u+H2DjOF{QlL3MF zc86H8_g%OjGb6Z!ZWE!USPqQ|z6Xzbg74Gy2b;lz%iw3Ye&GsyI(R@&a3vLAMc1q8 zdJSE#g==sfUap7BF*Ac3#O+47^#nK3^=7)>f(5gJTcL(y<^;FmUvq-nsOWaO-T~JQ z!HrNp_muf(PISEWNl4 zG5R519>kL1r*!=pU4Ks3hv@nXy8e=`zk;iv-oy0wBl!0-3*d4a0NM~d3V#EtkHKx# z){BE{;bBj3HP&$rUY^A_|BRO#sN_0)cs*X8gNMg-1oJ?;HwMq+8-KyeT~M|mxE~sjsWzk^-`He78tc|jR$Oo@P^iJElJkmPJm0Gy=gjD4ld&* z&2y90l?SU6b=b+K)=xX2ca_#*aDIH*-f8C`tf*Di;+%a|xHa99k?NV%dKayg?H#HO z*T$EvUb*V<-eXs;TDiKbG+a3gx0GlsTebY;-V;vhIZ>J5U#&H5pHmK8G!BPh?q6C= zR9<{gSLr}FIJ3XEQCr*F7_0PG_b=1z{hst!|TaRA(tPvF(x<%n-EQI65EixGO4s2=d>3XicKFBU&1E8oE^ny z98i25cI;3rR&!`7jZj3qyKKsfb)8G&*%tDAz9#q9x;kt?a{XU+5Mu)`ZS);%lW`4VS?pSv(E~y z{6UlTj;Mo;Xi!crvl6dFF9_M18$M)YdeDPRe}@KHyQDwG`{~>#P;eEj-*~jjL9n7$ zX@b>i!N{LIT9sdV6XUK95#8NL10EQgWItf+Uk|Oo-h2C(_6PR~`MUN$ z{XMDe4?}*!`*?b!Nuj%IUI>NzsBW@olAdbbTy#_+d{h`&u)db2^QT2^|?kkRVijkEe`>(<~-cZZv9vlWM8x-ZBfg* zN_}KYm#S1gtTHrI=^Lt+&Mu)7hLZiHq0!gdDgG@+H|04a+x9D7wy1zi)Ll%Nx`0s4 zR*TiQ`z;20qz(YK0_z68{3S7xYGNKYW~zyz&6h)-=yco+M2nMby+n0QJEdQ712-YXqiQ<;dbPPe98xI~fClJ|<>ej+NE06MuWInlwDe~kp6B<2ada(gH6nB2ylDU|K z5Ibo<-zTt3x1U&Osx`a)%yR11=PfmP;3uu-X9+(S5USO5RirN>8rc;|CBCjmR@xgC z$@Wz)MLN%!j=2?S=Y%smi%#YBU*A)#BuY)YlPG8ysbJyMXxeWqHMyus$X=;wj}m?^ zAo6J1?+}gbnx+z8*EB2bjhbfrDwn3+=1j-jnzn=Vsh7%YhDIynEr$Q9ubp*XY60uO zcDm0j;4U(g=)krEz{Uvx7Uoy0IYg4E8z&9^lDQ#qmQn3WMm9kYFvOUJfxrekg$TM$JMs1t*!P!>It@dc)3@-Y*;(~A{5 z*>#;tfKbC?)tHU9Wfzz?;by9z55I9wlUAK2!Bpi*Zku2 z%o~>iC3C0$w!@_;Qqg5wm7sRMlnjo5ThS@m6^b#9YOnS6GzsL%- z+AFf{Pb~hX2kjgr@@oLzLn5#6Xw^yCB{FK2CXw!m#kYC1Gr#1C=C@b!+Lu`Ts0Ym) zB<@!L-b3P^_Gr~f*(EM&l_qg+iN!B@v@yT5iKZ7SZGONEiNz_CykHJeDqe#+EfR~H zJ6mS+lPxliQ*bnA9RCq!z3s|47OBRRbo|<%0F5c>xEp>o)7I@arFS4Y@aEMPDx{rw zqi|9TYoBIwdeHRjsmgm{9&f2JI9kWu`)Pf5X`+Fvy~9S8XnzE`haU@Xx0kuv^2RIEGMYQ z6xbsXFr~ms$;JL?5pS~0)GQzc_NbH;SPFj2=d@iV+p2m1w#lfB^uvaiYfAfwy{zN& ze3DsSN=_^zu=1SIw^}THWf-plfPtJ8HAv*jVxdXJvgdla<;uRxQm2O`$vF8s!qf$X z8qjNzE1Ni_;%r1i3Fx6s7bn%=YLd|DPZ|7_lc=&m5BFHPU<~)P{%S90ab_ZEtH5PI z64HX~FVW&1&WuXLlTINJ+4D1Z*Yh*Ozi~ra+T43!E$nU-YHCuOqx4Ls%F#ncwC|!A z6xV4` z2Rh4*D(=reF^rpYMQ_HtAt>8U=_^|D=8e9DV$=?8{~IyD&}(C%sn%k(ecK1jHMyv2 zLff|nz>bUaaG}b;=y0VrGU=-A+ans;wOu8?uI*OZ8@0XlR|n^nab_57_2n`QFHF5* z=uXd5h0MAoCD>jLOHu6`)&9|u0ZSjQW~s7%TrFT!Ji1uvmwovWB>e{M#=`vCoi+KY z*HT+94L_A|bODj4Kd&Gf*)?2cfUe55dlprAi-onrJ-UptB!4%cEoBn24^@=*ZCe@B|9z{b4)K z!HKnS1arMM0OJ7gQVmw%AZ0QJU1F_TPOMJH*_#MKqPt&oYU+!M`xz#bHmCtdImh3*ZuopeFd z{wyb5;EUqShrgp{(@7WftM!==v^J6re`F(bJl?;QFnDo^Z_suhc#RD8lX z*p(z{91AvZ&}IAGGJtn;Wmu9scPC(hp4`a}KGnA)W`#rrdctV1qP;XYWD0078^`)a zVc?}i1@VZH;nen$;p8bGgK`>XG~LhzBIOk#i1M6KWxTyq87rPDE~5>pZH9c96q6e) zLXyPhYhw@n8G3(`Fm(Z;de&SMXP!Yc z6wex3eM{nu$_CxDX61sI50oA~_X6!8pVnV>Dgw$_VEZ)Df4Xd0cAql~5}vAi2t@Xj zm<4#CeL0dq^3LNEyH;kIYb^e$SvOpSEW}W1hSMV^H1}KT za#7Ea<5I)#B@A6a_=xZpvlnO+@re`WpWo&F{eQ&&!Z_}j$ zX$@&-D$t=RVLh$-GLAZXD_!KU?Ct9+#T25G?Bg(6IdP))RvIKeTu79%UhjH$bC)L@ z=;~y3%?mb7HV`|ZYDt2GajaZV{n^#dr-=B;?4P;f!{~)X`j1{ty;Ss&G3{qbD#lT7 zlPz}GK;+TpaD)v|Jp8Fk)b$6G|pB%LlA4InG1iGiA(7=Wbo_#oG405zM{F+)Fwp+rYNLrJQ|7fJc zy#CQcCbI7>mSEE5|84*b^dUt`Y%PO@?yd&?zyoD!uezn=V}|LZrA`mgkgora6Q(X8 zRDXtRhRmlB4aN13w%C#(qq0GF{ad*}jGL2^A=CP+PDMl+3v8bzdOep6nX{Z(5RR?o zp?(ttB725RIJMN2Q!F&kq@7vD<98x++YxfVRbZR0omgn9HG9Zisv)yN@-Y*QUt8*Q zQLT`#QagV|n7V*awKMn{eD07f^BAI$T{~4a=-O%Jf>AqLf3>+Pql^c(Z*!^VP0l>X zt)A0x7q^`rGOLw~e1^1w>Gm3y+COmqyeXH2#UOKZfG!f5M#FQXW%CI`WSgd4>?Ob2E zloEl2nQDn(k#;5(tc20(xu!|ELRhwqT! zxO85jO_bvMEng5)e35&Fh_8obmLX#9F5-R~55O`+%>9G9nA$?bG}6x!BE}a*i1-PV zLkbbouW1<~J`Q7Zg>DwH!f&$(-i~$#h!0N*5cAs0n0_px!(GWeAzQ_Wx8%SgH=O9$ z^g?EnXZ`{N#%(^ICqn!Wluuq=^Apn{LaY-o3Vj56fOxmojEcyg3=;EY4f;ZOUP@!| zluZG4a_5-K{t(*%_`<@&TNAKEczCwzD^5hpd8r@+eZT~FulACmYYND)Lt^h&(sL<3 zx`5=}|MjT$(rks`wrjxnEgr3M2pC7LS}?}qn7Yt!S!dT$wpix;&7 zofa)ts3M}0e`6gW_{g$Hi}yYPk2i@n+3G4aDzKF-?g+mksGWgZNOqN$@7Yy4wAPKc zl`EF-8CeoB4)FM%S=^6$=z=AZNplFCv`yy$fMD8(8Ro#WO%qD~3TpKpyut-mT@{iv;yM33qcjK0*FSqb0w_XtGx zV01T**tJkJJ%SV`oNLAXSOdGTsG~~ejbxh)Z2n8LO1a2rB9Ju?02>t<3-c?o3_mkB zs(j2k;gY3J4@{*(znU<00ih~%@C3+*LsWV9>_`1$pX>Zi|)?XEStck6@T!!IzXTBK>gGVc5Ec-jYqY4@N!HGxC(9h?^z@$AZ z$G=mo=E)h?w-B()j7yJYZ!-j|hVe{_$RD7sgik4Fo!0fmVkQHE*Z9h&lnNxyR7(Ym zTC;%|D`7NzxL6uW>G%Z#&LbVgtto%5ARKda94TwcTg?BSCIJ%tw!Wqu%iOzd>Qf9u z^3GqGAx=@>+LTRm=wTU|v^C{6GI{hG(mp&zym6sR*mp_$fa+0*eegg;CJb<=Aos?3 z0G0^@+(oS00b9ZVO~SGy4B(3*VPH85@2_7C7y30V69$f^;4H@Y3s_BlaE@F7+L~ps zzh`{1B7}1ANZ}x+lQwu*Te|cv*@Z=(;-jIAlzw}PvtNP%bM}|F~uU! ziZF)CbJml+-Q9%c$pUywvbyF+rcD+AaXAiUB@zI(*7*>TI2rEOHU-whxmvN9w-9u` z2Kt>za>deRGNcX*!iNETVG;it0ZT;u*+#579atezA$cOi#`e7)SM0k#j0IfU~KE9141wIw+0xZa5yzs9ptoT64}^;wCIJ=PB4iTg0oKTT!DtOLBA z5sMGzOeQu{Yk#(X|GJ95im`orE)+|*VeFh+Yb=NeJme{q*2Hov#<$@SKrYw(c{gv?m0o$i89eX&1mtKHBldySkQ7(^uTFC2pd`r!^ zR}1t`t!)Pg99gWKN{u{>L!23qh$y-0d?A{$3*AbYXI+3I5)Ynvf9E2mA(f;~e~bui&}l3*)tbGR&6XK9_kw$w$%uf}ohjRAw2L$Xg`$-I#&=Cqt(k6!cV2?7G$A|O$ z(Ge}yyuk7zlh&7t#Z?X`U-Xq$DJMv-oIxdLIbosYj6vs}A2Ih4E=D(0S1B($A>cgn zvi0hTv7zcIxG#BEsWvj6c`Nfd^dX=8?Ntz(Ir^4n*e-|er3+de&7t+cGnTn`?!pnA z-0S@a3p5uo$U~pxUhggDwkmmMb!q3^<)9BG(J@PN>NFsaNbSo$Hc_cFQwzu2h~v?> zNz1thNvw;+goZ;}PBa{aSWXW_WH_EXGx>$K#749Df1I zErsLh*R%}BuR5bz9qX-6jEsQGzkrDRp*VcNfHi>IcVG$rs@9kE)vJ|(@xfl&xi2j+ zuC}6`YxmRE6smPYFedD}lY6&sp}rWsCMJKph#9YMxErrL(fEs!)iwWZIz;0+@uCo4 zA|O9Yav(Sryn(pH_Z@JD@rPxRjEpsg2JNwhpn506cR>n4g3FOeQ4O}*jZL`||QLbhXZj)WPuCg8gi$Y{nsyy49q(kqJ~i9W{k z663+VUjwPy;p&_XfZG;kd;bd1t@-up8c0l7TZLm5=OY@*U>l8~CCoO18Yjqw+-X~%NA zwC|pf_B75iQrm#$68YB?HZG(#h`dKDq;L8KU&WI%=id?tk5)+E^kcrQkTYjK1mK;p zN89AgnGXr|?$|bSCT++vbH*3N%=yFki)POBYkJO{!()nkkXy?rN%_-9r zwQjcO-B_hw9RbHNBp7y;;=`xIpR`@;vb}9HZ51%@7q(zU%tZY^6dJd&PoA0fmy*>@ zkNE+kP&~~|%(VByNM^K2VHSo(j7X-&^K@swWaulB>TK0qc8Gj=3TQAt?g5N4k@5=BLwU|5W9Rl#Wk&$tZfmgxQ6=mQ zBf^vu8)$aQ*P@q%@lXpGZT4+1ZI%*koKF&5?$IiTjUl5}ahFST=H8rW@HeB?aUQM8 zza^w-tjln`WoP6E%&;;iWoQ$87j3c8XZ|@T-9$cfKHMRn`5183;4^1$+kEEgi)l-A z6nY5f>*tX`@$l2hXI^`2wM1)a(6=}~SS_usomm|b3vFr*Sh)ksbs%L2OEA2K%XIoH zL;Vv&VxdlLywTY|3Oh(tU@NZ5zySK$>(yaczXR^}5-s@|ov72NTpOmaUZ!>HJ+v;< z0-b3Q=~5+UGE^BMB4;wZi}BBQ9$%@$-l4E+OY_mI1&sP1Wv$>Y0uMio^wWPB0h6Cz zDhG6JV4xq3gc64wVxhD*oQ>wt!%6_ItQ%}*%P+p# zQkRFw$o%3f2tyYTs-x9)_0F}3hT>?&e!>z~P|2_77h9=M3`+|{wEn7qohNOTxC|2# z(TOiRGb`b${UU+L9-TOy_U$Vl39gDBm_F}Og7_PDgY+2U%R{v@s<@JMyxJJ=EK^Cf zwsx=&Bh4eQgEDr7!Nl;G*ufGW9SwgRKMEn~6RVYa|DfW8(t~n*Hcu=~nXmr^MJVp| zxfZ&Jbx0|x`_BqWrRzQxnrh9i`)(`vHh;`qrw69e26O;mx5<`j1A_a27Up2fbF;M2 z;wuo1>^4AUgKh(?Trk>z)?ckER>E25Z>v3*arhI-tA`-S(50(!I9fQGw2f)SC>j0F z;Y#&zH;Ew8}wZI zeV;Rza_jfmGL}^;_l=GYk%Es@s{_@6Fs(M4&^M~kmjl)Ci;#4qrN$^YItO88NoRGa zf!#ao7qGfM0Y_6zGynn~pVU|D9;nr;{g|v<87ftV){fR|*0b|PR z9yhD0i`<74mBwK=0BrR5VPOHr0SO=3NnwU&(<6rA0hYQvFqGZ@n+QV}5P6KlGDIW0 zaZt&x8wV@(jmDw%S8JzA{uzI5?aF0V7CQ6SU{*X@A@e!^udg>k=5t~+Bj-xU4Zf}D zh(iE8WW@c89u$)KoIG5qhiz>6oaAuJlFx}RihRx{sv+fb(yx5^oVn0``#lL88k~dA zjG=9jzh4dx{xNtG=kyO%8jZ~*5%-6 zc&E7sTW{Gd)?0Rm>n-8WdSkqMcywT5s0xi{OA)kBQ?C*}eGd$9TC9 zFZbi+PW*6j@DupmGuYV^JODpn!O&%h(GT(RAeIC_rR&e=`g6KIMAu)?^_O)06?w2N;OEBRaZ%UJ^vC5`dIestq`$9% z>xSSK{5|+U4-9*L18?^PzlAG^+7oa)XEOMMxIHOue-yW;#qG!91gN07i4KGP4VR@nsnAp(Nf1fJt4O=Wm*| zwrqhlPdXs<;|LW{`D7%;X?XeLeQ^0RUbc7;F5BSchd+bM)p)^UUIRKE7Wdr^-h!8} zzzPMiq!u%N0!$Q|2%Z-3O8Wii{kbVaeG~fuYjKbXDe~r25vpUE5#q%(H|;KpGB!U6nLt{wk3O48Vbt6Dqhmuote|f zCJxjBI+HarhisCN?GrZmdf;(rEj9lh{Kf3N%g8vi!v_dEd|wi3bG4f|4vh9UmRd=$ z1Ui&ZzQD2v>oRH->v?!*(wqmOntBbEn4Sh2dp-bczE*TQ2T;mVVl#n=8 z7N;(XNTF5S(-x1^w_v4p^NlM)DLR7oL@1SMD1l*WYxDP*Y<5{+Si<4DqnrImgCSm3 zc^$^u$CvHhRZ1RyzM@uHi&OAbkcKu499}X~h5e+vXt8YXP;Iz2zHIf%RfqQ;yK>da z)m^3G%2~JzMPu2j-0y`p{VP!Gl4To_|DLZ~+R?6U3tqC(r5kvtH{${|owg59} z`2A2vCAGT=dzo9{1)=KLR=2rHB7yX(7})G&Tbmo)>;@CirD71eG}6;0W9#=v!vac< zyNa)|%eyYl@xVNIMB~A(tXADtYnuwRdYN(WwMmM^*1^ENa_}S)^eMO)CI?@KPAm8Z zTtaR>Y-2#MJ2oMjlLXIdsBg&?k;|f9$WYtY2ep^5sV`?o?HLEu9*0#mN~hgCwVg&K zB2;n-Q%6*-d_`ZaF;~12y&x1nddP^p(w)dIYc>uC@X+_JEOE-sT*jLQf3sG-)uUAo z8Te7FVDzu@vsDIu)uUAdfO)#5Y;N0_7#ka{kM}l)A#3`b6QhtBHn}lWxhBrfDYH^E zR-aSz2{Iq1Bn+rr4z^tI;}4o7m$PIW5ceh772XafE zXnuPoZ=1wSARN=u#qgRB?{eSk}1kSFaN*pF32}!eW0YiW*0rS94hgBpHFc6kN z5)i`Z2-v*tew}`o?tcA$ubU7B1sM^B=fc>Ij*81Teva$7Fv5tqD~q_}HtvWDB8Uqj zZhYsQy7yL{y0_}xs(W8|`~N)<&xKoatnSA!;PcAqPVn)u9qrpe!vX7|A6(^bcjx}XeP8H^i0fzGO$S2 zIw^8J1umx8FYbchzZ(2nB@oyyBpFDzN1m%@SoRBhX=<+ zQQzgcb%)~jVv!_}nTIbDK?QBhe{S80r&i&Zvo*mQSgn#*Va=s4$?STyAMelVTXz9G zg)8UMScxL_9hCIHsn3C|JRK2ZZL5IxD-9I&n09G|`+ z+=!w@vbHG}vTzuYS(%gd(-A`Jp^^vy%sJ1ApfgIJo5v`^?B&QR+SJ#NqM>TrvG_vO zwi1pTRCg^hkyQ)W;55p5QPi0p%I%DG1WcGqJA)(qil;N}l2-jnu69X5CI5b>J%o=T zs6Z|=B}YlqqVG?NJr9gZ@k>UbSCmU3nXPm!00x3k@=I!eA{I*N;C#{TT|%l*-=8SX z-BxW^`h4&=TUs*MESsBE<|_Rg;pYNEHAk+y6W@YpD7i}9E~$owTo@|x^;{(@?Txug zwpyvFfMw32S`O;!)y{N`KwO=S6IT(4{EBoy%5#!Or!w3qOuaJ7nWlXeS(sQvF7qy8 z6rnFQ?OuU?wx(gBsnv2d?Pr#jJn)m6c0b|g0z%ca@Iz2NYnZ2b08KIJ^Z0ntUmzO! zHBBYHu4z`<8#T>VtB|JM?M%nQnzmHBeuB#IXrtO`;8I;eOuN(qrdIp^!Ytq}GLurP zeE_g=0K>xKYPFC^5)b2Itc>0<99LOd^T1K6))9oG3y31BwHndLuUaYtbk(xb->6!) zT7^_=PiHz7R;^{Re~ZSh;L0G6dP(mWQ!e?MiQT2;ik%#>E+%pr=7v~UT($Dd4W}$E zx#&d1OQ}{(!p{Xn5w+TeXyjL`i1?|=G>8zlL_6XeCJ?Xe7Qv!E84pF*JDb;VzNK3o ze$$L{_-$SsCNroTPOEkq4X3SEA;bBP&U7>wPLE!^I9Wiv$aiKWcLbnAz{`iSD|ifq z8)n$I7mE`R-0Q;E7+p$Tdrp6UeY`%|-)}tTILY2 zWHu`S@+Y%R@vbIq&Qw;Lp3}29L7I=-$!lh&pK!N&MGiauUAnpUO>-qjEMZ-o_zY9} z{~Obac6-n~Ycfql90Hg<03Imkn#8f(qgM_A%(z!t0JBqC(GecK8Y&zh7oBw(rz~kj ziv&MrCas9soK9}8(>#dlAc&_3#5VvtSSDGA{I=(M^vXdH<6dckXi5}f1T}rcOnSdZ z|BH*PK&!hV+x={!D?DiDAd!;*-orFr=g}(%iHv)tNu+x=(X>ZDi%Xv9es?9Wd)Y+q z_n?`B#J$^3;%@iom4n2^z0xGkEt}|Wk3JTcHqrG`rOgkRA)6>;h8-?MN+p{BW;>gx zy`N#lG~FS^C<8TfiqWI6(&$2pk;pBgEThMes+48)NBGs&w@b9;LM%QX{AmWnv(5!q zcqW$okFli_j3W7SlAekAML}x>^4Z~hQ`$EZOto+qP23@QzzO&3In`vdkR2X!Uu0x$ zhL3zWN&3hfUM>ng{gs&|;M1&Rv+P?g`DHfCUI>`7S)_#GoMuHAvsn(+vst2l<3T-i z=-JR#d9!HxK)yJcg-xa7mrQ7nESG9BiqQ*zfk@;uO=Y-X;mkxaPPepVTKQX)QbsXO zCH!1Ks8I~p43{$z4JC?!_E((0jj5iI#h_F=N*hs$ulu;Iv^V;=JJ;GLQ$(4t*?_oA z2~-P7_#W=ejFhAN83ZDKn#>C*1>+5C&8B^OnVq(f@^ zs|i0B5URF^FM#R}SvJ#%Mt*HqiLYzBmG(w$?_BGYqB73p($-!f!*IDX-wGRsRoPiR zkdV-am%3vqs(q^l_g)VrH;<&pa5blgDY;s}sCYMuO*gdr^F&3%SdN9JR`Y9j-k9|d zEv>nzXG+7rM>x8GD5Bv%Ml|wkxXJ)s!>#l;YIx^b`lKyY8!_aAE8C==SJjPB_D( z)(l3bw!-yPa2*HC17K}BQiV&V$QXbffD<07_3_r>JtwU_5+c9VaX6@Vq}GHM;Qw(r zm^=A|>f#Du5H9ry#_$vov?|aXlx*)A#cSZ^K%XSNpW4D|oL~e^uNH-apVAB(zw&xiMZ-*7SPz z((W20?v75CGD|d#vf(!4FOtjjnsjsRH_Vw_rW75M_>Z2_bda4{F$dCT9W4?S;}23- z4(sJKTE;IK=iZwpWfIvj%^4hmpzi|kZkvNG=``;kV5v*n1zrOkh#|`rVhr%i>CbkT z7@wR0V(iBCJtj)}Z^fhJqRTGRijErR2h0#9&#>L$zaym*D>>^?@`LO{Y^Pv(28M}AO_B0O zK)o8BT2|tD97?eKpof9D6fA!R{7MJQQzLsEGfzU)hMC6U@zDwLI1h!9A|(4trUS6d z&L28IS6F#kT8Q2FmCBTtqPEnGAnm zjwxPV33oHZm@DDlyriw3^1%E$Y5`-zX{;N3d1RV`SVE&RVE!BgOaXH#m+0zQ!MiMv zE-2ynhXcgSEU0XbFT14^{OKagSX|Stuy|_52o}F&#Cl=5#FB2X7XVnsavJ2KR0l@Iz3}oq-3G^Qf*k^fUUhsB?voo1juuzN zT7uTfDwd6@%6mrMCr~!Jp~Sx<@)|FE%53F=QJFi}I?`F38KZ0s6w>&|%F=j`UdZUqbA5XuqdPdi zFBsifOCTJUH#?nQo1AKnC#FZ}TJn~0@VVuxnq1gyM!+r$o9p^qWM3wpzP zKTvM(X?0A|pnd@CW+){tn-;Y-VkAB#rKuIAf)&r_ev384+|{A(%k*S{VpDW zWmuX!{d6(4g{5gmpC>GhABwQ_ohXMCmZo2GGb}wgQX9Oie;hAcf>f>6OogSjX1f`d zzF6~_YfV@1#O29eNH!nprQ|b6OoMx&;eLV^yp@+q<4sfpa5Fq!4`1sa*xoT{t+m4k zwcYhnX2E`plH)e#FA}u=e!98#YiB%Yoj&`zPbZR$#OU$rlZtRLW=%Spy^z4h<*8t{ zRxCy&QHAmIi8O(exQof+JA|@-2jJbNEtbIAuL)Qxl)WS9hmj7fkf=a!7!7uR#95|Y z?k(CGz;~Ml3otj;NCaL=R1mKi8CG_e3@c`U3`-LGXrx8PCqxkCJ)_Dg-KENjGeDJH z)S)6KOgg!tM}8K6Bo=CF0i(_Hx=Wi2h&IkA^VB?g<&fSG_ex7|=yWnq%cEDt6B|Tl zT_&dP_IJL9aIcs~+&S8+c-cQcn=+P?&Ig5Lx$yvTMn*a3Z zTXAU zzRNnmL7{_4boee3CYk9wWucr)2RMwwUA5xyhE{DW-h~T`lvZsBce`w@UtSxhU?S|g zX$DPl4~lPLYa(pU8HP@YL$YHG_twB`ybXTtnE$!-zvFvcEBb~?Ky?*eZA zqpF$~rk0GP{|%^R%x%F!X&iW~4neq>Dlr+NAYAgAY36?AVk#r*`v73K1)A!Abv!^kH?YpaGK8r z_9m2sWX{WnH5X}&h#^(?^+ZpD>SCd()%=6$0vt7C0*IExD<&}?w6x`cp;X!T6NWAz zim2>|5smyRtCC+=Su6F8D%-i%v0ehqm}P6Eka|x$Gpn$ApOm;}gUUuwRnqZDvvJJD zLlZ#Px79(*2Wr7YvoTm};c^j|k+E2(^;&V;vPGiuo{{ty<;uU*@ShS%4H}MxC1^O( zEha^z;q;1O_!moCF6tR^Tx$4}grN(FA{zcTL?ge3tK`=;+)90;hIg(7@mU&}I*Tu3 zkPUDlt^Tnyg9>Z)J~C#I=b}M1lEBneEnvht=GSJ;aS_GTh`bsA8<)3OSX^K8oM3X6 zr6mviq_&<;__=^6qOE5m8u_(VCBCk$R@xi2)mE#JQuR91(V$cwy^x8YkNd8VW&RX; zzY6A0{X{IW^Y3d*QaqWmCvTai-%ze5NVng02-wB#r+W$(;IS6kxJ$2C|KC_{|7Gsn z>wP6q@*YVr)4XR1o{ayjgwgQUa%m`K;1&d2LBeiPHzB9xhopy1$O6t15Lpt*)rhGc1n7hayJD6WX#!JOm zjjeH0KA5Innd!v+0N%}NThiGsB4DX>;st61FqK!$O9dII0+ZPncb5#?W`GP!Q%BpA zic9g)1tjD6dN%9NC}%W#ZFgz*YQb&Sv$Edq(JO}}zqnUkNq+z3(YNABexl1RQ;Uu| z=m*S@Vyl^I?KCLuZj#@D){%8uoHX@S=ternPahlO6u*P5AhR<36e5VJ zyGFRPOY!PKO5GsJ0dn5 zV#N2T&y2-)S=afj*JVu@P3mQq-rOAO1;4(!w%jDX2WBSjU4 z`>y8a&4sLkCBJc=;o6Q=lQGGK0N5Dgz(Ui!+U%Uzz>fiI=gT@c$kLXFy2>cW0feCo z2-Q*Mnz|Pt8cLJ{Ew&|fPbI$|<*-tprj-jbQujL7Dk1B@)<|mXbV>4?@64=JDCH@j zI7oEvB)?TSH`lWK=oK83gR81!2y5Z!6^~KrG=qH8{(mS}%%viqPm~iwXDag#3yUkV z;?+}+X^^kk_{2N0w@+-8;23?`8Treth=UU4w z;>uWJ164?E&vj-=VYU6cyr1pgQJCBuRr!YTw-5si+K+{%R`U-~ zFAtW=_+AeHcJmacqymXE(^A1wBbfV?l`t9}Q7#RobgV?cMWkalo+}}z*Y=aMGI9V; zDGA2{14l*;qtPP z$z#-z_TkyY8yC8y>;tMtDfYnw5gGsIPC@RC^8hU4|J*yQ+W}krpB7E>o3sGo6+ zm_oKVJe3OS@1gS{CUH81uWcIFL$q44SfLPf9>xE7np|Z@@oxk0ZgVqB1o0LEmWtxD zjk-D=SRqj%eJI#{-KD`-XMhGgWkV+dFC{97S4>fV)m<_?SUwqC20bZPhG24r;Rrv1 zB#E^()!Lh(w7bFN{Y?ftiX-pxyR0~}Vu|Ar@-h>ktmv_VwHSWh!XyKn^7*63>&`&e zdsQ6xGTdy8!FFCa=@Kt1iuXCwDKU^<6il`1<6G$@m~}_M7T~RoW_@yGEH;5+lqmro z6Z(CDf~Lv2$CPn4qsw{59Kp}M7}CJc*@-S6!MefcvmUfpR!!ZF_r$QL6T ziuW0fwIzhCvO)JgTe%?Sb{Qe$&b5rEzu2m##zB|B@X5|Bh!*4W^p_I}ME<~V*G_-= z7i6emRpugO5r$GDUnMZi)<`Tgwc0I>e3zw74@{*-{s&>|0z%cuumRN_V!-c4H1cbt z$_8B{tz0l_WanCj(_d^A3+dyH&I~B5k8>dp>xU=_-B8{CC3+eLQ!F&KnqPJExt2K&0lTba^tkOZbnwDvuBows zS`*{9^~qYZI$3Y%mo(WvWNYRP<>D$MHD>@|H*aA?E-5ESu7Z&oXE|Z<+MJQx;c{sx zAywq=k^j8Nu$GEYMucMiKg?H@tUPsjB3e->V%tT7W*3nZ_*5yXF9SM7~`9DTqp)WHWmd zc_y?jPnp!70qGw%N`7?fNb}wOt5#M1yoXxV?+| zVf>jG2zU`QQ%|^?sUjin-=&*t-#E+r);ZnckXb6gJzo+(ycmvezG}J>z7YPxB*WrG zl(DI)~NlqVucuR!vLVjbAc?AIn1E+LN0{)6o3!H9u$%bVLltwhhy79n6x3!LKr_33*m3!FIouG zuerGpjt-#j$L+T>wGdX@?B+svleQL7+hxbRO;nq3Z(EcCo*dxM@1C|ToK?Vl1lWZY zF=O;=6c4wleUXLp!|CQ`ec{ZAldM`(3+E%%Zzb5=T^gJ{12j;sQ;B1lIwdkbA$ln9nPd!imns7@K$Wgt zto@Si(&j}(8|RC)+aA5TFhIwu<$BJu-~-{`ihHGMi_*^>ce^Sy(~)ur>G(85 zxg2+U&w14*oRkTufG%$ojcfYDIHZ;IWxK& zhi-Vp5s+SQs|BO=%WAmCbF$W&?5R*mbbv4fkm0;w90kLvu?cZ#BfL5r{&8Ldg3A}w zs?EU>#nYt6*z%pvxUO8ykh;H?G{d0#SXf;5-FD0UgQZOmnUFT%0>ab$!Ds_I*V{E* zSy+h*q@v@y!KtQvshJLo8Him_v5$iI8oy+ueI-hko0HkLij}6|1|qG&6kwsL)%?={ zH&gKMmNs4VIFbNq3f@YXx_~HR3jPDp$ZrZ%Ht43n$_1k-=v?bKKWS!iX=|mB%3tTq zt->n54i9rkPY3Yr1di%B7l>EIFfl;2$2D@jV`TtV7F_x5;I^!x$>UT^{_vhbwm*F6yzcxTZ%tZPX($GWGxI()`--< z5wsfM=o|rWcTa7!g~NMwJlN8lg4-CTS^xnr3mT}e8mc#IgP4e09hIj$wJcM7^``jO z?YP6d9q>P9B-Ae$cm7YgIwY;c7;(oiAHc#AtORl(o(_qY7SJn(;dPd_TvR+Y54e^v zbOBMsN?ea<_9b-Yufe`}^g`xo{=(O1Df2Wj ztWhve^BcasSe%?Hz+*=|YU4p6nWxD^mU{fgmZwRcw>){8_@T(t{5Gl~ zNElN~PD|CXu7tmVZ`y~l{gJEi6xdo5#=?;9&RaFs7@8WbL4O4nQMa{PeWF%hTq}rb zRl^~|JshS#LQhBT5kbwbLhIUK6h46Oh>-IgqdSXQFr^=ad^rN~!Np?h-iP7uIXi?O zp+8fRomdB*32%W{o5TO6=SO#h7q`LB!>^gf4S%=e+mRDDhaacnJLvfddVZ3gpMq!j zX?%PJ9_P#pKP&!x4*qNoKTppu(DP0#m>=E+Eu6D3ybJ%eFua?J?xE)w;dy=dIVc}_ zJiHhF5q=3DU&hB*@bT5;-PiEf*YWWUeB6hRd$Hom@SE^^^GMI;@LTW$wkO?&82t}E zzKtc}cj)HC)=x6Zt=J4n6gl(D+ z!k??A!(WO&zY>2Q6@MNRe;z@#`XxMC;cw-e8(Or}69oXvLed~qk?_6)645vvWJhlQ z(sqdA$8p+9rhc~<)?1(&)7M9m_zeI|O4{B&{yYhP zfN6ggfBq`|JSG0jTS8?!ia!hC4~X9){If&26Z{F6z~d@7&*S{*a98*VaCR4e_Jlv1 z!@a~m_Mv~MIK2jC=~Uokr0<-m8w>@Na1$?SAHqy$Yy^cZj7=b04&_gr~K#iADrD}Wvtd}RkzlZCG#h=6aJrd(Mc;NYgbIJ30BtPt*$Fi z?hQ^FsSjZB3AT7OXt^WYBEkld6d2=8~i?Kh5WYv|vk?-KBM9UJyeS zK;hp^_b##kGwI%a(1ta|^iKFdC?WRMZFP{!+PotHc5b?_?Y5gnGYMNQj9B!iZ({oz zRCrK7NEig~Df^b|n@Jjz>2dgDjStIh&^U|ipEB-Eq$!e!f`NOL@K;FCN8n+Yp1&7{ zlJI@-h{o?9*%%NuunY03K)L3r#08M>zDYT^*8M1Q~A;QjRRT_XuDQ+ifll_ zIDK17>H|G_KlK5*Mv}LT%dd4Ohs!pfR|9yrbx2A_|h2CiK6OD z*6?hgVLZdGg!>|prSLGQ>oO>6A7C*r(;=q$z;FUDG&^pokbe9eZ| zC4W*G$NOzmW&fGR!gO=(*UhCFY(nYSVFLDjb|*hUnq76Xs;nNZ7a%!dUQ4AyVv3YeEF-@%;PVI|Yl@Tr82$?)CQ7NiN zp&c=M$rI7)M?8LvvxQ6X7e%z_SLfIcc>te}Qy&^qm@lwP{;1R7l&n@zaUT+c>LfS| z2Bs##7t}u9y?!4y+|A+i0E19cyYcX-51iU$XQJBmfpaR|T>GXuHE;^5 z#a1~rGED#iU9?a@3sFS>27cq77IDLpYx z&ZWJX$rjNdEqzlTM!@PI{Ug?r+gdlZc;K88gR#QSPJ?lt z#lw@>UmA)3guiGcre9toahT8p?0QNKEdhZP>fG-wP*8han$eF@2Skn{okJ8df!J5o)C(djr z|LMr%WCG2tKP`+9Z}ues z-fe_W>8K3l|6>7Q25)v}_ROv~J47Mx;IPiXAyL%S1Y>`ISNc3Z4&{?Z3fB%aLw%1! z`B)UqV5Gl!Eq!ufZ3pPRx~1KBI$cD4$i9vAL`%Hz$Cmm-(mMGL)a)cE;RW_l?OY8`EX^nyK=) z8RK}rjjHTF)A&ZZxmge8XH#04%FgcO=g~CDl9AKEA(zR|F9E!pZM95(eqI2WVe*q9 zG2zdUB*~O}b|*hdDBmDRd@PD=sSM?3AeitsH8c7$U|#ynh~_{d&vBo>0A*=%v>bjZ z?oEc8r?Cbr^X%gu^p;;^fa!jR-D7`MeP_d0e7W zRCf;LuR=1CH?9wVkw1!lx%i`KNSO(LluIa|G1nuM&+3~)`6UgfGQOM9Zah5d18BZb z{+YlXN*(#`!HFmq-?`5Ckc{}t&K z4+p6!)k~nXo5O(&<=e%Q28MS*XUqdb=TN?_iL80ALK-pey@tt_Z5;W(CY1j{hH@_L z%?y{Nd{b8=V0DmwKWoWtt(#gra88NASYcfx6-x?}WOtG25^wk50JxW`g~<671=h3-&V>%3pN`orx1vXhRsD4{u2dgnVb) zDGz-DR_08iq=^2tqKV2#ZK_#sP1Xn3Zf=a%dV_6v!2RUfqk4m(dUY$FatC`kFRzWk zu?lO~M{hPoFZ#x7m)Dwco!Zb^JT0%6?w{@-t&i0w*KXOc>Gb}M8#Zm&(i@Cbujp^W zoxW=~t$Tj|`4?`!z;Xb<(eeNQBB%T2|7c$x^Kkwe#VDDhb3@~tE%1Z|SZc}Ro-KfV zHR@5O`Aa$DWVXP=>AtqFoSj6{NV1dZzzl8l-{r4n)*HB0Bs(C3;Ni~Lg?JXEX9u(w z#e`9#Zt+Vd#mjt9@%PhrMn!juzjzjHN}Pe1zAtn)-YfZ`ezL%lNl68^zB>q6iR{WBYspdhZzraBo)}v*9 zom?ne6)3n0R?DMT4uTc;N)xP3cPd`v(W~MjB|6((k*egKhs6?=7P&oBAmVR@^ktMY zL42bJaUBHlU;PB}KRtToAc%3VG(lXNJqhLnHGRaW`caSm7Z+K9R(C~qS7G9!1wl-j zv|L8kvIa-MsIwmVn$hbk9`tgM!Y}$s;SW4||u|-6_+s4 zxHCO^ z4Bs;R~$Pl(xI+JX~TcUx#IXcl_0P)ey_$J9%Mc^OJFCREB>_fv2Trm5N;vK zcjnvm7WGJ-`L>sG=9|_?>cF>uLBQ(FZIP(KJrUEE=8dkm0x9CJf%e=&J6s4^iuhXq zn0tyii3p{Llh{y-cubo}Qshx@bHWiTf{!REZcgV^%9gj zSYF9@U?&BYF!!~^2PdA$pmJJubhJ7!S_`fW(Dz1H9>s%Z`VvA{-{yD9C7Zl}=so}p zRHD;yQg@GIp%fX;EZtxw^b0p|inkZXq>0H9&AyV?Oh6v7wCN!r^18BL5~eO7R0GuE z4)POLf_YL;Ufmr|rG(>``w}G8TZy)r_3C4K|Sh| zq+Zk~Z99{h>G>Sc`**9m`vPFcu?M*~)EKMQ$EU;jP(AA;Q95drPN7wq9WFyOlv}6r z@t1T?zjey0a#SPh!g*UQm$|GuijXLN%~@$85LcrmCJQrARN$W14pubw z*0Z4}e#!LWoN@(C+Rrmd&xyKhy-|^DwF)WHdS^NoR-^+`(S|%al@Wtr>XlK>B=NQ7N}|-XR}%#dnudil zqiO$XX~{)RQX}j;2|pJQMKtX_h(>-*Q;Dx@nw9oOO|#W1q-kwuIu_Qnz2i7bP)V*k zjV*S1?k~eCOtIu^rcd81SKg#PeVgcH&?hV`u215gQHEv4)uWGD+Hz5cltw*57`lKc zqEWv^H1cbdN`76VtkgGZl&w}Fjk?d7j)gU9sf-f^mEqAwwbN8kjUO?AQwx}4t$-VV zO(O0hGZC&*u?_~n#w9ftnp(}jq+UoQiA{{q;piR1@!6KvJaClD!Q%)=7Z62MYYn22 zU$s;Q=&EIUNTh1luN#5Vs}}&VkcE=E0N1E zW?^A*)ylKly4uo`i%z6Qtg8q=7Z63%>Sc&Vezl5-@8gzwL$?SP^(nVoDzD*ucegtH z|I8?d-|NL;GK0F|v}%{paN24WGMq!sbTk-Fk6yeu@ojz4*F7e$9mlwZSEy%KaI*^! z+pWI6kk^j$;E?9&-*$i@P?Z0~2YwwW-2wEh_Ogf zJ62@#9}LtM9ZTApBU^a%vlHaGAbjYK$)U{4H%~+b^HZ4KWEf zEr$*Le{5gH)7(YEB?E6?01wM0*Yx+59=&qNhl+cpMgG>&Ic4rF|Tm|c5k6t+lR@^I1usZFl2t9gLT%<&2yDL(2U|+?x9>jGJ z#FzRB;!PgCauCG0SDGN2woI_egXtsY1$e7R|BH*PK&!hV+ns$Cw|UUZK?-m2lfo}} z^vXdB<6db}m~UUjeI9))E@7g}-IcKJ@2hykgLV$m_K=^n{n?{e4$>C)N|QGCeHBaQ zJ1>*M;*ux2-(AV;-oA=MJZR=1aR&i-k9EY69=&pqxVTrE#JTOOIN76*#idPjy;N!Q z17_G)k>NWC_dxrRob52X`zqSIYYw7mp5GohB;~QQ83>s-Sv(1zlhQX?&~^%O>}(BX zj*j9QgI~$97#YXR?x~@fb-b3s7vZz~Gjsfa-kOe;P4B|k3)>4?BaP-{tu;xf`|wC; z)(326I_05H1K{+%WI7xYe}?H##KGhc_BrOd5|nN-WP#GNlK215tQXwDZ15}Q%lm%? z0;arwDPuSetl(MbGE=#Py#KQ@^8P7RRlc8U)rRnLw!!M?;M8b!vIfUEwI-|MgSDVB z92^}?G$4nw70YcpNyv4Bz&p#OuMD}q9RLG4DZ-Q5Ab^F%L#}Qc1U_bI(?gPEPQ$H) zsS5}-_}XEE!0+et4FciE5sg6*((A*G2SOwVt*p4sLfOVfo0BMuT4jSCnzM4j7@F%` z>quvDW>(hLfXhTcwX#Huw>UE@75jS=fykefeyE<59{qc`(F`U>YC&yiYt5p~aZWmO zqQoy5(SD0!knGYbY$v52KPoWJ)?+L*wVFRGDNpLePCJ@ga#6jAqf&bp0N?^UKE47J zaMaB_%Z z5Fer#)LQ{;*=ua84fRx7HBjO4sWCh)G6hFD9`R^Csc2^;!!s4nC}#{fxm<0K+P;Rg z!7yrL;mm0J1(udPq(f@^d4!(}2z9Iu9ku;JL?geptHjr}-Aa3-ws)>|N>LeSa%pR? zkYPC9nQw)M?&r(od>pB(qgxwIxO9FjXiZH_z#6g@9kmMc_3_3~twj_03M?0Im3T%ymIV*^^q zT3qYQoWj;(RrbaM$eHd7;Lv0&#YsY|HrN;+vds9^Z3oNov$8%9l+T@eY|ye&q-^Kgf!La zcnhI6p#}JV9DIPuCsY@Q%t4rG1Y>x@J6aWJ4obH7j8>b_%2;)xFCH<|jzPKQf|(Wh znlbp01!nbj(Uyoi(x@B+fQ@cJEG%wR^0*U@x3uJepIl%ZOZd5fC}L1fKs53j6qWe8 zL9x=_Xiz%W`q}c##&2xf0*zQWQn4i+=2pmHX7#5Tjcn%r%}^(N$FVo@xnY4=q;?PAWW_$8Co%gQB~bX{!) zz(&^<7Mg~s{FyL|W4gqI5K9I5nqhjirA-gfkWQ?t2vZjjsuRmKqwQsg#vn*tl+lL9 z){@btvO#xZS-D_zVs)<7qlhSDfvsw4yt3R>7Wq;rBbaj4hMZZDatc)mME+d0Xo0IK zr-)eP(#|}KgWHg~ZtGfGKCjfyTLiYm?1)I0}H> ze8Z8ol@fu3nQ4jGSx7`6ZbncoFe_m+Y?n(zDH%5);3ATt`;zoRW`-U?_Pedli$t9tN;lWOaaNkRs>q%ln8kKoQ=lde#;+$J_=h6;wf2g(5k|A7u@@{ zKCIKGw_ex<*BhK#Uxj}*tY3FTY~6$>z@t91Xs__lPfL(g9?UWqXCs1J|HM!RZp}`3 z`pv8xeA(l%FqCWZe?!2uCYOQ=Gm@@`r%%IqnTUT;V4D6pIZ~YrT9b_?>;Zv|-*5s; zt5wGfTU(R0iPmb^6oLh<;F$HRM&YQISg_L}?0oaOTgxS=^r?RY02_VkSZJE~=MRuA zI8&Y1iYXhtV#<22r7aJUk-qf12}2hUs=LHBZ2e_KL-CcMeYS+HRr2e;bSw3R&nUS6 z>emK5&$4r^W4#2JG0WD7%VZ+u`1znSvmy}ksE79xi2MQWRk(c6!rSx;@}+R$mkeMn z9J?%voNHyWV6j=HTx2vtTPpGn0NAL=SXf+qGCuwuU-KlxNx1MR7*6_E0@0=T_n^=y-?(NQ~R_F5(DbnftI! ztD42;4WU+W}h=0xiPwBq893A_-v)3NIxg(62d}gs|qaT5X~q&R`j@k8gENL0Fw5 z1wn=1%>;xvMxwR{;ey0E>zmqlQ9q176K0JUv0>=~cY9PMvEbZvbL|^uHL-wGEeVk6 zX$A8o>BIcDWTwJ?KRq};lOux?VHK&9bYYfbbbChuD@LFW7an9FWscCD4cK-wLU#pH zlOl9i!!H@3Z-`^4AVyb*bE>MeZ&V&Ql^i4`G}{XTGXU4K?(>n!W8jq$y1A#;f?qFZ2m`;C znD$lX-#xnM{A#@=&kGm4iC;2u-^^MsOm4Xhcq0PVBow{TD@@pxaBac~r(aPUoI(lR z0>>zxe#Kyo&RYvst8H++HpZqzmvi0PL2V zrLJ^3#JOI+Ub}GM4n#w7k)f5d#JO&v&IvLt%!pcHxwKK<=p49VjO!vUmQ}c*`#68CE-%Q7>s{Eyj>^Y3Cm? zKK$0gR}UgeY5%n|A5>`%zY5jOL7oMoi80WBo* z4-z&W+|otfqZiVL`(EE($kjNGQUzDzukYB4*DZj%sPI3-^-hanWXYNfaGU2rD!DA@ zlR|x5wk^v^E%GeO@k6mJKcxqL(XyO=&CO-`M6)qiYqk0@P}+@UxeC9V%ktBsWs%w* z+Z8YYhs2Ig_QEl!y+L}vACo*P3YwmBZyxzReo!CiSecxAjXbh`;3%eg+vB= z!)S18cWLmE8KA+E#Pk~}k?{%9LwV1r@|EsV<%=^wm0gG`(I^-bCcTlSM}8K6B&PCe z0i(??x=Wj%5^bEf&OGkXD~GK!aj&$kGxLt(M1y}bTJ5;A^JJlflN&{6U1rrC2O~dV zhD|dWbDD4%`8U@b@@%Tp!6Bc4R5HOxQSV&9wwn(5BT(+hA%8UdQXKLOBi$jd7G`ai zQFtU4b-<+m zW;)VeAsfdtgv)XM_ncR4!nP_1)@W%}Y5^nrxvUqtR%^ENUt|zqBLb!%fYgd^2La~7 z-kh*pf=VCfFaQQAp=ntvsTT`Pi*9rB)CMiCk#BF#OD%1gR*Du)Ju7j6T}c?afKa`- z9by)#OOmfaG!!o`4g{8%g-U)st=CF@Vpvv`qjRki_U70cNsYQLhffYVGb@$Ldntj) zzc=Sn+SyQv(*tSy9gd9j8g5e>tzQNgCqdA<)|%|8P)T$E2wtlOS1iI97*35%h&?{= z>TLMOd3ag+1$0T1;tJCve*72$VySq=jOnc?LT;`vn=zHT{}Dl{Y~9B~Q>*!PU&+K% zPg;_%8K(DI+H_IiNG7BWxSKF_0ioJ}a2l$cBRMG>@MT0JzYS2?pxXc|7mPNbbFEF~ zN;u=9t@T32;e*axENmRk7G5uH>mCv>DiFp4uWEyLgHug(jc1w;iy4T$WGvA-e#uC? z<1S{Ubdm0eF47b{MWi)M1F&$WO~L--dnRO%H1(b-YTLx_~I6F{+ z@xX4^ZY8Y2hH~XSqwAZ>m4B(}uP3@1G#v|zYkIT`NuAV-R}8}sTH10^&(wte{e+}q~PPV z+E8sM%Gr$<^sSn>OBriKq-zAN1~@uLz}MYV8*Sn6UL6m%G^gP3j;R(vz>}p0>Z^w8 z%^F>JR2_wrdA2s1^~sU3mSu{shV__jPzxASeo?OKNaOHRVv4~yU||Wy0SO<^f<#LT z=oQ28FP64kG&^M+o+J!iKol_!e?v6#8wZvAx^b{l-)I~<*V;N$^3V8d>sKMO@?&TI z8qA7EFJ!XlCB91&nJkLYjDpFc8+?1QIB}5kkP#2ocu+{@i1Ik49=5UNh?2uCPmU;l zC~`zM?FzprN0ffe$sEzO6ngbPKswL0#aa{H%oN=cWr}J|R$7w~Mvn4BMLJ?K>E>CY zy}$e>mS(O>2T@YwRZRblPYDlXc(o#&4*qjeRLq*+$>*eoT6Ql^r2^vo>YW= zF;CLjqzegbT%JlF)QZJmC#o<;UX`Y7lJ8*}@g43v-VWg1yn~h;o+$#BN+@McpvNHn zRK4kg6%rNF$%C)!E)8y)0UGcVDRm<7Qldh}Ippu}E*aiE17uJ<1M#Xrr$xpmL=fdY zQ;^Shmnxs00jhK@hw=yArOkJVHqJSe4}0{=A%`;Vm17R&lODY)e(<>Htjny^-Tv;G znsmgYQaVp}7xmltGqIxOMN9|x+Rb^k;j-&tHvkVgJFa)F2Ohn0kh8c~nw;gkYrW5- zZ^flebh%V%^8;qc*v*(mhLfn5$>eR8kI;zkTGwZn9g=o4@Jc3eDFR*s2zN7S_d*ms zO4_{ye#xZW)Pf?;+l}v9*O1Oi-Bp++(lh&+Rdq_;JvTZi_=-u9n%k;v9m8aUfhsyC z;qG;r%G*<+yj;BaPJAnN`VKdyAcz@-f)Zz?ux6!0X9lt6q289{K6wVm?B3$8NdV8p z9bhB=Q=U0c!g(AA(TY%u&Wm@L zh!YRc>A-v5<>l+jrIz%%-voexI5c%n<=JAP$ve@lT)X#J+VqeM8GL^iVd?@x^}f62 z+rAIcP`vMG!!7x?DjRg~yOj&XxU78J&b4|J0cBRvRy8#Yx@6J5%9#Zz2l$WS-WUB2ws9|{b!H4+O=t#(TzpRly)qE4xJ*zXBb7Z9pOhM$D$ z4%x3yA{zNMQe}g#kyb7kHL`Q9#ffM#eY909q>tZoWndxdzENd6*D7Jtimj1C z>b=sLS%ua6q$HxIq_IU;Md6qW`D>WUwyh4=Mh!r+x;UE#)`{b_D=Zg9DNg0sA5A<{ z-ZP8&qH^V5YWU?uQp0o^3ro;&O#h2l45Fos47OKW+Hz6P)S%oZ3|&AJ(eRrPjrU-nkZpjp?Sd&f?2N&<41WR=1oPR9LI`QIppo)tqwIVi8R*YSr8^rmkuM zBi0wnm1e20pCMuy^c4$>>ua97VZLW+$wk#t+WH;B&jmygZT$hFkzZR?;_KRKrM*#G zZM6z1)hC_lXizGTUdYs~>wV|rGIa~RUjREk%9fsrE`?4qZi>MOkT~B`)-!SF#vw>Pk%`m7cky! z*)<0fei4b3&<6dE7A$igKFPLcOlYSp&|C~d5fVk4NAizwndA`>H7sfkn0<0Y2g82z z8|MHmWY>JfMZ2rUDlSBgd2tPuf*u2^G^)=BLKZZtXj4itsvd~QTxcG&Q?NTciDY>(keczhs)4GG4?9YJ2I3 zW~HVntP#_|?;x*|Ks$uj@?Y~5VuL|dXA6@sA8! z5Dn9fQr%5u`#-E3d~$9YXDmdQ{)}-1O#Te16)@!deW$Xu%ca&)$$ru60kARpj)l^S za2}Z#>H3k8%A#03VM4xU%J_Cmn;vo@qwsGbOkF^zUJ=(+ws#;JicbXXyd{-QWrObZ zw{k(uWiu|w>Rij1%4VyY8Y*2<*glZWdvdlq_TY%8Jdi+TsK^VEW%J~l>;6Q(X8RE-Qj3e_D_*&ahQ@@u5Z23;eqTrg^6=URqT zHe1C)`uKHc1{BuEi*czXa=s}bPXDCzmMCKYCy*13R;xZRS_@i}aC+0~$@(bdz*Jko zG3!_1sW?5AK{&_-GGVIXq!*ZFA{g6|E%_FGhwWw7E*CLP>Gab9uyK^d!s0reFUM_- zr7aH(r7j;&7`lKcqRS^C8u@iuCBLrAR_YsdxpS>e z^k3?0mSj{H7XbwW5SI~%E=BZTTCN_-)z6g(*k$#jNA#DWLmuuNn;ILaHE{u-+#{)_ zD%d_`()yZmag~9pSNck;loKS^Ov?$2@w0FND`7Nzf4MZ2^70-8Ttr^>*fKRSTBFcE zTn#=xnLFygkScPo>t{+rv%uKWj{4;=ynKR$C_CPdW$uGJjXN3f{_j|z&CuA}PRIK@ ztZh~D%RG8U>V})4s_i@+Cu!aEX@<*#}7q_|FFH`7lrugSFsR(A+#U- z3tTqLy&B=pe}#8(+{XaD63%}LE_`1&I9hGBrfZp-_QHkp01$pBus%A$ntr)pebAEt z1V=4n2&WRB1mCm|Vd({{Fzj4w#(%~dLsO$Q=q>YMX?5aU1W`4J>QuuaXdTA7VfrJq zW8@y8wg+JEG$O9XcSOYbZsE`Nq81!lJP6yN3B(5%@36yF)0ObU@b{b@!jI6OsYpB5 zL1)5S;ML~vzv=nW9pS}o@H0A<>UMlPa^mLj<5YYHJwHLuPtx;K@C-kVkI%s4oO$7A z#h=f?pUvUt>G=hE-iZbC!@Hn`a~6ho;lCD!cT>?l^!y?`uMa;5De593x2@%^V<-k|G~$%u_XKsJ-nNCGa?x9(e5^-FJvbqJ(sa3Pznnj8jjAj|=WSA^toGe}D^r7JvRK{yZiA%v(Zb zJBmLG;SY%NBK)&MxD)&dm%!sHm~@>#9qtN00nYB?&z|sSbGVoI$3FBAl}2wvxjYs4 zubgNn1!RMvpb~E4CGEqQ369NaeW-eIKL(a#i^>*4#yUH&I&AXSK+z@y>iCO|4(>CZ zkrRb2A5BATZ*ddpp~hfqwTTFXPhS%^uf?N7xa|M~(KW4P!xkTq+B?B%GR=CeHGK(a z{j~tFeV7=!PNcv-j%F<54){S`nQk8{zFTGOab_l72Cb6uxqPHPupE$j)`s=#E&wUQ zoCR=KRA~NzS9w``fB1C!nbr^b7+7~?KLUNrQkzP68!u_!#9FG1)TWx?;jRzT`Ki6Z zHoTo|a_v#Q!BD-rwJ}~D?Z*o`@vNY=>!UZDq8EMRHORo|4JPYjwf@oiSbcKsmJORu z@87s#(}pd*!C3W*{^rzpYwf0W&+k9~!p#@Jmv}8gKb(F()oj%p<7@G3^du>x5`IGK z>(LjTv|Xg-IXaT$5bn0 zh~4Xh*x#_DPvuAKHx7vDskSeheY+D=Gkw_bZoG5yLp`%|N%CR*jW80*d&ZXg-Pz)D zvf~c{Jj^vW1Z*s5&s)oT2mfZhdd#C&4ktUty;{b5mG5N7zj^en_{ol<%LdOwrr}Om z-G?AyT$u3x6WZOokX@u7>vC-DbDw&ItJh5PN}J{5JyBi|dqdkEHH9=&o9 zthiU2V9h&<6Ab>%XmyN7uZoM5=xldIs*-og7858fa(kvg#NP_(%P42W-RMDF2SGf` zPY_?=(JKc*jC-XC;?nH-GAF3%BSzH`kNy`IS%Fq}MRwoJwL?szw0!o+@8gezV5$X- zcGq~&&Osut@{`C{d-TddBI90Z64@h{XBzdC0!F=?J^EQ(@@2<4% zljZq{X_6MW-L=o-FNNHtN*NI!_8_8z`2E69{GRmam4o=jz0$;Q0XmpC@x&`ev7PpH zpFI~BJJID*#m*0yVMktuw@C9=l)WSG8Q^Nf0IBA@*4<3g?S;+SFzlZUzYI$&xeE{D z2a(TZ#{=WlR|Xb|izh{{Hvqgi>Qo8$MIcMzVQ};;gQE6RBoPN#k>%fH_pDRlp!e3AU=8@_$d|h2 z(wAg*UHJ6+gn#?eSa%|K>P`_9zM@)V(I0(}Kzp@k55l{7m?vD1t*ZNb7KuLdzMWy| zo6*I$1^uP0-U*5)w@=hS z>_tzqwjgY)Hpi!L2sffEk#KE_r79doWO!Oa>_cU|o{n%?58sPO>Rj^;3ksvOxw*t6 z#FA~2;Q$JSaJmYZ$KwlCvGgR>-VKwrW_7ZDc`aBE7d)eXdtHEWpr8US+9M7pS9g@= z(HAR?7_Hr^vVp12x>Yp77$yXmb6)?PT-bDe963tvtyt4DGC4W1X7%cA+qU&pCr10i zk*U7g(A4UejKIc@)$2B_I@aBfVlu<#@N zHMdXg6AE`s$WH+{Oqi~=blzYIGhLlD;6l)FI(!*GjCAYK!~i0V3aaNe>?x_|jyVP6 zN9REfdC;ukv>A0XzSU$+&p-49o2y%Etr4)0)!_VUqc`}6I_Ph3&eRxaZxwc)pVJ5L z$KaEmL)Hc7!DpkRwb5Y17-Sh^*b}rKu1A4rR$>BHMJ8a?x+4zh4bHBPPgR@SgQHG( z_VIl^!z7IG>>F(LO+oOo+9Gl6YmHYYS|g1~h__8ON4NJKwR&P|0OfOIbzt>mZE$2& zvo_IaPPSI}T)1Twyx(&Es%Ia+>ey%XO$-gk79|qZSC)hB{a3%)8R7e{zF9|^>&WXY zVwTd8(@G#$OdFvsr9fnQbF&2@KfQS?sz^A3DkJp<=>{`8O2pnfO9WV_Y*bE7Yb|LT zsi9Ho-lCkkw=q^Wx*O>1>gCl72AlPX$)L_P2##(z6UNZyP_U_1hl3j`XtB4_n=yRR zH`o|UasdP#$_32`_|cNMY9Zh*1_GLnKXBOj(}QLTu9~kkwLLOw0mJv6a`D|O+0TC` z0@ju*D99_|i>!>4u!M_z4o>2(LFF_s*HzrQd1bJO6#5HqcM(nq8}%*BZw9!A-!SL z+h?hnV=kzts2BC=bne(PGd*8e{jhFz_YeT=xcps0%ipnTeH;=+p?cQxme#-IOCi~a zm>sS}G@SWML#)0l*Q#>HUAeYezQZty;t!pbCX$@1lZp8E2t@vaEA|lC20^9s(eZH( z0yClUOQsjkFIUi{{oF!=CZ-7~`-z3c?Ps1N>XlK>H0^EWN}|-XHxmU7nudilqiO$b zX~{)RQX}k#2|pJQMKtYJL?geZsl?Yc%}RTtrrBy0(zJhbrek4ETPm|bg39n{quTM# z6Ip@J=#1$j50)!-Qmq~!av9VL3yZ7OLLv!AG6+g9bccBJYxof8D7EbU6Xjo=X`syI03=4Q8f2| z>3g+lTk|RX{q^zsWPiW$I+bLTC)<)3KoDxAF$DXYkIl>`%dXWIx0bol*@}Mtjm~dm z9Zi~?TRWchdtDYMlwl))e9a8w?)#gKu)(Soxz%OobaU<3%#r=W34h~*IA8(r|8F`) z+xUz$*OClagOIpvIz0ry1Fc;*ogVAaD~EjWxK})E*3K6lJJq9a#q+^Mmt96c%cj$V z1XsGc>GUEGGC6ECc%DGPRj}$Fy>bw&xL2BBb=q{g&7)VvMM`wGyCO9QHl4o4gSZZY z*!B~|w|Ml*K@j6!X@Y3lPs*kfrjOX<;(Z?dFD|kIt?r6!_cxt>-h*}y68ULAiTs8~ zuN)*Y?v*By?wd}3;?d9Ik|(;~UCHa-rqe%p(9A*N{@^EZi=XDaKnWcrF7A~kac-MV zmwNQExU`9`cURhGaMS5(4wwrO{eXp*?uMEI>^k8s2P|g%kUHl7Xiv$*oZ22pweE{CW;?j z2>BxT)z%IZYfFbyd@bbu*=T274yiCqq`)s`gA*un{(Y+}aZ_gi8)ur6wbmqUvkRtL zxW@`-_;>jn3E zoBUK3>dPGp(+HS$C`iG?(PRbBmzO!!CG1c*D`STO#Q^2|sa9<$fIChHtD}Qcqt(e8 zoVeMVtd0-XaI@Lba3>Wc;wIZWD&f(*yKQC50$bcE@0oOexLo?mIN=8XFp!hNPN`H} zEG!-;lzSE!s`53%^iE5g9+D&zFFr?@x`0sQg&nps;7I}Wd7RyTH=?1$3(-)E8y)fF zfGC0{cQ2@H(Bp+xE*Rs5oogNGEY6HkwgysTV$NM`ls^AnXGWz0lK)8{@~6)qs;AFK z{~m5MX=7Y%2zH^yqf}a(KMRbr^%x6Ht>)j7lqYR! zpJnEjTvRU=?cWms7ucKfeV~BD-jtw0v0qQma$bjw(-~f9pMYV6$1{>o;mN8u2 zM8K3>Enrl9eYw&vwfnV1MT2%@VR7xwn#l;YIx^b`N z;7FqRc&k=z4vzFx8WVWFOLeq2XpE0;55P#mXK?HbT<$S4wY4TLdZu$?Myhc76Bz@r z18~U!>{xCc-gDC0BOwW{I^II4O=toBABR(T!oWH__=^6 zVo?5sXyi92D)DuLVx_&&pmeVFvA<(wVk%)nwUEvGzO%>_wt3GoZ!i$X3!LRsqu^S^ zyLRAAtmv*Cv+E(Xy?_~+R4F6u>I2ML@1jT%Riv$XCIB`%6|u0mt;x6fV7;X+4-Dl3 zWgTJY0-}huIRnwiZ*5fa>(<6feWSJMTx+>ie3{tUfECi`iZfFT`s~pQxs&0YzRnT3 zlL3Ps1$Q#s|a2!ApfkPz6SYU6(r>F_*nRO8|VgHDV!IcOxCNVj@KJj#1*U?o#6EGeC(QVSqEz zffW)J=nbR6+V0Zegc+d00vz9sMBt@DDX0P?!-d@?!*k0ggUeJ|jyZ-D%Z!;u_;ECs z$>=`oDVF=+nO0bOQoN;=kmQ@-}cn^;+ zWssMGD6A6Md+%aH9r#T0Cs!UC9eEFaZOWz;t!f81C)!5(l&=cYw;Mh5&63zB(<FT-9Z)4ryD{#}C*g|}nRe3W4rmRXSk?65o!P68=&8j>Y7YRY- zOc(<;!!L^WfP1qE;Tnj!$n`@yf|73maeKMMlHSZ)0kF}ViG`+>X8zQw#W7X5zRK53 zC%+oE`MSe*n70G|7n0M0xhg#5L%KJ=L@2v}P~DrZxsqQ;d=&R4+FVPnq{U;SF`9{A3+c43mrxM8cD8oFHaAa8MILdu=_Ap(&<53+ZwnnN+zfTaE5W@9XX z)MkvlLS!_L!iJ~r4I-)D?xZhw7awTW8W*WcMIIIaV56>LVR2o}n>w-F(wYa3QaPVS zIJ$sPl{5Sq$b>^G9LXz5CzCT<-9lQq(U}LuwGw@KL1iQC2)Zbq*j+;N zUDYd?*2;Wt!MBzxtx_Z3M3gdUBo-Fe$OTA~*er>b#49EXw^-V8QKpnWeuyx10Z~LB zKZs3V5?Nf{J+6j8VZ~L_qE z__`iiX>ZiS&b4;slF1a(R=bcwKFyg6g%xrc#NIT=Bfhaa9rMKGM#~jdsfr^+B*Rn; z3yZ6w9G3Hp*4J3tbkV5PlLa-&U?bOVz!F=xI=0EG(|N3vf}Xt)l1^lbA1A+H%pil*-;i7`lKcqOxB> zH1eygN`75st<*QFZ0B0XdI>ONmaUOO>ir>SW*OAmqZcwK`UAe944D&+A|er8LQnL0lUO%uY-f5mCJkE z`zcPh01mWB1{gN*8^2;$t|%8vN(Z1^>i__|Wurxek`jW1nrR8ySx87A?l@ILUaW-C z@HyquP)f>L1YAT?mR>jx+bJ)i+oE~{98xe+e@Q&lRLlWwVLhojcU)Xp60!w`koH2+ zFNaa&xg<(L-F1H(mbs7NfZew3s6X|N*Ix@ znFB*-|tmrPxvrL>9v+oRx;f^PfBb%NI(OY)fYT}lVpSrpT~lG>HCNK}kJNNrEj%W0&JUow6@ zm?mJ7q-?Ub4qKES0Pt>8V3{r+8SsY=j!ox}37CNx109GV%N1e_@QK|Hfq5EK0x|wF z1H{;kYk5qRN=ihOQ#sk1NqNr%W&iHdW*-0#fg0D#Ri5F|D~AKM<6h|pYNG*-Nh_?P zxX6c5>{yS!6+cj0blGJl(NW|4fEjjsWLWI*M`(m%E17ETE-3Bl)`<3je0xXAfYYvt z3xS=fT@$InFy20KuoYz1A=L^I#7yxXq)M{k7nCFaK8i!ms*O&-fkDGl~j zR&o-+#Wzm{CfqOd5N=Bv|7`A|$TfNkmR!WJ2A0gu9*P$0246#%#wiQ&rMG1Q0h6~y zN+X)(72Jtf{vL|{sus)~t~Vi38>cz3pr)fD@q~trU-3&Ot*> zQPWr`6_~Th>~_+UrP|6GUG>Gu*9_BlSlaXu4Vh{1Hp0{egzCL<-9GV7L_=}ipz*bA zpHSJLM@Xz(5H75Y?Gv4A^(Z3BSYWG~8r)nqPrSmJ1<@2*9#Q*G1S0?DiD>btDW^Di zGM9GdnRb5S?Q6NIma!=0RcgoP)PItbDpztz6_YrOYb; zuyLrx!V;AEG&o+n3JDtVoI?!khFcv@vb5=esZ{0@2vZjjMU?quL?gd4t8CDf*~$f@ zGIy?3@Ky&~1BEm`aAuT2<2`yI6A`ZQwL3D*jPw42p^-5H;jnc)NjYHC_v9_J+1He- zYI4Ez5(MnB;L#Hic2E3m!R6J_Da~@EN*PxFQZ809SoUgPxs(!tgqdlHVCe-+Dp(1l z;eVA&Ln#^WL%>BOL)%kp+;Sr9Vn!7Gb0wixU~p*1NaPaCfH^=gfFGuC?%_a|#DSLiSU<-|!iJbt1!-j7+u(N7wk)*jUx48SSO zcocK3e_(sZNU+uppBL}0mom$|#~~m#Zmaqtk>Fj@&CPlwSf@`C;|TRg@JU4&7;_~Z zCtgTkzUZfUvO=Ol`mDNBx=Vu- zXMhHL7lBR$UP@FDub3!2ue)TpUPo z(OH)XsU>B=V1M^aO*>*rq-AUu_1pL}A!WRX(eC3Ov~$R0y3J3{?(yiAgPg^^(&S8J zqp&4(MuN(BJo;8#+C-O2l{PP&pTqE`sse710gqt=iTxJT!5jikDDB!pheA<+X8& zFv5*kO}I4%H!X?V*2S$H!*HP%+$jUsSi#<(B$-uMiPE7nLo{l-FrN3_<1Wf)uDd(^%>1yiBLA2J=gX?rIp*`~@@51fqa;YUF z>wN&&7>vV0)5^bFk@YhzZF)E(WiW0%Vd?@x^|!j_y=*`<1|i$(`f%fckoSx>-IDjB zvOy2VS-BvV`WbmIoon?7p(O!jcF|VVWrR-ogP-Zlf>fBTLLl#t(jh7;W-MnJ9 z!9!}~iv@XHNJ?F&<)kSljtd?t|`^ULQ|{xRX5-98b7wQ z<)UvXmHh!>=mMgM%HEG?^ny#1&-hAxbBREACq63sK&)8O(l%nsv=Z zcq4kq!Fg{0Y@9A*VF?lo5rOIsco%0c;X!q5do5e@G{H1cb>N`76#t<*Pac;{LW zlBIK>I*Tt8K^x#gTD^xeg9>Z)J~CDyPmVNes~SOI>Z%qnVhxrn%~D_ciCBga84HW+ zYo22xuduY_qH3w}c#80I0Z~L-UxaAn*H)GIy0%(rZ`4*>twKt5u`?YFO6AcDnE-m2 z?|^+saw-LSzY69{?MWcIlmPla@AXfrgvwWAvV@{e$tGqk7x9UPb!k-5rj%k-JrI!z$UJCA zHZDor^8hRpka_4=H=ecxWOBdeNkGOAMFR35$~7e*)2}(1fP6Xzv`ff8UgL7s6mPSe z>BrCE>Bqd`3Z4}!&Y9{BhU(R=I287eH7>7VOuti(@opSgygn3zhhE4g1XsG-yCNCJ zSEQS3zjF0RW30BiIW<0BYp&kbXkNBjW#D?tzlK&L;!rC&NNi&JnxV#EYqAOFj0KHh z%67nS*s)`xQr{U=m(C)SQWr<;!PTTE7$4G^M=|BoX~aA=)Gu-LwQ1@lrpRPz9n!O2 z4d6@5A-<7-rE-Y*ot-H%s3ChHy`ln>+4pvr4DXr&GAzwjaVb7JW%f)}h`$wN$|z?v z`)qe<_DR8Q*Q2Mt=FuyM%)Yo+UYUJA^5|Rf%s$a&mwAOHk5uTOA235^Uxon>{~0M| z%nio4$sI)?9)faIIr&@8^ElzK7|5e0zJiq2gZ{8X?;iGumnLF zu?wp=XjR8*!7$|Stq<#$!N3NmQLa0pH#oJv3jaV)kKmTTqdv0~OMp_QwWVp0$(5Qn zH^+IwuSE=L;MeSA<{iYk!Pgodw3qIg0}wE|XQZgYSl`vmyt$BXa6-8RmC=pk05H&x z7SE}C11vPDkl8JvA6k_!-(a()Ef0~A(a3WMLl+RLi_A4??>t09@&2H_wj}MTJB-7HzOMP6s6uM{QfHPFR@)b(7Lqcr z0Ct7Mr9td^3hH$4R%2UjsHf7Z;Z~8Uv7kPle3>|@k_{wj9nV;uvVc`aIb*=rQJA`+ z{a+>q7>02yG_{&v`|~6z{KC?bi^8UK{sF?z1w;{@e+bdYuk$MLb)C1;-l+4PYn@V5 z#+h8&+ACxjzUa(1gJJOKg-nX*_3ed>;o!ofU<_w}0@0;v4V;SX4HrJMmnVf5`0l;o<;)pm>Dv&rcEfp*&f{i|`gwgN? z<(T*6n~T@=uGfJduC=P(=Pej>1ckfBH2iBmd7qhe1C^eZ3DIJ5G%mce-FI zX|9{`{=+k(2!tYS{!|VcQx;CYUC!_5Tq1kQhAibhvsB-7w^T*K`Cm&n*S=}S!};~0 zYCqDn&p>cXNPiEV7jhu|CES^$UYDxv7uN%{TCrH75Oki8_^UL@%8cPZ2;ki&XO{Tk z0|YD;!)Hf*>2zR)M1}M@U<)ed5!y6vIOH+x0N}e#gEG=NmUov7`N+OzWFKpI^;VSj^ekP03UIbr2qS18twjFoaA)3GJh^GzEt;HFrB}$&6;k|%! zR|DkXsVHc4zRlV2D|Nn&GMK~>@TVCN&kBAkJQLV|8JU=P>zsn$r=5Y3gQ_^BX1LiH z3&@1x-AnQH)O4~9B+CU;EzI%4(`%r!M+DW;t&L`Va%3zv;bL`A3Pd)>p6{WyxdP;K zcjOd&J(nRqYeDj@tQ&kdkH4aJF$CfgDTSJ|LD(XCuC zI?+4VG9F)JtC|}3ETeWbph};@i=9~zfsofWT|pr7$G5w7e9c#op~>*bb;Cu-A`GQQ zeowl^XdI!qf$Xs*&OQpt?gS`{#&8evMSwplhU+3r3CX zT+48LjjduKeZ0$=0fqH(E~JwkaJX5CT%<9jy88iO<6w$~#Z@<7I@ytywmdLAE7={r ziZFBmQAA~rMl|xPtV(`eWv$dVs%+<4C8U$t8Y!gS`#3Yppxz$6km2VkUn3&}jX0$* z7)YoRh%SYnr%+DIn+wRbOcMdStY!4@^D=Z*!-lk}u>rUQ8N$%@$y&3DTeP(}wCzK- zZoaNuT;=5OT3>0Ea)RWVX*pqGXXf2!C5(peD3^v(Ufza)i^$6!Tc##PYqWX47t+Hf zbMM<S>XgCsdCgictLlN5C%%)zhyz8LB_+vRZAT zA2(}*_uV^M|7@3Nz1m_o1NPcJLbX|ldqg92CDdc|yQm+=pNUa`7cm=kEb`iI=2s+A ze`LD3_Kha`BIC^Inta4y&gChM??751#dr$+KXQ@g8v`ZdSQagRmnI4 zrd5fQQS_6o;9Zr80apT>ve2&N_xqo4`W3aoDO~7o0iiwpioqHkOctzKr3-ach;<^# zu^d;-6Z)fh$JJa^U`Fc>RC6G%IrD%jV zAsWi88Lgfr`gJ{ZPLL^US0|R6Mp;qoV9ipcn98VZgO?gLTmoD#Cqz7~lMHaZOwi&Q zg9?PYhv(!(_RgOgZ`lPs!*0hi>Lu;0#Tb$On*)?Vok#gDUOee?WC} zWGN->cOe@2rTvrCIkU85xn0^1O-XweXBnw&Knscd#|aw`Zs{WL(F^HheyMLSZH0O)syP-@G9m(ch0RlEltTJ9oA(39rC?T0q|}!)Rc4Jp~N|G zA^}U~yz^5k^rUxQD!le+9Jr7BqVAI6c{4zUMM9WjaY@~Vu9p)j;+IUBTiqo_V+M%9 zwmRq{!3v2C>3tA4c9#aPm;o9n*TBRfOq~)LpAbEi_e?V0(Os&%bq1)?wTr-S?=Ed_ zCE7S&1b(+iuN;nXjC-XWfGs?fx{M}>6!O_z=m9PK^lRhw|gC*)UY&UUqc z5q@d8gqIHYy%8`u+@)T0+u=SJ5_^v-m!Q(0xC#J+4Iwp6<>X_bX+dj_A#BiM2>B9w z&#<&*T7y}3O`Qdu5E^kBVdw%v^_X^u5Bz?<79ThZ(NH|5I51e^11kCT#9k})iD6k0 zh0e7~NbI#W^8b?eCU9~U)&6(_*&#sK_cR2|5N9Sp03mD!LLh_$3_+0qLr+g$ihoT__o-Kx5EyG~X2 z%)I|UpHFW0+}romsdK*PRMn|dRg~U9IMpi>eio3G6_OA!*ZGWu{e0R5Y?r-`lVQo` zDi{*8V=1u(WVd0Cc(Am-i0eD+#aew<2YV9keT=)z!NN{x1%r{HVZPra+&UHhIHLm7 z%4Zhy)xtm`%%sk)*$vCzijbm(m9knfVfzlQwj+mSMW=$hP^9DszG%HnOZQqg63}>?uKRwmszEFnf&c! zZF!sg65Pl^?+)PIVQkg0FA$B2p<{q%k7MG{1>m?j8vN?}%-RH9ckMD;8wIwZAVhP& zBM>%r_3`0Y+xTlU%5l3aUR zi+^G1=QFt)T628pZ|UKAn8|G~Qq}=&%qWXuo?0tjXEmgd@UigCSPgp%Pl{i)@J#6& zExh?#T{H|!ILxB%W#4PbTJpB5s7W;~QVSa2hpsy97EeFfTH$wBT zvRnNkeS0Ux%&IiTR9UJx&73cDrM@b-+dD3+}`hg(<;DI|QH!<|?S zd*_f8zv>(^rEhc&&EM)DEBs6P&Em_;t$cy3UxQn5;6fy39^g7O5s8^No8g(5xq~Yg zA~92*GHPLBraV)rPTOQ9X0m{rO=2egkSAvD+zsDYVkZ0Mmze1Q43Ure@trgu8r+EY zj5F9g5x*nYepiSyPAv@PYqim0Y794+IvM6Q@OQk{`^B|p-zc>nM3!(WElzb)YuypN z7k<+?Kw1mg#n;Gn!KSudxc6Zf-?9?;<+TXeR^DQV*uu)XXe(Sez6CeB9L)!PzyYkq zU&lVUoetc~XKqR|-SK6H9=Z z;G1x3Rq!o#{Wff(8C(xv!?io#!@C1VuL{1;9^c5WH?ix@?0O4agIn=(8(daQ4sPck zcfiN0;7)eEi(P+!54H;Kh7wjx4erLjrUv)0NB6SpeQ>=jxC5RKyd2yQe*_QU<%f9r z5ng^A-+K_h{RA%$;pJhx+>bBL4<3Q6^gJjSk%v+K{; z^$B);l3jn!u1~?0OYdp+_b>48=OODQxCaPb7W@kShN}J=K3489Kez>Mt_p6#GH%Ap z3;4?y@p3zRax31v4KFXj%@s3(>45Dm!OQrIzvATqcy?KEFaF{_y!;JrZVB#$uUmrO z@Ure=f82mizlWFav%hbI>t(?Y@cY1{t03m_Kk(~S!EfOTQ2RZ6TrwIw!#|$oAJ6fR zzwnO*Xjb##QVU)Xced2nhOW4=D?SUD1)+%q5APL2<0Qb2Sns8*2gM&psVb@V-I!Xc zfoY6h79#N>Ak2)kv3blF!$!6$Cm66w$02Bt?MG1npTx_w-QltgUOvAUT)vE#yXV5? z0lZA#A1>SC1y5WJ*g>thwQRsPqs0}h0bBTr={x~u0gVJNbJ_omf4l-8puT_bkALxx zSNX@}ne5rt{9`J701&6)2NVn+!A!VZ0_m=+M}yh$73gfwKjy&4s$fU{$Ik4JWbHnH zs5$|3nzm{$SZ;XG5v-J-H0DZ9G;)VSwc*GUN~40Nzm_^$=OY*y(`Vy1$){6#!J+p( zntR{1I@QMMG!WuR=kiv@iHdhuYxNLX;L3xImL?>%GIHzDm<}^C)enz|zw2A$LMjM@`XWc0z>D9eXJ`*5zejUN}@{`5^Ddlx6fX%OKow)@I z)^Egbi9z&D%Ik-&J!W3LxT(H4H=k8|{&AhTWBQ7@lSH|k2?;` zoJXiS_$V~&TS?Y)xsG$8%DWX7Cg&oGoFM!y5&LKcF_S4i3}xg~TZ6C>_yPQY+a&Tz z8!%|en>WV98al6ychU@80@gy_Gh7H()jhmB5H5IDf~ha z{~kse5H>j&4corr2C%728=wE?GB)AqXq57WAl6Y_}vJj07w7ola zN|jGC>YDlssgmDwspP+r=~wM5`8=VL>INFyD=r|?rM}o_D*L5)zC0&2%#F#)S>y1x zB#H;=q6i3y;12+KK&`sKU<&%Ri0LpK#%@WxJ?+37VG$DNO&#LNgEqN2)m(>Igme$D zsCop+jL3;cmF>_{^|xA}s0eRJa`>Br90)pkFJ*JYxSuZ`(>Ys!8&o_ff&J!pj~nH1$N#;CoImsNU1>V^EFAm2k1ou zwvJ#IJV0YtxEMVDp75x#yQz&D4KPy-x<`8>8RV3od2uKL3jcifXfQW=6tXQg!AZ0e zyf3f?3BZ*qNFhQjyK~bs6TN zCJQwdI&u))BM+~FC0J^*S)8_vZRI5Mc47u^#^!zvL>+h*@QmTjT})ht;9RJ)yMZ^Z zqT``FYLqHEw*|2)O-rl#`K%FgT!`P(4E~T|^qKGaObbUdIviARu_>i_<&|ZzPTC-7?S`!(oRk7Y)N; zcCZNRUxr|F(IFUqvK?q~;mirud|&Q_V!mE475Tx`1NHiFZSlf|{cs4(NN;zcGPJO_ zTFjRh4sWgxRLaQ#=)zL1HUh^09dcx1IK(D^7Q2@(+rm1jrgG3A__I>$!<~4K`~`1J z9cf5yZ#jc$g8`=wtXLBo?Ch58H;B{SSpsg z<9E9&)&7O}*TN9rIGkr;j-EQ$*XWgNCP8o*{>kI{!<`tA4dJp3OlgL&$c1^SVRE7% z8NuZl47(Y@htiAy<>KjH--Dbo_d3PkURxgZW1+Iw_w+!ltlraO-24P%6e&aN943EM z`XFYOeq5*FweG0A)Zm$HMvAAk51w_U@EaGL5k*tC1Dz2wE8$YymcVuc9c(_^fPPyq zuF;qPF{xP4iQv>YhB0(0#X}gA2OtcQ9{}?1VGIY}2*YE}8>OMm3S;n!wkM3?AP0hu zUQE|f6tR#@JGvL3>@TY1C=T+_+%3o@;D~#2a;tS?O<6ME1Bcb>cngaxxkN<>I?!Omu&~m zkhrk(X&I8=F0C6TC0}|xsDU_gM<0rLB2Ry z+-E7t(sHCecp+bgu@}s_9m>}$#WN53a-^9tDH-C4`x3I(w^qJ~#PaP2!XQpI;MR5_ zz=t9xBWqQSD8`e|fw~L9j7WxZRmE+ork7@vX=)uakR+BSUBYTgA(0FMQgT*h~FQxe+s z2!lAvDO(f;nqiF(iS78CyvFHvj1Ntv+S@TdwH~kFXl{)|(W*YQ34VH(GD=w{}j2s06kwB3>5yb+R(NE%Y1+ zbM{xt`9YYH+`!`f!dPKTt>`IaorOZ{t8y}91weOKpl0*H3weQO6M<^-hJTH{V>p}pLFm7*9fIBs4*Tc zSrh$!CWHJ?1?-k>0)z`ta%jYZc)}dyJ;0{A*nrj8Zh*5oDl8!)KM03Wlm|D5dlEqA z5S(H?Faik_cr*fx8lV#}kcXXhnKOuw@Twg&>zHE?hH2_NumDu6Py+lf!p=8S5=un!!b;JK+W0FiFtEyf; z@0VoA7<`@s7jKCpo9DZZu*BX6IHls0UNk!%dYtOY#f+GQJZ~jOLLDR|HUW@lAl12} zti2CdkkDrD1No@Qv+#z`ix#1%Ry+WnpfXoFuInZPW6_V=#};Js<0k)SP8g zJ{HRv94M@+kLEf22To2)K$GaXZa$EM(~qR09YE$Jz1!T1Z3Lf)!N zD9)@fwc>=FnTvotZMi^3Zqo)vOgkrPDubp`4$5QRl=D|4Nqo4ylK4>TB|-7#Lac`D zp%haIMo=U%NXIjKXm^u$YL+>aQmq)@n*7d(`nD}|==&&4mN|3>d^2PYahDlo4ee>F zby~(yLRq|FxBv@`eJ#vt*srEKeRZ)uQibtYp6?g> zqWpH)XtG$G1@GX94ZTo2EaT&zmQ$DP_79B3Eg`H5^>c_ek{xHJkF3 zI)d%wX}CDEL_df;c?^owrY9drV*jPYhPT*7qS8}Hm?bI+gyS6DJVRxI79=W7g!57U z*;;`f5)Tmm4up+!ocK^U4Oxx$84Y&lqs&=kF3Z7E#pJ|xK$zC+NCqLO8A&@~H4;Gx zbnh7%NlEdmL5NK08-ozd-)h16C|QMQ4Jjon>175-2YrjIq!&1%t&d^fmv#S?9ntwc zZ04e_q#i`H?Mp6iEwY8}p2U!C2p{4@f7_*gZwZjc})Tdwc&TFdcQ7Ca;w%gwIS$GxwO7 zc!aB!VDQ5XiWC_5h)A$TaEp?d&a)SjgMVPdG8XRrI@1kBE}?k{|A6Mv693>(5fQkT z2XeCYI}jFudpQuG`hl##J!?g60{8es9=M-+7<^-ad-iQY2JT;9f~jd1+de4QL5ae< zE~bvkYv*F>gVKUUQNbM;hUv_)E<{EUe@68Cs0++{n&P(Pr}jlv)0!)vVE&$ZaT8Xp{^7cm;(({gNfHA3hX8rn&{{;EL%%EbTufO=1ok(Vii41-)jZTcOA7U~ z9I^CJf1Asanxl70B9Z$~CeLRT_@5BFbwuchcI)6UxKye$z`zvzZ)@!TqY@Y1lHV~N zw_b^a*|=3001m|dzaIO)uC)Rc@x!kH;b>G}Rmpa-|GP8FaxhjA zH@uV8kU}CkOs2;E@5O2);t1FZWW@fH;#cE_nbJ4L4V%B!g4lmnAzFJ&iTz(oR+biF z{1PK!zaqKqvHwYjo2`ff%dn=xcK^w1%AlaxEKhLdVgZ8%d4MjLMamNE99^{SU;zQVxffLAdq$1T%=3laOj z#+3^Z+rut|XKe37u3U)Np4?B9n^p%2iP)Yz4p93_S+PB4B{s1={2`C+twT#;u|4)} zLdN!%;0Dh<7}Rsm%sqk<6J$p}umal|-HSF6Ju`7siYU2*1@=1eJmgN6ag`C{n;8p8 z4)P`LOJ4qMbT97{<$H@>T;qKcA!Roqwm5>KhWU0-^$>|zPu^8h3Dg4?l*hd7VASPl zl@IIUibEkL?@b8zeF(_YT4E8G(!zc3XT-E{pLBw}DhKHylLEUVA@r;5mBE+CKnATy z<-V)EVz{mKVxY8q0#}B3XNuzp-iIQIt#v%(o%^KC&Ip&%B;c7+x7f-xA#Q+5w=LlL zEJ~CGJYRxuhJa_HDTyMUb2ICo7V=E!j>oz-VbN|O&o#?%2SnV?yFQRxSFOM%7Py=R zcjkg7lLb6+Eh$ct!IoWkz!Rn}hb+hY;?G)x`{KvDHblOi&ylsK2+7a=QxbsOi8T3o zs{rT3Y+t$7Uy&-E5#eladh?tklHl`}y$Eq`hlE*(Qve=AbnOgrwmk;Y*;;9d7)S>Y zHpVaUp>Pngj_l)?BG@4%zKh$EO)kkO)4?W14CFXgQwoV>41^lTJQ1srh=HJU&xm6t z)u6^eGPPigfi!>17z4?ARcjn6(a8hJD$t^n`!f>u(aAlrIqHb=?AVq{Q3DkDOp8j6@ES73YEemiXezZ`7Ww{+G979vEb>2CO(`Uj78$$|UMEB) zFUM-wTVzrVszqjM!Dx}q-d zkuYT}qb@Vp69?#>IoMIQ7xs>V6~vhJ!p@(Iw~XTz%le^I*MnPISCMw!1%zpl(NJ6h zCn&D5#)-7}L>k~oPb3+xY^@9hUQR{AK6u$-%?KP)xE5ELbiy9Qb?b#GQ`w7hD808u z)%0jW8X;eVR^)sJB5oDx(iD6~Z^K#h!k5TMFxZqqjp8w>g4~v+1iOjuBQS_<1a=((01}tpR)!!x+$sZWnFgh zJfX?q60!lF2lBK&ub8zBeYjZs^Cw13%Ld@}>TMzn@jM}nUb#Ov`$%)|rv<{83FO-? zjO}CtkA%{pK_qd!mDH(E+?RlIV0&e=ACpb6JSQy z$xGH7Q_y$HjPYBN#FjYl)(7>^r=QlnQ+SF(Pi+V$qAwh&z|nl8TS6mgOomgT+2Ur- zGNm)o)Z*NT8ImqioOSRlI-$r*YNb5_PurE9(3oe@h>r5~gt>4x=Q7)IBnl z1|lt$At4d2)}Nw?;*c&(Xxgvd+W(Z|;4lP7){T@4^%5j4Kn??AL39RWEZe*wA$`3A z(yh`ACSEJfwJ{)7c-&G9E|u7jhZCmuDnsrf%yJ15W?>cqL}5%yp$I z96*YXB8=*@nNi0^YR96R5>P+UT7iiygO31VW0nCv6t*j?$$nx)q!UQ>6t|_C{&z;1 z4$u%2B>%-~N+FSq-cYj)zJb+9L?_S(XJi>9)u2w0WNN`ULDKxKSqX?rD#&_OYvd?d z2BTyZguMi@(&B@RgngDlIDS-&lb_9EWt}$N@86?x<2FvV6AIwM+6wFZ4X-UzvX*gx z4^5@E%R2v+QKmypg?0X4R#OUzq;&>&!s~>LgIBQ{_STtHgKC|bS}nfL3r1sZ{+8!4$yo(>S$r2+Q3i{5;6mgfyx-ODi1}sg_j}HgT*OGU zDG%ZOtu-|<;Q0?EOd0T~c?jFbakt!t{NPADTH#?U?WxofeY&-^67yzPx#ChF0tGYH zh>-FMq`{8#M3Uk6TPs6>jPD|0A7m&e_GNE>nRb-lgDt9>N8`|lDq-I~JivfMX}m(8 zDBydqD+vK#)Lu*A>)@Hiw67d4k_R>pgvGS492HbynlLd}GtT z?Ayeg_ALw)3+sEzc+M~!I#?U4X(7T6<-1${5I?6|2Yl+AD?&#y|`+W3Lz)jy_MW|AfIJ@v7wJE^e<>HjRN)woNt= zkzn);f?48c(T{jLkbEG?X0*Msxtz&{oI~(g2d)S?1QAzC4#DI@WTC;|lC1vQfh+&) z0nRL?PnwZEVDP_lv>rz!2_0kGCVw0KjH66`B+2d`2iXyln(lPN*-ss~BH%3IO2L_3 zuFC&7@aB&;&T>o9=0?nrtCG@(3|@g{t?PRCTrT)DWZ&UfCZ75j(aSa=wu)QWvNgEQ#+*k&BC)-=v<tDcgjwiMKpaLVZOwvd`$ikbw^mwWlKp5PY@CZKI6_DwGx&%W5}-MP9~h$P}xkz2HMrsqM1J z|I8?pVosqhg++df)s#XaX^}w*UMHlzT#ePRx5%U#REx~ig3%(Izh&5HBkM&kdwdsJ z0p9jF5jNU*43W?d(|wr9llNLR)5V9TQteIGZljGqWt2s+H_c?9VKtRqe zHYtA9WHY62G}-2FwP2%-tU|oZ`$4j@yv_TVIPRM3z}5O}XR8_GIV|p;*H~A`Tv-NRgf^o(S7YnFWda(xC2uW6ZWj0dFV|(KzRTu(7+04_jd2>?}>G znkkF)kIE>^p@yPSK7!SdLc+(wkH%`)TX<6Zs)c7t-)P~@--20LOZZ9<%p&Y%)%%bY z`Ojw2%86W!FE8mMDd5ng>XT-ZQ zN}`yW)*iou)sI5L$6DWm)v&kLr0`X1&6K^-TC?8rGO7|;js~N0;6mhr9_rd)i_|HM zetD)&?aN5CDHrsv)>?uH``wO&DPcb~7jz2l7!f%&?lJf+$y5Ebwfu{;xrbd5D0Gh^ z7;D{2xt)@;m!3#6e5tiE6c~6O3HxAR_tS@Qt!;jgZ8as%LATy-YDPpro)(^YthuEb zBj?=^tPx!JRA4;n@2a~_;WK*k$$WcChjwlTwXqVBzUx$zux+Y%_%sVXs`Z)&_Dl|j zWuS*o09gpuT;ZbZGnEM!CXIM!s-y%R8dTv_w*o=Z64SzFT{u%pUQ{-{|erK+)l<&tTv1h2Vp@`G^&C-pxlZnY)D)ph%G1x-)dp^m=@6wBF zTsD3?P^n^z(p9uvx;g=8x?@+%(LJ|z?>@)lhS;jN`_yVoYTrEF@Nqg1Y z(x9}y1`Clob4wO<=1wSe;m7i&OBTp(!Qp+$ZR`qCGmSMVqrBRC1Z z#t%B|Q-LNz>cO(s3RFyVoB)KQK#i7qfDcX9V~$WPmvzywOFdYdQI-Q_#Kh#;tcDa4 z$*B%%{@!_5jl@(3y6ueoy`=cnsg6wPv%clj+^;UZLfNyt`CBbWJ;*9VYd|TRT^&zW zmNuVq3?pH0-d)&1SGKxhw_xK$99lt&LAbma8?LB%(sK>$`u#Z^Z{ONh6~M* z@u8_ydqYly_L9?<;cOFXK2>yo^M*@sv?&)X`x2OL;CS;AsR?JFNc+rT{~}0zNdAYH$5E`3f&( zlteLD&E}tH^`nsRvH8DZHSBFZDSXxDGi7hI`Q~pO?~8E>ms#a`Iflo`dNVi%2QEZ@ z#8IwXi0K?0cz90d9LPwtDL>+<5~hr})clA!xD5%O)fM-nqCQj@ z`O}|E*gUnhH4~G3Cj((xxHuG!Km`hCtWhE5M@X%Y^hAK@xVRIuwlurQXMaDQ5`)Rj)tBH&}96#i2;b$NzIeMXY^*9wJC-!`G+zn zQk;a3hy-hd7FH6Ik{^&ICWlr-_=gdu8;V>s|A6Mv693>(5s?HS2LoG1i%JiHc0^ZL!Jb14}zB^0kCfqG6`Vm`eJdor#ezDm&*O_yOAA5N&!fg+0F!j z)VYde;V_vHwnrVo3wuj(*T%NVA4WgpeouZR`Sf4W9hT3;{!@B!jdzdV#J()DXo5?%xuE;8QM7NT4Cjjx9P7_b-H#N!eZ&;5P7#(n_vg zf=M!%Ba08W%@rzToGdGqYu&Q#I8l&HY!*n()XQ*a`@{^{1T!42tm#s1Gv>z#!?bCu z^Q9V`&Ls84qnnbf=Sro^4Y7l)MK^qJB+RKXupuGha}pA)$qD`5=KM&2CRlX+J_i(X0+q;Y_uPsp*>BrlBlzY zdO<#5wQZoUt8j>fH`G4T%`<}mbVY!mq{+ffiWt`+aA!6=Hyo`nx z!hvzERNL0X+-IGUufkHIdak6Eae$&L?&myy+I&KYuBlJZhUSq_j98SKxq8d69kgQrcV3SQbu znJV}zRwEHS#r7d%svs$TEt@q%BIa;wrp}m}Td*W0s}M@BK$~%RjI6AXgb2Sr!bsRJ zNx2|pNeVW8>^7WwFj!h&%;7|Fu~whe!JdR`R4}1^$pUNugOQd4{8dPVHsRd@%X)}$@ z-&)yPs7t+otkS)_#DQcjdV7ged4Ne-y2d-n7;Wb6q60Fo@m^u1DsC!1BoTR5-9QwO ziXs+FuhC6Ow3`rFasOX#nJMVjTtS_Q*3cioho(~P`vWvr@V<;P9cn6E!FyRvDI|Pc z!3VG!1#4H3RDYTsSzzjenG!--AsQ95jeRDB>{ z&tckYEr$mrE0OjcO!-c@BNi(sXj1N%jn`Kch{GEL-K*7lyh5aI%3p+ zHdBhB8-Nd6;2co!@-)B{c1x<^g&Ad0EL&^-%dCbJ5GiB3bh%t})B~p{vMeZE#w{GgGj%&@nQEI&wS;9HBIQLDhbw{une$$vMt(5G- z{hEr^uA$m+*HEQzWUvUV@(P3;D=&2O7rNmE*eHg*kPrI!+PQV?gInjoz1%3yP7&W= zEWWL1DP@gmHR!(=ilYG|@!vD}(!FoM=ZZhlUwoTZFqSJ zZmyUSOb0}730}ru{1q<`z_ZJOd+`_d;pJ~|b4ze1eBBcKhL?30`{M?D`aQgSpZ$F! zTrUfLfZqomT?ONx|AAkx3VsV$Sf=@V__$;=c!qyG%RipuAAjK=kE1a?3YS{&g1ED# z##VabicfqNFuOs+2p--mhQ>*N9kG3avO*Mp9A&JeT6JS;sRpJodRd6Xhk!6M%|>M` zSH^;c%2@@hs&Oa^B>En#b^|Y8UkI0PFc%OkIY%g^wF z2e}9A{CC{#HDH^>;+ocgErrFbo&b}9MuL~Q?El6;UV#r#-#_@rzxc=lh|}<6QZOApf|+o+1djVyJsQl0uRv#e{xJtWRs}oqKXzt+B}tYw>e`1CiN!5!>nrwESTx;Oyao|< zCg5oqYn*c(tPg<`)lF(}&}gHnY82x1N?#}MQxN;fj^KLvN#m_bSseq#kt%FnQ!227 z4LWlhaSpzI>>+7;>n{xtLs%J}h0vWJ+?d~7>triqdj?BGrTVdJmajai=d|T3m#^u} z4dplCHWIaCS1vibXZ2aD&PTnF^;@o^D+WE(I=8owr)(SnfQh!fv zIA16(&c#2;%|Grq@HIR*))6Lc@NS)Cvd8PjC7^P*!ouWSM3EDOza?TPXAm>l|HDv5 zKD9{-TcRJp54a;hUTI?$Es^xbnAp)euZ{Q7yov*KNLAL0;4lf;0MsqKKxXWIZ+ixunK(b)Zs)x z(U&=GC-WhGsI6v*e;ECSdxx3gzNCRm=^CIc`ned$gUKw<$zq*+tjrz!EphdJ2d)Si z`w>?#l1M6h%Bo5kMutiF@>>#bS2^(JpSRChR!8LWKwIwcXzo@lBHP5Z@{9uZ8BuE* z$)H1DK*fI&{eWX@T6j|u)3+SNL|9GsbzTK3ux@wYiU6#LD+O51mV!L!z?DCwIJ51A z)Irgn!0}GM#~Qk25u|j?rEKsk*=Wjh35m}*NSA=b-?}03?+#oMkQi~LAaS=Q(&q+k z{FNlvX(!PKnEt5c6>BeQcfsADv=M?Cp|iyAqaSfWCLc($o9iGu0w(tY@(#^zmjhP> zOh#NOn4BdBVT$w;4MhPKhENF$PA$IRt*KFxFru4i;JBp71m3qM1a1OA=V(z9g>~TPrV-Pxoga4B}zwS=v%sd?>IYYe{v1 zqQO*`($0uv5{V=1`Ng-Tn$B2eF4N%9vZeq;((P0rO!Qp1on~KU2zJ#SZL*~HsQKW8 z61#6Uwg;C6vHR}0lF1}H*@Gor67#W1ov2B6nJO_R*=4<@bsI9KC6n%jvHC27kAq$= zja!sIa0FU!wz&h3--)xFB3S7QR-#a!WMa`x33bP|7InhDj$)`Y*cU$Zw=bJxmsV$# z~1ab8q-PpaduGD@S^MW|0~etbr)HV-lnx@6jo+!SMK7Rjd_Wnvt(T2wgkIf zPBw#_f*GyFngfK5V=sK@Z(24j)`E869WVTV9THJF*-Nj?;mQ zx5Ojy-?|Rw_m5X&Vff7{VmUh|@e@}rX2c}q7^ghOXj2mNi9J1~a;e_aW8B4FOrogS znmJswTj_&r<|9*QFwAduN2R8wHD`*!KCSsZO3Gwh=(y!Kt4GJph{Yhc=kaaHeP2uW zhCZ9#e^D>4@!<)TEgUN}kv9DQyVTO#bv4B^tEMgtA>-g?=Hbbyr4KrAMaVdaxKc6> z>{3ggcHqrF(}1%~Y3DLhOTWjp($>_{zdMMD0IZjI6{xAD(@rrDFHCSJ04w530amlr z(w!Z+@`n^>w!M&=2&tuA4$>tc@gN`%!&xd4k9OdSfW(L^1&PL_QK<)E{FT(9Snf~* zf7J4dwHLMRPc7|rkR1V&=euEY*nukoCL^vCOwv!)vUdGV^vHRMrXr&8msj#6qgnKi?u_mxz zTLHFhgDqS6V({+Vs!BavMPBSv4*G6)VN#dp83$Kjbw0@ikBo3g{7$MpKw_pTyKp$PHxC|YL9Lj$pVU|NFi~)Q0^JJDq#$O9^C{Hov zP>TC(3qxu9;y&11Azv=QCWz~Dhw}Z6miIzN=D1>^is^S2Hr!&!o4RsmXTOv&TiiL5AX0%`|F!u|-81Jpdu z@Ne9tw2m7-_w~c}H=(8K)*PjAN~Rp$l!VrguxLldS%KF$-H!30snphHoL!tz627I2vDi1OqgKQ{+ee0Q8>i@(@v{2FUPbE4h?M+M$;4BhOA5FS zVbl(5{~A+(q1DERrczsL?RRICL@`y(+V5obqmb~i_It4!_ST*hzH056vNu|L^S6%o z#khpatn$1Z!?k3+c{_%#^n6xG#p}+&o@DqG&AwJFRLXrBZFn-9RWkDA14)Xnwif-O zPyP=kMT2$YLx1bG&DPraRC8$*^VBSS4iI)<0Yz=kcg1ShTX<3ds)c9D-)P~@-`dTD zSP64kbi6G0?_+Pd_e<%rEDN2(U`nX8lsH;1PZK)|Y4%?*t7!^ynWQeTZ7v^$W8^L3ds06zeG*}*!x+Cj69Ird;k zc*>XIkdlF76-t2rWjK^5{t0^*M*xLNUokg?TPC7cf#TrF=2?UJDwHymACBW+`rtrh z@=9(++?Eu)qO}GmoXW|};0#U$ANo5Ln*`qrGD`AtDCe>IQAqf78G5lA_6{W}eAS_3 z%HHTun!k0!|6*g3Od_kQUOsOr88U|6iUSuS({;A1=M|Z*7$o(~bbW=9pqNi6iy83{ zU5-S{F<=J?iPI0{Sr0WDoOSvE8}{3retiEt{Qwz`iv<2Y~Gn&4PF=$5q-b zx=jhbCnt|D_e%0ThMMG?EV-SDzN^@*l-MVwJ6UiCw(Fhj#L!Nd$-4gMC#7ae;@VvMim>u#GQ9EJFJGbulkeA2y$657b#CvW#Iy|~85Csy9BEXH`g zSg2@`WxkZqf?vF~gk z-)>Aur=zNpkRCEIusf0r4r;Fq4jcm+B+iO7VIt)xOdg5*l2n$oS1QMjfmF6lHj9z- z)OScs9;O#bkBKJvK$6Xy+bf&1m~6-iz5Nbc5mMPAu9Q@^W~t>P4qW*suW@E6J@KZE zksC2X@>)tKCwL4SrnoaP0g~7D&gz#oOJGZ>Vcgr$M0qPzz1<0HS0NBt0^8@{TS@|( z+y#!3*!Im5LRunQLXA8b<94aTK}uvRo;Xm1^Mv^cqy;!sv|7v;23T0IznU-i@$mo~ z9Kd8Bo-PWJ!FAQj5c^4V{xJ4|X2GwKPOZ|JtF12$vmfx+<9Hq)35-#hl0&`L!AWGK z{KVVv{cjjJaFBdSlE8SSw%samA%`_gLxc=Hh}5>5kT6Sa6XpRu!?vcjorq(mT*t|9 zWdV2gXC2S#uGK452)4tVIV7*uY9-h=5bnYG-3uZ5jt^?NMN7MIXf1jT>U_D~nCr>b z3RHx+9|OY1TsC}Y8nN5YicdkwMFQZyf!~r$_xX&n93XQ_9AbNp)sR9W8RVwsu)T=Y zNCdgDjmXGhONw6&a%W1Pbu6dmes$>;%0W!c-#W|*z>>1E3eg&6N*>!IWMygL<)1JT z_IYft#b%A0_bT|tOdMyg*ln0Wiw^9@6z~Ye`izxb%;2EY%mzh4Xjo}s#s>mnqZ#8v ze>0weW{eVwguqQ%+?Eh>Tt=A=H5KN3G^;6vMADptY4AEBsqOVx4SRD=szEj9Of4AA zx%peW8^J0mB#V%j$?i{9h_}g}8unLNn=Bb^vLo98S>-63WcL-P#FGY{2y&|pa}?*2 zhVs!(Nwgyf5?Ww8Ys*_<)fY0+ay!!!&GDhBRQtwRn6Fe%aa*eCdo#+Um}H0mVb$+p zHKma7vFZj^!``ZsYEZ2@Qwv6`ZvNKch+I0FC2eJu;$`w>vbMZUehExfr8Lrbceql5 z)E8-C2{Zc&EZGWO0M6J&&6eJF+XQ!SZ7uSJjo-**X|Qp8IMz1)XhxY71J!K&Ay!ig z2_GAO469*p<4HBBHlC>kqm4Iz3l9v%DOhU+OV*u5-^;phAnVEBy5l+MT*qlJT#h^8 zICh3c9LCz~i!iRvK@u9ovB0V;Bh|QJ&$jNw#DvtuCGJadoxRd*a}@A~LJ^ie69^mo z==jjz(x;&CB1abvwb?DHhWlrfiqB;=q>%8j@B^?K_7RrZLsI;zbI6pw z(K$4KtADKUFX=anFE6*Unyg=gTXEn*WQP98HGn8GLvfD5Gc)viu3XHB!`AXdjy#3p zAR&<%Do-P-lPOu5p)7W0lNpLX@cA08gu+!L?t_DT*to|+u0 z6yDDK(Bsz(6zlm!eyCD*2Zp?R@;phjr?)c~i{w~5t31(=stKXnE0p9`Mtdqbq{k2< zwCI^nTIj=iagEEzAuV(rY%No)cH<5+@S({s&fidzLHEs8QY3jj^>Z43G5Ud){HZ=? zEn9R`(%7GM5ymMQruLnX0QyHD-?C)C-!WoZ0w}LnZxdmN=Luo-%4wj}SCQdM$$Z=z z$hTV<+sSqw2}RFvOYF2Fb(a(OC7{f0uWa^WvLWZUbvbZF$Zw0dQu5pE_T)XRC*M}Y$~tX2;J-rU#!a1UCltVi zwH4O+6t68)vX*^;4^5@E%R2v-QKmypg>}BfYDyuIw9epWc%6__^$J$Q-a3 zvZ4$Y@4$taFuBat?}!N#?Du<4nA8~w!mwxh>SBGQT8=j-93OVYr9cDph4M#+d zA3dM+z|s>*hTm?j3eF}LhBO5)}W{{P~ylLXENE+?dMcm5y;{`yzWmBfFVZ^lgV`<5N z%Vsgl+AD(-#y|%0%4Jmu@>7O|l)a?RZ?72683QpS^2np91XUI(KVbq%+?NbwLwluC z9RsPfZO@$dw^ugrWwIgX6kO%N6(Oe};!4RWXtrn0mmRqB&nDo^QhKNv*#rjvJ4fq% zM6HsZwX$vUx6#jd&qIDB+2HLCvLhrp-Ry?52OYQ~;4I=w!I@p|%F_6quPXnjkz!_lNSr01@vzc%KsC_hZgT}cRor%CJ};Ru5E z_PHykvjh9e#ZBR1eYIjgJBzP3UxS4vkjv6v+5pQ+Ffjl&La)L$NEk%q2mA45DC=M! zbvUt)FU*TGUb(kuId#e5%mi5z$2nQ6$VFDn#2&qHollc04>}*8)R=uGHsp|tLr_Y@ z1NTD0EFLJ}4uh1orpD~chFrv<`{aJ{%5&jgxiw&}1j=nt5N9 zQKkbf#AMwHR#OUzWIUFd7jp(yBN2>6_nwg#lT?E`S(m8=KJri5oT&L*vp8s3>Xzgl zvtFe%*jl{!P_hcNX}E=qgneGjp8946cqcnwO$s?M3F}+Xz8e)viz`&%A}Z6s7qmyA7wSAkVsl&P=MD7xiFu^YS>$3QVps_W@^D`k`#f5@c#i1p9dQ!mdlzN}*W80V571qkxf~K%R)+MuA_Zv&4PLWA3}!Y-<$ohVl@N^PWK1 z*j>hlEwFH_jYSq^l;u!E(I_9xYDgjBW8sHmHS8@sDSp+$Go^2|@aAv9L@nETwmEzy z2xbxXvg+N)3i7th#}~8uQAqe$>)Wv!_STvdzG|(RvNu|5)>~diRUpgJU{nrVhy>A2*9KeU zQ(^SWGoNaAMxsp#qPMix5=7YVMkGuL`>6?{Q<8g|agV`oNuKJ#*77fM>3-;nK%sjS z!C32FO8AtVz4Szq;d8B(p}@c&k+2U2c0WBlv2`tW!q!IHFrNnt40x7nhk2yNoYstp zfV^|T)@PbqnlW1W@udEY z>}I)SL1*rSQWt(KU%F(0Y-LdYsa zYeFfTVI4(QmNvC=1S4Ue^w))5bR`>?-GY;gupy2cu^P5tQ7fgV9mrz?J_yo#|L;RQ zv?HBp3$HdSS4$_tho(~P4LK3zOK#&JZc8ojXEVyASYxPQVbGsuHKmY98gvlA>x4|e z&tWy}4LYd?)u1!AU^M9FZ|#`@S4kyVq`b`b-DH(`o9#K;kTTa1WgEbfk?3hI3Pa^e z>_Fhk#$w;Bj#?29cp4eXmCEriJFcPK=z0{nEIqbkKI3q5K3MiX|r979gxwN%46BB<+fG{m`912IE0);cysE~3d zq-IEZBFQk{S{Vv-oR5Tk(6ODIL?Qaw*;{O-BnND0Q5`)Rj)tBb&}1N3WdP#swwgPE z&*;rIYf}t;^F{_mij(jWkzkF`!b)O_G5|Vw>?=!54y}gp4;7{xid;1RfacK>|KLy& zkr*IH2j%{s17VREAP0(7KaiCez(!*>i2?XSo)~aDf|n%*ux}GGF<>bR;p2?H*PdlZ zIpqYf+{A&xs`_Z2199MFZXusJDZ`Om2lD`lJun9faTeS4@{`7EQ>PYKW!WmxPCPuf zGlw(4iLsP=Hr32nM3JxO-Y;=qYPz1J`z)W?{>Sv<#$~oYWxuh6;G%geZMJ_0RTGhr z^|^gzS-CoQt32jI6-Hg24Si7;SSzRZ{|w}5owSUp#XmA)+VsA(lvkC5^pHtGU+25c z8_fo0YCi~@(@Y2Q?UsR@%b^NEe#)f4Z%L*)uf1ZJ+j=ojT0em+!z^=(>j<7f>xisX zEA1h8+U{BAJ&ayEJP_$b5NpbTNC|%&%`NX`B$c+2Orq+%8F~a|5l6vD)5=ShVMIR9 zcZOM4tqkRuC&IIkqUF$RI~iztaw9c3n3!!Dvt)rdcR2Ecys>EkJqh`zIUqmd44?6x zcD8AHxJH*t)gHHL=e)#*+`l!s-wf#|Mz=_qjcx^)!4tQ2+PUr9#9Z83X^9y0CLnB_ zQ^tqF_+=g0$Dk8~M~kVb4`!6TJ9!P6VzpTzd}u1QT^9LNMwt#Z6&Cpft0{#<(jtRv;B~^}@Gr0$_7<5`gKCkP zS}h=NAVbmstJV`GXB{Y}>{L2E%qSq?Q6 zCOewlxD{6?BWCQ* zXCxfBm>nmhu4N?JG>=-MzM$MPDwyt94<`P%53Y?(0JZEmmIFaUWEoXK=*;*M2ynGx9``~4VH6z1=MYc%3 z6B4fK*6ZV^vKQqj^EX;lO^+s|5%NW7MZU^Fls>zQ&**J9YhF?&zwgeVHbzZs%H(&G zk!n&rTXp7SjeE$4WvWS@=BWuF9-cpE-vvoZCtmd)&Ut4E$DwT#p7SdVu@uCF?Y!`u z=r~&9IUOn@=Dg+5q&%i}AS~v*Q_CAI>?VT*SoeSZ$m3qm7VeTWIGFKPD^8 z;z2%B-V5~N8t)tT1@5xsqA4_O!h0(r{@`2)?Oih35uDGD`^^X^in+Ydef@fF6ctR7 zMsN&DC}KhL9tXnHcF*GNtxmnk;$bUAR{|d?6L~VwqPe_gkPhV{R*5ELz{98WCD=f$ z!hV(Lq7(6eKj;;%%WW*?z;$5%u#&5nV6iBy6^#cLxdIF>V9{u)T)uqBZ&w(9dIYM&A zK4FK-j5l^oFD#B&Kk#a2?=qa8%!l)D4r4l1bD%#~ANqV>?L$3}(6llMZtcN7p zgHOTh=J_TK?YChy?9u*R#+(`L_&gi!2WV(d)2t-wETUeJ|2C_QgSJ%2J8&UF&zoJj z5Cdaur9215MOQAwz*z1A$c?argv7vD?hmTXan`_?S%b~M7=OqI#&EM;0@3Etk zVMQ)`FCX*)7Z40y$3A!qH*hcSpH5E^=3cQdw<7j0rqwDV)k1MJU?l!~1|J=M13p(w z3a(=xBVh}>1egiF3Aa`S-(uHqZw)uDhp%C7{P*zgz|pIM@3Y4@vg=LkdNaG;0@vVH zyxazt6_bP8`Ntjbu`0NeUGHMoAK-(ng1e!F6;p$|@vo`DJ?zoF?0O$uFAMH~=L0VX z_ro8-19r%R_j17%%tZi}Qm=;QOk9S*wCa;S2O|ug4mF7cW1> zC&6Rv`Z&A(j9s5#*C*Na=j{3vT)Fg~W`F+z|9&2JrV8!>LYD=o3MtbW7Tk-!xDPLX zgPU7|JK^h=;5WRiyVxH$;M4En<@@aK8{v9c@B{ol@aQV&`u`97dR6dSxB}FE4&cw=g*2BtB3S%}1kfG{)E#wFtrgAw*R8agm;n5^P)NDAb81PbA3yj*=UT)v2x zTTg|{U3mG?O1M0X7d$;PV25tvmRbSZi3`)71C}j~p_2e3E+fIqTRSj zk3^kD8Z(B#%k|~!`O)AZ#MZ-bX-w%W73!l`aC&cpJAj79v`Te&AYUH6tTCfpsTK3p z!T@Nn)|gf=)dyiPjEK1sNvs5Lq%E)Ey|eA#Sgh7y2$?$twvw(?H-}RoT;^*LjlJ}a z&%n{3pHDU~eB0#^T*(g(vN>F-Ke9^o)}> z<%eKivL==K4xds#*1Xi$zNt7^s6ccJqFhq@`m0MnR?GEO3M05>DpSOM5@R3mVeC`Q z8JjI}BNcs>Ptl{zi{3>l8pKjqpYJb9EPTm_h0ix~qaI+c$+XT;P|+%a46{`KTK&1I7Gs8ZSTh z;pHREd6}0Ymx1C)72J5KkjBt6J`8=fIYViRV*3My-R>l4{^rBW``vhfNa zF!br>49!myO?PjxR-e?fu2ikn)4+424^tmwr|g`bq)Y_ccv@Jw6;=-khWTQ#lH)F2yen`tb9a=KLI(%1@~;15BHJ zSo%P7mK66G`hlTZYNPsYA7-v-&P=)wU_(-~W4gkFsgcI4!AiMb9kb!Uiw~f1AQZ3x z4US6!Hom~ILcsd`*f|eaCmZ|90qgT(mo;ErPwX@Xtn-JRw19QCu!|J1t`2rk0@l&M zoE!ZRk%(bI04wz3x2N*C%hF&LN-UIDCVD^gk6)-zN zWCskP2&jMo1GO12t)K`;8dK_(LSo=*nj$sMkah&Ghp}#B4vcf4FJJE&&R6sO)%@@P zjGa?Qz<+ih8h;HqrVWi7Ga$vFScMZRV9Y+PT3iQxwNW-iZ_LV<3j-B+G*pBnqA(2e z95Bbb*w>hLl1Ygot0Ux0Y_##*72mx<&B{4PvmJ$4!whH)lx`03FDjgx< zkGql>3jr@u5PW-E1$?9~;9Fd!BLsY-D~YxXcD$++paF!R2*a+tjl*Al<3(<+uD`HSjboIp>?)bzA2-)gIt9p@cSB95~_UF zj3qe(DJ`!k5D9#I4DLWeaPc|U(GqeI&B;5&RUF5t=K1};7QqOU44Q>c@~+w!06L$M z7{l<%wyTR5j+CnG98)<_;GOM~Tx0gUYO+u*40Wl$94~PtAxz*Rt_oxFxFb}joU!?g z8si;ga5xTii4G5Of|_3k5q>tajBMr zT$p^V2)ic2(I|bTdcJqCh;ub^BE~&!)5f9m;B=*~1ZQ0lXI-4LF5s*y;tZ2di@NIW za+SMK-R-UV`*mhnomI>`5mZ_Ow-Cv3qx{?qkSmuf_^%FZ>=iPQWvtAsoEj*)Ah0NvJ z!V@4Bv0usM{dn6Xzw5jjmfkhYOYiCpOV@Pp5mx~UB#&|dlI`DBu#4AJHs`|J=*77c zE9G(#8Wz|{d(Fm5?u3!jAm(c4&V(fO;^tazW2run%jdZGrMBmWwn=~Syn1DGSCOZ0 zcfo4vki)L}#!6Rj$RR9IVjOlMhh6zlMY@%I$6rI=bR{9IK%T{-O zW2rWhA1qyj$bl@L+!>JdFM;I`Z3D|L^EQaWarIgk=3ePI_^qo3gr)wPkr=}^XZ9J@ zB8wH&U{S6do|t)lYr4!@bKTf(-mp}v=JTdO(VktutzAh7i<-npw7jpqQ|KAF<2!x0 zSXP#;bhb_KJI{+;9&>3GEW1w!@O;w zX%EA4%5!0g#cuDf#x%%Gg%Ic{OX6)zhp*KVw4=eRK)bPRsazNw=_{@);TpkUdsu)B z%R=*;`e1vXfzcIPH>MZzY@?siU`Kp5rGK!}JG!MYZJ^ZGS1iM~*&&7a#tgn?Zn1B4 z1&EL*8&}GMo8h;!s`-s^`MV=Myd#wmHncASb9_&QC-K`_sP2lHJiGKuu3{G!#l`Mr zQSarNGmZFMo$ijyVU=hB;?#LK0Ek7WxSd6)$Y}?cyA24SI0p)TK8%z zxXHU$q0f8XRlvgMaRGaIn+N^5;HKim#W#Go0H4Pe>W-bybKmi0;RUVnf>_~ZUa%9& z@{H*p#7K;d7rY08BB_gI*{LZzEG^~xE3g1~WfUPz?r-r1vRFg=yc-JTU655|X{9ep z)-=;NLfNhZH!6xZ2#WUy>eec#x#Sge7I&(xFAew9a5lJ7?%|=Vc(Xdu+MSZEXLCr@ zAuyD!=iO8>bms>*<~Pf2;#>UHy@@W%)HUe3x{q~JcT`VJ>mzhdEwx@HQx2IEqw@+Q zVT>`g93H!B@F+uCY*m`M`6BQ{>uGAv;PYh3*gAt_9MQq6se$9ObVe<~@o6&UaR*0- z29DCYo_rl#Y^~l?DHnSxy|86s0k*$QwjGc7!{sMrS=qv6l_OkC71sdtBRcDr0J@({ zdE5c?8Vx`=)6=tYpa^YeB^^Fn<-NVlt7J*p!sj$c_@q}`1J6I{j9Y@|6*6T5cpQc$ zVtmEBMGhoH19_5bMFbbT6Yj;uYkatX@fF+tXza#UY1<*1_N`n=w!d`a!74TzQJo59 zd5)+~W+aRwsxj*fU?hy)XqTy!>|qu^Jv^!NtAGX1Uh~Jug0R*3K1Q9N42sv4{b4#M zmdd_@Ys%yc$IyPa$EtVt^pwh_dQXpH!FTy<^LDxnQ%A^}V{N=9Q=4&>bhX|>XUS5n zHkePiO!xSE}kJ%9(P>q%y3bv^)S)(^n;gBoI|eH8xZ>d30hCc77(w^282{E9SM8V z`Laa9Ze+^ij)ZL(60n1(0AQs*08S-~!xjMhX9EDMqwD=-Iy;tnUrMGt?s}iiJpeQY zn&vO^*ZfAZKx{Q{?%5|Qr0c#;XUJ0b7m_KDyY6|faASUOJ?;ge*!>s$wf{M?NNly= zq*oYKN!R~>(pj?9|EI{5$6fz(n5py>@`Ht*0>r%)1U&4IfCtG!u|+^fw&xd>(lPKu zI#ZSyxQ|SE+%d2N!+;3_lMCLxzkicuVhe%!*${~9q$A)Tbe=2`@OLuh34(xfvD81% zTdAr8!ft;AycS5br~lss0dbvl1a#1OvP8gvWXj`?fbF;sfbF5mBg0A~u-0GyXOksj z>j4gI;sJP#bnTx-=g3m~tI3oN+IN`35wk!%@aRB7%ti4ivjYji1)sifAR)L|>Kal( zE?_Q-9l&9VzZ%1DE+KT5c$PL7WjeR)8nR)fTLo6J*<94suBa4QU!P$ljB`;fm1XvH z#H=$*c&y_oa2}jA5p_3NprPrBiKsitamUjix5B@%~#r>7yLE*XSyU)Cnz*)Yjj#@Hm;c76g^94%u>aFAXC-gD&&ax$bb|q6Dcl;cffgb~EPV-02aq;$fi; z9ujra5%B<>H%mm^OQvie+O9{EmD45Ctdls(s{B}{!L`c^j=C8zy>7q-W7}ad5F*j|fA1e`RqN#B+ofk_rZXi?EynBt2Fgn0C>APPt z+G~La&tcq`$da%%+9vw$*Y$l3ofk`eUrnYwLG-;&()Z*3`hJuwi5BU5ov!bP=)73! z`^RL;=aA`|ZN1ht<(M`y@I;mYV<9|5nWx z2H{XvS@VnhHGeQ&(3Z`46U~R!(KO#hXUJ0X3&@lwh|PzGQY3Bu0)Ne)M;1qmY(A`x zrulQ|3|VUaO=QaBuK794+d~dpzEp;_RwHmINmBps^Vk1-$wIN!|AOp}yi_R-1@ED= zWr>3SL#90LDBx{A9OYJ5JpT>;`u`4D9Jcyz;`zhsXqx{fogqujf1ONu+%>;Fvwy<| zEWh*D{%^=4vDJR+Qd`mEi>jpe_J2ud$x{DMktvV6{qh z;ZI#+CDb3*NZ0;$bdD^wzYUr4xNAQxcDKY|>&KBLVQchL=9T&m)|GlRy+BK)9!aJ= zL6j;7=*s>|T~C$-MX87AN*$mVXsOg9neqftsvL#;guhZhN|ppgsfX%Hy^>y_rBXjc zrabOSHHO;m_Sfv4WN}b5yGYmUZS(>yHG4Ce@&wUrN+|7Rf6cx?76(PMhv}OAGrd4d z%|1(}JV7*@5-Quj-RLWP$-sr zgs$J^^a3sQyNpbE-1Tb=a$W4N+0A5eP&E5GU9%hL1zKvhMy71gtV6b#NI2v9Ee<3^ z!r5{*17}Q(Xniu%4BV~;<0(=I{agO%`UY7gw&>c=7($Qh5^7f@HGPfFjV1K1Wt1Hf z(^{V7GApWn_a;f1Px~wLNxJwfXF^l=@?ascL~S&6K2GPyQk{>IDQlkOAx6Sz!)?_2 zW=Zec2Hu^!nLwgFojVJ?Z`NCoX>@)p^}aQk@&wZRMUvi+^4I$jWNFwsZwtL&r0abV zogYiRA55k^?s{iCjj}0_cx%?=^!GY{^%uxOu~ol$`a5>_aiuh`e*v8>OB9?(rabN_ zVEYYo6yR=?atg#1{usENED~D`r0zB=H~AZRl{5srk27`Ulu45(;lJQq*qZK=(T?DJ z_&jekxPX83@{d0Lv5tK-ETQmTa=phL3T)e128Dj;%=f^#EJ=TGi$4}_B+JAW3kNmr z%Xde0(!g*7ohwTWe1}YV+%doopI{g$RLW(3?5uot>!18_@C;clwm3-Lb4B(E$$Dv6 z_#K@yODz0`OnKa~U>XSSx!!v~up5wQ&wv1>(+MEoFL%mYQ8prabPN zZ8BKV-QK0zu=&#=U$RZ)BHznQWZhDE9>b;Xp zdEC{TJ+}IXzkdHtmI+C}DM>Fc(@V6}?+awg zFVRxRbIFv)UB^4dvBhu`*b>2mMA!lOnKZPtzm_bG7V14^4~Q?(`LWdd zHDt;YNbhn6`jh^8f1E6h7V14^FNjC!{8;M!Au{E0*Si>yrR)bWbI7|hHw{R%r!!|U zF=pBmVrx26mI#@1uimP z-%DrB5)JPmQyzCTh(1Beei1kN=OAm_z5v5(V3lDH~AWuyRH$zTxXI97w2(ZyZPnF8DUZ4kQE@3tTth3-_FU|M>4Y zJpwzZr|mi2OE#`_2Z>c|w&!$@D=NkDGv_iA6Jcr3Hof`6`g%2AC@QVi{~=2>v^}x& z^xMgTvQ$d?88nEE?zlR-pL#2u9ZNs;7BXecPi> zvP5iEpSsf#SAC*Jy7s?9=g3m~UnEl=ckR!r<~OGq{Zsy$e}XIxTg|7g&SaX8YNKoY zF*-MvT7QI0dEB+WO>ebWE5gxJLyEy~Q}H(V89<^HT~nGUf5t|6r+H?5V8lso_#S#ri+w zum2B_MdGi2sY<&38+4W|^}mHo*`R-iVZ4Y0@WG=42@wf+vuo!ij09XWwvm9j*mA8a zmHSHN{zZM=g-W&9y|Gdq>`My;JV*w0IwG--%|Zb`bOnS61>DC-7()TZ5n<~$Y?=Bd z6sfer^F^{OL%@q5z+cEBvQ$U<$wdqn-Ml6tFJk8EPjp@^J;O8ES~MRb*77|&c3^ey zj)L}z$KPkzyQjY=kZ46uU$d`9>WoxEp>d^jpT8TODND`nOs1^){5gz-(UMyZfjJxk zWnAjsTdCF*44ew=c!qaQCJV*Zs8c5*k{F0vkOr|{UAlROJg7gjTKj#mD|0IjV76PfKjVJwpaZCG8 z(Rs22z$eI*4FGWHyNm8W?`k-Z5Z(XZk^4bmMFbbT+v>%|-9B85^ah_8+d;_Q@*o6< zBgJZN7^cti{qi1%eaBWn~gx8b;YC@f&77y7@HBunXqF{W7e4?z5Lu@c^{GO zE~Iu$EaleNW?oGc8Dd!s3$}rBX+7GIgplD3M#3z^m-d)6>7cid;)X&efd~c)!7{#u z5Mi64X<>RM1Ab$Av0Sf~inY<;^bdecw=I;jY%3gbnnVsH-BDwqd1gSGH&#kRrOc;i4<0SkY_1?=T-ruuWiO~s3g z-?|zs$^yLJ)nn`Rlw?uv^}6$udTRB2H7)#704dW(7wJZf^=#(+E^yVTFx>MP3A5q8 z9i*OSxUCPrY_sG{5a}}3tVltacabF;TBHcVyn`$#OQmRI_6Q&hAKl3+X>Rvzbfzpj zY8PiKbqu31yCx(MhcA@z_}BdPdo5j*sk`WEM%OsR-~crJ#6kc=&YmSE&LLACcTDV=#Kihyak!^CQZB<(y3(9n?hlLik)>k`i^Hv9k*uMP zjQ7$xv_!^x$do4*GKQ;_La|os!M$-6WZdYFj2p<(X+1KMHPn&u9Xf}W$oM9ivH=+m zfhQ3`?FD}mU;Q}IPpB~!?+WfS6gYI59U4Bx}x>B`PPm7|> zs8PH2>E?oUZ5BnF3T4s803kd@6m2U;Vj@J*W}X0oU4~+nVrUD<@(k-JVrcWpVzN|8 zLtTR##?TNV93kDJQXyMn^5OtGTb6EXzig$BVH9oWxc+gJNok?h`0Mu#bU~)Z&@_{4 zEK2XYr0F-VpWZ&LqVs2|=oMtjTKjYgBQbVSw7mo(l< zaTpaC=~1+;=nPt7;?@6snAlxlA{k*){Ket^usD=1b<2LJA?DtjGS28u)=~Es3+X&s zBBPT`dEC840vX8&lY)$1e`NHKWn=3wD9A|GQAftPbRI2{@n$k*12PTr3*8)BcoYg;|N3lHeJne74_EYMLLU?`u+=&QSxQ7gltiA49%Iy71crV1v;aaAo(1b^0pZP=Nr)2rqLc}!1XXub5tEmIzVLF?Z0C|v1d7=R%8J1E2GJS)0k97)= zXitxo2#{nob%0E!vuO#Cf42%C4nZps_u`{y2NELscDw7qOmM;DG+tbM&W8(#zFjr8 z(YFQZIc(KpzOO!zk;b-~YUZp6dO|M|cq6o*8=`32hv-R1U9>Z|lKDwskfR)mYeac_y zpP)-LH72JSWaD^4U$}|V%n>b0m37eENoUy-G`Eo{Pe{-x5iJEYfA|8@(OP{y?G?!z;a6I?2(|$Tij>GndY>C1my{QyzE7>}!Hd z%Jk7{f3%!VmXNK7dA$!>(v#>;qcdv>l;vc~;|`SlQh<^Sc`2UdZT?ufm@Fh)teohG zm1KQ&zp|OmuO(bIkSR|{xFiE$3S6%Bhs&49LTWc$lJ(W$at)ndOSoK3rfh(VL!3;6 z+W0u#frJS74Y+o}1Q$FmuYdsRN9KwzmbhE-Ey#^ z%|d-Ixnfg<`krSbCPJuhyQQI2Q^I_EZ1V0}?+PSZ(Y4m}VoJ7)K+>($D|8Pcy0;UZ zGfUsK1EXwI?ifb*_K<}TN4u1k>qLJ&zn(75)X1K$XG6A~LCuQ%jumlPOO)oG1}c z1t*{M$H~XZGHMe}l$z=|`3Rj;OPq|7DUUl&<|_U~4qz!Txz`^iKOl?97AA(QDw8{r zE2^X94mzWjD7lqPdE8O5XBtXUqI7@r2gplg>DU6qkmQ{Sko4f(^K>39vGE+4^0;GT z9|ar9K$YS@4%qD79oY{^v}asm$fz>GBUw$|d+bYR(-I+jktt6&gd}5A3PRrCkC0Vl z0oghbB0`eY)Dg0R&ZZ?oP9ak^AjBbZC4ygkFzrA>gy3eoIzzz)kJor{@tkYa2)Td| z+~s2%g4;he1c$vHICh2~pCT>Hyozjb>E?pfY!-m~m@6_x0Pe$#ghPy`^(QavdeWw1 z0ZtaKl-HDoiYILgvm{0>4vr_67If77Mi7kOdE`GtaKY{7xE|K zao5xNvvg$Na@BRqk4D@tT^MoDN@>M@@2~a$p-VM2E~lAg!!S7;&U$E@!q*PIJ4)@cUv_!`}WXj`?4$;?)$mVKS9>gpcl6*{|?nE5N2vH>#=9Tm~n;mw)@iE-@fOk1WeoILU^-ahPbAkm)j z+PutOcvu_FT^&m2#}axA8Rd!4mzl#WZ|b}B`fIg^E=9|}OQ(fao znX=|t-pELdU0-GQ5C=*Qk<$Ep0J!q(s5Hp3v2A{`2QcaN(^0X7&YvYJ-c6=F?x@%; zl-jzi;}E~^4~p-SMPmz!|JUA|z{z=3_o6Zw+mbBXcn2H%LjpXKW?Gw#L3nIyv5h=P z)|F&12+{QP^vv|9p6+ok*37U35(f}WfW(4}fg2z!FE{wH<=%t@LIQc=!b`#u76)>} z7PH;(2qEEjfsowy|DW2wrKfvFvIMAq(l^~-Rh>F@>eQ)Ir%s*9x%G|>sx%9k%}evd zAM}r2k38}FeM3I!JaLI8n!mlD5EI{BI!An~Z^HD-5gU7%HT=e<`Qab>N3KVH_*&nP zPZ@sjH}ezxaOn$|JZ)SA5GO`A?1>-z#-;h;g8q@~ksns|4f&+=gV7`sUZx3_*s*k$ zxVdlI^eQ5H(j*e?OLN6=|M>OD6aknqbBrWl5*4^VY?emM`7S-!KVm(KuFrSx+K2Hh;pG7hti>pyv7G&) zB`dLK0>tr9VpD@}KIazi>|VAlOzSLX^p9bW-TfbZGg4}%`ZvWfFNLgKO9#S%_!fMf zEXTLv&!J<-eV_NzkS|)5QnNgn;EHRP&J~;br+KDBnJ@Ul* zz9FAKpQ@#wCfRVnT$x zdg)y9s=i5dVz?yH&@`94qJKntOtu2un+W2upT=n zFQ^-sq>$AvjhQpV{@4C7>rr;St9uVWjE2~&GALniRl^ZbN!>(W3PXvZ^)?`>#qew?jFo>x5qvsOYn?>-VBj)%UR zW{n(&v^>^e^U`dwtbg=+WQ%|Q`D2SrsZniLni;IIW$CQ3v47g17^z{Jm}ZZm{!#3a zJ=XON`J_vYtFxqr*q}1(D9>Lye;n$YM7^pIIpMkTM2Br-nn9k^KaM>z$g}!}e9{@@ ziCGMi*zZWpFu$>MHhE>=gzA+|a-xRju}Pw(X=ZtO|Csj3Ecf;e`P5{V#I{F*S^jwG z%<_kQ6Y2ypOQNM|X8CXZW7;FLyuWYAC!JZIkR@5d?T-Yne0%A<@=)J&>Xlb=c8v1` zOW4pft9-qGM0;eFuk;Q1q_fKEELQQY-3dmy_$5nT<2)K5PRtr7Ck$X7qxj8Cv&nh= zquC>ytn3@|smUh3(L2E=+m_BIH}*}XUgb%jY~nXF%_dLlAI%=w=^@cwqGd22e>zqs&JY^a*Q!uIK*#hnoIsq-+ejXBbWTFZ^$Q|OCF!(l7uZQ!6=)T&L|sB7^CFe zklKY&5{*ss%3%M<_Q)%1`-Xh#@k+v!mEe`)(s|{%eG{oy6{CM%Ni;UiE6?s9*&cc2 znSDb(>AVsp%_U#!AJZPW?{e3 zUt0T4~9_-PggeHF9qJU-;+D_&53I5%Jsj=bZR{_3O9! z=ZyH6`t?rr=k@$^R{ReBSrxy5f6j^jvwHbE{8NZutzN!My?hh@JR*KO|16K+qW=7r z`txS>hZnOVjZywb9xWjpMplRi@yJRsHjXUs%%8_bv?^t^W3V)^|0_398 zQL$Pt*E(amt!&RB99BN#vCEdlXYz42A1nAc7mrHJrsDka#w(UBD@lWy{hjy~|6h1i zVm6+yHe88UoA}tm$8~&M&&N~wcp4s+m3hwR~8{vMjHSQOi<$keU{KaOzR@%j1 z?AX^z1Klq+kiXdA*Gfy>FE-izV%yy>62biD({U(ETDY-7iwr{UUkoug?6ciCSY6R2DXA9ed5O`9~}Msf-10SBy2LN-%tu+9h_x z{268Wv$EM}w2Q6TsnJI5Sp2(a!~9wM)vx=GX=CbLFrV(3KetsKt-(op+i2sS$}#tQ zd!^Pmg5Qs-j$u6F%gV7zxmIeHbDT_W99h_%iHlP7`SO&O$0d9}8js?Mu{kDxu>CL! zs_0ft-e!>fkH_%kKuocQ%oJ<*L$QWG6l?gS#DE#=kiM{J#x6-ZzcMo9@QrOMG0`#N$prUdP85 z__(CScYM5#kL5FLF6SLK_k;Kqf1Hn-=kVD0LOiy<7>}JV!Q)?EipT%FmjyUOvB2|Q zj#o84{_Pcb?0h92Yv=LkyqejRK#w;;kd$N|W10VfU-1|CID8)-M_-S}Bi@L|wm0MP z#^1){CvU~$pWj9hoc37iws+#yoqYWCck#IV0X)XugU4sykH^~ohQ|y30FTxmvJ_`Y zmipu$2r9j zdJvC4{t_NP`8z!JeFcwqd<~B`f1RZ`2eZ@v{ zeu&3E{VN{d{t-)Y%4VtIpWxL9A7}g&kGuJJKOc|zH#|Pg$4x)O<5&3jHXlD-1}Sp? znRtBjEIdY*sgd;-z+*;z^hmA@qrC^6gT5>>9u$qxekvnUXRBmTk&}5FdkpN36HzQITLrMSvX@`E^vp*HM|fkIF24 zROHoB5l2TwlpGcLa8!o>Q5h9Sh1HJ=Cm$6SJ}NAER9Nh&u*^|mfuqu;M}_o9g^EXo z7DqcWjl>|h$XSK`!2GIUbN1N$C9UbnYJH}lX3th(dbT}@`{w3X-XZhREzm$`kKKpn zQ~buiegz(ngoBXI*VtaKoY?7D}}vrP)@1>fM}e{--6)(-sG~ zUb&~z4B-AV;XeB+gYfRf!L5!LOKs4&)h;&bm11MG)h?B5wzq`XRa6px*48w#xSAUE z+HCR2WTjrLH?r&bI_ueGyWp~ndM29HF+&BeT;lg4yT^D56CD|^z%m6<#8ER>5}J{u z{GYJ=8cg?!aj(p&vv6Co;w>l>cWyET6Y=9*#VqKyD*dXTuoe(r2>n7;y{TK(h2lM> z8V+)|E5$L~|5$I~?#Hkp^HfwmyU{>f*A-f|rQj7)^!z#?#P8l@z&ySy7?Lxf=7&%) z{_+-6I=453C{?r~QT~6SXnYpbD@Bs-L_Jcf9WISJUX}j56ouo>(9INtgv&{?Tgs(c zxmX7C2d&tS;&ExKf$^lSG{^>VH%iA}yrDM`Hc&}`#kWv8KEpCtmW*WY31=2CWJ~qV zbO7MdC>u{&09nInvQn~TsJq60%`#4oC+>F@^07=|e-&$h%F~m@&%GJNFW+UFy*`6- ziQ=iDA!vMQ8{oWRhk62}VtEyi+gBl1vXiso@O(9=~s= zsUb@$r!Y;_kO}wC05X0MTE61HUMMi#m==^x=Lvq_28j6mSSTnsgFR4Sy3?9W1NtZz z8*jeN04nqVs9E8hn+Ej&pu{U}?`Fx$$x5eLZMCaq(-8jh~?RH;5$YPU=E0L0&*bbRUF-au43Wr$jgrvSv0P&$tH_XYxc zgrl>q$;v$eh&hywKk`fiB1<~DhQO`?Gg46gQz#l=_#9I{Ye4%FnTy6aMs|<%S$)Pb zg*~1qmx41aSjAdUG2m4hd}9k1CJmla^zP@Q=v(mUrRYRZ^t~+l_dOOJ4~qVOEP6%B z)S5+Ihj3%MQmVG%O|D7$rwkyFQ z-C)zg)YVBq`A0&z!ggDCDzq!DcA^#Qx%xk7%V*8Nj*3NCXRGaEG3bX66anFcKsh7?tME(=)XlPZwVZ-SPXOX>znmI@S-;0Obyh0ORw6pue= zVGJzP2cl#boo+6O`~!jf5ez}9Iaza9h)B6nufx{q>$U>ulYkMwW!eB*7#j^JAnton zK7J+aP`!3-DAeAFlJO_{C>{#7zh&{WVDaj;_E5N8N?X}ZTYTX@%@A-02;<&9U}Oln zV}$Yl^Z_G7(0!gT&TJV{3@yl8xx(&Z0Eu^6NDEUXL*N}CjC(DNg~wc`&^tybKR#mG z)B}fx3cIlRIka@{v$88|e(yjjFkDS5Y5a#Q;}rHR)rw^byzE(SeGW?h1xs(3GiYbY zYE`;g%m#21%Eni}&;ZDi)dHYdnoZZf0p;SgFE)kqac^R`18Ut=fcsNXFy8VKQ#xy= zld3B-2y!!4B$ox{cc5tejhCA8Su>rKZ%tvNh-Qlvgdd`C{FnDG2mzZ%u&j(1TfUf; z-upWgjvw`M1L5+Fp>U+p#15j?hiT`I4I`RrD~6{_U$xeOUv>E1FuH zN%cRaWqk`Q>q?SkvAPcQpF zv>+}HJAnRM&g#b9gLor13fy?RBC9|_#e+AU#trlM<6*f3-Uyf*-)vw$ zxmP?BzIQ&zn*l98`r8I%!tj>c7X<;y`h%XmAAsWTywyOvwpRoLryd`@9|KnWwYT*R zFz|Nw0sa86;;&o2$qunLinTy-yxMfOFm83lw{nZi@q1!=)UC<=A9YGI&d$K$+d}u)rJOer5az2440c%j};lE*6k;fEJHp_fw(R2gocw z7LZLqi_4aa5)+@{#cDAWzubF`KY>yn8z+_`$)bhr)eIRdfWAmTKm4?5R$}9+JD?OZ z3&a@86L6#(OJTGmRKE({HtmC{&yGL+PG6o_yC3?5EW=WwQ9ys%yU5_x@Vpz8?4y9n|A zhfFhX%$70>Kuj^cfd2mH0QzTNG@ug({;alUAX~`cD5>Gx2T{X+g_nft`9;={GZ>_X zKLYUhJ8;2JHSAm*d9s;TD)=#A$J@SQD!6G075EZgVE-q8jqm%KfxUfku(L*pfPXt6 z$FKVO62WH;6#@SyK#u1vXFe_y`>|?#xP?`x5eRgQiT@deyit-p5tx$j7*HU>!6AVD z4*@;&W7ERy;g$m^H6{e&_rDE@FMyj)H{qHGF^5qF@T=(h^FO|~IKVk$OaMO!nDLe$ z7{J+5I}hV*#uvCd05YEcp@Ew{C3c1D^Sgk2GoZy^fxlC?i69ST7Mlyy?*m}`ML19` z25J^}3)F7`VEmwEt?V_Xl97hD>An@;K({S717vI2s$AignMxVvjYjZ?!PDWeSAu zFppF*t%{L~rmg_``w0D~7J6@l-PftNvI%=RXc~Xq9C<5fy@Ae#}R(Mq^XdAk*wni>X zUJ0z*>702JoHKiel_jMF)*bZm+zlVk-iekomk78+^cMX%yhRnb?1?#pXuhNuKwkum z_=%P&vULMS46n_f9 zvn~g~*TGq~8>w>u>Z|B{{N72o+YiF+R)NcwKRMuX_+HTb1U-5G_v04@H-|L@?%8w> zF2gxk;kz|+1mxhGJ+K69i|)oBhP$x>o2|ih1M9P%K>REEE?)uPWd$+Y){_Gb_0(1@F#TQ!^O>8{qVTK@cW_-{KJD#QYwHqJVLo_EcT>$9i1oW95 zrb*e9&jFMgA%fcb=@Y&OKH-W;*&;U&q67xl14N)bkIv&=NS>V2eF8`l|%fEt~ZRE*=n>FqP>X!g8{wU56ECy=Uz!RvS1;F@Y zmi4o3@$R&^88$q{5D)P5f*XI?nt&@?IFN|@r5RFSJy~Eq+q5oQROQ1;jY0wXcAl(w z|Lq27HcNH^nng7M{87M+{}iV+R9|FULb?FXVRwQ3X&wUkk2@9(JBQ;1_IW&867M&# zvn^;{@Xls>0X+w(@t@7%J_Gg`#tvt=SW=YyIrb1B;r#4#HHGk11|L; zmuelMUFy$Vs&!~}sptKg#Y+4*=yT~(54%+BvEfpG&85nQG&lEM>g!yp-F)K9roF+OvH#HD`MrHZ|cwq=)kCOSa(g4io)Q*)_TyHwG~X_auP z`&_ChBGkEE>aSDK~TvH3^s5*RN(Hu~~o^XK63n1TrmW{2!A+_(J=)FEZ# zhwyFwTr~(Hzw}u~h5x?blPt1wzg(sr?JZ4Ij;Z>BO5%S}&A4cpIv$pyKtv(^EPmb#Ipys?M2M6loD8L`GJN}Tb@rMkIKjc*W zAxq*9c@KZcWQUG*a2W8c>J+Hk!s$273-k;+Hh;mbaM9)w?>p<&yLVR0ZN&($Ifi4~ zV>Jl_a4f#^*U_)5b~cXGYmL$vOSDwB`3oD(>O_@i+ys0PuJa(*{BjYLa$Im^Ov^5C_^>>WVN$z!kmp z%fs|it>#skD6BAoU$c%)F@I@T7$@1=v(pNrbdp8((ZzeJl_O;y;=oA3lptI)pXHpE zJ|s9We?QLPw^~v1u;11d5k9L|uf7FQ0;2IoGctv7vz$6%h{P3=OP%72hNDgLQ_kMu z*Jk;Zb7BtZTO>X6oEuWFT|s(Zki_d){I8Edw2U)G&VKo^){BnCKe`f{9yz@gUx5>T zZFFq7-nD0#jt$)Po~JBZhLbprW;^0>)D`2+2HM8+E{#U573ri}vr{aWpr@#G^Z`2G zBtE0sY7a(th)gWi1|zU?qrPH=E(%&r&qk$IRG(gHKu@HCc?~@`@F^ zOW=~317HV`#?*dLDnCe+yhpX(K6L2NAW$eEibE5wgoh5TSg~TPG9G!S`UZsfN2=Hy z-5R0Dp!}W`*Jkg<7!2Kh29OPSY>fhZ_TVU_DqpSR*k!A-H5vs$f$6QKT1zKQ!2KK^ z&s!b#L=<^c>9x_&jZvZ{ruk@&Wk*4C2R2dLm58KjMWr&j81uzM)NVwqC2CdYDurm* zcvNCH1K+6HiYBV}RO(T+t=nCzMWdCdgHs7CW{)aGM{pd*0B%+y<1t=PoGvjOcyOvE zV212RLj^S>p`QHa2s$tcAf$5C7>}S|3WfzqR>aQ8uM<)Qq%$(|tM{qwy6t{vS+urA zTXsgm9K;L9zB-`ffDR}VVYKTo8c}PyQm&5AlDx|AeXWJjCaE0dCL2dQ!fBUskQd&h zQB~TGkr9xT^x+3RRc|D_YA}NE)BulERd>1GU@^^XAPBi_Fj9(2sb&!b+;+25QIK>S zt99uGO&e(fk*YV^(MEKXst3sPtYxz@W?|W?qdU-x%_G%TMG(|rEubtQ9v2aBJrYz$ zW}r=$0T&1TDR}Iwv^&juz`w?#Eb3BvUMwj$1yI2j|O2i2+(rD;Sw6{k|t z6LU%4D#H{5_uwIUi7|v3P=?vC*NLPkhqf9xoIo%P>k(AJiOPVCh_z}^Tfp2TsMN;> z4jytm#&WZ+oEjNkL0kCX%%QCEOec&v2SY|n0tBz~E*OK*EWzg@lWAh#TAartUS-z$O`vooNWaas%29#<@DdF7G#TT~|q_7mWRTUc^F;mOH%<#-$G&?*y7|jjO z4ch94O}%&}bK`5KOj8r(z}H#I;RLP|eD;_~^G=S{O}7 z15g^aj18I5DJZXXqfgqzDcl^VQ1dq_)T-3R)$A+uvNJj;w$Z)!X7(__&G6xS)m{GN zfpj<1vo1}7yeXYo`01h)c*D@h7?#lUdkGA9L~7B~FVhlJFkjhOc*u6WnsSvQlb#q@ zh*CCZVrH^GIcLad10ip!X1X_BcY%;Ic@uz^s(v5X1~UD4OyY!d+$M4YgG^e?WX_^y zMCVTE8vb#c)CtcF^up37c7pTSm?N_wJT@q!w4k^}|4%K?ObgH3*jr!g0L6^VIGmn2M->E?rwQ@trE>5 z#-KN0XD^7)F+iY@w^o9grt4wsB$Ywb9~rWMXm=21!KoEMRF5G{k47PJ$+|5}2Ai0Hw3Pu+qYx+0BRAE-VSU%-ZP2Xrpa^cAkS9F&FlfEieKem;2Nw_MnJf4JUEBt)f=05te1sjaHTRR!5EA=FOSJ@{)DTIB5LI&um7v*>twK zjBIl*n7CLtkW%v^tbdJ;>uh(SlZ)`%q11`jO6(7A{^N_(KG`IobYMKD?t zbm?vpo_e&|0ZDpFLO6g67NCrpo2}UvbMFjIfWwVbkb%)3Jy?>TjKL4xZL-k1yV)K971l*~tdG!6 ze4FLBIewe-l*(ielV6IZt&y2Npt|wRsQ*SS>npHJQ*2?0D^?VlcTW`-P|d(pYT6M{ z-Df(RpxT*N#Ihu_*)oO_C`D4_Em@6@WV4rQ6WEw*Pfk(X(V#vUjm~1RGG6M`+KQY` z>YYrkS`%4~@kk|_EWxf-qV`*2oB=Gabht~*#}NWH*F_)pU$&-8Wk)V>vm~|QET!uN9Va`ztCOES`bi6$V!8it0#j-v}&l+PLqp>sHHO_Vk z4a6in=|%{sYn{bcWpRjTb+X!K3TbC?B6B&Ob?*&HZKP7sbkWe{ zhFC#15>-JNkk8;oml*_IlwjF7FzC_d4KuX#k84nG!k10R9YjpyjuW+RTN!s0T?Z#) zvI3SU`Kg@>b^vyjU(Pp1oL7Ft3(y<%z{}>DN9hS#k>)iO;$&Wg@$BE zb=x?iVXTz_!EFv-qU*_AGkgI*N!tS0SpNDvZ)s_F7+BRBJG;u*w3U=w8v(RDCePL; z`7Y1aX8A79))x8Br-*l3dQH^9oH$)1>R&eE(a_LcNOjXi#vrgS&8BLWHsSDx71so)VYXFm#kfq>Ya!2`P z7|2TMntD@-ezmDYzg8p$I4N;!Dy@ws64k_^8k_S`)3uvLl$^IF_xk z#Le}3rd`B*uV>rzoKG8R78#Uw72>!)fukB;34O%i*#CTNa7@j~SvZn)QaBF5u8_b{ zNwg%6YPMFW_N6l@0@7%a(4DeyBnxNZnCxpMS95R_R2PLK=Ty39*iOvCkwYnsBN{ko zi$U&@<1_dXI)~;(5~R;*U-P1nvKx+Sw54#wm`UQ;jUS;O_lu+IWNK$U;F!se>(g}1 z;=a>eoWG_8$T|Fj>3pN(lL)8L)DXlwL3qe&PDPgvF*l>N~mY? zV-m-O__0qMRYwaQ7sfGVe4ClCB7{^S0#61Dp z)p86bM_$(B3`f4$OxbfXR}4Mq_R4}`v|XbeSgqQq-dej)Dt4jjk6#=*SOUmjD(L)8 zlZgCH=y?5jWYABl_}Ubtawi*YL;!6qgqlP!tB1nUgawuVOw z#v072eDGVFJ}bk~b(U{M!xif3lE{VCBTH^Jh2&dKNs>;NM1HI+S#k?YN^yS6DM`BN zlE_sa<3k}T#fh>l8KA4IZdnZlm%yEc4Xur4HB{N?vKp!i5$C*;c?|`BuukBdS2C}m zs*s>;v9%5DV*#4Ay3s~Z=~!*}%wFAS6Q*R;W=ogRVxt!=Ngb@0bxXfGj-K~IeKABN zt!M##4zr|EEn3!Ml`VsaQvT(aXCYb>$?_vb5hW~=h+yVfyw;~@FoloN{5*;Pk)f38 zsikiYB7#r1)v!$YB=^6=8;7r zqIo2Rh~kkXBE9fPzlgAEw>ro|1U!;Nq?@Y6UZ(oLNJIo5qjFhh&9;qlTT(|Y7atFg z75u%Z9qKLtaT~M{{S0zgMecK=bC&0O5}G{ZY>LY^qrQfDI4#Qg6Gxl>Nhk2$F!FmyP#78GlP>eX$VZTL zzQV}vWb4E~8~Gd(&y&Pt+80KCXw&Q_t1kDiyT5h@63zM2gYzgzSL3=<}5R_|g z{KKu?&b+D;awCB$@+{uaV2{_hOZC*4GedYA4uJByJ(jA;U8oXzfQ|qqMNu9W_x+x6 zns*8gV<02!&ED~0b^c}-PYYw;9{*b)KaP{Y*UM~ub7Zt|!Vus}?M_P|RB(7$_OG0F zE6E9wd}OkU4kI4Yn{rB((JOG-mjg@gvJgZalH$YRG$IK__=JccFUolYu20aFg`zzx zs}eOQcvmiZXDC8Ic_7T4iphdx(W0;@oG3z23MbjL9E>)ub*D2Vo4U&ou@%7%DrZaT zZYOJCj}=8IA^im}3Mr$`5f^#GA_f)Cp()C7e(r$?L`3|3j1X~Csu|+!!JXy;OU2m2 zHhG#+zdg{mXa?lmqNKkIDCW2WtsBc~ZcT*|w6Iwz)dw09Ctmn5WS-kMkgk zmeq1-SE|QBb)5T~Zq((tIx+T<;HeF_53O*pHM-Lr_7#!X!7G?@dp;&aGSUJ;9ZyPsrR^Z^35=ks-h=GO$TQ9D)&QXECnf38iT=dO`o} zYG6dCnUpho$fTCfb2)_^z96G0DYjLKVD@Z*JUJkosnQN^-s&&=a;xi&G1K+2($+!N zs_VP%(4j0OuJf^21c#c7aUDmJKzmScwgBDRnD#`cXql9e^e02808Xk(t>jCYpxykp zkiaw*+diZOIiM$4rFbN&3j3bf`Ef+UEJ7Ua#u-Y432019BMWw(b6YQ%%prNbf@TGm zF||3m^jVp0mzIj*6f2@o^|dEJ?0v(6dQ!3T_}HK1_Hqh!vx=uJxz0E~DjF%KRWm(r z`?{HJu#cRyIyu*8yo6Q5miIcws70Z+q&1T?7;o;7L^sdK*ebYLhEZkGC3#>1zSWeg@# zLLgDe9_le#Vq^;k#{j0k-J29k*m`rKnMqbb%X3_M?E0jG6m%hC4?XNAO|~qLscn$Jj^{ zIWF~bcq3frX^-5CJQsR-ba(3XmyNsz>DpHFbo7!oHJ!)zVrklbGi*N+AoKd|=G(`2 zm~Y?TX}(>;TjwR;*|(W*E1s^ub>cSx3?iFd>6s?BjKRLstYA7cH^>j%b=LBX@Mh3s zWu2_Tp6PI9%C^F&e8#l0|3B?Ju(`N<*Pc7~7h$jE&n^0=BTabrD-q6>K^P6^D7y9I~2jplN!k zGodG>g!D`VBa!oaspi`OI%7}G$tyX%{O82Rq6aKn>) z8w)C6f$0%LZoF1Oy7kd9qUCMvDyibeNVx*sa^+Kib|@hZPPQU ztY}s3?2#*>sx7x7SHHe`WFueO;jdqB8QIC#mi6@O+eYrf>$4P1^t*#2(^}Vi!!GD+ z67Kwa&oJL^-fO-c+i$*o=b8FjCtiMg?tUPbDcBF3S!Go^ZdyrPIV|qfN-ogscudm| zOnZP9XiOM4d*urDyN*z|#~O!>sM}s@Rm-AQVJjUW2%%-+pmd-kVN03OLKAyss@t}i zT^eP`PAEeRjv8tkT=DsqCbI#gZ4VO-=z;^RY1=xifXlUx3iOInRzuWL@+KC9UEv-b z^f{7NZ9M7P)besX698fzBS3jgBMC%GvOx&HG-}ldlc;yB2FAhE6X3~7jSrVj&_CtG zuM8V9KbxxzCSs})o13mi!T zK)ZHsTc@yS!;+Xr-WF#@v1iS6y z*bQ5w)uirfS=EF=fV3PFSmOvwBl!#Cu69!abL5(h#O^~bbSo7#3J0-RskA0FXD5dw zTgZb><0N(Yk@tGoW*n1YhzuD#yf={-D9W(W z9iSwXEHguRdaSAtoIbHFI2nssLoo#8j|aBMrsCwf!7P7V+T7AeJ-lrryH7S|Q(%B& zMYFo$OmEr|Lnrr4v_{o^N=b&tp_Fr2nRr83lAOk60m&_$#(slzN~dFj+2y{fOoj!;~r-ll&C6TN6Di zIq7wy9wgbefV4^Zu+>40KcB>0+ZqBZz*3b#Vg#PB55c zG3UT_fWl@?v>yh382uqY7_^Ri`iw3uhAi=)F{r5gnnOIjfDD2bx`=mPcY4{R+k$a5eYa6n`tOf+$PS}NHkc~=mN~J!OAd=MTJNp#7>aE zh}(yT%U3f7&_6;Do?px>rAzA~PT&W#J#VN>YX`Fu$4_c>As)P!?nJ5ga?Z9k1KaEX zrCw=`rl&hJ>h(&wtv94ZwU8Yu=p(o3t>4u-I>ioE)KehAKqa6+t&$p{mcAtU-cl1c zqu5&y_$r~;^OdU}(!x}4+sho3o1$!@D$Qh8*f8Bp2K)~CkRC!`pCJQ)$y6}QL5GGD zQt2bC$&x18i7TyrZ&z`$vK*`zebLC{u@GFTlc){qgf$~iK*G6_pcOlv@}!Yrq@2kV zy-V;Yd2^|u6zcGXk}egGG*If%ULM7aI{EIAdyssAP1c0csWY;DagIsV)!xjvvN`b{ z+`AyNh!)^cNd);NmNbe6wr z)oWF?D=`7iHM*|JRB{EZsmsqh_Ab*xw+vo78E zgvlJyWJEFZ)1TlF^f!Sr%=i0KTG#z zaV1l!2=OOldcZC35zEM|XqX)_Rzz&HdfITQV}xZ1AbAhLW3=vy+UAkE_jy~Y{?16) zWGi~O4JSWL^Z5ewl}%?Qb(|MUL22%8St*F9NNYMR0Bj@?v#AM*&H;KM$8R7Ry*m-xLgsJl_Q5D5ji{2Z+gjlm-wwoy6Yx^0~_?s#@? zv6R)l&a@*Hl6u9_tc-@6)GT^DdL9T3JGRoqcU=cGQpux!a(>?e@_I2h6%kTKEZVru ziA%-`f{AiCF}kH1-Z=EA-XOZAdgHoS*jUDU@*<_%dPxTyo1GS{zgJ7Iu(g}G5HhWP(r8Zvj2o#)EOU^&1 z0ivc%3_#j!4Dt$W%)!8UJf;^PhEOg*7sqTGNy+C{F?kuH^`Xjp$x93{Lux>@7!+AjF$dg$X)jDAL`lU&a090`Q&#wN zO|-LFy@&R%(hRIS_;=S3ze%DJ?~rytmO~gV;g2~d$STcdkyGquNKa(KZnHDoFpZHJ zB#p<7y)-2l(HcyNGn*Vd(#sc){tT;V!5sVmH&r=q{|L)7m9rs6r85}uB|oankjBa( z%QOvgGw&TqgXBC4kaKo^WD$N;JF`Km>QGJ*C@8DSnY0itr+HMS@Jsj6vt1vlU=*{` zF*B-{)Q`MgVqontM;L{L-%Bn{^%7`_UYb1ty%e-k5mP-C*$hb?LQFj_y%d5Bdnsg! zZoL$6S-O{=pn4rGm z_B62y$3V!77}l)fcRKg79(Dxj22ygHCEHF<^`)F6D+y zp(K9FSkRh+Q547a6_-#GR3<%DYe)q~TB;O{dBJX)Nx(YCP5wGKlcjK_X}uq=!foY> zlV}md%&rWCwMGNijmmBsY!Dqd;Pk{+Y@s&!SZ?4u`9XpqQCg5>8A*d}&=5=t`1C-* zoI5d&7)KnnLuUvWMBw+L{_X2#Y4oXU8(?tCV(1pP!MFuRy-7G?qgpQD-c0Fq^7cWO zix+{57<2;`ISkI6t%632@@08eO2Q?qt?nu`HEvQhax|1_yWofrR5ot~d%7V+35PPC ztQZ(@nBmF-Ded&8QJlc%mbh^)Am042BKjS`F-g}($OkuV_3C0iG=>{U?0M$sH)?cr8Alf8G`(fUwj;752lF{{ zfhsPOt;4-Sx{yb8cM`sIPf~W6OnL=Kq81zDMchF=*_PG5ksUOxZgP7A>b%@$_d=wF zbAmE+4*ZqXZGDhP*sp=|UJ~t@7Bs2EUK`XtqRw@2f1S#H<^oQ&EU`10*pq9O2LP_k{F+;Lyb;g@F(+ieUU|E^j zG2Qzzv->IARsWkMM!1YPE`1q-3|B27>oCo&T9im2iu|0IzI<30pLXG;TBM%cdo8o0 zSupIi6sZ&?GY557MmXMU&EwH)dQ6I{BWHn^+x=$kZ*uX-0G(e(y`5;CvVPFGz1larv9V&3jb_AR_QqK_B*z_$5m7G)lp?MF1n;v%H%Alm7GS z%J9}!+~!tpW0wJ~WvdnrPlkp;1y%Uy)gEg~Xn1^;(DL|7+6f&jQK_KFbbeGGtWLz^ zRfuTQ4Lz7oT*Fjm72HdoKBc>(jX|hg?$}FC^Tk1@Ew)uxtG?i5EjKi;&EY!ZD~l-B^E+_CGE@f zyJ4!o8scw$tOs`Dgp*3+3W%=F^nO-3Ta0Ojm3{Br61vY5Zb%(}4Q1Qs56d;tfjf5I z0p3?Pwiinh$C5taux+ar+c)+oi#x`myTO81F63DM;#%lR4HvD_q)~4`_CeySfG#aW zV=7N_@k>5b7BV89&8!ZgLj}ihiq&*Do6$i_=wU-~pG{TxRFP_)KJF92M9rlgSdgNj z$B9zq#77+cLTni`Gp`$A1$B05z^jP`nK2pq_B@%ilK!`=MlQu{f4)ky15~RCmyfJ- ziIyBXad6~j>Itf3=%KrP^XcTio@Gpj>-RBR2*(TYQDYgmFC-r=FPXa zzgmCm#NR*>_{v@pDhX5nwFke041UBBt3JY3 z>Zy!6zoL@?w*A?~TlVZ6jCOCktGMsZJ^Kfv1G{$LQhdg)-MbFJ>>)ITb|fcOqiy?f z%u~G^P=7R|sRIl8u%8`{MpzVI)( zBB@<_}KNCPJiD#5{yOi)^Y5 zZakD}93`BX?M)N2^nBlbolz0jJGyzf}0Vw3S@P%PtiI<1vnk<7JE3c=>D~-%rD$nNj^$Fv zK{R1lN&%_H38Vz)ICVXJt5QPH=79DC=Hg+DUIw~B!%+kh0h8=xXF{(RWMf{|5rQ2M zlS{Je@V{1VQ_mZQH%3zkLLv^pu;|hYzb*$mbav%Qg&rwWEKJdm%qBAyYpEWZBWk54 zYM)}9D^mqI)&4+i&hR9WO<{J+Qp5I}8;Q)II7Cl;VN!}e(&}7Tz;*1f`x<63oi}X0 zxMV%&5-HIp+75ZOGGhuq9#2}mGV>lFxg=nSjiobF72Gg!Z>M%ZNsjL zy=a*hrfUUs|DXZ|jyo|W1Z`-wsyLFzJ!2i=8Al)Wi3SAMZdXcbua1SxC)E%=??^3_ z=!nu#K3ud~fIBS~3U={N_10<@OLzlkz2>~A-n-u8VP6TWto9KT38K{)Iq%H{cA_he z&JNQ#Qk9cc;T;G)PDlBJ;gTk2eJB!}F0e{kx71d=bE%%NOGVqd0cc=aYZM8uhWt3B z2V^g$Wqr)!$=+nVa`kmYvz4*WR3bG2`f zTVNpMeJslYQ;4qJgnlDfM|fit0QE&cjYF66WDvPkt-Kt*vdS|}#(Ky!zZGK1X6anI z+ro76Gpv9$bQ_!)??L=-M%duiFVCL|ql_omghlv4f3|T%%{7BBQJe z@D8vbPZmN>q6FP#DaNY!Nmhr;u$6M32FmQF&%6bKw!;`AdD4po_{l7!n`C+=Knx)( zyxnO_e;89$NOcLyf(Z)22}$hP3RYx|W)g%t$!~^}#8YnZ&^MGTKja4Vp$@{pW5p1# z6cHCz(o#o_W6ekb@(71f2Y1;~ufK|D@TjrI$oH@r2EPHcVr_J|g2Muw2ZVuTh+~9K zQ%|Eij%}hQsXHXjnb(%l*3je>D?`v81y+_}CE8`~Q^yh2`WBjgw>eJ--SLj1VclTn z4l0x~J(!q06-EnM^a|$ZW_Gikv(IxXA{!;mrAb2Dg3Qc5$Drs;je<`h^LW5m?n`lc zTrfKcc?uF?#llhVBtVLNr#Z%G?jEl&2$SYvcAGwEeX+M}PuhFV9l0K+nJfGp39V0? zcb+=ZLdHw{jJ9H(r8DwMWLfED(Z-&YOb}zwir2!3^L840-geA_a z_)RhKTumCX9<>j|Z!qzU(n(27q%`xKvw)e$=nTivvLh3rx3jc|Gnm?4QsyUPU9r}J zz^dX=$eLERqfNKc{bj&Q)#e3bT0pqmD%Nvc*;BAUP?WG86%0w)W{4CLYQ<++?6i$0 zFreO=XQQz_v3Nn}R)?oeHOl06+ElY>Qw^sQevG`gLDlSpz*Ng}KUbC-QOlGK3EH1= zNR@_BT;V>7+HBD_&D$DYXs6GX>0)daRY?qpPD3`LmLz?8r3TxWcNY=DxDX*nYqxOi zZF$dm;{7R~Zb7!?Hk;kE!fR1uUinTaDsQ10v+?)L zx8Hj}f9u2_ewQdOS7j?N)uP>^`pUUBqzf&cN`(l+%9}n^t}Q2Vy9(DOYK_N5?GJXK zdRB@&1*hwl6jrbM4{Y0qZKy0Y%4tqj58!F-=_K!PZLbb3Wr=8q_i+`J6jp1M(SYiN8iF}0XuADc!&20!t0M77;5VMq3^aKQ5AfSO1Y>H%r zo20AKnS<(&6J-%vwuFsfaV?@LRyxR5r2FL{j$T{xtLq{z-R`UC$wk?tN48+Kby=8) z;QeC=*NxnbOsj%SdRcZZlVn+T?uW1h`z2NMV6{F(+@CnnU%GuN_qU@geb`(mT6i{;VY#6 zoOb-<*yG1HW{@_Sj(?htaH!-7*G2E3on9U(np2xOZCF;GC8w}q*;sam<-BP)yPX{O zKrWqfH6~754oT5^+~UF|V9L&V&G}uucUi4!=)1M`d}v9e$!VuFxu^FOc1ok4g$v(o z^&v_ssv7o%KT*g$z6Ad=`Z8fNfqtuGM_UIg)ry$a3lrX0#=VEDJ5kiescYG{5|P6A z@(>(9i}tXRBSoRlQ-~~~Tkol$8FuUx>Q zkydh&I_k=i0@Tmd85tA8MDHMMl>5vsOy}1+>k6ie&id-lKtFvmb=D_-!F+q;gZf)1 z{zdLIIb@c>zK{#bZZw&BOxZEv)JxlkIFqhRT4K%~l-;0Zb znv*h|iBl7j$+I(Y$mdi%SYk-Cc-8W>eVn2w;-!m)=$GRVh-z@}_HmAHr`xc!VwzLv z_{YLt1C&E%J9#T2D)X0>WT&RLfQU}hS^O)$Z=sWG9SxDN{He@YM}uvHkJ~nzow^sY zb*H@qc=elUov$NlJ%-5=7UMD_FBhkw1?5OZFbSI^DMnI?1d zb>GB1{6@~rKlqOMcGW-XZ=HDaw`6Y4K88xAs?x;Fd{q?e@zb0x=jpJ5^=YQiuB ztE=_#)w~-}Im=#EHLFt2AM*@8f_-d3>2H>Du(7ORVFug3!?vs4SP~Gag&anH>RlF48NZT@jRbh*!hF{_=ISFtgT8b{vUbE?&~0bIs=GV)RX&YtGB1 zkHV36spfjNLyIo?-Bmu3VHzjgEHip)q%v8NBQL5*8C zMf~rKtA`m>VGyTi1|xA^9F$wu-T3Zper6LP>p3%=?2VVogl7^E& z>;c=d78_-=rAV1E8G$iPwo@X?m~o*p23t3S``xLBlfm4^ad4ea+NYAiJJ~aYC7B*( z?6oDvCkxznSZhwKm>oPHi@4YlFa$FM)digI;_?uy5qoBkMsgkf!;3YxuY_R4jzsEs zqHRp}TEr%kM2Tuks$yH0&1*pg3k{o`2`U43TOiSyc6#ImCi27R0b!3e+1@A{nNT7U zqw&=*5Lm^cgfA)CsXXabDzrrpj$u zH96W38C8!I1zg21GOOo775)b8e0*lZI2Q!Rt1TYvfyK=PYO5w|j>y@8wL3=sZY%r9 zc~KelO9v6j8I#Y#Npk<#x{Ln70F1!PMo{3s46kD}+65V*>V;O4q(_M%sp~gl0q#kVDWnVYSkCtM z-9ePFJ083tUEU{H%d%dA&?23Vl~C zx+D^Z1QY2@kCC>F%Bey&w;KVG6abY=Aeg8;6j;GnN)>aIQDR&L5@91?jv+^-N#u%n zP7Fd!fzD|&;X&Zkm~iGiVeUvIh@dHbmzW@#Xf5JPjctM7|a9QE>2VH}3(h7#Qu`tm;Dq=BM#4!^o%gMA@Y*wb5#iB@w zoYkGO@M2g_b`WNhipN-qu`^kcmoq0$!}+EPjr#cN8*(iRt6_FX8J>n!_SE|qMK`Wi z&J9;vqeifvPdYhVJaP$~94^hytQ{CGk~|JzV6sU9e9XvW1Aswh4e)ZwbN;O&l#>9i z8o8AKbYemq*6xr`A9+6VT%z-cD7O+)XBi!NA+lVgv-rj{o#DkJzvX4{Z4ElZv5}8^ zh$Prn=lR6QH<9N89}%*lPW|@o6=xvXHB|AEO66@Q7cluORa(>Laq?2!MRxrJt|70b zyU49SHQz4#H}mb{pP6r0{=4~BdBhpI#QH~>Z%58H-)5GZZ|hc?Z+D(&zCGj7`Wu`? zQ8D77XFG{j$85NXzj$omilSUNPSJ1^ohBC5)w1y_vGH&rZu*LjPG*C3OM9pqx00?= z&Ufwf14^jg)}qA7f?X<<8!S0HvACzvXIr!%$Nr)L6kfMh1mBRVT3c)P;m~cf#Z$MV zP=R0zsw=@b*=|p7-LT=vkt4XHuvUmCJB7+vXTyspp+;=jwrgl_voQh1fKfU(0QL}T zDNMGfYDzWQOZyX~5{wJPB82_SLbL}SC9TOL&@G~UrN&_N%qp;rMj-f_a!_@ofcJ1K zQC{k+x5=$A2&`C(toA0>OzJVV(L=h?i1e^}FuJ`|@06Oe(Wa+9<$ASN8=aQE!XIk3T3Ehw;|#lF3#LtfrVE<4v^3= zcjE07U*gc*l$y4zjYCZ%zkIRmIq{2;3R9@&)eOg(oH>=FB=g`K$AfdzaMp<4)LpyX z36<9zy_9|=vi!IVr(@oqc1BS=fsnnanD+_B&N8qn%c^z}Qr22K5G>D`34k@F-1BTM zrdrN?I0CX6i)hwCJGYy&xUl+c3_oJ+OwtjKJhW>&kzr||O^uce;W_}RDP{O{5dJdF zs7k%DbQH34o!%Y%Nj0mFPJMd z2LIMcLCC#>VIi}|gcFE3CaEh{#Jx^kXSWCV=EN)3DioA1nN(D}6O(?w6Aa0dXHN0A zG;DWFAa~ju(CvfB@>uqfvO-ZS8fSwL^2=s`t&Frs=Fq{#rgBg+hkYTPf&AEAv+tP6 zG(^&E%1JW~Sq#)dJZ0~)>DkO-lU38mw0fJaX#-c=Jb}E%PILht7Of}<3L*o{UvMJW ziY=cWeX6j{z&#mm$4JJ+>et%~La;)~q5TVOaoh(|xdt4qm|3=j8VKx*(BX1OU=mwK z){Vk#gg|@ab6@6PN@$C2X$C8m|!TgdaD25v-=Bdf2wkV75lt z;HOHn5w9Q79vpI?yJ8OjX}AGqikSu!&=0@^_f0~{4#h_*E8QYwLsSkS2bhp>((>e- zodn`0QNZJp6ViB9)GOKqZJTveExNS@dGUC%E4OOoeNiFyreLg$P2W zK`4(9n#kevWPxtPvx6Z$r({JHg!tZ%-4L3dVaPYvBIv!mD@UGz zy}FCTJZgaJ9D7C{K#t489CotOncg$=GzOd zG~c!l=x?3)x=YUBM&0G?DAt56n=J@Esv0oWn#OVQC#}lZqboPCB?G$>wZXOK>*y@sG|G>5ZVvTctqFlIba!_Rp5+@gV8eG;_1=Cj5WK+ql zLI8WHdAGW3ZU1yhVxJypRw`l8L9?jW86%SuoC_D5^e)i$W@#+iUMaQPRmG*^io>0^ z7Pj6d;M(6A=3_wQA*&s18e7i{@LqdBpGzc%Ow6gB&v^Oq&7#4v?50tq|_fQ z7a8-^=|Vk+INPT#*aGFmUmClNGIvA5;V!wwVI9Dp*CGH6LaNts++#e2xN_}3n$^e|2C0cU6}U>lv30h?r-URE1YTaEDF^sL`32L`02Q*hEm> zkrGz8D5?7q$LldF5gi<=SlBb{UfXHVd*Qo}j#hRWa2qW)V`!GlST{wx>bgZ`I)5Ii zTm#LHHI;DS&{G>=qUq35fXW&*2~h5ErLqMhqMhsppb#Fea8SVk;o#~SJXg>1F}M2A z+JT`>gOU30={7PNe@^`GIAqXX>)w}j`z#rZ`4TtK^0oQM08GdjrkT}$KM?>~u1E78 zv(hHP^B5-dpR$EG0m3}yBXf^GER3C37gj2-UUgWSXum^Y|6#6%JefxI;#6`Lb|#0U z%3?>+0je%GoQ0bcdYiv`ooWopIiB2XZINKIS=ZQ?G6x>7xzR#hXs-K3utmst;ZTM= z6ehQGtv?rsgF*&Q&Tb96N0y+7XF>HpaVr3md0jUpC2F;#=6imW;ea^`(5hg~3~N@I zR1KUpzzE#&fD>|M+S&h2F8@gl zEF%A;fMw!q9*ITd`ihc}yVt!vG&3XnM=jh{N(72dq&hTRn zxNnWr20P4{gK9sIJGItDR>rconDn(->Xw=AenLRs;g4nSg+#z6X_4wFUmF zP#TOgQ{SsNOLxp|hL;10{OJmZNv$^cVLA3yO!s zNmWbR0xUCfkI(9!#(`+sYAE3hoW?T)i(Dk!)R{5?S#Shv2gJkSr0C?+;v5kz=At1O zDFKn??OoEM5iBKwLQV#HW)7Q!N|RHHU0$s$+3jnW0u?E%fL)_3H4eoN6NCbbb6zqg zXQZ`J1VJSfVxsKn^)_~$ts{%^`U-SGhN1vNw{R4o1@ooAQegU)w#Ri{V0fI!=B-Si z(Wth98YTcj5Q9R~!*z-6T7qYBpJJy&NQmdm!x%!sbn===F*esnROo2w6NS!f58=d% z;cnZ7;9A{#5ghblt&rgX6hJYc1L^2y z4+9z4B|<>R9SwPrGEA{95i?8{MK$1^h@26mFFt}s0A`_37(r&uB?*ECeP;5fsS~n{ z$;ZD|%r6)y!;}&Vu^5!z+<+M-b9Ueilj=dwPT%g0}@)t@>NBj@>voOYd#L|LcTc4GZ~ bAJ^$$e!BVg<`Mm^6aV%tT$6XOq4@s;oDXjb literal 1367323 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 diff --git a/.doctrees/pathfinding3d.core.diagonal_movement.doctree b/.doctrees/pathfinding3d.core.diagonal_movement.doctree new file mode 100644 index 0000000000000000000000000000000000000000..2e3f717e486bf15eb524a00a4dbd47959a15331d GIT binary patch literal 11359 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 Cwo~;0 literal 0 HcmV?d00001 diff --git a/.doctrees/pathfinding3d.core.doctree b/.doctrees/pathfinding3d.core.doctree index 16be487174232092c08d465bc778e5ddd5abdaac..aed8fbdc362b7d4b62ac1c197d640ec8fe67041c 100644 GIT binary patch delta 495 zcmYLFO=}cE6r7LVk0fg(fm}>t2og6T>cyKvz?-nLB6{$HCH74BZgrgP8OI)C4&n+S zVWA<&w9M7uFYvUGgLu%NAmTyLt2fVH?AZ-^c)X(CdsV#p@MZ4vQgu*yb8XgnUw!Nq zZ)Zp&f9mx%F{SHa+)v_6GLxH)SLTITM+H^XItGresW?eA7QL?cAm3%3d5lawp*TcXwsX%)Rr*j9pnM1}A=H z%+i6sP<)&rm6ztgaNQ6xj55Z%BAO^807DnR4kAdd>wWs1@kGJ2h^~b+Q6iS6tw}G6 z12fcB2*$Xy=*+3qKcX(Pe!x@COv};JN+@d)%V^K;PNy{3{r^vfP29sWF5!HufkoWO z0*aL~rd1o!g^tl@PeZ!Ao6;oVsi9c2qo%Emjw$bN+q*3+!Jp`~vw-K{yj!E$`{a}7 z;bipnA^G87#1S+Ov7hNFN&8&wCHC*q>1c?*B#SxmkBy$HB6W^4EWE6u-8~ Ob$=gQqbGvgb^ijGvbl5s literal 289470 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 S=FwkHm2r_^{*>x)=KldyIsVxI literal 0 HcmV?d00001 diff --git a/.doctrees/pathfinding3d.core.heap.doctree b/.doctrees/pathfinding3d.core.heap.doctree new file mode 100644 index 0000000000000000000000000000000000000000..ec90e450fadb5ca8685179189be9f980e54e2765 GIT binary patch literal 29540 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 IQuOEkA2hEregFUf literal 0 HcmV?d00001 diff --git a/.doctrees/pathfinding3d.core.node.doctree b/.doctrees/pathfinding3d.core.node.doctree new file mode 100644 index 0000000000000000000000000000000000000000..8afb87dc8e86f8fb51bd6a03a92ccbc2759142c2 GIT binary patch literal 80106 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 literal 0 HcmV?d00001 diff --git a/.doctrees/pathfinding3d.core.util.doctree b/.doctrees/pathfinding3d.core.util.doctree new file mode 100644 index 0000000000000000000000000000000000000000..282e387a70ed7c8b7b81053a5fcc04050ed32ac9 GIT binary patch literal 38449 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 JDE#F0{|EfyyuSbd literal 0 HcmV?d00001 diff --git a/.doctrees/pathfinding3d.finder.a_star.doctree b/.doctrees/pathfinding3d.finder.a_star.doctree new file mode 100644 index 0000000000000000000000000000000000000000..3696b2f91f8a5ceef4eddb5b5ea58201461771fd GIT binary patch literal 56650 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 Su!{b0u7i^R^OsaN%l{wuYp9g~ literal 0 HcmV?d00001 diff --git a/.doctrees/pathfinding3d.finder.best_first.doctree b/.doctrees/pathfinding3d.finder.best_first.doctree new file mode 100644 index 0000000000000000000000000000000000000000..adcdaeefd882fa53e33dc08f8746bd9fbd2379ce GIT binary patch literal 57021 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 literal 0 HcmV?d00001 diff --git a/.doctrees/pathfinding3d.finder.bi_a_star.doctree b/.doctrees/pathfinding3d.finder.bi_a_star.doctree new file mode 100644 index 0000000000000000000000000000000000000000..06ce7caad1d15f6e3dcfcaba977ac9e41d405f3a GIT binary patch literal 57208 zcmdUY4X`Cgb>9BH-~E@g>$O(98UbSO%J03^AC6ge1wudQZ&zZq29>1s-Ff%Udo#25 z&Rp)yefu7gF|L5k#uJN@E`+k36eKoa@KQx8sWJ{mfGFa)>;zNb1Q6I(5{L~=c{ z+fFo0rrTj_&~<`%_{{L|FAsll*hpsj_W39r^jpp_*#I?KuGeYzonUxonC!snvDb+f zSo^8SX~kX`WX;_Pcha3YGinIn=XbcgYLdUa)*idjUT={e?yE@uvNF zGm7oL)eYMNXoDnx!j{v{DzaACa6{AHAT@mVkd9)qX9Lgi(A}NPG_ygvo0Ca4wv)-0 zju$w?lY>P&nYH7%?=22ukO|6Qv)7Jryi=`?9Ys(GpCm2D1g23q?IUn}V9T5d_r}7Qhjie$$Qcar- zccCA_*bd&mX|U*SNG4E@tAe1Z4%};DEbet6$ydVv*TesZ;QzxoE)Y%MBco{~TY9$F zA11G+qJNzwvX<|8m|RaQ&X?44Cr`#hd*J?zJI_UN(meohxF*NcyzzW2mk%?Iv1aqsClt81?|0ddjs6SqIoJoWP@A3jX13i;bf__Ko` zjBUkwlbatq_R1Kn?x=N$i1pBIbJnqRJk6+Qx16I^R>eAW+iid;V(@#D3DRQ7Y!I~m zC^Z14bwMzckRZHdqeYE=FMi?_+9Cy80!p&+{LmI*jaXa6UI&YgR8y>!%&c}hN69$A zx%K)^_DuE||v_^sQ+(^b7Cl zONO36YD@N@6E|1v&cKm-O|Favyrj+H4H*p2~lN&c|Fi`%6M7c!P(BXPy-KhGA&FNxyu4Ot#%`cgT{AAy=EA3u9@j{0-lW{E8ye!9dlQ;v_d(ktQB*`)}q1j-sYH|vHaJGAoJL-*-q5=ZX`u*S*n( zfX7kmD6Cn?r2gpHcW7nC0ujPO{46u!y~z|KB0TW_n*wlTvFDITP;(WuBl2+Tx;uwq zO?5n&soNcap#KBx979TbldS^70(*a_uqQ7yAxJ`aOg8n_aMidrPglB zv4q%${~h?4O;2xp7y>692t3B26}yhbX8hLeH&}LOIqZ9}+qIVZVb@}KPn~%EhTPd- zi+qvLAayRqK;eVA3^l=J3T8LEbw{bp z#Ud`vqqU^@b69)7{~G*<`c0f(XZ$aQ?X?`2@blJ1aLi7uA0P3i_(W`i>*?m2%ZR%+ zTX0*AJM2!!UhFv5lNPQ~4_ou|Gz>Fnl~i7Ql6b|&$S~j61kpEhnwn?7jT|qr603x^eN9F z;kme~=wYc3*Z5QFa5uxV93HahfZ2RwC;R|$yM>H<;*6u7)AE+Q*6=<4RnR+ez5X6# z=V>%r;y(BLRG5AQ<(bRb4BAd5KtA)qzZctAb_{IrtdG1tG+>PBjZy} ze6C%9%DSf*k-GmpfJqd(|1Y4r{}lYGAYQ=g#={1v!tWE-3-5eJh$|Dth>{lOcS^D( zbHV%l(YHbX6Iib9OmpCi$z)*JC|{_8CcKYjGsAQf346eHc*rtgY&luU&U2LTlQc0c+ za#UrKkx-=yMu#f3P9;?RX~}@=qiTOHK4k`&CThj7rul`d_nOTzREl+mLtwDm2aPn3 z7c3qZ>~2zMnfYR{TOfQDR~-d*w*c*O*kzKDV5bU32RpS+CD`pL8E}2r?d9P#tFhDx z?P8ZEhS?a@#3GKdb}d~pjGZMz%egizu7$A)GKkcgGuLiRzGuC+6kRgp1a9#dhEnPC4eUuC> zhchg$g)_q=^m7WWV&DiE`wZc$xauevdk$!qV~k2hnJ5&`d%w1xQL;YD=Dj6G{N43* z{hgOkz~8GOV1S-v#47T1My%GUWW>KyGT@vMo2j0_iQ#_#z6vv+duUZ$ua`xAZlP6g ztUz^vR!t)q?txJ@Cb{<}Z)i5Xz>AyB#$l_W4YTphAky{*3-%SbVH>t4y{1mHg|t6; zk5U%q$_8{&UVSv&htq=OT@oW1#g}DI(o-2%(|lw!V9N`*x4vVG>|teB*KmK+{Vgdp zn@ndR67(BN__hQg?!=z1LJ3#cqnXgP z5l?-Z?k&&=L{YXy!FSEX^=UdroTurG@sSmC7q!xJwC7?6nSvE|hxn(c2)I7hzd^)* z$~*?W4t|X?P^yD}Y9_AN0VB?J09!;DilogVA2$=PC4JiGI;DTfw~TzjJaWCxK3h>| zUp5oh>x>cSIxE@}!W3EbGxrUDX=bCAb}4u3)b6-v1T_DL`{d{+rZ4M#HcwEWQ4Il!; z>K+jPC=7sZ1M$BK1MvSG{zx-U|Lagvy7PnNJ=~}LZz7GifhPTL;ionDlqegX6Fv|A z)uI2FNPVAvK#jv>H#=+#$>a<(iDS$e4Ho?upm93AWNBDAE78D%6;=dWbYM?wOm?eV z13Y|Tz0sQ&Gvn#gx_Sfd_J7$7T;aG1s)T0rFWVVA2>2arJRsmBu)355?BALzYWS}e z$`UcR%^sa%5trNhYsrnJyPv^E86Log`S%K)v&_`VTv4Mmfpw22n@ti~ynGNjZQNeb zvOBFo$Bto>1*FPh3z&mPA#S#MA!Lncj=v!%zJ#TOX>sw%S`uNgyNl3BlZU|KTCqEx z!)7e<0TM>`w>#L6zs23v$gE|QV9EpT*q?S%Wwt&ai9P> zP1!Ptq+j^}e*z4Muq)O&a?K$8e+bvP@G};Rv_{F`UO6e#GV{e!X}h3N<$VF)0B&pS z3)lm+%YmCoMgp!X7#(mmb*|ECnd?q%QVE2VTNwaFI-sn)dCa)`rQOjIiO?lxPabNXqh#` zfc`k)tGKG@q5Yabw}Ey!&@;(MKvxB$1G=Wp>qmtNSF=jJl1{CX;ExyWI@| zvN&fZXZJ0{ZwF3{TlOL>)W`%Ra_oM~oo$3YJl1V@=BzO2tXW{!Pz}xjIDN|s{%A=N(g0RIOtgU_mvwm9X%lO0wU z53Qp?L3i-W+AM6ShF-dMZ$W2MJpaxtiWhKYyig0X%$~kQl##P1EUslwhJ^f&6k5dw zBG}Ro2w%ljN3o?J1MPBK$|NJ%k}4RTEotif!QW#%a)hY^t7PuqDA8oj+|5*3BK)^2 z%m!H^99Qxc6XEZzK$RuJ)8Iv#H#T$qR}erFLP|Wa0GUgTHv``@1xo^QTwnM;6+oB(Z#lV;Y-1ns5|cIfzB35fIj4vfffn2o#Nye>k5Tjc zx8s!#a1<+c*Pr13*;)zytius9{Du?#q zBa=go-1ys}k!g)BCXrW2U4hNbpm>!@UbZ(OpE-l?Uk`&%kHX**23Wa+U`i1lO ziS_XKvD!S!-c1bLp}^&Q2gkQRK<+MezT>9~tiL$n!8y()JbnR2Fz$rMSAZr>csviE zatRN?;iMUlpDq}Zkn%`H4bP{uD0O<~uQcUx``wuGuxYM?ocAMUig9Z&7MT3PG#4hf zh)b3V!P&1a7cvG)9M=DZ4IzCl%l=iwA5J`2lH{`Wrl6C*;yTG^Ng88Jll-`rI zZ?VyV)Lg;Ajw?-akfN#aCcw{0z!F*2(K3V8) zM7oudrp~OOV=fuBV)0WYv+Di+_7cemE00-HwKSb^HF`D~lBuuL0n#u-u%SZ{K*jn) zE*Til5H53zbu1QXjR%Y?3RN?Q42%)su(+xSM*lXbTqBXO3f0TOn8`>2qbedD7&UdK zGwpIHs?{n%@zD~w)Q95ZY4e7Hoo zIa@GOWdWh73RGD@2!9p|wJz`M>t-YjM}ziM0>nlh;@ zoCd$IGLs`Xq_o>|pL93T7%;l=F@Z@eEpgY-WDANwXmwU;RcsBT42||$V`Q7=#48V~ z4UMEeII>nQ$;e2jH3qivj39hF#Ar0KsxWsm2->y zqR}GFA@|Q`ZIh=ieaIa{>u}vaM%v(?+{o2%`$4lX=@M0lYERPoRD?YGE*0-h(yv^g z-^_$kBmVw1Xk?lii1GKYlDaug7xkR7;*`@x!PEV4J)C}j6i&x<{BQfL{8Ux^uKuva z3^b~8*kZq#xc;yOBhC+77?1xQHg{3$kOl3z*xl!mW3DSF9k_-2UqQ4Gqv8boKZL?D z$MKT`MxQvOA^!V7gt-uZ&dsHP{%egSg>Zj5NC+)I%dDfy35QqQ<8T%{^^CJ&pDqCeGeS^8p-=tFEU+9M6)4A#4~q{h}S4mLWF!W>-1xPtZ9 z(g%qW8eQ_>oh#(QPM_4+)*2!Uk^T}i(!}erxMYzcU%kP@^XZN& z3^JX>%me4}0}55eNh{E0v8DGB4vVXb>z%ss`riQB;-UauNIqVl$w-PVsUp(FmNa$X zF3L>HTrz4!?oZV>>)^71tuUS}kqlNn1t)I6&ellP(s(_aRVuion^#MKX_!=e2|5?S zRIE$nm;v)o2*)5)`I1O17HMfB1M2|he^scOIb^_mfpAz{RRpGg5h~Y+-G2wFmjg4C zkpxUtL^@z<>TDI&%#o?qtc1*eS0bAF$h;g*fnBpz#$K`N1sv~#Mj8i;#r1HUT@IQ$ z*sOpn>n4S&nL~!-1;Sx*)lqPK3(zjdaV8@P$Et{QIM&n|ks5={>RK`d5+qFi=u{fe+0y7HyGUUC0^xRAt6S@F;1w zKXCDEk{)hgYN5UPDljv*+7b9`{XjC=OdljiGu*tVfaVB|LZlm?B z>tXQ5Q5Y1q!Eg?R!u&?-2iC*mJ)`hAli4LTD$c0-%icsN;fB^;56fpqVR;*2nfVU} zUe5L`|21_JVi9Nj$@MV4N*FJ{HSZspiR;7Wj5rUQ7u?wP0WI*%dDcu^uM$R_tHhYe_)~KiwG=~puA>-pT{)A% zA94Pb$h4Zt_O+lYGX4g*$!9Xux&@gGrJ9h*NCye=z@Na-F#J#@lkp%q zxDddb*67)V$XUj>MZ=s0uie2T3*L$oknkX!3+`KevbBrWrRRc|;8-zS(1Z7v1aJ{8 zTi=YGF1Mi{nK7sYn#n5Qz-2tm0fqg5jp!v$lx*8>nlq}~{@C(z1{)nntq5i_<4Tl_ z|5U@FTH|BE=vP7`O%M-@>jm+$q(~aX%L+Jnk115;S-YwM7Q}lk;jp->xa6*zCAke~ zi|cK4Px&lKCL<|`r;11y#M9K#pK4Gm7CU=kac`AKMhMRxAXQ7VB;z~P5JQI|fQt2p zTrx2B2$vv8IWvOAA}vkSW*wQ43kp>;hYXCrLO3k0DuU5}GgPjT8TmD+UJk}gMiLlR z5$V9FsiQm9pjN8{#cqjQ>O=7kvQvGuQw?;wDkqzb3$)L|FhrykD_TJ9r^(oJsKsKD zRw-(YhZnx8P&0GJ(E4Sg*i*NFU#CzrbH>1ZkZ@L9brf*F5@?r$JCltB zZdEioaBJ#7Otm5cxJFenl>j|aBDea0zKX|W%PVi6zMBeej*W)G*yz;b>V zi)%sEaDh=*p;e4Nlp+JFPxvaXItoxjpj{5sOfnKsRl(?hs@AE5us4?sIEOGZRhBls zx`HESsVrQyRZL|~lB#1#8-Jn}IN18~?)g*Dw7J030bl%B7B5J<0Woa%s{v zp^!QkVjMhkDir23)9=Y7QX{?pE@)IWz5h;9SL6|wx>U^qkGv3gBwx73Ke!$qe`^#T z_vWtiCg^4I=4@+j?Pe1h%`bdFzrUUV{VOWS(wB;T(M(*Q4`swF=0m???xI#cl=fWw z#1IqJ6iep1az2zBy#Gtcw3-ifp>W*!&}&RSk{#^&A@rL|hpIj=&4wN{5fqZ4=?GyW z;4=+XNrv8ZH~1xpG0{D1b5>--1>g8~hC6-l9Num`2UoVu(YM&lS@+&~`wgj+UPnuA z1V3Rcrq6%#RD>loFGsHp;{Lx}+%N3~ZCCE9I`zi+8(RqN!bS&D0|3uGu2kmB5~^RQ zB?1;Ax&az#qM2A+vi^}1OvX_C9SSuwqFIpW4TQ7es^S8%ZkF>dpe?R6(Cg&0oSAH- zAdxB>SZPdHFTC>^@p24Jol!&eD#>DJj{s+DnL{Nq6yi>=B2`QCq4PKeQO=B!A~^Dj z6SvG=M(8Q&yg*4enPxOk02d9DM+bG1R^TvBSoN{Ee1Bvl`= ze?Q)2^KW6?B3O&DA^`t6BCH(nu~?*43VcI+|9OR$nJ)(SuMxhAtBwNqZvpLcxMz}) z;I0Zr2X{@KF}}%0rC!MT(?_>aWS4y z0BlNk5F3?E>7?wz?hd=&F`ejVcfo0X;oj}$THLYc@eycbiVxsGn9Ok?W0tv;LonwR z9;`JwCi@4lQ7zf;z#KSFC$QD-sdmd&5XNa(hha^}5LaLS(m>FOZ_HZ zwc_hypCd%qmB^7u6~a8|${Oxd+1p08iNB{I8M%=A@jo_NnmKCz#jI_TyxdW9dCY3e zd=nFsTl6;UG@AH9Fls(5|3Bdf)!5+Ypm5x=!K>v^o-`VIP~xwl*IZ;!)@m9TG{Xhl zi;J(bPR9l#evT=!N>uQcJMbtg+*nFpgNCmugS$&Z`qndu4Q5x$3hy_g?=1sYzpl0% zt1mJ(Q@>?)p)4|Z`5_Yo{y(|E^KrrQ+2iCX+l$!CaY3x){xYPcS$Wf@z6g6#Kl<&ntwh-caX3E5Xgn#@E39J z1$C}fOg1NME)TV}d4|B|HTz5Cf%BSE^p2)|q-trj?Y2y>rv^b}29Cz@)JBigOCCM) z&sDr_W^Wku~#e zf(yfZ8-J(s?T_Inayv2kbP49$Y@2!$gQb^hzAg4S!hHJyc{V0emG-jq;8m_c`s%-I z6Tf`ng=T&((o4O}HmQ)?(Q}|T(G+FlFwf7Q&Dy^F^K)rJ4Dc$}ot zS0yPG!;F*F;y9hX(u7l2f0Ta`8m(KJ{OS)bOkS3|4&)W7;5uso)#HcqXF@sot{@~bw^nu+W8F)`wNA5+0q8-ba4tsP9X&*F!D-dC9G z$~&02bNBxYy@VR2_yZ_>iK7&fPp46er$B!BD1}t9AW9+D5%w;nV*`KsY32;8L@B(t z!rRm_P=PBdG)*7im#|0fbw6N+tN!wbmpvjPs(OgP1?9evjRcgt zo`}foLv|mwr^QY`OJ9jaTw)h%NsL8CK8B4Bq;>|6tZ_v~UY3nge^g5ZY`OXcXr$RF zg~j6Zv^3Xl+$i-;g_=CsEw~Qi>x8r7s^UW09ES0qhs>L_kp2sxEiRL`U#$#CM=5r-76hb$jAyrF5H)qKnnZ}#g&FJJvGkRN6eBObV z3Z8TDJpr+U?;0e(u#Kh=PsUdPgU9s;-5%X=1x5G4mxti3_3^`w-EX;UStZ8-=>~C@ z+EsUp@3~5bYB6GPv<&vUp^*mmSX>MCJk`j!;|1I|-Jno4bI3NE93mVRR~6y!zX-}J zjw9vZKL@nS;h)J!g1;&v9sD(QPK*~MT)1jqmF!|iiE!)N#eH<;q--Ii^AHRsPy=bO zxk+o#=Y@*ZXe}UJm@$;4U%43US{P$iaE6EhG$`*d#NzQ=!HPn)7}_X(W(5)9u(;|d zRok0fMVprCAB>kCq6rKH6{3zZ4lqhNV69<@f|h=iTr) zfS<^$TbP;CK#%O^4XgZ%wZOyR{kvq`Ie267_~HF|g=#To1$aM8I4rI@3cSAnw9Db0 z$w-2?Dk2@cHFb{E1px=PO05#GKU^ZdbpShy_6k?F;Hb!MI&xhL=J4U>7P#s794<9+ zy_mZ5?7)6Q26n}`(2r|Dh=KfvL!caLL*ZY za1?Ow0@~%^&SWEjTNRBC+?qP`^{TNcBxL+0**0{h@m9<9$);KGWq)%ljM_$Nq1Xbnhp0@a=o-kbe^8? zp9imJ&*R1Y^WCsL=s3UzaE7cX4HjsFg+;GPUk+fg2DW<$8XP_|1Pr>f?tXVO8}l5D zd6V%OIvK$Pqy^{e=aQ>nP7*{I=?;S?#A28GaGTul7l(~xA`WA_GrWI8GMm)B? z4YgpO*dSh-|GD|dgU{Ebc3&#Lhi(C*<2gWo^ws-7cd0;O)AaS_xA=%^v!{kbs4TSx6 zv+clCq7B`6M6i>sFj#_Nf<(MFVAWajR$*U9vcn$4VUrgnn;`k0Y;Qx1u$e&+1WO8F zo$2%gyMwCRNlFN~QT@EA7deA=*j()*q;@&0y)bf`VoQROR@_|iB9B6JXS3}^_F@MI z!nmADO#{qq8w@4_V<2`0M7OhQ%_Xk`g9EGIi=UvA$mtVXbONN-29s&jzd9uk#%d#E z&%re&o)a&TKEMGSapP_WI-7~@MX;ha+*5Y{baDVN*==U#nGK*B^$;N!l3meS5ZkLw z7p@-Y!2f{XEu9ddzb)!Q>aO{=0oZi}g1VA?r(c_$5Ml{bvW$=`2yVb^$hl1}nppgT-W;x)ZQp zfFc|!CR61m-P}ijvm2NKXvJhtEx>FE-FI?@R2o1!j1&X4rR>WjnoygRPhlbb?0*iQ zd7ptlQ8I(Y@mh~GCO=$=-0R@!Kz@fO-Z6J3nPfW+Q%CMjxRYdRp6#zcMsm;Mb2gdq zB6yAs--8pVoA<)>`atr;r9U>1Jycod5k^E_4&dJJp7xJ!0Xe)L|NO!f{AuAIe95zq zZ-VymB?&&hNx{eKL43SJ#K*$`@ zVhODWP6BM9yBKydb0Jl)QVO%$GZMv_v{%yT3W+{>gAhLc_NcVjFE9xJ2it=88GscH zldY|=)1jz^hwRiHto#{3-n)mVz*#_G8{7_nE&}tQ9cF%3D&CqE6NGQ|f>vkHMvGcT QuQ=PrM*;JiR5uI%A9i<+wg3PC literal 0 HcmV?d00001 diff --git a/.doctrees/pathfinding3d.finder.breadth_first.doctree b/.doctrees/pathfinding3d.finder.breadth_first.doctree new file mode 100644 index 0000000000000000000000000000000000000000..fc2b8d395ac4767ea8919c695b23b0af018d305a GIT binary patch literal 55718 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 Z{H`~G5A}M%DtgEH9(D=Lds5vj{eMMdp)>#h literal 0 HcmV?d00001 diff --git a/.doctrees/pathfinding3d.finder.dijkstra.doctree b/.doctrees/pathfinding3d.finder.dijkstra.doctree new file mode 100644 index 0000000000000000000000000000000000000000..16740187604c00a131ecafd4fe53ad61b1c51356 GIT binary patch literal 54170 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 literal 0 HcmV?d00001 diff --git a/.doctrees/pathfinding3d.finder.doctree b/.doctrees/pathfinding3d.finder.doctree index 2361efe7612ef54277ed5118a3f467161e55ed02..d6a2fe230963c6a8cc08ef1e5185f6371d652a0c 100644 GIT binary patch delta 510 zcmYL_&ubGw9L1B}WG4-2v@MuJ(wZpNRO_G6dJseiM2do5g6w9eeOvYyn;F_tr126O zI*00v?%kuOddi`oc=ONDyC=c3&TdOR419R={l3TdeL8QQFI(gC`?GrCv$bo;hh|M4 z8arLgiOMhv;)sW?l4|XZdab%B!vYy76a-<>kR_DLv&DM`nzFsrs0%_vmUwie2CCba z@z)h|qWWp)W${)H?LWm%2Jdb(KCGJcT>JLdY-gaS8|nCQiR9|mxSXr$+n-i5SF}mv zh=DTu)ri@NnkXu2UO4o*OSe7$A`=c=Yy;SZj}S2uDk_1!@6wn-^-6*a?U;E{sQRL` z<42B~3Jad=(ooa_v+_EB*r+1-t$L literal 466346 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 !eeWBujeDyV`- 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

- 0.6.1 + 0.6.2
-
+ @@ -51,48 +51,49 @@
diff --git a/_modules/pathfinding3d/core/diagonal_movement.html b/_modules/pathfinding3d/core/diagonal_movement.html index 61b5e6c..ef7f625 100644 --- a/_modules/pathfinding3d/core/diagonal_movement.html +++ b/_modules/pathfinding3d/core/diagonal_movement.html @@ -3,7 +3,7 @@ - pathfinding3d.core.diagonal_movement — pathfinding3d 0.6.1 documentation + pathfinding3d.core.diagonal_movement — pathfinding3d 0.6.2 documentation @@ -17,7 +17,7 @@ - + @@ -39,7 +39,7 @@ pathfinding3d
- 0.6.1 + 0.6.2
@@ -76,16 +76,17 @@
  • Change Log
  • pathfinding3d
      @@ -126,7 +127,7 @@

      Source code for pathfinding3d.core.diagonal_movement

      -
      [docs]class DiagonalMovement: +
      [docs]class DiagonalMovement: """Enum for diagonal movement""" always = 1 diff --git a/_modules/pathfinding3d/core/grid.html b/_modules/pathfinding3d/core/grid.html index 41ca60c..b74ce1c 100644 --- a/_modules/pathfinding3d/core/grid.html +++ b/_modules/pathfinding3d/core/grid.html @@ -3,7 +3,7 @@ - pathfinding3d.core.grid — pathfinding3d 0.6.1 documentation + pathfinding3d.core.grid — pathfinding3d 0.6.2 documentation @@ -17,7 +17,7 @@ - + @@ -39,7 +39,7 @@ pathfinding3d
      - 0.6.1 + 0.6.2
      @@ -76,16 +76,17 @@
  • Change Log
  • pathfinding3d
      @@ -138,7 +139,7 @@

      Source code for pathfinding3d.core.grid

       MatrixType = Optional[Union[List[List[List[int]]], np.ndarray]]
       
       
      -
      [docs]def build_nodes( +
      [docs]def build_nodes( width: int, height: int, depth: int, @@ -194,12 +195,12 @@

      Source code for pathfinding3d.core.grid

           return nodes
      -
      [docs]class Grid: +
      [docs]class Grid: """ A grid represents the map (as 3d-list of nodes). """ -
      [docs] def __init__( +
      [docs] def __init__( self, width: int = 0, height: int = 0, @@ -234,7 +235,7 @@

      Source code for pathfinding3d.core.grid

                   else [[[]]]
               )
      -
      [docs] def _validate_dimensions(self, width: int, height: int, depth: int, matrix: MatrixType) -> tuple: +
      [docs] def _validate_dimensions(self, width: int, height: int, depth: int, matrix: MatrixType) -> tuple: if matrix is not None: if not ( isinstance(matrix, (list, np.ndarray)) @@ -246,7 +247,7 @@

      Source code for pathfinding3d.core.grid

                   return len(matrix), len(matrix[0]), len(matrix[0][0])
               return width, height, depth
      -
      [docs] def is_valid_grid(self) -> bool: +
      [docs] def is_valid_grid(self) -> bool: """ Check if grid is valid @@ -257,7 +258,7 @@

      Source code for pathfinding3d.core.grid

               """
               return self.width > 0 and self.height > 0 and self.depth > 0
      -
      [docs] def node(self, x: int, y: int, z: int) -> Optional[GridNode]: +
      [docs] def node(self, x: int, y: int, z: int) -> Optional[GridNode]: """ Get node at position @@ -277,7 +278,7 @@

      Source code for pathfinding3d.core.grid

               """
               return self.nodes[x][y][z] if self.inside(x, y, z) else None
      -
      [docs] def inside(self, x: int, y: int, z: int) -> bool: +
      [docs] def inside(self, x: int, y: int, z: int) -> bool: """ Check, if field position is inside map @@ -297,7 +298,7 @@

      Source code for pathfinding3d.core.grid

               """
               return 0 <= x < self.width and 0 <= y < self.height and 0 <= z < self.depth
      -
      [docs] def walkable(self, x: int, y: int, z: int) -> bool: +
      [docs] def walkable(self, x: int, y: int, z: int) -> bool: """ Check, if the tile is inside grid and if it is set as walkable @@ -317,7 +318,7 @@

      Source code for pathfinding3d.core.grid

               """
               return self.inside(x, y, z) and self.nodes[x][y][z].walkable
      -
      [docs] @lru_cache(maxsize=128) +
      [docs] @lru_cache(maxsize=128) def _calc_cost(self, dx: int, dy: int, dz: int) -> float: """ Get the distance between current node and the neighbor (cost) @@ -338,7 +339,7 @@

      Source code for pathfinding3d.core.grid

               """
               return math.sqrt(dx * dx + dy * dy + dz * dz)
      -
      [docs] def calc_cost(self, node_a: GridNode, node_b: GridNode, weighted: bool = False) -> float: +
      [docs] def calc_cost(self, node_a: GridNode, node_b: GridNode, weighted: bool = False) -> float: """ Get the distance between current node and the neighbor (cost) @@ -369,7 +370,7 @@

      Source code for pathfinding3d.core.grid

       
               return ng
      -
      [docs] def neighbors( +
      [docs] def neighbors( self, node: GridNode, diagonal_movement: int = DiagonalMovement.never, @@ -607,7 +608,7 @@

      Source code for pathfinding3d.core.grid

       
               return neighbors
      -
      [docs] def cleanup(self): +
      [docs] def cleanup(self): """ Cleanup grid """ diff --git a/_modules/pathfinding3d/core/heap.html b/_modules/pathfinding3d/core/heap.html index 408b03b..35e7ad2 100644 --- a/_modules/pathfinding3d/core/heap.html +++ b/_modules/pathfinding3d/core/heap.html @@ -3,7 +3,7 @@ - pathfinding3d.core.heap — pathfinding3d 0.6.1 documentation + pathfinding3d.core.heap — pathfinding3d 0.6.2 documentation @@ -17,7 +17,7 @@ - + @@ -39,7 +39,7 @@ pathfinding3d
      - 0.6.1 + 0.6.2
      @@ -76,16 +76,17 @@
  • Change Log
  • pathfinding3d
      @@ -139,13 +140,13 @@

      Source code for pathfinding3d.core.heap

       from .world import World
       
       
      -
      [docs]class SimpleHeap: +
      [docs]class SimpleHeap: """ A simple implementation of a heap data structure optimized for pathfinding. It maintains an open list of nodes, a status for each node, and a function to retrieve nodes. """ -
      [docs] def __init__(self, node: GridNode, grid: Union[Grid, World]): +
      [docs] def __init__(self, node: GridNode, grid: Union[Grid, World]): """ Initializes the SimpleHeap with a given node and grid. @@ -165,7 +166,7 @@

      Source code for pathfinding3d.core.heap

               self.heap_order = {}
               self.number_pushed = 0
      -
      [docs] def _determine_node_retrieval_function(self) -> Callable: +
      [docs] def _determine_node_retrieval_function(self) -> Callable: """ Determines the node retrieval function based on the type of grid. @@ -187,7 +188,7 @@

      Source code for pathfinding3d.core.heap

       
               raise ValueError("Unsupported grid type")
      -
      [docs] def _determine_node_function(self) -> Callable: +
      [docs] def _determine_node_function(self) -> Callable: """ Determines the node function based on the type of grid. @@ -210,7 +211,7 @@

      Source code for pathfinding3d.core.heap

       
               raise ValueError("Unsupported grid type")
      -
      [docs] def pop_node(self) -> GridNode: +
      [docs] def pop_node(self) -> GridNode: """ Pops the node with the lowest cost from the heap. @@ -225,7 +226,7 @@

      Source code for pathfinding3d.core.heap

       
               return self._get_node(node_tuple)
      -
      [docs] def push_node(self, node: GridNode): +
      [docs] def push_node(self, node: GridNode): """ Pushes a node to the heap. @@ -241,7 +242,7 @@

      Source code for pathfinding3d.core.heap

       
               heapq.heappush(self.open_list, node_tuple)
      -
      [docs] def remove_node(self, node: GridNode, old_f: float): +
      [docs] def remove_node(self, node: GridNode, old_f: float): """ Remove the node from the heap. diff --git a/_modules/pathfinding3d/core/heuristic.html b/_modules/pathfinding3d/core/heuristic.html index 45d5275..f37e91f 100644 --- a/_modules/pathfinding3d/core/heuristic.html +++ b/_modules/pathfinding3d/core/heuristic.html @@ -3,7 +3,7 @@ - pathfinding3d.core.heuristic — pathfinding3d 0.6.1 documentation + pathfinding3d.core.heuristic — pathfinding3d 0.6.2 documentation @@ -17,7 +17,7 @@ - + @@ -39,7 +39,7 @@ pathfinding3d
      - 0.6.1 + 0.6.2
      @@ -76,16 +76,17 @@
  • Change Log
  • pathfinding3d
      @@ -132,7 +133,7 @@

      Source code for pathfinding3d.core.heuristic

      from .util import SQRT2_MINUS_1, SQRT3_MINUS_SQRT2
       
       
      -
      [docs]def null(dx: Union[int, float], dy: Union[int, float], dz: Union[int, float]) -> float: +
      [docs]def null(dx: Union[int, float], dy: Union[int, float], dz: Union[int, float]) -> float: """ Special heuristic for Dijkstra return 0, so node.h will always be calculated as 0, @@ -156,7 +157,7 @@

      Source code for pathfinding3d.core.heuristic

      return 0.0
      -
      [docs]def manhattan(dx: Union[int, float], dy: Union[int, float], dz: Union[int, float]) -> float: +
      [docs]def manhattan(dx: Union[int, float], dy: Union[int, float], dz: Union[int, float]) -> float: """Manhattan heuristics Parameters @@ -176,7 +177,7 @@

      Source code for pathfinding3d.core.heuristic

      return dx + dy + dz
      -
      [docs]def euclidean(dx: Union[int, float], dy: Union[int, float], dz: Union[int, float]) -> float: +
      [docs]def euclidean(dx: Union[int, float], dy: Union[int, float], dz: Union[int, float]) -> float: """Euclidean distance heuristics Parameters @@ -196,7 +197,7 @@

      Source code for pathfinding3d.core.heuristic

      return math.sqrt(dx * dx + dy * dy + dz * dz)
      -
      [docs]def chebyshev(dx: Union[int, float], dy: Union[int, float], dz: Union[int, float]) -> float: +
      [docs]def chebyshev(dx: Union[int, float], dy: Union[int, float], dz: Union[int, float]) -> float: """Chebyshev distance. Parameters @@ -216,7 +217,7 @@

      Source code for pathfinding3d.core.heuristic

      return max(dx, dy, dz)
      -
      [docs]def octile(dx: Union[int, float], dy: Union[int, float], dz: Union[int, float]) -> float: +
      [docs]def octile(dx: Union[int, float], dy: Union[int, float], dz: Union[int, float]) -> float: """Octile distance. Parameters diff --git a/_modules/pathfinding3d/core/node.html b/_modules/pathfinding3d/core/node.html index 4ed8959..89903ca 100644 --- a/_modules/pathfinding3d/core/node.html +++ b/_modules/pathfinding3d/core/node.html @@ -3,7 +3,7 @@ - pathfinding3d.core.node — pathfinding3d 0.6.1 documentation + pathfinding3d.core.node — pathfinding3d 0.6.2 documentation @@ -17,7 +17,7 @@ - + @@ -39,7 +39,7 @@ pathfinding3d
      - 0.6.1 + 0.6.2
      @@ -76,16 +76,17 @@
  • Change Log
  • pathfinding3d
      @@ -130,7 +131,7 @@

      Source code for pathfinding3d.core.node

       from typing import List, Optional, Tuple
       
       
      -
      [docs]@dataclasses.dataclass +
      [docs]@dataclasses.dataclass class Node: """ Basic node class, saves calculated values for pathfinding @@ -157,13 +158,13 @@

      Source code for pathfinding3d.core.node

       
           __slots__ = ["h", "g", "f", "opened", "closed", "parent", "retain_count", "tested"]
       
      -
      [docs] def __init__(self): +
      [docs] def __init__(self): self.cleanup()
      def __lt__(self, other: "Node") -> bool: return self.f < other.f -
      [docs] def cleanup(self): +
      [docs] def cleanup(self): """ Reset all calculated values, fresh start for pathfinding """ @@ -189,7 +190,7 @@

      Source code for pathfinding3d.core.node

               self.tested = False
      -
      [docs]@dataclasses.dataclass +
      [docs]@dataclasses.dataclass class GridNode(Node): """ Basic node in a grid. @@ -245,7 +246,7 @@

      Source code for pathfinding3d.core.node

               if self.grid_id is not None:
                   yield self.grid_id
       
      -
      [docs] def connect(self, other_node: "GridNode"): +
      [docs] def connect(self, other_node: "GridNode"): """ Connect this node to another node. diff --git a/_modules/pathfinding3d/core/util.html b/_modules/pathfinding3d/core/util.html index aaea4ad..00a97e0 100644 --- a/_modules/pathfinding3d/core/util.html +++ b/_modules/pathfinding3d/core/util.html @@ -3,7 +3,7 @@ - pathfinding3d.core.util — pathfinding3d 0.6.1 documentation + pathfinding3d.core.util — pathfinding3d 0.6.2 documentation @@ -17,7 +17,7 @@ - + @@ -39,7 +39,7 @@ pathfinding3d
      - 0.6.1 + 0.6.2
      @@ -76,16 +76,17 @@
  • Change Log
  • pathfinding3d
      @@ -145,7 +146,7 @@

      Source code for pathfinding3d.core.util

       Coords = Tuple[float, float, float]
       
       
      -
      [docs]def backtrace(node: GridNode) -> List[GridNode]: +
      [docs]def backtrace(node: GridNode) -> List[GridNode]: """ Backtrace according to the parent records and return the path. (including both start and end nodes) @@ -168,7 +169,7 @@

      Source code for pathfinding3d.core.util

           return path
      -
      [docs]def bi_backtrace(node_a: GridNode, node_b: GridNode) -> List[GridNode]: +
      [docs]def bi_backtrace(node_a: GridNode, node_b: GridNode) -> List[GridNode]: """ Backtrace from start and end node, returns the path for bi-directional A* (including both start and end nodes) @@ -191,7 +192,7 @@

      Source code for pathfinding3d.core.util

           return path_a + path_b
      -
      [docs]def raytrace(coords_a: Coords, coords_b: Coords) -> List[List[float]]: +
      [docs]def raytrace(coords_a: Coords, coords_b: Coords) -> List[List[float]]: """ Given the start and end coordinates, return all the coordinates lying on the line formed by these coordinates, based on ray tracing. @@ -250,7 +251,7 @@

      Source code for pathfinding3d.core.util

           return line
      -
      [docs]def bresenham(coords_a: Coords, coords_b: Coords) -> List[List[float]]: +
      [docs]def bresenham(coords_a: Coords, coords_b: Coords) -> List[List[float]]: """ Given the start and end coordinates, return all the coordinates lying on the line formed by these coordinates, based on Bresenham's algorithm. @@ -328,7 +329,7 @@

      Source code for pathfinding3d.core.util

           return line
      -
      [docs]def expand_path(path: List[Coords]) -> List[Coords]: +
      [docs]def expand_path(path: List[Coords]) -> List[Coords]: """ Given a compressed path, return a new path that has all the segments in it interpolated. @@ -353,7 +354,7 @@

      Source code for pathfinding3d.core.util

           return expanded
      -
      [docs]def smoothen_path(grid: Grid, path: List[Coords], use_raytrace: bool = False) -> List[List[float]]: +
      [docs]def smoothen_path(grid: Grid, path: List[Coords], use_raytrace: bool = False) -> List[List[float]]: """ Given an uncompressed path, return a new path that has less turnings and looks more natural. @@ -393,7 +394,7 @@

      Source code for pathfinding3d.core.util

           return new_path
      -
      [docs]def line_of_sight(grid: Grid, node1: GridNode, node2: GridNode) -> bool: +
      [docs]def line_of_sight(grid: Grid, node1: GridNode, node2: GridNode) -> bool: """ Check if there is a line of sight between two nodes using Bresenham's algorithm diff --git a/_modules/pathfinding3d/core/world.html b/_modules/pathfinding3d/core/world.html index 6b93cbd..85145f7 100644 --- a/_modules/pathfinding3d/core/world.html +++ b/_modules/pathfinding3d/core/world.html @@ -3,7 +3,7 @@ - pathfinding3d.core.world — pathfinding3d 0.6.1 documentation + pathfinding3d.core.world — pathfinding3d 0.6.2 documentation @@ -17,7 +17,7 @@ - + @@ -39,7 +39,7 @@ pathfinding3d
      - 0.6.1 + 0.6.2
      @@ -76,16 +76,17 @@
  • Change Log
  • pathfinding3d
      @@ -133,12 +134,12 @@

      Source code for pathfinding3d.core.world

       
       
       # a world connects grids but can have multiple grids.
      -
      [docs]class World: +
      [docs]class World: """ A world connects grids but can have multiple grids. """ -
      [docs] def __init__(self, grids: Dict[int, Grid]): +
      [docs] def __init__(self, grids: Dict[int, Grid]): """ Initialize a new world. @@ -149,7 +150,7 @@

      Source code for pathfinding3d.core.world

               """
               self.grids = grids
      -
      [docs] def neighbors(self, node: GridNode, diagonal_movement: int) -> List[GridNode]: +
      [docs] def neighbors(self, node: GridNode, diagonal_movement: int) -> List[GridNode]: """ Get neighbors of the given node. @@ -169,7 +170,7 @@

      Source code for pathfinding3d.core.world

       
               return self.grids[node.grid_id].neighbors(node, diagonal_movement=diagonal_movement)
      -
      [docs] def calc_cost(self, node_a: GridNode, node_b: GridNode, weighted: bool = False) -> float: +
      [docs] def calc_cost(self, node_a: GridNode, node_b: GridNode, weighted: bool = False) -> float: """ Calculate the cost between two nodes. @@ -191,7 +192,7 @@

      Source code for pathfinding3d.core.world

               # grids as well, for now we ignore switching grids
               return self.grids[node_a.grid_id].calc_cost(node_a, node_b, weighted=weighted)
      -
      [docs] def cleanup(self): +
      [docs] def cleanup(self): """ Cleanup all grids in this world. """ diff --git a/_modules/pathfinding3d/finder/a_star.html b/_modules/pathfinding3d/finder/a_star.html index f4b955c..066eb2c 100644 --- a/_modules/pathfinding3d/finder/a_star.html +++ b/_modules/pathfinding3d/finder/a_star.html @@ -3,7 +3,7 @@ - pathfinding3d.finder.a_star — pathfinding3d 0.6.1 documentation + pathfinding3d.finder.a_star — pathfinding3d 0.6.2 documentation @@ -17,7 +17,7 @@ - + @@ -39,7 +39,7 @@ pathfinding3d
      - 0.6.1 + 0.6.2
      @@ -76,16 +76,17 @@
  • Change Log
  • pathfinding3d
      @@ -136,8 +137,8 @@

      Source code for pathfinding3d.finder.a_star

       from .finder import BY_END, MAX_RUNS, TIME_LIMIT, Finder
       
       
      -
      [docs]class AStarFinder(Finder): -
      [docs] def __init__( +
      [docs]class AStarFinder(Finder): +
      [docs] def __init__( self, heuristic: Optional[Callable] = None, weight: int = 1, @@ -182,7 +183,7 @@

      Source code for pathfinding3d.finder.a_star

                       # not admissible it should be octile instead
                       self.heuristic = octile
      -
      [docs] def check_neighbors( +
      [docs] def check_neighbors( self, start: GridNode, end: GridNode, @@ -242,7 +243,7 @@

      Source code for pathfinding3d.finder.a_star

               # the end has not been reached (yet) keep the find_path loop running
               return None
      -
      [docs] def find_path(self, start: GridNode, end: GridNode, grid: Grid) -> Tuple[List, int]: +
      [docs] def find_path(self, start: GridNode, end: GridNode, grid: Grid) -> Tuple[List, int]: """ Find a path from start to end node on grid using the A* algorithm diff --git a/_modules/pathfinding3d/finder/best_first.html b/_modules/pathfinding3d/finder/best_first.html index 0beb21d..3be697f 100644 --- a/_modules/pathfinding3d/finder/best_first.html +++ b/_modules/pathfinding3d/finder/best_first.html @@ -3,7 +3,7 @@ - pathfinding3d.finder.best_first — pathfinding3d 0.6.1 documentation + pathfinding3d.finder.best_first — pathfinding3d 0.6.2 documentation @@ -17,7 +17,7 @@ - + @@ -39,7 +39,7 @@ pathfinding3d
      - 0.6.1 + 0.6.2
      @@ -76,16 +76,17 @@
  • Change Log
  • pathfinding3d
      @@ -133,12 +134,12 @@

      Source code for pathfinding3d.finder.best_first

      < from .a_star import MAX_RUNS, TIME_LIMIT, AStarFinder -
      [docs]class BestFirst(AStarFinder): +
      [docs]class BestFirst(AStarFinder): """ Similar to the default A* algorithm from a_star. """ -
      [docs] def __init__( +
      [docs] def __init__( self, heuristic: Optional[Callable] = None, weight: int = 1, @@ -176,7 +177,7 @@

      Source code for pathfinding3d.finder.best_first

      < self.weighted = False
      -
      [docs] def apply_heuristic(self, node_a: GridNode, node_b: GridNode, heuristic: Optional[Callable] = None) -> float: +
      [docs] def apply_heuristic(self, node_a: GridNode, node_b: GridNode, heuristic: Optional[Callable] = None) -> float: """ Helper function to apply heuristic diff --git a/_modules/pathfinding3d/finder/bi_a_star.html b/_modules/pathfinding3d/finder/bi_a_star.html index ca09404..8849ede 100644 --- a/_modules/pathfinding3d/finder/bi_a_star.html +++ b/_modules/pathfinding3d/finder/bi_a_star.html @@ -3,7 +3,7 @@ - pathfinding3d.finder.bi_a_star — pathfinding3d 0.6.1 documentation + pathfinding3d.finder.bi_a_star — pathfinding3d 0.6.2 documentation @@ -17,7 +17,7 @@ - + @@ -39,7 +39,7 @@ pathfinding3d
      - 0.6.1 + 0.6.2
      @@ -76,16 +76,17 @@
  • Change Log
  • pathfinding3d
      @@ -137,12 +138,12 @@

      Source code for pathfinding3d.finder.bi_a_star

      from .finder import BY_END, BY_START, MAX_RUNS, TIME_LIMIT -

      [docs]class BiAStarFinder(AStarFinder): +
      [docs]class BiAStarFinder(AStarFinder): """ Similar to the default A* algorithm from a_star. """ -
      [docs] def __init__( +
      [docs] def __init__( self, heuristic: Optional[Callable] = None, weight: int = 1, @@ -178,7 +179,7 @@

      Source code for pathfinding3d.finder.bi_a_star

      max_runs=max_runs, )

      -
      [docs] def find_path(self, start: GridNode, end: GridNode, grid: Grid) -> Tuple[List, int]: +
      [docs] def find_path(self, start: GridNode, end: GridNode, grid: Grid) -> Tuple[List, int]: """ Find a path from start to end node on grid using the A* algorithm diff --git a/_modules/pathfinding3d/finder/breadth_first.html b/_modules/pathfinding3d/finder/breadth_first.html index 48ca566..ceb0aa4 100644 --- a/_modules/pathfinding3d/finder/breadth_first.html +++ b/_modules/pathfinding3d/finder/breadth_first.html @@ -3,7 +3,7 @@ - pathfinding3d.finder.breadth_first — pathfinding3d 0.6.1 documentation + pathfinding3d.finder.breadth_first — pathfinding3d 0.6.2 documentation @@ -17,7 +17,7 @@ - + @@ -39,7 +39,7 @@ pathfinding3d
      - 0.6.1 + 0.6.2
      @@ -76,16 +76,17 @@
  • Change Log
  • pathfinding3d
      @@ -135,8 +136,8 @@

      Source code for pathfinding3d.finder.breadth_first

      from .finder import MAX_RUNS, TIME_LIMIT, Finder -
      [docs]class BreadthFirstFinder(Finder): -
      [docs] def __init__( +
      [docs]class BreadthFirstFinder(Finder): +
      [docs] def __init__( self, heuristic: Optional[Callable] = None, weight: int = 1, @@ -173,7 +174,7 @@

      Source code for pathfinding3d.finder.breadth_first

      max_runs=max_runs, )
      -
      [docs] def check_neighbors( +
      [docs] def check_neighbors( self, start: GridNode, end: GridNode, diff --git a/_modules/pathfinding3d/finder/dijkstra.html b/_modules/pathfinding3d/finder/dijkstra.html index 2aaac34..b11e1ad 100644 --- a/_modules/pathfinding3d/finder/dijkstra.html +++ b/_modules/pathfinding3d/finder/dijkstra.html @@ -3,7 +3,7 @@ - pathfinding3d.finder.dijkstra — pathfinding3d 0.6.1 documentation + pathfinding3d.finder.dijkstra — pathfinding3d 0.6.2 documentation @@ -17,7 +17,7 @@ - + @@ -39,7 +39,7 @@ pathfinding3d
      - 0.6.1 + 0.6.2
      @@ -76,16 +76,17 @@
  • Change Log
  • pathfinding3d
      @@ -134,8 +135,8 @@

      Source code for pathfinding3d.finder.dijkstra

      from .a_star import MAX_RUNS, TIME_LIMIT, AStarFinder -
      [docs]class DijkstraFinder(AStarFinder): -
      [docs] def __init__( +
      [docs]class DijkstraFinder(AStarFinder): +
      [docs] def __init__( self, weight: int = 1, diagonal_movement: int = DiagonalMovement.never, @@ -168,7 +169,7 @@

      Source code for pathfinding3d.finder.dijkstra

      max_runs=max_runs, )
      -
      [docs] def apply_heuristic(self, node_a: Node, node_b: Node, heuristic: Optional[Callable] = None) -> float: +
      [docs] def apply_heuristic(self, node_a: Node, node_b: Node, heuristic: Optional[Callable] = None) -> float: """ Helper function to apply heuristic diff --git a/_modules/pathfinding3d/finder/finder.html b/_modules/pathfinding3d/finder/finder.html index ee87eb6..034b26a 100644 --- a/_modules/pathfinding3d/finder/finder.html +++ b/_modules/pathfinding3d/finder/finder.html @@ -3,7 +3,7 @@ - pathfinding3d.finder.finder — pathfinding3d 0.6.1 documentation + pathfinding3d.finder.finder — pathfinding3d 0.6.2 documentation @@ -17,7 +17,7 @@ - + @@ -39,7 +39,7 @@ pathfinding3d
      - 0.6.1 + 0.6.2
      @@ -76,16 +76,17 @@
  • Change Log
  • pathfinding3d
      @@ -144,18 +145,18 @@

      Source code for pathfinding3d.finder.finder

       BY_END = 2
       
       
      -
      [docs]class ExecutionTimeException(Exception): -
      [docs] def __init__(self, message): +
      [docs]class ExecutionTimeException(Exception): +
      [docs] def __init__(self, message): super().__init__(message)
      -
      [docs]class ExecutionRunsException(Exception): -
      [docs] def __init__(self, message): +
      [docs]class ExecutionRunsException(Exception): +
      [docs] def __init__(self, message): super().__init__(message)
      -
      [docs]class Finder: -
      [docs] def __init__( +
      [docs]class Finder: +
      [docs] def __init__( self, heuristic: Optional[Callable] = None, weight: int = 1, @@ -197,7 +198,7 @@

      Source code for pathfinding3d.finder.finder

               self.start_time: float = 0.0
               self.runs: int = 0
      -
      [docs] def apply_heuristic(self, node_a: GridNode, node_b: GridNode, heuristic: Optional[Callable] = None) -> float: +
      [docs] def apply_heuristic(self, node_a: GridNode, node_b: GridNode, heuristic: Optional[Callable] = None) -> float: """ Helper function to apply heuristic @@ -223,7 +224,7 @@

      Source code for pathfinding3d.finder.finder

                   abs(node_a.z - node_b.z),
               )
      -
      [docs] def find_neighbors( +
      [docs] def find_neighbors( self, grid: Grid, node: GridNode, @@ -251,7 +252,7 @@

      Source code for pathfinding3d.finder.finder

                   diagonal_movement = self.diagonal_movement
               return grid.neighbors(node, diagonal_movement=diagonal_movement)
      -
      [docs] def keep_running(self): +
      [docs] def keep_running(self): """ Check, if we run into time or iteration constrains. @@ -273,7 +274,7 @@

      Source code for pathfinding3d.finder.finder

                       f"{self.__class__.__name__} took longer than {self.time_limit} seconds, aborting!"
                   )
      -
      [docs] def process_node( +
      [docs] def process_node( self, grid: Grid, node: GridNode, @@ -325,7 +326,7 @@

      Source code for pathfinding3d.finder.finder

                       open_list.remove_node(node, old_f)
                       open_list.push_node(node)
      -
      [docs] def check_neighbors( +
      [docs] def check_neighbors( self, start: GridNode, end: GridNode, @@ -356,7 +357,7 @@

      Source code for pathfinding3d.finder.finder

               """
               raise NotImplementedError("Please implement check_neighbors in your finder")
      -
      [docs] def find_path(self, start: GridNode, end: GridNode, grid: Grid) -> Tuple[List, int]: +
      [docs] def find_path(self, start: GridNode, end: GridNode, grid: Grid) -> Tuple[List, int]: """ Find a path from start to end node on grid by iterating over all neighbors of a node (see check_neighbors) diff --git a/_modules/pathfinding3d/finder/ida_star.html b/_modules/pathfinding3d/finder/ida_star.html index f03e896..8478c1d 100644 --- a/_modules/pathfinding3d/finder/ida_star.html +++ b/_modules/pathfinding3d/finder/ida_star.html @@ -3,7 +3,7 @@ - pathfinding3d.finder.ida_star — pathfinding3d 0.6.1 documentation + pathfinding3d.finder.ida_star — pathfinding3d 0.6.2 documentation @@ -17,7 +17,7 @@ - + @@ -39,7 +39,7 @@ pathfinding3d
      - 0.6.1 + 0.6.2
      @@ -76,16 +76,17 @@
  • Change Log
  • pathfinding3d
      @@ -136,7 +137,7 @@

      Source code for pathfinding3d.finder.ida_star

      from .finder import MAX_RUNS, TIME_LIMIT, Finder -
      [docs]class IDAStarFinder(Finder): +
      [docs]class IDAStarFinder(Finder): """ Iterative Deeping A Star (IDA*) path-finder. @@ -153,7 +154,7 @@

      Source code for pathfinding3d.finder.ida_star

      (www.gerardmeier.com) """ -
      [docs] def __init__( +
      [docs] def __init__( self, heuristic: Optional[Callable] = None, weight: int = 1, @@ -203,7 +204,7 @@

      Source code for pathfinding3d.finder.ida_star

      self.nodes_visited: int
      -
      [docs] def search( +
      [docs] def search( self, node: GridNode, g: float, @@ -299,7 +300,7 @@

      Source code for pathfinding3d.finder.ida_star

      return min_t
      -
      [docs] def find_path(self, start: GridNode, end: GridNode, grid: Grid) -> Tuple[List, int]: +
      [docs] def find_path(self, start: GridNode, end: GridNode, grid: Grid) -> Tuple[List, int]: """ Find a path from start to end node on grid using the IDA* algorithm diff --git a/_modules/pathfinding3d/finder/msp.html b/_modules/pathfinding3d/finder/msp.html index 0459144..2af4ac1 100644 --- a/_modules/pathfinding3d/finder/msp.html +++ b/_modules/pathfinding3d/finder/msp.html @@ -3,7 +3,7 @@ - pathfinding3d.finder.msp — pathfinding3d 0.6.1 documentation + pathfinding3d.finder.msp — pathfinding3d 0.6.2 documentation @@ -17,7 +17,7 @@ - + @@ -39,7 +39,7 @@ pathfinding3d
      - 0.6.1 + 0.6.2
      @@ -76,16 +76,17 @@
  • Change Log
  • pathfinding3d
      @@ -137,7 +138,7 @@

      Source code for pathfinding3d.finder.msp

       from ..finder.finder import Finder
       
       
      -
      [docs]class MinimumSpanningTree(Finder): +
      [docs]class MinimumSpanningTree(Finder): """ Minimum Spanning Tree implementation by Brad Beattie (see https://github.com/brean/python-pathfinding/issues/18) @@ -146,11 +147,11 @@

      Source code for pathfinding3d.finder.msp

           https://en.wikipedia.org/wiki/Minimum_spanning_tree
           """
       
      -
      [docs] def __init__(self, *args, **kwargs): +
      [docs] def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.heuristic = heuristic.null
      -
      [docs] def tree(self, grid: Grid, start: GridNode) -> List[GridNode]: +
      [docs] def tree(self, grid: Grid, start: GridNode) -> List[GridNode]: """ Returns a list of nodes that are part of the minimum spanning tree of the grid. @@ -169,7 +170,7 @@

      Source code for pathfinding3d.finder.msp

       
               return list(self.itertree(grid, start))
      -
      [docs] def itertree(self, grid: Grid, start: GridNode): +
      [docs] def itertree(self, grid: Grid, start: GridNode): """ Returns a generator that yields nodes that are part of the minimum spanning tree of the grid. @@ -205,7 +206,7 @@

      Source code for pathfinding3d.finder.msp

                       if not neighbor.closed:
                           self.process_node(grid, neighbor, node, end, open_list, open_value=True)
      -
      [docs] def find_path(self, start: GridNode, end: GridNode, grid: Grid) -> Tuple[List, int]: +
      [docs] def find_path(self, start: GridNode, end: GridNode, grid: Grid) -> Tuple[List, int]: """ Find a path from start to end node on grid using the Minimum Spanning Tree algorithm diff --git a/_modules/pathfinding3d/finder/theta_star.html b/_modules/pathfinding3d/finder/theta_star.html new file mode 100644 index 0000000..fa48d39 --- /dev/null +++ b/_modules/pathfinding3d/finder/theta_star.html @@ -0,0 +1,262 @@ + + + + + + pathfinding3d.finder.theta_star — pathfinding3d 0.6.2 documentation + + + + + + + + + + + + + + + + + + + + + + +
      + + +
      + +
      + +
      +
      +
      + + + + \ No newline at end of file diff --git a/_static/documentation_options.js b/_static/documentation_options.js index 8730d8e..2c7240f 100644 --- a/_static/documentation_options.js +++ b/_static/documentation_options.js @@ -1,6 +1,6 @@ var DOCUMENTATION_OPTIONS = { URL_ROOT: document.getElementById("documentation_options").getAttribute('data-url_root'), - VERSION: '0.6.1', + VERSION: '0.6.2', LANGUAGE: 'en', COLLAPSE_INDEX: false, BUILDER: 'html', diff --git a/genindex.html b/genindex.html index 8a876a3..074ebf1 100644 --- a/genindex.html +++ b/genindex.html @@ -3,7 +3,7 @@ - Index — pathfinding3d 0.6.1 documentation + Index — pathfinding3d 0.6.2 documentation @@ -17,7 +17,7 @@ - + @@ -39,7 +39,7 @@ pathfinding3d
      - 0.6.1 + 0.6.2
      @@ -76,16 +76,17 @@
  • Change Log
  • pathfinding3d
  • Change Log
  • pathfinding3d
      @@ -156,16 +157,17 @@

      Welcome to pathfinding3d’s documentation!Change Log
    • pathfinding3d
        diff --git a/modules.html b/modules.html index 9e7b1e7..dfcaed1 100644 --- a/modules.html +++ b/modules.html @@ -4,7 +4,7 @@ - pathfinding3d — pathfinding3d 0.6.1 documentation + pathfinding3d — pathfinding3d 0.6.2 documentation @@ -18,7 +18,7 @@ - + @@ -42,7 +42,7 @@ pathfinding3d
        - 0.6.1 + 0.6.2
        @@ -79,16 +79,17 @@
    • Change Log
    • pathfinding3d
        @@ -135,25 +136,10 @@

        pathfinding3dSubpackages diff --git a/objects.inv b/objects.inv index 8ab4eff50205a8ceef2e078403e21594ad6e229d..438aebf614ea9d5c6babb6ae6a91b7595116bff9 100644 GIT binary patch delta 1788 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 diff --git a/pathfinding3d.core.diagonal_movement.html b/pathfinding3d.core.diagonal_movement.html new file mode 100644 index 0000000..443cba8 --- /dev/null +++ b/pathfinding3d.core.diagonal_movement.html @@ -0,0 +1,193 @@ + + + + + + + pathfinding3d.core.diagonal_movement module — pathfinding3d 0.6.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + +
        + + +
        + +
        + +
        +
        +
        + + + + \ No newline at end of file diff --git a/pathfinding3d.core.grid.html b/pathfinding3d.core.grid.html new file mode 100644 index 0000000..6379ec1 --- /dev/null +++ b/pathfinding3d.core.grid.html @@ -0,0 +1,398 @@ + + + + + + + pathfinding3d.core.grid module — pathfinding3d 0.6.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + +
        + + +
        + +
        + +
        +
        +
        + + + + \ No newline at end of file diff --git a/pathfinding3d.core.heap.html b/pathfinding3d.core.heap.html new file mode 100644 index 0000000..77d00fa --- /dev/null +++ b/pathfinding3d.core.heap.html @@ -0,0 +1,274 @@ + + + + + + + pathfinding3d.core.heap module — pathfinding3d 0.6.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + +
        + + +
        + +
        + +
        +
        +
        + + + + \ No newline at end of file diff --git a/pathfinding3d.core.heuristic.html b/pathfinding3d.core.heuristic.html new file mode 100644 index 0000000..2c9388d --- /dev/null +++ b/pathfinding3d.core.heuristic.html @@ -0,0 +1,274 @@ + + + + + + + pathfinding3d.core.heuristic module — pathfinding3d 0.6.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + +
        + + +
        + +
        + +
        +
        +
        + + + + \ No newline at end of file diff --git a/pathfinding3d.core.html b/pathfinding3d.core.html index e8b6a9b..6e8bdf6 100644 --- a/pathfinding3d.core.html +++ b/pathfinding3d.core.html @@ -4,7 +4,7 @@ - pathfinding3d.core package — pathfinding3d 0.6.1 documentation + pathfinding3d.core package — pathfinding3d 0.6.2 documentation @@ -18,7 +18,7 @@ - + @@ -26,7 +26,7 @@ - + @@ -42,7 +42,7 @@ pathfinding3d
        - 0.6.1 + 0.6.2
        @@ -79,16 +79,17 @@

    • Change Log
    • pathfinding3d
        @@ -133,1071 +134,129 @@

        pathfinding3d.core package

        Submodules

        -
        -
        -

        pathfinding3d.core.diagonal_movement module

        -
        -
        -class pathfinding3d.core.diagonal_movement.DiagonalMovement[source]
        -

        Bases: object

        -

        Enum for diagonal movement

        -
        -
        -always = 1
        -
        - -
        -
        -never = 2
        -
        - -
        -
        -if_at_most_one_obstacle = 3
        -
        - -
        -
        -only_when_no_obstacle = 4
        -
        - -
        - -
        -
        -

        pathfinding3d.core.grid module

        -
        -
        -pathfinding3d.core.grid.build_nodes(width, height, depth, matrix=None, inverse=False, grid_id=None)[source]
        -

        Create nodes according to grid size. If a matrix is given it -will be used to determine what nodes are walkable.

        -
        -
        Parameters:
        -
          -
        • width (int) – The width of the grid.

        • -
        • height (int) – The height of the grid.

        • -
        • depth (int) – The depth of the grid.

        • -
        • matrix (MatrixType) – A 3D array of values (numbers or objects specifying weight) -that determine how nodes are connected and if they are walkable. -If no matrix is given, all nodes will be walkable.

        • -
        • inverse (bool, optional) – If true, all values in the matrix that are not 0 will be considered -walkable. Otherwise all values that are 0 will be considered walkable.

        • -
        • grid_id (int, optional) – The id of the grid.

        • -
        -
        -
        Returns:
        -

        A list of list of lists containing the nodes in the grid.

        -
        -
        Return type:
        -

        List[List[List[GridNode]]]

        -
        -
        -
        - -
        -
        -class pathfinding3d.core.grid.Grid(width=0, height=0, depth=0, matrix=None, grid_id=None, inverse=False)[source]
        -

        Bases: object

        -

        A grid represents the map (as 3d-list of nodes).

        -
        -
        Parameters:
        -
          -
        • width (int) –

        • -
        • height (int) –

        • -
        • depth (int) –

        • -
        • matrix (List[List[List[int]]] | ndarray | None) –

        • -
        • grid_id (int | None) –

        • -
        • inverse (bool) –

        • -
        -
        -
        -
        -
        -__init__(width=0, height=0, depth=0, matrix=None, grid_id=None, inverse=False)[source]
        -

        Create a new grid.

        -
        -
        Parameters:
        -
          -
        • width (int, optional) – The width of the grid.

        • -
        • height (int, optional) – The height of the grid.

        • -
        • depth (int, optional) – The depth of the grid.

        • -
        • matrix (MatrixType) – A 3D array of values (numbers or objects specifying weight) -that determine how nodes are connected and if they are walkable. -If no matrix is given, all nodes will be walkable.

        • -
        • inverse (bool, optional) – If true, all values in the matrix that are not 0 will be considered -walkable. Otherwise all values that are 0 will be considered walkable.

        • -
        • grid_id (int | None) –

        • -
        -
        -
        -
        - -
        -
        -_validate_dimensions(width, height, depth, matrix)[source]
        -
        -
        Return type:
        -

        tuple

        -
        -
        Parameters:
        -
          -
        • width (int) –

        • -
        • height (int) –

        • -
        • depth (int) –

        • -
        • matrix (List[List[List[int]]] | ndarray | None) –

        • -
        -
        -
        -
        - -
        -
        -is_valid_grid()[source]
        -

        Check if grid is valid

        -
        -
        Returns:
        -

        True, if grid is valid

        -
        -
        Return type:
        -

        bool

        -
        -
        -
        - -
        -
        -node(x, y, z)[source]
        -

        Get node at position

        -
        -
        Parameters:
        -
          -
        • x (int) – x position

        • -
        • y (int) – y position

        • -
        • z (int) – z position

        • -
        -
        -
        Returns:
        -

        node at position

        -
        -
        Return type:
        -

        GridNode

        -
        -
        -
        - -
        -
        -inside(x, y, z)[source]
        -

        Check, if field position is inside map

        -
        -
        Parameters:
        -
          -
        • x (int) – x position

        • -
        • y (int) – y position

        • -
        • z (int) – z position

        • -
        -
        -
        Returns:
        -

        True, if position is inside map

        -
        -
        Return type:
        -

        bool

        -
        -
        -
        - -
        -
        -walkable(x, y, z)[source]
        -

        Check, if the tile is inside grid and if it is set as walkable

        -
        -
        Parameters:
        -
          -
        • x (int) – x position

        • -
        • y (int) – y position

        • -
        • z (int) – z position

        • -
        -
        -
        Returns:
        -

        True, if position is inside map and walkable

        -
        -
        Return type:
        -

        bool

        -
        -
        -
        - -
        -
        -_calc_cost(dx, dy, dz)[source]
        -

        Get the distance between current node and the neighbor (cost)

        -
        -
        Parameters:
        -
          -
        • dx (int) – x distance

        • -
        • dy (int) – y distance

        • -
        • dz (int) – z distance

        • -
        -
        -
        Returns:
        -

        distance between current node and the neighbor (cost)

        -
        -
        Return type:
        -

        float

        -
        -
        -
        - -
        -
        -calc_cost(node_a, node_b, weighted=False)[source]
        -

        Get the distance between current node and the neighbor (cost)

        -
        -
        Parameters:
        -
          -
        • node_a (GridNode) – current node

        • -
        • node_b (GridNode) – neighbor node

        • -
        • weighted (bool, optional) – True, if weighted algorithm is used, by default False

        • -
        -
        -
        Returns:
        -

        distance between current node and the neighbor (cost)

        -
        -
        Return type:
        -

        float

        -
        -
        -
        - -
        -
        -neighbors(node, diagonal_movement=DiagonalMovement.never)[source]
        -

        Get all neighbors of one node

        -
        -
        Parameters:
        -
          -
        • node (GridNode) – node to get neighbors from

        • -
        • diagonal_movement (int, optional) – if diagonal movement is allowed -(see enum in diagonal_movement), by default DiagonalMovement.never

        • -
        -
        -
        Returns:
        -

        list of all neighbors

        -
        -
        Return type:
        -

        List[GridNode]

        -
        -
        -
        - -
        -
        -cleanup()[source]
        -

        Cleanup grid

        -
        - -
        - -
        -
        -

        pathfinding3d.core.heap module

        -

        Simple heap with ordering and removal. -Inspired from https://github.com/brean/python-pathfinding/pull/54 -Original author: https://github.com/peterchenadded

        -
        -
        -class pathfinding3d.core.heap.SimpleHeap(node, grid)[source]
        -

        Bases: object

        -

        A simple implementation of a heap data structure optimized for pathfinding. -It maintains an open list of nodes, a status for each node, and a function to retrieve nodes.

        -
        -
        Parameters:
        -
        -
        -
        -
        -__init__(node, grid)[source]
        -

        Initializes the SimpleHeap with a given node and grid.

        -
        -
        Parameters:
        -
          -
        • node (GridNode) – The initial node to be added to the heap. This node should have an ‘f’ attribute representing its cost.

        • -
        • grid (Union[Grid, World]) – The grid in which the nodes are located.

        • -
        -
        -
        -
        - -
        -
        -_determine_node_retrieval_function()[source]
        -

        Determines the node retrieval function based on the type of grid.

        -
        -
        Returns:
        -

        A function that takes a node tuple and returns the corresponding node.

        -
        -
        Return type:
        -

        function

        -
        -
        Raises:
        -

        ValueError – If the grid is not of type Grid or World.

        -
        -
        -
        - -
        -
        -_determine_node_function()[source]
        -

        Determines the node function based on the type of grid.

        -
        -
        Returns:
        -

        A function that takes a node tuple and returns the corresponding node.

        -
        -
        Return type:
        -

        function

        -
        -
        Raises:
        -

        ValueError – If the grid is not of type Grid or World.

        -
        -
        -
        - -
        -
        -pop_node()[source]
        -

        Pops the node with the lowest cost from the heap.

        -
        -
        Returns:
        -

        The node with the lowest cost.

        -
        -
        Return type:
        -

        GridNode

        -
        -
        -
        - -
        -
        -push_node(node)[source]
        -

        Pushes a node to the heap.

        -
        -
        Parameters:
        -

        node (GridNode) – The node to be pushed to the heap.

        -
        -
        -
        - -
        -
        -remove_node(node, old_f)[source]
        -

        Remove the node from the heap.

        -

        This just stores it in a set and we just ignore the node if it does -get popped from the heap.

        -
        -
        Parameters:
        -
          -
        • node (GridNode) – The node to be removed from the heap.

        • -
        • old_f (float) – The old cost of the node.

        • -
        -
        -
        -
        - -
        - -
        -
        -

        pathfinding3d.core.heuristic module

        -
        -
        -pathfinding3d.core.heuristic.null(dx, dy, dz)[source]
        -

        Special heuristic for Dijkstra -return 0, so node.h will always be calculated as 0, -distance cost (node.f) is calculated only from -start to current point (node.g)

        -
        -
        Parameters:
        -
          -
        • dx (Union[int, float]) – x distance

        • -
        • dy (Union[int, float]) – y distance

        • -
        • dz (Union[int, float]) – z distance

        • -
        -
        -
        Returns:
        -

        0.0

        -
        -
        Return type:
        -

        float

        -
        -
        -
        - -
        -
        -pathfinding3d.core.heuristic.manhattan(dx, dy, dz)[source]
        -

        Manhattan heuristics

        -
        -
        Parameters:
        -
          -
        • dx (Union[int, float]) – x distance

        • -
        • dy (Union[int, float]) – y distance

        • -
        • dz (Union[int, float]) – z distance

        • +
        -
        -
        Returns:
        -

        manhattan distance

        -
        -
        Return type:
        -

        float

        -
        -
        -
        - -
        -
        -pathfinding3d.core.heuristic.euclidean(dx, dy, dz)[source]
        -

        Euclidean distance heuristics

        -
        -
        Parameters:
        -
        -
        Returns:
        -

        euclidean distance

        -
        -
        Return type:
        -

        float

        -
        -
        -
        - -
        -
        -pathfinding3d.core.heuristic.chebyshev(dx, dy, dz)[source]
        -

        Chebyshev distance.

        -
        -
        Parameters:
        -
          -
        • dx (Union[int, float]) – x distance

        • -
        • dy (Union[int, float]) – y distance

        • -
        • dz (Union[int, float]) – z distance

        • +
        -
        -
        Returns:
        -

        chebyshev distance

        -
        -
        Return type:
        -

        float

        -
        -
        -
        - -
        -
        -pathfinding3d.core.heuristic.octile(dx, dy, dz)[source]
        -

        Octile distance.

        -
        -
        Parameters:
        -
        -
        Returns:
        -

        octile distance

        -
        -
        Return type:
        -

        float

        -
        -
        -
        - -
        -
        -

        pathfinding3d.core.node module

        -
        -
        -class pathfinding3d.core.node.Node[source]
        -

        Bases: object

        -

        Basic node class, saves calculated values for pathfinding

        -
        -
        -h
        -

        The cost from this node to the goal (for A* including the heuristic).

        -
        -
        Type:
        -

        float

        -
        -
        -
        - -
        -
        -g
        -

        The cost from the start node to this node.

        -
        -
        Type:
        -

        float

        -
        -
        -
        - -
        -
        -f
        -

        The overall cost for a path using this node (f = g + h).

        -
        -
        Type:
        -

        float

        -
        -
        -
        - -
        -
        -opened
        -

        The number of times this node has been opened.

        -
        -
        Type:
        -

        int

        -
        -
        -
        - -
        -
        -closed
        -

        Whether this node is closed.

        -
        -
        Type:
        -

        bool

        -
        -
        -
        - -
        -
        -parent
        -

        The parent node of this node.

        -
        -
        Type:
        -

        Optional[Node]

        -
        -
        -
        - -
        -
        -retain_count
        -

        Used for recursion tracking of IDA*.

        -
        -
        Type:
        -

        int

        -
        -
        -
        - -
        -
        -tested
        -

        Used for IDA* and Jump-Point-Search.

        -
        -
        Type:
        -

        bool

        -
        -
        -
        - -
        -
        -__init__()[source]
        -
        - -
        -
        -cleanup()[source]
        -

        Reset all calculated values, fresh start for pathfinding

        -
        - -
        -
        -h
        -
        - -
        -
        -g
        -
        - -
        -
        -f
        -
        - -
        -
        -opened
        -
        - -
        -
        -closed
        -
        - -
        -
        -parent
        -
        - -
        -
        -retain_count
        -
        - -
        -
        -tested
        -
        - -
        - -
        -
        -class pathfinding3d.core.node.GridNode(x=0, y=0, z=0, walkable=True, weight=1.0, grid_id=None, connections=None)[source]
        -

        Bases: Node

        -

        Basic node in a grid.

        -
        -
        Parameters:
        -
          -
        • x (int) –

        • -
        • y (int) –

        • -
        • z (int) –

        • -
        • walkable (bool) –

        • -
        • weight (float) –

        • -
        • grid_id (int | None) –

        • -
        • connections (List | None) –

        • +
        -
        -
        -
        -
        -x
        -

        The x coordinate of the node.

        -
        -
        Type:
        -

        int

        -
        -
        -
        - -
        -
        -y
        -

        The y coordinate of the node.

        -
        -
        Type:
        -

        int

        -
        -
        -
        - -
        -
        -z
        -

        The z coordinate of the node.

        -
        -
        Type:
        -

        int

        -
        -
        -
        - -
        -
        -walkable
        -

        Whether this node can be walked through.

        -
        -
        Type:
        -

        bool

        -
        -
        -
        - -
        -
        -weight
        -

        The weight of the node.

        -
        -
        Type:
        -

        float

        -
        -
        -
        - -
        -
        -grid_id
        -

        The id of the grid this node belongs to.

        -
        -
        Type:
        -

        Optional[int]

        -
        -
        -
        - -
        -
        -connections
        -

        The connections of this node.

        -
        -
        Type:
        -

        Optional[List]

        -
        -
        -
        - -
        -
        -x: int = 0
        -
        - -
        -
        -y: int = 0
        -
        - -
        -
        -z: int = 0
        -
        - -
        -
        -walkable: bool = True
        -
        - -
        -
        -weight: float = 1.0
        -
        - -
        -
        -grid_id: Optional[int] = None
        -
        - -
        -
        -connections: Optional[List] = None
        -
        - -
        -
        -connect(other_node)[source]
        -

        Connect this node to another node.

        -
        -
        Parameters:
        -

        other_node (GridNode) – The node to connect to.

        -
        -
        -
        - -
        -
        -h
        -
        - -
        -
        -g
        -
        - -
        -
        -f
        -
        - -
        -
        -opened
        -
        - -
        -
        -closed
        -
        - -
        -
        -parent
        -
        - -
        -
        -retain_count
        -
        - -
        -
        -tested
        -
        - -
        -
        -__init__(x=0, y=0, z=0, walkable=True, weight=1.0, grid_id=None, connections=None)
        -
        -
        Parameters:
        -
        -
        Return type:
        -

        None

        -
        -
        -
        - -
        -
        -cleanup()
        -

        Reset all calculated values, fresh start for pathfinding

        -
        - -
        - -
        -
        -

        pathfinding3d.core.util module

        -
        -
        -pathfinding3d.core.util.backtrace(node)[source]
        -

        Backtrace according to the parent records and return the path. -(including both start and end nodes)

        -
        -
        Parameters:
        -

        node (GridNode) – node to backtrace from

        -
        -
        Returns:
        -

        path

        -
        -
        Return type:
        -

        List[GridNode]

        -
        -
        -
        - -
        -
        -pathfinding3d.core.util.bi_backtrace(node_a, node_b)[source]
        -

        Backtrace from start and end node, returns the path for bi-directional A* -(including both start and end nodes)

        -
        -
        Parameters:
        -
        -
        Returns:
        -

        path

        -
        -
        Return type:
        -

        List[GridNode]

        -
        -
        -
        - -
        -
        -pathfinding3d.core.util.raytrace(coords_a, coords_b)[source]
        -

        Given the start and end coordinates, return all the coordinates lying -on the line formed by these coordinates, based on ray tracing.

        -
        -
        Parameters:
        -
        -
        Returns:
        -

        list of coordinates

        -
        -
        Return type:
        -

        List[List[float]]

        -
        -
        -
        - -
        -
        -pathfinding3d.core.util.bresenham(coords_a, coords_b)[source]
        -

        Given the start and end coordinates, return all the coordinates lying -on the line formed by these coordinates, based on Bresenham’s algorithm.

        -
        -
        Parameters:
        -
          -
        • coords_a (Coords) – start coordinates

        • -
        • coords_b (Coords) – end coordinates

        • +
        -
        -
        Returns:
        -

        list of coordinates

        -
        -
        Return type:
        -

        List[List[float]]

        -
        -
        -
        - -
        -
        -pathfinding3d.core.util.expand_path(path)[source]
        -

        Given a compressed path, return a new path that has all the segments -in it interpolated.

        -
        -
        Parameters:
        -

        path (List[Coords]) – path to expand

        -
        -
        Returns:
        -

        expanded path

        -
        -
        Return type:
        -

        List[Coords]

        -
        -
        -
        - -
        -
        -pathfinding3d.core.util.smoothen_path(grid, path, use_raytrace=False)[source]
        -

        Given an uncompressed path, return a new path that has less -turnings and looks more natural.

        -
        -
        Parameters:
        -
        -
        Returns:
        -

        smoothened path

        -
        -
        Return type:
        -

        List[List[float]]

        -
        -
        -
        - -
        -
        -pathfinding3d.core.util.line_of_sight(grid, node1, node2)[source]
        -

        Check if there is a line of sight between two nodes using Bresenham’s algorithm

        -
        -
        Parameters:
        -
        -
        Returns:
        -

        True if there is a line of sight between the two nodes, False otherwise

        -
        -
        Return type:
        -

        bool

        -
        -
        -
        - -
        -
        -

        pathfinding3d.core.world module

        -
        -
        -class pathfinding3d.core.world.World(grids)[source]
        -

        Bases: object

        -

        A world connects grids but can have multiple grids.

        -
        -
        Parameters:
        -

        grids (Dict[int, Grid]) –

        -
        -
        -
        -
        -__init__(grids)[source]
        -

        Initialize a new world.

        -
        -
        Parameters:
        -

        grids (Dict[int, Grid]) – grids in this world

        -
        -
        -
        - -
        -
        -neighbors(node, diagonal_movement)[source]
        -

        Get neighbors of the given node.

        -
        -
        Parameters:
        -
          -
        • node (GridNode) – node to get neighbors from

        • -
        • diagonal_movement (int) – if diagonal movement is allowed -(see enum in diagonal_movement)

        • +
        -
        -
        Returns:
        -

        neighbors of the given node

        -
        -
        Return type:
        -

        List[GridNode]

        -
        -
        -
        - -
        -
        -calc_cost(node_a, node_b, weighted=False)[source]
        -

        Calculate the cost between two nodes.

        -
        -
        Parameters:
        -
          -
        • node_a (GridNode) – first node

        • -
        • node_b (GridNode) – second node

        • -
        • weighted (bool) – wether to use weights or not

        • +
        -
        -
        Returns:
        -

        cost between the two nodes

        -
        -
        Return type:
        -

        float

        -
        -
        -
        - -
        -
        -cleanup()[source]
        -

        Cleanup all grids in this world.

        -
        - -
        - +
  • @@ -1206,7 +265,7 @@

    Submodules - +
    diff --git a/pathfinding3d.core.node.html b/pathfinding3d.core.node.html new file mode 100644 index 0000000..dd0d502 --- /dev/null +++ b/pathfinding3d.core.node.html @@ -0,0 +1,522 @@ + + + + + + + pathfinding3d.core.node module — pathfinding3d 0.6.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    + +
    +
    +
    + + + + \ No newline at end of file diff --git a/pathfinding3d.core.util.html b/pathfinding3d.core.util.html new file mode 100644 index 0000000..b75018a --- /dev/null +++ b/pathfinding3d.core.util.html @@ -0,0 +1,308 @@ + + + + + + + pathfinding3d.core.util module — pathfinding3d 0.6.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    + +
    +
    +
    + + + + \ No newline at end of file diff --git a/pathfinding3d.core.world.html b/pathfinding3d.core.world.html new file mode 100644 index 0000000..1f0cb4c --- /dev/null +++ b/pathfinding3d.core.world.html @@ -0,0 +1,237 @@ + + + + + + + pathfinding3d.core.world module — pathfinding3d 0.6.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    + +
    +
    +
    + + + + \ No newline at end of file diff --git a/pathfinding3d.finder.a_star.html b/pathfinding3d.finder.a_star.html new file mode 100644 index 0000000..351f443 --- /dev/null +++ b/pathfinding3d.finder.a_star.html @@ -0,0 +1,327 @@ + + + + + + + pathfinding3d.finder.a_star module — pathfinding3d 0.6.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    + +
    +
    +
    + + + + \ No newline at end of file diff --git a/pathfinding3d.finder.best_first.html b/pathfinding3d.finder.best_first.html new file mode 100644 index 0000000..e2408a6 --- /dev/null +++ b/pathfinding3d.finder.best_first.html @@ -0,0 +1,328 @@ + + + + + + + pathfinding3d.finder.best_first module — pathfinding3d 0.6.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    + +
    +
    +
    + + + + \ No newline at end of file diff --git a/pathfinding3d.finder.bi_a_star.html b/pathfinding3d.finder.bi_a_star.html new file mode 100644 index 0000000..c819779 --- /dev/null +++ b/pathfinding3d.finder.bi_a_star.html @@ -0,0 +1,329 @@ + + + + + + + pathfinding3d.finder.bi_a_star module — pathfinding3d 0.6.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    + +
    +
    +
    + + + + \ No newline at end of file diff --git a/pathfinding3d.finder.breadth_first.html b/pathfinding3d.finder.breadth_first.html new file mode 100644 index 0000000..324fa23 --- /dev/null +++ b/pathfinding3d.finder.breadth_first.html @@ -0,0 +1,328 @@ + + + + + + + pathfinding3d.finder.breadth_first module — pathfinding3d 0.6.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    + +
    +
    +
    + + + + \ No newline at end of file diff --git a/pathfinding3d.finder.dijkstra.html b/pathfinding3d.finder.dijkstra.html new file mode 100644 index 0000000..284ec54 --- /dev/null +++ b/pathfinding3d.finder.dijkstra.html @@ -0,0 +1,325 @@ + + + + + + + pathfinding3d.finder.dijkstra module — pathfinding3d 0.6.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    + +
    +
    +
    + + + + \ No newline at end of file diff --git a/pathfinding3d.finder.finder.html b/pathfinding3d.finder.finder.html new file mode 100644 index 0000000..83b6fbe --- /dev/null +++ b/pathfinding3d.finder.finder.html @@ -0,0 +1,377 @@ + + + + + + + pathfinding3d.finder.finder module — pathfinding3d 0.6.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    + +
    +
    +
    + + + + \ No newline at end of file diff --git a/pathfinding3d.finder.html b/pathfinding3d.finder.html index cc79718..0b8cb74 100644 --- a/pathfinding3d.finder.html +++ b/pathfinding3d.finder.html @@ -4,7 +4,7 @@ - pathfinding3d.finder package — pathfinding3d 0.6.1 documentation + pathfinding3d.finder package — pathfinding3d 0.6.2 documentation @@ -18,7 +18,7 @@ - + @@ -26,7 +26,8 @@ - + + @@ -41,7 +42,7 @@ pathfinding3d
    - 0.6.1 + 0.6.2
    @@ -78,16 +79,17 @@
  • Change Log
  • pathfinding3d
      @@ -132,1435 +134,142 @@

      pathfinding3d.finder package

      Submodules

      -
      -
      -

      pathfinding3d.finder.a_star module

      -
      -
      -class pathfinding3d.finder.a_star.AStarFinder(heuristic=None, weight=1, diagonal_movement=DiagonalMovement.never, time_limit=TIME_LIMIT, max_runs=MAX_RUNS)[source]
      -

      Bases: Finder

      -
      -
      Parameters:
      -
        -
      • heuristic (Callable | None) –

      • -
      • weight (int) –

      • -
      • diagonal_movement (int) –

      • -
      • time_limit (float) –

      • -
      • max_runs (int | float) –

      • -
      -
      -
      -
      -
      -__init__(heuristic=None, weight=1, diagonal_movement=DiagonalMovement.never, time_limit=TIME_LIMIT, max_runs=MAX_RUNS)[source]
      -

      Find shortest path using A* algorithm

      -
      -
      Parameters:
      -
        -
      • heuristic (Callable) – heuristic used to calculate distance of 2 points

      • -
      • weight (int) – weight for the edges

      • -
      • diagonal_movement (int) – if diagonal movement is allowed -(see enum in diagonal_movement)

      • -
      • time_limit (float) – max. runtime in seconds

      • -
      • max_runs (int) – max. amount of tries until we abort the search -(optional, only if we enter huge grids and have time constrains) -<=0 means there are no constrains and the code might run on any -large map.

      • -
      -
      -
      -
      - -
      -
      -check_neighbors(start, end, grid, open_list, open_value=1, backtrace_by=None)[source]
      -

      Find next path segment based on given node -(or return path if we found the end)

      -
      -
      Parameters:
      -
        -
      • start (GridNode) – start node

      • -
      • end (GridNode) – end node

      • -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • -
      • open_list (List) – stores nodes that will be processed next

      • -
      • open_value (int) –

      • -
      -
      -
      Returns:
      -

      path

      -
      -
      Return type:
      -

      Optional[List[GridNode]]

      -
      -
      -
      - -
      -
      -apply_heuristic(node_a, node_b, heuristic=None)
      -

      Helper function to apply heuristic

      -
      -
      Parameters:
      -
        -
      • node_a (GridNode) – first node

      • -
      • node_b (GridNode) – second node

      • -
      • heuristic (Callable) – heuristic used to calculate distance of 2 points

      • -
      -
      -
      Returns:
      -

      heuristic value

      -
      -
      Return type:
      -

      float

      -
      -
      -
      - -
      -
      -find_neighbors(grid, node, diagonal_movement=None)
      -

      Find neighbor, same for Djikstra, A*, Bi-A*, IDA*

      -
      -
      Parameters:
      -
        -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • -
      • node (GridNode) – node to find neighbors for

      • -
      • diagonal_movement (int) – if diagonal movement is allowed -(see enum in diagonal_movement)

      • -
      -
      -
      Returns:
      -

      list of neighbors

      -
      -
      Return type:
      -

      List[GridNode]

      -
      -
      -
      - -
      -
      -find_path(start, end, grid)[source]
      -

      Find a path from start to end node on grid using the A* algorithm

      -
      -
      Parameters:
      -
        -
      • start (GridNode) – start node

      • -
      • end (GridNode) – end node

      • -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • -
      -
      -
      Returns:
      -

      path, number of iterations

      -
      -
      Return type:
      -

      Tuple[List, int]

      -
      -
      -
      - -
      -
      -keep_running()
      -

      Check, if we run into time or iteration constrains.

      -
      -
      Raises:
      -
      -
      -
      -
      - -
      -
      -process_node(grid, node, parent, end, open_list, open_value=1)
      -

      We check if the given node is part of the path by calculating its -cost and add or remove it from our path

      -
      -
      Parameters:
      -
        -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • -
      • node (GridNode) – the node we like to test -(the neighbor in A* or jump-node in JumpPointSearch)

      • -
      • parent (GridNode) – the parent node (of the current node we like to test)

      • -
      • end (GridNode) – the end point to calculate the cost of the path

      • -
      • open_list (List) – the list that keeps track of our current path

      • -
      • open_value (bool) – needed if we like to set the open list to something -else than True (used for bi-directional algorithms)

      • -
      -
      -
      -
      - -
      - -
      -
      -

      pathfinding3d.finder.best_first module

      -
      -
      -class pathfinding3d.finder.best_first.BestFirst(heuristic=None, weight=1, diagonal_movement=DiagonalMovement.never, time_limit=TIME_LIMIT, max_runs=MAX_RUNS)[source]
      -

      Bases: AStarFinder

      -

      Similar to the default A* algorithm from a_star.

      -
      -
      Parameters:
      -
        -
      • heuristic (Callable | None) –

      • -
      • weight (int) –

      • -
      • diagonal_movement (int) –

      • -
      • time_limit (float) –

      • -
      • max_runs (int | float) –

      • -
      -
      -
      -
      -
      -__init__(heuristic=None, weight=1, diagonal_movement=DiagonalMovement.never, time_limit=TIME_LIMIT, max_runs=MAX_RUNS)[source]
      -

      Find shortest path using BestFirst algorithm

      -
      -
      Parameters:
      -
        -
      • heuristic (Callable) – heuristic used to calculate distance of 2 points

      • -
      • weight (int) – weight for the edges

      • -
      • diagonal_movement (int) – if diagonal movement is allowed -(see enum in diagonal_movement)

      • -
      • time_limit (float) – max. runtime in seconds

      • -
      • max_runs (int) – max. amount of tries until we abort the search -(optional, only if we enter huge grids and have time constrains) -<=0 means there are no constrains and the code might run on any -large map.

      • -
      -
      -
      -
      - -
      -
      -apply_heuristic(node_a, node_b, heuristic=None)[source]
      -

      Helper function to apply heuristic

      -
      -
      Parameters:
      -
        -
      • node_a (GridNode) – first node

      • -
      • node_b (GridNode) – second node

      • -
      • heuristic (Callable) – heuristic used to calculate distance of 2 points

      • -
      -
      -
      Returns:
      -

      heuristic value

      -
      -
      Return type:
      -

      float

      -
      -
      -
      - -
      -
      -check_neighbors(start, end, grid, open_list, open_value=1, backtrace_by=None)
      -

      Find next path segment based on given node -(or return path if we found the end)

      -
      -
      Parameters:
      -
        -
      • start (GridNode) – start node

      • -
      • end (GridNode) – end node

      • -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • -
      • open_list (List) – stores nodes that will be processed next

      • -
      • open_value (int) –

      • -
      -
      -
      Returns:
      -

      path

      -
      -
      Return type:
      -

      Optional[List[GridNode]]

      -
      -
      -
      - -
      -
      -find_neighbors(grid, node, diagonal_movement=None)
      -

      Find neighbor, same for Djikstra, A*, Bi-A*, IDA*

      -
      -
      Parameters:
      -
        -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • -
      • node (GridNode) – node to find neighbors for

      • -
      • diagonal_movement (int) – if diagonal movement is allowed -(see enum in diagonal_movement)

      • -
      -
      -
      Returns:
      -

      list of neighbors

      -
      -
      Return type:
      -

      List[GridNode]

      -
      -
      -
      - -
      -
      -find_path(start, end, grid)
      -

      Find a path from start to end node on grid using the A* algorithm

      -
      -
      Parameters:
      -
        -
      • start (GridNode) – start node

      • -
      • end (GridNode) – end node

      • -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • -
      -
      -
      Returns:
      -

      path, number of iterations

      -
      -
      Return type:
      -

      Tuple[List, int]

      -
      -
      -
      - -
      -
      -keep_running()
      -

      Check, if we run into time or iteration constrains.

      -
      -
      Raises:
      -
      -
      -
      -
      - -
      -
      -process_node(grid, node, parent, end, open_list, open_value=1)
      -

      We check if the given node is part of the path by calculating its -cost and add or remove it from our path

      -
      -
      Parameters:
      -
        -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • -
      • node (GridNode) – the node we like to test -(the neighbor in A* or jump-node in JumpPointSearch)

      • -
      • parent (GridNode) – the parent node (of the current node we like to test)

      • -
      • end (GridNode) – the end point to calculate the cost of the path

      • -
      • open_list (List) – the list that keeps track of our current path

      • -
      • open_value (bool) – needed if we like to set the open list to something -else than True (used for bi-directional algorithms)

      • -
      -
      -
      -
      - -
      - -
      -
      -

      pathfinding3d.finder.bi_a_star module

      -
      -
      -class pathfinding3d.finder.bi_a_star.BiAStarFinder(heuristic=None, weight=1, diagonal_movement=DiagonalMovement.never, time_limit=TIME_LIMIT, max_runs=MAX_RUNS)[source]
      -

      Bases: AStarFinder

      -

      Similar to the default A* algorithm from a_star.

      -
      -
      Parameters:
      -
        -
      • heuristic (Callable | None) –

      • -
      • weight (int) –

      • -
      • diagonal_movement (int) –

      • -
      • time_limit (float) –

      • -
      • max_runs (int | float) –

      • -
      -
      -
      -
      -
      -__init__(heuristic=None, weight=1, diagonal_movement=DiagonalMovement.never, time_limit=TIME_LIMIT, max_runs=MAX_RUNS)[source]
      -

      Find shortest path using Bi-A* algorithm

      -
      -
      Parameters:
      -
        -
      • heuristic (Callable) – heuristic used to calculate distance of 2 points

      • -
      • weight (int) – weight for the edges

      • -
      • diagonal_movement (int) – if diagonal movement is allowed -(see enum in diagonal_movement)

      • -
      • time_limit (float) – max. runtime in seconds

      • -
      • max_runs (int) – max. amount of tries until we abort the search -(optional, only if we enter huge grids and have time constrains) -<=0 means there are no constrains and the code might run on any -large map.

      • -
      -
      -
      -
      - -
      -
      -find_path(start, end, grid)[source]
      -

      Find a path from start to end node on grid using the A* algorithm

      -
      -
      Parameters:
      -
      -
      Returns:
      -

      path, number of iterations

      -
      -
      Return type:
      -

      Tuple[List, int]

      -
      -
      -
      - -
      -
      -apply_heuristic(node_a, node_b, heuristic=None)
      -

      Helper function to apply heuristic

      -
      -
      Parameters:
      -
        -
      • node_a (GridNode) – first node

      • -
      • node_b (GridNode) – second node

      • -
      • heuristic (Callable) – heuristic used to calculate distance of 2 points

      • -
      -
      -
      Returns:
      -

      heuristic value

      -
      -
      Return type:
      -

      float

      -
      -
      -
      - -
      -
      -check_neighbors(start, end, grid, open_list, open_value=1, backtrace_by=None)
      -

      Find next path segment based on given node -(or return path if we found the end)

      -
      -
      Parameters:
      -
        -
      • start (GridNode) – start node

      • -
      • end (GridNode) – end node

      • -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • -
      • open_list (List) – stores nodes that will be processed next

      • -
      • open_value (int) –

      • -
      -
      -
      Returns:
      -

      path

      -
      -
      Return type:
      -

      Optional[List[GridNode]]

      -
      -
      -
      - -
      -
      -find_neighbors(grid, node, diagonal_movement=None)
      -

      Find neighbor, same for Djikstra, A*, Bi-A*, IDA*

      -
      -
      Parameters:
      -
        -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • -
      • node (GridNode) – node to find neighbors for

      • -
      • diagonal_movement (int) – if diagonal movement is allowed -(see enum in diagonal_movement)

      • -
      -
      -
      Returns:
      -

      list of neighbors

      -
      -
      Return type:
      -

      List[GridNode]

      -
      -
      -
      - -
      -
      -keep_running()
      -

      Check, if we run into time or iteration constrains.

      -
      -
      Raises:
      -
      -
      -
      -
      - -
      -
      -process_node(grid, node, parent, end, open_list, open_value=1)
      -

      We check if the given node is part of the path by calculating its -cost and add or remove it from our path

      -
      -
      Parameters:
      -
        -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • -
      • node (GridNode) – the node we like to test -(the neighbor in A* or jump-node in JumpPointSearch)

      • -
      • parent (GridNode) – the parent node (of the current node we like to test)

      • -
      • end (GridNode) – the end point to calculate the cost of the path

      • -
      • open_list (List) – the list that keeps track of our current path

      • -
      • open_value (bool) – needed if we like to set the open list to something -else than True (used for bi-directional algorithms)

      • -
      -
      -
      -
      - -
      - -
      -
      -

      pathfinding3d.finder.breadth_first module

      -
      -
      -class pathfinding3d.finder.breadth_first.BreadthFirstFinder(heuristic=None, weight=1, diagonal_movement=DiagonalMovement.never, time_limit=TIME_LIMIT, max_runs=MAX_RUNS)[source]
      -

      Bases: Finder

      -
      -
      Parameters:
      -
        -
      • heuristic (Callable | None) –

      • -
      • weight (int) –

      • -
      • diagonal_movement (int) –

      • -
      • time_limit (float) –

      • -
      • max_runs (int | float) –

      • -
      -
      -
      -
      -
      -__init__(heuristic=None, weight=1, diagonal_movement=DiagonalMovement.never, time_limit=TIME_LIMIT, max_runs=MAX_RUNS)[source]
      -

      Find shortest path using Breadth First algorithm

      -
      -
      Parameters:
      -
        -
      • heuristic (Callable) – heuristic used to calculate distance of 2 points

      • -
      • weight (int) – weight for the edges

      • -
      • diagonal_movement (int) – if diagonal movement is allowed -(see enum in diagonal_movement)

      • -
      • time_limit (float) – max. runtime in seconds

      • -
      • max_runs (int) – max. amount of tries until we abort the search -(optional, only if we enter huge grids and have time constrains) -<=0 means there are no constrains and the code might run on any -large map.

      • -
      -
      -
      -
      - -
      -
      -check_neighbors(start, end, grid, open_list)[source]
      -

      Find next path segment based on given node -(or return path if we found the end)

      -
      -
      Parameters:
      -
        -
      • start (GridNode) – start node

      • -
      • end (GridNode) – end node

      • -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • -
      • open_list (List) – stores nodes that will be processed next

      • -
      -
      -
      Returns:
      -

      path

      -
      -
      Return type:
      -

      List[GridNode]

      -
      -
      -
      - -
      -
      -apply_heuristic(node_a, node_b, heuristic=None)
      -

      Helper function to apply heuristic

      -
      -
      Parameters:
      -
        -
      • node_a (GridNode) – first node

      • -
      • node_b (GridNode) – second node

      • -
      • heuristic (Callable) – heuristic used to calculate distance of 2 points

      • -
      -
      -
      Returns:
      -

      heuristic value

      -
      -
      Return type:
      -

      float

      -
      -
      -
      - -
      -
      -find_neighbors(grid, node, diagonal_movement=None)
      -

      Find neighbor, same for Djikstra, A*, Bi-A*, IDA*

      -
      -
      Parameters:
      -
        -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • -
      • node (GridNode) – node to find neighbors for

      • -
      • diagonal_movement (int) – if diagonal movement is allowed -(see enum in diagonal_movement)

      • -
      -
      -
      Returns:
      -

      list of neighbors

      -
      -
      Return type:
      -

      List[GridNode]

      -
      -
      -
      - -
      -
      -find_path(start, end, grid)
      -

      Find a path from start to end node on grid by iterating over -all neighbors of a node (see check_neighbors)

      -
      -
      Parameters:
      -
        -
      • start (GridNode) – start node

      • -
      • end (GridNode) – end node

      • -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list -(can be a list of grids)

      • -
      -
      -
      Returns:
      -

      path, number of iterations

      -
      -
      Return type:
      -

      Tuple[List, int]

      -
      -
      -
      - -
      -
      -keep_running()
      -

      Check, if we run into time or iteration constrains.

      -
      -
      Raises:
      -
      -
      -
      -
      - -
      -
      -process_node(grid, node, parent, end, open_list, open_value=1)
      -

      We check if the given node is part of the path by calculating its -cost and add or remove it from our path

      -
      -
      Parameters:
      -
        -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • -
      • node (GridNode) – the node we like to test -(the neighbor in A* or jump-node in JumpPointSearch)

      • -
      • parent (GridNode) – the parent node (of the current node we like to test)

      • -
      • end (GridNode) – the end point to calculate the cost of the path

      • -
      • open_list (List) – the list that keeps track of our current path

      • -
      • open_value (bool) – needed if we like to set the open list to something -else than True (used for bi-directional algorithms)

      • -
      -
      -
      -
      - -
      - -
      -
      -

      pathfinding3d.finder.dijkstra module

      -
      -
      -class pathfinding3d.finder.dijkstra.DijkstraFinder(weight=1, diagonal_movement=DiagonalMovement.never, time_limit=TIME_LIMIT, max_runs=MAX_RUNS)[source]
      -

      Bases: AStarFinder

      -
      -
      Parameters:
      -
        -
      • weight (int) –

      • -
      • diagonal_movement (int) –

      • -
      • time_limit (float) –

      • -
      • max_runs (int | float) –

      • -
      -
      -
      -
      -
      -__init__(weight=1, diagonal_movement=DiagonalMovement.never, time_limit=TIME_LIMIT, max_runs=MAX_RUNS)[source]
      -

      Find shortest path using Dijkstra algorithm

      -
      -
      Parameters:
      -
        -
      • weight (int) – weight for the edges

      • -
      • diagonal_movement (int) – if diagonal movement is allowed -(see enum in diagonal_movement)

      • -
      • time_limit (float) – max. runtime in seconds

      • -
      • max_runs (int) – max. amount of tries until we abort the search -(optional, only if we enter huge grids and have time constrains) -<=0 means there are no constrains and the code might run on any -large map.

      • -
      -
      -
      -
      - -
      -
      -apply_heuristic(node_a, node_b, heuristic=None)[source]
      -

      Helper function to apply heuristic

      -
      -
      Parameters:
      -
        -
      • node_a (Node) – first node

      • -
      • node_b (Node) – second node

      • -
      • heuristic (Callable) – heuristic used to calculate distance of 2 points

      • -
      -
      -
      Returns:
      -

      0.0

      -
      -
      Return type:
      -

      float

      -
      -
      -
      - -
      -
      -check_neighbors(start, end, grid, open_list, open_value=1, backtrace_by=None)
      -

      Find next path segment based on given node -(or return path if we found the end)

      -
      -
      Parameters:
      -
        -
      • start (GridNode) – start node

      • -
      • end (GridNode) – end node

      • -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • -
      • open_list (List) – stores nodes that will be processed next

      • -
      • open_value (int) –

      • -
      -
      -
      Returns:
      -

      path

      -
      -
      Return type:
      -

      Optional[List[GridNode]]

      -
      -
      -
      - -
      -
      -find_neighbors(grid, node, diagonal_movement=None)
      -

      Find neighbor, same for Djikstra, A*, Bi-A*, IDA*

      -
      -
      Parameters:
      -
        -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • -
      • node (GridNode) – node to find neighbors for

      • -
      • diagonal_movement (int) – if diagonal movement is allowed -(see enum in diagonal_movement)

      • -
      -
      -
      Returns:
      -

      list of neighbors

      -
      -
      Return type:
      -

      List[GridNode]

      -
      -
      -
      - -
      -
      -find_path(start, end, grid)
      -

      Find a path from start to end node on grid using the A* algorithm

      -
      -
      Parameters:
      -
        -
      • start (GridNode) – start node

      • -
      • end (GridNode) – end node

      • -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • -
      -
      -
      Returns:
      -

      path, number of iterations

      -
      -
      Return type:
      -

      Tuple[List, int]

      -
      -
      -
      - -
      -
      -keep_running()
      -

      Check, if we run into time or iteration constrains.

      -
      -
      Raises:
      -
      -
      -
      -
      - -
      -
      -process_node(grid, node, parent, end, open_list, open_value=1)
      -

      We check if the given node is part of the path by calculating its -cost and add or remove it from our path

      -
      -
      Parameters:
      -
        -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • -
      • node (GridNode) – the node we like to test -(the neighbor in A* or jump-node in JumpPointSearch)

      • -
      • parent (GridNode) – the parent node (of the current node we like to test)

      • -
      • end (GridNode) – the end point to calculate the cost of the path

      • -
      • open_list (List) – the list that keeps track of our current path

      • -
      • open_value (bool) – needed if we like to set the open list to something -else than True (used for bi-directional algorithms)

      • -
      -
      -
      -
      - -
      - -
      -
      -

      pathfinding3d.finder.finder module

      -
      -
      -exception pathfinding3d.finder.finder.ExecutionTimeException(message)[source]
      -

      Bases: Exception

      -
      -
      -__init__(message)[source]
      -
      - -
      -
      -args
      -
      - -
      -
      -with_traceback()
      -

      Exception.with_traceback(tb) – -set self.__traceback__ to tb and return self.

      -
      - -
      - -
      -
      -exception pathfinding3d.finder.finder.ExecutionRunsException(message)[source]
      -

      Bases: Exception

      -
      -
      -__init__(message)[source]
      -
      - -
      -
      -args
      -
      - -
      -
      -with_traceback()
      -

      Exception.with_traceback(tb) – -set self.__traceback__ to tb and return self.

      -
      - -
      - -
      -
      -class pathfinding3d.finder.finder.Finder(heuristic=None, weight=1, diagonal_movement=DiagonalMovement.never, weighted=True, time_limit=TIME_LIMIT, max_runs=MAX_RUNS)[source]
      -

      Bases: object

      -
      -
      Parameters:
      -
        -
      • heuristic (Callable | None) –

      • -
      • weight (int) –

      • -
      • diagonal_movement (int) –

      • -
      • weighted (bool) –

      • -
      • time_limit (float) –

      • -
      • max_runs (int | float) –

      • -
      -
      -
      -
      -
      -__init__(heuristic=None, weight=1, diagonal_movement=DiagonalMovement.never, weighted=True, time_limit=TIME_LIMIT, max_runs=MAX_RUNS)[source]
      -

      Find shortest path

      -
      -
      Parameters:
      -
        -
      • heuristic (Callable) – heuristic used to calculate distance of 2 points

      • -
      • weight (int) – weight for the edges

      • -
      • diagonal_movement (int) – if diagonal movement is allowed -(see enum in diagonal_movement)

      • -
      • weighted (the algorithm supports weighted nodes) – (should be True for A* and Dijkstra)

      • -
      • time_limit (float) – max. runtime in seconds

      • -
      • max_runs (int) – max. amount of tries until we abort the search -(optional, only if we enter huge grids and have time constrains) -<=0 means there are no constrains and the code might run on any -large map.

      • -
      -
      -
      -
      - -
      -
      -apply_heuristic(node_a, node_b, heuristic=None)[source]
      -

      Helper function to apply heuristic

      -
      -
      Parameters:
      -
        -
      • node_a (GridNode) – first node

      • -
      • node_b (GridNode) – second node

      • -
      • heuristic (Callable) – heuristic used to calculate distance of 2 points

      • -
      -
      -
      Returns:
      -

      heuristic value

      -
      -
      Return type:
      -

      float

      -
      -
      -
      - -
      -
      -find_neighbors(grid, node, diagonal_movement=None)[source]
      -

      Find neighbor, same for Djikstra, A*, Bi-A*, IDA*

      -
      -
      Parameters:
      -
        -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • -
      • node (GridNode) – node to find neighbors for

      • -
      • diagonal_movement (int) – if diagonal movement is allowed -(see enum in diagonal_movement)

      • -
      -
      -
      Returns:
      -

      list of neighbors

      -
      -
      Return type:
      -

      List[GridNode]

      -
      -
      -
      - -
      -
      -keep_running()[source]
      -

      Check, if we run into time or iteration constrains.

      -
      -
      Raises:
      -
      -
      -
      -
      - -
      -
      -process_node(grid, node, parent, end, open_list, open_value=1)[source]
      -

      We check if the given node is part of the path by calculating its -cost and add or remove it from our path

      -
      -
      Parameters:
      -
        -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • -
      • node (GridNode) – the node we like to test -(the neighbor in A* or jump-node in JumpPointSearch)

      • -
      • parent (GridNode) – the parent node (of the current node we like to test)

      • -
      • end (GridNode) – the end point to calculate the cost of the path

      • -
      • open_list (List) – the list that keeps track of our current path

      • -
      • open_value (bool) – needed if we like to set the open list to something -else than True (used for bi-directional algorithms)

      • -
      -
      -
      -
      - -
      -
      -check_neighbors(start, end, grid, open_list, open_value=1, backtrace_by=None)[source]
      -

      find next path segment based on given node -(or return path if we found the end)

      -
      -
      Parameters:
      -
        -
      • start (GridNode) – start node

      • -
      • end (GridNode) – end node

      • -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • -
      • open_list (List) – stores nodes that will be processed next

      • -
      • open_value (int) –

      • +
      -
      -
      Returns:
      -

      path

      -
      -
      Return type:
      -

      Optional[List[GridNode]]

      -
      -
      -
      - -
      -
      -find_path(start, end, grid)[source]
      -

      Find a path from start to end node on grid by iterating over -all neighbors of a node (see check_neighbors)

      -
      -
      Parameters:
      -
      -
      Returns:
      -

      path, number of iterations

      -
      -
      Return type:
      -

      Tuple[List, int]

      -
      -
      -
      - -
      - -
      -
      -

      pathfinding3d.finder.ida_star module

      -
      -
      -class pathfinding3d.finder.ida_star.IDAStarFinder(heuristic=None, weight=1, diagonal_movement=DiagonalMovement.never, time_limit=TIME_LIMIT, max_runs=MAX_RUNS, track_recursion=True)[source]
      -

      Bases: Finder

      -

      Iterative Deeping A Star (IDA*) path-finder.

      -

      Recursion based on: -http://www.apl.jhu.edu/~hall/AI-Programming/IDA-Star.html

      -

      Path retracing based on: -V. Nageshwara Rao, Vipin Kumar and K. Ramesh -“A Parallel Implementation of Iterative-Deeping-A*”, January 1987. -ftp://ftp.cs.utexas.edu/.snapshot/hourly.1/pub/AI-Lab/tech-reports/ -UT-AI-TR-87-46.pdf

      -

      based on the JavaScript implementation by Gerard Meier -(www.gerardmeier.com)

      -
      -
      Parameters:
      -
        -
      • heuristic (Callable | None) –

      • -
      • weight (int) –

      • -
      • diagonal_movement (int) –

      • -
      • time_limit (float) –

      • -
      • max_runs (int | float) –

      • -
      • track_recursion (bool) –

      • +
      -
      -
      -
      -
      -__init__(heuristic=None, weight=1, diagonal_movement=DiagonalMovement.never, time_limit=TIME_LIMIT, max_runs=MAX_RUNS, track_recursion=True)[source]
      -

      Find shortest path using IDA* algorithm

      -
      -
      Parameters:
      -
      -
      -
      - -
      -
      -search(node, g, cutoff, path, depth, end, grid)[source]
      -

      Recursive IDA* search implementation

      -
      -
      Parameters:
      -
        -
      • node (GridNode) – current node

      • -
      • g (float) – cost from start to current node

      • -
      • cutoff (float) – cutoff cost

      • -
      • path (List[GridNode]) – path

      • -
      • depth (int) – current depth

      • -
      • end (GridNode) – end node

      • -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • +
      -
      -
      Returns:
      -

      cutoff cost or end node

      -
      -
      Return type:
      -

      Union[float, GridNode]

      -
      -
      -
      - -
      -
      -apply_heuristic(node_a, node_b, heuristic=None)
      -

      Helper function to apply heuristic

      -
      -
      Parameters:
      -
      -
      Returns:
      -

      heuristic value

      -
      -
      Return type:
      -

      float

      -
      -
      -
      - -
      -
      -check_neighbors(start, end, grid, open_list, open_value=1, backtrace_by=None)
      -

      find next path segment based on given node -(or return path if we found the end)

      -
      -
      Parameters:
      -
        -
      • start (GridNode) – start node

      • -
      • end (GridNode) – end node

      • -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • -
      • open_list (List) – stores nodes that will be processed next

      • -
      • open_value (int) –

      • +
      -
      -
      Returns:
      -

      path

      -
      -
      Return type:
      -

      Optional[List[GridNode]]

      -
      -
      -
      - -
      -
      -find_neighbors(grid, node, diagonal_movement=None)
      -

      Find neighbor, same for Djikstra, A*, Bi-A*, IDA*

      -
      -
      Parameters:
      -
      -
      Returns:
      -

      list of neighbors

      -
      -
      Return type:
      -

      List[GridNode]

      -
      -
      -
      - -
      -
      -find_path(start, end, grid)[source]
      -

      Find a path from start to end node on grid using the IDA* algorithm

      -
      -
      Parameters:
      -
        -
      • start (GridNode) – start node

      • -
      • end (GridNode) – end node

      • -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • +
      -
      -
      Returns:
      -

      path, number of iterations

      -
      -
      Return type:
      -

      Tuple[List, int]

      -
      -
      -
      - -
      -
      -keep_running()
      -

      Check, if we run into time or iteration constrains.

      -
      -
      Raises:
      -
      -
      -
      - -
      -
      -process_node(grid, node, parent, end, open_list, open_value=1)
      -

      We check if the given node is part of the path by calculating its -cost and add or remove it from our path

      -
      -
      Parameters:
      -
      -
      -
      - -
      - -
      -
      -

      pathfinding3d.finder.msp module

      -
      -
      -class pathfinding3d.finder.msp.MinimumSpanningTree(*args, **kwargs)[source]
      -

      Bases: Finder

      -

      Minimum Spanning Tree implementation by Brad Beattie -(see https://github.com/brean/python-pathfinding/issues/18)

      -

      The wikipedia page has a nice description about MSP: -https://en.wikipedia.org/wiki/Minimum_spanning_tree

      -
      -
      -__init__(*args, **kwargs)[source]
      -

      Find shortest path

      -
      -
      Parameters:
      -
      -
      -
      - -
      -
      -tree(grid, start)[source]
      -

      Returns a list of nodes that are part of the minimum spanning tree -of the grid.

      -
      -
      Parameters:
      -
        -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • -
      • start (GridNode) – start node

      • +
      -
      -
      Return type:
      -

      List[GridNode]

      -
      -
      -
      - -
      -
      -itertree(grid, start)[source]
      -

      Returns a generator that yields nodes that are part of the minimum -spanning tree of the grid.

      -
      -
      Parameters:
      -
      -
      -
      - -
      -
      -find_path(start, end, grid)[source]
      -

      Find a path from start to end node on grid using the Minimum Spanning -Tree algorithm

      -
      -
      Parameters:
      -
        -
      • start (GridNode) – start node

      • -
      • end (GridNode) – end node

      • -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • +
      -
      -
      Returns:
      -

      path, number of iterations

      -
      -
      Return type:
      -

      Tuple[List, int]

      -
      -
      -
      - -
      -
      -apply_heuristic(node_a, node_b, heuristic=None)
      -

      Helper function to apply heuristic

      -
      -
      Parameters:
      -
      -
      Returns:
      -

      heuristic value

      -
      -
      Return type:
      -

      float

      -
      -
      -
      - -
      -
      -check_neighbors(start, end, grid, open_list, open_value=1, backtrace_by=None)
      -

      find next path segment based on given node -(or return path if we found the end)

      -
      -
      Parameters:
      -
        -
      • start (GridNode) – start node

      • -
      • end (GridNode) – end node

      • -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • -
      • open_list (List) – stores nodes that will be processed next

      • -
      • open_value (int) –

      • +
      -
      -
      Returns:
      -

      path

      -
      -
      Return type:
      -

      Optional[List[GridNode]]

      -
      -
      -
      - -
      -
      -find_neighbors(grid, node, diagonal_movement=None)
      -

      Find neighbor, same for Djikstra, A*, Bi-A*, IDA*

      -
      -
      Parameters:
      -
      -
      Returns:
      -

      list of neighbors

      -
      -
      Return type:
      -

      List[GridNode]

      -
      -
      -
      - -
      -
      -keep_running()
      -

      Check, if we run into time or iteration constrains.

      -
      -
      Raises:
      -
      -
      -
      -
      - -
      -
      -process_node(grid, node, parent, end, open_list, open_value=1)
      -

      We check if the given node is part of the path by calculating its -cost and add or remove it from our path

      -
      -
      Parameters:
      -
        -
      • grid (Grid) – grid that stores all possible steps/tiles as 3D-list

      • -
      • node (GridNode) – the node we like to test -(the neighbor in A* or jump-node in JumpPointSearch)

      • -
      • parent (GridNode) – the parent node (of the current node we like to test)

      • -
      • end (GridNode) – the end point to calculate the cost of the path

      • -
      • open_list (List) – the list that keeps track of our current path

      • -
      • open_value (bool) – needed if we like to set the open list to something -else than True (used for bi-directional algorithms)

      • +
      -
      -
      -
      - -
      - +
  • @@ -1568,7 +277,8 @@

    Submodules - + +
    diff --git a/pathfinding3d.finder.ida_star.html b/pathfinding3d.finder.ida_star.html new file mode 100644 index 0000000..c455ea7 --- /dev/null +++ b/pathfinding3d.finder.ida_star.html @@ -0,0 +1,364 @@ + + + + + + + pathfinding3d.finder.ida_star module — pathfinding3d 0.6.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    + +
    +
    +
    + + + + \ No newline at end of file diff --git a/pathfinding3d.finder.msp.html b/pathfinding3d.finder.msp.html new file mode 100644 index 0000000..f8242aa --- /dev/null +++ b/pathfinding3d.finder.msp.html @@ -0,0 +1,355 @@ + + + + + + + pathfinding3d.finder.msp module — pathfinding3d 0.6.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    + +
    +
    +
    + + + + \ No newline at end of file diff --git a/pathfinding3d.finder.theta_star.html b/pathfinding3d.finder.theta_star.html new file mode 100644 index 0000000..9971270 --- /dev/null +++ b/pathfinding3d.finder.theta_star.html @@ -0,0 +1,325 @@ + + + + + + + pathfinding3d.finder.theta_star module — pathfinding3d 0.6.2 documentation + + + + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    + +
    +
    +
    + + + + \ No newline at end of file diff --git a/pathfinding3d.html b/pathfinding3d.html index 0767ddb..ecee1e1 100644 --- a/pathfinding3d.html +++ b/pathfinding3d.html @@ -4,7 +4,7 @@ - pathfinding3d package — pathfinding3d 0.6.1 documentation + pathfinding3d package — pathfinding3d 0.6.2 documentation @@ -18,7 +18,7 @@ - + @@ -42,7 +42,7 @@ pathfinding3d
    - 0.6.1 + 0.6.2
    @@ -79,16 +79,17 @@
  • Change Log
  • pathfinding3d
      @@ -135,122 +136,45 @@

      Subpackages
      • pathfinding3d.core package
          -
        • Submodules
        • -
        • pathfinding3d.core.diagonal_movement module
            -
          • DiagonalMovement
              -
            • DiagonalMovement.always
            • -
            • DiagonalMovement.never
            • -
            • DiagonalMovement.if_at_most_one_obstacle
            • -
            • DiagonalMovement.only_when_no_obstacle
            • +
            • Submodules
                +
              • pathfinding3d.core.diagonal_movement module
              • +
              • pathfinding3d.core.grid module
              • -
              • pathfinding3d.core.grid module
                  -
                • build_nodes()
                • -
                • Grid
                    -
                  • Grid.__init__()
                  • -
                  • Grid._validate_dimensions()
                  • -
                  • Grid.is_valid_grid()
                  • -
                  • Grid.node()
                  • -
                  • Grid.inside()
                  • -
                  • Grid.walkable()
                  • -
                  • Grid._calc_cost()
                  • -
                  • Grid.calc_cost()
                  • -
                  • Grid.neighbors()
                  • -
                  • Grid.cleanup()
                  • +
                  • pathfinding3d.core.heap module
                  • +
                  • pathfinding3d.core.heuristic module
                  • -
                  • pathfinding3d.core.heap module
                      -
                    • SimpleHeap
                        -
                      • SimpleHeap.__init__()
                      • -
                      • SimpleHeap._determine_node_retrieval_function()
                      • -
                      • SimpleHeap._determine_node_function()
                      • -
                      • SimpleHeap.pop_node()
                      • -
                      • SimpleHeap.push_node()
                      • -
                      • SimpleHeap.remove_node()
                      • +
                      • pathfinding3d.core.node module
                      • +
                      • pathfinding3d.core.util module
                      • -
                      • pathfinding3d.core.heuristic module -
                      • -
                      • pathfinding3d.core.node module -
                      • -
                      • pathfinding3d.core.util module -
                      • -
                      • pathfinding3d.core.world module
                          -
                        • World @@ -258,122 +182,43 @@

                          Subpackagespathfinding3d.finder package
                            -
                          • Submodules
                          • -
                          • pathfinding3d.finder.a_star module -
                          • -
                          • pathfinding3d.finder.best_first module -
                          • -
                          • pathfinding3d.finder.bi_a_star module -
                          • -
                          • pathfinding3d.finder.breadth_first module -
                          • -
                          • pathfinding3d.finder.dijkstra module
                              -
                            • DijkstraFinder
                                -
                              • DijkstraFinder.__init__()
                              • -
                              • DijkstraFinder.apply_heuristic()
                              • -
                              • DijkstraFinder.check_neighbors()
                              • -
                              • DijkstraFinder.find_neighbors()
                              • -
                              • DijkstraFinder.find_path()
                              • -
                              • DijkstraFinder.keep_running()
                              • -
                              • DijkstraFinder.process_node()
                              • +
                              • Submodules
                                  +
                                • pathfinding3d.finder.a_star module
                                • +
                                • pathfinding3d.finder.best_first module
                                • -
                                • pathfinding3d.finder.finder module
                                    -
                                  • ExecutionTimeException
                                      -
                                    • ExecutionTimeException.__init__()
                                    • -
                                    • ExecutionTimeException.args
                                    • -
                                    • ExecutionTimeException.with_traceback()
                                    • +
                                    • pathfinding3d.finder.bi_a_star module
                                    • -
                                    • ExecutionRunsException
                                        -
                                      • ExecutionRunsException.__init__()
                                      • -
                                      • ExecutionRunsException.args
                                      • -
                                      • ExecutionRunsException.with_traceback()
                                      • +
                                      • pathfinding3d.finder.breadth_first module
                                      • -
                                      • Finder
                                          -
                                        • Finder.__init__()
                                        • -
                                        • Finder.apply_heuristic()
                                        • -
                                        • Finder.find_neighbors()
                                        • -
                                        • Finder.keep_running()
                                        • -
                                        • Finder.process_node()
                                        • -
                                        • Finder.check_neighbors()
                                        • -
                                        • Finder.find_path()
                                        • +
                                        • pathfinding3d.finder.dijkstra module
                                        • +
                                        • pathfinding3d.finder.finder module
                                        • -
                                        • pathfinding3d.finder.ida_star module
                                            -
                                          • IDAStarFinder
                                              -
                                            • IDAStarFinder.__init__()
                                            • -
                                            • IDAStarFinder.search()
                                            • -
                                            • IDAStarFinder.apply_heuristic()
                                            • -
                                            • IDAStarFinder.check_neighbors()
                                            • -
                                            • IDAStarFinder.find_neighbors()
                                            • -
                                            • IDAStarFinder.find_path()
                                            • -
                                            • IDAStarFinder.keep_running()
                                            • -
                                            • IDAStarFinder.process_node()
                                            • +
                                            • pathfinding3d.finder.ida_star module
                                            • +
                                            • pathfinding3d.finder.msp module
                                            • -
                                            • pathfinding3d.finder.msp module
                                            • Change Log
                                            • pathfinding3d
                                            • Change Log
                                            • pathfinding3d
                                                diff --git a/searchindex.js b/searchindex.js index e3f5691..465f29c 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({"docnames": ["CHANGELOG", "INSTALL", "INTRO", "USAGE", "index", "modules", "pathfinding3d", "pathfinding3d.core", "pathfinding3d.finder"], "filenames": ["CHANGELOG.md", "INSTALL.md", "INTRO.md", "USAGE.md", "index.rst", "modules.rst", "pathfinding3d.rst", "pathfinding3d.core.rst", "pathfinding3d.finder.rst"], "titles": ["Version History", "Installation", "Pathfinding3D", "Examples", "Welcome to pathfinding3d\u2019s documentation!", "pathfinding3d", "pathfinding3d package", "pathfinding3d.core package", "pathfinding3d.finder package"], "terms": {"fix": 0, "bug": 0, "thetastarfind": [0, 3], "algorithm": [0, 2, 3, 7, 8], "when": 0, "us": [0, 2, 3, 4, 7, 8], "world": [0, 3, 5, 6], "connect": [0, 4, 6, 7], "grid": [0, 3, 5, 6, 8], "see": [0, 3, 7, 8], "issu": [0, 8], "12": [0, 3], "theta": [0, 2, 3], "ad": [0, 3, 7], "line": [0, 3, 7], "sight": [0, 3, 7], "minor": 0, "improv": 0, "code": [0, 3, 8], "qualiti": 0, "more": [0, 3, 7], "test": [0, 6, 7, 8], "new": [0, 3, 7], "diagon": [0, 3, 7, 8], "movement": [0, 2, 4, 7, 8], "lru": 0, "cach": 0, "heurist": [0, 2, 5, 6, 8], "updat": [0, 3], "document": 0, "exampl": [0, 4], "node": [0, 3, 5, 6, 8], "class": [0, 3, 7, 8], "ha": [0, 3, 7, 8], "addit": 0, "attribut": [0, 3, 7], "heap": [0, 5, 6], "replic": 0, "simpl": [0, 3, 7], "structur": [0, 3, 7], "inspir": [0, 7], "from": [0, 2, 3, 7, 8], "python": [0, 1, 2, 7, 8], "pathfind": [0, 2, 3, 7, 8], "origin": [0, 3, 7], "author": [0, 7], "base": [0, 7, 8], "v1": 0, "7": [0, 2, 3], "initi": [0, 3, 7], "have": [0, 3, 7, 8], "better": [0, 3], "error": 0, "messag": [0, 8], "url": 0, "point": [0, 3, 7, 8], "repositori": 0, "enabl": [0, 3], "weight": [0, 2, 3, 6, 7, 8], "biastarfind": [0, 6, 8], "add": [0, 3, 8], "type": [0, 3, 7, 8], "hint": 0, "sphinx": 0, "minim": 0, "autogener": 0, "codecov": 0, "badg": 0, "workflow": 0, "number": [0, 3, 7, 8], "setup": 0, "py": 0, "minimum": [0, 2, 8], "releas": 0, "3": [1, 3, 4, 7], "8": [1, 3], "higher": [1, 3], "numpi": [1, 3], "The": [1, 3, 7, 8], "packag": [1, 4, 5], "i": [1, 2, 3, 7, 8], "avail": [1, 3], "so": [1, 3, 7], "you": [1, 3], "can": [1, 3, 7, 8], "pip": [1, 3], "pathfinding3d": [1, 3], "git": 1, "clone": 1, "http": [1, 7, 8], "github": [1, 3, 7, 8], "com": [1, 7, 8], "harisankar95": 1, "cd": 1, "e": 1, "dev": 1, "checkout": 1, "b": 1, "branch_nam": 1, "python3": 2, "froke": 2, "brean": [2, 7, 8], "comprehens": 2, "librari": [2, 3], "design": 2, "3d": [2, 3, 7, 8], "applic": [2, 3], "current": [2, 7, 8], "ar": [2, 3, 7, 8], "path": [2, 4, 7, 8], "finder": [2, 3, 5, 6], "bundl": 2, "thi": [2, 3, 7], "name": [2, 3], "A": [2, 3, 7, 8], "versatil": 2, "most": 2, "wide": 2, "dijkstra": [2, 5, 6, 7], "without": 2, "best": 2, "first": [2, 3, 7, 8], "bi": [2, 3, 7, 8], "direct": [2, 3, 7, 8], "effici": [2, 3], "larg": [2, 8], "graph": 2, "known": 2, "goal": [2, 7], "breadth": [2, 8], "search": [2, 4, 6, 7, 8], "bf": 2, "iter": [2, 3, 8], "deep": [2, 8], "ida": [2, 7, 8], "memori": 2, "span": [2, 8], "tree": [2, 6, 8], "msp": [2, 5, 6], "almost": 2, "smooth": [2, 3], "take": [2, 3, 7], "field": [2, 3, 7], "map": [2, 3, 7, 8], "account": 2, "variant": 2, "ani": [2, 4, 8], "angl": [2, 4], "allow": [2, 3, 7, 8], "For": [3, 4], "detail": 3, "descript": [3, 8], "look": [3, 7], "folder": 3, "find": [3, 8], "environ": 3, "import": 3, "requir": [3, 4], "np": 3, "core": [3, 5, 6], "diagonal_mov": [3, 5, 6, 8], "diagonalmov": [3, 6, 7, 8], "a_star": [3, 5, 6], "astarfind": [3, 6, 8], "creat": [3, 7], "defin": 3, "arrai": [3, 7], "valu": [3, 7, 8], "smaller": 3, "equal": 3, "0": [3, 4, 7, 8], "repres": [3, 7], "an": [3, 7], "obstacl": 3, "posit": [3, 7], "walk": [3, 7], "bigger": 3, "cost": [3, 7, 8], "In": 3, "all": [3, 7, 8], "walkabl": [3, 6, 7], "same": [3, 8], "1": [3, 4, 7, 8], "feel": 3, "free": 3, "complex": 3, "some": 3, "sensor": 3, "data": [3, 7], "input": 3, "x": [3, 6, 7], "y": [3, 6, 7], "z": [3, 6, 7], "matrix": [3, 7], "ones": 3, "set": [3, 7, 8], "center": 3, "note": 3, "differ": 3, "vari": 3, "travers": 3, "instanti": 3, "object": [3, 7, 8], "instanc": 3, "everi": 3, "element": 3, "also": 3, "size": [3, 7], "start": [3, 7, 8], "end": [3, 7, 8], "determin": [3, 7], "coordin": [3, 7], "access": 3, "paramet": [3, 7, 8], "second": [3, 7, 8], "third": 3, "top": 3, "left": 3, "corner": 3, "bottom": 3, "right": 3, "2": [3, 4, 7, 8], "here": 3, "we": [3, 7, 8], "which": [3, 7], "default": [3, 7, 8], "find_path": [3, 6, 8], "method": 3, "return": [3, 7, 8], "need": [3, 8], "alwai": [3, 6, 7], "run": [3, 8], "output": 3, "result": 3, "list": [3, 7, 8], "waypoint": 3, "convert": 3, "tupl": [3, 7, 8], "pretti": 3, "print": 3, "part": [3, 8], "p": 3, "identifi": 3, "oper": 3, "length": 3, "len": 3, "whole": 3, "copi": 3, "past": 3, "plai": 3, "With": 3, "seamlessli": 3, "multipl": [3, 7], "featur": 3, "invalu": 3, "simul": 3, "multi": 3, "stori": 3, "staircas": 3, "between": [3, 7], "even": 3, "magic": 3, "link": 3, "dispar": 3, "locat": [3, 7], "let": 3, "": [3, 7], "consid": [3, 7], "where": 3, "want": 3, "adjac": 3, "each": [3, 7], "world0": 3, "world1": 3, "both": [3, 7], "grid0": 3, "grid_id": [3, 6, 7], "grid1": 3, "establish": 3, "wai": 3, "travel": 3, "unidirect": 3, "onli": [3, 7, 8], "one": [3, 7], "manag": 3, "find_neighbor": [3, 6, 8], "them": 3, "dure": 3, "across": 3, "util": [3, 5, 6], "time": [3, 7, 8], "pass": 3, "_": 3, "anoth": [3, 7], "demonstr": 3, "uniqu": 3, "capabl": 3, "space": 3, "id": [3, 7], "separ": 3, "path0": 3, "path1": 3, "through": [3, 7], "should": [3, 7, 8], "like": [3, 8], "put": 3, "togeth": 3, "sometim": 3, "help": 3, "understand": 3, "purpos": [3, 4], "instal": [3, 4], "o": 3, "o3d": 3, "load": 3, "sampl": 3, "sample_map": 3, "npy": 3, "shape": 3, "42": 3, "indic": 3, "file": 3, "download": 3, "provid": 3, "start_pt": 3, "21": 3, "end_pt": 3, "5": [3, 4], "38": 3, "33": 3, "represent": 3, "unpack": 3, "individu": 3, "argument": 3, "our": [3, 8], "specifi": [3, 7], "only_when_no_obstacl": [3, 6, 7], "get": [3, 7], "path_cost": 3, "g": [3, 6, 7, 8], "f": [3, 6, 7], "4f": 3, "28": 3, "6130": 3, "20": 3, "458": 3, "blue": 3, "color": 3, "n": 3, "column": 3, "red": 3, "channel": 3, "green": 3, "xyz_pt": 3, "pointcloud": 3, "draw_geometri": 3, "obstacle_indic": 3, "stack": 3, "axi": 3, "astyp": 3, "float": [3, 7, 8], "zero": 3, "max": [3, 8], "grei": 3, "path_color": 3, "sinc": 3, "alreadi": 3, "subtract": 3, "remain": 3, "prepar": 3, "start_color": 3, "end_color": 3, "full": 3, "now": 3, "along": 3, "similarli": 3, "correspond": [3, 7], "combin": 3, "concaten": 3, "cloud": 3, "pcd": 3, "geometri": 3, "vector3dvector": 3, "voxelgrid": 3, "gener": [3, 8], "voxel": 3, "voxel_s": 3, "voxel_grid": 3, "create_from_point_cloud": 3, "ax": 3, "trianglemesh": 3, "create_coordinate_fram": 3, "15": 3, "refer": 3, "remov": [3, 7, 8], "width": [3, 7], "height": [3, 7], "window": 3, "window_nam": 3, "env": 3, "1024": 3, "768": 3, "rotat": 3, "click": 3, "drag": 3, "mous": 3, "zoom": 3, "out": 3, "wheel": 3, "03": 3, "view": 3, "often": 3, "desir": 3, "rather": 3, "than": [3, 8], "being": 3, "restrict": 3, "26": 3, "discret": 3, "achiev": 3, "subclass": 3, "cut": 3, "chase": 3, "how": [3, 7], "work": 3, "As": 3, "usual": 3, "theta_star": 3, "singl": 3, "middl": 3, "10": 3, "dtype": 3, "int8": 3, "9": 3, "notic": 3, "doe": [3, 7], "other": 3, "becaus": 3, "check": [3, 7, 8], "whether": [3, 7], "If": [3, 7], "intermedi": 3, "vehicl": 3, "move": 3, "follow": 3, "reduc": 3, "quantit": 3, "analysi": 3, "compar": 3, "cleanup": [3, 6, 7], "astar_path": 3, "52": 3, "11": 3, "4": [3, 4, 7], "6": [3, 4], "function": [3, 7, 8], "calcul": [3, 7, 8], "def": 3, "calculate_path_cost": 3, "pt": 3, "pt_next": 3, "zip": 3, "dx": [3, 7], "dy": [3, 7], "dz": [3, 7], "theta_star_cost": 3, "astar_cost": 3, "nastarfind": 3, "871045857174057": 3, "16": 3, "27062002292411": 3, "lower": 3, "thu": 3, "plotli": 3, "graph_object": 3, "go": 3, "figur": 3, "fig": 3, "scatter3d": 3, "mode": [3, 4], "marker": 3, "dict": [3, 7], "hovertext": 3, "black": 3, "orang": 3, "camera": 3, "up": 3, "1479269806756467": 3, "06501594452841505": 3, "0907033779622012": 3, "ey": 3, "3097359159706334": 3, "4710974884501846": 3, "095154166796815": 3, "project": 3, "perspect": 3, "layout": 3, "update_layout": 3, "scene": 3, "xaxi": 3, "titl": 3, "backgroundcolor": 3, "white": 3, "gridcolor": 3, "lightgrei": 3, "showbackground": 3, "true": [3, 7, 8], "zerolinecolor": 3, "rang": 3, "dtick": 3, "yaxi": 3, "zaxi": 3, "legend": 3, "yanchor": 3, "99": 3, "xanchor": 3, "01": 3, "bgcolor": 3, "rgba": 3, "255": 3, "text": 3, "v": [3, 8], "scene_camera": 3, "show": 3, "tab": 3, "open": [3, 6, 7, 8], "your": 3, "browser": 3, "04": 3, "star": [3, 8], "introduct": 4, "pypi": 4, "develop": 4, "pleas": 4, "edit": 4, "usag": 4, "basic": [4, 7], "step": [4, 8], "portal": 4, "bridg": 4, "toi": 4, "two": [4, 7], "build": 4, "storei": 4, "visual": 4, "prerequisit": 4, "open3d": 4, "chang": 4, "log": 4, "subpackag": [4, 5], "index": 4, "modul": [4, 5, 6], "page": [4, 8], "submodul": [5, 6], "best_first": [5, 6], "bi_a_star": [5, 6], "breadth_first": [5, 6], "ida_star": [5, 6], "never": [6, 7, 8], "if_at_most_one_obstacl": [6, 7], "build_nod": [6, 7], "__init__": [6, 7, 8], "_validate_dimens": [6, 7], "is_valid_grid": [6, 7], "insid": [6, 7], "_calc_cost": [6, 7], "calc_cost": [6, 7], "neighbor": [6, 7, 8], "simpleheap": [6, 7], "_determine_node_retrieval_funct": [6, 7], "_determine_node_funct": [6, 7], "pop_nod": [6, 7], "push_nod": [6, 7], "remove_nod": [6, 7], "null": [6, 7], "manhattan": [6, 7], "euclidean": [6, 7], "chebyshev": [6, 7], "octil": [6, 7], "h": [6, 7], "close": [6, 7], "parent": [6, 7, 8], "retain_count": [6, 7], "gridnod": [6, 7, 8], "backtrac": [6, 7], "bi_backtrac": [6, 7], "raytrac": [6, 7], "bresenham": [6, 7], "expand_path": [6, 7], "smoothen_path": [6, 7], "line_of_sight": [6, 7], "check_neighbor": [6, 8], "apply_heurist": [6, 8], "keep_run": [6, 8], "process_nod": [6, 8], "bestfirst": [6, 8], "breadthfirstfind": [6, 8], "dijkstrafind": [6, 8], "executiontimeexcept": [6, 8], "arg": [6, 8], "with_traceback": [6, 8], "executionrunsexcept": [6, 8], "idastarfind": [6, 8], "minimumspanningtre": [6, 8], "itertre": [6, 8], "sourc": [7, 8], "enum": [7, 8], "depth": [7, 8], "none": [7, 8], "invers": 7, "fals": 7, "accord": 7, "given": [7, 8], "what": 7, "int": [7, 8], "matrixtyp": 7, "thei": 7, "bool": [7, 8], "option": [7, 8], "otherwis": 7, "contain": 7, "ndarrai": 7, "valid": 7, "tile": [7, 8], "distanc": [7, 8], "node_a": [7, 8], "node_b": [7, 8], "order": 7, "pull": 7, "54": 7, "peterchenad": 7, "implement": [7, 8], "optim": 7, "It": 7, "maintain": 7, "statu": 7, "retriev": 7, "its": [7, 8], "union": [7, 8], "rais": [7, 8], "valueerror": 7, "pop": 7, "lowest": 7, "push": 7, "old_f": 7, "just": 7, "store": [7, 8], "ignor": 7, "old": 7, "special": 7, "save": 7, "includ": 7, "overal": 7, "been": 7, "recurs": [7, 8], "track": [7, 8], "jump": [7, 8], "reset": 7, "fresh": 7, "belong": 7, "other_nod": 7, "record": 7, "coords_a": 7, "coords_b": 7, "ly": 7, "form": 7, "rai": 7, "trace": 7, "coord": 7, "compress": 7, "segment": [7, 8], "interpol": 7, "expand": 7, "use_raytrac": 7, "uncompress": 7, "less": 7, "turn": 7, "natur": 7, "smoothen": 7, "node1": 7, "node2": 7, "exist": 7, "wether": 7, "time_limit": 8, "max_run": 8, "callabl": 8, "shortest": 8, "edg": 8, "runtim": 8, "amount": 8, "tri": 8, "until": 8, "abort": 8, "enter": 8, "huge": 8, "constrain": 8, "mean": 8, "might": 8, "open_list": 8, "open_valu": 8, "backtrace_bi": 8, "next": 8, "found": 8, "possibl": 8, "process": 8, "helper": 8, "appli": 8, "djikstra": 8, "jumppointsearch": 8, "keep": 8, "someth": 8, "els": 8, "similar": 8, "over": 8, "except": 8, "tb": 8, "self": 8, "__traceback__": 8, "support": 8, "track_recurs": 8, "www": 8, "apl": 8, "jhu": 8, "edu": 8, "hall": 8, "ai": 8, "program": 8, "html": 8, "retrac": 8, "nageshwara": 8, "rao": 8, "vipin": 8, "kumar": 8, "k": 8, "ramesh": 8, "parallel": 8, "januari": 8, "1987": 8, "ftp": 8, "c": 8, "utexa": 8, "snapshot": 8, "hourli": 8, "pub": 8, "lab": 8, "tech": 8, "report": 8, "ut": 8, "tr": 8, "87": 8, "46": 8, "pdf": 8, "javascript": 8, "gerard": 8, "meier": 8, "gerardmei": 8, "cutoff": 8, "kwarg": 8, "brad": 8, "beatti": 8, "18": 8, "wikipedia": 8, "nice": 8, "about": 8, "en": 8, "org": 8, "wiki": 8, "minimum_spanning_tre": 8, "yield": 8}, "objects": {"": [[6, 0, 0, "-", "pathfinding3d"]], "pathfinding3d": [[7, 0, 0, "-", "core"], [8, 0, 0, "-", "finder"]], "pathfinding3d.core": [[7, 0, 0, "-", "diagonal_movement"], [7, 0, 0, "-", "grid"], [7, 0, 0, "-", "heap"], [7, 0, 0, "-", "heuristic"], [7, 0, 0, "-", "node"], [7, 0, 0, "-", "util"], [7, 0, 0, "-", "world"]], "pathfinding3d.core.diagonal_movement": [[7, 1, 1, "", "DiagonalMovement"]], "pathfinding3d.core.diagonal_movement.DiagonalMovement": [[7, 2, 1, "", "always"], [7, 2, 1, "", "if_at_most_one_obstacle"], [7, 2, 1, "", "never"], [7, 2, 1, "", "only_when_no_obstacle"]], "pathfinding3d.core.grid": [[7, 1, 1, "", "Grid"], [7, 4, 1, "", "build_nodes"]], "pathfinding3d.core.grid.Grid": [[7, 3, 1, "", "__init__"], [7, 3, 1, "", "_calc_cost"], [7, 3, 1, "", "_validate_dimensions"], [7, 3, 1, "", "calc_cost"], [7, 3, 1, "", "cleanup"], [7, 3, 1, "", "inside"], [7, 3, 1, "", "is_valid_grid"], [7, 3, 1, "", "neighbors"], [7, 3, 1, "", "node"], [7, 3, 1, "", "walkable"]], "pathfinding3d.core.heap": [[7, 1, 1, "", "SimpleHeap"]], "pathfinding3d.core.heap.SimpleHeap": [[7, 3, 1, "", "__init__"], [7, 3, 1, "", "_determine_node_function"], [7, 3, 1, "", "_determine_node_retrieval_function"], [7, 3, 1, "", "pop_node"], [7, 3, 1, "", "push_node"], [7, 3, 1, "", "remove_node"]], "pathfinding3d.core.heuristic": [[7, 4, 1, "", "chebyshev"], [7, 4, 1, "", "euclidean"], [7, 4, 1, "", "manhattan"], [7, 4, 1, "", "null"], [7, 4, 1, "", "octile"]], "pathfinding3d.core.node": [[7, 1, 1, "", "GridNode"], [7, 1, 1, "", "Node"]], "pathfinding3d.core.node.GridNode": [[7, 3, 1, "", "__init__"], [7, 3, 1, "", "cleanup"], [7, 2, 1, "", "closed"], [7, 3, 1, "", "connect"], [7, 2, 1, "id14", "connections"], [7, 2, 1, "", "f"], [7, 2, 1, "", "g"], [7, 2, 1, "id13", "grid_id"], [7, 2, 1, "", "h"], [7, 2, 1, "", "opened"], [7, 2, 1, "", "parent"], [7, 2, 1, "", "retain_count"], [7, 2, 1, "", "tested"], [7, 2, 1, "id11", "walkable"], [7, 2, 1, "id12", "weight"], [7, 2, 1, "id8", "x"], [7, 2, 1, "id9", "y"], [7, 2, 1, "id10", "z"]], "pathfinding3d.core.node.Node": [[7, 3, 1, "", "__init__"], [7, 3, 1, "", "cleanup"], [7, 2, 1, "id4", "closed"], [7, 2, 1, "id2", "f"], [7, 2, 1, "id1", "g"], [7, 2, 1, "id0", "h"], [7, 2, 1, "id3", "opened"], [7, 2, 1, "id5", "parent"], [7, 2, 1, "id6", "retain_count"], [7, 2, 1, "id7", "tested"]], "pathfinding3d.core.util": [[7, 4, 1, "", "backtrace"], [7, 4, 1, "", "bi_backtrace"], [7, 4, 1, "", "bresenham"], [7, 4, 1, "", "expand_path"], [7, 4, 1, "", "line_of_sight"], [7, 4, 1, "", "raytrace"], [7, 4, 1, "", "smoothen_path"]], "pathfinding3d.core.world": [[7, 1, 1, "", "World"]], "pathfinding3d.core.world.World": [[7, 3, 1, "", "__init__"], [7, 3, 1, "", "calc_cost"], [7, 3, 1, "", "cleanup"], [7, 3, 1, "", "neighbors"]], "pathfinding3d.finder": [[8, 0, 0, "-", "a_star"], [8, 0, 0, "-", "best_first"], [8, 0, 0, "-", "bi_a_star"], [8, 0, 0, "-", "breadth_first"], [8, 0, 0, "-", "dijkstra"], [8, 0, 0, "-", "finder"], [8, 0, 0, "-", "ida_star"], [8, 0, 0, "-", "msp"]], "pathfinding3d.finder.a_star": [[8, 1, 1, "", "AStarFinder"]], "pathfinding3d.finder.a_star.AStarFinder": [[8, 3, 1, "", "__init__"], [8, 3, 1, "", "apply_heuristic"], [8, 3, 1, "", "check_neighbors"], [8, 3, 1, "", "find_neighbors"], [8, 3, 1, "", "find_path"], [8, 3, 1, "", "keep_running"], [8, 3, 1, "", "process_node"]], "pathfinding3d.finder.best_first": [[8, 1, 1, "", "BestFirst"]], "pathfinding3d.finder.best_first.BestFirst": [[8, 3, 1, "", "__init__"], [8, 3, 1, "", "apply_heuristic"], [8, 3, 1, "", "check_neighbors"], [8, 3, 1, "", "find_neighbors"], [8, 3, 1, "", "find_path"], [8, 3, 1, "", "keep_running"], [8, 3, 1, "", "process_node"]], "pathfinding3d.finder.bi_a_star": [[8, 1, 1, "", "BiAStarFinder"]], "pathfinding3d.finder.bi_a_star.BiAStarFinder": [[8, 3, 1, "", "__init__"], [8, 3, 1, "", "apply_heuristic"], [8, 3, 1, "", "check_neighbors"], [8, 3, 1, "", "find_neighbors"], [8, 3, 1, "", "find_path"], [8, 3, 1, "", "keep_running"], [8, 3, 1, "", "process_node"]], "pathfinding3d.finder.breadth_first": [[8, 1, 1, "", "BreadthFirstFinder"]], "pathfinding3d.finder.breadth_first.BreadthFirstFinder": [[8, 3, 1, "", "__init__"], [8, 3, 1, "", "apply_heuristic"], [8, 3, 1, "", "check_neighbors"], [8, 3, 1, "", "find_neighbors"], [8, 3, 1, "", "find_path"], [8, 3, 1, "", "keep_running"], [8, 3, 1, "", "process_node"]], "pathfinding3d.finder.dijkstra": [[8, 1, 1, "", "DijkstraFinder"]], "pathfinding3d.finder.dijkstra.DijkstraFinder": [[8, 3, 1, "", "__init__"], [8, 3, 1, "", "apply_heuristic"], [8, 3, 1, "", "check_neighbors"], [8, 3, 1, "", "find_neighbors"], [8, 3, 1, "", "find_path"], [8, 3, 1, "", "keep_running"], [8, 3, 1, "", "process_node"]], "pathfinding3d.finder.finder": [[8, 5, 1, "", "ExecutionRunsException"], [8, 5, 1, "", "ExecutionTimeException"], [8, 1, 1, "", "Finder"]], "pathfinding3d.finder.finder.ExecutionRunsException": [[8, 3, 1, "", "__init__"], [8, 2, 1, "", "args"], [8, 3, 1, "", "with_traceback"]], "pathfinding3d.finder.finder.ExecutionTimeException": [[8, 3, 1, "", "__init__"], [8, 2, 1, "", "args"], [8, 3, 1, "", "with_traceback"]], "pathfinding3d.finder.finder.Finder": [[8, 3, 1, "", "__init__"], [8, 3, 1, "", "apply_heuristic"], [8, 3, 1, "", "check_neighbors"], [8, 3, 1, "", "find_neighbors"], [8, 3, 1, "", "find_path"], [8, 3, 1, "", "keep_running"], [8, 3, 1, "", "process_node"]], "pathfinding3d.finder.ida_star": [[8, 1, 1, "", "IDAStarFinder"]], "pathfinding3d.finder.ida_star.IDAStarFinder": [[8, 3, 1, "", "__init__"], [8, 3, 1, "", "apply_heuristic"], [8, 3, 1, "", "check_neighbors"], [8, 3, 1, "", "find_neighbors"], [8, 3, 1, "", "find_path"], [8, 3, 1, "", "keep_running"], [8, 3, 1, "", "process_node"], [8, 3, 1, "", "search"]], "pathfinding3d.finder.msp": [[8, 1, 1, "", "MinimumSpanningTree"]], "pathfinding3d.finder.msp.MinimumSpanningTree": [[8, 3, 1, "", "__init__"], [8, 3, 1, "", "apply_heuristic"], [8, 3, 1, "", "check_neighbors"], [8, 3, 1, "", "find_neighbors"], [8, 3, 1, "", "find_path"], [8, 3, 1, "", "itertree"], [8, 3, 1, "", "keep_running"], [8, 3, 1, "", "process_node"], [8, 3, 1, "", "tree"]]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:attribute", "3": "py:method", "4": "py:function", "5": "py:exception"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "method", "Python method"], "4": ["py", "function", "Python function"], "5": ["py", "exception", "Python exception"]}, "titleterms": {"version": 0, "histori": 0, "0": 0, "6": 0, "1": 0, "5": 0, "4": 0, "3": 0, "2": 0, "instal": 1, "requir": 1, "pypi": 1, "For": 1, "develop": 1, "purpos": 1, "pleas": 1, "us": 1, "edit": 1, "mode": 1, "pathfinding3d": [2, 4, 5, 6, 7, 8], "introduct": 2, "exampl": 3, "basic": 3, "usag": 3, "step": 3, "portal": 3, "bridg": 3, "toi": 3, "connect": 3, "two": 3, "build": 3, "storei": 3, "visual": 3, "path": 3, "prerequisit": 3, "open3d": 3, "ani": 3, "angl": 3, "movement": 3, "welcom": 4, "": 4, "document": 4, "content": 4, "indic": 4, "tabl": 4, "packag": [6, 7, 8], "subpackag": 6, "core": 7, "submodul": [7, 8], "diagonal_mov": 7, "modul": [7, 8], "grid": 7, "heap": 7, "heurist": 7, "node": 7, "util": 7, "world": 7, "finder": 8, "a_star": 8, "best_first": 8, "bi_a_star": 8, "breadth_first": 8, "dijkstra": 8, "ida_star": 8, "msp": 8}, "envversion": {"sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.todo": 2, "sphinx.ext.viewcode": 1, "sphinx": 58}, "alltitles": {"Version History": [[0, "version-history"]], "0.6.1": [[0, "id1"]], "0.6.0": [[0, "id2"]], "0.5.1": [[0, "id3"]], "0.5.0": [[0, "id4"]], "0.4.1": [[0, "id5"]], "0.4.0": [[0, "id6"]], "0.3.1": [[0, "id7"]], "0.3": [[0, "id8"]], "0.2": [[0, "id9"]], "0.1": [[0, "id10"]], "Installation": [[1, "installation"]], "Requirements": [[1, "requirements"]], "PyPI": [[1, "pypi"]], "For development purposes please use editable mode": [[1, "for-development-purposes-please-use-editable-mode"]], "Pathfinding3D": [[2, "pathfinding3d"]], "Introduction": [[2, "introduction"]], "Examples": [[3, "examples"]], "Basic usage": [[3, "basic-usage"]], "Steps/Portals/Bridges": [[3, "steps-portals-bridges"]], "Toy Example: Connecting Two Building Storeys with a Bridge": [[3, "toy-example-connecting-two-building-storeys-with-a-bridge"]], "Visualizing the Path": [[3, "visualizing-the-path"]], "Prerequisites": [[3, "prerequisites"]], "Example with Open3D": [[3, "example-with-open3d"]], "Example with any angle of movement": [[3, "example-with-any-angle-of-movement"]], "Welcome to pathfinding3d\u2019s documentation!": [[4, "welcome-to-pathfinding3d-s-documentation"]], "Contents:": [[4, null]], "Indices and tables": [[4, "indices-and-tables"]], "pathfinding3d": [[5, "pathfinding3d"]], "pathfinding3d package": [[6, "module-pathfinding3d"]], "Subpackages": [[6, "subpackages"]], "pathfinding3d.core package": [[7, "module-pathfinding3d.core"]], "Submodules": [[7, "submodules"], [8, "submodules"]], "pathfinding3d.core.diagonal_movement module": [[7, "module-pathfinding3d.core.diagonal_movement"]], "pathfinding3d.core.grid module": [[7, "module-pathfinding3d.core.grid"]], "pathfinding3d.core.heap module": [[7, "module-pathfinding3d.core.heap"]], "pathfinding3d.core.heuristic module": [[7, "module-pathfinding3d.core.heuristic"]], "pathfinding3d.core.node module": [[7, "module-pathfinding3d.core.node"]], "pathfinding3d.core.util module": [[7, "module-pathfinding3d.core.util"]], "pathfinding3d.core.world module": [[7, "module-pathfinding3d.core.world"]], "pathfinding3d.finder package": [[8, "module-pathfinding3d.finder"]], "pathfinding3d.finder.a_star module": [[8, "module-pathfinding3d.finder.a_star"]], "pathfinding3d.finder.best_first module": [[8, "module-pathfinding3d.finder.best_first"]], "pathfinding3d.finder.bi_a_star module": [[8, "module-pathfinding3d.finder.bi_a_star"]], "pathfinding3d.finder.breadth_first module": [[8, "module-pathfinding3d.finder.breadth_first"]], "pathfinding3d.finder.dijkstra module": [[8, "module-pathfinding3d.finder.dijkstra"]], "pathfinding3d.finder.finder module": [[8, "module-pathfinding3d.finder.finder"]], "pathfinding3d.finder.ida_star module": [[8, "module-pathfinding3d.finder.ida_star"]], "pathfinding3d.finder.msp module": [[8, "module-pathfinding3d.finder.msp"]]}, "indexentries": {"module": [[6, "module-pathfinding3d"], [7, "module-pathfinding3d.core"], [7, "module-pathfinding3d.core.diagonal_movement"], [7, "module-pathfinding3d.core.grid"], [7, "module-pathfinding3d.core.heap"], [7, "module-pathfinding3d.core.heuristic"], [7, "module-pathfinding3d.core.node"], [7, "module-pathfinding3d.core.util"], [7, "module-pathfinding3d.core.world"], [8, "module-pathfinding3d.finder"], [8, "module-pathfinding3d.finder.a_star"], [8, "module-pathfinding3d.finder.best_first"], [8, "module-pathfinding3d.finder.bi_a_star"], [8, "module-pathfinding3d.finder.breadth_first"], [8, "module-pathfinding3d.finder.dijkstra"], [8, "module-pathfinding3d.finder.finder"], [8, "module-pathfinding3d.finder.ida_star"], [8, "module-pathfinding3d.finder.msp"]], "pathfinding3d": [[6, "module-pathfinding3d"]], "diagonalmovement (class in pathfinding3d.core.diagonal_movement)": [[7, "pathfinding3d.core.diagonal_movement.DiagonalMovement"]], "grid (class in pathfinding3d.core.grid)": [[7, "pathfinding3d.core.grid.Grid"]], "gridnode (class in pathfinding3d.core.node)": [[7, "pathfinding3d.core.node.GridNode"]], "node (class in pathfinding3d.core.node)": [[7, "pathfinding3d.core.node.Node"]], "simpleheap (class in pathfinding3d.core.heap)": [[7, "pathfinding3d.core.heap.SimpleHeap"]], "world (class in pathfinding3d.core.world)": [[7, "pathfinding3d.core.world.World"]], "__init__() (pathfinding3d.core.grid.grid method)": [[7, "pathfinding3d.core.grid.Grid.__init__"]], "__init__() (pathfinding3d.core.heap.simpleheap method)": [[7, "pathfinding3d.core.heap.SimpleHeap.__init__"]], "__init__() (pathfinding3d.core.node.gridnode method)": [[7, "pathfinding3d.core.node.GridNode.__init__"]], "__init__() (pathfinding3d.core.node.node method)": [[7, "pathfinding3d.core.node.Node.__init__"]], "__init__() (pathfinding3d.core.world.world method)": [[7, "pathfinding3d.core.world.World.__init__"]], "_calc_cost() (pathfinding3d.core.grid.grid method)": [[7, "pathfinding3d.core.grid.Grid._calc_cost"]], "_determine_node_function() (pathfinding3d.core.heap.simpleheap method)": [[7, "pathfinding3d.core.heap.SimpleHeap._determine_node_function"]], "_determine_node_retrieval_function() (pathfinding3d.core.heap.simpleheap method)": [[7, "pathfinding3d.core.heap.SimpleHeap._determine_node_retrieval_function"]], "_validate_dimensions() (pathfinding3d.core.grid.grid method)": [[7, "pathfinding3d.core.grid.Grid._validate_dimensions"]], "always (pathfinding3d.core.diagonal_movement.diagonalmovement attribute)": [[7, "pathfinding3d.core.diagonal_movement.DiagonalMovement.always"]], "backtrace() (in module pathfinding3d.core.util)": [[7, "pathfinding3d.core.util.backtrace"]], "bi_backtrace() (in module pathfinding3d.core.util)": [[7, "pathfinding3d.core.util.bi_backtrace"]], "bresenham() (in module pathfinding3d.core.util)": [[7, "pathfinding3d.core.util.bresenham"]], "build_nodes() (in module pathfinding3d.core.grid)": [[7, "pathfinding3d.core.grid.build_nodes"]], "calc_cost() (pathfinding3d.core.grid.grid method)": [[7, "pathfinding3d.core.grid.Grid.calc_cost"]], "calc_cost() (pathfinding3d.core.world.world method)": [[7, "pathfinding3d.core.world.World.calc_cost"]], "chebyshev() (in module pathfinding3d.core.heuristic)": [[7, "pathfinding3d.core.heuristic.chebyshev"]], "cleanup() (pathfinding3d.core.grid.grid method)": [[7, "pathfinding3d.core.grid.Grid.cleanup"]], "cleanup() (pathfinding3d.core.node.gridnode method)": [[7, "pathfinding3d.core.node.GridNode.cleanup"]], "cleanup() (pathfinding3d.core.node.node method)": [[7, "pathfinding3d.core.node.Node.cleanup"]], "cleanup() (pathfinding3d.core.world.world method)": [[7, "pathfinding3d.core.world.World.cleanup"]], "closed (pathfinding3d.core.node.gridnode attribute)": [[7, "pathfinding3d.core.node.GridNode.closed"]], "closed (pathfinding3d.core.node.node attribute)": [[7, "id4"], [7, "pathfinding3d.core.node.Node.closed"]], "connect() (pathfinding3d.core.node.gridnode method)": [[7, "pathfinding3d.core.node.GridNode.connect"]], "connections (pathfinding3d.core.node.gridnode attribute)": [[7, "id14"], [7, "pathfinding3d.core.node.GridNode.connections"]], "euclidean() (in module pathfinding3d.core.heuristic)": [[7, "pathfinding3d.core.heuristic.euclidean"]], "expand_path() (in module pathfinding3d.core.util)": [[7, "pathfinding3d.core.util.expand_path"]], "f (pathfinding3d.core.node.gridnode attribute)": [[7, "pathfinding3d.core.node.GridNode.f"]], "f (pathfinding3d.core.node.node attribute)": [[7, "id2"], [7, "pathfinding3d.core.node.Node.f"]], "g (pathfinding3d.core.node.gridnode attribute)": [[7, "pathfinding3d.core.node.GridNode.g"]], "g (pathfinding3d.core.node.node attribute)": [[7, "id1"], [7, "pathfinding3d.core.node.Node.g"]], "grid_id (pathfinding3d.core.node.gridnode attribute)": [[7, "id13"], [7, "pathfinding3d.core.node.GridNode.grid_id"]], "h (pathfinding3d.core.node.gridnode attribute)": [[7, "pathfinding3d.core.node.GridNode.h"]], "h (pathfinding3d.core.node.node attribute)": [[7, "id0"], [7, "pathfinding3d.core.node.Node.h"]], "if_at_most_one_obstacle (pathfinding3d.core.diagonal_movement.diagonalmovement attribute)": [[7, "pathfinding3d.core.diagonal_movement.DiagonalMovement.if_at_most_one_obstacle"]], "inside() (pathfinding3d.core.grid.grid method)": [[7, "pathfinding3d.core.grid.Grid.inside"]], "is_valid_grid() (pathfinding3d.core.grid.grid method)": [[7, "pathfinding3d.core.grid.Grid.is_valid_grid"]], "line_of_sight() (in module pathfinding3d.core.util)": [[7, "pathfinding3d.core.util.line_of_sight"]], "manhattan() (in module pathfinding3d.core.heuristic)": [[7, "pathfinding3d.core.heuristic.manhattan"]], "neighbors() (pathfinding3d.core.grid.grid method)": [[7, "pathfinding3d.core.grid.Grid.neighbors"]], "neighbors() (pathfinding3d.core.world.world method)": [[7, "pathfinding3d.core.world.World.neighbors"]], "never (pathfinding3d.core.diagonal_movement.diagonalmovement attribute)": [[7, "pathfinding3d.core.diagonal_movement.DiagonalMovement.never"]], "node() (pathfinding3d.core.grid.grid method)": [[7, "pathfinding3d.core.grid.Grid.node"]], "null() (in module pathfinding3d.core.heuristic)": [[7, "pathfinding3d.core.heuristic.null"]], "octile() (in module pathfinding3d.core.heuristic)": [[7, "pathfinding3d.core.heuristic.octile"]], "only_when_no_obstacle (pathfinding3d.core.diagonal_movement.diagonalmovement attribute)": [[7, "pathfinding3d.core.diagonal_movement.DiagonalMovement.only_when_no_obstacle"]], "opened (pathfinding3d.core.node.gridnode attribute)": [[7, "pathfinding3d.core.node.GridNode.opened"]], "opened (pathfinding3d.core.node.node attribute)": [[7, "id3"], [7, "pathfinding3d.core.node.Node.opened"]], "parent (pathfinding3d.core.node.gridnode attribute)": [[7, "pathfinding3d.core.node.GridNode.parent"]], "parent (pathfinding3d.core.node.node attribute)": [[7, "id5"], [7, "pathfinding3d.core.node.Node.parent"]], "pathfinding3d.core": [[7, "module-pathfinding3d.core"]], "pathfinding3d.core.diagonal_movement": [[7, "module-pathfinding3d.core.diagonal_movement"]], "pathfinding3d.core.grid": [[7, "module-pathfinding3d.core.grid"]], "pathfinding3d.core.heap": [[7, "module-pathfinding3d.core.heap"]], "pathfinding3d.core.heuristic": [[7, "module-pathfinding3d.core.heuristic"]], "pathfinding3d.core.node": [[7, "module-pathfinding3d.core.node"]], "pathfinding3d.core.util": [[7, "module-pathfinding3d.core.util"]], "pathfinding3d.core.world": [[7, "module-pathfinding3d.core.world"]], "pop_node() (pathfinding3d.core.heap.simpleheap method)": [[7, "pathfinding3d.core.heap.SimpleHeap.pop_node"]], "push_node() (pathfinding3d.core.heap.simpleheap method)": [[7, "pathfinding3d.core.heap.SimpleHeap.push_node"]], "raytrace() (in module pathfinding3d.core.util)": [[7, "pathfinding3d.core.util.raytrace"]], "remove_node() (pathfinding3d.core.heap.simpleheap method)": [[7, "pathfinding3d.core.heap.SimpleHeap.remove_node"]], "retain_count (pathfinding3d.core.node.gridnode attribute)": [[7, "pathfinding3d.core.node.GridNode.retain_count"]], "retain_count (pathfinding3d.core.node.node attribute)": [[7, "id6"], [7, "pathfinding3d.core.node.Node.retain_count"]], "smoothen_path() (in module pathfinding3d.core.util)": [[7, "pathfinding3d.core.util.smoothen_path"]], "tested (pathfinding3d.core.node.gridnode attribute)": [[7, "pathfinding3d.core.node.GridNode.tested"]], "tested (pathfinding3d.core.node.node attribute)": [[7, "id7"], [7, "pathfinding3d.core.node.Node.tested"]], "walkable (pathfinding3d.core.node.gridnode attribute)": [[7, "id11"], [7, "pathfinding3d.core.node.GridNode.walkable"]], "walkable() (pathfinding3d.core.grid.grid method)": [[7, "pathfinding3d.core.grid.Grid.walkable"]], "weight (pathfinding3d.core.node.gridnode attribute)": [[7, "id12"], [7, "pathfinding3d.core.node.GridNode.weight"]], "x (pathfinding3d.core.node.gridnode attribute)": [[7, "id8"], [7, "pathfinding3d.core.node.GridNode.x"]], "y (pathfinding3d.core.node.gridnode attribute)": [[7, "id9"], [7, "pathfinding3d.core.node.GridNode.y"]], "z (pathfinding3d.core.node.gridnode attribute)": [[7, "id10"], [7, "pathfinding3d.core.node.GridNode.z"]], "astarfinder (class in pathfinding3d.finder.a_star)": [[8, "pathfinding3d.finder.a_star.AStarFinder"]], "bestfirst (class in pathfinding3d.finder.best_first)": [[8, "pathfinding3d.finder.best_first.BestFirst"]], "biastarfinder (class in pathfinding3d.finder.bi_a_star)": [[8, "pathfinding3d.finder.bi_a_star.BiAStarFinder"]], "breadthfirstfinder (class in pathfinding3d.finder.breadth_first)": [[8, "pathfinding3d.finder.breadth_first.BreadthFirstFinder"]], "dijkstrafinder (class in pathfinding3d.finder.dijkstra)": [[8, "pathfinding3d.finder.dijkstra.DijkstraFinder"]], "executionrunsexception": [[8, "pathfinding3d.finder.finder.ExecutionRunsException"]], "executiontimeexception": [[8, "pathfinding3d.finder.finder.ExecutionTimeException"]], "finder (class in pathfinding3d.finder.finder)": [[8, "pathfinding3d.finder.finder.Finder"]], "idastarfinder (class in pathfinding3d.finder.ida_star)": [[8, "pathfinding3d.finder.ida_star.IDAStarFinder"]], "minimumspanningtree (class in pathfinding3d.finder.msp)": [[8, "pathfinding3d.finder.msp.MinimumSpanningTree"]], "__init__() (pathfinding3d.finder.a_star.astarfinder method)": [[8, "pathfinding3d.finder.a_star.AStarFinder.__init__"]], "__init__() (pathfinding3d.finder.best_first.bestfirst method)": [[8, "pathfinding3d.finder.best_first.BestFirst.__init__"]], "__init__() (pathfinding3d.finder.bi_a_star.biastarfinder method)": [[8, "pathfinding3d.finder.bi_a_star.BiAStarFinder.__init__"]], "__init__() (pathfinding3d.finder.breadth_first.breadthfirstfinder method)": [[8, "pathfinding3d.finder.breadth_first.BreadthFirstFinder.__init__"]], "__init__() (pathfinding3d.finder.dijkstra.dijkstrafinder method)": [[8, "pathfinding3d.finder.dijkstra.DijkstraFinder.__init__"]], "__init__() (pathfinding3d.finder.finder.executionrunsexception method)": [[8, "pathfinding3d.finder.finder.ExecutionRunsException.__init__"]], "__init__() (pathfinding3d.finder.finder.executiontimeexception method)": [[8, "pathfinding3d.finder.finder.ExecutionTimeException.__init__"]], "__init__() (pathfinding3d.finder.finder.finder method)": [[8, "pathfinding3d.finder.finder.Finder.__init__"]], "__init__() (pathfinding3d.finder.ida_star.idastarfinder method)": [[8, "pathfinding3d.finder.ida_star.IDAStarFinder.__init__"]], "__init__() (pathfinding3d.finder.msp.minimumspanningtree method)": [[8, "pathfinding3d.finder.msp.MinimumSpanningTree.__init__"]], "apply_heuristic() (pathfinding3d.finder.a_star.astarfinder method)": [[8, "pathfinding3d.finder.a_star.AStarFinder.apply_heuristic"]], "apply_heuristic() (pathfinding3d.finder.best_first.bestfirst method)": [[8, "pathfinding3d.finder.best_first.BestFirst.apply_heuristic"]], "apply_heuristic() (pathfinding3d.finder.bi_a_star.biastarfinder method)": [[8, "pathfinding3d.finder.bi_a_star.BiAStarFinder.apply_heuristic"]], "apply_heuristic() (pathfinding3d.finder.breadth_first.breadthfirstfinder method)": [[8, "pathfinding3d.finder.breadth_first.BreadthFirstFinder.apply_heuristic"]], "apply_heuristic() (pathfinding3d.finder.dijkstra.dijkstrafinder method)": [[8, "pathfinding3d.finder.dijkstra.DijkstraFinder.apply_heuristic"]], "apply_heuristic() (pathfinding3d.finder.finder.finder method)": [[8, "pathfinding3d.finder.finder.Finder.apply_heuristic"]], "apply_heuristic() (pathfinding3d.finder.ida_star.idastarfinder method)": [[8, "pathfinding3d.finder.ida_star.IDAStarFinder.apply_heuristic"]], "apply_heuristic() (pathfinding3d.finder.msp.minimumspanningtree method)": [[8, "pathfinding3d.finder.msp.MinimumSpanningTree.apply_heuristic"]], "args (pathfinding3d.finder.finder.executionrunsexception attribute)": [[8, "pathfinding3d.finder.finder.ExecutionRunsException.args"]], "args (pathfinding3d.finder.finder.executiontimeexception attribute)": [[8, "pathfinding3d.finder.finder.ExecutionTimeException.args"]], "check_neighbors() (pathfinding3d.finder.a_star.astarfinder method)": [[8, "pathfinding3d.finder.a_star.AStarFinder.check_neighbors"]], "check_neighbors() (pathfinding3d.finder.best_first.bestfirst method)": [[8, "pathfinding3d.finder.best_first.BestFirst.check_neighbors"]], "check_neighbors() (pathfinding3d.finder.bi_a_star.biastarfinder method)": [[8, "pathfinding3d.finder.bi_a_star.BiAStarFinder.check_neighbors"]], "check_neighbors() (pathfinding3d.finder.breadth_first.breadthfirstfinder method)": [[8, "pathfinding3d.finder.breadth_first.BreadthFirstFinder.check_neighbors"]], "check_neighbors() (pathfinding3d.finder.dijkstra.dijkstrafinder method)": [[8, "pathfinding3d.finder.dijkstra.DijkstraFinder.check_neighbors"]], "check_neighbors() (pathfinding3d.finder.finder.finder method)": [[8, "pathfinding3d.finder.finder.Finder.check_neighbors"]], "check_neighbors() (pathfinding3d.finder.ida_star.idastarfinder method)": [[8, "pathfinding3d.finder.ida_star.IDAStarFinder.check_neighbors"]], "check_neighbors() (pathfinding3d.finder.msp.minimumspanningtree method)": [[8, "pathfinding3d.finder.msp.MinimumSpanningTree.check_neighbors"]], "find_neighbors() (pathfinding3d.finder.a_star.astarfinder method)": [[8, "pathfinding3d.finder.a_star.AStarFinder.find_neighbors"]], "find_neighbors() (pathfinding3d.finder.best_first.bestfirst method)": [[8, "pathfinding3d.finder.best_first.BestFirst.find_neighbors"]], "find_neighbors() (pathfinding3d.finder.bi_a_star.biastarfinder method)": [[8, "pathfinding3d.finder.bi_a_star.BiAStarFinder.find_neighbors"]], "find_neighbors() (pathfinding3d.finder.breadth_first.breadthfirstfinder method)": [[8, "pathfinding3d.finder.breadth_first.BreadthFirstFinder.find_neighbors"]], "find_neighbors() (pathfinding3d.finder.dijkstra.dijkstrafinder method)": [[8, "pathfinding3d.finder.dijkstra.DijkstraFinder.find_neighbors"]], "find_neighbors() (pathfinding3d.finder.finder.finder method)": [[8, "pathfinding3d.finder.finder.Finder.find_neighbors"]], "find_neighbors() (pathfinding3d.finder.ida_star.idastarfinder method)": [[8, "pathfinding3d.finder.ida_star.IDAStarFinder.find_neighbors"]], "find_neighbors() (pathfinding3d.finder.msp.minimumspanningtree method)": [[8, "pathfinding3d.finder.msp.MinimumSpanningTree.find_neighbors"]], "find_path() (pathfinding3d.finder.a_star.astarfinder method)": [[8, "pathfinding3d.finder.a_star.AStarFinder.find_path"]], "find_path() (pathfinding3d.finder.best_first.bestfirst method)": [[8, "pathfinding3d.finder.best_first.BestFirst.find_path"]], "find_path() (pathfinding3d.finder.bi_a_star.biastarfinder method)": [[8, "pathfinding3d.finder.bi_a_star.BiAStarFinder.find_path"]], "find_path() (pathfinding3d.finder.breadth_first.breadthfirstfinder method)": [[8, "pathfinding3d.finder.breadth_first.BreadthFirstFinder.find_path"]], "find_path() (pathfinding3d.finder.dijkstra.dijkstrafinder method)": [[8, "pathfinding3d.finder.dijkstra.DijkstraFinder.find_path"]], "find_path() (pathfinding3d.finder.finder.finder method)": [[8, "pathfinding3d.finder.finder.Finder.find_path"]], "find_path() (pathfinding3d.finder.ida_star.idastarfinder method)": [[8, "pathfinding3d.finder.ida_star.IDAStarFinder.find_path"]], "find_path() (pathfinding3d.finder.msp.minimumspanningtree method)": [[8, "pathfinding3d.finder.msp.MinimumSpanningTree.find_path"]], "itertree() (pathfinding3d.finder.msp.minimumspanningtree method)": [[8, "pathfinding3d.finder.msp.MinimumSpanningTree.itertree"]], "keep_running() (pathfinding3d.finder.a_star.astarfinder method)": [[8, "pathfinding3d.finder.a_star.AStarFinder.keep_running"]], "keep_running() (pathfinding3d.finder.best_first.bestfirst method)": [[8, "pathfinding3d.finder.best_first.BestFirst.keep_running"]], "keep_running() (pathfinding3d.finder.bi_a_star.biastarfinder method)": [[8, "pathfinding3d.finder.bi_a_star.BiAStarFinder.keep_running"]], "keep_running() (pathfinding3d.finder.breadth_first.breadthfirstfinder method)": [[8, "pathfinding3d.finder.breadth_first.BreadthFirstFinder.keep_running"]], "keep_running() (pathfinding3d.finder.dijkstra.dijkstrafinder method)": [[8, "pathfinding3d.finder.dijkstra.DijkstraFinder.keep_running"]], "keep_running() (pathfinding3d.finder.finder.finder method)": [[8, "pathfinding3d.finder.finder.Finder.keep_running"]], "keep_running() (pathfinding3d.finder.ida_star.idastarfinder method)": [[8, "pathfinding3d.finder.ida_star.IDAStarFinder.keep_running"]], "keep_running() (pathfinding3d.finder.msp.minimumspanningtree method)": [[8, "pathfinding3d.finder.msp.MinimumSpanningTree.keep_running"]], "pathfinding3d.finder": [[8, "module-pathfinding3d.finder"]], "pathfinding3d.finder.a_star": [[8, "module-pathfinding3d.finder.a_star"]], "pathfinding3d.finder.best_first": [[8, "module-pathfinding3d.finder.best_first"]], "pathfinding3d.finder.bi_a_star": [[8, "module-pathfinding3d.finder.bi_a_star"]], "pathfinding3d.finder.breadth_first": [[8, "module-pathfinding3d.finder.breadth_first"]], "pathfinding3d.finder.dijkstra": [[8, "module-pathfinding3d.finder.dijkstra"]], "pathfinding3d.finder.finder": [[8, "module-pathfinding3d.finder.finder"]], "pathfinding3d.finder.ida_star": [[8, "module-pathfinding3d.finder.ida_star"]], "pathfinding3d.finder.msp": [[8, "module-pathfinding3d.finder.msp"]], "process_node() (pathfinding3d.finder.a_star.astarfinder method)": [[8, "pathfinding3d.finder.a_star.AStarFinder.process_node"]], "process_node() (pathfinding3d.finder.best_first.bestfirst method)": [[8, "pathfinding3d.finder.best_first.BestFirst.process_node"]], "process_node() (pathfinding3d.finder.bi_a_star.biastarfinder method)": [[8, "pathfinding3d.finder.bi_a_star.BiAStarFinder.process_node"]], "process_node() (pathfinding3d.finder.breadth_first.breadthfirstfinder method)": [[8, "pathfinding3d.finder.breadth_first.BreadthFirstFinder.process_node"]], "process_node() (pathfinding3d.finder.dijkstra.dijkstrafinder method)": [[8, "pathfinding3d.finder.dijkstra.DijkstraFinder.process_node"]], "process_node() (pathfinding3d.finder.finder.finder method)": [[8, "pathfinding3d.finder.finder.Finder.process_node"]], "process_node() (pathfinding3d.finder.ida_star.idastarfinder method)": [[8, "pathfinding3d.finder.ida_star.IDAStarFinder.process_node"]], "process_node() (pathfinding3d.finder.msp.minimumspanningtree method)": [[8, "pathfinding3d.finder.msp.MinimumSpanningTree.process_node"]], "search() (pathfinding3d.finder.ida_star.idastarfinder method)": [[8, "pathfinding3d.finder.ida_star.IDAStarFinder.search"]], "tree() (pathfinding3d.finder.msp.minimumspanningtree method)": [[8, "pathfinding3d.finder.msp.MinimumSpanningTree.tree"]], "with_traceback() (pathfinding3d.finder.finder.executionrunsexception method)": [[8, "pathfinding3d.finder.finder.ExecutionRunsException.with_traceback"]], "with_traceback() (pathfinding3d.finder.finder.executiontimeexception method)": [[8, "pathfinding3d.finder.finder.ExecutionTimeException.with_traceback"]]}}) \ No newline at end of file +Search.setIndex({"docnames": ["CHANGELOG", "INSTALL", "INTRO", "USAGE", "index", "modules", "pathfinding3d", "pathfinding3d.core", "pathfinding3d.core.diagonal_movement", "pathfinding3d.core.grid", "pathfinding3d.core.heap", "pathfinding3d.core.heuristic", "pathfinding3d.core.node", "pathfinding3d.core.util", "pathfinding3d.core.world", "pathfinding3d.finder", "pathfinding3d.finder.a_star", "pathfinding3d.finder.best_first", "pathfinding3d.finder.bi_a_star", "pathfinding3d.finder.breadth_first", "pathfinding3d.finder.dijkstra", "pathfinding3d.finder.finder", "pathfinding3d.finder.ida_star", "pathfinding3d.finder.msp", "pathfinding3d.finder.theta_star"], "filenames": ["CHANGELOG.md", "INSTALL.md", "INTRO.md", "USAGE.md", "index.rst", "modules.rst", "pathfinding3d.rst", "pathfinding3d.core.rst", "pathfinding3d.core.diagonal_movement.rst", "pathfinding3d.core.grid.rst", "pathfinding3d.core.heap.rst", "pathfinding3d.core.heuristic.rst", "pathfinding3d.core.node.rst", "pathfinding3d.core.util.rst", "pathfinding3d.core.world.rst", "pathfinding3d.finder.rst", "pathfinding3d.finder.a_star.rst", "pathfinding3d.finder.best_first.rst", "pathfinding3d.finder.bi_a_star.rst", "pathfinding3d.finder.breadth_first.rst", "pathfinding3d.finder.dijkstra.rst", "pathfinding3d.finder.finder.rst", "pathfinding3d.finder.ida_star.rst", "pathfinding3d.finder.msp.rst", "pathfinding3d.finder.theta_star.rst"], "titles": ["Version History", "Installation", "Pathfinding3D", "Examples", "Welcome to pathfinding3d\u2019s documentation!", "pathfinding3d", "pathfinding3d package", "pathfinding3d.core package", "pathfinding3d.core.diagonal_movement module", "pathfinding3d.core.grid module", "pathfinding3d.core.heap module", "pathfinding3d.core.heuristic module", "pathfinding3d.core.node module", "pathfinding3d.core.util module", "pathfinding3d.core.world module", "pathfinding3d.finder package", "pathfinding3d.finder.a_star module", "pathfinding3d.finder.best_first module", "pathfinding3d.finder.bi_a_star module", "pathfinding3d.finder.breadth_first module", "pathfinding3d.finder.dijkstra module", "pathfinding3d.finder.finder module", "pathfinding3d.finder.ida_star module", "pathfinding3d.finder.msp module", "pathfinding3d.finder.theta_star module"], "terms": {"sphinx": 0, "document": 0, "updat": [0, 3], "fix": 0, "bug": 0, "thetastarfind": [0, 3, 6, 15, 24], "algorithm": [0, 2, 3, 9, 13, 16, 17, 18, 19, 20, 21, 22, 23, 24], "when": 0, "us": [0, 2, 3, 4, 9, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "world": [0, 3, 6, 7, 10], "connect": [0, 4, 7, 9, 12, 14], "grid": [0, 3, 6, 7, 10, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "see": [0, 3, 9, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "issu": [0, 23], "12": [0, 3], "theta": [0, 2, 3, 24], "ad": [0, 3, 10], "line": [0, 3, 13], "sight": [0, 3, 13], "minor": 0, "improv": 0, "code": [0, 3, 16, 17, 18, 19, 20, 21, 22, 23, 24], "qualiti": 0, "more": [0, 3, 13], "test": [0, 7, 12, 16, 17, 18, 19, 20, 21, 22, 23, 24], "new": [0, 3, 9, 13, 14], "diagon": [0, 3, 8, 9, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "movement": [0, 2, 4, 8, 9, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "lru": 0, "cach": 0, "heurist": [0, 2, 6, 7, 12, 16, 17, 18, 19, 20, 21, 22, 23, 24], "exampl": [0, 4], "node": [0, 3, 6, 7, 9, 10, 11, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "class": [0, 3, 8, 9, 10, 12, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "ha": [0, 3, 12, 13, 23], "addit": 0, "attribut": [0, 3, 10], "heap": [0, 6, 7], "replic": 0, "simpl": [0, 3, 10], "structur": [0, 3, 10], "inspir": [0, 10], "from": [0, 2, 3, 9, 10, 11, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "python": [0, 1, 2, 10, 23], "pathfind": [0, 2, 3, 10, 12, 23], "origin": [0, 3, 10], "author": [0, 10], "base": [0, 8, 9, 10, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "v1": 0, "7": [0, 2, 3], "initi": [0, 3, 10, 14], "have": [0, 3, 10, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "better": [0, 3], "error": 0, "messag": [0, 21], "url": 0, "point": [0, 3, 11, 12, 16, 17, 18, 19, 20, 21, 22, 23, 24], "repositori": 0, "enabl": [0, 3], "weight": [0, 2, 3, 7, 9, 12, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "biastarfind": [0, 6, 15, 18], "add": [0, 3, 16, 17, 18, 19, 20, 21, 22, 23], "type": [0, 3, 9, 10, 11, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "hint": 0, "minim": 0, "autogener": 0, "codecov": 0, "badg": 0, "workflow": 0, "number": [0, 3, 9, 12, 16, 17, 18, 19, 20, 21, 22, 23, 24], "setup": 0, "py": 0, "minimum": [0, 2, 23], "releas": 0, "3": [1, 3, 4, 8], "8": [1, 3], "higher": [1, 3], "numpi": [1, 3], "The": [1, 3, 9, 10, 12, 13, 23], "packag": [1, 4, 5], "i": [1, 2, 3, 9, 10, 11, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "avail": [1, 3], "so": [1, 3, 11, 24], "you": [1, 3], "can": [1, 3, 12, 14, 18, 19, 21, 24], "pip": [1, 3], "pathfinding3d": [1, 3], "git": 1, "clone": 1, "http": [1, 10, 22, 23], "github": [1, 3, 10, 23], "com": [1, 10, 22, 23], "harisankar95": 1, "cd": 1, "e": 1, "dev": 1, "checkout": 1, "b": 1, "branch_nam": 1, "python3": 2, "froke": 2, "brean": [2, 10, 23], "comprehens": 2, "librari": [2, 3], "design": 2, "3d": [2, 3, 9, 16, 17, 18, 19, 20, 21, 22, 23, 24], "applic": [2, 3], "current": [2, 9, 11, 16, 17, 18, 19, 20, 21, 22, 23, 24], "ar": [2, 3, 9, 10, 16, 17, 18, 19, 20, 21, 22, 23, 24], "path": [2, 4, 12, 13, 16, 17, 18, 19, 20, 21, 22, 23, 24], "finder": [2, 3, 5, 6], "bundl": 2, "thi": [2, 3, 10, 12, 14], "name": [2, 3], "A": [2, 3, 9, 10, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "versatil": 2, "most": 2, "wide": 2, "dijkstra": [2, 6, 11, 15, 21, 23], "without": 2, "best": 2, "first": [2, 3, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "bi": [2, 3, 13, 16, 17, 18, 19, 20, 21, 22, 23, 24], "direct": [2, 3, 13, 16, 17, 18, 19, 20, 21, 22, 23, 24], "effici": [2, 3], "larg": [2, 16, 17, 18, 19, 20, 21, 22, 23, 24], "graph": 2, "known": 2, "goal": [2, 12], "breadth": [2, 19], "search": [2, 4, 12, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], "bf": 2, "iter": [2, 3, 16, 17, 18, 19, 20, 21, 22, 23, 24], "deep": [2, 22], "ida": [2, 12, 16, 17, 18, 19, 20, 21, 22, 23, 24], "memori": 2, "span": [2, 23], "tree": [2, 15, 23], "msp": [2, 6, 15], "almost": 2, "smooth": [2, 3], "take": [2, 3, 10], "field": [2, 3, 9], "map": [2, 3, 9, 16, 17, 18, 19, 20, 21, 22, 23, 24], "account": 2, "variant": 2, "ani": [2, 4, 16, 17, 18, 19, 20, 21, 22, 23, 24], "angl": [2, 4], "allow": [2, 3, 9, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "For": [3, 4], "detail": 3, "descript": [3, 23], "look": [3, 13], "folder": 3, "find": [3, 16, 17, 18, 19, 20, 21, 22, 23, 24], "environ": 3, "import": 3, "requir": [3, 4], "np": 3, "core": [3, 5, 6], "diagonal_mov": [3, 6, 7, 9, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "diagonalmov": [3, 6, 7, 8, 9, 16, 17, 18, 19, 20, 21, 22, 24], "a_star": [3, 6, 15, 17, 18], "astarfind": [3, 6, 15, 16, 17, 18, 20, 24], "creat": [3, 9], "defin": 3, "arrai": [3, 9], "valu": [3, 9, 12, 16, 17, 18, 19, 21, 22, 23, 24], "smaller": 3, "equal": 3, "0": [3, 4, 9, 11, 12, 16, 17, 18, 19, 20, 21, 22, 23, 24], "repres": [3, 9, 10], "an": [3, 10, 13], "obstacl": 3, "posit": [3, 9], "walk": [3, 12], "bigger": 3, "cost": [3, 9, 10, 11, 12, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "In": 3, "all": [3, 9, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "walkabl": [3, 7, 9, 12], "same": [3, 16, 17, 18, 19, 20, 21, 22, 23, 24], "1": [3, 4, 8, 12, 16, 17, 18, 19, 20, 21, 22, 23, 24], "feel": 3, "free": 3, "complex": 3, "some": 3, "sensor": 3, "data": [3, 10], "input": 3, "x": [3, 7, 9, 11, 12], "y": [3, 7, 9, 11, 12], "z": [3, 7, 9, 11, 12], "matrix": [3, 9], "ones": 3, "set": [3, 9, 10, 16, 17, 18, 19, 20, 21, 22, 23, 24], "center": 3, "note": 3, "differ": 3, "vari": 3, "travers": 3, "instanti": 3, "object": [3, 8, 9, 10, 12, 14, 21], "instanc": 3, "everi": 3, "element": 3, "also": 3, "size": [3, 9], "start": [3, 11, 12, 13, 16, 17, 18, 19, 20, 21, 22, 23, 24], "end": [3, 13, 16, 17, 18, 19, 20, 21, 22, 23, 24], "determin": [3, 9, 10], "coordin": [3, 12, 13], "access": 3, "paramet": [3, 9, 10, 11, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "second": [3, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "third": 3, "top": 3, "left": 3, "corner": 3, "bottom": 3, "right": 3, "2": [3, 4, 8, 16, 17, 18, 19, 20, 21, 22, 23, 24], "here": 3, "we": [3, 10, 16, 17, 18, 19, 20, 21, 22, 23, 24], "which": [3, 10, 13], "default": [3, 9, 13, 17, 18], "find_path": [3, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], "method": 3, "return": [3, 9, 10, 11, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "need": [3, 16, 17, 18, 19, 20, 21, 22, 23, 24], "alwai": [3, 7, 8, 11, 24], "run": [3, 16, 17, 18, 19, 20, 21, 22, 23, 24], "output": 3, "result": 3, "list": [3, 9, 10, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "waypoint": 3, "convert": 3, "tupl": [3, 9, 10, 16, 17, 18, 19, 20, 21, 22, 23, 24], "pretti": 3, "print": 3, "part": [3, 16, 17, 18, 19, 20, 21, 22, 23], "p": 3, "identifi": 3, "oper": 3, "length": 3, "len": 3, "whole": 3, "copi": 3, "past": 3, "plai": 3, "With": 3, "seamlessli": 3, "multipl": [3, 14], "featur": 3, "invalu": 3, "simul": 3, "multi": 3, "stori": 3, "staircas": 3, "between": [3, 9, 13, 14], "even": 3, "magic": 3, "link": 3, "dispar": 3, "locat": [3, 10], "let": 3, "": [3, 13], "consid": [3, 9], "where": 3, "want": 3, "adjac": 3, "each": [3, 10], "world0": 3, "world1": 3, "both": [3, 13], "grid0": 3, "grid_id": [3, 7, 9, 12], "grid1": 3, "establish": 3, "wai": 3, "travel": 3, "unidirect": 3, "onli": [3, 11, 16, 17, 18, 19, 20, 21, 22, 23, 24], "one": [3, 9], "manag": 3, "find_neighbor": [3, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], "them": 3, "dure": 3, "across": 3, "util": [3, 6, 7], "time": [3, 12, 16, 17, 18, 19, 20, 21, 22, 23, 24], "pass": 3, "_": 3, "anoth": [3, 12], "demonstr": 3, "uniqu": 3, "capabl": 3, "space": 3, "id": [3, 9, 12], "separ": 3, "path0": 3, "path1": 3, "through": [3, 12], "should": [3, 10, 21, 22, 23], "like": [3, 16, 17, 18, 19, 20, 21, 22, 23, 24], "put": 3, "togeth": 3, "sometim": 3, "help": 3, "understand": 3, "purpos": [3, 4], "instal": [3, 4], "o": 3, "o3d": 3, "load": 3, "sampl": 3, "sample_map": 3, "npy": 3, "shape": 3, "42": 3, "indic": 3, "file": 3, "download": 3, "provid": 3, "start_pt": 3, "21": 3, "end_pt": 3, "5": [3, 4], "38": 3, "33": 3, "represent": 3, "unpack": 3, "individu": 3, "argument": 3, "our": [3, 16, 17, 18, 19, 20, 21, 22, 23, 24], "specifi": [3, 9], "only_when_no_obstacl": [3, 7, 8], "get": [3, 9, 10, 14], "path_cost": 3, "g": [3, 7, 11, 12, 22], "f": [3, 7, 10, 11, 12], "4f": 3, "28": 3, "6130": 3, "20": 3, "458": 3, "blue": 3, "color": 3, "n": 3, "column": 3, "red": 3, "channel": 3, "green": 3, "xyz_pt": 3, "pointcloud": 3, "draw_geometri": 3, "obstacle_indic": 3, "stack": 3, "axi": 3, "astyp": 3, "float": [3, 9, 10, 11, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "zero": 3, "max": [3, 16, 17, 18, 19, 20, 21, 22, 23, 24], "grei": 3, "path_color": 3, "sinc": 3, "alreadi": 3, "subtract": 3, "remain": 3, "prepar": 3, "start_color": 3, "end_color": 3, "full": 3, "now": 3, "along": 3, "similarli": 3, "correspond": [3, 10], "combin": 3, "concaten": 3, "cloud": 3, "pcd": 3, "geometri": 3, "vector3dvector": 3, "voxelgrid": 3, "gener": [3, 23], "voxel": 3, "voxel_s": 3, "voxel_grid": 3, "create_from_point_cloud": 3, "ax": 3, "trianglemesh": 3, "create_coordinate_fram": 3, "15": 3, "refer": 3, "remov": [3, 10, 16, 17, 18, 19, 20, 21, 22, 23], "width": [3, 9], "height": [3, 9], "window": 3, "window_nam": 3, "env": 3, "1024": 3, "768": 3, "rotat": 3, "click": 3, "drag": 3, "mous": 3, "zoom": 3, "out": 3, "wheel": 3, "03": 3, "view": 3, "often": 3, "desir": 3, "rather": 3, "than": [3, 16, 17, 18, 19, 20, 21, 22, 23, 24], "being": 3, "restrict": 3, "26": 3, "discret": 3, "achiev": 3, "subclass": 3, "cut": 3, "chase": 3, "how": [3, 9], "work": 3, "As": 3, "usual": 3, "theta_star": [3, 6, 15], "singl": 3, "middl": 3, "10": 3, "dtype": 3, "int8": 3, "9": 3, "notic": 3, "doe": [3, 10], "other": 3, "becaus": 3, "check": [3, 9, 13, 16, 17, 18, 19, 20, 21, 22, 23, 24], "whether": [3, 12, 13], "If": [3, 9, 10], "intermedi": 3, "vehicl": 3, "move": 3, "follow": 3, "reduc": 3, "quantit": 3, "analysi": 3, "compar": 3, "cleanup": [3, 7, 9, 12, 14], "astar_path": 3, "52": 3, "11": 3, "4": [3, 4, 8], "6": [3, 4], "function": [3, 10, 16, 17, 18, 19, 20, 21, 22, 23, 24], "calcul": [3, 11, 12, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "def": 3, "calculate_path_cost": 3, "pt": 3, "pt_next": 3, "zip": 3, "dx": [3, 9, 11], "dy": [3, 9, 11], "dz": [3, 9, 11], "theta_star_cost": 3, "astar_cost": 3, "nastarfind": 3, "871045857174057": 3, "16": 3, "27062002292411": 3, "lower": 3, "thu": 3, "plotli": 3, "graph_object": 3, "go": 3, "figur": 3, "fig": 3, "scatter3d": 3, "mode": [3, 4], "marker": 3, "dict": [3, 14], "hovertext": 3, "black": 3, "orang": 3, "camera": 3, "up": 3, "1479269806756467": 3, "06501594452841505": 3, "0907033779622012": 3, "ey": 3, "3097359159706334": 3, "4710974884501846": 3, "095154166796815": 3, "project": 3, "perspect": 3, "layout": 3, "update_layout": 3, "scene": 3, "xaxi": 3, "titl": 3, "backgroundcolor": 3, "white": 3, "gridcolor": 3, "lightgrei": 3, "showbackground": 3, "true": [3, 9, 12, 13, 16, 17, 18, 19, 20, 21, 22, 23, 24], "zerolinecolor": 3, "rang": 3, "dtick": 3, "yaxi": 3, "zaxi": 3, "legend": 3, "yanchor": 3, "99": 3, "xanchor": 3, "01": 3, "bgcolor": 3, "rgba": 3, "255": 3, "text": 3, "v": [3, 22], "scene_camera": 3, "show": 3, "tab": 3, "open": [3, 7, 10, 12, 16, 17, 18, 19, 20, 21, 22, 23, 24], "your": 3, "browser": 3, "04": 3, "star": [3, 22], "introduct": 4, "pypi": 4, "develop": 4, "pleas": 4, "edit": 4, "usag": 4, "basic": [4, 12], "step": [4, 16, 17, 18, 19, 20, 21, 22, 23, 24], "portal": 4, "bridg": 4, "toi": 4, "two": [4, 13, 14], "build": 4, "storei": 4, "visual": 4, "prerequisit": 4, "open3d": 4, "chang": 4, "log": 4, "subpackag": [4, 5], "index": 4, "modul": [4, 6, 7, 15], "page": [4, 23], "submodul": [5, 6], "build_nod": [6, 7, 9], "simpleheap": [6, 7, 10], "null": [6, 7, 11], "manhattan": [6, 7, 11], "euclidean": [6, 7, 11], "chebyshev": [6, 7, 11], "octil": [6, 7, 11], "gridnod": [6, 7, 9, 10, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "backtrac": [6, 7, 13], "bi_backtrac": [6, 7, 13], "raytrac": [6, 7, 13], "bresenham": [6, 7, 13], "expand_path": [6, 7, 13], "smoothen_path": [6, 7, 13], "line_of_sight": [6, 7, 13], "best_first": [6, 15], "bestfirst": [6, 15, 17], "bi_a_star": [6, 15], "breadth_first": [6, 15], "breadthfirstfind": [6, 15, 19], "dijkstrafind": [6, 15, 20], "executiontimeexcept": [6, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], "executionrunsexcept": [6, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], "ida_star": [6, 15], "idastarfind": [6, 15, 22], "minimumspanningtre": [6, 15, 23], "never": [7, 8, 9, 16, 17, 18, 19, 20, 21, 22], "if_at_most_one_obstacl": [7, 8], "__init__": [7, 9, 10, 12, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], "_validate_dimens": [7, 9], "is_valid_grid": [7, 9], "insid": [7, 9], "_calc_cost": [7, 9], "calc_cost": [7, 9, 14], "neighbor": [7, 9, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "_determine_node_retrieval_funct": [7, 10], "_determine_node_funct": [7, 10], "pop_nod": [7, 10], "push_nod": [7, 10], "remove_nod": [7, 10], "h": [7, 11, 12], "close": [7, 12], "parent": [7, 12, 13, 16, 17, 18, 19, 20, 21, 22, 23, 24], "retain_count": [7, 12], "sourc": [8, 9, 10, 11, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "enum": [8, 9, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "depth": [9, 22], "none": [9, 12, 16, 17, 18, 19, 20, 21, 22, 23, 24], "invers": 9, "fals": [9, 13, 14], "accord": [9, 13], "given": [9, 10, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "what": 9, "int": [9, 11, 12, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "matrixtyp": 9, "thei": 9, "bool": [9, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "option": [9, 12, 13, 16, 17, 18, 19, 20, 21, 22, 23, 24], "otherwis": [9, 13], "contain": 9, "ndarrai": 9, "valid": 9, "tile": [9, 16, 17, 18, 19, 20, 21, 22, 23, 24], "distanc": [9, 11, 16, 17, 18, 19, 20, 21, 22, 23, 24], "node_a": [9, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "node_b": [9, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "order": 10, "pull": 10, "54": 10, "peterchenad": 10, "implement": [10, 22, 23], "optim": 10, "It": 10, "maintain": 10, "statu": 10, "retriev": 10, "its": [10, 16, 17, 18, 19, 20, 21, 22, 23], "union": [10, 11, 22], "rais": [10, 16, 17, 18, 19, 20, 21, 22, 23, 24], "valueerror": 10, "pop": 10, "lowest": 10, "push": 10, "old_f": 10, "just": 10, "store": [10, 16, 17, 18, 19, 20, 21, 22, 23, 24], "ignor": 10, "old": 10, "special": 11, "save": 12, "includ": [12, 13], "overal": 12, "been": 12, "recurs": [12, 22], "track": [12, 16, 17, 18, 19, 20, 21, 22, 23, 24], "jump": [12, 16, 17, 18, 19, 20, 21, 22, 23], "reset": 12, "fresh": 12, "belong": 12, "other_nod": 12, "record": 13, "coords_a": 13, "coords_b": 13, "ly": 13, "form": 13, "rai": 13, "trace": 13, "coord": 13, "compress": 13, "segment": [13, 16, 17, 18, 19, 20, 21, 22, 23, 24], "interpol": 13, "expand": 13, "use_raytrac": 13, "uncompress": 13, "less": 13, "turn": 13, "natur": 13, "smoothen": 13, "node1": 13, "node2": 13, "exist": 13, "wether": 14, "check_neighbor": [15, 16, 17, 18, 19, 20, 21, 22, 23, 24], "apply_heurist": [15, 16, 17, 18, 19, 20, 21, 22, 23, 24], "keep_run": [15, 16, 17, 18, 19, 20, 21, 22, 23, 24], "process_nod": [15, 16, 17, 18, 19, 20, 21, 22, 23, 24], "arg": [15, 21, 23], "with_traceback": [15, 21], "itertre": [15, 23], "time_limit": [16, 17, 18, 19, 20, 21, 22, 23, 24], "max_run": [16, 17, 18, 19, 20, 21, 22, 23, 24], "callabl": [16, 17, 18, 19, 20, 21, 22, 23, 24], "shortest": [16, 17, 18, 19, 20, 21, 22, 23, 24], "edg": [16, 17, 18, 19, 20, 21, 22, 23, 24], "runtim": [16, 17, 18, 19, 20, 21, 22, 23, 24], "amount": [16, 17, 18, 19, 20, 21, 22, 23, 24], "tri": [16, 17, 18, 19, 20, 21, 22, 23, 24], "until": [16, 17, 18, 19, 20, 21, 22, 23, 24], "abort": [16, 17, 18, 19, 20, 21, 22, 23, 24], "enter": [16, 17, 18, 19, 20, 21, 22, 23, 24], "huge": [16, 17, 18, 19, 20, 21, 22, 23, 24], "constrain": [16, 17, 18, 19, 20, 21, 22, 23, 24], "mean": [16, 17, 18, 19, 20, 21, 22, 23, 24], "might": [16, 17, 18, 19, 20, 21, 22, 23, 24], "open_list": [16, 17, 18, 19, 20, 21, 22, 23, 24], "open_valu": [16, 17, 18, 19, 20, 21, 22, 23, 24], "backtrace_bi": [16, 17, 18, 20, 21, 22, 23, 24], "next": [16, 17, 18, 19, 20, 21, 22, 23, 24], "found": [16, 17, 18, 19, 20, 21, 22, 23, 24], "possibl": [16, 17, 18, 19, 20, 21, 22, 23, 24], "process": [16, 17, 18, 19, 20, 21, 22, 23, 24], "helper": [16, 17, 18, 19, 20, 21, 22, 23, 24], "appli": [16, 17, 18, 19, 20, 21, 22, 23, 24], "djikstra": [16, 17, 18, 19, 20, 21, 22, 23, 24], "jumppointsearch": [16, 17, 18, 19, 20, 21, 22, 23], "keep": [16, 17, 18, 19, 20, 21, 22, 23, 24], "someth": [16, 17, 18, 19, 20, 21, 22, 23, 24], "els": [16, 17, 18, 19, 20, 21, 22, 23, 24], "similar": [17, 18], "over": [19, 21], "except": 21, "tb": 21, "self": 21, "__traceback__": 21, "support": [21, 23], "track_recurs": 22, "www": 22, "apl": 22, "jhu": 22, "edu": 22, "hall": 22, "ai": 22, "program": 22, "html": 22, "retrac": 22, "nageshwara": 22, "rao": 22, "vipin": 22, "kumar": 22, "k": 22, "ramesh": 22, "parallel": 22, "januari": 22, "1987": 22, "ftp": 22, "c": 22, "utexa": 22, "snapshot": 22, "hourli": 22, "pub": 22, "lab": 22, "tech": 22, "report": 22, "ut": 22, "tr": 22, "87": 22, "46": 22, "pdf": 22, "javascript": 22, "gerard": 22, "meier": 22, "gerardmei": 22, "cutoff": 22, "kwarg": 23, "brad": 23, "beatti": 23, "18": 23, "wikipedia": 23, "nice": 23, "about": 23, "en": 23, "org": 23, "wiki": 23, "minimum_spanning_tre": 23, "yield": 23, "forc": 24, "Not": 24, "reach": 24, "grandpar": 24, "directli": 24, "skip": 24}, "objects": {"": [[6, 0, 0, "-", "pathfinding3d"]], "pathfinding3d": [[7, 0, 0, "-", "core"], [15, 0, 0, "-", "finder"]], "pathfinding3d.core": [[8, 0, 0, "-", "diagonal_movement"], [9, 0, 0, "-", "grid"], [10, 0, 0, "-", "heap"], [11, 0, 0, "-", "heuristic"], [12, 0, 0, "-", "node"], [13, 0, 0, "-", "util"], [14, 0, 0, "-", "world"]], "pathfinding3d.core.diagonal_movement": [[8, 1, 1, "", "DiagonalMovement"]], "pathfinding3d.core.diagonal_movement.DiagonalMovement": [[8, 2, 1, "", "always"], [8, 2, 1, "", "if_at_most_one_obstacle"], [8, 2, 1, "", "never"], [8, 2, 1, "", "only_when_no_obstacle"]], "pathfinding3d.core.grid": [[9, 1, 1, "", "Grid"], [9, 4, 1, "", "build_nodes"]], "pathfinding3d.core.grid.Grid": [[9, 3, 1, "", "__init__"], [9, 3, 1, "", "_calc_cost"], [9, 3, 1, "", "_validate_dimensions"], [9, 3, 1, "", "calc_cost"], [9, 3, 1, "", "cleanup"], [9, 3, 1, "", "inside"], [9, 3, 1, "", "is_valid_grid"], [9, 3, 1, "", "neighbors"], [9, 3, 1, "", "node"], [9, 3, 1, "", "walkable"]], "pathfinding3d.core.heap": [[10, 1, 1, "", "SimpleHeap"]], "pathfinding3d.core.heap.SimpleHeap": [[10, 3, 1, "", "__init__"], [10, 3, 1, "", "_determine_node_function"], [10, 3, 1, "", "_determine_node_retrieval_function"], [10, 3, 1, "", "pop_node"], [10, 3, 1, "", "push_node"], [10, 3, 1, "", "remove_node"]], "pathfinding3d.core.heuristic": [[11, 4, 1, "", "chebyshev"], [11, 4, 1, "", "euclidean"], [11, 4, 1, "", "manhattan"], [11, 4, 1, "", "null"], [11, 4, 1, "", "octile"]], "pathfinding3d.core.node": [[12, 1, 1, "", "GridNode"], [12, 1, 1, "", "Node"]], "pathfinding3d.core.node.GridNode": [[12, 3, 1, "", "__init__"], [12, 3, 1, "", "cleanup"], [12, 2, 1, "", "closed"], [12, 3, 1, "", "connect"], [12, 2, 1, "id14", "connections"], [12, 2, 1, "", "f"], [12, 2, 1, "", "g"], [12, 2, 1, "id13", "grid_id"], [12, 2, 1, "", "h"], [12, 2, 1, "", "opened"], [12, 2, 1, "", "parent"], [12, 2, 1, "", "retain_count"], [12, 2, 1, "", "tested"], [12, 2, 1, "id11", "walkable"], [12, 2, 1, "id12", "weight"], [12, 2, 1, "id8", "x"], [12, 2, 1, "id9", "y"], [12, 2, 1, "id10", "z"]], "pathfinding3d.core.node.Node": [[12, 3, 1, "", "__init__"], [12, 3, 1, "", "cleanup"], [12, 2, 1, "id4", "closed"], [12, 2, 1, "id2", "f"], [12, 2, 1, "id1", "g"], [12, 2, 1, "id0", "h"], [12, 2, 1, "id3", "opened"], [12, 2, 1, "id5", "parent"], [12, 2, 1, "id6", "retain_count"], [12, 2, 1, "id7", "tested"]], "pathfinding3d.core.util": [[13, 4, 1, "", "backtrace"], [13, 4, 1, "", "bi_backtrace"], [13, 4, 1, "", "bresenham"], [13, 4, 1, "", "expand_path"], [13, 4, 1, "", "line_of_sight"], [13, 4, 1, "", "raytrace"], [13, 4, 1, "", "smoothen_path"]], "pathfinding3d.core.world": [[14, 1, 1, "", "World"]], "pathfinding3d.core.world.World": [[14, 3, 1, "", "__init__"], [14, 3, 1, "", "calc_cost"], [14, 3, 1, "", "cleanup"], [14, 3, 1, "", "neighbors"]], "pathfinding3d.finder": [[16, 0, 0, "-", "a_star"], [17, 0, 0, "-", "best_first"], [18, 0, 0, "-", "bi_a_star"], [19, 0, 0, "-", "breadth_first"], [20, 0, 0, "-", "dijkstra"], [21, 0, 0, "-", "finder"], [22, 0, 0, "-", "ida_star"], [23, 0, 0, "-", "msp"], [24, 0, 0, "-", "theta_star"]], "pathfinding3d.finder.a_star": [[16, 1, 1, "", "AStarFinder"]], "pathfinding3d.finder.a_star.AStarFinder": [[16, 3, 1, "", "__init__"], [16, 3, 1, "", "apply_heuristic"], [16, 3, 1, "", "check_neighbors"], [16, 3, 1, "", "find_neighbors"], [16, 3, 1, "", "find_path"], [16, 3, 1, "", "keep_running"], [16, 3, 1, "", "process_node"]], "pathfinding3d.finder.best_first": [[17, 1, 1, "", "BestFirst"]], "pathfinding3d.finder.best_first.BestFirst": [[17, 3, 1, "", "__init__"], [17, 3, 1, "", "apply_heuristic"], [17, 3, 1, "", "check_neighbors"], [17, 3, 1, "", "find_neighbors"], [17, 3, 1, "", "find_path"], [17, 3, 1, "", "keep_running"], [17, 3, 1, "", "process_node"]], "pathfinding3d.finder.bi_a_star": [[18, 1, 1, "", "BiAStarFinder"]], "pathfinding3d.finder.bi_a_star.BiAStarFinder": [[18, 3, 1, "", "__init__"], [18, 3, 1, "", "apply_heuristic"], [18, 3, 1, "", "check_neighbors"], [18, 3, 1, "", "find_neighbors"], [18, 3, 1, "", "find_path"], [18, 3, 1, "", "keep_running"], [18, 3, 1, "", "process_node"]], "pathfinding3d.finder.breadth_first": [[19, 1, 1, "", "BreadthFirstFinder"]], "pathfinding3d.finder.breadth_first.BreadthFirstFinder": [[19, 3, 1, "", "__init__"], [19, 3, 1, "", "apply_heuristic"], [19, 3, 1, "", "check_neighbors"], [19, 3, 1, "", "find_neighbors"], [19, 3, 1, "", "find_path"], [19, 3, 1, "", "keep_running"], [19, 3, 1, "", "process_node"]], "pathfinding3d.finder.dijkstra": [[20, 1, 1, "", "DijkstraFinder"]], "pathfinding3d.finder.dijkstra.DijkstraFinder": [[20, 3, 1, "", "__init__"], [20, 3, 1, "", "apply_heuristic"], [20, 3, 1, "", "check_neighbors"], [20, 3, 1, "", "find_neighbors"], [20, 3, 1, "", "find_path"], [20, 3, 1, "", "keep_running"], [20, 3, 1, "", "process_node"]], "pathfinding3d.finder.finder": [[21, 5, 1, "", "ExecutionRunsException"], [21, 5, 1, "", "ExecutionTimeException"], [21, 1, 1, "", "Finder"]], "pathfinding3d.finder.finder.ExecutionRunsException": [[21, 3, 1, "", "__init__"], [21, 2, 1, "", "args"], [21, 3, 1, "", "with_traceback"]], "pathfinding3d.finder.finder.ExecutionTimeException": [[21, 3, 1, "", "__init__"], [21, 2, 1, "", "args"], [21, 3, 1, "", "with_traceback"]], "pathfinding3d.finder.finder.Finder": [[21, 3, 1, "", "__init__"], [21, 3, 1, "", "apply_heuristic"], [21, 3, 1, "", "check_neighbors"], [21, 3, 1, "", "find_neighbors"], [21, 3, 1, "", "find_path"], [21, 3, 1, "", "keep_running"], [21, 3, 1, "", "process_node"]], "pathfinding3d.finder.ida_star": [[22, 1, 1, "", "IDAStarFinder"]], "pathfinding3d.finder.ida_star.IDAStarFinder": [[22, 3, 1, "", "__init__"], [22, 3, 1, "", "apply_heuristic"], [22, 3, 1, "", "check_neighbors"], [22, 3, 1, "", "find_neighbors"], [22, 3, 1, "", "find_path"], [22, 3, 1, "", "keep_running"], [22, 3, 1, "", "process_node"], [22, 3, 1, "", "search"]], "pathfinding3d.finder.msp": [[23, 1, 1, "", "MinimumSpanningTree"]], "pathfinding3d.finder.msp.MinimumSpanningTree": [[23, 3, 1, "", "__init__"], [23, 3, 1, "", "apply_heuristic"], [23, 3, 1, "", "check_neighbors"], [23, 3, 1, "", "find_neighbors"], [23, 3, 1, "", "find_path"], [23, 3, 1, "", "itertree"], [23, 3, 1, "", "keep_running"], [23, 3, 1, "", "process_node"], [23, 3, 1, "", "tree"]], "pathfinding3d.finder.theta_star": [[24, 1, 1, "", "ThetaStarFinder"]], "pathfinding3d.finder.theta_star.ThetaStarFinder": [[24, 3, 1, "", "__init__"], [24, 3, 1, "", "apply_heuristic"], [24, 3, 1, "", "check_neighbors"], [24, 3, 1, "", "find_neighbors"], [24, 3, 1, "", "find_path"], [24, 3, 1, "", "keep_running"], [24, 3, 1, "", "process_node"]]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:attribute", "3": "py:method", "4": "py:function", "5": "py:exception"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "method", "Python method"], "4": ["py", "function", "Python function"], "5": ["py", "exception", "Python exception"]}, "titleterms": {"version": 0, "histori": 0, "0": 0, "6": 0, "2": 0, "1": 0, "5": 0, "4": 0, "3": 0, "instal": 1, "requir": 1, "pypi": 1, "For": 1, "develop": 1, "purpos": 1, "pleas": 1, "us": 1, "edit": 1, "mode": 1, "pathfinding3d": [2, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24], "introduct": 2, "exampl": 3, "basic": 3, "usag": 3, "step": 3, "portal": 3, "bridg": 3, "toi": 3, "connect": 3, "two": 3, "build": 3, "storei": 3, "visual": 3, "path": 3, "prerequisit": 3, "open3d": 3, "ani": 3, "angl": 3, "movement": 3, "welcom": 4, "": 4, "document": 4, "content": 4, "indic": 4, "tabl": 4, "packag": [6, 7, 15], "subpackag": 6, "core": [7, 8, 9, 10, 11, 12, 13, 14], "submodul": [7, 15], "diagonal_mov": 8, "modul": [8, 9, 10, 11, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24], "grid": 9, "heap": 10, "heurist": 11, "node": 12, "util": 13, "world": 14, "finder": [15, 16, 17, 18, 19, 20, 21, 22, 23, 24], "a_star": 16, "best_first": 17, "bi_a_star": 18, "breadth_first": 19, "dijkstra": 20, "ida_star": 22, "msp": 23, "theta_star": 24}, "envversion": {"sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.todo": 2, "sphinx.ext.viewcode": 1, "sphinx": 58}, "alltitles": {"Version History": [[0, "version-history"]], "0.6.2": [[0, "id1"]], "0.6.1": [[0, "id2"]], "0.6.0": [[0, "id3"]], "0.5.1": [[0, "id4"]], "0.5.0": [[0, "id5"]], "0.4.1": [[0, "id6"]], "0.4.0": [[0, "id7"]], "0.3.1": [[0, "id8"]], "0.3": [[0, "id9"]], "0.2": [[0, "id10"]], "0.1": [[0, "id11"]], "Installation": [[1, "installation"]], "Requirements": [[1, "requirements"]], "PyPI": [[1, "pypi"]], "For development purposes please use editable mode": [[1, "for-development-purposes-please-use-editable-mode"]], "Pathfinding3D": [[2, "pathfinding3d"]], "Introduction": [[2, "introduction"]], "Examples": [[3, "examples"]], "Basic usage": [[3, "basic-usage"]], "Steps/Portals/Bridges": [[3, "steps-portals-bridges"]], "Toy Example: Connecting Two Building Storeys with a Bridge": [[3, "toy-example-connecting-two-building-storeys-with-a-bridge"]], "Visualizing the Path": [[3, "visualizing-the-path"]], "Prerequisites": [[3, "prerequisites"]], "Example with Open3D": [[3, "example-with-open3d"]], "Example with any angle of movement": [[3, "example-with-any-angle-of-movement"]], "Welcome to pathfinding3d\u2019s documentation!": [[4, "welcome-to-pathfinding3d-s-documentation"]], "Contents:": [[4, null]], "Indices and tables": [[4, "indices-and-tables"]], "pathfinding3d": [[5, "pathfinding3d"]], "pathfinding3d package": [[6, "module-pathfinding3d"]], "Subpackages": [[6, "subpackages"]], "pathfinding3d.core package": [[7, "module-pathfinding3d.core"]], "Submodules": [[7, "submodules"], [15, "submodules"]], "pathfinding3d.core.diagonal_movement module": [[8, "module-pathfinding3d.core.diagonal_movement"]], "pathfinding3d.core.grid module": [[9, "module-pathfinding3d.core.grid"]], "pathfinding3d.core.heap module": [[10, "module-pathfinding3d.core.heap"]], "pathfinding3d.core.heuristic module": [[11, "module-pathfinding3d.core.heuristic"]], "pathfinding3d.core.node module": [[12, "module-pathfinding3d.core.node"]], "pathfinding3d.core.util module": [[13, "module-pathfinding3d.core.util"]], "pathfinding3d.core.world module": [[14, "module-pathfinding3d.core.world"]], "pathfinding3d.finder package": [[15, "module-pathfinding3d.finder"]], "pathfinding3d.finder.a_star module": [[16, "module-pathfinding3d.finder.a_star"]], "pathfinding3d.finder.best_first module": [[17, "module-pathfinding3d.finder.best_first"]], "pathfinding3d.finder.bi_a_star module": [[18, "module-pathfinding3d.finder.bi_a_star"]], "pathfinding3d.finder.breadth_first module": [[19, "module-pathfinding3d.finder.breadth_first"]], "pathfinding3d.finder.dijkstra module": [[20, "module-pathfinding3d.finder.dijkstra"]], "pathfinding3d.finder.finder module": [[21, "module-pathfinding3d.finder.finder"]], "pathfinding3d.finder.ida_star module": [[22, "module-pathfinding3d.finder.ida_star"]], "pathfinding3d.finder.msp module": [[23, "module-pathfinding3d.finder.msp"]], "pathfinding3d.finder.theta_star module": [[24, "module-pathfinding3d.finder.theta_star"]]}, "indexentries": {"module": [[6, "module-pathfinding3d"], [7, "module-pathfinding3d.core"], [8, "module-pathfinding3d.core.diagonal_movement"], [9, "module-pathfinding3d.core.grid"], [10, "module-pathfinding3d.core.heap"], [11, "module-pathfinding3d.core.heuristic"], [12, "module-pathfinding3d.core.node"], [13, "module-pathfinding3d.core.util"], [14, "module-pathfinding3d.core.world"], [15, "module-pathfinding3d.finder"], [16, "module-pathfinding3d.finder.a_star"], [17, "module-pathfinding3d.finder.best_first"], [18, "module-pathfinding3d.finder.bi_a_star"], [19, "module-pathfinding3d.finder.breadth_first"], [20, "module-pathfinding3d.finder.dijkstra"], [21, "module-pathfinding3d.finder.finder"], [22, "module-pathfinding3d.finder.ida_star"], [23, "module-pathfinding3d.finder.msp"], [24, "module-pathfinding3d.finder.theta_star"]], "pathfinding3d": [[6, "module-pathfinding3d"]], "pathfinding3d.core": [[7, "module-pathfinding3d.core"]], "diagonalmovement (class in pathfinding3d.core.diagonal_movement)": [[8, "pathfinding3d.core.diagonal_movement.DiagonalMovement"]], "always (pathfinding3d.core.diagonal_movement.diagonalmovement attribute)": [[8, "pathfinding3d.core.diagonal_movement.DiagonalMovement.always"]], "if_at_most_one_obstacle (pathfinding3d.core.diagonal_movement.diagonalmovement attribute)": [[8, "pathfinding3d.core.diagonal_movement.DiagonalMovement.if_at_most_one_obstacle"]], "never (pathfinding3d.core.diagonal_movement.diagonalmovement attribute)": [[8, "pathfinding3d.core.diagonal_movement.DiagonalMovement.never"]], "only_when_no_obstacle (pathfinding3d.core.diagonal_movement.diagonalmovement attribute)": [[8, "pathfinding3d.core.diagonal_movement.DiagonalMovement.only_when_no_obstacle"]], "pathfinding3d.core.diagonal_movement": [[8, "module-pathfinding3d.core.diagonal_movement"]], "grid (class in pathfinding3d.core.grid)": [[9, "pathfinding3d.core.grid.Grid"]], "__init__() (pathfinding3d.core.grid.grid method)": [[9, "pathfinding3d.core.grid.Grid.__init__"]], "_calc_cost() (pathfinding3d.core.grid.grid method)": [[9, "pathfinding3d.core.grid.Grid._calc_cost"]], "_validate_dimensions() (pathfinding3d.core.grid.grid method)": [[9, "pathfinding3d.core.grid.Grid._validate_dimensions"]], "build_nodes() (in module pathfinding3d.core.grid)": [[9, "pathfinding3d.core.grid.build_nodes"]], "calc_cost() (pathfinding3d.core.grid.grid method)": [[9, "pathfinding3d.core.grid.Grid.calc_cost"]], "cleanup() (pathfinding3d.core.grid.grid method)": [[9, "pathfinding3d.core.grid.Grid.cleanup"]], "inside() (pathfinding3d.core.grid.grid method)": [[9, "pathfinding3d.core.grid.Grid.inside"]], "is_valid_grid() (pathfinding3d.core.grid.grid method)": [[9, "pathfinding3d.core.grid.Grid.is_valid_grid"]], "neighbors() (pathfinding3d.core.grid.grid method)": [[9, "pathfinding3d.core.grid.Grid.neighbors"]], "node() (pathfinding3d.core.grid.grid method)": [[9, "pathfinding3d.core.grid.Grid.node"]], "pathfinding3d.core.grid": [[9, "module-pathfinding3d.core.grid"]], "walkable() (pathfinding3d.core.grid.grid method)": [[9, "pathfinding3d.core.grid.Grid.walkable"]], "simpleheap (class in pathfinding3d.core.heap)": [[10, "pathfinding3d.core.heap.SimpleHeap"]], "__init__() (pathfinding3d.core.heap.simpleheap method)": [[10, "pathfinding3d.core.heap.SimpleHeap.__init__"]], "_determine_node_function() (pathfinding3d.core.heap.simpleheap method)": [[10, "pathfinding3d.core.heap.SimpleHeap._determine_node_function"]], "_determine_node_retrieval_function() (pathfinding3d.core.heap.simpleheap method)": [[10, "pathfinding3d.core.heap.SimpleHeap._determine_node_retrieval_function"]], "pathfinding3d.core.heap": [[10, "module-pathfinding3d.core.heap"]], "pop_node() (pathfinding3d.core.heap.simpleheap method)": [[10, "pathfinding3d.core.heap.SimpleHeap.pop_node"]], "push_node() (pathfinding3d.core.heap.simpleheap method)": [[10, "pathfinding3d.core.heap.SimpleHeap.push_node"]], "remove_node() (pathfinding3d.core.heap.simpleheap method)": [[10, "pathfinding3d.core.heap.SimpleHeap.remove_node"]], "chebyshev() (in module pathfinding3d.core.heuristic)": [[11, "pathfinding3d.core.heuristic.chebyshev"]], "euclidean() (in module pathfinding3d.core.heuristic)": [[11, "pathfinding3d.core.heuristic.euclidean"]], "manhattan() (in module pathfinding3d.core.heuristic)": [[11, "pathfinding3d.core.heuristic.manhattan"]], "null() (in module pathfinding3d.core.heuristic)": [[11, "pathfinding3d.core.heuristic.null"]], "octile() (in module pathfinding3d.core.heuristic)": [[11, "pathfinding3d.core.heuristic.octile"]], "pathfinding3d.core.heuristic": [[11, "module-pathfinding3d.core.heuristic"]], "gridnode (class in pathfinding3d.core.node)": [[12, "pathfinding3d.core.node.GridNode"]], "node (class in pathfinding3d.core.node)": [[12, "pathfinding3d.core.node.Node"]], "__init__() (pathfinding3d.core.node.gridnode method)": [[12, "pathfinding3d.core.node.GridNode.__init__"]], "__init__() (pathfinding3d.core.node.node method)": [[12, "pathfinding3d.core.node.Node.__init__"]], "cleanup() (pathfinding3d.core.node.gridnode method)": [[12, "pathfinding3d.core.node.GridNode.cleanup"]], "cleanup() (pathfinding3d.core.node.node method)": [[12, "pathfinding3d.core.node.Node.cleanup"]], "closed (pathfinding3d.core.node.gridnode attribute)": [[12, "pathfinding3d.core.node.GridNode.closed"]], "closed (pathfinding3d.core.node.node attribute)": [[12, "id4"], [12, "pathfinding3d.core.node.Node.closed"]], "connect() (pathfinding3d.core.node.gridnode method)": [[12, "pathfinding3d.core.node.GridNode.connect"]], "connections (pathfinding3d.core.node.gridnode attribute)": [[12, "id14"], [12, "pathfinding3d.core.node.GridNode.connections"]], "f (pathfinding3d.core.node.gridnode attribute)": [[12, "pathfinding3d.core.node.GridNode.f"]], "f (pathfinding3d.core.node.node attribute)": [[12, "id2"], [12, "pathfinding3d.core.node.Node.f"]], "g (pathfinding3d.core.node.gridnode attribute)": [[12, "pathfinding3d.core.node.GridNode.g"]], "g (pathfinding3d.core.node.node attribute)": [[12, "id1"], [12, "pathfinding3d.core.node.Node.g"]], "grid_id (pathfinding3d.core.node.gridnode attribute)": [[12, "id13"], [12, "pathfinding3d.core.node.GridNode.grid_id"]], "h (pathfinding3d.core.node.gridnode attribute)": [[12, "pathfinding3d.core.node.GridNode.h"]], "h (pathfinding3d.core.node.node attribute)": [[12, "id0"], [12, "pathfinding3d.core.node.Node.h"]], "opened (pathfinding3d.core.node.gridnode attribute)": [[12, "pathfinding3d.core.node.GridNode.opened"]], "opened (pathfinding3d.core.node.node attribute)": [[12, "id3"], [12, "pathfinding3d.core.node.Node.opened"]], "parent (pathfinding3d.core.node.gridnode attribute)": [[12, "pathfinding3d.core.node.GridNode.parent"]], "parent (pathfinding3d.core.node.node attribute)": [[12, "id5"], [12, "pathfinding3d.core.node.Node.parent"]], "pathfinding3d.core.node": [[12, "module-pathfinding3d.core.node"]], "retain_count (pathfinding3d.core.node.gridnode attribute)": [[12, "pathfinding3d.core.node.GridNode.retain_count"]], "retain_count (pathfinding3d.core.node.node attribute)": [[12, "id6"], [12, "pathfinding3d.core.node.Node.retain_count"]], "tested (pathfinding3d.core.node.gridnode attribute)": [[12, "pathfinding3d.core.node.GridNode.tested"]], "tested (pathfinding3d.core.node.node attribute)": [[12, "id7"], [12, "pathfinding3d.core.node.Node.tested"]], "walkable (pathfinding3d.core.node.gridnode attribute)": [[12, "id11"], [12, "pathfinding3d.core.node.GridNode.walkable"]], "weight (pathfinding3d.core.node.gridnode attribute)": [[12, "id12"], [12, "pathfinding3d.core.node.GridNode.weight"]], "x (pathfinding3d.core.node.gridnode attribute)": [[12, "id8"], [12, "pathfinding3d.core.node.GridNode.x"]], "y (pathfinding3d.core.node.gridnode attribute)": [[12, "id9"], [12, "pathfinding3d.core.node.GridNode.y"]], "z (pathfinding3d.core.node.gridnode attribute)": [[12, "id10"], [12, "pathfinding3d.core.node.GridNode.z"]], "backtrace() (in module pathfinding3d.core.util)": [[13, "pathfinding3d.core.util.backtrace"]], "bi_backtrace() (in module pathfinding3d.core.util)": [[13, "pathfinding3d.core.util.bi_backtrace"]], "bresenham() (in module pathfinding3d.core.util)": [[13, "pathfinding3d.core.util.bresenham"]], "expand_path() (in module pathfinding3d.core.util)": [[13, "pathfinding3d.core.util.expand_path"]], "line_of_sight() (in module pathfinding3d.core.util)": [[13, "pathfinding3d.core.util.line_of_sight"]], "pathfinding3d.core.util": [[13, "module-pathfinding3d.core.util"]], "raytrace() (in module pathfinding3d.core.util)": [[13, "pathfinding3d.core.util.raytrace"]], "smoothen_path() (in module pathfinding3d.core.util)": [[13, "pathfinding3d.core.util.smoothen_path"]], "world (class in pathfinding3d.core.world)": [[14, "pathfinding3d.core.world.World"]], "__init__() (pathfinding3d.core.world.world method)": [[14, "pathfinding3d.core.world.World.__init__"]], "calc_cost() (pathfinding3d.core.world.world method)": [[14, "pathfinding3d.core.world.World.calc_cost"]], "cleanup() (pathfinding3d.core.world.world method)": [[14, "pathfinding3d.core.world.World.cleanup"]], "neighbors() (pathfinding3d.core.world.world method)": [[14, "pathfinding3d.core.world.World.neighbors"]], "pathfinding3d.core.world": [[14, "module-pathfinding3d.core.world"]], "pathfinding3d.finder": [[15, "module-pathfinding3d.finder"]], "astarfinder (class in pathfinding3d.finder.a_star)": [[16, "pathfinding3d.finder.a_star.AStarFinder"]], "__init__() (pathfinding3d.finder.a_star.astarfinder method)": [[16, "pathfinding3d.finder.a_star.AStarFinder.__init__"]], "apply_heuristic() (pathfinding3d.finder.a_star.astarfinder method)": [[16, "pathfinding3d.finder.a_star.AStarFinder.apply_heuristic"]], "check_neighbors() (pathfinding3d.finder.a_star.astarfinder method)": [[16, "pathfinding3d.finder.a_star.AStarFinder.check_neighbors"]], "find_neighbors() (pathfinding3d.finder.a_star.astarfinder method)": [[16, "pathfinding3d.finder.a_star.AStarFinder.find_neighbors"]], "find_path() (pathfinding3d.finder.a_star.astarfinder method)": [[16, "pathfinding3d.finder.a_star.AStarFinder.find_path"]], "keep_running() (pathfinding3d.finder.a_star.astarfinder method)": [[16, "pathfinding3d.finder.a_star.AStarFinder.keep_running"]], "pathfinding3d.finder.a_star": [[16, "module-pathfinding3d.finder.a_star"]], "process_node() (pathfinding3d.finder.a_star.astarfinder method)": [[16, "pathfinding3d.finder.a_star.AStarFinder.process_node"]], "bestfirst (class in pathfinding3d.finder.best_first)": [[17, "pathfinding3d.finder.best_first.BestFirst"]], "__init__() (pathfinding3d.finder.best_first.bestfirst method)": [[17, "pathfinding3d.finder.best_first.BestFirst.__init__"]], "apply_heuristic() (pathfinding3d.finder.best_first.bestfirst method)": [[17, "pathfinding3d.finder.best_first.BestFirst.apply_heuristic"]], "check_neighbors() (pathfinding3d.finder.best_first.bestfirst method)": [[17, "pathfinding3d.finder.best_first.BestFirst.check_neighbors"]], "find_neighbors() (pathfinding3d.finder.best_first.bestfirst method)": [[17, "pathfinding3d.finder.best_first.BestFirst.find_neighbors"]], "find_path() (pathfinding3d.finder.best_first.bestfirst method)": [[17, "pathfinding3d.finder.best_first.BestFirst.find_path"]], "keep_running() (pathfinding3d.finder.best_first.bestfirst method)": [[17, "pathfinding3d.finder.best_first.BestFirst.keep_running"]], "pathfinding3d.finder.best_first": [[17, "module-pathfinding3d.finder.best_first"]], "process_node() (pathfinding3d.finder.best_first.bestfirst method)": [[17, "pathfinding3d.finder.best_first.BestFirst.process_node"]], "biastarfinder (class in pathfinding3d.finder.bi_a_star)": [[18, "pathfinding3d.finder.bi_a_star.BiAStarFinder"]], "__init__() (pathfinding3d.finder.bi_a_star.biastarfinder method)": [[18, "pathfinding3d.finder.bi_a_star.BiAStarFinder.__init__"]], "apply_heuristic() (pathfinding3d.finder.bi_a_star.biastarfinder method)": [[18, "pathfinding3d.finder.bi_a_star.BiAStarFinder.apply_heuristic"]], "check_neighbors() (pathfinding3d.finder.bi_a_star.biastarfinder method)": [[18, "pathfinding3d.finder.bi_a_star.BiAStarFinder.check_neighbors"]], "find_neighbors() (pathfinding3d.finder.bi_a_star.biastarfinder method)": [[18, "pathfinding3d.finder.bi_a_star.BiAStarFinder.find_neighbors"]], "find_path() (pathfinding3d.finder.bi_a_star.biastarfinder method)": [[18, "pathfinding3d.finder.bi_a_star.BiAStarFinder.find_path"]], "keep_running() (pathfinding3d.finder.bi_a_star.biastarfinder method)": [[18, "pathfinding3d.finder.bi_a_star.BiAStarFinder.keep_running"]], "pathfinding3d.finder.bi_a_star": [[18, "module-pathfinding3d.finder.bi_a_star"]], "process_node() (pathfinding3d.finder.bi_a_star.biastarfinder method)": [[18, "pathfinding3d.finder.bi_a_star.BiAStarFinder.process_node"]], "breadthfirstfinder (class in pathfinding3d.finder.breadth_first)": [[19, "pathfinding3d.finder.breadth_first.BreadthFirstFinder"]], "__init__() (pathfinding3d.finder.breadth_first.breadthfirstfinder method)": [[19, "pathfinding3d.finder.breadth_first.BreadthFirstFinder.__init__"]], "apply_heuristic() (pathfinding3d.finder.breadth_first.breadthfirstfinder method)": [[19, "pathfinding3d.finder.breadth_first.BreadthFirstFinder.apply_heuristic"]], "check_neighbors() (pathfinding3d.finder.breadth_first.breadthfirstfinder method)": [[19, "pathfinding3d.finder.breadth_first.BreadthFirstFinder.check_neighbors"]], "find_neighbors() (pathfinding3d.finder.breadth_first.breadthfirstfinder method)": [[19, "pathfinding3d.finder.breadth_first.BreadthFirstFinder.find_neighbors"]], "find_path() (pathfinding3d.finder.breadth_first.breadthfirstfinder method)": [[19, "pathfinding3d.finder.breadth_first.BreadthFirstFinder.find_path"]], "keep_running() (pathfinding3d.finder.breadth_first.breadthfirstfinder method)": [[19, "pathfinding3d.finder.breadth_first.BreadthFirstFinder.keep_running"]], "pathfinding3d.finder.breadth_first": [[19, "module-pathfinding3d.finder.breadth_first"]], "process_node() (pathfinding3d.finder.breadth_first.breadthfirstfinder method)": [[19, "pathfinding3d.finder.breadth_first.BreadthFirstFinder.process_node"]], "dijkstrafinder (class in pathfinding3d.finder.dijkstra)": [[20, "pathfinding3d.finder.dijkstra.DijkstraFinder"]], "__init__() (pathfinding3d.finder.dijkstra.dijkstrafinder method)": [[20, "pathfinding3d.finder.dijkstra.DijkstraFinder.__init__"]], "apply_heuristic() (pathfinding3d.finder.dijkstra.dijkstrafinder method)": [[20, "pathfinding3d.finder.dijkstra.DijkstraFinder.apply_heuristic"]], "check_neighbors() (pathfinding3d.finder.dijkstra.dijkstrafinder method)": [[20, "pathfinding3d.finder.dijkstra.DijkstraFinder.check_neighbors"]], "find_neighbors() (pathfinding3d.finder.dijkstra.dijkstrafinder method)": [[20, "pathfinding3d.finder.dijkstra.DijkstraFinder.find_neighbors"]], "find_path() (pathfinding3d.finder.dijkstra.dijkstrafinder method)": [[20, "pathfinding3d.finder.dijkstra.DijkstraFinder.find_path"]], "keep_running() (pathfinding3d.finder.dijkstra.dijkstrafinder method)": [[20, "pathfinding3d.finder.dijkstra.DijkstraFinder.keep_running"]], "pathfinding3d.finder.dijkstra": [[20, "module-pathfinding3d.finder.dijkstra"]], "process_node() (pathfinding3d.finder.dijkstra.dijkstrafinder method)": [[20, "pathfinding3d.finder.dijkstra.DijkstraFinder.process_node"]], "executionrunsexception": [[21, "pathfinding3d.finder.finder.ExecutionRunsException"]], "executiontimeexception": [[21, "pathfinding3d.finder.finder.ExecutionTimeException"]], "finder (class in pathfinding3d.finder.finder)": [[21, "pathfinding3d.finder.finder.Finder"]], "__init__() (pathfinding3d.finder.finder.executionrunsexception method)": [[21, "pathfinding3d.finder.finder.ExecutionRunsException.__init__"]], "__init__() (pathfinding3d.finder.finder.executiontimeexception method)": [[21, "pathfinding3d.finder.finder.ExecutionTimeException.__init__"]], "__init__() (pathfinding3d.finder.finder.finder method)": [[21, "pathfinding3d.finder.finder.Finder.__init__"]], "apply_heuristic() (pathfinding3d.finder.finder.finder method)": [[21, "pathfinding3d.finder.finder.Finder.apply_heuristic"]], "args (pathfinding3d.finder.finder.executionrunsexception attribute)": [[21, "pathfinding3d.finder.finder.ExecutionRunsException.args"]], "args (pathfinding3d.finder.finder.executiontimeexception attribute)": [[21, "pathfinding3d.finder.finder.ExecutionTimeException.args"]], "check_neighbors() (pathfinding3d.finder.finder.finder method)": [[21, "pathfinding3d.finder.finder.Finder.check_neighbors"]], "find_neighbors() (pathfinding3d.finder.finder.finder method)": [[21, "pathfinding3d.finder.finder.Finder.find_neighbors"]], "find_path() (pathfinding3d.finder.finder.finder method)": [[21, "pathfinding3d.finder.finder.Finder.find_path"]], "keep_running() (pathfinding3d.finder.finder.finder method)": [[21, "pathfinding3d.finder.finder.Finder.keep_running"]], "pathfinding3d.finder.finder": [[21, "module-pathfinding3d.finder.finder"]], "process_node() (pathfinding3d.finder.finder.finder method)": [[21, "pathfinding3d.finder.finder.Finder.process_node"]], "with_traceback() (pathfinding3d.finder.finder.executionrunsexception method)": [[21, "pathfinding3d.finder.finder.ExecutionRunsException.with_traceback"]], "with_traceback() (pathfinding3d.finder.finder.executiontimeexception method)": [[21, "pathfinding3d.finder.finder.ExecutionTimeException.with_traceback"]], "idastarfinder (class in pathfinding3d.finder.ida_star)": [[22, "pathfinding3d.finder.ida_star.IDAStarFinder"]], "__init__() (pathfinding3d.finder.ida_star.idastarfinder method)": [[22, "pathfinding3d.finder.ida_star.IDAStarFinder.__init__"]], "apply_heuristic() (pathfinding3d.finder.ida_star.idastarfinder method)": [[22, "pathfinding3d.finder.ida_star.IDAStarFinder.apply_heuristic"]], "check_neighbors() (pathfinding3d.finder.ida_star.idastarfinder method)": [[22, "pathfinding3d.finder.ida_star.IDAStarFinder.check_neighbors"]], "find_neighbors() (pathfinding3d.finder.ida_star.idastarfinder method)": [[22, "pathfinding3d.finder.ida_star.IDAStarFinder.find_neighbors"]], "find_path() (pathfinding3d.finder.ida_star.idastarfinder method)": [[22, "pathfinding3d.finder.ida_star.IDAStarFinder.find_path"]], "keep_running() (pathfinding3d.finder.ida_star.idastarfinder method)": [[22, "pathfinding3d.finder.ida_star.IDAStarFinder.keep_running"]], "pathfinding3d.finder.ida_star": [[22, "module-pathfinding3d.finder.ida_star"]], "process_node() (pathfinding3d.finder.ida_star.idastarfinder method)": [[22, "pathfinding3d.finder.ida_star.IDAStarFinder.process_node"]], "search() (pathfinding3d.finder.ida_star.idastarfinder method)": [[22, "pathfinding3d.finder.ida_star.IDAStarFinder.search"]], "minimumspanningtree (class in pathfinding3d.finder.msp)": [[23, "pathfinding3d.finder.msp.MinimumSpanningTree"]], "__init__() (pathfinding3d.finder.msp.minimumspanningtree method)": [[23, "pathfinding3d.finder.msp.MinimumSpanningTree.__init__"]], "apply_heuristic() (pathfinding3d.finder.msp.minimumspanningtree method)": [[23, "pathfinding3d.finder.msp.MinimumSpanningTree.apply_heuristic"]], "check_neighbors() (pathfinding3d.finder.msp.minimumspanningtree method)": [[23, "pathfinding3d.finder.msp.MinimumSpanningTree.check_neighbors"]], "find_neighbors() (pathfinding3d.finder.msp.minimumspanningtree method)": [[23, "pathfinding3d.finder.msp.MinimumSpanningTree.find_neighbors"]], "find_path() (pathfinding3d.finder.msp.minimumspanningtree method)": [[23, "pathfinding3d.finder.msp.MinimumSpanningTree.find_path"]], "itertree() (pathfinding3d.finder.msp.minimumspanningtree method)": [[23, "pathfinding3d.finder.msp.MinimumSpanningTree.itertree"]], "keep_running() (pathfinding3d.finder.msp.minimumspanningtree method)": [[23, "pathfinding3d.finder.msp.MinimumSpanningTree.keep_running"]], "pathfinding3d.finder.msp": [[23, "module-pathfinding3d.finder.msp"]], "process_node() (pathfinding3d.finder.msp.minimumspanningtree method)": [[23, "pathfinding3d.finder.msp.MinimumSpanningTree.process_node"]], "tree() (pathfinding3d.finder.msp.minimumspanningtree method)": [[23, "pathfinding3d.finder.msp.MinimumSpanningTree.tree"]], "thetastarfinder (class in pathfinding3d.finder.theta_star)": [[24, "pathfinding3d.finder.theta_star.ThetaStarFinder"]], "__init__() (pathfinding3d.finder.theta_star.thetastarfinder method)": [[24, "pathfinding3d.finder.theta_star.ThetaStarFinder.__init__"]], "apply_heuristic() (pathfinding3d.finder.theta_star.thetastarfinder method)": [[24, "pathfinding3d.finder.theta_star.ThetaStarFinder.apply_heuristic"]], "check_neighbors() (pathfinding3d.finder.theta_star.thetastarfinder method)": [[24, "pathfinding3d.finder.theta_star.ThetaStarFinder.check_neighbors"]], "find_neighbors() (pathfinding3d.finder.theta_star.thetastarfinder method)": [[24, "pathfinding3d.finder.theta_star.ThetaStarFinder.find_neighbors"]], "find_path() (pathfinding3d.finder.theta_star.thetastarfinder method)": [[24, "pathfinding3d.finder.theta_star.ThetaStarFinder.find_path"]], "keep_running() (pathfinding3d.finder.theta_star.thetastarfinder method)": [[24, "pathfinding3d.finder.theta_star.ThetaStarFinder.keep_running"]], "pathfinding3d.finder.theta_star": [[24, "module-pathfinding3d.finder.theta_star"]], "process_node() (pathfinding3d.finder.theta_star.thetastarfinder method)": [[24, "pathfinding3d.finder.theta_star.ThetaStarFinder.process_node"]]}}) \ No newline at end of file

  • vqtYY`Ih$a4sV5YzWMYG-pqh=9~4ab`ww#Jp~@WA9jI4W*1BA4V0Mi*|~ass#6 zIa-QA{!ffWJ{?fax*j@WanA$Mh=aJF6yl!U9b`WX5*k||{RA5g@G$^}yju~^{o>1C ze1>Z}pyP)5Iu}ACgZBuF<*9{X384l>oxc1?qvl35^B)Zm&g@m?g=1(i^k|?huRYM} z7=xjScohGUE*)5VEQr4M`g`Q_Hw<+;_2ug%?Is`nOl);CKSPX?OKL8uni)17!byp? z1C12H9$K8rB^I-Z#*)qyw2+i*j&mh&Aw$oO0LclugRl;IP-CfBEYr$_u~?ciN3AFj z26|GX>gJHaIVK$1tIBYWPld_>vD7+L_kwdGCI!yAluU3o)LH3Jx)7G$&y(03Ok3x%py<{{-R7UbPd%e+FoKAwCg~ zf_PmvCd3=+bn&7box0bsxIaUpsbS%!%EAl3f{&kT4U1Hn{|hHfp8l_ANY$=vVf$4O z`qknF3x1R8nD96QownFjT6VWYjs)QM^G{YQ2 z6Vr6#3azCbV4ZYOyxGgHicWH;djXbvdMDlXhmC~|L|*n@N%jYU6*Lyy3^4yYU!?K{ zx4RKLnT4zz7qyA?;dpe0j5hIKjF#e;PzNJDV6M#fFXrvrq=1zYTzwQj1Wuj7@I3+*XwN3J*MRg1{dW0#ADiv!{_gmlZ2bb`>v(mH#Ou^;D3g*hJ=E zu~C8x`1EwkL3sMPdrD)|txCPN1MZ?cch6XfBwj>ALpq9z+7*4)sgdepSz&$wH-EOr zLSFMWsq+;#vY0pV*B~#~v{s&=Wcciwhr-}q)F|zOd#xr)t(kZ}FeFb+aP%8}b}tYn z00b$Y96pifU{GhZHfU4g78220yQc|ka`Rk_7U`+?yGsX{LT*M-Iu6SGMTE9@iGOM#@6^{gh}SV zdXk1=o-WhlhGvOUD8|uywV|jE4);9$-AUX1KTlV>mpUk8y`1^tBUNhMy_8A@XE-F{RHSXxV zz*Q$+eJM_Xh$>Au{Q)kQhkyt^K|fzKx;GjtR>!8R#TIxC!L!lq8>>Um1h11Xj>9<; zcyPpI9qyH{v?6lfW_`Lrn)2`YK76Av!YwCmWxrPvq8T^P*TXHKl8sI|>tZlcvCHp0v>H|R{U=EN6pphY+3XA21V`ePgnNIbHMos(vNp4(( zGmpj-&g@kKTr-D(zd~`%dsHyK_pLDMk=_O@vdSp zy7Bbn6iv&5qKn{(Aqa4*f_bSthsH&8Ii=+q(%A@l80Z)&uo=qObVC$s1IIWB_-c&- zjsGdcuqg;;Y#^LYV3ryPSls=AaG6HcEqyi+UO_mtSM6jV>;T$c10fNUG7xkrnFfNP z&Z+q@AvCSi^aA{88FCE&7Hmmh+>AZL(kZm)_#NOAaQG;|BQpJ#rs&iGq#Aq2>i>=) z{4j*Sk@P!-a4haV!r!A&wZj(0%@F=>!lAutCkTH4XnP?%5tD*&T}mc|8|thJ#eu-K zPR$G3zndY!9N11A!O{^h*ejBDM~;8N7(bi@1E(urhs#b}J948=cKf5DE~wb{bQ%3a z5Q-SizeZ$`!Z{WP;hbiy@yQlB6h>(08I779v=Y9bCY;%;c7pF818pySC*o1?txLy* zZ$q7-FeC{1>9oAi{pAe#g`@jM`7oH#dc8{K@wHNE91by}F+x6(Zs|psSM*ov%l==-GR9Tdo zyWE1J)Z7Ux++l_&HCbaiqSW}DMyYQ@;E^ab`Q;s@c1xH=)PMV>e9*@C<4?^?j;Vo# zxHbgq;RR#WVzW6@l0ByJ^g`ebA5&Im5?0ACC#&1=bptfaC|E7TF_gEDQ!-13=#c?K zU<8XpczwXoWPNY~;%3?ko3~mr#pU9)z9`fKgk# z_U0K(i(J4q1(%ocg7ygtPsuA9rQ&$2eDw&uIgY)Deea!3=BQ1?0DM14Q8uJ@dj_Mb zyc9gc4Ev;(x0Lgl z_F7tb$R!z8x7@S6HB&@}hZKe>0CKW>bNj5bsr=8YG@7mR$jK5>fglwfWZ8VJooSz% zU28b~7A=!PXn=L-R#pCm@?E^3{rWVuLUMx=IbmTC&fJEL=PkT*Bz*?M)=F`rUMp6& zL97MO@gA;~t}itPNv(WKc(Nf%szhrxZ)S%=;a7~> z1p(hD5->7RygPZ%+=zef;g@LfZLNg{_zx9jn}ZO#7a)YMaT$CbJ-i$0el>YP`yJg# z&Zd~7$R3{ByJ5UO21f#5R18)wIpIXpv>#4nb&LlcE={kxLf+3N;-DH*PXo9{xrzQ%%AG(yLavneQJI?-F^ml`&{@&yyZr2~Buj+4w`Ge1qX?rY?`ffKf zIW$e#%&F5)_< zdh}KIOLHiUvXfI`%TrUxl(Kqx72YvXAiDJ7%8&H+t=ikQg+sgnDABE5y;FOK=)zE$w4=6%p%Mu4ETHAg$WUOScy6~t)AmB# z9=3O?1mL1CGG%P+E;ed2cf^;#D`TSJZTJgO7;lGPZ8KmLb&y+x3Q)N`a6m5}L8J%{ z*OC~ePq%@_*FsfXyFsf{@h81WY*y0>C)ssDIf>SRe6 z75GK%(T&medaXpFH*^qc@y4VL|1K;NCE~+ydr(JNP~{eAWC*HYv30ytd##?u*2_D? zSri3=!}~R=ZdI`0%Dsd`dsTUeX6)~Lcpi*B`D?NiMl!fhh7;!HNQ*jf5yWIT_QzCa zYX1)cCGxJ5-=f!_%+qW3j`V3H>T8{A-oMN9;=c(Hcl;n!HrYR7Ajua`7I*w8R1c6a zd<&FVmJUi&EK9E=KIZ!RJh4js@y!{1#;P~WgAvgmzm8PROt4%=SMlyUI{4b2fA`qR zUm)iNc$qv3?SlY0WFz_)ghP;xniPq}GA-o`ZW_^!qq&xyqtbHo#m4c$(8&4W#eq3q zpDb2tGoipb6li+^D-n(YEL}DxVCi+dfc2k57jE%{0joddu5e>4r<3BGAPqC*ok=vD zLLL@(3wc*+wA`X)$a@vx%U)Iff`lUPH9*@7d5Lfo?)9)K+q@4zX=8vvR{t_7p{(Q2G?eu^UPJk@3|ys#vYRSPr@Fyo z7R1u2aNV8dO1OF+0I5Ho@Sw`lskp0wy8v>heOx#)QmIv1BO~@hG-L;)A%7#nl*>BY zW!~Owbjc|WOhfx&&ViN)lIo%(5#)|^tUMvRUot{O7{6C^k2(WIfiUH5ZIJ%Ng@Cj#6Ec$qmGLV^1@Yhb_c70I#sy;0F1YdW*B8MjE%X4aCpXU?& zyR-im{XOlezh63u+x183tNODg46sSN?Xj@?3(s}UAoD~%DVsSp-R*pW$k{!MB9DSb zK8A7FN!+eTN?%o^cRs;J_e*mOP0CJAg>@^R;8o6USrqk3PeqM6iQ5%L>8pzJ$|rcO z`-M4_L|F+@lDn>&PatM+@gB5JBolPs<`cC09W&?|YodYRJe6orgr0OW(SXL94~Laf z{4UTh%{6!cezi^6ux&BR=0^YxIC?0Z0mL-`>#;HRsqo2ASdSt8s9CNz@PrAHx*Sb6 zF_D?QHX@1jV!s*p(uFq^pN|hafvyLF*}28P5sL(n{s&p-K>D*9P5+A^A+l)tr?Jrh zAFlAd>Q*%Uf+P+uqUj`zF3QPPMr8~8I9&Tstc}5D$X(G%bdNi|bwl6gn-JmXGlt!t z43Y?QEIt8^3}JUH4stAtC_8t3CZTKr{GVu4y*zKv5Dx8CWfx;c*gbV}$xnf{?EXT- zM9=QQ6d80fu}FI&CdK`wOUdN^GSpe0=o4%W>~GBmg%F`m&i=td?%6raU&|1o6SnN}xh6}M`%+&ui6RLZwK05SWkqbU|pAu z3G0SBUA*y3r|vZ@;tYv~4~rpl=p3S)!x3ze#HYAzv{@Rf*T#)=5jlMBjHv%b5Qdl? ze}wcng>5Vj!gfX&?&}&oJ7`hF4BuZNyxFUEg6}7Qwimt=0V(*_>ZAZqp+eQGm$1a2e7YDCwGh# zt8fr|t-6<;N&=gQOO2>JJpqTm!V!c`a+Yhk2uHY*p#Y-*Z@RA3nrr(uZdwl^vtkX7 z=qZ;P@CNv=1_x3lRY+T$`;6fYv6Hxc8OId74xa4otKv-_uoroX-hQJ^i$tOTpFZ;* zOWEg(&R2(l9gEWEVgWQVOpUNOXh=DxMyoVhZob%X>L+~Jt9CM+BB1RxoD$(E!%3Ho zX*e0`eEK&Sl48W`9rGIT^D>l~8u4zbEL{I3k7WxB*W<$8GhF{k52`F&&wUv@T<_+Z zohZWHPr}b&IQ@jo^&O|5;B$JUNFA|EPCp^PoJWd~*gHE?BzJ1TrQ}TPk>noGE@T*- zn=ivaW2A#bgEI|IM2&g@&sE{qcF>zAk~7=*fe|7-V5!!cJ7!YlVqo14ij*y`YWm#C z0=Fb>+kbF?CJUqlLJvj|IRpI;0Tc1bM+Ph)m8n$4mUOuk4&I=3goNLlNGTwo|88jH z%C3^5-R~rIrIQWB;gW($QI@)H;*)t8{CFn}N|&7o4y8i4U4-0`B82#rJUo7>6CU+b z3Fz`@t;Rtv_N!jSYzb8@~g&+aIx^qqB{kJwzlrkO~p~4s>XiLPQ5& z03W**7%Vy*ewjl=DHF>hMaO3MR|*($wLr+?W`-Z1fYB>Rz^Ddi1<_zpvowK65JjV~ z(-p3Os7aSdz?uVZglJ7S=s`?u&9MuXEa3Bng#w&xOTR2I!R$I+F`@@Rl=csgCEWCz z^qBz_u4H{QMx6@TH)wj_4RKPCFj?4X9X1-^mH<9C-3mLcBA-C*h;Uk#+#sc`G&8=T z+k*PX+%^|NBf}aKi)G+tx+J}hzaQ18s`Drv&TO?gLO8Tnl~v~1|Hw%|!EIf2xhH#|S+c~6aW_W02`Y3NKv0>6NWx5w$ zC}YU3Ldoax4#Fh}QgxAIu}rHwc>FVss+&WG$Bz&W?Nwzw#=D_%Kw#)&P~8iUiI@~T z>QXY{(NL#1QLsRxUd;=Q_hg7B9F6U4U8j!x1G-2ajx#&B?NOuQ7*$@0xs zy#elUw72N5F1DiGm1;E_g`3P8^|4YD=c+h|rR#3(kcWgIcWOw>Ffq1Ix=_WW9U2n8 zhoO;SqJYI=_$KGbGgmo1VP0@{zDCW>8N>Hh!kN8lC-}Y)XnWy15s!jzT{oyt!1%W4j3t6>; zV8&JgcVMHemB4CP0Q2*R+VjzO%10voL-25a5D#p+cdv)Om}HUNE=zVXm25;#=3paO zDHFZ>bWrb@gg=Rmf+Tzh8k3#;3Nm)Eui+C5FwjlSSG+mwz<#i|dRdS!5rqM#b9YLC zLoCg(uh2xSzJv;XptYP811Y^Zu#?v~I_b7DY%Kg8k(a$!XuH^0Kwt%p1vdjM#KavJ zK_MpYuo5^ogqX;x!4YD@=QPB0)J5=%gqX;$eGp1>1d zQKMeK`PfKtkj%?QMhBxr0OZhfLzGD)z&`^^^>Q&_PX%4dLtTZoJIZuo(zboi{)sXv z2hR=by-aOGUF8-io!v^|njTu8icy3alwvsckJS=Fy(AG#Kw#+tXyhAM+DhuCI2|=} z%8EIsqmmIE&%^1pop9Qv!@Y0J!}uO5w#?0+cRGpNw=z-s>Q*M_X54qVUzB4D6J^2v zDUrjI6h-d3YM4rl`1l-TorI|bfp`!KXD8ItHbtlO0Z&6gj{p;vP>|lh6$;YoN}(X$ zb%-MjGX?sDf{wnRRGotKv0c+OaxE3+@spPbyUq=^PgP-VzQCB^a{|?d>mF`0lNmU0 zEjCE?b3&@=Jwe@!&irGLSnBU9ec4ELavj`l&i{i6GJx#j;8H z1}%M#PSp=z^1tj2jeK8Ab^R0@pji&I)rAEPDAoW?DkjbUVoC{?N{dU6-*k_9gNvn3 zpQ31~KC_}6Y(2+9{+y}LFUK3eX#l47PpoQgfQF`^1~hrzw=+z`!RVQNJUdGBgw4~K z=0T`>um+2JkIn4{RliILo6lt&x~r<#Ob&<25y6_vp?VNDQ!#1SG^J$2rlrn4s-`74 z&6+{rd{&Nh6!%{sI2XcZ$~&P~D*W8qSKQmTGf`xqjKwOg{9!iTJ1K_Qv_LBB?FLmp zhXm!fFb>^SyMgkb1MMIvr()8eY)Z)nWlNoIHdC79g7E%|91&*l?x#xb?wYMy)aJAx4<|piylM$s%y0-~$7I*hgqTohTtH-fX-qcESckiG2L`v6H8Z&&3 z1W?G7OGEhYD9*_7_a6aTBza>edMt0v;Y~8v%4F{jyhtBB+_sCrBe}1@Mp1HCc1&4@ zC$vR=NU3D39L!i3gNk@<(719maO9gqqJT*KPYb9@>PJ~dso!t!fO!1A_?-KFuY{g)zc2eW_kQ1t(ZAQzodstX+gYIV(S_Id9E;ai zCtl`z32?nJ&pCCH!vRskCk9bqm4mYxdpT zNN`lXL`k6XSUM%;UHW~M!fYP=ovBnJe7?6sBi{(5dh2dsbrqlQ-l|k31^%j+xZ4ZN=|^~hzvF*V0WUCT z!TpWM;>urF_X5iSAbB~mZhC>Qg~B=V0zWNx{G8=Z;NJibb|(9mGqr_IZfl|8y8|d*2l(UoiwYYV7ptO1IK|>@s0Kl2k}B3+d<@ikRqR3|M1Ev!O>*;Ky1`6OasREUipW2OJ3^wC=rm4ZV(z- z{Kr_V&N?hB2iV2aZ8jzi}!a&7omR z$L7$m)af=a)gvBlA?}<|JGd1E`uXi^RcW=uB&+vCoP7f znH52}45xbO@Y%+Zlg}jdn20hl%Fcma3S6idbVC8VOL%@UV;vNt`<$^@rIm~4pm@kV z230?YgzMKb4&7B%TqjpTMe0e$>~X-zr|+a8a=TB_^y4_OV!{m5Y7PfgnFLX!-df#Q#0x%U!h_#Qy`(4nlk? z91ZcNY;1_P)al{*Q6}{uv-o_DL^EdLr%ImcqXVdt>kMa3fv&R^tZGjZvya}YBiRip z6aY=~o`#L`CV85t`hW(c4dc;6V)~yZi(8(^0q&$I?#NwvJT&t86|f^DbL>cuWv+Rq z{od+rQN1JCUyO~SWZy-~_INOdT?{yulx^qaag-?xh7>Jj8%uMBV`w7h9}-|MFw6gHzC?(PeAN3lc-yi?gv~B0r3&tPM#csOd zSC|4LN3e9ftH%vU_pn-OImqXUR00vc_a8wc-#1eAk^ViatN7mK4s^++EXy3^^SdGp z{-zrSl~{%3P$|p?Fb=v{|AH7J=C3M-N2T@zn9>Sp6emRYkck4<9nBKi$@fr#rla`_ zP&h}9=EGgyUavge1vi6uBzfOc>`3A@G*ZAst4gQ z6_bWXQ%W{GTI$#ip)sokq46U*qKQZ2RhYHH!yxSZYW62PnuE@1z;E_cv)!(bG^+5i zuTHhs!C}^Len+KUI^pa=^fvXCM=O(fibtg+oKHxmP0JJ`YJ!i%B8ATsv|OPwvf#fQ|q z`K};y_+zX&_^Fa7`I-Q#zFTMReRz|z9tHbG|##k8|BTjG*9v>T!X-_ z@R^Ab*iHzub(+n?(elE6eO07xUlheJeRwCKk#EU|0|03OyB6qA3)Mn|Z~3mM-jO!$ z#70rtSh0O(s!_cX4+R;3%P^+B2ZAhSm6gqJ4+JyW#hBEg*9HwsZ(~Y>VMp^XV`N7XH<{uNu#_wks zaBEAkaWt4H8}~CnK69}&7A{(UBT9D{{t{`w7N0qrmwJ5W_?-L9mpm7Kv13lyuetY` zZ@IQwof?KaKqkR4(*w8pnfRSR|1*#~VQdJ0Ra-+Nt!ia#x;D(Vo7&vlDi>X(y4zAU zRnp+|!Uc0#Nn_tveJ(y_dZ9GGBSAgth@_*{?=oMVw(Y!jA-K%-ew$wNMI@@)kuL#p zJqYPWXE7z`KC(5+3-DH~F1Dker)Nuaw(+_^mwf$t%=W zqWC;wQw(%Eid7}!m`m==g^5`Z`q@(GS&wG^6nn|GO1(|@K!Rw+pHf;^MM;aMbkD~| zDK_9^)hkElspni@9i5r3Hz&8lMQG<-KU!sXMwJE!O(a!}`=R*AXLIG;s&2DfX@7wj z8C{R1yj~n7FLFffghsvzzB&=jaXYr33Z}liRowx1rHognXOkO&wmO-?vB2tfY%?YR z1ev1~@QFI^L!BcH!_A0WO2lmKpIFdzXo@l8H%;<2POz%EzQ)s2&2F2SZ2O^O8GfSi zqrD}IAN{eE)`tvP`$a(bd4G`k2Los7mj_U#nYtMA#RtsKHOYM)Sqjax2dGHEvZv*k>RAc_bNU5 z8E#3Os!k5GE%=+(TW0nuJu&|5s})M~I%Jz}p}NiZXZ8oCZ5PJOUh5*CjMwBHSI42( zmY?r90HOPQ$?}0;NkmanIs)@NhEfSdB+IOYM!q?LSb_WiCV|gjbyXhGO1RP$9%W&6 zlg7D4cs#Qk9+zNny&eOzP2fMHp;#!=Q5fJBx@* zHq9rF`?>Ba!t$%SVR>J5^dcLRZ1>5h93Lw?YLNuPJBu*>=Zx`M?snt{y~N$ykvV;R zJMy0EMMvP5qm**(|_PXG?E!B0rkuyMjz(BuBpSrg0%(Wf^AxV5jK; zHyucP!Lrer7OtDEhGR7Xv52E|UGb+B!$Z&`6})cjD2DJMCWee5V6jT8H-_*vgQ}lH zGK4QP4&7C|F@#5ec90>YV$ux3l#qU@F$sr{0)if=;A8-7M+yt2>j|A6r@)@ubyT`Rp&=+zKY@5`Au>ITKV>|T`EB6gzuUJMhOK8R% z0l0RsRT;e&F^%g-F{rz+9q38g5``j~(pBZmCLRqpQXd?v zx2o*QkV>OeX^b~p_37G#J&Rv;OcM0eA}PQ(MFEgZ<6b7fjA>wToN1t_gnwvn_J`!` z{RTBR-ces<8t-MCxvO?#8XpAOL8g(4M>7pmIyTd=)ES>I6iLaOTm%`_>vANYF)BY* zifiv5@FAkOHu|3e%0^Bi*w%gKk&g!S;^(MF}+o~^3>zhq`9@P>~$tNUIi zSY^MwtiByz*UzJmlGSqZH&EVLqb02l@}$*4N?L_KTkYw=iRRc$qY4aB9;DI8n(11i zMiu2`x>{dtb!}fha@7Vv0>^+8Zy#}$DxG{^TOkTMM{B%^*NoK@c6O(D0}Z=jm8J2m z1_`Qzs28QR{lP1IXxf4?KM2eZ30^t#&WzE{Qdly#>X2)P8Mqrd$8hPK#vJ#Vlwr}s z+0N0t-k?_yMk<12ldHTSlQ(xxIh!PXF3V&tl^HJ49p+_c&1`4DTVY72o5#NAw2+2Q zsk{?icGH{I+fMR6yIvV@PF5OQAa*hV+8COw!dCnNmMJ*gs87_VH*LRQ%Q?drU9jbX z?E|HW%JrBU-rlrj^A*F}F57ykNV2$FsJwIhl^dTv4Yzb}C>_frbL{B@rHyc-_vmoD zK0e%@s*F}Ql+r4tV^2Sw_Nw3)iQBk@<3%aBNNaCS-?L{)e7fP6Y_Z*FVF37DnFA#5 z0}SJ9e1o?L5WW`bo}a#;^U5A%Z3|QnP3_t+)*OZ7ciDLeJN#(MfQ5~lwTDva9O1{B z5M5q1Dc5@1ZCk=dx%Ro*!`jd+ME0O2vZRJ&IJ3&Z@j74ybNd;^l9`=3%zUf%Z7VZh zaxx>cVXm4>b75U8D_JSa#M|hJjQ20$PlPbUpHc{~_6nh9KPu%8Xapm4Zk+$kUgGXJ zKc^oQ=YO~V6$Rq_{N?gvF22m-V=FL;`9ZgGLC7fBiSn6`TSl#YvYIeLwMcgF z*WT_q6!{;4id=lTZ$jo)B&V+{vQK`>(;g{BvPTE{Us^z6oSlLSJ0LUd$S7->s3JNh z3uLzjyxnprstk=nM$8Rf;%-H8`nsZ)iRo3^o3udo=6wGP3n+=R5~C!4T|G}qPMnlk zK=LG<)h%W%dCLW54@c)2!+a6YUZ>4;*72ppIXO`}4NhY zvy_M^GwT}+ylFwi&WVLzm#l-13kW2);#*)xCVW`-Q8-ihxZU7GpW&C24M2`3ku00q zHON;K+H4T@J_MCOuD1X!Z>&ZGjOM<(8=7{O;;y1yQ&oT&e~~S0zq8VsoV_Et2=&Vp zz6F0F9+R!e>#>2_VaM2)k@5Zow)6l=B079aC=@#1IG8+u3gjte*W*t(1QT#QrzvG0 zr1uDikB%ADrG$J^O4<9cQNI|hpm)96vbTay?Mr2dsxntSH#s>*tMm&Qbr7LCY^|@|=I4@#U_nnqF*%*yBK3^_=TA zhze&$wK_?Kqj}Cv*`S}oyh+)tJ4b_tCP>Ms=4W0t21jDKgJ5K zTn>7kjuyAtunUB|70}3nJS^@N^41u%{CpAep27HXS5=Xh{1@oKHpH`U0Q<(X>SCkm zGl6yx@>1bw$TMYQL!MbD2zgJ*>2o~tR?5Xvsmw0jbPjClB1!}YWozX_e^rz^31(NY zu4M)|ERKSia2o~PR*9t^8{0}Zmi%y&3qb;#ERf&QcSNa^p!RmwwG7m-I0|Z>Z|TPkT5jwpF#9Ou z%U!h_n0*px2f>UB$CxyLvc!sZFZ?YP@XaC}rFX1>Z=_g1*ybuZru=x3SO0JhW&A{( zi~)d}DVzASnX*|Y$duob)8~vS`>9fl{nG)nAd0c$ggkGJLFehcCx9x&*u@$|tPKiB z2G1BCu20sdhlibev4vN{2;Y=2{iZnvA;OcaOF>7oA@M#VR+#CKCssJ4$5>L5^Aa?a z5ujzVD}3!Q3*;Da+7uwXiULkl{&M%wrv{-e6j|D37YhL1RMRNMOB7=ia z-}S$=fWkOC1r^q-Ak?qC-Et`E7lDfUqnEf_QJlW6sGuO!Q=aepCMN}y#94_^lE1DV zgp%`sAf8JUs{XChO_LkD^knc~q17MwZ}G|Gch8{t>SOv35N znVC2);4nw0lw$&ftihFeB0)4Hl=VyuOO@KSW(zl#67wUM8P zv%NqzBLs8=;sTvYf|NH?cjh{<^86^VQDEhAY}79d5T=5?3alJ$23F{A+`+*1FpZ7V z!H(s~V9Rt=KgmHf1&u5&Z!GSWgXj)}mcAx3VM~6<+ZbQ&s;Yx1HrR3}&{iEpIEe7= z_!#g+7XbxZQsHRM3sW{W=Y^%tK~_ae>o%LXKN-j&9k@7=BPPY)k+7<{@tHr33z|O% zol)`W1`0}mu>Lnp0vTs07OS+n2`v7dLCen&aW8azuFNyHGs{>#1-w ztedj2Vck-vhZi)P)Pv086FCx%H;X|T{!xQR;O8I0bCB^V=GV8Yqs_@Ne!GM*eh0^t zp7H`6k8WTn*j^5eEaNy9M`1h15q*?F&(9m-`$)!{yJ|Q1J{o8T;X4(OhHq0oHhf#^ z9OBZu9L~*FLAYI#BdK`YKB7gUSiqCOpBO*Kd8}?zql`6HFaX1$XZ%SgvT-7RYx)n18umad7P^nM0*Ys`N zbR2k(E0eHuxmIn#8{of5*r%UXVQq2lGYaRslqPT|2s>N6ISEg8^)>KFWZ2d*#g7s< z%u0sJJh8LqN5Pgp7nd<*WIh*I9A#3T*x95(%WWg5c`~PK8DH+I-I&u9&<--ER5+SB znX<8&lcmll{)8bZE#B-{ki~DyQD(;C{ZuJnH6HN&qkt7IbOHlbmj+O!fR$L=iGY=# zYuXelmfdpQW!V(U=0BcIq4=EdwEPTWnQaPXzq~swSv-n%S{4qjomZKfYU~=WRcBgo z$5DN>c#LghRE*7dZ5N@o(}mB1=h_Y#l*@RY&~SyH!#g}OP)fVHX=`(`DmL25nA!dY z0pS42luIl6E@(|1UiER#A3^(e+P3q?1rtHbh=6Y`lYz7&{8HtKm&$&uCA>bDrLq}I zErt_#=}#%ye@mqk5eNG@H1cI1tD&Nwvbq^gN9>$ZvEXz>$+TE{r4IuR|MOnZs4%Dd z=}0D-OW`h0pYzVZfxNOriulMPjIU;l=kIqL^b&VF&N+SEalSX&tLO^o?B~ z%ffx0`m!D0g*BM>&o+bz1%Q9|o2Uz(IKL{B{!~u1n;MTgzuK6B1;vh;Np^k<9^}Oa zPWg!uXbq_paV&wOEjJV3Nf>Xp@XUe3QiDEOS)+oQxszVlaLqkdtFFevxR zcfOi`(@N#7;vi6V%mq8qkPq30%RKLs_~%jGqjlk1p^?Sag2n2@CD)Az!>%~(9}f0s ze@NW^wLwjv2AQ~}mEnVoGj~;WWfb%)2juhOacIU_vo35|SHG8K=>BfxKjV|xkE4#Hz99u1GCbZmIE)Y(VXumq%8 zGYF9X#PsGDy{0c?E7fXD&Zk&Q43yPRSgDwQ6N@6wX`QQ97O< zqiOYDD-&Mwv?(Q06sJW2g&=$i14;(MSR4i6Wun(&vLFj2hnE;s{Td)BZ($s|t9AqB zZ9qE+%Bh$%D4SBULD^F0xM)yF5t`(J@P1;B2r~n)pDMY!?hUXaa&_UnB+%7$Gpm|E zky^T~Iz7{p*NLZpOIh6;1vi>Py$&1YO`)_I^j^me9VbxFeoGGC8N~s8E*}Wc7ReQv z?Xg@VZZH3QRPRW>pT$N|@>K$3mM277nVv@B~&@VN)LGE}4{NnS0+ZEyCc%-7pw`72&l-cpUGB zNAuipDN6H+<8HcJim?2$ZdmTo-E?m*!uT5)9;|;O=i~mIh zl*CzxQIfx|9%7MSzT|jhorPE=fn+rl_B>wEF(WJH_m0Ohp7KI#EW@nqie(t}lpO)0 zr{Hk!Cw+l0J2#ebG20O^3Fpi5-2mD$yGZb zH*1V%gHOViTXMJboUSygl^{a*q{#F(QwF-Br~Ud2FQQYM`wy$8mhJMoLmKY3@8zN;Y?%rB0usW@*@FMLA@f2hS>N z|7Yh2M{(3`WL0w`C9AUcHerbilb+f7J@7&mLv9r!mxRaHFfKFhWh_={^#+fBX;AfZ zNO=4U#-Y2aipOLMDn~?0-UHQx@R*88!=ouB8y+onmZb`oXf&$@p|O)Ans_wsmg`b~ z2;ES@=GL_W-0!izXMl^vDy>}Ldaq0UPlKADGXm_d7-#OP-2nE#fp!pJQ}JkkHKk(% ztffx3*QJ^ygTVdW95Kd&dt>TPQ?3zfPd8hTV<2#z^KGxx-0S1b)~r7{A#*r$TFh?(^)1O zDY^11uF*%IIT;3&HwO&{`vOz!yT0d@3aeO}Gf+Y&&CmBUj8=2gLH^c)odbsx_N_hQ zP@B-MB8!dl(ktmeiR{_c3ah5tKu3Fu=V{OV!z&E}%c0Z0upSQDGzg$YMGXRe1}LdO zxCNt<3WV=h8n`8?fUU_rNd@?vCl%}jA@HOE_G|8w3eMdDC)D&Jr{J`xU1|DTyGSY6 zY@`(Egv&gO0GBql%j4|(()QD7h%cR4EWdfL^_r_cYoL?1?Yw&4vj(uE)z;9t{2#O1 z=2o<$@`cHlh)TFUKAQcmR3H&40S`bU-`JrBA>YR8sywEi#+nQ}?kx-9tHb_~3ja(I z9zWR)k1I0=&Zh1^3q@ ziz|O!J#H#(KY1&%ZpKY-hr-^+P5Zqg<}44J9#pY~P0b-tL`{$Ml2n4GqMI-?xPz1x z5;R?pBNX_c;P3}HfMTH3uE2pRcqZ1_Nu6C9J5buZcA#`-eGvb-;Oxz7#h_iFr8M(? z5P~`-bx$sFZbE_21vrX>v{zAA<~-zie3Z;+g|rSE^$R0_k-S$S&)wq8-x4JPavxm) zjV#ViELI_CSwrYiQLi(9#GvK}G&zul8E5XQsskxD8af8F)x`%6JJx7uDjv;&WJ<^8 zK(f^7)|qdTbdUMzxUf1oH%E+$PwFgIH8*ZLh_ezSoX?722M^BW(gCxLVavY{wv0zyQ&K3 zWG7UP2&R4rst3V26_W;MQ%W{CTk5RxC|!Qc%!Wary(dRl@u2-HGchdINne^oJZpKDJ50)EHL+NgRAM4gX?|JJ~NAF6#A(eeYR`x{nQVN>Si zN+xAlW@p`@MHoB?8u>ogUIyc15yutbaUhyU_uz>A(S61e*~zaFH4CD7;WiD8Oa3s3PX7a_$-Ecyi?dmOtMcuLsjbJ6Ef;ag>Pw3-top7ajh5Rq-n z_Se9H#B>J-o+`X~ZT1F^9#E3Q*z^4uQmhNVuk2IYzYqs4(8lG|l{t4JPe#d1Om?wR zzpx4zCVJ&W?)|=*JEHnWuC-gCk;Oxd#X0j?-9s!Vm>$>KTMer2Zvvv091U+~9J;Hj z)8bf9@!Ns6Iw8gp$Lc9g#iThJOew(>KXV7VrH*~yj9Jk=ey1kAI(d1HaIoqPi$Iq! zduLU1{lC52H}iM!LKQ=96(W~}$G>GK9R)z2Z}@t+un?y4#t zlaD~<2v_efpn4Dp=ZpY*BIC?mwHv^m3bca&n~FyRtSKEEU@djJ4YiphgTTEyM~oS8 z`>B$9_Qn8{Ay?tGtg4?X-Sb>yReR!|y)g=MG;7+0jq+wqntOH?F7x4(_nCt-ptPQ!&r9dnOCuGhI-Ia?j_9MR@QWQU$9~PdBl_%XtJSGtxUOsx z?k6qoi#|2V7p=ati!5+6r%@#fo+Vu9mTU6nk$u(Y;-jS(N<%vh6rqkiIxhWw=u^_R zojZ4PcDLST(+j2;;b7|SFG?v=0FC<7^?LwD*QG# z`SoXzx0+6wl#9;z1!nLWE7Vrvb(Gi?gO`q1Ri`+PlEZPqp%dhNjg zacv2jbN-BZ$+k+pO}FKORK=fCP}fHZie_jt*a)uv#ea@?4t#rh?OH=Z8vI+l?q8b8`wviQ*-OKCl7$l5Og!q3-o zq^05~c`sCU`|vXOc?_xt;paQMV5NM15V_cDGN|wchc$bxj`He4M%oGeoF-bXW2;;?p25OobD%CG%Wp6=_?#W3xpS`wx&F2d<`-Ebxku+oKU{?IPcz2z&y)U!m$-Z5EvK(< zymg!>{R96i3T(OMFL!_Vv*U)puAV+6$N6M4vTnLA)ISxLKcHd|dGWjc*mNf>48{=ul6HT}UzCK-I30lpW7HcZL z?DP0WIUX+?_e~oXsJ}$j^emznbi0^30=g~YFA2W(u|G;+~EO`f5tWH~Pj-2~dM~*k|V2eRbp9Gs|ro4j-8E5XQ>LNSGNplczsyS&c z2HNT(8wWb8lO`39mUm!E$F>N!)af?wz$EGZ#-vWv)yeuCF=AC(ln=40xt^VC*w)Un z*!#+^>%;Mu74NK;8ue?dcpL6?wLRTeW>4sl1n@UwZYzwr$;`wQ-zp467s4NxG{F~r zX|>WCtsu&ilv~rOjlqzIJ;(x5F=-ZHO37vcmO5K{ixc_1G~X3u8ZXU}Z@g(-$QM?|{&zkZ zL01E}kuptCMrT^G&@ddU5r}mg<;aRZr5L^mJyOBz#*ShLk1{c23;~N(TD>uZe>AB2 zIV3~)G2_r(wHrhDC!if<2&tGfLolUeGXzVWlZs(NYTBe31o*Gz$T1%9n{gLI_EUhR zQ#hjIcRU0f!Dt*;P8;ADFWNCYA2G0Ir7k1-8 zXe0H(v3jdIiunVThTPKDwoY!;W6ueCYLOJ+Ls0-E)A$e*V8%4CILV%mZ+eiAS~B>3dXbIvT!&Qe%8x9X5JhY7PAI#1`4IgNSgu`}=yI$=!j-E8M5 zUTe@J0wcvhvd9%&kinasNo}3uJg`_;7m)F1OxLN~@KQJ^ggr+yUQ) zHGF9i4Q6KlHi&$S{UGZSLT$6`v70~8sAVVB6P2Xx?|}JI-MRQ zK$GE4?bXQhzQ~ND@nQDns(ckF;T94uJ*7tPzsSf zsEI6j1(M;6rpfEc3$YL~U;zdBIh*(7F!HV1x2=qP$;pUJMOjMd=EC`5DoMRu#`5*@ zm7Vl&DYw7$vg^3N_Z`qEG}Gkm0d@6=u|%+eP| zfldF+b{0dHYkh2%>AJH7{s6eoCd(nVf)l0R!pk-Nm|w|c7`hn{#$K&4VGQdDIl@l|U|!11%p~b#-eil3zm8&QeT(-ZfPPknk7TA`v?)t;yLt zl8aD3OkrE_7mggsR^(ObC9+mV*7_IV2o3T=75lz6$Uoo2kSt1|8$1^N9cabTS9of1 z?(lGZvOYaL>`cj|uaW)RU&1we6E0}(*l))0HXai1Hs&OvTLSMj&zz)e=PM;`PEOJ< zOlO&VJ2whhAcyKBP}pGKf)&FiYQ8VasgpdmshDH{xnpyWdHUG7CeczU`p}4mPhUdGcIHcXFm$6QUqU{5 zvX9}FK$CwAN8y)q7N*#dNZ5K>o=vWqg>JD=sgOVD@eovn>r?7n%b|Q|6)yyg|F?Dp7VJ6=6-Q+@zm>o#Ss4>IHA9Z*-;>HR2OKIym}e|BT1f&kd5AnUNxP0*2)3sp?(^W?xRM+j?X>$Ra)j4olZ|BVm${0+pkJt+H z56|@O7{}0J(t$xn-TJ_*?eMaf$@j6t zY(SGP>*R}2*y{l;Q2Tsn`&VGVJ+zss7juhau5+wXp-{f$6X^Jj}8lM_6uot2#Z?n&fqaqi(C0>f<-v6G>Lu!>_4p zc6(5xA2N}YO zV+wjB{fO;M+`}`#%b0>j(OkCAaZKT4kiNRiujR%RPB&T@Ft^7P@HHk*R9h0uT8t?i zpT1zXd#p6g2&cgu#S|`0yKQq9_+tuEWXU!p!#+`R?U4*%A@}vT&@V^8N)97F&ySsv zId!vK=VjO7W@$mAP&dnDKwaI@)Q8=dXm-G_xfiD;CZ%}Wr4>DByha};<6;UQ z1X@0{>gv{F3ZI6i@iB!5pcUW5!<4vyV+z?38onT?V&B(BnYn!fsuKGC0)H~}6?SCB z#}qXFV`Br;I7sNt=@s>D`hc1TqR)AZ_AbNWy{@!zR2jg?~!h z?)I31T{dERFsC28y&4>&b_qH@c7FuX`GyZM`NEjOlL2-0kDXLZ@>|pqn|sXD$4-eU zIFzCfjcE83Q;=+DzJx!9ZuI0!$i8_zz`h0)$3KSa;g_;n*Z7|G#uT)wsktjFbRmDx z<4;f(u1{%5OhFKUg`Oa54ypMug)_0&ET(W4{$dML_RG7+MjkagIpKc?_D*H9}rdl+npy@@< zox)-YT4TdCX~Yzy_3m~zx1a0qn1Y{9w=spc5UB056#q$GZ%W%PbYXWBQ;@w(-isY( z1DbTeCig&LuLm?4Q}Ak^4{e_U2HZnieoVpl3T4J3IuA3J*OTJ^AB-t{k-BEL2h|U% ztW594M*Ji3a4H)4&GY!^g(TsVAmr=#BzR&9e-H2E--GYtFZMlPzXHAo3FkdDrXbut zz^`xyIr#O*6#hA7`R6Ii?3b72p2QRe&t+RwN@bR_iHCD|0^5+Q;@cxK#Az8Hp_tIZ zEu2ERR-I|VUCZ^+ONFse8up#%eG#c z-4b!U+!Dcr6tf+IQemYhVebh(Z4wrhAGX-nXkl2AJ#2xmF`=lMt5`W>*kX_L1)Upr zPv(KZ4f~kX<|s_@w6vS?VG1dtq=aNRqtc1AMD&3BRmGoD?dx)0?h8%WUoO2hH|$1h zp&WR*$6`O78G0`FS}aeWi-@>VBIR|CS6&Wx(Pn4_*%JRP(&sySZW1qnUy}HxUgGZK z2RVKH_`$t#fD&)vf5;bA{4XkS2q9-d&bQ2usjzGGh;8EHkh)nWhS7{xmhdN{AL38h zlNWn?;?T!+oPk_@ywXeDtq)FL*N5Xc$k+Q{Q9u*?pL5Yk*JIh!ult!PplQx#K}|n}TNX`2GU_Cgtd5Be z$^zM?C%j#9DDOvs%KLXOakug~eO-Bb<5WxZg#RIXvB#u7^U>!qNdd)h778ln;Ayzc zA~PY(D5y_X6CG2FWcLp9cF&=tgP~E#7wcFrakr8{ zD=|v)*VTh=*2(NV1>KVMFxENaYLc@|T*fBj}IuB{EF#k#M({ zaBSwDl-~mjPItSJVRBe@*J^Vlfirl#TUOs_&5vQDezEw5-u3Est0U9(XsLWw zrO~L2G^(W=OSr0Ihhgz=jD9qsvSJm9R4Ek&@4txZD4kLDGiU@e0`o*#ELKCJnsL&_ zW7=8F%S30=k4IV{KOT#kI#s_a=oq&@G7jBURb$IJlldXGq}(rbFh8sJ#C7i?npx&sD_ym&1%@{V+Pio;lQ zqEernO%8#|wr%%pUp_lGfoVtFQ??GOM@Se@sT~bwf)bu*?lCj#xaSJ#sI)ry#~g@Z z)f@0=fYr&5S=HS0s#ox3Sg8!>kvi>KxIM%djGQ78IoCufkSzKtrofCvV{w#4vm0-T zHRHLeaheqi=*(xkI*FU z%=0uCPwCX$uu%}U2pY}RM{_CA4nkNe9t~lpbZiJS>jWX}XFW&QO6mJ5m3K6n75Ar8 z^@))p)glSBXGN)#fOaBNX9j3k90jz+tP^5dNPkJ*wixt+pmrhS&0V#d!R%t79R#&h zKpNCc`PiUl)(L{z`kX$;4`!=`=Z<|nVeamSoAm36F-^2r)?YV8sgs~~BkNiQYFHcv zHP3AAUW1k!JIaXmI>wi~YBw-@1JDkF85d6QLhF4+I!f=zTWIB&@~4Zu`jc}g-1JkyhTX$#fQY!!KW~%=e({qMWvDxzS799Yf>v z^%$DhA9tbuMFnDKoCWs~six;VgNvgl={cj`o;dU|%o)f{&v}uTxLY5bzOD~Pdd|!I zuPC4i{_=vFnD_LYH+uW;(BEvJ{@&>&?$#ftuj|j1e?!B&>#$6Nv;md%Hez9 zUkqC0={hfmUmcO&Z`t#HfYAkI$C!{O1T9z4SZm!eW+d}G6)Be5wPp+N($#Jyw>^?y z+E;m@XXaV(^WYZJA`0YmJ9Po%G^Z&kZ;KKYrKH@CjrxU|!0^+nl$7(+WD=Q@!eZ94 zoL#S`U8^|;+odX#qi{jnj?(e`-c2|k827^#%3b+HltjpP`cY_P$z8$XDBo#N?#g2Z zRo!b~!kc2=k1!71RaGx)PVP$PHsx;uZPkm4Lj^yIh*J7^j@arX6_e)SGo@tn@LB2{ z7YzzILYU;-9||0L*$A;Z`ACik6^G#mS=HR!jHAum4Eh_d4`dgJj*Y{;PZlia=4&i% z>&SB}9=RqI?*)x4D8}L_6ni27ha0r~d=YjJV|=-*s@P4Q0MSPz0v!RggRq+lN5ifu z8yj{lbq=yBTH@1e5`@n^a>Nvm&lh-7Jm8W{@f0po<2zDI^)}pd*=X*pj`fw>RlEUr zW&(HCikj)(RqGv?mOKzzU0a?=VO<)9DZ={2Ojw|Op34QI168&Eg7~e}bcQr7_-Y!4c~d zrS{C!6wFrJv}+r#lAUbA?Qv`hQ-+D`Ok=DxQso!L;uybqEjumwY`P@TY7{bOg=|3< zNWr`<3Tk8mZ)SqYm;e?>nZPkYLJ+wJfwg7d9yIuI+lFFBA7XuTSMA1(J_@vh%qSJG zW=5ubZDwStb94}Zq}WUnLALV79I?gQ%Ah@y29g$rN^trBKE)42yE@vO9J9`K)NC3u z0kuf>_~%hTAtU%H>v6^iusF&Ha-#BkOzZUA$W%c5`y6d_1L8%%P!Nby0cjvMLe*L0VdaH>k5 zoaOd%wl4M@9)-{O;ZbivEVIL-*e~x%Oe|ri+jBoRRi>sIyM|MLPHe)F_hM;sOB=7~ zBJb#AJH;|i^@l41Y|1}8GEhpp!%lJ%hbzepq5U%~@$I9Ta%m|a1C}tI6zagV94`!wBnT=@u!sLqp3t9QhB}#jePm_YM#p% zS=|h$BX&-ySa3R`cqM*PgwucMhSMG$X7u|ajQfk1fC`w`Q07X9nL8tzlG{u~^L@a5uOpggfHHYR^L+Rv zBbu3ES6sSvsJ%l)X$>n53DeLrIQfXD-*5_)AyB1(x ztrkgP#uwR&|y-eTt%`aLkJC4+1WIC}g=SM>xtV={i<5H)KiE zTLYTheV2nx&jjaDc)5xvw>pty!sb^Q#~@TagoDK@t=?esaf7O#L&D|{8HetwDmIh% zK;?+Q_G~TnPCihh3+`&#iq0$_GOu z%P@<@aZpZ=4-vtlv_L9r$e`-ykf8ib#-Y1vH&8wfXa_+#6_W;KQ%W`{Tk3R^KVp&# z!uwNmM3}+5pDMYm+5uKXE-Rd`1iGw-S=Iar*3xb4rq^_KmHsW^){cT3O|7P|QQp)_ zyR>%y)ZbFNuF{Z)F=omoXRnCjj6SJ12WXMxjh*PRy!YYqF0o^6$i}rY*}FfB>K)1b zt=K3^?n>ax@})&vD>tcyWKyf$cD`7l$IdvHU`B=vtFpem^!Wf`S@zrB-( zSS*R6Jj7yIDphOo5VHx0$3u+Ixrg{?&@=8KX20g%L%eYZqyi65;#v3*W^2bfh}Q?~ zNY&rag@5=|@)zg?%NXtB&SBe8{_NB>zO0jXz;^c2X^6FxSu9O!(N2BBphMd4ApQd= zl}|Q0ckWhSfZ1v0zEW<2KPq38BuVKb-W%I+`AHA4Qn<3i|B#|Q%qvRAZj6JWQK)zL z09IG=4)2{V?Q05;vJiM=e@GtJ7vXWR8y;6?GWl3^gXAsQwj}J)*UIulcIbj49Xf{# zGS^@HJTGy#znIgH@E2G8FDl?K<}A3s530YI79V2mj^Zp95(a1SlQiOnIE&XK-IDkM4wTy9 z)+}KT;n_+3T1*)kfNa8n(wX%^{O5wRH?I|6ivlgBLEi6$vgwi|SMq}Ue1NRqL>-xP zPx6PNBu3Nj_hX}eVSVrk>6It>Ed1_qXC3n)vp=V6mFZG@y4k9-bZyu(({9)C^w;)u zb*jA%5}NQqyL7_YgALeR!v}ZW+wA>xJ`yDY^5%U78d+Q*SRCa7+55coOAjAR_J@S? zKN!^X`H=}{a((=Oaptb7u2Nz>%s&R&>JkM98LNjm6_4inFr{O2eOT(8SO^AEj3!C< z$3|H>eKALjiu>bXRyEfbJ&4mG!xPPlAdrTW$aJ`D<49?Rv2S*D*!4Q}+z3F{3C0IQ zBMXeNI10uxJ|aAM2<5F9{E>PXGN}4F6rMcBp}VRI=j6XZ6A@17LA_hkI&F>Op4l!W@Za%)(EVT-l!q_(G6x4JS;2 zzP0!Ak4bK>KHE78B15+4qy62S&n^>AN977X1|BwJXbY40r-yGS=t393ck3VD!PcnJA z)rO-Q*#ZJ9$`VaBa0Z zg*VYo!u=Pqp8a(Jo_&>m7k+)=s8Y#+Uk696vf{JfSAEW&f;H)d(xPf!i}L&H$I`Z) zJ9ewTUhlB!tzSeksvY?fkkiv(M14B^cMSY@Ec~|y{`*kv!(dsp?}C>`_9?jzyEm_% z$OFlBr}f8~wklc8_#uaZ^yTzyVTr7A7aQMt1{P4Ltu&Ok z5SwCT^bgYHhg@K00n)xtO1sFhK1;S$>TNm^1Y|1ylw$gDl$dCe^Z{&?f&xBky>dRD zdd~IL(HTU9~dc#V;`m*{VSwmR)WW4HPPzsi^Z5M=Hh!YAtd4(c2UM=-z^)zo4$ z;+7IITl?oNG;#V8W5#cjH}I3JKhLV>y7o>_HMaKl)=St)(y4 zW$hOM;b(7X6pEkZCm=7k11^J~ z&BL62s?{8=w%fz#nVpL{y-L4}IsG{_3(v001h&OZxHeosc0g0cisezd_%KXtNZ}wayPQNDvvUlr0^&Uv-vys7vb@Z-SD`C zOW%~FRtytMswF}CU=dC~*bS$9fytR{%CeOm_FFReND&6V(hY;l)8W8m(|oeBqm)RN zpD4oekGf%bUv=1GT$hzpvp)Hh_Xsx2DMga;-xXo}H;nOGZkATx4f^*|9}eAFTAaR~ zrR6wt|4{!c3gl<;m%Bgh*>S^PSI^IqqkM7$ihj3vMYIv#=@pTzX1pR}zIwY)4uFnx8RwZB2 z46B;!E4qfI|CB|{mgPC(ILwN{?bWDX3#Y4rpBhe)?<=z>w2=f)9)vSEVZ=>lCZ>2g z85CUze_YZ8-}a^KBsc4^oJz8Oc3%GoFs`E24I1n%A^$6^x1c&bdj^YDTDi!V@lzV0 zWPu!>{=uN?=a4Mm2aH2^Rn-ELcSB{j<0@kTKZfc-7LbZbvj9^{HVd%S+0t8_Nco!Y z3Nno^=EyhRG%n-|IU`3BJ53L`>ELOGP&PW#LT`uFaI8ik)`QnDF>rOrvkFd;Q<(hLIp z0XcGv2mEI68d%VdrBgVf<99&JzTu;QpvSp4834}D`LbA#GkN?DV^R2_q5c}y@61q- z#l1)PE`zEYwkU2w_;rj!chznXegn`BLU<}B4dJGgYzVj1S%=Dw!GXlKNi7K5SLaBu z0Jc+yQ>l!pXX!)-UDAMM*wlfk3vgU)s{*T0z%(u##h~uOw&I$iVO%MZGWcK=iU{X_ z#bl7dITlCZoM+k*duH0*7Y%A|&?@+Tm~rN=+6}(H477vror*`pw<#SPzAbeI5#QlR zkeW4V1)=-hIr57~_l?rkSSpV+n+*o<$!c{Bj?w4wM=_CaSNTE9*n+y;EVY|(&Q}dQ zDt*;P8;ADFBtK}s%&rW=t#Tvv!LfR)$_`trG~~JcZR_Ml^?efb)FLUs-$enCOyf69 zfEm-k;yBYlQ3-eL-s}&_*#R%nsk!m4n8tq4$QJ|Y#xxED+Cip~ibpdIQ#v-&u+$l! zFBD11n_L7L)qlkrm7gj_z*_;U3W|WE|0ys6{=xvN6ag15H<7#L=b9qm!UHSaVU`Fu zTVr}6;P{+Jz(){xECSAc&3y!X6LSd{Ke8g^Ok?8}UBtn+Qyko&ScaR`S|a+*W4P%Y zM2~?Flty6AffJAF@W?LLiN^+cF>LK`mPs73-!lqnQNhW1kCcyiiA`HH> z8wQp10?DCL2!217l^})qa1kCq-3^b*T%FBPB%|gNM-ck|6k+-Ax?#CTLFj)k!uY>3 z#`A;Fd%V;)adHQtIsKp@^nU(V6bM4|m%G2NUTZucGk(*!A`!K(T1AZAdZ9FhW4+yT z9G~-aXat_W+#G?Eyu{t=;q-O&cu)R5%m1PRO5!ZUD9K+}&lHfKyyOnFk9o}$5GQ|| zpF3x=faErlEYJe(dz~zhfHHZqKns4!WP!}|L*xsHlfR7)DJcU&$Piebrtv5wW#D2u zo#1+Yt1;YuH9mok_mN5)7Q1i~xJ)5{YlJW#V0xxC$=NEe|!3>#F_<#4FDQ>7uWB}}>o>(&gdU>Y!YobI(DF7X8)Gw?TM#EmE035+) ze1>nFm!&C+#*N82Q^xm1^^g1>?}SE{;0_i?`8{M%lYBF>K!Wx&2Gt<{$EO&F?y9Q) zBWHU@Cd&Capso5pa3HeA`BO1z{tr`1HvfmEPM@M?DIBw+`#XcqA=>HjK#p(}zu((g z)!gX)s%*ptOI(=rtPp+;FH|w)Rv~gpc>E8>WyTMO#VW1dMBVp&nNHQuA%$X=LnGfJ zOT}aIZQwg1>b@V)4#Hz9CJm3Klx%pk)LE7)SfbIa7KFxMGUfTDcmv;e6o|&%k|=dn z6f6k1&t|a502hm+fa^_^y27C57c~L)GRB#^YBzv=0niQtY$_fNu%>iufVI>qo+x$i z9((M$2mTK?Kd(+q+CeDam?O{lF?VC?#Zw}QbRZlKym;dzL=$(`8x6d#nDQv`I^*i~ z*5lv;oei&vf)fG#PS*Vl(6KlU=om8<%T_ap_zr`b8@(uP0{WjZ&fHbI0s1?Eb`a20 z@n}FdrDFrSr4BfJ*{Oi}Adn-sNhS!>ugno$Jf;s){%%hjlE2RxFM}tLF@?UmCRB093I03&xkbYByN@cc2}F)l@hdR!!O1uxi!`0@=57 z`kVoopDM-E-V!kBpm-WC<^tnscd)AY3FzsmR0Q4hZ)uS0Z_=^mRyqoR)}2GxC~w`V zol>=Tno$A@<9|pV&Wz%L78lQkM!uOYvP+Uhc6%(@h_k4Mqk2aYz6u*fN%+u<=?3X5 z@zW&_rGhh4@X#5{nglelOf*tXLz)iew~Jvwd2`TUFvU~|9BZdjVQJ1liEv}zatXIr z8Lixq@1}$Ntpz&=vp?)xd&HqOk-n~|?d|i@E9p3i?3sGrmZ>&Wt9YLF+&{e1ATR-) z4jcr~qM`-?KLeDmApC<-=?cR8D-GO|uD}-Oo^%C#&eIjX2R-BI3hdY1rz@O-9_e8m z(PMY(4`3r~4XIZrj1A$hYD@fcuKbG;?;=IvD3ewuIf1gcl(V>&BRBM7ez~$zB1ez^ z^xBy}$>5i1+s!WKx!8QU;!0gux@bVNl5qkQ^$7*_46Pitu`6)4+X9V5hbLPMabQ}1`$`7X70WTLh_jjAO0Myve)6m3dn+o59{zth7Xk?MFb9? zYIZ^i848htE&PJUj*yUHf+R~79s^{%g1J*4_A>}?DhnLKF&VhSn9k>c{l&16xYbty zM^1W}EM|sR_$HrnyGomvWu{shO`OkH%E9APJDiiQAIg85SIfKXk17`FDQ1B z`Y`7q#@nKVMGKKzuu;FTZ5WLgZiw;EqWVWJn72S9ONbGRRbW}>;rbS0IWeZSwk(iv z{is3J4_9&=euQ!8uBt9lVnd7{1KR3D9tSIHh%ptD=8Q3=1QYqp33HY@_7J04(ft)l zZ5hr;%n=S&rJ&9mSk-w9G5#yOP{oj2g~%o0@t+x&AV_^6(}EZ+I&hA6xcqEBXc$sihwqY&+lJzi{3^Xq_+ zd=cZ!U9}q|KNn~RAvqO~hGbJZHY8i>Z0RjN}BO}Kz zPF@0iJ~y$dJ#neeMq!cWS$AWjym^-9QeTC>6gVeuW@4n;!fASX%w~E6gs+O!?O#Ok zOP;qs56~@X0lU^?EkwBAACBrBY2!24C`ubEw$Ds8s?7HeXI@WEd)@AfS!Km}`<-AW zyBL!?^xB|d>03-`Fzjd!cPz~rw4sUVaQ}tTYEDL6%Uu`F*=*XmMFS;83t_!u!B%NK zd)=aoWNtdgUK*)5;Znz360>Xmk(O-y8w>;P4&nGsHjV}pW#fJZp0@~uDwoD$dGBvT zn*oKRMB1;#yUymN9`8Cn=ic=VpkMA?XTO5I>p{H!z9GPqlqTRO^PcG~%gG^4m_sif zZB*Lr*{bR$O=gw?Z}^zAdS1#Z`{iZz#5%mL-}Hr*ljlNt=P1ohKZxGqYD@ex(Hxs; zRDlz^n!%_oy!pIQiE3BG1rC6jT3>B-ZC^f&)CQo>C&2=IpEWnnV%pPUx=f(9LKJk4 z(YO)x>tmIxhS9AhUP0?_XYD<-+R}h84>n-reSd)ErD+Ss{w835NN~&9civyoSqiE9 ztvVdb4>8%=hR!iuKBqBP9g0i~j6fe5)3cqUdA&iGD0sEnlC9IT6=ZWzW0R}7Ad@$D zPKFy|F9k`XR}rQfWd=n&4$I5Un%T}Xy%mNuvPQH=%9xnHO_y-FcBd%l+^rER*Qzru z2!Yo}+0N1dILsbyf}h^B-gcGx+4ahJbF$Ld0-jIYRWUSK1sCW5yI}xMZ=R@6Z`yvr zmUD(Lx?sx%+XqS$mFw~Hnf9hFo39w&cG=cTp(dW6F$@O<%(U8YdBLXbt(mF_F5R87 zc>I+cpFR!wa2ra;GU*+A`ao$T?J3v_yP=d;DII(I=`?}Bi9a`eiP+my z{E=+loW5tzl1N&EU$Vt(j26b2{;o{))4JkfI*M_Zmg z7ot;2q}aaV6`Nz{;TND0jQP1c5C6_f+`aRV(~sDB_=NvO1$G{C7WA2jI`t4p#fBwTxVL)_MUDn4a>h&C ztw>H^S7e`@pQSxgie!&&@xQcy!Zy}@V}^lwm1th+Va=cla=HuMVWIaPwu(L9%Am2w|rNw zU+X*rKC0*nY3uijuH&AMb@g=dz8LOog9~Yr2VtJ#Jl{a_#wRDTU&%|MT|k0Tzjt{v zo8SiH+LGj8_=mB=^OIKJN`Kxqn;a@0p$h@;eiSPcnC0C>GqaHVqm$2svkBT8N*iGL z#ul#|u6e1IIWDRp?pU~n3~Oa)DYaKtuq9yA>3Qy~EApmf9duVHK3R(|;CY`*I6unU z2aLBH3%z6mP~y24%cgb>^7Xp5+ya3nLr@6>Sq56(`1ulm3oLqPljTSi5jWPHsMIHC zlarxoXDQwQxNE99D;xv1`1;ODYjXCE*5>szuTUF5s7u!YvwS!&thgYc# zi}1B;nAd^apXnW?agF4dc`-2|oUb~R)HRmu#DbH*OOji*2|rkRJjsT>+Vu3)hIQ+9 z?%X+4nQ9CrwV9#n*vz_@)*#Vv-R27hFKIQ$Ta}3kko!82_aI7ss5U*pPpT}#Z2TY_ zS;ahGXvnm-oS97(4k#b3&fYUCjJ$Jdcf0^AT~Lr1s2TjaF~B|-;Le;)5@>^n*nw?V zC)njc3%D9v9PymJJQnc7OCXkvC&z#@6X7q;mf6sE`A}(VWxU$1!H7~RZL2f~N|)Ec zL`u(@nE(U9duX0B1mzP@rSGWCrAwe%qfu>?E|`FLD6Tm9Ex+KqORa2>tZZ=e+M@Z$ft3dcAs3awmH5rG36t`#fKrCVs*ArS2%eNYghhX`3Xro{m`wr{>m7N1^s*|rW zWhAFaA{M1YnZ)={=wISN|3w1s?2M!fE7w&n9c|U8rb~4l!;mU{9^6{p8Y^w7)*(^4 zj6>QuE1AH8q0#0eRUxexm8-dz=)_{h{9Tq>Uh15{NZh?3?;|?ka6g)s!mLE(vBa(8K=5( z+8^ex@R=D(c~vtT^yw;c#3rGu6D~8o|9gQFMc3JH+3VjG={3D0Pwd`v0H1Q3u0*#C z6>;}LBk!s}T?hOcx@Md8vt!m$#A_K}?yB9uY#q=Jf*BW1@HF_G zA|0i7F3LERHg4es>WuXBs@<6O+ktkF zX{X}RU}s9l20OD(5bR!_)8`EA{8VXw)@K7&b+l^$-933u?5p?!@UH@>(yoDisH&o= zaNhH?hllHv_37bZ=P@@T#;d0?m+*42CY-e1Inf&Rw6_`(Z!`qAILY>_{+AX| z7-y%T!g`ft`?$AT4n_SSP*K115_c<#)7KRhlw|t{{|gH!iL+8rNpqHDd&nIH<{bw@ zqmX&WF<#Pfb8+MO&$ps|f@^Oj`WS!rJaxlaa^ z{ALnw{}omcJxaXgxtA>W_649&o_jk2zdFX2zK&c5i4y`3wRcH5Cr}6)BBj5iRZmEs z?y;EYT7s;q)^rtag~!EeX{L<{VDQGZ^3H29B@V7Hzu<`%y^eIpg}Gb<;f_;pK)7?7 zJoB1t^VwqREv{StTW z9$%VjLPVaQOJlemm7E%y7AhqYNB2cZgxrm>_F%I2TRkveKmQCjVunz%k)$NF*4L{ru^T5%$M~OA5m^8PeDJ7fR(NgEQ zXi!Kco8;V|9ps))DY+*{go+pQwXAAx7Rk|O776{m18!HGu2oCbF-VBDxzTeoOMVIr zsK|3G9=RqI|Cn)|ahhYXN-Gz|o@m(b3|fA^2)qBo_;OcOv73AWDo3O&{Q;^6VK)_y zhFw!OHtbsJ9As6r#HZOL2%kU75mP)qU*Jhbfg3-?Q#crf@A)m&+wd)KG!xgMShv)9cDG28nl`BinZ-bkMB~k3P^Q1AnKF>nFjRs= zTkt7@zFi${PL5f}Z#7$nAg&h49=|LKLo|-xz98oo{W*zj$sbBIgtQj2D*AlzP`BdK`YKBA@Fu!%L}y)ps!Hc#XH znVlF_LI^kDG^0{w1Qu*;Cep4}TB9|%_L=Vf8GvKm8*rfe4y*=yZ{W11+RS*BpZCf( z>(nZ+%Z-@=SOJ`?1N#cwYx*{BIu3%Cl}WtI4|YwJD)8SV%;wW7tS!!cM&ZW4(gYr; zgf@kz$X6zJ^))Ijc*{g(if@lIruZ^1NKBtakChEDUyp(H;wq~hwxEBOck!I5%G_S}JR|d^~s+9Ee z>VQQKCH|Na+FPdYv(J&C`oi{zwDx*MB#$J=8EO5+2i(V6MyjvWKc z3k^p#R;TcEYq+ik9>Qt$;z&iAKeR+JM29xepVB;D59(0ICVhzT=MKFtZQHqPq2vyU z{_>LoW#-Vafg1zz;j+Nr)H%oUb9f4~ZThO{cPeLxF{h zIbGw>1TnybRhE|B_Jh)hrt!0W7UZWIggQliu||!{`FD<}2P_D;B%ZSZY39{dTlogQ zGD>I^Hog@b^$R?~xa20uH9}h%zj~1?P zgGQExD;BGh!`$eZyw6QIvCe~ODRxXzz{d=#`jpemcAy39LySXrRdoRy8w36X&{h|) zI9^y|z^RzD1*|D0+XB{7XJ1Xt(x}a#;`F%&J-;Xkr&}3s?yBA3^irT5 zgws?&8ct35*l=p8vkz&V=~!yctQmyKlX9dJKY+56MoZ<3AjRuS@fEz9ec#hHr7>bE zE70s>^OaFLCp^A_^(uo$ERMn>zpRRE#k{%dEe16=#88NY#`_p&?yB9O@ohjm2#s7k z`Yv&}%8UA`UF!8vkxml*ydB~}v!*WV`EEOksDk69&XFu6HL?D2!i;moNckJAy8FX<05#*!SL&^~wRBY@iwm08$QXk=L> zU~$xF;t3>|3|fA^Xe{Yxe7UQ3GnO0$w1dWyR5%(6P1)E`XsPoQUBB|%X4VaYIx zSP*dE#`>NCE*3`t*L%(L#|&z26e@syh;inw+6`bo0knevn~FyRtSKEEU@dh{ECd5N z)S4uNzDa#*9R<^DRBTDm4S%^FK1QrJ*!K%Ri|fKlj()Y>EBXTzmI|( z`BZ<4jq-e|+8OkRC=0$4>@(25IRFdibIIv`uhC7-jd)ZQdDr%VMm`r0Rwemkr+O^^ zh0#w%lW>dUmF(oRffA0p=;HO?=FFNXUf?r=S?yxz=`7~24H|tm zGA#p)w1pp*=8VlaAo271B+f23nz?b-RrmO77fyN5TMz_q_Y zKscu|<JB~WP+L(fELOW(AN2g)tTbgc`7~gXE7UObARXMa=;6;p?3bES~c=88k5a_wo zmpM=1d0~{$XpwUzHtH8RhoQNr2|U9U!yCGz-hzY){FLy|kiJ=1d}BoLIrGWc71c#@ zF3mtAi+di6a~3dq1WeAji9cB&k$aax)flmj)H8C_-^n<1S5=onu}M6y1={Kg0Y?yP z5>F~7&BwCT)ag?cErnxNlw+#%4yM&fD@Qnr>!``9=BDt_B-4N<-`bmlP0u9b zOYm|PPi}Q0$Ary?8OI=0{o)TSR%zuX@JJ|nu=zcMs-Hu`=64x~?y4#_lLw%3L>kZc zp?VNDQ!#1SG^J$2rlrn4s-`74&6+{r{7jB?;=#EP&dYh~-8%f-+E<{wA2hNIvsfGl z<&g7ojy0(IIV30_%{X*d?FPzgfOZg+Q!!~!Hl<{PvZYQp=jE8>g7CgijtDb&_fsW5 zej~t&$d8Qkl|YZu6|8Dc{P>M1xY5+Aj*arBR@!`e|J3VIx~|fYS7&F+<*4F8lDx4KJ(hQb-~PU+-jUqjfQ_Q$uB5+OzO-nIrW^YM!Hjh=sEF4FjVteEigFKb zXqlw`zYM5K>PJ~dso!t!f~?((md%W8`3td zAAk#jN3X@x397>*yIk&FgS>Df>~EIKk?=`Ss5;TmO~LQp{dL-Qx4U=E4s!34a@POG zZY0fD-HJ3 zBX~wN`>Iuha`Zx}o_Be>=NL~O2vpBQUgB=`aQeD>yjS;r-v6QkO5!ZUD9K+}4|B+m zUa}lnH^UtN4j;ui4|ABGJ09kE0{F>>In26_Fo#i133G^Uf>-`O>5C5z@7yrQ#pvfR zO;)d`Q?A?9@d@0An%?|AUcat7$vlT}npz9aT*ACCej+wMjb{fO#s()c;qkANbQ%e) zDtb;=TGTJRSX`h16hm<=vJI;GXX?wG2T&H>zB7ZwCFoL&V`j$pGc z(@Bl9Y^RSpXWG^u)j#r39|nyqZapkkXWN!_bAjl|@dj0W4sXJi+avgypeI}uBzfOIS(pFL`-gm>Opu+ z#iZfUl#&gPmO8dQ4ra9=G>+zoCLWEuWsk#0p&KgL+`3kP`(f7i3~;enrIia@?;eM* z8`S)q5n#WxJQ}`D>DcgXsRQ2D zKoCf!nq-17{bbKEeUS9o$Zfketg4zH-C(r}w1cpk3P;1LDH|JB%{oCKJ1?itnSs+!m4eDE0-#G#E?mO}M!9~+ zs`ezP{EjGm&~o$7uu5e)et-_VSC_@y^h&-tvS;c+BBt6SswbN}#4gTRj% zEZkkiL7N5vw5X^-z|R0B5eTl>6UR{I^O^WCwSK@_4*r&Y2-N8~$KO$KAHUEnW1WP#!?oUS+SN^(suvFT9GJ~v}!O|B(Vef;b zhx-Q1Ssp9>IlMU&D>Vl|5h^{xM^K5Biax@e;2P3YNThT<4o?s%auMeHH;!KX#MoX|!zpwxp#(Nd)+%0bWqoYJXj-wJZvcyBNIA=Yi$3wkt{8J5T zen6A!=w!y3yQ;cojE#ey2DH^>2M#*cIA|&!&2?l-2bLX+OOM}lPf1z)TIzJ`#y3g2 z2YkdhEo}O8#He_qR^6g{pF@K4EsR5VRTa+3R;U~iMtvnz4}x2ni>ES)WCiNh*_-KwqGiKqZN|A*_ z0;rPf3nxs0uCKjV)t*Ea4tax)WH+Qx05rEd2pi?i?X<|k0l2vXub34R{`4q3%M&@k zm7}<$ukta_$mcb{j*!f;BR!URM9krwsNRw6&%{Pivfob+HPECXd!jZNs_BG(K`@71 z3^*1iymQWYIa3&Lszn&EG-o)5CUX8E0XAi{bi==!4$3zNjjOVg!rxwo<(}C||M)|; za4D0QyH|=WAh4or!OsA>-o+wSthfD*=)O$hN02zTxZc@3&f|K==iK%FF6bF|y|Z6) z?|MIj`CQR&UU=u;Nzq<+Y|w?neT~K4!+O9HOqJbw*#p*=r`;7U8l^vBL09oktNGW`&#RVNHq(74l|qCQ{aet;_c>IZ zosY4)3Y&7{oMcj#Wj53OTM-6--VK9F&_Qyj6lNn4OW&w}ER4a?eo)$8&?rub?tu;k zu6v9nx|9D8CCEI+$&-7UXKK}se93IN_B2Qqcsl&2Y%*XUCqU?Ub$Yh*42Xn{%`~d* zb=nxR4z0A>S|`vv+gaSI?x>H=b`Ejjy0Zjoj5SARljU%}7k(>#3p~NMNHUzciSVzX z13mX{Cxak=?!!I_er0^v%6KE(*M~VerFgD|tf506C*X#7uFpCb9WfQYX-B`%OPr=$ zf&(SLEma!h%~pN7HX#Pep3ss*>?S|96~v%2$-BKk2UO6?2I>xI zWo|v(+oI$~Gx3YDQNOTQ7#@1%;qLu*o{6abk>9TljV$hKEY6v17x4SN+@NZV$_8@D z3-U6?p}VR&XODGbzXE8hvvnMItZwX7Oqv(Ol#GC<^!9a$CIzTM}h`=oDo+m9qy#eqSP=wW~~14cpDKqe^t-tu*E-RSj)-CHgg zPfjufp_^T{W6u`~E+slPrE~h5@CK<~g_G1lJFa#$GDq%tjMkcdM5904Be@;#?ej>Q z!z!JUe!M`tR9^=nmc2ut*NBnK;+H&s2i+QpNqMHQKPW()XnJlIx-|sWBCa-GHQ|Hq z4GOTWH9Augg#*=9V7*F^DbRS z4kN;4wbBz^v!l!gOJ@7ntvF)W_Ae{Mx~9d5@k^!f1q9y;pZ`V-#9laB=R_RS-~3D;YH*8hqD4g>R-C(ru*dc$AV4DC{S zK0J#^x1AO%ka@_R7KVoBPKzJlz5PxLqhNy5LNB8QQ_0>zyB;sbD2vmg_QIgRF7qXe zlWsj$7bF*I9mH7S4qI&b&=d0S6{hD37u(PXtTkBGX(d9HkBteWc|L%Rg3QJBWj1{Q6QG2feX@ z7duJxEXA+|Z}Y9KY=#L($x}q!dMRilbd(&CSc6k@u|U|aYf#A%Ye3n$&FJ#nyiNOt zYvheJ*kZNjN3)1Em|~PA7uBum6tB!lpw#fnoR7A3tD3Z%(<>9R$A~qsx#P0B9c6}% zHL#mZo>yY8>ALXb6gE;(VTG?^MN?flFJos-C$7SsI=iq6W;chDzGd0)B-d+u1NvNV zH|TW7C)g8lYXcn2xTJw}ZrGb`@w3aw+KE4|Z^HR}Q&4J`tHR1MJ%iq3$~6$Kqcs^c z)LVi4fb|wbXNHGSw%%4M@-u~pz1nKkPoa>2S27Bdi|P^(UWvlVex*JMxDCZKNkGgd zLjr6rxg@|*=DN}1M5%xKU7189zDWW=b}&`{6tjpIirR__!_jG3E?rD420WU zav|JNW-|?T9vmoa+pT57_HRdz?br*fU6D?`VrSFY_2{&_kDJo*!NI*`b&}~Ql{#6U zE^KFX7+seOMPf_-R|Ksq8@!FfNo}+u1!{I?VwBn1Esn;%+_%(ZuA@2 z1@!bR#lW}b0-z9$`xpcJM1!*Pi3YJsx`r09KNMvjwpvTZJB^nRjSn%(l8X)_8jqmu zOrjC9#}EyhJ1)_1l-YB*P^36-Q;|ui-kieuKB4lrDmJKBW|)Y?1~vJgGHy^m$%-bU zglH8T)Y9c9eTROk#Rj$X!76u{V}qL6n4S%4dd@efe^0<;8`SJq<_+phwBB}y6x#6J z^waW@(_!a{@QFKN4=*m)OP$Vqp!@&A9)+sXV@~Sww@XslFE6P#(d*XRXP76#7V@Jr zjeycg9@jXDfYM1i-9O0>S%VgF7TYRs2cQ;2`BL?4gv_6F%REN7I$m8@UC#AYbrbr1 z30!x_%6QT07^%&P>hUro+F(#5-!R*0$;O4AO)aMcZ5_C!D@-pUt1BraF|NT#z5*mq zNeVg1iP4pGKl~5HkO#eQN%&qde?{`# zDF>56S?=WI{Lh$8OQrDlF=FAym=p9<5&3a1k;$z1h|P*Iu686dKPadI6SRnDWN>F&6FZzqj6Q z&R`SaRB@~!G*9rhB{vy|g z5f%cC`GeuLG@xvRucKdty>J)NdV2bB&{{Q|Aez@7J+mtKM@aB342W!g*d$yBe$hmS zT0a*f2>2T3j9X&bE66n;{2y5K)n;+tl|JIljvP|}%4O|RrEpnL>UL|v_(TU~s@-m@ zvvu?4J-FMaH$7Eu&TgJ=2c^d5)?ByRZ0M`k&9zRahr5}!JXR;@@ZyXNrx!>SG$Q*RIWnn^1>_a0dOrxKaODXoKO? zuzQ`X`V|_EDi9~ZvAP>By8X4iwN`+ygkaUV2RJKr3Z+7$Rt^fZW^dQ{d7aX9v)3(L zchmJ-$K@yojj6cqRI|NjGySz$;EdM!%&IANf$&(@UO3PjH3VL64RUB8@ccn(gB~8J zu0r3n7GYV?x64Ey^(~{W*+FkR?V3e~t{K=8eO|E$Q?y$wCWh&gk>Xgg7s#R8tiU97 zUnZGQZA!k+vP~sUrFyA)Y|}{xIdQv5MyfJEmMRkXG^{eznC|nAsXzL@9oLPbqrggx zS<`=$It@tn&FQlGV3i^l);9GkUy4CbQxrHY=o+BbSWA z22x0U)cd9ccJSBaVTZr0Y4j)o2wy|gF&Dt$FnXd>eX3zT(Hv3)_nAYp=)myi5ML29 zi|9vakXuAQ!>`Ec@`#j5l5x_f`Ff^BN=t@gdT0{wv1H3)Nv$GNq|m80+Z2e$yijs= z=6a;y_k?(fRNTpvpSD6e`qU!W^()1$LmGU%{GEJQvT;lVA1|Xy>!mnBTaN0K_SMw@ z%i&J9RxV8JDAntw={gV6RQYU+)(Fk1phBsEbs`*==keGb?xUJ8LvxnJjYu$QISNB( z=i-Riqdfza*n-`R$fRt;PU*jj-nu|i_F9s-G|o^IZnIkTqg?FOUd$*=E~=Z{d1I2d zqiub!mUIb^NhaHyM2%V0>%y2#hFxQG$+cJOD06N+o`sB{P%N~YOP)|-MX@d{q_B{R zzLH!A>%#S{Xlgw2nfoccxT`+-F8-zv1PWUSDtp8g3l^5gctMF0`KRh&7X;|YOCETl zTA;Yas0RB@6jQd|mf?ls`(P%DJ)eL%Xtm|1OJMgdMptrC9lPNTDC}|$G4By`2eRVw zmV?)$cqZ(|%rUTQ^Tvf;N12nH1FeS7u969#vng!KkIz4h&mH|O`mN(L87LaoKf{>S zhjq%<+ZqPz->};9(^@n5q|E-ZatG&d^&}r z`NiU9F1?5qV`oI-tIi9ZUaN&gYX`RykzPjuI$6?T@o5uS&-Ut-!gRoc%}B@7J?U8K zUS12?cR-!NWlLpSQrW8vr7xEMxe423{AePu6qOu{7Rt^g0%y@wmC6K3e#X+OZ_lvk z@%K%L(P^x2$wh||qchNUCNYW`Y>1J~UzZp;%AA=AK#Fa46PaXXaSGe=%gQ8O%2lk_ zW^qV$Vy50Kb(u8GmJUqO#a-;mE<~Ah0$jLMajx6PRSObBdY0<(&AEUg);zmekNf5U z%FZPOi&@_!f#NSk+pN`IGBSz90>mMsExG70Aa0`VOdyUKWPsS_j|;?(GN&YsyW*5x zD-&*SNa0j|+U6HT^d zQL5u6mPUO}L?&Z*4OjbCd)VTj>qfB2feD~m!YOVh3h}jLopZ*wU2-lQ+a-{IR@-<3 z{%_z=N_?jst4nVzW0on*GE)L1(@t$0; z6(aRcHW+;(McKJT%40@++G;CVMl^ByD@Ipx(P6~tuhDiUaf+E^h?C75mpD1f{HH%) zNGg!o9m^!~52XxdpTzrH6%o*DGprRw1T;Cp(ss#S!o2}w8Cn$)(9-WG{c(P(MFh0; ztty|KBLbS)#hwUgdd|a&$KQotECQPS@`e?&tuhf-Jn+8XHrksVe9v!-Gpr+N&yVi| zkL~Ktmw=J#q_%Y_neN-~JIm$zX7uyhquA%rWW0mg=UWtSKSQ+nA4&ku0K;|7XsRgx z{@#YTZglt2u)oLq$>S_lK;y9*bJ%>N2Q%isHEV0!Y1iIf!Zy>hP{|j9r0=?&$I9vf zmuy`5RH@=2Q$AvM;~-@2%1vgnj-W1?yI~40;TEFq@a=}JNfMmooiIgg-%i+C5I@qL zumfn2?}XikUkN*5TyW(s*xIBXX**z&$u8zS~6lwaEGvKVp|$&rOiL#@ho_X}y$OXtPmmyd9BSe?FCq1;V)a z1S&b4R+Ozzp{agb@2x+7Z?)#fvar^_$S6xLs+$*ici6sywsrG@bd+<4EoP5lUfA4m znHP>S!`}L1H<>(9#VTQ4_|X(LY76@hv!bcHY@`3k;No|iXiFY+qE;Yx0V+9=OWC=Q zo9Wh`wN|Ts3I&2sVH748)e#*23z(l{pY2q%oe9A)n+ycoTyi1UQO5m|LAzikTt1Z- zm;P3T!TF&Kt-gFA5V9^L<)6{uyq^_KpRICybE%jMP-4D%2~|p)uQs52aqRYrYZ1-y z;;Y03UEVJ)*|$4%GgCMOjvb#QO4P+I5X1!D_}&ubrpP#ro7FLGJ0aPDxvFlFg+ zzR+{-e0dZ-(D!2o=5lRGY7^wg^4_#ltF{8<@<&Rx<1EcdC7Lg-RKF9n5D8< z?Dmc`l%)N$SJM0rnSYAw9vuPKard~buibY(VyDb6;*RHV%KR%TWp&E@n3WyYDYNW7 zrvA0`%`f`SW&aR!?_yNSM`p6_=y%E}$b^p*6AzzL#u=gDG`A=R&7Pn^AL(QvdvMOo)q*;< z_0runoi$$n z&F)+r6YJp{sM2~VnJm<|Hf`Ic}~;(H`Nq2YW|ym6+Hs} zo6q3II@*#4UGv|3ict&Jo6*sft+$oxc~qvIP%tV(DdewOt@x%3!sMblg2T6> za1Q^?*HJtZf@3xr2)4Q8La?KZ+kayh%!JENrZA@um;P3T|7JQvtHNd_<)6`J-IbwL zVYABlE|<+JS2}7ga@ed4ARe2Qo^zY^^!MTy3m9O(4!zBKDP5saBx7~(sDWqYv31!+ zUF?NJSgrC*y1aB@H+Jb%!xPM46<_h9O}qXef@N{HrSYoeDBbZK42Q0fOoiaLUN4I4 zM)w>I;RITb?U;h&ZHDy)7U}<(%*x45l`!m|vyRW39z;q`FzKFy=a>S&bE@!73y4i<2 z5bjF)5~l#^+B%AP5Jbh-+l-T{RYw%0_B=F=D@FV%(NQ@!n~FFgB;qJkyBM=isxj*~ zt4A3Z@%OoSChY1jQl<4$u19EBkACa;@m&2AM)MC*$ze28wm#91#`O4|)v6!0!u0qp zqcFLsZhGW3o_~+Fb<=}1l+$>Q*<_d=HkVwchog+!^soyi&p?_<{QVT>Xr{+^S|G)|?kCO;aFNc7n4=!Ooq#+K^*-87W&-ys zQrOrBZhx!7%k%9F3S4-3XepA>%kw#|>u=HGU&KY|;k1?)EfIT7a@iXHtrWqxb3sn5 zn!ZVu(pF7Ibk15@hHok~db86w#D)N4+I?Y{MaH)R`-&)ff0Bz{5g+p73}Y)sfx0&0 zQOFT1we0<-I!Tslf}+fh!+o7EriiIcxT(GCjh0%>3TrnQo|c)&AyiK! zUYkk#tOZ5=@luqVqMM|n49tXj!KFih|GTk~~p;U@i-_-wsnCn1&e>^v-;V=v9u zw*`6(nB6tMrWG=N3d2D1Xpz7O87G0sCF6bqgg;#xy3%I%R}wK`(xai|*WpiRt4xnS zot|@l`t9f$_ouU8hu)ulRjJjg&lTefl?L~!Z_DLXw_ZDhZ+(Z$4`nq!LEfTb3G)~I zJH4q8_xF-r%|_7gZ(nIOASd9yd?lI>ctz9idw)w@H#&GYeedLo4BAuVX~RE#eYXAX zr}^2)?N80UJ;uv(<|z-ik&WxeMJdI~kH+lC;fQ}2m9jeGKgi1VQ9A9WRAfs^r?si{ z3xiPl*f5l?Frh1Wu9&OcY$rCEwH(Fb?+-%wcR1U$uTEUTIkq}laEZp1pLrWkzIBwh zA1+y-g@rF70hMpzf2dyk&i|ql(U1|;7o8~X=_z(*OYQEh;$}ks)6uL$Q-3}KRP3Wa-8Sh|I6~0dU6lIc_i9W zBic@Y>@)a$uNXN5Lao&-9%%&`w#VsL2lW=Lj+tJAeU^{50N6{E8kYdcQdGg`Y;;*) zVEPvyBKGYlQ_$e$nW7ucz_(F)=(pwKm#}Uwrb_E2-l3vL75TP-&l}d4d}nHHTpUY} zxN0=rp>nPfs!{%_Ao0RnT@+6Gn^4K&6s2q(Ua7t%6%OQy52{<&f&2CYZT9f&6rIFHf=7su<0mstUl5ToOa1f;Cv{BJNdzRG+ed(bM#7w zU-IZ{Q2q&HMIV$YTW>2J%JI$0Qq9I0YOof6&}`LDp@8y2RPxy%!$5fn+Rg;!m`w(h zZ7#W>>?kwLRm*mBnehJOymgeyv2Vjxb4gZ zH?g$3iYlcot&FAg%Gi1=>?_rKv0>GhuPA$QF3N;6?`Bl;2?9yA;5T(*#Qe_Tus@Ki zcY^Ods+5cG+8vP&^+dABFOgJizb7+cLnsyb+Dv-oAR8#Z9u&iWSB9cu_=%UfhTkvm z!j~&eqFlaQX_KmtCXrRUt2`?u&B_vNx*2bLUj%)xMurLUkAGElvfO7OEz0U0~gKGW*Ga) zRNEz6HWj8z<-OfDKKEOko=fudTFpyO!b&?|iRQO3u=;|-6bZkl_ZxBDBkAe2`_^|r zc$*zzorlTX@YcMm14U#1JmypmC-6^D$v5xl?z_iXS&d8;E2Z42Dz7gZd+A^JV32SX z-6B*Pn85te*o8r8Jarfvm&L-!B}uW;ezH2!a+GvEdk~T@7>4BKy3!EfRb-E=r&2fQ zS&H!M2O<1gMtC*VrT$WHen z2{ha*zK1@}i}g$gUzVU#54C+kgLx8h*?7CqW_L#NqY||lx|4hcca>Mzi3kLb^8IaC z86$63iPx9Bz)U#ta0K^KtTB_92z*|2NdlE<1lB!K%y*7rW(Qnub!sv`BCcKD#xnx8TO z*!MBYl8X)l*bkxYOn{BqV*u9Xjtj7kGQ*yBu$#;T?t4<$m>=BRV#B>KL4oD$V@(}g zZiP?XP&fsBiw2im?XT7A^d+-ayIBr8v>c^nDmTr{SPRX%7yBMsj#@Z=FBgggzW)d7 zejmOmJ0HHOr_yq?BgublwU!K8;K zh&h{MC;5?Fy%QXMm@4Js@R}EhZ_BaMU+TVW?-8)2vXbWReJnG*L#TmBy*ZOIc$5tx zgx$C}n{rbWC92rd_qVNDheXdgZUs*?+xt5QLzpr<(~gBWdZgSKN{D`OSbC-2oO9Up zV_^2M(Xh(ranJqgRVab~j86N!E~K=D5+I4nr3Cy0h{9<>lv0sNip5RLILXRSx;5oUDhM8|2BAVbzS2Tgyy0|f%?3+!6O0Be~ z*(lYEv(0@0`P&mh23DAD$m!0`Rx*19Mo!mXrY7UmbtoF7Lw9pVrfzFL;B7p4-;}qXW8d@x{ud3fZ^}tX zo;~_;FLT+92ENkUY)RQYO6rGYkFpS@d~{ z+r_Y9rz`cC*p@5#rYVnp+f?Y3W@#U^UAR1~?d>28Y*XRVjhhOW)h6km=U;y5Mv4Cc zYAX5onjldw4NT>3ZzHh<&HAHEm4ne=QH(ycx4iu*7rTU+^h2t&UP=Pg`Kb0ikBCQq z;fH<80UI&G(;T78m~IwtMw^I2>h$_2}D8CM$k2T!fADBpYDA_IM@VJpI3{XzJ$a zBrQ#>GiWRe=Vxg_2hY8T6ecyv*9)c#-@DRzK`yWe7+=G{f^jf+R4F?bjFo{Z&+y1E zhiNX3iq)#0xdP55MqzSM9nRq<6wa}uI)mbw;2g8bfV0gd7n~hs)_MkA&0}`OOrX6w zg;|<6H6v(W)VE4io_mBg$)^QrqZMlSRBpZA+#giNCpx(6HNYKJxDzQZ8C!GWmJbu* zj-{^vl;eqF)`RG`j@M+k5C;VI?`O>F!#-u}ZKbMk&o;m#R$G3$1mYiNbR`!Z2Js(5 z+nEp_Gsi%@%^Mfu9c7+7EK<}++pT93i}@6e_KAhRRk6wN>kKo5@Pg5TDWezc`+PDP z#U{hAbD>YH?S4s>($;pyCc_DI)PwGzi{~%7kas*$BRTdFQ_hkBug%I&LnYthhKdTF zQ%6S3^Bmg`XXNUg;C+EA<>LJiU+H{yW(tQ;I1Yb&;+pXSHnvbH#%2TMrl@07QR@!{ zuw7QoWPlCRLG|WLdR28&y51*X?%AF6>mRW~-NN{l+$&8M2w1sf!B2qj!b>Ann%e$K z;)b^E&~JP^rTyse!n1Xp#|ux-xflLU^o)Dq*{?(Ig};1n5VVTzUZa6K?gu~8cX2Ks zy#CH1Jn&AZlHNAFKD6ALsD3W~4)AjQxm4_CrV_cgdqvLgS$`m|8{Ku}E?qNwYx~s~ z3I}O$fE>Q23YBH``};A2LVkGn8LjFg|Nzbci3c_#3=9 z!DDC+tn?RV!40%c^>vuMWLLp}`^AW6@fM!HgAU8$_EdIU0^&vYs5T4T8k~mk8OGP! z7Rt>AIS*@%&Xh#sKy?*p|4xu8)tFzS3XkE@1W~a1zbIDs`wP==L>RlVRO{gCHDPPX zKNXL@or_0eIrB}b6e9u?(5T#m7hiE8DEGRxW@9(-am9ghz=ALelan@nN*qBkXt;WF znRIt**PcbI-7k>*NqVgK^_yJ$5(er2K_%bfR$r#1cR_wf1ClD!V)Dtm~r*}jSQ`d)wfjna@z7! zEmq%hN>*ywvHE7v@T|V+IbVI>O21eP4EuE$R^KAdy+}UP!?pU>-#NtU`$pHUtKPN| z{n9G65%MCwLKvR~FmKdwtk(7Rq`FydWGZQTizSezi1=6QZ;tC8$hs({qJ#sb22Y@zEZ9 zE3?+^jF+3(Mkyf%w`~gJd>RQDKn3i4{%t>b#7F z)J({jBX(ArR4vQK^*i<2-he(+fX_>G$0yhm5o<-EDVJ^}bsP3(TRcPySv&E^^-Z{- zZwgB7a@85D;*G|7+!_ymZw2yy$a;%mF{804TOZq0Vt@Hf9`?Bqt3 z6?e$jA>?7;GBSbi4azI`+A7l$9H$USn@#Q<^qFuMe9Q!IGIpqMLJ-bHCC3y%*`pVP z=Uc7%DHMWmC8IF8=rDqC4cg8m2r-)sL9n^x5(Gz?3kSo50=(U3Ccsao@G(E&FYW&# zGxdyeTcpux9*|3KObP^gT6hZqU}vNW%oAo{qQ?htTQ2+vgujaQyHC|q_UI9QpVewI zY>C|h;csRXCKnwB;rFBM`z~644Erw=)MI`bP`BCTg1V#3=DdJVAh%n~1oF8QRt^C2 z*dwgn4nw_Sv3Tre7~1&9B{8^ec`t#R%txu+lR%!)gY@NGa1wz3JmWzh;3+#7;Q6s~ zG2Pf_%)f87mW*Bv=-*|OB^MnA=s!T)neZL6$H2GE9T&bGWhV0>L804jD-*gOOW|LB zbiYc!CuX|Ytg{7uBM2(E--vG+$`ySlfI@h^c=8j7=9A)+# zE)*%w+f-x{suNN;-zQZ5R>h|EpJp&G#HKYlqB3q;zam4cV$)js-g0ePOFyjgi#ax} znX&2Fw5I2L)B4o}Jho}ger4XY_H$TluwU_ZDYRjgep*g*iWi*Vu{(>)^-`xZALvfg zu!k>Egs&$8_tCE?CYAm2lDdXoC%##sNSz2TM1Hiv2sfSNw+T$nc3P9O%}TExfD94I zXce8}MW;{{XM9-ElJ?EE>Uecsbvf5k)lKN_6*^`ns@tMdoo{YoRZ`lczt$`#UJHje zFW2|Zr)lq8=-Zi!#yVK~l(9p)DLM(Op+<*X?#)IK{{KC=Os_MKP|j#^x7jV#=dU>? z8kc2)3jXXt&Z-Nd6=LO76m9K_mdl)a4c|lE6)nX?M4tT4d~`ykNx^CL&eTl1+33RX zn2*N(h(7PrnZI|Q2i8Vo&0e?F>(1}0uG|$Z+Y>Z`b_w^op`~S&61k~Lvn~8_EPo-s zrqS4oKgY$Ny>=ac9oKD^i*)BYJ;jR`!<=u=%}1+dn$2zl-%`~cUb7%N4xd5m;xtzA z04BiMdE~4>BxS8tEH`KAdW{a6T*q^QI=gVAQ{0a^vB-c5;_*gNfso5GmbZgev)wJ$ zgM9(mw=f#7mg@1Ji=z{Q1GR1uz3KKkve4paaV41U?Lm7h_LtfeM~xEgpfrn|Wwc-o zs8jQIM=NR#@TeFx%FPN&%}2|6-I>W}Pj+hfeX9Ae7_{5Xb`ev3r5?1waU!+cosU*> zPHU|!X06Oe>#ZkN6XE9}ebEZuuA)KKKGl3+RgR9QJ^*W-Dp*uUpXQ_E>ZQh>9$*iS zW6M5T7&PXi6R`+swkyR-fE7#yuc`Anu)ay2jDl1xu z0EOtd3jCGD7=mCd%Yd~Tv~hz94c$tX!@y0$ud-U5pjT-Y56lvzjt>sBnw_Ai*JLOu zcZ>UKof?Pe%3`I~DNWa@BZA5$QZyiD%h8z*gn`K!8a+-FE6&vF=-e&y(Q5jImvn+Q zlf|GxtyM7O$F@uRF;x6dKom!a8Uc{g*aINeYqPcP{B_5l9j$0l5PmQdz*~iTFY%J) zltUM?7fCpxHPvpn)!DjvGqO8Vt+{Ts*_dj!_iUbzPNtHK0F*3tgINqu7sIg>`IBdz zdja^lqCHc#nx`Dq{4-_q5Y`ewb}uexsRi8`_6{h3&DHK~9WPtfElop;D!7L2nx)Zt zU~;w?i)Y+{Vh4&Ym_HaD-ApG+>+ zoA79G)~+vCu|HMDz;k&6ml+FDdT+0VSF8Ya-C7s?=X&5E(9bDcrXSiBB7{R%+Z+=&AI$Fxr3FH@0#F1#WLND?dRtB6CKop?WWx>CI*$k=gXqA!M z!0sH&Mr$+iA7dm!6_&q*GWqX`@FALFA3##wUA-ZE;$-~wD@u0$J0w?8^3d~;JV43G z{~pOIO19LHOi^;Ks$EluyX^PXiyt=KrEE*G$y>dpWF6JL=R!0-IvCVmXc@ZtH zbufv~-%YE>6`!E>Lev_;S&Je-1~p%VoNWb`Nb_P(8%_sf?iX{qxZ0nu8esO^P~FZr zUVUM;8?FRV^5}`(pKhl9^hVI163tlcOud=nWo4&cNXrs*>W*p@mKOm9RZ3pV)^d~_ zb1ag@lsxx1B$re2XDg9BM9C8;Ao+ik{CpLXUsJ*$_*+8cDXWoq7{m%>;?b=m;L$Wx zJhUjj?wpNJs=WNR19ghCD?E$3wvm!AJ{`$dD0%!;B>zgu1sjlDOvyV>NAg}uesd<0 zrzpARY$VrHvSR|t)s!%4y^e%8q{PQGDv*h3uN(!_YQ;R*nwG^S%cx6&We2EZw^Fix zGm_IOdCqxAo=3?87a(~DCEt1$lJ8P-#a1LcDS7)gB=4r=Etep9kP@cW-bq^SZz%Dx zj0$98*&U-`85V|^J##@#uOeATT@$SP5_Rw&C@EczWQLMIz6!}}DA}|V$reiXUW=qf z$$#C2<#6Mlh>LU8+!Wa)@LtC3jNtI!Yd+FGq4BB@cIze2kLc>_hStCB-=;6_&gLziO1U zZ$+}7lK*`hlAlw;Rwy^of~7@?kNH#}6Z1!b)>WCJB%eK(SSqU5~y zBDsi?H@zRpTPUFqhK2N1v5>C73+bM`kPf!8)2|_gh=vqL+KZ0Utsb@vKdxMZ?L@W! zmgYQ%j9XcbulMyFUJm9XtfblLW<55fSkaTL%((P2qs3+Nt*p{2qkZ<3O>&H!Y_}zz zz&!-hyNr){!M>W0jx9Iqb#BkV{jy|-$iEjh$({2z!i+>T1PoG`BOMq{{DrXvZe$-D eXEWR9*jl4p?^Vdw+C%p8c!itYEQyrLGCMm&r$vV@Hh*dQbfNDhm`Y3_92ncG)A-JQO- zrI|$Dg%iUf`>wq)O`L#Vob}?9I5x*Pu}RkKaW=btY<%o+Y$wJ!c)eiDA;iEs8^;c; zz5id2TaR0}?qf!eMCYidyKX)H`v33$tLp!&>fSx{;EF|y7vaBXP0;n4?b!*Z(P(!X zZZL>O8l8H7#%+g#2L@a28N6#yjYfOU;h@v+)!jj~2y)cDW~dHe102 zE5AH&>tVCgj*ELk-mtg)&Oy~1jfTQz*m9*u(fM5`^ro8aMzcMAd1C^0a!pru%vq)90GWQNB?ZaIMC=CbRx@fc(cg4lfjwW^Yy{ZL<@J^m1ds^dhuY2z{Wj9*cg2rMr+%>KPGO#Yv^;dC@zKCr<8AO( zdgpjcy^YbW+r7?=yS>+Mx82_M!=2v2?Q-{bYrlZpKuOa0Gtmp6W9RN!(x3DeMMKEC zS&6rl?cOHnh<6@v@B;XM5&Yi_|F>YLfG@o!=}I+P)^(b_L39CS`5P-TU0Sms0Gex? zEt5CAFB~|1@3r1G!GV3=xxi;{f&z;pBPWT&0bm5+5RG3q>mukn?fuOe_qy4-+a-vL zF0&9cky6M;=b~sC=tMoi(<-ogH9n~YO%QX~?>=hK5{&qew1Ve0bo<2t(mdVypd0SIH@7ibiK=T02Nz zz_fIGZs7I~xdSYFJCxneR3|E?ItmcBQ>()MOmydVpk@K~+tZcKlnv^spgDKXVxn{_ zsRY4#qOx;~=?z8aC={r6ZGv;wo=GtM-=;IY8m#~fZUep%3Zhj=5V2O|w=1*SoAZ7H z`Fcd~)%#7bAG9l@q$^rKyc>z}9Z%IcLF9k55jlcHQVK_~opj>fXC!VtAr5RgusL*l zttMDLiQCJWYEi~=T*ujMSqZ~Xk84`jBel|T@muuyQ|Wz<7Pphy@JZ<0Ct#pS)dnu2 z{|p%)$;ueLW~Sc?n>8H2YH?@bCotzI3i_i-UPh;}5g$y;#G$5pxDLbqAX>w})|__T z>+~d!Wep>vFzAI&Z`ut9(S(rLXl=;;N2Jv!#7aILA1f5FT@!9Ptg}@ zz9f^f$HBo3hHDVxAR0rgbtZk7hYS?_N5gDFVQ(!OBKkA%hNF?Geyc@r0kn?Q!cHCe z90mjLIq$~%1~8?-B$fd=eyg{UsuWOrGlE0167^0yl;>4^_``|OD2i{o=X5=Z^U*nP zabVK1qp|}`7NKd!UGZplS8VB*vs{vuep$vP3^XgdE}3D~W`W;w3umNP4OA^}H9^^& zmQ=!fl^KN5m=e*hkJC!IX%*-&%OLGXOS*Gt>*uynMk_)>F8%_z_s=%;$GGvHhS@1X zXvS%_2mT6ZKUxk6;anF`%>)^(fE0JO+iKREpcy2?VW-!IucN?O1`6*vB#H7Fp(*29 z>MYXtGnmVrdIJ(L?Pc3YiPwhW>-7B4)(+Xh9Ir<$Zs-bOaZ*{4o5tKMxqA*!0EX>q;!eC_>l$q~^s zE=|TGkr0m!{!Y6tcn^6GE5PTb9|l1G4RP7%!Bc7C6Y~a_9XM_HSj-c3w0txr{SQ;p zO{1%STg(M2Ox2orPb4OrFueLVLm`{#;B1Bw*58vOulE%`luAG%zl zQOb%!h(j`nsOB(OO4RD(rGGh4PlrtJ8Si^43ZJzPj@}PoO87&64*P%1zX$%LP7Nik z`1b?vZ=>_F^lb|n=wS$r*$dsc0$ZX3>EGq#G;-j1si;(;ZXc_3EE=YUNS`k7VdVqZ z&E+tqAj69P0RAM?Sn2ojc84y&k47umS6pAu!637y-C<*Yz><){y=0(78_aE0Su1=k z%)WwB_BVESfC;{`gbBum%bMQ}DR7{5qFogRcbP~WkLV9!XdhlcxWWJckC62F#H zS6)=AFhyNQW8A75>wgeh_rHT5zl$GF-DPbr}5BoharW!834irLWXA#N~XK~@`{!^BNb7FOjS03gId zGwUq0kgPSWR^_F*?5WOdZ4$SnN}ZFL{t56b_@bBo;w97o$olF(4_ug^vC1p!WBz&| zAl+=~QYO=p&AEUC4B=LecM`h(_e{Vr1J)-cFY!rAv^QQMPpIIlhLc+=+qR7bZdeK2 z))Y+RVyjWBRl-gsoUAzQMy2P1Yq?GHaG&8mYpu`T{XoHL1>!fL5J{lIINg>)2gngz zNxpz=pmzT(R@gT6#$q@x%cVLM5;=7en~1{dN#z zW{@*Rq83sY*esfry}%Z$7Nt6UUHxxjjX54M5C0C}y9{fu9=B(Xarl#33Dxv_oy58m zf*hn79U&&?I|McScf<{xbT^VB8NRB2SIi-Mgo3#O?U{suIUIM}WMHb^QSUv92Jxjj z#49A0`G>F?y7rF8cmM5}NS!fh&=-WL4ivH(W6oUk zgM1)IUdaz)X2A*YgAgejTpfa-gsbBg=vw(n$S}A%2(n;d1Qn6*_u=XX6ZyR05PWB& z;BENTxcaGjVq#F%t?z%0RUeNIKaUmF=E(mg&*lFWRzS5xa%l_2_>R_qYWb@E7!3G% zy!ZaMpduUkBq1se{AZzD5eL414p2m8vk||cT>Nv9N~wP+s8hjZpR~20dni-exPipu zT*6ipATi@%j|*^}$^OB05bg!|U>ijNxdp+}Y(f=8Pa~bpUWL)-C zXZCzt^rDykH?YIRY6-We|9ME9x789}db_xf`QL};((PA~Z8P$3MXmbO1OOb3_bX`ndo;{o>pMi_dwQV(~3r`bEpQxnGRmh`A@< za+rIc5}wCV?{mis5X;>$Da6{{^{Zog*TnRaZ#H`2e8+s}ircOy2VW{xvLmw6Y}rJDY-WPirH(HA3<_OOc$TI0Z_(ma&+YeMCvmgBYhS1BZmk@4o6}yn>(Z^2M$?(@ zw4D}g_C4g{QK4PCS;}6PFwu4oxjkOSZS30L>q8YG9M^#D$urGx*Zv#!URS&6hP^lJ z-&&b*W@|l&QtaA$&F!^Y5A3^*pO6rdfy=~c2*RNvCn4A_P~qjOf@pCX6iY2LB5;XT zLem~|L;#!7K`84dU(I4f;KI0p=*Y6Z@LhQF?G;Z_yn;RD%l;1pw+QK%1i!GO{Rbtq4vGsB^e$Io+Qi|YL)5@s$e#Cg z`J~e!%g})F_UI4M-`R%8^m2j z{{1plV#1}5wcG??5XONbz&Rnt5pHo40vx7Kc$fH3(W#GHJC!23j}Zd=S@^>P25EA7 z+*-f?Zg{K*Nx7g{D@T=9F6CWWe5r(nFWOsqP;Vt$9<=e2@~Gw=_Y(42mng~mYj`50 z__VeEDN_746zWgrlH!l7^;@OLT2Z7pZk`43uBJT}{ryKfJtgE#$t)@FRaDE^>?I*o zrk*aGW1=IDNDy6GJ)}-Gw26ax3;P%p$|=Hgto2(($XZcExD4lMyg&4Z=*z|Swn~VH zl2B4SXBcOb2{Da{Y`kM~lIY&G*6yWf+ne%>>K1GLR#CB56j6eZ)@4 z3iN$bt6Cka3T*!P22^AV<4UqqHh(+=<%)0qAR-}~KTsTW^T#mj90~__ew_R@HB9hP zbT)qg5{o-MUP3ugB>i{%N|7`gjZHP(R)Zez7ONX}>J08yA&=#wy79FutfYRxeeCW0 zJUtxZp{S6P1TvNkQ!=>2L`8<|)4;XQBFw$P|9?pPM!r^up2LA+M#yBRF_$0|9kUjx;@Nr;+h`GUJ9BC=jQQq@XyKUD%zB@ArIJ;Gf7r|1N`CgX1XD?e=S|MRjSQ)D5<-Dp;Rd1E)zZ& zGKY$Q%7?H)$w!_{HynsLyB>*@GL=E?r-Z2Vtfis$3RIj8wU{Rg)DkQ)Kuyn+4Yg-7x>^uw zr*U6Xr8?Q^v{LPs@G&uDi39abG^DPDinAdVb47tvf++?_>3Omtbx}rF3qopKIKC>?saD5H9}Q)P7{isE zBt#e%5+O5HUDB_Fslw#^$QmL&;Lu{f1Yt+D%F+QNnXCHj0VZv?4m+;?ltHsMplbbIT5+TFZ6Qo}WY+-VKY*}Vp zPiYmUgGIvC*9lSSSxe*Un^18!t|(8mNoD$?==m~TWPGhLRr+V(gl>bsKF7ReEzOD!oD6@J{|Y*JHuygyShi#2HGv?EFh;w}5ABCV=ZVMCSJEh7$h zaFfj0DVgNkMpQGZ3fO+L&dqVz=-!jLqe&7a-7)m9d((~|v)#1ADkUs71%+}3oM)}| zTf<_k6(uZYb)4O2Z>vN&jFOOUDCPY)lY}V?vmfW9)}EwDScTcyZaQKXo*;f9Ge?Xg%? zy=$i%F zwW5eC*M6M$+uJN5DoRQbQQ7lK`*FmC+jr1#)7kC`*pCyf(N;PGX@du>{K$!RL0w{V z&W%8A>CHKGW6lr#&!MP}`TrIEM11SNbk_qp!M;wTQ#v)qIR)=?6RqhDo{Ust;JCoU#iN7aV?Et?} z-!j2|Pjz~g&~qzpV;T;&7{HskjpEuuxL~k-6TwBosgKF|VQX>f->y|;=OYV59w0=e zXH}f~708@-L(UzLHyf-mPZY2wSYiOHA6$+jmdIdrS}MZT&u`V6a)7ogsAkarNR9uRGba&m?sLj6D%=++mPo?^96_y zuwHw%9^9Y7$bx!syVw?jcGzi6cY1Ki_)LWzJPg>WY?yqI*DsP;Nfl`H5Zc$g?BgogRs}tF=~O>O2P+v-ntYL_?trTVwnGH!j%N(F*!fxFUrLMJ_*m6 zTgduljhJ+0Kp8T<`7!BOde+i<^Ao5zTW?~%DteP(t3huJc`nR_8^JKWifrZhRtC2U zD#teS1{c^`Fj0Z)1n?;i0q{Q3P8(k1X_&sqn_L*?(do@&?joO$m3ThK)*iF~|J$%! zjkA!lXkqbvfR!1%>I0Psnu8~EV=dgQ4;OWG>ANenHEgc^JwYL;vXP@hB#{_7Fgd>t zS(XC#YZav{g=F>bB}AoXEv-NAfr_*BC+3NwKM9r?^v96rPyYoYQK-1yv1}D@Wymn0 z;?^qp?waRwtjpQ%8gy0V++FkS9JR9DHQYPLch^{{Cbw*Icc*Zh!F%1*VpX54XD!z} z;dA!N9fUBs=ILqtX1g}YC%b9pdvnq*r`v7K)nfNc(cM7ScSbXZvDSoovl8uwbX3H4 zxzg*+HCA!WmGQZDPSRPRw5em5=BLXBaYc@jJRb3%f}5i&ZQM)=cMU-yo5NGyezKV4 zO;9>%rj#XfN++ci+j(Uu-8dgg7wG<>tI8051tC1wrkS@|>$gS}Su09J(YlrCfW55} zkwi*@YN%yDdlF0byiz1lXuH1%={|9h#PJk0Hv|*~k%@rf^I)y!9Z)=iJwN8Z8~%uZ zV#2(VxZ+u6s-^HEXCt`oUtp%x9$q~EZEg#$&8kfG+x4&slW>SF5tA=Q25Jb#qdZxK z-HNP0lmP@YAQFB&NiRA!^OP8T;Nnr%4Pz9tx`1KGM~d)^hao?Lg*I~K0h7NVVaQE% zsH#-o3X8pcFkv9xzNuyp;?MYqj%})En-5&fyTN}7Jba;0|JbVR2`FUnY+$lH!?63X zM|d|lkVS$Z?K`pKhEHZwBC7~WVJ^O*+f;tB6YQ8fYCBl8C|6UC|!g|E(7Bb z6f%GjlNT6_=W12j$z#s84TQY(tTGt=W5D{nal;B!oDIg9I|>*R%rSt`kY|M~V1Y(G zXEqv_WH6;58c&4{8V3r2gJJg;!iR)=3zG|AH@-Q8$8F*SAtPU_G98e}dxqU|L4NaMSL;@<*gj}=1MB6`m353x|jY)N{1+M3umQlWRUGSny11zBG# zLKfLz^JEVBF-{}-3(V;il+zV@e+%{OC~2Z=&lKqzpPzmg3+3my9D~wMe1hppoW=f0 zZj#E{58h_B33-tSC*6X99uj%Kke$zG@|*yafv7b=vMFc_pXqvUp+cNi>Q?pppC#G|rTv zu{j?a#}k|6NYH`tTaazo3&)0D!xPb=d&_j_9@3#)Zrlf~^;_Mztd;z3+(+zfm2l%y z64HkV*^NulWzQ?QafR~xHzD08&W(G9(OjC2g$NoGUfe5y=6QQ@zk(e<=Km%95nf!~ z))FV~nMRr=A1>!1cptCCS~D+ry%cM#@BwaXC2(Lv5^l!Z?KjCTysfY;Z)@c(&29MS zhTYd(%m;%KC566yhY`nT66$!NtpSLK_mmqNfW_aAS!_6FvXBnm9~WU4pFsZ|7TUIp{0ABXic>IQ8ko*uR-l$b&MKSkRoK46| z&nmAs3ORl^LB;Z71MNxD@f&kR@mD06V(?cO^1QB;^aTU;D$|Dzz6M&H!9B@m@eAlb zfZlo!=Qf2K5Ovg207DY(B4vAYi= zFoONQR%JRUk*(a{M#xLgD&yC`3^M2S6}KR7Hhym*%>#E7{9>x2)CT+-@|bpE)Gk-jrMa|MRuYX#6L@j zO3zvv;!i-u*$|I;qCh;s5(C5yc^2@biC%lQ9z2x6$b=qPtK=T$SBPOx7Z29T{9rf- z%IOFD5gjfT!o&PZA&h9n}F-@AGlCm5WTVLoZ3 zy*f8-Wo-*M(O(^Qo_=qu&tmyM2|RPVXkVcmDWgz?DR^e*7jd0;s&fd3c4|IP4!3;dt+ego9X`zZKTM4$Y} zv3n=ZDR>%luqmA}Z0r;iCR~CK1I6=p34Rs3eawFf{s@<#3LoMSOhF?u@>Z|}oO{62 z4`Yp)?!e2h_1yZwt?cX;o~?qZb%!3+0;eFn)CS&?id#L!p)7jX3ea7utWbid8G+p7 zS*BB z``A~qKX2EihAF&UA2%W^l|-Q?f1qia3RL?P{?WMXNuI(hePgq3aTEC^80_IYiSn?N z+3fjjhWWFYH3c@qJPCzt!#H1R;0x{lgyfyqW|*hT(D?27&^S!FPcbR>z9`8sePp== zNdHe6N`E{bN|%Dl>12wuahN8-b3x$fdUd=~wJ7btDikU$?$OvB=w#|o#v>_3kbGVl zk~hwW3BAaTeJV;7*38Kj* z$#5fBt9cME{{p8n+(|xGB~RG-3cLvqE`bE&>i1{5bZ-_U-3UM4j(1bvMlKpN-U})1 zVNY&XA3aTlXF5=@s|@NxP{;svOwJE=5xlf)!#Y>1(oP}<7n%xbOqT0f07!pMtI|#$gY;(!dFfe8L;4A* zI2+P2cN9n`m}7vnA3liA&1%O=LrK6wi=W31DozvW3=g8*Or{FR+WxY z$wvP&LoTHOy$qsnWXx>^FlYCiHodLAN?s*{$HXR^+ZxTD zOYZ-2TH^Bez&Kx#J&_DV38oly!H{SAM1e=}T&E&ii!RGxctVS;Rq_DzV>wpIEC7vO zqMQNfhjY}*Z(o3{GLEfOlK?dLjS7#IAplL*hL!*{KBocbk0Rbk0GfO|{sHJ+#ARFl z`h`5#=4wsMBMiNtg`u??tMH1g9uGd#5NbTjP(#pLE0Zv*z^R2>o19C#R9CB>o2oT> zy3n8}KyET{R8wS+P5)6`_9S1bt9LIEp58ehKGQXb6b2q5wNd7Z;F_EY29xFyjQ&Q< ztOC*Mzkot{!I(h~92AC)2Sx%m(%9qSboN{QgCL!FRfz`ra*<16!_ zQJRgDNr@m-f07adKJyHlf~AD5PlH0G<-R~M;O%7ye=Q+AR}6TUwSH?1n6;882E51K zN{JXSZ9IK|m1DpOom`i&;>@}TT&-iPa`k-fs*b5>P5&Or0=y^x%KY* zg$#ZSOqQqd3*fANRjX268E9DL@t2G#a zsT@zUhS<(JQ-xHza3y?zK-_0?5WuYxxc;yUjeThzV7ve&tb|F}>3zZIHp^P=6 zbfMC+c>4xeU;0Dn|Gz6j09g?n$ssAmQzUeOd8%BI#LR$_Cc5^aB3G7YUTQX5?>|Mv2DB;{DPgM36e76D z@GKU6{e7mTU+PXL~$ow{xj*^?JAVluqA-3nJrra@HyQQaMoGy zjcf@Z-;V#5fGg1=FH-qDwgH^4*Ok}+z_vz7 zw?&O2HLPL!CKV|~7>Y}Q+p=v@4TU|Bzb!5s-FH&&iITdiUlO&Jc;nbPeG(R?!-F_M zF1uSrI89E4X%?wPGD&ZXyIvqHzZ(kKbXyJqzM14LAC|wX41vEk9|ENaykMi0m<-F$ zmZ32$Ok=v)LxxMiIe};YO-R~_3(l?872NdB06|_NELR0`=N*>&2=@7y|0w(sVL8cY zkbvBJol+?j$C(Dh-Njf}=G9<6R#tInY>gawrM`1G$;Ew`Bp?U7Iq>)_yHy4b&%!C$ z-k1ZC5l-=?!xyp8My|AAV^7i0-S-N0j=Ar?3xy2+5lof`ZhbDTo{tstTefl& z2?C}6pjBx_DR<+&Ovp>mDzBRgh3@_lDwZeXXqS?qyO=wQrzF7~gQvuh#~ixTGp3Ix zFgYia_`lBJiR4oG7Rh>|LU*ryjS8A{u_1{JfSaL^0f3mizyN%+R;8Uh=BnF8$V<;E z1JECV%xdWF!53lI2>v@7E$_Kg^wonuAcbI)?X(*X{I@`%Y$V2PQjnP7k^zZ^Jf;|) zo-G@P7iO@gAP#>G=g)L21MwA;p9SC3GFGj_i4Ta0IP^#e4BJ?Z`D}-E_IMaNC*v<2 z0TPx2!V&N@sE772S+2`&Os&DaNUO?D7Q^sSLRNa#3=F43_kB=tHgsdID9}wX#Q5G;gi`>8?@WUlS6W1);W zl;qkz8(kl8b6bCA((U2oJHGNUerbR$i;(KGMTjM%>;K9jRmOkp)B^Kgae3R_;J+-= zH9nVp6$|B;!`l7*Zp$S;aJXW*9j3d#he%GzhjIGZs?l3`^AoW)vn|kCpoPpa6vsEF z+RU=S@qMvYu>Iz96?2A_w2NM?>hQ!OKmimliKKKBr#p!@vRR9 zd%3d-J#QIT8hMbV-2CnRX@ISa12*bye&UeRjl5aLTy_HFB zR=u6k`HGi(8#-&<9{)4bY4lqz(7^8Q*K%`bIxSRTxgCDPKj6e0^EP-(sg>}yLT{JY zT&&S>0LSa=ucI`Fstw=uE?_27>{-OCTBwJE7AW>{%3z@jPw=e)h4w z#nEbZI={y1+83?lDXnJP9qfxn;OuhNq2!1W_?Y+Zk_2E+X z2L@a2Aq@_9`eC;p4)%F#_C=%9ZX55!hnK^_kA{Pn8aXpv__2aE2v^Ov55mte_Ost> z!LL&0LBmZERI$MaKajf@7gS!xtT3DIg=ub_dKK1Y3^6^_is^zq&`_8lr9EXkI(Gs^kh)#oZ z@10(w)^Op_d;^+k62=b0yAh_Ko4}DK1a)AY+MI=WQncFXhn<>8ik85+w`f%ZZnvt% z5Cq1O1ehJTy|&Xr(XAmV1l%Zok<<;`exp;Hok2*gb!XwVn{G`mNl;P`YloUalR|V& zt zd_~VW9RCD}!h5LNE+D5p4M1!)XPV()@7m4L>Mp+L#hr5Dsw22v8X8%NDR`ozhRPA0 z<%MB4*s*;(BnK1SxzOvhCpx|9?StqH%t;7H=H7EfC1R|{rax<~PTgUw-B|Y= zpa%p`^$oa8SO}#L_Pfx;YM?G`hQNPn2aW=II`w9I3NXM8!+JCoL4Q)q*PKD{wmJ^g z#%07R0cK!D&;S*l0}?zJ{3l1FGwP7*V9lLznynh#b%}IGO0mie|gs>Nij~ Sr_sKSHE>X2_Ls_f;{O9F0P+X` literal 0 HcmV?d00001 diff --git a/.doctrees/pathfinding3d.finder.ida_star.doctree b/.doctrees/pathfinding3d.finder.ida_star.doctree new file mode 100644 index 0000000000000000000000000000000000000000..378160e2275092ee10f586d0bc340b20e73477c1 GIT binary patch literal 70418 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 - — pathfinding3d 0.6.1 documentation - - - - - + Page Not Found — pathfinding3d 0.6.2 documentation + + + + + - - - - - - - - - - + + + + + + + + + + @@ -35,14 +35,14 @@ - + pathfinding3d