From 23b2f3aca2ed44b626a96b04d17234b191a41dfa Mon Sep 17 00:00:00 2001 From: S4NKALP Date: Sat, 27 Apr 2024 03:22:47 +0545 Subject: [PATCH] initial --- .gitignore | 1 + LICENSE | 674 ++++++++++++++++++++++++++++++++++++++++++ images/favicon.svg | 76 +++++ images/screenshot.png | Bin 0 -> 77485 bytes index.html | 38 +++ script.js | 193 ++++++++++++ style.css | 167 +++++++++++ 7 files changed, 1149 insertions(+) create mode 100644 .gitignore create mode 100644 LICENSE create mode 100644 images/favicon.svg create mode 100644 images/screenshot.png create mode 100644 index.html create mode 100644 script.js create mode 100644 style.css diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ + diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..f288702 --- /dev/null +++ b/LICENSE @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 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 General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is 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. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + 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. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + 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 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. Use with the GNU Affero General Public License. + + 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 Affero 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 special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU 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 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 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 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. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. diff --git a/images/favicon.svg b/images/favicon.svg new file mode 100644 index 0000000..32fa384 --- /dev/null +++ b/images/favicon.svg @@ -0,0 +1,76 @@ + + + + diff --git a/images/screenshot.png b/images/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..cda681ee7e373cef3f27501d3d8d3860ec8add96 GIT binary patch literal 77485 zcmeFZbyQr<8z$HU4cb70C(sEV2<}b;!7X@jcXxtA(}X~92oT)e-QC??g1b9x^L@YB z**!CR_MDlW{cG;waH{Wp>v^T#daJ1WG{N$+UocRKPyqk{hJ?6?A^?Es2LK>&qP&9L z;h`4T0l?QkgcPmi79cj-n5h36Le4u)yTrtceiAn z7ghhiUamy6Ys-i0bGpIR?EVa(-?KYEo$FVi$S@;XS+G4Gx%O7ZpRYG3x*irC27nIx zc^wT@kCmcy2}0N!1i7i6?yY^Dnz-t&|nIE=8T{bF_TZG z)HN!Y}J@HX5c$Z^4zwyHOus}`DC&h#sy)IFnaochtnWQ(-kB>0O&expZzj`UP` z_kMd#^hWAFA_t^jB3u3?igIk{ZS}t0Gv!O#Rg3^*O8JTUTb49u_hk~!neQ_A@qd1z z@;+Wh19o7AI$OK+*Ma8qHnDa$*6^J7%5MM}v*wTEI2>YJW|4=bo20m`KT)pc zwSl>@?=hTM1n3Z9noc-8uFuD}-u1veB*u5&u$=a=Fl1p$Mzr;|;?WeMXtfEMNpVbH z$@~5MU=f5e9tLtE4p8dmb-&md%J^b~i*(M)>%MChE?^*Ydg_)=DZ2iHz65^-{GEK| z``{4A%JFu`Gbxzd;^O|c*b@5IUguaWZzbDW>p3r)t!nX5|apsrH=6U zD}y$%)SV7L?@ucB1`pICedx`hT{shPoLO}mg7xX)G!PyeX7s4Ou8C36@vwQ~6bqBr z9)Z454hO2t4+hCkR7359!xs!}$(0YJ{P-(5J9H4!pB=f~iGwQ4c|#jP4!>=AA>wym z$k_&mNa>jqY3+>~Ovqr6fL((0NAn-(vczB!v;i%U9j`S(oq)s1cim>15ZB` zRFVQWEPn4BFAapC03%BuI({L-nQy!H^rYSi1UY!}NX`qsA?8^LaVcgyQm_08vd2Qo z&$;QA{5t>7#Jm3iiqxU#r|JRXs|KltUH=sS^!Mn%={=YvsWJB*W>+n7`B%@8i4B(d zPGC&iP3WO2PWFpG@2Yco?+Nq^*&l`{fGf#eW>Cm!a@~z~_xY4&CCLhMUeD>50x3c) zBrl7neVDut76Zi9#Rgi|9>rp+;C6D;?fiyg?4aRYOR?4U8}I^w{@v=Lh`r;>B)(bI zhaN~j4^&4npY=%u3>!chqtOqb`KKW{r$N=fqfcv-%@yjBM_v+a6&wOeFwyfWFQ0Lt z(UJqXI8fzPpA&q@V^Pl{#!XX3#~zTj&Tgq(uR0CKYoew<#9}y#-l|3-{j9U|8rHv+ z>nBKft0FYQakR8@ibrAC5ZoJgK9Oj*4GlAZs?9hiS#;L0xI={Z2|mOo?#hiE6dqm3 z$r_d0?2{H;Fpx|1n`W)|Bf*f8CI~(R*pG9a-Q*vk4<1no@Rw|szv}|(8FKM`U`^0D zLbcL|ifo&`-sRlUk~@H5N&Wn(C+(NFUv5 zZkFu%Y1vVe=YNbJf_PxykrssqS7K>e=ysaTNiAjUH;yhhaqbuQ3yN`9k`?<+Q4>e{ zFL3`;7io;tNc9unR*FFL9_F#s(O!vn^Rg>1!EnUU2yJ$H2il1P8KsVZnDlSl&1?z&TM-(oz|?fIr(}6%;d~%bHKrXasnM7Xp5ksq2L8oqA7sHEpnBrtBkFSpLHfzZ zs0fAe1(p^rNN@bKa~~~H-TNx=8rRk}1B>^WR2QT~h*?z3geRFG4`ep zf8E2=@b)ktX!JZsL;KEtJbul|Of;Nu`xF%-`y3Vi%z1k+-<1>7uyWe~X1m*NnH;6x zm(2K%LvJm79g+4p8JxMYIL#z-Qd7+#-6`ECG3pk}U!`W26x63gjvImAv^BCj)ML$x zRZk_v9O5xDcyG?G-Y|rwm0A+9;%05)PjdZ$rN@fb=QJ|6JexD>#W1N4$_ak1Pd9)H z+#i_%<+2h&cGAl4IQd2>jW{l4^Vu0%;a(TN0A zLXh>)l%2ozt&bdy3a7sf@XGZo&+~5s34|9v&q-(eR?S|PiwF%jLgiu-VMlIwyEFB+{MX+i zVS#Js!6cyz$~SIqHF{Z-Pr2vOLj>)o0m)SVc!1T8KMY~?-tA&(DKnb=(oC|uRrg>~ zTdSbBm>}VH7>mXY3AZ_(w;gc%wc(V(5XKZUon8){BeGT ztDfBCOe{@_$NIpU@Skw;qTDid-ib(@wqcnFdGw4{!^Yp=zx*>pEV1{^!qsvw9{brM>nx7z#kQ<(^u|mgv^lUu9x1N? z(H04!mNe5nxuYwP4hCL-5P(oeFIf<#l!WD$($bFzI33vh0GWF-T@!zEE4cZ@B;wBA zNvHO%Pw$9xNvh=5(BKTBp5I)kZ26x8CzOJ5x-$M*)#CtSp7sE-D$KI!2XgBJYiyvs z`cUcH8q>0yhfJgfw=6uC5gH4*|M`;-3ukM5$cefH4 zkaXP4UKa&%6vv@+s$BJ|%s)}|dA7LnWtgZS_-7meUYYN51n{0f-Y<(I?DG0~(1=9S z&XQyJ@8|#F->WOIa%LW7_oioUuqc7@k>yQ*_2({yhMm9UZ+`fX3IV^g70JrhS4!DA z?I6~=(m1)e*f6xg`_>wnMSbTwK3}T~fZy&ZbBiIDi2R@Uku>97hW%0Hb0wyc#PYI= zaDppo4T)flR>E{|(8P;>!@x(h-!J6d}#1Ya=xZ>az8V+CdA;!SRTsy<(vIoe+F(0M-kvvQ!d_)4(&JW)ff zs@mLb3bjBKuUyfW`Xl`?;VZSWBL9rTsDUL0?+@>z0k+6h!{&KY=4k5WJ}d!AAfM;z zs}$>&M<(z3!z3-aErROC^QyHecS;4#`pEzZW!2#(<0$!_wC^w0>ED}#HJd~vkV7fmf6Jx21wntaP9lAH6z2dG7dH4 zDin-9ufK+89bbnM3(nL0CcnwGfTKDxd{Dgw7OZzTk`bM3;fKI@t(5b2YU8 zxBIW6IyT(xVFM7v3kSDK>fthx*j)#)TeJu=yH#2OM}nTHohlh zbQj_?8B*uWqBu~T5S%bceIfvxh>}>JIRN;|;=bV2Yk$Hf=HM9si2v|fBv|zI7YZf} zAEFPm8HQ{C6yL{-z=N9QZ&tK(&u{?7{|<)V&8{5pM|glw$jCsrtrE@zAQzO*EU5zT z10-*L5WV`QTIl@=);Xb*rJw7$GWA;h03J))}~J-`8JedKhogfo7}^ZG3C{G zVt3EIm&wOVlawDu$Cr=uGEzMZuOAG=$t39{IcbB<0FyukLW%-7K@=RFXWILsxlh@V zkEE$Vb{Tt^DTUqy0{gGZiIF=LtZ0feA@OYM)kZ^#V1Ui^+pqcx?Ftgo@Tm}JKeajr zK$t9%K23icnVQ8VXVZoKEB-PQuGvIK~`6 zq;@N~Q}>UQ*%QMS8l#fgn7jT=w>mYYEfn`7k61u2tKMKRuwTXV$GPWJE)(KZ)$|Pk)@L`rA7Xf^vkhMr!pre&a*x4Rvi^=RyI< z@0(J$!#BQ?x(KHAK;%F3hZSh72Qi*D4>S}l?5Rj{{eW~6NZogs-bVE^Q^z@*K7(;( z%O`;HPscPxo2xHRWyhqy7Ari!ny!l7f75@qty$aIj|VX66gz3vtXOdD?~`s$KM9=O zO>J7>YareU1r$X=#Rv8k8FfTc;Dx0 z_jfBl4Es?2w>9ado|Lcr(9-!@{tOS${Xq_-z@s3E>0||%Lvw#dP65aet|suySKMu? z@(iDm0j+N&{@dbEcvxcCV&rvK1S<{zz*ll#>N4uJT=Hx97^=i%TFNu=XJ^+Apphy}*dS`m150W4TcA7#t5g=g0 zKWL@5c!2jtyYDj);FA|l9Sws~!Wo5?zz?i1CD69f`!V*Q-c=h3K-TYPVu%tfN&)v$ zU4{Rtu0zP7$A%k5Ro?RD_y_8)2q6Q07q@ly~*uUtB@6RH% z53;q!fdfEMf_Y!_f9?UKTmEP0m0{5o!foTi2Kcxn2WX87i9gW1)`tOOzk>m{zDYzm z!i594)*xQ{r}_gJJ2d$xfdJtK?vJj{Ncg4zz%mn#Rht7-Egn38Eg<$KF4EUwF>Mtr z0d6OJGcN*gI3_seLiG}Zc5;$1T#XmU7%y{Nk#a;44o18mLYsJur%r!$0K7)F-JZ6O z-7u*rj5tHup@wAy(UHuw=tv=oco}dZ(#!s?#KsveAZ@>rXvIan)%uo}k*RG&>XqV^ zrA=Lj$F8Hf#LFP@g2U54QU`#xm4UqFK7_)9z*adcS*;~)H_hj;nTVj{<_FKv98z#I z4cuzbUS9rx1*Q8dftW7MO#078Iv%6}1BPvbThYe^Kr^rgz!>`Uy6$Bo%?Q4b>t%yA zd|;bw;o_H#^dRsN*ZyTAtqa*n3AcbX0I*GVfac3aIv#XK^}nJ1SH^ceA^H zE}c!by?xC6_X5lzdqL*GUOIp0vE)7Tv2N7we}f< z_kNiF3?DH)M9$@(LasDxk=U9rgXDJP7Y(3dKCFvrhmLJHXx_u+W0B>&=u9L`_ZrNm z{49rk@(oMzvU}WHME#$q`Tu$P)c%XK58g}lQmpDruWHp5yi&>@JW=He`S~srcrsgA zzyQ~Nv9(;ugYH@mu?pr5V0_*t^7bMgbYH<>)YySFQ2`yo~`2x z{|fAVv6$|W4bo&UrJH&`@VI99Vzf`?RiYt3pD`2`s|RAyR#FX{0Qf@PzV9LM@QR+T@q@sOP74I`b9zj4@k=-ZX7Ep(672B7|7D#|o4)R|#HnDn;GDoz zN?xAY6sZJ##~82r$7(Xt%MTtb zA5%YksDA<_4i(#BFj-g?VlP;R&aHOWk_!BYxtTXY$JT|&R z!B`~hYr5@Sw!2Ly1gxc;ZS%Dm=N`8tlmcG--g=S8$8pDvaE$DXA@Fx?ya75Ir)O&K zCNUZ)u6W>h|4<5dM`DjE>e^}UYB`^O3R?UwHw5tj<=wl;9P@JDzGjB;UL zuhTv`-*c|HdPbx2+O|R%`~9pDd@$g42;;lp_;fw^1^J-bw-+D%Sg-*w8|26gEo0{~ z5_sL1$x-g830!-9F!Z7kmr!;pLC!3T>AyVRuHh~6CAB%&Bj;P$iI&p_p{^&Qs6>C8 z$w&=+)3OHMq3z|B2`25gFV7~YHMGhKk`bG`t}G2VFHD_!RaDU$y7SipSr-r4ap=t4 zJ7)&C*KkvGynfvrQc7fIU^2Rxp&=&K8Ml_)P|WB3fhYdfeh4 zbHX7$Vtgzc~`mY8+D;?%eB0KT=jBhlq zP96Fy%!kDlH}T`L42c<0jqA+2C*g1r93)5}ySLHL{TTVekw)Uq6N zs$__AkTtuFDS=&&SZs!mLt{`f_y~sznPqmezcM9UUL7?qAaG2Dd ziB=zxCX^^#E5^R~lY*MkV!Z%=P*_Da_C}pbgMoSty&9pjc8mJ^9Id{(iXEfkJ1T>P zzsq<=^RDD0S4Ff*GEzB*>RMDv4E>N=R}Rw*>Mf=WO?PAuPQ=FRC57%0aG%@{8SuD#k~uTr--k}Jbm8lNyp|*|B??= z4;Q0k$EsoO35xkVky;{&Tv5(=d~gF@qLI8;_i`fk{A~AKFmooZSNj;l655q?Cztb$ z0#pLbxIb`Tplsb>u{=L*Rx}t4iR;rwO}wx}1C)Z$8&Zi06QqbgsJwA056~_k*$#Xh ze>Mh}S`V)r$SKpPk+=Prw|t<2T3HZBGB8l&#n_%8H^fk-ZRsdy`u{TIfNoE$dns5u z7urS~aOm{guF_wg1ZrZvkC_ZGO|GEjn+0lY`r_&ZSR?EqFSbHlJ5X5H)sLU=Pfn?x z1xJM)r2V}Q1^BU+CLsi(BjeltH32VkJ>VdTn`>wYj_URNAp& zKNK4!F{M~@ZWuha&*!IOx=zuDD#@Bi-31H=BE2_53oDD6oU+-IWr-7k>o|TW-OS0U zeQ$m->KXctA*^9j&WfQM=KP7PICsqW!-06%crF|Axss(aRi-yZes@pJOC=?le1lr9 zer3R9jdv+Wlbmz=X2WG9<_q5`+^YcoRng2bCim{OW%<-0Lp#&{e7R&4HZ(N0toQTz z{4NI|*&m3JId3MGqbrNj?@TxSO`%I)t!nfQhaFYard=;pTF9tXDYf5cep zJI}t@01>3io%avj$IPp?BkXP8g~;)iS;TqgN6opr;UyRSz8wHVtyNp z6;?H6;@moE0~63ujNXj{Lzl)xsEFF%%=9Z+Aro^zB=Sg-#q%2=JGySkH_bPQRh&B? zF_`#QRKT1D2T2Ic2@b_$EuSZga_dbOGEP&)jV^xfq8YQXugpR@{Bml&Ffqpdb>gQS zD>pyFyfogC2;CP9y=VW?sH}mIv5$EDL`s!5MZdB^SL#BpbJ$T&N?XA;aDw0yuJBM! zqcr*ZCGEpnj?PCvg~XLI$m}Pxef6mRxhat{0K&!Z*WHJAgP~c-L8@thWj_0{&RRIc>@8<{l7YsEGi_v;_UpCH+ zm$G7CDOA*nnG7xLOhJbbM;=PFFD$UKJtIEe&0Sr@lJ?+SbD?;q;zQFkHYB=dOOLqK zr+Qi{ErX0W1u)9+8qz_jbd=mK-x}6Vh)ui} zVaiF)(?NmV%Jm3CXT4**&QsG#XPl*G8EzN<9Q9kD5jHc~lu zPHF2BLY1pD-lb*Nn({dC9p1F8=jtJs;Ezx0&ZiUu+%r?aN}7zi`D#=DJ})8ES_^3P zKu7k^wh=L?S8516&$A~F-=uy5`QI9AEmg2Q;K1=~_ZiLGm5HsaF0~$*AY2;O1rnF* zNIeH15qf@`xH9Wvs0ersJC8}|{cBkfstjpC;22Lin2p*>QO?fEuK0Fp6?p=vgTIqf zK{@nVk+;$Ug%)LMg|FfCO(Jt63M&Ew{2cUa5^F$&^u+PnxT0=@y#bNmd)jKMoYIq0 zaXvEA!COt%&M2{pYikW9v2&tC1Mq`)rZ?f0zAb*J+z@Fl!0(ubA7#y^fzen8 zzE9b#BIm*JJUR3G4w5*D(%(5vQQDt}g2znR%RI?ZWr^CobWOITJ(St)C&|7NMJ~Lb z-EHP2+3Ezd3tzx%nWFGCuq_+SV$Bsi49y6GD?4YsJ|WD%pHKXG46{gaLg?`2AKXp7MY$T7r@|VMxF(JR z1&#g?vi5di?WNCz_ft+PKL_*f=;%kym)HXK&sNE9dS9}Ue&hQ2ChQIP%R}P_>OW>E zc#E>pJ;AZa&dd*EmE~^PEqU>E*J8>8lxO4QqL$@l13mMfJ=h%b>3RZ;E+9KLz&k;# z*S+8fvHhUF(RU^o*un9>f{8V#U7J&Wv7d>#RDKx^+zt4hQBz?49!7Q^*P=0Mu-u9l z*OGF~2kk6pmMb%3T3nk4!;fi3*UU9BM5=N_tw>Q+ei%2?SP-i#T=xcHrGi}F^@=6g z^I`agW58ZSgYJB60Vq3EqHV?s6Sd?Q^C@#2Rg6Dd1mwpgNchN zTQXUViog{HK?s9*g#mYmFuC5!L;Zu5_{}!hdXT7md_OR-D@T-GYg&gigxiW0?LdCU zo!4nG2ezdA^3lPF&&bZ6|D3-!np#x~@KhBwlD)Bs@X)2%#kEp_=03W%3tpETR{9$sKjE^kH{di6# ztXKW>TM;CGuDa&|Ffo8D^?x+L&P+5&0IeVtPXK`57qV(ZMhpjNL^rns0D{Oa-~c!O zF3|{p6Xx75H~@*?C^BFb_um=?XdQqptN>e-|3>lu7~q%;uH@5=l+#0H!|20!)5lUygc_YVYUEqg9|4B&X|rUn)q};;Mbq6Qc!h8RP^3`MJ|Q3} z2uGK$wran56&SdS;}W2Yu+|71ezx=8b|uO&OX_JFxza2m947vA>N>o0`_z2S)#9L! z7-09Yh0;;t>vQ8z%V2`d_D8L;cv&fvv zO3q40GS_#^Xmac=$6O@8)Lp$GZ_Zbo?wcn^iO~>2GOezgnMGNSpUl?G6hfRgsWVYW zVVK=rW#JJ=Ql}ElQcv^@*=hvqRU|5`?nvmqjKVj@-iz7ZnO{(3)d|)QD>{=K6u%#E z=%MV~2wR?KT#uNS1~Hhc?hm)*{fY|OT)04=dB^c!B>GY6(fu`ecG34z&2>KSoxfHH zNb_5|J3^(#1!e^bR~?i; zGRema#I8N+IPhpO^&>s5jf}PO6qW5Nqr+)%MCGTZJ9^j99d=r!~9SxxGWZg)RYm=PiW zO=p5V9(Lt1GE2E4t&)6?b*_NGwK@)brvIWz6k+F_)?;K2WB9wIpDkjjRP zUAjuYW5*g>ITD%c2M9_N_nT(s)v?A^hL(OywH)?0xJdNi2X-h2H)Bu*Ec%lwiDTec=|Ji>W7~6OtPPE^1}UW#tcxZ zC{Q}srq=t823s@4B(F!s$yffaw*|%8CTDe!Sn(=aOU==@WGt~K@ z+OhxJ=sRbZ^4k7y4ylfe&SQYHz9YliafOu8A0dHF@(=Yt!fUxijD^NLDS2xW>Dzd0 z?KZy;j2r~oQ8XTxraPC_ZtRA&+zkYa#oj%pFd~dm)A93OIehI)AsApx&@dTua)cV5 zs6>7$JO377joEYmdyJL9{|{=|QcVO+xPlnswuifw-wgW0(yCatYYP<8|5> zl&LyrU)$iU&HTPE^$J_@3r5puteKH=pFN-!?|y1e*{R=a(gS0n6a!prJJLGUMT=SH zxU^Hue{|nyzy6dXm1ORI9fA?9wG|w-NaI^t;@KblmON)0v6{NWTGtY?wJ{f2$jI^= zrGBBvQ!K8btx5CuoGj%eErc9jMa)nzW_LIfayWRhAovP0-U)GRA zyQRsUr!Oj9eA5%u#F8@J#U0x`I6-BFLq7SMLcKUYbMf+b{D7`N3j!V~$>B_{jn6T0 z{QQ%4N2Ua1|Dv^Od&9wc*qBs(xOHGXOf?83-kKX1mPTQqtz&!rfZ5)kF4%yM(R!_~ z-*ud*xi~0}60?qb@mLwKAG4u6e$(1blSKXfia=y8`0<0VB0FCE$&d|6XEnA-9{&gk@wHGk5~G@>Ay?cJb)0C)cy(0DHh)wE=!9&zyd6C8N@cy(Gcja z+-%}z=t!2ao*ZO9m7vs5S~5J+=z^9%HW}JBjJOTffG9Wv6MmnB$-$EruBC`5&$hOd z#Fk)nRD5l&+d0MfpeB+^)SMjjS@V#-eU>C8#H#>+J9lk&$P{o$zkNbw&Bz^6kMze+ zW&vp_uNt1TICEWvZ{_un^qoHsm+9?PeWD(UI;}Q)B9U*lqSZlTg|RSsxLlh4UK(Fk zz8?l-fS{KOO#_qMQJ*6@Xu6lLY}YG}9me^KCAMYw6MlstIQ_KiX!TbDewpVT{Isxz z)LmhE7f{#cgL~5YR$74 zvhF=p4{J)nlZ?hbi~+xL7{{Zc0EF9cco~To^Mx*kj^?|92y6YtoI^|q@rs&p{WHIZ zQdc-ERj(nV#KhLLcK)M>yIaV|z3~DMSplgVQH^Ebf|(z`dv5?E7FPiB%fz%WkRM@2hWB2q0vUp7ILUBp=qlF=>2ZeDjIS z+_q})Ewok;#~qu1=W0&lit*!8HoT*(7tJ>?KDO_j63$yBjV&xTUG`-Zu#rUmU!huD|4Ge=lBlf|+WbgQck&`H&Vv7 zg2u0M=aV0&^DwXt@X97lG4NJ0ahyAfL<#wnwNvgM@6yrpqa^a9UOg;$XGX3l=yfdd zDvRN`%5x(r`;HUHED;>oI)Zmy>cy7)WJ=y!u4X)Jg;O39&NS19mr3OMUa4ywDttq4 zqZ|rf>qonc&T}vQYJwevn*GauuE~w^_;PVx_friauGK*)EYn1&G%OH89I#^iPxhD) zI`-AZ#IIMCbf-V=c*Ru{v};7`Nu(%qcL7gd^Ei1j#q}fV?r^bA+xfhX$Oq*n>kzYQ zMe9}YK=_JdFZDZOJ(Jw9sGX-oUJsCwNta20)CuAZ_2P9=DA~v|otN-pGz>bpyOwPT z4Jayl2@Rl&3E(V%S)@#3D=a%i?q=g&RquF@mQ7u_QEqMQ+@nfy=^2uw6-;5`J-&`` zxY%P>_R#vTxquF4b@)4bPCIL=1b4eZ0Fg&5c5c=;8K8FbkYL0uygpiFo)j$Px)Dw| z6WsS*^i@cmSJLBpKBX63oy=iQ9^&_qq`t|;hNOV+Xy*n= zf2S24R(_>6J6}u zRCSk4seO5F5AYEfK+Qc?l3hJ<#b`g)4m{x?kZ_wG$L{k%$7k z7E2KaO`)Cj?u5N|9AZ=^;6~bIDSZvuQL>#)fUc6(Z7IHTW)<|BYt2DOV`E3d(Epq_ zV92Rx)als1@~FxbQ0G4S6{#Rhrm`$!IN>$+lp#Im=mWytEL;TIr>u$2?a{&9KTS4z zC@(vw`$q!5bU6gSZsSDpFcS+TDUJkPQQ`%uc1If&ukRF2PG6N-t1%Z1KK)L=)f}2` zb5mdb{I}%NA}1nVi?s)c9+{wv5^JAm5L5AfO370`#8;k2UsWl0YDbsW^GF8!&F*eL z!*zA<&y-ky#&cth+|%x}I5!KMrT2<09MgJUY6R&V1Mra4Peee(;_w?EsLrH53bm~L zCIyoTf3448EHM&#uLO(zc}IgNx3YLPP$-P69FcOC|HC7K8^M8|@efe`ir=8V`G-(E zaP7=zbG6|f|M$KVg@GI5RrO-k&0#yu#krNDSnoLD8TIB79nkFzeL&I)hCe_)>xl*^ zTdQToqZmAsS36817N~x8-cgdUJ!r_w9<;;&h5J-C-hidRVonwZ*lU`_!)Xi_wm?tN zgAOAi_ut6Aj>tmrifgT?He(8?-5(#e8#Bzsb9A-eE73=Bxb*ote{9qxvdnW(mC(*;cMY|eIb z7m6_?h0PXcKH8j*%^>$IK?r>p5Z#ar2qwnH*efA$)LppVIZUU4=qegOK=H~Q?u1G$ zvh4n_9p;=I!r;^&oiow%pk0Of}rDm0vr_L*7 zKy61ud5tpk!BB`G?EoR*zN7u2_PHb3!-0EP_R<>3xrU`~Wnepw+o_SI@B8uZ<0LMs zy2c(hnpbncMva?8s~N}%ANt=yt#Z%<4btZ%ic@ z5`TcMW;XhDl(@TDLGO^~fGY^S5ZyHl7|>*gOf-r$cn3@6lL#w^96Q4H{w|M^yh2){ z%MWDwTlXclCJZ5Oe0GFPEQBf$C;LYW-JkFI^S)^E6AO1y`91wk)nLh=j_-!79>5<< zDPP!1%>fJFR^kdJEPknCyycn`odZt0%>n0p*aO_jwr6>+`Ay&q%V~6EgT!)|ri4Cu zHp`%!NGPTBYT#%i-G6pUz+gfo{vf=E-!Y0c3mogL0!8N@{@6W534cw+qUT1C}Pzugugr|;s*QoaB?xmV*bmR{T+m?#`cDN%>B6Z zwgqD?HtCIk+beki_}fTx;nR`R3tcg%exS|NUi-eUlm6?v^ionfS-KFd;M6(b753#u zxVO z$)^g+UZ#^N_=IKfYfrkFPTV5{?3*d6d~e4|CG)&UW%Lvf^T^mcv(Q}H*>CyzJgfDZ^GB zl-V5W*ZD>1Ui($d%EF0T3V*d|-PhJ@HJ7z+@kos+idcHny4dpFYXz+#Exm?0Gs`W3 z3^Go(M{y@~zVGdcSMTOoIhc~qiHDYD>d^%13b`G5WBxF2y+2|VEwJav80!whQlS#L zz^mVc&Yx4bGm6Lj{S=h{wLATIjR(BGS5d-stIyJgk>Cvn#J%XWH8<__MY-KkLmq zKpq`dla>k|gP0{jXo2%u?=Hq&%nX&C|9CXf@)!-`)8YkB6(P9vr>ZGASrI2Ec+{H& zZ@CSqm|Gj-I`0L8F7m4zNi-XaSL6uupld;rreBbr*GG$+Qm z)OlJnm)h1Y#tlPGbo}3;$vz)cXzf1#a0xw|m^1u!fI!#TH@&{1#B&$3d%wUYRh3a< zv(hkJaps(ce^uiAo>YA5e=RfYl_)fsYCliITKG`QbZ`b)gc14Y!G#BGn>S%=l2wz;&HwqWeib2p`|P zOU?x|gyP$DfjZ=L<^InopYgM^q^t} zo0C+R-<6$b$j4;|3ovireZYJL_fD2v|1rK?v?)(mkw$w<$~S%eO(SKo_PrhFA38># zdyO`L5pktgLHcSem%0DR0|K9)Er>PI_iD9LufA&n#egC30Ca?LD2gnVKnfdE`14z6{aZLAFEz00ikU0gOO# zQb4P;E;ydKln4&cjt+zH@fEy-aR6WaqXGp0H2yCx0T^*-f!XMVVgMgTe>D<-E?GD~ zz~?uN^I)XQ_6iU{*tre>!27}uw+9ja@edn7Hb@3L$R|~t97elYV)f@qU!t&xd(yLu~K>TYZcq;o+Ur@&W)rCe}DI09t?7 z#dwjyV+obRYq=ljZ4o{jg2|!%Kg$((KVMTxJ)`w;5Ceep;(X#@VVrN^N7#R9;D-f^ zZ0}`l`E^tZn%{L(MamIA+l0X(j)(4KQ~WCg0HCD(qtn6?<*d^E>6~xxEgaz06!nKC z=+U`gF6=GAIR1~Xr~oL!@e~#;P#bdY3MZrt)ICUOIDpiSEa)45$B*P7wn;45m*D+j z;j9Ng>J!|J$*_xf2z>}alW+$B_%d-a-!5T8|54c-o}>p5D7Zl3i>_7GAdSq%>H|6N(XMe1oe>sCy-r$`Ny?t63YbEgdOd|cg*AoqxZL|M z$?>G*iUlkkXL9dx%c)1-?L;69MR9u-}K}#VN`;4gQ-?3sptm)={B=cwXzFa%(kE zwo&p3XjHZk5WLLePZheSXO{g%n9g2w*G>7i*4HWTO6|A>)g1N|F0*Ro!v>7o>6~Nn zh+^Jr1i!C%sPGQw%=$kjRn`3ad~YJ*aE-uzuC-ptqwsp;zc4#tx%Hl<^XdCJjMzD$ z&hBK)z{5n z%+1f3(lF+x12cFKNA4rpZx=gV;e4$4C_?>MR~XN;F$5kL#`8=X1XgrTponj2k;I4Z z!EYHt;wh40tkC22)&Q>x2NwaeKXxRoR*Cbp+kxkM3nba1s?k-&4BZ5(ArxpD<6}id z!3(C_By+4p3tU0ngu)n14YOV4hQ5Yotkbn@7)`$M@dsf%$Blo7d5-R=4s0<|9Q;fv zJWp<)&gxcyoV-`8E!%M=$YXZ^A6Y2Kl;%JTAjmwp4iE%Y@&i(F^-(lX8?XW4=oOp* zd6Xh7z)k>xUu?TI0)V^&R_Wge@52MQL6Fp}QrL^gJ{U<85IFkZgW}{?XFfG7MDXc7 zQVpclhJsQX;~_)?m*@0ZX4Swl<5VnTJF;JkhWm|oW1;>|m9%sq3ka(JH1Zc+bDJ3B zd*bOunNPA#gWXMXo%sOqeJ|zQ^+1AG{Sy2x*P>H$Wsyz%o)v$7#=vXAY|x`CZXFnk z{B+d=eJ6pCdMQ-LrXE05L-b_NvH8s@e?`*}ky!;rQ2M$+_$@;xP+m56ujJ?VG^HH= z!;c1=g7|~$f_N1?1Pi<(RwD1KBFgM@sZBlQX~ovwJI<7t)^$7)edNgUrNjjlAPS=U z3Zo0vSfVrC4*VbNy=7P(P1o;fNhWudZ74U%&npeY`J3%*Ww!j~{RqmiKX)N=X`!{&Swxl7WGYdgw&2=NV(+b&K-t8E5%{&1W2Slo2%42sO5)@M-LbcPA#U}b zv~%-!CzA13%bhrhyxe-6{q7R5y0(C|FUXWs8|)h%r=@1hf>YQIhw`j_fQEOj6kkmY zLzV9`A?;SZbfWQl=ZKQ_IB zQ>?Qi=1z-A6OXE=_Cj&Yo!`Ro$*m-g+{nPCJpX!7!^k>18%b%ChUHiAqzv)k8UXH0 zDHKRg3>o85TQsbQLBk)KKTR2N7tJvp<&Q%8jgW?SS;N#4tj#Jw?fay^4oV}Cui#g4 zg!vi-d14Rc?2LRzYG(Sc_@7#Y5~PFLc76%?G4)d2Wl!Pvezb|NB)AcpoK+A}ovppkqKSH{R9t@i zXr3Lf4V$)DO7d!;oj$w%B(AxX49=;wTn|~myohPu$@NXBXBpG^^F9n1&Jq^MAjbFC zO(?)i?q|o6r0F)GFMbk{gN@eb2^)R~xF3YNmRG$S|J1r0dH06`r9V8%t|@MNm>7!? zJ)*j`_tM1C^ywFGV_i(bLtKmd1h4rO2UOu&VianZ^|+b4_0BTG+Qn*loA@UB+LcX| zWA-J3r?t}DhdNQ|8QEcK)ZW7m>q90D{exR#EG{%<5k%Q5Pz*guvVfQN?gV4~M`f0t zD<2AGKE0RF_sN`DHjRp&v&6f9z>yJ zX`yYs{iCq^H+w^}e;(>-dLj@%VbwG*c^&f@VwqYbIuQp9i#>MD0}4r|2yR*BBk>TNU37<#Sh`wg@z~D5Q(Ix; z>a-+Uk1`fS$aaY&Abihzx{f!vg3O29=t1|O){d^yxd62O)H#-I-|!Le0wUtpbsx~I zG6c{4?1v0mo-g@alk-U!@JLX7ogA!?=J$(lBZvBuKiWyiS%7!em3OxGxwQ0MzCQ!% zI=F_I{upZ+G)ra{=Gniygz#P?d2S$9nul!dM=Te(LzePl%Y!J%U3^tEU3TfZCq2Ez z00%uoUt|VR_R-($j%L-l(Ftt1G9R$e=qxn%f z$Ea-X)SjGZ>~Pva4~$}-of7T5_S0naA3bgy3 z)58xtt+NhF7Cl8e6H8%DW?FlNA@qbIE|NSz5uAFg8O*{GpkNM~uSe4X<|2X?YIvEP z+iD9R#k{%=72>k3uS;Ix@00PvG;~X(BA4tWEwh_G9D@*(-`d~Y2ZC!?+}58TgR@e(fX-!uLE;)i(wJ?{%XD166t*?SpNjf;M98qpZ9Yz z7Wa5HfLK_#L&`R1Vl1xfx%JK_to?H2$6YjQhV36m8&QxXQBYKfcw#ME(l$R9 z?V=QZxb>*D_s+Uh2N}@{rqmDoq^L@EZj(O&8CNvx-wfi3mVML)faS59Ee3fzDF!sq z=y^%K)`hBboPF7kT3v0o*NfvNjyNnft>93{q%W5(_Cc6{4R3ZSkaHxF7vA>U0f|9m zmkg6@fn9&IA2~=Al*2h3X04U@%wr-Z6On^iYJqeEoW95@vY3j1ZPSnk$sm3m3(3eB zxyld^;2>HA$XsPQlGl1}(fK^&e^)!pkR`!+5Sg?n+0uX(C0%kwkF)yi3{#E6lQp-K zX#E|058ok6qjtbJA4wt8VDU^sJSIgEhw)-GHj~^I$lNqCuD0xwVe{u5Ixy3zs7-YD z52FJLN@P-`w)!XG^(ggDSmj75kqGU`k$4m7YQ6QT3CHN~_nqJ1&+wCRCKj$og}>u* z!nxxSidq>Hh00K8geTGhzg=qs$|zaq7XW(i!s)B;$p7z$GU|s<;Iy{-X1b zZth!APqlO$iul}_l$keVkKJvt$1Lwi=J3%*67sWX2+40E*n`wCy@sk3xD5&AlwjM! zv6S^V=^_%_9W%hHp1rc%?%`laMjUeOF&!i8Jk?+98#X7D>T#4ki!?dm$F2+(t0EJ! zs7F!KKU&bFK)*A8S<7}2CwdBl{M`zHg)ZbnvYb^WGN9OyBSJ&P7Hqi+9q0V74`Igf zKS;K|(!`q|8q6#Lj3pr=-~e6Xss2kUdd&4l@nkA&oz^R}-BF%~#EccIM#jlK}PGTk_gFW#cTT zu=4lxyXcXwMqPDZ`>2W9=eXb;h@~h#@gz4?1$8b=HPX_Peo{rxYls-R%ry8ZtPPjq zbC?pS#A1$A^MNpbd&Fy@z$-lZ{3tQ8uf%KXO|Ws4qHB(?;m5%NiPdS9OLD0;kyD1% zEMWlS5;wznU3UkI{1-z*7ZV3gdgqY)w$Gb)toFN zOG3Rd@u}(Ce4yT`{3+KMexqB2*7PIop8ki0HUqO@mwI&FBf@~#^WBh?vqXbLZYM&Y zzEn}FYG6lw>l4Xhv$NBbX|pXvL>%N46L#X*A9MV>j`_t=;Rqfbn!OsRw6kV`gj~SD z#^f=G!yu@k4Q`74t@p0zLkRBu1ahFwuS}H#HqX7Wf=kYYPZMYLG*ykAJKw-V;(tAp zl^avuP6pJFQk)Bfi3s>;?dYkgD6^~txkcRS=M<<`6NF@$6(AX;#PHp_G;ia$(B?n6 z4tDCu46&!P^8is|Z=Rl~d?np9#9r-!FM}GI5|Xi(X6`*IdJJv~t{|&e($M`R&5`mi z+n(|28CHL|OM!_Q)nAa99ddmZ64=l9|$iKoL1`9@=(opSLI zuYvF0rKBXQt5rx?Si})vz(7JIcTfGT^o1277Qo}1k@mQ*b`g9XhB;E@J5vfMsBuUm zD06@)sU%)BWZ^8-H_L_(WiIpY69y@*^@QZ*5QHJQpax{lAT^YFNaeFB#M)4tNcosh zxw5&y2BlO;YK;@(SWvmb07z=h2IilaA{ z3Rx7IBXsaUeGVjpWdD}o2t^oze<4AA<~V@lAnZ(uG+tpr*(| zA=y9fZ~sKDWqf$9(}FkO+btJL>TID_fho_R0wZe%tQFEe!;RY{B{qB)(f!40 zqe%%NLplOXL3XiRybWl3Gnzd}e)(6wirc2##v|SBWrTQi^hF8GT}nvYLBrjjvi;*h zUFn<-%|hc$x-qQ$V_VAGtn(r6l7!vMZS#|mt`8;KzsVi}K3eFDo=^Krgg3J-fdw2W zrN@*p*Ybnpm@Du%ftjuNit;YI9=k1y0`OC)|JZOEf!3nqh95hk-J5^!DzoeNW1-#s z#NE~O(sOgC(Ohci%bgm%i9hdxLIR@GNd>@Ha`CK3)a&H=1j3(BiI z^4x!L!ENdrd7YaK8o+YGz5FNWjL_P??a5kiK5c?~3uT^nHp?}3F6JG15$M{^+T$Rx z)W6kwLEvi@w(iT&sB#mior7E!CjSp&pr{{(h!jGHC9kDp_+ zHtbL+Dpfy)^8%?WchV&V)*}nMny#4#)?7PcS>yRkVb3Ryox88^_I8IS;t9kxN0II- zU*l26WY+AKuMRGf$|xdj=cSnmo3#^GI*g^Cj6Q#4gvWgFSXmOj zVe!6Wy7K7aOA6FEf|tAfDsC^#hg2^Xy>EyoYL&Yzqu6 ziW^-&eP9o|DHt^lmE=(`ik?0$b@UA-=@p^$$}^ucpiNH_6y2iX)P z`NV8AK;UnC)O6JB?fr{;j0Myj{9!B4IkqrP?a)SnIA1|`p)E9jP>kB!z8cMdjigGk z#`$|kOmX!P)XvMNQS)9Ds3)Y0_j*ZK1C7nmabIto$3wB)@`_nNLupYOovwj3)4>nf zmO>lKJ@SmF@0w41WJaNirymkghZ}o#&+bqbCY#|4vifB@Lc&>W5E|lz1wWh+f;L+C zwZXsLqpq?78bzK}^S)Ee?%v*0iKl%3^W^CC8EG=X_Xm7J?Genv*!MpfA}DN>-MiL9O_PW z{Ql+cR7I}BXAgZe?RMDg$c=klC4P%qC@#e!kF3PH(tSYA_GYb?NsLZXzoNISkrHFn z@V&d-yCY&=9=JT}ScNPyfEvPTk+DHv+R?+u7FR_)x0M0l8tlqQ;_D->SNc8PXs`Z> ziiyReeN*KS!74bEr-#dCrtuAZGsDqwZCe}V%sW5#`3r&Jt7@8z#i0&o4Ix?=gOxx$ z_sMT(lyJ;WTh;LIr;WK<f8!|yx8DWS z)s#cs*VSPjox?M>QiIEjD(>^!x)^7fv`BQrRLgZOsbx1vEO(OeI%M@&6!p{JKZp%~ zfG)q;suI0|!bxJb+;fAhL-rkMv+eS1UEUrF>@$VP38SXZ?}h-G5_nVFZK_X+OBxsO zx_g$qpqRqQKQSWSYZ9w|+b(%wyh#EfwQXmm(l^d5?=&1j)tHS))+5@*<(}}-8NF70 z>wcgACViJfME$WZ#HuuT8z2`x8N4hDp>-maU)V>& zkj>XD#50f<5cy8F>l4V19a7fxKs#1*R#xhrg!`8xCT4|{MBzhXFd31E@^MOQ7FUj& z&t1c}TvTNk_ys`;I9TKk3Hr5NK>;d8vm>PM{XfwiwbaRnBe7g3N?b^uBJY%M7%kn(s8NwZo*y zE2MlRG>}pHV?u*w4qmvI$PylyGF`79c|Ma$-+c|*7j$T z0u#_TRdy&#`c2_ntvKJ{R9W)3Ec_@qcLuF&ASWsaJLu?K`(y>cf1Qo}6Yfg!#dz_@ zQb`|^>d(^aqY|Y4ydJc9AWb@40MlT{2Dpa(L4H)vm;B(a>!L?!fW5DP{@s(Ov}0TX z^Kl+_x2lNYy$P$GzDtnTIKHZv>Kw&+qd#Ln@#sRs%RF5!J-o63WfbWU8}n^$0#XiBkv{9K$}=^?90cZ-zjShCrJ?$!}@vA8F87+zu1F-ljxi$V*`e<_KD! zT9}RG4%4&roI?jJdKX%4Yg7-TB8B};M@=7fv9$4VZ(%K3ruIewnGio?FD8docgPR( z2qcM;sBt%U32zPXMAz%Bx5MK*IIbEpgbO5G5Nqa#`+Vr~zMfgb0SCB;YY2A@lVG

ei)Yi`_-O2q}WD|^mz)!5e1#hH$R8EC%TFP9N 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

~d z{X_{?YV<^YEeor4f$;kwh1Uw=?KeL&DhqNfmN7UUoN~00taaT7M_Db zg&1)(bLKIP#1+BQKjUMSN(wHySQfDsu8}x#;$GNX=z!=!Tt2<`ytN!NA0ks6NtdKv znG8V+uI-H0NF0IM#3#rYRZVGj2iR3I^loqGJNxifY_Gptru*OJsu1eVGflaGl|pPfj6Fkt%hrn0rUl)vc^0x$dPVD7XbX z^gAl@ufeZAyF4Fe*`jvx6CCD;fH+DK90{vcgf#oxBQK@AISy2ipuJV`pP*gd-MT-y zv0~lv)R1@lQ#rdfy=f&n0+zsbu_0={$?xF#q1kSI#hSpEc65irgmxs>YbFY48lO&* zFXCY0EM{(B2bgJ!KO=6<^o=JD1oHK6u2-dpoBG~ee7)z|Jzq&@rMK(B6@ayox^$;VQn<;E zOehNK*Ows9G<(L9QymxobrDL-y$FlZIp@@`Y?S4$3dG^1c`BZJ-Xa8A@7HYKnVhhY z`Q)xHiN_E>6(9Y%OH%bKt9bq*)?XfuqVzqEZh?%2UbjSE?X{@x(qngXL;b@`PQj|` zWe+6Eg#T{5slxH=0hAurIQztI*Hh0u6>(?Jh5H`LJk!ihYW8?;M7Wj@NRL&7{%6rzst+Tcn8thDYsj(exl-2CV!s|L^}^ z?4a$p`8=u>K9C$DDyFLWT}S0aN!8J*{UA#H6d%t_VM;9XH+G0Ug#FG+L=;jx_sxs; zExUeOcsO=ls$muWKHvpED%TeZs{ViML0`y$o_6w(YZBRnze0wH2m-IT&@O^Sb%e;F z;s25b{%eL*Gim>DLV?9q==MXVEP=??j^>ezSU(n`kY@Y`J|L?P(l8-|AP&aR{vT~2 z3`zXD86EcmCU*Gb8~ArN^whabKL`T|ED9Kgv8%e;6*$( zj#)9;NAofA8jfq9X?}RF`lk;$P5<;NeGO%0!N%-#u6J$eUf$XRbXO418{Bve;r8%| z5Wrh@sXg)r>x{#?NAWJMUkG6&zo`aFb05@5@mJFkDc*Wvx9iaZMC{Xu&kF{}(0ONh zzBUO^2*ApOjM-pMqJA8a_FUH?2r%^CVL`Lz)v>`i3>5tyW7sX}-OiabHa2VN^g{R3 zl&+@(V^bnGB?Y!#4NlhM{3oi)*_XW}1pnM;F8vqlh{2N^e@I@sXv+Fpv}Ti(9v){jQ*eN74%}_;j{DJV%gNRY?n;X&fVhjpccEpeK|%|%QDTJl;YrgP z$v?cEYr)HsT1za%#tK9x>#ZmCpj&``ft?AmO_cJS14C^0{d{-xnx*2;D1JshiovJm z_1AI*m`_YO8=OhM5?+*4_re_BP2-(_peMxdt^rq{D3oD(rOn91r&X5p_;o1jWY>X)%u>(Gl`>pUe`C=sXzX}05pRsl?vqBnL!6!4&0;qn_o*JZnyvgR;a357Mx~G@g*(-Z^hy zE4D@&GZH#JnY}IZFZTMrwk=diOCq!`M4?l`X;yBRFRC7@AGaVo#_kli;?BSqK}S9@ zlKMt}09Ye^>S&>sylYXm{gOuICjU%v987JU(l*55V;9E7cA;5u^cg3AESGseUoaO; zOL(L=rNH7;o?u<_jm^9LL-(dBghiVp){#qGar*8Is%7|5v0SJRgV`ZwZa%`Ak*yFp z#?s*j^a?=aNF7~&aw3y{1BNam$^Vm=^Y|&T!OUk$HGz+$mlrw&bNxIyoh|(ZN_1!A ztuGmd4kPy-xSTjL|u_>_P`ba`FO(`pQ^LIQ~-0LpP~wMy$gkSrloBQ_o%{=*C?wE z5;i*aT%rNU-_VfRBWS<~C!kGfDazjG%llj7B|5P8jbG*G7vrQ_F!W_kW={nSU(vIP zWv=vL%4dPzNrGqPM6}+)^nGbbnfeZHxNjgCK)K;|2~;N4Poe?AooZgAENItR0H0?~}U?CH#59H@*Ki>vW>Ae*&K9awN zb#LX+&_m5|R~hhX*$i(`VQ%XW3Wd|_YF)q)8FG4DK$Z1+x_gfBeUL>$ai_KMIp}lJ z8@7|s9wW_U(VXJF;3>W}hO+DL6B#;3WwZ@fooZS7eNh? z+ZSOIRKQsEv{651PU-UN@mr)WQExL#-csKOUyO}d-nl;f#jnG~NlK%@b5XK;HlIA< zQ?mvM&G-OHZX4$gg^)+pbO|>j?&Ma{y$OAYW_Wb}*S$AwOO3BP>~9_BF^z4r)?uIT z$VF@Zqr03|2TSsQge!H!wY({LHYr^$Bqa`%b5m#1)0BI;Gc7r*7OLCVJC zRFIO*r}$8hJ>+%uq;yAhyAvIRuVu18rftDx+|lk z#*`EYhy~O$Xyv0QaFm1@%YELc@!<`;ag3&jZ4;l1)5_wY4cHKm`#7cY z4FLNs4LOQXAJn2AW2KOSxe)n;`^uOIA(U{8V8vr>G7M1tA-3Q%=JcS}{M?gCHOR++ zqADi1tcyG$dS6Y2o=%Q`W~X5M4O8N7%BggD}5% zq<>CA)Ns1e=sh>7N5W(ac^VOtT*7vN?Zm|(1W)#YxW5-n*pBzW_EAEC&IfyF1UMF- z%SAMEr{T`~J12tRopS_a3e5tC!6sZ0t|I_nv-^Q8-j8&dBVO)F<)_gkOLm6W?$*HyV0h~rUBf-P(7+6oT(-|Bcg1ef5 zjLI;_4g)yaNFIFoINEvsvbQHyq}v0O+T=!~Y^y+TC>zq+^904Q5>v25#$J>?(N7q{=kdIjC=5|D-C)AyEXq08m6R#`qG zt^jCX6`g?O)?3j{%e3bSc*UXzTF4gGk#1W;QaWQk{L@T8w)&?BWuRb~PGzwt>tuS< zD3`5@R*IIV0Zb!|-cn9}q1NVf`8ww9j5CyJujsTSnA79=DMWMlc)`s|?p&Kwa>-rB*i@u|q!~Ei zO6h;otlCIHkxi87EUDL%!de~u`>ptQj&9v*b0_5xBN8F?u2zY=r6LL%$41D5@BT0H{xYbpCF=V{2@)WIuy9!fSiuPnSr7=ia19Q@ z-Q7J9++70%cXto2!QF!f5AJX#d++DGZ`Jv5PSv?px9Z++vx=U*x<`-ho{awYZ>*D! zt;Dg+1(;|Sw9psO9kH^ZnsF94(w#R7f@u!`SrvBz`#RX{PEYY}b ziIYk9NQ~OvhJA*E#nDW32v)yGZZoXo4&MmcaP{FSaWtE4-lj<3#WdAGx-BR+#4c&mNi+x#78J5!XE(2-d#H`G z`-xNYo%{wDcRgB*_l&jMOInhNgZ<0Gi-Kjaw0{M;^^`{AcgzRS3_jlVaeRQDI4J4E zH2Rx7yBUnsBB~@~61?11{6`J7%pMhk!~|E|3@=PWbIAleaPGt5l^Ug%=W}qU{!&imJxDXyPyA%DO&7zM^1{F^7~Wkw_3C(7XG}c zdSg&T9%xT-9rnj6E6VhUeqHruU(NCFmxc89mT~v_xyeGGq>`C9-m}?Gm|LQF3yyH+ ziB;|ARXA6_iG6c{Y5R(8Us{6kDnCd(icf4+N}D%IgTbC-h7yJ_F*`Tm44f!IzP%Zb zqphflaa+8%KKRP?rF}KvM>Y;2ywU>bS9G^t+0R*tIVZTv!O(93b7XIX{cSKBkLjiC zU4t#4h;M^B15AW2&N9c*p?>Zxr*CIO@9%jcZ3@HdCyAca2)1MBsNfn;>sb4-Z~Lbw z13(IDX~k4vK}M?Y>I1kD;kf-hXzDGZ7l8u~tO_%(W!AFI?eh)|x#+er;x(L4UlKaX zPKXp{#zCfU?Vwnz!izFD<)t`0ZE^G1?|syW&YZYx9RtX?#63Q+h$b-P1@pDthttcc z`J)R=`Mfg zjNG1<5c$v#w5tBw*V)1K<~Lo~kGLahx#^13-&MR?zM7SA&I-%oCl-(^(hBIi$lcqF_Mt&Z3Xh05&EU^3VcB53W?( z5FBVDdWEbmg;`Jm`3|r0x;wJ~6w$MXUuSvoF!?bQT>v?&0z#zl;9=tM4gI&?m%b_u zhnLhGO7WD5gRd<8oo%D#=pCZ!Al=;c!v>#bCe0y4ucl03oMTvfMnkERDK7Rh7t|1K zj1=uY7OIN6uJ({Xg1<7k819xh&7u<@2vkE_sOm zu{-_XWrGSmjQKTb`nFMy$yk!;eqL`LJs2W+7UnVc-l}!)K?|Jagj8)VQ^3KJ7Iwox z8GAKM&dE>1W-Fh+0CLs(12H4+D}k%}i0AO#At(~~mHzv)!axog-$MoMk-_=+VHRz; z;~3i)yXG#t&9A|}Q38P`bf0t4qg!hroxRK$DaOf5ijJY^w)EyOP9a)9^p2;Kc%CT4`560r!9FO)(}C ze62lUsa8TD=Pdi~>!|2ln(2}K%E;=$*73Qso8e5Vm4gQquwGod{h}KO%iLST-1t5` zXQj%uggsegCW^e0{9EpXeM}T>mzN>Pyg|TrqY`3 zU6w3w=X32+w=HDPw-gn-?^aT`R^}IOJ;>kG7=Z;3GMqt($E7+-&PEP3I4^`?j4Hr)4;7)o>Z5+z^8>-juk(A!k zpRPsDGR)Sl;)!+}5&ANcOTJ^Rm7}-F>6D(GRT*u6yL%jr7+g7k77>oE$-pQZd5%G` zGZVgm?U$rL9p6>=>?9-lc}7`KFYP$(*nxQXGlekC^K{0o zLLxUBWOc1$ZB>!nvRvJwVG0FX@?I?SPn=ki^jq_!)rDgWE!S(K2M$dx78)!xWS&}4 zZOuR&fzTl+uipZN8`DT{FSoYR$ED;K&7)g__wtY*`&`uMro7{a=Q1t^7 zaW)PRRAr@_dbk?R`h66geDQGKn`dWRcTvTG6Lq>?0=c4`%KR?KSGrCsbXUAgJjxA0^D{qZNj zuB9bc(eIEBici?HZbDFZ<=NI+}SogUPVRX{O1o zk)gU0yLL%NTj^B>e!zR>d#p5KG+=$O7D?Mtfhj~@s^rHWV>mcwL&1VcuSr9T@=W_u z*)09g1(x*A?yM5SmQUl;;tR|0&W>aCM6LG2i(TjtAIqlp+OkeHJ8s?*-WB|ne?rHP zBmZYNgj|g&RqKU{0x3&T(1(pL8%+onmzg3(AEcEGU~|yn*$-{WTY53?BgJ?o4}XbK zLyH*tBOf7chf^_gSZNWozFu;0TK+RGFfDBrQ}206Pha2Y9!_zQsHrYrlnEeG{W`%5uNN@80Y67LXvUX~S-|x6(WEH@-^c=}v10vZjxw=qzxQ2gt zyBN>fG8aHwre*pJ0I~Xqt^5D6D%iTmajK}->4EZO!fmn370;VK4W^`L|3-k*F zAjvd94*u$U*1u8BG6bqX4v6m7P zlz9Q<{K3vcH~aBglF>&%(AQ5kKy^Mks2BN*>{+>dQ=dStT zNys&$d&R8dKFR-wBo(={tQyH7d}pVc+|ZJPT#`#Ufy+kH{jBPgc=Y#?@vh4tT=%ov zOguk*%{Sk4N?CAYPY<;tduJIXBgU3PI)UZx4N<#$Q6ziuBJHq#fa}aCXjMDY!!hw2 zx5g@|6$#wL%UwVAu9ke8e|4(oHLFznQfbdV_7lxEi?;D4@Wc!omL2#2JOKJ(FNrdM zGz~WlI#aMi2Oe|+k}_h*np2)oFD ze$BtddjA=$6o{Sb{4;%*oa2}V0c_hE4UoIM?v9JkgRS$G;Wuv&Xu!{g<;c}X1 z$9kby3ygADG6ZlMtpS8bB{%Xzxl_geM7uAZ{e;aZ$l{A@UmgJ8^%QqMxbjAN_BptP z1?yNxqhS!fit`QDRLs!JOUlFOH?*#G&l+R}&z~!c|Nh;zmdZOKceCo>m$&|f@76sx ziIA=P_w9-^&Wk7N|LdCp!ypa}Tn_XD1+JXU`7i(at-E!*^b89O&IJ!y29WT|#1gJ6 zu1}(vY^xD_RoHVtEOT^;f3hV@wQZ9R3{$A9Ykm{yBtR7fp`nf<(fdhaDV0+1BW$@%$tIh+pR2mtH_eIbP#1L(XGy1;?tkPSdc|KFQ5 z=!<`k1?GP7Q;j(3-OCgMs1v-wkN@@4rX9uUkH%%gT#1X0EzGv_Kq8DnZYTfX!xwAx zZ!%>2R30yxaA4{`0}O8@<-h+fg)Hh<`&C zz|USM72R^&g*9YCt@x;%Dk^nN#7sQ9Z@%!{CoN)^v@kC6lmwNrXf>2DSJ}f|HfJCx zHG^P32~RE_HPQs;hT2Yrid2I7vxPTOO9j9ZQwuN$rP0*L!d5vEUTht_k@e3iRoCj} znnyN67qgDDj|@l55DO>n($FQX)RG0pEU9AG)LsHDdb7!P> zN#${!!&^%Y5)IVLyrk=&035d{?dk-(#io!>&E)bF!7D@c;(k`kYl4zJqv^+7V-_!M zK)7;+#}9O>QJWnJjU#O(HYCqV1E-=TAKvD-MCl1rvg$xA9j}y;EBTR>FE>9fnj_^T zbmtAZYc;}tGJ5t!@U@DG1?(T6=>M3wjc*Au_J~84k)^&`mV1 zj$93O_fkZ7{9%0@;rIZ3k}oHO&2f*tjJXJfd`Yai$!hzI;#eO?YNE+Pnlun%;j#U7 z1{qgKjll6#)9!*nTWT$jc!XqNTRH#d@|l}qGg7Xi&B`8lNSL7-cTf8J^a%Oxn8iTb zF@psnqsSg1Ea>q4g8dy8@d&-R0JP1VA5EZnC~DQ#tDOR^)oy!LTMeI4 znY2p%-b}GZ3}I1OovAQ53CLHst^ywfS(8i_`Q!B&@B9#L?g_VdRb~0OjqC+E;o82i1)n!apG-hdfL1q(wtu~SLP-ZeO#vOZpg}b)sT`=_U zbbibujtKNsuYJvQWP8sM;>p}(af#@8-=TK&iNr;5gzS9y%a8YzAEO5SCzhmkG;E4Kul$}vp!%O)nMB|EyWYY1s=FK#5nt@h=$oaC zdN*tl2hR?sTBmn|INrsxtpVvGCDmz?nL2rxOt2;GazxO^-#L~SupyoGG;YQ4Hscko_s8Hm8n)9yVWO+RJEj`#IV}!eV1I~(qb`MbUXJ2s{LxTT`6!f zM&1=~v^DxdQD?pMMxik)VI-yeP2Gq;34T}aNOg1OivTHi!N_%%4Ti$@}1Wmb^YSS_ld35;imgs8=PKUm!96Fx%}9J69Mvr zHVK#<(m#Hw3e?z7(tH-u5Q!EhBnzPTO~PkEt`zYw!7r4TyMmZ}5zVJ_kPj&;t;$m_ zOBsk~ZImZhlc1Co+fZ-2*w}VI;;CeUYAofPr`!=g;B=g{_EEol9NlOiwU?<>BvRpQ zZ-DgFMKPDzTWVTFqYIGGM)jS^6*=x?p;^gi5Qw}9WH?<%AoKhhaJBQs7+G^YldJr! zwx~!BS49%Fxr5Y(+e^S=KWBuZz7#1+>j3ganc`v}ZFQn2V6xFdbZ>t_fpvy`AeD~;wv}?&5mT;iufTsn;yG#VK&**BY zzi^?Y^qcKbGl&{38xsUV#hFd9tVBXY+V~>!f5uDZ2)l(NSsuu{a~VvjC^Z*i@?#fJ zvY_yF1G)VHHGag%(*d6g*ib#^3ek1x8M4)Le3;b;QWIl3O+?bAgU{xANL%QJcLcvk z2=Aof`+G06 zn{bDF&>6@Pg==3(k@Dw^aG5D6w|lpSSXR>B6%czxs+rQ!_S9{feDTsp2K%DgM(31S zyf(F^hd6xuWhTded+_Seb$-{1u5vDuD~G}V^OIvO8|9H__dfj>5dji)%wGAbJh3xc zTPcRYpXPa0>okLHc=b`}x(Q()wBzxjiG{HRU0@1Ww8W5FA;!2FWzxT;Jw5mrh$??A zVTwVz(z2(Usd8PTK?NE|P@tP~IYXFns>P38H!+S0jioRO8!985UGX zS}|f>R z)!RH|8_>1ZDiM3FKm)7^Cz~#+ZfU5*Th08ISC^?XIq+|F2C-rrH3sZEn=Kbey zJL(py9;)peU|+MWg|d*>b3!_oWbw5uwx}wsYzy2WA9llA(0w*pvWN7+Sg^d%H0FN& z=tHm$^^u@lz{QK*YFdh|U1wZt=&rRrw;f5hxy-1(*K9fQQMRJv*K_OU`raMllFJy% zP}ZR99D4(9DV`O`X+Vv9vO=B~AkjUjbYnaE8+ogD`!tQz4l1)U|Ex`lp>e+1Z zQD49hH_kZmjX{)6^$h8KNG1&f)i>~*WG}hc!r*WE)v|(Y;c=7dh9Xd40WdTUjY9pp zDPp<)C8(cUQ;O5{z%~vnpRDCTxq|mCk6N8re7x%LjhufG=0L_8vm|cbULMEh+ZWKCr(w&Ww?X;WGkHAXhJ68LWp6KB{xUMA)I(0mg6ms_H4~;@B{UWFE>Q>K|?91A`{Pc0Co;Kn7ZS^M|*j%mvdlmj-2rHgdL+|YO zlQ@0$gHbSg6~}#JM?g@V3P5YoqQ#pr8BD_4m}rg(S{A73M7O@Io1{uqz1sR6q-({H zc!I?(Rf+D?u0*~H3SmrCwjKX)*+VYZKZ{|*4u64wCQKM)9U%|j0iAVy!u{JSl$}Pt z*Q#xz9XnOqiff2N9?3B2c;Ox=QKUZfb#iH=sA-*oGlLSpenduV$pF!`))!eC;CE$|gQ$;7AwJcy zQxQ-hWwebUW()P#9ey_rYU!3?vRsaC12vzjdtZ_}xF->c0UE9ti!_#|Zs4v92v7>% ziJblRWuTM2mWe7*_;FFqY_g4*?*-{^TQo*fS4_!>lbakJ%}Sr+%C2ya9h`vr{mwyq zX%U3*S}eozB+Y?~OB^N}DEZ-S#H3h|*cGS_A~O~+B=hlYK5Z5;7=8%eJUvYJjz2}U z>mkY5zKc$gbOoH%+D3DOHqi&esjo)&aUPBD0%!ueic0a|_GbOJLefE2=zE0pTHI9O z^lW`y4(@)btaG3(st}j--dd8wk6`$S!0LosC4t3OAM_U}#Pu8GD_{+$dUzMij#Om!TQYkWAP= zD+~cnEW^|EFIV6vtukiwBBxCWW-q^XT$5GZ_B-7C9h=O9s3U>={OAWOsGlpVGI(fK z`XFUtK;c#kO5pE?cZg3Sdscdp8_N2(bwMWiTt`k$#IlX1%b=*2=WR}P<{`BqT6V|I zEP-%lm--Du7rUzmGZb+}6JGY^C|(F_NtTz=m=w_*=;xIW>)Mx}creU}LJpp;*|+{Y zFi$TBeOGnG^j{{{*Nx;0kFXa;WDpVP_0gD>y5gG+jPsO4{}Vsvs?Mp*(%=9IOF2_B zn8SLoqsb_1;n8r|6+b*UOa3dc9m{IDbt<`#?9`9Cl)Z%nm=}`xyXAH~_2n-;c{0vM zx{i1X8=%^QJCh#Q4=H}-V&Ur#VSo8jzDcaQffs*qPDWDQDxTP9I>|tHf)YllWe?=1 zV(wJD`uH8V6vIO3IX&&)izw|TgYCbYd~BMyk?6Ig(1xy?9)>h;D$S*AipoRh-zX+X zthuwG{#Pxjh!`^PMR(D?pb2hzZqyGeCNFRtH-*hg&Q)yO(VF1BZnpfNT!~B&FB?s} zaPF>RG}h%=wF}cg=8%*LC7D0U1P$Zr`>v^WiaY5D`bE$Oox&Q!fymMrd#oq%_ujB}4Y(Cv$A!C|W(fzm8u9B52M680L) z{@JJhn=C-L$C7NX<_e`{Tw@>gC<=nf>B=0^ix4%JC?De2NNFcoRR7+3y|2EN9>h%O!KloAASBtLY;$T&?!@1&G5pFEYz?l?o)bd&YK>gmKzPz*3#6?eAdC3BEN|n z=AhIMz^BN^M^TS5uTu6dv;c<;XLlk(-v$h@UgW@BG!0)$44z_ZjJ~NYnaKMPTR*BI z{p84kgaRw}VT$V&6v_(jyr7e?+w^uGlZGFRox*mL{N!O;x!}KUWG!VZYZsW|qnPU_flSIDz7*08#cUJ)kcsEs9+$p83tX&W{ zwum8NPWyjampA(15MT3*+ZB|-E$Y2dTG_8CIbKBvIsV4?(%%W0xWC7T6fWV5iT&?G zy3jukt=>Ui{qGcz-T#r!_FYC{~ecg1omehPi)S|k4 zpG27#2#G8YnlzaSu6evqDhA^kT`a_oUQ`vA24}+H1RU zMkxIU0}IcZ4gw%1k4K&Z;XW@|PS!dwxVu-B>Uugd5HEs^tK2e|Lm`q< z7zKZyYfO3yQ9LE8aXx4a@JCG52$NXOTX%0-AXpSzyPL{03;;zs3XqXTZUM;emF2<#_?_ zWJCu9?QqI30gXJI1qyH-9qtnG-_JWZI90-DL3{<|Id9(__P-zCKxKyiFDu65|2V;R zH?zvyd~uQX>tH*r-0JacbSPRU?ZdWH```QoYon(#<&3I_%nZ$2cK5rqM7bvn6i=?l z`R&sB(UV>PByeqi>`{BOdn~KI87QyD&uHa1R(@4l%=8y|+qzpmwh?1snJI4P(Z-(5 zzEr!a`@M}0+%9+0*xU981N*b=dFovc>ZjAe+0;}HqjZ`E`Q0brAWi*!W(xkwt=-u+ zY17R^vevJCQUeaY2hBiAtz!AV_>XSXcXH={5b!EhRu`A<@6My`tUqzNle_OQ;p2q1 za3a6_*FXJ_3`T}G%*xatDjjFCLMaZJ-)trx`zHg2VaE*2^)mcR2A@*EOjRM#`#{qdX2}Z z2*MS5{rV7Qk{S8Z562JZ6)nzoVCOxlwb45JfXJlr1#fjd>JD|@nHXk9!N?JPAnX%6$`9!29_1b7t{3H$YkDZN z8ffFSf&1ZFvv3K=RPwC4gFVS7nX0H+5@s_HrbLl!q<+1n9j(3&f_2>uxIYcm?T1CZ z;@iFJGWEv#C~)T=*HPl{4yg_hupVT)L1b|S{P-}=)h6Lvt`B5+xQe45>u5Ka758lA zbf%TFNh}f>mpl3>KOag71g~TKWqUwhCntC`(0-?cLYi)ETE~lts2>ZmM4UW-W>u4C z?m90$taeFODu|o%PxOw9a#&ED?KScvXNG%d)51$PxjI5Y8{^pdrQ z&JSfKr@9={w#AlL7kO6oYCvT$alju_lOO3mK9%kfrO1vE7xlDTyC~>wBIe4q-X2cY zCk0F9qF4mlp8{=c_8JApgrNwjZzu075lmd z9eR5?X2XL7`%VFU1L7ihxAo;Z7bcEO$Xnf0tqW*YTe{T^Y^MpjL9Q(6@dIe3 zLpM{MHs&EW`0MzJTm@?$=%{YC32~|`yv6*gA;@kdA16s*HTWEi1c@N-SIu5{m~zSQ zQevg)Z+&XTpKesvSA*W>%sN3dj^`xkBK>{upV;ZF)L0P11JQd-?)Q)kgc%PMZh~Ci z$?7mT=I+`^zn%*t(34%#IaTGFPj>sf!_!e3>kE(RHz@6PrVyta)JKsrnC(`j^LgZF zhA`I6759dzLrx<>min7naO-99wbOmAGox*&4s9(j+cr2^<2qf%7SwW(Tk%ON53=#t z2N~-^_mUZkOT(sJ8YEYZFRw&#TY)=15Ws}aH&;a;Y9P=i%GoX*r>cfLlw?atOr6_0 zFwK75IUw7ES15>8-4Y;W87N=GjR@?0pfF1A z9O6~`8^BA)43k)Hd|&H5IqW3W;ESe!L%El^euCKhMbH~P(pGR_9lDV$FJ82)4o&Oa z=tLZgp<5Wniug%5Jx%6VyU<^MbjuyPboiuOsy$?pTK5C~tJBpUz`f&KHW7tP{;s)6(dmWv}KX{qk9|IdjNc$p1M&`;dliGN= zG-Q8*TqtOfS5t6)s(XF1a|)a~>;F+|zG0i@p)g`G99^06s_)d1RhfsFuPV`eJ+~)` z%;hVL#0yvx)o!^sj<-Ju<(hoW>o^UiHrvn>MxnHVXbx1*evnv6z~GuwH6fi8elghj~RcB56VDCB5j z{cB?1D>A=P#hmZQ!PxpfSDEn!n4Rk*f7H!mA3=hZSibqu9bQbU`q-Ve9miO{rzcUT^Cp?d7U_{!+AMahMn(4b|J0*0qvkO2Bd#99>r}t^isvnjEd=U9dvO1+<^R-Kw^2JpxiStA}H2%+yA9e`32W{XTf7NBrh@WA-0;$ ztLpn7^4ApgG+j3{3=^}JEVfdg>}>ep!5W zNQD+e*cR5YlRvTa=D(YULKZ?(siaG@!bl>S4@fPfwK6{#Gf3~9#7=WE3|35XeBDLU zRsivSzg^41WWkq!BYIe@0;+ptP>O;@k~ zBg2F?!(Ul**43*?GOe$$hCRlKJ2sZtOH{<=UVe76ThRb_P?B*}zV z@!yuj7VxtdDIr#cQa*2i%T8VO51Mq99tzlVpBygt=R%jkuMh|g<_}s7_KzIRAF+59 z3h8{uWioqBX!ZE#r)ar@sfdPFR9J==c7k@s zD!285tUhX3pPTj0tf1MchY1@AwS2{uQgw2z(L;GF#)c*^3K3P{u=Fi!s zOA%K0rsMPYkzyZc(4PEOcC$RGsHC8rEmfE9ru!m?OLQVeAQ5w%bamxV|S&G_@ z(D987EC$W8p&i?kcz1H#DjWyuMJn=2JNXpCg%7^fkSJ=_2R7}Mvq;!lE=_gGD>l{^9(QPB)Tio|a z2&%+nX%#qbcx3aPaL0RDl<2zz>pubOPGz&rS|G-!!07*5ec5zT>fGPZ=XZ9zz-T7w z0=dP~6LgBK(yyZ`GnEkdhLebQQVui{(7-*(q)*Yt9w5*hMw&5g(trElD43fzGl?XRgWD7fsB}jQEt8YZ~}0W_bQA9#>5$Nx(8q|t$oMbSKsGgr|G*LR7^jM$3OCqkKWH% zpv)gnr!!is7D3n>(RFo*rKesqOR?f=XTnu#)rzu88@t-ihGFR&;zbZE z{&lZnbjW!9oBHA%v!FlIWImDj-#j2 z%kU@2^;$EkCd`sZlh#wn>LFpgNIU9<6^%wn0_9sQ@tg5>fYiL9b`eCux-Jx7@v=-G zCUzcPemi4^vMOIq)Hz`pPQfMC)7b0P?I^w|b6p_eyILmlq1#Qb>A@S-g$Es+1tfBG zajhj zAbH4SC6j<93)gMv0GK*nw&t4YQ9R?$jpG;B)2KA;aemzG zQAo7dfYOP)V3oQOA|zW?+K?~INC8FECeKRUm{Ga9tA%h4<()mAPxd6W*Xq0aXDBpe zBJHPzF;NJXC5Sj2-=MxOvu?@B%3Ve~Uh+b~qDCyz24_{bIksp%Tn2!UmnN<#)KjUM ztCP}AU9Uf;&WhDg`=OrzA^GXb(DRGPev!G8?JK33l1+|9*k=8R-y9ILDz37F12X^@6Ho z>N|91lv=bbG*Ym2Qc59Ke^yyqJo(urH_OC8XKrMSth@C0*U*BGZ?VZFHfAft0L!wD zP%j@mu=S3-8dq~b7e=N7EAXMNaVVMIKd6avzxnjwaMEM;$Y)$qhOeDm?YlIt;a_RT z`yf2FgF#&_EHTy?yAX*Eal5J7lc9oQqJ0XZS|v6wS>R;htduXBF1~xue%|5nH}`PZ z-Jh70VN_bShKCgUiFUF^a$G7M+F#`5G=iqmsRyfR8~wEanpiCkAI%`$-Mll1o$7Tp zVo@nE!Pm4z85eIGPHnoQCVvg4OpDhF)SPWGU00VjpBZ_SU4*jsA9$US%7)AC_pVkhYs&j$Kl&iNW>?3l#-9!s6KJ*jpsFq9 zW(#VtdHXdVaCGA^Qy)=Z%mEghr4ud3o_st3g}-TCE8R6z2aj$ug;*<$NAVFPNq97S zub8MELwkwMxJSt&sXYni3Ymdf*=DNzidotGVPtd>HbsE#Nt^@qONtW+-7<|+Hu*C& zJQFG9orucGa08^C{AW_0@V1rQLrLUI2fDM;4^ZhwUgmlMb@q!^zQP@(&_~FuZ*>>>3xr^J6pycnd|SfZKhTyrFo^Q55)eiAqOI# z+gGh%8tAqnWKrvFbPV;AdW;`Lhopx9PFLj;p7RIZ`SJN?A~D0stqkvGZL6SCEr!FA z?p`;Iigya-Wr3xyHqtcNjJHz-ZU0jJwhuNvV>cW5u2LS`UoO%M zOVy~!a~YtT;hnHE`-@T5OEuKB+0yc8;Jo)FxOWeyc4+VJKC~}8yj*_YFpb5j&Nz^Z zRctk?OSCRD)5tQPp!*Lout7YsCk^8b_jEG)Rj8iA2HsObyB&KD<+j(dE1M+e3x)`# zc7}Sh$_TZ0$ydfz>$2GLwy+t8C~xE!r&A#Gsj{EsJzuxaZ6AxnSGD7*|9E6IYAr?L z1^H2Zm1<6LR+XY)Aw>5~<131KbLQ-x=nd_u^_NA`3rwDy&=S}0MT)zUny<9stJ2_X z1eGTb5LX_}*Y?|iy{#yDz03fuHlxon%2#z^7mhF^!}&Fz6@I|Ld}I5*7YuJFWBETY z%If+x=XCd=5k&!M4tW47Na9Z`#GeeTd#NaW+IU3=r#dfw(JIXY^YlkO(*F1RI@R6+ z%{fpMFAz1=0ZotkL;(lmZ~^GE_ecJ=P8&KO_LMeb;*c9TfBL>v)PVuvTsVH73wyH7 z7hrfeI3QLJ1Y7|Dw2mwgeWt7c(lILj!x{;AE_ey3!!_ZXG2!?P|G!djJ@#1S>2}xI z`H1ec@+BM^f%8#J08NZK>;Y)`KOG)>?r@*Y9LQVsVKvSD1tsqc+*g5bQ{UKyqL+yF zfbjA^0{d@eUT^$91#|^mTm1feh3&1d38=dX=*4)%U^oN+O9jsSXK#nUU!T(=sM-6m z&p7l+`TwRIO7*AF8?vJQKrkFLO_UXyl^W|51{@q9JcmR2r)6VvpiR@pryK3__waD% zQ`tcd`ZgKJg8#Ii(ux*NhYYlb3^;|YBr?*|Ezk6v4h$Yn!~Xrd9H^6L(Szw3aduz8ZAM8%DWi$Ld-IQ?9H+4h4(@}g5^(d;i5hZr4~@YQMSMcet}@az{*pCdnijC3&IzpWtXf3qCKq zipJu6xwFRm<-NZQ{1czf2f zh=G}pk&}{;RF>3>;wtj*Re>LQ&(%(%u>^ilPsAm@?hE%I%HH_+JdDUulU}I@`9^?J ze}1@oO9AoI?l<;U+w+Wn#o$7K82qj<8L~}!e=Sb(S8)bHGK|Z{fqx8w?zTv_T?lC zaC^Xfq`VBq2y3a5ADSo!y9^l9Bs}DEBO!bTmkT&O9s#?|Az+ct4LY_u%hYy zLr1>`NYW|8pyK~H)Bn$3_NsQ~;ImA%CI0E&>vX_b=jv@51P^{;`Je|a>fag9#6zvfVoyT{^n$8@X#Zz9Q`X6KaeM~pc?15&$(HUNhrV}9OoZ_L_Fh5m z6pQQ_^S>q|ODw#}?YoR1$Qr(GX+OM^5Ns-A8NICMocqKgWFGePpxWOBrgu5kDn0Ax zV{Ma&-jz9H%X3aBqC0q#qrgYG>_h5MxGDYeqC}*?>&I9(JuZmHg0?KNS|24%fsb~! zSjUe-7WW-8cAR#~+z*Grs=S!hw~C0l7>~|1jeYfGZ+%rWNRNtkBqa9IUhAQqTw|Z) z7DKO=Qm*A4Ob@gs10#h0EEJ5OaL26WMdrMN+W)+9K3~>~d1xSvVSHe(GXspw1{fKK z1f~cT`o!VgB+;)=&%~q6>3;^K`0_#Is2siNq)2{4l^ztj>eD97k0!TNfgcze3V9>x zjrtiE-d10HPJ+j`qq&{jRe)Z=z`8|>5N3d)_|&GjF6bV{a<|>fj34s~^U6|NSq+Bv z03^X1;;IqFKH&qx0k)YUO!06Sch!jS1%IV$2(r|14&byg1m$Q%94f^r8 z=ZwVQ4ZNGk9Y9trsfrzK5Rn62MPPiltk&t#{iVlcepeqDkFTwq8d7ML7aUJ>GT$8n zFnUHNAnryKh8z|&dMLRLJ!}q(aSsMp>BO=W1lVnJSf6j#TH>4wsFLvBCM#YT5W#=2p;kNhQ=qzkm%XY5~hyOZ#xm3Pf-0@!;Cbm z`~w!)=aP`quWJ!)i^6+~r^*PxoO-?g=Zl8L{%?pnL)rsFeB-LD__TV)NcqsRkNVQC zx|;Gw*Zm$0X(Q_l#47thjJGyz=$cAR)x+Xf)?lhPeo^;p0oH7qKX4Gz4{X^^i&vD= z##6yCP@Zv^yNcT_xkGp4ag`m?&>N?EM@N|j$_UKz$cAwOODL`~1;hF0TN^9?Sldvx zk1e(I4Yja*Mje%X_Ea({G=9-&;*mj&4xw7LL z3jaQ8prQX^fKD^~h~DADj-#oCG;r2BAZggz=72=_Eotl92lDDd!v=7PHlnW<6>wYmS&v* zQi3^XQMpLODitS{Md%5;YEXpL@Yli`iC77aH*6WMkut_2e#x_J#OiO~FTrGRd9%1L zDpR?6GLc%|6S8j1nd<<#cQZL{H%N4=a~fqDHNYl%-kpiCR6l5Jh1rjysbLo%dG~NE zMZmLNDxYB`(S@lV7Ye~M9oVly{1lzc~ySuyV#@*drgG+$m8Z1C?cY?dmzVG*W=hT^*n)x#4e1Phz z>#C;L>Rx?yH~s%DV}nA*I-CJsM^H#ws3xIn06lG|KSMYZ&&35-=x5$14T;@9dpU0O zwA%Uodx$pBI|hZ~j{Sh3E?WM?!rDPwTe43#scNkhhqg>bI7_E4!Y>#&oXGgSe@tWc z?Vl>*AB#D#(IT?tHhtXY2zqQWwMdSM48wh1`hjAE52{`_u7BBzkP8J&BT!g5n0>cQ zzCKr@fDuRCttN)YJ~_so>vbxArQ;)!y3tN3m*TZm>cQ9K>#5o0L| zC{UC1*7bzp>?4EY_}4=_@Op<~cqETSi~P%Mai($H1pPGMw~noBc~R^pgbCa*S!!g> zKqXrb5KmlKw3m*BZ@KRa_|JCO0S?l}3(S51l=DZnB|KH^K$ZaWyR2W>RQwk0S>)+VQ8_`%(d@*%pZU)l zpNaa%UxkqauQ#Dx&^v>&(!z^;~)vbrUd;W=rt^m zU?7P-Ik3H@yy@$qnSd&qYACe)%d%qnpki)6z`u)y9~EgFKRq5ZH^shwKbZknctA54 z6hgXF>0<3DOMvpc$_&TW$^1Hs-`LE)vQQXk+L^di8)cVL{v1zVgE#@RDUpe?f03+E zhg5^wd@hQ&%{SRdB3eo$iWmEvxevD55H9a;H$h*QxA40%*$--%U?-^^EbLY#*Fs>~ zdbk~zQkBYuJ5kmq<^ET=wI;M+EM+uUn6?N4tJFP(kk}Apg1v zSmL&wbtKKi#fr(LN3(9lPAPSnKSNJUCOtY>T@w5*sgDE>koy?`T$Mp*4lxhK-7eQ@!!O_&0&wDGuoCI(}Vfe<1E*&3)(dY;;>1?V%1#Y5v7hl`)Ll^f$ z5WguTL$^-z_0e2RP@*Q&-y)RrI&(@60CKU6!XX$utB_+%kPht{F#^2f>jV{k&dUZf zoXL%F%9$!L(ldSz4T(w&nT;GI07l||(mad-r#m%j``+-x@YKeoP>sStUnjQ9Vfz62 zJ4^nHoe;>@8Q14cUmK@(9Vc$3g^Ky@eU<6rY9NuD0@@CT7n5f3+8oNLO^p(HBohH4 zoDg9V7Cg#dp=X1t@GN;5JZjJU-9U;^Y)&=6)#fJggZ|fhP|vSIb?e^`T|OK7dZ^26 z+zjduJ_6lc&wf2_7l}o_bKZHY2!?1Nz^PYB<{BD?nEtaLo-ty>)ADq>CkzR_hn*?k zMv2Z7+6a2eR(`vquKJKp;niDp3-2` zVymA(K^tXn>oE`^mdmmkYx<+V>P(QXB4g;RfT7_Nqa;IhB)Jiy7Z7YgQ0zJgd#qxwD2<2d$8p1@6RD?cLQ@9UaQvGN-Zs70F;1$^W@!K1Lz-_w# zSsTRoxr`8`(HINVQ8eyiyXHp3(eK6;K5zGK;4ebToAk0j7%2Wuf0^EB(mz?)bqL;B zBo6nZ_Ek_bp^<9fr-%Sby+;Tn^7h3Y4i?Yd(CX8@`u9&3lf{}3X1vx`Q#JS#YNoRY zl-nxu)jX6otS@b=)v%YOuz#DlT_1~Ve69$&vHG=&wd38Lk?n5u$2?oiNOfg+twUnl z4l(k-tb^R)zyA2e>(KrrF_PyG%K(5}HauwsOax?|xYH%!dKzj+(uwO1zFEz+=jrE6 z*W~^4Izq5JH^)tbMPvAC7~ZW$#Q(mm-IeJn=${&{8DH+DG)LdA{$;KrrrmpGL_Q zr&H0uiH-vpJ48cH=5K~jzlhjj4EMJ|`)l#Xw`gp^39OC=T}P7$)Q~7nj@Wi%t;g9| zrXM5oViT{vV58l8Rar+vE~-f@gv(!lJ)X_EMv)OEe%T~Go-FlwH|<0h>kMHRsEMMZ znkqn6;&iZ$Xd2FcsG3YkGwVDKxkwC9yd2A!4w_Bhm%kf_H~SA*LrYB(RzmiQKj=(+ zrC5luQ)3=3zEYIA6AsSMV;#V9RQj1SRU;T7=6?aF&k^_L@0bJ#9S&|`dT0^e1{z;( za+(FqhRvFTbZqP2YumL3ep0y-5<#Xa7yziAm5HF&+QBb2krkS<0J5QmFSrrPU{GXnJ%KXn$Xi~5NM3Aip4}ojs<9Rtk4rirEpz0yg?td(Snnv#8f?`4} zL4{g`D6&%mA+!w(upS{4ZV2R9&PEuyckHJP926U*)1Z+5*}HT6-|C0Tf;5YT336il zYZ`Kj8>|3PmqTRY8h8*MM}XPkAanp^{|@yNat=_9JR!!h)6-s9p5+c&&g&nQ-5cx* zSNU@D?Lm9(o);u=vk3o4<6l%bcAmeNvgUv76Oczr_;q5&$73rSNNd;f z*C$CtSa#J}l(X+|ULZkaLj-DHRlz7=a*g)}eo9E&>esG8!zq-vHz(8L%U_kI4?~L< z`ULKkIK`~(k1m&$7qMC2!DqdfSzV@*2qUf_WJTNgb7b(XATl(B?a`eV<6=wLqn}n@ zFfEN45f!zYE4tz8tV;T>lU0lkyr2y zUt)0kb|n|k1i!zTAp;M4gpl*t{Yk)p4~Bx>@I`pwn;1a=vSN(<>+;cRv?Y+T4*+tP z)>=>L?db==&e)>EgK^n!pNF|_P+>v1moVV;3yN-HczS^_Ah|r7ZVCx>2!L-arH;9k zjRCHawiqEpAjysPIU#r)9*WH|GiT*!Ru`jbRMXN2+uEV8*;A=o6)FHw9&^(8?VNm^ zB{+&<+oQ^PRNt@2U#n8lg;BshV`1=5LRr;ZON< z(&A{HOp^=6P>&w;PClaee%0nJx~U~ytFo}SYF&&Z)zjoPypb6rmlWT08A`}zYA2{B zz=;R!q7>>f6*&B%r8DRB+M#OpG`Daa7ELg#_+23vD+?Q8_F#SjykpJ*W(>Ltg*Wv0 zLzWoca=o+VC3-^1+&?MUYQWoCpQlL>T7h#9{Jc;42qGPwb?|COc^ojr6b@#0$Mm~3 zB~%I{bU{(a<)&d^II2gv>3Vwz$)vX>CkO(#!*9i*+TvagVt=5?(m>C{IC#U|wk7uz zx{*quqZ0YJBz?ORv)1!}p1sJ|?6$9ZPzsSw|j+zA9WufZeHHe+Di+^K18_3lSQeF-e&3 z%pvLyef_4T6{{`cUiq0ftP~(K6&>?2)}d13wb)C4-1ov2ztu}%zwTU-B)!9KGHPu) zRd|7L)FycV`tb^DsFY4E=!gbVxjIuvF&$3p$U~zN>^50@PaML#P(e0bgc>IwFyASk zwP3SXG{42do^MvSoogu}QpE~~g4N?gp=P>+h%?G!qCMm9EltJr8$uQ6;#i-*kBaGp zmvm4hkr7yFzU!@zAEw|m_F1{n%R@VDTn2;T5B<}+KKz<(K`B|k(8Mq`hF0L!z|48x4f}A+4~r-nkmcgCWSVy!BA~8X%tx>w z5DHvIfs;pF@HzWa;2{T=z|e~-zFd<+qQwd86%BiJCHI^Uxj)Lk!Ps6!0730_r!IZ; z#PQvFZJ32mLH!JGvLf5A#=rL21IHFZJfhL?86`lRH2z&zofx48V%w!XbtCnoOah)* zP+p&1bnA_shNk(-jSKofi?Jgg5d=>60(kDkjEB51L76L6O@@2H<3`L#@^+&%h0^*U z;e%gx9Z9|DS^k}YO?C_UHOxl%><#$c)hB?+K~F_J3k|= z!jj`=sydo-yz@D18>+PSs1?S2?_3NJ@fqqCnFq%-Q04Zn8=9GGQx3~mf7g%d+sChy zh;4@kh%>Kv&6Gt8f7_^*#z09;rN1SKSeJUk_791lt0!A#qnhKM{M@I|D( zwn4_d=Rpk&OR2SIil%&O_U1jP<h)HH+!xMxbm(qo?Xmvnp+H}pJ{+4ftT^35B>BzT?yBL2*2paMHTln7y9V^t z2hbvei^vW#jVJlMkxN}C98y>u{B>=?ITKV;%AcRCLd!WWMVCJ8pm@V*dvailu)5vGfS z!C`tvhVs0|>1N*Gc;17cz};n=U1%tpoNpY_&02qtS6Uqk?<>)={AEeM*;4fGuuBAQ_~N3pm};ChOE zsPDn*Sg@XkLE%-sB2l?d8SeQT-%$xHm#X3x)^J$dP75#&C;V9^f8_`BIl2iq=vM06 z#&MI`XEPdzgt$01IN_cV)2x-f8V}E}fDgl%EQ&mZAW-#(paDEERKUC(Z%l~$;sjn5CqqmTPO+rHa z;n#_KP8Ay(kE+F)Nm|0a@Xy!gFR)8;+%_D!R{z)wezA}#8GIiLQVA{} zx?~GzR1av40M-XA`SQ~l92YP`dP#_zSF?cMXcA1{aPHy4cbV|c1;v#u{ou^6vaoLG3^(5PlNZ37Lh^I z`##@{W7cDZ_)!v$voP5&5e8+Y&JdA^mGZ|Zzor>k7rl`lQ?LqJ%;(BxA1A8q99C=h z*V5#UWL>qYIFvGi^Eb2Gm2NaIBn2}qZD#CcbtDK~Bw&gjzTs{^>!E^2 zL|vHRqACPmialNh)20dr=ZPcEphCv8ynkb*dV_&1Rgf1AwmyQV2|if+eD_u_o@5P_ z)M+m86Zpue@d3j(dCc%r?W-6D)W^Ntrl36Gi_?wdI>@@F+s34PV;Z5tu+*I-uY_)i z^uCi&<^>J8S2bFj~@3g@B!e zm!uaJIFdaPpZ!-e+LL&*I*+nblEQXf7Whn))-o1fC;yuJ_ne;_%<~2S9R$8(Fr6az z0&e^pqkz>#Zhjqu;>NCtUFl7C{=&5@_xXOTKF0QhpbHK;WT7~KhUA`ACiGbYKP8y- zd|ee4MUHG}>uhIfT{j1V81wtjhlQgtVz5C>U%TcjNr1fmEwoQ` zy{&UNY0S}uxpm#eoZdrukva=2~28fA?@cQvzf7-C4*I43!1{@hyh8@K~Z9R)W0nvlFK1;A4ZKM(qb|qZ0)Z1e{ z4ShK`4hwCPH{gqaUgY>er6;kGz>yi5qPx?iB4(aZEt${f?;<*_=R&V$4@2u*;7wZ_ z+`cUoDpmrarwE@};kkebo*F}3m^w`YuA10fYSOQhMO}7tD48P%LLWmcA_Qo`4)kKb z9Yb?1+&Zr!<9gz2psk>UN|}>o%`res5KM}|A+_1e#pnc1-REMDY8;h*K4*{L>bf;f zdN%zNR+B`fejMA!oVUNCfnV1Fb4Tz3>liz@>hD<rQ#>E8ptkxU`?ABlk zX%A2*n4A2x;fh&fNdoeT&rc`4#xLcB`^8%XM0M;#0|>PNUkhITL<5(xk$bhG(cYap zkT~L~y{98W=4HH6{9=7OwaTO^kpso8q*74+t_CVH!)bPBb^*~-82IsvlA;H9wO{kX zPwu{zZy;|h5)1==#GrygVhIH8G4oaH0GR!Y3mQE_%81~$wPi!LAD9lBX8eEC*4x2m zBfSCjKU^J3g8Zd#cri^B=J?_yp@E5`0&`KOyOwT0{>w!E#MqWD!A4sa);n zRMcJxAE%{X*=iB}(6l9k&&$I&nBlxJ3xeS}%wuV;oLuVWRGRr8?u*QkZ&@(zqP9G0 z7s|0oHfyhALOsnl;w4Y;#IpG5eqM7uDlV&YR|maV#Hcu2=XtHi|t+} ztxyq>gm3mn;jQdR#)u5QI!{B8S+k0NPVgt1_XK)=Xq^;1VU!o{N>(zXjJ``dhDhMWw2I1a`j7Lf zfmhEDt9W>z_`k;a*aG6Fk`YAf{D~a|(Q+)UMsXmyFk2H zFJK>k4*u`NZ(n{ar%WX49w=CxT`Gz+TVupK>g=eDsE*2=<%fC`_n_2~+#~_@8A<4A ze2NEO_aDXGFt0QS_lX`TIdAGsl!!8jdGXSF>XttAlPlD?K`PevmUY;YkAU#KGgXMF zXF1?6sW#{>3K>}_GoIGR8a6mw@1`w~Z#R7FQJRM6*(*jAzUc%f@1otoS-e41rB+#>%ZEO&}l{s1jY`bwhB0vQjY*gAH z2a#kjD*hyxJi2baxMGo|DYtpuHiI24`FErn7cm`9P`lMGc#pn7whjsB< z#2iO%L-C)m&~s_g$dFD87t95ed9NKNHKZheSY_L-d`Ub+GDM=D?t%Y ztKHauAoaxWYjxk;etdsE#(KEw+wYeY8Ov$z7tne(`%3%}Me?WR?3C@}qsLR%XT7e6 z`|_@`mG`|(bGTMeCg%~-nw=AvRd(Gp_nI6x~ zReVj>=+?>9xl0YRh^Z-i5cdGuK#t_ghfYjXWe#u0eBr`4ZuUPUl)v?N%x`9>qWXi2 zRI50tlClnXU-rimLI>ke{aW+*Q z4vpQA@^ZBv-?kU-c8~TSt}`I^avM4M8{c-Olq5NxlQQ_9`sWY|EE8_yi#pR7^F1B! z9_=++w-T?ky9P6h&_mjW$L9aZ`kilm0|&AZrZZ(v^b_PLjLRUh&o}!TGg=(0mO$n`MGYD6DQ$2DE^<{2(I(z z_Bz`j&p~mKE*3YDNbG99ffdO+gzd=n`!=s<8VwXCtnqwrR7~85?;vw3>Ksn|rxj4> zrTX&C>deOB>6S##w}Df1FlN&vB6cniX8sXEcsC{^&Gbjc-%}8;d5PnE@PA;PT-1mU z;M9pEVp_sUl2;4f=5Cmz$0N25w#=|seS>67`}p&|2oDV+3^BxY=>aR zVYrT;_wCs^K;qwbuiUm~Q31Y%s3S@Lm{t<|FGUx(a8_#eUs5izq94W4zdT(qbx)$p zKd4+>P_n*c$3H;bXy8~K`5L4EH3ZmGPqh1|WE_4)C&>vZ1Tc#{rW6xENky4RdGaMnzgq)Vb=)qN#Z_u^x()@56PO?`WD8? z2@STie1t_cV7pf7fe@g$K)jhorwZ``R>2@$SI{Gtt)j!$H9*_)AgQ3Jy?1R`K zDk&g%6Twf~b5kYrx~mQI_V6GPlnPG%NQ0-uUz|L0F2e8% zHAD3ja5^iGqPTi<`f8W=>huy!B9{9N%jgJJu_ReSGXed}2=jm9XsKA=^q8s)pNzhG z&egIv@O>$vY+z)E>z`^6093EE$^uJsfFtHC700E>03urn8cz6EG*d_b@CPUysb@Tm zmVzaEE_M?549b-3if<5|D*rQ5;s1SF1eVBA^BSTY*@lOgmWu0rt;mN2ABkYozXmCS zniy9l{NdO~#{PYr3>2DN_^%O+d-I<+ip8z*5%z+D)MBk!mX`=3v5j3N?-pX}E7ccc*{3(=YS)+ulo|qAKImeVN;J*dY-*%bP9#*R63iVBD@bEj{UTkAv+! z*}C%{J~z|X+bKUAH`Kc$>GW44pI0-jVRK_2>4;7ONdbg$HLo=2qj@_&FzK z?;ZPP2P?+xc{QFkyK|g1_YgIq?=;fSs-8IihqXllk~kUHx7#J`Vg6H!`GNLp0!BCd zYr0>57})U%-gVm6o-g)ze=V&eoUQiGM4f!}**i%Pi$7;AjC)(U?(4F;jH}7%;%s_9 z?=bYcAC-OYJQ*2XzFs#QN2N@)Yn`fj8C`!IYI5B7kI$jDd#*%;dg%A}tcO+`IyUG9u>`Q+($U%&XFYFmnz z!@Jb_c~7%&E&>c7KPBrZ#1OPie(O9WvA0PZEJ9Dm*GHrf>Af|XN@lm`Jl;9xgYo4G zwno(_dJK^#wsIp6m3fL~TjCf*474q)R@&mVZ2eD%!PR&iAq9aqf%FhuRhC&~?2p|1 z{hXjXDkpQj-*m?#SKG(!eQAFAhX$^093iPkrjpfwO6YG@8^lc$C>(IpIVgs;w6)c; z3bZDMAONb7%#P4cFcgmtL{<_2L3}u-KOnKF_IxAj7_ZhE_#?-YIK=hVpG)fwx^Rd@ zK*QlpwRRy^f>Xz>2=vauD9|^ipky~pnfS@2=MPj>9Qvs? z84%jX^6+g~Xhj>>bB?Q1%6X3AKr!OVf^9bzcIhaG**T2%x*aiv^4e9U@!y*x?-z|| z8yKDa$<7Keg*BNHY8KsWwXMrHXUl|p(Q0VR<#4u|3Wzw_8Oq499>nC-B5L>2&ODfb ze^XLVJ-n^HwoDRnvqWJ?KB9Zcy!~4e@3vIv6f_v|0X#VgHpq##R!kJBD)tUczd_qC zO^x9gSmaaQV)s@zMcIAc$IaqDaYkq z)e@D_YY%tKv4o_LU9viYUPPRJ+$W=KRTmK8c;pouIG%Wf^R6Y@6wk_DE4gL4X72h% zGivJ)XU;#hxRb3aBCLH44W%&$RP3;>LXE~H`SD5#?pGGmJM&Cd3r)i=*KgKi(mE~7~r1MFy67thg>q&Ru9q8FEYFtJsI9{=d zzK5s(!t4o8)9_~zfHD3Of|(!o;R@}e*uKTzxM{k0{`x(Rfpv^J%rsqTg)KUpSL?!S z5`H@Lxjq16Qf@7kXKnLKp0D`&6?xB=RtpE5cF`F)Toa#2s_ama#hI!fdkS4ZY{1+m z@H=^!m1DQN;!|)+@(fUNQBErF7%u21!M2PrYD&2saXoJ|X_BZKX6HeBY zoPqKFTDjQVZAm4y51fyWol^3>LM%7wHeSN_r})t}7jCCyCZvJyhc*y zfiG14{&E~}5$Sc+k?oYG$&X)+(F}c3+?$iQwUbYcgZ+4x!0}|av2LO&-eiT<9j*8GNxKGmKDLiPyYP-2))k_DvW0y#;^;JcQinC-!tk6u` z0Ax|mMV&=nDVN0AjvHbHk{J)=EpU=kljvQmO?pNp^))z_{1 z{X;a+bp-9psg~ULTh){XOp;2zrATf3(_@uenVPVQYbMh>*;)k>{XA%hq%RpF!Z2w7 zior%AFu%HOp=}G9n1TjE)qN(G@>OG7y1HYY{iMI``+1t@z;`btES7DieAyQT%U=Ji z_Y#U9ZsqRDOXBItUI&*mqZDg1swbosI0K@Ba{@6?-=_9fZNnFWYvz;*2wz0>#10Nk z2#mC>K^`sB;QHU@=M?B!=X|3c{$5j3Rqw*^{(W12Q zJCJ2ckoMLD@s33wX!Uevbh{Fq3L(fsO)Y~Zj9l6lv-bjX$bSnZ$)Fw7Q8P4~^-&w@sStFS6vUItOSF@@Y@3p~Mo}A`U+@I?4Yk zQp-dRk)g2?M2B7#CJ5SXu2`CMwkd*mIWx=<#CH!dhGPYQ5J}KY@hbm`&^&TE{Aij( zeIoUI11bfgf`-{cjyygK9$;GXBSNhZN*kL8W-f$SRoI5J2*{h&$1-GQ>(LmQc+X(bYfcJX2giiHCzc>=@x1t9*-Nvd zu2HrZF7sHyH8=fQSO$>oL|EU}tS8Tc)Ah(;n|L$oNNGT25WDV{0dpCBEmXztb)g93 z_v{Io$?5_t=1+ct#*Qg<NT{LvR?whUmgNKKFaoVUM@SJND9(V~893m+ zizXLGQ+Cq!$+g%HxmXUl{NR85q(~zp@Dt1=)o%p{u~yk0M@{|odH8uC;$dwashK

J$P&u@GR5CR##Vn^Zuq`p!v0G2CpMz1cBAI=%MP$#fM8q`P-j$Y4^90?W z*W&1QrdsZd8CZN6fX~oA+iJ+Id;>>)L8tX2AmI@IuqH>8(pi7WcQ| z1Y@t=Sq?}?#1@lkTZ0_fKaVv)cd`X^QFL~V?IRsOd@C_q*(K|@l2*~P0y-}+b)hw< z^EJ%6d@4q@X-7$L-`WXM4*8vTdP+(hGO*_!NkgOMP1O?>ZTYy@J+@+w-^BRdCn z@c%KDT!I2riUm%Vk;|sji7F-Xk@cv2mMuD2$_1RGIN6?6%Y-xn6`9dSpjP4s>qg7h zd;~%d8%LgL?53u_wo4o+%{mfi)GAQ@kC3+UQ-WX7;F7u%S#8&UP_q0C$w^(QYHUQp z4He;vajwa&9ZM3Yjd1Sx<=9e^h**kVxte$p4~MF+FWKy!$(JM9#o(Y45RO!oAj1K7 z%62=P{Eij=X4}W0)B&a^bgT*FiQm3Fle>XXAwxSQKeF0MxclOK9kjB?fqfn z$e-(XMetd6ki}$8Gf*kf{c)!d79p81rsvsMFU{>|vpo`RTv^=xthA0fCq*1)m(=K} zpbRcD4FWns-+s{@#7~iU{DOLNHCL}dLt2KL)gY=I5A48BeW+4TLs`K@y#*Jp$z!WY9dExZfueT}!CY zVwGKyUWzf5hC}rjN8xWWyQ&tTG_jrzmOh~#Y{U=!HPFJrpjavnE*(y5SL0mEEZ_*y zB7g|4;|8l6O_sMPoQsr6+zCjr5uSqg^u2k6`duGd1<=MCvwK(jn${YT>$LXF9hDQ! z@po7K7Pch(4X8#?2xy3chOE^d$ow|_k6^T+6wvh!5AE$Uk7M=5CfaTAE?2OwG7CKBs znL?_WIW}v&w1umW z>s6>*5<@KlE*wOL{xkhQbBWRym6T+)6vRI88#=*JYl@xucQ2=IaJC*7Zquq>^JJyv zL=y|xN<+oEKGf4bJTIJ%V%6$Vkksp>QF|$^KamLqU1{o184* zA4U6r`wJ={_n&-cO#kLPWB$)487ki#0J%wt{I4GVzr6!>_;0>5SeXCcs$6#a-0b=O zS~T_EgdI~;H(VIk^R^wVf5X1$_QcY*-=4Bq)XFnJ^rCRN%BZ&R#l181V5ctCEjK9% z)yTT%$+Px4>a3Nd#vhMs@Nj2i%NYr>o52d7KmB6A_HMM7b?9aD4d1ir>S*nVK(N22{@gr~6rP|8_+HPS z)Gnk==^oy6Uv5dcyk6QrRkptVmIS<%G3wP(`PbTXa=%Q~=4BdyiiNzRGGS4>a|MP^ z15gy*uHTmZQ3w|X1=MweGzecT29%3PzD3svy!EdgZFQg3o^T>iZal3O9eUkd3ue)u z*1fwe1Dcca#MRer-o96wI_r^mHD7CpB~%c<-duM6;nwv*`)3O}1rGN^Z##SQEQ3GT zdVQ(~ws3q>EkWfNIQy@VDY6Z<{#-qojL;cf3(<(dOQQI_(R_+6;~|+Xghy_ zH`{EN4jnBviw-9j0Xi#L`r;6>3pT<^Wk0IX3F^jam0995YUhStgx_^REA2d_X)6HL zFL@$8t7wkcog2F2^WaS`T^~nygjocqW*~pt|E9qUf*hYjz;OV7HvegJHiqjt>W}U<_X5IIKse?GG_Qn0Ds%zo% z`%-7$lvt*KU!8Pz$wJ}-eGEh@S5z?LP%tyyR?nuzP{}~cP^n7w2d4%}K18{ImQXV` zSqfBAK%UG%QDF0tU<}N}2%)d`ERD)^w4a>qIZlD{T!!yu8<#T9C(HykrhN8!f9vR~ zLBpMDGas2!Tk5SdZpIn5uC-0rPBd!$4k{PcVn})~a=v}r#`VB#4RH~*#wq{hWVLkk zO1|C#^`u;Jz+r}UDL51rCE-)n(4- zY!mzTm2C2;cAfaC$*-m~inC2W|I44jxlb8Yojno?Xc#1e;7`duAw{}hb{^B)JH9q;`;M!g|+N@Ji?K`<4NXlUXq?5_%E6n534^s zLT;kkd@YCyozP)(jul52&S#U>FItYaV9`4kQX>8?kknlRxfcQjb$PxuEHwQ_<~O=S z6!Z0lz`DP>Nn2Ltl@^1G3vATfdm<2oyd|R}=T#5bv?F`in?;dc-SN&aKa;0xN1mu5{uIsV?R ze=4Z^Jsxiau&|N4%uEOsW; zYRN0IULOwvKf!4-){Kk`?*7X2wFr8mq%sq8i4_;)i~22olhUbR6hib zmFbs$;+Q&P52$gng8Y}qV=}-P*pXZb>%mB=2D|=2{~>7+DrbzNGH`Dn)#{tZ^WPm$ z1bji;Pje}9oS;K%zpebaph(<3y^%OipQ40Nza5(v!P1XgxBT``>_va_MgSYeeCKo8 z7c1o~A(d>_RHGN2f)1?e$^~9%Bv&T1nnyum{KO)Ht+k zce~qiBG%U2xfSkBEjC_wLG$IGEwEca>yJOhTGl-*`t`oCOIO(ITQ)ah+zCqcm+Qnc zCjw=1vK;_iTT z(=HBL1G@SI6pI@+Dp2!}!J?@nLV|#?7G)&q6LYILn=#x(pxbe93bP96p%|s&lN<)Z zXR~Y;ga7p%5Dsh&0)WfVC7Ih)h zDEQj8=9#c7N}QZvPvN2bJ*O{or|c27HPhOKH{~12^~)RPqeti|63Mab*#rKZo6f5= z3Te>=cX?R!@pLINwLcQG{0cQ#P2AOzh`O(U=jhKFFedaX=c%JHQ6!)2$3!+u?}pjn zU|GEAwY}UgUnJK?KIpp#H4P5ZKf@MjLBTK(u`y={7cFcA7+gFht>n>v83SA}oR(l> zC!Jdbk>v6nPF0%dyv+w>5u61v|I^<(aleA6;SHLY<8Uz5>7lnv(m(j7zS`m$twb2g z#@U;xU@-OzdL&VXeT^Qol6lzDzAu1NCGyPr6r#?TO>E2@p%ld&%eK4R1tZTQf@aaW zlDCO@0}x_|^lkRQ_Sb1AdpuvW)o=SM90&pj88gf>eFMlZ{(DtI#u5MBmC@0AX@wE} zI+v9do5jmR_vxugQ-jh_9NkYh1mMf%wkU(|BF3aB*of z{`C&K#MQ&?B)?(jZ)=#~ZRqw0BF5LS4GQf7OYFcC!!uXF%_-5O1G~e96+*9P0Nj*5I9-X;P05+63vcoV;6#JNSu4&6N*_XstYX}$&@>auGkyQ*KlW2w zC#Hfj73hM?4w=?>!XCa7L#ZBpZNx#ESCt2*3LpL&_}p8A!ysazR^-utU;QL|Sq9#hcz34M z8mMFM4~8oNSb8=R%_8VZc<4lWYDK_#bUijUGJI76dG#6&ft%4;>Z(31$T}w(B7v2* zr2c3sosLeK{BiG1VgG%Rm&$vu^hoD=ng42*cakyZXre1=q=oi>R9>-PHExY=PWM$QZ6q6k{Jl;O@Jsr$A#Y5c!S3 zwlJ829U7$2n=7V@qD>;V%wOWX*HLV7ker1f@mKUw;}Er)Pmv#k368=S#RyT1YD@2M zH=tJl^pM^XC7TUBZ7`FJYY=Y!Je3q4S8$)TiSWFMYeYD~COf!@>SzI9$Po^7VA3X{ z`zsK{-y@jS|FqSN3**wFw3bQY)8OvVHMxyU`Pr%=a+aK{Wsqmf z>KKA|$v3_(lTY%6Ko}La0Vc5EtRi2VU(l#K_ZFd5tbzky$^Fewar-oJ=V9qjsy~Q9 zKK!0RyGdnmqvD8(WkK+ei{V&ApaP6oU>o+q9Zzr`Yvp-c?#INZ=d)AhkkfG}aQxdR z6fw}@{84s;XOVV^w#X`?X$M1^h2!hNG;R>Ho&z$o*N`qrE9WRmZ+s>)a<39Q{Oy*! znmd=T$J#u{q90*2*dxROv9kO^ni)>niyo)`hL#eh%|7|p(gffaG%sWMDOCXQ=IQ+` zDKswcKOWj1=B#Sz-RjQF#=H5u)%X69(oi_+tsr$qEkb}j5-13{0%CB+$rB|G(}u(} za0;opeNFt=uI`&A>)Aw8TdGzeTUUG+MWboa2VVM!N+JIHR42I6c_W~}J!XU*0Bv`0gNpO= zIjJ)Z$0?dVo+#I9H5BhLD!*B!R^Ar>eG(sn+-FUsU}4prIn(Pl#J zFtRT#Jv0b!aYSZL;VW`w-EAF+bk9M^_fB`P&xPf0nYeDY@+9!Hg*V;bK>r>}h` z{0T7mJ59pK1;!QHsf}C7f?Us>GciC+tu#FBM^!!>RB@V-q|?JYAtBi_E>NV^k8{2z z?7{@q^L*?}>V=c0Q$z&Gjl9(eY{t^=-i4@e_u**M)&rj zRfU}J6S!z}O?XF7loLUSm1#4k@@lc-Z!O~IGQc`RE1=Tc!6m>Dd1l-vw%E9wdh6rh z9is_(Z=ZJ@oV#@=UE$Q@HK#FR;>UK)MV*^Y-M3Az?t*+Vj{H-&cCj&6LsmkE&V7-Q zj_T|ZTW}E&5%X|_rLtOklqq7@t(Ebu|fv4UZn$Ks0O8dXnNR;*)x<=5LAci9zUXP0WN1I#DB=$3m;!J=<(TAmcP0B zEnme-!u{D^)w5MTi>Z7mFI+j^IzL*p;%iA5C7P!wE>xpA$}oC)K`}r?{;>IuQ`!vX zKd`3%3ApnsiPqwv?Z}3yO^AN~imEbJUu{*Ol+xuf&3kYMHd;aoC67DI>K>=i%DyB# zSfIe(3tbcztUrmxAp}L|JN_9yrDuYZwqk+&nrFH(vsrZ1a-H=uSL$ z|0ezo|1;d-$!FP%U|&dh5}REPIS=3Zn}(>A%dJ|ey~#wq&NEdlGVXuXO<@rt$mWa% z9`al$bhYchE)qU@EeSpBdYZkZ*$)F;bS+jp-5RrFCi^^-=yG{abN+O!aZP?*!fOZK zaN2-M4&TrVKM9e+s^;)cd#HDOwVCXvpalOk(`1mqjX8gkofM-3tv zEzzSh%7YNSOomb3P4a#?pUzrmz3Y59>)dPBnsu$&`!3f#_bzMy_Wz$Kjhb*|Lp^x{ zdN2{VI#p(GYz4lwDIEfmLIpRznKRv{xRcuMsO z^#WROK}8VO0l$Aon=j07RODjJukpifj3j3bN`S~}-R4-+T z$^<&f2GDL5u{GK5buADH69|#^me)=WYf*EQ;-seOFlV^9NiA}et@W^ znen;+!neU>rzujdzaF7yd|+~OD$zG4&AQTmr-44Ac4+D`>AM+Wplf_;DkQfGdtH7K zFs63hGOE=6C4XWW3E}GbivJ`XUO@q-K5&FnvY0SZ>4cG=Kyjh7{(rK=bSiYY?>8#au^(uU3@HZz%M80 zE7gXLeFgB40DzMU05}X<{`CBE#LX7M^p77EbgcYL{%j!2(8~aEBLWaNd~Xk4NHIf) z=;{IF5rBOl-+v>I0POP>Kx{4-%Dqv?(O_GhF2DiU2L=ecd5ECj0h+`&L;=`G;XU=c z`2W(@86X)pMcx6xKEM#pufRc?ssQX`{kzLgxh+Etw!6G?Cp5UY3gQIp-ypaOFwnS+ zkEb@~F!sJ*1lGr1U0~>^y}j&sL{Fan@O`|ZuVTn8Ny9&SdK+sJuh$cV(f4W(XQHU( zRLjd>280npuPD3zF+0DHpK!i0#cK&T@6Il9mmFolt*9dX;?${xv%K`h}&FQa`w#RXKWSocgK%dupECqe}ysaX6YaH2uxn z63c&0VK_1TUH3vy2g12eab8k(A^=Cjupowi%fwC$d!{FILCmDx;^CD_3>D@oh8e?- z;XDX{mjBk*bFDh<^E7yF`DQ{gd+RG{4^n60#_^?4@lf?pYn~1IKgy6YXZevrpK^AV zp(^peu{{7(R6fJ@PC><6XV{(@z&*yDVS9ikzr6Apwg+&J*|*NHJ%D@Eh&#jf0Pc~y z^9kK$=aj z&&Wej#Uq8`(^2)%>`^{Dg$(aOhlJp#1mgeEjpzaIsPa>;@;Uk)-orl_1PIHX%Yw@V zq|+e-PngOnfY3W`pXjLaLq;Adeo9+vh_E-QQLK?3b#MXEjPl}qHE)hE;k6nNeU6VT zli(a8&HaP`5s!nMudivEf>bm=oEeBWpSQb+E!@Q|BBX(ecx>go+egzdNdKd&<$&_) zIqx_7Gma|u#-@JIQ_<13uLbLVo8lL%9GxNj!1gafQZ%OWhYnnbBOu`C@RXRzVWhT0 zL&?&<1pM}C^_Dw66Qpta>2gpqIS@NJ$~h!k-JQZr>z!l*6?|6v#{IGP!DMlxqjP{X zFuN~UQ+r4EQ}+C6yc~^97ki6LM)W$efIVjncb28tO9Rp?6f7OuUH0Lp{du|Qws)^s zxC-!(Zj3D3Ahr7h^fZ;lJU(sNklin(cVPcsrpAykVLF*hIqufKKgShhWT#0zcmKE~ z>dpKAFaJ#jzBC@8D_wAZu?5EAGExmWgahl!3_|F6(>?lAoK`H-bXR(wbvify=|ZGlmG-RkohaW@o%N0@rm zXEH|oZn4H$@cNP$wpWPlN)P*ZAiw@m6n><_4UyFeXT<#E1s>rxJ-_QN4Lh1wJudNM zD5*6%`zxK3q2ZMA)HY0t#*PO!PqV3(d~J{BF*Gc<-R~Q+c}zR;r0`m1l4{WwAu1`r z^SMZ_ZED!Gv4wU_`ZxJ&n|Oaxl)O;ZQ9~2rc;WM8^GZU~ijAh`s16T)+E<9>-oSYi`^H)UyO^&vxo+z=xG|>cL}Z0qo_){GY({;q8rUJ~ zVmo5b{FYr=IGa_KoMbWyk;UT`%9j5bWw?%K$2z#%*@pzcG_`Yy+-{|2PjBC|7wTm~ z3*NREg#*tDfz^3}w?p?0B)5bMJAu_~V@%McG9$i{u{A90Aigm^VUD8KL?_a)Xe)6V z!8k!JWDHK4a5fe!7wcGCLY^=!EZ`e!Hq_l(27+^Z3#L=$cVA`TuUs4;72Qrul6wm> z=iBe_agvnCNabZ2HuaVx4lMTIZ$S0`u4;^wTRv$uxH0_vlOZ@!`e%Ak#kWd9W`)%X ztoprZ&g=XT=-Fgd2}0ivmb3XeqR!_L{9JvAp;n>Tgqg=$^}QgMB0%!Xd1+u@G~(JL zxXqm^cDtkPjW7HjUIr`+EiAZ063a;-p~qr9Ypi(PG02*Jy-2K8G{(X#Hsc^|bbKX&1n zIrLzQ9Xj?I{68GK&md$^czjOcxW>8c_(JBu(F88xZ(Wa{u9!R)(+%n=o zZMwIAUsW25A~Tj#V~uAsQB`Wyy;_F6#;=3vCMsvALp%))ojcNIBxQ5(Jm&g4iZ};z zW5ebbTSmBXkc*7n6srdaKDlIVd=yyb^$6nP;06BNTRb0aJ-=FqqoSy_n@CYx;hMFM z5){Ttu*Th0Wl&SQ9ihfi8`@xz#0nFq6N9)2Mn!Pe`0&`i6TpRdD0Ar>)O;qQB*h!h@o<9dp^R`mrcXrY_U-bqy3R?E)>_0+iJn}wgCd4X}?^= zEiOk?>X}+eAUEF9%f7wy9sO>DP1V}fpj*p=Z`dCf3R!$RQad?um+~UaQ);+1UQGlM zJ@|Y!u&HJ{R=5=(NS`9<=}-jbs7^`5tIR#&BbnqS=*1$V$qzofPW%VCGPC-)xX;Ze zWQ>zR_6rYdYJH%QeK-Wkmg6N56e8SckL9ridO8! z1B#c;TLPAy?%0Jx4rM7~StuxWTdy+WnQm{rEUV^A%)ERVwT(u&zNdu_?WtU@f0s$G z9u-^LT<8H+_V8Vn{lLAg>T!{L#x;1o6+DePbqM@ zAQuxPiVZw~jRE>5hXzFeNO4*|n^?8d6dVb-KYcqb<*W}Im7of61DVh8YVb6|LeI-g z@hY)8FgabVQ?vw}XHwzWi7;oV|B)sVWg$?}fiv*l{>%B7s#4%XUn5#)k5Z1*5)Lt$ zpXg!sZDHXH>BrC0Y*6dTe2GUMq8j1EiP}MSX6RvVt>!iFw*drihx*!o0cMH>8*h{!RrLYq>Bx&jB;YtD zfts%v%fPVgHdo2{yyPSghQB=V`2zTFOsW)K>JDPxrp{Xq-qj1x1#<`~MPHs}3O_Ib zjo69`G0uNGR2N2J6*)BwN4e0%g`D#zR9REPK}0TZT_>4AT^+0%DAs@cYhcaJ8A?f<^;1SUaf;x~S_zds3)qQw0RMt1gwHz#9L-&I^%Bo?d;)IuZd(mXT@9x{+XLNp2zERxJc$Ak3Qy?rKOI z!ATDtq729_WcAa72~n0<%d~bFy;=ii|c{g6b(KTV>A%JaYR=nzHm8HXVkP`6nBsmb|9&BVWhG|qx;6C zxGPM;`kq~P!Ueq95jKe`-Ql2;J)RHUcdVhHX9%eG`0Wi2^qqTt85`EX%W%FaVp`wF z>?Vq7EyWdaKHGJ<=JPW~a3Jutw~c5VB;!&%8``;5b3jvI6Db&^fHDh*2;|xy-@UfU z6tJ^2ws8m}@cN^-(Wd(LP_PGwZF+O@`g25|5DkCMP37$P3RjbFvX;5XM&$@4M(h_F zS(9=d(AN8E>ttb6b6eu!vNm4Aus4i|aGUXJU*T6#=>T3a$0m^be8oZr`sWpwj*Pw* z+Nmc!1G`mc(QD$2hmvkZ=64yP#--4GRXao6YKl0?;!=)WV75aHLYrM0EQa)x&4(*<{Vgs2~DM$Ps(OyB95;Cs&pU)U(&2dLrWe4Nkn&ZCMmIJ zG-@v!EGQ+sJH1T-oR*882w#x)$mGHyWH+N$Z3X}a#rHPa&GYy3T@UlW4Disq<|>!#V=W}>?AA9;-8 zHEgqo2X&yEXt41fNQgWWi>gm~jt8XTJGyq40$+X^-JM|*+_8o)`ye>06R z6BHaySPsw9A=CzDR50Pgg1*Joy!e(ncNNZAXEa(u;iv<(kZC2b-SsL zK2eumr!%i{_iCfuAuJAGwBqZtu5@ekdT;qs9CGX-5<4H8VlsgK$^UHG=azRU{lW-B z;-A6T-2A#k+&bMbAWvf(xya%(9^rs-(-TICg%NiO+69?gN8}w38#YG8nNj-;ZZQfu zu`pdy$k(v`8Hg$@c2H_+jk9gk5SvOloLlEy>J56(rLwC7zWO2V)zRUrvY9VtpyfRe zW`f&Kl1)NZmM8T>5%=)>gErTXmlxL=t)3SUpS~AKE6JDWdw5BNVad=zTI|cHf3#|0 z*R0rq+1`(G63(nJ{^>BGvv6DPW9FvEYVz+Tf6g~4ggvSny(jFq}#Ev3zc(_k{TkzUObW_42JWG0jBKS$AX z)=YfCjL8vx+&zkem-$m;Gow6){-pljmHqF0zc{HTBfE9l)~n;D^+)giXRSK_^_0n0 UOS-aY?sR`;C3VGO1+!QG0-tssF8}}l literal 0 HcmV?d00001 diff --git a/index.html b/index.html new file mode 100644 index 0000000..226b6a3 --- /dev/null +++ b/index.html @@ -0,0 +1,38 @@ + + + + + + + S4NKALP's Links + + + + + + + +

+

Find Me

+ Everywhere on the internet! + +

+ Made with ❤ by + Z4CKX +

+
+ + diff --git a/script.js b/script.js new file mode 100644 index 0000000..34c4023 --- /dev/null +++ b/script.js @@ -0,0 +1,193 @@ +const username = 'S4NKALP'; +const linkList = document.querySelector('.link-list'); +const linksSection = document.querySelector('.links'); +const filterInput = document.querySelector('.filter-links'); + +const buildIcon = (link) => { + return ` + + `; +}; + +const buildUrl = (link) => { + if (link.url.includes('http')) { + return link.url; + } + if (link.url.includes('mailto')) { + return link.url; + } + return 'https://' + link.url + username; +}; + +const displayLinks = (links) => { + filterInput.classList.remove('hide'); + for (const link of links) { + let listItem = document.createElement('li'); + listItem.classList.add('link'); + listItem.innerHTML = ` + +
+

+ ${buildIcon(link)} + ${link.name} +

+

${link.description}

+
+
`; + linkList.append(listItem); + } +}; + +// dynamic search +filterInput.addEventListener('input', (e) => { + const search = e.target.value; + const links = document.querySelectorAll('.link'); + const searchLowerText = search.toLowerCase(); + + for (const link of links) { + const lowerText = link.innerText.toLowerCase(); + if (lowerText.includes(searchLowerText)) { + link.classList.remove('hide'); + } else { + link.classList.add('hide'); + } + } +}); + +const links = [ + { + name: 'Mail', + description: 'Want to talk? Write me a mail', + url: 'mailto:sankalptharu50028@gmail.com', + icon: 'fa-brands fa-telegram', + color: '#0088cc' + }, + { + name: 'Facebook', + description: 'Glimpse of my life and journey', + url: 'https://facebook.com/sankalptharu50028', + icon: 'fa-brands fa-facebook', + color: '#1877F2', + }, + { + name: 'GitHub', + description: 'My favourite place :)', + url: 'github.com/', + icon: 'fa-brands fa-github', + color: '#fff' + }, + { + name: 'Resume', + description: 'What I have done so far', + url: 'https://github.com/S4NKALP/resume/blob/main/resume.pdf', + icon: 'fa-brands fa-wpforms', + color: '#008abd' + }, + { + name: 'Twitter', + description: 'Tech, rants, philosophy, memes', + url: 'twitter.com/', + icon: 'fa-brands fa-twitter', + color: '#1da1f2' + }, + { + name: 'YouTube', + description: 'I make tooling videos for devs', + url: 'youtube.com/c/', + icon: 'fa-brands fa-youtube', + color: '#ff0000' + }, + { + name: 'LinkedIn', + description: 'Career updates and thoughts', + url: 'linkedin.com/in/', + icon: 'fa-brands fa-linkedin', + color: '#0077B5' + }, + { + name: 'Blog', + description: 'About things I build and learn', + url: 'https://S4NKALP.github.io/blog', + icon: 'fa-brands fa-blogger', + color: '#f57c00' + }, + { + name: 'Portfolio', + description: '/home/S4NKALP', + url: 'https://S4NKALP.github.io/Protofile', + icon: 'fa-brands fa-fort-awesome', + color: '#1688f0' + }, + { + name: 'Projects', + description: 'All my projects!', + url: 'https://S4NKALP.github.io/projects', + icon: 'fa-brands fa-product-hunt', + color: '#da552f' + }, + { + name: 'Instagram', + description: 'Glimpse of my life and journey', + url: 'https://instagram.com/o0xsankalp', + icon: 'fa-brands fa-instagram', + color: '#e1306c' + }, + { + name: 'Reddit', + description: 'Lurk mostly, sometimes I post', + url: 'reddit.com/user/', + icon: 'fa-brands fa-reddit', + color: '#ff4500' + }, + { + name: 'Dev', + description: 'Where I connect with Devs', + url: 'dev.to/', + icon: 'fa-brands fa-dev', + color: '#ccc' + }, + { + name: 'HackerRank', + description: 'For problem solving skills', + url: 'hackerrank.com/', + icon: 'fa-brands fa-hackerrank', + color: '#1ba94c' + }, + { + name: 'Exercism', + description: 'For learning new languages', + url: 'exercism.org/profiles/', + icon: 'fa-brands fa-font-awesome', + color: '#1b51d2' + }, + { + name: 'freeCodeCamp', + description: 'Where I started web dev', + url: 'freecodecamp.org/', + icon: 'fa-brands fa-free-code-camp', + color: '#006400' + }, + { + name: 'Twitch', + description: 'I stream my side projects!', + url: 'twitch.tv/', + icon: 'fa-brands fa-twitch', + color: '#6441a5' + }, + { + name: 'Leetcode', + description: 'More problem solving', + url: 'leetcode.com/', + icon: 'fa-brands fa-black-tie', + color: '#e08b32' + }, + { + name: 'Codepen', + description: 'For trying out design ideas', + url: 'codepen.io/', + icon: 'fa-brands fa-codepen', + color: '#888' + } +]; + +displayLinks(links); diff --git a/style.css b/style.css new file mode 100644 index 0000000..ee0d9a5 --- /dev/null +++ b/style.css @@ -0,0 +1,167 @@ +@media (prefers-color-scheme: light) { + :root { + --text: #111; + --accent: #1688f0; + --bg-main: #fff; + --bg-link: #f0f0f0; + --bg-alt: #f5f5f5; + } +} + +@media (prefers-color-scheme: dark) { + :root { + --text: #e5e5e5; + --accent: #1688f0; + --bg-main: #000; + --bg-link: #0f0f1a; + --bg-alt: #0a0a0f; + } +} + +* { + box-sizing: border-box; +} + +body { + display: flex; + align-items: center; + justify-content: center; + margin: 0; + font-family: 'Open Sans', sans-serif; + background-color: var(--bg-main); + color: var(--text); + font-size: 16px; +} + +.container { + display: flex; + justify-content: center; + flex-direction: row; + flex-wrap: wrap; + align-items: center; + width: 90%; + max-width: 1280px; +} + +.hide { + /* '!important' is to make sure that when we add the class using JS, it takes precendence */ + display: none !important; +} + +h1 { + color: var(--accent); + margin-bottom: 4px; +} + +small { + width: 100%; + text-align: center; + display: block; + margin-bottom: 20px; +} + +p { + margin: 0; + color: var(--text); +} + +h2 { + width: 100%; + text-align: center; + color: var(--text); + margin: 0; +} + +img { + border: 2px solid var(--accent); + box-shadow: + 0 0px 6px var(--accent), + 0 0px 6px var(--accent); + max-width: 100%; + height: auto; +} + +a { + color: var(--accent); + text-decoration: none; +} + +ul { + list-style: none; + padding: 0; +} + +.filter-links, +input { + background: var(--bg-alt); + width: 50%; + border-radius: 20px; + min-width: 300px; + margin-top: 1em; + padding: 1em; + margin-bottom: 1em; + border: 2px solid var(--accent); + color: var(--text); + text-align: center; +} + +.links { + display: flex; + flex-wrap: wrap; + justify-content: center; + background-color: var(--bg-link); + margin-top: 0; + padding: 2em; + border-bottom-left-radius: 20px; + border-bottom-right-radius: 20px; + margin-bottom: 4em; +} + +h3 { + margin: 4px; + width: 100%; + text-align: center; + color: var(--accent); +} + +.link-list { + width: 100%; + display: flex; + flex-wrap: wrap; + justify-content: center; + align-items: flex-start; +} + +.link-list li { + width: 100%; + min-height: 80px; + border-radius: 10px; + margin: 1em 0; + border: 1px solid var(--accent); + padding: 1em; + text-align: center; + background-color: var(--bg-alt); +} + +.link-list li:hover { + background-color: var(--bg-main); + box-shadow: + 0 3px 6px var(--accent), + 0 3px 6px var(--accent); +} + +@media (min-width: 700px) { + .link-list { + justify-content: space-between; + } + + .link-list li { + width: 48%; + } +} + +@media (min-width: 1200px) { + .link-list li { + width: 30%; + } +}