diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
new file mode 100644
index 0000000..84f9e74
--- /dev/null
+++ b/.github/workflows/main.yml
@@ -0,0 +1,20 @@
+name: main
+
+on:
+ push:
+ branches:
+ - main
+
+jobs:
+ build:
+ name: Deploy docs
+ runs-on: ubuntu-latest
+ steps:
+ - name: 'Checkout sources'
+ uses: actions/checkout@v4
+
+ - name: 'Deploy docs'
+ uses: mhausenblas/mkdocs-deploy-gh-pages@master
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ REQUIREMENTS: requirements.txt
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..8b03c06
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,2 @@
+site/
+.DS_Store
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..281d399
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,619 @@
+ 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.
diff --git a/README.md b/README.md
index c3274f7..4a15355 100644
--- a/README.md
+++ b/README.md
@@ -1 +1 @@
-# getcodelimit.github.io
\ No newline at end of file
+# Code Limit Documentation
diff --git a/docs/assets/easy.png b/docs/assets/easy.png
new file mode 100644
index 0000000..f97fc10
Binary files /dev/null and b/docs/assets/easy.png differ
diff --git a/docs/assets/favicon.png b/docs/assets/favicon.png
new file mode 100644
index 0000000..701f47e
Binary files /dev/null and b/docs/assets/favicon.png differ
diff --git a/docs/assets/hard-to-maintain.png b/docs/assets/hard-to-maintain.png
new file mode 100644
index 0000000..1e79e67
Binary files /dev/null and b/docs/assets/hard-to-maintain.png differ
diff --git a/docs/assets/logo.png b/docs/assets/logo.png
new file mode 100644
index 0000000..c6b4b52
Binary files /dev/null and b/docs/assets/logo.png differ
diff --git a/docs/assets/report.cast b/docs/assets/report.cast
new file mode 100644
index 0000000..d53ee83
--- /dev/null
+++ b/docs/assets/report.cast
@@ -0,0 +1,49 @@
+{"version": 2, "width": 80, "height": 25, "timestamp": 1712420376, "env": {"SHELL": "/bin/zsh", "TERM": "xterm-256color"}}
+[0.372445, "o", "\u001b]2;rob@mahler:~/projects/opensource/fastapi\u0007\u001b]1;..ource/fastapi\u0007"]
+[0.372945, "o", "\u001b]0;~/projects/opensource/fastapi\u0007"]
+[0.376495, "o", "\r\n"]
+[0.376679, "o", "\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[34m~/projects/opensource/fastapi\u001b[39m\r\n\r\u001b[35m❯\u001b[39m \u001b[K"]
+[0.376864, "o", "\u001b[?1h\u001b="]
+[0.377014, "o", "\u001b[?2004h"]
+[0.425151, "o", "\r\r\u001b[A\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[34m~/projects/opensource/fastapi\u001b[39m \u001b[38;5;242mmaster\u001b[38;5;218m\u001b[39m\r\n\r\u001b[35m❯\u001b[39m \u001b[K"]
+[1.704691, "o", "c"]
+[2.220527, "o", "\bco"]
+[2.466128, "o", "d"]
+[2.511853, "o", "e"]
+[2.646861, "o", "l"]
+[2.735853, "o", "i"]
+[2.955499, "o", "m"]
+[3.019103, "o", "i"]
+[3.593736, "o", "t"]
+[3.654651, "o", " "]
+[3.976152, "o", "r"]
+[4.02638, "o", "e"]
+[4.088613, "o", "p"]
+[4.142272, "o", "o"]
+[4.540734, "o", "r"]
+[5.204344, "o", "t"]
+[5.386895, "o", " "]
+[6.078544, "o", "."]
+[6.734379, "o", "\u001b[?1l\u001b>"]
+[6.735087, "o", "\u001b[?2004l\r\r\n"]
+[6.737336, "o", "\u001b]2;codelimit report .\u0007\u001b]1;codelimit\u0007"]
+[6.737727, "o", "\u001b]0;fastapi: codelimit report .\u0007"]
+[6.996205, "o", "\u001b[1mfastapi/applications.py\u001b[0m\u001b[36m:\u001b[0m64\u001b[36m:\u001b[0m5\u001b[36m:\u001b[0m 317 \u001b[31m✖\u001b[0m __init__\r\n"]
+[6.996294, "o", "\u001b[1mfastapi/param_functions.py\u001b[0m\u001b[36m:\u001b[0m1263\u001b[36m:\u001b[0m1\u001b[36m:\u001b[0m 229 \u001b[31m✖\u001b[0m Body\r\n"]
+[6.996347, "o", "\u001b[1mfastapi/param_functions.py\u001b[0m\u001b[36m:\u001b[0m643\u001b[36m:\u001b[0m1\u001b[36m:\u001b[0m 222 \u001b[31m✖\u001b[0m Header\r\n"]
+[6.996423, "o", "\u001b[1mfastapi/param_functions.py\u001b[0m\u001b[36m:\u001b[0m1592\u001b[36m:\u001b[0m1\u001b[36m:\u001b[0m 222 \u001b[31m✖\u001b[0m Form\r\n"]
+[6.996499, "o", "\u001b[1mfastapi/param_functions.py\u001b[0m\u001b[36m:\u001b[0m1906\u001b[36m:\u001b[0m1\u001b[36m:\u001b[0m 222 \u001b[31m✖\u001b[0m File\r\n"]
+[6.996571, "o", "\u001b[1mfastapi/param_functions.py\u001b[0m\u001b[36m:\u001b[0m11\u001b[36m:\u001b[0m1\u001b[36m:\u001b[0m 216 \u001b[31m✖\u001b[0m Path\r\n"]
+[6.996638, "o", "\u001b[1mfastapi/param_functions.py\u001b[0m\u001b[36m:\u001b[0m339\u001b[36m:\u001b[0m1\u001b[36m:\u001b[0m 215 \u001b[31m✖\u001b[0m Query\r\n"]
+[6.996719, "o", "\u001b[1mfastapi/param_functions.py\u001b[0m\u001b[36m:\u001b[0m959\u001b[36m:\u001b[0m1\u001b[36m:\u001b[0m 215 \u001b[31m✖\u001b[0m Cookie\r\n"]
+[6.996783, "o", "\u001b[1mfastapi/encoders.py\u001b[0m\u001b[36m:\u001b[0m102\u001b[36m:\u001b[0m1\u001b[36m:\u001b[0m 191 \u001b[31m✖\u001b[0m jsonable_encoder\r\n"]
+[6.996855, "o", "\u001b[1mfastapi/openapi/utils.py\u001b[0m\u001b[36m:\u001b[0m215\u001b[36m:\u001b[0m1\u001b[36m:\u001b[0m 183 \u001b[31m✖\u001b[0m get_openapi_path\r\n"]
+[6.997954, "o", "\u001b[1;36m57\u001b[0m\u001b[1m more rows, use --full option to get all rows\u001b[0m\r\n"]
+[7.017025, "o", "\u001b]2;rob@mahler:~/projects/opensource/fastapi\u0007\u001b]1;..ource/fastapi\u0007"]
+[7.017091, "o", "\u001b]0;~/projects/opensource/fastapi\u0007"]
+[7.018383, "o", "\r\n"]
+[7.018456, "o", "\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[34m~/projects/opensource/fastapi\u001b[39m \u001b[38;5;242mmaster\u001b[38;5;218m\u001b[39m\r\n\r\u001b[35m❯\u001b[39m "]
+[7.018496, "o", "\u001b[K"]
+[7.018593, "o", "\u001b[?1h\u001b="]
+[7.018651, "o", "\u001b[?2004h"]
+[9.288505, "o", "\u001b[?2004l\r\r\n"]
diff --git a/docs/assets/scan.cast b/docs/assets/scan.cast
new file mode 100644
index 0000000..50526ab
--- /dev/null
+++ b/docs/assets/scan.cast
@@ -0,0 +1,67 @@
+{"version": 2, "width": 80, "height": 25, "timestamp": 1712419564, "env": {"SHELL": "/bin/zsh", "TERM": "xterm-256color"}}
+[0.376559, "o", "\u001b]2;rob@mahler:~/projects/opensource/fastapi\u0007\u001b]1;..ource/fastapi\u0007"]
+[0.376958, "o", "\u001b]0;~/projects/opensource/fastapi\u0007"]
+[0.380477, "o", "\r\n"]
+[0.380587, "o", "\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[34m~/projects/opensource/fastapi\u001b[39m\r\n\r\u001b[35m❯\u001b[39m \u001b[K"]
+[0.380907, "o", "\u001b[?1h\u001b="]
+[0.380952, "o", "\u001b[?2004h"]
+[0.427995, "o", "\r\r\u001b[A\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[34m~/projects/opensource/fastapi\u001b[39m \u001b[38;5;242mmaster\u001b[38;5;218m\u001b[39m\r\n\r\u001b[35m❯\u001b[39m \u001b[K"]
+[1.641417, "o", "c"]
+[1.792557, "o", "\bco"]
+[1.916605, "o", "d"]
+[1.959507, "o", "e"]
+[2.236741, "o", "l"]
+[2.351357, "o", "i"]
+[2.562204, "o", "m"]
+[2.618614, "o", "i"]
+[3.116431, "o", "t"]
+[3.259285, "o", " "]
+[3.811185, "o", "s"]
+[4.00725, "o", "c"]
+[4.231535, "o", "a"]
+[4.321906, "o", "n"]
+[4.357836, "o", " "]
+[5.063707, "o", "."]
+[5.76313, "o", "\u001b[?1l\u001b>"]
+[5.763746, "o", "\u001b[?2004l\r\r\n"]
+[5.765945, "o", "\u001b]2;codelimit scan .\u0007\u001b]1;codelimit\u0007"]
+[5.766406, "o", "\u001b]0;fastapi: codelimit scan .\u0007"]
+[6.010441, "o", " \u001b[1mCode Limit\u001b[0m: \u001b[1;36m0.8\u001b[0m.\u001b[1;36m1\u001b[0m\r\n"]
+[6.010585, "o", " \u001b[1mScan date\u001b[0m: \u001b[1;36m2024\u001b[0m-\u001b[1;36m04\u001b[0m-\u001b[1;36m06\u001b[0m \u001b[1;92m18:06:10\u001b[0m\r\n"]
+[6.010803, "o", " \u001b[1mScan root\u001b[0m: \u001b[35m/Users/rob/projects/opensource/\u001b[0m\u001b[95mfastapi\u001b[0m\r\n\u001b[?25l"]
+[7.022598, "o", "\r\u001b[2K \r\n \u001b[1m \u001b[0m\u001b[1mLanguage \u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Files\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Lines of Code\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Functions\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ⚠\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ✖\u001b[0m\u001b[1m \u001b[0m \r\n ────────────────────────────────────────────────────────────────────────────── \r\n JavaScript 2 341 21 0 \u001b[31m 1\u001b[0m \r\n "]
+[7.53492, "o", "\r\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K \r\n \u001b[1m \u001b[0m\u001b[1mLanguage \u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Files\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Lines of Code\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Functions\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ⚠\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ✖\u001b[0m\u001b[1m \u001b[0m \r\n ────────────────────────────────────────────────────────────────────────────── \r\n Python 5 785 15 0 \u001b[31m 8\u001b[0m \r\n JavaScript 2 341 21 0 \u001b[31m 1\u001b[0m \r\n "]
+[8.043821, "o", "\r\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K \r\n \u001b[1m \u001b[0m\u001b[1mLanguage \u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Files\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Lines of Code\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Functions\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ⚠\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ✖\u001b[0m\u001b[1m \u001b[0m \r\n ────────────────────────────────────────────────────────────────────────────── \r\n Python 14 3,372 54 \u001b[38;5;208m 5\u001b[0m \u001b[31m 19\u001b[0m \r\n JavaScript 2 341 21 0 \u001b[31m 1\u001b[0m \r\n "]
+[8.56258, "o", "\r\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K \r\n \u001b[1m \u001b[0m\u001b[1mLanguage \u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Files\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Lines of Code\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Functions\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ⚠\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ✖\u001b[0m\u001b[1m \u001b[0m \r\n ────────────────────────────────────────────────────────────────────────────── \r\n Python 17 5,807 91 \u001b[38;5;208m 7\u001b[0m \u001b[31m 32\u001b[0m \r\n JavaScript 2 341 21 0 \u001b[31m 1\u001b[0m \r\n "]
+[9.074885, "o", "\r\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K \r\n \u001b[1m \u001b[0m\u001b[1mLanguage \u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Files\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Lines of Code\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Functions\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ⚠\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ✖\u001b[0m\u001b[1m \u001b[0m \r\n ────────────────────────────────────────────────────────────────────────────── \r\n Python 36 8,856 185 \u001b[38;5;208m 16\u001b[0m \u001b[31m 39\u001b[0m \r\n JavaScript 2 341 21 0 \u001b[31m 1\u001b[0m \r\n "]
+[9.587268, "o", "\r\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K \r\n \u001b[1m \u001b[0m\u001b[1mLanguage \u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Files\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Lines of Code\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Functions\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ⚠\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ✖\u001b[0m\u001b[1m \u001b[0m \r\n ────────────────────────────────────────────────────────────────────────────── \r\n Python 42 10,788 221 \u001b[38;5;208m 24\u001b[0m \u001b[31m 42\u001b[0m \r\n JavaScript 2 341 21 0 \u001b[31m 1\u001b[0m \r\n "]
+[10.093428, "o", "\r\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K \r\n \u001b[1m \u001b[0m\u001b[1mLanguage \u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Files\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Lines of Code\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Functions\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ⚠\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ✖\u001b[0m\u001b[1m \u001b[0m \r\n ────────────────────────────────────────────────────────────────────────────── \r\n Python 49 11,266 256 \u001b[38;5;208m 24\u001b[0m \u001b[31m 42\u001b[0m \r\n JavaScript 2 341 21 0 \u001b[31m 1\u001b[0m \r\n "]
+[10.599998, "o", "\r\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K \r\n \u001b[1m \u001b[0m\u001b[1mLanguage \u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Files\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Lines of Code\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Functions\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ⚠\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ✖\u001b[0m\u001b[1m \u001b[0m \r\n ────────────────────────────────────────────────────────────────────────────── \r\n Python 49 11,266 256 \u001b[38;5;208m 24\u001b[0m \u001b[31m 42\u001b[0m \r\n JavaScript 2 341 21 0 \u001b[31m 1\u001b[0m \r\n "]
+[11.109335, "o", "\r\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K \r\n \u001b[1m \u001b[0m\u001b[1mLanguage \u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Files\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Lines of Code\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Functions\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ⚠\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ✖\u001b[0m\u001b[1m \u001b[0m \r\n ────────────────────────────────────────────────────────────────────────────── \r\n Python 98 11,825 269 \u001b[38;5;208m 24\u001b[0m \u001b[31m 42\u001b[0m \r\n JavaScript 2 341 21 0 \u001b[31m 1\u001b[0m \r\n "]
+[11.615381, "o", "\r\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K \r\n \u001b[1m \u001b[0m\u001b[1mLanguage \u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Files\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Lines of Code\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Functions\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ⚠\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ✖\u001b[0m\u001b[1m \u001b[0m \r\n ────────────────────────────────────────────────────────────────────────────── \r\n Python 186 13,165 279 \u001b[38;5;208m 24\u001b[0m \u001b[31m 42\u001b[0m \r\n JavaScript 2 341 21 0 \u001b[31m 1\u001b[0m \r\n "]
+[12.121147, "o", "\r\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K \r\n \u001b[1m \u001b[0m\u001b[1mLanguage \u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Files\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Lines of Code\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Functions\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ⚠\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ✖\u001b[0m\u001b[1m \u001b[0m \r\n ────────────────────────────────────────────────────────────────────────────── \r\n Python 226 14,623 361 \u001b[38;5;208m 24\u001b[0m \u001b[31m 42\u001b[0m \r\n JavaScript 2 341 21 0 \u001b[31m 1\u001b[0m \r\n "]
+[12.629602, "o", "\r\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K \r\n \u001b[1m \u001b[0m\u001b[1mLanguage \u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Files\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Lines of Code\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Functions\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ⚠\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ✖\u001b[0m\u001b[1m \u001b[0m \r\n ────────────────────────────────────────────────────────────────────────────── \r\n Python 279 15,957 445 \u001b[38;5;208m 24\u001b[0m \u001b[31m 42\u001b[0m \r\n JavaScript 2 341 21 0 \u001b[31m 1\u001b[0m \r\n "]
+[13.138173, "o", "\r\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K \r\n \u001b[1m \u001b[0m\u001b[1mLanguage \u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Files\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Lines of Code\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Functions\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ⚠\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ✖\u001b[0m\u001b[1m \u001b[0m \r\n ────────────────────────────────────────────────────────────────────────────── \r\n Python 366 17,008 466 \u001b[38;5;208m 24\u001b[0m \u001b[31m 42\u001b[0m \r\n JavaScript 2 341 21 0 \u001b[31m 1\u001b[0m \r\n "]
+[13.650147, "o", "\r\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K \r\n \u001b[1m \u001b[0m\u001b[1mLanguage \u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Files\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Lines of Code\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Functions\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ⚠\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ✖\u001b[0m\u001b[1m \u001b[0m \r\n ────────────────────────────────────────────────────────────────────────────── \r\n Python 443 18,276 523 \u001b[38;5;208m 24\u001b[0m \u001b[31m 42\u001b[0m \r\n JavaScript 3 373 22 0 \u001b[31m 1\u001b[0m \r\n "]
+[14.153085, "o", "\r\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K \r\n \u001b[1m \u001b[0m\u001b[1mLanguage \u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Files\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Lines of Code\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Functions\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ⚠\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ✖\u001b[0m\u001b[1m \u001b[0m \r\n ────────────────────────────────────────────────────────────────────────────── \r\n Python 512 19,814 545 \u001b[38;5;208m 24\u001b[0m \u001b[31m 42\u001b[0m \r\n JavaScript 3 373 22 0 \u001b[31m 1\u001b[0m \r\n "]
+[14.665579, "o", "\r\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K \r\n \u001b[1m \u001b[0m\u001b[1mLanguage \u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Files\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Lines of Code\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Functions\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ⚠\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ✖\u001b[0m\u001b[1m \u001b[0m \r\n ────────────────────────────────────────────────────────────────────────────── \r\n Python 597 21,349 579 \u001b[38;5;208m 24\u001b[0m \u001b[31m 42\u001b[0m \r\n JavaScript 3 373 22 0 \u001b[31m 1\u001b[0m \r\n "]
+[15.155047, "o", "\r\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K \r\n \u001b[1m \u001b[0m\u001b[1mLanguage \u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Files\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Lines of Code\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m Functions\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ⚠\u001b[0m\u001b[1m \u001b[0m \u001b[1m \u001b[0m\u001b[1m ✖\u001b[0m\u001b[1m \u001b[0m \r\n ────────────────────────────────────────────────────────────────────────────── \r\n Python 684 22,580 627 \u001b[38;5;208m 24\u001b[0m \u001b[31m 42\u001b[0m \r\n JavaScript 3 373 22 0 \u001b[31m 1\u001b[0m \r\n \r\n\u001b[?25h"]
+[15.15533, "o", " \u001b[1mTotal lines of code\u001b[0m: \u001b[1;36m22\u001b[0m,\u001b[1;36m953\u001b[0m\r\n"]
+[15.15551, "o", " \u001b[1mTotal files\u001b[0m: \u001b[1;36m687\u001b[0m\r\n"]
+[15.15561, "o", " \u001b[1mTotal functions\u001b[0m: \u001b[1;36m649\u001b[0m\r\n"]
+[15.155786, "o", " \u001b[38;5;208m⚠\u001b[0m \u001b[1;36m24\u001b[0m functions are hard-to-maintain.\r\n"]
+[15.155925, "o", " \u001b[31m✖\u001b[0m \u001b[1;36m43\u001b[0m functions need refactoring.\r\n"]
+[15.188414, "o", "\u001b]2;rob@mahler:~/projects/opensource/fastapi\u0007\u001b]1;..ource/fastapi\u0007"]
+[15.188599, "o", "\u001b]0;~/projects/opensource/fastapi\u0007"]
+[15.189781, "o", "\r\n"]
+[15.189824, "o", "\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[34m~/projects/opensource/fastapi\u001b[39m \u001b[38;5;242mmaster\u001b[38;5;218m\u001b[39m\r\n\r\u001b[35m❯\u001b[39m \u001b[K"]
+[15.189956, "o", "\u001b[?1h\u001b="]
+[15.190032, "o", "\u001b[?2004h"]
+[17.732463, "o", "e"]
+[17.911061, "o", "\bex"]
+[17.994353, "o", "i"]
+[18.289493, "o", "t"]
+[18.891978, "o", "\u001b[?1l\u001b>"]
+[18.892446, "o", "\u001b[?2004l\r\r\n"]
+[18.894903, "o", "\u001b]2;exit\u0007\u001b]1;exit\u0007"]
+[18.895278, "o", "\u001b]0;fastapi: exit\u0007"]
diff --git a/docs/assets/unmaintainable-code.jpg b/docs/assets/unmaintainable-code.jpg
new file mode 100644
index 0000000..860fc55
Binary files /dev/null and b/docs/assets/unmaintainable-code.jpg differ
diff --git a/docs/assets/unmaintainable.png b/docs/assets/unmaintainable.png
new file mode 100644
index 0000000..bf3ae60
Binary files /dev/null and b/docs/assets/unmaintainable.png differ
diff --git a/docs/assets/verbose.png b/docs/assets/verbose.png
new file mode 100644
index 0000000..6e58436
Binary files /dev/null and b/docs/assets/verbose.png differ
diff --git a/docs/configuration.md b/docs/configuration.md
new file mode 100644
index 0000000..cae964e
--- /dev/null
+++ b/docs/configuration.md
@@ -0,0 +1,74 @@
+# Configuration
+
+## Excluding functions
+
+Functions can be excluded from analysis by putting a `# nocl` comment on the
+line above the start of the function, or at any line of the function header.
+
+For example, to ignore a function with a `# nocl` comment above the start of
+the function:
+
+```python
+# nocl
+def some_function():
+ ...
+```
+
+Or you can ignore a function by putting a `# nocl` comment on any line of the
+header:
+
+```python
+def some_function(): # nocl
+ ...
+```
+
+```python
+def some_functions(
+ some_numbers: list[int]
+) -> int: # nocl
+ ...
+```
+
+## Excluding files
+
+Files can be excluded from analysis by using the `--exclude` option.
+This option can be used multiple times and takes a [glob pattern](https://en.wikipedia.org/wiki/Glob_(programming)) as a
+value, for example:
+
+```shell
+codelimit --exclude "*.generated.py" --exclude "docs/*" ...
+```
+
+The `--exclude` option extends the default exclusion list.
+The default exclusion list is:
+
+```python
+[
+ ".bzr",
+ ".direnv",
+ ".eggs",
+ ".git",
+ ".git-rewrite",
+ ".hg",
+ ".ipynb_checkpoints",
+ ".mypy_cache",
+ ".nox",
+ ".pants.d",
+ ".pytest_cache",
+ ".pytype",
+ ".ruff_cache",
+ ".svn",
+ ".tox",
+ ".venv",
+ ".vscode",
+ "__pypackages__",
+ "_build",
+ "buck-out",
+ "build",
+ "dist",
+ "node_modules",
+ "venv",
+ "test",
+ "tests",
+]
+```
\ No newline at end of file
diff --git a/docs/development.md b/docs/development.md
new file mode 100644
index 0000000..09c0e3a
--- /dev/null
+++ b/docs/development.md
@@ -0,0 +1,64 @@
+# Development
+
+After installing dependencies with `poetry install`, Code Limit can be run from
+the repository root like this:
+
+```shell
+poetry run codelimit
+```
+
+For example, to check a codebase at `~/projects/fastapi` run:
+
+```shell
+poetry run codelimit scan ~/projects/fastapi
+```
+
+## Local installation using pipx
+
+To install the development repository locally run:
+
+```shell
+pipx install .
+```
+
+To install the `main` branch locally run:
+
+```shell
+pipx install git+https://github.com/getcodelimit/codelimit.git
+```
+
+Or to install another branch locally run:
+
+```shell
+pip install git+https://github.com/getcodelimit/codelimit.git@issue-123
+```
+
+## Building the binary distribution
+
+Generate a self-contained binary:
+
+```shell
+poetry run poe bundle
+```
+
+## Static documentation
+
+Generating the static documentation:
+
+```shell
+poetry run mkdocs build
+```
+
+See the output:
+
+```shell
+poetry run mkdocs serve
+```
+
+Terminal sessions in the documentation are recorded with the [Asciinema
+CLI](https://docs.asciinema.org/getting-started/) and stored in the `assets`
+folder:
+
+```shell
+asciinema rec scan.cast
+```
diff --git a/docs/faq.md b/docs/faq.md
new file mode 100644
index 0000000..a31084a
--- /dev/null
+++ b/docs/faq.md
@@ -0,0 +1,41 @@
+# F.A.Q.
+
+### Q. What programming languages does Code Limit support?
+
+Currently Code Limit supports these programming languages:
+
+- C
+- C++
+- Java
+- JavaScript
+- Python
+- TypeScript
+
+### Q. How does Code Limit compare to ...
+
+**Black**
+
+[Black](https://github.com/psf/black) is a code formatter and can run alongside Code Limit.
+
+**Flake8**
+
+[Flake8](https://github.com/PyCQA/flake8) is a linter and can run alongside
+Code Limit. Flake8 can be extended with third-party plugins.
+
+**Lizard**
+
+[Lizard](https://github.com/terryyin/lizard) is a code quality tool that
+measures cyclomatic complexity and code duplication.The tool is more used for
+reporting than monitoring during development.
+
+**Radon**
+
+[Radon](https://github.com/rubik/radon) is a code quality tool that computes
+various metrics. Radon calculates cyclomatic complexity for functions but not
+lines of code. The tool is more used for reporting than monitoring during
+development.
+
+**Ruff**
+
+[Ruff](https://github.com/astral-sh/ruff) is a linter and can run alongside
+Code Limit. Ruff has no linting rule for function length.
diff --git a/docs/index.md b/docs/index.md
new file mode 100644
index 0000000..6e966e7
--- /dev/null
+++ b/docs/index.md
@@ -0,0 +1,47 @@
+# Introduction
+
+Code Limit is a tool for developers with one goal: _it tells the developer when
+it’s time to refactor_.
+
+Code Limit measures the lines of code for each function in your codebase and
+assigns each function to a category:
+
+| Easy | Verbose | Hard-to-maintain ⚠ | Unmaintainable ✖ |
+| :---: | :---: | :---: | :---: |
+| 1 - 15 lines of code | 16 - 30 lines of code | 31 - 60 lines of code | 60+ lines of code |
+| ![](assets/easy.png){: style="height:136px;width:230px"} | ![](assets/verbose.png){: style="height:189px;width:230px"} | ![](assets/hard-to-maintain.png){: style="height:294px;width:230px"} | ![](assets/unmaintainable.png){: style="height:564px;width:230px"} |
+
+As the table above shows, functions with more than 60 lines of code (comments
+and empty lines are not counted) are _unmaintainable_, and _need_ to be
+refactored. Functions with more than 30 lines of code run a risk of turning
+into unmaintainable functions over time, you should keep an eye on them and
+refactor if possible. Functions in the first two categories are fine and don't
+need refactoring.
+
+Function length is just one code metric, but it is a very important code
+metric. Short functions are easy to understand, easy to test, easy to re-use.
+For example, code duplication is another important code metric but duplication
+is much easier to prevent and fix if your functions are short.
+
+
+
+Function length is a simple code metric, so simple you can count it by hand.
+It's also a (fairly) non-controversial metric, most developers agree longer
+functions are harder to maintain. Also, there's always a refactoring possible
+to make functions smaller.
+
+Because function length is such a simple code metric, many code quality tools
+measure it. But these tools measure a lot more metrics, sometimes so much
+metrics that developers are overwhemled and loose focus on the metrics that
+matter most.
+
+Code Limit measures only function length but it tries to be the best developer
+tool for measuring it. By notifying developers when it's time to refactor, Code
+Limit prevents unmaintainable code.
+
+Keep your software maintainable and start using Code Limit today!
diff --git a/docs/javascripts/asciinema-player.min.js b/docs/javascripts/asciinema-player.min.js
new file mode 100644
index 0000000..6ab7674
--- /dev/null
+++ b/docs/javascripts/asciinema-player.min.js
@@ -0,0 +1 @@
+var AsciinemaPlayer=function(A){"use strict";const g={};const I=Symbol("solid-proxy"),B=Symbol("solid-track"),Q={equals:(A,g)=>A===g};let C=J;const E=1,e=2,i={owned:null,cleanups:null,context:null,owner:null};var t=null;let o=null,s=null,n=null,r=null,a=0;function c(A,g){const I=s,B=t,Q=0===A.length,C=Q?i:{owned:null,cleanups:null,context:null,owner:void 0===g?B:g},E=Q?A:()=>A((()=>y((()=>U(C)))));t=C,s=null;try{return R(E,!0)}finally{s=I,t=B}}function D(A,g){const I={value:A,observers:null,observerSlots:null,comparator:(g=g?Object.assign({},Q,g):Q).equals||void 0};return[u.bind(I),A=>("function"==typeof A&&(A=A(I.value)),F(I,A))]}function w(A,g,I){d(f(A,g,!1,E))}function h(A,g,I){I=I?Object.assign({},Q,I):Q;const B=f(A,g,!0,0);return B.observers=null,B.observerSlots=null,B.comparator=I.equals||void 0,d(B),u.bind(B)}function l(A){return R(A,!1)}function y(A){if(null===s)return A();const g=s;s=null;try{return A()}finally{s=g}}function G(A){!function(A,g,I){C=p;const B=f(A,g,!1,E);B.user=!0,r?r.push(B):d(B)}((()=>y(A)))}function M(A){return null===t||(null===t.cleanups?t.cleanups=[A]:t.cleanups.push(A)),A}function k(){return s}function N(A){const g=h(A),I=h((()=>K(g())));return I.toArray=()=>{const A=I();return Array.isArray(A)?A:null!=A?[A]:[]},I}function u(){const A=o;if(this.sources&&(this.state||A))if(this.state===E||A)d(this);else{const A=n;n=null,R((()=>S(this)),!1),n=A}if(s){const A=this.observers?this.observers.length:0;s.sources?(s.sources.push(this),s.sourceSlots.push(A)):(s.sources=[this],s.sourceSlots=[A]),this.observers?(this.observers.push(s),this.observerSlots.push(s.sources.length-1)):(this.observers=[s],this.observerSlots=[s.sources.length-1])}return this.value}function F(A,g,I){let B=A.value;return A.comparator&&A.comparator(B,g)||(A.value=g,A.observers&&A.observers.length&&R((()=>{for(let g=0;g1e6)throw n=[],new Error}),!1)),g}function d(A){if(!A.fn)return;U(A);const g=t,I=s,B=a;s=t=A,function(A,g,I){let B;try{B=A.fn(g)}catch(g){A.pure&&(A.state=E,A.owned&&A.owned.forEach(U),A.owned=null),H(g)}(!A.updatedAt||A.updatedAt<=I)&&(null!=A.updatedAt&&"observers"in A?F(A,B):A.value=B,A.updatedAt=I)}(A,A.value,B),s=I,t=g}function f(A,g,I,B=E,Q){const C={fn:A,state:B,updatedAt:null,owned:null,sources:null,sourceSlots:null,cleanups:null,value:g,owner:t,context:null,pure:I};return null===t||t!==i&&(t.owned?t.owned.push(C):t.owned=[C]),C}function Y(A){const g=o;if(0===A.state||g)return;if(A.state===e||g)return S(A);if(A.suspense&&y(A.suspense.inFallback))return A.suspense.effects.push(A);const I=[A];for(;(A=A.owner)&&(!A.updatedAt||A.updatedAt=0;B--)if((A=I[B]).state===E||g)d(A);else if(A.state===e||g){const g=n;n=null,R((()=>S(A,I[0])),!1),n=g}}function R(A,g){if(n)return A();let I=!1;g||(n=[]),r?I=!0:r=[],a++;try{const g=A();return function(A){n&&(J(n),n=null);if(A)return;const g=r;r=null,g.length&&R((()=>C(g)),!1)}(I),g}catch(A){I||(r=null),n=null,H(A)}}function J(A){for(let g=0;gA(g||{})))}function v(A){const g="fallback"in A&&{fallback:()=>A.fallback};return h(function(A,g,I={}){let Q=[],C=[],E=[],e=0,i=g.length>1?[]:null;return M((()=>q(E))),()=>{let t,o,s=A()||[];return s[B],y((()=>{let A,g,B,r,a,D,w,h,l,y=s.length;if(0===y)0!==e&&(q(E),E=[],Q=[],C=[],e=0,i&&(i=[])),I.fallback&&(Q=[m],C[0]=c((A=>(E[0]=A,I.fallback()))),e=1);else if(0===e){for(C=new Array(y),o=0;o=D&&h>=D&&Q[w]===s[h];w--,h--)B[h]=C[w],r[h]=E[w],i&&(a[h]=i[w]);for(A=new Map,g=new Array(h+1),o=h;o>=D;o--)l=s[o],t=A.get(l),g[o]=void 0===t?-1:t,A.set(l,o);for(t=D;t<=w;t++)l=Q[t],o=A.get(l),void 0!==o&&-1!==o?(B[o]=C[t],r[o]=E[t],i&&(a[o]=i[t]),o=g[o],A.set(l,o)):E[t]();for(o=D;oA.each),A.children,g||void 0))}function x(A){const g="fallback"in A&&{fallback:()=>A.fallback};return h(function(A,g,I={}){let Q,C=[],E=[],e=[],i=[],t=0;return M((()=>q(e))),()=>{const o=A()||[];return o[B],y((()=>{if(0===o.length)return 0!==t&&(q(e),e=[],C=[],E=[],t=0,i=[]),I.fallback&&(C=[m],E[0]=c((A=>(e[0]=A,I.fallback()))),t=1),E;for(C[0]===m&&(e[0](),e=[],C=[],E=[],t=0),Q=0;Qo[Q])):Q>=C.length&&(E[Q]=c(s));for(;QA.each),A.children,g||void 0))}function j(A){let g=!1;const I=A.keyed,B=h((()=>A.when),void 0,{equals:(A,I)=>g?A===I:!A==!I});return h((()=>{const Q=B();if(Q){const B=A.children,C="function"==typeof B&&B.length>0;return g=I||C,C?y((()=>B(Q))):B}return A.fallback}),void 0,void 0)}function T(A){let g=!1,I=!1;const B=N((()=>A.children)),Q=h((()=>{let A=B();Array.isArray(A)||(A=[A]);for(let g=0;gA[0]===I[0]&&(g?A[1]===I[1]:!A[1]==!I[1])&&A[2]===I[2]});return h((()=>{const[B,C,E]=Q();if(B<0)return A.fallback;const e=E.children,i="function"==typeof e&&e.length>0;return g=I||i,i?y((()=>e(C))):e}),void 0,void 0)}function Z(A){return A}const W="_$DX_DELEGATE";function O(A,g,I,B={}){let Q;return c((B=>{Q=B,g===document?A():AA(g,A(),g.firstChild?null:void 0,I)}),B.owner),()=>{Q(),g.textContent=""}}function X(A,g,I){const B=document.createElement("template");B.innerHTML=A;let Q=B.content.firstChild;return I&&(Q=Q.firstChild),Q}function z(A,g=window.document){const I=g[W]||(g[W]=new Set);for(let B=0,Q=A.length;BB.call(A,I[1],g))}else A.addEventListener(g,I)}function _(A,g,I){if(!g)return I?function(A,g,I){null==I?A.removeAttribute(g):A.setAttribute(g,I)}(A,"style"):g;const B=A.style;if("string"==typeof g)return B.cssText=g;let Q,C;for(C in"string"==typeof I&&(B.cssText=I=void 0),I||(I={}),g||(g={}),I)null==g[C]&&B.removeProperty(C),delete I[C];for(C in g)Q=g[C],Q!==I[C]&&(B.setProperty(C,Q),I[C]=Q);return I}function $(A,g,I){return y((()=>A(g,I)))}function AA(A,g,I,B){if(void 0===I||B||(B=[]),"function"!=typeof g)return IA(A,g,B,I);w((B=>IA(A,g(),B,I)),B)}function gA(A){const I=`$$${A.type}`;let B=A.composedPath&&A.composedPath()[0]||A.target;for(A.target!==B&&Object.defineProperty(A,"target",{configurable:!0,value:B}),Object.defineProperty(A,"currentTarget",{configurable:!0,get:()=>B||document}),g.registry&&!g.done&&(g.done=!0,document.querySelectorAll("[id^=pl-]").forEach((g=>{for(;g&&8!==g.nodeType&&g.nodeValue!=="pl-"+A;){let A=g.nextSibling;g.remove(),g=A}g&&g.remove()})));B;){const g=B[I];if(g&&!B.disabled){const Q=B[`${I}Data`];if(void 0!==Q?g.call(B,Q,A):g.call(B,A),A.cancelBubble)return}B=B._$host||B.parentNode||B.host}}function IA(A,I,B,Q,C){for(g.context&&!B&&(B=[...A.childNodes]);"function"==typeof B;)B=B();if(I===B)return B;const E=typeof I,e=void 0!==Q;if(A=e&&B[0]&&B[0].parentNode||A,"string"===E||"number"===E){if(g.context)return B;if("number"===E&&(I=I.toString()),e){let g=B[0];g&&3===g.nodeType?g.data=I:g=document.createTextNode(I),B=CA(A,B,Q,g)}else B=""!==B&&"string"==typeof B?A.firstChild.data=I:A.textContent=I}else if(null==I||"boolean"===E){if(g.context)return B;B=CA(A,B,Q)}else{if("function"===E)return w((()=>{let g=I();for(;"function"==typeof g;)g=g();B=IA(A,g,B,Q)})),()=>B;if(Array.isArray(I)){const E=[],i=B&&Array.isArray(B);if(BA(E,I,B,C))return w((()=>B=IA(A,E,B,Q,!0))),()=>B;if(g.context){if(!E.length)return B;for(let A=0;AB-e){const Q=g[E];for(;e=0;C--){const E=g[C];if(Q!==E){const g=E.parentNode===A;B||C?g&&E.remove():g?A.replaceChild(Q,E):A.insertBefore(Q,I)}else B=!0}}else A.insertBefore(Q,I);return[Q]}let EA;const eA=new Array(128).fill(void 0);function iA(A){return eA[A]}eA.push(void 0,null,!0,!1);let tA=eA.length;function oA(A){const g=iA(A);return function(A){A<132||(eA[A]=tA,tA=A)}(A),g}const sA=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0});sA.decode();let nA=null;function rA(){return null!==nA&&0!==nA.byteLength||(nA=new Uint8Array(EA.memory.buffer)),nA}function aA(A,g){return sA.decode(rA().subarray(A,A+g))}function cA(A){tA===eA.length&&eA.push(eA.length+1);const g=tA;return tA=eA[g],eA[g]=A,g}function DA(A){const g=typeof A;if("number"==g||"boolean"==g||null==A)return`${A}`;if("string"==g)return`"${A}"`;if("symbol"==g){const g=A.description;return null==g?"Symbol":`Symbol(${g})`}if("function"==g){const g=A.name;return"string"==typeof g&&g.length>0?`Function(${g})`:"Function"}if(Array.isArray(A)){const g=A.length;let I="[";g>0&&(I+=DA(A[0]));for(let B=1;B1))return toString.call(A);if(B=I[1],"Object"==B)try{return"Object("+JSON.stringify(A)+")"}catch(A){return"Object"}return A instanceof Error?`${A.name}: ${A.message}\n${A.stack}`:B}let wA=0;const hA=new TextEncoder("utf-8"),lA="function"==typeof hA.encodeInto?function(A,g){return hA.encodeInto(A,g)}:function(A,g){const I=hA.encode(A);return g.set(I),{read:A.length,written:I.length}};function yA(A,g,I){if(void 0===I){const I=hA.encode(A),B=g(I.length);return rA().subarray(B,B+I.length).set(I),wA=I.length,B}let B=A.length,Q=g(B);const C=rA();let E=0;for(;E127)break;C[Q+E]=g}if(E!==B){0!==E&&(A=A.slice(E)),Q=I(Q,B,B=E+3*A.length);const g=rA().subarray(Q+E,Q+B);E+=lA(A,g).written}return wA=E,Q}let GA=null;function MA(){return null!==GA&&0!==GA.byteLength||(GA=new Int32Array(EA.memory.buffer)),GA}let kA=null;function NA(A,g){return(null!==kA&&0!==kA.byteLength||(kA=new Uint32Array(EA.memory.buffer)),kA).subarray(A/4,A/4+g)}class uA{static __wrap(A){const g=Object.create(uA.prototype);return g.ptr=A,g}__destroy_into_raw(){const A=this.ptr;return this.ptr=0,A}free(){const A=this.__destroy_into_raw();EA.__wbg_vtwrapper_free(A)}feed(A){const g=yA(A,EA.__wbindgen_malloc,EA.__wbindgen_realloc),I=wA;return oA(EA.vtwrapper_feed(this.ptr,g,I))}inspect(){try{const I=EA.__wbindgen_add_to_stack_pointer(-16);EA.vtwrapper_inspect(I,this.ptr);var A=MA()[I/4+0],g=MA()[I/4+1];return aA(A,g)}finally{EA.__wbindgen_add_to_stack_pointer(16),EA.__wbindgen_free(A,g)}}get_size(){try{const B=EA.__wbindgen_add_to_stack_pointer(-16);EA.vtwrapper_get_size(B,this.ptr);var A=MA()[B/4+0],g=MA()[B/4+1],I=NA(A,g).slice();return EA.__wbindgen_free(A,4*g),I}finally{EA.__wbindgen_add_to_stack_pointer(16)}}get_line(A){return oA(EA.vtwrapper_get_line(this.ptr,A))}get_cursor(){return oA(EA.vtwrapper_get_cursor(this.ptr))}}function FA(){const A={wbg:{}};return A.wbg.__wbindgen_object_drop_ref=function(A){oA(A)},A.wbg.__wbindgen_error_new=function(A,g){return cA(new Error(aA(A,g)))},A.wbg.__wbindgen_number_new=function(A){return cA(A)},A.wbg.__wbindgen_bigint_from_u64=function(A){return cA(BigInt.asUintN(64,A))},A.wbg.__wbindgen_string_new=function(A,g){return cA(aA(A,g))},A.wbg.__wbg_set_20cbc34131e76824=function(A,g,I){iA(A)[oA(g)]=oA(I)},A.wbg.__wbg_new_b525de17f44a8943=function(){return cA(new Array)},A.wbg.__wbg_new_f841cc6f2098f4b5=function(){return cA(new Map)},A.wbg.__wbg_new_f9876326328f45ed=function(){return cA(new Object)},A.wbg.__wbindgen_is_string=function(A){return"string"==typeof iA(A)},A.wbg.__wbg_set_17224bc548dd1d7b=function(A,g,I){iA(A)[g>>>0]=oA(I)},A.wbg.__wbg_set_388c4c6422704173=function(A,g,I){return cA(iA(A).set(iA(g),iA(I)))},A.wbg.__wbindgen_debug_string=function(A,g){const I=yA(DA(iA(g)),EA.__wbindgen_malloc,EA.__wbindgen_realloc),B=wA;MA()[A/4+1]=B,MA()[A/4+0]=I},A.wbg.__wbindgen_throw=function(A,g){throw new Error(aA(A,g))},A}function dA(A,g){return EA=A.exports,fA.__wbindgen_wasm_module=g,GA=null,kA=null,nA=null,EA}async function fA(A){const g=FA();("string"==typeof A||"function"==typeof Request&&A instanceof Request||"function"==typeof URL&&A instanceof URL)&&(A=fetch(A));const{instance:I,module:B}=await async function(A,g){if("function"==typeof Response&&A instanceof Response){if("function"==typeof WebAssembly.instantiateStreaming)try{return await WebAssembly.instantiateStreaming(A,g)}catch(g){if("application/wasm"==A.headers.get("Content-Type"))throw g;console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",g)}const I=await A.arrayBuffer();return await WebAssembly.instantiate(I,g)}{const I=await WebAssembly.instantiate(A,g);return I instanceof WebAssembly.Instance?{instance:I,module:A}:I}}(await A,g);return dA(I,B)}var YA=Object.freeze({__proto__:null,VtWrapper:uA,create:function(A,g,I,B){const Q=EA.create(A,g,I,B);return uA.__wrap(Q)},default:fA,initSync:function(A){const g=FA();return A instanceof WebAssembly.Module||(A=new WebAssembly.Module(A)),dA(new WebAssembly.Instance(A,g),A)}});const RA=[62,0,0,0,63,52,53,54,55,56,57,58,59,60,61,0,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,0,0,0,0,0,0,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51];function JA(A){return RA[A-43]}const pA=function(A){let g,I=A.endsWith("==")?2:A.endsWith("=")?1:0,B=A.length,Q=new Uint8Array(B/4*3);for(let I=0,C=0;I>16,Q[C+1]=g>>8&255,Q[C+2]=255&g;return Q.subarray(0,Q.length-I)}("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CDcDACACQUBrJAAPCxDhAQALEOIBAAvKAQECfwJAAkAgACgCCCIFIAFPBEAgACgCACABQQR0aiEAAkAgBSABayIEIAJPBEAgBCACayIEIAAgBEEEdGogAhASDAELQfyfwABBIUGgoMAAEIkBAAsgASACaiIEIAJJDQEgBCAFSw0CIAIEQCACQQR0IQIDQCAAIAMpAgA3AgAgAEEIaiADQQhqKQIANwIAIABBEGohACACQRBrIgINAAsLDwsgASAFQfidwAAQWQALIAEgBEGInsAAEFsACyAEIAVBiJ7AABBaAAuWAQEDfwJ/IAJFBEBBACEDQQEMAQsgAygCACEGQQAhAyACIQQCQANAAkBBfyABIAJBAXYgA2oiAkECdGooAgAiBSAGRyAFIAZJGyIFQQFGBEAgAiEEDAELIAVB/wFxQf8BRw0CIAJBAWohAwsgBCADayECIAMgBEkNAAtBAQwBCyACIQNBAAshBCAAIAM2AgQgACAENgIAC5IBAQN/IwBBgAFrIgMkACAALQAAIQJBACEAA0AgACADakH/AGogAkEPcSIEQTBBNyAEQQpJG2o6AAAgAEEBayEAIAJB/wFxIgRBBHYhAiAEQQ9LDQALIABBgAFqIgJBgQFPBEAgAkGAAUGsrcAAEFkACyABQbytwABBAiAAIANqQYABakEAIABrEBUgA0GAAWokAAuTAQEDfyMAQYABayIDJAAgAC0AACECQQAhAANAIAAgA2pB/wBqIAJBD3EiBEEwQdcAIARBCkkbajoAACAAQQFrIQAgAkH/AXEiBEEEdiECIARBD0sNAAsgAEGAAWoiAkGBAU8EQCACQYABQaytwAAQWQALIAFBvK3AAEECIAAgA2pBgAFqQQAgAGsQFSADQYABaiQAC4kBAQN/IwBBgAFrIgMkACAAKAIAIQADQCACIANqQf8AaiAAQQ9xIgRBMEHXACAEQQpJG2o6AAAgAkEBayECIABBD0sgAEEEdiEADQALIAJBgAFqIgBBgQFPBEAgAEGAAUGsrcAAEFkACyABQbytwABBAiACIANqQYABakEAIAJrEBUgA0GAAWokAAuIAQEDfyMAQYABayIDJAAgACgCACEAA0AgAiADakH/AGogAEEPcSIEQTBBNyAEQQpJG2o6AAAgAkEBayECIABBD0sgAEEEdiEADQALIAJBgAFqIgBB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IAQoAgAQDwsgAyACKQMQNwIAIANBGGogAkEQaiIFQRhqKQMANwIAIANBEGogBUEQaikDADcCACAEIAVBCGopAwA3AgAgA0EoaiIFEH0gA0EgaiEEIANBLGooAgAEQCAFKAIAEA8LIAQgAikDMDcCACAEQRhqIAJBMGoiBUEYaikDADcCACAEQRBqIAVBEGopAwA3AgAgBEEIaiAFQQhqIgQpAwA3AgAgA0EAOgC0ASAFIAMoApQBED0gA0H8AGohBSADQYABaigCAARAIAUoAgAQDwsgBSACKQMwNwIAIAVBCGogBCgCADYCACADQbIBakEAOwEAIANBrgFqQQI6AAAgA0ECOgCqASADQdAAakEBOgAAIANCADcCSCADQQA7AagBIANBADoAuQEgA0GAgAQ2ALUBIANCADcCnAEgA0H4AGpBgICACDYCACADQfQAakECOgAAIANB8ABqQQI6AAAgA0HsAGpBADYCACADQeQAakKAgIAINwIAIANB4ABqQQI6AAAgA0HcAGpBAjoAACADQgA3AlQgAyADKAKYASIFQQFrNgKkASACQQhqIAUQayAEQQA2AgAgAiACKQMINwMwIAJBMGogBUEBEE8gAkEYaiAEKAIANgIAIAIgAikDMDcDECADQYgBaiEEIANBjAFqKAIABEAgBCgCABAPCyAEIAIpAxA3AgAgBEEIaiACQRhqKAIANgIAIANBADoAuwEgAkHQAGokAAwBCwJAAkAgBEEoaw4CAAECCyADQQA6AKgBDAELIAJBMEYEQCADQQE6AKkBDAELIANBADoAqQELDAQLIAMgAhAlDAMLIAZBADoAGAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgBkEUaigCACIERQRAIAJBQGoONgECAxIEBQYfFgcICQoLICAMICANDiAgDxAgESAgICAgHxITIBQVFhcYICAgHh0gICAgHBsaGSALIAYoAgxBACAEGyEEAkACQAJAAkAgAkHsAGsOBQEjIyMDAAsgAkHoAEYNAQwiCyAEKAIAQT9HDSEgBigCCCICBEAgBigCACEFIAJBAXQhBCADQaoBaiECIANB3ABqIQcDQAJAAkAgBS8BACIIQZYITQRAAkACQAJAAkAgCEEGaw4CAQIACyAIQRlGDQIgCEEvRg0EDAULIANBADoAuQEgA0IANwJIIANBADoAtgEMBAsgA0EAOgC3AQwDCyADQQA6AFAMAgsCQAJAIAhBlwhrDgMCAQADCyADEEcgA0EAOgC5ASADIAMpAlQ3AkggAiAHKQEANwEAIAJBCGogB0EIai8BADsBACADIAMvAWY7AbYBIAMQNgwCCyADQQA6ALkBIAMgAykCVDcCSCACIAcpAQA3AQAgAyADLwFmOwG2ASACQQhqIAdBCGovAQA7AQAMAQsgAxBHIAMQNgsgBUECaiEFIARBAmsiBA0ACwsMIQsgBCgCAEE/Rw0gIAYoAggiAgRAIAYoAgAhBCACQQF0IQUgA0HcAGohByADQaoBaiEIA0ACQAJAAkAgBC8BACICQZYITQRAAkACQAJAAkAgAkEGaw4CAQIACyACQRlGDQIgAkEvRg0EDAYLIANBAToAtgEgA0EAOgC5ASADQQA2AkggAyADKAKgATYCTAwFCyADQQE6ALcBDAQLIANBAToAUAwDCwJAIAJBlwhrDgMBAgADCyADIAMoAkw2AlggByAIKQEANwEAIAMgAy8BtgE7AWYgB0EIaiAIQQhqLwEAOwEAIAMgAygCSCICIAMoApQBQQFrIgkgAiAJSRs2AlQLQQAhCSMAQSBrIgIkACADLQC0AUUEQCADQQE6ALQBA0AgAyAJaiIKQegAaiILKAIAIQwgCyAKQdQAaiIKKAIANgIAIAogDDYCACAJQQRqIglBFEcNAAtBACEJA0AgAyAJaiIKQSBqIgsoAgAhDCALIAooAgA2AgAgCiAMNgIAIAlBBGoiCUEgRw0ACyACIAMoApQBIAMoApgBIgpBAUEAIANBqgFqEC4gA0EIaiIJEH0gA0EMaigCAARAIAkoAgAQDwsgAyACKQMANwIAIANBGGogAkEYaikDADcCACADQRBqIAJBEGopAwA3AgAgCSACQQhqKQMANwIAIANBiAFqQQAgChBvCyACQSBqJAAgAxA2DAELIAMgAygCTDYCWCAHIAgpAQA3AQAgAyADLwG2ATsBZiAHQQhqIAhBCGovAQA7AQAgAyADKAJIIgIgAygClAFBAWsiCSACIAlJGzYCVAsgBEECaiEEIAVBAmsiBQ0ACwsMIAsgBCgCAEEhRw0fIANBADsAtQEgA0ECOgCqASADQQA7AagBIANCADcCnAEgA0IANwJUIANB0ABqQQE6AAAgA0GyAWpBADsBACADQa4BakECOgAAIANB4ABqQQI6AAAgA0HcAGpBAjoAACADQeQAakGAgIAINgIAIAMgAygCmAFBAWs2AqQBDB8LIwBBEGsiAiQAIAYoAgBBxJjAACAGKAIIGy8BACEFIANBzABqKAIAIQQgAygCSCEHIAJBDGogA0GyAWovAQA7AQAgAiADKQGqATcCBCADKAIUIQggAyAEQfCTwAAQeyACQSA2AgAgByAFQQEgBRsiBSAIIAdrIgcgBSAHSRsgAhBAIANBkAFqKAIAIgUgBE0EQCAEIAVB7JDAABBYAAsgAygCiAEgBGpBAToAACACQRBqJAAMHgsgA0EAOgC5ASADIAMoAkgiAiADKAKUAUEBayIEIAIgBEkbNgJIQQAgAygCoAEiAiADQcwAaiIEKAIAIgUgAkkbIQIgBCACIAUgBigCAEHEmMAAIAYoAggbLwEAIgRBASAEG2siBCACIARKGzYCAAwdCyADIAYQVgwcCyADLQC5ASECIANBADoAuQEgA0EAIAMoAkggBigCAEHEmMAAIAYoAggbLwEAIgRBASAEGyIEQX9zQQAgBGsgAhtqIgIgAygClAEiBEEBayACIARJGyACQQBIGzYCSAwbCyADQQA6ALkBIANBADYCSCADKAKYAUEBayADKAKkASICIANBzABqIgQoAgAiBSACSxshAiAEIAIgBSAGKAIAQcSYwAAgBigCCBsvAQAiBEEBIAQbaiIEIAIgBEkbNgIADBoLIANBADoAuQEgA0EANgJIQQAgAygCoAEiAiADQcwAaiIEKAIAIgUgAkkbIQIgBCACIAUgBigCAEHEmMAAIAYoAggbLwEAIgRBASAEG2siBCACIARKGzYCAAwZCyMAQRBrIgckACAHQQhqIQogAygCSCELIANB/ABqIgQoAgAhAiACIAQoAghBAnRqIQgCfwJAIAYoAgBBxJjAACAGKAIIGy8BACIEQQEgBBsiCUEBayIMBEBBASEJA0AgBUEBaiEFA0AgCCACIgRGDQMgCUEBcQRAIARBBGohAiAEKAIAIAtNDQELCyAEQQRqIQJBACEJIAUgDEcNAAsgBEEEaiECCyACIQQCQANAAkAgDA0AIAQgCEYNACAEKAIAIQkgBEEEaiEEIAkgC00NAQwCCwsgBCAIRg0BIAIoAgAhCQtBAQwBC0EACyECIAogCTYCBCAKIAI2AgAgBygCDCECIAcoAgghBCADQQA6ALkBIAMgAiADKAKUASICQQFrIgUgBBsiBCAFIAIgBEsbNgJIIAdBEGokAAwYCwJAAkACQAJAIAYoAgBBxJjAACAGKAIIGy8BAA4DAAECAwsgAyADKAJIIANBzABqIgIoAgBBASADIANBqgFqECYgA0GIAWogAigCACADKAKYARBvDAILIAMgAygCSCADQcwAaiICKAIAQQIgAyADQaoBahAmIANBiAFqQQAgAigCAEEBahBvDAELIANBACADKAIYIANBqgFqEDkgA0GIAWpBACADKAKYARBvCwwXCwJAAkACQAJAAkAgBigCAEHEmMAAIAYoAggbLwEADgMAAQIECyADKAIUIQIgAygCSCEEIAMgA0HMAGooAgAiBUGwlMAAEHsiByAEIAIgA0GqAWoQSiAHQQA6AAwMAgsgAygCFCECIAMoAkhBAWohBCADIANBzABqKAIAIgVBoJTAABB7QQAgBCACIAIgBEsbIANBqgFqEEoMAQsgAygCFCECIAMgA0HMAGooAgAiBUGQlMAAEHsiBEEAIAIgA0GqAWoQSiAEQQA6AAwLIANBkAFqKAIAIgIgBUsEQCADKAKIASAFakEBOgAADAELIAUgAkHskMAAEFgACwwWCyADKAKYASADKAKkASICQQFqIAIgA0HMAGooAgAiAkkbIQQgAyACIAQgBigCAEHEmMAAIAYoAggbLwEAIgVBASAFGyADQaoBahBQIANBiAFqIAIgBBBvDBULIAMoApgBIAMoAqQBIgJBAWogAiADQcwAaigCACICSRshBCADIAIgBCAGKAIAQcSYwAAgBigCCBsvAQAiBUEBIAUbIANBqgFqEBwgA0GIAWogAiAEEG8MFAsgAygCSCICIAMoApQBIgRPBEAgA0EAOgC5ASADIARBAWsiAjYCSAsgBigCAEHEmMAAIAYoAggbLwEAIgRBASAEGyIEIAMoAhQgAmsiBSAEIAVJGyEFIANBqgFqIQgCQAJAIAMgA0HMAGooAgAiB0GAlMAAEHsiCSgCCCIEIAJPBEAgCSgCACIKIAJBBHRqIAQgAmsgBRCcASAEIAVrIQIgBCAFSQ0BIAUEQCAKIARBBHRqIQQgCiACQQR0aiEFIAhBCGohAgNAIAVBIDYCACAFIAgpAAA3AAQgBUEMaiACLwAAOwAAIAQgBUEQaiIFRw0ACwsMAgsgAiAEQZiewAAQWQALIAIgBEGonsAAEFkACyAJQQA6AAwCQCADQZABaigCACICIAdLBEAgAygCiAEgB2pBAToAAAwBCyAHIAJB7JDAABBYAAsMEwsgAyAGKAIAQcSYwAAgBigCCBsvAQAiAkEBIAIbEJ4BDBILIAMgBigCAEHEmMAAIAYoAggbLwEAIgJBASACGxCfAQwRCwJAAkACQAJAIAYoAgBBxJjAACAGKAIIGy8BAA4GAAMBAwMCAwsgAygCSCICRQ0CIAIgAygClAFPDQIgA0H8AGogAhCEAQwCCyADQfwAaiADKAJIEIcBDAELIANBhAFqQQA2AgALDBALIAMgAygCSCADQcwAaiICKAIAQQAgBigCAEHEmMAAIAYoAggbLwEAIgRBASAEGyADQaoBahAmIANBkAFqKAIAIgQgAigCACICTQRAIAIgBEHskMAAEFgACyADKAKIASACakEBOgAADA8LIwBBEGsiCyQAIAtBCGohDCADKAJIIRAgA0H8AGoiAigCACEHIAcgAigCCEECdGohAgJAAkACQCAGKAIAQcSYwAAgBigCCBsvAQAiBEEBIAQbIgRBAWsiEUUNAEEBIQoDQCACQQRrIQQgBSIIQQFqIQUCQANAIAQiAkEEaiAHRg0BIAoEQCACQQRrIQQgAigCACAQTw0BCwtBACEKQQEhCSAFIBFHDQEMAgsLIAchAiAIIBFHDQELA0AgAiAHRg0BIAJBBGsiAigCACEEQQEhCiAJDQIgBCAQTw0ACwwBC0EAIQoLIAwgBDYCBCAMIAo2AgAgCygCDCECIAsoAgghBCADQQA6ALkBIAMgAkEAIAQbIgIgAygClAEiBEEBayACIARJGzYCSCALQRBqJAAMDgsgA0EAOgC5ASADQQAgAygCSCAGKAIAQcSYwAAgBigCCBsvAQAiAkEBIAIbaiICIAMoApQBIgRBAWsgAiAESRsgAkEASBs2AkgMDQsgAygCSCICBEAgBigCAEHEmMAAIAYoAggbLwEAIgRBASAEGyEFIAJBAWshBCADQcwAaigCACEHIwBBEGsiAiQAIAJBCGogAxCFAQJAAkAgAigCDCIIIAdLBEAgAigCCCAHQQR0aiIHKAIIIgggBE0NASAHKAIAIAJBEGokACAEQQR0aiECDAILIAcgCEHYisAAEFgACyAEIAhB2IrAABBYAAsgAigCACECA0AgAyACEBggBUEBayIFDQALCwwMCyADQQA6ALkBIAMgAygCSCICIAMoApQBQQFrIgQgAiAESRs2AkggA0HMAGogAygCoAFBACADLQC2ASIEGyICIAYoAgBBxJjAACAGKAIIGy8BACIFQQEgBRtqQQFrIgUgAiACIAVJGyICIAMoAqQBIAMoApgBQQFrIAQbIgQgAiAESRs2AgAMCwsgAyAGEFYMCgsgA0EAOgC5ASADQcwAaiADKAKgAUEAIAMtALYBIgQbIgIgBigCACIFQcSYwAAgBigCCCIHGy8BACIIQQEgCBtqQQFrIgggAiACIAhJGyICIAMoAqQBIAMoApgBQQFrIAQbIgQgAiAESRs2AgAgAyAFQQJqQcSYwAAgB0EBSxsvAQAiAkEBIAIbQQFrIgQgAygClAEiBUEBayICIAQgBUkbIgQgAiACIARLGzYCSAwJCwJAAkACQCAGKAIAQcSYwAAgBigCCBsvAQAOBAACAgECCyADQfwAaiADKAJIEIcBDAELIANBhAFqQQA2AgALDAgLIAYoAggiAkUNByAGKAIAIQQgAkEBdCECA0ACQAJAIAQvAQAiBUEERwRAIAVBFEYNAQwCCyADQQE6ALUBDAELIANBAToAuAELIARBAmohBCACQQJrIgINAAsMBwsgA0EAOgC5ASADIAMpAlQ3AkggAyADQdwAaikBADcBqgEgA0GyAWogA0HkAGovAQA7AQAgAyADQeYAai8BADsBtgEMBgsCQCADLQC6AUUNACAGKAIAIgJBxJjAACAGKAIIIgQbLwEAQQhHDQAgAkECakHEmMAAIARBAUsbLwEAIgUgAygCmAEiByAFGyEJIAJBBGpBxJjAACAEQQJLGy8BACICIAMoApQBIgUgAhshCAJAAkACQAJAQX8gBSAIRyAFIAhLG0H/AXEOAgMBAAsCQCADQYQBaigCACICRQRAQQAhBQwBCyADKAJ8IQtBACEFIAIhBANAIAsgAkEBdiAFaiICQQJ0aigCACAISSEKIAQgAiAKGyIEIAJBAWogBSAKGyIFayECIAQgBUsNAAsLIAMgBTYChAEMAQsgA0H8AGohBEEAIQIgBUF4cUEI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QQhqKAIANgIAIAYgASkCADcDICAEKAIAIQUgBCgCBCELA0ACQAJAIAUgC0cEQCAEIAVBAWoiBzYCACAFLQAAIAQgBCgCCCIQQQFqNgIIIAchBUUNAyACKAIIIgcgAigCBEcNASACIAcQdQwBCwwBCyACIAdBAWo2AgggAigCACAHQQJ0aiAQNgIADAELCyANQQhqIAooAgA2AgAgDSAGKQMQNwIADAELIA1BADYCCCANQgQ3AgALIAZBMGokACANIAMtALsBOgAMIAgEQCAJQQAgCBDoAQsgA0EAOgC7ASABQRBqJAAjAEFAaiIEJAAgBEEAOwEYIARBADoAGiAEQTBqIARBGGoQtwECfwJAAkACfwJAIAQoAjAEQCAEQSBqIgVBCGogBEE4aigCADYCACAEIAQpAzA3AyAgBEEQaiEJIwBBEGsiByQAIAUoAgghECAHQQhqIQogBSgCACEDIwBBMGsiASQAIA0oAgAhAiABQSBqIAMgDSgCCCIDELYBAn8CQAJAIAEoAiAEQCABQRhqIAFBKGooAgA2AgAgASABKQMgNwMQIANBAnQhCANAIAhFDQMgCEEEayEIIAEgAjYCICACQQRqIQIgAUEIaiELIwBBEGsiAyQAIAFBEGoiBigCCCERIANBCGogBigCACABQSBqKAIANQIAEEYgAygCDCEMIAMoAggiE0UEQCAGQQRqIBEgDBDQASAGIAYoAghBAWo2AggLIAsgEzYCACALIAw2AgQgA0EQaiQAIAEoAghFDQALIAEoAgwhAiABKAIUIgNBhAFJDQEgAxAADAELIAEoAiQhAgtBAQwBCyABQSBqIgJBCGogAUEYaigCADYCACABIAEpAxA3AyAgASACKAIENgIEIAFBADYCACABKAIEIQIgASgCAAshAyAKIAI2AgQgCiADNgIAIAFBMGokACAHKAIMIQEgBygCCCICRQRAIAVBBGogECABENABIAUgBSgCCEEBajYCCAsgCSACNgIAIAkgATYCBCAHQRBqJAAgBCgCEEUNASAEKAIUDAILIAQoAjQhAQwDCyAEQQhqIQUjAEEQayIBJAAgBEEgaiICKAIIIQMgAigCABogAUEIaiIHQYIBQYMBIA1BDGotAAAbNgIEIAdBADYCACABKAIMIQcgASgCCCINRQRAIAJBBGogAyAHENABIAIgAigCCEEBajYCCAsgBSANNgIAIAUgBzYCBCABQRBqJAAgBCgCCEUNASAEKAIMCyEBIAQoAiQiAkGEAUkNASACEAAMAQsgBEEwaiIBQQhqIARBKGooAgA2AgAgBCAEKQMgNwMwIAQgASgCBDYCBCAEQQA2AgAgBCgCBCEBIAQoAgAMAQtBAQshAiAOIAE2AgQgDiACNgIAIARBQGskACAOKAIEIQEgDigCAARAIA4gATYCHEGQg8AAQSsgDkEcakG8g8AAQdiDwAAQTgALIA5BCGoQsAEgDkEgaiQAIBIEQCAUEA8LIABBADYCACAPQSBqJAAgAQ8LEOEBAAsQ4gEAC/ICAQx/IwBBMGsiAyQAIANBJGoiCEEAOwEAIANBGGoiBEEIakECOgAAIANBAjoAHCADQSA2AhggA0EIaiIKIAQgAhBSIANBADoAFCAIIApBCGopAwA3AgAgAyABNgIYIAMgAykDCDcCHCMAQRBrIgkkACAAQQhqIgcoAgghBQJAAkAgBCgCACILIAcoAgQgBWtLBEAgByAFIAsQeCAEKAIIIQ4gBCgCBCEMIAcoAgghBQwBCyAEKAIIIQ4gBCgCBCEMIAtFDQELIAcoAgAgBUEEdGohBiAEKAIMIghBBHQhCiAELQAQIgRBAkYhAgJAA0AgCUEIaiAIEEsgCSgCDCEBIAkoAgggDCAKEOoBIQAgAg0BIAYgADYCACAGQQxqIAQ6AAAgBkEIaiAINgIAIAZBBGogATYCACAGQRBqIQYgCyANQQFqIg1HDQALIAUgDWohBQsgByAFNgIICyAOBEAgDBAPCyAJQRBqJAAgA0EwaiQAC4QBAQF/IwBBQGoiBSQAIAUgATYCDCAFIAA2AgggBSADNgIUIAUgAjYCECAFQRhqIgBBDGpCAjcCACAFQTBqIgFBDGpB8wA2AgAgBUECNgIcIAVB0KzAADYCGCAFQfQANgI0IAUgATYCICAFIAVBEGo2AjggBSAFQQhqNgIwIAAgBBCSAQALdgEDfyABIAAoAgQgACgCCCIDa0sEQCAAIAMgARB3IAAoAgghAwsgACgCACIFIANqIQQCQAJAIAFBAk8EQCAEIAIgAUEBayIBEOgBIAUgASADaiIDaiEEDAELIAFFDQELIAQgAjoAACADQQFqIQMLIAAgAzYCCAupAQEDfyMAQRBrIgYkACAGQQhqIAAgASACQaCVwAAQXCAGKAIIIQcCQCADIAIgAWsiBSADIAVJGyIDIAYoAgwiBU0EQCAFIANrIgUgByAFQQR0aiADEBIMAQtB2JzAAEEhQfycwAAQiQEACyAAIAEgASADaiAEEDkgAQRAIAAgAUEBa0GwlcAAEHtBADoADAsgACACQQFrQcCVwAAQe0EAOgAMIAZBEGokAAtkAQF/IwBBEGsiASQAIAEQSSAAKAIEBEAgACgCABAPCyAAIAEpAwA3AgAgAEEIaiABQQhqKAIANgIAIABBEGooAgAEQCAAKAIMEA8LIABCBDcCDCAAQRRqQQA2AgAgAUEQaiQAC5QCAQZ/IwBBMGsiBCQAIARBCGogAhBLIARBEGoiA0EIaiIIQQA2AgAgBCAEKQMINwMQIARBIGoiBkEIaiABQQhqKQIANwMAIAQgASkCADcDICADIgEoAgghAyACIAEoAgQgA2tLBEAgASADIAIQeCABKAIIIQMLIAEoAgAgA0EEdGohBSACQQJPBEAgAkEBayEHA0AgBSAGKQIANwIAIAVBCGogBkEIaikCADcCACAFQRBqIQUgB0EBayIHDQALIAIgA2pBAWshAwsgAgRAIAUgBikCADcCACAFQQhqIAZBCGopAgA3AgAgA0EBaiEDCyABIAM2AgggAEEIaiAIKAIANgIAIAAgBCkDEDcCACAEQTBqJAALrgEBA38jAEHgAWsiASQAIAFBCGohAiMAQeABayIDJAACQAJAIAAEQCAAKAIADQEgAEEANgIAIAIgAyAAQdwBEOoBIgJBBHJB2AEQ6gEaIAAQDyACQeABaiQADAILEOEBAAsQ4gEACyABQcQBahCwASABQdABahCwASABQRBqIgAQfSAAELABIAFBMGoiABB9IAAQsAEgAUGEAWoQsAEgAUGQAWoQsAEgAUHgAWokAAtrAQV/AkAgACgCCCICRQ0AIAAoAgBBEGshBCACQQR0IQMgAkEBa0H/////AHFBAWohBQJAA0AgAyAEahBtRQ0BIAFBAWohASADQRBrIgMNAAsgBSEBCyABQQFrIAJPDQAgACACIAFrNgIICwt1AQJ/IwBBEGsiBCQAIARBCGogASgCECACIAMQvQEgBCgCDCECIAQoAggiA0UEQAJAIAEoAghFDQAgAUEMaigCACIFQYQBSQ0AIAUQAAsgAUEBNgIIIAFBDGogAjYCAAsgACADNgIAIAAgAjYCBCAEQRBqJAALeQECfyAAQQA6ALkBIAAgACgCSCICIAAoApQBQQFrIgMgAiADSRs2AkggACgCmAFBAWsgACgCpAEiAiACIABBzABqIgIoAgAiA0kbIQAgAiAAIAMgASgCAEHEmMAAIAEoAggbLwEAIgFBASABG2oiASAAIAFJGzYCAAt2AQF/IwBBMGsiAiQAIAIgATYCBCACIAA2AgAgAkEIaiIAQQxqQgI3AgAgAkEgaiIBQQxqQd0ANgIAIAJBAzYCDCACQdCpwAA2AgggAkHdADYCJCACIAE2AhAgAiACQQRqNgIoIAIgAjYCICAAQeipwAAQkgEAC3MBAX8jAEEwayIDJAAgAyABNgIEIAMgADYCACADQQhqIgBBDGpCAjcCACADQSBqIgFBDGpB3QA2AgAgA0ECNgIMIANBsKvAADYCCCADQd0ANgIkIAMgATYCECADIAM2AiggAyADQQRqNgIgIAAgAhCSAQALcwEBfyMAQTBrIgMkACADIAA2AgAgAyABNgIEIANBCGoiAEEMakICNwIAIANBIGoiAUEMakHdADYCACADQQI2AgwgA0GAsMAANgIIIANB3QA2AiQgAyABNgIQIAMgA0EEajYCKCADIAM2AiAgACACEJIBAAtzAQF/IwBBMGsiAyQAIAMgADYCACADIAE2AgQgA0EIaiIAQQxqQgI3AgAgA0EgaiIBQQxqQd0ANgIAIANBAjYCDCADQaCwwAA2AgggA0HdADYCJCADIAE2AhAgAyADQQRqNgIoIAMgAzYCICAAIAIQkgEAC3MBAX8jAEEwayIDJAAgAyAANgIAIAMgATYCBCADQQhqIgBBDGpCAjcCACADQSBqIgFBDGpB3QA2AgAgA0ECNgIMIANB1LDAADYCCCADQd0ANgIkIAMgATYCECADIANBBGo2AiggAyADNgIgIAAgAhCSAQALZgEBfyMAQRBrIgUkACAFQQhqIAEQhgECQCACIANNBEAgBSgCDCIBIANJDQEgBSgCCCEBIAAgAyACazYCBCAAIAEgAkEEdGo2AgAgBUEQaiQADwsgAiADIAQQWwALIAMgASAEEFoAC7UEAQh/IwBBEGsiAyQAAkAgAQRAIAEoAgAiAkF/Rg0BIAEgAkEBajYCACMAQRBrIgIkACACQQhqIAFBBGopApQBNwMAQbXEwAAtAAAaIAIoAgwhBCACKAIIIQZBCEEEEMcBIgVFBEBBBEEIQdjEwAAoAgAiAEHeACAAGxECAAALIAUgBjYCACADQoKAgIAgNwIEIAMgBTYCACAFIAQ2AgQgAkEQaiQAIAEgASgCAEEBazYCACMAQRBrIgYkAAJAAkACQCADKAIIIgUgAygCBE8NACAGQQhqIQgjAEEgayIEJAACQCAFIAMoAgRNBEAgBEEIaiEBAkAgAygCBCICBEAgAUEENgIEIAEgAkECdDYCCCABIAMoAgA2AgAMAQsgAUEANgIECwJAIAQoAgwiAgRAIAVBAnQhByAEKAIQIQEgBCgCCCEJAn8gBUUEQCABBEAgCRAPCyACDAELIAkgASACIAcQvAELIgFFDQEgAyAFNgIEIAMgATYCAAtBgYCAgHghAgsgCCAHNgIEIAggAjYCACAEQSBqJAAMAQsgBEEUakIANwIAIARBATYCDCAEQaSAwAA2AgggBEGAgMAANgIQIARBCGpB+IDAABCSAQALIAYoAggiAUGBgICAeEYNACABRQ0BIAEgBigCDEHYxMAAKAIAIgBB3gAgABsRAgAACyAGQRBqJAAMAQsQkQEACyAAIAMoAgg2AgQgACADKAIANgIAIANBEGokAA8LEOEBAAsQ4gEAC1oBAX8CQCAAKAIIIgIgAUkNACAAIAE2AgggASACRg0AIAIgAWshAiAAKAIAIAFBBHRqIQEDQCABQQRqKAIABEAgASgCABAPCyABQRBqIQEgAkEBayICDQALCwtfAQJ/IwBBIGsiAiQAIAAoAgAhAyACQQhqIgBBEGogAUEQaikCADcDACAAQQhqIAFBCGopAgA3AwAgAiABKQIANwMIIAIgAzYCBCACQQRqQdCjwAAgABAWIAJBIGokAAtfAQJ/IwBBIGsiAiQAIAAoAgAhAyACQQhqIgBBEGogAUEQaikCADcDACAAQQhqIAFBCGopAgA3AwAgAiABKQIANwMIIAIgAzYCBCACQQRqQZylwAAgABAWIAJBIGokAAtfAQJ/IwBBIGsiAiQAIAAoAgAhAyACQQhqIgBBEGogAUEQaikCADcDACAAQQhqIAFBCGopAgA3AwAgAiABKQIANwMIIAIgAzYCBCACQQRqQaSnwAAgABAWIAJBIGokAAtfAQJ/IwBBIGsiAiQAIAAoAgAhAyACQQhqIgBBEGogAUEQaikCADcDACAAQQhqIAFBCGopAgA3AwAgAiABKQIANwMIIAIgAzYCBCACQQRqQYivwAAgABAWIAJBIGokAAt7AQF/IwBBEGsiAiQAIAIgAEETajYCDCABQYyRwABBCEGUkcAAQQogAEGgkcAAQbCRwABBCiAAQQRqQaCRwABBupHAAEEDIABBCGpBwJHAAEHQkcAAQQsgAEESakHckcAAQeyRwABBDiACQQxqQfyRwAAQLyACQRBqJAALewEBfyMAQRBrIgIkACACIABBHGo2AgwgAUH4lsAAQQZB/pbAAEEFIABBCGpBhJfAAEGUl8AAQQQgAEEUakGYl8AAQaiXwABBBCAAQRhqQZiXwABBrJfAAEEQIABBvJfAAEHMl8AAQQsgAkEMakHYl8AAEC8gAkEQaiQAC2kAIwBBMGsiACQAQbTEwAAtAAAEQCAAQRRqQgE3AgAgAEECNgIMIABB2KXAADYCCCAAQd0ANgIkIAAgATYCLCAAIABBIGo2AhAgACAAQSxqNgIgIABBCGpBgKbAABCSAQALIABBMGokAAtlAQN/IwBBEGsiAyQAIAEoAgghBCADQQhqIAEoAgAgAjUCABBGIAMoAgwhAiADKAIIIgVFBEAgAUEEaiAEIAIQ0AEgASABKAIIQQFqNgIICyAAIAU2AgAgACACNgIEIANBEGokAAtYAQF/IwBBIGsiAiQAIAIgADYCBCACQQhqIgBBEGogAUEQaikCADcDACAAQQhqIAFBCGopAgA3AwAgAiABKQIANwMIIAJBBGpB0KPAACAAEBYgAkEgaiQAC1gBAX8jAEEgayICJAAgAiAANgIEIAJBCGoiAEEQaiABQRBqKQIANwMAIABBCGogAUEIaikCADcDACACIAEpAgA3AwggAkEEakGIr8AAIAAQFiACQSBqJAAL6gQBB38jAEEQayIGJAAgBkEIaiABIAJBAhBVAn8gBigCCARAQQEhAiAGKAIMDAELIwBBIGsiBSQAIAEiAigCCCEBIAJBADYCCAJ/AkACQCABBEAgBSACQQxqKAIAIgE2AhQgBUEIaiEJIAIoAhAhByMAQdAAayIEJAACQCADLQAARQRAIAQgAy0AAbgQAjYCBCAEQQA2AgAgBCgCBCEDIAQoAgAhBwwBCyAEQSBqIgpBDGpCAzcCACAEQcwAakEKNgIAIARBOGoiCEEMakEKNgIAIARBBDYCJCAEQcyEwAA2AiAgBCADQQNqNgJIIAQgA0ECajYCQCAEQQo2AjwgBCADQQFqNgI4IAQgCDYCKCAEQRBqIgggChAaIARBCGogByAEKAIQIAQoAhgQvQEgBCgCDCEDIAQoAgghByAIELABCyAJIAc2AgAgCSADNgIEIARB0ABqJAAgBSgCDCEDAkACQCAFKAIIRQRAIAUgAzYCGCACKAIARQRAIAJBBGogBUEUaiAFQRhqEMUBIgJBhAFPBEAgAhAACyAFKAIYIgJBhAFPBEAgAhAACyAFKAIUIgJBhAFJDQMgAhAADAMLIAUgATYCHCAFQRxqENEBIQEgBSgCHCEEIAENARA+IQEgBEGEAU8EQCAEEAALIANBhAFJDQUgAxAADAULIAFBhAFJDQMgARAADAMLIAJBBGogBCADEM8BC0EADAMLQfiCwABBFRDjAQALIAMhAQtBAQshAiAGIAE2AgQgBiACNgIAIAVBIGokACAGKAIAIQIgBigCBAshASAAIAI2AgAgACABNgIEIAZBEGokAAuWAwEDfyMAQRBrIgQkACAEQQhqIAEgAiADEFUgACIGAn8gBCgCCARAIAQoAgwhA0EBDAELIwBBIGsiAyQAIAEoAgghACABQQA2AggCfwJAAkAgAARAIAMgAUEMaigCACIANgIUIAEoAhAaIANBCGoiAkGCAUGDAUGZhMAALQAAGzYCBCACQQA2AgAgAygCDCECAkACQCADKAIIRQRAIAMgAjYCGCABKAIARQRAIAFBBGogA0EUaiADQRhqEMUBIgFBhAFPBEAgARAACyADKAIYIgFBhAFPBEAgARAACyADKAIUIgFBhAFJDQMgARAADAMLIAMgADYCHCADQRxqENEBIQAgAygCHCEFIAANARA+IQAgBUGEAU8EQCAFEAALIAJBhAFJDQUgAhAADAULIABBhAFJDQMgABAADAMLIAFBBGogBSACEM8BC0EADAMLQfiCwABBFRDjAQALIAIhAAtBAQshASAEIAA2AgQgBCABNgIAIANBIGokACAEKAIEIQMgBCgCAAs2AgAgBiADNgIEIARBEGokAAtbAQJ/AkAgAUUEQEEBIQIMAQsgAUEATiIDBEBBtcTAAC0AABogASADEMcBIgINASADIAFB2MTAACgCACIA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EDcAC0HwpMAAQStBvKbAABCJAQALQfCkwABBK0GspsAAEIkBAAszAQF/IwBBEGsiAiQAIAIgACgCADYCDCABQciawABBDSACQQxqQdiawAAQMSACQRBqJAALMAEBfyMAQRBrIgIkACACIAA2AgwgAUGohcAAQQUgAkEMakGwhcAAEDEgAkEQaiQACzABAX8jAEEQayICJAAgAiAANgIMIAFBjJLAAEEKIAJBDGpBmJLAABAxIAJBEGokAAswAQF/IwBBEGsiAiQAIAIgADYCDCABQa+awABBBiACQQxqQbiawAAQMSACQRBqJAALMAEBfyMAQRBrIgIkACACIAA2AgwgAUGwocAAQQQgAkEMakG0ocAAEDEgAkEQaiQACzwAIAAoAgAhACABLQAcQRBxQQR2RQRAIAEtABxBIHFBBXZFBEAgACABENQBDwsgACABEEUPCyAAIAEQRAvTAgEDfyAAKAIAIQAgAS0AHEEQcUEEdkUEQCABLQAcQSBxQQV2RQRAIAAzAQAgARAgDwsjAEGAAWsiAyQAIAAvAQAhAkEAIQADQCAAIANqQf8AakEwQTcgAkEPcSIEQQpJGyAEajoAACAAQQFrIQAgAkH//wNxIgRBBHYhAiAEQQ9LDQALIABBgAFqIgJBgQFPBEAgAkGAAUGsrcAAEFkACyABQbytwABBAiAAIANqQYABakEAIABrEBUgA0GAAWokAA8LIwBBgAFrIgMkACAALwEAIQJBACEAA0AgACADakH/AGpBMEHXACACQQ9xIgRBCkkbIARqOgAAIABBAWshACACQf//A3EiBEEEdiECIARBD0sNAAsgAEGAAWoiAkGBAU8EQCACQYABQaytwAAQWQALIAFBvK3AAEECIAAgA2pBgAFqQQAgAGsQFSADQYABaiQACzwAIAAoAgAhACABLQAcQRBxQQR2RQRAIAEtABxBIHFBBXZFBEAgACABENUBDwsgACABEEIPCyAAIAEQQwssACABIAJPBEAgAiAAIAJBBHRqIAEgAmsQEg8LQdibwABBI0HInMAAEIkBAAssACABIAJPBEAgAiAAIAJBBHRqIAEgAmsQEg8LQfyewABBI0Hsn8AAEIkBAAsfAQF/IABBCGoiARB9IABBDGooAgAEQCABKAIAEA8LCy8BAn8gACAAKAKgASICIAAoAqQBQQFqIgMgASAAQaoBahAcIABBiAFqIAIgAxBvCy8BAn8gACAAKAKgASICIAAoAqQBQQFqIgMgASAAQaoBahBQIABBiAFqIAIgAxBvCzUBAX8gASgCFEHrqsAAQQEgAUEYaigCACgCDBEBACECIABBADoABSAAIAI6AAQgACABNgIACzYAAkAgAS0AHEEQcUEEdkUEQCABLQAcQSBxQQV2DQEgACABENUBDwsgACABEEMPCyAAIAEQQgs2AAJAIAEtABxBEHFBBHZFBEAgAS0AHEEgcUEFdg0BIAAgARDUAQ8LIAAgARBEDwsgACABEEULHgACQCAALQAMQQJGDQAgACgCBEUNACAAKAIAEA8LCyABAX8CQCAAKAIEIgFFDQAgAEEIaigCAEUNACABEA8LCyMAAkAgAUH8////B00EQCAAIAFBBCACELwBIgANAQsACyAACyUAIABFBEBByIbAAEEyEOMBAAsgACACIAMgBCAFIAEoAhARCAALFQAgABB9IAAoAgQEQCAAKAIAEA8LCyMAIABFBEBByIbAAEEyEOMBAAsgACACIAMgBCABKAIQEQUACyMAIABFBEBByIbAAEEyEOMBAAsgACACIAMgBCABKAIQEQsACyMAIABFBEBByIbAAEEyEOMBAAsgACACIAMgBCABKAIQERgACyMAIABFBEBByIbAAEEyEOMBAAsgACACIAMgBCABKAIQERoACyMAIABFBEBByIbAAEEyEOMBAAsgACACIAMgBCABKAIQERwACzMAIAEoAhQgAC0AAEECdCIAQfCHwABqKAIAIABB5IfAAGooAgAgAUEYaigCACgCDBEBAAszACABKAIUIAAtAABBAnQiAEGgm8AAaigCACAAQeiawABqKAIAIAFBGGooAgAoAgwRAQALIQAgAEUEQEHIhsAAQTIQ4wEACyAAIAIgAyABKAIQEQMACxEAIAAoAgQEQCAAKAIAEA8LCzEAIAEoAhRBwKLAAEHHosAAIAAoAgAtAAAiABtBB0EFIAAbIAFBGGooAgAoAgwRAQALFAAgAEEEaigCAARAIAAoAgAQDwsLIgAgAC0AAEUEQCABQcSvwABBBRAQDwsgAUHAr8AAQQQQEAsfACAARQRAQciGwABBMhDjAQALIAAgAiABKAIQEQAACy4AIAEoAhRB2I/AAEHhj8AAIAAtAAAiABtBCUEHIAAbIAFB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AEEQaiQAC40BAQJ/IAAoAgAiACgCACECIAAoAgghAyMAQRBrIgAkACAAIAEQoAEgAwRAIANBAXQhAQNAIAAgAjYCDCAAIABBDGpBrIjAABDWASACQQJqIQIgAUECayIBDQALCyAALQAEBH9BAQUgACgCACIBKAIUQY6twABBASABQRhqKAIAKAIMEQEACyAAQRBqJAALCwAgAQRAIAAQDwsLEwAgACgCACABIAEgAmoQgAFBAAsTACABKAIUIAFBGGooAgAgABAWCxMAIAAoAgAgASgCACACKAIAEAsLFAAgACgCACABIAAoAgQoAgwRAAALGQACfyABQQlPBEAgASAAEBsMAQsgABAOCwuIAQECfyAAKAIAIQIgACgCCCEDIwBBEGsiACQAIAAgARCgASADBEAgA0EEdCEBA0AgACACNgIMIAAgAEEMakHciMAAENYBIAJBEGohAiABQRBrIgENAAsLIAAtAAQEf0EBBSAAKAIAIgEoAhRBjq3AAEEBIAFBGGooAgAoAgwRAQALIABBEGokAAuIAQECfyAAKAIAIQIgACgCCCEDIwBBEGsiACQAIAAgARCgASADBEAgA0EEdCEBA0AgACACNgIMIAAgAEEMakGMiMAAENYBIAJBEGohAiABQRBrIgENAAsLIAAtAAQEf0EBBSAAKAIAIgEoAhRBjq3AAEEBIAFBGGooAgAoAgwRAQALIABBEGokAAsRACAAKAIAIAAoAgggARDmAQsOACAAIAEgASACahCAAQsTACAAQdymwAA2AgQgACABNgIACxAAIAEgACgCACAAKAIEEBALDQAgACABIAIQywFBAAsNACAAKAIAIAEgAhAFCw0AIAAoAgAgASACEAoLDAAgACgCABAJQQFGC6EEAQV/IAAoAgAhAyMAQRBrIgQkAAJAIAFB/wBNBEAgAygCCCICIAMoAgRGBEAjAEEgayIAJAACQAJAIAJBAWoiAkUNACADQQRqKAIAIgZBAXQiBSACIAIgBUkbIgJBCCACQQhLGyIFQX9zQR92IQICQCAGBEAgACAGNgIYIABBATYCFCAAIAMoAgA2AhAMAQsgAEEANgIUCyAAIAIgBSAAQRBqEDQgACgCBCECIAAoAgBFBEAgAyACNgIAIANBBGogBTYCAAwCCyACQYGAgIB4Rg0BIAJFDQAgAiAAQQhqKAIAQdjE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JAAgA0EXNgIAIANBFzYCBCABKAIUQdCPwABBCCABQRhqKAIAKAIMEQEAIQUgA0EAOgANIAMgBToADCADIAE2AggCfwNAIANBCGogBCgCACAEQQRqKAIAIAJBsK/AABAeIQUgAkEIaiECIARBCGohBCAGQQFrIgYNAAsgAy0ADCICQQBHIAMtAA1FDQAaQQEgAg0AGiAFKAIAIgEtABxBBHFFBEAgASgCFEGHrcAAQQIgAUEYaigCACgCDBEBAAwBCyABKAIUQYatwABBASABQRhqKAIAKAIMEQEACyADQSBqJAAgAEHAAWokAAtyAQJ/QQIhAyMAQRBrIgIkACACIAEQoAEDQCACIAA2AgwgAiACQQxqQcyIwAAQ1gEgAEEBaiEAIANBAWsiAw0ACyACLQAEBH9BAQUgAigCACIAKAIUQY6twABBASAAQRhqKAIAKAIMEQEACyACQRBqJAALDQBBzKLAAEEbEOMBAAsOAEHnosAAQc8AEOMBAAsJACAAIAEQDQALDAAgACgCACABELMBCwsAIAAoAgAgARAkCwoAIAIgACABEBALwAIBA38gACgCACEAIwBBgAFrIgQkAAJAAkACQAJAIAEoAhwiAkEQcUUEQCACQSBxDQEgADUCACABECAhAAwECyAAKAIAIQBBACECA0AgAiAEakH/AGpBMEHXACAAQQ9xIgNBCkkbIANqOgAAIAJBAWshAiAAQQ9LIABBBHYhAA0ACyACQYABaiIAQYEBTw0BIAFBvK3AAEECIAIgBGpBgAFqQQAgAmsQFSEADAMLIAAoAgAhAEEAIQIDQCACIARqQf8AakEwQTcgAEEPcSIDQQpJGyADajoAACACQQFrIQIgAEEPSyAAQQR2IQANAAsgAkGAAWoiAEGBAU8NASABQbytwABBAiACIARqQYABakEAIAJrEBUhAAwCCyAAQYABQaytwAAQWQALIABBgAFBrK3AABBZAAsgBEGAAWokACAAC5wBAQJ/IAJBD0sEQEEAIABrQQNxIgMgAGohBCADBEADQCAAIAE6AAAgBCAAQQFqIgBLDQALCyACIANrIgJBfHEiAyAEaiEAIANBAEoEQCABQf8BcUGBgoQIbCEDA0AgBCADNgIAIARBBGoiBCAASQ0ACwsgAkEDcSECCyACBEAgACACaiECA0AgACABOgAAIAIgAEEBaiIA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AAAAL3J1c3RjL2ViMjYyOTZiNTU2Y2VmMTBmYjcxM2EzOGYzZDE2Yjk4ODYwODBmMjYvbGlicmFyeS9hbGxvYy9zcmMvcmF3X3ZlYy5yc+wCEABMAAAArgEAAAkAAABjbG9zdXJlIGludm9rZWQgcmVjdXJzaXZlbHkgb3IgYWZ0ZXIgYmVpbmcgZHJvcHBlZFBlbmZvcmVncm91bmQAGgAAAAQAAAABAAAAGwAAAGJhY2tncm91bmRpbnRlbnNpdHkAGgAAAAEAAAABAAAAHAAAAGF0dHJzAAAAHQAAAAQAAAAEAAAAHgAAAEZhaW50Qm9sZE5vcm1hbAAGAAAABAAAAAUAAADdAxAA2QMQANQDEAAfAAAABAAAAAQAAAAgAAAAHwAAAAQAAAAEAAAAIQAAAB8AAAAEAAAABAAAACIAAAAfAAAABAAAAAQAAAAjAAAAHwAAAAQAAAAEAAAAJAAAAB8AAAAEAAAABAAAACUAAAAfAAAABAAAAAQAAAAmAAAAUkdCcicAAAABAAAAAQAAACgAAABnYgAAHwAAAAQAAAAEAAAAHgAAAEN1cnNvcmNvbAAAAB8AAAAEAAAABAAAACkAAAByb3d2aXNpYmxlUkdCAAAAKgAAAAQAAAAEAAAAKwAAAEluZGV4ZWQAKgAAAAQAAAAEAAAAHgAAAC9ob21lL21hcmNpbi8uY2FyZ28vZ2l0L2NoZWNrb3V0cy9hdnQtNjgzMzk3ODhiYTdkNjczZS8yOGFlZDJiL3NyYy90ZXJtaW5hbC5ycwAA6AQQAE4AAABoAQAACgAAAOgEEABOAAAAnwEAABEAAADoBBAATgAAAN4CAAAYAAAAY29sc3Jvd3NidWZmZXJvdGhlcl9idWZmZXJhY3RpdmVfYnVmZmVyX3R5cGVzY3JvbGxiYWNrX2xpbWl0Y3Vyc29ycGVuY2hhcnNldHNhY3RpdmVfY2hhcnNldHRhYnNpbnNlcnRfbW9kZW9yaWdpbl9tb2RlYXV0b193cmFwX21vZGVuZXdfbGluZV9tb2RlbmV4dF9wcmludF93cmFwc3RvcF9tYXJnaW5ib3R0b21fbWFyZ2luc2F2ZWRfY3R4YWx0ZXJuYXRlX3NhdmVkX2N0eGRpcnR5X2xpbmVzcmVzaXphYmxlcmVzaXplZAAAaAUQAAQAAABsBRAABAAAAHAFEAAG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");function SA(A){return"number"==typeof A?A:"string"==typeof A?A.split(":").reverse().map(parseFloat).reduce(((A,g,I)=>A+g*Math.pow(60,I))):void 0}class LA{constructor(){let A=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;this.speed=A,this.startTime=performance.now()}getTime(){return this.speed*(performance.now()-this.startTime)/1e3}setTime(A){this.startTime=performance.now()-A/this.speed*1e3}}class UA{constructor(){}getTime(A){}setTime(A){}}const HA=(async()=>(await fA(pA),YA))();class KA{constructor(A){this.core=A,this.driver=A.driver}onEnter(A){}init(){}play(){}pause(){}togglePlay(){}seek(A){return!1}step(){}stop(){this.driver.stop()}}class mA extends KA{async init(){try{return await this.core.initializeDriver(),this.core.setState("stopped")}catch(A){throw this.core.setState("errored"),A}}async play(){this.core.dispatchEvent("play");const A=await this.init();return await A.doPlay()}togglePlay(){return this.play()}async seek(A){const g=await this.init();return await g.seek(A)}async step(){const A=await this.init();return await A.step()}stop(){}}class qA extends KA{onEnter(A){this.core.dispatchEvent("stopped"),"paused"===A.reason?this.core.dispatchEvent("pause"):"ended"===A.reason&&this.core.dispatchEvent("ended")}play(){return this.core.dispatchEvent("play"),this.doPlay()}async doPlay(){const A=await this.driver.play();!0===A?this.core.setState("playing"):"function"==typeof A&&(this.core.setState("playing"),this.driver.stop=A)}togglePlay(){return this.play()}seek(A){return this.driver.seek(A)}step(){this.driver.step()}}class bA extends KA{onEnter(){this.core.dispatchEvent("playing")}pause(){!0===this.driver.pause()&&this.core.setState("stopped",{reason:"paused"})}togglePlay(){return this.pause()}seek(A){return this.driver.seek(A)}}class vA extends KA{onEnter(){this.core.dispatchEvent("loading")}}class xA extends KA{onEnter(){this.core.dispatchEvent("offline")}}class jA extends KA{onEnter(){this.core.dispatchEvent("errored")}}class TA{constructor(A,g){this.logger=g.logger,this.state=new mA(this),this.stateName="uninitialized",this.driver=null,this.driverFn=A,this.changedLines=new Set,this.cursor=void 0,this.duration=void 0,this.cols=g.cols,this.rows=g.rows,this.speed=g.speed??1,this.loop=g.loop,this.idleTimeLimit=g.idleTimeLimit,this.preload=g.preload,this.startAt=SA(g.startAt),this.poster=this.parsePoster(g.poster),this.markers=this.normalizeMarkers(g.markers),this.pauseOnMarkers=g.pauseOnMarkers,this.commandQueue=Promise.resolve(),this.eventHandlers=new Map([["marker",[]],["ended",[]],["errored",[]],["init",[]],["input",[]],["loading",[]],["offline",[]],["pause",[]],["play",[]],["playing",[]],["reset",[]],["resize",[]],["seeked",[]],["stopped",[]],["terminalUpdate",[]]])}addEventListener(A,g){this.eventHandlers.get(A).push(g)}dispatchEvent(A){let g=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};for(const I of this.eventHandlers.get(A))I(g)}async init(){this.wasm=await HA;const A=this.feed.bind(this),g=this.now.bind(this),I=this.resetVt.bind(this),B=this.setState.bind(this),Q="npt"===this.poster.type?this.poster.value:void 0;this.driver=this.driverFn({feed:A,onInput:A=>{this.dispatchEvent("input",{data:A})},onMarker:A=>{let{index:g,time:I,label:B}=A;this.dispatchEvent("marker",{index:g,time:I,label:B})},reset:I,now:g,setTimeout:(A,g)=>window.setTimeout(A,g/this.speed),setInterval:(A,g)=>window.setInterval(A,g/this.speed),setState:B,logger:this.logger},{cols:this.cols,rows:this.rows,idleTimeLimit:this.idleTimeLimit,startAt:this.startAt,loop:this.loop,posterTime:Q,markers:this.markers,pauseOnMarkers:this.pauseOnMarkers}),"function"==typeof this.driver&&(this.driver={play:this.driver}),(this.preload||void 0!==Q)&&this.withState((A=>A.init()));const C="text"===this.poster.type?this.renderPoster(this.poster.value):void 0,E={isPausable:!!this.driver.pause,isSeekable:!!this.driver.seek,poster:C};if(void 0===this.driver.init&&(this.driver.init=()=>({})),void 0===this.driver.pause&&(this.driver.pause=()=>{}),void 0===this.driver.seek&&(this.driver.seek=A=>!1),void 0===this.driver.step&&(this.driver.step=()=>{}),void 0===this.driver.stop&&(this.driver.stop=()=>{}),void 0===this.driver.getCurrentTime){const A=this.driver.play;let g=new UA;this.driver.play=()=>(g=new LA(this.speed),A()),this.driver.getCurrentTime=()=>g.getTime()}return E}play(){return this.withState((A=>A.play()))}pause(){return this.withState((A=>A.pause()))}togglePlay(){return this.withState((A=>A.togglePlay()))}seek(A){return this.withState((async g=>{await g.seek(A)&&this.dispatchEvent("seeked")}))}step(){return this.withState((A=>A.step()))}stop(){return this.withState((A=>A.stop()))}withState(A){return this.enqueueCommand((()=>A(this.state)))}enqueueCommand(A){return this.commandQueue=this.commandQueue.then(A),this.commandQueue}getChangedLines(){if(this.changedLines.size>0){const A=new Map,g=this.vt.rows;for(const I of this.changedLines)I1&&void 0!==arguments[1]?arguments[1]:{};if(this.stateName===A)return this.state;if(this.stateName=A,"playing"===A)this.state=new bA(this);else if("stopped"===A)this.state=new qA(this);else if("loading"===A)this.state=new vA(this);else if("offline"===A)this.state=new xA(this);else{if("errored"!==A)throw`invalid state: ${A}`;this.state=new jA(this)}return this.state.onEnter(g),this.state}feed(A){this.doFeed(A),this.dispatchEvent("terminalUpdate")}doFeed(A){const[g,I]=this.vt.feed(A);if(g.forEach((A=>this.changedLines.add(A))),this.cursor=void 0,I){const[A,g]=this.vt.get_size();this.vt.cols=A,this.vt.rows=g,this.logger.debug(`core: vt resize (${A}x${g})`),this.dispatchEvent("resize",{cols:A,rows:g})}}now(){return performance.now()*this.speed}async initializeDriver(){const A=await this.driver.init();this.cols=this.cols??A.cols??80,this.rows=this.rows??A.rows??24,this.duration=this.duration??A.duration,this.markers=this.normalizeMarkers(A.markers)??this.markers??[],this.initializeVt(this.cols,this.rows);const g=void 0!==A.poster?this.renderPoster(A.poster):void 0;this.dispatchEvent("init",{cols:this.cols,rows:this.rows,duration:this.duration,markers:this.markers,poster:g})}resetVt(A,g){let I=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;this.cols=A,this.rows=g,this.cursor=void 0,this.initializeVt(A,g),void 0!==I&&""!==I&&this.doFeed(I),this.dispatchEvent("reset",{cols:A,rows:g})}initializeVt(A,g){this.logger.debug(`core: vt init (${A}x${g})`),this.vt=this.wasm.create(A,g,!0,100),this.vt.cols=A,this.vt.rows=g,this.changedLines.clear();for(let A=0;AB.feed(A)));const Q=B.get_cursor()??!1,C=[];for(let A=0;A"number"==typeof A?[A,""]:A))}}const ZA=Symbol("store-raw"),WA=Symbol("store-node"),OA=Symbol("store-name");function XA(A,g){let B=A[I];if(!B&&(Object.defineProperty(A,I,{value:B=new Proxy(A,gg)}),!Array.isArray(A))){const g=Object.keys(A),I=Object.getOwnPropertyDescriptors(A);for(let Q=0,C=g.length;Q!0,deleteProperty:()=>!0,ownKeys:function(A){return $A(A),Reflect.ownKeys(A)},getOwnPropertyDescriptor:function(A,g){const B=Reflect.getOwnPropertyDescriptor(A,g);return B&&!B.get&&B.configurable&&g!==I&&g!==WA&&g!==OA?(delete B.value,delete B.writable,B.get=()=>A[I][g],B):B}};function Ig(A,g,I,B=!1){if(!B&&A[g]===I)return;const Q=A[g],C=A.length;void 0===I?delete A[g]:A[g]=I;let E,e=PA(A);(E=_A(e,g,Q))&&E.$((()=>I)),Array.isArray(A)&&A.length!==C&&(E=_A(e,"length",C))&&E.$(A.length),(E=e._)&&E.$()}function Bg(A,g){const I=Object.keys(g);for(let B=0;B1){B=g.shift();const C=typeof B,E=Array.isArray(A);if(Array.isArray(B)){for(let Q=0;Q1)return void Qg(A[B],g,[B].concat(I));Q=A[B],I=[B].concat(I)}let C=g[0];"function"==typeof C&&(C=C(Q,I),C===Q)||void 0===B&&null==C||(C=VA(C),void 0===B||zA(Q)&&zA(C)&&!Array.isArray(C)?Bg(Q,C):Ig(A,B,C))}function Cg(...[A,g]){const I=VA(A||{}),B=Array.isArray(I);return[XA(I),function(...A){l((()=>{B&&1===A.length?function(A,g){if("function"==typeof g&&(g=g(A)),g=VA(g),Array.isArray(g)){if(A===g)return;let I=0,B=g.length;for(;I=E&&i>=E&&(C[e]===A[i]||Q&&C[E]&&A[E]&&C[e][Q]===A[i][Q]);e--,i--)n[i]=C[e];if(E>i||E>e){for(I=E;I<=i;I++)Ig(C,I,A[I]);for(;IA.length&&Ig(C,"length",A.length))}for(o=new Array(i+1),I=i;I>=E;I--)t=A[I],s=Q&&t?t[Q]:t,g=r.get(s),o[I]=void 0===g?-1:g,r.set(s,I);for(g=E;g<=e;g++)t=C[g],s=Q&&t?t[Q]:t,I=r.get(s),void 0!==I&&-1!==I&&(n[I]=C[g],I=o[I],r.set(s,I));for(I=E;IA.length&&Ig(C,"length",A.length))}const E=Object.keys(A);for(let g=0,I=E.length;g{if(!zA(A)||!zA(Q))return Q;const g=eg(Q,{[Eg]:A},Eg,I,B);return void 0===g?A:g}}const tg=X("");var og=A=>(()=>{const g=tg.cloneNode(!0);return AA(g,(()=>A.text)),w((I=>{const B=function(A,g){const I=A.get("inverse")?A.has("bg")?A.get("bg"):"bg":A.get("fg"),B=A.get("inverse")?A.has("fg")?A.get("fg"):"fg":A.get("bg"),Q=sg(I,A.get("bold"),"fg-"),C=sg(B,A.get("blink"),"bg-");let E=g??"";Q&&(E+=" "+Q);C&&(E+=" "+C);A.has("bold")&&(E+=" ap-bright");A.has("faint")&&(E+=" ap-faint");A.has("italic")&&(E+=" ap-italic");A.has("underline")&&(E+=" ap-underline");A.has("blink")&&(E+=" ap-blink");return E}(A.attrs,A.extraClass),Q=function(A){const g=A.get("inverse")?A.get("bg"):A.get("fg"),I=A.get("inverse")?A.get("fg"):A.get("bg");let B={};"string"==typeof g&&(B.color=g);"string"==typeof I&&(B["background-color"]=I);return B}(A.attrs);return B!==I._v$&&V(g,I._v$=B),I._v$2=_(g,Q,I._v$2),I}),{_v$:void 0,_v$2:void 0}),g})();function sg(A,g,I){return"number"==typeof A?(g&&A<8&&(A+=8),`${I}${A}`):"fg"==A||"bg"==A?`${I}${A}`:void 0}const ng=X('');var rg=A=>(()=>{const g=ng.cloneNode(!0);return AA(g,b(x,{get each(){return(()=>{if("number"==typeof A.cursor){const g=[];let I=0,B=0;for(;B0&&g.push([Q[0].substring(0,e),Q[1]]),g.push([Q[0][e],C," ap-cursor-a"]),g.push([Q[0][e],E," ap-cursor-b"]),eb(og,{get text(){return A()[0]},get attrs(){return A()[1]},get extraClass(){return A()[2]}})})),w((()=>g.style.setProperty("height",A.height))),g})();const ag=X('');var cg=A=>{const g=()=>A.lineHeight??1.3333333333,I=h((()=>({width:`${A.cols}ch`,height:g()*A.rows+"em","font-size":100*(A.scale||1)+"%","font-family":A.fontFamily,"line-height":`${g()}em`})));return(()=>{const B=ag.cloneNode(!0),Q=A.ref;return"function"==typeof Q?$(Q,B):A.ref=B,AA(B,b(v,{get each(){return A.lines},children:(I,B)=>b(rg,{get segments(){return I.segments},get cursor(){return h((()=>B()===A.cursor?.[1]))()?A.cursor?.[0]:null},get height(){return`${g()}em`}})})),w((g=>{const Q=!(!A.blink&&!A.cursorHold),C=!!A.blink,E=I();return Q!==g._v$&&B.classList.toggle("ap-cursor",g._v$=Q),C!==g._v$2&&B.classList.toggle("ap-blink",g._v$2=C),g._v$3=_(B,E,g._v$3),g}),{_v$:void 0,_v$2:void 0,_v$3:void 0}),B})()};const Dg=X(''),wg=X(''),hg=X(''),lg=X(''),yg=X('