python-copr-doc-1.75-1.fc23$>?#61[H >7r?bd  I@Dhl{ YLY Y Y Y Y HYYiY&HY /( K8 XE9!lE:-EGYHYItYXY\Y]DY^bdefltYu0Yv X\Cpython-copr-doc1.751.fc23Code documentation for python-copr packageCOPR 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 includes documentation for python-copr. Mostly useful for developers only.XA/buildhw-03.phx2.fedoraproject.orgLAFedora ProjectFedora ProjectGPLv2+Fedora ProjectApplications/Productivityhttps://fedorahosted.org/copr/linuxnoarch IsG :r c I3Op O ! upkm5E/ltkbpDvN0IEn; 6n)sH2'ai$Wn s9FA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤XA/X?ǺXA/XA/XA/XA/XA/XA/XA/XA/XA/XA/XA/XA/XA/XA/XA/XA/XA/X?ǺX?ǺXA/X?ǺX?ǺX?ǺXA/X?ǺX?ǺX?ǺX?ǺX?ǺXA/X?ǺX?ǺX?ǺX?ǺX?ǺX?ǺX?ǺX?ǺX?ǺXA/P XA/P P P XA/SdgP P P SdgP P XA/XA/XA/P P P SdgXA/XA/XA/XA/XA/XA/XA/XA/XA/XA/XA/XA/XA/XA/XA/XA/XA/XA/XA/XA/XA/XA/XA/XA/XA/XA/X?Ǻ8b90f686312be3cb793f06e7226e5610396a63eb657f19bfc6f2f48b1f0fb69f1f53dd252f67323acac3af5ace6480d3a833876f96f5dab21551b68a37eefeb5fef5a43ffc6420ea647992e8518f0a5c9f63fea4b95a3d10163762941c062834367aab969006894312c8560654d1a9f808e1ac4c0445541db9f230c6eb9b4476f315e0b789e7588a575c4a196b573a30edfa7559d9c98cb3bf4970a6e15af8d08aa2e7db021d0bebea619e57b6f227bb5dc7435632d8fbacaa8e899b11b6ac8a2e47e08c87dbc6aa4ce0d40f6408311ce76f2d356e96298704893ee39586edc5c860b31adfb76609f23b2e06cd682298a3af935e830689c3167bbc74b47761d93b129c06449181c3a7f5679ec6efe17248a7cd28d9e4b0ecf3e29d05659d00b8837ecdcfaf09d79b158bfb7b5ee3bc8c35e5ca953eb61967b5409d3878d5f414f79594adba7dde9fd18a939d5a01e9a7e94ce66e94fa88b7639af0f1e40d83858b4b4597512d0e1960a81dc56081f7c656dca8eb741579ffe3f9873f037e8203eb0da78b992f637351c015aac7b41a8f1fedb47a3b0ff24cb4564a0a714bde1c935f17c2c5b13842eeda2b976655e24621847c97a46059a565f32d3210fe56de39ff63f6431a16ea2242ef121da8b550e51d50142019fa96dcb5c984ae0d7d89bcd95ebf5faefcd967423e489e9b20dba28b9162e26f1503507738b1e64e337f13d134dc17baaad8f17b32f6df960ac892f4da6a1a23c03a8f627f3e76b2717242146cb021479c5adca6deff8411a23de6ab9d09e044d5b8d080d3b883b283c5d280293209c4928eb8aa323f60ecf8172ca50a0d1f7e7b93fd752af0ac396361c2fcc9d3630529bdce7dc8e52c81f4a8b5fb3ee4923d8b921481fea6d7dfa83cf53a428c9c40b485a622c5ed8c793c3c0000378ef963f2d9f9f13b6d28442b9a73e4272d651d0ffb5da97f8cd9c1845b67f883471bdb975498ae4516a8de7a4e6698a0aef277f7c0e20454caa853c60d08594be34fb9ca9570e9255fab188f4070eb4c1e299028115e0b3a695ac5a978c916fcfbc19c852b08c3cf98199889c40cd244b60d9ae0719d1a3a308b67f0f45ca3dee6cbd48ae6a6f80757f8ccfc4bc464d4566470f6d44f4e40a724690b326486c185408a33e00aef0e406a9f344d4ff344082c9cfa49268046498f64846e538f4a36c795b3a59659fa999352e4748f572cdb504622b6f79ebeea361219cf8a7b9a1386b2091b5d9edc2dfe53787f730e80abb5ce85720b8ae040c93d3a6f59566ecbdbb5430177468f8116fbd20289d77e3c07b5a1a3b7fea8577fa489ed20d26c099833b7de2aa0c2ccc9bdf8bf42b9762a3443b7d3a33a911404044f81b662ddac4707b97487850c125e9cb9935d045fd991ddf2b208dd9bf39a591f50e6ec793416e2867f54e8c6c7e89b68c226c7e345c518b42e39f951e7f943cc131acd0e2c419c5b06c15e217c84741b42fbf050c2a28e6cee57d0cc9611371951519946dd4997fe16f22e5645034ba9ab3ea320043e367d66516cb66f175a015c64199b44af409b83d91209019ee9c530d3eb24bb509cbc6bc987d9ee2df98dab9150931aafe02046f040dd042764e605c9616efe433189889165448bf1c06aba4073f421cf75f571bd90d0b454789a2eb985b74d8a9058db62b962c91a3c6f1da1d86bacaa0eb5a2142fc73beb537b630e6472317b0dbe74a73361c7cb16681c63747fd9203b2e244861ff543bdf6ba26ba01d176cbd96888354284a0c9dbe24543b81f8c47a64e940bb5490c7f413cb1834b8fc8c98c09f88cb2264011c3ef917fe651f2678721384c0aae346dfb06261c6caebd23921741fb5ffe6603f16634fca9840c2bf56ac8201e9264d6daccf141ae2a6288687b83d817f7fc0daef577e43d1410871f2f9fd1ceff0af825faa55fcc0d9d9d52070dae60f646ec56c0dd111be1c13459b06470c7ff5b6f2fbf759820ff8f6d8a9e10b21fece0486fbbd71bd5d326b9253fef4bb7e6cd60b10448d76556f2d42e141a8857180e46e2c6111ad6e2e0facdc9738e5aec6282f4467ce82f83d6aeddc9a2ed917f0e5a35179abaeed4d6723db6878b356b6daf5298442d8fad13bc28fc726775196ec9ab953febf9bde175c5845128361c953fa17f4c8f4ce1c60d51b25fcf8317e1371b3fbbed3262199366d90abdd4df9d39a658e36946056f97cc557c78918d50b635167168d5252523e61668746f3a64d1139c360bfc4a4bcdaf2dcf20f1c3d2a528fdf56f27b3ae5c4418366514defb3a7e3ba1fe49866c6b8c31bd70e9d5d3548fc66a84285214f7533da41c476258f156a3becb07ce1a99408c9eb559a7fa3dd92c5fe0547d74841046f94ac39f6f3ef9bfc0375407153b79284b79ada9dfe5bd893f0589897df56098c8f908a416b7c8ae8d26f3f6383751d0d51fb63f8d752041c657cc7d3b5ff2591a6d4c6765cbe23bccac34a053baf10f9a8ac83ed97aa49271a04f9db443f4ceb4297a2aac2347b8290320d851230bd7c113dd463d1e8f483876b0a0aeff1baed3e1abbfaeef92f052bbd9ca78f5ea1475d5b148735ca9db98e8fb85c22e0b5b525593499f84ca5bf9aa38e0c20df9fe0c4f0bce578a7c1d86e5549d6cccea5746366abad0344f8e23aa6e3d34a7bfdac6ddac428834c35fdfdd0ff90707557df4b8d1f1d358359b41d276306eeba149a06308e9679b7822793499ed0e94d2e51399753affbb3cd4cd0f938e0f4800e25135f7e076acea1597f93c8b0879360d8b67406de1e109b91be6c1560c469c2c6e67f4d68add76f434c8c979d8718ee6d5f6537e5a8e4be541d8cbd34356fa8c31e2cc1fc19fb0db3b10eb1cbe0eb1a9f85412bbad1d50608dbdff81f458fd7ae82c24c0e0aad62bcae47798a4558f1a384e2ca744b9270d808413ba6777a5bc0d82a6a473ef9a1e9ab3654b9d4eba16e1d86f7a76ef6e98ce65cc635078530e629a6297fdf12cab31088e4324f899d8bb7b37208a082e1dbd3acb76883e494ae4a09108f3dcc423696db1c3d2b1e2ec540c4d9a02c2b1db7f0a18e608627e7ebc6fa95f8cc8c750d113aed2d0d6d95330d48e2f703de968a94529041b0d56dd7d0d9bf57ee47ef566a470549073045cc875a464739fea921f1b525680b37df7a99a312b33f21c508e551d168c3e3259caf40256e3cdb3dbc3c48099aef4f539ea170c9dbf15d9d5e6673c07b0119b03676b01dba1085e389c482128d54ef73e727a9bdb29aab3273f9354b5295ad08f5e9d199b3750071478177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootpython-copr-1.75-1.fc23.src.rpmpython-copr-doc    rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.13.0-rc1X@W@WWv[@WbWL+@WF@W@VVVVT@VzVI@V@V7P@V@UU'T@TmTmTWn@TWn@T3T @T S@S@S0S@S<@S<@SR@S@S@SSFSFS)S(5@S(S @RRJ@RR@RR=R=R@RSRSRSR@R|@Rz/@Rw@RkRj]@RM\@RA~R@-@R9R6R6R6R6Q@clime 1.75-1clime 1.74-1clime 1.73-1clime 1.72-1Miroslav Suchý 1.71-1clime 1.70-1clime 1.69-1Miroslav Suchý 1.68-1Jakub Kadlčík 1.67-1Jakub Kadlčík 1.66-1Miroslav Suchý 1.65-1Miroslav Suchý 1.64-1Miroslav Suchý 1.63-1Miroslav Suchý 1.62-1Miroslav Suchý 1.61-1Miroslav Suchý 1.60-1Miroslav Suchý 1.59-1Miroslav Suchý 1.58-1Miroslav Suchý 1.57-1Valentin Gologuzov 1.56-1Valentin Gologuzov 1.55-1Valentin Gologuzov 1.54-1Valentin Gologuzov 1.53-1Valentin Gologuzov 1.52-1Valentin Gologuzov 1.51-1Valentin Gologuzov 1.50-1Valentin Gologuzov 1.49-1Valentin Gologuzov 1.48-1Valentin Gologuzov 1.47-1Valentin Gologuzov 1.46-1Valentin Gologuzov 1.45-1Valentin Gologuzov 1.44-1Valentin Gologuzov 1.43-1Miroslav Suchý 1.36-1Miroslav Suchý 1.35-1Miroslav Suchý 1.34-1Miroslav Suchý 1.33-1Miroslav Suchý 1.32-1Miroslav Suchý 1.31-1Miroslav Suchý 1.30-1Miroslav Suchý 1.29-1Miroslav Suchý 1.28-1Miroslav Suchý 1.27-1Miroslav 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- edit_chroot implemented - modulemd 1.0.2 compatibility - add method for fetching /api/module/repo - add 'mock-config' command to CLI - added auto-prune project's option - stripped down impl of building from dist-git - Bug 1335168 - Delete build(s) from CLI- dummy api for submitting module builds- Bug 1361344 - RFE: Allow denial of build deletion and resubmitting at project or group level - fix creating group projects - fix search for projects within group (RhBug: 1337247)- run pylint check during build only if python3 is defined - Bug 1335237 - copr create command missing --disable_createrepo - --enable-net option added for create/modify commands of copr-cli - --unlisted-on-hp option add for create/modify commands of copr-cli- configure more packages to run pylint - send confirm only when it is True - add --background option to new build in CLI - honor standard build options for build-package cmd + use package.has_source_type_set in API - _No_ to Url & Upload package types - removing need for source_type in package post data - fix non-existent attribute access for PackageWrapper - experimental support of building packages with copr-cli - added --with-all-builds, --with-latest- build and --with-latest-succeeded-build options for list-packages and get- package cmds- [cli][python][frontend] support forking via CLI - [python-copr] added missing source_type specification for upload & url builds- package manip implemented in Client - refactored building via url and pypi; see df6ad16 - connection error message simplified - print user-friendly error for broken config - implemented rubygems CLI support- Add unicode representation for collections (RhBug: 1327597) - handlers: use list() after map() for chroots - fix download-build for dist-git era file structure (RhBug: 1324847) - implement building via mock - refactor building via tito - implement building via tito - assure python_versions type for pypi builds- allow creating group projects- support building from PyPI- convert bytes to utf-8 in Py3- fix wrong check for list instance- fixes for epel-6+ and fedora-22+ - Added MANIFEST.in for python and cli - updated docs to include project creation method - create new projects now returns newly created project on success - added method to create new projects through ClientV2 - we need six >= 1.9.0 - added support for BuildTask and update docs - W: 67, 8: Unused variable 's' (unused-variable) - W: 70,12: Unused variable 'x' (unused-variable) - Too few public methods (0/1) (too-few-public-methods) - Use % formatting in logging functions but pass the % parameters as arguments - Instance of '...Entity' has no '...' member (no-member) - add Entity tests - initial documentation for ClientV2- pylint cleaning- W: 9, 0: Unused import json (unused-import) - Added marshmallow as dep - since APIv2 we require python-marshmallow- python3 compatibility - Removed __version__ from cli and python - Added version parse from specs instead of __init__ - Fixes to allow copr lib to be installed using setup.py - Fixed invalid classifiers - put client_v2 into package - Display progress bar if python-progress is available - support APIv2- version_info is not namedtuple on epel6 interpreter - fix missing urllib.parse on el7 - use requests-toolbelt to stream SRPM files (RhBug:1261125) - add run_tests.sh script - fix unicode representation of CoprResponse (RhBug:1258915)- implement srpm upload functionality - better error handling (RhBug:1245105) - define %license macro for el6 - el6 needs field numbers- [cli] wrap requests exception (RhBug:1194522) - [python] Bug 1188874 - better unicode handling - [cli] test unicode representation of ProjectWrapper (RhBug:1188874) - [cli] fix unicode representation of ProjectWrapper (RhBug:1188874) - mark license as license in spec- control auto_createrepo property of project through API- [python] support python 2.6- fixed poor decision abou CoprClient constructor, now it accepts kwargs arguments instead of config dict- [python-copr] syntax bugfix- [python-copr] removed log config from client- [python-copr, cli] test coverage - [python-copr, cli] updating copr-cli to use python-copr - [python-copr] minor fixes, added usage examples to docs- [python-copr] fix: we need to support python 2.6 due to epel-6- [python-copr] - bugfix in cancel_build - more docsrtings - using sphinx documentation for rpm build - added instruction to build documentation - re-implemented Response handling - started transition to sphinx documentation - added optional argument `username` to most client methods - removed method `get_build_status`- [python-copr] small fix due to the old version of python-six in RHEL-7- [python-copr] Build python3 package only for fedora - [python-copr] minor description fix in .spec- [python-copr] packaging fixes to satisfy Fedora package guidelines.- change package name: python-copr-client -> python-copr- [python-client] fixed BuildRequires- [python-client] Added new package - [cli] cli now access api through python-client- use correct name of variable- [cli] stop waiting when the status is unknown- [cli] skipped state support- cancel added to the man page - exit code 4 for failed build and man pages updated - error and shell return code 1 when build fails - delete a project - shell return codes with errors - copr-cli cancel fix- be less strict in parsing fas/copr-name- We can choose chroots for new builds - copr-cli waiting fix - building pkgs separately- BR make is not needed - build -doc subpackage only for fedoras - add LICENSE to -doc - replace 'copr' with 'project'- move copr-cli in standalone package- [backend] - pass lock to Actions- [frontend] update to jquery 1.11.0 - [fronted] link username to fas - [cli] allow to build into projects of other users - [backend] do not create repo in destdir - [backend] ensure that only one createrepo is running at the same time - [cli] allow to get data from sent build - temporary workaround for BZ 1065251 - Chroot details API now uses GET instead of POST - when deleting/canceling task, go to same page - add copr modification to web api - 1063311 - admin should be able to delete task - [frontend] Stray end tag h4. - [frontend] another s/coprs/projects/ rename - [frontend] provide info about last successfull build - [spec] rhel5 needs group definition even in subpackage - [frontend] move 'you agree' text to dd - [frontend] add margin to chroots-set - [frontend] add margin to field label - [frontend] put disclaimer to paragraph tags - [frontend] use black font color - [frontend] use default filter instead of *_not_filled - [frontend] use markdown template filter - [frontend] use isdigit instead of is_int - [frontend] move Serializer to helpers - [frontend] fix coding style and py3 compatibility - [cli] fix coding style and py3 compatibility - [backend] fix coding style and py3 compatibility- 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  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXY1.75-1.fc23     python-coprREADME.rsthtml.buildinfoClientV1.htmlClientV2.html_modulescoprcopr.htmlclientclient.htmlresponses.htmlclient_v2client.htmlentities.htmlhandlers.htmlresources.htmlindex.html_sourcesClientV1.txtClientV2.txtclient_v1CoprClient.txtExamples.txtResponses.txtclient_v2entities.txterrors.txtgeneral.txthandlers.txtinitialization.txtresource_infobuild.txtbuild_task.txtmock_chroot.txtproject.txtproject_chroot.txtresources.txtresources_usage.txtindex.txtinstallation.txt_staticajax-loader.gifbasic.csscomment-bright.pngcomment-close.pngcomment.pngdefault.cssdoctools.jsdown-pressed.pngdown.pngfile.pngjquery.jsminus.pngplus.pngpygments.csssearchtools.jssidebar.jsunderscore.jsup-pressed.pngup.pngwebsupport.jsclient_v1CoprClient.htmlExamples.htmlResponses.htmlclient_v2entities.htmlerrors.htmlgeneral.htmlhandlers.htmlinitialization.htmlresource_infobuild.htmlbuild_task.htmlmock_chroot.htmlproject.htmlproject_chroot.htmlresources.htmlresources_usage.htmlgenindex.htmlindex.htmlinstallation.htmlobjects.invpy-modindex.htmlsearch.htmlsearchindex.jspython-copr-docLICENSE/usr/share/doc//usr/share/doc/python-copr//usr/share/doc/python-copr/html//usr/share/doc/python-copr/html/_modules//usr/share/doc/python-copr/html/_modules/copr//usr/share/doc/python-copr/html/_modules/copr/client//usr/share/doc/python-copr/html/_modules/copr/client_v2//usr/share/doc/python-copr/html/_sources//usr/share/doc/python-copr/html/_sources/client_v1//usr/share/doc/python-copr/html/_sources/client_v2//usr/share/doc/python-copr/html/_sources/client_v2/resource_info//usr/share/doc/python-copr/html/_static//usr/share/doc/python-copr/html/client_v1//usr/share/doc/python-copr/html/client_v2//usr/share/doc/python-copr/html/client_v2/resource_info//usr/share/licenses//usr/share/licenses/python-copr-doc/-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m32 -march=i686 -mtune=atom -fasynchronous-unwind-tablesdrpmxz2noarch-redhat-linux-gnu      directoryASCII textHTML document, UTF-8 Unicode textHTML document, ASCII textHTML document, ASCII text, with very long linesGIF image data, version 89a, 16 x 16PNG image data, 16 x 16, 8-bit/color RGBA, non-interlacedASCII text, with very long linesPNG image data, 11 x 11, 8-bit/color RGB, non-interlacedUTF-8 Unicode textHTML document, UTF-8 Unicode text, with very long linesASCII text, with very long lines, with no line terminatorsutf-8?7zXZ !#,j:s]"k%{^E) ՈmXB PWJI1Q\:-~{A#s&eRSt,~ʶ,$oѠ ad)Pݨ]Y\FP N@S(X Rҧ 5%* ^9X$ [xI<] >sQ[APJS!Vݔ_"&,[pNorUe;{ʉ "w AVk/.x<;#꤁f֏a) 3:v,~/b4SvXqć%ú{2 RV'ػ7#H .8TTB~kKp/ `x瓶db-\--~& %c\ܪEQC[#Ы̌Z$_.Cgȴ~R˫~';2K+O]q .$iL0{-Gfslg#OIe@a]+Q<,}/ҧ}ܸ,P;2͠=tYW  #sd1! aŎ}{7[V!pÒiBMMol[\YVҡ:r1~]W$UfLn/?ȫO968H?gd1@Bc8֟WiX#M"o{1 A$ gv%լTg-Vx``̷}beĭZt?@f%H IWOp@Z*+o 1HշF3ǤnLe>|@jNuߘ߫6,ޅ,7yK)/*77gUѾHEٵeFa:2W :Z~ˮ;yor9^bt%sNROnj%VNp&3?\0DK27%x=B7q=EpPQpifg0Rs9)lb/Pt#Fs6YbйJSqJq:vmcE4 3uq~Z`>*k2AB|NJXԝ[@PW6N2Мck$a`V%jKQo̲K@LST; oS2󪒍N/%cB1[~f]WBܚyh#{C|+G~%%GUeˮ܋ /exW+I Uuק-?ˠVbQfb/=d~k#|c&}+Ok\BΪ7%_HN R?Zgr׼5TkJ1 SDDsKjE81p8P8zZs xO.FzhwuOvh BMݴ(;JmM\uuͼۣ4GވM¯g*W4qd.GƉ?Ik76}1^"ʲj3M=E@W7 2?35[i\ 7jHLtvpi?,*ożh34~Kj42z379cbNIܨgsBy.a|nduœ A ꑠjPZxu%!Z֡q0쒄@5|C7A5DbGKB{BcĚ #M$DUl$'ooT,r6Lb4|eZ-^Uxp<9r}N5ZDTUMzNr GtJқc^`Pxp~z{^Ԛ8jʜQesD$9ebaMHiLna9۱O>[`=] Nץ?/P|Z >2(N[{D:!nFjB'LaNk.#Q5oX05=fF~ PCZԧ㹴4` |)$H؟W2z B*PER*}Z ڏ >slyIH2LҠoa=19^bW ?W#>ݍY(C\0͆*/-傄qҰA^=&P;eEڤwAUi&C4]鐷*wÎW,}g=q_*E.n4 %׵K4>2ŕϵuע'^VDȿ)iTTz>]hG+b87WӔf?3oES0Nd2fYVЋ-k ~?B kLҺd]} \kiBtB-ßwS#[CJq6>6]Zш1@Xg?n}c\Z/qghcv<}U43>(D *zD!@+o'Hf6v1t?ⱌ|X3' +#>(mLd.@ k`@(A5 x#tvq$V5Sf!O+?5nO)c^WmK!7b]u1A\t*gf[2ir5$.H{ `IM uGR\6E" y6(uL%a+ۘDy$(`xQRL Cܘ qı܂H5>w~/z:ŜkƚF6OiiuMA7rhdz3A)x`Җh֝#`@k']DIvŔ ob uy{m-<*A7}9) b2 #S\(Q j+(uckXޖzlR)LJ]ן!G} +^A~0 k{}dž([]wsg*^}[r@&W=h y< =mpr6X5_+(}`)YpMOXť`U/F?а66kTTKB_؈IL⣧=Иy@Gbr삆9h(l+j(;=O3q$TGBI 0Y;y@@\ Zk&9LT8>[vK!ɟ{8][KƝlS5V}^85^EzhY+hC9=g;lSͨ&Y?9ⷎs0OV>ʤR^kQG/u2iZL(s9m[3jv?tViZ-fG%_NV0z{nCJX"c wa?[@(GO*xL@ހi{-c.L{j"ͅgڰ:ҟ⡎r|NZn0_lㆫ{Q]&FëQU&U気sXD8:3K2&#P Pш$dVW50x1GfɜotV(fYWCۧ7? Dr^\!^\NXcU<\OcK4FX#PQ3bxn`CueNT=Ζ L@E']PlPCo3cV@\24S= G(,JЙVAjp>fŕcQ%Vr=1Xb펗frr|?e$T /_IK΂jlBMC*NZ=q=LO/vMrA!^ l`;vJm4!5܀_iQ<3X^}d;Y)x(LBS*ѓ%AI1nγPdJΫ$|m12憸3heEo8~-!N傔fmD"j7= X`-ȪYH> HŰjQcaDmdFŒeA] 3l%wdy]nk;K\B${p^i}q|R{5aK{mRIv(vqI WGXsZ hG4W cJ&QG+C~/W3ޱ˪쑦OPEIzysfЖH+NUi#FwC?H0boHTcßz2d yj[G F'5GY3QcQDwh_qgzk>ET~)-QwRZ F9PNyx`d˕B@7qK?WTL(>|!w(?ɟ =HnTkխ1Y"z1pU0=IQ6XtmyںFE0k50Sv '{ٞ4jrxz>>^<Р?&@'26ZC!930cmSӷbXMjaeF۸-ھ5Dqށ\~ fAE!1 rVUDGîb1X[xk7}Bl3) Q :%v9DAxemG |P~7WWOŠub拨~J6 .x嚤(̌A2H >'J*F9ȱw"BcNQqRhy3mQ8VܠJY{>Kl=$p]r^=%[oz5r3ԏ|Yq3Aj K3V6惋bB[PsqP,i."u,r i>U|-NE;,Q@2-\n%~@,h|)9| ʸ]N(Ї+,:N֜ U~Vn0u\]:Aڱݦj7a(&缄 hx~<c0MW8pk}164..c4eSzDT'7^mԄzD5{r~Gph'oY #*m DHV=n (mUs %3hBugc[ iXnym ;5LbY#PEZKڎ-, 9r)ڍul-pʆU -:V>_TZ~l:?3c'gBdߦr^ % XĨ|bo4NSQdۧ`;c0T%$guOH_$(pL \NoG XwZRz$ B_P\;=@*c88g I  {'~Ah:6ixD0:¸@>dPHh1KIG7)AA[?#5IR$9vѥD$!>gބa18֙$ WsWdeeYNnagy7*{xp|^hg)4!K[)X=D,DlTHw LdB]x򤺊pD]ϡV4.S-*4vrڠ-p.B}n\jx JkjDLz3]#/cTk\锸>G+@ UG(vis}b֫@O6+B.03j(κ`Bγr@ɣj# `uX +~ jm_Hf-# >-aGIZKr(X~GLf7Yzs75xBɒT#;z&]oco^ہ2 FYBIw 54"z MyXiwDG$a&\V~R1 @L`}g$=zܣٟR>E[{T 5?|qih#E}CF،'Xc&TQ S&䦞0"Ų78gxŃފN$H"U6v&Hy>&ucm:g^$z5.N Kf@EI*|Y -ӄT q"Lo9yN;}kJ5#n[Y $_2ΎUJ8jU݌N^:P=>}7r˟ Jlj$uat6kx''H:+FtcUrsaQy-/g=B W7g+%Vjw By4\AÓ4!:wFW)fU&T%B.B /l-o*x;O;6˛d>k_em CIy=;n.#=nk?y΂)TIJ*PkC=>Άc$B4(_vfvWiCVq؃\우zfC#.3iBjI e~]om}ځ2rzx 5f0WH?~y-ZoV hG*.scQŕIsFXc&&MXt'JJfFb̌.[_jІExa0B]!?˅/PF+0%uue2 F&XQ n{C^䊺 AC[07VC۳obIz.|%Z"8܌C\0ek↢oxǢ{2+' n#!y]B֩=/Pd\!"܌T.f^FEF%{zVВlT,ZdmʭOd JPRI5fl)m[ּW-wW=.VvX?](sn oH^Ts0nSԈ|:`.Xf#?SFGn v(К8{yUMXQw*?׊SEEqݒ*'[ܕt[kezZoK8E\㋫Fr ݩz`yewFU46tOp8iy9vzJ\(r0V|$ =ul{N8?tUOfĨ}1i?v1id1)&U!Ay@IA,b1G<&Zf<:pZqbq0j- _urj:;WZ_#w8۽uvYTOCa#ug>Df{ilٸ`Lu`]L˼kT!ւ Q7Yst "+r³K=<醩- $'8/$*r(w |oWCMB5DHh3҉f2 cjPdC k tvxNtNk^5)>}jzۑvRb!'bIB iEPZnw)c pjF6.7}Cx6;pM;zu_4d4*:wnW0Ry Pj5)XΆ 6E|wS@ ^4|/yh'' FUD .C5v!z4%֬qEc6/Rq?Z,ItA 15ZZw{E"ٜAՁX7qaLH4f)B}U.TA~0Xc P^jVB_>&fq&>|!CN<4)%e<-MK|yJuohbS rjǼT䚹Ɏ%cVPA@ͧ%)}\p!/Ug}JT2k "ca4/&#&*#HhL ^8N8˫nN9lcw82iKdž/Vܥ}k"k"oof-;N$j|)u!"yzjBJxd$Gdb\*a q\4'zO3xa nԤ&dGiIQM<3#[yeɝNqM>#f>7u%i%)+?P1y2ҙd;~X+]se:w(Ā=U:}&7o\Nw9N\dLڨ!ּC,9@G߅^Ěcj y= qLOK &ǯ# WBXG.G&K;QByˊ2Ѵ*Xwڕ*/j|[sJՁQZPetef4/YRvk/PaQF ag}8F TsM#G[Zp` v&ZjjrOc60 փ&V갬(<*$8Sd}9eVY o;f7$>o ER@K~,@6(/?pXCJsI؃8a~3^صK1}ȖF\ i j.sO, JcW'w)nuVLi 3Fcyqst}_NXpBV6j5^ KH>އc؁΅e-xӟ0uYs7i aۂٚBŠgLHϮwEkӿdJ9 ->ȐF/B_ =5v7~cɒ,.N;N7F_<+k%ǽ]3I*d2ŁF93#zi /-&JoX2CTjT~Y ϭ^`kRu: l3)7~m{3RN݉ɛ?_aWv QN^ӗ[@2bJ͎>dw3hU kO#\W:{o6ڥ 'N*|D9XVmYC٢5^HGwp9dXNt#vmt2QVgDq($VN:,3c{菃P?B4hb:CW8h9v o3MyFl7*Ĝҷʨ. @4 0- %'qҗ""k ]c//c{ႣՎgRms& /ܠyЬae"m/>L,vI$]oC8tO/sz^80y(ljiO5KU:g[A*Qo`l"Wƹp34T[wP5iwdWHmJTavȡ|0hI]^8NSpO'ږ  hfxZ^Cs|_MV&fUAЗ,uF,6|L_@~ )J[9m^Mj_znj6$c4K.8)z;&hPtv;d r%brjG.L7:@([Re}NCϣM; 4Qq_QzT %S10G"B3+cP& ~^ǂ78~l7湒jеGэ/Ej${Uuz-)J/FOӗA+W#TWv0I ;Fe&,%76n֜m;1ưzzU@CJq*9/lC6>j47PA Bq e#d zpG{x ` ő?TK,^-X3M}PMU4h֗ĥ :^4H"9&С52oM`\`ux"f4>b.wQ4 DOӖ- cyMќ1F_U^"Kd!7ew;'@F9 6<I8,Fhm9 BK;(?փ hY;e38 z9d>Q4b dDP_koͬxN (>(j&x^[t΋QOPu\/>8Nj XpAgIMlʳa_f§/ ְ%|ID:uWM5x[kZij&̲*5m?e'LιiU U9L7^[/mdt|>C=qB$w{>LX;t^6}Hft,SO'Q|߀h+~eqw(0q/j7ԜږVi_w';E: m p 5!MdW:;qZ5l/Cwu n04yn<>ܪ{*a}tvyjH/ldb㼻XO%'Z+Ax$HDzHPň˲ /䑎Lbb})D⊕jpmv:('Cy.<8CMp*S8ܚtG/D|d.|?$Q JӋ3o8rT/jZ[[w™t y͹-O mGh ' _ᇑ"ص6:Y?ަ1QT9怿pVC]'yULPRk'-uFmgC2nF^'NkEvF>F}->/%tg$H| 8_ KS;pHXϾ,x) FL-V!, /+[ZPr9ثh' t)M|yZ4Moļ.-F͜Á9nY**|!3ElU s|TV. Ṷ-5SF*(:9ixL_ q>$vᔡ U3RzhFj!2Jv.' 1u}WXXwӐ~XxoЭNZf|ro_(TxqR$KC5}Ϝ,1r⃌WQAOqTⅳ[YzK/tR|f&n^Ac!Jة FZVW+ĮQp-`))<ЭZuSrVw45UvrK-%QR1ȇ1l>,g᣼M1ZhKHX@x Җ WMsSnO(kI%/+/".$2jW 0k]~ >.(MC!ҏt{u6*5W~c/5aZ {M G6D=;鵽 ,q2WibWW'lVH% C,`/2QՊȞ=bbjy`b>##FQV˕-PE!%H d{PL>Qu1 Bf .C*m͠YYmUe fTu,,U <S내z6#TtU]K ^:!Vec5 LY͗ i'U_j.Kse)оF4/m/8; ZjБwye6> 0]0O`2Lk9kbW41~tG`h,Ԯ [QEÌ8؄6fe;\5X>h0ng`_sVþ 0 `o3b(+5g;R~/LstU'k~"mӼ]Mn:Z{Dg8EH2JS(7OwV&=oK;Z]WG{9O/~CR1 AhvU-?.4<9{,Fʕa}> tnY`YxgAР5)L1(mm#Fw|(^S2gNbYXZV`rI>;+{G$O/\y~V8]^hC J6LVl)jqKU$yPۧ̚a7^jzn%{,89vRP|UOh(n[FtJDSDp~Fg!ɧ$/`r6P^ξ1xvC]ƕ vNyҵ(yՇd+[^ȉ XsY} h;?[L<'w~F>'т`La rE5gw>ND@~pm`OYE6x:#tuܚ|]\6C,h'8^?zxIR΢2 VDS t”!ᇔ'*Ԭu] W$G_9\@( 7Y;(:~)E8YD-+TRH)Gv5w ,pԂ(P.{Ƞ;ODlWJWj:[(в؈0dIZKp-Ή zccn^e@!d E|xINk0m_Ӭ0?l>Әv~l cnHDҾUQBմ1駏Cg9<(!݈ax'˖jhOB@+DkyjZVW\=Et\p˗']֎@-=fxL(/qUSKLSuʀx]Շ,kqt p]K(A?|#GwՒ4+O ^([^jF`0Qז$L,D$՜GKO"F)Zٚ)ˑҾ4֝M~gHqi)ㄦrQs:soL%H)0*,$QNaA~{  59kX}޿|ì^X$+"idݧXY ?F b2l qy sanҸxer1x,%E-et)7>Unj A_TO.x(\ ~ 8qu0C,vՈ0 r$ro^%WɘXt͝v,x*[bIVgm+49}k q ա}8ql*R%6.I`yˍA1h":kզC|422f'I*j/qe=b/PwwvHb] /:b/J8jZ iШ-&G>#E펾JDûA(c_'_Ux)C_ a>qO^쿘uM3)!gp+qJ9F'npyeai K=xZu?LvԬ:!:\ö}cTmow+TS&_,05t'Jkśv<);'̭ʼ:eʫ/i ȉ/-/ 3=a_64pi):\73?6*IM?WlʀF_{; lpϮ* EĤ\Aԛ7J\(12/\s3r8DƂu][VaWgEuH@Tdy6_?̿L&UUw 8j)-XhIbMkW95trxr?|KC+z.NX-,HKFhKS 5fܚAeWR yOXCc ({ĸ"4uXNAT|)( ?+-ZۑϑTEYs쉽Wڒ`r6[=ҩۧh%:\v+GFģ_+%I3ɏʉ!gm-NHcGZD(37# xvG*Oț~lm V|UdG>gXcd -QpE2D#\ r 5j٪\ZCwL xu NT5~ܺ :_F-!^ܦ/M :RmAqx!/h_/Nc/a`26k[ \}#NQ@CZ8%P~(@#o,b k>!J'ּ!EQ2&_:E)uVudԕSkm.K{")YMg R2Q\WyoF@E_a}5uKrA}fn2*!6}2wwU7d);vQ;4?F/ƾ 3:dkiD>-Mé1h [j>FuL mۭ4$i|y g VZD x"کb^SƓǹؘ>ХWT%No,sce@#a_2M]j -ݡߤ!^Li{>Q'fLdN-wnL(-{kU[wIz=,X5sԮ5n䮺[T9HfL<ɄH>+E#rYʉP:Y9FC!nߙgi,۲a2=gNZ\(plꉢO?%6 9jR@O) |pI;Ho܌efĖ0v$5jLo}ٲp O|Ãrq4Es)jkQN&G|y Y_^ zvda1`aWrȿKZ:1jsϭ:]%~jaO aMKzi4_Ī'h]mY_X\)l n7JQi*&r\oe{a ԏ;+؂_'`#'bnÍ7$)F M(`iQ[xZlu6R ` M?IΠOXp:@mfLSF= JDv#Aq̘hPN.fb=]Q?d@Ŭ{Ċ;<5Ér:mj@?Ń>A;$Hi:h~]8I bmW(!:&Ȼ_&x`Xs![0b2-Y+Wxzf\JP}f{fa>zLzj`q-$0 N'G;؃^ "^Xm z+W69CnGc'#u;b'i{F,Q8۳WAVzZ<__D^Ǟ*mP)Z, ['^iaSܤ/ \d2fxƁ8Rx#fh 2|X_SU ,ll:ϒ|Dܹh n_X%B+n 9j޿ yl>3G.ns@8\bP E\4Sex^T__?H銦GW)2b=٭FOy<_ נ] lW;t5.qrp:OE> QԖO#u)>:Cn9Yȹ&GҼkNpMy{JCTuԚtM MX{fxf7cN6q7b6 l W@,ٺMyyKI.\,̂k1@c)8V=P g#dܮ5!"Ti'pK$m+j"M="V8o|vc,Jm["|'Ij;e<$Kd&&R.i}Ib`eme'FVmaQLh~E4VB} x#nb?N5E÷u+{,w")cR¢jIX͠dT+16c W+@gu׾hA+C'h&uj7 sisSzF_(߸UJ/5\M1 v0it8(,t&C tWA0R;0=*g@ԙشk2FV-/f1+$sD]RE5b2Rj D!NZKm)L.TKv=ʻUp[:R/.p_D?*CVB\7O t/2i7ϵ6@ S %Ԉgv#"˶%%h ZbGW@:3,;\)?%N™_~d6rMI_{^!4=dDzᇔwwԉJ"q w-jvc1V]zʼnehL|#-[ &>0+f(^z?Dvt gX[9Rg*sa(3]$Uw:eZ\\|p`}?`tڜc0ԕ>9in ژj?,\F W"?ͅ4H `{=j+n[utgn&eեShH.]R/ߒ1kq+RܲK2dcA`ݍF)hůpU:gok f>LW%%8k UP? {+B,(ϐX}\i>_O1hH۞^"ו}Z^'<6 }"|z,dsu0yyHzvIvH^ gܳBn?,>en/mA" 39UsrDe2"wP0<5pw@~o h>SyLB= Xoŀf3p.EE%<F[/aA-?q(礣A}gڤcCjH'h{| yc6^ 'hX 3Dr,i%!kudqlr SQor~Øuj9y&]!mZC'h~} (KޚŔʤR]I*aj2O6ON*"?K0@hD ]?-U"qE F],uJo3 ӻzwW0/WG>wq޵>q+ ++N-]";=Xdg AxQQA@w̩FnXDqMjdB%CªןxFʒmo""+3,{:Ґm|t:ՙuw!r hΜRp0xwïB_~Wr{#׋p؀/kr3o߱x( &R&&#O C)9EԿ?M yEQf dM?|zʬr UH'Ic '٩aK%Hǃ0Sr6Gl!rǞDy`}$Bz#0.7ԄoW9#t=g KrgC9c *dY; -1;^>[ KAݝj~ \S}wҬGƚ_`N`ؿ\x c|sW9ä&{BO0pډ^{tcuGzdQVd)щ>Zfq΢>sxOzH Տ6Y$ؕ6OGj7r`+ElK@g9sU w[J}Px/Kirn!Wg\sWw 8(.e7'j:Q_¸V/D1{{($*WmҘ[{ι%\T)QHPC/J2EgOu$sGxN()`֨Cf ;b&.c׍[i4+ l`De m>>zRR株JM;VK{פ:̂ &w_G9PULjVbDHv`8VbISI9+p9 ? ;-lYya`Z}yKiH|[2;6gmb!WApظoW@g1_XTh>l+ufW3ʥj%Cf&ՕpD[͈^Og?/ffCO+Ѳ\UY+[ #^F<Qe &OS>Jgy x yRej#[EPoiV?1T3(#Ԥ]?h瀡[q*ycN KI-s_at5ZVwgIJIneQX6$%O<,5;"-߳:t[lm(gBPazٔLez0wyK:y>'mdiq[Ҟ™r{-w߷G8Ц'(3>㔺$_B[n߲|3[=m佫iձ界[:]T ~ 8tOol);00`Fƭpz6n/ m9 yD-- S.^dgmpKKu m''BA=] IRK ,1^ohY5-`!O>A'۾VvGlG1hdtMȘPSqqpBR5hϺqQѬQ_^LJ1pk&ܞTUOhggND+1 pTq؜ʃڀ؁#`_x}?{t_$k]b8r ?4΄ Q]#~`N`e uCyc%QfvWӼv9Pv>Pfs]`SHuȷd f3>$PcƼc)j{ہ?[(Q^մ^R^aa%`L@3ǸY3ȟ9;X7QDS^vO:U[UzyQj|b?@1)*!H>t繶 lMq~\6r۲y dk4۴#W"L DN MВG`! .ȣPV{-QCJ5E>M1I"E%HUg$ZQy {QkCHP)EUk]6#̶O_nQ>#C~yĊޚ4WWF7gex;K%w=㈤ӀVg΅JԫW}`iB]B]v䔧Ws/mIL.R_ huqM&r!j)vQQ5 :\"jj.z6nZ|ý!hbʪݙ.>fj+9['[L6I󈄗5M8h1¥u~Qo%,gx-#7=a_Ӂ{G{ނUO (*;zYחydzK;D Ġ&8c\o}cE^4*:^G|7]fAŮ¾e!Bx_' upi̥;5=*7T}[haszv@̅B\/4KI2 dz?!bţp7fH$0u3FC6G6KP"H C!ep-!Y~Y<>oy1OO=9y+L1%vc]!r|HQsdCDxVVPs°_--I2:SqHH'wB l}^>'8P\bҭL2 ZP13P{jƋ;|bg^ CP 0܅dî44Aڌ!rXJXH1nȔxu#f%b˽7a LS}( kzȃn.r$wg!T5#<<8$O>$y~=+ijoyxxٌ{ >%8)"/79{OV'R*S )| F O.uO6?բ#@ . 5 Jp^bHkla:2P>[:DX)\2tb\z}xFg"Y]?ݭF3|OM[d7Ii{7o*AЌB"LGR%^濛 +EZ6G]yw2F&o| D6'W!Dy -@ q,wik+f↻}{ *v YQ^4}E )+qƷ*?%ґUu5 } ,a"gOs˯5`/w`X5~-Ù6)E[T\e`s]X`8jFC_+tzyvNXq~Dʙ4L}]J۬0 b97vId6_}x3/#6Ǝ=_`!*wL]ڌx`s9?dR]UemidCxvug:Q+]:|o:rw:h yB[CJԨFҚt=noF7 [ l',pss *ﱸPM-XoGM 8H ;=_|؃h q{G)Y {~bn99dֿmҙDV-qX=(FIJpjlôGZQeTL~YqB~ e: =Qx;PZR̋ywgJeG\h$!9$=lS[FXǞstu._ 4]Pk c/F 92yM쒱ˑ(nak #p&Dߗ C9m.ɟE.C$T7]ZI'B lY},wj6Z]/ϷKHNX|ߪ$'윎״jP X(!e牢ph+I)fk^Lh\ %ĔJ'#`%#.ѬpUwf@I6#>Û4[DO鿶]pw_"C?+E 4}վn1j/+l'rw*B3єG%PQu``Ӊ*{ v5O7%HCG3}a="al"/F< 5O5= c>a3׈( mvv(X>+輀!fǜXO6qQElW].ӯǼ1y[<#cD%fczթڷ[sF2{qt;0q$xF [=$6Q ^5 {gi1lDVw4*80dO\Ы,o1vB 5l8&Cy 0e!4#\^zi]@pD`V9ԹS"[@Mڒ_mHAH:x~Ri|w&r^ՄӆotO4+3ȡQon 5ZĮB.F9G*K :WbFdSE_7lg۝j RH7 h)h;w bհ$^X/ནhaAj9~#倫THNXVKp?vvgQSIve;-Rb/ِ"P2]IۛM\Ia<*"6chC`|<p7LgTwr[?Ѭ3 &okVY^陟7~@ 7HҸEM(awYo\o7Frzv EhZA!"f!õT8߫ q]"+RU{+3wKxBuѻk:t)?Z0M`Bl+yqe *YaY'I;Lr[aqHgEÆO?L]S;|.RXs2ܨXF g緲/$:Cٓed HX ~E71GQqLdh`ÈW y|㈇w)il;c*Hp[g)]\A}&CWR.e8b_.Dl#M\c 8*dJe9AU|75B塨׬19;*4sfv GUn<0}Ϊi`Scy;3ahBYQ s@uRB`YQ~K|Dtڬ/'8_:5ѮTa*)㦒a *pYfiwwޖROOtHȀ#oxH~q 2Hk˥yϼC(0T ZC Z\?J^k lT|T5K}@~ OH˲+}iF/&Ubh" 2 $`:Lw'bU)bJSޛSճK D_t]4io+pmCl-䯳$/J9q-dl;Hɖ> Q6Dkrtn,;0jNOXrCOh줇R*tcs&y[NŢK:/Х1C )HL$A6I/#7ArZ[1#A^ Xܺ|3O*n~nM=2!UGԿ4[cd2E+wG%, ~i6.3U J:6&Vw(QX'/XR'eYyc@|3D)Cxţz?m] %'$^+q8Ag M1rfYZ ԣr_$S&f=HO%NvݗjR;X>!Ѱ clᄀ5^*2O|{t=a!Z):j-,`fxbؚg1q SKvȝV*o%\*i wzrxć'RFb gI|z @=|SaQ{g`jvWJݙAM8|2l_"xi'dK;”C1y֐cHIV""Yk2rGy8; ([j+'"Y{ɮ=GF:~z\i ! "Q=@2ؑ<մ?0yb[MI&dfzNdb9D*r(vPbC;ZKk}Cdl(~:OP΀19+R.W7U4 T݅XNy9&=\ҞDLd6jF+R3`V)6 1qg=E+0bȒYs3kgh40ؤ!NB>y {?_D|%qț̇1X+TOs,86\ K(}C$$v_Gp|ع%˿3x@|.R$}ҍѫ *V0eڳ&^+ P:ϥ>#E1ɮ*Vhew J6 -XH.3hJtV ZKb7;I0O2Oū:\o0^&OrbxN&]Dh#{b8;eBCPs.sj |!-\&X3{ڵ;NhT n~?FE FFz8s A `[>Bl={})&e^`iHI|R Sg`smm'}ΒT~ e3~%_PKk^-ڥ<]wՋ2L~N /LJNy)޷06)C|UL7i7D Y'5o0_wëwN"(J*˧rFYGA%JP jS'z5l2FEhJ*t`rKB4_*,#{]^DX{|}NF=r&[38|:6t-!l U׼6xK}ui]? #7,dԋelH 4CycnCp]ں%%*6ؾLaMvjWZF\yX3RVexwMQ ?*S[j̚TKy? < #P`RS 9A5kco]Y l.!1kc0 kAEK1Av[ < 5IΌCJ4œ&i80%j" 6wn!v<3'yZpȁS1Mٹ^*BH=gxk E\Nqc{}eToh>$Vj@0\Lj/oA4c++o1P'N" +g&l~atg%Q"z4zjFK6mTXoB\&)ëE\>֜uU*H$3sdh$z%H x__ѹ.(4|T]㢔TTY?/}ůe{5~g2q_vZ>Vt=h[0L=K%,YkaQTr GRVw.y!Y* 9 }&#_TTh2SƁ`VS@Wx0Wqq፵;~?Y3$VĹ5WdYx?^q)LjnNp)5CCPn/E}yF^dyj2;Ǽ]CXuðroAP!ْ\:w􆟜Y 0 M'?l7XD~""3+$NWiL%Y~F74lEiFi8#E3L[&O(3![NQߋ"$Z t'o﹮h˦ȵg_zZ=G|Kfd=Ƃƹ"NV<SK ɔ!n>O(jH(,A\|nМJK_uASX ʄ>ux*E5Nc/وHVX)L+)1͠Sk .=[µ7Z/gQLv_{ܷ׉E;'zpꄯ% .g }yD/*c^'w% >}Qn{p);Ysj;Mn@S$NOӧD]uvDQDr 91t{E䆋^if&+⼉4Z_zB΂PҎ@LH> 5}t@E=F=]1 {7mOeTh-?XF- WmXC|~%{]UDƊ3y1# 􎖏":xM.C?%=u7HrVmIۻ5 3s .{̩=9[=vQI P;;ù^I|;P,E| jѣ@֓{mMyX bҟ_).S;lE {z> ˋζ}WѭetT]h9u;Bt()͏1o}YZ j:+םq/W80b6IP 9V;ϗq:pLt:sIoV1ʪ%i '.S=ۣA/F.'JگLPM1Guyk0^+=̦OAT &ݪqVьk>cnmQ~i[ܤp Ma%Дrdϰ&VDX\KSAyat[rb;d^0%IFRB 2 _C]=E \z) ʆ< t)vᖬrHT҂(4( D); 2XHglZ1N-+RۃgNhu źF![AYoX!D Z 6ȟ/'لyy$=:oPa=_Os;zz'NHW9jKV7as•zS[O| ~H&+,;3|6t#B\nsEQqfN0 e(^* H)WFpFX}74}Ѳ¦a~ ;_h9' ֈˬ=wz8p#:G̵Ap.8ڟj8xd,zGl\9\wE7|BWs ũ f 6M.7WHg'7A>Fa" y'zUk1VC|"OWpXR ] { @Ɯ>ЫI1=<Fs>jp Ci9I[f829vsF|;ZU% #h=)]Q>f Q5x6|RGQWl xdQ3 ;txTÁhu-SDH$4oF&lO,bQf^yil͡V )HNF/ a_Awٮy!H폿q3)Hx+" ;f <#` A>^&3AxYӵ0tE՛}dykUh.HH'6'qXcJ,GZJ%J@_t4^^j\ kM@؀FZVϼnI LC).ۋ- ;͝u( i݁N{V4wb(MD5L1U3u'mL{2#Ϊvk^Fw繲]wp_Fu'3)!#4`ADV5}% FZ=g){hVxE$1JZAxҲwy߮ 0pqS&]՜[.M"80-oA#98p1 +[-ZAY!:޾A+I77;꽑CBcxa4|ֆ9aNliPe,D}nGAc;t8"8imuU.Y'/gs9FEP(]rHO2}CmZkK2rOHqhM05IyX'i/XI)k'=" \#ZG8A%Ҍ=daTz`àQLh{B/(-'iiޒ QT/dF"&֠F,Uxn$75:(J!:9,̞g J?XјJnH\DU,|)n:a,2`TeA=87Ri0%d[Tn ''2c/-WnڭY]ѐO\S׼; OxT fḍvM/ #:,Ѵ lA: :cvgIRZڥ!@zRu8H?u5*Bsr*x;lPz#K S w<8/}Hd{A[7?@ NE9'n},=aI ?6)abds213bŲќ1!$mλ 8IL@/7^DVuv?dBg*bJ_Ӧ #e)RRYz mӸ[,LoI B7ICU:2jҤp)yvD"6 Zym1]>ye'K98@ϒv%mkcK7i x ښ}2WYq1!HVzfdMߦ ً+%tSnO7x| U#|p9ռlulbv꿆dQ>" "C< "-^Mw1S@ȹ0#dxaXUȹ+s.]S3,,Xr;\Py08"O-sXxȗ[׳e 01r"86m}!%6$!n%iCoC[, ̟T9= kZT˄BH3Nr`]Ćo>M94@0^Ϧ@?&goI+;JO>b9,4~]q*Ȩ[h;ArŒMF]h<=X)NO_Q/ e䙳m&[E8==U7ɏuq/F|ηoWcKv=Z # :MUx.`=)3 gB+6 5 & u:eTwMAa#DogN )I1_t}odS`. 5j^G*Qu{➥G q޿b|;W*>hb%i2Ba +uS6~'yKO^VG}jNX0>Xkv;$k@l ]?fFu9P뱝 n-l.}wYl<9^kFz"b#? դw#fҽi[Cת*k\;CU?_py%ԭC0Bwbp3WvRm~^b]#hVϽˆT5Df6$1A#;ħ88UUW±,,+6J"f/%{'O DnV 8yKAH 5J9\?g"NUE=it4r6hm?ih  %~aNk'ވ%lB9o(K'!L )M1 F(烮+WV#896p-~T3+n?Qڿ/+E/31Nk%A]u2CێKJЏD&l`@#K&[ݵ<9Yg62ʏEqQwl+93f''Y&i}w!?$ vdUhtV+Wy4\G$VA@@%n|cwJ׮Ke`zs_BFBK⚱8rg0fڣJd<ɕ^cXZ&?с0doa;vNAq'7 WgM_-nZѨ4Y 8v)6jͲ Fh9=#q&??ʑKڙWd!Tg*1`]*|v] uK;RRQ2P_!vOoIbO1J <(gjtIbX#:QrBOQ'?She*ʻ*hSϣTi@=9~S !A׎8<#Y8ěS{M4*qd3 苚u k;n%@0l]eUM)!1ZFFs QM&DYFi[r[ԇn4jbf PkĤ |:xgتT^D4o*uKA-q,jْe;76$ +T2y;UTfY\. ot=ޙDdۙYCdl7gW!C3 ;1*`L#QI:iY# ؅c9 C\3'G%Llzx8i;EŌ 7XG#5Im8 Zygpz<_.'wCnBR C[H.fx"o"!{`au3FA5M<̂h0U@ȹ+Z'OlaOMDt"HZVY(r͏ .pNAͧ\խ23j5IMX@$cļZ[>c{Pyj,@+فboKr|j+̥Eݢ[ߊ*H̺pWsr*Le7DI㎦EǕ/vlN` lMv@Q3a'xЇlfp!P4p$fz-+H7| Y[Hm*[}'X# VD-E7 btYNLEOƏ~W<\?۱G=8o5kr_7:"Od?ޛ+?yq&^2:sLt<0>21'KYb7֍H;ֲtLKZ , pDN/3(PDC\٩,,uouXWӾrmY=<)Hxu(<(%]Dٰ .G2G꾧fI$ig> eO q=yÛo:%*.-FCˊW0" t]w:s z.B+le8LƏ}ӴԢz؏| 4[u os}x[ O=iSIE!I @9jw3]\pO8$9Xzo\bihp?a@pW+4q"tF$`XMзSR[NN0 U";"al^e2e;eE37h;sJՊHXV5L*U+Y\`e|B#D-NR7FWM_tw{ન1alRsx=]yn$69xuw%Г=\hn2!wQ}{ /אX;kd4f_ubgKj/iEdO/ F`o3j]!Q+&"gU}=mU(If@N~&iy*yb:a>QA=_N5i/ؽמjqy_PB&O.aB9 iu|uϣבIݢځn3O;`Rb+dدzUdȾ~^Y>=k%0yXQ[jv#aVkYw-٤5D"P8$Ѭв횈9#U!fm/@ @5BrG?~3edLjk.l'-m$?7—c`.a.%oᶍQ:w97 I%ޣ?7hޫ$wYς@;'A>(Lk gLv^4)-Z5MiDWʢDrbQkX_X7w3KUIhy b]t1.?{%(;Up~ :Ann=+4鲕GF6_6UXKT%@6GN* 'ՍGNdYƏV{)=9;,{Y5RB}5lzDz >: 2gÅNg_NV_- ?MpU-UT26}Y,5Z6fot$}j~Mʳ EcGy@oi{Apz:`ts!YFXhq-~k#0f~Bo&2DH K -pR i?(AAes,D/],jY 9ǐjN٢1<&]R}I9h B8>t%m-ƌlTEpXzz(r{84:M_E)֧O<;-0\h˿ڋ&L몘x'?SE^'<٤Gx65`&_e1VXN~ ԃp=lJV>?flЅGS|A d@R ?Iv9][]2KYY ^piap,.GL<::Vp a0!h9.S7[Sƶվt@OL %\jv`*T:Wyb/,]cd#$|>wz>sdp40"GeYn Q.;rd2HLq982rUgLzh&`|~ Onie{{fqU:9,븣&_[,MRiR/2<7`Й< &/%V +0?X(k>tvÚb2B? gͨ:;ێۙnsˠv$jFh/vņ8HEHC9W7*BQgI0#k`{IY2N|MټM9j!Aweꃾ'ջp|F]ƑG3i8"y4Jts>j@n[LVi@-! T|z }4n3A~od7T酩"p0-•('V`ˇ3z N`ȇ,rMWi?<ƚ U (iШ)b5OTM/<F"XjEQ3#ϪsUuVSg].j~h{Qa%QSW2 y-he=yŘ4XMج& 6nhdX,xy,pE@:qweE,(\mgrZ۟N^Qk(&%O1+Ѕp>@nvϪ~ :: kÏYcdE`Ӥ`4da)/pH l.ջW'ڀv'cһŕ^4Jɬ\/c6Uc#s5]ϜC ^Bn5 M 0.!wXX7}W`}H:/uՈB@V$as }5 q~eDAJ 8͊K.ln3*׹5 qHi:ȴTP27} 8{¿Y^+M0LB+T,w,7oU?Eۘm-'!`^yPCOU:d/7ͪuRqR3zu0Ge]$ d"6Z>#gfDZɦR:hʅِoaIf@_g6?ʂG~YZ,<n 9@ 9g+Pۓ09j2!i<(5֞zJ6#1;v` ,x/Pc&1AL,LF3v ]|/ތaA X[ʳ}c%>ƥ i,6m0c'M}mƧAmc"%rau'<zuXVU)E4x%7P~nq@O ZYn}vJk"s<i~IfOl&Z x׶.1 ǜřl' AG5j^hq]Ay): ҎVMA]$PBF#*ASXаFlQewr4Y Sp)ƽd{$B| _ȧ…Zcld W)hf;og/Ng:K۝xF"l1ruϩlÃ0;#J R@.UJ2TU4kCwɕЃD\ &!' \+~WMJ"vI6k~DuPjMd$Ѣz"d6A"ؠXpٺ?$H o6gv-kYO˜]<(()TT!QwEOG osQѼ eZXn$x=ߐkE*YyUl#y|b((k-w!Zn Oi#&v1S@b/]DW(s-9RJ Ԛ#85T/kOɂ<)7]Lx4fN'Șa5& L~Un?n\)>ULLc+wOK~X_mBʺ+[IȅRQUtDljB3B }\ c-GI+um-G,#~Oo֥ehU*ՙIbt0麁P(+ZagE|b GarM^&2p7Jρ#UVc+aAPAN*\-YϾA @@\"_C0PԀ}9s4"{١:! GI#6<Ȃnp8#E9r&}bF oSi1]YI.tB:Cplу5Elx>@ 5${% A7Wni⊹w}L<6u6VP=L֢Eh% [ynW -Ax`DOtbԖ~2}-A9wHRN<۸[T䓥$8 kC~@QDV2j`G𜇏Vh@eשr9(Zm@ s!YSx{AD[pDVALSC@Z QdZPxBufj*p0ެR+9svma] [.8k7믕-q24^lk^zv|#4`Z9`oPƄL꤉^=[bգ_]t+g5#jK]T|ddBAf b%xVRcV1#>$"F%bsQqegaY- ?!jPl#$5ޓ:EOf!Q%siԷ)x1oqZځv3{ɮ|/nX:U5jY~3,Z[D1gD t׷8}ghלdIe`!c SL^\g\:>F3.8듇sU^{L9$̊:p49Zgt:}/e'fG3*E]W6fvKny\mVؽ ù0Em:sVGO ~Hu2"2_OA$:p8 0bVo'[1?ThjSNqE g19먻?c{KG/VхIoOOMK)ME8˝@:XCA -+ahq .akrg7V&$@ a576 2r-5Aӯeetr.9Q4q/!^&L23\Xl"MbfxQ^Mʂʁ)1řG=aVY!PZt ɍgF!^m0_om@:G=n' м&Sf!l8LFy*A4š$>׵H'&D( 鬽c:3)AkHbgħ+| ʄh0F,iRʥ^/EwLf@VD0C9kMr k A>y50z:\xf@U.j>^/lr^6ܰRo,ZI5Z M]\:#Ǭ*3p :SKAZpUx`/lOԫX>;չPPg 3*isi姸rJT$ 'YˉYc3)c3Ӟbಾj1՝@'r:,Olrhy.oYo(;WeM:o)JЙnkX?~A#6&Y;~nAz #A Vaa3ք͊f غݑw)`^"2$\,/7wg @ م1s㪔}g*MLѝdrX0699@2_lFan-m:_Gͳ-m j>pYjwą3=, hU^\ON}P5J87]3#3xztHYD, Wĥ=#;I>D$٨.Zm)% *lg5E\c3eLAN#H6ۚf:ՖJ\?sZ19(bJ,-ߡ[ybDCo,|jBkxZ~V2U, }&. $Z7M~xɒT @Z]Gi`L1ٳ>al pV,E 0F6 P5#7"m# Iu EEtF@>aWCj{$j?"j P4_̈́7 c+& '͉39)꺳Gp&sv:w` ^51<#=V\I47aO ˆ=qn]®oWȱ/]rGU+οӮ9g[LTˆK -v2fW TJa0ȿKԬbC@S !k@YoJo#ڷOgx\Is&UEjH;iyWFB!LK6 Nes%Gu !,;?#P4%{,FZ`vuC-Hk6-bݦЦReg9Ο*RAJW2x3hgŅa %"cs7kl@IflYr5q?0n(=ױն]_l;3Bk @ЃpT>tՃ"^:{u1{:{o-!)=%4Ҍn["_,:2K\>t>?z;y]kQYҩcVw*.i66OwI%`& 7W5MѐwE2OUYe(.>R>i[n1)!E`yڨAWΜUug kʀ{ۙǢlTqQǝV'`j ]TPVl+rv ՊHޙ8xxo5YU*,6MG{ R*nͧz &uJ8|Zlrno*wf!Aȳ"<;k%K5e'iyEX=~ak-3"w DI#"Eؤ9UDK֚G)Z|B^q2eYYIk);Ni(l<vudm$p,㏚Odރ\P01iQKCq.v7or/DWJRYXZ6b?!!zJ;j\ht@E } IĂ ~KU4E%A8"#΋/d/C "HI䗝U澜+MF;7Sg˲8H#kH$JM2qaU34AlŌRl()w!/w6RPVVlHmX⌌17;e왵DG_TUQ\CFn5\X]hʙL5 YiLjQpW?烈Å_MB} Il^wRF^BB%)G9KT@=buG00;Lpi<\OJPZ\CΡ܅$2hCbxtˆT+SY ՋTx{ɛ}YE>GNݯN3-`Kg=tR>_!h`"A!!:Ik5p04 񟠶T5U+Ѵº أJ%?aC l+zC4ذxX dTKIp#<}/4&#)UʑR7NSʭբ^q7gbJno\xoӷϢtף\ߦ8'$WF(4£hӰhԔuzP[/Do [7P>Fѻ& ޻gUO.\ XRNWrj={`pTi2kB2:v -d$iн^!+Z%ɻ;1լ%!a݃͐&ñ*ɧ&dbaYaczv%k@>@$mҗIJa7V޽#萔))5+eIXs6q>zwg@ 5+MpzEq9BB(&mbSBW('ʓ]xgi$`Nb7XC?G9É*6_ Pm.+3 XŊt*l1e3N0TfwC6{L/B}uDN}'Nr{-'ـ֔jOגP3%~zJ43LEN)5z*J{_No2`wT8wGD 4ZTO6|6?g$H={? ,..)>zs(g=lԄZrX0r=ZbKJTWX+Ѫuͫ,/ȚSNj\j^goݐgxe2 XCMnV 2𭃈bDl^3C60wt_itX:u?~'Pg s (;Mut KdEi8^l;/Ia )KAe9B=ĖpcW]͂AHI پv? ntO]tvɭ񛩑Fʿ>c!,7&˿up>)raJk=S; Na*\rw׫{W "ήA%TL*3f!ۍ~@X 2SR}2IzX KLy~[Mރ3Չe;p=^-|뢠sΣ.bS2x?މ`q{#k@pȤvp",5軟kΗ+b ș S%NҮ+dmEw :=E~;c}žrsLI 7>'S*s=:CRlGs+V娬)\Un9(j%6zM+;kYXJ?.G&=]'I׆4KV:QQp3 lrڟdM[GpMf=arkl8{J6ׄ!lʵn-+# <$5F'tfJ/D4;bd9q%rj眬g <#>gwL1` SH nO;mYOi#Q1tuj"u 1;ōR֏ߐڃUh\*s!zL6Rr#E朄3۱M$v~/'1cƊ>ͱ+}z4+:1g4+UL=YZ1A@ ZДZ^C(Z54wc@#C08 ]! ӊriFPER.(OQe)J]=XSݛPxfp!|;=냈_ί:lrj7LɉhlAuUΑ0`=B÷9h`<ɴz991ԣNచiwK;Oթ& Qu{{XnJh27~pY_otL- æjiOA*0'⺯oM-Rr!ƔȨoo&߁M554qZ\fD-w"ffYSN'*ksgAk7(LjO"$dO3:p͂=%P[jt9,%v鏍4|=Ti`%%[[݊7w;k6Ir7lHW]H  hƨT6mW[ŒuO 0F⼹Pܹp2YuK!Pv:-W$2Oő&Gٯ= x&~J1tODrv 򂈏ZvOQ4v "y~֟Jr蜝f6kzݖ8 `BumzZfS}uWb& Wmۡ W/#Q+3Tم&'C4֌g͝~Ko=y&ȐeO<*xnH5-glᝩS_C8 fud0BqhGVגH؛dQ91Zl }#GF͝9V Ha~:ud'M͛fP-]cT[ ]$@Yi\W<'3ߒ 3cQ{(ե*3@X=qC8,/UQn Y_PE|9~xOhs aպ*a U=—Z(~+{e-!/gЧn8ʲ'ك7kּݟ%_n]GJ2aلNKk ?vqĜњ^<] f"G5m@B ݏh2@S-`2C8WԱpmNtZ!s<ѵ .PS)κ;\{E$x ~7bv)=&FRf)֎#}T|'=|W  x'<f&q2Li>i j4)}VO8jy8d%Ia?GI llyR8W;هZ!2m=:31~|B`SCY~V\>s9<3YSQ07z,8\;=s2 ژ-ʬ#>eMIB0Sh7J(.Miv*t*ho81 n4,_aA9.끎Cew%}Q<zJ@ViKEZov~yY*dݦu:hg%;ωGNW ŦӃQuC5N _շOw݄LZ'H_#w8_Sˈe@66R+^e|).:gl&}Lg~WG}4OC-搳ߑ{O6^ߐ8WkV$Ʃ\4v]˅$/~L@61]}`^?Yh$ u=0N%BWX"D9?:B̟l [\ibTe:bAP0JVXgGb~X~K>Y>TX7ӱ nƠG6 ;k[.:~^YNAݫ'- >NDmW<]ȭ Lag'7z2!*=N!]#OֽJop˯~)Gc\Pڬe W_E"bUM4rKoQh&!΀xrKVr0ĞΉاVK&1ŧpM\'QSm1ȴeכIhpÑO8#0v+>Dm~83ZC김[R#OenrMJMC^ !cH(T6K)׆R.f2Ύ6!\xvkyv1a+XbѠ+ދ((\4&*b dɫGoܦ9&f#'OM巪ai' *$l$8@{1\uLN烪|Ӌ;Zviwq8*MfX?LNz!f<ݣIs2ৢQ+ei?sȜݣ4_ MɻMB/{F6Tɑ?9۝-=bj#1