From 59948fec7a68987ade32aa71bc33896ee791055b Mon Sep 17 00:00:00 2001 From: Marcusk19 Date: Tue, 5 Mar 2024 19:58:35 -0500 Subject: [PATCH] add license and readme --- .gitignore | 2 +- LICENSE | 674 ++++++++++++++++++++++++++++++++++++++++++++++ README.md | 15 ++ assets/bender.png | Bin 0 -> 24634 bytes 4 files changed, 690 insertions(+), 1 deletion(-) create mode 100644 README.md create mode 100644 assets/bender.png diff --git a/.gitignore b/.gitignore index 216a225..0c539a1 100644 --- a/.gitignore +++ b/.gitignore @@ -16,7 +16,7 @@ bender *.out # Dependency directories (remove the comment below to include it) -# vendor/ +vendor/ # Go workspace file go.work diff --git a/LICENSE b/LICENSE index e69de29..f288702 100644 --- a/LICENSE +++ 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/README.md b/README.md new file mode 100644 index 0000000..57ad4b8 --- /dev/null +++ b/README.md @@ -0,0 +1,15 @@ +# Bender +![](assets/bender.png) + +A cli tool for managing text + +## Installation +- TBD + +## Usage +use pretty command to get whitespace for special characters like `\n` and `\t` + +e.g. +```bash +bender pretty example.txt +``` diff --git a/assets/bender.png b/assets/bender.png new file mode 100644 index 0000000000000000000000000000000000000000..bfec5952577e3f13da0a05844866a655623bdf03 GIT binary patch literal 24634 zcmXVXc|6qL_y2v(jD4B0%Q{IZd&-(+EQNZ9He@e~?2&z$mo1fwQjv9}qGT(wGqzCH z?E4Ve_hsz9uRg!uUp#otopaAQ_uTV*p6Bbak%2A?BOfCGfJI+V=PCdY@+$=BX^|fm z9+`Imuz~b-G_U&(EF{yx9QAw+Rb6ut=lsjkFXf60&Y#>NQ#o<@B9D?qNSU0F#MSeh zIy#c{#@7j)Gmj!h0+xCM^gZ0{z3qLxr{@tzIzWW1HlXLvc zwtMUJeaN#CUbCvSI3@`7|nZTN-?Qwx}%Ny-DV5bV@Y&M-1DrfjGB zf`?ZC?Hd{T|NdP2w9e4YW;tHoc)4KNGRX<{l$0d=2S|G@JS*uf&B}CGwOtRz0>euN zD*JzUgp(nkvCc%Mr?qGZ24^97Ro+S~TFl>U@2{p|RadrlnL;gJcXV0Vm5PC_2wlUJ zuxs`*Nh6+=Ws`t|e$}Nm4dWAGR_pVp`Gwj8Zb7$EVA9EXuI zdEH(t#csayUCLXl4f6JzizD*WiRV2xVM%|Hz@2zH6o5itIpn*~Sl8taUNB6N_vx#p zsu^YZbIHD4cYF8QSf%l2Q$%#-)={th0eLkOV%Y?zLrsRF!dbAH9ll+~0A8i8eBI`5 zN0YTSvFh^QsqMPLrWU#0Ub2ZTKkvRI*wo07FM4yqS!5amd&r_Rfj%nkuzX|xRQm2k zL*>^k^q7>FVKsYw81S>Qn86ZEZ`9IaU1b#rpvpUH~8a+078KZFwb0S?gfa)6V(u!Nx|O(#&OcErvR#7?uV>Aueb=1W1-pK^x%*G;(v*=Wbo(r`jT zjBLNTk8m@l9j)%;AdI&)Ha}c%megx&tZO)Ovp;W&{KDlbZ#&iwOoT~#KWO$xi7?X> z5OV|mK;)K5x+B1Mw=GP&tiZ7|_!N84bsZ%g-G|yAGW8xkeoo$vq2To{wT0Jpoz*kY z4|~=1Ku^C7zCJTF`OD-m;mnM+a@mE`9 z^HWJlf4^Vw*;Aaw?gv9d_1`jDY1M!Li4LgTm7swzU~lAq-UNhj!%YQ8Cce$ziBak4 z>F0F9BlK2?yrdvgJ$ejHKiOF>tac`RKFOl7S;P;PEI)Mmv$U^}y?tM}aa;`Gag^hj z^KJz277+URnLz2F;na>qqUAuS>%tl#!+7Cbi>_3#ub!;IL0X@%7sER<5ceyBBSa44 zAxqEB!J*iUgqe->Sc7K^;Po|;!*~XQzskEY5V(Q&9pUirktspj^`E<)Hg#*T3}3^B zUD1gX2giVtB~9^?hRFW>O!;CB-`)>gW zNihGD`@Qql{lVvI2}Auwhv9)4SqaxX_OG0F55d68c{n6B!pFjPM|Q!RKU`U;xILCdD;U7C-T!-V70lb= zX@TjM=KfZx5R~WI^3y)p?4VzRRDXCDOpDizrzdPB*fc zQ$U`}+Qa-`+-EM4cN=q;#Wk zUI23a-vXyFHMkfc+sp$j$^*Bj%W^Aa>2*%!$zuOm{Fe#zqN0&fU`fD&v&V21vX6?CAqa!n8$hDo<2yd(2g+ZExQi_J-*;=tHj&AB zCIhzYdJ-$7lQoi=_mrXj6o3LfOaO;lHb>%h?#z9m0CRz^7PRl(A@ikPDjOiWZta(N zRRwCdF;G~*1uFolp1*SlUl<7rK?qIUj{s6uOCY#^Hg0=?ln3d1#o z0T)O96KXy3coYY)to-|?-Lvv^G?C$51%qFZE12nqM8g&a#Ohng^GY2_Nsjd#Tirh6 z8Ap^0P+o=zQ;@GblroFP(2M`elrL|Yg#sM6XSS?q2$4BOKSta4zhkwuv~s=;y5K}z zyc1dECaP(j0dJigZ&&0<@QqxY=R&=A66~GwV)-z9c(>2uBs=A!IGSrj40G8DFC_vgF*$}`hM~b%ewvJY7;@-`_ z(51wftspmrHh6!>PRl_rZ(?=oQa&-IU{Z^90EZEk0Tn|1*_H!>%}uQXZ<3PAml8i% ze>vFieVys>Xo?{Zk9(}8aTvw)pX@f!?1IhX-CZ- zCfx8tE~FD6xCs`TIUTT({g{Kv5=1IDxI<&v%fQ`_pa?nO+z9h)XzlN23_aKC=kK4WjgTn z>sRAsb+6k8Tc_LHpdeEtu$PZc!Q+AZvjhMy-5nQ5B!Am_Ot}F9i>I?7dB<)(E<5b! zFderSI)=a|&MfF#6DBpN=;GADuNvK5oc5b_9?L3$H!e?RnRlsgXW z?oMV-#VEq%=$D8M5m&T@;jZ=nngSX_!{1+TI@5R!q7Y;WMomp4{R_03~r-JUE@X%5PvOdg)127PXYK_EJp|+WtD8#7|1Iqc`Fv3C29F^h+4UuZXqkrBE+CK~rfAHOG;*AhQcKxPZ__G7Y&mmP! zerg`fQ5dvc%U3KCf%c#$LHJh${Pp0cDcaj8QB%>y|GIwLzcbcgD%$f0jpnhmUSo^q zrI|<BZJy`uSt2BmVho$n}!$8{AM?>;AXqPCti{KWIPwlf(3b>4>xO#b7~$ z#@f@tIluSCiuN*@WOIzY97bnVhHS}CM(KgwIls-91(rq-yjkK`vWs0DmJb};?c9WS zC*Db7e7(@~`FS3)|ExIcN7p;7YaW+UbYu3go$~h9ty>iZ#-k`N#~WcP@}FtWT zM1he@hm+?7+{Zjn2&M}+w-fb$)p*P*{QWg|6~R6x!p-3I{wr)_xTw#xPS>k%g-Wi6 zYN0`e;_Tg_pk<|2iQ>!{o26FblJ(x$(+YCxU5jvZZ!rT{&dwWeIJ5m=-rKX8tea{f z#3|5~RJ_}G-pxXTm8ru{f$In;ZCHgwGv1H&j-7jH7hd;F3+gJ&U`XWh?*Q;7z4Rbe zAhc_pnHiK65kkq&i911+HVPqd#(kQ~>o`UUZ4ThBcx;8gerHxvy>p6KqHd{m$pDj8-!xH4%~V;Guf^*Y%^{{cHt1v&J{kAjUJ`y*p*7 zUc$q}Xu!kM6B|gK6r(O3*h`3uDTKlqM-RTh;t`W>0@cGiU^g_%;e=*nv1wUNzdY}Eqpz(kaJWxNb zhE~`wyhH=nj{P_I)qB#?$s{;hoVMb!lE^IjXFmqmoiWQ9lpPau`JR96uEC=m&b9cV zRr9o~c1jOs+kanfK41m~8o@iN^XCFBTIeS1><>43il>AC^}JrW7aNKmyh7TJ#=F-? ze*M^=ePtOW>|1_g*I+pK>v(DK5#aE^(oV;ejNqHOq6M-id-1Eq>e^jz7PHM6ItS6C z>>4*;#M8hWI?^PI%YeLg)$+n6??J0z&qb58TWN|o(3NG*l%SZ?z_nF~0?F{}ISZ0t zXQ%>-h6PO`yhwV(Fn2hVgTgB+QYq(hRjI=5Z%+J)KuLmd9-|*fF)7)wKXc$)vKSn# zK3sS&%lncZQRC+hb-s($aNwSCcxwdw7EP0!*FnO|(uOdi88Prp5;tn5Zf+GoaW5hX zNLdKcvNR`=wSrit)ABt>*_1rT*l7W(`f++>%D!WD^9_>JrB-PjkseV=d!`3q>-SEX zRFAU%&v_Xw?GHWH5aEx%7wJX8ty`Vh<^7UHi@%9xbJ(ALLZZIo8L6?O*!|Qa6O05D zeRAUS^WsdV=kC^FX;j=a=@?{gg(qe}tMU#fS4*=GKZC~Bp9l6kb!=e-^H*J&_5@#O z(hda%Qlz$SmF+F7?pG`d_I=i#64HnX74F)h7UxSL)XN)dI#k!!#1QsxH+`N3WWuhY z%xttRo}fOe-4FV?a80WlPl)RK@QC|Wk0pnS;ogWE&4M3~Lqi!>DC`@L^sh8{-FLTV z<8a@lzPBu-O0uNmiB25`bFm+F1f-Y|y+6C6V9J!0-|j-@^mHW#IKYNcCs>9oh~N5~ zSLjdTjr^c*kA=l~Cuy2hsG}G=2q$85IZ2v@QTn+<)0(sl&S>lwK>g%LsFLvP!^JC5 z%$tP0KXh)-`B`>^Ah%1gOfsaW{{eEqT<(d3S$S9E$phWggUgN!#~6UhcNgdi+pW)i zkLTQa9*;J!ur|AngqBU&#OPt91lnK1by7a3!a^NRf79|QL2GhVsav#HVHfTcpTufj z%}-D~3A+qZPoW<&wkw6K-^*3^Ip)wr@V+5pD8a!5UVTOC-PB4a*B-d}ajxmg{#=)n zYy|Vl`Of=Z7xoW6Q(CTHa_gyUhO1dnX9cE*LiDk?pt)Qu-8A=2u8KLME(?hiv{r&lkGm5W))5 zb2JoJ(iiGad2YrwYoG{`#+UITsup4nOvi(7%$It0*|PKb{u0E=K>wBI=%}1BCEWIZ z-lsp;mU1oHQb-FE7oazGyM}ousPRuwq#?QcJ!hb_hRo95)5pjBLv~juru#Z=jsgh2 zT1ddaGL}SzyWd8=Mvqx06wWL^R_GaJ6&x&#F%Mv3D?>r!H1U^9m&p^fw3G3y49)7{ z^htH3A^EA_Wjo?HUd^@Ee4#LY=85+y>caSMg&GXa}(oh)F!ASY{(I4F! zq-~Ug3^`NFC>*+D7s3n-BQ!+U+)TccbW`}L7Ox%UAF_e#&mTYh$nu9P?b>aVO%?iL zKh)0JP~A~W37eisx^kBI9*d&hco5Hoykvu=0YSNI3S2(y410ifG9T*uv)m*Gbv4D{wqQbT=z?}{J-E3+6VGg@+ zWlosuh(XE06N;37H2F5Nuf^;tAq=;QW@Z?A@Qz*zTA9uW&%{-@XuwW;GHAs$4e;O! z=5mvLxMgkJucpAWSCrl+!GZf7u~Ya{@|RP-s>&?Y%=hYU(E5N!Bd|vSfexH&NX?lw z><=v+@;Cf7S2q0h6)j=+P4B(aRsFXCBz4;1{u-*8K;@1dsFj#RfmG$RR)sG}sJoX{GL=kf=mALa#;fOW0oSO;o6btnD7tf+iMt zKLv9%fL?}lUCIa|Y+mp>EbTe$QO7=T>{$G?@up zA%dN+Qp!dox9Z5HwqN;GA|6>Mf<@e;ZY~Kfd!PoC!^TBEzBly-2wBzS3rSm^B&2%Y zlL`nC!m%3s%EbyN{r9fDLhPub43xxS@^ZIIO8q1az6)_{4V*MEXrq%`M)PqBvD+U1xTiUAN8c5 z6i8|fy*!uCV?;tjOb=0lqDc?*2pYNpoGOOoPjf7!>Y9gWy5}iZHU7-juL%>?my)pr z4viznPp*PVyATYprai<_h3yYs2enhK4^$z>Bxd^c`&F^C%J`Dd z*eU7pLWT~{drkUPl1ZoUp&Dy4JfR1?d{aU4`q}0bpD>1T}4a7VcKLHd$ZTp=E^FHJ8Eb(s{|Taol}E?@?$I*9u$v~gA|yZCgrcfDxz{Dx97IwVOKCP>+X3T9-wq0&0xzpI%Jo0bRJT=qd1%vHEKD_ z7hFIo0q!rICaG7b262hK6ps=gnORjpgL9a~e~mxsuj(|u+)DBT{S?3F|E`Pg1R8Me zAaxTwSkb@(<|E1l{tKnz;Pa0k1U>f{IYFgK$mW(guMA;PNHi^^{<9yGF_Y!#Ml^io z#?doLrVuQCTg2)-#o&Bhfg+)7msREF^!v22uA&`js%%(q79oJPabN5xjDn>}Sg0?D zkbWQf*VVM61pl$r8z8j93Pp}(2SUdH0Ue?h8p^q1ejQ7`7yv$-z~eqymFJ8?;MX%J zURgVhqsT7JkQl}&V(!7``{l8rp$QY7jsbN0eVTqOqKo!6V~hIJo{Th4?O}HKDP23) z5JY~1S^LWC``@W6 zNPxVPRMEcaH{95xt}6X z3dvS^P+A}WcYeBo`}=oFyHp)B&FT-99T6s0$HeATB7g(9@GM}SArCxyLf_B{n`aj^ zzCK=a9hk-&5iT*7`q4YLlCv}QWP(e68EJ$(nuYKtqn{Xt(+d7RV1*|zT|J{?cI*!g zhJ}jO4KiBy?X^+q7qttXDp{$Sq6ye`f8cu*B-7!*$vYfinH5YxLj*Kl^(<%Tyn^zK zeaBEhRs@&Eq+n(mG|6B(g9}+@&1~0{5S6>H2Cgy@{tZ>|wd7Bs)t`Rs7<8lERg}i< zE6|pq?Ml|YN+h>wv5)*aNBr)Dd;H-~K7XEn<3xJ~y0J2gBJvnec|qH{3C<(uD=mF*7W{#e@1 z0tQ5n%7LWM#W&mtT*W=(=LF0oqRohr15%mfuvY$JK_~t58ByvPhTNrn?sbAdZ|f!* z3*qPy#7aioG);@41;(Ff8UpTku>=b+&m=n%yfbGt`K2OpI{ zN9f&JggDti9opSUmIRTsG`*>Ur2=s5CvM5Jz?C+b9uJII5qPN1`-mUK%zw`7uCIzrJr}3FjF9QM~y@L=|h*XE555G*LEBShRDD^NF)Nxp!Eereu+b#1KJhgWh$xO$+SU zQhfma*eJs=6T8Zei^avlTL!K|2VauPRU4a|-)wH@1^p71aXoOMfxsM;mqin$V{^)! z1i>R5D{ICy#*n*hZ{qmwW`IMW-E}+uGsk~!4an!oc04UoE-BeLy>~*yjES2ofdkjw zmfrhL!`xr1?FlXT`uu1D2V0Qzy|IqdDv=j1T9tcnt*%Z$1cx--I0LB!G7wNJpGcpH zY#2nalUpJ)J)@bC>4Ac%jklo*wkXfBaStf$ZA}8r?>| za0e9Uj4i(L`33EZX*hOO?jW2HK7x6e&W!Ux!$@t6MB&z1&}ejPhFY?<^!@U+;4MeC z3Zs)O$OKlF5e+byCoV`2^?gG(K-8Zd)t4z%JSSB#yHRqOcIT?9@X?|=K9J)!%qdc% zbpudd`@K3|I#I83S&5VIhw_5Hy}(q@$m3t?`;QR4D+sYoHY)D1!7q%~^Go{!AIE%J z+1+6ax-KEZz!5|fCwH2@lrC}jNfl4R7AA<+j1C$`v#YTyQx2P)Ajd>z@c!reQ^`K! zM7W$FuiO1AJV{C(?lqw|-GZ4G0imIMvc@mF3MQOx9))bWc49GjnS%!48}uWz{?@Ir z-dNLAfX^{zak!rQ{i|frX|PP3@GFON1BF@=62%~>2?IfD(L(9mg8Nd(?(bm0F#DJs zh?!ycY;Ly@C9JF1O~ltNYI>jJmf`#Rw3Xv@*`s1hny(bgt`gMWz7HDFm7^nJ4R|$) zL?%#>ta5+7o94{NVDt|ln;>FAAYqzQA)9f5*f*&~BC<260u43)n*9|PzRRyIeObWC z%8GoKGfC6p;-JxEWOc4_ZFS*=CuzQEoNvG$td)?;jm`0#3_LPz+4SrT0&gon^hCvR z=XCg$k7NCwe_?!zwB*s2G^I}Mj+*qSj8?1gR|OBGLHkO7Y(qm!>ghYm(-7H!d7J@- z0_O_|0JLpPWz#(}KRh8dP^T{ETxZs_5p4&xf4*s($<3e5^TmL|hqJT1Dq@fMPbZ5g zSX`wDGxBT(byqNg7@EiD^#sq?;G}YpPYvMKzq@_Vl)?yx15JJQ2lpE6kD-Dm-J@&3C9hU9Rarc zA?35O%DLujeKQ_txcq5x*{{@BFCTiMRe@4+Ye6#6<;Z&H*Lr%S@*thPxdIXl-oH!0 z#+>M_Mo?KSVhOlkv+p%NTX8;jJqo~bLoJD2kumtPM7C=L0k!vKf7lFH=!^)y@T8u9+x$EtEor@v z1}U0KGE_=YDshi87Icn->|1Zc#`ub~eGCNN+aG2pzMK<2aAIwv~AWQbTtb2iQc^Vw(2s!M&QZiUIttmfg!O9g5$RS zJWd7R_`WPaL|WSh2y;W6>Gx#=?TiF3N8=9|hmWPBnGJV?ijsytG;rhvs}p188mgqf zwb^YAld5SVlF&9Lb7_`dMJ0Pjj(*F+%;nx6=T5TZdrE^2PVvPW@D#DaJSZF>^?npR z-s*qYa{mmBg;IDZ?+%7(FpRelqSu>(wOp@d-OHy2tk1MwHZL@PXZ}_f0^&QGL8Cgp z+(kLcE{~(sy3GYG+Xmarxa@`4d4eVpuVxkjO7A6zS{!E37;w z1*OIV*>6T?{vKUcqaRq1anHi6bAf4Js)qUE_9Vajsm4|=hY1E82X47z?+Cb%e$eLy z7Gx@vsSP9&>7y#h^8${3(r38InVfxb7s(=AD6V`~(mOyNYt*3DnxqbS+Kn2V^#SLu zJnB$_*cdr~@3Dak*%}p}s{Vn4^wQYVEu8t=5{N5J3#{?XKqZj?4&>672f@^OYB?NG*bodPaLm72wS}J zDX7`;cN_EljahA9-*AKYx;t*|nWuFw=+H_6Il13s>rH>Ql+GMOx2C9vXvd~UZl+^| zEmVDeEC}apY$T_dj6yh0&Ua`qAbhTvTD|lpu$aaU3v<#dS6ApEq}q8|A{yjwh;b3; z3#>OIQ;!T{3l9cf4#|O44^Il!x-wE~E?8U`+MB|U=z($<375pns`se4Xv-=%~ckX_yeS1wT>aeUUlOTm1VsXI8yeDfCg%I@g{iDavX0AS}_ zURcod6AjC`!#$@?bu0r*MG6g>YAqR_OmsWd!SCGtnQMKzgX3L#I_bt-4~~l~g2Rem z!I>;g{rHUE=GU8-`_1D+PIC$_cy(!3vrAOI$BQ>g8!XGbH7|NFIu8}IZ7vQn-TUTo;^hir2IL>b5pHW8+ZZ}iXe$|@(O z`#(Wr-0ed}tKjcCuAc*_i_6pL(ORRGLC42*v;IslF|PN!e%(5e@ZPrmiSSsKOjY=3 z&#S=2>e%jVbDoD-;pa>8>gra{_nS`5ax{K)jNExwP$O92gkchxJJ_nYPE-=zd(0tLV;imZV<^i9 zD6I;5`E?a} zVkLJxr|{+XNa0}KyDbS36&%!n4ME`W$>duy>c-i3 zlTS;6;QbY+t$@w}tx*Ku?QG1YT~1VRZF`LY?RM$N$`5%Ss?k0+$>rRo`}25o-zth0 z1m>FLkS`re2|1Htz`1L+BzTsSPr>B_n&9a1dn)Q~r8-Sus=jGBB=kiD4J*#aWp9f$ zX`omPcoN?77;#&&oB{R-UIkV&rq2gwp=+_($4-4*EXH4Hs_xJ zDHYKEl*}Vz`H-zv=*6P^H`7BhOXBxe_~rMkz^|kvQp4AFo>(2E$u_`*Ya$4@2m^}C zCmH_~;;!eP(ZSn=X2%@B`-~H{Ns3m|>nwXy8iygm#J!H??UxvWqd)DJE!QJ~)b4SS zebY=6l-Ic(@7#JcDD5R4ZZqAjlF#ouY)sFn%teEp7KNOH%HEtRg?Fp9HPRxI^#shD9(on>I0s8#Jy9T-9|QO8L+B?X~-W(i4QMV?OSAGsS^eq5(vf6cOWDARx#U%`b6#^ ziYH)G;367`Jx_&iUb7PK(eTJfTnukj9Q}kQjK97l9CUhVK^f1KN`M#GId8#O<12_H zsz-QmC-(H=>P3xx;i}7ymq%=&7LHIoB+|6Q#ABW@rtVlqLT9#~;XJETl`fks5UqkfodVl*BBfJxFp z59WZZd*8JE=j*x3uV~0q!WDG(1_B$~wH5W9b*8|1G@qj<#~l0kag(oK?spe6?WK_l zCKfpL4UskAU}U1R;@$1k&J07IRV#>9SQ(|Ux5Xj);k{nyuZIfR=GE}QJ|hb(#otpi zz;!8V5BsbXofegFHiZX@Mdkj+w#VBUCC zbYQ88^$>B>Dvr3u((F$ZI_uDd5wEY)y6C~4q~wip{w=fjY2E797@Inp5bu z`8Np3`+Xn0ecaPZxL>HCCzS^9(>_u~DmN1-m)dxy2GgYkUO^GE#hx(1OO?B=+0&8s zI@jlV-Qa5NhgwlRE@^(h6pSkFN=at!2Y6Rk4xbzA&=n5pu>G;a40}$=)QrF72rBKZ zsbM^>P_{A6AZ4ac6?gIaGgn=5CgVfEFvITqY^OMBS^Gsg#H=S13xQid;&1QUA`-ig zZ)mar;SVZinE~VL2TH|_0Bn0e4@Ryc>WykFbI^U$?u2?eGIFLuoc1e@uysFTJ4Q)d z3Wo1WnQ7LZxO`NllwJC*numi1asl%@c71{76rER(02B6?x2gv#kN2u}pITnzdS>f8 zx8RfZ=|S$ZTqoMsS;nu+Ut^T~r-49U5r6%t``*M1;^a^3yB|fZq*pb(s~S?n%vM-# zf+4VooC~xcQxw7xWd3yn_%nwwDEw8_Q*AiKXV}Mfj=!{7$_bF14u>nz<8z8|Lg5@i zPw(XWj1M*aof*r{D%;zB?l;&k-UFmO>JwVJinYZuoJlU!m2-`!Z1?8dBkqgyM^w9c ze$rW7zIcigRPH~Jwy2<}VQ<-C)zrAfO>#e>2s;(htpT=@d>jNs?QuZ}1~A>4F34Na z&_~fq0N+#^a@#NN+LQ(2&fZuA7Z)FQxm^=GJrh&pbUbg~V3_-PYmck%L^lQW9lUI& za@0Pc;F^aL^dMHu5P2;CCvZqd7fA`wpZ9nnThA-=*Q%M(U@($wHXwVh_Tbc0{xT2eLPd^URP zIy*PpF_pn=b4A~s8GF2{$UCE9*vUAM>CoBiPiF;pA*;>sj+bmekEEWye%j*3&26h+ zd91Jr!`7TnDpsl7=iJU!9fSiyKq~~#LT6n&a$J{!qXVl^Hnj<Xgka@yqhz2k> zj{wNIwx%pQ%M3+55<3mbfnfL|tn*#?jWLOToX63I!lm|+3l}Q@= zW8s&ku6#j+&mBxg^lOL`n!a5EbO3Tq2Gy`){YTl0D;-k(_o_ACt|=s`c=u%_`W|dg zt(5y;F#Zkt3T_EX23EOeYvk9oSQ-U_`OzZmNQ!J};~`m4WfY@08kFjKF>fuyFtEgV z?8|wQ;a&%@875w#qtx#~pb?Q5TY>Azh)@_{>*jbrT-CKsx=znzyj_;j^`TXkzfZ}Uh5kdH{a)$eDl8} zzUA5cO;pz;eff(KP@L^&zZup>Z+e^ooE4)~?*}}2K)m796{>0Y+{2uAqHQC~dbrek z(%ao_{~j(cyNZ_y*%1w}GJ$9-#0UhOoL$$}R90_h5J#EH@*M_LltvP3)8mmc+Gltp zc0d>xK3H#OPvqhqo_l)a%taSt%Kh}n+Df&uClA~ZW-T)HWu0L*`_sj-zG}6o%EQ0| zEU9hpTjCWi5--biHNwYC2iQa8P1=~-_}|9}+CYphHOOzauTQ)?$3Bj(?N?LCht$@v zptA3~5468TSy}++fntUq&jTy3_s}etKhzw9;5V#^TeH91_e{q)UNySTdovAn*u#UX z6cZWCzC4G`u70xHcKPY4e#14}H)fR&LGh?``yskt|!SC^N3i+X_VcI*i`w-f}%`Ofz2OFIxJ$G2Hhn-g}_9nKu)fyVTdHH9OO z0BAtmJpT^=APx_K1%{X)dM{_<-T67g-Y=F#=a@iLJ*q_cX5Q-V9pr@q8TDa-pQW*d z(2H#pxSqE*7P)5AlACo@O)9%NSPvmZ2POhGSm9VP19Ca`Z_VoDuO|<39Y`H5J|j#n zuJiB8iw=BB0#}B9M4ZV81UvVte6xv_9?ees5xYzE;&Nbmm-<}}hebG?vp8pTs&9_Z zukXFs+mOwRO?u{2`V4tqe}wbAyA5L|Ys;x8|1Nf<(^=i)ak*lbW^~>(^ZnNPr)zol zI!`G1EIRugrts1_9RJgkZGMmX`4wexq~g+m_b;md_hl-d06Sxgc~Ru1V3}sch2BrY z0g`}qv43T|=#sh_!wz>!@lFZJZDZyNT+TE^6%iQ0?~(-7y9%g$b$O^ob;v zrGrtjm`M7&xvwB5x`mfHvo)w;bkL?jqY`_Z^=#DRY-V<&G|kw%FSpLgzUxKfH8eDw z_Gg9fx>-`^tlEnf3wX$_nE&u(X_ga1MBy**(C`84{4Cj-m&{Fvyj$@0nJ+_6WMpM~ z){U~cLt88(<0J$G|5PB7Cu`#P5zoz~;b&s4^g3CVibCQhpJ)sJjHh*YNs)|`l~i-# z&JT}==z)oh_0V>AXuq)72@8Fi%R}om!p=j6CI@UFFQ;nyVD0t+EpT(fd`$s^JDq^s zo@r5NHW7qX4>s@Q&UVWmTu8eBVy1XwHcvi~eR~`?ADU$%UHkf19Hnk0J?8BTD8PH+ z-4ZPgbHR}H#9cc)z}bW{>0XzB8M^v~6G*Dh9wyT`p5C3rIUq6psJ-ZiB+ zG^7W7_ha|Ges^|`EvJP=9Gn(8 zb}a4Y+TV*>RfMAGM~~nWz4D#o{`Z)$*vN;^5>Ey#O4GBjMDDQg+unDq@w$Dwv!;iE z&w37NeEj_UZhrdIG$n1VmP5GSPt5KF1Rc18a9OaF-2_jL>uSIH~h6QeVn}zAxLjijI&Y`WKm&SYTsbCx^9t$guwz z(DbXL$_icg_D^K+wr#zMgP;O?S?72L2XWnY$Iom}XDdbS5E;2YL=Xb0DvCih0OkCe zlwpP9pHeoDY*mz>>&RNtTla~;IGw*8r{i{h8@k8zbrAm_O4HpPhZ$VJv9n_oX14J& zeL{9scOi;i+9f~1jJn1PzB zTW~;XaQX{6K;toQfj8N<0i-o!N4GJ7$Oz0YHAY@u@4WtOUPjTUgel3h0=z~s4RRPe zKsmj}2n1d-wK8&Xt;86cORK*eU)i&;@Si6!zD&B9AAPM~03-g}lQr(zKC>H;9W&C~ z3~gr-p%=BRDEDj{QtaS$9ET=6H_J^^1$KY0M)i#9u8D#6(S~awI2MQxI4d44Gbw6S z+;F@9skMybe zi{3i-@%J%^mVo-m{l%kv_=;ctSKa6}fuH$d^n+ctK} z-hZM9^>zl77R1HP+dA!^AJ2XCHy7X=)&n8uHlSt&D?X-|5jFBeb9^M0htq)y@+7z5 z=+nob`svbp5j3Fkl7w-W-B<_CP8nDhSGPe3W*6SF`yqOk=1i`6wA8{K%is|u;;~*~ z0@6Bdp8<`w3a1;_FntsFK_-f^k|+WWWB^{P_qqP*7c`@sj~Bf1D<8BJA~&I4`7AH3 zT#BY(E#-H~zB+`Lx^pPjDP{n&3*w$__m}K9{zbL*2Om8UiARX3eS-@X=n*{m1ej^k zp$CE0-xPfmbnE9bLcgO7Ey58agufbzD+FfVZ)ykY4a4<@|ynR zCE_jOASy`5c6I?GQ9YZM%&!Bx_aElXm4e2z5X}P%WW1Nc7!XVM)P)Mv zEafNz7>!c^U7xjAO$9$oMx_{F-u3j4bzv5+M_an)sJc#Gkz8`W*ISz8_+Rcr@BxC? zyDFGQ6J=S4;@0I*K*~Sexe7;QYq5sN!9_J%Fdgt$IlcSKt;Ld;kI$@|AGD?_M`ZBD zop%o9lXuj7W>zSE7RYsW-df1j(0h&Yub(;ZeH(F z6RuK(TDS}h|2EC-{CQ3N$`QC+icGi=0-hOc?sCzhMlN7!pCzo1oa=af+l&{oX?tEZ z*42S_@4T$2om}cQiG3ZevQl{8cXGJ&{zjTpbRx+(dw`1;m`GcPkDBDbv@3;a+Pj;+ z8x-l`(t9Oz_Xdk^9V_2$J?FkQObuhXyikwAA9HDI==_mB6UqSkbnr~TkU;|+J-Ge0 z3Jp^QE1n5WY|!TcdLj9HJ7pcO#S14Oo2G`P+QY>KrhQuGx|LFW{na$A|I%>Lt@XaR zW#63}62y>n-RSY{^#Pw^Ar*^JHt`!zDnBAj)b5u3Ah%M$>dB$@G$~c;9uto1$m1!3 zj+81BycZ}YDtf#+ra>seimFzFCc83#bixvpR~s-RXMOYl(X#@u6yU##YQNA+*M1bd z)jT;}uiu%WdmrSv^;WgZR=yEEpmS$$Lnv%pj!N`{@;hrM`bz!ISX|a4-|)GdC?EU% zZ~MFRzvSr1`RTegql?MNdsfVapG`t^g@QN@?~3HMhWSGlLQu?BbGpL;*8hNw;pSB;V@; z?z?w|Ay~u=kDRf}l+QH%?6@hs42m7R4_)|G3M zjPL39$M61k|G4Mgd(OG%p7-Mbe1=@|L--Bg7T-KY8YYn=o64j3*C znJcI16ru5qL&Yzuf!>6kyPV4)`u^c6ixwNmiTw*v)E!E=hyVTYSKa^`E-CXcX@J** z*nGZhBvektkAVU(8TB%9m)vP*q}(ZeMU%q)3Dev{~13#uklmNm$2FE zgwtU88g$bR6(QraHE%nIvw-b}N>QkhT!R5V7sbIq>D1~CIC0>IxOA6cc+16{cAfn> zT4BYn-cmlKLjisw7gTu6n?6?zt`R@vt}EG@kawm=jti2ZeBF8Ivnr+efte5p*#hmH zQ&*IrJNf4vh=kYZs}DdZBS-Vc(9W`SCcv>g3ai~-fM?hH4cdk-l72dcp`cP{)CF-L z>etDp>Dgq>cPU`xqX*{f;pSDg2+LC2i?^+0$TUWU*8m}^^|&xwYD$=gUEh9;_X zWVjs|w?L@<=FXkt;rgOr4MeOg^dEgHtKAGr2GA&!6k9t*I9`sxA&7!UA8#w}p9u%p zER7%CMR_|D0Z#qEAk}t9Yp67mJ*_199W-L06qz|0?pkQ>z(qhp$l-|v{8b-FnlXR` zRZS{jL7jME&j{4npoxJSbM88uDadzMi)5FlNSLr&8D$PH?P^!>$CB2OfNNhYSv?{c zNx4_$r**X0<45Z1V#ubQ8OeJ4H&CUVu8Nc1+^HJVp}a{c0M7FK7^(5#nH6AsaY% ztoKe|?bh2y0Y9dS+dYyaX95|EJoOgSJ*(gTNQ#)yQG_#P_^WiY#Uhh zByg<8YfaTf;yNQ$3^Z>2rEbERfm^W8O}L*B_->Zdw2=HN3h0@@S5k>7nVGNP0K@R> znP_+!t*kDKXs3 zu9jTelQF}rNO=Js_C<*hScq|5(!0(pf^l(iQ34kNV(ffqg{-g`4Fx{$l>@CwH=Gz) z)km;^Cux7b9`xis;DgJVWMg3>^*kq7E7r4moex{}+)I)r53K8`Vg_c$9b!m&JF-XBXD6C?ShcKTatduj zu#6Q!gK{H^#nMlSP~qGE*LM_cxceNUSYT}>c%>zf!^e>9WOWFKI%wa}3~4Z&8Pg0i zXk7dMv#EIm7?_wM@3@{aMFttcm3{iS4#(?Hgb7BV_|HZed6n~ka)kXs!XLR(u^ONC4rH_|-o|XFcnPqaTJ%RX8kLCySrsJ*o z?A5Eq-r&0Ev-SjBvif;WZ`uYx1F@EqU^$2g<*ci4h+RDamfdjqIwCa!<|c4W)%8KC z8383BT?BPEHPXDq-S6c*vY;bjuKz;twh{y4%(nJZqMLA{>tSk{4qT%1$HP20P6l~O z4@Y|n)9^bd@&@QWjoMloY#R)huwkt5T(t6C9kD5PC{OJx$ZN)foONi&!8`tY(;+OW%7WvE?kFTyD<&oXt>fmIKEYJZmgyfc;z|O}L+~kOR)fgv599z`)2fT($B} z%gDWQUmC~>-aEZ8+K@Z;j?8h1@M-*XJ{{Go3j97JfE}7F#41w&G0&G@+&mQ`1Qxt; zCqYaSerqj=eF8=tLRr_`67^fbBiI7(KX)2}<;`}NlfI(Jar3$1BWj5+jkdl+J<(2R zrVw~xVHiclaxL{#Q6bp(u^aRkC$`oPR;zSUScqjBK93san;ARnFArJj%OHMzKg7IH zZxnVU{5ls`B7orpyQ`6C=iZiC%7@TPEC1mZ&bQ9luXnskewM9yZ}|+w8Jgp`@rCr zIZsLs(rIvV%S%T=D*>pszcxeQ1%7B^>BBLO_sLpY`x{V1$sadAn=ue`Se%@#Hs3#! zXUJ^j+$|-neM^_`GvNp!nEnR=)B=97IE5Ul+8Y^!`)3E~Tr1>Dj*sL5d3XQon}wVK ztVKz}*(#w+B~uYQ9om5(!7(oGHV8dxuG-U|2@qgh-Cj;+7=C+l=biYnf%su@oNuFx zslPwRe)G>Mol=ev=PB=z!<}4nt!7y^zVik${BK2ofuU*3IXLOy@WS$B0B2_P3fSUT ze);;)KM+OUD$Ud}bu3%Ac5D-ok=e-oHKuH4Q;*loJo5-DN!b&vU{CTfx6)aC6Cdd5OZJit5w`qz9}b{2Hr6|z4@wwEGs41CLE0fHbUyt|J}C!Lo<@k zV$E|H^EZ0vuz8LdTw$)eIV@D?D*>~uZW3Bj@wP4a+0wTrwljgk$T~&$SfxXQ_W`U+ zTH1@v#bl>2WhjHPODFTeQPkj2A`zN!sDS6{f*Z=>{7!!g#-~_O7ntKV9o~ z)gIR(`LDZ(-?JN(t%KA^&34tz1|TnkajHI0V|nr;qP0!ur9(pvr8F3A&vZ=)@M(rb z4YVGGH*lHdXv%oq$-CG8?AwswnT~5MJ&_IE(-xyZo|sS5HB9SShx}hdBe>uLVd0UBTKiLZF^b?m;bD7{^w`Yh1n&Q5Hqd^-1l|_ zJ`Kk>H<&DXWK5+otD(XWnwj!rXiHQ7P8l6+W(+C*@rr!MdqHrJ_ zG^RZCgz3UBk3LB=Nwlom9}yWQ}88XVNeI0~sNik;*TR%41Sz=~;{ z{P2%r-jzb5lxNRkrt{8=+3HvX;g>e=HeMPG?V@CcYio<1PckzwK$c*cT3g%l2$A|} z)RK$0?<(2~H5R}qHGyJo-$YCerOz1ZH3r-;qs~0l^)<-hSz{>JF}V=7J*$KM6ur&+z98+)I{^gu)*3lbNYfRvjUgRT-H5*im9 z^n*f!g1)y7YRTr-9Q3kxQ#oK_W@NnsuedUur0ch!&4f1J`h7j)=##ff$L2?Ri^VYu z3o{YzmzE@pCbhajl{cktyAPf#Qlu1Ac_KyRdPM;l6up2m*W(Oid;dysIL`#Xz1*OVtNb zMlIYD<~_P;mh3+G?)umX|Ar=2E{iH|n%EknA(ltL?l{IyYg(!q3?nGLxuh2&9p5m% z{ud}PVp=9Pb0GGNLSNeIqn>iV1K2SQ>T?p2nK^}OA?>@jF9FfTt;vQNH?GVKK2mfP zt^`VJ`4nOXX7#pgI57sNha^g^RbsUq#>!oPcV5mMA{kZlA1{2yFSWNcP|Whs!!keZ z?#h}bEF3E0xS@e`GC85ccV*`K=^PWX3ZEOm?Zm80ZPA9lvBdexa6F;hrsomWE+J(R zxJdYVnYlMnJvpc6>u3Asz0Pu}<-K557Ul&n?UUVC7i< zpD=_}baeF2#a3fZzIR&0Faq%14zb}Bx z-wxUhMG{LK5c3xejK7XyiuG`~XoQg)^^9*M>c46c`k71L8=iQqZ)~6iCrQEWD!HKs zI&fvdy!0qIT(HCdtV)dDfi;bldj}i@IENIi)P{Jb+Y`hKRw=|K@ZG2NseHZsfQ(5nr=rtitzkXt6#J4>TOg@-A!vY!~m2roCNd ztDwTB)Vwn2cCm#7@08ZB)(fhqUW?{^{GAuWghGj5&QphDt`r*YOukwC*OxgOd2J!( z1^(eTMjz6DbEpJ&hAtryvZ(nnK#kx1C`+oc$ql`0bOh%Sp7h}UgL{r5T2tDIQeD=X55C2_)hob3n&9R&btEU5vu+4R#m=el zcSXYFL-rf;U**dribrd#RhL}kSwvg$y!uznG<|5v_((3^fsrYvf(NZ5MNnjfH&(PJ zbi}%hy=V*>M-#Ackm!<-6h}1bo8GOg9?E30qi;93P1kQ?>v~ZC(HzKT;G2l=TCQA* z2LojUS#=23qy>K`9mtRl8jr#q!qVR(A&~+cDUCeC1z5xgv|>X=*Ql8237?jkTJ8Rr zdz_LT2cGfCdUuuY=_Te=;<@BIFN)kioT%zN@rn@{-wJqCQN`i5hNfzStU2FKS{FtBr zHTC{sTgp}mNedOiw3-$PVAf~-u!ua!ACbRnTSK>A+}1?6A{k@H!`qK>2_h3`Xt?6_ zOP!1L;)pa;=K(MXnWS4Ulb$%jztn5^;?|*#Cc z);2#4_!!HK3b{wiBjZs@+?2dm1p|I;7k&o67MiTBJd*3tEEIKC>Ndccs@Xzw@2pyM z!~T~s|AbWAL!V{s8drmB2Ky#U!xl004-pdB4~{?XH~Kv5pglWIvGr5LfFD7x3yYdi zT<)M4TPyqC?VmR{qM9iN!m`B7e2O|d90r<7mQN|}N)HBP+LZ-#2D%i;Y+vJ)Uu%kI zWX=#`v)y(w-o8s`^d9Dwr@!MK2=$#DP@bJxb zg621zpiY0Ky9)x*!)|^qJz6|U{Nn19G&5U~!f8JgZ%fFwo^T0Ov|4x@_eC}y9&f40tEd$IEB;i8rqjpNn^+g`B0MQ#sG6{mrKd@uNBhWm~YWCLcnam&W#i~19h z1lI7!NKm$GS4HQ3(C@GlD$`N+<#w%>wMts=yEqFTJ}KVeK*Tj;6XD9A!e5%UZrNH(ezgpL$KwzUK!W z`7POrJ0Am2G!}@Q(`I5t?s#lHM4|p$o#jTs#fL?-o!iqs^1(M-#hNc`$U@zuogZ(u ztSS$B8~0Y|$|a?!m8JCYgV%{O_jFj#y9_?EJ@)jBHHFK)UcO~{MYR}`ECk1wH4k0B zsK=^WHUD&;h(IcL7e_Juumx$CKqw&`57aaMO>8^SLerfa`kpqN-g+{yAlG!c3@)kU zdzbT7`-;VWJtZ2I98c@UU%qVQc*!>Cb>@QZeERV+whWO~iPa6*<_HYT%Ic8bdq9)0 zS>_TFB_&Nf7b@*#_3PB)>XfAAv1-C_Hcoq4?>KX^Jze3QXf^y>;1j`i`cJ>t4$XM~ zfe*=d4v~8WB4_}6&oN!i0)l$8K8!JNBfUQsg_ZFB@_yk_IqLB~^hW{Ro~Pz}ZkdL1 zR=3CQaDQ*fyqh(((^W&=k1k4@d=&&G{3)C|8p>DYoi$Fpt<}bG0W98&U-p!BuCUC^ z%bOt?{d&wV9{*bOc)l|bKUL_{=YaAa_O%NxpN3zxUA`}TH6<&31HycUk`C_7`V`@` zX!2QT>QffTFtK(}F}pYVS14&)(Pmjom>n70W5d_nA9ROUJgCqP#O<5UhjowF&PCMh zGTDR?V~BDO*!Hp=jKS*QK~cu?E6hr}alk~78A;&#IOXThygcd>9E7tIU%XhpdE|X~ zbE#&l1WhFTRuBT}CRhe2ih8{>gFURZ2yXZw)#E=_GFW`_L1z`DQ_r2WsK z7mgg)d)9jofyshup3iSRCh|x%66_HguLCG}76a6Imy&Do_4JpbN2S9R-M`@A5Jgm! zN64?5*nH7{}473fIoKNd4Z_+C%=qD^7V73>Fj!u^~g zKgo?Yk&Re|ITcF_fHT`Pd>lSv4$&U~?_9B7LqMY!?}rw72gJt2T;~OKHL#Q?&wX{d z4$SO^4<1LE^&VV`&z-#AG9k12wn+;Vm9T;Xj8mALbx*88A0?~Tb$Q05tID{w-?)K&tfHh zK~Y31B7+IIQeI@h+8FU)J8Da3?8B9j>iG#SCKsqAjDd=qSwm%qf&JgF$7;*r_xOG- zesi>4&@XMSohHME8@Q0C}tOXfyT_|ke_An#4})gVyAwLzVsmAsrw*gdwqfh zUtg#l&hJfGmQAb;&nZ$hpJK4iISY5+&)+NCQj$q|j;8V}I29ph6FF}+!7cZdeS1YK zIL$M-XyXTS^#KR-q}l7=C!9=T0|D-Z&dnjzb&$;4oX~wMGDad4r7vPqoOahL)j!7 z;3{)e{opgat(760b0oE3_2(QH2|`02=&v-(U4>F#djuqstNaaW0?4hS3F-)CBsCDe z`I_)mV`p-z;Ln%ZhwcM)hEkAy4sJPbEau9a7x3Lo@q*{kA%`=jk#2>3y)Sq6T?G%AZ*h220zjhPp(;4rb->R;iS;>gH8^546rrSPLY*M zzgKx3hkl&ZfT#feQB>qI%Rb*6JmFJPb5MP|&4v=6=Jhf$EmZy9hHcQdTAzVVAEg5; zGM3{?D!^&YMI$}E$yrvo`#^ozX;_cxlTi4c4HLr-JKsRPNyB#O>@2O87o_Osrl#W8 z+uu)w?bqKQ8#1BAEi5L^XZ~RU`4lqKSroNltT%W$!@m?k3`ouiVp4A*A7>i5nH5X> zER?i1KU{1h^X`ZoJEr6{*=QIUlW2!RF-9}609mJc{3Zo<`t4EhSn3ynp>rnF^AjouMU7-cy;PCsgLG}|eBn6ge5I|ZP1Nsr3SxwvF0J#r zTfMnb=nwHy=I9=ZHNLzA%E*C}9#iz~IMwDg>nG~thp ziHf=Q#e$Z_JCgNC}RR=;P~!PJ$?}#j`nG_SE1WGpRp#oV+ci zANC11J&~MRBD~rv^%qC=qn`x}57gJz+Lz)3oY#D_`~L8^5K-Y{L+`K7KX?6-)%gjs zG%9-xy;9ChYjCf2e-DkdlLn*Ee^cvJDeyuwbgo$0tM)k8@pP_o$ELJ6+ue(?950Mb zO~0!7t>V6IhaH+CO*r*SrOn***J>>waBXvA9cn&@7xl{5n}NP10b4x=KtD_bRAbT9 zzQ=7jE(B$yG#fIZ5jM&2S%KalkbTjT`twEKs+E(jS?%E@pq@S~$_*gWU+p{@hpzGm z3@~hn3lCJMrcampldqnH`M|jx%_2tICKpt^h0pFWl(CqkX5Eut^RuZ`dE zX`P3WZ?BGAbt09dbfTzs9&{R$rfA3~sKVCxpm~#jcj*`&9wj%tf%I9s?*uv`iK!TJ z7Q83@54~hJQ5{|s>%j_{Vx9ikJJsN%3x$99Jx57&u&uMF`q!@)sqsbBQez4eys>v~ zBHx0KOt8w=3US(mMP?%SiC*xiYzg)x@vNH=$ZCwI^V!Fo}GeJE7fS87+vm-W#WnRE;_=pqC=0i;;-@D8|%01wCRV@c&6^F#-lao3K9})Sp>oB^@&Jerx zcU2(9gkN$B2vnUnT*z5s>k5RfNIPi9udEv`(D>ABYHHX%T!jx0*S(?Zl%@gN)wht8 s&gLjYP9AkJ2sBYxX*0oUa-T2#(aK_-9>?&ZwgL1o)HBsB({YaYAA&|D4*&oF literal 0 HcmV?d00001