From f61a4e956e84bf96e9dc56773de81403af50e3c1 Mon Sep 17 00:00:00 2001 From: MuK IT GmbH Date: Tue, 18 Dec 2018 20:02:29 +0000 Subject: [PATCH] publish muk_web_editor_utils - 12.0 --- muk_web_editor_utils/LICENSE | 619 ++++++++++++++++++ muk_web_editor_utils/__init__.py | 18 + muk_web_editor_utils/__manifest__.py | 52 ++ muk_web_editor_utils/doc/changelog.rst | 34 + muk_web_editor_utils/doc/index.rst | 113 ++++ .../static/description/banner.png | Bin 0 -> 49159 bytes .../static/description/icon.png | Bin 0 -> 14452 bytes .../static/description/icon.svg | 1 + .../static/description/index.html | 68 ++ .../static/description/logo.png | Bin 0 -> 38064 bytes muk_web_editor_utils/static/src/js/options.js | 91 +++ .../static/src/scss/options.scss | 22 + muk_web_editor_utils/template/assets.xml | 31 + muk_web_editor_utils/template/editor.xml | 33 + 14 files changed, 1082 insertions(+) create mode 100644 muk_web_editor_utils/LICENSE create mode 100644 muk_web_editor_utils/__init__.py create mode 100644 muk_web_editor_utils/__manifest__.py create mode 100644 muk_web_editor_utils/doc/changelog.rst create mode 100644 muk_web_editor_utils/doc/index.rst create mode 100644 muk_web_editor_utils/static/description/banner.png create mode 100644 muk_web_editor_utils/static/description/icon.png create mode 100644 muk_web_editor_utils/static/description/icon.svg create mode 100644 muk_web_editor_utils/static/description/index.html create mode 100644 muk_web_editor_utils/static/description/logo.png create mode 100644 muk_web_editor_utils/static/src/js/options.js create mode 100644 muk_web_editor_utils/static/src/scss/options.scss create mode 100644 muk_web_editor_utils/template/assets.xml create mode 100644 muk_web_editor_utils/template/editor.xml diff --git a/muk_web_editor_utils/LICENSE b/muk_web_editor_utils/LICENSE new file mode 100644 index 0000000..faf7bf4 --- /dev/null +++ b/muk_web_editor_utils/LICENSE @@ -0,0 +1,619 @@ + GNU AFFERO GENERAL PUBLIC LICENSE + Version 3, 19 November 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU Affero General Public License is a free, copyleft license for +software and other kinds of works, specifically designed to ensure +cooperation with the community in the case of network server software. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +our General Public Licenses are intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + Developers that use our General Public Licenses protect your rights +with two steps: (1) assert copyright on the software, and (2) offer +you this License which gives you legal permission to copy, distribute +and/or modify the software. + + A secondary benefit of defending all users' freedom is that +improvements made in alternate versions of the program, if they +receive widespread use, become available for other developers to +incorporate. Many developers of free software are heartened and +encouraged by the resulting cooperation. However, in the case of +software used on network servers, this result may fail to come about. +The GNU General Public License permits making a modified version and +letting the public access it on a server without ever releasing its +source code to the public. + + The GNU Affero General Public License is designed specifically to +ensure that, in such cases, the modified source code becomes available +to the community. It requires the operator of a network server to +provide the source code of the modified version running there to the +users of that server. Therefore, public use of a modified version, on +a publicly accessible server, gives the public access to the source +code of the modified version. + + An older license, called the Affero General Public License and +published by Affero, was designed to accomplish similar goals. This is +a different license, not a version of the Affero GPL, but Affero has +released a new version of the Affero GPL which permits relicensing under +this license. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU Affero General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Remote Network Interaction; Use with the GNU General Public License. + + Notwithstanding any other provision of this License, if you modify the +Program, your modified version must prominently offer all users +interacting with it remotely through a computer network (if your version +supports such interaction) an opportunity to receive the Corresponding +Source of your version by providing access to the Corresponding Source +from a network server at no charge, through some standard or customary +means of facilitating copying of software. This Corresponding Source +shall include the Corresponding Source for any work covered by version 3 +of the GNU General Public License that is incorporated pursuant to the +following paragraph. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the work with which it is combined will remain governed by version +3 of the GNU General Public License. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU Affero General Public License from time to time. Such new versions +will be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU Affero General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU Affero General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU Affero General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS \ No newline at end of file diff --git a/muk_web_editor_utils/__init__.py b/muk_web_editor_utils/__init__.py new file mode 100644 index 0000000..e0bf9f9 --- /dev/null +++ b/muk_web_editor_utils/__init__.py @@ -0,0 +1,18 @@ +################################################################################### +# +# Copyright (C) 2018 MuK IT GmbH +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero 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 Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +################################################################################### \ No newline at end of file diff --git a/muk_web_editor_utils/__manifest__.py b/muk_web_editor_utils/__manifest__.py new file mode 100644 index 0000000..fabb876 --- /dev/null +++ b/muk_web_editor_utils/__manifest__.py @@ -0,0 +1,52 @@ +################################################################################### +# +# Copyright (C) 2018 MuK IT GmbH +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero 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 Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +################################################################################### + +{ + "name": "MuK Web Editor Utils", + "summary": """Utility Features""", + "version": "12.0.1.0.0", + "category": "Extra Tools", + "license": "AGPL-3", + "author": "MuK IT", + "website": "http://www.mukit.at", + 'live_test_url': 'https://mukit.at/r/SgN', + "contributors": [ + "Mathias Markl ", + ], + "depends": [ + "muk_web_utils", + ], + "data": [ + "template/assets.xml", + "template/editor.xml", + ], + "qweb": [ + "static/src/xml/*.xml", + ], + "images": [ + 'static/description/banner.png' + ], + "external_dependencies": { + "python": [], + "bin": [], + }, + "application": False, + "installable": True, + 'auto_install': False, +} diff --git a/muk_web_editor_utils/doc/changelog.rst b/muk_web_editor_utils/doc/changelog.rst new file mode 100644 index 0000000..3416b59 --- /dev/null +++ b/muk_web_editor_utils/doc/changelog.rst @@ -0,0 +1,34 @@ +`2.5.0` +------- + +- Added color field widget + +`2.4.0` +------- + +- Added widget to share binary fields + +`2.3.0` +------- + +- Added custom colors to snippet options + +`2.2.0` +------- + +- Added widget to share text fields + +`2.1.0` +------- + +- Automatic labels on settings + +`2.0.0` +------- + +- Migrated to Python 3 + +`1.0.0` +------- + +- Init version diff --git a/muk_web_editor_utils/doc/index.rst b/muk_web_editor_utils/doc/index.rst new file mode 100644 index 0000000..370d779 --- /dev/null +++ b/muk_web_editor_utils/doc/index.rst @@ -0,0 +1,113 @@ +==================== +MuK Web Editor Utils +==================== + +Technical module to provide some utility features and libraries that can be used +in other applications. This module has no direct effect on the running system. + +Installation +============ + +To install this module, you need to: + +Download the module and add it to your Odoo addons folder. Afterward, log on to +your Odoo server and go to the Apps menu. Trigger the debug mode and update the +list by clicking on the "Update Apps List" link. Now install the module by +clicking on the install button. + +Another way to install this module is via the package management for Python +(`PyPI `_). + +To install our modules using the package manager make sure +`odoo-autodiscover `_ is installed +correctly. Then open a console and install the module by entering the following +command: + +``pip install --extra-index-url https://nexus.mukit.at/repository/odoo/simple `` + +The module name consists of the Odoo version and the module name, where +underscores are replaced by a dash. + +**Module:** + +``odoo-addon-`` + +**Example:** + +``sudo -H pip3 install --extra-index-url https://nexus.mukit.at/repository/odoo/simple odoo11-addon-muk-utils`` + +Once the installation has been successfully completed, the app is already in the +correct folder. Log on to your Odoo server and go to the Apps menu. Trigger the +debug mode and update the list by clicking on the "Update Apps List" link. Now +install the module by clicking on the install button. + +The biggest advantage of this variant is that you can now also update the app +using the "pip" command. To do this, enter the following command in your console: + +``pip install --upgrade --extra-index-url https://nexus.mukit.at/repository/odoo/simple `` + +When the process is finished, restart your server and update the application in +Odoo. The steps are the same as for the installation only the button has changed +from "Install" to "Upgrade". + +You can also view available Apps directly in our `repository `_ +and find a more detailed installation guide on our `website `_. + +For modules licensed under OPL-1, you will receive access data when you purchase +the module. If the modules were not purchased directly from +`MuK IT `_ please contact our support (support@mukit.at) +with a confirmation of purchase to receive the corresponding access data. + +Upgrade +============ + +To upgrade this module, you need to: + +Download the module and add it to your Odoo addons folder. Restart the server +and log on to your Odoo server. Select the Apps menu and upgrade the module by +clicking on the upgrade button. + +If you installed the module using the "pip" command, you can also update the +module in the same way. Just type the following command into the console: + +``pip install --upgrade --extra-index-url https://nexus.mukit.at/repository/odoo/simple `` + +When the process is finished, restart your server and update the application in +Odoo, just like you would normally. + +Configuration +============= + +No additional configuration is needed to use this module. + +Usage +============= + +This module has no direct visible effect on the system. It provide utility features. + +Credits +======= + +Contributors +------------ + +* Mathias Markl + +Images +------------ + +Some pictures are based on or inspired by the icon set of Font Awesome: + +* `Font Awesome `_ + +Author & Maintainer +------------------- + +This module is maintained by the `MuK IT GmbH `_. + +MuK IT is an Austrian company specialized in customizing and extending Odoo. +We develop custom solutions for your individual needs to help you focus on +your strength and expertise to grow your business. + +If you want to get in touch please contact us via mail +(sale@mukit.at) or visit our website (https://mukit.at). diff --git a/muk_web_editor_utils/static/description/banner.png b/muk_web_editor_utils/static/description/banner.png new file mode 100644 index 0000000000000000000000000000000000000000..cc7c0df842ec4743afadf16aa90330a2674ff8b9 GIT binary patch literal 49159 zcmeFZWmuKn);0_X(v2Y9CEX25FS@0X25C@2YN1F-FB%pgEz;c~DIkp?NT*6SNPUyN z@7w*}`+1J<-}mP`-s4!mU|sW?bIdWvIOjRevBEXf6tFSKFc1(Bupx@FS_laDToDiu z8_@29zaS5zFe4z)AV6fF=y;oMXP_kLekJK`w|{8yV>dQ7K|}f{&d*(Ed*nRrrYB0Q z=s)lOypIwmpMWPTdOsv>sr|HPS*pe7Y~BCm=68om*@ec<%p)<|g}J?5|I^dwqHaA# zql!@E|N6{jLP=2I-^=k)6_FSo|Ko#!h#~BZOhAM9kIz0Hk|276{!Lq0n0JJb`SQn! zND?uG5!1F)JgnYO(uYf-Yv?P>r@7BsaIhz=IORO@`fO*$&BuSgNjvUS`>(fK;2@?W z8)wIi(*uSw^e9%==s(?>SWzI8H{*go>x~6~Bd}H=(x;uP5W;trGYh;@I zP4Z17Gc8x{3A2-p*T?W3X0Fw&&`)+IZLz;3rYR+2UMh^FQfOylv1;aPcv`c^F2ZE0Z^mM`>fm-glOQwSwV*}VK1KE%vv z@im)IFy<`@3;{j%|M++l-_3d_r%{93!SL9uX6T0_VGm~anxHO^-A}bE|J(2$Su7NI zeKN`YDXyry+q~~(S*exI@%g-Nz>AsYdg{D9^`>y3-K6OyE{V$m zpJ)Mslv&NAr)Y9jg8mP~*0v0)+{wDfi)QoK7BJnYd$AjsNE0$3pK++#&@GL8OL*h$352L8w zZ>&w{xldm>6oy{f9(!O2r&k=%{liIU5RFjg@&t9`7y>A+Uab=sIEh{%DpI>}efgnr zkM5)3tvh}(jv>_wiEc;YQ1XKzrNGxGeZ!VJ_!G1-hG-2j6O0P&qKproh@KXS*7jAzxr)bL&kF zWSkrqhju zq=(s1QUrUZ@rF00cAZ63kM*@`AJ?;!mU0+;Ji=;N3`Zgq#jg%dgeb$+G!rDp!Sf^;`Bip>cfLCr0 z8`nZZcGSS~my^IadR5-Au*)M`_7)-SQ_v>`&QF-7FK^pLB^{G6%OPKD)~TKh(imKcs!6Tjoq zY)&(|2#4`a-w0qDVj>C^dT_|SP^u!5aWKl}hTZSEUdj@pYKM}PFSd}luCNmAtyT1{ z$Fj4OxraFS6-mW%sA~C{)F%+!Z(9E5BiHejHHrKzQ@pRrzkRt}EGCvqTZx~|3$<+>VGo)gm|H|aw?qO7<%NpFIuHVTJWgnYyVpAHXqOh|M{wtFj~>dmn(H7Y zvp734DC3dv2~mH#Uc!^>kW+*EWuj=^v-J8o7knl|YiUuTj2it~3}m+QkF~_l+5g?R*~b z_u1Udgi%R|J6*q8+u{k^Y39Y?BShwxOAO*}8gHrwd}?S1J=0Xka^6DYJ$&g@hBAVR zP1uFnuK1aM2ej+r`_V1+mMw&01}^G86Jn3UT|cyzD=w014V9|0N0|#GLlXJUj8xWZ zOC7l1$e#d1T{Y6xY)NLmZIMH?_1vmL{D)I?ivv#=hCHLoN0dzo57)Oh{7slI>{;6> zGIr98jplPAf8n_N^kwDQwwZp_Ceb6m!#D!18JpQ(XPdKhGMs&-Gv#?3LhST3rp>Q< zj##q82%JCI01rK!z~P%Zlt ziI1k_tpXE>W*v2!!k=3hCf%R4jw|`RUQNC&fJXR8MZkIfG2;}*XNl1GY7;`kr<&af zVUKtM&8WZp(jk;wSP=F*5Z%}lKDa4Z@qu+y=04qdvK%v>qx?1JVT&Vk*`j|*O_2^w z`bs72^&%{7QKKU~wA>{F7E5#+LK~`STL27xL)S&lnEiQ0f?4V_7O50>lKW}7#uR@_ z#V*uca6}K0*>)+w8G$EiYIt{d%^nNKVoQ@8*&MOtJa#K zY!bt)@U7YB_jnFkkJ?vW{%W@)zwvo^6~q!(?Mi7|D&rU^73p9=THe*^dc1<&eR!tL zD==^&D00SVe~OI)e?i3M33aDZ;}uuBjmc_{tWz{Z7yhX)ZkLE*^OX0olKxsLsye<{ z2X2ptjfU(;2Ie^FMThnuFVETj@n%5B~Cq=%5%`rfa=OcGLU1}$D~ zrJqozcGG~YJXvYX31(HiQct*5L5Tqa$xX{OLNSgU7Z%mv2#JJ4Kz1Im-M4DKWgihopxtO!*~Q`@hf<4Pp%AW5mr$ z<-VZ!{{uk)G||nEWUAWB#YH;7G<5M_03#O4Ob{y@!~YL|_}9p|G+;Euh;G{d@dO^o zi<1B2?YOky`?Q!n=KuYD1Qd$1e@+O@$r}woK3oG9ocRBSi7ZPEsQ-oC6gyvCn768wnQRwCA(+s_2>1wGEk&p|EbsX zw1@Rf^~mgwftT_gUH_?XTzX2*H>=-MX7_$m2!uzvI?6_}^%$+wShU zR~I5a1fz^#RwkTm%yNGlfChZI0T-C&SRRU`=E62`@n;DwU`>5PU_;*vfdO6_X%2_} z@eibEU$94y>%r46nrq+>|6Ut{gzMZrFsE1aj}Z&&AFTWR@tz++t5m>GM>)U@<~cc- z<^P_+W88naBy<5-|EH6j2=yNWzxucLy-)@-t5+TjkNewmNALa1(f*ftQ3>zf<q?;A+n-vUCsM>L|HLWh>F}W(+8%>ExO`U~XP-i_z zy#2jiJ!WDZuDEm$=`e$F(IiChSqDOJNC=D=-S06JDVqE>*g+R$i%6)$R0*m3=5Q2s zz&YaPNY?as(OGe7fbYi|kEJn$lUFu}OjN)T>%m+yuP=liRiLc8f+PBcz%>o(@U4QD zfI$(@=`mda4u$YD&-bVNXlQ6173N(;F+F?jx6%2^$+Hs~a??qVbTMYCZDXcRmp;7_ z_S%KZ`3vX9Wuh2I5Od&(c{+w#7&p2zQc1j88})s-1xFhG`8mV0Yao%0-v9UU*e>&8 ze6-(1-YI3P>#}r9!1b*CQT>`ck!zBMMY&l_?(@D{+OODyZ9_884h(?Ez)Oe^Vy0B^oqe=>%yX2>oe)5F~5-!n5w@@6)SP_qn zvuiH1Hi|;E4EJx>hnpiY@=;`RTV@NH%4mgRq$qIz;$;XD=hHIdcid)R7EYq4#apmZ70*5)h0dvq3J^uc z3Axv3)LKgeZ_~KE709Gp`ZZl1^BM&+fZN~zt=ypceqRiAJuXuDRKjBwLRW%RT70sQ zI@=K{$M1DREJhf@s`c<)v0UiHHG#)#2E0`?VciZnZ0krR!*NOFhIIPQ7fMO&;g57b z`c+iGm;!%{X5%zwd6Qk9?cD}FOGrmWMYUY}9EXGbpw{|K3xwsNYGkU=}4v{`B(Z{zQNC=-Q zpJbkG^KafbtFD*95WYlv^%}M8)yc2(tD_NJW>J>~aYbyAG+(?h2vV8dSk4E7>Vik! zwTqZUuDg{_C9H{vTr;b*D45Y>q4{^OwbJO7Zd_Y*S!fBjpC~X8b&i;2RL`Vn^*s}u zJq0gM5pYP7yVjpo?Bs91*dXtYp}u{iyrz1X!ehCAeqgEG>~7ec!m?DLmhsN0-dQB7 zlHS=$m3ZJjHre~fK}a9FVoOS38HpQI$QCeY{OjWfk90Ip+AaHVwr6YEW;g%WNpUXm zS`P$AQ;LyME}kE(y6r7UDEB$nW#p|Uy|{VKlx?Y=B`NSdCLh~39s?UyR*-+r7Pm_-5f>M+_ zej=%9C<`iyu-Vvw{p?EOFyc4BJ_y045Z35#D6|1q=vip>6==+QLAM#X))JS^VN{1z zsGc>oEotZ}i&)60x_M$91&#k53S5TDUM8N~0-af}daltU*Pz;FOwzQ)n`byvVygwc z@4eXF1jpG!;!vNKoAzwaR1cNGTaIDLW+67eUSSAV>(9{qiyA`(iK7+YH5{sqnLbv< zWZWA`I##639KXfr63VQeS<;{Ou2A}UyWEf`D`oqu6D3FrUAW=g7=RgWx?f`Y$q<=a zAw0e!S*)on`I6b*nd@)ECm+P;NfNnkq>2^GfwQ#I7_X8b_l_vY3OnFn<*mDL})c9ckU1;DAFV9u`F|l-4|Fou%E;h}CK$RHxS=x1iGE28m~?Z8#T}aP{Pf zS0(A=MrW!t-o9O|MC%TZ-}7tobY;3w@DPzu*uWj;|9kEu2aKF zNW+E}r}Z&KNW*0AM6Oe#79ec=D}Mv~ra}j^q@>6Mo)bkC5(_L#-ke+3*o}4O)WS4) zAvP8kHtOvJ7XF@!_uJwIauCwl#rLo^@C*Nz1&N?O@-3y_hU(7$p& zbPyR1_l-?+)gm7r-7X!QsyO`j$=JORWgpb&s{0sAe;r|6KlJAD6Db+1ba(A5{l~oD< zP}Rd=@CHo=JvZ_>Y#?wXQ^Ibs&A-MOmr^tsn_TdlyOwi+P79!0+3|TS^rcMFOBS+Hg;@W=EqpB89gv7~GY0=?k9)=3iTU zP2k!HWz)<-{-{?<7Uk;dS^+bb9WFC?t|eo)zw~KrfY7+<1%y?d=5$PfI@{@c-B{Dr z$+TIe`?`{{OMXp!Nj%+SY}G0?rBjGHH-@mfe*O>3y#E)&xg!?pAsEFPZ9UK?e8Z+! z($OE!oTz(zdfL0c+?CkbtGNSUl#+M807`xP)uA#Gm#O&dZfui_)~zaLe6=4)^iK}g z`WJ8GDy4i+vD7ogKh-)+yPo{gE$*d!X*`7{3=xlK)n-zh8uC6^VGUecq>>6KnH-Oo zau3kt^=*37Pb%BxYCt+YS)}c@HN}yPtJ%vmqd$=c$t|h8!q3E|64y{tSIqW-yr$2z zl&RM1U{s7n01za4YDDVxDwildhTp*Gf;9a1Er{!3p7S7PC$!qyo$bzRpB4x(c_fW) zzW6y#Yu*`5-2#ovQuujP-hR{B6G4JcOl+e%OcR!MkO29XaLg__}fjA~<+L-cJ*^ec1b)ob35fLUDvlAD;Egm69*2DjW0@v znE-ssDc4y#I>k^)d@OO&i8C*Svgv*#di1o6!s$b`?TB75BrkmW`&+!Q0uuOsXEp8!r-2rR4PET}r4rC(Z;ldrZJ%DFD%KCNcuH^7k>LYXaIF5B2Ok9r2lY_?t zY?ML0vq|nc)t3`4+$OpXC!cSE)Afv5#puGyWwm)x+aovEmqz0{_VjPp9VR~nsY_mT zuQ+t(D7C2yp??%k>XL;7!Qrt5HBKm zC>7w>%pHdM{QCFFz=cMa7O7F4qo(-F-Y+KNt^}``k>pHuzBv#yUCw(gvSv3YrLZD0 zn<_$}3B1-y)h3Xs*|A&&dVc;%MBDPI4?tGt3r!@ggZ`cMIKJrWc(T}2qAUP zzdp*JgR;i&_affAFRPqH*S?m26~tlw=5Xm7KqI*;s=wo_N$Fl&sS&I&+4`)-q|xA& zua_89(=00$sHk>8zL{29^n7uz&kM@8tjyzbm~DuF5}GgME0e7Ir4utPFk3Ds?{Y3N zv>2HBJk*?fCGaRl;VkHPG~wFF=-1uGs=|;Knw7p$mFv#LBV+f|;nBPVD1$nW zHE>gfM)&m`ff)d~Rc&*?4W&SQNjWSdyFXPBU4{tJ_6q}|JV58dh9T}au!;`M)!kV$K+<~Qkk5KhnM`?lY#zmUx$|vq>lG|3P$s6rRp7Lh5n?}8VsJzi$~W9m z^mZs>Q+Jr}4&5kq()-NNSuE^d>PRNXnp|)V9o>;{3u$iM01gzOHvnvF9&qyYsXVp* z(AVH%fIVPXpGH;Q@(px_h%b>dImR9dXiXY%==2T_Vy^7)9sBj)%LuNWabG9~C|ACE z6;g$bo?OkqXS2}alXxT+f~&a#F>3ZK{l!_K(-CfG)aKXNzeatC#|(MeUCj!|+5v&* zU6@Bw;~P+DfVoGHru0)078Lx#edi5BwV7GmAovW*C0Kp-yK^aw4y@S@;Phxywp(2h zx8ru|)&37Fg`1;!kaTCx+%U7=9~ z+QszDtiy~6gNE8$>e8JIFDBE3t_fa0%Ko6Kid;0Ar+ws?O6Yp%TJ3XWLm}ecy;9Ww z-5H`}$!?|5DH@fZRo~#jM%L662@S?lveB_*!di2DpAQl4rXT&N%ND;$Kd;*nzB#0C zf#<{Hw$y>hNE*htj%XzXA$T}b-TTEjEL{YVdBGb0DTXP}F4R}SY!GiC z=pL%H^kVKT;4pOBr`O;$!K@Lk9wz~=>!y=~t*lGORWLYU7#}kr))TnWb;?GPzKXM| z&jwk2Df}42gYHwFCJWuKy&o+I#--Rn2c+>J#Oc|D> z=&h#{@7je<$fTd~%e2K5q}G@uD&Ofclh`Jc-Y;-y{Jtvd=Cjg%xRrB=P4Q^$>CN~8 zs1fd<1hsrkKB+zZq%jP^(6+4Iv1;38S?b=RmEsFw@<=A3Drj+j?ogIwtYGRHNiAhs ztCkKTrUPAeT#|RQ(@eyau?*r_bP~7}=uhcsbNwnY;HrChM~CjV%TwH?zL&^zN*(>9 zUy)(6-%kKj!rBvyJp{8DI!w}iUPt1x@Y4{s^uVef&)X|g#LgZX+&iI*oG1!^V=ZC$tiu- zFj77n{e%}?52=?~jiXYR7B zs>L|IZwk^br7i~w+%JoKYTIvrDTr>C5qesZt{$ z#&ipv>iTbu`IheB7FTzlAd`7zcHG0|`B4J9kJj1fD42Uul=k>(L~QN!B#ZxU zQ*$qyX=$yc$Xjl{$CzM$#zWp!mp< z$7hx6*2V5LnDkxpsD4-meO+wYw6bbPztPWlX7yQ#gevR79O<_h)W`HiJ&c#>xkI{0 zYEwF=@6DOiMD`f7U!A5Ix)XU3x<2n$X26;;#b?9H=YP@{O_{r#uwAM-F{vP^LFfu= zk^Lpr6ahh^fxI`jOBZy~g0%?`tX- z025gd1Lc-{jKG>g@m-Y>nO%a`ohq^+^0Gb?Y?)Z-=|nCe%Rc-@3k85yG=Shc+i6Om zFe=?;U~c{ct?>E*!}v%$80nCK=heB}x=MI<5qblwc0mdUl5_vJD8|&deHEV+_nJl} zkf?B!=tvD|tO^L)KI_D+gc!{?yd9A)+XQQXnx> zF``m=%G9!!<%DJ_I0l|dv{%rWYy<07LT=?7{`tJpdAmy-0HUMFZ-AZds77nZhY|*B zrF_?S`}LVysdgWtU6lPbNxtgxWP65hwhxegJu5vCiGf0%A<``#bOeqf$Xo&wdEWKa zD!krGOzPkQJ1aux&{w>{SSheQnReL>CO%}qR$jo(Ehywg;OZ{u^d*I7EJ+!IR(Z^+ z^o#zFOrqmVetWGNqYvo9z62lb1Y$m1PnMY&6&2dqY0b(GZ-@@8*^cX%J~5{t4S(m@?|^TW#+^lPn-o?zV#3J8r2zN-=9(+?W7 ziafe9@fDIjc!H-%h5=(r-bozjkK1m3J20rh&)M>^vB^k=DLgLWV(7xP$b#;}ib~FQ)`uRc{PyFx zP4PJkx$;p}`W=vl{9u!&h@wPD>{0t6(jY!l92UW;gB^hqXSm&$4D2H!MCPOTJr4+t zb%|j1^3}Sp_Gxito^Z52>gmsiAPPq>510bd-&mo;2?Y)}h(&en63UM=?ZvT6c%e}zx4QF4cjrHvvp3;@z6W$4Q0 zV6va-*|M_Jic$Ub1u&YMZ(_EGh*{A&*P`l|eXwk$R6YV1>9*I=c#BCQ59$KBZi&C$ zVFJ5fpqr>+sxGb{^8vPZ9M%T~IfE)R6Nz*ON)u8t}2&lEkTK zh2m2n{V-1mVKU{$S2FbO#lGa!c#n{`-;xc+#njTCfCGLq0=#jB(;{J2f$XNC5 zQ?chIJKyUSlGqJ$u=#kc=I72O3_9e7Rp~fB>J$-_)+n!Sf~$21!{_Y(z6TMz^1i5@ zl?|Dws()N{e0H&!l?#}6o3qF;S@h)uKKIjcAZgk* z8;4eH@z)^j)%Q$GHR9=ZJBDNq)DItiAgi;}SCWgk%vX#)`gv1ST2+anb>s{6q9C8g`Gme6nSN7$}$9k(_ZF!0O zB59<^<1(!IfjS@Y0e>$+;N><}A2Tkkds!C@PY&$HYV38u zEGJ&X4PpO!`f*O#RL1~Dq{M}!_DvD3#ybW(B2BC~Ais1GyG1Pn6sNrabOZ(1hE{02 zqo=#zP{Ie;n^PF~6U>-so|w2P+~v6Iexn5(N>SPG+5ltp0EXFV)}a%EfjEeG?SFa7 z`qo}G{}VtV?jF8dYPHY5DnSq|?S>D%8^-S?3%QtrSi~?pcYCo(tr#U?R0@cy4?0D# zvBCMFd(2z}3?(z%GqG3;3u)f&Wm>~e$H{s9JCqW+OjQ}1@VemB*ZWgS`u;(aG>%lkuLF-i3p04UhjYBBY1HcIzgOAPBc$TSuISWiiq+GmPbA`{-P*c-vG7fjjbw6 z{_)9rvYGU0VOnD@l(2FpR{=LqC6#x!VjU&uN<6%8MvHKyY7)x7@s-ajU@{&VzOPY? zO46^yOMe3@Ww9$irevuVKQwr!NM5WF>TV}7afNSp5F*2^QWHG-w1&HkUo%<0l&3W4 z{WN|(;#r3ewlIpk9B5lz&5)>Qm-2?=;i~cV;~}1ByCy0r+)uPSISgx{VR)7~O2co% zX~xH!y!N62!K1LHMRi>7JpYl1RPe!l*3E2&qPLZNPsfYU)O<7qZ8nhM#`H&tu|lMw zji_=($;`N!y)Ck^m+o^7ZZ?;r?@H64@mM)45CCAZ)pp?Ty~Ea8(t;7m(-=DA_VoGeSgb?r=r6%=Y(P}13)3D&7ms}2qM18chDolRa7}v z=jxokSAhEKcbjte#MukRQeHl?1wAU)^`Iw1Tg-G%s7}}0523$TdN9|s&06qaBHGVa ziX>wD1y-_k*vg-ULnA24y_eT$HHUivXSUg@pe`GNrs2b#fXXP~A-_}q;S8K_LuX=q zDj1^f(3%_+4$&dxBFKDox^2)i@d$UZQ(v5cfQiL^zDL>O$IJLyp{cB93}J1l_P99) z%@EgwR*p?%dcGDVI&=|*RJNy_xwP?d(?(iSW57sXRCnMdvjOqH6RHZWsQWRIeSB!R zyw^4-Dw6UIsgo-BTc$F=g{lu?BGHvair$(m702}~IJpHmo&@Cp0KgE1mW`E@y#Gof zG5D^a(5kzzq9EWCODXU?L3i0d$q~&*nJrWB0x;XL@3M8E;>d`piLZ^D+zr|ESmW~|c0H_SFt_(PT&uKc zviXjIn_ACUODLh)fsTNll~`T6QMH=(*1F)y+CmjmoScBLo*$iF%9Ncsn8d;7G!CnTd@BfUc%FLP1G|*3a|1Zg66UJd|JiPvy|B?oE;E%- zJ>J`5jXgWt=QT8fh+fO$(`c7d^pnXEIoB`+V{!VVG-gcU)Lbk6#FZbgC>^%=WB~$V z4%*o%hDW?D?P8e1q{Z;tcz5)vs(245-NIUlz>o*n2A|zow>1!Id(pi?h~%Sy85&VN zV^q$)n%B3H;~+Nbj+m@~g*qKjgrBKWk!4uB6U#^!u3<%1zW5ok8jH#Uxlg;md7xtW zya3tQikd))73J&E`k<{Q3(Q-dVYwevt9KqDJO8AZoCWA3-fdupOeDsV9THvX^Z6#J z+8n5UZlLR+5-*|G(ciIdoCIG?cx5{kTpu2)NZ_eR{A9*w_ra|pSZdlzk=d)L8F2YeZ65qOP_L>a!7caV0e34BE(8~K zpz0Dqj3IF4z5I+72RnZv9YA3p7q0y!pV@2eq3mNNBvg@mDGU&T^_VaOAETT7Wf?~E zpsTo7hIMEv5a(wsOl!+>@4U&=yjAi_y_tJtSS<0~*v=A>DGq5^AlkAm2JxSUHLrlg z!`|atLcS%zn4>a!1gN#j3`-2iG+f~)b(%EvQ}@GsejnTC6Th!S<|lY(=gp)vZ2K{h zDfWa{Pg#>{MOC6>@SAJ{d0M3E)U0W|>oU-3uwFu1=mD#zi=0sr>(6KzFI6?Y9yFV| zogJMS(aK)ZYPvzchz&!A+$eUE2*gV;&_cD`mjGZ<;*I_+%QLkwt?%0}>7YORq>WI8 z@jQH6!O4Wd0A~0t$I3cU1aM_PD)M@*tX|Vxa7L);)A_3HGNZp;lY96!omi|(;y1wB zF)x=`fUK>Ce#s3+|%f+W6G14KL-{*5u{rqr4GX3VKHgJ?dmrJ-#>>lUAf|95D z1wECJZPt@0k!}%fFCeVj+-2)N0P$O2xnmU>UQ1}@`|z-zcr?RiSquZT<~vEo)Ne#HklZz0kPU&GS0t5d95I?|8rh{ zi}LOuj&pJnA^m@g@>~Ezb6l4L$Ng`8;s0IAzXhcKcUSIw?EgC0zm%N+KR7GH9%qk% zcIZw`Ig){(poWBVC$grg*iQO8nsl6im|)y~zb^7UxM_U=_jkh@yC8s&jGC4NJn{BV zPvrruhyz8~JIEBB>0LyB$GN|LbP2A6|2{6Rm>@(sS7Pa5(*Z5sxAs6ODk=YvEH6iy zX3w3Hrp%}v=24)*1(Yf(E|sM8y3zx;BnkyAX!ODE6oA&h<_jy<10D&_{@e z2L&t;o&CobDQ(YqHdM)?AcVb^E8XE}xVUE}{oX(9WKp= zI5;@i`$y!lkRyihbt$VYC=C2NYVT8nm^?CzA>c689lK0F_E8}aS;{wh1Y@nMqg?d8 zdU@uz7N2Tc)!usw>9jKU+081En1_u!Bi|~=GH6P(X9(b9ZVvT)tF&aznYU79U7E9^ z6~_8I#~|(isAE4esVTvv27h>`cl*p*UFp0vd{$p%*v21ny8F)0=V;~k$yRief8?GJ z(8+ykddap#g1O@x_(mu@8zVlUKi>SSSG?x?$B1)n{$jlz?x+aB6crd0_x=vn(7R3n z5#-{HjQjWRTL9wf^SP$l3vyu!t{kf@to<{E7@SfK8e6@v&}cd}k1M560EwmJMwB02 zQA=HOyQyRiJH>GtNKcmOVse?bxPC$SR@?(NpIyEudQuB>c8Ol9)0;*wcsN&1hLSu(%)C4@YE)Aqn=tslnF`I~y< z*?2d)5)0!{?VW24W_f`E;$NOZ12zG*^XrGLJV?C7R-Kc6yN8sX^S7K?hr>Jw_sdC| z?ZsNcH}|n~m=)=7R=&bT9Ed|y;o5cuzL<)E8-JbQ~!NI4ii=#NcJ!ZQ_Uz*I&6r7PkI4xz;P+HiNMZY&dINf}HLhV`-=)}S54=XF3e3HOg@ z_##HbNXlNl<^3^PA_=rNk%P%xMlUGI?eCfZj54>Q{=|W(I~I4$LYDMhuv#>k07m|R zuIy%c=n7;%)BtxV$}qS)tlXEzK!akkR2vnST9V%jUFtRl$`DKnG~bVOi-Y7To9V^H zJD&^2hv0TcNpZdha?;~Y1J#imOqQi>+s{;g;}_()1h8$soRL-;#`OUbO~=&HgzeYP z6Eyz*e%$7Efh~T&@c<$5SWz)d^}0JRLRL89$FJ!?sMglb)jFG?s+lyaZJ-!dtFLEY zZxp%HuQwz!YQSqfJzGFu$-j-)F?6>>n@EsPKct-Jdm>Skx5=KtWWy`$e;Tu!)e)Kb zpFC)NVq-_lu8-$?y8UETt(9HUJpz>WxV1Ai_}G_n?W#^Q;et{jSqRgstvRG~MUE3xT!IK=A7YRqFk(@8iDt zKW^Pfsm}M(2`c;vmM6OwGeD_*MnKr$TVK^?Ck8cFCx0{*3JV4 z^e3;X$cEt}xsa^w?*9~l{xXovoq@OPG zEwqSaN(Js#`1(lq0ew?fta;a1?JYOF@kc|N6Dy3lXQgOyW$@QmS3t?AKVBWX6GZ-4 zUtRihLRCQi^0>YUBNyTX6@bw9d8}hz=k?wvziVYs6D3t2eR;@-EX8RMiBB&td~EtW zW3xXVl~T;J`%Y|FZR@hw_VTyzI})yF5syvtPWYbNkMnYz_P|X&RSo{dJ{Ii)l}M7| z=nz%JO}ozRtUtbOeHT_kZmy%)bUr{)FxwU0-Y?z%Jw#rJ#qx4sO<%<85t)$VhrA)L zBV=8 zI$qA$zlp0h(;Z0c{Ba|p+4|}wP|FWypCuu4P>Q~I+$A4%@bn6L7Bm{#)`5ir;K-{Si>XFF%i zo?m-?$EY!K&q`ScLEkgWCrA|+1D%h|6{;GvOAi@bM27=#PKfbjg8y8`R!*HZ#4mzJW@#8pC8wg!M=Z5UJmIr_GMCK4Wyq+eV=DB3du5uW;X-_+b$V!T zhB8l>`@xO+?Gt@CLxWibscGJD;hc7h8!J-lm{=fuQejd1^Fq)sS|L**@vAW)L;T_aBp-|A2dHDEdK~DR8IsLU;tjIR8JQih6aC)2f zL1#fFq_xz|&N$K~`B_!2%V~~d9pT=1J0XN)t z^xXw{9_W8M2hnh}LEFXneD&QC>U;OT&WodGUpf}fZ5{^##dr5dw|v!fVo+OE2%^i% zy{y!5Y&;-~F>A+6KE}Y6={zFGyB(l9Z;SQt>{Y%W+=tOQxF+J-?mBp8p6GVnqCuM> z72>}VdP$=8>|2HTw|bW>UCa2$_^s*kz9vfFgRX&EG)&CuU#}Dd)Dr1LHX_NR-7Mvo zL#YE?C!H*;+Cj&G`;3VFU(Omv3c?AzdHCk$=39$3rkd%wHpFbtS+8CGL5;lzc@&vI z_gL^`p`J8_*zu1DY@yE4EmyS6mVl=i9c)+F782)}{kTKHdl8|;>bk*mt#mv4 zkL>k=QM}fc$iH$aF%rjJ?ThIfN*5Y>RhH-Y2?&e#&#hTPqO)x3T6^A1 zelVZ^l{i{$f*BUNe`wwJfMD9LfocM@UiYy-Kn3O4e*^hvcO8!o;WN_#pvQ^Ds1if; zjQU+H3D?fn7sRK^TJd^OzjBPnUgN1RgZ{3_1;#4&$AfyMZVOU`ZO!`_s4k&xQk%qE zyK)Q-4cI}qnL%DD*l+t=TMl^b^~C!PuxafvSuFQYkuVrevdwsV^>p_AyStL9YbR zz7nW0y~~8mQfQ3)R5}l9`@iEN;pQ)$RBzI5pt{IJAOr@gJe;CtB}8FeN3p_*+t}KQ z0GedWt-2k>6jAzLJ6OFz-?PIsnD+JhIaBxNXN$^0h9PLwOGl4i}5<=00S@&=~lSyIwipyN~sFPtspAJ3v`H;I~eEKK(CL$WWSviS;hY4pVW)*-a-?QC;$h>GHP)FCSdL_Z$@as)avgz_7$zCVpfgln( zr<1~HkJCOT&u(osLd0`I^kToXQt{V(f!S7NL=mf-Z`B$ta%DWtDCTOkAZ_lyCRx|{ z`h`XO*6fa{CGa=7#5UmBVKahJTiGTP_rr)Z_Fhbi@tkB8Xx-f220p#nn-_1rxojq( z$rQ#nSzf*+X^r!5+hVI4xy5{9nYFjrP7SV`I;Ic1tw6JXfAL7;U)}4_VGw=|+B$%i zn2wVjDW&NE&si#Xd{o8!ydn=_5w_3Pb5KmQi|?;|7u0c~MBdlC8pZTn{@a_oWB z=Y#DR7qpLWcDF*mA%Z_1Jb|`TTU`96=@>z+yt-bfJv#Hh#iJHk!AvfH57}JsKAqz+ zV2@`~3ufeFe%4uU8AtO3DL-U(#H(fOl{z<7+wXP-?y1&6#YPu8zXfrUm-ZqWX)-=Q9zqS-pe6e^&eGLiXzOtwh*Rul#?;i*iuwznGK+up z2#ZgU`crLl4Ex^WH%WBF;5TN*avYx!jif$7@7Wfzpx9lQUf5#n;?T_Fwuz*CN6zIp zdOhl~-Ey&E(y;cuKI~*ky}Q*D?a9;A4z|wJRLWL7*dyH6)rksWXd+x(>wd;PFK&Kh zaN)_pWS{kRGNv?J<;%d5ynTIh{rXo@#8=40eJ}2N)KPY=8=XaMOuex3K>)vmp~IO% zDG;&I*;s9>+3e|L+_>`4CHKD3bdd?jxetU~{^qHI@{52GG0(XwPgo<44vO zqU_xX{WSG5=ZV9?c5U%FtK?u3j@T(x$25K4s!y1cz_<#w0&;FxgE_tY`%(26H!)dp z8JD=V^RqCo)rWqj&73@n!7d2kc)z*KstpO&zklw%T>l&0?fD2XRu(rUKF;C&jW0-R}onpFG_X8~gcy$W_!tUk&to z{`>NP01Cx~b=jNxK@zxwr4~gyT;l#M`}{?@F}$KvL@0DcNd@ z-7QFWH%PaHw1AX!Nhl!Q-6h?9=07q#|l&e)WXE(FoyA&?Q|7bxY2{+ zV!O&G$%y~_I6tX6tb78+igE?$8lZS3rP&L9#ai(DDmDjJX{`-TUm6u|qqi18rj4Fa zA8?UQ&-8fR*}PmY84};R-ytwuTkyB&x6E&?lj@hIBwQT44N2qCNvtC83NhXwxRodN z0PiD8O4IjlcZD_i1S1hOc}DHD5ZbWeR?EtJGEQI4=^-rTPathUQx z|1-WeS8xvOn-PM7GEjc;Vrw8)1^N!z>j5s)a2~6o*7OVaB$ec7QaU|ZsnJS1*Ug^I zwC-oSh4u6|U0sGSV@6|A1lL<1me@5kg}w@MFsB9(&wN(y$|0AFnhv>Yl@PRj^%e66;_Wn3fOj0i&=8Z#pcR%f*=qOMWnskyIGl+8_S4)!Csi97fSb= z*Q(f_*(}+mn+k>StM}1TXP`7lmikPtjG{L4)(8i`sIj{kAsSFmd3=MjlLDx#NR->Hrw{by}sBh=8dG21-zy<(ZQMu3T@YVyvi z-Up=|1FtFb<>zH9=11t5VW~PC!gaO7cDG7zdrIa4dPnsw>a-a4X_cTt=cU(h%G6=u zplZhm=mVTXwc5fUBM>Pok^ebztBFq!Os5VY3zVtuwfo!=;94r?bs|a**MFxY|rCWe)AY`r3p;7=;`chK2P9q3yg}aoQW6@OPRQB5!YldIHSay z{`q}->1Opov=>YHu~M1)<fNGQt zkRMi9+u!BP{Cal&dh_bv@Lm<%(iU~xPX*$-*T{y8Lk*g2o_tXh3jRRV&Tu%gYJRD! zBkd#n6)pR^eeU}(eT8)KXa#=4^# z?Nvx~>Psoqpz%|Jaa${i=lp(OFMHC)y@1gb6w0I)yqY~FUEy&+mCNQolZ*!7!!A+> zr^`D6PeCLuNleqne|;&YCs~kJH%PDP3_5#4&F4zW$Pxtlqmd^iQ6&@=(c%v8U)_#= z__ZyeeojVvdHahgXx}2*@S>*#N5JBRUh{;2sHqRM;jP&sf?P`Tvm%bqj#7j?iB7c) zxGY{$-b4DeNceR}mA?L4^2j@**%ao|DKzNYM|?in@dOUv$EE@yFn42Fa>5>Q{DhZ; z0%2a{E#g2FEp8;q->ccp002I5?`gi*=6ns#L>{&HukRxy2gG;G9_eKH>j6u2W3yY3 z#kpUmTa+x*3+`;Yr-RlAeQhiBHN1k+iq=kWy|J*}iQ`gKApUBwtE~FR`8)B;_p?%{ z*A81<{)YD_zuM5boOe-&k0Pl|kcLvZkQOfYd(W?f*^l&j?znCx6Sz%jl=J0E1M51m zOUZTV;(5or9Og6E&HB>0UtbdN{dk^Dy}GtRJ>XTSRX}j#Xb}w9FB{;W0zvG~(htbU z*>ni`zq(@O5dg~imLbQsH&;ddhvUIV` zs3$NmZwoENyHG>E8Di#r-1^Rl;2@Ofw|!x`R^-H}SYoGh=de>6o2_a?#Ho;hkw-gS zyYtMSC*y_AO?3f__k?+ld@7P`X1e48gpZ9EbojLtTi7GOTU1@GB~__7Ncl&whPO|*Y=kEBk> z7p!3;!rmHQfRYO<7Ok9~p_(>S@3F;vj>9)#jtB^-zHhzPX*`zdIBP#I{h4BMn-~UA zlSK`e`oDKl5kRN4zU}$-VDK~;cD|tO?~brjk#|zfG`5o?WXI847Qm^o=PX_HGPn)3 zhE@v2P5oA`!8zuD#Nt(V)Fg+UyckL6!~07t(9<@KdBB58O_c8>kDp;UTxdS&@KyBB za5vI%?|WoZGM#NXF1sx%Q)_|s^WscBJ)vQ;2E~o4aJz#e9rLNorvA#8j)iI+U(0w% z)COW)9u}`1cdZt^6q-XIBL(%Y|L+zx0}xPEsuM_ojb%D$uiSWRx&qWQc$(<5p!{8DCXB;-bavwJXN$9%?;WJDKgHN5qvMn0a0(lneHq(D%N zZhR>bUeydIt8E8oUFAudy~KOh|I>Lgt3APj?J`;5r&a^s$fGCff3E6zYF8G{k<)Zz z@#b|`^wT?Bo^!$w6|<3KD23i4SAu{W&B*;F@{?Kz;0Pr(iHF>#K$vJ zOvc(Wl}aA(&gsVa9QT0{h4ArLmV$?e$5^d2|M{QU7tAaEA6M52UC@d>r7{ZIUEEzW zohlZ8s&fUbAJFQTHHaJ4)habk6_h((L(Xy7Fa(bTtq!)N5=amP%d|tvB*QvOVW#zM z`d>+29(`;4MMsxaa`ac{gpO?}YLLxZMZjB~jV_XylvzZv#S59wJ-A7}KQSJ?+9|)-1Mk4)VpQQv`{Zg~s@h1nXt(*t-R`c{KynM?69PE_rCM=9IO3k=y9XOv%lz!&>RrfKB!Sv zoEBVw?BVG#*5XP&RjMtFICFP4|0?(3L8D7GGZN?zy(7aO)dJvSbD5N+{kz!0wp}1 zuY0kZ-gYgVUS@h=UTuKf`%u?>#+}4B-6A=ob72ABM3DIhu2I1H+#n~2q9bIZ`Zwj0 zUlP(`3xDN&`+K2()<9C}6iU3))?^?zsPYsRuMmSG@Gg+|P|BCrScKk}ZDA*w)27w`LN+CF4zuENzh}y` z5!gSs9eCM~nROeVPEJ!RcoT|a7B4AfU5GoG+g<2789_qRLKh04G^JK~4c(T)W*6C1 zR_xo45pPv8#=T^Nea#>NhJ4N1R)(;@Ot-gq%l#jxB*ZcCD zf9HXq^XrwPN`|6b6Y{!ZwP{u9v4&4dT_;Ym1!v9_mJI5!~2S}S(iIs6YNj3G97BSQ%pWD`!PNqM!im` zFbK*sLkWI;1N-DA<;uj`UX>eFI(-W4T>GHZ#!bLt^FN*!#VQ@JitYa3cq>q0EEUOw z>Gq276*|7Qj)8#{!5kFH4gyoLGo-IseM_;dojBF8%(5ku4$)U*{ytNtm-Q5WoGjqF zH-$JgQ=s9#D@VP%^H}kwD&SSOS*+d2o7BRGRc(EvsMwHE1K7Y5najxR`-xxF@~fsD%?U;S=8o(7r@7=3CRD~up>vQL6x)`eu;Hpp=KHObzKi{o~gG&j+j#v3F8_g%- zDOr1tA{9aMyw+wVjPW+i;JR@bWra!Wok`m?F*XSw83f2A_l&F%P~(KkONgaR1z4)p zqCGUb6Aw3CwAbKsvZvMs)@ORQiumEF*%2r#Xbbfy&dNQ#!*7BD#$)59Uh4QeR1-fOtz+Wpqw*Q{WZ-z5E-Gp!R~`f5B|lztKV_zx1*Og%pxU1dzF z9Z&DSPHfgz;{7?>us5y#=oxDEJl8sGPfwP`##{SYG=NsmN3H!S1#tagTnwhYB!t_3 zQwU@a&~R{YtX%+MpbJ!T+CDybIur2p{zJOK0;tIBXlVUxa3?pDLQSV% z$t7`dl$*1hUViy(WU1Z{ftrc~9epPElhS5?1cqhZep^OG^a+*fEi9Av!!yJxT5|X` zHFK^!8y;WTx*4^H$q1pXYsy4Y}2yIM&a1X+_%-v8k-}j z$Uyc>FCRfft$B5OTV&tlu!90fJyNCr3A*q=J%;=xKx|R4zhW1)qr7vGoOzS^|*iQaHf>U^`+}6QQU}o# z0~ePjt%CG_-ncQ4f7ktzrd4U&-mlV{DVi>PwN-sta9;AEUH#Qw7Vu$Q_O`w~4|ZOC zP}%tod*kA6C{k1?MIeZVX*%3_XCg?-$G13d!By>nZ)vRNTCny`a+OdVXqm zd?+FWn;gh_O|E})N`3lh5&}eHGQT>+cdv5+r|2UVkm^K@=e1k!(yaOP8mRP!uuN`~ zOv#J9NS-On4XoE#vx&_i@V?*EJyNcnk{-|Q*+KBUN9v?f=*=T+TH4+b>srV$go)sg zr(>9NKyn|w+nQ2Td9FnF-jt0tk@znWxylcM|8W8MgpM+ej`u8f(h^m5LbPKCv+aiI zXf$eH9xge2<|?4)M1V`7-#uFfk6I1d&n$9{`Q}aDUC?YH89UX=iX-KfDF77(6p@cYVQw&L&CL6@IP zSJ`s7EJo)fUv?J}0e8r;>4f{E5a2{*3Ch;{#gb(hd!F=R6n!T7U66>piP+51;FzAh zCo|?JCl>`pAymLtgXZzro(m1iMhOWaD6WPXh6V>mU!Uy^#x3EV_Wibt!Zvk>emTWl z-!QrQdb{=LrcVJG2lm<7w`X>7czq{3dfj(pOPj$NBcp?@8XxfRJWIzaud<>dmxOfL3i#2!<#6yV}x z*Lt4sc(2mfKIHUUic>!K$mq3~M$l1E2ROQ^`;`2M zV+7)LY3Ml)A~agHNwl~neR&>w91Htb=^Lelz0#mpH^#0T_u+nSkCn^C%G!l|k6mxC zt=mUWfs97-sEL9Ajjcl3hcL!f*e{RxVh5lWM`F3Ms%jV+67Z8?9?;$Tjv)D`dHu@g zAK(rvdWoWW9RI+kJhwS!er}b~<0TpMZS`qUL|{>5CnqPBKuA@OTZKM7`T~pJ%?B4$NNFfTeKqntr8JQ^OWmidz$-;qbqqJAIBEP213QaFQ zov!3dNHtAU_lLLIM9@0K^{tT{K9>y)kCwdo5}UXC%j9NerGLXHJ$~QMhh96>q_j?d zX2y79G0jd$!t*?p0KtB<#4Yy+>*}e3a+AGy;!U>(>v_RW2h&_={^Q}I-Tg27)01B5 zGQH*ws?JX&54_So$gpa9?>-@DVkXoh5yUBdf}T_TlA;|zobNAY2Jvm6q|K#G{F{zV9h#UN zGEz-p&cG6O8dIpHMr@s63Z2p8ZQ{qM z-T`efLd=L$0L8+&KyZTcQ=5gcT>QH<`vF>C6ZBj{^YEXcbuhB$rXwj9m$Mezvir@Q zr}9wMb+ik2F!fwvzZc6){ps)t&(eGVAyW%zG~%rCo}2>5;SfQrs_j>?)}-;)tw9e1 zrtpucY~kiFiCj)O)#meJ0*@xS9+!gy8F4s2HJYPd9xNTtH1}|p%k^S{xaBNT%r>Fa6;Z`;|rwA3Y!%HTzLPw##jDuZj? zb#FnO)u!gJ_t*vX8eIXcy==J3)@IKx>)8S~>wduwq)~M$-P75bk?%H~&o+EYPCg2x zNt5ni6?nmFl9j@G!D_UKF7y|Un>RO&U2k^t@7^e{ zQ+d>Y@}=?LN-Jzw2w=c+x^K9EI~z7!s2Yjj@|nErqi4hJvd`&l(kiw$O4m!yV*U42 ztydv{>MAR6WtZqt<6=$nS>+EqDc4^;kGRbp!q~k-SE;x%I`7bWykCU_;gf<`G4EY= znpQR!OuSz>%GJ-MVy94(kXG zR-lyqUA0hET3K274#RG#!682cpL67|!igLZF=a&$l<*NnOay{Eec{1z{W<-_F+m#j zoC5b#PN$23k~uP41E+`kl&76X-f-;w68Y-#n>VEga#4l1M1-`#@%M-CDkWb1>CZ8f zkoLQ|*bM$wWHQf8@7WT^Or1wTg)l(*#d=cp4dVw=7zu&bmy}cktRsi1BQex3mYJ8D z9HT)D8nZQ3ZX@f1d`tTgUR1b^&L)Wl_K407tsdy2e#^3ySX5mtKYBIs!qu;9%~EW& zI-PXa0Cst*2CdN%q0t%r2r$A}c7p(RN(ZD+-`x^>aw~G8NW=ZJX=y@iNQ+~cqPYv# z{99@5;nI3~UaO?=*C+r8kE3N4q_(gqV7+eYW;N@+$+*n8?H_(xoypm>wf)}=!_%Fc zN@mxP;LzA`J$I#u8?WUg`O}_aeZNKuEV#k4KU3->HY>X7#oF}FsBUsjhs&6%VLmNd z9=a)f_p?GlgS_kYxiMJvLW2BIFENau|J{rmkJ^e}S%xzp+)Lzw&KvcPFjw zRx(O#{lv1Jqf|;u`C|p}3|T)-(WGDEfxP<6=|SB}T-hYwlgCBxV~$x5IH3dBkGJWI z{Ks}$we~d{0+I8p9fzs%P6OF+WM!VsigBeYZ>lr9dbun_qQ6NE+hiDY3GbRFkS%zC9zmW9vyv;3M=9|1xiU(ego`QqTUuKfBdYK6b(^-Ob zum_RinKn|oAh~F~`y)1Q%(=(Qy+*K??=(Vpd=H}4PaT(e zSgw@+yeFv1VU3t}_rltjfs?0oko)xb1Lt6(SsLj=oeiou_MO*zq?DD&Q(py=jBgc= zL0Mqq($TLwmVbhhfB@s45w)bE-?3uR%aQV^-U>g`+Fs`Mra~=Xr!SToQ89K3`Z9a; z0cyi{J|=1pbmA78P6SILl)gMZ+?((OgaSZjA2X23r|GEWcC*y$Z+|Z5^41L7-%AVl zR+E)wev?_zdx~4BG$@}#%UuJb%iuF5^=F7e^Be{A#G_ZrMDCxUk`@XwGBI9tdd$vC zwxRodTn3+-O^Emi*vx56zi0<M{(ZHC*TvK9<0EY$7inQfI#pz;&f zXY$^4nlkN*XkKY`e>6mGy?7$8Bkz{@q|`$#N^O(GPE+0WuwiFFES+@--h$DS>$HLwd$^!Ui5+2p~Y&HOEJ%^ zfiINQW~cfS!;F&!^R;Wkg!gZn>#e%ntp;PURGm5}M%Vkf@l%6G_|53|0zp4pn)Vpr znAY8U zK=th~bdI||W&(w>mh|}wf|y_1+R^v)?FR->qkZ~H*+1pm;|N*O`tH#rzZU#f!>Csj zqx%7)*?I4nN;Ia)Z?&b|&owe&qc_dd_}*Q>Uy}z$ihL=Q-{6s8qo<&ZoA2$E4C4~8 zzwMnD%mKRN+r%5>*BNc%r~4I0&q-GmR?$5Dx(eFXM4K;c>t4S14ojayuLm6brq}gT zQ>yLsw6q0MtH<#P`K<6UoVVfMEi;{*bxTf7L!CZy7yU>%44;(J1-goIcs2+Pz_HPi z2qV}n!Sz-E!Z$EJ=4f1ZqAPR!OfduOlb$44-1!s~U4yaM`ZVz=D@#WCocoJrmvO?| zzK#U?b>CmsL#rsL;~rM-LiR;Z2Q-k4f35KP{bF=T2M|MF$&O>hAB$Wwg|yb+oUZrH z;grIVL)$*sw!?M9qB!=lAq7aGz@o4|6CRtoq&={@fI~+KpQhbQ(S>O1&sqr zVs|sKpOeJ(VyB=h)$3-L)oxu(r}K8dYSb90GuF;mq63u{PslilZ3a4aI!Wk!y0!at zt*7tWFN{Y|Pp2!iT}M66a6&(ZSIMlhmG-`My~V&UJ{@AjmWC$3=5)P=JN+|*ycy5# z4gZ=Z&Pl+-)vVpCc_K`FP`xh|71dGh`O!p=mZl~N?}IKa{5vOjM-+(NJ0x9_pQlOa z?}g%r*F<@;K1+S{b-vSrL-DI-YW5S`#gNz&V5>f%vIS)+k%LT4LwDW5o~oKCFowXo zzHLQosuw`a;Px9m-mR|%7(6RQmo4hswU^Ndn%rb@nc3;!IZB${jMMoX>2-hOO88pr z7|1L+#qVY*+1miTCuTqrGn6&4OUa}7N_QrIkJ6^{>hHCybO zJnHtD%a#OE+*PNo7w9GLBWlj}qw)IX`4wIp7fiv-+#4SvUEAATSD|FX3N`T%@&{^rQ!{G%ePLr1eLCih+%7bA1#C~TLWi9)>UCo!xuxZR%byC9q9F3#q#EeBM7 z!e*SF+L;-o3$Y>U%H$SCEkkR%dR+AzU-|Ah^GoWv+1Gm}pwF_-NRXc0`9h*!+4uOW zoes_qZ((p#(C^OY73i+iq+atjXOt@nq&4Y2)S1gSd}+rPM;mUVTSt&2b(^Rx~8DZE}hxcTKV znO!FPfDO+mmcROp$`%(FG!IF2enZ*O7T^U%3!01{NM=fZiJL;xRMA9Jq_$3CI~`BO zJ>Eryb{MU|BQ0>X3RAXOYrQ}P*wugkv(^9HLcyWI(dXOLvNDvT=-9bCbhdDC-zvX! za&RYU7!a4kXsb)fM3_1j$;y26CE&4FHD$c+q`bjz2OZvap0-yXZ4!0;_ zIXtmPx#kC!CCS`DsuMGb6$r1p1emD>8n+_vuT`7ZFbXMfaqRa+#ce5icOu4XF> zg<7gRM@)G0^WL(YR-JXYoPK%ZkX*!2j(qkPtqQvUf&s>4SgM|0*&X%JT%)rW%B>P6 zn0B3uclGvubD{yKFmnN6uqaYEdbp8YoQF*lW7Y4WT)_59!a*&~4Fv~>ggwg60H^FDn=F@x&9X_B&$w5Nzm5(p%j$)ZJQQm~LJ6z1gh{o1LHbsGMY zs6a3bWS`;fjsGleRUVHrUh=-7Wb}N^b@!p!wOgd09}AlFwLJj?N%t+y8BrKzM!y1@ zMJK#dXxkbg@peTBiuJPl5r6nCXmGSk{p5ceadSHwOux)2RpJUHNJHeqkKnsA(Fa|A zu7N6C^E%F3gRe6j{~VX$Ak-r0Q!QDLD&#a5@u~WoF#GvehN+3g63vHs&H{S*KdRXK z=?k%mjIs~&RI)QRv4XXSk=fUjm?m94T~eLeYPm+iFD9U$Us=TIEirU1)-n$=jOqgK zojX3j9nylNJ6&2*X(@U=$mzcTRb1_`mY7WsBr|x;#gHhvDNi|q=OcQ)1$@mIfV(D5 zJi8I`jdI+Z?mt|L)K_KAq8bTL{nf>xy^6p7`GZ7Jzm=^lA3V^%ivyL5uKVo(+<{G$ zb_IccO!`xx&#KJv**mPOo|dje71!tN{#vBsuo_9)UbOCVqE`Atdz5SpIah>(7?t;9 zGQ&dohtt!u;V7xTd4B%U7#Uh=iL3H>>%nC?*R4T)IS~x3>+Q9~ugnmQh;(XiW_=ph zhIaaGqGH#aHn?E6qYWttp3gV}K^D^?EXp9YQXsx~gNlj@B_m_WPa#fwL>msJt0;$;5Ne9CKaa={ey&w=hFpwZQ}iYqlPcOe|1D8B(rUNL?m85G5a7AgnAg* zn46O$)&1l3FfwZZ*^)LD$y@$SH9z4tN7|AfP^MgQEEGrpjN>w35Uo|{=zE-ey90o2 z`){5jVMrJ?+Ast=J%ZvwyEfiG2dnN(&gblCBOQmBT1|ysDnBkXN3v-{{sZ^Eb#m*r zP2$PkC+-M`*_}rFhXaev55w3#3lF{a+zD$#CIwjaeeU1qHr|qFu(#{(wOPCo@u&}I zBZa^l`qi(&C3gO;76K(a!ArE{&l#zGcAgE=l;BFAFqpGOgGjCqxD9(Je?XZ{{CmOs z>JWYd2XIq3!)9r%Mm)Bdc5dX_AKYNolRUZ!am{lm#Bbp{C*XbN8<5N>h6LnLO6jfV z3`MK^V%4AWzXzeZoU!;j^z}|&fnrM*Gs_npKx`nZ*@n*MiU>9gmzw-hcw*<7lE!PU z4>A@XBwWviIR`~i`8Vy_GzEf8V)&k1u=gZ|a0*>hexe_^oZ-oBx4c_izOACs6t!7v zHE5!knZ3w&AgxD+V}c!Xl{G^zXUd-H7`Z}2b)6I$L1TN0XOuXhs>^7p*=^zv@79>e z3mgS=n6g1{va*->977vlA8+=UfmEsTrsx`i6v;~jv8FadqzRqs$RBE-ViH~<>EiHZ z?E5l8z!fd3gR*)bBC)Dyqax`V^ACNG(D zT7&;u>Cz`Q)pFxu!;Oqj4z|Muf0aqeiU=PHTy zrZP`_i5;IZ2L&>d|DM=&zoM7V={tIT+vw{fH2#0m5{*t(aZ&2cz^QN}@{|mnDs9^$ z9*%AG)~C5{Xb8h=-7}!E4NKEQVM>5iU00ni_U`$sx_g%tSzLd*>O11#yD=e6-z4VYHAZg&Q||pVM|7 z5=I^M)g7|TO2o3R-a?%Z&KXnOj{u^Qm**F&VSV?`1PBka0@>AwH*M-ZokUWv>x+vS z&T34va@t~T9$YyPV?gi1L!63)1WoSJVT-7UI~(ceNV;0-RJEwDpYuZEGm9_nbM_v1UnL4)IFkZ+tASR)J4Y zO_06Bt{0hWGVwFETEc15^B>KnwOxCMy)W&LW=s9%w;N#cZh=eWg6qeJCa3;)qkNd8 zbqqi+r=que9r6@s z!=UmB`Ox>KSW-#KL$VY3fdZ_B&hq(XW(3!3u00HyVKHg&-+t{X(isF`ecfwng^5h; z_~{1ftct4xCk7`|85m%kId|v&FvnK-n)jJdTsWqfbJwFlvQ=%SXZD%CKIx!NOAa*t z67xATR4-wDnHTtR*AnO$`)(Dq5VXf}A*C=^bva0pls^q{-9t?&+l)D%*lb%0iBFDa ze(%YrgF?WAF)O|HOFAP27Gr(gcqkMbi`ViP)5zq{P}y)=-7x(dnZry!6X>T+j{G+9 z!^MgnVX6!z($~m2!82tiRc{!z`#|$T1t0nisAhH&olT&@8ap5%fU-*k+%iq5>s!h& zh(>9_dOrmk8U(98O0$U5oK9_zgMrlcdEzs@7+8py5ZqzgAz`J%ec`huNZ zmUV=DWxsh*(MCiKJ!Tg}S-0yzq{dl0{$h)&YsaJR>i5zw_tf)p&TNp;#;wjkngEVz z$jfey5CaVzNw>e3go#wC@Rto)GZUXaRVefQQHl9T5&<^0*`L}*UZ=y+IQ_>(1`t?y zT@%U%2FHdmhDHCecrBwldeCk5;mn>Q3N?uo|({rxOQXeb`704Y5M4Lg)qtwthvUH!29b{$6fsdsmGIm(R7 zwBAyLLCkEJW`Dr?f{I%Wf%%B$t1e?{DVaA6tzEo&6?TXinAr3zEOvRd1jg`37?|W& z>D)sLg5EbfI*%Sz9;rwjbJ&hYWKXFjY3U%!X|E6U|KkE2#>MNCFppem#TBopAEtG6 z1*SMCV>VnsRb-7ddsb+P6>dc&!rV_1y2QJbXzceNd&9_17}!?mheqQ&Iw0)>xgB>9 zT85!`h*fGIKbd4WK~%ORifo!IVH7mGL5aR}IWGya6N&~vmhD!-Z&U-{5zt{_EY?nZ zyM%d;?}1+Xpk-OJgiqB;R}7VnRE?n5olEOrvJ>qXhNMpw%QdK;5T+9HL1sEmnB@uz z4v(L`f(;7pysan;U2RwY7}iXD%Omm8Xd|p9C^(+0deY(JMp*x<;6ccno(@Q`+}jM8 z;PCKxke?xQJ@;v%WU0vMBIHh@wi&undvjMYx6^1;QNc2i>!{LDYRMbq9CW$0O$731 zNp#H6o7znxe!Q^?ZDy1PR;99z4(}CYBnm;n_eiHh25T)NFOr= zj;{OpZ_>IYr{qxjt7VD^u;?>SJr^oO*dNc}m=ulgT|R`)x9^geKZ+d=5i&&bdISX; zq!*P&5$&WgYr#7hFU5Uebsy&F9~y{Cfa(SfkH+Gh@qB8DgRGEiM2vu>Sj3|Mw+IF% zrp(K$)ivGgqoM25+dM*ncCH#N&xW&(NeWuhmagkE`D>}Pc?l2~$J^ zOZ!&x&;yVC{VDu&q!dA#Q@k+h4B{bD{J=&NGc#;Nf`^c!I_m}XW!D`-q?Gu4VG|s5 z`K6;5t}v3&74OIU3E%;K6;Sbs;zH6D$`8e+ex45K1|A)6E~!C=MEY~%E*1A)an)vu zLh4r2eeC7}qom2@wCUZv;FKZ`=@cV0;UpvS#ma3+zY@@x>A{ycYaR4L4Sj;3lg zN%P^b@%T$Yf-Ya9Ggq0=aw@lEn%BjLe#Ve!Uw>opU^tE>x;}1%OXHHoT=8%`%#KE@ zP%;-pVNv8td)b@xzgGaCi^)o(=nkqbeZ!o(M>(+d$|y%>n(7Ip@i^_L-d>v2t19=# z$tw55s;5c$g3_=Ls|$xR&RKExt~ytHyFJsRRaYXNL>W#p}6Q z%uyGas%;+c-wJQB+j%27XR zM(NRTn`v~?QmUj+jn+eQUiXMhlUSdaUR!8|Bb~6=x7!7=Ud13qr6n*Iy?LMkEuC`i zKx|d%dFxb#9V)pA<|V$IQqfCFBII+1`X#i5bQd{JUSz(QSsn?d9bdqsUKg+i9vbXu zHBRcflvW`;AD~=_SD=(@2eUSie-}WQaUe}7$@AqmNmJCM$@(7;E$Hpf;!(N?a=f@R zyDyy8QgQJ-xzgGnrGplr)GB%j57GPcM-6YZ09u#peN>gJ9y|51nJYz~2Gd)R0%peq zS*(;#Qd=aXx{!$3Y)T=*JqcT?XT`fOT=0RW?+|LObB$RRlW)T}BM7d*hqb;UF3?45 zL=ZE?d$&qrUa!|4G1y~7!a6u3+>RJwzszrF|G5-<$@9UXB6 zq@SoJKo^&W+ry?@yQX(0laUmzW(S6ewGV;D#Eh1jhd3y(D{kyEQM5biQ9lqVDLO!{)zwuDiMM#=y&= zqJ0^sT-cU)-tlPM=C&S04PmkaHR|yob}m@-15O-1DYFp7iyCYj??hme0f5hqy8_Xl zvIzxxO=%%IiOiGJI|Ds1*Y-3=nr^q11o7^(pv!O!h2k-?Tx{i^**+(kj?5@ zfN36$`(9J{=GN=8a3-{zLGs0@AdLwleLzl1U~SD$4CY6RScdptqtQ<>F95)82JqI7 zREb6?gnS&fq4ug?;3}XeR$L+|k)^5VEioNVq6$KcYqXjz&y-p%Pgkr`T`%RL9>WN@ z<-eFxiHeL=D)mub9rzYb9sLh)3F6C6#;jeU&Az+XP-T#4GCFuWK>Ur}csVSabt}BH z^1#5y+DC*bnm&oDe{YEn*Tt6`r&Wz{-A)dmuizt;iBg_?nI74%}05MQzVnk zGWe}TO77aDP-Kd(A8ch9)SRgiWQ3o(Wq*Y@p03@hz%D?%9+6e@^C&fc914*B%wGA<2`(fVYUR5KS<+8X$Ryj;z0wyIM0l@cQm$J z9lg=gB%s~4?eq3Ofx&tX!|bL7UZ6R{=3wiY@iFsUrIUBdW_ERAD7sT=GRZqPb-O0& z&%d@muo~Xzsyw2&FNc-g9<8|dKImcM*8I+puKl>9HzsBr#aE;5E5}8xrmcpq1%#Zm z$Qr-wD&sesU{Zs(mfM1ZJMJs^WlpkaJr9>!t?gII`)?z!6LbNNDBh8{_`;rPTD0|7L!*A*(~Im`--$<51?sWKfNin>8D zbB;`v{Ahd(^<%YkC^cxvZi0!dK&ja;1P=|aRIYxOOB+}MbQG$#%r;5EDzpBr z^(7G3I=CRqjH?IT*jx^>^Iu@q+plf>*Y*8s;CLq<&U?t!aJ`+J3;g3KuaCUf#FX5J9u6}28o2ViDy37@-chQL$h?nGaKzkP zPl7l3wXQE03G(q?I-ta5$7P!!!xKEL+u~W)A7EyD?_1QCNvx#AAh?~DK-%2*rGZnp zqBOxx$i3?pH?YLaUeM;_EwDtNH9SU*5}?G-W;Lr=+I*?K>##Iz&y|}rv=~E=8Mo6H zx9^QyYskGt%f7KS7+fTEu^BZ->u`o_(l$EBYS>-TMK!%~HDGtD*o5TE?^tnL*Pnx( z&N)Z{w1i==1Y0`2NA1h~K&hxoq1Q z-qVf>`_QBEr^!NmNP)xna>g9`Nk-wv(ZS*3%eExJ#%|xZxNDrCi_>Jn^Ax6ippl&1%_F!NW{Y*# zgdu6*^}X_l`1%UW?QeukH0NFL8mOrCjN)uoDW@DEt^vG64zI*ne^_52&V+5es$|=g zlS5&#)L2t(v!eI8^^7UVW=tmTU^qTreY5XJ^R>Ncs>}5;bU?XCq?i^@z(B87?&dy% zqPM%Rpk{sRP@Q%nPdmi;p+ZwHkxe>|S)Zv0#B4*@&I!ub`Ff>fLCJ27^KdQ2Wo*+Xb>cOuRW!A=>t0 ziW|3cRTG=nCfujX#F9AkB0JuyvQmJvfca#WIg&nVVIUY6WG(sB-%Y zJzeeXzY%C%3|b|!7=8D6y#HGX_?qTDT@|;Wv||Jn%@uJ6Go$UEx3@i}PDqwu)B61P zcvNgG>bdY+40VUW;sJZ)ABeVI+ie>2Tnwc{iWG z^)JGcA(cR{b=FC2!Ub-AM%Do)5~e4BqWYN0o1`KCJ8FOc0|F?gsxMC`b9zhg1VMdc zJ>BMcbgEQYC$OSvUH?HZ!zaMy4a&kLmLsHJj&maDy8dmo@WbyPSt zrN+p&CNYkv2kFyd^Y5hUsQl*Za{uRf!36e5U>Ntk9cfn zBp>tF^|nB^4-yhcX?xc4M1fv{E6(Bb?Cf2FC{N*TFFv|vuEB~(6fk1&A zT*mVu_Iv>H2k#~fcsBuPuFEy3V}TK{6?}btZOTm%C;rh}=jrY9{JX^JerZ*Ax*gtZ zGfzy#QgJfaMfF6i10W>K&H;c3A)q`4+qMhpgNY!P+$Qb|ZID?6Fo;}CNk&E+0F*6f zH(vNm#-Ht#Vcp|A{F7Be4J)v49IzatNQx2e3MHDF(oI%T?_` zPgrqC00KeRt0PSXi(#(a(Z1wMA6c5z}SuEalLVjw&RlSIfkivy4CIVG?w8a=&5TG$jOTZITt z&uJhrYVrqa7>-W?K;|+~WHo$oZ3;U=+j>F}5Dm_o6t-jnWS|oEbo3BB4XE&ji@F~l z$s`klQH0dQU0|Lz}R5(aY%xap2j66YE`SUlA!v8 z2D3uUU@(#+gd)HgzAsbiK*S*bEexi zjcq2`=xvnHF4!#(9$+*nK(=+K8h6VDBGN_+*i0D}|c5d4oY_}-|n%I+7 zcWjq{3HpivtHv6FO6On(8b1wnakR41rvvzl;}iV`Si7}nFI86e6+hx*ATWXD+q#~8 z1`p5YX^Z%bmfN4hlBunxP}!jJ9Sc?T;bX-62Se9b^4qvq<5NX#2|#eYkrx9)=JOML zA^1k}>$82dKrx?e=v<=KV{K;Jbv$*M1mxi<+JYC?^8-sy0hZHY!7&?OPKjm#k#t2K z&KC1Qe&xIz3(E)GyOV2>lC%XS9VwHhF&l^oK2jK517LB_b)FX2(Ir8FrV199vA#Y0 zw793U1hx+RKEl%)A0Wg1oh3W#!`S&e>^%tT*AlPCgQPIx}2Hv=T zaHup14cJKG_Mv3(LDKlVtCiy|XD~XJ%7IMphxRHxXr( zJ+ehAD)iT*#kmPXf>trL#tY~r%-$gmrW8OIuy#1|FfSm z;XQHTix~s^t}D_7xl+I@cuT5X4eIIYiaUOiICTWH9T#9}xon{A%Wd{o$1AeqJ5(4foVw6e{nKqzGL zC*Yf{-ktHKwnWXax@OInfIy`?@Ogb%PWXV-LV>+7)Lg`>Wa`cn(U$ag<;aCynJ40w zpCb(dQj9b%7cVcQ+L&CtXB_Zp1K#3ij&!5|+ARdr=cMPT48&zd7zQ#v?Nu8)g3yds z3UYFMQ?Se^oZu*#vkZiAM#dw20^IvMz)+6|K>gh3!fR!w%9uVCVryCf{@K{0T34?TD7w37ekI(e^ zT&5(L+r@<0hg0c!I*c#6WX9yhhrg1UCG{CxNFc3CO+9Etiu;?}8=KV6k1I3_I1KeURE6T9>l{7A$R6uD% z?H<*~!Tz>!7E&%$0U6y2T5|G6-eED+%CQw>x~mq+i32iqWn06HwBB6R_-SWGQiT3& zY2&(BtzSiqE9lZHXx9N1(I{H#r}zHP!>WXGbX21UohkN z!sP9URDgJ;^gJmbCw;~h1&kO{4V0~kSdj`JQVYVT+Btyyf3U_ki>mu1cZ~-%%<4?b zk+)Rer8at!712?c)%ru>sSP$) zz@Uo867Es$*vdR}HGRy&g`QVuc4`Nr~_MALQ8pTX3sJ~H9DGXM48E|wZ9xb_1 zwMjUPZ3~Iy)4oa0b(+q_GYFR!W^rlx^8!|xfgM@5?w>@LE7ADEL2~n_wS_4}{D^`= zyqkc0Lbu!Mb55MkKqE_Htju@zmEn}}ZvE#<6^^*3p9d>F2dUnUFQJofRa89EG}je5 z%z84ski!gwhmEn+Tg1c+FkuA*R~Vem`ERAPN&*dUvrqi%o|C9`T~EgC>p*#;;`C5MnnaJG_^EJw?m%#$~Uv&hf0#a&NL~*>DtJdKJ@{z60KQ?=yaeQL# z(Jdg_?6qN6%3dbVMT_^XIEGd=n6hQGSq-S+q?b#Z}{q zt3Y>YLbL6;?-7uvN>(}7j+|gfDk^B9=Q&8c;AX>}_ulz*;A2QHqE3F3hCbrAu@W;K z_4IdtRCKu#6b-yfX46^2^=TjFO$q0a)!y-^jgF2@_MpyI%TpfcQgGX<9WkL_vo(;7j2 z+AEKlXH1utUn!e8F1{1vBL;pPOXv3TN|2p_y~-5^X3{hASO6`tgPi4lpte}V+McI6 z0a?p0XMJ=(SN7#m%8h&r=DxW=bY5(TvmJ^?&y5XQry4EOREDvnkk&zvyN?Yak?6x& z7x&w9&0dVSfb{GF16bAnSGy-BSSnn6ixJJId4rV6L>{*8v%5BgYOUnTD96XgH+>-4 zm2?@#DfG_iH&WA#%rOJh$bH@mfQLRQp1pI{uuYHtFq zW4tEZ!s_oU$_f$?wuBwILZ}rFcr?GwyV&aLYMrusJ0N(!i6`0*>znO3d_T2$#YNaf z@`$Z_El`n=12CV5)bTi0mtkDi(XWd@iWw>fA%MKg&Ib7p@E;K}lm;y%?zJe+-nzIj zQSULio+C%Uvp#uA*%Hb;5@j2dHSd%@PT$%PYaep@$IW~msG`=FShYexXS>lp; zz}?S^Jog4f_8k{OAr`ZTWr-B$TtJ|?Hx-JxP4?SFsFOY+t}+wlemZATPt%ILUv=BM zCH<*Wdvj70 z%?gA^K8h4XFAz1?CX>8h&gf1_CY3&43z#x|)UT)uH%*+6y_`t62Rl0I*cZA6q^<(Q z3=vsg=l=0(`vi&I2@mqRz#qw*xfm>rO0?#Q|9Vt^6?E$P$W03#Vs@U%jOtBoMBCB6 zz3-#Qsv_V2Wuy$$lda5BFNhlLr%8e&3VhKj?uf=EW}R-br3H&4kX>YLB@fRcJOL2$@2c`{1Y`+Z-+ z@?IYQLQ{B+Um(=e3EU)eiRx!}4bPR_Xg%&epg@(h)yJZF7vO2krAs|uM;7p)@IVy} zZfnv1xUJyxbtbCfC*v_i+^0sYYssQy$hxXB+colF%uoZ=VLQS|6p zb?k&fr}4{z&HIJtFeeB^!Nhs57W-n$=e3`>vb!3{61)&$C_8(2-KCiY5SQ;Oy5iQ| z*$p_R^XoGj>`-lwKk57nSaE(ogOjxWlsi#o0M+O ztJC9Ch{(6LsPjJJ>r}J3rQ@Uz(jbeU`C!9*(0tu$7Si%2xh5)tm=~G;g>>9Y=YX z|Dp~3Ms}EB66|0SWTB}>3@OSJm)I%b*O6BYbFic2&ghNHF-A|6*%`ty7N0Suv2cEy zIb+WS4GJ81YeFxD!cZ1Ke|1jrR;kjyCYW7YmwrWwk5K+xRF6wLx;?s(?WY3`<~XmJ z`sD2!f={fP8LfOB%%Zv|PB_x>i%1G6dW~=pyy=s{ag+bys#mBb14f(~PQqR5b3Vkd zjZPsumf*iTb|a-#hE5Cj(}-N8_MBL(h?T}`wS*LJRrA@kEOysnwoLsACYJH1&zl%) z?gEK)VZ`jNU=IajJ-b_BSH2px$$k@Tm3$i-@1bYetJ*P}Q7BYnVLTcJ;m&+#RiN>rRnq1hHm*?*D|1h4UJcSTLR;4io|8% z|BcH6pSQj^5x98l7=65oyo{dxj#3jd!TtQlX3!Tf;<2|_d3C8onEtH5m#bNM3BxT0 zu%z9+J1(JB@sYcRgO@7zP-cL7z`o$D1e#6Dwc`K+7Y<|;(uUi_uK zvi6q7MF1Uk9Iu|cag}dN(29$bv)Aw8;re*3=6&MxH{~ZyZk2L)NZIz$ripsk7;0D` z&BqZ_av2Q|{x3Y?u^JVb%E0!P@-#_Md!;fyEiR7Q%FW^8&lM!xEql2?j&`Rn?+!L( ztEHSUn)YugSB`sHRBV4$)tEnXrO9yj=psFam0H5vH3EZ~+9|7_gG{v08K){bsFV`+ z9WU=7QoDHfa7}ou;zrm^XyG(;2wx}08)AZP1C5Ic3W%x}t(Z@14 zk_vNlcu*j;jI?+ zkGM)Ml`xY^RiAo2qqcu+O-V#)bfTh?m31KRY5G$ruskw(SyH_(Ya+aQTi0hWfN^~O z?$51kbOGZy=BeXwv7t@SVG(a#yqoxqYr3|lUyMuNmaRjBlS#u<=3r4_9#3_ZR`uO=KfhJMpf zax&}8YErvJ?{)+qQDK!AoHOa}c*Dnk8I)Ufq1!6QH&-*Zck6s4(cu^v73Fl!og`Qe z#9%$otHK;HEy{^8Nf@APdu0jI2E`l=?uR#P+CI9StYkw<$`KP{x4|Zk!+HFeMZ2G! zw#T~=)rtc*qP-|HO~!+m)4}WPxP#MCq4{Rlw%x>WtA`DIT`M1LC0`4_0*8A&v!^7WvhvRl9oC)ji!U^{sT<-tGm&o?L3T+wds|QTgmLU%HVFa89B5u z(lA~gnwuOCBL7B8Ot(W|u*+=8rI-JWI1Z)BVX>Xq?6$So%Q|-2N|j^;!?nk6I=3g=0I5w-m4V}9>fE>{R2veM=?^i>qNohLpiX$RYxs^mZmGcMr%=_VI2w;z zjEoS{l;>X~)LN5TyB;#AgG%qj9ms%S$H2L6=0usl4CO009zHmT3+<%@I>=H}h`c-g z6hFdBf`wNmgHH0!*_l^45lY2*_}k90m&oVAmX(cPg#I#@4~vV9YE&WbV*4QE20=+< zR2CcIWuUb&AChV|J(sqmW&!Wp8 zgm68nw#glmXI&P%ymzBMv({hFF0%QWvRr>V9nMHRG5d#bKgMT^CA6rU-+=ZgIM%R)mE5;?lb`W|M|nWb*Hd{exB!zbaVLD;ztU z*CXkc4F}NV>dPv+(F|ZuvXS;7#!eV9c6Hx4Ah_E=@apM$i~d)!fvkKLT$6J1O1o|L z@_5>H4yE;P)vmQ`mS%Vi%8yGOF@8Qm}S z%XqQxkwbyK-ir##bx(D3)K6uj;JolG;><94W>O{xd;DG-0^VAiN_lbPGisKH5OOAo z?+j1g8dO)ra@EhHs}ct%D{ik`Ww!bLv(##WmBnE;3DNU+d3kWo+;q zG4Y}xAS=E1)m}(VT`||1@z`0WfPTr{&R*f^)g)oub>s}aS6`s<=w=^hf6zj*cL0)y z?eus8-PgH3Wgm;q#?AbV$)S{`p9t+?%f{Gl6XYq*2sAQWzBPAT;->GIVL-uTUuP#z z8cEut&FP40_mfoWs9Xr357ryMHWAX6dVFo(rCd`FA^)W;*~aGd;$azlxSxi{b%co?no0k{I^a6#{--GQ)=m zIfp~T-9Za3lU;!TC_C1HW-4XgBgKZyNNhPK9F~_jV(RNOAlgtpJgBhYXg_=A2Qvz_0E>^177XKycv4LhbfdYKNi1xEYgA?y4MWet?{v*3e`jsLrSD zM*9I~lQ(-UXS&8A1wuS6EgB7n#_y|RgW(fUyI}q@$2YACzt)`yfg01YAu zaxSSYPh!&2(iErITnBz^d#oNu3cJAjG_?DNkCi7z%y`;pEA%GC{%u zG79AhYTHZ;zB32z4Cg{fKzye^1$d+T?h)aal~TmMRO&zU4zAHpWfUVIAOH!Ef=&c% z{E{m5V?z#j9c~r!tm~?B46|Xg<9QS#icDzoub!NJB|Wx`?%qX#GM(D0j{yOGb8z1% zkWD-;J^d#7F+*^e8@4{DNn!g*PhS|4z&d*c)d*#U*lRG=FK6f9Z?8ZIk4TuQ?nt65cO7%cqd+`FLX|@uKbnT;i>u`quBfOWyXl z>Q#2R)yL2ums^A~Lr$kGdqK&DdN!l0x9Ro|o=i&52wbN7uqiC_ADm~wL6-w%*7gi} zMqJ<}oRv-SUdzJ60%K;mgCIKkZrEVPK3|FoQd3`rDSd&!AZ0q>uy<9vy{FsIp;jg| zJ|STNRDu#fh2u`sDWJO8uYh`XWNCy4v{~jVq*}7?x|Hi&_`N`lO}|hOl&o{~-Ksos zbqaJy4BI8ie1MH!Fd)pz{cVPE<{}0w3!$D;@V`SnJ6z*P)fFAp$!u$NyI_*7s}b!j z&k%&u&wR-uyET;Hj1>e_iW9}uY=WD3eMWvXw?~oa^l-NBL}+iRz>H}pX+-$rWahx8 znR{%sEd|_3qDew4Xf^o*2G@h&_c`>&m+gJOjK<785w#GNa9P+&lL*R>a@%iA&J>U5wPJRdIq*Sl3l*50D%$6J)HpbZj0R zoxYATGCxN@I{EQJh@%0se8aV#2JUt65_gT-IUI3tD{d&Gs@xY;nH7h_3s&Owhs?#l zy*?B2fj{vMBFqx0ik6<&n-X9u=n)5wio-$8ia3)?R12Q<7w-f%NY_WkM=bKFFg$>0 zC)ci0bf}fIoGb73Nw1QNHV;Wz33n*tgMMhp*sEDtv^+HFb}+_lL5oC&|YvyK9)SH%Rd_9pl2wWLh@Pn>L)%&dovkeeJioM!C_hXb2t>Y!VRFO`dEgx`4eI*<65`K*MV# zfX(5K4}~byJC3CnX+3dkSk+*W_FX!#{k0=@>)N0)vlUTgC>wJq0XKdEByVC%(%5Rs zYu7=(?fzBg;e}@hM;EfZW$)~+uX$o!TK4k|D+$tuF6Wpn#|+;L5%3thv7ALSm4>?t z$l_SeYay7ZI3U_msZ_mbQ6vxg5N~7`e`dt1M>aFbAauPf?2w^HdKB?gV8(*Up}aqO!Q%kVdP~8!aEM+ z8c&ook^s`SFwEsL)U)_tojCl-?rL;HtyW4waNg~U&o+nbE(ADp7MI+s{uZ4g_$*(C zz#>HX*_E5(gqgYlYNEs!z&R21@e~z8hXWh1ZaLE{TC5Xy!uo<<#e1)Zt%kd=i|UG8 z4W78k(8;#C6x{0-oVBK49XYZY=7>4h6$(4|`Cjg$Zr*@WwQFt0yAz*H#hb1(`!|^N zHE@$i)ppaQXrA~{fhAIYJOStSf@0?>2z)}3O_{2W-#F)pDrG8&!G7u|7`OG8D<9{M<=b$u-5h|{obgW+=I8Pq8eb_3hGEuy2!qS() zW4L>E)?wtxX}H<_od2M8vR!0*gOx6`TWK&9@(NC*)?sj8@&Fkq5fTWcv>V>+FdGKQ zY%Ell>ki1arr(@0IpWcrU91jeWp^!oWp&ijxb#YYzWQOn^lbtbrrUd2TsgNm4YB9e zs-~uEPRmqF6wqEEkVp6?n0~rLBxep1{L%e*1fc{tBMlaLN1|66Xv&@I2+ugrJC&vB z+mx6&$m_CbK-%u?fPnnWEtibjWsg=Qo4+%fOM6>D+~E!&c+x3)O=w4eF9-9-lSvMz zd$IP@4|XEFs3o!CP1S@(KGg6zw{#IaZQ+MaZV{Nfzm!`MEVD0NGx|QXD!JFRe;Pr( zGQm-ibzs#rDYf_KE)x)=y%45^B16ozo9(`K1N*UmR?=g&VVA`GT~(KY_Q3H;^G_1~YfL38|w ztNELM15nuCg9Fp_|I@4BmPQVqc!O}wet+;m`ph|69sNVX3UO=^!lLvQJD2{(Kg}GvX$y~40~U@OIO+Kt}Z_kSON0fz=|B*aib@c-Nh$vTR>LmmEphu<%W zMp4A0=Yyt}I!9iXB)wUAasMfabv=Z-9Mz+LI>`Th^HyzKD21D?L)$dn^U*mQ^ z`i4WYsR=Yx;*cttV8FYVGwrV!ukp+(Ridkwj2J4Tu>(|2K)!3Y#SpIi(T!n&q`s`SmHKn@n-vr4i zVFX3BO`BG9x+J`n4_^MfM@~t3j@Re$?%3vhM^&CebGrK&HD_M7+Tp64(tOLc0xE}J z+ZQ~Z8cv?eZ~lI8W_^|OB*_wGjm!Ac(m1Yav;EyZ%T|4?4Tmvj_B#`<+t05h^9pBj zl*_%)D-ox&KVmK`&9*!t_IQjA55ATe)XDg z@!vJk9Xe8_X#H$?=AxfVA9@C@YWs`M?e`J>_r@a?K<(~`4a!H--MNu3;dPyRKVVGE zeylv2oSeM#k{M_0($_lqshXiHhni*l3!!%e7lKA?I;(1T5=Ac!_e2ogO#7*Eut_!e zv-z$S;q;+qKmUB_LCyTnYcQn0HV*IDo0jFj?s$7HBExlwWpgSsPq9Vyj7TSW?hTRq zCLbrQ!f3aCMRUeo0Wn+X?AU#vaaa|stU8!He#!+xRaB6Jw*X)B>e0~ z=WQtV}p0twiN$6Req@0GDiP~?$w36Dk(zh)~y-*y;C)f++rq+ zrJvZ&X9)8gw&^`K8Y;UO^V6)>axG)1ly!GoqMiKZ<&rmUHeF9y1=}inln&_}rfbx7 z&)7Q{H>Q(`H@DO@C)FupogZyP(AHdZ-8Jz`9x680zOSC9f9qm1u{>#)qE;u(tj~_h zL#y6olg)PpQt1oXBHc``2A2DsziwZu_;JQEybw!rX;>GV`Rmeavj137;AllP<`oP* zi)X(iv>pq})NPo#R#TDHh<3i#u4zuLVMdM{#n+m3v^Pl|e8WFopXPEOr}LdCAL-Tg zHTH738g2MtIkMGcq~=lPU}Z&|hWr;-a}xS5jWXC`L$)e+Vzrm1w&~3`!xP8IMDQ6Z zEu6Ob%)y5ixpO5ZU#1N%Xl&qC~xm9U=>kEPNxC5o~i3D{`!$;;%vRe%0nWzR^9Dcf55P?D$mN_U-ROp+>(A)5zr&rtTYRHf}Tc~(hOsjaXoGQBiBC{X$0zT$I!VXnTXCou>;Vnf+Y`a^aj z`9GTib~_fB0GZrF-arcYeQy7K5eg3bU-BmZnQiceHUJdsqq->(_P;)utTgu5@zAyW VYZ&9p3di7&ih_oGsjPYM{{f!=)RO=J literal 0 HcmV?d00001 diff --git a/muk_web_editor_utils/static/description/icon.png b/muk_web_editor_utils/static/description/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..0c5c74cefaaa5c9a9d61961bff77e3020ac95cc6 GIT binary patch literal 14452 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 \ No newline at end of file diff --git a/muk_web_editor_utils/static/description/index.html b/muk_web_editor_utils/static/description/index.html new file mode 100644 index 0000000..67dae69 --- /dev/null +++ b/muk_web_editor_utils/static/description/index.html @@ -0,0 +1,68 @@ +
+
+

MuK Web Editor Utils

+

Utility Features

+

MuK IT GmbH - + www.mukit.at

+
+
+ +
+
+
+

Overview

+

Technical module to provide some utility + features. The module is mainly used as a dependency by other modules + and to provide a collection of common libraries. It has no direct + visible effect on the system.

+
+
+
+ +
+

Demo

+
+
+
User:
+
+
+
apps
+
+
+
Password:
+
+
+
demo
+
+
+ +
+ +
+

Help and Support

+
Feel free to + contact us, if you need any help with your Odoo integration or + addiontal features.
+ + +
\ No newline at end of file diff --git a/muk_web_editor_utils/static/description/logo.png b/muk_web_editor_utils/static/description/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..9427ce33ea36c2ec961356d01d612bae02d48ce2 GIT binary patch literal 38064 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 literal 0 HcmV?d00001 diff --git a/muk_web_editor_utils/static/src/js/options.js b/muk_web_editor_utils/static/src/js/options.js new file mode 100644 index 0000000..c9214c1 --- /dev/null +++ b/muk_web_editor_utils/static/src/js/options.js @@ -0,0 +1,91 @@ +/********************************************************************************** +* +* Copyright (C) 2017 MuK IT GmbH +* +* This program is free software: you can redistribute it and/or modify +* it under the terms of the GNU Affero 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 Affero General Public License for more details. +* +* You should have received a copy of the GNU Affero General Public License +* along with this program. If not, see . +* +**********************************************************************************/ + +odoo.define('muk_web_utils.snippet_options', function (require) { +"use strict"; + +var core = require('web.core'); +var colorpicker = require('web.colorpicker'); +var options = require('web_editor.snippets.options'); + +var _t = core._t; +var QWeb = core.qweb; + +options.registry.colorpicker.include({ + events: _.extend({}, options.registry.colorpicker.prototype.events || {}, { + 'click .mk_add_custom_color': '_onCustomColorButtonClick', + }), + start: function () { + var res = this._super.apply(this, arguments); + this._renderPickedColors(); + return res; + }, + _renderPickedColors: function () { + var $editable = window.__EditorMenuBar_$editable; + if (this.$el.find('.colorpicker').length && $editable.length) { + var $snippets = $editable.find('.mk_custom_background'); + var colors = _.map($snippets, function ($el) { + return $el.style.backgroundColor; + }); + this.$el.find('.colorpicker .mk_custom_color').remove(); + this.$el.find('.colorpicker button.selected').removeClass('selected'); + _.each( _.uniq(colors), function (color) { + var classes = ['mk_custom_color']; + if (this.$target.css('background-color') === color) { + classes.push('selected'); + } + var $colorButton = $('