copr-backend-1.26-1.fc20$>pU^/X] *>Ad?dd  ,+:A PjM8p8 8 P8 08 8  8880L8,P!!!(89L:=W9>WA?WI@WQGW\8HX<8IY8XYTYY\\Yt8]ZT8^\b^d_7e_<f_?l_At_`8u`@8va wb,8xc 8yccCcopr-backend1.261.fc20Backend for COPRCOPR is lightweight build system. It allows you to create new project in WebUI, and submit new builds and COPR will create yum repository from latest builds. This package contains backend.Rarm02-builder18.arm.fedoraproject.org'Fedora ProjectFedora ProjectGPLv2+Fedora ProjectApplications/Productivityhttps://fedorahosted.org/copr/linuxnoarchgetent group copr >/dev/null || groupadd -r copr getent passwd copr >/dev/null || \ useradd -r -g copr -G lighttpd -s /bin/bash -c "COPR user" copr /usr/bin/passwd -l copr >/dev/null if [ $1 -eq 1 ] ; then # Initial installation /usr/bin/systemctl preset copr-backend.service >/dev/null 2>&1 || : fi if [ $1 -eq 0 ] ; then # Package removal, not upgrade /usr/bin/systemctl --no-reload disable copr-backend.service > /dev/null 2>&1 || : /usr/bin/systemctl stop copr-backend.service > /dev/null 2>&1 || : fi /usr/bin/systemctl daemon-reload >/dev/null 2>&1 || : if [ $1 -ge 1 ] ; then # Package upgrade, not uninstall /usr/bin/systemctl try-restart copr-backend.service >/dev/null 2>&1 || : fiA@L)EEB88==avRR/z, , F) XA큠聤AA큤큤큤AA큤A큤A큤AAAAA큤A큤A큤RRyRyRyRRyRyRRRyRRRyRRRyRRRyRRRyRRRyRRRyRRRRRyRyRRyRyRyRyRyRRRRRRRRRRRRRRRRbb52453bff6a94b9c0e558008d7328cd5a504e3a17f07c275f1c858ebbb0202df47d4bfe116cb7d69a80097cc8408a4aed8e88cb6d769dc7e764416bf3c4a6d6ea843c14cc646fe702a74acf716a7c33451c16807ee55ffda593bbe13ae3abcb42f9a55cda363458105709875ce3671c656d76de75610f1539ae16c91e6036278421329ce498a0125b78a2134c72d119027227bd638206f81815970c58fefc93e968fe96ffe55110a52bb4b3c32df3946b751d399b55245a92580e344928e866b8ead9d3bb91630efce646a3430c53585633050799594c32855c18bb56d31ac2ce19177b59f8ccf35f34ae657b020f898eb162710531ccc480bc7ad250f86f96ce19177b59f8ccf35f34ae657b020f898eb162710531ccc480bc7ad250f86f968670f7e28bce10fda3163ac32299b1b965e4b85ffde8517b68effa54cba5d120b038ca2bb5eb1f7b354055577cdac3bc8fe8e228a4baad587d005171dbdb3c0bb038ca2bb5eb1f7b354055577cdac3bc8fe8e228a4baad587d005171dbdb3c0b768484b2e9ffad0432d5b72800131661379f897a04f0a76ae85fa336af4d85d45b271522794f2f0c4c54558dcc171bba32a882d1e1c448d3a3211237cdd7115a5b271522794f2f0c4c54558dcc171bba32a882d1e1c448d3a3211237cdd7115afcfd436ff0a101ddc11d37f08e207470a00ac19378f2a7c57b88de7724f84a80268cb7967ed78e497ef73b848b8c47fca55c9134cba8062da1118c14974ff0a7268cb7967ed78e497ef73b848b8c47fca55c9134cba8062da1118c14974ff0a7dd49541766709a781698feddfdeed8baf5687a2b6bc32ba60530ef62b1845749e8f6ecd87024df771af9cf9cf56200fdf5b07ba545f18cc5b3fc546715467ad5e8f6ecd87024df771af9cf9cf56200fdf5b07ba545f18cc5b3fc546715467ad5081a0b5bc7532ec9e7ff931565d93779e9cc42d5decce24d5fbe7f4d51e1753340868f7411a446e1b1309844252c6071dc2873b8cad4c5af8b03cf6a82768e6c40868f7411a446e1b1309844252c6071dc2873b8cad4c5af8b03cf6a82768e6c3a14cebd67f5970cf4a02883f9f27c0d5c748fc40ba76794636a2e8a1af4a8aa4c9cb138d0539d16a0787a2660491724e7909a6368e7db90fb0fafc4314b38954c9cb138d0539d16a0787a2660491724e7909a6368e7db90fb0fafc4314b38958177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b88064300c93cda1d9c0d532f5735d49a6ab7a027afc000aa1bff2c9db6cce719b0577edb29e8a83b5d5077dd5581e82c0bca357cc659298604bea13bf841b3672ae8f65660999cecfcbdb612632ca2e751c64246569955a064dace07170268687597b43c9ec63fb0f36f3af2a29401603c2a608e31994043cc4df9ac9f2b20935a9181965368a1498873357e56b19180c61b2ccb1638eb4aca927d3cf0cf2a653baf6ce3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855@@@@@@@@@rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootcoprcoprcoprcoprrootcoprrootrootrootrootrootrootrootcoprrootrootcoprrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootcoprcoprcoprcoprrootcoprrootrootrootrootrootrootrootcoprrootcopr-1.26-1.fc20.src.rpmconfig(copr-backend)copr-backend @@@       /bin/sh/bin/sh/bin/sh/bin/sh/usr/bin/bash/usr/bin/python/usr/bin/shansibleconfig(copr-backend)createrepo_ccrontabseuca2oolsfedmsggawklighttpdlogrotatemockopenssh-clientspython-bunchpython-daemonpython-lockfilepython-requestspython-setproctitlerpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rsyncsystemdsystemdsystemdyum-utilsrpmlib(PayloadIsXz)1.21.26-1.fc200.2.1-33.0.4-14.6.0-14.0.4-14.0-15.2-14.11.1RRJ@RR@RR=R=R@RSRSRSR@R|@Rz/@Rw@RkRj]@RM\@RA~R@-@R9R6R6R6R6Q@Miroslav Suchý 1.26-1Miroslav Suchý 1.25-1Miroslav Suchý 1.24-1Miroslav Suchý 1.23-1Miroslav Suchý 1.22-1Miroslav Suchý 1.21-1Miroslav Suchý 1.20-1Miroslav Suchý 1.19-1Miroslav Suchý 1.18-1Miroslav Suchý 1.17-1Miroslav Suchý 1.16-1Miroslav Suchý 1.15-1Miroslav Suchý 1.14-1Miroslav Suchý 1.13-1Miroslav Suchý 1.12-1Miroslav Suchý 1.11-1Miroslav Suchý 1.10-1Miroslav Suchý 1.9-1Miroslav Suchý 1.8-1Miroslav Suchý 1.7-1Miroslav Suchý 1.6-1Miroslav Suchý 1.5-1Miroslav Suchý 1.4-1Miroslav Suchý 1.3-1Miroslav Suchý 1.2-1Miroslav Suchý 1.1-1- lower testing date - move localized_time into filters - [frontend] update user data after login - [frontend] use iso-8601 date- 1044085 - move timezone modification out of template and make it actually work - clean up temp data if any - [db] timezone can be nullable - [frontend] actually save the timezone to model - fix colision of revision id - 1044085 - frontend: display time in user timezone - [frontend] rebuild stuck task - disable test on i386 - use experimental createrepo_c to get rid of lock on temp files - [frontend] - do not throw ISE when build_id is malformed - [tests] add test for BuildLogic.add - [tests] add test for build resubmission - [frontend] permission checking is done in BuildLogic.add - [frontend] remove BuildLogic.new, use BL.add only - [api] fix validation error handling - [cli] fix initial_pkgs and repos not sent to backend - [frontend] fix BuildsLogic.new not assigning copr to build - [frontend] allow resubmitting builds from monitor - [frontend] allow GET on repeat_build - [frontend] 1050904 - monitor shows not submitted chroots - [frontend] rename active_mock_chroots to active_chroots - [frontend] rename MockChroot.chroot_name to .name - [frontend] 1054474 - drop Copr.build_count nonsense - [tests] fix https and repo generation - [tests] return exit code from manage.py test - 1054472 - Fix deleting multiple SRPMs - [spec] tighten acl on copr-be.conf - [backend] - add missing import - 1054082 - general: encode to utf8 if err in mimetext - [backend] lock log file before writing - 1055594 - mockremote: always unquote pkg url - 1054086 - change vendor tag - mockremote: rawhide instead of $releasever in repos when in rawhide chroot - 1055499 - do not replace version with $releasever on rawhide - 1055119 - do not propagate https until it is properly signed - fix spellings on chroot edit page - 1054341 - be more verbose about allowed licenses - 1054594 - temporary disable https in repo file- add BR python-markdown - [fronted] don't add description to .repo files - [spec] fix with_tests conditional - add build deletion - 1044158 - do not require fas username prior to login - replace http with https in copr-cli and in generated repo file - [cli] UX changes - explicitely state that pkgs is URL - 1053142 - only build copr-cli on el6 - [frontend] correctly handle mangled chroot - [frontend] do not traceback when user malform url - [frontend] change default description and instructions to sound more dangerously - 1052075 - do not set chroots on repeated build - 1052071 - do not throw ISE when copr does not exist- [backend] rhel7-beta do not have comps - 1052073 - correctly parse malformed chroot- [backend] if we could not spawn VM, wait a moment and try again - [backend] use createrepo_c instead of createrepo - 1050952 - check if copr_url exist in config - [frontend] replace newlines in description by space in repo file- 1049460 - correct error message - [cron] manualy clean /var/tmp after createrepo- [cli] no need to set const with action=store_true - [cli] code cleanup - 1049460 - print nice error when projects does not exist - 1049392 - require python-setuptools - [backend] add --verbose to log to stderr - [backend] handle KeyboardInterrupt without tons of tracebacks - 1048508 - fix links at projects lists - [backend] in case of error the output is in e.output - [selinux] allow httpd to search - [backend] set number of worker in name of process - [logrotate] rotate every week unconditionally - [backend] do not traceback if jobfile is mangled - [backend] print error messages to stderr - [cli] do not require additional arguments for --nowait - [backend] replace procname with setproctitle - [cli] use copr.fedoraproject.org as default url - [frontend] show monitor even if last build have been canceled - [backend] call correct function - [cli] print errors to stderr - 1044136 - do not print TB if config in mangled - 1044165 - Provide login and token information in the same form as entered to ~/.config-copr - [frontend] code cleanup - [frontend] move rendering of .repo file to helpers - 1043649 - in case of Fedora use $releasever in repo file - [frontend] condition should be in reverse- [backend] log real cause if ansible crash - [frontend] try again if whoosh does not get lock - [backend] if frontend does not respond, repeat - print yum repos nicely - Bump the copr-cli release to 0.2.0 with all the changes made - Refer to the man page for more information about the configuration file for copr-cli - Rework the layout of the list command - Fix parsing the copr_url from the configuration file - [backend] run createrepo as copr user - 1040615 - wrap lines with long URL- [frontend] inicialize variable- [frontend] fix latest build variable overwrite- [backend] store jobs in id-chroot.json file - [frontend] handle unknown build/chroot status - use newstyle ansible variables- [frontend] smarter package name parsing - [frontend] extend range to allow 0 - handle default timeout on backend - initial support for SCL - [backend] create word readable files in result directory - [backend] print tracebacks - [frontend] monitor: display only pkg name w/o version - [doc] update api docs - [doc] update copr-cli manpage - [cli] list only name, description and instructions - [cli] add support for build status & build monitor - [frontend] add build status to API - [playbook] do not overwrite mockchain - [backend] add spece between options - [backend] pass mock options correctly - [frontend] support markdown in description and instructions - [backend] Add macros to mockchain define arguments - [backend] Pass copr username and project name to MockRemote - [backend] Handle additional macro specification in MockRemote - [frontend] monitor: show results per package - [frontend] add favicon - [backend] quote strings before passing to mockchain - send chroots with via callback to frontend - [cli] change cli to new api call - enhance API documentation - add yum_repos to coprs/user API call - [frontend] provide link to description of allowed content - [backend] we pass just one chroot - [backend] - variable play is not defined - if createrepo fail, run it again - [cron] fix syntax error - [man] state that --chroot for create command is required - [spec] enable tests - [howto] add note about upgrading db schema - [frontend]: add copr monitor - [tests]: replace test_allowed_one - [tests]: fix for BuildChroots & new backend view - [frontend] rewrite backend view to use Build <-> Chroot relation - [frontend] add Build <-> Chroot relation - 1030493 - [cli] check that at least one chroot is entered - [frontend] typo - fixup! [tests]: fix test_build_logic to handle BuildChroot - fixup! [frontend] add ActionsLogic - [tests]: fix test_build_logic to handle BuildChroot - [spec] enable/disable test using variable - add migration script - add table build_chroot - [frontend] skip legal-flag actions when dumping waiting actions - [frontend] rewrite backend view to use Build <-> Chroot relation - [frontend] add ActionsLogic - [frontend] create BuildChroot objects on new build - [frontend] add Build <-> Chroot relation - [frontend] add StatusEnum - [frontend] fix name -> coprname typo - [frontend] remove unused imports - [frontend] add missing json import - [backend] rework ip address extraction - ownership of /etc/copr should be just normal - [backend] - wrap up returning action in "action" blok - [backend] rename backend api url - [backend] handle "rename" action - [backend] handle "delete" action - base handling of actions - move callback to frontend to separate object - secure waiting_actions with password - pick only individual builds - make address, where we send legal flags, configurable - send email to root after legal flag have been raised- 1028235 - add disclaimer about repos - fix pagination - fix one failing test- suggest correct name of repo file - we could not use releasever macro - no need to capitalize Projects - another s/copr/project - add link to header for sign-in - fix failing tests - UX - let textarea will full widht of box - UX - make background of hovered builds darker - generate yum repo for each chroot of copr - align table header same way as ordinary rows - enable resulting repo and disable gpgchecks- do not send parameters when we neither need them nor use them - authenticate using api login, not using username - disable editing name of project - Add commented out WTF_CSRF_ENABLED = True to configs - Use new session for each test - fix test_coprs_general failures - fix test_coprs_builds failures - Add WTF_CSRF_ENABLED = False to unit test config - PEP8 fixes - Fix compatibility with wtforms 0.9 - typo s/submited/submitted/ - UX - show details of build only after click - add link to FAQ to footer - UX - add placeholders - UX - add asterisk to required fields - dynamicly generate url for home - add footer- catch IOError from libravatar if there is no network- do not normalize url - specify full prefix of http - execute playbook using /usr/bin/ansible-playbook - use ssh transport - check after connection is made - add notes about debuging mockremote - clean up instance even when worker fails - normalize paths before using - do not use exception variable - operator should be preceded and followed by space - remove trailing whitespace - convert comment to docstring - use ssh transport - do not create new ansible connection, reuse self.conn - run copr-be.py as copr - s/Copr/Project/ where we use copr in meaning of projects - number will link to those coprs, to which it refers - run log and jobgrab as copr user - log event to log file - convert comment into docstring - use unbufferred output for copr-be.py - hint how to set ec2 variables - document sleeptime - document copr_url for copr-cli - document how to set api key for copr-cli - do not create list of list - document SECRET_KEY variable - make note how to become admin - instruct people to install selinux with frontend- prune old builds - require python-decorator - remove requirements.txt - move TODO-backend to our wiki - create pid file in /var/run/copr-backend - add backend service file for systemd - remove daemonize option in config - use python logging - create pid file in /var/run by default - do not create destdir - use daemon module instead of home brew function - fix default location of copr-be.conf - 2 tests fixed, one still failing - fix failing test test_fail_on_missing_dash - fixing test_fail_on_nonexistent_copr test - run frontend unit tests when building package - Adjust URLs in the unit-tests to their new structure - Adjust the CLI to call the adjuste endpoint of the API - Adjust API endpoint to reflects the UI endpoints in their url structure - First pass at adding fedmsg hooks.- 1008532 - require python2-devel - add note about ssh keys to copr-setup.txt - set home of copr user to system default- 1008532 - backend should own _pkgdocdir - 1008532 - backend should owns /etc/copr as well - 1008532 - require logrotate - 1008532 - do not distribute empty copr.if - 1008532 - use %{?_smp_mflags} macro with make - move jobsdir to /var/lib/copr/jobs - correct playbooks path - selinux with enforce can be used for frontend- add BR python-devel - generate selinux type for /var/lib/copr and /var/log/copr - clean up backend setup instructions - initial selinux subpackage- 1008532 - use __python2 instead of __python - 1008532 - do not mark man page as doc - 1008532 - preserve timestamp- add logrotate file- be clear how we create tgz- fix typo - move frontend data into /var/lib/copr - no need to own /usr/share/copr by copr-fe - mark application as executable - coprs_frontend does not need to be owned by copr-fe - add executable attribute to copr-be.py - remove shebang from dispatcher.py - squeeze description into 80 chars - fix typo - frontend need argparse too - move results into /var/lib/copr/public_html - name of dir is just copr-%version - Remove un-necessary quote that breaks the tests - Adjust unit-tests to the new urls - Update the URL to be based upon a /user/copr/ structure - comment config copr-be.conf and add defaults - put examples of builderpb.yml and terminatepb.yml into doc dir - more detailed description of copr-be.conf - move files in config directory not directory itself - include copr-be.conf - include copr-be.py - create copr with lighttpd group - edit backend part of copr-setup.txt - remove fedora16 and add 19 and 20 - create -doc subpackage with python documentation - add generated documentation on gitignore list - add script to generate python documentation - copr-setup.txt change to for mock - rhel6 do not know _pkgdocdir macro - make instruction clear - require recent whoosh - add support for libravatar - include backend in rpm - add notes about lighttpd config files and how to deploy them - do not list file twice - move log file to /var/log - change destdir in copr-be.conf.example - lightweight is the word and buildsystem has more meaning than 'koji'. - restart apache after upgrade of frontend - own directory where backend put results - removal of hidden-file-or-dir /usr/share/copr/coprs_frontend/coprs/logic/.coprs_logic.py.swo - copr-backend.noarch: W: spelling-error %description -l en_US latests -> latest, latest's, la tests - simplify configuration - introduce /etc/copr/copr*.conf - Replace "with" statements with @TransactionDecorator decorator - add python-flexmock to deps of frontend - remove sentence which does not have meaning - change api token expiration to 120 days and make it configurable - create_chroot must be run as copr-fe user - add note that you have to add chroots to db - mark config.py as config so it is not overwritten during upgrade - own directory data/whooshee/copr_user_whoosheer - gcc is not needed - sqlite db must be owned by copr-fe user - copr does not work with selinux - create subdirs under data/openid_store - suggest to install frontend as package from copr repository - on el6 add python-argparse to BR - add python-requests to BR - add python-setuptools to BR - maintain apache configuration on one place only - apache 2.4 changed access control - require python-psycopg2 - postgresql server is not needed - document how to create db - add to HOWTO how to create db - require python-alembic - add python-flask-script and python-flask-whooshee to requirements - change user in coprs.conf.example to copr-fe - fix paths in coprs.conf.example - copr is noarch package - add note where to configure frontend - move frontend to /usr/share/copr/coprs_frontend - put production placeholders in coprs_frontend/coprs/config.py - put frontend into copr.spec - web application should be put in /usr/share/%{name}- new package built with tito/bin/sh/bin/sh/bin/sh/bin/sh  !"#$%&'()*+,-./0123456781.26-1.fc201.26-1.fc20  coprcopr-be.confcopr-backendcopr-backendcopr-backend.servicecopr-backend.confcopr-prune-repocoprbackend__init__.py__init__.pyc__init__.pyoactions.pyactions.pycactions.pyocallback.pycallback.pyccallback.pyodispatcher.pydispatcher.pycdispatcher.pyoerrors.pyerrors.pycerrors.pyomockremote.pymockremote.pycmockremote.pyocopr-be.pycopr-be.pyccopr-be.pyocoprcopr-backendLICENSEREADMElighttpddirlisting.confmime.confplaybooksbuilderpb.ymlterminatepb.ymlcoprjobspublic_htmlresultscoprcopr.logworkersworker-1.logworker-2.logworker-3.logworker-4.logworker-5.logworker-6.logworker-7.logcopr-backendcopr-be.pid/etc//etc/copr//etc/cron.daily//etc/logrotate.d//usr/lib/systemd/system//usr/lib/tmpfiles.d//usr/sbin//usr/share//usr/share/copr//usr/share/copr/backend//usr/share/doc//usr/share/doc/copr-backend//usr/share/doc/copr//usr/share/doc/copr/lighttpd//usr/share/doc/copr/playbooks//var/lib//var/lib/copr//var/lib/copr/public_html//var/log//var/log/copr//var/log/copr/workers//var/run//var/run/copr-backend/-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -march=armv7-a -mfpu=neon -mfloat-abi=harddrpmxz2noarch-redhat-linux-gnueabidirectoryASCII texta /usr/bin/sh script, ASCII text executableBourne-Again shell script, ASCII text executablepython 2.7 byte-compiledPython script, ASCII text executablePython script, ASCII text executable, with very long linesPascal source, ASCII textemptyRRRR?7zXZ !PH6tW]"k%jWhvq\Ғ5¤\A.8||-`b"O ZٻaTlք%N>џFF2]A&,BI/EqW 1ϠCil &ڒd+n;Ǒ0lAٻ(?ѓeIRY&ltW a.2S=td8%? h *K5NZ.= qڍ*wݦ&ǯ(ѹ0 F 帷v7N{fxkl;;ڙ54v o29wgǯ8ݐtZ3aog|wñGX6Μa'gbȒvdeһ)T> c?>F3A4wPSQ|%ѝrKĩD@A@7ǖǼ0!]c][Lx x1>6Ti8$[X[AC*v?\KyXV\% dmJl 8Q9++t5iÚjPgGokDD>oWȓ`6Mh w[v!z뤠 eEYhd)콷3~1R(?gvՃ8 AY;JW"³cg3!ɀt-ΞDOX3nj$a.Der[} |Ls]5MkXBY3{ $GkGVnG\u'ݒu$C^ab#AJBhcq|3Ԉl,aNZ!1Ǜ<+ĜR6I{ o"fcURl~ny5 Qk2?q#jwܷ}؇k ^c2n%2 Z\EmuHXCȱBmDF#{qu,Hx؏l!U4́Zrj2KH]PMƋZHl\\'gȧ 3DXEA86iZ4EtBGnCa:dW gY+厧fIyەK6?!#-P+]TxD_K}`.MdkL_n" VJ&7w@Ɇ1 ``a.,ҟ|?`']Z1fJܰ"}2V7Lْ&C55Qfcy}nRֈ+geɢ oz@x55CЛπ2ј&UjOeN'{O\ϻ8d l L2C2}̘3CJɗk{}p43i6xXmyPS""j2ǘ{:7 EpJtuaǨ#ti>qm{ǣL=CAeADƦwP1UID/,("A0"i"Yu(ץڦEuS@^yvҖ 2*%7{@y&76T$"P1qCФJf&B8ˬJ>BXB Zcc>&;l^ 4?zs[\غ!U7o{Gs>0[Eu4H]=0^IriއW+fPsdZw 2Tͅnnl0oB=-nWtK>3F23M L0F;UzSE+e_zًPaP?>vkJ|ha,z|; )?umYs҆VxSV oAmg# 䎃W$J)t.XRU;P>vlem)<\76\x6Y :Q{ 9 D + ڍ;Zn+92vrBC_0~7՛Y{a3λo+ܓQO,_!2[Q -pǸ;w,i|8YЃ͗ՋZ*cG?`?#у0d~#Ӷ ҕ?A[P*c'U8V9h.PV.:TN;魇#8#[4Hka.a^Y^>/29[xT001t&&"bd+l<0-v|@Eb@?}9i3QB\^*Sh]7I%FLv̉Rh us7H3wc$1AH w,* W)%u07و-h@Y?ROݓ/;H|t Eq){h9<9]MH~c#ӌ\ ͝yifkzOvdFsᜠyOiƒc@=s1|sxzwd <;m;:aD3gӰ/EKs\ä9c3~z8?22iVhs fr4E &T #74T fɈI-L)f5<3ڊuC0µdBfah)TXU+$.+!$Y?)Bc#@Q%9ɲt]Q/WIY3@"1"B.Ts!K䩩I~c^ݚ;Zh;H֫vVDEhT;d.*68].|*R&is3b ɾ8@ɩM%Mܔ&k5!RG&VU8V@~F2}gUi;OКDK>OYK, 77;O@qzu~DLٜs*]H_|`G䂳ILO%{.29!;Da96c0$C0oEE )juԭܹp@9" DU%/?+0%(L*w~\Qځ@. 2)341J1icǭ{ œۢmƠJ c2N gLp$+˺m\:<#]E|ib|B֨V;5mW~U8.9qH]a%`]c~'b >qo]G)-[XVu'D/>IS<կ{2ޫ:m]&-\Ff})0ɑ8%#5J(]v<#K]c;j)quBKUiDRobm+`H_ tѯ dukgt'vkTkw2]Y9 G 4xRz=3ϑf cObՇa3)7jkmSi*Gkjxc{קBB s@pT*P}sD鞄Wd|of5ES7*zJ!v}65Wu*쑧7E-}޶"/\91[+7 $J]Dj{ìc7Nf-9$%'AAa2~ PgFF |#(ˣj #L{#rE#,>Jf=3HO%^~LrdM35um-_v/I/Ӂ[{0FK>d3,C`n; \VD޺$I ǸR%EVoh[dygi|19>7p/{UNﲭu555I3xojS^7)+!k=l 5 Uʖ2peed,A+Ьz6j0|M;$ԊOxBlJ"qVo:! F } /Fْ%Cj[/=\cX©bGaٷ*B~9o]..316znigVv~6@ЕHfNJ3,{TPJVN i^6fpló{/QtEn7(4+0ZkLBI۲̡"W.g`l6[FU" v}_0. S{ۺN0\卜4-T=S `Q67O*rdPaEߗ3"{Ƥ<,hCa?QpUs';πgS[7̏0;-_t6ynzqa:k{ #VC7 BnmQ匥;-NdRGRQ֖]ogo0 9r^ `: Z0(JW q~NC|.V 䀪Ê[䫴⬠,eZRg/Ŧ1;3 đknPlllKO R!v&ID!ߙy’Ju&;"fgh=C?sYz<> 䮁456 Čof;͟4vݸWxX7B?_mtmm_A2'$)SRdo11}Keu _授Hbo9,ԴOURnyf|ޘ*._slg iE\DP`7`9fIO9PڕKWƈv!d x}_>>GKWQ1!/Rs!)|(VڅNͣLWocn@ j2"k8Y+j1xI8El;wH *TI~yM}>~ફ:gk%-? $2_{<(u.:酺~mٹFx ʪ)ԏQ~9}>wC|~rE`haK]VS|n%e܍W~L. |8Pdk CоqT{P6_}R0dfe`J,~̣V,$)b&Z$te[ᯍ,WɆ_n۽lC` h! q#׾bOV:k92Έ]#.W{A^w62>{Ycʜ*"<˒;['ޞ)`iGl-V2uHD4ؼ  0E}~x>1'\ jʥ6ڜS 2\ zV-8etY/\RdOYѵNu ?9M"[tMf6{ͬ-2S ޡ/9TUnVNYGv$7d sTMSgɩ]Rl= V5;y!h ugǶ4aŏLXx[ej Kϯ`(4_dG^XVktôTA^90`٦"ݲ`n2 9_vkp& ! svLzUrOuc7K}Z2>ΈQEt+GYIgRo7P |@ [+#FxM_KYt^P:]87ѣF06mHu>K77l1ɷ*qj0cWPd ub\{ "S|#~DNwŢj9)׮u2w஭[_prV? r׋3lG"]h|{EPXROcd{*`Iڕ'\*6Po)]Exo9 w`Rꌒ:\pWzL *PWn3QSNƎn;à:ibKfdŅ,RzS_w+ҕv+Gu? *,$V ]`2|wBͨ#ӑMVa?L ݆H$ %|e& YtMBS@S5t̊̈OnMԬ͸Ⱦi0W[IoMȝ2?ĘGMdl xAKB{1JG~Y)7бwm%X#'.g.нK)}op֝*Rz%inF ֍v5):*N_E+>ۧ9̊"r{Z!_B+^WW AX_n f,S2k 6}#>|sJ>;$w+]sNyT--HR@ i3^gY_le'o./If XNݫu2ȸD;+:zgw*|PBb..s`}Efac =1-+9V`E_$7W6EN~|W`f>.OV9vdϼ Gqd>zѨUf٠l8"X%[Wgr o1ϫH?gT ZףXi7@]~"ҟpv'0 C tp,GJT)뽆Fnn%ލC-Wt" kSX}S\;"} pDDߙb;kZ1G"}}Mdvp gT ׁD3%Avo,1!c鴵i#ܲ|m(SvVp& f'\/+g(5#UT_ 1z7YB^)ڍ)*-;/"C-Ŏk2bX,j=$5! GjWg\jԳ"TLmB8/Sp͞~smr)(q[L ~D6r~AW`宸9V붻67Q*4'9蚪66^i#YsafK@.Rں `f} Zm}p}Lsj=f`WL#\4ss9 =(*aɡIU0 3[0L c-2D ! >t-kMHYZ'PGG y񽓓O]W0H dT0lyW#.o.vg:O3-gN#fh#MCt6d(pPϼ+p YEJLb-"pP9‡Wq[™O%PXh\ U(P?75`rQxeh?% W 8jO[#6'[\<æ"Py9PdC O0, ث)rʑ+aV:g"R4F.&6&/?0M܄۰F.:N~O{ Ŝ驨ɖ/ /-ѵ_H-'. <gnXcfv{ѼL@+ͮ2pD^U.SZ,LwnK<䤄6]O_ 039 SiHÉ ?jS[dj-&8bBã1ƴ96Ut(h,0Lo|+%UZC;a j J^=.LANRAj^~\TP ESΑSWQK )g/Ima : }\p6+j~kVכl7pÞ)+x.Epj; {շtEpBx@dخi9HZ"9A:OF;k)Q;vOw S#td HH_bscӇ 6@27;WɉHP;P7ݱFEPī| 3 )퉰O/d4o0anL iۊBxe&~RraJ;C^ZFpѥ%0ʑzS~#EyJNu;fWS;NLg!9 B=@o'}P9"0 *+84Ú帝tsRFpmRHua؞+N3䰃JL=']C<TH).N.wέ0DQynbh{]\#~S{&ٮ̣,'eiE5UB-8Szt0kiS0[Q˄#>P5^>LjEs$K٘h;5^hFxYm3XIS<?sXz!Vί!F_f@ Fy ?qK_boWya$}"uySI_VT 9q)9ԖUM("6Ë S'f)EX(F\e/ 'hG 9*~ 5*\+ߧ"n~bH@RdߊĪ)$7ELPb ˭w ^}*CPuЛ5V~(j}z&r4RdtjLW]A$?b~7k-8\J)ё/ynӭxn<ɇ%{;Oc)m|=UHyS,O^~ZPyR;khNY@v4x^v#0;ǃq uQAcmbR8, i񜄡G?^K|3GC*`9=N Lv"5L4|!h7AMoCkfZSKbT،N7mdQJ9UgKrM@;EyQ4٭Qk-ZkiO{k]$ ˨46 [}lK]{l*s괹ԵDJWr(+'<97g ϸxrqR Uߴ(5 \}_w, )\* ~\.VqsoC> Uj)fn>h0)-A}k%8P-&+T__6S#恳yLah#4]#Z@qjVtz Wmm IaessϧwӺ\ZU;x$< ,hm i!>,ǐ$gCgtZe.;\VLz),蹔+NAJ d*-kaO$WǕ?wAa iH5tGCm4FH@W(-g=#v\`/{RRt=dI 1 ΄Z<|XI/=G`Ct !7-61DD7@Ôz QYϷ#gcLVooc`ɦD2+ճsHI( F@GeQLШ9aF5G3x,. [wt05e-#DyhZpTfA=Cz1V,6h:1jQB=MAY*$P*30@+7$KXW 8v)1#3@|f$*{oDW)U? c:_x=/zݷZ:/%Q"ڎ٨s2*WMߩP'@`/ %g!xqiJ܄SR2RuO倷PG,Eŗv$J.j-Al'\doˏN8kMylJ%֩VBC43Djn%4'k)5[&Ss|N"S1Q Uj)*7+L@#\E}`|e[˙=w6Pa,9!3חX6u,?#{v|J_R~EVl; zfuM{JgFpS~P 9qm|Vx6.CyH C%nڢ&go! g|ՐWIzhf! m،oF$J DfQY~rnY$~6ErZmrq.RE`'fpA0]U:_j0,ēbк4>\~)Tn6k[W ZȜsz~0y|iWIY⁜n+JXA\!r`okrN쏗+v;&LK-bgl2:ܯ̶hX 9{':Z 5e$˚4ش ؁oݥUf8 ק N vI'>{ ?4 d=YkY76 echӖ$ ;YӔOԗ9-m?27nJtx{J=%yN2ru'-Ʊ1++vC\߈p1u&&f۲CuVh̹|9-S{J▩yv9G߁*> (8>G6"e޿d<`J+G{G1蝱IKeۿ)gνSڢ\zQ.ܔ3E0~)t%*RVLخs:Zh4u{'q)QQ=d慗CџF*.1vloBE'7;jD[ sb(z7V :2zC(^ %uhJa&r5*`vSQD<`usOD^r+ ڷd낳+0$>c?#(=`J>d$ gtc㰲nL(VBo` m0\'I_3G!8Zɨ{3!4AP+aثSf'H }`/ ䷮lJv}! q\D{(ٮsusHrJ(+ Tp dL9ug\(v[J jVoV@£*Kc,4scX[ezRʎ&9GtR9X|Fb"4h|̀m_'p4I.sJSЦg! g'%b3Hf@Gs&x|΍;,эy>ƙv$u V>C>7?N9fZs 4R:n'c)(xfo|h,NQ׆eVN`;ďH~pSՅZ'=/ 2)}~/=̏:B܄ ]9xLaBgt.k,@0%ɱ⤙UA>Ba}ͳ!ů"^]nYp*mOu5B-:#5F,]9N/GL^Hwa0YAQ)4GɎ:]6߭Li3:0/:d? &K6TMG#ayߖJQ)p"-o~)ٻL7M`낈@M.FŒo'p ب T\0ն 8뜟DtE|dݖi"}RP3aE".QҸ&֦FH]Cs-sxnӬqKVmwګa:%G:Ds` {D*+`ohUM k*)Fׁ7=1 $>/4Fq(y>ȥ +^ !(,떺ePa`ԐxAtzJ3/8c .NFŹd^dkƚ Qv jis8yx\Ȥ1뇖kM$8(#VU2+t5ǁo.礔^S1 $CħQ5?\"KkEQAPvӏȍMac.swum, /Ezk?F"s4\Qm°nj BSY RQB@9DtQgdn;|u*aBx V܈ OK-/1:;ӊS-#s!`K[ݢ3x\AqxH}s>@/@ T w%dc=B5J .JGkpqLc/e>ImzeAWǤޢSI=޷Zx2Q&HxٴMq!]J[Y(e(UBm:&cUw49;YlX35 SbU#@m& GͶa%Pk>;8BgthQ5) ^2S0 bO+.4 ۽y{g͑bO)\ZvY~ga4yKM/d(-bA vu,vzJqՇQ v{B$:a=RʨBU1dցP= +L#A1nLhqvb=kBx: Z,ʗSh\m)<]DF-֧R74tU7Z>e:ij uS'RN&]ck+%4=N_mڇ#|CWZ?eA }+ZD_sa^9G ;}4WWQ|Z 96L:<6m!Ua)bcv2.OX*4ed}w[&+̘ Vw(2RFtϾ@MW/lIi7@C,V&mc2./'_kR&ItNIؿ|—0݉>RG&8lT25U#6M C-_sZ 0ԂpQa ^ o.U,ɂ,)_f2X=L4h͝4#`x%dnY܅~ވ7,=uP`%7 f0fny!xMHjPs4t\8d }Wq<7 /Y;ÅE^}g KWk Ӣ͐"oޕ ۷u؎5! ;43%L2ڍROӶɢFyp~CE$PG&#=5]ٴPfxA݀iq2O5c<\}-֧ \ FFI!Tm(Ѿ_\n0Fw4E\wimn+ARkNJw̰bnoBuKlPwGJƸ+N㬈*sR0pXsV8c9B( tVQ5N,2?esLnƞgi hfD)~)[K aˋT";:6 >׏N[Ud팁(\ܼв X*|ak;8rYzU6{+# +@s{)f$Ï%y]@"B #͢7:,e,t9«dʳjXWSxUn׾ &F:Oe9=uY+»S-FK2;3[IQ7S3=/k>J4>P76g -2ϡrBf҅zk3Uϰ/Y6cxq$ҕ c7/nL͙twG#Å I,.MEWѩ@V}Y0(a"l'o|1TЍe`ϭ.xlBp!ij bup}?'j VTG}lt5Ob%CR1,IgWy~ű-<_@l7!ޞԕ\}'q ASt[} ً`:/5suL@"x%Ӱ^iMXWŋG|{y10|i pC"(]Lho*ZMo6$4nrQ^\Zkj*GD%QݻĂ[ * KTz!&%VrdbMpJj req_YH> HC.9'9 s[2K@[,R"0X&oNE8 Xdj-̍̎kp~Ws(`r IRW|O잼1o+C$[ʡh#s3^i*vg8s\BZtлw"yXl#ÝHI+ILD`8 rv߰C+K" _'il˓!`57/2(5UQsI]mp2*a&ٵ*r `js0s9"/8{<0vAJ@{*Dh>N̅65 Α}C,Vke 9mO'}qj:30Օe4bEg%i(bj)YcDXS!$4k<cs@ ]k\1*Ü$5JcW2k]re%*=m0VuG;FaY蕡/<5▫π!|gDդcµ_s ZM|Aۿ_+Ut!UXU0ƼO$}l%ID-9Ϡ?ў Wub$ VL~l 8LSKr5D3dcs,p*[w3,|Q̀3&ȝDŽczbAco c HlMe,̂$~V?7(OIHs?y*Bt-+j ǻyoPSk]nhzD ҀxtI6? ';dvCgv*V 8UW@l˜BTWǫñ8.d.vf?kA{S" SqNNYDzxXPH$E-X2'!EzB,那1{&HL'Za+芷EJkSngfvi(#s fG o}a' n/^agL-|k QEfӻk&tp<(AF`]oIT;e˜^sXB8÷ϮeR%xŕWڊBJQ` |u"x(4mQrLD0%eOd.yhgҷ DX.7ca篙[TٓZuޞ,`8C= [\fmc1+t)S9\(ӓ i bIjB4=M0fmzJq2+ŎsawVq>%Zq>S8 K%fy0TpuH 3v=N),a$RB&N':ŎԍԹ䁙rw=j/K-<{z{N }Fk񐐛7#xq&~xTwta[卭Jy+b{nC6|-ު} VhqY b>T@`OXNV\@w|xHMِLԄ({rYjhʆm=rrD}`c&uLtπ[Dl-PQ=| YyՑyR(b-z4\r-&D4UtJ}$e[ cg|1o<|+6I8ChĪ!PdU:,Ѿga &QZfdbLt(" JơFEgSM?o.oAd00{eK؀|=n=CvcNȹF .Y;G&׋n9V6'3iNp.ZYc^m}{LY+)9DLpIo≩V}2"oiy)g¯ '$| glAJW^N](U [Ж^QsG7N/?ҺQyd.>zٓ