resalloc-server-3.4-1.el7> 6 6`d63!}|J^>j/5,d`/] j/5,d  I RIP=5$u"k;CK X8:FS=6$l$a┞`pܽX. ty74!6Mϥr*T_Qb8hlF/a`P{@FAX0IY5[ނMmcaf]/9MA4m" +?cznw(/2W%; `*EaOՅǪ#=jh;+DdO2`N5!pM#4\YX7?s3xE^E1[U=?A9Gk@>:._{<\gx;QSN)lq5G?I;JPc0RrtD-dz@ѓ[6#KO1b11f09ff57e5d995da4a3443b8c11407ca07e92ȉ3!}|J^>j/5,d`/] j/5,dVlWpzjAx-f~X@?<??,d  Udh <DLD D \D lD pD DDXDD`(8(9(:%(=.>.@.G.DH/DI0DX1Y1$\18D]2HD^6*b8d8e8f8l8t8Du9Dv: w<Dx=,Dy><1??Cresalloc-server3.41.el7Resource allocator for expensive resources - server part The resalloc project aims to help with taking care of dynamically allocated resources, for example ephemeral virtual machines used for the purposes of CI/CD tasks. The resalloc-server package provides the resalloc server, and some tooling for resalloc administrators.`/buildvm-x86-27.iad2.fedoraproject.org^Fedora ProjectFedora ProjectGPLv2+Fedora ProjectUnspecifiedhttps://github.com/praiskup/resalloclinuxnoarchuser=resalloc group=resalloc getent group "$user" >/dev/null || groupadd -r "$group" getent passwd "$user" >/dev/null || \ useradd -r -g "$group" -G "$group" -s /bin/bash \ -c "resalloc server's user" "$user" \ -d "/var/lib/resallocserver" if [ $1 -eq 1 ] ; then # Initial installation systemctl preset resalloc.service >/dev/null 2>&1 || : fi systemctl daemon-reload >/dev/null 2>&1 || : if [ $1 -ge 1 ] ; then # Package upgrade, not uninstall systemctl try-restart resalloc.service >/dev/null 2>&1 || : fiJ+ E} j J J  oll|| @ @RI_HvXX' pFl/큤AA큤A큤A큤A큤A큤AA`/E`/E`/`/c^`/`/`/\i`/`/`/^~\i`/`/^Ğ`/`/`/^`/`/\i`/`/^W@`/`/^WH`/`/^Â`/`/_c`/`/\i`/`/^`/`/`/c`/`/`/c`/`/`/c`/`/^ť`/`/`/E`/E`/`/es^s`/\i`/^`/`/`/3258432342a1c76a40d3b1be85676e9164e1cd4f4ac7622aeda0cf4b1d4f0fcfdaafca0f297899ad8566f76b425d8c3744b81c90f8fa1e9ecab856c3891a78e8e561b5a3ed24f74e2c7c52e85c56ef337fafbd386bd64313fa7ceea09eecefb9dd202b7316aa421cc9d285c0df30dba1a3935827dfeb1663b77961d6b2c8348fcb672f978a9c2c9bce4bbda8cd1cb0a128a8f06898ebd4a1052067dbdc200017a0f8d4545ee8bad4955a900b1c95e2b94f846bc2e79b65d016f36944555ee001e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855682afd85bcdbc56042d7a4fd949951afcf0ec5574843ffd974988b21701234aa682afd85bcdbc56042d7a4fd949951afcf0ec5574843ffd974988b21701234aa3ee78861a46f801d6674b57782b9f570b0fb2d269d19629e6d1c156938a79dfae3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8552ec758039d2c67a88f22f7bd6190b808729c6f2adbb766bf0c5f77bf83d27c8b2ec758039d2c67a88f22f7bd6190b808729c6f2adbb766bf0c5f77bf83d27c8b26ce83372d6d4b0be6ffc1901bea3edd33a3c4335e3494897e9d2923bb6fdac4c1c6373761b350945c221688e07e28b91d484b504f1f75bceeeb5fd1536d4808c1c6373761b350945c221688e07e28b91d484b504f1f75bceeeb5fd1536d48082da5b52778d5aaee940a3aa7003091015a9dc8afab56dcbba40ee2a1c01266094e37e0cbe7bdf71683de0b1478eb98893e33a404d1289b395b75edcafb9ca43a4e37e0cbe7bdf71683de0b1478eb98893e33a404d1289b395b75edcafb9ca43ae3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8556adb63faa26826e99e87609050cd5117946f97dbbdf88bffd1ccdd533d77beda6adb63faa26826e99e87609050cd5117946f97dbbdf88bffd1ccdd533d77bedacde66695be4f5a7e9157f228cf0c7c6f953398899b9f8f7450726a106461e13a4200e190ef1cf2460988052b4a4b37028e370889f94f8761400b24b628b7399d4200e190ef1cf2460988052b4a4b37028e370889f94f8761400b24b628b7399d70cee6507b1d215b2e8e97fe5c0c8637fd5c51f03f8225c60b3a0c74690ee922bdd13c142843654d770ffee5a2661b71be84c4aa8b2279fa7c9bdc1019f8a53cbdd13c142843654d770ffee5a2661b71be84c4aa8b2279fa7c9bdc1019f8a53cb60c2a410974198b85b56ad9ce4179c74ba2b94a2abb6b7f72f508c62ba7c549c4d8ad34589a8c25cdaed7f9b2ee15bfb39867fdb0cbb05f732fe3a92b6e2397c4d8ad34589a8c25cdaed7f9b2ee15bfb39867fdb0cbb05f732fe3a92b6e23970234c2cc562a3adf2499b52f652100224135f7926822534116b41dba7987804ff68bba548387865947b82aaf813df051bf4bcef834672547079e1b0f1eda19c7f68bba548387865947b82aaf813df051bf4bcef834672547079e1b0f1eda19c767bbed2119627616112283525321629e90ef599f2715707cd974c511fb3324fbb37c3991ddb851fe94080816d8228d362ad6e2556d43125fafffbaab7db02cd4b37c3991ddb851fe94080816d8228d362ad6e2556d43125fafffbaab7db02cd4be6351f5650d890caa71adc1790dc9d590e468137d848538ede06c954ff18cee8b7dfdd9a6ee8ea0540fe5d97f97990069caf46838d8ac4c0574d3bb6631e7678b7dfdd9a6ee8ea0540fe5d97f97990069caf46838d8ac4c0574d3bb6631e76798d9303a914221530e4c77cc0b6d7f8fa86800143c247771bed36c393b1bf5add0834fced9e1917e3c9285acaf3d59a71e446d50f9613cda947eaefb3cf364b3d0834fced9e1917e3c9285acaf3d59a71e446d50f9613cda947eaefb3cf364b345c84e13040f82ad807a5bdb73a7ac5d0105e036d7a997c0d772e1f2631d4df9b0d1975975e5b1d2285f338ed4edc19190445c80ee4aa292e6550a12511fc984b0d1975975e5b1d2285f338ed4edc19190445c80ee4aa292e6550a12511fc98434bff017485aa368c64f31bf25a29e9836136eb868a05c66ce36139b3fce015f3f3f4bd823fa288864dbd594cbd0d57658f14c5621e1e275eebcc9fa7f927d5cbc11e8023017a79d5766892c7fba66f84d2e64539138de951c5ae25f1fd6c9006b9a7e4233588b510c6a36d49d18148713a4bc28765221b177a0f5227d8e4cf4088b28f560bb78ffbcf945f116cf6fa10d5a1ca0134a6dc8ca37c6e9e154064b088b28f560bb78ffbcf945f116cf6fa10d5a1ca0134a6dc8ca37c6e9e154064b90a6a939b2bae8ac7a199728ebb7080ed4c5330db8605f3fc539a3220455d47b4c1c53362eb69b8a36bae93030b4597dcd9505f6294d7d870915f2566e8900513cc9b0cdd38570cbfb7a035a2e0649098bd37cb785a32925e8d41e0bbd56f969fa204a1bd92d95ee56dc3c59b619bb9891da927fb8e29075307a689f348b86dd8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b8806438e4276796b039490f8e02e0698fbce243298a64c87141fab45de3dfc4e9d890f35d6cc293b22d0f24a449da6d698e08f489bd48f2648de571a7f374b73936648/usr/lib/python2.7/site-packages/resallocserverrootrootresallocrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootresallocresallocresallocrootrootresallocrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootresallocresallocresallocresalloc-3.4-1.el7.src.rpmconfig(resalloc-server)resalloc-server@@@     /bin/sh/bin/sh/bin/sh/bin/sh/usr/bin/python2/usr/sbin/useraddconfig(resalloc-server)crontabslogrotatepython(abi)python-alembicpython-sqlalchemypython-yamlpython2-resallocpython2-sixrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.4-1.el72.73.4-1.el73.0.4-14.6.0-14.0.4-14.0-15.2-14.11.3`/@`U_!d^^?@^^^^'@^2@]]Z@]D%]:@]:\\g\g\g\g\@\s@\s@\s@\s@[ٙ@Zp^@Z`@Z_:Z_:ZP@Y5Y5Y@YA@YA@YéYX@YY@Silvie Chlupova - 3.4-1Fedora Release Engineering - 3.3-3Fedora Release Engineering - 3.3-2Pavel Raiskup - 3.3-1Pavel Raiskup - 3.2-1Miro Hrončok - 3.1-2Pavel Raiskup - 3.1-1Miro Hrončok - 3.0-2Pavel Raiskup - 3.0-1Fedora Release Engineering - 2.6-4Miro Hrončok - 2.6-3Miro Hrončok - 2.6-2Pavel Raiskup - 2.6-1Fedora Release Engineering - 2.5-2Pavel Raiskup - 2.5-1Pavel Raiskup - 2.4-1Pavel Raiskup - 2.3-3Pavel Raiskup - 2.3-2Pavel Raiskup - 2.3-1Pavel Raiskup - 2.2-2Pavel Raiskup - 2.2-1Pavel Raiskup - 2.1-3Pavel Raiskup - 2.1-2Pavel Raiskup - 2.1-1Pavel Raiskup - 2.0-1Pavel Raiskup - 1.1-1Pavel Raiskup - 1.1-0Pavel Raiskup - 0.1-12Pavel Raiskup - 0.dev0-12Pavel Raiskup - 0.dev0-11Pavel Raiskup - 0.dev0-10Pavel Raiskup - 0.dev0-9Pavel Raiskup - 0.dev0-8Pavel Raiskup - 0.dev0-7Pavel Raiskup - 0.dev0-6Pavel Raiskup - 0.dev0-5Pavel Raiskup - 0.dev0-4Pavel Raiskup - 0.dev0-3Pavel Raiskup - 0.dev0-2Pavel Raiskup - New upstream release v3.4- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild- new release, mostly fixing one bug causing traceback on too-long stdout output from AllocWorker script- new configuration option cmd_release - command to be run before we mark the resource as reusable again - after server restart, schedule all inconsistent resources to be terminated (mitigates issue#41) - systemd service is restarted upon failure (just in case)- Rebuilt for Python 3.9- new version v3.1, improved resource checker- Rebuilt for Python 3.9- new 3.0 version - new possibility to re-use resources, and client requests can survive server restarts- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild- Rebuilt for Python 3.8.0rc1 (#1748018)- Rebuilt for Python 3.8- don't assign resources to closed tickets- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild- thread safety - don't change os.environ- fix improperly handled thread communication- drop mkhomedir requires leftover - configure logrotate to compress rotated logs- fix logrotate typo s/lib/log/, package it as config file- logrotate config (per review rhbz#1707302) - provide manual page for resalloc-server (per rhbz#1707302) - logrotate also the hooks directory- move homedir from /home to /var/lib (per msuchy's review)- new release- provide summary/description (per msuchy's review)- only support Python 3 or Python 2- fixed racy testsuite- release 2.0 (changed db schema for "id" within pool)- bump, rebuild for Python 3.7- release with removed 'cat' hack (commit 970b99725acf1dc)- first release- better setup default directories- log both stdout and stderr for start/stop/livecheck commands- service: add WantedBy=multi-user.target- fix homedir for ansible- resalloc-maint resource-delete fix- resalloc ticket-wait puts output to stdout - new command resalloc-maint ticket-list- create datadir directory for database files- install manual pages - add '--with check' option- python2/python3 fixes- resalloc user is not nologin anymore - add resalloc-maint- add service file - install log directory for server- no changelog/bin/sh/bin/sh/bin/sh !""$%%'((*++-..0113456779:;<=>?@ABCD3.4-1.el73.4-1.el7 resallocresalloc-serverresallocserverpools.yamlserver.yamlresalloc-maintresalloc-serverresallocserver__init__.py__init__.pyc__init__.pyoalembicalembic.ini__init__.py__init__.pyc__init__.pyoenv.pyenv.pycenv.pyoversions5759bc82a992_initial_revision.py5759bc82a992_initial_revision.pyc5759bc82a992_initial_revision.pyo__init__.py__init__.pyc__init__.pyocdf29a997efc_resource_pool_id.pycdf29a997efc_resource_pool_id.pyccdf29a997efc_resource_pool_id.pyoeac9fc01d0d1_allow_resource_reuse.pyeac9fc01d0d1_allow_resource_reuse.pyceac9fc01d0d1_allow_resource_reuse.pyoapi.pyapi.pycapi.pyoconfig.pyconfig.pycconfig.pyodb.pydb.pycdb.pyolog.pylog.pyclog.pyologic.pylogic.pyclogic.pyomaint.pymaint.pycmaint.pyomanager.pymanager.pycmanager.pyomodels.pymodels.pycmodels.pyoresalloc.serviceresalloc-merge-hook-logsresalloc-server-3.4NEWSREADMEresalloc-server-3.4COPYINGresalloc-maint.1.gzresalloc-server.1.gzresallocserverprojectresallocserver/etc/cron.hourly//etc/logrotate.d//etc//etc/resallocserver//usr/bin//usr/lib/python2.7/site-packages//usr/lib/python2.7/site-packages/resallocserver//usr/lib/python2.7/site-packages/resallocserver/alembic//usr/lib/python2.7/site-packages/resallocserver/alembic/versions//usr/lib/systemd/system//usr/libexec//usr/share/doc//usr/share/doc/resalloc-server-3.4//usr/share/licenses//usr/share/licenses/resalloc-server-3.4//usr/share/man/man1//var/lib//var/lib/resallocserver//var/log/-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=genericcpioxz2noarch-redhat-linux-gnu POSIX shell script, ASCII text executableASCII textdirectoryPython script, ASCII text executableemptypython 2.7 byte-compiledC++ source, ASCII textPython script, UTF-8 Unicode text executabletroff or preprocessor input, ASCII text (gzip compressed data, from Unix, max compression)  !"#$%&'()*+,-./0RRRR R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R Rhttps://bugz.fedoraproject.org/resalloc?7zXZ !#,+$] b2u y-iSqi>R*qp'6tt-pA_l^/48{JXBtP|r.d'0Vw3!X> uF$8+ˤwxۍW׳s-̨™6KQl[<8>c~>{[%1`~)dV0V{"]}yuİ762W4n@ó QU8B'n!ZUiF1SW7Zy@ҝ?`]fXµ*j.=6aZ^Xz.xc̢)SBL<fB})$wXP>kxQӂ[J.Fr $ u :B HBd|aw9:t HpչR#~T#mdj0F^`rP)DBl5G: vC1TEY6m->hNUhlП!{l#d&kF+}ílFhr-34bLS};Eku?QX ٫#/'/8qS4!i^7Ӗu.Q$dbl7H桿tVW0ZӼJ]"urBjo}A Q.ZWH7a;!7>1/RgIT(u]Q!! ,Lʎ3Х xų*_D[mz { +[ c N`oL%=q.NL4aâ4*^09w(_Cf@=Qm6azU$}0h@ؘ0NDCT9GOQoѩ_ /Dɲ(x>iRGDeCpMN{8I} ( ܵeZeZ:`) Q˼cZpPi:v&ɾ|:K)RvdBa q E`ʝ?h0CmYk hW@=,OzW z-Tky?@$.@;`I,5uw9%)2;VQUZH75h.*ێA[Gt54t$RBf5[?+bD:->gdsIW3 i >6QK^NMyȖSJFC \,!W۟^poCn2X-s5x(C!tlI8j?37oC Ck_2.(OIIc$7}N NPZ]G`BdfP<  7PP`½^^%)bhո)1(Pt9bO #{ą'DQҰ^Mait99? z], yjDfzb8|^t523q'7PמHE/}ǃbobۛW1|KwzLe.jF\؍ ^"' BJߢ%λ]4+^ $1M9DI_.@A"͋aiYfqp!:K!$)QKay+ZZ2%r@trsddh]LdҾ☹tπhBi6T[ +1}iCbbf"R1z6y B7x ,?8( @pfV VmW >~}F45.+nrWqRdcEǏ›*}'^1d-/0z@-ȱ}Qբ k Ϛ] ΃)ۨV󛳳eFϲ83Pub尞{%F`e)aG9zhj|ό2?eWݶ <#Ou(,g5FdXh`m&y_ĿIH挷ʬx u"Mq&V-wC-9ց} ZcnWj=$, 6ʻ~K)V%n,PË/<ȳvv+_ Dd8a(e` bpRGWcUe'+sEπ.ox԰+9Qk,1{ c!۞#5ٗP( aNmЛ򶝦K%R1UH1,SV}~|{L6ORVRL:$@sڠ-h_q\cuڞ+$ aǜUoөƵ}FN"`˽߁;K><@YzmȞSI}YTFGsjsn_/x%ִ\HR#_B)p+jS8i9OFz2.-N=N{4O0E,Ǒ(O-T >nN k9 [t1c<~볅z yЁXqO0œ֞^oV ׀eRf؞B[װnB)߽mXi2y84=itN&PSpJZʖѠGkV(6hX3l_}2 aح LNO̸tчjG4ّSp:^1Lħ~NO7bEc>LFp_(&3Y`S?XY<5N򲊎M|S<QvC洛Hl{tmXR ZD~z=&^LJ-ڳ|Abd!A{r4Uç &JH˔y^b5ۦբN63]E*=V{;]rEBATxAo65EKRl5וVXhVy78meǖYt Nq}{EUBh|NY>@{z3pk[`5MWhxiͬ}MT$@g`T ˖":gW#:[$ZcDLa=t#`6PDÛi{ִ;b#;A.Rvb6,ӆ"ٶ_>\4\C_0} AEw #:.mV D ̷Eƅ\!"DQѕSkn=GODpO)ajXL=w,.'3Me&Юu`,k9XQ8[d7nN׼6ϊW#t,xt d En A'+YCR>-l`6ZC{kJH(Sj+hIΥyhoQ[tڵ(2چ -PJ_z7T}3e@:;%)9\a HdsC*~UX!/Ԋ 4hn56z`ET}%(mJOLtL1# x{˳szNuª^=Բ):\wT[|x;:) 3}鶋GZd)l`EaP.)l~' ?küE˔ҎjeG#m_ DpZ*fZsߨ__o`'$gVa+Yp9*u(¦{R 8PwC)X&QthXw& e4~Jˌ<73Q "锸q)0V 𪴴ܤz&gc!tp άe f[HMʋr9..| *~&TzDV&9T-hKȠI#"P՗TsK|RkZ4Fፎ\|tr`˙JʼnVɾF1) c7_SM-RON)‘R|$f1Uô Ow:#tŞdY8:ܑeLnn:!78+aGI/Փ~]!b]ܕB1qX=^ ?tޝmۨ6 0٭m/:W8W^87,Ϥ UPXҹ!+SB۳8{A|%G~A gPIǴCnt,݌SS AJ"JYQ|:+=ӈqqC[(%X;^wZEarx`B[VM,Gm io#MYkj9ѩ L:T˿*v77خOߺSYi0 Ca"w@"(?:m247N檥.6 frtQCS|3>Tsx Rc{˫H@iFk5zҏ DW9 ~)p"EOqjMvS"-<\A0_zP"I%Չ$![c fߜ ԽZՌ IJy54(#RB޾fQ0s&XJݳPR}gΦHhY@;򘠁f]p䠒PAsȉ6}ջ"̶kʞuU:ch;o_a~0T&4m^!#'V1t+6H[J=QLao)E^Ets!4 H$hP'(wℸlbTkg-j }48]m6h3P䎥oc\ԉn͢U1 ^_kR?!M3 j~^1UQ G(`3PW]%?',-Q8{)?LZ9p w +bm[5 *ë9Zә3 wL)**2TQRa9 h}$$Č;4I,. ~EFV.kfJDjn#CЂ+݇ܿ9AڭnxR-, ɐ֠ٵ*z-|`nV%xr\{t ;mRl ΃<7&ְU]`چ"[3ZZg"4Mr8zJ&r&<[iR;w[(%8F#2/ZdB7Gs:;Nd,4~"YRtՔB󕋵OU+;eOE?_K,sBv{6f̉'MMg(0n۰.OEب"F𜘊rƵYk=m}k1/rsJ[W`TY->e^_?8OgCrT < G^ n88GPn`>?ύ. QS;`%@q Ҙl#jB6lzN 8$]mJ\ NP 9Jcv 92pb`&T5I, |FJQV YU )C1,W*Ҥ8<DA=iHҎV2 6 T 'ԙO0~p7|-T,+E'nrkZ `% hphc!\S[51yF6?H[(0ߒ7>&'JRq6:|Hbㅽ|L."rTHDŗc܄e-Y0TĢ hR0㘜|tc$4qIL eX)YHވ)џev׈enBߵ\..W DVnt!eƟ{&C?RuS&5KÖ!+6ы}4eDiD䜢Kte>P-3eEֽ*&g%BT!xOۂ HIԈR8H`_ɬZUTa.92m[,$ʓI%3% P% ,cYe>'B3i4CW /-O^ 6"!V/5(JX8Ǵ{!KNFZ:: H01̣2kpGB.{xuu^pۧpIvږB~1,hӅ(86x,%r)rz\M`u^ZVJ1pф+ (ɧY@ Skm!q\B. #zJ)ULik{L,Dogj0.BMRmG"eY @It^#/<꿹҃C dFr4E\73.:|p STdJ~X]n+LW?Gͳ|Nq&˵Y1|8I68Z-H2o,uKr/}vlƈX4PIB=\0 l-<@lsI3MUgZ,bЙZK{Bb:Ǎs1mGUӚCGUT봷9R"?#1 Í'7Hk&"_78q̌j||.FIQMzPiqݐ% MC(T\qn!揉Vdѧ@tֿ7:#ַqf؄ӂރBZU0fԐ `tXS{x2ٲsg٠ќ _If5Q@>ژxȻIiG:ތ~caT2s{ n9VkQNDG^Š<Ο-f~$gТd1q 8^,['$  J.8*W\fVHRף74^P@di O-1jTǎff],݊~N*\Viߟacgx6vԐ:1<E2Q>^JH-SP+B02ߡM8+vS:8ʲP=6ؽF (&ӱŰu4YR7VH4*!㚞@ >` nΜVq3Nty@&Ys=k {׶~QJ5!ÓX55Uq)nXFZ6Ԍ<0&$GI#10y#ߧ\O1E >QBO% 6@,3ns]gRU/$="XgZ`0w")ډr`h;nF=G~FzhrF]=G%H'|ӂJ}zs/w=½Ad:{ 8S薵Փ|kdzoF;pu^cwEe{< o -Y{r`dڎy~yg_%63̽1lc^$~7C2AaMy30ۏj[ZCŞ5ۍVxJfӿWw<^2˶!ƫcH%1!@pe' ¬4fXgO2F xg>mHbb n+aeO[=&Lkk=?u#~輲obp%n}EUNP o(kN%C F)Ϊ*dd=ۧ +TO0xiƟW6O ?x`C[|SD&Ο0^l1gl!qkWٜy!WCr1Y6Z_(qc߄(NFAZXY@YزdQ0C(xkO+R̓J:D/ak\ax&&#JrfLoq$oB~NugUS274n3q zq "KBUuV>AO&2};J3b0UK=͞# KEטplv!og(Q1y6=% :[O8ͭYj4nTԟ滠<[[0HLdkuր;P9¬w|W_8wm/B2)cfXY%ru3؍mDJn6Mm/l- <$(5BJKbhTC (q5ͭhٔSa/*e9}nOKnXl^ OEi礏J+,b/t KmLQvȤW!WO-et9f`Aj\ ЊJCz`\t߻GɥDNr)~*+6U?{Ń́]l[){%(\Gebx u73-Yd|-xk;oZUun@6wS Dxh&yהFH* Lp7- 2ɜq*Mၶ,$W/ %t`{q Zy 4rױ\=eIfY !B4=hܩemp,F?T(Y6o{6#1L1‚{!}zxc- Q'`%m1kmz~fjDŽs5醦g9 ݌ $8Z /0 YAŀ5^E kJxb3X.Q( 2˳w{RE+DۛE(g%_}Q'n'hb 46sȽNRT78BF[ *OαnŹczG1FG1/͇x$F?0mij_q;%itW6xz[! wڥđ ƪp DtѨ0e\,? (v ]lޓP C.QPxHX°l%[Ku@.T;v[m54AYʹD6jk*'Z; 3(49/w_(h:>Rl'?Ḗ,E &%u{F!?G7j_&aYSH.l唛+s1)ZM ru725mτsK.ϥ=-v?&Ycb?699d`kQǦ_jFakK7e4!K=xfOŹ9q Q O fxKo*nږ="Q4[A=oW+=ed:qnSS 5In:e3L\Ow2s=y7;[GC0Q``|g!d=:|BVu&W_g :>$ Rj$ 4' (PߝQ~Fa8hz-XLPF+ !V/ָ~uۂoo|g(bG &L.gKG[lq[V|| bќDf٫_LNa;vJUfx>\y֎i˭y8v]P1J5'ɗxrd^(|%7'`<܇8b>}(+n-:;]̅sj$eX˦2fGрi42,/=,A-_1jQmdBܛ[ewvYƔۖl$00dt)Ͽg fkc6 }dS#)EtCZo1w栬|"<{y? Fp!S>B[hC[1o3N7 )8̋Y2C5 Kalgh.>r1qTk38E~bQ):Qdo g]Bf 4rڛtL,Zc}B7`qe{eJɌ;6XVMKP&Xrm1P\1(#?hcF$ 7#Խt~޳ߓo>o s2#gk.nVUދ`dVLQp>ۍu1`0]cF>vG3yq}$/j–(^oc9T7{pOmvϿ{}ҹ oj'J%}HضtUrE=ʩ]CնPL ϵA_t"R5ߦ%4-rMuCC*B(/ ܳ0qt}9CWk-93 ߵ%/l~=ŗգW8*&ݳ'^\cDuУ)cuHdiK =zipfG]*zÄUP\;SŞjzh3-UC. TuveUYN"pdr. rel(JRǮSnPB'[khv]rg HʕCbÚnD&S3:Đh k3-ڙ1c|;X08G@(Tq<ޘ̫Jty\\¬0K蜑U~~?x-_;po *\M)G+ 0Q^/{{[x;׊>>I4{R*"]wǞp,qC%( tNs:NbEOaSX}*霝.cc1տ0'AXNڋuKkt6Bp\",0K UÀ r^yqp~FAA] uTD|xi{8еSjgZKk=05<G]~ +{h0Q%(A! r0X>kR \vI8@mD!fL6@" NOj$/Xg6>lwR"eKSMQY2 m]hCr7RTC!hm)|;׌ŽK+T2i5BG&IߨQ$qt0SnuhL{L"$&:16oE?]4AE5@4̈M[nXs >$ }6"ٛ8Qߐ6ߦӴJH=ߞȔbٝsՆHn??$pFȘ6(=aj-BV87\ GoXD/At WMR-]+@{Pgz$ ݜەKY5Ty&TM;#pD5*Vs!ѼdUl롿3@ٺFp:f}u.$rT3%"B>a/ YKtq ZopDA %KAYb'Lįk46QSN$8;D(8Pn6#`BgG$!oUc|4:֍5&V&Zȸ9m ;/>JOFk')CH)f\Õv;ә&|=ֽVi  YbW2 >.O^/K449Wկۻ E .RI#]nK2".]8SՑ*#'DVjU'(4 Ƿ7_Ox^.=Z"/݄±hg# ~7Fz>yy0:av,4% Qz2uYKVCM \TCu!0Ӕ 3{ a_xU2}.XYSYP(j nGxIRAd X ͢ D">h>[!;xi؆ mMvt*dK£Q:Ԡ2Н><a[Y͍)dW6%&Y6mT"q-dP}yr7.TZ&毱>2jٚYI&Bҁ-a8#Wm#,xʽg'&\h5$Siy2[KIt&@1U".dR&wFSj*1bQr9YN-#G V e9у 97&ts$u5N̂1`WP]K^}Ug♰5\!:p`ocXFghgE=edMxedLX6 fFNC:Q0ʗ4Zޢ0bBs1Iލv=ΙVP\Ms{x\>'蛬Ď!.vw09i;C*7_^{`RT!HF^!͚O _2 ۜž# *nbz'QD #g\|M.иsPHY-ki''#"r#әlTGyzq/fe8 :nbCbcZrń:n ^˶@}(e a?d .C"}~:R- 2 {+0wzM'u) R#ε9$𼋵`*->X9 Yxx ?bA`l#ޭE ~-mz:'n N؉Y̒8i|K7V9Pgٽ,@%(7j%ޟH_Kqt`tλ HԖßCYP&ͧ)} RX}dk. b~ ֘l!;d] 0Oz_r@j=lv…1J;xCH84fAwtz~^Xae$w7Od >B a<'!;_%`;_dG)PyϦ9c'?l]jÃMRiqtSmQK~J\@90faPg2QǼS xNr҅lrmL$=4K:aːMr|xAoHx7{U D`LFP3a T)3Ri!p.N(n;yZ{عi$"e?h hSL<ύ)ZD$d]P)㛥v,Z.8v%"u`R8Ag?o 'rZ˙j0Q ) sw7ԵPMOg&(&-^oyxMόeo\?Bȇ)?8^0}j2wuVVf)J^vZ/*ER%j*HX }Cc[\n*hݼ`ߝE+ NRǞNn:_3_#-|u!/̳^M1E:xƩɜ1 `:טcW2qtAoQ`y釳2\<zE;c F 3eYS#h4PE` vǻ|!>3@zg?+![fOms|V׆=Yņ JWVD_KOU<1}χId u[s7!7W |JDGL5f WlN~f&[X&8[`|)RGo:SBQ%'qtl/#{?c$jq0pۗT=gn϶ϤςD;½'©q8`nw33>217yUJ[86R/WP=Fҭ?qL%3Ċ@5ąjCn'>=)AA:p-*P txmG۠7h:*:_FXS>ۛ#ʹvem3Gf%ݽ2'S¤+5U ]6la%$Pi~[5RT)?+Y[ALW+>a4a1|6{\N(syd:Wcc>ZEk x7bϺf I+sCIH\gUKERgY\'pf$0 kN|<^>/ƃ [Vu7 Hj'@jbڮ\;zb➇ʥzt 1 YPkxr0$4.S̀Z6tNYX +w8F1d7-J /KokոiS%{EhvT cc̣p&ODߒUΈ$ ѩB H3CU1zʰnHόcwI62͵dY C7HDӓ@K9fg~8߽›Y;*M|aD{\~n#gӕmq5xon"ʺt]D337|:Ǯ*Co>mx1/?4Q™"TOaE;8>+@\YdDܡ{v^v^ʒ} h 8)_UM1Y-` Wb?9jU71NOÏkD̏Nr^cWg&;0u~ {EwIH9vlRGD.9AǚJyQoE&_ealjכ0;]y(aKd:$K]* :<4+;o^Gw4о`ҼǠѴuȗ G6>SP~x 3$ Qpom\@%vTGѤvUw Q#Vއ{I_Ѣ7:Rc{%G!󱊎M~ORmu]Y6:8{xS6 x&Su /ݨ08X3u f\ Hw}א3qu_a\@?@%:]/;.;N7<e6g#I拊Y[~(u@5ǀQ(DDaSv`ILd 2U lOq^I74A($~8}˗F[3Ī .88$.}ɢ&RgK&0il[gm,x^VQ8frV؅FN2Xv޻np n4Ps (] iW.CtN(S#KdAUgZN<g=%7<$=ȌrEg/Y,h7Ao>`/JҁʄB2\z?ab˘DXtK D%r؎,Y@}zh} ގA kB\soсpg—bYʗNL0.#w\<MET˿ʗ=^A<- d 3ۧ 8&QUc@j˔ >i1.x:v]),X0l1~NқAw'tivveYN ʆ!ڣS1;WP7 `Dj]we*k VƖ ԜE\' ~8M 2m:mŷS(BOeXCTb̼[y|*.؏3U2}Yv:LTB.DE6 b8c~8ͭzL.F.3OhֵrހuV[I:ДE(@a2iV#lPj{ڤz@I7LtDqXIW;G3E*caz}oވJM,sL%씋.BP12w D-ITysq㸯\\/*Kdmp8#tc; U?T%'.~ngaT6 !v3sS9]`% ddy hVL U0wcb~E%d:gc3ٶ:A[fI0J!躙!8cDEL21:OΘ`08exK(05<|c*t 7_zZθ,$"DE:2{GU`sʃŀaSd`/Jw^~{Mͻv\'*N/ FHj0NnA2Q6C|Z AQXk w?$V +b0.uJ^0-FFʰ4H}km)Y kMg50;9*BpW*Q&ZI/@*Ug)oJd 31tͅ;s*1 DQf|]vqAȯ81Qإ| SBv21[9>۳}6ÉdD0. "M 9|@ #(i]N'˟#'OQdv_{&qDB2l67_=,'-/#S1|}ROcQ55*wO.cK0\$ٶ}Fλ$n?3rDO}L'Z<|q>WBn / /mېd,k_V_Tdbyc5Tź]Aad:~ޑzB=B (tPScgg0(Mx ͋voCC/%<.FD0%3xB;$@f:/}2XFP^'yx^%:Z@by1Y%Yƛ(H M䝼3BUj2O?FıfV!6?Ŭ{mغf_#ĴAsIQDݓyNcß4} 5p&-o#pD<\mӖ8ЕSo&DA;G_cRŠxC;j.H>S$q zN0Z>g]s \ h(OCW[,&6{]oHK&Zvۇ8xe1@ڊmv(w#ߔqy߂Zևh/ﴛ k=Kr 𾍢@0a2U %X9ϫdp~P,7%Z,8DPtNUm&bPW(;ڵgh][YjmӇS4j`a>0i.d+O!I]5;wH#X a)g _qx ;gPh>r@`疆 ^\+K{i\)$@F;y `SI+%,qQnDycKEdmO"=ʥ@a1j(p7Hj7Y"tsꓴ3j8JAq.ӆ&BŁ{ E) tu{GB FkzmpӤs->cw: Mj_JthuOw!?CҞm[L_'>sc"UzrG%YAUۦr.F^ 8mI[(Wq\t`GOX"8iiw=~΁eA,ҡg/aTˋ-h+fÞ&+rBǹH퀙x:lHwzBL(Wc)7ӕ3:<Ω 4~M@V+[ҐrZ*(>g,/bQ*ΆKyG%n]:"g}^ ^ 3ݔÜWUd ( TOU~9@;x.gJrLH~aѯ)&{orCZ V^YSC=ɜM #& VWQfo\9op'K!qX{ Β?EAKM8w zGO^ }B{¬IcE*D,19OҀj/J rl 7G@J0l,&N}>znt z. >[ 2# 3:tb̈́~9"n!Ė K'rrYoMdE?7)y}/zpߋZJ@ڔA/8Y2>|^ (47]Q؄8Tb E>3ђ%#.2b3ϣ)SQ)`1WŬ悄bN`~(Xj&*-)5 pWK}ʏdiZ)`y6ꔭZ)2 />DFQ%FcN/9 mn{ g*O(寙6nS(r镃cQc7L+Bfq$WNh}u<7hD .,t@p;ِsXq-'{͝Zkz\DX EE% Y{&gɔoPz2y+O(`CMU ߷Y2˲65WH}i['DcٰZ@Y>18D2ͼou*?uӾԬ4$EM0Y?)=w>$?u T8 _<g{u;Kf윖h6m>eї=ij%,AL7_ ܉"rhpaI\<_)Bb,jEkq @iׂcٯ`˸!Gyg0 Kf0AtGtnaX'uuYm !JNsM4D|ϼÊׂT7ІdQ5'A.x3d$^Oģ; &*0H)ONef*b 1Qu)lgf-Vܐ[\>YK$}~m5a:EݏWT|zx^CLb/|^מC2sGoAX[|$<6Uf5G_Mm:& 5 JΪZC2]bG - K?'`srrwurp L |9}Tf2wS SMk :)ʠbaDJ.)F cG(P!2lx^Vyov-Ot٪YXeW˞S q `P%w+%:._T<(X}EP"ADBlp=z>s oVᕖ"Y2^&I_l̀Sk" $KUPxȍ4GCmK%&w6|Wס}a;֞k*֘$0M&Vbd;?W!)-jt*ǐ).B,\ ?=`"hZ(=y'w2zݒIem^X.z7l yKrI}]IiS!aGEŘ!eemRHuOQ}4uKuF4¸ @;H^T3o- &ƹ8Cm N:@ezv&j!ۆ_.76 w%֜z#4N:S{z:CYD!Op^ݓ="Q |.!YbA&@9^h49`i)/-*ũBM mi5\uզ{:_~KT4%q:S0pc4&Z5fw&gA&.w_r+xoH6cO{y zR,J  ( ݾ"?Z-EkjE DDcLLHR5j?C:$&ueTKco!RZEdu{ X]3О?7Eq[҅`=E_/ >8M%N"44~#%Ϸ~^foeL]:(Šu!_~m4zΟr"k[QbQ3뗷ؾMAs$1n|*[G(5Ƀ* UMAO"/ulG=B`)d ~]05JBDTNuE(CֶM[DK92-O]IK@U2wM f[lV[D@=RŗmG,jd@Kɷ5 ƠOqws^rGh\-&rLtFl+eJDQgUM3>MMZ-ÇGS]0V74`\HYr݁aRэC\Jq㶀BҚw;[$qCZW9sΨ`4߳Ƅ|"q3Nj/jD0NO=RnTlkR^{J$pʪ6:Dxu<7Z_E.CHfR2{q-޳J˫O?=/*_}@}[0e#DbtjnO))Al{Kyd.m6mY>? 'Um>kXY(yzJh{X0"OxYSp^[[4 }wC LP'O6!D+00"$lP8^p/g8^z OH(s")t4I]L!qi|$yM+3-鋭&yj'֚\/76 QJ'v IrdZ V#..𚩆ESѢ!ና.D,iVO؆zNwZ3h/>*zt(W{)('q;Ӑ7J <,ے4ub\9uݓMDZO IeD[ Ǣ`105Q_<G`-3IE$'Qn r\% HC`۾&dͪsH|7avU29R%4GOw׹{&^c9Q}\9#3ђ,/&sX"?mb1) YU~Aj,ehߝ`DKM^!.l-.h]Cn{N23vn,6nehfYԡƟ:ϩa/48 @[*!o&|2THH);'d ٴk;/\땽 gR`>8sDQNUO݂^E:1,tN-ߴW%QNdMBfӡ_)5ح{Yn6->މU|R8LWB*BJҥdxsz`TqtZNP{|;&b?0d9vAko`g& (D=>Vdb8ni<5ǽOʺͥ*Ej3 Ւc_]HIrc_ t'e% s[QZ ׼͹bfRS2s0h;i@r$؃r#.^lK7 ư:E97} RV@A%3Cn(PnAl|>{)[B|cJZY~qm~sDZMR`S㷽택~鳥&gGtqh6h4m:i8{̨G 4#Nv[XlFdCSq-䃾)]4>EF3O;e/~|vzBEV)/M f_($@pvj\8lJOGI{ 'NO~{}ͺ}op ~==m3=}m~ő{ 'vrli7}V(@;$y@-NY C_I,<5#X|B?sGxD&َ_JZ_-J'Msj .hgω8I7)+e9L>3ȲJYsE_oJ''%FRx#[ %Г1lwv)LpW6gCg]^1@.vH,q0{*쵬OswA8Ԡ^?Ue<,*@- ާOPV1'g( l]Ϊ,.f֦Oа"< gۣi8T 0NIDFxAni5WN{ƕOѓ{^ <'SqDa@$:xܯs?색Bhﭿ}gЌ8| +,.I|fiI;8=>_NiTNM3Jo(Kz|E=Y2ұ牓cӬt#Hp|"8G ^BOgs$ ˑ-IHSi]F:.w;XY7isd_Pym_yzRު{BŽ=277Y_X'+2V4:8+P ~h'.yLXbN| ϹgR3c㊲ƥDz#myk'E^WYQ^Dr1}?ҕlLmSWpaM.J|6)'v"сo e'z=n s|'rHZL swq::٤}>x({J$oEXdߪsXF.,v(+VyU,M~* c& ƨȥB(ɃfJ2M[\Ew/bz^LϷcfV&PK`-QiH2)1d^O*_s=.ń1ʣ_x7/ jE f}'V`ɴs"(\ @gQKGV_B#WWO"w*Z3:;/˹tG.P DIY H̀qk3(02"[]ģRO\ L^l_! *O SȑIsl Xst(Qʉ{ 6kLɧ+``m{ř]zלex~YDՅy0?>Ҡ DN+"Uv?drև("&eDr8@0\,?\e=e;߹ : ʍ6t>\zҐQIL$,˧2Z!dr?GijD3aņtg+]01؁a=e_y{ R6s; Zo35q4snX$. '+;Y hjm5hL%r ؑ|f~&Լ \D~Ήj*,Upiy%w' ޳"clV+]NN ˂QWлfjtfID@;b[|i/Sk,&;B /,%h=' ʤ>%e Z07H- bttTwts] MIa !)7J-^=|e )/V䙃ᏬȶǑ\H&8|d}Εn 7_%čJF]زzVtv//<zR:R{Sg#"nh,QjŘ x54!.4(DupJxͥ#eѪ Hx|MGi>0# !rQ_Č"Avc`n l+RbO0%30-=. @;(e㐘ZS9eAqp(MV ijVLdL><zWpl/-ףMN4Mb_F֊U*;^"Ƿn}$""ynb|WKFG;TQ 6VB X6Rw4 <&w Rå) CK-zN?&)g_Ȭk7&'ĝ{+\t#LȖ4qrNVsvUG80/d׍nJݒ#7KG4Ӆkd%a| 00'8\!N"c5/Bhv0DhuwӴf6a? kkCSwZI#&h[ʙr΃ZAÉcjFTAPr&TӘHtOkyY7NsOM,$Rnx9˄c8KK^^%J"O㚦ڈI3 s'|fp*x(!kǓ]K|peJ#xdόE?5+ j5-f輁\`kn )я@77U>OfNcyˌ1VS]JJ֌$:<>2-'wZM>shN,C9.*HUͧ÷~ B  hR)aD+(@ -s9f '@'~ L֝0#pW^X&t+6wԄl6aUA~$;Yf4r#nCȔPVr:fiAo|a;’˿]ڻktL=ڙ O'&IGjλ<[c4 ) 0ɊHuDz=NZ7 m4[ov/Yʻ1JX9Q4b֣xpEreuGnQҡ ,U60  + A}D )3#K{PϘ&s0I[`~m;SNgz˔L& SjMc4y.9sYrS~ՅqIfWHʂn3sXB5`w7) ڗu~[mPGAO&/]p4 \فmD,wйJLy!B6Lc, Y}.E+! a!c?}";{E–)>+XsծȜO Pmь== 1~tvT"夳 @yKj\`^Se&yS [~oa * y8PB;x o#[xѺ} TUYzՁo] Sr;hs@[a;Ͳ5:R7Y#e/>lw|n71]W-SU]V.oOum75K#C0e,\UZ.-Qza56`i5uXpq.w*O!¨Qy~W~eCý?e "d,P~;J zMgMyh{35l9XMJԪ^H m@ܛH O 2' ц+6 SĮ)>k"A ,/#.F['ZC#a]RTC}Ze'pmCJz|>L<-䯬@=Ј)~5՛jd*k$c/)w9m"*i^`FMdjlz3.|ͽSvF)RPK"TкXO%vm92~ 2l1͟x(G#u?*IϢ7zIېA0XK(<'G)H=p m-Q ~c sW(34?ٰ,F<~=fk-F)Exy[e@ GAyD#Tst2aB A,<%q yy1D1ݦ{L#BK? E'%@LƤ>%`PB)JCM-;v#`ͤr~K88=)Na)܉`ڷ̚_cigP^+by9v0KhM^w/+l_.>/D_Q#V{/iFRp=ۀ)>j /XG2)g!!Ajo 7WP)fW*w_&^m-ĝ?i3̊M2Ʈ!T_coM- 1ܛ`>$jo )m:m(B+HZlj<+i Ԩy$ό4$0يȗF$'vvJ_{D{ FT3XcdN(Q WSRV{ ]@6 :Fj#=a<Sus҆{MNuNJ2̓&yytp%Gxyȕ mRHBvfyXtHpscgRm,|#.Kߊg$Wl=\3/FB}e1wVx;Ẻ}( ,)>M3HU 6M̾8R~ܐc Wyv@ }d1FYɳFmkaxhjaS`u߻oNm0w->"Gq\W({UTIiJ68Ɲ*~~ [ m>HnqG =^PI#ɥ~s)w ~ ՛gE/Ƈ( ǧ@vO|c7_0Q5ꛨf<#lB?O~P,]髵 zAPEǴ&ÍiG3y\2," h#}e1/DLmfi9[ץ>u}1EwuThZjp4y9F =SV (b9Q-ԩØy-.A1Ry a M¼t1$T-"%mo HLmHHԈ9PN<5 ,j[E1npMXxeRO}C|U$.( a*#T|J`8rӃ$/= 4:#{U)!ji)~^qJB΂53[?\1MW!N(npeN"-䖃yP$蒁_Xxp@kKrd-LVO U)RKhHvMLTG#-B!uc UIoY,߿\LsժLSҤq\K-!0v}HXT2 ҝU1"u K p: TyksDgKbT3tT5׮Y0Nv?#~3A]i7r%$]~#Ŭ0IS)|sZjjgނ>NEw^6b F'-ZF {AtEIP!>I .ѷNQM_%0~ߚ;! >c C(_լ{3ob\5ݴd*2mߙ+8V| %zZ]} 2ᄁuYza-Z=2aSi1Sc̵2|m+e1)qeuC@?L,3a!yӱA6 P9%ܧxMOQXώÁ'VP:KNі$JnTpQ:ƺ +"󬻜Mug9qtb9V1/S]*lxjj"-^ˬ@;/p{ 5yef C jcQH svN?:2mK }oga5.0 \hQ6Dq??Qbmpfީ! Y؉U?aA5, "Hj<_9C!­3m0χvE+q)sN\Ԉ65V M1ض *P YZ