From bc0cb0bc8acf346fe7e241ffd65cddb6c338d099 Mon Sep 17 00:00:00 2001 From: yalh76 Date: Fri, 8 Apr 2022 03:47:14 +0200 Subject: [PATCH 01/26] First implementation --- .gitignore | 2 - LICENSE | 184 ++++- README.md | 39 +- README_fr.md | 46 +- check_process | 5 - conf/app.src | 4 +- conf/caldav.ini | 12 + conf/configEnv.json.sample | 3 + conf/development.ini.sample | 1101 ++++++++++++++++++++++++++++ conf/nginx.conf | 71 +- conf/php-fpm.conf | 430 ----------- conf/supervisord.conf | 42 ++ conf/systemd.service | 45 -- conf/web.ini | 15 + conf/webdav.ini | 12 + config_panel.toml.example | 295 -------- manifest.json | 32 +- scripts/_common.sh | 10 +- scripts/backup | 37 +- scripts/change_url | 16 +- scripts/config | 102 --- scripts/install | 353 +++------ scripts/remove | 78 +- scripts/restore | 82 +-- scripts/upgrade | 100 +-- scripts/ynh_supervisor | 167 +++++ sources/extra_files/app/.gitignore | 2 - sources/patches/.gitignore | 2 - 28 files changed, 1860 insertions(+), 1427 deletions(-) delete mode 100644 .gitignore create mode 100644 conf/caldav.ini create mode 100644 conf/configEnv.json.sample create mode 100644 conf/development.ini.sample delete mode 100644 conf/php-fpm.conf create mode 100644 conf/supervisord.conf delete mode 100644 conf/systemd.service create mode 100644 conf/web.ini create mode 100644 conf/webdav.ini delete mode 100644 config_panel.toml.example delete mode 100644 scripts/config create mode 100644 scripts/ynh_supervisor delete mode 100644 sources/extra_files/app/.gitignore delete mode 100644 sources/patches/.gitignore diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 783a4ae..0000000 --- a/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -*~ -*.sw[op] diff --git a/LICENSE b/LICENSE index 7d1e40b..f54dee1 100644 --- a/LICENSE +++ b/LICENSE @@ -1,4 +1,182 @@ -File containing the license of your package. -More information here: -https://yunohost.org/packaging_apps_guidelines#yep-1-3 + +GNU AFFERO GENERAL PUBLIC LICENSE +Version 3, 19 November 2007 + +Copyright (C) 2007 Free Software Foundation, Inc. + +Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. + +Preamble + +The GNU Affero General Public License is a free, copyleft license for software and other kinds of works, specifically designed to ensure cooperation with the community in the case of network server software. + +The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, our General Public Licenses are intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. + +When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. + +Developers that use our General Public Licenses protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License which gives you legal permission to copy, distribute and/or modify the software. + +A secondary benefit of defending all users' freedom is that improvements made in alternate versions of the program, if they receive widespread use, become available for other developers to incorporate. Many developers of free software are heartened and encouraged by the resulting cooperation. However, in the case of software used on network servers, this result may fail to come about. The GNU General Public License permits making a modified version and letting the public access it on a server without ever releasing its source code to the public. + +The GNU Affero General Public License is designed specifically to ensure that, in such cases, the modified source code becomes available to the community. It requires the operator of a network server to provide the source code of the modified version running there to the users of that server. Therefore, public use of a modified version, on a publicly accessible server, gives the public access to the source code of the modified version. + +An older license, called the Affero General Public License and published by Affero, was designed to accomplish similar goals. This is a different license, not a version of the Affero GPL, but Affero has released a new version of the Affero GPL which permits relicensing under this license. + +The precise terms and conditions for copying, distribution and modification follow. + +TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU Affero General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this License. Each licensee is addressed as "you". "Licensees" and "recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a "modified version" of the earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based on the Program. + + To "propagate" a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. + 1. Source Code. + The "source code" for a work means the preferred form of the work for making modifications to it. "Object code" means any non-source form of a work. + + A "Standard Interface" means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A "Major Component", in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those + subprograms and other parts of the work. + + The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. + + The Corresponding Source for a work in source code form is that same work. + 2. Basic Permissions. + All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. + + When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. + 4. Conveying Verbatim Copies. + You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. + 5. Conveying Modified Source Versions. + You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: + a) The work must carry prominent notices stating that you modified it, and giving a relevant date. + b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to "keep intact all notices". + c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. + d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. + + A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an "aggregate" if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. + 6. Conveying Non-Source Forms. + You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: + a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. + b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. + c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. + d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. + e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, "normally used" refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. + + If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). + + The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. + 7. Additional Terms. + "Additional permissions" are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: + a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or + b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or + c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or + d) Limiting the use for publicity purposes of names of licensors or authors of the material; or + e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or + f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. + + All other non-permissive additional terms are considered "further restrictions" within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. + 8. Termination. + + You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). + + However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. + + Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, "control" includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To "grant" such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. + + If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent + license to downstream recipients. "Knowingly relying" means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. + + A patent license is "discriminatory" if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may + not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. + 13. Remote Network Interaction; Use with the GNU General Public License. + + Notwithstanding any other provision of this License, if you modify the Program, your modified version must prominently offer all users interacting with it remotely through a computer network (if your version supports such interaction) an opportunity to receive the Corresponding Source of your version by providing access to the Corresponding Source from a network server at no charge, through some standard or customary means of facilitating copying of software. This Corresponding Source shall include the Corresponding Source for any work covered by version 3 of the GNU General Public License that is incorporated pursuant to the following paragraph. + + Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the work with which it is combined will remain governed by version 3 of the GNU General Public License. + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of the GNU Affero General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. + + Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU Affero General Public License "or any later version" applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU Affero General Public License, you may choose any version ever published by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future versions of the GNU Affero General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. + + Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. diff --git a/README.md b/README.md index 565d57e..a6f7f9f 100644 --- a/README.md +++ b/README.md @@ -1,14 +1,3 @@ -# Packaging your an app, starting from this example - -- Copy this app before working on it, using the ['Use this template'](https://github.com/YunoHost/example_ynh/generate) button on the Github repo. -- Edit the `manifest.json` with app specific info. -- Edit the `install`, `upgrade`, `remove`, `backup`, and `restore` scripts, and any relevant conf files in `conf/`. - - Using the [script helpers documentation.](https://yunohost.org/packaging_apps_helpers) -- Add a `LICENSE` file for the package. -- Edit `doc/DISCLAIMER*.md` -- The `README.md` files are to be automatically generated by https://github.com/YunoHost/apps/tree/master/tools/README-generator - ---- -# Example app for YunoHost +# Tracim for YunoHost -[![Integration level](https://dash.yunohost.org/integration/example.svg)](https://dash.yunohost.org/appci/app/example) ![](https://ci-apps.yunohost.org/ci/badges/example.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/example.maintain.svg) -[![Install example with YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=example) +[![Integration level](https://dash.yunohost.org/integration/tracim.svg)](https://dash.yunohost.org/appci/app/tracim) ![](https://ci-apps.yunohost.org/ci/badges/tracim.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/tracim.maintain.svg) +[![Install Tracim with YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=tracim) *[Lire ce readme en français.](./README_fr.md)* -> *This package allows you to install example quickly and simply on a YunoHost server. +> *This package allows you to install Tracim quickly and simply on a YunoHost server. If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/install) to learn how to install it.* ## Overview -Explain in *a few (10~15) words* the purpose of the app or what it actually does (it is meant to give a rough idea to users browsing a catalog of 100+ apps) +Some long and extensive description of what the app is and does, lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. -**Shipped version:** 1.0~ynh1 +### Features -**Demo:** https://demo.example.com +- Ut enim ad minim veniam, quis nostrud exercitation ullamco ; +- Laboris nisi ut aliquip ex ea commodo consequat ; +- Duis aute irure dolor in reprehenderit in voluptate ; +- Velit esse cillum dolore eu fugiat nulla pariatur ; +- Excepteur sint occaecat cupidatat non proident, sunt in culpa." +**Shipped version:** 4.1.3~ynh1 + +**Demo:** https://www.algoo.fr/fr/tracim/demo + ## Screenshots - - ![](./doc/screenshots/example.jpg) - - - +![](./doc/screenshots/example.jpg) ## Disclaimers / important information @@ -45,26 +49,23 @@ Explain in *a few (10~15) words* the purpose of the app or what it actually does * upgrade process / specificities / things to be aware of ? * security considerations ? - - ## Documentation and resources -* Official app website: https://example.com -* Official user documentation: https://yunohost.org/apps -* Official admin documentation: https://yunohost.org/packaging_apps -* Upstream app code repository: https://some.forge.com/example/example -* YunoHost documentation for this app: https://yunohost.org/app_example -* Report a bug: https://github.com/YunoHost-Apps/example_ynh/issues +* Official app website: https://www.tracim.fr +* Official admin documentation: https://public-community.tracim.fr/ui/workspaces/143/contents +* Upstream app code repository: https://github.com/tracim/tracim +* YunoHost documentation for this app: https://yunohost.org/app_tracim +* Report a bug: https://github.com/YunoHost-Apps/tracim_ynh/issues ## Developer info -Please send your pull request to the [testing branch](https://github.com/YunoHost-Apps/example_ynh/tree/testing). +Please send your pull request to the [testing branch](https://github.com/YunoHost-Apps/tracim_ynh/tree/testing). To try the testing branch, please proceed like that. ``` -sudo yunohost app install https://github.com/YunoHost-Apps/example_ynh/tree/testing --debug +sudo yunohost app install https://github.com/YunoHost-Apps/tracim_ynh/tree/testing --debug or -sudo yunohost app upgrade example -u https://github.com/YunoHost-Apps/example_ynh/tree/testing --debug +sudo yunohost app upgrade tracim -u https://github.com/YunoHost-Apps/tracim_ynh/tree/testing --debug ``` -**More info regarding app packaging:** https://yunohost.org/packaging_apps +**More info regarding app packaging:** https://yunohost.org/packaging_apps \ No newline at end of file diff --git a/README_fr.md b/README_fr.md index d856bf9..feb78cd 100644 --- a/README_fr.md +++ b/README_fr.md @@ -1,30 +1,34 @@ -# Example app pour YunoHost +# Tracim pour YunoHost -[![Niveau d'intégration](https://dash.yunohost.org/integration/example.svg)](https://dash.yunohost.org/appci/app/example) ![](https://ci-apps.yunohost.org/ci/badges/example.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/example.maintain.svg) -[![Installer example avec YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=example) +[![Niveau d'intégration](https://dash.yunohost.org/integration/tracim.svg)](https://dash.yunohost.org/appci/app/tracim) ![](https://ci-apps.yunohost.org/ci/badges/tracim.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/tracim.maintain.svg) +[![Installer Tracim avec YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=tracim) *[Read this readme in english.](./README.md)* *[Lire ce readme en français.](./README_fr.md)* -> *This package allows you to install example quickly and simply on a YunoHost server. -If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/install) to learn how to install it.* +> *Ce package vous permet d'installer Tracim rapidement et simplement sur un serveur YunoHost. +Si vous n'avez pas YunoHost, regardez [ici](https://yunohost.org/#/install) pour savoir comment l'installer et en profiter.* ## Vue d'ensemble -Expliquez en *quelques* (10~15) mots l'utilité de l'app ou ce qu'elle fait (l'objectif est de donner une idée grossière pour des utilisateurs qui naviguent dans un catalogue de 100+ apps) +Some long and extensive description of what the app is and does, lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. -**Version incluse:** 1.0~ynh1 +### Features -**Démo:** https://demo.example.com +- Ut enim ad minim veniam, quis nostrud exercitation ullamco ; +- Laboris nisi ut aliquip ex ea commodo consequat ; +- Duis aute irure dolor in reprehenderit in voluptate ; +- Velit esse cillum dolore eu fugiat nulla pariatur ; +- Excepteur sint occaecat cupidatat non proident, sunt in culpa." +**Version incluse :** 4.1.3~ynh1 + +**Démo :** https://www.algoo.fr/fr/tracim/demo + ## Captures d'écran - - ![](./doc/screenshots/example.jpg) - - - +![](./doc/screenshots/example.jpg) ## Avertissements / informations importantes @@ -41,26 +45,23 @@ Expliquez en *quelques* (10~15) mots l'utilité de l'app ou ce qu'elle fait (l'o * upgrade process / specificities / things to be aware of ? * security considerations ? - - ## Documentations et ressources -* Site official de l'app : https://example.com -* Documentation officielle utilisateur: https://yunohost.org/apps -* Documentation officielle de l'admin: https://yunohost.org/packaging_apps -* Dépôt de code officiel de l'app: https://some.forge.com/example/example -* Documentation YunoHost pour cette app: https://yunohost.org/app_example -* Signaler un bug: https://github.com/YunoHost-Apps/example_ynh/issues +* Site officiel de l'app : https://www.tracim.fr +* Documentation officielle de l'admin : https://public-community.tracim.fr/ui/workspaces/143/contents +* Dépôt de code officiel de l'app : https://github.com/tracim/tracim +* Documentation YunoHost pour cette app : https://yunohost.org/app_tracim +* Signaler un bug : https://github.com/YunoHost-Apps/tracim_ynh/issues ## Informations pour les développeurs -Merci de faire vos pull request sur la [branche testing](https://github.com/YunoHost-Apps/example_ynh/tree/testing). +Merci de faire vos pull request sur la [branche testing](https://github.com/YunoHost-Apps/tracim_ynh/tree/testing). Pour essayer la branche testing, procédez comme suit. ``` -sudo yunohost app install https://github.com/YunoHost-Apps/example_ynh/tree/testing --debug -or -sudo yunohost app upgrade example -u https://github.com/YunoHost-Apps/example_ynh/tree/testing --debug +sudo yunohost app install https://github.com/YunoHost-Apps/tracim_ynh/tree/testing --debug +ou +sudo yunohost app upgrade tracim -u https://github.com/YunoHost-Apps/tracim_ynh/tree/testing --debug ``` -**Plus d'infos sur le packaging d'applications:** https://yunohost.org/packaging_apps \ No newline at end of file +**Plus d'infos sur le packaging d'applications :** https://yunohost.org/packaging_apps \ No newline at end of file From b0697ca90730c39654685c4c4767615793c556d6 Mon Sep 17 00:00:00 2001 From: yalh76 Date: Mon, 11 Apr 2022 15:05:02 +0200 Subject: [PATCH 03/26] Update development.ini.sample --- conf/development.ini.sample | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/conf/development.ini.sample b/conf/development.ini.sample index 0c5939b..c42a41a 100644 --- a/conf/development.ini.sample +++ b/conf/development.ini.sample @@ -348,7 +348,7 @@ api.key = %(basic_setup.api_key)s ## Auth type list (internal or ldap), can be a list of item separated by ',' ## and ordered by priority ## auth_type 'remote' is not allowed there, set remote_auth_header. -auth_types = ldap +auth_types = internal,ldap # If auth_type is ldap, uncomment following ldap_* parameters ## LDAP server address ldap_url = ldap://127.0.0.1:389 @@ -477,8 +477,8 @@ website.usage_conditions = # webdav url for client # url can be extended like localhost/webdav by setting webdav.root_path parameter # in this case, you have to create your own proxy behind this url. -; webdav.base_url = http://localhost:3030 -; webdav.ui.enabled = True +webdav.base_url = %(website.base_url)s +webdav.ui.enabled = True ### Notifications ### # Comma-separated events listed in this setting are not displayed in recent activities and notifications to the user. @@ -538,7 +538,7 @@ website.usage_conditions = email.notification.smtp.server = localhost email.notification.smtp.port = 25 -; email.notification.smtp.user = +; email.notification.smtp.user =__APP__@__DOMAIN__ ; email.notification.smtp.password = # configuration example: # email.notification.smtp.server = your_smtp_server @@ -688,7 +688,7 @@ webdav.listen = localhost:3030 ## default root of webdav service ## this params need to be modified in case of using webdav with proxy ## if you want for example that path /webdav give access to webdav -; webdav.root_path = / +webdav.root_path = /webdav ### Technical Webdav configuration ### ## wsgidav block size in bytes From eddeaf2227d599a921749b795cb5b1f720204f83 Mon Sep 17 00:00:00 2001 From: yalh76 Date: Mon, 11 Apr 2022 16:00:33 +0200 Subject: [PATCH 04/26] More implementation --- check_process | 10 +---- conf/nginx.conf | 6 --- manifest.json | 10 +---- scripts/backup | 24 +++++----- scripts/change_url | 33 +++++++++++--- scripts/install | 53 +++++++++-------------- scripts/remove | 44 +++++++------------ scripts/restore | 36 +++++++++------ scripts/upgrade | 106 +++++++++++++++++++++++++++++++++++---------- 9 files changed, 180 insertions(+), 142 deletions(-) diff --git a/check_process b/check_process index da70422..42b7020 100644 --- a/check_process +++ b/check_process @@ -1,21 +1,19 @@ ;; Test complet ; Manifest domain="domain.tld" - path="/path" is_public=1 language="fr" admin="john" password="1Strong-Password" - port="666" ; Checks pkg_linter=1 - setup_sub_dir=1 + setup_sub_dir=0 setup_root=1 setup_nourl=0 setup_private=1 setup_public=1 upgrade=1 - upgrade=1 from_commit=CommitHash + #upgrade=1 from_commit=CommitHash backup_restore=1 multi_instance=1 port_already_use=0 @@ -23,7 +21,3 @@ ;;; Options Email= Notification=none -;;; Upgrade options - ; commit=CommitHash - name=Name and date of the commit. - manifest_arg=domain=DOMAIN&path=PATH&is_public=1&language=fr&admin=USER&password=pass&port=666& diff --git a/conf/nginx.conf b/conf/nginx.conf index e4af803..20f3b08 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -24,9 +24,6 @@ location __PATH__/assets { # Path to source alias __FINALPATH__/frontend/dist/assets ; - # Common parameter to increase upload size limit in conjunction with dedicated php-fpm file - #client_max_body_size 50M; - try_files $uri $uri/; } @@ -35,9 +32,6 @@ location __PATH__/app { # Path to source alias __FINALPATH__/frontend/dist/app ; - # Common parameter to increase upload size limit in conjunction with dedicated php-fpm file - #client_max_body_size 50M; - try_files $uri $uri/; } diff --git a/manifest.json b/manifest.json index bc7aa48..18de9f2 100644 --- a/manifest.json +++ b/manifest.json @@ -24,9 +24,7 @@ }, "multi_instance": true, "services": [ - "nginx", - "php7.3-fpm", - "mysql" + "nginx" ], "arguments": { "install": [ @@ -34,12 +32,6 @@ "name": "domain", "type": "domain" }, - { - "name": "path", - "type": "path", - "example": "/example", - "default": "/example" - }, { "name": "is_public", "type": "boolean", diff --git a/scripts/backup b/scripts/backup index 2d4981d..b3f2b18 100755 --- a/scripts/backup +++ b/scripts/backup @@ -30,7 +30,6 @@ app=$YNH_APP_INSTANCE_NAME final_path=$(ynh_app_setting_get --app=$app --key=final_path) domain=$(ynh_app_setting_get --app=$app --key=domain) db_name=$(ynh_app_setting_get --app=$app --key=db_name) -phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) datadir=$(ynh_app_setting_get --app=$app --key=datadir) #================================================= @@ -55,25 +54,22 @@ ynh_backup --src_path="$datadir" --is_big #================================================= ynh_backup --src_path="/etc/nginx/conf.d/$domain.d/$app.conf" -"/etc/uwsgi/apps-available/$app-web.ini" -"/etc/uwsgi/apps-available/$app-web.ini" -"/etc/uwsgi/apps-available/$app-web.ini" - #================================================= # SPECIFIC BACKUP +#================================================= +# BACKUP LOGROTATE +#================================================= + +ynh_backup --src_path="/etc/logrotate.d/$app" + #================================================= # BACKUP SYSTEMD #================================================= -ynh_backup --src_path="/etc/systemd/system/$app.service" - -#================================================= -# BACKUP VARIOUS FILES -#================================================= - -ynh_backup --src_path="/etc/cron.d/$app" - -ynh_backup --src_path="/etc/$app/" +ynh_backup --src_path="/etc/uwsgi/apps-available/$app-web.ini" +ynh_backup --src_path="/etc/uwsgi/apps-available/$app-webdav.ini" +ynh_backup --src_path="/etc/uwsgi/apps-available/$app-caldav.ini" +ynh_backup --src_path="/etc/supervisor/conf.d/$app.conf" #================================================= # BACKUP THE POSTGRESQL DATABASE diff --git a/scripts/change_url b/scripts/change_url index bb9d67a..1895aa0 100644 --- a/scripts/change_url +++ b/scripts/change_url @@ -7,6 +7,7 @@ #================================================= source _common.sh +source ynh_supervisor source /usr/share/yunohost/helpers #================================================= @@ -17,7 +18,7 @@ old_domain=$YNH_APP_OLD_DOMAIN old_path=$YNH_APP_OLD_PATH new_domain=$YNH_APP_NEW_DOMAIN -new_path=$YNH_APP_NEW_PATH +new_path="/" app=$YNH_APP_INSTANCE_NAME @@ -30,9 +31,14 @@ ynh_script_progression --message="Loading installation settings..." final_path=$(ynh_app_setting_get --app=$app --key=final_path) # Add settings here as needed by your application -#db_name=$(ynh_app_setting_get --app=$app --key=db_name) -#db_user=$db_name -#db_pwd=$(ynh_app_setting_get --app=$app --key=db_pwd) +language=$(ynh_app_setting_get --app=$app --key=language) +admin=$(ynh_app_setting_get --app=$app --key=admin) +db_name=$(ynh_app_setting_get --app=$app --key=db_name) +db_user=$db_name +db_pwd=$(ynh_app_setting_get --app=$app --key=psqlpwd) +api_key=$(ynh_app_setting_get --app=$app --key=api_key) +session_secret=$(ynh_app_setting_get --app=$app --key=session_secret) +website_title=$(ynh_app_setting_get --app=$app --key=website_title) #================================================= # BACKUP BEFORE CHANGE URL THEN ACTIVE TRAP @@ -75,7 +81,7 @@ fi #================================================= ynh_script_progression --message="Stopping a systemd service..." -ynh_systemd_action --service_name=$app --action="stop" --log_path="/var/log/$app/$app.log" +ynh_supervisor_action --service_name=$app --action="stop" --log_path="/var/log/supervisor/supervisord.log" #--line_match="line to match" #================================================= # MODIFY URL IN NGINX CONF @@ -109,8 +115,20 @@ fi #================================================= # SPECIFIC MODIFICATIONS #================================================= -# ... +# UPDATE A CONFIG FILE #================================================= +ynh_script_progression --message="Updating a configuration file..." + +domain=$new_domain +path_url=$new_path + +ynh_add_config --template="../conf/development.ini.sample" --destination="$final_path/backend/development.ini" +chmod 400 "$final_path/backend/development.ini" +chown $app:$app "$final_path/backend/development.ini" + +ynh_add_config --template="../conf/configEnv.json.sample" --destination="$final_path/frontend/configEnv.json" +chmod 400 "$final_path/frontend/configEnv.json" +chown $app:$app "$final_path/frontend/configEnv.json" #================================================= # GENERIC FINALISATION @@ -120,7 +138,8 @@ fi ynh_script_progression --message="Starting a systemd service..." # Start a systemd service -ynh_systemd_action --service_name=$app --action="start" --log_path="/var/log/$app/$app.log" +ynh_systemd_action --service_name="uwsgi" --action="restart" --log_path="/var/log/uwsgi/$app/$app.log" +ynh_supervisor_action --service_name="$app" --action="restart" --log_path="/var/log/supervisor/supervisord.log" #--line_match="line to match" #================================================= # RELOAD NGINX diff --git a/scripts/install b/scripts/install index 6faf19c..8c3a656 100755 --- a/scripts/install +++ b/scripts/install @@ -25,7 +25,7 @@ ynh_abort_if_errors #================================================= domain=$YNH_APP_ARG_DOMAIN -path_url=$YNH_APP_ARG_PATH +path_url="/" is_public=$YNH_APP_ARG_IS_PUBLIC language=$YNH_APP_ARG_LANGUAGE admin=$YNH_APP_ARG_ADMIN @@ -36,6 +36,7 @@ app=$YNH_APP_INSTANCE_NAME api_key=$(ynh_string_random --length=8) session_secret=$(ynh_string_random --length=8) website_title="YunoHost Tracim" +admin_mail=$(ynh_user_get_info --username=$admin --key=mail) #================================================= # CHECK IF THE APP CAN BE INSTALLED WITH THESE ARGS @@ -146,36 +147,13 @@ chown -R $app:www-data "$datadir" ynh_script_progression --message="Adding a configuration file..." ynh_add_config --template="../conf/development.ini.sample" --destination="$final_path/backend/development.ini" - chmod 400 "$final_path/backend/development.ini" chown $app:$app "$final_path/backend/development.ini" ynh_add_config --template="../conf/configEnv.json.sample" --destination="$final_path/frontend/configEnv.json" - chmod 400 "$final_path/frontend/configEnv.json" chown $app:$app "$final_path/frontend/configEnv.json" -ynh_add_config --template="../conf/web.ini" --destination="/etc/uwsgi/apps-available/$app-web.ini" - -chmod 400 "/etc/uwsgi/apps-available/$app-web.ini" -chown $app:$app "/etc/uwsgi/apps-available/$app-web.ini" - -ln -s /etc/uwsgi/apps-available/$app-web.ini /etc/uwsgi/apps-enabled/$app-web.ini - -ynh_add_config --template="../conf/webdav.ini" --destination="/etc/uwsgi/apps-available/$app-webdav.ini" - -chmod 400 "/etc/uwsgi/apps-available/$app-webdav.ini" -chown $app:$app "/etc/uwsgi/apps-available/$app-webdav.ini" - -ln -s /etc/uwsgi/apps-available/$app-webdav.ini /etc/uwsgi/apps-enabled/$app-webdav.ini - -ynh_add_config --template="../conf/caldav.ini" --destination="/etc/uwsgi/apps-available/$app-caldav.ini" - -chmod 400 "/etc/uwsgi/apps-available/$app-caldav.ini" -chown $app:$app "/etc/uwsgi/apps-available/$app-caldav.ini" - -ln -s /etc/uwsgi/apps-available/$app-caldav.ini /etc/uwsgi/apps-enabled/$app-caldav.ini - #================================================= # BUILD APP #================================================= @@ -196,6 +174,8 @@ pushd "$final_path/backend" pip install -e "." mkdir sessions_data sessions_lock previews tracimcli db init + tracimcli user create -e $admin_mail -u $admin --lang $language -p $password --profile administrators + tracimcli user delete -l admin@admin.admin set +u; deactivate set -u; @@ -222,9 +202,21 @@ ynh_script_progression --message="Configuring a systemd service..." # Create a dedicated systemd config ynh_add_supervisor_config --service="$app" --template="supervisord.conf" -#ynh_add_uwsgi_service --service="$app" --template="uwsgi.ini" -#ynh_add_uwsgi_service --service="$app-webdav" --template="webdav.ini" -#ynh_add_uwsgi_service --service="$app-caldav" --template="caldav.ini" + +ynh_add_config --template="../conf/web.ini" --destination="/etc/uwsgi/apps-available/$app-web.ini" +chmod 400 "/etc/uwsgi/apps-available/$app-web.ini" +chown $app:$app "/etc/uwsgi/apps-available/$app-web.ini" +ln -sf /etc/uwsgi/apps-available/$app-web.ini /etc/uwsgi/apps-enabled/$app-web.ini + +ynh_add_config --template="../conf/webdav.ini" --destination="/etc/uwsgi/apps-available/$app-webdav.ini" +chmod 400 "/etc/uwsgi/apps-available/$app-webdav.ini" +chown $app:$app "/etc/uwsgi/apps-available/$app-webdav.ini" +ln -sf /etc/uwsgi/apps-available/$app-webdav.ini /etc/uwsgi/apps-enabled/$app-webdav.ini + +ynh_add_config --template="../conf/caldav.ini" --destination="/etc/uwsgi/apps-available/$app-caldav.ini" +chmod 400 "/etc/uwsgi/apps-available/$app-caldav.ini" +chown $app:$app "/etc/uwsgi/apps-available/$app-caldav.ini" +ln -sf /etc/uwsgi/apps-available/$app-caldav.ini /etc/uwsgi/apps-enabled/$app-caldav.ini #================================================= # GENERIC FINALIZATION @@ -245,8 +237,6 @@ ynh_script_progression --message="Integrating service in YunoHost..." yunohost service add uwsgi --log="/var/log/uwsgi/$app/$app.log" yunohost service add supervisor --log="/var/log/supervisor/supervisord.log" -#yunohost service add $app-webdav --log="/var/log/uwsgi/$app-webdav/$app-webdav.log" -#yunohost service add $app-caldav --log="/var/log/uwsgi/$app-caldav/$app-caldav.log" #================================================= # START SYSTEMD SERVICE @@ -254,12 +244,9 @@ yunohost service add supervisor --log="/var/log/supervisor/supervisord.log" ynh_script_progression --message="Starting a systemd service..." # Start a systemd service -ynh_systemd_action --service_name="uwsgi" --action="restart" --log_path="/var/log/uwsgi/$app/$app.log" #--line_match "WSGI app 0 \(mountpoint='[/[:alnum:]_-]*'\) ready in [[:digit:]]* seconds on interpreter" +ynh_systemd_action --service_name="uwsgi" --action="restart" --log_path="/var/log/uwsgi/$app/$app.log" ynh_supervisor_action --service_name="$app" --action="restart" --log_path="/var/log/supervisor/supervisord.log" #--line_match="line to match" -#ynh_systemd_action --service_name="uwsgi-app@$app-webdav.service" --action="start" --log_path="/var/log/uwsgi/$app-webdav/$app-webdav.log" #--line_match "WSGI app 0 \(mountpoint='[/[:alnum:]_-]*'\) ready in [[:digit:]]* seconds on interpreter" -#ynh_systemd_action --service_name="uwsgi-app@$app-caldav.service" --action="start" --log_path="/var/log/uwsgi/$app-caldav/$app-caldav.log" #--line_match "WSGI app 0 \(mountpoint='[/[:alnum:]_-]*'\) ready in [[:digit:]]* seconds on interpreter" - #================================================= # SETUP SSOWAT #================================================= diff --git a/scripts/remove b/scripts/remove index 87e3427..0f81f72 100755 --- a/scripts/remove +++ b/scripts/remove @@ -54,9 +54,22 @@ ynh_script_progression --message="Stopping and removing the systemd service..." # Remove the dedicated systemd config ynh_remove_supervisor_config --service="$app" -#ynh_remove_uwsgi_service --service="$app" -#ynh_remove_uwsgi_service --service="$app-webdav" -#ynh_remove_uwsgi_service --service="$app-caldav" + +ynh_secure_remove --file="/etc/uwsgi/apps-enabled/$app-web.ini" +ynh_secure_remove --file="/etc/uwsgi/apps-available/$app-web.ini" +ynh_secure_remove --file="/etc/uwsgi/apps-enabled/$app-webdav.ini" +ynh_secure_remove --file="/etc/uwsgi/apps-available/$app-webdav.ini" +ynh_secure_remove --file="/etc/uwsgi/apps-enabled/$app-caldav.ini" +ynh_secure_remove --file="/etc/uwsgi/apps-available/$app-caldav.ini" +ynh_systemd_action --service_name="uwsgi" --action="restart" --log_path="/var/log/uwsgi/$app/$app.log" + +#================================================= +# REMOVE LOGROTATE CONFIGURATION +#================================================= +ynh_script_progression --message="Removing logrotate configuration..." + +# Remove the app-specific logrotate config +ynh_remove_logrotate #================================================= # REMOVE THE POSTGRESQL DATABASE @@ -102,16 +115,6 @@ ynh_script_progression --message="Removing dependencies..." ynh_remove_nodejs ynh_remove_app_dependencies -#================================================= -# CLOSE A PORT -#================================================= - -if yunohost firewall list | grep -q "\- $port$" -then - ynh_script_progression --message="Closing port $port..." - ynh_exec_warn_less yunohost firewall disallow TCP $port -fi - #================================================= # SPECIFIC REMOVE #================================================= @@ -119,24 +122,9 @@ fi #================================================= ynh_script_progression --message="Removing various files..." -# Remove a cron file -ynh_secure_remove --file="/etc/cron.d/$app" - -# Remove a directory securely -ynh_secure_remove --file="/etc/$app" - # Remove the log files ynh_secure_remove --file="/var/log/$app" -ynh_secure_remove --file="/etc/uwsgi/apps-enabled/$app-web.ini" -ynh_secure_remove --file="/etc/uwsgi/apps-available/$app-web.ini" - -ynh_secure_remove --file="/etc/uwsgi/apps-enabled/$app-webdav.ini" -ynh_secure_remove --file="/etc/uwsgi/apps-available/$app-webdav.ini" - -ynh_secure_remove --file="/etc/uwsgi/apps-enabled/$app-caldav.ini" -ynh_secure_remove --file="/etc/uwsgi/apps-available/$app-caldav.ini" - #================================================= # GENERIC FINALIZATION #================================================= diff --git a/scripts/restore b/scripts/restore index 60bfae0..7a88236 100755 --- a/scripts/restore +++ b/scripts/restore @@ -8,6 +8,7 @@ # Keep this path for calling _common.sh inside the execution's context of backup and restore scripts source ../settings/scripts/_common.sh +source ../settings/scripts/ynh_supervisor source /usr/share/yunohost/helpers #================================================= @@ -32,7 +33,6 @@ path_url=$(ynh_app_setting_get --app=$app --key=path) final_path=$(ynh_app_setting_get --app=$app --key=final_path) db_name=$(ynh_app_setting_get --app=$app --key=db_name) db_user=$db_name -phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) datadir=$(ynh_app_setting_get --app=$app --key=datadir) #================================================= @@ -79,6 +79,8 @@ ynh_script_progression --message="Restoring the data directory..." ynh_restore_file --origin_path="$datadir" --not_mandatory mkdir -p $datadir +mkdir -p $datadir/depot +mkdir -p $datadir/radicale_storage chmod 750 "$datadir" chmod -R o-rwx "$datadir" @@ -106,36 +108,42 @@ ynh_psql_test_if_first_run ynh_psql_setup_db --db_user=$db_user --db_name=$db_name --db_pwd=$db_pwd ynh_psql_execute_file_as_root --file="./db.sql" --database=$db_name -#================================================= -# RESTORE VARIOUS FILES -#================================================= -ynh_script_progression --message="Restoring various files..." - -ynh_restore_file --origin_path="/etc/cron.d/$app" - -ynh_restore_file --origin_path="/etc/$app/" - #================================================= # RESTORE SYSTEMD #================================================= ynh_script_progression --message="Restoring the systemd configuration..." -ynh_restore_file --origin_path="/etc/systemd/system/$app.service" -systemctl enable $app.service --quiet +ynh_restore_file --origin_path="/etc/uwsgi/apps-available/$app-web.ini" +ynh_restore_file --origin_path="/etc/uwsgi/apps-available/$app-webdav.ini" +ynh_restore_file --origin_path="/etc/uwsgi/apps-available/$app-caldav.ini" +ynh_restore_file --origin_path="/etc/supervisor/conf.d/$app.conf" + +supervisorctl reread +supervisorctl update + +#================================================= +# RESTORE THE LOGROTATE CONFIGURATION +#================================================= +ynh_script_progression --message="Restoring the logrotate configuration..." + +ynh_restore_file --origin_path="/etc/logrotate.d/$app" #================================================= # INTEGRATE SERVICE IN YUNOHOST #================================================= ynh_script_progression --message="Integrating service in YunoHost..." -yunohost service add $app --log="/var/log/$app/$app.log" +yunohost service add uwsgi --log="/var/log/uwsgi/$app/$app.log" +yunohost service add supervisor --log="/var/log/supervisor/supervisord.log" #================================================= # START SYSTEMD SERVICE #================================================= ynh_script_progression --message="Starting a systemd service..." -ynh_systemd_action --service_name=$app --action="start" --log_path="/var/log/$app/$app.log" +# Start a systemd service +ynh_systemd_action --service_name="uwsgi" --action="restart" --log_path="/var/log/uwsgi/$app/$app.log" +ynh_supervisor_action --service_name="$app" --action="restart" --log_path="/var/log/supervisor/supervisord.log" #--line_match="line to match" #================================================= # GENERIC FINALIZATION diff --git a/scripts/upgrade b/scripts/upgrade index f2b3581..a694357 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -7,6 +7,7 @@ #================================================= source _common.sh +source ynh_supervisor source /usr/share/yunohost/helpers #================================================= @@ -22,6 +23,11 @@ language=$(ynh_app_setting_get --app=$app --key=language) admin=$(ynh_app_setting_get --app=$app --key=admin) final_path=$(ynh_app_setting_get --app=$app --key=final_path) db_name=$(ynh_app_setting_get --app=$app --key=db_name) +db_user=$db_name +db_pwd=$(ynh_app_setting_get --app=$app --key=psqlpwd) +api_key=$(ynh_app_setting_get --app=$app --key=api_key) +session_secret=$(ynh_app_setting_get --app=$app --key=session_secret) +website_title=$(ynh_app_setting_get --app=$app --key=website_title) #================================================= # CHECK VERSION @@ -52,7 +58,7 @@ ynh_abort_if_errors #================================================= ynh_script_progression --message="Stopping a systemd service..." -ynh_systemd_action --service_name=$app --action="stop" --log_path="/var/log/$app/$app.log" +ynh_supervisor_action --service_name=$app --action="stop" --log_path="/var/log/supervisor/supervisord.log" #--line_match="line to match" #================================================= # ENSURE DOWNWARD COMPATIBILITY @@ -66,16 +72,6 @@ if ynh_legacy_permissions_exists; then ynh_app_setting_delete --app=$app --key=is_public fi -if ! ynh_permission_exists --permission="admin"; then - # Create the required permissions - ynh_permission_create --permission="admin" --url="/admin" --allowed=$admin -fi - -# Create a permission if needed -if ! ynh_permission_exists --permission="api"; then - ynh_permission_create --permission="api" --url="/api" --allowed="visitors" --show_tile="false" --protected="true" -fi - #================================================= # CREATE DEDICATED USER #================================================= @@ -93,7 +89,7 @@ then ynh_script_progression --message="Upgrading source files..." # Download, check integrity, uncompress and patch the source from app.src - ynh_setup_source --dest_dir="$final_path" + ynh_setup_source --dest_dir="$final_path" --keep="backend/development.ini frontend/configEnv.json" fi chmod 750 "$final_path" @@ -113,25 +109,63 @@ ynh_add_nginx_config #================================================= ynh_script_progression --message="Upgrading dependencies..." -ynh_install_app_dependencies $pkg_dependencies +ynh_install_app_dependencies $pkg_dependencies $build_pkg_dependencies ynh_install_nodejs --nodejs_version=$nodejs_version ynh_install_extra_app_dependencies --repo="deb https://dl.yarnpkg.com/debian/ stable main" --package="yarn" --key="https://dl.yarnpkg.com/debian/pubkey.gpg" #================================================= # SPECIFIC UPGRADE -#================================================= -# ... -#================================================= - #================================================= # UPDATE A CONFIG FILE #================================================= ynh_script_progression --message="Updating a configuration file..." -ynh_add_config --template="some_config_file" --destination="$final_path/some_config_file" +ynh_add_config --template="../conf/development.ini.sample" --destination="$final_path/backend/development.ini" +chmod 400 "$final_path/backend/development.ini" +chown $app:$app "$final_path/backend/development.ini" -chmod 400 "$final_path/some_config_file" -chown $app:$app "$final_path/some_config_file" +ynh_add_config --template="../conf/configEnv.json.sample" --destination="$final_path/frontend/configEnv.json" +chmod 400 "$final_path/frontend/configEnv.json" +chown $app:$app "$final_path/frontend/configEnv.json" + +#================================================= +# BUILD APP +#================================================= +ynh_script_progression --message="Building app..." + +cp -r $final_path/frontend/dist/assets/branding.sample $final_path/frontend/dist/assets/branding + +pushd "$final_path/backend" + ynh_use_nodejs + ynh_secure_remove --file="$final_path/backend/env" + python3 -m venv env + set +u; + source env/bin/activate + set -u; + pip install -r requirements-build.txt + pip install -r requirements.txt + pip install -r requirements-full-preview-generator.txt + pip install -r requirements-db-postgres.txt + pip install -e "." + mkdir sessions_data sessions_lock previews + set +u; + deactivate + set -u; + $ynh_npm install "i18next-conv@<8" -g + ./update_i18n_json_file.sh || exit 1 +popd + +pushd "$final_path" + echo 'nodeLinker: node-modules' >> .yarnrc.yml + yarn install + ./build_full_frontend.sh +popd + +ynh_install_app_dependencies $pkg_dependencies + +chmod 750 "$final_path" +chmod -R o-rwx "$final_path" +chown -R $app:www-data "$final_path" #================================================= # SETUP SYSTEMD @@ -139,23 +173,49 @@ chown $app:$app "$final_path/some_config_file" ynh_script_progression --message="Upgrading systemd configuration..." # Create a dedicated systemd config -ynh_add_systemd_config +ynh_add_supervisor_config --service="$app" --template="supervisord.conf" + +ynh_add_config --template="../conf/web.ini" --destination="/etc/uwsgi/apps-available/$app-web.ini" +chmod 400 "/etc/uwsgi/apps-available/$app-web.ini" +chown $app:$app "/etc/uwsgi/apps-available/$app-web.ini" +ln -sf /etc/uwsgi/apps-available/$app-web.ini /etc/uwsgi/apps-enabled/$app-web.ini + +ynh_add_config --template="../conf/webdav.ini" --destination="/etc/uwsgi/apps-available/$app-webdav.ini" +chmod 400 "/etc/uwsgi/apps-available/$app-webdav.ini" +chown $app:$app "/etc/uwsgi/apps-available/$app-webdav.ini" +ln -sf /etc/uwsgi/apps-available/$app-webdav.ini /etc/uwsgi/apps-enabled/$app-webdav.ini + +ynh_add_config --template="../conf/caldav.ini" --destination="/etc/uwsgi/apps-available/$app-caldav.ini" +chmod 400 "/etc/uwsgi/apps-available/$app-caldav.ini" +chown $app:$app "/etc/uwsgi/apps-available/$app-caldav.ini" +ln -sf /etc/uwsgi/apps-available/$app-caldav.ini /etc/uwsgi/apps-enabled/$app-caldav.ini #================================================= # GENERIC FINALIZATION +#================================================= +# SETUP LOGROTATE +#================================================= +ynh_script_progression --message="Upgrading logrotate configuration..." + +# Use logrotate to manage app-specific logfile(s) +ynh_use_logrotate --non-append + #================================================= # INTEGRATE SERVICE IN YUNOHOST #================================================= ynh_script_progression --message="Integrating service in YunoHost..." -yunohost service add $app --log="/var/log/$app/$app.log" +yunohost service add uwsgi --log="/var/log/uwsgi/$app/$app.log" +yunohost service add supervisor --log="/var/log/supervisor/supervisord.log" #================================================= # START SYSTEMD SERVICE #================================================= ynh_script_progression --message="Starting a systemd service..." -ynh_systemd_action --service_name=$app --action="start" --log_path="/var/log/$app/$app.log" +# Start a systemd service +ynh_systemd_action --service_name="uwsgi" --action="restart" --log_path="/var/log/uwsgi/$app/$app.log" +ynh_supervisor_action --service_name="$app" --action="restart" --log_path="/var/log/supervisor/supervisord.log" #--line_match="line to match" #================================================= # UPGRADE FAIL2BAN From 8112c84340df4749b588eea805b873c3fc10ddd8 Mon Sep 17 00:00:00 2001 From: yalh76 Date: Tue, 12 Apr 2022 09:54:46 +0200 Subject: [PATCH 05/26] Disable ldap --- conf/development.ini.sample | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/conf/development.ini.sample b/conf/development.ini.sample index c42a41a..2f711f5 100644 --- a/conf/development.ini.sample +++ b/conf/development.ini.sample @@ -348,7 +348,8 @@ api.key = %(basic_setup.api_key)s ## Auth type list (internal or ldap), can be a list of item separated by ',' ## and ordered by priority ## auth_type 'remote' is not allowed there, set remote_auth_header. -auth_types = internal,ldap +auth_types = internal +;auth_types = internal,ldap # If auth_type is ldap, uncomment following ldap_* parameters ## LDAP server address ldap_url = ldap://127.0.0.1:389 From 2c262137c8e736e2a1bf924cdc390aac6af64de6 Mon Sep 17 00:00:00 2001 From: yalh76 Date: Tue, 12 Apr 2022 19:29:11 +0200 Subject: [PATCH 06/26] missing datadir --- scripts/change_url | 1 + scripts/upgrade | 1 + 2 files changed, 2 insertions(+) diff --git a/scripts/change_url b/scripts/change_url index 1895aa0..8d704a7 100644 --- a/scripts/change_url +++ b/scripts/change_url @@ -36,6 +36,7 @@ admin=$(ynh_app_setting_get --app=$app --key=admin) db_name=$(ynh_app_setting_get --app=$app --key=db_name) db_user=$db_name db_pwd=$(ynh_app_setting_get --app=$app --key=psqlpwd) +datadir=$(ynh_app_setting_get --app=$app --key=datadir) api_key=$(ynh_app_setting_get --app=$app --key=api_key) session_secret=$(ynh_app_setting_get --app=$app --key=session_secret) website_title=$(ynh_app_setting_get --app=$app --key=website_title) diff --git a/scripts/upgrade b/scripts/upgrade index a694357..6ae77ff 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -25,6 +25,7 @@ final_path=$(ynh_app_setting_get --app=$app --key=final_path) db_name=$(ynh_app_setting_get --app=$app --key=db_name) db_user=$db_name db_pwd=$(ynh_app_setting_get --app=$app --key=psqlpwd) +datadir=$(ynh_app_setting_get --app=$app --key=datadir) api_key=$(ynh_app_setting_get --app=$app --key=api_key) session_secret=$(ynh_app_setting_get --app=$app --key=session_secret) website_title=$(ynh_app_setting_get --app=$app --key=website_title) From 29fd74aa3cdf827c0df657f86d871589b6870d2f Mon Sep 17 00:00:00 2001 From: yalh76 Date: Tue, 12 Apr 2022 19:31:51 +0200 Subject: [PATCH 07/26] Update readme --- doc/DESCRIPTION.md | 10 +--------- doc/DISCLAIMER.md | 12 ------------ doc/screenshots/example.jpg | Bin 35451 -> 0 bytes doc/screenshots/feature_app_document.png | Bin 0 -> 366906 bytes 4 files changed, 1 insertion(+), 21 deletions(-) delete mode 100644 doc/screenshots/example.jpg create mode 100644 doc/screenshots/feature_app_document.png diff --git a/doc/DESCRIPTION.md b/doc/DESCRIPTION.md index 0685205..d62587e 100644 --- a/doc/DESCRIPTION.md +++ b/doc/DESCRIPTION.md @@ -1,9 +1 @@ -Some long and extensive description of what the app is and does, lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. - -### Features - -- Ut enim ad minim veniam, quis nostrud exercitation ullamco ; -- Laboris nisi ut aliquip ex ea commodo consequat ; -- Duis aute irure dolor in reprehenderit in voluptate ; -- Velit esse cillum dolore eu fugiat nulla pariatur ; -- Excepteur sint occaecat cupidatat non proident, sunt in culpa." +Tracim is a collaborative platform software intended for (not only technical) team collaboration. It is simple to use, offers a user-friendly interface and runs on every computer. It is very valuable for R&D teams, assocations, remote collaboration. diff --git a/doc/DISCLAIMER.md b/doc/DISCLAIMER.md index aded581..e69de29 100644 --- a/doc/DISCLAIMER.md +++ b/doc/DISCLAIMER.md @@ -1,12 +0,0 @@ -* Any known limitations, constrains or stuff not working, such as (but not limited to): - * requiring a full dedicated domain ? - * architectures not supported ? - * not-working single-sign on or LDAP integration ? - * the app requires an important amount of RAM / disk / .. to install or to work properly - * etc... - -* Other infos that people should be aware of, such as: - * any specific step to perform after installing (such as manually finishing the install, specific admin credentials, ...) - * how to configure / administrate the application if it ain't obvious - * upgrade process / specificities / things to be aware of ? - * security considerations ? diff --git a/doc/screenshots/example.jpg b/doc/screenshots/example.jpg deleted file mode 100644 index a1efa1a36d593384df59dc13db03fa83b0436d69..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 35451 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 UE-)&$xd9C0IsX9d#{5|Pe`qLcKmY&$ diff --git a/doc/screenshots/feature_app_document.png b/doc/screenshots/feature_app_document.png new file mode 100644 index 0000000000000000000000000000000000000000..b24c671aa7c35ee847299b75d13e4a015cf21953 GIT binary patch literal 366906 zcmZU)1yq|^*EURtQVJ9(#fk)`P~3_;3|8FTi@Uo|arfX-oZ#-#;ts{#JxI|&AmmRw z^UgQ({8=l>$$e+7Y`gZp_C6;ON(z#g=)~wqNJyB{QsOE|NH3g`kdWaoUm&hrSE&>s z-q0MSv|W&pFmQi9pCM&ry+vGn=At4gic~d0dW87!+(JZN1PQ4&4&%`X1qmf>Qd(R@ z&GXp_4D}P~pcf=gxZVc^byLafIfj%dp0xCzk!D)`DU2eCl`S&PpGg_UV|BOt=(=5L zyu5sq0!AM8{gSu^YXSW3#=7F$6c7qDYv#l+SUMDR=!L&0{vPg)gyqrPewAzCeqev@ zNNa2S9fC~eFnTg}GA0n!>wE4MD)p`iZwvAPIM`#A%Gaz$20TcS>0Z6JJ|Y}7?9BAj zi8Se~2F^Rwx@%oS@mEV)yMNe-JVhmI7Ok3r+tkRS0J^q%Oqv4}H?M(vj5l4gf>mD_ zb?CeI&itsXVvEkA_PX`j>aOo+XKJNAR2wswP>|LEF-%rvR& z8sRAUZ9wcY{LN9>ZLc%3ZR@voJXyg{qE>hE&#SG&C7Q}pG#OJ3qELKjLW%J##MdhZosIzZQYt{JtHbxhPnNUx<(_Y*v{?sD>CJ4sj z!~#683D8k;_@#lNVBE;5W2fj>gu+{Pi*UBR;3kCX0c9QBi2K5ep)lN^dRoFJP#z4~ z#wl(+rcVOCKU1s3O{Mi@72`bUxvy-PAt*oSaUMBt(Za&x>Np`tWjpesxOh9LaL|sgke(qZ7kCOz1GM>9zBP4^Eqztkol!V2K_qtbKzlX4WZY7CK;6DxfM! zf1|$S=A3{{`K^EMG*<>fLKgS@L6{ohKKKs;gbIe*FMc`dFW;&kV?O*`$+~?;yb`87 z`}N5P?kaj~XwXb`VpXKJ&r}}MO%?65bc!zC7^W5SECf}xB|+RvXb(VGmb+n<_gQWa zSppB$0S<4>8Hj0|O&LUV^CYVO>RzZCS1M~MQ zvUTQS?6b-=#T!(6){VM4IiC>JNNLR?`?`@%wI)g0xDgSXWuaM3f2b>;o%*h-f%|=s zDx>iq#tFBt$Q&^qzNjfuREd=uS|&j8t`hRN3a47i=Wj7q%f)qqKeIxJ-wT9^aMhdm{|>0sRE!7gRMn-fEvKJ%e&r5?QSWl(`JoFv zPm|gYEQGFfHTrO3?T!@sX|;XBj}qNs)!HrOLdpr2-+vRuN1skEAAG`DvlPd0$e~q2 zF_Souq9@_W&%a^}SjmFK;qwbfk-R$D=1+%gvue{1W*Np02pf>$)w(8-3fTe;pexsrAIOlLf8xK} z<1Iatn`hH&mO4Fj?1$Sy2v+6jyA+^@mTY^rJU#W!>p5Ijb_~1?;M4bKT2S3^0oo8m zkJmXJq}FS-rvk7~sP$RR%LSrGCS_d=pWNGwPP5 zjOhy>hjWFMw_+D9N1ijac`kcicR}yui@?#(!e)Z2rBem}hzuoRW+}x0u8Gmv(aPWH z&<7}`?5VSP;+6@j)>KOT0C`3%LwOz^BRTq@GS0+?4N@npnA z^hah;%z%v|bmM`SqE?ajs$PaAqZ6r(jkNnj#130*GH$QnfoQqdjd4WS{X#DdB{2px zy|-E_NO$@T<@R=3IC7?sLi{wi6hL=BG;XJCGQEptwl1_-?FkyprecfF@b5!MSek*C zZ6VMKfjE?%Hs>t7QN~dWgwd+axd~2$F&`9rpFp;xKZCUNG^2kls|HJ z#Rtlz=hX17-gH&R(CUNRneVNxK~p{%BqG^zCHGWw<1WZU#`nh?Sn#w7JxtN>3v*OH zsHhT#hMG#%9JyMK>_=Tf>0E;kcYhr6b&1=7Rjm!(lB+@|Xoi}bxp^j6`1Esky)WJL z%dkX%u5HY2V(4O};ENB(##i)ro1oHRjc|=wF-lUl8qD zLZ_nV>i9C6F5>DjUuF0!pxPC(D29EMUFJxkz5Tpl1%);k^45MLO{)_#i4(oyu=`HZ zplbLbbmp7ijr!4p<3svmq*=P%zu9Zu zN}^Efn3v0vD)@!fW64&`pMR%Bj*)ooEjtGmJL1ezm{LjZBhu&6jDNJldE-XUl25;# z@PQ`Tx!B%cbNB~x@0Pe9K7j>SR3&L~9EtO{ck+{mrHAK=_#}BHC9>A5*+3Dukve9#sQVTz!q2GUdM z2d`2#?=dcQD@t@u4F`uMCt+c~q}g1uWWgimJo~JcShIz&m8#Tc7&Pp>pao$4Y6B_I z=Mck9?jkL>szg?wf9O6YGMT=8GI{Xy@cbouqpri0Vkaz%%eA){?cuTQ3RbArRj}3J zUEW+doFwX3IjXwz=fijdac z+)^u=+TA~3aVf{@jAGdw5Nl{&swk{*@Q?0S2j_8MmF_$3Fx%f<4UPEc9rDInt36-g zt#nQciC(LLCnM|Vv4B-U2uGARFd^ze^-RxSHT7rR{43dwu3-II5&oa!>h-NtnXUSk zwi#akPKYkpbtU_ja`CNv|4R|J25L+uJlE(P6+R``aZvtKuxJ_4jZ_+RXqvOwJkhtg zAbwC@Cz)gPN4X}RU8nJs(+)j5#q>Fz?L%n)z&5!$;ER7GUC%IK9*tD|lDpEYlXa$X z|A2Vmnd~L%7cbmph4wt0h1~)?Go{W9XnK!EUXGlh9rwY#y}cvvj|Gz2&CK-WU=QW9 zwVuqblY2)p5}GR|C|*$DHFyx&SM7(N6F;L|ca6e+S6P!&z&$KwEr_owz({R;vb*`r z&R_6Ozu9FZUy}ms3;T+iaMo9P z>xP~$%zj&~ZiUxD6NC-!)}o2vLa>r(b@XHxy8_qV&f{`^9>NPXa)fZ-1f5 zVVbaBm-N@t&;Y^Uzdc2%|8$)Z9EK=2!YAEt76aTSd>LFU1)LBqe z)5Xzo4-LAjWuxri-iBf0J~p;MEC)1U`PXNRu1YD>z>GO@aa{AktPk6AhreliInf3s z!ZD+`zwz#9o3CaBuFRolZO|2oj0H_-qQ-2MLdF&zU4{!8Nfu#cwe3NuCe)N;_n(a` zA1m!|cFr*m?Gzj?SqJ&K9SGWQIc4F*aP+l^H6o)b+QiO_z)}3j`_N5=>qg`@TQl{Z23fNe zymS82`YPdcwxC(+YNe%q8+pLoO*SYQXlb94)zlG?O>U0D z)bba4mW(NogC755W^$ao$6mY5lA~7xCxPyCoVu(I8y`hYx<~v%R!Vr}WKl;+_!n77 zDBrE@`rO(Txhh{gdHl_${vVv8_>`I9ASA*z8wDr?eCuMsd&?duKRlB6G!-cXG1G5LH>RQQTE8TV2+e=Rx*KHP;c3uAheN*k_fcx7-rJ^k+H?xx;;Zp_=UW)Y_q zm7HpGSh(56Q!U=3$o_V=UB<7+t*V1ihGSG=CMT#kR!u{A=4+ONS^FV0v!mDTgnmyF zAEHxXqIBT6^wdRf;aF1UqIo0`!p_*}P%`48S*kyB$#AP&Duln&vnqS1M<+j}nfHJJ znG1ZVoL>*xvn!do3^J}!6IshGBd2}%vgyOz1pib@{tABwR5vM~%@^eU-p!s6s5(!u z<%71|JIj<+Rfoy25*T;DJs#dE$>j+}RwyMaYVd#Yvo@Oo)4un^F@nA-okQqCeJ1pIbwFQ{9ECNCd-k z_Bc+Zexc{!SjwPfNU!xmnxMCo$Ra(lMBzI|n4B7idmAV`r?{WA-Uy3ep_dLMoG0Ps zddDT)pyO!Zc*mjsuD(U1COMTh>N}xQRnC$5mzph?Q9EVi5KD~yW9(7=xXExPT~Hv? zaigZg=~}_9=mF$~g*>s4qOMnU!{kx#!s(hJ3ycjUlcPK0>{ds_${~=yVmvy3d^2U1 zQLdiR>2v$yKxU?m8>QpNf_8n zb0X~e3n$;67|t+m4Pif_)4hzq(@#>dD2)72{o=S(MPgrUy@-NOl$@l;P zt9xVpc)QP@{f;#uB!{g!hYXI_eUtRv)qAL7Ms+{C_x#9pGh3|R%w`Buhx2)4$7kd2 zQep13O@C$lr`|yVdLjJ0xoO5tDfK(7SO|eyX|v|tP2s1{@7%gdB;Qt(>`-W^rP3Ah z5lUpKSe(IzXYvaQ#7Z1h>M7Xx%8vUV#CCU8DBe^vl$RJu!CaLb_3fL|V&j@iX59*& zo&sIyC%5iOPd?ngN?@*{q@5`-5wV(!eYjEg@(5<5pRY{rZWVS}72ZGK#@k&}ZXAoH zUlFoVUkX!ODyow)V;pnXy4iBs;>!>iS&?4Q0j5uz9dkU6RtYl5X%{`cr7y-_h`1_n z7lx~lYl33z2QQ()V2OS`{*eiuJRyrnKh*?e;9Mi=OmQ(8&~0kan@`jaFfm!3)LPX+ zPCtryJIC@hma*ALQUU-IeldPm=L^+{S3H=cl!3$P}y7(Xon#Al1o3^t8T5o zhC0}Y4j*p35H=YCw!Hk=)f>T!rpo~TuQf$I5iZ3&fiu>_w}RD-gEx<{sNVEHeGtVh zK#?oEuDTT5yju%42fvGLOG)J8NGFhPGnMY!BAxzhit9OgH^C->O;RxVwj|S0ixXyW z=A@eMs)xRjS>h`~rY_{OeJ26Vcn;qB;mxhL^<8<(XEXU>vnD(#mkw0a#;S(wmhATY zen9`*2l8s?iuOkB=xF&Nt{eY&tm(X3*4Cy*^+l72ZNFA8_&4LhH`D4zw!j?7N}$c! z{AS1Thip)*c_m-*B}jwI(1n(^ptC}ux1s4K(U{0=p$Qe0{&I`0MWEaNNoc|D(}~qm zc8Zm?M}sCU<1zjmRaO3&1m7SpKl)q(g1ftAmo6;|GQ%i9M~^2r;{_2d(;q z*OI^sK-GZ?teLdmN&mY60)5>9WPh_p+0$Ocm=598U(>~x|FFrwKzh<`3g3EQHOW&E zp!Yhwf9R@FMQ1ql0mpZz;G!7t$&g{IFW?E$)+*2a~q zX|+5weZMP_xlG0@AZlkb+ukLrPaY+G{%0FA@zp4g+Q=Xx#)CItF8;(WF?1V>Vj}5# z3z=;M;HnX>y_ixLJ17rO-vI@Al419z6-RxNYu#XmVE6dI=4`0}N7JgZm060P*gh=M znSOK@;;aSG!+o!|GXJr=i_ZbrYGvqB+1l)wQ@l5Fu~JwOyi7zMLB zK5eGj@L+}a7A3X_!=64QFMp}X5qU^f0dbU7s0qCdfOZ7jgws(2C`=< zc$Z^Gr#o7v`qQaS*Rm1(R^8asCq*V|S=-iJ88yfgft=1-_20K+x_cu6uhfz~B4u|R z1-1HEt3ZSrCEitL1k4M>*e1f<%j2e3*PEqlW7hZ-?Mnc=qg+IVf#Ralgmae zCA#*XDxB002-GcvN{{WPi9gQWtCuMTTbC3qiywfN>t{VM28ROq%4h7EK?BmoiyLi< z)Wv2kFanY&^%XixAD7s{zB|{_xbjsKPf|wrIM5WJRkn~dc}0}26Ql_8mu)^$QCsh> zMLw&?;9F*z;MUtX-m$*-&&SvMs|L#coUsgIAi&uD<`Z0G=_g{J{Q|7bFR#J3e}18# z4e_O~pnCYkC&oG^AX$zf>%#ZEO}04&|_nA)1gT%wAXn-D1ZsDO>6c!ESA9S zl|JKPjejqAuMmio#5KXmres^@y^kkWo{pT?VuNRUryXoujb=a+_DFt=*#o*sAXkY| z7LBbcd*ig&Y&lvi-=iFe>9f&LEgw;1V<3GofuSg98;M!8SE`w@%odKlb58Vq(olJ2&f!fe|M@_pQroK2FlFQoSZZ}vR=H;=J)N2P2 z`q`ZS1l>PL_Mh^ID5Q08BY3srgQlAe+DXn0Dgik|KN;nI?GMY2*`BQzVc0PvOoYJa zIa+?5awj$^$e-h93Sw^{4DU)7AR$M`;2BY@FzqBO0;j?RL#Y=kSVwD@H%@nb2*Amu zaZaNJyH8%gi`4C{IyY8UY-&B(%la~(J_(YJn7W3N%E;5nHrT{VWD!wqH=xz?;0)$5 zw3XFBVheU&gd#+Jnm`>MohqM>4D)pVn!3O4rpOkbLo->ge`T{|_arzgioKHk`a zJQR8tG^(3N6oHhpFj=nn->XM_FeB-DF{+sMh-B21i(5T}^eZeH!E;17%5KVj${ozB z%*Q#F&WUm)YE9Za-TlWp+FeKO5yrhr7eWNrl8%N?tY@jyEv2@(j%%fhFK}nmY$2oN z)5XOAIm65_?F;{)P}|ih=3)aizpPys_B!WRYV!rG*FQ2}X0w|V*2Qi)eZASblxqh& z;YPF0e59Tn*k1!89J9|5 zY&pGA(3L@cz+U({K?{SW{$B?DnRFdS{$fTo@R25r^MAFOhD#Gk>1nSpN{qf)S;J*> za6Gl9SdET*z^ItqS8phfU@S;P)_?gmR_ zvsGs$#+y7RrH|^?kO5sR3=ol?;Q8?t>yWcVQhExK5~SB<(gYi9(g;)XEw5ZRD%fju zlVFp&%Uj#Yp+h!n-m(J-Ua?)pzbvmY(69Ug0;%8=lgypralTl=m%mkP+-I}7ILHC5O)Pv_O0 zZVM_L`8S&%6k2hshFZ0QzSt%S&5jhg^?-URSe#&m&#^#R#sZ zA$iOBJm&IH$9oZd-k44InVs(1iYmnP+mkV5InMy-@j>&4=d0jBmtkgFSH-!NoaPb> z*`1+=DiB7A@CS8&##P@vw@ZjDL;_>L+v|mz!JuPjpv_+sQq3ppxeasCTrtCN=hABBD>y z?7dUO?C99Z1`C~2r2%``mYa)ra(vybI;xYqRZ zBdmmXR-VstT;r#L)kpyNPZ>N{Ool6y#7A#pE-B__`x#prpt)xQo ztQtd61AmB^;m?Hg6bB@_6@|T#FXx*l2u@SQj(O2|dbcvIzVKc?{{^f&+|-XMbGU{^ zHOM=YTEWmT^L2-QOktZpbqiO)G_{TF`F=;MMr!5d8y9VDM!r(Y5UfM!i}snBnPjzv zG;kCo??sgB-JR=&kZV`J0L)p&OI5q8zv=ruqnxU{ethwr0hN4<|CW1d;}##(D}Bv+ zfyI5yVP;woNY2t7_k)+YT?Cfq+v`@Xk!pRPwsR9Jj71L?9j(#w2^o}b@srEFTI4Mq zvHajSAYXpGGWE5)^o{XAbir$k(IJ_ng=nkxZNV2imBz1XKr~L%#_oMAyy{L@3hTUolzuQtWJ8K{=zNcRWMAm z`0w#4+>!s+h!yVq2~LIRP=8*Q2mA~R!x*c2g>4CYB7V`?CD}SDu6S-m(tv&Mhn) z;0rpr7Vjm@^t_uV05ph%H?pN>xn>ADPm}7(U(@20bQ`8BAZBL$2OfeGIXqpCJI^Vw z!jyLWVyOlxVsWf_^p>CB18j&_!@116nG;^uFI8k|0F({EFDcl^)QGt~-!7N+&bs>v z;*@X>mK#l9a+Tz!zk}6O=vGFDH=jyPDG||+N*3WSg}2SqwKoYkz1Q`ABcSnvQOmhvr?Q_K=F1 zT6wb}b6h>OwrzP`2aMJ7lHJebWP%i9gL0u-=-_x|s42pCDN3Lci@l`M7&F_iuoc+p{1j@rEMWuW^JCytwx-&c)FC#4d82IRAAe zMW4B@wzMzDw&M8hMd*gxTdqbyqTwM8|7x3St)Zcd>Ro6o_$<~GB224{PGNaq!n^a=!Jawz=gOk6@Td^+k(?VUP#n;xx zQ_dr1m)!TwDh&Zi!rZ_vm=UG3NzWxJh?f*%wWq2P?c#23GYfBxzHd^&GUY(+~}^CX5omfFid^-biW=_ zOU@oE)}(1q`Q&5f13Vk9EZ;$8Q{r>5>PKOl{42>Swjixh*pc4hzz(`j)>8Q@KhGpHUmaFc70{rMC9kL1DGi+f9z& znXB8*%;PF*Fkek1wtbOyoqQ})7}laeYh$DS*`@E?r8TR9iQc=)aB{Q5-?Mb5@tf0n zHTRKPqBc-MpDFGQTu%)rzrxkU-DrCuliiw-TIjp4or>bL}MaV~EmHv44(#K*l9FsEK1Q<5Bihi7LFq3yxYX-tHopc!&BJm(GNP9l5bf0C= z1O{e?V)@A=ZR(T1n9RSetK((q@W-mo#vLC6f3QvP%qAr!qYKprcWFfMwgb~}!+B)- z6FNIP1N%v(`2;eA7|kT=QNlM(m6!5rT5y9^WFJ<{ z>-TWWMl~3hL0yi{3-xu9jo{VkGvY1rm@*`hJaw~ZiuimItVFL+!>oY1$0k{+W>Y^j zC(hIykE`H5-v(iaJ8XAM+P+8nIy#AQ&i@A>^Hab-k|7q3WjyehW^T@MNQD@4kxKFq z-}<7QfzJW$QE(_(&dnlSXn)pjn;RP^kJhY7TU(py@0&FWJ1E|mx%A9ICh3?#v#|mq zWRJxXqyyO1^W-OH+I`A3Hm?`@hQ|r6h;k=}3c?KPvh?OD{{5p!NPoKEF>vFq@C#e) z;j$J*L{B>kG1S!t-Rcx&R%F}FCycwF+N3N+pgEbwH`uc+&rv}G!TqrS#t!C9p(TNLJcSuauj+IQ5 z_vuH6y&I3!VpZVj&|CN4kUD%jcm(8{?0P9t|1F%tI}(GNHh1pnj3{d2)!Ak5^RI`& zHvPqgoCHbW`Kkhtg`w-p%8EDzD+Od>LH0Dg-ltg(#b*CxwRL7CuaA^!*Yn*0NzwVq z@3-@GS3?QQfG~n^o{mGTZV03t-WKs-sKC@+vPjtlBT6i z$u7R_!}>-M8=Eo^7%M~_tof>yfWUc-kGJTp?a@~fi>Ux|0DkfkHD5h0MYmOqW1ZrI z&CV=&x})N!V& zHn)cGMsk@8Wr&UgGxz>Do`9xYpP4o1ck$w-dK28bVyl6b_HF}rn&dA@a!~MUp-Nrq z>g#nbgwvJ$9y);Dlip~{&1-T>zbo$I+(ZA~ zrlK?HMq}`pkD=YG-aSjY9IV}U1O_K{R0fk0SVl_~xMh}!%6>U~N#Ohfag2rKpl6*Y z!ye8gTmV^{ulOQ{Iy^cVl@eO`7BM7|GY_>EP*jpb|LxyWAR+Ncf+DE5mqeM_QpQzg z8N{tmqC1N~Tq+AP?slqvg_PDy?Xl4+s`6@9Y`x1O)WYnPeD&Co)pje?AGHIHPUrHm zs*}Vd(g!3lc(;C7M|T&nDAOyYnucZNY%e{7!BZ-AE$yr|NQq_f*j<5Tv&j{NDR!e? z6AM9-SpOAdLLdFUqg1w!l66bMTtJd1e`2B~*3m>+mJdyNX7&?zrG4b=q(ntIS2uN; zpo@PZ{=IyrxVy2aEZd1M40!Bj7=WSraPiE%n^F7e*r;J_=b6fxrR!j%55q{&bSMnCeR z&>;-@|CvVHnh_^L3ojwogjZ(hg0b$(iGNv2W;T6D8`pRsC(?rHcFanukBOV##4Dtu zy8T2sax{~r)~mj{Iu1x;r01+Py45@~WzDw8QdL+W=nPf;{F393><*;3d@-0KDK}rC zcvi|sRxbDC-GmNHwF7G#YjFXBMsx&({$rT0ymAKN;Y_r~vi!t(mW4$^I8k)07F@=< z7i}3s2?=tXwB0vVsf!4?@-%RG|g8mf=wIu6PKFgudfSvQ!?bv7vD`ExqjJ` zGD0Ea`S|twiYV1(lp?src7U=(7xuvia#EC+_s%(}#=4+GN>NOOgBw>~UjF;)V@KBH z-urA*>bMT^4cJ&Ncmd`Yps08okiKtG@}H`OgtY1UNf!^nYa=8mu)M7K?N@3o-*4mR zvo>xluD*6lu9=as?;E$M?2vCdz!T?6sIjzD;8}|P@@xW>EACM3{&lI#ubo4I2ZwU| zL;tC(PTg{n!qvp@H>J5_O+m(={y0~W^vUdM0UC42iOtp(iL{_lFt>Es#|)Vn6lQqp zjqM&BnX++0-<#ekb`0PZB-D>{}puaqfScE`_%A*mn%`;Y`LS6Ew~pQ z0tJ z6uSw%+j349r2glpr}%yyoP6|c>?`72{O>L^&HL5`#ZN)rHd@)%vI^SroTu}LL+{=J z<5io>mSUqP2dInVs4IG0VI~mY1G)t_D={B_0LF=xOTdQk^A#ed?GLH9tHlhS3&Q?- z=iJ5fGht5)sinnLpC{f^)6g7&N^%OpRqZ)QJb=H-lImb_%=3Q-&gN_lblPUadSPMW zBZZr`m8uZ+_H;xdc!F-sMx^6#_e z3JS=Sv2P$H`dGCeKTF1%p&OHDZ?0`K7gI!`PiCQX&&59b{2 z$vQeZrL5X46-&I?pI@g4Bv3h%J?&dWRm0lJiskh+r+^MHFQ&x?H$AC^n-;Egrx?!!7>v|nU5Q#u8S|zvU(kth<80C$(k5EK;l!c3 zr{$XLs|X5v^o=c4=`!!#nk!UWLI+4Q^$hlacYmO{{ptS0m@g=(ODRc4`gUZi#yVSO zZ0W{Rw5h~*62P)SJ3uSBe#he#!BZL0taH_hOpl??N`&J|`a_2YfsCS-$^3CM!E;*K znR%xK|86w^Tn~C+<$nuFy&3VED`ze!E~f5;wNCn_5R;G`rRdtvJ*4Wp(`CyE-PRfw zAbc8&#Di1SeoG8ZRrD`wvHOH`;F1gf4fg#U&itRuz~e_d+#j0&NWfvRX27I5$Jg6R zIGygmbMK3t@0+80vs0gBZ{rt)ACUkA(NwS3o*b00E4VU!U!`=@umR67QvqMjEcAQF zTy*2;451+k%F{EMa&fC0_^0zPhbB0Z2~r%RpTD7XcIIVUTIS|(1yryQrrEwmJ#(b$WPu zI4_XTS2wC$W7rdEOg+AUa7&iZ|M@$Z1 zUO3Co%Y*5>Hg*b^pr9mX6%!M?{)!ACglO+t+1gGou<8*88zBSrJWd;-f{gpY5?S&j zI9!>!@d1M3=_Rno_eH>_y3VwKUQqX86j)&?%u88Z4D+S_=#-YHqqe!rhNcax+;y4)Qgbx;H* zOYZMc;W0#dWyE?wGbtn+Cv?jrPWo>H@rczhPHO1Hsw;^qFusXG|Ga$#f+|YBtmPvT7}#&2bLDzMcZXkiP5(%|gCs&sPEXcW+Nu8tdiW zlWN5HY68|5Y<9!Dn2*g^O9GVKJsj%mKxmyGu`0H|QF7{&$ zUl@w`XcrZWOyI=Rv3%hE_!~?Qx{)eB2|l=nIT#`l5qYO5JSWiUf^?n(0T}1?JXan8 zkY@7{FNN;#bc$w+JLez<&HIO#_i%k*)!;Ve5n?TlRei-;y$R< z++l;U*8^gsAszmM?;72{?N4OSG7A#_BOuF+b3DdRt+ z8%Y71%cn_8d9;a9_J}e?tV)w4PB(v3s$?KBCb>q?X59rPVt7ego6x3sDP7rGZZ47< z2S2^9!_k>eL?-A+TYh$Kj;gU&-ZLgEUK6W35-OVkzcMNR{wMV4WLfS$o$2_G(9k)! zoz1c(haq|%mmn_C%?bF~Zq#!OH$?lOWq!yg=NKM|RXdQwOUh+O#}zU^)w&s(d1%^W zJbu~?u~r1!e%Vs826Aw6PG5ZB7-JwGde%^pJeB#qudrLcBPPP z%*o2YmP;5CIIVB1tMskN*VJHa^7Y)Tgt&=cIWRrL4VNi~0F;!JPSi@RtmtyVC#_#U zyOEj*n*AbGGLyv;#a)L7m5bor_1OvTBLvoH9`OhY&Q|&_QifSp3(Zu)$?1xBQM`zc zG5CU(mUsa=@*gP&_mZzxdp&F>GeF-{uiLmsivxBaps-VN82e9tab(&9-q-V3bK~n+ zrV+lE29S+U&CV8XY)K<4-~%bJdX46VF25Ph8e`@Dr*(9MItIbFQ);xPYVAfN7jqoZ zQT)0#f2eTel&TIM92|hC&*)E0HF9m7ef9f?$0Pf?{Oa1?o6n|v^yD2NmM`0osYsK5mLBU&jEP2L^^IdL+I;o- zi}2;SI7H*h{8fcQq2Aj;O_(U780w|FFK#d|vFGHqtLL~U@4Bb!Z{T29v`!;wnBV@i zwZk_?+)KtkDd^lx;7Rs0U~zQ20eeU~i!iy{5q>f`b*i^p;ffqIalIOMVD#Spko&k> z;%bs{MW|O(S$2s0_2P$QH{1t-WaKDb_(ru~^ncXM60%*n?6h7@bcxz&tD`2X&&Scl z%NGx+IB@D{4CNcmm^|1!$(q*Kr{MFGF=Um?oUgzcUTZgVaH#&INLv3fmRwdI8W@G+ zI*ph;R0WfM+m3Df^P{8$q{+^B^BbDTJ<<2?>(qhZdv!Gdjkg* zkJqLg!h)$amoCGDXRv{!zvdEr1p5~3*AW{xg0@1p*c%H5+}HtE^|SL%?_ypFmd6=- z!}wjb8q3$AS0!>otZ$u)YimJ>Ma{y*?Cfs-!86ZRFDFke!9Q$|7aJ1(t1Iz*N815b zWS_;!a)#Gv-BnM$;6h3j)o_eNewAbu`?)8|N+jNi-Zv*}6BG+;=8fc1mpF5pE1Ner z>#nh@8O59iKDSofK$+oeeh+VIc)lc7_it{Jg9auzG=N}@nOCpf+(8hnPQ;ikfmA1^ zR6ds&(J@D$<OV(0`(*!S#Nb5phNL z4tL9X*4b&6be_c69lr(`;>rCaxwwjv^kZ z>^zlq0~xL&H44=jkSHT^Oa`D+>6d1lx-hzX=5`DfT24@KdCAGNE`H~`8B<`E_4{(h z?Z~@;HPU0vYWtfc0OCTQWayB%-Ar_xs*8)DJW9Kpnk?>pfePMXVQ&s!v+wof|29dk zy=1%*T56X4{rJ&*H=7Mp-b&XM0K}%1uj=Fq3kW9;_J>s9{p} zYahsYsxT>FZo$#A5s!brp+U)o{kyBF0w9;#Xr(UnKOuyKG+~#oY?Rp-yK1p(Use)2*?`1=pB*2i>4SQa$&7e_UN)GRa+h z(R{d!oZ=O$jwy6RtB|bLhMMj=ln?`<9!S$}gR3w^=s0h*f4>@F90PLVp%aS)P zQnK8l1R~l8JXcN@?uHYtLH~ew#)B5V@UZ^;tQ7NERv}UoHq6>tRqia zcIIg8((4%~lwbc>kgvRvVDChMdfyn_j^ucg6&*^twvIj*ytt1j;|%iDXXrM}3?&rG z(&efgY$@@iI5A0XZf?UXJ`RxN@SR$FlaP_=5iEEKWRZ&IwKH^1(S!SYmES{Qk{zy? zUac?JYb%vmwIQ@gx|aqNC0vBHg(MXTs$Yr!OKOmKJZklyCO2Zmt!a(XWLv7Ta>sp8 z2APiEEAtzTAB69_c=5Vh4#+of>2k0tkCh~~4SCKLdLYh59mU%bchVH0)lyIU)--D> zkt-|4y>WT*qLjT|dsj1V=yo_+f;BN@iO$AVfMqTCjZ32PQfVJ)nd0>7P;&I30ITln z*Um^hF=JyB(_0CY|LwGQRSgYG#7XDvlFy9!-vh$*5_2S!Bj1NJQnlmF!kNA3)2Tu@ zS!}jbq_`@Z>P=8DD<*!R^SWFpr*F7MXl45?lbmF|=J$CJcsETdJ|0<9reg%39LRLIvWdbO#~p&NAe)*;a0t1I8@O=+kQo4YFve1f8vEdnKIXxp9C^5=ei} z4Crymn(XZSkA!Ue+>+&*mD721#_vM_5%G!owA8^;itCNi%Yd{`0GXK?TH`1b@uBs|!f8QecL-3R}QWi5;Lo=B0-;woa z(qvR`ui3*15Eq{eF14k_X1tWlFqR~X#oLpTlBi~_-ge(n*^p$V)9&5K!We=HWU3N z?{dUjf$g;`F^F0Db;m~qg>%XOO?p`abXgf8=X%4`i$MICoU*{)UZeUYCF%@YVnZx~adq1<;OnyDlD>3ljmO!j0jBKe|7HdnZTT4&xeb)=Z zY4X4G8JDD{y>T(+pm#>mm6@EY;vI&*=LFR=VGd}UV<>wxuP-A;XW#Y3-!I1duLm|* zV4)3@@h&rjg=CSroi^EzD9Ak@=C@4CDd6ffo}g`1LEg*a6N&N4_YxA8WFx@k;6MFN z_j~H-_pz~8F>!I_5V;G_&bA{c)Z5z1D$i3u;lDESw0muZ__?loWgf{<=dwtR#>%V^ zux&3<6mzWxGSKCVlYApqkQ*D{E3~^$7~6Ngn$FI-$h{%R{2kS9VdeGamqVh{H?WgL_Ajwz?#u0x!#t;A4Tyu@Q+a4dRI0|& z&adg^NO zyeJ42dpd*D#tJ-N+2FMEF`Vyz6rx&eqPmXa>Cu_J#6xKWL=9HluV$Gj>%D+tQcp zOwdUJ<%{IR8QzxkCR-}!x-w%EG;LZr?E*=2OLZ6I+Ij^x5w&jmcjl5V$)mew(F&vl zj_#++5O}T;9d^#x*opvyD2x!Yi-p&K0PhcwQmiXuhea(z|Opy;E%I! z*?Q4-Gp~DdV|YK3>gNAn*^y{4=$J$*cE!U<2bGDXMSOO7)HcnW8547c_+!Ti(b=jH zS@>Os`T^J)w@0=K!#LY4{P6!H>nsD>X!Et-rw+7Gym*0P#flU3!Ha8gLUGsNTCBJR zCxqhe?i35|?jE$b+dJLevuF3b^M&v!b4%{|%kR3TXTNBA&|>2ZU|abHojdg+iOtZT zQx&lB`hU4~Z^&mV9Qm z;?0SLX(Z!d!dRQpX z-B@nOd&fJJJ8#M+zhl6lbfH65IK? zX*tr&_0RRuxi{-}jS9)QkW%#GV|J4H%<))us5qgb0Yq8r>Dzc2`o^D_p^S_aq>f!5 zWtBoQ_Q^7PE$6ANm#h0Jo6lr5lSjMOeeP>}d7Mv#-7sEeCi73mi2f z@62QerAD*=lE|q_R94$dixl5UWT6;pT)zJerCxi_EjW~LiUgjzL@s)dUVjo49!_ij zplAQP0&T2E#G1DajuS0j{0ED*kxzg-CRSsNvdChjxT~0?*AIP)OIxr+&z#i1xnap! z$R1CfT@khmFx76LGWXOhV4Dwdx@iyx;MsF`YnF+l7lOjcmRcu-AeEm6zSCtaaPDK}tQh+im|%h*2c&Jb z?W*&6u|{+9|K948C-i}o3j>2gSWj{ZL%=y z5y$p!@PPh)Hc{_d2|Nbf=bxUN3d?c==u}1+IEw~BfU6y;`Z_SuZN=yI+>MiF9y=GS z(i%M>VHk<>osGn0?LY3**769Jyx#DFL|_$*fr1P1J+9ao)Ta zDGv`qo?g=}p7zpp_6FFjajc}E!HFKke$WPLSqwB%T(wDjs6?mH^#11DjWH$R8B<_C z5wXYr4aOs0k(`H#iBPSG#^!Y__dEO3)2#&y`-l`$i85ee?vKRu<5VrNCJgr8NJ^AJ z-;e;BP6qPI*+B}((a-JO-56eX_s|Gd>Z;@$-Ip1mA0wJ`{E2&i^WG>7=WYMKQ0tuq zI?yCUpHyufCL$Me(8iS_`hFE-w%a$EvJ7YU8nRZI3|qSmT7X5EX|$JCR#r5SacsQ2 z(z;je$Q?hjyC==}2R7rSx{v3&nXT6;tvS)r(fT}c&%hcUo7>LYZ{?d4c*yFbmq1tK z&Ht6Eu1t_KW(Ul0?r{@J*yKI>Q(bSmZyc3Su9xSH$y?4gv;Zon_f9}lNgS5N9= zvSWiovMC~hq{Sg~#YI-LOD~OBV7oOJR1T&zahTAhGyw{fo|gSN9PPbR(erL9F4xAR zO4zst1|aWfn5*)EMx4Bi5f_!3Jv0!5Y-))GL8x@_yYVnb-eV2>EFHr$$hu*Nnn$&+ z>1&~?8D@Uro<2_!F)2v6@p3;Mt;RaLrUqKu(yQa_87J^~J#4`esL|XY+j=-(E8kit z`@3!(-7{>w`Lfyhor_Uh#-J|omHW+nvA6J^fyMUf0Jixf8Lip$sO;c0lj{MtJf9GN z+f7VNh~{FKAT~BWo}ZoJM0#$qrKQhXH(CiTavv0e&p$mCSg>B8mZ`h{L_kOg#CKk9 z%ePAsh(5KJ6WqluK2!6wg&+lYDd>}z{XuhbAb zSDw}5u1kO9zl-3ucODy*Wa*R=5k<5IyOV`Gx(}PW+jX}0kN$hTUu3LsV-wf9Kf3OR zW8oGGb6tB_mv)+$zHo_5;eyM!-fxgDxhNla~W^ONw4FBaA6n|U-f)qc*u2I8<5 ztSqN1T4}yHN(o5;PaU0@j)J!zo%??eaHdc9%vL7ACM_1$f2FOveKMPHBLmpbA;Y&zXmuLIgb+cpndHX**<$L(Oy?Iqby`C-(*21!S;(HXm~$Et1DBRsPlF+`6bM zf_EvsD{ehtuX9+zn%;|XQc!zHt@UP->U7kI-s;ynK8}^D2JM^tk+Zzr15Xs^EPym{Z|mf52Z{?4`MtqKxUWw!p3 z2OL36K(};ibJuN?=k6sk>v}Oz55z~+4L!aXE}M3r1v6g2KI2cp<ne{*? znVXJ;j}wz{?#^-rWofWa-#+SI1?bX}8VIe*oP7K2+uLr`B^QQ$Zok^Ad7-H(nPxk8 zFkj1@^kYv6bleZ^%mLF6fBh z=G$^%Jm#Jq^&IQXR%yVYaz2c2CcCFyY_Y(9)G4hd(Ct|zDc+A#(T@;d;pWa0DLFrL zK*@fB`SzWidNtnxRi9Iy^6;p#K{0Eb%=VcS4;H(iSntitKBF~#rJ>iD!AyuRv4-TrQr zm&f}-^Ym>TG^G3V`)ZYO+OliLXTD!nB}f!qXf4V!Jf>WG{e=lSK1q@xpgI$=_r4@I zNfhaJZ0BXd>>D=$VHs$K@OarhN#kmVLmO|2g5&wZAudjplI zW9+apom;5VHCmeNwl^YU{wfb?s*rWTT6&GsGzi`1BiAkV{)D*DzgFEt9=%7e6*AIF zhDa~U&tw{ac##&eo}W%prn_8xj@+xAP!r6$H_Iaq&HWGU@*#2O`JC{&J6kRP%W$id zvm6~6-mm?Qn(oC}k1~yH3-CLFK)qi>uk$CrVV0lNo8ENr3DyhHW7_?@!D9=XiT_|0 z>au_rF=n0jlO1~=FXLOUsTBSY5j!64apTUorI&moI`BPpwprQ04Sh z?KluHWG%GlB)>NI+Gf-3Oke8*g|xH?M7p^Lpcm)h{QN6>V}H@R?uz5g>3m$Z2aR5J zoh&8s13gw;r9{P8VQ^?2R$xY~?!|+#v9W3s=TI-6-J2#kbTp}4Uyeex@fs_wbIwrE zemaCN(MAgLrP{m+}@W}Vpn)P@O3RmfloNZ6{4-zlf=@N~s=h@{1kojM(qx%HH*vtxM+8ElKk{w5AO zuFdR~#PehI4v>H#^!j8#eEEHwM|KZeyxtD%`1p_0*GOH)Ds}E+GmH`%q($Fn z?8>HL>?@BUe@|BOP8qEv6r+;Br0vZc`+He_mvT0_VOP6Fe6(W2o6guSGubP8sI$7l zio>cG`k@+p-F?lXwDrO5o)rDM(~&EEjyn}4y89B(8owkG6V|@oRpsL|A2i?gS_l?c z|B96I&Gg_It__3`5}8wybKmaBal6H%OgbH2iZRXR0h{Ms_$_YAYSnvL5v%rQdfsK- z*30;fy=%^rv34Sh!7c(R%d1NCEUw0METznUHOkRgrl@nMehAiGC7oUTBLG7Hzoy)F zuFuZQvVVfyV_7=<@N>@FYr>&~G@aFkM3xR@`!E3{A`)`F#UqE^vb3LawpvpgVNk9y(JnC)8e?i+{PWEE zKK`q6_#mfr;oOnOt;)m8$=W)i<@Vlv`&Xb>UTuf1X3JJNBJIPIq34!ZQnjnE4W&vI zx!dD5^1_2?P+yR?y7uu#6qU-V*ZVT&|L7?q?9kn->Ne0cnH78RkP@_magIfE*3b*l z;AqM!Ne(Cy?T|2>f5C&ei3c-h4KaOP2uqtAGzq9?p(ZNIJD8JX;S`j>mJ^zw(du=I zbYnmt1eMe-yse-akn)F>1$Bg?^WUG1-&A99+AI}4kJ7^9AKt9|>A-N*z=g1vRW^7g zDZ9`h;u zTmu`N^0p@*4X%iG`SLwyjS}Kq?GpLk@PW)O21Of=T|Ptiw>07ETV+By4}8JqyTj15 zoDz?>fnggbgZ^9{*T;5n29E1f5FS&3>z4m~hYL%%J!0w*~Ar-A;SmNOJdPHn+GI901_`n@^<-p)z6wiesM`ch;NBg^J=y<^V=Yq9eCAzo3{DEhli+K%>8X20 zXXBKA5yjc6Sn^n+;zfQ*S#-*a&SA~8ca$ieWR(JosNrW%eD(D6+Z`j3Dv@;W;;?t| z!yjCIXW`|-;g~!TiDlGeayEj#$i&4kSYXh;iXmre{>JQchHir@&W^L7!2qXaG{ zCnt|x6Z{Ie4Luw_`zuu7CFv{Juu^)e`u-}4%Q)BFkZW08J9NEC$Lh^dRvqR=7#B(; z!T7`0Lq~ey8|pVH*CZX&r`6iJzdOpVOunu5$qb~t)9bbv3&N(>24`QQPG>58St+-k zOJG@jRd{}$BbyR`RAR#^wfQr=ai2?^XTeK~ko%QoTs$teTpO2q$<28xqAU@=I9DsOW=9Wg%2;byu-M`rA&J(?bWq2>lfHjD@K92yWbQPf!p#5@B3Bt!aY#CI*xq&OUL7w>I~`qfPCJz z(CfO@iHCqCJsNA*w+GFN; z%b7I~2S;YRV)L`GTAgRT;C0Ik)K?4#-n4~c4HxBF;)y%*zqGdn^O+6bo87?YBl=C4 zG1fW07Dv3qQ&c}%z4_5$nB-pKA8A()nEEg?^}DznXVqh3zK6C{kc7WBc-|y+7}vFH zS8R52a({%=c+{%f^EH-*t zRQhs6VEgW4DjX19t{SWc)Q2OUlChCe-LWn=m0rB{ zzSw{5UAW{gjOIbNl|U$^)FiU(2x38X@jt{-?z4-m>zUF!tVOqeEi=U96?d`bq$VE%0kWKP z_ijiK$Xj|_U5%0&U%F~*an${n$@3D~8Y>ig&q&xBAt=PO6R(;heo9~eT=5q=#c4d_ zIToloqGy0KX5F2QRYTdJEA}Bnt%qDU^*EuO9I(&(j!hhk1N-Ta?B>UF_D-5RWZ(bi zUD$g7_F$LU*gXAY7Xp;8efjMPC*{M%Y8)&?oVtOU ztcQBr@a^MubCE7H-YZ>e4cw{tIxgA(Rt05c&|h?%Rtw$RRPh_GoawOGDg!8f8effE zpVq}eW_T87#;eliU(9U3`mv+7-pi9Fk4P|pk3vh4!Lmb8nq*g{(V&m3!PeMYeGF%V zM~-|#z1Vj!40nx0$+14jT>&24jE)xwq%J7wqBEb=yipF=OxhJbtfehPmW?SO6!P6gbS!Z8}gbDD;)eTWUCu+UYEMc2wgC*=h z`zmA~CjH-#@@ngjFH?J{ZO)WTF?posYt=D-YE~%FYo7_QDrbF+3uB?2@jnPWH1!W-Wz%Uqr|nQ`l2{g+kd6_NA?}*6V{EJRz|=Q_`VHg=W1Q; zUTXlolJ23Vfuwac#l@D7^Lv5@%xN#A@@qQ^7~J`~Beu;x2s_o+JPt{%2)#(t+aW z;~$t0g>lN;?$4qG0_d|eUO3V1?sx0 zeI@k2)7O1yn&?|+$pnns^^QB!kHhkt;3#BV>0vHdP#U4ZjnDF4r-obl*t3%-n!WXL z6*J90PT9d+(s9`6rC&iTO)+~39UkLeRL~(lmVsT*>LZBsBoxT^14Z&kY}9ki4_p~k z3dzvaVa)Pv%u^Bl;m|&wuX}%X2{5MB#e&I7drLKG@1perLi*;k%{*e|I4e_s!J1R- z;^p!Qv+})&>25q;=L$F(B012EtOPrfU|k2o%1tm#_^(ywp5O6a5prAns)qT`hVSm- z)}TYt|JF$vB`$cT6fBw1F`!oS4(GgH59qv#ToR*K+6;uubuSQu(d+8qiEy#l?#!A4 z_3(9`S>Mc|Ddki)tNMV~MyaA76?=$@9l5NRwu~-ixf@j@-70bs>!r3tEHp~mL=v(m zy=@$U93rJdF*e(;s>xCbPtdOF5Wn(|)SVYq}aTQ4(&UwO41d zbEQF#)nzv58u!C1T*k)63YzVKMx+G&YEH^slpe!YneDH)z;ltFPp`swFd53U2Gq0d zl>jlK3oTH_OPjuY2$uH{cBd;3>aai_HDbDcSZlJsYAk+)=A9FA2VC(e5Z0e8l-G-Y|za6QdW763mOg%~%LP{?Z6%Qw(nyDMIE4u5J z;c4G=;8L`nr3sEh#A}k}uv%4@dlqdL#~PG(W#`H0CNW0_c1``Q8G=pltiL!A!e_9q z4p&C>9dGEBu#iU5C_8}ucZHrjVTjyw8)N!1ToNrT$t?vSQu^~0c)0OMsRTpO4U-c? z`oE}2BSTyhD3fOmXEA&Gr;3)wKIms++kYsRzc`~YlaQygnX;kafobmiy&axc>#SgN z9x$!fGyIxH!guP^=w{nHMYK^swIU?vlLI}Ec@`+i%p|%L{lZ=q2W&N-6MnXx89ByS zyC6(Y#jpi?eJ49ptR)|gMp_ySd2mIh;$R}$^oJ~T-K+7+E)Lvqa1aHv(mw@zEM(3%0iib?eXYF|Dwd&Q%RgMf zAjy)w)05YuD18aZ(xRi$R2&()ACV%HTQ2~hP!c<%Gh!~`^!f; zYoE+Gv56W+)QG|}tUy2{sU4yW0JnqHEUQ~O2hnV|3#2v;IjR%GMJE(UDlunB2TTD$(W;fe|3Ug@Q)8JM&ITiLOZf?vuJwC4W}HlGeu!} zSda{-g=9Nof>S<4Y?{6ydLaN68+Lro!KG}m_sQPAQvYz#xqlEFoAmr#(y4)kA`DQV z5`xS_n;|ns2#oxxX{uXgKOQS*GGUH5% ztLESkcEgm8QdczP$N{=l2PBXq;0Ob)*w^tf;eTf%Kp#bNqyM|;2;8zN`qo5S{|}4X zy^YRnTi5#((=3;QpI)@ay#QXfQS6%qQ_?SL!l_{_t`9nc`MzInl($we<85rnvvE*S zuqmAZxEnl(dMgT_eOBq3sjP&;D7}RHMi^eRIS=5->ptlYXx0Rb%}QZ709dnks;sOm zO0bm7sA`v8rZ%vr>zx|$YnXgkjtXcScWnM5dIj5=pvGdq8|$aE{SN}tw#3$D<8?J4 z%6pOvOB^%m!OE)Ys3XC~lr}vG5GfR+lL`=qpSZ>igrX|$G0TcTL>;RmN?VKMMniWQ z0qv;UgnMaP;b+b8F1@KNZ-U2Rz3DSK&3grW_l>L&FvlO6LS7o6|1-C+!lOHg7MU0u z6UN?c24TfzfIcC&AgpS(O>sX|*@|=;<7+Hug#pqXf72esgKPVz-`%nKmu*hv`Q546 z)rt_~){54Dl4lHWhtuC42>vbd3S9w_Bm2CK4l()IGqA){LPJ@@$Xx}{lFIayzNu3F zM!nb9*K0=mW2|vW(Ts0<|CXN30Q2)`CeKAtyJ`9_+P81+)LFz#_v>ZTFsfe@e8o5J zae2N^1@5?BN%sQ)Vx`@l=$$ajuo`tZpuQmeDq$Ynlw^Qq_a;I2!TkQ=PeaxL=#VL} zCS^fixUap(M8rO8OOgX(f_|o!MDR>&+Qskr|0&1(+0Wm*RQTD$q6$q)PbGrcvjf)HpY#?O12gN`X4^QV0Oru$AO_EC6M2#M(>=*QGNL+oO-gchz zKQ;`Y)Bo}7H#bhSRL60VsV^}NP3D-Aa7LMZ35`BZg7USiRFCg~#>a!?#4#n0VOahb zm6Gf*Ft3UCy0ND|GOSZs@dwr z-@L_93Sv4WzG!zn89TU7#Dr z*3^1wYB$=JAyV!MFyV~{Bq~~3(z^G%YSj{hXv|Gz`;JZM0AN!lA+M{O)&f8E`A;O} z&&GjDs%TQgzl*n$CeNlJmUoL7({dSvnO0578%(RS$V&>S3Q?P5Nqr%gnxZk|!HO$p z4A=iSqNT)d7+f`FcGmLReZwCG>ot0Dcd5)JC)LOs1>_b=blP!8A&9*&Hr`Q`4SQlD z3I|MHip8ars`bwGtDlQ!XP>+~;vm{!<;C|I-dy1P1N2{l{MQ@Mv(!Tmi9js_jMTCO zboXUqez#bl*O6CWpTudk`;*9~NfP;=haxZl+X^}txCwri2~8H+k&F~(Hf?YaO`gI} z(~lHe$gdO{QO7PyhP|2X`wZcOU0FKP8O7;hRj!yUH3f1G`TI9j+#*7%zX(B1zX~Ei zfXacfEz7kWwge`8zsT6gw)p8Z_(N}$TXs*sNdRtP^!mC)KAlEsgzRY1V!=s%_QC)R z3HvD__a4un#(J?p_u2#A-Q8XFjg1XTmjfUM;Y>|O6pX+BZu;+=9`YLEwP8!`6RmR&)vnP5U9 zjlL@nRoNH6&u0JHx&QjZy;%1mdtwGoqoX!AHf{~#`Iu~l7Rr!4JHsxx9*r9s(zNc1 z8Jfq5i4W?F2^#1*-f;uDnW|XV(~{qe`N^p@ghD=mDFVyGxX@c)nb4}!NVK|50_^}t zXXkOI>>W##Pn<vd}G!!@T)H~qmf6vJiSpSS-e~7}{*%~SrE8=`n zVuW2Bmh#W~YZyYP)5R0E_M%#p%}JD#YOlI`%=4I&z6Nk#@UELBB;GfaAkr;mvDi=n zq#8uLXU54lJ(oS{K7Z{3@~=ix8gu!<-8bSB{V79VxOgcYOsna}P~}LDdH6X*6$STa zRm7VyFo5@n{pZzI|HOifQC3!}OOdxEifJ>Oq%iIyDr-S!jP}IWr!uh_n9>`)7H)yxy-Yn>ql&l1sxL(cI-iiLFcwvq!Y0-z&d*mw*1k+1`OjMe zwtU1$33zrNhGlmqSV37->C!H!^)skS?3Z0Ot{ts7-t1^zA_N&1p(J5F6jvD=rx8L+ z5NLX(plxk7C;ZrOYc`uAW!K4`y?7*z8d{0gUSNh9*hTCqL-n4Rcmm<>V9SvqcRp7U z=U3>s?P*~tOhrmn8#TUj*Jl1e2mp3 zVkT+?a@i9-1nRzlg9Ud@RIM~28lElLP8^^DAPIYV|P`4Dz*HduSXKr6occ9 zj_0^*1}vfjx?n+63-N^EXvGTpzb9&Nc+19zgH32{dIt z0!lMPN`^$lVVv@q&e%<>gPr%cZ{MBXCO4BGuo-sg$EfD!WoHLaQ&WfV3@tPrn5fYH zU&TRvX!aSdlcinHc@~oUVe}eymO%_Ij>>IX?@?#}Br3E+bE<(g3zGp(QKf8YOlC7> zno~B5s@I*PV^1+99!<)>E1&eBEZF(_-z`l~=RPYuCIqGG6cEmG0(9$wr^f20r%~{| zU2;l_*-bVmDeGmyxprJORrT0^hA_aK*hZ{d0k}{8OcQpFg9^K!QAk`EE z{B-jQ9dW5HgJvl;=vdh_)9makDOA1HmE`4Fbg_j7^)YEaZsF)S0tJqc-=O7I2E72WEGA3v4BA&%PBkY43HL&4w6&%d}@7puZap!Y_ZjS9@;Ra|3JF0v& zb}URFKtR-=$Z&%J0lfw-SCuT^)Cjn`@aop@t#toz1x07SiCF>s8v z_~Mnjdp;1lrY*$H(3lN}ZJXMl#grhmc_osSw9K(Hy~T|)rDLki7*?}qP? zc-qnc5hb8kqBxJ`OVQ4VlSi#c+2l*VMLaA`Jy8zIZdFkEsIvQ|>Q~2vT_&r23S6?5Zs5HsJaONc-X<_=SJd}>32XD6z=ZHU|&^a&h%H*0|6x;-M) zi~zVnEJ#oeZ3n(4X1+)v=G6c7#Hg2s^LYyq?F0v1blL?iBP&lU+Q6U?;a@SVyTLB3 zp9~qOMTc}L5pH(s5%MM*KlI{;2MD8ON}vu%bOhbfIdh5 zReiC>=+qp8l3S}-DG&sIiBF9SR+pQk&GAo7{0Pj&e=Z9*7bbAHQ*FJTjww+);%-ZR zR}vlmtDlDmwVCc; zvu*fNSN36m&<L&#)?FYTLGRum`%P4=U7?VS*UK414 z-4urT&vp4AqvsXjB+s;v*x82R?DdZv>Vo3J z%qcv?sSi2?l|clryjY))eCzU4sYJYX{z!4ALAXj&#FQ> zZ|Qg^_CV*F$}1fdLy;{PX2}GC!oBg6 zIOU8_pL~y7D`;)Sc=M1*jY0OaaOpxIgjUal>c}4%`TM3S`G`-ZcWd$^!=LfLdW`T` zO(GlZ?D?zV#_AAp<@MqpbKrvL4Q}@xY*}pF8IgXqb0p22KP{A;3{yZL@i6Vp^UL#- zriyfP!Fy)KZp%$pDR?ez^v~p9?=-+w2*cIN;@k}A&I8oo(IraS+8KEtoIJ`i;73Jy zww4K7-S(`SHi`xn;DG`NN#GhQ=U3)i=gEGR0_FYv#>IK2`=2J_J(y$8h|&2hPkSd@ z2aeqxGTi%nI>|+X(b+DRxtb`pvnrl63VKfRW)ER@j*kIqJ{V^PCO4WWPT zh3^!@_gA+LXI;&I^sw=BwP4}$=MQDio)p16oZ^36@`(vPbR$iN{}$8%yU-z&N)D_greacbXoPS_HnAXQ7HoLO@{xNNNDvl)%!(Z?ZCH zuKSLZ9;4!fghzW0@RjU8Xr|bK7M2j=c;u%}3Pzv)OB6~$$@7Vb?yOfG1E%R0DT`#V@ zG58j!cNh;-OUM&$<<;J+Q>Oal1!1_?S@m#{rAHwOQ`li8{+}7yT;CYaRq4?i zP6;IQ2qN{q!gRAU4T`|W^SU^g&D3Ssw*{+#-NP>?{z87{d^~NoX9zTfqrwka)PMTx z7;H}RmO|I3q|twgv&}M4rBJ8}BsgE6#51OJ?VF05RJ&hVUynw5#d=y*1$78;i!FDw z5d}t`utkpn!{3&F8{e6@ZyaaJ{FX}mtQ^zxbM|9e;)i9*z&)5VUx_)xr`5QB;_-jC z^*kU=I|34bAPn|8rJ>}f$n8rt*h7yG()7Nj|MmAupSSoe$>^=NZ`NZjQ*>`IN{Ok%|ng{Z-B7IOPjR!PZJFAq0>NM_fZ(6>I^ql}*NnNV+x##Dt&*pa9X z5`R31fvVb=&Cc`EichMxx?QJF2JryZ{dA3rZtAQA8PoEd`lOywQqZSLLbb2$WBmvJ ziVptnNGF$@rYHuy&H`OBBJ3e-^m36V7~CmsS6-Vwe-1TuM6VQJEwJwcsdxdaU`2i5 zc9l-HeeUFPdqQ9OcV0CFQ(C=dQzK$bZN^=k_Lw^7EX7}kGEYGY5X%UaNRL6fv^goz zSm`sXHO$Rs7}hMVJ~6_kn< z3@QKhq=hx}os5W_$x^Ky-Eig-;)VR4t5+W6NA5UsE&RQ*;M+x1`=QxISiR|IcvKDT zmwX&7Etd@?_Lz4i%1RFQ5qnhnnDo|&0BpOBtEI4oIuL!1vGy-8hacGi4#2+iqrz+{ z_IbmWdC&tG{;B3pc8k7}{_U=j7r-GXVz^ zU%*s2RMjS;Fg=DGX0Yja*~Hqhc0FTQp_Ec-eR=UwIN{xK!i3X(s#Q4=yD`O51Cpk8 zfpOmihe-Z&bl)pqpgUgJ2Xnt<3hlQvHO~lTmgw1p1p6XgYH+E*lr*1a`6VP@MM$IL z(&7b&z@T4IMf^q6Kg0o5g5<=+{zlehTmJ;c*YvD37)oKgRg|)=ZjQ-C)eZ*bT5>CC zA{ngjG<6e*Ne)gTsi75Y>Xdgp3ewrG| z`hSJ0-z)t(n43kN5BA+PfEUutzB*3^X}_}l{cRra)wxp4Yegocq(pPrqpXv_Fq}hb z$u0?aQ!CJv??c%?Zs;yW#mH)?K9E2KPihjdg!e7Vi` zcm2^4a9PGU@L^ih&lr6zZQj!42+LdDG9E`0?x3)y*9_ckT3Ux zu|q{I=@>DC8#Wt)&P0Ee8!p)yG7#c|3O^uoW4$uOU~lL+e3c57C%nX@j>b5Fz@O^; zyj)a7ymi#>m-=Y5W`A_ox&6m%BQ>>z2|%rt3t$1h4R`i|6OsI!)XY{^c$q>vK=6Iu zSdd**Y$q1sjOrlXAw1OC6Iykc1UTu3ZC{(fvrORcv+f%&l{ne5J91y3nB8pC9=P5R zxNW49jXpFt_Cg?M?Q9t16VVB})&FAp{y8|?ecLb9e-3FmF6}@QQg2ur$X7b{l9(AQ zxXe9bg&RCNvNK26uOuAV17tG<`PJrYEQ%>XX#EjA)aDdZ8gmtcKF*RD<(yDz-9|kY z33}Y7ReD}3W}Ip&!1?d~8Gq)(?N9F#zefw3T+DM33GvWrnS8PxoX&k>MVR>)@!|au za|X?>H54hU?VsutLeB)y||6LeqK{&`dPzb_LUNM)s4IFK`*xqq-FnV}Eddp_i) zu3O%#s$+we?57-XwJt{ohN}FHMD+t247tC3Je?nhZ<) zxw`7-z%E@?T^yb~Y4Pps?IA97bMwRS+OC(pMmxFJ&;cZY9?6jOHc)+?N5}P` z`uUKx_IU-Ln$i$7-l>Z&Y8^FygTxHQk&iI5iH+G{G_ePFYcot*^D20dBs!dk^R+uG zrN*Y~X^!lg)-1#M%j-|6Ke}Gz2N18rJLZKCvYhwJ)Vq$ofilSKl+4*mJ8DEkfs`=< zC|=1+A;^=}`nK+xa8yJTo4*Yw$!Z77A$2^cnm=DX+iht`A)E(i%;m|-T1<^kY-3t^ zR6Cwm>78DmH57?JW{It|TSN4NdGrbPx6{+2_HfSV@k-O{+%#&iASyOpSds-cnuR9> z+1(SG=9X5J|D2nM1bkhO=s()Nz5KAncb|7%py z&4fz{t@CTY@8-~dP-8OXd#XEmn~<<9^GSy z-~;xeOUK)@$j7r`v0ujJ>nr=~Y-z4lmT76z^{#L3*53z>UN#MZh9xb z-Dz(ZARo=wZqySeZkOa&_P+sX*~P(<^0~G!3fmr+b=K5GA2GI!8=jSy%ksSua*cyy zqQ;4_xdiDpH!_+&&Uf6C8M@WwxYoeI$%V-sy2@csj0hK{+$C7+b%L?_9puLm9YbTB^<#Vkum zNaTyi&RMEJd65OF#;gPlw@dE%m6gyRfq^^Nj~6yKSJz0JoQn&mo8FSN5hCk`Xh3?s zy}9;B8{6G2K9@B|@_l_%S}K+=&(eK(37LO5#5^MSxJR>n80TV;$JZh!J5ll7mFehe zU0wm2EGi(+-#TQZ?st7T{3e#9l0isW`P5;rI2EuV!r#uuze*Ihn%|v;*O#VsA2x(q zp2O0Q63iwbq{2h99T2}^1=aiCB|olHo5z+HsZ$HR9=)&8oa0jqC9i~szD@%aZ^3l& zVSOrirco`FV{(P(V7@tpsdZQCsR?t9)#+)w^Pp1@MKo>w7&a!Ac%FQyKAhj4LEhLn zph#A{Yd}VoXE#4KlVQ*V3r8|y%z;-CIq|b^#RwNug)01$d40A9h8ZH zmVF$QAyaJcSIjOMrX@$DyHKPz+c5BovrsKfOx1o8%9SIrQ5`nPC-R+dN_ULoAmJs4=l(N8!^1Y(Rtl3x8qlFFp8FgOxd z+NkvSG%<-#S8-AHHqGqlskS!PLkF`?z;Ys2}0O{OSCx#f)yf;1PfIwVbq>bRe~Tz-_TZM|LW7toEQ zVnhRLa4@OnDmhT7Y(W?t0Z}lLR~-f@=*!@z+%6-J6o-O$>w@^>Dx|u#zpwmZFv4Z$ z-}{-)t$V2|jlReC_D4sQks|s zaT+k}4gYVL!+a%g`0o_X;DKmAeOp^!nic-_7w=JW*2O-M;w(Cj?eZ^9(^RX;eWH5B`YZ#= zsr-?Jg16#hY@X=UjK8I3>l`5w?V{*h;YPY6Vix`(y= z(fsc3GyHLA#GRa&7vnzv#T|$nCOG5)-0>KF?mAEe~kbT7PZ-m9y4KB<})1Nlu)c zoH<=@YDT|^o&A9LP)fvpb3CJ6boO?oO_Ct>WRKl?o%(uT4Jw6OPII2jO+Uqaxb7zgfeqM?RNqBYMXzPc?8v(xZ)M=tbzR63RGqoqY%~{6 z3qb6Zy7Q-^9C_fhw&nXFhHG2SW&gM$6kGGMAs;^JDL!bg9RUTi&5f1N4u{9Z%aLKP z?Pq5Vd!@QcJ)ooZcRrOwDGa}uD~Cxzc;1}Ra0M-P`4dMBrk`u*L`4t6n&^Il*DMErs;%4&k=H?dqk?lNPAEu1v zNNmR{=e$&n6U|e751vfr6b^fH2xch$S#WC5SH;t z>=(`$lF)?g^^{~%B1QcnViaES@pb00f}0SV!?HFbI-l+c1q102tn;_*AWdl!WaQ}8 zofj53HYPm$hDd$?MW@B4?faS<6*Q7TH-}&GXl9c)PMXcD9#Yjd;Hsf|?Fg?UKeBC% zyVfJL!%Vhl8?SYu4ch3vj8Go(jekTJF!DF(=wr(d2g~NnuIL7xdrn81Jb?QtR`d0s z4HGJ$^%~d#)CvwfaKrnFT!CzUG;R`q;wSMYrlw!K>%+yytmbQWOkcdjvz#i?DXbk_ zb^?f!iMcr`B$hL$Gk#`Y&rAnza<=3? z3b+k7E{i!YLojqaH{*EpXjl!-}i$QybdVyU9|wI4meU-9sRkMpr{-4QXkl ziPw=fdyc)9N7J-q?R;5i7Potf0Ftnl(p>=_HT#BEcH4m=s96IHvQ)$Nj;t_Z4!d&J5arIVlZ7|E@cUvef#T|+}6n7}@?q1y8p^&zC z@nXf@o#K|_6u02+Zb1WtfBKx?=RMDPxyS`K+05?F%#M7A%*EC*7d#;phe1Z3R}t)T z{0ng-7*nJW^4Vy@sgCSQfQzone}4Xer{=JjKHFDge=soU`DXsG&aN7;@fFd|-hT<; zU8P?zL)fz~pc=FXn(e#!d8qb=7vQ~d*{7>#FM7#jRZup|^k$@YqL8oSG6pj83IuEK zu9@bUH&VnDxz5EeU5CsyA9nevEiTPoCpDeB0vwlS^Qv1FZ|)ql0Ak_~xxgCD{I3ts zy%P}>FZYAoobGz6EMV}_m9DW0iMHucU4zsbx_#_SH1pYANlsAuDEJIz^&C|M;{g@@ zZpFg~^w@s!4fSv!LuDPJ5sul_A%Ow@8|@Pky$D)zH3^4u&OK2{JRO#j@VD09#Z-`A zMd~T(O=J6|&JR(#yH8u_QxVs_?Y~O$G5TXcSrH_qqfjAAm4P~DDVsdbsnh_0O;!YW z&K{#*p=VFzKUIipe20~gA2!I9$Yb1MpkUO@t*$D=VXDMq$NW(@cQkbPML0fR$_4&g z(_j%P>@sb%a_PP;K&GjjT|8-zm>sB5rmsIdF)?K!2H}uzPth1dK599TAfp=tYRgk2 zhS|<*wlidS*m`-OH|79~?xPfu6xYRRuxIiX?#+rp>^FI(9E~Y#0WrBvjTL`1x5m`%wR6 zaD&Ib3Xh#fAO~3#zcAyyBJf&KkSqXW1!l$lSF^IS$=|$U!HnWU3+G3R;x~Je|8O(t z$6L|4KF&iKKHux7{(S1tvMq9+$G3VC@V%kNRQ1JBq~vG&d8@AS^?A|y-X=%~ek)J8eU%oy!C`N+F_Pq|C*-LGf+t=JO zg7!FIK2RohGv+kR#A$WO2S$hD*`yH5mlmYndAdvO$`6^o+@cW-$KUZQBJr=Dzk!_WLp4$P=~yTO zFajS&Op7oBF9>d+slY339+l##3Hn=zKP1h@7Hs{3I%KM0$CWnyKrs6d9&|71KUmc~ zJ%CPf5GC|@@Xd)J-pbHl_M-HJz{%Kt~l&+#Qn`PX#{FLJse` zbj8jg-fQy9-=9Sl1H6E`m}C!`_#S7BLf+kP32Z6%Jvl`L{1j&AG$b`~ z#we=K{`gdS9Rpv2+D?8beg___;N9KcA@RNP_-%@cZi)QJzzKPBBF;dAeDv%idGWWF{ zIHokYDvt9$S)iR>Zg%L;XV?ju8=iVOg^ido$T_6#`p}yZ8F(~n-)$~=+`kNqRkEkO zOPnEEtVAIzU@Z5^&u^k*+w<@s&!W>fo+ubgHBq5{%r1Bgx}Z_tM$kS+zWEq6GZ5A0 zNgTv4>i5!lJtiB*ptG(-z$-Lc49!)Jka3@72evAO*@Fot;JOEs%hFk@OM@YT?Jn# z?anPb&yXwF7>xddJ^P}|#IhuOJt+ynwEBe)n?Cio7hodr%%k5E_W%2h;OpmefT=1c z*Aw(B=I1Y>kBbx7uRdAviyu_$IbO0KURp9o3A60*kGB#OAB>oGRye-2In<~FsOR1; z&*O(?hEw=y0b^x{TF<{e9+u3~@HOumu0L6meJlS3rV@d@Jp;tJVf}YipVC&f~5p_s;d%1-X}f7ic>4Y64p6i{8#5oSU5^Gn6)x(t}uMqqKaKl+F!Q znEx6YxBl=f#(+Yx*${_@Hrc*@!)8#^CxY*eK|ww>Xj(O#{WCK+@G-36y~QVXR{X&G zu6xBF)JH)?n`2%}8CZ~gI}BD)qAL-M77^qZnVMhQG%Ebd9fpv%ge0W?%d4a1p)O z(14_&hq>ks{k#6E=B})+%NUm_+Ek;;LB6;g=;K+*%Q;_=GIB@|pgtbFgQKd>awg`Z zm-LVg34{g!AD2DVH@t){7A&q^a-cr`o%OQWJC^6)d5-R$8trpN1WM^n0jKi-*wbz0 z#2Kq)5|^E|LD(_sBG6J&mf_R_t(x$=hj{P=b~5mM&xP}ee2My^*r!6IJ7D7F}tK@ z)hqQ3GfbqU1z4j#@o9A(#-4M54%9eMhUcXDtUm`r4%h)ng6&TN>iF)yMs)-}R%ix`W|8xSihU8WXA{sli6@Z4pm2SWUcQkGr(VJTG+<&Y74hA~02AN3@ZZQ%}(@ zbT!r$#1{%};oOs<(f6ZWTlkiw4+2T|U2DzZ=xB}a*Vk|0m9|zV$WX@`8E4>97tn-* zA3HjkeywRKIO|f4-@d=Am5pUd8KAIBikA!ymOvJpT`$mTibS4DTUBbmO*}cU#eq{5 zW@SHJG2gY%?_uo=fn}_JMh>^hN$f;)>eH3JUzwrW%X}%H*Qm~&9Ven?0nJY*L{f8` z9@~nCQP`$f9fz9-i7GBG+I8ZqY(J1RzUm#F7@vf8m%!4QS+fo0F|imFlgImxolhwC zw#w=j$Nu$HJV_%e6~`slJTXUK7n2Mmy%bLB^oVAw7#kvH+N@Ef^Le7?Qqj|a0$AQ} z_rsZ9u6WibH^pAvr~2!8?Kt=XH6nMyxk+#VKb@V77x}38U$AaAla7C5ez7-?5g2f? zWq@}gu7-Q*`LKyl9;g@tyy;$N+k`YWWE!rk{PPg>71(6gtF!sI`|aon{e-!?C7*>1 zz{^Dy`&F{ijRE7;@8OMiGaVPgFCx7-`k)Q=gS1-4eRH{^HJ{Ezj1K-vI(Le>M@->s zIRBY37qlh{rsDQ3p4EoDKsZ>p3guI2dXh>R&??8zTCK+L@jg-2j{W^D{6Ym?(jvHo zVTi$3=%lU}AZr@5Xx0A=3q2g|o8J>-Xy5#%GV8uSH>CFeAS|9f#%4tSZDRdtfNwf3 z=&2U6%$F~T)wu_%DK5e?FycsH%LWAHm>`y31+ih!8Knl(FX$I8;$MBS)9L}mh=^Rr zxBz5R8>b%y$a~B&?p7DswleK~p9Pz;l8%1SXZst3?^F0bxh(--UU_*sPG_?o&(|=2 z=SPcU#)ul&y#FZ@kTain9B_LAVuw>L|Mfdn%Y&~Y2+T9zQN6G)yy!r;(~5@wDO#>K z6X?ff?7s*z<-&G`e$e`n&r^wmGlpx|bpC3{2yI@Rg_M34G29qmtwX!N8H^Kg&h~ zT;f;cZoHAEh7e4 z^Fg6in~&PH=ZzWw0F;f4&ONafCzCpD_1-#9^DTd+Ka>DVaM@F(Hx_Vi#a0MgP|;DB z&^8!2)yqfHlX2ICWahLjYNLSF?aOQOQW}pBhQ3m!N5|QA?{3X^W}BCJV<(gnd+ux2 zw`!yJ39we;y6fKzAKth%Y;bWEG!reyY6vH2Wxe|zP8#!&H7%WZA`H>exR(sv6AdgA+Ehv9ffF#Wvp zszRzUZcrb?NSr5e;1GBauEWuwyT1X~T&9p|z|0)0;UQ>s^_u!7Z)-}HLiW9TCDQ+HhezQB#=^BE8P1g44R3$BTmH#Uc;5u5Dt#Qc_1<~W~{ z=N+VO4r6@Q{3}eDL*`31-MZJ%SiD&gRDWI?SnUp`bmbHwed}cx?hY4zIjLKjxctE4H%*{_G(bDAao9OB$x_jqhSyrj>bB?mgb2;ZLjo~z>M5h+$B z^ajqXtkiGl(QeupG(veTqJg$ftY+sUyJW?8x63zz!UYAg-=CptcWdHNX0T;3t)@|J zadY#)s?A`zzS#8d8F`M0L5KKY2V`Bfxt;qD3SBR`ju-=|%#?L| z{vaV9TsEsF4VeFuY=Sn9kYGVOD5bfn9v(=dr1~Q9XHs>>T zgsEJ&M) z4{p}S<+x^~)F{Dm5t|Fvz5P`fX92EWtydMG10)9U&mx#*a9DVIa<+`E}e#~B%eYs+P z$w$A76*_zWPmIjf(X({IhZH}!_uzuB7F{@U6kuyg9)ibtcyH)apwTn5H}QUT!MFH8>@wjW7-bjqKBQn~#q)>hzTDX@%-+ z`(^HD2gE{m0A~yt!u#usz?X19C7pKM(WIxT+SY*yEs~4C%hQ$@rtp0({_C_V!-Y)0;Wc>gLd`jjd z0Z)h(O@M#y^OW#Mlf>EJ*SyF=RNwDp(lF&@;q5NgLhv;jlm5^an;qkk_MMI zruR<(`w3EN^2>8(ljb6WHDQd3-9Wj!M@7%m#`z<`tMj(gm+iPzTzA5t*v^%Sy&}DW zJtb3T%KaWiwz;i^3n&~npHQ=H8&4klOb)}7lHSR}!GStiPr}=KRQBur&jOsYeH_(O zy%Tld}qF2Wj+%?C;LvR%{oC+ORvMlMY{8dG4Mxi@!-fG6hsDA zM#n>amZilyBxy&(!HM5ZShUcF`qDgjB4}-2wxCzcn4o3)L+F8^ z0Bu{+78%&hkX;IYDqE0c=OXudrO1K`+#4riFZz^VI$Z}1Ga<~!47~4M`qJZ;N|roP z5GP!I1-4DrU|hec_Hn2og60ldd58$$?^T!v3V@g>zk_$TpD4dlRKjMS&>yHmuU~XW z+LmMoI z|DVgf(Th525_ki;K2!yy{{>VYMOr{V-5KyM3=H=)5JZ?G)z?K`?S*=V=0CdF-l#Eo>q|pMTR%Dqo zS%j(H7_sBa9e2g3mr)Cj_hpdw>rulF-~;5i=6vdSNBE%+$G?g;$T?@;Ejt#z;qzLN z&0AS)Vx6r(VUz8uuW5xtKiHuo7$x^ffW^ce>U<~;pW6!<@; zz98Gl7WB)Qc}WRz*YjD@P+4-*U3qX#*BR;KH1qS~m&JX+E%8@ZR8NnJ8-5z4%@_|?RnpK?_+YI;@F=#Qye(-@~>`H3(>^-hh%QV?)QA*}U@Q~c@mkC%hkI)XR|?HK0Bu<6O? zr!<@F;^nnV3>cAREnmc_hv|6&dNN@TSK4t_Kf+dk8FbKleGI(ifIN%cx8Un99PhX8 zXBSNb-u}9-075v9vJ%j>tikeKzS7tbf}#6iCdz8Ti$wepbSm+oqFLC60varH=VKVtx# zw|%WN(K%0G+*vFwlvelBI$=>Rt^ z+s+KcEOBiVlQ`#E6h(&Cqq3FypZU}3{Cwx^5;&9L>C60U{G@yiAJQsx#t>BSbnDYu zabgg(=aw}xVn2O6NazgkIZPiuCdkBW@|!-s((P1Gwgnd636O%S?5Wmj?Y8Myos)Mp z6ZpiU9)f}@rI?69B(@*#TXPs!RY9L6ZZ?k}mjAF!a*;NL^?IeTJLoWblwG*gc&cdI zHty}w9UYxi`o|7Z0V=XuPv;E(!U1!0D3vrdx&GFgaEtO*-?hHL_)zjn_;Ezpj(o?n z7Y{jp=K=Uhmt2%_X@=`i@6J7pC@D0t=AcWMqfajQStRG>D>mX-2LZ*)@5l9;b-zwB ze3m__Zh!9NYw*SZ|nMgxM81W64V+8=p5H@=9ew63q~@9O&%du;X_ zd%oOt0UZSc5-!}Uw<{S$CZ?*br*6{c4>{vtQ)DRCOaqO1d*3n}kvP%14snp_u)kB* zyWjyx9@uKqQ+Ck3kk$FDgRiT7x-1qsy;`5Plg0QR1ekQx_7!4zDi0L|7&l)TzlaTj z@`h=SQDW_x#Z#hX9gFh#HDn6DePf5#s%2A0?QwxQ4QnkQ2mF~c_)o5Fa*DHr#LCHB zN6#}NE(b0}Jba_>W}Z|Fy?h%@P7`KSO$)|PtP@IzfEo(m+AExTp0r7F0c934W#xnt z_exE{KZOd`0%uoD1B`THVw$%j$u84wSN63JZ{F5eSS(|?U!7z(){7gFo@DBZs!~6i z<`#pTl1i)QAK68lqvkv_RU<9ovRLlL>-3+uf;u4=>E%~r#r;ONeix>I=Nm{IYS1M+ z0BTKG4MU7lo}MSap}@=S^U;(5|xR`>gDgK%USmF z=7aDcTG&itDgdc9y2L-FD8Hv&TUIXkhSF4c7_Xy%_fglm5V$O{_DfiwTmJa5$(`V{ zK6B=o1;r!b-}(Xnt#C2Twa?(OYhA#NF8nJ!fhQk~aAr%h3ddrrY9>0*9vW}oKa4I9mQ@u32Tei{u!b{Yy#m1vqo;^p(NH~Dq z2)s1U=Kt(|2d7ZmJiHFecN{w5JEkm~w0noofV zZf2Y+!iJiU$53wi(ax`U8y=>0PY{~WZ914f60f?Cuv$4>u;lnKQeZ3wJm{~T6L=a| z?zuQH8q!9mriodr@4>>k+2!-9(Q#9&uo!mz;UYLPG&72=Q!3ozc_6h*DLgFPj-y2- zquHq-@hxEL6Reu+@Z0;HU5|;=IkO=`jKkJn=fLZSD#NGsdBK%z|GCQRD0<=MQOc?N zUz1_Cw^k#wR+jsRu;>1;^3h^%PLXfS-TCLc08fy%ZqYckw-Gi1D)L{#eC#N1R+L~zA( zwsi^JVOscE!Cq4%z4p*%yftaNdv6%J_5_#$gLF80zA^1*=0!ijVffU>J4YknpZ9Z= z0gJ-73l@SMGCX&Ry&7*+T1;5xSm$ zYTew!e6>PTvnK5ai}?P`ap^8}v{(GR3y*XiyxN3dT3+fsQhwKsOla7FT0~-P+oCBXWVD&FfE;nzV znm`pd#JU}~a~sv--}|55MUwC}=;FEKCs9AO?iR=n9(11jsa`5tD<&V#kIm&ocHLy1 zW2+iWOfWx~iz>PVj%4V1{*4M|>s)II9#dkOh?!iqQ_HorcF-qbm>m|`?lJC3hZZDd z5*Ou+?ir^yQ@fjt4ui-}=Y|euRN#~u1*{w8ibR=whO_8=usF^H#C<<(Rz$Mszy_Q( z92{<*9qJCY1@hR=;1_v{D4#lLTK3afI;`Cd**RC!hwpD47blm#BfuRgCAApbv++lX z|C(V7Ybx}ZnVD^2D(WXOp%0f%-2*|J>0<}0qL-P<5tNSGZgBUzaVrxGI^B*E>HC#g zqmesxklR14KJ>F6N%ILv87k)&-=pRbG+3#UR!2pGM$aqjySyV^PDoKJ*Vw&l9M#Y& zUO*q_1;(cxkpF32|Dp*8NKyP$1^-G#P-b-Vrrdx4xd84J|1aNtA?Jb_biiiHz8b$H z)-MGSu{CH@v$-*~tAuN5LvzPX6?{Z>>t$HE#CT@9>GLqbS)m~9C<{WsP9=>9`=11L zstH9zj7hM99)M*~B)HEhfzB!K3$Av+naX+?9uiFu+@BC~T6D zQS-<8Pmywc`2O%x!s@D63G58wgXMV-WsHlH2C86LuGte5VjsD={%u$@5yQ+13xpoB z6HC_KcY6vI6fnU1;Lrh|Eg&9wl28CWr$`bJ5wUN2c91g8ush!{TbvT_*&MPAkC5@J zY-*T<57?n89vVYt&c5p~5@nx=DDxZ9xU-rX-Jv-RF#o~^=*?*08$akyJqRty$#rn) zG^XF?abp=V7WWPc`gX$#a_%4>ABbWrjv)TL;@lXcJo~UTugS6*(AGh!FgGrAUI-(= z>$b~wouxZmQ=l2CQZERu2stM*&@|=FS069j%{r9nv3D>^la(KuqbmO4>ZS z4*Bfc^QvH+jja*(l3V2rTYkON;onoSU3W1q)%-aY%0R-C7>`T0kjnPF5}Q9@KDIg? zG60*|=8k2O#i!Sh0js&eZP%oz&_bg#NOBmDNLFqAr#kxBi$ZAyqJ*Xh8Jb;`YFtP+ zR`NrKZ0wMFl?}2GInK1#TSksaMP6iwvs}j*r(XyN6xVIqFV_eU_>vXshhJ!JhZwV! zjw!nG0S!5Apo!mIujL;=I(6PpZ>ddCZ3L;0`5N@rrUdFwA~K7FK}d>whqLD9SZuow zJJK;=*hqK{*62986?ks=xs!@d?@UNIPUc8YL)n^Mmp>1E+|mB{ z=z#USB?fv*0aa(000^47{NSr-n`NuF>~HPU7zxN^)>AOtly-Myw@1d(PCOFOcV$_f za27wr;G{R_$XF3D)adjdz{O6=$^;+bczvUzFDuJiCHA%VF&mNQi`+RY5#cFQJ&7qW z$?TjgmwKlWV{=@D(YTj7mIwNdM@;u~p%Kan=@!tNghVw&;V>KIA2VONN zNiN!>qcXLj>62^qbYa0tsUIAyqdR-nWz}V^48<2qyi@7$V-?#s$`uU6ineb3^;Fz^ zB4u&&yxbbf%2n7=oJ>H*atGV#`55vQ$vWT8qY%Ggn|&=JqVMx`T1$f3C4R$7(dx=h zWFQ{isX}abQra!AIN9I-<{y2rpe)}LTE80infyu+ zh99CA(7F+CZxn9J&^FyVy1aH}EjS-((6iU*rq@@OjPUM~WmAw%bz?-Ta_tJGnlC2{ zywyRY*b!!rQq5p#VHsJOX&a&8_*p^FK~n;mmosgJ^)U%*o?mjg;s-+q1kG$NEpUZ5 z<8=l~9Z`7sxZo^SBM(nFs&kId%vQ(3*h2MQU>Udj->9=mmAbOfmy>72&!qdwbpB#4 z+FtO)39pc_X~a=zXg_M@yN9^L5L@vg7I7l=gSY&nCq}9ZS)D%Y>A!@00Kmt<<18YZ zkrbyt^^QG1Dl=&rWEH3wzo_GSym|f3*0cP2?XH6i>B}qR`1k#;P_*Z3fD1@p%Hi(~??lKCx-p=L2@boXTiDeY7-B8Qs}RL!io?u9MdC+0oH7m!}*H zelIM4q5QP`0u>Fq52o0-VrJ8g6H|RQLOxmOf^+G3KxlGV4x0dMPN*3el%HFq%>_vU z-so(65yyEpA}gh6aCY#Cul>$3Kxh&De;>ue*J)grWfSXP5di@d-p=c>1(DX*lNK|g zwK(DDB%)+nO|z+mhit{{p%;Z#2wE-M53|b^g?-r7nD9mP!o6B%QrL23A8Jfjfy4MF zc10h9Ac`FYk_1b*DDOSv3--5ncC2@H*kE0ALpA?=Fy=t)2Fm*l{Z#+N4ILB z1|_7sJQ8m?W@f!f)Oo8g4rfi!&K4uTX3gTWmjB@L3Xtb{^L4efG!5Of^LNoMm%6qX z>f-f#MhsK-_>duJAAr{$&o}?j=V(2WO3{!`y_OF~DHruxc7nK-EtPy>^228{ ziU2-}b^R^F#~l&Viv?BabZZ`~?_!9|!ITIO-i496}jXgz`l{?heASP1$X(lNcdp=T2|7qqk4Pr9WANkw2yV299 za;Y*jY_`$?HYHNR)xSuWpcixY-1OnrI}t`>u@H?iRm3GJW`Bl3ad3xUemip+_E++P zyspW{cr5?vh{2oGo$o>xl_(4^Q{Xz>q(59-#_iw9Yjm} zpT%S~s+*{P)ttR8#SZ^`8D-jcwkkq>COdHn%T8&>%|ujViuE;}F3)8G|ZaHmAv?wL`|E?vW z#mRyjv?%rcJG6~R#23%Ltdt< zrKcmGwPRI8uL42t^UGgU0-pdxlRTKp9$_IF&LJ7fM`YX(1j~m};%h-BVWed01R^P| zBKbpCLPCXY+xp770F(iylEWESJRS>|V2N}{D=G(816vl|Hwm2dIFDK{>r$;0l>+qz z_YWmmbCs$VumHM>1#-nXXv<@w-#jx4E=?rhHfUsT!qoNmquPPTt-yYCfRG69TfKiY z6n*fgLU?b%vI!!K6E!RPhdZQ~)!tb8Cvf1^=D9#d#0eH8dnP&^%-*R*fZFl6hs-WpyWFq(ncnDqPJhS$(?pQa&+XaKrDC2>tvvusosZBh@_ffWAq2hg{#p0kT3DU z3S11rBT}X>xu)72$~49iF$dz{VvWc-?!Qyuh~fqr`=`i2Xb@_#53;ySdbi0_ed1Lh zgR;gY215|R*wAIga3~Ry{Pms1r%xZ(Q-*)GtqgwMK)$7qs55AbY5b3_jdAhcE?elZ zCxY#*tK-v!lTyyI@aE0&9!uXG&v|g&cK4q4xj7_L{^|3C$#1dsK>=v?ugHa!=U9lb z|CShiqO{YTtuuO~NWpMgnZ$Cw({z(SpFmw&G3BReJyJ@$9pn&p)P&q^f6iP9(&b_Y zeKZ=Jgc@dviFmVABj|76>9odMmGrMEA-pzT?){I( zq24#T^Xqt?eg07SiWomL@)JMG0AWU{qdk)0T+kP*iKo|5pmlm2X}}#zz~0@v;-Z%` z&tVjgNPH)So=nR!M?M?ShLHCyUQrxz9W?kG*jtmy-SiKa8GGPPJH~^ z!~Mnc?n13My0_zU>~(GHHjenO!DE|owPpR%o(!(K+9GLPXf000{=;-qn1Y+FPAt2~ zU}Bh+JfSE|B7;~T&~%r2e(Z8c`bugc6_f&dhAoPyh){n^#7XI*W2dsc)3Tu6YDKWW zmNk=!WoXbTP?E*`gQchyG7}p6gff!CD(NvIjJLv_hlPx{OQUYH{EfVmF+H)i+$$YsRPbq#c|+J!YDL@_YPysiNpBKZ_u7kMR25ZSd_nlWDq z6>W9zxij>I@<7hBF-`rn0Qvez(Drb$fX|SJv-Oz6l7@?kJNa*a<$-atzoVwUA(6}l z#%ECzA2&EzXhRojc9A_lBR^T}Bq`Iv4h}$+St+T^C!MlIE(Xozw>2Tm*o=M*>{aSS z&qfX6*T~EC?rH{U?}aO95W@t zO+$Q}as;GoUb0iii6S%+wAJc!+_ZiZW>bR3YzfcR-W>MJyS@_88&2W4)Ic zpbhfS%-ck$Irw8 zlke%+6RVqon}i+REFD#F7X}W7Pjfo=vj#DoBw4E`sIH#gn*1f?j^7})c~#1}C9*6k zEbk8eo_ln}V>7C8oOv0A@pf96h8W}E(bx0d(_6t?s5_jWiI3C;P!Fi(H@Ng3?UL?% z_?K4(QxQ^J!b4w)ksv`vN-8?F$vfZGH$L2|9u0&^IIZbXofSaBk>K6*`$usA zEl4+#0IQd8M$6El&z#FrRyN$I-ZD~cF{W!ZmpdFG)J%_d{6eba12tk~$iZ4IC16Iz zk<7w06ffTSgVQH>aL&KI6_|#MRV5$ex{hxwQq}D(rXw-*#6ruJ$1=B?# zUd=RYSi3y4(xfR!vuym6XEXPXVJR|Ym4uy&nW3jhwjo#ZmmisPPcesnZ^YYN47evn zwRBMyh_sUWrD`npb?V60^SwhM<#7Ka=jb||WW?2n(I}ZWVaIK*B8qK2iBqm0Ey*y$ zzAJn))Ae7h9VL!!KzmP&5((`V7Ynh=uK~)24LeM(yrJQBBrrC9{$@~t*W`lBwzI!e zI=G}8HzNafyDDX0wv}-Knk=G)SQZJgGe;iXBr=xnz~C13@c+MGuAA z_4T_O%M5OH0XC_iehSi0Gq}9UVHIr7#Kxi_Ypc;HBC5$L z!z5;|){)rASB>|?7|2M$lBEB;3t5v&npq!DXRgy!+}|8o%4`1C){k^8$}-i3WMi0X z99FWxCNP**Y7wG~%lC7Mi%^$n*382wkq7xH6+?eg_i-t-ng;LCXVv9Z=vQm-4$hXE zEk^twt@0X)$Ay5B}!SLw&!QZH(S%;~;=UFDiRM%MVXHszx^uo%`Tk6P2nBY}cyXms} ztuxuGUZY61`n&rNYXyW2$h#)b_us8V9p)+#{#Pmskz3KyQP-_@Ki_cU(61XSN92Yi zzOGz}Ctda`Vtk7ob}kgg$l4-@_Bt)ZfEND;CDXik>UTGHYUeH6RJU@VI#F!0OGR;S zrqK~qo^x`m263Z-A<0JzS8U{|EMG0&u^K#Q{{jOwIHsGjvMQ_~8iprNja;MC_@x?4 zjnhK3@2{r&zh~;EK#}Obc}0GJ9Zx-2W5s8 z)>dHzrwDd^swJy{YARUwL|eN-HK}YU|7A-avpY%^XqNG7zg}_IfvXxdtD~9_zZ#?W z0#obZaWEEh@-rMqn=E(5-+oGBY*N)BHjgU zqt5Z-S}?iLmPIb^YGYQL;nH+b>k^4^f+T^IGec}plElw~Z>07$bc~~ivzU!aFN^T$ zGc!nz%I3O`sS4kR>oi%95yyrY!%I90u)P$hBDnwRA8$|f_-#LO(!r^DAts@JY5!O> z%|LbSSO`uv$v1jqq#4|7L0+8EW*riRR?g&`C)>%7f>~jQnjbV{p-^(YMjqRt9wc3* zJCbRU1FhE4AGC^-Yird}uAZb)kt$uEWsbDMB}nsioKNkrO3SABW^%J`j@_C4L9I=8 zTDul{ugl1ljfr!o$qG4{?0$5)l1{*62Qvog658Vz@5BGAqR7O#p9V(91~{}OG;Kqz z^^3m@yOEj=<+?;pm)fBb##Tlo6Hk>hC8&K>@T=6?c`Rc*o|5-df@z{~e%!@-8R(m_ zKCFHd+sl?Dt(ci9N+E}~S-&_8r#4WTov4~=BCfTI)LdS5OO6&)Qo){@iug8UIHC~k zC&E9%nvHg@`Io|qW$FC@FRZ#N5LT;%x2A`?+mfp<0J|rj9;gVlzQ!Itn0bwu%!4%- zE4ejNzFRTP{;=-My2((W_4k)DGB&BVMBe2*`VhzcT^yC{4y%`3Z>PfD0F-qdpK0cO zeSI)$Ge2(pcKqeBq4Jj_`Ax&Oyfq^_#t!R!E7En+T zdxeTaW*MVvDR610emvE8GHC6r@Y}T67NNS~E|-@jvcL=YD`7P16)4r&s9OaB|XiGoycowH| zC;5p1AMgnFQ=k_VJiD+85F%TfLgDfW!Elvg^JSbpwsmS{u+ev{>O1p8IHB~??Ai%8 zsL)O>z-(o6CM0}y@=9Ymi82J#W%c)()D@K6vpW@WGn{LjvZ(u!_Z)on_{7~Yck%UN=G{dFDyC!`T0R4 z7SDn_nz$WiP?XZd09}xgRrr7D@ss=gDGIF^ID!-+?9F(}kPli?TT!pxDhJrc^Y~X`{u`#5)dPtrIei{s~y>swfKVz;N zq}_`$G^~*RgDcl&C+WcHfog~g_9Ck+eYa)gx0`%_qznA+F(E?m-yMvu+s=Ug<_%?I z^K{^0wv33dJNiufF5<|GbTD3goxlulPl^gls=^&lAo#G-6vVBnM$%9$F!NS>2Z;r% z?Lua+Et}}!LgwIYtEVgsyMo1jCSh1d6|N?&Vqrl&`bnxvQC$VIluFh|hnYS6yj22{ z?H`g`+uBHM5p5Ux&Zhg@TZlh5u{IzQ@n4FVP-r|&!?&85Vel)r^nmy0vhht~4O)JG zJj1|*%I%>BK~>ni5o#-WF>Fo<0!|wPU5i~wbpM<}`7a{T$A#hKy&;JoqOktN=}^G?mIa{Etu`ufFl=VXK*v$PSG3FGz66nif}e;8PhclL~! zSznKX}AX|BVDuAU9wv2If8FNZuvSO(GGch#Pt;{y|+Dkj?czJoLw2?Rl zbU0cy_d{s8w5!yRqHKqO$c9M5S_40}B%F8ETa$jTyerlI}M zviK&z+Md)(NB-6dk}cW89!i>eo3+)$$a+{`-^XhohrQvzVndCvrI|N~37h+w7vlMg zhpNRcaoAq4)G2+|O*u#=w#cv|a*HKH;wQBStpL-2x&Z8ZV*0kM-jLvr6hBCs2NJ_P zx*l0Vk%p^J5-A91cuR$|jYbu@N|OZUNHCK+EvObzfSCSYqXqLWUs+#bhYH3I#bjY+ zhwP&A&+3eQlzSG4my`1tx*4G=B9wZg1N`XZ*;MQ87=LT$A*Je6Wm{3kVPIfjY4ldG zfvDi!mYREkVa4uaHLJK$10H#6BWwg*hn}%saSbmOAN3&8?Qyc5Osv`4osU6YM7Qvc zlI5lHFy~%H!Y0dWF5+Eyxl7RF^16G(zue9RCdF;i8x5*$Ksvb zxM&fserko&`uY@Ac)P!drPd)Kp2uZWC0aI2WJj~vm~L`)H~Q5IvbYos)m?&u29}7c z1;1pD(C9@}D@|paooA0{7m{0rw6qU@xqC51N=Zeo5t%Mvz&x}2c2B7LXECL)DdYhjvHF7Mh7DC#NgPigR#BRrx0HsyQl*Et=-N0zsi>&VszQo& z)q(j$Kr%n^>SqdmnnPB~aj7+WKxNNLX5dnrr?!f$YTWN{3LDy9R$YR-agw*!w~BpK zJ%ma_P&v82Sx#!Q_&-U46Qv!DpO8PWl45K(%&17huBrL|qw1}rs_M7zVG#*wkPayc z4@ygSN=SF7ba!{RN=WyiI}ZX%cXxNEaOeZ?=6-+odG6~NjNu=SA$#vn%r)1Xb5*C@ z^`y?VxG@3kt3cIKHOil|fh?{YfJGX!%6VUD$)T4lTq5u8)E^MLwT}sp)R+$b|8}dx z9y1+7KDNEELsVWHTG-BF3KcF#v}}*-7rapubmi147uO9*-SMoVsattnC{@DB7!v{0 ziouXoXgm9=KuiazaTj&}(nGqp+b7`ImqOs~jwG$AP>5qwGJWI=5dI-H9TLBVMHeTK z_ykN4Cd#^B+O0Alry9!S*JjEa%(@*ivj;+zjP5S?4Uk+{Ja*R`7HvDn6|}XZEG7%r zzb_%VdXo?mj+IZ*4@ng$c@otZ<-1xns{s@D{y{d?Zvv3?Ju|6?vkmupEJ42<_~k_i zzm+%v=(6w?JX}Va37U59D`usc@QqZU4*HqNDPQN@*heFir0@wtLVc^x+wPN8V>fUD zo*v+o^YiD{s(w^0R&YW!z=S)TRN1PhMA$p2C;Va9OT~ym={3!MlmQS+e%Hqcg z%SQ+)6-Gth{(>|DC|LVnU0K7BwPzW_GNfWWIJN8~CaI=IGUMzmh^81KwhRPat@nB= zzF0*@Oee5A?Z|o`Tj@{QBtPQ0x(?lVeP3(cw-O`;s(lQ41xp}#%wf17Cltex=g5oBlA#=-719~E@Bh9YmaBed zL*%>f9ccy>ML6i>BGQJMg^`Bd>n$9CNi;Q<%h}t6N#w#5mbnBL*mDq3;_2;g1E#6F z%OFdyHMe5xulo}PzFuA}u{O@}%6qjEe?q779ABx#2Q@+7ugoASSbdr(5FsTow>A%s zdPnLd^f4~GQl4LoX6>s=ph=-A$U<8CI05y#>iah#`oJU^+pe+@vp*L)Hx;EKRPfaU z#8bnX{>^4O!O1|`#K^zKJYEAz_kkW4{rsfAoTLc%y);>Unlrb0o6q}UU3W2F_JGZcG0HvYqCD_@}vm){7C|o14uz2X+OLUm|$j zboH3lj`V~yFc^$0iIjfmw$bmNb6M+LVSJS(`b)v6iZ>!SR6gW)SEQwlg|X^ayi780 zHT|#uEHvKt0$KXxb=~foH)(T%ft?BH~`~Yi?$A$%WY6G-T9#z8_SfvL0e& z;Y32r6HL``HDC4Gtu6Xhw~8nv%|7t-jZ@C>{1oT z{8o69btqnZo3_!OAwRt`c-Ye*&L^eUnO=eCuw>NekvrL_^Y3i6>F_<_(Q>&65mJIi z2#O>Afn^#@kBz|})$SH`DBTYcvg(ewI8!dl`)!Ry8dP_8a%&C2rpcm)Logv7)Xqb|^cY3dXC%1#ZWiego=<#q@} zOJDvS4v%$?&6p3$b4u-Ia$@3s{MYCBxO>NOaf1C_so7EfYaJLV!3T{Oy$)y4NlKioIlnfg==wFduw{P~;MLlR2)z|gf6xD5W! zlep{t%--@Pz+uX%i5Bl2ycK592o>F}C3U*?-i>g=+c+l|_+ z=30{Oxmr@G^XJu)W^8@#+RQC4Mdd&61oODK1$dT5l;fR|TqO}pFw^^x8vqjaY ze3cu#<$?xUoiDXM`IYHjO@!lH!h5+I^oBCd?c*~3f-=ngI?%m5U5KP!?;)}40z7=@ zCoQLP2fnzpOMtSM2P^wZ&)GgT5Krq7EC_o|?t5eCpo>Ch+X_`9qfk*%*}DgTWo!C^ zKkV_kefHi^GigQc1O6o3%X;VgKbXGRoe{+=Bj}t<%wOY07n@;Mi&4TDy$U^EqoF>fs5D(xgqmR5CPKc}rt zuTt{9+4~jbl|$ymafKf5X4?e-YA4MW^18D1YQZpsYilEl3DH=2Ke~^|-EmE7seZR2 zsN#O?J!TH?WDKPp@)I8{%dm(ELLSEbKMUcr1v1av;cY1SYs8S_CJ}cKO#-OfVY(cj zOpp_(a|&ma)xRG&auA+VtF@O&Cr5yS&w6MR2d5^^_nJ;p5e@XkF&y!@x~0=;K)(~t zn{X|=F)YiI)Kd~R3nxLJKnSiyAuKNbj?9#URFppY`#g7iR*QeDlt@j_p;^5naq2nR zAzY3c;cV%g5>|Cil}|4@d~araDdphmmG9TOk;WbOV|dOyHWT#MKWE1WAZ83o4Q=F< zBtGXRL8PCZES(L&}YEBtKs)43UJx`uC)~U<~wd_OL2M zB-rnv*KdjvPBn`Uu&F|%LtdgRRJK3ex6dwuXKa;Q$x4`sP;G)f?^%&cUs3O4VS@FiPLr zT~5fi-FDe0rn|=Q7Ei7r!~cHSxp8rFX6QQk-(%%Jm%;1>xQuwC?rlE`sb3xtw!kU7 z_mS!2hf>#SifV=OsFhWi@kuu2Xi*>WtYG};E97Pwk3SLqqMa7r*m&=dAft&^(l!1b zW4O0p*vm_Y$x4|akGh>8A~>6f+r-#6L0`AHQ3Q{>b5}{MGZPu%1GWB=)8}AA;DA>* z*dC0FA=!xTRzN!4&GZ!z@ILNm5lw%|`@LhqO~32CnO-1u0LIRw@K>HHL8413A0DCm zQhk^-rU)3m704wRL-GM?A6s2YM?eQ3(}YR(+jlP~%-M<&MH>jub}li502VAezNw z0}sz;45v1|3zuLqpiucQ-a|0NmJoVn|859lq{lDwG0VXWnt>b%>ouCvbh!zG`2FSt z`@B)4j->8pQ;juD?ZC;LqG7MN>r{MdUJ1{pN*A>L##-|Yar#|N>}qWblC5jZfcDJc zi8(tpU7JZncC4lIMEP`R2)DCl@(xfI=g8sU?kL#RYsebCeHH32v48|qXqhV38I>0{ zr9o8T5~(MoGL}y4`kZ$47b}FSfWAB>bUAJI%Zcx}62G9?Xi^*o#5PWA_o!4b%=opc z!vi3kBC7r7FG5*z*L1aD>ZGKXdVc&Bt2)IAx{u0kJMt}!-K`Qq+(;ny2pYV zFleu`EZG(?Pf&p{e?) z2bMGmHuGJ&Fg|j)9yYVW;LPKmh!(tha#%VZXL3pYp%?fw;O8Ad@7qSC(|4=maJc_4 zH?ir>f0}Qkq3ZGHY)viKwnwhu6OHAv-yfF$!k9{*a9Wmhkx2~sduNlHH#>1R9wsmS zIyf!c0)mr;iZvt2Pajz(SYzIsDuo&&&tBvk-~0Y%b`fNsWqCK;>7XO(*_PAsR$bzy zFaYLLeT(TMw5X;}JE{ULTZ!58WxD1+NfpQ9MHR>-T zZvmW!qVdT{>mQ?UD#dc!+uK-bLei_s77AKqwA|@L++jLHY~t5~Lz3#1)T&{!v|HIh zqwKXI7<+MHAfp{1hrozvIFtxg^~XD$2o}4%NRre5r*{o(M0Ly6TBBsvEg`d(HxECn z6;Qc&_S!w62P}5rTTT*A+pZk0sngjU0kb4Fy>L;RvpuooxUhlrPT|_5BI4+3`Gxc~ z(j^t&?*h}WES;H^Y}7UvKdttxTgKFH{GHo|EH9ohfkNKK_!2#UA$}soEUs3g7rDFZ zr-zSkcO^!}Lo@?$@?N2epq>q<+HKV0Wlb-d{&%CyP32*#JkIVv;XO5<2p<04CbxWo ztDl)7E4?>@5}Z$4=ug98kb$#%Zx-q*_XpBN!Y^h&`IW~JO(7ke$GJQe3G(qw2Q$6n zb2+(XH9-!db=f+IBYjmC9v&)s5Fbhz1SexcrcCvvH^8ZPlR>p<`O~UP00x)O^p{t;C}s~rv`n{MA@c18-5iX`l)-`QpLTt zg`5hXNT@D%s80gm1>!3<$s8w}tv!+Z1N49bs&aQ(_QtoEGXISiOZhskwO;*^|KUuL z%hd^hVzvR_B~!z@w7v9n?8+x>4%N6%-n>YjnUDn;xi7!fZZtFYuJ}fI^A~Ar$bqQ$ zd5O&suI1%rPcn$Cg!&F}!99dw(8RetOPglfA6@u6Bdg^nN`^pW@l!LWPlL1j36l;@ zR1&Y4X!W|j$;W8;Nf;nL8r}&S=zh(pz|qRm z#Z-sf5%eDpR7|!X*|;@q#%uvfivM?z%}xCzNDp(YB~AXJlN*G`qgW*J*gNtRAnb<~ z76q|Idm7sFrEa-hCO2@ICUh0Rd14JquCNKhxZcqExn(R z)>iKpMW+7B_)KV5Ac7GQO3vr+Z-?X_EVT)J;A_-%8RNK{sTV|r22>)x+4Kqh=Clvb zKQ)GVRT_+MH|}|Gzu7Jg`b+M2!=c64oRB%ybci5={ei0ykNl$_y5s-=^FyAYK5$;0 z1kZq74cOVl3v4zkL>GCdP`>3+rVZ!j=bH>InscBn3#i74vPl%Nt{WUG9@ck^9+^8c zdjkRDT)1={*N5(+e)1U(Jw%(KT)~WS6+_$r6p;@fE6>e+xq8#X>HN8SjxJ_rw5Y!Z|_x&x2Q?0bA!osh?!jiQ~<(eDFC}z1b`+Ew8lgdZLM%b^ve6QljxR zP0lJgxHg`7W$gce$xLo?84$i(x05}o+8+&%=VIY zCSOjTeb3Co?Ih(Pzr<)K4zsS}T=P4+A-@mdo{BIo!`ek^@$;wjLk6~G=oz2>E~OOj zamzuC*`RkXD^h@cAM#z25Jzb&FG;84_g7>35v?R_zNhiWNHQ{}bUe^0lH5Sj))*tZ zx0aO>yCL{i&53()I!^W7Q3T7`7c2NU5 z8? z3jiq^EkNWEBBC>I<-mY+y5qomo~<0Hz~hZE-{Z|D*I`+$^L^27mY*IH^(8F3Y8P@? z(Yey<1^sJ0eFr^+3i$2I=y$x4=L-O|4`d|@cnGSa-cR?dy(-Vsh#jux%?^oxJ!QSv zfL?KUfVH0+#W+!Z3@oF<*?X|x9i8_MTh<>Lrq+C<)ky)xDltm5VOHXpojHX9jA0*Q z;7=oL;rtQCvof|SkDEEpM|sy)u37ta$pzIA1HtF=X+@_k!vew;tWYOc#X<1!LU|b zX@->54Q3FCd76Wf-(6YEuumacLXR@f6)5U?YKhGxM`otQ{(HO=@;ZlL?OvYkLlU`t z_Wo*5wuNLJ-9}(I6%F5xUO(u#4WxiBeKR}KElY_Tf2`K59y=dxgz*bbQI4q8Igv#D ztQ5`3BMil6wwCwoxC}{70Hwb!V(v~vCPwZHPf$z#QeaWLJ`_#KaH(omle;4 zw*Wt9#&TcRT_ji_-l&u3J-|Gzrzu?KzK`wPdi5%ny+r61AbTT#8OMrY7*nC8XRp0H zF>(};TU?JpYN*yLzlZ>Hb>mwTxoKKp@(mMsE#O3SF&B#Ztv?@wxJP8LH!V;2I&V_N zF6<@NLa(-6D_+*q!>&t;X-Sq5N_nQo4$-gsla@E0vY!0(XT-4>E0}&CP}=tDb1g|q zl(H9#zJ*>T>M`-S%Rh7WOMXwVrmb%>&f93Mg_l|qRM_5Ue~=*1nLSuGjPLZLX(!&ib6p5GH1%?#xVC7d`|A#S<)b5a3o6doM zdXgv~DXQ82e%3rNx*q2P6v`OQ?WevE_E(rLgPht6Mb(yv?#l{*&Jyt%a^QmQJfyX4z8~0yFQ|>$hJikOW+A;`aM*?69BIVt^RfhlZYOw@YiS+vq6vNlw_ZirkLh z74s|m#|c&5^$AvfH#+XIunZDNwbLXqk7Hz>;bh?#Nd22(nHjm!)Xofcph4AxUG zd6_%w4A6(&zzlU_)s1x51&cc<7^czeSWvN$vt1XnzT$Pt&v*749ztd2{%HhY7*tm) zs{w|=V{DW$B>wV3YT5{ufN@HAq<&V9*EW7&E}@}!IcP*|7f$<&(!8VA+sF26V-J?| z+()rtjUv9(g_3cd%%6XBqGT=WXK*b3Z0s5RO7IpvT@>4aDyU*YtNumlIq!qHqB^3g zhUY_Tsmx-`{o49h^5fXX?xDpJhU0>APm)UtzMUzJlR8VMQ@)a6{Ot#@#K*H;l?y%@ zL_=f?X+wpmPtfg@%uJg%@rBtkG&ER0e}H3!#;RRihMI$Swp55HIgcf=g+RF9wp+|@ zQwofJHgKRgIM3vw+W(EC{+orEeEXW)^G6kiGX(OAXDU$*Z|JWUY<7w;fbW%O?#u#NJu%{>e(?#$0)(phhL(6f833I zifHjV&73%)a^^F=<5qua=85ORjTWm_qIuU5yxY=I;3VI{MmqZmKJ<_%bCZ^@Hxe=Z zg)C=O9Z3f}=hmf%l;Bnp`tQI!b;6 zChGrrH7JyF+Tv*^Wh^{hx6H70Y*dFn04m@5QexC=KF9c0TpvfN>VF93uG4?gc^dW1 z(vxWmE#A7_bE?1DW>=P+i$E9 zc@|#{Xz_#b*PvU6pKpt?8_{n?_oUtS*CVc>%VFdvkCcxUC#TNY7kUS+u!f6P$mu$! zkDpNGEb4!WrsyviAzZcawdZFmVGdIJG?JgXD5ri>8;M2EzVEtytT^3#Mt=)JwgRJP z%;14CV(dFvvhR1Lf6$V`vtO^@h7K6={ghf{HAtm8ZuV6O;bKIa>;IAU{$lGWlC^Wt zQ?F1gJTtB_j}mpxDOAj8=B2Q)-3AD3VHYPe;B+~7FosntV7_CN$IVnnu!sVkWhvqYVyDYmw~p5({^Dq@maB4$&l|kM>+Z2qWvvd*37026ZPL0c>e`Nvrxv+zWGAsQs|qMPJD>&RXov<< z$g_!UhFTr?0edL?0EQ*DKL{ z_xGcuM5jeHC;Y3INiY5*+mm5oE9{Jg&(ZIBY`j@bvCN2&yO|)r;2=(Qw>xd!TuELi zA4VIQO0H#%@>_+TLZdB&y!9blws;cD#m=S z9@cvPl2o&_oEHUinE+kIN7MUu11DED*Ct+j^-*1F0c(gri(VKvZ$<{;CE|H)X4d|1 zvl5T&uI}VQ)TSg)UD@}fvpKl5l1;3HXr1-C0rB8dAs1n_DLi;JC9OrTDh6%pNs`Ru z4LX+P0)Gi0oIA^n4Ajc~V z+ILixE*>u?(2)&O?^^P%F8h3wpP$3EYm7!}k#yH&yLA=ZRw$;r)k4V*%%MsbgM!x0(vW7ukOa4h5#$6CJkDk^u)I}O7dTZv^t_&YC(w4I1@29Ca+3#}?HC5s`e zmL5AhtMA9h$Ic288nD6lfSk49Cq(ia4=vr7ps#Bh z%;E}4f}aNCJ6wH;>d^4^=MDyiC@cw+-e75R?jz;WcE1-grNK8M-kGKA@`pgI_1fFZ z^58dOIhIAfB+OJbbJf@j#TTK4J*rU3saL!MyR6FDEJ0*ArhY`~w!&&?)oc|?luvj% z)Qi)qUgEfF*?cT&NLr5sMDM&}*RT`cUynQ5n~2gHO-@^2zP#HJjPU3tkS7%rGzCdtSf-v_eCmA6(4A#{5RT zyP_kfq~0>_j>+ncuqXkl`I(VSJ_0ycZX6!t{gCE&&CY4A{}xnp?-Xfd;m9!OPOJrK z<4{Q*3SW=9`M?YFGxWN>z($sqaX$!gz^Z!LF<68~yVqBS9bae{Wg?F#oRE0-O3%s5 z1m3dBMYO;=ZMKrL8JFHWTpORk(fsF70Z+CiskCF{@wC?T`vfd=MS{?km&6k<=ar^Z z)lpVQeydZCWTUpLh<{en9kChS!2;LW_vs$fH`uD8&2bFWv3ab-mgR*Lr2D2eQeUQn4=LzX{f&Q8B}&}_ zIzONR&DBO1Y&!7m8%525z&74wa6RX1E6F%(9-F?oDntC8;lu0qn0X4(tRz-*#`_JH zm;EQ+P1HqH;4ePVB8H6Wl%o?Z(4}X6eRI{KzP{YLjn$Laq#aYDlE;4u=`~ECF zb2;1!;i8^bN8`KB22Vni7y#&2&!WQ-MM86MJUsc65HAgOSUvTP1Bes*b8!Nrnwc_P zu-*3_PocI&DH-6l{*bt>YbW@bDP!=3!Ao(irtAf#~p3BpVr8{Emk0InT zm5DYt97!KEMKi*hzJ9s}MN$spe>|cUL8vZc_B;y4vj$+^ z{1e;`16CSpd+~w30iBJ`XW3=+_9Y-`mj0$~3o)D!#;AXDkLj|?59+(U2O_uDA1+3^ zRpy!;-ekHTSa{zxXtU(Cy`^jMx<3&YdPQNs_vAfEC*DK+q3@r=&ox&mtim7^SilgC zA5F-H(g{*ttOgSS_(-wFQnOdsIGOYjiNtNFulQvy-+AWam6BGso+R1MudFbt#^<5h zIa}3>q=?eF1S#t9R>;}hpDZoCoD;qOy7j_kPZ$xZ+z+{~l(-5x3b-9|#hqM? zjp~5zSJXsvCgsB6YWZznMj9<`%}1ZNRTyn2uV%P$`%Q3)RZ29Z*fj^$%cg*b3`+x@ z`c>(K$)Ms7?NZRii4y+%QTkcF{CrZeK50s2p#S|Exsw@v^}8Nu^Bz%&RR;$T=EXKq zx0VLdew~z*M_NF&Wg?D~vvIYdtJ}QJb?d;zQ`fJ)z9+b_>44&7qN96asm$Q!jC;CN z9_5re_L*-k~>jQUDGBzkw<3r)>v0goK z+v#bet**_-)HM0d>b=-eAN>D)EGxb-7H)k+)gBSUsM0pa?`C}apD_`q$LBbXtTiAK z5&H#X+w}|)vDr77XU+IsVnZNmhPxHI_GFS_c9(o3q)lINCO|*aC)=?iT zHdZDROlXXtfzD^WwCSBS3fB~2jGVwr#ZKl{e`ai4R+ETt{xnB9b!|@-E8%GBX#3w% zA1fG9teoLuGZVi1MR$Bi>-bGd97hd!A{rP|6*5{9wMvJHTD|z^cr|ESKYt#}p;~ov zN%<}=Ve^~k(xM+gTHm~OmrdOdkKL|HYbaF`E{e5nB~(>yu@)FATVpX*=vg2Gp|YhF zJvLboKs7~kcjq+Po-K-rf-aF4nJ&NTT57xRTIO+CO?L*2r&wppdc*}WfFcL?p&r1* zr}HVc(f{x-=p+uL1PSJ^%t~KusX?_eT5d>Ne@Vj9uKJAQ4yD0jRM!DP*DLogtY#`E zlNkmW&UW>ijJu4L@9WJnecm$tnkx<><+bX(;Qy?jD{_pAz&)$$^hv9-$-6z?B6p7^ z)BBDH$~C%ALHE6X?-ZV&{BA{&0$QwXCv3c#9%Q?_Z44hh*%AXjzi3;>dC-2$wd`PTH7WFX>JY`Aa{4zWP zLbI0)Dh3?SnScP$xsU#G?})Ynfw_2%4L9AlfSod4rpj~rj5?HDl36R02& zCMOyP#lu6?3VWIL_<0`DdS6AP6TNUpmf2dVu zGYX)Btys|$3!&>Qb=Y&c+l0qlS8s17sMy`8kpZGIr1MZTMLrkJI>97K&ITAN4HG@T zDDT%{%+W@@&D#t>a=5NM5#~sn##64#s@8a~)Q`(i;(t&-yV})D!ntnc=DY2`=&_a~ zxSr{C8UzOB9F3%Ei2qM=1Fv&Kxd?IR-{EX(G!&O92fEa_H^{;3Et&acg;O=b`y?IH zHdC@ce!NN$uOJ4OIA+pkG%kkQ7M;IA1&Ke~Xd%w~ZIS6l+Miq=z=V56gARK$mbs;+ zGOo^-$R8N%)ZjTvn6eRF8p^dxfo8^DWIF3Cb|#UK(rI%J2HkOKU-MS2U(B07Ct+`2 z0tYfW(4sW~q$$A7G$t&k6@qlydi~h6nDZjvYZ^qhrO-4!-D0?0VIg6|7>vG;Tatfuv|BwR872D(Dx-u*7bZ{^7rEiJ=c7j57G#q6Sgn#UeEKg9?&l2xe>q_t{~bV zt?Y5*;6P#TYhJ&YQmsm%n1#`ocfOO?TNV0`(pf#C_jk2fPdJH*csJgQW>BZqCI{+& zU_j4Yf@oNtY$vlps2GQpOinKL`!8^l>I7fbdEZ)(#)qOf?}-l37+TijPhFFJM(baw ziqmavtwBQ%FVCRV)-v1bS=(wU#xvV`(QJa$Oj1-%9Kr>t>5)8_zFdc*CGZ1QJ~02-tT+MKDn`Bua~ahK{bDbAQlshE(+Y{BZYn2|C!q!piprfFhecqQZvwWlcO<39jVd=x2AYByPQM zUXqn|gDu&Gt7Wb04pEeI{h*1@!@0!r#L>4XrjBX#hFD~W(7d(nN#IBZ52b<4_TQ;I4k&Y04%B)FWkNW!GL7As%cShRle=-7WJRvD5-&(_GO-;0f&ti?nB=R=8A7kknmz=46U1ynq^9+W| zspI!i&d%cPc+!#mua+Zz-4np&5ed%nImtduPD(O>rhb}huxYWi;=rE5`1rklwOqh zc^}P0+WW%CnNy6xEI@YZ2MrBPHxYN{cRaNsX+%!po(Z;hU$?aGm^5pGjgqk09K%QS zHXQIaghIG&baTIiaPwPgnth-xW&~S|;43Pp;%ZOTKmw%K7oR=#!KZWfiWr#h$Kul! zezX4FM1Dqpfp)$yEBBb4t!P^p+E<`~!Ew*-?K?{i1aAGOg$%$-v3=iYtb8a3+`_lJ z8KsqKYHAy$`nRlV<(lZL7uVX26%7*Vp``LfE?Rc_bK z&I5cynV$~hOO*viMw2~`p`2%rf47lz{YEqS56I1BkU($h*Ei#!x4Dzrv~`c}hj>>| zKuF#3cbnnT^bYAM&CkWCj^m%E0U@uN#~BTb=ru7S*+8B&DK_ihH?}X4UriB*h_s3m7(}ZHogZhOxO#9zb?dVDzR#BeKft#9YsjRLUFdU6$dSGG`h^YG z^-?!b~I7 z8u>3tQM8jPH3D|^y%p8B72=&{ewwX8tSS^oOKoe?dJL#?Mk|}|q*aRiROkZrHh;2x zHOLM9Yg(rQWy1!3)RKnBoF}t4gEfl$PAQfGUW&16yj@eNpsU;X_seupL=lpy|Tam2GuQKd> zl-17^5_@#po9_L~rysBE+Jf#j%RpfYi754od2d>2+4aK%(_@j|c917MDynlXdtQ9` zzVLN3o%=4m#5-0cp3QDW$EVHFlwd^p-krH_MFZttdekHL!sFkEpIgs6>v7dttwMVh zQ?!1oxyt%+{ZBkxVm~2VVzGNgFk0#5JA_H(K9fk0a|5-K=IbrYr*fu`iRGZaoCeFO zPhZG3|1K^rhGZs)GVI}7IeX0Ywxd$YmEK8zScx^QyvnnX^EKpOTWlzLA7^lVwUi5| zrGu?tp@e&7AdLv*zZ@yRjwDe*pA0XT-q3iY+a78bOAof*;b=zDrh2#)~MX`}49 zf_t;PQ5ya3IF@IQgy@AFRnG9y5SbM(TXTBd4}O}R15@U0+jm(>`Bw$`@92SBMqU7h zX4|$ODw>JekH~jp*`Sy{)l(PB}CY)W}!y^Zpl~j zPEk^YTa_x}Rca{Eiue<_j^uJ_8uT)~BRyRt4_~+8jXD93)+Lq84eH=b#m6g$`J%R= zmGHKe$;rHAXsL2RK}~_T8Q}sE2>_%qrUOJsYn)~oeKOUAM*;wg$s#eSEGcsrWs4ix zjYAxbyx={l@55x4@$QH&pa%;eklHaDM>8XYY`8of5{P8BxnmEdP@Ekl6V0XNG<2b2phd6I zyEMSoZen;G0)dz##?qT`_Ebquw9e2Ek7sSfz}oIDM;YL~UpU6}6z zJw+1_wptWf)}XKVL&SToZ}WZw?;^J7c(HNwME?m<5H_#7cc6!`N>0?LP>-Ps8AHMa zuGN*(N5Bhn=lyFe8gbm`;!uB*&E41Iy3%3PryYm@CqL!P`i?A>&i9k^?ko@mb{r&AwyAse&9 z2AhABhXBY)Eq;lUSfOy1EB7-R#ZKq9i(`PC5CYF11FSznLVyz=Cl*MKDMh0Ree_Mu zs#QJO+fVrOh1c{0hbXywq$t7iUb^W`G-=6De+Uz3Uy*JeJ5KqMT0xomecyhpb-ac; z!&ntI6k0G>pQk^gl1O4-b7u>GP`Xl<)Y{LF6G{mW7uES6R@vF$QD~YdDe<0RN$HSG z)fN`hd#inR#Qb=0JHaI)}N~;fY$vDlxIxLno*0e6XFJ+=jb>TYD;XVpUzYZ?-m^aA|K!D4|;PcI$WXKYK zLVzs7kt^5KDy11$XYY3XBC$Ehdi&1s;@C&z4&|8+bOwmo4JhXdDcjI{CZ^t>X6ZRh zl2q6}FP?(78Lmn{Qvwu|xxg{IPjgKT&c|VJj@R@7tVH@Vz%c=tkN(s-fJSYb`f~gT1YHJ)iD< z50~+K>R#eum@=yFZ=RXJzzzwV=i_tOtsOSYb^0H0#jYOm>LuI*7+A7!L8K_208*E& z^a48nftl0+T4CeHW~}qC%jKsT0oK5_b(@x~r|a+W7z*+3(4X0MS31UDYu?^<>&9qk zN8%h-hyGR)KCOUZu-N|VPD-3`4wh=i2cA|0_@JQhl6!@MVe`v?$U&wSl}58X3bVr* zo6l%8YmiKoFGeYxjo4-%wDR>=Ma5SEK~~#q@JF3+%$AmFt6AHo*r1dJS_HM-bf1R1 zw&eXRBu}#4Q9EKM-nz5b;wrNMr&kUV8Hoa@0I3x6j~)J86b)nF`b*-VS(lKE2F5*`v?C~0THu*3N&2MmP2 z*;t9Dv!?MG-xx=1WC5vLxp@WRt~1V3&NF-Qg9L;#XE~dVsUP8Ky=AUB~ z0_0xP6QYy^o3FzE`(6L@w+wUHyP9ANX=RupvP=fJ7BmzQ>>`0v zCz~FvFvq$Z$Xlr$^Zzn>s`67d=IG=k>A3mILM7OkP$?EgJCg0qhJQt$qLx<|>j(G= zShowwl)CPtqqydWMsK0zWtXXK`kIE1e+s(*KVh~RGwG0~Sw=`|DlzFHP^B^h4r|ib zh&Ecu0Tn)^|L*bs>~_F9-EmG@Y(&hI996`OloTb)L+!H43JtSYA$^0q_d$FP9zs$0 zPKo+KqqwL7M4+v*V+1V0)uJ-?jq|3JXdW=MK-IiFN%VO7(s9c+Zm^+&aXbfyV#{o6 zi@ih{hrbnuQyo6Xn-XuDpm6R=bS0)yAU#h_x~<^X1gsyDG!B~%0P2M`JM9|5?x5}f z{a0j1`W!t^NgT8BT?py+y*2$1Fc`+Hdy%a7&t{yUzz){Mctz6&%F#l-j1MXfl1|*) z)AGiZ+zAHK!4bfNYrWKjz1U#WnUlI_<(Mzq?F8gb7>~zu21_Eo{lj5KqU4Kmbc6pX zHw7;xM4Q1@JVNp1|GkpA1j$;NM!VHmSz5LnW4~y!O4&)VcR0d6KKvgBJNjcm4nyAS z(TAl9lAf&QA;Fu{79yWX-V?olO;vzH&ZfbbUln5bbxX+TGp#YBi;i;YlvD^qH~}jH z83l@9>A2&en5Y@}`GKjPEJHK@=U^4g}``e9dy#-{bRQ(Nz7crSS8OZkk z-jyH{l%D1H=<#qK=hp>@fX@JR-a4xO%}WmJIsfOx={u>3KacXDKBD7iq42#FxF01% z1Q{_%xnYIQ26T1t-M6B5&}x{__`5LW$hDgvxpqc*QR9IjGW^kv#OfpgE7KbFJ+*h` zl~*_+_W$d>$C9Er07CXK6;J`DJ%Pa1@LWW=?~2>$N{k6>#O=lIp~0?+DdLncE;Yf% zm^G=kDQ(h{`h!sjdgpMFj&WZ?j)IUvVr=p!QxQ{+?P?`#P$^Eof=Fuu(%t<%tf9eo zd_2I&G#tb6@A0&Ad;NnxBhL=D`J3{OA9HJKox0=zO%FQyr@4AcdMhI=pqmGOkS{`w zEs6#s9Q*D{+9a7zYi4hc6(?|4gy8@Jf$X8v>YIt`dgE{y^@|`C3x(-Hx)9K(w}7y9 z13F)8c4+yNbHyDVSm<-rdpWI`>zzYkH#2p1>%aCq=s(H)iM7Ms`jz2H@+`Z1OX7}Z zllWhBNXG3f8y~AXlE#S%#1QBd{FXDv-MWNA_ctQRcwLKzvf=0$Mw8njMfvcm`pS-P zF5BC3Ca~ikQS4RK)*-BfF({L+AxM}&#@K|2P|`3XUMq>GNfp!fsI~^iLH%?d>(A5* z#*A`Y9v{ul3I(ayHU}v_Mlrrvcgd*eJekTG!l(q>{ocFl00}6puW&NA0-~g{NOYvK zuS6qaKNuj^hAfG!jfnkQC9g&dqxkm9pJz1n)7)f)&(;L03(oV=j_ z_;K2=zfz|e2e5nJ{oQNO1!sDKQd3he1z-Gd_60=1Jj;UdL~LL8JQ#896N*yu=u4g(&=G7@J?^1+}dgb(8Y@N=ZemtVH55V0Z}jvL?*tLm=$7IK&K=$r*stqd4W;&1>OB>&cv%z(-Bgc2 zCZ_nSt56?||ChVU+wm-@_aWVPPca^zThBGFsjsiU<6!6rwbnux;Qo?W~9&p2Q&Lt@~9=&KKfz;DIv2?i8)KM=WGa4Z0Z7gpl1?%sT$|BG z{TpLrSh1#cPn^rnZwkMp6<#<0`lX{zFdnf3Lz8@ZF&5GB2BfH6WdLW}cDn=LaGiVH z*wBDK>4(Bv0XYB$3;cg%y=6d@+Z*;PAT@M1h>9RcBi-FSAg$6!cL+#>v%BLk$9F;okfIp7WkBd}f|!J!{?TzOU_tThvd3VZNbKaZY@R;GthZ18JmKIUbC=+7cL`JY^WMTNQ2(rxk$QV~i&4GIuaEXIdC;=oh|3&#M$59?+lEdt3aJTHObhO2@D$EzrHb7dmb2OI**;qJGIjR zW6oHzqInZAb5z@oKN6FOWVK}p%^?h-PnG7L8Avd=7Ga>Y9Z;^Q&9t|CqyEc+BI#>b6BCQ zvR6y+$oI`Jwd52*%AAS2#|chy#QCxJ=cP7A*N#{ab?B*kMMQD=l9ueppO)n!Ld+eX zCPYz@tm9H6a~qSS)sh7{9Ee_q(|| zJHe$cNy$MwCq;~0!IP(|!%>66a41%zn6pMuP_A-7F7l6yt!#!*CUd)!rK6LR1x6vG zzl(kbcb0(n_8| z+TjjU61#Evl_d~GQE2pQR9q9-69~{{N%im)Dm%cdEI*46hDC{EevNyC6k4dUjK2Q( za3VP2+R@@~Ve`))e;(W}p6{Ambi&h)#f5SJscH*pkdc_?7Lz~ z-_C&%r`Jiv`@Jgq-^k0Wl$4a$jt?GM3d*kpZU49jNfxq674EZrMe=_A$+die6tAmm z8X|k*U}zgpS@``kEpn13JspJ7u$1hix68%GG;y2O;`k)$sNDK4&pR2T3Eof&0IM~}i^S^>i!rPHOZ5)ZOThex^N zE_*h3LKqHyM@y|p_Z$Ze3yEI0s_FcygHDvA75HvAt9N+btYpM5T1pYa?VE^=fz-V( zY0@eXPBWhkvX*P)9!c{J^31H`aB%OZQr|<8XIH1cd-hB!CBlkpUyW0jd0%k9KHnul z*6t2kPnzSedh;Nk3X}SIIfZNqBVGBQhQ>0q;r*{_tX`87FA^-76zpQC1he*yj?^rO z3B*IG!dg*S+T5TmVN92X;ESh@HU{c0O!XtTDphQ#tZJnRc6*62kdj6JDAb-EAHNTf zCOv>RDI1WD8*R0|eIa;}VwXb)6#;Y69vEsSN6=Iqv2QeX+45b!sg!*`GOx4ePL>}L zh>(=7GYmQ9gS$L-)A_c~A(~;pgvaats_gS&^Ip#0*~!UDaZy&M|Jh=M+mI0EC#%8E zYMYjn7v^CU=2t()YS6Bp7mVAABDeECy!FpHkv~E+k zaVvj&gal7?3^HlKCs^_G_vL1~)9zc^5^)jA>7kcCTV0XR$<^k{KP2L|wVdn}%WsM$ zU-ZPq>oXe4GqChseM(XzDAplfdB>BXI@LBGg}!AH_FPHm|8-v)mFkTi{KIWN&KG*r z+>~M$jxAt**-VrM@sMWpp!H=zW22VU_7~d8DJ#Rh2P4k0l#vPGh08zzC#6_N<;CwY zR?~iT;pT_dN{*506;0G9dV473oX_r!0SQ!ne)mkH*1eyB+8(5ZX+(2Zvxuq#jkcW_AVar?Sh< znkMd0<+lg^)`i+Xt2MM<4YSd9hP+OVrgf=fPD}07uX`p@8tTT!Y!8weg>?(smu;-b zl5NIrQfKY;8ZJdfzLyM^F3VUhKG|QY!4GK_(b5z1Up_tC?=C#_dVwCC&=ygG6oO|@ zi*EjE7Q)ee_LEq>^~dh&)n~In>Ol&#O3t%`nb7h*J}-9uo#Z*WsVKPC^3alK zpc=Ot3ajL(4A}DtRT)@m;vbUsYS$AyH;4Oga3VQbe1QzTHD# z)v;UtL+jN$E5HW8hmo6X?6Of;A++F6;^Hb_Z?K&MN<*>r7Oe(Al@JD>rU$b~V_I@H zZ{MdgjFtans4j8kzW6dO_--1546mgP{)qSd4Ir*L&pR~0U@$3${XDdGaHGo#i1~Ji zHkb=D;IGXH_%JXq-~x{6U2;oI-vE6R53O=MVfVGb16?68E@ zD+>CF=^fWI8V&PYIO^}#v!(H%p`iVRM(Q94cpRz6R*ZCIIVo&Vkqkx*bwd{x8(wK-k-O|U(XWa8B_t?0A`Gb5jGyI^&P zO*j4YB{R)CHVyQRT@JjKBAZ&DFDkZl53?g0&Oq3D6kVu7 z_Z^WAKu8NFLKU$eDm?6Y>;qJ7(-%3n0G z5a(^a=KIXkrg#(Du|t#Dbi0OZHm)tQ6y3glV$?J___TU&%TMoU8s)LMY8pgI2{5(t zStybA35L^lCMsmh7iq3YX3I*Dk1%f@{0Zs~X3p|P1+J#QrssputYHNPf4-L{%?^WU zPlX#l0Ej8R2z)GbD({VDOK%PpFK|kK3cxL4f!zzK*O*V+7au{H^Z|)2z!*C|@K_Y) zyawoQRA)lt^^YGmBX>)q=Q+S-1v7{FbGCVF7Kx8q*6UwN3-04;zVnC=we$yF;M^C> z%?+NS_fg2L@cM$b61tjI&ajgcR3g_oN=bix zd=vJm^12LPxIS>AKspS?82PbXJ4lhED*wy#mW^G8`;9|=@TG4Nc<$Nduf)F?=r32? zNRWqr=}%?oLKpB?TCU{!yz!ictAMrDVZQ#w@6AD^k2cxDGZfar(2x9iE(;DjTikq+ zAe<_#;yLWfd#m{JcoefT_o8#pJ?#5}9L0UgxZQ;Ht(%GPDb7E5xz&)XG|R+Im%7m=ELM%)jijn9Ctf>6o>-m5>2=B%4wzMk|!oA;$R z%J9HUp?gkTosYpv>O@o>m}}NNc$n^($w3_NNHO@kVpK>CMp$%yyzzo@h|8r`>s6il zbC;Jvk}B2AG%27!n)&$I7?e8`hULzY?8)2(Z$HG`E7Vg``W8A}kOR}SbbXRj@02$m zI$E^5lXMz}_Q^dbCH#W~C?Ow6V^G_v?`fT=tmJUu2^HP3@IIF;Pu>1vjY9Y5_PQE< z@L^l>NaUy`kHNg=Qj$!c)NbStqp+q@d6rG)=)nm7>7Q+noS)X`^~^Qdd1{EKvjA{M z@3+r=wR0`4QgXH&$iNA>JCO#$wPGdif)iU`Zci9zKIWJJavb&t6dQ}+a(Hr5V>|A_B_lnm{T@2K^IX0XOxwF^-4%I@JqUP8OJC2$tnSk{6QJ{49-IkQ zO4LEqJ$4OxE;T6y+^+BcdszUlw_1bzsUBNE{*()mX0KCO6;&E?qANV7Bo=7Itr@sm}3Oy{=s1tEv?c0%l)k2mT zFaCD3B7kqusnfSC^`xNSD?Uw)l~??Xk-@D@lUa(i4v?85hS)Kf^S)xoFY(LJj@P4eKClRC|)l{=qlT%cCCE z5UiDZak>BesNQw3&_ohZlidYgAR~wuZ9bTgtrtl7Tgl(Gd#Z?{2Ad1NcFcnaL-cW8 z+((b$du8`T#_w!9hgFbMzRgs6$+LYiwk&`UwI0qY z&pvy$ORdp^nMq*27U5*BKH$?c63J?{&2uoG=C$KvoSyzP@A_({X4C%`!ZJ;gC*IE0 zB4%{xdzk(8TbT-M*1K}F?F8SxWjcFv-F`Pf!C#_sG+yJkkEerSo@qo_SUCfi?92c2 zkrIve1$7?t3ZF{%j>jFg&;f2I=MGDpd-0ko#}^kmOkGbx9{7{9x zJY9Fx4uRcP-0P=b=&5rvr!_19k&=&ELBRggFZRi8*Xurw!*6vS9@w=T!lk29KYMmx z8Qj(G5zOT_VP3G;o_fH}YGgO@H6+)oA+}~mi-=s?ViKh+LHRwcT`PasHpzBZSK112 zsgjt-WZJ+X%-LV|d^AD*%o;uuYM2-sVU_<~VhfVta>3qXNm^xZ)~+4KL8BR{jKlvV z5DnB%cUNqv79+>{(_B)A#SdutzDwvdsOH%vB1YcKU2ph)=2aJ>V=}sP?I(j! zsg6r`1@pRZbG7`+CsdCKn}s5WYXZ9wt=A5A`bJP3WdS zCy}8`hU1I_{Cy2-TBdsMWE?)P{yUjeRhgNr2WYzsgOohag;>8}e{plzQ5+@+L(L_y zeGlhkvx`b-&N#&BZ=OxQ&tEQUTu_tT*l)e+dtcr0VVqpxNJowINBpat?rPZ_CXUa| zDQ}J6=RLtlySxl5$6U78Euuc3OwKK04*3;HpBU0+p&U*$3S6Wj{I_EfPj3iR5aHzk z;|bdg9_5k7?CsStmt5Z&WtHB+4OelV zL!TyflDI6Hk3NI-eiXWiS#ZOW8+ko?(&Lah>q~2`}kNX|4EumhRe2`twRViEdr;DQr42D9M# zI5BBSx*lWtAMNC;^wG_Z{}AX`cnDBaGe|M)ik>aFF+cTPeb(S#6kSn=?|TV_uPD7w zrTQQt5P9(%l`GDQu}7=cCq0DOOz}Zd!Iu~N%u1Ns{${HSyfTf5KUgzC2eY3r0aY+H z>&Wy&rRq^{;7O?&tf|R>AwrN3mzWkq8zKo zj!3?Lr$o=nGt@uub*Q})XB5FERTH$m;_#mPN*N2eH!Yt(0uk( zxQZ1H&n(u+)2iz)rigisXT;I=;``o9;@j64fhM-Oef!yE&-FmJLefX=te(PZ+O%#u z@9R9~tIxRYORU-C@_z(RH$E#*ex={$FU&2>>VrR+YkYXe6;ZE{-3Buo0&U~d&zV-0 zSEmi_lLh@cWZ;m&YaK!d2fPGF`yW?6(2Cn5weSb%lxY-l^vH>t_g3}(S9@lE(0LB;RrPiIRUGRR_YTd8=tCHFHtZ`ojSQ9jV%bRNt8207{_D!NQe5_$i0Y-5w@<&fAq91vx0C(cyefzuJkUU>M=>rrXmZEf}Y zVJRJ1jLU3W7~wFCa$6p%<#~BBsY2s42>^7XKkV6j zP(Sb7xIK8+U-_T|lVRc$LOxYZCz==836T>=Sxu2 zCB##@gMCnpYXxJF!a8(!C}zgDRzf&vIN>Atx!=F|Scf@3QMAs7JP$8?*ynRx$9H{n z1buN#g&E*jTpLd@(M-cHM7tid0%)G&N1q4Xv+9?!aukClFlEY;6queBxckV*F;%80INRWQVFn^@66;3;9g+<)rhg zF6;~sUqTcQ?~4tAalubQ`9_swXM-uiq)jXREc}ixx>)ObdKO)yPtx?4hkhWZjPJ-e z46?9LtDdv4b34!d$-z&89F#!fKl!Id6X?(TW|lzE20l9=_K%&97)XS5VZEZdQTg47 zv=B_*(MS}J7P=4_V*5Y}Q*Xw@TV7~^p5%)y8&dHxOwOIHb~SW51)gqL@W(eu2Hmu_ zoPJt{HdBo01lBOE7wS_2!HmV%4gKX#={0v*`v5K9%vUjMiciDhwF<7TJyCfb1y=1- zm6Lq;Miu$j7EtnGk5^BVSKXuHI%7e^6OGAkXB!3cv>|(5-~=Ao4^1>OrGv>x2SrSd zoBZ3`9CH+y(go2a~EE757pp0 zBVvc91mCdH8FoD}=se%xG@b35#}zh}XLe}ne*(QlRP~s>1M7O6-`3wSe)DGJPkJYF z0OS_Bel@V-ZF33YBYXA`n{Vl(>t&dh5np!`73fEu8X@px)K-Js%TYIK)8l`02t-^4 z0lL1OA_pYksHO8CygAD|qiVmoI`a6!`{xSBA08*}?s*S!4N^r{w*9f7KVl-pyU&0Q zIR2b#xkK~L_=PWZ!}2qp`@ndCfunCmF6Go-8JxP{mt$?JoLA(vZl15JDC5wN1^xbK zC6Q6g+FB6ue97peh@JY2;qgq{Rucufn!*FIX4*rTqdL0Pnpgq%Vr%(OW8GhxzNqh~CWI2ET);85e9(boiiPcG5 z4_D|)M`{Y0o`gtSe#6f(zA!T4@I!h@PqM?Tl0H80?sBumDpOD8j+A$Fom zcMax%PQlx$QgihF)Nylpqo>mqCedJ;o8KtbEP>ABZYHdyh$!InFP<@s4bJII=bAgb zooTYYv7sUL9Q7}`QCG=#2$P9vv7(q;_#q007E z?@yteP;phg^Qxt1XL)xbmd;cQ`(aL%5vqDG5A9zqcqr#$Yz|^Szv{(T*V+Qqj2K*~ zG3RtZ4Brs&gzlJkJ)-!%h5oBjq2kvTH5p`dLm^vj$HCNF9m|p%%@6Z+%e5m0foN9u z4o*mO9gWx!%|J~fa*S(8Tr5B2k)e2?siywkpPsFkfbPOwyO6 zAzu7BVC05PS4n;V&Wkx%CPq!We1c|*Wjd7<`@4%JMx`j_yAxq?BFzQLwqU9hMkR!3_|kSmvt4BLgvg;8 z6*FhZE^~KcA@`cnE|^TYFLw6nYRvAVl{qTNJ4ur*Kd9?NH7w+EI%L-Pp9H#0J|q%} z5JG3Tr3W`Hm!)yOUco_T1Vpjk6$-mlMTe+e{~5lal|YWhyAPls*D34nObcQ){ zC^wlVp=|jI%TJh@EOwXzXae>K*#C2(ttMdzdo=Ow%@TvVhsRFHD1uQ4`IEXeo)X9Z zdEC?u(61O9TeB{;(_$SwsH@J3u~6R4`N~J|hrXyxciV$G7&TR8m|(3*f2`-8^`$z+ z=QD5Ngjtd8wd97eW;N<^ogdA_Ca>(tu#~!$-7a-R26gA({*d*@kw0i@zg#@p9RREh zR9ZuMC`a!D;Zse)(P0Z1PT$V~1sO?0j5=K%B4*Lu(oJdMLKL&sX#zNnYuGD(ygsQE z>H;}8hAF=9wS1@eN?qI&H?(%KLgR8Tr#y+WM^_s-9a6*YXLJ&!tlp3vdm9gbv(2lw zqhr6=DDR;&Z0DFZEN^QzMBKf!jDPC`!F<75OwCM8H0oTz5oi534U{=v`UKnmU356E z_C1~!D5bw)ObVV8H~%E`5ubIq)%vY`U?hk*j5klq19vbV@UH-x*#_yZ{X)!ljknn! zMN9*^ai%%yX}c^xyb1&U!Ec{e+HJSGwG@X}XPf5b ziXri3S`j5X$Sudm9Y4*lqAAcdW(bRN2sbskyjvm!dx`BzF_MJgRMONaCupe}Y-qZ+ z)_rg)Z3EQ`U-nlY-o=IIBWrkwaVf9Mv{&?#OHYcat;JHVT9%y-?WQ8o;M5B2qz?>B ziOAMRUek`|PVGqQU-#DQWD@W45vcu6uM%%1J`qvY(lL3gw@)t(#og9#Kvq219k-AZzWgtp0)Eq&IB2sBG7k<8eo#hW zXMk?8Ny9ym04`B!{VRt5HOA1h@MZC(A}{#}t|U39LO6OyhvtueD_9Ys(Myc9GbM&+ z=^&!v`o!!88h9T4)i`Fud8vKGuXvP^$b@0hcEuSA{g6ZbCcZ(?#*WtS2`0K24gcr! zRco{h|2+Q=xc>k<=Lhb^&KO~x;qE497s|@kq@J@j1Jf2UVxsduManK*1xz}Zuj8R% zT-HFQM!Tv?RPyy$lre;K)0>Yi;uo=o;jVALTB$wrdathUwonr(ulYO=b+}@o1C=tt zWuSW|gcKOz7P#}~lT?C$?H6me+zN=wUZ{)DeyfA(yim{JXsGSW$|4^v=HSpXTQs?d zbne?EMjmA!tW8lH>$Vq=w%2j z3w-<#f$^qdJgSpk`qPVT9V?w!Unw00}FKF|`6SEt$GRJRe>7f+;@1`@zp`s~y-{Ev8t&`x z1$WfV`m`g()uTB^8+r96e4&ARU0F+!cl7_+9HMbJ8lSi8Ss67r_AuO>D=eZuKmVZ$ zc`g3?-Dz+l&j!`Xd1%pOb^*h`3F4KwvSc)AFw_!<4ATp>Ha4@v?Q)VX)eOfL@{XV9e1sG&&e8tn3Po(^H+}j&b6_A(5=FDRdRW4#IdMpib z;uu){-O!^6ClV}Wiqv0H&nwawsFZGpxMT%Bjr~M{u3&!_GagK-sMxx=R}tCyJ>nkO z#-kw-w$Muk`p&QHagKZP@n>@)w(f0-Lfh9Ex>@h*mq6GzzxZ+|F_lCP>W*O|hszzCw@xW598I#nBTvT|2|8c`S$ zaIsu%9^v>&eqdYHh65jZbQ?*fqg|+RF#gpJ#!uV20?;r$dlR0qOSGfuw1(=J%1~i& z$~G%-!8BS&eM#3v5hF6q5gInbh|ndL|P@SXV)R z6fl7o#Gy08`|+ZPx5&uma{(|`XMO#|S+wI^BQK?-yuk_z{0^b$)7IY4KQp+d0@i;d zTEA<~?RCk=e<|)^;@<7~;6;$i5YApnhTHIhS73?J`NCj<@DHEeo?2geDlzVWqnwCw zjl~92!G~OWA&=)AGaao2omG&W}tA$4`DpU=cJF(2}$-LshOpLm?Xfvq4Mo70)Y@uNG?aJT}74flm zsj^e^q(bV{L3(9=kBE%v0T&*N^0dV3^Q!nus0)tLXBFC<&juT*eZps&%Y{R z-s}Y;4;!{QV{G`|lAzG_y@<)2vB|>pPYW!2u^vOWw@u-JMF^#SV zh61Jh{6+A4Yi-B5{6NUoqo7V~WY}Bfo1Iupf8Q8ZW5>o7j4O4Sv{jhz_q>sq9#pwMt_ZQrTC+P?w2W2}MOYtL^gWFe1FhlFI zGfvWp+huknB){B{pMMw39mWRW?;;G#O+e}+QcS61`*QS>)o!ESW;EAj>vv31#n;X< zs+5X2msaC}>NMLzdfW*U}cO9?9{nIi#B$D0Cg|oNawki zf225#qpYGA-fxjF+kbt%Xd0!=5|Ze)BIRS$5u;Q^r*>kfgHPqhGZX_CMJxgD^Ypq zeY7?IqI_}~Ck)&lZU4AG4CsuDzefESFuUdforiibgw?qrmd5-T5g43ZZBBRPr{4Z$ zgmaNpbA*#)AeEEh7`p_Gds)BTB15d{-TCo|xfdw?rz{cCVppg#?d#bmHXP_4&MBdxE9TPnm#HH>GNzkp7BlF0TVc-13vmNo~UV>{) zKrtC%{YqZ~5t-Et>9;H?-KpfR!NzAa%6*0931VbwtZ!#I?Cj<&{QPJv`Q<_0TrK3c z3nFiW&29Ugvac*4cyT&H&7ykdtM@1MNBOMP9f#{n*uOizzt(JrvkbglTD*#sv-1cP zcsDpVMyafHJOB1>H@7i!XM=q8<7=!zf*QtvTLZFZ4kw*XrgFqwq(E5Fk&ge_> z7$hRJ;2niVTCn3M6Me(lhY2986&WDnd6Y6a`T@R!{iQ-Z`ng3>cbRfdJDN(0d-Um_ z4BBYv3=qEQs_*`RL|@=5K=$kFr*2C!SCQ8=709`_ON4&K$Xv@AQpd3?t)Kp;tg8os z_i{$bhKkv!cudI8g}qS}qAs2um1KYUPp$ILq5*{0Z!m&5a;wRJFHfGOy(V|t z&rj9`@+9u7JdSH4EK0(6`32I<%lXInBm{nxFt$HK5cGrG0Qh$^jY71V{JVS(26v%t zcmJot`Kzy}CV7AK**7J2>w@pgGjwM63UVx&T@ri2otSJz;jwx;DtrtNPi^87p3|3{ zNK~5jDKB4(@r<3^!b17_dQWOyXC0PKD!TP`bJ{3xQI7eq3k4@27C3Tro)e%wtGu`p zOIscfmnW*C!nhpdToeB7wf*}bs!3AbgK!=%4qa#SkM4&`0?SBtJ2`hf;DFPAcH2vC$!=$y)54qv}`Zcc& zmRMBp_LY=U8Fhk#?5Me7M91cK_bF>!&*Yw((YbUlHVVgEM zvR*0;Eo*W7f#2RSNjK=_No?O;)WZ|5h1t;xJMGvcf(B&3t5Mk0Wms+N#_+4f1Mx7Nc=%xwY7?u8g9sm2Y-@P&0Hl!Sir8tg|;~3ToRFue0oWV-L zAi{li|CNaEqRqo6p84Z73+!Y8(59J+l&4-=YJ+nxJJi4j)@HwLm+|LIhV+c=mdnWp z69n#%;HMFXR6$ z*=lT}uoX^)CZ3|7-eJAjPnId(8J2!5OnOyrHCi7`j89ml3KJ=tZL+ z#(qeA!H)Q{AFJp$l#uf_qk^N~YOeZj(`vf$tGWezWmtNtk{Am!ef-{A+I7s0CwfIz znqulnZI1Hywe{C0@aN})Q2h0X2h9lX{@*Vv7jicgW>or-kx>oA>N3+MuQqljHO+@q zncSvqPq{oC>_d6COWO5giY_3TxAMb1GFI1|ml>YhE`rjSLhez-%yhzJ#FgI0Ux^f6 zsYIJr#n`zbVlqyesDz9_I!(D_sT7$juPa9R8`Z*bo@8z}OW9)5VNk~a$2ST0gK!WD zvER+RjtBeBg7(iU-tVhqyl^iTjCb`>`+* zo@A+nBKD|PujpQIfMh6YRv#s+j8cl^2U`Q-D^ia$F<+5Af#iO5kEOA(`)daWJo;}Q z{CNrTj?Cn$Ls{sjqeVV9pN4UpG<}NQ9r!ffiG^Vq+q|TJ1AV8nDV+O|c=QYhJ!IF| z`R^x2$2=615j7oQiYap3B8uP{ip%;}?mUwy$J_1a=hrdw%>uXpkk&UAn>$as3A46T z=r&7k#^|AI&z!a2tWj%k2vYtU3z*`zEa=w=O-$zIypPMq1j2$1VZ^fwW5Ifwy?iEb z@;;?Bz7LoBP&gNi;s2o|*r@t<#zy6^kvKv1~K=2+OTMinHU0I4M zriBtVfHp2bUD$5gL%-^O}LEdJI3fgUJI64;)9XaFu3fQuVT&p58G{ymfE4BWPc zdcyH&ZX+ryzQ14=?RBYoHO=w*&vEYu0VjHOt1JZ)*HAt+nR{lLvSdQewx)5MsJotf+XB?Zfyv}_48p;vfP@0&fb^07_lW%vJh`?3#r>r7ISjgSK zTgmIj@>Tw_!HS++PI79vX>cMnN1ihlk4^wBWhjz2DBX-VdSyGOxy5}?z0yAMO8 z5_grPK#rRAQ)s=olU~u`6#eMZ(qZYnqMsCzEcCEZprDbGv=o`pQ|l1~XoClVARcNm zquoBt*Bw31%;Ygh=^pdSG=^%l@f1BY%&nLi!?<11aTHAQ*w<~RM=qB8%KjheZu-CT z80&cAU00kQ5kAfR*ON+Tz{h;s9ETSd2ic}Q-#XM9%L0@{58BK;tnv3uAQ(r{K3RVGiGhisou*N(9@w>39#_>u z$|w1hBcVAmGVZ!54_4_W!pqf0#8QhnW$&eHem09yEuU-&h^ztom93&ko;2-zf>gvm z9m?LM4^&+grEOUM9dZ%jof*J32kJAPZw*i#cOyBn?M731UvY~O9`{0^skH@#6Db61 zxZaY-_I~;et%HvFm!E$39rynbKd5#M*|&2fXJ1_G0n>|h&5y%vJQ9gG?r`k%l+tf7 z5QiK2kMV2kcIJ!k7YT`h_7vvsE3jqhAx`%&ivh2ZI#Fj+UXCX-#p=t6 zOq=E1=Pv)hV>fk2g@FEv2ltMJXj(K0e=vqg1OmMdhUVI36Z)dRHHuM!8arytMmDF0 z7@GWB*2Kdw!^E(JH&t+vy}?q-+y%Gf>*(}dlT_&lL9kObXt!u4@aEpP9++CFK_V9} zmO4WBkMt?}-KGn+qRQ5g_zRD1%jHFsHx$E2@U&Pdotn0MdN$lY{_nK=`;6>MwC=75 zjh%^_8IF;<_ggqfIbI+aV?t?XRByE`y72Zcao9a;;Lx{MpWeO%Th@+M(#u}_oJWfxZ-scn7^+wB zalbV5hxX0zkRrkyG}K;!64wt8&2Aoj#hFsy*acm$+%ODus3=m$B@3cCnz8)O4xyiy z3ea*EeiI9Vm@01IK(5O8G$afh;9CP3}na+@b^S3O3F zOhU7ZmVz;#s|EoRBXy6vGK?o5G|(uVT8=UFDoss{)q@5zgxsoJ*5q%MK@aMQAYpNK z2{Q2>9q1G}Tz-*5I32_;w3zV{*XPW7?6Q}qQ$|kz_bQ^p80ID7d(xFZDzMvpAg#b( zvG*;kW-o%gg7*t&;x`|1W9BW)Cy$clGXIJT`j&@&)v6@Gjw}2aA$p`?!bV|N15D6VO;+C%NEol$C+9X8Ym= zCSHrnjs$|!E! zjQnFW5|d;Y)fY6GXSwaOhImfGDtv6xcppv``Hj3WX2*ZJ`3s4J7tO&BEG9F1-s^4{ z2VR|Aq6>}M=;}9Vvem6d7X)V@k-qOiq%$OTl~;S%W2G}pkQ}P7zXrmY6rj-L3clQr z5+HII208k(Dm;Pl*NTfyEY^PO#07OSQW!du0US=kRk{5S=Z5-|*_bDrV}q-~t(PuX zi?SY!hV5snVBVK7QTde%tuOL>Ac*v3&s(w{NO6>SU|NJMnHs1OCYQHBBK6DJ8cSyr z3J`9_e;YMjFMc^YyxYst!hz|hjyZoi`ud8>d|wgPzC~$nUov{M2KaS%}l` zpu#`4p8st*^1id4PJ$30XCSoCD%8;Gt?~CHIZc1;-sCZY$m<{!1M zag17Xk&cKwj|1G<$z>+@6SV;2Xei6zxAEU@DNlfO@vbl&(20thql&&PuTkON-luEJOvn9IB$zefUn zvc)F@+E*a0&7BNejA70i0w?D*jjg=#Y%< z@GXIeB_*-IG$Gk#HzZ1df380)VSUkSS*&b}FVTS^b~^jtJ^b0wJ35t9qf@hzYn)q* z+_Mx9ReA=Cm`oN`Z)s$>EtW=@aA#<3r&R?zb(oOjo%-~5L~N0o30CX*lTud6{Zb-Q0|7?lud{dr(2*yGmVUa#~-J#v%$3q9(B zduHF%(YHl@J46h);4PlWV!e2n*rDr<+$lOM?Sr9hRJLC?SG;Fw(*)|wxZ(dLe#^1mjn z7d@HKX-*5z5<%y44}=)8kRorR>%q%f4Z@`VFySUVQy)LIHw@TKW41+^7`Md&FeEAz znzvheWx7)QJyznNtPP{d0u!jQowV~OFTNyI97%o9OIL3T@Z+7Bk51CRz^t8^h9#9%XaF@M6b-dvAy)#Ut#!BW2*eUG)bbKsLzDZuaSGNA>Hd zgNFSi`SLb6)6A`#RR(`f!Pj(RELu7|nzPMYdp?gfwYgci)uhDv0=TE#;ao%$Z{y}7 zMlUQ=O$tjb;GOxkweK<5c6?-${9`(Q`+>B$YL7iVy0nqA2vll2C;r(jjd;1UJcp4Y z=6~ix2hQ2!Fnhlz5x;HD-cB zD#Aj(yU8QxRfJWd7IY;&E`;xP`Ijjw93nLdbC-YS7sr{UrcmZ;$Wfxak8U2TrG$TY zU^iWHa(v()U8vJmb2YRi zskAf20&XZDoRX+c#Y*SORCuRuj+$eLo7z+gg8zy8Fyk+2s> z46eA(W|eD~vNDZr!ay&tdC65GoF?Fu<;W<1(7_Tzx#W8&3C|5JvBtOHiRbnWWHv|q z=6sS~7A0B~Wq)bYa{c#*f_6?#4l6D4hZ%}Vp(X9#$>jd|rb^Q03YM8PwW77Ct)~9d z>4Z4<0xC@+f=L2+S3iKjcf2FENR&?|OTebsrc2v2A}Y}{z1LQbZv;@JvYLKRg$3lr z#;WorU8KN-^s6n@EP682)^ijBf=*tKmxsxo!p$COBJr%qI} zhQVt>tlCINijv`SGtRm`x;7LFFtR$_ywm4=G?D5Em7f6i5fyc)Vrj`__5DNjvI7_s z2S0~fad!C?`?!yUS9ll~E z=Z%Ol6%QO9X~xb$f#oug{pM>6mIT&aRFXLg$U_@5$Il1+e4vHRg=?bby5zI9Q&J@3 zgFE-=VEN~kLJ;O)kr3EXnNR*O2XBszh^PBHPjqLE%hK)q?<`V(G;#9${=h#wCq>&4 z((22YPqek5cs`@?Fq;)K>E_-0FJuJ6%Ze-bEJjF*-Sv=K`j)(Ywr}vtvd#*`teb6s z2AR({G)VRE-VKoDDFoyLDw7kkXCF}Z1p&ko=r15+R5rz z;mPkz1LR@KZg7dI_qBTSz?&7hH^IXO(CHgtS#sk+zXNl^}E|j1;x%@8c3{FRf@+4s5rf(GC0Ly3wyBc2jLC z!t;m3s1|>49`<7sJpJy|gLwjE#-rwg2ggX>Q>EEjA71)^_3G7=6?PUJAVPU!?D?%n za8zxxE~o0lwS+`Qed5308Q6pOyJdxE>rGEo~a2(JE%1G5vWSJXMsEHG`JaWMoo7FUP}Boj%uA}eW#9ekUUxDgx<5r#YamIw7l*TjD;N3<&^vDf z?Qh{X8@k6*PyfuyV*Tp5l>C4gvw`;=Jm)(v2Iz#1C7+7BeaOuJ`5xBj$9;>xyrAuU9#D9Z6t z5$sQNY=Ap?+^wS#LU&%*cyulCqxDRJvU>l}Y?*iU=oV4^-xlV|Gidx{)u(Bdyy2%p zH))(ovJgJ>uA*Hzxjbc4h1G;HJIVv11hQ(3kP_=Dr@4nBu+Or^>+-u3;lJ=&U6i9C zOu}LOuWG?rUhId3Kwv#2M&0p|2A$POY%eu!?@8Mg{9AU~$hL?5inX@9iQLD>HQ%1! z#EB7!2x-o>uXNoiUCQ`>Gvbql-E;rh@+LUrwnl$7T|q|_2dKW+7h8KC5d*D)Bg5&sKWE4~?mmzItPE@$*zS0UoPPXH7-B=FKqaF%Yn?);45|6%K^qpI55 zZk5h0Ak7Bp?(W*;M!Hk!?vNDe?w0Nn1f&s=?(UW@2|>E<;=JE^&-w1XW2`?IjQz)2 zzkHtg%xBJfq}|LGe7tuqhK>u`y9S{=2Ky3}PQUIWm15uK@~OX4F{M{8RVnelJNl2P z9N=oN|Ekw%ly7&>`P|33ed&_>2>!35uR0V(!D_VWer#CDauO-HrbBf6w_#(j3($|^ z6}_v{UY3e;suH~`0a2dgN{BW_Bu2I5F_r|EV;RV7i>~LAJ^iAQ)34pvK2vkpR5de> z0yzSGJ%U*b6Jd}m|zUgop2ck34Zlu=Z@;S@<4*#3f%%{7$ zs;n&8I&XM(00qdSY9`i}JGZ1bZZYmt`2N_NKHp@WVyDR4P>qSF@BR`hC+8rTqx98m zk<;g9Thjo@cNi|de9gZ9wHsPeb;8p2NAf{$k1Kaq%E0Hy^Lki9ufTsvNi_KSg4B-k{2bWQ=xt}xL?_{l!XO8}K7rkpSJ)8}w zyy{jR%Q@dpnfU!9V18vP;8zua9!=-rkN@tX-rk+28`R{&v-B_6Su|potL|Mu3j-XsjrpEnc^HYWwPIKONfO1cQ=h-Lv+aA7NOX zbv1AGixH-WP7)Qv(cUPFlCK@%0Qc;5#NGuW7DT0YdbDWBWcs|@pf&de@CL;1Xw~{n zIEi-~C@REoUu>6P3}y9nE| z`-5xA*X(E$`XKdkjY9$s`}T9tv%L!VaB{!aQ{HLp;cSR`rr7tcBj$AE>k|$Xnny9~ z_1L4J=R3mHc=@?p*+4m3iM7OD0Mp=KvUv3(pW}>mnyPt=()~<>)$EK)4oP5e)i+CY z(IA7LC`!C(e#ymgzSTm`$%8@S3XUQcqB3yd+1ijZ4~x!zT1IqL92$$~L3u@aKDCVs z*`eB~Da?n|Z`;4a)h)NzY6tayi0U{E;{cEhTIYQ6f=R0wdE~B(CK7;zr(hGIAfgYC zs|oZEzfISO61nT#tuFrXO5>|`{!)z4^>~*Ib%OgXpnQC|wj2>1jd;2qqEC-K__Ly6 zts{&YjI!yR{eWg=Z5>WFI&jVZPwQ}|;M@7O6Vx$HzVN~n-h-hU@0aTXiHEYTl5nsu z$pXoO3P!fo?bZXWvaRetry>cXS)djWG`v?zC{tW2)*QL5mZwl-k}j&3|%sa;UIe7Jl| z!bjU?LW`quV~4XK9-yGrwYz1(Nf9zSt(ju?wW!+&OCRI#{OHlVgjh+7fgliPwc+G+IM{F^tOgX?*2$gHm4+Z?+^`>;cYu9LFFC>sH zPoyR+7|vWbTb8Rl%r??Ny_L0CMFoUNyjvz^@gSBAG8b08ptrZeXs1BO<;9^f7YFTZoE* z_IDu5BtH25)N%H3++sdP;={il`hb_2`1OB^bHI%{FDnkE_#n}L@t#mTrZ(3(qLVo3 zlsD_7tLT;F9r>159y`!xeh`Zf)mCX%c(j;A13WwbZ0{7xJ&XB-OQ%J8>(=?iXlBI0 zE=)}1nQsA_90NcLglFMJI&@pgW_ZQJO=-5|yfpxMVQsD5zW8;P4o|=f#%G_Tz9bGj zrp|J}?&k=Q*gNf*JK}hAJJkjFAuZYKe-1bYVgcj#@0Aew1wI^i+xuR5P0!96t^425 zGDNIjjx7ggKW*4CdY$-~uoJjvg^iwSc@X z7qhdeMZK4CTiv+u#YG=d<{-^qi*@nN861WYtMP6?4a>A2r|&%v#;>Ef_2HU2Yjy4^ zKY;wXQCwVsX*&}f#83W|X0)PFQ728R9Cpl{BTFT2*Nn*=@9+y~=acyQPFow9C&6DK zCQsBY^m8YG{|F>2<70*eN;9_nnv^@eC9>b(xw_ZT+)X`rL)z!2WMB~N;J(#tp6yBv zfa*~(BC92U;4ST~TGi9s+BHMn%5wXwclY1MHUXOzlo*lUlm=c8uJjC&fagtvJaA$d z_h@~U6q67-nQ*pe=6w>p-#C7ke-S?P$GT`P;#a#t$M3U$9ShY1ar7WIc}Oa~aqfG{ z{LXX>S{R&lB%I?=CriS%(;)K~0RxF|n94=1ViIR-LzM;wpZZp_e@Hu;dbC}iNZCPU zOL4;FZEAjyzC;L&s;@3dF+-$BO|x(kNFTE z^?nwxzb+(JOzK%Z&nqeDrmmn)rjTyAj@4AK@zU2(B6(0P6%LYwN}@zgn=0-%Q7ES? z)dH@mWiw)YPSbAW)FGP2_`w97Z&~QO^*=1H8mz(V~W7G{e#1uHHC5* z(Gsk}EMFlDX&mN173x0f=zJax-KTlnD5l`l?mUP znzreyt5X3|cYg$(dYe)m)4DTCK7i1VIu!_%bi(8Fu&(Da#7xy;QK+Y7u$<5S>{w%r zM8eLSNfeZJI5mzhE+RniRhoHg3AF;XJdufCeqDt3Q&2n01rF$+MC$f$}7>S^hJT^A!! zA(ncCOn0+wmBtVwqoP!p@#?d`-bzoXq|7oaKp}2ohv2+67B$$Yg!l~9gd}@81 zCjyf~>Sx?!h^s=X#PRn{?zcx|k@)`%FfiD9OiH|5x7Iq2Ap~4@1C%jK4t&J^{$C_v z>Y2zf(~^zwI~=s?>*;I@M@omJ1CFyh1C{dwPky}A*3qGt`4P6=KS9D*4d$cVqfO5w zHP1*2r5C{AQ^%^q=;;yNF7kHVdyh)JBd;c>(-1$%l)CDx-@jKNDj<8T)N22R+vgEp*r1&x z+jcclzvU_?w;J<5KNB(}BUF%=LR)7I6qB{hpxm0Djmswegi*2CoO!#RWQ2u>Wb}ij1OMU!$W(s)1JMVZ<&e z2gmFGd{Y=N271MgT6jcZEoQhnt_}LqKq;szzCIETegC{UO0>IPP&hkO3;oFYc4EtA zV1jx);{(d^ceQ;1Rw?pgaQWb1AS1&!Nyb{87M|#2$MMS3#C=``)y7U;DiMLe z{DEWKw!OI&(#=e|O+EtkcIDk|4|lHk8)2`hfx-f?6{!(Cw%k{kbM?&`$wsQ^GG#$8 zm&k@=En6~}Cl;-sUACfw+;RH~cq4VV{!qUGZdD1_hq)Tw3n@(AJkHc*l$<}7i4|I8 zn$QYlWOIL>XbH~R&zA$*LF~#JI#fyqpv1(Sc%yQU2-BB3-Fq2e$208r=H@7Y0sSfr zGo`ma23#Am0dLDNEvRw&BX|2{Gn>GgFa)^)@BjHEGxyD_yK3WI=GwaY^{xFW0Ectn z&rD@+da-$S_VdCM6D8PTXIY!-C-}!chxzHOfVE3%9gXkp>qrtVl>bbUG8ieu){^%{ zLls)wR#lL#YBU&7k;g!$u$gB^wnK_z3|P;>4yIFWHJI44PvX>zWdhaB*)4QjS0zRD}1qJl-zctrx3G?z!jLOh&ieeRJJ=sL`OdJs%ZOn#1K zd8(j_bfqcL2A<8Witcy4>fGGtiysV*$|j?sK@6HI`fJapRyOK&Rv8YIK%&WH4cU?| zjied(H8=ti!x6am?3QqU%N4JS*UV9n+hWR!=_bTN+SmvO<5bnPXeG1>wg!_tvoM#G zT5|FsSkk@5)Q zzxK_r!+TFgxm*utHAkLi!7O(86GKF<^9TsmLR zM69qL3Itixe!crH7Mb1KtdVNPs1+wb>w-Xz+Ll?aLtGY-2U_&jIs+8Z>8Txn#~}EnPhF$fl>G z*4EjM)UqMLXaQE(|5|>*1V%^`6DF8w2+EJQ>AW8|0<$Vt8x(gZ$OP?pl9{w4TkP89 z6&vd6*1PK77&g8Jg-k3ihQFtsw&p{D%;gRC%=`W%<@Wteg@EG0VY_+{&&-puDExd0 zHmNZVC09v$l@WaNQ4){t%6-GT!OW6{A;_E}s$|JdB8PALa$(Cwc55f6Xq17DoDheB zo<5!dsyTn)(L=pLJ%OlI>$NSBZPHH_f{>Ue?h_tSoKtfanz5H|2v!vz-E+u!2%|wH zh>K+%3C(#VqJSt+m}q;Zh3XAI-_w6TngT_Zpfm?PL=Z_QptKVgAMXzkk~(HqD?fie zpKtJOXFqKqqZ?J4vZ$$*BJwf8=oobdE-K9JnZnex}0ral^zrt!w><(1*34 zxiwE+RK9n%OH!@&hWH4T+&e3*csDn&0yHIS4i~FFGM6g;+g=WQO^KImz)KACbQn(f zPB<2GAa{a@>P@vfKAEBxlL_U zF5XtveuobKZZc`ca*jQK=*lPjX|$an#AMw1XGGo#yzxDwGt=jJoi7#D`C%aKn|Za* z9cXK7XV0+)akypOQ?F4e2fqXqWElx3$KdNHTO-)l%(aHvvmNY>ZD6#(h;@ACk)Q6?W}MM+PR^Q>u;o zT;^vd^7|aF`!N~yYw*=)yk_{lTxh?W4keS?|C+a3lHPS!SFgiO`26sZlE#b8^vq;9 z%axeh_mN7fY^}3yP9bd0ckdLFQMb8qs4ZL20~#{ZvRQ9Rd{C)zURHj!zZS_uhx|J6 zg^r+kJ&8GRG*`lagR2@ z0ZeLFYH9U}ozkRrWDW_t_YL~$^Q0On$xGsi${1W-vUYqr-<2UP5hIc@;K8)~?u_s= zaF|hhi3SJC^iMS$vtk9d(Lh-CzFjVp?yqn}F_-cvCNWM=0o0A3AI2WyI{Qk_ zX^`t}>2kMeFMpNxCWv^!kWrPz^1en1e$U4wbUc&AheuYuo5^(|hA;lc_!cDdWudtO z>y@y>8?(_=5|$QeWcD{-bVI&;Vf=n`DX_>8&MquX9tTX6ci!k`-J!5Q%|L#GeC`E^ zgg;WXSaI{5rQV{0mU>I#@To+X%>2m@*8L%>fgg!4yK*h(BTcrIy#S%jQ19qUOSNX0 zRLsY(*uW|Ke27)r(AIt?QsJHU5glN5SPVAo$a`-MwI@ppwh{$037qqq{p}@7*HfgJuzD1|XuY%Rmpc z$WkPK;kf5sCSfO<$}a-qhf9>#gjoNeQdNncz_n5C#0b#GQTCuYI{((*b*e8s5l1$jl8`@AnuJ^+;VBE<#{vx-Y`gXd8*;k*=G~9)9&-$FXSk8zwDOPVVpQ{L>j{dpo3U7t)OdQYSriZJUCw61 zCyFX@!m{+R^G+4Zha3a2#7l`67PLJdfKt76932M*>?@H!FMwG}Er&fDbVN=UR!I$Z zAp`}Ii)pbMqJ$JwA`X=4vHnuxnKO$V9l_bvh4B}3DjS;}>?{IbJH6`1VSq-};J{6XPG)oH%d4wPF~}6nXWoOwkKbY3w5kndAnVSn%e) zBu4?Pqqqw+W+3ftrN;Csj8CG-_jSe{Z1$Yg{t^>sRBJHRlH(G-^(91#318 zk0fV_PQG~HrKJ(L--oP8H{Txhq_Td@xZEP^*jMqm%lr_>!~9Cb{THUsV|S{aQVyId z(OCN_`?2;%&1_qf=L6ye+Qqo3PF3Q2W4gGWZQNjj+ApE3g?;PT!Ji4dYA~d zJwX)N-~;M-9)9US4xPZK@9(y@w)PCL*&e88U5f)!zm9*JzNG6UcgV+f(0J_!_cGrP9 zEx3`eW(wnnhejxmeL_dqYH~6irqbvR1PcY&y;uIAO(xql!LLwC2%T{#(eEWE2yLIBUEJI zRiWUoAiFRi;0G6ppKN;IP2BOGl|&)J^IA3Uj|A-%g2!U)MDm#tfExa)C;sS*>UL5( z*=vf@BcWvf2>7wmcAdy(;!#p>VFU#QK_v#~HYw3o93C#75wyLiw%J^7(&`LSq3RE7 z!kM2Q<8TTavB)6z(%IhOB7nmJ|LSJ-eWd`a^X(tdhNuLxy$g8t$$<&jxP`mQ_?5bL zZ3LPyCa9iUUWGc|`=FZF6MW-DJfrEwt&7~=muaJ}9G-t@eU3+%ve2`~<_?>;s6Olr zFMw7BGwCwim_9x&pA+wF?`-WI{ehoRG(7Xtnvb}izf2Ag9ITc#f3M}Wf8QlL7~wd@1Wx!NSrdnw74ifX(%C-xg;)T$4X7ZTCb({p`cpCu`0 z&7hJ*`%ONK`Z?`9YbD|Hd>g?AlI~mP;B0jn*Z{3^Rb%LdF&gOQL273V8gp7b`iaaY z3&QjV^-Ibj&>9}*4NCDQ3H}Jq#1?AI!KJBm#Gb;+g#NGu8dt0HB>=@T>GCEDkP!V`stkNKZg zw?7=Nd43q@%5SK0eNH}-{JIR0gg%jfX+pagem|v}vb4$VpUXYxRjMgg}_U;uDRn2!tSFVpvK7MUgw`=@p7jqcbFbH7q zN`=t^+td5eK2YqzY)(KoccQ(mOYNyYu4%sgNi@VEoNZ4)*zF$9j5_d@OS!8~()bcF zHuK0-7E#ziQB~+x_4I;3%=78gTxDz7*L(g%%I?>pk7+}AixfseEh&5#S(w=K2{SYJG@gnYc6 z1-1wHTn{(_REh2x#MVPmd&&z!Rev}!&MFgOQv?Z#0G~C#en;IKMN|%9RxzN&N;6Ut zE(Czu?k*CQl?XZL>9N;|@nh6Ee#`XB?}kCTDm3;vpSguc=DRs!8z$IM$w?Pz)l=!m_RK8`9QZ2rhJb%-y*U@0fT0w2H2 zX|ua4vM{P494OYtijs)Cyebx?Km>uiVXxL=PW)p%KVAdDqlLAts%@jD7oPt9_y-Y1 zWc0+VBF_`y3|>c=DCjUMt@7xR8-U|oI zDTteG7vg&w)s9=u`5t$C?}@W~*Qt)UIH3>1upP0Whx+wz^7vD9bEAp=FpH#G|5QberI3PZ)?I^MOtzv>%xV~_L`h2wYEW^~nV=VEHy`G$ z<)(jW;S!D1P#X$c_jO)Tw5Q0|UgN&Rth`kas9ifqXLaU5rwt`A~oL3UYc{SFHcfRLL`frd40916D z*Pf&@olmH3^};#g_sp!V&L6FsMoN-so5?`r>jlN^A1x<7pFXVmu-vw&o(CMH%__MH z-F(Y-IgORupUxVktdD7QgTDNDpZ~_F0xL+P{nGR9!@)RT3^cI{GBy$x>wdL0mNni~ zX5dk$7ouDH7WLxb%KOfC$f4_^=XZ^2;)`qNnafwgdLbXwJQjTok(h=j9o@B%h5ouA zU%?x?mc-!H6y%Z|PTN9CS%R?~$sGjrJFQrx8}t}}p_4b<9~#6WNueT~2n9D{v=H4C zzr|!IE4SU7<}t+!0%u}}2rK(Ye@LK(q^Uh2CngWZFOskK5x}`{!K)>alsh(=f~+Ks zoj*&AQ~b15F;d{pIA~(UpuRHxCzKqH4U8P5d|Oadv|)?4~uBTcKiPE0c+FsX2N=(*fDyrCeNG zUHguP@mLW>1_FhUdG19GGc(PX+m!5if2O$fe0$MgbTQ%j;5YU0gqNmD!_gL}iKmRi;D{9?m7bu&do0u};jRE`ym~ zv-WqW%u_`M5osJn#v@)QA4>C0)+_q^`^Pt^AF}AWNy5_3?NXN{G4$Psp0~M_*WvWc zoVA~Yi5)W_yc@)pFa6hfjZ!u3GqS)uCllfjKNQ)8QGZJ$21jCEQzieci{3UjmUAT3 z<%V4;!uXVyuP^g6J;STWIExZ2Xm;fSMMFvWIo-CHBaAYZ%e+f_1$JirNK#cfU?$GYPUt;056FPG(~| z*P%n{(>o57@cOc{Md(Xvol$gXA+|qQnF!ws7!8KXPAPPSOQ3zA29PX8Z!7AvNZYaU|H)>3pgVg*G_VmZ(6ueRqb=u!Jxt;A&*gLxs z2g$f^hl%Khm8?U0<9Q9egk&_z8+z%(wYU+Gm)J4+ze%He8Nz>7+YY`2Pbx@2XX7XR zyAn{w_DW?2(_eO791*4gQWU|B7pXYn;Fa%_%YWrxgh#(8dzAFtQP?!7v@#s6_v^8%+jMN8-kZ$21^dLU4(LGhkSJy_`tjqo6h2~ znwXOEA(hANmlmVJcYL5X^i`J6rS^)~XVMRwqm@07wEz9ZsiR85nTd%e&nL-nAvr)d z$kU`#ZJ$zdicm2~45mP*k)Sl{*giu+d^>@Q(t%lDKrtYyOG>FKugjSOKl%yFb+VQH z8{NB~!vu-gI13DNa;9HCn%_xHKNaBbx6?A{O8%aslmT>ZacE0%dQ`)ewY9?_eX85t z%f@Bzqbo^qNg@TEybZ!r77;9|kPTDo<>qcikh4}oW)EWG1osi#&v!eLgv*wk%!bh5 zqJ5*1A8>R|Wi!1Ku>2U2Hd}Cr`sH~LsNNQ^@_cN6<9ng$8}xg#Z?iv+!c!a2(T#3@ z8~YPtx82m#J3eEVl#MQ{IA<#NAfm`8XCzUGU@FBqA;Vb-W<21l@`3s-l(bSY*{4!562n84MzSN zzL%N6;`#g8Nf+m?ZaMi5+3hs~{+lW%N&j1lphdRtWhth~0WRovjESs(5@^?$Dy&6O z^<1_yB#2!wPKer3Wim6Uq~Zo7{SA_=BHG)QNL)MsTfbhhts)I|B)t4 zSUP2YsN7AKQA!cZ?}`~Og-5?`o@o_O5tJ#TiXKe3JC@zo=5yz;;yTx}t1O(Ug(Zrm zM+-+J1~dFc`x`42Sv7SS7-*aOiYtNEHSUkJy_Fkl+ua$2T2~d1M77y+J}R&|<@29m z8yOgw$erz93MKKU4b*dVWP?JX{I!0Ib%2rPih>nK7oXC(4lLpIgXdi=f{Cgs0HpP6~U{J!vq{1Z%XNlwIxRj8h z<%HmqANbmfBur6%2+uBa>FegjUr!)e`v-!Ri*}N%uQKRerOV;N`26k>lv^J#&diEY z;4CT#r+JF|oDOqjeN@){ZN1-4-?x!M8<;)1N>mGz#uSh&aQG>rbJAlz;Po4m3K=Y z!e_PTmCoy!mn9u5y5ZI$U^7-aN{Z!d^rtSWEt#gCr&_*iP#SEa}T$cc)>qciWFnqNJeo;DjHlWWI+3NA(~jAwn}VV z@GKZ;??zY1HLYso+X*nJ3!t4S$2}u8g}LX84B+?AY)FFG9C&gR@aspul`aZOrC$*#ifo)vhw@!?!;OV z8;g^63_Xl91VlVJMEiwsyCe71W-V~FejSQu=HJKKUp}s{uLrF{ z9{xW=u*-|~avy^v29lacNt0)S90CaqCDR`ukswc2p|hb<=T#?=OSSTVLc_5vV5BI> z-O6=(@`J_Iatlo0fn>i>uSunsyhJi6qa-xH%ee<=k8MbTUoD~isv_4fdVEX>M&UnGj*YV=yksYL_gD_O%8B*t?TrydluVgpP z_c5&UR&qm~*0m}wkmg8c_#9;#Wtp1MZA03X&JSGzDnvPg32$z07W0b)+8%GMpS`2m z_xJbt@A1Qk4^V%d3SGc??7J{aPlb^UdM-)%CSM`)SMxVO23Lve5R6;?-VT3<#OJm@ zKPfe%V}RtAPGO3w3RsgquGdOZP9i``u??q^O9uv|NG+h!@j4S|F- zsJw+N%2v_JMJ7>hy3H;I%Zc5RY|>GQ738JT^lZ|Jw8YXC;hp3&vB?&e3}B32_lCC| zdZ3~8*RCDhoT->`2SdSK&7$=FHXKYu0iQT*DJRWV0*Y+E=6duA@DG0`w(?tltAft` zKK-Q@lPmPg@2-7$$k}j9UDcG%1F{j8KLf)nNEkp2(epa0y9V0sTNv}dvl)EV40)69 z*BuFuiu-;dPf}-?G$y&WmQ!CEa4TuJNT5MYlBJ}efS^)7EJ(c@dYyZzgkSs2)&ovv z;^a8krpMhT6y>;XpKFSDOX>#8%cjf96ZKTh`kc4MLqmJjUSk``KTQ0dlj#ma=%Ej@ z|E1)Gf*Z0_J{TqDbB?(%|4VZ-%_`xO?M%e125Es@6RQ@lciBzn%km}!KjS3UbSsQX zkuaGDWUWUXd|69=INdX@bHg(Bk67M1dAV(Y0t9rba;N&aF}8Q2SyTXPpik&(IUf>C zECQer9w<$2S1TWk|Lje8HUsz*DkZb#ANP2C2-#3F%e%@UrB=#MZ`0V}Rf`p7Ov|S6 zgn&!l#ME?un@ubbXxZkz)yYB%lS=HPt`L$@9}|)GCFpniFYNd~7t~G* zH6h}VSiK|D3T2aia21*m2^;!;ux=kq0&|MYRg*+~-^y{ohUOrYnlJ|bD8a+yIoCg1 z)TtOk`l2=&#aW_o6i4A=!Ns(rw3Fc;4W`#KP%se0q1DJ9q)4iH?^MYOdsHFdg+S^j zIl!Hk_K6@+B_o5KPj;rFS00UI{XE3AzjlkRp)*rA$9Y@JHmWLM1js+$e5t3dC0>mD zxnH*D9TXQIgk7hgvijD0DNvjY8xQZp049Vy1fZS(@`(X5lvvq{H%=CdobpV=N-}JN zLJ-5r{yQ@unE73E(t1S#_|-B4aii8(>BCsf;p3H-3nvsssoa6*j?Ta?L#DuSx48=4 z;*_hpsK;8eS%Zyd@zx_cI=YD^4m3yv`#ZqY0Wk*5PhI<+Bk{cWf8XxUu~BL+Tw$*x zemz+stXaQ?Z$Ywazhv$Vr)j*3@fR71&V;wlF3}my^`T%ktH5=q>qy3ongOmt34vMc zJewK%!fgw-V*QsLl58}|?FE2$d2$0wxe}z1grPTgvvdLmyY#JqyhN)3A>k+LvcCQJ zPRztuyLJCx0%>w0Y=WhyBi~Uiza2|LJLDZqBcp@mIKZLP#L|b4=%**1c(&5*{RpNb|+_9lz2E2eoz<&H2^M~6D3mcp1yxwQ`6F}hO;HH)& z2nT2tHUIt#plENH%KRdIX#!kZ^9}ad2CF%3vCl4m7Z(?vK4&)CEp8PCF?-fT50;QG ztrGI`@*$V8{oj1<+=%&^*=R-qd8}r1#4A9=;nM5>Iny{ys=yAw`Oa_<2jO!v%3@|N zhEUQF=tMXcH%qW$ON=}8YkZEgLGeA**7ogZ@sX7c*4<~p(TNKyQd#)eP@C%WOdGlgpi#!G;J^>)hngp-GhD z(VYoi@+ls{H1L&wlowU|PK!D?ZguL658Qe6LiKoql}5zoD=t`x#yT?-V(il) zA)x)-cFJH<3cmstmPA0=PLi`mkP?&+O$t zXl8vJxm8%T_c>l>dKpv#w^=e>W|6Z6S0)8b(J97u8LJW%z109-NQrpI7BVX=MG%2i zkn(PF{VQ=VpVZRWHtsa6;3J6_YY3E!jqK-t#?xe`_!^U9jk&Y@aBN=w{ZjwEZHC|H zw>qLhw4m0G0+|?4J7n!5P8(ReVkXAa(9nX*adj~h&q+xR9ZVISa7~|sSHy8Ws>Qr8 z(u8lf5UNy?bn2|s)f#g}Es$4v$E#;VN%$%E5=*Pu^=)Ofk?Ci@h#4wlmX(vz?1*at z7~{7t7(*5(sp#b0rF(KFe9UB(j75L4ea9BbYh5gt<^Vxgi>j`dGD|T3pVu_ju6L0r zIFgC)tQCivJO0>rKx&Y~ucu;?DMo4tTvvjL?Ayc=V_>8!k6w3xLUj{#W2u+x&}$~W zB$CyxtID>FRtnbe#gWojDb`;p>F7{F6+W`@bg@;ELle2Um$h?c+dV`;N5zI;`0Bmdf2Vw)nvX4%RBo za7{l7N;>M_#(g+K>YDf!xBlxB?eG{L4%Nf~&}NY58Ijl-8r6+ZSEb)e2T}HjW3;!2 zRNn^bN+CC@7EUFQCq=?`ZO`JEPWYy!#hOu;!4ZIj*3f}#Z^tUX{u1U=P2Kn|I`f%& zsH3C%uaYb0GAYcrp%nubWHfBw2}=dlp3S|t zwks(r&t{%8*RBRBQt1~9R+(5M3mCd_(5zYGz>FByC@PktR(TXsG=SvZ(7 zNsKiQ3$EvnI5YlCEv$EiDXi53;^NvBU|gzp#sj_K%NqiCy{N$KuiXE>!JC*~{^CU| z^bkSwuNmkf8OlB1YD_2$)iR{hW2UN?Xmuh#Fm4oL=i0zFq#!3IgY7IGa z$e*_q{63!y1HHJ1ZH1^MokpdeWrH=BTZ?ow_R%O;_3EUueflK5a-K$+g*|GIdAXfs zNB8%*L>fc@e0i?-0>piSHZ@KzE;6n!gnMB@6JgKH@20cT)s|QGt=|x$qU80Hl@VX+ z*lB+?p6m|mA0B?;ye+g^OC3uFO$OefF!{O?V7^AWG>qDUoM&tGvT zhK*-^cm|z76?k2}FC_@T`2P+;!hck_5a7cU#Y^ki8Oq@&!$*jh6R=`L1{wyT11xnz z8iofdo0qnt&>FhVE&GJ@fCMtq(n86^k^`r_x^S&5FwJ()gfrYmn6u0@s}XtrKpX4RSC)r%F*C}{=q@k9DXJ0d6q|DU#Pv{1R8U1Pz&lny zouJ8fVE~HPHvp$+F-Q{C9^QGo2A~w&Z;CviqznR*eO@?D+}`!2kO#@2DThNQR0PJF zT6mcGnr#M~g=Tah&pB4@Z*m*NUgkYPAf_IdY_($c+w4>H&NqH-d@yYtQWwkNxB=%b zNOF;p?MnyPMR{BPeXbu5TaBz69+)W zRVxZeUCABqi87?7>wjuO#@EQ5`=aqG>NwSNf^8C04$BI#oN7}y-=dXE?KN7*pKZrZ zs!~J6;%1;~LFS8cU=^01KLBPcK*zT--ShtTuBfF3ZAr~PCWJ5+ZJvp71K5FjRBGx+ zN9IjdxK5SiQZXcjLS_i!8X99#s3>C%w{<)luGvCfpu5XAKQ4(|Sf6@{#@|_4v*g?Z z{qz%k**RsNEH+EQ0Ob|n$=|Ys@pdT5coDu4am0G28V5(EpC)1X07XhSL5DS==4H{` zXqE`5r|{E<hAR+~)=!e6vQw zj%3h9`xIG_X^^Rx22qe4OW~(WWo%FC_Gfo zS>_!XSs(Q-k$LfvrEBq*FFw$R3Z~p~D;!#8jo?)I!B8xGy6AQMvtq#-le;50*a}fjTSzgw5^qIz`=7UxKN;*bz`}KHi+B_@z|f>f=dtf?ble0=zwUbS z*z)PYB3`$pFDoEMP{r828s}YRp~rF9tIeJi1F?K8U75uFud!2KMrX{k9*7ORHkqy; zJ~AaUHUc&847OHXvfcULudhAtK;Dlxc=OE_D%mG$ePh12ftU0INUv!k``+E(ObIc+ zyWsJCgXcuz{Zn{2)nMAT$)0fIsKso(0`*^QVw%{v54(xbu4?oYydr{lW=qlmipW?~ zR35<^I&h$-lu7?57s{rjWUT3OZa#e{&ctLanCRlHgjL6w@QmOXI+xGUIS6DXdi}Xz z1j0Jj1E^||^A;@?B9&EHo)bFIhf_62Q>}^9WI%BGnf;wyVdbwv;wYTi)cAnG6$Xsc>{7OOca8Ta zEl84ODDx6(8+H>9@v^##NLUI7ETK#=4KUe6e;$-|J{uBu5+DLMMdRwJmBik z!DmbTe4$7l0L0OHqlu>uZ(S6gEHA79BJd0nU9Q=$RJQB&S8uxFB_miZHv&oK7Fz5@ z0M2AUiowlmD;B*UZyv8<&Zg^++fNM8;IP6x1xSS7S$StTouTbi|HEhn?g2xF>K;S- ziJo<(dSa??_<;E{q`p)Q>@pbwTH90@MThk^?}ms^B7Rl%{oO@1dToA$Gg zLiqCHx66Zg@}{y98Lw^935wzs3kj>}&>nq=2LU~_TnTF^ZgV7&*InlQXU&a7E4fCo zMd7aoQVQ)w1enRN7O4ESo|JF%eUpWrw?V(CVezG!=H~s)Ilrb1)TxF$Rx#TE&R#`D z??*1HrMlM@un#KUT~L=2%`Eddv#OP9+}-aNXXh0Z6wEn2>n;{4WQHGBwtya}@X@T+ zb6A)QkIRDyU4=h>X?v6BK59c%5ZU8%#XKjj0D(|EUw$8NyJI{nHc!_n+>dYYEeyDE$oL=_{#ECMpn*ley62s-JUUB$JxT#gP7OB{cYOXdQtig1rH748kMj2I@Jn^ zRUgF~Lr)N@E5MdD18NqypspXU+MZ|ux}U%oNafNWB4LjMY{CN~43!Q1BlDWuikRV% znf24NbDE1L+o77;RJXlT!&ZHi6e)4apuPwcWyuv!rUzvo#H}7_)9lBd1mfh@)5)RR zJ20CO9Eq1n5bm+t@nQvu$g9H#&S~Mo;^NX1lh2hR)Sld&+(vho#Jq)YLT9y3C5Yzy z)Ewrcq5wK)XLO+Yx=Vo;CZ-gTV5tJdvdy>ubOLU~vb*>; zx@B^oWqqxfSw-54gNQ3svlkQ<-Ymjr_$=aQ$XHpS0MLI+MaqFzjXP!$V05h%6nO^^ z5AS|9K-0n~_a`>DO2A9B2H?z3+RiZ(P^sLd2|Ps{811e)bw%kSlGGK38xg2I1ah)Ve^q zi2dl=J<>TjVJKfYiq5HX?l+oqnk13>%zJnjbWh6$iN<52*dDswAkTHJt;H)tI}5OB<#!H?e?$o{C?TMeDz$cf z9&fl@mR~QYuRIvD4oH24&L1?Jz}N*`D#t4W<;5_|eYIYSuZNKH#K)hm%w+D)bK~)E zNhMzg^gV*7VEaK5v&->{R55Yw@Ob`XxIrRI_7G9#Lgc=nGgnW_OvmJ)s?v#?`aCKE z10&4@d~dW=y?e04g1XcwxlGt`>;2yjg1bNWM&n7!=}eK7J3!Cm-qJe z&`!;KYOQ7iAA5CX2OOc#$*k}3aB-dKYF!R>_hxEdeiaaybQoZ)rL%imI@tioj1{T` zg?+*y5o7_TAb6_`?VT97Ts9#OXqCnTxK?{DAgslS^wrHl*>edakGtQsXIH?vUAeSz z?asr?s}qb`yIkA)mlrGo3LU0_3gXs!m;A5_{ZHA%>KX6D5ke$IJ>EzGw?vfdRU5(? zmt527LE~b56gFG`b6>&lHm&qWAfb2Esx2Zur*i zbi6(eMQdi~wzMsw9A=>(*xr{{Y}y!5>-gJLSl4yv{+`RLIrB7}CjmF{tv|mX$fQdN$g#dZ(R(Plx}Mp*uhyg5;;3?-?{PhdeD|r{A4vmd#L{bbyVj?C zWiX&#I8~wez%Fs*cHuIlznU+bz;=@{)tM$ znMtz8)1W>T<$W#LW1phkr;SF@vo45GK#*Kvq@j@?6}R23a5#Tp1g+4NjI8uW6whT& zWu5pOlDWtb?fmqE6X`eS=gt!%obl|23GtC3Vs($cI*R z9J~W3g6ihXNmo@>rQp)?0ygQVQcc_BJlp;|Edw=T&97nEI1)(x z{8sinbz4+)#!M!wOk!_ZS);U>v{xbZJ4)mG4EL@Adb?GrFVBgP|BARd1ii##T3S!k z`*ZCt5l12agjKg(HMbWkj_v~mM55%CEf377a!TP<7 z@d71pniIpaQol}z(sBki_9Uj66jSI)`!wZlin8(kwB|?V-wgc&#lNzvD2tztSaR;% z@o$8W-K!7fKGX!|1dfg>DUf6P*s;9f_>lSO*{9-dV9&>fN6fqSe}!b86S8gBhAiel zqo5brnf{ZpaiJ^zOA(6m;|PF~h<|om@c9-JGE{}f6gM9a*IYie@aqR;H|b#vwMm}_ z1O?sHbRjlWQ3-Oljc=xqUsUqGJ)|CQnP85CE~fwhw>nqv;0lt^Z1-y>Ezps$R3$_t z*T##KrJieiKV2MVq0rwvygxX!1yfgxzXJB0fIhB&Ksc5up5)* z*meWd({?b*KNnc8L`-hg?|8v;d(?q{5Z8JUh}*w4wcvAjf;K>>O%}|m=UES*5{ECj z+)g*AX-da0w|ASK-5Dyq9}ki8LSOqPoQ;7*P#~XiFBg!S)Fb<2vHW!KHu2$%j2SG% ztp}9&QtVcHww)i=dLkbsH6#hjJ;ca4SN8~?_&XUC+BXBPvc|XM6edo(^qFcg6DmEkc{X^%JS< zA-zt=wGVPx{QCqb`+MAVvwO(go>^b-Fzj=QYz~&qduTki4gd3DVn9pO=Zt#Zp&z9I zmnA~XU?5pLCZshCi=C6=XQ9MW`}?P^AEthLo5O4Rqm}-7Ub>`k z6vjUBsqXeT&Gqd$mo`$ovAl3&yXFI3`r1 zs!#-~Ooh48O|%*d? z)RB6NRR8uoX4iM1sFNhg*8dB&pZ(5OyFu=(anjcy_j;GCeCt}7+J z<#!NqIo~fiddWq#x$H=B(drR|Gft@n=SAN`Hh65^EsS;PQgUyq zC}J(1KZ8kxeZN@yy;zxL7&WEA@$BDA9Cw!HK6?otU<F zzi8xHFQqWN1h3@Zw?qSm*nS7KYflBa#N3Nh4hH7eaVZ3YW(afY>NG;R(s+v#-hT8w zjM>>~zUuM0QEeTFbvb;v^|{aLXad)|a5I*F5R|lzpH%8?v=;8%_pW$0)1j694~HuV zi$2xT_e3WOA)O-RYYZLpoox|>N=w`Q95v`^81O#~SxdH`u|5bMjc8xwP*~SbS z)V97AUy6GiTAFjp*6IITwhv}!D0Ga&(V&oqQIf;i`Zmy}Lw2L#3E*8fep-J_jupln zi_3z(pjlIJVu>VnCx{H@QhKGKs9L0nHr zjzJ~9;hgju6WmIR!At|cMf=*d8gwF`R~kzvE=9g;3i3lhU*0XRHEjFM;Y7E3tc_#i z`_<-k3w2e|{ zk@7GH_gs4*6KW!ov$4&674(RE#!5FMn|t zn6ed*Jrt{~_Bw8j3WyLyx!x#f^T3lsQxk-DTBAptjiK=4e?6PaNg>tA3HCE!k}yI4 zY{aDs{y$%Jpsf_0JVo@7))&~tDPdb6My&1oM-pD_otX~*Xv~zYgSwak1^ETOMce=> z3C#v0#nu6r3%(h(>kq&fhLhn9CIq}?(hHo=3HIm<27hz>KD5=w>X=O9bHGhR_M#2e zM>O30sX#uWoX1T_L{zyke_3g~3u6+J%bt|6$%Zcauvl83aNta6#2-MYcKW>>k>n^AO!`AU*I=?v93Ecd>2*uLYb|!bQ(Q<{;rdaHC$FRwgZ35Iu%mlO;rjf- zdRG#sr~Njy=l^yI`}jKn--xwjG++a;I4)s2J6il0*z7h&n*@GBMc(8(uCvHCbMzAt z2`Rk@bl`N&+^e=q$04vjE^@bsFD;d-F5!HSX!`cMrpmASD`z=)MHT9SfdNG&p{$7z zOgakzt$hidZiv00StPNmVDxSgp4r_tJJ%a-)TfPN&jTph(y0Gc?bbA$b6%Sy5|?>d zz?2^Pe%Y4uKvkK?lzlX=u0jha$C^Sja{>=CJ>&o{q2l`_i}{L(Q)}-}1^<)uD8WYl zb*%6Oblx)zUH5I8M-7$cRMvVNN1owTX)ctcf!qQab>eX%NyK`6Xd+Po9F+8BcnNbeoiRQbqWlVQJF+Db> z-U%b+MF!ffj(`S;rLs^LV_JLpIdq8KtE~AqA{M{o95LG7td9T^*SoCBN=Yd9?P-C} zS0G#N2_S~l8btM|%L~c5&vZ4htu6n**Pw$rY*hNKR`CPf%Lvv$E;_VU9I(Wc3kph> zRth%ehX3f4$|NoD4L8>+ZcsLBBzhS=m1lVGFP^BCU3y*Qx0F=()Y*G0=ep?J~ z=lyoT6EL7t($JVHfl8yC{OlVVijP4GhQ&D9WrCHtez5zH=0$AqYt6%8h>Ad!R8?l%E=dSb_W zACK4XzRsM^5ZQDW9O`&;1inn+e-H}g>?EmW><~tuTNG@Pq-Jr{HtmjVbuCMSco8-W zwnAYSo+7I~>*wEgADyHB^9f|o)U)GUQpqr5ey_aEg{Ck1R#GW!U>gTb-%qGKfD)5{ zMSFBRmbL35H2*_>hDgne;3Rt3X>40LXpXe6n6VP6G-U)cobNjbiHqA9d z4U!dE%ocE^DVax>9g4ljwbh@1kbd_#?9A~Isuo7T)}Xh`RAG35f?(5_HigF4%t z@o!gGmNcKvsaI0@99}d!9|p_!7#w#$P7!9tLPff)W?R$@Y;tE;#VL-{-7YQ*ZOl}B z^Ra#YE)M+nWd044a3P)*J)LLrfIgzVeI+F(wOgz|Nu@}N`7B>~@?^el%`%p*ACJQ* zicjH4e=q*i0e1iG<4~jAnfudK5mo&xy7ICF227_G7Az5Bp%Tdc(?1fOnCnO{U!I=M z@>)i;DQ?D_4vB?7!_ky|!-8P;>^$vNpz?%ap*xo|mGC&#bTl=!14!zh)FHL2TbTvd_kX>{Y`xyh;^^W zEK*B~wrd6->qBE2HNMLpJV%WWSc&O3)AH3{IJ70C8m@>+OG*x5C`j6^4;^G9D>lJH zFRN>u=!8k##`5JRR@cHWw{JqMcPTN${mWhA$z86F6fe3TpG(NF4%9atLhzsS90j4h zVwNg>x*e?g`&FfV{Jv&}B_-(M1_RWd@IZb_S|ESA0Va}N@JR@ybvEQB zhJ$<4z*hb&f|NVoVQ<)tOTXQVqqPe-1;^cgFzesC z<`(3c>&Kk%e*gkOZC<^@sVs-Xs3$^P>FHM^s~Rvzq(JN+Whn$?J`aBAEX}sbgS;Zk z56R=+q!34q!&TE1{+=|Kxrmd=#bM)GRcmp{KA|+>PfB zwpP`iH$mC$LRU)4!=p2Sa0qA?U&A`9a;ectAKDBpQy=#n5CJ#%ZN6DI(tn5dFI&+m zSan>|Y6Xhv>jmBX<>f96ji71OVq>8&-EgK!em3HaV#Y26-~m^?FKl%qs| zr@CuDL<=rROy~y_i+V8qHk+#H4DUKwjoKEWqd>^Z%g%*KsAN8ix6suW`gqb?sr6aJ zN)1v~^`!xE39d^wGH?oM0$#P)(;X#lZby;?q4&vA}Un{r~}V{g{5vr&}CR@-0I zYthHzD@lY7o!n``?DOSq?wt4gNc})KB6jcm=D5@D2>1@>Mbh8i{2)arkR~+e5Ra@( zr(ogEy2CcpVHP1}-lN#DKzO#w>B__1hU5*(pBCi^HTR6jbxP6@33EgQlw~=4&hff! zM*;sh1w#ofkxv3HHjWVZyl=4YL5@GMB%C@Bxr~K{;Zj?OQ<7 zRTXQBV~PlcxCn>D@)#em&glV*OS^u_A<0Ta57E-ru&*5wW)| zOo(QD(H^Ba)N{|lrLoZuJ&D>|P%aJRoo6Z_Vw|rokYNHR$O|MymYl);T1MrSpFce| z7eLi>b>}d&+r$pA73hx!=NSPU!`myntMzy3;}q>M&l=TGG#oywossv#sTGulf|!1>#&L2(m!?JcSIU@G{1R_H}r00fKgbgm*DLicFWHF zfdonba}$20g=qc}ra~A_Vn=u0t+4abI6XQ+N&BraF*bP*UWf6^SzDwr{j5?ZYMr7N zqh3YXs*EYFf2ihVi>k6AsvB!KArtEid-402(gq2L6gdZ+?!+^+rmsZRg(XEx3k!Rr z=`KRsDMLooo}5lu*YF?&HVV$@mp_6fxv>KO*!h}E$Q5JuV^BU`MB1+u$`Si{W75;} zJ+?UBv+rEv$eEvQDb8ST9yA`{kMhzcwSDcx#6o!l_%JKH)^m{cyyK3Ga-f${^QD*& z6q0*;tY=#FqpG?V(XF`CKlRTa_WjC}W7>=zR-EkpMEN^nfIbv^!#R;3@8r3?q>MzA% zz~e3hzv!>wubrt$nH|i+0gQTHc^#(cQl-dR znyhw*Sn&IMf(bytohb!V3zg#~cWx@R(NO{2GZy!gIWF(p=g#{Jr3)WUd-yj#4JqCM-Na$Tsgu z6Ymc^Y^?4zNyaq1|Ex^^IRE?EXXe^UxB-<|>^(}dFmj?*P}G<&ft_F-BcR3>wJ=q) zw_z1YO(GS%!R$t#Wu1UfeL3y<6fuao9EN+m=4&S=EL<6!uwg5aUa9caXwQ8~NBkP14f`E9nhs=($`)I?-ATTf+)utz86zWQ`iQ>A+l zi#iha*^)eZ^qGO}*sWXdO#bQq^dRxMPGhusVfp)Op)>Nk$T*`x=17 zT<^OQnHrxw~nj~ z5ZN?`k4Smiy`~i|Hs0mC!3P)^GHt0}K{aVRo)?!x+jAvG>9sO1%Uh50%W|@^6g}Wa zJ?QPS%E|`#x@Y)+otSa08U}kKXvhJarIZ{T2&>)e=562F!)QY&ZCZbbg;F+KwTezO zThI4ES}QToo<9?8I^LLtPzoE+_I)Kz>^v;3wc0%_gR;Bix9;Emu^VnJRFBXv_CThD z4U^zd9YJEkDsFZGtXC=?#}}3H>l04`IVxggt!j5Q!4|X9^W9>w8YIu~zA-dZKNbyeM(Hqi=@@$oPvz{nz*6)_3jO2M^WdahLfALOpgEDwAS1WtX-@l3Sdo-m~H`;f+EdW`o*YuKK80={?n%I@EcwF=c+9gsPsxMWAdon@>Fyc#ak8@a2~ zg4XRPdMM_OIiJr)3fs&Uc#+FzAjDl6DIB~KUYfsL=s}M^N=~A6Chws+_Sm(WZLV<} z-213mr)hgC3$cHpBYrbBXhQ_O(YUd}DR87q>%%Bj(@1Vtf_C7RKAm-@>!UUjF*0!v zsSx@-3UwS#pX4Bmt}&%}$(l`h8FFHu=?Ndq>6jKLr{pm1NutKcjy*$DAah3_o0q4W ztro6YNI|HHnuL!}FH_xK_&EwTR8kHDE`lOndlh5J1Plt{g4sv?vctr(8alQ$T242J zuK)Tsn2bN7`R~Q9Cl?4Jc|)hO9DZ6R?(7U>TD65ZzGL|Jyx<3Nxo$E4Q#mN)9SLlL z1^GjbUjy{&k+%(laZH@-G}dIsa}v?6Bpmc-zL7^-eAwl2_R{TZ zl!oB&VK}5bM#JuG3UF?c7w8QKB)+)*oxeOgq>Tmx2y+U*ObLX_iZK=NHqU)`h*!$R z-cfJ`x=oTlG?B2D8PXr8mm>1B{P`F9fY_r+Od(M81Ek z#^S%sY}ui5gRIjQfMqi$)p`txd5-m7V%r`m&tGsR!R#fcvB-;D2CgsPt38(q_VEr> zrjj@!#|eV7vm*fSI;|;*O8ljFZhO$l1u9O7{1a4*uy#8U9nZZznXk4Oaa08do~WL> zdF+}aQWE-Dw&?C=HD6}T3m{lb2TQ*nTfJY#nIgPK<*r+TO`7+F7K0f*tvsh%o;6ON zwRG7PO|a)8=Dr95x1~dk9s^gn{mIFNwU3v+F{dCgAG|=V}vlVyMLeJ;-4xzAnV>3S06n=ePd zx-_?W!rHEOI4{o5*PIGF-M&H9@V?Z6kiiEi?AQ?feKV$WFA_*VN9|c%18*>h{MZ(5 zY-}*Czm~y|ES-gIFCqk^tszxC{QSyPFBm+yBH%Js&3odjrC0eButEL^(f-ca?OXHp z<=YJt+;7&mX0fbcy35z|xRc%gn3!afG$TjqT+67FJu8>a5_kEba^I0yf;!Lm>~GGn zU2tnxoECe-5`QO@2eQLcufx% z>S6hBFyP>psWH$0cN<$mPPT1hsP*TuVNa#`>1M;F5s<}2aR2(x_(1!c!c@i|utq#> z*j1HNxJSkk7YoDx>hh;4MM3=eY%MrTBMo?mBxNWtp_v%tIFv#C3I`EMl`$tyV0uId zjU=5A8Wh;kt5|vsV5(`P1vdvRyK=XOKDV@Icvxyc8;mq`f1?iRc_G+6uEE!t^wbGd z({+H~QpWNv&vlGCN(e^|%-|qa^Jk>^u zP}rp!?K*6_;+W0I)O7pgtX6t96xnH(|7J~jpG$nXuRY5aT5(ZLHvZHOjJtlOtO+Xr zAgg^dl2g8~JYS8zHX<%$#YsGZNe|f+CF!->K5V)CW8!=A&St6(iC~-H&U&*}wv*io zy8LXt*G|%YNYUguO+-r2&wa<>C;|o39BfLgXwo|WZ)><#`qB+e`4w=O`kb?C1a;Bb zB<63%74SDFmq`ze91M~i&22;S z{L?BLI_mF)-lQS={rvWt*82xNwo@rum}D&m``7(~7~AT>fJ41S|6fK#!qLz2>ITz! z8wWfge?TPIgfGfnuY~y?I*_}l^jpf7KmKn2RGgsGfj=(-ffQX1CZ8#w2KU|m#37P{ z|NDUaO8$uMVZT2oUHg>Gb zRz|FU!{p)1Zow^PutFW|6Gy$E`^xw>Te0l69cBTob+V5kl=S@0e6=X2=cbtqT>m(H zyBD)euUlFl7Cagl#obaa_W3h=`otjmw{=X$bU0HwE(;OBYP4&Pg-7af=25(Ng|@y$ zoM#_A_b7`PyDV}BmjT5fY10GWet_`sq0#gx4P^5bl2qm6BY;#-C1%tUpsd+5L2ubC zUjssD4t}=zLC@Y#`?l7uEY~Rz`<;AJBqi`&Fid399pAhtvPM>f8Hzjd_VYT-hm{?+ z!f`PLFKX%So{yXOQkp8DWqhqZo$X#$Kvg^m8MPR9DeELg$XyR|-+Atna zQncT26?T&#&Dpg*lB0RV&^5#b%(^H5q zg;MD@wNRlZjM|cBaJ=tI&CaF-9!G=2g=XG_k1d{DV44yF3beD2Wb|?KMZXg@|0%YZ zd4Eu2>EARDkM(`Ged`%KfyMT>=%#uPN|UJY^(IN}+S4WtF7p8!?FWHi z=c9v0?O$+oVm>od8K8EhcS)8;+44F4!y5V^G_RGk<*(!v}*o3F4!3%?Q_{& zZiR=Voddm(yDKA?CoZ4eX3nDkJCSy|UQ{Y8Ocs(+CHG*ktg=#55KETX_Lpwo70*%f z>0aCT8Jpvnl%P23@~KwE_ho-vivq4wJLb(Bc`BvPT&!iq(s7bBA`*a*M=9QZh({M< zeVKH_xwEtOYfnaTb|K-{FPS^_8l~5?AB8^OW1=8`E>X7IU1NW%(jk!%z_R_iECb_b zS^(qKtpuy?R7^x5%*MH+fp|E$0R$U8ayjrp5^hbMdic=h?$XVLEWzFl_-_B-C#md_ zRYOa|Z+~V6y`~O%+^Q_b4e0nlt>{-ByuADd*T;y`PPNVo!WTEZnPn&q#Ui`GEeqe_ z$)F)H#cs844o1DozopI!q~uspYRBl?ql3=4V#BE;wWvLK+if|GU$6>526_cd{))o< zQ$>sjvS(1aR?QZ>lGNoWEl?FTRbS~;=BjNua;RD)34EP+qD-&*LH5JX>k1{iYzt2i zZjlU95AsD&s44c4QKZaj{#1P3TQjR;-ibTvMk8}hl@f}<`ko(-vOUN3+-<`MMQ|wf z0E@e;u)JJcSy|aL8H*m|>*~BTT)P)%k#gCe$rEnCaO}uk2gYxR*e>|>t2M@zy>OJ{ zdHf`nvXXLul(jRON_=I&(9H#K1cHl{3wBs{C(9=($AK0)DkY_4)@P*?X>Xx9r33bV zD|!?*GX?)djm;&EDIY0US=VOC8yhVxqQO+I*({EWb>Ep`9l6v49$h-0F2KZ=^tLK=WP=gOWH6nyyO^cBz+vrA5Y~( ze!8vWv4WdXRxN!PWK4JHvuc{_3D(E@sM6k!dO9ya7z(%cNf2wWD=JzJie+FF6ZBkY zbeUBEjTsFydV%`g_X>ExQ+WMA|1IUc?)dnJUS(NTR{80*lHzn+QPBz3WHfO?9bbi* zHGv&z0CglJr*G196ODMwlur3(BvX0cjDAyvVF}JY#2&-i?j<*tSi_BmnXr^S^0VcJ zHv8VTGZu<{w;!H?dYeaX&JM4w>CJ?_Qs90+g;R!pO&Y_F69yc^G&5`KKiPdC5xmr< z*lIucoNh>t9OEa@G@hRU=Eqre1k2XB!S-mL<{E_{=(OCVEE`pe2II~`dX+fVyF&3k zN595B2tPR(J_DAHGv^}fmB$2fN(?u&5!7^;^f9r=OYHyJFr$p=4W{yj%JY4Ue8oT- zsIt;mG*)0I>&*wVp3P5OtXeX$DsVksSFg!DnxbNeo3e#t!i#$e(jRaitwqHHRpM%K z25Y_ABsX*ksVSCh^0!-dxA&1ltLGexqstuivY@AC}t{N*O;4~lT0tY++2KkeDnYu`DUbaLgYLioVWz5*mtG?qOR z#?37=Q;Ux(8-l^8zkd2!SQJ`>H%bIw&5?@MNX!vGEUt@9p-9yZFbYLyT2^KTkh#pd zedDuEwS9j>Q^eyUmqgB|aM?0?;T|uSGqwl}b{px!t2lP0z{>2WlDdVU7@11{?Pq=& z>i1IBaFlVXj>O^v3=1&~vzIUO8qR+PJbB@F_=;osaB^emnsK|Xqyql8AQaceBn;JD zanmt}0U&>%o9H(95Cb%~A;*In!EB&69r0Ij^ouz6uUn1acAO3gK~7r@9ESnjx3fkD z*79TOIj8q+o$h58l(gL!{w0td7Da|;Uosh&jtULH>J%4{uvI+&}U zsy2_k*vncVc#b6Uzl@Vzs&dl*?4ADS1k2|rzB~|>{q6Sl&Bv+o6DAsgD8>~a%URvs z=dSJv93f?GktL|oRic#Z3JmY(V}1H?lCntofkt#%GsKoF$)y7oF`%87iI)2}n1^?L znAFA*>}^~F> z&dv})`(aCws67P#2RT)8a%HN zm-~)ZP@qQ2!znyZ?Yz4k&!FBd?B#USJF>uuT%!@=`vciHySfRdhDM-^4Z%oXKcbK? z{SEB~DYn`L4hw6l|BoQTdm_RoWKPsaQ8PYIbGL$m=vfedk&tz+o)RAQ!%&neA4~X! zne~n!m6!5NW z<|AL4-qSTmsB~VVMDm{S)@jS#PWaruJX9aWKiF^Nw&K zaYo0oJp(d>8RL83ludN0yG}#E=I=Ngr3oE>2puMBrcpdJ=e{#H^m(*}qiE5IN0@8M zIkjT7CkV1pqShHRW5M82w(T2KF|n;@X=Fr5UMr3F@XjFp$Wz^>GY4mnM*}MX95ibL~7_G#Nk3%NwcG%)IKO&#tOc!d=@SH2IXB?DpbAZ&cnike+4(r?^@6 z6fJGoVr~5dNOvzkMzj|z233n-7H~t}6?k$2O2YgfaUogLcZBX3l#%J3*KvRI*$!JD zS}xitSfKvISaAlrfUESM>iY4|;HHaiEvX=`pzq&h_KM05F5QjBGPfwf5=XSN+VMSR zm5zdIIe)1)>cfWK149@I_lwr+{lmB|hXO1+5m&SuOInJ%`|ggfH*o>9B>K2)5$M=`kk9|IwLJ$$O)LS(4CRXfD|E4PPz% zWN7Ql=l#BQIy5ae%XleONpihvc%@DjVqsmKh-$Bfy1`~4F8kr<)$Y$&Ejf)eUPv%t z;Ztiz6ebBrnaX+lCY{DQvutwgr*rWQ9rZ91>W(0Qdn~jFEJR3XEsOm8An^$~2l@%4 z`g3TBVRW%Av+r|()Qq0-xv)SCt&T{T31F}pH4M>fEX&@s5p~n_IPtT*P;38tBYYX*BjMktw*zzrW8gv%Kh;fM0g(TcZx0 zbB_yQ4oQ*Lo4b^U1VUP{T?x<3?f%(rmyxlWcGMByKQ}Wtmud} zot@cVz!kq!=3NWh-gs&{S7+B;CcQjKcRUAxNtMp~n!MxV z(ptld%#=Gm9G*;xhyhfiDIzbGmwuDlyywy~QtPCRDv-*}m&!Q&GO8-1AOfITWO zP6Sm+tt&?e|4yBl=4w_mv$aUMG%QH?t&nzqucFWf&yG$UEt=Tg;u0eg0FSltEe#9? z4JR2`3Id>5NrSwC z3)snNVh5xbvXhgO>Pa-Wac!Tw^CW&B@ABQ4AP4XdyUrLmE#W6yb=rOpUXTB||NSVC zE`gw^pis`|)1ubN{PLlkI6~fDU1F)_rC_BDPL&V6e_vb9!aA05(aaIYs;VLSfw^d8 z;I4T-r|%yglpB@(^c?eR)O%vVZ^1I0+ES)m@N4HB&9$(t$JNd!Ln&hv%$k&i==AG>+1FyBFD~&8H8Bvk5Wg> z+7`Xtm{nX{Je2y_8;Bbk=8*C`Y@jT7UFxJhUT3t_g}_&Avj`@P{&66}9c?#u_+%MM zcA>F2YttGI;6U3q64lcUP7Ey|-oW)5m5AN3=to{2%>tUQ3ja)G8n?^;@9V1AlI(N? z+w&Dlv}L=-%EC3ZwT+E`zUx5J+)@esj|tR?*vc9f?Fy$dG(ajVswOSz91=uO5wIN9 zrl1jHwOGI>E0-vzudKWo4;{>?Ww`Yg{5qiq3*{8a7LN$Ck-bxuLZip@jY|!|%B;u| z1TjsDUc~k*ozdC$J=R=5Dt;o;)ce1BtoZ}Y?D}vD)cvdZ#=itrw7g=0x;lsxTHG>) zNqneWRlzz)+ZG>nAx7F8&Jy-YxV}9d;+6q{GIHqi$H3X-{7oDnN4n2c$kzL_vS|Nt zSUj=(rr>}I_kTOnqybSqN;%zyDYW%>A0E*DJqgy?T=sEI**JIwvRQvp6|zxLpvp?W zn1qv9rz~gDsM`$1{l|7i>n6VbfqjYV!-%-RVGp>z&TeS>!_-h9QKnfV6_q4>S`!t! z6^FrO1+zJ)DENh+;Ahn&iKWF`-29<`C zx~mpw)#aU5{p|#qJ1UXk`vpyANQ8Ck$!c>SnqPtUz9YN?iteY+^y(xtH!2;6HMWVl z$n<}c*-%7Zym|EQgQU@JSRQI#C1)>*c#mKXCaug^O#6CVZX=*zjpSG3K=pxMQ`DUH z_f8BDO9VeM{WVOf7_o zr#*@*sM?K**0CvvmoV~LGr67hcZ#oqeZ!YlT*YNt^d99Q$=q}{sgMvE3N`xQCXbvq zWYcVp2#nm9=KC~+n!vIjrxcNjb!GP=;2JgCotv5EFiA53E@zPOhu8LswioYu_t&$$ zeoLEt#9B_3Je&tcUmI+_7!^MtM^9Sr2jw~(V9fSXK}qrH_Dskz1RNYrU#+g6pHI$4 zM}G^xmBemC(R)O*&o$m29KL_suV4l@#sQYJxTNk!-Y6fKF0W6mw0E!E`Px89qS=^H6uGgv7@bpTucSZ5{X*= zvzoc)8mxVWh{(Mg(lqj^D$yu-Gdwk{bF9K^@Kua4rhrs7VeI%r(!K|CWG6?Z5M9x0 zE$D5Mj3Krpv2R)$y#xbb%n0SX6G%u);%@E|?cui42wWNzoN68a$C$LyxDH(1bUt^e zyiK<|8Arcv|U*|Nb{R}ED5J0v8 zv_mzgOWx5*Nr}@{tB5-!omwQlq^RxFm<|yW$KoHZQyu%0aeBsX!_eh5?`5qvW#uVUNaKFM#=GPJ?X{m>DG~DQ6>QtHxi0Q7K|iVO z(MZmJb)Vyv@EBKi)n*v^3AE0*cHrGkVt`|~$uR#I^CFpbf?K$=ntGdy(m-n4zUu=v za`2(eaZcYN;ckNF$XAdN8Ds(D;Sk?sg*x{m|z~O`d5(tQhjU?Ju93^USP8(Bu7i* zy?@iX5OMyB=+o@tT%pT>HmY1I=T{rQI|Q_)-?a;h`z@@bMZL;0Qq%gn@;#?ZSshbV z#tbdt?Aq2Xza2IjzeH?047CQaJ6R$@^jZPtoTGnC)D61@>FXz3g@LYt+6;cDox4q0 z8ckI8#WPI~71*)W*!;Oc<|63#{KVbe8*oi-d?D};d$j!BkEn?Myk+Xo*Xjay zO<5(Sl&v>Xz4W2TT-8F7R@Ld0AF8!2lP-FZ5YB(s9(dxnC~n&(=@MBLECH1m=i6zj ze`jvlvqyb3`g6CK$KL8uYFDtWZwwUsw)dWlC>>wM);oWnZW?w5?OE?;GZU$_6cv3; zB;mDCLFfSLXrTGOXlxlX9b8ItS?p-n!u|9ZS>a~Wbj=QSq!Co&5tKs9`c}a-(zyB$ z_i%N#%f4u*%g*(cMs~qy=a`=-fru-s*u5N0Ph3}GeDyu9!M4)Qo|T?SaRU!22Y~4t zKkjxo7T>oHw15bc4q&i7$M+4{q4m4@NJCwxGC!_kI+*$qh&qKbdXAMYpntM%TtIeA zK@rC-h`wYt9~E)Dt>10h z1nVc+yqJz{QNLk+ykJeHa>#fk(d~*|xX+)J-X}jBMGgQAkhb9>Ghf?TCjEAym{EDn z4qRWf0+bN7Z`>?Hg+=pL`B{>EEcKMMo96YJWf2oh)#7Npg|No$VgF3Y{rDXJ)R>qm zXO?`<;ul#0yuGAj4k(wRk*U9AK8%Vuq)ZH?h!^4(5za4KyNLh0;{%BwF-IPk`;qb- z?Ci_y{H0ltS#LASOGV|Inm2SNB6hCc6VMHT32nKRUjO~=a^$sDK7=6|0o_H=|vsqxQIaR%V zTDMj4@Kez1yTO^0rP;%c2eARl+HIEmVV&2<*4Z(gc`uz^ckTj%v-8I7&qRK1q{FZX zQeM)G*MbkV|9t;Jfp)u0+PW)EZI;sCTksQ4Ydim^AMvjc)qZKmN%s(rM4(6*F@`yz zo(hw2f{1bo`O0DW%F4!2rnDW3n+U`0q}+{eA4}l8YU4K!p%dp)E7g4E5;rnWE7|!N z@oc!S1@O`5KBDn&>FE_2zCR5)u`Aq3P36RF&n4#E;Vt=tup{*K#YyimdmA!R2R3Y9 zf%9$oTd3E+pZo>#`rE6mRr#aDhnshgNrCRVhK5x4i#|86fWL_A0H}i_)`!wMZcvGi zGwyE|SCelGp+n15;zu_rHabdPM){$U%`pgHh&3+-C21P2C~7wG7dj<%flpMUo!8b2AIN7K`s5Zr>e+()#2NT#nzj z&ADJ@EO)M>yZbS{2i3Wpu(FRf zg;rf6TL(h>T^nApFh`eWa)U)HpOy^iJ4UeLI7wme}XK$~S2MeKu7 z5R=wMCD4oq5X0UH<6D^;!8`z>y{3;zx8h0O{yA)x)#%n-FO+jF99vH#pTAm6wA5Wt z{gGFSwLBMUV~~?2TuLCtC`FQJJcT#&i8Hn8l|D6+aNvLL`iWm(;h=GLmMU|uVviE9 zHJD9HbAISi)x(mY6VGvj+`=L}NH@2y>bM^}`$2M6pb=;&1nc3I%6_{C? zZK!IyM!xi%%01Zom1=C|M57!%R(SRSQ1BuJKl>hP-E7_evn=2+^aegV*Mt(4 zr?tNiJm2VN9o4+;&+U?Rmrw_`=J3E zF(A#PWNz7gwa*jw2jjNv4E}IbPo6x|%s1o! z!~kPI@RvXQ@&5Vtyu7^TWOKlJ?`OUQAALEAd%hRgTp7POtXkL~JL{pYklazx(V@AQ z4BQ9w0L6HM9?>MFe$2p0<5S#~`?5#i{>hWq)rsJKA|Z9xMMdfL`|XaT*`DOVBzA9? zx5up)sP;^yhE%|g6+N?6O^LPN@mcp|$74gZ|>iAseZh8S6v)=hmKh)da?66MD7;C;|`U2Q?9nb5ttF zV^tBOYGGw_@568adiN0!!tMDIxm)BD83A;Li34@-Zvi*p_sQ`7RfWzn=x(Ny{wm%}Xpx2q7Tf)Rj=U<4)a`H1p*&uzg|E(~-UK zZv)z%UMs2JQL<~QWmP@#uTWWC!bY|CZI`3#7?WJVe<{P(^E3WR3f~(`y|g9H1UtjS z6DVu=C_jzc&?$#X{7|;59y-az7zs`~RkC&asZ9R+x77MiFZnczegP#*pr>_-O-Ve+ zQd-UlGwsL(mGtjT)4knk{q@gMWSp-;r%7EON+SQUfTa)FJ+K$nMV^v>YLF1K6!Trjo;Fc4>@wb=7 zi1jTJdChY%Ak*Q2F;KtKb$fF&de;NIJUZ5aH&BZ|&;is1_}0FyS)~4k2dzd{L9_WC z)uq9nKt-U!@FnUR3ya zw9k2O4>21!ZSJz)8tB*aVXzkx>(QC~AzR{Fdf(TneecZXIu3n9eD?9fDN;tyj(wO=ifyD7Gn!{C-txB-@|tY_QLfox@l^l z|1lFegogS%rcj!w6jSAQl4KJ~cl>gZRyPbT#g~uuR!Ou7@{I<0+%Pf*VmxZK_cS)K zqZ6!eMONN^h_wzZoAVVnv*v!1y-}bT%ep?+EVf0_FKhOSgva70Thz$2$Xd#ibttS7 z|Fjc_yQ4xR4PwBHDs9u+=zBl2hyM&mSD-0kyI7FMoJBcy(E63yoyHTB#_w zxP-avoBmMbEADy16ZXN{9%&=N#wJXt_|ssgc%wzty;1yUe#M`BW3$T0*9k~>8prqf zP(p;&>9;TM=E;=C#4sVuMBkIrf27_QL`I{MmDde*)o}FXShYU-9YEvoI>`2PSM^kw zQ~`y;2k^p`S6SO$C1vOiVBc!JQHO;6NQa#0Xq|Xy3PrN(w6vH%Gg_IN1y2me5M7oqD)i)gK-vWCgHD#dDZzvv^kOnX{{LrOw}sru|b> zxLS%Y7i{7y&L+%VMF}a>jp2m06la-W*(OxwGw%yX81uVT7F-Ruesl2vyt>X}3zS_{ z2_NYg7USoXTdV_~r)by5OrFqP;B85TMH6o)7kGRYR!&6k)e zI4fOCE%>08$Xfeu8d^u{HL=8?jhbS#R5t-bg~eLC^Y8NV&WM`w{0=qJP!a#=|#f-C&hDkrVnr_q7dMgx>QyOu%09 zNk_Z+an4W4vYne}h;@mfDBK9ApF5jb$9eo`qd=Ez5sbC!m>+fii7#lmJ*81SM zV`V3bA-}lN5vv>+E4gz7Y*>54#eTZL5r$$H8JckX4V(I zcjjUac>O!N$e zLH7M67v#}j**+=-MbL~XBAPlnI49DnbJ@}7n?Otk`qg{{Gb1)Nb;H;7I+$}pDfg6b zGdiC)V@A=@O%hGRf+2|Yc#}%ljZGtXM}s{3-&mWaHtsfS@K3pk=6?pShi~f`1~Yyk zZFgk_P-b=B>k+iml6T0K(IoTLA^pLLzQFj)v~TRXljhj3?tSUQ zF1Tuk;3+`1be3rq80MR{Qt7KsyX}v^uLT?pbYHY$UpZe$8j{(To-F;cr0qy0fv0C? zRc_BKFBfC_7Ws=P$ed^%$BPj^vi+_W@Rj^TNYj^rTDaF-^btMhX{3{kmzUvd=Sx=@ zpZk3@jy9m20Rc0c=-O)7zfGDr<(q&eL{lMrofxPwU?Kd$6!=ZdE=(v7G=wVvAaZOfiF#g zQ}(euK+%~GZKMf@xlfkNx${SsIA>ZXt{=NTRFHy5Wk_bc9#RuBWr>eIr9}x0Bb|xZ zhH+>is11u{eZeY@J^meom!CqJOJ^D1`=iz9R0rs%rl$Vg43VshNqW{?NIWv;*KfCp z`+<|q0>j{@x22HBKnjDYAA+9_&pBOAC||oU*}t8~0tlmMiJw1mCMGeVlWkZjzIlD` z0CrMptnIZbK?hx#d?Nw7nYv;{HljR>+RYeF&tsx&UNgS<#6+l)mw)cf!0kYv5CD|J zq>}TiwTwc2PoP6F0I=PhSA>V$N1J|EH+@bB5iYL9` zgWvCZyP+K05Q2{!fzYM}^H~qXs8-VrD*#F}c>w_L08^stjM>}GHqrzTTizwE4H7Mp z#1rjzK^rwZjzJqF#`U*C=oSKt5Ep@Dv1L0e%V@MpnjZG)f>W<@Dfu^yIu+w2{BG~b zj{4?VR>`)bB@NxC=->SwQq#}@MRI=@s0Y~6F;zpUpLAN+oV=+C>7XkW^&P$b-cjQYc;>wgSz$S8%08*o9oP=9PROV>;8E?D>x9-5Rr*J{#p z);4+#_tdQGheIAMfa@=rjj+*A&Pz+Xtl4I<#(WlUDTQG*y8Nv#^LHq$emb%d z#_)Flx&v{Vw}a@EbsMI0bfuI?w?Oq>$w!y`EqHRBZi0Fc!C-I;9e>1LGJnQUg&txm zDKALQ1*oj#KyKekl+K!?OOi^NtbR!u`^1VRw35t9eC7a7KGC0fN3YR)o@ww9r-}0w zl#>ezfN4)}FT9=Yn_>aM5&*_(9)tRZS-}nn#_5&gO$kq;(kfmHveqhZSA4jZx_e-h z?C)xLH9G@nX7MrJStDM|ZUn?N_C>GLFAu*iNkxo@Q$_)PHgHWj4avp`;`$3E&pi5j z03Y8t@utxfVVp=^!NMKTBL%)s=4DA0bjZ89wj%UDa#TH-5QxHMp5DNU^lSEN;{^U= z2RhzZNdkr5d_(@mdWux8EER-q*sR8IsgTy|ZyZcn97|U4KSGI2v5d)<(irspS@_f$ z)r+C8VKkxd=EAKbiI|u97Mdu{@@M3xCgfdu7^v5@^4q~;mX_3rQRgX6nn4k#jP#}0 zl-;J{2IYXv6U2%=QfWWwA_n?99ct7n4gK6KtFk2A{R7TUHJXp@70mVDU&ATE*A*>K z9)`?@_78x<$Mw#6moH5vO!706lK^y#!6Zo0Ujxjt#w!T{Ko4>eLS=jO6pLtB%=QlW z<)WVj7md^R$ki*kG7{glU|5=y=_WcAVy?+$AMvKL!3pTb7QIYcXE3p{rcpOEKw)EJ zh~(l}qL#(s+hP|D&Q7;1gnqL|9_HfwKo#V8^+Rd!`&>%(j)Y1b^Iz-G|J*ZV*WPut7i3Ak#YWR_ zZ%~S2`HYSTBG{i%071K08>PxLCGCDp z;R~f|mXtJ*bqg2J30Po@{3qD6_Dd=udx<52AM;RNFFIR6aRWBck%!c7^tT}c4HB84 zN8$gaaRG+Ydy&P@A8;g0ZKf;|yV208x5*OK`aBQ;*HzrmEX#7yuWAv{q;?$zx$w#O znO0>NUA9cxc-Krw{AkD{AHg@4sMP3DGV0PIe^WA(U&;rtfX!ddqeP4^{69gvh0+l8 zg^UWBOAF}NKWJRq=;d_?Cp^u|wM(dCmBm8qBD=W?)MY^P^#4n@a79NFIL}BqbO#(x zkov4itW+fx7ohR>HNObMGm*YhEfEq)e_Jv_CgAwGREkrd^A*2G-TT=NIn7NR z7t11;aJy?_Uh9TLvnq9qFzR1PHQH z&wyPMU$9bM@mru<_t9JU6o_5u&7gtE6kaxG$xzuTysk9KRDcaB7R5Ie6$$8=4%S>e zuwB09qcQLVfQ;I1R;MCS0G6WY{}w0$zoaf_m(Rz$R%1$7^&Kuoy2T|c6)TxWmYzBx zd{QyFYQy;^Qdf*1iQffXS$bNy(=MoQKX~%&2`Z~%(yVrtPxw!*O{zqBy&lncl5;6E5&J%;E zq0DbbSeb)^0}Nq(k$8&b5ercI$Dg}^E?Mx&V39WG~68g5Z7In56>IX_2n zBv$fW-mym2J8l5uR?XO$MYmF)+RO~V6Ie45Xv93rz)^36*G)2faVcI)eiQJ5<;*TS zDiw`tf@U?Nr{bW}Ubbf|SJzGvZ-Er@DAD>ap(>AcEJM9e#>~)|WOQbFHR{iVRXBqjMH!2mTz%8HC(yMm!`+*Zsx z<6AifcKx`g7|wQD`2LXr8@pE0CWg~)uB&wefO&Tm>B#^DT?d{drD1>315;hXE z6HOvuKI4$>>Pq{O>>;R^F(l{7rLlG^e2{tO#nP`7t^k~71?5p8`V57i7_=+uvA)B! zY=+yu5PV?c*G>Ooo`+`-P}(_Yd1dE}n`+)wLhY4{mm5`9mM2VBx)r@KXag2=)f>6t zX7A^iCl<$VG>J(`X8=6Sbm)(Lx6A;)?={n(iVuaoL`@5oH-Z=uc`YsYVed)%0PtOX zo-4oCR*G(oSuY}SYV5zy2W%3M81)(hYMM?5NN4fvn1)iZ1e7y+R-G3nxtQf6qt;yZ z;;ro=$)F=FxjMHw?rMgE^G^t+P1?{;C<^w2Qk>dS9<-C@YLOg>l{C6C!Y+TC3JZTU z^y?%QR15>PZ*j4HIK6r>Y43NfT*~KWUcm5$gO__7_GrDYvt>#VE_MqoSP& z7h@Y<<^vYLF1<=A=B!FaMgP-C05aUb!}i@yZkYW-^H!?CE9sX42(`~wgKubPnEPop zW_i_jcjOot^>ETjYFv%`-wzM)Vc2QI?2^+eQFiW=S`492gkl75tQMKPPs~R;DkknW zW;IsMk3)dnXga4%+J5eHAwBj?3$}p%-~Ac&6~dzgNy;M-Jvb#jy)c9bv6@DHxNJPL zeEJ3Vdl%KKC&bo|TY+8y?&=`#kbiIA+y>yXSL!sQ|N8imi_oe5a!GPtq4s0x4e|M_ z?@S{eqJaz}JNA9TLvbF5zsa`x|Bkc*0TO5Oo}Ge9J%?0Xh}o0ORu z)#AFd-^niW^5_~(DoXN2?2Vx3@wAz`zCOV=phIUj@7o1f#AmOGk`t4YUjf#w3KDR= zi_ezHfo$Pe+_0JML^*0#2jL!U;o1`E*sv(XgdbK7G5Q|&}Z zTxWFk<%?{l6h4R9_-{r`xU#kBA$? z%V_k`39_n1Ar=o+=roOwMkfj+w6YtNJrH7*|8lzR~0hQ+%5zJkQ51f zf}p5+08`k;SwHCs+4`lFkrDALuMlhubjmv1HFg{PAFgfCX>|H&bN!(9wZ(IULo7e= zIjz3AK3R$Dd>raL)U+l~*ae_&)8xz6glo{R+IzXve2&1Eo51P?F0G#bU^V`8jnf&iE#WX4E$M~(DYH<+ z;5FsA@q=s-_jEQ`N|}lF9eZjHsR*sPm=^$6 zY*q@RJ$*5H(=lCerV{cKE080ureVOypdcpivYu60slDAor0!Y;JD_kfzWOIf5fn^* zl<*E07RHpp^pi0X6sHgBjEscJPz+P*) zve8GUPkv0?bc;ayssM?IU?t(6ldB_!WPb~hGbsF4lCRAQc7@QP!_zJ0A?wlW_C4BL zC=En>>Q6Ybaj};9;P%C114udajNvqNDC?m#%|xHbBUn{bl~wpGrACq4_c00!-S3B< z4UWE5!@dzEyKI@fHMj+P1^e|q%We)*i6;(*tQxwGaR05j?t&v-z1*8>*3Zw`L&9O& zHOqT!Jh)}q|CF9TyaN!kcvn6I1F41pzVwJLhZ7E9QV?;G?*OAZ8}c0qBVrKZCX6J7 zoU5yAt{Li9IeD!GV8k&>P4MD0>w!N)z{GTEMVd)XNtv+{()o+pKtCZ#3+s)Vpodx5 zX8$@uKZ*bMA^zu5wX`=ILh|ygbOurL^<7q54(;&<_V^i7m+xs;KgUD_SKBdl5vgo}pmC!W zIXe7kfsUwF{7>ICw86O5;ImZJVh@1C;RR@{S1<0^^sow!6$(sUMM$PJE}_AFYWgz_ zh2KEA{T{T-CtmE*-Q^M`Vb|mcZF{}je?Ok)$Oqr zH0geB*;)$f<5!9vCrH8;UK{d<-yK*hC|>0%th|l5xPyf-+p7DXtX_}XUfCuWG}8}} zqIu*i3lzc0m)nc`8KmRW_?g_VE|Dq|*+U~UZ#S#9pbwy~woy&!;UdGj2SD#fDDz_h zim5n2rPq^Y^`DIT)+U}%Q$gqTkn7$2kiQWigszo+rx%MRjs1Nvn&0C*+=;HS(^9eJ%KfWh$s zL^!b8JvLf5;j<}n^^PxZm9p60HnAFj@}VL~iuVI#`5gwPKvg5c; zhiVnpWVqQsmGo2vyS>kQ6o{B^@a3G~wr!SpklB%Nsl&ze;a`3&%qTAHRF}&D5t}4n zl*T!fE!&xz|5-idy;)^pY-AM6zu&=Qi5T{5@t-ZGiik+zS8Z~7VbVOjA}q7q{{DfM z$4z+jFEkQrjAnBC@EQ&OL}W!iusnns#iF5c@TYfn8Af$Z8a;prEat(eA2Dv;knHYlNrmIOs)?OHT3<(GD)gLca zM~v)&?r*Da@-8aj`}4LzdT~w~&Y}P_BHk0IH!??J9vAL%9WNTK+H@gQSkLcYZssegub-VQG`1H?csR zdjM^12t!918hUaTa8Sdh1-U7NoJ+zhMft3%X(oR^_uNDmXAq=GOdF^C-UUEADMtWjMQo>q{6yf^w!^tevO{@Ds{i(#P zDM#N#hsgDu`Pl(G!nvF9A@ayUmTPzwHEZW12T)AX_#csz_??O~<4s&e{FS;&oCpt( z;1jkFK7Lp0;iqeNXUk}8^z;n}l3I4aM6CF&>3Bo6#`^-7PgirQYa=PuajphE#l*2c z7%*-nhBl!x@oKiE#dQ`JcORPXw<^m(LYtN+EmJ<9)0%#F-aSQs%nf|TwfOEkJj1ei z_!kWKa;w@234DD2@@&98K6Ua0AdP#$Lnks04yft*BTj;;q3$y|xUDJW?ND={F~d{;665g;U7fsCxUpk2Zi>Vhg=#xF zbsvU$Uvtf*utMvu;G+u?Dt&ejBAgUTqMLg6UZPEhmMLuJ_`Z|;zT#pD7R}ApKtkc+ zCKd~d@Z1n3<^2lMO&cgWz#@q9`wn;L#r;F)i?97D#qL%-Brriv5+sa)hB1`z1~WJ$ z;){ftR0Zn3w2X}6{@D{?rs{(M;(}z3$kjn1L>z7!b6gzlOD;pw!FUMV)4odwSAAe_ zkHfkA?pSoHKD*_1{MU2Yy#Ni?b#w?5hQjyQFXJoMl}2qiqECCO?(hB1y(lI?*MV$6 zX}LB~GLri_`0iD+7<1w9>tmhktV8?R^@6oFY>c2|Cko)9=3v`+1jwS$&!=Ic)21|g z-xO!bTUCa33j}hFMBN6z4r6?p~Zk)LS^BOMHd4I*Jzk3g~U$q_*qj*;W;HtsT zB|JjQKx9IN_sJ9Lnk;aX52ghO1E^g$W1aU67_*eGT8n$Iax3b~`d}{kG|TV)+a!!6 zK(!U|njX|v!O7yt1R}tsiSAd;y`9KIEbmSMz_a^S80Sp4JT`WAlYM7%PEnVf#3 zOKUz$g|V+%pPg{G){{fs6ES7wk$>CYRV4M5QT5pS?+qCLEB;jqx1u~l??${N_f<2_=!+I=-j^HIDZeYYV*Q;UtO{t z!9lEF8C~#$Ucp_j0WU1sC}90-1lvuM0wMQb;sG9T!CR8s$tlw&9wZxsa)~B*O19nn z8H+@z3&?g(Xx8EyduFG~Ow8|SbSxyKW2Fn?%AtN;9@IQEADq;-JQ&8XfibE5zT&`Sbd zaH!I|J^-VEcQ>Dxu72IV>57Fzt$E;B4$!uVQ=p+_lXrdkzuscA}d-=I-0?lpKBg3TDw9xp^iciO9#Hzvm&ikJxs2{p67D9yL1`SMqZ#vF4 z6C%T0xgvRvBt(E)O;&gxD<1x7`=k|!&%HQ2IR(ISPZ%y{@zzPAHWVPn?z`4m zqwjOaLYDs-E2T3Mg<+)v$8@JM^)Pr4WvXH`v=WAK!8d6=|8_RCNGXdRwXOYwl*si| zkGiSvj@Ox&SbHJ?D)%m*EkDfT)tB~9@D-Bq;r0?$Zq_3S(6MR+4oO8Mx;^p*zabD~ z|LauYf8=UA@cYXe@*tOXM^zaDWws4Gp)v;*WHMYYn8Yel;zzMoi5sDQjCJN8keJ7t z?zj73Wz&v(iqy97-NoQGATDs%Ft$Vx2_*uY_wX%EkJNhv=wHA-+1!Zb8}C?n6`4z# z4$%=2Mu^VL%sf>Ub{<9b*3opE2AU8&81Qx@0xaujH!GfTsG0nqE_aO& z(uG>y1YQrBtggI-y@Z>*Y&YG$JgvOsK{pODzL^yMB0;s}zH=lXI{hU$Y+BexkRbU~ zwQpj%4#@R4{;qa6vXG*2Tq=Or z027PU4wEU@U(5av>e|{dt@l2}W^wJ=4mp8^qw3sx{ZWt)6DOHI*+~;Fk9_XPkx?@| z9IZsbJ=bvr+;s~Aor~w#-<|>%8{OpnmVpRpcE{zbQ=g>P6}v~fpU0=-;{oH&Mdr7F zi}BzdP9m`LLUF0IJ*bZF-JnWS^gBj<7(EO}JuOXD8WOoY7YHGX#rw9hwk+DVS}kMH@t#l>B&Q#-}b2@sO$4jMjuIk;+&e`PeOaQ%O)F@ru3E zGdVK8YBl&;Kf4e_c7n~(qc$eQQBEU4!hm(ps1qyUH*sH^#hp#Aio=j32lA08|FW4W zu|P|S7D`&M92cQxots1pRnqgMv%X$G zatx=S;Cs(jKH$AviN44xu`(Ri*a0q-rz$Hz$anfP_Yv>KeJijZASjNL-?7kc`YRYq zx#f@u`yjuf+Z*c})Ff^|>G6_VbV7@OkEX#n;n={U{b@al`PTM8$6oGn1BrDVhdP=D zk)P_>56Gz^P}{Vy<8WhU^`UtfpY_PMDM{RS^Rvn zY|54odu&ar?-PbHz4(1)6Vorjla8>ZwjX53`Ds(FKp{(C{^NRmEa$nG7pGU>VBr*q zJt;8jhP7nkcE1%boyzZgs9fmiGmop-bwM^eD$SA-Mu1M{-Mrl6B!-4kFnjssf8#L) z(#dAZX~!A(s5piO?JZ}w*o^RgG0-uME#V}vS;xQn1hVF2E1rOSo%}Nb`TP<*0-zpo z>V72G^5UePhO{=pO*d<%yqAUDz7mckB6BC20|2*IB(rs+`Jwq zk+;G(FSL08rk@Ur`#s?#z_m~bYv*I1C3=d)()Oh*(Dn9?m2xirm0=AMC0=>^|sC=D1~saAC9roG0b(W?=(I?_S>WOj8iy zP%6_Oux8mTeecEzW6#IH{Lf49)O<;4W6Bqfn--nA2yV~qr|UxkegvWW4<(C@c4Zt~ zozZF2!cKdM()S{sEo9wnOHnub57rH>FDf%2f!6mu(Oy)iodD(L@2&F9Oy>4j_xA+K zt0#)>FV~q?IWy#&yU&>eVf#5xKTKX^cKBW+3#L~P{?@3#b^{gS$4ZRO@1^|s#e)w& zrAJgRW1||X4I|_(7xW8a`y2M3cdwggfIRn6St-!)w~L*#`H~TZA}}^*inEBYu<}Z$ z$g_oTz)hIwzIU?XhDN^mX$gmu$ju`XFvIlwrycMTeq82;{72WW#}UY$AEoQ|S!WM# z$aM+6l#-Mzybe;Z_`M0`9>{WBf^xFjn`S&geh=hfOb8!${}xjez7V~?)wKUrd>U3S z;#^e%`*Qii#5|S*vf{o&EO4UDM>J`65k^`yC4q~-YX#tus%1$?l6N9}E>`lYOx%uR zNVwS?v%dK4q}8c{&+G$LgO{Ga0B;Jv95;}V7?8sq1O%4w!6qs4lemeDpV62yn#rgM z`8J}O$V1?S1^w=ALR+^xi==(eKRwd8c`i{d`=9tfUeAl}ns*oyTOoqw`!fXe?3Z-P zM$d5F@y1@_z`Spx*IUoQW0mE{I*PW;@Da*EXiy6S9|@812&37&x`JwJw}d@}oQ33R zHk3ZmWKgYS=4T9AY=gZoXgCL{F#Fp!Q06}(8?%!Uvf>f`oJ;&*iBpSsWb5wfuDx`U zv#?(>V|!HqL&Ybm?lv26@TYRW{GxLw>;8NEgfO#jV7=v6GFaT*l!(sIxe0O{$Brx1 zVX%isHO%4jn-kO92d@njq#`FwVG+Ep9Xr1!DtKrxMD*d%HRCf{mx`$W*|IlJIE$}I z@N)mIvtvf;Va4Qv)z6Ni>R9mgt~$Q3`NtK^Q7JzOb=d({V)8~M)Nj3HLC36!A8+fo z|L9aT;_IYxV(RB%*UP}d?3t%~w1W=PqAlHFU@C+}P3W1Kw|1R^Gbbb{RL1YfzVGDa z`@%GT;Man=G1TcVQO<&0Xtc+qgi)hArtx75mgm=OF?1ji7ymke1lh;?i3^9i7xPQG9l!bcQLZ+qJmj6!r10a3M> zzx-a5#Yggc9@C#FVQBq%A`@mPg4JlwSdHoLPb<~MBg#2J78m?O017jZ%4|@SFAws> z=%e*J16r9rB>tyeaA?)BlucjO6$;MtWl<0<#zbG*v*OJr3DLmd9Ub|dGe#j|%zJ(uzO~2<((*8(&j)7$S`MzHiqtgT&*wTxppop`A z{Bkn;LNEMA!ZhYS35Ae1BJF}75`JIF!jC$h{;)YU_UrIRHK-Ga77z%P{l@;J(0p4E zwW|AaA866sAb0u&Q?dsei0}T5j|GL9Wy0l55iJifM-X&++;j|B99*!epJTb^csb5} zd6R<;nKgOZ4Re}8naxG-=!p{SXz%>_EDR{4_Kkr?C6N$(oaj|O)5ZIjbzhBv$g1E# zKrT%qXnqM3czp!7+3mB#L6lf9T_BCLCb$xy)=?88*0r7(#R}SDe3mCLdzpB;aS752-OPR?o2u*)s&UL}vff$#qIbXXe5DEv&(jSl>WU(xCs<;Iqu z*>H$N{GdsEALY|I?lk66YjP+v*!=|_&jw3ZQ*?FR+hVkamS^oV$iln&OCis7;^E*q zb+Y@8;G56wj(M~PVpuL{^;UVzg>7eDeMzdKjDl`4xI8Rh!?zn|XHf{qOFO&9J8vH& zPip2StjQ4g{b9B{dfP|m=51Ha%+`la(`icQe!<^{6cjqeQ($$J`gWN%u`?T)9*qQu zP=JGg9JD_*O(}vhn?EllCGO}>B|`OFiqV`G(HD}Svt{)7vXTuR#bL^YwarvIyxPz> z!M%1b9XxalLhyL{%qC-&{as=Bxo<73xyd#7vX!PnofjQy0|wtS#%i-pw~Zv2e?rL$ zx!A?WBrbsu%>;@+$n1JCly9Q+*Qwb`16s*4Q+QS^3AP?QM6LwW4mGu3TjQE=-EsNx z!4gnD8)S1o&w*ii@{ItS(2Z#sa(>Ntud_>dF!}i@W>GX1 z^X6sVDtB-rrpe!;fsHIwj5Tf6*jE|EBdNC8wegL^G7?MnG@ZTZuZlD0e(bJ2m8Qtz zF$jfFV2f7bj8TBdNVQQJEf}3khIO~pn7k(xX4_s|+|+o!VO)2ZF_RHx6i7hD_x>!ju$;q6Jsg!o(S0+`v@G;>AZ`7vu)rg>G;by+rHBNbinhuB8d+T>fp`6 zd*9zTFlk0S#Y0@kOJQT0o-5vPMaBFU{gHAt0S;JZGr2i|^5MpT*vRTLXGGd2E8~M= zad~e$cx7(&ihM?W-ISd97Iw<2hjMM7Q2uy){n(P@eeBK0oRg_8B|-AEcGHIU-dE9a zbiz%2*3z~5C@~ll9OtwQLdnb%_0kO=LqS0~1^za2QaxfK(qy&ix z9&v{|S%fMD$B2jJ!&_93Ji@#>v^E7XeO_d?yStA}-QM|)LB>0oE1A#1h_ljd%s!b) zt+!_QDNtRpo(qj9ZNaEYh5lFs|H7hwjML=myr8)XD##(l`zPY$y-7I3mlBNmi zE|gz;`+YjoM?Aw(Oi||arKxG{QD)MMdf%49hFD4QDj*arFK)y%#SuZc&*=9DX_yd- zavSsq#H|s2NpEaPlf=kY0a(mlkO&qf-d6dBcVksYLh#UFa;nbqt{ar`#z5djQG8^7pXJ99h##>=AHb+H@)4m`{Pa4@S!S-t=7}Ub??|%~K2Zn9$;e10TnB z+S|#`*J`VO^&HY=nXBFzq>6P03s+J4ew6(x%*6_JOY}oKLFK~xWa-Xx2=2U-Y`$HO z;GoiU6lV?5D-z6}%;R&0ggDVPTg$}YkzefP?HH+cPn({waD6hbxH=BkhVvh!B_6{Y z>pazH8X^+WU=(c364ItUfDu+34~CK)H^pP}JMDioQn4Z^Li|J8kuIjiB0QXi#c}<* zm|c{dn>YvS*tQ!msAqB>d|7@m?%KDSv*&W__1#L*lCg`Q<<)A^T2>UBp%JH z)6sT6*YoFl(R;ndjR?%P_dla^^mI+!vD^JNQ_?RqnSD)~UJDr7IeHsFeLES{e3{yd zkk)T#f4dMx?oi9gDpGC4?dnr%#j%LvAt8n?0PQpM8Z6`VP-kG8i*`}_jv3@04K2*0 zUeoc^Xt2cx!tGtOr*ryfJvhXY$t1Ns>2Ts+D`!dQugxO#oWWUz1)8O-If^=R$#@-b z5&U4kq54}rJ|1Ptc;+pn<%vhY<7jRC+dT$$%O64##(y-} zinph*A+MuD(@@^+7jiVp&@8%AA zl6&jaW&||tt+ow|u*Q<4;Z|#mrOGJ}qQr$se%}uPj&-U8sth;8>27WfT9C*LPOiPP z{qA}pTPlIOx;mvmuKmfJ*7tDk>nw?RIaZ@?r7`8jtjsc{Mp@dx1&-s&`J%h#wsj)& zPK#J1e?T8LVdOY6)VeCd8*4+$ST5tLGqp2i8 zHB+Y$OBL#~Wtb;iB!BkGWpOK}A1ih)QOLTcy76dUT{k7%Je-r-oK=A`*R5tq@8?jQ zUv%$`MP+n?MZWwX;t(By?kAU3IAB-DH9WZ3b$}K}gBI@ra($D|^SL?vlpVY5O((D9 z#>StaliEGuJfNB#jPZNkp=`jYljpFZ3vAQxMG=YC3WY*0dWPPDG>%ZS!ro7V(Opid z+bZlF7AV7IA>gNf`&sg?4u-5}`yW>kZR(R#h zRwG?*|6+?D{3^WZ7eS`Xx z7afb}YPG{DZx6qGMTlgmjyMVlU}S4r$kDx)fA^_wd8y2yko7mVKtOeq5lfVr0-ey_ zUw20cZy2hCg9^)TKrYuu^PTi@9{~P>zdhWcza6erT*Y3EAG`4r+DCUi0PD=y*+0ZN z7te3iSIHtWa&E|J{9U%DaL@T-SNr#7=EL@2d)$R7UqT**HC7+rxjWy~W>~gMUPSmU z&z1LqciksZ9+{Lw^>ypo^Ve#8b~ZM_CqiyXcBOnLy=gj-Fw#H@O2&}iu?xu1$mIIQ z)Ziee-1owdJ1#jk8RKL zS~Hk~frP0+$}mqk9iliBreBNN+7%U5vD&E-WfIumv=H-}-X7jWk}{t0nuVzK_Ij!4 z1kL2S1Px`Nq(&59Mj~oG97c4sRNznJU>`P=(eLDx<$T2B`AP==mF%9_ZvcW@-2of( zDd6ewF{j^m*L+=??XMSUlHO3(f{M7mB8K~T?vizl72);dOVr7e_u>{;<{x@!5}H}5 z_bEq$9+2lJZl}EMAY{1kWzw4^*EB9Qs&@qMROBfgcM1~AcD?& zjymf0x%FBtYW-mS_qI|d6`hwCTPA~vy5}9|v=CH9A82hhm8LToGVG;%J#MsHPH%Y~ zd`NMS3i&~z5R!*x76P9@V5a|jYn<(A@6VWE%G+5ad=JgCgLiPYs{y9t*-Rw|kf6uE zpQ{xe6){{`kPBAk&A{EJ)^)&Xj_L6+G{1vJwS#N>T5VCf7E1gJjG$A#-j_VR@c+lv zTSrA5b>G8u4&5+-gmiZ!jnX9zLxXg8r*ueni3*a^-8GbmfOLa&H~c>MJl|)n_g#xW zXTe7HuePt!y^g?lp(YV@@e=5VZ@5)$9XvD=-XWd; zy7}v?&}qC$C|RZPq>UlSIPJ>;l}Vj&%fhpSGiYOg;H@)4x96#aB+JLGtz^4)+SX%f zi+I{pmpmm+HR^{I4kd@ic^MlP$nM+Xud&WCx)GQjN@ffy^YuYRy2{n1<*HalmgS=3 zscm-gM_eh<>D3`Z)!)MS>Rh(o+1{RQoz0mmg|Anvq362|;Bbc}hU&UBwYGsb{1I&n z-$eKqaT?sa{9$E$8LnS5$sLMv8a6E15~EzSfx96-L;Lh z8py=?x0}P`RPs{nBvZF^)ZG;M>n23FoB-2Kz~jIx!6gcE%nCl~e||H@U(3HRqHPrZ z{Pake@X3)7Rbn6g1UF|v8Bs?rUL??>PJW zfrOBwwiheSf8Q!U(zUqA3JO^E3Z;_o!?v$GQJ^sq3$dxw9y&ZX9XeuCgbCJFCEZI? zZI4!cGwn#A*JuCuTcH7pUDK{P;{9IYw&zoFm;h!jw-&r5*AY63iJXQ2-MEB}o)(+| zRz@0{4d{>35CYLnZElfiR`-$JrYgKhXH!yo8j`3>SRxIU!2ok2HRhGClr|W$M(QE= z$t>HJJyQL&KW`YLvrHq7IV(q}#YPk&7}-nPtSvS7y2s__g~cK&g1&3q+|H9AGSX6;@=jv!__K?f^;N~WUby6EN;6sg4^!%pgvCvT*=GcA?rnTeY z+o&JNBD(M$&AClj*F7pJfriOi9RJWtmg*pb;$*zwFOE!sr>7Q!Oi0XGh6Ma}BjrPy zqDNj-9xz`!67G&`)75{B<+pEi>-Pu%7s>EG68+ROEd$t!Nvka##B23Y-H6eINg=Wo zIdTG&qQgeU_egD*SFK!S>MZnFeghi#S_UiGtHlZ8Nz1bV`JFM^Sw+=sxfw3u!ujzBF*-a#-Jc;p`ZtLwV z3j~m~N^TJQqJfk2*DvK}4vmvmi&hO)1^mhkR`K9*20?H-3z6}N5MkxOebMs32iHF( z;j%RgTSbDpY@e+u;=kccx2V5Cz<4Z2=r$^hE1W<0~+Qc^4(1u81k9m1q| z9Cm}p&nG(2JG*Nii-~$7VJrdFE&{~HoX zN*L81%hZB23gUf)p{*HsW|LG*Vnfjnto;N(ZYM~ppII3hxSI3UNM;A0^d0*AmxGz@go zj(9pWKfy16eLkA(b|$I@&kkOqZ;xUoBmprv2FN-L?W|%qDZAYmLZ=&dx3hap`cK4M zW^+B=7=^c2)Mr-f6R8mBE)*4h1TOMLFrXjexlS1Hd2>mpylbcRJvbeS{bVRi4{l+d zcgeFC&@OSY(2L$uJp}a$a1+EA{)UUd_IgFk#04N?Ud25y*%YnQ>Oc6zXcPPU$ce5f zM-H04HcLsygRzEVE6hUdV3`*k29_M+YgG^<-tWKqL^F8elL?y%b8|$yY?Gy@=bbi9 zHM=GICg9FJHzisMxI?jtFtwGlnNp%0mLHP*P>#^~>?%HCIi-7s$qJ;$GLxdO+}1hv z;;D#Y{5^g`uFT}c13)dhxF!Yxt&Znl#TNffdHb@`>UV`?FGNwe?zNU6;?aY`14 zVWSdaF5B(cy;>2f>PW_`&%M$e8-sD7BAo18g3i?HqC293pPSs>{s#)=ecH2Y#6xJ$ zulBoMbf~G#<^Jz1pdyS*+C5b}9r>#qBC+-*Y4X=E7Gch{N5*88Mu+gXIOIu_H^hfCA5Dg- z1Nl#$-Ur-sc^N$r7VfU$N-@ylIZ(P<7Fc=J+>D_HZ_T$l211=wr!L$844`t?=^gP1 znpBlxz`TXa8!F^>hW9{W9Oz2(wzTr&Inl*plf&}j$xTnTLsau(jTwEHiRX};uTj2A zG(`2HD&wTMM)MRjQ=C&>Eu&x+V_bQ=CT-PVQ!^n$78$s!0i8X(R9gj$ zhurW`CwvAQ*)9=Gk~Z^-7y_UDSDkG+&FSooi{#fT-)Z=jOSI!Ndc&gNRoMtDzXTO1 zDBCiJYTUvU#ewmQb(G#4vB59Vi@N+($wf%#o`dHV9W#fPGs5OxT2<=*t3!~mWh8gI zHsguqz`ldDxJcEru5QE;@*I)KE%FL9ZtQ1rkc#6rDyen06gmpF8f~ly!>B=f1;?ZT zCmw1_k()RH*|Gypb6xNNQ9>vn`iJLnyi9h)h)?~?_Ov}NI}8VsdI0;`rkf&z7@64E zNG=|Qv}8&rHz|oNeNV6B$Sl8@3TFSuz0XkcIn74$^AT3UaNZGMD2dBvCgQZT;9$t) z`^f>{{e{ahd^WONV(Qypgn86@?Vu)3>84AB=U1e5)s8_{dP+*UTN4TP5ifuRZ%hvQ z?0wWi;`y?w07Lgv2A+*{+F8f}tNV6q4zDT{xx+ml)Lw1BKveBJK{3zAtCg~b<|2LH zHL06a2vg0!w4P1WBS-0&)b6-5k&PTfRBG9zw3TzcnSnbqH81i~{%h`6wF(h~4iVzi zcMW;&v&sv__ul%`x*9_XuS=*>F@)JY?V5e5d=g@$D&t?+O>p6jUg;7SeGc(*Y|`?` z=-B}s6x8gOSDG9of42>ZLdqw)zZZ;oMa`*|xe;jt-4qgQK;rq@R3I0RYx30fhC&vm z!0_~(h3fpr9emogCb>YZZRR#~E!C97(}t0~A1p|oi^2o?9$^~qHjEmO{vm$h(9(2O za?B)XO3Hxk^f$e99-qkmPRf^Ie0N?un=tu!|Sz$oyn ztnMai@jdQ9f0`9nmo+bwd1Y=$AV*oDrAnHU?xur6)?)>1oO#qP|y>t_m?c2Su%7SF3VUyWPk~p`2=>p*iC`dvx*bhyVwg zpNEGpIGZbM0UQI=z2X-<1r7{cUBA0(Vj5bu-byT4t7@hL2jK1Ti(bxRTtEpq*QG z@`i?ow%@2<)}o|x&cEPN@B03OO96q&KH|pq2bBWdD4jbQg?Ub2{dQB1nAm<(GA z+RF2?XMYFVF%Ro+f2{5+uff^{Y2P-TG!nBSvv#wn>?FS5vjBhVPL*in^-1=8DC*csP9O0<^Rc+1oB^=K`|ug*gm108%t+ZUVnl zgo{2DrztyzBPDGRtflhB= zRtR#oIm~6Q&Q%z37p-mNjaUi9;;X2<5O$?q))4lHIbRAXY;pl77@+NpWQEQ{D1Num zne_J8^I_mK+5i!eluDO$nfUEIdx`ToHd5f}qj+S; zddoghPrYj;?6vp<`zs_iw>%_q2B)zMUgUtsfVy(vzdMYyH}?o2n-pL=ZmV zijS}&8*6yr?M@&3fS`>L5u%y}J1u({jjyomS<^{%Q@0&c`*ZM+VVA&=DRi-vHWT219(HF_a&q z?v@dg{yb$VL_Y17fDvK6->nN9%{K|TcraLE1M6wXA~NTF2GYWZhSTH_ zIFFN62?lTyr4fs9-Kj=gm%+HD{KT;O!(IkWq%#df@6F3wv=0&f%I&`Unj-kQ-VgEN zD3BtQGT_;lYv&CU=hYL9P5;un+6?6rOG&y3%$+2h>f();I3t%DE!1 z&wojih1JkMpZ73Cws)kn>4E^Dh-|X@=>eVnE&E%ZKW2G&7eW#-cs}F(a5Q}Y9r(P5 z*qB~wcK{E2@=b!#RjoLtv8{ zjY)vk6uLX*64h@_<+eIWPE5_a?8WtR|G4jbHC9bzmm>0%b8|>B|J%~)pA;p9Ege|w z^cgZjs#PC@tc}Ps77}zbrqSn^`EWrh8HD2!OWBS~AakBw;LEitaDLX7B&hh+W*b@G zjiI>&;fz_u$uoe!vNP$clWHrfoaMe32PTt{sa-fR0lK7&x1i$am<7N&+1IH>h>q6l zKJo1una*^P+_|jeNjpU2KyNo$fcc}98d~X;J*FP?g4sr)qaDCr6Rq64W?GXYW-d6i zBUa|QYxNifWT=w+V!Ur_(Tk|*PUP?3hz{BnpWHp0Y^2=9<%$OA1c(u2e_B0_%WME= z6&2zDhl1&!i*V16_u^e)sISk&QnRy}SM*i#D6Oa@8?jgd!-?&mlfpULKfA7x#27nk?ww?jP;rGQ61c53=;_7wU>O% zmn_^CAQ*zV_~Bf;-JoZr`l%9MPo`~t(eZccnE8=4zJ-(&UWlTb?DfWC59Hr(M3>7COxOH z>c7#_grKDe5^(VM9F97q2)coHhFtN4$sd5nri8DrZ`mFL4~7R$+^b|nDG%1BBcZ*u zn9UumaQ$?);7E#i%36Znm_kn(k&bWQB9u~(dv_K(g3JaJdJVTchXAojl}xyQFOx~t zrXI!V_1*dPsdnIq>Lb-XmxtIiPR3_*C{>E;H#WXY7dfbs&;E~e!iuJZ1{4ArZPz;n&jC z9U<}x3EQ17)Xt;$`ts<6{~q#D=$J~=kQW%L?=L_BRbpcNZaEFV96e(-AiU#?fCS}(Y!-nNgT8|A$TM*z)!ylwRW_|9NqAI0qesoL5)fQH0rz-QqC zE!nifQ|yVq-J`y}f;U_HmdPFTiVdMMm%DY82VdWpxjFzq@bH}hSnOSdR_}xGuJ?@! z^AlALd-%(tLBge~Lq=nZHq~%T$yOxjiA&JGQp~;y<`I}9sCF(}Cs@(K{uAvo@ZJ<- zO4n%HreA;S$LF!Up|nqkWszVfQ}4~8xev^fG;)enxKfCpy7^{};)^i40;rZDTrGY< zcqYGCFkL0tJQdixFfqiI=WtH1zlwlC=<2HeU_kIEnw*P^hwy@4 z1-|2h$ccl%2xi|6cJKlKTFW$@_VeB1STv#kK;{Xh$htK(vVzXYFd#FP$RRg_zX zO~d@V?A}Ogg$lZGG=0IB36t#sg@>YvyrN@(HIx@J1*hh`r+m|*v@1Zen!aZf5kg`O ziAbGjTb6xa-T3Pp0~yKh_medAw3|-1p$v3Epo#(2c^qnGf>1Qh#)^0)+uWgsaQH8< zzoI)$ykCPZAR^m~1~5{7V;s3qETfu_Zk5R6n?tv^+vhY-SKs=mo>2d7#DBJfjX3_- z?;fC0k5~%$y|Km+NvNFM`=5*pANR0753@=UQHXe<0BS_ykprLUfHoPWfuKFpe-_kV z`;b;71k(>z;B8i75MYYXp2k-|&48%5GS~;C#5fNaqPbRsw#;q0CwlDoCJ`|BkUcli zF-n`?$7+X=jY#GaOSY&YGpuvakvn%CT5?G!%SC_-H-}{CQsFcm9nFvnG12<-bytR1 z(^D9;SeuMI_`LiM4Q%^Cf@0MR<9+XaY3VV>k;R-qh`{ae^a?O&{$HRW;bCCJodD=* zF!MCxO3SkmV-KyQ8otRcm#|WbnrYufw6=Ed?o{{*kz}8)*L0lIwLjJywylAeiv~%A zX+Rr(Ca?Q|i350BW16|-Ywz%BSr|=MA4v9bzJXnucDSuo6r-b8;C%eNHwvjZ$~IHo zMV=gNsQEpWu|2?QPRg&}u{fqSAxN`{f`e@6rlSLeWvG%QL3Z8z)y;Rx|Mi;=n;yUx zJqaS1?5E3FQ{v(0m-^g`bQnECzGzB;0t19u5|~Cd7D(3d-6w0kTQOs|Q5L#RfZ_Ft zPy3q-(VMdv_C7#+=OI8G@>Ar$8@kK>r{DFFd*Tr_OJ8rzG2p@aXUOPokK~Q{==-7J z@orTfmn^nClVbpaxb@$i6v^PeCk6Jj$}3O+6;K{Pc=LIVoo9e*l zTTztn8cW@y_?sy4oy;M;*h~{>+k|+`UclRhxm?PMLgFiNLq21MX`O4$>$H?D(@R+L z+W!1fL@%GLblzJSJH9x$3|s^W+P8&XnSwqS48MN=e#bfJ(Aaw$R=Ka=~Bm_K}SnvaK4sopjqIT~G!dS<$o8r) z-HRK@d8AXpXCzaS`0C=5z~?8d$?emwi#_e0uw>kSX(||Wm&pWio`K=ufl=CGfgrqE z)XFAVbWnkp;wKhRY?h43s3;|?&^>oL)FIEg*l~3nLozaqlT<`(TAG0#dg$l6Y$9lE zaAeX9wo48PbkBWA9*Lj$%M_H1TJ);7FABNq58lO)%?F#URkx_)u`UcUvu{ir4Ih(T zUjBSCH9x<0G(dbHPtFqrtd`)*rcrm`cY|GlQG2SB1<1i%O=40Ktn>;Vu8S&Bv#o$PQip!yA5GsNm|zS|%N=4B zB@KaTjF<&p8F`_W8;!2CN(Q~Ifrp5}+R}1{GRUz*6G}u+7|!yW;8Mv&{&b}QCM8=dPW%24rBmBNmtO3Ofhkc% z_I2Lr^=4A&v}Az%DeqxlS$cj~>Jj-Bd{ph&UZoP9OCE^;k{=>goGoD;{W^3 zL`*>A5S?(P4f`&O$XJij6@$upLMn6(xS%EXN)!q@t!?bXC&cc-+s6D@z&=FDhXtAG zrimJwz&e-`^EhPWEQDM3z@e$AjB08Yp6S4%tM;AxEWGjLsxJ4yR8lhaCnKgg)Aga# zVLLW5!W0i8V15s|BZEfuQcIP;?J1mj%;%=X%+$(1aOV zBjjnGH9wlOCUwC9ZS8g>>1P+Q`sVY?JF0PtoxgeK{X`3e+u5OSu%%Z*;S>T57MhlT zo6R%N(s@ot7uEOb2p$Nz^#f{S_%KZxhe=So(`Lap=nlaL%tm6Nc7(8kjagW5+OUg3 z<~yV)@#*0#{e>23{&KeO+rW`dpYAQ3ku=2&NH>}3dzG@;BwQu(m8Mn?F!t@@*!x~= z&9^)^hoUPvsivs}RY3mCECPcRu1y213x0CO1(1I@!)rIx)6;_#1Y7jf%A}<>ISDuw z$hOH>CikMVw*yw;Pv%|^V~s1p9e_uc*WW!W1ZQWBFPitpYA*13HroNWL??p>q-z4Jy0P~AWuz~T z*1H~0z}xc61BCm6pw;s@I6-_K4nEb@c|xMW?h$l#MAOUeY!Z6i;kj&xl`Z~&0;q)` zIJTd&9n3W|i#$&j_Evi=k(p**uL2mo2|#V=ohlyO^l1`_ukzhs6$ohCe-wCcC1P;g zj*%^-kE*N(l6jqeAtT>>53AK5emAKlaK=MMRF+N=w~X)GNi4y~7jfIS{uTgzR2 z*nN~IVDacWci0o)MQ3-Frqb9mpp@#O5Ac{!fsiI*`bO%Kfr=!-oiVI7^wxDQ9I5!k zBi~|AR=Cm1xhiffz%IJqa&h`KIdnhK1A)t6HgiXPbu3+P!Vrli1Q z^sK6BYZJw%c(ZkLL3FDXb@*6lUN%tB`|Oh+&Vfps7$pe*>QEdeKj4lehrOVXYTj3& z!i-XWhc0<&1?w-MtbF(FaSxAGInkF111$c z^`rr4E`-9ER|IpXn+668!%meW1SkkyFSKtWE@JAtKnh=QR`!Hj*239d*-!oN_1~4E zX<%u*a=kctq&L4%Wn= zKONk8@_4o{tEQILXj|#&70$8O#`nlhtmDc+l>nfT7=pzYNNjZE<}V6lK!YZ0@cAb3 zXGUX`pZM9PH%b(wjW&ev_`L+7R;_j{V_YOYn?D-X3{3Xx1aGQE*rhN&S5!b<($idY zY9v4K??&N`B;oljVB?iUVtx=Ney@Zgw6*RV&M|3^7YNf|{XB_^iP(i^3;Xwsv>CKX zH$=**Sfe~E!TjTmPu6h8gemM260j@ME5TUXKz2w)ikdD{={?;Tv{(k`1h93b!?U1Y z%`q`BBwC<`@6xid3?#6p!PoAOR;^}-Mix9=S*+cb8~c)PLz|KK9G~PH(g8+dGJ6<6 zp49CS`Id#&8;Ox3SQr5!f!l~4cvt-M<<+#&BX3h@b7o`l_t$8lyaBwfE*nV?mTtWd zhGL!{UtmcN8U{T$k@96NTlwEDr&d_GZ!XD zMA!q=KM~i?s^E!nU{uLM6(0%E00;_s@S8tBi{oD*lpRWeWJJUg&5YQ{6;Rsim)*xeL0UTxN!KbjD=m2=Sm^4n|ASjGl_{DF-b zTdm94p9-eY*5_0YJ#%MQ3&%Y`HCMLy{>0CeJi=#ny`jt~!29Q5dbRzaz>}A0Ak)@y zCB|pH9cvZ^&9c)!^5)qIaz$nemp&-=SPKZGi<8{ARp*me)T43N9c#Uj!y>+bH%RT` z={PwXrGI|htg^bjXA)!{qj&d;_!_>mF(Z`$x)x%5f69z$&#XZ@B{J?LQUmNu$8_I0INoAM5{1F5zyH22fgwE3ei z*=j9g$`)^@`PA4tNgtBE|d1!?MB4RPec9*X3G zE+ukuzq#bkH_911~VJq-RZL6;9e39#?dp2I?<@keBB z!M#<5VC6KD4(8u62$39)!l5ZpZPVO<7rIi93m6h3TNQI&(LrKCPx~khE)ss3Nddfc zJp0gBGbxsvry>y z{!iXs59QyONN~TFvb{3w>k~5{QiazNSpM z-(Qgz`5&XPr`zdEhatfKE!`FJE)^T+esKqmfMYLO_vjn6V1ZSq^i&fAWK&kl2ibh5{jfF6K6_S(?od`F%G%UqO;g!Yh=bd|>^l zqPAG%LbM?C!4j&$J-42Dm^h<3cv55YNvWu_HSCXFi2}PME(<^PH_;id_$vLL;csqN z9$91AF@4Sof-!wbH%93r=Dj^1k-RP<#e)E`K9dHvA zlQtlGz8N*{4t(C8U9;ytZFDw!t(fg2lU{40%klY|J>W_s!)>_Vg_QI=$Hc^j#%1`l7_jhti9);*&rwgqweEm5(0=gA>3-#Tt@vf+ zN?E5v$4GW5mB{rYgng9qc~@<|&hV)9E9%pEV`nIq_!BXJIS-VKE-lqWjw^B9M|&<# z_1WTmrO=L&KE#$VVHhQv;<;yHV4S6RGL;a7XpfWSaaP_AD*zvO4kV5 zS0}q-3yqH2Hm)e@3EBdx`JXVz2P3IPNe@#*JEZM}@BYPTYk9fmzKB{b-3OZCu%36@ zbL!0$xb|4>qLUlzI{<5_+5{&qq@06ARjwH?w{`d4&hv0Hf{d_a@hF)pvn7Ex^Zred zSv=jc;9JW;(Ods$&k1k9Im4{sSo1HX=vV&!FSDv*ae0e!DC>UflWV;{M=J|n?GCrO z?^|&cmPogq$0qe0T%K2@T*Lbz%>$fo17N<=V0=$e!P_`vWnlkuc%P!m^S}?UWxy#g zn`tGIj1ZcB>?dz)%iLs8*|gBNQay6bKWg>*$6^11T-%1y4~pE=ydP)wg=>Y^+om8ZYmzycfygR>B5F$eoWU5{!?RJ!>>8I zsJ5{8;%RR96{-)J9_&CtnwDZ=_5MvH(%1mE<|;`6{1t{3uV5dnIbxxCL)?$ zu3;;D(Zk9O#$F$fEObDvPRV*qA~op>>eU=1*IparXoI~Mqqp)ir_v7=hGwp z$ViEqguiaHzMbuWM&?q(e>ull+$&3q&}pV3Cm6UQW+Q@5a)4uJ3l#3VwKjfVbJ&bt zN#Q4u(N~2I*{d*+u=g7GnI11c_CWSh?_(7&Vhhn1!mTr38)b0D4s2tIBei-lk_)*p z81T9xUA(>ti8W!BG{HR;kdpmnK0<`*P~3X9-cU{NGqf88aVXCQM1S8`=`MUTA^a(UhmM~A;{>bqB}Ii!ahty8rl z5`}%*9u!X&G@Wd60cO0^yA(>lzuNQiJ0Iy8j2xg=%xLrLXHOCCkd`J76j8U|A3ow% z%N?wmW^ETT{tDKAH!Br#c!)E7!tb-#RCFTp5O8auQ9$2kOApA#`nxU{$zSU2CEV*5 z`MMT8UT$79E{h_E=TsgF*Y6`OAVoh+UHa(CE$r6qC%!^rWRUj*-nFavvl(pCW}xFH zw_($v2}-nujybl5=X8i#EdzPPrMFROsmHVBO`*7-H~JqC=Za|!>r zOJjB@F-MDDKmb8iMa3s{h&AtK!A&_qe&OT?CD!j?4HZigSV6XXo;}lP|AVAyh|YpXDQ0nJk>o}_{}XdFVG){b@!3s8R~TAY`j@uAWTGyMQP-5$j z2eRwn`yT(~C@ETnlYX|w(I3_a}#MBkl)g|<7U6YI4hoDT=nQJhHA&_ykgTl zsZr~X6rbsS2rv|zbgtx5W&Ld8RUee72nshF;Kc7Kl*873&(1k9I7Ri+5~4l~2c3(i8WUcq=kQK?S`MV5`uj8*p@rIrK60k|Eg-O z5tg_S+FF~Ns4%sZ3}8_tn1C{S@f(1x1{X-r(MRI5Re*!$t7OVPCBGrz_@)@yfh@(F z5FdZYUPBB_O;EHj3fL~0gPx|#_Iud_8SqW14~Nr@(D3Nfx`2r`3XkJ?bRuIOwei6d z%qGxw$gTpNGDGk|1}(lQ{d zs#9eH+#&@{!$i_lGe{L7!j^7Sv{FT9GI&*OI>!^D&u|CJ?Z|BLD2NwVt@|cd2jv=U zo^56-?#8J5RLa@AdmXs-y{lqv)d9V-IzLW6J7p9D^O7lrY02}B-|WTJ+Np{4&PQyf zSGQ8Dx&oX70#6>rkLNr-*vn8Dw`yOp$-?7PP)0;|FL&;SCqhqOf1vsL@cyFYq2}*5 zdiQ1jTsou1&iL>A3)uqBa3aq=3S8{tO+^qpyN8bbQTDZH%!D+}BZbq2w-2?eb?^;j z7nq8N#2V%I9oAJ})2i5yovGHBToYeXUPHKj@p`IOE!(+pY-4Uf;C<6~+&&1L4C%oa zK440kbEnukRElM?m5$E3|y{yVt!kn_oLX?zn58 z2#O3qT5!UsoRv&Dg+$6(pM&$^>ud~swlZLInfZ`syOG}oIlEO_MvqKUAt7ejX;aw> zY^}xHIj^uHeyRAfZjnkrEEG4YEC!?>`M&d4=x+rX);~#|xMtm)`;h6@lkZTN6B~?; zD3}3#csBb85O<6TgcrFnMnxrG=eEJyeQuw>aD)h^m0|a>S^37yOt`}SvK#gh8na+> z`e;P8Y;g2zm62+*ZE`cbFbgjIvyEz&hl4KygxU$*VD|z+F;_Oh0Z#Sul9&=8^^^X9 zFb>t#ULK=Cz&b+R>El8F4BjL!z6^L#Y@{N71Dek@T$>P?=z2xrCbcCWlq!F5hqS^{>z2T?7xLcNjZ-DDyur+w0`;8>XVsUSw;3*Ky>mG z3pv!9&B%SfEDj$qFFVWORVhJsn}D+XLR3vyx;k$P@3fxRc1wU%SM3c`rx^(dugBxt zUj%zawNp~Qk4>VOFvJUx0L z&!qeKS>*@}<|utaXnT-JAjQ+T6lX#|-O+?jr!l$&Z5Z8EqfSnO`M7=*5YJP6!t|oe zgRjqDDsnvA?5{@rb9|M}K7?)bN2POo=IuUz%!l}I?-xRW`+S_J#A+)p9 z2`8`o9;f7M{sWF?i4HQvgCey01#s-^DiJhwld<+RZOPVp-y*1~9TQjzivBb2{P?Pz zJ05k7E_chEpjMH)E55N_GNPBxNb67V0?#%#TAD`$W9_hvF`(LK+JWyT&ZQIQFNd3`3>{5UTXy^N!nXGT zUGvg75lrdKc+rCd;brp&4Nh3r2pGAqHwH)j6uJ{R(Kb;wh_-RNmZyk+Bl=<#7h;tkl8#92iY%DCGPNheu$U_sFrbr3Li!587=|M;qh|4Nv5#@~6r(A0mD%Ot zusE~bk0!TS+4^s0LQGsLjhzhVCiii#(V%6)NIz@L2Hvo6Xv<^|;weuW>Il4xXh&Hx zD@uSxB{u_7b;_4E9d@HBK9M2^&Ief^fc1nnydP!bfOi=yNa@rry%q0%khDX$*0B!u zWcd#+b>>^-5oJ18UuQLnu-XLr%}DBqE*JNAij!{o3U7uvL{@9@cgX(s@Jjh)gN6eHQE0#d@n`cH_sv7M`1WV&S0#{S!dc)Byc61^uK_n8!-1nshqzYpESqXp9B zlLh&|8ek3EVWns_{@_99)K1^(J~L%Qgc=9Ussm+z^Rd?uc&Tk~AW`C_r(>wC9}gt>c0%&&Tn%DwWUD|0(|)GXJ{c*-c|u{pF>vHFDKhHVO=y zU?&ptU-FKYq^3uz8a(C9Bbd-;`>_FVOrj8kS+8H;#9lu?-9VXS>h`vV zy0w(n3Y;DEpz6ep_*54Rbaig6V{YF_J+f=UcFh=JLtT9vGCg8XsX9&#GS+TBD`l&; z;^-;8wjzH2ou-5ocgi0+R?rrmstxlib*AQB&M%>)RG{T_#?75dW6Cp`^I4}Q!9w^j znqV?>t&Z_?vEh`y8`(LZ#ctmAKjtb}$c-57Y29d-QR6xvGtyfb@Abou3ER!HazhBa z>}rDx)g1nU*3HVL6>jJ@6Nry+N5a^t(~P(TjZ`xb&_x>}ir`=Nf(P&;Soox4za3%q zzWF9+8tlGss1%kc0w7J3W~$6JoQcddhyFa2L^JvOHxhsZGRAN)AQYY=#OYe!6r^_s zW0C4t*TIM-7SxbQwY~6BUr4b4&{fkEux6_B{9EW18|dkr|CtqU!3?uNv%o_#$NuDY zOA`59?dtW^t=3B;aUIZsBe}!97#Yv^ITZcYyXP!q*wUT30?I&gMG1}w9R{eKAvQV@ z1lZH?-)NSqzrHV!;fHTt<-N!$jA-1}>GDu(&`M6~X2zo6895K^Qcx%dCU{5Hy4Li< zqVNU|J-GQ>4nMVc8yc3XXXa0o&1^C)K*$bOv|(gT$dLoZgun8i`K71uM!9)zE-{@l=84 z3iE$X3|&j$ki#I=tJ#@8T57cj1u!d+-AadO+amA}+;X|W-ahq$taSLhEKmV1L5$a- zva`+`1H;QMbJ+m^4>DII7*Mo--H7+MzSDNLGQ(n!<6R1!QgVcW!O@FIR{PC~a5#h} zDi{Ne{RYnK=EQ`g2tJ%VRwbXo7&aO!@Sua&M4Et|S7q<{aAvIb}y$LnCwDc=< zQ^KN`!(HL<dGNpfSx9^Rj>6T**~6vUixuNpC6$dmrM%BaP8 z9H|BGQ>2!0hVMh1c4-{OfAm`WRyR@lJe&+AaG^Z45FGFZvOs!Jd&9zYyH7>M zq$0G1(+&JDXR3WJKkQKijIuV$OEHnYm4Yb805n8hGy!5H7FLLC1IU1KHBMZ(|5qlV$Z5>6s$V zcP7#+7m`e7oC0;&4#pCYRwrGWjPZ-*hp3{0vCueP+8QBj%bxL+;%wm?M`0vwo~yN9 z`Ha}&q)m2AAHQv!mg9AXV6c+;uy2;A1Pi+!hasO)zzFXfK2g4us=3HV`^~c=oHrSQ zW0=EkoasY827?6bDqLNu)~nCHF}=shYsM(}L0s^? z*q|l7+ZkIJTi?cJt64dc!5~OCv7bXQAwj=_ox6K6hY{f;6nF&5QvLFC9Ll_Di+l_| zxv@GFI>7E3^AsL1cD%~fphA`*)m*5S6CstKk^#$P@vr!Cw?P5Ns8ZEhlU^hN_rIS& zTVW=-s?yyLgj6p?dI3Pj8PH=S`l*i`o@z7w`K_AeM4qV2J;P#w>iN}zqk;-~>~-w= zgcAP}KB0?KE5mvlAO-oeI>zV?;768r%kH#5<oX%}?e-lL$D_-D4Jg7FJK{$lEzh$70wMD?+mLz+*14q&yczOeWFB0LvVxUN7>^69Q!NP}};c!eqm+2^xAIR_j?Xrea&0=5lb^9;-UoWj4 zLVoTCJ`4taYR1FHk5QGDbj-tUT9hF&q$N|7SB$O)1C3Q=d`s0f35lDz8nd4pSjXfj z%bt_A*uCEikW~W1R8hUxMf6S>@CBojjV8>zdnCtKFz@xfI@Y|s%C}he)61URhUxj49&P_dY=w zs2~#x>+s|TzTZO5rsiJY+jfok9M#_>ZVM)M;WzI`3frQ!Bwu$K<>az!3o$&Q?VmSq z{nRxy%*{wfWRTeWAgTX%2rn$$CbR>--Oi8vNV*r(Jy zKq8dUrwU@t1Con?s9dW)k>cxfxZ$ADQsK}i1JFDPAx8I>>K6$UI$ZqFWv`7m<>{$% zdR#>>^1t2*3lgyOwCiDAi4OPI$5;s)E;^s(6AE-jaS%A0-UM3$Tmq-fA)Gz`l=O7^ zvf^3t?Vg@{JfEvedc+1eVjHr|i!=M*nZ_x%y5}a6e-OOcWw0p!h2wvs?X6rnE{98CMsApEtV?@4whG z!_I9-ej8xQgqNG^VsRVz2>MRP3x0!v-0spR3G}V33N$t5|BTQ{bU-6DXrCVLY&ac> z88GOZ_uwL6y+Aa%yi)LW+5eBMvyO_YZQDL2IdnL*fOHK#w1lFPN{VzzcXtk5BHgI8 zba!`(NO$+pAoXp$@ArM4@B7x8#o`Z_%SD}x-?EzeQ)TJ|C!71_hoRHNoo68Ik2ksg60$2Bs+4v1lV+w7Gt zM~lF62>BD2c`FU$lsX~>Wx}MY5|}hV@5(I*kyq2yX3qz>yCG)~k;WoKts($>a)e5$Stjm3nm_5*rk|Yn z;;ruCO>wBW(bQw|SFZ#*);w-e)36}LWbUh1clSxB;@9hh%%1^}Bk7|19(&#OW~zR> z{}X#RkQof4*TUTVnXs^M6OQ|3*0Qpi8bh)#!+sJVpq!n)>~iu2v02AmCTra%BAqW!4zQnnRSWn-VY!Ed7E%J zYE6d8>M39!ctFTvH~T#Kg@u@$r$D;R;J1zOVx4B8+h#zI2berio@zVB5(U@_1HO$| zDroG=g5;n!P^PSGDEUgRFbRQx#U|~O9VY(r_QUGYL&j}uOvyKw#{FO`>W&v}YsYOR z+Ku1f3$wEs>fV#*CNPH#zLZx&!yvtYG2?)~r@iMmPN=w|at#zF(YEMTmjx&$W zMU}2r!w+KUGG>7OKzlvIJ8}wBCGyD87v>+gkhhe*epX94%DAM<{gt|Jlh@IzU>t)? zF!_2-lr>VqBqqPTqKl^_pGs0>Vk#t9j`EEp72|x7OR0(LUcYO(wo@_>uNml8@?*9U zqOezL1;D>Jm_kW`d30~0u53^3%WWyYNPNFaWw>wZj+9HxpnPcnN1%90&EcC%f+mnI z8#Quf>^q(IA_WMp%%KMnm-+Dr1`5MKH0}4ah<7FpC0_^g*X)e z3(b#;iuc~VcxFty0Pa_n>=v><6No{m2R!@W^A4jCJR-65)w!$ z=g>T926GwFW3Fs}5Hubj+Q!WQ{?j@jrBM%Z(jm*LKi-l0nOj6(yT+p#;yDcwjH1NO zxS7C$x78k!LtsVQ+@gRK&n|MifWn71XD_ey@+k%^(ChTTMGqh+c808UW{U&T22@Gm znTm5BCJw48x;0yuEqrV{KxPN_^rjw45hOf0`Hbb3nvb0!KVnRNfQ9NYw~GsCwS|US zOh|y38b&St2-&!8`{MtzxF5pfeY$4Hnm?h4!wx(t*J8G3)|sbnGji)jC+4#!|K6OxyP%y|0KTzGWC4qMat?C@X2m>OX-x;mMOaTb+q4hF1Dz^@fTF@K=8 zKNtMjw~mV5aD?z>vfSzi-)cb_)Y6NE$meP{q=ghf?3g@p^ff7OpnI0^2CdaQsO%F6CPOalTs)*2uqXtM z+5#E|--2y{XJC7EiN(ekmT&QSpF8t1Sjj;hUUnd6~ko~*2|F8pNu0G&RZSJE)}$#8BvU!_Sq!2Hp!sWd+) z({P^qnKV)3eIfWr4}A~jkwbn|Guumh85!4iAgSee=}#wfN*!f_i!0pP;x>hX=7V5U(5gRgfqZ3w?++mW;}T(hNrTNQQs3-S}0oI#1#>!yty{ zS#~W2)n0l=-Tx~5R0NpQtXOrk`na4E;?6JKP+P(_H%X4i3I;OPwkabPI{*Qp^9L%A z#nEJkNK+T;H;RFeT0`SDZgo{3_Dl=F5Ebi0!orgwUYtlN?9y*XB>X6@ySgHbr*Y2& za#90b7QIU6oNf7M-!!>*S!K(-Uw6>TIVF4JvXMx&aOCqWb8_M*MVZGXl^aF2d)O3J zED!+lz{Hexv1a5IIkp@7WVi?0Zz*Rrk_b+YgsEouTI5}e3>%q&XNsd~ixyJX0*`Rs1RptqqNP2fsUEC*ZB0awt;v@q zar{@DA-ANkwGXw{lt9l+TWlJjO{5)JnlGTV3f&id3-%E`F14M7Vk2V{89*pDfn3O$ zH(fhXK(Ai*h>}QeEI$m!3mUv$k5dFDw!s~PkD-ob0L_p2cUDqBEB0fT?soLyHkyK( zY5BMne)6_VPBzLzMwz<@@8^-EWuY zXFQ`AbVo83Lw)6jy({smMR7t=roW4|(R5W+gL}uB!so&{2s4%#(bV|`e!Wyal2yH4T!}t_b8uz2b}=@) zIcHEr4vf(oLAvmLNHLV#W?qG~L|q%VjYWS5MCp^m-8K7(jdo9D{C2S_PNRv;3BYk_pr3hpH7tYDO9L^}d z&nk0FnDjRnnatFfLZhu$@0C#YvN)p!s+#eTo2}>@s0_7jLZf!lU8V*{P(+y(X$cO5 zCzm2z&qLF9X*)mDn|p{}H;1|4Vvo;VfN3W!g8w;JI0ljipG$r}Ub zc{xzS_z0z>z%eW0$iYm6uv~7w*y8+b&mKZRkv_{8B}Tp4h+W#Qw2|ydT8E7?Vpecg zjIvHQi>-ln`uz2CF6mdQ)hCXq4TL}%0UI(gL#k^VFZeWc)xJ?FL1YYw0>q4Xiu_ou z-j~;yvESAl*1qA4E-A#SeA=O8#RPf|DV_y;arS4&|Q6KQtcZ{uLkjE&7tZ6+gqFxuI%MV6tp{=~(Mr?#Mi-O6=0Sk0JiuaWD8VUW z1JI>W2OWu?*v_woY_9h!!w>&p!?$sL5CDeC=ZP^}9e{COAcu|#t*;lfT|3A6=7;C; zM*RA$^5@m{GV*0`qEs|u+64e)A!5+BFHeJ^HUn#pU^DE*JcXq8c41P{W%+)r?(Vep z=HpJeZ&o(0M}#5gl?E?A{{YoWEqn9Ji+zRMApk&LF?9nd;i6aR$>Qvq$*nbF071^p zmo3#_QZ5I}mQ``DA*0K=;9mId?$l?o(%3E*pB#tyd{F~(3PJO4^VBUM6`yAE`=!!{ zM`sH}{~CT3*UUj+Rn$7i6o$`~a=%{sfXN_--hz-FQ)$@CVfRo)uiE4Kce5ina__o% zcXpmI#C0wGkta}NdTL8N*{kuYy=A3$33xE$T1 z%ndP_B=BXFRdcb1rPrct$GF+$-+?m6)Mt?-hswD;g}LrnY|fF58o86{EYMG(nuxRO zJYQ9H7W)EsnD$@LW$wEv(SJVvEo5*x*y0Wv`0&Auxv02!UnM_awX_UEt?+x=tpzJ7 zXU4S>tc41BT9<{NVw{_f0491G0lb5d!Q!D0VW7chqCcs1?XJ8rBisU&4+*=HIBrNF6gHiej7I2k*1HaCsC2Cq2IKU|Hb z2U4*4cr>b8lLzBXQ$h5d69$QEZwscT#K3^YW4bSR`4T8Gif`h(q!x!Cd$lT`nR#H^ z4c0mzuCCt2Xf>JAu<0JlGO>`Q)`8yL?6WspF^=!!_eP@r-Zre;uV7xeqc8m0WgO*G zLQpLOD&pNrDe81<;7EZYnnzQ~H+a6$ed=XfTtMNHxX~?!6{JT@U>5^Wu=IfV0r+@t z=GpbJWW*ZvwiWB*In$90SIM!_(TbPP{msQC-8(PmMHk$|=>D+)4^zci!`ArBf3~NP z&`_>l*w$f*9EVfLBo_tm1BDE7kPOj(bV2GwMbir!+T|eG<@L!HdTSpHxj%TxQ`QPp zee8Z}EZdqUl-<9suKLF6JDrSzQr`|(B9TJSA!u$mX%71^?EN8(rM{0h33c)3tLawC ztbDw-qw@-Vw|X|k%XW-xjtzfgkba~2K^ZAmu7ihew;EtCdN%U$v1K8c?C@DfM;~+D zB6O`I(+Wa?bzjCWAizlEVASN<8RIX<3&;@z{r!=4(gByGL6G_2;9#82i{t##(%{N| zQJ476ngijiLzVQQZohh;!`36Jw%%~-)6MR_C&4}PAbLV>`y56ImwGA#OUO!#?MLmJ zUJZiYanivKFZxV;h|m#b6i-isoYZK#>0$FtiS6hg=?z8Vv*oZJ>&k9z@4lFMxGT5u zCf?fB51uWScceL&Gal|s3OW2wFTtM+z8ZzpMoS-X{c(kRF#Xcy-jKa$*e)`Rd_KuP zV33yAw>g#AI~VV_RP(u>N?6yXf2s54{+4mkNW6BU47>}#*M&dFD>l%3YiGMU)ZU^2In>`7~!m+MR9UL=1m1aGO1Qk%UGPHRrWt&sRSrm|HsqDi}5QHp=+XmkI|m?lzi22^reT0jrC_ z1s<4e>%e8IbALu#YCMvH3kgtOkyDix-jnr2aDbxM%7Z~;W(g;IaAQpPOw4{V14Mmh>{MCukz`oUG2S5!^@5f)i40rdEa;JZ;4AX#J zOZU!X9()_TU{HvGsj|5g8*cZzMRNG$xWD}_>dfrpfAZZ?`?+25-OMYyYr1L~;f=m_ zCAFm2Eu~Q|Wwk$Cr|5p3lPTUO{aL$ZoOQ`ricpx7RmvQ{QTX*(e#Y;L^2YCRPM-Xw zhe_ahg%sGSiXaqf=}UGaa`hms64HaEK;VVn93&1imY`cPyd0cQg#*p!h(*`0*?S}6 zv470`Zdax%0u8J)1St@Hw(JnJ_y0{xtarx+wT29wtI3LbF z!D*Dj4keAJ*Mz=m035omR>PWtQ5`sBGviE8-EQe#fr68H@}!J6(Cob?xW8YL zlu*;YyEdFun%E;9d@GI<~u!A`lf0Kze0+{11$c^p%!WGS9F3d%= zheemWmx#j#cSIbMIMZql70afHE3KC)-iz_i@ayklUoX@14*=-wkQK|ShflHTv z+PXPg5E4Ai5anH(Z4E0;k_i>G39oHqYy0ed+l8{a0a5{?xUE^9>CjDQFQeA3N+!zws)bqQAdwa{lehJ#U$W>4ZM8Pezc0+JIwNZSDD!;?fu0fKef16 zMT%c-5_bPMDeqQ?K2IAr<+){ka?flKj?s=cz3lM2x=o{&8t3@r1AgU8;rl}w@mn!i za=+`TDwJB|yD^dk-j;y6mR%5Um0^By2F#CCP6e>F;uHP}Anpxl6^JGg!IY|^S=lM& zZJ`ZHn|)#RzLVY$4Kg(2wKjjv}pKodO=C(7`OH{vpy3W|n9;R}qhbvBVTDvUyTyPANr5Ck~P0|_PJ z!UqifIS2U`*BYz*?$#3QO=R~^gX$Sdt8tifmI@Zk>ZRdce9ovdZ5lZTyzrw_n>S1-| z-evTQO0f~LZrnc2Ww_1@A|`xGkZ!Ac!7~U$|B<;3&1qj;aP{Vj_RBT@sUh;_mw+{6 zg`BBpqw|GjvM1RnpEY@8ToC2TDQ&cmWWTGawOPCYE=TI7ZQCT!(&0Yq`Fo6)U%!9b z6P>7k<)6Js)Q6Ayb4Ohvu6e*P=q7Ygyk7fvJ%fNSV4Ej_^MWk0mQGCA-FbxGVpp zUXVhfq$1zP7iLyjKp{85&2BQ2jyZMiyEDcOtp&+e3L>r*`&y^G$_03*84xGMuN!<( z@PsO7vHpsopFiL000V;Oag;L->BLL6fM^sB9MCX3BV}r+dB5q6YNBBC z$|iCI0mW}0oIz3S`deC5j=rhbMOG`&HU8!raC^HY{usO40VoB2nTfYP+#P*CK8Tf} z!cg?MS_#&VfDmZ|+7R0r&@h+!oK17NZY^9c-+LTI zF|Xr2Ww^Sv&z^X?IP=d;n{v!h#AmnqGCxW#+Q8*X_2oozVKM`5Qdo>bk_pdUi*FPO z?aRv46ay@9A#vHBNn1t%sZ(#H?gq+70nbz!I^5)KImEb&(`GhmXw{wzNB``=LOV1BWJ4&s%Dk6 zIzgPSD|{pnNOY}mZy7^+#29uq-t~nN*`bncTLt)Il07pwH_!V1{UuD08L;2#@IB5z zv^d1YfmEvuK5!|u$6&&jFKrQ|JbLSWu`37JzC3_hjN_*MEtu}B!&X-QDG)A(C;{T- z=H~VV`t`%?!|)Xu>OqJWIJfY}FkPp%4hM>Lj!mfyXz6-&0Fx=5=fi1vFv24nip+OjmjU1bA7J>P0)|CdP^R^p2hw2!95mm&VKmJKN|9C0rDzu)DfjDFuh)u2Zqj3afX8XP>Y8&@D)T9Ykjj1eqv%MZzgxvWr&Dx;vH&3ce7Wz4 zLAeftWLh;IgBh)gx6$Aal3uVJLMxu@7X+6uE@30zrL&42HFBZ|`|^kc&{%JShPO$9 z{Z_i3Z3~5{J%oaDN=U?R9X(9&YGHv(+W+{Tk@%_9!JDVz=(-ghe>|=0Q%KW(BHC9P z*%VuTLi{#Uw@Ns8)BWNQ3M^S^S~2q*^bCigTcwI9{ zon&kun$Sb0&o<6O1VyOa;UE8pA@x+~{ij$QK~!67jC6VgnAuh?@v^g0oqVU6P*t+` zpxI3F)28i7lv3j`YzKi8X^OHuRC;3B+Cm+MS^m_Hqi8Y}5%c7`Oq6R_Fv-{SRGnqg9fTI&j=8^dvDHeb2iLmA zHPGwHo_sa?3V7K5*X$C60wpU}8R4a=w>7cTbI#t|B2vOb}NfL_A@VBBs58 z2uBdO8yW!jT+~#ZM6BWHR2V@mv^^r^S#+K`rNq!FX!M2R+0oicxw#3dpmTkitqL9b z$O8H_Cm!!mGwIVG?4|{RA*>tKClQaeBmGK7nDxr(;+M~6>iv6ZH$M$0KK7;l^8%?s z%2LLUnSYU&2~s@!LSf=A&lR@v8^rO2kY<@FCe`{AD)OeqWq?5?menR0On1w6*M(t0 z{_BO)&T9_k6={$47r~4;%OKbY^bjXFjfKe}QDS4Z8d6Y*|CZrPoA>mnjFAaTuha5% z-mZqS^`k?y07ZXy=!`dxFP*y>z~hvDtEGf7vVqE)Zd@}8uPsDQ6ubH`GP6A zZxMUYQNEpqOYsrMnGN+Egy~oJQwTENiO~Si;erATe^N#)2^$N;W&7+=P_b71dwhc^ z&~&a-pi1YFNL^=^vVxl`alnb5QT4#U+a!kj8bLoS(qLk@V6M)i6}q-Td)d?Oo`d51 zFE}4MCq9s^4V6A7F;*hLboQ2|oV`&rEv)(f-sb=7ebR=^u7uHvsRZqq_|A3Zt#sZ( z5owmE+jt$RmUB03r!|mWX{2t=cE}t;juugcsreZa>tQBkdx15pB!414nsj00c8$Zu z5d-HPm3r(tF;Tx;>!?Fu^LD4yMGJ-P!MnL)($VnqxmU z#1-(P)glQEawCCw|00y6d6mwj`fyA{mg$_%4BL`Ph*~8kqSq=6kgAPk;N-&Dj`B&{%pDkF#(bH64uD zbwEEo3!*rtd?0)n;8Ijb2iv6gF}RT@iQ=q_P?M;4Wo2zo69w7Br*xL=Nj(e z$|sv z05Z*?B4-;iz=KuKkx{&e-xg_t|9t!CxuS|^tvUpf3G@w(>F3M$`O9W3nJF!lm4UdQ z8`PoJ5)dlc_`!i?MsK@d#^P7LRy)@jc&ItK;L?xOaQ3pt~uVW4u5r+zxX7h@@`*7LYr}v~`fae9epaP=> zyyjT;ZCLW?PYs6=d^I&loW%8WoXN=*CSITwnbx(Qm&#LnrKvN*BFUre;Z}V~#OhZA zKLKkFn>q{xqJ-hul0_m6cEQatzux(^y`%PM4uJfZfy!k_oJOdr#A^%8@Als;q~cY|XZdTh7z zZ`?T+&;4giTrdPr8YusrE{5Gu()p9#%R}MDU*n&vB>2ex^rF(D;O3N> zD`|pwznq>=Xfkqhu7`V7`>l+ADx|I}@F1;2c*LZfBWk;^EyvI#n4@@tYyVmQPf^A6 zLp%Un^Vs}6Qi^=sA|w{onU}!(wx0wFP)asc+Kho14J;TAHl`k{YG z<6!pZsoev$kc6NEO!AMpz)=_+z ztPn>RBo!)t#S6%hHQp3$9U-ULn+V>)+qHm392Gg#SPTVn+X?E?AAG4*}G}Z>p$k)%Osc*V3LaaXZ zj%eFc1O*o)>QY(L9q(eyd7WJYM&9R5r-vR~rIW66?G@Jda6^Cv6=Nmzv8w2}ySw7f zKzLuCTwWzFbbv&@>4vYSR7qIS^9tSbYP@%B{wETrdK0E$Z$!di&Sg~Z1P-h2hbKWf zEr8ui?MmmVm$l?X1FO&a{hzO1|CT3RGtcx$6NVjqcLeI$hkN8YKktUn=orXL^$86T z(MEU3DLsq)?hrkSyiBwjhNn@XO?K)VnOJB2hF2I<9W?RaI33$9b7<3SbHG&-$J*fa1QBwMZ>EQIWTG zb#hXv*+T$Ch&sg8F@1Gi! zN9f2m$r0@)LlGQCoo~ zO>^%^{)Czm9Sh$>5m7kWU3-*`eCHoRNuumwf2@bN>8-Tjg^p z$7@^Nc&-tAcRD>>SJ3Fie-B(w-)R+;+Qcl;Nu^a+)$~~nrEzIT;r0&)`P^=lF1Pxe z?!jxg(pGyS;~_w6UV9*6parN@@R|!`6Y=b6Lmzhym*baD-x!{>-0`i5i1k;UYgjQ( z3duW)8CKW!8SaH!a8qqtIXyJHbS8}hJsmuPoj-=H8ZO)P_EIwB644?=E@h%Xrj~!* zd0>|iwFYe4f^X5;D1)8``tJmlDfaYT-%PpT)9Hg6IKR6?GvLX8+#+&r_z27ynZlOD z_SH152a0UfuMbwPf$x!DZ>DGAM3w7htLsMeysl3zKu`Evb8mA3($ov=b;+TXFnL65 z4=Ov-Dml63okFSdHg3B&tvU9dSXO56)BSAzZg6^kF#|cWPfbz-b&Y6(*`4+^QiQ>f zFm0iqzb>r{Qy>M$z2SGsV?^fFXYpezame(m-2glR`FK9PbgQC4xt*TO4uT|iJPWPz zKybJyL-@-T1gtTBqBj?B*0lPVLV$52M=EXW5isTiFT#Sc9bPLa;LJOAp2OQWqt~Hi zdH_f271?GCAhCAj&hJf)p0lyJ?9h3Kvp*aubuj+b_V&syxeU-vXh72y>PjrFr)80` zo4`mGr!v%NPw{|!vL#35Y4{wW`}>k_p)AxFL%n6M$G5gm205`to*KVcGkvWgL4gxo zyk$DJEOIwswsO2`w`Sy8@s|vOD-%r_pz*DuG;oWiYS_DQQ2L-^u$+GUw_$a<${z3d zwVbrBR@{Q$Am<0iN)V6Q@c;|(B;;peW81I2%QYlVRwuEhb8e(0;nZZBd;R|WOILN; z(0Kq&4~lBx+Z4Zdx5%()#v%$%zwW35;hbQAomf-#Ok!7 ztX$060W7hWHNm(t-OlrPM@UhTC%JcTV~nUg+Y4cWs$cbx?MK3Rw0f~dJ3Ra`7e+y2 zti4`x$ZpMrX7kr%e8t;ir~V@6F!29jsJr zX8RiXLtD`2=e1btv401kPmutVj_+5Q=mC^H8epn=eFY#KmZy)`${Ljy0~lOy7S16a z7n5Tj0aQb5XgAmTFCg(Pwi6p`Q_AibI`dH+SmUnEIvTC|hEM@4*qP?(A0g5av{2(J zN|OFfMKx$7WknSz);?D zIP5)FTDyP+gf%)cM1Nl5ytss&&A!gfFi4LsnKJj^lNl0!?@^^3MFE<*Xy3%8s~JD# zPsvvxq%?dUdN?IYzj()~b1fYIBk`aU0(ys=_djNb5&rGSfZebjK^}Qo&nZY@it8(4 zf1Fy424%wrDo@>ZTN5zua+U4|hi(7)p2CyNQ7jW9CSxZjOJleCvmOj9UFW;qkV=Ld zXwYU|H?>Ngv1>Iq*J1;97MZ;uZ*4j4v557q4lH{zDgYPOhx9}PNI(iqLpdlMaLRQ6 z@?n6Tu@0~8mS_sSbKZkopx;(9EXTihf^Ed%Wf8EyZ<*vE zKL$<2pCSGpa28^AycrGVq5#aFIPvk+eP+4FZv&{vd|>T;r}Uy6 zF*0T$9_`eusnT22^Uev9EO;RlJ*3EOzK*WJ7?GHiPaZiGIuO(|I$C2D5G1e&9;w8~ z0<4KE-)KWQs51gAOtk4ii{#%g{X}FAsO+M&PAFCc)5J?b{2>l?4pSVq)0FRdnOVqK zPmQ{SpB5H6V#pE~$QX08VVd*En9~J<_a0A(ZP?H_rP8`Pc-#_1-4G1yjCKlJzn%AJEFSHjDH42=@Oh@3YP$ z0Re%|i`tB!Q$MdCqR|10fR87uxL6MC4U;f2F)5WI$3`ve#_jy}Ce9Zs-d4sx9Zo^0 z^;Q4&e>nkJMz^lX#bV%#w|;49mdU5c9!7>xn*GQ_V&fBZ<#BWfW*iBnEq;yT9nL^ZnYUbDE)eB zm~hHa|NS|Ug-?0OWZ+aZw1l5VC~GX_0Lh^dO5yCL+hV>Mp`(3tyvv(h@iK1Pn^Jqp zIhB$ls_!G+Xq?vO(2;D@4FDb-S3e*)Vgx|@+5>MvVvpu@Mgal4KAFFD5Gv}`;f2k^ z>93+NcJ?-vVHF~iWsgv19aIgah80xEvGxXk&kqCvIpHbS61s3<9;l6_h_ML@()=Ms zJ9g?QnX(orDEQOK(t;bai{Uo!HlCHFT~9#yB-D^q4U!fe{-s``z|qjPS_n1nB>r=` z)es!V5be%m8eKG+lq0VL**gIUcsXxzHcm?TzB^W2J(c+ux2oEN|JVMa8!(V_T^+v$ z+L4>%mX8BDRGXN8eET+^lW<9N+%|~o)}n-c!MDptf)|IsowUjNxG084(uMVBDvV!% z6o61l;iDF`%OwvNEuiZ^!jD{FrPFH5RqSIynP#DMCE?ex0}>O~%dh>;FExwK~#6U&Ifg_`WSC7&#u zD;H2imj#eNxD~G0T#_jalY(OpE6mx3hak~OL5s-@xlPRM>@R6#7;->Pd@>Sw%3|aK zbpUsu{{1`p+(Zogyy|#)mJzgOc4%u^86J{HO1Jy=dvO)ekBT-bUExcCWVsb*RK$O~ zukPsXg={TuG^9?Uh`le&Q%OllA$Y(f8HOwVM+1i3S!QNsMV0*V>|~Hb*8K59{ZslH zz;kAaO_0{WNZ8FkhkX%YD_hQkh|j2w=a9Wwl`FZlF>HfBkNo0|ciYu`=Ayw57DK)e z(sX;n4sS>!py{SCyuRM>ygsr2W%&g#`#P|Hp_V!P(aD3>it#)=GjN8c*oB5Y-+NlPW5&^cWc}CJECbH{oBgraxF)iuP_6@97drUBL$~fnBnAN zY;>=)02(`eTkO1P&!p!vB`&wWm@^U&4X&N|$4;Au4n^Aa9XVbYJ}K6CH=N+I-aoF? zg%K*q2Bqz$0Id5Q>>H}8s>Mhwh!;qiDw+d@wY3uOvVYm>B^??AR14DO;$Iwm`!`iskhwv6gEn6NW@E!Maj{EWF8#}b#3P&;Yo zJ&u}}ZK40)h#}+@caYnNgM6Y2;#ZER09TgN!%Rfp#)JPUR#WudbN9`gIe0JJZwq>t zl7&HL$=7sIDWt>g3>_RD-7+?g#}t|mOtZ}iO2Z)yHmtDGp{jg+vyycs_2tj24BZ%9 zfD>D<}Xohw^X+Pr?~78Z}wl>dF@_`Ey7RPJV!v7u;0g_&XSL=Nz#BAK)WI(M$?nMHiWT$9ru;T5h* zgKO4H_W5a*-?wYB+Q{Wruv4>r8kSbmR6c$=#;ckqX>G!2ceR~IuNU6!LBg+U<=Js|yb0~+G@#@f2%pG>X)e3}u4 zTZn+{l>FA9BFrq)e?vC+xNzX6sfzS*& z2sN#fxybNT@9q|C4v zCyCF3Bu&WaZB(9S&1>7aI^21&3j}dj__If|hqvM;6g{U_Z@T5?s8!dUPUPYCv_hM( zz;6n|b%o)!zTLoabSW<{U*@o-@SjTyte8Kzg9a39u$f8U7_FamxuIsTbg4F^RC(hT zU&KN@xml##_`}y|oEmNEIH*6cCC4SOzv2A)<5?1IW%whHp#t#pt7$fTF2&0kw%0$w zfT_hjlxMlfL)>r%M6aUNvyzn2Ao4>eNV~7-%cxsWCU@3toA8T~${T9GRt*m$2!4o( z#Tg5vjT*+e!w3_=HmGyo$!r%^ykp&NaRzT^m7n#H+XPls@g_m^k(k10yPpnG@;GeD zT>(B6ML^nFruEypR!T=F12mjlSa^GQ?%rrw)Y3wgz@g1T7Cw}Rl9C&gm@Mui#->sB z0><0vWJfxGl>hGQa$!-)XVjLMn7Fqyl3BICou;%Iv4eBX2Aq^oB<;2UI|FKTZyX%B zqykwXr(;sM{T2x2GnVkP3B|bo8^Z9&^)fNUgsCANqvt8XfaS8 z1wR`VnO+y9`!kg?Y0$(o>ubQ01|IRkn|IK%9e&u~bhqHLlB|Tb>rl;4IKC45B8ov##GD5o~ck z-wo`Qz!Rkh5_{V5+V>D?xc;@f{JR!IDiOn=3>sQ|@*{HOQ!4Q@^;d;pkfi|wrhpz= z;}f~+jftFFhgrxYq|p>O64+>+ z70XXIop~Jl3yKR@DZ?ED)sUe~_pi2-<;v&WGH~`$Ml4YJ>`^r|O-Lp_I@(Sjupt!d z22p%l>C(S4I+%cX%+T4cE?eg>R3f7aflKxQuhb6F;bvDTA@|ud0B7kmz<^Op*^q-` z1CY?YqfxPEj#?kYR8&;@HfSZ*_`{e-MK39Mzt*atZL0=k@U&iabGmEs8})ytf5ca~ z0`!*ey^82W@nzWh`9%OlN-BYM+zwB=P&yo%hGrvhmEQFzsrj$h2ubcQNg|UJk}Vib zZAz9qN9QQUnE31UyJL&RZ zK(g(88tYq#K$MCdbU=_Mn!-f}abR~>gY?T2nYRJd+p%9~xvI!sG&d)+rpRk5y<>s9 zT8Yphx0UWuSds-)w%s43ZulA~m{^N}9LLHc1V7~z6c+jey+TQrZyhhXkYb| z4r|bt*Z7QGKwP{5S)DR7IZRcGGZo;^;NI_#-WN~!>WFL~#{t0-DC1LI1a@M#a4Es% z%b29o0~?=@9J2q;QvNN$#&z{(@%4Xf6&6CaUwf^psG`C;_=XMmxu)4EcsI+EhZxV| zn%;fDRBo31*zdOsGl}Bhom6GbuHer68dGV|jalV1Kp}{U38mpeb3vhOo?S?yleyj4 z+B$uk|7D`E$X}M!TTvsc{|&3kdgA=DD~zXYR#Sd+*|}T}VFY!)LT^r(Gk|nVzi0T; zuh1M40~EX19=Ou}`r~N|j6g;a=QbB1_U2a!zR`e>h2J0c84rtyA{~=B@L14o&XcY@Y)dkTY(yhB_V2~R zwL){W+(Hq$h4x)di+WK=%2uSAN>kp+5AJ*^o3uXDPg;U&k;n+yW#&oJXaPm4Dz^FP zBeQ_>Af1oPVG$7FB+>PvL!ze!=e)!Yr-;i>??+<^`;Svtu2!4X^)`nurMy>Mfw0Xq zzU_hlnh^s(Djvh02)_*fIdQj>Z}Z;D%F082KvF=d1ft!*7v_a9DDWk|7^>f|80=W3 z`?rDl?^={z`iZY5uLnjY+d|x^`{HX=63EZQE$vB#mv`YHT-lV>D`P z+iYy3vGJ`uect!mdykQkkslpt?z!fg^TK%@r+&&xFlwJKkOH*Pb>gw(7&edd;eU&T zY|9@k{C%9+swW;yd~#H7F`X~hF9V=%ddf1H9BOiM0_eHobK(Q=xdvao?|tK*`Dq=b zn?UGZl*NtE+=&w_v%BsHb(=mKu2mki~=jl%LCJGnm<~x zYbLt`GEp*MzzN0!+{X7}tB=v@cNP8B<<-@0tE7hqE(9_dpGB7Y9v0QS*LfGTwrBFC@)`;M~{eRvsf)sMo(jSaOo8NkDlvu~H#Fb_MxPD*?DiVo{Y(l?%wk~a+J|Vk+ zt)&22rvB|&<)%ch>FH3y%C5u3^pVAxON)KhtPS9LRGpIpK1wH2wkd1_wW|W+>^x0k z`j=HkC@|9#JqvbHYP<75Pcbs&z(kV+TR@fR-g>%X!a^HD){8qi-aNN9`EowARHS!t z_f_z$YRazokp=T4#}w9M0$_=bWUvkei)yyG&^-f@Q_!+a3;dezn|G=_w1|>y7B3cX znUTs_;#~(X==y4VNaz)p!Q-$C0wpI}92ikpblQV2<5~F7LV<#a=|F%r66^ol=k8>2 z=Cp>0$@E|{_k2o%pl|d=^#3f5rE)~N-si49)bmtf(@pcy3Q9c<@`jYLB&a0h(byie zM2@<8b@g$XLjOLmG}PeyCN+~Ys;?)bJI*=`{n7ylmgFKWg~3}0ErlbfBu&HNjj)GJPyX18Ad~O_9$fHkie|*T^ADu1 z=gGMi9tQFU~P=q6dX!fP{g=a=u*Zi1P#SCt;$wc>TMx)&Eot|8qcR=S=uxZJ;woScc=N zVC>B}D@lQmTL~XCwrT~jR+(atn%xQ6xUgHATY=JvfSOrBNIG`a*Rz+Yo6#(yQhc6* zYBLfBi$HH;Q4Ry?!y(!#w`;*tR;jj&#$C|iA4+H7vtpHi;&{e)dFB*sZ$NP9k2XkB zf)>Giq@#-nLvaXM?Pj!XyBy@w)&$RPyAf`f9A*cw! z2L{+rb>3H9$91fuz_MzBn5&`4W9$Q)tLu9dlP@yk_ zq2n2)-gce7$Phns?K?dD(Lgj_!t%t(2)LM8WC{;-13}ZN8xYp~yBPoZA>dOB^{Z0A zdQ<6#lD_U*&J=)&lk<&X12SQoW7H)9N+%nG`I4ox@zDE{~xg7Ts94whl6oFz|fjHr1*w~wXs4PBAImx#Xc#4eRV0^ zjI+t%gHQ}Epj_@XsF1;6^+@YOKb0{#KZG1Bih->*u^x4ob(R1C25zy-9IY_>DB25~ zK^WYyiqMGo-$iH{uYV6G(zM7($S13meRWR7x7Ccx5k#el8QdF7Pgv7&H5LI>&O5Q8 zXVC%w`=|#TGHD7+{I#dhJ}Iq-+OL98En)@_ou(0A{VvM^2RO{^I4oe?ZbyKSDh?h& zmAs4xQei=7V8$WX@EdC}btMeXPL4|+fPW>SO<|?jsU~s4<#;7<7(|ANicnpc9W;)B z31I@TNr@gje?n`Zn(lR7*lVG&>GW%$1!ky-Apf)A|6Tumw$egJPA1(2&EB94HkwB{K!yt`z_H6^=Mu7K~Ra{uRU=r#0VI~ za_24A{fEDYYUcr|>dIhg**A<&5PkSG@}@aFL=+=^M?wBO7B*04Rn^z5(1tphhjwR| zGyiuF05}p3OcnTqFwWC(e|HB)zc6wq4Bd2_MLcu}xCojwu+&4jzGKVnrdunM6mBKu zC{1&~R}%+k?}qtLF5ne)pr!UjBMLhzsCq8&8%dkz4?*Msx>Xly;zAo#U*TRqpw4+h zhzln_P;3bg56={ShGBt7Qu%*kM&Mo^*L0fMDn+t!;?uLQV3bu!(PykEvEYP^(tfV~ z*41Qe7&SJQ@t~5m>BM~6OC@b?hORLz*$F{a(MIA92sF6YC6S>Og)6x52A{bA6BXgn z63ShLsV2dvyRf$mxxbwryQNqn5df4(sy=z9)Rg`1dH&xg^7n_{hiDk`ZQ(J+6e>}? z>*1;Cz)%uaTv=dmH&4;Cp@yuY&l*jGYAiF>YS62R)GSJwk}zQLWYo#=qJQ>99Z$%s zX7PuGecMNXKikL{c0icXSj_*DOIrtuxu!oVu;pZ@qq)DOVG=-DF@zfng@68!B8yOy zPgCD<+2q4H$TbA{Yt5Wh%2oy#3yX>Wu=4-f$Dxia&NRCcDV30C4YUGTc ztkpmV?YKYLb~3Y}Zse9~J)WlU!b=z*Wp|K-d`%vuUT&n_cGs z!|rA>nXTTy!wQ8>(apU7WM#HE=}AQ44f8(5#2b4D@;em|n1r6d(6tK5SkVHy2oSwN zuyp~wAx{qXoxv;MH+d^=vETuf^tME zl*iTwq5;MxS*6s0Yjxr6O*;Il%M%?lP@elGwlh{ft&hK(j$C213t%*2c56!e#Y>h6 z4IJShi4Q(h_VYmC1=I6PV?l>pI^@pH4t2{=)0=oK`%t3zy1To4Eh9iX-UWxN7BLir zR&`;wflB#dzv03(0sFoS{8|^E3(@S)hTC9kX3O&zSQmOr_pT%(y(*Dbmf2QJs%$TDUUQBCPVC|6`^I=T=v3GT)YeCUN*v{EZfX4{W6hV;DCI1eBI z(QQKEpsh;>B3S*vSk#O?blBY3fJVRv6GnA-M+~x4Zl1$|Yyu$(Ke9iV%OP^lDV}I;vX`R7A7m#6|LQ0_F7CA_b7g_rQk@UEpx*ZarJ}1+lPkXwNR! zPPn!KpeINZ6)|ARSW}^6Xz(0-q!hi17X1;ojykorhG3emb{EmLCO!dKlCke6nqCCI z=5}n|csgG&srh)^@HemD>h9etEoB~!0oOvFI3QQ8nuyH>Mg;HIovRaz_N8sO_#_od9NGY5SLd((k&LPogC;B1ZAEMnnYeKWRi0C=@HfVujT zsU99X*T@Qor4_5o;IN67z{{?*AkmZy53c5yADdf~#ND@lob0C(!8Ac5Yola59@vj% znCt%qLh40Iy#pbk&}nFN;@Uhg7@D#AF=7(@5gY(z<>X8A^BHPzKj8iMq39R~WVH}jRAog6B$nVKHpf9Sa&17>y@YXdt&$-=T@97v2{ zoqa4z0C-MsBC8FUJT^anc+qQE)PHq0uEEW9wtM1nIg8&eH1D1rVF88<5BpWKV*R^+!#}GbGSsQ=agv5NA;cJ zmFfs@we}o$UEX9oM68audipNu+XbNKmf3C1}~!2WqvxSkZXSW_thl)0^MeR zzN)YQo-`Jh3j&+6Tu?18Ph(VQ>JXzgu~uPEgXg&8);Ty~ ze5itNsp*`jqNoT8Sk`=JaG>0igq4;sV|!q0HRTw5=KQpk_vJb0cSq&6G!Y25?!t2V zMEMLYdn~@5jH2;Bqfh<^mL^7{Aa@@)XoqzmLT-A#jJh9PE9E%ig*rlqVDFOd=M2eg#yb$&a7=y%YO zUw~m`_jaY|n1F&3IN-=C+Q^@cZoKlmDWRv{#cbf+T0^ZC!U=y&sO%F{gm-(oyl$LiWp>1Gs_M;;+x}^EQlhv5D6Q1*R7vWj%J#77gjW1e`Q&g z5ZZsh(Dfg_6OeoaI=9-MD{7hbVm^JMV zQ2duo#Et1`DZnFc@aPz4qjxBw>a`92e4Bs|1~8S3%UA#yJ8uum>s=uPzHop@kE9lm zUg|8cn93wyh3xEg3%p*cp09U2)MZ5LJ*_lWqZG=v2}f^pQ(COr0V+^0kxFDVh$=aJ zU~Kgtxu<2rx{GDZv1I}y{_FFfS9UEZR?&9qBbwT_Va%)QWcOnJ^tAMXqTxD&C(8cZ zuJb1WFSPc%!5#AjywE6qJG|CrrZH6 z)L~CtG^Yn<@Gh2qNq^vqGmdFMEYCYT%5SOvwK7qDr$`5=dzphz6Y*m!NpTab`#vQlz_hw!bW#ukMMfwt*FBNA zUH!dX1ac}(Q7JX9jdgrOoC*QV-e8w~!P@w-RwvpRxoUl+Q<7q5>imhZEWfmsSiuL& z_f6G-M739Ltpoe!u%)XP?}+ja8tv^gdbd)WJP2xgx*a0weYb>_tfx&bo4NGtWzGwl zGJiKEWBqGN*0Aw9g@nl*O_Z`=3Y4JVHJ`n$oBH6C@jx+_W7UqYT<6zUY@w-p_IG9G zLmxoZSKuH5C-l#f0yJot`0}pYo6YXVoA|Ss^OhGsf~o*xw1U`~f=Iq%2G(h@B+w4s zc}3mdWnL#K6<0v!TyxHuWIcXj*^RHFMnJU9D5qI-V1gw+X!8qz*okbG0*Je!-euL& zfh@C!b{pWy8!IX*4jaqQu6^0`w}EbJtuTy}@z$?-I3C^$UIxd0U^+>9B6w4;{be6^ zN3&KAxD}E&>C`+$N-$ef>$KhFBYYv!!TG$GaVPO4bA*{UkwB@tSsVu(xLsOySHl%S zG5oKjhueqsGWJW3`!y7661qCS{yj0Ql-Vd7Q^>dPi^H)#Ti<6Z8G}|1;T11nLN%CD z$^b~H+?)mk7oRVJ=FXS6s<~U$?e(_=7JE;yFoe1X%#`yGDmYNcxpO-{ZUc>x<>>I- z&Uq3DXwEVRZo#8N4%OnFgBD{BymVt-xGUrT^vfS($$x#sjto9mIH3&gpuLxVPfbFu zMb6z;w*@nB`lE1Y9GNmo%Z^>JyxKc;j;HiE>r>j|TW*f|u0s99TNK>zAUyji5?niL zj5?BR_AYJq1tqeOS0s$?IdNn7p>PK>z)kC6wBs!t%bvV%^4s6*hC{cZ=3#r=_D&@N zE`@=2D=G+i;*gG7c<(~bDAaJOsiv@oO63^7%}ei<_iO(9geJ-`AoB5)vnJsC`7e~8*j+|Xi?Atp+Hp6*7$~ewjF0N2pigbzTn3Z(7=-KplO0~8=vQ>Lf4qEp<9qP! z@?Kdr7qrblBB=NNupjUJblYX?bCsUbqiNeVXY76=^gOF1@4O7l4H5j0#Ru=zD9d@v z`iq>8&F?CqV0SD^J;Zg(eJyZ?*83V6W&-oco^uwU1K<~i`q_xs435p^e=ug`JUB&J z?6)8|iQ(i@Mo1xi)^B!GTUkgXBEPMA-UbgaO}(T{1;vJjp-Si69!$v{d$hGjJIH-A z9Ej;TlY1ab+xSbtQ5BKDsQ26iOvlG}rp})>0i(actlbaT!Xj5jSe^>H5`9c_Vxi{u z-oS7S-f}u&^aExFzczuR4>2Pe;@(Q90^hDHZNQ@H1j?@OujO4&4;z1D*^A$(wCfAj zRBKH#Z6{&Nn$*TEIm^9sxRZ!t&^Y+~%XZ z))P-9Prc6tyoEOzMKz~u_=e?IPWiWHMZn3|^87ARO*(wI=(U{496|Oa2sWhZPa597LxckDSg(=GZw`IK1glz;l+f2?lSqm$pIhC#p;tSOe_?X1)hECeo zgG{|6pn~j1oLn=qc#RmSPZ0mSj2;1*i~3oX_^s=Y{Ji#$VT~i~>0@^E4**PI1L*tt z9anbnm+T6>Jv-h5ol_8?pUP+|cM@y2?sWwZbo?Ym?8U`{SxIx_&Vji&2X7f4Ra|74 zJuQd3%w1+gXmYhzr(@HcVwk;A)ZikQ6lQm3E&B&!M#nv;;__z@fcx52E5isUf}LaF z$0b?O<`NzG60>Ph1zoSZK*aMjdWkvnmU(l$d0ZJFl~rA2Z;E(^kQ?q+F5vaPl#Vs9~Ho zZ}|CRF?$X&GHlCQf39$3yl7j zyezbR5QmCH9RrLjbJx}dBqr$_@@wy_caLv}d>zEs9!#@{R`0{$%Aqfc@>?)gfmB)x zti$>ADHBLpH|`WLNFIPdvVVA_?033>;Xq%&eM&-5tY=(|@iBMVqHmgU6Z7x(`mck) zpmmz8@$aX>KWJrXhokzn7WmmVhJN2(Oa&gh?tnVJ{_Y5aNPsTRb3g@fUhQ)j8yj~c zalkPHTBqPPPJ-f!ieRY(av|SeTaC{@{ocy~L`$*x3rc}V?;IxkXnRHuNBZwg!_9Ep zGyOfcx2FJYyGK6c4Q>1rkIP9cRD8$VQwN54VrpjaM^tjBqp=8^>bDDmH&9><@8i3> zNR{1YH+`G;#og6H$7`KTtyd2`M<uY?CG2S5bSQ4rm0boi+W5rw)w3r=%Snl zd<%lep{|xS!eh?3QvYQ0=P{_h84fWYBI6&acegEZz-L)Hn4$BX3qaca%_H>fdwlG)`QSYnuWOh+10XzUq>O^Fx;C_3u~Xo#qI@`g&N zycatxRf6A{zT6|)3dngz^9o$t#udvM)D`%F014N@#!K3J*)y~YbP4=*ogiDQVCfW8 zdM?n(Fs1YeNjSm;l9ryFDkH2&R7`OUDAmZaHCbpR#grsXTd0ZrnxUiP0g;VbG+AQm zAJ9_#@Q3d%V^@5&uxB|qNVqI$i!-FVEO(X!-B4wBxBN$ioJJD)?mo@j^0Jy@ZZg)Z zm&wuA%>Sq3ETWCTF^+9kbFgQ)VE@c2uTQIVdAH-5ukgkjhyGew=++Hk-+uKjMj@Ba zqV3B#z`q69@2!_GEA|6;lj~L1LU9J`1y4D>ieTPD=o9EEb)M)uCGK{Qmos)1|Hvzn zN8fiig;srGAygGfAA|3M^!+BHFC`?7OgP?9sY=<-!^48_iz+5+PosbC51-p#*uY+jjTrTZoZp9kts>l6OFXE#$&1}v7BPtzn8CH}%c z!6zwH+j@vRUCTl(m&R#5Ylp!v=oI376vm)p@WLUtP7FpkRgYlvgWy~$lTKEl35Wdj zx~PGhAJ6*pALR*SL9zPDqb%G-oZqJ=zipTBoYp^1 zFAWn45PT*FIeEj@>n+eB-!A>g2(VF%{UOH~X&Iz12sn&S8YK76L-0L5j6=WE{NHnq z_39F5RIlkO4V(8=_#5`+uBog==1{QUWod1Wc6a};Zah=T$e3I}n;l>rGn zBCDQ^I~hWV5R-WpVBz$z68}rWAzD3@vG5)(0Zhf;TVELjm{2J-*@PB!np{A zRRUPt9d_;{Wt##uIbu4N`In z7tv51w<%>5m8)c`ggVbP!wbL~G)MJQX<5d`N1YPqvJvdq_z364KADjo7{)MC>|9FG zs4~M1bpX?3CBMu7<1xa6QqU~AB>BVkWIQnn7G6;~+#<|~_T(TCR zPL$vK@Ta4@P7oZ^7U2*4)t0B-p%=oyYG0?2y$N`}f#T04?mczC)wx0@=6?|t1r>(C zF~SAGS=Q4WXYX&?tzXT`I&5D!3p!FNX^=UEGLRJQbK>pVvF0CY6-DYq>JNU9tsOrmqiIf6T3mj+ps_l0~IE zxQ_!%Lq${IT4sU+#=!pbHCiI_L1O818&ezk0YlWZ+GZ827Jf-Do)r6v&SeLB)aSZy zIUZurKPdg6!RZ@F_f50x8bqAgM(Ah#z}$@OJ}aOxEijtx<7i>0b>fDcV~S7Jzrer4-kz9 zFC2>*84lbuJ zg#{HYb(pq+`dM9QT~yB(lX6j&7UL;8y!p{X0%wJEU{I=NIQLHBg=|j~9%t54NSh9d zoBZ$vde$@E!=lS~l!;xpW|e!sdP-FUt`dW*)E zhaVTs@;u{uzpWZi>o+UZ!XqLsx?veM0L@gTqJl!s_WHX*_Z}c)$A?xXzlnptU)CMJ%z5~FZb=S=hojW=D?)&QbH~Ow{j&V$qp^5)d!9>eB&@8zWaq4(4Wvq{ zs$#s`z`V3+C@Zs`c+bdkY_{F4&0N@rLgTv$60EPRlxr80i5vrjxr+KN_j4hH*75(p z@!+mxHz}+8z6P-A%pjpt7DiD~9z_{1qI{+a(+IwH`({v(8kna@)rOWuo)b;!w;cmB zvs&bgp{tp$)!L|a%>H?BYT0b->|@9yg;sfAFUA*7Z1Y?(M8d90h%CLtC5bcbM?1l` zLZ`38p9Ol6$u_RE92(m z2$4F0pKt6N);wtF+ufW%m;cwpOBf&&!GiIy`b=bHT1<}uxk4|2Y14BMqv67dk{CqB zkJiNd0nsV!jGyfJ9<-91RZWw|Yd2Q5!z}zk8ONz|4_iyBQJJKY*1$PWQ05f*1~2Ld z*4XEkREmw|ocf!xZU5r0m1eaPPMy#_yGdk6YOn>Lw+_YZ2fwcp6GyDzl83y%aHC@F z5sW=7B>US^gH&wNO!!S3{;-Vt-GRt=N-OEWm2cMja=rW9_QzX3f(^p^ZQXU<8vtte z0fwtp_S@nqg<&O1MMp1ybO_$2aTBU7>iw7EE!W@hu`gO1H(USrSZNZxus^6YhBZfc z6#8YQiSEW1Y$%QF4@q*sSr|DSPfT_oO8k}8pqpi5+Fv%&<8BMYL{5j;U$cQ5&@dQ` zrLle7P8W^DZ7YPpyJ-=NWg4gM{hqm3iXMg#+85ymPcR$4+VZHVqz!I;%cA}g24YO+ zvnfgvCJfC85|}uN_Q@*l{eUyt>C3{nFj-IMBCsu85RiM2ka3jnaWgzyX?o;C!O(Fd zs)o$R_+az$^C22m9AN324~VTHXP1{F_&jgTq_gA7y;B@R z>LxnA@qAr#`2t38^Q&RqT-=xNoB3x>Euj6LGBcv4HE_{?SUv-^=tWaeCM-?o;Fj-z za{IRA6SDGm)s1G$%Bf}k*BvE5D2)W9ascG#xRa6OV)WO<=9=dj*uMueT#w85_ASW| zn!;&E*;LCITV)!x^o>H9Q_OV$^$9rGy)?;kFk2Sfo#({}~7~SVBjQjPsC*SRh z0fK=L0-sPj&Pc~kD8Hg>8?vvNiip=|#P7PWnlYIzF7PdKXu2oW6j`$dUurhT zY<-?6;T#*;5MKB_9_AM8?gx=GEZT>jhTK|{qf~v0&dUDXc?scBDLiagY=Kf|M&EU| ziHQc{5c-C~G?J7B6!M*Lg(~KR`S@z8rfI;yh19pwjhqgYzX#@h&uDkQnng^2La{;V zP((rJ3NRSYv1Pj~pD$i_5^j6!P^aR8RfynXc?$ZJL0WFdbTV#pc%NveqzH-|r6+Dq z)$EUkVG4rQ32npieh-nO(nzcR7*|^}#P5KZ#iZy-H4$6yM5R|0(?E{CHBz#i))7sO);bG7rGn4x? z>FMLoA3uZI;+cYrb*m`0TRPHZ=6q&}sRu)=|>nVN00j8=6(!<;4heP37Tnvj>lycGu8UOdg_4 zRCwdx0m~R$yS3~v#8IcMbrfcExg&M%##>xoKI=U4UE=xqZtV?ZfV<_|aOwKU0;uRs zm!FjsSF)~nB6^kL9sZ6-@!iUhIc@SDKq&XTqMIX^sDsUYxS9Ys<5$1x=a%+$I#pEZ zdY=CH7C&v`HLMpdo8~s}SzGH8S%~FkY1_ZtEEo(#XKIAPm9+BN#8|X=tg%b$uoT>DuK z#Oz&tukdkNGkY|lH(qIRC1AH*EnOZ}=m<%oZ-YZED;1Zaxxi97zlyWiKaEth5-YYR&0A~CuKX&J-OoPs zFtv=Cs(mtBCR+7&%5Rs+PIPiNZ4qC5v}T4Z(P`T4o| z_nZOlN7;N)W@u(+NM;t(I2^^QWtCb4ECr>Xv$vI#jypab$yUr6e3tuY8L_|iN2OP}k0h1vqr^PlDz?6L zg)D)E0XDr=+@^GLN&7l($jkMAB+C<|s|T_*0@l{}+p@-kjd1Fl#mM@EsH>CttvgM}7u!oWrn)MEQns@uUUQ&rI zY}IlBMNV=S?T1I%hbvx>U)#M2moM^~UJs8rmfBNKwWu+)SpYxg7||r{9ZC;~EU815 z*^YXv7Y9k52NZ^NQnn8QA|LrnoN;75cb3l{>P6}&)*EjJAo73q%05*v&Pg$_m)qkuDjO(yq&NEeg!{oz<3dTyeSRMPh6>}PFKAP% zr`vRZ_<<}MnW951nhPgJ`~_2AUF!gq&l^--MUiNUrv){D-1+Cv$1q2QhPaBxZ!8Bo zbekGcW(t4EUwlVJaQs&d?f`%AyWX%GY?W?>kE-*JqWK+QyQPHM^WSKH^vWus7k424 z6Oua83to_Tx+fLbpGwhu{iDJi%K+vAaVt zzSkn70&lHq`~xxDx^D{|+W|5B-Qk)xU%{jN^v(MkcH{pbt8k>Hz99PEaip-7iQ7IM zm9@Ejo#WGKka1U7Zhh_Ne%@YxqeCAR(6!A29n^h3($~scBDU#^N9aIth?jDK{$9d2 zA@GOS+uP;TMjGOJyx?bZOUn(Mr-QoKuZgg=b{%ioWF40hok~iE0bu&DV{6^#mLbfN zZua=JA-&pdicI~fThbc8Qj>mnRQXPMX*p&q%Gq`^#Ps)F1tr-nP}ORLdh2xa2&2`bu9UJ zC(TmaU}uj%nbl9wt0&84va4iEcVufeSP#72C%=Uy(%A5o9LN5|7v;ZW_?tBCU2nO- z_W02mLU9GxXH|c{-4eAvRKyWM3x`5zwRjS&m2ZaQfbrHr#tR*GsQU?`a)2ijVX#w6 zt41hlNU~F^;-R@!!loZb0>vl75${s=#Yp^nl>6YKG=>VYaF}seZ?gHPlTO56pbPzwX=~ z>ZkhMPx$tmvvb@ zrtE88$ERIhF2<*@se=U>53`v|8Bns@;1z)j$8-B|Bn7YTndt>`z@?%UO)$4lRp&!7 z#o@?xcf0&`;{}o5f8ewqu&T6sm>!uf6w78pf&B6`D#qp0FRt1C_el@zE+H)P^E})R zFg4xf*DCVgNbNbTOZ=+))Fj9H>aB^~1N*9Xpoi-EBec+z{WYh_EP6y1v*x`5 z{gBcU_OwY384d-}4qRIB41#sqOz|wf2Pj>!YNZJ-7@y5}DwmR4R~sXrN=@D`ob$Vg z?K2H^l&BBa*PXP~POXf_t^y@;U%qjf1B0dE^YdS?Z*GivqrvnElm&e~dgjh1ws;`96UB-EZh zS{`4h`aa!pvkx!rXAKN5+XM}4j~{Abw_>A@2xgoZ2KR*%nboIwA1a}kdSvD#VBT3imV&=(VXsPfvn39l?lN}s2qm&ma4 zCSq9}NtIunb8M`~91fa&H09w~Xiu~y7~H*|^2+*h?8@xTlI%!u?*a~V6$7JzfC&F1 zpCjLOCiFC^OO3aQ(=Kq_M;5L++CUrGgm^tN$4PtF+-y4C1$rGh{$M0I(tpP)!sDFTbqzYw3aFDSWWYAzLnhTb`C!@IB^=$uOZph^X z{}bHP?P*UzvQD`AFO&C)7PStawk#s&0X$d0nh|LoVx~}b#z4fY5dB3q8dk9I29UB` z#)iDcHSVQZI-O5h{eaxPJ1okM_9O}ca{^ducln~RTFX1iOz6&fDUMOTX_xYDMQ?bb z#%M)gmFHXY@tR#;ETic>ssn_aF6Au9PO0rNl$h7uu=JD1ySuvp%7H0M$AKgKL-x$LE&yihv2K3%UO6mJw##@J3Y!Q6!o(8UOxZYabJv13Hr;Uj@w1@KN1(ur@ALqlk zcNd`he@x_CZtLIhgn89uN}v50>?S&EwuougeeUtqNp$JV<~Nj;7bsh)>-=Vl~`2@aZH-ho}Q_?u4pi zR2gC^!|9_g(JmW8t(ZeX72h(DBe5o($t2Hd$2VK60)_RjBWAAF{z_2Eyx|uKsMiTGk#tInn zEw9`bB{aw5vM>%Ge1vXL2kH*~eUL>f1kcL_gfV-x*{3 z=4vl;KWz6L&Mei2}UBWn?zdt=9SP9X|H zj)&9{xgQ}<>l&{l$seDrtp&9Wi5%6UB!_C?rh{$nOA98K2o+$ogBv^^7r5%lA&8G(0K52ulao<5T=gBG z>ZG@#8Ahv7D>)JU0_+4v4F~H4r9QP;Kdg?}zBz!Yr2u42Un(NT(FSEV{UKrPN{Lj7 zgT#r#$F`I%Z?TFdxb=BO=+(`>vZ?z_Zy>2NjAsiF6k%iIX0mwJw=)co2V+tyt#_dj z1eu@?tS(JMcs8#GY&voi}1v}t6sGzRzshTT};$idV@r9F zkMw5j4aEX%nNNI5Pv9X*cWFgCoe6jbKL|vS!Ze8PJL&2cve2Zo;vXkFW6+( zwkx^S&f!<`Arm#RoRQf#Io2FnV9Mr?mCnW*+oxKs<4tW(J=C%wXujp+YXh!KJl}2j zg(%EqvU$^Hx$D%LTyOH5M~{`Pz`psgnx>mNENh&saF>Z9Jcox9qobG-_x&%~<=&hH z?WspIKeNhwU(Rjq12p70)Q^Cm$nj-`;&DPxTmF`NXSuM%`@qUSOLyFPFh2F4tds@( zG4tu|`Kd>~Z2eQx$Z@rvhgE`s7)~@AX{R73ilRg9F=kxx_HASSz;2S?c0C@Fkc1SE z+~9G7c%vk`+<|Mxtws6Mf`m0$uOK^ne{1%X?{{?dt=`vu4vz5PVD#KT$tJ)HSm-+Yb4|p{&Pyf)ISuD4^ueVpC7Vc7v z01mR}C%-1Pf-rO@!DHs;<~%yX@ohM)e&^8XY=II;Ii)gn=M0-YoVj*HOaWTuH_U9W z%a4F9+&0m2$+I#d_9(HR#qs>lN9d1q1CXh{k43)SO7eUKzO|!@0tUqu5;6Gi73yG! zhG(FyUwlRA>S$jmmsu)C`lyejAOItILR?nhH4;lt4*#;DU2l~-{hTII&e4>T_Z$%( z?&Ja3)KAg>kpyvnI&HY3Hf3(A|EQ?09tKO_D7X;jgXRqsVD15O>5ZOghTDtT`71D0 zyI|}Fw6-rx!5weUfoeG-EC&7T3(;!%>M!^jtLOQKcF4Wa5U41#BqsHr(`~U3Kp@Mp z4YYwkS=#RxvR~2>zRBAA1DD*mGeYUQTV=-uIp7BJn(=e(f#1VLWP)LzyROui<^7a$ zG!g74Rl(4H`BqeA2BM=odFr5vfICthxXUg>feWv`M6Z>iNVcRF^!ao3k1R9R-#B#H z$`*L1h#E?p^%{3BYOpY68DXeA833L|%H9DR2M2H3I+7IGlu_ZwTNPYWoe1B><`xUOPz z_nV&rXmw_k#2OC|e`?s+QNmPw`M1T|bU#X@ zUesHKqB0h!ogs=#KxqqRITLrm;*j7}v-25ezAF%7evgZ#f+Y?<3E_PxZm90IXfOh% zsi%_ASP$e7Pye*t>2w>U)k zYa_`F1Bt3SB|k;tQ~5mE-zSy*mc&2}7EP9+zmg;*9zl1Ya0S%vqDyS0;EJi2RHobx<_VfMO=1zuMr@)6 z1akqs+3B|JSb(-+>Y@Mm-I@FyAU@O)0(+y{Fi-qo74=%avyy6%{{CMgHh3&rDr*P(!I zjZkQ#^=iBapfUY`1ha4rC%c~4w1szs7gtyz2>&Qj(N+9PsuQc`d^4vSlfti_Jh@(0 z(fk<}Wd|xsl)gqQSMS$D64Cl&oY>gAZR<9A)OQ#9UEDA$Yhjxu$raDTg5+9heroWK ztfZH*f}#d0%(GBCNzua+-3k@X@3C!)m%7tXpUBq4KfAT-PVwK|s1-R(w7_^7r8|k9 zDrkarNLWHR7;=z$;1ng!jFo;|j}SK=JX1TmqgdhOw`ZpioAoOE+jwS}Arzf)K5|S{ z-omT^ilgL&c|IXGJl&7>JbIUtoT-5`?dvxknUZoeanlCw0vI%#H9JTHgV+%|8i3Jg zO|pZJ6Omz4z#j*RpsqN{9L70Rtr5T2;#!GsMxm-{lqqDdWESh&$^=YEYh$25#S`Ve zCrdri6jQ{XYErPMppXjWlSoUPi++D3m6^N+4qC+T?0qIVu7$OZRQr-fmI-c4q}}<# zUpb7r65#rvux0W7hWG#dp5llx!wS(h1es>uSO+Sr+@`G)gIq_8RR@QK#XJ9p8BW&^ zQS6A!I{P;P=Hya%S)ND|KHpKSanx;m;Z9QHk38+NxRkuNeh7T)dl8#CgR?n}1Kw&O zplPFF!DL#2ZG>3b?eu8Gx@72tdpZz!iBfazw+@Xae;y_%fw|cpI=b3pZ!#!scr;tG z#5ND;!$!&nT%Daa0ftSFVGLieSOoezMgcP>a)+5V(+xT1DWO@mr3c4Pk1-TO*9+ND z5sI6>4z4y!$_&d~_vlt@I5m2zRtlG!{KgB#`^!)r!ryb}zu!lj!nP#`aJ33Cxoj$l z;6{Q!B}Ffv`Vnahi_#sswuoi3ZKQlf<_&nArha@ZSgyI&tMlCy{$+bi)S@p74)1X6 zXT#i^D-u*ch=u!{6fn{3O(`Uxw26&XiSk&3VBuO(WFq@tyfWi1C&*5< zhPhA{mjb8B?<`QsWh6aun~p|A+ZRILBbER0#dQ}ujYLQ`@ac;EQ@AKz&0sZB(1;>; zq?2fG4QbQYD{3ZaNRZS|XrCSfw=2;JGmR^;6A&P9@%9Q!sPsbxgE>ieB(3968{{Va zF)0CPU+f|fOLawy1P52yEh0T-H3F9D2>2* z(D(hm^Z)0}FpLZ{&cn0sEADlzwJy6<<`w|bT9I*X-;82tbWTPbvVES5H%9YfV$%8{ z4<+UEh)@*w*vwF`dhKNceB1eg6v$Q|fE-l(8fihsjt(Hg5>p_)?e z2fS4xL_|bP8+8IpSy9=)fq;dXOM3!TFEhYsrhQcdCn{5%d{UakH;MJ(pUU;069N>j zjMe=OC&&m>c5g1s=CNyiWSdJP0=vVK$ zht-gu|B~-FiWv?stNQDP5e&V7$otHwp%ELH41PWd_Kdj_FVcJXpIh%xa3&(9X6uEL zl5ZrfIG}`gh}`547WYWM(Q>w%O4S zdp6ks7Pzz?lw@9bU@FV3zTb-B2JFO(70IW7Mj=EzFp2psUx4_M{;at)G)Pe)4?7S=%jGbjIx2Lf%9qgWu1!ezriGlxK23QBP|Ufpck zC&&)Yxd@SkvZ?f1K@Sc2!|T`mN6kYngwn59BksEoGr5&l7nTo2!n*G zt{%RFBo!1CWW`eDlQ~+l5#In5IOp%Zfn+Pz4}flJ~l53W-4p?x+qLEzF>9mhpp&4La|S`7F~t?FrrEtzzO){GW!&^KGRjwuzV;th@n zFdx-s=X)9b`Nq5DZNiJ_E_l+)%BZ2D&!7znT0a>b$Vk0d@qT?_zgnbuPl|soNB8lg`osVRhH_D(t_RONj}bU~d+? z-|VgBi3E>&EHj7^_Nv8Ol1YC#g{<0IgMdZldsA|+dBMmY7NmQ1H*JpH>{Zi?ORUVP z)mg?j3stIOBewO3m2Mvi%~X2v4S=Kk__?HnZ)tU!{Nb@21kGh4>QD`iS63IbNgLy6 zSlm~A+c2L`D!3gYC*c5ZK2oLosZmGVOzC$v<2I$!)0Xh#)}YXzryJ(BIKKfn7Vs<0 zE`0f~UP>>oxHP*~9C|f3u0PW;e9yl3iNC+7hcs0#e7N8KFAbwhX?=E&iD;`HZRmdB zJ^7!%+p|JA*Kwlx{_y=>=RYB~g&T})IntJ~fNm;nyY*(~2cF6%%1NxAsBEC!NVHC0 z9tG=9VGka>Buh^A*)}4%n^%arwTcDZMsJolI5_bsH}@|NgwyReF@pyQ1H*8b7J-$x z`w!I)7V(K1trL#AnwrI_qYkf^dhkl*ZQ-ruMk8AdO9iA*{{*@fe4h$JX{KSv_4gU& zg)RF%jk#a;Ho};W`!21*ld-ABz9`LDnbAqgxyL*n3LVZ}zpj$ECJ1QO-0!G`oPf&h zOZ$yv7;Dt>bLj_YXlS0bteES$^PgV-6r|y|%SZT%kE&4MXtU+k*@8MM18|-Ssbi}0 zdjn=sm&E~J)dvw_bmXzktrSuUd_v6vFoY(!PjAX|Kd!8@GSQBJ05gouWx@8)U+v?C zF$Y%-^^+Z@qOB&KaM>Ap^d8eNV1ifYV_aXA-l|Q6hvhut@LDwe))$M;N2WsrVF0ws zr}*bXoPfYRAjua+*5g@bQ`&!Zn|-${2j~Iqh~` z=(ik-_=SsifMSk4+3j}H#HITnC-MZh6rfO{Tz`W$ z77Y{;rB3E%XG5guHXJ_3*4&fOddZFwY*jD zngN6oZuu2<`YYNIda5$gn|DXGLx4e*i$bI%S#k^HMD@h5R+#(z=;_qwtgy5cw`6Q^ zTQ;%L(pyq8)K5#B;1zK!d~$MfnkGBD`O~OYSR$Qp z{DEH*V$&~RX-m|A^zw$5gTmgV;HP)H<5df!>bFwuSF>D$8^8(_eSK9Vuv?wQRKcLH z7l&_Bjeqw8lRp2ujUlVEvdswn4K*!5q zf34_iITQHdAoxR$*-s7rb3zNJ;3ph3!J8L^kiISD>b~ExHANwF4(`CZNNTRI{!olsD;$_-x?&5FqS@N)d-YlRd~lzud&xZZ2pJt zP&Ir{c^+}NzM+EGEtYE}?6%L6V_Rmk0O&Liw8_sD3MA^};DtyD zR$F;YP=jG`{D|90xr0pI`}=Iqx!At6F`IU<+XTsny_dem#EK+D4*p|qC=G@Kv!Lyj zE32_N4n=90|d;C!-LIPB}TnimSc z?{;@mvQ%PHreB)IE6*t}+GSsM``UOVKU^D(9&#m1z9E z%0PYkg_<>o$ljlAv;2lj`>q@v%{cOJJ2YywlTx>G{qKy=orLdkyRy*_FRxa<=#Aua z0sD0Xe-ErbxSI*1R3*Yf>*{}W%ieS!E6z$k%!vfji?jxT#l!hCW8>9PWNr6yw3Q}F z-W^8zopSee=!ehB4)F&@$qGLAs-5+xOuv7;^$S2c#MyVC1Z>n2#yIiHKcv?Pii)8| zGH|1POO@TGsgFB!|Mi7?cTHM)W*yW9x71CdHYS?eVz83KGt-^>H_4>2qs?%Hyt*rFyXtF=xH0;MfMP6}{prp4njYk)izl){=DaDJF@PMYPhIh&=ndwdRLjliey2-;CL;PN(u#Bel z(UA)V&%Rc_I4rjsVrrp;o2OeFwSB=NG%1^uoV<~e={UH&XH4i4#|c($8mm6U%eZ~~ zLz^HGWp8?>O$hF%HjUHm$nI#&`)C~Gn4Y9E%+}WGbt_zpnjOy4;cvxmYn*Xd7QS4Q zPi0i9TA0WvHtZgP{}S2e`flq>%Qxb2E8KSzX+jplOvWG1B}YPm`@GXy;*8Kzcbj-N zw;@W@*9^_XMX51dV>dF;hQ;T&u{Mge*s$W_2^v;L=1uhN&DiCiUDv{db5@k8cFMWA zM~AhttEuI+@%jzJ{*OHx{1cx$V!5|lVfC^WiQiMF**DqI2FKw_(6oWj7xu0rgTT6Y#pwoLs4&oo@jcw$FLKF;PIFN}` zM5U7n1#5?tIWu$r%X5SAj*vm=RXi8mM1$rS+2M)g@%1jbk*R-43=jhVw7nvAw0f5P zYt5JT*q=&!^Lu^wJ=qKPRxJbp(H+iF3-*KX8GU!}D&MqC*r=kJU~gHRxPCo)DG>|F zR!EX_+`d>PP|Binuogk20fCG@q86R z8BYFV#YCUhpr?~57Md3DHB@YtZd zQQcqFu7KNg8R*60xvdEyE`#nVu-2*>3WA}caiBSRP=454rFQgUt%O5PaLBq#L3#P8 zsCcloqhmZai51YlUw2bPmaf}gW?;u445*{8NbR07w;&Uu$d&dobjlHeD4_m!dMH8A zqMf(%{N67p3?Xg8OLhrT}#np5lfDK9hbN89r7udo+}jdei&R(;P6dIx?P=DzpXoUdwjx=Zn}hi~OxP-Z zaS9Js9M_=+W4Q-@9G%3jv+jI6MOl3&2*&zP;KcJ=H#?;!`{i*=||r@EkUybV8bX z?KY`9InHePG29mQN_-y6yZ0868(a=EZ~4Tb_nQj}7L8xc2<^u4aF{Hi{zdGd8I@yB&#uOMK0OO*05&@Ug$YfAHt?FuQN%d6<0} zu<|??H6j7y}xpl#ysp#Y{76}rOcLR>E6qtGZSXluFGm9;OJOLe zF8jr*@gT?ML^|%i+^s+kl&g@c^wTeOtlH3WNB!)1#L2E`o~F-}(WhLKzj@2pu?ae{ zjbX$=PF6M{&4ZqUFwsmKmj0RG-`sM%@A4afTLq@)%X0MTK!w9z*#1KqkbI^L_=Z6Z zrl#b`P^drQfAJ;zMgrpHp6Q}*BDT=InqN6H`IW--!@E;Yqr5!5e9g(S18&rpqdRM? zskFgk%J=pb_mb}wKP74WB#X`FU}x=v^_@QRN!kf3_m^eW0hH!7zamAAfRvTQ#`TmB;w=WIT9X_?*)3XCcX9-o$o87~Din z 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 Date: Tue, 12 Apr 2022 17:32:53 +0000 Subject: [PATCH 08/26] Auto-update README --- README.md | 27 ++------------------------- README_fr.md | 27 ++------------------------- 2 files changed, 4 insertions(+), 50 deletions(-) diff --git a/README.md b/README.md index 2119544..779280b 100644 --- a/README.md +++ b/README.md @@ -15,15 +15,7 @@ If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/in ## Overview -Some long and extensive description of what the app is and does, lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. - -### Features - -- Ut enim ad minim veniam, quis nostrud exercitation ullamco ; -- Laboris nisi ut aliquip ex ea commodo consequat ; -- Duis aute irure dolor in reprehenderit in voluptate ; -- Velit esse cillum dolore eu fugiat nulla pariatur ; -- Excepteur sint occaecat cupidatat non proident, sunt in culpa." +Tracim is a collaborative platform software intended for (not only technical) team collaboration. It is simple to use, offers a user-friendly interface and runs on every computer. It is very valuable for R&D teams, assocations, remote collaboration. **Shipped version:** 4.1.3~ynh1 @@ -32,22 +24,7 @@ Some long and extensive description of what the app is and does, lorem ipsum dol ## Screenshots -![](./doc/screenshots/example.jpg) - -## Disclaimers / important information - -* Any known limitations, constrains or stuff not working, such as (but not limited to): - * requiring a full dedicated domain ? - * architectures not supported ? - * not-working single-sign on or LDAP integration ? - * the app requires an important amount of RAM / disk / .. to install or to work properly - * etc... - -* Other infos that people should be aware of, such as: - * any specific step to perform after installing (such as manually finishing the install, specific admin credentials, ...) - * how to configure / administrate the application if it ain't obvious - * upgrade process / specificities / things to be aware of ? - * security considerations ? +![](./doc/screenshots/feature_app_document.png) ## Documentation and resources diff --git a/README_fr.md b/README_fr.md index feb78cd..56e44cb 100644 --- a/README_fr.md +++ b/README_fr.md @@ -11,15 +11,7 @@ Si vous n'avez pas YunoHost, regardez [ici](https://yunohost.org/#/install) pour ## Vue d'ensemble -Some long and extensive description of what the app is and does, lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. - -### Features - -- Ut enim ad minim veniam, quis nostrud exercitation ullamco ; -- Laboris nisi ut aliquip ex ea commodo consequat ; -- Duis aute irure dolor in reprehenderit in voluptate ; -- Velit esse cillum dolore eu fugiat nulla pariatur ; -- Excepteur sint occaecat cupidatat non proident, sunt in culpa." +Tracim is a collaborative platform software intended for (not only technical) team collaboration. It is simple to use, offers a user-friendly interface and runs on every computer. It is very valuable for R&D teams, assocations, remote collaboration. **Version incluse :** 4.1.3~ynh1 @@ -28,22 +20,7 @@ Some long and extensive description of what the app is and does, lorem ipsum dol ## Captures d'écran -![](./doc/screenshots/example.jpg) - -## Avertissements / informations importantes - -* Any known limitations, constrains or stuff not working, such as (but not limited to): - * requiring a full dedicated domain ? - * architectures not supported ? - * not-working single-sign on or LDAP integration ? - * the app requires an important amount of RAM / disk / .. to install or to work properly - * etc... - -* Other infos that people should be aware of, such as: - * any specific step to perform after installing (such as manually finishing the install, specific admin credentials, ...) - * how to configure / administrate the application if it ain't obvious - * upgrade process / specificities / things to be aware of ? - * security considerations ? +![](./doc/screenshots/feature_app_document.png) ## Documentations et ressources From 5d14e77ff3f34252ef11f0b6c94958020517b22d Mon Sep 17 00:00:00 2001 From: yalh76 Date: Tue, 12 Apr 2022 19:33:17 +0200 Subject: [PATCH 09/26] Update manifest.json --- manifest.json | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/manifest.json b/manifest.json index 18de9f2..65dd630 100644 --- a/manifest.json +++ b/manifest.json @@ -53,11 +53,7 @@ }, { "name": "password", - "type": "password", - "help": { - "en": "Use the help field to add an information for the admin about this question.", - "fr": "Utilisez le champ aide pour ajouter une information à l'intention de l'administrateur à propos de cette question." - } + "type": "password" } ] } From 6bebdd7e57d2b63d1c7e0f86d96cc3689b1ea2b1 Mon Sep 17 00:00:00 2001 From: yalh76 Date: Tue, 12 Apr 2022 19:35:10 +0200 Subject: [PATCH 10/26] Update nginx.conf --- conf/nginx.conf | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/conf/nginx.conf b/conf/nginx.conf index 20f3b08..5556e83 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -1,9 +1,6 @@ #sub_path_only rewrite ^__PATH__$ __PATH__/ permanent; location __PATH__/webdav { - # Path to source - alias __FINALPATH__/ ; - uwsgi_pass unix:///tmp/uwsgi-__APP__-webdav.socket; include uwsgi_params; uwsgi_param SCRIPT_NAME ''; @@ -11,26 +8,23 @@ location __PATH__/webdav { location __PATH__/dav { - # Path to source - alias __FINALPATH__/ ; - uwsgi_pass unix:///tmp/uwsgi-__APP__-caldav.socket; include uwsgi_params; uwsgi_param SCRIPT_NAME ''; } -location __PATH__/assets { +location __PATH__/assets/ { # Path to source - alias __FINALPATH__/frontend/dist/assets ; + alias __FINALPATH__/frontend/dist/assets/ ; try_files $uri $uri/; } -location __PATH__/app { +location __PATH__/app/ { # Path to source - alias __FINALPATH__/frontend/dist/app ; + alias __FINALPATH__/frontend/dist/app/ ; try_files $uri $uri/; } @@ -45,9 +39,6 @@ location __PATH__/favicon.ico { location __PATH__/ { - # Path to source - alias __FINALPATH__/ ; - uwsgi_pass unix:///tmp/uwsgi-__APP__-web.socket; include uwsgi_params; uwsgi_param SCRIPT_NAME ''; From 2376395e4f5422d6f1fc9bbadef4c1dfc558da90 Mon Sep 17 00:00:00 2001 From: yalh76 Date: Tue, 12 Apr 2022 19:40:29 +0200 Subject: [PATCH 11/26] Update development.ini.sample --- conf/development.ini.sample | 33 ++++++++++----------------------- 1 file changed, 10 insertions(+), 23 deletions(-) diff --git a/conf/development.ini.sample b/conf/development.ini.sample index 2f711f5..4df0bd2 100644 --- a/conf/development.ini.sample +++ b/conf/development.ini.sample @@ -63,9 +63,9 @@ basic_setup.session_secret = __SESSION_SECRET__ ; debug = False -### Language ### -## default language used in backend if user do not set any language. -# Available parameter: en, fr, pt, de, ar +### Lang ### +## default lang used in backend if user doesn't provided any lang. +# Available parameter: en, fr, pt, de default_lang = __LANGUAGE__ ### Apps ### @@ -179,11 +179,6 @@ workspace.join.max_messages_history_count = -1 # timeout for fetching URL preview (in sec). ; url_preview.fetch_timeout = 30 -# max content length parsed for fetching URL preview (in bytes), default to 1048576 (1 Mo) -# note: setting to 0 will disallow the limitation, but is not recommanded for security and performance -# reason. -; url_preview.max_content_length = 1048576 - #### # LIMITATION #### @@ -214,7 +209,7 @@ workspace.join.max_messages_history_count = -1 # Empty by default. HTML is allowed. ; limitation.maximum_online_users_message = # For instance: -# limitation.maximum_online_users_message = We suggest you contact your manager to upgrade your offer:
Leslie Doe,
+336123456789, root@__DOMAIN__ +# limitation.maximum_online_users_message = We suggest you contact your manager to upgrade your offer:
Leslie Doe, +336123456789, leslie.doe@example.org #### # STORAGE @@ -736,12 +731,12 @@ webdav.root_path = /webdav ## param_name = value ## ``` -caldav.radicale.server.hosts = localhost:5232 +caldav.radicale.server.host = localhost:5232 ## To make Tracim work, we need to disable auth and rights. -caldav.radicale.auth.type = none -caldav.radicale.rights.type = tracim_backend.radicale_plugins.allow_all_access_rights +caldav.radicale.auth.type = None +caldav.radicale.rights.type = None ## We do not need radicale web ui -caldav.radicale.web.type = none +caldav.radicale.web.type = None ## for Tracim we do use file storage. caldav.radicale.storage.type = multifilesystem ; caldav.radicale.storage.filesystem_folder = %(here)s/radicale_storage @@ -752,13 +747,6 @@ caldav.radicale.headers.Access-Control-Allow-Methods = GET, POST, OPTIONS, PROP caldav.radicale.headers.Access-Control-Allow-Headers = User-Agent, Authorization, Content-type, Depth, If-match, If-None-Match, Lock-Token, Timeout, Destination, Overwrite, X-client, X-Requested-With, Prefer caldav.radicale.headers.Access-Control-Expose-Headers = Etag -# in Tracim's Frontend, when creating a new event, the description (note) of the event will be pre-filled with the content -# of the file given in the following parameter. Leave empty if you don't want any pre-filling. -; caldav.pre_filled_event.description_file_path = - -## example: -# caldav.pre_filled_event.description_file_path = %(here)s/tracim_backend/templates/pre-filled_agenda_event/test/description.txt - #### # SEARCH (ElasticSearch) #### @@ -844,7 +832,7 @@ caldav.radicale.headers.Access-Control-Expose-Headers = Etag ## Translation service target languages that will be proposed in Tracim's interface # It is a comma-separated list of : pairs. # The string can use any UTF-8 character. -; translation_service.target_languages = en:English,fr:Français,pt:Português,de:Deutsch,ar:العربية +; translation_service.target_languages = en:English,fr:Français,pt:Português,de:Deutsch # example: # translation_service.target_languages = fr:Français,ar:العربية,ja:日本語 @@ -918,7 +906,6 @@ pyramid.default_locale_name = en # pyramid.includes = # pyramid_debugtoolbar # ``` -# WARNING: pyramid_debugtoolbar won't work in Tracim's official docker image (multiple problems of multiprocess and reverse-proxy). [pipeline:webdav] @@ -941,7 +928,7 @@ listen = %(webdav.listen)s [server:caldav] use = egg:waitress#main -listen = %(caldav.radicale.server.hosts)s +listen = %(caldav.radicale.server.host)s ###################### # DATABASE MIGRATION # ###################### From 516dc955d27b13c554b2f5a76201da6542a623f7 Mon Sep 17 00:00:00 2001 From: yalh76 Date: Tue, 12 Apr 2022 22:57:01 +0200 Subject: [PATCH 12/26] ynh_exec_warn_less --- scripts/install | 28 ++++++++++++++-------------- scripts/restore | 2 +- scripts/upgrade | 23 ++++++++++++----------- 3 files changed, 27 insertions(+), 26 deletions(-) diff --git a/scripts/install b/scripts/install index 8c3a656..e702c43 100755 --- a/scripts/install +++ b/scripts/install @@ -78,7 +78,7 @@ ynh_app_setting_set --app=$app --key=port --value=$port #================================================= ynh_script_progression --message="Installing dependencies..." -ynh_install_app_dependencies $pkg_dependencies $build_pkg_dependencies +ynh_exec_warn_less ynh_install_app_dependencies $pkg_dependencies $build_pkg_dependencies ynh_install_nodejs --nodejs_version=$nodejs_version ynh_install_extra_app_dependencies --repo="deb https://dl.yarnpkg.com/debian/ stable main" --package="yarn" --key="https://dl.yarnpkg.com/debian/pubkey.gpg" @@ -167,29 +167,29 @@ pushd "$final_path/backend" set +u; source env/bin/activate set -u; - pip install -r requirements-build.txt - pip install -r requirements.txt - pip install -r requirements-full-preview-generator.txt - pip install -r requirements-db-postgres.txt - pip install -e "." + ynh_exec_warn_less pip install -r requirements-build.txt + ynh_exec_warn_less pip install -r requirements.txt + ynh_exec_warn_less pip install -r requirements-full-preview-generator.txt + ynh_exec_warn_less pip install -r requirements-db-postgres.txt + ynh_exec_warn_less pip install -e "." mkdir sessions_data sessions_lock previews - tracimcli db init - tracimcli user create -e $admin_mail -u $admin --lang $language -p $password --profile administrators - tracimcli user delete -l admin@admin.admin + ynh_exec_warn_less tracimcli db init + ynh_exec_warn_less tracimcli user create -e $admin_mail -u $admin --lang $language -p $password --profile administrators + ynh_exec_warn_less tracimcli user delete -l admin@admin.admin set +u; deactivate set -u; - $ynh_npm install "i18next-conv@<8" -g - ./update_i18n_json_file.sh || exit 1 + ynh_exec_warn_less $ynh_npm install "i18next-conv@<8" -g + ynh_exec_warn_less ./update_i18n_json_file.sh || exit 1 popd pushd "$final_path" echo 'nodeLinker: node-modules' >> .yarnrc.yml - yarn install - ./build_full_frontend.sh + ynh_exec_warn_less yarn install + ynh_exec_warn_less ./build_full_frontend.sh popd -ynh_install_app_dependencies $pkg_dependencies +ynh_exec_warn_less ynh_install_app_dependencies $pkg_dependencies chmod 750 "$final_path" chmod -R o-rwx "$final_path" diff --git a/scripts/restore b/scripts/restore index 7a88236..a6beac1 100755 --- a/scripts/restore +++ b/scripts/restore @@ -94,7 +94,7 @@ chown -R $app:www-data "$datadir" ynh_script_progression --message="Reinstalling dependencies..." # Define and install dependencies -ynh_install_app_dependencies $pkg_dependencies +ynh_exec_warn_less ynh_install_app_dependencies $pkg_dependencies ynh_install_nodejs --nodejs_version=$nodejs_version ynh_install_extra_app_dependencies --repo="deb https://dl.yarnpkg.com/debian/ stable main" --package="yarn" --key="https://dl.yarnpkg.com/debian/pubkey.gpg" diff --git a/scripts/upgrade b/scripts/upgrade index 6ae77ff..d9a11a7 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -110,7 +110,7 @@ ynh_add_nginx_config #================================================= ynh_script_progression --message="Upgrading dependencies..." -ynh_install_app_dependencies $pkg_dependencies $build_pkg_dependencies +ynh_exec_warn_less ynh_install_app_dependencies $pkg_dependencies $build_pkg_dependencies ynh_install_nodejs --nodejs_version=$nodejs_version ynh_install_extra_app_dependencies --repo="deb https://dl.yarnpkg.com/debian/ stable main" --package="yarn" --key="https://dl.yarnpkg.com/debian/pubkey.gpg" @@ -143,26 +143,27 @@ pushd "$final_path/backend" set +u; source env/bin/activate set -u; - pip install -r requirements-build.txt - pip install -r requirements.txt - pip install -r requirements-full-preview-generator.txt - pip install -r requirements-db-postgres.txt - pip install -e "." + ynh_exec_warn_less pip install -r requirements-build.txt + ynh_exec_warn_less ynh_exec_warn_less pip install -r requirements.txt + ynh_exec_warn_less pip install -r requirements-full-preview-generator.txt + ynh_exec_warn_less pip install -r requirements-db-postgres.txt + ynh_exec_warn_less pip install -e "." mkdir sessions_data sessions_lock previews + ynh_exec_warn_less alembic -c development.ini upgrade head set +u; deactivate set -u; - $ynh_npm install "i18next-conv@<8" -g - ./update_i18n_json_file.sh || exit 1 + ynh_exec_warn_less $ynh_npm install "i18next-conv@<8" -g + ynh_exec_warn_less ./update_i18n_json_file.sh || exit 1 popd pushd "$final_path" echo 'nodeLinker: node-modules' >> .yarnrc.yml - yarn install - ./build_full_frontend.sh + ynh_exec_warn_less yarn install + ynh_exec_warn_less ./build_full_frontend.sh popd -ynh_install_app_dependencies $pkg_dependencies +ynh_exec_warn_less ynh_install_app_dependencies $pkg_dependencies chmod 750 "$final_path" chmod -R o-rwx "$final_path" From d68eaa3b6087863845b70ea6be3e2ce9e520aa87 Mon Sep 17 00:00:00 2001 From: yalh76 Date: Tue, 12 Apr 2022 22:57:07 +0200 Subject: [PATCH 13/26] Update development.ini.sample --- conf/development.ini.sample | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/conf/development.ini.sample b/conf/development.ini.sample index 4df0bd2..4887ecb 100644 --- a/conf/development.ini.sample +++ b/conf/development.ini.sample @@ -521,7 +521,7 @@ webdav.ui.enabled = True #### ## send some notification when user make specific action in Tracim -; email.notification.activated = False +; email.notification.activated = True ## you can enable or disable if invited user to space will be notified ## on this space by default. ## NB: new users will not being notified until they login to Tracim a first time @@ -534,7 +534,7 @@ webdav.ui.enabled = True email.notification.smtp.server = localhost email.notification.smtp.port = 25 -; email.notification.smtp.user =__APP__@__DOMAIN__ +; email.notification.smtp.user = ; email.notification.smtp.password = # configuration example: # email.notification.smtp.server = your_smtp_server @@ -564,12 +564,12 @@ email.notification.smtp.port = 25 ## valid variable is 'user_id' for 'from' header: -; email.notification.from.email = +email.notification.from.email = __APP__@__DOMAIN__ # example of recommanded pattern (for 'from' header): # email.notification.from.email = noreply+{user_id}@domainname.tld ## valid variable is 'content_id' for 'reply_to' header: -; email.notification.reply_to.email = +email.notification.reply_to.email = __APP__@__DOMAIN__ # tagging reply_to header of email with content_id is needed for working # email_reply feature # example of recommanded pattern (for 'reply_to' header): @@ -578,7 +578,7 @@ email.notification.smtp.port = 25 # email.notification.reply_to.email = reply+cid{content_id}@domainname.tld ## valid variable is 'content_id' for 'references' header: -; email.notification.references.email = +email.notification.references.email = content_id # tagging reference header of email with content_id is nice to have # all modification to a same content in a same email client thread # Note: reference doesn't need to be an existing email account but should From a34c416e3c9f0f33ac73f9b8886145c0583d58b9 Mon Sep 17 00:00:00 2001 From: yalh76 Date: Tue, 12 Apr 2022 23:16:46 +0200 Subject: [PATCH 14/26] Manage logs --- conf/caldav.ini | 1 - conf/web.ini | 3 --- conf/webdav.ini | 1 - scripts/backup | 7 +------ scripts/change_url | 6 +++--- scripts/install | 17 ++++------------- scripts/remove | 18 +----------------- scripts/restore | 13 +++---------- scripts/upgrade | 25 +++++-------------------- 9 files changed, 17 insertions(+), 74 deletions(-) diff --git a/conf/caldav.ini b/conf/caldav.ini index f9896b0..133b9b6 100644 --- a/conf/caldav.ini +++ b/conf/caldav.ini @@ -9,4 +9,3 @@ threads = 8 env = TRACIM_CONF_PATH=__FINALPATH__/backend/development.ini socket = /tmp/uwsgi-__APP__-caldav.socket chmod-socket = 660 -logto = /var/log/__APP__/__APP__-caldav.log diff --git a/conf/web.ini b/conf/web.ini index fec7379..712d24c 100644 --- a/conf/web.ini +++ b/conf/web.ini @@ -10,6 +10,3 @@ chmod-socket = 660 workers = 4 threads = 4 env = TRACIM_CONF_PATH=__FINALPATH__/backend/development.ini -logto = /var/log/__APP__/__APP__-web.log - - diff --git a/conf/webdav.ini b/conf/webdav.ini index 7faa0b3..f262a62 100644 --- a/conf/webdav.ini +++ b/conf/webdav.ini @@ -9,4 +9,3 @@ threads = 8 env = TRACIM_CONF_PATH=__FINALPATH__/backend/development.ini socket = /tmp/uwsgi-__APP__-webdav.socket chmod-socket = 660 -logto = /var/log/__APP__/__APP__-webdav.log diff --git a/scripts/backup b/scripts/backup index b3f2b18..f0fa30f 100755 --- a/scripts/backup +++ b/scripts/backup @@ -54,14 +54,9 @@ ynh_backup --src_path="$datadir" --is_big #================================================= ynh_backup --src_path="/etc/nginx/conf.d/$domain.d/$app.conf" + #================================================= # SPECIFIC BACKUP -#================================================= -# BACKUP LOGROTATE -#================================================= - -ynh_backup --src_path="/etc/logrotate.d/$app" - #================================================= # BACKUP SYSTEMD #================================================= diff --git a/scripts/change_url b/scripts/change_url index 8d704a7..31a5a68 100644 --- a/scripts/change_url +++ b/scripts/change_url @@ -82,7 +82,7 @@ fi #================================================= ynh_script_progression --message="Stopping a systemd service..." -ynh_supervisor_action --service_name=$app --action="stop" --log_path="/var/log/supervisor/supervisord.log" #--line_match="line to match" +ynh_supervisor_action --service_name=$app --action="stop" --log_path="/var/log/supervisor/supervisord.log" #================================================= # MODIFY URL IN NGINX CONF @@ -139,8 +139,8 @@ chown $app:$app "$final_path/frontend/configEnv.json" ynh_script_progression --message="Starting a systemd service..." # Start a systemd service -ynh_systemd_action --service_name="uwsgi" --action="restart" --log_path="/var/log/uwsgi/$app/$app.log" -ynh_supervisor_action --service_name="$app" --action="restart" --log_path="/var/log/supervisor/supervisord.log" #--line_match="line to match" +ynh_systemd_action --service_name="uwsgi" --action="restart" --log_path="/var/log/uwsgi/app/$app.log" --line_match="spawned uWSGI" +ynh_supervisor_action --service_name="$app" --action="restart" --log_path="/var/log/supervisor/supervisord.log" #================================================= # RELOAD NGINX diff --git a/scripts/install b/scripts/install index e702c43..4e1dcd5 100755 --- a/scripts/install +++ b/scripts/install @@ -190,6 +190,7 @@ pushd "$final_path" popd ynh_exec_warn_less ynh_install_app_dependencies $pkg_dependencies +ynh_exec_warn_less ynh_package_autoremove chmod 750 "$final_path" chmod -R o-rwx "$final_path" @@ -220,22 +221,12 @@ ln -sf /etc/uwsgi/apps-available/$app-caldav.ini /etc/uwsgi/apps-enabled/$app-ca #================================================= # GENERIC FINALIZATION -#================================================= -# SETUP LOGROTATE -#================================================= -ynh_script_progression --message="Configuring log rotation..." - -mkdir -p "/var/log/$app" -chown -R $app:$app "/var/log/$app" -# Use logrotate to manage application logfile(s) -ynh_use_logrotate - #================================================= # INTEGRATE SERVICE IN YUNOHOST #================================================= ynh_script_progression --message="Integrating service in YunoHost..." -yunohost service add uwsgi --log="/var/log/uwsgi/$app/$app.log" +yunohost service add uwsgi --log="/var/log/uwsgi/app/$app.log" yunohost service add supervisor --log="/var/log/supervisor/supervisord.log" #================================================= @@ -244,8 +235,8 @@ yunohost service add supervisor --log="/var/log/supervisor/supervisord.log" ynh_script_progression --message="Starting a systemd service..." # Start a systemd service -ynh_systemd_action --service_name="uwsgi" --action="restart" --log_path="/var/log/uwsgi/$app/$app.log" -ynh_supervisor_action --service_name="$app" --action="restart" --log_path="/var/log/supervisor/supervisord.log" #--line_match="line to match" +ynh_systemd_action --service_name="uwsgi" --action="restart" --log_path="/var/log/uwsgi/app/$app.log" --line_match="spawned uWSGI" +ynh_supervisor_action --service_name="$app" --action="restart" --log_path="/var/log/supervisor/supervisord.log" #================================================= # SETUP SSOWAT diff --git a/scripts/remove b/scripts/remove index 0f81f72..ed52b56 100755 --- a/scripts/remove +++ b/scripts/remove @@ -61,15 +61,7 @@ ynh_secure_remove --file="/etc/uwsgi/apps-enabled/$app-webdav.ini" ynh_secure_remove --file="/etc/uwsgi/apps-available/$app-webdav.ini" ynh_secure_remove --file="/etc/uwsgi/apps-enabled/$app-caldav.ini" ynh_secure_remove --file="/etc/uwsgi/apps-available/$app-caldav.ini" -ynh_systemd_action --service_name="uwsgi" --action="restart" --log_path="/var/log/uwsgi/$app/$app.log" - -#================================================= -# REMOVE LOGROTATE CONFIGURATION -#================================================= -ynh_script_progression --message="Removing logrotate configuration..." - -# Remove the app-specific logrotate config -ynh_remove_logrotate +ynh_systemd_action --service_name="uwsgi" --action="restart" --log_path="/var/log/uwsgi/app/$app.log" --line_match="spawned uWSGI" #================================================= # REMOVE THE POSTGRESQL DATABASE @@ -117,14 +109,6 @@ ynh_remove_app_dependencies #================================================= # SPECIFIC REMOVE -#================================================= -# REMOVE VARIOUS FILES -#================================================= -ynh_script_progression --message="Removing various files..." - -# Remove the log files -ynh_secure_remove --file="/var/log/$app" - #================================================= # GENERIC FINALIZATION #================================================= diff --git a/scripts/restore b/scripts/restore index a6beac1..404ef35 100755 --- a/scripts/restore +++ b/scripts/restore @@ -121,19 +121,12 @@ ynh_restore_file --origin_path="/etc/supervisor/conf.d/$app.conf" supervisorctl reread supervisorctl update -#================================================= -# RESTORE THE LOGROTATE CONFIGURATION -#================================================= -ynh_script_progression --message="Restoring the logrotate configuration..." - -ynh_restore_file --origin_path="/etc/logrotate.d/$app" - #================================================= # INTEGRATE SERVICE IN YUNOHOST #================================================= ynh_script_progression --message="Integrating service in YunoHost..." -yunohost service add uwsgi --log="/var/log/uwsgi/$app/$app.log" +yunohost service add uwsgi --log="/var/log/uwsgi/app/$app.log" yunohost service add supervisor --log="/var/log/supervisor/supervisord.log" #================================================= @@ -142,8 +135,8 @@ yunohost service add supervisor --log="/var/log/supervisor/supervisord.log" ynh_script_progression --message="Starting a systemd service..." # Start a systemd service -ynh_systemd_action --service_name="uwsgi" --action="restart" --log_path="/var/log/uwsgi/$app/$app.log" -ynh_supervisor_action --service_name="$app" --action="restart" --log_path="/var/log/supervisor/supervisord.log" #--line_match="line to match" +ynh_systemd_action --service_name="uwsgi" --action="restart" --log_path="/var/log/uwsgi/app/$app.log" --line_match="spawned uWSGI" +ynh_supervisor_action --service_name="$app" --action="restart" --log_path="/var/log/supervisor/supervisord.log" #================================================= # GENERIC FINALIZATION diff --git a/scripts/upgrade b/scripts/upgrade index d9a11a7..40d84b1 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -59,7 +59,7 @@ ynh_abort_if_errors #================================================= ynh_script_progression --message="Stopping a systemd service..." -ynh_supervisor_action --service_name=$app --action="stop" --log_path="/var/log/supervisor/supervisord.log" #--line_match="line to match" +ynh_supervisor_action --service_name=$app --action="stop" --log_path="/var/log/supervisor/supervisord.log" #================================================= # ENSURE DOWNWARD COMPATIBILITY @@ -164,6 +164,7 @@ pushd "$final_path" popd ynh_exec_warn_less ynh_install_app_dependencies $pkg_dependencies +ynh_exec_warn_less ynh_package_autoremove chmod 750 "$final_path" chmod -R o-rwx "$final_path" @@ -194,20 +195,12 @@ ln -sf /etc/uwsgi/apps-available/$app-caldav.ini /etc/uwsgi/apps-enabled/$app-ca #================================================= # GENERIC FINALIZATION -#================================================= -# SETUP LOGROTATE -#================================================= -ynh_script_progression --message="Upgrading logrotate configuration..." - -# Use logrotate to manage app-specific logfile(s) -ynh_use_logrotate --non-append - #================================================= # INTEGRATE SERVICE IN YUNOHOST #================================================= ynh_script_progression --message="Integrating service in YunoHost..." -yunohost service add uwsgi --log="/var/log/uwsgi/$app/$app.log" +yunohost service add uwsgi --log="/var/log/uwsgi/app/$app.log" yunohost service add supervisor --log="/var/log/supervisor/supervisord.log" #================================================= @@ -216,16 +209,8 @@ yunohost service add supervisor --log="/var/log/supervisor/supervisord.log" ynh_script_progression --message="Starting a systemd service..." # Start a systemd service -ynh_systemd_action --service_name="uwsgi" --action="restart" --log_path="/var/log/uwsgi/$app/$app.log" -ynh_supervisor_action --service_name="$app" --action="restart" --log_path="/var/log/supervisor/supervisord.log" #--line_match="line to match" - -#================================================= -# UPGRADE FAIL2BAN -#================================================= -ynh_script_progression --message="Reconfiguring Fail2Ban..." - -# Create a dedicated Fail2Ban config -ynh_add_fail2ban_config --logpath="/var/log/nginx/${domain}-error.log" --failregex="Regex to match into the log for a failed login" +ynh_systemd_action --service_name="uwsgi" --action="restart" --log_path="/var/log/uwsgi/app/$app.log" --line_match="spawned uWSGI" +ynh_supervisor_action --service_name="$app" --action="restart" --log_path="/var/log/supervisor/supervisord.log" #================================================= # RELOAD NGINX From 2189716c80154dff5b2cfa70342076dc14e7f502 Mon Sep 17 00:00:00 2001 From: yalh76 Date: Tue, 12 Apr 2022 23:21:06 +0200 Subject: [PATCH 15/26] Fix restore --- scripts/restore | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/scripts/restore b/scripts/restore index 404ef35..cdbc5c8 100755 --- a/scripts/restore +++ b/scripts/restore @@ -114,8 +114,20 @@ ynh_psql_execute_file_as_root --file="./db.sql" --database=$db_name ynh_script_progression --message="Restoring the systemd configuration..." ynh_restore_file --origin_path="/etc/uwsgi/apps-available/$app-web.ini" +chmod 400 "/etc/uwsgi/apps-available/$app-web.ini" +chown $app:$app "/etc/uwsgi/apps-available/$app-web.ini" +ln -sf /etc/uwsgi/apps-available/$app-web.ini /etc/uwsgi/apps-enabled/$app-web.ini + ynh_restore_file --origin_path="/etc/uwsgi/apps-available/$app-webdav.ini" +chmod 400 "/etc/uwsgi/apps-available/$app-webdav.ini" +chown $app:$app "/etc/uwsgi/apps-available/$app-webdav.ini" +ln -sf /etc/uwsgi/apps-available/$app-webdav.ini /etc/uwsgi/apps-enabled/$app-webdav.ini + ynh_restore_file --origin_path="/etc/uwsgi/apps-available/$app-caldav.ini" +chmod 400 "/etc/uwsgi/apps-available/$app-caldav.ini" +chown $app:$app "/etc/uwsgi/apps-available/$app-caldav.ini" +ln -sf /etc/uwsgi/apps-available/$app-caldav.ini /etc/uwsgi/apps-enabled/$app-caldav.ini + ynh_restore_file --origin_path="/etc/supervisor/conf.d/$app.conf" supervisorctl reread From 29a59fd898bebf179a0a6c6ea2499ebee1ea98be Mon Sep 17 00:00:00 2001 From: yalh76 Date: Wed, 13 Apr 2022 00:11:54 +0200 Subject: [PATCH 16/26] switch sessions to redis --- conf/development.ini.sample | 4 ++-- scripts/_common.sh | 2 +- scripts/change_url | 2 +- scripts/install | 8 ++++++-- scripts/remove | 32 ++++++++++++++++++------------ scripts/restore | 4 ++-- scripts/upgrade | 6 ++++-- scripts/ynh_redis | 39 +++++++++++++++++++++++++++++++++++++ 8 files changed, 75 insertions(+), 22 deletions(-) create mode 100644 scripts/ynh_redis diff --git a/conf/development.ini.sample b/conf/development.ini.sample index 4887ecb..1a614b4 100644 --- a/conf/development.ini.sample +++ b/conf/development.ini.sample @@ -278,12 +278,12 @@ preview_cache_dir = %(basic_setup.preview_cache_dir)s ### pyramid_beaker parameters ### -session.type = file +session.type = ext:redis # needed for "file" storage config : ; session.data_dir = %(here)s/sessions_data session.data_dir = %(basic_setup.sessions_data_root_dir)s/sessions_data # needed for many session storage type, but not for file (leave as empty for file) -session.url = +session.url = redis://localhost:6379/__REDIS_DB__ ## "Redis" storage config sample: # session.type = ext:redis diff --git a/scripts/_common.sh b/scripts/_common.sh index e74ed09..d825d8a 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -5,7 +5,7 @@ #================================================= # dependencies used by the app -pkg_dependencies="postgresql ghostscript git imagemagick iproute2 libfile-mimeinfo-perl libimage-exiftool-perl webp libmagic1 locales poppler-utils python3 python3-pip uwsgi uwsgi-plugin-python3 supervisor" +pkg_dependencies="postgresql ghostscript git imagemagick iproute2 libfile-mimeinfo-perl libimage-exiftool-perl webp libmagic1 locales poppler-utils python3 python3-pip uwsgi uwsgi-plugin-python3 supervisor redis-server" preview_pkg_dependencies="ffmpeg xvfb inkscape libreoffice" diff --git a/scripts/change_url b/scripts/change_url index 31a5a68..78148e6 100644 --- a/scripts/change_url +++ b/scripts/change_url @@ -139,7 +139,7 @@ chown $app:$app "$final_path/frontend/configEnv.json" ynh_script_progression --message="Starting a systemd service..." # Start a systemd service -ynh_systemd_action --service_name="uwsgi" --action="restart" --log_path="/var/log/uwsgi/app/$app.log" --line_match="spawned uWSGI" +ynh_systemd_action --service_name="uwsgi" --action="restart" --log_path="/var/log/uwsgi/app/$app-web.log" --line_match="spawned uWSGI" ynh_supervisor_action --service_name="$app" --action="restart" --log_path="/var/log/supervisor/supervisord.log" #================================================= diff --git a/scripts/install b/scripts/install index 4e1dcd5..51fa273 100755 --- a/scripts/install +++ b/scripts/install @@ -8,6 +8,7 @@ source _common.sh source ynh_supervisor +source ynh_redis source /usr/share/yunohost/helpers #================================================= @@ -146,6 +147,9 @@ chown -R $app:www-data "$datadir" #================================================= ynh_script_progression --message="Adding a configuration file..." +redis_db=$(ynh_redis_get_free_db) +ynh_app_setting_set --app=$app --key=redis_db --value=$redis_db + ynh_add_config --template="../conf/development.ini.sample" --destination="$final_path/backend/development.ini" chmod 400 "$final_path/backend/development.ini" chown $app:$app "$final_path/backend/development.ini" @@ -226,7 +230,7 @@ ln -sf /etc/uwsgi/apps-available/$app-caldav.ini /etc/uwsgi/apps-enabled/$app-ca #================================================= ynh_script_progression --message="Integrating service in YunoHost..." -yunohost service add uwsgi --log="/var/log/uwsgi/app/$app.log" +yunohost service add uwsgi --log="/var/log/uwsgi/app/$app-web.log" yunohost service add supervisor --log="/var/log/supervisor/supervisord.log" #================================================= @@ -235,7 +239,7 @@ yunohost service add supervisor --log="/var/log/supervisor/supervisord.log" ynh_script_progression --message="Starting a systemd service..." # Start a systemd service -ynh_systemd_action --service_name="uwsgi" --action="restart" --log_path="/var/log/uwsgi/app/$app.log" --line_match="spawned uWSGI" +ynh_systemd_action --service_name="uwsgi" --action="restart" --log_path="/var/log/uwsgi/app/$app-web.log" --line_match="spawned uWSGI" ynh_supervisor_action --service_name="$app" --action="restart" --log_path="/var/log/supervisor/supervisord.log" #================================================= diff --git a/scripts/remove b/scripts/remove index ed52b56..bc2ffac 100755 --- a/scripts/remove +++ b/scripts/remove @@ -8,6 +8,7 @@ source _common.sh source ynh_supervisor +source ynh_redis source /usr/share/yunohost/helpers #================================================= @@ -23,6 +24,7 @@ db_name=$(ynh_app_setting_get --app=$app --key=db_name) db_user=$db_name final_path=$(ynh_app_setting_get --app=$app --key=final_path) datadir=$(ynh_app_setting_get --app=$app --key=datadir) +redis_db=$(ynh_app_setting_get --app=$app --key=redis_db) #================================================= # STANDARD REMOVE @@ -31,20 +33,15 @@ datadir=$(ynh_app_setting_get --app=$app --key=datadir) #================================================= # Remove the service from the list of services known by YunoHost (added from `yunohost service add`) -if ynh_exec_warn_less yunohost service status $app >/dev/null +if ynh_exec_warn_less yunohost service status uwsgi >/dev/null then - ynh_script_progression --message="Removing $app service integration..." - yunohost service remove $app + ynh_script_progression --message="Removing uwsgi service integration..." + yunohost service remove uwsgi fi -if ynh_exec_warn_less yunohost service status $app-webdav >/dev/null +if ynh_exec_warn_less yunohost service status supervisor >/dev/null then - ynh_script_progression --message="Removing $app-webdav service integration..." - yunohost service remove $app-webdav -fi -if ynh_exec_warn_less yunohost service status $app-caldav >/dev/null -then - ynh_script_progression --message="Removing $app-caldav service integration..." - yunohost service remove $app-caldav + ynh_script_progression --message="Removing supervisor service integration..." + yunohost service remove supervisor fi #================================================= @@ -61,7 +58,7 @@ ynh_secure_remove --file="/etc/uwsgi/apps-enabled/$app-webdav.ini" ynh_secure_remove --file="/etc/uwsgi/apps-available/$app-webdav.ini" ynh_secure_remove --file="/etc/uwsgi/apps-enabled/$app-caldav.ini" ynh_secure_remove --file="/etc/uwsgi/apps-available/$app-caldav.ini" -ynh_systemd_action --service_name="uwsgi" --action="restart" --log_path="/var/log/uwsgi/app/$app.log" --line_match="spawned uWSGI" +ynh_systemd_action --service_name="uwsgi" --action="restart" #================================================= # REMOVE THE POSTGRESQL DATABASE @@ -104,11 +101,22 @@ ynh_remove_nginx_config ynh_script_progression --message="Removing dependencies..." # Remove metapackage and its dependencies +ynh_redis_remove_db "$redis_db" ynh_remove_nodejs ynh_remove_app_dependencies #================================================= # SPECIFIC REMOVE +#================================================= +# REMOVE VARIOUS FILES +#================================================= +ynh_script_progression --message="Removing various files..." + +# Remove the log files +ynh_secure_remove --file="/var/log/uwsgi/app/$app-web.log" +ynh_secure_remove --file="/var/log/uwsgi/app/$app-webdav.log" +ynh_secure_remove --file="/var/log/uwsgi/app/$app-caldav.log" + #================================================= # GENERIC FINALIZATION #================================================= diff --git a/scripts/restore b/scripts/restore index cdbc5c8..56a5e6c 100755 --- a/scripts/restore +++ b/scripts/restore @@ -138,7 +138,7 @@ supervisorctl update #================================================= ynh_script_progression --message="Integrating service in YunoHost..." -yunohost service add uwsgi --log="/var/log/uwsgi/app/$app.log" +yunohost service add uwsgi --log="/var/log/uwsgi/app/$app-web.log" yunohost service add supervisor --log="/var/log/supervisor/supervisord.log" #================================================= @@ -147,7 +147,7 @@ yunohost service add supervisor --log="/var/log/supervisor/supervisord.log" ynh_script_progression --message="Starting a systemd service..." # Start a systemd service -ynh_systemd_action --service_name="uwsgi" --action="restart" --log_path="/var/log/uwsgi/app/$app.log" --line_match="spawned uWSGI" +ynh_systemd_action --service_name="uwsgi" --action="restart" --log_path="/var/log/uwsgi/app/$app-web.log" --line_match="spawned uWSGI" ynh_supervisor_action --service_name="$app" --action="restart" --log_path="/var/log/supervisor/supervisord.log" #================================================= diff --git a/scripts/upgrade b/scripts/upgrade index 40d84b1..c40f3e5 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -8,6 +8,7 @@ source _common.sh source ynh_supervisor +source ynh_redis source /usr/share/yunohost/helpers #================================================= @@ -29,6 +30,7 @@ datadir=$(ynh_app_setting_get --app=$app --key=datadir) api_key=$(ynh_app_setting_get --app=$app --key=api_key) session_secret=$(ynh_app_setting_get --app=$app --key=session_secret) website_title=$(ynh_app_setting_get --app=$app --key=website_title) +redis_db=$(ynh_app_setting_get --app=$app --key=redis_db) #================================================= # CHECK VERSION @@ -200,7 +202,7 @@ ln -sf /etc/uwsgi/apps-available/$app-caldav.ini /etc/uwsgi/apps-enabled/$app-ca #================================================= ynh_script_progression --message="Integrating service in YunoHost..." -yunohost service add uwsgi --log="/var/log/uwsgi/app/$app.log" +yunohost service add uwsgi --log="/var/log/uwsgi/app/$app-web.log" yunohost service add supervisor --log="/var/log/supervisor/supervisord.log" #================================================= @@ -209,7 +211,7 @@ yunohost service add supervisor --log="/var/log/supervisor/supervisord.log" ynh_script_progression --message="Starting a systemd service..." # Start a systemd service -ynh_systemd_action --service_name="uwsgi" --action="restart" --log_path="/var/log/uwsgi/app/$app.log" --line_match="spawned uWSGI" +ynh_systemd_action --service_name="uwsgi" --action="restart" --log_path="/var/log/uwsgi/app/$app-web.log" --line_match="spawned uWSGI" ynh_supervisor_action --service_name="$app" --action="restart" --log_path="/var/log/supervisor/supervisord.log" #================================================= diff --git a/scripts/ynh_redis b/scripts/ynh_redis new file mode 100644 index 0000000..9d6257d --- /dev/null +++ b/scripts/ynh_redis @@ -0,0 +1,39 @@ +#!/bin/bash + +# get the first available redis database +# +# usage: ynh_redis_get_free_db +# | returns: the database number to use +ynh_redis_get_free_db() { + local result max db + result=$(redis-cli INFO keyspace) + + # get the num + max=$(cat /etc/redis/redis.conf | grep ^databases | grep -Eow "[0-9]+") + + db=0 + # default Debian setting is 15 databases + for i in $(seq 0 "$max") + do + if ! echo "$result" | grep -q "db$i" + then + db=$i + break 1 + fi + db=-1 + done + + test "$db" -eq -1 && ynh_die --message="No available Redis databases..." + + echo "$db" +} + +# Create a master password and set up global settings +# Please always call this script in install and restore scripts +# +# usage: ynh_redis_remove_db database +# | arg: database - the database to erase +ynh_redis_remove_db() { + local db=$1 + redis-cli -n "$db" flushall +} From 9928f73ae7648b681a84ff9f25cb7bed1f499ac9 Mon Sep 17 00:00:00 2001 From: yalh76 Date: Wed, 13 Apr 2022 19:31:29 +0200 Subject: [PATCH 17/26] Fix upgrade --- scripts/upgrade | 1 - 1 file changed, 1 deletion(-) diff --git a/scripts/upgrade b/scripts/upgrade index c40f3e5..661062c 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -150,7 +150,6 @@ pushd "$final_path/backend" ynh_exec_warn_less pip install -r requirements-full-preview-generator.txt ynh_exec_warn_less pip install -r requirements-db-postgres.txt ynh_exec_warn_less pip install -e "." - mkdir sessions_data sessions_lock previews ynh_exec_warn_less alembic -c development.ini upgrade head set +u; deactivate From bf895e9cd22b6ee01771df1ba7733de5a641b7d4 Mon Sep 17 00:00:00 2001 From: yalh76 Date: Wed, 13 Apr 2022 19:31:55 +0200 Subject: [PATCH 18/26] missing redis_db --- scripts/change_url | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/change_url b/scripts/change_url index 78148e6..76a90e0 100644 --- a/scripts/change_url +++ b/scripts/change_url @@ -40,6 +40,7 @@ datadir=$(ynh_app_setting_get --app=$app --key=datadir) api_key=$(ynh_app_setting_get --app=$app --key=api_key) session_secret=$(ynh_app_setting_get --app=$app --key=session_secret) website_title=$(ynh_app_setting_get --app=$app --key=website_title) +redis_db=$(ynh_app_setting_get --app=$app --key=redis_db) #================================================= # BACKUP BEFORE CHANGE URL THEN ACTIVE TRAP From 31c26e5f049d5907815084d7b0c762f4621d168a Mon Sep 17 00:00:00 2001 From: yalh76 Date: Fri, 15 Apr 2022 00:22:31 +0200 Subject: [PATCH 19/26] Fix upgrade --- scripts/upgrade | 1 - 1 file changed, 1 deletion(-) diff --git a/scripts/upgrade b/scripts/upgrade index 661062c..55da268 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -159,7 +159,6 @@ pushd "$final_path/backend" popd pushd "$final_path" - echo 'nodeLinker: node-modules' >> .yarnrc.yml ynh_exec_warn_less yarn install ynh_exec_warn_less ./build_full_frontend.sh popd From 47192fdd26a29a1c2f62b71ab28118aaa3876ec0 Mon Sep 17 00:00:00 2001 From: yalh76 Date: Wed, 20 Apr 2022 20:49:42 +0200 Subject: [PATCH 20/26] Enable ldap --- conf/app.src | 4 ++-- conf/development.ini.sample | 4 +++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/conf/app.src b/conf/app.src index 4993d22..96f2cc4 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://github.com/tracim/tracim/archive/refs/tags/release_04.01.03.tar.gz -SOURCE_SUM=317c427f35f85e2996499b466976b800cd158193f7261a44b0003198364c698b +SOURCE_URL=https://codeload.github.com/yalh76/tracim/tar.gz/533b279049a52072e83a3187e91bed344d40d7c9 +SOURCE_SUM=e3af819f84c1531c63c7194512e12bbc240ef455c780b1d1a32e00bf768fe5e8 SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.gz SOURCE_IN_SUBDIR=true diff --git a/conf/development.ini.sample b/conf/development.ini.sample index 1a614b4..e4508fc 100644 --- a/conf/development.ini.sample +++ b/conf/development.ini.sample @@ -344,10 +344,12 @@ api.key = %(basic_setup.api_key)s ## and ordered by priority ## auth_type 'remote' is not allowed there, set remote_auth_header. auth_types = internal -;auth_types = internal,ldap +auth_types = internal,ldap # If auth_type is ldap, uncomment following ldap_* parameters ## LDAP server address ldap_url = ldap://127.0.0.1:389 +## ldap_bind anonymous mode : if true bind as anonymous, password and dn will not been checked. +ldap_bind_anonymous = True ## Bind dn to identify the search ldap_bind_dn = # example: From 68a52f0cf848a243e543fcef1888fbce2b58dc79 Mon Sep 17 00:00:00 2001 From: yalh76 Date: Wed, 20 Apr 2022 20:56:34 +0200 Subject: [PATCH 21/26] Enable anonymous smtp authentication --- conf/app.src | 4 ++-- conf/development.ini.sample | 16 +++++++++++----- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/conf/app.src b/conf/app.src index 4993d22..682bb68 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://github.com/tracim/tracim/archive/refs/tags/release_04.01.03.tar.gz -SOURCE_SUM=317c427f35f85e2996499b466976b800cd158193f7261a44b0003198364c698b +SOURCE_URL=https://codeload.github.com/yalh76/tracim/tar.gz/2d83f48e43e0ce029368202151cd98d6b8dc9c81 +SOURCE_SUM=9709dc0139b3d267a153e2cd1e9e3dc18836f5597bd6bc6a4c7060966e3ef86e SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.gz SOURCE_IN_SUBDIR=true diff --git a/conf/development.ini.sample b/conf/development.ini.sample index 1a614b4..da697d5 100644 --- a/conf/development.ini.sample +++ b/conf/development.ini.sample @@ -521,7 +521,7 @@ webdav.ui.enabled = True #### ## send some notification when user make specific action in Tracim -; email.notification.activated = True +email.notification.activated = True ## you can enable or disable if invited user to space will be notified ## on this space by default. ## NB: new users will not being notified until they login to Tracim a first time @@ -542,10 +542,16 @@ email.notification.smtp.port = 25 # email.notification.smtp.user = your_smtp_user # email.notification.smtp.password = your_smtp_password -# enable implicit ssl if you are using implicit smtp with encryption port like 465 -# by default, Tracim will try to use explicit smtp encryption using starttls, and unencrypted -# connection as fallback. -; email.notification.smtp.use_implicit_ssl = False +# Enable/disable authentification. +# False mean anonymous smtp connection, it skip user/password login step. +email.notification.smtp.authentication = False + +# SMTP encryption method valid values are: +# - default: use smtp encryption using starttls, and unencrypted connection as fallback. +# - SMTPS: use encrypted connection directly on port like 465 +# - unsecure: don't use encryption, use it with caution ! +# default value: default +email.notification.smtp.encryption = unsecure ### Headers ### ; email.notification.from.default_label = Tracim Notifications From 32975fb4d1d2b8cc3a2fe52dd22abdc71c2707ee Mon Sep 17 00:00:00 2001 From: yalh76 Date: Wed, 20 Apr 2022 23:06:39 +0200 Subject: [PATCH 22/26] Update development.ini.sample --- conf/development.ini.sample | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conf/development.ini.sample b/conf/development.ini.sample index e4508fc..924cbee 100644 --- a/conf/development.ini.sample +++ b/conf/development.ini.sample @@ -343,7 +343,7 @@ api.key = %(basic_setup.api_key)s ## Auth type list (internal or ldap), can be a list of item separated by ',' ## and ordered by priority ## auth_type 'remote' is not allowed there, set remote_auth_header. -auth_types = internal +;auth_types = internal auth_types = internal,ldap # If auth_type is ldap, uncomment following ldap_* parameters ## LDAP server address From 1f0aa033217c7b3210a74fa6657fd1568b4f4350 Mon Sep 17 00:00:00 2001 From: yalh76 Date: Mon, 25 Apr 2022 20:12:16 +0200 Subject: [PATCH 23/26] Update app.src --- conf/app.src | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/conf/app.src b/conf/app.src index 96f2cc4..f3f2f6c 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://codeload.github.com/yalh76/tracim/tar.gz/533b279049a52072e83a3187e91bed344d40d7c9 -SOURCE_SUM=e3af819f84c1531c63c7194512e12bbc240ef455c780b1d1a32e00bf768fe5e8 +SOURCE_URL=https://github.com/tracim/tracim/archive/ef48ed123d5bd370742f12acbac18f2f11170260.tar.gz +SOURCE_SUM=fec5ec3f82d8a87f6c8238e12e4fef00bc7f0c06b80b07cbbc3a573f83abf439 SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.gz SOURCE_IN_SUBDIR=true From 5da375081a09c561cc46807bd702d0fe356721b0 Mon Sep 17 00:00:00 2001 From: yalh76 Date: Thu, 28 Apr 2022 18:15:35 +0200 Subject: [PATCH 24/26] Update app.src --- conf/app.src | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/conf/app.src b/conf/app.src index f3f2f6c..4e5359f 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://github.com/tracim/tracim/archive/ef48ed123d5bd370742f12acbac18f2f11170260.tar.gz -SOURCE_SUM=fec5ec3f82d8a87f6c8238e12e4fef00bc7f0c06b80b07cbbc3a573f83abf439 +SOURCE_URL=https://github.com/tracim/tracim/archive/refs/tags/release_04.02.00.tar.gz +SOURCE_SUM=b8d2ed27a94962e9c10a03c2548cf489a3b16cf3d3302cec1fda4b065d5273c3 SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.gz SOURCE_IN_SUBDIR=true From 86d760805115a0d84803341842886ae3947290ae Mon Sep 17 00:00:00 2001 From: yalh76 Date: Thu, 28 Apr 2022 20:41:30 +0200 Subject: [PATCH 25/26] Adding auto-updater --- .github/workflows/updater.sh | 22 +++++++-------- .github/workflows/updater.yml | 50 +++++++++++++++++++++++++++++++++++ manifest.json | 2 +- 3 files changed, 60 insertions(+), 14 deletions(-) create mode 100644 .github/workflows/updater.yml diff --git a/.github/workflows/updater.sh b/.github/workflows/updater.sh index 72eb5cb..d6241f0 100755 --- a/.github/workflows/updater.sh +++ b/.github/workflows/updater.sh @@ -9,9 +9,6 @@ # Since each app is different, maintainers can adapt its contents so as to perform # automatic actions when a new upstream release is detected. -# Remove this exit command when you are ready to run this Action -exit 1 - #================================================= # FETCHING LATEST RELEASE AND ITS ASSETS #================================================= @@ -20,12 +17,16 @@ exit 1 current_version=$(cat manifest.json | jq -j '.version|split("~")[0]') repo=$(cat manifest.json | jq -j '.upstream.code|split("https://github.com/")[1]') # Some jq magic is needed, because the latest upstream release is not always the latest version (e.g. security patches for older versions) -version=$(curl --silent "https://api.github.com/repos/$repo/releases" | jq -r '.[] | select( .prerelease != true ) | .tag_name' | sort -V | tail -1) -assets=($(curl --silent "https://api.github.com/repos/$repo/releases" | jq -r '[ .[] | select(.tag_name=="'$version'").assets[].browser_download_url ] | join(" ") | @sh' | tr -d "'")) +tag_name=$(curl --silent "https://api.github.com/repos/$repo/releases" | jq -r '.[] | select( .prerelease != true ) | .tag_name' | sort -V | tail -1) +version=$(curl --silent "https://api.github.com/repos/$repo/releases" | jq -r '.[] | select( .prerelease != true ) | .name' | sort -V | tail -1) +assets=($(curl --silent "https://api.github.com/repos/$repo/releases" | jq -r '[ .[] | select(.tag_name=="'$tag_name'").tarball_url ] | join(" ") | @sh' | tr -d "'")) # Later down the script, we assume the version has only digits and dots # Sometimes the release name starts with a "v", so let's filter it out. # You may need more tweaks here if the upstream repository has different naming conventions. +if [[ ${version:0:8} == "version " || ${version:0:8} == "Version " || ${version:0:8} == "VERSION " ]]; then + version=${version:8} +fi if [[ ${version:0:1} == "v" || ${version:0:1} == "V" ]]; then version=${version:1} fi @@ -67,15 +68,8 @@ echo "Handling asset at $asset_url" # Here we base the source file name upon a unique keyword in the assets url (admin vs. update) # Leave $src empty to ignore the asset case $asset_url in - *"admin"*) + *"tarball"*) src="app" - ;; - *"update"*) - src="app-upgrade" - ;; - *) - src="" - ;; esac # If $src is not empty, let's process the asset @@ -104,9 +98,11 @@ cat < conf/$src.src SOURCE_URL=$asset_url SOURCE_SUM=$checksum SOURCE_SUM_PRG=sha256sum + SOURCE_FORMAT=$extension SOURCE_IN_SUBDIR=true SOURCE_FILENAME= +SOURCE_EXTRACT=true EOT echo "... conf/$src.src updated" diff --git a/.github/workflows/updater.yml b/.github/workflows/updater.yml new file mode 100644 index 0000000..5f1dcc1 --- /dev/null +++ b/.github/workflows/updater.yml @@ -0,0 +1,50 @@ +# This workflow allows GitHub Actions to automagically update your app whenever a new upstream release is detected. +# You need to enable Actions in your repository settings, and fetch this Action from the YunoHost-Apps organization. +# This file should be enough by itself, but feel free to tune it to your needs. +# It calls updater.sh, which is where you should put the app-specific update steps. +name: Check for new upstream releases +on: + # Allow to manually trigger the workflow + workflow_dispatch: + # Run it every day at 6:00 UTC + schedule: + - cron: '0 6 * * *' +jobs: + updater: + runs-on: ubuntu-latest + steps: + - name: Fetch the source code + uses: actions/checkout@v2 + with: + token: ${{ secrets.GITHUB_TOKEN }} + - name: Run the updater script + id: run_updater + run: | + # Setting up Git user + git config --global user.name 'yunohost-bot' + git config --global user.email 'yunohost-bot@users.noreply.github.com' + # Run the updater script + /bin/bash .github/workflows/updater.sh + - name: Commit changes + id: commit + if: ${{ env.PROCEED == 'true' }} + run: | + git commit -am "Upgrade to v$VERSION" + - name: Create Pull Request + id: cpr + if: ${{ env.PROCEED == 'true' }} + uses: peter-evans/create-pull-request@v3 + with: + token: ${{ secrets.GITHUB_TOKEN }} + commit-message: Update to version ${{ env.VERSION }} + committer: 'yunohost-bot ' + author: 'yunohost-bot ' + signoff: false + base: testing + branch: ci-auto-update-v${{ env.VERSION }} + delete-branch: true + title: 'Upgrade to version ${{ env.VERSION }}' + body: | + Upgrade to v${{ env.VERSION }} + draft: false + diff --git a/manifest.json b/manifest.json index 65dd630..5d27e41 100644 --- a/manifest.json +++ b/manifest.json @@ -5,7 +5,7 @@ "description": { "en": "Collaborative platform software intended for (not only technical) team collaboration." }, - "version": "4.1.3~ynh1", + "version": "4.2.0~ynh1", "url": "https://www.tracim.fr", "upstream": { "license": "AGPL-3.0-or-later,LGPL-3.0-or-later,CC-BY-SA-2.5,MIT", From 0f4d0b3e77e7907b3da26fca414302b8856a1c2d Mon Sep 17 00:00:00 2001 From: yunohost-bot Date: Thu, 28 Apr 2022 18:41:34 +0000 Subject: [PATCH 26/26] Auto-update README --- README.md | 2 +- README_fr.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 779280b..2967614 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,7 @@ If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/in Tracim is a collaborative platform software intended for (not only technical) team collaboration. It is simple to use, offers a user-friendly interface and runs on every computer. It is very valuable for R&D teams, assocations, remote collaboration. -**Shipped version:** 4.1.3~ynh1 +**Shipped version:** 4.2.0~ynh1 **Demo:** https://www.algoo.fr/fr/tracim/demo diff --git a/README_fr.md b/README_fr.md index 56e44cb..04282ce 100644 --- a/README_fr.md +++ b/README_fr.md @@ -14,7 +14,7 @@ Si vous n'avez pas YunoHost, regardez [ici](https://yunohost.org/#/install) pour Tracim is a collaborative platform software intended for (not only technical) team collaboration. It is simple to use, offers a user-friendly interface and runs on every computer. It is very valuable for R&D teams, assocations, remote collaboration. -**Version incluse :** 4.1.3~ynh1 +**Version incluse :** 4.2.0~ynh1 **Démo :** https://www.algoo.fr/fr/tracim/demo