diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 3d38172..0000000 --- a/.gitignore +++ /dev/null @@ -1,9 +0,0 @@ -# elm-package generated files -elm-stuff -# elm-repl generated files -repl-temp-* -node_modules/ -documentation.json -dist/ -build -.cache/ diff --git a/public/404.html b/404.html similarity index 100% rename from public/404.html rename to 404.html diff --git a/LICENSE b/LICENSE deleted file mode 100644 index 94a9ed0..0000000 --- a/LICENSE +++ /dev/null @@ -1,674 +0,0 @@ - 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 deleted file mode 100644 index ce7a3c6..0000000 --- a/README.md +++ /dev/null @@ -1,81 +0,0 @@ -*This is work in progress* - -# json-form - -This module generates form based on JSON Schema, its keywords are documented in this spec: http://json-schema.org/latest/json-schema-validation.html. It focuses on simplicity rather than completeness of JSON Schema spec coverage. For example, we don't try to guess style of `oneOf`. - -View demo: https://json-tools.github.io/json-form/ - -Development progress: - -- [x] text editing -- [x] flat object editing -- [x] validation (inline errors only, so far) -- [x] material design styles -- [x] demo for two use-cases: text editing, flat object editing -- [x] editing of number and boolean -- [x] customizable widgets (extending json schema with ui schema) -- [x] password field -- [x] mark required fields with * -- [x] basic array editing capabilities -- [x] rules to disable or hide form elements based on conditions -- [x] multiline editing -- [x] editing as json -- [x] dealing with `undefined` (erase optional property) -- [x] editing array of items -- [x] html5 autocomplete for enum - -Next steps will be some of those (not necessarily in this order): - -- [ ] expandable mode for large/nested forms -- [ ] form layout customisation -- [ ] custom widgets api (e.g. range) -- [ ] radiogroup widget for enum -- [ ] optional field indication (configurable alternative to required) -- [ ] editing dictionary (object with additionalItems = true) -- [ ] display of object-level errors - -## Development - -### Installation - -This module uses `create-elm-app` in order to not clutter project with unrelated dependencies. - -``` -npm install -g create-elm-app -``` - -### Local development server - -You may want to run local dev server to facilitate hot module reloading. - -``` -elm-app start -``` - -### Build and deploy demo to github pages - -``` -elm-app build -gh-pages -d build -``` - -## Design approach - -### JSON Schema - -A few notes on how json schema interpeted by form generator. - -#### Types - -For the sake of simpliticy form generator uses a "type" keyword of JSON Schema in order to identify type of the field. When "type" keyword is an array or types or missing then value edited as json string. Boolean renders toggle, but can be customized to render a checkbox. - -#### Title - -Title rendered as label for terminal input fields (leaf nodes of the value), and as h3 headers for objects. - -#### Required - -Keyword `required` of object type used to identify whether to display * near the label. Optional text fields also have button to erase value displayed. - - diff --git a/asset-manifest.json b/asset-manifest.json new file mode 100644 index 0000000..2fcaeb9 --- /dev/null +++ b/asset-manifest.json @@ -0,0 +1,13 @@ +{ + "main.css": "/json-form/static/css/main.a3d534da.chunk.css", + "main.js": "/json-form/static/js/main.2c571f6e.chunk.js", + "main.css.map": "/json-form/static/css/main.a3d534da.chunk.css.map", + "main.js.map": "/json-form/static/js/main.2c571f6e.chunk.js.map", + "runtime~main.js": "/json-form/static/js/runtime~main.426f939b.js", + "runtime~main.js.map": "/json-form/static/js/runtime~main.426f939b.js.map", + "vendors~main.css": "/json-form/static/css/vendors~main.bebfd7ee.chunk.css", + "vendors~main.js": "/json-form/static/js/vendors~main.100f972e.chunk.js", + "vendors~main.css.map": "/json-form/static/css/vendors~main.bebfd7ee.chunk.css.map", + "vendors~main.js.map": "/json-form/static/js/vendors~main.100f972e.chunk.js.map", + "index.html": "/json-form/index.html" +} \ No newline at end of file diff --git a/bower.json b/bower.json deleted file mode 100644 index ac4110a..0000000 --- a/bower.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "name": "json-form-custom-element", - "description": "JSON Schema based form generator", - "main": "build/custom-element.js", - "authors": [ - "Anatoliy " - ], - "license": "GNU GENERAL PUBLIC LICENSE v3", - "homepage": "https://github.com/json-tools/json-form", - "ignore": [ - "**/.*", - "node_modules", - "bower_components", - "test", - "tests" - ] -} diff --git a/build.sh b/build.sh deleted file mode 100755 index 43de0a3..0000000 --- a/build.sh +++ /dev/null @@ -1,8 +0,0 @@ -set -e - -elm make src/Main.elm --output build/demo.js - -# postcss stylesheets/index.css -o build/styles.css - -cp index.html build/index.html - diff --git a/elm.json b/elm.json deleted file mode 100644 index 46a8743..0000000 --- a/elm.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "type": "application", - "source-directories": [ - "src" - ], - "elm-version": "0.19.0", - "dependencies": { - "direct": { - "NoRedInk/elm-json-decode-pipeline": "1.0.0", - "elm/browser": "1.0.0", - "elm/core": "1.0.0", - "elm/html": "1.0.0", - "elm/json": "1.0.0", - "elm/random": "1.0.0", - "elm/regex": "1.0.0", - "elm/svg": "1.0.1", - "elm/url": "1.0.0", - "json-tools/json-schema": "1.0.2", - "json-tools/json-value": "1.0.1", - "zwilias/elm-utf-tools": "2.0.1" - }, - "indirect": { - "elm/time": "1.0.0", - "elm/virtual-dom": "1.0.2" - } - }, - "test-dependencies": { - "direct": {}, - "indirect": {} - } -} diff --git a/elmapp.config.js b/elmapp.config.js deleted file mode 100644 index 570c898..0000000 --- a/elmapp.config.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - "homepage": "https://json-tools.github.io/json-form/", -} diff --git a/public/favicon.ico b/favicon.ico similarity index 100% rename from public/favicon.ico rename to favicon.ico diff --git a/index.html b/index.html new file mode 100644 index 0000000..b661ce9 --- /dev/null +++ b/index.html @@ -0,0 +1,49 @@ +JSON Form web-component demo \ No newline at end of file diff --git a/json-form.html b/json-form.html deleted file mode 100644 index 34d02bd..0000000 --- a/json-form.html +++ /dev/null @@ -1 +0,0 @@ - diff --git a/public/manifest.json b/manifest.json similarity index 100% rename from public/manifest.json rename to manifest.json diff --git a/postcss.config.js b/postcss.config.js deleted file mode 100644 index d762761..0000000 --- a/postcss.config.js +++ /dev/null @@ -1,9 +0,0 @@ -'use strict'; - -const atImport = require('postcss-import'); - -module.exports = { - plugins: [ - atImport() - ] -}; diff --git a/public/index.html b/public/index.html deleted file mode 100644 index 731ef0a..0000000 --- a/public/index.html +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - JSON Form web-component demo - - - - - - - - - - - diff --git a/service-worker.js b/service-worker.js new file mode 100644 index 0000000..26cd053 --- /dev/null +++ b/service-worker.js @@ -0,0 +1 @@ +"use strict";var precacheConfig=[["/json-form/index.html","015b8054abe2a1e6b38ba6c298d84de9"],["/json-form/static/css/main.a3d534da.chunk.css","ef86def248d4f3f9ce8f7a7c0b0a5518"],["/json-form/static/css/vendors~main.bebfd7ee.chunk.css","ee0a9530377b1c7d500008a4be25d331"],["/json-form/static/js/main.2c571f6e.chunk.js","21f9514eb970ad710bbb2e8599dc24f9"],["/json-form/static/js/runtime~main.426f939b.js","ac979b24a97ae3cb6ac84938654591ed"],["/json-form/static/js/vendors~main.100f972e.chunk.js","471fff0ed1713c9b04e4a53da0c14108"]],cacheName="sw-precache-v3-sw-precache-webpack-plugin-"+(self.registration?self.registration.scope:""),ignoreUrlParametersMatching=[/^utm_/],addDirectoryIndex=function(e,n){var t=new URL(e);return"/"===t.pathname.slice(-1)&&(t.pathname+=n),t.toString()},cleanResponse=function(e){return e.redirected?("body"in e?Promise.resolve(e.body):e.blob()).then(function(n){return new Response(n,{headers:e.headers,status:e.status,statusText:e.statusText})}):Promise.resolve(e)},createCacheKey=function(e,n,t,r){var a=new URL(e);return r&&a.pathname.match(r)||(a.search+=(a.search?"&":"")+encodeURIComponent(n)+"="+encodeURIComponent(t)),a.toString()},isPathWhitelisted=function(e,n){if(0===e.length)return!0;var t=new URL(n).pathname;return e.some(function(e){return t.match(e)})},stripIgnoredUrlParameters=function(e,n){var t=new URL(e);return t.hash="",t.search=t.search.slice(1).split("&").map(function(e){return e.split("=")}).filter(function(e){return n.every(function(n){return!n.test(e[0])})}).map(function(e){return e.join("=")}).join("&"),t.toString()},hashParamName="_sw-precache",urlsToCacheKeys=new Map(precacheConfig.map(function(e){var n=e[0],t=e[1],r=new URL(n,self.location),a=createCacheKey(r,hashParamName,t,/\.\w{8}\./);return[r.toString(),a]}));function setOfCachedUrls(e){return e.keys().then(function(e){return e.map(function(e){return e.url})}).then(function(e){return new Set(e)})}self.addEventListener("install",function(e){e.waitUntil(caches.open(cacheName).then(function(e){return setOfCachedUrls(e).then(function(n){return Promise.all(Array.from(urlsToCacheKeys.values()).map(function(t){if(!n.has(t)){var r=new Request(t,{credentials:"same-origin"});return fetch(r).then(function(n){if(!n.ok)throw new Error("Request for "+t+" returned a response with status "+n.status);return cleanResponse(n).then(function(n){return e.put(t,n)})})}}))})}).then(function(){return self.skipWaiting()}))}),self.addEventListener("activate",function(e){var n=new Set(urlsToCacheKeys.values());e.waitUntil(caches.open(cacheName).then(function(e){return e.keys().then(function(t){return Promise.all(t.map(function(t){if(!n.has(t.url))return e.delete(t)}))})}).then(function(){return self.clients.claim()}))}),self.addEventListener("fetch",function(e){if("GET"===e.request.method){var n,t=stripIgnoredUrlParameters(e.request.url,ignoreUrlParametersMatching);(n=urlsToCacheKeys.has(t))||(t=addDirectoryIndex(t,"index.html"),n=urlsToCacheKeys.has(t));0,n&&e.respondWith(caches.open(cacheName).then(function(e){return e.match(urlsToCacheKeys.get(t)).then(function(e){if(e)return e;throw Error("The cached response that was expected is missing.")})}).catch(function(n){return console.warn('Couldn\'t serve response for "%s" from cache: %O',e.request.url,n),fetch(e.request)}))}}); \ No newline at end of file diff --git a/src/Demo.elm b/src/Demo.elm deleted file mode 100644 index 3916f0e..0000000 --- a/src/Demo.elm +++ /dev/null @@ -1,289 +0,0 @@ -module Demo exposing (Msg(..), init, update, view) - -import Browser exposing (Document, UrlRequest(..)) -import Browser.Navigation exposing (Key) -import Html exposing (Html, div, span, text) -import Html.Attributes exposing (class, classList, style) -import Html.Events exposing (onClick) -import Json.Encode as Encode exposing (Value) -import Json.Form -import Json.Form.Config exposing (TextFieldStyle(..)) -import Json.Schema.Definitions exposing (Schema) -import Json.Value exposing (JsonValue(..)) -import Route exposing (Route(..)) -import Showcase exposing (Example, Showcase(..), getShowcase, getShowcaseTitle) -import Url exposing (Url) - - -type alias ExampleDemo = - { form : Json.Form.Model - , example : Example - } - - -type alias Model = - { showcase : Showcase - , examples : List ExampleDemo - , key : Key - } - - -defaultShowcase : Showcase -defaultShowcase = - InputTypes - - -init : Value -> Url -> Key -> ( Model, Cmd Msg ) -init _ url key = - { showcase = defaultShowcase - , examples = [] - , key = key - } - |> update (url |> Route.fromLocation |> SetRoute) - - -type Msg - = SetShowcase Showcase - | JsonFormMsg Int Json.Form.Msg - | SetRoute (Maybe Route) - | UrlRequested UrlRequest - - -update : Msg -> Model -> ( Model, Cmd Msg ) -update message model = - case message of - UrlRequested urlRequest -> - case urlRequest of - Internal url -> - ( model - , Browser.Navigation.pushUrl model.key (Url.toString url) - ) - - External url -> - ( model - , Browser.Navigation.load url - ) - - SetRoute route -> - case route of - Just (ShowcasePage sc) -> - model |> update (SetShowcase sc) - - _ -> - model |> update (SetShowcase defaultShowcase) - - JsonFormMsg index msg -> - let - ( examples, cmds ) = - model.examples - |> List.indexedMap - (\i { form, example } -> - if i == index then - Json.Form.update msg form - |> Tuple.first - |> Tuple.mapFirst (\f -> { form = f, example = example }) - |> Tuple.mapSecond (JsonFormMsg index |> Cmd.map) - - else - ( { form = form, example = example }, Cmd.none ) - ) - |> List.unzip - in - ( { model - | examples = examples - } - , Cmd.batch cmds - ) - - SetShowcase s -> - let - ( examples, cmds ) = - getShowcase s - |> List.indexedMap - (\index example -> - let - config = - { name = "form" ++ String.fromInt index - , dense = True - , textFieldStyle = Outlined - , collapseNestedObjects = False - , showErrorIcon = False - } - in - Json.Form.init config example.schema Nothing - |> Tuple.mapFirst (\form -> { form = form, example = example }) - |> Tuple.mapSecond (JsonFormMsg index |> Cmd.map) - ) - |> List.unzip - in - ( { model - | showcase = s - , examples = examples - } - , Cmd.batch cmds - ) - - -view : Model -> Document Msg -view model = - { title = "Json Form Demo" - , body = - [ topbar model - , content model - ] - } - - -topbar : Model -> Html Msg -topbar model = - Showcase.index - |> List.map (snippetTab model.showcase) - |> div [ class "app-topbar" ] - - -snippetTab : Showcase -> Showcase -> Html Msg -snippetTab activeShowcase showcase = - Html.a - [ classList - [ ( "tab", True ) - , ( "tab--active", showcase == activeShowcase ) - ] - , Route.href <| ShowcasePage showcase - ] - [ showcase - |> getShowcaseTitle - |> text - ] - - -content : Model -> Html Msg -content model = - let - viewExample index { form, example } = - div [ class "example-section" ] - [ Html.h3 [ class "example-section__heading" ] [ text example.title ] - , div [ class "example-section__content" ] - [ div [ style "display" "inline-block", style "max-width" "350px", style "min-width" "350px" ] - [ div [ style "padding" "10px", style "background" "var(--form-background)" ] - [ form - |> Json.Form.view - |> Html.map (JsonFormMsg index) - ] - |> cardWithTitle "Form" - , form.value - |> Maybe.map viewValue - |> Maybe.withDefault (text " ") - |> (\x -> div [ class "json-view" ] [ x ]) - |> cardWithTitle "Data" - |> (\x -> div [ style "margin-top" "20px" ] [ x ]) - ] - , div [ style "width" "100%", style "min-width" "300px" ] [ example.schema |> viewSchema ] - ] - ] - in - div [ class "app-content" ] - [ model.examples |> List.indexedMap viewExample |> div [] - ] - - -viewValue : JsonValue -> Html msg -viewValue v = - let - str c = - Encode.string >> Encode.encode 0 >> val c - - val c s = - span [ class <| "json-view__" ++ c ] [ text s ] - in - case v of - NumericValue n -> - n - |> String.fromFloat - |> val "number" - - NullValue -> - "null" - |> val "null" - - BoolValue b -> - (if b then - "true" - - else - "false" - ) - |> val "bool" - - StringValue s -> - s |> str "string" - - ObjectValue props -> - let - lastIndex = - List.length props - 1 - in - [ text "{" - , props - |> List.indexedMap - (\index ( key, vv ) -> - span [] - [ key |> str "attr" - , text ": " - , viewValue vv - , if index == lastIndex then - text "\n" - - else - text ",\n" - ] - ) - |> div [ class "json-view__nested-props" ] - , text "}" - ] - |> span [] - - ArrayValue items -> - let - lastIndex = - List.length items - 1 - in - [ text "[" - , items - |> List.indexedMap - (\index vv -> - span [] - [ index |> String.fromInt |> val "attr" - , text ": " - , viewValue vv - , if index == lastIndex then - text "\n" - - else - text ",\n" - ] - ) - |> div [ class "json-view__nested-props" ] - , text "]" - ] - |> span [] - - -viewSchema : Schema -> Html msg -viewSchema s = - let - code = - s - |> Json.Schema.Definitions.encode - |> Json.Value.decodeValue - in - viewValue code - |> (\x -> div [ class "json-view" ] [ x ]) - |> cardWithTitle "Schema" - - -cardWithTitle : String -> Html msg -> Html msg -cardWithTitle title cardContent = - div [ class "card", style "width" "100%" ] - [ span [ class "card__title" ] [ text title ] - , cardContent - ] diff --git a/src/ErrorMessages.elm b/src/ErrorMessages.elm deleted file mode 100644 index 57ba662..0000000 --- a/src/ErrorMessages.elm +++ /dev/null @@ -1,113 +0,0 @@ -module ErrorMessages exposing (stringifyError) - -import Json.Encode as Encode -import Json.Schema.Validation as Validation exposing (ValidationError(..)) - - -pluralize : Int -> String -> String -pluralize n name = - case n of - 1 -> - "1 " ++ name - - _ -> - String.fromInt n ++ " " ++ name ++ "s" - - -stringifyError : Validation.ValidationError -> String -stringifyError e = - case e of - MultipleOf multiplier actual -> - String.fromFloat actual - ++ " is not a multiple of " - ++ String.fromFloat multiplier - - Maximum max actual -> - String.fromFloat actual ++ " is more than maximum " ++ String.fromFloat max - - Minimum min actual -> - String.fromFloat actual ++ " is less than minimum " ++ String.fromFloat min - - ExclusiveMaximum max actual -> - String.fromFloat actual ++ " is not less than exclusive maximum " ++ String.fromFloat max - - ExclusiveMinimum min actual -> - String.fromFloat actual ++ " is not more than exclusive minimum " ++ String.fromFloat min - - MaxLength expected actual -> - "Longer than " - ++ pluralize expected "character" - - MinLength expected actual -> - "Shorter than " - ++ pluralize expected "character" - - Pattern pattern string -> - "Does not match pattern " ++ pattern - - MaxItems expected actual -> - "List expected to have at most " - ++ pluralize expected "item" - ++ " but it has " - ++ pluralize actual "item" - - MinItems expected actual -> - "List expected to have at least " - ++ pluralize expected "item" - ++ " but it has " - ++ pluralize actual "item" - - UniqueItems x -> - "Expected array of unique items, but a duplicate found: " ++ Encode.encode 0 x - - Contains -> - "None of array items is valid against the given schema" - - MaxProperties expected actual -> - "MaxProperties" - - MinProperties expected actual -> - "MinProperties" - - RequiredProperty -> - "This property is required" - - Required missingPropertyNames -> - "" - - AdditionalPropertyDisallowed -> - "This is an additional property and it is not allowed" - - AdditionalPropertiesDisallowed extraPropertyNames -> - "" - - {- - "Additional properties are not allowed here, but I see " - ++ (extraPropertyNames |> List.map toString |> String.join ", ") - -} - InvalidPropertyName invalidPropertyNames -> - "Some property names are not passing validation" - - Enum -> - "Value does not match enumeration defined in the schema" - - Const -> - "Value does not match const defined in the schema" - - InvalidType s -> - s - - OneOfNoneSucceed -> - "Value does not pass the validation with none of the schemata listed in '.oneOf'" - - OneOfManySucceed int -> - "Value should pass validation with exactly one schema, but " ++ String.fromInt int ++ " return a positive result" - - Not -> - "This value expected to fail validation" - - AlwaysFail -> - "This is not expected to succeed" - - UnresolvableReference ref -> - "Reference " ++ ref ++ " can not be resolved" diff --git a/src/Icons.elm b/src/Icons.elm deleted file mode 100644 index 472d635..0000000 --- a/src/Icons.elm +++ /dev/null @@ -1,67 +0,0 @@ -module Icons exposing (deleteIcon, errorIcon, eye, eyeOff) - -import Html exposing (Html) -import Svg exposing (..) -import Svg.Attributes exposing (..) -import Svg.Events exposing (onClick) - - -svgFeatherIcon : String -> Maybe msg -> List (Svg msg) -> Html msg -svgFeatherIcon className onClickHandler = - let - attrs = - [ class <| "feather feather-" ++ className - , fill "none" - , height "24" - , stroke "currentColor" - , strokeLinecap "round" - , strokeLinejoin "round" - , strokeWidth "2" - , viewBox "0 0 24 24" - , width "24" - ] - in - case onClickHandler of - Just handler -> - onClick handler :: Svg.Attributes.style "cursor: pointer" :: attrs |> svg - - Nothing -> - svg attrs - - -errorIcon : Html msg -errorIcon = - svgFeatherIcon "alert-circle" - Nothing - [ Svg.circle [ cx "12", cy "12", r "10" ] [] - , Svg.line [ x1 "12", y1 "8", x2 "12", y2 "12" ] [] - , Svg.line [ x1 "12", y1 "16", x2 "12", y2 "16" ] [] - ] - - -deleteIcon : msg -> Html msg -deleteIcon msg = - svgFeatherIcon "x-circle" - (Just msg) - [ Svg.circle [ cx "12", cy "12", r "10" ] [] - , Svg.line [ x1 "15", y1 "9", x2 "9", y2 "15" ] [] - , Svg.line [ x1 "9", y1 "9", x2 "15", y2 "15" ] [] - ] - - -eye : msg -> Html msg -eye msg = - svgFeatherIcon "eye" - (Just msg) - [ Svg.path [ d "M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z" ] [] - , Svg.circle [ cx "12", cy "12", r "3" ] [] - ] - - -eyeOff : msg -> Html msg -eyeOff msg = - svgFeatherIcon "eye-off" - (Just msg) - [ Svg.path [ d "M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24" ] [] - , Svg.line [ x1 "1", y1 "1", x2 "23", y2 "23" ] [] - ] diff --git a/src/Json/Form.elm b/src/Json/Form.elm deleted file mode 100644 index 4a3ce0e..0000000 --- a/src/Json/Form.elm +++ /dev/null @@ -1,698 +0,0 @@ -module Json.Form exposing - ( ExternalMsg(..) - , Model - , Msg - , init - , update - , updateConfig - , updateSchema - , view - ) - -import Browser.Dom -import Dict exposing (Dict) -import ErrorMessages exposing (stringifyError) -import Html exposing (..) -import Html.Attributes exposing (class, classList) -import Html.Events exposing (onClick) -import Json.Decode as Decode exposing (Value, decodeValue) -import Json.Encode as Encode -import Json.Form.Config exposing (Config) -import Json.Form.Definitions as Definitions exposing (EditingMode(..), Msg(..), Path) -import Json.Form.Selection as Selection -import Json.Form.TextField as TextField -import Json.Form.UiSpec as UiSpec exposing (Widget(..), applyRule) -import Json.Schema -import Json.Schema.Definitions exposing (..) -import Json.Schema.Validation exposing (Error) -import Json.Value as JsonValue exposing (JsonValue(..)) -import JsonFormUtil as Util exposing (getTitle, getUiSpec, jsonValueToString) -import Set -import Task - - -type ExternalMsg - = None - | UpdateValue (Maybe JsonValue) (Dict Path (List String)) - - -type alias Model = - Definitions.Model - - -type alias Msg = - Definitions.Msg - - -view : Model -> Html Msg -view model = - Html.div [] [ viewNode model model.schema False False [] ] - - -viewNode : Model -> Schema -> Bool -> Bool -> Path -> Html Msg -viewNode model schema isRequired isDisabled path = - Html.div [ class <| "nesting-level-" ++ String.fromInt (List.length path) ] - [ case editingMode model schema of - TextField -> - TextField.view model schema False isRequired isDisabled path - - JsonEditor -> - TextField.view model schema True isRequired isDisabled path - - NumberField -> - TextField.viewNumeric model schema isRequired isDisabled path - - Definitions.Switch -> - Selection.switch model schema isRequired isDisabled path - - Checkbox -> - Selection.checkbox model schema isRequired isDisabled path - - Object properties -> - viewObject model schema properties isRequired isDisabled path - - Array -> - viewArray model schema isRequired isDisabled path - ] - - -editingMode : Model -> Schema -> EditingMode -editingMode model schema = - let - uiSpec = - schema |> getUiSpec - in - if uiSpec.editAsJson then - JsonEditor - - else - case schema of - ObjectSchema os -> - case os.type_ of - SingleType NumberType -> - NumberField - - SingleType IntegerType -> - NumberField - - SingleType StringType -> - TextField - - SingleType BooleanType -> - getBooleanUiWidget schema - - SingleType ObjectType -> - case os.properties of - Just schemata -> - Object schemata - - Nothing -> - JsonEditor - - SingleType ArrayType -> - Array - - _ -> - JsonEditor - - _ -> - JsonEditor - - -getBooleanUiWidget : Schema -> EditingMode -getBooleanUiWidget schema = - case schema |> getUiSpec |> .widget of - Just UiSpec.Switch -> - Definitions.Switch - - _ -> - Checkbox - - -viewArray : Model -> Schema -> Bool -> Bool -> Path -> Html Msg -viewArray model schema isRequired isDisabled path = - let - ( disabled, hidden ) = - schema - |> getUiSpec - |> .rule - |> applyRule model.value path - - list = - model.value - |> Maybe.withDefault JsonValue.NullValue - |> JsonValue.getIn path - |> Result.withDefault (JsonValue.ArrayValue []) - |> (\l -> - case l of - ArrayValue items -> - items - - _ -> - [] - ) - in - if hidden then - text "" - - else - case schema of - ObjectSchema os -> - case os.items of - ItemDefinition itemSchema -> - [ list - |> List.indexedMap - (\index item -> - let - propName = - index |> String.fromInt - - isRequiredLocal = - case itemSchema of - ObjectSchema itemSchemaObject -> - itemSchemaObject.required - |> Maybe.withDefault [] - |> List.member propName - - _ -> - False - in - viewNode model itemSchema isRequiredLocal (isDisabled || disabled) (path ++ [ propName ]) - ) - |> div [] - , div [ class "array-item-add" ] - [ button [ class "button", onClick <| AddItem path (List.length list) itemSchema ] [ text "ADD ITEM" ] - ] - ] - |> div [] - - {- - div [] - [ text "TODO: Implement array editing" - ] - -} - _ -> - text "" - - _ -> - text "" - - -viewObject : Model -> Schema -> Schemata -> Bool -> Bool -> Path -> Html Msg -viewObject model schema properties isRequired isDisabled path = - let - key = - path |> List.reverse |> List.head - - iterateOverSchemata (Schemata schemata) = - schemata - |> List.map - (\( propName, subSchema ) -> - viewNode model - subSchema - (required |> List.member propName) - (isDisabled || disabled) - (path ++ [ propName ]) - ) - - ( disabled, hidden ) = - schema - |> getUiSpec - |> .rule - |> applyRule model.value path - - isExpandable = - (model.config.collapseNestedObjects - || (schema - |> getUiSpec - |> .expandable - ) - ) - && path - /= [] - - isExpanded = - model.expandedNodes |> Set.member path - - required = - case schema of - ObjectSchema os -> - os.required |> Maybe.withDefault [] - - _ -> - [] - - title = - case schema |> getTitle isRequired of - "" -> - key |> Maybe.withDefault "" - - x -> - x - in - if hidden then - text "" - - else - div [ class "jf-object" ] - [ if title /= "" then - div - ([ classList - [ ( "jf-heading", True ) - , ( "jf-heading--expandable", isExpandable ) - , ( "jf-heading--expanded", isExpandable && isExpanded ) - ] - ] - ++ (if isExpandable then - [ onClick <| ToggleNode path ] - - else - [] - ) - ) - [ text title ] - - else - text "" - , if isExpanded || not isExpandable then - properties - |> iterateOverSchemata - |> div - [ classList - [ ( "jf-section--expandable", isExpandable ) - , ( "jf-section", True ) - ] - ] - - else - text "" - ] - - -updateConfig : Config -> Model -> Model -updateConfig config model = - { model | config = config } - - -updateSchema : Schema -> Model -> Model -updateSchema schema model = - { model | schema = schema } - - -initValue : Schema -> Value -> Value -initValue schema someValue = - schema - |> Json.Schema.validateValue { applyDefaults = True } someValue - |> (\res -> - case res of - Ok updValue -> - updValue - - Err x -> - someValue - ) - - -defaultFor : Schema -> JsonValue -defaultFor s = - case s of - ObjectSchema os -> - if os.type_ == SingleType ObjectType then - Encode.object [] - |> initValue s - |> JsonValue.decodeValue - - else - NullValue - - _ -> - NullValue - - -update : Msg -> Model -> ( ( Model, Cmd Msg ), ExternalMsg ) -update msg model = - case msg of - NoOp -> - ( model - , Cmd.none - ) - |> withExMsg None - - AddItem path index schema -> - let - newPropPath = - path ++ [ index |> String.fromInt ] - - updatedModel = - case model.value |> Maybe.andThen (JsonValue.getIn path >> Result.toMaybe) of - Just _ -> - model - - Nothing -> - { model - | value = - model.value - |> Maybe.withDefault NullValue - |> JsonValue.setIn path (ArrayValue []) - |> Result.toMaybe - } - in - editValue updatedModel newPropPath (defaultFor schema) - - DeleteProperty path -> - let - updatedJsonValue = - if path == [] then - Nothing - - else - model.value |> Maybe.andThen (JsonValue.deleteIn path >> Result.toMaybe) - - validationResult = - model.schema - |> Json.Schema.validateValue { applyDefaults = True } (JsonValue.encode <| Maybe.withDefault JsonValue.NullValue updatedJsonValue) - - errors = - case validationResult of - Ok _ -> - Dict.empty - - Err e -> - dictFromListErrors e - in - ( { model - | value = - updatedJsonValue - } - , Cmd.none - ) - |> withExMsg (UpdateValue updatedJsonValue errors) - - FocusInput focused -> - ( { model - | focused = focused - , beingFocused = touch focused model.focused model.beingFocused - } - , Cmd.none - ) - |> withExMsg None - - FocusTextInput focused -> - ( { model - | focused = Just focused - , beingFocused = touch (Just focused) model.focused model.beingFocused - } - , focused |> String.join "_" |> Browser.Dom.focus |> Task.attempt (\_ -> NoOp) - ) - |> withExMsg None - - FocusFragileInput isNumber focused -> - case focused of - Nothing -> - if isNumber then - case model.editedJson |> String.toFloat of - Just num -> - editValue - { model | beingFocused = touch focused model.focused model.beingFocused, focused = Nothing } - (model.focused |> Maybe.withDefault []) - (JsonValue.NumericValue num) - - _ -> - ( model - , Cmd.none - ) - |> withExMsg None - - else - ( { model | beingFocused = touch focused model.focused model.beingFocused, focused = Nothing } - , Cmd.none - ) - |> withExMsg None - - Just somePath -> - ( { model - | focused = focused - , editedJson = - if isNumber then - model.value - |> Maybe.map (JsonValue.getIn somePath) - |> Maybe.andThen Result.toMaybe - |> Maybe.map jsonValueToString - |> Maybe.withDefault "" - - else - model.value - |> Maybe.withDefault (JsonValue.ObjectValue []) - |> JsonValue.getIn somePath - |> Result.toMaybe - |> Maybe.map (JsonValue.encode >> Encode.encode 4) - |> Maybe.withDefault "" - } - , Cmd.none - ) - |> withExMsg None - - EditValue path val -> - editValue model path val - - EditNumber str -> - case str |> String.toFloat of - Just num -> - editValue { model | editedJson = str } (model.focused |> Maybe.withDefault []) (JsonValue.NumericValue num) - - _ -> - ( { model | editedJson = str } - , Cmd.none - ) - |> withExMsg None - - EditJson path height str -> - case str |> Decode.decodeString JsonValue.decoder of - Ok jv -> - editValue { model | editedJson = str, fieldHeights = model.fieldHeights |> Dict.insert path height } path jv - - _ -> - ( { model | editedJson = str } - , Cmd.none - ) - |> withExMsg None - - EditMultiline path height str -> - editValue { model | fieldHeights = model.fieldHeights |> Dict.insert path height } path (StringValue str) - - ToggleShowPassword -> - ( { model | showPassword = not model.showPassword } - , Cmd.none - ) - |> withExMsg None - - GetViewport path res -> - (case res of - Ok viewport -> - ( { model | fieldHeights = model.fieldHeights |> Dict.insert path viewport.scene.height } - , Cmd.none - ) - - Err _ -> - ( model - , Cmd.none - ) - ) - |> withExMsg None - - ToggleNode path -> - ( { model - | expandedNodes = - if model.expandedNodes |> Set.member path then - model.expandedNodes |> Set.remove path - - else - model.expandedNodes |> Set.insert path - } - , Cmd.none - ) - |> withExMsg None - - -touch : Maybe Path -> Maybe Path -> List Path -> List Path -touch path focused beingWhat = - if path == Nothing then - beingWhat - |> (::) (focused |> Maybe.withDefault []) - - else - beingWhat - - -editValue : Model -> Path -> JsonValue -> ( ( Model, Cmd Msg ), ExternalMsg ) -editValue model path val = - let - updatedJsonValue = - model.value - |> Maybe.withDefault JsonValue.NullValue - |> JsonValue.setIn path val - |> Result.toMaybe - |> Maybe.withDefault JsonValue.NullValue - - updatedValue = - updatedJsonValue - |> JsonValue.encode - - validationResult = - model.schema - |> Json.Schema.validateValue { applyDefaults = True } updatedValue - in - case validationResult of - Ok v -> - ( { model - | value = - v - |> decodeValue JsonValue.decoder - |> Result.toMaybe - , errors = Dict.empty - , beingEdited = touch Nothing (Just path) model.beingEdited - } - , Cmd.none - ) - |> withExMsg (UpdateValue (Just updatedJsonValue) Dict.empty) - - Err e -> - let - errors = - dictFromListErrors e - in - ( { model - | value = Just updatedJsonValue - , errors = errors - , beingEdited = touch Nothing (Just path) model.beingEdited - } - , Cmd.none - ) - |> withExMsg (UpdateValue (Just updatedJsonValue) errors) - - -dictFromListErrors : List Error -> Dict Path (List String) -dictFromListErrors list = - list - |> List.foldl - (\error dict -> - dict - |> Dict.update error.jsonPointer.path - (\listDetails -> - (case listDetails of - Just l -> - l ++ [ error.details |> stringifyError ] - - Nothing -> - [ error.details |> stringifyError ] - ) - |> Just - ) - ) - Dict.empty - - -withExMsg : a -> b -> ( b, a ) -withExMsg a b = - ( b, a ) - - -init : Config -> Schema -> Maybe JsonValue -> ( Model, Cmd Msg ) -init config schema v = - let - ( value, errors ) = - case v of - Just something -> - something |> JsonValue.encode |> initVal - - Nothing -> - case schema of - ObjectSchema os -> - case os.default of - Just def -> - def |> initVal - - Nothing -> - case os.type_ of - SingleType ObjectType -> - Encode.object [] |> initVal - - _ -> - ( Nothing, Dict.empty ) - - _ -> - ( Nothing, Dict.empty ) - - initVal someValue = - schema - |> Json.Schema.validateValue { applyDefaults = True } someValue - |> (\res -> - case res of - Ok updValue -> - ( updValue - |> JsonValue.decodeValue - |> Just - , Dict.empty - ) - - Err x -> - ( someValue |> JsonValue.decodeValue |> Just, dictFromListErrors x ) - ) - - multilineFieldsPaths = - collectMultilinePaths [] [] schema - in - ( { schema = schema - , focused = Nothing - , config = config - , value = value - , errors = errors - , beingEdited = [] - , beingFocused = [] - , editedJson = "" - , showPassword = False - , fieldHeights = Dict.empty - , expandedNodes = Set.empty - } - , multilineFieldsPaths - |> List.map (\path -> Browser.Dom.getViewportOf (config.name ++ "_" ++ String.join "_" path) |> Task.attempt (GetViewport path)) - |> Cmd.batch - ) - - -collectMultilinePaths : List Path -> Path -> Schema -> List Path -collectMultilinePaths paths path schema = - case schema of - ObjectSchema os -> - case os.type_ of - SingleType NumberType -> - paths - - SingleType StringType -> - case schema |> getUiSpec |> .widget of - Just (UiSpec.MultilineTextField _) -> - path :: paths - - _ -> - paths - - SingleType BooleanType -> - paths - - SingleType ObjectType -> - case os.properties of - Just (Schemata listProps) -> - listProps - |> List.foldl (\( key, propSchema ) res -> collectMultilinePaths res (path ++ [ key ]) propSchema) paths - - _ -> - path :: paths - - SingleType ArrayType -> - paths - - _ -> - path :: paths - - _ -> - path :: paths diff --git a/src/Json/Form/Config.elm b/src/Json/Form/Config.elm deleted file mode 100644 index 70a4ccd..0000000 --- a/src/Json/Form/Config.elm +++ /dev/null @@ -1,54 +0,0 @@ -module Json.Form.Config exposing (Config, TextFieldStyle(..), decoder, defaultConfig) - -import Json.Decode as Decode exposing (Decoder, bool, fail, field, maybe, string, succeed) - - -type alias Config = - { textFieldStyle : TextFieldStyle - , dense : Bool - , name : String - , collapseNestedObjects : Bool - , showErrorIcon : Bool - } - - -type TextFieldStyle - = Filled - | Outlined - - -defaultConfig : Config -defaultConfig = - { textFieldStyle = Outlined - , dense = True - , name = "" - , collapseNestedObjects = False - , showErrorIcon = True - } - - -decoder : Decoder Config -decoder = - Decode.map5 Config - ((field "textFieldStyle" <| - Decode.andThen - (\x -> - if x == "filled" then - succeed Filled - - else if x == "outlined" then - succeed Outlined - - else - fail "Unknown text field style" - ) - <| - string - ) - |> maybe - |> Decode.map (Maybe.withDefault Outlined) - ) - (field "dense" bool |> maybe |> Decode.map (Maybe.withDefault True)) - (field "name" string |> maybe |> Decode.map (Maybe.withDefault "")) - (field "collapseNestedObjects" bool |> maybe |> Decode.map (Maybe.withDefault False)) - (field "showErrorIcon" bool |> maybe |> Decode.map (Maybe.withDefault True)) diff --git a/src/Json/Form/Definitions.elm b/src/Json/Form/Definitions.elm deleted file mode 100644 index fd6efd9..0000000 --- a/src/Json/Form/Definitions.elm +++ /dev/null @@ -1,58 +0,0 @@ -module Json.Form.Definitions exposing (EditingMode(..), Model, Msg(..), Path) - -import Browser.Dom exposing (Viewport) -import Dict exposing (Dict) -import ErrorMessages exposing (stringifyError) -import Json.Encode as Encode -import Json.Form.Config exposing (Config) -import Json.Schema -import Json.Schema.Definitions exposing (..) -import Json.Schema.Validation exposing (Error) -import Json.Value as JsonValue exposing (JsonValue) -import Set exposing (Set) -import Task - - -type alias Model = - { schema : Schema - , focused : Maybe Path - , config : Config - , value : Maybe JsonValue - , errors : Dict Path (List String) - , beingEdited : List Path - , beingFocused : List Path - , editedJson : String - , showPassword : Bool - , fieldHeights : Dict Path Float - , expandedNodes : Set Path - } - - -type Msg - = NoOp - | FocusInput (Maybe Path) - | FocusTextInput Path - | FocusFragileInput Bool (Maybe Path) - | EditValue Path JsonValue - | EditNumber String - | EditJson Path Float String - | EditMultiline Path Float String - | AddItem Path Int Schema - | ToggleShowPassword - | DeleteProperty Path - | GetViewport Path (Result Browser.Dom.Error Viewport) - | ToggleNode Path - - -type EditingMode - = TextField - | NumberField - | Switch - | Checkbox - | JsonEditor - | Object Schemata - | Array - - -type alias Path = - List String diff --git a/src/Json/Form/Helper.elm b/src/Json/Form/Helper.elm deleted file mode 100644 index 4ce3e7d..0000000 --- a/src/Json/Form/Helper.elm +++ /dev/null @@ -1,35 +0,0 @@ -module Json.Form.Helper exposing (view) - -import Dict exposing (Dict) -import Html exposing (Html, text) -import Json.Form.Definitions exposing (..) -import Json.Schema.Definitions exposing (Schema) -import JsonFormUtil exposing (..) - - -view : Model -> Schema -> Path -> ( Bool, Html msg ) -view model schema path = - let - errors = - model.errors - |> Dict.get path - - hasError = - errors - /= Nothing - && List.member path model.beingEdited - && List.member path model.beingFocused - in - ( hasError - , if hasError then - errors - |> Maybe.withDefault [] - |> String.join ", " - |> (++) "Error: " - |> text - - else - schema - |> getDescription - |> text - ) diff --git a/src/Json/Form/Selection.elm b/src/Json/Form/Selection.elm deleted file mode 100644 index b476928..0000000 --- a/src/Json/Form/Selection.elm +++ /dev/null @@ -1,138 +0,0 @@ -module Json.Form.Selection exposing (checkbox, switch) - -import Html exposing (..) -import Html.Attributes exposing (..) -import Html.Events exposing (onBlur, onCheck, onFocus, onInput) -import Json.Form.Definitions exposing (..) -import Json.Form.Helper as Helper -import Json.Form.UiSpec exposing (applyRule) -import Json.Schema.Definitions exposing (Schema, getCustomKeywordValue) -import Json.Value as JsonValue exposing (JsonValue(..)) -import JsonFormUtil as Util exposing (getTitle, getUiSpec, jsonValueToString) - - -switch : Model -> Schema -> Bool -> Bool -> Path -> Html Msg -switch model schema isRequired isDisabled path = - let - id = - model.config.name ++ "_" ++ (path |> String.join "_") - - isChecked = - case model.value |> Maybe.andThen (JsonValue.getIn path >> Result.toMaybe) of - Just (BoolValue x) -> - x - - _ -> - False - - ( hasError, helperText ) = - Helper.view model schema path - - ( disabled, hidden ) = - schema - |> getUiSpec - |> .rule - |> applyRule model.value path - - actuallyDisabled = - isDisabled || disabled - in - div - [ classList - [ ( "jf-element", True ) - , ( "jf-element--hidden", hidden ) - , ( "jf-element--invalid", hasError ) - ] - ] - [ label - [ classList - [ ( "jf-switch", True ) - , ( "jf-switch--on", isChecked ) - , ( "jf-switch--focused", model.focused |> Maybe.map ((==) path) |> Maybe.withDefault False ) - , ( "jf-switch--invalid", hasError ) - , ( "jf-switch--disabled", actuallyDisabled ) - , ( "jf-switch--hidden", hidden ) - ] - ] - [ input - [ type_ "checkbox" - , class "jf-switch__input" - , checked isChecked - , onFocus <| FocusInput (Just path) - , onBlur <| FocusInput Nothing - , onCheck <| (JsonValue.BoolValue >> EditValue path) - , Html.Attributes.id id - , Html.Attributes.name id - , Html.Attributes.disabled actuallyDisabled - ] - [] - , span [ class "jf-switch__label" ] [ schema |> getTitle isRequired |> text ] - , div [ class "jf-switch__track" ] [] - , div [ class "jf-switch__thumb" ] [] - , div [ class "jf-switch__helper-text" ] [ helperText ] - ] - ] - - -checkbox : Model -> Schema -> Bool -> Bool -> Path -> Html Msg -checkbox model schema isRequired isDisabled path = - let - id = - model.config.name ++ "_" ++ (path |> String.join "_") - - isChecked = - case model.value |> Maybe.andThen (JsonValue.getIn path >> Result.toMaybe) of - Just (BoolValue x) -> - x - - _ -> - False - - ( hasError, helperText ) = - Helper.view model schema path - - ( disabled, hidden ) = - schema - |> getUiSpec - |> .rule - |> applyRule model.value path - - actuallyDisabled = - isDisabled || disabled - in - div - [ classList - [ ( "jf-element", True ) - , ( "jf-element--hidden", hidden ) - , ( "jf-element--invalid", hasError ) - ] - ] - [ label - [ classList - [ ( "jf-checkbox", True ) - , ( "jf-checkbox--on", isChecked ) - , ( "jf-checkbox--focused", model.focused |> Maybe.map ((==) path) |> Maybe.withDefault False ) - , ( "jf-checkbox--invalid", hasError ) - , ( "jf-checkbox--disabled", actuallyDisabled ) - , ( "jf-checkbox--hidden", hidden ) - ] - ] - [ input - [ type_ "checkbox" - , class "jf-checkbox__input" - , checked isChecked - , Html.Attributes.id id - , Html.Attributes.name id - , Html.Attributes.disabled actuallyDisabled - , onFocus <| FocusInput (Just path) - , onBlur <| FocusInput Nothing - , onCheck <| (JsonValue.BoolValue >> EditValue path) - ] - [] - , span [ class "jf-checkbox__label" ] [ schema |> getTitle isRequired |> text ] - , div [ class "jf-checkbox__box-outline" ] - [ div [ class "jf-checkbox__tick-outline" ] [] - ] - , div [ class "jf-checkbox__helper-text" ] [ helperText ] - ] - ] diff --git a/src/Json/Form/TextField.elm b/src/Json/Form/TextField.elm deleted file mode 100644 index d95f7b2..0000000 --- a/src/Json/Form/TextField.elm +++ /dev/null @@ -1,317 +0,0 @@ -module Json.Form.TextField exposing (view, viewNumeric) - -import Dict -import Html exposing (..) -import Html.Attributes exposing (..) -import Html.Events exposing (onBlur, onFocus, onInput) -import Icons exposing (deleteIcon, errorIcon, eye, eyeOff) -import Json.Decode as Decode exposing (Decoder, Value) -import Json.Encode as Encode -import Json.Form.Config exposing (TextFieldStyle(..)) -import Json.Form.Definitions exposing (..) -import Json.Form.Helper as Helper -import Json.Form.UiSpec exposing (Rule(..), UiSpec, Widget(..), applyRule) -import Json.Schema.Definitions exposing (Schema(..), getCustomKeywordValue) -import Json.Value as JsonValue exposing (JsonValue(..)) -import JsonFormUtil as Util exposing (getTitle, getUiSpec, jsonValueToString) - - -view : Model -> Schema -> Bool -> Bool -> Bool -> Path -> Html Msg -view model schema isJson isRequired isDisabled path = - let - id = - (model.config.name ++ "_") ++ (path |> String.join "_") - - ( enum, examples ) = - case schema of - ObjectSchema os -> - ( os.enum - |> Maybe.map (List.map (\v -> v |> Decode.decodeValue Decode.string |> Result.withDefault "")) - , os.examples - |> Maybe.map (List.map (\v -> v |> Decode.decodeValue Decode.string |> Result.withDefault "")) - ) - - _ -> - ( Nothing, Nothing ) - - isFocused = - model.focused - |> Maybe.map ((==) path) - |> Maybe.withDefault False - - editedValue = - if isJson then - if isFocused then - model.editedJson - - else - model.value - |> Maybe.withDefault (ObjectValue []) - |> JsonValue.getIn path - |> Result.toMaybe - |> Maybe.map (JsonValue.encode >> Encode.encode 4) - |> Maybe.withDefault "" - - else - model.value - |> Maybe.map (JsonValue.getIn path) - |> Maybe.andThen Result.toMaybe - |> Maybe.map jsonValueToString - |> Maybe.withDefault "" - - ( hasError, helperText ) = - Helper.view model schema path - - uiSpec = - schema |> getUiSpec - - isPassword = - uiSpec.widget == Just PasswordField - - multilineConfig = - case uiSpec.widget of - Just (MultilineTextField conf) -> - Just conf - - _ -> - if isJson then - Just { minRows = 5, maxRows = 8 } - - else - Nothing - - ( disabled, hidden ) = - applyRule model.value path uiSpec.rule - - actuallyDisabled = - isDisabled || disabled - - icon = - if isPassword then - if model.showPassword then - ToggleShowPassword |> eyeOff |> Just - - else - ToggleShowPassword |> eye |> Just - - else if hasError && model.config.showErrorIcon then - Just errorIcon - - else if not isRequired && editedValue /= "" && not actuallyDisabled then - DeleteProperty path |> deleteIcon |> Just - - else - Nothing - - baseAttributes = - [ class "jf-textfield__input" - , value <| editedValue - , Html.Attributes.id id - , Html.Attributes.name id - , Html.Attributes.autocomplete False - , Html.Attributes.disabled actuallyDisabled - ] - ++ (if enum /= Nothing || examples /= Nothing then - [ Html.Attributes.list <| id ++ "_enum" ] - - else - [] - ) - - editMultiline : (Float -> String -> msg) -> Decoder msg - editMultiline fn = - Decode.map2 fn - (Decode.at [ "target", "scrollHeight" ] Decode.float) - (Decode.at [ "target", "value" ] Decode.string) - - isOutlined = - model.config.textFieldStyle == Outlined - - textInput = - case multilineConfig of - Just mlConf -> - let - paddings = - if model.config.dense then - if isOutlined then - 13 + 13 - - else - 22 + 13 - - else - 20 + 17 - - rows = - case model.fieldHeights |> Dict.get path of - Just height -> - Basics.min ((height - paddings) / 18 |> round) mlConf.maxRows - - Nothing -> - mlConf.minRows - in - if isJson then - textarea - (Html.Events.on "input" (editMultiline <| EditJson path) - :: Html.Attributes.rows rows - :: (onFocus <| FocusFragileInput False (Just path)) - :: (onBlur <| FocusFragileInput False Nothing) - :: baseAttributes - ) - [] - - else - textarea - (Html.Events.on "input" (editMultiline <| EditMultiline path) - :: Html.Attributes.rows rows - :: (onFocus <| FocusInput (Just path)) - :: (onBlur <| FocusInput Nothing) - :: baseAttributes - ) - [] - - Nothing -> - input - (baseAttributes - ++ [ if isPassword && not model.showPassword then - type_ "password" - - else - type_ "text" - , onInput (JsonValue.StringValue >> EditValue path) - , onFocus <| FocusInput (Just path) - , onBlur <| FocusInput Nothing - ] - ) - [] - in - div - [ classList - [ ( "jf-element", True ) - , ( "jf-element--hidden", hidden ) - , ( "jf-element--invalid", hasError ) - ] - ] - [ div - [ classList - [ ( "jf-textfield", True ) - , ( "jf-textfield--outlined", isOutlined ) - , ( "jf-textfield--dense", model.config.dense ) - , ( "jf-textfield--focused", model.focused |> Maybe.map ((==) path) |> Maybe.withDefault False ) - , ( "jf-textfield--empty", editedValue == "" ) - , ( "jf-textfield--invalid", hasError ) - , ( "jf-textfield--has-icon", icon /= Nothing ) - , ( "jf-textfield--disabled", actuallyDisabled ) - , ( "jf-textfield--multiline", multilineConfig /= Nothing ) - , ( "jf-textfield--json", isJson ) - ] - ] - -- , onFocus <| FocusTextInput path - -- , Html.Attributes.tabindex -1 - [ label [ class "jf-textfield__label" ] [ schema |> getTitle isRequired |> text ] - , textInput - , icon |> Maybe.withDefault (text "") - ] - , div [ class "jf-helper-text" ] [ helperText ] - , case enum of - Just listStrings -> - listStrings - |> List.map (\s -> Html.option [ Html.Attributes.value s ] []) - |> Html.datalist [ Html.Attributes.id <| id ++ "_enum" ] - - Nothing -> - case examples of - Just listStrings -> - listStrings - |> List.map (\s -> Html.option [ Html.Attributes.value s ] []) - |> Html.datalist [ Html.Attributes.id <| id ++ "_enum" ] - - Nothing -> - text "" - ] - - -viewNumeric : Model -> Schema -> Bool -> Bool -> Path -> Html Msg -viewNumeric model schema isRequired isDisabled path = - let - id = - path |> String.join "_" - - isFocused = - model.focused - |> Maybe.map ((==) path) - |> Maybe.withDefault False - - editedValue = - if isFocused then - model.editedJson - - else - model.value - |> Maybe.map (JsonValue.getIn path) - |> Maybe.andThen Result.toMaybe - |> Maybe.map Util.jsonValueToString - |> Maybe.withDefault "" - - ( hasError, helperText ) = - Helper.view model schema path - - uiSpec = - schema |> getUiSpec - - ( disabled, hidden ) = - applyRule model.value path uiSpec.rule - - actuallyDisabled = - isDisabled || disabled - - icon = - if hasError then - errorIcon |> Just - - else if not isRequired && editedValue /= "" && not actuallyDisabled then - DeleteProperty path |> deleteIcon |> Just - - else - Nothing - - numericInput = - input - [ class "jf-textfield__input" - , onFocus <| FocusFragileInput True (Just path) - , onBlur <| FocusFragileInput True Nothing - , onInput <| EditNumber - , Html.Attributes.id id - , Html.Attributes.name id - , value <| editedValue - , type_ "number" - , Html.Attributes.disabled actuallyDisabled - ] - [] - in - div - [ classList - [ ( "jf-element", True ) - , ( "jf-element--hidden", hidden ) - , ( "jf-element--invalid", hasError ) - ] - ] - [ div - [ classList - [ ( "jf-textfield", True ) - , ( "jf-textfield--outlined", model.config.textFieldStyle == Outlined ) - , ( "jf-textfield--dense", model.config.dense ) - , ( "jf-textfield--focused", isFocused ) - , ( "jf-textfield--empty", editedValue == "" ) - , ( "jf-textfield--invalid", hasError ) - , ( "jf-textfield--has-icon", True ) - , ( "jf-textfield--disabled", actuallyDisabled ) - , ( "jf-textfield--hidden", hidden ) - ] - ] - [ label [ class "jf-textfield__label" ] [ schema |> getTitle isRequired |> text ] - , numericInput - , icon |> Maybe.withDefault (text "") - ] - , div [ class "jf-helper-text" ] [ helperText ] - ] diff --git a/src/Json/Form/UiSpec.elm b/src/Json/Form/UiSpec.elm deleted file mode 100644 index c5adfe6..0000000 --- a/src/Json/Form/UiSpec.elm +++ /dev/null @@ -1,216 +0,0 @@ -module Json.Form.UiSpec exposing (MultilineTextFieldConfig, Rule(..), UiSpec, Widget(..), applyRule, blank, decoder, defaultMultilineTextFieldConfig) - -import Json.Decode as Decode exposing (Decoder, Value, bool, fail, field, int, maybe, string, succeed) -import Json.Encode as Encode -import Json.Schema exposing (validateValue) -import Json.Schema.Definitions exposing (Schema(..)) -import Json.Value as JsonValue exposing (JsonValue) - - -type alias UiSpec = - { widget : Maybe Widget - , rule : Maybe Rule - , expandable : Bool - , editAsJson : Bool - } - - -type Widget - = PasswordField - | Switch - | MultilineTextField MultilineTextFieldConfig - - -type alias MultilineTextFieldConfig = - { minRows : Int - , maxRows : Int - } - - -defaultMultilineTextFieldConfig = - { minRows = 1 - , maxRows = 5 - } - - -type Rule - = Enable String Schema - | Disable String Schema - | Show String Schema - | Hide String Schema - - -blank : UiSpec -blank = - { widget = Nothing - , rule = Nothing - , expandable = False - , editAsJson = False - } - - -decoder : Decoder UiSpec -decoder = - Decode.map4 UiSpec - (field "widget" widgetDecoder |> maybe) - (field "rule" ruleDecoder |> maybe) - (field "expandable" bool - |> maybe - |> Decode.map - (\x -> - case x of - Just bool -> - bool - - Nothing -> - False - ) - ) - (field "editAsJson" bool - |> maybe - |> Decode.map - (\x -> - case x of - Just bool -> - bool - - Nothing -> - False - ) - ) - - -widgetDecoder : Decoder Widget -widgetDecoder = - Decode.oneOf - [ string - |> Decode.andThen - (\widget -> - if widget == "password" then - succeed <| PasswordField - - else if widget == "switch" then - succeed <| Switch - - else if widget == "multiline" then - succeed <| MultilineTextField defaultMultilineTextFieldConfig - - else - fail "" - ) - , Decode.field "type" string - |> Decode.andThen - (\t -> - case t of - "multiline" -> - Decode.map2 MultilineTextFieldConfig - (Decode.field "minRows" int) - (Decode.field "maxRows" int) - |> Decode.map MultilineTextField - - "password" -> - succeed PasswordField - - "switch" -> - succeed Switch - - _ -> - fail "Unknown widget" - ) - ] - - -ruleDecoder : Decoder Rule -ruleDecoder = - Decode.map3 - (\action ref condition -> action ref condition) - (Decode.field "action" string - |> Decode.andThen - (\action -> - if action == "enable" then - succeed Enable - - else if action == "disable" then - succeed Disable - - else if action == "show" then - succeed Show - - else if action == "hide" then - succeed Hide - - else - fail <| "Expected one of 'disable', 'enabled', 'show', 'hide', but got unknown action: '" ++ action ++ "'" - ) - ) - (Decode.field "path" string) - (Decode.field "condition" Json.Schema.Definitions.decoder) - - -applyRule : Maybe JsonValue -> List String -> Maybe Rule -> ( Bool, Bool ) -applyRule value path rule = - let - resolvePath subPath = - subPath - |> String.split "/" - |> List.foldl - (\token currentPath -> - if token == "" then - [] - - else if token == "." then - currentPath - - else if token == ".." then - currentPath |> List.take ((currentPath |> List.length) - 1) - - else - currentPath ++ [ token ] - ) - path - - getDefaultValue s = - case s of - ObjectSchema os -> - os.default - |> Maybe.withDefault Encode.null - |> JsonValue.decodeValue - - _ -> - JsonValue.NullValue - - referencedValue subPath s = - value - |> Maybe.andThen (JsonValue.getIn subPath >> Result.toMaybe) - |> Maybe.withDefault (s |> getDefaultValue) - |> JsonValue.encode - - validate subPath s = - s - |> validateValue { applyDefaults = True } (referencedValue subPath s) - |> Result.map (\_ -> True) - |> Result.withDefault False - - disabled = - case rule of - Just (Disable subPath s) -> - validate (resolvePath subPath) s - - Just (Enable subPath s) -> - validate (resolvePath subPath) s |> not - - _ -> - False - - hidden = - case rule of - Just (Hide subPath s) -> - validate (resolvePath subPath) s - - Just (Show subPath s) -> - validate (resolvePath subPath) s |> not - - _ -> - False - in - ( disabled, hidden ) diff --git a/src/JsonFormUtil.elm b/src/JsonFormUtil.elm deleted file mode 100644 index a4f587f..0000000 --- a/src/JsonFormUtil.elm +++ /dev/null @@ -1,62 +0,0 @@ -module JsonFormUtil exposing (getDescription, getTextProp, getTitle, getUiSpec, jsonValueToString) - -import Json.Decode as Decode -import Json.Encode as Encode -import Json.Form.UiSpec exposing (UiSpec, decoder) -import Json.Schema.Definitions exposing (Schema(..), SubSchema, getCustomKeywordValue) -import Json.Value as JsonValue exposing (JsonValue) - - -jsonValueToString : JsonValue -> String -jsonValueToString jv = - case jv of - JsonValue.StringValue s -> - s - - JsonValue.NumericValue n -> - String.fromFloat n - - _ -> - "" - - -getTitle : Bool -> Schema -> String -getTitle isRequired schema = - getTextProp schema .title "" - |> (\title -> - if isRequired then - title ++ " *" - - else - title - ) - - -getDescription : Schema -> String -getDescription schema = - getTextProp schema .description "" - - -getTextProp : Schema -> (SubSchema -> Maybe String) -> String -> String -getTextProp schema prop def = - case schema of - ObjectSchema os -> - os - |> prop - |> Maybe.withDefault def - - _ -> - def - - -getUiSpec : Schema -> UiSpec -getUiSpec schema = - schema - |> getCustomKeywordValue "ui" - |> Maybe.andThen - (\settings -> - settings - |> Decode.decodeValue decoder - |> Result.toMaybe - ) - |> Maybe.withDefault Json.Form.UiSpec.blank diff --git a/src/JsonViewer.elm b/src/JsonViewer.elm deleted file mode 100644 index c993069..0000000 --- a/src/JsonViewer.elm +++ /dev/null @@ -1,186 +0,0 @@ -module JsonViewer exposing (JsonViewer, ExpandedNodes, Path, view, toggle) - -{-| - -@docs JsonViewer, ExpandedNodes, Path, view, toggle - --} - -import Html exposing (..) -import Html.Attributes exposing (..) -import Html.Events exposing (onClick) -import Json.Value as JsonValue exposing (JsonValue) - - -{-| Expanded nodes in JSON value, use it to define model - - type alias Model = - { expandedNodes : JsonViewer.ExpandedNodes - , {- ... the rest of applications model -} - } - --} -type alias ExpandedNodes = - List Path - - -{-| Path in JSON value --} -type alias Path = - List String - - -{-| Configuration for JsonViewer component --} -type alias JsonViewer msg = - { expandedNodes : ExpandedNodes - , onToggle : Path -> msg - } - - -{-| Toggle expandable node. A helper to use in update function: - - type Msg - = ToggleNode Path - | {- ...the rest of your application messages... -} - - update msg model = - case msg of - ToggleNode path -> - { model - | expandedNodes = model.expandedNodes - |> toggle path - } - ! [] - - {- ... -} - --} -toggle : Path -> ExpandedNodes -> ExpandedNodes -toggle path expandedNodes = - if List.member path expandedNodes then - expandedNodes |> List.filter ((/=) path) - - else - path :: expandedNodes - - -{-| Render JsonViewer - - jsonValue - |> view - { expandedNodes = expandedNodes - , onToggle = ToggleNode - } - [] - --} -view : JsonViewer msg -> Path -> JsonValue -> Html msg -view jvr path jv = - case jv of - JsonValue.BoolValue bv -> - bv - |> boolToString - |> text - |> inline JsonBoolean - - JsonValue.NumericValue nv -> - nv - |> toString - |> text - |> inline JsonNumber - - JsonValue.StringValue sv -> - sv - |> toString - |> text - |> inline JsonString - - JsonValue.NullValue -> - "null" - |> text - |> inline JsonNull - - JsonValue.ObjectValue props -> - if List.member path jvr.expandedNodes then - props - |> List.map - (\( k, v ) -> - div [ class "json-viewer json-viewer__object-property" ] - [ span [ class "json-viewer json-viewer__key" ] [ text k ] - , v |> view jvr (path ++ [ k ]) - ] - ) - |> div [ class "json-viewer json-viewer--expandable" ] - - else - props - |> List.take 5 - |> List.map (\( k, _ ) -> k) - |> String.join ", " - |> (\s -> - span - [ class "json-viewer json-viewer--collapsed" - , onClick <| jvr.onToggle path - ] - [ "{ " ++ s ++ "... }" |> text ] - ) - - JsonValue.ArrayValue items -> - if List.member path jvr.expandedNodes then - items - |> List.indexedMap - (\index v -> - div [ class "json-viewer json-viewer__array-item" ] - [ span [ class "json-viewer json-viewer__key" ] [ toString index |> text ] - , v |> view jvr (path ++ [ toString index ]) - ] - ) - |> div [ class "json-viewer json-viewer--expandable" ] - - else - span - [ class "json-viewer json-viewer--collapsed" - , onClick <| jvr.onToggle path - ] - [ "[ " ++ (List.length items |> toString) ++ " items... ]" |> text - ] - - -type JsonType - = JsonBoolean - | JsonString - | JsonNumber - | JsonNull - - -inline : JsonType -> Html msg -> Html msg -inline jsonType el = - span - [ class <| "json-viewer json-viewer--" ++ jsonTypeToString jsonType ] - [ el ] - - -jsonTypeToString : JsonType -> String -jsonTypeToString t = - case t of - JsonBoolean -> - "bool" - - JsonString -> - "string" - - JsonNumber -> - "number" - - JsonNull -> - "null" - - -boolToString : Bool -> String -boolToString bv = - if bv then - "true" - - else - "false" diff --git a/src/LegacyFormComponent.elm b/src/LegacyFormComponent.elm deleted file mode 100644 index 7541c70..0000000 --- a/src/LegacyFormComponent.elm +++ /dev/null @@ -1,1359 +0,0 @@ -module StatefulComponent.Form exposing - ( ExternalMsg(..) - , FormOptions - , Model - , Msg - , defaultOptions - , init - , update - , updateSchema - , updateValue - , view - ) - -import Dict exposing (Dict) -import Dom -import Element exposing (Element, column, el, empty, paragraph, row, text) -import Element.Attributes as Attributes - exposing - ( center - , class - , fill - , height - , inlineStyle - , minWidth - , padding - , paddingBottom - , paddingLeft - , paddingRight - , paddingTop - , percent - , px - , spacing - , tabindex - , vary - , verticalCenter - , width - ) -import Element.Events as Events exposing (onBlur, onClick, onFocus, onInput) -import ErrorMessages exposing (stringifyError) -import FeatherIcons as Icons -import Json.Decode as Decode exposing (Decoder, decodeValue) -import Json.Encode as Encode exposing (Value) -import Json.Schema -import Json.Schema.Definitions as Schema - exposing - ( Items(..) - , Schema(..) - , Schemata(..) - , SingleType(..) - , Type(..) - , blankSchema - , blankSubSchema - ) -import Json.Schema.Validation exposing (Error, ValidationError) -import JsonValue exposing (JsonValue(..), getIn) -import Ref -import Styles - exposing - ( Styles(..) - , Variations(..) - , stylesheet - ) -import Task - - -type alias View = - Element Styles Variations Msg - - -type alias Path = - List String - - -type Msg - = NoMsg - | ValueInput Path String - | StringInput Path String - | NumericInput Path String - | BoolInput Path Bool - | DeletePath Path - | AddItem Path - | AddProperty Path - | SetEditPropertyName String Path Int - | EditPropertyName String - | StopEditingPropertyName - | ExpandNode Path - | CollapseNode Path - | OpenMenu Path - | CloseMenu - | FocusInput Path Schema - | BlurInput Path - - -type ExternalMsg - = NoOp - | UpdateValue Value - | SaveExpandedNodes (List Path) - - -type alias Model = - { value : JsonValue - , schema : Schema - , validationErrors : Dict Path (List String) - , options : FormOptions - , menu : Maybe Path - , focusInput : Path - , editingNow : String - , editingSchema : Maybe Schema - , edited : Dict Path Bool - , editPropPath : Path - , editPropIndex : Maybe Int - , editPropName : String - } - - -type alias FormOptions = - { schema : Schema - , expandedNodes : List Path - , applyDefaults : Bool - , showEmptyOptionalProps : Bool - , showInitialValidationErrors : Bool - , useTitleAsLabel : Bool - , allowExpandingNodes : - Bool - - --, monospaceTitle : Bool - } - - -defaultOptions : FormOptions -defaultOptions = - { schema = blankSchema - , expandedNodes = [ [] ] - , applyDefaults = False - , showEmptyOptionalProps = False - , showInitialValidationErrors = False - , useTitleAsLabel = False - , allowExpandingNodes = - True - - --, monospaceTitle = AlwaysMonospace | MonospaceWhenKeyUsedAsLabel | NeverMonospace - } - - -dictFromListErrors : List Error -> Dict Path (List String) -dictFromListErrors list = - list - |> List.foldl - (\error dict -> - dict - |> Dict.update error.jsonPointer.path - (\listDetails -> - (case listDetails of - Just l -> - l ++ [ error.details |> stringifyError ] - - Nothing -> - [ error.details |> stringifyError ] - ) - |> Just - ) - ) - Dict.empty - - -init : FormOptions -> Value -> Model -init formOptions v = - let - validationResult = - Json.Schema.validateValue { applyDefaults = formOptions.applyDefaults } v formOptions.schema - - ( value, validationErrors ) = - case validationResult of - Ok validValue -> - ( validValue, Dict.empty ) - - Err list -> - ( v, list |> dictFromListErrors ) - - blankModel = - { schema = formOptions.schema - , value = - value - |> decodeValue JsonValue.decoder - |> Result.withDefault JsonValue.NullValue - , validationErrors = validationErrors - , options = formOptions - , menu = Nothing - , focusInput = [] - , editingNow = "" - , editingSchema = Nothing - , edited = Dict.empty - , editPropPath = [] - , editPropIndex = Nothing - , editPropName = "" - } - in - blankModel - - -updateValue : Value -> Model -> Model -updateValue v m = - { m - | value = - v - |> decodeValue JsonValue.decoder - |> Result.withDefault JsonValue.NullValue - } - - -updateSchema : Schema -> Model -> Model -updateSchema s m = - { m | schema = s } - - -update : Msg -> Model -> ( ( Model, Cmd Msg ), ExternalMsg ) -update msg model = - case msg of - NoMsg -> - ( model - , Cmd.none - ) - => NoOp - - ValueInput path str -> - let - updatedValue = - str - |> Decode.decodeString JsonValue.decoder - |> Result.andThen - (\v -> - model.value - |> JsonValue.setIn path v - -- TODO display setIn error - |> Result.mapError (Debug.log "ValueInput.setIn") - ) - -- TODO display parse error - |> Result.mapError (Debug.log "ValueInput.parse") - |> Result.withDefault model.value - - encodedValue = - updatedValue |> JsonValue.encode - - validationResult = - Json.Schema.validateValue { applyDefaults = model.options.applyDefaults } encodedValue model.schema - - ( value, validationErrors ) = - case validationResult of - Ok validValue -> - ( validValue |> decodeValue JsonValue.decoder |> Result.withDefault NullValue, Dict.empty ) - - Err list -> - ( updatedValue, list |> dictFromListErrors ) - in - ( { model - | value = updatedValue - , editingNow = str - , validationErrors = - validationErrors - - --, edited = model.edited |> Dict.insert path True - } - , Cmd.none - ) - => UpdateValue (value |> JsonValue.encode) - - StringInput path str -> - let - updatedValue = - model.value - |> JsonValue.setIn path (JsonValue.StringValue str) - |> Result.mapError (Debug.log "StringInput") - |> Result.withDefault model.value - - encodedValue = - updatedValue |> JsonValue.encode - - validationResult = - Json.Schema.validateValue { applyDefaults = model.options.applyDefaults } encodedValue model.schema - - ( value, validationErrors ) = - case validationResult of - Ok validValue -> - ( validValue |> decodeValue JsonValue.decoder |> Result.withDefault NullValue, Dict.empty ) - - Err list -> - ( updatedValue, list |> dictFromListErrors ) - in - ( { model - | value = updatedValue - , editingNow = str - , validationErrors = - validationErrors - - --, edited = model.edited |> Dict.insert path True - } - , Cmd.none - ) - => UpdateValue (value |> JsonValue.encode) - - NumericInput path str -> - let - updatedValue = - str - |> String.toFloat - |> Result.andThen (\v -> JsonValue.setIn path (NumericValue v) model.value) - |> Result.mapError (Debug.log "NumericInput") - |> Result.withDefault model.value - - encodedValue = - updatedValue |> JsonValue.encode - - validationResult = - Json.Schema.validateValue { applyDefaults = model.options.applyDefaults } encodedValue model.schema - - ( value, validationErrors ) = - case validationResult of - Ok validValue -> - ( validValue |> decodeValue JsonValue.decoder |> Result.withDefault NullValue, Dict.empty ) - - Err list -> - ( updatedValue, list |> dictFromListErrors ) - in - ( { model - | value = value - , editingNow = str - , validationErrors = - validationErrors - - --, edited = model.edited |> Dict.insert path True - } - , Cmd.none - ) - => UpdateValue (value |> JsonValue.encode) - - BoolInput path bool -> - let - updatedValue = - model.value - |> JsonValue.setIn path (BoolValue bool) - |> Result.mapError (Debug.log "BoolInput") - |> Result.withDefault model.value - in - ( { model | value = updatedValue } - , Cmd.none - ) - => UpdateValue (updatedValue |> JsonValue.encode) - - DeletePath path -> - let - value = - model.value - |> JsonValue.deleteIn path - |> Result.mapError (Debug.log "DeletePath") - |> Result.withDefault model.value - in - ( { model | value = value } - , Cmd.none - ) - => UpdateValue (value |> JsonValue.encode) - - AddItem path -> - let - nextIndex = - model.value - |> JsonValue.getIn path - |> Result.withDefault (ArrayValue []) - |> (\x -> - case x of - ArrayValue l -> - List.length l |> toString - - _ -> - "0" - ) - - itemPath = - path ++ [ nextIndex ] - - value = - model.value - |> JsonValue.setIn itemPath NullValue - |> Result.mapError (Debug.log "AddItem") - |> Result.withDefault model.value - in - ( { model | value = value } - , makeId itemPath |> Dom.focus |> Task.attempt (\_ -> NoMsg) - ) - => UpdateValue (value |> JsonValue.encode) - - AddProperty path -> - let - nextIndex = - model.value - |> JsonValue.getIn path - |> Result.withDefault (ArrayValue []) - |> (\x -> - case x of - ObjectValue l -> - List.length l - - _ -> - 0 - ) - - propPath = - path ++ [ "" ] - - value = - model.value - |> JsonValue.setIn propPath NullValue - |> Result.mapError (Debug.log "AddItem") - |> Result.withDefault model.value - - options = - model.options - - en = - path :: options.expandedNodes - in - ( { model - | value = value - , editPropPath = path - , editPropIndex = Just nextIndex |> Debug.log "index" - , editPropName = "" - , options = { options | expandedNodes = en } - , focusInput = [] - } - , path - |> String.join "/" - |> (\x -> x ++ ":propname") - |> Debug.log "will focus" - |> Dom.focus - |> Task.attempt - (\x -> - let - a = - Debug.log "focus" x - in - NoMsg - ) - ) - => SaveExpandedNodes en - - SetEditPropertyName propName path index -> - ( { model - | editPropPath = path - , editPropIndex = Just index - , editPropName = propName - , focusInput = [] - } - , path - |> String.join "/" - |> (\x -> x ++ ":propname") - |> Dom.focus - |> Task.attempt (\x -> NoMsg) - ) - => NoOp - - EditPropertyName str -> - ( { model | editPropName = str } - , Cmd.none - ) - => NoOp - - StopEditingPropertyName -> - let - updatedValue = - model.value - |> JsonValue.setPropertyName - ( model.editPropPath - , model.editPropIndex |> Maybe.withDefault 0 - ) - model.editPropName - |> Result.withDefault model.value - in - ( { model - | editPropPath = [] - , editPropIndex = Nothing - , value = updatedValue - } - , Cmd.none - ) - => UpdateValue (updatedValue |> JsonValue.encode) - - ExpandNode path -> - let - options = - model.options - - en = - path :: options.expandedNodes - in - ( { model | options = { options | expandedNodes = en } } - , Cmd.none - ) - => SaveExpandedNodes en - - CollapseNode path -> - let - options = - model.options - - en = - options.expandedNodes - |> List.filter ((/=) path) - in - ( { model | options = { options | expandedNodes = en } } - , Cmd.none - ) - => SaveExpandedNodes en - - OpenMenu path -> - ( { model | menu = Just path } - , Cmd.none - ) - => NoOp - - CloseMenu -> - ( { model | menu = Nothing } - , Cmd.none - ) - => NoOp - - FocusInput path schema -> - ( { model - | focusInput = path - , editingSchema = Just schema - , editingNow = - case model.value |> getIn path of - Ok (StringValue s) -> - s - - Ok (NumericValue s) -> - s |> toString - - _ -> - "" - } - , Cmd.none - ) - => NoOp - - BlurInput path -> - if path == model.focusInput then - ( { model - | focusInput = [] - , editingSchema = Nothing - , edited = model.edited |> Dict.insert path True - } - , Cmd.none - ) - => NoOp - - else - ( model - , Cmd.none - ) - => NoOp - - -view : Model -> View -view model = - el None [ inlineStyle [ ( "font-family", "Menlo, monospace" ), ( "font-size", "12px" ), ( "line-height", "1.4" ) ], width <| percent 90 ] <| - viewValue model model.schema model.value [] - - -delete : Path -> View -delete path = - Icons.xCircle - |> Icons.withStrokeWidth 2 - |> Icons.withSize 18 - |> Icons.toHtml [] - |> Element.html - |> el None - [ onClick <| DeletePath path - , width <| px 18 - , height <| px 18 - , class "action" - , inlineStyle [ ( "cursor", "pointer" ) ] - ] - - -isBlankSchema : Schema -> Bool -isBlankSchema = - Schema.encode >> Encode.encode 0 >> (==) "{}" - - -pickOneOf : List Schema -> Value -> Schema -pickOneOf listSchemas value = - let - defaultResult = - listSchemas - |> List.head - |> Maybe.withDefault blankSchema - - isValid s = - Json.Schema.validateValue { applyDefaults = True } value s - |> Result.toMaybe - |> (/=) Nothing - in - listSchemas - |> List.filter isValid - |> List.head - |> Maybe.withDefault defaultResult - - -resolve : Schema -> Schema -> Schema -resolve rootSchema rawSubSchema = - let - ( _, resolvedSchema ) = - case rawSubSchema of - ObjectSchema os -> - os.ref - |> Maybe.andThen (Ref.resolveReference "" Ref.defaultPool rootSchema) - |> Maybe.withDefault ( "", rawSubSchema ) - - _ -> - ( "", rawSubSchema ) - in - resolvedSchema - - -viewProperty : Model -> Bool -> Maybe Int -> Path -> String -> Schema -> JsonValue -> View -viewProperty model deletionAllowed indexInObject path key rawSubSchema value = - let - deeperLevelPath = - path ++ [ key ] - - subSchema = - case resolve model.schema rawSubSchema of - ObjectSchema os -> - case os.anyOf of - Just schemas -> - value - |> JsonValue.encode - |> pickOneOf schemas - |> resolve model.schema - - Nothing -> - ObjectSchema os - - x -> - x - - ( objectSchema, isArray, isDictionary ) = - case subSchema of - ObjectSchema os -> - ( Just os - , os.items /= NoItems - , case os.additionalProperties of - Just (BooleanSchema False) -> - False - - _ -> - case value of - ObjectValue _ -> - True - - _ -> - False - ) - - _ -> - ( Nothing, False, False ) - - isBlank = - isBlankSchema subSchema - - isExpandable = - if model.options.allowExpandingNodes then - case value of - JsonValue.ObjectValue _ -> - isBlank |> not - - JsonValue.ArrayValue _ -> - isBlank |> not - - {- - isBlank - |> not - |> Debug.log (toString deeperLevelPath) - -} - _ -> - False - - else - False - - isExpanded = - if model.options.allowExpandingNodes then - case value of - JsonValue.ObjectValue _ -> - isBlank - || List.member - deeperLevelPath - model.options.expandedNodes - - JsonValue.ArrayValue _ -> - isBlank - || List.member - deeperLevelPath - model.options.expandedNodes - - --List.member deeperLevelPath model.expandedNodes - _ -> - True - - else - True - - propertyNamesAutocomplete = - case subSchema of - ObjectSchema os -> - case os.properties of - Just (Schemata list) -> - let - existingProps = - case value of - ObjectValue x -> - x |> List.map (\( name, _ ) -> name) - - _ -> - [] - in - list - |> List.filterMap - (\( propName, _ ) -> - if List.member propName existingProps then - Nothing - - else - text propName - |> Element.node "option" - |> Just - ) - |> row None - [ inlineStyle [ ( "display", "none" ) ] - , Attributes.id - (deeperLevelPath - |> String.join "/" - |> (\x -> x ++ ":props") - ) - ] - |> Element.node "datalist" - - Nothing -> - empty - - _ -> - empty - in - column None - [ paddingTop 0 ] - [ row None - [ verticalCenter, spacing 5, class "key-container" ] - [ if isExpandable then - (if isExpanded then - Icons.chevronDown - - else - Icons.chevronRight - ) - |> Icons.withSize 18 - |> Icons.withStrokeWidth 2 - |> Icons.toHtml [] - |> Element.html - |> el None - [ width <| px 18 - , height <| px 18 - , inlineStyle [ ( "cursor", "pointer" ) ] - , if isExpanded then - onClick <| CollapseNode deeperLevelPath - - else - onClick <| ExpandNode deeperLevelPath - ] - - else - Icons.chevronDown - |> Icons.withSize 18 - |> Icons.withStrokeWidth 2 - |> Icons.toHtml [] - |> Element.html - |> el None - [ width <| px 18 - , height <| px 18 - , inlineStyle [ ( "visibility", "hidden" ) ] - ] - , if indexInObject /= Nothing && indexInObject == model.editPropIndex && path == model.editPropPath then - row InputRow - [ vary Active True ] - [ model.editPropName - |> Element.inputText TextInput - [ onInput EditPropertyName - , onBlur <| StopEditingPropertyName - , path - |> String.join "/" - |> (\x -> x ++ ":propname") - |> Attributes.id - , path - |> String.join "/" - |> (\x -> x ++ ":props") - |> Attributes.list - ] - ] - - else - (if model.options.useTitleAsLabel then - objectSchema - |> Maybe.map - (\os -> - case os.type_ of - SingleType StringType -> - empty - - SingleType IntegerType -> - empty - - SingleType NumberType -> - empty - - _ -> - key |> text - ) - |> Maybe.withDefault (key |> text) - - else - key |> text - ) - |> el PropertyName - [ vary Active <| deeperLevelPath == model.focusInput - ] - - {- - , objectSchema - |> Maybe.andThen .title - |> Maybe.withDefault key - |> text - -} - , Icons.moreVertical - |> Icons.withSize 18 - |> Icons.withStrokeWidth 2 - |> Icons.toHtml [] - |> Element.html - |> el None - [ class "action" - , inlineStyle [ ( "cursor", "pointer" ), ( "outline", "none" ) ] - , width <| px 18 - , height <| px 18 - , tabindex 2 - , onFocus <| OpenMenu deeperLevelPath - , onBlur <| CloseMenu - ] - |> Element.below - [ if Just deeperLevelPath == model.menu then - [ text "Edit as JSON" |> el MenuItem [] - , case indexInObject of - Just index -> - text "Edit property name" - |> el MenuItem - [ onClick <| SetEditPropertyName key path index - ] - - _ -> - empty - , if isArray then - text "Add item" |> el MenuItem [ onClick <| AddItem deeperLevelPath ] - - else if isDictionary then - text "Add property" |> el MenuItem [ onClick <| AddProperty deeperLevelPath ] - - else - empty - ] - |> column None - [ inlineStyle - [ ( "z-index", "2" ) - , ( "background", "white" ) - , ( "min-width", "200px" ) - , ( "border-radius", "2px" ) - , ( "box-shadow", "0 2px 2px 0 rgba(0,0,0,.14), 0 3px 1px -2px rgba(0,0,0,.2), 0 1px 5px 0 rgba(0,0,0,.12)" ) - ] - , padding 2 - ] - - else - empty - ] - , if deletionAllowed then - delete deeperLevelPath - - else - empty - ] - - --, displayDescription subSchema - , if isExpanded then - row None - [] - [ viewValue model subSchema value deeperLevelPath - , propertyNamesAutocomplete - ] - - else - empty - ] - - -viewObject : Model -> Schema -> List ( String, JsonValue ) -> Bool -> Path -> List View -viewObject model schema props isArray path = - let - isOptional key required = - case required of - Just list -> - List.member key list |> not - - Nothing -> - True - - shouldRenderDefault required propName = - if model.options.showEmptyOptionalProps then - True - - else - case required of - Just names -> - List.member propName names - - Nothing -> - False - - iterateOverSchemata propsDict required (Schemata schemata) = - schemata - |> List.map - (\( propName, subSchema ) -> - case propsDict |> Dict.get propName of - Just value -> - viewProperty model (isOptional propName required && not model.options.showEmptyOptionalProps) Nothing path propName subSchema value - - Nothing -> - if shouldRenderDefault required propName then - viewProperty model (isOptional propName required && not model.options.showEmptyOptionalProps) Nothing path propName subSchema JsonValue.NullValue - - else - empty - ) - - iterateOverProps isObject list schema = - list - |> List.indexedMap - (\index prop -> - case prop of - Just ( key, value ) -> - viewProperty model - True - (if isObject then - Just index - - else - Nothing - ) - path - key - schema - value - - Nothing -> - empty - ) - in - case schema of - BooleanSchema True -> - iterateOverProps True (props |> List.map Just) blankSchema - - BooleanSchema False -> - iterateOverProps True (props |> List.map Just) disallowEverythingSchema - - ObjectSchema os -> - let - knownProperties = - case os.properties of - Just (Schemata x) -> - x - |> List.map (\( key, _ ) -> key) - - _ -> - [] - - justProps = - props - |> List.map Just - - extraProps = - props - |> List.map - (\( name, v ) -> - if List.member name knownProperties then - Nothing - - else - Just ( name, v ) - ) - in - if isBlankSchema schema then - [ ObjectValue props - |> JsonValue.encode - |> Encode.encode 4 - |> text - |> el SourceCode [ paddingLeft 10 ] - ] - - else if isArray then - case os.items of - NoItems -> - iterateOverProps False justProps blankSchema - - ItemDefinition s -> - iterateOverProps False justProps s - - -- TODO: hande arrayOfItems - _ -> - iterateOverProps False justProps disallowEverythingSchema - - else - [ os.properties - |> Maybe.map (iterateOverSchemata (Dict.fromList props) os.required) - |> Maybe.withDefault [] - , case os.additionalProperties of - Just (ObjectSchema os) -> - iterateOverProps True extraProps (ObjectSchema os) - - Just (BooleanSchema False) -> - iterateOverProps True extraProps disallowEverythingSchema - - _ -> - iterateOverProps True extraProps blankSchema - ] - |> List.concat - - -disallowEverythingSchema : Schema -disallowEverythingSchema = - ObjectSchema { blankSubSchema | not = Just blankSchema } - - -displayDescription : Schema -> View -displayDescription schema = - case schema of - ObjectSchema os -> - os.description - |> Maybe.map text - |> Maybe.map (el None []) - |> Maybe.withDefault empty - - _ -> - empty - - -makeId : Path -> String -makeId path = - String.join "/" path ++ ":value" - - -viewNumber : Model -> Schema -> Maybe Float -> Path -> View -viewNumber model schema numValue path = - let - isFocused = - path == model.focusInput - in - row - InputRow - [ vary Active isFocused ] - [ (if isFocused then - model.editingNow - - else - numValue |> Maybe.map toString |> Maybe.withDefault "" - ) - |> Element.inputText TextInput - [ onInput <| NumericInput path - , onFocus <| FocusInput path schema - , onBlur <| BlurInput path - , Attributes.type_ "number" - , width <| fill 1 - , Attributes.id <| makeId path - ] - ] - - -viewBool : Model -> Schema -> Bool -> Path -> View -viewBool model schema boolValue path = - let - ( icon, label, color ) = - if boolValue then - ( Icons.toggleRight, "true", "darkgreen" ) - - else - ( Icons.toggleLeft, "false", "darkred" ) - in - row None - [ onClick <| BoolInput path <| not boolValue - , verticalCenter - , spacing 5 - , inlineStyle [ ( "cursor", "pointer" ), ( "color", color ) ] - ] - [ icon - |> Icons.withSize 18 - |> Icons.toHtml [] - |> Element.html - |> el None - [ width <| px 18, height <| px 18 ] - , label |> text - ] - - -labeledInput : Model -> (Path -> String -> Msg) -> Schema -> String -> Path -> View -labeledInput model inputHandler schema stringValue path = - let - listId = - String.join "/" path ++ ":list" - - isFocused = - path == model.focusInput - - objectSchema = - case schema of - ObjectSchema os -> - Just os - - _ -> - Nothing - - autocompleteOptions = - objectSchema - |> Maybe.andThen .enum - |> Maybe.map - (\enum -> - enum - |> List.map - (\v -> - let - strValue = - v |> decodeValue Decode.string |> Result.withDefault "" - in - Element.node "option" <| text strValue - ) - |> row None [ inlineStyle [ ( "display", "none" ) ], Attributes.id listId ] - |> Element.node "datalist" - ) - |> Maybe.withDefault empty - - inputId = - makeId path - - hasValue = - (if isFocused then - model.editingNow - - else - stringValue - ) - /= "" - - hasError = - model.validationErrors - |> Dict.get path - |> Maybe.withDefault [] - |> List.isEmpty - |> not - - highlightAsError = - hasError && (model.options.showInitialValidationErrors || (model.edited |> Dict.member path)) - in - if isBlankSchema schema then - row - InputRow - [ vary Active isFocused ] - [ stringValue - |> toString - |> Element.textArea TextInput - [ onInput <| ValueInput path - , onFocus <| FocusInput path schema - , onBlur <| BlurInput path - , width <| fill 1 - , Attributes.id <| makeId path - ] - ] - - else - column - InputRow - [ vary Active isFocused - , paddingLeft 16 - , paddingRight 16 - , inlineStyle [ ( "background", "transparent" ), ( "height", "56px" ), ( "position", "relative" ) ] - ] - [ (if isFocused then - model.editingNow - - else - stringValue - ) - |> Element.inputText TextInput - [ onFocus <| FocusInput path schema - , onBlur <| BlurInput path - , onInput <| inputHandler path - , Attributes.list listId - , Attributes.id inputId - , Attributes.autocomplete False - , inlineStyle - [ ( "position", "absolute" ) - , ( "bottom", "8px" ) - , ( "left", "16px" ) - , ( "right", "16px" ) - , ( "width", "calc(100% - 32px)" ) - , ( "top", "auto" ) - ] - ] - , autocompleteOptions - , (if model.options.useTitleAsLabel then - objectSchema - |> Maybe.andThen .title - |> (\x -> - case x of - Just t -> - Just t - - Nothing -> - path |> List.reverse |> List.head - ) - |> Maybe.map text - |> Maybe.withDefault empty - - else - empty - ) - |> el None - [ inlineStyle - [ ( "transform-origin", "left top" ) - , if isFocused || hasValue then - ( "transform", "translateY(-100%) scale(0.75, 0.75)" ) - - else - ( "cursor", "text" ) - , ( "transform-origin", "left top" ) - , ( "left", "16px" ) - , ( "position", "absolute" ) - , ( "bottom", "8px" ) - , ( "top", "auto" ) - , ( "font-size", "14px" ) - , ( "transition", "transform 180ms cubic-bezier(0.4, 0, 0.2, 1)" ) - , ( "color" - , if highlightAsError then - "red" - - else - "black" - ) - ] - , Attributes.for inputId - ] - |> Element.node "label" - ] - - -viewValue : Model -> Schema -> JsonValue -> Path -> View -viewValue model schema value path = - let - isFocused = - model.focusInput == path - in - (case value of - JsonValue.ObjectValue ov -> - viewObject model schema ov False path - - JsonValue.ArrayValue av -> - viewObject model schema (av |> List.indexedMap (\index val -> ( toString index, val ))) True path - - JsonValue.StringValue sv -> - [ labeledInput model StringInput schema sv path ] - - JsonValue.NumericValue nv -> - [ labeledInput model NumericInput schema (toString nv) path ] - - JsonValue.BoolValue bv -> - [ viewBool model schema bv path ] - - JsonValue.NullValue -> - case schema of - ObjectSchema os -> - case os.type_ of - SingleType StringType -> - [ labeledInput model StringInput schema "" path ] - - SingleType IntegerType -> - [ viewNumber model schema Nothing path ] - - _ -> - [ row InputRow - [ vary Active <| isFocused ] - [ "null" - |> Element.textArea TextInput - [ onInput <| ValueInput path - , width <| fill 1 - , onFocus <| FocusInput path schema - , onBlur <| BlurInput path - ] - ] - ] - - _ -> - [ row InputRow - [ vary Active <| model.focusInput == path ] - [ "null" - |> Element.textArea TextInput - [ onInput <| ValueInput path - , width <| fill 1 - , onFocus <| FocusInput path schema - , onBlur <| BlurInput path - ] - ] - ] - ) - |> column None [ spacing 0, width <| fill 1 ] - |> Element.below - [ case model.validationErrors |> Dict.get path of - Just errors -> - if model.options.showInitialValidationErrors || (model.edited |> Dict.member path) then - errors - |> List.filter ((/=) "") - |> List.map ((++) "Error: " >> text >> el InlineError []) - |> column None [ paddingLeft 16, paddingTop 8 ] - - else - empty - - Nothing -> - case schema of - ObjectSchema os -> - case os.description of - Just d -> - if isFocused then - text d |> el None [ paddingLeft 16, paddingTop 8, inlineStyle [ ( "font-size", "10px" ) ] ] - - else - empty - - Nothing -> - empty - - _ -> - empty - ] - - -(=>) : a -> b -> ( a, b ) -(=>) a b = - ( a, b ) diff --git a/src/Main.elm b/src/Main.elm deleted file mode 100644 index 5fe7268..0000000 --- a/src/Main.elm +++ /dev/null @@ -1,17 +0,0 @@ -module Main exposing (main) - -import Browser -import Demo exposing (Msg(..), init, update, view) -import Html -import Route - - -main = - Browser.application - { view = view - , init = init - , update = update - , subscriptions = \_ -> Sub.none - , onUrlRequest = UrlRequested - , onUrlChange = Route.fromLocation >> SetRoute - } diff --git a/src/Route.elm b/src/Route.elm deleted file mode 100644 index 02199ba..0000000 --- a/src/Route.elm +++ /dev/null @@ -1,55 +0,0 @@ -module Route exposing (Route(..), fromLocation, href) - -import Html exposing (Attribute) -import Html.Attributes as Attr -import Showcase exposing (Showcase) -import Url exposing (Url) -import Url.Parser exposing ((), Parser, custom, oneOf, parse, s, string) - - - --- ROUTING -- - - -type Route - = ShowcasePage Showcase - - -route : Parser (Route -> a) a -route = - oneOf - [ Url.Parser.map ShowcasePage <| s "json-form" s "showcase" showcaseParser - ] - - -showcaseParser = - custom "SHOWCASE" Showcase.getShowcaseById - - - --- INTERNAL -- - - -routeToString : Route -> String -routeToString page = - let - pieces = - case page of - ShowcasePage sc -> - [ "showcase", sc |> Showcase.getShowcaseId ] - in - "/json-form/" ++ String.join "/" pieces - - - --- PUBLIC HELPERS -- - - -href : Route -> Attribute msg -href = - routeToString >> Attr.href - - -fromLocation : Url -> Maybe Route -fromLocation url = - parse route url diff --git a/src/Showcase.elm b/src/Showcase.elm deleted file mode 100644 index 8e6cc05..0000000 --- a/src/Showcase.elm +++ /dev/null @@ -1,801 +0,0 @@ -module Showcase exposing (Example, Showcase(..), getShowcase, getShowcaseById, getShowcaseId, getShowcaseTitle, index) - -import Json.Encode as Encode exposing (int, list, object, string) -import Json.Schema -import Json.Schema.Builder exposing (..) -import Json.Schema.Definitions exposing (Schema(..), SingleType(..), Type(..), blankSchema, blankSubSchema) - - -type Showcase - = InputTypes - | Rules - | Validation - | FormLayout - - -type alias Example = - { schema : Schema - , title : String - } - - -index : List Showcase -index = - [ InputTypes - , Rules - , Validation - , FormLayout - ] - - -getShowcaseById : String -> Maybe Showcase -getShowcaseById id = - case id of - "types" -> - Just InputTypes - - "rules" -> - Just Rules - - "validation" -> - Just Validation - - "form" -> - Just FormLayout - - _ -> - Nothing - - -getShowcaseId : Showcase -> String -getShowcaseId s = - case s of - InputTypes -> - "types" - - Rules -> - "rules" - - Validation -> - "validation" - - FormLayout -> - "form" - - -getShowcaseTitle : Showcase -> String -getShowcaseTitle ds = - case ds of - InputTypes -> - "Types" - - Rules -> - "Rules" - - Validation -> - "Validation" - - FormLayout -> - "Form Layout" - - -makeExample : String -> SchemaBuilder -> Example -makeExample title sb = - { schema = - sb - |> toSchema - |> Result.withDefault blankSchema - , title = title - } - - -getShowcase : Showcase -> List Example -getShowcase ds = - case ds of - InputTypes -> - [ buildSchema - |> withType "string" - |> withTitle "Text field" - |> withDescription "Single line text field" - |> makeExample "Single line text field" - , buildSchema - |> withType "string" - |> withTitle "Multiline" - |> withDescription "Multi-line text field" - |> withCustomKeyword "ui" (Encode.object [ ( "widget", string "multiline" ) ]) - |> makeExample "Multiline text field" - , buildSchema - |> withType "string" - |> withTitle "Multiline" - |> withDescription "Configurable multi-line text field" - |> withCustomKeyword "ui" (Encode.object [ ( "widget", object [ ( "type", string "multiline" ), ( "minRows", int 5 ), ( "maxRows", int 10 ) ] ) ]) - |> makeExample "Configured multiline text field" - , buildSchema - |> withType "string" - |> withTitle "Password" - |> withDescription "Must contain enough various symbols" - |> withCustomKeyword "ui" (Encode.object [ ( "widget", string "password" ) ]) - |> makeExample "Password field" - , buildSchema - |> withType "boolean" - |> withTitle "Boolean as checkbox" - |> withDescription "Booleans default to checkboxes" - |> makeExample "Checkbox" - , buildSchema - |> withType "boolean" - |> withTitle "Boolean as switch" - |> withCustomKeyword "ui" (Encode.object [ ( "widget", string "switch" ) ]) - |> withDescription "Booleans can be configured to look like switch" - |> makeExample "Switch" - ] - - Rules -> - let - withRule name = - withCustomKeyword "ui" - (object - [ ( "rule" - , object - [ ( "action", string name ) - , ( "path", string "/enabled" ) - , ( "condition" - , object - [ ( "const", Encode.bool False ) - , ( "default", Encode.bool False ) - ] - ) - ] - ) - ] - ) - - withRuleAndWidget name widget = - withCustomKeyword "ui" - (object - [ ( "rule" - , object - [ ( "action", string name ) - , ( "path", string "/enabled" ) - , ( "condition" - , object - [ ( "const", Encode.bool False ) - , ( "default", Encode.bool False ) - ] - ) - ] - ) - , ( "widget", string widget ) - ] - ) - - enableToggle = - ( "enabled" - , buildSchema - |> withType "boolean" - |> withDefault (Encode.bool False) - |> withTitle "Enable" - |> withCustomKeyword "ui" (Encode.object [ ( "widget", string "switch" ) ]) - ) - in - [ buildSchema - |> withType "object" - |> withProperties - [ enableToggle - , ( "disableDemo" - , buildSchema - |> withTitle "Rule: disable text field" - |> withType "string" - |> withDescription "Will be enabled when switch turned on" - |> withRule "disable" - ) - ] - |> makeExample "Disable input" - , buildSchema - |> withType "object" - |> withProperties - [ ( "enabled" - , buildSchema - |> withType "boolean" - |> withTitle "Show" - |> withDefault (Encode.bool False) - |> withCustomKeyword "ui" (Encode.object [ ( "widget", string "switch" ) ]) - ) - , ( "hideDemo" - , buildSchema - |> withTitle "Rule: hide text field" - |> withType "string" - |> withDescription "Will be shown when switch turned on" - |> withRule "hide" - ) - ] - |> makeExample "Hide input" - , buildSchema - |> withType "object" - |> withProperties - [ enableToggle - , ( "disableCheckboxDemo" - , buildSchema - |> withTitle "Rule: disable checkbox" - |> withType "boolean" - |> withDescription "Will be enabled when switch turned on" - |> withRuleAndWidget "disable" "checkbox" - ) - , ( "disableSwitchDemo" - , buildSchema - |> withTitle "Rule: disable switch" - |> withType "boolean" - |> withDescription "Will be enabled when switch turned on" - |> withRuleAndWidget "disable" "switch" - ) - ] - |> makeExample "Disable selection controls" - , buildSchema - |> withType "object" - |> withProperties - [ enableToggle - , ( "form" - , buildSchema - |> withType "object" - |> withProperties - [ ( "nestedForm" - , buildSchema - |> withType "object" - |> withProperties - [ ( "disableDemo" - , buildSchema - |> withTitle "Rule: disable nested form" - |> withType "string" - |> withDescription "Will be enabled when switch turned on" - ) - ] - |> withRule "disable" - ) - ] - ) - ] - |> makeExample "Disable nested form" - , buildSchema - |> withType "array" - |> withItem - (buildSchema - |> withType "object" - |> withProperties - [ ( "enabled" - , buildSchema - |> withType "boolean" - -- |> withDefault (Encode.bool True) - |> withTitle "enable" - |> withDescription "Enable editing" - |> withCustomKeyword "ui" (Encode.object [ ( "widget", string "switch" ) ]) - ) - , ( "hideDemo" - , buildSchema - |> withTitle "Rule: disable based on local condition" - |> withType "string" - |> withDescription "Local condition demo" - |> withCustomKeyword "ui" - (object - [ ( "rule" - , object - [ ( "action", string "disable" ) - , ( "path", string "../enabled" ) - , ( "condition" - , object - [ ( "const", Encode.bool False ) - , ( "default", Encode.bool False ) - ] - ) - ] - ) - ] - ) - ) - ] - ) - |> makeExample "Local scope" - ] - - Validation -> - [ buildSchema - |> withType "number" - |> withTitle "Name" - |> withDescription "Enter name between 2 and 10 characters" - |> withMinimum 2 - |> makeExample "Single field validation" - , buildSchema - |> withType "string" - |> withTitle "Bio" - |> withCustomKeyword "ui" (Encode.object [ ( "widget", object [ ( "type", string "multiline" ), ( "minRows", int 3 ), ( "maxRows", int 6 ) ] ) ]) - |> withDescription "Enter you bio" - |> withMinLength 40 - |> makeExample "Multiline field validation" - ] - - FormLayout -> - [ { schema = flightBookingInputGeneratorSchema, title = "Fligth booking input generator" } - ] - - -flightBookingInputGeneratorSchema : Schema -flightBookingInputGeneratorSchema = - """ -{ - "type": "object", - "properties": { - "payment": { - "ui": { - "expandable": true - }, - "title": "Payment", - "type": "object", - "properties": { - "person": { - "type": "object", - "title": "Person", - "properties": { - "title": { - "type": "string", - "title": "Title", - "enum": [ - "mr", - "ms", - "mrs", - "miss" - ] - }, - "firstName": { - "type": "string", - "title": "First name" - }, - "middleName": { - "type": "string", - "title": "Middle name" - }, - "lastName": { - "type": "string", - "title": "Last name" - } - } - }, - "card": { - "type": "object", - "title": "Card", - "properties": { - "type": { - "title": "Card type", - "type": "string", - "enum": [ - "debit", - "credit" - ] - }, - "holderType": { - "title": "Holder type", - "type": "string", - "enum": [ - "personal", - "corporate" - ] - }, - "brand": { - "title": "Brand", - "type": "string", - "enum": [ - "visa", - "mastercard", - "amex", - "discover" - ] - }, - "expirationDate": { - "title": "Expiration date", - "type": "string", - "format": "YYYY-MM" - }, - "name": { - "title": "Name", - "type": "string" - }, - "pan": { - "title": "Card Number (PAN)", - "type": "string" - }, - "cvv": { - "title": "CVV", - "type": "string", - "minLength": 3, - "maxLength": 4 - } - } - }, - "address": { - "type": "object", - "title": "Address", - "properties": { - "line1": { - "title": "Address line 1", - "type": "string" - }, - "postcode": { - "title": "Postcode", - "type": "string" - }, - "countryCode": { - "title": "Country code", - "type": "string", - "const": "gb" - } - } - } - } - }, - "account": { - "ui": { - "expandable": true - }, - "type": "object", - "title": "Account", - "properties": { - "email": { - "title": "Email", - "type": "string" - }, - "password": { - "title": "Password", - "type": "string" - }, - "passwordSpecification": { - "type": "object", - "title": "Password specification", - "properties": { - "length": { - "title": "Length", - "type": "string", - "default": 12 - }, - "numbers": { - "title": "Numbers", - "type": "integer", - "default": 1 - }, - "upper": { - "title": "Upper", - "type": "integer", - "default": 1 - }, - "lower": { - "title": "Lower", - "type": "integer", - "default": 1 - }, - "special": { - "title": "Special", - "type": "integer", - "default": 1 - }, - "specialCharacters": { - "title": "Special characters list", - "type": "array", - "item": { - "type": "string", - "maxLength": 1, - "minLength": 1 - }, - "default": [ - "#", - "$", - "%" - ] - } - } - }, - "isExisting": { - "title": "Is existing", - "type": "boolean", - "default": false - }, - "phone": { - "title": "Phone", - "type": "string", - "properties": { - "countryCode": { - "title": "Country code", - "type": "string", - "const": "gb" - }, - "number": { - "title": "Number", - "type": "string" - } - } - } - } - }, - "passengers": { - "ui": { - "expandable": true - }, - "title": "Passengers", - "type": "object", - "properties": { - "minItems": { - "title": "Min items", - "type": "integer", - "min": 0 - }, - "maxItems": { - "title": "Max items", - "type": "integer", - "min": 0 - }, - "items": { - "type": "array", - "items": { - "type": "object", - "title": "Flight passenger", - "properties": { - "person": { - "type": "object", - "properties": { - "title": { - "type": "string", - "title": "Title", - "enum": [ - "mr", - "ms", - "mrs", - "miss" - ] - }, - "firstName": { - "type": "string", - "title": "First name" - }, - "middleName": { - "type": "string", - "title": "Middle name" - }, - "lastName": { - "type": "string", - "title": "Last name" - } - } - }, - "dateOfBirth": { - "title": "Random date config", - "oneOf": [ - { - "type": "object", - "properties": { - "static": { - "type": "string" - } - }, - "required": [ - "static" - ], - "additionalProperties": false - }, - { - "type": "object", - "properties": { - "age": { - "type": "integer" - } - }, - "required": [ - "age" - ], - "additionalProperties": false - }, - { - "type": "integer" - } - ] - }, - "addAdditionalLuggage": { - "title": "Random integer configuration", - "type": "object", - "properties": { - "min": { - "title": "Min", - "type": "integer" - }, - "max": { - "title": "Max", - "type": "integer" - } - } - }, - "document": { - "type": "object", - "title": "Identity Document", - "properties": { - "type": { - "title": "Type", - "enum": [ - "passport" - ] - }, - "number": { - "title": "Number", - "type": "string" - }, - "issueDate": { - "title": "Issue date", - "type": "string", - "format": "date" - }, - "expirationDate": { - "title": "Expiration date", - "type": "string", - "format": "date" - }, - "issueCountryCode": { - "title": "Country code", - "type": "string" - } - } - } - } - } - } - } - }, - "outboundMonthYear": { - "title": "Outbound month year", - "oneOf": [ - { - "type": "object", - "properties": { - "static": { - "type": "string" - } - }, - "required": [ - "static" - ], - "additionalProperties": false - }, - { - "type": "object", - "properties": { - "age": { - "type": "integer" - } - }, - "required": [ - "age" - ], - "additionalProperties": false - }, - { - "type": "integer" - } - ] - }, - "inboundMonthYear": { - "title": "Inbound month year", - "oneOf": [ - { - "type": "object", - "properties": { - "static": { - "type": "string" - } - }, - "required": [ - "static" - ], - "additionalProperties": false - }, - { - "type": "object", - "properties": { - "age": { - "type": "integer" - } - }, - "required": [ - "age" - ], - "additionalProperties": false - }, - { - "type": "integer" - } - ] - } - } -} -""" |> Json.Schema.fromString |> Result.withDefault blankSchema - - - -{- - FlightBooking -> - [ buildSchema - |> withType "object" - |> withRequired [ "airlineCode" ] - |> withProperties - [ ( "pan" - , buildSchema - |> withType "string" - |> withTitle "Card Number" - |> withDescription "A card number. When not provided, this will be generated in the background" - |> withMinLength 10 - |> withMaxLength 17 - ) - , ( "airlineCode" - , buildSchema - |> withType "string" - |> withTitle "Airline Code" - |> withDescription "Two letter IATA airline code" - |> withMinLength 2 - |> withMaxLength 2 - ) - , ( "return" - , buildSchema - |> withType "boolean" - |> withTitle "Return" - |> withDescription "One way or return flight" - |> withCustomKeyword "ui" (Encode.object [ ( "widget", string "switch" ) ]) - ) - , ( "flightType" - , buildSchema - |> withType "string" - |> withTitle "Flight Type" - |> withDescription "Flight type is one of any/international/domestic" - |> withEnum - [ string "domestic" - , string "international" - , string "any" - ] - |> withDefault (string "any") - ) - , ( "cabinClass" - , buildSchema - |> withType "string" - |> withTitle "Cabin Class" - |> withDescription "Specify a cabin class. One of economy/premium economy/business/first" - |> withEnum - [ string "economy" - , string "premium economy" - , string "business" - , string "first" - ] - ) - , ( "earliestOffset" - , buildSchema - |> withType "number" - |> withTitle "Earliest Offset" - |> withDescription "Minutes before the first outbound flight may be chosen from the time of endpoint call" - |> withMinimum 0 - ) - , ( "latestOffset" - , buildSchema - |> withType "number" - |> withTitle "Latest Offset" - |> withDescription "Minutes after the earliest offset that the last outbound flight may be chosen" - |> withMinimum 0 - ) - , ( "minPassengers" - , buildSchema - |> withType "number" - |> withTitle "Minimum Passengers" - |> withDescription "No less than specified number of passengers will be generated" - |> withMinimum 0 - ) - , ( "maxPassengers" - , buildSchema - |> withType "number" - |> withTitle "Maximum Passengers" - |> withDescription "No more than specified number of passengers will be generated" - |> withMinimum 0 - ) - ] - |> withAdditionalProperties (boolSchema False) - |> toSchema - |> Result.withDefault blankSchema - ] --} diff --git a/src/assets/.gitkeep b/src/assets/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/src/custom-element.js b/src/custom-element.js deleted file mode 100644 index 97fdf59..0000000 --- a/src/custom-element.js +++ /dev/null @@ -1,53 +0,0 @@ -const Elm = require('./JsonFormCustomElement'); -const css = require('../stylesheets/standalone.css').toString(); - - -customElements.define('json-form', - class extends HTMLElement { - - static get observedAttributes() { - return ['value', 'schema']; - } - - constructor() { - super(); - - const appRoot = document.createElement('div'); - const appStyles = document.createElement('style'); - appStyles.textContent = css; - - const shadowRoot = this.attachShadow({mode: 'open'}); - shadowRoot.appendChild(appStyles); - shadowRoot.appendChild(appRoot); - - const json = this.getAttribute('value'); - const schema = JSON.parse(this.getAttribute('schema')); - const value = JSON.parse(json); - const app = Elm.JsonFormCustomElement.embed(appRoot, { schema, value }); - this.app = app; - this.muteAttributeChange = false; - - app.ports.value.subscribe(({ value, isValid }) => { - const event = new CustomEvent('change', { detail: { value, isValid } }); - this.muteAttributeChange = true; - this.setAttribute('value', JSON.stringify(v)); - this.muteAttributeChange = false; - this.dispatchEvent(event); - }); - } - - attributeChangedCallback(name, oldValue, newValue) { - if (this.muteAttributeChange) { - return; - } - - switch (name) { - case 'value': - this.app.ports.valueChange.send(JSON.parse(newValue)); - break; - case 'schema': - this.app.ports.schemaChange.send(JSON.parse(newValue)); - break; - } - } -}); diff --git a/src/index.js b/src/index.js deleted file mode 100644 index eca1bdb..0000000 --- a/src/index.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; - -require('../stylesheets/index.css'); - -import registerServiceWorker from './registerServiceWorker'; - -registerServiceWorker(); - -const Elm = require('./Main'); - -Elm.Elm.Main.init({ node: document.body }); diff --git a/src/registerServiceWorker.js b/src/registerServiceWorker.js deleted file mode 100644 index 4a3ccf0..0000000 --- a/src/registerServiceWorker.js +++ /dev/null @@ -1,108 +0,0 @@ -// In production, we register a service worker to serve assets from local cache. - -// This lets the app load faster on subsequent visits in production, and gives -// it offline capabilities. However, it also means that developers (and users) -// will only see deployed updates on the "N+1" visit to a page, since previously -// cached resources are updated in the background. - -// To learn more about the benefits of this model, read https://goo.gl/KwvDNy. -// This link also includes instructions on opting out of this behavior. - -const isLocalhost = Boolean( - window.location.hostname === 'localhost' || - // [::1] is the IPv6 localhost address. - window.location.hostname === '[::1]' || - // 127.0.0.1/8 is considered localhost for IPv4. - window.location.hostname.match( - /^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/ - ) -); - -export default function register() { - if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) { - // The URL constructor is available in all browsers that support SW. - const publicUrl = new URL(process.env.PUBLIC_URL, window.location); - if (publicUrl.origin !== window.location.origin) { - // Our service worker won't work if PUBLIC_URL is on a different origin - // from what our page is served on. This might happen if a CDN is used to - // serve assets; see https://github.com/facebookincubator/create-react-app/issues/2374 - return; - } - - window.addEventListener('load', () => { - const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`; - - if (!isLocalhost) { - // Is not local host. Just register service worker - registerValidSW(swUrl); - } else { - // This is running on localhost. Lets check if a service worker still exists or not. - checkValidServiceWorker(swUrl); - } - }); - } -} - -function registerValidSW(swUrl) { - navigator.serviceWorker - .register(swUrl) - .then(registration => { - registration.onupdatefound = () => { - const installingWorker = registration.installing; - installingWorker.onstatechange = () => { - if (installingWorker.state === 'installed') { - if (navigator.serviceWorker.controller) { - // At this point, the old content will have been purged and - // the fresh content will have been added to the cache. - // It's the perfect time to display a "New content is - // available; please refresh." message in your web app. - console.log('New content is available; please refresh.'); - } else { - // At this point, everything has been precached. - // It's the perfect time to display a - // "Content is cached for offline use." message. - console.log('Content is cached for offline use.'); - } - } - }; - }; - }) - .catch(error => { - console.error('Error during service worker registration:', error); - }); -} - -function checkValidServiceWorker(swUrl) { - // Check if the service worker can be found. If it can't reload the page. - fetch(swUrl) - .then(response => { - // Ensure service worker exists, and that we really are getting a JS file. - if ( - response.status === 404 || - response.headers.get('content-type').indexOf('javascript') === -1 - ) { - // No service worker found. Probably a different app. Reload the page. - navigator.serviceWorker.ready.then(registration => { - registration.unregister().then(() => { - window.location.reload(); - }); - }); - } else { - // Service worker found. Proceed as normal. - registerValidSW(swUrl); - } - }) - .catch(() => { - console.log( - 'No internet connection found. App is running in offline mode.' - ); - }); -} - -export function unregister() { - if ('serviceWorker' in navigator) { - navigator.serviceWorker.ready.then(registration => { - registration.unregister(); - }); - } -} diff --git a/static/css/main.a3d534da.chunk.css b/static/css/main.a3d534da.chunk.css new file mode 100644 index 0000000..8b1bf54 --- /dev/null +++ b/static/css/main.a3d534da.chunk.css @@ -0,0 +1,12 @@ +:root{--color-active:#27b9cc;--color-inactive:#8a8a8a;--color-invalid:#d95559;--color-active--054:#8fd9e3;box-sizing:border-box;--form-background:#fafafa;--nested-object-padding:0px;--expandable-section-padding:0 20px}.app-topbar{background-color:var(--color-mono--700);color:var(--color-mono--300);font-size:14px}.app-content{padding:16px}.example-section{border-bottom:1px solid rgba(0,0,0,.1);padding-bottom:20px;margin-bottom:20px}.example-section__heading{font-size:24px;margin:30px 0;text-align:center}.example-section__content{display:flex;flex-direction:column;margin-top:10px;margin-bottom:10px;align-items:center}.example-section__content>*{margin-bottom:20px;max-width:350px}@media (min-width:730px){.example-section__content{flex-direction:row;align-items:initial}.example-section__content>*{margin-right:20px;max-width:unset}.example-section__heading{text-align:left}}@media (min-width:4080px){.example-section__content{flex-direction:row;align-items:initial}.example-section__content>*{margin-right:50px}.example-section__heading{text-align:left}} +.json-view{width:100%;line-height:1.3;padding:10px;background:#fdf6e3;color:#657b83;white-space:pre-wrap;font-family:var(--font-family--mono);overflow:auto}.json-view__attr{color:#b58900}.json-view__bool,.json-view__null,.json-view__string{color:#2aa198}.json-view__nested-props{border-left:2px solid transparent;padding-left:4ch;margin-left:2px}.json-view__nested-props:hover{border-left-color:rgba(0,0,0,.05)} +.tab{border-bottom:3px solid transparent;display:inline-block;font-size:14px;min-width:160px;padding:0 12px 20px;height:48px;line-height:48px;color:hsla(0,0%,100%,.7);text-transform:uppercase;text-align:center;vertical-align:middle;cursor:pointer}.tab--active{color:#fff;cursor:default;border-bottom:3px solid var(--color-red--500)} +.json-viewer{font-family:var(--font-family--mono);line-height:1.6}.json-viewer--collapsed{color:grey;cursor:pointer;background-color:var(--color-blue--100)}.json-viewer__array-item,.json-viewer__object-property{margin-left:4ch}.json-viewer__key--object{color:var(--color-mono--700)}.json-viewer__key:after{content:": "}.json-viewer__key--array{color:#4169e1}.json-viewer--string{color:var(--color-yellow--700)}.json-viewer--number{color:var(--color-blue--700)}.json-viewer--null{color:var(--color-red--700)}.json-viewer--bool{color:var(--color-brand-blue--600)} +.jf-element{display:inline-flex;flex-direction:column;margin-top:16px;margin-right:16px;max-width:300px}.jf-element--hidden{display:none}.jf-helper-text{margin-top:8px;padding-left:12px;color:rgba(0,0,0,.54);box-sizing:border-box;font-size:12px}.jf-element--invalid .jf-helper-text{color:var(--color-invalid)} +.jf-textfield{--field-height:56px;--label-top:21px;--large-font-size:16px;--side-padding:12px;--filled-background:rgba(0,0,0,.09)}.jf-textfield,.jf-textfield--dense{--top-padding:22px;--bottom-padding:13px}.jf-textfield--dense{--field-height:44px;--label-top:17px;--large-font-size:12px;--side-padding:8px}.jf-textfield--dense.jf-textfield--outlined{--top-padding:13px;--bottom-padding:13px}.jf-textfield--dense.jf-textfield--multiline{--top-padding:22px;--bottom-padding:6px}.jf-textfield--multiline{--top-padding:23px;--bottom-padding:6px}.jf-textfield{position:relative;height:var(--field-height);font-size:var(--large-font-size);display:inline-block;box-sizing:border-box;width:280px;max-width:100%;margin:0;padding:0;border-top-left-radius:4px;border-top-right-radius:4px;cursor:pointer;background-color:var(--filled-background);color:#00000099;outline:none}.jf-textfield--outlined{background-color:var(--form-background);border-radius:4px;box-shadow:0 0 0 1px rgba(0,0,0,.5)}.jf-textfield:hover{background-color:#dedede;color:#000000de}.jf-textfield--focused.jf-textfield--outlined{box-shadow:0 0 0 2px var(--color-active)}.jf-textfield--focused:hover{background-color:#e8e8e8;color:#00000099}.jf-textfield--outlined:hover{background:var(--form-background)}.jf-textfield__input{border:none;border-radius:0;border-top-right-radius:4px;border-top-left-radius:4px;outline:none;display:block;font-size:var(--large-font-size);font-family:var(--font-family);margin:0;padding:var(--top-padding) var(--side-padding) var(--bottom-padding);width:100%;background:0 0;text-align:left;color:inherit;caret-color:var(--color-active);position:absolute;top:0;left:0;height:var(--field-height);box-sizing:border-box}.jf-textfield--focused .jf-textfield__input{color:inherit}.jf-textfield--empty .jf-textfield__label,.jf-textfield--outlined.jf-textfield--empty .jf-textfield__label{top:var(--label-top);font-size:var(--large-font-size)}.jf-textfield--focused .jf-textfield__label{color:var(--color-active);visibility:visible;top:10px}.jf-textfield__label{color:var(--color-inactive);padding-left:var(--side-padding);padding-right:var(--side-padding);font-size:12px;left:0;right:0;pointer-events:none;position:absolute;display:block;bottom:0;top:6px;width:100%;overflow:hidden;white-space:nowrap;text-align:left;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);box-sizing:border-box}.jf-textfield--empty .jf-textfield__label{font-size:var(--large-font-size)}.jf-textfield--outlined .jf-textfield__label{padding-left:4px;padding-right:4px;font-size:12px;left:var(--side-padding);bottom:auto;right:auto;width:auto;background-color:var(--form-background)}.jf-textfield--focused.jf-textfield--outlined .jf-textfield__label{top:-7px;font-size:12px}.jf-textfield--focused .jf-textfield__label{top:6px;font-size:12px}.jf-textfield--outlined .jf-textfield__label{top:-7px}.jf-textfield--outlined .jf-textfield__input{padding:var(--top-padding) var(--side-padding) var(--bottom-padding);border-radius:4px}.jf-textfield--multiline{min-height:var(--field-height);height:auto}.jf-textfield--multiline .jf-textfield__input{max-width:100%;min-width:100%;position:static;margin-top:0;margin-bottom:0;padding-bottom:var(--bottom-padding);line-height:18px;display:block;height:auto}.jf-textfield--json textarea{font-family:menlo,monospace}.jf-textfield__label:after{background-color:var(--color-active);bottom:0;content:"";height:2px;left:45%;position:absolute;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);visibility:hidden;width:10px}.jf-textfield--focused{cursor:auto}.jf-textfield--focused .jf-textfield__label:after{left:0;visibility:visible;width:100%}.jf-textfield--outlined .jf-textfield__label:after{background-color:transparent}.jf-textfield:after{content:"";position:absolute;width:100%;height:1px;bottom:0;background-color:var(--color-inactive);transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.jf-textfield--outlined.jf-textfield:after{display:none}.jf-textfield:after:hover{background-color:var(--color-inactive)}.jf-textfield--focused:after{background-color:transparent}.jf-textfield:hover:after{background-color:#222;height:2px}.jf-textfield--focused:hover:after{background-color:transparent}.jf-textfield svg{position:absolute;top:10px;right:var(--side-padding)}.jf-textfield--invalid svg{color:var(--color-invalid)}.jf-textfield--has-icon .jf-textfield__input{padding-right:40px}.jf-textfield--outlined .jf-textfield__label:after{display:none}.jf-textfield--invalid .jf-textfield__label:after{background-color:var(--color-invalid)}.jf-textfield--invalid .jf-textfield__label{color:var(--color-invalid);-webkit-animation:shake .5s linear;animation:shake .5s linear}.jf-textfield--invalid:after{background-color:var(--color-invalid)!important}.jf-textfield--invalid .jf-textfield__input{caret-color:var(--color-invalid)}.jf-textfield--outlined.jf-textfield--invalid{box-shadow:0 0 0 2px var(--color-invalid)}.jf-textfield--disabled{color:var(--color-inactive);cursor:default}.jf-textfield--disabled,.jf-textfield--disabled:hover{background-color:#e0e0e0}.jf-textfield--disabled:hover:after{background-color:transparent}.jf-textfield--disabled:after{background-color:transparent;border-bottom:1px dotted var(--color-inactive)}.jf-textfield--outlined.jf-textfield--disabled:hover{background:var(--form-background)}.jf-textfield--outlined.jf-textfield--disabled:after{display:none}.jf-textfield--outlined.jf-textfield--disabled{background-color:var(--form-background);box-shadow:0 0 0 1px rgba(0,0,0,.3)}@-webkit-keyframes shake{8%,41%{-webkit-transform:translateX(-4px);transform:translateX(-4px)}25%,58%{-webkit-transform:translateX(4px);transform:translateX(4px)}75%{-webkit-transform:translateX(-1px);transform:translateX(-1px)}92%{-webkit-transform:translateX(1px);transform:translateX(1px)}0%,to{-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes shake{8%,41%{-webkit-transform:translateX(-4px);transform:translateX(-4px)}25%,58%{-webkit-transform:translateX(4px);transform:translateX(4px)}75%{-webkit-transform:translateX(-1px);transform:translateX(-1px)}92%{-webkit-transform:translateX(1px);transform:translateX(1px)}0%,to{-webkit-transform:translateX(0);transform:translateX(0)}} +.jf-switch{width:280px;max-width:100%;position:relative;display:inline-block;box-sizing:border-box;margin:0;padding:20px 0;font-size:16px;vertical-align:top}.jf-switch__input{margin:0;padding:0;width:0;height:0;position:absolute;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;opacity:0}.jf-switch__label{cursor:pointer}.jf-switch__track{background-color:#d3d3d3;width:36px;height:14px;position:absolute;top:calc(50% - 7px);right:0;border-radius:14px;cursor:pointer}.jf-switch__thumb{background-color:#fafafa;right:18px;cursor:pointer;box-shadow:0 3px 4px 0 rgba(0,0,0,.14),0 3px 3px -2px rgba(0,0,0,.2),0 1px 8px 0 rgba(0,0,0,.12)}.jf-switch .jf-switch__thumb:after,.jf-switch__thumb{width:20px;height:20px;position:absolute;top:calc(50% - 10px);border-radius:50%;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.jf-switch .jf-switch__thumb:after{background-color:#d3d3d3;content:"";left:0;opacity:0}.jf-switch:hover .jf-switch__thumb:after{width:40px;height:40px;position:absolute;top:calc(50% - 20px);left:-10px;opacity:.2}.jf-switch:active .jf-switch__thumb:after{opacity:.4}.jf-switch--on .jf-switch__thumb:after{background-color:var(--color-active)}.jf-switch--on .jf-switch__thumb{right:0;background-color:var(--color-active)}.jf-switch--on .jf-switch__track{background-color:var(--color-active--054)}.jf-switch__helper-text{max-width:calc(100% - 44px);font-size:12px;color:rgba(0,0,0,.54);padding-top:4px}.jf-switch--invalid .jf-textfield__helper-text{color:var(--color-red--500)}.jf-switch--disabled{opacity:.54}.jf-switch--disabled:hover .jf-switch__thumb:after{opacity:0}.jf-switch--disabled .jf-checkbox__helper-text,.jf-switch--disabled .jf-switch__label,.jf-switch--disabled .jf-switch__thumb,.jf-switch--disabled .jf-switch__track{cursor:default} +.jf-checkbox{width:280px;max-width:100%;position:relative;display:inline-block;box-sizing:border-box;margin:0;padding:20px 0;font-size:16px;vertical-align:top}.jf-checkbox__input{margin:0;padding:0;width:0;height:0;position:absolute;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;opacity:0}.jf-checkbox__label{cursor:pointer}.jf-checkbox__box-outline{width:16px;height:16px;position:absolute;top:calc(50% - 8px);right:2px;border-radius:2px;border:2px solid #0000008a;cursor:pointer;z-index:2}.jf-checkbox__tick-outline{position:absolute;top:0;left:0;height:100%;width:100%;background:0 0;transition-duration:.28s;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-property:background}.jf-checkbox--on .jf-checkbox__tick-outline{background:var(--color-active) url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgdmVyc2lvbj0iMS4xIgogICB2aWV3Qm94PSIwIDAgMSAxIgogICBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWluWU1pbiBtZWV0Ij4KICA8cGF0aAogICAgIGQ9Ik0gMC4wNDAzODA1OSwwLjYyNjc3NjcgMC4xNDY0NDY2MSwwLjUyMDcxMDY4IDAuNDI5Mjg5MzIsMC44MDM1NTMzOSAwLjMyMzIyMzMsMC45MDk2MTk0MSB6IE0gMC4yMTcxNTcyOSwwLjgwMzU1MzM5IDAuODUzNTUzMzksMC4xNjcxNTcyOSAwLjk1OTYxOTQxLDAuMjczMjIzMyAwLjMyMzIyMzMsMC45MDk2MTk0MSB6IgogICAgIGlkPSJyZWN0Mzc4MCIKICAgICBzdHlsZT0iZmlsbDojZmZmZmZmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lIiAvPgo8L3N2Zz4K)}.jf-checkbox--on .jf-checkbox__box-outline{border:2px solid var(--color-active)}.jf-checkbox__helper-text{font-size:12px;padding-top:4px;padding-right:32px;color:rgba(0,0,0,.54)}.jf-checkbox--invalid .jf-checkbox__helper-text{color:var(--color-red--500)}.jf-checkbox--disabled .jf-checkbox__helper-text,.jf-checkbox--disabled .jf-checkbox__label{color:var(--color-inactive);cursor:default}.jf-checkbox--disabled .jf-checkbox__tick-outline{background-color:var(--color-inactive)}.jf-checkbox--disabled .jf-checkbox__box-outline{border-color:var(--color-inactive);cursor:default}.jf-checkbox__box-outline:after{background-color:#d3d3d3;content:"";width:20px;height:20px;position:absolute;top:calc(50% - 10px);left:calc(50% - 10px);opacity:0;border-radius:50%;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.jf-checkbox:hover .jf-checkbox__box-outline:after{width:40px;height:40px;position:absolute;top:calc(50% - 20px);left:calc(50% - 20px);opacity:.2}.jf-checkbox:active .jf-checkbox__box-outline:after{opacity:.4}.jf-checkbox--on .jf-checkbox__box-outline:after{background-color:var(--color-active)}.jf-checkbox--disabled:hover .jf-checkbox__box-outline:after{opacity:0}.jf-checkbox--disabled{opacity:.54} +.array-item-add{padding:16px}.array-item-add .button{font-size:16px}.jf-json-form{background:var(--form-background)}.jf-heading{font-size:16px;padding:0;padding-top:20px;padding-bottom:10px}.jf-heading--expandable{cursor:pointer;font-size:19px;margin-left:-20px}.jf-heading--expandable:before{content:url("data:image/svg+xml;utf8,");padding:4px}.jf-heading--expandable.jf-heading--expanded:before{content:url("data:image/svg+xml;utf8,")}.jf-section{padding-left:20px} +.card{box-shadow:0 1px 1px 0 rgba(60,64,67,.08),0 1px 3px 1px rgba(60,64,67,.16);border-radius:4px;overflow:hidden;max-width:500px}.card__title{font-size:16px;display:block;padding:10px} + +/*# sourceMappingURL=main.a3d534da.chunk.css.map*/ \ No newline at end of file diff --git a/static/css/main.a3d534da.chunk.css.map b/static/css/main.a3d534da.chunk.css.map new file mode 100644 index 0000000..b14633b --- /dev/null +++ b/static/css/main.a3d534da.chunk.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["../stylesheets/app.css","../stylesheets/json-view.css","../stylesheets/tab.css","../stylesheets/json-viewer.css","../stylesheets/json-form-element.css","../stylesheets/textfield.css","../stylesheets/switch.css","../stylesheets/checkbox.css","../stylesheets/json-form.css","../stylesheets/index.css"],"names":[],"mappings":"AAAA,MACI,uBACA,yBACA,wBACA,4BACA,sBACA,0BACA,4BACA,mCAAqC,CAGzC,YACE,wCACA,6BACA,cAAgB,CAGlB,aACE,YAAc,CAGhB,iBACI,uCACA,oBACA,kBAAoB,CAGxB,0BACI,eACA,cACA,iBAAmB,CAGvB,0BACI,aACA,sBACA,gBACA,mBACA,kBAAoB,CAGxB,4BACI,mBACA,eAAiB,CAMrB,yBACI,0BACI,mBACA,mBAAqB,CAGzB,4BACI,kBACA,eAAiB,CAGrB,0BACI,eAAiB,CACpB,CAIL,0BAEI,0BACI,mBACA,mBAAqB,CAGzB,4BACI,iBAAmB,CAGvB,0BACI,eAAiB,CACpB,C;AC/EL,WACI,WACA,gBACA,aAEA,mBAEA,cACA,qBACA,qCACA,aAAe,CAGnB,iBACI,aAAe,CAGnB,qDAGI,aAAe,CAGnB,yBACI,kCACA,iBACA,eAAiB,CAGrB,+BACI,iCAAuC,C;AC9B3C,KACE,oCACA,qBACA,eACA,gBAEA,oBAGA,YACA,iBACA,yBACA,yBACA,kBACA,sBACA,cAAgB,CAGlB,aACE,WACA,eACA,6CAA+C,C;ACrBjD,aACE,qCACA,eAAiB,CAGnB,wBACE,WACA,eACA,uCAAyC,CAO3C,uDACE,eAAiB,CAGnB,0BACE,4BAA8B,CAGhC,wBACE,YAAc,CAGhB,yBACE,aAAiB,CAGnB,qBACE,8BAAgC,CAGlC,qBACE,4BAA8B,CAGhC,mBACE,2BAA6B,CAG/B,mBACE,kCAAoC,C;AC5CtC,YACI,oBACA,sBACA,gBACA,kBACA,eAAiB,CAGrB,oBACI,YAAc,CAGlB,gBACI,eACA,kBACA,sBACA,sBACA,cAAgB,CAGpB,qCACI,0BAA4B,C;ACrBhC,cACI,oBACA,iBACA,uBACA,oBACA,mCAAyC,CAK7C,mCAJI,mBACA,qBAAuB,CAU1B,qBANG,oBACA,iBACA,uBACA,kBAAoB,CAKxB,4CACI,mBACA,qBAAuB,CAG3B,6CACI,mBACA,oBAAsB,CAG1B,yBACI,mBACA,oBAAsB,CAI1B,cACI,kBACA,2BACA,iCACA,qBACA,sBACA,YACA,eACA,SACA,UACA,2BACA,4BACA,eACA,0CACA,gBACA,YAAc,CAGlB,wBACI,wCACA,kBACA,mCAAyC,CAG7C,oBACI,yBACA,eAAiB,CAGrB,8CACI,wCAA0C,CAG9C,6BACI,yBACA,eAAiB,CAGrB,8BACI,iCAAmC,CAGvC,qBACI,YACA,gBACA,4BACA,2BACA,aACA,cACA,iCACA,+BACA,SACA,qEAIA,WACA,eACA,gBACA,cACA,gCACA,kBACA,MACA,OACA,2BACA,qBAAuB,CAG3B,4CAEI,aAAe,CAGnB,2GACI,qBACA,gCAAkC,CAGtC,4CACI,0BACA,mBAEA,QAAU,CAGd,qBACI,4BACA,iCACA,kCACA,eACA,OACA,QACA,oBACA,kBACA,cACA,SACA,QACA,WACA,gBACA,mBACA,gBACA,wBACA,mDACA,qBAAuB,CAG3B,0CACI,gCAAkC,CAGtC,6CACI,iBACA,kBACA,eACA,yBACA,YACA,WACA,WACA,uCAAyC,CAG7C,mEACI,SACA,cAAgB,CAGpB,4CACI,QACA,cAAgB,CAGpB,6CACI,QAAU,CAGd,6CACI,qEAIA,iBAAmB,CAIvB,yBACI,+BACA,WAAa,CAGjB,8CAEI,eACA,eACA,gBACA,aACA,gBACA,qCACA,iBACA,cACA,WAAa,CAGjB,6BACI,2BAA8B,CAmBlC,2BACI,qCACA,SACA,WACA,WACA,SACA,kBACA,wBACA,mDACA,kBACA,UAAY,CAGhB,uBACI,WAAa,CAGjB,kDACI,OACA,mBACA,UAAY,CAGhB,mDACI,4BAA8B,CAkBlC,oBACI,WACA,kBACA,WACA,WACA,SACA,uCAEA,wBACA,kDAAoD,CAGxD,2CACI,YAAc,CAGlB,0BACI,sCAAwC,CAG5C,6BACI,4BAA8B,CAGlC,0BACI,sBACA,UAAY,CAGhB,mCACI,4BAA8B,CAOlC,kBACI,kBACA,SACA,yBAA2B,CAG/B,2BACI,0BAA4B,CAGhC,6CACI,kBAAoB,CAUxB,mDACI,YAAc,CAOlB,kDACI,qCAAuC,CAG3C,4CACI,2BACA,mCACQ,0BAA4B,CAGxC,6BACI,+CAAkD,CAGtD,4CACI,gCAAkC,CAGtC,8CACI,yCAA2C,CAM/C,wBACI,4BAEA,cAAgB,CAGpB,sDAJI,wBAA0B,CAQ9B,oCACI,4BAA8B,CAGlC,8BACI,6BACA,8CAAgD,CAGpD,qDACI,iCAAmC,CAGvC,qDACI,YAAc,CAGlB,+CACI,wCACA,mCAAyC,CAG5C,yBACG,OACI,mCACQ,0BAA4B,CAExC,QACI,kCACQ,yBAA2B,CAEvC,IACI,mCACQ,0BAA4B,CAExC,IACI,kCACQ,yBAA2B,CAEvC,MACI,gCACQ,uBAAyB,CACpC,CAGJ,iBACG,OACI,mCACQ,0BAA4B,CAExC,QACI,kCACQ,yBAA2B,CAEvC,IACI,mCACQ,0BAA4B,CAExC,IACI,kCACQ,yBAA2B,CAEvC,MACI,gCACQ,uBAAyB,CACpC,C;ACxaL,WACI,YACA,eACA,kBAEA,qBACA,sBACA,SACA,eACA,eACA,kBAAoB,CAGxB,kBACI,SACA,UACA,QACA,SACA,kBACA,SACA,wBACG,qBACK,gBACR,SAAW,CAGf,kBACI,cAAgB,CAGpB,kBACI,yBACA,WACA,YACA,kBACA,oBACA,QACA,mBACA,cAAgB,CAGpB,kBACI,yBAKA,WACA,eAIA,gGAAoG,CAGxG,qDAZI,WACA,YACA,kBACA,qBAGA,kBACA,wBACA,kDAAoD,CAgBvD,mCAXG,yBACA,WAKA,OACA,SAAW,CAMf,yCACI,WACA,YACA,kBACA,qBACA,WACA,UAAa,CAGjB,0CACI,UAAa,CAGjB,uCACI,oCAAsC,CAG1C,iCACI,QAIA,oCAAsC,CAG1C,iCACI,yCAA2C,CAG/C,wBACI,4BACA,eACA,sBACA,eAAiB,CAGrB,+CACI,2BAA6B,CAIjC,qBACI,WAAc,CAGlB,mDACI,SAAW,CAYf,oKACI,cAAgB,C;AChIpB,aACI,YACA,eACA,kBAEA,qBACA,sBACA,SACA,eACA,eACA,kBAAoB,CAGxB,oBACI,SACA,UACA,QACA,SACA,kBACA,SACA,wBACG,qBACK,gBACR,SAAW,CAGf,oBACI,cAAgB,CAGpB,0BACI,WACA,YACA,kBACA,oBACA,UACA,kBACA,2BACA,eACA,SAAW,CAGf,2BACI,kBACA,MACA,OACA,YACA,WACA,eACA,yBACA,mDACA,8BAAgC,CAIpC,4CACI,85BAAg6B,CAIp6B,2CACI,oCAAsC,CAI1C,0BACI,eACA,gBACA,mBACA,qBAA2B,CAG/B,gDACI,2BAA6B,CAIjC,4FAEI,4BACA,cAAgB,CAGpB,kDACI,sCAAwC,CAG5C,iDACI,mCACA,cAAgB,CAKpB,gCACI,yBACA,WACA,WACA,YACA,kBACA,qBACA,sBACA,UACA,kBACA,wBACA,kDAAoD,CAGxD,mDACI,WACA,YACA,kBACA,qBACA,sBACA,UAAa,CAGjB,oDACI,UAAa,CAGjB,iDACI,oCAAsC,CAG1C,6DACI,SAAW,CAGf,uBACI,WAAc,C;AC9HlB,gBACI,YAAc,CAGlB,wBACI,cAAgB,CAMpB,cACI,iCAAmC,CAKvC,YACI,eACA,UACA,iBACA,mBAAqB,CAGzB,wBACI,eACA,eACA,iBAAmB,CAGvB,+BACI,0QACA,WAAa,CAMjB,oDACI,yQAA2Q,CAO/Q,YACI,iBAAmB,C;AC7CvB,MACI,2EACA,kBACA,gBACA,eAAiB,CAGrB,aACI,eACA,cACA,YAAc,C","file":"static/css/main.a3d534da.chunk.css","sourcesContent":[":root {\n --color-active: #27b9cc;\n --color-inactive: #8a8a8a;\n --color-invalid: #d95559;\n --color-active--054: #8fd9e3;\n box-sizing: border-box;\n --form-background: #fafafa;\n --nested-object-padding: 0px;\n --expandable-section-padding: 0 20px;\n}\n\n.app-topbar {\n background-color: var(--color-mono--700);\n color: var(--color-mono--300);\n font-size: 14px;\n}\n\n.app-content {\n padding: 16px;\n}\n\n.example-section {\n border-bottom: 1px solid rgba(0,0,0,0.1);\n padding-bottom: 20px;\n margin-bottom: 20px;\n}\n\n.example-section__heading {\n font-size: 24px;\n margin: 30px 0;\n text-align: center;\n}\n\n.example-section__content {\n display: flex;\n flex-direction: column;\n margin-top: 10px;\n margin-bottom: 10px;\n align-items: center;\n}\n\n.example-section__content > * {\n margin-bottom: 20px;\n max-width: 350px;\n}\n\n@media (min-width: 400px) {\n}\n\n@media (min-width: 730px) {\n .example-section__content {\n flex-direction: row;\n align-items: initial;\n }\n\n .example-section__content > * {\n margin-right: 20px;\n max-width: unset;\n }\n\n .example-section__heading {\n text-align: left;\n }\n\n}\n\n@media (min-width: 4080px) {\n\n .example-section__content {\n flex-direction: row;\n align-items: initial;\n }\n\n .example-section__content > * {\n margin-right: 50px;\n }\n\n .example-section__heading {\n text-align: left;\n }\n}\n\n\n",".json-view {\n width: 100%;\n line-height: 1.3;\n padding: 10px;\n /* background: #002b36; */\n background: #fdf6e3;\n /* color: #839496; */\n color: #657b83;\n white-space: pre-wrap;\n font-family: var(--font-family--mono);\n overflow: auto;\n}\n\n.json-view__attr {\n color: #b58900;\n}\n\n.json-view__bool,\n.json-view__null,\n.json-view__string {\n color: #2aa198;\n}\n\n.json-view__nested-props {\n border-left: 2px solid transparent;\n padding-left: 4ch;\n margin-left: 2px;\n}\n\n.json-view__nested-props:hover {\n border-left-color: rgba(0, 0, 0, 0.05);\n}\n",".tab {\n border-bottom: 3px solid transparent;\n display: inline-block;\n font-size: 14px;\n min-width: 160px;\n padding-top: 0;\n padding-left: 12px;\n padding-right: 12px;\n padding-bottom: 20px;\n height: 48px;\n line-height: 48px;\n color: rgba(255,255,255,.7);\n text-transform: uppercase;\n text-align: center;\n vertical-align: middle;\n cursor: pointer;\n}\n\n.tab--active {\n color: white;\n cursor: default;\n border-bottom: 3px solid var(--color-red--500);\n}\n\n",".json-viewer {\n font-family: var(--font-family--mono);\n line-height: 1.6;\n}\n\n.json-viewer--collapsed {\n color: grey;\n cursor: pointer;\n background-color: var(--color-blue--100);\n}\n\n.json-viewer__object-property {\n margin-left: 4ch;\n}\n\n.json-viewer__array-item {\n margin-left: 4ch;\n}\n\n.json-viewer__key--object {\n color: var(--color-mono--700);\n}\n\n.json-viewer__key:after {\n content: ': ';\n}\n\n.json-viewer__key--array {\n color: royalblue;\n}\n\n.json-viewer--string {\n color: var(--color-yellow--700);\n}\n\n.json-viewer--number {\n color: var(--color-blue--700);\n}\n\n.json-viewer--null {\n color: var(--color-red--700);\n}\n\n.json-viewer--bool {\n color: var(--color-brand-blue--600);\n}\n",".jf-element {\n display: inline-flex;\n flex-direction: column;\n margin-top: 16px;\n margin-right: 16px;\n max-width: 300px;\n}\n\n.jf-element--hidden {\n display: none;\n}\n\n.jf-helper-text {\n margin-top: 8px;\n padding-left: 12px;\n color: rgba(0, 0, 0, 0.54);\n box-sizing: border-box;\n font-size: 12px;\n}\n\n.jf-element--invalid .jf-helper-text {\n color: var(--color-invalid);\n}\n",".jf-textfield {\n --field-height: 56px;\n --label-top: 21px;\n --large-font-size: 16px;\n --side-padding: 12px;\n --filled-background: rgba(0, 0, 0, 0.09);\n --top-padding: 22px;\n --bottom-padding: 13px;\n}\n\n.jf-textfield--dense {\n --field-height: 44px;\n --label-top: 17px;\n --large-font-size: 12px;\n --side-padding: 8px;\n --top-padding: 22px;\n --bottom-padding: 13px;\n}\n\n.jf-textfield--dense.jf-textfield--outlined {\n --top-padding: 13px;\n --bottom-padding: 13px;\n}\n\n.jf-textfield--dense.jf-textfield--multiline {\n --top-padding: 22px;\n --bottom-padding: 6px;\n}\n\n.jf-textfield--multiline {\n --top-padding: 23px;\n --bottom-padding: 6px;\n}\n\n\n.jf-textfield {\n position: relative;\n height: var(--field-height);\n font-size: var(--large-font-size);\n display: inline-block;\n box-sizing: border-box;\n width: 280px;\n max-width: 100%;\n margin: 0;\n padding: 0;\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n cursor: pointer;\n background-color: var(--filled-background);\n color: #00000099;\n outline: none;\n}\n\n.jf-textfield--outlined {\n background-color: var(--form-background);\n border-radius: 4px;\n box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.5);\n}\n\n.jf-textfield:hover {\n background-color: #dedede;\n color: #000000de;\n}\n\n.jf-textfield--focused.jf-textfield--outlined {\n box-shadow: 0 0 0 2px var(--color-active);\n}\n\n.jf-textfield--focused:hover {\n background-color: #e8e8e8;\n color: #00000099;\n}\n\n.jf-textfield--outlined:hover {\n background: var(--form-background);\n}\n\n.jf-textfield__input {\n border: none;\n border-radius: 0;\n border-top-right-radius: 4px;\n border-top-left-radius: 4px;\n outline: none;\n display: block;\n font-size: var(--large-font-size);\n font-family: var(--font-family);\n margin: 0;\n padding-left: var(--side-padding);\n padding-right: var(--side-padding);\n padding-top: var(--top-padding);\n padding-bottom: var(--bottom-padding);\n width: 100%;\n background: 0 0;\n text-align: left;\n color: inherit;\n caret-color: var(--color-active);\n position: absolute;\n top: 0px;\n left: 0px;\n height: var(--field-height);\n box-sizing: border-box;\n}\n\n.jf-textfield--focused .jf-textfield__input {\n /* color: var(--color-active); */\n color: inherit;\n}\n\n.jf-textfield--outlined.jf-textfield--empty .jf-textfield__label, .jf-textfield--empty .jf-textfield__label {\n top: var(--label-top);\n font-size: var(--large-font-size);\n}\n\n.jf-textfield--focused .jf-textfield__label {\n color: var(--color-active);\n visibility: visible;\n font-size: 12px;\n top: 10px;\n}\n\n.jf-textfield__label {\n color: var(--color-inactive);\n padding-left: var(--side-padding);\n padding-right: var(--side-padding);\n font-size: 12px;\n left: 0;\n right: 0;\n pointer-events: none;\n position: absolute;\n display: block;\n bottom: 0;\n top: 6px;\n width: 100%;\n overflow: hidden;\n white-space: nowrap;\n text-align: left;\n transition-duration: .2s;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n box-sizing: border-box;\n}\n\n.jf-textfield--empty .jf-textfield__label {\n font-size: var(--large-font-size);\n}\n\n.jf-textfield--outlined .jf-textfield__label {\n padding-left: 4px;\n padding-right: 4px;\n font-size: 12px;\n left: var(--side-padding);\n bottom: auto;\n right: auto;\n width: auto;\n background-color: var(--form-background);\n}\n\n.jf-textfield--focused.jf-textfield--outlined .jf-textfield__label {\n top: -7px;\n font-size: 12px;\n}\n\n.jf-textfield--focused .jf-textfield__label {\n top: 6px;\n font-size: 12px;\n}\n\n.jf-textfield--outlined .jf-textfield__label {\n top: -7px;\n}\n\n.jf-textfield--outlined .jf-textfield__input {\n padding-left: var(--side-padding);\n padding-right: var(--side-padding);\n padding-top: var(--top-padding);\n padding-bottom: var(--bottom-padding);\n border-radius: 4px;\n}\n\n\n.jf-textfield--multiline {\n min-height: var(--field-height);\n height: auto;\n}\n\n.jf-textfield--multiline\n.jf-textfield__input {\n max-width: 100%;\n min-width: 100%;\n position: initial;\n margin-top: 0px;\n margin-bottom: 0px;\n padding-bottom: var(--bottom-padding);\n line-height: 18px;\n display: block;\n height: auto;\n}\n\n.jf-textfield--json textarea {\n font-family: menlo, monospace;\n}\n\n\n/*\n.jf-textfield__bottom-border {\n border-bottom: 2px solid var(--color-active);\n height: 0;\n position: absolute;\n top: 46px;\n transition: width .1s ease-in 0s;\n width: 0;\n}\n\n.jf-textfield--focused .jf-textfield__bottom-border {\n width: 100%;\n}\n*/\n\n.jf-textfield__label:after {\n background-color: var(--color-active);\n bottom: 0;\n content: '';\n height: 2px;\n left: 45%;\n position: absolute;\n transition-duration: .2s;\n transition-timing-function: cubic-bezier(.4,0,.2,1);\n visibility: hidden;\n width: 10px;\n}\n\n.jf-textfield--focused {\n cursor: auto;\n}\n\n.jf-textfield--focused .jf-textfield__label:after {\n left: 0;\n visibility: visible;\n width: 100%;\n}\n\n.jf-textfield--outlined .jf-textfield__label:after {\n background-color: transparent;\n display: none;\n}\n\n/*\n.jf-textfield:before {\n content: '';\n background-color: rgba(0,0,0,0.06);\n position: absolute;\n top: 0;\n bottom: 20px;\n width: calc(100% + 32px);\n z-index: -1;\n border-radius: 4px;\n margin-left: -16px;\n}\n*/\n\n.jf-textfield:after {\n content: '';\n position: absolute;\n width: 100%;\n height: 1px;\n bottom: 0;\n background-color: var(--color-inactive);\n /* background-color: transparent; */\n transition-duration: .2s;\n transition-timing-function: cubic-bezier(.4,0,.2,1);\n}\n\n.jf-textfield--outlined.jf-textfield:after {\n display: none;\n}\n\n.jf-textfield:after:hover {\n background-color: var(--color-inactive);\n}\n\n.jf-textfield--focused:after {\n background-color: transparent;\n}\n\n.jf-textfield:hover:after {\n background-color: #222;\n height: 2px;\n}\n\n.jf-textfield--focused:hover:after {\n background-color: transparent;\n}\n\n\n.jf-textfield__helper-text {\n}\n\n.jf-textfield svg {\n position: absolute;\n top: 10px;\n right: var(--side-padding);\n}\n\n.jf-textfield--invalid svg {\n color: var(--color-invalid);\n}\n\n.jf-textfield--has-icon .jf-textfield__input {\n padding-right: 40px;\n}\n\n\n/*\n.jf-textfield--outlined .jf-textfield__helper-text {\n padding-left: 12px;\n}\n*/\n\n.jf-textfield--outlined .jf-textfield__label:after {\n display: none;\n}\n\n\n/* INVALID */\n\n\n.jf-textfield--invalid .jf-textfield__label:after {\n background-color: var(--color-invalid);\n}\n\n.jf-textfield--invalid .jf-textfield__label {\n color: var(--color-invalid);\n -webkit-animation: shake .5s linear;\n animation: shake .5s linear;\n}\n\n.jf-textfield--invalid:after {\n background-color: var(--color-invalid) !important;\n}\n\n.jf-textfield--invalid .jf-textfield__input {\n caret-color: var(--color-invalid);\n}\n\n.jf-textfield--outlined.jf-textfield--invalid {\n box-shadow: 0 0 0 2px var(--color-invalid);\n}\n\n/* DISABLED */\n\n\n.jf-textfield--disabled {\n color: var(--color-inactive);\n background-color: #e0e0e0;\n cursor: default;\n}\n\n.jf-textfield--disabled:hover {\n background-color: #e0e0e0;\n}\n\n.jf-textfield--disabled:hover:after {\n background-color: transparent;\n}\n\n.jf-textfield--disabled:after {\n background-color: transparent;\n border-bottom: 1px dotted var(--color-inactive);\n}\n\n.jf-textfield--outlined.jf-textfield--disabled:hover {\n background: var(--form-background);\n}\n\n.jf-textfield--outlined.jf-textfield--disabled:after {\n display: none;\n}\n\n.jf-textfield--outlined.jf-textfield--disabled {\n background-color: var(--form-background);\n box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.3);\n}\n\n @-webkit-keyframes shake {\n 8%, 41% {\n -webkit-transform: translateX(-4px);\n transform: translateX(-4px);\n }\n 25%, 58% {\n -webkit-transform: translateX(4px);\n transform: translateX(4px);\n }\n 75% {\n -webkit-transform: translateX(-1px);\n transform: translateX(-1px);\n }\n 92% {\n -webkit-transform: translateX(1px);\n transform: translateX(1px);\n }\n 0%, 100% {\n -webkit-transform: translateX(0);\n transform: translateX(0);\n }\n}\n\n @keyframes shake {\n 8%, 41% {\n -webkit-transform: translateX(-4px);\n transform: translateX(-4px);\n }\n 25%, 58% {\n -webkit-transform: translateX(4px);\n transform: translateX(4px);\n }\n 75% {\n -webkit-transform: translateX(-1px);\n transform: translateX(-1px);\n }\n 92% {\n -webkit-transform: translateX(1px);\n transform: translateX(1px);\n }\n 0%, 100% {\n -webkit-transform: translateX(0);\n transform: translateX(0);\n }\n}\n","\n.jf-switch {\n width: 280px;\n max-width: 100%;\n position: relative;\n font-size: 16px;\n display: inline-block;\n box-sizing: border-box;\n margin: 0;\n padding: 20px 0;\n font-size: 16px;\n vertical-align: top;\n}\n\n.jf-switch__input {\n margin: 0;\n padding: 0;\n width: 0;\n height: 0;\n position: absolute;\n border: 0;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n opacity: 0;\n}\n\n.jf-switch__label {\n cursor: pointer;\n}\n\n.jf-switch__track {\n background-color: lightgrey;\n width: 36px;\n height: 14px;\n position: absolute;\n top: calc(50% - 7px);\n right: 0;\n border-radius: 14px;\n cursor: pointer;\n}\n\n.jf-switch__thumb {\n background-color: #fafafa;\n width: 20px;\n height: 20px;\n position: absolute;\n top: calc(50% - 10px);\n right: 18px;\n cursor: pointer;\n border-radius: 50%;\n transition-duration: .2s;\n transition-timing-function: cubic-bezier(.4,0,.2,1);\n box-shadow: 0 3px 4px 0 rgba(0,0,0,.14), 0 3px 3px -2px rgba(0,0,0,.2), 0 1px 8px 0 rgba(0,0,0,.12);\n}\n\n.jf-switch .jf-switch__thumb:after {\n background-color: lightgrey;\n content: '';\n width: 20px;\n height: 20px;\n position: absolute;\n top: calc(50% - 10px);\n left: 0px;\n opacity: 0;\n border-radius: 50%;\n transition-duration: .2s;\n transition-timing-function: cubic-bezier(.4,0,.2,1);\n}\n\n.jf-switch:hover .jf-switch__thumb:after {\n width: 40px;\n height: 40px;\n position: absolute;\n top: calc(50% - 20px);\n left: -10px;\n opacity: 0.2;\n}\n\n.jf-switch:active .jf-switch__thumb:after {\n opacity: 0.4;\n}\n\n.jf-switch--on .jf-switch__thumb:after {\n background-color: var(--color-active);\n}\n\n.jf-switch--on .jf-switch__thumb {\n right: 0;\n}\n\n.jf-switch--on .jf-switch__thumb {\n background-color: var(--color-active);\n}\n\n.jf-switch--on .jf-switch__track {\n background-color: var(--color-active--054);\n}\n\n.jf-switch__helper-text {\n max-width: calc(100% - 44px);\n font-size: 12px;\n color: rgba(0, 0, 0, 0.54);\n padding-top: 4px;\n}\n\n.jf-switch--invalid .jf-textfield__helper-text {\n color: var(--color-red--500);\n}\n\n\n.jf-switch--disabled {\n opacity: 0.54;\n}\n\n.jf-switch--disabled:hover .jf-switch__thumb:after {\n opacity: 0;\n}\n\n.jf-switch--disabled .jf-switch__label,\n.jf-switch--disabled .jf-checkbox__helper-text {\n cursor: default;\n}\n\n.jf-switch--disabled .jf-switch__thumb {\n cursor: default;\n}\n\n.jf-switch--disabled .jf-switch__track {\n cursor: default;\n}\n\n","\n.jf-checkbox {\n width: 280px;\n max-width: 100%;\n position: relative;\n font-size: 16px;\n display: inline-block;\n box-sizing: border-box;\n margin: 0;\n padding: 20px 0;\n font-size: 16px;\n vertical-align: top;\n}\n\n.jf-checkbox__input {\n margin: 0;\n padding: 0;\n width: 0;\n height: 0;\n position: absolute;\n border: 0;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n opacity: 0;\n}\n\n.jf-checkbox__label {\n cursor: pointer;\n}\n\n.jf-checkbox__box-outline {\n width: 16px;\n height: 16px;\n position: absolute;\n top: calc(50% - 8px);\n right: 2px;\n border-radius: 2px;\n border: 2px solid #0000008a;\n cursor: pointer;\n z-index: 2;\n}\n\n.jf-checkbox__tick-outline {\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n width: 100%;\n background: 0 0;\n transition-duration: .28s;\n transition-timing-function: cubic-bezier(.4,0,.2,1);\n transition-property: background;\n}\n\n\n.jf-checkbox--on .jf-checkbox__tick-outline {\n background: var(--color-active) url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgdmVyc2lvbj0iMS4xIgogICB2aWV3Qm94PSIwIDAgMSAxIgogICBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWluWU1pbiBtZWV0Ij4KICA8cGF0aAogICAgIGQ9Ik0gMC4wNDAzODA1OSwwLjYyNjc3NjcgMC4xNDY0NDY2MSwwLjUyMDcxMDY4IDAuNDI5Mjg5MzIsMC44MDM1NTMzOSAwLjMyMzIyMzMsMC45MDk2MTk0MSB6IE0gMC4yMTcxNTcyOSwwLjgwMzU1MzM5IDAuODUzNTUzMzksMC4xNjcxNTcyOSAwLjk1OTYxOTQxLDAuMjczMjIzMyAwLjMyMzIyMzMsMC45MDk2MTk0MSB6IgogICAgIGlkPSJyZWN0Mzc4MCIKICAgICBzdHlsZT0iZmlsbDojZmZmZmZmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lIiAvPgo8L3N2Zz4K);\n}\n\n\n.jf-checkbox--on .jf-checkbox__box-outline {\n border: 2px solid var(--color-active);\n}\n\n\n.jf-checkbox__helper-text {\n font-size: 12px;\n padding-top: 4px;\n padding-right: 32px;\n color: rgba(0, 0, 0, 0.54);\n}\n\n.jf-checkbox--invalid .jf-checkbox__helper-text {\n color: var(--color-red--500);\n}\n\n\n.jf-checkbox--disabled .jf-checkbox__label,\n.jf-checkbox--disabled .jf-checkbox__helper-text {\n color: var(--color-inactive);\n cursor: default;\n}\n\n.jf-checkbox--disabled .jf-checkbox__tick-outline {\n background-color: var(--color-inactive);\n}\n\n.jf-checkbox--disabled .jf-checkbox__box-outline {\n border-color: var(--color-inactive);\n cursor: default;\n}\n\n/* HOVER */\n\n.jf-checkbox__box-outline:after {\n background-color: lightgrey;\n content: '';\n width: 20px;\n height: 20px;\n position: absolute;\n top: calc(50% - 10px);\n left: calc(50% - 10px);\n opacity: 0;\n border-radius: 50%;\n transition-duration: .2s;\n transition-timing-function: cubic-bezier(.4,0,.2,1);\n}\n\n.jf-checkbox:hover .jf-checkbox__box-outline:after {\n width: 40px;\n height: 40px;\n position: absolute;\n top: calc(50% - 20px);\n left: calc(50% - 20px);\n opacity: 0.2;\n}\n\n.jf-checkbox:active .jf-checkbox__box-outline:after {\n opacity: 0.4;\n}\n\n.jf-checkbox--on .jf-checkbox__box-outline:after {\n background-color: var(--color-active);\n}\n\n.jf-checkbox--disabled:hover .jf-checkbox__box-outline:after {\n opacity: 0;\n}\n\n.jf-checkbox--disabled {\n opacity: 0.54;\n}\n\n","@import './json-form-element.css';\n@import './textfield.css';\n@import './switch.css';\n@import './checkbox.css';\n\n.array-item-add {\n padding: 16px;\n}\n\n.array-item-add .button {\n font-size: 16px;\n}\n\n.jf-object {\n}\n\n.jf-json-form {\n background: var(--form-background);\n}\n\n\n\n.jf-heading {\n font-size: 16px;\n padding: 0;\n padding-top: 20px;\n padding-bottom: 10px;\n}\n\n.jf-heading--expandable {\n cursor: pointer;\n font-size: 19px;\n margin-left: -20px;\n}\n\n.jf-heading--expandable:before {\n content: url(\"data:image/svg+xml;utf8,\");\n padding: 4px;\n}\n\n.jf-heading--expandable.jf-heading--expanded {\n}\n\n.jf-heading--expandable.jf-heading--expanded:before {\n content: url(\"data:image/svg+xml;utf8,\");\n}\n\n.jf-section--expandable {\n /* padding: var(--expandable-section-padding); */\n}\n\n.jf-section {\n padding-left: 20px;\n}\n","@import '../node_modules/@ubio/css/index.css';\n@import './app.css';\n@import './json-view.css';\n@import './tab.css';\n@import './json-viewer.css';\n@import './json-form.css';\n\n.card {\n box-shadow: 0 1px 1px 0 rgba(60,64,67,.08),0 1px 3px 1px rgba(60,64,67,.16);\n border-radius: 4px;\n overflow: hidden;\n max-width: 500px;\n}\n\n.card__title {\n font-size: 16px;\n display: block;\n padding: 10px;\n}\n"],"sourceRoot":""} \ No newline at end of file diff --git a/static/css/vendors~main.bebfd7ee.chunk.css b/static/css/vendors~main.bebfd7ee.chunk.css new file mode 100644 index 0000000..ccdf430 --- /dev/null +++ b/static/css/vendors~main.bebfd7ee.chunk.css @@ -0,0 +1,5 @@ +@import url(https://fonts.googleapis.com/css?family=Libre+Franklin:100,200,300,400,500,600,700); +@import url(https://universalbasket.github.io/css/static/fa/css/fontawesome-all.css); +applet,article,aside,audio,body,canvas,caption,details,div,embed,fieldset,figcaption,figure,footer,form,header,hgroup,html,iframe,img,ins,kbd,mark,menu,nav,object,output,q,ruby,s,samp,section,span,summary,table,tbody,td,tfoot,th,thead,time,tr,tt,var,video{margin:0;padding:0;border:0;vertical-align:baseline;box-sizing:border-box}article,aside,footer,header,section{display:block}button,input,select,textarea{font:inherit}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}:root{--font-family:"Libre Franklin",Helvetica,Arial,sans-serif;--font-weight:400;--font-size:12px;--font-size--small:10px;--font-family--mono:"Menlo",monospace;--font-weight--mono:normal;--font-size--mono:11px;--gap:10px;--gap--small:5px;--gap--large:20px;--control-height:2em;--control-height--small:1.75em;--control-border-radius:2px;--control-border-color:rgba(0,0,0,.1);--badge-height:1.75em;--body-color:var(--color-mono--800);--body-background:#fff;--ui-primary:var(--color-blue--500);--ui-primary--inverse:#fff;--ui-secondary:var(--color-cool--500);--ui-secondary--inverse:#fff;--ui-info:var(--color-blue--500);--ui-info--inverse:#fff;--ui-success:var(--color-green--500);--ui-success--inverse:#fff;--ui-warning:var(--color-yellow--500);--ui-warning--inverse:#fff;--ui-failure:var(--color-red--500);--ui-failure--inverse:#fff;--ui-production:var(--color-brand-red--500);--ui-production--inverse:#fff;--ui-staging:#829f59;--ui-staging--inverse:#fff;--color-mono--000:#fcfcfc;--color-mono--100:#f5f5f5;--color-mono--200:#ededed;--color-mono--300:#dbdbdb;--color-mono--400:#c2c2c2;--color-mono--500:#787878;--color-mono--600:#4f4f4f;--color-mono--700:#383838;--color-mono--800:#262626;--color-mono--900:#121212;--color-warm--000:#fcfcfa;--color-warm--100:#f7f7f5;--color-warm--200:#f2f2ed;--color-warm--300:#deded7;--color-warm--400:#c7c7c1;--color-warm--500:#808075;--color-warm--600:#525245;--color-warm--700:#33332b;--color-warm--800:#1f1f1c;--color-warm--900:#0d0d09;--color-cool--000:#fafbfc;--color-cool--100:#f5f7fa;--color-cool--200:#ebf0f5;--color-cool--300:#d5dfe8;--color-cool--400:#b8c8d9;--color-cool--500:#6a7f94;--color-cool--600:#364554;--color-cool--700:#26303b;--color-cool--800:#192129;--color-cool--900:#090c0f;--color-blue--000:#f5f9fa;--color-blue--100:#edf7fa;--color-blue--200:#dff1f7;--color-blue--300:#c5e2ed;--color-blue--400:#a0ccde;--color-blue--500:#489cc7;--color-blue--600:#327fa6;--color-blue--700:#1c6285;--color-blue--800:#185370;--color-blue--900:#124057;--color-green--000:#f5faf7;--color-green--100:#f0faf5;--color-green--200:#e4f5eb;--color-green--300:#cfe6d9;--color-green--400:#aed1be;--color-green--500:#6ba360;--color-green--600:#548c54;--color-green--700:#396b3f;--color-green--800:#2e5726;--color-green--900:#23421d;--color-yellow--000:#fffff2;--color-yellow--100:#ffffd9;--color-yellow--200:#fffab3;--color-yellow--300:#ffee80;--color-yellow--400:#ffde59;--color-yellow--500:#fb0;--color-yellow--600:#e69900;--color-yellow--700:#b36b00;--color-yellow--800:#8c4b00;--color-yellow--900:#663000;--color-red--000:#fcfafa;--color-red--100:#faf5f5;--color-red--200:#f7ebeb;--color-red--300:#f0d1d2;--color-red--400:#f0b4b6;--color-red--500:#d95559;--color-red--600:#b3393d;--color-red--700:#802629;--color-red--800:#661a1c;--color-red--900:#4d1315;--color-brand-red--000:snow;--color-brand-red--100:#fff5f5;--color-brand-red--200:#ffedee;--color-brand-red--300:#ffd6d8;--color-brand-red--400:#ffb3b5;--color-brand-red--500:#ff5a5f;--color-brand-red--600:#e6353b;--color-brand-red--700:#c72227;--color-brand-red--800:#a12024;--color-brand-red--900:#871b1f;--color-brand-blue--000:#f7feff;--color-brand-blue--100:#f0fdff;--color-brand-blue--200:#e1f7fa;--color-brand-blue--300:#c2eaf0;--color-brand-blue--400:#9dd9e0;--color-brand-blue--500:#27b9cc;--color-brand-blue--600:#0c8999;--color-brand-blue--700:#0d626e;--color-brand-blue--800:#09545e;--color-brand-blue--900:#073e45}a,abbr,acronym,address,b,big,blockquote,cite,code,dd,del,dfn,dl,dt,em,h1,h2,h3,h4,h5,h6,i,label,legend,li,ol,p,pre,small,strike,strong,sub,sup,u,ul{margin:0;padding:0;border:0;vertical-align:baseline;box-sizing:border-box}p{margin:var(--gap) 0;font-size:12px;line-height:1.35}a{cursor:pointer;color:var(--ui-primary)}a,a:hover{text-decoration:none}p a{color:var(--ui-prod);text-decoration:underline}b{font-weight:700}strong{font-weight:500}h1{font-size:26px;font-weight:100}h1,h2{line-height:1;margin:var(--gap--large) 0}h2{font-size:21px;font-weight:200}h3{font-size:18px;font-weight:300}h3,h4{line-height:1;margin:var(--gap--large) 0 var(--gap)}h4{font-size:13px;font-weight:400;color:var(--color-cool--500);text-transform:uppercase}h5{font-size:130%;line-height:1.5}h5,h6{font-weight:400;margin:var(--gap) 0}h6{font-size:12px;line-height:1.25;text-transform:uppercase;color:var(--color-cool--500)}small{line-height:1;font-size:80%}body,html{height:100%}body{font-family:var(--font-family);font-size:var(--font-size);line-height:1;background:var(--body-background);color:var(--body-color)}ol,ul{list-style:none}hr{margin:var(--gap) 0;border:1px dashed var(--color-warm--300);border-width:1px 0 0}table{border-collapse:collapse;border-spacing:0}code,pre,time{font-family:var(--font-family--mono);font-size:var(--font-size--mono);line-height:var(--font__line-height--mono);word-wrap:break-word;word-break:break-word}img{max-width:100%}input[type=checkbox],input[type=radio]{display:inline-block;height:auto;vertical-align:middle;margin:0}input,textarea{font-family:var(--font-family);font-size:var(--font-size);border:1px solid var(--control-border-color);border-radius:var(--control-border-radius)}input[readonly],textarea[readonly]{background:var(--color-warm--100)}select{border:0;box-shadow:0 0 0 1px var(--control-border-color);font-family:var(--font-family)}select[multiple]{height:auto}.button,button{cursor:pointer}.button{display:inline-flex;align-items:center;align-self:center;box-sizing:border-box;height:var(--control-height);padding:0 var(--gap);border-radius:var(--control-border-radius);border:1px solid rgba(0,0,0,.1);background:transparent;color:inherit;font-size:var(--font-size);font-family:var(--font-family);line-height:1;text-align:center;letter-spacing:.025em;white-space:nowrap}.button,.button:hover{text-decoration:none}.button--active,.button:active{box-shadow:inset 0 3px 8px rgba(0,0,0,.2);border-color:rgba(0,0,0,.2)}.button__icon{color:inherit;margin-right:var(--gap--small);text-align:center}.button--small{height:var(--control-height--small);padding:2px 4px;font-size:var(--font-size--small)}.button--large{font-size:18px;padding:8px 15px;border-radius:calc(var(--control-border-radius) * 1.5)}.button--primary{background:var(--ui-primary);color:var(--ui-primary--inverse)}.button--secondary{background:var(--ui-secondary);color:var(--ui-secondary--inverse)}.button--outlined-primary{color:var(--ui-primary);border:1px solid var(--ui-primary);background:#fff}.button--outlined-secondary{color:var(--ui-secondary);border:1px solid var(--ui-secondary);background:#fff}.button[disabled]{background:var(--color-mono--400);color:#fff;cursor:not-allowed;pointer-events:none}.input{display:inline-flex;box-sizing:border-box;padding:0 var(--gap--small);height:var(--control-height);border-radius:var(--control-border-radius);border:1px solid rgba(0,0,0,.1);box-shadow:none;font-family:var(--font-family);font-size:var(--font-size);line-height:1;letter-spacing:.025em;cursor:pointer}.input--block{display:block;width:100%}.input[disabled]{opacity:.5;cursor:not-allowed;pointer-events:none}.input--small{height:var(--control-height--small);padding:2px 4px;font-size:var(--font-size--small)}textarea.input{height:auto;line-height:1.35}.group{display:inline-flex;align-items:center;flex-wrap:nowrap}.group--block{display:flex}.group--gap>*+*{margin-left:var(--gap)}.group--gap-small>*+*{margin-left:var(--gap--small)}.group--merged{flex-wrap:nowrap;align-items:stretch;white-space:nowrap}.group--merged>:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.group--merged>*+*{margin-left:-1px;border-top-left-radius:0;border-bottom-left-radius:0}.group--separated{display:flex;justify-content:space-between}.block{margin:var(--gap) 0}.block--small{margin:var(--gap--small) 0}.block--large{margin:var(--gap--large) 0}.tabs{--slider-size:2px;display:flex;align-items:baseline;list-style:none;margin:0}.tabs,.tabs__item{border-bottom:var(--slider-size) solid var(--color-warm--100)}.tabs__item{position:relative;top:var(--slider-size);padding:var(--gap);margin:0 var(--gap--small) 0 0;color:inherit;font-size:13px;font-weight:300;text-decoration:none}.tabs__item:after{content:"";position:absolute;display:block;bottom:calc(-1 * var(--slider-size));left:0;height:var(--slider-size);width:0;background:transparent;border-radius:var(--slider-size);transition:width .4s}.tabs__item--active{font-weight:500}.tabs__item--active:after{background:var(--ui-primary);width:100%}.tab{padding:var(--gap)}.badge{display:inline-block;padding:4px;height:var(--badge-height);box-sizing:border-box;border-radius:var(--control-border-radius);text-align:center;white-space:nowrap;font-size:10px}.badge--round{min-width:2em;padding:4px 6px;border-radius:2em}.badge--info{background:var(--ui-info);color:var(--ui-info--inverse)}.badge--success{background:var(--ui-success);color:var(--ui-success--inverse)}.badge--warning{background:var(--ui-warning);color:var(--ui-warning--inverse)}.badge--failure{background:var(--ui-failure);color:var(--ui-failure--inverse)}.badge--outlined-info{box-shadow:0 0 0 1px var(--ui-info) inset;color:var(--ui-info);background:transparent}.badge--outlined-success{box-shadow:0 0 0 1px var(--ui-success) inset;color:var(--ui-success);background:transparent}.badge--outlined-warning{box-shadow:0 0 0 1px var(--ui-warning) inset;color:var(--ui-warning);background:transparent}.badge--outlined-failure{box-shadow:0 0 0 1px var(--ui-failure) inset;color:var(--ui-failure);background:transparent}.badge--staging{background:var(--ui-staging);color:var(--ui-staging--inverse)}.badge--production{background:var(--ui-production);color:var(--ui-production--inverse)} + +/*# sourceMappingURL=vendors~main.bebfd7ee.chunk.css.map*/ \ No newline at end of file diff --git a/static/css/vendors~main.bebfd7ee.chunk.css.map b/static/css/vendors~main.bebfd7ee.chunk.css.map new file mode 100644 index 0000000..1a361db --- /dev/null +++ b/static/css/vendors~main.bebfd7ee.chunk.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["../node_modules/@ubio/css/index.css"],"names":[],"mappings":";;AAMA,gQAMI,SACA,UACA,SACA,wBACA,qBAAuB,CAE3B,oCACI,aAAe,CAEnB,6BACI,YAAc,CAElB,8EAEI,aAAe,CAEnB,aACI,WAAa,CAEjB,oDAEI,WACA,YAAc,CAElB,MAII,0DACA,kBACA,iBACA,wBAEA,sCACA,2BACA,uBAIA,WACA,iBACA,kBAIA,qBACA,+BACA,4BACA,sCAEA,sBAEA,oCACA,uBAIA,oCACA,2BAEA,sCACA,6BAEA,iCACA,wBAEA,qCACA,2BAEA,sCACA,2BAEA,mCACA,2BAEA,4CACA,8BAEA,qBACA,2BAIA,0BACA,0BACA,0BACA,0BACA,0BACA,0BACA,0BACA,0BACA,0BACA,0BAEA,0BACA,0BACA,0BACA,0BACA,0BACA,0BACA,0BACA,0BACA,0BACA,0BAEA,0BACA,0BACA,0BACA,0BACA,0BACA,0BACA,0BACA,0BACA,0BACA,0BAEA,0BACA,0BACA,0BACA,0BACA,0BACA,0BACA,0BACA,0BACA,0BACA,0BAEA,2BACA,2BACA,2BACA,2BACA,2BACA,2BACA,2BACA,2BACA,2BACA,2BAEA,4BACA,4BACA,4BACA,4BACA,4BACA,yBACA,4BACA,4BACA,4BACA,4BAEA,yBACA,yBACA,yBACA,yBACA,yBACA,yBACA,yBACA,yBACA,yBACA,yBAEA,4BACA,+BACA,+BACA,+BACA,+BACA,+BACA,+BACA,+BACA,+BACA,+BAEA,gCACA,gCACA,gCACA,gCACA,gCACA,gCACA,gCACA,gCACA,gCACA,+BAAiC,CAGrC,oJAGI,SACA,UACA,SACA,wBACA,qBAAuB,CAE3B,EACI,oBACA,eACA,gBAAkB,CAEtB,EACI,eACA,uBAAyB,CAG7B,UAFI,oBAAsB,CAK1B,IACI,qBACA,yBAA2B,CAE/B,EACI,eAAiB,CAErB,OACI,eAAiB,CAErB,GACI,eAEA,eAAiB,CAGrB,MAJI,cAEA,0BAA4B,CAO/B,GAJG,eAEA,eAAiB,CAGrB,GACI,eAEA,eAAiB,CAGrB,MAJI,cAEA,qCAAuC,CAS1C,GANG,eAEA,gBAEA,6BACA,wBAA0B,CAE9B,GACI,eACA,eAAiB,CAIrB,MAHI,gBACA,mBAAqB,CASxB,GANG,eACA,iBAGA,yBACA,4BAA8B,CAElC,MACI,cACA,aAAe,CAEnB,UACI,WAAa,CAEjB,KACI,+BACA,2BACA,cACA,kCACA,uBAAyB,CAE7B,MACI,eAAiB,CAErB,GACI,oBACA,yCACA,oBAAwB,CAE5B,MACI,yBACA,gBAAkB,CAEtB,cACI,qCACA,iCACA,2CACA,qBACA,qBAAuB,CAE3B,IACI,cAAgB,CAEpB,uCAEI,qBACA,YACA,sBACA,QAAU,CAEd,eAEI,+BACA,2BACA,6CACA,0CAA4C,CAEhD,mCAEI,iCAAmC,CAEvC,OACI,SACA,iDACA,8BAAgC,CAEpC,iBACI,WAAa,CAKjB,eAFI,cAAgB,CA0BnB,QAvBG,oBACA,mBACA,kBAEA,sBACA,6BACA,qBAEA,2CACA,gCACA,uBACA,cAEA,2BACA,+BAEA,cAEA,kBACA,sBACA,kBAAoB,CAIxB,sBAPI,oBAAsB,CAU1B,+BACI,0CACA,2BAA6B,CAEjC,cACI,cACA,+BACA,iBAAmB,CAGvB,eACI,oCACA,gBACA,iCAAmC,CAEvC,eACI,eACA,iBACA,sDAAwD,CAG5D,iBACI,6BACA,gCAAkC,CAEtC,mBACI,+BACA,kCAAoC,CAExC,0BACI,wBACA,mCACA,eAAiB,CAErB,4BACI,0BACA,qCACA,eAAiB,CAGrB,kBACI,kCACA,WACA,mBACA,mBAAqB,CAEzB,OACI,oBACA,sBACA,4BACA,6BACA,2CACA,gCACA,gBAEA,+BACA,2BACA,cACA,sBAEA,cAAgB,CAEpB,cACI,cACA,UAAY,CAEhB,iBACI,WACA,mBACA,mBAAqB,CAEzB,cACI,oCACA,gBACA,iCAAmC,CAEvC,eACI,YACA,gBAAkB,CAEtB,OACI,oBACA,mBACA,gBAAkB,CAEtB,cACI,YAAc,CAElB,gBACI,sBAAwB,CAE5B,sBACI,6BAA+B,CAEnC,eACI,iBACA,oBACA,kBAAoB,CAExB,iCACI,0BACA,4BAA8B,CAElC,mBACI,iBACA,yBACA,2BAA6B,CAEjC,kBACI,aACA,6BAA+B,CAEnC,OACI,mBAAqB,CAEzB,cACI,0BAA4B,CAEhC,cACI,0BAA4B,CAEhC,MACI,kBAEA,aACA,qBACA,gBAEA,QAAU,CAEd,kBAHI,6DAA+D,CAalE,YATG,kBACA,uBACA,mBACA,+BAEA,cACA,eACA,gBACA,oBAAsB,CAE1B,kBACI,WACA,kBACA,cACA,qCACA,OACA,0BACA,QACA,uBACA,iCACA,oBAAuB,CAE3B,oBACI,eAAiB,CAErB,0BACI,6BACA,UAAY,CAEhB,KACI,kBAAoB,CAExB,OACI,qBACA,YACA,2BACA,sBACA,2CAEA,kBACA,mBACA,cAAgB,CAEpB,cACI,cACA,gBACA,iBAAmB,CAEvB,aACI,0BACA,6BAA+B,CAEnC,gBACI,6BACA,gCAAkC,CAEtC,gBACI,6BACA,gCAAkC,CAEtC,gBACI,6BACA,gCAAkC,CAEtC,sBACI,0CACA,qBACA,sBAAwB,CAE5B,yBACI,6CACA,wBACA,sBAAwB,CAE5B,yBACI,6CACA,wBACA,sBAAwB,CAE5B,yBACI,6CACA,wBACA,sBAAwB,CAE5B,gBACI,6BACA,gCAAkC,CAEtC,mBACI,gCACA,mCAAqC,C","file":"static/css/vendors~main.bebfd7ee.chunk.css","sourcesContent":["@import \"https://fonts.googleapis.com/css?family=Libre+Franklin:100,200,300,400,500,600,700\";\n@import \"https://universalbasket.github.io/css/static/fa/css/fontawesome-all.css\";\n/* http://meyerweb.com/eric/tools/css/reset/\n v2.0 | 20110126\n License: none (public domain)\n*/\nhtml, body, div, span, applet, object, iframe, img, ins, kbd, q, s, samp, tt, var,\nfieldset, form, table, caption, tbody, tfoot, thead, tr, th, td,\narticle, aside, canvas, details, embed,\nfigure, figcaption, footer, header, hgroup,\nmenu, nav, output, ruby, section, summary,\ntime, mark, audio, video {\n margin: 0;\n padding: 0;\n border: 0;\n vertical-align: baseline;\n box-sizing: border-box;\n}\narticle, aside, footer, header, section {\n display: block;\n}\ninput, textarea, button, select {\n font: inherit;\n}\narticle, aside, details, figcaption, figure,\nfooter, header, hgroup, menu, nav, section {\n display: block;\n}\nblockquote, q {\n quotes: none;\n}\nblockquote:before, blockquote:after,\nq:before, q:after {\n content: '';\n content: none;\n}\n:root {\n\n /* Typography */\n\n --font-family: 'Libre Franklin', Helvetica, Arial, sans-serif;\n --font-weight: 400;\n --font-size: 12px;\n --font-size--small: 10px;\n\n --font-family--mono: 'Menlo', monospace;\n --font-weight--mono: normal;\n --font-size--mono: 11px;\n\n /* Gaps */\n\n --gap: 10px;\n --gap--small: 5px;\n --gap--large: 20px;\n\n /* Base components */\n\n --control-height: 2em;\n --control-height--small: 1.75em;\n --control-border-radius: 2px;\n --control-border-color: rgba(0,0,0,0.1);\n\n --badge-height: 1.75em;\n\n --body-color: var(--color-mono--800);\n --body-background: #fff;\n\n /* UI Colours */\n\n --ui-primary: var(--color-blue--500);\n --ui-primary--inverse: #fff;\n\n --ui-secondary: var(--color-cool--500);\n --ui-secondary--inverse: #fff;\n\n --ui-info: var(--color-blue--500);\n --ui-info--inverse: #fff;\n\n --ui-success: var(--color-green--500);\n --ui-success--inverse: #fff;\n\n --ui-warning: var(--color-yellow--500);\n --ui-warning--inverse: #fff;\n\n --ui-failure: var(--color-red--500);\n --ui-failure--inverse: #fff;\n\n --ui-production: var(--color-brand-red--500);\n --ui-production--inverse: #fff;\n\n --ui-staging: #829F59;\n --ui-staging--inverse: #fff;\n\n /* Color Palette */\n\n --color-mono--000: #FCFCFC;\n --color-mono--100: #F5F5F5;\n --color-mono--200: #EDEDED;\n --color-mono--300: #DBDBDB;\n --color-mono--400: #C2C2C2;\n --color-mono--500: #787878;\n --color-mono--600: #4F4F4F;\n --color-mono--700: #383838;\n --color-mono--800: #262626;\n --color-mono--900: #121212;\n\n --color-warm--000: #FCFCFA;\n --color-warm--100: #f7f7f5;\n --color-warm--200: #F2F2ED;\n --color-warm--300: #DEDED7;\n --color-warm--400: #C7C7C1;\n --color-warm--500: #808075;\n --color-warm--600: #525245;\n --color-warm--700: #33332B;\n --color-warm--800: #1F1F1C;\n --color-warm--900: #0D0D09;\n\n --color-cool--000: #FAFBFC;\n --color-cool--100: #F5F7FA;\n --color-cool--200: #EBF0F5;\n --color-cool--300: #D5DFE8;\n --color-cool--400: #B8C8D9;\n --color-cool--500: #6A7F94;\n --color-cool--600: #364554;\n --color-cool--700: #26303B;\n --color-cool--800: #192129;\n --color-cool--900: #090C0F;\n\n --color-blue--000: #F5F9FA;\n --color-blue--100: #EDF7FA;\n --color-blue--200: #DFF1F7;\n --color-blue--300: #C5E2ED;\n --color-blue--400: #A0CCDE;\n --color-blue--500: #489CC7;\n --color-blue--600: #327FA6;\n --color-blue--700: #1C6285;\n --color-blue--800: #185370;\n --color-blue--900: #124057;\n\n --color-green--000: #F5FAF7;\n --color-green--100: #F0FAF5;\n --color-green--200: #E4F5EB;\n --color-green--300: #CFE6D9;\n --color-green--400: #AED1BE;\n --color-green--500: #6BA360;\n --color-green--600: #548C54;\n --color-green--700: #396B3F;\n --color-green--800: #2E5726;\n --color-green--900: #23421D;\n\n --color-yellow--000: #FFFFF2;\n --color-yellow--100: #FFFFD9;\n --color-yellow--200: #FFFAB3;\n --color-yellow--300: #FFEE80;\n --color-yellow--400: #FFDE59;\n --color-yellow--500: #FFBB00;\n --color-yellow--600: #E69900;\n --color-yellow--700: #B36B00;\n --color-yellow--800: #8C4B00;\n --color-yellow--900: #663000;\n\n --color-red--000: #FCFAFA;\n --color-red--100: #FAF5F5;\n --color-red--200: #F7EBEB;\n --color-red--300: #F0D1D2;\n --color-red--400: #F0B4B6;\n --color-red--500: #D95559;\n --color-red--600: #B3393D;\n --color-red--700: #802629;\n --color-red--800: #661A1C;\n --color-red--900: #4D1315;\n\n --color-brand-red--000: #FFFAFA;\n --color-brand-red--100: #FFF5F5;\n --color-brand-red--200: #FFEDEE;\n --color-brand-red--300: #FFD6D8;\n --color-brand-red--400: #FFB3B5;\n --color-brand-red--500: #FF5A5F;\n --color-brand-red--600: #E6353B;\n --color-brand-red--700: #C72227;\n --color-brand-red--800: #A12024;\n --color-brand-red--900: #871B1F;\n\n --color-brand-blue--000: #F7FEFF;\n --color-brand-blue--100: #F0FDFF;\n --color-brand-blue--200: #E1F7FA;\n --color-brand-blue--300: #C2EAF0;\n --color-brand-blue--400: #9DD9E0;\n --color-brand-blue--500: #27B9CC;\n --color-brand-blue--600: #0C8999;\n --color-brand-blue--700: #0D626E;\n --color-brand-blue--800: #09545E;\n --color-brand-blue--900: #073E45;\n\n}\nh1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big,\ncite, code, del, dfn, em, small, strike, strong, sub, sup, b, u, i,\ndl, dt, dd, ol, ul, li, label, legend {\n margin: 0;\n padding: 0;\n border: 0;\n vertical-align: baseline;\n box-sizing: border-box;\n}\np {\n margin: var(--gap) 0;\n font-size: 12px;\n line-height: 1.35;\n}\na {\n cursor: pointer;\n color: var(--ui-primary);\n text-decoration: none;\n}\na:hover {\n text-decoration: none;\n}\np a {\n color: var(--ui-prod);\n text-decoration: underline;\n}\nb {\n font-weight: 700;\n}\nstrong {\n font-weight: 500;\n}\nh1 {\n font-size: 26px;\n line-height: 1;\n font-weight: 100;\n margin: var(--gap--large) 0;\n}\nh2 {\n font-size: 21px;\n line-height: 1;\n font-weight: 200;\n margin: var(--gap--large) 0;\n}\nh3 {\n font-size: 18px;\n line-height: 1;\n font-weight: 300;\n margin: var(--gap--large) 0 var(--gap);\n}\nh4 {\n font-size: 13px;\n line-height: 1;\n font-weight: 400;\n margin: var(--gap--large) 0 var(--gap);\n color: var(--color-cool--500);\n text-transform: uppercase;\n}\nh5 {\n font-size: 130%;\n line-height: 1.5;\n font-weight: 400;\n margin: var(--gap) 0;\n}\nh6 {\n font-size: 12px;\n line-height: 1.25;\n font-weight: 400;\n margin: var(--gap) 0;\n text-transform: uppercase;\n color: var(--color-cool--500);\n}\nsmall {\n line-height: 1;\n font-size: 80%;\n}\nhtml, body {\n height: 100%;\n}\nbody {\n font-family: var(--font-family);\n font-size: var(--font-size);\n line-height: 1;\n background: var(--body-background);\n color: var(--body-color);\n}\nol, ul {\n list-style: none;\n}\nhr {\n margin: var(--gap) 0;\n border: 1px dashed var(--color-warm--300);\n border-width: 1px 0 0 0;\n}\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\ntime, code, pre {\n font-family: var(--font-family--mono);\n font-size: var(--font-size--mono);\n line-height: var(--font__line-height--mono);\n word-wrap: break-word;\n word-break: break-word;\n}\nimg {\n max-width: 100%;\n}\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n display: inline-block;\n height: auto;\n vertical-align: middle;\n margin: 0;\n}\ninput,\ntextarea {\n font-family: var(--font-family);\n font-size: var(--font-size);\n border: 1px solid var(--control-border-color);\n border-radius: var(--control-border-radius);\n}\ninput[readonly],\ntextarea[readonly] {\n background: var(--color-warm--100);\n}\nselect {\n border: 0;\n box-shadow: 0 0 0 1px var(--control-border-color);\n font-family: var(--font-family);\n}\nselect[multiple] {\n height: auto;\n}\nbutton {\n cursor: pointer;\n}\n.button {\n display: inline-flex;\n align-items: center;\n align-self: center;\n\n box-sizing: border-box;\n height: var(--control-height);\n padding: 0 var(--gap);\n\n border-radius: var(--control-border-radius);\n border: 1px solid rgba(0,0,0,0.1);\n background: transparent;\n color: inherit;\n\n font-size: var(--font-size);\n font-family: var(--font-family);\n\n line-height: 1;\n text-decoration: none;\n text-align: center;\n letter-spacing: 0.025em;\n white-space: nowrap;\n\n cursor: pointer;\n}\n.button:hover {\n text-decoration: none;\n}\n.button--active, .button:active {\n box-shadow: 0 3px 8px rgba(0,0,0,.2) inset;\n border-color: rgba(0,0,0,.2);\n}\n.button__icon {\n color: inherit;\n margin-right: var(--gap--small);\n text-align: center;\n}\n/* Sizes */\n.button--small {\n height: var(--control-height--small);\n padding: 2px 4px;\n font-size: var(--font-size--small);\n}\n.button--large {\n font-size: 18px;\n padding: 8px 15px;\n border-radius: calc(var(--control-border-radius) * 1.5);\n}\n/* Colors */\n.button--primary {\n background: var(--ui-primary);\n color: var(--ui-primary--inverse);\n}\n.button--secondary {\n background: var(--ui-secondary);\n color: var(--ui-secondary--inverse);\n}\n.button--outlined-primary {\n color: var(--ui-primary);\n border: 1px solid var(--ui-primary);\n background: #fff;\n}\n.button--outlined-secondary {\n color: var(--ui-secondary);\n border: 1px solid var(--ui-secondary);\n background: #fff;\n}\n/* Disabled */\n.button[disabled] {\n background: var(--color-mono--400);\n color: #fff;\n cursor: not-allowed;\n pointer-events: none;\n}\n.input {\n display: inline-flex;\n box-sizing: border-box;\n padding: 0 var(--gap--small);\n height: var(--control-height);\n border-radius: var(--control-border-radius);\n border: 1px solid rgba(0,0,0,0.1);\n box-shadow: none;\n\n font-family: var(--font-family);\n font-size: var(--font-size);\n line-height: 1;\n letter-spacing: 0.025em;\n\n cursor: pointer;\n}\n.input--block {\n display: block;\n width: 100%;\n}\n.input[disabled] {\n opacity: 0.5;\n cursor: not-allowed;\n pointer-events: none;\n}\n.input--small {\n height: var(--control-height--small);\n padding: 2px 4px;\n font-size: var(--font-size--small);\n}\ntextarea.input {\n height: auto;\n line-height: 1.35;\n}\n.group {\n display: inline-flex;\n align-items: center;\n flex-wrap: nowrap;\n}\n.group--block {\n display: flex;\n}\n.group--gap > * + * {\n margin-left: var(--gap);\n}\n.group--gap-small > * + * {\n margin-left: var(--gap--small);\n}\n.group--merged {\n flex-wrap: nowrap;\n align-items: stretch;\n white-space: nowrap;\n}\n.group--merged > *:not(:last-child) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.group--merged > * + * {\n margin-left: -1px;\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.group--separated {\n display: flex;\n justify-content: space-between;\n}\n.block {\n margin: var(--gap) 0;\n}\n.block--small {\n margin: var(--gap--small) 0;\n}\n.block--large {\n margin: var(--gap--large) 0;\n}\n.tabs {\n --slider-size: 2px;\n\n display: flex;\n align-items: baseline;\n list-style: none;\n border-bottom: var(--slider-size) solid var(--color-warm--100);\n margin: 0;\n}\n.tabs__item {\n position: relative;\n top: var(--slider-size);\n padding: var(--gap);\n margin: 0 var(--gap--small) 0 0;\n border-bottom: var(--slider-size) solid var(--color-warm--100);\n color: inherit;\n font-size: 13px;\n font-weight: 300;\n text-decoration: none;\n}\n.tabs__item:after {\n content: '';\n position: absolute;\n display: block;\n bottom: calc(-1 * var(--slider-size));\n left: 0;\n height: var(--slider-size);\n width: 0%;\n background: transparent;\n border-radius: var(--slider-size);\n transition: width 0.4s;\n}\n.tabs__item--active {\n font-weight: 500;\n}\n.tabs__item--active:after {\n background: var(--ui-primary);\n width: 100%;\n}\n.tab {\n padding: var(--gap);\n}\n.badge {\n display: inline-block;\n padding: 4px;\n height: var(--badge-height);\n box-sizing: border-box;\n border-radius: var(--control-border-radius);\n\n text-align: center;\n white-space: nowrap;\n font-size: 10px;\n}\n.badge--round {\n min-width: 2em;\n padding: 4px 6px;\n border-radius: 2em;\n}\n.badge--info {\n background: var(--ui-info);\n color: var(--ui-info--inverse);\n}\n.badge--success {\n background: var(--ui-success);\n color: var(--ui-success--inverse);\n}\n.badge--warning {\n background: var(--ui-warning);\n color: var(--ui-warning--inverse);\n}\n.badge--failure {\n background: var(--ui-failure);\n color: var(--ui-failure--inverse);\n}\n.badge--outlined-info {\n box-shadow: 0 0 0 1px var(--ui-info) inset;\n color: var(--ui-info);\n background: transparent;\n}\n.badge--outlined-success {\n box-shadow: 0 0 0 1px var(--ui-success) inset;\n color: var(--ui-success);\n background: transparent;\n}\n.badge--outlined-warning {\n box-shadow: 0 0 0 1px var(--ui-warning) inset;\n color: var(--ui-warning);\n background: transparent;\n}\n.badge--outlined-failure {\n box-shadow: 0 0 0 1px var(--ui-failure) inset;\n color: var(--ui-failure);\n background: transparent;\n}\n.badge--staging {\n background: var(--ui-staging);\n color: var(--ui-staging--inverse);\n}\n.badge--production {\n background: var(--ui-production);\n color: var(--ui-production--inverse);\n}\n"],"sourceRoot":""} \ No newline at end of file diff --git a/static/js/main.2c571f6e.chunk.js b/static/js/main.2c571f6e.chunk.js new file mode 100644 index 0000000..b297cf7 --- /dev/null +++ b/static/js/main.2c571f6e.chunk.js @@ -0,0 +1,2 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[0],[,function(n,r,t){t(2),n.exports=t(11)},,,,,,,,function(){},function(){!function(n){"use strict";function r(n,r,t){return t.a=n,t.f=r,t}function t(n){return r(2,n,function(r){return function(t){return n(r,t)}})}function e(n){return r(3,n,function(r){return function(t){return function(e){return n(r,t,e)}}})}function u(n){return r(4,n,function(r){return function(t){return function(e){return function(u){return n(r,t,e,u)}}}})}function i(n){return r(5,n,function(r){return function(t){return function(e){return function(u){return function(i){return n(r,t,e,u,i)}}}}})}function a(n){return r(6,n,function(r){return function(t){return function(e){return function(u){return function(i){return function(a){return n(r,t,e,u,i,a)}}}}}})}function o(n,r,t){return 2===n.a?n.f(r,t):n(r)(t)}function f(n,r,t,e){return 3===n.a?n.f(r,t,e):n(r)(t)(e)}function c(n,r,t,e,u){return 4===n.a?n.f(r,t,e,u):n(r)(t)(e)(u)}function s(n,r,t,e,u,i){return 5===n.a?n.f(r,t,e,u,i):n(r)(t)(e)(u)(i)}function l(n,r,t,e,u,i,a){return 6===n.a?n.f(r,t,e,u,i,a):n(r)(t)(e)(u)(i)(a)}var b=e(function(n,r,t){for(var e=Array(n),u=0;u100)return e.push(I(n,r)),!0;if(n===r)return!0;if("object"!==typeof n||null===n||null===r)return"function"===typeof n&&w(5),!1;for(var u in n.$<0&&(n=Tr(n),r=Tr(r)),n)if(!j(n[u],r[u],t+1,e))return!1;return!0}var k=t(x);function N(n,r,t){if("object"!==typeof n)return n===r?0:na||a>56319||(i+=t[u],u++),r=o(n,E(i),r)}return r}),S=t(function(n,r){return r.split(n)}),q=t(function(n,r){return r.join(n)}),R=e(function(n,r,t){return t.slice(n,r)}),F=t(function(n,r){for(var t=r.length;t--;){var e=r[t],u=r.charCodeAt(t);if(56320>u||u>57343||(e=r[--t]+e),!n(E(e)))return!1}return!0}),B=t(function(n,r){return r.indexOf(n)>-1}),V=t(function(n,r){return 0===r.indexOf(n)}),W=t(function(n,r){return r.length>=n.length&&r.lastIndexOf(n)===r.length-n.length}),J=t(function(n,r){var t=n.length;if(t<1)return v;for(var e=0,u=[];(e=r.indexOf(n,e))>-1;)u.push(e),e+=t;return h(u)});function Y(n){return n+""}var z=t(function(n,r){return{$:10,d:n,b:r}});function K(n,r){return{$:13,f:n,g:r}}var G=t(function(n,r){return{$:14,b:r,h:n}}),H=t(function(n,r){return K(n,[r])}),Z=e(function(n,r,t){return K(n,[r,t])}),U=u(function(n,r,t,e){return K(n,[r,t,e])}),X=i(function(n,r,t,e,u){return K(n,[r,t,e,u])}),Q=t(function(n,r){try{return rn(n,JSON.parse(r))}catch(n){return ut(o(ot,"This is not valid JSON! "+n.message,cn(r)))}}),nn=t(function(n,r){return rn(n,sn(r))});function rn(n,r){switch(n.$){case 3:return"boolean"===typeof r?it(r):un("a BOOL",r);case 2:return"number"!==typeof r?un("an INT",r):-21474836470&&Xn(t,1,e,s));case 4:for(var l=n.j,b=r.j,d=!1,v=n.k;4===v.$;)d=!0,"object"!==typeof l?l=[l,v.j]:l.push(v.j),v=v.k;for(var p=r.k;4===p.$;)d=!0,"object"!==typeof b?b=[b,p.j]:b.push(p.j),p=p.k;return d&&l.length!==b.length?void Xn(t,0,e,r):((d?function(n,r){for(var t=0;to?Xn(t,6,e,{v:o,i:a-o}):a0||a.length>0||A)&&Xn(t,8,e,{w:u,x:a,y:A})}var ur="_elmW6BL";function ir(n,r,t,e,u,i){var a=n[t];if(!a)return i.push({r:u,A:a={c:0,z:e,r:u,s:void 0}}),void(n[t]=a);if(1===a.c){i.push({r:u,A:a}),a.c=2;var o=[];return Qn(a.z,e,o,a.r),a.r=u,void(a.s.s={w:o,A:a})}ir(n,r,t+ur,e,u,i)}function ar(n,r,t,e,u){var i=n[t];if(i){if(0===i.c){i.c=2;var a=[];return Qn(e,i.z,a,u),void Xn(r,9,u,{w:a,A:i})}ar(n,r,t+ur,e,u)}else{var o=Xn(r,9,u,void 0);n[t]={c:1,z:e,r:u,s:o}}}function or(n,r,t,e){return 0===t.length?n:(function n(r,t,e,u){!function r(t,e,u,i,a,o,f){for(var c=u[i],s=c.r;s===a;){var l=c.$;if(1===l)n(t,e.k,c.s,f);else if(8===l)c.t=t,c.u=f,(b=c.s.w).length>0&&r(t,e,b,0,a,o,f);else if(9===l){c.t=t,c.u=f;var b,d=c.s;d&&(d.A.s=t,(b=d.w).length>0&&r(t,e,b,0,a,o,f))}else c.t=t,c.u=f;if(!(c=u[++i])||(s=c.r)>o)return i}var v=e.$;if(4===v){for(var p=e.k;4===p.$;)p=p.k;return r(t,p,u,i,a+1,o,t.elm_event_node_ref)}for(var m=e.e,h=t.childNodes,$=0;$o))return i;a=y}return i}(r,t,e,0,0,t.b,u)}(n,r,t,e),fr(n,t))}function fr(n,r){for(var t=0;t=n)return r;for(var e=arguments.length-3,i=Array(e);e>0;){var a=arguments[e];i[--e]=a?et(a):xr}return t(c(ai,r,arguments[arguments.length-2],u,h(i)))})}),yr=function(n){return{$:2,a:n}},wr=t(function(n,r){return{$:1,a:n,b:r}}),xr={$:1},jr={bk:!1,bo:!1,a4:xr,bb:xr},kr=u(function(n,r,t,e){return{bk:e,bo:t,a4:r,bb:n}}),Nr=t(function(n,r){return{$:1,a:n,b:r}}),_r=t(function(n,r){return{$:0,a:n,b:r}}),Ir=t(function(n,r){return{$:3,a:n,b:r}}),Ar=t(function(n,r){return{$:2,a:n,b:r}}),Er=t(function(n,r){return r(n)}),Or=1,Pr=0,Lr=m,Cr=2,Mr=e(function(n,r,t){for(;;){if(-2===t.$)return r;var e=t.d,u=n,i=f(n,t.b,t.c,f(Mr,n,r,t.e));n=u,r=i,t=e}}),Tr=function(n){return f(Mr,e(function(n,r,t){return o(Lr,I(n,r),t)}),v,n)},Dr=k,Sr=u(function(n,r,t,e){return{$:0,a:n,b:r,c:t,d:e}}),qr=L,Rr=t(function(n,r){return T(r)/T(n)}),Fr=function(n){return n},Br=qr(o(Rr,2,32)),Vr=[],Wr=c(Sr,0,Br,Vr,Vr),Jr=d,Yr=e(function(n,r,t){for(;;){if(!t.b)return r;var e=t.b,u=n,i=o(n,t.a,r);n=u,r=i,t=e}}),zr=function(n){return f(Yr,Lr,v,n)},Kr=t(function(n,r){for(;;){var t=o(Jr,32,n),e=t.b,u=o(Lr,{$:0,a:t.a},r);if(!e.b)return zr(u);n=e,r=u}}),Gr=function(n){return n.a},Hr=t(function(n,r){for(;;){var t=qr(r/32);if(1===t)return o(Jr,32,n).a;n=o(Kr,n,v),r=t}}),Zr=C,Ur=t(function(n,r){return N(n,r)>0?n:r}),Xr=function(n){return n.length},Qr=t(function(n,r){if(r.a){var t=32*r.a,e=Zr(o(Rr,32,t-1)),u=n?zr(r.d):r.d,i=o(Hr,u,r.a);return c(Sr,Xr(r.c)+t,o(Ur,5,e*Br),i,r.c)}return c(Sr,Xr(r.c),Br,Vr,r.c)}),nt=b,rt=i(function(n,r,t,e,u){for(;;){if(r<0)return o(Qr,!1,{d:e,a:t/32|0,c:u});var i={$:1,a:f(nt,32,r,n)};n=n,r-=32,t=t,e=o(Lr,i,e),u=u}}),tt=t(function(n,r){if(n>0){var t=n%32;return s(rt,r,n-t-32,n,v,f(nt,t,n-t,r))}return Wr}),et=function(n){return{$:0,a:n}},ut=function(n){return{$:1,a:n}},it=function(n){return{$:0,a:n}},at=function(n){return!n.$},ot=t(function(n,r){return{$:3,a:n,b:r}}),ft=t(function(n,r){return{$:0,a:n,b:r}}),ct=t(function(n,r){return{$:1,a:n,b:r}}),st=function(n){return{$:2,a:n}},lt=function(n){var r=n.charCodeAt(0);return 55296>r||r>56319?r:1024*(r-55296)+n.charCodeAt(1)-56320+65536},bt=function(n){var r=lt(n);return 97<=r&&r<=122},dt=function(n){var r=lt(n);return r<=90&&65<=r},vt=function(n){return bt(n)||dt(n)},pt=function(n){return bt(n)||dt(n)||function(n){var r=lt(n);return r<=57&&48<=r}(n)},mt=function(n){return f(Yr,t(function(n,r){return r+1}),0,n)},ht=g,$t=e(function(n,r,t){for(;;){if(N(n,r)>=1)return t;var e=n,u=r-1,i=o(Lr,r,t);n=e,r=u,t=i}}),gt=t(function(n,r){return f($t,n,r,v)}),yt=t(function(n,r){return f(ht,n,o(gt,0,mt(r)-1),r)}),wt=F,xt=Y,jt=t(function(n,r){return o(q,n,$(r))}),kt=t(function(n,r){return h(o(S,n,r))}),Nt=function(n){return o(jt,"\n ",o(kt,"\n",n))},_t=fn,It=t(function(n,r){return"\n\n("+xt(n+1)+") "+Nt(At(r))}),At=function(n){return o(Et,n,v)},Et=t(function(n,r){n:for(;;)switch(n.$){case 0:var t=n.a,e=n.b,u=function(){var n,r,e=(r=(n=t).charCodeAt(0))?et(55296>r||r>56319?I(E(n[0]),n.slice(1)):I(E(n[0]+n[1]),n.slice(2))):xr;if(1===e.$)return!1;var u=e.a,i=u.b;return vt(u.a)&&o(wt,pt,i)}();n=e,r=o(Lr,u?"."+t:"['"+t+"']",r);continue n;case 1:e=n.b;var i="["+xt(n.a)+"]";n=e,r=o(Lr,i,r);continue n;case 2:var a=n.a;if(a.b){if(a.b.b){var f=(r.b?"The Json.Decode.oneOf at json"+o(jt,"",zr(r)):"Json.Decode.oneOf")+" failed in the following "+xt(mt(a))+" ways:";return o(jt,"\n\n",o(Lr,f,o(yt,It,a)))}n=e=a.a,r=r;continue n}return"Ran into a Json.Decode.oneOf with no possibilities"+(r.b?" at json"+o(jt,"",zr(r)):"!");default:var c=n.a,s=n.b;return(f=r.b?"Problem with the value at json"+o(jt,"",zr(r))+":\n\n ":"Problem with the given value:\n\n")+Nt(o(_t,4,s))+"\n\n"+c}}),Ot=G,Pt=function(n){return{$:1,a:n}},Lt=z,Ct=U,Mt={$:6},Tt=function(n){return{$:0,a:n}},Dt=Z,St=Dt(Er),qt=nn,Rt=function(n){return{$:9,c:n}},Ft=function(n){return{$:15,g:n}},Bt={$:5},Vt=e(function(n,r,t){return o(Ot,function(e){var u=o(qt,n,e);if(u.$)return Tt(t);var i=u.a,a=o(qt,Ft(h([r,Rt(t)])),i);return a.$?Pt(At(a.a)):Tt(a.a)},Bt)}),Wt=u(function(n,r,t,e){return o(St,f(Vt,o(Lt,n,Bt),r,t),e)}),Jt=u(function(n,r,t,e){if(e.b){var u=e.a,i=e.b;if(i.b){var a=i.a,s=i.b;if(s.b){var l=s.a,b=s.b;if(b.b){var d=b.b;return o(n,u,o(n,a,o(n,l,o(n,b.a,t>500?f(Yr,n,r,zr(d)):c(Jt,n,r,t+1,d)))))}return o(n,u,o(n,a,o(n,l,r)))}return o(n,u,o(n,a,r))}return o(n,u,r)}return r}),Yt=e(function(n,r,t){return c(Jt,n,r,0,t)}),zt=t(function(n,r){return f(Yt,Lt,r,n)}),Kt=e(function(n,r,t){return o(St,o(zt,n,r),t)}),Gt=function(n){return n},Ht={$:3},Zt={$:4},Ut=function(n){return{$:12,b:n}},Xt=function(n){return o(Ot,n,Tt(0))},Qt=function(n){return{$:7,b:n}},ne=H,re=function(n){return Ft(h([o(ne,et,n),Tt(xr)]))},te=function(n){return Ft(h([Rt(xr),o(ne,et,n)]))},ee={$:0},ue=function(n){return{$:2,a:n}},ie=function(n){return{$:0,a:n}},ae=function(n){return{$:0,a:n}},oe=function(n){return{$:0,a:n}},fe=function(n){return{$:1,a:n}},ce={$:0},se=function(n){return{$:1,a:n}},le=function(n){return{$:1,a:n}},be=function(n){return{$:1,a:n}},de=function(n){return{$:1,a:n}},ve=function(n){return function(r){return function(t){return function(e){return function(u){return function(i){return function(a){return function(o){return function(f){return function(c){return function(s){return function(l){return function(b){return function(d){return function(v){return function(p){return function(m){return function(h){return function($){return function(g){return function(y){return function(w){return function(x){return function(j){return function(k){return function(N){return function(_){return function(I){return function(A){return function(E){return function(O){return function(P){return function(L){return function(C){return function(M){return function(T){return function(D){return function(S){return{ag:$,ah:A,ai:C,aj:M,am:L,an:x,bh:i,ar:o,I:E,bj:u,bm:P,w:a,aw:s,ax:b,ay:m,aB:r,bw:h,aC:g,aD:d,aE:j,aG:c,aH:y,aI:v,aJ:k,aL:l,aO:f,aP:D,aR:T,aS:p,aT:I,aY:_,aZ:O,a0:t,a3:N,ac:S,a8:e,S:n,a9:w}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},pe=function(n){return!n.b},me=function(n){return pe(n)?Pt("List is empty"):Tt(n)},he=e(function(n,r,t){return n(r(t))}),$e=t(function(n,r){return f(Yt,t(function(r,t){return o(Lr,n(r),t)}),v,r)}),ge=y,ye=t(function(n,r){return r.$?ut(r.a):n(r.a)}),we=function(n){return{$:2,a:n}},xe=function(n){return{$:3,a:n}},je=function(n){switch(n){case"integer":return it(0);case"number":return it(1);case"string":return it(2);case"boolean":return it(3);case"array":return it(4);case"object":return it(5);case"null":return it(6);default:return ut("Unknown type: "+n)}},ke=function(n){var r=je(n);return r.$?Pt(r.a):Tt(r.a)},Ne=t(function(n,r){return r.$?ut(r.a):it(n(r.a))}),_e=function(n){n:for(;;){if(n.b){if(n.b.b){if(n.b.b.b)break n;if("null"===n.b.a)return o(ne,we,ke(n.a));if("null"===n.a)return o(ne,we,ke(n.b.a));break n}return o(ne,de,ke(n.a))}break n}var r,t,e=n;return(r=o(ye,o(he,it,xe),(t=o($e,je,o(ge,Gt,e)),o(Ne,zr,f(Yr,function(n){return ye(function(r){return o(Ne,function(n){return o(Lr,n,r)},n)})},it(v),t))))).$?Pt(r.a):Tt(r.a)},Ie=o(Ot,me,o(Ot,function(n){return Tt(n)},Qt(Bt))),Ae={$:2},Ee=o(Ot,function(n){return n<0?Pt("Expected non-negative int"):Tt(n)},Ae);function Oe(){return Ft(h([o(ne,ue,Qt(Le())),o(ne,fe,Le())]))}function Pe(){return Ut(Ft(h([o(ne,ie,Qt(Mt)),o(ne,be,Le())])))}function Le(){var n=o(Ot,ke,Mt),r=o(Ot,_e,Qt(Mt)),e=Ft(h([o(ne,ae,Ht),o(ne,se,Zt)])),u=f(Kt,v,Bt,c(Wt,"not",te(Xt(function(){return Le()})),xr,c(Wt,"oneOf",te(Xt(function(){return Ce()})),xr,c(Wt,"anyOf",te(Xt(function(){return Ce()})),xr,c(Wt,"allOf",te(Xt(function(){return Ce()})),xr,c(Wt,"const",o(ne,et,Bt),xr,c(Wt,"enum",te(Ie),xr,c(Wt,"propertyNames",te(Xt(function(){return Le()})),xr,c(Wt,"dependencies",Xt(function(){return Pe()}),v,c(Wt,"additionalProperties",te(Xt(function(){return Le()})),xr,c(Wt,"patternProperties",te(Xt(function(){return Me()})),xr,c(Wt,"properties",te(Xt(function(){return Me()})),xr,c(Wt,"required",te(Qt(Mt)),xr,c(Wt,"minProperties",te(Ee),xr,c(Wt,"maxProperties",te(Ee),xr,c(Wt,"contains",te(Xt(function(){return Le()})),xr,c(Wt,"uniqueItems",te(Ht),xr,c(Wt,"minItems",te(Ee),xr,c(Wt,"maxItems",te(Ee),xr,c(Wt,"additionalItems",te(Xt(function(){return Le()})),xr,c(Wt,"items",Xt(function(){return Oe()}),ce,c(Wt,"format",te(Mt),xr,c(Wt,"pattern",te(Mt),xr,c(Wt,"minLength",te(Ee),xr,c(Wt,"maxLength",te(Ee),xr,c(Wt,"exclusiveMinimum",te(e),xr,c(Wt,"minimum",te(Zt),xr,c(Wt,"exclusiveMaximum",te(e),xr,c(Wt,"maximum",te(Zt),xr,c(Wt,"multipleOf",te(Zt),xr,c(Wt,"definitions",te(Xt(function(){return Me()})),xr,c(Wt,"examples",te(Qt(Bt)),xr,c(Wt,"default",o(ne,et,Bt),xr,c(Wt,"description",te(Mt),xr,c(Wt,"title",te(Mt),xr,c(Wt,"$ref",te(Mt),xr,o(St,f(Dt,t(function(n,r){return x(n,xr)?r:n}),re(o(Lt,"$id",Mt)),re(o(Lt,"id",Mt))),c(Wt,"type",Ft(h([r,o(ne,de,n)])),ee,Tt(ve)))))))))))))))))))))))))))))))))))))));return Ft(h([o(Ot,function(n){return Tt(oe(!!n))},Ht),o(Ot,function(n){return Tt(le(n))},u)]))}function Ce(){return o(Ot,me,Qt(Xt(function(){return Le()})))}function Me(){return o(ne,Gt,Ut(Xt(function(){return Le()})))}var Te=Oe();Oe=function(){return Te};var De=Pe();Pe=function(){return De};var Se=Le();Le=function(){return Se};var qe=Ce();Ce=function(){return qe};var Re=Me();Me=function(){return Re};var Fe,Be=c(Ct,e(function(n,r,t){return o(n,r,t)}),o(Ot,function(n){return"enable"===n?Tt(_r):"disable"===n?Tt(Nr):"show"===n?Tt(Ar):"hide"===n?Tt(Ir):Pt("Expected one of 'disable', 'enabled', 'show', 'hide', but got unknown action: '"+n+"'")},o(Lt,"action",Mt)),o(Lt,"path",Mt),o(Lt,"condition",Se)),Ve=function(n){return{$:2,a:n}},We=t(function(n,r){return{aF:r,aK:n}}),Je={$:0},Ye={$:1},ze={aF:5,aK:1},Ke=Ft(h([o(Ot,function(n){return"password"===n?Tt(Je):"switch"===n?Tt(Ye):"multiline"===n?Tt(Ve(ze)):Pt("")},Mt),o(Ot,function(n){switch(n){case"multiline":return o(ne,Ve,f(Dt,We,o(Lt,"minRows",Ae),o(Lt,"maxRows",Ae)));case"password":return Tt(Je);case"switch":return Tt(Ye);default:return Pt("Unknown widget")}},o(Lt,"type",Mt))])),Ge=s(X,kr,re(o(Lt,"widget",Ke)),re(o(Lt,"rule",Be)),o(ne,function(n){return!n.$&&n.a},re(o(Lt,"expandable",Ht))),o(ne,function(n){return!n.$&&n.a},re(o(Lt,"editAsJson",Ht)))),He=t(function(n,r){return r.$?xr:n(r.a)}),Ze=t(function(n,r){return r.$?n:r.a}),Ue=function(n){return n.$?xr:et(n.a)},Xe=e(function(n,r,t){var e=n(r);return e.$?t:o(Lr,e.a,t)}),Qe=t(function(n,r){return f(Yt,Xe(n),v,r)}),nu=function(n){return n.b?et(n.a):xr},ru=t(function(n,r){return r.$?n:r.a}),tu=t(function(n,r){if(1===r.$){var t=r.a;return nu(o(Qe,function(r){var t=r.b;return x(r.a,n)?et(t):xr},o(ru,v,o(qt,Ut(Bt),t.ac))))}return xr}),eu=function(n){return o(Ze,jr,o(He,function(n){return Ue(o(qt,Ge,n))},o(tu,"ui",n)))},uu=e(function(n,r,e){if(1===e.$){var u=e.a,i=u.S;n:for(;1===i.$;)switch(i.a){case 1:return n;case 2:var a=eu(e).bb;return a.$||2!==a.a.$?n:o(Lr,r,n);case 3:return n;case 5:var c=u.aY;if(c.$)return o(Lr,r,n);var s=c.a;return f(Yr,t(function(n,t){var e=n.b;return f(uu,t,P(r,h([n.a])),e)}),n,s);case 4:return n;default:break n}return o(Lr,r,n)}return o(Lr,r,n)}),iu=t(function(n,r){return 1===n?"1 "+r:xt(n)+" "+r+"s"}),au=Y,ou=function(n){switch(n.$){case 0:var r=n.a;return au(u=n.b)+" is not a multiple of "+au(r);case 1:var t=n.a;return au(u=n.b)+" is more than maximum "+au(t);case 2:var e=n.a;return au(u=n.b)+" is less than minimum "+au(e);case 3:return t=n.a,au(u=n.b)+" is not less than exclusive maximum "+au(t);case 4:return e=n.a,au(u=n.b)+" is not more than exclusive minimum "+au(e);case 5:var u=n.b;return"Longer than "+o(iu,n.a,"character");case 6:return u=n.b,"Shorter than "+o(iu,n.a,"character");case 7:return"Does not match pattern "+n.a;case 8:return u=n.b,"List expected to have at most "+o(iu,n.a,"item")+" but it has "+o(iu,u,"item");case 9:return u=n.b,"List expected to have at least "+o(iu,n.a,"item")+" but it has "+o(iu,u,"item");case 10:return"Expected array of unique items, but a duplicate found: "+o(_t,0,n.a);case 11:return"None of array items is valid against the given schema";case 12:return u=n.b,"MaxProperties";case 13:return u=n.b,"MinProperties";case 15:return"This property is required";case 14:return"";case 17:return"This is an additional property and it is not allowed";case 16:return"";case 18:return"Some property names are not passing validation";case 19:return"Value does not match enumeration defined in the schema";case 20:return"Value does not match const defined in the schema";case 21:return n.a;case 22:return"Value does not pass the validation with none of the schemata listed in '.oneOf'";case 23:return"Value should pass validation with exactly one schema, but "+xt(n.a)+" return a positive result";case 24:return"This value expected to fail validation";case 26:return"This is not expected to succeed";default:return"Reference "+n.a+" can not be resolved"}},fu={$:-2},cu=fu,su=_,lu=t(function(n,r){n:for(;;){if(-2===r.$)return xr;var t=r.c,e=r.d,u=r.e;switch(o(su,n,r.b)){case 0:n=n,r=e;continue n;case 1:return et(t);default:n=n,r=u;continue n}}}),bu=i(function(n,r,t,e,u){return{$:-1,a:n,b:r,c:t,d:e,e:u}}),du=i(function(n,r,t,e,u){if(-1!==u.$||u.a){if(-1!==e.$||e.a||-1!==e.d.$||e.d.a)return s(bu,n,r,t,e,u);var i=e.d;return a=e.e,s(bu,0,e.b,e.c,s(bu,1,i.b,i.c,i.d,i.e),s(bu,1,r,t,a,u))}var a,o=u.b,f=u.c,c=u.d,l=u.e;return-1!==e.$||e.a?s(bu,n,o,f,s(bu,0,r,t,e,c),l):s(bu,0,r,t,s(bu,1,e.b,e.c,e.d,a=e.e),s(bu,1,o,f,c,l))}),vu=e(function(n,r,t){if(-2===t.$)return s(bu,0,n,r,fu,fu);var e=t.a,u=t.b,i=t.c,a=t.d,c=t.e;switch(o(su,n,u)){case 0:return s(du,e,u,i,f(vu,n,r,a),c);case 1:return s(bu,e,u,r,a,c);default:return s(du,e,u,i,a,f(vu,n,r,c))}}),pu=e(function(n,r,t){var e=f(vu,n,r,t);return-1!==e.$||e.a?e:s(bu,1,e.b,e.c,e.d,e.e)}),mu=function(n){if(-1===n.$&&-1===n.d.$&&-1===n.e.$){if(-1!==n.e.d.$||n.e.d.a){var r=n.d,t=n.e;return a=t.b,o=t.c,e=t.d,l=t.e,s(bu,1,n.b,n.c,s(bu,0,r.b,r.c,r.d,r.e),s(bu,0,a,o,e,l))}var e,u=n.d,i=n.e,a=i.b,o=i.c,f=(e=i.d).d,c=e.e,l=i.e;return s(bu,0,e.b,e.c,s(bu,1,n.b,n.c,s(bu,0,u.b,u.c,u.d,u.e),f),s(bu,1,a,o,c,l))}return n},hu=function(n){if(-1===n.$&&-1===n.d.$&&-1===n.e.$){if(-1!==n.d.d.$||n.d.d.a){var r=n.d,t=n.e;return c=t.b,l=t.c,b=t.d,d=t.e,s(bu,1,e=n.b,u=n.c,s(bu,0,r.b,r.c,r.d,o=r.e),s(bu,0,c,l,b,d))}var e=n.b,u=n.c,i=n.d,a=i.d,o=i.e,f=n.e,c=f.b,l=f.c,b=f.d,d=f.e;return s(bu,0,i.b,i.c,s(bu,1,a.b,a.c,a.d,a.e),s(bu,1,e,u,o,s(bu,0,c,l,b,d)))}return n},$u=r(7,Fe=function(n,r,t,e,u,i,a){if(-1!==i.$||i.a){n:for(;;){if(-1===a.$&&1===a.a){if(-1===a.d.$){if(1===a.d.a)return hu(r);break n}return hu(r)}break n}return r}return s(bu,t,i.b,i.c,i.d,s(bu,0,e,u,i.e,a))},function(n){return function(r){return function(t){return function(e){return function(u){return function(i){return function(a){return Fe(n,r,t,e,u,i,a)}}}}}}}),gu=function(n){if(-1===n.$&&-1===n.d.$){var r=n.a,t=n.b,e=n.c,u=n.d,i=u.d,a=n.e;if(1===u.a){if(-1!==i.$||i.a){var o=mu(n);if(-1===o.$){var f=o.e;return s(du,o.a,o.b,o.c,gu(o.d),f)}return fu}return s(bu,r,t,e,gu(u),a)}return s(bu,r,t,e,gu(u),a)}return fu},yu=t(function(n,r){if(-2===r.$)return fu;var t,e,u,i,a,f,c,l,b=r.a,d=r.b,v=r.c,p=r.d,m=r.e;if(N(n,d)<0){if(-1===p.$&&1===p.a){var h=p.d;if(-1!==h.$||h.a){var $=mu(r);if(-1===$.$){var g=$.e;return s(du,$.a,$.b,$.c,o(yu,n,$.d),g)}return fu}return s(bu,b,d,v,o(yu,n,p),m)}return s(bu,b,d,v,o(yu,n,p),m)}return o(wu,n,(e=n,u=r,i=b,a=d,f=v,c=p,l=m,7===(t=$u).a?t.f(e,u,i,a,f,c,l):t(e)(u)(i)(a)(f)(c)(l)))}),wu=t(function(n,r){if(-1===r.$){var t=r.a,e=r.b,u=r.c,i=r.d,a=r.e;if(x(n,e)){var f=function(n){for(;;){if(-1!==n.$||-1!==n.d.$)return n;n=n.d}}(a);return-1===f.$?s(du,t,f.b,f.c,i,gu(a)):fu}return s(du,t,e,u,i,o(yu,n,a))}return fu}),xu=t(function(n,r){var t=o(yu,n,r);return-1!==t.$||t.a?t:s(bu,1,t.b,t.c,t.d,t.e)}),ju=e(function(n,r,t){var e=r(o(lu,n,t));return e.$?o(xu,n,t):f(pu,n,e.a,t)}),ku=function(n){return f(Yr,t(function(n,r){return f(ju,n.bx.bE,function(r){return et(r.$?h([ou(n.at)]):P(r.a,h([ou(n.at)])))},r)}),cu,n)},Nu=t(function(n,r){return{$:11,a:n,b:r}}),_u=Gt,Iu=function(n){for(;;)n=n},Au=dn,Eu=Au(0),Ou=pn,Pu=t(function(n,r){return o(Ou,function(r){return Au(n(r))},r)}),Lu=e(function(n,r,t){return o(Ou,function(r){return o(Ou,function(t){return Au(o(n,r,t))},t)},r)}),Cu=Nn,Mu=t(function(n,r){var t=r;return function(n){return vn(function(r){r(dn($n(n)))})}(o(Ou,Cu(n),t))});jn.Task={b:Eu,c:e(function(n,r){return o(Pu,function(){return 0},(t=o($e,Mu(n),r),f(Yt,Lu(Lr),Au(v),t)));var t}),d:e(function(){return Au(0)}),e:t(function(n,r){return o(Pu,n,r)}),f:void 0};var Tu,Du=(Tu="Task",function(n){return{$:1,k:Tu,l:n}}),Su=t(function(n,r){return Du(o(Pu,n,r))}),qu=function(n){switch(n.$){case 0:return 0;case 1:return 1;case 2:return 2;default:return 3}},Ru=R,Fu=t(function(n,r){return n<1?r:f(Ru,n,r.length,r)}),Bu=V,Vu=J,Wu=function(n){return""===n},Ju=t(function(n,r){return n<1?"":f(Ru,0,n,r)}),Yu=B,zu=function(n){for(var r=0,t=n.charCodeAt(0),e=43==t||45==t?1:0,u=e;u0){if(r.b){n-=1,r=r.b;continue n}return r}return r}}),ai=u(function(n,r,t,e){return{bu:r,by:n,bA:t,bI:e}}),oi=$r,fi=gr(1/0),ci=hr,si=function(n){return o(ci,{ak:!1,aN:!1},n)},li=/.^/,bi=o(Ze,li,si("\\/\\/|^\\/")),di=o(Ze,li,si("\\/[^\\/]*$")),vi=o(Ze,li,si("%25")),pi=o(Ze,li,si("~1")),mi=o(Ze,li,si("~0")),hi=function(n){return f(fi,vi,function(){return"%"},f(fi,pi,function(){return"/"},f(fi,mi,function(){return"~"},n)))},$i=t(function(n,r){var e=oi(bi),u=oi(di),i=t(function(n,r){return e(n)&&u(n)?f(fi,di,function(){return"/"+r},n):r}),a=function(){var t=o(kt,"#",n);if(t.b){if(t.b.b){var u=t.b.a;return""===(a=t.a)?I(r,u):e(a)?I(a,u):I(o(i,r,a),u)}var a;return""===(a=t.a)?I(r,""):e(a)?I(a,""):I(o(i,r,a),"")}return I(r,"")}(),c=a.a,s=a.b,l=u(s);return A(l,c,l?o($e,hi,o(ii,1,o(kt,"/",s))):""!==s?h([s]):v)}),gi=t(function(n,r){var e,i=u(function(n,r,t,e){var u=o(ui,function(n){var r=n.a;return"id"===r||"$id"===r},e);if(u.b){var i=u.a.b;return o(ru,I(e,I(t,n)),o(Ne,function(u){var i=o($i,u,n),a=i.a,c=i.b,s=i.c,l=o(qt,Se,r);if(l.$)return I(e,I(t,n));var b=l.a;return I(e,I(f(pu,function(n){var r=n.b,t=n.c;return n.a?P(r,o(jt,"/",o(Lr,"#",t))):pe(t)?r:P(r+"#",o(jt,"/",t))}(A(a,c,s)),b,t),c))},o(qt,Mt,i)))}return I(e,I(t,n))}),a=t(function(n,r){var t;return t=c(i,r.b,n,r.a,o(ru,v,o(qt,Ut(Bt),n))),f(Yr,function(n){return a(n.b)},t.b,t.a)});return 1===n.$?o(a,n.a.ac,I(r,(e=n.a.aB).$?"":o($i,e.a,"").b)):I(r,"")}),yi=e(function(n,r,t){return r(n(t))}),wi=function(n){return!n},xi=t(function(n,r){return!o(lu,n,r).$}),ji=t(function(n,r){for(;;){if(!r.b)return!1;var t=r.b;if(n(r.a))return!0;n=n,r=t}}),ki=t(function(n,r){return r.b?f(Yt,Lr,r,n):n}),Ni=function(n){return f(Yt,ki,v,n)},_i=t(function(n,r){return o(ji,function(r){return x(r,n)},r)}),Ii=t(function(n,r){return r.$?ut(n(r.a)):it(r.a)}),Ai=cn,Ei={ag:xr,ah:xr,ai:xr,aj:xr,am:xr,an:xr,bh:xr,ar:xr,I:v,bj:xr,bm:xr,w:xr,aw:xr,ax:xr,ay:xr,aB:xr,bw:ce,aC:xr,aD:xr,aE:xr,aG:xr,aH:xr,aI:xr,aJ:xr,aL:xr,aO:xr,aP:xr,aR:xr,aS:xr,aT:xr,aY:xr,aZ:xr,a0:xr,a3:xr,ac:ei(v),a8:xr,S:ee,a9:xr},Oi={$:17},Pi={$:26},Li={$:20},Ci={$:11},Mi={$:19},Ti=t(function(n,r){return{at:r,bx:n}}),Di=t(function(n,r){return{$:3,a:n,b:r}}),Si=t(function(n,r){return{$:4,a:n,b:r}}),qi=function(n){return{$:21,a:n}},Ri=t(function(n,r){return{Z:n,bE:r}}),Fi=t(function(n,r){return{$:8,a:n,b:r}}),Bi=t(function(n,r){return{$:5,a:n,b:r}}),Vi=t(function(n,r){return{$:12,a:n,b:r}}),Wi=t(function(n,r){return{$:1,a:n,b:r}}),Ji=t(function(n,r){return{$:9,a:n,b:r}}),Yi=t(function(n,r){return{$:6,a:n,b:r}}),zi=t(function(n,r){return{$:13,a:n,b:r}}),Ki=t(function(n,r){return{$:2,a:n,b:r}}),Gi=t(function(n,r){return{$:0,a:n,b:r}}),Hi={$:24},Zi={$:22},Ui=t(function(n,r){return{$:7,a:n,b:r}}),Xi={$:15},Qi=_t(0),na=function(n){var r=o(qt,Ut(Bt),n);return Qi(r.$?n:ei(o(ge,function(n){return n.a},r.a)))},ra=Yr(t(function(n,r){return n.$?r.$?ut(P(r.a,n.a)):n:r})),ta=t(function(n,r){return r.$?xr:et(n(r.a))}),ea=t(function(n,r){return n<1?r:f(Ru,0,-n,r)}),ua=W,ia=function(n){return o(ua,"#",n)?o(ea,1,n):n},aa=function(n){return 1===n.$?et(n.a):xr},oa=u(function(n,r,t,e){var i=o(Ze,n,o(ta,ia,o(He,function(n){return n.aB},aa(t)))),a=u(function(n,t,e,u){var i=o($i,u,n),f=i.a,s=i.b,l=i.c,b=function(n){var r=n.b,t=n.c;return n.a?P(r,o(jt,"/",o(Lr,"#",t))):pe(t)?r:P(r+"#",o(jt,"/",t))}(A(f,s,l));return t>0?f?o(He,function(n){return o(He,function(n){if(1===n.$){var r=n.a.a0;return r.$?et(I(s,n)):c(a,s,t-1,e,r.a)}return et(I(s,n))},Ue(o(qt,o(zt,l,Se),n.ac)))},o(He,aa,""===s?et(e):o(lu,s,r))):""===b?et(I("",e)):o(ta,function(n){return I(s,n)},o(lu,b,r)):et(I(s,e))});return c(a,i,10,t,e)}),fa=M,ca=D,sa=e(function(n,r,e){return f(ca,t(function(r,t){return o(n,lt(r),t)}),r,e)}),la=function(n){return f(sa,t(function(n,r){return r+1}),0,n)},ba=i(function(n,r,a,l,b){var d=i(function(n,r,t,e,u){var i=n(u);if(i.$)return it(e);var a=i.a,f=o(qt,r,e);return f.$?it(e):o(Ne,function(){return e},o(t,a,f.a))}),p=i(function(n,r,t,e,u){var i=n(u);if(i.$)return it(e);var a=i.a,f=o(qt,r,e);return f.$?it(e):o(t,a,f.a)}),m=u(function(n,r,t,e){var u=function(n){return o(Ii,function(n){return h([o(Ti,r,qi(At(n)))])},o(Ne,function(){return e},o(qt,n,e)))};switch(t){case 0:return u(Ae);case 1:return u(Zt);case 2:return u(Mt);case 3:return u(Ht);case 6:return u(Rt(xr));case 4:return u(Qt(Bt));default:return u(Ut(Bt))}}),$=u(function(n,r,t,e){var u=e.S;switch(u.$){case 0:return it(t);case 1:return c(m,n,r,i=u.a,t);case 2:var i=u.a;return 1===c(m,n,r,6,t).$?c(m,n,r,i,t):it(t);default:return o(ji,function(e){return x(c(m,n,r,e,t),it(t))},u.a)?it(t):ut(h([o(Ti,r,qi("None of desired types match"))]))}}),g=u(function(n,r,e,u){return s(p,function(n){return n.a3},Ut(Bt),t(function(n,t){var u=o($e,function(n){return n.a},t),i=o(ui,o(yi,function(n){return o(_i,n,u)},wi),n);return pe(i)?it(e):ut(o(Lr,o(Ti,r,{$:14,a:i}),o($e,function(n){return o(Ti,O(r,{bE:P(r.bE,h([n]))}),Xi)},i)))}),e,u)}),y=e(function(n,r,e){return c(p,function(n){return n.aS},Mt,t(function(n,t){return o(oi,o(Ze,li,si(n)),t)?it(e):ut(h([o(Ti,r,o(Ui,n,t))]))}),e)}),w=e(function(n,r,e){return c(p,function(n){return n.aO},Zt,t(function(n,t){return function(n){return x(n,o(yi,fa,Fr)(n))}(t/n)?it(e):ut(h([o(Ti,r,o(Gi,n,t))]))}),e)}),j=u(function(n,r,e,u){return s(p,function(n){return n.aL},Zt,t(function(n,t){var i=u.ax;return i.$||i.a.$||!i.a.a?N(t,n)>-1?it(e):ut(h([o(Ti,r,o(Ki,n,t))])):N(t,n)>0?it(e):ut(h([o(Ti,r,o(Si,n,t))]))}),e,u)}),k=e(function(n,r,e){return c(p,function(n){return n.aJ},Ut(Bt),t(function(n,t){var u=mt(t);return N(u,n)>-1?it(e):ut(h([o(Ti,r,o(zi,n,u))]))}),e)}),_=e(function(n,r,e){return c(p,function(n){return n.aI},Mt,t(function(n,t){var u=la(t);return N(u,n)>-1?it(e):ut(h([o(Ti,r,o(Yi,n,u))]))}),e)}),E=e(function(n,r,e){return c(p,function(n){return n.aH},Qt(Bt),t(function(n,t){var u=mt(t);return N(u,n)>-1?it(e):ut(h([o(Ti,r,o(Ji,n,u))]))}),e)}),L=u(function(n,r,e,u){return s(p,function(n){return n.aG},Zt,t(function(n,t){var i=u.aw;return i.$||i.a.$||!i.a.a?N(t,n)<1?it(e):ut(h([o(Ti,r,o(Wi,n,t))])):N(t,n)<0?it(e):ut(h([o(Ti,r,o(Di,n,t))]))}),e,u)}),C=e(function(n,r,e){return c(p,function(n){return n.aE},Ut(Bt),t(function(n,t){var u=mt(t);return N(u,n)<1?it(e):ut(h([o(Ti,r,o(Vi,n,u))]))}),e)}),M=e(function(n,r,e){return c(p,function(n){return n.aD},Mt,t(function(n,t){var u=la(t);return N(u,n)<1?it(e):ut(h([o(Ti,r,o(Bi,n,u))]))}),e)}),T=e(function(n,r,e){return c(p,function(n){return n.aC},Qt(Bt),t(function(n,t){var u=mt(t);return N(u,n)<1?it(e):ut(h([o(Ti,r,o(Fi,n,u))]))}),e)}),D=u(function(n,r,e,u){return s(p,function(n){return n.ax},Zt,t(function(n,t){if(1===n.$){var u=n.a;return N(t,u)>0?it(e):ut(h([o(Ti,r,o(Si,u,t))]))}return it(e)}),e,u)}),S=u(function(n,r,e,u){return s(p,function(n){return n.aw},Zt,t(function(n,t){if(1===n.$){var u=n.a;return N(t,u)<0?it(e):ut(h([o(Ti,r,o(Di,u,t))]))}return it(e)}),e,u)}),q=t(function(n,r){return f(p,function(n){return n.bm},Bt,t(function(n,t){return o(ji,function(n){return x(Qi(n),Qi(t))},n)?it(t):ut(h([o(Ti,r,Mi)]))}))}),R=t(function(n,r){return f(p,function(n){return n.am},Bt,t(function(n,t){return x(na(n),na(t))?it(t):ut(h([o(Ti,r,Li)]))}))}),F=t(function(n,r){return nu(o($e,function(n){return n.b},o(ui,function(r){return x(r.a,n)},r)))}),B=t(function(n,r){return o(ui,function(r){var t=r.a;return o(oi,o(Ze,li,si(n)),t)},r)}),V=e(function(n,r,e){return c(p,function(n){return n.a9},Qt(Bt),t(function(n,u){if(n){var i=function(n){return x(r=function(n){return f(Yr,t(function(n,r){var t=r.a,e=r.b,u=r.c;return A(t+1,N(e,-1)>0?e:o(_i,n,u)?t:-1,o(ii,1,u))}),A(0,-1,o(ii,1,n)),n).b}(o($e,_t(0),n)),-1)?xr:nu(o(ii,r,n));var r}(u);return i.$?it(e):ut(h([o(Ti,r,(a=i.a,{$:10,a:a}))]))}return it(e);var a}),e)}),W=i(function(n,r,e,u,i){return s=(a=f(Yr,t(function(t,e){var i=e.a,a=e.b,o=c(t,n,r,a,u);return o.$?I(P(i,o.a),a):I(i,o.a)}),I(v,e),i)).b,(o=a.a).b?ut(o):it(s);var a,o,s}),J=u(function(r,u,i,a){var s=t(function(n,r){return!o(_i,n,o($e,Gr,r))}),l=e(function(t,e,i){if(o(s,e,t)){if(1===i.$){var a=i.a;return(f=o(He,function(n){return Ue(c(Y,O(r,{P:!1}),O(u,{bE:P(u.bE,h([e]))}),n,i))},a.bh)).$?x(a.aY,xr)?xr:et(ei(c(J,n,O(u,{bE:P(u.bE,h([e]))}),a.aY,v))):f}return xr}return xr;var f});if(r.P){if(i.$)return v;var b=i.a;return zr(f(Yr,t(function(n,r){var t=n.a,e=f(l,a,t,n.b);return e.$?r:o(Lr,I(t,e.a),r)}),v,b))}return v}),Y=u(function(n,t,e,u){if(u.$){var i=u.a,a=i.a0;if(a.$)return c(z,n,t,i,e);var f=a.a,s=c(oa,t.Z,r,l,f);if(s.$)return ut(h([o(Ti,t,(v=f,{$:25,a:v}))]));if(1===s.a.b.$){var b=s.a,d=b.b.a;return c(z,n,O(t,{Z:b.a}),d,e)}return s.a.b.a?it(e):ut(h([o(Ti,t,Pi)]))}var v;return u.a?it(e):ut(h([o(Ti,t,Pi)]))}),z=u(function(n,r,t,e){return s(W,n,r,e,t,h([w,L,j,S,D,M,_,y,X,T,E,V,Z,tn,C,k,g,rn,K,U,en,q,R,$,G,H,nn,Q]))}),K=u(function(n,r,u,i){var a=e(function(n,r,t){if(n.$)return t;var e=o($e,function(n){return n.a},n.a);return o(ui,function(n){var t=n.a;return!o(ji,function(n){return o(r,n,t)},e)},t)});return s(d,function(n){return n.ah},Ut(Bt),t(function(e,s){return l=f(a,i.aT,t(function(n,r){return o(oi,o(Ze,li,si(n)),r)}),f(a,i.aY,t(function(n,r){return x(n,r)}),s)),e.$?o(ra,it(u),o($e,function(t){var u=t.b;return c(Y,n,O(r,{bE:P(r.bE,h([t.a]))}),u,e)},l)):e.a?it(u):pe(l)?it(u):ut(o(Lr,o(Ti,r,{$:16,a:o($e,function(n){return n.a},l)}),o($e,function(n){return o(Ti,O(r,{bE:P(r.bE,h([n.a]))}),Oi)},l)));var l}),u,i)}),G=t(function(n,r){return f(p,function(n){return n.ai},Bt,t(function(e,u){return f(Yr,t(function(t,e){return x(e,it(u))?c(Y,n,r,u,t):e}),it(u),e)}))}),H=t(function(n,r){return f(p,function(n){return n.aj},Bt,t(function(t,e){var u=o($e,f(Y,n,r,e),t);return o(ji,function(n){return!n.$},u)?it(e):o(ra,it(e),u)}))}),Z=e(function(n,r,e){return c(d,function(n){return n.an},Qt(Bt),t(function(t,u){return o(ji,function(e){return!c(Y,n,r,e,t).$},u)?it(e):ut(h([o(Ti,r,Ci)]))}),e)}),U=u(function(n,r,e,u){if(pe(u.I))return it(e);var i,a=o(qt,Ut(Bt),e);return a.$?it(e):(i=a.a,f(Yr,t(function(u,a){var s,l=u.b;return 1===a.$?a:o(xi,u.a,(s=i,f(Yr,t(function(n,r){return f(pu,n.a,n.b,r)}),cu,s)))?c(Y,n,r,e,1===l.$?l.a:le(O(Ei,{a3:et(l.a)}))):a}),it(e),u.I))}),X=u(function(n,r,u,i){var a=e(function(t,e,u){return o(Ne,function(){return u+1},c(Y,n,O(r,{bE:P(r.bE,h([xt(u)]))}),t,e))}),s=i.bw;switch(s.$){case 1:var l=s.a,b=o(qt,Qt(Bt),u);if(b.$)return it(u);var d=b.a;return o(Ne,function(){return u},f(Yr,t(function(n,r){return r.$?r:f(a,n,l,r.a)}),it(0),d));case 2:var v=s.a,p=o(qt,Qt(Bt),u);return p.$?it(u):(d=p.a,o(Ne,function(){return u},f(Yr,t(function(n,r){if(r.$)return r;var t=r.a,e=nu(o(ii,t,v));if(e.$){var u=i.ag;return u.$?it(t+1):f(a,n,u.a,t)}return f(a,n,e.a,t)}),it(0),d)));default:return it(u)}}),Q=t(function(n,r){return f(d,function(n){return n.aP},Bt,t(function(t,e){return x(c(Y,n,r,e,t),it(e))?ut(h([o(Ti,r,Hi)])):it(e)}))}),nn=t(function(n,r){return f(p,function(n){return n.aR},Bt,t(function(t,e){var u,i=mt(o(ui,function(t){return x(c(Y,n,r,e,t),it(e))},t));switch(i){case 1:return it(e);case 0:return ut(h([o(Ti,r,Zi)]));default:return ut(h([o(Ti,r,(u=i,{$:23,a:u}))]))}}))}),rn=e(function(n,r,e){return c(p,function(n){return n.aT},Ut(Bt),t(function(u,i){var a=u;return f(Yr,t(function(t,u){var a=t.a,f=t.b;return u.$?u:o(ra,it(e),o($e,function(t){var e=t.b;return c(Y,n,O(r,{bE:P(r.bE,h([t.a]))}),e,f)},o(B,a,i)))}),it(e),a)}),e)}),tn=u(function(n,r,e,u){return s(p,function(n){return n.aY},Ut(Bt),t(function(t,e){var i=c(J,n,r,u.aY,e),a=P(e,i),f=o($e,function(n){return n.a},i);return o(ra,it(ei(a)),o($e,function(e){var u=e.a,i=e.b;if(o(_i,u,f))return it(i);var a=o(F,u,t);if(a.$)return it(i);var s=a.a;return c(Y,n,O(r,{bE:P(r.bE,h([u]))}),i,s)},a))}),e,u)}),en=e(function(n,r,e){var u=t(function(t,e){var u=c(Y,n,O(r,{bE:P(r.bE,h([e]))}),Ai(e),t);return u.$?et(u.a):xr});return c(d,function(n){return n.aZ},Ut(Bt),t(function(n,t){return i=o(Qe,u(n),o($e,function(n){return n.a},t)),pe(i)?it(e):ut(h([o(Ti,r,(a=Ni(i),{$:18,a:a}))]));var i,a}),e)});return c(Y,n,o(Ri,"",v),a,b)}),da=Q,va=le(Ei),pa=o(yi,da(Se),ru(va)),ma=pa('\n {\n "id": "http://json-schema.org/draft-04/schema#",\n "$schema": "http://json-schema.org/draft-04/schema#",\n "description": "Core schema meta-schema",\n "definitions": {\n "schemaArray": {\n "type": "array",\n "minItems": 1,\n "items": { "$ref": "#" }\n },\n "positiveInteger": {\n "type": "integer",\n "minimum": 0\n },\n "positiveIntegerDefault0": {\n "allOf": [ { "$ref": "#/definitions/positiveInteger" }, { "default": 0 } ]\n },\n "simpleTypes": {\n "enum": [ "array", "boolean", "integer", "null", "number", "object", "string" ]\n },\n "stringArray": {\n "type": "array",\n "items": { "type": "string" },\n "minItems": 1,\n "uniqueItems": true\n }\n },\n "type": "object",\n "properties": {\n "id": {\n "type": "string",\n "format": "uri",\n "description": "Identifier of schema"\n },\n "$schema": {\n "type": "string",\n "format": "uri",\n "description": "Link to a schema which validates this object"\n },\n "title": {\n "type": "string"\n },\n "description": {\n "type": "string"\n },\n "default": {},\n "multipleOf": {\n "type": "number",\n "minimum": 0,\n "exclusiveMinimum": true\n },\n "maximum": {\n "type": "number"\n },\n "exclusiveMaximum": {\n "type": "boolean",\n "default": false\n },\n "minimum": {\n "type": "number"\n },\n "exclusiveMinimum": {\n "type": "boolean",\n "default": false\n },\n "maxLength": { "$ref": "#/definitions/positiveInteger" },\n "minLength": { "$ref": "#/definitions/positiveIntegerDefault0" },\n "pattern": {\n "type": "string",\n "format": "regex"\n },\n "additionalItems": {\n "anyOf": [\n { "type": "boolean" },\n { "$ref": "#" }\n ],\n "default": {}\n },\n "items": {\n "anyOf": [\n { "$ref": "#" },\n { "$ref": "#/definitions/schemaArray" }\n ],\n "default": {}\n },\n "maxItems": { "$ref": "#/definitions/positiveInteger" },\n "minItems": { "$ref": "#/definitions/positiveIntegerDefault0" },\n "uniqueItems": {\n "type": "boolean",\n "default": false\n },\n "maxProperties": { "$ref": "#/definitions/positiveInteger" },\n "minProperties": { "$ref": "#/definitions/positiveIntegerDefault0" },\n "required": { "$ref": "#/definitions/stringArray" },\n "additionalProperties": {\n "anyOf": [\n { "type": "boolean" },\n { "$ref": "#" }\n ],\n "default": {}\n },\n "definitions": {\n "type": "object",\n "additionalProperties": { "$ref": "#" },\n "default": {}\n },\n "properties": {\n "type": "object",\n "additionalProperties": { "$ref": "#" },\n "default": {}\n },\n "patternProperties": {\n "type": "object",\n "additionalProperties": { "$ref": "#" },\n "default": {}\n },\n "dependencies": {\n "type": "object",\n "additionalProperties": {\n "anyOf": [\n { "$ref": "#" },\n { "$ref": "#/definitions/stringArray" }\n ]\n }\n },\n "enum": {\n "type": "array",\n "minItems": 1,\n "uniqueItems": true\n },\n "type": {\n "anyOf": [\n { "$ref": "#/definitions/simpleTypes" },\n {\n "type": "array",\n "items": { "$ref": "#/definitions/simpleTypes" },\n "minItems": 1,\n "uniqueItems": true\n }\n ]\n },\n "allOf": { "$ref": "#/definitions/schemaArray" },\n "anyOf": { "$ref": "#/definitions/schemaArray" },\n "oneOf": { "$ref": "#/definitions/schemaArray" },\n "not": { "$ref": "#" }\n },\n "dependencies": {\n "exclusiveMaximum": [ "maximum" ],\n "exclusiveMinimum": [ "minimum" ]\n },\n "default": {}\n }\n '),ha=pa('\n {\n "$schema": "http://json-schema.org/draft-06/schema#",\n "$id": "http://json-schema.org/draft-06/schema#",\n "title": "Core schema meta-schema",\n "definitions": {\n "schemaArray": {\n "type": "array",\n "minItems": 1,\n "items": { "$ref": "#" }\n },\n "nonNegativeInteger": {\n "type": "integer",\n "minimum": 0\n },\n "nonNegativeIntegerDefault0": {\n "allOf": [\n { "$ref": "#/definitions/nonNegativeInteger" },\n { "default": 0 }\n ]\n },\n "simpleTypes": {\n "enum": [\n "array",\n "boolean",\n "integer",\n "null",\n "number",\n "object",\n "string"\n ]\n },\n "stringArray": {\n "type": "array",\n "items": { "type": "string" },\n "uniqueItems": true,\n "default": []\n }\n },\n "type": ["object", "boolean"],\n "properties": {\n "$id": {\n "type": "string",\n "format": "uri-reference",\n "description": "Identifier of schema"\n },\n "$schema": {\n "type": "string",\n "format": "uri",\n "description": "Link to a schema which validates this object"\n },\n "$ref": {\n "type": "string",\n "format": "uri-reference"\n },\n "title": {\n "type": "string"\n },\n "description": {\n "type": "string"\n },\n "default": {},\n "multipleOf": {\n "type": "number",\n "exclusiveMinimum": 0\n },\n "maximum": {\n "type": "number"\n },\n "exclusiveMaximum": {\n "type": "number"\n },\n "minimum": {\n "type": "number"\n },\n "exclusiveMinimum": {\n "type": "number"\n },\n "maxLength": { "$ref": "#/definitions/nonNegativeInteger" },\n "minLength": { "$ref": "#/definitions/nonNegativeIntegerDefault0" },\n "pattern": {\n "type": "string",\n "format": "regex"\n },\n "additionalItems": { "$ref": "#" },\n "items": {\n "anyOf": [\n { "$ref": "#" },\n { "$ref": "#/definitions/schemaArray" }\n ],\n "default": {}\n },\n "maxItems": { "$ref": "#/definitions/nonNegativeInteger" },\n "minItems": { "$ref": "#/definitions/nonNegativeIntegerDefault0" },\n "uniqueItems": {\n "type": "boolean",\n "default": false\n },\n "contains": { "$ref": "#" },\n "maxProperties": { "$ref": "#/definitions/nonNegativeInteger" },\n "minProperties": { "$ref": "#/definitions/nonNegativeIntegerDefault0" },\n "required": { "$ref": "#/definitions/stringArray" },\n "additionalProperties": { "$ref": "#" },\n "definitions": {\n "type": "object",\n "additionalProperties": { "$ref": "#" },\n "default": {}\n },\n "properties": {\n "type": "object",\n "additionalProperties": { "$ref": "#" },\n "default": {}\n },\n "patternProperties": {\n "type": "object",\n "additionalProperties": { "$ref": "#" },\n "default": {}\n },\n "dependencies": {\n "type": "object",\n "additionalProperties": {\n "anyOf": [\n { "$ref": "#" },\n { "$ref": "#/definitions/stringArray" }\n ]\n }\n },\n "propertyNames": { "$ref": "#" },\n "const": {},\n "enum": {\n "type": "array",\n "minItems": 1,\n "uniqueItems": true\n },\n "type": {\n "anyOf": [\n { "$ref": "#/definitions/simpleTypes" },\n {\n "type": "array",\n "items": { "$ref": "#/definitions/simpleTypes" },\n "minItems": 1,\n "uniqueItems": true\n }\n ]\n },\n "format": { "type": "string" },\n "allOf": { "$ref": "#/definitions/schemaArray" },\n "anyOf": { "$ref": "#/definitions/schemaArray" },\n "oneOf": { "$ref": "#/definitions/schemaArray" },\n "not": { "$ref": "#" }\n },\n "default": {}\n }\n '),$a=f(pu,"http://json-schema.org/draft-04/schema",ma,f(pu,"http://json-schema.org/draft-06/schema#",ha,f(pu,"http://json-schema.org/draft-06/schema",ha,cu))),ga=e(function(n,r,t){return s(ba,n,o(gi,t,$a).a,r,t,t)}),ya={$:3},wa=function(n){return{$:1,a:n}},xa=function(n){return{$:2,a:n}},ja=function(n){return{$:4,a:n}},ka=function(n){return{$:0,a:n}},Na=function(n){return{$:5,a:n}};function _a(){var n=o(ne,ka,Ut(Xt(function(){return _a()}))),r=o(ne,wa,Qt(Xt(function(){return _a()})));return Ft(h([n,r,Rt(ya),o(ne,Na,Mt),o(ne,ja,Zt),o(ne,xa,Ht)]))}var Ia=_a();_a=function(){return Ia};var Aa,Ea,Oa,Pa,La,Ca,Ma=function(n){return o(ru,ya,o(qt,Ia,n))},Ta=cn,Da=cn,Sa=t(function(n,r){return cn(f(Yr,function(n){return t(function(r,t){return t.push(sn(n(r))),t})}(n),[],r))}),qa=bn,Ra=function(n){switch(n.$){case 0:return ei(o($e,function(n){return I(n.a,Ra(n.b))},n.a));case 1:return o(Sa,Ra,n.a);case 5:return Ai(n.a);case 2:return Ta(n.a);case 3:return qa;default:return Da(n.a)}},Fa=e(function(n,r,t){var e=f(uu,v,v,r),u=function(n){return function(r){if(r.$){var t=r.a;return I(et(Ma(n)),ku(t))}return I(et(Ma(r.a)),cu)}(f(ga,{P:!0},n,r))},i=function(){if(t.$){if(1===r.$){var n=r.a,e=n.bh;if(e.$){var i=n.S;return 1===i.$&&5===i.a?u(ei(v)):I(xr,cu)}return u(e.a)}return I(xr,cu)}return u(Ra(t.a))}();return I({F:v,i:v,V:n,o:"",W:i.b,x:ni,p:cu,g:xr,a5:r,ab:!1,bN:i.a},Qu(o($e,function(r){return o(ti,Nu(r),pr(n.bz+"_"+o(jt,"_",r),function(n){return{bG:{D:n.scrollWidth,br:n.scrollHeight},ba:{T:n.scrollLeft,U:n.scrollTop,D:n.clientWidth,br:n.clientHeight}}}))},e)))}),Ba={$:0},Va=t(function(n,r){return{$:1,a:n,b:r}}),Wa=t(function(n,r){return(t=f(ga,{P:!0},r,n)).$?r:t.a;var t}),Ja=e(function(n,r,t){return x(n,xr)?o(Lr,o(Ze,v,r),t):t}),Ya=t(function(n,r){return I(r,n)}),za=Qu(v),Ka=t(function(n,r){return r.$?ut(n):it(r.a)}),Ga=t(function(n,r){if(!n.b)return it(r);var e=n.a,u=n.b;switch(r.$){case 0:var i=r.a;return o(ye,Ga(u),o(Ka,"Key not found",f(Yr,t(function(n,r){var t=n.a,u=n.b;return x(r,xr)?x(t,e)?et(u):xr:r}),xr,i)));case 1:return i=r.a,o(ye,Ga(u),o(ye,function(n){return o(Ka,"Index is too big",nu(o(ii,n,i)))},o(Ka,"Not an integer",zu(e))));default:return ut("You are trying to access property of something that is not object or array")}}),Ha=e(function(n,r,e){switch(e.$){case 0:return it(ka(function(t){return o(ji,function(r){return x(r.a,n)},t)?o($e,function(t){var e=t.a,u=t.b;return x(e,n)?I(n,r):I(e,u)},t):P(t,h([I(n,r)]))}(e.a)));case 1:var u=e.a,i=o(ru,mt(u),o(da,Ae,n));return N(mt(u),i)>0?it(wa(o(yt,t(function(n,t){return x(n,i)?r:t}),u))):it(wa(P(u,h([r]))));default:return it("0"===n?wa(h([r])):ka(h([I(n,r)])))}}),Za=e(function(n,r,e){var u=zr(n);return function(){if(u.b){var n=u.b;return f(Yr,t(function(n,r){var t=r.a,u=r.b,i=zr(t);return I(t.b?t.b:v,o(Ne,function(r){return o(ru,ka(h([I(n,r)])),o(ye,o(Ha,n,r),o(Ga,i,e)))},u))}),I(n,it(r)),u).b}return it(r)}()}),Ua=e(function(n,r,t){var e=o(Ze,ya,Ue(f(Za,r,t,o(Ze,ya,n.bN)))),u=Ra(e),i=f(ga,{P:!0},u,n.a5);if(i.$){var a=ku(i.a);return o(Ya,o(Va,et(e),a),I(O(n,{F:f(Ja,xr,et(r),n.F),W:a,bN:et(e)}),za))}var c=i.a;return o(Ya,o(Va,et(e),cu),I(O(n,{F:f(Ja,xr,et(r),n.F),W:cu,bN:Ue(o(qt,Ia,c))}),za))}),Xa={$:0},Qa=function(n){switch(n.$){case 5:return n.a;case 4:return au(n.a);default:return""}},no=mr("focus"),ro=t(function(n,r){return f(pu,n,0,r)}),to=t(function(n,r){return o(xi,n,r)}),eo=t(function(n,r){return o(xu,n,r)}),uo=function(n){if(0===n.length||/[\sxbo]/.test(n))return xr;var r=+n;return r===r?et(r):xr},io=t(function(n,r){var e=t(function(n,r){switch(r.$){case 0:return f(yi,ka,it,o(ui,function(r){return!x(r.a,n)},e=r.a));case 1:var e=r.a;return f(yi,wa,it,o($e,function(n){return n.b},o(ui,function(r){return!x(r.a,n)},o(yt,t(function(n,r){return I(xt(n),r)}),e))));default:return ut("It is not possible to delete key when host value is not object or array")}}),u=function(n){if(n.b){var r=n.b;return I(et(n.a),zr(r))}return I(xr,v)}(zr(n)),i=u.a,a=u.b,c=i.$?r:o(ru,r,o(ye,e(i.a),o(Ga,a,r)));return f(Za,a,c,r)}),ao=t(function(n,r){switch(n.$){case 0:return o(Ya,Ba,I(r,za));case 8:var t=n.b,e=n.c,u=o(He,o(yi,Ga(g=n.a),Ue),r.bN).$?O(r,{bN:Ue(f(Za,g,wa(v),o(Ze,ya,r.bN)))}):r,i=P(g,h([xt(t)]));return f(Ua,u,i,1===(_=e).$&&x(_.a.S,de(5))?Ma(o(Wa,_,ei(v))):ya);case 10:var a=x(g=n.a,v)?xr:o(He,o(yi,io(g),Ue),r.bN),c=f(ga,{P:!0},Ra(o(Ze,ya,a)),r.a5),s=c.$?ku(c.a):cu;return o(Ya,o(Va,a,s),I(O(r,{bN:a}),za));case 1:return o(Ya,Ba,I(O(r,{i:f(Ja,l=n.a,r.g,r.i),g:l}),za));case 2:return o(Ya,Ba,I(O(r,{i:f(Ja,et(l=n.a),r.g,r.i),g:et(l)}),o(ti,function(){return Xa},no(o(jt,"_",l)))));case 3:var l,b=n.a;if(1===(l=n.b).$){if(b){var d=uo(r.o);if(d.$)return o(Ya,Ba,I(r,za));var p=d.a;return f(Ua,O(r,{i:f(Ja,l,r.g,r.i),g:xr}),o(Ze,v,r.g),ja(p))}return o(Ya,Ba,I(O(r,{i:f(Ja,l,r.g,r.i),g:xr}),za))}var m=l.a;return o(Ya,Ba,I(O(r,{o:o(Ze,"",b?o(ta,Qa,o(He,Ue,o(ta,Ga(m),r.bN))):o(ta,o(yi,Ra,_t(4)),Ue(o(Ga,m,o(Ze,ka(v),r.bN))))),g:l}),za));case 4:return f(Ua,r,g=n.a,n.b);case 5:var $=uo(k=n.a);return $.$?o(Ya,Ba,I(O(r,{o:k}),za)):(p=$.a,f(Ua,O(r,{o:k}),o(Ze,v,r.g),ja(p)));case 6:var g=n.a,y=n.b,w=o(da,Ia,k=n.c);if(w.$)return o(Ya,Ba,I(O(r,{o:k}),za));var j=w.a;return f(Ua,O(r,{o:k,p:f(pu,g,y,r.p)}),g,j);case 7:var k=n.c;return f(Ua,O(r,{p:f(pu,g=n.a,y=n.b,r.p)}),g,Na(k));case 9:return o(Ya,Ba,I(O(r,{ab:!r.ab}),za));case 11:g=n.a;var N=n.b;return o(Ya,Ba,I(N.$?r:O(r,{p:f(pu,g,N.a.bG.br,r.p)}),za));default:return o(Ya,Ba,I(O(r,{x:o(o(to,g=n.a,r.x)?eo:ro,g,r.x)}),za))}var _}),oo=o(yi,da(Se),Ii(At)),fo=o(ru,va,oo('\n{\n "type": "object",\n "properties": {\n "payment": {\n "ui": {\n "expandable": true\n },\n "title": "Payment",\n "type": "object",\n "properties": {\n "person": {\n "type": "object",\n "title": "Person",\n "properties": {\n "title": {\n "type": "string",\n "title": "Title",\n "enum": [\n "mr",\n "ms",\n "mrs",\n "miss"\n ]\n },\n "firstName": {\n "type": "string",\n "title": "First name"\n },\n "middleName": {\n "type": "string",\n "title": "Middle name"\n },\n "lastName": {\n "type": "string",\n "title": "Last name"\n }\n }\n },\n "card": {\n "type": "object",\n "title": "Card",\n "properties": {\n "type": {\n "title": "Card type",\n "type": "string",\n "enum": [\n "debit",\n "credit"\n ]\n },\n "holderType": {\n "title": "Holder type",\n "type": "string",\n "enum": [\n "personal",\n "corporate"\n ]\n },\n "brand": {\n "title": "Brand",\n "type": "string",\n "enum": [\n "visa",\n "mastercard",\n "amex",\n "discover"\n ]\n },\n "expirationDate": {\n "title": "Expiration date",\n "type": "string",\n "format": "YYYY-MM"\n },\n "name": {\n "title": "Name",\n "type": "string"\n },\n "pan": {\n "title": "Card Number (PAN)",\n "type": "string"\n },\n "cvv": {\n "title": "CVV",\n "type": "string",\n "minLength": 3,\n "maxLength": 4\n }\n }\n },\n "address": {\n "type": "object",\n "title": "Address",\n "properties": {\n "line1": {\n "title": "Address line 1",\n "type": "string"\n },\n "postcode": {\n "title": "Postcode",\n "type": "string"\n },\n "countryCode": {\n "title": "Country code",\n "type": "string",\n "const": "gb"\n }\n }\n }\n }\n },\n "account": {\n "ui": {\n "expandable": true\n },\n "type": "object",\n "title": "Account",\n "properties": {\n "email": {\n "title": "Email",\n "type": "string"\n },\n "password": {\n "title": "Password",\n "type": "string"\n },\n "passwordSpecification": {\n "type": "object",\n "title": "Password specification",\n "properties": {\n "length": {\n "title": "Length",\n "type": "string",\n "default": 12\n },\n "numbers": {\n "title": "Numbers",\n "type": "integer",\n "default": 1\n },\n "upper": {\n "title": "Upper",\n "type": "integer",\n "default": 1\n },\n "lower": {\n "title": "Lower",\n "type": "integer",\n "default": 1\n },\n "special": {\n "title": "Special",\n "type": "integer",\n "default": 1\n },\n "specialCharacters": {\n "title": "Special characters list",\n "type": "array",\n "item": {\n "type": "string",\n "maxLength": 1,\n "minLength": 1\n },\n "default": [\n "#",\n "$",\n "%"\n ]\n }\n }\n },\n "isExisting": {\n "title": "Is existing",\n "type": "boolean",\n "default": false\n },\n "phone": {\n "title": "Phone",\n "type": "string",\n "properties": {\n "countryCode": {\n "title": "Country code",\n "type": "string",\n "const": "gb"\n },\n "number": {\n "title": "Number",\n "type": "string"\n }\n }\n }\n }\n },\n "passengers": {\n "ui": {\n "expandable": true\n },\n "title": "Passengers",\n "type": "object",\n "properties": {\n "minItems": {\n "title": "Min items",\n "type": "integer",\n "min": 0\n },\n "maxItems": {\n "title": "Max items",\n "type": "integer",\n "min": 0\n },\n "items": {\n "type": "array",\n "items": {\n "type": "object",\n "title": "Flight passenger",\n "properties": {\n "person": {\n "type": "object",\n "properties": {\n "title": {\n "type": "string",\n "title": "Title",\n "enum": [\n "mr",\n "ms",\n "mrs",\n "miss"\n ]\n },\n "firstName": {\n "type": "string",\n "title": "First name"\n },\n "middleName": {\n "type": "string",\n "title": "Middle name"\n },\n "lastName": {\n "type": "string",\n "title": "Last name"\n }\n }\n },\n "dateOfBirth": {\n "title": "Random date config",\n "oneOf": [\n {\n "type": "object",\n "properties": {\n "static": {\n "type": "string"\n }\n },\n "required": [\n "static"\n ],\n "additionalProperties": false\n },\n {\n "type": "object",\n "properties": {\n "age": {\n "type": "integer"\n }\n },\n "required": [\n "age"\n ],\n "additionalProperties": false\n },\n {\n "type": "integer"\n }\n ]\n },\n "addAdditionalLuggage": {\n "title": "Random integer configuration",\n "type": "object",\n "properties": {\n "min": {\n "title": "Min",\n "type": "integer"\n },\n "max": {\n "title": "Max",\n "type": "integer"\n }\n }\n },\n "document": {\n "type": "object",\n "title": "Identity Document",\n "properties": {\n "type": {\n "title": "Type",\n "enum": [\n "passport"\n ]\n },\n "number": {\n "title": "Number",\n "type": "string"\n },\n "issueDate": {\n "title": "Issue date",\n "type": "string",\n "format": "date"\n },\n "expirationDate": {\n "title": "Expiration date",\n "type": "string",\n "format": "date"\n },\n "issueCountryCode": {\n "title": "Country code",\n "type": "string"\n }\n }\n }\n }\n }\n }\n }\n },\n "outboundMonthYear": {\n "title": "Outbound month year",\n "oneOf": [\n {\n "type": "object",\n "properties": {\n "static": {\n "type": "string"\n }\n },\n "required": [\n "static"\n ],\n "additionalProperties": false\n },\n {\n "type": "object",\n "properties": {\n "age": {\n "type": "integer"\n }\n },\n "required": [\n "age"\n ],\n "additionalProperties": false\n },\n {\n "type": "integer"\n }\n ]\n },\n "inboundMonthYear": {\n "title": "Inbound month year",\n "oneOf": [\n {\n "type": "object",\n "properties": {\n "static": {\n "type": "string"\n }\n },\n "required": [\n "static"\n ],\n "additionalProperties": false\n },\n {\n "type": "object",\n "properties": {\n "age": {\n "type": "integer"\n }\n },\n "required": [\n "age"\n ],\n "additionalProperties": false\n },\n {\n "type": "integer"\n }\n ]\n }\n }\n}\n')),co=cn,so=function(n){var r=function(n){switch(n){case 2:return"string";case 0:return"integer";case 1:return"number";case 3:return"boolean";case 5:return"object";case 4:return"array";default:return"null"}},e=u(function(n,r,t,e){var u=o(ui,function(n){return!x(n.a,t)},e);return r.$?u:o(Lr,I(t,n(r.a)),u)}),i=t(function(n,t){switch(n.$){case 1:return o(Lr,I("type",Ai(r(e=n.a))),t);case 2:var e=n.a;return o(Lr,I("type",o(Sa,Gt,h([Ai("null"),Ai(r(e))]))),t);case 3:var u=n.a;return o(Lr,I("type",o(Sa,o(yi,r,Ai),u)),t);default:return t}}),a=function(n){return ei(o($e,function(n){return I(n.a,so(n.b))},n))},c=function(n){return o(Sa,so,n)},s=t(function(n,r){switch(n.$){case 1:return o(Lr,I("items",so(n.a)),r);case 2:return o(Lr,I("items",o(Sa,so,n.a)),r);default:return r}}),l=function(n){return n.$?Da(n.a):Ta(n.a)},b=t(function(n,r){return pe(n)?r:o(Lr,I("dependencies",ei(o($e,function(n){return I(n.a,function(n){return 1===n.$?so(n.a):o(Sa,Ai,n.a)}(n.b))},n))),r)});if(n.$){var d=n.a;return ei(zr(f(Yr,Gt,function(n){return o(ru,v,o(qt,Ut(Bt),n.ac))}(d),h([i(d.S),f(e,Ai,d.aB,"$id"),f(e,Ai,d.a0,"$ref"),f(e,Ai,d.a8,"title"),f(e,Ai,d.bj,"description"),f(e,Gt,d.bh,"default"),f(e,Sa(Gt),d.w,"examples"),f(e,a,d.ar,"definitions"),f(e,Da,d.aO,"multipleOf"),f(e,Da,d.aG,"maximum"),f(e,l,d.aw,"exclusiveMaximum"),f(e,Da,d.aL,"minimum"),f(e,l,d.ax,"exclusiveMinimum"),f(e,co,d.aD,"maxLength"),f(e,co,d.aI,"minLength"),f(e,Ai,d.aS,"pattern"),f(e,Ai,d.ay,"format"),s(d.bw),f(e,so,d.ag,"additionalItems"),f(e,co,d.aC,"maxItems"),f(e,co,d.aH,"minItems"),f(e,Ta,d.a9,"uniqueItems"),f(e,so,d.an,"contains"),f(e,co,d.aE,"maxProperties"),f(e,co,d.aJ,"minProperties"),f(e,function(n){return o(Sa,Ai,n)},d.a3,"required"),f(e,a,d.aY,"properties"),f(e,a,d.aT,"patternProperties"),f(e,so,d.ah,"additionalProperties"),b(d.I),f(e,so,d.aZ,"propertyNames"),f(e,Sa(Gt),d.bm,"enum"),f(e,Gt,d.am,"const"),f(e,c,d.ai,"allOf"),f(e,c,d.aj,"anyOf"),f(e,c,d.aR,"oneOf"),f(e,so,d.aP,"not")]))))}return Ta(n.a)},lo=function(n){var r=n;if(pe(r.W)){var t=r.G;if(t.$){var e=r.a5;if(e.$)return it(le(Ei));var u=e.a;return it(le(O(u,{ac:so(le(u))})))}return it(oe(t.a))}return ut(o(jt,", ",r.W))},bo=t(function(n,r){return{a5:o(ru,va,lo(r)),a8:n}}),vo={G:xr,W:v,a5:et(Ei)},po=t(function(n,r){var t=r.a5;return t.$?r:O(r,{a5:et(n(t.a))})}),mo=t(function(n,r){return po(function(t){return O(t,{ac:ei(o(Lr,I(n,r),o(ru,v,o(qt,Ut(Bt),t.ac))))})})}),ho=function(n){return po(function(r){return O(r,{bh:et(n)})})},$o=function(n){return po(function(r){return O(r,{bj:et(n)})})},go=t(function(n,r){var t=r.a5;return{G:r.G,W:o(Lr,n,r.W),a5:t}}),yo=function(n){var r=lo(n);if(r.$)return go(r.a);var t=r.a;return po(function(n){return O(n,{bw:fe(t)})})},wo=function(n){return po(function(r){return O(r,{aI:et(n)})})},xo=function(n){return po(function(r){return O(r,{aL:et(n)})})},jo=o(Yr,function(n){var r=n.a,t=n.b;return ye(function(n){return o(Ne,function(t){return P(n,h([I(r,t)]))},lo(t))})},it(v)),ko=t(function(n,r){var t=jo(r);return t.$?go(t.a):po(n(et(t.a)))})(t(function(n,r){return O(r,{aY:n})})),No=function(n){return po(function(r){return O(r,{a8:et(n)})})},_o=t(function(n,r){return(t=o(Ne,function(n){return o(po,function(r){return O(r,{S:de(n)})},r)},je(n))).$?o(go,t.a,r):t.a;var t}),Io=dr,Ao=function(n){return f(Yt,t(function(n,r){var t=n.b,e=r.b;return I(o(Lr,n.a,r.a),o(Lr,t,e))}),I(v,v),n)},Eo=An,Oo=t(function(n,r){var t=r.b;return I(n(r.a),t)}),Po=t(function(n,r){return I(r.a,n(r.b))}),Lo=t(function(n,r){return 1===n.$?r:r+":"+xt(n.a)}),Co=e(function(n,r,t){return 1===r.$?t:P(t,P(n,r.a))}),Mo=t(function(n,r){switch(n.$){case 3:var e=n.a;return I(r,e.$?function(n){return o(Su,Iu,vn(function(){try{vr.location=n}catch(n){Pn.location.reload(!1)}}))}(e.a):o(Io,r.X,function(n){return f(Co,"#",n.az,f(Co,"?",n.a$,P(o(Lo,n.aV,P(n.a_?"https://":"http://",n.aA)),n.bE)))}(e.a)));case 2:var u=n.a;return o(Mo,{$:0,a:u.$?0:u.a},r);case 1:var i=n.a,a=n.b,c=Ao(o(yt,t(function(n,r){var t=r.y,e=r.v;return x(n,i)?o(Po,Eo(wr(i)),o(Oo,function(n){return{v:e,y:n}},o(ao,a,t).a)):I({v:e,y:t},za)}),r.w)),s=c.b;return I(O(r,{w:c.a}),Qu(s));default:var l=n.a,b=Ao(o(yt,t(function(n,r){var t={bg:!1,bi:!0,bz:"form"+xt(n),bH:!1,bK:1};return o(Po,Eo(wr(n)),o(Oo,function(n){return{v:r,y:n}},f(Fa,t,r.a5,xr)))}),function(){switch(l){case 0:return h([o(bo,"Single line text field",o($o,"Single line text field",o(No,"Text field",o(_o,"string",vo)))),o(bo,"Multiline text field",f(mo,"ui",ei(h([I("widget",Ai("multiline"))])),o($o,"Multi-line text field",o(No,"Multiline",o(_o,"string",vo))))),o(bo,"Configured multiline text field",f(mo,"ui",ei(h([I("widget",ei(h([I("type",Ai("multiline")),I("minRows",co(5)),I("maxRows",co(10))])))])),o($o,"Configurable multi-line text field",o(No,"Multiline",o(_o,"string",vo))))),o(bo,"Password field",f(mo,"ui",ei(h([I("widget",Ai("password"))])),o($o,"Must contain enough various symbols",o(No,"Password",o(_o,"string",vo))))),o(bo,"Checkbox",o($o,"Booleans default to checkboxes",o(No,"Boolean as checkbox",o(_o,"boolean",vo)))),o(bo,"Switch",o($o,"Booleans can be configured to look like switch",f(mo,"ui",ei(h([I("widget",Ai("switch"))])),o(No,"Boolean as switch",o(_o,"boolean",vo)))))]);case 1:var n=t(function(n,r){return o(mo,"ui",ei(h([I("rule",ei(h([I("action",Ai(n)),I("path",Ai("/enabled")),I("condition",ei(h([I("const",Ta(!1)),I("default",Ta(!1))])))]))),I("widget",Ai(r))])))}),r=function(n){return o(mo,"ui",ei(h([I("rule",ei(h([I("action",Ai(n)),I("path",Ai("/enabled")),I("condition",ei(h([I("const",Ta(!1)),I("default",Ta(!1))])))])))])))},e=I("enabled",f(mo,"ui",ei(h([I("widget",Ai("switch"))])),o(No,"Enable",o(ho,Ta(!1),o(_o,"boolean",vo)))));return h([o(bo,"Disable input",o(ko,h([e,I("disableDemo",o(r,"disable",o($o,"Will be enabled when switch turned on",o(_o,"string",o(No,"Rule: disable text field",vo)))))]),o(_o,"object",vo))),o(bo,"Hide input",o(ko,h([I("enabled",f(mo,"ui",ei(h([I("widget",Ai("switch"))])),o(ho,Ta(!1),o(No,"Show",o(_o,"boolean",vo))))),I("hideDemo",o(r,"hide",o($o,"Will be shown when switch turned on",o(_o,"string",o(No,"Rule: hide text field",vo)))))]),o(_o,"object",vo))),o(bo,"Disable selection controls",o(ko,h([e,I("disableCheckboxDemo",f(n,"disable","checkbox",o($o,"Will be enabled when switch turned on",o(_o,"boolean",o(No,"Rule: disable checkbox",vo))))),I("disableSwitchDemo",f(n,"disable","switch",o($o,"Will be enabled when switch turned on",o(_o,"boolean",o(No,"Rule: disable switch",vo)))))]),o(_o,"object",vo))),o(bo,"Disable nested form",o(ko,h([e,I("form",o(ko,h([I("nestedForm",o(r,"disable",o(ko,h([I("disableDemo",o($o,"Will be enabled when switch turned on",o(_o,"string",o(No,"Rule: disable nested form",vo))))]),o(_o,"object",vo))))]),o(_o,"object",vo)))]),o(_o,"object",vo))),o(bo,"Local scope",o(yo,o(ko,h([I("enabled",f(mo,"ui",ei(h([I("widget",Ai("switch"))])),o($o,"Enable editing",o(No,"enable",o(_o,"boolean",vo))))),I("hideDemo",f(mo,"ui",ei(h([I("rule",ei(h([I("action",Ai("disable")),I("path",Ai("../enabled")),I("condition",ei(h([I("const",Ta(!1)),I("default",Ta(!1))])))])))])),o($o,"Local condition demo",o(_o,"string",o(No,"Rule: disable based on local condition",vo)))))]),o(_o,"object",vo)),o(_o,"array",vo)))]);case 2:return h([o(bo,"Single field validation",o(xo,2,o($o,"Enter name between 2 and 10 characters",o(No,"Name",o(_o,"number",vo))))),o(bo,"Multiline field validation",o(wo,40,o($o,"Enter you bio",f(mo,"ui",ei(h([I("widget",ei(h([I("type",Ai("multiline")),I("minRows",co(3)),I("maxRows",co(6))])))])),o(No,"Bio",o(_o,"string",vo))))))]);default:return h([{a5:fo,a8:"Fligth booking input generator"}])}}()));return s=b.b,I(O(r,{w:b.a,R:l}),Qu(s))}}),To=i(function(n,r,t,e,u){return{q:e,s:t,n:r,bN:u,t:n}}),Do=o(t(function(n,r){return function(n){var t=n.t,e=n.n,u=n.s,i=n.q,a=n.bN;if(e.b){var f=e.a,c=e.b,l=r(f);if(l.$)return v;var b=l.a;return h([s(To,o(Lr,f,t),c,u,i,a(b))])}return v}}),"SHOWCASE",function(n){switch(n){case"types":return et(0);case"rules":return et(1);case"validation":return et(2);case"form":return et(3);default:return xr}}),So=t(function(n,r){return s(To,r.t,r.n,r.s,r.q,n(r.bN))}),qo=t(function(n,r){var t=r;return function(r){var e=r.t,u=r.n,i=r.s,a=r.q;return o($e,So(r.bN),t(s(To,e,u,i,a,n)))}}),Ro=t(function(n,r){return Ni(o($e,n,r))}),Fo=function(n){return function(r){var t=r.t,e=r.n,u=r.s,i=r.q,a=r.bN;if(e.b){var f=e.a,c=e.b;return x(f,n)?h([s(To,o(Lr,f,t),c,u,i,a)]):v}return v}},Bo=t(function(n,r){var t=n,e=r;return function(n){return o(Ro,e,t(n))}}),Vo=(Aa=h([o(qo,Gt,o(Bo,Fo("json-form"),o(Bo,Fo("showcase"),Do)))]),function(n){return o(Ro,function(r){return r(n)},Aa)}),Wo=function(n){return n.b&&(""!==n.a||n.b.b)?o(Lr,n.a,Wo(n.b)):v},Jo=function(n){try{return et(decodeURIComponent(n))}catch(n){return xr}},Yo=t(function(n,r){return et(1===r.$?h([n]):o(Lr,n,r.a))}),zo=t(function(n,r){var t=o(kt,"=",n);if(t.b&&t.b.b&&!t.b.b.b){var e=t.b.a,u=Jo(t.a);if(1===u.$)return r;var i=u.a,a=Jo(e);return 1===a.$?r:f(ju,i,Yo(a.a),r)}return r}),Ko=t(function(n,r){var t;return function(n){n:for(;;){if(n.b){var r=n.a,t=r.n;if(t.b){if(""!==t.a||t.b.b){n=n.b;continue n}return et(r.bN)}return et(r.bN)}return xr}}(n(s(To,v,function(){var n=o(kt,"/",r.bE);return Wo(n.b&&""===n.a?n.b:n)}(),1===(t=r.a$).$?cu:f(Yt,zo,cu,o(kt,"&",t.a)),r.az,Gt)))}),Go=function(n){return o(Ko,Vo,n)},Ho=e(function(n,r,t){return o(Mo,yr(Go(r)),{w:v,X:t,R:0})}),Zo=Tn("div"),Uo=Tn("span"),Xo=Cn,Qo=t(function(n,r){return o(Fn,n,Ai(r))}),nf=Qo("className"),rf=Rn,tf=t(function(n,r){return o(Zo,h([nf("card"),o(rf,"width","100%")]),h([o(Uo,h([nf("card__title")]),h([Xo(n)])),r]))}),ef=function(n){var r=t(function(n,r){return o(Uo,h([nf("json-view__"+n)]),h([Xo(r)]))}),e=function(n){return o(yi,Ai,o(yi,_t(0),r(n)))};switch(n.$){case 4:return o(r,"number",au(n.a));case 3:return o(r,"null","null");case 2:return o(r,"bool",n.a?"true":"false");case 5:return o(e,"string",n.a);case 0:var u=n.a,i=mt(u)-1;return o(Uo,v,h([Xo("{"),o(Zo,h([nf("json-view__nested-props")]),o(yt,t(function(n,r){var t=r.b;return o(Uo,v,h([o(e,"attr",r.a),Xo(": "),ef(t),x(n,i)?Xo("\n"):Xo(",\n")]))}),u)),Xo("}")]));default:var a=n.a;return i=mt(a)-1,o(Uo,v,h([Xo("["),o(Zo,h([nf("json-view__nested-props")]),o(yt,t(function(n,t){return o(Uo,v,h([o(r,"attr",xt(n)),Xo(": "),ef(t),x(n,i)?Xo("\n"):Xo(",\n")]))}),a)),Xo("]")]))}},uf={$:3},af={$:2},of=function(n){var r=eu(n).bb;return r.$||1!==r.a.$?uf:af},ff={$:6},cf={$:4},sf={$:1},lf={$:0},bf=t(function(n,r){if(eu(r).bk)return cf;if(1===r.$){var t=r.a,e=t.S;n:for(;1===e.$;)switch(e.a){case 1:case 0:return sf;case 2:return lf;case 3:return of(r);case 5:var u=t.aY;return u.$?cf:{$:5,a:u.a};case 4:return ff;default:break n}return cf}return cf}),df=e(function(n,r,t){return{$:8,a:n,b:r,c:t}}),vf=t(function(n,r){return{$:4,a:n,b:r}}),pf=function(n){return{$:1,a:n}},mf=e(function(n,r,t){return 1===n.$?o(Ze,t,r(n.a)):t}),hf=e(function(n,r,t){var e=o(lu,t,n.W),u=!x(e,xr)&&o(_i,t,n.F)&&o(_i,t,n.i);return I(u,Xo(u?"Error: "+o(jt,", ",o(Ze,v,e)):function(n){return f(mf,n,function(n){return n.bj},"")}(r)))}),$f=e(function(n,r,t){n:for(;;){if(n>0){if(r.b){var e=r.a;n-=1,r=r.b,t=o(Lr,e,t);continue n}return t}return t}}),gf=t(function(n,r){return zr(f($f,n,r,v))}),yf=e(function(n,r,t){if(r>0){var e=I(r,t);n:for(;;){r:for(;;){if(!e.b.b)return t;if(!e.b.b.b){if(1===e.a)break n;break r}switch(e.a){case 1:break n;case 2:var u=e.b;return h([u.a,u.b.a]);case 3:if(e.b.b.b.b){var i=e.b,a=i.b;return h([i.a,a.a,a.b.a])}break r;default:if(e.b.b.b.b&&e.b.b.b.b.b){var c=e.b,s=c.b,l=s.b,b=l.b,d=b.b;return o(Lr,c.a,o(Lr,s.a,o(Lr,l.a,o(Lr,b.a,n>1e3?o(gf,r-4,d):f(yf,n+1,r-4,d)))))}break r}}return t}return h([e.b.a])}return v}),wf=t(function(n,r){return f(yf,0,n,r)}),xf=e(function(n,r,e){var u=function(n){return f(Yr,t(function(n,r){return""===n?v:"."===n?r:".."===n?o(wf,mt(r)-1,r):P(r,h([n]))}),r,o(kt,"/",n))},i=t(function(r,t){return Ra(o(Ze,function(n){return 1===n.$?Ma(o(Ze,qa,n.a.bh)):ya}(t),o(He,o(yi,Ga(r),Ue),n)))}),a=t(function(n,r){return o(ru,!1,o(Ne,function(){return!0},f(ga,{P:!0},o(i,n,r),r)))}),c=function(){n:for(;!e.$;)switch(e.a.$){case 3:var n=e.a,r=n.b;return o(a,u(n.a),r);case 2:var t=e.a;return r=t.b,!o(a,u(t.a),r);default:break n}return!1}();return I(function(){n:for(;!e.$;)switch(e.a.$){case 1:var n=e.a,r=n.b;return o(a,u(n.a),r);case 0:var t=e.a;return r=t.b,!o(a,u(t.a),r);default:break n}return!1}(),c)}),jf=t(function(n,r){return t=f(mf,r,function(n){return n.a8},""),n?t+" *":t;var t}),kf=Tn("input"),Nf=Tn("label"),_f=t(function(n,r){return o(Fn,n,Ta(r))}),If=_f("checked"),Af=function(n){return n.b},Ef=function(n){return nf(o(jt," ",o($e,Gr,o(ui,Af,n))))},Of=_f("disabled"),Pf=Qo("id"),Lf=Qo("name"),Cf=Qo("type"),Mf=qn,Tf=t(function(n,r){return o(Mf,n,{$:0,a:r})}),Df=function(n){return o(Tf,"blur",Tt(n))},Sf=o(zt,h(["target","checked"]),Ht),qf=function(n){return o(Tf,"change",o(ne,n,Sf))},Rf=function(n){return o(Tf,"focus",Tt(n))},Ff=i(function(n,r,t,e,u){var i,a=!(i=o(He,o(yi,Ga(u),Ue),n.bN)).$&&2===i.a.$&&i.a.a,c=n.V.bz+"_"+o(jt,"_",u),s=f(xf,n.bN,u,eu(r).a4),l=s.b,b=e||s.a,d=f(hf,n,r,u),p=d.a,m=d.b;return o(Zo,h([Ef(h([I("jf-element",!0),I("jf-element--hidden",l),I("jf-element--invalid",p)]))]),h([o(Nf,h([Ef(h([I("jf-checkbox",!0),I("jf-checkbox--on",a),I("jf-checkbox--focused",o(Ze,!1,o(ta,Dr(u),n.g))),I("jf-checkbox--invalid",p),I("jf-checkbox--disabled",b),I("jf-checkbox--hidden",l)]))]),h([o(kf,h([Cf("checkbox"),nf("jf-checkbox__input"),If(a),Pf(c),Lf(c),Of(b),Rf(pf(et(u))),Df(pf(xr)),qf(o(yi,xa,vf(u)))]),v),o(Uo,h([nf("jf-checkbox__label")]),h([Xo(o(jf,t,r))])),o(Zo,h([nf("jf-checkbox__box-outline")]),h([o(Zo,h([nf("jf-checkbox__tick-outline")]),v)])),o(Zo,h([nf("jf-checkbox__helper-text")]),h([m]))]))]))}),Bf=i(function(n,r,t,e,u){var i,a=!(i=o(He,o(yi,Ga(u),Ue),n.bN)).$&&2===i.a.$&&i.a.a,c=n.V.bz+"_"+o(jt,"_",u),s=f(xf,n.bN,u,eu(r).a4),l=s.b,b=e||s.a,d=f(hf,n,r,u),p=d.a,m=d.b;return o(Zo,h([Ef(h([I("jf-element",!0),I("jf-element--hidden",l),I("jf-element--invalid",p)]))]),h([o(Nf,h([Ef(h([I("jf-switch",!0),I("jf-switch--on",a),I("jf-switch--focused",o(Ze,!1,o(ta,Dr(u),n.g))),I("jf-switch--invalid",p),I("jf-switch--disabled",b),I("jf-switch--hidden",l)]))]),h([o(kf,h([Cf("checkbox"),nf("jf-switch__input"),If(a),Rf(pf(et(u))),Df(pf(xr)),qf(o(yi,xa,vf(u))),Pf(c),Lf(c),Of(b)]),v),o(Uo,h([nf("jf-switch__label")]),h([Xo(o(jf,t,r))])),o(Zo,h([nf("jf-switch__track")]),v),o(Zo,h([nf("jf-switch__thumb")]),v),o(Zo,h([nf("jf-switch__helper-text")]),h([m]))]))]))}),Vf=Mn("http://www.w3.org/2000/svg"),Wf=Vf("svg"),Jf=Bn("class"),Yf=Bn("fill"),zf=Bn("height"),Kf=Bn("stroke"),Gf=Bn("stroke-linecap"),Hf=Bn("stroke-linejoin"),Zf=Bn("stroke-width"),Uf=Bn("style"),Xf=Bn("viewBox"),Qf=Bn("width"),nc=t(function(n,r){var t=h([Jf("feather feather-"+n),Yf("none"),zf("24"),Kf("currentColor"),Gf("round"),Hf("round"),Zf("2"),Xf("0 0 24 24"),Qf("24")]);return Wf(r.$?t:o(Lr,o(Tf,"click",Tt(r.a)),o(Lr,Uf("cursor: pointer"),t)))}),rc=Vf("circle"),tc=Vf("line"),ec=Bn("cx"),uc=Bn("cy"),ic=Bn("r"),ac=Bn("x1"),oc=Bn("x2"),fc=Bn("y1"),cc=Bn("y2"),sc=function(n){return f(nc,"x-circle",et(n),h([o(rc,h([ec("12"),uc("12"),ic("10")]),v),o(tc,h([ac("15"),fc("9"),oc("9"),cc("15")]),v),o(tc,h([ac("9"),fc("9"),oc("15"),cc("15")]),v)]))},lc=f(nc,"alert-circle",xr,h([o(rc,h([ec("12"),uc("12"),ic("10")]),v),o(tc,h([ac("12"),fc("8"),oc("12"),cc("12")]),v),o(tc,h([ac("12"),fc("16"),oc("12"),cc("16")]),v)])),bc=Vf("path"),dc=Bn("d"),vc=function(n){return{$:10,a:n}},pc=e(function(n,r,t){return{$:6,a:n,b:r,c:t}}),mc=e(function(n,r,t){return{$:7,a:n,b:r,c:t}}),hc=t(function(n,r){return{$:3,a:n,b:r}}),$c={$:9},gc=t(function(n,r){return N(n,r)<0?n:r}),yc=Tn("datalist"),wc=Tn("option"),xc=Tn("textarea"),jc=Bn("list"),kc=function(n){return o(Bn,"rows",xt(n))},Nc=Qo("value"),_c=function(n){return I(n,!0)},Ic=t(function(n,r){return o(Mf,n,{$:1,a:r})}),Ac=o(zt,h(["target","value"]),Mt),Ec=function(n){return o(Ic,"input",o(ne,_c,o(ne,n,Ac)))},Oc=a(function(n,r,t,e,u,i){var a,c=eu(r),s=(a=c.bb).$||2!==a.a.$?t?et({aF:8,aK:5}):xr:et(a.a.a),l=x(c.bb,et(Je)),b=1===n.V.bK,d=o(Ze,!1,o(ta,Dr(i),n.g)),p=P(n.V.bz+"_",o(jt,"_",i)),m=t?d?n.o:o(Ze,"",o(ta,o(yi,Ra,_t(4)),Ue(o(Ga,i,o(Ze,ka(v),n.bN))))):o(Ze,"",o(ta,Qa,o(He,Ue,o(ta,Ga(i),n.bN)))),$=function(n){return f(Dt,n,o(zt,h(["target","scrollHeight"]),Zt),o(zt,h(["target","value"]),Mt))},g=f(xf,n.bN,i,c.a4),y=g.b,w=u||g.a,j=f(hf,n,r,i),k=j.a,N=j.b,_=l?et(n.ab?f(nc,"eye-off",et($c),h([o(bc,h([dc("M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24")]),v),o(tc,h([ac("1"),fc("1"),oc("23"),cc("23")]),v)])):f(nc,"eye",et($c),h([o(bc,h([dc("M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z")]),v),o(rc,h([ec("12"),uc("12"),ic("3")]),v)]))):k&&n.V.bH?et(lc):e||""===m||w?xr:et(sc(vc(i))),A=function(){if(1===r.$){var n=r.a;return I(o(ta,$e(function(n){return o(ru,"",o(qt,Mt,n))}),n.bm),o(ta,$e(function(n){return o(ru,"",o(qt,Mt,n))}),n.w))}return I(xr,xr)}(),E=A.a,O=A.b,L=P(h([nf("jf-textfield__input"),Nc(m),Pf(p),Lf(p),(!1,o(Qo,"autocomplete","off")),Of(w)]),x(E,xr)&&x(O,xr)?v:h([jc(p+"_enum")])),C=function(){if(s.$)return o(kf,P(L,h([Cf(l&&!n.ab?"password":"text"),Ec(o(yi,Na,vf(i))),Rf(pf(et(i))),Df(pf(xr))])),v);var r,e=s.a,u=n.V.bi?b?26:35:37,a=(r=o(lu,i,n.p)).$?e.aK:o(gc,fa((r.a-u)/18),e.aF);return o(xc,t?o(Lr,o(Tf,"input",$(pc(i))),o(Lr,kc(a),o(Lr,Rf(o(hc,!1,et(i))),o(Lr,Df(o(hc,!1,xr)),L)))):o(Lr,o(Tf,"input",$(mc(i))),o(Lr,kc(a),o(Lr,Rf(pf(et(i))),o(Lr,Df(pf(xr)),L)))),v)}();return o(Zo,h([Ef(h([I("jf-element",!0),I("jf-element--hidden",y),I("jf-element--invalid",k)]))]),h([o(Zo,h([Ef(h([I("jf-textfield",!0),I("jf-textfield--outlined",b),I("jf-textfield--dense",n.V.bi),I("jf-textfield--focused",o(Ze,!1,o(ta,Dr(i),n.g))),I("jf-textfield--empty",""===m),I("jf-textfield--invalid",k),I("jf-textfield--has-icon",!x(_,xr)),I("jf-textfield--disabled",w),I("jf-textfield--multiline",!x(s,xr)),I("jf-textfield--json",t)]))]),h([o(Nf,h([nf("jf-textfield__label")]),h([Xo(o(jf,e,r))])),C,o(Ze,Xo(""),_)])),o(Zo,h([nf("jf-helper-text")]),h([N])),function(){if(E.$)return O.$?Xo(""):(n=O.a,o(yc,h([Pf(p+"_enum")]),o($e,function(n){return o(wc,h([Nc(n)]),v)},n)));var n=E.a;return o(yc,h([Pf(p+"_enum")]),o($e,function(n){return o(wc,h([Nc(n)]),v)},n))}()]))}),Pc=function(n){return{$:5,a:n}},Lc=i(function(n,r,t,e,u){var i=eu(r),a=o(Ze,!1,o(ta,Dr(u),n.g)),c=o(jt,"_",u),s=a?n.o:o(Ze,"",o(ta,Qa,o(He,Ue,o(ta,Ga(u),n.bN)))),l=f(xf,n.bN,u,i.a4),b=l.b,d=e||l.a,p=o(kf,h([nf("jf-textfield__input"),Rf(o(hc,!0,et(u))),Df(o(hc,!0,xr)),Ec(Pc),Pf(c),Lf(c),Nc(s),Cf("number"),Of(d)]),v),m=f(hf,n,r,u),$=m.a,g=m.b,y=$?et(lc):t||""===s||d?xr:et(sc(vc(u)));return o(Zo,h([Ef(h([I("jf-element",!0),I("jf-element--hidden",b),I("jf-element--invalid",$)]))]),h([o(Zo,h([Ef(h([I("jf-textfield",!0),I("jf-textfield--outlined",1===n.V.bK),I("jf-textfield--dense",n.V.bi),I("jf-textfield--focused",a),I("jf-textfield--empty",""===s),I("jf-textfield--invalid",$),I("jf-textfield--has-icon",!0),I("jf-textfield--disabled",d),I("jf-textfield--hidden",b)]))]),h([o(Nf,h([nf("jf-textfield__label")]),h([Xo(o(jf,t,r))])),p,o(Ze,Xo(""),y)])),o(Zo,h([nf("jf-helper-text")]),h([g]))]))}),Cc=Tn("button"),Mc=function(n){return o(Tf,"click",Tt(n))},Tc=i(function(n,r,e,u,i){var a,c=1===(a=o(ru,wa(v),o(Ga,i,o(Ze,ya,n.bN)))).$?a.a:v,l=f(xf,n.bN,i,eu(r).a4),b=l.a;if(l.b)return Xo("");if(1===r.$){var d=r.a.bw;if(1===d.$){var p=d.a;return o(Zo,v,h([o(Zo,v,o(yt,t(function(r){var t=xt(r);return s(Dc,n,p,1===p.$&&o(_i,t,o(Ze,v,p.a.a3)),u||b,P(i,h([t])))}),c)),o(Zo,h([nf("array-item-add")]),h([o(Cc,h([nf("button"),Mc(f(df,i,mt(c),p))]),h([Xo("ADD ITEM")]))]))]))}return Xo("")}return Xo("")}),Dc=i(function(n,r,t,e,u){return o(Zo,h([nf("nesting-level-"+xt(mt(u)))]),h([function(){var i=o(bf,n,r);switch(i.$){case 0:return l(Oc,n,r,!1,t,e,u);case 4:return l(Oc,n,r,!0,t,e,u);case 1:return s(Lc,n,r,t,e,u);case 2:return s(Bf,n,r,t,e,u);case 3:return s(Ff,n,r,t,e,u);case 5:return l(Sc,n,r,i.a,t,e,u);default:return s(Tc,n,r,t,e,u)}}()]))}),Sc=a(function(n,r,t,e,u,i){var a,c,l,b=1===r.$?o(Ze,v,r.a.a3):v,d=nu(zr(i)),p=""===(a=o(jf,e,r))?o(Ze,"",d):a,m=o(to,i,n.x),$=(n.V.bg||eu(r).bo)&&!x(i,v),g=f(xf,n.bN,i,eu(r).a4),y=g.a;return g.b?Xo(""):o(Zo,h([nf("jf-object")]),h([""!==p?o(Zo,P(h([Ef(h([I("jf-heading",!0),I("jf-heading--expandable",$),I("jf-heading--expanded",$&&m)]))]),$?h([Mc((l=i,{$:12,a:l}))]):v),h([Xo(p)])):Xo(""),m||!$?o(Zo,h([Ef(h([I("jf-section--expandable",$),I("jf-section",!0)]))]),(c=t,o($e,function(r){var t=r.a;return s(Dc,n,r.b,o(_i,t,b),u||y,P(i,h([t])))},c))):Xo("")]))}),qc=Tn("h3"),Rc=Sn,Fc=o(yi,function(n){var r=h(["showcase",function(){switch(n){case 0:return"types";case 1:return"rules";case 2:return"validation";default:return"form"}}()]);return"/json-form/"+o(jt,"/",r)},function(n){return o(Qo,"href",/^javascript:/i.test((r=n).replace(/\s/g,""))?"":r);var r}),Bc=Tn("a"),Vc=t(function(n,r){return o(Bc,h([Ef(h([I("tab",!0),I("tab--active",x(r,n))])),Fc(r)]),h([Xo(function(){switch(r){case 0:return"Types";case 1:return"Rules";case 2:return"Validation";default:return"Form Layout"}}())]))}),Wc=h([0,1,2,3]),Jc=_n(v);Ea={Main:{init:(Pa=(Oa={bv:Ho,bB:o(yi,Go,yr),bC:function(n){return{$:3,a:n}},bJ:function(){return Jc},bL:Mo,bO:function(n){return{be:h([function(n){return o(Zo,h([nf("app-topbar")]),o($e,Vc(n.R),Wc))}(n),function(n){var r=t(function(n,r){var t,e,u=r.y,i=r.v;return o(Zo,h([nf("example-section")]),h([o(qc,h([nf("example-section__heading")]),h([Xo(i.a8)])),o(Zo,h([nf("example-section__content")]),h([o(Zo,h([o(rf,"display","inline-block"),o(rf,"max-width","350px"),o(rf,"min-width","350px")]),h([o(tf,"Form",o(Zo,h([o(rf,"padding","10px"),o(rf,"background","var(--form-background)")]),h([o(Rc,wr(n),(e=u,o(Zo,v,h([s(Dc,e,e.a5,!1,!1,v)]))))]))),function(n){return o(Zo,h([o(rf,"margin-top","20px")]),h([n]))}(o(tf,"Data",(t=o(Ze,Xo(" "),o(ta,ef,u.bN)),o(Zo,h([nf("json-view")]),h([t])))))])),o(Zo,h([o(rf,"width","100%"),o(rf,"min-width","300px")]),h([function(){var n,r=Ma(so(i.a5));return o(tf,"Schema",(n=ef(r),o(Zo,h([nf("json-view")]),h([n]))))}()]))]))]))});return o(Zo,h([nf("app-content")]),h([o(Zo,v,o(yt,r,n.w))]))}(n)]),a8:"Json Form Demo"}}}).bB,La=Oa.bC,Ca=function(){Ca.a(Pa(br()))},sr({K:function(n){return Ca.a=n,vr.addEventListener("popstate",Ca),vr.navigator.userAgent.indexOf("Trident")<0||vr.addEventListener("hashchange",Ca),t(function(r,t){if(!t.ctrlKey&&!t.metaKey&&!t.shiftKey&&t.button<1&&!r.target&&!r.download){t.preventDefault();var e=r.href,u=br(),i=Xu(e).a;n(La(i&&u.a_===i.a_&&u.aA===i.aA&&u.aV.a===i.aV.a?{$:0,a:i}:function(n){return{$:1,a:n}}(e)))}})},bv:function(n){return f(Oa.bv,n,br(),Ca)},bO:Oa.bO,bL:Oa.bL,bJ:Oa.bJ}))(Bt)(0)}},n.Elm?function n(r,t){for(var e in t)e in r?"init"==e?w(6):n(r[e],t[e]):r[e]=t[e]}(n.Elm,Ea):n.Elm=Ea}(this)},function(n,r,t){"use strict";t.r(r);var e=!("localhost"!==window.location.hostname&&"[::1]"!==window.location.hostname&&!window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/));function u(n){navigator.serviceWorker.register(n).then(function(n){n.onupdatefound=function(){var r=n.installing;r.onstatechange=function(){"installed"===r.state&&(navigator.serviceWorker.controller?console.log("New content is available; please refresh."):console.log("Content is cached for offline use."))}}}).catch(function(n){console.error("Error during service worker registration:",n)})}t(9),function(){if("serviceWorker"in navigator){if(new URL("/json-form",window.location).origin!==window.location.origin)return;window.addEventListener("load",function(){var n="".concat("/json-form","/service-worker.js");e?function(n){fetch(n).then(function(r){404===r.status||-1===r.headers.get("content-type").indexOf("javascript")?navigator.serviceWorker.ready.then(function(n){n.unregister().then(function(){window.location.reload()})}):u(n)}).catch(function(){console.log("No internet connection found. App is running in offline mode.")})}(n):u(n)})}}(),t(10).Elm.Main.init({node:document.body})}],[[1,1,2]]]); +//# sourceMappingURL=main.2c571f6e.chunk.js.map \ No newline at end of file diff --git a/static/js/main.2c571f6e.chunk.js.map b/static/js/main.2c571f6e.chunk.js.map new file mode 100644 index 0000000..f7146ce --- /dev/null +++ b/static/js/main.2c571f6e.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["Main.elm","registerServiceWorker.js","index.js"],"names":["scope","F","arity","fun","wrapper","a","f","F2","b","F3","c","F4","d","F5","e","F6","A2","A3","A4","A5","A6","_JsArray_initialize","size","offset","func","result","Array","i","_JsArray_initializeFromList","max","ls","length","_Utils_Tuple2","_List_Nil","$","_List_Cons","hd","tl","_List_cons","_List_fromArray","arr","out","_List_toArray","xs","push","_List_map2","ys","_List_sortBy","sort","_Utils_cmp","_Debug_crash","identifier","Error","_Utils_eq","x","y","pair","stack","isEqual","_Utils_eqHelp","pop","depth","key","elm$core$Dict$toList","_Utils_equal","ord","_Utils_compare","n","elm$core$Basics$LT","elm$core$Basics$GT","elm$core$Basics$EQ","_Utils_Tuple3","_Utils_chr","_Utils_update","oldRecord","updatedFields","newRecord","_Utils_ap","root","curr","_Basics_ceiling","Math","ceil","_Basics_floor","floor","_Basics_round","round","_Basics_log","log","_String_foldl","state","string","len","char","word","charCodeAt","_String_split","sep","str","split","_String_join","strs","join","_String_slice","start","end","slice","_String_all","isGood","_String_contains","sub","indexOf","_String_startsWith","_String_endsWith","lastIndexOf","_String_indexes","subLen","is","_String_fromNumber","number","_Json_decodeField","field","decoder","_Json_mapMany","decoders","g","_Json_andThen","callback","h","_Json_map1","d1","_Json_map2","d2","_Json_map3","d3","_Json_map4","d4","_Json_runOnString","_Json_runHelp","JSON","parse","elm$core$Result$Err","elm$json$Json$Decode$Failure","message","_Json_wrap","_Json_run","value","_Json_unwrap","elm$core$Result$Ok","_Json_expecting","isFinite","String","isArray","_Json_runArrayDecoder","_Json_toElmArray","elm$core$Result$isOk","elm$json$Json$Decode$Field","index","elm$json$Json$Decode$Index","keyValuePairs","hasOwnProperty","elm$core$List$reverse","answer","errors","temp","elm$json$Json$Decode$OneOf","toElmValue","array","elm$core$Array$initialize","type","_Json_equality","_Json_listEquality","aDecoders","bDecoders","_Json_encode","indentLevel","stringify","_Json_addField","object","_Json_encodeNull","_Scheduler_succeed","_Scheduler_binding","_Scheduler_andThen","task","_Scheduler_onError","_Scheduler_guid","_Scheduler_rawSpawn","proc","_Scheduler_enqueue","_Scheduler_working","_Scheduler_queue","shift","_Scheduler_step","rootTag","newRoot","_Platform_effectManagers","_Platform_instantiateManager","info","sendToApp","router","undefined","onEffects","onSelfMsg","cmdMap","subMap","loop","msg","j","_Platform_sendToApp","_Platform_batch","list","m","_VirtualDom_divertHrefToApp","_Platform_map","tagger","bag","o","_Platform_dispatchEffects","managers","cmdBag","subBag","effectsDict","home","_Platform_gatherEffects","isCmd","taggers","k","effect","q","p","l","_Platform_toEffect","newEffect","effects","_Platform_insert","_VirtualDom_doc","document","_VirtualDom_appendChild","parent","child","appendChild","_VirtualDom_text","_VirtualDom_nodeNS","namespace","tag","factList","kidList","kids","descendantsCount","kid","_VirtualDom_organizeFacts","_VirtualDom_node","_VirtualDom_keyedNodeNS","_VirtualDom_passiveSupported","_VirtualDom_map","node","_VirtualDom_on","handler","_VirtualDom_style","_VirtualDom_property","_VirtualDom_attribute","facts","entry","subFacts","_VirtualDom_addClass","newClass","classes","_VirtualDom_render","vNode","eventNode","createTextNode","subNode","subEventRoot","domNode","elm_event_node_ref","_VirtualDom_applyFacts","createElementNS","createElement","addEventListener","_VirtualDom_applyStyles","_VirtualDom_applyEvents","_VirtualDom_applyAttrs","_VirtualDom_applyAttrsNS","styles","domNodeStyle","style","attrs","setAttribute","removeAttribute","nsAttrs","setAttributeNS","removeAttributeNS","events","allCallbacks","elmFs","newHandler","oldCallback","removeEventListener","_VirtualDom_makeCallback","passive","elm$virtual_dom$VirtualDom$toHandlerInt","window","Object","defineProperty","get","initialHandler","event","stopPropagation","ae","currentEventNode","aa","preventDefault","_VirtualDom_equalEvents","_VirtualDom_pushPatch","patches","data","patch","r","s","t","u","_VirtualDom_diffHelp","xType","yType","keyedNode","keyedKids","_VirtualDom_dekey","xRefs","yRefs","same","subPatches","xTaggers","yTaggers","nesting","xSubNode","ySubNode","as","bs","_VirtualDom_pairwiseRefEqual","_VirtualDom_diffNodes","_VirtualDom_diffKids","_VirtualDom_diffKeyedKids","factsDiff","_VirtualDom_diffFacts","diffKids","category","diff","xKey","xValue","yValue","subDiff","yKey","xParent","yParent","xKids","yKids","xLen","yLen","v","minLen","xKid","rootIndex","localPatches","changes","inserts","xIndex","yIndex","xNode","yNode","newMatch","oldMatch","xNext","yNext","xNextKey","xNextNode","yNextKey","yNextNode","_VirtualDom_insertNode","_VirtualDom_removeNode","endInserts","w","_VirtualDom_POSTFIX","vnode","A","z","_VirtualDom_applyPatches","rootDomNode","oldVirtualNode","_VirtualDom_addDomNodes","_VirtualDom_addDomNodesHelp","low","high","patchType","vKids","childNodes","vKid","nextLow","_VirtualDom_applyPatchesHelp","localDomNode","newNode","_VirtualDom_applyPatch","parentNode","replaceChild","_VirtualDom_applyPatchRedraw","replaceData","removeChild","theEnd","insertBefore","frag","createDocumentFragment","_VirtualDom_applyPatchReorderEndInsertsHelp","insert","_VirtualDom_applyPatchReorder","_Browser_document","impl","flagDecoder","debugMetadata","args","init","update","subscriptions","stepperBuilder","model","stepper","ports","manager","_Platform_setupEffects","viewMetadata","_Platform_initialize","bv","bL","bJ","initialModel","divertHrefToApp","K","view","bO","title","bodyNode","body","currNode","_VirtualDom_virtualize","nodeType","textContent","attrList","attributes","attr","name","tagName","toLowerCase","draw","updateIfNeeded","_Browser_requestAnimationFrame","nextModel","isSync","_Browser_makeAnimator","doc","nextNode","be","_VirtualDom_diff","a8","requestAnimationFrame","setTimeout","_Browser_getUrl","elm$url$Url$fromString","location","href","_Browser_pushUrl","url","elm$core$Task$perform","elm$core$Basics$never","history","pushState","_Browser_window","_Browser_withNode","id","doStuff","getElementById","elm$browser$Browser$Dom$NotFound","_Browser_call","functionName","_Regex_fromStringWith","options","flags","aN","ak","elm$core$Maybe$Just","RegExp","error","elm$core$Maybe$Nothing","_Regex_contains","re","match","_Regex_replaceAtMost","replacer","count","replace","arguments","submatches","submatch","elm$regex$Regex$Match","author$project$Demo$SetRoute","author$project$Demo$JsonFormMsg","author$project$Json$Form$UiSpec$blank","bk","bo","a4","bb","author$project$Json$Form$UiSpec$UiSpec","widget","rule","expandable","editAsJson","author$project$Json$Form$UiSpec$Disable","author$project$Json$Form$UiSpec$Enable","author$project$Json$Form$UiSpec$Hide","author$project$Json$Form$UiSpec$Show","elm$core$Basics$apR","elm$core$List$cons","elm$core$Dict$foldr","acc","left","$temp$func","$temp$acc","dict","elm$core$Basics$eq","elm$core$Array$Array_elm_builtin","elm$core$Basics$ceiling","elm$core$Basics$logBase","base","elm$core$Basics$toFloat","elm$core$Array$shiftStep","elm$core$Elm$JsArray$empty","elm$core$Array$empty","elm$core$Elm$JsArray$initializeFromList","elm$core$List$foldl","elm$core$Array$compressNodes","nodes","_n0","remainingNodes","newAcc","elm$core$Tuple$first","elm$core$Array$treeFromBuilder","nodeList","nodeListSize","newNodeSize","elm$core$Basics$floor","elm$core$Basics$max","elm$core$Elm$JsArray$length","elm$core$Array$builderToArray","reverseNodeList","builder","treeLen","correctNodeList","tree","elm$core$Elm$JsArray$initialize","elm$core$Array$initializeHelp","fn","fromIndex","tail","leaf","tailLen","elm$core$Char$toCode","code","elm$core$Char$isLower","_char","elm$core$Char$isUpper","elm$core$Char$isAlpha","elm$core$Char$isAlphaNum","elm$core$Char$isDigit","elm$core$List$length","elm$core$List$map2","elm$core$List$rangeHelp","lo","hi","$temp$lo","$temp$hi","$temp$list","elm$core$List$range","elm$core$List$indexedMap","elm$core$String$all","elm$core$String$fromInt","elm$core$String$join","chunks","elm$core$String$split","elm$json$Json$Decode$indent","elm$json$Json$Encode$encode","elm$json$Json$Decode$errorOneOf","elm$json$Json$Decode$errorToString","elm$json$Json$Decode$errorToStringHelp","context","errorToStringHelp","err","isSimple","_n1","_n2","rest","indexName","introduction","json","elm$json$Json$Decode$andThen","elm$json$Json$Decode$fail","elm$json$Json$Decode$field","elm$json$Json$Decode$map3","elm$json$Json$Decode$string","elm$json$Json$Decode$succeed","elm$json$Json$Decode$map2","NoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$custom","elm$json$Json$Decode$decodeValue","elm$json$Json$Decode$null","elm$json$Json$Decode$oneOf","elm$json$Json$Decode$value","NoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optionalDecoder","pathDecoder","valDecoder","fallback","input","rawValue","NoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional","elm$core$List$foldrHelper","ctr","r1","r2","r3","r4","elm$core$List$foldr","elm$json$Json$Decode$at","fields","NoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$requiredAt","path","elm$core$Basics$identity","elm$json$Json$Decode$bool","elm$json$Json$Decode$float","elm$json$Json$Decode$keyValuePairs","elm$json$Json$Decode$lazy","thunk","elm$json$Json$Decode$list","elm$json$Json$Decode$map","elm$json$Json$Decode$maybe","elm$json$Json$Decode$nullable","json_tools$json_schema$Json$Schema$Definitions$AnyType","json_tools$json_schema$Json$Schema$Definitions$ArrayOfItems","json_tools$json_schema$Json$Schema$Definitions$ArrayPropNames","json_tools$json_schema$Json$Schema$Definitions$BoolBoundary","json_tools$json_schema$Json$Schema$Definitions$BooleanSchema","json_tools$json_schema$Json$Schema$Definitions$ItemDefinition","json_tools$json_schema$Json$Schema$Definitions$NoItems","json_tools$json_schema$Json$Schema$Definitions$NumberBoundary","json_tools$json_schema$Json$Schema$Definitions$ObjectSchema","json_tools$json_schema$Json$Schema$Definitions$PropSchema","json_tools$json_schema$Json$Schema$Definitions$SingleType","json_tools$json_schema$Json$Schema$Definitions$SubSchema","type_","ref","description","_default","examples","definitions","multipleOf","maximum","exclusiveMaximum","minimum","exclusiveMinimum","maxLength","minLength","pattern","format","items","additionalItems","maxItems","minItems","uniqueItems","contains","maxProperties","minProperties","required","properties","patternProperties","additionalProperties","dependencies","propertyNames","_enum","_const","allOf","anyOf","oneOf","not","source","ag","ah","ai","aj","am","an","bh","ar","I","bj","bm","aw","ax","ay","aB","bw","aC","aD","aE","aG","aH","aI","aJ","aL","aO","aP","aR","aS","aT","aY","aZ","a0","a3","ac","S","a9","elm$core$List$isEmpty","json_tools$json_schema$Json$Schema$Definitions$failIfEmpty","elm$core$Basics$composeL","elm$core$List$map","elm$core$List$sortBy","elm$core$Result$andThen","json_tools$json_schema$Json$Schema$Definitions$NullableType","json_tools$json_schema$Json$Schema$Definitions$UnionType","json_tools$json_schema$Json$Schema$Definitions$stringToType","json_tools$json_schema$Json$Schema$Definitions$singleTypeDecoder","elm$core$Result$map","ra","json_tools$json_schema$Json$Schema$Definitions$multipleTypesDecoder","lst","_n0$3","res","results","otherList","json_tools$json_schema$Json$Schema$Definitions$nonEmptyUniqueArrayOfValuesDecoder","elm$json$Json$Decode$int","json_tools$json_schema$Json$Schema$Definitions$nonNegativeInt","json_tools$json_schema$Json$Schema$Definitions$cyclic$itemsDecoder","json_tools$json_schema$Json$Schema$Definitions$cyclic$decoder","json_tools$json_schema$Json$Schema$Definitions$cyclic$dependenciesDecoder","singleType","multipleTypes","exclusiveBoundaryDecoder","objectSchemaDecoder","json_tools$json_schema$Json$Schema$Definitions$cyclic$nonEmptyListOfSchemas","json_tools$json_schema$Json$Schema$Definitions$cyclic$schemataDecoder","json_tools$json_schema$Json$Schema$Definitions$itemsDecoder","json_tools$json_schema$Json$Schema$Definitions$dependenciesDecoder","json_tools$json_schema$Json$Schema$Definitions$decoder","json_tools$json_schema$Json$Schema$Definitions$nonEmptyListOfSchemas","json_tools$json_schema$Json$Schema$Definitions$schemataDecoder","author$project$Json$Form$UiSpec$ruleDecoder","action","condition","author$project$Json$Form$UiSpec$MultilineTextField","author$project$Json$Form$UiSpec$MultilineTextFieldConfig","minRows","maxRows","aF","aK","author$project$Json$Form$UiSpec$PasswordField","author$project$Json$Form$UiSpec$Switch","author$project$Json$Form$UiSpec$defaultMultilineTextFieldConfig","author$project$Json$Form$UiSpec$widgetDecoder","author$project$Json$Form$UiSpec$decoder","elm$core$Maybe$andThen","maybeValue","elm$core$Maybe$withDefault","maybe","elm$core$Result$toMaybe","elm$core$List$maybeCons","mx","elm$core$List$filterMap","elm$core$List$head","elm$core$Result$withDefault","def","json_tools$json_schema$Json$Schema$Definitions$getCustomKeywordValue","schema","os","author$project$JsonFormUtil$getUiSpec","settings","author$project$Json$Form$collectMultilinePaths","paths","_n1$5","_n4","_n7","listProps","_n8","propSchema","author$project$ErrorMessages$pluralize","elm$core$String$fromFloat","author$project$ErrorMessages$stringifyError","multiplier","actual","min","elm$core$Dict$RBEmpty_elm_builtin","elm$core$Dict$empty","elm$core$Basics$compare","elm$core$Dict$get","targetKey","right","elm$core$Dict$RBNode_elm_builtin","elm$core$Dict$balance","color","_n6","lRight","rK","rV","rLeft","rRight","elm$core$Dict$insertHelp","nColor","nKey","nValue","nLeft","nRight","elm$core$Dict$insert","elm$core$Dict$moveRedLeft","_n5","rlL","rlR","elm$core$Dict$moveRedRight","elm$core$Dict$removeHelpPrepEQGT","_n2$2","elm$core$Dict$removeMin","lLeft","elm$core$Dict$removeHelp","elm$core$Dict$removeHelpEQGT","elm$core$Dict$getMin","elm$core$Dict$remove","elm$core$Dict$update","alter","dictionary","author$project$Json$Form$dictFromListErrors","bx","bE","listDetails","at","author$project$Json$Form$Definitions$GetViewport","elm$core$Task$succeed","elm$core$Task$init","elm$core$Task$andThen","elm$core$Task$map","taskA","elm$core$Task$map2","taskB","elm$core$Platform$sendToApp","elm$core$Task$spawnCmd","_Scheduler_spawn","commands","tasks","elm$core$Task$command","toMessage","elm$core$String$slice","elm$core$String$dropLeft","elm$core$String$startsWith","elm$core$String$indexes","elm$core$String$isEmpty","elm$core$String$left","elm$core$String$contains","elm$core$String$toInt","total","code0","elm$url$Url$Url","protocol","host","port_","query","fragment","az","aA","aV","a_","a$","elm$url$Url$chompBeforePath","params","elm$url$Url$chompBeforeQuery","elm$url$Url$chompBeforeFragment","elm$url$Url$chompAfterProtocol","elm$core$Platform$Cmd$batch","elm$core$Set$empty","elm$core$Task$onError","elm$core$Task$attempt","resultToMessage","elm$json$Json$Encode$object","pairs","obj","elm$core$List$filter","elm$core$List$drop","drop","bu","by","bA","bI","elm$regex$Regex$contains","elm$regex$Regex$replace","Infinity","elm$regex$Regex$fromStringWith","elm$regex$Regex$fromString","elm$regex$Regex$never","json_tools$json_schema$Ref$absoluteUri","json_tools$json_schema$Ref$lastFragment","json_tools$json_schema$Ref$percent","json_tools$json_schema$Ref$slash","json_tools$json_schema$Ref$tilde","json_tools$json_schema$Ref$unescapeJsonPathFragment","json_tools$json_schema$Ref$parseJsonPointer","pointer","currentNamespace","isAbsolute","hasFragments","merge","relative","ns","hash","isPointer","json_tools$json_schema$Json$Schema$Helpers$collectIds","pool","uri","manageId","poolLocal","val","_n9","newNs","_n10","schemaLocal","json_tools$json_schema$Json$Schema$Helpers$makeJsonPointer","walkValue","elm$core$Basics$composeR","elm$core$Basics$not","bool","elm$core$Dict$member","elm$core$List$any","isOkay","elm$core$List$append","elm$core$List$concat","lists","elm$core$List$member","elm$core$Result$mapError","elm$json$Json$Encode$string","json_tools$json_schema$Json$Schema$Definitions$blankSubSchema","json_tools$json_schema$Json$Schema$Validation$AdditionalPropertyDisallowed","json_tools$json_schema$Json$Schema$Validation$AlwaysFail","json_tools$json_schema$Json$Schema$Validation$Const","json_tools$json_schema$Json$Schema$Validation$Contains","json_tools$json_schema$Json$Schema$Validation$Enum","json_tools$json_schema$Json$Schema$Validation$Error","jsonPointer","details","json_tools$json_schema$Json$Schema$Validation$ExclusiveMaximum","json_tools$json_schema$Json$Schema$Validation$ExclusiveMinimum","json_tools$json_schema$Json$Schema$Validation$InvalidType","json_tools$json_schema$Json$Schema$Validation$JsonPointer","Z","json_tools$json_schema$Json$Schema$Validation$MaxItems","json_tools$json_schema$Json$Schema$Validation$MaxLength","json_tools$json_schema$Json$Schema$Validation$MaxProperties","json_tools$json_schema$Json$Schema$Validation$Maximum","json_tools$json_schema$Json$Schema$Validation$MinItems","json_tools$json_schema$Json$Schema$Validation$MinLength","json_tools$json_schema$Json$Schema$Validation$MinProperties","json_tools$json_schema$Json$Schema$Validation$Minimum","json_tools$json_schema$Json$Schema$Validation$MultipleOf","json_tools$json_schema$Json$Schema$Validation$Not","json_tools$json_schema$Json$Schema$Validation$OneOfNoneSucceed","json_tools$json_schema$Json$Schema$Validation$Pattern","json_tools$json_schema$Json$Schema$Validation$RequiredProperty","json_tools$json_schema$Json$Schema$Validation$stringify","json_tools$json_schema$Json$Schema$Validation$canonical","json_tools$json_schema$Json$Schema$Validation$concatErrors","elm$core$Maybe$map","elm$core$String$dropRight","elm$core$String$endsWith","json_tools$json_schema$Ref$removeTrailingSlash","json_tools$json_schema$Ref$whenObjectSchema","json_tools$json_schema$Ref$resolveReference","rootNs","resolveRecursively","limit","localSchema","localRef","localNs","newJsonPointer","json_tools$json_schema$Ref$makeJsonPointer","elm$core$Basics$round","elm$core$String$foldl","zwilias$elm_utf_tools$String$UTF32$foldl","op","initial","zwilias$elm_utf_tools$String$UTF32$length","json_tools$json_schema$Json$Schema$Validation$validate","validationOptions","rootSchema","whenSubschema","propOf","valueLocal","_n63","_n64","when","_n61","_n62","validateSingleType","validationOptionsLocal","st","test","validateType","_n57","validateRequired","keys","_n56","missing","validatePattern","validateMultipleOf","json_tools$json_schema$Util$isInt","validateMinimum","_n55","validateMinProperties","validateMinLength","validateMinItems","validateMaximum","_n54","validateMaxProperties","validateMaxLength","validateMaxItems","validateExclusiveMinimum","validateExclusiveMaximum","validateEnum","item","validateConst","getSchema","_n51","_n50","_n49","getPropsByPattern","props","_n48","validateUniqueItems","_n47","sublist","json_tools$json_schema$Util$indexOfFirstDuplicate","findDuplicateItem","failWithListErrors","validators","_n45","_n43","_n44","addDefaultProperties","objLocal","defaultFor","propName","validateSchema","P","knownProps","_n39","resultingObject","_n40","_n34","validateSubschema","_n35","_n36","oss","validateItems","validateContains","validateProperties","validatePatternProperties","validateAdditionalProperties","validateDependencies","validatePropertyNames","validateAllOf","validateAnyOf","validateOneOf","validateNot","rejectMatching","whitelist","_n32","_n31","allowed","_n29","_n28","_n27","validationResults","_n20","_n21","assocs","dep","validateItem","schemaLocalLocal","itemSchema","_n11","decoded","listItemSchemas","_n14","_n16","_n17","notSchema","subSchema","newProps","upgradedObject","addedPropNames","_n3","validatePropertyName","invalidNames","elm$json$Json$Decode$decodeString","json_tools$json_schema$Json$Schema$Definitions$blankSchema","json_tools$json_schema$Json$Schemata$decodeUnsafe","json_tools$json_schema$Json$Schemata$draft4","json_tools$json_schema$Json$Schemata$draft6","json_tools$json_schema$Ref$defaultPool","json_tools$json_schema$Json$Schema$validateValue","json_tools$json_value$Json$Value$NullValue","json_tools$json_value$Json$Value$ArrayValue","json_tools$json_value$Json$Value$BoolValue","json_tools$json_value$Json$Value$NumericValue","json_tools$json_value$Json$Value$ObjectValue","json_tools$json_value$Json$Value$StringValue","json_tools$json_value$Json$Value$cyclic$decoder","objectValueDecoder","arrayValueDecoder","json_tools$json_value$Json$Value$decoder","parsers","exports","onUrlChange","onUrlRequest","json_tools$json_value$Json$Value$decodeValue","elm$json$Json$Encode$bool","elm$json$Json$Encode$float","elm$json$Json$Encode$list","entries","_Json_addEntry","elm$json$Json$Encode$null","json_tools$json_value$Json$Value$encode","author$project$Json$Form$init","config","multilineFieldsPaths","initVal","someValue","V","W","a5","ab","bN","bz","bG","D","scrollWidth","br","scrollHeight","ba","T","scrollLeft","U","scrollTop","clientWidth","clientHeight","author$project$Json$Form$None","author$project$Json$Form$UpdateValue","author$project$Json$Form$initValue","author$project$Json$Form$touch","focused","beingWhat","author$project$Json$Form$withExMsg","elm$core$Platform$Cmd$none","elm$core$Result$fromMaybe","json_tools$json_value$Json$Value$getIn","head","json_tools$json_value$Json$Value$setProperty","updateOrAppend","json_tools$json_value$Json$Value$setIn","pathInJson","valueToSet","hostValue","subpath","thisPath","vv","author$project$Json$Form$editValue","updatedJsonValue","updatedValue","validationResult","author$project$Json$Form$Definitions$NoOp","author$project$JsonFormUtil$jsonValueToString","jv","elm$browser$Browser$Dom$focus","elm$core$Set$insert","elm$core$Set$member","elm$core$Set$remove","elm$core$String$toFloat","json_tools$json_value$Json$Value$deleteIn","rejectKey","keyToReject","ind","revPath","targetValue","author$project$Json$Form$update","updatedModel","newPropPath","isNumber","num","somePath","height","json_tools$json_schema$Json$Schema$fromString","author$project$Showcase$flightBookingInputGeneratorSchema","elm$json$Json$Encode$int","json_tools$json_schema$Json$Schema$Definitions$encode","singleTypeToString","optionally","encodeType","ut","encodeSchemata","encodeListSchemas","encodeItems","encodeExclusiveBoundary","eb","encodeDependencies","deps","encodeDependency","json_tools$json_schema$Json$Schema$Builder$toSchema","sb","G","ss","author$project$Showcase$makeExample","json_tools$json_schema$Json$Schema$Builder$buildSchema","json_tools$json_schema$Json$Schema$Builder$updateSchema","json_tools$json_schema$Json$Schema$Builder$withCustomKeyword","json_tools$json_schema$Json$Schema$Builder$withDefault","json_tools$json_schema$Json$Schema$Builder$withDescription","json_tools$json_schema$Json$Schema$Builder$appendError","json_tools$json_schema$Json$Schema$Builder$withItem","json_tools$json_schema$Json$Schema$Builder$withMinLength","json_tools$json_schema$Json$Schema$Builder$withMinimum","json_tools$json_schema$Json$Schema$Builder$toSchemata","schemas","json_tools$json_schema$Json$Schema$Builder$withProperties","schemataBuilder","json_tools$json_schema$Json$Schema$Builder$updateWithSchemata","json_tools$json_schema$Json$Schema$Builder$withTitle","json_tools$json_schema$Json$Schema$Builder$withType","elm$browser$Browser$Navigation$pushUrl","elm$core$List$unzip","elm$core$Platform$Cmd$map","elm$core$Tuple$mapFirst","elm$core$Tuple$mapSecond","elm$url$Url$addPort","maybePort","starter","elm$url$Url$addPrefixed","prefix","maybeSegment","author$project$Demo$update","urlRequest","reload","elm$browser$Browser$Navigation$load","X","elm$url$Url$toString","route","form","example","cmds","bg","bi","bH","bK","withRuleAndWidget","withRule","enableToggle","author$project$Showcase$getShowcase","R","elm$url$Url$Parser$State","visited","unvisited","author$project$Route$showcaseParser","tipe","stringToSomething","next","nextValue","elm$url$Url$Parser$mapState","elm$url$Url$Parser$map","subValue","parseArg","elm$core$List$concatMap","elm$url$Url$Parser$s","elm$url$Url$Parser$slash","parseBefore","parseAfter","author$project$Route$route","elm$url$Url$Parser$removeFinalEmpty","segments","elm$url$Url$percentDecode","decodeURIComponent","elm$url$Url$Parser$addToParametersHelp","maybeList","elm$url$Url$Parser$addParam","segment","elm$url$Url$Parser$parse","maybeQuery","states","getFirstMatch","elm$url$Url$Parser$getFirstMatch","elm$url$Url$Parser$preparePath","author$project$Route$fromLocation","author$project$Demo$init","elm$html$Html$div","elm$html$Html$span","elm$html$Html$text","elm$html$Html$Attributes$stringProperty","elm$html$Html$Attributes$class","elm$html$Html$Attributes$style","author$project$Demo$cardWithTitle","cardContent","author$project$Demo$viewValue","lastIndex","author$project$Json$Form$Definitions$Checkbox","author$project$Json$Form$Definitions$Switch","author$project$Json$Form$getBooleanUiWidget","author$project$Json$Form$Definitions$Array","author$project$Json$Form$Definitions$JsonEditor","author$project$Json$Form$Definitions$NumberField","author$project$Json$Form$Definitions$TextField","author$project$Json$Form$editingMode","_n1$6","author$project$Json$Form$Definitions$AddItem","author$project$Json$Form$Definitions$EditValue","author$project$Json$Form$Definitions$FocusInput","author$project$JsonFormUtil$getTextProp","prop","author$project$Json$Form$Helper$view","hasError","author$project$JsonFormUtil$getDescription","elm$core$List$takeReverse","kept","takeReverse","elm$core$List$takeTailRec","elm$core$List$takeFast","_n0$1","_n0$5","elm$core$List$take","author$project$Json$Form$UiSpec$applyRule","resolvePath","subPath","token","currentPath","referencedValue","getDefaultValue","validate","hidden","_n3$2","_n0$2","author$project$JsonFormUtil$getTitle","isRequired","elm$html$Html$input","elm$html$Html$label","elm$html$Html$Attributes$boolProperty","elm$html$Html$Attributes$checked","elm$core$Tuple$second","elm$html$Html$Attributes$classList","elm$html$Html$Attributes$disabled","elm$html$Html$Attributes$id","elm$html$Html$Attributes$name","elm$html$Html$Attributes$type_","elm$virtual_dom$VirtualDom$on","elm$html$Html$Events$on","elm$html$Html$Events$onBlur","elm$html$Html$Events$targetChecked","elm$html$Html$Events$onCheck","elm$html$Html$Events$onFocus","author$project$Json$Form$Selection$checkbox","isDisabled","isChecked","actuallyDisabled","helperText","author$project$Json$Form$Selection$switch","elm$svg$Svg$trustedNode","elm$svg$Svg$svg","elm$svg$Svg$Attributes$class","elm$svg$Svg$Attributes$fill","elm$svg$Svg$Attributes$height","elm$svg$Svg$Attributes$stroke","elm$svg$Svg$Attributes$strokeLinecap","elm$svg$Svg$Attributes$strokeLinejoin","elm$svg$Svg$Attributes$strokeWidth","elm$svg$Svg$Attributes$style","elm$svg$Svg$Attributes$viewBox","elm$svg$Svg$Attributes$width","author$project$Icons$svgFeatherIcon","className","onClickHandler","elm$svg$Svg$circle","elm$svg$Svg$line","elm$svg$Svg$Attributes$cx","elm$svg$Svg$Attributes$cy","elm$svg$Svg$Attributes$r","elm$svg$Svg$Attributes$x1","elm$svg$Svg$Attributes$x2","elm$svg$Svg$Attributes$y1","elm$svg$Svg$Attributes$y2","author$project$Icons$deleteIcon","author$project$Icons$errorIcon","elm$svg$Svg$path","elm$svg$Svg$Attributes$d","author$project$Json$Form$Definitions$DeleteProperty","author$project$Json$Form$Definitions$EditJson","author$project$Json$Form$Definitions$EditMultiline","author$project$Json$Form$Definitions$FocusFragileInput","author$project$Json$Form$Definitions$ToggleShowPassword","elm$core$Basics$min","elm$html$Html$datalist","elm$html$Html$option","elm$html$Html$textarea","elm$html$Html$Attributes$list","elm$html$Html$Attributes$rows","elm$html$Html$Attributes$value","elm$html$Html$Events$alwaysStop","elm$html$Html$Events$stopPropagationOn","elm$html$Html$Events$targetValue","elm$html$Html$Events$onInput","author$project$Json$Form$TextField$view","isJson","uiSpec","multilineConfig","isPassword","isOutlined","isFocused","editedValue","editMultiline","icon","baseAttributes","textInput","mlConf","paddings","rows","listStrings","author$project$Json$Form$Definitions$EditNumber","author$project$Json$Form$TextField$viewNumeric","numericInput","elm$html$Html$button","elm$html$Html$Events$onClick","author$project$Json$Form$viewArray","disabled","author$project$Json$Form$viewNode","author$project$Json$Form$viewObject","isExpanded","isExpandable","elm$html$Html$h3","elm$html$Html$map","author$project$Route$href","page","pieces","author$project$Showcase$getShowcaseId","elm$html$Html$a","author$project$Demo$snippetTab","activeShowcase","showcase","author$project$Showcase$getShowcaseTitle","author$project$Showcase$index","elm$core$Platform$Sub$none","Main","bB","bC","author$project$Demo$topbar","viewExample","author$project$Demo$viewSchema","author$project$Demo$content","navigator","userAgent","ctrlKey","metaKey","shiftKey","button","target","download","elm$browser$Browser$External","author$project$Main$main","_Platform_mergeExportsProd","this","isLocalhost","registerValidSW","swUrl","registration","installingWorker","installing","controller","console","require","URL","process","publicUrl","origin","concat","fetch","response","checkValidServiceWorker","registerServiceWorker","Elm"],"mappings":"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wlB,GACA,OACAqB,GAAAuG,IACA7P,GACAvd,EACAwlB,GACA,gBACAqB,GACAL,GACA,WACA,OAAAgH,QAEAjQ,GACAvd,EACAwlB,GACA,eACAgB,GACA,WACA,OAAAiH,OAEA1sB,EACAf,EACAwlB,GACA,uBACAqB,GACAL,GACA,WACA,OAAAgH,QAEAjQ,GACAvd,EACAwlB,GACA,oBACAqB,GACAL,GACA,WACA,OAAAuH,QAEAxQ,GACAvd,EACAwlB,GACA,aACAqB,GACAL,GACA,WACA,OAAAuH,QAEAxQ,GACAvd,EACAwlB,GACA,WACAqB,GACAH,GAAAhC,KACAnH,GACAvd,EACAwlB,GACA,gBACAqB,GAAAyG,IACA/P,GACAvd,EACAwlB,GACA,gBACAqB,GAAAyG,IACA/P,GACAvd,EACAwlB,GACA,WACAqB,GACAL,GACA,WACA,OAAAgH,QAEAjQ,GACAvd,EACAwlB,GACA,cACAqB,GAAAR,IACA9I,GACAvd,EACAwlB,GACA,WACAqB,GAAAyG,IACA/P,GACAvd,EACAwlB,GACA,WACAqB,GAAAyG,IACA/P,GACAvd,EACAwlB,GACA,kBACAqB,GACAL,GACA,WACA,OAAAgH,QAEAjQ,GACAvd,EACAwlB,GACA,QACAgB,GACA,WACA,OAAA+G,OAEAnG,GACApnB,EACAwlB,GACA,SACAqB,GAAAnC,IACAnH,GACAvd,EACAwlB,GACA,UACAqB,GAAAnC,IACAnH,GACAvd,EACAwlB,GACA,YACAqB,GAAAyG,IACA/P,GACAvd,EACAwlB,GACA,YACAqB,GAAAyG,IACA/P,GACAvd,EACAwlB,GACA,mBACAqB,GAAA+G,GACArQ,GACAvd,EACAwlB,GACA,UACAqB,GAAAP,IACA/I,GACAvd,EACAwlB,GACA,mBACAqB,GAAA+G,GACArQ,GACAvd,EACAwlB,GACA,UACAqB,GAAAP,IACA/I,GACAvd,EACAwlB,GACA,aACAqB,GAAAP,IACA/I,GACAvd,EACAwlB,GACA,cACAqB,GACAL,GACA,WACA,OAAAuH,QAEAxQ,GACAvd,EACAwlB,GACA,WACAqB,GACAH,GAAAzB,KAC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J,EAAA3kC,EACA,OAAAwB,EACAyC,EACA6V,GACO1C,EALPutB,EAAA9kC,IAMAk3B,GAAAyX,IACA,QACA,IAAAl7B,EAAA/K,EAAA1I,EACAqzB,EAAAma,GACA7sC,EACAmjB,GACA5jB,EACA,SAAAsJ,EAAAklC,GACA,IAAA3H,GACA6H,IAAA,EACAC,IAAA,EACArH,GAAA,OAAAxjB,GAAAxa,GACAslC,IAAA,EACAC,GAAA,GAEA,OAAApuC,EACAgtC,GACAF,GACAxuB,GAAAzV,IACA7I,EACA+sC,GACA,SAAAe,GACA,OAAmBx4B,EAAAy4B,EAAAxrC,EAAAurC,IAEnB7tC,EAAAkmC,GAAAC,EAAA2H,EAAArH,GAAAjpB,QApoBA,WACA,OAqoBA3K,GApoBA,OACA,OAAAvR,GAEAvB,EACA2rC,GACA,yBACA3rC,EACAgsC,GACA,yBACAhsC,EACA0sC,GACA,aACA1sC,EAAA2sC,GAAA,SAAAf,OACA5rC,EACA2rC,GACA,uBACA1rC,EACA6rC,GACA,KACAlV,GACAr1B,GAEAP,EACA,SACAm5B,GAAA,iBAEAn6B,EACAgsC,GACA,wBACAhsC,EACA0sC,GACA,YACA1sC,EAAA2sC,GAAA,SAAAf,QACA5rC,EACA2rC,GACA,kCACA1rC,EACA6rC,GACA,KACAlV,GACAr1B,GAEAP,EACA,SACA41B,GACAr1B,GAEAP,EACA,OACAm5B,GAAA,cACAn5B,EACA,UACAypC,GAAA,IACAzpC,EACA,UACAypC,GAAA,YAGAzqC,EACAgsC,GACA,qCACAhsC,EACA0sC,GACA,YACA1sC,EAAA2sC,GAAA,SAAAf,QACA5rC,EACA2rC,GACA,iBACA1rC,EACA6rC,GACA,KACAlV,GACAr1B,GAEAP,EACA,SACAm5B,GAAA,gBAEAn6B,EACAgsC,GACA,sCACAhsC,EACA0sC,GACA,WACA1sC,EAAA2sC,GAAA,SAAAf,QACA5rC,EACA2rC,GACA,WACA3rC,EACAgsC,GACA,iCACAhsC,EACA0sC,GACA,sBACA1sC,EAAA2sC,GAAA,UAAAf,OACA5rC,EACA2rC,GACA,SACA3rC,EACAgsC,GACA,iDACA/rC,EACA6rC,GACA,KACAlV,GACAr1B,GAEAP,EACA,SACAm5B,GAAA,cAEAn6B,EACA0sC,GACA,oBACA1sC,EAAA2sC,GAAA,UAAAf,UAEA,OACA,IAAAyC,EAAA9uC,EACA,SAAAwb,EAAA8D,GACA,OAAA7e,EACA8rC,GACA,KACAlV,GACAr1B,GAEAP,EACA,OACA41B,GACAr1B,GAEAP,EACA,SACAm5B,GAAApf,IACA/Z,EACA,OACAm5B,GAAA,aACAn5B,EACA,YACA41B,GACAr1B,GAEAP,EACA,QACA4kC,IAAA,IACA5kC,EACA,UACA4kC,IAAA,YAGA5kC,EACA,SACAm5B,GAAAtb,UAGAyvB,EAAA,SAAAvzB,GACA,OAAA/a,EACA8rC,GACA,KACAlV,GACAr1B,GAEAP,EACA,OACA41B,GACAr1B,GAEAP,EACA,SACAm5B,GAAApf,IACA/Z,EACA,OACAm5B,GAAA,aACAn5B,EACA,YACA41B,GACAr1B,GAEAP,EACA,QACA4kC,IAAA,IACA5kC,EACA,UACA4kC,IAAA,iBAKA2I,EAAAvtC,EACA,UACAf,EACA6rC,GACA,KACAlV,GACAr1B,GAEAP,EACA,SACAm5B,GAAA,cAEAn6B,EACA0sC,GACA,SACA1sC,EACA+rC,GACAnG,IAAA,GACA5lC,EAAA2sC,GAAA,UAAAf,QACA,OAAArqC,GAEAvB,EACA2rC,GACA,gBACA3rC,EACAusC,GACAhrC,GAEAgtC,EACAvtC,EACA,cACAhB,EACAsuC,EACA,UACAtuC,EACAgsC,GACA,wCACAhsC,EACA2sC,GACA,SACA3sC,EAAA0sC,GAAA,2BAAAd,UAEA5rC,EAAA2sC,GAAA,SAAAf,MACA5rC,EACA2rC,GACA,aACA3rC,EACAusC,GACAhrC,GAEAP,EACA,UACAf,EACA6rC,GACA,KACAlV,GACAr1B,GAEAP,EACA,SACAm5B,GAAA,cAEAn6B,EACA+rC,GACAnG,IAAA,GACA5lC,EACA0sC,GACA,OACA1sC,EAAA2sC,GAAA,UAAAf,QACA5qC,EACA,WACAhB,EACAsuC,EACA,OACAtuC,EACAgsC,GACA,sCACAhsC,EACA2sC,GACA,SACA3sC,EAAA0sC,GAAA,wBAAAd,UAEA5rC,EAAA2sC,GAAA,SAAAf,MACA5rC,EACA2rC,GACA,6BACA3rC,EACAusC,GACAhrC,GAEAgtC,EACAvtC,EACA,sBACAf,EACAouC,EACA,UACA,WACAruC,EACAgsC,GACA,wCACAhsC,EACA2sC,GACA,UACA3sC,EAAA0sC,GAAA,yBAAAd,QACA5qC,EACA,oBACAf,EACAouC,EACA,UACA,SACAruC,EACAgsC,GACA,wCACAhsC,EACA2sC,GACA,UACA3sC,EAAA0sC,GAAA,uBAAAd,UAEA5rC,EAAA2sC,GAAA,SAAAf,MACA5rC,EACA2rC,GACA,sBACA3rC,EACAusC,GACAhrC,GAEAgtC,EACAvtC,EACA,OACAhB,EACAusC,GACAhrC,GAEAP,EACA,aACAhB,EACAsuC,EACA,UACAtuC,EACAusC,GACAhrC,GAEAP,EACA,cACAhB,EACAgsC,GACA,wCACAhsC,EACA2sC,GACA,SACA3sC,EAAA0sC,GAAA,4BAAAd,SAEA5rC,EAAA2sC,GAAA,SAAAf,SAEA5rC,EAAA2sC,GAAA,SAAAf,QAEA5rC,EAAA2sC,GAAA,SAAAf,MACA5rC,EACA2rC,GACA,cACA3rC,EACAksC,GACAlsC,EACAusC,GACAhrC,GAEAP,EACA,UACAf,EACA6rC,GACA,KACAlV,GACAr1B,GAEAP,EACA,SACAm5B,GAAA,cAEAn6B,EACAgsC,GACA,iBACAhsC,EACA0sC,GACA,SACA1sC,EAAA2sC,GAAA,UAAAf,QACA5qC,EACA,WACAf,EACA6rC,GACA,KACAlV,GACAr1B,GAEAP,EACA,OACA41B,GACAr1B,GAEAP,EACA,SACAm5B,GAAA,YACAn5B,EACA,OACAm5B,GAAA,eACAn5B,EACA,YACA41B,GACAr1B,GAEAP,EACA,QACA4kC,IAAA,IACA5kC,EACA,UACA4kC,IAAA,eAIA5lC,EACAgsC,GACA,uBACAhsC,EACA2sC,GACA,SACA3sC,EAAA0sC,GAAA,yCAAAd,UAEA5rC,EAAA2sC,GAAA,SAAAf,KACA5rC,EAAA2sC,GAAA,QAAAf,QAEA,OACA,OAAArqC,GAEAvB,EACA2rC,GACA,0BACA3rC,EACAosC,GACA,EACApsC,EACAgsC,GACA,yCACAhsC,EACA0sC,GACA,OACA1sC,EAAA2sC,GAAA,SAAAf,QACA5rC,EACA2rC,GACA,6BACA3rC,EACAmsC,GACA,GACAnsC,EACAgsC,GACA,gBACA/rC,EACA6rC,GACA,KACAlV,GACAr1B,GAEAP,EACA,SACA41B,GACAr1B,GAEAP,EACA,OACAm5B,GAAA,cACAn5B,EACA,UACAypC,GAAA,IACAzpC,EACA,UACAypC,GAAA,WAGAzqC,EACA0sC,GACA,MACA1sC,EAAA2sC,GAAA,SAAAf,WAEA,QACA,OAAArqC,IAEMmlC,GAAA8D,GAAA5uB,GAAA,qCA6KN4yB,KAGA,OADAR,EAAAtb,EAAAlzB,EACAwB,EACAyC,EACA6V,GACO1C,EALP8b,EAAArzB,EAKOovC,EAAA37B,IACPyjB,GAAAyX,OAsBAU,GAAA7uC,EACA,SAAA8uC,EAAAC,EAAAzY,EAAA3d,EAAAtQ,GACA,OAAUkF,EAAAoL,EAAA1F,EAAAqjB,EAAAhzB,EAAAyrC,EAAAhI,GAAA1+B,EAAA6K,EAAA47B,KAkCVE,GAAA7uC,EAhCAT,EACA,SAAAuvC,EAAAC,GACA,gBAAAruB,GACA,IAAAiuB,EAAAjuB,EAAA3N,EACA67B,EAAAluB,EAAAvd,EACAgzB,EAAAzV,EAAA5N,EACA0F,EAAAkI,EAAAtT,EACAlF,EAAAwY,EAAAkmB,GACA,GAAAgI,EAAApvC,EAEI,CACJ,IAAAwvC,EAAAJ,EAAAvvC,EACA+kB,EAAAwqB,EAAApvC,EACA2kB,EAAA4qB,EAAAC,GACA,GAAA7qB,EAAAjjB,EAaA,OAAAD,EAZA,IAAAguC,EAAA9qB,EAAA9kB,EACA,OAAAkC,GAEApB,EACAuuC,GACA1uC,EAAAsf,GAAA0vB,EAAAL,GACAvqB,EACA+R,EACA3d,EACAtQ,EAAA+mC,MAfA,OAAAhuC,KAuBA,WAnDA,SAAA0b,GACA,OAAAA,GACA,YACA,OAAAW,GAAA,GACA,YACA,OAAAA,GAAA,GACA,iBACA,OAAAA,GAAA,GACA,WACA,OAAAA,GAAA,GACA,QACA,OAAAG,MAyCAyxB,GAAA3vC,EACA,SAAAiB,EAAAkgB,GAMA,OAAAvgB,EACAuuC,GANAhuB,EAAA3N,EACA2N,EAAAvd,EACAud,EAAA5N,EACA4N,EAAAtT,EAQA5M,EAPAkgB,EAAAkmB,OASAuI,GAAA5vC,EACA,SAAA6vC,EAAA1uB,GACA,IAAA2uB,EAAA3uB,EACA,gBAAAwD,GACA,IAAAyqB,EAAAzqB,EAAAnR,EACA67B,EAAA1qB,EAAA/gB,EACAgzB,EAAAjS,EAAApR,EACA0F,EAAA0L,EAAA9W,EAEA,OAAApN,EACAusB,GACA2iB,GAHAhrB,EAAA0iB,IAIAyI,EACAlvC,EAAAuuC,GAAAC,EAAAC,EAAAzY,EAAA3d,EAAA42B,QAGAE,GAAA/vC,EACA,SAAAD,EAAA4M,GACA,OAAA6tB,GACA/5B,EAAAusB,GAAAjtB,EAAA4M,MAaAqjC,GAAA,SAAArqC,GACA,gBAAAwb,GACA,IAAAiuB,EAAAjuB,EAAA3N,EACA67B,EAAAluB,EAAAvd,EACAgzB,EAAAzV,EAAA5N,EACA0F,EAAAkI,EAAAtT,EACAlF,EAAAwY,EAAAkmB,GACA,GAAAgI,EAAApvC,EAEG,CACH,IAAAwvC,EAAAJ,EAAAvvC,EACA+kB,EAAAwqB,EAAApvC,EACA,OAAA6C,EAAA2sC,EAAA9pC,GAAA3D,GAEApB,EACAuuC,GACA1uC,EAAAsf,GAAA0vB,EAAAL,GACAvqB,EACA+R,EACA3d,EACAtQ,KACAjH,EAbA,OAAAA,IAiBAuuC,GAAAjwC,EACA,SAAAmhB,EAAAwD,GACA,IAAAurB,EAAA/uB,EACAgvB,EAAAxrB,EACA,gBAAAxf,GACA,OAAA1E,EACAsvC,GACAI,EACAD,EAAA/qC,OAGAirC,IA/CApK,GAgDAhkC,GAEAvB,EACAmvC,GACA7oB,GACAtmB,EACAwvC,GACAD,GAAA,aACAvvC,EACAwvC,GACAD,GAAA,YACAV,QA1DA,SAAAnqC,GACA,OAAA1E,EACAsvC,GACA,SAAA5uB,GAEA,OADAA,EACAhc,IAEA6gC,MA4EAqK,GAAA,SAAAC,GACA,OAAAA,EAAArwC,IAGA,KAAAqwC,EAAAxwC,GAAAwwC,EAAArwC,KAKAQ,EACAsf,GAHAuwB,EAAAxwC,EAKAuwC,GAJAC,EAAArwC,IANAyB,GAwBA6uC,GA/kNA,SAAAnrC,GAEA,IAEA,OAAA2Y,GAAAyyB,mBAAAprC,IAEA,MAAA7E,GAEA,OAAA2d,KAwkNAuyB,GAAAzwC,EACA,SAAA2I,EAAA+nC,GACA,OACA3yB,GADA,IAAA2yB,EAAA/uC,EAEAK,GACA2G,IAIAlI,EAAAsf,GAAApX,EAFA+nC,EAAA5wC,MAKA6wC,GAAA3wC,EACA,SAAA4wC,EAAAvwB,GACA,IAAAc,EAAA1gB,EAAAwjB,GAAA,IAAA2sB,GACA,GAAAzvB,EAAAlhB,GAAAkhB,EAAAlhB,MAAAkhB,EAAAlhB,MAAA,CACA,IAEAimB,EADA/E,EAAAlhB,EACAH,EACA8kB,EAAA2rB,GAHApvB,EAAArhB,GAIA,OAAA8kB,EAAAjjB,EACA,OAAA0e,EAEA,IAAA9c,EAAAqhB,EAAA9kB,EACA8kC,EAAA2L,GAAArqB,GACA,WAAA0e,EAAAjjC,EACA0e,EAGA3f,EACAqzB,GACAxwB,EACAktC,GAJA7L,EAAA9kC,GAKAugB,GAIA,OAAAA,IAeAwwB,GAAA7wC,EACA,SAAAmhB,EAAAtE,GACA,IAdAi0B,EAeA,OAzGA,SAAAC,GACAC,EACA,QACA,GAAAD,EAAA9wC,EAEG,CACH,IAAAkF,EAAA4rC,EAAAjxC,EAEA6kB,EAAAxf,EAAAvB,EACA,GAAA+gB,EAAA1kB,EAEI,CACJ,QAAA0kB,EAAA7kB,GAAA6kB,EAAA1kB,IAEK,CAEL8wC,EATAA,EAAA9wC,EAUA,SAAA+wC,EAJA,OAAAjzB,GAAA5Y,EAAAkiC,IAHA,OAAAtpB,GAAA5Y,EAAAkiC,IANA,OAAAnpB,IAqGA+yB,CADA9vB,EAGAvgB,EACAuuC,GACAztC,EAtEA,WACA,IAAAyf,EAAA1gB,EAAAwjB,GAAA,IAsEApH,EAAAuX,IArEA,OAEAic,GAFAlvB,EAAAlhB,GAAA,KAAAkhB,EAAArhB,EACAqhB,EAAAlhB,EAGAkhB,GAiEA+vB,GAnBA,KADAJ,EAqBAj0B,EAAA6Z,IApBA/0B,EACAkwB,GAGAnxB,EACAgmB,GACAiqB,GACA9e,GACApxB,EAAAwjB,GAAA,IALA6sB,EAAAhxC,IAkBA+c,EAAAyZ,GACAvP,QAEAoqB,GAAA,SAAAt0B,GACA,OAAApc,EAAAowC,GAAAT,GAAAvzB,IAEAu0B,GAAAlxC,EACA,SAAAihB,EAAAtE,EAAAtZ,GACA,OAAA9C,EACAutC,GACAlvB,GACAqyB,GAAAt0B,KACIxF,EAAA3V,EAAA0sC,EAAA7qC,EAAA2rC,EAzoNJ,MA2oNAmC,GAAAjiC,GAAA,OACAkiC,GAAAliC,GAAA,QAEAmiC,GADA7iC,GAEA8iC,GAAAxxC,EACA,SAAAuD,EAAA6B,GACA,OAAA3E,EACAmP,GACArM,EACAq3B,GAAAx1B,MAEAqsC,GAAAD,GAAA,aAEAE,GADA/hC,GAEAgiC,GAAA3xC,EACA,SAAA8a,EAAA82B,GACA,OAAAnxC,EACA4wC,GACArvC,GAEAyvC,GAAA,QACAhxC,EAAAixC,GAAA,kBAEA1vC,GAEAvB,EACA6wC,GACAtvC,GAEAyvC,GAAA,iBAEAzvC,GAEAuvC,GAAAz2B,MAEA82B,OAGAC,GAAA,SAAA97B,GACA,IAAA2jB,EAAA15B,EACA,SAAAG,EAAAoT,GACA,OAAA9S,EACA6wC,GACAtvC,GAEAyvC,GAAA,cAAAtxC,KAEA6B,GAEAuvC,GAAAh+B,QAGA5N,EAAA,SAAAxF,GACA,OAAAM,EACAw5B,GACAW,GACAn6B,EACAw5B,GACA9V,GAAA,GACAuV,EAAAv5B,MAEA,OAAA4V,EAAApU,GACA,OAEA,OAAAlB,EACAi5B,EACA,SACAnI,GAJAxb,EAAAjW,IAKA,OACA,OAAAW,EAAAi5B,EAAA,eACA,OAEA,OAAAj5B,EACAi5B,EACA,OAHA3jB,EAAAjW,EAIA,gBACA,OAEA,OAAAW,EAAAkF,EAAA,SADAoQ,EAAAjW,GAEA,OACA,IAAA6gC,EAAA5qB,EAAAjW,EACAgyC,EAAA3uB,GAAAwd,GAAA,EACA,OAAAlgC,EACA6wC,GACA5vC,EACAM,GAEAuvC,GAAA,KACA9wC,EACA4wC,GACArvC,GAEAyvC,GAAA,6BAEAhxC,EACAmjB,GACA5jB,EACA,SAAAsJ,EAAAqb,GACA,IACA2kB,EAAA3kB,EAAA1kB,EACA,OAAAQ,EACA6wC,GACA5vC,EACAM,GAEAvB,EAAAkF,EAAA,OAPAgf,EAAA7kB,GAQAyxC,GAAA,MACAM,GAAAvI,GACAxmC,EAAAwG,EAAAwoC,GAAAP,GAAA,MAAAA,GAAA,YAGA5Q,IACA4Q,GAAA,QAEA,QACA,IAAAnoB,EAAArT,EAAAjW,EAEA,OADAgyC,EAAA3uB,GAAAiG,GAAA,EACA3oB,EACA6wC,GACA5vC,EACAM,GAEAuvC,GAAA,KACA9wC,EACA4wC,GACArvC,GAEAyvC,GAAA,6BAEAhxC,EACAmjB,GACA5jB,EACA,SAAAsJ,EAAAggC,GACA,OAAA7oC,EACA6wC,GACA5vC,EACAM,GAEAvB,EACAi5B,EACA,OACA5V,GAAAxa,IACAioC,GAAA,MACAM,GAAAvI,GACAxmC,EAAAwG,EAAAwoC,GAAAP,GAAA,MAAAA,GAAA,YAGAnoB,IACAmoB,GAAA,UAsBAQ,IAAqDpwC,EAAA,GACrDqwC,IAAmDrwC,EAAA,GACnDswC,GAAA,SAAAvhB,GACA,IAAAvP,EAAAyP,GAAAF,GAAAtR,GACA,OAAA+B,EAAAxf,GAAA,IAAAwf,EAAArhB,EAAA6B,EAIAowC,GAFAC,IAKAE,IAAkDvwC,EAAA,GAClDwwC,IAAuDxwC,EAAA,GACvDywC,IAAwDzwC,EAAA,GAIxD0wC,IAAsD1wC,EAAA,GACtD2wC,GAAAtyC,EACA,SAAA+Z,EAAA2W,GAEA,GADAE,GAAAF,GACAzR,GACA,OAAAkzB,GAEA,OAAAzhB,EAAA/uB,EAAA,CACA,IAAAgvB,EAAAD,EAAA5wB,EACA6kB,EAAAgM,EAAAhE,EACA4lB,EACA,KACA,IAAA5tB,EAAAhjB,GACA,OAAAgjB,EAAA7kB,GACA,OAGA,OAEA,OAAAsyC,GACA,OAEA,OAAAC,GACA,OAEA,OAAAJ,GAAAvhB,GACA,OACA,IACAQ,EAAAP,EAAArE,GACA,OAAA4E,EAAAvvB,EAIAwwC,IAnCSxwC,EAAA,EAAA7B,EAgCToxB,EAAApxB,GAKA,OAEA,OAAAoyC,GACA,QACA,MAAAK,EAMA,OAAAJ,GAEA,OAAAA,KAIAK,GAAAtyC,EACA,SAAAJ,EAAAG,EAAAE,GACA,OAAUwB,EAAA,EAAA7B,IAAAG,IAAAE,OAKVsyC,GAAAzyC,EACA,SAAAF,EAAAG,GACA,OAAU0B,EAAA,EAAA7B,IAAAG,OAEVyyC,GAAA,SAAA5yC,GACA,OAAS6B,EAAA,EAAA7B,MAET6yC,GAAAzyC,EACA,SAAAwwB,EAAAkiB,EAAApiB,GACA,WAAAE,EAAA/uB,EAEAlB,EACAuvB,GACAQ,EACAoiB,EAJAliB,EAAA5wB,IAMA0wB,IAYAqiB,GAAA3yC,EACA,SAAA6Z,EAAA2W,EAAA5J,GACA,IAAAld,EAAAnJ,EAAAsxB,GAAAjL,EAAA/M,EAAAmtB,GACA4L,GAAAhwC,EAAA8G,EAAAsU,KAAAzd,EAAAi6B,GAAA5T,EAAA/M,EAAAra,IAAAe,EAAAi6B,GAAA5T,EAAA/M,EAAA3Y,GACA,OAAAK,EACAqxC,EACAvB,GAAAuB,EACA,UAAAryC,EACAsjB,GACA,KACAtjB,EAAAuvB,GAAAtuB,EAAAkI,IAnBA,SAAA8mB,GACA,OAAAhwB,EACAiyC,GACAjiB,EACA,SAAA/uB,GACA,OAAAA,EAAAupB,IAEA,IAaA6nB,CAAAriB,OAEAsiB,GAAA9yC,EACA,SAAA0D,EAAA+I,EAAAsmC,GACAC,EACA,QACA,GAAAtvC,EAAA,EAEI,CACJ,GAAA+I,EAAA1M,EAEK,CACL,IAAA8C,EAAA4J,EAAA7M,EAKA8D,GAHA,EAIA+I,EALAA,EAAA1M,EAMAgzC,EAHAxyC,EAAAsf,GAAAhd,EAAAkwC,GAIA,SAAAC,EAVA,OAAAD,EAHA,OAAAA,KAkBAE,GAAAnzC,EACA,SAAA4D,EAAA+I,GACA,OAAAjD,GACAhJ,EAAAsyC,GAAApvC,EAAA+I,EAAAjL,MAEA0xC,GAAAlzC,EACA,SAAAmmB,EAAAziB,EAAA+I,GACA,GAAA/I,EAAA,EAEG,CACH,IAAAud,EAAA1f,EAAAmC,EAAA+I,GACA0mC,EACA,QACAC,EACA,QACA,IAAAnyB,EAAAlhB,IACA,OAAA0M,EAEA,IAAAwU,EAAAlhB,MAgEO,CACP,OAAAkhB,EAAArhB,EACA,MAAAuzC,EAEA,MAAAC,EAnEA,OAAAnyB,EAAArhB,GACA,OACA,MAAAuzC,EACA,OACA,IAAAzuB,EAAAzD,EAAAlhB,EAIA,OAAA+B,GAHA4iB,EAAA9kB,EACA8kB,EAAA3kB,EACAH,IAGA,OACA,GAAAqhB,EAAAlhB,QAAA,CACA,IAAAgxB,EAAA9P,EAAAlhB,EAEAkzB,EAAAlC,EAAAhxB,EAIA,OAAA+B,GALAivB,EAAAnxB,EAEAqzB,EAAArzB,EACAqzB,EAAAlzB,EACAH,IAIA,MAAAwzC,EAEA,QACA,GAAAnyB,EAAAlhB,SAAAkhB,EAAAlhB,UAAA,CACA,IAAAixB,EAAA/P,EAAAlhB,EAEAmxB,EAAAF,EAAAjxB,EAEA05B,EAAAvI,EAAAnxB,EAEA45B,EAAAF,EAAA15B,EAEA6B,EAAA+3B,EAAA55B,EACA,OAAAQ,EACAsf,GATAmR,EAAApxB,EAWAW,EACAsf,GAVAqR,EAAAtxB,EAYAW,EACAsf,GAXA4Z,EAAA75B,EAaAW,EACAsf,GAZA8Z,EAAA/5B,EAEAumB,EAAA,IAYA5lB,EAAA0yC,GAAAvvC,EAAA,EAAA9B,GAYApB,EAAA0yC,GAAA/sB,EAAA,EAAAziB,EAAA,EAAA9B,OAEA,MAAAwxC,GAYA,OAAA3mC,EAIA,OAAA3K,GAFAmf,EAAAlhB,EACAH,IAtFA,OAAA4B,IA2FA6xC,GAAAvzC,EACA,SAAA4D,EAAA+I,GACA,OAAAjM,EAAA0yC,GAAA,EAAAxvC,EAAA+I,KAEA6mC,GAAAtzC,EACA,SAAAyI,EAAAme,EAAAvH,GACA,IAAAk0B,EAAA,SAAAC,GACA,OAAAhzC,EACAsgB,GACAhhB,EACA,SAAA2zC,EAAAC,GACA,WAAAD,EAAAjyC,EAAA,MAAAiyC,EAAAC,EAAA,OAAAD,EAAAlzC,EACA8yC,GACApwB,GAAAywB,GAAA,EACAA,GAAAtvC,EACAsvC,EACA5xC,GACA2xC,OAEA7sB,EACArmB,EAAAwjB,GAAA,IAAAyvB,KAWAG,EAAA7zC,EACA,SAAA0zC,EAAAngC,GACA,OAAAozB,GACAlmC,EACAuvB,GAbA,SAAAzc,GACA,WAAAA,EAAA5R,EAEAykC,GACA3lC,EAAAuvB,GAAA0W,GAFAnzB,EAAAzT,EAEAirB,KAEAua,GAQAwO,CAAAvgC,GACA9S,EACAqvB,GACArvB,EACAw5B,GACA2O,GAAA8K,GACAxjB,IACAvnB,OAEAorC,EAAA/zC,EACA,SAAA0zC,EAAAngC,GACA,OAAA9S,EACA8vB,IACA,EACA9vB,EACA8sB,GACA,WACA,UAEA7sB,EACA2kC,IACQzD,GAAA,GACRnhC,EAAAozC,EAAAH,EAAAngC,GACAA,OAEAygC,EAAA,WACAC,EACA,MACA10B,EAAA5d,GACA,OAAA4d,EAAAzf,EAAA6B,GACA,OACA,IAAAsvB,EAAA1R,EAAAzf,EAEAyT,EAAA0d,EAAAhxB,EACA,OAAAQ,EACAszC,EACAN,EAJAxiB,EAAAnxB,GAKAyT,GACA,OACA,IAAA4f,EAAA5T,EAAAzf,EAGA,OADAyT,EAAA4f,EAAAlzB,GACAQ,EACAszC,EACAN,EAJAtgB,EAAArzB,GAKAyT,GACA,QACA,MAAA0gC,EAMA,SA5BA,GA4DA,OAAAxyC,EA9BA,WACAyyC,EACA,MACA30B,EAAA5d,GACA,OAAA4d,EAAAzf,EAAA6B,GACA,OACA,IAAAgjB,EAAApF,EAAAzf,EAEAyT,EAAAoR,EAAA1kB,EACA,OAAAQ,EACAszC,EACAN,EAJA9uB,EAAA7kB,GAKAyT,GACA,OACA,IAAAqR,EAAArF,EAAAzf,EAGA,OADAyT,EAAAqR,EAAA3kB,GACAQ,EACAszC,EACAN,EAJA7uB,EAAA9kB,GAKAyT,GACA,QACA,MAAA2gC,EAMA,SA5BA,GA8BAF,KAEAG,GAAAn0C,EACA,SAAAo0C,EAAA1jB,GACA,OAAA5V,EAGApa,EACAiyC,GACAjiB,EACA,SAAA/uB,GACA,OAAAA,EAAA0a,IAEA,IARA+3B,EAAAt5B,EAAA,KAAAA,EADA,IAAAA,IAWAu5B,GAAAjlC,GAAA,SACAklC,GAAAllC,GAAA,SACAmlC,GAAAv0C,EACA,SAAAuD,EAAA42B,GACA,OAAA15B,EACAmP,GACArM,EACA8iC,GAAAlM,MAEAqa,GAAAD,GAAA,WACAE,GAAA,SAAAtzB,GAEA,OADAA,EAAAlhB,GAGAy0C,GAAA,SAAAvkC,GACA,OAAAshC,GACAhxC,EACAsjB,GACA,IACAtjB,EACAusB,GACA1L,GACA7gB,EAAA+2B,GAAAid,GAAAtkC,OAEAwkC,GAAAJ,GAAA,YACAK,GAAApD,GAAA,MACAqD,GAAArD,GAAA,QACAsD,GAAAtD,GAAA,QAIAuD,GAAAtlC,GACAulC,GAAAh1C,EACA,SAAA2S,EAAAxL,GACA,OAAA1G,EACAs0C,GACApiC,GAPShR,EAAA,EAAA7B,EAQTqH,MAEA8tC,GAAA,SAAA1oC,GACA,OAAA9L,EACAu0C,GACA,OACA1vB,GAAA/Y,KAEA2oC,GAAAz0C,EACAkmB,GACA3kB,GACA,qBACAglB,IACAmuB,GAAA,SAAApoC,GACA,OAAAtM,EACAu0C,GACA,SACAv0C,EAAA6mB,GAAAva,EAAAmoC,MAEAE,GAAA,SAAA7oC,GACA,OAAA9L,EACAu0C,GACA,QACA1vB,GAAA/Y,KAEA8oC,GAAA/0C,EACA,SAAAyZ,EAAA2W,EAAA0jB,EAAAkB,EAAAxuB,GACA,IACAlC,EADA2wB,IACA3wB,EAAAnkB,EACAqvB,GACArvB,EACAw5B,GACA2O,GAAA9hB,GACAoJ,IACAnW,EAAAstB,KACA1lC,GAAA,IAAAijB,EAAA9kB,EAAA6B,GACAijB,EAAA9kB,IAMAsd,EAAArD,EAAAktB,EAAAK,GAAA,IAAA7mC,EAAAsjB,GAAA,IAAA+C,GACA3F,EAAAzgB,EACA8yC,GACAz5B,EAAAstB,GACAvgB,EACA8J,GAAAF,GAAAvR,IAEA60B,EAAA7yB,EAAAlhB,EACAu1C,EAAAF,GAFAn0B,EAAArhB,EAGA6kB,EAAAjkB,EAAAmyC,GAAA94B,EAAA2W,EAAA5J,GACAgsB,EAAAnuB,EAAA7kB,EACA21C,EAAA9wB,EAAA1kB,EACA,OAAAQ,EACA4wC,GACArvC,GAEA0yC,GACA1yC,GAEAP,EAAA,iBACAA,EAAA,qBAAAuyC,GACAvyC,EAAA,sBAAAqxC,QAGA9wC,GAEAvB,EACA6zC,GACAtyC,GAEA0yC,GACA1yC,GAEAP,EAAA,kBACAA,EAAA,kBAAA8zC,GACA9zC,EACA,uBACAhB,EACAuvB,IACA,EACAvvB,EACAk8B,GACArc,GAAAwG,GACA/M,EAAAzS,KACA7F,EAAA,uBAAAqxC,GACArxC,EAAA,wBAAA+zC,GACA/zC,EAAA,sBAAAuyC,QAGAhyC,GAEAvB,EACA4zC,GACAryC,GAEA8yC,GAAA,YACArD,GAAA,sBACA+C,GAAAe,GACAX,GAAAx3B,GACAy3B,GAAAz3B,GACAu3B,GAAAa,GACAJ,GACA1C,GACA30B,GAAA+I,KACAmuB,GACAvC,GAAAx0B,KACAi3B,GACA10C,EACAw5B,GACAuL,GACAiN,GAAA3rB,OAEAplB,GACAjB,EACA6wC,GACAtvC,GAEAyvC,GAAA,wBAEAzvC,GAEAuvC,GACA9wC,EAAA0zC,GAAAC,EAAA1jB,OAEAjwB,EACA4wC,GACArvC,GAEAyvC,GAAA,8BAEAzvC,GAEAvB,EACA4wC,GACArvC,GAEAyvC,GAAA,+BAEA/vC,MAEAjB,EACA4wC,GACArvC,GAEAyvC,GAAA,8BAEAzvC,GACAyzC,aAIAC,GAAAp1C,EACA,SAAAyZ,EAAA2W,EAAA0jB,EAAAkB,EAAAxuB,GACA,IACAlC,EADA2wB,IACA3wB,EAAAnkB,EACAqvB,GACArvB,EACAw5B,GACA2O,GAAA9hB,GACAoJ,IACAnW,EAAAstB,KACA1lC,GAAA,IAAAijB,EAAA9kB,EAAA6B,GACAijB,EAAA9kB,IAMAsd,EAAArD,EAAAktB,EAAAK,GAAA,IAAA7mC,EAAAsjB,GAAA,IAAA+C,GACA3F,EAAAzgB,EACA8yC,GACAz5B,EAAAstB,GACAvgB,EACA8J,GAAAF,GAAAvR,IAEA60B,EAAA7yB,EAAAlhB,EACAu1C,EAAAF,GAFAn0B,EAAArhB,EAGA6kB,EAAAjkB,EAAAmyC,GAAA94B,EAAA2W,EAAA5J,GACAgsB,EAAAnuB,EAAA7kB,EACA21C,EAAA9wB,EAAA1kB,EACA,OAAAQ,EACA4wC,GACArvC,GAEA0yC,GACA1yC,GAEAP,EAAA,iBACAA,EAAA,qBAAAuyC,GACAvyC,EAAA,sBAAAqxC,QAGA9wC,GAEAvB,EACA6zC,GACAtyC,GAEA0yC,GACA1yC,GAEAP,EAAA,gBACAA,EAAA,gBAAA8zC,GACA9zC,EACA,qBACAhB,EACAuvB,IACA,EACAvvB,EACAk8B,GACArc,GAAAwG,GACA/M,EAAAzS,KACA7F,EAAA,qBAAAqxC,GACArxC,EAAA,sBAAA+zC,GACA/zC,EAAA,oBAAAuyC,QAGAhyC,GAEAvB,EACA4zC,GACAryC,GAEA8yC,GAAA,YACArD,GAAA,oBACA+C,GAAAe,GACAH,GACA1C,GACA30B,GAAA+I,KACAmuB,GACAvC,GAAAx0B,KACAi3B,GACA10C,EACAw5B,GACAuL,GACAiN,GAAA3rB,KACA8tB,GAAAx3B,GACAy3B,GAAAz3B,GACAu3B,GAAAa,KAEA9zC,GACAjB,EACA6wC,GACAtvC,GAEAyvC,GAAA,sBAEAzvC,GAEAuvC,GACA9wC,EAAA0zC,GAAAC,EAAA1jB,OAEAjwB,EACA4wC,GACArvC,GAEAyvC,GAAA,sBAEA/vC,GACAjB,EACA4wC,GACArvC,GAEAyvC,GAAA,sBAEA/vC,GACAjB,EACA4wC,GACArvC,GAEAyvC,GAAA,4BAEAzvC,GACAyzC,aAIAE,GAAAhnC,GAAA,8BACAinC,GAAAD,GAAA,OACAE,GAAAhmC,GAAA,SACAimC,GAAAjmC,GAAA,QACAkmC,GAAAlmC,GAAA,UACAmmC,GAAAnmC,GAAA,UACAomC,GAAApmC,GAAA,kBACAqmC,GAAArmC,GAAA,mBACAsmC,GAAAtmC,GAAA,gBACAumC,GAAAvmC,GAAA,SACAwmC,GAAAxmC,GAAA,WACAymC,GAAAzmC,GAAA,SAOA0mC,GAAAv2C,EACA,SAAAw2C,EAAAC,GACA,IAAAllC,EAAAvP,GAEA6zC,GAAA,mBAAAW,GACAV,GAAA,QACAC,GAAA,MACAC,GAAA,gBACAC,GAAA,SACAC,GAAA,SACAC,GAAA,KACAE,GAAA,aACAC,GAAA,QAEA,OAWAV,GAXAa,EAAA90C,EAWA4P,EARA9Q,EACAsf,GAvBAtf,EACAu0C,GACA,QACA1vB,GAiBAmxB,EAAA32C,IAKAW,EACAsf,GACAq2B,GAAA,mBACA7kC,OAKAmlC,GAAAf,GAAA,UACAgB,GAAAhB,GAAA,QACAiB,GAAA/mC,GAAA,MACAgnC,GAAAhnC,GAAA,MACAinC,GAAAjnC,GAAA,KACAknC,GAAAlnC,GAAA,MACAmnC,GAAAnnC,GAAA,MACAonC,GAAApnC,GAAA,MACAqnC,GAAArnC,GAAA,MACAsnC,GAAA,SAAA5qC,GACA,OAAA7L,EACA61C,GACA,WACAx4B,GAAAxR,GACAvK,GAEAvB,EACAi2C,GACA10C,GAEA40C,GAAA,MACAC,GAAA,MACAC,GAAA,QAEAp1C,GACAjB,EACAk2C,GACA30C,GAEA+0C,GAAA,MACAE,GAAA,KACAD,GAAA,KACAE,GAAA,QAEAx1C,GACAjB,EACAk2C,GACA30C,GAEA+0C,GAAA,KACAE,GAAA,KACAD,GAAA,MACAE,GAAA,QAEAx1C,OAGA01C,GAAA12C,EACA61C,GACA,eACAr4B,GACAlc,GAEAvB,EACAi2C,GACA10C,GAEA40C,GAAA,MACAC,GAAA,MACAC,GAAA,QAEAp1C,GACAjB,EACAk2C,GACA30C,GAEA+0C,GAAA,MACAE,GAAA,KACAD,GAAA,MACAE,GAAA,QAEAx1C,GACAjB,EACAk2C,GACA30C,GAEA+0C,GAAA,MACAE,GAAA,MACAD,GAAA,MACAE,GAAA,QAEAx1C,MAEA21C,GAAA1B,GAAA,QACA2B,GAAAznC,GAAA,KAoDA0nC,GAAA,SAAAz3C,GACA,OAAS6B,EAAA,GAAA7B,MAET03C,GAAAt3C,EACA,SAAAJ,EAAAG,EAAAE,GACA,OAAUwB,EAAA,EAAA7B,IAAAG,IAAAE,OAEVs3C,GAAAv3C,EACA,SAAAJ,EAAAG,EAAAE,GACA,OAAUwB,EAAA,EAAA7B,IAAAG,IAAAE,OAEVu3C,GAAA13C,EACA,SAAAF,EAAAG,GACA,OAAU0B,EAAA,EAAA7B,IAAAG,OAEV03C,IAA+Dh2C,EAAA,GAC/Di2C,GAAA53C,EACA,SAAA+C,EAAAC,GACA,OAAAN,EAAAK,EAAAC,GAAA,EAAAD,EAAAC,IAEA60C,GAAAzoC,GAAA,YACA0oC,GAAA1oC,GAAA,UACA2oC,GAAA3oC,GAAA,YAOA4oC,GAAAnoC,GAAA,QACAooC,GAAA,SAAAr0C,GACA,OAAAnD,EACAoP,GACA,OACAiU,GAAAlgB,KAEAs0C,GAAA1G,GAAA,SACA2G,GAAA,SAAAp1C,GACA,OAAAtB,EAAAsB,GAAA,IAKAq1C,GAAAp4C,EACA,SAAA2S,EAAAxL,GACA,OAAA1G,EACAs0C,GACApiC,GANShR,EAAA,EAAA7B,EAOTqH,MAEAkxC,GAAA53C,EACAkmB,GACA3kB,GACA,mBACAqjB,IACAizB,GAAA,SAAAvrC,GACA,OAAAtM,EACA23C,GACA,QACA33C,EACA6mB,GACA6wB,GACA13C,EAAA6mB,GAAAva,EAAAsrC,OAEAE,GAAA/3C,EACA,SAAAuZ,EAAA2W,EAAA8nB,EAAApE,EAAAkB,EAAAxuB,GACA,IAEAsK,EAFAqnB,EAAA7nB,GAAAF,GACAgoB,GACAtnB,EAAAqnB,EAAAr5B,IACAzd,GAAA,IAAAyvB,EAAAtxB,EAAA6B,EAIA62C,EAAAz6B,IACMwR,GAAA,EAAAC,GAAA,IAAatR,GAHnBH,GADAqT,EAAAtxB,KAOA64C,EAAA71C,EACA21C,EAAAr5B,GACArB,GAAA0R,KACAmpB,EAAA,IAAA7+B,EAAAktB,EAAA4H,GACAgK,EAAAp4C,EACAuvB,IACA,EACAvvB,EACAk8B,GACArc,GAAAwG,GACA/M,EAAAzS,IACA8V,EAAA9Y,EACAyV,EAAAktB,EAAAK,GAAA,IACA7mC,EAAAsjB,GAAA,IAAA+C,IACAgyB,EAAAN,EAAAK,EAAA9+B,EAAA9M,EAAAxM,EACAuvB,GACA,GACAvvB,EACAk8B,GACAl8B,EACAw5B,GACA0M,GACAxiB,GAAA,IACA+L,GACAzvB,EACAmoC,GACA9hB,EACArmB,EACAuvB,GACA0V,GAAAhkC,GACAqY,EAAAstB,QAAA5mC,EACAuvB,GACA,GACAvvB,EACAk8B,GACAiN,GACAnpC,EACAqvB,GACAI,GACAzvB,EACAk8B,GACAiM,GAAA9hB,GACA/M,EAAAstB,OACA0R,EAAA,SAAAz2B,GACA,OAAA5hB,EACA6kB,GACAjD,EACA7hB,EACAkmB,GACA3kB,GACA,0BACAilB,IACAxmB,EACAkmB,GACA3kB,GACA,mBACAqjB,MAEAlE,EAAAzgB,EAAA8yC,GAAAz5B,EAAAstB,GAAAvgB,EAAA2xB,EAAAt5B,IAEA60B,EAAA7yB,EAAAlhB,EACAu1C,EAAAF,GAFAn0B,EAAArhB,EAGA6kB,EAAAjkB,EAAAmyC,GAAA94B,EAAA2W,EAAA5J,GACAgsB,EAAAnuB,EAAA7kB,EACA21C,EAAA9wB,EAAA1kB,EACA+4C,EAAAL,EAAA56B,GAAAhE,EAAAqtB,GAvKA1mC,EACA61C,GACA,UACAx4B,GAqKA45B,IApKA31C,GAEAvB,EACA42C,GACAr1C,GAEAs1C,GAAA,0LAEA51C,GACAjB,EACAk2C,GACA30C,GAEA+0C,GAAA,KACAE,GAAA,KACAD,GAAA,MACAE,GAAA,QAEAx1C,MA/CAhB,EACA61C,GACA,MACAx4B,GA+LA45B,IA9LA31C,GAEAvB,EACA42C,GACAr1C,GAEAs1C,GAAA,kDAEA51C,GACAjB,EACAi2C,GACA10C,GAEA40C,GAAA,MACAC,GAAA,MACAC,GAAA,OAEAp1C,OA6KAoxC,GAAA/4B,EAAAktB,EAAA2H,GAAA7wB,GAAAq5B,IAAAhD,GAAA,KAAA0E,GAAAtD,EAEAt3B,GAFAH,GACAo5B,GACAI,GAAAzwB,KACAlC,EAAA,WACA,OAAA8L,EAAA/uB,EAAA,CACA,IAAAgvB,EAAAD,EAAA5wB,EACA,OAAA2B,EACAhB,EACAk8B,GACA3P,GACA,SAAAjX,GACA,OAAAtV,EACA8vB,GACA,GACA9vB,EAAAglB,GAAAJ,GAAAtP,MAEA4a,EAAAxF,IACA1qB,EACAk8B,GACA3P,GACA,SAAAjX,GACA,OAAAtV,EACA8vB,GACA,GACA9vB,EAAAglB,GAAAJ,GAAAtP,MAEA4a,EAAAtZ,IAEA,OAAA5V,EAAAyc,OAzBA,GA4BAgM,EAAAtF,EAAA9kB,EACA2oB,EAAA7D,EAAA3kB,EACAg5C,EAAA30C,EACAtC,GAEAyvC,GAAA,uBACAyG,GAAAY,GACAlE,GAAAx3B,GACAy3B,GAAAz3B,KACA,EAhKA3c,EACA+wC,GACA,eACA,QA8JAmD,GAAAa,KAEA1yC,EAAAonB,EAAAhM,KAAApb,EAAA2lB,EAAAvK,IAGAxc,EAHAM,GAEAg2C,GAAA56B,EAAA,YAEA87B,EAAA,WACA,GAAAR,EAAA/2C,EA+DA,OAAAlB,EACA4zC,GACA/vC,EACA20C,EACAj3C,GAEA8yC,GAAA6D,IAAA5+B,EAAAqtB,GAAA,mBACAkR,GACA73C,EACAw5B,GACA0L,GACA8M,GAAA3rB,KACAsuB,GACA1C,GACA30B,GAAA+I,KACAmuB,GACAvC,GAAAx0B,QAEAxc,GAhFA,IAGAwvB,EAHAioB,EAAAT,EAAA54C,EACAs5C,EAAAr/B,EAAAktB,EAAA0H,GAAAiK,EAAA,SACAS,GACAnoB,EAAAzwB,EAAAsxB,GAAAjL,EAAA/M,EAAAjM,IACAnM,EAOAw3C,EAAA3pB,GALA/uB,EACAm3C,GACAna,IAHAvM,EAAApxB,EAGAs5C,GAAA,IACAD,EAAA5pB,IAKA,OAAA9uB,EACAs3C,GADAS,EAEA/3C,EACAsf,GACAtf,EACAu0C,GACA,QACA+D,EACAvB,GAAA1wB,KACArmB,EACAsf,GACAk4B,GAAAoB,GACA54C,EACAsf,GACAq1B,GACA30C,EACAi3C,IACA,EACA35B,GAAA+I,KACArmB,EACAsf,GACAk1B,GACAx0C,EAAAi3C,IAAA,EAAAx5B,KACA+6B,MAGAx4C,EACAsf,GACAtf,EACAu0C,GACA,QACA+D,EACAtB,GAAA3wB,KACArmB,EACAsf,GACAk4B,GAAAoB,GACA54C,EACAsf,GACAq1B,GACA1C,GACA30B,GAAA+I,KACArmB,EACAsf,GACAk1B,GACAvC,GAAAx0B,KACA+6B,MArBAv3C,GAxCA,GAqFA,OAAAjB,EACA4wC,GACArvC,GAEA0yC,GACA1yC,GAEAP,EAAA,iBACAA,EAAA,qBAAAuyC,GACAvyC,EAAA,sBAAAqxC,QAGA9wC,GAEAvB,EACA4wC,GACArvC,GAEA0yC,GACA1yC,GAEAP,EAAA,mBACAA,EAAA,yBAAAm3C,GACAn3C,EAAA,sBAAAsY,EAAAktB,EAAA0H,IACAltC,EACA,wBACAhB,EACAuvB,IACA,EACAvvB,EACAk8B,GACArc,GAAAwG,GACA/M,EAAAzS,KACA7F,EAAA,2BAAAq3C,GACAr3C,EAAA,wBAAAqxC,GACArxC,EACA,0BACAqB,EAAAk2C,EAAA96B,KACAzc,EAAA,yBAAA+zC,GACA/zC,EACA,2BACAqB,EAAA41C,EAAAx6B,KACAzc,EAAA,qBAAA+2C,QAGAx2C,GAEAvB,EACA6zC,GACAtyC,GAEAyvC,GAAA,yBAEAzvC,GAEAuvC,GACA9wC,EAAA0zC,GAAAC,EAAA1jB,OAEAwoB,EACAz4C,EACAuvB,GACAuhB,GAAA,IACAyH,MAEAv4C,EACA4wC,GACArvC,GAEAyvC,GAAA,oBAEAzvC,GACAyzC,KACA,WACA,GAAAvrB,EAAAvoB,EAqBA,OAAA8mB,EAAA9mB,EAqBA4vC,GAAA,KApBA+H,EAAA7wB,EAAA3oB,EACAW,EACAo3C,GACA71C,GAEA4yC,GAAAx3B,EAAA,WAEA3c,EACAusB,GACA,SAAAzZ,GACA,OAAA9S,EACAq3C,GACA91C,GAEAk2C,GAAA3kC,KAEA7R,IAEA43C,KAvCA,IAAAA,EAAApvB,EAAApqB,EACA,OAAAW,EACAo3C,GACA71C,GAEA4yC,GAAAx3B,EAAA,WAEA3c,EACAusB,GACA,SAAAzZ,GACA,OAAA9S,EACAq3C,GACA91C,GAEAk2C,GAAA3kC,KAEA7R,IAEA43C,IApBA,QAiDAC,GAAA,SAAAz5C,GACA,OAAS6B,EAAA,EAAA7B,MAET05C,GAAAl5C,EACA,SAAAyZ,EAAA2W,EAAA0jB,EAAAkB,EAAAxuB,GACA,IAAA2xB,EAAA7nB,GAAAF,GACAmoB,EAAAp4C,EACAuvB,IACA,EACAvvB,EACAk8B,GACArc,GAAAwG,GACA/M,EAAAzS,IACA8V,EAAA3c,EAAAsjB,GAAA,IAAA+C,GACAgyB,EAAAD,EAAA9+B,EAAA9M,EAAAxM,EACAuvB,GACA,GACAvvB,EACAk8B,GACAiN,GACAnpC,EACAqvB,GACAI,GACAzvB,EACAk8B,GACAiM,GAAA9hB,GACA/M,EAAAstB,OACAlmB,EAAAzgB,EAAA8yC,GAAAz5B,EAAAstB,GAAAvgB,EAAA2xB,EAAAt5B,IAEA60B,EAAA7yB,EAAAlhB,EACAu1C,EAAAF,GAFAn0B,EAAArhB,EAGA25C,EAAAh5C,EACA4zC,GACAryC,GAEAyvC,GAAA,uBACA2D,GACA30C,EACAi3C,IACA,EACA35B,GAAA+I,KACAmuB,GACAx0C,EAAAi3C,IAAA,EAAAx5B,KACAo6B,GAAAiB,IACA3E,GAAAx3B,GACAy3B,GAAAz3B,GACA86B,GAAAY,GACAhE,GAAA,UACAH,GAAAa,KAEA9zC,GACAijB,EAAAjkB,EAAAmyC,GAAA94B,EAAA2W,EAAA5J,GACAgsB,EAAAnuB,EAAA7kB,EACA21C,EAAA9wB,EAAA1kB,EACA+4C,EAAAlG,EAAA/0B,GAAAq5B,IAAAhD,GAAA,KAAA0E,GAAAtD,EAEAt3B,GAFAH,GACAo5B,GACAI,GAAAzwB,KACA,OAAArmB,EACA4wC,GACArvC,GAEA0yC,GACA1yC,GAEAP,EAAA,iBACAA,EAAA,qBAAAuyC,GACAvyC,EAAA,sBAAAqxC,QAGA9wC,GAEAvB,EACA4wC,GACArvC,GAEA0yC,GACA1yC,GAEAP,EAAA,mBACAA,EAAA,6BAAAsY,EAAAktB,EAAA4H,IACAptC,EAAA,sBAAAsY,EAAAktB,EAAA0H,IACAltC,EAAA,wBAAAo3C,GACAp3C,EAAA,2BAAAq3C,GACAr3C,EAAA,wBAAAqxC,GACArxC,EAAA,6BACAA,EAAA,yBAAA+zC,GACA/zC,EAAA,uBAAAuyC,QAGAhyC,GAEAvB,EACA6zC,GACAtyC,GAEAyvC,GAAA,yBAEAzvC,GAEAuvC,GACA9wC,EAAA0zC,GAAAC,EAAA1jB,OAEA+oB,EACAh5C,EACAuvB,GACAuhB,GAAA,IACAyH,MAEAv4C,EACA4wC,GACArvC,GAEAyvC,GAAA,oBAEAzvC,GACAyzC,UAGAiE,GAAAtqC,GAAA,UACAuqC,GAAA,SAAAptC,GACA,OAAA9L,EACAu0C,GACA,QACA1vB,GAAA/Y,KAEAqtC,GAAAt5C,EACA,SAAAyZ,EAAA2W,EAAA0jB,EAAAkB,EAAAxuB,GACA,IAAA/Y,EAAApB,EACA,KADAoB,EAQAtN,EACA8vB,GACAgV,GAAA7jC,GACAjB,EACAmoC,GACA9hB,EACArmB,EAAAuvB,GAAAsV,GAAAvrB,EAAAstB,OAbA1lC,EACAoM,EAAAjO,EAGA4B,EAUA2wB,EAAA3xB,EACA8yC,GACAz5B,EAAAstB,GACAvgB,EACA8J,GAAAF,GAAAvR,IACA06B,EAAAxnB,EAAAvyB,EAEA,GADAuyB,EAAApyB,EAEA,OAAAsxC,GAAA,IAEA,OAAA7gB,EAAA/uB,EAAA,CACA,IACAyvB,EADAV,EAAA5wB,EACA0rB,GACA,OAAA4F,EAAAzvB,EAAA,CACA,IAAAqiC,EAAA5S,EAAAtxB,EACA,OAAAW,EACA4wC,GACA3vC,EACAM,GAEAvB,EACA4wC,GACA3vC,EACAjB,EACAmjB,GACA5jB,EACA,SAAAsJ,GACA,IAAAo4B,EAAA5d,GAAAxa,GAYA,OAAA1I,EACAk5C,GACA//B,EACAiqB,EAbA,IAAAA,EAAAriC,GAEAlB,EACAi6B,GACAgH,EACAjhC,EAAAuvB,GAAAtuB,EAJAsiC,EAAAlkC,EAIA2sB,KAUA6oB,GAAAuE,EACAv1C,EACAwiB,EACA9kB,GACA0/B,QAEA/0B,IACAlM,EACA4wC,GACArvC,GAEAyvC,GAAA,oBAEAzvC,GAEAvB,EACAi5C,GACA13C,GAEAyvC,GAAA,UACAkI,GACAj5C,EACA8xC,GACA1rB,EACA3D,GAAAxW,GACAq3B,MAEAhiC,GAEAuvC,GAAA,qBAKA,OAAAA,GAAA,IAGA,OAAAA,GAAA,MAIAuI,GAAAx5C,EACA,SAAAyZ,EAAA2W,EAAA0jB,EAAAkB,EAAAxuB,GACA,OAAArmB,EACA4wC,GACArvC,GAEAyvC,GACA,iBAAA3tB,GACAX,GAAA2D,OAEA9kB,GAEA,WACA,IAAAmxB,EAAA1yB,EAAA6xC,GAAAv4B,EAAA2W,GACA,OAAAyC,EAAAxxB,GACA,OACA,OAAAd,EAAA03C,GAAAx+B,EAAA2W,GAAA,EAAA0jB,EAAAkB,EAAAxuB,GACA,OACA,OAAAjmB,EAAA03C,GAAAx+B,EAAA2W,GAAA,EAAA0jB,EAAAkB,EAAAxuB,GACA,OACA,OAAAlmB,EAAA44C,GAAAz/B,EAAA2W,EAAA0jB,EAAAkB,EAAAxuB,GACA,OACA,OAAAlmB,EAAA80C,GAAA37B,EAAA2W,EAAA0jB,EAAAkB,EAAAxuB,GACA,OACA,OAAAlmB,EAAAy0C,GAAAt7B,EAAA2W,EAAA0jB,EAAAkB,EAAAxuB,GACA,OAEA,OAAAjmB,EAAAk5C,GAAAhgC,EAAA2W,EADAyC,EAAArzB,EACAs0C,EAAAkB,EAAAxuB,GACA,QACA,OAAAlmB,EAAAg5C,GAAA7/B,EAAA2W,EAAA0jB,EAAAkB,EAAAxuB,IAjBA,QAsBAizB,GAAAv5C,EACA,SAAAuZ,EAAA2W,EAAA7G,EAAAuqB,EAAAkB,EAAAxuB,GACA,IAWA8d,EAiBAhgB,EAh9CA9kB,EAo7CA8pB,EACA,IAAA8G,EAAA/uB,EAEAlB,EAAAuvB,GAAAtuB,EADAgvB,EAAA5wB,EACA2sB,IAEA/qB,EAGA6B,EAAA+sB,GACA5mB,GAAAod,IACAhM,EAEA,MADA8pB,EAAAnkC,EAAA0zC,GAAAC,EAAA1jB,IAEAjwB,EAAAuvB,GAAA,GAAAzsB,GAEAqhC,EAIAoV,EAAAv5C,EAAAupC,GAAAljB,EAAA/M,EAAAhX,GACAk3C,GAAAlgC,EAAAktB,EAAAyH,IAAA9d,GAAAF,GAAAxR,MAAApc,EAAAgkB,EAAAplB,GACAyf,EAAAzgB,EACA8yC,GACAz5B,EAAAstB,GACAvgB,EACA8J,GAAAF,GAAAvR,IACA06B,EAAA14B,EAAArhB,EAsBA,OArBAqhB,EAAAlhB,EAqBAsxC,GAAA,IAAA9wC,EACA4wC,GACArvC,GAEAyvC,GAAA,eAEAzvC,GAEA,KAAA8Y,EAAAra,EACA4wC,GACA/sC,EACAtC,GAEA0yC,GACA1yC,GAEAP,EAAA,iBACAA,EAAA,yBAAAw4C,GACAx4C,EAAA,uBAAAw4C,GAAAD,QAGAC,EAAAj4C,GAEA23C,IA3/CA75C,EA4/CAgnB,GA3/CSnlB,EAAA,GAAA7B,SA4/CT4B,GACAM,GAEAuvC,GAAAz2B,MACAy2B,GAAA,IACAyI,IAAAC,EAAAx5C,EACA4wC,GACArvC,GAEA0yC,GACA1yC,GAEAP,EAAA,yBAAAw4C,GACAx4C,EAAA,uBA1DAmjB,EA6DAiF,EA3DAppB,EACAusB,GACA,SAAArI,GACA,IAAA+c,EAAA/c,EAAA7kB,EAEA,OAAAc,EACAk5C,GACA//B,EAHA4K,EAAA1kB,EAKAQ,EAAAi6B,GAAAgH,EAAA9X,GACA0rB,GAAAuE,EACAv1C,EACAwiB,EACA9kB,GACA0/B,OAfA9c,KA4DA2sB,GAAA,SAYA2I,GAAA9qC,GAAA,MAEA+qC,GADA5qC,GAiJA6qC,GAAA35C,EAAAw5B,GAjBA,SAAAogB,GACA,IAAAC,EAEAt4C,GAEA,WAjBA,WACA,OAaAq4C,GAZA,OACA,cACA,OACA,cACA,OACA,mBACA,QACA,cASAE,KAGA,oBAAA95C,EAAAsjB,GAAA,IAAAu2B,IAEA,SAAAz9B,GACA,OAAApc,EACA+wC,GACA,OAn1UA,gBAAA3S,MAFAl2B,EAs1UAkU,GAp1UA4B,QAAA,cAAA9V,GAFA,IAAAA,IAq2UA6xC,GAAAprC,GAAA,KACAqrC,GAAAz6C,EACA,SAAA06C,EAAAC,GACA,OAAAl6C,EACA+5C,GACAx4C,GAEA0yC,GACA1yC,GAEAP,EAAA,UACAA,EACA,cACAqB,EAAA63C,EAAAD,OAEAN,GAAAO,KAEA34C,GAEAuvC,GA/BA,WACA,OA+BAoJ,GA9BA,OACA,cACA,OACA,cACA,OACA,mBACA,QACA,qBAuBAC,SAGAC,GAAA74C,GACA,UAyBA84C,GADApuC,GACAhL,GArtVAukC,IAiuVkB8U,MAAQphC,MA5iS1BusB,IAFA3sB,IAqiSAe,GAAA82B,GACA4J,GAAAv6C,EAAAw5B,GAAAkX,GAAAryB,IACAm8B,GA/mRA,SAAAn7C,GACA,OAAS6B,EAAA,EAAA7B,MA+mRT0a,GAAA,WACA,OAAAsgC,IAEAvgC,GAAAyzB,GACAnzB,GAtBA,SAAAd,GACA,OACAoC,GAAAna,GAdA,SAAA+X,GACA,OAAAtZ,EACA4wC,GACArvC,GAEAyvC,GAAA,gBAEAhxC,EACAusB,GACAytB,GAAA1gC,EAAAm1B,GACA2L,KAMAK,CAAAnhC,GArMA,SAAAA,GACA,IAAAohC,EAAAn7C,EACA,SAAAsJ,EAAA6X,GACA,IAoEApe,EAnFAgX,EAeAw0B,EAAAptB,EAAAne,EACAwrC,EAAArtB,EAAApL,EACA,OAAAtV,EACA4wC,GACArvC,GAEAyvC,GAAA,qBAEAzvC,GAEAvB,EACAy5C,GACAl4C,GAEAyvC,GAAA,8BAEAzvC,GAEAuvC,GAAA/C,EAAAnyB,OAEA5b,EACA4wC,GACArvC,GAEAyvC,GAAA,8BAEAzvC,GAEAvB,EACA4wC,GACArvC,GAEAvB,EAAAixC,GAAA,0BACAjxC,EAAAixC,GAAA,qBACAjxC,EAAAixC,GAAA,uBAEA1vC,GAEAvB,EACAkxC,GACA,OACAlxC,EACA4wC,GACArvC,GAEAvB,EAAAixC,GAAA,kBACAjxC,EAAAixC,GAAA,yCAEA1vC,GAEAvB,EACA05C,GACAp7B,GAAAzV,IAnEAyQ,EAoEAw0B,EAnEA9tC,EACA4wC,GACA3vC,EACAM,GAEApB,EAAAk5C,GAAA//B,IAAAotB,IAAA,KAAAzlC,YAgEA,SAAAqB,GACA,OAAAtC,EACA4wC,GACArvC,GAEAvB,EAAAixC,GAAA,uBAEA1vC,GACAe,KARA,CAUAtC,EACAkxC,GACA,QACA5uC,EAUAtC,EACAuvB,GACAuhB,GAAA,KACA9wC,EAAAk8B,GAAAkV,GAAAtD,EAAAlH,KAZA5mC,EACA4wC,GACArvC,GAEAyvC,GAAA,eAEAzvC,GACAe,WAOAtC,EACA4wC,GACArvC,GAEAvB,EAAAixC,GAAA,gBACAjxC,EAAAixC,GAAA,uBAEA1vC,GAntDA,WACA,IAKAe,EALA6f,EAAAwjB,GACA+E,GAmtDAqD,EAAArH,KAltDA,OAAA1mC,EACAkxC,GACA,UACA5uC,EAUA8uC,GAAAjvB,GATAniB,EACA4wC,GACArvC,GAEAyvC,GAAA,eAEAzvC,GACAe,OAusDAq4C,cAKA,OAAA36C,EACA4wC,GACArvC,GAEAyvC,GAAA,iBAEAzvC,GAEAvB,EACA4wC,GACA3vC,EACAjB,EAAAmjB,GAAAu3B,EAAAphC,EAAA1C,OAuFAgkC,CAAAthC,KAEAsC,GAAA,qBA3hSA2+B,GACA7U,GAAA5sB,GAAA0hC,GACA13C,GAAA,WAAuBA,GAAAzD,EAAAomC,GAAA1pB,QAEvBlD,IACAqB,EAAA,SAAA5O,GAMA,OAJAxI,GAAAzD,EAAAiM,EACAmR,GAAAnM,iBAAA,WAAAxN,IACA2Z,GAAAo+B,UAAAC,UAAA/0C,QAAA,cAAA0W,GAAAnM,iBAAA,aAAAxN,IAEAvD,EAAA,SAAA0Q,EAAAiC,GAEA,IAAAA,EAAA6oC,UAAA7oC,EAAA8oC,UAAA9oC,EAAA+oC,UAAA/oC,EAAAgpC,OAAA,IAAAjrC,EAAAkrC,SAAAlrC,EAAAmrC,SACA,CACAlpC,EAAAK,iBACA,IAAA2J,EAAAjM,EAAAiM,KACAnY,EAAAgY,KACAizB,EAAAhzB,GAAAE,GAAA7c,EACAiM,EAAAo6B,GACAsJ,GACAjrC,EAAAiyB,KAAAgZ,EAAAhZ,IACAjyB,EAAA+xB,KAAAkZ,EAAAlZ,IACA/xB,EAAAgyB,GAAA12B,IAAA2vC,EAAAjZ,GAAA12B,GA0kFS6B,EAAA,EAAA7B,EAxkFT2vC,GAokFA,SAAA3vC,GACA,OAAS6B,EAAA,EAAA7B,KApkFTg8C,CAAAn/B,SAKArC,GAAA,SAAAsD,GAEA,OAAAld,EAAA6Y,GAAAe,GAAAsD,EAAApB,KAAAjZ,KAEAsX,GAAAtB,GAAAsB,GACAN,GAAAhB,GAAAgB,GACAC,GAAAjB,GAAAiB,MAugS0BoL,GAAAm2B,CAAA,KA/tV1Bt8C,EAAA,IAMA,SAAAu8C,EAAAzkB,EAAA0O,GAEA,QAAAzqB,KAAAyqB,EAEAzqB,KAAA+b,EACA,QAAA/b,EACA7Y,EAAA,GACAq5C,EAAAzkB,EAAA/b,GAAAyqB,EAAAzqB,IACA+b,EAAA/b,GAAAyqB,EAAAzqB,GAbAwgC,CAAAv8C,EAAA,IAAAwmC,IACAxmC,EAAA,IAAAwmC,GArtEA,CAk7Z6FgW,2CCx6Z7F,IAAMC,IACJ5pC,kDAEEA,2BAEAA,+BALJ,2DAmCA,SAAA6pC,EAAAC,GACEd,yCAEQ,SAAAe,GACJA,gBAA6B,WAC3B,IAAMC,EAAmBD,EAAzBE,WACAD,gBAAiC,WAC/B,cAAIA,UACEhB,wBAAJkB,WAKEC,yDAKAA,uDAjBZnB,MAuBS,SAAAr9B,GACLw+B,+DCpENC,KDkBe,WACb,GAA6C,kBAA7CpB,UAA2E,CAGzE,GADkB,IAAAqB,IAAQC,aAAwBtqC,OAAlDoK,UACImgC,SAAqBvqC,gBAAzBwqC,OAIE,OAGFxqC,+BAAgC,WAC9B,IAAM8pC,EAAK,GAAAW,OAAMH,aAAjB,sBAEAV,EAwCN,SAAAE,GAEEY,cACQ,SAAAC,GAGFA,iBADF,IAEEA,oDAGA3B,mCAAmC,SAAAe,GACjCA,oBAA+B,WAC7B/pC,6BAKJ6pC,OAfNa,MAkBS,WACLP,+EAxDES,IAHAf,QC9BRgB,GAEYT,EAAZ,IAEAU,eAAoB5tC,KAAMnB,SAAS2M","file":"static/js/main.2c571f6e.chunk.js","sourcesContent":["(function(scope){\n'use strict';\n\nfunction F(arity, fun, wrapper) {\n wrapper.a = arity;\n wrapper.f = fun;\n return wrapper;\n}\n\nfunction F2(fun) {\n return F(2, fun, function(a) { return function(b) { return fun(a,b); }; })\n}\nfunction F3(fun) {\n return F(3, fun, function(a) {\n return function(b) { return function(c) { return fun(a, b, c); }; };\n });\n}\nfunction F4(fun) {\n return F(4, fun, function(a) { return function(b) { return function(c) {\n return function(d) { return fun(a, b, c, d); }; }; };\n });\n}\nfunction F5(fun) {\n return F(5, fun, function(a) { return function(b) { return function(c) {\n return function(d) { return function(e) { return fun(a, b, c, d, e); }; }; }; };\n });\n}\nfunction F6(fun) {\n return F(6, fun, function(a) { return function(b) { return function(c) {\n return function(d) { return function(e) { return function(f) {\n return fun(a, b, c, d, e, f); }; }; }; }; };\n });\n}\nfunction F7(fun) {\n return F(7, fun, function(a) { return function(b) { return function(c) {\n return function(d) { return function(e) { return function(f) {\n return function(g) { return fun(a, b, c, d, e, f, g); }; }; }; }; }; };\n });\n}\nfunction F8(fun) {\n return F(8, fun, function(a) { return function(b) { return function(c) {\n return function(d) { return function(e) { return function(f) {\n return function(g) { return function(h) {\n return fun(a, b, c, d, e, f, g, h); }; }; }; }; }; }; };\n });\n}\nfunction F9(fun) {\n return F(9, fun, function(a) { return function(b) { return function(c) {\n return function(d) { return function(e) { return function(f) {\n return function(g) { return function(h) { return function(i) {\n return fun(a, b, c, d, e, f, g, h, i); }; }; }; }; }; }; }; };\n });\n}\n\nfunction A2(fun, a, b) {\n return fun.a === 2 ? fun.f(a, b) : fun(a)(b);\n}\nfunction A3(fun, a, b, c) {\n return fun.a === 3 ? fun.f(a, b, c) : fun(a)(b)(c);\n}\nfunction A4(fun, a, b, c, d) {\n return fun.a === 4 ? fun.f(a, b, c, d) : fun(a)(b)(c)(d);\n}\nfunction A5(fun, a, b, c, d, e) {\n return fun.a === 5 ? fun.f(a, b, c, d, e) : fun(a)(b)(c)(d)(e);\n}\nfunction A6(fun, a, b, c, d, e, f) {\n return fun.a === 6 ? fun.f(a, b, c, d, e, f) : fun(a)(b)(c)(d)(e)(f);\n}\nfunction A7(fun, a, b, c, d, e, f, g) {\n return fun.a === 7 ? fun.f(a, b, c, d, e, f, g) : fun(a)(b)(c)(d)(e)(f)(g);\n}\nfunction A8(fun, a, b, c, d, e, f, g, h) {\n return fun.a === 8 ? fun.f(a, b, c, d, e, f, g, h) : fun(a)(b)(c)(d)(e)(f)(g)(h);\n}\nfunction A9(fun, a, b, c, d, e, f, g, h, i) {\n return fun.a === 9 ? fun.f(a, b, c, d, e, f, g, h, i) : fun(a)(b)(c)(d)(e)(f)(g)(h)(i);\n}\n\n\n\n\nvar _JsArray_empty = [];\n\nfunction _JsArray_singleton(value)\n{\n return [value];\n}\n\nfunction _JsArray_length(array)\n{\n return array.length;\n}\n\nvar _JsArray_initialize = F3(function(size, offset, func)\n{\n var result = new Array(size);\n\n for (var i = 0; i < size; i++)\n {\n result[i] = func(offset + i);\n }\n\n return result;\n});\n\nvar _JsArray_initializeFromList = F2(function (max, ls)\n{\n var result = new Array(max);\n\n for (var i = 0; i < max && ls.b; i++)\n {\n result[i] = ls.a;\n ls = ls.b;\n }\n\n result.length = i;\n return _Utils_Tuple2(result, ls);\n});\n\nvar _JsArray_unsafeGet = F2(function(index, array)\n{\n return array[index];\n});\n\nvar _JsArray_unsafeSet = F3(function(index, value, array)\n{\n var length = array.length;\n var result = new Array(length);\n\n for (var i = 0; i < length; i++)\n {\n result[i] = array[i];\n }\n\n result[index] = value;\n return result;\n});\n\nvar _JsArray_push = F2(function(value, array)\n{\n var length = array.length;\n var result = new Array(length + 1);\n\n for (var i = 0; i < length; i++)\n {\n result[i] = array[i];\n }\n\n result[length] = value;\n return result;\n});\n\nvar _JsArray_foldl = F3(function(func, acc, array)\n{\n var length = array.length;\n\n for (var i = 0; i < length; i++)\n {\n acc = A2(func, array[i], acc);\n }\n\n return acc;\n});\n\nvar _JsArray_foldr = F3(function(func, acc, array)\n{\n for (var i = array.length - 1; i >= 0; i--)\n {\n acc = A2(func, array[i], acc);\n }\n\n return acc;\n});\n\nvar _JsArray_map = F2(function(func, array)\n{\n var length = array.length;\n var result = new Array(length);\n\n for (var i = 0; i < length; i++)\n {\n result[i] = func(array[i]);\n }\n\n return result;\n});\n\nvar _JsArray_indexedMap = F3(function(func, offset, array)\n{\n var length = array.length;\n var result = new Array(length);\n\n for (var i = 0; i < length; i++)\n {\n result[i] = A2(func, offset + i, array[i]);\n }\n\n return result;\n});\n\nvar _JsArray_slice = F3(function(from, to, array)\n{\n return array.slice(from, to);\n});\n\nvar _JsArray_appendN = F3(function(n, dest, source)\n{\n var destLen = dest.length;\n var itemsToCopy = n - destLen;\n\n if (itemsToCopy > source.length)\n {\n itemsToCopy = source.length;\n }\n\n var size = destLen + itemsToCopy;\n var result = new Array(size);\n\n for (var i = 0; i < destLen; i++)\n {\n result[i] = dest[i];\n }\n\n for (var i = 0; i < itemsToCopy; i++)\n {\n result[i + destLen] = source[i];\n }\n\n return result;\n});\n\n\n\nvar _List_Nil = { $: 0 };\nvar _List_Nil_UNUSED = { $: '[]' };\n\nfunction _List_Cons(hd, tl) { return { $: 1, a: hd, b: tl }; }\nfunction _List_Cons_UNUSED(hd, tl) { return { $: '::', a: hd, b: tl }; }\n\n\nvar _List_cons = F2(_List_Cons);\n\nfunction _List_fromArray(arr)\n{\n\tvar out = _List_Nil;\n\tfor (var i = arr.length; i--; )\n\t{\n\t\tout = _List_Cons(arr[i], out);\n\t}\n\treturn out;\n}\n\nfunction _List_toArray(xs)\n{\n\tfor (var out = []; xs.b; xs = xs.b) // WHILE_CONS\n\t{\n\t\tout.push(xs.a);\n\t}\n\treturn out;\n}\n\nvar _List_map2 = F3(function(f, xs, ys)\n{\n\tfor (var arr = []; xs.b && ys.b; xs = xs.b, ys = ys.b) // WHILE_CONSES\n\t{\n\t\tarr.push(A2(f, xs.a, ys.a));\n\t}\n\treturn _List_fromArray(arr);\n});\n\nvar _List_map3 = F4(function(f, xs, ys, zs)\n{\n\tfor (var arr = []; xs.b && ys.b && zs.b; xs = xs.b, ys = ys.b, zs = zs.b) // WHILE_CONSES\n\t{\n\t\tarr.push(A3(f, xs.a, ys.a, zs.a));\n\t}\n\treturn _List_fromArray(arr);\n});\n\nvar _List_map4 = F5(function(f, ws, xs, ys, zs)\n{\n\tfor (var arr = []; ws.b && xs.b && ys.b && zs.b; ws = ws.b, xs = xs.b, ys = ys.b, zs = zs.b) // WHILE_CONSES\n\t{\n\t\tarr.push(A4(f, ws.a, xs.a, ys.a, zs.a));\n\t}\n\treturn _List_fromArray(arr);\n});\n\nvar _List_map5 = F6(function(f, vs, ws, xs, ys, zs)\n{\n\tfor (var arr = []; vs.b && ws.b && xs.b && ys.b && zs.b; vs = vs.b, ws = ws.b, xs = xs.b, ys = ys.b, zs = zs.b) // WHILE_CONSES\n\t{\n\t\tarr.push(A5(f, vs.a, ws.a, xs.a, ys.a, zs.a));\n\t}\n\treturn _List_fromArray(arr);\n});\n\nvar _List_sortBy = F2(function(f, xs)\n{\n\treturn _List_fromArray(_List_toArray(xs).sort(function(a, b) {\n\t\treturn _Utils_cmp(f(a), f(b));\n\t}));\n});\n\nvar _List_sortWith = F2(function(f, xs)\n{\n\treturn _List_fromArray(_List_toArray(xs).sort(function(a, b) {\n\t\tvar ord = A2(f, a, b);\n\t\treturn ord === elm$core$Basics$EQ ? 0 : ord === elm$core$Basics$LT ? -1 : 1;\n\t}));\n});\n\n\n\n// LOG\n\nvar _Debug_log = F2(function(tag, value)\n{\n\treturn value;\n});\n\nvar _Debug_log_UNUSED = F2(function(tag, value)\n{\n\tconsole.log(tag + ': ' + _Debug_toString(value));\n\treturn value;\n});\n\n\n// TODOS\n\nfunction _Debug_todo(moduleName, region)\n{\n\treturn function(message) {\n\t\t_Debug_crash(8, moduleName, region, message);\n\t};\n}\n\nfunction _Debug_todoCase(moduleName, region, value)\n{\n\treturn function(message) {\n\t\t_Debug_crash(9, moduleName, region, value, message);\n\t};\n}\n\n\n// TO STRING\n\nfunction _Debug_toString(value)\n{\n\treturn '';\n}\n\nfunction _Debug_toString_UNUSED(value)\n{\n\treturn _Debug_toAnsiString(false, value);\n}\n\nfunction _Debug_toAnsiString(ansi, value)\n{\n\tif (typeof value === 'function')\n\t{\n\t\treturn _Debug_internalColor(ansi, '');\n\t}\n\n\tif (typeof value === 'boolean')\n\t{\n\t\treturn _Debug_ctorColor(ansi, value ? 'True' : 'False');\n\t}\n\n\tif (typeof value === 'number')\n\t{\n\t\treturn _Debug_numberColor(ansi, value + '');\n\t}\n\n\tif (value instanceof String)\n\t{\n\t\treturn _Debug_charColor(ansi, \"'\" + _Debug_addSlashes(value, true) + \"'\");\n\t}\n\n\tif (typeof value === 'string')\n\t{\n\t\treturn _Debug_stringColor(ansi, '\"' + _Debug_addSlashes(value, false) + '\"');\n\t}\n\n\tif (typeof value === 'object' && '$' in value)\n\t{\n\t\tvar tag = value.$;\n\n\t\tif (typeof tag === 'number')\n\t\t{\n\t\t\treturn _Debug_internalColor(ansi, '');\n\t\t}\n\n\t\tif (tag[0] === '#')\n\t\t{\n\t\t\tvar output = [];\n\t\t\tfor (var k in value)\n\t\t\t{\n\t\t\t\tif (k === '$') continue;\n\t\t\t\toutput.push(_Debug_toAnsiString(ansi, value[k]));\n\t\t\t}\n\t\t\treturn '(' + output.join(',') + ')';\n\t\t}\n\n\t\tif (tag === 'Set_elm_builtin')\n\t\t{\n\t\t\treturn _Debug_ctorColor(ansi, 'Set')\n\t\t\t\t+ _Debug_fadeColor(ansi, '.fromList') + ' '\n\t\t\t\t+ _Debug_toAnsiString(ansi, elm$core$Set$toList(value));\n\t\t}\n\n\t\tif (tag === 'RBNode_elm_builtin' || tag === 'RBEmpty_elm_builtin')\n\t\t{\n\t\t\treturn _Debug_ctorColor(ansi, 'Dict')\n\t\t\t\t+ _Debug_fadeColor(ansi, '.fromList') + ' '\n\t\t\t\t+ _Debug_toAnsiString(ansi, elm$core$Dict$toList(value));\n\t\t}\n\n\t\tif (tag === 'Array_elm_builtin')\n\t\t{\n\t\t\treturn _Debug_ctorColor(ansi, 'Array')\n\t\t\t\t+ _Debug_fadeColor(ansi, '.fromList') + ' '\n\t\t\t\t+ _Debug_toAnsiString(ansi, elm$core$Array$toList(value));\n\t\t}\n\n\t\tif (tag === '::' || tag === '[]')\n\t\t{\n\t\t\tvar output = '[';\n\n\t\t\tvalue.b && (output += _Debug_toAnsiString(ansi, value.a), value = value.b)\n\n\t\t\tfor (; value.b; value = value.b) // WHILE_CONS\n\t\t\t{\n\t\t\t\toutput += ',' + _Debug_toAnsiString(ansi, value.a);\n\t\t\t}\n\t\t\treturn output + ']';\n\t\t}\n\n\t\tvar output = '';\n\t\tfor (var i in value)\n\t\t{\n\t\t\tif (i === '$') continue;\n\t\t\tvar str = _Debug_toAnsiString(ansi, value[i]);\n\t\t\tvar c0 = str[0];\n\t\t\tvar parenless = c0 === '{' || c0 === '(' || c0 === '[' || c0 === '<' || c0 === '\"' || str.indexOf(' ') < 0;\n\t\t\toutput += ' ' + (parenless ? str : '(' + str + ')');\n\t\t}\n\t\treturn _Debug_ctorColor(ansi, tag) + output;\n\t}\n\n\tif (typeof value === 'object')\n\t{\n\t\tvar output = [];\n\t\tfor (var key in value)\n\t\t{\n\t\t\tvar field = key[0] === '_' ? key.slice(1) : key;\n\t\t\toutput.push(_Debug_fadeColor(ansi, field) + ' = ' + _Debug_toAnsiString(ansi, value[key]));\n\t\t}\n\t\tif (output.length === 0)\n\t\t{\n\t\t\treturn '{}';\n\t\t}\n\t\treturn '{ ' + output.join(', ') + ' }';\n\t}\n\n\treturn _Debug_internalColor(ansi, '');\n}\n\nfunction _Debug_addSlashes(str, isChar)\n{\n\tvar s = str\n\t\t.replace(/\\\\/g, '\\\\\\\\')\n\t\t.replace(/\\n/g, '\\\\n')\n\t\t.replace(/\\t/g, '\\\\t')\n\t\t.replace(/\\r/g, '\\\\r')\n\t\t.replace(/\\v/g, '\\\\v')\n\t\t.replace(/\\0/g, '\\\\0');\n\n\tif (isChar)\n\t{\n\t\treturn s.replace(/\\'/g, '\\\\\\'');\n\t}\n\telse\n\t{\n\t\treturn s.replace(/\\\"/g, '\\\\\"');\n\t}\n}\n\nfunction _Debug_ctorColor(ansi, string)\n{\n\treturn ansi ? '\\x1b[96m' + string + '\\x1b[0m' : string;\n}\n\nfunction _Debug_numberColor(ansi, string)\n{\n\treturn ansi ? '\\x1b[95m' + string + '\\x1b[0m' : string;\n}\n\nfunction _Debug_stringColor(ansi, string)\n{\n\treturn ansi ? '\\x1b[93m' + string + '\\x1b[0m' : string;\n}\n\nfunction _Debug_charColor(ansi, string)\n{\n\treturn ansi ? '\\x1b[92m' + string + '\\x1b[0m' : string;\n}\n\nfunction _Debug_fadeColor(ansi, string)\n{\n\treturn ansi ? '\\x1b[37m' + string + '\\x1b[0m' : string;\n}\n\nfunction _Debug_internalColor(ansi, string)\n{\n\treturn ansi ? '\\x1b[94m' + string + '\\x1b[0m' : string;\n}\n\n\n\n// CRASH\n\n\nfunction _Debug_crash(identifier)\n{\n\tthrow new Error('https://github.com/elm/core/blob/1.0.0/hints/' + identifier + '.md');\n}\n\n\nfunction _Debug_crash_UNUSED(identifier, fact1, fact2, fact3, fact4)\n{\n\tswitch(identifier)\n\t{\n\t\tcase 0:\n\t\t\tthrow new Error('What node should I take over? In JavaScript I need something like:\\n\\n Elm.Main.init({\\n node: document.getElementById(\"elm-node\")\\n })\\n\\nYou need to do this with any Browser.sandbox or Browser.element program.');\n\n\t\tcase 1:\n\t\t\tthrow new Error('Browser.application programs cannot handle URLs like this:\\n\\n ' + document.location.href + '\\n\\nWhat is the root? The root of your file system? Try looking at this program with `elm reactor` or some other server.');\n\n\t\tcase 2:\n\t\t\tvar jsonErrorString = fact1;\n\t\t\tthrow new Error('Problem with the flags given to your Elm program on initialization.\\n\\n' + jsonErrorString);\n\n\t\tcase 3:\n\t\t\tvar portName = fact1;\n\t\t\tthrow new Error('There can only be one port named `' + portName + '`, but your program has multiple.');\n\n\t\tcase 4:\n\t\t\tvar portName = fact1;\n\t\t\tvar problem = fact2;\n\t\t\tthrow new Error('Trying to send an unexpected type of value through port `' + portName + '`:\\n' + problem);\n\n\t\tcase 5:\n\t\t\tthrow new Error('Trying to use `(==)` on functions.\\nThere is no way to know if functions are \"the same\" in the Elm sense.\\nRead more about this at https://package.elm-lang.org/packages/elm/core/latest/Basics#== which describes why it is this way and what the better version will look like.');\n\n\t\tcase 6:\n\t\t\tvar moduleName = fact1;\n\t\t\tthrow new Error('Your page is loading multiple Elm scripts with a module named ' + moduleName + '. Maybe a duplicate script is getting loaded accidentally? If not, rename one of them so I know which is which!');\n\n\t\tcase 8:\n\t\t\tvar moduleName = fact1;\n\t\t\tvar region = fact2;\n\t\t\tvar message = fact3;\n\t\t\tthrow new Error('TODO in module `' + moduleName + '` ' + _Debug_regionToString(region) + '\\n\\n' + message);\n\n\t\tcase 9:\n\t\t\tvar moduleName = fact1;\n\t\t\tvar region = fact2;\n\t\t\tvar value = fact3;\n\t\t\tvar message = fact4;\n\t\t\tthrow new Error(\n\t\t\t\t'TODO in module `' + moduleName + '` from the `case` expression '\n\t\t\t\t+ _Debug_regionToString(region) + '\\n\\nIt received the following value:\\n\\n '\n\t\t\t\t+ _Debug_toString(value).replace('\\n', '\\n ')\n\t\t\t\t+ '\\n\\nBut the branch that handles it says:\\n\\n ' + message.replace('\\n', '\\n ')\n\t\t\t);\n\n\t\tcase 10:\n\t\t\tthrow new Error('Bug in https://github.com/elm/virtual-dom/issues');\n\n\t\tcase 11:\n\t\t\tthrow new Error('Cannot perform mod 0. Division by zero error.');\n\t}\n}\n\nfunction _Debug_regionToString(region)\n{\n\tif (region.ad.J === region.au.J)\n\t{\n\t\treturn 'on line ' + region.ad.J;\n\t}\n\treturn 'on lines ' + region.ad.J + ' through ' + region.au.J;\n}\n\n\n\n// EQUALITY\n\nfunction _Utils_eq(x, y)\n{\n\tfor (\n\t\tvar pair, stack = [], isEqual = _Utils_eqHelp(x, y, 0, stack);\n\t\tisEqual && (pair = stack.pop());\n\t\tisEqual = _Utils_eqHelp(pair.a, pair.b, 0, stack)\n\t\t)\n\t{}\n\n\treturn isEqual;\n}\n\nfunction _Utils_eqHelp(x, y, depth, stack)\n{\n\tif (depth > 100)\n\t{\n\t\tstack.push(_Utils_Tuple2(x,y));\n\t\treturn true;\n\t}\n\n\tif (x === y)\n\t{\n\t\treturn true;\n\t}\n\n\tif (typeof x !== 'object' || x === null || y === null)\n\t{\n\t\ttypeof x === 'function' && _Debug_crash(5);\n\t\treturn false;\n\t}\n\n\t/**_UNUSED/\n\tif (x.$ === 'Set_elm_builtin')\n\t{\n\t\tx = elm$core$Set$toList(x);\n\t\ty = elm$core$Set$toList(y);\n\t}\n\tif (x.$ === 'RBNode_elm_builtin' || x.$ === 'RBEmpty_elm_builtin')\n\t{\n\t\tx = elm$core$Dict$toList(x);\n\t\ty = elm$core$Dict$toList(y);\n\t}\n\t//*/\n\n\t/**/\n\tif (x.$ < 0)\n\t{\n\t\tx = elm$core$Dict$toList(x);\n\t\ty = elm$core$Dict$toList(y);\n\t}\n\t//*/\n\n\tfor (var key in x)\n\t{\n\t\tif (!_Utils_eqHelp(x[key], y[key], depth + 1, stack))\n\t\t{\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\nvar _Utils_equal = F2(_Utils_eq);\nvar _Utils_notEqual = F2(function(a, b) { return !_Utils_eq(a,b); });\n\n\n\n// COMPARISONS\n\n// Code in Generate/JavaScript.hs, Basics.js, and List.js depends on\n// the particular integer values assigned to LT, EQ, and GT.\n\nfunction _Utils_cmp(x, y, ord)\n{\n\tif (typeof x !== 'object')\n\t{\n\t\treturn x === y ? /*EQ*/ 0 : x < y ? /*LT*/ -1 : /*GT*/ 1;\n\t}\n\n\t/**_UNUSED/\n\tif (x instanceof String)\n\t{\n\t\tvar a = x.valueOf();\n\t\tvar b = y.valueOf();\n\t\treturn a === b ? 0 : a < b ? -1 : 1;\n\t}\n\t//*/\n\n\t/**/\n\tif (!x.$)\n\t//*/\n\t/**_UNUSED/\n\tif (x.$[0] === '#')\n\t//*/\n\t{\n\t\treturn (ord = _Utils_cmp(x.a, y.a))\n\t\t\t? ord\n\t\t\t: (ord = _Utils_cmp(x.b, y.b))\n\t\t\t\t? ord\n\t\t\t\t: _Utils_cmp(x.c, y.c);\n\t}\n\n\t// traverse conses until end of a list or a mismatch\n\tfor (; x.b && y.b && !(ord = _Utils_cmp(x.a, y.a)); x = x.b, y = y.b) {} // WHILE_CONSES\n\treturn ord || (x.b ? /*GT*/ 1 : y.b ? /*LT*/ -1 : /*EQ*/ 0);\n}\n\nvar _Utils_lt = F2(function(a, b) { return _Utils_cmp(a, b) < 0; });\nvar _Utils_le = F2(function(a, b) { return _Utils_cmp(a, b) < 1; });\nvar _Utils_gt = F2(function(a, b) { return _Utils_cmp(a, b) > 0; });\nvar _Utils_ge = F2(function(a, b) { return _Utils_cmp(a, b) >= 0; });\n\nvar _Utils_compare = F2(function(x, y)\n{\n\tvar n = _Utils_cmp(x, y);\n\treturn n < 0 ? elm$core$Basics$LT : n ? elm$core$Basics$GT : elm$core$Basics$EQ;\n});\n\n\n// COMMON VALUES\n\nvar _Utils_Tuple0 = 0;\nvar _Utils_Tuple0_UNUSED = { $: '#0' };\n\nfunction _Utils_Tuple2(a, b) { return { a: a, b: b }; }\nfunction _Utils_Tuple2_UNUSED(a, b) { return { $: '#2', a: a, b: b }; }\n\nfunction _Utils_Tuple3(a, b, c) { return { a: a, b: b, c: c }; }\nfunction _Utils_Tuple3_UNUSED(a, b, c) { return { $: '#3', a: a, b: b, c: c }; }\n\nfunction _Utils_chr(c) { return c; }\nfunction _Utils_chr_UNUSED(c) { return new String(c); }\n\n\n// RECORDS\n\nfunction _Utils_update(oldRecord, updatedFields)\n{\n\tvar newRecord = {};\n\n\tfor (var key in oldRecord)\n\t{\n\t\tnewRecord[key] = oldRecord[key];\n\t}\n\n\tfor (var key in updatedFields)\n\t{\n\t\tnewRecord[key] = updatedFields[key];\n\t}\n\n\treturn newRecord;\n}\n\n\n// APPEND\n\nvar _Utils_append = F2(_Utils_ap);\n\nfunction _Utils_ap(xs, ys)\n{\n\t// append Strings\n\tif (typeof xs === 'string')\n\t{\n\t\treturn xs + ys;\n\t}\n\n\t// append Lists\n\tif (!xs.b)\n\t{\n\t\treturn ys;\n\t}\n\tvar root = _List_Cons(xs.a, ys);\n\txs = xs.b\n\tfor (var curr = root; xs.b; xs = xs.b) // WHILE_CONS\n\t{\n\t\tcurr = curr.b = _List_Cons(xs.a, ys);\n\t}\n\treturn root;\n}\n\n\n\n// MATH\n\nvar _Basics_add = F2(function(a, b) { return a + b; });\nvar _Basics_sub = F2(function(a, b) { return a - b; });\nvar _Basics_mul = F2(function(a, b) { return a * b; });\nvar _Basics_fdiv = F2(function(a, b) { return a / b; });\nvar _Basics_idiv = F2(function(a, b) { return (a / b) | 0; });\nvar _Basics_pow = F2(Math.pow);\n\nvar _Basics_remainderBy = F2(function(b, a) { return a % b; });\n\n// https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/divmodnote-letter.pdf\nvar _Basics_modBy = F2(function(modulus, x)\n{\n\tvar answer = x % modulus;\n\treturn modulus === 0\n\t\t? _Debug_crash(11)\n\t\t:\n\t((answer > 0 && modulus < 0) || (answer < 0 && modulus > 0))\n\t\t? answer + modulus\n\t\t: answer;\n});\n\n\n// TRIGONOMETRY\n\nvar _Basics_pi = Math.PI;\nvar _Basics_e = Math.E;\nvar _Basics_cos = Math.cos;\nvar _Basics_sin = Math.sin;\nvar _Basics_tan = Math.tan;\nvar _Basics_acos = Math.acos;\nvar _Basics_asin = Math.asin;\nvar _Basics_atan = Math.atan;\nvar _Basics_atan2 = F2(Math.atan2);\n\n\n// MORE MATH\n\nfunction _Basics_toFloat(x) { return x; }\nfunction _Basics_truncate(n) { return n | 0; }\nfunction _Basics_isInfinite(n) { return n === Infinity || n === -Infinity; }\n\nvar _Basics_ceiling = Math.ceil;\nvar _Basics_floor = Math.floor;\nvar _Basics_round = Math.round;\nvar _Basics_sqrt = Math.sqrt;\nvar _Basics_log = Math.log;\nvar _Basics_isNaN = isNaN;\n\n\n// BOOLEANS\n\nfunction _Basics_not(bool) { return !bool; }\nvar _Basics_and = F2(function(a, b) { return a && b; });\nvar _Basics_or = F2(function(a, b) { return a || b; });\nvar _Basics_xor = F2(function(a, b) { return a !== b; });\n\n\n\nfunction _Char_toCode(char)\n{\n\tvar code = char.charCodeAt(0);\n\tif (0xD800 <= code && code <= 0xDBFF)\n\t{\n\t\treturn (code - 0xD800) * 0x400 + char.charCodeAt(1) - 0xDC00 + 0x10000\n\t}\n\treturn code;\n}\n\nfunction _Char_fromCode(code)\n{\n\treturn _Utils_chr(\n\t\t(code < 0 || 0x10FFFF < code)\n\t\t\t? '\\uFFFD'\n\t\t\t:\n\t\t(code <= 0xFFFF)\n\t\t\t? String.fromCharCode(code)\n\t\t\t:\n\t\t(code -= 0x10000,\n\t\t\tString.fromCharCode(Math.floor(code / 0x400) + 0xD800)\n\t\t\t+\n\t\t\tString.fromCharCode(code % 0x400 + 0xDC00)\n\t\t)\n\t);\n}\n\nfunction _Char_toUpper(char)\n{\n\treturn _Utils_chr(char.toUpperCase());\n}\n\nfunction _Char_toLower(char)\n{\n\treturn _Utils_chr(char.toLowerCase());\n}\n\nfunction _Char_toLocaleUpper(char)\n{\n\treturn _Utils_chr(char.toLocaleUpperCase());\n}\n\nfunction _Char_toLocaleLower(char)\n{\n\treturn _Utils_chr(char.toLocaleLowerCase());\n}\n\n\n\nvar _String_cons = F2(function(chr, str)\n{\n\treturn chr + str;\n});\n\nfunction _String_uncons(string)\n{\n\tvar word = string.charCodeAt(0);\n\treturn word\n\t\t? elm$core$Maybe$Just(\n\t\t\t0xD800 <= word && word <= 0xDBFF\n\t\t\t\t? _Utils_Tuple2(_Utils_chr(string[0] + string[1]), string.slice(2))\n\t\t\t\t: _Utils_Tuple2(_Utils_chr(string[0]), string.slice(1))\n\t\t)\n\t\t: elm$core$Maybe$Nothing;\n}\n\nvar _String_append = F2(function(a, b)\n{\n\treturn a + b;\n});\n\nfunction _String_length(str)\n{\n\treturn str.length;\n}\n\nvar _String_map = F2(function(func, string)\n{\n\tvar len = string.length;\n\tvar array = new Array(len);\n\tvar i = 0;\n\twhile (i < len)\n\t{\n\t\tvar word = string.charCodeAt(i);\n\t\tif (0xD800 <= word && word <= 0xDBFF)\n\t\t{\n\t\t\tarray[i] = func(_Utils_chr(string[i] + string[i+1]));\n\t\t\ti += 2;\n\t\t\tcontinue;\n\t\t}\n\t\tarray[i] = func(_Utils_chr(string[i]));\n\t\ti++;\n\t}\n\treturn array.join('');\n});\n\nvar _String_filter = F2(function(isGood, str)\n{\n\tvar arr = [];\n\tvar len = str.length;\n\tvar i = 0;\n\twhile (i < len)\n\t{\n\t\tvar char = str[i];\n\t\tvar word = str.charCodeAt(i);\n\t\ti++;\n\t\tif (0xD800 <= word && word <= 0xDBFF)\n\t\t{\n\t\t\tchar += str[i];\n\t\t\ti++;\n\t\t}\n\n\t\tif (isGood(_Utils_chr(char)))\n\t\t{\n\t\t\tarr.push(char);\n\t\t}\n\t}\n\treturn arr.join('');\n});\n\nfunction _String_reverse(str)\n{\n\tvar len = str.length;\n\tvar arr = new Array(len);\n\tvar i = 0;\n\twhile (i < len)\n\t{\n\t\tvar word = str.charCodeAt(i);\n\t\tif (0xD800 <= word && word <= 0xDBFF)\n\t\t{\n\t\t\tarr[len - i] = str[i + 1];\n\t\t\ti++;\n\t\t\tarr[len - i] = str[i - 1];\n\t\t\ti++;\n\t\t}\n\t\telse\n\t\t{\n\t\t\tarr[len - i] = str[i];\n\t\t\ti++;\n\t\t}\n\t}\n\treturn arr.join('');\n}\n\nvar _String_foldl = F3(function(func, state, string)\n{\n\tvar len = string.length;\n\tvar i = 0;\n\twhile (i < len)\n\t{\n\t\tvar char = string[i];\n\t\tvar word = string.charCodeAt(i);\n\t\ti++;\n\t\tif (0xD800 <= word && word <= 0xDBFF)\n\t\t{\n\t\t\tchar += string[i];\n\t\t\ti++;\n\t\t}\n\t\tstate = A2(func, _Utils_chr(char), state);\n\t}\n\treturn state;\n});\n\nvar _String_foldr = F3(function(func, state, string)\n{\n\tvar i = string.length;\n\twhile (i--)\n\t{\n\t\tvar char = string[i];\n\t\tvar word = string.charCodeAt(i);\n\t\tif (0xDC00 <= word && word <= 0xDFFF)\n\t\t{\n\t\t\ti--;\n\t\t\tchar = string[i] + char;\n\t\t}\n\t\tstate = A2(func, _Utils_chr(char), state);\n\t}\n\treturn state;\n});\n\nvar _String_split = F2(function(sep, str)\n{\n\treturn str.split(sep);\n});\n\nvar _String_join = F2(function(sep, strs)\n{\n\treturn strs.join(sep);\n});\n\nvar _String_slice = F3(function(start, end, str) {\n\treturn str.slice(start, end);\n});\n\nfunction _String_trim(str)\n{\n\treturn str.trim();\n}\n\nfunction _String_trimLeft(str)\n{\n\treturn str.replace(/^\\s+/, '');\n}\n\nfunction _String_trimRight(str)\n{\n\treturn str.replace(/\\s+$/, '');\n}\n\nfunction _String_words(str)\n{\n\treturn _List_fromArray(str.trim().split(/\\s+/g));\n}\n\nfunction _String_lines(str)\n{\n\treturn _List_fromArray(str.split(/\\r\\n|\\r|\\n/g));\n}\n\nfunction _String_toUpper(str)\n{\n\treturn str.toUpperCase();\n}\n\nfunction _String_toLower(str)\n{\n\treturn str.toLowerCase();\n}\n\nvar _String_any = F2(function(isGood, string)\n{\n\tvar i = string.length;\n\twhile (i--)\n\t{\n\t\tvar char = string[i];\n\t\tvar word = string.charCodeAt(i);\n\t\tif (0xDC00 <= word && word <= 0xDFFF)\n\t\t{\n\t\t\ti--;\n\t\t\tchar = string[i] + char;\n\t\t}\n\t\tif (isGood(_Utils_chr(char)))\n\t\t{\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n});\n\nvar _String_all = F2(function(isGood, string)\n{\n\tvar i = string.length;\n\twhile (i--)\n\t{\n\t\tvar char = string[i];\n\t\tvar word = string.charCodeAt(i);\n\t\tif (0xDC00 <= word && word <= 0xDFFF)\n\t\t{\n\t\t\ti--;\n\t\t\tchar = string[i] + char;\n\t\t}\n\t\tif (!isGood(_Utils_chr(char)))\n\t\t{\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n});\n\nvar _String_contains = F2(function(sub, str)\n{\n\treturn str.indexOf(sub) > -1;\n});\n\nvar _String_startsWith = F2(function(sub, str)\n{\n\treturn str.indexOf(sub) === 0;\n});\n\nvar _String_endsWith = F2(function(sub, str)\n{\n\treturn str.length >= sub.length &&\n\t\tstr.lastIndexOf(sub) === str.length - sub.length;\n});\n\nvar _String_indexes = F2(function(sub, str)\n{\n\tvar subLen = sub.length;\n\n\tif (subLen < 1)\n\t{\n\t\treturn _List_Nil;\n\t}\n\n\tvar i = 0;\n\tvar is = [];\n\n\twhile ((i = str.indexOf(sub, i)) > -1)\n\t{\n\t\tis.push(i);\n\t\ti = i + subLen;\n\t}\n\n\treturn _List_fromArray(is);\n});\n\n\n// TO STRING\n\nfunction _String_fromNumber(number)\n{\n\treturn number + '';\n}\n\n\n// INT CONVERSIONS\n\nfunction _String_toInt(str)\n{\n\tvar total = 0;\n\tvar code0 = str.charCodeAt(0);\n\tvar start = code0 == 0x2B /* + */ || code0 == 0x2D /* - */ ? 1 : 0;\n\n\tfor (var i = start; i < str.length; ++i)\n\t{\n\t\tvar code = str.charCodeAt(i);\n\t\tif (code < 0x30 || 0x39 < code)\n\t\t{\n\t\t\treturn elm$core$Maybe$Nothing;\n\t\t}\n\t\ttotal = 10 * total + code - 0x30;\n\t}\n\n\treturn i == start\n\t\t? elm$core$Maybe$Nothing\n\t\t: elm$core$Maybe$Just(code0 == 0x2D ? -total : total);\n}\n\n\n// FLOAT CONVERSIONS\n\nfunction _String_toFloat(s)\n{\n\t// check if it is a hex, octal, or binary number\n\tif (s.length === 0 || /[\\sxbo]/.test(s))\n\t{\n\t\treturn elm$core$Maybe$Nothing;\n\t}\n\tvar n = +s;\n\t// faster isNaN check\n\treturn n === n ? elm$core$Maybe$Just(n) : elm$core$Maybe$Nothing;\n}\n\nfunction _String_fromList(chars)\n{\n\treturn _List_toArray(chars).join('');\n}\n\n\n\n\n/**_UNUSED/\nfunction _Json_errorToString(error)\n{\n\treturn elm$json$Json$Decode$errorToString(error);\n}\n//*/\n\n\n// CORE DECODERS\n\nfunction _Json_succeed(msg)\n{\n\treturn {\n\t\t$: 0,\n\t\ta: msg\n\t};\n}\n\nfunction _Json_fail(msg)\n{\n\treturn {\n\t\t$: 1,\n\t\ta: msg\n\t};\n}\n\nvar _Json_decodeInt = { $: 2 };\nvar _Json_decodeBool = { $: 3 };\nvar _Json_decodeFloat = { $: 4 };\nvar _Json_decodeValue = { $: 5 };\nvar _Json_decodeString = { $: 6 };\n\nfunction _Json_decodeList(decoder) { return { $: 7, b: decoder }; }\nfunction _Json_decodeArray(decoder) { return { $: 8, b: decoder }; }\n\nfunction _Json_decodeNull(value) { return { $: 9, c: value }; }\n\nvar _Json_decodeField = F2(function(field, decoder)\n{\n\treturn {\n\t\t$: 10,\n\t\td: field,\n\t\tb: decoder\n\t};\n});\n\nvar _Json_decodeIndex = F2(function(index, decoder)\n{\n\treturn {\n\t\t$: 11,\n\t\te: index,\n\t\tb: decoder\n\t};\n});\n\nfunction _Json_decodeKeyValuePairs(decoder)\n{\n\treturn {\n\t\t$: 12,\n\t\tb: decoder\n\t};\n}\n\nfunction _Json_mapMany(f, decoders)\n{\n\treturn {\n\t\t$: 13,\n\t\tf: f,\n\t\tg: decoders\n\t};\n}\n\nvar _Json_andThen = F2(function(callback, decoder)\n{\n\treturn {\n\t\t$: 14,\n\t\tb: decoder,\n\t\th: callback\n\t};\n});\n\nfunction _Json_oneOf(decoders)\n{\n\treturn {\n\t\t$: 15,\n\t\tg: decoders\n\t};\n}\n\n\n// DECODING OBJECTS\n\nvar _Json_map1 = F2(function(f, d1)\n{\n\treturn _Json_mapMany(f, [d1]);\n});\n\nvar _Json_map2 = F3(function(f, d1, d2)\n{\n\treturn _Json_mapMany(f, [d1, d2]);\n});\n\nvar _Json_map3 = F4(function(f, d1, d2, d3)\n{\n\treturn _Json_mapMany(f, [d1, d2, d3]);\n});\n\nvar _Json_map4 = F5(function(f, d1, d2, d3, d4)\n{\n\treturn _Json_mapMany(f, [d1, d2, d3, d4]);\n});\n\nvar _Json_map5 = F6(function(f, d1, d2, d3, d4, d5)\n{\n\treturn _Json_mapMany(f, [d1, d2, d3, d4, d5]);\n});\n\nvar _Json_map6 = F7(function(f, d1, d2, d3, d4, d5, d6)\n{\n\treturn _Json_mapMany(f, [d1, d2, d3, d4, d5, d6]);\n});\n\nvar _Json_map7 = F8(function(f, d1, d2, d3, d4, d5, d6, d7)\n{\n\treturn _Json_mapMany(f, [d1, d2, d3, d4, d5, d6, d7]);\n});\n\nvar _Json_map8 = F9(function(f, d1, d2, d3, d4, d5, d6, d7, d8)\n{\n\treturn _Json_mapMany(f, [d1, d2, d3, d4, d5, d6, d7, d8]);\n});\n\n\n// DECODE\n\nvar _Json_runOnString = F2(function(decoder, string)\n{\n\ttry\n\t{\n\t\tvar value = JSON.parse(string);\n\t\treturn _Json_runHelp(decoder, value);\n\t}\n\tcatch (e)\n\t{\n\t\treturn elm$core$Result$Err(A2(elm$json$Json$Decode$Failure, 'This is not valid JSON! ' + e.message, _Json_wrap(string)));\n\t}\n});\n\nvar _Json_run = F2(function(decoder, value)\n{\n\treturn _Json_runHelp(decoder, _Json_unwrap(value));\n});\n\nfunction _Json_runHelp(decoder, value)\n{\n\tswitch (decoder.$)\n\t{\n\t\tcase 3:\n\t\t\treturn (typeof value === 'boolean')\n\t\t\t\t? elm$core$Result$Ok(value)\n\t\t\t\t: _Json_expecting('a BOOL', value);\n\n\t\tcase 2:\n\t\t\tif (typeof value !== 'number') {\n\t\t\t\treturn _Json_expecting('an INT', value);\n\t\t\t}\n\n\t\t\tif (-2147483647 < value && value < 2147483647 && (value | 0) === value) {\n\t\t\t\treturn elm$core$Result$Ok(value);\n\t\t\t}\n\n\t\t\tif (isFinite(value) && !(value % 1)) {\n\t\t\t\treturn elm$core$Result$Ok(value);\n\t\t\t}\n\n\t\t\treturn _Json_expecting('an INT', value);\n\n\t\tcase 4:\n\t\t\treturn (typeof value === 'number')\n\t\t\t\t? elm$core$Result$Ok(value)\n\t\t\t\t: _Json_expecting('a FLOAT', value);\n\n\t\tcase 6:\n\t\t\treturn (typeof value === 'string')\n\t\t\t\t? elm$core$Result$Ok(value)\n\t\t\t\t: (value instanceof String)\n\t\t\t\t\t? elm$core$Result$Ok(value + '')\n\t\t\t\t\t: _Json_expecting('a STRING', value);\n\n\t\tcase 9:\n\t\t\treturn (value === null)\n\t\t\t\t? elm$core$Result$Ok(decoder.c)\n\t\t\t\t: _Json_expecting('null', value);\n\n\t\tcase 5:\n\t\t\treturn elm$core$Result$Ok(_Json_wrap(value));\n\n\t\tcase 7:\n\t\t\tif (!Array.isArray(value))\n\t\t\t{\n\t\t\t\treturn _Json_expecting('a LIST', value);\n\t\t\t}\n\t\t\treturn _Json_runArrayDecoder(decoder.b, value, _List_fromArray);\n\n\t\tcase 8:\n\t\t\tif (!Array.isArray(value))\n\t\t\t{\n\t\t\t\treturn _Json_expecting('an ARRAY', value);\n\t\t\t}\n\t\t\treturn _Json_runArrayDecoder(decoder.b, value, _Json_toElmArray);\n\n\t\tcase 10:\n\t\t\tvar field = decoder.d;\n\t\t\tif (typeof value !== 'object' || value === null || !(field in value))\n\t\t\t{\n\t\t\t\treturn _Json_expecting('an OBJECT with a field named `' + field + '`', value);\n\t\t\t}\n\t\t\tvar result = _Json_runHelp(decoder.b, value[field]);\n\t\t\treturn (elm$core$Result$isOk(result)) ? result : elm$core$Result$Err(A2(elm$json$Json$Decode$Field, field, result.a));\n\n\t\tcase 11:\n\t\t\tvar index = decoder.e;\n\t\t\tif (!Array.isArray(value))\n\t\t\t{\n\t\t\t\treturn _Json_expecting('an ARRAY', value);\n\t\t\t}\n\t\t\tif (index >= value.length)\n\t\t\t{\n\t\t\t\treturn _Json_expecting('a LONGER array. Need index ' + index + ' but only see ' + value.length + ' entries', value);\n\t\t\t}\n\t\t\tvar result = _Json_runHelp(decoder.b, value[index]);\n\t\t\treturn (elm$core$Result$isOk(result)) ? result : elm$core$Result$Err(A2(elm$json$Json$Decode$Index, index, result.a));\n\n\t\tcase 12:\n\t\t\tif (typeof value !== 'object' || value === null || Array.isArray(value))\n\t\t\t{\n\t\t\t\treturn _Json_expecting('an OBJECT', value);\n\t\t\t}\n\n\t\t\tvar keyValuePairs = _List_Nil;\n\t\t\t// TODO test perf of Object.keys and switch when support is good enough\n\t\t\tfor (var key in value)\n\t\t\t{\n\t\t\t\tif (value.hasOwnProperty(key))\n\t\t\t\t{\n\t\t\t\t\tvar result = _Json_runHelp(decoder.b, value[key]);\n\t\t\t\t\tif (!elm$core$Result$isOk(result))\n\t\t\t\t\t{\n\t\t\t\t\t\treturn elm$core$Result$Err(A2(elm$json$Json$Decode$Field, key, result.a));\n\t\t\t\t\t}\n\t\t\t\t\tkeyValuePairs = _List_Cons(_Utils_Tuple2(key, result.a), keyValuePairs);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn elm$core$Result$Ok(elm$core$List$reverse(keyValuePairs));\n\n\t\tcase 13:\n\t\t\tvar answer = decoder.f;\n\t\t\tvar decoders = decoder.g;\n\t\t\tfor (var i = 0; i < decoders.length; i++)\n\t\t\t{\n\t\t\t\tvar result = _Json_runHelp(decoders[i], value);\n\t\t\t\tif (!elm$core$Result$isOk(result))\n\t\t\t\t{\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\t\t\t\tanswer = answer(result.a);\n\t\t\t}\n\t\t\treturn elm$core$Result$Ok(answer);\n\n\t\tcase 14:\n\t\t\tvar result = _Json_runHelp(decoder.b, value);\n\t\t\treturn (!elm$core$Result$isOk(result))\n\t\t\t\t? result\n\t\t\t\t: _Json_runHelp(decoder.h(result.a), value);\n\n\t\tcase 15:\n\t\t\tvar errors = _List_Nil;\n\t\t\tfor (var temp = decoder.g; temp.b; temp = temp.b) // WHILE_CONS\n\t\t\t{\n\t\t\t\tvar result = _Json_runHelp(temp.a, value);\n\t\t\t\tif (elm$core$Result$isOk(result))\n\t\t\t\t{\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\t\t\t\terrors = _List_Cons(result.a, errors);\n\t\t\t}\n\t\t\treturn elm$core$Result$Err(elm$json$Json$Decode$OneOf(elm$core$List$reverse(errors)));\n\n\t\tcase 1:\n\t\t\treturn elm$core$Result$Err(A2(elm$json$Json$Decode$Failure, decoder.a, _Json_wrap(value)));\n\n\t\tcase 0:\n\t\t\treturn elm$core$Result$Ok(decoder.a);\n\t}\n}\n\nfunction _Json_runArrayDecoder(decoder, value, toElmValue)\n{\n\tvar len = value.length;\n\tvar array = new Array(len);\n\tfor (var i = 0; i < len; i++)\n\t{\n\t\tvar result = _Json_runHelp(decoder, value[i]);\n\t\tif (!elm$core$Result$isOk(result))\n\t\t{\n\t\t\treturn elm$core$Result$Err(A2(elm$json$Json$Decode$Index, i, result.a));\n\t\t}\n\t\tarray[i] = result.a;\n\t}\n\treturn elm$core$Result$Ok(toElmValue(array));\n}\n\nfunction _Json_toElmArray(array)\n{\n\treturn A2(elm$core$Array$initialize, array.length, function(i) { return array[i]; });\n}\n\nfunction _Json_expecting(type, value)\n{\n\treturn elm$core$Result$Err(A2(elm$json$Json$Decode$Failure, 'Expecting ' + type, _Json_wrap(value)));\n}\n\n\n// EQUALITY\n\nfunction _Json_equality(x, y)\n{\n\tif (x === y)\n\t{\n\t\treturn true;\n\t}\n\n\tif (x.$ !== y.$)\n\t{\n\t\treturn false;\n\t}\n\n\tswitch (x.$)\n\t{\n\t\tcase 0:\n\t\tcase 1:\n\t\t\treturn x.a === y.a;\n\n\t\tcase 3:\n\t\tcase 2:\n\t\tcase 4:\n\t\tcase 6:\n\t\tcase 5:\n\t\t\treturn true;\n\n\t\tcase 9:\n\t\t\treturn x.c === y.c;\n\n\t\tcase 7:\n\t\tcase 8:\n\t\tcase 12:\n\t\t\treturn _Json_equality(x.b, y.b);\n\n\t\tcase 10:\n\t\t\treturn x.d === y.d && _Json_equality(x.b, y.b);\n\n\t\tcase 11:\n\t\t\treturn x.e === y.e && _Json_equality(x.b, y.b);\n\n\t\tcase 13:\n\t\t\treturn x.f === y.f && _Json_listEquality(x.g, y.g);\n\n\t\tcase 14:\n\t\t\treturn x.h === y.h && _Json_equality(x.b, y.b);\n\n\t\tcase 15:\n\t\t\treturn _Json_listEquality(x.g, y.g);\n\t}\n}\n\nfunction _Json_listEquality(aDecoders, bDecoders)\n{\n\tvar len = aDecoders.length;\n\tif (len !== bDecoders.length)\n\t{\n\t\treturn false;\n\t}\n\tfor (var i = 0; i < len; i++)\n\t{\n\t\tif (!_Json_equality(aDecoders[i], bDecoders[i]))\n\t\t{\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// ENCODE\n\nvar _Json_encode = F2(function(indentLevel, value)\n{\n\treturn JSON.stringify(_Json_unwrap(value), null, indentLevel) + '';\n});\n\nfunction _Json_wrap_UNUSED(value) { return { $: 0, a: value }; }\nfunction _Json_unwrap_UNUSED(value) { return value.a; }\n\nfunction _Json_wrap(value) { return value; }\nfunction _Json_unwrap(value) { return value; }\n\nfunction _Json_emptyArray() { return []; }\nfunction _Json_emptyObject() { return {}; }\n\nvar _Json_addField = F3(function(key, value, object)\n{\n\tobject[key] = _Json_unwrap(value);\n\treturn object;\n});\n\nfunction _Json_addEntry(func)\n{\n\treturn F2(function(entry, array)\n\t{\n\t\tarray.push(_Json_unwrap(func(entry)));\n\t\treturn array;\n\t});\n}\n\nvar _Json_encodeNull = _Json_wrap(null);\n\n\n\n// TASKS\n\nfunction _Scheduler_succeed(value)\n{\n\treturn {\n\t\t$: 0,\n\t\ta: value\n\t};\n}\n\nfunction _Scheduler_fail(error)\n{\n\treturn {\n\t\t$: 1,\n\t\ta: error\n\t};\n}\n\nfunction _Scheduler_binding(callback)\n{\n\treturn {\n\t\t$: 2,\n\t\tb: callback,\n\t\tc: null\n\t};\n}\n\nvar _Scheduler_andThen = F2(function(callback, task)\n{\n\treturn {\n\t\t$: 3,\n\t\tb: callback,\n\t\td: task\n\t};\n});\n\nvar _Scheduler_onError = F2(function(callback, task)\n{\n\treturn {\n\t\t$: 4,\n\t\tb: callback,\n\t\td: task\n\t};\n});\n\nfunction _Scheduler_receive(callback)\n{\n\treturn {\n\t\t$: 5,\n\t\tb: callback\n\t};\n}\n\n\n// PROCESSES\n\nvar _Scheduler_guid = 0;\n\nfunction _Scheduler_rawSpawn(task)\n{\n\tvar proc = {\n\t\t$: 0,\n\t\te: _Scheduler_guid++,\n\t\tf: task,\n\t\tg: null,\n\t\th: []\n\t};\n\n\t_Scheduler_enqueue(proc);\n\n\treturn proc;\n}\n\nfunction _Scheduler_spawn(task)\n{\n\treturn _Scheduler_binding(function(callback) {\n\t\tcallback(_Scheduler_succeed(_Scheduler_rawSpawn(task)));\n\t});\n}\n\nfunction _Scheduler_rawSend(proc, msg)\n{\n\tproc.h.push(msg);\n\t_Scheduler_enqueue(proc);\n}\n\nvar _Scheduler_send = F2(function(proc, msg)\n{\n\treturn _Scheduler_binding(function(callback) {\n\t\t_Scheduler_rawSend(proc, msg);\n\t\tcallback(_Scheduler_succeed(_Utils_Tuple0));\n\t});\n});\n\nfunction _Scheduler_kill(proc)\n{\n\treturn _Scheduler_binding(function(callback) {\n\t\tvar task = proc.f;\n\t\tif (task.$ === 2 && task.c)\n\t\t{\n\t\t\ttask.c();\n\t\t}\n\n\t\tproc.f = null;\n\n\t\tcallback(_Scheduler_succeed(_Utils_Tuple0));\n\t});\n}\n\n\n/* STEP PROCESSES\n\ntype alias Process =\n { $ : tag\n , id : unique_id\n , root : Task\n , stack : null | { $: SUCCEED | FAIL, a: callback, b: stack }\n , mailbox : [msg]\n }\n\n*/\n\n\nvar _Scheduler_working = false;\nvar _Scheduler_queue = [];\n\n\nfunction _Scheduler_enqueue(proc)\n{\n\t_Scheduler_queue.push(proc);\n\tif (_Scheduler_working)\n\t{\n\t\treturn;\n\t}\n\t_Scheduler_working = true;\n\twhile (proc = _Scheduler_queue.shift())\n\t{\n\t\t_Scheduler_step(proc);\n\t}\n\t_Scheduler_working = false;\n}\n\n\nfunction _Scheduler_step(proc)\n{\n\twhile (proc.f)\n\t{\n\t\tvar rootTag = proc.f.$;\n\t\tif (rootTag === 0 || rootTag === 1)\n\t\t{\n\t\t\twhile (proc.g && proc.g.$ !== rootTag)\n\t\t\t{\n\t\t\t\tproc.g = proc.g.i;\n\t\t\t}\n\t\t\tif (!proc.g)\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tproc.f = proc.g.b(proc.f.a);\n\t\t\tproc.g = proc.g.i;\n\t\t}\n\t\telse if (rootTag === 2)\n\t\t{\n\t\t\tproc.f.c = proc.f.b(function(newRoot) {\n\t\t\t\tproc.f = newRoot;\n\t\t\t\t_Scheduler_enqueue(proc);\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\telse if (rootTag === 5)\n\t\t{\n\t\t\tif (proc.h.length === 0)\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tproc.f = proc.f.b(proc.h.shift());\n\t\t}\n\t\telse // if (rootTag === 3 || rootTag === 4)\n\t\t{\n\t\t\tproc.g = {\n\t\t\t\t$: rootTag === 3 ? 0 : 1,\n\t\t\t\tb: proc.f.b,\n\t\t\t\ti: proc.g\n\t\t\t};\n\t\t\tproc.f = proc.f.d;\n\t\t}\n\t}\n}\n\n\n\nfunction _Process_sleep(time)\n{\n\treturn _Scheduler_binding(function(callback) {\n\t\tvar id = setTimeout(function() {\n\t\t\tcallback(_Scheduler_succeed(_Utils_Tuple0));\n\t\t}, time);\n\n\t\treturn function() { clearTimeout(id); };\n\t});\n}\n\n\n\n\n// PROGRAMS\n\n\nvar _Platform_worker = F4(function(impl, flagDecoder, debugMetadata, args)\n{\n\treturn _Platform_initialize(\n\t\tflagDecoder,\n\t\targs,\n\t\timpl.bv,\n\t\timpl.bL,\n\t\timpl.bJ,\n\t\tfunction() { return function() {} }\n\t);\n});\n\n\n\n// INITIALIZE A PROGRAM\n\n\nfunction _Platform_initialize(flagDecoder, args, init, update, subscriptions, stepperBuilder)\n{\n\tvar result = A2(_Json_run, flagDecoder, _Json_wrap(args ? args['flags'] : undefined));\n\telm$core$Result$isOk(result) || _Debug_crash(2 /**_UNUSED/, _Json_errorToString(result.a) /**/);\n\tvar managers = {};\n\tresult = init(result.a);\n\tvar model = result.a;\n\tvar stepper = stepperBuilder(sendToApp, model);\n\tvar ports = _Platform_setupEffects(managers, sendToApp);\n\n\tfunction sendToApp(msg, viewMetadata)\n\t{\n\t\tresult = A2(update, msg, model);\n\t\tstepper(model = result.a, viewMetadata);\n\t\t_Platform_dispatchEffects(managers, result.b, subscriptions(model));\n\t}\n\n\t_Platform_dispatchEffects(managers, result.b, subscriptions(model));\n\n\treturn ports ? { ports: ports } : {};\n}\n\n\n\n// TRACK PRELOADS\n//\n// This is used by code in elm/browser and elm/http\n// to register any HTTP requests that are triggered by init.\n//\n\n\nvar _Platform_preload;\n\n\nfunction _Platform_registerPreload(url)\n{\n\t_Platform_preload.add(url);\n}\n\n\n\n// EFFECT MANAGERS\n\n\nvar _Platform_effectManagers = {};\n\n\nfunction _Platform_setupEffects(managers, sendToApp)\n{\n\tvar ports;\n\n\t// setup all necessary effect managers\n\tfor (var key in _Platform_effectManagers)\n\t{\n\t\tvar manager = _Platform_effectManagers[key];\n\n\t\tif (manager.a)\n\t\t{\n\t\t\tports = ports || {};\n\t\t\tports[key] = manager.a(key, sendToApp);\n\t\t}\n\n\t\tmanagers[key] = _Platform_instantiateManager(manager, sendToApp);\n\t}\n\n\treturn ports;\n}\n\n\nfunction _Platform_createManager(init, onEffects, onSelfMsg, cmdMap, subMap)\n{\n\treturn {\n\t\tb: init,\n\t\tc: onEffects,\n\t\td: onSelfMsg,\n\t\te: cmdMap,\n\t\tf: subMap\n\t};\n}\n\n\nfunction _Platform_instantiateManager(info, sendToApp)\n{\n\tvar router = {\n\t\tg: sendToApp,\n\t\th: undefined\n\t};\n\n\tvar onEffects = info.c;\n\tvar onSelfMsg = info.d;\n\tvar cmdMap = info.e;\n\tvar subMap = info.f;\n\n\tfunction loop(state)\n\t{\n\t\treturn A2(_Scheduler_andThen, loop, _Scheduler_receive(function(msg)\n\t\t{\n\t\t\tvar value = msg.a;\n\n\t\t\tif (msg.$ === 0)\n\t\t\t{\n\t\t\t\treturn A3(onSelfMsg, router, value, state);\n\t\t\t}\n\n\t\t\treturn cmdMap && subMap\n\t\t\t\t? A4(onEffects, router, value.i, value.j, state)\n\t\t\t\t: A3(onEffects, router, cmdMap ? value.i : value.j, state);\n\t\t}));\n\t}\n\n\treturn router.h = _Scheduler_rawSpawn(A2(_Scheduler_andThen, loop, info.b));\n}\n\n\n\n// ROUTING\n\n\nvar _Platform_sendToApp = F2(function(router, msg)\n{\n\treturn _Scheduler_binding(function(callback)\n\t{\n\t\trouter.g(msg);\n\t\tcallback(_Scheduler_succeed(_Utils_Tuple0));\n\t});\n});\n\n\nvar _Platform_sendToSelf = F2(function(router, msg)\n{\n\treturn A2(_Scheduler_send, router.h, {\n\t\t$: 0,\n\t\ta: msg\n\t});\n});\n\n\n\n// BAGS\n\n\nfunction _Platform_leaf(home)\n{\n\treturn function(value)\n\t{\n\t\treturn {\n\t\t\t$: 1,\n\t\t\tk: home,\n\t\t\tl: value\n\t\t};\n\t};\n}\n\n\nfunction _Platform_batch(list)\n{\n\treturn {\n\t\t$: 2,\n\t\tm: list\n\t};\n}\n\n\nvar _Platform_map = F2(function(tagger, bag)\n{\n\treturn {\n\t\t$: 3,\n\t\tn: tagger,\n\t\to: bag\n\t}\n});\n\n\n\n// PIPE BAGS INTO EFFECT MANAGERS\n\n\nfunction _Platform_dispatchEffects(managers, cmdBag, subBag)\n{\n\tvar effectsDict = {};\n\t_Platform_gatherEffects(true, cmdBag, effectsDict, null);\n\t_Platform_gatherEffects(false, subBag, effectsDict, null);\n\n\tfor (var home in managers)\n\t{\n\t\t_Scheduler_rawSend(managers[home], {\n\t\t\t$: 'fx',\n\t\t\ta: effectsDict[home] || { i: _List_Nil, j: _List_Nil }\n\t\t});\n\t}\n}\n\n\nfunction _Platform_gatherEffects(isCmd, bag, effectsDict, taggers)\n{\n\tswitch (bag.$)\n\t{\n\t\tcase 1:\n\t\t\tvar home = bag.k;\n\t\t\tvar effect = _Platform_toEffect(isCmd, home, taggers, bag.l);\n\t\t\teffectsDict[home] = _Platform_insert(isCmd, effect, effectsDict[home]);\n\t\t\treturn;\n\n\t\tcase 2:\n\t\t\tfor (var list = bag.m; list.b; list = list.b) // WHILE_CONS\n\t\t\t{\n\t\t\t\t_Platform_gatherEffects(isCmd, list.a, effectsDict, taggers);\n\t\t\t}\n\t\t\treturn;\n\n\t\tcase 3:\n\t\t\t_Platform_gatherEffects(isCmd, bag.o, effectsDict, {\n\t\t\t\tp: bag.n,\n\t\t\t\tq: taggers\n\t\t\t});\n\t\t\treturn;\n\t}\n}\n\n\nfunction _Platform_toEffect(isCmd, home, taggers, value)\n{\n\tfunction applyTaggers(x)\n\t{\n\t\tfor (var temp = taggers; temp; temp = temp.q)\n\t\t{\n\t\t\tx = temp.p(x);\n\t\t}\n\t\treturn x;\n\t}\n\n\tvar map = isCmd\n\t\t? _Platform_effectManagers[home].e\n\t\t: _Platform_effectManagers[home].f;\n\n\treturn A2(map, applyTaggers, value)\n}\n\n\nfunction _Platform_insert(isCmd, newEffect, effects)\n{\n\teffects = effects || { i: _List_Nil, j: _List_Nil };\n\n\tisCmd\n\t\t? (effects.i = _List_Cons(newEffect, effects.i))\n\t\t: (effects.j = _List_Cons(newEffect, effects.j));\n\n\treturn effects;\n}\n\n\n\n// PORTS\n\n\nfunction _Platform_checkPortName(name)\n{\n\tif (_Platform_effectManagers[name])\n\t{\n\t\t_Debug_crash(3, name)\n\t}\n}\n\n\n\n// OUTGOING PORTS\n\n\nfunction _Platform_outgoingPort(name, converter)\n{\n\t_Platform_checkPortName(name);\n\t_Platform_effectManagers[name] = {\n\t\te: _Platform_outgoingPortMap,\n\t\tr: converter,\n\t\ta: _Platform_setupOutgoingPort\n\t};\n\treturn _Platform_leaf(name);\n}\n\n\nvar _Platform_outgoingPortMap = F2(function(tagger, value) { return value; });\n\n\nfunction _Platform_setupOutgoingPort(name)\n{\n\tvar subs = [];\n\tvar converter = _Platform_effectManagers[name].r;\n\n\t// CREATE MANAGER\n\n\tvar init = _Process_sleep(0);\n\n\t_Platform_effectManagers[name].b = init;\n\t_Platform_effectManagers[name].c = F3(function(router, cmdList, state)\n\t{\n\t\tfor ( ; cmdList.b; cmdList = cmdList.b) // WHILE_CONS\n\t\t{\n\t\t\t// grab a separate reference to subs in case unsubscribe is called\n\t\t\tvar currentSubs = subs;\n\t\t\tvar value = _Json_unwrap(converter(cmdList.a));\n\t\t\tfor (var i = 0; i < currentSubs.length; i++)\n\t\t\t{\n\t\t\t\tcurrentSubs[i](value);\n\t\t\t}\n\t\t}\n\t\treturn init;\n\t});\n\n\t// PUBLIC API\n\n\tfunction subscribe(callback)\n\t{\n\t\tsubs.push(callback);\n\t}\n\n\tfunction unsubscribe(callback)\n\t{\n\t\t// copy subs into a new array in case unsubscribe is called within a\n\t\t// subscribed callback\n\t\tsubs = subs.slice();\n\t\tvar index = subs.indexOf(callback);\n\t\tif (index >= 0)\n\t\t{\n\t\t\tsubs.splice(index, 1);\n\t\t}\n\t}\n\n\treturn {\n\t\tsubscribe: subscribe,\n\t\tunsubscribe: unsubscribe\n\t};\n}\n\n\n\n// INCOMING PORTS\n\n\nfunction _Platform_incomingPort(name, converter)\n{\n\t_Platform_checkPortName(name);\n\t_Platform_effectManagers[name] = {\n\t\tf: _Platform_incomingPortMap,\n\t\tr: converter,\n\t\ta: _Platform_setupIncomingPort\n\t};\n\treturn _Platform_leaf(name);\n}\n\n\nvar _Platform_incomingPortMap = F2(function(tagger, finalTagger)\n{\n\treturn function(value)\n\t{\n\t\treturn tagger(finalTagger(value));\n\t};\n});\n\n\nfunction _Platform_setupIncomingPort(name, sendToApp)\n{\n\tvar subs = _List_Nil;\n\tvar converter = _Platform_effectManagers[name].r;\n\n\t// CREATE MANAGER\n\n\tvar init = _Scheduler_succeed(null);\n\n\t_Platform_effectManagers[name].b = init;\n\t_Platform_effectManagers[name].c = F3(function(router, subList, state)\n\t{\n\t\tsubs = subList;\n\t\treturn init;\n\t});\n\n\t// PUBLIC API\n\n\tfunction send(incomingValue)\n\t{\n\t\tvar result = A2(_Json_run, converter, _Json_wrap(incomingValue));\n\n\t\telm$core$Result$isOk(result) || _Debug_crash(4, name, result.a);\n\n\t\tvar value = result.a;\n\t\tfor (var temp = subs; temp.b; temp = temp.b) // WHILE_CONS\n\t\t{\n\t\t\tsendToApp(temp.a(value));\n\t\t}\n\t}\n\n\treturn { send: send };\n}\n\n\n\n// EXPORT ELM MODULES\n//\n// Have DEBUG and PROD versions so that we can (1) give nicer errors in\n// debug mode and (2) not pay for the bits needed for that in prod mode.\n//\n\n\nfunction _Platform_export(exports)\n{\n\tscope['Elm']\n\t\t? _Platform_mergeExportsProd(scope['Elm'], exports)\n\t\t: scope['Elm'] = exports;\n}\n\n\nfunction _Platform_mergeExportsProd(obj, exports)\n{\n\tfor (var name in exports)\n\t{\n\t\t(name in obj)\n\t\t\t? (name == 'init')\n\t\t\t\t? _Debug_crash(6)\n\t\t\t\t: _Platform_mergeExportsProd(obj[name], exports[name])\n\t\t\t: (obj[name] = exports[name]);\n\t}\n}\n\n\nfunction _Platform_export_UNUSED(exports)\n{\n\tscope['Elm']\n\t\t? _Platform_mergeExportsDebug('Elm', scope['Elm'], exports)\n\t\t: scope['Elm'] = exports;\n}\n\n\nfunction _Platform_mergeExportsDebug(moduleName, obj, exports)\n{\n\tfor (var name in exports)\n\t{\n\t\t(name in obj)\n\t\t\t? (name == 'init')\n\t\t\t\t? _Debug_crash(6, moduleName)\n\t\t\t\t: _Platform_mergeExportsDebug(moduleName + '.' + name, obj[name], exports[name])\n\t\t\t: (obj[name] = exports[name]);\n\t}\n}\n\n\n\n\n// HELPERS\n\n\nvar _VirtualDom_divertHrefToApp;\n\nvar _VirtualDom_doc = typeof document !== 'undefined' ? document : {};\n\n\nfunction _VirtualDom_appendChild(parent, child)\n{\n\tparent.appendChild(child);\n}\n\nvar _VirtualDom_init = F4(function(virtualNode, flagDecoder, debugMetadata, args)\n{\n\t// NOTE: this function needs _Platform_export available to work\n\n\t/**/\n\tvar node = args['node'];\n\t//*/\n\t/**_UNUSED/\n\tvar node = args && args['node'] ? args['node'] : _Debug_crash(0);\n\t//*/\n\n\tnode.parentNode.replaceChild(\n\t\t_VirtualDom_render(virtualNode, function() {}),\n\t\tnode\n\t);\n\n\treturn {};\n});\n\n\n\n// TEXT\n\n\nfunction _VirtualDom_text(string)\n{\n\treturn {\n\t\t$: 0,\n\t\ta: string\n\t};\n}\n\n\n\n// NODE\n\n\nvar _VirtualDom_nodeNS = F2(function(namespace, tag)\n{\n\treturn F2(function(factList, kidList)\n\t{\n\t\tfor (var kids = [], descendantsCount = 0; kidList.b; kidList = kidList.b) // WHILE_CONS\n\t\t{\n\t\t\tvar kid = kidList.a;\n\t\t\tdescendantsCount += (kid.b || 0);\n\t\t\tkids.push(kid);\n\t\t}\n\t\tdescendantsCount += kids.length;\n\n\t\treturn {\n\t\t\t$: 1,\n\t\t\tc: tag,\n\t\t\td: _VirtualDom_organizeFacts(factList),\n\t\t\te: kids,\n\t\t\tf: namespace,\n\t\t\tb: descendantsCount\n\t\t};\n\t});\n});\n\n\nvar _VirtualDom_node = _VirtualDom_nodeNS(undefined);\n\n\n\n// KEYED NODE\n\n\nvar _VirtualDom_keyedNodeNS = F2(function(namespace, tag)\n{\n\treturn F2(function(factList, kidList)\n\t{\n\t\tfor (var kids = [], descendantsCount = 0; kidList.b; kidList = kidList.b) // WHILE_CONS\n\t\t{\n\t\t\tvar kid = kidList.a;\n\t\t\tdescendantsCount += (kid.b.b || 0);\n\t\t\tkids.push(kid);\n\t\t}\n\t\tdescendantsCount += kids.length;\n\n\t\treturn {\n\t\t\t$: 2,\n\t\t\tc: tag,\n\t\t\td: _VirtualDom_organizeFacts(factList),\n\t\t\te: kids,\n\t\t\tf: namespace,\n\t\t\tb: descendantsCount\n\t\t};\n\t});\n});\n\n\nvar _VirtualDom_keyedNode = _VirtualDom_keyedNodeNS(undefined);\n\n\n\n// CUSTOM\n\n\nfunction _VirtualDom_custom(factList, model, render, diff)\n{\n\treturn {\n\t\t$: 3,\n\t\td: _VirtualDom_organizeFacts(factList),\n\t\tg: model,\n\t\th: render,\n\t\ti: diff\n\t};\n}\n\n\n\n// MAP\n\n\nvar _VirtualDom_map = F2(function(tagger, node)\n{\n\treturn {\n\t\t$: 4,\n\t\tj: tagger,\n\t\tk: node,\n\t\tb: 1 + (node.b || 0)\n\t};\n});\n\n\n\n// LAZY\n\n\nfunction _VirtualDom_thunk(refs, thunk)\n{\n\treturn {\n\t\t$: 5,\n\t\tl: refs,\n\t\tm: thunk,\n\t\tk: undefined\n\t};\n}\n\nvar _VirtualDom_lazy = F2(function(func, a)\n{\n\treturn _VirtualDom_thunk([func, a], function() {\n\t\treturn func(a);\n\t});\n});\n\nvar _VirtualDom_lazy2 = F3(function(func, a, b)\n{\n\treturn _VirtualDom_thunk([func, a, b], function() {\n\t\treturn A2(func, a, b);\n\t});\n});\n\nvar _VirtualDom_lazy3 = F4(function(func, a, b, c)\n{\n\treturn _VirtualDom_thunk([func, a, b, c], function() {\n\t\treturn A3(func, a, b, c);\n\t});\n});\n\nvar _VirtualDom_lazy4 = F5(function(func, a, b, c, d)\n{\n\treturn _VirtualDom_thunk([func, a, b, c, d], function() {\n\t\treturn A4(func, a, b, c, d);\n\t});\n});\n\nvar _VirtualDom_lazy5 = F6(function(func, a, b, c, d, e)\n{\n\treturn _VirtualDom_thunk([func, a, b, c, d, e], function() {\n\t\treturn A5(func, a, b, c, d, e);\n\t});\n});\n\nvar _VirtualDom_lazy6 = F7(function(func, a, b, c, d, e, f)\n{\n\treturn _VirtualDom_thunk([func, a, b, c, d, e, f], function() {\n\t\treturn A6(func, a, b, c, d, e, f);\n\t});\n});\n\nvar _VirtualDom_lazy7 = F8(function(func, a, b, c, d, e, f, g)\n{\n\treturn _VirtualDom_thunk([func, a, b, c, d, e, f, g], function() {\n\t\treturn A7(func, a, b, c, d, e, f, g);\n\t});\n});\n\nvar _VirtualDom_lazy8 = F9(function(func, a, b, c, d, e, f, g, h)\n{\n\treturn _VirtualDom_thunk([func, a, b, c, d, e, f, g, h], function() {\n\t\treturn A8(func, a, b, c, d, e, f, g, h);\n\t});\n});\n\n\n\n// FACTS\n\n\nvar _VirtualDom_on = F2(function(key, handler)\n{\n\treturn {\n\t\t$: 'a0',\n\t\tn: key,\n\t\to: handler\n\t};\n});\nvar _VirtualDom_style = F2(function(key, value)\n{\n\treturn {\n\t\t$: 'a1',\n\t\tn: key,\n\t\to: value\n\t};\n});\nvar _VirtualDom_property = F2(function(key, value)\n{\n\treturn {\n\t\t$: 'a2',\n\t\tn: key,\n\t\to: value\n\t};\n});\nvar _VirtualDom_attribute = F2(function(key, value)\n{\n\treturn {\n\t\t$: 'a3',\n\t\tn: key,\n\t\to: value\n\t};\n});\nvar _VirtualDom_attributeNS = F3(function(namespace, key, value)\n{\n\treturn {\n\t\t$: 'a4',\n\t\tn: key,\n\t\to: { f: namespace, o: value }\n\t};\n});\n\n\n\n// XSS ATTACK VECTOR CHECKS\n\n\nfunction _VirtualDom_noScript(tag)\n{\n\treturn tag == 'script' ? 'p' : tag;\n}\n\nfunction _VirtualDom_noOnOrFormAction(key)\n{\n\treturn /^(on|formAction$)/i.test(key) ? 'data-' + key : key;\n}\n\nfunction _VirtualDom_noInnerHtmlOrFormAction(key)\n{\n\treturn key == 'innerHTML' || key == 'formAction' ? 'data-' + key : key;\n}\n\nfunction _VirtualDom_noJavaScriptUri(value)\n{\n\treturn /^javascript:/i.test(value.replace(/\\s/g,'')) ? '' : value;\n}\n\nfunction _VirtualDom_noJavaScriptUri_UNUSED(value)\n{\n\treturn /^javascript:/i.test(value.replace(/\\s/g,''))\n\t\t? 'javascript:alert(\"This is an XSS vector. Please use ports or web components instead.\")'\n\t\t: value;\n}\n\nfunction _VirtualDom_noJavaScriptOrHtmlUri(value)\n{\n\treturn /^\\s*(javascript:|data:text\\/html)/i.test(value) ? '' : value;\n}\n\nfunction _VirtualDom_noJavaScriptOrHtmlUri_UNUSED(value)\n{\n\treturn /^\\s*(javascript:|data:text\\/html)/i.test(value)\n\t\t? 'javascript:alert(\"This is an XSS vector. Please use ports or web components instead.\")'\n\t\t: value;\n}\n\n\n\n// MAP FACTS\n\n\nvar _VirtualDom_mapAttribute = F2(function(func, attr)\n{\n\treturn (attr.$ === 'a0')\n\t\t? A2(_VirtualDom_on, attr.n, _VirtualDom_mapHandler(func, attr.o))\n\t\t: attr;\n});\n\nfunction _VirtualDom_mapHandler(func, handler)\n{\n\tvar tag = elm$virtual_dom$VirtualDom$toHandlerInt(handler);\n\n\t// 0 = Normal\n\t// 1 = MayStopPropagation\n\t// 2 = MayPreventDefault\n\t// 3 = Custom\n\n\treturn {\n\t\t$: handler.$,\n\t\ta:\n\t\t\t!tag\n\t\t\t\t? A2(elm$json$Json$Decode$map, func, handler.a)\n\t\t\t\t:\n\t\t\tA3(elm$json$Json$Decode$map2,\n\t\t\t\ttag < 3\n\t\t\t\t\t? _VirtualDom_mapEventTuple\n\t\t\t\t\t: _VirtualDom_mapEventRecord,\n\t\t\t\telm$json$Json$Decode$succeed(func),\n\t\t\t\thandler.a\n\t\t\t)\n\t};\n}\n\nvar _VirtualDom_mapEventTuple = F2(function(func, tuple)\n{\n\treturn _Utils_Tuple2(func(tuple.a), tuple.b);\n});\n\nvar _VirtualDom_mapEventRecord = F2(function(func, record)\n{\n\treturn {\n\t\tl: func(record.l),\n\t\tae: record.ae,\n\t\taa: record.aa\n\t}\n});\n\n\n\n// ORGANIZE FACTS\n\n\nfunction _VirtualDom_organizeFacts(factList)\n{\n\tfor (var facts = {}; factList.b; factList = factList.b) // WHILE_CONS\n\t{\n\t\tvar entry = factList.a;\n\n\t\tvar tag = entry.$;\n\t\tvar key = entry.n;\n\t\tvar value = entry.o;\n\n\t\tif (tag === 'a2')\n\t\t{\n\t\t\t(key === 'className')\n\t\t\t\t? _VirtualDom_addClass(facts, key, _Json_unwrap(value))\n\t\t\t\t: facts[key] = _Json_unwrap(value);\n\n\t\t\tcontinue;\n\t\t}\n\n\t\tvar subFacts = facts[tag] || (facts[tag] = {});\n\t\t(tag === 'a3' && key === 'class')\n\t\t\t? _VirtualDom_addClass(subFacts, key, value)\n\t\t\t: subFacts[key] = value;\n\t}\n\n\treturn facts;\n}\n\nfunction _VirtualDom_addClass(object, key, newClass)\n{\n\tvar classes = object[key];\n\tobject[key] = classes ? classes + ' ' + newClass : newClass;\n}\n\n\n\n// RENDER\n\n\nfunction _VirtualDom_render(vNode, eventNode)\n{\n\tvar tag = vNode.$;\n\n\tif (tag === 5)\n\t{\n\t\treturn _VirtualDom_render(vNode.k || (vNode.k = vNode.m()), eventNode);\n\t}\n\n\tif (tag === 0)\n\t{\n\t\treturn _VirtualDom_doc.createTextNode(vNode.a);\n\t}\n\n\tif (tag === 4)\n\t{\n\t\tvar subNode = vNode.k;\n\t\tvar tagger = vNode.j;\n\n\t\twhile (subNode.$ === 4)\n\t\t{\n\t\t\ttypeof tagger !== 'object'\n\t\t\t\t? tagger = [tagger, subNode.j]\n\t\t\t\t: tagger.push(subNode.j);\n\n\t\t\tsubNode = subNode.k;\n\t\t}\n\n\t\tvar subEventRoot = { j: tagger, p: eventNode };\n\t\tvar domNode = _VirtualDom_render(subNode, subEventRoot);\n\t\tdomNode.elm_event_node_ref = subEventRoot;\n\t\treturn domNode;\n\t}\n\n\tif (tag === 3)\n\t{\n\t\tvar domNode = vNode.h(vNode.g);\n\t\t_VirtualDom_applyFacts(domNode, eventNode, vNode.d);\n\t\treturn domNode;\n\t}\n\n\t// at this point `tag` must be 1 or 2\n\n\tvar domNode = vNode.f\n\t\t? _VirtualDom_doc.createElementNS(vNode.f, vNode.c)\n\t\t: _VirtualDom_doc.createElement(vNode.c);\n\n\tif (_VirtualDom_divertHrefToApp && vNode.c == 'a')\n\t{\n\t\tdomNode.addEventListener('click', _VirtualDom_divertHrefToApp(domNode));\n\t}\n\n\t_VirtualDom_applyFacts(domNode, eventNode, vNode.d);\n\n\tfor (var kids = vNode.e, i = 0; i < kids.length; i++)\n\t{\n\t\t_VirtualDom_appendChild(domNode, _VirtualDom_render(tag === 1 ? kids[i] : kids[i].b, eventNode));\n\t}\n\n\treturn domNode;\n}\n\n\n\n// APPLY FACTS\n\n\nfunction _VirtualDom_applyFacts(domNode, eventNode, facts)\n{\n\tfor (var key in facts)\n\t{\n\t\tvar value = facts[key];\n\n\t\tkey === 'a1'\n\t\t\t? _VirtualDom_applyStyles(domNode, value)\n\t\t\t:\n\t\tkey === 'a0'\n\t\t\t? _VirtualDom_applyEvents(domNode, eventNode, value)\n\t\t\t:\n\t\tkey === 'a3'\n\t\t\t? _VirtualDom_applyAttrs(domNode, value)\n\t\t\t:\n\t\tkey === 'a4'\n\t\t\t? _VirtualDom_applyAttrsNS(domNode, value)\n\t\t\t:\n\t\t((key !== 'value' && key !== 'checked') || domNode[key] !== value) && (domNode[key] = value);\n\t}\n}\n\n\n\n// APPLY STYLES\n\n\nfunction _VirtualDom_applyStyles(domNode, styles)\n{\n\tvar domNodeStyle = domNode.style;\n\n\tfor (var key in styles)\n\t{\n\t\tdomNodeStyle[key] = styles[key];\n\t}\n}\n\n\n\n// APPLY ATTRS\n\n\nfunction _VirtualDom_applyAttrs(domNode, attrs)\n{\n\tfor (var key in attrs)\n\t{\n\t\tvar value = attrs[key];\n\t\ttypeof value !== 'undefined'\n\t\t\t? domNode.setAttribute(key, value)\n\t\t\t: domNode.removeAttribute(key);\n\t}\n}\n\n\n\n// APPLY NAMESPACED ATTRS\n\n\nfunction _VirtualDom_applyAttrsNS(domNode, nsAttrs)\n{\n\tfor (var key in nsAttrs)\n\t{\n\t\tvar pair = nsAttrs[key];\n\t\tvar namespace = pair.f;\n\t\tvar value = pair.o;\n\n\t\ttypeof value !== 'undefined'\n\t\t\t? domNode.setAttributeNS(namespace, key, value)\n\t\t\t: domNode.removeAttributeNS(namespace, key);\n\t}\n}\n\n\n\n// APPLY EVENTS\n\n\nfunction _VirtualDom_applyEvents(domNode, eventNode, events)\n{\n\tvar allCallbacks = domNode.elmFs || (domNode.elmFs = {});\n\n\tfor (var key in events)\n\t{\n\t\tvar newHandler = events[key];\n\t\tvar oldCallback = allCallbacks[key];\n\n\t\tif (!newHandler)\n\t\t{\n\t\t\tdomNode.removeEventListener(key, oldCallback);\n\t\t\tallCallbacks[key] = undefined;\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (oldCallback)\n\t\t{\n\t\t\tvar oldHandler = oldCallback.q;\n\t\t\tif (oldHandler.$ === newHandler.$)\n\t\t\t{\n\t\t\t\toldCallback.q = newHandler;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tdomNode.removeEventListener(key, oldCallback);\n\t\t}\n\n\t\toldCallback = _VirtualDom_makeCallback(eventNode, newHandler);\n\t\tdomNode.addEventListener(key, oldCallback,\n\t\t\t_VirtualDom_passiveSupported\n\t\t\t&& { passive: elm$virtual_dom$VirtualDom$toHandlerInt(newHandler) < 2 }\n\t\t);\n\t\tallCallbacks[key] = oldCallback;\n\t}\n}\n\n\n\n// PASSIVE EVENTS\n\n\nvar _VirtualDom_passiveSupported;\n\ntry\n{\n\twindow.addEventListener('t', null, Object.defineProperty({}, 'passive', {\n\t\tget: function() { _VirtualDom_passiveSupported = true; }\n\t}));\n}\ncatch(e) {}\n\n\n\n// EVENT HANDLERS\n\n\nfunction _VirtualDom_makeCallback(eventNode, initialHandler)\n{\n\tfunction callback(event)\n\t{\n\t\tvar handler = callback.q;\n\t\tvar result = _Json_runHelp(handler.a, event);\n\n\t\tif (!elm$core$Result$isOk(result))\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tvar tag = elm$virtual_dom$VirtualDom$toHandlerInt(handler);\n\n\t\t// 0 = Normal\n\t\t// 1 = MayStopPropagation\n\t\t// 2 = MayPreventDefault\n\t\t// 3 = Custom\n\n\t\tvar value = result.a;\n\t\tvar message = !tag ? value : tag < 3 ? value.a : value.l;\n\t\tvar stopPropagation = tag == 1 ? value.b : tag == 3 && value.ae;\n\t\tvar currentEventNode = (\n\t\t\tstopPropagation && event.stopPropagation(),\n\t\t\t(tag == 2 ? value.b : tag == 3 && value.aa) && event.preventDefault(),\n\t\t\teventNode\n\t\t);\n\t\tvar tagger;\n\t\tvar i;\n\t\twhile (tagger = currentEventNode.j)\n\t\t{\n\t\t\tif (typeof tagger == 'function')\n\t\t\t{\n\t\t\t\tmessage = tagger(message);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tfor (var i = tagger.length; i--; )\n\t\t\t\t{\n\t\t\t\t\tmessage = tagger[i](message);\n\t\t\t\t}\n\t\t\t}\n\t\t\tcurrentEventNode = currentEventNode.p;\n\t\t}\n\t\tcurrentEventNode(message, stopPropagation); // stopPropagation implies isSync\n\t}\n\n\tcallback.q = initialHandler;\n\n\treturn callback;\n}\n\nfunction _VirtualDom_equalEvents(x, y)\n{\n\treturn x.$ == y.$ && _Json_equality(x.a, y.a);\n}\n\n\n\n// DIFF\n\n\n// TODO: Should we do patches like in iOS?\n//\n// type Patch\n// = At Int Patch\n// | Batch (List Patch)\n// | Change ...\n//\n// How could it not be better?\n//\nfunction _VirtualDom_diff(x, y)\n{\n\tvar patches = [];\n\t_VirtualDom_diffHelp(x, y, patches, 0);\n\treturn patches;\n}\n\n\nfunction _VirtualDom_pushPatch(patches, type, index, data)\n{\n\tvar patch = {\n\t\t$: type,\n\t\tr: index,\n\t\ts: data,\n\t\tt: undefined,\n\t\tu: undefined\n\t};\n\tpatches.push(patch);\n\treturn patch;\n}\n\n\nfunction _VirtualDom_diffHelp(x, y, patches, index)\n{\n\tif (x === y)\n\t{\n\t\treturn;\n\t}\n\n\tvar xType = x.$;\n\tvar yType = y.$;\n\n\t// Bail if you run into different types of nodes. Implies that the\n\t// structure has changed significantly and it's not worth a diff.\n\tif (xType !== yType)\n\t{\n\t\tif (xType === 1 && yType === 2)\n\t\t{\n\t\t\ty = _VirtualDom_dekey(y);\n\t\t\tyType = 1;\n\t\t}\n\t\telse\n\t\t{\n\t\t\t_VirtualDom_pushPatch(patches, 0, index, y);\n\t\t\treturn;\n\t\t}\n\t}\n\n\t// Now we know that both nodes are the same $.\n\tswitch (yType)\n\t{\n\t\tcase 5:\n\t\t\tvar xRefs = x.l;\n\t\t\tvar yRefs = y.l;\n\t\t\tvar i = xRefs.length;\n\t\t\tvar same = i === yRefs.length;\n\t\t\twhile (same && i--)\n\t\t\t{\n\t\t\t\tsame = xRefs[i] === yRefs[i];\n\t\t\t}\n\t\t\tif (same)\n\t\t\t{\n\t\t\t\ty.k = x.k;\n\t\t\t\treturn;\n\t\t\t}\n\t\t\ty.k = y.m();\n\t\t\tvar subPatches = [];\n\t\t\t_VirtualDom_diffHelp(x.k, y.k, subPatches, 0);\n\t\t\tsubPatches.length > 0 && _VirtualDom_pushPatch(patches, 1, index, subPatches);\n\t\t\treturn;\n\n\t\tcase 4:\n\t\t\t// gather nested taggers\n\t\t\tvar xTaggers = x.j;\n\t\t\tvar yTaggers = y.j;\n\t\t\tvar nesting = false;\n\n\t\t\tvar xSubNode = x.k;\n\t\t\twhile (xSubNode.$ === 4)\n\t\t\t{\n\t\t\t\tnesting = true;\n\n\t\t\t\ttypeof xTaggers !== 'object'\n\t\t\t\t\t? xTaggers = [xTaggers, xSubNode.j]\n\t\t\t\t\t: xTaggers.push(xSubNode.j);\n\n\t\t\t\txSubNode = xSubNode.k;\n\t\t\t}\n\n\t\t\tvar ySubNode = y.k;\n\t\t\twhile (ySubNode.$ === 4)\n\t\t\t{\n\t\t\t\tnesting = true;\n\n\t\t\t\ttypeof yTaggers !== 'object'\n\t\t\t\t\t? yTaggers = [yTaggers, ySubNode.j]\n\t\t\t\t\t: yTaggers.push(ySubNode.j);\n\n\t\t\t\tySubNode = ySubNode.k;\n\t\t\t}\n\n\t\t\t// Just bail if different numbers of taggers. This implies the\n\t\t\t// structure of the virtual DOM has changed.\n\t\t\tif (nesting && xTaggers.length !== yTaggers.length)\n\t\t\t{\n\t\t\t\t_VirtualDom_pushPatch(patches, 0, index, y);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// check if taggers are \"the same\"\n\t\t\tif (nesting ? !_VirtualDom_pairwiseRefEqual(xTaggers, yTaggers) : xTaggers !== yTaggers)\n\t\t\t{\n\t\t\t\t_VirtualDom_pushPatch(patches, 2, index, yTaggers);\n\t\t\t}\n\n\t\t\t// diff everything below the taggers\n\t\t\t_VirtualDom_diffHelp(xSubNode, ySubNode, patches, index + 1);\n\t\t\treturn;\n\n\t\tcase 0:\n\t\t\tif (x.a !== y.a)\n\t\t\t{\n\t\t\t\t_VirtualDom_pushPatch(patches, 3, index, y.a);\n\t\t\t}\n\t\t\treturn;\n\n\t\tcase 1:\n\t\t\t_VirtualDom_diffNodes(x, y, patches, index, _VirtualDom_diffKids);\n\t\t\treturn;\n\n\t\tcase 2:\n\t\t\t_VirtualDom_diffNodes(x, y, patches, index, _VirtualDom_diffKeyedKids);\n\t\t\treturn;\n\n\t\tcase 3:\n\t\t\tif (x.h !== y.h)\n\t\t\t{\n\t\t\t\t_VirtualDom_pushPatch(patches, 0, index, y);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar factsDiff = _VirtualDom_diffFacts(x.d, y.d);\n\t\t\tfactsDiff && _VirtualDom_pushPatch(patches, 4, index, factsDiff);\n\n\t\t\tvar patch = y.i(x.g, y.g);\n\t\t\tpatch && _VirtualDom_pushPatch(patches, 5, index, patch);\n\n\t\t\treturn;\n\t}\n}\n\n// assumes the incoming arrays are the same length\nfunction _VirtualDom_pairwiseRefEqual(as, bs)\n{\n\tfor (var i = 0; i < as.length; i++)\n\t{\n\t\tif (as[i] !== bs[i])\n\t\t{\n\t\t\treturn false;\n\t\t}\n\t}\n\n\treturn true;\n}\n\nfunction _VirtualDom_diffNodes(x, y, patches, index, diffKids)\n{\n\t// Bail if obvious indicators have changed. Implies more serious\n\t// structural changes such that it's not worth it to diff.\n\tif (x.c !== y.c || x.f !== y.f)\n\t{\n\t\t_VirtualDom_pushPatch(patches, 0, index, y);\n\t\treturn;\n\t}\n\n\tvar factsDiff = _VirtualDom_diffFacts(x.d, y.d);\n\tfactsDiff && _VirtualDom_pushPatch(patches, 4, index, factsDiff);\n\n\tdiffKids(x, y, patches, index);\n}\n\n\n\n// DIFF FACTS\n\n\n// TODO Instead of creating a new diff object, it's possible to just test if\n// there *is* a diff. During the actual patch, do the diff again and make the\n// modifications directly. This way, there's no new allocations. Worth it?\nfunction _VirtualDom_diffFacts(x, y, category)\n{\n\tvar diff;\n\n\t// look for changes and removals\n\tfor (var xKey in x)\n\t{\n\t\tif (xKey === 'a1' || xKey === 'a0' || xKey === 'a3' || xKey === 'a4')\n\t\t{\n\t\t\tvar subDiff = _VirtualDom_diffFacts(x[xKey], y[xKey] || {}, xKey);\n\t\t\tif (subDiff)\n\t\t\t{\n\t\t\t\tdiff = diff || {};\n\t\t\t\tdiff[xKey] = subDiff;\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\n\t\t// remove if not in the new facts\n\t\tif (!(xKey in y))\n\t\t{\n\t\t\tdiff = diff || {};\n\t\t\tdiff[xKey] =\n\t\t\t\t!category\n\t\t\t\t\t? (typeof x[xKey] === 'string' ? '' : null)\n\t\t\t\t\t:\n\t\t\t\t(category === 'a1')\n\t\t\t\t\t? ''\n\t\t\t\t\t:\n\t\t\t\t(category === 'a0' || category === 'a3')\n\t\t\t\t\t? undefined\n\t\t\t\t\t:\n\t\t\t\t{ f: x[xKey].f, o: undefined };\n\n\t\t\tcontinue;\n\t\t}\n\n\t\tvar xValue = x[xKey];\n\t\tvar yValue = y[xKey];\n\n\t\t// reference equal, so don't worry about it\n\t\tif (xValue === yValue && xKey !== 'value' && xKey !== 'checked'\n\t\t\t|| category === 'a0' && _VirtualDom_equalEvents(xValue, yValue))\n\t\t{\n\t\t\tcontinue;\n\t\t}\n\n\t\tdiff = diff || {};\n\t\tdiff[xKey] = yValue;\n\t}\n\n\t// add new stuff\n\tfor (var yKey in y)\n\t{\n\t\tif (!(yKey in x))\n\t\t{\n\t\t\tdiff = diff || {};\n\t\t\tdiff[yKey] = y[yKey];\n\t\t}\n\t}\n\n\treturn diff;\n}\n\n\n\n// DIFF KIDS\n\n\nfunction _VirtualDom_diffKids(xParent, yParent, patches, index)\n{\n\tvar xKids = xParent.e;\n\tvar yKids = yParent.e;\n\n\tvar xLen = xKids.length;\n\tvar yLen = yKids.length;\n\n\t// FIGURE OUT IF THERE ARE INSERTS OR REMOVALS\n\n\tif (xLen > yLen)\n\t{\n\t\t_VirtualDom_pushPatch(patches, 6, index, {\n\t\t\tv: yLen,\n\t\t\ti: xLen - yLen\n\t\t});\n\t}\n\telse if (xLen < yLen)\n\t{\n\t\t_VirtualDom_pushPatch(patches, 7, index, {\n\t\t\tv: xLen,\n\t\t\te: yKids\n\t\t});\n\t}\n\n\t// PAIRWISE DIFF EVERYTHING ELSE\n\n\tfor (var minLen = xLen < yLen ? xLen : yLen, i = 0; i < minLen; i++)\n\t{\n\t\tvar xKid = xKids[i];\n\t\t_VirtualDom_diffHelp(xKid, yKids[i], patches, ++index);\n\t\tindex += xKid.b || 0;\n\t}\n}\n\n\n\n// KEYED DIFF\n\n\nfunction _VirtualDom_diffKeyedKids(xParent, yParent, patches, rootIndex)\n{\n\tvar localPatches = [];\n\n\tvar changes = {}; // Dict String Entry\n\tvar inserts = []; // Array { index : Int, entry : Entry }\n\t// type Entry = { tag : String, vnode : VNode, index : Int, data : _ }\n\n\tvar xKids = xParent.e;\n\tvar yKids = yParent.e;\n\tvar xLen = xKids.length;\n\tvar yLen = yKids.length;\n\tvar xIndex = 0;\n\tvar yIndex = 0;\n\n\tvar index = rootIndex;\n\n\twhile (xIndex < xLen && yIndex < yLen)\n\t{\n\t\tvar x = xKids[xIndex];\n\t\tvar y = yKids[yIndex];\n\n\t\tvar xKey = x.a;\n\t\tvar yKey = y.a;\n\t\tvar xNode = x.b;\n\t\tvar yNode = y.b;\n\n\t\tvar newMatch = undefined;\n\t\tvar oldMatch = undefined;\n\n\t\t// check if keys match\n\n\t\tif (xKey === yKey)\n\t\t{\n\t\t\tindex++;\n\t\t\t_VirtualDom_diffHelp(xNode, yNode, localPatches, index);\n\t\t\tindex += xNode.b || 0;\n\n\t\t\txIndex++;\n\t\t\tyIndex++;\n\t\t\tcontinue;\n\t\t}\n\n\t\t// look ahead 1 to detect insertions and removals.\n\n\t\tvar xNext = xKids[xIndex + 1];\n\t\tvar yNext = yKids[yIndex + 1];\n\n\t\tif (xNext)\n\t\t{\n\t\t\tvar xNextKey = xNext.a;\n\t\t\tvar xNextNode = xNext.b;\n\t\t\toldMatch = yKey === xNextKey;\n\t\t}\n\n\t\tif (yNext)\n\t\t{\n\t\t\tvar yNextKey = yNext.a;\n\t\t\tvar yNextNode = yNext.b;\n\t\t\tnewMatch = xKey === yNextKey;\n\t\t}\n\n\n\t\t// swap x and y\n\t\tif (newMatch && oldMatch)\n\t\t{\n\t\t\tindex++;\n\t\t\t_VirtualDom_diffHelp(xNode, yNextNode, localPatches, index);\n\t\t\t_VirtualDom_insertNode(changes, localPatches, xKey, yNode, yIndex, inserts);\n\t\t\tindex += xNode.b || 0;\n\n\t\t\tindex++;\n\t\t\t_VirtualDom_removeNode(changes, localPatches, xKey, xNextNode, index);\n\t\t\tindex += xNextNode.b || 0;\n\n\t\t\txIndex += 2;\n\t\t\tyIndex += 2;\n\t\t\tcontinue;\n\t\t}\n\n\t\t// insert y\n\t\tif (newMatch)\n\t\t{\n\t\t\tindex++;\n\t\t\t_VirtualDom_insertNode(changes, localPatches, yKey, yNode, yIndex, inserts);\n\t\t\t_VirtualDom_diffHelp(xNode, yNextNode, localPatches, index);\n\t\t\tindex += xNode.b || 0;\n\n\t\t\txIndex += 1;\n\t\t\tyIndex += 2;\n\t\t\tcontinue;\n\t\t}\n\n\t\t// remove x\n\t\tif (oldMatch)\n\t\t{\n\t\t\tindex++;\n\t\t\t_VirtualDom_removeNode(changes, localPatches, xKey, xNode, index);\n\t\t\tindex += xNode.b || 0;\n\n\t\t\tindex++;\n\t\t\t_VirtualDom_diffHelp(xNextNode, yNode, localPatches, index);\n\t\t\tindex += xNextNode.b || 0;\n\n\t\t\txIndex += 2;\n\t\t\tyIndex += 1;\n\t\t\tcontinue;\n\t\t}\n\n\t\t// remove x, insert y\n\t\tif (xNext && xNextKey === yNextKey)\n\t\t{\n\t\t\tindex++;\n\t\t\t_VirtualDom_removeNode(changes, localPatches, xKey, xNode, index);\n\t\t\t_VirtualDom_insertNode(changes, localPatches, yKey, yNode, yIndex, inserts);\n\t\t\tindex += xNode.b || 0;\n\n\t\t\tindex++;\n\t\t\t_VirtualDom_diffHelp(xNextNode, yNextNode, localPatches, index);\n\t\t\tindex += xNextNode.b || 0;\n\n\t\t\txIndex += 2;\n\t\t\tyIndex += 2;\n\t\t\tcontinue;\n\t\t}\n\n\t\tbreak;\n\t}\n\n\t// eat up any remaining nodes with removeNode and insertNode\n\n\twhile (xIndex < xLen)\n\t{\n\t\tindex++;\n\t\tvar x = xKids[xIndex];\n\t\tvar xNode = x.b;\n\t\t_VirtualDom_removeNode(changes, localPatches, x.a, xNode, index);\n\t\tindex += xNode.b || 0;\n\t\txIndex++;\n\t}\n\n\twhile (yIndex < yLen)\n\t{\n\t\tvar endInserts = endInserts || [];\n\t\tvar y = yKids[yIndex];\n\t\t_VirtualDom_insertNode(changes, localPatches, y.a, y.b, undefined, endInserts);\n\t\tyIndex++;\n\t}\n\n\tif (localPatches.length > 0 || inserts.length > 0 || endInserts)\n\t{\n\t\t_VirtualDom_pushPatch(patches, 8, rootIndex, {\n\t\t\tw: localPatches,\n\t\t\tx: inserts,\n\t\t\ty: endInserts\n\t\t});\n\t}\n}\n\n\n\n// CHANGES FROM KEYED DIFF\n\n\nvar _VirtualDom_POSTFIX = '_elmW6BL';\n\n\nfunction _VirtualDom_insertNode(changes, localPatches, key, vnode, yIndex, inserts)\n{\n\tvar entry = changes[key];\n\n\t// never seen this key before\n\tif (!entry)\n\t{\n\t\tentry = {\n\t\t\tc: 0,\n\t\t\tz: vnode,\n\t\t\tr: yIndex,\n\t\t\ts: undefined\n\t\t};\n\n\t\tinserts.push({ r: yIndex, A: entry });\n\t\tchanges[key] = entry;\n\n\t\treturn;\n\t}\n\n\t// this key was removed earlier, a match!\n\tif (entry.c === 1)\n\t{\n\t\tinserts.push({ r: yIndex, A: entry });\n\n\t\tentry.c = 2;\n\t\tvar subPatches = [];\n\t\t_VirtualDom_diffHelp(entry.z, vnode, subPatches, entry.r);\n\t\tentry.r = yIndex;\n\t\tentry.s.s = {\n\t\t\tw: subPatches,\n\t\t\tA: entry\n\t\t};\n\n\t\treturn;\n\t}\n\n\t// this key has already been inserted or moved, a duplicate!\n\t_VirtualDom_insertNode(changes, localPatches, key + _VirtualDom_POSTFIX, vnode, yIndex, inserts);\n}\n\n\nfunction _VirtualDom_removeNode(changes, localPatches, key, vnode, index)\n{\n\tvar entry = changes[key];\n\n\t// never seen this key before\n\tif (!entry)\n\t{\n\t\tvar patch = _VirtualDom_pushPatch(localPatches, 9, index, undefined);\n\n\t\tchanges[key] = {\n\t\t\tc: 1,\n\t\t\tz: vnode,\n\t\t\tr: index,\n\t\t\ts: patch\n\t\t};\n\n\t\treturn;\n\t}\n\n\t// this key was inserted earlier, a match!\n\tif (entry.c === 0)\n\t{\n\t\tentry.c = 2;\n\t\tvar subPatches = [];\n\t\t_VirtualDom_diffHelp(vnode, entry.z, subPatches, index);\n\n\t\t_VirtualDom_pushPatch(localPatches, 9, index, {\n\t\t\tw: subPatches,\n\t\t\tA: entry\n\t\t});\n\n\t\treturn;\n\t}\n\n\t// this key has already been removed or moved, a duplicate!\n\t_VirtualDom_removeNode(changes, localPatches, key + _VirtualDom_POSTFIX, vnode, index);\n}\n\n\n\n// ADD DOM NODES\n//\n// Each DOM node has an \"index\" assigned in order of traversal. It is important\n// to minimize our crawl over the actual DOM, so these indexes (along with the\n// descendantsCount of virtual nodes) let us skip touching entire subtrees of\n// the DOM if we know there are no patches there.\n\n\nfunction _VirtualDom_addDomNodes(domNode, vNode, patches, eventNode)\n{\n\t_VirtualDom_addDomNodesHelp(domNode, vNode, patches, 0, 0, vNode.b, eventNode);\n}\n\n\n// assumes `patches` is non-empty and indexes increase monotonically.\nfunction _VirtualDom_addDomNodesHelp(domNode, vNode, patches, i, low, high, eventNode)\n{\n\tvar patch = patches[i];\n\tvar index = patch.r;\n\n\twhile (index === low)\n\t{\n\t\tvar patchType = patch.$;\n\n\t\tif (patchType === 1)\n\t\t{\n\t\t\t_VirtualDom_addDomNodes(domNode, vNode.k, patch.s, eventNode);\n\t\t}\n\t\telse if (patchType === 8)\n\t\t{\n\t\t\tpatch.t = domNode;\n\t\t\tpatch.u = eventNode;\n\n\t\t\tvar subPatches = patch.s.w;\n\t\t\tif (subPatches.length > 0)\n\t\t\t{\n\t\t\t\t_VirtualDom_addDomNodesHelp(domNode, vNode, subPatches, 0, low, high, eventNode);\n\t\t\t}\n\t\t}\n\t\telse if (patchType === 9)\n\t\t{\n\t\t\tpatch.t = domNode;\n\t\t\tpatch.u = eventNode;\n\n\t\t\tvar data = patch.s;\n\t\t\tif (data)\n\t\t\t{\n\t\t\t\tdata.A.s = domNode;\n\t\t\t\tvar subPatches = data.w;\n\t\t\t\tif (subPatches.length > 0)\n\t\t\t\t{\n\t\t\t\t\t_VirtualDom_addDomNodesHelp(domNode, vNode, subPatches, 0, low, high, eventNode);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\telse\n\t\t{\n\t\t\tpatch.t = domNode;\n\t\t\tpatch.u = eventNode;\n\t\t}\n\n\t\ti++;\n\n\t\tif (!(patch = patches[i]) || (index = patch.r) > high)\n\t\t{\n\t\t\treturn i;\n\t\t}\n\t}\n\n\tvar tag = vNode.$;\n\n\tif (tag === 4)\n\t{\n\t\tvar subNode = vNode.k;\n\n\t\twhile (subNode.$ === 4)\n\t\t{\n\t\t\tsubNode = subNode.k;\n\t\t}\n\n\t\treturn _VirtualDom_addDomNodesHelp(domNode, subNode, patches, i, low + 1, high, domNode.elm_event_node_ref);\n\t}\n\n\t// tag must be 1 or 2 at this point\n\n\tvar vKids = vNode.e;\n\tvar childNodes = domNode.childNodes;\n\tfor (var j = 0; j < vKids.length; j++)\n\t{\n\t\tlow++;\n\t\tvar vKid = tag === 1 ? vKids[j] : vKids[j].b;\n\t\tvar nextLow = low + (vKid.b || 0);\n\t\tif (low <= index && index <= nextLow)\n\t\t{\n\t\t\ti = _VirtualDom_addDomNodesHelp(childNodes[j], vKid, patches, i, low, nextLow, eventNode);\n\t\t\tif (!(patch = patches[i]) || (index = patch.r) > high)\n\t\t\t{\n\t\t\t\treturn i;\n\t\t\t}\n\t\t}\n\t\tlow = nextLow;\n\t}\n\treturn i;\n}\n\n\n\n// APPLY PATCHES\n\n\nfunction _VirtualDom_applyPatches(rootDomNode, oldVirtualNode, patches, eventNode)\n{\n\tif (patches.length === 0)\n\t{\n\t\treturn rootDomNode;\n\t}\n\n\t_VirtualDom_addDomNodes(rootDomNode, oldVirtualNode, patches, eventNode);\n\treturn _VirtualDom_applyPatchesHelp(rootDomNode, patches);\n}\n\nfunction _VirtualDom_applyPatchesHelp(rootDomNode, patches)\n{\n\tfor (var i = 0; i < patches.length; i++)\n\t{\n\t\tvar patch = patches[i];\n\t\tvar localDomNode = patch.t\n\t\tvar newNode = _VirtualDom_applyPatch(localDomNode, patch);\n\t\tif (localDomNode === rootDomNode)\n\t\t{\n\t\t\trootDomNode = newNode;\n\t\t}\n\t}\n\treturn rootDomNode;\n}\n\nfunction _VirtualDom_applyPatch(domNode, patch)\n{\n\tswitch (patch.$)\n\t{\n\t\tcase 0:\n\t\t\treturn _VirtualDom_applyPatchRedraw(domNode, patch.s, patch.u);\n\n\t\tcase 4:\n\t\t\t_VirtualDom_applyFacts(domNode, patch.u, patch.s);\n\t\t\treturn domNode;\n\n\t\tcase 3:\n\t\t\tdomNode.replaceData(0, domNode.length, patch.s);\n\t\t\treturn domNode;\n\n\t\tcase 1:\n\t\t\treturn _VirtualDom_applyPatchesHelp(domNode, patch.s);\n\n\t\tcase 2:\n\t\t\tif (domNode.elm_event_node_ref)\n\t\t\t{\n\t\t\t\tdomNode.elm_event_node_ref.j = patch.s;\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tdomNode.elm_event_node_ref = { j: patch.s, p: patch.u };\n\t\t\t}\n\t\t\treturn domNode;\n\n\t\tcase 6:\n\t\t\tvar data = patch.s;\n\t\t\tfor (var i = 0; i < data.i; i++)\n\t\t\t{\n\t\t\t\tdomNode.removeChild(domNode.childNodes[data.v]);\n\t\t\t}\n\t\t\treturn domNode;\n\n\t\tcase 7:\n\t\t\tvar data = patch.s;\n\t\t\tvar kids = data.e;\n\t\t\tvar i = data.v;\n\t\t\tvar theEnd = domNode.childNodes[i];\n\t\t\tfor (; i < kids.length; i++)\n\t\t\t{\n\t\t\t\tdomNode.insertBefore(_VirtualDom_render(kids[i], patch.u), theEnd);\n\t\t\t}\n\t\t\treturn domNode;\n\n\t\tcase 9:\n\t\t\tvar data = patch.s;\n\t\t\tif (!data)\n\t\t\t{\n\t\t\t\tdomNode.parentNode.removeChild(domNode);\n\t\t\t\treturn domNode;\n\t\t\t}\n\t\t\tvar entry = data.A;\n\t\t\tif (typeof entry.r !== 'undefined')\n\t\t\t{\n\t\t\t\tdomNode.parentNode.removeChild(domNode);\n\t\t\t}\n\t\t\tentry.s = _VirtualDom_applyPatchesHelp(domNode, data.w);\n\t\t\treturn domNode;\n\n\t\tcase 8:\n\t\t\treturn _VirtualDom_applyPatchReorder(domNode, patch);\n\n\t\tcase 5:\n\t\t\treturn patch.s(domNode);\n\n\t\tdefault:\n\t\t\t_Debug_crash(10); // 'Ran into an unknown patch!'\n\t}\n}\n\n\nfunction _VirtualDom_applyPatchRedraw(domNode, vNode, eventNode)\n{\n\tvar parentNode = domNode.parentNode;\n\tvar newNode = _VirtualDom_render(vNode, eventNode);\n\n\tif (!newNode.elm_event_node_ref)\n\t{\n\t\tnewNode.elm_event_node_ref = domNode.elm_event_node_ref;\n\t}\n\n\tif (parentNode && newNode !== domNode)\n\t{\n\t\tparentNode.replaceChild(newNode, domNode);\n\t}\n\treturn newNode;\n}\n\n\nfunction _VirtualDom_applyPatchReorder(domNode, patch)\n{\n\tvar data = patch.s;\n\n\t// remove end inserts\n\tvar frag = _VirtualDom_applyPatchReorderEndInsertsHelp(data.y, patch);\n\n\t// removals\n\tdomNode = _VirtualDom_applyPatchesHelp(domNode, data.w);\n\n\t// inserts\n\tvar inserts = data.x;\n\tfor (var i = 0; i < inserts.length; i++)\n\t{\n\t\tvar insert = inserts[i];\n\t\tvar entry = insert.A;\n\t\tvar node = entry.c === 2\n\t\t\t? entry.s\n\t\t\t: _VirtualDom_render(entry.z, patch.u);\n\t\tdomNode.insertBefore(node, domNode.childNodes[insert.r]);\n\t}\n\n\t// add end inserts\n\tif (frag)\n\t{\n\t\t_VirtualDom_appendChild(domNode, frag);\n\t}\n\n\treturn domNode;\n}\n\n\nfunction _VirtualDom_applyPatchReorderEndInsertsHelp(endInserts, patch)\n{\n\tif (!endInserts)\n\t{\n\t\treturn;\n\t}\n\n\tvar frag = _VirtualDom_doc.createDocumentFragment();\n\tfor (var i = 0; i < endInserts.length; i++)\n\t{\n\t\tvar insert = endInserts[i];\n\t\tvar entry = insert.A;\n\t\t_VirtualDom_appendChild(frag, entry.c === 2\n\t\t\t? entry.s\n\t\t\t: _VirtualDom_render(entry.z, patch.u)\n\t\t);\n\t}\n\treturn frag;\n}\n\n\nfunction _VirtualDom_virtualize(node)\n{\n\t// TEXT NODES\n\n\tif (node.nodeType === 3)\n\t{\n\t\treturn _VirtualDom_text(node.textContent);\n\t}\n\n\n\t// WEIRD NODES\n\n\tif (node.nodeType !== 1)\n\t{\n\t\treturn _VirtualDom_text('');\n\t}\n\n\n\t// ELEMENT NODES\n\n\tvar attrList = _List_Nil;\n\tvar attrs = node.attributes;\n\tfor (var i = attrs.length; i--; )\n\t{\n\t\tvar attr = attrs[i];\n\t\tvar name = attr.name;\n\t\tvar value = attr.value;\n\t\tattrList = _List_Cons( A2(_VirtualDom_attribute, name, value), attrList );\n\t}\n\n\tvar tag = node.tagName.toLowerCase();\n\tvar kidList = _List_Nil;\n\tvar kids = node.childNodes;\n\n\tfor (var i = kids.length; i--; )\n\t{\n\t\tkidList = _List_Cons(_VirtualDom_virtualize(kids[i]), kidList);\n\t}\n\treturn A3(_VirtualDom_node, tag, attrList, kidList);\n}\n\nfunction _VirtualDom_dekey(keyedNode)\n{\n\tvar keyedKids = keyedNode.e;\n\tvar len = keyedKids.length;\n\tvar kids = new Array(len);\n\tfor (var i = 0; i < len; i++)\n\t{\n\t\tkids[i] = keyedKids[i].b;\n\t}\n\n\treturn {\n\t\t$: 1,\n\t\tc: keyedNode.c,\n\t\td: keyedNode.d,\n\t\te: kids,\n\t\tf: keyedNode.f,\n\t\tb: keyedNode.b\n\t};\n}\n\n\n\n\n// ELEMENT\n\n\nvar _Debugger_element;\n\nvar _Browser_element = _Debugger_element || F4(function(impl, flagDecoder, debugMetadata, args)\n{\n\treturn _Platform_initialize(\n\t\tflagDecoder,\n\t\targs,\n\t\timpl.bv,\n\t\timpl.bL,\n\t\timpl.bJ,\n\t\tfunction(sendToApp, initialModel) {\n\t\t\tvar view = impl.bO;\n\t\t\t/**/\n\t\t\tvar domNode = args['node'];\n\t\t\t//*/\n\t\t\t/**_UNUSED/\n\t\t\tvar domNode = args && args['node'] ? args['node'] : _Debug_crash(0);\n\t\t\t//*/\n\t\t\tvar currNode = _VirtualDom_virtualize(domNode);\n\n\t\t\treturn _Browser_makeAnimator(initialModel, function(model)\n\t\t\t{\n\t\t\t\tvar nextNode = view(model);\n\t\t\t\tvar patches = _VirtualDom_diff(currNode, nextNode);\n\t\t\t\tdomNode = _VirtualDom_applyPatches(domNode, currNode, patches, sendToApp);\n\t\t\t\tcurrNode = nextNode;\n\t\t\t});\n\t\t}\n\t);\n});\n\n\n\n// DOCUMENT\n\n\nvar _Debugger_document;\n\nvar _Browser_document = _Debugger_document || F4(function(impl, flagDecoder, debugMetadata, args)\n{\n\treturn _Platform_initialize(\n\t\tflagDecoder,\n\t\targs,\n\t\timpl.bv,\n\t\timpl.bL,\n\t\timpl.bJ,\n\t\tfunction(sendToApp, initialModel) {\n\t\t\tvar divertHrefToApp = impl.K && impl.K(sendToApp)\n\t\t\tvar view = impl.bO;\n\t\t\tvar title = _VirtualDom_doc.title;\n\t\t\tvar bodyNode = _VirtualDom_doc.body;\n\t\t\tvar currNode = _VirtualDom_virtualize(bodyNode);\n\t\t\treturn _Browser_makeAnimator(initialModel, function(model)\n\t\t\t{\n\t\t\t\t_VirtualDom_divertHrefToApp = divertHrefToApp;\n\t\t\t\tvar doc = view(model);\n\t\t\t\tvar nextNode = _VirtualDom_node('body')(_List_Nil)(doc.be);\n\t\t\t\tvar patches = _VirtualDom_diff(currNode, nextNode);\n\t\t\t\tbodyNode = _VirtualDom_applyPatches(bodyNode, currNode, patches, sendToApp);\n\t\t\t\tcurrNode = nextNode;\n\t\t\t\t_VirtualDom_divertHrefToApp = 0;\n\t\t\t\t(title !== doc.a8) && (_VirtualDom_doc.title = title = doc.a8);\n\t\t\t});\n\t\t}\n\t);\n});\n\n\n\n// ANIMATION\n\n\nvar _Browser_requestAnimationFrame =\n\ttypeof requestAnimationFrame !== 'undefined'\n\t\t? requestAnimationFrame\n\t\t: function(callback) { setTimeout(callback, 1000 / 60); };\n\n\nfunction _Browser_makeAnimator(model, draw)\n{\n\tdraw(model);\n\n\tvar state = 0;\n\n\tfunction updateIfNeeded()\n\t{\n\t\tstate = state === 1\n\t\t\t? 0\n\t\t\t: ( _Browser_requestAnimationFrame(updateIfNeeded), draw(model), 1 );\n\t}\n\n\treturn function(nextModel, isSync)\n\t{\n\t\tmodel = nextModel;\n\n\t\tisSync\n\t\t\t? ( draw(model),\n\t\t\t\tstate === 2 && (state = 1)\n\t\t\t\t)\n\t\t\t: ( state === 0 && _Browser_requestAnimationFrame(updateIfNeeded),\n\t\t\t\tstate = 2\n\t\t\t\t);\n\t};\n}\n\n\n\n// APPLICATION\n\n\nfunction _Browser_application(impl)\n{\n\tvar onUrlChange = impl.bB;\n\tvar onUrlRequest = impl.bC;\n\tvar key = function() { key.a(onUrlChange(_Browser_getUrl())); };\n\n\treturn _Browser_document({\n\t\tK: function(sendToApp)\n\t\t{\n\t\t\tkey.a = sendToApp;\n\t\t\t_Browser_window.addEventListener('popstate', key);\n\t\t\t_Browser_window.navigator.userAgent.indexOf('Trident') < 0 || _Browser_window.addEventListener('hashchange', key);\n\n\t\t\treturn F2(function(domNode, event)\n\t\t\t{\n\t\t\t\tif (!event.ctrlKey && !event.metaKey && !event.shiftKey && event.button < 1 && !domNode.target && !domNode.download)\n\t\t\t\t{\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tvar href = domNode.href;\n\t\t\t\t\tvar curr = _Browser_getUrl();\n\t\t\t\t\tvar next = elm$url$Url$fromString(href).a;\n\t\t\t\t\tsendToApp(onUrlRequest(\n\t\t\t\t\t\t(next\n\t\t\t\t\t\t\t&& curr.a_ === next.a_\n\t\t\t\t\t\t\t&& curr.aA === next.aA\n\t\t\t\t\t\t\t&& curr.aV.a === next.aV.a\n\t\t\t\t\t\t)\n\t\t\t\t\t\t\t? elm$browser$Browser$Internal(next)\n\t\t\t\t\t\t\t: elm$browser$Browser$External(href)\n\t\t\t\t\t));\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\t\tbv: function(flags)\n\t\t{\n\t\t\treturn A3(impl.bv, flags, _Browser_getUrl(), key);\n\t\t},\n\t\tbO: impl.bO,\n\t\tbL: impl.bL,\n\t\tbJ: impl.bJ\n\t});\n}\n\nfunction _Browser_getUrl()\n{\n\treturn elm$url$Url$fromString(_VirtualDom_doc.location.href).a || _Debug_crash(1);\n}\n\nvar _Browser_go = F2(function(key, n)\n{\n\treturn A2(elm$core$Task$perform, elm$core$Basics$never, _Scheduler_binding(function() {\n\t\tn && history.go(n);\n\t\tkey();\n\t}));\n});\n\nvar _Browser_pushUrl = F2(function(key, url)\n{\n\treturn A2(elm$core$Task$perform, elm$core$Basics$never, _Scheduler_binding(function() {\n\t\thistory.pushState({}, '', url);\n\t\tkey();\n\t}));\n});\n\nvar _Browser_replaceUrl = F2(function(key, url)\n{\n\treturn A2(elm$core$Task$perform, elm$core$Basics$never, _Scheduler_binding(function() {\n\t\thistory.replaceState({}, '', url);\n\t\tkey();\n\t}));\n});\n\n\n\n// GLOBAL EVENTS\n\n\nvar _Browser_fakeNode = { addEventListener: function() {}, removeEventListener: function() {} };\nvar _Browser_doc = typeof document !== 'undefined' ? document : _Browser_fakeNode;\nvar _Browser_window = typeof window !== 'undefined' ? window : _Browser_fakeNode;\n\nvar _Browser_on = F3(function(node, eventName, sendToSelf)\n{\n\treturn _Scheduler_spawn(_Scheduler_binding(function(callback)\n\t{\n\t\tfunction handler(event)\t{ _Scheduler_rawSpawn(sendToSelf(event)); }\n\t\tnode.addEventListener(eventName, handler, _VirtualDom_passiveSupported && { passive: true });\n\t\treturn function() { node.removeEventListener(eventName, handler); };\n\t}));\n});\n\nvar _Browser_decodeEvent = F2(function(decoder, event)\n{\n\tvar result = _Json_runHelp(decoder, event);\n\treturn elm$core$Result$isOk(result) ? elm$core$Maybe$Just(result.a) : elm$core$Maybe$Nothing;\n});\n\n\n\n// PAGE VISIBILITY\n\n\nfunction _Browser_visibilityInfo()\n{\n\treturn (typeof _VirtualDom_doc.hidden !== 'undefined')\n\t\t? { bs: 'hidden', H: 'visibilitychange' }\n\t\t:\n\t(typeof _VirtualDom_doc.mozHidden !== 'undefined')\n\t\t? { bs: 'mozHidden', H: 'mozvisibilitychange' }\n\t\t:\n\t(typeof _VirtualDom_doc.msHidden !== 'undefined')\n\t\t? { bs: 'msHidden', H: 'msvisibilitychange' }\n\t\t:\n\t(typeof _VirtualDom_doc.webkitHidden !== 'undefined')\n\t\t? { bs: 'webkitHidden', H: 'webkitvisibilitychange' }\n\t\t: { bs: 'hidden', H: 'visibilitychange' };\n}\n\n\n\n// ANIMATION FRAMES\n\n\nfunction _Browser_rAF()\n{\n\treturn _Scheduler_binding(function(callback)\n\t{\n\t\tvar id = requestAnimationFrame(function() {\n\t\t\tcallback(_Scheduler_succeed(Date.now()));\n\t\t});\n\n\t\treturn function() {\n\t\t\tcancelAnimationFrame(id);\n\t\t};\n\t});\n}\n\n\nfunction _Browser_now()\n{\n\treturn _Scheduler_binding(function(callback)\n\t{\n\t\tcallback(_Scheduler_succeed(Date.now()));\n\t});\n}\n\n\n\n// DOM STUFF\n\n\nfunction _Browser_withNode(id, doStuff)\n{\n\treturn _Scheduler_binding(function(callback)\n\t{\n\t\t_Browser_requestAnimationFrame(function() {\n\t\t\tvar node = document.getElementById(id);\n\t\t\tcallback(node\n\t\t\t\t? _Scheduler_succeed(doStuff(node))\n\t\t\t\t: _Scheduler_fail(elm$browser$Browser$Dom$NotFound(id))\n\t\t\t);\n\t\t});\n\t});\n}\n\n\nfunction _Browser_withWindow(doStuff)\n{\n\treturn _Scheduler_binding(function(callback)\n\t{\n\t\t_Browser_requestAnimationFrame(function() {\n\t\t\tcallback(_Scheduler_succeed(doStuff()));\n\t\t});\n\t});\n}\n\n\n// FOCUS and BLUR\n\n\nvar _Browser_call = F2(function(functionName, id)\n{\n\treturn _Browser_withNode(id, function(node) {\n\t\tnode[functionName]();\n\t\treturn _Utils_Tuple0;\n\t});\n});\n\n\n\n// WINDOW VIEWPORT\n\n\nfunction _Browser_getViewport()\n{\n\treturn {\n\t\tbG: _Browser_getScene(),\n\t\tba: {\n\t\t\tT: _Browser_window.pageXOffset,\n\t\t\tU: _Browser_window.pageYOffset,\n\t\t\tD: _Browser_doc.documentElement.clientWidth,\n\t\t\tbr: _Browser_doc.documentElement.clientHeight\n\t\t}\n\t};\n}\n\nfunction _Browser_getScene()\n{\n\tvar body = _Browser_doc.body;\n\tvar elem = _Browser_doc.documentElement;\n\treturn {\n\t\tD: Math.max(body.scrollWidth, body.offsetWidth, elem.scrollWidth, elem.offsetWidth, elem.clientWidth),\n\t\tbr: Math.max(body.scrollHeight, body.offsetHeight, elem.scrollHeight, elem.offsetHeight, elem.clientHeight)\n\t};\n}\n\nvar _Browser_setViewport = F2(function(x, y)\n{\n\treturn _Browser_withWindow(function()\n\t{\n\t\t_Browser_window.scroll(x, y);\n\t\treturn _Utils_Tuple0;\n\t});\n});\n\n\n\n// ELEMENT VIEWPORT\n\n\nfunction _Browser_getViewportOf(id)\n{\n\treturn _Browser_withNode(id, function(node)\n\t{\n\t\treturn {\n\t\t\tbG: {\n\t\t\t\tD: node.scrollWidth,\n\t\t\t\tbr: node.scrollHeight\n\t\t\t},\n\t\t\tba: {\n\t\t\t\tT: node.scrollLeft,\n\t\t\t\tU: node.scrollTop,\n\t\t\t\tD: node.clientWidth,\n\t\t\t\tbr: node.clientHeight\n\t\t\t}\n\t\t};\n\t});\n}\n\n\nvar _Browser_setViewportOf = F3(function(id, x, y)\n{\n\treturn _Browser_withNode(id, function(node)\n\t{\n\t\tnode.scrollLeft = x;\n\t\tnode.scrollTop = y;\n\t\treturn _Utils_Tuple0;\n\t});\n});\n\n\n\n// ELEMENT\n\n\nfunction _Browser_getElement(id)\n{\n\treturn _Browser_withNode(id, function(node)\n\t{\n\t\tvar rect = node.getBoundingClientRect();\n\t\tvar x = _Browser_window.pageXOffset;\n\t\tvar y = _Browser_window.pageYOffset;\n\t\treturn {\n\t\t\tbG: _Browser_getScene(),\n\t\t\tba: {\n\t\t\t\tT: x,\n\t\t\t\tU: y,\n\t\t\t\tD: _Browser_doc.documentElement.clientWidth,\n\t\t\t\tbr: _Browser_doc.documentElement.clientHeight\n\t\t\t},\n\t\t\tbl: {\n\t\t\t\tT: x + rect.left,\n\t\t\t\tU: y + rect.top,\n\t\t\t\tD: rect.width,\n\t\t\t\tbr: rect.height\n\t\t\t}\n\t\t};\n\t});\n}\n\n\n\n// LOAD and RELOAD\n\n\nfunction _Browser_reload(skipCache)\n{\n\treturn A2(elm$core$Task$perform, elm$core$Basics$never, _Scheduler_binding(function(callback)\n\t{\n\t\t_VirtualDom_doc.location.reload(skipCache);\n\t}));\n}\n\nfunction _Browser_load(url)\n{\n\treturn A2(elm$core$Task$perform, elm$core$Basics$never, _Scheduler_binding(function(callback)\n\t{\n\t\ttry\n\t\t{\n\t\t\t_Browser_window.location = url;\n\t\t}\n\t\tcatch(err)\n\t\t{\n\t\t\t// Only Firefox can throw a NS_ERROR_MALFORMED_URI exception here.\n\t\t\t// Other browsers reload the page, so let's be consistent about that.\n\t\t\t_VirtualDom_doc.location.reload(false);\n\t\t}\n\t}));\n}\n\n\n// CREATE\n\nvar _Regex_never = /.^/;\n\nvar _Regex_fromStringWith = F2(function(options, string)\n{\n\tvar flags = 'g';\n\tif (options.aN) { flags += 'm'; }\n\tif (options.ak) { flags += 'i'; }\n\n\ttry\n\t{\n\t\treturn elm$core$Maybe$Just(new RegExp(string, flags));\n\t}\n\tcatch(error)\n\t{\n\t\treturn elm$core$Maybe$Nothing;\n\t}\n});\n\n\n// USE\n\nvar _Regex_contains = F2(function(re, string)\n{\n\treturn string.match(re) !== null;\n});\n\n\nvar _Regex_findAtMost = F3(function(n, re, str)\n{\n\tvar out = [];\n\tvar number = 0;\n\tvar string = str;\n\tvar lastIndex = re.lastIndex;\n\tvar prevLastIndex = -1;\n\tvar result;\n\twhile (number++ < n && (result = re.exec(string)))\n\t{\n\t\tif (prevLastIndex == re.lastIndex) break;\n\t\tvar i = result.length - 1;\n\t\tvar subs = new Array(i);\n\t\twhile (i > 0)\n\t\t{\n\t\t\tvar submatch = result[i];\n\t\t\tsubs[--i] = submatch\n\t\t\t\t? elm$core$Maybe$Just(submatch)\n\t\t\t\t: elm$core$Maybe$Nothing;\n\t\t}\n\t\tout.push(A4(elm$regex$Regex$Match, result[0], result.index, number, _List_fromArray(subs)));\n\t\tprevLastIndex = re.lastIndex;\n\t}\n\tre.lastIndex = lastIndex;\n\treturn _List_fromArray(out);\n});\n\n\nvar _Regex_replaceAtMost = F4(function(n, re, replacer, string)\n{\n\tvar count = 0;\n\tfunction jsReplacer(match)\n\t{\n\t\tif (count++ >= n)\n\t\t{\n\t\t\treturn match;\n\t\t}\n\t\tvar i = arguments.length - 3;\n\t\tvar submatches = new Array(i);\n\t\twhile (i > 0)\n\t\t{\n\t\t\tvar submatch = arguments[i];\n\t\t\tsubmatches[--i] = submatch\n\t\t\t\t? elm$core$Maybe$Just(submatch)\n\t\t\t\t: elm$core$Maybe$Nothing;\n\t\t}\n\t\treturn replacer(A4(elm$regex$Regex$Match, match, arguments[arguments.length - 2], count, _List_fromArray(submatches)));\n\t}\n\treturn string.replace(re, jsReplacer);\n});\n\nvar _Regex_splitAtMost = F3(function(n, re, str)\n{\n\tvar string = str;\n\tvar out = [];\n\tvar start = re.lastIndex;\n\tvar restoreLastIndex = re.lastIndex;\n\twhile (n--)\n\t{\n\t\tvar result = re.exec(string);\n\t\tif (!result) break;\n\t\tout.push(string.slice(start, result.index));\n\t\tstart = re.lastIndex;\n\t}\n\tout.push(string.slice(start));\n\tre.lastIndex = restoreLastIndex;\n\treturn _List_fromArray(out);\n});\n\nvar _Regex_infinity = Infinity;\n\n\nfunction _Url_percentEncode(string)\n{\n\treturn encodeURIComponent(string);\n}\n\nfunction _Url_percentDecode(string)\n{\n\ttry\n\t{\n\t\treturn elm$core$Maybe$Just(decodeURIComponent(string));\n\t}\n\tcatch (e)\n\t{\n\t\treturn elm$core$Maybe$Nothing;\n\t}\n}var author$project$Demo$SetRoute = function (a) {\n\treturn {$: 2, a: a};\n};\nvar author$project$Demo$UrlRequested = function (a) {\n\treturn {$: 3, a: a};\n};\nvar author$project$Showcase$InputTypes = 0;\nvar author$project$Demo$defaultShowcase = 0;\nvar author$project$Demo$JsonFormMsg = F2(\n\tfunction (a, b) {\n\t\treturn {$: 1, a: a, b: b};\n\t});\nvar author$project$Demo$SetShowcase = function (a) {\n\treturn {$: 0, a: a};\n};\nvar elm$core$Basics$False = 1;\nvar elm$core$Maybe$Nothing = {$: 1};\nvar author$project$Json$Form$UiSpec$blank = {bk: false, bo: false, a4: elm$core$Maybe$Nothing, bb: elm$core$Maybe$Nothing};\nvar author$project$Json$Form$UiSpec$UiSpec = F4(\n\tfunction (widget, rule, expandable, editAsJson) {\n\t\treturn {bk: editAsJson, bo: expandable, a4: rule, bb: widget};\n\t});\nvar author$project$Json$Form$UiSpec$Disable = F2(\n\tfunction (a, b) {\n\t\treturn {$: 1, a: a, b: b};\n\t});\nvar author$project$Json$Form$UiSpec$Enable = F2(\n\tfunction (a, b) {\n\t\treturn {$: 0, a: a, b: b};\n\t});\nvar author$project$Json$Form$UiSpec$Hide = F2(\n\tfunction (a, b) {\n\t\treturn {$: 3, a: a, b: b};\n\t});\nvar author$project$Json$Form$UiSpec$Show = F2(\n\tfunction (a, b) {\n\t\treturn {$: 2, a: a, b: b};\n\t});\nvar elm$core$Basics$apL = F2(\n\tfunction (f, x) {\n\t\treturn f(x);\n\t});\nvar elm$core$Basics$apR = F2(\n\tfunction (x, f) {\n\t\treturn f(x);\n\t});\nvar elm$core$Elm$JsArray$foldr = _JsArray_foldr;\nvar elm$core$Array$foldr = F3(\n\tfunction (func, baseCase, _n0) {\n\t\tvar tree = _n0.c;\n\t\tvar tail = _n0.d;\n\t\tvar helper = F2(\n\t\t\tfunction (node, acc) {\n\t\t\t\tif (!node.$) {\n\t\t\t\t\tvar subTree = node.a;\n\t\t\t\t\treturn A3(elm$core$Elm$JsArray$foldr, helper, acc, subTree);\n\t\t\t\t} else {\n\t\t\t\t\tvar values = node.a;\n\t\t\t\t\treturn A3(elm$core$Elm$JsArray$foldr, func, acc, values);\n\t\t\t\t}\n\t\t\t});\n\t\treturn A3(\n\t\t\telm$core$Elm$JsArray$foldr,\n\t\t\thelper,\n\t\t\tA3(elm$core$Elm$JsArray$foldr, func, baseCase, tail),\n\t\t\ttree);\n\t});\nvar elm$core$Basics$EQ = 1;\nvar elm$core$Basics$LT = 0;\nvar elm$core$List$cons = _List_cons;\nvar elm$core$Array$toList = function (array) {\n\treturn A3(elm$core$Array$foldr, elm$core$List$cons, _List_Nil, array);\n};\nvar elm$core$Basics$GT = 2;\nvar elm$core$Dict$foldr = F3(\n\tfunction (func, acc, t) {\n\t\tfoldr:\n\t\twhile (true) {\n\t\t\tif (t.$ === -2) {\n\t\t\t\treturn acc;\n\t\t\t} else {\n\t\t\t\tvar key = t.b;\n\t\t\t\tvar value = t.c;\n\t\t\t\tvar left = t.d;\n\t\t\t\tvar right = t.e;\n\t\t\t\tvar $temp$func = func,\n\t\t\t\t\t$temp$acc = A3(\n\t\t\t\t\tfunc,\n\t\t\t\t\tkey,\n\t\t\t\t\tvalue,\n\t\t\t\t\tA3(elm$core$Dict$foldr, func, acc, right)),\n\t\t\t\t\t$temp$t = left;\n\t\t\t\tfunc = $temp$func;\n\t\t\t\tacc = $temp$acc;\n\t\t\t\tt = $temp$t;\n\t\t\t\tcontinue foldr;\n\t\t\t}\n\t\t}\n\t});\nvar elm$core$Dict$toList = function (dict) {\n\treturn A3(\n\t\telm$core$Dict$foldr,\n\t\tF3(\n\t\t\tfunction (key, value, list) {\n\t\t\t\treturn A2(\n\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t_Utils_Tuple2(key, value),\n\t\t\t\t\tlist);\n\t\t\t}),\n\t\t_List_Nil,\n\t\tdict);\n};\nvar elm$core$Dict$keys = function (dict) {\n\treturn A3(\n\t\telm$core$Dict$foldr,\n\t\tF3(\n\t\t\tfunction (key, value, keyList) {\n\t\t\t\treturn A2(elm$core$List$cons, key, keyList);\n\t\t\t}),\n\t\t_List_Nil,\n\t\tdict);\n};\nvar elm$core$Set$toList = function (_n0) {\n\tvar dict = _n0;\n\treturn elm$core$Dict$keys(dict);\n};\nvar elm$core$Basics$append = _Utils_append;\nvar elm$core$Basics$eq = _Utils_equal;\nvar elm$core$Array$branchFactor = 32;\nvar elm$core$Array$Array_elm_builtin = F4(\n\tfunction (a, b, c, d) {\n\t\treturn {$: 0, a: a, b: b, c: c, d: d};\n\t});\nvar elm$core$Basics$ceiling = _Basics_ceiling;\nvar elm$core$Basics$fdiv = _Basics_fdiv;\nvar elm$core$Basics$logBase = F2(\n\tfunction (base, number) {\n\t\treturn _Basics_log(number) / _Basics_log(base);\n\t});\nvar elm$core$Basics$toFloat = _Basics_toFloat;\nvar elm$core$Array$shiftStep = elm$core$Basics$ceiling(\n\tA2(elm$core$Basics$logBase, 2, elm$core$Array$branchFactor));\nvar elm$core$Elm$JsArray$empty = _JsArray_empty;\nvar elm$core$Array$empty = A4(elm$core$Array$Array_elm_builtin, 0, elm$core$Array$shiftStep, elm$core$Elm$JsArray$empty, elm$core$Elm$JsArray$empty);\nvar elm$core$Array$Leaf = function (a) {\n\treturn {$: 1, a: a};\n};\nvar elm$core$Array$SubTree = function (a) {\n\treturn {$: 0, a: a};\n};\nvar elm$core$Elm$JsArray$initializeFromList = _JsArray_initializeFromList;\nvar elm$core$List$foldl = F3(\n\tfunction (func, acc, list) {\n\t\tfoldl:\n\t\twhile (true) {\n\t\t\tif (!list.b) {\n\t\t\t\treturn acc;\n\t\t\t} else {\n\t\t\t\tvar x = list.a;\n\t\t\t\tvar xs = list.b;\n\t\t\t\tvar $temp$func = func,\n\t\t\t\t\t$temp$acc = A2(func, x, acc),\n\t\t\t\t\t$temp$list = xs;\n\t\t\t\tfunc = $temp$func;\n\t\t\t\tacc = $temp$acc;\n\t\t\t\tlist = $temp$list;\n\t\t\t\tcontinue foldl;\n\t\t\t}\n\t\t}\n\t});\nvar elm$core$List$reverse = function (list) {\n\treturn A3(elm$core$List$foldl, elm$core$List$cons, _List_Nil, list);\n};\nvar elm$core$Array$compressNodes = F2(\n\tfunction (nodes, acc) {\n\t\tcompressNodes:\n\t\twhile (true) {\n\t\t\tvar _n0 = A2(elm$core$Elm$JsArray$initializeFromList, elm$core$Array$branchFactor, nodes);\n\t\t\tvar node = _n0.a;\n\t\t\tvar remainingNodes = _n0.b;\n\t\t\tvar newAcc = A2(\n\t\t\t\telm$core$List$cons,\n\t\t\t\telm$core$Array$SubTree(node),\n\t\t\t\tacc);\n\t\t\tif (!remainingNodes.b) {\n\t\t\t\treturn elm$core$List$reverse(newAcc);\n\t\t\t} else {\n\t\t\t\tvar $temp$nodes = remainingNodes,\n\t\t\t\t\t$temp$acc = newAcc;\n\t\t\t\tnodes = $temp$nodes;\n\t\t\t\tacc = $temp$acc;\n\t\t\t\tcontinue compressNodes;\n\t\t\t}\n\t\t}\n\t});\nvar elm$core$Tuple$first = function (_n0) {\n\tvar x = _n0.a;\n\treturn x;\n};\nvar elm$core$Array$treeFromBuilder = F2(\n\tfunction (nodeList, nodeListSize) {\n\t\ttreeFromBuilder:\n\t\twhile (true) {\n\t\t\tvar newNodeSize = elm$core$Basics$ceiling(nodeListSize / elm$core$Array$branchFactor);\n\t\t\tif (newNodeSize === 1) {\n\t\t\t\treturn A2(elm$core$Elm$JsArray$initializeFromList, elm$core$Array$branchFactor, nodeList).a;\n\t\t\t} else {\n\t\t\t\tvar $temp$nodeList = A2(elm$core$Array$compressNodes, nodeList, _List_Nil),\n\t\t\t\t\t$temp$nodeListSize = newNodeSize;\n\t\t\t\tnodeList = $temp$nodeList;\n\t\t\t\tnodeListSize = $temp$nodeListSize;\n\t\t\t\tcontinue treeFromBuilder;\n\t\t\t}\n\t\t}\n\t});\nvar elm$core$Basics$add = _Basics_add;\nvar elm$core$Basics$floor = _Basics_floor;\nvar elm$core$Basics$gt = _Utils_gt;\nvar elm$core$Basics$max = F2(\n\tfunction (x, y) {\n\t\treturn (_Utils_cmp(x, y) > 0) ? x : y;\n\t});\nvar elm$core$Basics$mul = _Basics_mul;\nvar elm$core$Basics$sub = _Basics_sub;\nvar elm$core$Elm$JsArray$length = _JsArray_length;\nvar elm$core$Array$builderToArray = F2(\n\tfunction (reverseNodeList, builder) {\n\t\tif (!builder.a) {\n\t\t\treturn A4(\n\t\t\t\telm$core$Array$Array_elm_builtin,\n\t\t\t\telm$core$Elm$JsArray$length(builder.c),\n\t\t\t\telm$core$Array$shiftStep,\n\t\t\t\telm$core$Elm$JsArray$empty,\n\t\t\t\tbuilder.c);\n\t\t} else {\n\t\t\tvar treeLen = builder.a * elm$core$Array$branchFactor;\n\t\t\tvar depth = elm$core$Basics$floor(\n\t\t\t\tA2(elm$core$Basics$logBase, elm$core$Array$branchFactor, treeLen - 1));\n\t\t\tvar correctNodeList = reverseNodeList ? elm$core$List$reverse(builder.d) : builder.d;\n\t\t\tvar tree = A2(elm$core$Array$treeFromBuilder, correctNodeList, builder.a);\n\t\t\treturn A4(\n\t\t\t\telm$core$Array$Array_elm_builtin,\n\t\t\t\telm$core$Elm$JsArray$length(builder.c) + treeLen,\n\t\t\t\tA2(elm$core$Basics$max, 5, depth * elm$core$Array$shiftStep),\n\t\t\t\ttree,\n\t\t\t\tbuilder.c);\n\t\t}\n\t});\nvar elm$core$Basics$idiv = _Basics_idiv;\nvar elm$core$Basics$lt = _Utils_lt;\nvar elm$core$Elm$JsArray$initialize = _JsArray_initialize;\nvar elm$core$Array$initializeHelp = F5(\n\tfunction (fn, fromIndex, len, nodeList, tail) {\n\t\tinitializeHelp:\n\t\twhile (true) {\n\t\t\tif (fromIndex < 0) {\n\t\t\t\treturn A2(\n\t\t\t\t\telm$core$Array$builderToArray,\n\t\t\t\t\tfalse,\n\t\t\t\t\t{d: nodeList, a: (len / elm$core$Array$branchFactor) | 0, c: tail});\n\t\t\t} else {\n\t\t\t\tvar leaf = elm$core$Array$Leaf(\n\t\t\t\t\tA3(elm$core$Elm$JsArray$initialize, elm$core$Array$branchFactor, fromIndex, fn));\n\t\t\t\tvar $temp$fn = fn,\n\t\t\t\t\t$temp$fromIndex = fromIndex - elm$core$Array$branchFactor,\n\t\t\t\t\t$temp$len = len,\n\t\t\t\t\t$temp$nodeList = A2(elm$core$List$cons, leaf, nodeList),\n\t\t\t\t\t$temp$tail = tail;\n\t\t\t\tfn = $temp$fn;\n\t\t\t\tfromIndex = $temp$fromIndex;\n\t\t\t\tlen = $temp$len;\n\t\t\t\tnodeList = $temp$nodeList;\n\t\t\t\ttail = $temp$tail;\n\t\t\t\tcontinue initializeHelp;\n\t\t\t}\n\t\t}\n\t});\nvar elm$core$Basics$le = _Utils_le;\nvar elm$core$Basics$remainderBy = _Basics_remainderBy;\nvar elm$core$Array$initialize = F2(\n\tfunction (len, fn) {\n\t\tif (len <= 0) {\n\t\t\treturn elm$core$Array$empty;\n\t\t} else {\n\t\t\tvar tailLen = len % elm$core$Array$branchFactor;\n\t\t\tvar tail = A3(elm$core$Elm$JsArray$initialize, tailLen, len - tailLen, fn);\n\t\t\tvar initialFromIndex = (len - tailLen) - elm$core$Array$branchFactor;\n\t\t\treturn A5(elm$core$Array$initializeHelp, fn, initialFromIndex, len, _List_Nil, tail);\n\t\t}\n\t});\nvar elm$core$Maybe$Just = function (a) {\n\treturn {$: 0, a: a};\n};\nvar elm$core$Result$Err = function (a) {\n\treturn {$: 1, a: a};\n};\nvar elm$core$Result$Ok = function (a) {\n\treturn {$: 0, a: a};\n};\nvar elm$core$Basics$True = 0;\nvar elm$core$Result$isOk = function (result) {\n\tif (!result.$) {\n\t\treturn true;\n\t} else {\n\t\treturn false;\n\t}\n};\nvar elm$json$Json$Decode$Failure = F2(\n\tfunction (a, b) {\n\t\treturn {$: 3, a: a, b: b};\n\t});\nvar elm$json$Json$Decode$Field = F2(\n\tfunction (a, b) {\n\t\treturn {$: 0, a: a, b: b};\n\t});\nvar elm$json$Json$Decode$Index = F2(\n\tfunction (a, b) {\n\t\treturn {$: 1, a: a, b: b};\n\t});\nvar elm$json$Json$Decode$OneOf = function (a) {\n\treturn {$: 2, a: a};\n};\nvar elm$core$Basics$and = _Basics_and;\nvar elm$core$Basics$or = _Basics_or;\nvar elm$core$Char$toCode = _Char_toCode;\nvar elm$core$Char$isLower = function (_char) {\n\tvar code = elm$core$Char$toCode(_char);\n\treturn (97 <= code) && (code <= 122);\n};\nvar elm$core$Char$isUpper = function (_char) {\n\tvar code = elm$core$Char$toCode(_char);\n\treturn (code <= 90) && (65 <= code);\n};\nvar elm$core$Char$isAlpha = function (_char) {\n\treturn elm$core$Char$isLower(_char) || elm$core$Char$isUpper(_char);\n};\nvar elm$core$Char$isDigit = function (_char) {\n\tvar code = elm$core$Char$toCode(_char);\n\treturn (code <= 57) && (48 <= code);\n};\nvar elm$core$Char$isAlphaNum = function (_char) {\n\treturn elm$core$Char$isLower(_char) || (elm$core$Char$isUpper(_char) || elm$core$Char$isDigit(_char));\n};\nvar elm$core$List$length = function (xs) {\n\treturn A3(\n\t\telm$core$List$foldl,\n\t\tF2(\n\t\t\tfunction (_n0, i) {\n\t\t\t\treturn i + 1;\n\t\t\t}),\n\t\t0,\n\t\txs);\n};\nvar elm$core$List$map2 = _List_map2;\nvar elm$core$List$rangeHelp = F3(\n\tfunction (lo, hi, list) {\n\t\trangeHelp:\n\t\twhile (true) {\n\t\t\tif (_Utils_cmp(lo, hi) < 1) {\n\t\t\t\tvar $temp$lo = lo,\n\t\t\t\t\t$temp$hi = hi - 1,\n\t\t\t\t\t$temp$list = A2(elm$core$List$cons, hi, list);\n\t\t\t\tlo = $temp$lo;\n\t\t\t\thi = $temp$hi;\n\t\t\t\tlist = $temp$list;\n\t\t\t\tcontinue rangeHelp;\n\t\t\t} else {\n\t\t\t\treturn list;\n\t\t\t}\n\t\t}\n\t});\nvar elm$core$List$range = F2(\n\tfunction (lo, hi) {\n\t\treturn A3(elm$core$List$rangeHelp, lo, hi, _List_Nil);\n\t});\nvar elm$core$List$indexedMap = F2(\n\tfunction (f, xs) {\n\t\treturn A3(\n\t\t\telm$core$List$map2,\n\t\t\tf,\n\t\t\tA2(\n\t\t\t\telm$core$List$range,\n\t\t\t\t0,\n\t\t\t\telm$core$List$length(xs) - 1),\n\t\t\txs);\n\t});\nvar elm$core$String$all = _String_all;\nvar elm$core$String$fromInt = _String_fromNumber;\nvar elm$core$String$join = F2(\n\tfunction (sep, chunks) {\n\t\treturn A2(\n\t\t\t_String_join,\n\t\t\tsep,\n\t\t\t_List_toArray(chunks));\n\t});\nvar elm$core$String$uncons = _String_uncons;\nvar elm$core$String$split = F2(\n\tfunction (sep, string) {\n\t\treturn _List_fromArray(\n\t\t\tA2(_String_split, sep, string));\n\t});\nvar elm$json$Json$Decode$indent = function (str) {\n\treturn A2(\n\t\telm$core$String$join,\n\t\t'\\n ',\n\t\tA2(elm$core$String$split, '\\n', str));\n};\nvar elm$json$Json$Encode$encode = _Json_encode;\nvar elm$json$Json$Decode$errorOneOf = F2(\n\tfunction (i, error) {\n\t\treturn '\\n\\n(' + (elm$core$String$fromInt(i + 1) + (') ' + elm$json$Json$Decode$indent(\n\t\t\telm$json$Json$Decode$errorToString(error))));\n\t});\nvar elm$json$Json$Decode$errorToString = function (error) {\n\treturn A2(elm$json$Json$Decode$errorToStringHelp, error, _List_Nil);\n};\nvar elm$json$Json$Decode$errorToStringHelp = F2(\n\tfunction (error, context) {\n\t\terrorToStringHelp:\n\t\twhile (true) {\n\t\t\tswitch (error.$) {\n\t\t\t\tcase 0:\n\t\t\t\t\tvar f = error.a;\n\t\t\t\t\tvar err = error.b;\n\t\t\t\t\tvar isSimple = function () {\n\t\t\t\t\t\tvar _n1 = elm$core$String$uncons(f);\n\t\t\t\t\t\tif (_n1.$ === 1) {\n\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tvar _n2 = _n1.a;\n\t\t\t\t\t\t\tvar _char = _n2.a;\n\t\t\t\t\t\t\tvar rest = _n2.b;\n\t\t\t\t\t\t\treturn elm$core$Char$isAlpha(_char) && A2(elm$core$String$all, elm$core$Char$isAlphaNum, rest);\n\t\t\t\t\t\t}\n\t\t\t\t\t}();\n\t\t\t\t\tvar fieldName = isSimple ? ('.' + f) : ('[\\'' + (f + '\\']'));\n\t\t\t\t\tvar $temp$error = err,\n\t\t\t\t\t\t$temp$context = A2(elm$core$List$cons, fieldName, context);\n\t\t\t\t\terror = $temp$error;\n\t\t\t\t\tcontext = $temp$context;\n\t\t\t\t\tcontinue errorToStringHelp;\n\t\t\t\tcase 1:\n\t\t\t\t\tvar i = error.a;\n\t\t\t\t\tvar err = error.b;\n\t\t\t\t\tvar indexName = '[' + (elm$core$String$fromInt(i) + ']');\n\t\t\t\t\tvar $temp$error = err,\n\t\t\t\t\t\t$temp$context = A2(elm$core$List$cons, indexName, context);\n\t\t\t\t\terror = $temp$error;\n\t\t\t\t\tcontext = $temp$context;\n\t\t\t\t\tcontinue errorToStringHelp;\n\t\t\t\tcase 2:\n\t\t\t\t\tvar errors = error.a;\n\t\t\t\t\tif (!errors.b) {\n\t\t\t\t\t\treturn 'Ran into a Json.Decode.oneOf with no possibilities' + function () {\n\t\t\t\t\t\t\tif (!context.b) {\n\t\t\t\t\t\t\t\treturn '!';\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\treturn ' at json' + A2(\n\t\t\t\t\t\t\t\t\telm$core$String$join,\n\t\t\t\t\t\t\t\t\t'',\n\t\t\t\t\t\t\t\t\telm$core$List$reverse(context));\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}();\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (!errors.b.b) {\n\t\t\t\t\t\t\tvar err = errors.a;\n\t\t\t\t\t\t\tvar $temp$error = err,\n\t\t\t\t\t\t\t\t$temp$context = context;\n\t\t\t\t\t\t\terror = $temp$error;\n\t\t\t\t\t\t\tcontext = $temp$context;\n\t\t\t\t\t\t\tcontinue errorToStringHelp;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tvar starter = function () {\n\t\t\t\t\t\t\t\tif (!context.b) {\n\t\t\t\t\t\t\t\t\treturn 'Json.Decode.oneOf';\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\treturn 'The Json.Decode.oneOf at json' + A2(\n\t\t\t\t\t\t\t\t\t\telm$core$String$join,\n\t\t\t\t\t\t\t\t\t\t'',\n\t\t\t\t\t\t\t\t\t\telm$core$List$reverse(context));\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}();\n\t\t\t\t\t\t\tvar introduction = starter + (' failed in the following ' + (elm$core$String$fromInt(\n\t\t\t\t\t\t\t\telm$core$List$length(errors)) + ' ways:'));\n\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\telm$core$String$join,\n\t\t\t\t\t\t\t\t'\\n\\n',\n\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\t\t\t\tintroduction,\n\t\t\t\t\t\t\t\t\tA2(elm$core$List$indexedMap, elm$json$Json$Decode$errorOneOf, errors)));\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\tdefault:\n\t\t\t\t\tvar msg = error.a;\n\t\t\t\t\tvar json = error.b;\n\t\t\t\t\tvar introduction = function () {\n\t\t\t\t\t\tif (!context.b) {\n\t\t\t\t\t\t\treturn 'Problem with the given value:\\n\\n';\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn 'Problem with the value at json' + (A2(\n\t\t\t\t\t\t\t\telm$core$String$join,\n\t\t\t\t\t\t\t\t'',\n\t\t\t\t\t\t\t\telm$core$List$reverse(context)) + ':\\n\\n ');\n\t\t\t\t\t\t}\n\t\t\t\t\t}();\n\t\t\t\t\treturn introduction + (elm$json$Json$Decode$indent(\n\t\t\t\t\t\tA2(elm$json$Json$Encode$encode, 4, json)) + ('\\n\\n' + msg));\n\t\t\t}\n\t\t}\n\t});\nvar elm$json$Json$Decode$andThen = _Json_andThen;\nvar elm$json$Json$Decode$fail = _Json_fail;\nvar elm$json$Json$Decode$field = _Json_decodeField;\nvar elm$json$Json$Decode$map3 = _Json_map3;\nvar elm$json$Json$Decode$string = _Json_decodeString;\nvar elm$json$Json$Decode$succeed = _Json_succeed;\nvar elm$json$Json$Decode$map2 = _Json_map2;\nvar NoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$custom = elm$json$Json$Decode$map2(elm$core$Basics$apR);\nvar elm$json$Json$Decode$decodeValue = _Json_run;\nvar elm$json$Json$Decode$null = _Json_decodeNull;\nvar elm$json$Json$Decode$oneOf = _Json_oneOf;\nvar elm$json$Json$Decode$value = _Json_decodeValue;\nvar NoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optionalDecoder = F3(\n\tfunction (pathDecoder, valDecoder, fallback) {\n\t\tvar nullOr = function (decoder) {\n\t\t\treturn elm$json$Json$Decode$oneOf(\n\t\t\t\t_List_fromArray(\n\t\t\t\t\t[\n\t\t\t\t\t\tdecoder,\n\t\t\t\t\t\telm$json$Json$Decode$null(fallback)\n\t\t\t\t\t]));\n\t\t};\n\t\tvar handleResult = function (input) {\n\t\t\tvar _n0 = A2(elm$json$Json$Decode$decodeValue, pathDecoder, input);\n\t\t\tif (!_n0.$) {\n\t\t\t\tvar rawValue = _n0.a;\n\t\t\t\tvar _n1 = A2(\n\t\t\t\t\telm$json$Json$Decode$decodeValue,\n\t\t\t\t\tnullOr(valDecoder),\n\t\t\t\t\trawValue);\n\t\t\t\tif (!_n1.$) {\n\t\t\t\t\tvar finalResult = _n1.a;\n\t\t\t\t\treturn elm$json$Json$Decode$succeed(finalResult);\n\t\t\t\t} else {\n\t\t\t\t\tvar finalErr = _n1.a;\n\t\t\t\t\treturn elm$json$Json$Decode$fail(\n\t\t\t\t\t\telm$json$Json$Decode$errorToString(finalErr));\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\treturn elm$json$Json$Decode$succeed(fallback);\n\t\t\t}\n\t\t};\n\t\treturn A2(elm$json$Json$Decode$andThen, handleResult, elm$json$Json$Decode$value);\n\t});\nvar NoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional = F4(\n\tfunction (key, valDecoder, fallback, decoder) {\n\t\treturn A2(\n\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$custom,\n\t\t\tA3(\n\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optionalDecoder,\n\t\t\t\tA2(elm$json$Json$Decode$field, key, elm$json$Json$Decode$value),\n\t\t\t\tvalDecoder,\n\t\t\t\tfallback),\n\t\t\tdecoder);\n\t});\nvar elm$core$List$foldrHelper = F4(\n\tfunction (fn, acc, ctr, ls) {\n\t\tif (!ls.b) {\n\t\t\treturn acc;\n\t\t} else {\n\t\t\tvar a = ls.a;\n\t\t\tvar r1 = ls.b;\n\t\t\tif (!r1.b) {\n\t\t\t\treturn A2(fn, a, acc);\n\t\t\t} else {\n\t\t\t\tvar b = r1.a;\n\t\t\t\tvar r2 = r1.b;\n\t\t\t\tif (!r2.b) {\n\t\t\t\t\treturn A2(\n\t\t\t\t\t\tfn,\n\t\t\t\t\t\ta,\n\t\t\t\t\t\tA2(fn, b, acc));\n\t\t\t\t} else {\n\t\t\t\t\tvar c = r2.a;\n\t\t\t\t\tvar r3 = r2.b;\n\t\t\t\t\tif (!r3.b) {\n\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\tfn,\n\t\t\t\t\t\t\ta,\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\tfn,\n\t\t\t\t\t\t\t\tb,\n\t\t\t\t\t\t\t\tA2(fn, c, acc)));\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvar d = r3.a;\n\t\t\t\t\t\tvar r4 = r3.b;\n\t\t\t\t\t\tvar res = (ctr > 500) ? A3(\n\t\t\t\t\t\t\telm$core$List$foldl,\n\t\t\t\t\t\t\tfn,\n\t\t\t\t\t\t\tacc,\n\t\t\t\t\t\t\telm$core$List$reverse(r4)) : A4(elm$core$List$foldrHelper, fn, acc, ctr + 1, r4);\n\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\tfn,\n\t\t\t\t\t\t\ta,\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\tfn,\n\t\t\t\t\t\t\t\tb,\n\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\tfn,\n\t\t\t\t\t\t\t\t\tc,\n\t\t\t\t\t\t\t\t\tA2(fn, d, res))));\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\nvar elm$core$List$foldr = F3(\n\tfunction (fn, acc, ls) {\n\t\treturn A4(elm$core$List$foldrHelper, fn, acc, 0, ls);\n\t});\nvar elm$json$Json$Decode$at = F2(\n\tfunction (fields, decoder) {\n\t\treturn A3(elm$core$List$foldr, elm$json$Json$Decode$field, decoder, fields);\n\t});\nvar NoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$requiredAt = F3(\n\tfunction (path, valDecoder, decoder) {\n\t\treturn A2(\n\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$custom,\n\t\t\tA2(elm$json$Json$Decode$at, path, valDecoder),\n\t\t\tdecoder);\n\t});\nvar elm$core$Basics$identity = function (x) {\n\treturn x;\n};\nvar elm$json$Json$Decode$bool = _Json_decodeBool;\nvar elm$json$Json$Decode$float = _Json_decodeFloat;\nvar elm$json$Json$Decode$keyValuePairs = _Json_decodeKeyValuePairs;\nvar elm$json$Json$Decode$lazy = function (thunk) {\n\treturn A2(\n\t\telm$json$Json$Decode$andThen,\n\t\tthunk,\n\t\telm$json$Json$Decode$succeed(0));\n};\nvar elm$json$Json$Decode$list = _Json_decodeList;\nvar elm$json$Json$Decode$map = _Json_map1;\nvar elm$json$Json$Decode$maybe = function (decoder) {\n\treturn elm$json$Json$Decode$oneOf(\n\t\t_List_fromArray(\n\t\t\t[\n\t\t\t\tA2(elm$json$Json$Decode$map, elm$core$Maybe$Just, decoder),\n\t\t\t\telm$json$Json$Decode$succeed(elm$core$Maybe$Nothing)\n\t\t\t]));\n};\nvar elm$json$Json$Decode$nullable = function (decoder) {\n\treturn elm$json$Json$Decode$oneOf(\n\t\t_List_fromArray(\n\t\t\t[\n\t\t\t\telm$json$Json$Decode$null(elm$core$Maybe$Nothing),\n\t\t\t\tA2(elm$json$Json$Decode$map, elm$core$Maybe$Just, decoder)\n\t\t\t]));\n};\nvar json_tools$json_schema$Json$Schema$Definitions$AnyType = {$: 0};\nvar json_tools$json_schema$Json$Schema$Definitions$ArrayOfItems = function (a) {\n\treturn {$: 2, a: a};\n};\nvar json_tools$json_schema$Json$Schema$Definitions$ArrayPropNames = function (a) {\n\treturn {$: 0, a: a};\n};\nvar json_tools$json_schema$Json$Schema$Definitions$BoolBoundary = function (a) {\n\treturn {$: 0, a: a};\n};\nvar json_tools$json_schema$Json$Schema$Definitions$BooleanSchema = function (a) {\n\treturn {$: 0, a: a};\n};\nvar json_tools$json_schema$Json$Schema$Definitions$ItemDefinition = function (a) {\n\treturn {$: 1, a: a};\n};\nvar json_tools$json_schema$Json$Schema$Definitions$NoItems = {$: 0};\nvar json_tools$json_schema$Json$Schema$Definitions$NumberBoundary = function (a) {\n\treturn {$: 1, a: a};\n};\nvar json_tools$json_schema$Json$Schema$Definitions$ObjectSchema = function (a) {\n\treturn {$: 1, a: a};\n};\nvar json_tools$json_schema$Json$Schema$Definitions$PropSchema = function (a) {\n\treturn {$: 1, a: a};\n};\nvar json_tools$json_schema$Json$Schema$Definitions$Schemata = elm$core$Basics$identity;\nvar json_tools$json_schema$Json$Schema$Definitions$SingleType = function (a) {\n\treturn {$: 1, a: a};\n};\nvar json_tools$json_schema$Json$Schema$Definitions$SubSchema = function (type_) {\n\treturn function (id) {\n\t\treturn function (ref) {\n\t\t\treturn function (title) {\n\t\t\t\treturn function (description) {\n\t\t\t\t\treturn function (_default) {\n\t\t\t\t\t\treturn function (examples) {\n\t\t\t\t\t\t\treturn function (definitions) {\n\t\t\t\t\t\t\t\treturn function (multipleOf) {\n\t\t\t\t\t\t\t\t\treturn function (maximum) {\n\t\t\t\t\t\t\t\t\t\treturn function (exclusiveMaximum) {\n\t\t\t\t\t\t\t\t\t\t\treturn function (minimum) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn function (exclusiveMinimum) {\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn function (maxLength) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn function (minLength) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn function (pattern) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn function (format) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn function (items) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn function (additionalItems) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn function (maxItems) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn function (minItems) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn function (uniqueItems) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn function (contains) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn function (maxProperties) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn function (minProperties) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn function (required) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn function (properties) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn function (patternProperties) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn function (additionalProperties) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn function (dependencies) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn function (propertyNames) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn function (_enum) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn function (_const) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn function (allOf) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn function (anyOf) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn function (oneOf) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn function (not) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn function (source) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn {ag: additionalItems, ah: additionalProperties, ai: allOf, aj: anyOf, am: _const, an: contains, bh: _default, ar: definitions, I: dependencies, bj: description, bm: _enum, w: examples, aw: exclusiveMaximum, ax: exclusiveMinimum, ay: format, aB: id, bw: items, aC: maxItems, aD: maxLength, aE: maxProperties, aG: maximum, aH: minItems, aI: minLength, aJ: minProperties, aL: minimum, aO: multipleOf, aP: not, aR: oneOf, aS: pattern, aT: patternProperties, aY: properties, aZ: propertyNames, a0: ref, a3: required, ac: source, a8: title, S: type_, a9: uniqueItems};\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t};\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t};\n\t\t};\n\t};\n};\nvar elm$core$List$isEmpty = function (xs) {\n\tif (!xs.b) {\n\t\treturn true;\n\t} else {\n\t\treturn false;\n\t}\n};\nvar json_tools$json_schema$Json$Schema$Definitions$failIfEmpty = function (l) {\n\treturn elm$core$List$isEmpty(l) ? elm$json$Json$Decode$fail('List is empty') : elm$json$Json$Decode$succeed(l);\n};\nvar elm$core$Basics$composeL = F3(\n\tfunction (g, f, x) {\n\t\treturn g(\n\t\t\tf(x));\n\t});\nvar elm$core$List$map = F2(\n\tfunction (f, xs) {\n\t\treturn A3(\n\t\t\telm$core$List$foldr,\n\t\t\tF2(\n\t\t\t\tfunction (x, acc) {\n\t\t\t\t\treturn A2(\n\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\tf(x),\n\t\t\t\t\t\tacc);\n\t\t\t\t}),\n\t\t\t_List_Nil,\n\t\t\txs);\n\t});\nvar elm$core$List$sortBy = _List_sortBy;\nvar elm$core$List$sort = function (xs) {\n\treturn A2(elm$core$List$sortBy, elm$core$Basics$identity, xs);\n};\nvar elm$core$Result$andThen = F2(\n\tfunction (callback, result) {\n\t\tif (!result.$) {\n\t\t\tvar value = result.a;\n\t\t\treturn callback(value);\n\t\t} else {\n\t\t\tvar msg = result.a;\n\t\t\treturn elm$core$Result$Err(msg);\n\t\t}\n\t});\nvar json_tools$json_schema$Json$Schema$Definitions$NullableType = function (a) {\n\treturn {$: 2, a: a};\n};\nvar json_tools$json_schema$Json$Schema$Definitions$UnionType = function (a) {\n\treturn {$: 3, a: a};\n};\nvar json_tools$json_schema$Json$Schema$Definitions$ArrayType = 4;\nvar json_tools$json_schema$Json$Schema$Definitions$BooleanType = 3;\nvar json_tools$json_schema$Json$Schema$Definitions$IntegerType = 0;\nvar json_tools$json_schema$Json$Schema$Definitions$NullType = 6;\nvar json_tools$json_schema$Json$Schema$Definitions$NumberType = 1;\nvar json_tools$json_schema$Json$Schema$Definitions$ObjectType = 5;\nvar json_tools$json_schema$Json$Schema$Definitions$StringType = 2;\nvar json_tools$json_schema$Json$Schema$Definitions$stringToType = function (s) {\n\tswitch (s) {\n\t\tcase 'integer':\n\t\t\treturn elm$core$Result$Ok(0);\n\t\tcase 'number':\n\t\t\treturn elm$core$Result$Ok(1);\n\t\tcase 'string':\n\t\t\treturn elm$core$Result$Ok(2);\n\t\tcase 'boolean':\n\t\t\treturn elm$core$Result$Ok(3);\n\t\tcase 'array':\n\t\t\treturn elm$core$Result$Ok(4);\n\t\tcase 'object':\n\t\t\treturn elm$core$Result$Ok(5);\n\t\tcase 'null':\n\t\t\treturn elm$core$Result$Ok(6);\n\t\tdefault:\n\t\t\treturn elm$core$Result$Err('Unknown type: ' + s);\n\t}\n};\nvar json_tools$json_schema$Json$Schema$Definitions$singleTypeDecoder = function (s) {\n\tvar _n0 = json_tools$json_schema$Json$Schema$Definitions$stringToType(s);\n\tif (!_n0.$) {\n\t\tvar st = _n0.a;\n\t\treturn elm$json$Json$Decode$succeed(st);\n\t} else {\n\t\tvar msg = _n0.a;\n\t\treturn elm$json$Json$Decode$fail(msg);\n\t}\n};\nvar elm$core$Result$map = F2(\n\tfunction (func, ra) {\n\t\tif (!ra.$) {\n\t\t\tvar a = ra.a;\n\t\t\treturn elm$core$Result$Ok(\n\t\t\t\tfunc(a));\n\t\t} else {\n\t\t\tvar e = ra.a;\n\t\t\treturn elm$core$Result$Err(e);\n\t\t}\n\t});\nvar json_tools$json_schema$Util$foldResults = function (results) {\n\treturn A2(\n\t\telm$core$Result$map,\n\t\telm$core$List$reverse,\n\t\tA3(\n\t\t\telm$core$List$foldl,\n\t\t\tfunction (t) {\n\t\t\t\treturn elm$core$Result$andThen(\n\t\t\t\t\tfunction (r) {\n\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\telm$core$Result$map,\n\t\t\t\t\t\t\tfunction (a) {\n\t\t\t\t\t\t\t\treturn A2(elm$core$List$cons, a, r);\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tt);\n\t\t\t\t\t});\n\t\t\t},\n\t\t\telm$core$Result$Ok(_List_Nil),\n\t\t\tresults));\n};\nvar json_tools$json_schema$Util$resultToDecoder = function (res) {\n\tif (!res.$) {\n\t\tvar a = res.a;\n\t\treturn elm$json$Json$Decode$succeed(a);\n\t} else {\n\t\tvar e = res.a;\n\t\treturn elm$json$Json$Decode$fail(e);\n\t}\n};\nvar json_tools$json_schema$Json$Schema$Definitions$multipleTypesDecoder = function (lst) {\n\t_n0$3:\n\twhile (true) {\n\t\tif (lst.b) {\n\t\t\tif (lst.b.b) {\n\t\t\t\tif (!lst.b.b.b) {\n\t\t\t\t\tif (lst.b.a === 'null') {\n\t\t\t\t\t\tvar x = lst.a;\n\t\t\t\t\t\tvar _n1 = lst.b;\n\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\telm$json$Json$Decode$map,\n\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$NullableType,\n\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$singleTypeDecoder(x));\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (lst.a === 'null') {\n\t\t\t\t\t\t\tvar _n2 = lst.b;\n\t\t\t\t\t\t\tvar x = _n2.a;\n\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\telm$json$Json$Decode$map,\n\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$NullableType,\n\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$singleTypeDecoder(x));\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tbreak _n0$3;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tbreak _n0$3;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tvar x = lst.a;\n\t\t\t\treturn A2(\n\t\t\t\t\telm$json$Json$Decode$map,\n\t\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$SingleType,\n\t\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$singleTypeDecoder(x));\n\t\t\t}\n\t\t} else {\n\t\t\tbreak _n0$3;\n\t\t}\n\t}\n\tvar otherList = lst;\n\treturn json_tools$json_schema$Util$resultToDecoder(\n\t\tA2(\n\t\t\telm$core$Result$andThen,\n\t\t\tA2(elm$core$Basics$composeL, elm$core$Result$Ok, json_tools$json_schema$Json$Schema$Definitions$UnionType),\n\t\t\tjson_tools$json_schema$Util$foldResults(\n\t\t\t\tA2(\n\t\t\t\t\telm$core$List$map,\n\t\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$stringToType,\n\t\t\t\t\telm$core$List$sort(otherList)))));\n};\nvar json_tools$json_schema$Json$Schema$Definitions$failIfValuesAreNotUnique = function (l) {\n\treturn elm$json$Json$Decode$succeed(l);\n};\nvar json_tools$json_schema$Json$Schema$Definitions$nonEmptyUniqueArrayOfValuesDecoder = A2(\n\telm$json$Json$Decode$andThen,\n\tjson_tools$json_schema$Json$Schema$Definitions$failIfEmpty,\n\tA2(\n\t\telm$json$Json$Decode$andThen,\n\t\tjson_tools$json_schema$Json$Schema$Definitions$failIfValuesAreNotUnique,\n\t\telm$json$Json$Decode$list(elm$json$Json$Decode$value)));\nvar elm$core$Basics$ge = _Utils_ge;\nvar elm$json$Json$Decode$int = _Json_decodeInt;\nvar json_tools$json_schema$Json$Schema$Definitions$nonNegativeInt = A2(\n\telm$json$Json$Decode$andThen,\n\tfunction (x) {\n\t\treturn (x >= 0) ? elm$json$Json$Decode$succeed(x) : elm$json$Json$Decode$fail('Expected non-negative int');\n\t},\n\telm$json$Json$Decode$int);\nfunction json_tools$json_schema$Json$Schema$Definitions$cyclic$itemsDecoder() {\n\treturn elm$json$Json$Decode$oneOf(\n\t\t_List_fromArray(\n\t\t\t[\n\t\t\t\tA2(\n\t\t\t\telm$json$Json$Decode$map,\n\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$ArrayOfItems,\n\t\t\t\telm$json$Json$Decode$list(\n\t\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$cyclic$decoder())),\n\t\t\t\tA2(\n\t\t\t\telm$json$Json$Decode$map,\n\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$ItemDefinition,\n\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$cyclic$decoder())\n\t\t\t]));\n}\nfunction json_tools$json_schema$Json$Schema$Definitions$cyclic$dependenciesDecoder() {\n\treturn elm$json$Json$Decode$keyValuePairs(\n\t\telm$json$Json$Decode$oneOf(\n\t\t\t_List_fromArray(\n\t\t\t\t[\n\t\t\t\t\tA2(\n\t\t\t\t\telm$json$Json$Decode$map,\n\t\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$ArrayPropNames,\n\t\t\t\t\telm$json$Json$Decode$list(elm$json$Json$Decode$string)),\n\t\t\t\t\tA2(\n\t\t\t\t\telm$json$Json$Decode$map,\n\t\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$PropSchema,\n\t\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$cyclic$decoder())\n\t\t\t\t])));\n}\nfunction json_tools$json_schema$Json$Schema$Definitions$cyclic$decoder() {\n\tvar singleType = A2(elm$json$Json$Decode$andThen, json_tools$json_schema$Json$Schema$Definitions$singleTypeDecoder, elm$json$Json$Decode$string);\n\tvar multipleTypes = A2(\n\t\telm$json$Json$Decode$andThen,\n\t\tjson_tools$json_schema$Json$Schema$Definitions$multipleTypesDecoder,\n\t\telm$json$Json$Decode$list(elm$json$Json$Decode$string));\n\tvar exclusiveBoundaryDecoder = elm$json$Json$Decode$oneOf(\n\t\t_List_fromArray(\n\t\t\t[\n\t\t\t\tA2(elm$json$Json$Decode$map, json_tools$json_schema$Json$Schema$Definitions$BoolBoundary, elm$json$Json$Decode$bool),\n\t\t\t\tA2(elm$json$Json$Decode$map, json_tools$json_schema$Json$Schema$Definitions$NumberBoundary, elm$json$Json$Decode$float)\n\t\t\t]));\n\tvar objectSchemaDecoder = A3(\n\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$requiredAt,\n\t\t_List_Nil,\n\t\telm$json$Json$Decode$value,\n\t\tA4(\n\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t'not',\n\t\t\telm$json$Json$Decode$nullable(\n\t\t\t\telm$json$Json$Decode$lazy(\n\t\t\t\t\tfunction (_n14) {\n\t\t\t\t\t\treturn json_tools$json_schema$Json$Schema$Definitions$cyclic$decoder();\n\t\t\t\t\t})),\n\t\t\telm$core$Maybe$Nothing,\n\t\t\tA4(\n\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t'oneOf',\n\t\t\t\telm$json$Json$Decode$nullable(\n\t\t\t\t\telm$json$Json$Decode$lazy(\n\t\t\t\t\t\tfunction (_n13) {\n\t\t\t\t\t\t\treturn json_tools$json_schema$Json$Schema$Definitions$cyclic$nonEmptyListOfSchemas();\n\t\t\t\t\t\t})),\n\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\tA4(\n\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t'anyOf',\n\t\t\t\t\telm$json$Json$Decode$nullable(\n\t\t\t\t\t\telm$json$Json$Decode$lazy(\n\t\t\t\t\t\t\tfunction (_n12) {\n\t\t\t\t\t\t\t\treturn json_tools$json_schema$Json$Schema$Definitions$cyclic$nonEmptyListOfSchemas();\n\t\t\t\t\t\t\t})),\n\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\tA4(\n\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t'allOf',\n\t\t\t\t\t\telm$json$Json$Decode$nullable(\n\t\t\t\t\t\t\telm$json$Json$Decode$lazy(\n\t\t\t\t\t\t\t\tfunction (_n11) {\n\t\t\t\t\t\t\t\t\treturn json_tools$json_schema$Json$Schema$Definitions$cyclic$nonEmptyListOfSchemas();\n\t\t\t\t\t\t\t\t})),\n\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t'const',\n\t\t\t\t\t\t\tA2(elm$json$Json$Decode$map, elm$core$Maybe$Just, elm$json$Json$Decode$value),\n\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t'enum',\n\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(json_tools$json_schema$Json$Schema$Definitions$nonEmptyUniqueArrayOfValuesDecoder),\n\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t'propertyNames',\n\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(\n\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$lazy(\n\t\t\t\t\t\t\t\t\t\t\tfunction (_n10) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn json_tools$json_schema$Json$Schema$Definitions$cyclic$decoder();\n\t\t\t\t\t\t\t\t\t\t\t})),\n\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t'dependencies',\n\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$lazy(\n\t\t\t\t\t\t\t\t\t\t\tfunction (_n9) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn json_tools$json_schema$Json$Schema$Definitions$cyclic$dependenciesDecoder();\n\t\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\t_List_Nil,\n\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t'additionalProperties',\n\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(\n\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$lazy(\n\t\t\t\t\t\t\t\t\t\t\t\t\tfunction (_n8) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn json_tools$json_schema$Json$Schema$Definitions$cyclic$decoder();\n\t\t\t\t\t\t\t\t\t\t\t\t\t})),\n\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t'patternProperties',\n\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(\n\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$lazy(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tfunction (_n7) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn json_tools$json_schema$Json$Schema$Definitions$cyclic$schemataDecoder();\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t})),\n\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t'properties',\n\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$lazy(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfunction (_n6) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn json_tools$json_schema$Json$Schema$Definitions$cyclic$schemataDecoder();\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t})),\n\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'required',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$list(elm$json$Json$Decode$string)),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'minProperties',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(json_tools$json_schema$Json$Schema$Definitions$nonNegativeInt),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'maxProperties',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(json_tools$json_schema$Json$Schema$Definitions$nonNegativeInt),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'contains',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$lazy(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfunction (_n5) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn json_tools$json_schema$Json$Schema$Definitions$cyclic$decoder();\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t})),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'uniqueItems',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(elm$json$Json$Decode$bool),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'minItems',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(json_tools$json_schema$Json$Schema$Definitions$nonNegativeInt),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'maxItems',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(json_tools$json_schema$Json$Schema$Definitions$nonNegativeInt),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'additionalItems',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$lazy(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfunction (_n4) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn json_tools$json_schema$Json$Schema$Definitions$cyclic$decoder();\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t})),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'items',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$lazy(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfunction (_n3) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn json_tools$json_schema$Json$Schema$Definitions$cyclic$itemsDecoder();\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$NoItems,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'format',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(elm$json$Json$Decode$string),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'pattern',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(elm$json$Json$Decode$string),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'minLength',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(json_tools$json_schema$Json$Schema$Definitions$nonNegativeInt),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'maxLength',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(json_tools$json_schema$Json$Schema$Definitions$nonNegativeInt),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'exclusiveMinimum',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(exclusiveBoundaryDecoder),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'minimum',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(elm$json$Json$Decode$float),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'exclusiveMaximum',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(exclusiveBoundaryDecoder),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'maximum',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(elm$json$Json$Decode$float),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'multipleOf',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(elm$json$Json$Decode$float),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'definitions',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$lazy(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfunction (_n2) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn json_tools$json_schema$Json$Schema$Definitions$cyclic$schemataDecoder();\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t})),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'examples',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$list(elm$json$Json$Decode$value)),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'default',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA2(elm$json$Json$Decode$map, elm$core$Maybe$Just, elm$json$Json$Decode$value),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'description',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(elm$json$Json$Decode$string),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'title',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(elm$json$Json$Decode$string),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'$ref',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$nullable(elm$json$Json$Decode$string),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$custom,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA3(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$map2,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tF2(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfunction (a, b) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn _Utils_eq(a, elm$core$Maybe$Nothing) ? b : a;\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$maybe(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA2(elm$json$Json$Decode$field, '$id', elm$json$Json$Decode$string)),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$maybe(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA2(elm$json$Json$Decode$field, 'id', elm$json$Json$Decode$string))),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tNoRedInk$elm_json_decode_pipeline$Json$Decode$Pipeline$optional,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'type',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$oneOf(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultipleTypes,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA2(elm$json$Json$Decode$map, json_tools$json_schema$Json$Schema$Definitions$SingleType, singleType)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t])),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$AnyType,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$succeed(json_tools$json_schema$Json$Schema$Definitions$SubSchema)))))))))))))))))))))))))))))))))))))));\n\tvar booleanSchemaDecoder = A2(\n\t\telm$json$Json$Decode$andThen,\n\t\tfunction (b) {\n\t\t\treturn b ? elm$json$Json$Decode$succeed(\n\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$BooleanSchema(true)) : elm$json$Json$Decode$succeed(\n\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$BooleanSchema(false));\n\t\t},\n\t\telm$json$Json$Decode$bool);\n\treturn elm$json$Json$Decode$oneOf(\n\t\t_List_fromArray(\n\t\t\t[\n\t\t\t\tbooleanSchemaDecoder,\n\t\t\t\tA2(\n\t\t\t\telm$json$Json$Decode$andThen,\n\t\t\t\tfunction (b) {\n\t\t\t\t\treturn elm$json$Json$Decode$succeed(\n\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$ObjectSchema(b));\n\t\t\t\t},\n\t\t\t\tobjectSchemaDecoder)\n\t\t\t]));\n}\nfunction json_tools$json_schema$Json$Schema$Definitions$cyclic$nonEmptyListOfSchemas() {\n\treturn A2(\n\t\telm$json$Json$Decode$andThen,\n\t\tjson_tools$json_schema$Json$Schema$Definitions$failIfEmpty,\n\t\telm$json$Json$Decode$list(\n\t\t\telm$json$Json$Decode$lazy(\n\t\t\t\tfunction (_n1) {\n\t\t\t\t\treturn json_tools$json_schema$Json$Schema$Definitions$cyclic$decoder();\n\t\t\t\t})));\n}\nfunction json_tools$json_schema$Json$Schema$Definitions$cyclic$schemataDecoder() {\n\treturn A2(\n\t\telm$json$Json$Decode$map,\n\t\telm$core$Basics$identity,\n\t\telm$json$Json$Decode$keyValuePairs(\n\t\t\telm$json$Json$Decode$lazy(\n\t\t\t\tfunction (_n0) {\n\t\t\t\t\treturn json_tools$json_schema$Json$Schema$Definitions$cyclic$decoder();\n\t\t\t\t})));\n}\nvar json_tools$json_schema$Json$Schema$Definitions$itemsDecoder = json_tools$json_schema$Json$Schema$Definitions$cyclic$itemsDecoder();\njson_tools$json_schema$Json$Schema$Definitions$cyclic$itemsDecoder = function () {\n\treturn json_tools$json_schema$Json$Schema$Definitions$itemsDecoder;\n};\nvar json_tools$json_schema$Json$Schema$Definitions$dependenciesDecoder = json_tools$json_schema$Json$Schema$Definitions$cyclic$dependenciesDecoder();\njson_tools$json_schema$Json$Schema$Definitions$cyclic$dependenciesDecoder = function () {\n\treturn json_tools$json_schema$Json$Schema$Definitions$dependenciesDecoder;\n};\nvar json_tools$json_schema$Json$Schema$Definitions$decoder = json_tools$json_schema$Json$Schema$Definitions$cyclic$decoder();\njson_tools$json_schema$Json$Schema$Definitions$cyclic$decoder = function () {\n\treturn json_tools$json_schema$Json$Schema$Definitions$decoder;\n};\nvar json_tools$json_schema$Json$Schema$Definitions$nonEmptyListOfSchemas = json_tools$json_schema$Json$Schema$Definitions$cyclic$nonEmptyListOfSchemas();\njson_tools$json_schema$Json$Schema$Definitions$cyclic$nonEmptyListOfSchemas = function () {\n\treturn json_tools$json_schema$Json$Schema$Definitions$nonEmptyListOfSchemas;\n};\nvar json_tools$json_schema$Json$Schema$Definitions$schemataDecoder = json_tools$json_schema$Json$Schema$Definitions$cyclic$schemataDecoder();\njson_tools$json_schema$Json$Schema$Definitions$cyclic$schemataDecoder = function () {\n\treturn json_tools$json_schema$Json$Schema$Definitions$schemataDecoder;\n};\nvar author$project$Json$Form$UiSpec$ruleDecoder = A4(\n\telm$json$Json$Decode$map3,\n\tF3(\n\t\tfunction (action, ref, condition) {\n\t\t\treturn A2(action, ref, condition);\n\t\t}),\n\tA2(\n\t\telm$json$Json$Decode$andThen,\n\t\tfunction (action) {\n\t\t\treturn (action === 'enable') ? elm$json$Json$Decode$succeed(author$project$Json$Form$UiSpec$Enable) : ((action === 'disable') ? elm$json$Json$Decode$succeed(author$project$Json$Form$UiSpec$Disable) : ((action === 'show') ? elm$json$Json$Decode$succeed(author$project$Json$Form$UiSpec$Show) : ((action === 'hide') ? elm$json$Json$Decode$succeed(author$project$Json$Form$UiSpec$Hide) : elm$json$Json$Decode$fail('Expected one of \\'disable\\', \\'enabled\\', \\'show\\', \\'hide\\', but got unknown action: \\'' + (action + '\\'')))));\n\t\t},\n\t\tA2(elm$json$Json$Decode$field, 'action', elm$json$Json$Decode$string)),\n\tA2(elm$json$Json$Decode$field, 'path', elm$json$Json$Decode$string),\n\tA2(elm$json$Json$Decode$field, 'condition', json_tools$json_schema$Json$Schema$Definitions$decoder));\nvar author$project$Json$Form$UiSpec$MultilineTextField = function (a) {\n\treturn {$: 2, a: a};\n};\nvar author$project$Json$Form$UiSpec$MultilineTextFieldConfig = F2(\n\tfunction (minRows, maxRows) {\n\t\treturn {aF: maxRows, aK: minRows};\n\t});\nvar author$project$Json$Form$UiSpec$PasswordField = {$: 0};\nvar author$project$Json$Form$UiSpec$Switch = {$: 1};\nvar author$project$Json$Form$UiSpec$defaultMultilineTextFieldConfig = {aF: 5, aK: 1};\nvar author$project$Json$Form$UiSpec$widgetDecoder = elm$json$Json$Decode$oneOf(\n\t_List_fromArray(\n\t\t[\n\t\t\tA2(\n\t\t\telm$json$Json$Decode$andThen,\n\t\t\tfunction (widget) {\n\t\t\t\treturn (widget === 'password') ? elm$json$Json$Decode$succeed(author$project$Json$Form$UiSpec$PasswordField) : ((widget === 'switch') ? elm$json$Json$Decode$succeed(author$project$Json$Form$UiSpec$Switch) : ((widget === 'multiline') ? elm$json$Json$Decode$succeed(\n\t\t\t\t\tauthor$project$Json$Form$UiSpec$MultilineTextField(author$project$Json$Form$UiSpec$defaultMultilineTextFieldConfig)) : elm$json$Json$Decode$fail('')));\n\t\t\t},\n\t\t\telm$json$Json$Decode$string),\n\t\t\tA2(\n\t\t\telm$json$Json$Decode$andThen,\n\t\t\tfunction (t) {\n\t\t\t\tswitch (t) {\n\t\t\t\t\tcase 'multiline':\n\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\telm$json$Json$Decode$map,\n\t\t\t\t\t\t\tauthor$project$Json$Form$UiSpec$MultilineTextField,\n\t\t\t\t\t\t\tA3(\n\t\t\t\t\t\t\t\telm$json$Json$Decode$map2,\n\t\t\t\t\t\t\t\tauthor$project$Json$Form$UiSpec$MultilineTextFieldConfig,\n\t\t\t\t\t\t\t\tA2(elm$json$Json$Decode$field, 'minRows', elm$json$Json$Decode$int),\n\t\t\t\t\t\t\t\tA2(elm$json$Json$Decode$field, 'maxRows', elm$json$Json$Decode$int)));\n\t\t\t\t\tcase 'password':\n\t\t\t\t\t\treturn elm$json$Json$Decode$succeed(author$project$Json$Form$UiSpec$PasswordField);\n\t\t\t\t\tcase 'switch':\n\t\t\t\t\t\treturn elm$json$Json$Decode$succeed(author$project$Json$Form$UiSpec$Switch);\n\t\t\t\t\tdefault:\n\t\t\t\t\t\treturn elm$json$Json$Decode$fail('Unknown widget');\n\t\t\t\t}\n\t\t\t},\n\t\t\tA2(elm$json$Json$Decode$field, 'type', elm$json$Json$Decode$string))\n\t\t]));\nvar elm$json$Json$Decode$map4 = _Json_map4;\nvar author$project$Json$Form$UiSpec$decoder = A5(\n\telm$json$Json$Decode$map4,\n\tauthor$project$Json$Form$UiSpec$UiSpec,\n\telm$json$Json$Decode$maybe(\n\t\tA2(elm$json$Json$Decode$field, 'widget', author$project$Json$Form$UiSpec$widgetDecoder)),\n\telm$json$Json$Decode$maybe(\n\t\tA2(elm$json$Json$Decode$field, 'rule', author$project$Json$Form$UiSpec$ruleDecoder)),\n\tA2(\n\t\telm$json$Json$Decode$map,\n\t\tfunction (x) {\n\t\t\tif (!x.$) {\n\t\t\t\tvar bool = x.a;\n\t\t\t\treturn bool;\n\t\t\t} else {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t},\n\t\telm$json$Json$Decode$maybe(\n\t\t\tA2(elm$json$Json$Decode$field, 'expandable', elm$json$Json$Decode$bool))),\n\tA2(\n\t\telm$json$Json$Decode$map,\n\t\tfunction (x) {\n\t\t\tif (!x.$) {\n\t\t\t\tvar bool = x.a;\n\t\t\t\treturn bool;\n\t\t\t} else {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t},\n\t\telm$json$Json$Decode$maybe(\n\t\t\tA2(elm$json$Json$Decode$field, 'editAsJson', elm$json$Json$Decode$bool))));\nvar elm$core$Maybe$andThen = F2(\n\tfunction (callback, maybeValue) {\n\t\tif (!maybeValue.$) {\n\t\t\tvar value = maybeValue.a;\n\t\t\treturn callback(value);\n\t\t} else {\n\t\t\treturn elm$core$Maybe$Nothing;\n\t\t}\n\t});\nvar elm$core$Maybe$withDefault = F2(\n\tfunction (_default, maybe) {\n\t\tif (!maybe.$) {\n\t\t\tvar value = maybe.a;\n\t\t\treturn value;\n\t\t} else {\n\t\t\treturn _default;\n\t\t}\n\t});\nvar elm$core$Result$toMaybe = function (result) {\n\tif (!result.$) {\n\t\tvar v = result.a;\n\t\treturn elm$core$Maybe$Just(v);\n\t} else {\n\t\treturn elm$core$Maybe$Nothing;\n\t}\n};\nvar elm$core$List$maybeCons = F3(\n\tfunction (f, mx, xs) {\n\t\tvar _n0 = f(mx);\n\t\tif (!_n0.$) {\n\t\t\tvar x = _n0.a;\n\t\t\treturn A2(elm$core$List$cons, x, xs);\n\t\t} else {\n\t\t\treturn xs;\n\t\t}\n\t});\nvar elm$core$List$filterMap = F2(\n\tfunction (f, xs) {\n\t\treturn A3(\n\t\t\telm$core$List$foldr,\n\t\t\telm$core$List$maybeCons(f),\n\t\t\t_List_Nil,\n\t\t\txs);\n\t});\nvar elm$core$List$head = function (list) {\n\tif (list.b) {\n\t\tvar x = list.a;\n\t\tvar xs = list.b;\n\t\treturn elm$core$Maybe$Just(x);\n\t} else {\n\t\treturn elm$core$Maybe$Nothing;\n\t}\n};\nvar elm$core$Result$withDefault = F2(\n\tfunction (def, result) {\n\t\tif (!result.$) {\n\t\t\tvar a = result.a;\n\t\t\treturn a;\n\t\t} else {\n\t\t\treturn def;\n\t\t}\n\t});\nvar json_tools$json_schema$Json$Schema$Definitions$getCustomKeywordValue = F2(\n\tfunction (key, schema) {\n\t\tif (schema.$ === 1) {\n\t\t\tvar os = schema.a;\n\t\t\treturn elm$core$List$head(\n\t\t\t\tA2(\n\t\t\t\t\telm$core$List$filterMap,\n\t\t\t\t\tfunction (_n1) {\n\t\t\t\t\t\tvar k = _n1.a;\n\t\t\t\t\t\tvar v = _n1.b;\n\t\t\t\t\t\treturn _Utils_eq(k, key) ? elm$core$Maybe$Just(v) : elm$core$Maybe$Nothing;\n\t\t\t\t\t},\n\t\t\t\t\tA2(\n\t\t\t\t\t\telm$core$Result$withDefault,\n\t\t\t\t\t\t_List_Nil,\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$json$Json$Decode$decodeValue,\n\t\t\t\t\t\t\telm$json$Json$Decode$keyValuePairs(elm$json$Json$Decode$value),\n\t\t\t\t\t\t\tos.ac))));\n\t\t} else {\n\t\t\treturn elm$core$Maybe$Nothing;\n\t\t}\n\t});\nvar author$project$JsonFormUtil$getUiSpec = function (schema) {\n\treturn A2(\n\t\telm$core$Maybe$withDefault,\n\t\tauthor$project$Json$Form$UiSpec$blank,\n\t\tA2(\n\t\t\telm$core$Maybe$andThen,\n\t\t\tfunction (settings) {\n\t\t\t\treturn elm$core$Result$toMaybe(\n\t\t\t\t\tA2(elm$json$Json$Decode$decodeValue, author$project$Json$Form$UiSpec$decoder, settings));\n\t\t\t},\n\t\t\tA2(json_tools$json_schema$Json$Schema$Definitions$getCustomKeywordValue, 'ui', schema)));\n};\nvar author$project$Json$Form$collectMultilinePaths = F3(\n\tfunction (paths, path, schema) {\n\t\tif (schema.$ === 1) {\n\t\t\tvar os = schema.a;\n\t\t\tvar _n1 = os.S;\n\t\t\t_n1$5:\n\t\t\twhile (true) {\n\t\t\t\tif (_n1.$ === 1) {\n\t\t\t\t\tswitch (_n1.a) {\n\t\t\t\t\t\tcase 1:\n\t\t\t\t\t\t\tvar _n2 = _n1.a;\n\t\t\t\t\t\t\treturn paths;\n\t\t\t\t\t\tcase 2:\n\t\t\t\t\t\t\tvar _n3 = _n1.a;\n\t\t\t\t\t\t\tvar _n4 = author$project$JsonFormUtil$getUiSpec(schema).bb;\n\t\t\t\t\t\t\tif ((!_n4.$) && (_n4.a.$ === 2)) {\n\t\t\t\t\t\t\t\treturn A2(elm$core$List$cons, path, paths);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\treturn paths;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\tcase 3:\n\t\t\t\t\t\t\tvar _n5 = _n1.a;\n\t\t\t\t\t\t\treturn paths;\n\t\t\t\t\t\tcase 5:\n\t\t\t\t\t\t\tvar _n6 = _n1.a;\n\t\t\t\t\t\t\tvar _n7 = os.aY;\n\t\t\t\t\t\t\tif (!_n7.$) {\n\t\t\t\t\t\t\t\tvar listProps = _n7.a;\n\t\t\t\t\t\t\t\treturn A3(\n\t\t\t\t\t\t\t\t\telm$core$List$foldl,\n\t\t\t\t\t\t\t\t\tF2(\n\t\t\t\t\t\t\t\t\t\tfunction (_n8, res) {\n\t\t\t\t\t\t\t\t\t\t\tvar key = _n8.a;\n\t\t\t\t\t\t\t\t\t\t\tvar propSchema = _n8.b;\n\t\t\t\t\t\t\t\t\t\t\treturn A3(\n\t\t\t\t\t\t\t\t\t\t\t\tauthor$project$Json$Form$collectMultilinePaths,\n\t\t\t\t\t\t\t\t\t\t\t\tres,\n\t\t\t\t\t\t\t\t\t\t\t\t_Utils_ap(\n\t\t\t\t\t\t\t\t\t\t\t\t\tpath,\n\t\t\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[key])),\n\t\t\t\t\t\t\t\t\t\t\t\tpropSchema);\n\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\tpaths,\n\t\t\t\t\t\t\t\t\tlistProps);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\treturn A2(elm$core$List$cons, path, paths);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\tcase 4:\n\t\t\t\t\t\t\tvar _n9 = _n1.a;\n\t\t\t\t\t\t\treturn paths;\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\tbreak _n1$5;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tbreak _n1$5;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn A2(elm$core$List$cons, path, paths);\n\t\t} else {\n\t\t\treturn A2(elm$core$List$cons, path, paths);\n\t\t}\n\t});\nvar author$project$ErrorMessages$pluralize = F2(\n\tfunction (n, name) {\n\t\tif (n === 1) {\n\t\t\treturn '1 ' + name;\n\t\t} else {\n\t\t\treturn elm$core$String$fromInt(n) + (' ' + (name + 's'));\n\t\t}\n\t});\nvar elm$core$String$fromFloat = _String_fromNumber;\nvar author$project$ErrorMessages$stringifyError = function (e) {\n\tswitch (e.$) {\n\t\tcase 0:\n\t\t\tvar multiplier = e.a;\n\t\t\tvar actual = e.b;\n\t\t\treturn elm$core$String$fromFloat(actual) + (' is not a multiple of ' + elm$core$String$fromFloat(multiplier));\n\t\tcase 1:\n\t\t\tvar max = e.a;\n\t\t\tvar actual = e.b;\n\t\t\treturn elm$core$String$fromFloat(actual) + (' is more than maximum ' + elm$core$String$fromFloat(max));\n\t\tcase 2:\n\t\t\tvar min = e.a;\n\t\t\tvar actual = e.b;\n\t\t\treturn elm$core$String$fromFloat(actual) + (' is less than minimum ' + elm$core$String$fromFloat(min));\n\t\tcase 3:\n\t\t\tvar max = e.a;\n\t\t\tvar actual = e.b;\n\t\t\treturn elm$core$String$fromFloat(actual) + (' is not less than exclusive maximum ' + elm$core$String$fromFloat(max));\n\t\tcase 4:\n\t\t\tvar min = e.a;\n\t\t\tvar actual = e.b;\n\t\t\treturn elm$core$String$fromFloat(actual) + (' is not more than exclusive minimum ' + elm$core$String$fromFloat(min));\n\t\tcase 5:\n\t\t\tvar expected = e.a;\n\t\t\tvar actual = e.b;\n\t\t\treturn 'Longer than ' + A2(author$project$ErrorMessages$pluralize, expected, 'character');\n\t\tcase 6:\n\t\t\tvar expected = e.a;\n\t\t\tvar actual = e.b;\n\t\t\treturn 'Shorter than ' + A2(author$project$ErrorMessages$pluralize, expected, 'character');\n\t\tcase 7:\n\t\t\tvar pattern = e.a;\n\t\t\tvar string = e.b;\n\t\t\treturn 'Does not match pattern ' + pattern;\n\t\tcase 8:\n\t\t\tvar expected = e.a;\n\t\t\tvar actual = e.b;\n\t\t\treturn 'List expected to have at most ' + (A2(author$project$ErrorMessages$pluralize, expected, 'item') + (' but it has ' + A2(author$project$ErrorMessages$pluralize, actual, 'item')));\n\t\tcase 9:\n\t\t\tvar expected = e.a;\n\t\t\tvar actual = e.b;\n\t\t\treturn 'List expected to have at least ' + (A2(author$project$ErrorMessages$pluralize, expected, 'item') + (' but it has ' + A2(author$project$ErrorMessages$pluralize, actual, 'item')));\n\t\tcase 10:\n\t\t\tvar x = e.a;\n\t\t\treturn 'Expected array of unique items, but a duplicate found: ' + A2(elm$json$Json$Encode$encode, 0, x);\n\t\tcase 11:\n\t\t\treturn 'None of array items is valid against the given schema';\n\t\tcase 12:\n\t\t\tvar expected = e.a;\n\t\t\tvar actual = e.b;\n\t\t\treturn 'MaxProperties';\n\t\tcase 13:\n\t\t\tvar expected = e.a;\n\t\t\tvar actual = e.b;\n\t\t\treturn 'MinProperties';\n\t\tcase 15:\n\t\t\treturn 'This property is required';\n\t\tcase 14:\n\t\t\tvar missingPropertyNames = e.a;\n\t\t\treturn '';\n\t\tcase 17:\n\t\t\treturn 'This is an additional property and it is not allowed';\n\t\tcase 16:\n\t\t\tvar extraPropertyNames = e.a;\n\t\t\treturn '';\n\t\tcase 18:\n\t\t\tvar invalidPropertyNames = e.a;\n\t\t\treturn 'Some property names are not passing validation';\n\t\tcase 19:\n\t\t\treturn 'Value does not match enumeration defined in the schema';\n\t\tcase 20:\n\t\t\treturn 'Value does not match const defined in the schema';\n\t\tcase 21:\n\t\t\tvar s = e.a;\n\t\t\treturn s;\n\t\tcase 22:\n\t\t\treturn 'Value does not pass the validation with none of the schemata listed in \\'.oneOf\\'';\n\t\tcase 23:\n\t\t\tvar _int = e.a;\n\t\t\treturn 'Value should pass validation with exactly one schema, but ' + (elm$core$String$fromInt(_int) + ' return a positive result');\n\t\tcase 24:\n\t\t\treturn 'This value expected to fail validation';\n\t\tcase 26:\n\t\t\treturn 'This is not expected to succeed';\n\t\tdefault:\n\t\t\tvar ref = e.a;\n\t\t\treturn 'Reference ' + (ref + ' can not be resolved');\n\t}\n};\nvar elm$core$Dict$RBEmpty_elm_builtin = {$: -2};\nvar elm$core$Dict$empty = elm$core$Dict$RBEmpty_elm_builtin;\nvar elm$core$Basics$compare = _Utils_compare;\nvar elm$core$Dict$get = F2(\n\tfunction (targetKey, dict) {\n\t\tget:\n\t\twhile (true) {\n\t\t\tif (dict.$ === -2) {\n\t\t\t\treturn elm$core$Maybe$Nothing;\n\t\t\t} else {\n\t\t\t\tvar key = dict.b;\n\t\t\t\tvar value = dict.c;\n\t\t\t\tvar left = dict.d;\n\t\t\t\tvar right = dict.e;\n\t\t\t\tvar _n1 = A2(elm$core$Basics$compare, targetKey, key);\n\t\t\t\tswitch (_n1) {\n\t\t\t\t\tcase 0:\n\t\t\t\t\t\tvar $temp$targetKey = targetKey,\n\t\t\t\t\t\t\t$temp$dict = left;\n\t\t\t\t\t\ttargetKey = $temp$targetKey;\n\t\t\t\t\t\tdict = $temp$dict;\n\t\t\t\t\t\tcontinue get;\n\t\t\t\t\tcase 1:\n\t\t\t\t\t\treturn elm$core$Maybe$Just(value);\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tvar $temp$targetKey = targetKey,\n\t\t\t\t\t\t\t$temp$dict = right;\n\t\t\t\t\t\ttargetKey = $temp$targetKey;\n\t\t\t\t\t\tdict = $temp$dict;\n\t\t\t\t\t\tcontinue get;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\nvar elm$core$Dict$Black = 1;\nvar elm$core$Dict$RBNode_elm_builtin = F5(\n\tfunction (a, b, c, d, e) {\n\t\treturn {$: -1, a: a, b: b, c: c, d: d, e: e};\n\t});\nvar elm$core$Dict$Red = 0;\nvar elm$core$Dict$balance = F5(\n\tfunction (color, key, value, left, right) {\n\t\tif ((right.$ === -1) && (!right.a)) {\n\t\t\tvar _n1 = right.a;\n\t\t\tvar rK = right.b;\n\t\t\tvar rV = right.c;\n\t\t\tvar rLeft = right.d;\n\t\t\tvar rRight = right.e;\n\t\t\tif ((left.$ === -1) && (!left.a)) {\n\t\t\t\tvar _n3 = left.a;\n\t\t\t\tvar lK = left.b;\n\t\t\t\tvar lV = left.c;\n\t\t\t\tvar lLeft = left.d;\n\t\t\t\tvar lRight = left.e;\n\t\t\t\treturn A5(\n\t\t\t\t\telm$core$Dict$RBNode_elm_builtin,\n\t\t\t\t\t0,\n\t\t\t\t\tkey,\n\t\t\t\t\tvalue,\n\t\t\t\t\tA5(elm$core$Dict$RBNode_elm_builtin, 1, lK, lV, lLeft, lRight),\n\t\t\t\t\tA5(elm$core$Dict$RBNode_elm_builtin, 1, rK, rV, rLeft, rRight));\n\t\t\t} else {\n\t\t\t\treturn A5(\n\t\t\t\t\telm$core$Dict$RBNode_elm_builtin,\n\t\t\t\t\tcolor,\n\t\t\t\t\trK,\n\t\t\t\t\trV,\n\t\t\t\t\tA5(elm$core$Dict$RBNode_elm_builtin, 0, key, value, left, rLeft),\n\t\t\t\t\trRight);\n\t\t\t}\n\t\t} else {\n\t\t\tif ((((left.$ === -1) && (!left.a)) && (left.d.$ === -1)) && (!left.d.a)) {\n\t\t\t\tvar _n5 = left.a;\n\t\t\t\tvar lK = left.b;\n\t\t\t\tvar lV = left.c;\n\t\t\t\tvar _n6 = left.d;\n\t\t\t\tvar _n7 = _n6.a;\n\t\t\t\tvar llK = _n6.b;\n\t\t\t\tvar llV = _n6.c;\n\t\t\t\tvar llLeft = _n6.d;\n\t\t\t\tvar llRight = _n6.e;\n\t\t\t\tvar lRight = left.e;\n\t\t\t\treturn A5(\n\t\t\t\t\telm$core$Dict$RBNode_elm_builtin,\n\t\t\t\t\t0,\n\t\t\t\t\tlK,\n\t\t\t\t\tlV,\n\t\t\t\t\tA5(elm$core$Dict$RBNode_elm_builtin, 1, llK, llV, llLeft, llRight),\n\t\t\t\t\tA5(elm$core$Dict$RBNode_elm_builtin, 1, key, value, lRight, right));\n\t\t\t} else {\n\t\t\t\treturn A5(elm$core$Dict$RBNode_elm_builtin, color, key, value, left, right);\n\t\t\t}\n\t\t}\n\t});\nvar elm$core$Dict$insertHelp = F3(\n\tfunction (key, value, dict) {\n\t\tif (dict.$ === -2) {\n\t\t\treturn A5(elm$core$Dict$RBNode_elm_builtin, 0, key, value, elm$core$Dict$RBEmpty_elm_builtin, elm$core$Dict$RBEmpty_elm_builtin);\n\t\t} else {\n\t\t\tvar nColor = dict.a;\n\t\t\tvar nKey = dict.b;\n\t\t\tvar nValue = dict.c;\n\t\t\tvar nLeft = dict.d;\n\t\t\tvar nRight = dict.e;\n\t\t\tvar _n1 = A2(elm$core$Basics$compare, key, nKey);\n\t\t\tswitch (_n1) {\n\t\t\t\tcase 0:\n\t\t\t\t\treturn A5(\n\t\t\t\t\t\telm$core$Dict$balance,\n\t\t\t\t\t\tnColor,\n\t\t\t\t\t\tnKey,\n\t\t\t\t\t\tnValue,\n\t\t\t\t\t\tA3(elm$core$Dict$insertHelp, key, value, nLeft),\n\t\t\t\t\t\tnRight);\n\t\t\t\tcase 1:\n\t\t\t\t\treturn A5(elm$core$Dict$RBNode_elm_builtin, nColor, nKey, value, nLeft, nRight);\n\t\t\t\tdefault:\n\t\t\t\t\treturn A5(\n\t\t\t\t\t\telm$core$Dict$balance,\n\t\t\t\t\t\tnColor,\n\t\t\t\t\t\tnKey,\n\t\t\t\t\t\tnValue,\n\t\t\t\t\t\tnLeft,\n\t\t\t\t\t\tA3(elm$core$Dict$insertHelp, key, value, nRight));\n\t\t\t}\n\t\t}\n\t});\nvar elm$core$Dict$insert = F3(\n\tfunction (key, value, dict) {\n\t\tvar _n0 = A3(elm$core$Dict$insertHelp, key, value, dict);\n\t\tif ((_n0.$ === -1) && (!_n0.a)) {\n\t\t\tvar _n1 = _n0.a;\n\t\t\tvar k = _n0.b;\n\t\t\tvar v = _n0.c;\n\t\t\tvar l = _n0.d;\n\t\t\tvar r = _n0.e;\n\t\t\treturn A5(elm$core$Dict$RBNode_elm_builtin, 1, k, v, l, r);\n\t\t} else {\n\t\t\tvar x = _n0;\n\t\t\treturn x;\n\t\t}\n\t});\nvar elm$core$Dict$getMin = function (dict) {\n\tgetMin:\n\twhile (true) {\n\t\tif ((dict.$ === -1) && (dict.d.$ === -1)) {\n\t\t\tvar left = dict.d;\n\t\t\tvar $temp$dict = left;\n\t\t\tdict = $temp$dict;\n\t\t\tcontinue getMin;\n\t\t} else {\n\t\t\treturn dict;\n\t\t}\n\t}\n};\nvar elm$core$Dict$moveRedLeft = function (dict) {\n\tif (((dict.$ === -1) && (dict.d.$ === -1)) && (dict.e.$ === -1)) {\n\t\tif ((dict.e.d.$ === -1) && (!dict.e.d.a)) {\n\t\t\tvar clr = dict.a;\n\t\t\tvar k = dict.b;\n\t\t\tvar v = dict.c;\n\t\t\tvar _n1 = dict.d;\n\t\t\tvar lClr = _n1.a;\n\t\t\tvar lK = _n1.b;\n\t\t\tvar lV = _n1.c;\n\t\t\tvar lLeft = _n1.d;\n\t\t\tvar lRight = _n1.e;\n\t\t\tvar _n2 = dict.e;\n\t\t\tvar rClr = _n2.a;\n\t\t\tvar rK = _n2.b;\n\t\t\tvar rV = _n2.c;\n\t\t\tvar rLeft = _n2.d;\n\t\t\tvar _n3 = rLeft.a;\n\t\t\tvar rlK = rLeft.b;\n\t\t\tvar rlV = rLeft.c;\n\t\t\tvar rlL = rLeft.d;\n\t\t\tvar rlR = rLeft.e;\n\t\t\tvar rRight = _n2.e;\n\t\t\treturn A5(\n\t\t\t\telm$core$Dict$RBNode_elm_builtin,\n\t\t\t\t0,\n\t\t\t\trlK,\n\t\t\t\trlV,\n\t\t\t\tA5(\n\t\t\t\t\telm$core$Dict$RBNode_elm_builtin,\n\t\t\t\t\t1,\n\t\t\t\t\tk,\n\t\t\t\t\tv,\n\t\t\t\t\tA5(elm$core$Dict$RBNode_elm_builtin, 0, lK, lV, lLeft, lRight),\n\t\t\t\t\trlL),\n\t\t\t\tA5(elm$core$Dict$RBNode_elm_builtin, 1, rK, rV, rlR, rRight));\n\t\t} else {\n\t\t\tvar clr = dict.a;\n\t\t\tvar k = dict.b;\n\t\t\tvar v = dict.c;\n\t\t\tvar _n4 = dict.d;\n\t\t\tvar lClr = _n4.a;\n\t\t\tvar lK = _n4.b;\n\t\t\tvar lV = _n4.c;\n\t\t\tvar lLeft = _n4.d;\n\t\t\tvar lRight = _n4.e;\n\t\t\tvar _n5 = dict.e;\n\t\t\tvar rClr = _n5.a;\n\t\t\tvar rK = _n5.b;\n\t\t\tvar rV = _n5.c;\n\t\t\tvar rLeft = _n5.d;\n\t\t\tvar rRight = _n5.e;\n\t\t\tif (clr === 1) {\n\t\t\t\treturn A5(\n\t\t\t\t\telm$core$Dict$RBNode_elm_builtin,\n\t\t\t\t\t1,\n\t\t\t\t\tk,\n\t\t\t\t\tv,\n\t\t\t\t\tA5(elm$core$Dict$RBNode_elm_builtin, 0, lK, lV, lLeft, lRight),\n\t\t\t\t\tA5(elm$core$Dict$RBNode_elm_builtin, 0, rK, rV, rLeft, rRight));\n\t\t\t} else {\n\t\t\t\treturn A5(\n\t\t\t\t\telm$core$Dict$RBNode_elm_builtin,\n\t\t\t\t\t1,\n\t\t\t\t\tk,\n\t\t\t\t\tv,\n\t\t\t\t\tA5(elm$core$Dict$RBNode_elm_builtin, 0, lK, lV, lLeft, lRight),\n\t\t\t\t\tA5(elm$core$Dict$RBNode_elm_builtin, 0, rK, rV, rLeft, rRight));\n\t\t\t}\n\t\t}\n\t} else {\n\t\treturn dict;\n\t}\n};\nvar elm$core$Dict$moveRedRight = function (dict) {\n\tif (((dict.$ === -1) && (dict.d.$ === -1)) && (dict.e.$ === -1)) {\n\t\tif ((dict.d.d.$ === -1) && (!dict.d.d.a)) {\n\t\t\tvar clr = dict.a;\n\t\t\tvar k = dict.b;\n\t\t\tvar v = dict.c;\n\t\t\tvar _n1 = dict.d;\n\t\t\tvar lClr = _n1.a;\n\t\t\tvar lK = _n1.b;\n\t\t\tvar lV = _n1.c;\n\t\t\tvar _n2 = _n1.d;\n\t\t\tvar _n3 = _n2.a;\n\t\t\tvar llK = _n2.b;\n\t\t\tvar llV = _n2.c;\n\t\t\tvar llLeft = _n2.d;\n\t\t\tvar llRight = _n2.e;\n\t\t\tvar lRight = _n1.e;\n\t\t\tvar _n4 = dict.e;\n\t\t\tvar rClr = _n4.a;\n\t\t\tvar rK = _n4.b;\n\t\t\tvar rV = _n4.c;\n\t\t\tvar rLeft = _n4.d;\n\t\t\tvar rRight = _n4.e;\n\t\t\treturn A5(\n\t\t\t\telm$core$Dict$RBNode_elm_builtin,\n\t\t\t\t0,\n\t\t\t\tlK,\n\t\t\t\tlV,\n\t\t\t\tA5(elm$core$Dict$RBNode_elm_builtin, 1, llK, llV, llLeft, llRight),\n\t\t\t\tA5(\n\t\t\t\t\telm$core$Dict$RBNode_elm_builtin,\n\t\t\t\t\t1,\n\t\t\t\t\tk,\n\t\t\t\t\tv,\n\t\t\t\t\tlRight,\n\t\t\t\t\tA5(elm$core$Dict$RBNode_elm_builtin, 0, rK, rV, rLeft, rRight)));\n\t\t} else {\n\t\t\tvar clr = dict.a;\n\t\t\tvar k = dict.b;\n\t\t\tvar v = dict.c;\n\t\t\tvar _n5 = dict.d;\n\t\t\tvar lClr = _n5.a;\n\t\t\tvar lK = _n5.b;\n\t\t\tvar lV = _n5.c;\n\t\t\tvar lLeft = _n5.d;\n\t\t\tvar lRight = _n5.e;\n\t\t\tvar _n6 = dict.e;\n\t\t\tvar rClr = _n6.a;\n\t\t\tvar rK = _n6.b;\n\t\t\tvar rV = _n6.c;\n\t\t\tvar rLeft = _n6.d;\n\t\t\tvar rRight = _n6.e;\n\t\t\tif (clr === 1) {\n\t\t\t\treturn A5(\n\t\t\t\t\telm$core$Dict$RBNode_elm_builtin,\n\t\t\t\t\t1,\n\t\t\t\t\tk,\n\t\t\t\t\tv,\n\t\t\t\t\tA5(elm$core$Dict$RBNode_elm_builtin, 0, lK, lV, lLeft, lRight),\n\t\t\t\t\tA5(elm$core$Dict$RBNode_elm_builtin, 0, rK, rV, rLeft, rRight));\n\t\t\t} else {\n\t\t\t\treturn A5(\n\t\t\t\t\telm$core$Dict$RBNode_elm_builtin,\n\t\t\t\t\t1,\n\t\t\t\t\tk,\n\t\t\t\t\tv,\n\t\t\t\t\tA5(elm$core$Dict$RBNode_elm_builtin, 0, lK, lV, lLeft, lRight),\n\t\t\t\t\tA5(elm$core$Dict$RBNode_elm_builtin, 0, rK, rV, rLeft, rRight));\n\t\t\t}\n\t\t}\n\t} else {\n\t\treturn dict;\n\t}\n};\nvar elm$core$Dict$removeHelpPrepEQGT = F7(\n\tfunction (targetKey, dict, color, key, value, left, right) {\n\t\tif ((left.$ === -1) && (!left.a)) {\n\t\t\tvar _n1 = left.a;\n\t\t\tvar lK = left.b;\n\t\t\tvar lV = left.c;\n\t\t\tvar lLeft = left.d;\n\t\t\tvar lRight = left.e;\n\t\t\treturn A5(\n\t\t\t\telm$core$Dict$RBNode_elm_builtin,\n\t\t\t\tcolor,\n\t\t\t\tlK,\n\t\t\t\tlV,\n\t\t\t\tlLeft,\n\t\t\t\tA5(elm$core$Dict$RBNode_elm_builtin, 0, key, value, lRight, right));\n\t\t} else {\n\t\t\t_n2$2:\n\t\t\twhile (true) {\n\t\t\t\tif ((right.$ === -1) && (right.a === 1)) {\n\t\t\t\t\tif (right.d.$ === -1) {\n\t\t\t\t\t\tif (right.d.a === 1) {\n\t\t\t\t\t\t\tvar _n3 = right.a;\n\t\t\t\t\t\t\tvar _n4 = right.d;\n\t\t\t\t\t\t\tvar _n5 = _n4.a;\n\t\t\t\t\t\t\treturn elm$core$Dict$moveRedRight(dict);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tbreak _n2$2;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvar _n6 = right.a;\n\t\t\t\t\t\tvar _n7 = right.d;\n\t\t\t\t\t\treturn elm$core$Dict$moveRedRight(dict);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tbreak _n2$2;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn dict;\n\t\t}\n\t});\nvar elm$core$Dict$removeMin = function (dict) {\n\tif ((dict.$ === -1) && (dict.d.$ === -1)) {\n\t\tvar color = dict.a;\n\t\tvar key = dict.b;\n\t\tvar value = dict.c;\n\t\tvar left = dict.d;\n\t\tvar lColor = left.a;\n\t\tvar lLeft = left.d;\n\t\tvar right = dict.e;\n\t\tif (lColor === 1) {\n\t\t\tif ((lLeft.$ === -1) && (!lLeft.a)) {\n\t\t\t\tvar _n3 = lLeft.a;\n\t\t\t\treturn A5(\n\t\t\t\t\telm$core$Dict$RBNode_elm_builtin,\n\t\t\t\t\tcolor,\n\t\t\t\t\tkey,\n\t\t\t\t\tvalue,\n\t\t\t\t\telm$core$Dict$removeMin(left),\n\t\t\t\t\tright);\n\t\t\t} else {\n\t\t\t\tvar _n4 = elm$core$Dict$moveRedLeft(dict);\n\t\t\t\tif (_n4.$ === -1) {\n\t\t\t\t\tvar nColor = _n4.a;\n\t\t\t\t\tvar nKey = _n4.b;\n\t\t\t\t\tvar nValue = _n4.c;\n\t\t\t\t\tvar nLeft = _n4.d;\n\t\t\t\t\tvar nRight = _n4.e;\n\t\t\t\t\treturn A5(\n\t\t\t\t\t\telm$core$Dict$balance,\n\t\t\t\t\t\tnColor,\n\t\t\t\t\t\tnKey,\n\t\t\t\t\t\tnValue,\n\t\t\t\t\t\telm$core$Dict$removeMin(nLeft),\n\t\t\t\t\t\tnRight);\n\t\t\t\t} else {\n\t\t\t\t\treturn elm$core$Dict$RBEmpty_elm_builtin;\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\treturn A5(\n\t\t\t\telm$core$Dict$RBNode_elm_builtin,\n\t\t\t\tcolor,\n\t\t\t\tkey,\n\t\t\t\tvalue,\n\t\t\t\telm$core$Dict$removeMin(left),\n\t\t\t\tright);\n\t\t}\n\t} else {\n\t\treturn elm$core$Dict$RBEmpty_elm_builtin;\n\t}\n};\nvar elm$core$Dict$removeHelp = F2(\n\tfunction (targetKey, dict) {\n\t\tif (dict.$ === -2) {\n\t\t\treturn elm$core$Dict$RBEmpty_elm_builtin;\n\t\t} else {\n\t\t\tvar color = dict.a;\n\t\t\tvar key = dict.b;\n\t\t\tvar value = dict.c;\n\t\t\tvar left = dict.d;\n\t\t\tvar right = dict.e;\n\t\t\tif (_Utils_cmp(targetKey, key) < 0) {\n\t\t\t\tif ((left.$ === -1) && (left.a === 1)) {\n\t\t\t\t\tvar _n4 = left.a;\n\t\t\t\t\tvar lLeft = left.d;\n\t\t\t\t\tif ((lLeft.$ === -1) && (!lLeft.a)) {\n\t\t\t\t\t\tvar _n6 = lLeft.a;\n\t\t\t\t\t\treturn A5(\n\t\t\t\t\t\t\telm$core$Dict$RBNode_elm_builtin,\n\t\t\t\t\t\t\tcolor,\n\t\t\t\t\t\t\tkey,\n\t\t\t\t\t\t\tvalue,\n\t\t\t\t\t\t\tA2(elm$core$Dict$removeHelp, targetKey, left),\n\t\t\t\t\t\t\tright);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvar _n7 = elm$core$Dict$moveRedLeft(dict);\n\t\t\t\t\t\tif (_n7.$ === -1) {\n\t\t\t\t\t\t\tvar nColor = _n7.a;\n\t\t\t\t\t\t\tvar nKey = _n7.b;\n\t\t\t\t\t\t\tvar nValue = _n7.c;\n\t\t\t\t\t\t\tvar nLeft = _n7.d;\n\t\t\t\t\t\t\tvar nRight = _n7.e;\n\t\t\t\t\t\t\treturn A5(\n\t\t\t\t\t\t\t\telm$core$Dict$balance,\n\t\t\t\t\t\t\t\tnColor,\n\t\t\t\t\t\t\t\tnKey,\n\t\t\t\t\t\t\t\tnValue,\n\t\t\t\t\t\t\t\tA2(elm$core$Dict$removeHelp, targetKey, nLeft),\n\t\t\t\t\t\t\t\tnRight);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn elm$core$Dict$RBEmpty_elm_builtin;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\treturn A5(\n\t\t\t\t\t\telm$core$Dict$RBNode_elm_builtin,\n\t\t\t\t\t\tcolor,\n\t\t\t\t\t\tkey,\n\t\t\t\t\t\tvalue,\n\t\t\t\t\t\tA2(elm$core$Dict$removeHelp, targetKey, left),\n\t\t\t\t\t\tright);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\treturn A2(\n\t\t\t\t\telm$core$Dict$removeHelpEQGT,\n\t\t\t\t\ttargetKey,\n\t\t\t\t\tA7(elm$core$Dict$removeHelpPrepEQGT, targetKey, dict, color, key, value, left, right));\n\t\t\t}\n\t\t}\n\t});\nvar elm$core$Dict$removeHelpEQGT = F2(\n\tfunction (targetKey, dict) {\n\t\tif (dict.$ === -1) {\n\t\t\tvar color = dict.a;\n\t\t\tvar key = dict.b;\n\t\t\tvar value = dict.c;\n\t\t\tvar left = dict.d;\n\t\t\tvar right = dict.e;\n\t\t\tif (_Utils_eq(targetKey, key)) {\n\t\t\t\tvar _n1 = elm$core$Dict$getMin(right);\n\t\t\t\tif (_n1.$ === -1) {\n\t\t\t\t\tvar minKey = _n1.b;\n\t\t\t\t\tvar minValue = _n1.c;\n\t\t\t\t\treturn A5(\n\t\t\t\t\t\telm$core$Dict$balance,\n\t\t\t\t\t\tcolor,\n\t\t\t\t\t\tminKey,\n\t\t\t\t\t\tminValue,\n\t\t\t\t\t\tleft,\n\t\t\t\t\t\telm$core$Dict$removeMin(right));\n\t\t\t\t} else {\n\t\t\t\t\treturn elm$core$Dict$RBEmpty_elm_builtin;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\treturn A5(\n\t\t\t\t\telm$core$Dict$balance,\n\t\t\t\t\tcolor,\n\t\t\t\t\tkey,\n\t\t\t\t\tvalue,\n\t\t\t\t\tleft,\n\t\t\t\t\tA2(elm$core$Dict$removeHelp, targetKey, right));\n\t\t\t}\n\t\t} else {\n\t\t\treturn elm$core$Dict$RBEmpty_elm_builtin;\n\t\t}\n\t});\nvar elm$core$Dict$remove = F2(\n\tfunction (key, dict) {\n\t\tvar _n0 = A2(elm$core$Dict$removeHelp, key, dict);\n\t\tif ((_n0.$ === -1) && (!_n0.a)) {\n\t\t\tvar _n1 = _n0.a;\n\t\t\tvar k = _n0.b;\n\t\t\tvar v = _n0.c;\n\t\t\tvar l = _n0.d;\n\t\t\tvar r = _n0.e;\n\t\t\treturn A5(elm$core$Dict$RBNode_elm_builtin, 1, k, v, l, r);\n\t\t} else {\n\t\t\tvar x = _n0;\n\t\t\treturn x;\n\t\t}\n\t});\nvar elm$core$Dict$update = F3(\n\tfunction (targetKey, alter, dictionary) {\n\t\tvar _n0 = alter(\n\t\t\tA2(elm$core$Dict$get, targetKey, dictionary));\n\t\tif (!_n0.$) {\n\t\t\tvar value = _n0.a;\n\t\t\treturn A3(elm$core$Dict$insert, targetKey, value, dictionary);\n\t\t} else {\n\t\t\treturn A2(elm$core$Dict$remove, targetKey, dictionary);\n\t\t}\n\t});\nvar author$project$Json$Form$dictFromListErrors = function (list) {\n\treturn A3(\n\t\telm$core$List$foldl,\n\t\tF2(\n\t\t\tfunction (error, dict) {\n\t\t\t\treturn A3(\n\t\t\t\t\telm$core$Dict$update,\n\t\t\t\t\terror.bx.bE,\n\t\t\t\t\tfunction (listDetails) {\n\t\t\t\t\t\treturn elm$core$Maybe$Just(\n\t\t\t\t\t\t\tfunction () {\n\t\t\t\t\t\t\t\tif (!listDetails.$) {\n\t\t\t\t\t\t\t\t\tvar l = listDetails.a;\n\t\t\t\t\t\t\t\t\treturn _Utils_ap(\n\t\t\t\t\t\t\t\t\t\tl,\n\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\tauthor$project$ErrorMessages$stringifyError(error.at)\n\t\t\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\treturn _List_fromArray(\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\tauthor$project$ErrorMessages$stringifyError(error.at)\n\t\t\t\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}());\n\t\t\t\t\t},\n\t\t\t\t\tdict);\n\t\t\t}),\n\t\telm$core$Dict$empty,\n\t\tlist);\n};\nvar author$project$Json$Form$Definitions$GetViewport = F2(\n\tfunction (a, b) {\n\t\treturn {$: 11, a: a, b: b};\n\t});\nvar elm$browser$Browser$External = function (a) {\n\treturn {$: 1, a: a};\n};\nvar elm$browser$Browser$Internal = function (a) {\n\treturn {$: 0, a: a};\n};\nvar elm$browser$Browser$Dom$NotFound = elm$core$Basics$identity;\nvar elm$core$Basics$never = function (_n0) {\n\tnever:\n\twhile (true) {\n\t\tvar nvr = _n0;\n\t\tvar $temp$_n0 = nvr;\n\t\t_n0 = $temp$_n0;\n\t\tcontinue never;\n\t}\n};\nvar elm$core$Task$Perform = elm$core$Basics$identity;\nvar elm$core$Task$succeed = _Scheduler_succeed;\nvar elm$core$Task$init = elm$core$Task$succeed(0);\nvar elm$core$Task$andThen = _Scheduler_andThen;\nvar elm$core$Task$map = F2(\n\tfunction (func, taskA) {\n\t\treturn A2(\n\t\t\telm$core$Task$andThen,\n\t\t\tfunction (a) {\n\t\t\t\treturn elm$core$Task$succeed(\n\t\t\t\t\tfunc(a));\n\t\t\t},\n\t\t\ttaskA);\n\t});\nvar elm$core$Task$map2 = F3(\n\tfunction (func, taskA, taskB) {\n\t\treturn A2(\n\t\t\telm$core$Task$andThen,\n\t\t\tfunction (a) {\n\t\t\t\treturn A2(\n\t\t\t\t\telm$core$Task$andThen,\n\t\t\t\t\tfunction (b) {\n\t\t\t\t\t\treturn elm$core$Task$succeed(\n\t\t\t\t\t\t\tA2(func, a, b));\n\t\t\t\t\t},\n\t\t\t\t\ttaskB);\n\t\t\t},\n\t\t\ttaskA);\n\t});\nvar elm$core$Task$sequence = function (tasks) {\n\treturn A3(\n\t\telm$core$List$foldr,\n\t\telm$core$Task$map2(elm$core$List$cons),\n\t\telm$core$Task$succeed(_List_Nil),\n\t\ttasks);\n};\nvar elm$core$Platform$sendToApp = _Platform_sendToApp;\nvar elm$core$Task$spawnCmd = F2(\n\tfunction (router, _n0) {\n\t\tvar task = _n0;\n\t\treturn _Scheduler_spawn(\n\t\t\tA2(\n\t\t\t\telm$core$Task$andThen,\n\t\t\t\telm$core$Platform$sendToApp(router),\n\t\t\t\ttask));\n\t});\nvar elm$core$Task$onEffects = F3(\n\tfunction (router, commands, state) {\n\t\treturn A2(\n\t\t\telm$core$Task$map,\n\t\t\tfunction (_n0) {\n\t\t\t\treturn 0;\n\t\t\t},\n\t\t\telm$core$Task$sequence(\n\t\t\t\tA2(\n\t\t\t\t\telm$core$List$map,\n\t\t\t\t\telm$core$Task$spawnCmd(router),\n\t\t\t\t\tcommands)));\n\t});\nvar elm$core$Task$onSelfMsg = F3(\n\tfunction (_n0, _n1, _n2) {\n\t\treturn elm$core$Task$succeed(0);\n\t});\nvar elm$core$Task$cmdMap = F2(\n\tfunction (tagger, _n0) {\n\t\tvar task = _n0;\n\t\treturn A2(elm$core$Task$map, tagger, task);\n\t});\n_Platform_effectManagers['Task'] = _Platform_createManager(elm$core$Task$init, elm$core$Task$onEffects, elm$core$Task$onSelfMsg, elm$core$Task$cmdMap);\nvar elm$core$Task$command = _Platform_leaf('Task');\nvar elm$core$Task$perform = F2(\n\tfunction (toMessage, task) {\n\t\treturn elm$core$Task$command(\n\t\t\tA2(elm$core$Task$map, toMessage, task));\n\t});\nvar elm$virtual_dom$VirtualDom$toHandlerInt = function (handler) {\n\tswitch (handler.$) {\n\t\tcase 0:\n\t\t\treturn 0;\n\t\tcase 1:\n\t\t\treturn 1;\n\t\tcase 2:\n\t\t\treturn 2;\n\t\tdefault:\n\t\t\treturn 3;\n\t}\n};\nvar elm$core$String$length = _String_length;\nvar elm$core$String$slice = _String_slice;\nvar elm$core$String$dropLeft = F2(\n\tfunction (n, string) {\n\t\treturn (n < 1) ? string : A3(\n\t\t\telm$core$String$slice,\n\t\t\tn,\n\t\t\telm$core$String$length(string),\n\t\t\tstring);\n\t});\nvar elm$core$String$startsWith = _String_startsWith;\nvar elm$url$Url$Http = 0;\nvar elm$url$Url$Https = 1;\nvar elm$core$String$indexes = _String_indexes;\nvar elm$core$String$isEmpty = function (string) {\n\treturn string === '';\n};\nvar elm$core$String$left = F2(\n\tfunction (n, string) {\n\t\treturn (n < 1) ? '' : A3(elm$core$String$slice, 0, n, string);\n\t});\nvar elm$core$String$contains = _String_contains;\nvar elm$core$String$toInt = _String_toInt;\nvar elm$url$Url$Url = F6(\n\tfunction (protocol, host, port_, path, query, fragment) {\n\t\treturn {az: fragment, aA: host, bE: path, aV: port_, a_: protocol, a$: query};\n\t});\nvar elm$url$Url$chompBeforePath = F5(\n\tfunction (protocol, path, params, frag, str) {\n\t\tif (elm$core$String$isEmpty(str) || A2(elm$core$String$contains, '@', str)) {\n\t\t\treturn elm$core$Maybe$Nothing;\n\t\t} else {\n\t\t\tvar _n0 = A2(elm$core$String$indexes, ':', str);\n\t\t\tif (!_n0.b) {\n\t\t\t\treturn elm$core$Maybe$Just(\n\t\t\t\t\tA6(elm$url$Url$Url, protocol, str, elm$core$Maybe$Nothing, path, params, frag));\n\t\t\t} else {\n\t\t\t\tif (!_n0.b.b) {\n\t\t\t\t\tvar i = _n0.a;\n\t\t\t\t\tvar _n1 = elm$core$String$toInt(\n\t\t\t\t\t\tA2(elm$core$String$dropLeft, i + 1, str));\n\t\t\t\t\tif (_n1.$ === 1) {\n\t\t\t\t\t\treturn elm$core$Maybe$Nothing;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvar port_ = _n1;\n\t\t\t\t\t\treturn elm$core$Maybe$Just(\n\t\t\t\t\t\t\tA6(\n\t\t\t\t\t\t\t\telm$url$Url$Url,\n\t\t\t\t\t\t\t\tprotocol,\n\t\t\t\t\t\t\t\tA2(elm$core$String$left, i, str),\n\t\t\t\t\t\t\t\tport_,\n\t\t\t\t\t\t\t\tpath,\n\t\t\t\t\t\t\t\tparams,\n\t\t\t\t\t\t\t\tfrag));\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\treturn elm$core$Maybe$Nothing;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\nvar elm$url$Url$chompBeforeQuery = F4(\n\tfunction (protocol, params, frag, str) {\n\t\tif (elm$core$String$isEmpty(str)) {\n\t\t\treturn elm$core$Maybe$Nothing;\n\t\t} else {\n\t\t\tvar _n0 = A2(elm$core$String$indexes, '/', str);\n\t\t\tif (!_n0.b) {\n\t\t\t\treturn A5(elm$url$Url$chompBeforePath, protocol, '/', params, frag, str);\n\t\t\t} else {\n\t\t\t\tvar i = _n0.a;\n\t\t\t\treturn A5(\n\t\t\t\t\telm$url$Url$chompBeforePath,\n\t\t\t\t\tprotocol,\n\t\t\t\t\tA2(elm$core$String$dropLeft, i, str),\n\t\t\t\t\tparams,\n\t\t\t\t\tfrag,\n\t\t\t\t\tA2(elm$core$String$left, i, str));\n\t\t\t}\n\t\t}\n\t});\nvar elm$url$Url$chompBeforeFragment = F3(\n\tfunction (protocol, frag, str) {\n\t\tif (elm$core$String$isEmpty(str)) {\n\t\t\treturn elm$core$Maybe$Nothing;\n\t\t} else {\n\t\t\tvar _n0 = A2(elm$core$String$indexes, '?', str);\n\t\t\tif (!_n0.b) {\n\t\t\t\treturn A4(elm$url$Url$chompBeforeQuery, protocol, elm$core$Maybe$Nothing, frag, str);\n\t\t\t} else {\n\t\t\t\tvar i = _n0.a;\n\t\t\t\treturn A4(\n\t\t\t\t\telm$url$Url$chompBeforeQuery,\n\t\t\t\t\tprotocol,\n\t\t\t\t\telm$core$Maybe$Just(\n\t\t\t\t\t\tA2(elm$core$String$dropLeft, i + 1, str)),\n\t\t\t\t\tfrag,\n\t\t\t\t\tA2(elm$core$String$left, i, str));\n\t\t\t}\n\t\t}\n\t});\nvar elm$url$Url$chompAfterProtocol = F2(\n\tfunction (protocol, str) {\n\t\tif (elm$core$String$isEmpty(str)) {\n\t\t\treturn elm$core$Maybe$Nothing;\n\t\t} else {\n\t\t\tvar _n0 = A2(elm$core$String$indexes, '#', str);\n\t\t\tif (!_n0.b) {\n\t\t\t\treturn A3(elm$url$Url$chompBeforeFragment, protocol, elm$core$Maybe$Nothing, str);\n\t\t\t} else {\n\t\t\t\tvar i = _n0.a;\n\t\t\t\treturn A3(\n\t\t\t\t\telm$url$Url$chompBeforeFragment,\n\t\t\t\t\tprotocol,\n\t\t\t\t\telm$core$Maybe$Just(\n\t\t\t\t\t\tA2(elm$core$String$dropLeft, i + 1, str)),\n\t\t\t\t\tA2(elm$core$String$left, i, str));\n\t\t\t}\n\t\t}\n\t});\nvar elm$url$Url$fromString = function (str) {\n\treturn A2(elm$core$String$startsWith, 'http://', str) ? A2(\n\t\telm$url$Url$chompAfterProtocol,\n\t\t0,\n\t\tA2(elm$core$String$dropLeft, 7, str)) : (A2(elm$core$String$startsWith, 'https://', str) ? A2(\n\t\telm$url$Url$chompAfterProtocol,\n\t\t1,\n\t\tA2(elm$core$String$dropLeft, 8, str)) : elm$core$Maybe$Nothing);\n};\nvar elm$browser$Browser$Dom$getViewportOf = _Browser_getViewportOf;\nvar elm$core$Platform$Cmd$batch = _Platform_batch;\nvar elm$core$Set$Set_elm_builtin = elm$core$Basics$identity;\nvar elm$core$Set$empty = elm$core$Dict$empty;\nvar elm$core$Task$onError = _Scheduler_onError;\nvar elm$core$Task$attempt = F2(\n\tfunction (resultToMessage, task) {\n\t\treturn elm$core$Task$command(\n\t\t\tA2(\n\t\t\t\telm$core$Task$onError,\n\t\t\t\tA2(\n\t\t\t\t\telm$core$Basics$composeL,\n\t\t\t\t\tA2(elm$core$Basics$composeL, elm$core$Task$succeed, resultToMessage),\n\t\t\t\t\telm$core$Result$Err),\n\t\t\t\tA2(\n\t\t\t\t\telm$core$Task$andThen,\n\t\t\t\t\tA2(\n\t\t\t\t\t\telm$core$Basics$composeL,\n\t\t\t\t\t\tA2(elm$core$Basics$composeL, elm$core$Task$succeed, resultToMessage),\n\t\t\t\t\t\telm$core$Result$Ok),\n\t\t\t\t\ttask)));\n\t});\nvar elm$json$Json$Encode$object = function (pairs) {\n\treturn _Json_wrap(\n\t\tA3(\n\t\t\telm$core$List$foldl,\n\t\t\tF2(\n\t\t\t\tfunction (_n0, obj) {\n\t\t\t\t\tvar k = _n0.a;\n\t\t\t\t\tvar v = _n0.b;\n\t\t\t\t\treturn A3(_Json_addField, k, v, obj);\n\t\t\t\t}),\n\t\t\t_Json_emptyObject(0),\n\t\t\tpairs));\n};\nvar elm$core$List$filter = F2(\n\tfunction (isGood, list) {\n\t\treturn A3(\n\t\t\telm$core$List$foldr,\n\t\t\tF2(\n\t\t\t\tfunction (x, xs) {\n\t\t\t\t\treturn isGood(x) ? A2(elm$core$List$cons, x, xs) : xs;\n\t\t\t\t}),\n\t\t\t_List_Nil,\n\t\t\tlist);\n\t});\nvar json_tools$json_schema$Json$Schema$Helpers$makeJsonPointer = function (_n0) {\n\tvar isPointer = _n0.a;\n\tvar ns = _n0.b;\n\tvar path = _n0.c;\n\treturn isPointer ? _Utils_ap(\n\t\tns,\n\t\tA2(\n\t\t\telm$core$String$join,\n\t\t\t'/',\n\t\t\tA2(elm$core$List$cons, '#', path))) : (elm$core$List$isEmpty(path) ? ns : _Utils_ap(\n\t\tns + '#',\n\t\tA2(elm$core$String$join, '/', path)));\n};\nvar elm$core$Basics$neq = _Utils_notEqual;\nvar elm$core$List$drop = F2(\n\tfunction (n, list) {\n\t\tdrop:\n\t\twhile (true) {\n\t\t\tif (n <= 0) {\n\t\t\t\treturn list;\n\t\t\t} else {\n\t\t\t\tif (!list.b) {\n\t\t\t\t\treturn list;\n\t\t\t\t} else {\n\t\t\t\t\tvar x = list.a;\n\t\t\t\t\tvar xs = list.b;\n\t\t\t\t\tvar $temp$n = n - 1,\n\t\t\t\t\t\t$temp$list = xs;\n\t\t\t\t\tn = $temp$n;\n\t\t\t\t\tlist = $temp$list;\n\t\t\t\t\tcontinue drop;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\nvar elm$regex$Regex$Match = F4(\n\tfunction (match, index, number, submatches) {\n\t\treturn {bu: index, by: match, bA: number, bI: submatches};\n\t});\nvar elm$regex$Regex$contains = _Regex_contains;\nvar elm$regex$Regex$replace = _Regex_replaceAtMost(_Regex_infinity);\nvar elm$regex$Regex$fromStringWith = _Regex_fromStringWith;\nvar elm$regex$Regex$fromString = function (string) {\n\treturn A2(\n\t\telm$regex$Regex$fromStringWith,\n\t\t{ak: false, aN: false},\n\t\tstring);\n};\nvar elm$regex$Regex$never = _Regex_never;\nvar json_tools$json_schema$Ref$absoluteUri = A2(\n\telm$core$Maybe$withDefault,\n\telm$regex$Regex$never,\n\telm$regex$Regex$fromString('\\\\/\\\\/|^\\\\/'));\nvar json_tools$json_schema$Ref$lastFragment = A2(\n\telm$core$Maybe$withDefault,\n\telm$regex$Regex$never,\n\telm$regex$Regex$fromString('\\\\/[^\\\\/]*$'));\nvar json_tools$json_schema$Ref$percent = A2(\n\telm$core$Maybe$withDefault,\n\telm$regex$Regex$never,\n\telm$regex$Regex$fromString('%25'));\nvar json_tools$json_schema$Ref$slash = A2(\n\telm$core$Maybe$withDefault,\n\telm$regex$Regex$never,\n\telm$regex$Regex$fromString('~1'));\nvar json_tools$json_schema$Ref$tilde = A2(\n\telm$core$Maybe$withDefault,\n\telm$regex$Regex$never,\n\telm$regex$Regex$fromString('~0'));\nvar json_tools$json_schema$Ref$unescapeJsonPathFragment = function (s) {\n\treturn A3(\n\t\telm$regex$Regex$replace,\n\t\tjson_tools$json_schema$Ref$percent,\n\t\tfunction (_n2) {\n\t\t\treturn '%';\n\t\t},\n\t\tA3(\n\t\t\telm$regex$Regex$replace,\n\t\t\tjson_tools$json_schema$Ref$slash,\n\t\t\tfunction (_n1) {\n\t\t\t\treturn '/';\n\t\t\t},\n\t\t\tA3(\n\t\t\t\telm$regex$Regex$replace,\n\t\t\t\tjson_tools$json_schema$Ref$tilde,\n\t\t\t\tfunction (_n0) {\n\t\t\t\t\treturn '~';\n\t\t\t\t},\n\t\t\t\ts)));\n};\nvar json_tools$json_schema$Ref$parseJsonPointer = F2(\n\tfunction (pointer, currentNamespace) {\n\t\tvar isAbsolute = elm$regex$Regex$contains(json_tools$json_schema$Ref$absoluteUri);\n\t\tvar hasFragments = elm$regex$Regex$contains(json_tools$json_schema$Ref$lastFragment);\n\t\tvar merge = F2(\n\t\t\tfunction (base, relative) {\n\t\t\t\treturn (isAbsolute(base) && hasFragments(base)) ? A3(\n\t\t\t\t\telm$regex$Regex$replace,\n\t\t\t\t\tjson_tools$json_schema$Ref$lastFragment,\n\t\t\t\t\tfunction (_n3) {\n\t\t\t\t\t\treturn '/' + relative;\n\t\t\t\t\t},\n\t\t\t\t\tbase) : relative;\n\t\t\t});\n\t\tvar _n0 = function () {\n\t\t\tvar _n1 = A2(elm$core$String$split, '#', pointer);\n\t\t\tif (!_n1.b) {\n\t\t\t\treturn _Utils_Tuple2(currentNamespace, '');\n\t\t\t} else {\n\t\t\t\tif (!_n1.b.b) {\n\t\t\t\t\tvar a = _n1.a;\n\t\t\t\t\treturn (a === '') ? _Utils_Tuple2(currentNamespace, '') : (isAbsolute(a) ? _Utils_Tuple2(a, '') : _Utils_Tuple2(\n\t\t\t\t\t\tA2(merge, currentNamespace, a),\n\t\t\t\t\t\t''));\n\t\t\t\t} else {\n\t\t\t\t\tvar a = _n1.a;\n\t\t\t\t\tvar _n2 = _n1.b;\n\t\t\t\t\tvar b = _n2.a;\n\t\t\t\t\treturn (a === '') ? _Utils_Tuple2(currentNamespace, b) : (isAbsolute(a) ? _Utils_Tuple2(a, b) : _Utils_Tuple2(\n\t\t\t\t\t\tA2(merge, currentNamespace, a),\n\t\t\t\t\t\tb));\n\t\t\t\t}\n\t\t\t}\n\t\t}();\n\t\tvar ns = _n0.a;\n\t\tvar hash = _n0.b;\n\t\tvar isPointer = hasFragments(hash);\n\t\treturn _Utils_Tuple3(\n\t\t\tisPointer,\n\t\t\tns,\n\t\t\tisPointer ? A2(\n\t\t\t\telm$core$List$map,\n\t\t\t\tjson_tools$json_schema$Ref$unescapeJsonPathFragment,\n\t\t\t\tA2(\n\t\t\t\t\telm$core$List$drop,\n\t\t\t\t\t1,\n\t\t\t\t\tA2(elm$core$String$split, '/', hash))) : ((hash !== '') ? _List_fromArray(\n\t\t\t\t[hash]) : _List_Nil));\n\t});\nvar json_tools$json_schema$Json$Schema$Helpers$collectIds = F2(\n\tfunction (schema, pool) {\n\t\tvar manageId = F4(\n\t\t\tfunction (ns, source, poolLocal, obj) {\n\t\t\t\tvar _n6 = A2(\n\t\t\t\t\telm$core$List$filter,\n\t\t\t\t\tfunction (_n7) {\n\t\t\t\t\t\tvar name = _n7.a;\n\t\t\t\t\t\treturn (name === 'id') || (name === '$id');\n\t\t\t\t\t},\n\t\t\t\t\tobj);\n\t\t\t\tif (_n6.b) {\n\t\t\t\t\tvar _n8 = _n6.a;\n\t\t\t\t\tvar val = _n8.b;\n\t\t\t\t\treturn A2(\n\t\t\t\t\t\telm$core$Result$withDefault,\n\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\tobj,\n\t\t\t\t\t\t\t_Utils_Tuple2(poolLocal, ns)),\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$core$Result$map,\n\t\t\t\t\t\t\tfunction (id) {\n\t\t\t\t\t\t\t\tvar _n9 = A2(json_tools$json_schema$Ref$parseJsonPointer, id, ns);\n\t\t\t\t\t\t\t\tvar isPointer = _n9.a;\n\t\t\t\t\t\t\t\tvar newNs = _n9.b;\n\t\t\t\t\t\t\t\tvar path = _n9.c;\n\t\t\t\t\t\t\t\tvar _n10 = A2(elm$json$Json$Decode$decodeValue, json_tools$json_schema$Json$Schema$Definitions$decoder, source);\n\t\t\t\t\t\t\t\tif (!_n10.$) {\n\t\t\t\t\t\t\t\t\tvar schemaLocal = _n10.a;\n\t\t\t\t\t\t\t\t\treturn _Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\tobj,\n\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\tA3(\n\t\t\t\t\t\t\t\t\t\t\t\telm$core$Dict$insert,\n\t\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Helpers$makeJsonPointer(\n\t\t\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple3(isPointer, newNs, path)),\n\t\t\t\t\t\t\t\t\t\t\t\tschemaLocal,\n\t\t\t\t\t\t\t\t\t\t\t\tpoolLocal),\n\t\t\t\t\t\t\t\t\t\t\tnewNs));\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\treturn _Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\tobj,\n\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(poolLocal, ns));\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tA2(elm$json$Json$Decode$decodeValue, elm$json$Json$Decode$string, val)));\n\t\t\t\t} else {\n\t\t\t\t\treturn _Utils_Tuple2(\n\t\t\t\t\t\tobj,\n\t\t\t\t\t\t_Utils_Tuple2(poolLocal, ns));\n\t\t\t\t}\n\t\t\t});\n\t\tvar walkValue = F2(\n\t\t\tfunction (source, _n0) {\n\t\t\t\tvar poolLocal = _n0.a;\n\t\t\t\tvar ns = _n0.b;\n\t\t\t\treturn function (_n1) {\n\t\t\t\t\tvar list = _n1.a;\n\t\t\t\t\tvar res = _n1.b;\n\t\t\t\t\treturn A3(\n\t\t\t\t\t\telm$core$List$foldl,\n\t\t\t\t\t\tfunction (_n2) {\n\t\t\t\t\t\t\tvar key = _n2.a;\n\t\t\t\t\t\t\tvar val = _n2.b;\n\t\t\t\t\t\t\treturn walkValue(val);\n\t\t\t\t\t\t},\n\t\t\t\t\t\tres,\n\t\t\t\t\t\tlist);\n\t\t\t\t}(\n\t\t\t\t\tA4(\n\t\t\t\t\t\tmanageId,\n\t\t\t\t\t\tns,\n\t\t\t\t\t\tsource,\n\t\t\t\t\t\tpoolLocal,\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$core$Result$withDefault,\n\t\t\t\t\t\t\t_List_Nil,\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\telm$json$Json$Decode$decodeValue,\n\t\t\t\t\t\t\t\telm$json$Json$Decode$keyValuePairs(elm$json$Json$Decode$value),\n\t\t\t\t\t\t\t\tsource))));\n\t\t\t});\n\t\tvar getNs = function (uri) {\n\t\t\tif (!uri.$) {\n\t\t\t\tvar s = uri.a;\n\t\t\t\tvar _n5 = A2(json_tools$json_schema$Ref$parseJsonPointer, s, '');\n\t\t\t\tvar isPointer = _n5.a;\n\t\t\t\tvar ns = _n5.b;\n\t\t\t\treturn ns;\n\t\t\t} else {\n\t\t\t\treturn '';\n\t\t\t}\n\t\t};\n\t\tif (schema.$ === 1) {\n\t\t\tvar id = schema.a.aB;\n\t\t\tvar source = schema.a.ac;\n\t\t\treturn A2(\n\t\t\t\twalkValue,\n\t\t\t\tsource,\n\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\tpool,\n\t\t\t\t\tgetNs(id)));\n\t\t} else {\n\t\t\treturn _Utils_Tuple2(pool, '');\n\t\t}\n\t});\nvar elm$core$Basics$composeR = F3(\n\tfunction (f, g, x) {\n\t\treturn g(\n\t\t\tf(x));\n\t});\nvar elm$core$Basics$negate = function (n) {\n\treturn -n;\n};\nvar elm$core$Basics$not = _Basics_not;\nvar elm$core$Dict$fromList = function (assocs) {\n\treturn A3(\n\t\telm$core$List$foldl,\n\t\tF2(\n\t\t\tfunction (_n0, dict) {\n\t\t\t\tvar key = _n0.a;\n\t\t\t\tvar value = _n0.b;\n\t\t\t\treturn A3(elm$core$Dict$insert, key, value, dict);\n\t\t\t}),\n\t\telm$core$Dict$empty,\n\t\tassocs);\n};\nvar elm$core$Dict$member = F2(\n\tfunction (key, dict) {\n\t\tvar _n0 = A2(elm$core$Dict$get, key, dict);\n\t\tif (!_n0.$) {\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t});\nvar elm$core$List$any = F2(\n\tfunction (isOkay, list) {\n\t\tany:\n\t\twhile (true) {\n\t\t\tif (!list.b) {\n\t\t\t\treturn false;\n\t\t\t} else {\n\t\t\t\tvar x = list.a;\n\t\t\t\tvar xs = list.b;\n\t\t\t\tif (isOkay(x)) {\n\t\t\t\t\treturn true;\n\t\t\t\t} else {\n\t\t\t\t\tvar $temp$isOkay = isOkay,\n\t\t\t\t\t\t$temp$list = xs;\n\t\t\t\t\tisOkay = $temp$isOkay;\n\t\t\t\t\tlist = $temp$list;\n\t\t\t\t\tcontinue any;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\nvar elm$core$List$append = F2(\n\tfunction (xs, ys) {\n\t\tif (!ys.b) {\n\t\t\treturn xs;\n\t\t} else {\n\t\t\treturn A3(elm$core$List$foldr, elm$core$List$cons, ys, xs);\n\t\t}\n\t});\nvar elm$core$List$concat = function (lists) {\n\treturn A3(elm$core$List$foldr, elm$core$List$append, _List_Nil, lists);\n};\nvar elm$core$List$member = F2(\n\tfunction (x, xs) {\n\t\treturn A2(\n\t\t\telm$core$List$any,\n\t\t\tfunction (a) {\n\t\t\t\treturn _Utils_eq(a, x);\n\t\t\t},\n\t\t\txs);\n\t});\nvar elm$core$Result$mapError = F2(\n\tfunction (f, result) {\n\t\tif (!result.$) {\n\t\t\tvar v = result.a;\n\t\t\treturn elm$core$Result$Ok(v);\n\t\t} else {\n\t\t\tvar e = result.a;\n\t\t\treturn elm$core$Result$Err(\n\t\t\t\tf(e));\n\t\t}\n\t});\nvar elm$json$Json$Encode$string = _Json_wrap;\nvar json_tools$json_schema$Json$Schema$Definitions$blankSubSchema = {\n\tag: elm$core$Maybe$Nothing,\n\tah: elm$core$Maybe$Nothing,\n\tai: elm$core$Maybe$Nothing,\n\taj: elm$core$Maybe$Nothing,\n\tam: elm$core$Maybe$Nothing,\n\tan: elm$core$Maybe$Nothing,\n\tbh: elm$core$Maybe$Nothing,\n\tar: elm$core$Maybe$Nothing,\n\tI: _List_Nil,\n\tbj: elm$core$Maybe$Nothing,\n\tbm: elm$core$Maybe$Nothing,\n\tw: elm$core$Maybe$Nothing,\n\taw: elm$core$Maybe$Nothing,\n\tax: elm$core$Maybe$Nothing,\n\tay: elm$core$Maybe$Nothing,\n\taB: elm$core$Maybe$Nothing,\n\tbw: json_tools$json_schema$Json$Schema$Definitions$NoItems,\n\taC: elm$core$Maybe$Nothing,\n\taD: elm$core$Maybe$Nothing,\n\taE: elm$core$Maybe$Nothing,\n\taG: elm$core$Maybe$Nothing,\n\taH: elm$core$Maybe$Nothing,\n\taI: elm$core$Maybe$Nothing,\n\taJ: elm$core$Maybe$Nothing,\n\taL: elm$core$Maybe$Nothing,\n\taO: elm$core$Maybe$Nothing,\n\taP: elm$core$Maybe$Nothing,\n\taR: elm$core$Maybe$Nothing,\n\taS: elm$core$Maybe$Nothing,\n\taT: elm$core$Maybe$Nothing,\n\taY: elm$core$Maybe$Nothing,\n\taZ: elm$core$Maybe$Nothing,\n\ta0: elm$core$Maybe$Nothing,\n\ta3: elm$core$Maybe$Nothing,\n\tac: elm$json$Json$Encode$object(_List_Nil),\n\ta8: elm$core$Maybe$Nothing,\n\tS: json_tools$json_schema$Json$Schema$Definitions$AnyType,\n\ta9: elm$core$Maybe$Nothing\n};\nvar json_tools$json_schema$Json$Schema$Validation$AdditionalPropertiesDisallowed = function (a) {\n\treturn {$: 16, a: a};\n};\nvar json_tools$json_schema$Json$Schema$Validation$AdditionalPropertyDisallowed = {$: 17};\nvar json_tools$json_schema$Json$Schema$Validation$AlwaysFail = {$: 26};\nvar json_tools$json_schema$Json$Schema$Validation$Const = {$: 20};\nvar json_tools$json_schema$Json$Schema$Validation$Contains = {$: 11};\nvar json_tools$json_schema$Json$Schema$Validation$Enum = {$: 19};\nvar json_tools$json_schema$Json$Schema$Validation$Error = F2(\n\tfunction (jsonPointer, details) {\n\t\treturn {at: details, bx: jsonPointer};\n\t});\nvar json_tools$json_schema$Json$Schema$Validation$ExclusiveMaximum = F2(\n\tfunction (a, b) {\n\t\treturn {$: 3, a: a, b: b};\n\t});\nvar json_tools$json_schema$Json$Schema$Validation$ExclusiveMinimum = F2(\n\tfunction (a, b) {\n\t\treturn {$: 4, a: a, b: b};\n\t});\nvar json_tools$json_schema$Json$Schema$Validation$InvalidPropertyName = function (a) {\n\treturn {$: 18, a: a};\n};\nvar json_tools$json_schema$Json$Schema$Validation$InvalidType = function (a) {\n\treturn {$: 21, a: a};\n};\nvar json_tools$json_schema$Json$Schema$Validation$JsonPointer = F2(\n\tfunction (ns, path) {\n\t\treturn {Z: ns, bE: path};\n\t});\nvar json_tools$json_schema$Json$Schema$Validation$MaxItems = F2(\n\tfunction (a, b) {\n\t\treturn {$: 8, a: a, b: b};\n\t});\nvar json_tools$json_schema$Json$Schema$Validation$MaxLength = F2(\n\tfunction (a, b) {\n\t\treturn {$: 5, a: a, b: b};\n\t});\nvar json_tools$json_schema$Json$Schema$Validation$MaxProperties = F2(\n\tfunction (a, b) {\n\t\treturn {$: 12, a: a, b: b};\n\t});\nvar json_tools$json_schema$Json$Schema$Validation$Maximum = F2(\n\tfunction (a, b) {\n\t\treturn {$: 1, a: a, b: b};\n\t});\nvar json_tools$json_schema$Json$Schema$Validation$MinItems = F2(\n\tfunction (a, b) {\n\t\treturn {$: 9, a: a, b: b};\n\t});\nvar json_tools$json_schema$Json$Schema$Validation$MinLength = F2(\n\tfunction (a, b) {\n\t\treturn {$: 6, a: a, b: b};\n\t});\nvar json_tools$json_schema$Json$Schema$Validation$MinProperties = F2(\n\tfunction (a, b) {\n\t\treturn {$: 13, a: a, b: b};\n\t});\nvar json_tools$json_schema$Json$Schema$Validation$Minimum = F2(\n\tfunction (a, b) {\n\t\treturn {$: 2, a: a, b: b};\n\t});\nvar json_tools$json_schema$Json$Schema$Validation$MultipleOf = F2(\n\tfunction (a, b) {\n\t\treturn {$: 0, a: a, b: b};\n\t});\nvar json_tools$json_schema$Json$Schema$Validation$Not = {$: 24};\nvar json_tools$json_schema$Json$Schema$Validation$OneOfManySucceed = function (a) {\n\treturn {$: 23, a: a};\n};\nvar json_tools$json_schema$Json$Schema$Validation$OneOfNoneSucceed = {$: 22};\nvar json_tools$json_schema$Json$Schema$Validation$Pattern = F2(\n\tfunction (a, b) {\n\t\treturn {$: 7, a: a, b: b};\n\t});\nvar json_tools$json_schema$Json$Schema$Validation$Required = function (a) {\n\treturn {$: 14, a: a};\n};\nvar json_tools$json_schema$Json$Schema$Validation$RequiredProperty = {$: 15};\nvar json_tools$json_schema$Json$Schema$Validation$UniqueItems = function (a) {\n\treturn {$: 10, a: a};\n};\nvar json_tools$json_schema$Json$Schema$Validation$UnresolvableReference = function (a) {\n\treturn {$: 25, a: a};\n};\nvar json_tools$json_schema$Json$Schema$Validation$stringify = elm$json$Json$Encode$encode(0);\nvar json_tools$json_schema$Json$Schema$Validation$canonical = function (v) {\n\tvar _n0 = A2(\n\t\telm$json$Json$Decode$decodeValue,\n\t\telm$json$Json$Decode$keyValuePairs(elm$json$Json$Decode$value),\n\t\tv);\n\tif (!_n0.$) {\n\t\tvar obj = _n0.a;\n\t\treturn json_tools$json_schema$Json$Schema$Validation$stringify(\n\t\t\telm$json$Json$Encode$object(\n\t\t\t\tA2(\n\t\t\t\t\telm$core$List$sortBy,\n\t\t\t\t\tfunction (_n1) {\n\t\t\t\t\t\tvar k = _n1.a;\n\t\t\t\t\t\treturn k;\n\t\t\t\t\t},\n\t\t\t\t\tobj)));\n\t} else {\n\t\treturn json_tools$json_schema$Json$Schema$Validation$stringify(v);\n\t}\n};\nvar json_tools$json_schema$Json$Schema$Validation$concatErrors = elm$core$List$foldl(\n\tF2(\n\t\tfunction (x, res) {\n\t\t\tif (!x.$) {\n\t\t\t\treturn res;\n\t\t\t} else {\n\t\t\t\tvar list = x.a;\n\t\t\t\tif (!res.$) {\n\t\t\t\t\tvar xx = res.a;\n\t\t\t\t\treturn x;\n\t\t\t\t} else {\n\t\t\t\t\tvar list2 = res.a;\n\t\t\t\t\treturn elm$core$Result$Err(\n\t\t\t\t\t\t_Utils_ap(list2, list));\n\t\t\t\t}\n\t\t\t}\n\t\t}));\nvar elm$core$Maybe$map = F2(\n\tfunction (f, maybe) {\n\t\tif (!maybe.$) {\n\t\t\tvar value = maybe.a;\n\t\t\treturn elm$core$Maybe$Just(\n\t\t\t\tf(value));\n\t\t} else {\n\t\t\treturn elm$core$Maybe$Nothing;\n\t\t}\n\t});\nvar json_tools$json_schema$Ref$makeJsonPointer = function (_n0) {\n\tvar isPointer = _n0.a;\n\tvar ns = _n0.b;\n\tvar path = _n0.c;\n\treturn isPointer ? _Utils_ap(\n\t\tns,\n\t\tA2(\n\t\t\telm$core$String$join,\n\t\t\t'/',\n\t\t\tA2(elm$core$List$cons, '#', path))) : (elm$core$List$isEmpty(path) ? ns : _Utils_ap(\n\t\tns + '#',\n\t\tA2(elm$core$String$join, '/', path)));\n};\nvar elm$core$String$dropRight = F2(\n\tfunction (n, string) {\n\t\treturn (n < 1) ? string : A3(elm$core$String$slice, 0, -n, string);\n\t});\nvar elm$core$String$endsWith = _String_endsWith;\nvar json_tools$json_schema$Ref$removeTrailingSlash = function (s) {\n\treturn A2(elm$core$String$endsWith, '#', s) ? A2(elm$core$String$dropRight, 1, s) : s;\n};\nvar json_tools$json_schema$Ref$whenObjectSchema = function (schema) {\n\tif (schema.$ === 1) {\n\t\tvar os = schema.a;\n\t\treturn elm$core$Maybe$Just(os);\n\t} else {\n\t\treturn elm$core$Maybe$Nothing;\n\t}\n};\nvar json_tools$json_schema$Ref$resolveReference = F4(\n\tfunction (ns, pool, schema, ref) {\n\t\tvar rootNs = A2(\n\t\t\telm$core$Maybe$withDefault,\n\t\t\tns,\n\t\t\tA2(\n\t\t\t\telm$core$Maybe$map,\n\t\t\t\tjson_tools$json_schema$Ref$removeTrailingSlash,\n\t\t\t\tA2(\n\t\t\t\t\telm$core$Maybe$andThen,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.aB;\n\t\t\t\t\t},\n\t\t\t\t\tjson_tools$json_schema$Ref$whenObjectSchema(schema))));\n\t\tvar resolveRecursively = F4(\n\t\t\tfunction (namespace, limit, localSchema, localRef) {\n\t\t\t\tvar a = elm$core$Dict$keys(pool);\n\t\t\t\tvar _n0 = A2(json_tools$json_schema$Ref$parseJsonPointer, localRef, namespace);\n\t\t\t\tvar isPointer = _n0.a;\n\t\t\t\tvar localNs = _n0.b;\n\t\t\t\tvar path = _n0.c;\n\t\t\t\tvar newJsonPointer = json_tools$json_schema$Ref$makeJsonPointer(\n\t\t\t\t\t_Utils_Tuple3(isPointer, localNs, path));\n\t\t\t\treturn (limit > 0) ? (isPointer ? A2(\n\t\t\t\t\telm$core$Maybe$andThen,\n\t\t\t\t\tfunction (os) {\n\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\telm$core$Maybe$andThen,\n\t\t\t\t\t\t\tfunction (def) {\n\t\t\t\t\t\t\t\tif (def.$ === 1) {\n\t\t\t\t\t\t\t\t\tvar oss = def.a;\n\t\t\t\t\t\t\t\t\tvar _n2 = oss.a0;\n\t\t\t\t\t\t\t\t\tif (!_n2.$) {\n\t\t\t\t\t\t\t\t\t\tvar r = _n2.a;\n\t\t\t\t\t\t\t\t\t\treturn A4(resolveRecursively, localNs, limit - 1, localSchema, r);\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\treturn elm$core$Maybe$Just(\n\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(localNs, def));\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\treturn elm$core$Maybe$Just(\n\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(localNs, def));\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\telm$core$Result$toMaybe(\n\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\telm$json$Json$Decode$decodeValue,\n\t\t\t\t\t\t\t\t\tA2(elm$json$Json$Decode$at, path, json_tools$json_schema$Json$Schema$Definitions$decoder),\n\t\t\t\t\t\t\t\t\tos.ac)));\n\t\t\t\t\t},\n\t\t\t\t\tA2(\n\t\t\t\t\t\telm$core$Maybe$andThen,\n\t\t\t\t\t\tjson_tools$json_schema$Ref$whenObjectSchema,\n\t\t\t\t\t\t(localNs === '') ? elm$core$Maybe$Just(localSchema) : A2(elm$core$Dict$get, localNs, pool))) : ((newJsonPointer === '') ? elm$core$Maybe$Just(\n\t\t\t\t\t_Utils_Tuple2('', localSchema)) : A2(\n\t\t\t\t\telm$core$Maybe$map,\n\t\t\t\t\tfunction (x) {\n\t\t\t\t\t\treturn _Utils_Tuple2(localNs, x);\n\t\t\t\t\t},\n\t\t\t\t\tA2(elm$core$Dict$get, newJsonPointer, pool)))) : elm$core$Maybe$Just(\n\t\t\t\t\t_Utils_Tuple2(localNs, localSchema));\n\t\t\t});\n\t\treturn A4(resolveRecursively, rootNs, 10, schema, ref);\n\t});\nvar json_tools$json_schema$Util$indexOfFirstDuplicate = function (list) {\n\treturn function (_n1) {\n\t\tvar r = _n1.b;\n\t\treturn r;\n\t}(\n\t\tA3(\n\t\t\telm$core$List$foldl,\n\t\t\tF2(\n\t\t\t\tfunction (x, _n0) {\n\t\t\t\t\tvar index = _n0.a;\n\t\t\t\t\tvar res = _n0.b;\n\t\t\t\t\tvar sublist = _n0.c;\n\t\t\t\t\treturn _Utils_Tuple3(\n\t\t\t\t\t\tindex + 1,\n\t\t\t\t\t\t(_Utils_cmp(res, -1) > 0) ? res : (A2(elm$core$List$member, x, sublist) ? index : (-1)),\n\t\t\t\t\t\tA2(elm$core$List$drop, 1, sublist));\n\t\t\t\t}),\n\t\t\t_Utils_Tuple3(\n\t\t\t\t0,\n\t\t\t\t-1,\n\t\t\t\tA2(elm$core$List$drop, 1, list)),\n\t\t\tlist));\n};\nvar elm$core$Basics$round = _Basics_round;\nvar json_tools$json_schema$Util$isInt = function (x) {\n\treturn _Utils_eq(\n\t\tx,\n\t\tA2(elm$core$Basics$composeR, elm$core$Basics$round, elm$core$Basics$toFloat)(x));\n};\nvar elm$core$String$foldl = _String_foldl;\nvar zwilias$elm_utf_tools$String$UTF32$foldl = F3(\n\tfunction (op, initial, input) {\n\t\treturn A3(\n\t\t\telm$core$String$foldl,\n\t\t\tF2(\n\t\t\t\tfunction (c, acc) {\n\t\t\t\t\treturn A2(\n\t\t\t\t\t\top,\n\t\t\t\t\t\telm$core$Char$toCode(c),\n\t\t\t\t\t\tacc);\n\t\t\t\t}),\n\t\t\tinitial,\n\t\t\tinput);\n\t});\nvar zwilias$elm_utf_tools$String$UTF32$length = function (input) {\n\treturn A3(\n\t\tzwilias$elm_utf_tools$String$UTF32$foldl,\n\t\tF2(\n\t\t\tfunction (_n0, acc) {\n\t\t\t\treturn acc + 1;\n\t\t\t}),\n\t\t0,\n\t\tinput);\n};\nvar json_tools$json_schema$Json$Schema$Validation$validate = F5(\n\tfunction (validationOptions, pool, value, rootSchema, schema) {\n\t\tvar whenSubschema = F5(\n\t\t\tfunction (propOf, decoder, fn, valueLocal, schemaLocal) {\n\t\t\t\tvar _n63 = propOf(schemaLocal);\n\t\t\t\tif (!_n63.$) {\n\t\t\t\t\tvar v = _n63.a;\n\t\t\t\t\tvar _n64 = A2(elm$json$Json$Decode$decodeValue, decoder, valueLocal);\n\t\t\t\t\tif (!_n64.$) {\n\t\t\t\t\t\tvar decoded = _n64.a;\n\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\telm$core$Result$map,\n\t\t\t\t\t\t\tfunction (_n65) {\n\t\t\t\t\t\t\t\treturn valueLocal;\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tA2(fn, v, decoded));\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvar s = _n64.a;\n\t\t\t\t\t\treturn elm$core$Result$Ok(valueLocal);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\treturn elm$core$Result$Ok(valueLocal);\n\t\t\t\t}\n\t\t\t});\n\t\tvar when = F5(\n\t\t\tfunction (propOf, decoder, fn, valueLocal, schemaLocal) {\n\t\t\t\tvar _n61 = propOf(schemaLocal);\n\t\t\t\tif (!_n61.$) {\n\t\t\t\t\tvar v = _n61.a;\n\t\t\t\t\tvar _n62 = A2(elm$json$Json$Decode$decodeValue, decoder, valueLocal);\n\t\t\t\t\tif (!_n62.$) {\n\t\t\t\t\t\tvar decoded = _n62.a;\n\t\t\t\t\t\treturn A2(fn, v, decoded);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvar s = _n62.a;\n\t\t\t\t\t\treturn elm$core$Result$Ok(valueLocal);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\treturn elm$core$Result$Ok(valueLocal);\n\t\t\t\t}\n\t\t\t});\n\t\tvar validateSingleType = F4(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, st, val) {\n\t\t\t\tvar test = function (d) {\n\t\t\t\t\treturn A2(\n\t\t\t\t\t\telm$core$Result$mapError,\n\t\t\t\t\t\tfunction (s) {\n\t\t\t\t\t\t\treturn _List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$Error,\n\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$InvalidType(\n\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$errorToString(s)))\n\t\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t},\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$core$Result$map,\n\t\t\t\t\t\t\tfunction (_n60) {\n\t\t\t\t\t\t\t\treturn val;\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tA2(elm$json$Json$Decode$decodeValue, d, val)));\n\t\t\t\t};\n\t\t\t\tswitch (st) {\n\t\t\t\t\tcase 0:\n\t\t\t\t\t\treturn test(elm$json$Json$Decode$int);\n\t\t\t\t\tcase 1:\n\t\t\t\t\t\treturn test(elm$json$Json$Decode$float);\n\t\t\t\t\tcase 2:\n\t\t\t\t\t\treturn test(elm$json$Json$Decode$string);\n\t\t\t\t\tcase 3:\n\t\t\t\t\t\treturn test(elm$json$Json$Decode$bool);\n\t\t\t\t\tcase 6:\n\t\t\t\t\t\treturn test(\n\t\t\t\t\t\t\telm$json$Json$Decode$null(elm$core$Maybe$Nothing));\n\t\t\t\t\tcase 4:\n\t\t\t\t\t\treturn test(\n\t\t\t\t\t\t\telm$json$Json$Decode$list(elm$json$Json$Decode$value));\n\t\t\t\t\tdefault:\n\t\t\t\t\t\treturn test(\n\t\t\t\t\t\t\telm$json$Json$Decode$keyValuePairs(elm$json$Json$Decode$value));\n\t\t\t\t}\n\t\t\t});\n\t\tvar validateType = F4(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, val, s) {\n\t\t\t\tvar _n57 = s.S;\n\t\t\t\tswitch (_n57.$) {\n\t\t\t\t\tcase 0:\n\t\t\t\t\t\treturn elm$core$Result$Ok(val);\n\t\t\t\t\tcase 1:\n\t\t\t\t\t\tvar st = _n57.a;\n\t\t\t\t\t\treturn A4(validateSingleType, validationOptionsLocal, jsonPointer, st, val);\n\t\t\t\t\tcase 2:\n\t\t\t\t\t\tvar st = _n57.a;\n\t\t\t\t\t\tvar _n58 = A4(validateSingleType, validationOptionsLocal, jsonPointer, 6, val);\n\t\t\t\t\t\tif (_n58.$ === 1) {\n\t\t\t\t\t\t\treturn A4(validateSingleType, validationOptionsLocal, jsonPointer, st, val);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn elm$core$Result$Ok(val);\n\t\t\t\t\t\t}\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tvar listTypes = _n57.a;\n\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\telm$core$List$any,\n\t\t\t\t\t\t\tfunction (st) {\n\t\t\t\t\t\t\t\treturn _Utils_eq(\n\t\t\t\t\t\t\t\t\tA4(validateSingleType, validationOptionsLocal, jsonPointer, st, val),\n\t\t\t\t\t\t\t\t\telm$core$Result$Ok(val));\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tlistTypes) ? elm$core$Result$Ok(val) : elm$core$Result$Err(\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$Error,\n\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$InvalidType('None of desired types match'))\n\t\t\t\t\t\t\t\t]));\n\t\t\t\t}\n\t\t\t});\n\t\tvar validateRequired = F4(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, v, s) {\n\t\t\t\treturn A5(\n\t\t\t\t\twhen,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.a3;\n\t\t\t\t\t},\n\t\t\t\t\telm$json$Json$Decode$keyValuePairs(elm$json$Json$Decode$value),\n\t\t\t\t\tF2(\n\t\t\t\t\t\tfunction (required, obj) {\n\t\t\t\t\t\t\tvar keys = A2(\n\t\t\t\t\t\t\t\telm$core$List$map,\n\t\t\t\t\t\t\t\tfunction (_n56) {\n\t\t\t\t\t\t\t\t\tvar key = _n56.a;\n\t\t\t\t\t\t\t\t\treturn key;\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tobj);\n\t\t\t\t\t\t\tvar missing = A2(\n\t\t\t\t\t\t\t\telm$core$List$filter,\n\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\telm$core$Basics$composeR,\n\t\t\t\t\t\t\t\t\tfunction (a) {\n\t\t\t\t\t\t\t\t\t\treturn A2(elm$core$List$member, a, keys);\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\telm$core$Basics$not),\n\t\t\t\t\t\t\t\trequired);\n\t\t\t\t\t\t\treturn elm$core$List$isEmpty(missing) ? elm$core$Result$Ok(v) : elm$core$Result$Err(\n\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$Error,\n\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$Required(missing)),\n\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\telm$core$List$map,\n\t\t\t\t\t\t\t\t\t\tfunction (key) {\n\t\t\t\t\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$Error,\n\t\t\t\t\t\t\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tbE: _Utils_ap(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tjsonPointer.bE,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[key]))\n\t\t\t\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$RequiredProperty);\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\tmissing)));\n\t\t\t\t\t\t}),\n\t\t\t\t\tv,\n\t\t\t\t\ts);\n\t\t\t});\n\t\tvar validatePattern = F3(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, v) {\n\t\t\t\treturn A4(\n\t\t\t\t\twhen,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.aS;\n\t\t\t\t\t},\n\t\t\t\t\telm$json$Json$Decode$string,\n\t\t\t\t\tF2(\n\t\t\t\t\t\tfunction (pattern, str) {\n\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\telm$regex$Regex$contains,\n\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\telm$core$Maybe$withDefault,\n\t\t\t\t\t\t\t\t\telm$regex$Regex$never,\n\t\t\t\t\t\t\t\t\telm$regex$Regex$fromString(pattern)),\n\t\t\t\t\t\t\t\tstr) ? elm$core$Result$Ok(v) : elm$core$Result$Err(\n\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$Error,\n\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Validation$Pattern, pattern, str))\n\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t}),\n\t\t\t\t\tv);\n\t\t\t});\n\t\tvar validateMultipleOf = F3(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, v) {\n\t\t\t\treturn A4(\n\t\t\t\t\twhen,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.aO;\n\t\t\t\t\t},\n\t\t\t\t\telm$json$Json$Decode$float,\n\t\t\t\t\tF2(\n\t\t\t\t\t\tfunction (multipleOf, x) {\n\t\t\t\t\t\t\treturn json_tools$json_schema$Util$isInt(x / multipleOf) ? elm$core$Result$Ok(v) : elm$core$Result$Err(\n\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$Error,\n\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Validation$MultipleOf, multipleOf, x))\n\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t}),\n\t\t\t\t\tv);\n\t\t\t});\n\t\tvar validateMinimum = F4(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, v, s) {\n\t\t\t\treturn A5(\n\t\t\t\t\twhen,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.aL;\n\t\t\t\t\t},\n\t\t\t\t\telm$json$Json$Decode$float,\n\t\t\t\t\tF2(\n\t\t\t\t\t\tfunction (min, x) {\n\t\t\t\t\t\t\tvar _n55 = s.ax;\n\t\t\t\t\t\t\tif (((!_n55.$) && (!_n55.a.$)) && _n55.a.a) {\n\t\t\t\t\t\t\t\treturn (_Utils_cmp(x, min) > 0) ? elm$core$Result$Ok(v) : elm$core$Result$Err(\n\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$Error,\n\t\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Validation$ExclusiveMinimum, min, x))\n\t\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\treturn (_Utils_cmp(x, min) > -1) ? elm$core$Result$Ok(v) : elm$core$Result$Err(\n\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$Error,\n\t\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Validation$Minimum, min, x))\n\t\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}),\n\t\t\t\t\tv,\n\t\t\t\t\ts);\n\t\t\t});\n\t\tvar validateMinProperties = F3(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, v) {\n\t\t\t\treturn A4(\n\t\t\t\t\twhen,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.aJ;\n\t\t\t\t\t},\n\t\t\t\t\telm$json$Json$Decode$keyValuePairs(elm$json$Json$Decode$value),\n\t\t\t\t\tF2(\n\t\t\t\t\t\tfunction (minProperties, obj) {\n\t\t\t\t\t\t\tvar x = elm$core$List$length(obj);\n\t\t\t\t\t\t\treturn (_Utils_cmp(x, minProperties) > -1) ? elm$core$Result$Ok(v) : elm$core$Result$Err(\n\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$Error,\n\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Validation$MinProperties, minProperties, x))\n\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t}),\n\t\t\t\t\tv);\n\t\t\t});\n\t\tvar validateMinLength = F3(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, v) {\n\t\t\t\treturn A4(\n\t\t\t\t\twhen,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.aI;\n\t\t\t\t\t},\n\t\t\t\t\telm$json$Json$Decode$string,\n\t\t\t\t\tF2(\n\t\t\t\t\t\tfunction (minLength, str) {\n\t\t\t\t\t\t\tvar x = zwilias$elm_utf_tools$String$UTF32$length(str);\n\t\t\t\t\t\t\treturn (_Utils_cmp(x, minLength) > -1) ? elm$core$Result$Ok(v) : elm$core$Result$Err(\n\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$Error,\n\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Validation$MinLength, minLength, x))\n\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t}),\n\t\t\t\t\tv);\n\t\t\t});\n\t\tvar validateMinItems = F3(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, v) {\n\t\t\t\treturn A4(\n\t\t\t\t\twhen,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.aH;\n\t\t\t\t\t},\n\t\t\t\t\telm$json$Json$Decode$list(elm$json$Json$Decode$value),\n\t\t\t\t\tF2(\n\t\t\t\t\t\tfunction (minItems, list) {\n\t\t\t\t\t\t\tvar x = elm$core$List$length(list);\n\t\t\t\t\t\t\treturn (_Utils_cmp(x, minItems) > -1) ? elm$core$Result$Ok(v) : elm$core$Result$Err(\n\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$Error,\n\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Validation$MinItems, minItems, x))\n\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t}),\n\t\t\t\t\tv);\n\t\t\t});\n\t\tvar validateMaximum = F4(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, v, s) {\n\t\t\t\treturn A5(\n\t\t\t\t\twhen,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.aG;\n\t\t\t\t\t},\n\t\t\t\t\telm$json$Json$Decode$float,\n\t\t\t\t\tF2(\n\t\t\t\t\t\tfunction (max, x) {\n\t\t\t\t\t\t\tvar _n54 = s.aw;\n\t\t\t\t\t\t\tif (((!_n54.$) && (!_n54.a.$)) && _n54.a.a) {\n\t\t\t\t\t\t\t\treturn (_Utils_cmp(x, max) < 0) ? elm$core$Result$Ok(v) : elm$core$Result$Err(\n\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$Error,\n\t\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Validation$ExclusiveMaximum, max, x))\n\t\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\treturn (_Utils_cmp(x, max) < 1) ? elm$core$Result$Ok(v) : elm$core$Result$Err(\n\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$Error,\n\t\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Validation$Maximum, max, x))\n\t\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}),\n\t\t\t\t\tv,\n\t\t\t\t\ts);\n\t\t\t});\n\t\tvar validateMaxProperties = F3(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, v) {\n\t\t\t\treturn A4(\n\t\t\t\t\twhen,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.aE;\n\t\t\t\t\t},\n\t\t\t\t\telm$json$Json$Decode$keyValuePairs(elm$json$Json$Decode$value),\n\t\t\t\t\tF2(\n\t\t\t\t\t\tfunction (maxProperties, obj) {\n\t\t\t\t\t\t\tvar x = elm$core$List$length(obj);\n\t\t\t\t\t\t\treturn (_Utils_cmp(x, maxProperties) < 1) ? elm$core$Result$Ok(v) : elm$core$Result$Err(\n\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$Error,\n\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Validation$MaxProperties, maxProperties, x))\n\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t}),\n\t\t\t\t\tv);\n\t\t\t});\n\t\tvar validateMaxLength = F3(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, v) {\n\t\t\t\treturn A4(\n\t\t\t\t\twhen,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.aD;\n\t\t\t\t\t},\n\t\t\t\t\telm$json$Json$Decode$string,\n\t\t\t\t\tF2(\n\t\t\t\t\t\tfunction (maxLength, str) {\n\t\t\t\t\t\t\tvar x = zwilias$elm_utf_tools$String$UTF32$length(str);\n\t\t\t\t\t\t\treturn (_Utils_cmp(x, maxLength) < 1) ? elm$core$Result$Ok(v) : elm$core$Result$Err(\n\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$Error,\n\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Validation$MaxLength, maxLength, x))\n\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t}),\n\t\t\t\t\tv);\n\t\t\t});\n\t\tvar validateMaxItems = F3(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, v) {\n\t\t\t\treturn A4(\n\t\t\t\t\twhen,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.aC;\n\t\t\t\t\t},\n\t\t\t\t\telm$json$Json$Decode$list(elm$json$Json$Decode$value),\n\t\t\t\t\tF2(\n\t\t\t\t\t\tfunction (maxItems, list) {\n\t\t\t\t\t\t\tvar x = elm$core$List$length(list);\n\t\t\t\t\t\t\treturn (_Utils_cmp(x, maxItems) < 1) ? elm$core$Result$Ok(v) : elm$core$Result$Err(\n\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$Error,\n\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Validation$MaxItems, maxItems, x))\n\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t}),\n\t\t\t\t\tv);\n\t\t\t});\n\t\tvar validateExclusiveMinimum = F4(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, v, s) {\n\t\t\t\treturn A5(\n\t\t\t\t\twhen,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.ax;\n\t\t\t\t\t},\n\t\t\t\t\telm$json$Json$Decode$float,\n\t\t\t\t\tF2(\n\t\t\t\t\t\tfunction (min, x) {\n\t\t\t\t\t\t\tif (min.$ === 1) {\n\t\t\t\t\t\t\t\tvar m = min.a;\n\t\t\t\t\t\t\t\treturn (_Utils_cmp(x, m) > 0) ? elm$core$Result$Ok(v) : elm$core$Result$Err(\n\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$Error,\n\t\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Validation$ExclusiveMinimum, m, x))\n\t\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\treturn elm$core$Result$Ok(v);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}),\n\t\t\t\t\tv,\n\t\t\t\t\ts);\n\t\t\t});\n\t\tvar validateExclusiveMaximum = F4(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, v, s) {\n\t\t\t\treturn A5(\n\t\t\t\t\twhen,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.aw;\n\t\t\t\t\t},\n\t\t\t\t\telm$json$Json$Decode$float,\n\t\t\t\t\tF2(\n\t\t\t\t\t\tfunction (max, x) {\n\t\t\t\t\t\t\tif (max.$ === 1) {\n\t\t\t\t\t\t\t\tvar m = max.a;\n\t\t\t\t\t\t\t\treturn (_Utils_cmp(x, m) < 0) ? elm$core$Result$Ok(v) : elm$core$Result$Err(\n\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$Error,\n\t\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Validation$ExclusiveMaximum, m, x))\n\t\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\treturn elm$core$Result$Ok(v);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}),\n\t\t\t\t\tv,\n\t\t\t\t\ts);\n\t\t\t});\n\t\tvar validateEnum = F2(\n\t\t\tfunction (validationOptionsLocal, jsonPointer) {\n\t\t\t\treturn A3(\n\t\t\t\t\twhen,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.bm;\n\t\t\t\t\t},\n\t\t\t\t\telm$json$Json$Decode$value,\n\t\t\t\t\tF2(\n\t\t\t\t\t\tfunction (_enum, val) {\n\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\telm$core$List$any,\n\t\t\t\t\t\t\t\tfunction (item) {\n\t\t\t\t\t\t\t\t\treturn _Utils_eq(\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$stringify(item),\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$stringify(val));\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t_enum) ? elm$core$Result$Ok(val) : elm$core$Result$Err(\n\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Validation$Error, jsonPointer, json_tools$json_schema$Json$Schema$Validation$Enum)\n\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t}));\n\t\t\t});\n\t\tvar validateConst = F2(\n\t\t\tfunction (validationOptionsLocal, jsonPointer) {\n\t\t\t\treturn A3(\n\t\t\t\t\twhen,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.am;\n\t\t\t\t\t},\n\t\t\t\t\telm$json$Json$Decode$value,\n\t\t\t\t\tF2(\n\t\t\t\t\t\tfunction (_const, val) {\n\t\t\t\t\t\t\tvar expected = json_tools$json_schema$Json$Schema$Validation$canonical(_const);\n\t\t\t\t\t\t\tvar actual = json_tools$json_schema$Json$Schema$Validation$canonical(val);\n\t\t\t\t\t\t\treturn _Utils_eq(expected, actual) ? elm$core$Result$Ok(val) : elm$core$Result$Err(\n\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Validation$Error, jsonPointer, json_tools$json_schema$Json$Schema$Validation$Const)\n\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t}));\n\t\t\t});\n\t\tvar getSchema = F2(\n\t\t\tfunction (key, _n51) {\n\t\t\t\tvar props = _n51;\n\t\t\t\treturn elm$core$List$head(\n\t\t\t\t\tA2(\n\t\t\t\t\t\telm$core$List$map,\n\t\t\t\t\t\tfunction (_n50) {\n\t\t\t\t\t\t\tvar s = _n50.b;\n\t\t\t\t\t\t\treturn s;\n\t\t\t\t\t\t},\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$core$List$filter,\n\t\t\t\t\t\t\tfunction (_n49) {\n\t\t\t\t\t\t\t\tvar k = _n49.a;\n\t\t\t\t\t\t\t\treturn _Utils_eq(k, key);\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tprops)));\n\t\t\t});\n\t\tvar getPropsByPattern = F2(\n\t\t\tfunction (pattern, props) {\n\t\t\t\treturn A2(\n\t\t\t\t\telm$core$List$filter,\n\t\t\t\t\tfunction (_n48) {\n\t\t\t\t\t\tvar k = _n48.a;\n\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\telm$regex$Regex$contains,\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\telm$core$Maybe$withDefault,\n\t\t\t\t\t\t\t\telm$regex$Regex$never,\n\t\t\t\t\t\t\t\telm$regex$Regex$fromString(pattern)),\n\t\t\t\t\t\t\tk);\n\t\t\t\t\t},\n\t\t\t\t\tprops);\n\t\t\t});\n\t\tvar findDuplicateItem = function (list) {\n\t\t\treturn function (x) {\n\t\t\t\treturn _Utils_eq(x, -1) ? elm$core$Maybe$Nothing : elm$core$List$head(\n\t\t\t\t\tA2(elm$core$List$drop, x, list));\n\t\t\t}(\n\t\t\t\tjson_tools$json_schema$Util$indexOfFirstDuplicate(\n\t\t\t\t\tA2(\n\t\t\t\t\t\telm$core$List$map,\n\t\t\t\t\t\telm$json$Json$Encode$encode(0),\n\t\t\t\t\t\tlist)));\n\t\t};\n\t\tvar validateUniqueItems = F3(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, v) {\n\t\t\t\treturn A4(\n\t\t\t\t\twhen,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.a9;\n\t\t\t\t\t},\n\t\t\t\t\telm$json$Json$Decode$list(elm$json$Json$Decode$value),\n\t\t\t\t\tF2(\n\t\t\t\t\t\tfunction (uniqueItems, list) {\n\t\t\t\t\t\t\tif (!uniqueItems) {\n\t\t\t\t\t\t\t\treturn elm$core$Result$Ok(v);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tvar _n47 = findDuplicateItem(list);\n\t\t\t\t\t\t\t\tif (!_n47.$) {\n\t\t\t\t\t\t\t\t\tvar vv = _n47.a;\n\t\t\t\t\t\t\t\t\treturn elm$core$Result$Err(\n\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$Error,\n\t\t\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$UniqueItems(vv))\n\t\t\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\treturn elm$core$Result$Ok(v);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}),\n\t\t\t\t\tv);\n\t\t\t});\n\t\tvar failWithListErrors = F5(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, valueLocal, schemaLocal, validators) {\n\t\t\t\treturn function (_n45) {\n\t\t\t\t\tvar errors = _n45.a;\n\t\t\t\t\tvar v = _n45.b;\n\t\t\t\t\tif (!errors.b) {\n\t\t\t\t\t\treturn elm$core$Result$Ok(v);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvar list = errors;\n\t\t\t\t\t\treturn elm$core$Result$Err(list);\n\t\t\t\t\t}\n\t\t\t\t}(\n\t\t\t\t\tA3(\n\t\t\t\t\t\telm$core$List$foldl,\n\t\t\t\t\t\tF2(\n\t\t\t\t\t\t\tfunction (fn, _n43) {\n\t\t\t\t\t\t\t\tvar errors = _n43.a;\n\t\t\t\t\t\t\t\tvar val = _n43.b;\n\t\t\t\t\t\t\t\tvar _n44 = A4(fn, validationOptionsLocal, jsonPointer, val, schemaLocal);\n\t\t\t\t\t\t\t\tif (!_n44.$) {\n\t\t\t\t\t\t\t\t\tvar newValue = _n44.a;\n\t\t\t\t\t\t\t\t\treturn _Utils_Tuple2(errors, newValue);\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\tvar list = _n44.a;\n\t\t\t\t\t\t\t\t\treturn _Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t_Utils_ap(errors, list),\n\t\t\t\t\t\t\t\t\t\tval);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t_Utils_Tuple2(_List_Nil, valueLocal),\n\t\t\t\t\t\tvalidators));\n\t\t\t});\n\t\tvar addDefaultProperties = F4(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, properties, obj) {\n\t\t\t\tvar missing = F2(\n\t\t\t\t\tfunction (name, objLocal) {\n\t\t\t\t\t\treturn !A2(\n\t\t\t\t\t\t\telm$core$List$member,\n\t\t\t\t\t\t\tname,\n\t\t\t\t\t\t\tA2(elm$core$List$map, elm$core$Tuple$first, objLocal));\n\t\t\t\t\t});\n\t\t\t\tvar defaultFor = F3(\n\t\t\t\t\tfunction (objLocal, propName, schemaLocal) {\n\t\t\t\t\t\tif (A2(missing, propName, objLocal)) {\n\t\t\t\t\t\t\tif (schemaLocal.$ === 1) {\n\t\t\t\t\t\t\t\tvar os = schemaLocal.a;\n\t\t\t\t\t\t\t\treturn function (x) {\n\t\t\t\t\t\t\t\t\tif (!x.$) {\n\t\t\t\t\t\t\t\t\t\treturn x;\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\treturn (!_Utils_eq(os.aY, elm$core$Maybe$Nothing)) ? elm$core$Maybe$Just(\n\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$object(\n\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\taddDefaultProperties,\n\t\t\t\t\t\t\t\t\t\t\t\t\tvalidationOptions,\n\t\t\t\t\t\t\t\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tbE: _Utils_ap(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tjsonPointer.bE,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[propName]))\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\t\t\t\tos.aY,\n\t\t\t\t\t\t\t\t\t\t\t\t\t_List_Nil))) : elm$core$Maybe$Nothing;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}(\n\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\telm$core$Maybe$andThen,\n\t\t\t\t\t\t\t\t\t\tfunction (valueLocal) {\n\t\t\t\t\t\t\t\t\t\t\treturn elm$core$Result$toMaybe(\n\t\t\t\t\t\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\t\t\t\t\t\tvalidateSchema,\n\t\t\t\t\t\t\t\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalidationOptionsLocal,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{P: false}),\n\t\t\t\t\t\t\t\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tbE: _Utils_ap(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tjsonPointer.bE,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[propName]))\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\t\t\t\tvalueLocal,\n\t\t\t\t\t\t\t\t\t\t\t\t\tschemaLocal));\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\tos.bh));\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\treturn elm$core$Maybe$Nothing;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn elm$core$Maybe$Nothing;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\tif (validationOptionsLocal.P) {\n\t\t\t\t\tif (!properties.$) {\n\t\t\t\t\t\tvar knownProps = properties.a;\n\t\t\t\t\t\treturn elm$core$List$reverse(\n\t\t\t\t\t\t\tA3(\n\t\t\t\t\t\t\t\telm$core$List$foldl,\n\t\t\t\t\t\t\t\tF2(\n\t\t\t\t\t\t\t\t\tfunction (_n39, resultingObject) {\n\t\t\t\t\t\t\t\t\t\tvar propName = _n39.a;\n\t\t\t\t\t\t\t\t\t\tvar schemaLocalLocal = _n39.b;\n\t\t\t\t\t\t\t\t\t\tvar _n40 = A3(defaultFor, obj, propName, schemaLocalLocal);\n\t\t\t\t\t\t\t\t\t\tif (!_n40.$) {\n\t\t\t\t\t\t\t\t\t\t\tvar valueLocal = _n40.a;\n\t\t\t\t\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(propName, valueLocal),\n\t\t\t\t\t\t\t\t\t\t\t\tresultingObject);\n\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\treturn resultingObject;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t_List_Nil,\n\t\t\t\t\t\t\t\tknownProps));\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn _List_Nil;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\treturn _List_Nil;\n\t\t\t\t}\n\t\t\t});\n\t\tvar validateSchema = F4(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, valueLocal, s) {\n\t\t\t\tif (!s.$) {\n\t\t\t\t\tvar bs = s.a;\n\t\t\t\t\treturn bs ? elm$core$Result$Ok(valueLocal) : elm$core$Result$Err(\n\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Validation$Error, jsonPointer, json_tools$json_schema$Json$Schema$Validation$AlwaysFail)\n\t\t\t\t\t\t\t]));\n\t\t\t\t} else {\n\t\t\t\t\tvar os = s.a;\n\t\t\t\t\tvar _n34 = os.a0;\n\t\t\t\t\tif (!_n34.$) {\n\t\t\t\t\t\tvar ref = _n34.a;\n\t\t\t\t\t\tvar _n35 = A4(json_tools$json_schema$Ref$resolveReference, jsonPointer.Z, pool, rootSchema, ref);\n\t\t\t\t\t\tif (!_n35.$) {\n\t\t\t\t\t\t\tif (_n35.a.b.$ === 1) {\n\t\t\t\t\t\t\t\tvar _n36 = _n35.a;\n\t\t\t\t\t\t\t\tvar ns = _n36.a;\n\t\t\t\t\t\t\t\tvar oss = _n36.b.a;\n\t\t\t\t\t\t\t\treturn A4(\n\t\t\t\t\t\t\t\t\tvalidateSubschema,\n\t\t\t\t\t\t\t\t\tvalidationOptionsLocal,\n\t\t\t\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\t{Z: ns}),\n\t\t\t\t\t\t\t\t\toss,\n\t\t\t\t\t\t\t\t\tvalueLocal);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tvar _n37 = _n35.a;\n\t\t\t\t\t\t\t\tvar ns = _n37.a;\n\t\t\t\t\t\t\t\tvar bs = _n37.b.a;\n\t\t\t\t\t\t\t\treturn bs ? elm$core$Result$Ok(valueLocal) : elm$core$Result$Err(\n\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Validation$Error, jsonPointer, json_tools$json_schema$Json$Schema$Validation$AlwaysFail)\n\t\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn elm$core$Result$Err(\n\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$Error,\n\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$UnresolvableReference(ref))\n\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn A4(validateSubschema, validationOptionsLocal, jsonPointer, os, valueLocal);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\tvar validateSubschema = F4(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, os, valueLocal) {\n\t\t\t\treturn A5(\n\t\t\t\t\tfailWithListErrors,\n\t\t\t\t\tvalidationOptionsLocal,\n\t\t\t\t\tjsonPointer,\n\t\t\t\t\tvalueLocal,\n\t\t\t\t\tos,\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t[validateMultipleOf, validateMaximum, validateMinimum, validateExclusiveMaximum, validateExclusiveMinimum, validateMaxLength, validateMinLength, validatePattern, validateItems, validateMaxItems, validateMinItems, validateUniqueItems, validateContains, validateProperties, validateMaxProperties, validateMinProperties, validateRequired, validatePatternProperties, validateAdditionalProperties, validateDependencies, validatePropertyNames, validateEnum, validateConst, validateType, validateAllOf, validateAnyOf, validateOneOf, validateNot]));\n\t\t\t});\n\t\tvar validateAdditionalProperties = F4(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, v, s) {\n\t\t\t\tvar rejectMatching = F3(\n\t\t\t\t\tfunction (props, fn, obj) {\n\t\t\t\t\t\tif (!props.$) {\n\t\t\t\t\t\t\tvar p = props.a;\n\t\t\t\t\t\t\tvar whitelist = A2(\n\t\t\t\t\t\t\t\telm$core$List$map,\n\t\t\t\t\t\t\t\tfunction (_n32) {\n\t\t\t\t\t\t\t\t\tvar k = _n32.a;\n\t\t\t\t\t\t\t\t\treturn k;\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tp);\n\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\telm$core$List$filter,\n\t\t\t\t\t\t\t\tfunction (_n31) {\n\t\t\t\t\t\t\t\t\tvar key = _n31.a;\n\t\t\t\t\t\t\t\t\treturn !A2(\n\t\t\t\t\t\t\t\t\t\telm$core$List$any,\n\t\t\t\t\t\t\t\t\t\tfunction (allowed) {\n\t\t\t\t\t\t\t\t\t\t\treturn A2(fn, allowed, key);\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\twhitelist);\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tobj);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn obj;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\treturn A5(\n\t\t\t\t\twhenSubschema,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.ah;\n\t\t\t\t\t},\n\t\t\t\t\telm$json$Json$Decode$keyValuePairs(elm$json$Json$Decode$value),\n\t\t\t\t\tF2(\n\t\t\t\t\t\tfunction (additionalProperties, obj) {\n\t\t\t\t\t\t\treturn function (objLocal) {\n\t\t\t\t\t\t\t\tif (!additionalProperties.$) {\n\t\t\t\t\t\t\t\t\tvar bs = additionalProperties.a;\n\t\t\t\t\t\t\t\t\treturn bs ? elm$core$Result$Ok(v) : (elm$core$List$isEmpty(objLocal) ? elm$core$Result$Ok(v) : elm$core$Result$Err(\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$Error,\n\t\t\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$AdditionalPropertiesDisallowed(\n\t\t\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$List$map,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tfunction (_n28) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvar name = _n28.a;\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn name;\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tobjLocal))),\n\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\telm$core$List$map,\n\t\t\t\t\t\t\t\t\t\t\t\tfunction (_n27) {\n\t\t\t\t\t\t\t\t\t\t\t\t\tvar name = _n27.a;\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$Error,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tbE: _Utils_ap(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tjsonPointer.bE,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[name]))\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$AdditionalPropertyDisallowed);\n\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\tobjLocal))));\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$concatErrors,\n\t\t\t\t\t\t\t\t\t\telm$core$Result$Ok(v),\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\telm$core$List$map,\n\t\t\t\t\t\t\t\t\t\t\tfunction (_n29) {\n\t\t\t\t\t\t\t\t\t\t\t\tvar key = _n29.a;\n\t\t\t\t\t\t\t\t\t\t\t\tvar val = _n29.b;\n\t\t\t\t\t\t\t\t\t\t\t\treturn A4(\n\t\t\t\t\t\t\t\t\t\t\t\t\tvalidateSchema,\n\t\t\t\t\t\t\t\t\t\t\t\t\tvalidationOptionsLocal,\n\t\t\t\t\t\t\t\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tbE: _Utils_ap(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tjsonPointer.bE,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[key]))\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\t\t\t\tval,\n\t\t\t\t\t\t\t\t\t\t\t\t\tadditionalProperties);\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\tobjLocal));\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}(\n\t\t\t\t\t\t\t\tA3(\n\t\t\t\t\t\t\t\t\trejectMatching,\n\t\t\t\t\t\t\t\t\ts.aT,\n\t\t\t\t\t\t\t\t\tF2(\n\t\t\t\t\t\t\t\t\t\tfunction (a, b) {\n\t\t\t\t\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\t\t\t\t\telm$regex$Regex$contains,\n\t\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$withDefault,\n\t\t\t\t\t\t\t\t\t\t\t\t\telm$regex$Regex$never,\n\t\t\t\t\t\t\t\t\t\t\t\t\telm$regex$Regex$fromString(a)),\n\t\t\t\t\t\t\t\t\t\t\t\tb);\n\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\tA3(\n\t\t\t\t\t\t\t\t\t\trejectMatching,\n\t\t\t\t\t\t\t\t\t\ts.aY,\n\t\t\t\t\t\t\t\t\t\tF2(\n\t\t\t\t\t\t\t\t\t\t\tfunction (a, b) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn _Utils_eq(a, b);\n\t\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\tobj)));\n\t\t\t\t\t\t}),\n\t\t\t\t\tv,\n\t\t\t\t\ts);\n\t\t\t});\n\t\tvar validateAllOf = F2(\n\t\t\tfunction (validationOptionsLocal, jsonPointer) {\n\t\t\t\treturn A3(\n\t\t\t\t\twhen,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.ai;\n\t\t\t\t\t},\n\t\t\t\t\telm$json$Json$Decode$value,\n\t\t\t\t\tF2(\n\t\t\t\t\t\tfunction (allOf, val) {\n\t\t\t\t\t\t\treturn A3(\n\t\t\t\t\t\t\t\telm$core$List$foldl,\n\t\t\t\t\t\t\t\tF2(\n\t\t\t\t\t\t\t\t\tfunction (schemaLocal, res) {\n\t\t\t\t\t\t\t\t\t\treturn _Utils_eq(\n\t\t\t\t\t\t\t\t\t\t\tres,\n\t\t\t\t\t\t\t\t\t\t\telm$core$Result$Ok(val)) ? A4(validateSchema, validationOptionsLocal, jsonPointer, val, schemaLocal) : res;\n\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\telm$core$Result$Ok(val),\n\t\t\t\t\t\t\t\tallOf);\n\t\t\t\t\t\t}));\n\t\t\t});\n\t\tvar validateAnyOf = F2(\n\t\t\tfunction (validationOptionsLocal, jsonPointer) {\n\t\t\t\treturn A3(\n\t\t\t\t\twhen,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.aj;\n\t\t\t\t\t},\n\t\t\t\t\telm$json$Json$Decode$value,\n\t\t\t\t\tF2(\n\t\t\t\t\t\tfunction (anyOf, val) {\n\t\t\t\t\t\t\tvar validationResults = A2(\n\t\t\t\t\t\t\t\telm$core$List$map,\n\t\t\t\t\t\t\t\tA3(validateSchema, validationOptionsLocal, jsonPointer, val),\n\t\t\t\t\t\t\t\tanyOf);\n\t\t\t\t\t\t\tvar isOk = function (res) {\n\t\t\t\t\t\t\t\tif (!res.$) {\n\t\t\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\treturn A2(elm$core$List$any, isOk, validationResults) ? elm$core$Result$Ok(val) : A2(\n\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$concatErrors,\n\t\t\t\t\t\t\t\telm$core$Result$Ok(val),\n\t\t\t\t\t\t\t\tvalidationResults);\n\t\t\t\t\t\t}));\n\t\t\t});\n\t\tvar validateContains = F3(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, v) {\n\t\t\t\treturn A4(\n\t\t\t\t\twhenSubschema,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.an;\n\t\t\t\t\t},\n\t\t\t\t\telm$json$Json$Decode$list(elm$json$Json$Decode$value),\n\t\t\t\t\tF2(\n\t\t\t\t\t\tfunction (contains, list) {\n\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\telm$core$List$any,\n\t\t\t\t\t\t\t\tfunction (item) {\n\t\t\t\t\t\t\t\t\tvar _n24 = A4(validateSchema, validationOptionsLocal, jsonPointer, item, contains);\n\t\t\t\t\t\t\t\t\tif (!_n24.$) {\n\t\t\t\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tlist) ? elm$core$Result$Ok(v) : elm$core$Result$Err(\n\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Validation$Error, jsonPointer, json_tools$json_schema$Json$Schema$Validation$Contains)\n\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t}),\n\t\t\t\t\tv);\n\t\t\t});\n\t\tvar validateDependencies = F4(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, v, s) {\n\t\t\t\tvar validateDep = function (obj) {\n\t\t\t\t\treturn A3(\n\t\t\t\t\t\telm$core$List$foldl,\n\t\t\t\t\t\tF2(\n\t\t\t\t\t\t\tfunction (_n21, res) {\n\t\t\t\t\t\t\t\tvar depName = _n21.a;\n\t\t\t\t\t\t\t\tvar dep = _n21.b;\n\t\t\t\t\t\t\t\tif (res.$ === 1) {\n\t\t\t\t\t\t\t\t\treturn res;\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\tif (A2(\n\t\t\t\t\t\t\t\t\t\telm$core$Dict$member,\n\t\t\t\t\t\t\t\t\t\tdepName,\n\t\t\t\t\t\t\t\t\t\telm$core$Dict$fromList(obj))) {\n\t\t\t\t\t\t\t\t\t\tif (dep.$ === 1) {\n\t\t\t\t\t\t\t\t\t\t\tvar ss = dep.a;\n\t\t\t\t\t\t\t\t\t\t\treturn A4(validateSchema, validationOptionsLocal, jsonPointer, v, ss);\n\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\tvar keys = dep.a;\n\t\t\t\t\t\t\t\t\t\t\treturn A4(\n\t\t\t\t\t\t\t\t\t\t\t\tvalidateSchema,\n\t\t\t\t\t\t\t\t\t\t\t\tvalidationOptionsLocal,\n\t\t\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\t\t\tv,\n\t\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$ObjectSchema(\n\t\t\t\t\t\t\t\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$blankSubSchema,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ta3: elm$core$Maybe$Just(keys)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t})));\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\treturn res;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\telm$core$Result$Ok(v),\n\t\t\t\t\t\ts.I);\n\t\t\t\t};\n\t\t\t\tif (elm$core$List$isEmpty(s.I)) {\n\t\t\t\t\treturn elm$core$Result$Ok(v);\n\t\t\t\t} else {\n\t\t\t\t\tvar _n20 = A2(\n\t\t\t\t\t\telm$json$Json$Decode$decodeValue,\n\t\t\t\t\t\telm$json$Json$Decode$keyValuePairs(elm$json$Json$Decode$value),\n\t\t\t\t\t\tv);\n\t\t\t\t\tif (!_n20.$) {\n\t\t\t\t\t\tvar vv = _n20.a;\n\t\t\t\t\t\treturn validateDep(vv);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn elm$core$Result$Ok(v);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\tvar validateItems = F4(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, valueLocal, schemaLocal) {\n\t\t\t\tvar validateItem = F3(\n\t\t\t\t\tfunction (item, schemaLocalLocal, index) {\n\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\telm$core$Result$map,\n\t\t\t\t\t\t\tfunction (_n19) {\n\t\t\t\t\t\t\t\treturn index + 1;\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tA4(\n\t\t\t\t\t\t\t\tvalidateSchema,\n\t\t\t\t\t\t\t\tvalidationOptionsLocal,\n\t\t\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tbE: _Utils_ap(\n\t\t\t\t\t\t\t\t\t\t\tjsonPointer.bE,\n\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$String$fromInt(index)\n\t\t\t\t\t\t\t\t\t\t\t\t]))\n\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\titem,\n\t\t\t\t\t\t\t\tschemaLocalLocal));\n\t\t\t\t\t});\n\t\t\t\tvar _n10 = schemaLocal.bw;\n\t\t\t\tswitch (_n10.$) {\n\t\t\t\t\tcase 1:\n\t\t\t\t\t\tvar itemSchema = _n10.a;\n\t\t\t\t\t\tvar _n11 = A2(\n\t\t\t\t\t\t\telm$json$Json$Decode$decodeValue,\n\t\t\t\t\t\t\telm$json$Json$Decode$list(elm$json$Json$Decode$value),\n\t\t\t\t\t\t\tvalueLocal);\n\t\t\t\t\t\tif (!_n11.$) {\n\t\t\t\t\t\t\tvar decoded = _n11.a;\n\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\telm$core$Result$map,\n\t\t\t\t\t\t\t\tfunction (_n13) {\n\t\t\t\t\t\t\t\t\treturn valueLocal;\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tA3(\n\t\t\t\t\t\t\t\t\telm$core$List$foldl,\n\t\t\t\t\t\t\t\t\tF2(\n\t\t\t\t\t\t\t\t\t\tfunction (item, res) {\n\t\t\t\t\t\t\t\t\t\t\tif (!res.$) {\n\t\t\t\t\t\t\t\t\t\t\t\tvar index = res.a;\n\t\t\t\t\t\t\t\t\t\t\t\treturn A3(validateItem, item, itemSchema, index);\n\t\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t\treturn res;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\telm$core$Result$Ok(0),\n\t\t\t\t\t\t\t\t\tdecoded));\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn elm$core$Result$Ok(valueLocal);\n\t\t\t\t\t\t}\n\t\t\t\t\tcase 2:\n\t\t\t\t\t\tvar listItemSchemas = _n10.a;\n\t\t\t\t\t\tvar _n14 = A2(\n\t\t\t\t\t\t\telm$json$Json$Decode$decodeValue,\n\t\t\t\t\t\t\telm$json$Json$Decode$list(elm$json$Json$Decode$value),\n\t\t\t\t\t\t\tvalueLocal);\n\t\t\t\t\t\tif (!_n14.$) {\n\t\t\t\t\t\t\tvar decoded = _n14.a;\n\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\telm$core$Result$map,\n\t\t\t\t\t\t\t\tfunction (_n18) {\n\t\t\t\t\t\t\t\t\treturn valueLocal;\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tA3(\n\t\t\t\t\t\t\t\t\telm$core$List$foldl,\n\t\t\t\t\t\t\t\t\tF2(\n\t\t\t\t\t\t\t\t\t\tfunction (item, res) {\n\t\t\t\t\t\t\t\t\t\t\tif (!res.$) {\n\t\t\t\t\t\t\t\t\t\t\t\tvar index = res.a;\n\t\t\t\t\t\t\t\t\t\t\t\tvar _n16 = elm$core$List$head(\n\t\t\t\t\t\t\t\t\t\t\t\t\tA2(elm$core$List$drop, index, listItemSchemas));\n\t\t\t\t\t\t\t\t\t\t\t\tif (!_n16.$) {\n\t\t\t\t\t\t\t\t\t\t\t\t\tvar itemSchema = _n16.a;\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn A3(validateItem, item, itemSchema, index);\n\t\t\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t\t\tvar _n17 = schemaLocal.ag;\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (!_n17.$) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tvar itemSchema = _n17.a;\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn A3(validateItem, item, itemSchema, index);\n\t\t\t\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn elm$core$Result$Ok(index + 1);\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t\treturn res;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\telm$core$Result$Ok(0),\n\t\t\t\t\t\t\t\t\tdecoded));\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn elm$core$Result$Ok(valueLocal);\n\t\t\t\t\t\t}\n\t\t\t\t\tdefault:\n\t\t\t\t\t\treturn elm$core$Result$Ok(valueLocal);\n\t\t\t\t}\n\t\t\t});\n\t\tvar validateNot = F2(\n\t\t\tfunction (validationOptionsLocal, jsonPointer) {\n\t\t\t\treturn A3(\n\t\t\t\t\twhenSubschema,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.aP;\n\t\t\t\t\t},\n\t\t\t\t\telm$json$Json$Decode$value,\n\t\t\t\t\tF2(\n\t\t\t\t\t\tfunction (notSchema, val) {\n\t\t\t\t\t\t\treturn _Utils_eq(\n\t\t\t\t\t\t\t\tA4(validateSchema, validationOptionsLocal, jsonPointer, val, notSchema),\n\t\t\t\t\t\t\t\telm$core$Result$Ok(val)) ? elm$core$Result$Err(\n\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Validation$Error, jsonPointer, json_tools$json_schema$Json$Schema$Validation$Not)\n\t\t\t\t\t\t\t\t\t])) : elm$core$Result$Ok(val);\n\t\t\t\t\t\t}));\n\t\t\t});\n\t\tvar validateOneOf = F2(\n\t\t\tfunction (validationOptionsLocal, jsonPointer) {\n\t\t\t\treturn A3(\n\t\t\t\t\twhen,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.aR;\n\t\t\t\t\t},\n\t\t\t\t\telm$json$Json$Decode$value,\n\t\t\t\t\tF2(\n\t\t\t\t\t\tfunction (oneOf, val) {\n\t\t\t\t\t\t\tvar validSubschema = function (schemaLocal) {\n\t\t\t\t\t\t\t\treturn _Utils_eq(\n\t\t\t\t\t\t\t\t\tA4(validateSchema, validationOptionsLocal, jsonPointer, val, schemaLocal),\n\t\t\t\t\t\t\t\t\telm$core$Result$Ok(val));\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\tvar _n9 = elm$core$List$length(\n\t\t\t\t\t\t\t\tA2(elm$core$List$filter, validSubschema, oneOf));\n\t\t\t\t\t\t\tswitch (_n9) {\n\t\t\t\t\t\t\t\tcase 1:\n\t\t\t\t\t\t\t\t\treturn elm$core$Result$Ok(val);\n\t\t\t\t\t\t\t\tcase 0:\n\t\t\t\t\t\t\t\t\treturn elm$core$Result$Err(\n\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Validation$Error, jsonPointer, json_tools$json_schema$Json$Schema$Validation$OneOfNoneSucceed)\n\t\t\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\tvar len = _n9;\n\t\t\t\t\t\t\t\t\treturn elm$core$Result$Err(\n\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$Error,\n\t\t\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$OneOfManySucceed(len))\n\t\t\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}));\n\t\t\t});\n\t\tvar validatePatternProperties = F3(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, v) {\n\t\t\t\treturn A4(\n\t\t\t\t\twhen,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.aT;\n\t\t\t\t\t},\n\t\t\t\t\telm$json$Json$Decode$keyValuePairs(elm$json$Json$Decode$value),\n\t\t\t\t\tF2(\n\t\t\t\t\t\tfunction (_n5, obj) {\n\t\t\t\t\t\t\tvar patternProperties = _n5;\n\t\t\t\t\t\t\treturn A3(\n\t\t\t\t\t\t\t\telm$core$List$foldl,\n\t\t\t\t\t\t\t\tF2(\n\t\t\t\t\t\t\t\t\tfunction (_n6, res) {\n\t\t\t\t\t\t\t\t\t\tvar pattern = _n6.a;\n\t\t\t\t\t\t\t\t\t\tvar schemaLocal = _n6.b;\n\t\t\t\t\t\t\t\t\t\tif (!res.$) {\n\t\t\t\t\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$concatErrors,\n\t\t\t\t\t\t\t\t\t\t\t\telm$core$Result$Ok(v),\n\t\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$List$map,\n\t\t\t\t\t\t\t\t\t\t\t\t\tfunction (_n8) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tvar key = _n8.a;\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tvar valueLocal = _n8.b;\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn A4(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalidateSchema,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalidationOptionsLocal,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tbE: _Utils_ap(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tjsonPointer.bE,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[key]))\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalueLocal,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tschemaLocal);\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\tA2(getPropsByPattern, pattern, obj)));\n\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\treturn res;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\telm$core$Result$Ok(v),\n\t\t\t\t\t\t\t\tpatternProperties);\n\t\t\t\t\t\t}),\n\t\t\t\t\tv);\n\t\t\t});\n\t\tvar validateProperties = F4(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, v, subSchema) {\n\t\t\t\treturn A5(\n\t\t\t\t\twhen,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.aY;\n\t\t\t\t\t},\n\t\t\t\t\telm$json$Json$Decode$keyValuePairs(elm$json$Json$Decode$value),\n\t\t\t\t\tF2(\n\t\t\t\t\t\tfunction (properties, obj) {\n\t\t\t\t\t\t\tvar newProps = A4(addDefaultProperties, validationOptionsLocal, jsonPointer, subSchema.aY, obj);\n\t\t\t\t\t\t\tvar upgradedObject = _Utils_ap(obj, newProps);\n\t\t\t\t\t\t\tvar addedPropNames = A2(\n\t\t\t\t\t\t\t\telm$core$List$map,\n\t\t\t\t\t\t\t\tfunction (_n4) {\n\t\t\t\t\t\t\t\t\tvar name = _n4.a;\n\t\t\t\t\t\t\t\t\treturn name;\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tnewProps);\n\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$concatErrors,\n\t\t\t\t\t\t\t\telm$core$Result$Ok(\n\t\t\t\t\t\t\t\t\telm$json$Json$Encode$object(upgradedObject)),\n\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\telm$core$List$map,\n\t\t\t\t\t\t\t\t\tfunction (_n2) {\n\t\t\t\t\t\t\t\t\t\tvar key = _n2.a;\n\t\t\t\t\t\t\t\t\t\tvar valueLocal = _n2.b;\n\t\t\t\t\t\t\t\t\t\tif (A2(elm$core$List$member, key, addedPropNames)) {\n\t\t\t\t\t\t\t\t\t\t\treturn elm$core$Result$Ok(valueLocal);\n\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\tvar _n3 = A2(getSchema, key, properties);\n\t\t\t\t\t\t\t\t\t\t\tif (!_n3.$) {\n\t\t\t\t\t\t\t\t\t\t\t\tvar schemaLocalLocal = _n3.a;\n\t\t\t\t\t\t\t\t\t\t\t\treturn A4(\n\t\t\t\t\t\t\t\t\t\t\t\t\tvalidateSchema,\n\t\t\t\t\t\t\t\t\t\t\t\t\tvalidationOptionsLocal,\n\t\t\t\t\t\t\t\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tbE: _Utils_ap(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tjsonPointer.bE,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[key]))\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\t\t\t\tvalueLocal,\n\t\t\t\t\t\t\t\t\t\t\t\t\tschemaLocalLocal);\n\t\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t\treturn elm$core$Result$Ok(valueLocal);\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tupgradedObject));\n\t\t\t\t\t\t}),\n\t\t\t\t\tv,\n\t\t\t\t\tsubSchema);\n\t\t\t});\n\t\tvar validatePropertyNames = F3(\n\t\t\tfunction (validationOptionsLocal, jsonPointer, v) {\n\t\t\t\tvar validatePropertyName = F2(\n\t\t\t\t\tfunction (schemaLocal, key) {\n\t\t\t\t\t\tvar _n1 = A4(\n\t\t\t\t\t\t\tvalidateSchema,\n\t\t\t\t\t\t\tvalidationOptionsLocal,\n\t\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tbE: _Utils_ap(\n\t\t\t\t\t\t\t\t\t\tjsonPointer.bE,\n\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t[key]))\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\telm$json$Json$Encode$string(key),\n\t\t\t\t\t\t\tschemaLocal);\n\t\t\t\t\t\tif (!_n1.$) {\n\t\t\t\t\t\t\tvar x = _n1.a;\n\t\t\t\t\t\t\treturn elm$core$Maybe$Nothing;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tvar list = _n1.a;\n\t\t\t\t\t\t\treturn elm$core$Maybe$Just(list);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\treturn A4(\n\t\t\t\t\twhenSubschema,\n\t\t\t\t\tfunction ($) {\n\t\t\t\t\t\treturn $.aZ;\n\t\t\t\t\t},\n\t\t\t\t\telm$json$Json$Decode$keyValuePairs(elm$json$Json$Decode$value),\n\t\t\t\t\tF2(\n\t\t\t\t\t\tfunction (propertyNames, obj) {\n\t\t\t\t\t\t\treturn function (invalidNames) {\n\t\t\t\t\t\t\t\treturn elm$core$List$isEmpty(invalidNames) ? elm$core$Result$Ok(v) : elm$core$Result$Err(\n\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$Error,\n\t\t\t\t\t\t\t\t\t\t\tjsonPointer,\n\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Validation$InvalidPropertyName(\n\t\t\t\t\t\t\t\t\t\t\t\telm$core$List$concat(invalidNames)))\n\t\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t\t}(\n\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\telm$core$List$filterMap,\n\t\t\t\t\t\t\t\t\tvalidatePropertyName(propertyNames),\n\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\telm$core$List$map,\n\t\t\t\t\t\t\t\t\t\tfunction (_n0) {\n\t\t\t\t\t\t\t\t\t\t\tvar key = _n0.a;\n\t\t\t\t\t\t\t\t\t\t\treturn key;\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\tobj)));\n\t\t\t\t\t\t}),\n\t\t\t\t\tv);\n\t\t\t});\n\t\treturn A4(\n\t\t\tvalidateSchema,\n\t\t\tvalidationOptions,\n\t\t\tA2(json_tools$json_schema$Json$Schema$Validation$JsonPointer, '', _List_Nil),\n\t\t\tvalue,\n\t\t\tschema);\n\t});\nvar elm$json$Json$Decode$decodeString = _Json_runOnString;\nvar json_tools$json_schema$Json$Schema$Definitions$blankSchema = json_tools$json_schema$Json$Schema$Definitions$ObjectSchema(json_tools$json_schema$Json$Schema$Definitions$blankSubSchema);\nvar json_tools$json_schema$Json$Schemata$decodeUnsafe = A2(\n\telm$core$Basics$composeR,\n\telm$json$Json$Decode$decodeString(json_tools$json_schema$Json$Schema$Definitions$decoder),\n\telm$core$Result$withDefault(json_tools$json_schema$Json$Schema$Definitions$blankSchema));\nvar json_tools$json_schema$Json$Schemata$draft4 = json_tools$json_schema$Json$Schemata$decodeUnsafe('\\n {\\n \"id\": \"http://json-schema.org/draft-04/schema#\",\\n \"$schema\": \"http://json-schema.org/draft-04/schema#\",\\n \"description\": \"Core schema meta-schema\",\\n \"definitions\": {\\n \"schemaArray\": {\\n \"type\": \"array\",\\n \"minItems\": 1,\\n \"items\": { \"$ref\": \"#\" }\\n },\\n \"positiveInteger\": {\\n \"type\": \"integer\",\\n \"minimum\": 0\\n },\\n \"positiveIntegerDefault0\": {\\n \"allOf\": [ { \"$ref\": \"#/definitions/positiveInteger\" }, { \"default\": 0 } ]\\n },\\n \"simpleTypes\": {\\n \"enum\": [ \"array\", \"boolean\", \"integer\", \"null\", \"number\", \"object\", \"string\" ]\\n },\\n \"stringArray\": {\\n \"type\": \"array\",\\n \"items\": { \"type\": \"string\" },\\n \"minItems\": 1,\\n \"uniqueItems\": true\\n }\\n },\\n \"type\": \"object\",\\n \"properties\": {\\n \"id\": {\\n \"type\": \"string\",\\n \"format\": \"uri\",\\n \"description\": \"Identifier of schema\"\\n },\\n \"$schema\": {\\n \"type\": \"string\",\\n \"format\": \"uri\",\\n \"description\": \"Link to a schema which validates this object\"\\n },\\n \"title\": {\\n \"type\": \"string\"\\n },\\n \"description\": {\\n \"type\": \"string\"\\n },\\n \"default\": {},\\n \"multipleOf\": {\\n \"type\": \"number\",\\n \"minimum\": 0,\\n \"exclusiveMinimum\": true\\n },\\n \"maximum\": {\\n \"type\": \"number\"\\n },\\n \"exclusiveMaximum\": {\\n \"type\": \"boolean\",\\n \"default\": false\\n },\\n \"minimum\": {\\n \"type\": \"number\"\\n },\\n \"exclusiveMinimum\": {\\n \"type\": \"boolean\",\\n \"default\": false\\n },\\n \"maxLength\": { \"$ref\": \"#/definitions/positiveInteger\" },\\n \"minLength\": { \"$ref\": \"#/definitions/positiveIntegerDefault0\" },\\n \"pattern\": {\\n \"type\": \"string\",\\n \"format\": \"regex\"\\n },\\n \"additionalItems\": {\\n \"anyOf\": [\\n { \"type\": \"boolean\" },\\n { \"$ref\": \"#\" }\\n ],\\n \"default\": {}\\n },\\n \"items\": {\\n \"anyOf\": [\\n { \"$ref\": \"#\" },\\n { \"$ref\": \"#/definitions/schemaArray\" }\\n ],\\n \"default\": {}\\n },\\n \"maxItems\": { \"$ref\": \"#/definitions/positiveInteger\" },\\n \"minItems\": { \"$ref\": \"#/definitions/positiveIntegerDefault0\" },\\n \"uniqueItems\": {\\n \"type\": \"boolean\",\\n \"default\": false\\n },\\n \"maxProperties\": { \"$ref\": \"#/definitions/positiveInteger\" },\\n \"minProperties\": { \"$ref\": \"#/definitions/positiveIntegerDefault0\" },\\n \"required\": { \"$ref\": \"#/definitions/stringArray\" },\\n \"additionalProperties\": {\\n \"anyOf\": [\\n { \"type\": \"boolean\" },\\n { \"$ref\": \"#\" }\\n ],\\n \"default\": {}\\n },\\n \"definitions\": {\\n \"type\": \"object\",\\n \"additionalProperties\": { \"$ref\": \"#\" },\\n \"default\": {}\\n },\\n \"properties\": {\\n \"type\": \"object\",\\n \"additionalProperties\": { \"$ref\": \"#\" },\\n \"default\": {}\\n },\\n \"patternProperties\": {\\n \"type\": \"object\",\\n \"additionalProperties\": { \"$ref\": \"#\" },\\n \"default\": {}\\n },\\n \"dependencies\": {\\n \"type\": \"object\",\\n \"additionalProperties\": {\\n \"anyOf\": [\\n { \"$ref\": \"#\" },\\n { \"$ref\": \"#/definitions/stringArray\" }\\n ]\\n }\\n },\\n \"enum\": {\\n \"type\": \"array\",\\n \"minItems\": 1,\\n \"uniqueItems\": true\\n },\\n \"type\": {\\n \"anyOf\": [\\n { \"$ref\": \"#/definitions/simpleTypes\" },\\n {\\n \"type\": \"array\",\\n \"items\": { \"$ref\": \"#/definitions/simpleTypes\" },\\n \"minItems\": 1,\\n \"uniqueItems\": true\\n }\\n ]\\n },\\n \"allOf\": { \"$ref\": \"#/definitions/schemaArray\" },\\n \"anyOf\": { \"$ref\": \"#/definitions/schemaArray\" },\\n \"oneOf\": { \"$ref\": \"#/definitions/schemaArray\" },\\n \"not\": { \"$ref\": \"#\" }\\n },\\n \"dependencies\": {\\n \"exclusiveMaximum\": [ \"maximum\" ],\\n \"exclusiveMinimum\": [ \"minimum\" ]\\n },\\n \"default\": {}\\n }\\n ');\nvar json_tools$json_schema$Json$Schemata$draft6 = json_tools$json_schema$Json$Schemata$decodeUnsafe('\\n {\\n \"$schema\": \"http://json-schema.org/draft-06/schema#\",\\n \"$id\": \"http://json-schema.org/draft-06/schema#\",\\n \"title\": \"Core schema meta-schema\",\\n \"definitions\": {\\n \"schemaArray\": {\\n \"type\": \"array\",\\n \"minItems\": 1,\\n \"items\": { \"$ref\": \"#\" }\\n },\\n \"nonNegativeInteger\": {\\n \"type\": \"integer\",\\n \"minimum\": 0\\n },\\n \"nonNegativeIntegerDefault0\": {\\n \"allOf\": [\\n { \"$ref\": \"#/definitions/nonNegativeInteger\" },\\n { \"default\": 0 }\\n ]\\n },\\n \"simpleTypes\": {\\n \"enum\": [\\n \"array\",\\n \"boolean\",\\n \"integer\",\\n \"null\",\\n \"number\",\\n \"object\",\\n \"string\"\\n ]\\n },\\n \"stringArray\": {\\n \"type\": \"array\",\\n \"items\": { \"type\": \"string\" },\\n \"uniqueItems\": true,\\n \"default\": []\\n }\\n },\\n \"type\": [\"object\", \"boolean\"],\\n \"properties\": {\\n \"$id\": {\\n \"type\": \"string\",\\n \"format\": \"uri-reference\",\\n \"description\": \"Identifier of schema\"\\n },\\n \"$schema\": {\\n \"type\": \"string\",\\n \"format\": \"uri\",\\n \"description\": \"Link to a schema which validates this object\"\\n },\\n \"$ref\": {\\n \"type\": \"string\",\\n \"format\": \"uri-reference\"\\n },\\n \"title\": {\\n \"type\": \"string\"\\n },\\n \"description\": {\\n \"type\": \"string\"\\n },\\n \"default\": {},\\n \"multipleOf\": {\\n \"type\": \"number\",\\n \"exclusiveMinimum\": 0\\n },\\n \"maximum\": {\\n \"type\": \"number\"\\n },\\n \"exclusiveMaximum\": {\\n \"type\": \"number\"\\n },\\n \"minimum\": {\\n \"type\": \"number\"\\n },\\n \"exclusiveMinimum\": {\\n \"type\": \"number\"\\n },\\n \"maxLength\": { \"$ref\": \"#/definitions/nonNegativeInteger\" },\\n \"minLength\": { \"$ref\": \"#/definitions/nonNegativeIntegerDefault0\" },\\n \"pattern\": {\\n \"type\": \"string\",\\n \"format\": \"regex\"\\n },\\n \"additionalItems\": { \"$ref\": \"#\" },\\n \"items\": {\\n \"anyOf\": [\\n { \"$ref\": \"#\" },\\n { \"$ref\": \"#/definitions/schemaArray\" }\\n ],\\n \"default\": {}\\n },\\n \"maxItems\": { \"$ref\": \"#/definitions/nonNegativeInteger\" },\\n \"minItems\": { \"$ref\": \"#/definitions/nonNegativeIntegerDefault0\" },\\n \"uniqueItems\": {\\n \"type\": \"boolean\",\\n \"default\": false\\n },\\n \"contains\": { \"$ref\": \"#\" },\\n \"maxProperties\": { \"$ref\": \"#/definitions/nonNegativeInteger\" },\\n \"minProperties\": { \"$ref\": \"#/definitions/nonNegativeIntegerDefault0\" },\\n \"required\": { \"$ref\": \"#/definitions/stringArray\" },\\n \"additionalProperties\": { \"$ref\": \"#\" },\\n \"definitions\": {\\n \"type\": \"object\",\\n \"additionalProperties\": { \"$ref\": \"#\" },\\n \"default\": {}\\n },\\n \"properties\": {\\n \"type\": \"object\",\\n \"additionalProperties\": { \"$ref\": \"#\" },\\n \"default\": {}\\n },\\n \"patternProperties\": {\\n \"type\": \"object\",\\n \"additionalProperties\": { \"$ref\": \"#\" },\\n \"default\": {}\\n },\\n \"dependencies\": {\\n \"type\": \"object\",\\n \"additionalProperties\": {\\n \"anyOf\": [\\n { \"$ref\": \"#\" },\\n { \"$ref\": \"#/definitions/stringArray\" }\\n ]\\n }\\n },\\n \"propertyNames\": { \"$ref\": \"#\" },\\n \"const\": {},\\n \"enum\": {\\n \"type\": \"array\",\\n \"minItems\": 1,\\n \"uniqueItems\": true\\n },\\n \"type\": {\\n \"anyOf\": [\\n { \"$ref\": \"#/definitions/simpleTypes\" },\\n {\\n \"type\": \"array\",\\n \"items\": { \"$ref\": \"#/definitions/simpleTypes\" },\\n \"minItems\": 1,\\n \"uniqueItems\": true\\n }\\n ]\\n },\\n \"format\": { \"type\": \"string\" },\\n \"allOf\": { \"$ref\": \"#/definitions/schemaArray\" },\\n \"anyOf\": { \"$ref\": \"#/definitions/schemaArray\" },\\n \"oneOf\": { \"$ref\": \"#/definitions/schemaArray\" },\\n \"not\": { \"$ref\": \"#\" }\\n },\\n \"default\": {}\\n }\\n ');\nvar json_tools$json_schema$Ref$defaultPool = A3(\n\telm$core$Dict$insert,\n\t'http://json-schema.org/draft-04/schema',\n\tjson_tools$json_schema$Json$Schemata$draft4,\n\tA3(\n\t\telm$core$Dict$insert,\n\t\t'http://json-schema.org/draft-06/schema#',\n\t\tjson_tools$json_schema$Json$Schemata$draft6,\n\t\tA3(elm$core$Dict$insert, 'http://json-schema.org/draft-06/schema', json_tools$json_schema$Json$Schemata$draft6, elm$core$Dict$empty)));\nvar json_tools$json_schema$Json$Schema$validateValue = F3(\n\tfunction (validationOptions, value, schema) {\n\t\tvar _n0 = A2(json_tools$json_schema$Json$Schema$Helpers$collectIds, schema, json_tools$json_schema$Ref$defaultPool);\n\t\tvar pool = _n0.a;\n\t\treturn A5(json_tools$json_schema$Json$Schema$Validation$validate, validationOptions, pool, value, schema, schema);\n\t});\nvar json_tools$json_value$Json$Value$NullValue = {$: 3};\nvar json_tools$json_value$Json$Value$ArrayValue = function (a) {\n\treturn {$: 1, a: a};\n};\nvar json_tools$json_value$Json$Value$BoolValue = function (a) {\n\treturn {$: 2, a: a};\n};\nvar json_tools$json_value$Json$Value$NumericValue = function (a) {\n\treturn {$: 4, a: a};\n};\nvar json_tools$json_value$Json$Value$ObjectValue = function (a) {\n\treturn {$: 0, a: a};\n};\nvar json_tools$json_value$Json$Value$StringValue = function (a) {\n\treturn {$: 5, a: a};\n};\nfunction json_tools$json_value$Json$Value$cyclic$decoder() {\n\tvar objectValueDecoder = A2(\n\t\telm$json$Json$Decode$map,\n\t\tjson_tools$json_value$Json$Value$ObjectValue,\n\t\telm$json$Json$Decode$keyValuePairs(\n\t\t\telm$json$Json$Decode$lazy(\n\t\t\t\tfunction (_n1) {\n\t\t\t\t\treturn json_tools$json_value$Json$Value$cyclic$decoder();\n\t\t\t\t})));\n\tvar arrayValueDecoder = A2(\n\t\telm$json$Json$Decode$map,\n\t\tjson_tools$json_value$Json$Value$ArrayValue,\n\t\telm$json$Json$Decode$list(\n\t\t\telm$json$Json$Decode$lazy(\n\t\t\t\tfunction (_n0) {\n\t\t\t\t\treturn json_tools$json_value$Json$Value$cyclic$decoder();\n\t\t\t\t})));\n\treturn elm$json$Json$Decode$oneOf(\n\t\t_List_fromArray(\n\t\t\t[\n\t\t\t\tobjectValueDecoder,\n\t\t\t\tarrayValueDecoder,\n\t\t\t\telm$json$Json$Decode$null(json_tools$json_value$Json$Value$NullValue),\n\t\t\t\tA2(elm$json$Json$Decode$map, json_tools$json_value$Json$Value$StringValue, elm$json$Json$Decode$string),\n\t\t\t\tA2(elm$json$Json$Decode$map, json_tools$json_value$Json$Value$NumericValue, elm$json$Json$Decode$float),\n\t\t\t\tA2(elm$json$Json$Decode$map, json_tools$json_value$Json$Value$BoolValue, elm$json$Json$Decode$bool)\n\t\t\t]));\n}\nvar json_tools$json_value$Json$Value$decoder = json_tools$json_value$Json$Value$cyclic$decoder();\njson_tools$json_value$Json$Value$cyclic$decoder = function () {\n\treturn json_tools$json_value$Json$Value$decoder;\n};\nvar json_tools$json_value$Json$Value$decodeValue = function (v) {\n\treturn A2(\n\t\telm$core$Result$withDefault,\n\t\tjson_tools$json_value$Json$Value$NullValue,\n\t\tA2(elm$json$Json$Decode$decodeValue, json_tools$json_value$Json$Value$decoder, v));\n};\nvar elm$json$Json$Encode$bool = _Json_wrap;\nvar elm$json$Json$Encode$float = _Json_wrap;\nvar elm$json$Json$Encode$list = F2(\n\tfunction (func, entries) {\n\t\treturn _Json_wrap(\n\t\t\tA3(\n\t\t\t\telm$core$List$foldl,\n\t\t\t\t_Json_addEntry(func),\n\t\t\t\t_Json_emptyArray(0),\n\t\t\t\tentries));\n\t});\nvar elm$json$Json$Encode$null = _Json_encodeNull;\nvar json_tools$json_value$Json$Value$encode = function (v) {\n\tswitch (v.$) {\n\t\tcase 0:\n\t\t\tvar ov = v.a;\n\t\t\treturn elm$json$Json$Encode$object(\n\t\t\t\tA2(\n\t\t\t\t\telm$core$List$map,\n\t\t\t\t\tfunction (_n1) {\n\t\t\t\t\t\tvar key = _n1.a;\n\t\t\t\t\t\tvar jv = _n1.b;\n\t\t\t\t\t\treturn _Utils_Tuple2(\n\t\t\t\t\t\t\tkey,\n\t\t\t\t\t\t\tjson_tools$json_value$Json$Value$encode(jv));\n\t\t\t\t\t},\n\t\t\t\t\tov));\n\t\tcase 1:\n\t\t\tvar av = v.a;\n\t\t\treturn A2(elm$json$Json$Encode$list, json_tools$json_value$Json$Value$encode, av);\n\t\tcase 5:\n\t\t\tvar s = v.a;\n\t\t\treturn elm$json$Json$Encode$string(s);\n\t\tcase 2:\n\t\t\tvar b = v.a;\n\t\t\treturn elm$json$Json$Encode$bool(b);\n\t\tcase 3:\n\t\t\treturn elm$json$Json$Encode$null;\n\t\tdefault:\n\t\t\tvar n = v.a;\n\t\t\treturn elm$json$Json$Encode$float(n);\n\t}\n};\nvar author$project$Json$Form$init = F3(\n\tfunction (config, schema, v) {\n\t\tvar multilineFieldsPaths = A3(author$project$Json$Form$collectMultilinePaths, _List_Nil, _List_Nil, schema);\n\t\tvar initVal = function (someValue) {\n\t\t\treturn function (res) {\n\t\t\t\tif (!res.$) {\n\t\t\t\t\tvar updValue = res.a;\n\t\t\t\t\treturn _Utils_Tuple2(\n\t\t\t\t\t\telm$core$Maybe$Just(\n\t\t\t\t\t\t\tjson_tools$json_value$Json$Value$decodeValue(updValue)),\n\t\t\t\t\t\telm$core$Dict$empty);\n\t\t\t\t} else {\n\t\t\t\t\tvar x = res.a;\n\t\t\t\t\treturn _Utils_Tuple2(\n\t\t\t\t\t\telm$core$Maybe$Just(\n\t\t\t\t\t\t\tjson_tools$json_value$Json$Value$decodeValue(someValue)),\n\t\t\t\t\t\tauthor$project$Json$Form$dictFromListErrors(x));\n\t\t\t\t}\n\t\t\t}(\n\t\t\t\tA3(\n\t\t\t\t\tjson_tools$json_schema$Json$Schema$validateValue,\n\t\t\t\t\t{P: true},\n\t\t\t\t\tsomeValue,\n\t\t\t\t\tschema));\n\t\t};\n\t\tvar _n0 = function () {\n\t\t\tif (!v.$) {\n\t\t\t\tvar something = v.a;\n\t\t\t\treturn initVal(\n\t\t\t\t\tjson_tools$json_value$Json$Value$encode(something));\n\t\t\t} else {\n\t\t\t\tif (schema.$ === 1) {\n\t\t\t\t\tvar os = schema.a;\n\t\t\t\t\tvar _n3 = os.bh;\n\t\t\t\t\tif (!_n3.$) {\n\t\t\t\t\t\tvar def = _n3.a;\n\t\t\t\t\t\treturn initVal(def);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvar _n4 = os.S;\n\t\t\t\t\t\tif ((_n4.$ === 1) && (_n4.a === 5)) {\n\t\t\t\t\t\t\tvar _n5 = _n4.a;\n\t\t\t\t\t\t\treturn initVal(\n\t\t\t\t\t\t\t\telm$json$Json$Encode$object(_List_Nil));\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn _Utils_Tuple2(elm$core$Maybe$Nothing, elm$core$Dict$empty);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\treturn _Utils_Tuple2(elm$core$Maybe$Nothing, elm$core$Dict$empty);\n\t\t\t\t}\n\t\t\t}\n\t\t}();\n\t\tvar value = _n0.a;\n\t\tvar errors = _n0.b;\n\t\treturn _Utils_Tuple2(\n\t\t\t{F: _List_Nil, i: _List_Nil, V: config, o: '', W: errors, x: elm$core$Set$empty, p: elm$core$Dict$empty, g: elm$core$Maybe$Nothing, a5: schema, ab: false, bN: value},\n\t\t\telm$core$Platform$Cmd$batch(\n\t\t\t\tA2(\n\t\t\t\t\telm$core$List$map,\n\t\t\t\t\tfunction (path) {\n\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\telm$core$Task$attempt,\n\t\t\t\t\t\t\tauthor$project$Json$Form$Definitions$GetViewport(path),\n\t\t\t\t\t\t\telm$browser$Browser$Dom$getViewportOf(\n\t\t\t\t\t\t\t\tconfig.bz + ('_' + A2(elm$core$String$join, '_', path))));\n\t\t\t\t\t},\n\t\t\t\t\tmultilineFieldsPaths)));\n\t});\nvar author$project$Json$Form$None = {$: 0};\nvar author$project$Json$Form$UpdateValue = F2(\n\tfunction (a, b) {\n\t\treturn {$: 1, a: a, b: b};\n\t});\nvar author$project$Json$Form$initValue = F2(\n\tfunction (schema, someValue) {\n\t\treturn function (res) {\n\t\t\tif (!res.$) {\n\t\t\t\tvar updValue = res.a;\n\t\t\t\treturn updValue;\n\t\t\t} else {\n\t\t\t\tvar x = res.a;\n\t\t\t\treturn someValue;\n\t\t\t}\n\t\t}(\n\t\t\tA3(\n\t\t\t\tjson_tools$json_schema$Json$Schema$validateValue,\n\t\t\t\t{P: true},\n\t\t\t\tsomeValue,\n\t\t\t\tschema));\n\t});\nvar author$project$Json$Form$defaultFor = function (s) {\n\tif (s.$ === 1) {\n\t\tvar os = s.a;\n\t\treturn _Utils_eq(\n\t\t\tos.S,\n\t\t\tjson_tools$json_schema$Json$Schema$Definitions$SingleType(5)) ? json_tools$json_value$Json$Value$decodeValue(\n\t\t\tA2(\n\t\t\t\tauthor$project$Json$Form$initValue,\n\t\t\t\ts,\n\t\t\t\telm$json$Json$Encode$object(_List_Nil))) : json_tools$json_value$Json$Value$NullValue;\n\t} else {\n\t\treturn json_tools$json_value$Json$Value$NullValue;\n\t}\n};\nvar author$project$Json$Form$touch = F3(\n\tfunction (path, focused, beingWhat) {\n\t\treturn _Utils_eq(path, elm$core$Maybe$Nothing) ? A2(\n\t\t\telm$core$List$cons,\n\t\t\tA2(elm$core$Maybe$withDefault, _List_Nil, focused),\n\t\t\tbeingWhat) : beingWhat;\n\t});\nvar author$project$Json$Form$withExMsg = F2(\n\tfunction (a, b) {\n\t\treturn _Utils_Tuple2(b, a);\n\t});\nvar elm$core$Platform$Cmd$none = elm$core$Platform$Cmd$batch(_List_Nil);\nvar elm$core$Result$fromMaybe = F2(\n\tfunction (err, maybe) {\n\t\tif (!maybe.$) {\n\t\t\tvar v = maybe.a;\n\t\t\treturn elm$core$Result$Ok(v);\n\t\t} else {\n\t\t\treturn elm$core$Result$Err(err);\n\t\t}\n\t});\nvar json_tools$json_value$Json$Value$getIn = F2(\n\tfunction (path, value) {\n\t\tif (!path.b) {\n\t\t\treturn elm$core$Result$Ok(value);\n\t\t} else {\n\t\t\tvar head = path.a;\n\t\t\tvar tail = path.b;\n\t\t\tswitch (value.$) {\n\t\t\t\tcase 0:\n\t\t\t\t\tvar v = value.a;\n\t\t\t\t\treturn A2(\n\t\t\t\t\t\telm$core$Result$andThen,\n\t\t\t\t\t\tjson_tools$json_value$Json$Value$getIn(tail),\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$core$Result$fromMaybe,\n\t\t\t\t\t\t\t'Key not found',\n\t\t\t\t\t\t\tA3(\n\t\t\t\t\t\t\t\telm$core$List$foldl,\n\t\t\t\t\t\t\t\tF2(\n\t\t\t\t\t\t\t\t\tfunction (_n2, res) {\n\t\t\t\t\t\t\t\t\t\tvar key = _n2.a;\n\t\t\t\t\t\t\t\t\t\tvar val = _n2.b;\n\t\t\t\t\t\t\t\t\t\treturn (!_Utils_eq(res, elm$core$Maybe$Nothing)) ? res : (_Utils_eq(key, head) ? elm$core$Maybe$Just(val) : elm$core$Maybe$Nothing);\n\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\tv)));\n\t\t\t\tcase 1:\n\t\t\t\t\tvar v = value.a;\n\t\t\t\t\treturn A2(\n\t\t\t\t\t\telm$core$Result$andThen,\n\t\t\t\t\t\tjson_tools$json_value$Json$Value$getIn(tail),\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$core$Result$andThen,\n\t\t\t\t\t\t\tfunction (index) {\n\t\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\t\telm$core$Result$fromMaybe,\n\t\t\t\t\t\t\t\t\t'Index is too big',\n\t\t\t\t\t\t\t\t\telm$core$List$head(\n\t\t\t\t\t\t\t\t\t\tA2(elm$core$List$drop, index, v)));\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\telm$core$Result$fromMaybe,\n\t\t\t\t\t\t\t\t'Not an integer',\n\t\t\t\t\t\t\t\telm$core$String$toInt(head))));\n\t\t\t\tdefault:\n\t\t\t\t\treturn elm$core$Result$Err('You are trying to access property of something that is not object or array');\n\t\t\t}\n\t\t}\n\t});\nvar json_tools$json_value$Json$Value$setProperty = F3(\n\tfunction (key, value, object) {\n\t\tvar updateOrAppend = function (list) {\n\t\t\treturn A2(\n\t\t\t\telm$core$List$any,\n\t\t\t\tfunction (_n1) {\n\t\t\t\t\tvar k = _n1.a;\n\t\t\t\t\treturn _Utils_eq(k, key);\n\t\t\t\t},\n\t\t\t\tlist) ? A2(\n\t\t\t\telm$core$List$map,\n\t\t\t\tfunction (_n2) {\n\t\t\t\t\tvar k = _n2.a;\n\t\t\t\t\tvar v = _n2.b;\n\t\t\t\t\treturn _Utils_eq(k, key) ? _Utils_Tuple2(key, value) : _Utils_Tuple2(k, v);\n\t\t\t\t},\n\t\t\t\tlist) : _Utils_ap(\n\t\t\t\tlist,\n\t\t\t\t_List_fromArray(\n\t\t\t\t\t[\n\t\t\t\t\t\t_Utils_Tuple2(key, value)\n\t\t\t\t\t]));\n\t\t};\n\t\tswitch (object.$) {\n\t\t\tcase 0:\n\t\t\t\tvar o = object.a;\n\t\t\t\treturn elm$core$Result$Ok(\n\t\t\t\t\tjson_tools$json_value$Json$Value$ObjectValue(\n\t\t\t\t\t\tupdateOrAppend(o)));\n\t\t\tcase 1:\n\t\t\t\tvar list = object.a;\n\t\t\t\tvar index = A2(\n\t\t\t\t\telm$core$Result$withDefault,\n\t\t\t\t\telm$core$List$length(list),\n\t\t\t\t\tA2(elm$json$Json$Decode$decodeString, elm$json$Json$Decode$int, key));\n\t\t\t\treturn (_Utils_cmp(\n\t\t\t\t\telm$core$List$length(list),\n\t\t\t\t\tindex) > 0) ? elm$core$Result$Ok(\n\t\t\t\t\tjson_tools$json_value$Json$Value$ArrayValue(\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$core$List$indexedMap,\n\t\t\t\t\t\t\tF2(\n\t\t\t\t\t\t\t\tfunction (i, v) {\n\t\t\t\t\t\t\t\t\treturn _Utils_eq(i, index) ? value : v;\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\tlist))) : elm$core$Result$Ok(\n\t\t\t\t\tjson_tools$json_value$Json$Value$ArrayValue(\n\t\t\t\t\t\t_Utils_ap(\n\t\t\t\t\t\t\tlist,\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[value]))));\n\t\t\tdefault:\n\t\t\t\treturn (key === '0') ? elm$core$Result$Ok(\n\t\t\t\t\tjson_tools$json_value$Json$Value$ArrayValue(\n\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t[value]))) : elm$core$Result$Ok(\n\t\t\t\t\tjson_tools$json_value$Json$Value$ObjectValue(\n\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t_Utils_Tuple2(key, value)\n\t\t\t\t\t\t\t])));\n\t\t}\n\t});\nvar json_tools$json_value$Json$Value$setIn = F3(\n\tfunction (pathInJson, valueToSet, hostValue) {\n\t\tvar path = elm$core$List$reverse(pathInJson);\n\t\tvar newValue = function () {\n\t\t\tif (!path.b) {\n\t\t\t\treturn elm$core$Result$Ok(valueToSet);\n\t\t\t} else {\n\t\t\t\tvar subpath = path.b;\n\t\t\t\treturn function (_n3) {\n\t\t\t\t\tvar v = _n3.b;\n\t\t\t\t\treturn v;\n\t\t\t\t}(\n\t\t\t\t\tA3(\n\t\t\t\t\t\telm$core$List$foldl,\n\t\t\t\t\t\tF2(\n\t\t\t\t\t\t\tfunction (key, _n1) {\n\t\t\t\t\t\t\t\tvar thisPath = _n1.a;\n\t\t\t\t\t\t\t\tvar value = _n1.b;\n\t\t\t\t\t\t\t\tvar p = elm$core$List$reverse(thisPath);\n\t\t\t\t\t\t\t\tvar v = A2(\n\t\t\t\t\t\t\t\t\telm$core$Result$map,\n\t\t\t\t\t\t\t\t\tfunction (vv) {\n\t\t\t\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\t\t\t\telm$core$Result$withDefault,\n\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_value$Json$Value$ObjectValue(\n\t\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(key, vv)\n\t\t\t\t\t\t\t\t\t\t\t\t\t])),\n\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\telm$core$Result$andThen,\n\t\t\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_value$Json$Value$setProperty, key, vv),\n\t\t\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_value$Json$Value$getIn, p, hostValue)));\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tvalue);\n\t\t\t\t\t\t\t\tif (!thisPath.b) {\n\t\t\t\t\t\t\t\t\treturn _Utils_Tuple2(_List_Nil, v);\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\tvar tail = thisPath.b;\n\t\t\t\t\t\t\t\t\treturn _Utils_Tuple2(tail, v);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\tsubpath,\n\t\t\t\t\t\t\telm$core$Result$Ok(valueToSet)),\n\t\t\t\t\t\tpath));\n\t\t\t}\n\t\t}();\n\t\treturn newValue;\n\t});\nvar author$project$Json$Form$editValue = F3(\n\tfunction (model, path, val) {\n\t\tvar updatedJsonValue = A2(\n\t\t\telm$core$Maybe$withDefault,\n\t\t\tjson_tools$json_value$Json$Value$NullValue,\n\t\t\telm$core$Result$toMaybe(\n\t\t\t\tA3(\n\t\t\t\t\tjson_tools$json_value$Json$Value$setIn,\n\t\t\t\t\tpath,\n\t\t\t\t\tval,\n\t\t\t\t\tA2(elm$core$Maybe$withDefault, json_tools$json_value$Json$Value$NullValue, model.bN))));\n\t\tvar updatedValue = json_tools$json_value$Json$Value$encode(updatedJsonValue);\n\t\tvar validationResult = A3(\n\t\t\tjson_tools$json_schema$Json$Schema$validateValue,\n\t\t\t{P: true},\n\t\t\tupdatedValue,\n\t\t\tmodel.a5);\n\t\tif (!validationResult.$) {\n\t\t\tvar v = validationResult.a;\n\t\t\treturn A2(\n\t\t\t\tauthor$project$Json$Form$withExMsg,\n\t\t\t\tA2(\n\t\t\t\t\tauthor$project$Json$Form$UpdateValue,\n\t\t\t\t\telm$core$Maybe$Just(updatedJsonValue),\n\t\t\t\t\telm$core$Dict$empty),\n\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\tmodel,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tF: A3(\n\t\t\t\t\t\t\t\tauthor$project$Json$Form$touch,\n\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\telm$core$Maybe$Just(path),\n\t\t\t\t\t\t\t\tmodel.F),\n\t\t\t\t\t\t\tW: elm$core$Dict$empty,\n\t\t\t\t\t\t\tbN: elm$core$Result$toMaybe(\n\t\t\t\t\t\t\t\tA2(elm$json$Json$Decode$decodeValue, json_tools$json_value$Json$Value$decoder, v))\n\t\t\t\t\t\t}),\n\t\t\t\t\telm$core$Platform$Cmd$none));\n\t\t} else {\n\t\t\tvar e = validationResult.a;\n\t\t\tvar errors = author$project$Json$Form$dictFromListErrors(e);\n\t\t\treturn A2(\n\t\t\t\tauthor$project$Json$Form$withExMsg,\n\t\t\t\tA2(\n\t\t\t\t\tauthor$project$Json$Form$UpdateValue,\n\t\t\t\t\telm$core$Maybe$Just(updatedJsonValue),\n\t\t\t\t\terrors),\n\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\tmodel,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tF: A3(\n\t\t\t\t\t\t\t\tauthor$project$Json$Form$touch,\n\t\t\t\t\t\t\t\telm$core$Maybe$Nothing,\n\t\t\t\t\t\t\t\telm$core$Maybe$Just(path),\n\t\t\t\t\t\t\t\tmodel.F),\n\t\t\t\t\t\t\tW: errors,\n\t\t\t\t\t\t\tbN: elm$core$Maybe$Just(updatedJsonValue)\n\t\t\t\t\t\t}),\n\t\t\t\t\telm$core$Platform$Cmd$none));\n\t\t}\n\t});\nvar author$project$Json$Form$Definitions$NoOp = {$: 0};\nvar author$project$JsonFormUtil$jsonValueToString = function (jv) {\n\tswitch (jv.$) {\n\t\tcase 5:\n\t\t\tvar s = jv.a;\n\t\t\treturn s;\n\t\tcase 4:\n\t\t\tvar n = jv.a;\n\t\t\treturn elm$core$String$fromFloat(n);\n\t\tdefault:\n\t\t\treturn '';\n\t}\n};\nvar elm$browser$Browser$Dom$focus = _Browser_call('focus');\nvar elm$core$Set$insert = F2(\n\tfunction (key, _n0) {\n\t\tvar dict = _n0;\n\t\treturn A3(elm$core$Dict$insert, key, 0, dict);\n\t});\nvar elm$core$Set$member = F2(\n\tfunction (key, _n0) {\n\t\tvar dict = _n0;\n\t\treturn A2(elm$core$Dict$member, key, dict);\n\t});\nvar elm$core$Set$remove = F2(\n\tfunction (key, _n0) {\n\t\tvar dict = _n0;\n\t\treturn A2(elm$core$Dict$remove, key, dict);\n\t});\nvar elm$core$String$toFloat = _String_toFloat;\nvar json_tools$json_value$Json$Value$deleteIn = F2(\n\tfunction (pathInJson, hostValue) {\n\t\tvar rejectKey = F2(\n\t\t\tfunction (keyToReject, val) {\n\t\t\t\tswitch (val.$) {\n\t\t\t\t\tcase 0:\n\t\t\t\t\t\tvar res = val.a;\n\t\t\t\t\t\treturn A3(\n\t\t\t\t\t\t\telm$core$Basics$composeR,\n\t\t\t\t\t\t\tjson_tools$json_value$Json$Value$ObjectValue,\n\t\t\t\t\t\t\telm$core$Result$Ok,\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\telm$core$List$filter,\n\t\t\t\t\t\t\t\tfunction (_n4) {\n\t\t\t\t\t\t\t\t\tvar k = _n4.a;\n\t\t\t\t\t\t\t\t\treturn !_Utils_eq(k, keyToReject);\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tres));\n\t\t\t\t\tcase 1:\n\t\t\t\t\t\tvar res = val.a;\n\t\t\t\t\t\treturn A3(\n\t\t\t\t\t\t\telm$core$Basics$composeR,\n\t\t\t\t\t\t\tjson_tools$json_value$Json$Value$ArrayValue,\n\t\t\t\t\t\t\telm$core$Result$Ok,\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\telm$core$List$map,\n\t\t\t\t\t\t\t\tfunction (_n6) {\n\t\t\t\t\t\t\t\t\tvar v = _n6.b;\n\t\t\t\t\t\t\t\t\treturn v;\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\telm$core$List$filter,\n\t\t\t\t\t\t\t\t\tfunction (_n5) {\n\t\t\t\t\t\t\t\t\t\tvar k = _n5.a;\n\t\t\t\t\t\t\t\t\t\treturn !_Utils_eq(k, keyToReject);\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\telm$core$List$indexedMap,\n\t\t\t\t\t\t\t\t\t\tF2(\n\t\t\t\t\t\t\t\t\t\t\tfunction (ind, v) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn _Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$String$fromInt(ind),\n\t\t\t\t\t\t\t\t\t\t\t\t\tv);\n\t\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\tres))));\n\t\t\t\t\tdefault:\n\t\t\t\t\t\treturn elm$core$Result$Err('It is not possible to delete key when host value is not object or array');\n\t\t\t\t}\n\t\t\t});\n\t\tvar _n0 = function (x) {\n\t\t\tif (x.b) {\n\t\t\t\tvar k = x.a;\n\t\t\t\tvar revPath = x.b;\n\t\t\t\treturn _Utils_Tuple2(\n\t\t\t\t\telm$core$Maybe$Just(k),\n\t\t\t\t\telm$core$List$reverse(revPath));\n\t\t\t} else {\n\t\t\t\treturn _Utils_Tuple2(elm$core$Maybe$Nothing, _List_Nil);\n\t\t\t}\n\t\t}(\n\t\t\telm$core$List$reverse(pathInJson));\n\t\tvar key = _n0.a;\n\t\tvar path = _n0.b;\n\t\tvar targetValue = function () {\n\t\t\tif (!key.$) {\n\t\t\t\tvar k = key.a;\n\t\t\t\treturn A2(\n\t\t\t\t\telm$core$Result$withDefault,\n\t\t\t\t\thostValue,\n\t\t\t\t\tA2(\n\t\t\t\t\t\telm$core$Result$andThen,\n\t\t\t\t\t\trejectKey(k),\n\t\t\t\t\t\tA2(json_tools$json_value$Json$Value$getIn, path, hostValue)));\n\t\t\t} else {\n\t\t\t\treturn hostValue;\n\t\t\t}\n\t\t}();\n\t\treturn A3(json_tools$json_value$Json$Value$setIn, path, targetValue, hostValue);\n\t});\nvar author$project$Json$Form$update = F2(\n\tfunction (msg, model) {\n\t\tswitch (msg.$) {\n\t\t\tcase 0:\n\t\t\t\treturn A2(\n\t\t\t\t\tauthor$project$Json$Form$withExMsg,\n\t\t\t\t\tauthor$project$Json$Form$None,\n\t\t\t\t\t_Utils_Tuple2(model, elm$core$Platform$Cmd$none));\n\t\t\tcase 8:\n\t\t\t\tvar path = msg.a;\n\t\t\t\tvar index = msg.b;\n\t\t\t\tvar schema = msg.c;\n\t\t\t\tvar updatedModel = function () {\n\t\t\t\t\tvar _n1 = A2(\n\t\t\t\t\t\telm$core$Maybe$andThen,\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$core$Basics$composeR,\n\t\t\t\t\t\t\tjson_tools$json_value$Json$Value$getIn(path),\n\t\t\t\t\t\t\telm$core$Result$toMaybe),\n\t\t\t\t\t\tmodel.bN);\n\t\t\t\t\tif (!_n1.$) {\n\t\t\t\t\t\treturn model;\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn _Utils_update(\n\t\t\t\t\t\t\tmodel,\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tbN: elm$core$Result$toMaybe(\n\t\t\t\t\t\t\t\t\tA3(\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_value$Json$Value$setIn,\n\t\t\t\t\t\t\t\t\t\tpath,\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_value$Json$Value$ArrayValue(_List_Nil),\n\t\t\t\t\t\t\t\t\t\tA2(elm$core$Maybe$withDefault, json_tools$json_value$Json$Value$NullValue, model.bN)))\n\t\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}();\n\t\t\t\tvar newPropPath = _Utils_ap(\n\t\t\t\t\tpath,\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\telm$core$String$fromInt(index)\n\t\t\t\t\t\t]));\n\t\t\t\treturn A3(\n\t\t\t\t\tauthor$project$Json$Form$editValue,\n\t\t\t\t\tupdatedModel,\n\t\t\t\t\tnewPropPath,\n\t\t\t\t\tauthor$project$Json$Form$defaultFor(schema));\n\t\t\tcase 10:\n\t\t\t\tvar path = msg.a;\n\t\t\t\tvar updatedJsonValue = _Utils_eq(path, _List_Nil) ? elm$core$Maybe$Nothing : A2(\n\t\t\t\t\telm$core$Maybe$andThen,\n\t\t\t\t\tA2(\n\t\t\t\t\t\telm$core$Basics$composeR,\n\t\t\t\t\t\tjson_tools$json_value$Json$Value$deleteIn(path),\n\t\t\t\t\t\telm$core$Result$toMaybe),\n\t\t\t\t\tmodel.bN);\n\t\t\t\tvar validationResult = A3(\n\t\t\t\t\tjson_tools$json_schema$Json$Schema$validateValue,\n\t\t\t\t\t{P: true},\n\t\t\t\t\tjson_tools$json_value$Json$Value$encode(\n\t\t\t\t\t\tA2(elm$core$Maybe$withDefault, json_tools$json_value$Json$Value$NullValue, updatedJsonValue)),\n\t\t\t\t\tmodel.a5);\n\t\t\t\tvar errors = function () {\n\t\t\t\t\tif (!validationResult.$) {\n\t\t\t\t\t\treturn elm$core$Dict$empty;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvar e = validationResult.a;\n\t\t\t\t\t\treturn author$project$Json$Form$dictFromListErrors(e);\n\t\t\t\t\t}\n\t\t\t\t}();\n\t\t\t\treturn A2(\n\t\t\t\t\tauthor$project$Json$Form$withExMsg,\n\t\t\t\t\tA2(author$project$Json$Form$UpdateValue, updatedJsonValue, errors),\n\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\tmodel,\n\t\t\t\t\t\t\t{bN: updatedJsonValue}),\n\t\t\t\t\t\telm$core$Platform$Cmd$none));\n\t\t\tcase 1:\n\t\t\t\tvar focused = msg.a;\n\t\t\t\treturn A2(\n\t\t\t\t\tauthor$project$Json$Form$withExMsg,\n\t\t\t\t\tauthor$project$Json$Form$None,\n\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\tmodel,\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ti: A3(author$project$Json$Form$touch, focused, model.g, model.i),\n\t\t\t\t\t\t\t\tg: focused\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\telm$core$Platform$Cmd$none));\n\t\t\tcase 2:\n\t\t\t\tvar focused = msg.a;\n\t\t\t\treturn A2(\n\t\t\t\t\tauthor$project$Json$Form$withExMsg,\n\t\t\t\t\tauthor$project$Json$Form$None,\n\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\tmodel,\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ti: A3(\n\t\t\t\t\t\t\t\t\tauthor$project$Json$Form$touch,\n\t\t\t\t\t\t\t\t\telm$core$Maybe$Just(focused),\n\t\t\t\t\t\t\t\t\tmodel.g,\n\t\t\t\t\t\t\t\t\tmodel.i),\n\t\t\t\t\t\t\t\tg: elm$core$Maybe$Just(focused)\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$core$Task$attempt,\n\t\t\t\t\t\t\tfunction (_n3) {\n\t\t\t\t\t\t\t\treturn author$project$Json$Form$Definitions$NoOp;\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\telm$browser$Browser$Dom$focus(\n\t\t\t\t\t\t\t\tA2(elm$core$String$join, '_', focused)))));\n\t\t\tcase 3:\n\t\t\t\tvar isNumber = msg.a;\n\t\t\t\tvar focused = msg.b;\n\t\t\t\tif (focused.$ === 1) {\n\t\t\t\t\tif (isNumber) {\n\t\t\t\t\t\tvar _n5 = elm$core$String$toFloat(model.o);\n\t\t\t\t\t\tif (!_n5.$) {\n\t\t\t\t\t\t\tvar num = _n5.a;\n\t\t\t\t\t\t\treturn A3(\n\t\t\t\t\t\t\t\tauthor$project$Json$Form$editValue,\n\t\t\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\t\t\tmodel,\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\ti: A3(author$project$Json$Form$touch, focused, model.g, model.i),\n\t\t\t\t\t\t\t\t\t\tg: elm$core$Maybe$Nothing\n\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\tA2(elm$core$Maybe$withDefault, _List_Nil, model.g),\n\t\t\t\t\t\t\t\tjson_tools$json_value$Json$Value$NumericValue(num));\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\tauthor$project$Json$Form$withExMsg,\n\t\t\t\t\t\t\t\tauthor$project$Json$Form$None,\n\t\t\t\t\t\t\t\t_Utils_Tuple2(model, elm$core$Platform$Cmd$none));\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\tauthor$project$Json$Form$withExMsg,\n\t\t\t\t\t\t\tauthor$project$Json$Form$None,\n\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\t\t\tmodel,\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\ti: A3(author$project$Json$Form$touch, focused, model.g, model.i),\n\t\t\t\t\t\t\t\t\t\tg: elm$core$Maybe$Nothing\n\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\telm$core$Platform$Cmd$none));\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tvar somePath = focused.a;\n\t\t\t\t\treturn A2(\n\t\t\t\t\t\tauthor$project$Json$Form$withExMsg,\n\t\t\t\t\t\tauthor$project$Json$Form$None,\n\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\t\tmodel,\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\to: isNumber ? A2(\n\t\t\t\t\t\t\t\t\t\telm$core$Maybe$withDefault,\n\t\t\t\t\t\t\t\t\t\t'',\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$map,\n\t\t\t\t\t\t\t\t\t\t\tauthor$project$JsonFormUtil$jsonValueToString,\n\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$andThen,\n\t\t\t\t\t\t\t\t\t\t\t\telm$core$Result$toMaybe,\n\t\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$map,\n\t\t\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_value$Json$Value$getIn(somePath),\n\t\t\t\t\t\t\t\t\t\t\t\t\tmodel.bN)))) : A2(\n\t\t\t\t\t\t\t\t\t\telm$core$Maybe$withDefault,\n\t\t\t\t\t\t\t\t\t\t'',\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$map,\n\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\telm$core$Basics$composeR,\n\t\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_value$Json$Value$encode,\n\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$encode(4)),\n\t\t\t\t\t\t\t\t\t\t\telm$core$Result$toMaybe(\n\t\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_value$Json$Value$getIn,\n\t\t\t\t\t\t\t\t\t\t\t\t\tsomePath,\n\t\t\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$withDefault,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_value$Json$Value$ObjectValue(_List_Nil),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tmodel.bN))))),\n\t\t\t\t\t\t\t\t\tg: focused\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\telm$core$Platform$Cmd$none));\n\t\t\t\t}\n\t\t\tcase 4:\n\t\t\t\tvar path = msg.a;\n\t\t\t\tvar val = msg.b;\n\t\t\t\treturn A3(author$project$Json$Form$editValue, model, path, val);\n\t\t\tcase 5:\n\t\t\t\tvar str = msg.a;\n\t\t\t\tvar _n6 = elm$core$String$toFloat(str);\n\t\t\t\tif (!_n6.$) {\n\t\t\t\t\tvar num = _n6.a;\n\t\t\t\t\treturn A3(\n\t\t\t\t\t\tauthor$project$Json$Form$editValue,\n\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\tmodel,\n\t\t\t\t\t\t\t{o: str}),\n\t\t\t\t\t\tA2(elm$core$Maybe$withDefault, _List_Nil, model.g),\n\t\t\t\t\t\tjson_tools$json_value$Json$Value$NumericValue(num));\n\t\t\t\t} else {\n\t\t\t\t\treturn A2(\n\t\t\t\t\t\tauthor$project$Json$Form$withExMsg,\n\t\t\t\t\t\tauthor$project$Json$Form$None,\n\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\t\tmodel,\n\t\t\t\t\t\t\t\t{o: str}),\n\t\t\t\t\t\t\telm$core$Platform$Cmd$none));\n\t\t\t\t}\n\t\t\tcase 6:\n\t\t\t\tvar path = msg.a;\n\t\t\t\tvar height = msg.b;\n\t\t\t\tvar str = msg.c;\n\t\t\t\tvar _n7 = A2(elm$json$Json$Decode$decodeString, json_tools$json_value$Json$Value$decoder, str);\n\t\t\t\tif (!_n7.$) {\n\t\t\t\t\tvar jv = _n7.a;\n\t\t\t\t\treturn A3(\n\t\t\t\t\t\tauthor$project$Json$Form$editValue,\n\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\tmodel,\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\to: str,\n\t\t\t\t\t\t\t\tp: A3(elm$core$Dict$insert, path, height, model.p)\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\tpath,\n\t\t\t\t\t\tjv);\n\t\t\t\t} else {\n\t\t\t\t\treturn A2(\n\t\t\t\t\t\tauthor$project$Json$Form$withExMsg,\n\t\t\t\t\t\tauthor$project$Json$Form$None,\n\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\t\tmodel,\n\t\t\t\t\t\t\t\t{o: str}),\n\t\t\t\t\t\t\telm$core$Platform$Cmd$none));\n\t\t\t\t}\n\t\t\tcase 7:\n\t\t\t\tvar path = msg.a;\n\t\t\t\tvar height = msg.b;\n\t\t\t\tvar str = msg.c;\n\t\t\t\treturn A3(\n\t\t\t\t\tauthor$project$Json$Form$editValue,\n\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\tmodel,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tp: A3(elm$core$Dict$insert, path, height, model.p)\n\t\t\t\t\t\t}),\n\t\t\t\t\tpath,\n\t\t\t\t\tjson_tools$json_value$Json$Value$StringValue(str));\n\t\t\tcase 9:\n\t\t\t\treturn A2(\n\t\t\t\t\tauthor$project$Json$Form$withExMsg,\n\t\t\t\t\tauthor$project$Json$Form$None,\n\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\tmodel,\n\t\t\t\t\t\t\t{ab: !model.ab}),\n\t\t\t\t\t\telm$core$Platform$Cmd$none));\n\t\t\tcase 11:\n\t\t\t\tvar path = msg.a;\n\t\t\t\tvar res = msg.b;\n\t\t\t\treturn A2(\n\t\t\t\t\tauthor$project$Json$Form$withExMsg,\n\t\t\t\t\tauthor$project$Json$Form$None,\n\t\t\t\t\tfunction () {\n\t\t\t\t\t\tif (!res.$) {\n\t\t\t\t\t\t\tvar viewport = res.a;\n\t\t\t\t\t\t\treturn _Utils_Tuple2(\n\t\t\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\t\t\tmodel,\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tp: A3(elm$core$Dict$insert, path, viewport.bG.br, model.p)\n\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\telm$core$Platform$Cmd$none);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn _Utils_Tuple2(model, elm$core$Platform$Cmd$none);\n\t\t\t\t\t\t}\n\t\t\t\t\t}());\n\t\t\tdefault:\n\t\t\t\tvar path = msg.a;\n\t\t\t\treturn A2(\n\t\t\t\t\tauthor$project$Json$Form$withExMsg,\n\t\t\t\t\tauthor$project$Json$Form$None,\n\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\tmodel,\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tx: A2(elm$core$Set$member, path, model.x) ? A2(elm$core$Set$remove, path, model.x) : A2(elm$core$Set$insert, path, model.x)\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\telm$core$Platform$Cmd$none));\n\t\t}\n\t});\nvar author$project$Json$Form$Config$Outlined = 1;\nvar json_tools$json_schema$Json$Schema$fromString = A2(\n\telm$core$Basics$composeR,\n\telm$json$Json$Decode$decodeString(json_tools$json_schema$Json$Schema$Definitions$decoder),\n\telm$core$Result$mapError(elm$json$Json$Decode$errorToString));\nvar author$project$Showcase$flightBookingInputGeneratorSchema = A2(\n\telm$core$Result$withDefault,\n\tjson_tools$json_schema$Json$Schema$Definitions$blankSchema,\n\tjson_tools$json_schema$Json$Schema$fromString('\\n{\\n \"type\": \"object\",\\n \"properties\": {\\n \"payment\": {\\n \"ui\": {\\n \"expandable\": true\\n },\\n \"title\": \"Payment\",\\n \"type\": \"object\",\\n \"properties\": {\\n \"person\": {\\n \"type\": \"object\",\\n \"title\": \"Person\",\\n \"properties\": {\\n \"title\": {\\n \"type\": \"string\",\\n \"title\": \"Title\",\\n \"enum\": [\\n \"mr\",\\n \"ms\",\\n \"mrs\",\\n \"miss\"\\n ]\\n },\\n \"firstName\": {\\n \"type\": \"string\",\\n \"title\": \"First name\"\\n },\\n \"middleName\": {\\n \"type\": \"string\",\\n \"title\": \"Middle name\"\\n },\\n \"lastName\": {\\n \"type\": \"string\",\\n \"title\": \"Last name\"\\n }\\n }\\n },\\n \"card\": {\\n \"type\": \"object\",\\n \"title\": \"Card\",\\n \"properties\": {\\n \"type\": {\\n \"title\": \"Card type\",\\n \"type\": \"string\",\\n \"enum\": [\\n \"debit\",\\n \"credit\"\\n ]\\n },\\n \"holderType\": {\\n \"title\": \"Holder type\",\\n \"type\": \"string\",\\n \"enum\": [\\n \"personal\",\\n \"corporate\"\\n ]\\n },\\n \"brand\": {\\n \"title\": \"Brand\",\\n \"type\": \"string\",\\n \"enum\": [\\n \"visa\",\\n \"mastercard\",\\n \"amex\",\\n \"discover\"\\n ]\\n },\\n \"expirationDate\": {\\n \"title\": \"Expiration date\",\\n \"type\": \"string\",\\n \"format\": \"YYYY-MM\"\\n },\\n \"name\": {\\n \"title\": \"Name\",\\n \"type\": \"string\"\\n },\\n \"pan\": {\\n \"title\": \"Card Number (PAN)\",\\n \"type\": \"string\"\\n },\\n \"cvv\": {\\n \"title\": \"CVV\",\\n \"type\": \"string\",\\n \"minLength\": 3,\\n \"maxLength\": 4\\n }\\n }\\n },\\n \"address\": {\\n \"type\": \"object\",\\n \"title\": \"Address\",\\n \"properties\": {\\n \"line1\": {\\n \"title\": \"Address line 1\",\\n \"type\": \"string\"\\n },\\n \"postcode\": {\\n \"title\": \"Postcode\",\\n \"type\": \"string\"\\n },\\n \"countryCode\": {\\n \"title\": \"Country code\",\\n \"type\": \"string\",\\n \"const\": \"gb\"\\n }\\n }\\n }\\n }\\n },\\n \"account\": {\\n \"ui\": {\\n \"expandable\": true\\n },\\n \"type\": \"object\",\\n \"title\": \"Account\",\\n \"properties\": {\\n \"email\": {\\n \"title\": \"Email\",\\n \"type\": \"string\"\\n },\\n \"password\": {\\n \"title\": \"Password\",\\n \"type\": \"string\"\\n },\\n \"passwordSpecification\": {\\n \"type\": \"object\",\\n \"title\": \"Password specification\",\\n \"properties\": {\\n \"length\": {\\n \"title\": \"Length\",\\n \"type\": \"string\",\\n \"default\": 12\\n },\\n \"numbers\": {\\n \"title\": \"Numbers\",\\n \"type\": \"integer\",\\n \"default\": 1\\n },\\n \"upper\": {\\n \"title\": \"Upper\",\\n \"type\": \"integer\",\\n \"default\": 1\\n },\\n \"lower\": {\\n \"title\": \"Lower\",\\n \"type\": \"integer\",\\n \"default\": 1\\n },\\n \"special\": {\\n \"title\": \"Special\",\\n \"type\": \"integer\",\\n \"default\": 1\\n },\\n \"specialCharacters\": {\\n \"title\": \"Special characters list\",\\n \"type\": \"array\",\\n \"item\": {\\n \"type\": \"string\",\\n \"maxLength\": 1,\\n \"minLength\": 1\\n },\\n \"default\": [\\n \"#\",\\n \"$\",\\n \"%\"\\n ]\\n }\\n }\\n },\\n \"isExisting\": {\\n \"title\": \"Is existing\",\\n \"type\": \"boolean\",\\n \"default\": false\\n },\\n \"phone\": {\\n \"title\": \"Phone\",\\n \"type\": \"string\",\\n \"properties\": {\\n \"countryCode\": {\\n \"title\": \"Country code\",\\n \"type\": \"string\",\\n \"const\": \"gb\"\\n },\\n \"number\": {\\n \"title\": \"Number\",\\n \"type\": \"string\"\\n }\\n }\\n }\\n }\\n },\\n \"passengers\": {\\n \"ui\": {\\n \"expandable\": true\\n },\\n \"title\": \"Passengers\",\\n \"type\": \"object\",\\n \"properties\": {\\n \"minItems\": {\\n \"title\": \"Min items\",\\n \"type\": \"integer\",\\n \"min\": 0\\n },\\n \"maxItems\": {\\n \"title\": \"Max items\",\\n \"type\": \"integer\",\\n \"min\": 0\\n },\\n \"items\": {\\n \"type\": \"array\",\\n \"items\": {\\n \"type\": \"object\",\\n \"title\": \"Flight passenger\",\\n \"properties\": {\\n \"person\": {\\n \"type\": \"object\",\\n \"properties\": {\\n \"title\": {\\n \"type\": \"string\",\\n \"title\": \"Title\",\\n \"enum\": [\\n \"mr\",\\n \"ms\",\\n \"mrs\",\\n \"miss\"\\n ]\\n },\\n \"firstName\": {\\n \"type\": \"string\",\\n \"title\": \"First name\"\\n },\\n \"middleName\": {\\n \"type\": \"string\",\\n \"title\": \"Middle name\"\\n },\\n \"lastName\": {\\n \"type\": \"string\",\\n \"title\": \"Last name\"\\n }\\n }\\n },\\n \"dateOfBirth\": {\\n \"title\": \"Random date config\",\\n \"oneOf\": [\\n {\\n \"type\": \"object\",\\n \"properties\": {\\n \"static\": {\\n \"type\": \"string\"\\n }\\n },\\n \"required\": [\\n \"static\"\\n ],\\n \"additionalProperties\": false\\n },\\n {\\n \"type\": \"object\",\\n \"properties\": {\\n \"age\": {\\n \"type\": \"integer\"\\n }\\n },\\n \"required\": [\\n \"age\"\\n ],\\n \"additionalProperties\": false\\n },\\n {\\n \"type\": \"integer\"\\n }\\n ]\\n },\\n \"addAdditionalLuggage\": {\\n \"title\": \"Random integer configuration\",\\n \"type\": \"object\",\\n \"properties\": {\\n \"min\": {\\n \"title\": \"Min\",\\n \"type\": \"integer\"\\n },\\n \"max\": {\\n \"title\": \"Max\",\\n \"type\": \"integer\"\\n }\\n }\\n },\\n \"document\": {\\n \"type\": \"object\",\\n \"title\": \"Identity Document\",\\n \"properties\": {\\n \"type\": {\\n \"title\": \"Type\",\\n \"enum\": [\\n \"passport\"\\n ]\\n },\\n \"number\": {\\n \"title\": \"Number\",\\n \"type\": \"string\"\\n },\\n \"issueDate\": {\\n \"title\": \"Issue date\",\\n \"type\": \"string\",\\n \"format\": \"date\"\\n },\\n \"expirationDate\": {\\n \"title\": \"Expiration date\",\\n \"type\": \"string\",\\n \"format\": \"date\"\\n },\\n \"issueCountryCode\": {\\n \"title\": \"Country code\",\\n \"type\": \"string\"\\n }\\n }\\n }\\n }\\n }\\n }\\n }\\n },\\n \"outboundMonthYear\": {\\n \"title\": \"Outbound month year\",\\n \"oneOf\": [\\n {\\n \"type\": \"object\",\\n \"properties\": {\\n \"static\": {\\n \"type\": \"string\"\\n }\\n },\\n \"required\": [\\n \"static\"\\n ],\\n \"additionalProperties\": false\\n },\\n {\\n \"type\": \"object\",\\n \"properties\": {\\n \"age\": {\\n \"type\": \"integer\"\\n }\\n },\\n \"required\": [\\n \"age\"\\n ],\\n \"additionalProperties\": false\\n },\\n {\\n \"type\": \"integer\"\\n }\\n ]\\n },\\n \"inboundMonthYear\": {\\n \"title\": \"Inbound month year\",\\n \"oneOf\": [\\n {\\n \"type\": \"object\",\\n \"properties\": {\\n \"static\": {\\n \"type\": \"string\"\\n }\\n },\\n \"required\": [\\n \"static\"\\n ],\\n \"additionalProperties\": false\\n },\\n {\\n \"type\": \"object\",\\n \"properties\": {\\n \"age\": {\\n \"type\": \"integer\"\\n }\\n },\\n \"required\": [\\n \"age\"\\n ],\\n \"additionalProperties\": false\\n },\\n {\\n \"type\": \"integer\"\\n }\\n ]\\n }\\n }\\n}\\n'));\nvar elm$json$Json$Encode$int = _Json_wrap;\nvar json_tools$json_schema$Json$Schema$Definitions$encode = function (s) {\n\tvar source = function (os) {\n\t\treturn A2(\n\t\t\telm$core$Result$withDefault,\n\t\t\t_List_Nil,\n\t\t\tA2(\n\t\t\t\telm$json$Json$Decode$decodeValue,\n\t\t\t\telm$json$Json$Decode$keyValuePairs(elm$json$Json$Decode$value),\n\t\t\t\tos.ac));\n\t};\n\tvar singleTypeToString = function (st) {\n\t\tswitch (st) {\n\t\t\tcase 2:\n\t\t\t\treturn 'string';\n\t\t\tcase 0:\n\t\t\t\treturn 'integer';\n\t\t\tcase 1:\n\t\t\t\treturn 'number';\n\t\t\tcase 3:\n\t\t\t\treturn 'boolean';\n\t\t\tcase 5:\n\t\t\t\treturn 'object';\n\t\t\tcase 4:\n\t\t\t\treturn 'array';\n\t\t\tdefault:\n\t\t\t\treturn 'null';\n\t\t}\n\t};\n\tvar optionally = F4(\n\t\tfunction (fn, val, key, res) {\n\t\t\tvar result = A2(\n\t\t\t\telm$core$List$filter,\n\t\t\t\tfunction (_n9) {\n\t\t\t\t\tvar k = _n9.a;\n\t\t\t\t\treturn !_Utils_eq(k, key);\n\t\t\t\t},\n\t\t\t\tres);\n\t\t\tif (!val.$) {\n\t\t\t\tvar schema = val.a;\n\t\t\t\treturn A2(\n\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\tkey,\n\t\t\t\t\t\tfn(schema)),\n\t\t\t\t\tresult);\n\t\t\t} else {\n\t\t\t\treturn result;\n\t\t\t}\n\t\t});\n\tvar encodeType = F2(\n\t\tfunction (t, res) {\n\t\t\tswitch (t.$) {\n\t\t\t\tcase 1:\n\t\t\t\t\tvar st = t.a;\n\t\t\t\t\treturn A2(\n\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t'type',\n\t\t\t\t\t\t\telm$json$Json$Encode$string(\n\t\t\t\t\t\t\t\tsingleTypeToString(st))),\n\t\t\t\t\t\tres);\n\t\t\t\tcase 2:\n\t\t\t\t\tvar st = t.a;\n\t\t\t\t\treturn A2(\n\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t'type',\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\telm$json$Json$Encode$list,\n\t\t\t\t\t\t\t\telm$core$Basics$identity,\n\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$string('null'),\n\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$string(\n\t\t\t\t\t\t\t\t\t\tsingleTypeToString(st))\n\t\t\t\t\t\t\t\t\t]))),\n\t\t\t\t\t\tres);\n\t\t\t\tcase 3:\n\t\t\t\t\tvar ut = t.a;\n\t\t\t\t\treturn A2(\n\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t'type',\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\telm$json$Json$Encode$list,\n\t\t\t\t\t\t\t\tA2(elm$core$Basics$composeR, singleTypeToString, elm$json$Json$Encode$string),\n\t\t\t\t\t\t\t\tut)),\n\t\t\t\t\t\tres);\n\t\t\t\tdefault:\n\t\t\t\t\treturn res;\n\t\t\t}\n\t\t});\n\tvar encodeSchemata = function (_n6) {\n\t\tvar listSchemas = _n6;\n\t\treturn elm$json$Json$Encode$object(\n\t\t\tA2(\n\t\t\t\telm$core$List$map,\n\t\t\t\tfunction (_n5) {\n\t\t\t\t\tvar key = _n5.a;\n\t\t\t\t\tvar schema = _n5.b;\n\t\t\t\t\treturn _Utils_Tuple2(\n\t\t\t\t\t\tkey,\n\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$encode(schema));\n\t\t\t\t},\n\t\t\t\tlistSchemas));\n\t};\n\tvar encodeListSchemas = function (l) {\n\t\treturn A2(elm$json$Json$Encode$list, json_tools$json_schema$Json$Schema$Definitions$encode, l);\n\t};\n\tvar encodeItems = F2(\n\t\tfunction (items, res) {\n\t\t\tswitch (items.$) {\n\t\t\t\tcase 1:\n\t\t\t\t\tvar id = items.a;\n\t\t\t\t\treturn A2(\n\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t'items',\n\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$encode(id)),\n\t\t\t\t\t\tres);\n\t\t\t\tcase 2:\n\t\t\t\t\tvar aoi = items.a;\n\t\t\t\t\treturn A2(\n\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t'items',\n\t\t\t\t\t\t\tA2(elm$json$Json$Encode$list, json_tools$json_schema$Json$Schema$Definitions$encode, aoi)),\n\t\t\t\t\t\tres);\n\t\t\t\tdefault:\n\t\t\t\t\treturn res;\n\t\t\t}\n\t\t});\n\tvar encodeExclusiveBoundary = function (eb) {\n\t\tif (!eb.$) {\n\t\t\tvar b = eb.a;\n\t\t\treturn elm$json$Json$Encode$bool(b);\n\t\t} else {\n\t\t\tvar f = eb.a;\n\t\t\treturn elm$json$Json$Encode$float(f);\n\t\t}\n\t};\n\tvar encodeDependency = function (dep) {\n\t\tif (dep.$ === 1) {\n\t\t\tvar ps = dep.a;\n\t\t\treturn json_tools$json_schema$Json$Schema$Definitions$encode(ps);\n\t\t} else {\n\t\t\tvar apn = dep.a;\n\t\t\treturn A2(elm$json$Json$Encode$list, elm$json$Json$Encode$string, apn);\n\t\t}\n\t};\n\tvar encodeDependencies = F2(\n\t\tfunction (deps, res) {\n\t\t\treturn elm$core$List$isEmpty(deps) ? res : A2(\n\t\t\t\telm$core$List$cons,\n\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t'dependencies',\n\t\t\t\t\telm$json$Json$Encode$object(\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$core$List$map,\n\t\t\t\t\t\t\tfunction (_n1) {\n\t\t\t\t\t\t\t\tvar key = _n1.a;\n\t\t\t\t\t\t\t\tvar dep = _n1.b;\n\t\t\t\t\t\t\t\treturn _Utils_Tuple2(\n\t\t\t\t\t\t\t\t\tkey,\n\t\t\t\t\t\t\t\t\tencodeDependency(dep));\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tdeps))),\n\t\t\t\tres);\n\t\t});\n\tif (!s.$) {\n\t\tvar bs = s.a;\n\t\treturn elm$json$Json$Encode$bool(bs);\n\t} else {\n\t\tvar os = s.a;\n\t\treturn elm$json$Json$Encode$object(\n\t\t\telm$core$List$reverse(\n\t\t\t\tA3(\n\t\t\t\t\telm$core$List$foldl,\n\t\t\t\t\telm$core$Basics$identity,\n\t\t\t\t\tsource(os),\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\tencodeType(os.S),\n\t\t\t\t\t\t\tA3(optionally, elm$json$Json$Encode$string, os.aB, '$id'),\n\t\t\t\t\t\t\tA3(optionally, elm$json$Json$Encode$string, os.a0, '$ref'),\n\t\t\t\t\t\t\tA3(optionally, elm$json$Json$Encode$string, os.a8, 'title'),\n\t\t\t\t\t\t\tA3(optionally, elm$json$Json$Encode$string, os.bj, 'description'),\n\t\t\t\t\t\t\tA3(optionally, elm$core$Basics$identity, os.bh, 'default'),\n\t\t\t\t\t\t\tA3(\n\t\t\t\t\t\t\toptionally,\n\t\t\t\t\t\t\telm$json$Json$Encode$list(elm$core$Basics$identity),\n\t\t\t\t\t\t\tos.w,\n\t\t\t\t\t\t\t'examples'),\n\t\t\t\t\t\t\tA3(optionally, encodeSchemata, os.ar, 'definitions'),\n\t\t\t\t\t\t\tA3(optionally, elm$json$Json$Encode$float, os.aO, 'multipleOf'),\n\t\t\t\t\t\t\tA3(optionally, elm$json$Json$Encode$float, os.aG, 'maximum'),\n\t\t\t\t\t\t\tA3(optionally, encodeExclusiveBoundary, os.aw, 'exclusiveMaximum'),\n\t\t\t\t\t\t\tA3(optionally, elm$json$Json$Encode$float, os.aL, 'minimum'),\n\t\t\t\t\t\t\tA3(optionally, encodeExclusiveBoundary, os.ax, 'exclusiveMinimum'),\n\t\t\t\t\t\t\tA3(optionally, elm$json$Json$Encode$int, os.aD, 'maxLength'),\n\t\t\t\t\t\t\tA3(optionally, elm$json$Json$Encode$int, os.aI, 'minLength'),\n\t\t\t\t\t\t\tA3(optionally, elm$json$Json$Encode$string, os.aS, 'pattern'),\n\t\t\t\t\t\t\tA3(optionally, elm$json$Json$Encode$string, os.ay, 'format'),\n\t\t\t\t\t\t\tencodeItems(os.bw),\n\t\t\t\t\t\t\tA3(optionally, json_tools$json_schema$Json$Schema$Definitions$encode, os.ag, 'additionalItems'),\n\t\t\t\t\t\t\tA3(optionally, elm$json$Json$Encode$int, os.aC, 'maxItems'),\n\t\t\t\t\t\t\tA3(optionally, elm$json$Json$Encode$int, os.aH, 'minItems'),\n\t\t\t\t\t\t\tA3(optionally, elm$json$Json$Encode$bool, os.a9, 'uniqueItems'),\n\t\t\t\t\t\t\tA3(optionally, json_tools$json_schema$Json$Schema$Definitions$encode, os.an, 'contains'),\n\t\t\t\t\t\t\tA3(optionally, elm$json$Json$Encode$int, os.aE, 'maxProperties'),\n\t\t\t\t\t\t\tA3(optionally, elm$json$Json$Encode$int, os.aJ, 'minProperties'),\n\t\t\t\t\t\t\tA3(\n\t\t\t\t\t\t\toptionally,\n\t\t\t\t\t\t\tfunction (list) {\n\t\t\t\t\t\t\t\treturn A2(elm$json$Json$Encode$list, elm$json$Json$Encode$string, list);\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tos.a3,\n\t\t\t\t\t\t\t'required'),\n\t\t\t\t\t\t\tA3(optionally, encodeSchemata, os.aY, 'properties'),\n\t\t\t\t\t\t\tA3(optionally, encodeSchemata, os.aT, 'patternProperties'),\n\t\t\t\t\t\t\tA3(optionally, json_tools$json_schema$Json$Schema$Definitions$encode, os.ah, 'additionalProperties'),\n\t\t\t\t\t\t\tencodeDependencies(os.I),\n\t\t\t\t\t\t\tA3(optionally, json_tools$json_schema$Json$Schema$Definitions$encode, os.aZ, 'propertyNames'),\n\t\t\t\t\t\t\tA3(\n\t\t\t\t\t\t\toptionally,\n\t\t\t\t\t\t\telm$json$Json$Encode$list(elm$core$Basics$identity),\n\t\t\t\t\t\t\tos.bm,\n\t\t\t\t\t\t\t'enum'),\n\t\t\t\t\t\t\tA3(optionally, elm$core$Basics$identity, os.am, 'const'),\n\t\t\t\t\t\t\tA3(optionally, encodeListSchemas, os.ai, 'allOf'),\n\t\t\t\t\t\t\tA3(optionally, encodeListSchemas, os.aj, 'anyOf'),\n\t\t\t\t\t\t\tA3(optionally, encodeListSchemas, os.aR, 'oneOf'),\n\t\t\t\t\t\t\tA3(optionally, json_tools$json_schema$Json$Schema$Definitions$encode, os.aP, 'not')\n\t\t\t\t\t\t]))));\n\t}\n};\nvar json_tools$json_schema$Json$Schema$Builder$toSchema = function (_n0) {\n\tvar sb = _n0;\n\tif (elm$core$List$isEmpty(sb.W)) {\n\t\tvar _n1 = sb.G;\n\t\tif (!_n1.$) {\n\t\t\tvar x = _n1.a;\n\t\t\treturn elm$core$Result$Ok(\n\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$BooleanSchema(x));\n\t\t} else {\n\t\t\tvar _n2 = sb.a5;\n\t\t\tif (!_n2.$) {\n\t\t\t\tvar ss = _n2.a;\n\t\t\t\treturn elm$core$Result$Ok(\n\t\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$ObjectSchema(\n\t\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\t\tss,\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tac: json_tools$json_schema$Json$Schema$Definitions$encode(\n\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$ObjectSchema(ss))\n\t\t\t\t\t\t\t})));\n\t\t\t} else {\n\t\t\t\treturn elm$core$Result$Ok(\n\t\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$ObjectSchema(json_tools$json_schema$Json$Schema$Definitions$blankSubSchema));\n\t\t\t}\n\t\t}\n\t} else {\n\t\treturn elm$core$Result$Err(\n\t\t\tA2(elm$core$String$join, ', ', sb.W));\n\t}\n};\nvar author$project$Showcase$makeExample = F2(\n\tfunction (title, sb) {\n\t\treturn {\n\t\t\ta5: A2(\n\t\t\t\telm$core$Result$withDefault,\n\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$blankSchema,\n\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$toSchema(sb)),\n\t\t\ta8: title\n\t\t};\n\t});\nvar json_tools$json_schema$Json$Schema$Builder$SchemaBuilder = elm$core$Basics$identity;\nvar json_tools$json_schema$Json$Schema$Builder$buildSchema = {\n\tG: elm$core$Maybe$Nothing,\n\tW: _List_Nil,\n\ta5: elm$core$Maybe$Just(json_tools$json_schema$Json$Schema$Definitions$blankSubSchema)\n};\nvar json_tools$json_schema$Json$Schema$Builder$updateSchema = F2(\n\tfunction (fn, _n0) {\n\t\tvar sb = _n0;\n\t\tvar _n1 = sb.a5;\n\t\tif (!_n1.$) {\n\t\t\tvar ss = _n1.a;\n\t\t\treturn _Utils_update(\n\t\t\t\tsb,\n\t\t\t\t{\n\t\t\t\t\ta5: elm$core$Maybe$Just(\n\t\t\t\t\t\tfn(ss))\n\t\t\t\t});\n\t\t} else {\n\t\t\treturn sb;\n\t\t}\n\t});\nvar json_tools$json_schema$Json$Schema$Builder$withCustomKeyword = F2(\n\tfunction (key, val) {\n\t\treturn json_tools$json_schema$Json$Schema$Builder$updateSchema(\n\t\t\tfunction (s) {\n\t\t\t\treturn _Utils_update(\n\t\t\t\t\ts,\n\t\t\t\t\t{\n\t\t\t\t\t\tac: elm$json$Json$Encode$object(\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\t\t\t_Utils_Tuple2(key, val),\n\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\telm$core$Result$withDefault,\n\t\t\t\t\t\t\t\t\t_List_Nil,\n\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$decodeValue,\n\t\t\t\t\t\t\t\t\t\telm$json$Json$Decode$keyValuePairs(elm$json$Json$Decode$value),\n\t\t\t\t\t\t\t\t\t\ts.ac))))\n\t\t\t\t\t});\n\t\t\t});\n\t});\nvar json_tools$json_schema$Json$Schema$Builder$withDefault = function (x) {\n\treturn json_tools$json_schema$Json$Schema$Builder$updateSchema(\n\t\tfunction (s) {\n\t\t\treturn _Utils_update(\n\t\t\t\ts,\n\t\t\t\t{\n\t\t\t\t\tbh: elm$core$Maybe$Just(x)\n\t\t\t\t});\n\t\t});\n};\nvar json_tools$json_schema$Json$Schema$Builder$withDescription = function (x) {\n\treturn json_tools$json_schema$Json$Schema$Builder$updateSchema(\n\t\tfunction (s) {\n\t\t\treturn _Utils_update(\n\t\t\t\ts,\n\t\t\t\t{\n\t\t\t\t\tbj: elm$core$Maybe$Just(x)\n\t\t\t\t});\n\t\t});\n};\nvar json_tools$json_schema$Json$Schema$Builder$appendError = F2(\n\tfunction (e, _n0) {\n\t\tvar errors = _n0.W;\n\t\tvar schema = _n0.a5;\n\t\tvar bool = _n0.G;\n\t\treturn {\n\t\t\tG: bool,\n\t\t\tW: A2(elm$core$List$cons, e, errors),\n\t\t\ta5: schema\n\t\t};\n\t});\nvar json_tools$json_schema$Json$Schema$Builder$withItem = function (item) {\n\tvar _n0 = json_tools$json_schema$Json$Schema$Builder$toSchema(item);\n\tif (!_n0.$) {\n\t\tvar itemSchema = _n0.a;\n\t\treturn json_tools$json_schema$Json$Schema$Builder$updateSchema(\n\t\t\tfunction (s) {\n\t\t\t\treturn _Utils_update(\n\t\t\t\t\ts,\n\t\t\t\t\t{\n\t\t\t\t\t\tbw: json_tools$json_schema$Json$Schema$Definitions$ItemDefinition(itemSchema)\n\t\t\t\t\t});\n\t\t\t});\n\t} else {\n\t\tvar s = _n0.a;\n\t\treturn json_tools$json_schema$Json$Schema$Builder$appendError(s);\n\t}\n};\nvar json_tools$json_schema$Json$Schema$Builder$withMinLength = function (x) {\n\treturn json_tools$json_schema$Json$Schema$Builder$updateSchema(\n\t\tfunction (s) {\n\t\t\treturn _Utils_update(\n\t\t\t\ts,\n\t\t\t\t{\n\t\t\t\t\taI: elm$core$Maybe$Just(x)\n\t\t\t\t});\n\t\t});\n};\nvar json_tools$json_schema$Json$Schema$Builder$withMinimum = function (x) {\n\treturn json_tools$json_schema$Json$Schema$Builder$updateSchema(\n\t\tfunction (s) {\n\t\t\treturn _Utils_update(\n\t\t\t\ts,\n\t\t\t\t{\n\t\t\t\t\taL: elm$core$Maybe$Just(x)\n\t\t\t\t});\n\t\t});\n};\nvar json_tools$json_schema$Json$Schema$Builder$toSchemata = A2(\n\telm$core$List$foldl,\n\tfunction (_n0) {\n\t\tvar key = _n0.a;\n\t\tvar builder = _n0.b;\n\t\treturn elm$core$Result$andThen(\n\t\t\tfunction (schemas) {\n\t\t\t\treturn A2(\n\t\t\t\t\telm$core$Result$map,\n\t\t\t\t\tfunction (schema) {\n\t\t\t\t\t\treturn _Utils_ap(\n\t\t\t\t\t\t\tschemas,\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2(key, schema)\n\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t},\n\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$toSchema(builder));\n\t\t\t});\n\t},\n\telm$core$Result$Ok(_List_Nil));\nvar json_tools$json_schema$Json$Schema$Builder$updateWithSchemata = F2(\n\tfunction (fn, schemataBuilder) {\n\t\tvar _n0 = json_tools$json_schema$Json$Schema$Builder$toSchemata(schemataBuilder);\n\t\tif (!_n0.$) {\n\t\t\tvar schemata = _n0.a;\n\t\t\treturn json_tools$json_schema$Json$Schema$Builder$updateSchema(\n\t\t\t\tfn(\n\t\t\t\t\telm$core$Maybe$Just(schemata)));\n\t\t} else {\n\t\t\tvar s = _n0.a;\n\t\t\treturn json_tools$json_schema$Json$Schema$Builder$appendError(s);\n\t\t}\n\t});\nvar json_tools$json_schema$Json$Schema$Builder$withProperties = json_tools$json_schema$Json$Schema$Builder$updateWithSchemata(\n\tF2(\n\t\tfunction (properties, s) {\n\t\t\treturn _Utils_update(\n\t\t\t\ts,\n\t\t\t\t{aY: properties});\n\t\t}));\nvar json_tools$json_schema$Json$Schema$Builder$withTitle = function (x) {\n\treturn json_tools$json_schema$Json$Schema$Builder$updateSchema(\n\t\tfunction (s) {\n\t\t\treturn _Utils_update(\n\t\t\t\ts,\n\t\t\t\t{\n\t\t\t\t\ta8: elm$core$Maybe$Just(x)\n\t\t\t\t});\n\t\t});\n};\nvar json_tools$json_schema$Json$Schema$Builder$withType = F2(\n\tfunction (t, sb) {\n\t\treturn function (r) {\n\t\t\tif (!r.$) {\n\t\t\t\tvar x = r.a;\n\t\t\t\treturn x;\n\t\t\t} else {\n\t\t\t\tvar s = r.a;\n\t\t\t\treturn A2(json_tools$json_schema$Json$Schema$Builder$appendError, s, sb);\n\t\t\t}\n\t\t}(\n\t\t\tA2(\n\t\t\t\telm$core$Result$map,\n\t\t\t\tfunction (x) {\n\t\t\t\t\treturn A2(\n\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$updateSchema,\n\t\t\t\t\t\tfunction (s) {\n\t\t\t\t\t\t\treturn _Utils_update(\n\t\t\t\t\t\t\t\ts,\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tS: json_tools$json_schema$Json$Schema$Definitions$SingleType(x)\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t},\n\t\t\t\t\t\tsb);\n\t\t\t\t},\n\t\t\t\tjson_tools$json_schema$Json$Schema$Definitions$stringToType(t)));\n\t});\nvar author$project$Showcase$getShowcase = function (ds) {\n\tswitch (ds) {\n\t\tcase 0:\n\t\t\treturn _List_fromArray(\n\t\t\t\t[\n\t\t\t\t\tA2(\n\t\t\t\t\tauthor$project$Showcase$makeExample,\n\t\t\t\t\t'Single line text field',\n\t\t\t\t\tA2(\n\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withDescription,\n\t\t\t\t\t\t'Single line text field',\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withTitle,\n\t\t\t\t\t\t\t'Text field',\n\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Builder$withType, 'string', json_tools$json_schema$Json$Schema$Builder$buildSchema)))),\n\t\t\t\t\tA2(\n\t\t\t\t\tauthor$project$Showcase$makeExample,\n\t\t\t\t\t'Multiline text field',\n\t\t\t\t\tA3(\n\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withCustomKeyword,\n\t\t\t\t\t\t'ui',\n\t\t\t\t\t\telm$json$Json$Encode$object(\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t'widget',\n\t\t\t\t\t\t\t\t\telm$json$Json$Encode$string('multiline'))\n\t\t\t\t\t\t\t\t])),\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withDescription,\n\t\t\t\t\t\t\t'Multi-line text field',\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withTitle,\n\t\t\t\t\t\t\t\t'Multiline',\n\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Builder$withType, 'string', json_tools$json_schema$Json$Schema$Builder$buildSchema))))),\n\t\t\t\t\tA2(\n\t\t\t\t\tauthor$project$Showcase$makeExample,\n\t\t\t\t\t'Configured multiline text field',\n\t\t\t\t\tA3(\n\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withCustomKeyword,\n\t\t\t\t\t\t'ui',\n\t\t\t\t\t\telm$json$Json$Encode$object(\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t'widget',\n\t\t\t\t\t\t\t\t\telm$json$Json$Encode$object(\n\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t\t'type',\n\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$string('multiline')),\n\t\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t\t'minRows',\n\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$int(5)),\n\t\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t\t'maxRows',\n\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$int(10))\n\t\t\t\t\t\t\t\t\t\t\t])))\n\t\t\t\t\t\t\t\t])),\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withDescription,\n\t\t\t\t\t\t\t'Configurable multi-line text field',\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withTitle,\n\t\t\t\t\t\t\t\t'Multiline',\n\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Builder$withType, 'string', json_tools$json_schema$Json$Schema$Builder$buildSchema))))),\n\t\t\t\t\tA2(\n\t\t\t\t\tauthor$project$Showcase$makeExample,\n\t\t\t\t\t'Password field',\n\t\t\t\t\tA3(\n\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withCustomKeyword,\n\t\t\t\t\t\t'ui',\n\t\t\t\t\t\telm$json$Json$Encode$object(\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t'widget',\n\t\t\t\t\t\t\t\t\telm$json$Json$Encode$string('password'))\n\t\t\t\t\t\t\t\t])),\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withDescription,\n\t\t\t\t\t\t\t'Must contain enough various symbols',\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withTitle,\n\t\t\t\t\t\t\t\t'Password',\n\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Builder$withType, 'string', json_tools$json_schema$Json$Schema$Builder$buildSchema))))),\n\t\t\t\t\tA2(\n\t\t\t\t\tauthor$project$Showcase$makeExample,\n\t\t\t\t\t'Checkbox',\n\t\t\t\t\tA2(\n\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withDescription,\n\t\t\t\t\t\t'Booleans default to checkboxes',\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withTitle,\n\t\t\t\t\t\t\t'Boolean as checkbox',\n\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Builder$withType, 'boolean', json_tools$json_schema$Json$Schema$Builder$buildSchema)))),\n\t\t\t\t\tA2(\n\t\t\t\t\tauthor$project$Showcase$makeExample,\n\t\t\t\t\t'Switch',\n\t\t\t\t\tA2(\n\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withDescription,\n\t\t\t\t\t\t'Booleans can be configured to look like switch',\n\t\t\t\t\t\tA3(\n\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withCustomKeyword,\n\t\t\t\t\t\t\t'ui',\n\t\t\t\t\t\t\telm$json$Json$Encode$object(\n\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t'widget',\n\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$string('switch'))\n\t\t\t\t\t\t\t\t\t])),\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withTitle,\n\t\t\t\t\t\t\t\t'Boolean as switch',\n\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Builder$withType, 'boolean', json_tools$json_schema$Json$Schema$Builder$buildSchema)))))\n\t\t\t\t]);\n\t\tcase 1:\n\t\t\tvar withRuleAndWidget = F2(\n\t\t\t\tfunction (name, widget) {\n\t\t\t\t\treturn A2(\n\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withCustomKeyword,\n\t\t\t\t\t\t'ui',\n\t\t\t\t\t\telm$json$Json$Encode$object(\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t'rule',\n\t\t\t\t\t\t\t\t\telm$json$Json$Encode$object(\n\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t\t'action',\n\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$string(name)),\n\t\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t\t'path',\n\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$string('/enabled')),\n\t\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t\t'condition',\n\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$object(\n\t\t\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'const',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$bool(false)),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'default',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$bool(false))\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t])))\n\t\t\t\t\t\t\t\t\t\t\t]))),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t'widget',\n\t\t\t\t\t\t\t\t\telm$json$Json$Encode$string(widget))\n\t\t\t\t\t\t\t\t])));\n\t\t\t\t});\n\t\t\tvar withRule = function (name) {\n\t\t\t\treturn A2(\n\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withCustomKeyword,\n\t\t\t\t\t'ui',\n\t\t\t\t\telm$json$Json$Encode$object(\n\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t'rule',\n\t\t\t\t\t\t\t\telm$json$Json$Encode$object(\n\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t'action',\n\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$string(name)),\n\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t'path',\n\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$string('/enabled')),\n\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t'condition',\n\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$object(\n\t\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'const',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$bool(false)),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'default',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$bool(false))\n\t\t\t\t\t\t\t\t\t\t\t\t\t])))\n\t\t\t\t\t\t\t\t\t\t])))\n\t\t\t\t\t\t\t])));\n\t\t\t};\n\t\t\tvar enableToggle = _Utils_Tuple2(\n\t\t\t\t'enabled',\n\t\t\t\tA3(\n\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withCustomKeyword,\n\t\t\t\t\t'ui',\n\t\t\t\t\telm$json$Json$Encode$object(\n\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t'widget',\n\t\t\t\t\t\t\t\telm$json$Json$Encode$string('switch'))\n\t\t\t\t\t\t\t])),\n\t\t\t\t\tA2(\n\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withTitle,\n\t\t\t\t\t\t'Enable',\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withDefault,\n\t\t\t\t\t\t\telm$json$Json$Encode$bool(false),\n\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Builder$withType, 'boolean', json_tools$json_schema$Json$Schema$Builder$buildSchema)))));\n\t\t\treturn _List_fromArray(\n\t\t\t\t[\n\t\t\t\t\tA2(\n\t\t\t\t\tauthor$project$Showcase$makeExample,\n\t\t\t\t\t'Disable input',\n\t\t\t\t\tA2(\n\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withProperties,\n\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\tenableToggle,\n\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t'disableDemo',\n\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\twithRule,\n\t\t\t\t\t\t\t\t\t'disable',\n\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withDescription,\n\t\t\t\t\t\t\t\t\t\t'Will be enabled when switch turned on',\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withType,\n\t\t\t\t\t\t\t\t\t\t\t'string',\n\t\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Builder$withTitle, 'Rule: disable text field', json_tools$json_schema$Json$Schema$Builder$buildSchema)))))\n\t\t\t\t\t\t\t]),\n\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Builder$withType, 'object', json_tools$json_schema$Json$Schema$Builder$buildSchema))),\n\t\t\t\t\tA2(\n\t\t\t\t\tauthor$project$Showcase$makeExample,\n\t\t\t\t\t'Hide input',\n\t\t\t\t\tA2(\n\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withProperties,\n\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t'enabled',\n\t\t\t\t\t\t\t\tA3(\n\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withCustomKeyword,\n\t\t\t\t\t\t\t\t\t'ui',\n\t\t\t\t\t\t\t\t\telm$json$Json$Encode$object(\n\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t\t'widget',\n\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$string('switch'))\n\t\t\t\t\t\t\t\t\t\t\t])),\n\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withDefault,\n\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$bool(false),\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withTitle,\n\t\t\t\t\t\t\t\t\t\t\t'Show',\n\t\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Builder$withType, 'boolean', json_tools$json_schema$Json$Schema$Builder$buildSchema))))),\n\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t'hideDemo',\n\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\twithRule,\n\t\t\t\t\t\t\t\t\t'hide',\n\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withDescription,\n\t\t\t\t\t\t\t\t\t\t'Will be shown when switch turned on',\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withType,\n\t\t\t\t\t\t\t\t\t\t\t'string',\n\t\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Builder$withTitle, 'Rule: hide text field', json_tools$json_schema$Json$Schema$Builder$buildSchema)))))\n\t\t\t\t\t\t\t]),\n\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Builder$withType, 'object', json_tools$json_schema$Json$Schema$Builder$buildSchema))),\n\t\t\t\t\tA2(\n\t\t\t\t\tauthor$project$Showcase$makeExample,\n\t\t\t\t\t'Disable selection controls',\n\t\t\t\t\tA2(\n\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withProperties,\n\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\tenableToggle,\n\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t'disableCheckboxDemo',\n\t\t\t\t\t\t\t\tA3(\n\t\t\t\t\t\t\t\t\twithRuleAndWidget,\n\t\t\t\t\t\t\t\t\t'disable',\n\t\t\t\t\t\t\t\t\t'checkbox',\n\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withDescription,\n\t\t\t\t\t\t\t\t\t\t'Will be enabled when switch turned on',\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withType,\n\t\t\t\t\t\t\t\t\t\t\t'boolean',\n\t\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Builder$withTitle, 'Rule: disable checkbox', json_tools$json_schema$Json$Schema$Builder$buildSchema))))),\n\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t'disableSwitchDemo',\n\t\t\t\t\t\t\t\tA3(\n\t\t\t\t\t\t\t\t\twithRuleAndWidget,\n\t\t\t\t\t\t\t\t\t'disable',\n\t\t\t\t\t\t\t\t\t'switch',\n\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withDescription,\n\t\t\t\t\t\t\t\t\t\t'Will be enabled when switch turned on',\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withType,\n\t\t\t\t\t\t\t\t\t\t\t'boolean',\n\t\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Builder$withTitle, 'Rule: disable switch', json_tools$json_schema$Json$Schema$Builder$buildSchema)))))\n\t\t\t\t\t\t\t]),\n\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Builder$withType, 'object', json_tools$json_schema$Json$Schema$Builder$buildSchema))),\n\t\t\t\t\tA2(\n\t\t\t\t\tauthor$project$Showcase$makeExample,\n\t\t\t\t\t'Disable nested form',\n\t\t\t\t\tA2(\n\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withProperties,\n\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\tenableToggle,\n\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t'form',\n\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withProperties,\n\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t'nestedForm',\n\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\twithRule,\n\t\t\t\t\t\t\t\t\t\t\t\t'disable',\n\t\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withProperties,\n\t\t\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'disableDemo',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withDescription,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'Will be enabled when switch turned on',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withType,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'string',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Builder$withTitle, 'Rule: disable nested form', json_tools$json_schema$Json$Schema$Builder$buildSchema))))\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Builder$withType, 'object', json_tools$json_schema$Json$Schema$Builder$buildSchema))))\n\t\t\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Builder$withType, 'object', json_tools$json_schema$Json$Schema$Builder$buildSchema)))\n\t\t\t\t\t\t\t]),\n\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Builder$withType, 'object', json_tools$json_schema$Json$Schema$Builder$buildSchema))),\n\t\t\t\t\tA2(\n\t\t\t\t\tauthor$project$Showcase$makeExample,\n\t\t\t\t\t'Local scope',\n\t\t\t\t\tA2(\n\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withItem,\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withProperties,\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t'enabled',\n\t\t\t\t\t\t\t\t\tA3(\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withCustomKeyword,\n\t\t\t\t\t\t\t\t\t\t'ui',\n\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$object(\n\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'widget',\n\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$string('switch'))\n\t\t\t\t\t\t\t\t\t\t\t\t])),\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withDescription,\n\t\t\t\t\t\t\t\t\t\t\t'Enable editing',\n\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withTitle,\n\t\t\t\t\t\t\t\t\t\t\t\t'enable',\n\t\t\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Builder$withType, 'boolean', json_tools$json_schema$Json$Schema$Builder$buildSchema))))),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t'hideDemo',\n\t\t\t\t\t\t\t\t\tA3(\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withCustomKeyword,\n\t\t\t\t\t\t\t\t\t\t'ui',\n\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$object(\n\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'rule',\n\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$object(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'action',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$string('disable')),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'path',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$string('../enabled')),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'condition',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$object(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'const',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$bool(false)),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'default',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$bool(false))\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t])))\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t])))\n\t\t\t\t\t\t\t\t\t\t\t\t])),\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withDescription,\n\t\t\t\t\t\t\t\t\t\t\t'Local condition demo',\n\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withType,\n\t\t\t\t\t\t\t\t\t\t\t\t'string',\n\t\t\t\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Builder$withTitle, 'Rule: disable based on local condition', json_tools$json_schema$Json$Schema$Builder$buildSchema)))))\n\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Builder$withType, 'object', json_tools$json_schema$Json$Schema$Builder$buildSchema)),\n\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Builder$withType, 'array', json_tools$json_schema$Json$Schema$Builder$buildSchema)))\n\t\t\t\t]);\n\t\tcase 2:\n\t\t\treturn _List_fromArray(\n\t\t\t\t[\n\t\t\t\t\tA2(\n\t\t\t\t\tauthor$project$Showcase$makeExample,\n\t\t\t\t\t'Single field validation',\n\t\t\t\t\tA2(\n\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withMinimum,\n\t\t\t\t\t\t2,\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withDescription,\n\t\t\t\t\t\t\t'Enter name between 2 and 10 characters',\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withTitle,\n\t\t\t\t\t\t\t\t'Name',\n\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Builder$withType, 'number', json_tools$json_schema$Json$Schema$Builder$buildSchema))))),\n\t\t\t\t\tA2(\n\t\t\t\t\tauthor$project$Showcase$makeExample,\n\t\t\t\t\t'Multiline field validation',\n\t\t\t\t\tA2(\n\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withMinLength,\n\t\t\t\t\t\t40,\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withDescription,\n\t\t\t\t\t\t\t'Enter you bio',\n\t\t\t\t\t\t\tA3(\n\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withCustomKeyword,\n\t\t\t\t\t\t\t\t'ui',\n\t\t\t\t\t\t\t\telm$json$Json$Encode$object(\n\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t'widget',\n\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$object(\n\t\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'type',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$string('multiline')),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'minRows',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$int(3)),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'maxRows',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$json$Json$Encode$int(6))\n\t\t\t\t\t\t\t\t\t\t\t\t\t])))\n\t\t\t\t\t\t\t\t\t\t])),\n\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$Builder$withTitle,\n\t\t\t\t\t\t\t\t\t'Bio',\n\t\t\t\t\t\t\t\t\tA2(json_tools$json_schema$Json$Schema$Builder$withType, 'string', json_tools$json_schema$Json$Schema$Builder$buildSchema))))))\n\t\t\t\t]);\n\t\tdefault:\n\t\t\treturn _List_fromArray(\n\t\t\t\t[\n\t\t\t\t\t{a5: author$project$Showcase$flightBookingInputGeneratorSchema, a8: 'Fligth booking input generator'}\n\t\t\t\t]);\n\t}\n};\nvar elm$browser$Browser$Navigation$load = _Browser_load;\nvar elm$browser$Browser$Navigation$pushUrl = _Browser_pushUrl;\nvar elm$core$List$unzip = function (pairs) {\n\tvar step = F2(\n\t\tfunction (_n0, _n1) {\n\t\t\tvar x = _n0.a;\n\t\t\tvar y = _n0.b;\n\t\t\tvar xs = _n1.a;\n\t\t\tvar ys = _n1.b;\n\t\t\treturn _Utils_Tuple2(\n\t\t\t\tA2(elm$core$List$cons, x, xs),\n\t\t\t\tA2(elm$core$List$cons, y, ys));\n\t\t});\n\treturn A3(\n\t\telm$core$List$foldr,\n\t\tstep,\n\t\t_Utils_Tuple2(_List_Nil, _List_Nil),\n\t\tpairs);\n};\nvar elm$core$Platform$Cmd$map = _Platform_map;\nvar elm$core$Tuple$mapFirst = F2(\n\tfunction (func, _n0) {\n\t\tvar x = _n0.a;\n\t\tvar y = _n0.b;\n\t\treturn _Utils_Tuple2(\n\t\t\tfunc(x),\n\t\t\ty);\n\t});\nvar elm$core$Tuple$mapSecond = F2(\n\tfunction (func, _n0) {\n\t\tvar x = _n0.a;\n\t\tvar y = _n0.b;\n\t\treturn _Utils_Tuple2(\n\t\t\tx,\n\t\t\tfunc(y));\n\t});\nvar elm$url$Url$addPort = F2(\n\tfunction (maybePort, starter) {\n\t\tif (maybePort.$ === 1) {\n\t\t\treturn starter;\n\t\t} else {\n\t\t\tvar port_ = maybePort.a;\n\t\t\treturn starter + (':' + elm$core$String$fromInt(port_));\n\t\t}\n\t});\nvar elm$url$Url$addPrefixed = F3(\n\tfunction (prefix, maybeSegment, starter) {\n\t\tif (maybeSegment.$ === 1) {\n\t\t\treturn starter;\n\t\t} else {\n\t\t\tvar segment = maybeSegment.a;\n\t\t\treturn _Utils_ap(\n\t\t\t\tstarter,\n\t\t\t\t_Utils_ap(prefix, segment));\n\t\t}\n\t});\nvar elm$url$Url$toString = function (url) {\n\tvar http = function () {\n\t\tvar _n0 = url.a_;\n\t\tif (!_n0) {\n\t\t\treturn 'http://';\n\t\t} else {\n\t\t\treturn 'https://';\n\t\t}\n\t}();\n\treturn A3(\n\t\telm$url$Url$addPrefixed,\n\t\t'#',\n\t\turl.az,\n\t\tA3(\n\t\t\telm$url$Url$addPrefixed,\n\t\t\t'?',\n\t\t\turl.a$,\n\t\t\t_Utils_ap(\n\t\t\t\tA2(\n\t\t\t\t\telm$url$Url$addPort,\n\t\t\t\t\turl.aV,\n\t\t\t\t\t_Utils_ap(http, url.aA)),\n\t\t\t\turl.bE)));\n};\nvar author$project$Demo$update = F2(\n\tfunction (message, model) {\n\t\tswitch (message.$) {\n\t\t\tcase 3:\n\t\t\t\tvar urlRequest = message.a;\n\t\t\t\tif (!urlRequest.$) {\n\t\t\t\t\tvar url = urlRequest.a;\n\t\t\t\t\treturn _Utils_Tuple2(\n\t\t\t\t\t\tmodel,\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$browser$Browser$Navigation$pushUrl,\n\t\t\t\t\t\t\tmodel.X,\n\t\t\t\t\t\t\telm$url$Url$toString(url)));\n\t\t\t\t} else {\n\t\t\t\t\tvar url = urlRequest.a;\n\t\t\t\t\treturn _Utils_Tuple2(\n\t\t\t\t\t\tmodel,\n\t\t\t\t\t\telm$browser$Browser$Navigation$load(url));\n\t\t\t\t}\n\t\t\tcase 2:\n\t\t\t\tvar route = message.a;\n\t\t\t\tif (!route.$) {\n\t\t\t\t\tvar sc = route.a;\n\t\t\t\t\treturn A2(\n\t\t\t\t\t\tauthor$project$Demo$update,\n\t\t\t\t\t\tauthor$project$Demo$SetShowcase(sc),\n\t\t\t\t\t\tmodel);\n\t\t\t\t} else {\n\t\t\t\t\treturn A2(\n\t\t\t\t\t\tauthor$project$Demo$update,\n\t\t\t\t\t\tauthor$project$Demo$SetShowcase(author$project$Demo$defaultShowcase),\n\t\t\t\t\t\tmodel);\n\t\t\t\t}\n\t\t\tcase 1:\n\t\t\t\tvar index = message.a;\n\t\t\t\tvar msg = message.b;\n\t\t\t\tvar _n3 = elm$core$List$unzip(\n\t\t\t\t\tA2(\n\t\t\t\t\t\telm$core$List$indexedMap,\n\t\t\t\t\t\tF2(\n\t\t\t\t\t\t\tfunction (i, _n4) {\n\t\t\t\t\t\t\t\tvar form = _n4.y;\n\t\t\t\t\t\t\t\tvar example = _n4.v;\n\t\t\t\t\t\t\t\treturn _Utils_eq(i, index) ? A2(\n\t\t\t\t\t\t\t\t\telm$core$Tuple$mapSecond,\n\t\t\t\t\t\t\t\t\telm$core$Platform$Cmd$map(\n\t\t\t\t\t\t\t\t\t\tauthor$project$Demo$JsonFormMsg(index)),\n\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\telm$core$Tuple$mapFirst,\n\t\t\t\t\t\t\t\t\t\tfunction (f) {\n\t\t\t\t\t\t\t\t\t\t\treturn {v: example, y: f};\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\tA2(author$project$Json$Form$update, msg, form).a)) : _Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t{v: example, y: form},\n\t\t\t\t\t\t\t\t\telm$core$Platform$Cmd$none);\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\tmodel.w));\n\t\t\t\tvar examples = _n3.a;\n\t\t\t\tvar cmds = _n3.b;\n\t\t\t\treturn _Utils_Tuple2(\n\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\tmodel,\n\t\t\t\t\t\t{w: examples}),\n\t\t\t\t\telm$core$Platform$Cmd$batch(cmds));\n\t\t\tdefault:\n\t\t\t\tvar s = message.a;\n\t\t\t\tvar _n5 = elm$core$List$unzip(\n\t\t\t\t\tA2(\n\t\t\t\t\t\telm$core$List$indexedMap,\n\t\t\t\t\t\tF2(\n\t\t\t\t\t\t\tfunction (index, example) {\n\t\t\t\t\t\t\t\tvar config = {\n\t\t\t\t\t\t\t\t\tbg: false,\n\t\t\t\t\t\t\t\t\tbi: true,\n\t\t\t\t\t\t\t\t\tbz: 'form' + elm$core$String$fromInt(index),\n\t\t\t\t\t\t\t\t\tbH: false,\n\t\t\t\t\t\t\t\t\tbK: 1\n\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\t\telm$core$Tuple$mapSecond,\n\t\t\t\t\t\t\t\t\telm$core$Platform$Cmd$map(\n\t\t\t\t\t\t\t\t\t\tauthor$project$Demo$JsonFormMsg(index)),\n\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\telm$core$Tuple$mapFirst,\n\t\t\t\t\t\t\t\t\t\tfunction (form) {\n\t\t\t\t\t\t\t\t\t\t\treturn {v: example, y: form};\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\tA3(author$project$Json$Form$init, config, example.a5, elm$core$Maybe$Nothing)));\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\tauthor$project$Showcase$getShowcase(s)));\n\t\t\t\tvar examples = _n5.a;\n\t\t\t\tvar cmds = _n5.b;\n\t\t\t\treturn _Utils_Tuple2(\n\t\t\t\t\t_Utils_update(\n\t\t\t\t\t\tmodel,\n\t\t\t\t\t\t{w: examples, R: s}),\n\t\t\t\t\telm$core$Platform$Cmd$batch(cmds));\n\t\t}\n\t});\nvar author$project$Route$ShowcasePage = elm$core$Basics$identity;\nvar author$project$Showcase$FormLayout = 3;\nvar author$project$Showcase$Rules = 1;\nvar author$project$Showcase$Validation = 2;\nvar author$project$Showcase$getShowcaseById = function (id) {\n\tswitch (id) {\n\t\tcase 'types':\n\t\t\treturn elm$core$Maybe$Just(0);\n\t\tcase 'rules':\n\t\t\treturn elm$core$Maybe$Just(1);\n\t\tcase 'validation':\n\t\t\treturn elm$core$Maybe$Just(2);\n\t\tcase 'form':\n\t\t\treturn elm$core$Maybe$Just(3);\n\t\tdefault:\n\t\t\treturn elm$core$Maybe$Nothing;\n\t}\n};\nvar elm$url$Url$Parser$Parser = elm$core$Basics$identity;\nvar elm$url$Url$Parser$State = F5(\n\tfunction (visited, unvisited, params, frag, value) {\n\t\treturn {q: frag, s: params, n: unvisited, bN: value, t: visited};\n\t});\nvar elm$url$Url$Parser$custom = F2(\n\tfunction (tipe, stringToSomething) {\n\t\treturn function (_n0) {\n\t\t\tvar visited = _n0.t;\n\t\t\tvar unvisited = _n0.n;\n\t\t\tvar params = _n0.s;\n\t\t\tvar frag = _n0.q;\n\t\t\tvar value = _n0.bN;\n\t\t\tif (!unvisited.b) {\n\t\t\t\treturn _List_Nil;\n\t\t\t} else {\n\t\t\t\tvar next = unvisited.a;\n\t\t\t\tvar rest = unvisited.b;\n\t\t\t\tvar _n2 = stringToSomething(next);\n\t\t\t\tif (!_n2.$) {\n\t\t\t\t\tvar nextValue = _n2.a;\n\t\t\t\t\treturn _List_fromArray(\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\tA5(\n\t\t\t\t\t\t\telm$url$Url$Parser$State,\n\t\t\t\t\t\t\tA2(elm$core$List$cons, next, visited),\n\t\t\t\t\t\t\trest,\n\t\t\t\t\t\t\tparams,\n\t\t\t\t\t\t\tfrag,\n\t\t\t\t\t\t\tvalue(nextValue))\n\t\t\t\t\t\t]);\n\t\t\t\t} else {\n\t\t\t\t\treturn _List_Nil;\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t});\nvar author$project$Route$showcaseParser = A2(elm$url$Url$Parser$custom, 'SHOWCASE', author$project$Showcase$getShowcaseById);\nvar elm$url$Url$Parser$mapState = F2(\n\tfunction (func, _n0) {\n\t\tvar visited = _n0.t;\n\t\tvar unvisited = _n0.n;\n\t\tvar params = _n0.s;\n\t\tvar frag = _n0.q;\n\t\tvar value = _n0.bN;\n\t\treturn A5(\n\t\t\telm$url$Url$Parser$State,\n\t\t\tvisited,\n\t\t\tunvisited,\n\t\t\tparams,\n\t\t\tfrag,\n\t\t\tfunc(value));\n\t});\nvar elm$url$Url$Parser$map = F2(\n\tfunction (subValue, _n0) {\n\t\tvar parseArg = _n0;\n\t\treturn function (_n1) {\n\t\t\tvar visited = _n1.t;\n\t\t\tvar unvisited = _n1.n;\n\t\t\tvar params = _n1.s;\n\t\t\tvar frag = _n1.q;\n\t\t\tvar value = _n1.bN;\n\t\t\treturn A2(\n\t\t\t\telm$core$List$map,\n\t\t\t\telm$url$Url$Parser$mapState(value),\n\t\t\t\tparseArg(\n\t\t\t\t\tA5(elm$url$Url$Parser$State, visited, unvisited, params, frag, subValue)));\n\t\t};\n\t});\nvar elm$core$List$concatMap = F2(\n\tfunction (f, list) {\n\t\treturn elm$core$List$concat(\n\t\t\tA2(elm$core$List$map, f, list));\n\t});\nvar elm$url$Url$Parser$oneOf = function (parsers) {\n\treturn function (state) {\n\t\treturn A2(\n\t\t\telm$core$List$concatMap,\n\t\t\tfunction (_n0) {\n\t\t\t\tvar parser = _n0;\n\t\t\t\treturn parser(state);\n\t\t\t},\n\t\t\tparsers);\n\t};\n};\nvar elm$url$Url$Parser$s = function (str) {\n\treturn function (_n0) {\n\t\tvar visited = _n0.t;\n\t\tvar unvisited = _n0.n;\n\t\tvar params = _n0.s;\n\t\tvar frag = _n0.q;\n\t\tvar value = _n0.bN;\n\t\tif (!unvisited.b) {\n\t\t\treturn _List_Nil;\n\t\t} else {\n\t\t\tvar next = unvisited.a;\n\t\t\tvar rest = unvisited.b;\n\t\t\treturn _Utils_eq(next, str) ? _List_fromArray(\n\t\t\t\t[\n\t\t\t\t\tA5(\n\t\t\t\t\telm$url$Url$Parser$State,\n\t\t\t\t\tA2(elm$core$List$cons, next, visited),\n\t\t\t\t\trest,\n\t\t\t\t\tparams,\n\t\t\t\t\tfrag,\n\t\t\t\t\tvalue)\n\t\t\t\t]) : _List_Nil;\n\t\t}\n\t};\n};\nvar elm$url$Url$Parser$slash = F2(\n\tfunction (_n0, _n1) {\n\t\tvar parseBefore = _n0;\n\t\tvar parseAfter = _n1;\n\t\treturn function (state) {\n\t\t\treturn A2(\n\t\t\t\telm$core$List$concatMap,\n\t\t\t\tparseAfter,\n\t\t\t\tparseBefore(state));\n\t\t};\n\t});\nvar author$project$Route$route = elm$url$Url$Parser$oneOf(\n\t_List_fromArray(\n\t\t[\n\t\t\tA2(\n\t\t\telm$url$Url$Parser$map,\n\t\t\telm$core$Basics$identity,\n\t\t\tA2(\n\t\t\t\telm$url$Url$Parser$slash,\n\t\t\t\telm$url$Url$Parser$s('json-form'),\n\t\t\t\tA2(\n\t\t\t\t\telm$url$Url$Parser$slash,\n\t\t\t\t\telm$url$Url$Parser$s('showcase'),\n\t\t\t\t\tauthor$project$Route$showcaseParser)))\n\t\t]));\nvar elm$url$Url$Parser$getFirstMatch = function (states) {\n\tgetFirstMatch:\n\twhile (true) {\n\t\tif (!states.b) {\n\t\t\treturn elm$core$Maybe$Nothing;\n\t\t} else {\n\t\t\tvar state = states.a;\n\t\t\tvar rest = states.b;\n\t\t\tvar _n1 = state.n;\n\t\t\tif (!_n1.b) {\n\t\t\t\treturn elm$core$Maybe$Just(state.bN);\n\t\t\t} else {\n\t\t\t\tif ((_n1.a === '') && (!_n1.b.b)) {\n\t\t\t\t\treturn elm$core$Maybe$Just(state.bN);\n\t\t\t\t} else {\n\t\t\t\t\tvar $temp$states = rest;\n\t\t\t\t\tstates = $temp$states;\n\t\t\t\t\tcontinue getFirstMatch;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\nvar elm$url$Url$Parser$removeFinalEmpty = function (segments) {\n\tif (!segments.b) {\n\t\treturn _List_Nil;\n\t} else {\n\t\tif ((segments.a === '') && (!segments.b.b)) {\n\t\t\treturn _List_Nil;\n\t\t} else {\n\t\t\tvar segment = segments.a;\n\t\t\tvar rest = segments.b;\n\t\t\treturn A2(\n\t\t\t\telm$core$List$cons,\n\t\t\t\tsegment,\n\t\t\t\telm$url$Url$Parser$removeFinalEmpty(rest));\n\t\t}\n\t}\n};\nvar elm$url$Url$Parser$preparePath = function (path) {\n\tvar _n0 = A2(elm$core$String$split, '/', path);\n\tif (_n0.b && (_n0.a === '')) {\n\t\tvar segments = _n0.b;\n\t\treturn elm$url$Url$Parser$removeFinalEmpty(segments);\n\t} else {\n\t\tvar segments = _n0;\n\t\treturn elm$url$Url$Parser$removeFinalEmpty(segments);\n\t}\n};\nvar elm$url$Url$percentDecode = _Url_percentDecode;\nvar elm$url$Url$Parser$addToParametersHelp = F2(\n\tfunction (value, maybeList) {\n\t\tif (maybeList.$ === 1) {\n\t\t\treturn elm$core$Maybe$Just(\n\t\t\t\t_List_fromArray(\n\t\t\t\t\t[value]));\n\t\t} else {\n\t\t\tvar list = maybeList.a;\n\t\t\treturn elm$core$Maybe$Just(\n\t\t\t\tA2(elm$core$List$cons, value, list));\n\t\t}\n\t});\nvar elm$url$Url$Parser$addParam = F2(\n\tfunction (segment, dict) {\n\t\tvar _n0 = A2(elm$core$String$split, '=', segment);\n\t\tif ((_n0.b && _n0.b.b) && (!_n0.b.b.b)) {\n\t\t\tvar rawKey = _n0.a;\n\t\t\tvar _n1 = _n0.b;\n\t\t\tvar rawValue = _n1.a;\n\t\t\tvar _n2 = elm$url$Url$percentDecode(rawKey);\n\t\t\tif (_n2.$ === 1) {\n\t\t\t\treturn dict;\n\t\t\t} else {\n\t\t\t\tvar key = _n2.a;\n\t\t\t\tvar _n3 = elm$url$Url$percentDecode(rawValue);\n\t\t\t\tif (_n3.$ === 1) {\n\t\t\t\t\treturn dict;\n\t\t\t\t} else {\n\t\t\t\t\tvar value = _n3.a;\n\t\t\t\t\treturn A3(\n\t\t\t\t\t\telm$core$Dict$update,\n\t\t\t\t\t\tkey,\n\t\t\t\t\t\telm$url$Url$Parser$addToParametersHelp(value),\n\t\t\t\t\t\tdict);\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\treturn dict;\n\t\t}\n\t});\nvar elm$url$Url$Parser$prepareQuery = function (maybeQuery) {\n\tif (maybeQuery.$ === 1) {\n\t\treturn elm$core$Dict$empty;\n\t} else {\n\t\tvar qry = maybeQuery.a;\n\t\treturn A3(\n\t\t\telm$core$List$foldr,\n\t\t\telm$url$Url$Parser$addParam,\n\t\t\telm$core$Dict$empty,\n\t\t\tA2(elm$core$String$split, '&', qry));\n\t}\n};\nvar elm$url$Url$Parser$parse = F2(\n\tfunction (_n0, url) {\n\t\tvar parser = _n0;\n\t\treturn elm$url$Url$Parser$getFirstMatch(\n\t\t\tparser(\n\t\t\t\tA5(\n\t\t\t\t\telm$url$Url$Parser$State,\n\t\t\t\t\t_List_Nil,\n\t\t\t\t\telm$url$Url$Parser$preparePath(url.bE),\n\t\t\t\t\telm$url$Url$Parser$prepareQuery(url.a$),\n\t\t\t\t\turl.az,\n\t\t\t\t\telm$core$Basics$identity)));\n\t});\nvar author$project$Route$fromLocation = function (url) {\n\treturn A2(elm$url$Url$Parser$parse, author$project$Route$route, url);\n};\nvar author$project$Demo$init = F3(\n\tfunction (_n0, url, key) {\n\t\treturn A2(\n\t\t\tauthor$project$Demo$update,\n\t\t\tauthor$project$Demo$SetRoute(\n\t\t\t\tauthor$project$Route$fromLocation(url)),\n\t\t\t{w: _List_Nil, X: key, R: author$project$Demo$defaultShowcase});\n\t});\nvar elm$html$Html$div = _VirtualDom_node('div');\nvar elm$html$Html$span = _VirtualDom_node('span');\nvar elm$virtual_dom$VirtualDom$text = _VirtualDom_text;\nvar elm$html$Html$text = elm$virtual_dom$VirtualDom$text;\nvar elm$html$Html$Attributes$stringProperty = F2(\n\tfunction (key, string) {\n\t\treturn A2(\n\t\t\t_VirtualDom_property,\n\t\t\tkey,\n\t\t\telm$json$Json$Encode$string(string));\n\t});\nvar elm$html$Html$Attributes$class = elm$html$Html$Attributes$stringProperty('className');\nvar elm$virtual_dom$VirtualDom$style = _VirtualDom_style;\nvar elm$html$Html$Attributes$style = elm$virtual_dom$VirtualDom$style;\nvar author$project$Demo$cardWithTitle = F2(\n\tfunction (title, cardContent) {\n\t\treturn A2(\n\t\t\telm$html$Html$div,\n\t\t\t_List_fromArray(\n\t\t\t\t[\n\t\t\t\t\telm$html$Html$Attributes$class('card'),\n\t\t\t\t\tA2(elm$html$Html$Attributes$style, 'width', '100%')\n\t\t\t\t]),\n\t\t\t_List_fromArray(\n\t\t\t\t[\n\t\t\t\t\tA2(\n\t\t\t\t\telm$html$Html$span,\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\telm$html$Html$Attributes$class('card__title')\n\t\t\t\t\t\t]),\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\telm$html$Html$text(title)\n\t\t\t\t\t\t])),\n\t\t\t\t\tcardContent\n\t\t\t\t]));\n\t});\nvar author$project$Demo$viewValue = function (v) {\n\tvar val = F2(\n\t\tfunction (c, s) {\n\t\t\treturn A2(\n\t\t\t\telm$html$Html$span,\n\t\t\t\t_List_fromArray(\n\t\t\t\t\t[\n\t\t\t\t\t\telm$html$Html$Attributes$class('json-view__' + c)\n\t\t\t\t\t]),\n\t\t\t\t_List_fromArray(\n\t\t\t\t\t[\n\t\t\t\t\t\telm$html$Html$text(s)\n\t\t\t\t\t]));\n\t\t});\n\tvar str = function (c) {\n\t\treturn A2(\n\t\t\telm$core$Basics$composeR,\n\t\t\telm$json$Json$Encode$string,\n\t\t\tA2(\n\t\t\t\telm$core$Basics$composeR,\n\t\t\t\telm$json$Json$Encode$encode(0),\n\t\t\t\tval(c)));\n\t};\n\tswitch (v.$) {\n\t\tcase 4:\n\t\t\tvar n = v.a;\n\t\t\treturn A2(\n\t\t\t\tval,\n\t\t\t\t'number',\n\t\t\t\telm$core$String$fromFloat(n));\n\t\tcase 3:\n\t\t\treturn A2(val, 'null', 'null');\n\t\tcase 2:\n\t\t\tvar b = v.a;\n\t\t\treturn A2(\n\t\t\t\tval,\n\t\t\t\t'bool',\n\t\t\t\tb ? 'true' : 'false');\n\t\tcase 5:\n\t\t\tvar s = v.a;\n\t\t\treturn A2(str, 'string', s);\n\t\tcase 0:\n\t\t\tvar props = v.a;\n\t\t\tvar lastIndex = elm$core$List$length(props) - 1;\n\t\t\treturn A2(\n\t\t\t\telm$html$Html$span,\n\t\t\t\t_List_Nil,\n\t\t\t\t_List_fromArray(\n\t\t\t\t\t[\n\t\t\t\t\t\telm$html$Html$text('{'),\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\telm$html$Html$div,\n\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\telm$html$Html$Attributes$class('json-view__nested-props')\n\t\t\t\t\t\t\t]),\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$core$List$indexedMap,\n\t\t\t\t\t\t\tF2(\n\t\t\t\t\t\t\t\tfunction (index, _n1) {\n\t\t\t\t\t\t\t\t\tvar key = _n1.a;\n\t\t\t\t\t\t\t\t\tvar vv = _n1.b;\n\t\t\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\t\t\telm$html$Html$span,\n\t\t\t\t\t\t\t\t\t\t_List_Nil,\n\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\tA2(str, 'attr', key),\n\t\t\t\t\t\t\t\t\t\t\t\telm$html$Html$text(': '),\n\t\t\t\t\t\t\t\t\t\t\t\tauthor$project$Demo$viewValue(vv),\n\t\t\t\t\t\t\t\t\t\t\t\t_Utils_eq(index, lastIndex) ? elm$html$Html$text('\\n') : elm$html$Html$text(',\\n')\n\t\t\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\tprops)),\n\t\t\t\t\t\telm$html$Html$text('}')\n\t\t\t\t\t]));\n\t\tdefault:\n\t\t\tvar items = v.a;\n\t\t\tvar lastIndex = elm$core$List$length(items) - 1;\n\t\t\treturn A2(\n\t\t\t\telm$html$Html$span,\n\t\t\t\t_List_Nil,\n\t\t\t\t_List_fromArray(\n\t\t\t\t\t[\n\t\t\t\t\t\telm$html$Html$text('['),\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\telm$html$Html$div,\n\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\telm$html$Html$Attributes$class('json-view__nested-props')\n\t\t\t\t\t\t\t]),\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$core$List$indexedMap,\n\t\t\t\t\t\t\tF2(\n\t\t\t\t\t\t\t\tfunction (index, vv) {\n\t\t\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\t\t\telm$html$Html$span,\n\t\t\t\t\t\t\t\t\t\t_List_Nil,\n\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\tval,\n\t\t\t\t\t\t\t\t\t\t\t\t'attr',\n\t\t\t\t\t\t\t\t\t\t\t\telm$core$String$fromInt(index)),\n\t\t\t\t\t\t\t\t\t\t\t\telm$html$Html$text(': '),\n\t\t\t\t\t\t\t\t\t\t\t\tauthor$project$Demo$viewValue(vv),\n\t\t\t\t\t\t\t\t\t\t\t\t_Utils_eq(index, lastIndex) ? elm$html$Html$text('\\n') : elm$html$Html$text(',\\n')\n\t\t\t\t\t\t\t\t\t\t\t]));\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\titems)),\n\t\t\t\t\t\telm$html$Html$text(']')\n\t\t\t\t\t]));\n\t}\n};\nvar author$project$Demo$viewSchema = function (s) {\n\tvar code = json_tools$json_value$Json$Value$decodeValue(\n\t\tjson_tools$json_schema$Json$Schema$Definitions$encode(s));\n\treturn A2(\n\t\tauthor$project$Demo$cardWithTitle,\n\t\t'Schema',\n\t\tfunction (x) {\n\t\t\treturn A2(\n\t\t\t\telm$html$Html$div,\n\t\t\t\t_List_fromArray(\n\t\t\t\t\t[\n\t\t\t\t\t\telm$html$Html$Attributes$class('json-view')\n\t\t\t\t\t]),\n\t\t\t\t_List_fromArray(\n\t\t\t\t\t[x]));\n\t\t}(\n\t\t\tauthor$project$Demo$viewValue(code)));\n};\nvar author$project$Json$Form$Definitions$Checkbox = {$: 3};\nvar author$project$Json$Form$Definitions$Switch = {$: 2};\nvar author$project$Json$Form$getBooleanUiWidget = function (schema) {\n\tvar _n0 = author$project$JsonFormUtil$getUiSpec(schema).bb;\n\tif ((!_n0.$) && (_n0.a.$ === 1)) {\n\t\tvar _n1 = _n0.a;\n\t\treturn author$project$Json$Form$Definitions$Switch;\n\t} else {\n\t\treturn author$project$Json$Form$Definitions$Checkbox;\n\t}\n};\nvar author$project$Json$Form$Definitions$Array = {$: 6};\nvar author$project$Json$Form$Definitions$JsonEditor = {$: 4};\nvar author$project$Json$Form$Definitions$NumberField = {$: 1};\nvar author$project$Json$Form$Definitions$Object = function (a) {\n\treturn {$: 5, a: a};\n};\nvar author$project$Json$Form$Definitions$TextField = {$: 0};\nvar author$project$Json$Form$editingMode = F2(\n\tfunction (model, schema) {\n\t\tvar uiSpec = author$project$JsonFormUtil$getUiSpec(schema);\n\t\tif (uiSpec.bk) {\n\t\t\treturn author$project$Json$Form$Definitions$JsonEditor;\n\t\t} else {\n\t\t\tif (schema.$ === 1) {\n\t\t\t\tvar os = schema.a;\n\t\t\t\tvar _n1 = os.S;\n\t\t\t\t_n1$6:\n\t\t\t\twhile (true) {\n\t\t\t\t\tif (_n1.$ === 1) {\n\t\t\t\t\t\tswitch (_n1.a) {\n\t\t\t\t\t\t\tcase 1:\n\t\t\t\t\t\t\t\tvar _n2 = _n1.a;\n\t\t\t\t\t\t\t\treturn author$project$Json$Form$Definitions$NumberField;\n\t\t\t\t\t\t\tcase 0:\n\t\t\t\t\t\t\t\tvar _n3 = _n1.a;\n\t\t\t\t\t\t\t\treturn author$project$Json$Form$Definitions$NumberField;\n\t\t\t\t\t\t\tcase 2:\n\t\t\t\t\t\t\t\tvar _n4 = _n1.a;\n\t\t\t\t\t\t\t\treturn author$project$Json$Form$Definitions$TextField;\n\t\t\t\t\t\t\tcase 3:\n\t\t\t\t\t\t\t\tvar _n5 = _n1.a;\n\t\t\t\t\t\t\t\treturn author$project$Json$Form$getBooleanUiWidget(schema);\n\t\t\t\t\t\t\tcase 5:\n\t\t\t\t\t\t\t\tvar _n6 = _n1.a;\n\t\t\t\t\t\t\t\tvar _n7 = os.aY;\n\t\t\t\t\t\t\t\tif (!_n7.$) {\n\t\t\t\t\t\t\t\t\tvar schemata = _n7.a;\n\t\t\t\t\t\t\t\t\treturn author$project$Json$Form$Definitions$Object(schemata);\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\treturn author$project$Json$Form$Definitions$JsonEditor;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 4:\n\t\t\t\t\t\t\t\tvar _n8 = _n1.a;\n\t\t\t\t\t\t\t\treturn author$project$Json$Form$Definitions$Array;\n\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\tbreak _n1$6;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tbreak _n1$6;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn author$project$Json$Form$Definitions$JsonEditor;\n\t\t\t} else {\n\t\t\t\treturn author$project$Json$Form$Definitions$JsonEditor;\n\t\t\t}\n\t\t}\n\t});\nvar author$project$Json$Form$Definitions$AddItem = F3(\n\tfunction (a, b, c) {\n\t\treturn {$: 8, a: a, b: b, c: c};\n\t});\nvar author$project$Json$Form$Definitions$ToggleNode = function (a) {\n\treturn {$: 12, a: a};\n};\nvar author$project$Json$Form$Definitions$EditValue = F2(\n\tfunction (a, b) {\n\t\treturn {$: 4, a: a, b: b};\n\t});\nvar author$project$Json$Form$Definitions$FocusInput = function (a) {\n\treturn {$: 1, a: a};\n};\nvar author$project$JsonFormUtil$getTextProp = F3(\n\tfunction (schema, prop, def) {\n\t\tif (schema.$ === 1) {\n\t\t\tvar os = schema.a;\n\t\t\treturn A2(\n\t\t\t\telm$core$Maybe$withDefault,\n\t\t\t\tdef,\n\t\t\t\tprop(os));\n\t\t} else {\n\t\t\treturn def;\n\t\t}\n\t});\nvar author$project$JsonFormUtil$getDescription = function (schema) {\n\treturn A3(\n\t\tauthor$project$JsonFormUtil$getTextProp,\n\t\tschema,\n\t\tfunction ($) {\n\t\t\treturn $.bj;\n\t\t},\n\t\t'');\n};\nvar author$project$Json$Form$Helper$view = F3(\n\tfunction (model, schema, path) {\n\t\tvar errors = A2(elm$core$Dict$get, path, model.W);\n\t\tvar hasError = (!_Utils_eq(errors, elm$core$Maybe$Nothing)) && (A2(elm$core$List$member, path, model.F) && A2(elm$core$List$member, path, model.i));\n\t\treturn _Utils_Tuple2(\n\t\t\thasError,\n\t\t\thasError ? elm$html$Html$text(\n\t\t\t\t'Error: ' + A2(\n\t\t\t\t\telm$core$String$join,\n\t\t\t\t\t', ',\n\t\t\t\t\tA2(elm$core$Maybe$withDefault, _List_Nil, errors))) : elm$html$Html$text(\n\t\t\t\tauthor$project$JsonFormUtil$getDescription(schema)));\n\t});\nvar elm$core$List$takeReverse = F3(\n\tfunction (n, list, kept) {\n\t\ttakeReverse:\n\t\twhile (true) {\n\t\t\tif (n <= 0) {\n\t\t\t\treturn kept;\n\t\t\t} else {\n\t\t\t\tif (!list.b) {\n\t\t\t\t\treturn kept;\n\t\t\t\t} else {\n\t\t\t\t\tvar x = list.a;\n\t\t\t\t\tvar xs = list.b;\n\t\t\t\t\tvar $temp$n = n - 1,\n\t\t\t\t\t\t$temp$list = xs,\n\t\t\t\t\t\t$temp$kept = A2(elm$core$List$cons, x, kept);\n\t\t\t\t\tn = $temp$n;\n\t\t\t\t\tlist = $temp$list;\n\t\t\t\t\tkept = $temp$kept;\n\t\t\t\t\tcontinue takeReverse;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\nvar elm$core$List$takeTailRec = F2(\n\tfunction (n, list) {\n\t\treturn elm$core$List$reverse(\n\t\t\tA3(elm$core$List$takeReverse, n, list, _List_Nil));\n\t});\nvar elm$core$List$takeFast = F3(\n\tfunction (ctr, n, list) {\n\t\tif (n <= 0) {\n\t\t\treturn _List_Nil;\n\t\t} else {\n\t\t\tvar _n0 = _Utils_Tuple2(n, list);\n\t\t\t_n0$1:\n\t\t\twhile (true) {\n\t\t\t\t_n0$5:\n\t\t\t\twhile (true) {\n\t\t\t\t\tif (!_n0.b.b) {\n\t\t\t\t\t\treturn list;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (_n0.b.b.b) {\n\t\t\t\t\t\t\tswitch (_n0.a) {\n\t\t\t\t\t\t\t\tcase 1:\n\t\t\t\t\t\t\t\t\tbreak _n0$1;\n\t\t\t\t\t\t\t\tcase 2:\n\t\t\t\t\t\t\t\t\tvar _n2 = _n0.b;\n\t\t\t\t\t\t\t\t\tvar x = _n2.a;\n\t\t\t\t\t\t\t\t\tvar _n3 = _n2.b;\n\t\t\t\t\t\t\t\t\tvar y = _n3.a;\n\t\t\t\t\t\t\t\t\treturn _List_fromArray(\n\t\t\t\t\t\t\t\t\t\t[x, y]);\n\t\t\t\t\t\t\t\tcase 3:\n\t\t\t\t\t\t\t\t\tif (_n0.b.b.b.b) {\n\t\t\t\t\t\t\t\t\t\tvar _n4 = _n0.b;\n\t\t\t\t\t\t\t\t\t\tvar x = _n4.a;\n\t\t\t\t\t\t\t\t\t\tvar _n5 = _n4.b;\n\t\t\t\t\t\t\t\t\t\tvar y = _n5.a;\n\t\t\t\t\t\t\t\t\t\tvar _n6 = _n5.b;\n\t\t\t\t\t\t\t\t\t\tvar z = _n6.a;\n\t\t\t\t\t\t\t\t\t\treturn _List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t[x, y, z]);\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\tbreak _n0$5;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\tif (_n0.b.b.b.b && _n0.b.b.b.b.b) {\n\t\t\t\t\t\t\t\t\t\tvar _n7 = _n0.b;\n\t\t\t\t\t\t\t\t\t\tvar x = _n7.a;\n\t\t\t\t\t\t\t\t\t\tvar _n8 = _n7.b;\n\t\t\t\t\t\t\t\t\t\tvar y = _n8.a;\n\t\t\t\t\t\t\t\t\t\tvar _n9 = _n8.b;\n\t\t\t\t\t\t\t\t\t\tvar z = _n9.a;\n\t\t\t\t\t\t\t\t\t\tvar _n10 = _n9.b;\n\t\t\t\t\t\t\t\t\t\tvar w = _n10.a;\n\t\t\t\t\t\t\t\t\t\tvar tl = _n10.b;\n\t\t\t\t\t\t\t\t\t\treturn (ctr > 1000) ? A2(\n\t\t\t\t\t\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\t\t\t\t\t\tx,\n\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\t\t\t\t\t\t\ty,\n\t\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\t\t\t\t\t\t\t\tz,\n\t\t\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tw,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tA2(elm$core$List$takeTailRec, n - 4, tl))))) : A2(\n\t\t\t\t\t\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\t\t\t\t\t\tx,\n\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\t\t\t\t\t\t\ty,\n\t\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\t\t\t\t\t\t\t\tz,\n\t\t\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tw,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tA3(elm$core$List$takeFast, ctr + 1, n - 4, tl)))));\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\tbreak _n0$5;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tif (_n0.a === 1) {\n\t\t\t\t\t\t\t\tbreak _n0$1;\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tbreak _n0$5;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn list;\n\t\t\t}\n\t\t\tvar _n1 = _n0.b;\n\t\t\tvar x = _n1.a;\n\t\t\treturn _List_fromArray(\n\t\t\t\t[x]);\n\t\t}\n\t});\nvar elm$core$List$take = F2(\n\tfunction (n, list) {\n\t\treturn A3(elm$core$List$takeFast, 0, n, list);\n\t});\nvar author$project$Json$Form$UiSpec$applyRule = F3(\n\tfunction (value, path, rule) {\n\t\tvar resolvePath = function (subPath) {\n\t\t\treturn A3(\n\t\t\t\telm$core$List$foldl,\n\t\t\t\tF2(\n\t\t\t\t\tfunction (token, currentPath) {\n\t\t\t\t\t\treturn (token === '') ? _List_Nil : ((token === '.') ? currentPath : ((token === '..') ? A2(\n\t\t\t\t\t\t\telm$core$List$take,\n\t\t\t\t\t\t\telm$core$List$length(currentPath) - 1,\n\t\t\t\t\t\t\tcurrentPath) : _Utils_ap(\n\t\t\t\t\t\t\tcurrentPath,\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[token]))));\n\t\t\t\t\t}),\n\t\t\t\tpath,\n\t\t\t\tA2(elm$core$String$split, '/', subPath));\n\t\t};\n\t\tvar getDefaultValue = function (s) {\n\t\t\tif (s.$ === 1) {\n\t\t\t\tvar os = s.a;\n\t\t\t\treturn json_tools$json_value$Json$Value$decodeValue(\n\t\t\t\t\tA2(elm$core$Maybe$withDefault, elm$json$Json$Encode$null, os.bh));\n\t\t\t} else {\n\t\t\t\treturn json_tools$json_value$Json$Value$NullValue;\n\t\t\t}\n\t\t};\n\t\tvar referencedValue = F2(\n\t\t\tfunction (subPath, s) {\n\t\t\t\treturn json_tools$json_value$Json$Value$encode(\n\t\t\t\t\tA2(\n\t\t\t\t\t\telm$core$Maybe$withDefault,\n\t\t\t\t\t\tgetDefaultValue(s),\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$core$Maybe$andThen,\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\telm$core$Basics$composeR,\n\t\t\t\t\t\t\t\tjson_tools$json_value$Json$Value$getIn(subPath),\n\t\t\t\t\t\t\t\telm$core$Result$toMaybe),\n\t\t\t\t\t\t\tvalue)));\n\t\t\t});\n\t\tvar validate = F2(\n\t\t\tfunction (subPath, s) {\n\t\t\t\treturn A2(\n\t\t\t\t\telm$core$Result$withDefault,\n\t\t\t\t\tfalse,\n\t\t\t\t\tA2(\n\t\t\t\t\t\telm$core$Result$map,\n\t\t\t\t\t\tfunction (_n6) {\n\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t},\n\t\t\t\t\t\tA3(\n\t\t\t\t\t\t\tjson_tools$json_schema$Json$Schema$validateValue,\n\t\t\t\t\t\t\t{P: true},\n\t\t\t\t\t\t\tA2(referencedValue, subPath, s),\n\t\t\t\t\t\t\ts)));\n\t\t\t});\n\t\tvar hidden = function () {\n\t\t\t_n3$2:\n\t\t\twhile (true) {\n\t\t\t\tif (!rule.$) {\n\t\t\t\t\tswitch (rule.a.$) {\n\t\t\t\t\t\tcase 3:\n\t\t\t\t\t\t\tvar _n4 = rule.a;\n\t\t\t\t\t\t\tvar subPath = _n4.a;\n\t\t\t\t\t\t\tvar s = _n4.b;\n\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\tvalidate,\n\t\t\t\t\t\t\t\tresolvePath(subPath),\n\t\t\t\t\t\t\t\ts);\n\t\t\t\t\t\tcase 2:\n\t\t\t\t\t\t\tvar _n5 = rule.a;\n\t\t\t\t\t\t\tvar subPath = _n5.a;\n\t\t\t\t\t\t\tvar s = _n5.b;\n\t\t\t\t\t\t\treturn !A2(\n\t\t\t\t\t\t\t\tvalidate,\n\t\t\t\t\t\t\t\tresolvePath(subPath),\n\t\t\t\t\t\t\t\ts);\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\tbreak _n3$2;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tbreak _n3$2;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t}();\n\t\tvar disabled = function () {\n\t\t\t_n0$2:\n\t\t\twhile (true) {\n\t\t\t\tif (!rule.$) {\n\t\t\t\t\tswitch (rule.a.$) {\n\t\t\t\t\t\tcase 1:\n\t\t\t\t\t\t\tvar _n1 = rule.a;\n\t\t\t\t\t\t\tvar subPath = _n1.a;\n\t\t\t\t\t\t\tvar s = _n1.b;\n\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\tvalidate,\n\t\t\t\t\t\t\t\tresolvePath(subPath),\n\t\t\t\t\t\t\t\ts);\n\t\t\t\t\t\tcase 0:\n\t\t\t\t\t\t\tvar _n2 = rule.a;\n\t\t\t\t\t\t\tvar subPath = _n2.a;\n\t\t\t\t\t\t\tvar s = _n2.b;\n\t\t\t\t\t\t\treturn !A2(\n\t\t\t\t\t\t\t\tvalidate,\n\t\t\t\t\t\t\t\tresolvePath(subPath),\n\t\t\t\t\t\t\t\ts);\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\tbreak _n0$2;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tbreak _n0$2;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t}();\n\t\treturn _Utils_Tuple2(disabled, hidden);\n\t});\nvar author$project$JsonFormUtil$getTitle = F2(\n\tfunction (isRequired, schema) {\n\t\treturn function (title) {\n\t\t\treturn isRequired ? (title + ' *') : title;\n\t\t}(\n\t\t\tA3(\n\t\t\t\tauthor$project$JsonFormUtil$getTextProp,\n\t\t\t\tschema,\n\t\t\t\tfunction ($) {\n\t\t\t\t\treturn $.a8;\n\t\t\t\t},\n\t\t\t\t''));\n\t});\nvar elm$html$Html$input = _VirtualDom_node('input');\nvar elm$html$Html$label = _VirtualDom_node('label');\nvar elm$html$Html$Attributes$boolProperty = F2(\n\tfunction (key, bool) {\n\t\treturn A2(\n\t\t\t_VirtualDom_property,\n\t\t\tkey,\n\t\t\telm$json$Json$Encode$bool(bool));\n\t});\nvar elm$html$Html$Attributes$checked = elm$html$Html$Attributes$boolProperty('checked');\nvar elm$core$Tuple$second = function (_n0) {\n\tvar y = _n0.b;\n\treturn y;\n};\nvar elm$html$Html$Attributes$classList = function (classes) {\n\treturn elm$html$Html$Attributes$class(\n\t\tA2(\n\t\t\telm$core$String$join,\n\t\t\t' ',\n\t\t\tA2(\n\t\t\t\telm$core$List$map,\n\t\t\t\telm$core$Tuple$first,\n\t\t\t\tA2(elm$core$List$filter, elm$core$Tuple$second, classes))));\n};\nvar elm$html$Html$Attributes$disabled = elm$html$Html$Attributes$boolProperty('disabled');\nvar elm$html$Html$Attributes$id = elm$html$Html$Attributes$stringProperty('id');\nvar elm$html$Html$Attributes$name = elm$html$Html$Attributes$stringProperty('name');\nvar elm$html$Html$Attributes$type_ = elm$html$Html$Attributes$stringProperty('type');\nvar elm$virtual_dom$VirtualDom$Normal = function (a) {\n\treturn {$: 0, a: a};\n};\nvar elm$virtual_dom$VirtualDom$on = _VirtualDom_on;\nvar elm$html$Html$Events$on = F2(\n\tfunction (event, decoder) {\n\t\treturn A2(\n\t\t\telm$virtual_dom$VirtualDom$on,\n\t\t\tevent,\n\t\t\telm$virtual_dom$VirtualDom$Normal(decoder));\n\t});\nvar elm$html$Html$Events$onBlur = function (msg) {\n\treturn A2(\n\t\telm$html$Html$Events$on,\n\t\t'blur',\n\t\telm$json$Json$Decode$succeed(msg));\n};\nvar elm$html$Html$Events$targetChecked = A2(\n\telm$json$Json$Decode$at,\n\t_List_fromArray(\n\t\t['target', 'checked']),\n\telm$json$Json$Decode$bool);\nvar elm$html$Html$Events$onCheck = function (tagger) {\n\treturn A2(\n\t\telm$html$Html$Events$on,\n\t\t'change',\n\t\tA2(elm$json$Json$Decode$map, tagger, elm$html$Html$Events$targetChecked));\n};\nvar elm$html$Html$Events$onFocus = function (msg) {\n\treturn A2(\n\t\telm$html$Html$Events$on,\n\t\t'focus',\n\t\telm$json$Json$Decode$succeed(msg));\n};\nvar author$project$Json$Form$Selection$checkbox = F5(\n\tfunction (model, schema, isRequired, isDisabled, path) {\n\t\tvar isChecked = function () {\n\t\t\tvar _n2 = A2(\n\t\t\t\telm$core$Maybe$andThen,\n\t\t\t\tA2(\n\t\t\t\t\telm$core$Basics$composeR,\n\t\t\t\t\tjson_tools$json_value$Json$Value$getIn(path),\n\t\t\t\t\telm$core$Result$toMaybe),\n\t\t\t\tmodel.bN);\n\t\t\tif ((!_n2.$) && (_n2.a.$ === 2)) {\n\t\t\t\tvar x = _n2.a.a;\n\t\t\t\treturn x;\n\t\t\t} else {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}();\n\t\tvar id = model.V.bz + ('_' + A2(elm$core$String$join, '_', path));\n\t\tvar _n0 = A3(\n\t\t\tauthor$project$Json$Form$UiSpec$applyRule,\n\t\t\tmodel.bN,\n\t\t\tpath,\n\t\t\tauthor$project$JsonFormUtil$getUiSpec(schema).a4);\n\t\tvar disabled = _n0.a;\n\t\tvar hidden = _n0.b;\n\t\tvar actuallyDisabled = isDisabled || disabled;\n\t\tvar _n1 = A3(author$project$Json$Form$Helper$view, model, schema, path);\n\t\tvar hasError = _n1.a;\n\t\tvar helperText = _n1.b;\n\t\treturn A2(\n\t\t\telm$html$Html$div,\n\t\t\t_List_fromArray(\n\t\t\t\t[\n\t\t\t\t\telm$html$Html$Attributes$classList(\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t_Utils_Tuple2('jf-element', true),\n\t\t\t\t\t\t\t_Utils_Tuple2('jf-element--hidden', hidden),\n\t\t\t\t\t\t\t_Utils_Tuple2('jf-element--invalid', hasError)\n\t\t\t\t\t\t]))\n\t\t\t\t]),\n\t\t\t_List_fromArray(\n\t\t\t\t[\n\t\t\t\t\tA2(\n\t\t\t\t\telm$html$Html$label,\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\telm$html$Html$Attributes$classList(\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-checkbox', true),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-checkbox--on', isChecked),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t'jf-checkbox--focused',\n\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\telm$core$Maybe$withDefault,\n\t\t\t\t\t\t\t\t\t\tfalse,\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$map,\n\t\t\t\t\t\t\t\t\t\t\telm$core$Basics$eq(path),\n\t\t\t\t\t\t\t\t\t\t\tmodel.g))),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-checkbox--invalid', hasError),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-checkbox--disabled', actuallyDisabled),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-checkbox--hidden', hidden)\n\t\t\t\t\t\t\t\t]))\n\t\t\t\t\t\t]),\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$html$Html$input,\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$type_('checkbox'),\n\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$class('jf-checkbox__input'),\n\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$checked(isChecked),\n\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$id(id),\n\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$name(id),\n\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$disabled(actuallyDisabled),\n\t\t\t\t\t\t\t\t\telm$html$Html$Events$onFocus(\n\t\t\t\t\t\t\t\t\tauthor$project$Json$Form$Definitions$FocusInput(\n\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Just(path))),\n\t\t\t\t\t\t\t\t\telm$html$Html$Events$onBlur(\n\t\t\t\t\t\t\t\t\tauthor$project$Json$Form$Definitions$FocusInput(elm$core$Maybe$Nothing)),\n\t\t\t\t\t\t\t\t\telm$html$Html$Events$onCheck(\n\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\telm$core$Basics$composeR,\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_value$Json$Value$BoolValue,\n\t\t\t\t\t\t\t\t\t\tauthor$project$Json$Form$Definitions$EditValue(path)))\n\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t_List_Nil),\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$html$Html$span,\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$class('jf-checkbox__label')\n\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\telm$html$Html$text(\n\t\t\t\t\t\t\t\t\tA2(author$project$JsonFormUtil$getTitle, isRequired, schema))\n\t\t\t\t\t\t\t\t])),\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$html$Html$div,\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$class('jf-checkbox__box-outline')\n\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\telm$html$Html$div,\n\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$class('jf-checkbox__tick-outline')\n\t\t\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t\t\t_List_Nil)\n\t\t\t\t\t\t\t\t])),\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$html$Html$div,\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$class('jf-checkbox__helper-text')\n\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[helperText]))\n\t\t\t\t\t\t]))\n\t\t\t\t]));\n\t});\nvar author$project$Json$Form$Selection$switch = F5(\n\tfunction (model, schema, isRequired, isDisabled, path) {\n\t\tvar isChecked = function () {\n\t\t\tvar _n2 = A2(\n\t\t\t\telm$core$Maybe$andThen,\n\t\t\t\tA2(\n\t\t\t\t\telm$core$Basics$composeR,\n\t\t\t\t\tjson_tools$json_value$Json$Value$getIn(path),\n\t\t\t\t\telm$core$Result$toMaybe),\n\t\t\t\tmodel.bN);\n\t\t\tif ((!_n2.$) && (_n2.a.$ === 2)) {\n\t\t\t\tvar x = _n2.a.a;\n\t\t\t\treturn x;\n\t\t\t} else {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}();\n\t\tvar id = model.V.bz + ('_' + A2(elm$core$String$join, '_', path));\n\t\tvar _n0 = A3(\n\t\t\tauthor$project$Json$Form$UiSpec$applyRule,\n\t\t\tmodel.bN,\n\t\t\tpath,\n\t\t\tauthor$project$JsonFormUtil$getUiSpec(schema).a4);\n\t\tvar disabled = _n0.a;\n\t\tvar hidden = _n0.b;\n\t\tvar actuallyDisabled = isDisabled || disabled;\n\t\tvar _n1 = A3(author$project$Json$Form$Helper$view, model, schema, path);\n\t\tvar hasError = _n1.a;\n\t\tvar helperText = _n1.b;\n\t\treturn A2(\n\t\t\telm$html$Html$div,\n\t\t\t_List_fromArray(\n\t\t\t\t[\n\t\t\t\t\telm$html$Html$Attributes$classList(\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t_Utils_Tuple2('jf-element', true),\n\t\t\t\t\t\t\t_Utils_Tuple2('jf-element--hidden', hidden),\n\t\t\t\t\t\t\t_Utils_Tuple2('jf-element--invalid', hasError)\n\t\t\t\t\t\t]))\n\t\t\t\t]),\n\t\t\t_List_fromArray(\n\t\t\t\t[\n\t\t\t\t\tA2(\n\t\t\t\t\telm$html$Html$label,\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\telm$html$Html$Attributes$classList(\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-switch', true),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-switch--on', isChecked),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t'jf-switch--focused',\n\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\telm$core$Maybe$withDefault,\n\t\t\t\t\t\t\t\t\t\tfalse,\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$map,\n\t\t\t\t\t\t\t\t\t\t\telm$core$Basics$eq(path),\n\t\t\t\t\t\t\t\t\t\t\tmodel.g))),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-switch--invalid', hasError),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-switch--disabled', actuallyDisabled),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-switch--hidden', hidden)\n\t\t\t\t\t\t\t\t]))\n\t\t\t\t\t\t]),\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$html$Html$input,\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$type_('checkbox'),\n\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$class('jf-switch__input'),\n\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$checked(isChecked),\n\t\t\t\t\t\t\t\t\telm$html$Html$Events$onFocus(\n\t\t\t\t\t\t\t\t\tauthor$project$Json$Form$Definitions$FocusInput(\n\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Just(path))),\n\t\t\t\t\t\t\t\t\telm$html$Html$Events$onBlur(\n\t\t\t\t\t\t\t\t\tauthor$project$Json$Form$Definitions$FocusInput(elm$core$Maybe$Nothing)),\n\t\t\t\t\t\t\t\t\telm$html$Html$Events$onCheck(\n\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\telm$core$Basics$composeR,\n\t\t\t\t\t\t\t\t\t\tjson_tools$json_value$Json$Value$BoolValue,\n\t\t\t\t\t\t\t\t\t\tauthor$project$Json$Form$Definitions$EditValue(path))),\n\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$id(id),\n\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$name(id),\n\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$disabled(actuallyDisabled)\n\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t_List_Nil),\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$html$Html$span,\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$class('jf-switch__label')\n\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\telm$html$Html$text(\n\t\t\t\t\t\t\t\t\tA2(author$project$JsonFormUtil$getTitle, isRequired, schema))\n\t\t\t\t\t\t\t\t])),\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$html$Html$div,\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$class('jf-switch__track')\n\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t_List_Nil),\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$html$Html$div,\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$class('jf-switch__thumb')\n\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t_List_Nil),\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$html$Html$div,\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$class('jf-switch__helper-text')\n\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[helperText]))\n\t\t\t\t\t\t]))\n\t\t\t\t]));\n\t});\nvar elm$svg$Svg$trustedNode = _VirtualDom_nodeNS('http://www.w3.org/2000/svg');\nvar elm$svg$Svg$svg = elm$svg$Svg$trustedNode('svg');\nvar elm$svg$Svg$Attributes$class = _VirtualDom_attribute('class');\nvar elm$svg$Svg$Attributes$fill = _VirtualDom_attribute('fill');\nvar elm$svg$Svg$Attributes$height = _VirtualDom_attribute('height');\nvar elm$svg$Svg$Attributes$stroke = _VirtualDom_attribute('stroke');\nvar elm$svg$Svg$Attributes$strokeLinecap = _VirtualDom_attribute('stroke-linecap');\nvar elm$svg$Svg$Attributes$strokeLinejoin = _VirtualDom_attribute('stroke-linejoin');\nvar elm$svg$Svg$Attributes$strokeWidth = _VirtualDom_attribute('stroke-width');\nvar elm$svg$Svg$Attributes$style = _VirtualDom_attribute('style');\nvar elm$svg$Svg$Attributes$viewBox = _VirtualDom_attribute('viewBox');\nvar elm$svg$Svg$Attributes$width = _VirtualDom_attribute('width');\nvar elm$svg$Svg$Events$onClick = function (msg) {\n\treturn A2(\n\t\telm$html$Html$Events$on,\n\t\t'click',\n\t\telm$json$Json$Decode$succeed(msg));\n};\nvar author$project$Icons$svgFeatherIcon = F2(\n\tfunction (className, onClickHandler) {\n\t\tvar attrs = _List_fromArray(\n\t\t\t[\n\t\t\t\telm$svg$Svg$Attributes$class('feather feather-' + className),\n\t\t\t\telm$svg$Svg$Attributes$fill('none'),\n\t\t\t\telm$svg$Svg$Attributes$height('24'),\n\t\t\t\telm$svg$Svg$Attributes$stroke('currentColor'),\n\t\t\t\telm$svg$Svg$Attributes$strokeLinecap('round'),\n\t\t\t\telm$svg$Svg$Attributes$strokeLinejoin('round'),\n\t\t\t\telm$svg$Svg$Attributes$strokeWidth('2'),\n\t\t\t\telm$svg$Svg$Attributes$viewBox('0 0 24 24'),\n\t\t\t\telm$svg$Svg$Attributes$width('24')\n\t\t\t]);\n\t\tif (!onClickHandler.$) {\n\t\t\tvar handler = onClickHandler.a;\n\t\t\treturn elm$svg$Svg$svg(\n\t\t\t\tA2(\n\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\telm$svg$Svg$Events$onClick(handler),\n\t\t\t\t\tA2(\n\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\telm$svg$Svg$Attributes$style('cursor: pointer'),\n\t\t\t\t\t\tattrs)));\n\t\t} else {\n\t\t\treturn elm$svg$Svg$svg(attrs);\n\t\t}\n\t});\nvar elm$svg$Svg$circle = elm$svg$Svg$trustedNode('circle');\nvar elm$svg$Svg$line = elm$svg$Svg$trustedNode('line');\nvar elm$svg$Svg$Attributes$cx = _VirtualDom_attribute('cx');\nvar elm$svg$Svg$Attributes$cy = _VirtualDom_attribute('cy');\nvar elm$svg$Svg$Attributes$r = _VirtualDom_attribute('r');\nvar elm$svg$Svg$Attributes$x1 = _VirtualDom_attribute('x1');\nvar elm$svg$Svg$Attributes$x2 = _VirtualDom_attribute('x2');\nvar elm$svg$Svg$Attributes$y1 = _VirtualDom_attribute('y1');\nvar elm$svg$Svg$Attributes$y2 = _VirtualDom_attribute('y2');\nvar author$project$Icons$deleteIcon = function (msg) {\n\treturn A3(\n\t\tauthor$project$Icons$svgFeatherIcon,\n\t\t'x-circle',\n\t\telm$core$Maybe$Just(msg),\n\t\t_List_fromArray(\n\t\t\t[\n\t\t\t\tA2(\n\t\t\t\telm$svg$Svg$circle,\n\t\t\t\t_List_fromArray(\n\t\t\t\t\t[\n\t\t\t\t\t\telm$svg$Svg$Attributes$cx('12'),\n\t\t\t\t\t\telm$svg$Svg$Attributes$cy('12'),\n\t\t\t\t\t\telm$svg$Svg$Attributes$r('10')\n\t\t\t\t\t]),\n\t\t\t\t_List_Nil),\n\t\t\t\tA2(\n\t\t\t\telm$svg$Svg$line,\n\t\t\t\t_List_fromArray(\n\t\t\t\t\t[\n\t\t\t\t\t\telm$svg$Svg$Attributes$x1('15'),\n\t\t\t\t\t\telm$svg$Svg$Attributes$y1('9'),\n\t\t\t\t\t\telm$svg$Svg$Attributes$x2('9'),\n\t\t\t\t\t\telm$svg$Svg$Attributes$y2('15')\n\t\t\t\t\t]),\n\t\t\t\t_List_Nil),\n\t\t\t\tA2(\n\t\t\t\telm$svg$Svg$line,\n\t\t\t\t_List_fromArray(\n\t\t\t\t\t[\n\t\t\t\t\t\telm$svg$Svg$Attributes$x1('9'),\n\t\t\t\t\t\telm$svg$Svg$Attributes$y1('9'),\n\t\t\t\t\t\telm$svg$Svg$Attributes$x2('15'),\n\t\t\t\t\t\telm$svg$Svg$Attributes$y2('15')\n\t\t\t\t\t]),\n\t\t\t\t_List_Nil)\n\t\t\t]));\n};\nvar author$project$Icons$errorIcon = A3(\n\tauthor$project$Icons$svgFeatherIcon,\n\t'alert-circle',\n\telm$core$Maybe$Nothing,\n\t_List_fromArray(\n\t\t[\n\t\t\tA2(\n\t\t\telm$svg$Svg$circle,\n\t\t\t_List_fromArray(\n\t\t\t\t[\n\t\t\t\t\telm$svg$Svg$Attributes$cx('12'),\n\t\t\t\t\telm$svg$Svg$Attributes$cy('12'),\n\t\t\t\t\telm$svg$Svg$Attributes$r('10')\n\t\t\t\t]),\n\t\t\t_List_Nil),\n\t\t\tA2(\n\t\t\telm$svg$Svg$line,\n\t\t\t_List_fromArray(\n\t\t\t\t[\n\t\t\t\t\telm$svg$Svg$Attributes$x1('12'),\n\t\t\t\t\telm$svg$Svg$Attributes$y1('8'),\n\t\t\t\t\telm$svg$Svg$Attributes$x2('12'),\n\t\t\t\t\telm$svg$Svg$Attributes$y2('12')\n\t\t\t\t]),\n\t\t\t_List_Nil),\n\t\t\tA2(\n\t\t\telm$svg$Svg$line,\n\t\t\t_List_fromArray(\n\t\t\t\t[\n\t\t\t\t\telm$svg$Svg$Attributes$x1('12'),\n\t\t\t\t\telm$svg$Svg$Attributes$y1('16'),\n\t\t\t\t\telm$svg$Svg$Attributes$x2('12'),\n\t\t\t\t\telm$svg$Svg$Attributes$y2('16')\n\t\t\t\t]),\n\t\t\t_List_Nil)\n\t\t]));\nvar elm$svg$Svg$path = elm$svg$Svg$trustedNode('path');\nvar elm$svg$Svg$Attributes$d = _VirtualDom_attribute('d');\nvar author$project$Icons$eye = function (msg) {\n\treturn A3(\n\t\tauthor$project$Icons$svgFeatherIcon,\n\t\t'eye',\n\t\telm$core$Maybe$Just(msg),\n\t\t_List_fromArray(\n\t\t\t[\n\t\t\t\tA2(\n\t\t\t\telm$svg$Svg$path,\n\t\t\t\t_List_fromArray(\n\t\t\t\t\t[\n\t\t\t\t\t\telm$svg$Svg$Attributes$d('M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z')\n\t\t\t\t\t]),\n\t\t\t\t_List_Nil),\n\t\t\t\tA2(\n\t\t\t\telm$svg$Svg$circle,\n\t\t\t\t_List_fromArray(\n\t\t\t\t\t[\n\t\t\t\t\t\telm$svg$Svg$Attributes$cx('12'),\n\t\t\t\t\t\telm$svg$Svg$Attributes$cy('12'),\n\t\t\t\t\t\telm$svg$Svg$Attributes$r('3')\n\t\t\t\t\t]),\n\t\t\t\t_List_Nil)\n\t\t\t]));\n};\nvar author$project$Icons$eyeOff = function (msg) {\n\treturn A3(\n\t\tauthor$project$Icons$svgFeatherIcon,\n\t\t'eye-off',\n\t\telm$core$Maybe$Just(msg),\n\t\t_List_fromArray(\n\t\t\t[\n\t\t\t\tA2(\n\t\t\t\telm$svg$Svg$path,\n\t\t\t\t_List_fromArray(\n\t\t\t\t\t[\n\t\t\t\t\t\telm$svg$Svg$Attributes$d('M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24')\n\t\t\t\t\t]),\n\t\t\t\t_List_Nil),\n\t\t\t\tA2(\n\t\t\t\telm$svg$Svg$line,\n\t\t\t\t_List_fromArray(\n\t\t\t\t\t[\n\t\t\t\t\t\telm$svg$Svg$Attributes$x1('1'),\n\t\t\t\t\t\telm$svg$Svg$Attributes$y1('1'),\n\t\t\t\t\t\telm$svg$Svg$Attributes$x2('23'),\n\t\t\t\t\t\telm$svg$Svg$Attributes$y2('23')\n\t\t\t\t\t]),\n\t\t\t\t_List_Nil)\n\t\t\t]));\n};\nvar author$project$Json$Form$Definitions$DeleteProperty = function (a) {\n\treturn {$: 10, a: a};\n};\nvar author$project$Json$Form$Definitions$EditJson = F3(\n\tfunction (a, b, c) {\n\t\treturn {$: 6, a: a, b: b, c: c};\n\t});\nvar author$project$Json$Form$Definitions$EditMultiline = F3(\n\tfunction (a, b, c) {\n\t\treturn {$: 7, a: a, b: b, c: c};\n\t});\nvar author$project$Json$Form$Definitions$FocusFragileInput = F2(\n\tfunction (a, b) {\n\t\treturn {$: 3, a: a, b: b};\n\t});\nvar author$project$Json$Form$Definitions$ToggleShowPassword = {$: 9};\nvar elm$core$Basics$min = F2(\n\tfunction (x, y) {\n\t\treturn (_Utils_cmp(x, y) < 0) ? x : y;\n\t});\nvar elm$html$Html$datalist = _VirtualDom_node('datalist');\nvar elm$html$Html$option = _VirtualDom_node('option');\nvar elm$html$Html$textarea = _VirtualDom_node('textarea');\nvar elm$html$Html$Attributes$autocomplete = function (bool) {\n\treturn A2(\n\t\telm$html$Html$Attributes$stringProperty,\n\t\t'autocomplete',\n\t\tbool ? 'on' : 'off');\n};\nvar elm$html$Html$Attributes$list = _VirtualDom_attribute('list');\nvar elm$html$Html$Attributes$rows = function (n) {\n\treturn A2(\n\t\t_VirtualDom_attribute,\n\t\t'rows',\n\t\telm$core$String$fromInt(n));\n};\nvar elm$html$Html$Attributes$value = elm$html$Html$Attributes$stringProperty('value');\nvar elm$html$Html$Events$alwaysStop = function (x) {\n\treturn _Utils_Tuple2(x, true);\n};\nvar elm$virtual_dom$VirtualDom$MayStopPropagation = function (a) {\n\treturn {$: 1, a: a};\n};\nvar elm$html$Html$Events$stopPropagationOn = F2(\n\tfunction (event, decoder) {\n\t\treturn A2(\n\t\t\telm$virtual_dom$VirtualDom$on,\n\t\t\tevent,\n\t\t\telm$virtual_dom$VirtualDom$MayStopPropagation(decoder));\n\t});\nvar elm$html$Html$Events$targetValue = A2(\n\telm$json$Json$Decode$at,\n\t_List_fromArray(\n\t\t['target', 'value']),\n\telm$json$Json$Decode$string);\nvar elm$html$Html$Events$onInput = function (tagger) {\n\treturn A2(\n\t\telm$html$Html$Events$stopPropagationOn,\n\t\t'input',\n\t\tA2(\n\t\t\telm$json$Json$Decode$map,\n\t\t\telm$html$Html$Events$alwaysStop,\n\t\t\tA2(elm$json$Json$Decode$map, tagger, elm$html$Html$Events$targetValue)));\n};\nvar author$project$Json$Form$TextField$view = F6(\n\tfunction (model, schema, isJson, isRequired, isDisabled, path) {\n\t\tvar uiSpec = author$project$JsonFormUtil$getUiSpec(schema);\n\t\tvar multilineConfig = function () {\n\t\t\tvar _n8 = uiSpec.bb;\n\t\t\tif ((!_n8.$) && (_n8.a.$ === 2)) {\n\t\t\t\tvar conf = _n8.a.a;\n\t\t\t\treturn elm$core$Maybe$Just(conf);\n\t\t\t} else {\n\t\t\t\treturn isJson ? elm$core$Maybe$Just(\n\t\t\t\t\t{aF: 8, aK: 5}) : elm$core$Maybe$Nothing;\n\t\t\t}\n\t\t}();\n\t\tvar isPassword = _Utils_eq(\n\t\t\tuiSpec.bb,\n\t\t\telm$core$Maybe$Just(author$project$Json$Form$UiSpec$PasswordField));\n\t\tvar isOutlined = model.V.bK === 1;\n\t\tvar isFocused = A2(\n\t\t\telm$core$Maybe$withDefault,\n\t\t\tfalse,\n\t\t\tA2(\n\t\t\t\telm$core$Maybe$map,\n\t\t\t\telm$core$Basics$eq(path),\n\t\t\t\tmodel.g));\n\t\tvar id = _Utils_ap(\n\t\t\tmodel.V.bz + '_',\n\t\t\tA2(elm$core$String$join, '_', path));\n\t\tvar editedValue = isJson ? (isFocused ? model.o : A2(\n\t\t\telm$core$Maybe$withDefault,\n\t\t\t'',\n\t\t\tA2(\n\t\t\t\telm$core$Maybe$map,\n\t\t\t\tA2(\n\t\t\t\t\telm$core$Basics$composeR,\n\t\t\t\t\tjson_tools$json_value$Json$Value$encode,\n\t\t\t\t\telm$json$Json$Encode$encode(4)),\n\t\t\t\telm$core$Result$toMaybe(\n\t\t\t\t\tA2(\n\t\t\t\t\t\tjson_tools$json_value$Json$Value$getIn,\n\t\t\t\t\t\tpath,\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$core$Maybe$withDefault,\n\t\t\t\t\t\t\tjson_tools$json_value$Json$Value$ObjectValue(_List_Nil),\n\t\t\t\t\t\t\tmodel.bN)))))) : A2(\n\t\t\telm$core$Maybe$withDefault,\n\t\t\t'',\n\t\t\tA2(\n\t\t\t\telm$core$Maybe$map,\n\t\t\t\tauthor$project$JsonFormUtil$jsonValueToString,\n\t\t\t\tA2(\n\t\t\t\t\telm$core$Maybe$andThen,\n\t\t\t\t\telm$core$Result$toMaybe,\n\t\t\t\t\tA2(\n\t\t\t\t\t\telm$core$Maybe$map,\n\t\t\t\t\t\tjson_tools$json_value$Json$Value$getIn(path),\n\t\t\t\t\t\tmodel.bN))));\n\t\tvar editMultiline = function (fn) {\n\t\t\treturn A3(\n\t\t\t\telm$json$Json$Decode$map2,\n\t\t\t\tfn,\n\t\t\t\tA2(\n\t\t\t\t\telm$json$Json$Decode$at,\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t['target', 'scrollHeight']),\n\t\t\t\t\telm$json$Json$Decode$float),\n\t\t\t\tA2(\n\t\t\t\t\telm$json$Json$Decode$at,\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t['target', 'value']),\n\t\t\t\t\telm$json$Json$Decode$string));\n\t\t};\n\t\tvar _n0 = A3(author$project$Json$Form$UiSpec$applyRule, model.bN, path, uiSpec.a4);\n\t\tvar disabled = _n0.a;\n\t\tvar hidden = _n0.b;\n\t\tvar actuallyDisabled = isDisabled || disabled;\n\t\tvar _n1 = A3(author$project$Json$Form$Helper$view, model, schema, path);\n\t\tvar hasError = _n1.a;\n\t\tvar helperText = _n1.b;\n\t\tvar icon = isPassword ? (model.ab ? elm$core$Maybe$Just(\n\t\t\tauthor$project$Icons$eyeOff(author$project$Json$Form$Definitions$ToggleShowPassword)) : elm$core$Maybe$Just(\n\t\t\tauthor$project$Icons$eye(author$project$Json$Form$Definitions$ToggleShowPassword))) : ((hasError && model.V.bH) ? elm$core$Maybe$Just(author$project$Icons$errorIcon) : (((!isRequired) && ((editedValue !== '') && (!actuallyDisabled))) ? elm$core$Maybe$Just(\n\t\t\tauthor$project$Icons$deleteIcon(\n\t\t\t\tauthor$project$Json$Form$Definitions$DeleteProperty(path))) : elm$core$Maybe$Nothing));\n\t\tvar _n2 = function () {\n\t\t\tif (schema.$ === 1) {\n\t\t\t\tvar os = schema.a;\n\t\t\t\treturn _Utils_Tuple2(\n\t\t\t\t\tA2(\n\t\t\t\t\t\telm$core$Maybe$map,\n\t\t\t\t\t\telm$core$List$map(\n\t\t\t\t\t\t\tfunction (v) {\n\t\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\t\telm$core$Result$withDefault,\n\t\t\t\t\t\t\t\t\t'',\n\t\t\t\t\t\t\t\t\tA2(elm$json$Json$Decode$decodeValue, elm$json$Json$Decode$string, v));\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\tos.bm),\n\t\t\t\t\tA2(\n\t\t\t\t\t\telm$core$Maybe$map,\n\t\t\t\t\t\telm$core$List$map(\n\t\t\t\t\t\t\tfunction (v) {\n\t\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\t\telm$core$Result$withDefault,\n\t\t\t\t\t\t\t\t\t'',\n\t\t\t\t\t\t\t\t\tA2(elm$json$Json$Decode$decodeValue, elm$json$Json$Decode$string, v));\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\tos.w));\n\t\t\t} else {\n\t\t\t\treturn _Utils_Tuple2(elm$core$Maybe$Nothing, elm$core$Maybe$Nothing);\n\t\t\t}\n\t\t}();\n\t\tvar _enum = _n2.a;\n\t\tvar examples = _n2.b;\n\t\tvar baseAttributes = _Utils_ap(\n\t\t\t_List_fromArray(\n\t\t\t\t[\n\t\t\t\t\telm$html$Html$Attributes$class('jf-textfield__input'),\n\t\t\t\t\telm$html$Html$Attributes$value(editedValue),\n\t\t\t\t\telm$html$Html$Attributes$id(id),\n\t\t\t\t\telm$html$Html$Attributes$name(id),\n\t\t\t\t\telm$html$Html$Attributes$autocomplete(false),\n\t\t\t\t\telm$html$Html$Attributes$disabled(actuallyDisabled)\n\t\t\t\t]),\n\t\t\t((!_Utils_eq(_enum, elm$core$Maybe$Nothing)) || (!_Utils_eq(examples, elm$core$Maybe$Nothing))) ? _List_fromArray(\n\t\t\t\t[\n\t\t\t\t\telm$html$Html$Attributes$list(id + '_enum')\n\t\t\t\t]) : _List_Nil);\n\t\tvar textInput = function () {\n\t\t\tif (!multilineConfig.$) {\n\t\t\t\tvar mlConf = multilineConfig.a;\n\t\t\t\tvar paddings = model.V.bi ? (isOutlined ? (13 + 13) : (22 + 13)) : (20 + 17);\n\t\t\t\tvar rows = function () {\n\t\t\t\t\tvar _n7 = A2(elm$core$Dict$get, path, model.p);\n\t\t\t\t\tif (!_n7.$) {\n\t\t\t\t\t\tvar height = _n7.a;\n\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\telm$core$Basics$min,\n\t\t\t\t\t\t\telm$core$Basics$round((height - paddings) / 18),\n\t\t\t\t\t\t\tmlConf.aF);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn mlConf.aK;\n\t\t\t\t\t}\n\t\t\t\t}();\n\t\t\t\treturn isJson ? A2(\n\t\t\t\t\telm$html$Html$textarea,\n\t\t\t\t\tA2(\n\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$html$Html$Events$on,\n\t\t\t\t\t\t\t'input',\n\t\t\t\t\t\t\teditMultiline(\n\t\t\t\t\t\t\t\tauthor$project$Json$Form$Definitions$EditJson(path))),\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\t\telm$html$Html$Attributes$rows(rows),\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\t\t\telm$html$Html$Events$onFocus(\n\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\tauthor$project$Json$Form$Definitions$FocusFragileInput,\n\t\t\t\t\t\t\t\t\t\tfalse,\n\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Just(path))),\n\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\t\t\t\telm$html$Html$Events$onBlur(\n\t\t\t\t\t\t\t\t\t\tA2(author$project$Json$Form$Definitions$FocusFragileInput, false, elm$core$Maybe$Nothing)),\n\t\t\t\t\t\t\t\t\tbaseAttributes)))),\n\t\t\t\t\t_List_Nil) : A2(\n\t\t\t\t\telm$html$Html$textarea,\n\t\t\t\t\tA2(\n\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$html$Html$Events$on,\n\t\t\t\t\t\t\t'input',\n\t\t\t\t\t\t\teditMultiline(\n\t\t\t\t\t\t\t\tauthor$project$Json$Form$Definitions$EditMultiline(path))),\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\t\telm$html$Html$Attributes$rows(rows),\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\t\t\telm$html$Html$Events$onFocus(\n\t\t\t\t\t\t\t\t\tauthor$project$Json$Form$Definitions$FocusInput(\n\t\t\t\t\t\t\t\t\t\telm$core$Maybe$Just(path))),\n\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\telm$core$List$cons,\n\t\t\t\t\t\t\t\t\telm$html$Html$Events$onBlur(\n\t\t\t\t\t\t\t\t\t\tauthor$project$Json$Form$Definitions$FocusInput(elm$core$Maybe$Nothing)),\n\t\t\t\t\t\t\t\t\tbaseAttributes)))),\n\t\t\t\t\t_List_Nil);\n\t\t\t} else {\n\t\t\t\treturn A2(\n\t\t\t\t\telm$html$Html$input,\n\t\t\t\t\t_Utils_ap(\n\t\t\t\t\t\tbaseAttributes,\n\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t(isPassword && (!model.ab)) ? elm$html$Html$Attributes$type_('password') : elm$html$Html$Attributes$type_('text'),\n\t\t\t\t\t\t\t\telm$html$Html$Events$onInput(\n\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\telm$core$Basics$composeR,\n\t\t\t\t\t\t\t\t\tjson_tools$json_value$Json$Value$StringValue,\n\t\t\t\t\t\t\t\t\tauthor$project$Json$Form$Definitions$EditValue(path))),\n\t\t\t\t\t\t\t\telm$html$Html$Events$onFocus(\n\t\t\t\t\t\t\t\tauthor$project$Json$Form$Definitions$FocusInput(\n\t\t\t\t\t\t\t\t\telm$core$Maybe$Just(path))),\n\t\t\t\t\t\t\t\telm$html$Html$Events$onBlur(\n\t\t\t\t\t\t\t\tauthor$project$Json$Form$Definitions$FocusInput(elm$core$Maybe$Nothing))\n\t\t\t\t\t\t\t])),\n\t\t\t\t\t_List_Nil);\n\t\t\t}\n\t\t}();\n\t\treturn A2(\n\t\t\telm$html$Html$div,\n\t\t\t_List_fromArray(\n\t\t\t\t[\n\t\t\t\t\telm$html$Html$Attributes$classList(\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t_Utils_Tuple2('jf-element', true),\n\t\t\t\t\t\t\t_Utils_Tuple2('jf-element--hidden', hidden),\n\t\t\t\t\t\t\t_Utils_Tuple2('jf-element--invalid', hasError)\n\t\t\t\t\t\t]))\n\t\t\t\t]),\n\t\t\t_List_fromArray(\n\t\t\t\t[\n\t\t\t\t\tA2(\n\t\t\t\t\telm$html$Html$div,\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\telm$html$Html$Attributes$classList(\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-textfield', true),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-textfield--outlined', isOutlined),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-textfield--dense', model.V.bi),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t'jf-textfield--focused',\n\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\telm$core$Maybe$withDefault,\n\t\t\t\t\t\t\t\t\t\tfalse,\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$map,\n\t\t\t\t\t\t\t\t\t\t\telm$core$Basics$eq(path),\n\t\t\t\t\t\t\t\t\t\t\tmodel.g))),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-textfield--empty', editedValue === ''),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-textfield--invalid', hasError),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t'jf-textfield--has-icon',\n\t\t\t\t\t\t\t\t\t!_Utils_eq(icon, elm$core$Maybe$Nothing)),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-textfield--disabled', actuallyDisabled),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t\t\t'jf-textfield--multiline',\n\t\t\t\t\t\t\t\t\t!_Utils_eq(multilineConfig, elm$core$Maybe$Nothing)),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-textfield--json', isJson)\n\t\t\t\t\t\t\t\t]))\n\t\t\t\t\t\t]),\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$html$Html$label,\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$class('jf-textfield__label')\n\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\telm$html$Html$text(\n\t\t\t\t\t\t\t\t\tA2(author$project$JsonFormUtil$getTitle, isRequired, schema))\n\t\t\t\t\t\t\t\t])),\n\t\t\t\t\t\t\ttextInput,\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$core$Maybe$withDefault,\n\t\t\t\t\t\t\telm$html$Html$text(''),\n\t\t\t\t\t\t\ticon)\n\t\t\t\t\t\t])),\n\t\t\t\t\tA2(\n\t\t\t\t\telm$html$Html$div,\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\telm$html$Html$Attributes$class('jf-helper-text')\n\t\t\t\t\t\t]),\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t[helperText])),\n\t\t\t\t\tfunction () {\n\t\t\t\t\tif (!_enum.$) {\n\t\t\t\t\t\tvar listStrings = _enum.a;\n\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\telm$html$Html$datalist,\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$id(id + '_enum')\n\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\telm$core$List$map,\n\t\t\t\t\t\t\t\tfunction (s) {\n\t\t\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\t\t\telm$html$Html$option,\n\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$value(s)\n\t\t\t\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t\t\t\t_List_Nil);\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tlistStrings));\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (!examples.$) {\n\t\t\t\t\t\t\tvar listStrings = examples.a;\n\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\telm$html$Html$datalist,\n\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$id(id + '_enum')\n\t\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\telm$core$List$map,\n\t\t\t\t\t\t\t\t\tfunction (s) {\n\t\t\t\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\t\t\t\telm$html$Html$option,\n\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$value(s)\n\t\t\t\t\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t\t\t\t\t_List_Nil);\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tlistStrings));\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn elm$html$Html$text('');\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}()\n\t\t\t\t]));\n\t});\nvar author$project$Json$Form$Definitions$EditNumber = function (a) {\n\treturn {$: 5, a: a};\n};\nvar author$project$Json$Form$TextField$viewNumeric = F5(\n\tfunction (model, schema, isRequired, isDisabled, path) {\n\t\tvar uiSpec = author$project$JsonFormUtil$getUiSpec(schema);\n\t\tvar isFocused = A2(\n\t\t\telm$core$Maybe$withDefault,\n\t\t\tfalse,\n\t\t\tA2(\n\t\t\t\telm$core$Maybe$map,\n\t\t\t\telm$core$Basics$eq(path),\n\t\t\t\tmodel.g));\n\t\tvar id = A2(elm$core$String$join, '_', path);\n\t\tvar editedValue = isFocused ? model.o : A2(\n\t\t\telm$core$Maybe$withDefault,\n\t\t\t'',\n\t\t\tA2(\n\t\t\t\telm$core$Maybe$map,\n\t\t\t\tauthor$project$JsonFormUtil$jsonValueToString,\n\t\t\t\tA2(\n\t\t\t\t\telm$core$Maybe$andThen,\n\t\t\t\t\telm$core$Result$toMaybe,\n\t\t\t\t\tA2(\n\t\t\t\t\t\telm$core$Maybe$map,\n\t\t\t\t\t\tjson_tools$json_value$Json$Value$getIn(path),\n\t\t\t\t\t\tmodel.bN))));\n\t\tvar _n0 = A3(author$project$Json$Form$UiSpec$applyRule, model.bN, path, uiSpec.a4);\n\t\tvar disabled = _n0.a;\n\t\tvar hidden = _n0.b;\n\t\tvar actuallyDisabled = isDisabled || disabled;\n\t\tvar numericInput = A2(\n\t\t\telm$html$Html$input,\n\t\t\t_List_fromArray(\n\t\t\t\t[\n\t\t\t\t\telm$html$Html$Attributes$class('jf-textfield__input'),\n\t\t\t\t\telm$html$Html$Events$onFocus(\n\t\t\t\t\tA2(\n\t\t\t\t\t\tauthor$project$Json$Form$Definitions$FocusFragileInput,\n\t\t\t\t\t\ttrue,\n\t\t\t\t\t\telm$core$Maybe$Just(path))),\n\t\t\t\t\telm$html$Html$Events$onBlur(\n\t\t\t\t\tA2(author$project$Json$Form$Definitions$FocusFragileInput, true, elm$core$Maybe$Nothing)),\n\t\t\t\t\telm$html$Html$Events$onInput(author$project$Json$Form$Definitions$EditNumber),\n\t\t\t\t\telm$html$Html$Attributes$id(id),\n\t\t\t\t\telm$html$Html$Attributes$name(id),\n\t\t\t\t\telm$html$Html$Attributes$value(editedValue),\n\t\t\t\t\telm$html$Html$Attributes$type_('number'),\n\t\t\t\t\telm$html$Html$Attributes$disabled(actuallyDisabled)\n\t\t\t\t]),\n\t\t\t_List_Nil);\n\t\tvar _n1 = A3(author$project$Json$Form$Helper$view, model, schema, path);\n\t\tvar hasError = _n1.a;\n\t\tvar helperText = _n1.b;\n\t\tvar icon = hasError ? elm$core$Maybe$Just(author$project$Icons$errorIcon) : (((!isRequired) && ((editedValue !== '') && (!actuallyDisabled))) ? elm$core$Maybe$Just(\n\t\t\tauthor$project$Icons$deleteIcon(\n\t\t\t\tauthor$project$Json$Form$Definitions$DeleteProperty(path))) : elm$core$Maybe$Nothing);\n\t\treturn A2(\n\t\t\telm$html$Html$div,\n\t\t\t_List_fromArray(\n\t\t\t\t[\n\t\t\t\t\telm$html$Html$Attributes$classList(\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t_Utils_Tuple2('jf-element', true),\n\t\t\t\t\t\t\t_Utils_Tuple2('jf-element--hidden', hidden),\n\t\t\t\t\t\t\t_Utils_Tuple2('jf-element--invalid', hasError)\n\t\t\t\t\t\t]))\n\t\t\t\t]),\n\t\t\t_List_fromArray(\n\t\t\t\t[\n\t\t\t\t\tA2(\n\t\t\t\t\telm$html$Html$div,\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\telm$html$Html$Attributes$classList(\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-textfield', true),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-textfield--outlined', model.V.bK === 1),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-textfield--dense', model.V.bi),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-textfield--focused', isFocused),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-textfield--empty', editedValue === ''),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-textfield--invalid', hasError),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-textfield--has-icon', true),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-textfield--disabled', actuallyDisabled),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-textfield--hidden', hidden)\n\t\t\t\t\t\t\t\t]))\n\t\t\t\t\t\t]),\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$html$Html$label,\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$class('jf-textfield__label')\n\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\telm$html$Html$text(\n\t\t\t\t\t\t\t\t\tA2(author$project$JsonFormUtil$getTitle, isRequired, schema))\n\t\t\t\t\t\t\t\t])),\n\t\t\t\t\t\t\tnumericInput,\n\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\telm$core$Maybe$withDefault,\n\t\t\t\t\t\t\telm$html$Html$text(''),\n\t\t\t\t\t\t\ticon)\n\t\t\t\t\t\t])),\n\t\t\t\t\tA2(\n\t\t\t\t\telm$html$Html$div,\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\telm$html$Html$Attributes$class('jf-helper-text')\n\t\t\t\t\t\t]),\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t[helperText]))\n\t\t\t\t]));\n\t});\nvar elm$html$Html$button = _VirtualDom_node('button');\nvar elm$html$Html$Events$onClick = function (msg) {\n\treturn A2(\n\t\telm$html$Html$Events$on,\n\t\t'click',\n\t\telm$json$Json$Decode$succeed(msg));\n};\nvar author$project$Json$Form$viewArray = F5(\n\tfunction (model, schema, isRequired, isDisabled, path) {\n\t\tvar list = function (l) {\n\t\t\tif (l.$ === 1) {\n\t\t\t\tvar items = l.a;\n\t\t\t\treturn items;\n\t\t\t} else {\n\t\t\t\treturn _List_Nil;\n\t\t\t}\n\t\t}(\n\t\t\tA2(\n\t\t\t\telm$core$Result$withDefault,\n\t\t\t\tjson_tools$json_value$Json$Value$ArrayValue(_List_Nil),\n\t\t\t\tA2(\n\t\t\t\t\tjson_tools$json_value$Json$Value$getIn,\n\t\t\t\t\tpath,\n\t\t\t\t\tA2(elm$core$Maybe$withDefault, json_tools$json_value$Json$Value$NullValue, model.bN))));\n\t\tvar _n6 = A3(\n\t\t\tauthor$project$Json$Form$UiSpec$applyRule,\n\t\t\tmodel.bN,\n\t\t\tpath,\n\t\t\tauthor$project$JsonFormUtil$getUiSpec(schema).a4);\n\t\tvar disabled = _n6.a;\n\t\tvar hidden = _n6.b;\n\t\tif (hidden) {\n\t\t\treturn elm$html$Html$text('');\n\t\t} else {\n\t\t\tif (schema.$ === 1) {\n\t\t\t\tvar os = schema.a;\n\t\t\t\tvar _n8 = os.bw;\n\t\t\t\tif (_n8.$ === 1) {\n\t\t\t\t\tvar itemSchema = _n8.a;\n\t\t\t\t\treturn A2(\n\t\t\t\t\t\telm$html$Html$div,\n\t\t\t\t\t\t_List_Nil,\n\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\telm$html$Html$div,\n\t\t\t\t\t\t\t\t_List_Nil,\n\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\telm$core$List$indexedMap,\n\t\t\t\t\t\t\t\t\tF2(\n\t\t\t\t\t\t\t\t\t\tfunction (index, item) {\n\t\t\t\t\t\t\t\t\t\t\tvar propName = elm$core$String$fromInt(index);\n\t\t\t\t\t\t\t\t\t\t\tvar isRequiredLocal = function () {\n\t\t\t\t\t\t\t\t\t\t\t\tif (itemSchema.$ === 1) {\n\t\t\t\t\t\t\t\t\t\t\t\t\tvar itemSchemaObject = itemSchema.a;\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$List$member,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tpropName,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tA2(elm$core$Maybe$withDefault, _List_Nil, itemSchemaObject.a3));\n\t\t\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t}();\n\t\t\t\t\t\t\t\t\t\t\treturn A5(\n\t\t\t\t\t\t\t\t\t\t\t\tauthor$project$Json$Form$viewNode,\n\t\t\t\t\t\t\t\t\t\t\t\tmodel,\n\t\t\t\t\t\t\t\t\t\t\t\titemSchema,\n\t\t\t\t\t\t\t\t\t\t\t\tisRequiredLocal,\n\t\t\t\t\t\t\t\t\t\t\t\tisDisabled || disabled,\n\t\t\t\t\t\t\t\t\t\t\t\t_Utils_ap(\n\t\t\t\t\t\t\t\t\t\t\t\t\tpath,\n\t\t\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[propName])));\n\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\tlist)),\n\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\telm$html$Html$div,\n\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$class('array-item-add')\n\t\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\telm$html$Html$button,\n\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$class('button'),\n\t\t\t\t\t\t\t\t\t\t\t\telm$html$Html$Events$onClick(\n\t\t\t\t\t\t\t\t\t\t\t\tA3(\n\t\t\t\t\t\t\t\t\t\t\t\t\tauthor$project$Json$Form$Definitions$AddItem,\n\t\t\t\t\t\t\t\t\t\t\t\t\tpath,\n\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$List$length(list),\n\t\t\t\t\t\t\t\t\t\t\t\t\titemSchema))\n\t\t\t\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\telm$html$Html$text('ADD ITEM')\n\t\t\t\t\t\t\t\t\t\t\t]))\n\t\t\t\t\t\t\t\t\t]))\n\t\t\t\t\t\t\t]));\n\t\t\t\t} else {\n\t\t\t\t\treturn elm$html$Html$text('');\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\treturn elm$html$Html$text('');\n\t\t\t}\n\t\t}\n\t});\nvar author$project$Json$Form$viewNode = F5(\n\tfunction (model, schema, isRequired, isDisabled, path) {\n\t\treturn A2(\n\t\t\telm$html$Html$div,\n\t\t\t_List_fromArray(\n\t\t\t\t[\n\t\t\t\t\telm$html$Html$Attributes$class(\n\t\t\t\t\t'nesting-level-' + elm$core$String$fromInt(\n\t\t\t\t\t\telm$core$List$length(path)))\n\t\t\t\t]),\n\t\t\t_List_fromArray(\n\t\t\t\t[\n\t\t\t\t\tfunction () {\n\t\t\t\t\tvar _n5 = A2(author$project$Json$Form$editingMode, model, schema);\n\t\t\t\t\tswitch (_n5.$) {\n\t\t\t\t\t\tcase 0:\n\t\t\t\t\t\t\treturn A6(author$project$Json$Form$TextField$view, model, schema, false, isRequired, isDisabled, path);\n\t\t\t\t\t\tcase 4:\n\t\t\t\t\t\t\treturn A6(author$project$Json$Form$TextField$view, model, schema, true, isRequired, isDisabled, path);\n\t\t\t\t\t\tcase 1:\n\t\t\t\t\t\t\treturn A5(author$project$Json$Form$TextField$viewNumeric, model, schema, isRequired, isDisabled, path);\n\t\t\t\t\t\tcase 2:\n\t\t\t\t\t\t\treturn A5(author$project$Json$Form$Selection$switch, model, schema, isRequired, isDisabled, path);\n\t\t\t\t\t\tcase 3:\n\t\t\t\t\t\t\treturn A5(author$project$Json$Form$Selection$checkbox, model, schema, isRequired, isDisabled, path);\n\t\t\t\t\t\tcase 5:\n\t\t\t\t\t\t\tvar properties = _n5.a;\n\t\t\t\t\t\t\treturn A6(author$project$Json$Form$viewObject, model, schema, properties, isRequired, isDisabled, path);\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\treturn A5(author$project$Json$Form$viewArray, model, schema, isRequired, isDisabled, path);\n\t\t\t\t\t}\n\t\t\t\t}()\n\t\t\t\t]));\n\t});\nvar author$project$Json$Form$viewObject = F6(\n\tfunction (model, schema, properties, isRequired, isDisabled, path) {\n\t\tvar required = function () {\n\t\t\tif (schema.$ === 1) {\n\t\t\t\tvar os = schema.a;\n\t\t\t\treturn A2(elm$core$Maybe$withDefault, _List_Nil, os.a3);\n\t\t\t} else {\n\t\t\t\treturn _List_Nil;\n\t\t\t}\n\t\t}();\n\t\tvar key = elm$core$List$head(\n\t\t\telm$core$List$reverse(path));\n\t\tvar title = function () {\n\t\t\tvar _n3 = A2(author$project$JsonFormUtil$getTitle, isRequired, schema);\n\t\t\tif (_n3 === '') {\n\t\t\t\treturn A2(elm$core$Maybe$withDefault, '', key);\n\t\t\t} else {\n\t\t\t\tvar x = _n3;\n\t\t\t\treturn x;\n\t\t\t}\n\t\t}();\n\t\tvar isExpanded = A2(elm$core$Set$member, path, model.x);\n\t\tvar isExpandable = (model.V.bg || author$project$JsonFormUtil$getUiSpec(schema).bo) && (!_Utils_eq(path, _List_Nil));\n\t\tvar _n0 = A3(\n\t\t\tauthor$project$Json$Form$UiSpec$applyRule,\n\t\t\tmodel.bN,\n\t\t\tpath,\n\t\t\tauthor$project$JsonFormUtil$getUiSpec(schema).a4);\n\t\tvar disabled = _n0.a;\n\t\tvar hidden = _n0.b;\n\t\tvar iterateOverSchemata = function (_n2) {\n\t\t\tvar schemata = _n2;\n\t\t\treturn A2(\n\t\t\t\telm$core$List$map,\n\t\t\t\tfunction (_n1) {\n\t\t\t\t\tvar propName = _n1.a;\n\t\t\t\t\tvar subSchema = _n1.b;\n\t\t\t\t\treturn A5(\n\t\t\t\t\t\tauthor$project$Json$Form$viewNode,\n\t\t\t\t\t\tmodel,\n\t\t\t\t\t\tsubSchema,\n\t\t\t\t\t\tA2(elm$core$List$member, propName, required),\n\t\t\t\t\t\tisDisabled || disabled,\n\t\t\t\t\t\t_Utils_ap(\n\t\t\t\t\t\t\tpath,\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[propName])));\n\t\t\t\t},\n\t\t\t\tschemata);\n\t\t};\n\t\treturn hidden ? elm$html$Html$text('') : A2(\n\t\t\telm$html$Html$div,\n\t\t\t_List_fromArray(\n\t\t\t\t[\n\t\t\t\t\telm$html$Html$Attributes$class('jf-object')\n\t\t\t\t]),\n\t\t\t_List_fromArray(\n\t\t\t\t[\n\t\t\t\t\t(title !== '') ? A2(\n\t\t\t\t\telm$html$Html$div,\n\t\t\t\t\t_Utils_ap(\n\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\telm$html$Html$Attributes$classList(\n\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-heading', true),\n\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-heading--expandable', isExpandable),\n\t\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-heading--expanded', isExpandable && isExpanded)\n\t\t\t\t\t\t\t\t\t]))\n\t\t\t\t\t\t\t]),\n\t\t\t\t\t\tisExpandable ? _List_fromArray(\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\telm$html$Html$Events$onClick(\n\t\t\t\t\t\t\t\tauthor$project$Json$Form$Definitions$ToggleNode(path))\n\t\t\t\t\t\t\t]) : _List_Nil),\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\telm$html$Html$text(title)\n\t\t\t\t\t\t])) : elm$html$Html$text(''),\n\t\t\t\t\t(isExpanded || (!isExpandable)) ? A2(\n\t\t\t\t\telm$html$Html$div,\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\telm$html$Html$Attributes$classList(\n\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-section--expandable', isExpandable),\n\t\t\t\t\t\t\t\t\t_Utils_Tuple2('jf-section', true)\n\t\t\t\t\t\t\t\t]))\n\t\t\t\t\t\t]),\n\t\t\t\t\titerateOverSchemata(properties)) : elm$html$Html$text('')\n\t\t\t\t]));\n\t});\nvar author$project$Json$Form$view = function (model) {\n\treturn A2(\n\t\telm$html$Html$div,\n\t\t_List_Nil,\n\t\t_List_fromArray(\n\t\t\t[\n\t\t\t\tA5(author$project$Json$Form$viewNode, model, model.a5, false, false, _List_Nil)\n\t\t\t]));\n};\nvar elm$html$Html$h3 = _VirtualDom_node('h3');\nvar elm$virtual_dom$VirtualDom$map = _VirtualDom_map;\nvar elm$html$Html$map = elm$virtual_dom$VirtualDom$map;\nvar author$project$Demo$content = function (model) {\n\tvar viewExample = F2(\n\t\tfunction (index, _n0) {\n\t\t\tvar form = _n0.y;\n\t\t\tvar example = _n0.v;\n\t\t\treturn A2(\n\t\t\t\telm$html$Html$div,\n\t\t\t\t_List_fromArray(\n\t\t\t\t\t[\n\t\t\t\t\t\telm$html$Html$Attributes$class('example-section')\n\t\t\t\t\t]),\n\t\t\t\t_List_fromArray(\n\t\t\t\t\t[\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\telm$html$Html$h3,\n\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\telm$html$Html$Attributes$class('example-section__heading')\n\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\telm$html$Html$text(example.a8)\n\t\t\t\t\t\t\t])),\n\t\t\t\t\t\tA2(\n\t\t\t\t\t\telm$html$Html$div,\n\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\telm$html$Html$Attributes$class('example-section__content')\n\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\telm$html$Html$div,\n\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\tA2(elm$html$Html$Attributes$style, 'display', 'inline-block'),\n\t\t\t\t\t\t\t\t\t\tA2(elm$html$Html$Attributes$style, 'max-width', '350px'),\n\t\t\t\t\t\t\t\t\t\tA2(elm$html$Html$Attributes$style, 'min-width', '350px')\n\t\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\tauthor$project$Demo$cardWithTitle,\n\t\t\t\t\t\t\t\t\t\t'Form',\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\telm$html$Html$div,\n\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\tA2(elm$html$Html$Attributes$style, 'padding', '10px'),\n\t\t\t\t\t\t\t\t\t\t\t\t\tA2(elm$html$Html$Attributes$style, 'background', 'var(--form-background)')\n\t\t\t\t\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\t\telm$html$Html$map,\n\t\t\t\t\t\t\t\t\t\t\t\t\tauthor$project$Demo$JsonFormMsg(index),\n\t\t\t\t\t\t\t\t\t\t\t\t\tauthor$project$Json$Form$view(form))\n\t\t\t\t\t\t\t\t\t\t\t\t]))),\n\t\t\t\t\t\t\t\t\t\tfunction (x) {\n\t\t\t\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\t\t\t\telm$html$Html$div,\n\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\tA2(elm$html$Html$Attributes$style, 'margin-top', '20px')\n\t\t\t\t\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t[x]));\n\t\t\t\t\t\t\t\t\t}(\n\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\tauthor$project$Demo$cardWithTitle,\n\t\t\t\t\t\t\t\t\t\t\t'Data',\n\t\t\t\t\t\t\t\t\t\t\tfunction (x) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn A2(\n\t\t\t\t\t\t\t\t\t\t\t\t\telm$html$Html$div,\n\t\t\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telm$html$Html$Attributes$class('json-view')\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[x]));\n\t\t\t\t\t\t\t\t\t\t\t}(\n\t\t\t\t\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\t\t\t\t\t\telm$core$Maybe$withDefault,\n\t\t\t\t\t\t\t\t\t\t\t\t\telm$html$Html$text(' '),\n\t\t\t\t\t\t\t\t\t\t\t\t\tA2(elm$core$Maybe$map, author$project$Demo$viewValue, form.bN)))))\n\t\t\t\t\t\t\t\t\t])),\n\t\t\t\t\t\t\t\tA2(\n\t\t\t\t\t\t\t\telm$html$Html$div,\n\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\tA2(elm$html$Html$Attributes$style, 'width', '100%'),\n\t\t\t\t\t\t\t\t\t\tA2(elm$html$Html$Attributes$style, 'min-width', '300px')\n\t\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\tauthor$project$Demo$viewSchema(example.a5)\n\t\t\t\t\t\t\t\t\t]))\n\t\t\t\t\t\t\t]))\n\t\t\t\t\t]));\n\t\t});\n\treturn A2(\n\t\telm$html$Html$div,\n\t\t_List_fromArray(\n\t\t\t[\n\t\t\t\telm$html$Html$Attributes$class('app-content')\n\t\t\t]),\n\t\t_List_fromArray(\n\t\t\t[\n\t\t\t\tA2(\n\t\t\t\telm$html$Html$div,\n\t\t\t\t_List_Nil,\n\t\t\t\tA2(elm$core$List$indexedMap, viewExample, model.w))\n\t\t\t]));\n};\nvar author$project$Showcase$getShowcaseId = function (s) {\n\tswitch (s) {\n\t\tcase 0:\n\t\t\treturn 'types';\n\t\tcase 1:\n\t\t\treturn 'rules';\n\t\tcase 2:\n\t\t\treturn 'validation';\n\t\tdefault:\n\t\t\treturn 'form';\n\t}\n};\nvar author$project$Route$routeToString = function (page) {\n\tvar pieces = function () {\n\t\tvar sc = page;\n\t\treturn _List_fromArray(\n\t\t\t[\n\t\t\t\t'showcase',\n\t\t\t\tauthor$project$Showcase$getShowcaseId(sc)\n\t\t\t]);\n\t}();\n\treturn '/json-form/' + A2(elm$core$String$join, '/', pieces);\n};\nvar elm$html$Html$Attributes$href = function (url) {\n\treturn A2(\n\t\telm$html$Html$Attributes$stringProperty,\n\t\t'href',\n\t\t_VirtualDom_noJavaScriptUri(url));\n};\nvar author$project$Route$href = A2(elm$core$Basics$composeR, author$project$Route$routeToString, elm$html$Html$Attributes$href);\nvar author$project$Showcase$getShowcaseTitle = function (ds) {\n\tswitch (ds) {\n\t\tcase 0:\n\t\t\treturn 'Types';\n\t\tcase 1:\n\t\t\treturn 'Rules';\n\t\tcase 2:\n\t\t\treturn 'Validation';\n\t\tdefault:\n\t\t\treturn 'Form Layout';\n\t}\n};\nvar elm$html$Html$a = _VirtualDom_node('a');\nvar author$project$Demo$snippetTab = F2(\n\tfunction (activeShowcase, showcase) {\n\t\treturn A2(\n\t\t\telm$html$Html$a,\n\t\t\t_List_fromArray(\n\t\t\t\t[\n\t\t\t\t\telm$html$Html$Attributes$classList(\n\t\t\t\t\t_List_fromArray(\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t_Utils_Tuple2('tab', true),\n\t\t\t\t\t\t\t_Utils_Tuple2(\n\t\t\t\t\t\t\t'tab--active',\n\t\t\t\t\t\t\t_Utils_eq(showcase, activeShowcase))\n\t\t\t\t\t\t])),\n\t\t\t\t\tauthor$project$Route$href(showcase)\n\t\t\t\t]),\n\t\t\t_List_fromArray(\n\t\t\t\t[\n\t\t\t\t\telm$html$Html$text(\n\t\t\t\t\tauthor$project$Showcase$getShowcaseTitle(showcase))\n\t\t\t\t]));\n\t});\nvar author$project$Showcase$index = _List_fromArray(\n\t[0, 1, 2, 3]);\nvar author$project$Demo$topbar = function (model) {\n\treturn A2(\n\t\telm$html$Html$div,\n\t\t_List_fromArray(\n\t\t\t[\n\t\t\t\telm$html$Html$Attributes$class('app-topbar')\n\t\t\t]),\n\t\tA2(\n\t\t\telm$core$List$map,\n\t\t\tauthor$project$Demo$snippetTab(model.R),\n\t\t\tauthor$project$Showcase$index));\n};\nvar author$project$Demo$view = function (model) {\n\treturn {\n\t\tbe: _List_fromArray(\n\t\t\t[\n\t\t\t\tauthor$project$Demo$topbar(model),\n\t\t\t\tauthor$project$Demo$content(model)\n\t\t\t]),\n\t\ta8: 'Json Form Demo'\n\t};\n};\nvar elm$browser$Browser$application = _Browser_application;\nvar elm$core$Platform$Sub$batch = _Platform_batch;\nvar elm$core$Platform$Sub$none = elm$core$Platform$Sub$batch(_List_Nil);\nvar author$project$Main$main = elm$browser$Browser$application(\n\t{\n\t\tbv: author$project$Demo$init,\n\t\tbB: A2(elm$core$Basics$composeR, author$project$Route$fromLocation, author$project$Demo$SetRoute),\n\t\tbC: author$project$Demo$UrlRequested,\n\t\tbJ: function (_n0) {\n\t\t\treturn elm$core$Platform$Sub$none;\n\t\t},\n\t\tbL: author$project$Demo$update,\n\t\tbO: author$project$Demo$view\n\t});\n_Platform_export({'Main':{'init':author$project$Main$main(elm$json$Json$Decode$value)(0)}});}(this));","// In production, we register a service worker to serve assets from local cache.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on the \"N+1\" visit to a page, since previously\n// cached resources are updated in the background.\n\n// To learn more about the benefits of this model, read https://goo.gl/KwvDNy.\n// This link also includes instructions on opting out of this behavior.\n\nconst isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n // [::1] is the IPv6 localhost address.\n window.location.hostname === '[::1]' ||\n // 127.0.0.1/8 is considered localhost for IPv4.\n window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n);\n\nexport default function register() {\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\n // The URL constructor is available in all browsers that support SW.\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location);\n if (publicUrl.origin !== window.location.origin) {\n // Our service worker won't work if PUBLIC_URL is on a different origin\n // from what our page is served on. This might happen if a CDN is used to\n // serve assets; see https://github.com/facebookincubator/create-react-app/issues/2374\n return;\n }\n\n window.addEventListener('load', () => {\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\n\n if (!isLocalhost) {\n // Is not local host. Just register service worker\n registerValidSW(swUrl);\n } else {\n // This is running on localhost. Lets check if a service worker still exists or not.\n checkValidServiceWorker(swUrl);\n }\n });\n }\n}\n\nfunction registerValidSW(swUrl) {\n navigator.serviceWorker\n .register(swUrl)\n .then(registration => {\n registration.onupdatefound = () => {\n const installingWorker = registration.installing;\n installingWorker.onstatechange = () => {\n if (installingWorker.state === 'installed') {\n if (navigator.serviceWorker.controller) {\n // At this point, the old content will have been purged and\n // the fresh content will have been added to the cache.\n // It's the perfect time to display a \"New content is\n // available; please refresh.\" message in your web app.\n console.log('New content is available; please refresh.');\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a\n // \"Content is cached for offline use.\" message.\n console.log('Content is cached for offline use.');\n }\n }\n };\n };\n })\n .catch(error => {\n console.error('Error during service worker registration:', error);\n });\n}\n\nfunction checkValidServiceWorker(swUrl) {\n // Check if the service worker can be found. If it can't reload the page.\n fetch(swUrl)\n .then(response => {\n // Ensure service worker exists, and that we really are getting a JS file.\n if (\n response.status === 404 ||\n response.headers.get('content-type').indexOf('javascript') === -1\n ) {\n // No service worker found. Probably a different app. Reload the page.\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister().then(() => {\n window.location.reload();\n });\n });\n } else {\n // Service worker found. Proceed as normal.\n registerValidSW(swUrl);\n }\n })\n .catch(() => {\n console.log(\n 'No internet connection found. App is running in offline mode.'\n );\n });\n}\n\nexport function unregister() {\n if ('serviceWorker' in navigator) {\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister();\n });\n }\n}\n","'use strict';\n\nrequire('../stylesheets/index.css');\n\nimport registerServiceWorker from './registerServiceWorker';\n\nregisterServiceWorker();\n\nconst Elm = require('./Main');\n\nElm.Elm.Main.init({ node: document.body });\n"],"sourceRoot":""} \ No newline at end of file diff --git a/static/js/runtime~main.426f939b.js b/static/js/runtime~main.426f939b.js new file mode 100644 index 0000000..e1aa2f7 --- /dev/null +++ b/static/js/runtime~main.426f939b.js @@ -0,0 +1,2 @@ +!function(e){function r(r){for(var t,f,i=r[0],l=r[1],a=r[2],c=0,s=[];cs){for(var e=0,r=o.length-i;e-1};c.prototype.append=function(t,e){t=u(t),e=a(e);var r=this.map[t];this.map[t]=r?r+","+e:e},c.prototype.delete=function(t){delete this.map[u(t)]},c.prototype.get=function(t){return t=u(t),this.has(t)?this.map[t]:null},c.prototype.has=function(t){return this.map.hasOwnProperty(u(t))},c.prototype.set=function(t,e){this.map[u(t)]=a(e)},c.prototype.forEach=function(t,e){for(var r in this.map)this.map.hasOwnProperty(r)&&t.call(e,this.map[r],r,this)},c.prototype.keys=function(){var t=[];return this.forEach(function(e,r){t.push(r)}),f(t)},c.prototype.values=function(){var t=[];return this.forEach(function(e){t.push(e)}),f(t)},c.prototype.entries=function(){var t=[];return this.forEach(function(e,r){t.push([r,e])}),f(t)},e.iterable&&(c.prototype[Symbol.iterator]=c.prototype.entries);var i=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];b.prototype.clone=function(){return new b(this,{body:this._bodyInit})},p.call(b.prototype),p.call(_.prototype),_.prototype.clone=function(){return new _(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new c(this.headers),url:this.url})},_.error=function(){var t=new _(null,{status:0,statusText:""});return t.type="error",t};var s=[301,302,303,307,308];_.redirect=function(t,e){if(-1===s.indexOf(e))throw new RangeError("Invalid status code");return new _(null,{status:e,headers:{location:t}})},t.Headers=c,t.Request=b,t.Response=_,t.fetch=function(t,r){return new Promise(function(n,o){var i=new b(t,r),s=new XMLHttpRequest;s.onload=function(){var t,e,r={status:s.status,statusText:s.statusText,headers:(t=s.getAllResponseHeaders()||"",e=new c,t.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach(function(t){var r=t.split(":"),n=r.shift().trim();if(n){var o=r.join(":").trim();e.append(n,o)}}),e)};r.url="responseURL"in s?s.responseURL:r.headers.get("X-Request-URL"),n(new _("response"in s?s.response:s.responseText,r))},s.onerror=function(){o(new TypeError("Network request failed"))},s.ontimeout=function(){o(new TypeError("Network request failed"))},s.open(i.method,i.url,!0),"include"===i.credentials?s.withCredentials=!0:"omit"===i.credentials&&(s.withCredentials=!1),"responseType"in s&&e.blob&&(s.responseType="blob"),i.headers.forEach(function(t,e){s.setRequestHeader(e,t)}),s.send("undefined"===typeof i._bodyInit?null:i._bodyInit)})},t.fetch.polyfill=!0}function u(t){if("string"!==typeof t&&(t+=""),/[^a-z0-9\-#$%&'*+.\^_`|~]/i.test(t))throw new TypeError("Invalid character in header field name");return t.toLowerCase()}function a(t){return"string"!==typeof t&&(t+=""),t}function f(t){var r={next:function(){var e=t.shift();return{done:void 0===e,value:e}}};return e.iterable&&(r[Symbol.iterator]=function(){return r}),r}function c(t){this.map={},t instanceof c?t.forEach(function(t,e){this.append(e,t)},this):Array.isArray(t)?t.forEach(function(t){this.append(t[0],t[1])},this):t&&Object.getOwnPropertyNames(t).forEach(function(e){this.append(e,t[e])},this)}function l(t){if(t.bodyUsed)return Promise.reject(new TypeError("Already read"));t.bodyUsed=!0}function h(t){return new Promise(function(e,r){t.onload=function(){e(t.result)},t.onerror=function(){r(t.error)}})}function d(t){var e=new FileReader,r=h(e);return e.readAsArrayBuffer(t),r}function y(t){if(t.slice)return t.slice(0);var e=new Uint8Array(t.byteLength);return e.set(new Uint8Array(t)),e.buffer}function p(){return this.bodyUsed=!1,this._initBody=function(t){if(this._bodyInit=t,t)if("string"===typeof t)this._bodyText=t;else if(e.blob&&Blob.prototype.isPrototypeOf(t))this._bodyBlob=t;else if(e.formData&&FormData.prototype.isPrototypeOf(t))this._bodyFormData=t;else if(e.searchParams&&URLSearchParams.prototype.isPrototypeOf(t))this._bodyText=""+t;else if(e.arrayBuffer&&e.blob&&n(t))this._bodyArrayBuffer=y(t.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer]);else{if(!e.arrayBuffer||!ArrayBuffer.prototype.isPrototypeOf(t)&&!o(t))throw Error("unsupported BodyInit type");this._bodyArrayBuffer=y(t)}else this._bodyText="";this.headers.get("content-type")||("string"===typeof t?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):e.searchParams&&URLSearchParams.prototype.isPrototypeOf(t)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},e.blob&&(this.blob=function(){var t=l(this);if(t)return t;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?l(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(d)}),this.text=function(){var t,e,r,n=l(this);if(n)return n;if(this._bodyBlob)return t=this._bodyBlob,r=h(e=new FileReader),e.readAsText(t),r;if(this._bodyArrayBuffer)return Promise.resolve(function(t){for(var e=new Uint8Array(t),r=Array(e.length),n=0;n-1?n:r),this.mode=e.mode||this.mode||null,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&o)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(o)}function m(t){var e=new FormData;return t.trim().split("&").forEach(function(t){if(t){var r=t.split("="),n=r.shift().replace(/\+/g," "),o=r.join("=").replace(/\+/g," ");e.append(decodeURIComponent(n),decodeURIComponent(o))}}),e}function _(t,e){e||(e={}),this.type="default",this.status=void 0===e.status?200:e.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in e?e.statusText:"OK",this.headers=new c(e.headers),this.url=e.url||"",this._initBody(t)}}("undefined"!==typeof self?self:this)},function(t){"use strict";var e=Object.getOwnPropertySymbols,r=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable;t.exports=function(){try{if(!Object.assign)return!1;var t=new String("abc");if(t[5]="de","5"===Object.getOwnPropertyNames(t)[0])return!1;for(var e={},r=0;r<10;r++)e["_"+String.fromCharCode(r)]=r;if("0123456789"!==Object.getOwnPropertyNames(e).map(function(t){return e[t]}).join(""))return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach(function(t){n[t]=t}),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},n)).join("")}catch(t){return!1}}()?Object.assign:function(t){for(var o,i,s=function(t){if(null===t||void 0===t)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}(t),u=1;u capacity) {\n // Manually shift all values starting at the index back to the\n // beginning of the queue.\n for (var scan = 0, newLength = queue.length - index; scan < newLength; scan++) {\n queue[scan] = queue[scan + index];\n }\n queue.length -= index;\n index = 0;\n }\n }\n queue.length = 0;\n index = 0;\n flushing = false;\n}\n\n// `requestFlush` is implemented using a strategy based on data collected from\n// every available SauceLabs Selenium web driver worker at time of writing.\n// https://docs.google.com/spreadsheets/d/1mG-5UYGup5qxGdEMWkhP6BWCz053NUb2E1QoUTU16uA/edit#gid=783724593\n\n// Safari 6 and 6.1 for desktop, iPad, and iPhone are the only browsers that\n// have WebKitMutationObserver but not un-prefixed MutationObserver.\n// Must use `global` or `self` instead of `window` to work in both frames and web\n// workers. `global` is a provision of Browserify, Mr, Mrs, or Mop.\n\n/* globals self */\nvar scope = typeof global !== \"undefined\" ? global : self;\nvar BrowserMutationObserver = scope.MutationObserver || scope.WebKitMutationObserver;\n\n// MutationObservers are desirable because they have high priority and work\n// reliably everywhere they are implemented.\n// They are implemented in all modern browsers.\n//\n// - Android 4-4.3\n// - Chrome 26-34\n// - Firefox 14-29\n// - Internet Explorer 11\n// - iPad Safari 6-7.1\n// - iPhone Safari 7-7.1\n// - Safari 6-7\nif (typeof BrowserMutationObserver === \"function\") {\n requestFlush = makeRequestCallFromMutationObserver(flush);\n\n// MessageChannels are desirable because they give direct access to the HTML\n// task queue, are implemented in Internet Explorer 10, Safari 5.0-1, and Opera\n// 11-12, and in web workers in many engines.\n// Although message channels yield to any queued rendering and IO tasks, they\n// would be better than imposing the 4ms delay of timers.\n// However, they do not work reliably in Internet Explorer or Safari.\n\n// Internet Explorer 10 is the only browser that has setImmediate but does\n// not have MutationObservers.\n// Although setImmediate yields to the browser's renderer, it would be\n// preferrable to falling back to setTimeout since it does not have\n// the minimum 4ms penalty.\n// Unfortunately there appears to be a bug in Internet Explorer 10 Mobile (and\n// Desktop to a lesser extent) that renders both setImmediate and\n// MessageChannel useless for the purposes of ASAP.\n// https://github.com/kriskowal/q/issues/396\n\n// Timers are implemented universally.\n// We fall back to timers in workers in most engines, and in foreground\n// contexts in the following browsers.\n// However, note that even this simple case requires nuances to operate in a\n// broad spectrum of browsers.\n//\n// - Firefox 3-13\n// - Internet Explorer 6-9\n// - iPad Safari 4.3\n// - Lynx 2.8.7\n} else {\n requestFlush = makeRequestCallFromTimer(flush);\n}\n\n// `requestFlush` requests that the high priority event queue be flushed as\n// soon as possible.\n// This is useful to prevent an error thrown in a task from stalling the event\n// queue if the exception handled by Node.js’s\n// `process.on(\"uncaughtException\")` or by a domain.\nrawAsap.requestFlush = requestFlush;\n\n// To request a high priority event, we induce a mutation observer by toggling\n// the text of a text node between \"1\" and \"-1\".\nfunction makeRequestCallFromMutationObserver(callback) {\n var toggle = 1;\n var observer = new BrowserMutationObserver(callback);\n var node = document.createTextNode(\"\");\n observer.observe(node, {characterData: true});\n return function requestCall() {\n toggle = -toggle;\n node.data = toggle;\n };\n}\n\n// The message channel technique was discovered by Malte Ubl and was the\n// original foundation for this library.\n// http://www.nonblocking.io/2011/06/windownexttick.html\n\n// Safari 6.0.5 (at least) intermittently fails to create message ports on a\n// page's first load. Thankfully, this version of Safari supports\n// MutationObservers, so we don't need to fall back in that case.\n\n// function makeRequestCallFromMessageChannel(callback) {\n// var channel = new MessageChannel();\n// channel.port1.onmessage = callback;\n// return function requestCall() {\n// channel.port2.postMessage(0);\n// };\n// }\n\n// For reasons explained above, we are also unable to use `setImmediate`\n// under any circumstances.\n// Even if we were, there is another bug in Internet Explorer 10.\n// It is not sufficient to assign `setImmediate` to `requestFlush` because\n// `setImmediate` must be called *by name* and therefore must be wrapped in a\n// closure.\n// Never forget.\n\n// function makeRequestCallFromSetImmediate(callback) {\n// return function requestCall() {\n// setImmediate(callback);\n// };\n// }\n\n// Safari 6.0 has a problem where timers will get lost while the user is\n// scrolling. This problem does not impact ASAP because Safari 6.0 supports\n// mutation observers, so that implementation is used instead.\n// However, if we ever elect to use timers in Safari, the prevalent work-around\n// is to add a scroll event listener that calls for a flush.\n\n// `setTimeout` does not call the passed callback if the delay is less than\n// approximately 7 in web workers in Firefox 8 through 18, and sometimes not\n// even then.\n\nfunction makeRequestCallFromTimer(callback) {\n return function requestCall() {\n // We dispatch a timeout with a specified delay of 0 for engines that\n // can reliably accommodate that request. This will usually be snapped\n // to a 4 milisecond delay, but once we're flushing, there's no delay\n // between events.\n var timeoutHandle = setTimeout(handleTimer, 0);\n // However, since this timer gets frequently dropped in Firefox\n // workers, we enlist an interval handle that will try to fire\n // an event 20 times per second until it succeeds.\n var intervalHandle = setInterval(handleTimer, 50);\n\n function handleTimer() {\n // Whichever timer succeeds will cancel both timers and\n // execute the callback.\n clearTimeout(timeoutHandle);\n clearInterval(intervalHandle);\n callback();\n }\n };\n}\n\n// This is for `asap.js` only.\n// Its name will be periodically randomized to break any code that depends on\n// its existence.\nrawAsap.makeRequestCallFromTimer = makeRequestCallFromTimer;\n\n// ASAP was originally a nextTick shim included in Q. This was factored out\n// into this ASAP package. It was later adapted to RSVP which made further\n// amendments. These decisions, particularly to marginalize MessageChannel and\n// to capture the MutationObserver implementation in a closure, were integrated\n// back into ASAP proper.\n// https://github.com/tildeio/rsvp.js/blob/cddf7232546a9cf858524b75cde6f9edf72620a7/lib/rsvp/asap.js\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","'use strict';\n\n//This file contains the ES6 extensions to the core Promises/A+ API\n\nvar Promise = require('./core.js');\n\nmodule.exports = Promise;\n\n/* Static Functions */\n\nvar TRUE = valuePromise(true);\nvar FALSE = valuePromise(false);\nvar NULL = valuePromise(null);\nvar UNDEFINED = valuePromise(undefined);\nvar ZERO = valuePromise(0);\nvar EMPTYSTRING = valuePromise('');\n\nfunction valuePromise(value) {\n var p = new Promise(Promise._44);\n p._83 = 1;\n p._18 = value;\n return p;\n}\nPromise.resolve = function (value) {\n if (value instanceof Promise) return value;\n\n if (value === null) return NULL;\n if (value === undefined) return UNDEFINED;\n if (value === true) return TRUE;\n if (value === false) return FALSE;\n if (value === 0) return ZERO;\n if (value === '') return EMPTYSTRING;\n\n if (typeof value === 'object' || typeof value === 'function') {\n try {\n var then = value.then;\n if (typeof then === 'function') {\n return new Promise(then.bind(value));\n }\n } catch (ex) {\n return new Promise(function (resolve, reject) {\n reject(ex);\n });\n }\n }\n return valuePromise(value);\n};\n\nPromise.all = function (arr) {\n var args = Array.prototype.slice.call(arr);\n\n return new Promise(function (resolve, reject) {\n if (args.length === 0) return resolve([]);\n var remaining = args.length;\n function res(i, val) {\n if (val && (typeof val === 'object' || typeof val === 'function')) {\n if (val instanceof Promise && val.then === Promise.prototype.then) {\n while (val._83 === 3) {\n val = val._18;\n }\n if (val._83 === 1) return res(i, val._18);\n if (val._83 === 2) reject(val._18);\n val.then(function (val) {\n res(i, val);\n }, reject);\n return;\n } else {\n var then = val.then;\n if (typeof then === 'function') {\n var p = new Promise(then.bind(val));\n p.then(function (val) {\n res(i, val);\n }, reject);\n return;\n }\n }\n }\n args[i] = val;\n if (--remaining === 0) {\n resolve(args);\n }\n }\n for (var i = 0; i < args.length; i++) {\n res(i, args[i]);\n }\n });\n};\n\nPromise.reject = function (value) {\n return new Promise(function (resolve, reject) {\n reject(value);\n });\n};\n\nPromise.race = function (values) {\n return new Promise(function (resolve, reject) {\n values.forEach(function(value){\n Promise.resolve(value).then(resolve, reject);\n });\n });\n};\n\n/* Prototype Methods */\n\nPromise.prototype['catch'] = function (onRejected) {\n return this.then(null, onRejected);\n};\n","(function(self) {\n 'use strict';\n\n if (self.fetch) {\n return\n }\n\n var support = {\n searchParams: 'URLSearchParams' in self,\n iterable: 'Symbol' in self && 'iterator' in Symbol,\n blob: 'FileReader' in self && 'Blob' in self && (function() {\n try {\n new Blob()\n return true\n } catch(e) {\n return false\n }\n })(),\n formData: 'FormData' in self,\n arrayBuffer: 'ArrayBuffer' in self\n }\n\n if (support.arrayBuffer) {\n var viewClasses = [\n '[object Int8Array]',\n '[object Uint8Array]',\n '[object Uint8ClampedArray]',\n '[object Int16Array]',\n '[object Uint16Array]',\n '[object Int32Array]',\n '[object Uint32Array]',\n '[object Float32Array]',\n '[object Float64Array]'\n ]\n\n var isDataView = function(obj) {\n return obj && DataView.prototype.isPrototypeOf(obj)\n }\n\n var isArrayBufferView = ArrayBuffer.isView || function(obj) {\n return obj && viewClasses.indexOf(Object.prototype.toString.call(obj)) > -1\n }\n }\n\n function normalizeName(name) {\n if (typeof name !== 'string') {\n name = String(name)\n }\n if (/[^a-z0-9\\-#$%&'*+.\\^_`|~]/i.test(name)) {\n throw new TypeError('Invalid character in header field name')\n }\n return name.toLowerCase()\n }\n\n function normalizeValue(value) {\n if (typeof value !== 'string') {\n value = String(value)\n }\n return value\n }\n\n // Build a destructive iterator for the value list\n function iteratorFor(items) {\n var iterator = {\n next: function() {\n var value = items.shift()\n return {done: value === undefined, value: value}\n }\n }\n\n if (support.iterable) {\n iterator[Symbol.iterator] = function() {\n return iterator\n }\n }\n\n return iterator\n }\n\n function Headers(headers) {\n this.map = {}\n\n if (headers instanceof Headers) {\n headers.forEach(function(value, name) {\n this.append(name, value)\n }, this)\n } else if (Array.isArray(headers)) {\n headers.forEach(function(header) {\n this.append(header[0], header[1])\n }, this)\n } else if (headers) {\n Object.getOwnPropertyNames(headers).forEach(function(name) {\n this.append(name, headers[name])\n }, this)\n }\n }\n\n Headers.prototype.append = function(name, value) {\n name = normalizeName(name)\n value = normalizeValue(value)\n var oldValue = this.map[name]\n this.map[name] = oldValue ? oldValue+','+value : value\n }\n\n Headers.prototype['delete'] = function(name) {\n delete this.map[normalizeName(name)]\n }\n\n Headers.prototype.get = function(name) {\n name = normalizeName(name)\n return this.has(name) ? this.map[name] : null\n }\n\n Headers.prototype.has = function(name) {\n return this.map.hasOwnProperty(normalizeName(name))\n }\n\n Headers.prototype.set = function(name, value) {\n this.map[normalizeName(name)] = normalizeValue(value)\n }\n\n Headers.prototype.forEach = function(callback, thisArg) {\n for (var name in this.map) {\n if (this.map.hasOwnProperty(name)) {\n callback.call(thisArg, this.map[name], name, this)\n }\n }\n }\n\n Headers.prototype.keys = function() {\n var items = []\n this.forEach(function(value, name) { items.push(name) })\n return iteratorFor(items)\n }\n\n Headers.prototype.values = function() {\n var items = []\n this.forEach(function(value) { items.push(value) })\n return iteratorFor(items)\n }\n\n Headers.prototype.entries = function() {\n var items = []\n this.forEach(function(value, name) { items.push([name, value]) })\n return iteratorFor(items)\n }\n\n if (support.iterable) {\n Headers.prototype[Symbol.iterator] = Headers.prototype.entries\n }\n\n function consumed(body) {\n if (body.bodyUsed) {\n return Promise.reject(new TypeError('Already read'))\n }\n body.bodyUsed = true\n }\n\n function fileReaderReady(reader) {\n return new Promise(function(resolve, reject) {\n reader.onload = function() {\n resolve(reader.result)\n }\n reader.onerror = function() {\n reject(reader.error)\n }\n })\n }\n\n function readBlobAsArrayBuffer(blob) {\n var reader = new FileReader()\n var promise = fileReaderReady(reader)\n reader.readAsArrayBuffer(blob)\n return promise\n }\n\n function readBlobAsText(blob) {\n var reader = new FileReader()\n var promise = fileReaderReady(reader)\n reader.readAsText(blob)\n return promise\n }\n\n function readArrayBufferAsText(buf) {\n var view = new Uint8Array(buf)\n var chars = new Array(view.length)\n\n for (var i = 0; i < view.length; i++) {\n chars[i] = String.fromCharCode(view[i])\n }\n return chars.join('')\n }\n\n function bufferClone(buf) {\n if (buf.slice) {\n return buf.slice(0)\n } else {\n var view = new Uint8Array(buf.byteLength)\n view.set(new Uint8Array(buf))\n return view.buffer\n }\n }\n\n function Body() {\n this.bodyUsed = false\n\n this._initBody = function(body) {\n this._bodyInit = body\n if (!body) {\n this._bodyText = ''\n } else if (typeof body === 'string') {\n this._bodyText = body\n } else if (support.blob && Blob.prototype.isPrototypeOf(body)) {\n this._bodyBlob = body\n } else if (support.formData && FormData.prototype.isPrototypeOf(body)) {\n this._bodyFormData = body\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this._bodyText = body.toString()\n } else if (support.arrayBuffer && support.blob && isDataView(body)) {\n this._bodyArrayBuffer = bufferClone(body.buffer)\n // IE 10-11 can't handle a DataView body.\n this._bodyInit = new Blob([this._bodyArrayBuffer])\n } else if (support.arrayBuffer && (ArrayBuffer.prototype.isPrototypeOf(body) || isArrayBufferView(body))) {\n this._bodyArrayBuffer = bufferClone(body)\n } else {\n throw new Error('unsupported BodyInit type')\n }\n\n if (!this.headers.get('content-type')) {\n if (typeof body === 'string') {\n this.headers.set('content-type', 'text/plain;charset=UTF-8')\n } else if (this._bodyBlob && this._bodyBlob.type) {\n this.headers.set('content-type', this._bodyBlob.type)\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this.headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8')\n }\n }\n }\n\n if (support.blob) {\n this.blob = function() {\n var rejected = consumed(this)\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return Promise.resolve(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(new Blob([this._bodyArrayBuffer]))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as blob')\n } else {\n return Promise.resolve(new Blob([this._bodyText]))\n }\n }\n\n this.arrayBuffer = function() {\n if (this._bodyArrayBuffer) {\n return consumed(this) || Promise.resolve(this._bodyArrayBuffer)\n } else {\n return this.blob().then(readBlobAsArrayBuffer)\n }\n }\n }\n\n this.text = function() {\n var rejected = consumed(this)\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return readBlobAsText(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(readArrayBufferAsText(this._bodyArrayBuffer))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as text')\n } else {\n return Promise.resolve(this._bodyText)\n }\n }\n\n if (support.formData) {\n this.formData = function() {\n return this.text().then(decode)\n }\n }\n\n this.json = function() {\n return this.text().then(JSON.parse)\n }\n\n return this\n }\n\n // HTTP methods whose capitalization should be normalized\n var methods = ['DELETE', 'GET', 'HEAD', 'OPTIONS', 'POST', 'PUT']\n\n function normalizeMethod(method) {\n var upcased = method.toUpperCase()\n return (methods.indexOf(upcased) > -1) ? upcased : method\n }\n\n function Request(input, options) {\n options = options || {}\n var body = options.body\n\n if (input instanceof Request) {\n if (input.bodyUsed) {\n throw new TypeError('Already read')\n }\n this.url = input.url\n this.credentials = input.credentials\n if (!options.headers) {\n this.headers = new Headers(input.headers)\n }\n this.method = input.method\n this.mode = input.mode\n if (!body && input._bodyInit != null) {\n body = input._bodyInit\n input.bodyUsed = true\n }\n } else {\n this.url = String(input)\n }\n\n this.credentials = options.credentials || this.credentials || 'omit'\n if (options.headers || !this.headers) {\n this.headers = new Headers(options.headers)\n }\n this.method = normalizeMethod(options.method || this.method || 'GET')\n this.mode = options.mode || this.mode || null\n this.referrer = null\n\n if ((this.method === 'GET' || this.method === 'HEAD') && body) {\n throw new TypeError('Body not allowed for GET or HEAD requests')\n }\n this._initBody(body)\n }\n\n Request.prototype.clone = function() {\n return new Request(this, { body: this._bodyInit })\n }\n\n function decode(body) {\n var form = new FormData()\n body.trim().split('&').forEach(function(bytes) {\n if (bytes) {\n var split = bytes.split('=')\n var name = split.shift().replace(/\\+/g, ' ')\n var value = split.join('=').replace(/\\+/g, ' ')\n form.append(decodeURIComponent(name), decodeURIComponent(value))\n }\n })\n return form\n }\n\n function parseHeaders(rawHeaders) {\n var headers = new Headers()\n // Replace instances of \\r\\n and \\n followed by at least one space or horizontal tab with a space\n // https://tools.ietf.org/html/rfc7230#section-3.2\n var preProcessedHeaders = rawHeaders.replace(/\\r?\\n[\\t ]+/g, ' ')\n preProcessedHeaders.split(/\\r?\\n/).forEach(function(line) {\n var parts = line.split(':')\n var key = parts.shift().trim()\n if (key) {\n var value = parts.join(':').trim()\n headers.append(key, value)\n }\n })\n return headers\n }\n\n Body.call(Request.prototype)\n\n function Response(bodyInit, options) {\n if (!options) {\n options = {}\n }\n\n this.type = 'default'\n this.status = options.status === undefined ? 200 : options.status\n this.ok = this.status >= 200 && this.status < 300\n this.statusText = 'statusText' in options ? options.statusText : 'OK'\n this.headers = new Headers(options.headers)\n this.url = options.url || ''\n this._initBody(bodyInit)\n }\n\n Body.call(Response.prototype)\n\n Response.prototype.clone = function() {\n return new Response(this._bodyInit, {\n status: this.status,\n statusText: this.statusText,\n headers: new Headers(this.headers),\n url: this.url\n })\n }\n\n Response.error = function() {\n var response = new Response(null, {status: 0, statusText: ''})\n response.type = 'error'\n return response\n }\n\n var redirectStatuses = [301, 302, 303, 307, 308]\n\n Response.redirect = function(url, status) {\n if (redirectStatuses.indexOf(status) === -1) {\n throw new RangeError('Invalid status code')\n }\n\n return new Response(null, {status: status, headers: {location: url}})\n }\n\n self.Headers = Headers\n self.Request = Request\n self.Response = Response\n\n self.fetch = function(input, init) {\n return new Promise(function(resolve, reject) {\n var request = new Request(input, init)\n var xhr = new XMLHttpRequest()\n\n xhr.onload = function() {\n var options = {\n status: xhr.status,\n statusText: xhr.statusText,\n headers: parseHeaders(xhr.getAllResponseHeaders() || '')\n }\n options.url = 'responseURL' in xhr ? xhr.responseURL : options.headers.get('X-Request-URL')\n var body = 'response' in xhr ? xhr.response : xhr.responseText\n resolve(new Response(body, options))\n }\n\n xhr.onerror = function() {\n reject(new TypeError('Network request failed'))\n }\n\n xhr.ontimeout = function() {\n reject(new TypeError('Network request failed'))\n }\n\n xhr.open(request.method, request.url, true)\n\n if (request.credentials === 'include') {\n xhr.withCredentials = true\n } else if (request.credentials === 'omit') {\n xhr.withCredentials = false\n }\n\n if ('responseType' in xhr && support.blob) {\n xhr.responseType = 'blob'\n }\n\n request.headers.forEach(function(value, name) {\n xhr.setRequestHeader(name, value)\n })\n\n xhr.send(typeof request._bodyInit === 'undefined' ? null : request._bodyInit)\n })\n }\n self.fetch.polyfill = true\n})(typeof self !== 'undefined' ? self : this);\n","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n"],"sourceRoot":""} \ No newline at end of file diff --git a/stylesheets/app.css b/stylesheets/app.css deleted file mode 100644 index 5db13f4..0000000 --- a/stylesheets/app.css +++ /dev/null @@ -1,83 +0,0 @@ -:root { - --color-active: #27b9cc; - --color-inactive: #8a8a8a; - --color-invalid: #d95559; - --color-active--054: #8fd9e3; - box-sizing: border-box; - --form-background: #fafafa; - --nested-object-padding: 0px; - --expandable-section-padding: 0 20px; -} - -.app-topbar { - background-color: var(--color-mono--700); - color: var(--color-mono--300); - font-size: 14px; -} - -.app-content { - padding: 16px; -} - -.example-section { - border-bottom: 1px solid rgba(0,0,0,0.1); - padding-bottom: 20px; - margin-bottom: 20px; -} - -.example-section__heading { - font-size: 24px; - margin: 30px 0; - text-align: center; -} - -.example-section__content { - display: flex; - flex-direction: column; - margin-top: 10px; - margin-bottom: 10px; - align-items: center; -} - -.example-section__content > * { - margin-bottom: 20px; - max-width: 350px; -} - -@media (min-width: 400px) { -} - -@media (min-width: 730px) { - .example-section__content { - flex-direction: row; - align-items: initial; - } - - .example-section__content > * { - margin-right: 20px; - max-width: unset; - } - - .example-section__heading { - text-align: left; - } - -} - -@media (min-width: 4080px) { - - .example-section__content { - flex-direction: row; - align-items: initial; - } - - .example-section__content > * { - margin-right: 50px; - } - - .example-section__heading { - text-align: left; - } -} - - diff --git a/stylesheets/checkbox.css b/stylesheets/checkbox.css deleted file mode 100644 index 20a0e32..0000000 --- a/stylesheets/checkbox.css +++ /dev/null @@ -1,132 +0,0 @@ - -.jf-checkbox { - width: 280px; - max-width: 100%; - position: relative; - font-size: 16px; - display: inline-block; - box-sizing: border-box; - margin: 0; - padding: 20px 0; - font-size: 16px; - vertical-align: top; -} - -.jf-checkbox__input { - margin: 0; - padding: 0; - width: 0; - height: 0; - position: absolute; - border: 0; - appearance: none; - opacity: 0; -} - -.jf-checkbox__label { - cursor: pointer; -} - -.jf-checkbox__box-outline { - width: 16px; - height: 16px; - position: absolute; - top: calc(50% - 8px); - right: 2px; - border-radius: 2px; - border: 2px solid #0000008a; - cursor: pointer; - z-index: 2; -} - -.jf-checkbox__tick-outline { - position: absolute; - top: 0; - left: 0; - height: 100%; - width: 100%; - background: 0 0; - transition-duration: .28s; - transition-timing-function: cubic-bezier(.4,0,.2,1); - transition-property: background; -} - - -.jf-checkbox--on .jf-checkbox__tick-outline { - background: var(--color-active) url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgdmVyc2lvbj0iMS4xIgogICB2aWV3Qm94PSIwIDAgMSAxIgogICBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWluWU1pbiBtZWV0Ij4KICA8cGF0aAogICAgIGQ9Ik0gMC4wNDAzODA1OSwwLjYyNjc3NjcgMC4xNDY0NDY2MSwwLjUyMDcxMDY4IDAuNDI5Mjg5MzIsMC44MDM1NTMzOSAwLjMyMzIyMzMsMC45MDk2MTk0MSB6IE0gMC4yMTcxNTcyOSwwLjgwMzU1MzM5IDAuODUzNTUzMzksMC4xNjcxNTcyOSAwLjk1OTYxOTQxLDAuMjczMjIzMyAwLjMyMzIyMzMsMC45MDk2MTk0MSB6IgogICAgIGlkPSJyZWN0Mzc4MCIKICAgICBzdHlsZT0iZmlsbDojZmZmZmZmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lIiAvPgo8L3N2Zz4K); -} - - -.jf-checkbox--on .jf-checkbox__box-outline { - border: 2px solid var(--color-active); -} - - -.jf-checkbox__helper-text { - font-size: 12px; - padding-top: 4px; - padding-right: 32px; - color: rgba(0, 0, 0, 0.54); -} - -.jf-checkbox--invalid .jf-checkbox__helper-text { - color: var(--color-red--500); -} - - -.jf-checkbox--disabled .jf-checkbox__label, -.jf-checkbox--disabled .jf-checkbox__helper-text { - color: var(--color-inactive); - cursor: default; -} - -.jf-checkbox--disabled .jf-checkbox__tick-outline { - background-color: var(--color-inactive); -} - -.jf-checkbox--disabled .jf-checkbox__box-outline { - border-color: var(--color-inactive); - cursor: default; -} - -/* HOVER */ - -.jf-checkbox__box-outline:after { - background-color: lightgrey; - content: ''; - width: 20px; - height: 20px; - position: absolute; - top: calc(50% - 10px); - left: calc(50% - 10px); - opacity: 0; - border-radius: 50%; - transition-duration: .2s; - transition-timing-function: cubic-bezier(.4,0,.2,1); -} - -.jf-checkbox:hover .jf-checkbox__box-outline:after { - width: 40px; - height: 40px; - position: absolute; - top: calc(50% - 20px); - left: calc(50% - 20px); - opacity: 0.2; -} - -.jf-checkbox:active .jf-checkbox__box-outline:after { - opacity: 0.4; -} - -.jf-checkbox--on .jf-checkbox__box-outline:after { - background-color: var(--color-active); -} - -.jf-checkbox--disabled:hover .jf-checkbox__box-outline:after { - opacity: 0; -} - -.jf-checkbox--disabled { - opacity: 0.54; -} - diff --git a/stylesheets/globals.css b/stylesheets/globals.css deleted file mode 100644 index 6a57e2d..0000000 --- a/stylesheets/globals.css +++ /dev/null @@ -1,11 +0,0 @@ - -:host { - --font-family: helvetica, sans-serif; - --color-active: #27b9cc; - --color-active--054: #8fd9e3; - --color-inactive: #8a8a8a; - --color-invalid: #c72227; - --form-background: #fafafa; - box-sizing: border-box; -} - diff --git a/stylesheets/index.css b/stylesheets/index.css deleted file mode 100644 index 6b8b894..0000000 --- a/stylesheets/index.css +++ /dev/null @@ -1,19 +0,0 @@ -@import '../node_modules/@ubio/css/index.css'; -@import './app.css'; -@import './json-view.css'; -@import './tab.css'; -@import './json-viewer.css'; -@import './json-form.css'; - -.card { - box-shadow: 0 1px 1px 0 rgba(60,64,67,.08),0 1px 3px 1px rgba(60,64,67,.16); - border-radius: 4px; - overflow: hidden; - max-width: 500px; -} - -.card__title { - font-size: 16px; - display: block; - padding: 10px; -} diff --git a/stylesheets/json-form-element.css b/stylesheets/json-form-element.css deleted file mode 100644 index 213ba82..0000000 --- a/stylesheets/json-form-element.css +++ /dev/null @@ -1,23 +0,0 @@ -.jf-element { - display: inline-flex; - flex-direction: column; - margin-top: 16px; - margin-right: 16px; - max-width: 300px; -} - -.jf-element--hidden { - display: none; -} - -.jf-helper-text { - margin-top: 8px; - padding-left: 12px; - color: rgba(0, 0, 0, 0.54); - box-sizing: border-box; - font-size: 12px; -} - -.jf-element--invalid .jf-helper-text { - color: var(--color-invalid); -} diff --git a/stylesheets/json-form.css b/stylesheets/json-form.css deleted file mode 100644 index 61bf84f..0000000 --- a/stylesheets/json-form.css +++ /dev/null @@ -1,54 +0,0 @@ -@import './json-form-element.css'; -@import './textfield.css'; -@import './switch.css'; -@import './checkbox.css'; - -.array-item-add { - padding: 16px; -} - -.array-item-add .button { - font-size: 16px; -} - -.jf-object { -} - -.jf-json-form { - background: var(--form-background); -} - - - -.jf-heading { - font-size: 16px; - padding: 0; - padding-top: 20px; - padding-bottom: 10px; -} - -.jf-heading--expandable { - cursor: pointer; - font-size: 19px; - margin-left: -20px; -} - -.jf-heading--expandable:before { - content: url("data:image/svg+xml;utf8,"); - padding: 4px; -} - -.jf-heading--expandable.jf-heading--expanded { -} - -.jf-heading--expandable.jf-heading--expanded:before { - content: url("data:image/svg+xml;utf8,"); -} - -.jf-section--expandable { - /* padding: var(--expandable-section-padding); */ -} - -.jf-section { - padding-left: 20px; -} diff --git a/stylesheets/json-view.css b/stylesheets/json-view.css deleted file mode 100644 index cbfcb52..0000000 --- a/stylesheets/json-view.css +++ /dev/null @@ -1,32 +0,0 @@ -.json-view { - width: 100%; - line-height: 1.3; - padding: 10px; - /* background: #002b36; */ - background: #fdf6e3; - /* color: #839496; */ - color: #657b83; - white-space: pre-wrap; - font-family: var(--font-family--mono); - overflow: auto; -} - -.json-view__attr { - color: #b58900; -} - -.json-view__bool, -.json-view__null, -.json-view__string { - color: #2aa198; -} - -.json-view__nested-props { - border-left: 2px solid transparent; - padding-left: 4ch; - margin-left: 2px; -} - -.json-view__nested-props:hover { - border-left-color: rgba(0, 0, 0, 0.05); -} diff --git a/stylesheets/json-viewer.css b/stylesheets/json-viewer.css deleted file mode 100644 index fb4d1e7..0000000 --- a/stylesheets/json-viewer.css +++ /dev/null @@ -1,46 +0,0 @@ -.json-viewer { - font-family: var(--font-family--mono); - line-height: 1.6; -} - -.json-viewer--collapsed { - color: grey; - cursor: pointer; - background-color: var(--color-blue--100); -} - -.json-viewer__object-property { - margin-left: 4ch; -} - -.json-viewer__array-item { - margin-left: 4ch; -} - -.json-viewer__key--object { - color: var(--color-mono--700); -} - -.json-viewer__key:after { - content: ': '; -} - -.json-viewer__key--array { - color: royalblue; -} - -.json-viewer--string { - color: var(--color-yellow--700); -} - -.json-viewer--number { - color: var(--color-blue--700); -} - -.json-viewer--null { - color: var(--color-red--700); -} - -.json-viewer--bool { - color: var(--color-brand-blue--600); -} diff --git a/stylesheets/standalone.css b/stylesheets/standalone.css deleted file mode 100644 index 0d33ab3..0000000 --- a/stylesheets/standalone.css +++ /dev/null @@ -1,2 +0,0 @@ -@import './globals.css'; -@import './json-form.css'; diff --git a/stylesheets/switch.css b/stylesheets/switch.css deleted file mode 100644 index fe998a1..0000000 --- a/stylesheets/switch.css +++ /dev/null @@ -1,130 +0,0 @@ - -.jf-switch { - width: 280px; - max-width: 100%; - position: relative; - font-size: 16px; - display: inline-block; - box-sizing: border-box; - margin: 0; - padding: 20px 0; - font-size: 16px; - vertical-align: top; -} - -.jf-switch__input { - margin: 0; - padding: 0; - width: 0; - height: 0; - position: absolute; - border: 0; - appearance: none; - opacity: 0; -} - -.jf-switch__label { - cursor: pointer; -} - -.jf-switch__track { - background-color: lightgrey; - width: 36px; - height: 14px; - position: absolute; - top: calc(50% - 7px); - right: 0; - border-radius: 14px; - cursor: pointer; -} - -.jf-switch__thumb { - background-color: #fafafa; - width: 20px; - height: 20px; - position: absolute; - top: calc(50% - 10px); - right: 18px; - cursor: pointer; - border-radius: 50%; - transition-duration: .2s; - transition-timing-function: cubic-bezier(.4,0,.2,1); - box-shadow: 0 3px 4px 0 rgba(0,0,0,.14), 0 3px 3px -2px rgba(0,0,0,.2), 0 1px 8px 0 rgba(0,0,0,.12); -} - -.jf-switch .jf-switch__thumb:after { - background-color: lightgrey; - content: ''; - width: 20px; - height: 20px; - position: absolute; - top: calc(50% - 10px); - left: 0px; - opacity: 0; - border-radius: 50%; - transition-duration: .2s; - transition-timing-function: cubic-bezier(.4,0,.2,1); -} - -.jf-switch:hover .jf-switch__thumb:after { - width: 40px; - height: 40px; - position: absolute; - top: calc(50% - 20px); - left: -10px; - opacity: 0.2; -} - -.jf-switch:active .jf-switch__thumb:after { - opacity: 0.4; -} - -.jf-switch--on .jf-switch__thumb:after { - background-color: var(--color-active); -} - -.jf-switch--on .jf-switch__thumb { - right: 0; -} - -.jf-switch--on .jf-switch__thumb { - background-color: var(--color-active); -} - -.jf-switch--on .jf-switch__track { - background-color: var(--color-active--054); -} - -.jf-switch__helper-text { - max-width: calc(100% - 44px); - font-size: 12px; - color: rgba(0, 0, 0, 0.54); - padding-top: 4px; -} - -.jf-switch--invalid .jf-textfield__helper-text { - color: var(--color-red--500); -} - - -.jf-switch--disabled { - opacity: 0.54; -} - -.jf-switch--disabled:hover .jf-switch__thumb:after { - opacity: 0; -} - -.jf-switch--disabled .jf-switch__label, -.jf-switch--disabled .jf-checkbox__helper-text { - cursor: default; -} - -.jf-switch--disabled .jf-switch__thumb { - cursor: default; -} - -.jf-switch--disabled .jf-switch__track { - cursor: default; -} - diff --git a/stylesheets/tab.css b/stylesheets/tab.css deleted file mode 100644 index 7b8b4de..0000000 --- a/stylesheets/tab.css +++ /dev/null @@ -1,24 +0,0 @@ -.tab { - border-bottom: 3px solid transparent; - display: inline-block; - font-size: 14px; - min-width: 160px; - padding-top: 0; - padding-left: 12px; - padding-right: 12px; - padding-bottom: 20px; - height: 48px; - line-height: 48px; - color: rgba(255,255,255,.7); - text-transform: uppercase; - text-align: center; - vertical-align: middle; - cursor: pointer; -} - -.tab--active { - color: white; - cursor: default; - border-bottom: 3px solid var(--color-red--500); -} - diff --git a/stylesheets/textfield.css b/stylesheets/textfield.css deleted file mode 100644 index a8f00b9..0000000 --- a/stylesheets/textfield.css +++ /dev/null @@ -1,398 +0,0 @@ -.jf-textfield { - --field-height: 56px; - --label-top: 21px; - --large-font-size: 16px; - --side-padding: 12px; - --filled-background: rgba(0, 0, 0, 0.09); - --top-padding: 22px; - --bottom-padding: 13px; -} - -.jf-textfield--dense { - --field-height: 44px; - --label-top: 17px; - --large-font-size: 12px; - --side-padding: 8px; - --top-padding: 22px; - --bottom-padding: 13px; -} - -.jf-textfield--dense.jf-textfield--outlined { - --top-padding: 13px; - --bottom-padding: 13px; -} - -.jf-textfield--dense.jf-textfield--multiline { - --top-padding: 22px; - --bottom-padding: 6px; -} - -.jf-textfield--multiline { - --top-padding: 23px; - --bottom-padding: 6px; -} - - -.jf-textfield { - position: relative; - height: var(--field-height); - font-size: var(--large-font-size); - display: inline-block; - box-sizing: border-box; - width: 280px; - max-width: 100%; - margin: 0; - padding: 0; - border-top-left-radius: 4px; - border-top-right-radius: 4px; - cursor: pointer; - background-color: var(--filled-background); - color: #00000099; - outline: none; -} - -.jf-textfield--outlined { - background-color: var(--form-background); - border-radius: 4px; - box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.5); -} - -.jf-textfield:hover { - background-color: #dedede; - color: #000000de; -} - -.jf-textfield--focused.jf-textfield--outlined { - box-shadow: 0 0 0 2px var(--color-active); -} - -.jf-textfield--focused:hover { - background-color: #e8e8e8; - color: #00000099; -} - -.jf-textfield--outlined:hover { - background: var(--form-background); -} - -.jf-textfield__input { - border: none; - border-radius: 0; - border-top-right-radius: 4px; - border-top-left-radius: 4px; - outline: none; - display: block; - font-size: var(--large-font-size); - font-family: var(--font-family); - margin: 0; - padding-left: var(--side-padding); - padding-right: var(--side-padding); - padding-top: var(--top-padding); - padding-bottom: var(--bottom-padding); - width: 100%; - background: 0 0; - text-align: left; - color: inherit; - caret-color: var(--color-active); - position: absolute; - top: 0px; - left: 0px; - height: var(--field-height); - box-sizing: border-box; -} - -.jf-textfield--focused .jf-textfield__input { - /* color: var(--color-active); */ - color: inherit; -} - -.jf-textfield--outlined.jf-textfield--empty .jf-textfield__label, .jf-textfield--empty .jf-textfield__label { - top: var(--label-top); - font-size: var(--large-font-size); -} - -.jf-textfield--focused .jf-textfield__label { - color: var(--color-active); - visibility: visible; - font-size: 12px; - top: 10px; -} - -.jf-textfield__label { - color: var(--color-inactive); - padding-left: var(--side-padding); - padding-right: var(--side-padding); - font-size: 12px; - left: 0; - right: 0; - pointer-events: none; - position: absolute; - display: block; - bottom: 0; - top: 6px; - width: 100%; - overflow: hidden; - white-space: nowrap; - text-align: left; - transition-duration: .2s; - transition-timing-function: cubic-bezier(.4, 0, .2, 1); - box-sizing: border-box; -} - -.jf-textfield--empty .jf-textfield__label { - font-size: var(--large-font-size); -} - -.jf-textfield--outlined .jf-textfield__label { - padding-left: 4px; - padding-right: 4px; - font-size: 12px; - left: var(--side-padding); - bottom: auto; - right: auto; - width: auto; - background-color: var(--form-background); -} - -.jf-textfield--focused.jf-textfield--outlined .jf-textfield__label { - top: -7px; - font-size: 12px; -} - -.jf-textfield--focused .jf-textfield__label { - top: 6px; - font-size: 12px; -} - -.jf-textfield--outlined .jf-textfield__label { - top: -7px; -} - -.jf-textfield--outlined .jf-textfield__input { - padding-left: var(--side-padding); - padding-right: var(--side-padding); - padding-top: var(--top-padding); - padding-bottom: var(--bottom-padding); - border-radius: 4px; -} - - -.jf-textfield--multiline { - min-height: var(--field-height); - height: auto; -} - -.jf-textfield--multiline -.jf-textfield__input { - max-width: 100%; - min-width: 100%; - position: initial; - margin-top: 0px; - margin-bottom: 0px; - padding-bottom: var(--bottom-padding); - line-height: 18px; - display: block; - height: auto; -} - -.jf-textfield--json textarea { - font-family: menlo, monospace; -} - - -/* -.jf-textfield__bottom-border { - border-bottom: 2px solid var(--color-active); - height: 0; - position: absolute; - top: 46px; - transition: width .1s ease-in 0s; - width: 0; -} - -.jf-textfield--focused .jf-textfield__bottom-border { - width: 100%; -} -*/ - -.jf-textfield__label:after { - background-color: var(--color-active); - bottom: 0; - content: ''; - height: 2px; - left: 45%; - position: absolute; - transition-duration: .2s; - transition-timing-function: cubic-bezier(.4,0,.2,1); - visibility: hidden; - width: 10px; -} - -.jf-textfield--focused { - cursor: auto; -} - -.jf-textfield--focused .jf-textfield__label:after { - left: 0; - visibility: visible; - width: 100%; -} - -.jf-textfield--outlined .jf-textfield__label:after { - background-color: transparent; - display: none; -} - -/* -.jf-textfield:before { - content: ''; - background-color: rgba(0,0,0,0.06); - position: absolute; - top: 0; - bottom: 20px; - width: calc(100% + 32px); - z-index: -1; - border-radius: 4px; - margin-left: -16px; -} -*/ - -.jf-textfield:after { - content: ''; - position: absolute; - width: 100%; - height: 1px; - bottom: 0; - background-color: var(--color-inactive); - /* background-color: transparent; */ - transition-duration: .2s; - transition-timing-function: cubic-bezier(.4,0,.2,1); -} - -.jf-textfield--outlined.jf-textfield:after { - display: none; -} - -.jf-textfield:after:hover { - background-color: var(--color-inactive); -} - -.jf-textfield--focused:after { - background-color: transparent; -} - -.jf-textfield:hover:after { - background-color: #222; - height: 2px; -} - -.jf-textfield--focused:hover:after { - background-color: transparent; -} - - -.jf-textfield__helper-text { -} - -.jf-textfield svg { - position: absolute; - top: 10px; - right: var(--side-padding); -} - -.jf-textfield--invalid svg { - color: var(--color-invalid); -} - -.jf-textfield--has-icon .jf-textfield__input { - padding-right: 40px; -} - - -/* -.jf-textfield--outlined .jf-textfield__helper-text { - padding-left: 12px; -} -*/ - -.jf-textfield--outlined .jf-textfield__label:after { - display: none; -} - - -/* INVALID */ - - -.jf-textfield--invalid .jf-textfield__label:after { - background-color: var(--color-invalid); -} - -.jf-textfield--invalid .jf-textfield__label { - color: var(--color-invalid); - animation: shake .5s linear; -} - -.jf-textfield--invalid:after { - background-color: var(--color-invalid) !important; -} - -.jf-textfield--invalid .jf-textfield__input { - caret-color: var(--color-invalid); -} - -.jf-textfield--outlined.jf-textfield--invalid { - box-shadow: 0 0 0 2px var(--color-invalid); -} - -/* DISABLED */ - - -.jf-textfield--disabled { - color: var(--color-inactive); - background-color: #e0e0e0; - cursor: default; -} - -.jf-textfield--disabled:hover { - background-color: #e0e0e0; -} - -.jf-textfield--disabled:hover:after { - background-color: transparent; -} - -.jf-textfield--disabled:after { - background-color: transparent; - border-bottom: 1px dotted var(--color-inactive); -} - -.jf-textfield--outlined.jf-textfield--disabled:hover { - background: var(--form-background); -} - -.jf-textfield--outlined.jf-textfield--disabled:after { - display: none; -} - -.jf-textfield--outlined.jf-textfield--disabled { - background-color: var(--form-background); - box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.3); -} - - @keyframes shake { - 8%, 41% { - transform: translateX(-4px); - } - 25%, 58% { - transform: translateX(4px); - } - 75% { - transform: translateX(-1px); - } - 92% { - transform: translateX(1px); - } - 0%, 100% { - transform: translateX(0); - } -} diff --git a/tests/Example.elm b/tests/Example.elm deleted file mode 100644 index 959349f..0000000 --- a/tests/Example.elm +++ /dev/null @@ -1,10 +0,0 @@ -module Example exposing (..) - -import Expect exposing (Expectation) -import Fuzz exposing (Fuzzer, int, list, string) -import Test exposing (..) - - -suite : Test -suite = - todo "Implement our first test. See http://package.elm-lang.org/packages/elm-community/elm-test/latest for how to do this!" diff --git a/tests/elm-package.json b/tests/elm-package.json deleted file mode 100644 index 5e0acd5..0000000 --- a/tests/elm-package.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "version": "1.0.0", - "summary": "Test Suites", - "repository": "https://github.com/1602/json-form.git", - "license": "BSD3", - "source-directories": [ - "../src", - "." - ], - "exposed-modules": [], - "dependencies": { - "1602/elm-feather": "2.2.0 <= v < 3.0.0", - "1602/json-schema": "4.1.0 <= v < 5.0.0", - "1602/json-value": "1.1.0 <= v < 2.0.0", - "eeue56/elm-html-test": "5.2.0 <= v < 6.0.0", - "elm-community/elm-test": "4.0.0 <= v < 5.0.0", - "elm-lang/core": "5.0.0 <= v < 6.0.0", - "elm-lang/html": "2.0.0 <= v < 3.0.0" - }, - "elm-version": "0.18.0 <= v < 0.19.0" -} diff --git a/webpack.config.js b/webpack.config.js deleted file mode 100644 index bd89b3e..0000000 --- a/webpack.config.js +++ /dev/null @@ -1,172 +0,0 @@ -var path = require("path"); -const webpack = require("webpack"); -var merge = require("webpack-merge"); -var CopyWebpackPlugin = require("copy-webpack-plugin"); -var HTMLWebpackPlugin = require("html-webpack-plugin"); -const CleanWebpackPlugin = require("clean-webpack-plugin"); -const UglifyJsPlugin = require('uglifyjs-webpack-plugin'); - - -var TARGET_ENV = - process.env.npm_lifecycle_event === "prod" ? "production" : "development"; -var filename = TARGET_ENV == "production" ? "[name]-[hash].js" : "index.js"; - -var common = { - entry: { - 'index': "./src/index", - // 'custom-element': './src/custom-element' - }, - output: { - path: path.join(__dirname, "dist"), - // webpack -p automatically adds hash when building for production - filename: '[name].js' - }, - plugins: [ - new HTMLWebpackPlugin({ - // using .ejs prevents other loaders causing errors - template: "src/index.ejs", - // inject details of output file at end of body - inject: "body" - }), - /* - new UglifyJsPlugin({ - uglifyOptions: { - ecma: 6, - compress: { - pure_funcs: "F2,F3,F4,F5,F6,F7,F8,F9", - pure_getters: true, - keep_fargs: false, - unsafe_comps: true, - unsafe_methods: true, - unsafe_arrows: true - } - } - }) - */ - ], - resolve: { - modules: [path.join(__dirname, "src"), "node_modules"], - extensions: [".js", ".elm", ".png"] - }, - module: { - rules: [ - { - test: /\.html$/, - exclude: /node_modules/, - loader: "file-loader?name=[name].[ext]" - }, - { - test: /\.js$/, - exclude: /node_modules/, - use: { - loader: "babel-loader", - options: { - // env: automatically determines the Babel plugins you need based on your supported environments - presets: [["env", { - "targets": { - "chrome": 52 - }}]] - } - } - }, - { - test: /\.css$/, - exclude: [/elm-stuff/, /node_modules/], - loaders: ["style-loader", "css-loader"] - //loaders: ["to-string-loader", "css-loader"] - }, - { - test: /\.woff(2)?(\?v=[0-9]\.[0-9]\.[0-9])?$/, - exclude: [/elm-stuff/, /node_modules/], - loader: "url-loader", - options: { - limit: 10000, - mimetype: "application/font-woff" - } - }, - { - test: /\.(ttf|eot|svg)(\?v=[0-9]\.[0-9]\.[0-9])?$/, - exclude: [/elm-stuff/, /node_modules/], - loader: "file-loader" - }, - { - test: /\.(jpe?g|png|gif|svg)$/i, - loader: "file-loader" - } - ] - } -}; - -if (TARGET_ENV === "development") { - console.log("Building for dev..."); - module.exports = merge(common, { - plugins: [ - // Suggested for hot-loading - new webpack.NamedModulesPlugin(), - // Prevents compilation errors causing the hot loader to lose state - new webpack.NoEmitOnErrorsPlugin() - ], - module: { - rules: [ - { - test: /\.elm$/, - exclude: [/elm-stuff/, /node_modules/], - use: [ - { - loader: "elm-hot-loader" - }, - { - loader: "elm-webpack-loader", - // add Elm's debug overlay to output - options: { - debug: false - } - } - ] - } - ] - }, - devServer: { - inline: true, - stats: "errors-only", - contentBase: path.join(__dirname, "src/assets"), - // For SPAs: serve index.html in place of 404 responses - historyApiFallback: true - } - }); -} - -if (TARGET_ENV === "production") { - console.log("Building for prod..."); - module.exports = merge(common, { - plugins: [ - // Delete everything from output directory and report to user - new CleanWebpackPlugin(["dist"], { - root: __dirname, - exclude: [], - verbose: true, - dry: false - }), - new CopyWebpackPlugin([ - { - from: "src/assets" - } - ]), - // TODO update to version that handles => - new webpack.optimize.UglifyJsPlugin() - ], - module: { - rules: [ - { - test: /\.elm$/, - exclude: [/elm-stuff/, /node_modules/], - use: [ - { - loader: "elm-webpack-loader" - } - ] - } - ] - } - }); -} diff --git a/yarn.lock b/yarn.lock deleted file mode 100644 index 14b05de..0000000 --- a/yarn.lock +++ /dev/null @@ -1,6394 +0,0 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - - -"@ubio/css@^1.3.11": - version "1.3.11" - resolved "https://registry.yarnpkg.com/@ubio/css/-/css-1.3.11.tgz#357206258f7582c14960b7871106088e72cb2afc" - dependencies: - parse-color "^1.0.0" - -abbrev@1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" - -accepts@~1.3.4, accepts@~1.3.5: - version "1.3.5" - resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.5.tgz#eb777df6011723a3b14e8a72c0805c8e86746bd2" - dependencies: - mime-types "~2.1.18" - negotiator "0.6.1" - -acorn-dynamic-import@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/acorn-dynamic-import/-/acorn-dynamic-import-2.0.2.tgz#c752bd210bef679501b6c6cb7fc84f8f47158cc4" - dependencies: - acorn "^4.0.3" - -acorn@^4.0.3: - version "4.0.13" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.13.tgz#105495ae5361d697bd195c825192e1ad7f253787" - -acorn@^5.0.0: - version "5.5.3" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.5.3.tgz#f473dd47e0277a08e28e9bec5aeeb04751f0b8c9" - -adjust-sourcemap-loader@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/adjust-sourcemap-loader/-/adjust-sourcemap-loader-1.2.0.tgz#e33fde95e50db9f2a802e3647e311d2fc5000c69" - dependencies: - assert "^1.3.0" - camelcase "^1.2.1" - loader-utils "^1.1.0" - lodash.assign "^4.0.1" - lodash.defaults "^3.1.2" - object-path "^0.9.2" - regex-parser "^2.2.9" - -ajv-keywords@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.1.0.tgz#ac2b27939c543e95d2c06e7f7f5c27be4aa543be" - -ajv@^4.9.1: - version "4.11.8" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536" - dependencies: - co "^4.6.0" - json-stable-stringify "^1.0.1" - -ajv@^5.0.0, ajv@^5.1.0: - version "5.5.2" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965" - dependencies: - co "^4.6.0" - fast-deep-equal "^1.0.0" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.3.0" - -ajv@^6.1.0: - version "6.4.0" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.4.0.tgz#d3aff78e9277549771daf0164cff48482b754fc6" - dependencies: - fast-deep-equal "^1.0.0" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.3.0" - uri-js "^3.0.2" - -align-text@^0.1.1, align-text@^0.1.3: - version "0.1.4" - resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117" - dependencies: - kind-of "^3.0.2" - longest "^1.0.1" - repeat-string "^1.5.2" - -alphanum-sort@^1.0.1, alphanum-sort@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" - -amdefine@>=0.0.4: - version "1.0.1" - resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" - -ansi-html@0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e" - -ansi-regex@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" - -ansi-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" - -ansi-styles@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" - -ansi-styles@^3.1.0, ansi-styles@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" - dependencies: - color-convert "^1.9.0" - -anymatch@^1.1.0, anymatch@^1.3.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-1.3.2.tgz#553dcb8f91e3c889845dfdba34c77721b90b9d7a" - dependencies: - micromatch "^2.1.5" - normalize-path "^2.0.0" - -anymatch@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" - dependencies: - micromatch "^3.1.4" - normalize-path "^2.1.1" - -aproba@^1.0.3, aproba@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" - -are-we-there-yet@~1.1.2: - version "1.1.4" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz#bb5dca382bb94f05e15194373d16fd3ba1ca110d" - dependencies: - delegates "^1.0.0" - readable-stream "^2.0.6" - -argparse@^1.0.7: - version "1.0.10" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" - dependencies: - sprintf-js "~1.0.2" - -arr-diff@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" - dependencies: - arr-flatten "^1.0.1" - -arr-diff@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" - -arr-flatten@^1.0.1, arr-flatten@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" - -arr-union@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" - -array-filter@~0.0.0: - version "0.0.1" - resolved "https://registry.yarnpkg.com/array-filter/-/array-filter-0.0.1.tgz#7da8cf2e26628ed732803581fd21f67cacd2eeec" - -array-find-index@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" - -array-flatten@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" - -array-flatten@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-2.1.1.tgz#426bb9da84090c1838d812c8150af20a8331e296" - -array-includes@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.0.3.tgz#184b48f62d92d7452bb31b323165c7f8bd02266d" - dependencies: - define-properties "^1.1.2" - es-abstract "^1.7.0" - -array-map@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/array-map/-/array-map-0.0.0.tgz#88a2bab73d1cf7bcd5c1b118a003f66f665fa662" - -array-reduce@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/array-reduce/-/array-reduce-0.0.0.tgz#173899d3ffd1c7d9383e4479525dbe278cab5f2b" - -array-union@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" - dependencies: - array-uniq "^1.0.1" - -array-uniq@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" - -array-unique@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" - -array-unique@^0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" - -arrify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" - -asap@~2.0.3: - version "2.0.6" - resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" - -asn1.js@^4.0.0: - version "4.10.1" - resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.10.1.tgz#b9c2bf5805f1e64aadeed6df3a2bfafb5a73f5a0" - dependencies: - bn.js "^4.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - -asn1@~0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86" - -assert-plus@1.0.0, assert-plus@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" - -assert-plus@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" - -assert@^1.1.1, assert@^1.3.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/assert/-/assert-1.4.1.tgz#99912d591836b5a6f5b345c0f07eefc08fc65d91" - dependencies: - util "0.10.3" - -assign-symbols@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" - -async-each@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" - -async-foreach@^0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/async-foreach/-/async-foreach-0.1.3.tgz#36121f845c0578172de419a97dbeb1d16ec34542" - -async@2.6.0, async@^2.0.1, async@^2.1.2, async@^2.4.1: - version "2.6.0" - resolved "https://registry.yarnpkg.com/async/-/async-2.6.0.tgz#61a29abb6fcc026fea77e56d1c6ec53a795951f4" - dependencies: - lodash "^4.14.0" - -async@^1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" - -asynckit@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" - -atob@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.0.tgz#ab2b150e51d7b122b9efc8d7340c06b6c41076bc" - -atob@~1.1.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/atob/-/atob-1.1.3.tgz#95f13629b12c3a51a5d215abdce2aa9f32f80773" - -autoprefixer@^6.3.1: - version "6.7.7" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-6.7.7.tgz#1dbd1c835658e35ce3f9984099db00585c782014" - dependencies: - browserslist "^1.7.6" - caniuse-db "^1.0.30000634" - normalize-range "^0.1.2" - num2fraction "^1.2.2" - postcss "^5.2.16" - postcss-value-parser "^3.2.3" - -aws-sign2@~0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f" - -aws-sign2@~0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" - -aws4@^1.2.1, aws4@^1.6.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.7.0.tgz#d4d0e9b9dbfca77bf08eeb0a8a471550fe39e289" - -babel-code-frame@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" - dependencies: - chalk "^1.1.3" - esutils "^2.0.2" - js-tokens "^3.0.2" - -babel-core@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.0.tgz#af32f78b31a6fcef119c87b0fd8d9753f03a0bb8" - dependencies: - babel-code-frame "^6.26.0" - babel-generator "^6.26.0" - babel-helpers "^6.24.1" - babel-messages "^6.23.0" - babel-register "^6.26.0" - babel-runtime "^6.26.0" - babel-template "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - convert-source-map "^1.5.0" - debug "^2.6.8" - json5 "^0.5.1" - lodash "^4.17.4" - minimatch "^3.0.4" - path-is-absolute "^1.0.1" - private "^0.1.7" - slash "^1.0.0" - source-map "^0.5.6" - -babel-generator@^6.26.0: - version "6.26.1" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.1.tgz#1844408d3b8f0d35a404ea7ac180f087a601bd90" - dependencies: - babel-messages "^6.23.0" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - detect-indent "^4.0.0" - jsesc "^1.3.0" - lodash "^4.17.4" - source-map "^0.5.7" - trim-right "^1.0.1" - -babel-helper-builder-binary-assignment-operator-visitor@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz#cce4517ada356f4220bcae8a02c2b346f9a56664" - dependencies: - babel-helper-explode-assignable-expression "^6.24.1" - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-helper-call-delegate@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz#ece6aacddc76e41c3461f88bfc575bd0daa2df8d" - dependencies: - babel-helper-hoist-variables "^6.24.1" - babel-runtime "^6.22.0" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-define-map@^6.24.1: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz#a5f56dab41a25f97ecb498c7ebaca9819f95be5f" - dependencies: - babel-helper-function-name "^6.24.1" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - lodash "^4.17.4" - -babel-helper-explode-assignable-expression@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz#f25b82cf7dc10433c55f70592d5746400ac22caa" - dependencies: - babel-runtime "^6.22.0" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-function-name@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz#d3475b8c03ed98242a25b48351ab18399d3580a9" - dependencies: - babel-helper-get-function-arity "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-get-function-arity@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz#8f7782aa93407c41d3aa50908f89b031b1b6853d" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-helper-hoist-variables@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz#1ecb27689c9d25513eadbc9914a73f5408be7a76" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-helper-optimise-call-expression@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz#f7a13427ba9f73f8f4fa993c54a97882d1244257" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-helper-regex@^6.24.1: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz#325c59f902f82f24b74faceed0363954f6495e72" - dependencies: - babel-runtime "^6.26.0" - babel-types "^6.26.0" - lodash "^4.17.4" - -babel-helper-remap-async-to-generator@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz#5ec581827ad723fecdd381f1c928390676e4551b" - dependencies: - babel-helper-function-name "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-replace-supers@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz#bf6dbfe43938d17369a213ca8a8bf74b6a90ab1a" - dependencies: - babel-helper-optimise-call-expression "^6.24.1" - babel-messages "^6.23.0" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helpers@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2" - dependencies: - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-loader@^7.1.2: - version "7.1.4" - resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-7.1.4.tgz#e3463938bd4e6d55d1c174c5485d406a188ed015" - dependencies: - find-cache-dir "^1.0.0" - loader-utils "^1.0.2" - mkdirp "^0.5.1" - -babel-messages@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-check-es2015-constants@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz#35157b101426fd2ffd3da3f75c7d1e91835bbf8a" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-syntax-async-functions@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz#cad9cad1191b5ad634bf30ae0872391e0647be95" - -babel-plugin-syntax-exponentiation-operator@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de" - -babel-plugin-syntax-trailing-function-commas@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz#ba0360937f8d06e40180a43fe0d5616fff532cf3" - -babel-plugin-transform-async-to-generator@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761" - dependencies: - babel-helper-remap-async-to-generator "^6.24.1" - babel-plugin-syntax-async-functions "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-arrow-functions@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz#452692cb711d5f79dc7f85e440ce41b9f244d221" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-block-scoped-functions@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz#bbc51b49f964d70cb8d8e0b94e820246ce3a6141" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-block-scoping@^6.23.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz#d70f5299c1308d05c12f463813b0a09e73b1895f" - dependencies: - babel-runtime "^6.26.0" - babel-template "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - lodash "^4.17.4" - -babel-plugin-transform-es2015-classes@^6.23.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz#5a4c58a50c9c9461e564b4b2a3bfabc97a2584db" - dependencies: - babel-helper-define-map "^6.24.1" - babel-helper-function-name "^6.24.1" - babel-helper-optimise-call-expression "^6.24.1" - babel-helper-replace-supers "^6.24.1" - babel-messages "^6.23.0" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-computed-properties@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz#6fe2a8d16895d5634f4cd999b6d3480a308159b3" - dependencies: - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-destructuring@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz#997bb1f1ab967f682d2b0876fe358d60e765c56d" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-duplicate-keys@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz#73eb3d310ca969e3ef9ec91c53741a6f1576423e" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-for-of@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz#f47c95b2b613df1d3ecc2fdb7573623c75248691" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-function-name@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz#834c89853bc36b1af0f3a4c5dbaa94fd8eacaa8b" - dependencies: - babel-helper-function-name "^6.24.1" - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-literals@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz#4f54a02d6cd66cf915280019a31d31925377ca2e" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-modules-amd@^6.22.0, babel-plugin-transform-es2015-modules-amd@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz#3b3e54017239842d6d19c3011c4bd2f00a00d154" - dependencies: - babel-plugin-transform-es2015-modules-commonjs "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-modules-commonjs@^6.23.0, babel-plugin-transform-es2015-modules-commonjs@^6.24.1: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz#0d8394029b7dc6abe1a97ef181e00758dd2e5d8a" - dependencies: - babel-plugin-transform-strict-mode "^6.24.1" - babel-runtime "^6.26.0" - babel-template "^6.26.0" - babel-types "^6.26.0" - -babel-plugin-transform-es2015-modules-systemjs@^6.23.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz#ff89a142b9119a906195f5f106ecf305d9407d23" - dependencies: - babel-helper-hoist-variables "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-modules-umd@^6.23.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz#ac997e6285cd18ed6176adb607d602344ad38468" - dependencies: - babel-plugin-transform-es2015-modules-amd "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-object-super@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz#24cef69ae21cb83a7f8603dad021f572eb278f8d" - dependencies: - babel-helper-replace-supers "^6.24.1" - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-parameters@^6.23.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz#57ac351ab49caf14a97cd13b09f66fdf0a625f2b" - dependencies: - babel-helper-call-delegate "^6.24.1" - babel-helper-get-function-arity "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-shorthand-properties@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz#24f875d6721c87661bbd99a4622e51f14de38aa0" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-spread@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz#d6d68a99f89aedc4536c81a542e8dd9f1746f8d1" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-sticky-regex@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz#00c1cdb1aca71112cdf0cf6126c2ed6b457ccdbc" - dependencies: - babel-helper-regex "^6.24.1" - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-template-literals@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz#a84b3450f7e9f8f1f6839d6d687da84bb1236d8d" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-typeof-symbol@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz#dec09f1cddff94b52ac73d505c84df59dcceb372" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-unicode-regex@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz#d38b12f42ea7323f729387f18a7c5ae1faeb35e9" - dependencies: - babel-helper-regex "^6.24.1" - babel-runtime "^6.22.0" - regexpu-core "^2.0.0" - -babel-plugin-transform-exponentiation-operator@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz#2ab0c9c7f3098fa48907772bb813fe41e8de3a0e" - dependencies: - babel-helper-builder-binary-assignment-operator-visitor "^6.24.1" - babel-plugin-syntax-exponentiation-operator "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-regenerator@^6.22.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz#e0703696fbde27f0a3efcacf8b4dca2f7b3a8f2f" - dependencies: - regenerator-transform "^0.10.0" - -babel-plugin-transform-strict-mode@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-preset-env@^1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/babel-preset-env/-/babel-preset-env-1.6.1.tgz#a18b564cc9b9afdf4aae57ae3c1b0d99188e6f48" - dependencies: - babel-plugin-check-es2015-constants "^6.22.0" - babel-plugin-syntax-trailing-function-commas "^6.22.0" - babel-plugin-transform-async-to-generator "^6.22.0" - babel-plugin-transform-es2015-arrow-functions "^6.22.0" - babel-plugin-transform-es2015-block-scoped-functions "^6.22.0" - babel-plugin-transform-es2015-block-scoping "^6.23.0" - babel-plugin-transform-es2015-classes "^6.23.0" - babel-plugin-transform-es2015-computed-properties "^6.22.0" - babel-plugin-transform-es2015-destructuring "^6.23.0" - babel-plugin-transform-es2015-duplicate-keys "^6.22.0" - babel-plugin-transform-es2015-for-of "^6.23.0" - babel-plugin-transform-es2015-function-name "^6.22.0" - babel-plugin-transform-es2015-literals "^6.22.0" - babel-plugin-transform-es2015-modules-amd "^6.22.0" - babel-plugin-transform-es2015-modules-commonjs "^6.23.0" - babel-plugin-transform-es2015-modules-systemjs "^6.23.0" - babel-plugin-transform-es2015-modules-umd "^6.23.0" - babel-plugin-transform-es2015-object-super "^6.22.0" - babel-plugin-transform-es2015-parameters "^6.23.0" - babel-plugin-transform-es2015-shorthand-properties "^6.22.0" - babel-plugin-transform-es2015-spread "^6.22.0" - babel-plugin-transform-es2015-sticky-regex "^6.22.0" - babel-plugin-transform-es2015-template-literals "^6.22.0" - babel-plugin-transform-es2015-typeof-symbol "^6.23.0" - babel-plugin-transform-es2015-unicode-regex "^6.22.0" - babel-plugin-transform-exponentiation-operator "^6.22.0" - babel-plugin-transform-regenerator "^6.22.0" - browserslist "^2.1.2" - invariant "^2.2.2" - semver "^5.3.0" - -babel-register@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071" - dependencies: - babel-core "^6.26.0" - babel-runtime "^6.26.0" - core-js "^2.5.0" - home-or-tmp "^2.0.0" - lodash "^4.17.4" - mkdirp "^0.5.1" - source-map-support "^0.4.15" - -babel-runtime@^6.18.0, babel-runtime@^6.22.0, babel-runtime@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" - dependencies: - core-js "^2.4.0" - regenerator-runtime "^0.11.0" - -babel-template@^6.24.1, babel-template@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" - dependencies: - babel-runtime "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - lodash "^4.17.4" - -babel-traverse@^6.24.1, babel-traverse@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" - dependencies: - babel-code-frame "^6.26.0" - babel-messages "^6.23.0" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - debug "^2.6.8" - globals "^9.18.0" - invariant "^2.2.2" - lodash "^4.17.4" - -babel-types@^6.19.0, babel-types@^6.24.1, babel-types@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" - dependencies: - babel-runtime "^6.26.0" - esutils "^2.0.2" - lodash "^4.17.4" - to-fast-properties "^1.0.3" - -babylon@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" - -balanced-match@^0.4.2: - version "0.4.2" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.4.2.tgz#cb3f3e3c732dc0f01ee70b403f302e61d7709838" - -balanced-match@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" - -base64-js@^1.0.2: - version "1.2.3" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.3.tgz#fb13668233d9614cf5fb4bce95a9ba4096cdf801" - -base64url@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/base64url/-/base64url-2.0.0.tgz#eac16e03ea1438eff9423d69baa36262ed1f70bb" - -base@^0.11.1: - version "0.11.2" - resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" - dependencies: - cache-base "^1.0.1" - class-utils "^0.3.5" - component-emitter "^1.2.1" - define-property "^1.0.0" - isobject "^3.0.1" - mixin-deep "^1.2.0" - pascalcase "^0.1.1" - -batch@0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16" - -bcrypt-pbkdf@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d" - dependencies: - tweetnacl "^0.14.3" - -big.js@^3.1.3: - version "3.2.0" - resolved "https://registry.yarnpkg.com/big.js/-/big.js-3.2.0.tgz#a5fc298b81b9e0dca2e458824784b65c52ba588e" - -binary-extensions@^1.0.0: - version "1.11.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.11.0.tgz#46aa1751fb6a2f93ee5e689bb1087d4b14c6c205" - -binstall@1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/binstall/-/binstall-1.2.0.tgz#6b2c0f580b9e3c607f50ef7a22a54ce9fdc8d933" - dependencies: - request "2.79.0" - tar "2.2.1" - -bl@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/bl/-/bl-1.1.2.tgz#fdca871a99713aa00d19e3bbba41c44787a65398" - dependencies: - readable-stream "~2.0.5" - -block-stream@*: - version "0.0.9" - resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a" - dependencies: - inherits "~2.0.0" - -bluebird@^2.9.24: - version "2.11.0" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-2.11.0.tgz#534b9033c022c9579c56ba3b3e5a5caafbb650e1" - -bluebird@^3.4.7, bluebird@^3.5.1: - version "3.5.1" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.1.tgz#d9551f9de98f1fcda1e683d17ee91a0602ee2eb9" - -bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: - version "4.11.8" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f" - -body-parser@1.18.2: - version "1.18.2" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.18.2.tgz#87678a19d84b47d859b83199bd59bce222b10454" - dependencies: - bytes "3.0.0" - content-type "~1.0.4" - debug "2.6.9" - depd "~1.1.1" - http-errors "~1.6.2" - iconv-lite "0.4.19" - on-finished "~2.3.0" - qs "6.5.1" - raw-body "2.3.2" - type-is "~1.6.15" - -bonjour@^3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/bonjour/-/bonjour-3.5.0.tgz#8e890a183d8ee9a2393b3844c691a42bcf7bc9f5" - dependencies: - array-flatten "^2.1.0" - deep-equal "^1.0.1" - dns-equal "^1.0.0" - dns-txt "^2.0.2" - multicast-dns "^6.0.1" - multicast-dns-service-types "^1.1.0" - -boolbase@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" - -boom@2.x.x: - version "2.10.1" - resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f" - dependencies: - hoek "2.x.x" - -boom@4.x.x: - version "4.3.1" - resolved "https://registry.yarnpkg.com/boom/-/boom-4.3.1.tgz#4f8a3005cb4a7e3889f749030fd25b96e01d2e31" - dependencies: - hoek "4.x.x" - -boom@5.x.x: - version "5.2.0" - resolved "https://registry.yarnpkg.com/boom/-/boom-5.2.0.tgz#5dd9da6ee3a5f302077436290cb717d3f4a54e02" - dependencies: - hoek "4.x.x" - -brace-expansion@^1.1.7: - version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" - dependencies: - balanced-match "^1.0.0" - concat-map "0.0.1" - -braces@^1.8.2: - version "1.8.5" - resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7" - dependencies: - expand-range "^1.8.1" - preserve "^0.2.0" - repeat-element "^1.1.2" - -braces@^2.3.0, braces@^2.3.1: - version "2.3.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" - dependencies: - arr-flatten "^1.1.0" - array-unique "^0.3.2" - extend-shallow "^2.0.1" - fill-range "^4.0.0" - isobject "^3.0.1" - repeat-element "^1.1.2" - snapdragon "^0.8.1" - snapdragon-node "^2.0.1" - split-string "^3.0.2" - to-regex "^3.0.1" - -brorand@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" - -browserify-aes@^1.0.0, browserify-aes@^1.0.4: - version "1.2.0" - resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" - dependencies: - buffer-xor "^1.0.3" - cipher-base "^1.0.0" - create-hash "^1.1.0" - evp_bytestokey "^1.0.3" - inherits "^2.0.1" - safe-buffer "^5.0.1" - -browserify-cipher@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0" - dependencies: - browserify-aes "^1.0.4" - browserify-des "^1.0.0" - evp_bytestokey "^1.0.0" - -browserify-des@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.1.tgz#3343124db6d7ad53e26a8826318712bdc8450f9c" - dependencies: - cipher-base "^1.0.1" - des.js "^1.0.0" - inherits "^2.0.1" - -browserify-rsa@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524" - dependencies: - bn.js "^4.1.0" - randombytes "^2.0.1" - -browserify-sign@^4.0.0: - version "4.0.4" - resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.0.4.tgz#aa4eb68e5d7b658baa6bf6a57e630cbd7a93d298" - dependencies: - bn.js "^4.1.1" - browserify-rsa "^4.0.0" - create-hash "^1.1.0" - create-hmac "^1.1.2" - elliptic "^6.0.0" - inherits "^2.0.1" - parse-asn1 "^5.0.0" - -browserify-zlib@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f" - dependencies: - pako "~1.0.5" - -browserslist@^1.3.6, browserslist@^1.5.2, browserslist@^1.7.6: - version "1.7.7" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-1.7.7.tgz#0bd76704258be829b2398bb50e4b62d1a166b0b9" - dependencies: - caniuse-db "^1.0.30000639" - electron-to-chromium "^1.2.7" - -browserslist@^2.1.2: - version "2.11.3" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-2.11.3.tgz#fe36167aed1bbcde4827ebfe71347a2cc70b99b2" - dependencies: - caniuse-lite "^1.0.30000792" - electron-to-chromium "^1.3.30" - -buffer-from@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.0.0.tgz#4cb8832d23612589b0406e9e2956c17f06fdf531" - -buffer-indexof@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/buffer-indexof/-/buffer-indexof-1.1.1.tgz#52fabcc6a606d1a00302802648ef68f639da268c" - -buffer-xor@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" - -buffer@^4.3.0: - version "4.9.1" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.1.tgz#6d1bb601b07a4efced97094132093027c95bc298" - dependencies: - base64-js "^1.0.2" - ieee754 "^1.1.4" - isarray "^1.0.0" - -builtin-modules@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" - -builtin-status-codes@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" - -bytes@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" - -cacache@^10.0.4: - version "10.0.4" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-10.0.4.tgz#6452367999eff9d4188aefd9a14e9d7c6a263460" - dependencies: - bluebird "^3.5.1" - chownr "^1.0.1" - glob "^7.1.2" - graceful-fs "^4.1.11" - lru-cache "^4.1.1" - mississippi "^2.0.0" - mkdirp "^0.5.1" - move-concurrently "^1.0.1" - promise-inflight "^1.0.1" - rimraf "^2.6.2" - ssri "^5.2.4" - unique-filename "^1.1.0" - y18n "^4.0.0" - -cache-base@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" - dependencies: - collection-visit "^1.0.0" - component-emitter "^1.2.1" - get-value "^2.0.6" - has-value "^1.0.0" - isobject "^3.0.1" - set-value "^2.0.0" - to-object-path "^0.3.0" - union-value "^1.0.0" - unset-value "^1.0.0" - -camel-case@3.0.x: - version "3.0.0" - resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-3.0.0.tgz#ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73" - dependencies: - no-case "^2.2.0" - upper-case "^1.1.1" - -camelcase-keys@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" - dependencies: - camelcase "^2.0.0" - map-obj "^1.0.0" - -camelcase@^1.0.2, camelcase@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39" - -camelcase@^2.0.0, camelcase@^2.0.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" - -camelcase@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" - -camelcase@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" - -caniuse-api@^1.5.2: - version "1.6.1" - resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-1.6.1.tgz#b534e7c734c4f81ec5fbe8aca2ad24354b962c6c" - dependencies: - browserslist "^1.3.6" - caniuse-db "^1.0.30000529" - lodash.memoize "^4.1.2" - lodash.uniq "^4.5.0" - -caniuse-db@^1.0.30000529, caniuse-db@^1.0.30000634, caniuse-db@^1.0.30000639: - version "1.0.30000827" - resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000827.tgz#bd2839dd196093b44c28c17f93513140c9d92588" - -caniuse-lite@^1.0.30000792: - version "1.0.30000827" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000827.tgz#2dad2354e4810c3c9bb1cfc57f655c270c25fa52" - -caseless@~0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7" - -caseless@~0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" - -center-align@^0.1.1: - version "0.1.3" - resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad" - dependencies: - align-text "^0.1.3" - lazy-cache "^1.0.3" - -chalk@2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.1.0.tgz#ac5becf14fa21b99c6c92ca7a7d7cfd5b17e743e" - dependencies: - ansi-styles "^3.1.0" - escape-string-regexp "^1.0.5" - supports-color "^4.0.0" - -chalk@^1.1.1, chalk@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" - dependencies: - ansi-styles "^2.2.1" - escape-string-regexp "^1.0.2" - has-ansi "^2.0.0" - strip-ansi "^3.0.0" - supports-color "^2.0.0" - -chalk@^2.3.0, chalk@^2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.3.2.tgz#250dc96b07491bfd601e648d66ddf5f60c7a5c65" - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - -chokidar-cli@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/chokidar-cli/-/chokidar-cli-1.2.0.tgz#8e7f58442273182018be1868e53c22af65a21948" - dependencies: - anymatch "^1.1.0" - bluebird "^2.9.24" - chokidar "^1.0.1" - lodash "^3.7.0" - shell-quote "^1.4.3" - yargs "^3.7.2" - -chokidar@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.6.0.tgz#90c32ad4802901d7713de532dc284e96a63ad058" - dependencies: - anymatch "^1.3.0" - async-each "^1.0.0" - glob-parent "^2.0.0" - inherits "^2.0.1" - is-binary-path "^1.0.0" - is-glob "^2.0.0" - path-is-absolute "^1.0.0" - readdirp "^2.0.0" - optionalDependencies: - fsevents "^1.0.0" - -chokidar@^1.0.1: - version "1.7.0" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.7.0.tgz#798e689778151c8076b4b360e5edd28cda2bb468" - dependencies: - anymatch "^1.3.0" - async-each "^1.0.0" - glob-parent "^2.0.0" - inherits "^2.0.1" - is-binary-path "^1.0.0" - is-glob "^2.0.0" - path-is-absolute "^1.0.0" - readdirp "^2.0.0" - optionalDependencies: - fsevents "^1.0.0" - -chokidar@^2.0.0, chokidar@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.0.3.tgz#dcbd4f6cbb2a55b4799ba8a840ac527e5f4b1176" - dependencies: - anymatch "^2.0.0" - async-each "^1.0.0" - braces "^2.3.0" - glob-parent "^3.1.0" - inherits "^2.0.1" - is-binary-path "^1.0.0" - is-glob "^4.0.0" - normalize-path "^2.1.1" - path-is-absolute "^1.0.0" - readdirp "^2.0.0" - upath "^1.0.0" - optionalDependencies: - fsevents "^1.1.2" - -chownr@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.0.1.tgz#e2a75042a9551908bebd25b8523d5f9769d79181" - -cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -clap@^1.0.9: - version "1.2.3" - resolved "https://registry.yarnpkg.com/clap/-/clap-1.2.3.tgz#4f36745b32008492557f46412d66d50cb99bce51" - dependencies: - chalk "^1.1.3" - -class-utils@^0.3.5: - version "0.3.6" - resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" - dependencies: - arr-union "^3.1.0" - define-property "^0.2.5" - isobject "^3.0.0" - static-extend "^0.1.1" - -clean-css@4.1.x: - version "4.1.11" - resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.1.11.tgz#2ecdf145aba38f54740f26cefd0ff3e03e125d6a" - dependencies: - source-map "0.5.x" - -clean-webpack-plugin@^0.1.17: - version "0.1.19" - resolved "https://registry.yarnpkg.com/clean-webpack-plugin/-/clean-webpack-plugin-0.1.19.tgz#ceda8bb96b00fe168e9b080272960d20fdcadd6d" - dependencies: - rimraf "^2.6.1" - -cliui@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-2.1.0.tgz#4b475760ff80264c762c3a1719032e91c7fea0d1" - dependencies: - center-align "^0.1.1" - right-align "^0.1.1" - wordwrap "0.0.2" - -cliui@^3.0.3, cliui@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" - dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" - wrap-ansi "^2.0.0" - -cliui@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-4.0.0.tgz#743d4650e05f36d1ed2575b59638d87322bfbbcc" - dependencies: - string-width "^2.1.1" - strip-ansi "^4.0.0" - wrap-ansi "^2.0.0" - -clone@^1.0.2: - version "1.0.4" - resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" - -co@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" - -coa@~1.0.1: - version "1.0.4" - resolved "https://registry.yarnpkg.com/coa/-/coa-1.0.4.tgz#a9ef153660d6a86a8bdec0289a5c684d217432fd" - dependencies: - q "^1.1.2" - -code-point-at@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" - -collection-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" - dependencies: - map-visit "^1.0.0" - object-visit "^1.0.0" - -color-convert@^1.3.0, color-convert@^1.9.0: - version "1.9.1" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.1.tgz#c1261107aeb2f294ebffec9ed9ecad529a6097ed" - dependencies: - color-name "^1.1.1" - -color-convert@~0.5.0: - version "0.5.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-0.5.3.tgz#bdb6c69ce660fadffe0b0007cc447e1b9f7282bd" - -color-name@^1.0.0, color-name@^1.1.1: - version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - -color-string@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/color-string/-/color-string-0.3.0.tgz#27d46fb67025c5c2fa25993bfbf579e47841b991" - dependencies: - color-name "^1.0.0" - -color@^0.11.0: - version "0.11.4" - resolved "https://registry.yarnpkg.com/color/-/color-0.11.4.tgz#6d7b5c74fb65e841cd48792ad1ed5e07b904d764" - dependencies: - clone "^1.0.2" - color-convert "^1.3.0" - color-string "^0.3.0" - -colormin@^1.0.5: - version "1.1.2" - resolved "https://registry.yarnpkg.com/colormin/-/colormin-1.1.2.tgz#ea2f7420a72b96881a38aae59ec124a6f7298133" - dependencies: - color "^0.11.0" - css-color-names "0.0.4" - has "^1.0.1" - -colors@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63" - -combined-stream@1.0.6, combined-stream@^1.0.5, combined-stream@~1.0.5: - version "1.0.6" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.6.tgz#723e7df6e801ac5613113a7e445a9b69cb632818" - dependencies: - delayed-stream "~1.0.0" - -commander@2.11.0: - version "2.11.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.11.0.tgz#157152fd1e7a6c8d98a5b715cf376df928004563" - -commander@2.15.x, commander@^2.9.0, commander@~2.15.0: - version "2.15.1" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.15.1.tgz#df46e867d0fc2aec66a34662b406a9ccafff5b0f" - -commander@~2.13.0: - version "2.13.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.13.0.tgz#6964bca67685df7c1f1430c584f07d7597885b9c" - -commondir@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" - -component-emitter@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" - -compressible@~2.0.13: - version "2.0.13" - resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.13.tgz#0d1020ab924b2fdb4d6279875c7d6daba6baa7a9" - dependencies: - mime-db ">= 1.33.0 < 2" - -compression@^1.5.2: - version "1.7.2" - resolved "http://registry.npmjs.org/compression/-/compression-1.7.2.tgz#aaffbcd6aaf854b44ebb280353d5ad1651f59a69" - dependencies: - accepts "~1.3.4" - bytes "3.0.0" - compressible "~2.0.13" - debug "2.6.9" - on-headers "~1.0.1" - safe-buffer "5.1.1" - vary "~1.1.2" - -concat-map@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - -concat-stream@^1.5.0: - version "1.6.2" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" - dependencies: - buffer-from "^1.0.0" - inherits "^2.0.3" - readable-stream "^2.2.2" - typedarray "^0.0.6" - -connect-history-api-fallback@^1.3.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz#b06873934bc5e344fef611a196a6faae0aee015a" - -console-browserify@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10" - dependencies: - date-now "^0.1.4" - -console-control-strings@^1.0.0, console-control-strings@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" - -constants-browserify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" - -content-disposition@0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4" - -content-type@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" - -convert-source-map@^0.3.3: - version "0.3.5" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-0.3.5.tgz#f1d802950af7dd2631a1febe0596550c86ab3190" - -convert-source-map@^1.5.0, convert-source-map@^1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.1.tgz#b8278097b9bc229365de5c62cf5fcaed8b5599e5" - -cookie-signature@1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" - -cookie@0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" - -copy-concurrently@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" - dependencies: - aproba "^1.1.1" - fs-write-stream-atomic "^1.0.8" - iferr "^0.1.5" - mkdirp "^0.5.1" - rimraf "^2.5.4" - run-queue "^1.0.0" - -copy-descriptor@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" - -copy-webpack-plugin@^4.2.3: - version "4.5.1" - resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-4.5.1.tgz#fc4f68f4add837cc5e13d111b20715793225d29c" - dependencies: - cacache "^10.0.4" - find-cache-dir "^1.0.0" - globby "^7.1.1" - is-glob "^4.0.0" - loader-utils "^1.1.0" - minimatch "^3.0.4" - p-limit "^1.0.0" - serialize-javascript "^1.4.0" - -core-js@^2.4.0, core-js@^2.5.0: - version "2.5.5" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.5.tgz#b14dde936c640c0579a6b50cabcc132dd6127e3b" - -core-util-is@1.0.2, core-util-is@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" - -cosmiconfig@^2.1.0, cosmiconfig@^2.1.1: - version "2.2.2" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-2.2.2.tgz#6173cebd56fac042c1f4390edf7af6c07c7cb892" - dependencies: - is-directory "^0.3.1" - js-yaml "^3.4.3" - minimist "^1.2.0" - object-assign "^4.1.0" - os-homedir "^1.0.1" - parse-json "^2.2.0" - require-from-string "^1.1.0" - -create-ecdh@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.1.tgz#44223dfed533193ba5ba54e0df5709b89acf1f82" - dependencies: - bn.js "^4.1.0" - elliptic "^6.0.0" - -create-hash@^1.1.0, create-hash@^1.1.2: - version "1.2.0" - resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" - dependencies: - cipher-base "^1.0.1" - inherits "^2.0.1" - md5.js "^1.3.4" - ripemd160 "^2.0.1" - sha.js "^2.4.0" - -create-hmac@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4: - version "1.1.7" - resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" - dependencies: - cipher-base "^1.0.3" - create-hash "^1.1.0" - inherits "^2.0.1" - ripemd160 "^2.0.0" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - -cross-spawn@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-4.0.0.tgz#8254774ab4786b8c5b3cf4dfba66ce563932c252" - dependencies: - lru-cache "^4.0.1" - which "^1.2.9" - -cross-spawn@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-3.0.1.tgz#1256037ecb9f0c5f79e3d6ef135e30770184b982" - dependencies: - lru-cache "^4.0.1" - which "^1.2.9" - -cross-spawn@^5.0.1: - version "5.1.0" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" - dependencies: - lru-cache "^4.0.1" - shebang-command "^1.2.0" - which "^1.2.9" - -cryptiles@2.x.x: - version "2.0.5" - resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8" - dependencies: - boom "2.x.x" - -cryptiles@3.x.x: - version "3.1.2" - resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-3.1.2.tgz#a89fbb220f5ce25ec56e8c4aa8a4fd7b5b0d29fe" - dependencies: - boom "5.x.x" - -crypto-browserify@^3.11.0: - version "3.12.0" - resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" - dependencies: - browserify-cipher "^1.0.0" - browserify-sign "^4.0.0" - create-ecdh "^4.0.0" - create-hash "^1.1.0" - create-hmac "^1.1.0" - diffie-hellman "^5.0.0" - inherits "^2.0.1" - pbkdf2 "^3.0.3" - public-encrypt "^4.0.0" - randombytes "^2.0.0" - randomfill "^1.0.3" - -css-color-names@0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0" - -css-loader@^0.28.7: - version "0.28.11" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-0.28.11.tgz#c3f9864a700be2711bb5a2462b2389b1a392dab7" - dependencies: - babel-code-frame "^6.26.0" - css-selector-tokenizer "^0.7.0" - cssnano "^3.10.0" - icss-utils "^2.1.0" - loader-utils "^1.0.2" - lodash.camelcase "^4.3.0" - object-assign "^4.1.1" - postcss "^5.0.6" - postcss-modules-extract-imports "^1.2.0" - postcss-modules-local-by-default "^1.2.0" - postcss-modules-scope "^1.1.0" - postcss-modules-values "^1.3.0" - postcss-value-parser "^3.3.0" - source-list-map "^2.0.0" - -css-select@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858" - dependencies: - boolbase "~1.0.0" - css-what "2.1" - domutils "1.5.1" - nth-check "~1.0.1" - -css-selector-tokenizer@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/css-selector-tokenizer/-/css-selector-tokenizer-0.7.0.tgz#e6988474ae8c953477bf5e7efecfceccd9cf4c86" - dependencies: - cssesc "^0.1.0" - fastparse "^1.1.1" - regexpu-core "^1.0.0" - -css-what@2.1: - version "2.1.0" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.0.tgz#9467d032c38cfaefb9f2d79501253062f87fa1bd" - -css@^2.0.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/css/-/css-2.2.1.tgz#73a4c81de85db664d4ee674f7d47085e3b2d55dc" - dependencies: - inherits "^2.0.1" - source-map "^0.1.38" - source-map-resolve "^0.3.0" - urix "^0.1.0" - -cssesc@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-0.1.0.tgz#c814903e45623371a0477b40109aaafbeeaddbb4" - -cssnano@^3.10.0: - version "3.10.0" - resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-3.10.0.tgz#4f38f6cea2b9b17fa01490f23f1dc68ea65c1c38" - dependencies: - autoprefixer "^6.3.1" - decamelize "^1.1.2" - defined "^1.0.0" - has "^1.0.1" - object-assign "^4.0.1" - postcss "^5.0.14" - postcss-calc "^5.2.0" - postcss-colormin "^2.1.8" - postcss-convert-values "^2.3.4" - postcss-discard-comments "^2.0.4" - postcss-discard-duplicates "^2.0.1" - postcss-discard-empty "^2.0.1" - postcss-discard-overridden "^0.1.1" - postcss-discard-unused "^2.2.1" - postcss-filter-plugins "^2.0.0" - postcss-merge-idents "^2.1.5" - postcss-merge-longhand "^2.0.1" - postcss-merge-rules "^2.0.3" - postcss-minify-font-values "^1.0.2" - postcss-minify-gradients "^1.0.1" - postcss-minify-params "^1.0.4" - postcss-minify-selectors "^2.0.4" - postcss-normalize-charset "^1.1.0" - postcss-normalize-url "^3.0.7" - postcss-ordered-values "^2.1.0" - postcss-reduce-idents "^2.2.2" - postcss-reduce-initial "^1.0.0" - postcss-reduce-transforms "^1.0.3" - postcss-svgo "^2.1.1" - postcss-unique-selectors "^2.0.2" - postcss-value-parser "^3.2.3" - postcss-zindex "^2.0.1" - -csso@~2.3.1: - version "2.3.2" - resolved "https://registry.yarnpkg.com/csso/-/csso-2.3.2.tgz#ddd52c587033f49e94b71fc55569f252e8ff5f85" - dependencies: - clap "^1.0.9" - source-map "^0.5.3" - -currently-unhandled@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" - dependencies: - array-find-index "^1.0.1" - -cyclist@~0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-0.2.2.tgz#1b33792e11e914a2fd6d6ed6447464444e5fa640" - -d@1: - version "1.0.0" - resolved "https://registry.yarnpkg.com/d/-/d-1.0.0.tgz#754bb5bfe55451da69a58b94d45f4c5b0462d58f" - dependencies: - es5-ext "^0.10.9" - -dashdash@^1.12.0: - version "1.14.1" - resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" - dependencies: - assert-plus "^1.0.0" - -date-now@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b" - -debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.6, debug@^2.6.8: - version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" - dependencies: - ms "2.0.0" - -debug@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" - dependencies: - ms "2.0.0" - -decamelize@^1.0.0, decamelize@^1.1.1, decamelize@^1.1.2: - version "1.2.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" - -decode-uri-component@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" - -deep-equal@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" - -deep-extend@~0.4.0: - version "0.4.2" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.2.tgz#48b699c27e334bf89f10892be432f6e4c7d34a7f" - -define-properties@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94" - dependencies: - foreach "^2.0.5" - object-keys "^1.0.8" - -define-property@^0.2.5: - version "0.2.5" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" - dependencies: - is-descriptor "^0.1.0" - -define-property@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" - dependencies: - is-descriptor "^1.0.0" - -define-property@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" - dependencies: - is-descriptor "^1.0.2" - isobject "^3.0.1" - -defined@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693" - -del@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/del/-/del-3.0.0.tgz#53ecf699ffcbcb39637691ab13baf160819766e5" - dependencies: - globby "^6.1.0" - is-path-cwd "^1.0.0" - is-path-in-cwd "^1.0.0" - p-map "^1.1.1" - pify "^3.0.0" - rimraf "^2.2.8" - -delayed-stream@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" - -delegates@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" - -depd@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.1.tgz#5783b4e1c459f06fa5ca27f991f3d06e7a310359" - -depd@~1.1.1, depd@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" - -des.js@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.0.tgz#c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc" - dependencies: - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - -destroy@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" - -detect-indent@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" - dependencies: - repeating "^2.0.0" - -detect-libc@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" - -detect-node@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.3.tgz#a2033c09cc8e158d37748fbde7507832bd6ce127" - -diffie-hellman@^5.0.0: - version "5.0.3" - resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875" - dependencies: - bn.js "^4.1.0" - miller-rabin "^4.0.0" - randombytes "^2.0.0" - -dir-glob@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.0.0.tgz#0b205d2b6aef98238ca286598a8204d29d0a0034" - dependencies: - arrify "^1.0.1" - path-type "^3.0.0" - -dns-equal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/dns-equal/-/dns-equal-1.0.0.tgz#b39e7f1da6eb0a75ba9c17324b34753c47e0654d" - -dns-packet@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-1.3.1.tgz#12aa426981075be500b910eedcd0b47dd7deda5a" - dependencies: - ip "^1.1.0" - safe-buffer "^5.0.1" - -dns-txt@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/dns-txt/-/dns-txt-2.0.2.tgz#b91d806f5d27188e4ab3e7d107d881a1cc4642b6" - dependencies: - buffer-indexof "^1.0.0" - -dom-converter@~0.1: - version "0.1.4" - resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.1.4.tgz#a45ef5727b890c9bffe6d7c876e7b19cb0e17f3b" - dependencies: - utila "~0.3" - -dom-serializer@0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.0.tgz#073c697546ce0780ce23be4a28e293e40bc30c82" - dependencies: - domelementtype "~1.1.1" - entities "~1.1.1" - -domain-browser@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" - -domelementtype@1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.0.tgz#b17aed82e8ab59e52dd9c19b1756e0fc187204c2" - -domelementtype@~1.1.1: - version "1.1.3" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b" - -domhandler@2.1: - version "2.1.0" - resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.1.0.tgz#d2646f5e57f6c3bab11cf6cb05d3c0acf7412594" - dependencies: - domelementtype "1" - -domutils@1.1: - version "1.1.6" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.1.6.tgz#bddc3de099b9a2efacc51c623f28f416ecc57485" - dependencies: - domelementtype "1" - -domutils@1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf" - dependencies: - dom-serializer "0" - domelementtype "1" - -duplexify@^3.4.2, duplexify@^3.5.3: - version "3.5.4" - resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.5.4.tgz#4bb46c1796eabebeec4ca9a2e66b808cb7a3d8b4" - dependencies: - end-of-stream "^1.0.0" - inherits "^2.0.1" - readable-stream "^2.0.0" - stream-shift "^1.0.0" - -ecc-jsbn@~0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" - dependencies: - jsbn "~0.1.0" - -ee-first@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" - -electron-to-chromium@^1.2.7, electron-to-chromium@^1.3.30: - version "1.3.42" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.42.tgz#95c33bf01d0cc405556aec899fe61fd4d76ea0f9" - -elliptic@^6.0.0: - version "6.4.0" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.0.tgz#cac9af8762c85836187003c8dfe193e5e2eae5df" - dependencies: - bn.js "^4.4.0" - brorand "^1.0.1" - hash.js "^1.0.0" - hmac-drbg "^1.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.0" - -elm-hot-loader@^0.5.4: - version "0.5.4" - resolved "https://registry.yarnpkg.com/elm-hot-loader/-/elm-hot-loader-0.5.4.tgz#5fd9d9058f6efeac2f5fcf83aeef81cf3984312e" - dependencies: - loader-utils "^0.2.12" - -elm-test@^0.18.12: - version "0.18.12" - resolved "https://registry.yarnpkg.com/elm-test/-/elm-test-0.18.12.tgz#8586a056980eb383fd35ad2ef2b74a6ee4c410f7" - dependencies: - binstall "1.2.0" - chalk "2.1.0" - chokidar "1.6.0" - cross-spawn "4.0.0" - find-parent-dir "^0.3.0" - firstline "1.2.1" - fs-extra "0.30.0" - glob "^7.1.1" - lodash "4.13.1" - minimist "^1.2.0" - murmur-hash-js "1.0.0" - node-elm-compiler "4.3.3" - split "^1.0.1" - supports-color "4.2.0" - xmlbuilder "^8.2.2" - optionalDependencies: - fsevents "1.1.2" - -elm-verify-examples@^2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/elm-verify-examples/-/elm-verify-examples-2.3.1.tgz#39b197d605a2965325ef2805bcdeb6682bb0c7ff" - dependencies: - chalk "^2.3.0" - elm-test "^0.18.12" - fs-extra "^5.0.0" - mkdirp "^0.5.1" - rimraf "^2.6.2" - yargs "^10.0.3" - -elm-webpack-loader@^4.4.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/elm-webpack-loader/-/elm-webpack-loader-4.5.0.tgz#b39988ac7c70db3c0922daf695c97d1d6bdb1e41" - dependencies: - elm "^0.18.0" - glob "^7.1.1" - loader-utils "^1.0.2" - node-elm-compiler "^4.5.0" - yargs "^6.5.0" - -elm@^0.18.0: - version "0.18.0" - resolved "https://registry.yarnpkg.com/elm/-/elm-0.18.0.tgz#919b8309cd939dfe2ff9d252d961b6c89509b970" - dependencies: - mkdirp "0.5.1" - promise "7.1.1" - request "2.74.0" - tar "2.2.1" - -emojis-list@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" - -encodeurl@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" - -end-of-stream@^1.0.0, end-of-stream@^1.1.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43" - dependencies: - once "^1.4.0" - -enhanced-resolve@^3.4.0: - version "3.4.1" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-3.4.1.tgz#0421e339fd71419b3da13d129b3979040230476e" - dependencies: - graceful-fs "^4.1.2" - memory-fs "^0.4.0" - object-assign "^4.0.1" - tapable "^0.2.7" - -entities@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.1.tgz#6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0" - -errno@^0.1.3, errno@~0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.7.tgz#4684d71779ad39af177e3f007996f7c67c852618" - dependencies: - prr "~1.0.1" - -error-ex@^1.2.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc" - dependencies: - is-arrayish "^0.2.1" - -es-abstract@^1.7.0: - version "1.11.0" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.11.0.tgz#cce87d518f0496893b1a30cd8461835535480681" - dependencies: - es-to-primitive "^1.1.1" - function-bind "^1.1.1" - has "^1.0.1" - is-callable "^1.1.3" - is-regex "^1.0.4" - -es-to-primitive@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.1.1.tgz#45355248a88979034b6792e19bb81f2b7975dd0d" - dependencies: - is-callable "^1.1.1" - is-date-object "^1.0.1" - is-symbol "^1.0.1" - -es5-ext@^0.10.14, es5-ext@^0.10.35, es5-ext@^0.10.9, es5-ext@~0.10.14: - version "0.10.42" - resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.42.tgz#8c07dd33af04d5dcd1310b5cef13bea63a89ba8d" - dependencies: - es6-iterator "~2.0.3" - es6-symbol "~3.1.1" - next-tick "1" - -es6-iterator@^2.0.1, es6-iterator@~2.0.1, es6-iterator@~2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" - dependencies: - d "1" - es5-ext "^0.10.35" - es6-symbol "^3.1.1" - -es6-map@^0.1.3: - version "0.1.5" - resolved "https://registry.yarnpkg.com/es6-map/-/es6-map-0.1.5.tgz#9136e0503dcc06a301690f0bb14ff4e364e949f0" - dependencies: - d "1" - es5-ext "~0.10.14" - es6-iterator "~2.0.1" - es6-set "~0.1.5" - es6-symbol "~3.1.1" - event-emitter "~0.3.5" - -es6-set@~0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/es6-set/-/es6-set-0.1.5.tgz#d2b3ec5d4d800ced818db538d28974db0a73ccb1" - dependencies: - d "1" - es5-ext "~0.10.14" - es6-iterator "~2.0.1" - es6-symbol "3.1.1" - event-emitter "~0.3.5" - -es6-symbol@3.1.1, es6-symbol@^3.1.1, es6-symbol@~3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.1.tgz#bf00ef4fdab6ba1b46ecb7b629b4c7ed5715cc77" - dependencies: - d "1" - es5-ext "~0.10.14" - -es6-weak-map@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.2.tgz#5e3ab32251ffd1538a1f8e5ffa1357772f92d96f" - dependencies: - d "1" - es5-ext "^0.10.14" - es6-iterator "^2.0.1" - es6-symbol "^3.1.1" - -escape-html@~1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" - -escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - -escope@^3.6.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/escope/-/escope-3.6.0.tgz#e01975e812781a163a6dadfdd80398dc64c889c3" - dependencies: - es6-map "^0.1.3" - es6-weak-map "^2.0.1" - esrecurse "^4.1.0" - estraverse "^4.1.1" - -esprima@^2.6.0: - version "2.7.3" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581" - -esprima@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.0.tgz#4499eddcd1110e0b218bacf2fa7f7f59f55ca804" - -esrecurse@^4.1.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf" - dependencies: - estraverse "^4.1.0" - -estraverse@^4.1.0, estraverse@^4.1.1: - version "4.2.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" - -esutils@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" - -etag@~1.8.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" - -event-emitter@~0.3.5: - version "0.3.5" - resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39" - dependencies: - d "1" - es5-ext "~0.10.14" - -eventemitter3@1.x.x: - version "1.2.0" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-1.2.0.tgz#1c86991d816ad1e504750e73874224ecf3bec508" - -events@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924" - -eventsource@0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-0.1.6.tgz#0acede849ed7dd1ccc32c811bb11b944d4f29232" - dependencies: - original ">=0.0.5" - -evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" - dependencies: - md5.js "^1.3.4" - safe-buffer "^5.1.1" - -execa@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777" - dependencies: - cross-spawn "^5.0.1" - get-stream "^3.0.0" - is-stream "^1.1.0" - npm-run-path "^2.0.0" - p-finally "^1.0.0" - signal-exit "^3.0.0" - strip-eof "^1.0.0" - -expand-brackets@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" - dependencies: - is-posix-bracket "^0.1.0" - -expand-brackets@^2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" - dependencies: - debug "^2.3.3" - define-property "^0.2.5" - extend-shallow "^2.0.1" - posix-character-classes "^0.1.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -expand-range@^1.8.1: - version "1.8.2" - resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" - dependencies: - fill-range "^2.1.0" - -express@^4.16.2: - version "4.16.3" - resolved "https://registry.yarnpkg.com/express/-/express-4.16.3.tgz#6af8a502350db3246ecc4becf6b5a34d22f7ed53" - dependencies: - accepts "~1.3.5" - array-flatten "1.1.1" - body-parser "1.18.2" - content-disposition "0.5.2" - content-type "~1.0.4" - cookie "0.3.1" - cookie-signature "1.0.6" - debug "2.6.9" - depd "~1.1.2" - encodeurl "~1.0.2" - escape-html "~1.0.3" - etag "~1.8.1" - finalhandler "1.1.1" - fresh "0.5.2" - merge-descriptors "1.0.1" - methods "~1.1.2" - on-finished "~2.3.0" - parseurl "~1.3.2" - path-to-regexp "0.1.7" - proxy-addr "~2.0.3" - qs "6.5.1" - range-parser "~1.2.0" - safe-buffer "5.1.1" - send "0.16.2" - serve-static "1.13.2" - setprototypeof "1.1.0" - statuses "~1.4.0" - type-is "~1.6.16" - utils-merge "1.0.1" - vary "~1.1.2" - -extend-shallow@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" - dependencies: - is-extendable "^0.1.0" - -extend-shallow@^3.0.0, extend-shallow@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" - dependencies: - assign-symbols "^1.0.0" - is-extendable "^1.0.1" - -extend@~3.0.0, extend@~3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444" - -extglob@^0.3.1: - version "0.3.2" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" - dependencies: - is-extglob "^1.0.0" - -extglob@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" - dependencies: - array-unique "^0.3.2" - define-property "^1.0.0" - expand-brackets "^2.1.4" - extend-shallow "^2.0.1" - fragment-cache "^0.2.1" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -extract-text-webpack-plugin@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extract-text-webpack-plugin/-/extract-text-webpack-plugin-3.0.2.tgz#5f043eaa02f9750a9258b78c0a6e0dc1408fb2f7" - dependencies: - async "^2.4.1" - loader-utils "^1.1.0" - schema-utils "^0.3.0" - webpack-sources "^1.0.1" - -extsprintf@1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" - -extsprintf@^1.2.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" - -fast-deep-equal@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz#c053477817c86b51daa853c81e059b733d023614" - -fast-json-stable-stringify@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" - -fastparse@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/fastparse/-/fastparse-1.1.1.tgz#d1e2643b38a94d7583b479060e6c4affc94071f8" - -faye-websocket@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" - dependencies: - websocket-driver ">=0.5.1" - -faye-websocket@~0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.1.tgz#f0efe18c4f56e4f40afc7e06c719fd5ee6188f38" - dependencies: - websocket-driver ">=0.5.1" - -file-loader@^1.1.5: - version "1.1.11" - resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-1.1.11.tgz#6fe886449b0f2a936e43cabaac0cdbfb369506f8" - dependencies: - loader-utils "^1.0.2" - schema-utils "^0.4.5" - -filename-regex@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26" - -fill-range@^2.1.0: - version "2.2.3" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.3.tgz#50b77dfd7e469bc7492470963699fe7a8485a723" - dependencies: - is-number "^2.1.0" - isobject "^2.0.0" - randomatic "^1.1.3" - repeat-element "^1.1.2" - repeat-string "^1.5.2" - -fill-range@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" - dependencies: - extend-shallow "^2.0.1" - is-number "^3.0.0" - repeat-string "^1.6.1" - to-regex-range "^2.1.0" - -finalhandler@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.1.tgz#eebf4ed840079c83f4249038c9d703008301b105" - dependencies: - debug "2.6.9" - encodeurl "~1.0.2" - escape-html "~1.0.3" - on-finished "~2.3.0" - parseurl "~1.3.2" - statuses "~1.4.0" - unpipe "~1.0.0" - -find-cache-dir@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-1.0.0.tgz#9288e3e9e3cc3748717d39eade17cf71fc30ee6f" - dependencies: - commondir "^1.0.1" - make-dir "^1.0.0" - pkg-dir "^2.0.0" - -find-elm-dependencies@1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/find-elm-dependencies/-/find-elm-dependencies-1.0.2.tgz#737adc0ce34dfde0c3bf85f568658555329e4953" - dependencies: - firstline "1.2.0" - lodash "4.14.2" - -find-parent-dir@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/find-parent-dir/-/find-parent-dir-0.3.0.tgz#33c44b429ab2b2f0646299c5f9f718f376ff8d54" - -find-up@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" - dependencies: - path-exists "^2.0.0" - pinkie-promise "^2.0.0" - -find-up@^2.0.0, find-up@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" - dependencies: - locate-path "^2.0.0" - -firstline@1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/firstline/-/firstline-1.2.0.tgz#c9f4886e7f7fbf0afc12d71941dce06b192aea05" - -firstline@1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/firstline/-/firstline-1.2.1.tgz#b88673c42009f8821fac2926e99720acee924fae" - -flatten@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.2.tgz#dae46a9d78fbe25292258cc1e780a41d95c03782" - -flush-write-stream@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.0.3.tgz#c5d586ef38af6097650b49bc41b55fabb19f35bd" - dependencies: - inherits "^2.0.1" - readable-stream "^2.0.4" - -for-in@^1.0.1, for-in@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" - -for-own@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce" - dependencies: - for-in "^1.0.1" - -foreach@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99" - -forever-agent@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" - -form-data@~1.0.0-rc4: - version "1.0.1" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-1.0.1.tgz#ae315db9a4907fa065502304a66d7733475ee37c" - dependencies: - async "^2.0.1" - combined-stream "^1.0.5" - mime-types "^2.1.11" - -form-data@~2.1.1: - version "2.1.4" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.4.tgz#33c183acf193276ecaa98143a69e94bfee1750d1" - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.5" - mime-types "^2.1.12" - -form-data@~2.3.1: - version "2.3.2" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.2.tgz#4970498be604c20c005d4f5c23aecd21d6b49099" - dependencies: - asynckit "^0.4.0" - combined-stream "1.0.6" - mime-types "^2.1.12" - -forwarded@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" - -fragment-cache@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" - dependencies: - map-cache "^0.2.2" - -fresh@0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" - -from2@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" - dependencies: - inherits "^2.0.1" - readable-stream "^2.0.0" - -fs-extra@0.30.0: - version "0.30.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-0.30.0.tgz#f233ffcc08d4da7d432daa449776989db1df93f0" - dependencies: - graceful-fs "^4.1.2" - jsonfile "^2.1.0" - klaw "^1.0.0" - path-is-absolute "^1.0.0" - rimraf "^2.2.8" - -fs-extra@^4.0.2: - version "4.0.3" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-4.0.3.tgz#0d852122e5bc5beb453fb028e9c0c9bf36340c94" - dependencies: - graceful-fs "^4.1.2" - jsonfile "^4.0.0" - universalify "^0.1.0" - -fs-extra@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-5.0.0.tgz#414d0110cdd06705734d055652c5411260c31abd" - dependencies: - graceful-fs "^4.1.2" - jsonfile "^4.0.0" - universalify "^0.1.0" - -fs-write-stream-atomic@^1.0.8: - version "1.0.10" - resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" - dependencies: - graceful-fs "^4.1.2" - iferr "^0.1.5" - imurmurhash "^0.1.4" - readable-stream "1 || 2" - -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - -fsevents@1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.2.tgz#3282b713fb3ad80ede0e9fcf4611b5aa6fc033f4" - dependencies: - nan "^2.3.0" - node-pre-gyp "^0.6.36" - -fsevents@^1.0.0, fsevents@^1.1.2: - version "1.1.3" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.3.tgz#11f82318f5fe7bb2cd22965a108e9306208216d8" - dependencies: - nan "^2.3.0" - node-pre-gyp "^0.6.39" - -fstream-ignore@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/fstream-ignore/-/fstream-ignore-1.0.5.tgz#9c31dae34767018fe1d249b24dada67d092da105" - dependencies: - fstream "^1.0.0" - inherits "2" - minimatch "^3.0.0" - -fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2: - version "1.0.11" - resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.11.tgz#5c1fb1f117477114f0632a0eb4b71b3cb0fd3171" - dependencies: - graceful-fs "^4.1.2" - inherits "~2.0.0" - mkdirp ">=0.5 0" - rimraf "2" - -function-bind@^1.0.2, function-bind@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" - -gauge@~2.7.3: - version "2.7.4" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" - dependencies: - aproba "^1.0.3" - console-control-strings "^1.0.0" - has-unicode "^2.0.0" - object-assign "^4.1.0" - signal-exit "^3.0.0" - string-width "^1.0.1" - strip-ansi "^3.0.1" - wide-align "^1.1.0" - -gaze@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/gaze/-/gaze-1.1.2.tgz#847224677adb8870d679257ed3388fdb61e40105" - dependencies: - globule "^1.0.0" - -generate-function@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.0.0.tgz#6858fe7c0969b7d4e9093337647ac79f60dfbe74" - -generate-object-property@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz#9c0e1c40308ce804f4783618b937fa88f99d50d0" - dependencies: - is-property "^1.0.0" - -get-caller-file@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.2.tgz#f702e63127e7e231c160a80c1554acb70d5047e5" - -get-stdin@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" - -get-stream@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" - -get-value@^2.0.3, get-value@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" - -getpass@^0.1.1: - version "0.1.7" - resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" - dependencies: - assert-plus "^1.0.0" - -gh-pages@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/gh-pages/-/gh-pages-1.1.0.tgz#738134d8e35e5323b39892cda28b8904e85f24b2" - dependencies: - async "2.6.0" - base64url "^2.0.0" - commander "2.11.0" - fs-extra "^4.0.2" - globby "^6.1.0" - graceful-fs "4.1.11" - rimraf "^2.6.2" - -glob-base@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" - dependencies: - glob-parent "^2.0.0" - is-glob "^2.0.0" - -glob-parent@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28" - dependencies: - is-glob "^2.0.0" - -glob-parent@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" - dependencies: - is-glob "^3.1.0" - path-dirname "^1.0.0" - -glob@^6.0.4: - version "6.0.4" - resolved "https://registry.yarnpkg.com/glob/-/glob-6.0.4.tgz#0f08860f6a155127b2fadd4f9ce24b1aab6e4d22" - dependencies: - inflight "^1.0.4" - inherits "2" - minimatch "2 || 3" - once "^1.3.0" - path-is-absolute "^1.0.0" - -glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2, glob@~7.1.1: - version "7.1.2" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - -globals@^9.18.0: - version "9.18.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" - -globby@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" - dependencies: - array-union "^1.0.1" - glob "^7.0.3" - object-assign "^4.0.1" - pify "^2.0.0" - pinkie-promise "^2.0.0" - -globby@^7.1.1: - version "7.1.1" - resolved "https://registry.yarnpkg.com/globby/-/globby-7.1.1.tgz#fb2ccff9401f8600945dfada97440cca972b8680" - dependencies: - array-union "^1.0.1" - dir-glob "^2.0.0" - glob "^7.1.2" - ignore "^3.3.5" - pify "^3.0.0" - slash "^1.0.0" - -globule@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/globule/-/globule-1.2.0.tgz#1dc49c6822dd9e8a2fa00ba2a295006e8664bd09" - dependencies: - glob "~7.1.1" - lodash "~4.17.4" - minimatch "~3.0.2" - -graceful-fs@4.1.11, graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.1.9: - version "4.1.11" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" - -handle-thing@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-1.2.5.tgz#fd7aad726bf1a5fd16dfc29b2f7a6601d27139c4" - -har-schema@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e" - -har-schema@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" - -har-validator@~2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-2.0.6.tgz#cdcbc08188265ad119b6a5a7c8ab70eecfb5d27d" - dependencies: - chalk "^1.1.1" - commander "^2.9.0" - is-my-json-valid "^2.12.4" - pinkie-promise "^2.0.0" - -har-validator@~4.2.1: - version "4.2.1" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a" - dependencies: - ajv "^4.9.1" - har-schema "^1.0.5" - -har-validator@~5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.0.3.tgz#ba402c266194f15956ef15e0fcf242993f6a7dfd" - dependencies: - ajv "^5.1.0" - har-schema "^2.0.0" - -has-ansi@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" - dependencies: - ansi-regex "^2.0.0" - -has-flag@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" - -has-flag@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" - -has-flag@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" - -has-unicode@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" - -has-value@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" - dependencies: - get-value "^2.0.3" - has-values "^0.1.4" - isobject "^2.0.0" - -has-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" - dependencies: - get-value "^2.0.6" - has-values "^1.0.0" - isobject "^3.0.0" - -has-values@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" - -has-values@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" - dependencies: - is-number "^3.0.0" - kind-of "^4.0.0" - -has@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28" - dependencies: - function-bind "^1.0.2" - -hash-base@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-2.0.2.tgz#66ea1d856db4e8a5470cadf6fce23ae5244ef2e1" - dependencies: - inherits "^2.0.1" - -hash-base@^3.0.0: - version "3.0.4" - resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.0.4.tgz#5fc8686847ecd73499403319a6b0a3f3f6ae4918" - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -hash.js@^1.0.0, hash.js@^1.0.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.3.tgz#340dedbe6290187151c1ea1d777a3448935df846" - dependencies: - inherits "^2.0.3" - minimalistic-assert "^1.0.0" - -hawk@3.1.3, hawk@~3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4" - dependencies: - boom "2.x.x" - cryptiles "2.x.x" - hoek "2.x.x" - sntp "1.x.x" - -hawk@~6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/hawk/-/hawk-6.0.2.tgz#af4d914eb065f9b5ce4d9d11c1cb2126eecc3038" - dependencies: - boom "4.x.x" - cryptiles "3.x.x" - hoek "4.x.x" - sntp "2.x.x" - -he@1.1.x: - version "1.1.1" - resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd" - -hmac-drbg@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" - dependencies: - hash.js "^1.0.3" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.1" - -hoek@2.x.x: - version "2.16.3" - resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" - -hoek@4.x.x: - version "4.2.1" - resolved "https://registry.yarnpkg.com/hoek/-/hoek-4.2.1.tgz#9634502aa12c445dd5a7c5734b572bb8738aacbb" - -home-or-tmp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.1" - -hosted-git-info@^2.1.4: - version "2.6.0" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.6.0.tgz#23235b29ab230c576aab0d4f13fc046b0b038222" - -hpack.js@^2.1.6: - version "2.1.6" - resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" - dependencies: - inherits "^2.0.1" - obuf "^1.0.0" - readable-stream "^2.0.1" - wbuf "^1.1.0" - -html-comment-regex@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/html-comment-regex/-/html-comment-regex-1.1.1.tgz#668b93776eaae55ebde8f3ad464b307a4963625e" - -html-entities@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.2.1.tgz#0df29351f0721163515dfb9e5543e5f6eed5162f" - -html-minifier@^3.2.3: - version "3.5.14" - resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-3.5.14.tgz#88653b24b344274e3e3d7052f1541ebea054ac60" - dependencies: - camel-case "3.0.x" - clean-css "4.1.x" - commander "2.15.x" - he "1.1.x" - param-case "2.1.x" - relateurl "0.2.x" - uglify-js "3.3.x" - -html-webpack-plugin@^2.30.1: - version "2.30.1" - resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-2.30.1.tgz#7f9c421b7ea91ec460f56527d78df484ee7537d5" - dependencies: - bluebird "^3.4.7" - html-minifier "^3.2.3" - loader-utils "^0.2.16" - lodash "^4.17.3" - pretty-error "^2.0.2" - toposort "^1.0.0" - -htmlparser2@~3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.3.0.tgz#cc70d05a59f6542e43f0e685c982e14c924a9efe" - dependencies: - domelementtype "1" - domhandler "2.1" - domutils "1.1" - readable-stream "1.0" - -http-deceiver@^1.2.7: - version "1.2.7" - resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" - -http-errors@1.6.2: - version "1.6.2" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.2.tgz#0a002cc85707192a7e7946ceedc11155f60ec736" - dependencies: - depd "1.1.1" - inherits "2.0.3" - setprototypeof "1.0.3" - statuses ">= 1.3.1 < 2" - -http-errors@~1.6.2: - version "1.6.3" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" - dependencies: - depd "~1.1.2" - inherits "2.0.3" - setprototypeof "1.1.0" - statuses ">= 1.4.0 < 2" - -http-parser-js@>=0.4.0: - version "0.4.11" - resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.4.11.tgz#5b720849c650903c27e521633d94696ee95f3529" - -http-proxy-middleware@~0.17.4: - version "0.17.4" - resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.17.4.tgz#642e8848851d66f09d4f124912846dbaeb41b833" - dependencies: - http-proxy "^1.16.2" - is-glob "^3.1.0" - lodash "^4.17.2" - micromatch "^2.3.11" - -http-proxy@^1.16.2: - version "1.16.2" - resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.16.2.tgz#06dff292952bf64dbe8471fa9df73066d4f37742" - dependencies: - eventemitter3 "1.x.x" - requires-port "1.x.x" - -http-signature@~1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" - dependencies: - assert-plus "^0.2.0" - jsprim "^1.2.2" - sshpk "^1.7.0" - -http-signature@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" - dependencies: - assert-plus "^1.0.0" - jsprim "^1.2.2" - sshpk "^1.7.0" - -https-browserify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" - -iconv-lite@0.4.19: - version "0.4.19" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b" - -icss-replace-symbols@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded" - -icss-utils@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-2.1.0.tgz#83f0a0ec378bf3246178b6c2ad9136f135b1c962" - dependencies: - postcss "^6.0.1" - -ieee754@^1.1.4: - version "1.1.11" - resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.11.tgz#c16384ffe00f5b7835824e67b6f2bd44a5229455" - -iferr@^0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" - -ignore@^3.3.5: - version "3.3.7" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.7.tgz#612289bfb3c220e186a58118618d5be8c1bab021" - -import-local@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-1.0.0.tgz#5e4ffdc03f4fe6c009c6729beb29631c2f8227bc" - dependencies: - pkg-dir "^2.0.0" - resolve-cwd "^2.0.0" - -imurmurhash@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" - -in-publish@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/in-publish/-/in-publish-2.0.0.tgz#e20ff5e3a2afc2690320b6dc552682a9c7fadf51" - -indent-string@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" - dependencies: - repeating "^2.0.0" - -indexes-of@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" - -indexof@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" - -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - -inherits@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" - -ini@~1.3.0: - version "1.3.5" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" - -internal-ip@1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/internal-ip/-/internal-ip-1.2.0.tgz#ae9fbf93b984878785d50a8de1b356956058cf5c" - dependencies: - meow "^3.3.0" - -interpret@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.1.0.tgz#7ed1b1410c6a0e0f78cf95d3b8440c63f78b8614" - -invariant@^2.2.2: - version "2.2.4" - resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" - dependencies: - loose-envify "^1.0.0" - -invert-kv@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" - -ip@^1.1.0, ip@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" - -ipaddr.js@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.6.0.tgz#e3fa357b773da619f26e95f049d055c72796f86b" - -is-absolute-url@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.1.0.tgz#50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6" - -is-accessor-descriptor@^0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" - dependencies: - kind-of "^3.0.2" - -is-accessor-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" - dependencies: - kind-of "^6.0.0" - -is-arrayish@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" - -is-binary-path@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" - dependencies: - binary-extensions "^1.0.0" - -is-buffer@^1.1.5: - version "1.1.6" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" - -is-builtin-module@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe" - dependencies: - builtin-modules "^1.0.0" - -is-callable@^1.1.1, is-callable@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2" - -is-data-descriptor@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" - dependencies: - kind-of "^3.0.2" - -is-data-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" - dependencies: - kind-of "^6.0.0" - -is-date-object@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" - -is-descriptor@^0.1.0: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" - dependencies: - is-accessor-descriptor "^0.1.6" - is-data-descriptor "^0.1.4" - kind-of "^5.0.0" - -is-descriptor@^1.0.0, is-descriptor@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" - dependencies: - is-accessor-descriptor "^1.0.0" - is-data-descriptor "^1.0.0" - kind-of "^6.0.2" - -is-directory@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" - -is-dotfile@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" - -is-equal-shallow@^0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534" - dependencies: - is-primitive "^2.0.0" - -is-extendable@^0.1.0, is-extendable@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" - -is-extendable@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" - dependencies: - is-plain-object "^2.0.4" - -is-extglob@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" - -is-extglob@^2.1.0, is-extglob@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" - -is-finite@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" - dependencies: - number-is-nan "^1.0.0" - -is-fullwidth-code-point@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" - dependencies: - number-is-nan "^1.0.0" - -is-fullwidth-code-point@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" - -is-glob@^2.0.0, is-glob@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" - dependencies: - is-extglob "^1.0.0" - -is-glob@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" - dependencies: - is-extglob "^2.1.0" - -is-glob@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.0.tgz#9521c76845cc2610a85203ddf080a958c2ffabc0" - dependencies: - is-extglob "^2.1.1" - -is-my-ip-valid@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz#7b351b8e8edd4d3995d4d066680e664d94696824" - -is-my-json-valid@^2.12.4: - version "2.17.2" - resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.17.2.tgz#6b2103a288e94ef3de5cf15d29dd85fc4b78d65c" - dependencies: - generate-function "^2.0.0" - generate-object-property "^1.1.0" - is-my-ip-valid "^1.0.0" - jsonpointer "^4.0.0" - xtend "^4.0.0" - -is-number@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" - dependencies: - kind-of "^3.0.2" - -is-number@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" - dependencies: - kind-of "^3.0.2" - -is-number@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff" - -is-odd@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-odd/-/is-odd-2.0.0.tgz#7646624671fd7ea558ccd9a2795182f2958f1b24" - dependencies: - is-number "^4.0.0" - -is-path-cwd@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" - -is-path-in-cwd@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz#5ac48b345ef675339bd6c7a48a912110b241cf52" - dependencies: - is-path-inside "^1.0.0" - -is-path-inside@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.1.tgz#8ef5b7de50437a3fdca6b4e865ef7aa55cb48036" - dependencies: - path-is-inside "^1.0.1" - -is-plain-obj@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" - -is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" - dependencies: - isobject "^3.0.1" - -is-posix-bracket@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4" - -is-primitive@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" - -is-property@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" - -is-regex@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" - dependencies: - has "^1.0.1" - -is-stream@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" - -is-svg@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-svg/-/is-svg-2.1.0.tgz#cf61090da0d9efbcab8722deba6f032208dbb0e9" - dependencies: - html-comment-regex "^1.1.0" - -is-symbol@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572" - -is-typedarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" - -is-utf8@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" - -is-windows@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" - -is-wsl@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" - -isarray@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" - -isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - -isexe@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - -isobject@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" - dependencies: - isarray "1.0.0" - -isobject@^3.0.0, isobject@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" - -isstream@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" - -js-base64@^2.1.8, js-base64@^2.1.9: - version "2.4.3" - resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.4.3.tgz#2e545ec2b0f2957f41356510205214e98fad6582" - -js-tokens@^3.0.0, js-tokens@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" - -js-yaml@^3.4.3: - version "3.11.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.11.0.tgz#597c1a8bd57152f26d622ce4117851a51f5ebaef" - dependencies: - argparse "^1.0.7" - esprima "^4.0.0" - -js-yaml@~3.7.0: - version "3.7.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.7.0.tgz#5c967ddd837a9bfdca5f2de84253abe8a1c03b80" - dependencies: - argparse "^1.0.7" - esprima "^2.6.0" - -jsbn@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" - -jsesc@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" - -jsesc@~0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" - -json-loader@^0.5.4: - version "0.5.7" - resolved "https://registry.yarnpkg.com/json-loader/-/json-loader-0.5.7.tgz#dca14a70235ff82f0ac9a3abeb60d337a365185d" - -json-schema-traverse@^0.3.0: - version "0.3.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" - -json-schema@0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" - -json-stable-stringify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af" - dependencies: - jsonify "~0.0.0" - -json-stringify-safe@~5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" - -json3@^3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.2.tgz#3c0434743df93e2f5c42aee7b19bcb483575f4e1" - -json5@^0.5.0, json5@^0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" - -jsonfile@^2.1.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-2.4.0.tgz#3736a2b428b87bbda0cc83b53fa3d633a35c2ae8" - optionalDependencies: - graceful-fs "^4.1.6" - -jsonfile@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" - optionalDependencies: - graceful-fs "^4.1.6" - -jsonify@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" - -jsonpointer@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9" - -jsprim@^1.2.2: - version "1.4.1" - resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" - dependencies: - assert-plus "1.0.0" - extsprintf "1.3.0" - json-schema "0.2.3" - verror "1.10.0" - -killable@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/killable/-/killable-1.0.0.tgz#da8b84bd47de5395878f95d64d02f2449fe05e6b" - -kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: - version "3.2.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" - dependencies: - is-buffer "^1.1.5" - -kind-of@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" - dependencies: - is-buffer "^1.1.5" - -kind-of@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" - -kind-of@^6.0.0, kind-of@^6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051" - -klaw@^1.0.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/klaw/-/klaw-1.3.1.tgz#4088433b46b3b1ba259d78785d8e96f73ba02439" - optionalDependencies: - graceful-fs "^4.1.9" - -lazy-cache@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e" - -lcid@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" - dependencies: - invert-kv "^1.0.0" - -load-json-file@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - pinkie-promise "^2.0.0" - strip-bom "^2.0.0" - -load-json-file@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - strip-bom "^3.0.0" - -loader-runner@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.3.0.tgz#f482aea82d543e07921700d5a46ef26fdac6b8a2" - -loader-utils@^0.2.12, loader-utils@^0.2.16: - version "0.2.17" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.17.tgz#f86e6374d43205a6e6c60e9196f17c0299bfb348" - dependencies: - big.js "^3.1.3" - emojis-list "^2.0.0" - json5 "^0.5.0" - object-assign "^4.0.1" - -loader-utils@^1.0.2, loader-utils@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.1.0.tgz#c98aef488bcceda2ffb5e2de646d6a754429f5cd" - dependencies: - big.js "^3.1.3" - emojis-list "^2.0.0" - json5 "^0.5.0" - -locate-path@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" - dependencies: - p-locate "^2.0.0" - path-exists "^3.0.0" - -lodash._baseassign@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz#8c38a099500f215ad09e59f1722fd0c52bfe0a4e" - dependencies: - lodash._basecopy "^3.0.0" - lodash.keys "^3.0.0" - -lodash._basecopy@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36" - -lodash._bindcallback@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/lodash._bindcallback/-/lodash._bindcallback-3.0.1.tgz#e531c27644cf8b57a99e17ed95b35c748789392e" - -lodash._createassigner@^3.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/lodash._createassigner/-/lodash._createassigner-3.1.1.tgz#838a5bae2fdaca63ac22dee8e19fa4e6d6970b11" - dependencies: - lodash._bindcallback "^3.0.0" - lodash._isiterateecall "^3.0.0" - lodash.restparam "^3.0.0" - -lodash._getnative@^3.0.0: - version "3.9.1" - resolved "https://registry.yarnpkg.com/lodash._getnative/-/lodash._getnative-3.9.1.tgz#570bc7dede46d61cdcde687d65d3eecbaa3aaff5" - -lodash._isiterateecall@^3.0.0: - version "3.0.9" - resolved "https://registry.yarnpkg.com/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz#5203ad7ba425fae842460e696db9cf3e6aac057c" - -lodash.assign@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-3.2.0.tgz#3ce9f0234b4b2223e296b8fa0ac1fee8ebca64fa" - dependencies: - lodash._baseassign "^3.0.0" - lodash._createassigner "^3.0.0" - lodash.keys "^3.0.0" - -lodash.assign@^4.0.1, lodash.assign@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7" - -lodash.camelcase@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" - -lodash.clonedeep@^4.3.2: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" - -lodash.defaults@^3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-3.1.2.tgz#c7308b18dbf8bc9372d701a73493c61192bd2e2c" - dependencies: - lodash.assign "^3.0.0" - lodash.restparam "^3.0.0" - -lodash.defaults@^4.0.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c" - -lodash.isarguments@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" - -lodash.isarray@^3.0.0: - version "3.0.4" - resolved "https://registry.yarnpkg.com/lodash.isarray/-/lodash.isarray-3.0.4.tgz#79e4eb88c36a8122af86f844aa9bcd851b5fbb55" - -lodash.keys@^3.0.0: - version "3.1.2" - resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-3.1.2.tgz#4dbc0472b156be50a0b286855d1bd0b0c656098a" - dependencies: - lodash._getnative "^3.0.0" - lodash.isarguments "^3.0.0" - lodash.isarray "^3.0.0" - -lodash.memoize@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" - -lodash.mergewith@^4.6.0: - version "4.6.1" - resolved "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.1.tgz#639057e726c3afbdb3e7d42741caa8d6e4335927" - -lodash.restparam@^3.0.0: - version "3.6.1" - resolved "https://registry.yarnpkg.com/lodash.restparam/-/lodash.restparam-3.6.1.tgz#936a4e309ef330a7645ed4145986c85ae5b20805" - -lodash.uniq@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" - -lodash@4.13.1: - version "4.13.1" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.13.1.tgz#83e4b10913f48496d4d16fec4a560af2ee744b68" - -lodash@4.14.2: - version "4.14.2" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.14.2.tgz#bbccce6373a400fbfd0a8c67ca42f6d1ef416432" - -lodash@^3.7.0: - version "3.10.1" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-3.10.1.tgz#5bf45e8e49ba4189e17d482789dfd15bd140b7b6" - -lodash@^4.0.0, lodash@^4.14.0, lodash@^4.17.2, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.17.5, lodash@~4.17.4: - version "4.17.5" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.5.tgz#99a92d65c0272debe8c96b6057bc8fbfa3bed511" - -loglevel@^1.4.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.1.tgz#e0fc95133b6ef276cdc8887cdaf24aa6f156f8fa" - -longest@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097" - -loose-envify@^1.0.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848" - dependencies: - js-tokens "^3.0.0" - -loud-rejection@^1.0.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" - dependencies: - currently-unhandled "^0.4.1" - signal-exit "^3.0.0" - -lower-case@^1.1.1: - version "1.1.4" - resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac" - -lru-cache@^4.0.1, lru-cache@^4.1.1: - version "4.1.2" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.2.tgz#45234b2e6e2f2b33da125624c4664929a0224c3f" - dependencies: - pseudomap "^1.0.2" - yallist "^2.1.2" - -macaddress@^0.2.8: - version "0.2.8" - resolved "https://registry.yarnpkg.com/macaddress/-/macaddress-0.2.8.tgz#5904dc537c39ec6dbefeae902327135fa8511f12" - -make-dir@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.2.0.tgz#6d6a49eead4aae296c53bbf3a1a008bd6c89469b" - dependencies: - pify "^3.0.0" - -map-cache@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" - -map-obj@^1.0.0, map-obj@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" - -map-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" - dependencies: - object-visit "^1.0.0" - -math-expression-evaluator@^1.2.14: - version "1.2.17" - resolved "https://registry.yarnpkg.com/math-expression-evaluator/-/math-expression-evaluator-1.2.17.tgz#de819fdbcd84dccd8fae59c6aeb79615b9d266ac" - -md5.js@^1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.4.tgz#e9bdbde94a20a5ac18b04340fc5764d5b09d901d" - dependencies: - hash-base "^3.0.0" - inherits "^2.0.1" - -media-typer@0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" - -mem@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/mem/-/mem-1.1.0.tgz#5edd52b485ca1d900fe64895505399a0dfa45f76" - dependencies: - mimic-fn "^1.0.0" - -memory-fs@^0.4.0, memory-fs@~0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" - dependencies: - errno "^0.1.3" - readable-stream "^2.0.1" - -meow@^3.3.0, meow@^3.7.0: - version "3.7.0" - resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" - dependencies: - camelcase-keys "^2.0.0" - decamelize "^1.1.2" - loud-rejection "^1.0.0" - map-obj "^1.0.1" - minimist "^1.1.3" - normalize-package-data "^2.3.4" - object-assign "^4.0.1" - read-pkg-up "^1.0.1" - redent "^1.0.0" - trim-newlines "^1.0.0" - -merge-descriptors@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" - -methods@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" - -micromatch@^2.1.5, micromatch@^2.3.11: - version "2.3.11" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" - dependencies: - arr-diff "^2.0.0" - array-unique "^0.2.1" - braces "^1.8.2" - expand-brackets "^0.1.4" - extglob "^0.3.1" - filename-regex "^2.0.0" - is-extglob "^1.0.0" - is-glob "^2.0.1" - kind-of "^3.0.2" - normalize-path "^2.0.1" - object.omit "^2.0.0" - parse-glob "^3.0.4" - regex-cache "^0.4.2" - -micromatch@^3.1.4: - version "3.1.10" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - braces "^2.3.1" - define-property "^2.0.2" - extend-shallow "^3.0.2" - extglob "^2.0.4" - fragment-cache "^0.2.1" - kind-of "^6.0.2" - nanomatch "^1.2.9" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.2" - -miller-rabin@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" - dependencies: - bn.js "^4.0.0" - brorand "^1.0.1" - -"mime-db@>= 1.33.0 < 2", mime-db@~1.33.0: - version "1.33.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.33.0.tgz#a3492050a5cb9b63450541e39d9788d2272783db" - -mime-types@^2.1.11, mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.18, mime-types@~2.1.7: - version "2.1.18" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.18.tgz#6f323f60a83d11146f831ff11fd66e2fe5503bb8" - dependencies: - mime-db "~1.33.0" - -mime@1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" - -mime@^1.4.1, mime@^1.5.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" - -mimic-fn@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" - -minimalistic-assert@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" - -minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" - -"minimatch@2 || 3", minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.4, minimatch@~3.0.2: - version "3.0.4" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" - dependencies: - brace-expansion "^1.1.7" - -minimist@0.0.8: - version "0.0.8" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" - -minimist@^1.1.3, minimist@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" - -mississippi@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-2.0.0.tgz#3442a508fafc28500486feea99409676e4ee5a6f" - dependencies: - concat-stream "^1.5.0" - duplexify "^3.4.2" - end-of-stream "^1.1.0" - flush-write-stream "^1.0.0" - from2 "^2.1.0" - parallel-transform "^1.1.0" - pump "^2.0.1" - pumpify "^1.3.3" - stream-each "^1.1.0" - through2 "^2.0.0" - -mixin-deep@^1.2.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.1.tgz#a49e7268dce1a0d9698e45326c5626df3543d0fe" - dependencies: - for-in "^1.0.2" - is-extendable "^1.0.1" - -mkdirp@0.5.1, mkdirp@0.5.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" - dependencies: - minimist "0.0.8" - -move-concurrently@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" - dependencies: - aproba "^1.1.1" - copy-concurrently "^1.0.0" - fs-write-stream-atomic "^1.0.8" - mkdirp "^0.5.1" - rimraf "^2.5.4" - run-queue "^1.0.3" - -ms@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" - -multicast-dns-service-types@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz#899f11d9686e5e05cb91b35d5f0e63b773cfc901" - -multicast-dns@^6.0.1: - version "6.2.3" - resolved "https://registry.yarnpkg.com/multicast-dns/-/multicast-dns-6.2.3.tgz#a0ec7bd9055c4282f790c3c82f4e28db3b31b229" - dependencies: - dns-packet "^1.3.1" - thunky "^1.0.2" - -murmur-hash-js@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/murmur-hash-js/-/murmur-hash-js-1.0.0.tgz#5041049269c96633c866386960b2f4289e75e5b0" - -nan@^2.10.0, nan@^2.3.0: - version "2.10.0" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.10.0.tgz#96d0cd610ebd58d4b4de9cc0c6828cda99c7548f" - -nanomatch@^1.2.9: - version "1.2.9" - resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.9.tgz#879f7150cb2dab7a471259066c104eee6e0fa7c2" - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - define-property "^2.0.2" - extend-shallow "^3.0.2" - fragment-cache "^0.2.1" - is-odd "^2.0.0" - is-windows "^1.0.2" - kind-of "^6.0.2" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -negotiator@0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" - -neo-async@^2.5.0: - version "2.5.1" - resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.5.1.tgz#acb909e327b1e87ec9ef15f41b8a269512ad41ee" - -next-tick@1: - version "1.0.0" - resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.0.0.tgz#ca86d1fe8828169b0120208e3dc8424b9db8342c" - -no-case@^2.2.0: - version "2.3.2" - resolved "https://registry.yarnpkg.com/no-case/-/no-case-2.3.2.tgz#60b813396be39b3f1288a4c1ed5d1e7d28b464ac" - dependencies: - lower-case "^1.1.1" - -node-elm-compiler@4.3.3: - version "4.3.3" - resolved "https://registry.yarnpkg.com/node-elm-compiler/-/node-elm-compiler-4.3.3.tgz#44e48e8679876bf2f5bd8820dd15734ff3a28caf" - dependencies: - cross-spawn "4.0.0" - find-elm-dependencies "1.0.2" - lodash "4.14.2" - temp "^0.8.3" - -node-elm-compiler@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/node-elm-compiler/-/node-elm-compiler-4.5.0.tgz#3029f053cfbfc68730e75a54f93495cc58bf7ceb" - dependencies: - cross-spawn "4.0.0" - find-elm-dependencies "1.0.2" - lodash "4.14.2" - temp "^0.8.3" - -node-forge@0.7.1: - version "0.7.1" - resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.7.1.tgz#9da611ea08982f4b94206b3beb4cc9665f20c300" - -node-gyp@^3.3.1: - version "3.6.2" - resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-3.6.2.tgz#9bfbe54562286284838e750eac05295853fa1c60" - dependencies: - fstream "^1.0.0" - glob "^7.0.3" - graceful-fs "^4.1.2" - minimatch "^3.0.2" - mkdirp "^0.5.0" - nopt "2 || 3" - npmlog "0 || 1 || 2 || 3 || 4" - osenv "0" - request "2" - rimraf "2" - semver "~5.3.0" - tar "^2.0.0" - which "1" - -node-libs-browser@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.1.0.tgz#5f94263d404f6e44767d726901fff05478d600df" - dependencies: - assert "^1.1.1" - browserify-zlib "^0.2.0" - buffer "^4.3.0" - console-browserify "^1.1.0" - constants-browserify "^1.0.0" - crypto-browserify "^3.11.0" - domain-browser "^1.1.1" - events "^1.0.0" - https-browserify "^1.0.0" - os-browserify "^0.3.0" - path-browserify "0.0.0" - process "^0.11.10" - punycode "^1.2.4" - querystring-es3 "^0.2.0" - readable-stream "^2.3.3" - stream-browserify "^2.0.1" - stream-http "^2.7.2" - string_decoder "^1.0.0" - timers-browserify "^2.0.4" - tty-browserify "0.0.0" - url "^0.11.0" - util "^0.10.3" - vm-browserify "0.0.4" - -node-pre-gyp@^0.6.36, node-pre-gyp@^0.6.39: - version "0.6.39" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.39.tgz#c00e96860b23c0e1420ac7befc5044e1d78d8649" - dependencies: - detect-libc "^1.0.2" - hawk "3.1.3" - mkdirp "^0.5.1" - nopt "^4.0.1" - npmlog "^4.0.2" - rc "^1.1.7" - request "2.81.0" - rimraf "^2.6.1" - semver "^5.3.0" - tar "^2.2.1" - tar-pack "^3.4.0" - -node-sass@^4.7.2: - version "4.8.3" - resolved "https://registry.yarnpkg.com/node-sass/-/node-sass-4.8.3.tgz#d077cc20a08ac06f661ca44fb6f19cd2ed41debb" - dependencies: - async-foreach "^0.1.3" - chalk "^1.1.1" - cross-spawn "^3.0.0" - gaze "^1.0.0" - get-stdin "^4.0.1" - glob "^7.0.3" - in-publish "^2.0.0" - lodash.assign "^4.2.0" - lodash.clonedeep "^4.3.2" - lodash.mergewith "^4.6.0" - meow "^3.7.0" - mkdirp "^0.5.1" - nan "^2.10.0" - node-gyp "^3.3.1" - npmlog "^4.0.0" - request "~2.79.0" - sass-graph "^2.2.4" - stdout-stream "^1.4.0" - "true-case-path" "^1.0.2" - -node-uuid@~1.4.7: - version "1.4.8" - resolved "https://registry.yarnpkg.com/node-uuid/-/node-uuid-1.4.8.tgz#b040eb0923968afabf8d32fb1f17f1167fdab907" - -"nopt@2 || 3": - version "3.0.6" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9" - dependencies: - abbrev "1" - -nopt@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" - dependencies: - abbrev "1" - osenv "^0.1.4" - -normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: - version "2.4.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" - dependencies: - hosted-git-info "^2.1.4" - is-builtin-module "^1.0.0" - semver "2 || 3 || 4 || 5" - validate-npm-package-license "^3.0.1" - -normalize-path@^2.0.0, normalize-path@^2.0.1, normalize-path@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" - dependencies: - remove-trailing-separator "^1.0.1" - -normalize-range@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" - -normalize-url@^1.4.0: - version "1.9.1" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-1.9.1.tgz#2cc0d66b31ea23036458436e3620d85954c66c3c" - dependencies: - object-assign "^4.0.1" - prepend-http "^1.0.0" - query-string "^4.1.0" - sort-keys "^1.0.0" - -npm-run-path@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" - dependencies: - path-key "^2.0.0" - -"npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0, npmlog@^4.0.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" - dependencies: - are-we-there-yet "~1.1.2" - console-control-strings "~1.1.0" - gauge "~2.7.3" - set-blocking "~2.0.0" - -nth-check@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.1.tgz#9929acdf628fc2c41098deab82ac580cf149aae4" - dependencies: - boolbase "~1.0.0" - -num2fraction@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" - -number-is-nan@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" - -oauth-sign@~0.8.1, oauth-sign@~0.8.2: - version "0.8.2" - resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" - -object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" - -object-copy@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" - dependencies: - copy-descriptor "^0.1.0" - define-property "^0.2.5" - kind-of "^3.0.3" - -object-keys@^1.0.8: - version "1.0.11" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d" - -object-path@^0.9.2: - version "0.9.2" - resolved "https://registry.yarnpkg.com/object-path/-/object-path-0.9.2.tgz#0fd9a74fc5fad1ae3968b586bda5c632bd6c05a5" - -object-visit@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" - dependencies: - isobject "^3.0.0" - -object.omit@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" - dependencies: - for-own "^0.1.4" - is-extendable "^0.1.1" - -object.pick@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" - dependencies: - isobject "^3.0.1" - -obuf@^1.0.0, obuf@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" - -on-finished@~2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" - dependencies: - ee-first "1.1.1" - -on-headers@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.1.tgz#928f5d0f470d49342651ea6794b0857c100693f7" - -once@^1.3.0, once@^1.3.1, once@^1.3.3, once@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - dependencies: - wrappy "1" - -opn@^5.1.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/opn/-/opn-5.3.0.tgz#64871565c863875f052cfdf53d3e3cb5adb53b1c" - dependencies: - is-wsl "^1.1.0" - -original@>=0.0.5: - version "1.0.0" - resolved "https://registry.yarnpkg.com/original/-/original-1.0.0.tgz#9147f93fa1696d04be61e01bd50baeaca656bd3b" - dependencies: - url-parse "1.0.x" - -os-browserify@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" - -os-homedir@^1.0.0, os-homedir@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" - -os-locale@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" - dependencies: - lcid "^1.0.0" - -os-locale@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-2.1.0.tgz#42bc2900a6b5b8bd17376c8e882b65afccf24bf2" - dependencies: - execa "^0.7.0" - lcid "^1.0.0" - mem "^1.1.0" - -os-tmpdir@^1.0.0, os-tmpdir@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" - -osenv@0, osenv@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.0" - -p-finally@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" - -p-limit@^1.0.0, p-limit@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.2.0.tgz#0e92b6bedcb59f022c13d0f1949dc82d15909f1c" - dependencies: - p-try "^1.0.0" - -p-locate@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" - dependencies: - p-limit "^1.1.0" - -p-map@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-1.2.0.tgz#e4e94f311eabbc8633a1e79908165fca26241b6b" - -p-try@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" - -pako@~1.0.5: - version "1.0.6" - resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.6.tgz#0101211baa70c4bca4a0f63f2206e97b7dfaf258" - -parallel-transform@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.1.0.tgz#d410f065b05da23081fcd10f28854c29bda33b06" - dependencies: - cyclist "~0.2.2" - inherits "^2.0.3" - readable-stream "^2.1.5" - -param-case@2.1.x: - version "2.1.1" - resolved "https://registry.yarnpkg.com/param-case/-/param-case-2.1.1.tgz#df94fd8cf6531ecf75e6bef9a0858fbc72be2247" - dependencies: - no-case "^2.2.0" - -parse-asn1@^5.0.0: - version "5.1.1" - resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.1.tgz#f6bf293818332bd0dab54efb16087724745e6ca8" - dependencies: - asn1.js "^4.0.0" - browserify-aes "^1.0.0" - create-hash "^1.1.0" - evp_bytestokey "^1.0.0" - pbkdf2 "^3.0.3" - -parse-color@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/parse-color/-/parse-color-1.0.0.tgz#7b748b95a83f03f16a94f535e52d7f3d94658619" - dependencies: - color-convert "~0.5.0" - -parse-glob@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" - dependencies: - glob-base "^0.3.0" - is-dotfile "^1.0.0" - is-extglob "^1.0.0" - is-glob "^2.0.0" - -parse-json@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" - dependencies: - error-ex "^1.2.0" - -parseurl@~1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.2.tgz#fc289d4ed8993119460c156253262cdc8de65bf3" - -pascalcase@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" - -path-browserify@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.0.tgz#a0b870729aae214005b7d5032ec2cbbb0fb4451a" - -path-dirname@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" - -path-exists@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" - dependencies: - pinkie-promise "^2.0.0" - -path-exists@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" - -path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - -path-is-inside@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" - -path-key@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" - -path-to-regexp@0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" - -path-type@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" - dependencies: - graceful-fs "^4.1.2" - pify "^2.0.0" - pinkie-promise "^2.0.0" - -path-type@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" - dependencies: - pify "^2.0.0" - -path-type@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" - dependencies: - pify "^3.0.0" - -pbkdf2@^3.0.3: - version "3.0.14" - resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.14.tgz#a35e13c64799b06ce15320f459c230e68e73bade" - dependencies: - create-hash "^1.1.2" - create-hmac "^1.1.4" - ripemd160 "^2.0.1" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - -performance-now@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5" - -performance-now@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" - -pify@^2.0.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" - -pify@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" - -pinkie-promise@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" - dependencies: - pinkie "^2.0.0" - -pinkie@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" - -pkg-dir@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" - dependencies: - find-up "^2.1.0" - -portfinder@^1.0.9: - version "1.0.13" - resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.13.tgz#bb32ecd87c27104ae6ee44b5a3ccbf0ebb1aede9" - dependencies: - async "^1.5.2" - debug "^2.2.0" - mkdirp "0.5.x" - -posix-character-classes@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" - -postcss-calc@^5.2.0: - version "5.3.1" - resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-5.3.1.tgz#77bae7ca928ad85716e2fda42f261bf7c1d65b5e" - dependencies: - postcss "^5.0.2" - postcss-message-helpers "^2.0.0" - reduce-css-calc "^1.2.6" - -postcss-colormin@^2.1.8: - version "2.2.2" - resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-2.2.2.tgz#6631417d5f0e909a3d7ec26b24c8a8d1e4f96e4b" - dependencies: - colormin "^1.0.5" - postcss "^5.0.13" - postcss-value-parser "^3.2.3" - -postcss-convert-values@^2.3.4: - version "2.6.1" - resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-2.6.1.tgz#bbd8593c5c1fd2e3d1c322bb925dcae8dae4d62d" - dependencies: - postcss "^5.0.11" - postcss-value-parser "^3.1.2" - -postcss-discard-comments@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-2.0.4.tgz#befe89fafd5b3dace5ccce51b76b81514be00e3d" - dependencies: - postcss "^5.0.14" - -postcss-discard-duplicates@^2.0.1: - version "2.1.0" - resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-2.1.0.tgz#b9abf27b88ac188158a5eb12abcae20263b91932" - dependencies: - postcss "^5.0.4" - -postcss-discard-empty@^2.0.1: - version "2.1.0" - resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-2.1.0.tgz#d2b4bd9d5ced5ebd8dcade7640c7d7cd7f4f92b5" - dependencies: - postcss "^5.0.14" - -postcss-discard-overridden@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-0.1.1.tgz#8b1eaf554f686fb288cd874c55667b0aa3668d58" - dependencies: - postcss "^5.0.16" - -postcss-discard-unused@^2.2.1: - version "2.2.3" - resolved "https://registry.yarnpkg.com/postcss-discard-unused/-/postcss-discard-unused-2.2.3.tgz#bce30b2cc591ffc634322b5fb3464b6d934f4433" - dependencies: - postcss "^5.0.14" - uniqs "^2.0.0" - -postcss-filter-plugins@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/postcss-filter-plugins/-/postcss-filter-plugins-2.0.2.tgz#6d85862534d735ac420e4a85806e1f5d4286d84c" - dependencies: - postcss "^5.0.4" - uniqid "^4.0.0" - -postcss-load-config@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-1.2.0.tgz#539e9afc9ddc8620121ebf9d8c3673e0ce50d28a" - dependencies: - cosmiconfig "^2.1.0" - object-assign "^4.1.0" - postcss-load-options "^1.2.0" - postcss-load-plugins "^2.3.0" - -postcss-load-options@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/postcss-load-options/-/postcss-load-options-1.2.0.tgz#b098b1559ddac2df04bc0bb375f99a5cfe2b6d8c" - dependencies: - cosmiconfig "^2.1.0" - object-assign "^4.1.0" - -postcss-load-plugins@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/postcss-load-plugins/-/postcss-load-plugins-2.3.0.tgz#745768116599aca2f009fad426b00175049d8d92" - dependencies: - cosmiconfig "^2.1.1" - object-assign "^4.1.0" - -postcss-loader@^2.0.9: - version "2.1.3" - resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-2.1.3.tgz#eb210da734e475a244f76ccd61f9860f5bb3ee09" - dependencies: - loader-utils "^1.1.0" - postcss "^6.0.0" - postcss-load-config "^1.2.0" - schema-utils "^0.4.0" - -postcss-merge-idents@^2.1.5: - version "2.1.7" - resolved "https://registry.yarnpkg.com/postcss-merge-idents/-/postcss-merge-idents-2.1.7.tgz#4c5530313c08e1d5b3bbf3d2bbc747e278eea270" - dependencies: - has "^1.0.1" - postcss "^5.0.10" - postcss-value-parser "^3.1.1" - -postcss-merge-longhand@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-2.0.2.tgz#23d90cd127b0a77994915332739034a1a4f3d658" - dependencies: - postcss "^5.0.4" - -postcss-merge-rules@^2.0.3: - version "2.1.2" - resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-2.1.2.tgz#d1df5dfaa7b1acc3be553f0e9e10e87c61b5f721" - dependencies: - browserslist "^1.5.2" - caniuse-api "^1.5.2" - postcss "^5.0.4" - postcss-selector-parser "^2.2.2" - vendors "^1.0.0" - -postcss-message-helpers@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-message-helpers/-/postcss-message-helpers-2.0.0.tgz#a4f2f4fab6e4fe002f0aed000478cdf52f9ba60e" - -postcss-minify-font-values@^1.0.2: - version "1.0.5" - resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-1.0.5.tgz#4b58edb56641eba7c8474ab3526cafd7bbdecb69" - dependencies: - object-assign "^4.0.1" - postcss "^5.0.4" - postcss-value-parser "^3.0.2" - -postcss-minify-gradients@^1.0.1: - version "1.0.5" - resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-1.0.5.tgz#5dbda11373703f83cfb4a3ea3881d8d75ff5e6e1" - dependencies: - postcss "^5.0.12" - postcss-value-parser "^3.3.0" - -postcss-minify-params@^1.0.4: - version "1.2.2" - resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-1.2.2.tgz#ad2ce071373b943b3d930a3fa59a358c28d6f1f3" - dependencies: - alphanum-sort "^1.0.1" - postcss "^5.0.2" - postcss-value-parser "^3.0.2" - uniqs "^2.0.0" - -postcss-minify-selectors@^2.0.4: - version "2.1.1" - resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-2.1.1.tgz#b2c6a98c0072cf91b932d1a496508114311735bf" - dependencies: - alphanum-sort "^1.0.2" - has "^1.0.1" - postcss "^5.0.14" - postcss-selector-parser "^2.0.0" - -postcss-modules-extract-imports@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.2.0.tgz#66140ecece38ef06bf0d3e355d69bf59d141ea85" - dependencies: - postcss "^6.0.1" - -postcss-modules-local-by-default@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz#f7d80c398c5a393fa7964466bd19500a7d61c069" - dependencies: - css-selector-tokenizer "^0.7.0" - postcss "^6.0.1" - -postcss-modules-scope@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz#d6ea64994c79f97b62a72b426fbe6056a194bb90" - dependencies: - css-selector-tokenizer "^0.7.0" - postcss "^6.0.1" - -postcss-modules-values@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz#ecffa9d7e192518389f42ad0e83f72aec456ea20" - dependencies: - icss-replace-symbols "^1.1.0" - postcss "^6.0.1" - -postcss-normalize-charset@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-1.1.1.tgz#ef9ee71212d7fe759c78ed162f61ed62b5cb93f1" - dependencies: - postcss "^5.0.5" - -postcss-normalize-url@^3.0.7: - version "3.0.8" - resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-3.0.8.tgz#108f74b3f2fcdaf891a2ffa3ea4592279fc78222" - dependencies: - is-absolute-url "^2.0.0" - normalize-url "^1.4.0" - postcss "^5.0.14" - postcss-value-parser "^3.2.3" - -postcss-ordered-values@^2.1.0: - version "2.2.3" - resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-2.2.3.tgz#eec6c2a67b6c412a8db2042e77fe8da43f95c11d" - dependencies: - postcss "^5.0.4" - postcss-value-parser "^3.0.1" - -postcss-reduce-idents@^2.2.2: - version "2.4.0" - resolved "https://registry.yarnpkg.com/postcss-reduce-idents/-/postcss-reduce-idents-2.4.0.tgz#c2c6d20cc958284f6abfbe63f7609bf409059ad3" - dependencies: - postcss "^5.0.4" - postcss-value-parser "^3.0.2" - -postcss-reduce-initial@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-1.0.1.tgz#68f80695f045d08263a879ad240df8dd64f644ea" - dependencies: - postcss "^5.0.4" - -postcss-reduce-transforms@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-1.0.4.tgz#ff76f4d8212437b31c298a42d2e1444025771ae1" - dependencies: - has "^1.0.1" - postcss "^5.0.8" - postcss-value-parser "^3.0.1" - -postcss-selector-parser@^2.0.0, postcss-selector-parser@^2.2.2: - version "2.2.3" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-2.2.3.tgz#f9437788606c3c9acee16ffe8d8b16297f27bb90" - dependencies: - flatten "^1.0.2" - indexes-of "^1.0.1" - uniq "^1.0.1" - -postcss-svgo@^2.1.1: - version "2.1.6" - resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-2.1.6.tgz#b6df18aa613b666e133f08adb5219c2684ac108d" - dependencies: - is-svg "^2.0.0" - postcss "^5.0.14" - postcss-value-parser "^3.2.3" - svgo "^0.7.0" - -postcss-unique-selectors@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-2.0.2.tgz#981d57d29ddcb33e7b1dfe1fd43b8649f933ca1d" - dependencies: - alphanum-sort "^1.0.1" - postcss "^5.0.4" - uniqs "^2.0.0" - -postcss-value-parser@^3.0.1, postcss-value-parser@^3.0.2, postcss-value-parser@^3.1.1, postcss-value-parser@^3.1.2, postcss-value-parser@^3.2.3, postcss-value-parser@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.0.tgz#87f38f9f18f774a4ab4c8a232f5c5ce8872a9d15" - -postcss-zindex@^2.0.1: - version "2.2.0" - resolved "https://registry.yarnpkg.com/postcss-zindex/-/postcss-zindex-2.2.0.tgz#d2109ddc055b91af67fc4cb3b025946639d2af22" - dependencies: - has "^1.0.1" - postcss "^5.0.4" - uniqs "^2.0.0" - -postcss@^5.0.10, postcss@^5.0.11, postcss@^5.0.12, postcss@^5.0.13, postcss@^5.0.14, postcss@^5.0.16, postcss@^5.0.2, postcss@^5.0.4, postcss@^5.0.5, postcss@^5.0.6, postcss@^5.0.8, postcss@^5.2.16: - version "5.2.18" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-5.2.18.tgz#badfa1497d46244f6390f58b319830d9107853c5" - dependencies: - chalk "^1.1.3" - js-base64 "^2.1.9" - source-map "^0.5.6" - supports-color "^3.2.3" - -postcss@^6.0.0, postcss@^6.0.1: - version "6.0.21" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.21.tgz#8265662694eddf9e9a5960db6da33c39e4cd069d" - dependencies: - chalk "^2.3.2" - source-map "^0.6.1" - supports-color "^5.3.0" - -prepend-http@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" - -preserve@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" - -pretty-error@^2.0.2: - version "2.1.1" - resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-2.1.1.tgz#5f4f87c8f91e5ae3f3ba87ab4cf5e03b1a17f1a3" - dependencies: - renderkid "^2.0.1" - utila "~0.4" - -private@^0.1.6, private@^0.1.7: - version "0.1.8" - resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" - -process-nextick-args@~1.0.6: - version "1.0.7" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" - -process-nextick-args@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" - -process@^0.11.10: - version "0.11.10" - resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" - -promise-inflight@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" - -promise@7.1.1: - version "7.1.1" - resolved "https://registry.yarnpkg.com/promise/-/promise-7.1.1.tgz#489654c692616b8aa55b0724fa809bb7db49c5bf" - dependencies: - asap "~2.0.3" - -proxy-addr@~2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.3.tgz#355f262505a621646b3130a728eb647e22055341" - dependencies: - forwarded "~0.1.2" - ipaddr.js "1.6.0" - -prr@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" - -pseudomap@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" - -public-encrypt@^4.0.0: - version "4.0.2" - resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.2.tgz#46eb9107206bf73489f8b85b69d91334c6610994" - dependencies: - bn.js "^4.1.0" - browserify-rsa "^4.0.0" - create-hash "^1.1.0" - parse-asn1 "^5.0.0" - randombytes "^2.0.1" - -pump@^2.0.0, pump@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - -pumpify@^1.3.3: - version "1.4.0" - resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.4.0.tgz#80b7c5df7e24153d03f0e7ac8a05a5d068bd07fb" - dependencies: - duplexify "^3.5.3" - inherits "^2.0.3" - pump "^2.0.0" - -punycode@1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" - -punycode@^1.2.4, punycode@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" - -punycode@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.0.tgz#5f863edc89b96db09074bad7947bf09056ca4e7d" - -q@^1.1.2: - version "1.5.1" - resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" - -qs@6.5.1, qs@~6.5.1: - version "6.5.1" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.1.tgz#349cdf6eef89ec45c12d7d5eb3fc0c870343a6d8" - -qs@~6.2.0: - version "6.2.3" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.2.3.tgz#1cfcb25c10a9b2b483053ff39f5dfc9233908cfe" - -qs@~6.3.0: - version "6.3.2" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.3.2.tgz#e75bd5f6e268122a2a0e0bda630b2550c166502c" - -qs@~6.4.0: - version "6.4.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233" - -query-string@^4.1.0: - version "4.3.4" - resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.4.tgz#bbb693b9ca915c232515b228b1a02b609043dbeb" - dependencies: - object-assign "^4.1.0" - strict-uri-encode "^1.0.0" - -querystring-es3@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" - -querystring@0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" - -querystringify@0.0.x: - version "0.0.4" - resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-0.0.4.tgz#0cf7f84f9463ff0ae51c4c4b142d95be37724d9c" - -querystringify@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-1.0.0.tgz#6286242112c5b712fa654e526652bf6a13ff05cb" - -randomatic@^1.1.3: - version "1.1.7" - resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.7.tgz#c7abe9cc8b87c0baa876b19fde83fd464797e38c" - dependencies: - is-number "^3.0.0" - kind-of "^4.0.0" - -randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5: - version "2.0.6" - resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.6.tgz#d302c522948588848a8d300c932b44c24231da80" - dependencies: - safe-buffer "^5.1.0" - -randomfill@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458" - dependencies: - randombytes "^2.0.5" - safe-buffer "^5.1.0" - -range-parser@^1.0.3, range-parser@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e" - -raw-body@2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.3.2.tgz#bcd60c77d3eb93cde0050295c3f379389bc88f89" - dependencies: - bytes "3.0.0" - http-errors "1.6.2" - iconv-lite "0.4.19" - unpipe "1.0.0" - -rc@^1.1.7: - version "1.2.6" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.6.tgz#eb18989c6d4f4f162c399f79ddd29f3835568092" - dependencies: - deep-extend "~0.4.0" - ini "~1.3.0" - minimist "^1.2.0" - strip-json-comments "~2.0.1" - -read-pkg-up@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" - dependencies: - find-up "^1.0.0" - read-pkg "^1.0.0" - -read-pkg-up@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" - dependencies: - find-up "^2.0.0" - read-pkg "^2.0.0" - -read-pkg@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" - dependencies: - load-json-file "^1.0.0" - normalize-package-data "^2.3.2" - path-type "^1.0.0" - -read-pkg@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" - dependencies: - load-json-file "^2.0.0" - normalize-package-data "^2.3.2" - path-type "^2.0.0" - -"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.4, readable-stream@^2.0.6, readable-stream@^2.1.4, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.2.9, readable-stream@^2.3.3: - version "2.3.6" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.3" - isarray "~1.0.0" - process-nextick-args "~2.0.0" - safe-buffer "~5.1.1" - string_decoder "~1.1.1" - util-deprecate "~1.0.1" - -readable-stream@1.0: - version "1.0.34" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "0.0.1" - string_decoder "~0.10.x" - -readable-stream@~2.0.5: - version "2.0.6" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.0.6.tgz#8f90341e68a53ccc928788dacfcd11b36eb9b78e" - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "~1.0.0" - process-nextick-args "~1.0.6" - string_decoder "~0.10.x" - util-deprecate "~1.0.1" - -readdirp@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.1.0.tgz#4ed0ad060df3073300c48440373f72d1cc642d78" - dependencies: - graceful-fs "^4.1.2" - minimatch "^3.0.2" - readable-stream "^2.0.2" - set-immediate-shim "^1.0.1" - -redent@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" - dependencies: - indent-string "^2.1.0" - strip-indent "^1.0.1" - -reduce-css-calc@^1.2.6: - version "1.3.0" - resolved "https://registry.yarnpkg.com/reduce-css-calc/-/reduce-css-calc-1.3.0.tgz#747c914e049614a4c9cfbba629871ad1d2927716" - dependencies: - balanced-match "^0.4.2" - math-expression-evaluator "^1.2.14" - reduce-function-call "^1.0.1" - -reduce-function-call@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/reduce-function-call/-/reduce-function-call-1.0.2.tgz#5a200bf92e0e37751752fe45b0ab330fd4b6be99" - dependencies: - balanced-match "^0.4.2" - -regenerate@^1.2.1: - version "1.3.3" - resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.3.tgz#0c336d3980553d755c39b586ae3b20aa49c82b7f" - -regenerator-runtime@^0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" - -regenerator-transform@^0.10.0: - version "0.10.1" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.10.1.tgz#1e4996837231da8b7f3cf4114d71b5691a0680dd" - dependencies: - babel-runtime "^6.18.0" - babel-types "^6.19.0" - private "^0.1.6" - -regex-cache@^0.4.2: - version "0.4.4" - resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.4.tgz#75bdc58a2a1496cec48a12835bc54c8d562336dd" - dependencies: - is-equal-shallow "^0.1.3" - -regex-not@^1.0.0, regex-not@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" - dependencies: - extend-shallow "^3.0.2" - safe-regex "^1.1.0" - -regex-parser@^2.2.9: - version "2.2.9" - resolved "https://registry.yarnpkg.com/regex-parser/-/regex-parser-2.2.9.tgz#a372f45a248b62976a568037c1b6e60a60599192" - -regexpu-core@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-1.0.0.tgz#86a763f58ee4d7c2f6b102e4764050de7ed90c6b" - dependencies: - regenerate "^1.2.1" - regjsgen "^0.2.0" - regjsparser "^0.1.4" - -regexpu-core@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-2.0.0.tgz#49d038837b8dcf8bfa5b9a42139938e6ea2ae240" - dependencies: - regenerate "^1.2.1" - regjsgen "^0.2.0" - regjsparser "^0.1.4" - -regjsgen@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" - -regjsparser@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" - dependencies: - jsesc "~0.5.0" - -relateurl@0.2.x: - version "0.2.7" - resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" - -remove-trailing-separator@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" - -renderkid@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-2.0.1.tgz#898cabfc8bede4b7b91135a3ffd323e58c0db319" - dependencies: - css-select "^1.1.0" - dom-converter "~0.1" - htmlparser2 "~3.3.0" - strip-ansi "^3.0.0" - utila "~0.3" - -repeat-element@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a" - -repeat-string@^1.5.2, repeat-string@^1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" - -repeating@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" - dependencies: - is-finite "^1.0.0" - -request@2: - version "2.85.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.85.0.tgz#5a03615a47c61420b3eb99b7dba204f83603e1fa" - dependencies: - aws-sign2 "~0.7.0" - aws4 "^1.6.0" - caseless "~0.12.0" - combined-stream "~1.0.5" - extend "~3.0.1" - forever-agent "~0.6.1" - form-data "~2.3.1" - har-validator "~5.0.3" - hawk "~6.0.2" - http-signature "~1.2.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.17" - oauth-sign "~0.8.2" - performance-now "^2.1.0" - qs "~6.5.1" - safe-buffer "^5.1.1" - stringstream "~0.0.5" - tough-cookie "~2.3.3" - tunnel-agent "^0.6.0" - uuid "^3.1.0" - -request@2.74.0: - version "2.74.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.74.0.tgz#7693ca768bbb0ea5c8ce08c084a45efa05b892ab" - dependencies: - aws-sign2 "~0.6.0" - aws4 "^1.2.1" - bl "~1.1.2" - caseless "~0.11.0" - combined-stream "~1.0.5" - extend "~3.0.0" - forever-agent "~0.6.1" - form-data "~1.0.0-rc4" - har-validator "~2.0.6" - hawk "~3.1.3" - http-signature "~1.1.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.7" - node-uuid "~1.4.7" - oauth-sign "~0.8.1" - qs "~6.2.0" - stringstream "~0.0.4" - tough-cookie "~2.3.0" - tunnel-agent "~0.4.1" - -request@2.79.0, request@~2.79.0: - version "2.79.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.79.0.tgz#4dfe5bf6be8b8cdc37fcf93e04b65577722710de" - dependencies: - aws-sign2 "~0.6.0" - aws4 "^1.2.1" - caseless "~0.11.0" - combined-stream "~1.0.5" - extend "~3.0.0" - forever-agent "~0.6.1" - form-data "~2.1.1" - har-validator "~2.0.6" - hawk "~3.1.3" - http-signature "~1.1.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.7" - oauth-sign "~0.8.1" - qs "~6.3.0" - stringstream "~0.0.4" - tough-cookie "~2.3.0" - tunnel-agent "~0.4.1" - uuid "^3.0.0" - -request@2.81.0: - version "2.81.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0" - dependencies: - aws-sign2 "~0.6.0" - aws4 "^1.2.1" - caseless "~0.12.0" - combined-stream "~1.0.5" - extend "~3.0.0" - forever-agent "~0.6.1" - form-data "~2.1.1" - har-validator "~4.2.1" - hawk "~3.1.3" - http-signature "~1.1.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.7" - oauth-sign "~0.8.1" - performance-now "^0.2.0" - qs "~6.4.0" - safe-buffer "^5.0.1" - stringstream "~0.0.4" - tough-cookie "~2.3.0" - tunnel-agent "^0.6.0" - uuid "^3.0.0" - -require-directory@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - -require-from-string@^1.1.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-1.2.1.tgz#529c9ccef27380adfec9a2f965b649bbee636418" - -require-main-filename@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" - -requires-port@1.0.x, requires-port@1.x.x, requires-port@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" - -resolve-cwd@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a" - dependencies: - resolve-from "^3.0.0" - -resolve-from@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" - -resolve-url-loader@^2.2.1: - version "2.3.0" - resolved "https://registry.yarnpkg.com/resolve-url-loader/-/resolve-url-loader-2.3.0.tgz#e1b37034d48f22f8cfb9f04c026faaa070fdaf26" - dependencies: - adjust-sourcemap-loader "^1.1.0" - camelcase "^4.1.0" - convert-source-map "^1.5.1" - loader-utils "^1.1.0" - lodash.defaults "^4.0.0" - rework "^1.0.1" - rework-visit "^1.0.0" - source-map "^0.5.7" - urix "^0.1.0" - -resolve-url@^0.2.1, resolve-url@~0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" - -ret@~0.1.10: - version "0.1.15" - resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" - -rework-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/rework-visit/-/rework-visit-1.0.0.tgz#9945b2803f219e2f7aca00adb8bc9f640f842c9a" - -rework@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/rework/-/rework-1.0.1.tgz#30806a841342b54510aa4110850cd48534144aa7" - dependencies: - convert-source-map "^0.3.3" - css "^2.0.0" - -right-align@^0.1.1: - version "0.1.3" - resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef" - dependencies: - align-text "^0.1.1" - -rimraf@2, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.2: - version "2.6.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" - dependencies: - glob "^7.0.5" - -rimraf@~2.2.6: - version "2.2.8" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.2.8.tgz#e439be2aaee327321952730f99a8929e4fc50582" - -ripemd160@^2.0.0, ripemd160@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.1.tgz#0f4584295c53a3628af7e6d79aca21ce57d1c6e7" - dependencies: - hash-base "^2.0.0" - inherits "^2.0.1" - -run-queue@^1.0.0, run-queue@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" - dependencies: - aproba "^1.1.1" - -safe-buffer@5.1.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" - -safe-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" - dependencies: - ret "~0.1.10" - -sass-graph@^2.2.4: - version "2.2.4" - resolved "https://registry.yarnpkg.com/sass-graph/-/sass-graph-2.2.4.tgz#13fbd63cd1caf0908b9fd93476ad43a51d1e0b49" - dependencies: - glob "^7.0.0" - lodash "^4.0.0" - scss-tokenizer "^0.2.3" - yargs "^7.0.0" - -sax@~1.2.1: - version "1.2.4" - resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" - -schema-utils@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.3.0.tgz#f5877222ce3e931edae039f17eb3716e7137f8cf" - dependencies: - ajv "^5.0.0" - -schema-utils@^0.4.0, schema-utils@^0.4.5: - version "0.4.5" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.4.5.tgz#21836f0608aac17b78f9e3e24daff14a5ca13a3e" - dependencies: - ajv "^6.1.0" - ajv-keywords "^3.1.0" - -scss-tokenizer@^0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz#8eb06db9a9723333824d3f5530641149847ce5d1" - dependencies: - js-base64 "^2.1.8" - source-map "^0.4.2" - -select-hose@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" - -selfsigned@^1.9.1: - version "1.10.2" - resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.2.tgz#b4449580d99929b65b10a48389301a6592088758" - dependencies: - node-forge "0.7.1" - -"semver@2 || 3 || 4 || 5", semver@^5.3.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab" - -semver@~5.3.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" - -send@0.16.2: - version "0.16.2" - resolved "https://registry.yarnpkg.com/send/-/send-0.16.2.tgz#6ecca1e0f8c156d141597559848df64730a6bbc1" - dependencies: - debug "2.6.9" - depd "~1.1.2" - destroy "~1.0.4" - encodeurl "~1.0.2" - escape-html "~1.0.3" - etag "~1.8.1" - fresh "0.5.2" - http-errors "~1.6.2" - mime "1.4.1" - ms "2.0.0" - on-finished "~2.3.0" - range-parser "~1.2.0" - statuses "~1.4.0" - -serialize-javascript@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.4.0.tgz#7c958514db6ac2443a8abc062dc9f7886a7f6005" - -serve-index@^1.7.2: - version "1.9.1" - resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" - dependencies: - accepts "~1.3.4" - batch "0.6.1" - debug "2.6.9" - escape-html "~1.0.3" - http-errors "~1.6.2" - mime-types "~2.1.17" - parseurl "~1.3.2" - -serve-static@1.13.2: - version "1.13.2" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.13.2.tgz#095e8472fd5b46237db50ce486a43f4b86c6cec1" - dependencies: - encodeurl "~1.0.2" - escape-html "~1.0.3" - parseurl "~1.3.2" - send "0.16.2" - -set-blocking@^2.0.0, set-blocking@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" - -set-immediate-shim@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" - -set-value@^0.4.3: - version "0.4.3" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-0.4.3.tgz#7db08f9d3d22dc7f78e53af3c3bf4666ecdfccf1" - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.1" - to-object-path "^0.3.0" - -set-value@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.0.tgz#71ae4a88f0feefbbf52d1ea604f3fb315ebb6274" - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.3" - split-string "^3.0.1" - -setimmediate@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" - -setprototypeof@1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.3.tgz#66567e37043eeb4f04d91bd658c0cbefb55b8e04" - -setprototypeof@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" - -sha.js@^2.4.0, sha.js@^2.4.8: - version "2.4.11" - resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -shebang-command@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" - dependencies: - shebang-regex "^1.0.0" - -shebang-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" - -shell-quote@^1.4.3: - version "1.6.1" - resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.6.1.tgz#f4781949cce402697127430ea3b3c5476f481767" - dependencies: - array-filter "~0.0.0" - array-map "~0.0.0" - array-reduce "~0.0.0" - jsonify "~0.0.0" - -signal-exit@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" - -slash@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" - -snapdragon-node@^2.0.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" - dependencies: - define-property "^1.0.0" - isobject "^3.0.0" - snapdragon-util "^3.0.1" - -snapdragon-util@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" - dependencies: - kind-of "^3.2.0" - -snapdragon@^0.8.1: - version "0.8.2" - resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" - dependencies: - base "^0.11.1" - debug "^2.2.0" - define-property "^0.2.5" - extend-shallow "^2.0.1" - map-cache "^0.2.2" - source-map "^0.5.6" - source-map-resolve "^0.5.0" - use "^3.1.0" - -sntp@1.x.x: - version "1.0.9" - resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198" - dependencies: - hoek "2.x.x" - -sntp@2.x.x: - version "2.1.0" - resolved "https://registry.yarnpkg.com/sntp/-/sntp-2.1.0.tgz#2c6cec14fedc2222739caf9b5c3d85d1cc5a2cc8" - dependencies: - hoek "4.x.x" - -sockjs-client@1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.1.4.tgz#5babe386b775e4cf14e7520911452654016c8b12" - dependencies: - debug "^2.6.6" - eventsource "0.1.6" - faye-websocket "~0.11.0" - inherits "^2.0.1" - json3 "^3.3.2" - url-parse "^1.1.8" - -sockjs@0.3.19: - version "0.3.19" - resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.19.tgz#d976bbe800af7bd20ae08598d582393508993c0d" - dependencies: - faye-websocket "^0.10.0" - uuid "^3.0.1" - -sort-keys@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-1.1.2.tgz#441b6d4d346798f1b4e49e8920adfba0e543f9ad" - dependencies: - is-plain-obj "^1.0.0" - -source-list-map@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.0.tgz#aaa47403f7b245a92fbc97ea08f250d6087ed085" - -source-map-resolve@^0.3.0: - version "0.3.1" - resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.3.1.tgz#610f6122a445b8dd51535a2a71b783dfc1248761" - dependencies: - atob "~1.1.0" - resolve-url "~0.2.1" - source-map-url "~0.3.0" - urix "~0.1.0" - -source-map-resolve@^0.5.0: - version "0.5.1" - resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.1.tgz#7ad0f593f2281598e854df80f19aae4b92d7a11a" - dependencies: - atob "^2.0.0" - decode-uri-component "^0.2.0" - resolve-url "^0.2.1" - source-map-url "^0.4.0" - urix "^0.1.0" - -source-map-support@^0.4.15: - version "0.4.18" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f" - dependencies: - source-map "^0.5.6" - -source-map-url@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" - -source-map-url@~0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.3.0.tgz#7ecaf13b57bcd09da8a40c5d269db33799d4aaf9" - -source-map@0.5.x, source-map@^0.5.3, source-map@^0.5.6, source-map@^0.5.7, source-map@~0.5.1: - version "0.5.7" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" - -source-map@^0.1.38: - version "0.1.43" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346" - dependencies: - amdefine ">=0.0.4" - -source-map@^0.4.2: - version "0.4.4" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b" - dependencies: - amdefine ">=0.0.4" - -source-map@^0.6.1, source-map@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" - -spdx-correct@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.0.0.tgz#05a5b4d7153a195bc92c3c425b69f3b2a9524c82" - dependencies: - spdx-expression-parse "^3.0.0" - spdx-license-ids "^3.0.0" - -spdx-exceptions@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz#2c7ae61056c714a5b9b9b2b2af7d311ef5c78fe9" - -spdx-expression-parse@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0" - dependencies: - spdx-exceptions "^2.1.0" - spdx-license-ids "^3.0.0" - -spdx-license-ids@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz#7a7cd28470cc6d3a1cfe6d66886f6bc430d3ac87" - -spdy-transport@^2.0.18: - version "2.1.0" - resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-2.1.0.tgz#4bbb15aaffed0beefdd56ad61dbdc8ba3e2cb7a1" - dependencies: - debug "^2.6.8" - detect-node "^2.0.3" - hpack.js "^2.1.6" - obuf "^1.1.1" - readable-stream "^2.2.9" - safe-buffer "^5.0.1" - wbuf "^1.7.2" - -spdy@^3.4.1: - version "3.4.7" - resolved "https://registry.yarnpkg.com/spdy/-/spdy-3.4.7.tgz#42ff41ece5cc0f99a3a6c28aabb73f5c3b03acbc" - dependencies: - debug "^2.6.8" - handle-thing "^1.2.5" - http-deceiver "^1.2.7" - safe-buffer "^5.0.1" - select-hose "^2.0.0" - spdy-transport "^2.0.18" - -split-string@^3.0.1, split-string@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" - dependencies: - extend-shallow "^3.0.0" - -split@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/split/-/split-1.0.1.tgz#605bd9be303aa59fb35f9229fbea0ddec9ea07d9" - dependencies: - through "2" - -sprintf-js@~1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" - -sshpk@^1.7.0: - version "1.14.1" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.14.1.tgz#130f5975eddad963f1d56f92b9ac6c51fa9f83eb" - dependencies: - asn1 "~0.2.3" - assert-plus "^1.0.0" - dashdash "^1.12.0" - getpass "^0.1.1" - optionalDependencies: - bcrypt-pbkdf "^1.0.0" - ecc-jsbn "~0.1.1" - jsbn "~0.1.0" - tweetnacl "~0.14.0" - -ssri@^5.2.4: - version "5.3.0" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-5.3.0.tgz#ba3872c9c6d33a0704a7d71ff045e5ec48999d06" - dependencies: - safe-buffer "^5.1.1" - -static-extend@^0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" - dependencies: - define-property "^0.2.5" - object-copy "^0.1.0" - -"statuses@>= 1.3.1 < 2", "statuses@>= 1.4.0 < 2": - version "1.5.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" - -statuses@~1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087" - -stdout-stream@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/stdout-stream/-/stdout-stream-1.4.0.tgz#a2c7c8587e54d9427ea9edb3ac3f2cd522df378b" - dependencies: - readable-stream "^2.0.1" - -stream-browserify@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.1.tgz#66266ee5f9bdb9940a4e4514cafb43bb71e5c9db" - dependencies: - inherits "~2.0.1" - readable-stream "^2.0.2" - -stream-each@^1.1.0: - version "1.2.2" - resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.2.tgz#8e8c463f91da8991778765873fe4d960d8f616bd" - dependencies: - end-of-stream "^1.1.0" - stream-shift "^1.0.0" - -stream-http@^2.7.2: - version "2.8.1" - resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.1.tgz#d0441be1a457a73a733a8a7b53570bebd9ef66a4" - dependencies: - builtin-status-codes "^3.0.0" - inherits "^2.0.1" - readable-stream "^2.3.3" - to-arraybuffer "^1.0.0" - xtend "^4.0.0" - -stream-shift@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952" - -strict-uri-encode@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" - -string-width@^1.0.1, string-width@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" - dependencies: - code-point-at "^1.0.0" - is-fullwidth-code-point "^1.0.0" - strip-ansi "^3.0.0" - -string-width@^2.0.0, string-width@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" - dependencies: - is-fullwidth-code-point "^2.0.0" - strip-ansi "^4.0.0" - -string_decoder@^1.0.0, string_decoder@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" - dependencies: - safe-buffer "~5.1.0" - -string_decoder@~0.10.x: - version "0.10.31" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" - -stringstream@~0.0.4, stringstream@~0.0.5: - version "0.0.5" - resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878" - -strip-ansi@^3.0.0, strip-ansi@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - dependencies: - ansi-regex "^2.0.0" - -strip-ansi@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" - dependencies: - ansi-regex "^3.0.0" - -strip-bom@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" - dependencies: - is-utf8 "^0.2.0" - -strip-bom@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" - -strip-eof@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" - -strip-indent@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" - dependencies: - get-stdin "^4.0.1" - -strip-json-comments@~2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" - -style-loader@^0.19.0: - version "0.19.1" - resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-0.19.1.tgz#591ffc80bcefe268b77c5d9ebc0505d772619f85" - dependencies: - loader-utils "^1.0.2" - schema-utils "^0.3.0" - -supports-color@4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.2.0.tgz#ad986dc7eb2315d009b4d77c8169c2231a684037" - dependencies: - has-flag "^2.0.0" - -supports-color@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" - -supports-color@^3.2.3: - version "3.2.3" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6" - dependencies: - has-flag "^1.0.0" - -supports-color@^4.0.0, supports-color@^4.2.1: - version "4.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.5.0.tgz#be7a0de484dec5c5cddf8b3d59125044912f635b" - dependencies: - has-flag "^2.0.0" - -supports-color@^5.1.0, supports-color@^5.3.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.3.0.tgz#5b24ac15db80fa927cf5227a4a33fd3c4c7676c0" - dependencies: - has-flag "^3.0.0" - -svgo@^0.7.0: - version "0.7.2" - resolved "https://registry.yarnpkg.com/svgo/-/svgo-0.7.2.tgz#9f5772413952135c6fefbf40afe6a4faa88b4bb5" - dependencies: - coa "~1.0.1" - colors "~1.1.2" - csso "~2.3.1" - js-yaml "~3.7.0" - mkdirp "~0.5.1" - sax "~1.2.1" - whet.extend "~0.9.9" - -tapable@^0.2.7: - version "0.2.8" - resolved "https://registry.yarnpkg.com/tapable/-/tapable-0.2.8.tgz#99372a5c999bf2df160afc0d74bed4f47948cd22" - -tar-pack@^3.4.0: - version "3.4.1" - resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.4.1.tgz#e1dbc03a9b9d3ba07e896ad027317eb679a10a1f" - dependencies: - debug "^2.2.0" - fstream "^1.0.10" - fstream-ignore "^1.0.5" - once "^1.3.3" - readable-stream "^2.1.4" - rimraf "^2.5.1" - tar "^2.2.1" - uid-number "^0.0.6" - -tar@2.2.1, tar@^2.0.0, tar@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1" - dependencies: - block-stream "*" - fstream "^1.0.2" - inherits "2" - -temp@^0.8.3: - version "0.8.3" - resolved "https://registry.yarnpkg.com/temp/-/temp-0.8.3.tgz#e0c6bc4d26b903124410e4fed81103014dfc1f59" - dependencies: - os-tmpdir "^1.0.0" - rimraf "~2.2.6" - -through2@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" - dependencies: - readable-stream "^2.1.5" - xtend "~4.0.1" - -through@2: - version "2.3.8" - resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" - -thunky@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.0.2.tgz#a862e018e3fb1ea2ec3fce5d55605cf57f247371" - -time-stamp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-2.0.0.tgz#95c6a44530e15ba8d6f4a3ecb8c3a3fac46da357" - -timers-browserify@^2.0.4: - version "2.0.6" - resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.6.tgz#241e76927d9ca05f4d959819022f5b3664b64bae" - dependencies: - setimmediate "^1.0.4" - -to-arraybuffer@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" - -to-fast-properties@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" - -to-object-path@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" - dependencies: - kind-of "^3.0.2" - -to-regex-range@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" - dependencies: - is-number "^3.0.0" - repeat-string "^1.6.1" - -to-regex@^3.0.1, to-regex@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" - dependencies: - define-property "^2.0.2" - extend-shallow "^3.0.2" - regex-not "^1.0.2" - safe-regex "^1.1.0" - -to-string-loader@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/to-string-loader/-/to-string-loader-1.1.5.tgz#7b7aa17891b7bb4947a7a11bfb03b5fde9c6e695" - dependencies: - loader-utils "^0.2.16" - -toposort@^1.0.0: - version "1.0.6" - resolved "https://registry.yarnpkg.com/toposort/-/toposort-1.0.6.tgz#c31748e55d210effc00fdcdc7d6e68d7d7bb9cec" - -tough-cookie@~2.3.0, tough-cookie@~2.3.3: - version "2.3.4" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.4.tgz#ec60cee38ac675063ffc97a5c18970578ee83655" - dependencies: - punycode "^1.4.1" - -trim-newlines@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" - -trim-right@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" - -"true-case-path@^1.0.2": - version "1.0.2" - resolved "https://registry.yarnpkg.com/true-case-path/-/true-case-path-1.0.2.tgz#7ec91130924766c7f573be3020c34f8fdfd00d62" - dependencies: - glob "^6.0.4" - -tty-browserify@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" - -tunnel-agent@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" - dependencies: - safe-buffer "^5.0.1" - -tunnel-agent@~0.4.1: - version "0.4.3" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb" - -tweetnacl@^0.14.3, tweetnacl@~0.14.0: - version "0.14.5" - resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" - -type-is@~1.6.15, type-is@~1.6.16: - version "1.6.16" - resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.16.tgz#f89ce341541c672b25ee7ae3c73dee3b2be50194" - dependencies: - media-typer "0.3.0" - mime-types "~2.1.18" - -typedarray@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" - -uglify-es@^3.3.4: - version "3.3.9" - resolved "https://registry.yarnpkg.com/uglify-es/-/uglify-es-3.3.9.tgz#0c1c4f0700bed8dbc124cdb304d2592ca203e677" - dependencies: - commander "~2.13.0" - source-map "~0.6.1" - -uglify-js@3.3.x: - version "3.3.20" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.3.20.tgz#dc8bdee7d454c7d31dddc36f922d170bfcee3a0a" - dependencies: - commander "~2.15.0" - source-map "~0.6.1" - -uglify-js@^2.8.29: - version "2.8.29" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.29.tgz#29c5733148057bb4e1f75df35b7a9cb72e6a59dd" - dependencies: - source-map "~0.5.1" - yargs "~3.10.0" - optionalDependencies: - uglify-to-browserify "~1.0.0" - -uglify-to-browserify@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7" - -uglifyjs-webpack-plugin@^0.4.6: - version "0.4.6" - resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-0.4.6.tgz#b951f4abb6bd617e66f63eb891498e391763e309" - dependencies: - source-map "^0.5.6" - uglify-js "^2.8.29" - webpack-sources "^1.0.1" - -uglifyjs-webpack-plugin@^1.2.7: - version "1.2.7" - resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.2.7.tgz#57638dd99c853a1ebfe9d97b42160a8a507f9d00" - dependencies: - cacache "^10.0.4" - find-cache-dir "^1.0.0" - schema-utils "^0.4.5" - serialize-javascript "^1.4.0" - source-map "^0.6.1" - uglify-es "^3.3.4" - webpack-sources "^1.1.0" - worker-farm "^1.5.2" - -uid-number@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" - -union-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.0.tgz#5c71c34cb5bad5dcebe3ea0cd08207ba5aa1aea4" - dependencies: - arr-union "^3.1.0" - get-value "^2.0.6" - is-extendable "^0.1.1" - set-value "^0.4.3" - -uniq@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" - -uniqid@^4.0.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/uniqid/-/uniqid-4.1.1.tgz#89220ddf6b751ae52b5f72484863528596bb84c1" - dependencies: - macaddress "^0.2.8" - -uniqs@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/uniqs/-/uniqs-2.0.0.tgz#ffede4b36b25290696e6e165d4a59edb998e6b02" - -unique-filename@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.0.tgz#d05f2fe4032560871f30e93cbe735eea201514f3" - dependencies: - unique-slug "^2.0.0" - -unique-slug@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.0.tgz#db6676e7c7cc0629878ff196097c78855ae9f4ab" - dependencies: - imurmurhash "^0.1.4" - -universalify@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.1.tgz#fa71badd4437af4c148841e3b3b165f9e9e590b7" - -unpipe@1.0.0, unpipe@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" - -unset-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" - dependencies: - has-value "^0.3.1" - isobject "^3.0.0" - -upath@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/upath/-/upath-1.0.4.tgz#ee2321ba0a786c50973db043a50b7bcba822361d" - -upper-case@^1.1.1: - version "1.1.3" - resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598" - -uri-js@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-3.0.2.tgz#f90b858507f81dea4dcfbb3c4c3dbfa2b557faaa" - dependencies: - punycode "^2.1.0" - -urix@^0.1.0, urix@~0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" - -url-loader@^0.6.2: - version "0.6.2" - resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-0.6.2.tgz#a007a7109620e9d988d14bce677a1decb9a993f7" - dependencies: - loader-utils "^1.0.2" - mime "^1.4.1" - schema-utils "^0.3.0" - -url-parse@1.0.x: - version "1.0.5" - resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.0.5.tgz#0854860422afdcfefeb6c965c662d4800169927b" - dependencies: - querystringify "0.0.x" - requires-port "1.0.x" - -url-parse@^1.1.8: - version "1.3.0" - resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.3.0.tgz#04a06c420d22beb9804f7ada2d57ad13160a4258" - dependencies: - querystringify "~1.0.0" - requires-port "~1.0.0" - -url@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" - dependencies: - punycode "1.3.2" - querystring "0.2.0" - -use@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/use/-/use-3.1.0.tgz#14716bf03fdfefd03040aef58d8b4b85f3a7c544" - dependencies: - kind-of "^6.0.2" - -util-deprecate@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" - -util@0.10.3, util@^0.10.3: - version "0.10.3" - resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" - dependencies: - inherits "2.0.1" - -utila@~0.3: - version "0.3.3" - resolved "https://registry.yarnpkg.com/utila/-/utila-0.3.3.tgz#d7e8e7d7e309107092b05f8d9688824d633a4226" - -utila@~0.4: - version "0.4.0" - resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" - -utils-merge@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" - -uuid@^3.0.0, uuid@^3.0.1, uuid@^3.1.0: - version "3.2.1" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.2.1.tgz#12c528bb9d58d0b9265d9a2f6f0fe8be17ff1f14" - -validate-npm-package-license@^3.0.1: - version "3.0.3" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz#81643bcbef1bdfecd4623793dc4648948ba98338" - dependencies: - spdx-correct "^3.0.0" - spdx-expression-parse "^3.0.0" - -vary@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" - -vendors@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/vendors/-/vendors-1.0.1.tgz#37ad73c8ee417fb3d580e785312307d274847f22" - -verror@1.10.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" - dependencies: - assert-plus "^1.0.0" - core-util-is "1.0.2" - extsprintf "^1.2.0" - -vm-browserify@0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-0.0.4.tgz#5d7ea45bbef9e4a6ff65f95438e0a87c357d5a73" - dependencies: - indexof "0.0.1" - -watchpack@^1.4.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.5.0.tgz#231e783af830a22f8966f65c4c4bacc814072eed" - dependencies: - chokidar "^2.0.2" - graceful-fs "^4.1.2" - neo-async "^2.5.0" - -wbuf@^1.1.0, wbuf@^1.7.2: - version "1.7.3" - resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.3.tgz#c1d8d149316d3ea852848895cb6a0bfe887b87df" - dependencies: - minimalistic-assert "^1.0.0" - -webpack-dev-middleware@1.12.2: - version "1.12.2" - resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-1.12.2.tgz#f8fc1120ce3b4fc5680ceecb43d777966b21105e" - dependencies: - memory-fs "~0.4.1" - mime "^1.5.0" - path-is-absolute "^1.0.0" - range-parser "^1.0.3" - time-stamp "^2.0.0" - -webpack-dev-server@^2.9.7: - version "2.11.2" - resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-2.11.2.tgz#1f4f4c78bf1895378f376815910812daf79a216f" - dependencies: - ansi-html "0.0.7" - array-includes "^3.0.3" - bonjour "^3.5.0" - chokidar "^2.0.0" - compression "^1.5.2" - connect-history-api-fallback "^1.3.0" - debug "^3.1.0" - del "^3.0.0" - express "^4.16.2" - html-entities "^1.2.0" - http-proxy-middleware "~0.17.4" - import-local "^1.0.0" - internal-ip "1.2.0" - ip "^1.1.5" - killable "^1.0.0" - loglevel "^1.4.1" - opn "^5.1.0" - portfinder "^1.0.9" - selfsigned "^1.9.1" - serve-index "^1.7.2" - sockjs "0.3.19" - sockjs-client "1.1.4" - spdy "^3.4.1" - strip-ansi "^3.0.0" - supports-color "^5.1.0" - webpack-dev-middleware "1.12.2" - yargs "6.6.0" - -webpack-merge@^4.1.1: - version "4.1.2" - resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-4.1.2.tgz#5d372dddd3e1e5f8874f5bf5a8e929db09feb216" - dependencies: - lodash "^4.17.5" - -webpack-sources@^1.0.1, webpack-sources@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.1.0.tgz#a101ebae59d6507354d71d8013950a3a8b7a5a54" - dependencies: - source-list-map "^2.0.0" - source-map "~0.6.1" - -webpack@^3.10.0: - version "3.11.0" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-3.11.0.tgz#77da451b1d7b4b117adaf41a1a93b5742f24d894" - dependencies: - acorn "^5.0.0" - acorn-dynamic-import "^2.0.0" - ajv "^6.1.0" - ajv-keywords "^3.1.0" - async "^2.1.2" - enhanced-resolve "^3.4.0" - escope "^3.6.0" - interpret "^1.0.0" - json-loader "^0.5.4" - json5 "^0.5.1" - loader-runner "^2.3.0" - loader-utils "^1.1.0" - memory-fs "~0.4.1" - mkdirp "~0.5.0" - node-libs-browser "^2.0.0" - source-map "^0.5.3" - supports-color "^4.2.1" - tapable "^0.2.7" - uglifyjs-webpack-plugin "^0.4.6" - watchpack "^1.4.0" - webpack-sources "^1.0.1" - yargs "^8.0.2" - -websocket-driver@>=0.5.1: - version "0.7.0" - resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.0.tgz#0caf9d2d755d93aee049d4bdd0d3fe2cca2a24eb" - dependencies: - http-parser-js ">=0.4.0" - websocket-extensions ">=0.1.1" - -websocket-extensions@>=0.1.1: - version "0.1.3" - resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.3.tgz#5d2ff22977003ec687a4b87073dfbbac146ccf29" - -whet.extend@~0.9.9: - version "0.9.9" - resolved "https://registry.yarnpkg.com/whet.extend/-/whet.extend-0.9.9.tgz#f877d5bf648c97e5aa542fadc16d6a259b9c11a1" - -which-module@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" - -which-module@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" - -which@1, which@^1.2.9: - version "1.3.0" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a" - dependencies: - isexe "^2.0.0" - -wide-align@^1.1.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.2.tgz#571e0f1b0604636ebc0dfc21b0339bbe31341710" - dependencies: - string-width "^1.0.2" - -window-size@0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d" - -window-size@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.4.tgz#f8e1aa1ee5a53ec5bf151ffa09742a6ad7697876" - -wordwrap@0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f" - -worker-farm@^1.5.2: - version "1.6.0" - resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.6.0.tgz#aecc405976fab5a95526180846f0dba288f3a4a0" - dependencies: - errno "~0.1.7" - -wrap-ansi@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" - dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" - -wrappy@1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - -xmlbuilder@^8.2.2: - version "8.2.2" - resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-8.2.2.tgz#69248673410b4ba42e1a6136551d2922335aa773" - -xtend@^4.0.0, xtend@~4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" - -y18n@^3.2.0, y18n@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" - -y18n@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" - -yallist@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" - -yargs-parser@^4.2.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-4.2.1.tgz#29cceac0dc4f03c6c87b4a9f217dd18c9f74871c" - dependencies: - camelcase "^3.0.0" - -yargs-parser@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0.tgz#275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a" - dependencies: - camelcase "^3.0.0" - -yargs-parser@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-7.0.0.tgz#8d0ac42f16ea55debd332caf4c4038b3e3f5dfd9" - dependencies: - camelcase "^4.1.0" - -yargs-parser@^8.1.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-8.1.0.tgz#f1376a33b6629a5d063782944da732631e966950" - dependencies: - camelcase "^4.1.0" - -yargs@6.6.0, yargs@^6.5.0: - version "6.6.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-6.6.0.tgz#782ec21ef403345f830a808ca3d513af56065208" - dependencies: - camelcase "^3.0.0" - cliui "^3.2.0" - decamelize "^1.1.1" - get-caller-file "^1.0.1" - os-locale "^1.4.0" - read-pkg-up "^1.0.1" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^1.0.2" - which-module "^1.0.0" - y18n "^3.2.1" - yargs-parser "^4.2.0" - -yargs@^10.0.3: - version "10.1.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-10.1.2.tgz#454d074c2b16a51a43e2fb7807e4f9de69ccb5c5" - dependencies: - cliui "^4.0.0" - decamelize "^1.1.1" - find-up "^2.1.0" - get-caller-file "^1.0.1" - os-locale "^2.0.0" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^2.0.0" - which-module "^2.0.0" - y18n "^3.2.1" - yargs-parser "^8.1.0" - -yargs@^3.7.2: - version "3.32.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.32.0.tgz#03088e9ebf9e756b69751611d2a5ef591482c995" - dependencies: - camelcase "^2.0.1" - cliui "^3.0.3" - decamelize "^1.1.1" - os-locale "^1.4.0" - string-width "^1.0.1" - window-size "^0.1.4" - y18n "^3.2.0" - -yargs@^7.0.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.0.tgz#6ba318eb16961727f5d284f8ea003e8d6154d0c8" - dependencies: - camelcase "^3.0.0" - cliui "^3.2.0" - decamelize "^1.1.1" - get-caller-file "^1.0.1" - os-locale "^1.4.0" - read-pkg-up "^1.0.1" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^1.0.2" - which-module "^1.0.0" - y18n "^3.2.1" - yargs-parser "^5.0.0" - -yargs@^8.0.2: - version "8.0.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-8.0.2.tgz#6299a9055b1cefc969ff7e79c1d918dceb22c360" - dependencies: - camelcase "^4.1.0" - cliui "^3.2.0" - decamelize "^1.1.1" - get-caller-file "^1.0.1" - os-locale "^2.0.0" - read-pkg-up "^2.0.0" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^2.0.0" - which-module "^2.0.0" - y18n "^3.2.1" - yargs-parser "^7.0.0" - -yargs@~3.10.0: - version "3.10.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.10.0.tgz#f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1" - dependencies: - camelcase "^1.0.2" - cliui "^2.1.0" - decamelize "^1.0.0" - window-size "0.1.0"