diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..af87054
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,3 @@
+/kicad/*-backups
+/kicad/*-bak
+/kicad/gerber/*
diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 0000000..d440521
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,3 @@
+[submodule "kicad/lib"]
+ path = kicad/lib
+ url = git@github.com:necroware/kicad-library.git
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..f288702
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,674 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 3, 29 June 2007
+
+ Copyright (C) 2007 Free Software Foundation, Inc.
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The GNU General Public License is a free, copyleft license for
+software and other kinds of works.
+
+ The licenses for most software and other practical works are designed
+to take away your freedom to share and change the works. By contrast,
+the GNU General Public License is intended to guarantee your freedom to
+share and change all versions of a program--to make sure it remains free
+software for all its users. We, the Free Software Foundation, use the
+GNU General Public License for most of our software; it applies also to
+any other work released this way by its authors. You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+them if you wish), that you receive source code or can get it if you
+want it, that you can change the software or use pieces of it in new
+free programs, and that you know you can do these things.
+
+ To protect your rights, we need to prevent others from denying you
+these rights or asking you to surrender the rights. Therefore, you have
+certain responsibilities if you distribute copies of the software, or if
+you modify it: responsibilities to respect the freedom of others.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must pass on to the recipients the same
+freedoms that you received. You must make sure that they, too, receive
+or can get the source code. And you must show them these terms so they
+know their rights.
+
+ Developers that use the GNU GPL protect your rights with two steps:
+(1) assert copyright on the software, and (2) offer you this License
+giving you legal permission to copy, distribute and/or modify it.
+
+ For the developers' and authors' protection, the GPL clearly explains
+that there is no warranty for this free software. For both users' and
+authors' sake, the GPL requires that modified versions be marked as
+changed, so that their problems will not be attributed erroneously to
+authors of previous versions.
+
+ Some devices are designed to deny users access to install or run
+modified versions of the software inside them, although the manufacturer
+can do so. This is fundamentally incompatible with the aim of
+protecting users' freedom to change the software. The systematic
+pattern of such abuse occurs in the area of products for individuals to
+use, which is precisely where it is most unacceptable. Therefore, we
+have designed this version of the GPL to prohibit the practice for those
+products. If such problems arise substantially in other domains, we
+stand ready to extend this provision to those domains in future versions
+of the GPL, as needed to protect the freedom of users.
+
+ Finally, every program is threatened constantly by software patents.
+States should not allow patents to restrict development and use of
+software on general-purpose computers, but in those that do, we wish to
+avoid the special danger that patents applied to a free program could
+make it effectively proprietary. To prevent this, the GPL assures that
+patents cannot be used to render the program non-free.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ TERMS AND CONDITIONS
+
+ 0. Definitions.
+
+ "This License" refers to version 3 of the GNU General Public License.
+
+ "Copyright" also means copyright-like laws that apply to other kinds of
+works, such as semiconductor masks.
+
+ "The Program" refers to any copyrightable work licensed under this
+License. Each licensee is addressed as "you". "Licensees" and
+"recipients" may be individuals or organizations.
+
+ To "modify" a work means to copy from or adapt all or part of the work
+in a fashion requiring copyright permission, other than the making of an
+exact copy. The resulting work is called a "modified version" of the
+earlier work or a work "based on" the earlier work.
+
+ A "covered work" means either the unmodified Program or a work based
+on the Program.
+
+ To "propagate" a work means to do anything with it that, without
+permission, would make you directly or secondarily liable for
+infringement under applicable copyright law, except executing it on a
+computer or modifying a private copy. Propagation includes copying,
+distribution (with or without modification), making available to the
+public, and in some countries other activities as well.
+
+ To "convey" a work means any kind of propagation that enables other
+parties to make or receive copies. Mere interaction with a user through
+a computer network, with no transfer of a copy, is not conveying.
+
+ An interactive user interface displays "Appropriate Legal Notices"
+to the extent that it includes a convenient and prominently visible
+feature that (1) displays an appropriate copyright notice, and (2)
+tells the user that there is no warranty for the work (except to the
+extent that warranties are provided), that licensees may convey the
+work under this License, and how to view a copy of this License. If
+the interface presents a list of user commands or options, such as a
+menu, a prominent item in the list meets this criterion.
+
+ 1. Source Code.
+
+ The "source code" for a work means the preferred form of the work
+for making modifications to it. "Object code" means any non-source
+form of a work.
+
+ A "Standard Interface" means an interface that either is an official
+standard defined by a recognized standards body, or, in the case of
+interfaces specified for a particular programming language, one that
+is widely used among developers working in that language.
+
+ The "System Libraries" of an executable work include anything, other
+than the work as a whole, that (a) is included in the normal form of
+packaging a Major Component, but which is not part of that Major
+Component, and (b) serves only to enable use of the work with that
+Major Component, or to implement a Standard Interface for which an
+implementation is available to the public in source code form. A
+"Major Component", in this context, means a major essential component
+(kernel, window system, and so on) of the specific operating system
+(if any) on which the executable work runs, or a compiler used to
+produce the work, or an object code interpreter used to run it.
+
+ The "Corresponding Source" for a work in object code form means all
+the source code needed to generate, install, and (for an executable
+work) run the object code and to modify the work, including scripts to
+control those activities. However, it does not include the work's
+System Libraries, or general-purpose tools or generally available free
+programs which are used unmodified in performing those activities but
+which are not part of the work. For example, Corresponding Source
+includes interface definition files associated with source files for
+the work, and the source code for shared libraries and dynamically
+linked subprograms that the work is specifically designed to require,
+such as by intimate data communication or control flow between those
+subprograms and other parts of the work.
+
+ The Corresponding Source need not include anything that users
+can regenerate automatically from other parts of the Corresponding
+Source.
+
+ The Corresponding Source for a work in source code form is that
+same work.
+
+ 2. Basic Permissions.
+
+ All rights granted under this License are granted for the term of
+copyright on the Program, and are irrevocable provided the stated
+conditions are met. This License explicitly affirms your unlimited
+permission to run the unmodified Program. The output from running a
+covered work is covered by this License only if the output, given its
+content, constitutes a covered work. This License acknowledges your
+rights of fair use or other equivalent, as provided by copyright law.
+
+ You may make, run and propagate covered works that you do not
+convey, without conditions so long as your license otherwise remains
+in force. You may convey covered works to others for the sole purpose
+of having them make modifications exclusively for you, or provide you
+with facilities for running those works, provided that you comply with
+the terms of this License in conveying all material for which you do
+not control copyright. Those thus making or running the covered works
+for you must do so exclusively on your behalf, under your direction
+and control, on terms that prohibit them from making any copies of
+your copyrighted material outside their relationship with you.
+
+ Conveying under any other circumstances is permitted solely under
+the conditions stated below. Sublicensing is not allowed; section 10
+makes it unnecessary.
+
+ 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
+
+ No covered work shall be deemed part of an effective technological
+measure under any applicable law fulfilling obligations under article
+11 of the WIPO copyright treaty adopted on 20 December 1996, or
+similar laws prohibiting or restricting circumvention of such
+measures.
+
+ When you convey a covered work, you waive any legal power to forbid
+circumvention of technological measures to the extent such circumvention
+is effected by exercising rights under this License with respect to
+the covered work, and you disclaim any intention to limit operation or
+modification of the work as a means of enforcing, against the work's
+users, your or third parties' legal rights to forbid circumvention of
+technological measures.
+
+ 4. Conveying Verbatim Copies.
+
+ You may convey verbatim copies of the Program's source code as you
+receive it, in any medium, provided that you conspicuously and
+appropriately publish on each copy an appropriate copyright notice;
+keep intact all notices stating that this License and any
+non-permissive terms added in accord with section 7 apply to the code;
+keep intact all notices of the absence of any warranty; and give all
+recipients a copy of this License along with the Program.
+
+ You may charge any price or no price for each copy that you convey,
+and you may offer support or warranty protection for a fee.
+
+ 5. Conveying Modified Source Versions.
+
+ You may convey a work based on the Program, or the modifications to
+produce it from the Program, in the form of source code under the
+terms of section 4, provided that you also meet all of these conditions:
+
+ a) The work must carry prominent notices stating that you modified
+ it, and giving a relevant date.
+
+ b) The work must carry prominent notices stating that it is
+ released under this License and any conditions added under section
+ 7. This requirement modifies the requirement in section 4 to
+ "keep intact all notices".
+
+ c) You must license the entire work, as a whole, under this
+ License to anyone who comes into possession of a copy. This
+ License will therefore apply, along with any applicable section 7
+ additional terms, to the whole of the work, and all its parts,
+ regardless of how they are packaged. This License gives no
+ permission to license the work in any other way, but it does not
+ invalidate such permission if you have separately received it.
+
+ d) If the work has interactive user interfaces, each must display
+ Appropriate Legal Notices; however, if the Program has interactive
+ interfaces that do not display Appropriate Legal Notices, your
+ work need not make them do so.
+
+ A compilation of a covered work with other separate and independent
+works, which are not by their nature extensions of the covered work,
+and which are not combined with it such as to form a larger program,
+in or on a volume of a storage or distribution medium, is called an
+"aggregate" if the compilation and its resulting copyright are not
+used to limit the access or legal rights of the compilation's users
+beyond what the individual works permit. Inclusion of a covered work
+in an aggregate does not cause this License to apply to the other
+parts of the aggregate.
+
+ 6. Conveying Non-Source Forms.
+
+ You may convey a covered work in object code form under the terms
+of sections 4 and 5, provided that you also convey the
+machine-readable Corresponding Source under the terms of this License,
+in one of these ways:
+
+ a) Convey the object code in, or embodied in, a physical product
+ (including a physical distribution medium), accompanied by the
+ Corresponding Source fixed on a durable physical medium
+ customarily used for software interchange.
+
+ b) Convey the object code in, or embodied in, a physical product
+ (including a physical distribution medium), accompanied by a
+ written offer, valid for at least three years and valid for as
+ long as you offer spare parts or customer support for that product
+ model, to give anyone who possesses the object code either (1) a
+ copy of the Corresponding Source for all the software in the
+ product that is covered by this License, on a durable physical
+ medium customarily used for software interchange, for a price no
+ more than your reasonable cost of physically performing this
+ conveying of source, or (2) access to copy the
+ Corresponding Source from a network server at no charge.
+
+ c) Convey individual copies of the object code with a copy of the
+ written offer to provide the Corresponding Source. This
+ alternative is allowed only occasionally and noncommercially, and
+ only if you received the object code with such an offer, in accord
+ with subsection 6b.
+
+ d) Convey the object code by offering access from a designated
+ place (gratis or for a charge), and offer equivalent access to the
+ Corresponding Source in the same way through the same place at no
+ further charge. You need not require recipients to copy the
+ Corresponding Source along with the object code. If the place to
+ copy the object code is a network server, the Corresponding Source
+ may be on a different server (operated by you or a third party)
+ that supports equivalent copying facilities, provided you maintain
+ clear directions next to the object code saying where to find the
+ Corresponding Source. Regardless of what server hosts the
+ Corresponding Source, you remain obligated to ensure that it is
+ available for as long as needed to satisfy these requirements.
+
+ e) Convey the object code using peer-to-peer transmission, provided
+ you inform other peers where the object code and Corresponding
+ Source of the work are being offered to the general public at no
+ charge under subsection 6d.
+
+ A separable portion of the object code, whose source code is excluded
+from the Corresponding Source as a System Library, need not be
+included in conveying the object code work.
+
+ A "User Product" is either (1) a "consumer product", which means any
+tangible personal property which is normally used for personal, family,
+or household purposes, or (2) anything designed or sold for incorporation
+into a dwelling. In determining whether a product is a consumer product,
+doubtful cases shall be resolved in favor of coverage. For a particular
+product received by a particular user, "normally used" refers to a
+typical or common use of that class of product, regardless of the status
+of the particular user or of the way in which the particular user
+actually uses, or expects or is expected to use, the product. A product
+is a consumer product regardless of whether the product has substantial
+commercial, industrial or non-consumer uses, unless such uses represent
+the only significant mode of use of the product.
+
+ "Installation Information" for a User Product means any methods,
+procedures, authorization keys, or other information required to install
+and execute modified versions of a covered work in that User Product from
+a modified version of its Corresponding Source. The information must
+suffice to ensure that the continued functioning of the modified object
+code is in no case prevented or interfered with solely because
+modification has been made.
+
+ If you convey an object code work under this section in, or with, or
+specifically for use in, a User Product, and the conveying occurs as
+part of a transaction in which the right of possession and use of the
+User Product is transferred to the recipient in perpetuity or for a
+fixed term (regardless of how the transaction is characterized), the
+Corresponding Source conveyed under this section must be accompanied
+by the Installation Information. But this requirement does not apply
+if neither you nor any third party retains the ability to install
+modified object code on the User Product (for example, the work has
+been installed in ROM).
+
+ The requirement to provide Installation Information does not include a
+requirement to continue to provide support service, warranty, or updates
+for a work that has been modified or installed by the recipient, or for
+the User Product in which it has been modified or installed. Access to a
+network may be denied when the modification itself materially and
+adversely affects the operation of the network or violates the rules and
+protocols for communication across the network.
+
+ Corresponding Source conveyed, and Installation Information provided,
+in accord with this section must be in a format that is publicly
+documented (and with an implementation available to the public in
+source code form), and must require no special password or key for
+unpacking, reading or copying.
+
+ 7. Additional Terms.
+
+ "Additional permissions" are terms that supplement the terms of this
+License by making exceptions from one or more of its conditions.
+Additional permissions that are applicable to the entire Program shall
+be treated as though they were included in this License, to the extent
+that they are valid under applicable law. If additional permissions
+apply only to part of the Program, that part may be used separately
+under those permissions, but the entire Program remains governed by
+this License without regard to the additional permissions.
+
+ When you convey a copy of a covered work, you may at your option
+remove any additional permissions from that copy, or from any part of
+it. (Additional permissions may be written to require their own
+removal in certain cases when you modify the work.) You may place
+additional permissions on material, added by you to a covered work,
+for which you have or can give appropriate copyright permission.
+
+ Notwithstanding any other provision of this License, for material you
+add to a covered work, you may (if authorized by the copyright holders of
+that material) supplement the terms of this License with terms:
+
+ a) Disclaiming warranty or limiting liability differently from the
+ terms of sections 15 and 16 of this License; or
+
+ b) Requiring preservation of specified reasonable legal notices or
+ author attributions in that material or in the Appropriate Legal
+ Notices displayed by works containing it; or
+
+ c) Prohibiting misrepresentation of the origin of that material, or
+ requiring that modified versions of such material be marked in
+ reasonable ways as different from the original version; or
+
+ d) Limiting the use for publicity purposes of names of licensors or
+ authors of the material; or
+
+ e) Declining to grant rights under trademark law for use of some
+ trade names, trademarks, or service marks; or
+
+ f) Requiring indemnification of licensors and authors of that
+ material by anyone who conveys the material (or modified versions of
+ it) with contractual assumptions of liability to the recipient, for
+ any liability that these contractual assumptions directly impose on
+ those licensors and authors.
+
+ All other non-permissive additional terms are considered "further
+restrictions" within the meaning of section 10. If the Program as you
+received it, or any part of it, contains a notice stating that it is
+governed by this License along with a term that is a further
+restriction, you may remove that term. If a license document contains
+a further restriction but permits relicensing or conveying under this
+License, you may add to a covered work material governed by the terms
+of that license document, provided that the further restriction does
+not survive such relicensing or conveying.
+
+ If you add terms to a covered work in accord with this section, you
+must place, in the relevant source files, a statement of the
+additional terms that apply to those files, or a notice indicating
+where to find the applicable terms.
+
+ Additional terms, permissive or non-permissive, may be stated in the
+form of a separately written license, or stated as exceptions;
+the above requirements apply either way.
+
+ 8. Termination.
+
+ You may not propagate or modify a covered work except as expressly
+provided under this License. Any attempt otherwise to propagate or
+modify it is void, and will automatically terminate your rights under
+this License (including any patent licenses granted under the third
+paragraph of section 11).
+
+ However, if you cease all violation of this License, then your
+license from a particular copyright holder is reinstated (a)
+provisionally, unless and until the copyright holder explicitly and
+finally terminates your license, and (b) permanently, if the copyright
+holder fails to notify you of the violation by some reasonable means
+prior to 60 days after the cessation.
+
+ Moreover, your license from a particular copyright holder is
+reinstated permanently if the copyright holder notifies you of the
+violation by some reasonable means, this is the first time you have
+received notice of violation of this License (for any work) from that
+copyright holder, and you cure the violation prior to 30 days after
+your receipt of the notice.
+
+ Termination of your rights under this section does not terminate the
+licenses of parties who have received copies or rights from you under
+this License. If your rights have been terminated and not permanently
+reinstated, you do not qualify to receive new licenses for the same
+material under section 10.
+
+ 9. Acceptance Not Required for Having Copies.
+
+ You are not required to accept this License in order to receive or
+run a copy of the Program. Ancillary propagation of a covered work
+occurring solely as a consequence of using peer-to-peer transmission
+to receive a copy likewise does not require acceptance. However,
+nothing other than this License grants you permission to propagate or
+modify any covered work. These actions infringe copyright if you do
+not accept this License. Therefore, by modifying or propagating a
+covered work, you indicate your acceptance of this License to do so.
+
+ 10. Automatic Licensing of Downstream Recipients.
+
+ Each time you convey a covered work, the recipient automatically
+receives a license from the original licensors, to run, modify and
+propagate that work, subject to this License. You are not responsible
+for enforcing compliance by third parties with this License.
+
+ An "entity transaction" is a transaction transferring control of an
+organization, or substantially all assets of one, or subdividing an
+organization, or merging organizations. If propagation of a covered
+work results from an entity transaction, each party to that
+transaction who receives a copy of the work also receives whatever
+licenses to the work the party's predecessor in interest had or could
+give under the previous paragraph, plus a right to possession of the
+Corresponding Source of the work from the predecessor in interest, if
+the predecessor has it or can get it with reasonable efforts.
+
+ You may not impose any further restrictions on the exercise of the
+rights granted or affirmed under this License. For example, you may
+not impose a license fee, royalty, or other charge for exercise of
+rights granted under this License, and you may not initiate litigation
+(including a cross-claim or counterclaim in a lawsuit) alleging that
+any patent claim is infringed by making, using, selling, offering for
+sale, or importing the Program or any portion of it.
+
+ 11. Patents.
+
+ A "contributor" is a copyright holder who authorizes use under this
+License of the Program or a work on which the Program is based. The
+work thus licensed is called the contributor's "contributor version".
+
+ A contributor's "essential patent claims" are all patent claims
+owned or controlled by the contributor, whether already acquired or
+hereafter acquired, that would be infringed by some manner, permitted
+by this License, of making, using, or selling its contributor version,
+but do not include claims that would be infringed only as a
+consequence of further modification of the contributor version. For
+purposes of this definition, "control" includes the right to grant
+patent sublicenses in a manner consistent with the requirements of
+this License.
+
+ Each contributor grants you a non-exclusive, worldwide, royalty-free
+patent license under the contributor's essential patent claims, to
+make, use, sell, offer for sale, import and otherwise run, modify and
+propagate the contents of its contributor version.
+
+ In the following three paragraphs, a "patent license" is any express
+agreement or commitment, however denominated, not to enforce a patent
+(such as an express permission to practice a patent or covenant not to
+sue for patent infringement). To "grant" such a patent license to a
+party means to make such an agreement or commitment not to enforce a
+patent against the party.
+
+ If you convey a covered work, knowingly relying on a patent license,
+and the Corresponding Source of the work is not available for anyone
+to copy, free of charge and under the terms of this License, through a
+publicly available network server or other readily accessible means,
+then you must either (1) cause the Corresponding Source to be so
+available, or (2) arrange to deprive yourself of the benefit of the
+patent license for this particular work, or (3) arrange, in a manner
+consistent with the requirements of this License, to extend the patent
+license to downstream recipients. "Knowingly relying" means you have
+actual knowledge that, but for the patent license, your conveying the
+covered work in a country, or your recipient's use of the covered work
+in a country, would infringe one or more identifiable patents in that
+country that you have reason to believe are valid.
+
+ If, pursuant to or in connection with a single transaction or
+arrangement, you convey, or propagate by procuring conveyance of, a
+covered work, and grant a patent license to some of the parties
+receiving the covered work authorizing them to use, propagate, modify
+or convey a specific copy of the covered work, then the patent license
+you grant is automatically extended to all recipients of the covered
+work and works based on it.
+
+ A patent license is "discriminatory" if it does not include within
+the scope of its coverage, prohibits the exercise of, or is
+conditioned on the non-exercise of one or more of the rights that are
+specifically granted under this License. You may not convey a covered
+work if you are a party to an arrangement with a third party that is
+in the business of distributing software, under which you make payment
+to the third party based on the extent of your activity of conveying
+the work, and under which the third party grants, to any of the
+parties who would receive the covered work from you, a discriminatory
+patent license (a) in connection with copies of the covered work
+conveyed by you (or copies made from those copies), or (b) primarily
+for and in connection with specific products or compilations that
+contain the covered work, unless you entered into that arrangement,
+or that patent license was granted, prior to 28 March 2007.
+
+ Nothing in this License shall be construed as excluding or limiting
+any implied license or other defenses to infringement that may
+otherwise be available to you under applicable patent law.
+
+ 12. No Surrender of Others' Freedom.
+
+ If conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot convey a
+covered work so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you may
+not convey it at all. For example, if you agree to terms that obligate you
+to collect a royalty for further conveying from those to whom you convey
+the Program, the only way you could satisfy both those terms and this
+License would be to refrain entirely from conveying the Program.
+
+ 13. Use with the GNU Affero General Public License.
+
+ Notwithstanding any other provision of this License, you have
+permission to link or combine any covered work with a work licensed
+under version 3 of the GNU Affero General Public License into a single
+combined work, and to convey the resulting work. The terms of this
+License will continue to apply to the part which is the covered work,
+but the special requirements of the GNU Affero General Public License,
+section 13, concerning interaction through a network will apply to the
+combination as such.
+
+ 14. Revised Versions of this License.
+
+ The Free Software Foundation may publish revised and/or new versions of
+the GNU General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+ Each version is given a distinguishing version number. If the
+Program specifies that a certain numbered version of the GNU General
+Public License "or any later version" applies to it, you have the
+option of following the terms and conditions either of that numbered
+version or of any later version published by the Free Software
+Foundation. If the Program does not specify a version number of the
+GNU General Public License, you may choose any version ever published
+by the Free Software Foundation.
+
+ If the Program specifies that a proxy can decide which future
+versions of the GNU General Public License can be used, that proxy's
+public statement of acceptance of a version permanently authorizes you
+to choose that version for the Program.
+
+ Later license versions may give you additional or different
+permissions. However, no additional obligations are imposed on any
+author or copyright holder as a result of your choosing to follow a
+later version.
+
+ 15. Disclaimer of Warranty.
+
+ THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
+APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
+HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
+OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
+THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
+IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
+ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+ 16. Limitation of Liability.
+
+ IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
+THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
+GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
+USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
+DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
+PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
+EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
+SUCH DAMAGES.
+
+ 17. Interpretation of Sections 15 and 16.
+
+ If the disclaimer of warranty and limitation of liability provided
+above cannot be given local legal effect according to their terms,
+reviewing courts shall apply local law that most closely approximates
+an absolute waiver of all civil liability in connection with the
+Program, unless a warranty or assumption of liability accompanies a
+copy of the Program in return for a fee.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+state the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+
+ Copyright (C)
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see .
+
+Also add information on how to contact you by electronic and paper mail.
+
+ If the program does terminal interaction, make it output a short
+notice like this when it starts in an interactive mode:
+
+ Copyright (C)
+ This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, your program's commands
+might be different; for a GUI interface, you would use an "about box".
+
+ You should also get your employer (if you work as a programmer) or school,
+if any, to sign a "copyright disclaimer" for the program, if necessary.
+For more information on this, and how to apply and follow the GNU GPL, see
+.
+
+ The GNU General Public License does not permit incorporating your program
+into proprietary programs. If your program is a subroutine library, you
+may consider it more useful to permit linking proprietary applications with
+the library. If this is what you want to do, use the GNU Lesser General
+Public License instead of this License. But first, please read
+.
diff --git a/README.md b/README.md
new file mode 100755
index 0000000..42cf5ac
--- /dev/null
+++ b/README.md
@@ -0,0 +1,244 @@
+# Necroware's GamePort Adapter
+
+
+
+Many people from the retro community still have their beloved joysticks and
+gamepads from the early days. These devices often live their lives somewhere in
+the dark corners of our basements and we don't dare to throw them away, because
+of nostalgic reasons. They remind us so much of our childhoods, where we played
+our Wing Commanders, X-Wings, Descents and many other games. These old joysticks
+were all made to be connected to the game port, usually on a sound card. But
+by the end of 90's and beginning of 2000's game ports vanished from our
+computers and were replaced by USB and our old joysticks disappeared into the
+past. Today not everybody has a full retro PC and many people are using their
+modern computer with DOSBox to play the old games, sometimes with a modern
+USB joystick. But wouldn't it be great to play the old games with the same
+joystick which we used back then? And this is where this adapter comes into
+play. It can be used to connect gameport joysticks to a USB port.
+
+GamePort Adapter Videos:
+* [Part 1: Introduction](https://youtu.be/tSJLgCD8jeM)
+* [Part 2: Updates](https://youtu.be/947DewHwbsE)
+
+## How does it work?
+
+The adapter is built around Arduino Pro Micro, which uses the same ATmega32U4
+microcontroller as Leonardo. This microcontroller has built-in USB HID
+capabilities and can be used to build HID input devices, like joysticks. The
+adapter itself is super simple, the main brainwork was invested into the
+software. Very much simplified, it reads the joystick states and sends the data,
+via USB, to the computer, which thinks that it is communicating with a USB
+joystick.
+
+## What is special about this one?
+
+There are already plenty of gameport to USB adapters for basic analog joysticks
+and, as far as I know, there were some efforts to communicate with Sidewinder
+joysticks by Microsoft as well. But there is no universal adapter, which would
+work with different types of joysticks. This adapter implements multiple drivers
+for various analog and digital joysticks, with an option to add more, in the
+future.
+
+Features overview:
+* Support for generic analog joysticks with 2/4 buttons and 2/4 axes
+* Four switches to select joystick type
+* Autodetection for various digital protocol joysticks
+* Auto-Calibration
+* Very low input lag
+
+## What is the difference between analog and digital joystick?
+
+Many people call button-only joysticks or gamepads digital. This is kind of
+right, because a button is either pressed or not. You can't have an analog
+values in between. However by digital, in this case, we mean something different.
+A gameport contains 15 pins, 8 of which are used for joystick communication. 4
+pins are for buttons and carry digital values in sense of on/off and 4 pins are
+for analog axes, which deliver voltage somewhere between 0V and 5V. Joysticks
+which were made in the early days used this pinout. They could have a
+maximum of 4 buttons and 4 axes and were DOS compatible. Later, in the time of
+Windows 95/98 many joysticks were made to be plugged into a gameport as well,
+but they were not limited to 4 buttons and 4 axes. They had a lot more exciting
+features, like hat switches and throttle controls. But how did this work? Well
+the manufacturers implemented their drivers to communicate with the joystick via
+gameport using a proprietary communication protocol. For example, by using one
+pin of the gameport as clock and another one as data, the possibilities were
+almost limitless. Such joysticks are called digital as well, because they used
+digital protocols to communicate with the PC. And suddenly, many features were
+possible, but the price of these features was the lost compatibility to DOS. You
+couldn't just plug such a joystick into the gameport and expect it to work in
+old DOS games. The plug was the same, but the signaling was completely different.
+
+## Which joysticks does this adapter support?
+
+Currently, the following drivers are implemented. To select the right driver, you
+have to use four switches, as shown in the table. The switches may be changed or
+extended in the future, so please pay attention to the updates.
+
+Joystick Model | Buttons | Axes | Hat | SW1-4 | Protocol | Comments
+-----------------------------|---------|-------|------|-------|------------|------------------------------------
+Generic Analog | 2 | 2 | 0 | 0000 | Analogue |
+Generic Analog | 4 | 2 | 0 | 1000 | Analogue |
+Generic Analog | 4 | 3 | 0 | 0100 | Analogue | 3rd Axis is throttle
+Generic Analog | 4 | 4 | 0 | 1100 | Analogue |
+CH FlightStick | 4 | 4 | 1 | 0010 | Analogue |
+CH F16 Combat Stick | 10 | 3 | 1 | 0110 | Analogue |
+ThrustMaster | 4 | 3 | 1 | 1010 | Analogue | FCS MARK I/II & PFCS
+Sidewinder GamePad | 10 | 2 | 0 | 1110 | Sidewinder |
+Sidewinder 3D Pro | 8 | 4 | 1 | 1110 | Sidewinder |
+Sidewinder 3D Pro Plus | 9 | 4 | 1 | 1110 | Sidewinder | First version of Precision Pro
+Sidewinder Precision Pro | 9 | 4 | 1 | 1110 | Sidewinder |
+Sidewinder FFB Pro | 9 | 4 | 1 | 1110 | Sidewinder | FFB not yet implemented
+Sidewinder FFB Wheel | 8 | 3 | 0 | 1110 | Sidewinder | FFB not yet implemented
+Gravis GamePad Pro | 10 | 2 | 0 | 0001 | GrIP |
+Logitech WingMan Extreme | 6 | 3 | 1 | 1001 | ADI |
+Logitech CyberMan 2 | 8 | 6 | 0 | 1001 | ADI |
+Logitech WingMan Interceptor | 9 | 3 | 3 | 1001 | ADI | 2 hats are mapped as 4 axes
+Logitech ThunderPad Digital | 8 | 2 | 0 | 1001 | ADI | Directional buttons mapped as 2 axes
+Logitech WingMan Gamepad | 11 | 2 | 0 | 1001 | ADI | Directional buttons mapped as 2 axes
+Logitech WingMan Light | 2 | 2 | 0 | 0000 | Analogue |
+
+*Remarks:*
+
+- Please pay attention to how the same switches are used for different families
+of digital devices. This is possible due to fully digital communication. Using
+this method, the adapter implements autodetection as soon as it knows, that it
+is connected to a digital joystick.
+- Currently, only the drivers for the listed Sidewinder devices are implemented,
+since I have no other models at hand. The Precision Pro works natively on USB
+as well, but was still implemented, because we can.
+- Gravis used their GrIP protocol, which is currently implemented only for the
+Gravis GamePad Pro, but without daisy chaining possibility so far.
+- The implementation of the ADI protocol used by Logitech should work with all
+the devices which support that protocol. However only the listed Logitech devices
+were tested so far.
+
+## Which joysticks were tested?
+
+Many joysticks in the wild are using the same digital protocol or are backwards
+compatible to the analog joysticks as they were used back in the days in DOS.
+Following list contains all the devices which were reported by others as working
+so far:
+
+* CH Mach I+ (analog, 2-axes, 2-buttons)
+* Gravis Analog Pro (analog)
+* Gravis GamePad Pro
+* Gravis PC GamePad (analog)
+* InterAct UltraRacer PC (analog)
+* Logitech CyberMan 2
+* Logitech WingMan Extreme Digital
+* Logitech WingMan Interceptor
+* Logitech WingMan Light
+* Logitech ThunderPad Digital
+* Logitech WingMan Gamepad
+* Medion Joypad MD9823 (analog, 4-axes, 4-buttons)
+* QuickShot QS-123E "Warrior 5" (analog)
+* Quickshot QS-146 "Intruder 5" (analog)
+* Quickshot QS-151 "Aviator" (analog)
+* QuickShot QS-201 "Super Warrior" (analog)
+* QuickShot QS-203 "Avenger" (analog)
+* Sidewinder 3D Pro
+* Sidewinder 3D Pro Plus
+* Sidewinder ForceFeedBack Pro
+* Sidewinder ForceFeedBack Wheel
+* Sidewinder GamePad
+* Sidewinder Precision Pro
+
+Sidewinder 3D Pro can be switched between analog and digital mode and in analog
+mode it can emulate the ThrustMaster and CH FlightStick. That's why you see them in
+the table above. Unfortunately I don't possess those joysticks in reality, so it may
+be that the implementation is not quite correct.
+
+## What is auto calibration?
+
+Old analog joysticks have resistors inside, which are specified to be 100 kOhm.
+Unfortunately, these resistors are either worn out, bad quality or were wrong from
+the beginning. Therefore most of the generic analog joysticks had adjustment
+screws to correct the center point of the joystick. Also many games had
+calibration options in their settings to readjust the joystick. With USB and new
+digital solutions the calibration was not required anymore and was completely
+implemented in the joysticks and/or drivers. Many modern games have no option
+to re-calibrate the joystick anymore. If we try to play such newer games with
+an old analog joystick through this adapter, the joystick center point would be
+totally offset. That's why the adapter implements auto calibration internally and
+presents already corrected values to the operation system.
+
+__ATTENTION__: a hard requirement for using the analog joysticks is that during
+plugging into the USB port all axes must be in their middle state, because all
+the subsequent calibration happens based on the initial state.
+
+## Technical insights into implementation
+
+The code is well documented, so if you are interested in the details, feel free
+to take a look into the driver implementation. All the analog joysticks were
+actually a straight forward task, but the Sidewinder digital protocol was kind
+of tough. There are already some implementations of Sidewinder protocol made for
+Arduino. However, they are mostly only for the Sidewinder GamePad and not really
+universally made. In the end I was heavily inspired by the Linux Sidewinder
+driver implementation. The code you can see in this project is a complete rewrite,
+I just took the Linux driver implementation as a reference to understand how it
+works. Also the Sidewinder patent US#5628686A helped a lot, especially with
+switching between digital and analog mode for Sidewinder 3D Pro.
+
+In opposition to the already mentioned Sidewinder for Arduino implementations,
+this one doesn't rely on interrupts. This implementation is from a similar idea
+to what the Linux driver does. It polls the port and makes a lot of things
+simpler due to synchronous process. The biggest problem was that the Sidwinder
+devices send the data incredibly fast, with a clock pulse of only 5us. It was
+not possible to use Arduino's digitalRead(...) function for that. It was too
+slow with about 2.7us per call on an Arduino Pro Micro of 16MHz. It simply
+made it impossible to poll 5us pulses, with such a slow function, not even
+considering doing something with the data in between. So out of that need, my
+own implementation came about, which is up to 50% faster and needs only about
+1.6us per call, on the same hardware. The custom I/O functions made it possible
+to read the data with the speed which a Sidewinder joystick requires. The best
+part is that the code is written in pure C++. It is very simple to read and to
+use. There are no macros, no assembler or any dirty hacks, just a lot of
+optimization.
+
+## Bill of materials (BOM)
+
+The hardware is super simple. To build an adapter you'll need the PCB from this
+project and following parts:
+
+Part | Qty | [LCSC](https://lcsc.com/) # | [Digikey](https://www.digikey.com/) # | [Mouser Electronics](https://www.mouser.com/) # | Comment
+--------|-------|---------|--------------------------|----------------------|------------------------------------------
+CONN1 | 1 | C77835 | 609-5371-ND | 523-L77SDA15SA4CH4F | DB15 female connector
+R1..R4 | 4 | C172965 | 13-MFR-25FTE52-100KCT-ND | 603-MFR-25FTE52-100K | 100 kOhm resistors
+SW1 | 1 | C15781 | 2449-KG04ET-ND | 642-DS04T | DIP-4 switch
+U1 | 1 | C72120 | ED3051-5-ND | 649-DILB24P-223TLF | DIP24 Socket (optional)
+U1 | 1 | N/A | 1568-1060-ND | 474-DEV-12640 | Arduino Pro Micro (ATmega32U4 16MHz, 5V), including two 12 pin header connectors, MicroUSB version (see "Known issues")
+
+## Known issues
+
+* *Some axes on an analog joystick are offset*
+
+ Auto calibration requires all the axes to be in the center position during
+ initialization. Please see the paragraph about auto calibration.
+
+* *Joystick doesn't work*
+
+ Make sure that you are using one of supported joysticks or a joystick which can
+ work in legacy analog mode
+
+* *MicroUSB port on the Arduino is not stable enough*
+
+ Use the USB-C version of the Arduino instead.
+ Or always keep the MicroUSB cable attached to the Arduino MicroUSB version to avoid further wear and apply plug/unplug operations only on the remote side of the cable.
+
+## How to help the project?
+
+The best way is to implement more drivers. Since I have only the joysticks
+mentioned above, I can't contribute more than what is currently included.
+
+## Special thanks
+
+I would like to give some special thanks to *Creopard* from the German
+dosreloaded.de community for providing me the mentioned joysticks. Without that
+donation this project wouldn't be possible. Especially dealing with Sidewinder
+3D Pro was a very exciting task.
+
+## Links
+* [Linux Sidewinder Driver](https://github.com/torvalds/linux/blob/master/drivers/input/joystick/sidewinder.c)
+* [Sidewinder patent](https://patents.google.com/patent/US5628686A/en)
+* [Creopard Retro Site](https://www.creopard.de/)
+
diff --git a/firmware/gameport-adapter/.clang-format b/firmware/gameport-adapter/.clang-format
new file mode 100644
index 0000000..4a20c9c
--- /dev/null
+++ b/firmware/gameport-adapter/.clang-format
@@ -0,0 +1,149 @@
+---
+Language: Cpp
+# BasedOnStyle: LLVM
+AccessModifierOffset: -2
+AlignAfterOpenBracket: Align
+AlignConsecutiveMacros: false
+AlignConsecutiveAssignments: false
+AlignConsecutiveBitFields: false
+AlignConsecutiveDeclarations: false
+AlignEscapedNewlines: Right
+AlignOperands: Align
+AlignTrailingComments: true
+AllowAllArgumentsOnNextLine: true
+AllowAllConstructorInitializersOnNextLine: true
+AllowAllParametersOfDeclarationOnNextLine: true
+AllowShortEnumsOnASingleLine: true
+AllowShortBlocksOnASingleLine: Never
+AllowShortCaseLabelsOnASingleLine: false
+AllowShortFunctionsOnASingleLine: false
+AllowShortLambdasOnASingleLine: All
+AllowShortIfStatementsOnASingleLine: Never
+AllowShortLoopsOnASingleLine: false
+AlwaysBreakAfterDefinitionReturnType: None
+AlwaysBreakAfterReturnType: None
+AlwaysBreakBeforeMultilineStrings: false
+AlwaysBreakTemplateDeclarations: true
+BinPackArguments: true
+BinPackParameters: true
+BraceWrapping:
+ AfterCaseLabel: false
+ AfterClass: false
+ AfterControlStatement: Never
+ AfterEnum: false
+ AfterFunction: false
+ AfterNamespace: false
+ AfterObjCDeclaration: false
+ AfterStruct: false
+ AfterUnion: false
+ AfterExternBlock: false
+ BeforeCatch: false
+ BeforeElse: false
+ BeforeLambdaBody: false
+ BeforeWhile: false
+ IndentBraces: false
+ SplitEmptyFunction: true
+ SplitEmptyRecord: true
+ SplitEmptyNamespace: true
+BreakBeforeBinaryOperators: None
+BreakBeforeBraces: Attach
+BreakBeforeInheritanceComma: false
+BreakInheritanceList: BeforeColon
+BreakBeforeTernaryOperators: true
+BreakConstructorInitializersBeforeComma: true
+BreakConstructorInitializers: BeforeColon
+BreakAfterJavaFieldAnnotations: false
+BreakStringLiterals: true
+ColumnLimit: 120
+CommentPragmas: '^ IWYU pragma:'
+CompactNamespaces: false
+ConstructorInitializerAllOnOneLineOrOnePerLine: false
+ConstructorInitializerIndentWidth: 0
+ContinuationIndentWidth: 4
+Cpp11BracedListStyle: true
+DeriveLineEnding: true
+DerivePointerAlignment: false
+DisableFormat: false
+ExperimentalAutoDetectBinPacking: false
+FixNamespaceComments: true
+ForEachMacros:
+ - foreach
+ - Q_FOREACH
+ - BOOST_FOREACH
+IncludeBlocks: Preserve
+IncludeCategories:
+ - Regex: '^"(llvm|llvm-c|clang|clang-c)/'
+ Priority: 2
+ SortPriority: 0
+ - Regex: '^(<|"(gtest|gmock|isl|json)/)'
+ Priority: 3
+ SortPriority: 0
+ - Regex: '.*'
+ Priority: 1
+ SortPriority: 0
+IncludeIsMainRegex: '(Test)?$'
+IncludeIsMainSourceRegex: ''
+IndentCaseLabels: true
+IndentCaseBlocks: false
+IndentGotoLabels: true
+IndentPPDirectives: None
+IndentExternBlock: AfterExternBlock
+IndentWidth: 2
+IndentWrappedFunctionNames: false
+InsertTrailingCommas: None
+JavaScriptQuotes: Leave
+JavaScriptWrapImports: true
+KeepEmptyLinesAtTheStartOfBlocks: true
+MacroBlockBegin: ''
+MacroBlockEnd: ''
+MaxEmptyLinesToKeep: 1
+NamespaceIndentation: None
+ObjCBinPackProtocolList: Auto
+ObjCBlockIndentWidth: 2
+ObjCBreakBeforeNestedBlockParam: true
+ObjCSpaceAfterProperty: false
+ObjCSpaceBeforeProtocolList: true
+PenaltyBreakAssignment: 2
+PenaltyBreakBeforeFirstCallParameter: 19
+PenaltyBreakComment: 300
+PenaltyBreakFirstLessLess: 120
+PenaltyBreakString: 1000
+PenaltyBreakTemplateDeclaration: 10
+PenaltyExcessCharacter: 1000000
+PenaltyReturnTypeOnItsOwnLine: 60
+PointerAlignment: Right
+ReflowComments: true
+SortIncludes: true
+SortUsingDeclarations: true
+SpaceAfterCStyleCast: false
+SpaceAfterLogicalNot: false
+SpaceAfterTemplateKeyword: true
+SpaceBeforeAssignmentOperators: true
+SpaceBeforeCpp11BracedList: false
+SpaceBeforeCtorInitializerColon: true
+SpaceBeforeInheritanceColon: true
+SpaceBeforeParens: ControlStatements
+SpaceBeforeRangeBasedForLoopColon: true
+SpaceInEmptyBlock: false
+SpaceInEmptyParentheses: false
+SpacesBeforeTrailingComments: 1
+SpacesInAngles: false
+SpacesInConditionalStatement: false
+SpacesInContainerLiterals: true
+SpacesInCStyleCastParentheses: false
+SpacesInParentheses: false
+SpacesInSquareBrackets: false
+SpaceBeforeSquareBrackets: false
+Standard: Latest
+StatementMacros:
+ - Q_UNUSED
+ - QT_REQUIRE_VERSION
+TabWidth: 8
+UseCRLF: false
+UseTab: Never
+WhitespaceSensitiveMacros:
+ - STRINGIZE
+ - PP_STRINGIZE
+ - BOOST_PP_STRINGIZE
+...
+
diff --git a/firmware/gameport-adapter/AnalogAxis.h b/firmware/gameport-adapter/AnalogAxis.h
new file mode 100644
index 0000000..2840237
--- /dev/null
+++ b/firmware/gameport-adapter/AnalogAxis.h
@@ -0,0 +1,65 @@
+// This file is part of Necroware's GamePort adapter firmware.
+// Copyright (C) 2021 Necroware
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+
+#pragma once
+
+#include
+
+/// Class to read analog axis.
+///
+/// Usually PC joystick axes are specified to have 100 Ohm resistance, but
+/// many analog joysticks have old, bad, or just wrong resistors. This ends
+/// up in incorrect positions and is especially bad for games, which don't
+/// have calibration features. This class takes care of this issue and
+/// applies automatic calibration on every read.
+template
+class AnalogAxis {
+public:
+ /// Constructor.
+ ///
+ /// The initial state of the joystick is considered as middle
+ /// which is used for autocalibration.
+ AnalogAxis() {
+ pinMode(ID, INPUT);
+ m_mid = analogRead(ID);
+ m_min = m_mid - 100;
+ m_max = m_mid + 100;
+ }
+
+ /// Gets the axis state.
+ ///
+ /// This function automatically recalculates the outer limits and
+ /// readjusts the position of the joystick.
+ /// @returns a value between 0 and 1023
+ uint16_t get() {
+ const auto value = analogRead(ID);
+ if (value < m_min) {
+ m_min = value;
+ } else if (value > m_max) {
+ m_max = value;
+ }
+
+ if (value < m_mid) {
+ return map(value, m_min, m_mid, 1023, 512);
+ }
+ return map(value, m_mid, m_max, 511, 0);
+ }
+
+private:
+ int m_mid;
+ int m_min;
+ int m_max;
+};
diff --git a/firmware/gameport-adapter/AnalogJoystick.h b/firmware/gameport-adapter/AnalogJoystick.h
new file mode 100644
index 0000000..1ef6e3a
--- /dev/null
+++ b/firmware/gameport-adapter/AnalogJoystick.h
@@ -0,0 +1,61 @@
+// This file is part of Necroware's GamePort adapter firmware.
+// Copyright (C) 2021 Necroware
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+
+#pragma once
+
+#include "AnalogAxis.h"
+#include "DigitalPin.h"
+#include "GamePort.h"
+
+/// A common class for all analog joysticks.
+class AnalogJoystick {
+public:
+ /// Gets axis value.
+ ///
+ /// @param[in] id is the axes ID
+ /// @returns a value between 0 and 255
+ uint16_t getAxis(int id) {
+ switch (id) {
+ case 0:
+ return m_axis1.get();
+ case 1:
+ return m_axis2.get();
+ case 2:
+ return m_axis3.get();
+ case 3:
+ return m_axis4.get();
+ default:
+ return 0u;
+ }
+ }
+
+ /// Gets the buttons state as one byte.
+ ///
+ /// @returns a byte every bit represents a button
+ byte getButtons() {
+ return m_button1.isLow() | m_button2.isLow() << 1 | m_button3.isLow() << 2 | m_button4.isLow() << 3;
+ }
+
+private:
+ DigitalInput::pin> m_button1;
+ DigitalInput::pin> m_button2;
+ DigitalInput::pin> m_button3;
+ DigitalInput::pin> m_button4;
+ AnalogAxis::pin> m_axis1;
+ AnalogAxis::pin> m_axis2;
+ AnalogAxis::pin> m_axis3;
+ AnalogAxis::pin> m_axis4;
+};
diff --git a/firmware/gameport-adapter/Buffer.h b/firmware/gameport-adapter/Buffer.h
new file mode 100644
index 0000000..49deacc
--- /dev/null
+++ b/firmware/gameport-adapter/Buffer.h
@@ -0,0 +1,104 @@
+// This file is part of Necroware's GamePort adapter firmware.
+// Copyright (C) 2021 Necroware
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+
+#pragma once
+
+#include
+
+template
+struct Buffer {
+ static const uint8_t MAX_SIZE{Size};
+ uint8_t data[MAX_SIZE]{};
+ uint8_t size{};
+};
+
+template
+class BufferFillerImpl {
+public:
+ using BufferType = Buffer;
+
+ explicit BufferFillerImpl(BufferType& buffer)
+ : m_buffer(buffer) {}
+
+ ~BufferFillerImpl() = default;
+ BufferFillerImpl(const BufferFillerImpl&) = delete;
+ BufferFillerImpl(BufferFillerImpl&&) = default;
+ BufferFillerImpl& operator=(const BufferFillerImpl&) = delete;
+ BufferFillerImpl& operator=(BufferFillerImpl&&) = default;
+
+ template
+ BufferFillerImpl& push(const T& bits) {
+ return push(uint32_t(bits), sizeof(bits) * BITS_PER_BYTE);
+ }
+
+ BufferFillerImpl& push(uint32_t bits, size_t count) {
+ while(count) {
+ const auto pushed = fillup(bits, count);
+ bits >>= pushed;
+ count -= pushed;
+ }
+ return *this;
+ }
+
+ BufferFillerImpl& align() {
+ if (m_bitsUsed) {
+ m_buffer.size++;
+ m_bitsUsed = 0u;
+ }
+ return *this;
+ }
+
+private:
+ static constexpr auto BITS_PER_BYTE{8u};
+
+ BufferType& m_buffer;
+ size_t m_bitsUsed{};
+
+ size_t fillup(byte bits, size_t count) {
+
+ const auto freeBits = BITS_PER_BYTE - m_bitsUsed;
+ if (freeBits == 0) {
+ return 0;
+ }
+
+ // If the total count is above the free bits available in the current
+ // byte, then push just a chunk to fill up the current byte
+ if (freeBits < count) {
+ return fillup(bits, freeBits);
+ }
+
+ if (m_bitsUsed == 0u) {
+ m_buffer.data[m_buffer.size] = 0u;
+ }
+
+ // Obviously the total count is less, than the amount of free bits
+ // available in the current byte, so the following block will simply
+ // add the bits to the current byte and return
+ const auto mask = uint32_t(1u << count) - 1u;
+ m_buffer.data[m_buffer.size] |= byte(bits & mask) << m_bitsUsed;
+ m_bitsUsed += count;
+ if (m_bitsUsed == BITS_PER_BYTE) {
+ m_buffer.size++;
+ m_bitsUsed = 0u;
+ }
+ return count;
+ }
+};
+
+template
+BufferFillerImpl BufferFiller(Buffer& buffer) {
+ return BufferFillerImpl(buffer);
+}
+
diff --git a/firmware/gameport-adapter/CHF16CombatStick.h b/firmware/gameport-adapter/CHF16CombatStick.h
new file mode 100644
index 0000000..9c44d45
--- /dev/null
+++ b/firmware/gameport-adapter/CHF16CombatStick.h
@@ -0,0 +1,74 @@
+// This file is part of Necroware's GamePort adapter firmware.
+// Copyright (C) 2021 Necroware
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+
+#pragma once
+
+#include "AnalogJoystick.h"
+#include "Joystick.h"
+
+class CHF16CombatStick : public Joystick {
+public:
+ const Description &getDescription() const override {
+ // CH F16 Combat Stick from 1995
+ static const Description description{"CH F16 Combat Stick", 3, 10, 1};
+ return description;
+ }
+
+ const State &getState() const override {
+ return m_state;
+ }
+
+ bool init() override {
+ return true;
+ }
+
+
+ bool update() override {
+ const auto decodeHat = [](byte code) -> byte {
+ // Same as CH Flight Stick Pro. But the F16 stick has 4 positions on the hat only.
+ // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
+ static constexpr byte table[16] = {0, 0, 0, 7, 0, 0, 0, 5, 0, 0, 0, 3, 0, 0, 0, 1};
+ return (code < sizeof(table)) ? table[code] : 0u;
+ };
+
+ const auto decodeButtons = [](byte code) -> uint16_t {
+ // Map to 10 buttons: 5 real ones, one hat with 4 positions. Thus we need uint16 instead of byte
+ // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
+ static constexpr uint16_t table[16] = {0, 1, 8, 0, 4, 32, 256, 0, 16, 2, 128, 0, 512, 0, 64, 0};
+ static constexpr auto tableSize = sizeof(table) / sizeof(table[0]);
+ return (code < tableSize) ? table[code] : 0u;
+ };
+
+ // The 4th axis (index 2) is ignored, because there is a big jitter
+ // and it reacts on movement of the other axes too. So you can not
+ // assign the axes to a function in your game.
+ m_state.axes[0] = m_joystick.getAxis(0);
+ m_state.axes[1] = m_joystick.getAxis(1);
+ m_state.axes[2] = m_joystick.getAxis(3); // Throttle
+
+ const auto code = m_joystick.getButtons();
+
+ m_state.hat = decodeHat(code);
+ m_state.buttons = decodeButtons(code);
+
+ log("Code %d : %d , A2 %d", code, m_state.buttons, m_state.axes[2] );
+ return true;
+ }
+
+private:
+ AnalogJoystick m_joystick;
+ State m_state;
+};
diff --git a/firmware/gameport-adapter/CHFlightstickPro.h b/firmware/gameport-adapter/CHFlightstickPro.h
new file mode 100644
index 0000000..4d2909e
--- /dev/null
+++ b/firmware/gameport-adapter/CHFlightstickPro.h
@@ -0,0 +1,68 @@
+// This file is part of Necroware's GamePort adapter firmware.
+// Copyright (C) 2021 Necroware
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+
+#pragma once
+
+#include "AnalogJoystick.h"
+#include "Joystick.h"
+
+class CHFlightstickPro : public Joystick {
+public:
+ const Description &getDescription() const override {
+ static const Description description{"CH FlightStick Pro", 4, 4, 1};
+ return description;
+ }
+
+ const State &getState() const override {
+ return m_state;
+ }
+
+ bool init() override {
+ return true;
+ }
+
+ bool update() override {
+
+ // Unfortunately I had no real CHFlighstickPro joystick to test, but
+ // Sidewinder 3D Pro has an emulation for CHFlighstickPro. So, this
+ // implementation was made using that emulation and could be wrong.
+ // CHFlighstickPro seems to be a very interesting joystick. It doesn't
+ // allow the user to press multiple buttons simultaneously and uses
+ // combined buttons invocations as hat switch codes instead. So, every
+ // time a multiple buttons seem to be pressed, means that the user is
+ // actually using the hat switch.
+
+ const auto decode = [](byte code) -> byte {
+ static const byte table[16] = {0, 0, 0, 7, 0, 6, 0, 5, 0, 4, 0, 3, 0, 2, 0, 1};
+ return (code < sizeof(table)) ? table[code] : 0u;
+ };
+
+ for (auto i = 0u; i < 4; i++) {
+ m_state.axes[i] = m_joystick.getAxis(i);
+ }
+
+ const auto code = m_joystick.getButtons();
+ m_state.hat = decode(code);
+ m_state.buttons = m_state.hat ? 0u : code;
+
+ return true;
+ }
+
+private:
+ AnalogJoystick m_joystick;
+ State m_state;
+};
+
diff --git a/firmware/gameport-adapter/DigitalPin.h b/firmware/gameport-adapter/DigitalPin.h
new file mode 100644
index 0000000..02e8411
--- /dev/null
+++ b/firmware/gameport-adapter/DigitalPin.h
@@ -0,0 +1,162 @@
+// This file is part of Necroware's GamePort adapter firmware.
+// Copyright (C) 2021 Necroware
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+
+#pragma once
+
+#include
+
+/// Digital signal edge types.
+enum class Edge { any, falling, rising };
+
+/// Digital pin base constants.
+///
+/// This implementation was born out of the need for faster digital I/O. The
+/// original digitalRead(...) function of Arduino suite needs about 2.7us per
+/// call on a 16MHz MCU. Which makes it impossible to poll 5us pulses, not
+/// talking about doing with the data something in between. This was a hard
+/// requirement for this project, so following solution is up to 50% faster
+/// and needs about 1.6us per call on the same hardware.
+
+template
+struct DigitalPin {
+ using RegType = uint8_t;
+ const RegType mask;
+ const RegType port;
+ DigitalPin()
+ : mask(digitalPinToBitMask(Id))
+ , port(digitalPinToPort(Id)) {
+ }
+};
+
+/// Digital Output class.
+template
+class DigitalOutput {
+public:
+ /// Constructor.
+ DigitalOutput()
+ : m_output(*portOutputRegister(m_pin.port)) {
+ *portModeRegister(m_pin.port) |= m_pin.mask;
+ }
+
+ /// Sets output high.
+ void setHigh() const {
+ m_output |= m_pin.mask;
+ }
+
+ /// Sets output low.
+ void setLow() const {
+ m_output &= ~m_pin.mask;
+ }
+
+ /// Sets output to the given value.
+ void set(bool value) const {
+ value ? setHigh() : setLow();
+ }
+
+ /// Toggles the output.
+ void toggle() const {
+ m_output ^= m_pin.mask;
+ }
+
+ /// Triggers a pulse of given duration.
+ /// @param[in] duration is the duration in microseconds
+ void pulse(uint16_t duration = 0) const {
+ toggle();
+ if (duration) {
+ delayMicroseconds(duration);
+ }
+ toggle();
+ }
+
+private:
+ const DigitalPin m_pin;
+ volatile typename DigitalPin::RegType &m_output;
+};
+
+/// Digital input class.
+template
+class DigitalInput {
+public:
+ /// Constructor.
+ DigitalInput()
+ : m_input(*portInputRegister(m_pin.port)) {
+ *portModeRegister(m_pin.port) &= ~m_pin.mask;
+ if (Pullup) {
+ *portOutputRegister(m_pin.port) |= m_pin.mask;
+ }
+ }
+
+ operator bool() const {
+ return isHigh();
+ }
+
+ /// Read raw bit data
+ uint8_t read() const {
+ return m_input & m_pin.mask;
+ }
+
+ /// Checks if the input is high.
+ bool isHigh() const {
+ return read();
+ }
+
+ /// Checks if the input is low
+ bool isLow() const {
+ return !read();
+ }
+
+ /// Waits for an edge with given timeout.
+ /// @param[in] edge is the type of edge to wait for
+ /// @param[in] timeount is the timeout in microseconds
+ uint16_t wait(Edge edge, uint16_t timeout) const {
+ if (edge == Edge::falling) {
+ return waitImpl(timeout, [](uint8_t a, uint8_t) {return a;});
+ }
+ if (edge == Edge::rising) {
+ return waitImpl(timeout, [](uint8_t, uint8_t b) {return b;});
+ }
+ // edge == Edge::rising
+ return waitImpl(timeout, [](uint8_t a, uint8_t b) {return a|b;});
+ }
+
+ /// Waits for a state with given timeout.
+ /// @param[in] state is the state to wait for
+ /// @param[in] timeount is the timeout in microseconds
+ uint16_t wait(bool state, uint16_t timeout) const {
+ for (; state != isHigh() && timeout; timeout--)
+ ;
+ return timeout;
+ }
+
+private:
+ DigitalPin m_pin;
+ volatile typename DigitalPin::RegType &m_input;
+
+ template
+ uint16_t waitImpl(uint16_t timeout, T compare) const {
+ auto last = read();
+ for (; timeout; timeout--) {
+ const auto next = read();
+ if (last != next) {
+ if (compare(last, next)) {
+ return timeout;
+ }
+ last = next;
+ }
+ }
+ return 0u;
+ }
+};
diff --git a/firmware/gameport-adapter/GamePort.h b/firmware/gameport-adapter/GamePort.h
new file mode 100644
index 0000000..c2dffeb
--- /dev/null
+++ b/firmware/gameport-adapter/GamePort.h
@@ -0,0 +1,89 @@
+// This file is part of Necroware's GamePort adapter firmware.
+// Copyright (C) 2021 Necroware
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+
+#pragma once
+
+// Simple GamePort pins to Arduino pins mapper.
+// GamePort pins <1>, <8>, <9> are already connected to "VCC" via the PCB
+template
+struct GamePort {
+ enum { pin = -1 };
+};
+
+// Analog: Button #1
+// Digital (e.g. SW3D): Clock
+template <>
+struct GamePort<2> {
+ enum { pin = 10 };
+};
+
+// Analog: Joystick1 X-Axis
+// Digital (e.g. SW3D): Trigger
+template <>
+struct GamePort<3> {
+ enum { pin = A0 };
+};
+
+// Analog: Joystick1 Y-Axis
+template <>
+struct GamePort<6> {
+ enum { pin = A7 };
+};
+
+// Analog: Button #2
+// Digital (e.g. SW3D): Data 0
+template <>
+struct GamePort<7> {
+ enum { pin = 8 };
+};
+
+// Analog: Button #3
+// Digital (e.g. SW3D): Data 1
+template <>
+struct GamePort<10> {
+ enum { pin = 16 };
+};
+
+// Analog: Joystick2 X-Axis
+template <>
+struct GamePort<11> {
+ enum { pin = A1 };
+};
+
+// Analog: Midi OUT
+template <>
+struct GamePort<12> {
+ enum { pin = 5 };
+};
+
+// Analog: Joystick2 Y-Axis
+template <>
+struct GamePort<13> {
+ enum { pin = A6 };
+};
+
+// Analog: Button #4
+// Digital (e.g. SW3D): Data 2
+template <>
+struct GamePort<14> {
+ enum { pin = 7 };
+};
+
+// Analog: Midi IN
+template <>
+struct GamePort<15> {
+ enum { pin = 9 };
+};
diff --git a/firmware/gameport-adapter/GenericJoystick.h b/firmware/gameport-adapter/GenericJoystick.h
new file mode 100644
index 0000000..1f2f4c2
--- /dev/null
+++ b/firmware/gameport-adapter/GenericJoystick.h
@@ -0,0 +1,54 @@
+// This file is part of Necroware's GamePort adapter firmware.
+// Copyright (C) 2021 Necroware
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+
+#pragma once
+
+#include "Joystick.h"
+#include "AnalogJoystick.h"
+
+template
+class GenericJoystick : public Joystick {
+public:
+
+ static_assert(Axes > 0 && Axes <= 4);
+
+ bool init() override {
+ return true;
+ }
+
+ bool update() override {
+ for (auto i = 0u; i < Axes; i++) {
+ m_state.axes[i] = m_joystick.getAxis(i);
+ }
+ m_state.buttons = m_joystick.getButtons();
+ return true;
+ }
+
+ const State& getState() const override {
+ return m_state;
+ }
+
+ const Description& getDescription() const override {
+ static const Description description {
+ "Generic Joystick", Axes, Buttons, 0
+ };
+ return description;
+ }
+
+private:
+ AnalogJoystick m_joystick;
+ State m_state;
+};
diff --git a/firmware/gameport-adapter/GrIP.h b/firmware/gameport-adapter/GrIP.h
new file mode 100644
index 0000000..7e5a51a
--- /dev/null
+++ b/firmware/gameport-adapter/GrIP.h
@@ -0,0 +1,120 @@
+// This file is part of Necroware's GamePort adapter firmware.
+// Copyright (C) 2021 Necroware
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+
+#pragma once
+
+#include "DigitalPin.h"
+#include "Joystick.h"
+
+/// Class to communicate with Gravis joysticks using GrIP.
+/// @remark This is a green field implementation, but it was heavily
+/// inspired by Linux Gravis/Kensington GrIP driver
+/// implementation. See
+class GrIP : public Joystick {
+ /// https://github.com/torvalds/linux/blob/master/drivers/input/joystick/grip.c
+public:
+ /// Resets the joystick and tries to detect the model.
+ bool init() override {
+ while (!readPacket())
+ ;
+ return true;
+ }
+
+ /// Reads the joystick state.
+ /// @returns the state of axis, buttons etc.
+ /// @remark if reading the state fails, the last known state is
+ /// returned and the joystick reset is executed.
+ bool update() override {
+
+ const auto packet = readPacket();
+ if (packet == 0) {
+ return false;
+ }
+
+ const auto getBit = [&](uint8_t pos) { return uint8_t(packet >> pos) & 1; };
+
+ m_state.axes[0] = map(1 + getBit(15) - getBit(16), 0, 2, 0, 1023);
+ m_state.axes[1] = map(1 + getBit(13) - getBit(12), 0, 2, 0, 1023);
+
+ m_state.buttons = getBit(8);
+ m_state.buttons |= getBit(3) << 1;
+ m_state.buttons |= getBit(7) << 2;
+ m_state.buttons |= getBit(6) << 3;
+ m_state.buttons |= getBit(10) << 4;
+ m_state.buttons |= getBit(11) << 5;
+ m_state.buttons |= getBit(5) << 6;
+ m_state.buttons |= getBit(2) << 7;
+ m_state.buttons |= getBit(0) << 8;
+ m_state.buttons |= getBit(1) << 9;
+
+ return true;
+ }
+
+ const State &getState() const override {
+ return m_state;
+ }
+
+ const Description &getDescription() const override {
+ static Description desc{"Gravis GamePad Pro", 2, 10, 0};
+ return desc;
+ }
+
+private:
+ /// Supported Gravis model types.
+ ///
+ /// @remark currently only GamePad Pro is supported and
+ // this enum is not used yet
+ enum class Model {
+
+ /// Unknown model
+ GRIP_UNKNOWN,
+
+ /// GamePad Pro
+ GRIP_GAMEPAD_PRO,
+ };
+
+ DigitalInput::pin, true> m_clock;
+ DigitalInput::pin, true> m_data;
+ State m_state;
+
+ /// Read bits packet from the joystick.
+ uint32_t readPacket() const {
+
+ // Gravis GamePad Pro sends 24 bits long packages of data all the
+ // time. Every package starts with a binary tag sequence 011111.
+
+ static const auto length = 24u;
+ uint32_t result = 0u;
+
+ // read a package of 24 bits
+ for (auto i = 0u; i < length; i++) {
+ if (!m_clock.wait(Edge::falling, 100)) {
+ return 0u;
+ }
+ result |= uint32_t(m_data.isHigh()) << i;
+ }
+
+ // alighn the bits to have the binary tag in front. This code
+ // was taken almost unchanged from the linux kernel.
+ for (auto i = 0u; i < length; i++) {
+ result = (result >> 1) | (result & 1) << (length - 1u);
+ if ((result & 0xfe4210) == 0x7c0000) {
+ return result;
+ }
+ }
+ return 0u;
+ }
+};
diff --git a/firmware/gameport-adapter/HidDevice.h b/firmware/gameport-adapter/HidDevice.h
new file mode 100644
index 0000000..d98eb66
--- /dev/null
+++ b/firmware/gameport-adapter/HidDevice.h
@@ -0,0 +1,165 @@
+// This file is part of Necroware's GamePort adapter firmware.
+// Copyright (C) 2021 Necroware
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+
+#pragma once
+
+#include
+
+class HidDevice : public PluggableUSBModule {
+public:
+
+ explicit HidDevice()
+ : PluggableUSBModule(1, 1, epType) {
+ PluggableUSB().plug(this);
+ }
+
+ void AppendDescriptor(HIDSubDescriptor *node) {
+
+ if (rootNode == nullptr) {
+ rootNode = node;
+ } else {
+ auto current = rootNode;
+ while (current->next) {
+ current = current->next;
+ }
+ current->next = node;
+ }
+ descriptorSize += node->length;
+ }
+
+ int SendReport(uint8_t id, const void *data, int len) const {
+
+ const auto ret = USB_Send(pluggedEndpoint, &id, 1);
+ if (ret < 0) {
+ return ret;
+ }
+
+ const auto ret2 = USB_Send(pluggedEndpoint | TRANSFER_RELEASE, data, len);
+ if (ret2 < 0) {
+ return ret2;
+ }
+
+ return ret + ret2;
+ }
+
+protected:
+
+ int getInterface(uint8_t *interfaceCount) override {
+ *interfaceCount += 1; // uses 1
+ HIDDescriptor hidInterface {
+ D_INTERFACE(pluggedInterface, 1, USB_DEVICE_CLASS_HUMAN_INTERFACE, HID_SUBCLASS_NONE, HID_PROTOCOL_NONE),
+ D_HIDREPORT(descriptorSize),
+ D_ENDPOINT(USB_ENDPOINT_IN(pluggedEndpoint), USB_ENDPOINT_TYPE_INTERRUPT, USB_EP_SIZE, 0x01)
+ };
+ return USB_SendControl(0, &hidInterface, sizeof(hidInterface));
+ }
+
+ int getDescriptor(USBSetup &setup) override {
+
+ // Check if this is a HID Class Descriptor request
+ if (setup.bmRequestType != REQUEST_DEVICETOHOST_STANDARD_INTERFACE) {
+ return 0;
+ }
+ if (setup.wValueH != HID_REPORT_DESCRIPTOR_TYPE) {
+ return 0;
+ }
+
+ // In a HID Class Descriptor wIndex contains the interface number
+ if (setup.wIndex != pluggedInterface) {
+ return 0;
+ }
+
+ int total = 0;
+ for (auto node = rootNode; node; node = node->next) {
+ const auto res = USB_SendControl(0, node->data, node->length);
+ if (res < 0) {
+ return -1;
+ }
+ total += res;
+ }
+
+ // Reset the protocol on reenumeration. Normally the host should not
+ // assume the state of the protocol due to the USB specs, but Windows
+ // and Linux just assumes its in report mode.
+ protocol = HID_REPORT_PROTOCOL;
+
+ return total;
+ }
+
+ uint8_t getShortName(char *name) override {
+ name[0] = 'H';
+ name[1] = 'I';
+ name[2] = 'D';
+ name[3] = 'A' + (descriptorSize & 0x0F);
+ name[4] = 'A' + ((descriptorSize >> 4) & 0x0F);
+ return 5;
+ }
+
+ bool setup(USBSetup &setup) override {
+
+ if (pluggedInterface != setup.wIndex) {
+ return false;
+ }
+
+ const auto request = setup.bRequest;
+ const auto requestType = setup.bmRequestType;
+
+ if (requestType == REQUEST_DEVICETOHOST_CLASS_INTERFACE) {
+ if (request == HID_GET_REPORT) {
+ // TODO: HID_GetReport();
+ return true;
+ }
+ if (request == HID_GET_PROTOCOL) {
+ // TODO: Send8(protocol);
+ return true;
+ }
+ if (request == HID_GET_IDLE) {
+ // TODO: Send8(idle);
+ }
+ }
+
+ if (requestType == REQUEST_HOSTTODEVICE_CLASS_INTERFACE) {
+ if (request == HID_SET_PROTOCOL) {
+ // The USB Host tells us if we are in boot or report mode.
+ // This only works with a real boot compatible device.
+ protocol = setup.wValueL;
+ return true;
+ }
+ if (request == HID_SET_IDLE) {
+ idle = setup.wValueL;
+ return true;
+ }
+ if (request == HID_SET_REPORT) {
+ // uint8_t reportID = setup.wValueL;
+ // uint16_t length = setup.wLength;
+ // uint8_t data[length];
+ // Make sure to not read more data than USB_EP_SIZE.
+ // You can read multiple times through a loop.
+ // The first byte (may!) contain the reportID on a multreport.
+ // USB_RecvControl(data, length);
+ }
+ }
+
+ return false;
+ }
+
+private:
+ uint8_t epType[1]{EP_TYPE_INTERRUPT_IN};
+ HIDSubDescriptor *rootNode{nullptr};
+ uint16_t descriptorSize{0};
+ uint8_t protocol{HID_REPORT_PROTOCOL};
+ uint8_t idle{1};
+};
+
diff --git a/firmware/gameport-adapter/HidJoystick.h b/firmware/gameport-adapter/HidJoystick.h
new file mode 100644
index 0000000..5445ed7
--- /dev/null
+++ b/firmware/gameport-adapter/HidJoystick.h
@@ -0,0 +1,165 @@
+// This file is part of Necroware's GamePort adapter firmware.
+// Copyright (C) 2021 Necroware
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+
+#pragma once
+
+#include "Buffer.h"
+#include "HidDevice.h"
+#include "Joystick.h"
+#include "Utilities.h"
+#include
+
+class HidJoystick {
+public:
+ bool init(Joystick *joystick) {
+ if (!joystick || !joystick->init()) {
+ return false;
+ }
+
+ m_joystick = joystick;
+ m_hidDescription = createDescription(*m_joystick);
+ m_subDescriptor = new HIDSubDescriptor{m_hidDescription.data, m_hidDescription.size};
+ m_hidDevice.AppendDescriptor(m_subDescriptor);
+
+ log("Detected device: %s", joystick->getDescription().name);
+ return true;
+ }
+
+ bool update() {
+ if (!m_joystick || !m_joystick->update()) {
+ return false;
+ }
+
+ const auto packet = createPacket(*m_joystick);
+ m_hidDevice.SendReport(DEVICE_ID, packet.data, packet.size);
+ return true;
+ }
+
+private:
+ using BufferType = Buffer<255>;
+ static const uint8_t DEVICE_ID{3};
+
+ static BufferType createDescription(const Joystick &joystick) {
+
+ enum class ID : uint8_t {
+ application = 0x01,
+ button = 0x09,
+ collection = 0xa1,
+ end_collection = 0xc0,
+ generic_desktop = 0x01,
+ hat_switch = 0x39,
+ input = 0x81,
+ input_const = 0x03,
+ input_data = 0x02,
+ joystick = 0x04,
+ logical_max = 0x26,
+ logical_min = 0x15,
+ report_count = 0x95,
+ report_id = 0x85,
+ report_size = 0x75,
+ simulation_controls = 0x02,
+ throttle = 0xbb,
+ usage = 0x09,
+ usage_max = 0x29,
+ usage_min = 0x19,
+ usage_page = 0x05,
+ };
+
+ const auto &desc = joystick.getDescription();
+ BufferType buffer;
+ auto filler = BufferFiller(buffer);
+
+ auto pushData = [&filler](uint8_t size, uint8_t count) {
+ filler.push(ID::report_size).push(size);
+ filler.push(ID::report_count).push(count);
+ filler.push(ID::input).push(ID::input_data);
+ const auto padding = (size * count) % 8u;
+ if (padding) {
+ filler.push(ID::report_size).push(8u - padding);
+ filler.push(ID::report_count).push(1);
+ filler.push(ID::input).push(ID::input_const);
+ }
+ };
+
+ filler.push(ID::usage_page).push(ID::generic_desktop);
+ filler.push(ID::usage).push(ID::joystick);
+ filler.push(ID::collection).push(ID::application);
+ filler.push(ID::report_id).push(DEVICE_ID);
+
+ // Push axes
+ if (desc.numAxes > 0) {
+ filler.push(ID::usage_page).push(ID::generic_desktop);
+ for (auto i = 0u; i < desc.numAxes; i++) {
+ static constexpr uint8_t x_axis = 0x30;
+ filler.push(ID::usage).push(x_axis + i);
+ }
+ filler.push(ID::logical_min).push(0);
+ filler.push(ID::logical_max).push(1023);
+ pushData(10, desc.numAxes);
+ }
+
+ // Push hat
+ if (desc.hasHat) {
+ filler.push(ID::usage).push(ID::hat_switch);
+ filler.push(ID::logical_min).push(1);
+ filler.push(ID::logical_max).push(8);
+ pushData(4, 1);
+ }
+
+ // Push buttons
+ if (desc.numButtons > 0) {
+ filler.push(ID::usage_page).push(ID::button);
+ filler.push(ID::usage_min).push(1);
+ filler.push(ID::usage_max).push(desc.numButtons);
+ filler.push(ID::logical_min).push(0);
+ filler.push(ID::logical_max).push(1);
+ pushData(1, desc.numButtons);
+ }
+
+ filler.push(ID::end_collection);
+ return buffer;
+ }
+
+ static BufferType createPacket(const Joystick &joystick) {
+
+ const auto &state = joystick.getState();
+ const auto &description = joystick.getDescription();
+ BufferType buffer;
+ auto filler = BufferFiller(buffer);
+
+ for (auto i = 0u; i < description.numAxes; i++) {
+ filler.push(state.axes[i], 10);
+ }
+ filler.align();
+
+ if (description.hasHat) {
+ filler.push(state.hat, 4);
+ filler.align();
+ }
+
+ if (description.numButtons) {
+ filler.push(state.buttons, description.numButtons);
+ filler.align();
+ }
+
+ return buffer;
+ }
+
+ Joystick *m_joystick{};
+ BufferType m_hidDescription{};
+ HIDSubDescriptor *m_subDescriptor{};
+ HidDevice m_hidDevice;
+};
diff --git a/firmware/gameport-adapter/Joystick.h b/firmware/gameport-adapter/Joystick.h
new file mode 100644
index 0000000..d6546dd
--- /dev/null
+++ b/firmware/gameport-adapter/Joystick.h
@@ -0,0 +1,94 @@
+// This file is part of Necroware's GamePort adapter firmware.
+// Copyright (C) 2021 Necroware
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+
+#pragma once
+
+#include
+
+/// Base class for all joysticks.
+class Joystick {
+public:
+ static const auto MAX_AXES{16u};
+
+ /// Device description.
+ ///
+ /// This structure is used to generate the HID description
+ /// and USB data packages
+ struct Description {
+
+ /// Human readable name.
+ const char* name;
+
+ /// Number of supported axes.
+ uint8_t numAxes;
+
+ /// Number of supported buttons.
+ uint8_t numButtons;
+
+ /// Has HAT.
+ bool hasHat;
+ };
+
+ /// Joystick state.
+ struct State {
+
+ /// Axes.
+ ///
+ /// To keep it simple all axes are unified to 10 bits
+ /// resolution. Every joystick has to map it's values
+ /// to the values 0..1023 independent from the internal
+ /// resolution of the device.
+ uint16_t axes[MAX_AXES]{};
+
+ /// Hats.
+ ///
+ /// HAT is represented through values 0..8 1 is up, 2 is
+ /// 45° clockwise, 3 is right etc. Center is represented
+ /// with zero.
+ uint8_t hat{};
+
+ /// Buttons.
+ ///
+ /// Every bit is a button. 1 is pressed, 0 is released
+ uint16_t buttons{};
+ };
+
+ /// Initialize joystick.
+ ///
+ /// @returns True on successful initialization
+ virtual bool init() = 0;
+
+ /// Update state.
+ ///
+ /// This function is called every time the joystick
+ /// state has to be updated.
+ ///
+ /// @returns True on successful initialization
+ virtual bool update() = 0;
+
+ /// Gets the State of the Joystick.
+ virtual const State &getState() const = 0;
+
+ /// Gets the Description of the Joystick.
+ virtual const Description &getDescription() const = 0;
+
+ Joystick() = default;
+ virtual ~Joystick() = default;
+ Joystick(const Joystick &) = delete;
+ Joystick(Joystick &&) = delete;
+ Joystick &operator=(const Joystick &) = delete;
+ Joystick &operator=(Joystick &&) = delete;
+};
diff --git a/firmware/gameport-adapter/Logitech.h b/firmware/gameport-adapter/Logitech.h
new file mode 100755
index 0000000..908d0cd
--- /dev/null
+++ b/firmware/gameport-adapter/Logitech.h
@@ -0,0 +1,357 @@
+// This file is part of Necroware's GamePort adapter firmware.
+// Copyright (C) 2021 Necroware
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+
+#pragma once
+
+#include "DigitalPin.h"
+#include "GamePort.h"
+#include "Joystick.h"
+#include "Utilities.h"
+
+class Logitech : public Joystick {
+public:
+ bool init() override {
+ enableDigitalMode();
+ if (!readMetaData()) {
+ return false;
+ }
+
+ // Create joystick description
+ m_description.name = m_metaData.deviceName;
+ m_description.numAxes = min(Joystick::MAX_AXES,
+ m_metaData.num10bitAxes +
+ m_metaData.num8bitAxes +
+ m_metaData.numSecondaryHats * 2); // Each hat is mapped to two axes
+ m_description.numButtons = m_metaData.numPrimaryButtons + m_metaData.numSecondaryButtons;
+ m_description.hasHat = m_metaData.hasHat;
+
+ // If the device is a Logitech ThunderPad Digital, manually redefine the gamepad layout to 2 axes and 8 buttons
+ if(m_metaData.deviceID == DEVICE_THUNDERPAD_DIGITAL){
+ m_description.numAxes = 2;
+ m_description.numButtons = 8;
+ m_description.hasHat = 0;
+ }
+ // If the device is a Logitech WingMan Gamepad, manually redefine the gamepad layout to 2 axes and 11 buttons
+ else if(m_metaData.deviceID == DEVICE_WINGMAN_GAMEPAD){
+ m_description.numAxes = 2;
+ m_description.numButtons = 11;
+ m_description.hasHat = 0;
+ }
+
+ // Initialize axes centers
+ uint8_t axis = 0u;
+ for (auto i = 0u; i < m_metaData.num10bitAxes; i++, axis++) {
+ m_limits[axis] = { 512 - 256, 512 + 256 };
+ }
+ for (auto i = 0u; i < m_metaData.num8bitAxes; i++, axis++) {
+ m_limits[axis] = { 128 - 64, 128 + 64 };
+ }
+
+ return true;
+ }
+
+ bool update() override {
+
+ // === Status packet format ===
+ //
+ // Offset Bits Description
+ // --------------------------------------------------------
+ // 0 4 Low nibble of the Device ID
+ // 4 4 High nibble of the Device ID
+ // 8 10*N 10bit axes (N is number of axes)
+ // ? 8*N 8bit axes (N is number of axes)
+ // ? 1*N Buttons (N is number of buttons)
+ // ? R*N Hats (R is resolution, N is number of hats)
+ // ? 1*N Secondary buttons (N is number of buttons)
+
+ // Cyberman 2 seems not to work properly if the packets are
+ // read too fast. Following delay will ensure, that after the
+ // last read at least 5ms passed to ensure, that the joystick
+ // cooled down again.
+ delayMicroseconds(5000);
+
+ const auto packet = readPacket();
+
+ if (packet.size != m_metaData.packageSize) {
+ return false;
+ }
+
+ const auto packetID = getBits(packet, 0, 4) | getBits(packet, 4, 4) << 4;
+ if (packetID != m_metaData.deviceID) {
+ return false;
+ }
+
+ State state;
+ uint16_t offset = 8u;
+
+ uint8_t axis = 0u;
+ for (auto i = 0u; i < m_metaData.num10bitAxes; i++, axis++) {
+ state.axes[axis] = mapAxisValue(axis, getBits(packet, offset, 10));
+ offset += 10;
+ }
+
+ for (auto i = 0u; i < m_metaData.num8bitAxes; i++, axis++) {
+ state.axes[axis] = mapAxisValue(axis, getBits(packet, offset, 8));
+ offset += 8;
+ }
+
+ uint16_t button = 0u;
+ for (auto i = 0u; i < m_metaData.numPrimaryButtons; i++) {
+ state.buttons |= getBits(packet, offset++, 1) << button++;
+ }
+
+ if (m_metaData.hasHat) {
+
+ const auto hatResolution = getHatResolution();
+ state.hat = mapHatValue(getBits(packet, offset, hatResolution));
+ offset += hatResolution;
+
+ // Secondary hats are all shown as dual axes
+ for (auto i = 0u; i < m_metaData.numSecondaryHats; i++, axis += 2) {
+ const auto value = mapHatValue(getBits(packet, offset, hatResolution));
+ offset += hatResolution;
+ static constexpr uint16_t dx[] = { 511, 511, 1023, 1023, 1023, 511, 0, 0, 0 };
+ static constexpr uint16_t dy[] = { 511, 0, 0, 511, 1023, 1023, 1023, 511, 0 };
+ state.axes[axis + 0] = dx[value];
+ state.axes[axis + 1] = dy[value];
+ }
+ }
+
+ for (auto i = 0u; i < m_metaData.numSecondaryButtons; i++) {
+ state.buttons |= getBits(packet, offset++, 1) << button++;
+ }
+
+ // If the device is a Logitech ThunderPad Digital, manually remap up, down, left and right buttons to X and Y axes
+ if(m_metaData.deviceID == DEVICE_THUNDERPAD_DIGITAL){
+ const auto value = getBits(packet, 12, 4);
+ static constexpr uint16_t dx[] = { 511, 0, 511, 0, 1023, 511, 1023, 511, 511, 0, 511, 0, 1023, 511, 1023, 511 };
+ static constexpr uint16_t dy[] = { 511, 511, 1023, 1023, 511, 511, 1023, 1023, 0, 0, 511, 511, 0, 0, 511, 511 };
+ state.axes[0] = dx[value];
+ state.axes[1] = dy[value];
+
+ state.buttons &= 0xFF0F;
+ state.buttons |= (state.buttons & 0x0F00) >> 4;
+ }
+ // If the device is a Logitech WingMan Gamepad, manually remap up, down, left and right buttons to X and Y axes
+ else if(m_metaData.deviceID == DEVICE_WINGMAN_GAMEPAD){
+ const auto value = getBits(packet, 8, 4);
+ static constexpr uint16_t dx[] = { 511, 0, 511, 0, 1023, 511, 1023, 511, 511, 0, 511, 0, 1023, 511, 1023, 511 };
+ static constexpr uint16_t dy[] = { 511, 511, 1023, 1023, 511, 511, 1023, 1023, 0, 0, 511, 511, 0, 0, 511, 511 };
+ state.axes[0] = dx[value];
+ state.axes[1] = dy[value];
+
+ state.buttons >>= 4;
+ }
+
+ m_state = state;
+ return true;
+ }
+
+ const State &getState() const override {
+ return m_state;
+ }
+
+ const Description &getDescription() const override {
+ return m_description;
+ }
+
+private:
+ struct MetaData {
+ char deviceName[32]{};
+ uint8_t deviceID{};
+ uint8_t packageSize{};
+ uint8_t num8bitAxes{};
+ uint8_t num10bitAxes{};
+ uint8_t numPrimaryButtons{};
+ uint8_t numSecondaryButtons{};
+ uint8_t numSecondaryHats{};
+ uint8_t hasHat{};
+ uint8_t numHatDirections{};
+ };
+
+ struct Limits {
+ uint16_t min, max;
+ };
+
+ // Logitech Device ID constants, taken from the Linux Kernel ADI driver
+ enum LogitechDevices{
+ DEVICE_WINGMAN_EXTREME_DIGITAL = 0x00,
+ DEVICE_THUNDERPAD_DIGITAL = 0x01,
+ DEVICE_SIDECAR = 0x02,
+ DEVICE_CYBERMAN2 = 0x03,
+ DEVICE_WINGMAN_INTERCEPTOR = 0x04,
+ DEVICE_WINGMAN_FORMULA = 0x05,
+ DEVICE_WINGMAN_GAMEPAD = 0x06,
+ DEVICE_WINGMAN_EXTREME_DIGITAL_3D = 0x07,
+ DEVICE_WINGMAN_GAMEPAD_EXTREME = 0x08,
+ DEVICE_WINGMAN_GAMEPAD_USB = 0x09
+ };
+
+ uint16_t mapAxisValue(uint8_t axis, uint16_t value) {
+ if (value < m_limits[axis].min) {
+ m_limits[axis].min = value;
+ } else if (value > m_limits[axis].max) {
+ m_limits[axis].max = value;
+ }
+ return map(value, m_limits[axis].min, m_limits[axis].max, 0, 1023);
+ }
+
+ uint8_t mapHatValue(uint16_t value) const {
+ return map(value, 0, m_metaData.numHatDirections, 0, 8);
+ }
+
+ uint8_t getHatResolution() const {
+ uint8_t result = 0u;
+ for (auto value = m_metaData.numHatDirections; value; value >>= 1) {
+ result++;
+ }
+ return result;
+ }
+
+ /// Internal bit structure which is filled by reading from the joystick.
+ using Packet = Buffer<255>;
+
+ static uint16_t getBits(const Packet& packet, uint8_t offset, uint8_t count) {
+ uint16_t result = 0u;
+ if (offset < packet.size && count <= (packet.size - offset)) {
+ for (auto i = 0u; i < count; i++) {
+ result = (result << 1) | packet.data[offset + i];
+ }
+ }
+ return result;
+ }
+
+ DigitalOutput::pin> m_trigger;
+ DigitalInput::pin, true> m_data0;
+ DigitalInput::pin, true> m_data1;
+ MetaData m_metaData;
+ Description m_description;
+ State m_state;
+ Limits m_limits[Joystick::MAX_AXES];
+
+ void enableDigitalMode() const {
+ static constexpr uint16_t seq[] = {4, 2, 3, 10, 6, 11, 7, 9, 11, 0};
+
+ // Some devices, as the Logitech ThunderPad Digital, require some time for its
+ // microcontroller to initialize; otherwise the enableDigitalMode command is skipped
+ // and the device stays in analog mode. Don't use values higher than 100ms, they could
+ // interfere with the USB initialization
+ delay(100);
+
+ for (auto i = 0u; seq[i]; i++) {
+ m_trigger.pulse(20u);
+ delay(seq[i]);
+ }
+ }
+
+ byte readData() const {
+ const auto b0 = m_data0.read();
+ const auto b1 = m_data1.read();
+ return bool(b0) | bool(b1) << 1;
+ }
+
+ Packet readPacket() const {
+ static constexpr auto TIMEOUT = 32u;
+ auto timeout = TIMEOUT;
+ auto first = true;
+ Packet packet;
+ const InterruptStopper noirq;
+ auto last = readData();
+ m_trigger.setHigh();
+ while (timeout-- && packet.size < Packet::MAX_SIZE) {
+ const auto next = readData();
+ const auto edge = last ^ next;
+ if (edge) {
+ if (first) {
+ first = false;
+ } else {
+ // Normally both data bits should never flip simultaneously.
+ // We should get either 10, when data1 has flipped, or 01,
+ // when data0 has flipped. So if we just shift the edge to
+ // the right once, we will get the needed 1 or 0 bit value.
+ packet.data[packet.size++] = edge >> 1;
+ }
+ last = next;
+ timeout = TIMEOUT;
+ }
+ }
+ m_trigger.setLow();
+ return packet;
+ }
+
+ bool readMetaData() {
+
+ // === Metadata packet format ===
+ //
+ // Offset Bits Description
+ // --------------------------------------------------------
+ // 0 10 Metadata package size
+ // 10 4 Low nibble of the Device ID
+ // 14 4 High nibble of the Device ID
+ // 18 4 Feature flags
+ // 22 10 Status package size
+ // 32 4 Number of axes (0..15)
+ // 36 6 Number of buttons (0..63)
+ // 42 6 Number of hat directions (0..63)
+ // 48 6 Number of secondary buttons (0..63)
+ // 54 4 Number of secondary hats (0..15)
+ // 58 4 Number of 8-bit axes (0..15)
+ // 62 4 Length of the cname in bytes (0..15)
+ // 66 8*N Characters of the cname (N is the length)
+
+ // === Flags ===
+ //
+ // Bit Description
+ // ---------------------
+ // 1 Reserved
+ // 2 Reserved
+ // 3 Has Hat
+ // 4 Has 10-bit axes
+
+ const auto packet = readPacket();
+
+ const auto metaSize = getBits(packet, 0, 10);
+ if (metaSize != packet.size) {
+ log("Meta data package size mismatch, expected %d but got %d", packet.size, metaSize);
+ return false;
+ }
+
+ m_metaData.deviceID = getBits(packet, 10, 4) | getBits(packet, 14, 4) << 4;
+ const auto flags = getBits(packet, 18, 4);
+ m_metaData.hasHat = flags & 0x4;
+ m_metaData.packageSize = getBits(packet, 22, 10);
+ const auto numTotalAxes = getBits(packet, 32, 4);
+ m_metaData.numPrimaryButtons = getBits(packet, 36, 6);
+ m_metaData.numHatDirections = getBits(packet, 42, 6);
+ m_metaData.numSecondaryButtons = getBits(packet, 48, 6);
+ m_metaData.numSecondaryHats = getBits(packet, 54, 4);
+ const auto num8bitAxes = getBits(packet, 58, 4);
+ if (flags & 0x8) {
+ m_metaData.num10bitAxes = numTotalAxes - num8bitAxes;
+ m_metaData.num8bitAxes = num8bitAxes;
+ } else {
+ m_metaData.num8bitAxes = numTotalAxes;
+ m_metaData.num10bitAxes = 0u;
+ }
+ const auto cnameLength = getBits(packet, 62, 4);
+ m_metaData.deviceName[cnameLength] = 0;
+ for (auto i = 0u; i < cnameLength; i++) {
+ m_metaData.deviceName[i] = getBits(packet, 66 + 8 * i, 8);
+ }
+
+ return true;
+ }
+};
diff --git a/firmware/gameport-adapter/Sidewinder.h b/firmware/gameport-adapter/Sidewinder.h
new file mode 100644
index 0000000..28ab7b0
--- /dev/null
+++ b/firmware/gameport-adapter/Sidewinder.h
@@ -0,0 +1,514 @@
+// This file is part of Necroware's GamePort adapter firmware.
+// Copyright (C) 2021 Necroware
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+
+#pragma once
+
+#include "Buffer.h"
+#include "DigitalPin.h"
+#include "Joystick.h"
+#include "Utilities.h"
+
+/// Class to for communication with Sidewinder joysticks.
+/// @remark This is a green field implementation, but it was heavily
+/// inspired by Linux Sidewinder driver implementation. See
+/// https://github.com/torvalds/linux/blob/master/drivers/input/joystick/sidewinder.c
+class Sidewinder : public Joystick {
+public:
+ /// Resets the joystick and tries to detect the model.
+ bool init() override {
+ log("Sidewinder init...");
+ m_errors = 0;
+
+ m_model = guessModel(readPacket());
+ while (m_model == Model::SW_UNKNOWN) {
+ // No data. 3d Pro analog mode?
+ enableDigitalMode();
+ m_model = guessModel(readPacket());
+ }
+ log("Detected model %d", m_model);
+ return true;
+ }
+
+ bool update() override {
+ const auto packet = readPacket();
+ State state;
+ if (decode(packet, state)) {
+ m_state = state;
+ m_errors = 0;
+ return true;
+ }
+
+ m_errors++;
+ log("Packet decoding failed %d time(s)", m_errors);
+ if (m_errors > 5) {
+ return init();
+ }
+ return false;
+ }
+
+ const State &getState() const override {
+ return m_state;
+ }
+
+ const Description &getDescription() const override;
+
+private:
+ /// Supported Sidewinder model types.
+ enum class Model {
+ /// Unknown model.
+ SW_UNKNOWN,
+
+ /// Sidewinder GamePad
+ SW_GAMEPAD,
+
+ /// Sidewinder 3D Pro
+ SW_3D_PRO,
+
+ /// Sidewinder Precision Pro
+ SW_PRECISION_PRO,
+
+ /// Sidewinder Force Feedback Pro
+ SW_FORCE_FEEDBACK_PRO,
+
+ /// Sidewinder Force Feedback Wheel
+ SW_FORCE_FEEDBACK_WHEEL
+ };
+
+ /// Internal bit structure which is filled by reading from the joystick.
+ using Packet = Buffer<128u>;
+
+ /// Model specific status decoder function.
+ template
+ struct Decoder {
+ static const Description &getDescription();
+ static bool decode(const Packet &packet, State &state);
+ };
+
+ /// Guesses joystick model from the size of the packet.
+ Model guessModel(const Packet &packet) const {
+ log("Guessing model by packet size of %d", packet.size);
+ switch (packet.size) {
+ case 15:
+ return Model::SW_GAMEPAD;
+ case 16: // 3bit mode
+ case 48: { // 1bit mode
+ const auto id = readID(packet.size);
+ log("Data packet size is ambiguous. Guessing by ID %d", id);
+ if (id == 14) {
+ return Model::SW_FORCE_FEEDBACK_PRO;
+ }
+ return Model::SW_PRECISION_PRO;
+ }
+ case 11: // 3bit mode
+ case 33: // 1bit mode
+ return Model::SW_FORCE_FEEDBACK_WHEEL;
+ case 64:
+ return Model::SW_3D_PRO;
+ default:
+ return Model::SW_UNKNOWN;
+ }
+ }
+
+ void cooldown() const {
+ m_trigger.setLow();
+ delay(3);
+ }
+
+ void trigger() const {
+ m_trigger.pulse(20);
+ }
+
+ DigitalInput::pin, true> m_clock;
+ DigitalInput::pin, true> m_data0;
+ DigitalInput::pin, true> m_data1;
+ DigitalInput::pin, true> m_data2;
+ DigitalOutput::pin> m_trigger;
+ Model m_model{Model::SW_UNKNOWN};
+ State m_state{};
+ uint8_t m_errors{};
+
+ /// Enables digital mode for 3D Pro.
+ //
+ /// The 3D Pro can work as legacy analog joystick or in digital mode.
+ /// This mode has to be activated explicitly. In this function timing
+ /// is very important. See Patent: US#5628686 (page 19) for details.
+ void enableDigitalMode() const {
+ static const uint16_t magic = 150;
+ static const uint16_t seq[] = {magic, magic + 725, magic + 300, magic, 0};
+ log("Trying to enable digital mode");
+ cooldown();
+ const InterruptStopper interruptStopper;
+ for (auto i = 0u; seq[i]; i++) {
+ trigger();
+ delayMicroseconds(seq[i]);
+ }
+ }
+
+ /// Read bits packet from the joystick.
+ ///
+ /// This part is extremely performance and timing critical. Change only, if
+ /// you know, what you are doing.
+ Packet readPacket() const {
+
+ // Packet instantiation is a very expensive call, which zeros the memory.
+ // The instantiation should therefore happen outside of the interrupt stopper
+ // and before triggering the device. Otherwise the clock will come before
+ // the packet was zeroed/instantiated.
+ Packet packet;
+
+ // We are reading into a byte array instead of an uint64_t, because of two
+ // reasons. First, bits packets can be larger, than 64 bits. We are actually
+ // not interested in packets, which are larger than that, but may be in the
+ // future we'd need to handle them as well. Second, for reading into an
+ // uint64_t we would need to shift between the clock impulses, which is
+ // impossible to do in time. Unfortunately this shift is extremely slow on
+ // an Arduino and it's just faster to write into an array. One bit per byte.
+ packet.size = readBits(Packet::MAX_SIZE, [this, &packet](uint8_t pos) {
+ const auto b1 = m_data0.read();
+ const auto b2 = m_data1.read();
+ const auto b3 = m_data2.read();
+ packet.data[pos] = bool(b1) | bool(b2) << 1 | bool(b3) << 2;
+ });
+
+ return packet;
+ }
+
+ uint8_t readID(uint8_t dataPacketSize) const {
+
+ const auto rise = dataPacketSize / 2 - 1;
+ const auto fall = rise + 2;
+
+ const auto count = readBits(255u, [this, rise, fall](uint8_t pos) {
+ if (pos == rise) {
+ m_trigger.setHigh();
+ }
+ else if (pos == fall) {
+ m_trigger.setLow();
+ }
+ });
+ return count < dataPacketSize ? 0 : count - dataPacketSize;
+ }
+
+ template
+ uint8_t readBits(uint8_t maxCount, T&& extract) const {
+ static const uint8_t wait_duration = 100;
+ uint8_t count{};
+ cooldown();
+ // WARNING: Here starts the timing critical section
+ const InterruptStopper interruptStopper;
+ trigger();
+ if (m_clock.wait(true, wait_duration)) {
+ while(count < maxCount && m_clock.wait(Edge::rising, wait_duration)) {
+ extract(count++);
+ }
+ }
+ return count;
+ }
+
+ /// Decodes bit packet into a state.
+ bool decode(const Packet &packet, State &state) const;
+};
+
+/// Placeholder for Unknown Device
+template <>
+class Sidewinder::Decoder {
+public:
+ static const Description &getDescription() {
+ static const Description desc{"Unknown", 0, 0, 0};
+ return desc;
+ }
+
+ static bool decode(const Packet &, State &) {
+ return false;
+ }
+};
+
+/// Bit decoder for Sidewinder GamePad.
+template <>
+class Sidewinder::Decoder {
+public:
+ static const Description &getDescription() {
+ static const Description desc{"MS Sidewinder GamePad", 2, 10, 0};
+ return desc;
+ }
+
+ static bool decode(const Packet &packet, State &state) {
+
+ const auto checksum = [&]() {
+ byte result = 0u;
+ for (auto i = 0u; i < packet.size; i++) {
+ result ^= packet.data[i] & 1;
+ }
+ return result;
+ };
+
+ if (packet.size != 15 || checksum() != 0) {
+ return false;
+ }
+
+ // Bit 0-1: x-axis (10-left, 01-right, 11-middle)
+ // Bit 2-3: y-axis (01-up, 10-down, 11-middle)
+ // Bit 4-13: 10 buttons
+ // Bit 14: checksum
+ for (auto i = 0u; i < 10; i++) {
+ state.buttons |= (~packet.data[i + 4] & 1) << i;
+ }
+ state.axes[0] = map(1 + packet.data[3] - packet.data[2], 0, 2, 0, 1023);
+ state.axes[1] = map(1 + packet.data[0] - packet.data[1], 0, 2, 0, 1023);
+
+ return true;
+ }
+};
+
+/// Bit decoder for Sidewinder 3D Pro.
+template <>
+class Sidewinder::Decoder {
+public:
+ static const Description &getDescription() {
+ static const Description desc{"MS Sidewinder 3D Pro", 4, 8, 1};
+ return desc;
+ }
+
+ static bool decode(const Packet &packet, State &state) {
+ const auto value = [&]() {
+ uint64_t result{0u};
+ for (auto i = 0u; i < packet.size; i++) {
+ result |= uint64_t(packet.data[i] & 1) << i;
+ }
+ return result;
+ }();
+
+ const auto bits = [&](uint8_t start, uint8_t length) {
+ const auto mask = (1 << length) - 1;
+ return (value >> start) & mask;
+ };
+
+ if (packet.size != 64 || !checkSync(value) || checksum(value)) {
+ return false;
+ }
+
+ // bit 38: button 8 + bit 8-15: buttons 1-7 (low active)
+ state.buttons = ~(bits(8, 7) | (bits(38, 1) << 7));
+
+ // bit 3-5 + bit 16-22: x-axis (value 0-1023)
+ state.axes[0] = bits(3, 3) << 7 | bits(16, 7);
+
+ // bit 0-2 + bit 24-30: y-axis (value 0-1023)
+ state.axes[1] = bits(0, 3) << 7 | bits(24, 7);
+
+ // bit 35-36 + bit 40-46: z-axis (value 0-511)
+ state.axes[2] = map(bits(35, 2) << 7 | bits(40, 7), 0, 511, 0, 1023);
+
+ // bit 32-34 + bit 48-54: throttle-axis (value 0-1023)
+ state.axes[3] = bits(32, 3) << 7 | bits(48, 7);
+
+ // bit 6-7 + bit 60-62 (9 pos, 0 center, 1-8 clockwise)
+ state.hat = bits(6, 1) << 3 | bits(60, 3);
+
+ return true;
+ }
+
+private:
+ /// Checks sync bits.
+ ///
+ /// This code was taken from Linux driver as is.
+ static bool checkSync(uint64_t value) {
+ return !((value & 0x8080808080808080ULL) ^ 0x80);
+ }
+
+ /// Calculates checksum.
+ ///
+ /// This code was taken from Linux driver as is.
+ static byte checksum(uint64_t value) {
+ auto result = 0u;
+ while (value) {
+ result += value & 0xf;
+ value >>= 4;
+ }
+ return result & 0xf;
+ }
+};
+
+/// Bit decoder for Sidewinder Precision Pro
+template <>
+class Sidewinder::Decoder {
+public:
+ static const Description &getDescription() {
+ static const Description desc{"MS Sidewinder Precision Pro", 4, 9, 1};
+ return desc;
+ }
+
+ static bool decode(const Packet &packet, State &state) {
+
+ // The packet can be either in 3bit or in 1bit mode
+ if (packet.size != 16 && packet.size != 48) {
+ return false;
+ }
+
+ const auto value = [&packet]() {
+ uint64_t result{0u};
+ const auto shift = 48 / packet.size;
+ const auto mask = (shift == 3) ? 0b111 : 0b1;
+ for (auto i = 0u; i < packet.size; i++) {
+ result |= uint64_t(packet.data[i] & mask) << (i * shift);
+ }
+ return result;
+ }();
+
+ // TODO shared code with 3D Pro?
+ const auto bits = [&value](uint8_t start, uint8_t length) {
+ const auto mask = (1 << length) - 1;
+ return (value >> start) & mask;
+ };
+
+ // TODO shared code with GP?
+ const auto parity = [](uint64_t t) {
+ uint32_t x = t ^ (t >> 32);
+ x ^= x >> 16;
+ x ^= x >> 8;
+ x ^= x >> 4;
+ x ^= x >> 2;
+ x ^= x >> 1;
+ return x & 1;
+ };
+
+ if (!parity(value)) {
+ return false;
+ }
+
+ state.axes[0] = bits(9, 10);
+ state.axes[1] = bits(19, 10);
+ state.axes[2] = map(bits(36, 6), 0, 63, 0, 1023);
+ state.axes[3] = map(bits(29, 7), 0, 127, 0, 1023);
+ state.hat = bits(42, 4);
+ state.buttons = ~bits(0, 9);
+
+ return true;
+ }
+};
+
+/// Descriptor for Sidewinder Force Feedback Pro.
+/// (The bit decoder is identical to the Precision Pro.)
+template <>
+class Sidewinder::Decoder {
+public:
+ static const Description &getDescription() {
+ static const Description desc{"MS Sidewinder Force Feedback Pro", 4, 9, 1};
+ return desc;
+ }
+
+ static bool decode(const Packet &packet, State &state) {
+ // Decode is identical between the Force Feedback Pro and the Precision Pro.
+ return Decoder::decode(packet, state);
+ }
+};
+
+/// Bit decoder for Sidewinder Force Feedback Wheel.
+template <>
+class Sidewinder::Decoder {
+public:
+ static const Description &getDescription() {
+ static const Description desc{"MS ForceFeedBack Wheel", 3, 8, 0};
+ return desc;
+ }
+
+ static bool decode(const Packet &packet, State &state) {
+
+ // The packet can be either in 3bit or in 1bit mode
+ if (packet.size != 11 && packet.size != 33) {
+ return false;
+ }
+
+ const auto value = [&packet]() {
+ uint64_t result{0u};
+ const auto shift = 33 / packet.size;
+ const auto mask = (shift == 3) ? 0b111 : 0b1;
+ for (auto i = 0u; i < packet.size; i++) {
+ result |= uint64_t(packet.data[i] & mask) << (i * shift);
+ }
+ return result;
+ }();
+
+ // TODO shared code with 3D Pro?
+ const auto bits = [&value](uint8_t start, uint8_t length) {
+ const auto mask = (1 << length) - 1;
+ return (value >> start) & mask;
+ };
+
+ // TODO shared code with GP?
+ const auto parity = [](uint64_t t) {
+ uint32_t x = t ^ (t >> 32);
+ x ^= x >> 16;
+ x ^= x >> 8;
+ x ^= x >> 4;
+ x ^= x >> 2;
+ x ^= x >> 1;
+ return x & 1;
+ };
+
+ if (!parity(value)) {
+ return false;
+ }
+
+ // bit 0-9: RX
+ state.axes[0] = bits(0, 10);
+
+ // bit 10-16: Rudder
+ state.axes[1] = map(bits(10, 6), 0, 63, 0, 1023);
+
+ // bit 16-21: Throttle
+ state.axes[2] = map(bits(16, 6), 0, 63, 0, 1023);
+
+ // bit 22-29: buttons 1-8
+ state.buttons = ~bits(22, 8);
+
+ return true;
+ }
+};
+
+inline const Joystick::Description &Sidewinder::getDescription() const {
+ switch (m_model) {
+ case Model::SW_GAMEPAD:
+ return Decoder::getDescription();
+ case Model::SW_3D_PRO:
+ return Decoder::getDescription();
+ case Model::SW_PRECISION_PRO:
+ return Decoder::getDescription();
+ case Model::SW_FORCE_FEEDBACK_PRO:
+ return Decoder::getDescription();
+ case Model::SW_FORCE_FEEDBACK_WHEEL:
+ return Decoder::getDescription();
+ default:
+ return Decoder::getDescription();
+ }
+}
+
+inline bool Sidewinder::decode(const Packet &packet, State &state) const {
+ switch (m_model) {
+ case Model::SW_GAMEPAD:
+ return Decoder::decode(packet, state);
+ case Model::SW_3D_PRO:
+ return Decoder::decode(packet, state);
+ case Model::SW_PRECISION_PRO:
+ return Decoder::decode(packet, state);
+ case Model::SW_FORCE_FEEDBACK_PRO:
+ return Decoder::decode(packet, state);
+ case Model::SW_FORCE_FEEDBACK_WHEEL:
+ return Decoder::decode(packet, state);
+ default:
+ return Decoder::decode(packet, state);
+ }
+}
diff --git a/firmware/gameport-adapter/ThrustMaster.h b/firmware/gameport-adapter/ThrustMaster.h
new file mode 100644
index 0000000..fa472ec
--- /dev/null
+++ b/firmware/gameport-adapter/ThrustMaster.h
@@ -0,0 +1,76 @@
+// This file is part of Necroware's GamePort adapter firmware.
+// Copyright (C) 2021 Necroware
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+
+#pragma once
+
+#include "AnalogJoystick.h"
+#include "Joystick.h"
+
+class ThrustMaster : public Joystick {
+public:
+
+ const Description &getDescription() const override {
+ static const Description description{"ThrustMaster", 3, 4, 1};
+ return description;
+ }
+
+ const State &getState() const override {
+ return m_state;
+ }
+
+ bool init() override {
+ return true;
+ }
+
+ bool update() override {
+
+ // Unfortunately I had no real ThrustMaster joystick to test, but
+ // Sidewinder 3D Pro has an emulation for ThrustMaster. So, this
+ // implementation was made using that emulation and could be wrong.
+ // However the ThrustMaster seem to have a strange hat switch. It is
+ // encoded using the 3rd axis with values between 0 and 512, where
+ // 0-127 is up, 128-255 is right, 256-383 is down and 384-479 is left.
+ // Everything above 480 considered to be middle.
+ const auto hat = [](uint16_t value) -> uint8_t {
+ if (value < 128) {
+ return 1;
+ }
+ if (value < 256) {
+ return 3;
+ }
+ if (value < 384) {
+ return 5;
+ }
+ if (value < 480) {
+ return 7;
+ }
+ return 0;
+ };
+
+ for (auto i = 0u; i < 3; i++) {
+ m_state.axes[i] = m_joystick.getAxis(i);
+ }
+ m_state.hat = hat(m_joystick.getAxis(3));
+ m_state.buttons = m_joystick.getButtons();
+
+ return true;
+ }
+
+private:
+ AnalogJoystick m_joystick;
+ State m_state;
+};
+
diff --git a/firmware/gameport-adapter/Utilities.h b/firmware/gameport-adapter/Utilities.h
new file mode 100644
index 0000000..36ed8e4
--- /dev/null
+++ b/firmware/gameport-adapter/Utilities.h
@@ -0,0 +1,61 @@
+// This file is part of Necroware's GamePort adapter firmware.
+// Copyright (C) 2021 Necroware
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+
+#pragma once
+
+#include
+#include
+#include
+
+/// Debug messages on serial port are turned off by default. Comment the following
+/// line to enable logging to the serial port.
+/// Arduino Micro seems somehow to share the serial port with the USB interface.
+/// If the serial port will be activated, the operating system will no longer
+/// recognize the USB device!
+#define NDEBUG
+
+#ifdef NDEBUG
+#define initLog()
+#define log(...)
+#else
+inline void initLog() {
+ Serial.begin(9600);
+ while(!Serial);
+}
+
+inline void log(const char *fmt, ...) {
+ va_list args;
+ va_start(args, fmt);
+ char buffer[512];
+ vsnprintf(buffer, sizeof(buffer), fmt, args);
+ va_end(args);
+ Serial.println(buffer);
+}
+#endif // !NDEBUG
+
+/// Interrupt guard (RAII).
+///
+/// This class is used to deactivate the interrupts in performance
+/// critical sections. The interrupt is reactivated as soon as this
+/// guard runs out of scope.
+struct InterruptStopper {
+ InterruptStopper() { noInterrupts(); }
+ ~InterruptStopper() { interrupts(); }
+ InterruptStopper(const InterruptStopper&) = delete;
+ InterruptStopper(InterruptStopper&&) = delete;
+ InterruptStopper& operator=(const InterruptStopper&) = delete;
+ InterruptStopper& operator=(InterruptStopper&&) = delete;
+};
diff --git a/firmware/gameport-adapter/gameport-adapter.ino b/firmware/gameport-adapter/gameport-adapter.ino
new file mode 100644
index 0000000..cff6fc7
--- /dev/null
+++ b/firmware/gameport-adapter/gameport-adapter.ino
@@ -0,0 +1,79 @@
+// This file is part of Necroware's GamePort adapter firmware.
+// Copyright (C) 2021 Necroware
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+
+#include "DigitalPin.h"
+#include "HidJoystick.h"
+
+#include "CHFlightstickPro.h"
+#include "CHF16CombatStick.h"
+#include "GenericJoystick.h"
+#include "GrIP.h"
+#include "Logitech.h"
+#include "Sidewinder.h"
+#include "ThrustMaster.h"
+
+static Joystick *createJoystick() {
+
+ const auto sw1 = DigitalInput<14, true>{};
+ const auto sw2 = DigitalInput<15, true>{};
+ const auto sw3 = DigitalInput<20, true>{};
+ const auto sw4 = DigitalInput<21, true>{};
+
+ // Give some time to setup the input
+ delay(1);
+
+ const auto sw = !sw4 << 3 | !sw3 << 2 | !sw2 << 1 | !sw1;
+
+ switch (sw) {
+ case 0b0001:
+ return new GenericJoystick<2,4>;
+ case 0b0010:
+ return new GenericJoystick<3,4>;
+ case 0b0011:
+ return new GenericJoystick<4,4>;
+ case 0b0100:
+ return new CHFlightstickPro;
+ case 0b0101:
+ return new ThrustMaster;
+ case 0b0110:
+ return new CHF16CombatStick;
+ case 0b0111:
+ return new Sidewinder;
+ case 0b1000:
+ return new GrIP;
+ case 0b1001:
+ return new Logitech;
+ default:
+ return new GenericJoystick<2,2>;
+ }
+}
+
+void setup() {
+ // DEBUG information: Debugging is turned off by default
+ // Comment the "NDEBUG" line in "Utilities.h" to enable logging to the serial monitor
+ initLog();
+}
+
+void loop() {
+
+ static auto hidJoystick = [] {
+ HidJoystick hidJoystick;
+ hidJoystick.init(createJoystick());
+ return hidJoystick;
+ }();
+
+ hidJoystick.update();
+}
diff --git a/kicad/fp-info-cache b/kicad/fp-info-cache
new file mode 100644
index 0000000..573541a
--- /dev/null
+++ b/kicad/fp-info-cache
@@ -0,0 +1 @@
+0
diff --git a/kicad/fp-lib-table b/kicad/fp-lib-table
new file mode 100644
index 0000000..97acde6
--- /dev/null
+++ b/kicad/fp-lib-table
@@ -0,0 +1,3 @@
+(fp_lib_table
+ (lib (name Necroware)(type KiCad)(uri ${KIPRJMOD}/lib/Necroware.pretty)(options "")(descr ""))
+)
diff --git a/kicad/gameport-adapter.kicad_pcb b/kicad/gameport-adapter.kicad_pcb
new file mode 100644
index 0000000..a574662
--- /dev/null
+++ b/kicad/gameport-adapter.kicad_pcb
@@ -0,0 +1,11121 @@
+(kicad_pcb (version 20211014) (generator pcbnew)
+
+ (general
+ (thickness 1.6)
+ )
+
+ (paper "A4")
+ (title_block
+ (title "GamePort Adapter")
+ (date "2022-01-07")
+ (rev "0.2.1")
+ (company "Necroware")
+ (comment 1 "by Scorp")
+ )
+
+ (layers
+ (0 "F.Cu" signal)
+ (31 "B.Cu" signal)
+ (32 "B.Adhes" user "B.Adhesive")
+ (33 "F.Adhes" user "F.Adhesive")
+ (34 "B.Paste" user)
+ (35 "F.Paste" user)
+ (36 "B.SilkS" user "B.Silkscreen")
+ (37 "F.SilkS" user "F.Silkscreen")
+ (38 "B.Mask" user)
+ (39 "F.Mask" user)
+ (40 "Dwgs.User" user "User.Drawings")
+ (41 "Cmts.User" user "User.Comments")
+ (42 "Eco1.User" user "User.Eco1")
+ (43 "Eco2.User" user "User.Eco2")
+ (44 "Edge.Cuts" user)
+ (45 "Margin" user)
+ (46 "B.CrtYd" user "B.Courtyard")
+ (47 "F.CrtYd" user "F.Courtyard")
+ (48 "B.Fab" user)
+ (49 "F.Fab" user)
+ )
+
+ (setup
+ (pad_to_mask_clearance 0)
+ (pcbplotparams
+ (layerselection 0x00010fc_ffffffff)
+ (disableapertmacros false)
+ (usegerberextensions false)
+ (usegerberattributes false)
+ (usegerberadvancedattributes true)
+ (creategerberjobfile true)
+ (svguseinch false)
+ (svgprecision 6)
+ (excludeedgelayer true)
+ (plotframeref false)
+ (viasonmask false)
+ (mode 1)
+ (useauxorigin false)
+ (hpglpennumber 1)
+ (hpglpenspeed 20)
+ (hpglpendiameter 15.000000)
+ (dxfpolygonmode true)
+ (dxfimperialunits true)
+ (dxfusepcbnewfont true)
+ (psnegative false)
+ (psa4output false)
+ (plotreference true)
+ (plotvalue true)
+ (plotinvisibletext false)
+ (sketchpadsonfab false)
+ (subtractmaskfromsilk false)
+ (outputformat 1)
+ (mirror false)
+ (drillshape 0)
+ (scaleselection 1)
+ (outputdirectory "./gerber")
+ )
+ )
+
+ (net 0 "")
+ (net 1 "VCC")
+ (net 2 "GND")
+ (net 3 "Button_4")
+ (net 4 "Button_3")
+ (net 5 "AxisY_2")
+ (net 6 "Button_2")
+ (net 7 "AxisX_2")
+ (net 8 "Button_1")
+ (net 9 "AxisY_1")
+ (net 10 "AxisX_1")
+ (net 11 "MIDI_RXD")
+ (net 12 "MIDI_TXD")
+ (net 13 "SW3")
+ (net 14 "SW2")
+ (net 15 "SW1")
+ (net 16 "SW4")
+
+ (footprint "Connector_Dsub:DSUB-15_Female_Horizontal_P2.77x2.84mm_EdgePinOffset7.70mm_Housed_MountingHolesOffset9.12mm" (layer "F.Cu")
+ (tedit 59FEDEE2) (tstamp 00000000-0000-0000-0000-00005ff79d30)
+ (at 111.633 78.486 90)
+ (descr "15-pin D-Sub connector, horizontal/angled (90 deg), THT-mount, female, pitch 2.77x2.84mm, pin-PCB-offset 7.699999999999999mm, distance of mounting holes 33.3mm, distance of mounting holes to PCB edge 9.12mm, see https://disti-assets.s3.amazonaws.com/tonar/files/datasheets/16730.pdf")
+ (tags "15-pin D-Sub connector horizontal angled 90deg THT female pitch 2.77x2.84mm pin-PCB-offset 7.699999999999999mm mounting-holes-distance 33.3mm mounting-hole-offset 33.3mm")
+ (path "/00000000-0000-0000-0000-00005fb67ac2")
+ (attr through_hole)
+ (fp_text reference "CONN1" (at -10.668 6.985 90) (layer "F.SilkS")
+ (effects (font (size 1 1) (thickness 0.15)))
+ (tstamp 4dc69300-0844-462f-8e9c-c9ae8dd39c2b)
+ )
+ (fp_text value "GamePort" (at -9.695 18.61 90) (layer "F.Fab")
+ (effects (font (size 1 1) (thickness 0.15)))
+ (tstamp fd99e837-7b8a-482b-b878-21fc3114a13c)
+ )
+ (fp_text user "${REFERENCE}" (at -9.695 14.025 90) (layer "F.Fab")
+ (effects (font (size 1 1) (thickness 0.15)))
+ (tstamp a28524a7-c538-42a4-9cf4-56d1105d6227)
+ )
+ (fp_line (start -29.355 10.48) (end -29.355 -1.86) (layer "F.SilkS") (width 0.12) (tstamp 3fd02f33-6d57-49c4-a650-5f0918995b31))
+ (fp_line (start 9.965 -1.86) (end 9.965 10.48) (layer "F.SilkS") (width 0.12) (tstamp 96a6d0e7-4dd7-42d7-89ed-cb064bf556fb))
+ (fp_line (start -0.25 -2.754338) (end 0.25 -2.754338) (layer "F.SilkS") (width 0.12) (tstamp dfdb48fe-7068-4058-bae5-315aec0a0af3))
+ (fp_line (start 0 -2.321325) (end -0.25 -2.754338) (layer "F.SilkS") (width 0.12) (tstamp ebca4f01-a2a7-4107-85a1-4c76ee76ffc5))
+ (fp_line (start 0.25 -2.754338) (end 0 -2.321325) (layer "F.SilkS") (width 0.12) (tstamp f2b28e2b-a300-4c9c-93fc-2f408d805c71))
+ (fp_line (start -29.355 -1.86) (end 9.965 -1.86) (layer "F.SilkS") (width 0.12) (tstamp f7e35b5e-e6ca-4c07-a5d5-5faf5b1b2668))
+ (fp_line (start -29.8 -2.35) (end -29.8 17.65) (layer "F.CrtYd") (width 0.05) (tstamp 1bd2fe97-372f-418a-be4a-2b5732929d94))
+ (fp_line (start -29.8 17.65) (end 10.45 17.65) (layer "F.CrtYd") (width 0.05) (tstamp 3e9eb073-9447-4b8f-8cd8-62b73f569a87))
+ (fp_line (start 10.45 -2.35) (end -29.8 -2.35) (layer "F.CrtYd") (width 0.05) (tstamp b3032ce2-14c2-4a66-a612-539a5817611a))
+ (fp_line (start 10.45 17.65) (end 10.45 -2.35) (layer "F.CrtYd") (width 0.05) (tstamp d5450649-9a89-4d2f-9a34-46a2f504f776))
+ (fp_line (start 5.355 10.54) (end 5.355 1.42) (layer "F.Fab") (width 0.1) (tstamp 09a8ee1d-bee1-45b8-8415-4017c8fe73de))
+ (fp_line (start -21.995 10.94) (end -21.995 17.11) (layer "F.Fab") (width 0.1) (tstamp 0a3a003d-bdfa-4a01-b059-8eb568a86223))
+ (fp_line (start 9.905 10.94) (end 9.905 10.54) (layer "F.Fab") (width 0.1) (tstamp 0aa459fa-a860-494f-817b-6b747e3e0a54))
+ (fp_line (start 2.605 10.94) (end -21.995 10.94) (layer "F.Fab") (width 0.1) (tstamp 3fdb2571-b292-499f-96df-337a49cc61e5))
+ (fp_line (start -23.845 10.94) (end -28.845 10.94) (layer "F.Fab") (width 0.1) (tstamp 42b13a07-c92b-4597-a836-9df9867b0585))
+ (fp_line (start -24.745 10.54) (end -24.745 1.42) (layer "F.Fab") (width 0.1) (tstamp 435ae7e9-5347-41e2-a6c3-a5cf56069042))
+ (fp_line (start -29.295 10.54) (end -29.295 10.94) (layer "F.Fab") (width 0.1) (tstamp 4adb0775-bea7-476e-8aab-803e3a5f8aee))
+ (fp_line (start 2.605 17.11) (end 2.605 10.94) (layer "F.Fab") (width 0.1) (tstamp 4ff6fc6f-e670-46c0-bc30-1b9a87161f0c))
+ (fp_line (start -28.845 15.94) (end -23.845 15.94) (layer "F.Fab") (width 0.1) (tstamp 5329f855-e302-4112-8125-a7b70fb032a0))
+ (fp_line (start 9.905 -1.8) (end -29.295 -1.8) (layer "F.Fab") (width 0.1) (tstamp 70734bfc-3bae-4bf0-b530-ac27d3ec87f6))
+ (fp_line (start -29.295 10.54) (end 9.905 10.54) (layer "F.Fab") (width 0.1) (tstamp 74c887e8-2460-4890-9514-95e4d172c0bf))
+ (fp_line (start 8.555 10.54) (end 8.555 1.42) (layer "F.Fab") (width 0.1) (tstamp 8b7d1cda-516e-4f48-90c8-2e5a4fbe4ab8))
+ (fp_line (start 9.905 10.54) (end -29.295 10.54) (layer "F.Fab") (width 0.1) (tstamp 8e3f8180-d561-4220-9ce3-d2394d4cff0e))
+ (fp_line (start 9.455 15.94) (end 9.455 10.94) (layer "F.Fab") (width 0.1) (tstamp 8fe7a01e-b4f6-43e8-989f-ee7204d00b41))
+ (fp_line (start -29.295 10.94) (end 9.905 10.94) (layer "F.Fab") (width 0.1) (tstamp 915d6276-fdbb-4d21-8a97-a87138da4f03))
+ (fp_line (start 4.455 15.94) (end 9.455 15.94) (layer "F.Fab") (width 0.1) (tstamp 9430d7de-cce8-43ba-b40e-b9348e091cd1))
+ (fp_line (start -21.995 17.11) (end 2.605 17.11) (layer "F.Fab") (width 0.1) (tstamp a041eb99-684c-4dfd-bc8d-24ba7172ac07))
+ (fp_line (start 9.905 10.54) (end 9.905 -1.8) (layer "F.Fab") (width 0.1) (tstamp cb5b4280-fa43-4cd8-880a-59df86181a71))
+ (fp_line (start 4.455 10.94) (end 4.455 15.94) (layer "F.Fab") (width 0.1) (tstamp cd519a60-042f-4dcb-a2dd-1f74ce7e34f5))
+ (fp_line (start -27.945 10.54) (end -27.945 1.42) (layer "F.Fab") (width 0.1) (tstamp d41ed9b0-2033-4b56-b0f0-0c51956543d5))
+ (fp_line (start -23.845 15.94) (end -23.845 10.94) (layer "F.Fab") (width 0.1) (tstamp dc17e2ca-2f67-49f8-868b-cbbbd2fbe084))
+ (fp_line (start -28.845 10.94) (end -28.845 15.94) (layer "F.Fab") (width 0.1) (tstamp de553bbb-603f-4f18-bd63-23bfb4e4fe70))
+ (fp_line (start 9.455 10.94) (end 4.455 10.94) (layer "F.Fab") (width 0.1) (tstamp f0fc953e-1322-4d79-b6dd-f3ce950303ce))
+ (fp_line (start -29.295 -1.8) (end -29.295 10.54) (layer "F.Fab") (width 0.1) (tstamp f79fd16d-0017-4424-8dd4-b54b9ffb06c5))
+ (fp_arc (start -27.945 1.42) (mid -26.345 -0.18) (end -24.745 1.42) (layer "F.Fab") (width 0.1) (tstamp 95642b86-4ad0-432c-a7d5-666dfd0d6ade))
+ (fp_arc (start 5.355 1.42) (mid 6.955 -0.18) (end 8.555 1.42) (layer "F.Fab") (width 0.1) (tstamp b2ed3e04-6ec5-4e31-aa09-d55130d40c5b))
+ (pad "0" thru_hole circle locked (at -26.345 1.42 90) (size 4 4) (drill 3.2) (layers *.Cu *.Mask)
+ (net 2 "GND") (tstamp d8747ffc-c8c7-4d64-9881-c0d9f30d1894))
+ (pad "0" thru_hole circle locked (at 6.955 1.42 90) (size 4 4) (drill 3.2) (layers *.Cu *.Mask)
+ (net 2 "GND") (tstamp fa1842be-9137-4bd8-b0ca-9e4a349fb737))
+ (pad "1" thru_hole rect locked (at 0 0 90) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)
+ (net 1 "VCC") (tstamp 498db93d-c7a3-43a9-adbc-64b9ff646851))
+ (pad "2" thru_hole circle locked (at -2.77 0 90) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)
+ (net 8 "Button_1") (tstamp a6e6f3fe-cb36-411d-9926-cbf9e40512b5))
+ (pad "3" thru_hole circle locked (at -5.54 0 90) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)
+ (net 10 "AxisX_1") (tstamp 4f9cf489-d748-4237-b5a5-bd328e089e59))
+ (pad "4" thru_hole circle locked (at -8.31 0 90) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)
+ (net 2 "GND") (tstamp ca84c47c-6171-4b1a-8ad9-a1b1a7d9bb30))
+ (pad "5" thru_hole circle locked (at -11.08 0 90) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)
+ (net 2 "GND") (tstamp 2358b835-2d3c-407c-8984-c9f27133e886))
+ (pad "6" thru_hole circle locked (at -13.85 0 90) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)
+ (net 9 "AxisY_1") (tstamp 9410a5b9-28be-451b-a987-464c2fb56ef9))
+ (pad "7" thru_hole circle locked (at -16.62 0 90) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)
+ (net 6 "Button_2") (tstamp 9aa1ea9d-e10c-4692-be9d-b0737b99939b))
+ (pad "8" thru_hole circle locked (at -19.39 0 90) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)
+ (net 1 "VCC") (tstamp 65b6e29c-a768-4563-a427-8652f82422f7))
+ (pad "9" thru_hole circle locked (at -1.385 2.84 90) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)
+ (net 1 "VCC") (tstamp 5bf492cb-f15d-4def-aa46-2c60d70201ff))
+ (pad "10" thru_hole circle locked (at -4.155 2.84 90) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)
+ (net 4 "Button_3") (tstamp 6981600e-a98a-440d-9b13-405249467bca))
+ (pad "11" thru_hole circle locked (at -6.925 2.84 90) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)
+ (net 7 "AxisX_2") (tstamp abc6cd6e-e911-47d9-940f-71f730a1979d))
+ (pad "12" thru_hole circle locked (at -9.695 2.84 90) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)
+ (net 12 "MIDI_TXD") (tstamp a3bc5821-677e-4889-942b-80f25ab17925))
+ (pad "13" thru_hole circle locked (at -12.465 2.84 90) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)
+ (net 5 "AxisY_2") (tstamp 496c9a8f-a445-4931-8d22-9494c6d72449))
+ (pad "14" thru_hole circle locked (at -15.235 2.84 90) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)
+ (net 3 "Button_4") (tstamp 7d83b938-cbe3-4bc3-956d-4a956b87804a))
+ (pad "15" thru_hole circle locked (at -18.005 2.84 90) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)
+ (net 11 "MIDI_RXD") (tstamp aab6351c-10d0-47d6-8345-2a0ae49e281d))
+ (model "${KISYS3DMOD}/Connector_Dsub.3dshapes/DSUB-15_Female_Horizontal_P2.77x2.84mm_EdgePinOffset7.70mm_Housed_MountingHolesOffset9.12mm.wrl"
+ (offset (xyz 0 0 0))
+ (scale (xyz 1 1 1))
+ (rotate (xyz 0 0 0))
+ )
+ )
+
+ (footprint "Resistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal" (layer "F.Cu")
+ (tedit 5AE5139B) (tstamp 00000000-0000-0000-0000-0000604bd736)
+ (at 85.217 87.63)
+ (descr "Resistor, Axial_DIN0204 series, Axial, Horizontal, pin pitch=7.62mm, 0.167W, length*diameter=3.6*1.6mm^2, http://cdn-reichelt.de/documents/datenblatt/B400/1_4W%23YAG.pdf")
+ (tags "Resistor Axial_DIN0204 series Axial Horizontal pin pitch 7.62mm 0.167W length 3.6mm diameter 1.6mm")
+ (path "/00000000-0000-0000-0000-0000604be4d6")
+ (attr through_hole)
+ (fp_text reference "R2" (at -1.905 0) (layer "F.SilkS")
+ (effects (font (size 1 1) (thickness 0.15)))
+ (tstamp 5082e480-2c17-49f0-bc73-bd4261550cbe)
+ )
+ (fp_text value "100k" (at 3.81 0) (layer "F.SilkS")
+ (effects (font (size 1 1) (thickness 0.15)))
+ (tstamp fbe9e7a1-8045-46ee-a1d2-f908bea8468b)
+ )
+ (fp_text user "${REFERENCE}" (at 3.81 0) (layer "F.Fab")
+ (effects (font (size 0.72 0.72) (thickness 0.108)))
+ (tstamp 4ba051eb-f958-450e-befd-c9efd3e4c8c2)
+ )
+ (fp_line (start 1.89 -0.92) (end 1.89 0.92) (layer "F.SilkS") (width 0.12) (tstamp 086cfb88-910d-40a0-b214-b52e7d71d934))
+ (fp_line (start 1.89 0.92) (end 5.73 0.92) (layer "F.SilkS") (width 0.12) (tstamp 0f7bcb75-4a48-4821-b446-12915ef2f351))
+ (fp_line (start 5.73 0.92) (end 5.73 -0.92) (layer "F.SilkS") (width 0.12) (tstamp 5885e1bb-3e6e-4ddb-80bb-d979173de8d5))
+ (fp_line (start 6.68 0) (end 5.73 0) (layer "F.SilkS") (width 0.12) (tstamp b3568e9b-c186-4e6e-a189-9307639b97ad))
+ (fp_line (start 5.73 -0.92) (end 1.89 -0.92) (layer "F.SilkS") (width 0.12) (tstamp e4235bbe-1e64-4127-a23d-3feb42063d1e))
+ (fp_line (start 0.94 0) (end 1.89 0) (layer "F.SilkS") (width 0.12) (tstamp fffd63ce-7342-4fd8-a299-6ba6b127aba1))
+ (fp_line (start 8.57 -1.05) (end -0.95 -1.05) (layer "F.CrtYd") (width 0.05) (tstamp 38eda70e-36b7-49dd-9541-db89f18e206d))
+ (fp_line (start -0.95 -1.05) (end -0.95 1.05) (layer "F.CrtYd") (width 0.05) (tstamp 8b63a6ae-92a9-4e4a-b411-d3778f014a26))
+ (fp_line (start -0.95 1.05) (end 8.57 1.05) (layer "F.CrtYd") (width 0.05) (tstamp ddb47b08-97c8-476b-9f85-d3d3dda62861))
+ (fp_line (start 8.57 1.05) (end 8.57 -1.05) (layer "F.CrtYd") (width 0.05) (tstamp ffa8f6de-c05f-4858-834e-766ce5ff32d1))
+ (fp_line (start 0 0) (end 2.01 0) (layer "F.Fab") (width 0.1) (tstamp 3ff92208-baa9-4a30-af73-f35a6621cb7d))
+ (fp_line (start 5.61 0.8) (end 5.61 -0.8) (layer "F.Fab") (width 0.1) (tstamp 6bb7318e-4fe7-4711-9c44-4e51cc39691f))
+ (fp_line (start 5.61 -0.8) (end 2.01 -0.8) (layer "F.Fab") (width 0.1) (tstamp 79c50160-98b0-4227-8bbe-cf8250f7defe))
+ (fp_line (start 2.01 -0.8) (end 2.01 0.8) (layer "F.Fab") (width 0.1) (tstamp 88e1d159-447c-4b74-a455-ec2b5593d238))
+ (fp_line (start 2.01 0.8) (end 5.61 0.8) (layer "F.Fab") (width 0.1) (tstamp c6e81ce5-37b7-444d-8c96-f842c922b712))
+ (fp_line (start 7.62 0) (end 5.61 0) (layer "F.Fab") (width 0.1) (tstamp d4a451ca-301f-4dab-9557-7408c8c62397))
+ (pad "1" thru_hole circle locked (at 0 0) (size 1.4 1.4) (drill 0.7) (layers *.Cu *.Mask)
+ (net 2 "GND") (tstamp e5348dfd-59e7-449d-8e63-e8652b3c1334))
+ (pad "2" thru_hole oval locked (at 7.62 0) (size 1.4 1.4) (drill 0.7) (layers *.Cu *.Mask)
+ (net 10 "AxisX_1") (tstamp ae4df27b-3530-49ec-8a36-c61d9e6cc158))
+ (model "${KISYS3DMOD}/Resistor_THT.3dshapes/R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal.wrl"
+ (offset (xyz 0 0 0))
+ (scale (xyz 1 1 1))
+ (rotate (xyz 0 0 0))
+ )
+ )
+
+ (footprint "Resistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal" (layer "F.Cu")
+ (tedit 5AE5139B) (tstamp 00000000-0000-0000-0000-0000604bd74d)
+ (at 92.837 89.916 180)
+ (descr "Resistor, Axial_DIN0204 series, Axial, Horizontal, pin pitch=7.62mm, 0.167W, length*diameter=3.6*1.6mm^2, http://cdn-reichelt.de/documents/datenblatt/B400/1_4W%23YAG.pdf")
+ (tags "Resistor Axial_DIN0204 series Axial Horizontal pin pitch 7.62mm 0.167W length 3.6mm diameter 1.6mm")
+ (path "/00000000-0000-0000-0000-0000604c20f3")
+ (attr through_hole)
+ (fp_text reference "R3" (at 9.525 0) (layer "F.SilkS")
+ (effects (font (size 1 1) (thickness 0.15)))
+ (tstamp 3030c04a-4786-4d49-9960-26b29f391324)
+ )
+ (fp_text value "100k" (at 3.81 0) (layer "F.SilkS")
+ (effects (font (size 1 1) (thickness 0.15)))
+ (tstamp 37327772-184c-4e65-baea-1611e3cb1746)
+ )
+ (fp_text user "${REFERENCE}" (at 3.81 0) (layer "F.Fab")
+ (effects (font (size 0.72 0.72) (thickness 0.108)))
+ (tstamp 20ec86cc-5c58-4b11-9922-b28e51b159f1)
+ )
+ (fp_line (start 1.89 0.92) (end 5.73 0.92) (layer "F.SilkS") (width 0.12) (tstamp 06a7921a-0b88-4193-a3e9-5cdad04ec0a0))
+ (fp_line (start 6.68 0) (end 5.73 0) (layer "F.SilkS") (width 0.12) (tstamp 0d388700-6285-4d85-bef0-44f6df9e9b4d))
+ (fp_line (start 5.73 -0.92) (end 1.89 -0.92) (layer "F.SilkS") (width 0.12) (tstamp 76c7b109-0a25-4139-8bb3-50dd612f4820))
+ (fp_line (start 5.73 0.92) (end 5.73 -0.92) (layer "F.SilkS") (width 0.12) (tstamp 905926df-8d25-4665-8fbc-2116de03dda2))
+ (fp_line (start 1.89 -0.92) (end 1.89 0.92) (layer "F.SilkS") (width 0.12) (tstamp c7338415-2202-4d53-a368-2cf80798588d))
+ (fp_line (start 0.94 0) (end 1.89 0) (layer "F.SilkS") (width 0.12) (tstamp de703829-07bc-4f83-8510-7133ec8383fc))
+ (fp_line (start 8.57 1.05) (end 8.57 -1.05) (layer "F.CrtYd") (width 0.05) (tstamp 084effc4-385a-4661-a929-006ffb048660))
+ (fp_line (start -0.95 1.05) (end 8.57 1.05) (layer "F.CrtYd") (width 0.05) (tstamp 1b233237-d896-41a7-b936-9018ed43d397))
+ (fp_line (start 8.57 -1.05) (end -0.95 -1.05) (layer "F.CrtYd") (width 0.05) (tstamp b056dda9-40a1-4309-873a-a626bc7b8b4d))
+ (fp_line (start -0.95 -1.05) (end -0.95 1.05) (layer "F.CrtYd") (width 0.05) (tstamp bc9f5ba6-8d30-4f0c-b54c-d771a41fc07a))
+ (fp_line (start 5.61 -0.8) (end 2.01 -0.8) (layer "F.Fab") (width 0.1) (tstamp 02664976-794d-40b6-8f84-9e5f5d3f040e))
+ (fp_line (start 0 0) (end 2.01 0) (layer "F.Fab") (width 0.1) (tstamp 180db2b9-1ab0-48b4-9de0-b2c4f80b1805))
+ (fp_line (start 2.01 0.8) (end 5.61 0.8) (layer "F.Fab") (width 0.1) (tstamp 40bb4fe1-7e66-44bd-9437-6694ab4baf0b))
+ (fp_line (start 2.01 -0.8) (end 2.01 0.8) (layer "F.Fab") (width 0.1) (tstamp 5864594b-d54b-4c9e-8d74-a35038ef06bc))
+ (fp_line (start 7.62 0) (end 5.61 0) (layer "F.Fab") (width 0.1) (tstamp 643f848e-925c-471b-8243-c2595b8af5a2))
+ (fp_line (start 5.61 0.8) (end 5.61 -0.8) (layer "F.Fab") (width 0.1) (tstamp 84be5cc7-4bcf-4572-a9b2-7173f8e0a4f1))
+ (pad "1" thru_hole circle locked (at 0 0 180) (size 1.4 1.4) (drill 0.7) (layers *.Cu *.Mask)
+ (net 9 "AxisY_1") (tstamp 99d9f2e0-5027-4b68-8174-676edce3146d))
+ (pad "2" thru_hole oval locked (at 7.62 0 180) (size 1.4 1.4) (drill 0.7) (layers *.Cu *.Mask)
+ (net 2 "GND") (tstamp 8e1250c3-8fca-4f85-a956-5c6701ee5b2b))
+ (model "${KISYS3DMOD}/Resistor_THT.3dshapes/R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal.wrl"
+ (offset (xyz 0 0 0))
+ (scale (xyz 1 1 1))
+ (rotate (xyz 0 0 0))
+ )
+ )
+
+ (footprint "Resistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal" (layer "F.Cu")
+ (tedit 5AE5139B) (tstamp 00000000-0000-0000-0000-0000604bd764)
+ (at 85.217 92.202)
+ (descr "Resistor, Axial_DIN0204 series, Axial, Horizontal, pin pitch=7.62mm, 0.167W, length*diameter=3.6*1.6mm^2, http://cdn-reichelt.de/documents/datenblatt/B400/1_4W%23YAG.pdf")
+ (tags "Resistor Axial_DIN0204 series Axial Horizontal pin pitch 7.62mm 0.167W length 3.6mm diameter 1.6mm")
+ (path "/00000000-0000-0000-0000-0000604c282a")
+ (attr through_hole)
+ (fp_text reference "R4" (at -1.905 0) (layer "F.SilkS")
+ (effects (font (size 1 1) (thickness 0.15)))
+ (tstamp a0c36e46-13d5-49fb-8af9-201b1c1d76e2)
+ )
+ (fp_text value "100k" (at 3.81 0) (layer "F.SilkS")
+ (effects (font (size 1 1) (thickness 0.15)))
+ (tstamp 207a7627-fddb-4e7d-ae2b-46039bfa2e33)
+ )
+ (fp_text user "${REFERENCE}" (at 3.81 0) (layer "F.Fab")
+ (effects (font (size 0.72 0.72) (thickness 0.108)))
+ (tstamp cd144e6e-b31a-41e5-a491-ff61563baf01)
+ )
+ (fp_line (start 0.94 0) (end 1.89 0) (layer "F.SilkS") (width 0.12) (tstamp 53815e5e-18d2-4aa2-9b7d-9f171c6c57d4))
+ (fp_line (start 6.68 0) (end 5.73 0) (layer "F.SilkS") (width 0.12) (tstamp 57cb94bc-9079-4720-afeb-3a4e0e295003))
+ (fp_line (start 5.73 -0.92) (end 1.89 -0.92) (layer "F.SilkS") (width 0.12) (tstamp 5a3928b2-3656-48e1-80d6-2cfd33e10fda))
+ (fp_line (start 1.89 -0.92) (end 1.89 0.92) (layer "F.SilkS") (width 0.12) (tstamp 7009e3bf-8375-43d7-8949-fd5f36a8c61a))
+ (fp_line (start 5.73 0.92) (end 5.73 -0.92) (layer "F.SilkS") (width 0.12) (tstamp 9d8c90b7-71ba-447f-b65f-b74358074215))
+ (fp_line (start 1.89 0.92) (end 5.73 0.92) (layer "F.SilkS") (width 0.12) (tstamp f6c68e1a-f0b8-4709-9aef-cd7f2ed122fa))
+ (fp_line (start -0.95 1.05) (end 8.57 1.05) (layer "F.CrtYd") (width 0.05) (tstamp 55a9d356-9a24-4ae0-9182-9c0a8e3cf90c))
+ (fp_line (start 8.57 1.05) (end 8.57 -1.05) (layer "F.CrtYd") (width 0.05) (tstamp 8b7382b2-674a-473a-9f4c-88c37d753512))
+ (fp_line (start -0.95 -1.05) (end -0.95 1.05) (layer "F.CrtYd") (width 0.05) (tstamp a87cc92d-2ed2-4551-b3dc-1d34e70211aa))
+ (fp_line (start 8.57 -1.05) (end -0.95 -1.05) (layer "F.CrtYd") (width 0.05) (tstamp f6f570fa-b1fe-4981-90cf-8b096cd13182))
+ (fp_line (start 0 0) (end 2.01 0) (layer "F.Fab") (width 0.1) (tstamp 155afc5a-b178-4128-82f1-883541ba5377))
+ (fp_line (start 5.61 0.8) (end 5.61 -0.8) (layer "F.Fab") (width 0.1) (tstamp 1a4a8537-5016-438b-bf0a-d22117959c2e))
+ (fp_line (start 7.62 0) (end 5.61 0) (layer "F.Fab") (width 0.1) (tstamp 35aca8ff-b215-4f3d-b075-6e9d90c38a70))
+ (fp_line (start 2.01 0.8) (end 5.61 0.8) (layer "F.Fab") (width 0.1) (tstamp 4de287e5-12a8-47d4-a60f-3edf2200be92))
+ (fp_line (start 2.01 -0.8) (end 2.01 0.8) (layer "F.Fab") (width 0.1) (tstamp cc52707d-0704-46eb-8768-a8f901b9a3c9))
+ (fp_line (start 5.61 -0.8) (end 2.01 -0.8) (layer "F.Fab") (width 0.1) (tstamp f59b60e5-0891-4148-928d-ba669fb25e3d))
+ (pad "1" thru_hole circle locked (at 0 0) (size 1.4 1.4) (drill 0.7) (layers *.Cu *.Mask)
+ (net 2 "GND") (tstamp ba1a44f9-99f2-42d6-bb01-227a92aa284e))
+ (pad "2" thru_hole oval locked (at 7.62 0) (size 1.4 1.4) (drill 0.7) (layers *.Cu *.Mask)
+ (net 5 "AxisY_2") (tstamp e99f1de5-2d72-4faf-b971-a352c8fdc872))
+ (model "${KISYS3DMOD}/Resistor_THT.3dshapes/R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal.wrl"
+ (offset (xyz 0 0 0))
+ (scale (xyz 1 1 1))
+ (rotate (xyz 0 0 0))
+ )
+ )
+
+ (footprint "Resistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal" (layer "F.Cu")
+ (tedit 5AE5139B) (tstamp 00000000-0000-0000-0000-0000604bf205)
+ (at 92.837 85.344 180)
+ (descr "Resistor, Axial_DIN0204 series, Axial, Horizontal, pin pitch=7.62mm, 0.167W, length*diameter=3.6*1.6mm^2, http://cdn-reichelt.de/documents/datenblatt/B400/1_4W%23YAG.pdf")
+ (tags "Resistor Axial_DIN0204 series Axial Horizontal pin pitch 7.62mm 0.167W length 3.6mm diameter 1.6mm")
+ (path "/00000000-0000-0000-0000-0000604bcfe5")
+ (attr through_hole)
+ (fp_text reference "R1" (at 9.525 0) (layer "F.SilkS")
+ (effects (font (size 1 1) (thickness 0.15)))
+ (tstamp 97053a21-0334-4893-9aa2-d6bd08eb9386)
+ )
+ (fp_text value "100k" (at 3.81 0) (layer "F.SilkS")
+ (effects (font (size 1 1) (thickness 0.15)))
+ (tstamp 4a7f271d-b122-4e97-aa1f-62ff56998b48)
+ )
+ (fp_text user "${REFERENCE}" (at 3.81 0) (layer "F.Fab")
+ (effects (font (size 0.72 0.72) (thickness 0.108)))
+ (tstamp 276ee1db-5f23-400b-a59d-e21c47b91514)
+ )
+ (fp_line (start 1.89 0.92) (end 5.73 0.92) (layer "F.SilkS") (width 0.12) (tstamp 0ca9eefc-b941-4bb4-aec8-8cae76afb1ac))
+ (fp_line (start 5.73 -0.92) (end 1.89 -0.92) (layer "F.SilkS") (width 0.12) (tstamp 44e30955-f064-4a84-a982-a797ee88f9d6))
+ (fp_line (start 0.94 0) (end 1.89 0) (layer "F.SilkS") (width 0.12) (tstamp 4ea4215d-e402-46e8-b0c0-7d4df3bb6024))
+ (fp_line (start 5.73 0.92) (end 5.73 -0.92) (layer "F.SilkS") (width 0.12) (tstamp 7b7f24d6-ede0-4582-af46-630f3753db30))
+ (fp_line (start 1.89 -0.92) (end 1.89 0.92) (layer "F.SilkS") (width 0.12) (tstamp 9d002c46-fc4c-4853-8535-ad87ae5d1a87))
+ (fp_line (start 6.68 0) (end 5.73 0) (layer "F.SilkS") (width 0.12) (tstamp cf1655d7-bbdb-4bfa-89b7-9fba439045b3))
+ (fp_line (start 8.57 -1.05) (end -0.95 -1.05) (layer "F.CrtYd") (width 0.05) (tstamp 0029ea89-7e9c-417a-b197-2fd9b6a11b70))
+ (fp_line (start -0.95 -1.05) (end -0.95 1.05) (layer "F.CrtYd") (width 0.05) (tstamp 909170e8-9132-4a94-97b9-4efb2f2096ac))
+ (fp_line (start -0.95 1.05) (end 8.57 1.05) (layer "F.CrtYd") (width 0.05) (tstamp c86b4667-f7ca-4e91-96ba-8e853ed4733f))
+ (fp_line (start 8.57 1.05) (end 8.57 -1.05) (layer "F.CrtYd") (width 0.05) (tstamp fdea55db-05e8-443c-807b-840c56283188))
+ (fp_line (start 2.01 0.8) (end 5.61 0.8) (layer "F.Fab") (width 0.1) (tstamp 16b4ed92-b880-4c2c-bd2b-e0578bda51da))
+ (fp_line (start 7.62 0) (end 5.61 0) (layer "F.Fab") (width 0.1) (tstamp 177e0ac8-88c2-4d1a-94a1-798dea9d3a89))
+ (fp_line (start 5.61 -0.8) (end 2.01 -0.8) (layer "F.Fab") (width 0.1) (tstamp 1cb9bde2-6c91-4da6-a07f-276f80001212))
+ (fp_line (start 5.61 0.8) (end 5.61 -0.8) (layer "F.Fab") (width 0.1) (tstamp 4f964b0e-2c01-4173-9958-6578f4f40007))
+ (fp_line (start 0 0) (end 2.01 0) (layer "F.Fab") (width 0.1) (tstamp e71ab7c9-8392-4c26-b56a-63ac005700a3))
+ (fp_line (start 2.01 -0.8) (end 2.01 0.8) (layer "F.Fab") (width 0.1) (tstamp fd1153ae-620a-424c-86a0-72680e565b3b))
+ (pad "1" thru_hole circle locked (at 0 0 180) (size 1.4 1.4) (drill 0.7) (layers *.Cu *.Mask)
+ (net 7 "AxisX_2") (tstamp 451b3786-1402-4b9d-ae61-8e6923532f37))
+ (pad "2" thru_hole oval locked (at 7.62 0 180) (size 1.4 1.4) (drill 0.7) (layers *.Cu *.Mask)
+ (net 2 "GND") (tstamp 2791172f-3dc5-4c80-934a-ea621f478e96))
+ (model "${KISYS3DMOD}/Resistor_THT.3dshapes/R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal.wrl"
+ (offset (xyz 0 0 0))
+ (scale (xyz 1 1 1))
+ (rotate (xyz 0 0 0))
+ )
+ )
+
+ (footprint "Symbol:OSHW-Symbol_6.7x6mm_Copper" (layer "F.Cu")
+ (tedit 6065E847) (tstamp 00000000-0000-0000-0000-00006065ed26)
+ (at 90.932 75.184)
+ (descr "Open Source Hardware Symbol")
+ (tags "Logo Symbol OSHW")
+ (attr exclude_from_pos_files exclude_from_bom)
+ (fp_text reference "REF**" (at 0 0) (layer "F.SilkS") hide
+ (effects (font (size 1 1) (thickness 0.15)))
+ (tstamp 424bd26f-4ff6-4fe3-b3d0-bd31c2f63992)
+ )
+ (fp_text value "OSHW-Symbol_6.7x6mm_Copper" (at 0.75 0) (layer "F.Fab") hide
+ (effects (font (size 1 1) (thickness 0.15)))
+ (tstamp 666e1d65-dbc7-4779-88ae-5eff529fb71e)
+ )
+ (fp_poly (pts
+ (xy 0.555814 -2.531069)
+ (xy 0.639635 -2.086445)
+ (xy 0.94892 -1.958947)
+ (xy 1.258206 -1.831449)
+ (xy 1.629246 -2.083754)
+ (xy 1.733157 -2.154004)
+ (xy 1.827087 -2.216728)
+ (xy 1.906652 -2.269062)
+ (xy 1.96747 -2.308143)
+ (xy 2.005157 -2.331107)
+ (xy 2.015421 -2.336058)
+ (xy 2.03391 -2.323324)
+ (xy 2.07342 -2.288118)
+ (xy 2.129522 -2.234938)
+ (xy 2.197787 -2.168282)
+ (xy 2.273786 -2.092646)
+ (xy 2.353092 -2.012528)
+ (xy 2.431275 -1.932426)
+ (xy 2.503907 -1.856836)
+ (xy 2.566559 -1.790255)
+ (xy 2.614803 -1.737182)
+ (xy 2.64421 -1.702113)
+ (xy 2.651241 -1.690377)
+ (xy 2.641123 -1.66874)
+ (xy 2.612759 -1.621338)
+ (xy 2.569129 -1.552807)
+ (xy 2.513218 -1.467785)
+ (xy 2.448006 -1.370907)
+ (xy 2.410219 -1.31565)
+ (xy 2.341343 -1.214752)
+ (xy 2.28014 -1.123701)
+ (xy 2.229578 -1.04703)
+ (xy 2.192628 -0.989272)
+ (xy 2.172258 -0.954957)
+ (xy 2.169197 -0.947746)
+ (xy 2.176136 -0.927252)
+ (xy 2.195051 -0.879487)
+ (xy 2.223087 -0.811168)
+ (xy 2.257391 -0.729011)
+ (xy 2.295109 -0.63973)
+ (xy 2.333387 -0.550042)
+ (xy 2.36937 -0.466662)
+ (xy 2.400206 -0.396306)
+ (xy 2.423039 -0.34569)
+ (xy 2.435017 -0.321529)
+ (xy 2.435724 -0.320578)
+ (xy 2.454531 -0.315964)
+ (xy 2.504618 -0.305672)
+ (xy 2.580793 -0.290713)
+ (xy 2.677865 -0.272099)
+ (xy 2.790643 -0.250841)
+ (xy 2.856442 -0.238582)
+ (xy 2.97695 -0.215638)
+ (xy 3.085797 -0.193805)
+ (xy 3.177476 -0.174278)
+ (xy 3.246481 -0.158252)
+ (xy 3.287304 -0.146921)
+ (xy 3.295511 -0.143326)
+ (xy 3.303548 -0.118994)
+ (xy 3.310033 -0.064041)
+ (xy 3.31497 0.015108)
+ (xy 3.318364 0.112026)
+ (xy 3.320218 0.220287)
+ (xy 3.320538 0.333465)
+ (xy 3.319327 0.445135)
+ (xy 3.31659 0.548868)
+ (xy 3.312331 0.638241)
+ (xy 3.306555 0.706826)
+ (xy 3.299267 0.748197)
+ (xy 3.294895 0.75681)
+ (xy 3.268764 0.767133)
+ (xy 3.213393 0.781892)
+ (xy 3.136107 0.799352)
+ (xy 3.04423 0.81778)
+ (xy 3.012158 0.823741)
+ (xy 2.857524 0.852066)
+ (xy 2.735375 0.874876)
+ (xy 2.641673 0.89308)
+ (xy 2.572384 0.907583)
+ (xy 2.523471 0.919292)
+ (xy 2.490897 0.929115)
+ (xy 2.470628 0.937956)
+ (xy 2.458626 0.946724)
+ (xy 2.456947 0.948457)
+ (xy 2.440184 0.976371)
+ (xy 2.414614 1.030695)
+ (xy 2.382788 1.104777)
+ (xy 2.34726 1.191965)
+ (xy 2.310583 1.285608)
+ (xy 2.275311 1.379052)
+ (xy 2.243996 1.465647)
+ (xy 2.219193 1.53874)
+ (xy 2.203454 1.591678)
+ (xy 2.199332 1.617811)
+ (xy 2.199676 1.618726)
+ (xy 2.213641 1.640086)
+ (xy 2.245322 1.687084)
+ (xy 2.291391 1.754827)
+ (xy 2.348518 1.838423)
+ (xy 2.413373 1.932982)
+ (xy 2.431843 1.959854)
+ (xy 2.497699 2.057275)
+ (xy 2.55565 2.146163)
+ (xy 2.602538 2.221412)
+ (xy 2.635207 2.27792)
+ (xy 2.6505 2.310581)
+ (xy 2.651241 2.314593)
+ (xy 2.638392 2.335684)
+ (xy 2.602888 2.377464)
+ (xy 2.549293 2.435445)
+ (xy 2.482171 2.505135)
+ (xy 2.406087 2.582045)
+ (xy 2.325604 2.661683)
+ (xy 2.245287 2.739561)
+ (xy 2.169699 2.811186)
+ (xy 2.103405 2.87207)
+ (xy 2.050969 2.917721)
+ (xy 2.016955 2.94365)
+ (xy 2.007545 2.947883)
+ (xy 1.985643 2.937912)
+ (xy 1.9408 2.91102)
+ (xy 1.880321 2.871736)
+ (xy 1.833789 2.840117)
+ (xy 1.749475 2.782098)
+ (xy 1.649626 2.713784)
+ (xy 1.549473 2.645579)
+ (xy 1.495627 2.609075)
+ (xy 1.313371 2.4858)
+ (xy 1.160381 2.56852)
+ (xy 1.090682 2.604759)
+ (xy 1.031414 2.632926)
+ (xy 0.991311 2.648991)
+ (xy 0.981103 2.651226)
+ (xy 0.968829 2.634722)
+ (xy 0.944613 2.588082)
+ (xy 0.910263 2.515609)
+ (xy 0.867588 2.421606)
+ (xy 0.818394 2.310374)
+ (xy 0.76449 2.186215)
+ (xy 0.707684 2.053432)
+ (xy 0.649782 1.916327)
+ (xy 0.592593 1.779202)
+ (xy 0.537924 1.646358)
+ (xy 0.487584 1.522098)
+ (xy 0.44338 1.410725)
+ (xy 0.407119 1.316539)
+ (xy 0.380609 1.243844)
+ (xy 0.365658 1.196941)
+ (xy 0.363254 1.180833)
+ (xy 0.382311 1.160286)
+ (xy 0.424036 1.126933)
+ (xy 0.479706 1.087702)
+ (xy 0.484378 1.084599)
+ (xy 0.628264 0.969423)
+ (xy 0.744283 0.835053)
+ (xy 0.83143 0.685784)
+ (xy 0.888699 0.525913)
+ (xy 0.915086 0.359737)
+ (xy 0.909585 0.191552)
+ (xy 0.87119 0.025655)
+ (xy 0.798895 -0.133658)
+ (xy 0.777626 -0.168513)
+ (xy 0.666996 -0.309263)
+ (xy 0.536302 -0.422286)
+ (xy 0.390064 -0.506997)
+ (xy 0.232808 -0.562806)
+ (xy 0.069057 -0.589126)
+ (xy -0.096667 -0.58537)
+ (xy -0.259838 -0.55095)
+ (xy -0.415935 -0.485277)
+ (xy -0.560433 -0.387765)
+ (xy -0.605131 -0.348187)
+ (xy -0.718888 -0.224297)
+ (xy -0.801782 -0.093876)
+ (xy -0.858644 0.052315)
+ (xy -0.890313 0.197088)
+ (xy -0.898131 0.35986)
+ (xy -0.872062 0.52344)
+ (xy -0.814755 0.682298)
+ (xy -0.728856 0.830906)
+ (xy -0.617014 0.963735)
+ (xy -0.481877 1.075256)
+ (xy -0.464117 1.087011)
+ (xy -0.40785 1.125508)
+ (xy -0.365077 1.158863)
+ (xy -0.344628 1.18016)
+ (xy -0.344331 1.180833)
+ (xy -0.348721 1.203871)
+ (xy -0.366124 1.256157)
+ (xy -0.394732 1.33339)
+ (xy -0.432735 1.431268)
+ (xy -0.478326 1.545491)
+ (xy -0.529697 1.671758)
+ (xy -0.585038 1.805767)
+ (xy -0.642542 1.943218)
+ (xy -0.700399 2.079808)
+ (xy -0.756802 2.211237)
+ (xy -0.809942 2.333205)
+ (xy -0.85801 2.441409)
+ (xy -0.899199 2.531549)
+ (xy -0.931699 2.599323)
+ (xy -0.953703 2.64043)
+ (xy -0.962564 2.651226)
+ (xy -0.98964 2.642819)
+ (xy -1.040303 2.620272)
+ (xy -1.105817 2.587613)
+ (xy -1.141841 2.56852)
+ (xy -1.294832 2.4858)
+ (xy -1.477088 2.609075)
+ (xy -1.570125 2.672228)
+ (xy -1.671985 2.741727)
+ (xy -1.767438 2.807165)
+ (xy -1.81525 2.840117)
+ (xy -1.882495 2.885273)
+ (xy -1.939436 2.921057)
+ (xy -1.978646 2.942938)
+ (xy -1.991381 2.947563)
+ (xy -2.009917 2.935085)
+ (xy -2.050941 2.900252)
+ (xy -2.110475 2.846678)
+ (xy -2.184542 2.777983)
+ (xy -2.269165 2.697781)
+ (xy -2.322685 2.646286)
+ (xy -2.416319 2.554286)
+ (xy -2.497241 2.471999)
+ (xy -2.562177 2.402945)
+ (xy -2.607858 2.350644)
+ (xy -2.631011 2.318616)
+ (xy -2.633232 2.312116)
+ (xy -2.622924 2.287394)
+ (xy -2.594439 2.237405)
+ (xy -2.550937 2.167212)
+ (xy -2.495577 2.081875)
+ (xy -2.43152 1.986456)
+ (xy -2.413303 1.959854)
+ (xy -2.346927 1.863167)
+ (xy -2.287378 1.776117)
+ (xy -2.237984 1.703595)
+ (xy -2.202075 1.650493)
+ (xy -2.182981 1.621703)
+ (xy -2.181136 1.618726)
+ (xy -2.183895 1.595782)
+ (xy -2.198538 1.545336)
+ (xy -2.222513 1.474041)
+ (xy -2.253266 1.388547)
+ (xy -2.288244 1.295507)
+ (xy -2.324893 1.201574)
+ (xy -2.360661 1.113399)
+ (xy -2.392994 1.037634)
+ (xy -2.419338 0.980931)
+ (xy -2.437142 0.949943)
+ (xy -2.438407 0.948457)
+ (xy -2.449294 0.939601)
+ (xy -2.467682 0.930843)
+ (xy -2.497606 0.921277)
+ (xy -2.543103 0.909996)
+ (xy -2.608209 0.896093)
+ (xy -2.696961 0.878663)
+ (xy -2.813393 0.856798)
+ (xy -2.961542 0.829591)
+ (xy -2.993618 0.823741)
+ (xy -3.088686 0.805374)
+ (xy -3.171565 0.787405)
+ (xy -3.23493 0.771569)
+ (xy -3.271458 0.7596)
+ (xy -3.276356 0.75681)
+ (xy -3.284427 0.732072)
+ (xy -3.290987 0.67679)
+ (xy -3.296033 0.597389)
+ (xy -3.299559 0.500296)
+ (xy -3.301561 0.391938)
+ (xy -3.302036 0.27874)
+ (xy -3.300977 0.167128)
+ (xy -3.298382 0.063529)
+ (xy -3.294246 -0.025632)
+ (xy -3.288563 -0.093928)
+ (xy -3.281331 -0.134934)
+ (xy -3.276971 -0.143326)
+ (xy -3.252698 -0.151792)
+ (xy -3.197426 -0.165565)
+ (xy -3.116662 -0.18345)
+ (xy -3.015912 -0.204252)
+ (xy -2.900683 -0.226777)
+ (xy -2.837902 -0.238582)
+ (xy -2.718787 -0.260849)
+ (xy -2.612565 -0.281021)
+ (xy -2.524427 -0.298085)
+ (xy -2.459566 -0.311031)
+ (xy -2.423174 -0.318845)
+ (xy -2.417184 -0.320578)
+ (xy -2.407061 -0.34011)
+ (xy -2.385662 -0.387157)
+ (xy -2.355839 -0.454997)
+ (xy -2.320445 -0.536909)
+ (xy -2.282332 -0.626172)
+ (xy -2.244353 -0.716065)
+ (xy -2.20936 -0.799865)
+ (xy -2.180206 -0.870853)
+ (xy -2.159743 -0.922306)
+ (xy -2.150823 -0.947503)
+ (xy -2.150657 -0.948604)
+ (xy -2.160769 -0.968481)
+ (xy -2.189117 -1.014223)
+ (xy -2.232723 -1.081283)
+ (xy -2.288606 -1.165116)
+ (xy -2.353787 -1.261174)
+ (xy -2.391679 -1.31635)
+ (xy -2.460725 -1.417519)
+ (xy -2.52205 -1.50937)
+ (xy -2.572663 -1.587256)
+ (xy -2.609571 -1.646531)
+ (xy -2.629782 -1.682549)
+ (xy -2.632701 -1.690623)
+ (xy -2.620153 -1.709416)
+ (xy -2.585463 -1.749543)
+ (xy -2.533063 -1.806507)
+ (xy -2.467384 -1.875815)
+ (xy -2.392856 -1.952969)
+ (xy -2.313913 -2.033475)
+ (xy -2.234983 -2.112837)
+ (xy -2.1605 -2.18656)
+ (xy -2.094894 -2.250148)
+ (xy -2.042596 -2.299106)
+ (xy -2.008039 -2.328939)
+ (xy -1.996478 -2.336058)
+ (xy -1.977654 -2.326047)
+ (xy -1.932631 -2.297922)
+ (xy -1.865787 -2.254546)
+ (xy -1.781499 -2.198782)
+ (xy -1.684144 -2.133494)
+ (xy -1.610707 -2.083754)
+ (xy -1.239667 -1.831449)
+ (xy -0.621095 -2.086445)
+ (xy -0.537275 -2.531069)
+ (xy -0.453454 -2.975693)
+ (xy 0.471994 -2.975693)
+ (xy 0.555814 -2.531069)
+ ) (layer "F.Mask") (width 0.01) (fill solid) (tstamp d48fe4b0-9557-4526-a0c9-3d262c926bd7))
+ )
+
+ (footprint "Package_DIP:DIP-24_W15.24mm_Socket" (layer "F.Cu")
+ (tedit 5A02E8C5) (tstamp 00000000-0000-0000-0000-0000607e8134)
+ (at 80.137 96.393 90)
+ (descr "24-lead though-hole mounted DIP package, row spacing 15.24 mm (600 mils), Socket")
+ (tags "THT DIP DIL PDIP 2.54mm 15.24mm 600mil Socket")
+ (path "/00000000-0000-0000-0000-00005ff74419")
+ (attr through_hole)
+ (fp_text reference "U1" (at 7.874 0.635 90) (layer "F.SilkS")
+ (effects (font (size 1 1) (thickness 0.15)))
+ (tstamp f6097d68-5e04-4f02-96cb-cf4d53efccbd)
+ )
+ (fp_text value "Arduino_Pro_Micro" (at 7.874 21.336 180) (layer "F.SilkS")
+ (effects (font (size 1 1) (thickness 0.15)))
+ (tstamp 0f053bc8-f66e-4941-9411-4d844da7ff15)
+ )
+ (fp_text user "${REFERENCE}" (at 7.62 2.794 90) (layer "F.Fab") hide
+ (effects (font (size 1 1) (thickness 0.15)))
+ (tstamp c68b69cf-7749-4212-bd62-9ac6b91c285f)
+ )
+ (fp_line (start 1.16 29.27) (end 14.08 29.27) (layer "F.SilkS") (width 0.12) (tstamp 3ac7581f-d1ee-46e8-b0bb-b332c160a45d))
+ (fp_line (start -1.33 -1.39) (end -1.33 29.33) (layer "F.SilkS") (width 0.12) (tstamp 5c1b52e2-f449-4064-bd71-211dc9a38774))
+ (fp_line (start 1.16 -1.33) (end 1.16 29.27) (layer "F.SilkS") (width 0.12) (tstamp 8d9f621a-89e8-41ad-bd9d-0b6e28a1f131))
+ (fp_line (start -1.33 29.33) (end 16.57 29.33) (layer "F.SilkS") (width 0.12) (tstamp 9bd59043-c756-468f-9bb3-64a6f858cbca))
+ (fp_line (start 6.62 -1.33) (end 1.16 -1.33) (layer "F.SilkS") (width 0.12) (tstamp ab9a598f-8302-4532-92a9-0d14db317fec))
+ (fp_line (start 14.08 29.27) (end 14.08 -1.33) (layer "F.SilkS") (width 0.12) (tstamp c4529e45-8da2-4c5a-9331-be04310f64ea))
+ (fp_line (start 14.08 -1.33) (end 8.62 -1.33) (layer "F.SilkS") (width 0.12) (tstamp c710a187-390d-436f-b5db-2e1d0490c614))
+ (fp_line (start 16.57 -1.39) (end -1.33 -1.39) (layer "F.SilkS") (width 0.12) (tstamp ead4395a-8372-4875-ad4c-bf6c6f976d9d))
+ (fp_line (start 16.57 29.33) (end 16.57 -1.39) (layer "F.SilkS") (width 0.12) (tstamp ebab5422-3e40-4758-89c8-586defabec7d))
+ (fp_arc (start 8.62 -1.33) (mid 7.62 -0.33) (end 6.62 -1.33) (layer "F.SilkS") (width 0.12) (tstamp bd781b41-65b9-49ec-bbd2-093e904cd6d7))
+ (fp_line (start -1.55 -1.6) (end -1.55 29.55) (layer "F.CrtYd") (width 0.05) (tstamp 66c9deff-e631-4a2f-b528-9bc8c7ad163e))
+ (fp_line (start 16.8 -1.6) (end -1.55 -1.6) (layer "F.CrtYd") (width 0.05) (tstamp d9272527-b863-40f6-85e9-ca73f9fef30f))
+ (fp_line (start 16.8 29.55) (end 16.8 -1.6) (layer "F.CrtYd") (width 0.05) (tstamp f3708cee-f5bd-44aa-b472-07a915efc0c2))
+ (fp_line (start -1.55 29.55) (end 16.8 29.55) (layer "F.CrtYd") (width 0.05) (tstamp fbbfc30f-6141-4df7-8ecd-432ab9b85c72))
+ (fp_line (start 16.51 -1.33) (end -1.27 -1.33) (layer "F.Fab") (width 0.1) (tstamp 0a348a66-27e7-45ec-a144-5b3379bad74b))
+ (fp_line (start -1.27 29.27) (end 16.51 29.27) (layer "F.Fab") (width 0.1) (tstamp 1bf96802-1390-4cae-8b27-1f3fddbee1e9))
+ (fp_line (start 16.51 29.27) (end 16.51 -1.33) (layer "F.Fab") (width 0.1) (tstamp 660c9c70-3f4c-4c9d-b320-31287ee0c7a0))
+ (fp_line (start 14.985 -1.27) (end 14.985 29.21) (layer "F.Fab") (width 0.1) (tstamp 8832aa45-2920-4a07-a7a4-244d907bd5ac))
+ (fp_line (start 1.255 -1.27) (end 14.985 -1.27) (layer "F.Fab") (width 0.1) (tstamp 915414dc-0bcb-47b5-9753-525c09059508))
+ (fp_line (start -1.27 -1.33) (end -1.27 29.27) (layer "F.Fab") (width 0.1) (tstamp 9a2647ae-d048-41d0-9ecc-c452a96999b4))
+ (fp_line (start 0.255 -0.27) (end 1.255 -1.27) (layer "F.Fab") (width 0.1) (tstamp a444209f-4069-4b4b-ab1d-43299004efdb))
+ (fp_line (start 14.985 29.21) (end 0.255 29.21) (layer "F.Fab") (width 0.1) (tstamp a4d28e21-247e-4a85-bc84-e1e10e569a18))
+ (fp_line (start 0.255 29.21) (end 0.255 -0.27) (layer "F.Fab") (width 0.1) (tstamp ec39692a-0f10-496f-890b-9ba400b5e957))
+ (pad "1" thru_hole rect locked (at 0 0 90) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask) (tstamp 6dba7a6d-b9a3-45c8-9669-0dd4042a4435))
+ (pad "2" thru_hole oval locked (at 0 2.54 90) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask) (tstamp 7cf6ffbf-f48c-4517-9add-c5d122de743e))
+ (pad "3" thru_hole oval locked (at 0 5.08 90) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 2 "GND") (tstamp b28d93f1-0de5-43ee-89ab-a6990da2703d))
+ (pad "4" thru_hole oval locked (at 0 7.62 90) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 2 "GND") (tstamp 3ebdfebc-f220-43f2-b785-64076ce4d71b))
+ (pad "5" thru_hole oval locked (at 0 10.16 90) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask) (tstamp 101eda74-58af-4883-9afd-36ab74c1a122))
+ (pad "6" thru_hole oval locked (at 0 12.7 90) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask) (tstamp 0437c49a-7107-4a6c-aa3f-171c02c78e31))
+ (pad "7" thru_hole oval locked (at 0 15.24 90) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 5 "AxisY_2") (tstamp bf1223bd-23f8-4c71-b946-9a22e11ff61c))
+ (pad "8" thru_hole oval locked (at 0 17.78 90) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 12 "MIDI_TXD") (tstamp d8deb3e3-6d6f-4def-8b08-e43b1a1ce3f0))
+ (pad "9" thru_hole oval locked (at 0 20.32 90) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 9 "AxisY_1") (tstamp 2209e2c9-e614-4f11-9503-286b6301741b))
+ (pad "10" thru_hole oval locked (at 0 22.86 90) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 3 "Button_4") (tstamp 93f4566b-119d-4b8b-9147-e53c152f1114))
+ (pad "11" thru_hole oval locked (at 0 25.4 90) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 6 "Button_2") (tstamp 30c9a48a-bf1e-4f91-b484-bccc29047202))
+ (pad "12" thru_hole oval locked (at 0 27.94 90) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 11 "MIDI_RXD") (tstamp ba517919-6de4-40cb-9c7e-bf847cc359aa))
+ (pad "13" thru_hole oval locked (at 15.24 27.94 90) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 8 "Button_1") (tstamp e940155f-383f-4f2e-8fb1-9a3139a131ed))
+ (pad "14" thru_hole oval locked (at 15.24 25.4 90) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 4 "Button_3") (tstamp 20b0808c-84b2-42d7-a767-3a84af5927b2))
+ (pad "15" thru_hole oval locked (at 15.24 22.86 90) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 15 "SW1") (tstamp 76eaaadd-ec54-462c-a16f-e7040a069491))
+ (pad "16" thru_hole oval locked (at 15.24 20.32 90) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 14 "SW2") (tstamp a5a3a90e-1af5-454f-8dd5-cce4d5c39f00))
+ (pad "17" thru_hole oval locked (at 15.24 17.78 90) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 10 "AxisX_1") (tstamp 3124f7b7-59b3-4983-916c-2aae1a3baeb1))
+ (pad "18" thru_hole oval locked (at 15.24 15.24 90) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 7 "AxisX_2") (tstamp ffd1e9a8-d3ae-44b3-b953-e3253dc450ad))
+ (pad "19" thru_hole oval locked (at 15.24 12.7 90) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 13 "SW3") (tstamp 3c5d0cae-a70d-4ff8-a7a1-06d40d12ae3f))
+ (pad "20" thru_hole oval locked (at 15.24 10.16 90) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 16 "SW4") (tstamp b5cdc77a-e176-4e82-bdb5-54055b918fc2))
+ (pad "21" thru_hole oval locked (at 15.24 7.62 90) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 1 "VCC") (tstamp 256e1884-0739-4ddd-85b2-a82bf124e432))
+ (pad "22" thru_hole oval locked (at 15.24 5.08 90) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask) (tstamp d9710715-97cb-4919-8c2d-32c3d3446bed))
+ (pad "23" thru_hole oval locked (at 15.24 2.54 90) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 2 "GND") (tstamp 8cbf95fe-6c12-4595-9191-f1b5848df9d0))
+ (pad "24" thru_hole oval locked (at 15.24 0 90) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask) (tstamp 5cce038d-7526-4d4a-bb1f-32cd287801f7))
+ (model "${KISYS3DMOD}/Package_DIP.3dshapes/DIP-24_W15.24mm_Socket.wrl"
+ (offset (xyz 0 0 0))
+ (scale (xyz 1 1 1))
+ (rotate (xyz 0 0 0))
+ )
+ )
+
+ (footprint "Button_Switch_THT:SW_DIP_SPSTx04_Slide_9.78x12.34mm_W7.62mm_P2.54mm" (layer "F.Cu")
+ (tedit 5A4E1404) (tstamp 00000000-0000-0000-0000-000060871cfc)
+ (at 105.664 70.231 -90)
+ (descr "4x-dip-switch SPST , Slide, row spacing 7.62 mm (300 mils), body size 9.78x12.34mm (see e.g. https://www.ctscorp.com/wp-content/uploads/206-208.pdf)")
+ (tags "DIP Switch SPST Slide 7.62mm 300mil")
+ (path "/00000000-0000-0000-0000-00005ff7e601")
+ (attr through_hole)
+ (fp_text reference "SW1" (at 3.429 -3.302 90) (layer "F.SilkS")
+ (effects (font (size 1 1) (thickness 0.15)))
+ (tstamp d23fd32f-0ab4-4987-9f7a-15c05767056d)
+ )
+ (fp_text value "SW_DIP_x04" (at 3.81 11.04 90) (layer "F.Fab")
+ (effects (font (size 1 1) (thickness 0.15)))
+ (tstamp 5f7462dc-2924-4d28-916b-5edd94bd6631)
+ )
+ (fp_text user "${REFERENCE}" (at 7.27 3.81) (layer "F.Fab")
+ (effects (font (size 0.8 0.8) (thickness 0.12)))
+ (tstamp 1094ea1b-e908-4026-9040-4cc03b5a0f40)
+ )
+ (fp_text user "on" (at 5.365 -1.4975 90) (layer "F.Fab")
+ (effects (font (size 0.8 0.8) (thickness 0.12)))
+ (tstamp 223a181e-7fed-4194-ab99-10ad6873cde7)
+ )
+ (fp_line (start 1.78 7.225) (end 3.133333 7.225) (layer "F.SilkS") (width 0.12) (tstamp 00a94c0a-3c0d-41b0-a8e0-a0c8d66673c1))
+ (fp_line (start 1.78 0.085) (end 3.133333 0.085) (layer "F.SilkS") (width 0.12) (tstamp 034cfc56-bd9e-483f-bd19-1e451f694d6d))
+ (fp_line (start 1.78 7.105) (end 3.133333 7.105) (layer "F.SilkS") (width 0.12) (tstamp 10ee7950-45f9-4cc5-820e-53f1ce42e1fa))
+ (fp_line (start 1.78 0.445) (end 3.133333 0.445) (layer "F.SilkS") (width 0.12) (tstamp 124c11f7-22f2-491f-8956-0791a492b208))
+ (fp_line (start 1.78 5.525) (end 3.133333 5.525) (layer "F.SilkS") (width 0.12) (tstamp 1409b59a-1008-4b01-8636-b87e76a6ec3f))
+ (fp_line (start 1.78 -0.035) (end 3.133333 -0.035) (layer "F.SilkS") (width 0.12) (tstamp 1a119e5e-3d64-43a8-8f33-63afe647bb60))
+ (fp_line (start 1.78 5.405) (end 3.133333 5.405) (layer "F.SilkS") (width 0.12) (tstamp 1c79503f-34ec-41fe-aa13-6d8d5ba03249))
+ (fp_line (start 3.133333 1.905) (end 3.133333 3.175) (layer "F.SilkS") (width 0.12) (tstamp 23a229ed-fc50-43b8-9679-b3239e5be8a3))
+ (fp_line (start 5.84 4.445) (end 1.78 4.445) (layer "F.SilkS") (width 0.12) (tstamp 2bbeccfe-b66f-4806-a8da-b5f7233cb062))
+ (fp_line (start 1.78 2.745) (end 3.133333 2.745) (layer "F.SilkS") (width 0.12) (tstamp 2c819e14-5bd1-41ca-9582-fc2ea278d953))
+ (fp_line (start 1.78 -0.155) (end 3.133333 -0.155) (layer "F.SilkS") (width 0.12) (tstamp 2c99a0e1-9d07-461d-8eea-fe3c633bdf25))
+ (fp_line (start 1.78 5.645) (end 3.133333 5.645) (layer "F.SilkS") (width 0.12) (tstamp 2ca70693-6605-4782-b27d-91b7ffa3bebc))
+ (fp_line (start 1.78 2.025) (end 3.133333 2.025) (layer "F.SilkS") (width 0.12) (tstamp 33342e93-46b7-47ea-9f02-72fb6c25041b))
+ (fp_line (start -1.14 -2.42) (end 8.76 -2.42) (layer "F.SilkS") (width 0.12) (tstamp 33e915a7-d476-4d2d-8aae-36ae754cd6e4))
+ (fp_line (start 1.78 0.205) (end 3.133333 0.205) (layer "F.SilkS") (width 0.12) (tstamp 36616b59-ef94-459c-9045-c045bd0c9a3d))
+ (fp_line (start 1.78 6.985) (end 1.78 8.255) (layer "F.SilkS") (width 0.12) (tstamp 3e475829-7af3-4bcb-8d68-da42d260e1ab))
+ (fp_line (start 1.78 4.685) (end 3.133333 4.685) (layer "F.SilkS") (width 0.12) (tstamp 45d44958-85d4-4a65-966f-ca7220f7d41b))
+ (fp_line (start 3.133333 6.985) (end 3.133333 8.255) (layer "F.SilkS") (width 0.12) (tstamp 49b9d810-1743-4f45-9869-951e48abb733))
+ (fp_line (start 1.78 -0.515) (end 3.133333 -0.515) (layer "F.SilkS") (width 0.12) (tstamp 4b3b03a4-1b37-412d-bd03-414c97191da0))
+ (fp_line (start 5.84 0.635) (end 5.84 -0.635) (layer "F.SilkS") (width 0.12) (tstamp 4ff01534-0db0-4444-8fcd-2b73b17a4f08))
+ (fp_line (start 1.78 7.945) (end 3.133333 7.945) (layer "F.SilkS") (width 0.12) (tstamp 53be31d3-9e2b-42a3-8202-041a470c887a))
+ (fp_line (start -1.38 -2.66) (end -1.38 -1.277) (layer "F.SilkS") (width 0.12) (tstamp 56dfe44e-0f6b-4f65-a69e-9b77032b94b0))
+ (fp_line (start 1.78 5.285) (end 3.133333 5.285) (layer "F.SilkS") (width 0.12) (tstamp 5777e006-f79f-4fa2-9a60-fdbded1a06e3))
+ (fp_line (start 1.78 2.385) (end 3.133333 2.385) (layer "F.SilkS") (width 0.12) (tstamp 5bc804ea-c837-48ff-b59e-8482ce6bce5a))
+ (fp_line (start 8.76 -2.42) (end 8.76 10.04) (layer "F.SilkS") (width 0.12) (tstamp 62e9f1dd-3e55-4737-b3a5-d2f64c7e7515))
+ (fp_line (start 1.78 4.805) (end 3.133333 4.805) (layer "F.SilkS") (width 0.12) (tstamp 6649123c-9439-470d-bf72-e177ba56bc6b))
+ (fp_line (start 1.78 7.345) (end 3.133333 7.345) (layer "F.SilkS") (width 0.12) (tstamp 6828ad46-c14f-4c0a-bd89-3d196a8f1623))
+ (fp_line (start 1.78 3.175) (end 5.84 3.175) (layer "F.SilkS") (width 0.12) (tstamp 6cf13531-7c54-490c-8b45-0939f2e0e012))
+ (fp_line (start -1.14 -2.42) (end -1.14 10.04) (layer "F.SilkS") (width 0.12) (tstamp 6d1b3399-e4c3-4f0a-9005-7afbd4904b5c))
+ (fp_line (start 1.78 5.045) (end 3.133333 5.045) (layer "F.SilkS") (width 0.12) (tstamp 71696ae8-5302-4d27-8f92-756067748e05))
+ (fp_line (start 5.84 8.255) (end 5.84 6.985) (layer "F.SilkS") (width 0.12) (tstamp 7525e44d-6161-4cc4-8b30-c03909779dc5))
+ (fp_line (start 1.78 -0.395) (end 3.133333 -0.395) (layer "F.SilkS") (width 0.12) (tstamp 752ec62f-23d0-4030-9ff6-c6e7dd535f9b))
+ (fp_line (start 1.78 5.165) (end 3.133333 5.165) (layer "F.SilkS") (width 0.12) (tstamp 7fd73da8-6fa6-4958-bf8d-c1c3d7b13efb))
+ (fp_line (start 1.78 2.265) (end 3.133333 2.265) (layer "F.SilkS") (width 0.12) (tstamp 8165ee8c-f694-43f3-a896-95b3b3ea7f81))
+ (fp_line (start 1.78 8.255) (end 5.84 8.255) (layer "F.SilkS") (width 0.12) (tstamp 83ea1a29-eaca-46f5-bbf1-d2112699ae58))
+ (fp_line (start 1.78 2.145) (end 3.133333 2.145) (layer "F.SilkS") (width 0.12) (tstamp 8708dda1-c650-4367-a51e-67101000909f))
+ (fp_line (start 3.133333 4.445) (end 3.133333 5.715) (layer "F.SilkS") (width 0.12) (tstamp 872331e4-77a5-47e2-b9fb-49159f8fc5ef))
+ (fp_line (start 1.78 2.625) (end 3.133333 2.625) (layer "F.SilkS") (width 0.12) (tstamp 905e2dcc-f3c0-43ae-bd9f-271b3bf707f3))
+ (fp_line (start 1.78 7.705) (end 3.133333 7.705) (layer "F.SilkS") (width 0.12) (tstamp 96bba24a-52de-4aa0-9008-dead7bc3fbbf))
+ (fp_line (start 1.78 2.865) (end 3.133333 2.865) (layer "F.SilkS") (width 0.12) (tstamp 9b63d5d8-ee53-4826-b921-a34cdc9f866e))
+ (fp_line (start 1.78 0.325) (end 3.133333 0.325) (layer "F.SilkS") (width 0.12) (tstamp 9b9aefc7-b9ba-4f60-9853-4a23dfd91023))
+ (fp_line (start 1.78 8.185) (end 3.133333 8.185) (layer "F.SilkS") (width 0.12) (tstamp 9ccbb15b-3069-4be5-a569-99293ccf7a47))
+ (fp_line (start 1.78 3.105) (end 3.133333 3.105) (layer "F.SilkS") (width 0.12) (tstamp a0f811f0-473f-4fa3-a830-3660ba27c423))
+ (fp_line (start 1.78 7.585) (end 3.133333 7.585) (layer "F.SilkS") (width 0.12) (tstamp a4856713-63cf-4050-ae3b-714c375320b7))
+ (fp_line (start 1.78 1.905) (end 1.78 3.175) (layer "F.SilkS") (width 0.12) (tstamp a62b45b4-3180-4e5a-a201-7ce1dd22cd3c))
+ (fp_line (start 1.78 -0.275) (end 3.133333 -0.275) (layer "F.SilkS") (width 0.12) (tstamp a9a4b6ac-6d57-4dad-a582-eee098fb4938))
+ (fp_line (start 1.78 -0.635) (end 1.78 0.635) (layer "F.SilkS") (width 0.12) (tstamp b472b581-de6f-4fa4-852f-46fde32af4ff))
+ (fp_line (start 1.78 0.635) (end 5.84 0.635) (layer "F.SilkS") (width 0.12) (tstamp b54e527f-bb72-43e3-b56c-0c50aaad0be8))
+ (fp_line (start -1.14 10.04) (end 8.76 10.04) (layer "F.SilkS") (width 0.12) (tstamp ba86c8cb-7cbb-4a2f-b54a-cd95d9b5a87c))
+ (fp_line (start 1.78 8.065) (end 3.133333 8.065) (layer "F.SilkS") (width 0.12) (tstamp bb8b624d-ff47-4f84-bc9e-11b84aaf5296))
+ (fp_line (start 5.84 6.985) (end 1.78 6.985) (layer "F.SilkS") (width 0.12) (tstamp bd66a11a-89cb-4a7f-b27c-6b08996e41b4))
+ (fp_line (start 5.84 5.715) (end 5.84 4.445) (layer "F.SilkS") (width 0.12) (tstamp d1ef63a0-7243-40fc-8b01-b6a8778f0449))
+ (fp_line (start 1.78 7.465) (end 3.133333 7.465) (layer "F.SilkS") (width 0.12) (tstamp d568d5f7-894c-40b2-94b0-efa84becef07))
+ (fp_line (start 5.84 -0.635) (end 1.78 -0.635) (layer "F.SilkS") (width 0.12) (tstamp d72b58f2-c09e-4797-892d-c24a232269b0))
+ (fp_line (start 5.84 3.175) (end 5.84 1.905) (layer "F.SilkS") (width 0.12) (tstamp de1ca552-64af-4ec7-ae35-388254c8cc08))
+ (fp_line (start 1.78 0.565) (end 3.133333 0.565) (layer "F.SilkS") (width 0.12) (tstamp e0164275-5a9d-4b71-8f08-147e0c7419f8))
+ (fp_line (start 1.78 4.925) (end 3.133333 4.925) (layer "F.SilkS") (width 0.12) (tstamp e09d1d47-ae00-42ba-931e-15917d5d1e07))
+ (fp_line (start 1.78 4.565) (end 3.133333 4.565) (layer "F.SilkS") (width 0.12) (tstamp e0ea3ca0-21fa-455e-a068-a28cd0d7f94e))
+ (fp_line (start 5.84 1.905) (end 1.78 1.905) (layer "F.SilkS") (width 0.12) (tstamp e421c5f0-f5c5-43e8-bfa9-f4c1572eb48b))
+ (fp_line (start -1.38 -2.66) (end 0.004 -2.66) (layer "F.SilkS") (width 0.12) (tstamp e80269d7-5d4c-4ec1-87db-f64b155f7ecc))
+ (fp_line (start 1.78 4.445) (end 1.78 5.715) (layer "F.SilkS") (width 0.12) (tstamp eac20aa9-7da8-479e-a38e-0d38abe2e313))
+ (fp_line (start 1.78 2.985) (end 3.133333 2.985) (layer "F.SilkS") (width 0.12) (tstamp ecd47ede-b85a-4c00-bcd4-e81cf9a99d81))
+ (fp_line (start 1.78 7.825) (end 3.133333 7.825) (layer "F.SilkS") (width 0.12) (tstamp eea8a67c-25b9-49f3-bb36-3942bd9c20f6))
+ (fp_line (start 3.133333 -0.635) (end 3.133333 0.635) (layer "F.SilkS") (width 0.12) (tstamp efd725ae-37b8-4b62-8925-0c48276bbb96))
+ (fp_line (start 1.78 2.505) (end 3.133333 2.505) (layer "F.SilkS") (width 0.12) (tstamp f0cf11db-08b7-4b76-8131-7f13d0537e98))
+ (fp_line (start 1.78 5.715) (end 5.84 5.715) (layer "F.SilkS") (width 0.12) (tstamp f33c63a6-e9f1-4770-90a7-8e417ab7c234))
+ (fp_line (start 8.95 10.3) (end 8.95 -2.7) (layer "F.CrtYd") (width 0.05) (tstamp 226f3216-9171-405e-bf98-3d500ec872fb))
+ (fp_line (start -1.35 -2.7) (end -1.35 10.3) (layer "F.CrtYd") (width 0.05) (tstamp 5d116887-748c-4ce9-ad14-8e00504029cf))
+ (fp_line (start 8.95 -2.7) (end -1.35 -2.7) (layer "F.CrtYd") (width 0.05) (tstamp c9e5ddf5-5064-4777-9ac3-7e77697b6dd8))
+ (fp_line (start -1.35 10.3) (end 8.95 10.3) (layer "F.CrtYd") (width 0.05) (tstamp e2aa984d-5e3a-4c23-bd65-0f6e2ddb0295))
+ (fp_line (start 8.7 -2.36) (end 8.7 9.98) (layer "F.Fab") (width 0.1) (tstamp 03018311-ae71-403b-8369-c64298b43db8))
+ (fp_line (start 8.7 9.98) (end -1.08 9.98) (layer "F.Fab") (width 0.1) (tstamp 0b1124ad-82e5-4278-a732-e283f75ac576))
+ (fp_line (start 1.78 4.445) (end 1.78 5.715) (layer "F.Fab") (width 0.1) (tstamp 0e3da2f5-da67-4346-bc51-1457965cd92f))
+ (fp_line (start 1.78 3.105) (end 3.133333 3.105) (layer "F.Fab") (width 0.1) (tstamp 121a4efd-8037-4400-8f38-c9556d38f575))
+ (fp_line (start 1.78 5.345) (end 3.133333 5.345) (layer "F.Fab") (width 0.1) (tstamp 1471ac63-eca5-427c-b1a6-cdb7fff308c7))
+ (fp_line (start 1.78 0.465) (end 3.133333 0.465) (layer "F.Fab") (width 0.1) (tstamp 14c4b6ea-9215-4414-8736-bfd1a261df85))
+ (fp_line (start 1.78 3.005) (end 3.133333 3.005) (layer "F.Fab") (width 0.1) (tstamp 1809b98d-961f-4dd1-9508-58e758c47817))
+ (fp_line (start 1.78 0.265) (end 3.133333 0.265) (layer "F.Fab") (width 0.1) (tstamp 1811ac0d-fd96-449c-ab91-97d264368091))
+ (fp_line (start 1.78 5.145) (end 3.133333 5.145) (layer "F.Fab") (width 0.1) (tstamp 1913dfff-d8e6-40a5-9814-f5cc9868db72))
+ (fp_line (start 1.78 7.285) (end 3.133333 7.285) (layer "F.Fab") (width 0.1) (tstamp 1ba32772-eaca-424a-8c79-6ab581673837))
+ (fp_line (start 1.78 7.785) (end 3.133333 7.785) (layer "F.Fab") (width 0.1) (tstamp 1e242c40-4c64-403d-b76b-40ca7a67b95e))
+ (fp_line (start 5.84 5.715) (end 5.84 4.445) (layer "F.Fab") (width 0.1) (tstamp 1ea7ec13-06dc-4d48-945a-c9cd74990281))
+ (fp_line (start 1.78 7.385) (end 3.133333 7.385) (layer "F.Fab") (width 0.1) (tstamp 2a2d207b-e9a3-4597-a05b-93ce6b57502a))
+ (fp_line (start 1.78 8.255) (end 5.84 8.255) (layer "F.Fab") (width 0.1) (tstamp 2beef277-f7db-4e12-b0d9-7a76058ea662))
+ (fp_line (start 1.78 -0.335) (end 3.133333 -0.335) (layer "F.Fab") (width 0.1) (tstamp 34cc6f8a-8fa2-432a-815b-b5583c4813d4))
+ (fp_line (start 1.78 0.635) (end 5.84 0.635) (layer "F.Fab") (width 0.1) (tstamp 36fb4b7c-4d95-4e69-9894-0397e2364897))
+ (fp_line (start 1.78 5.045) (end 3.133333 5.045) (layer "F.Fab") (width 0.1) (tstamp 386a67cc-8aa5-4170-94e8-340efdb9f09d))
+ (fp_line (start 1.78 2.005) (end 3.133333 2.005) (layer "F.Fab") (width 0.1) (tstamp 38c64a6b-b687-4588-9524-7b2cc01f36ee))
+ (fp_line (start 1.78 1.905) (end 1.78 3.175) (layer "F.Fab") (width 0.1) (tstamp 3917448b-1124-4a78-822d-216040695e66))
+ (fp_line (start 1.78 -0.035) (end 3.133333 -0.035) (layer "F.Fab") (width 0.1) (tstamp 396754bc-8846-4c9e-a030-ed8360d08441))
+ (fp_line (start 1.78 8.085) (end 3.133333 8.085) (layer "F.Fab") (width 0.1) (tstamp 49b534f9-91b9-4883-8523-d878d505987b))
+ (fp_line (start 1.78 0.565) (end 3.133333 0.565) (layer "F.Fab") (width 0.1) (tstamp 4b47b626-bc1e-48c3-919d-35ee083e62e4))
+ (fp_line (start 1.78 5.445) (end 3.133333 5.445) (layer "F.Fab") (width 0.1) (tstamp 5208584a-c039-4041-9c65-c593bb9f250c))
+ (fp_line (start 1.78 7.185) (end 3.133333 7.185) (layer "F.Fab") (width 0.1) (tstamp 52c57fa6-cba3-4f07-842c-eafff2ba3400))
+ (fp_line (start 1.78 8.185) (end 3.133333 8.185) (layer "F.Fab") (width 0.1) (tstamp 53499564-661a-4e89-836f-c646f1d4e678))
+ (fp_line (start 1.78 7.085) (end 3.133333 7.085) (layer "F.Fab") (width 0.1) (tstamp 55d6bee4-6166-48d3-ae69-49bbc9f7f655))
+ (fp_line (start 5.84 3.175) (end 5.84 1.905) (layer "F.Fab") (width 0.1) (tstamp 577e5b08-af20-4e18-8dc4-68773c68bca0))
+ (fp_line (start 1.78 7.585) (end 3.133333 7.585) (layer "F.Fab") (width 0.1) (tstamp 58925a52-cc3e-4fae-88b0-fc4c04d6a9a9))
+ (fp_line (start 1.78 2.505) (end 3.133333 2.505) (layer "F.Fab") (width 0.1) (tstamp 5a05e978-ec44-459f-99f0-20111dfd8f1c))
+ (fp_line (start 1.78 4.945) (end 3.133333 4.945) (layer "F.Fab") (width 0.1) (tstamp 6b9ed050-fc22-4da7-a601-b03edebc7a74))
+ (fp_line (start 5.84 6.985) (end 1.78 6.985) (layer "F.Fab") (width 0.1) (tstamp 6c4ca8eb-1de4-44b5-98c7-e4489eacbdbc))
+ (fp_line (start 1.78 3.175) (end 5.84 3.175) (layer "F.Fab") (width 0.1) (tstamp 758da97a-6b39-4fb1-bf6b-ab40fee23667))
+ (fp_line (start 5.84 4.445) (end 1.78 4.445) (layer "F.Fab") (width 0.1) (tstamp 76d0e80c-fb90-40cf-a313-1cf0b25a2d30))
+ (fp_line (start 1.78 -0.535) (end 3.133333 -0.535) (layer "F.Fab") (width 0.1) (tstamp 7bbc6e26-d89c-499a-9eb4-bf451966367b))
+ (fp_line (start 1.78 2.405) (end 3.133333 2.405) (layer "F.Fab") (width 0.1) (tstamp 7fea4253-023a-4c65-bbdf-640fd8dfac28))
+ (fp_line (start 3.133333 1.905) (end 3.133333 3.175) (layer "F.Fab") (width 0.1) (tstamp 818c406a-24d5-42de-aba6-030cddce60c1))
+ (fp_line (start 1.78 5.715) (end 5.84 5.715) (layer "F.Fab") (width 0.1) (tstamp 84fc3c57-c43a-40cb-993d-c75fb12f2931))
+ (fp_line (start 1.78 0.165) (end 3.133333 0.165) (layer "F.Fab") (width 0.1) (tstamp 8bd60f61-b570-4fd8-b512-27fb72db00b9))
+ (fp_line (start 5.84 1.905) (end 1.78 1.905) (layer "F.Fab") (width 0.1) (tstamp 8cd522d6-5046-4b72-ab87-54a9d9879448))
+ (fp_line (start 3.133333 -0.635) (end 3.133333 0.635) (layer "F.Fab") (width 0.1) (tstamp 8cf5487e-8f42-47db-ab40-58cd878dd9ec))
+ (fp_line (start 1.78 2.805) (end 3.133333 2.805) (layer "F.Fab") (width 0.1) (tstamp 92f87974-782c-4d37-a46f-6363808bf913))
+ (fp_line (start 3.133333 6.985) (end 3.133333 8.255) (layer "F.Fab") (width 0.1) (tstamp 94e7edbe-99cd-4113-8dd9-1818ddbddc70))
+ (fp_line (start 1.78 2.105) (end 3.133333 2.105) (layer "F.Fab") (width 0.1) (tstamp 95553ff5-51b4-4699-b46b-4078c0292d1c))
+ (fp_line (start 1.78 4.845) (end 3.133333 4.845) (layer "F.Fab") (width 0.1) (tstamp 9c6cac6a-5517-4e81-ad7d-60df657535bf))
+ (fp_line (start 1.78 -0.235) (end 3.133333 -0.235) (layer "F.Fab") (width 0.1) (tstamp 9e29b59e-2547-4d7a-81e1-b9e927c07293))
+ (fp_line (start 1.78 2.905) (end 3.133333 2.905) (layer "F.Fab") (width 0.1) (tstamp a02a8323-78ba-4b55-86c8-a69fd02888e3))
+ (fp_line (start 1.78 2.305) (end 3.133333 2.305) (layer "F.Fab") (width 0.1) (tstamp a07c81ba-4af5-491c-8e6a-c4e782e94963))
+ (fp_line (start 1.78 5.645) (end 3.133333 5.645) (layer "F.Fab") (width 0.1) (tstamp a14b6720-c596-49b7-b347-f9842ae97d12))
+ (fp_line (start 1.78 2.705) (end 3.133333 2.705) (layer "F.Fab") (width 0.1) (tstamp a1fd5965-b121-42a4-b2c0-cedaea285cda))
+ (fp_line (start 5.84 0.635) (end 5.84 -0.635) (layer "F.Fab") (width 0.1) (tstamp a38d58f0-593d-4736-a4cc-a369a22ec92c))
+ (fp_line (start 1.78 7.485) (end 3.133333 7.485) (layer "F.Fab") (width 0.1) (tstamp a3952536-70b7-4089-909a-1a735ea38708))
+ (fp_line (start 1.78 0.365) (end 3.133333 0.365) (layer "F.Fab") (width 0.1) (tstamp a4f7554d-2652-477a-900d-b469d5e169cd))
+ (fp_line (start 1.78 7.885) (end 3.133333 7.885) (layer "F.Fab") (width 0.1) (tstamp a5a23c24-344b-46fe-91d2-547d3b7dcdd0))
+ (fp_line (start 1.78 0.065) (end 3.133333 0.065) (layer "F.Fab") (width 0.1) (tstamp aa2ed664-0518-4302-a4f6-69caa0b94e34))
+ (fp_line (start 1.78 -0.435) (end 3.133333 -0.435) (layer "F.Fab") (width 0.1) (tstamp b838d40b-4aca-4c7f-9422-7ef319a8c2fe))
+ (fp_line (start 1.78 7.685) (end 3.133333 7.685) (layer "F.Fab") (width 0.1) (tstamp c1cc8f9a-1043-4250-8013-3cbab8f7f3ac))
+ (fp_line (start 1.78 5.545) (end 3.133333 5.545) (layer "F.Fab") (width 0.1) (tstamp cf1005d3-f767-4616-9182-4b8960d2b970))
+ (fp_line (start -0.08 -2.36) (end 8.7 -2.36) (layer "F.Fab") (width 0.1) (tstamp d387de5d-fd90-41bf-b884-46cb82181336))
+ (fp_line (start 5.84 8.255) (end 5.84 6.985) (layer "F.Fab") (width 0.1) (tstamp d7527fc4-b434-4718-b7d9-5ee07624d257))
+ (fp_line (start 1.78 5.245) (end 3.133333 5.245) (layer "F.Fab") (width 0.1) (tstamp d9b9ebbc-d1f0-4b03-8c29-c709280992de))
+ (fp_line (start 1.78 -0.635) (end 1.78 0.635) (layer "F.Fab") (width 0.1) (tstamp da88fd50-3c2a-4e9a-bbaf-257db771a736))
+ (fp_line (start -1.08 9.98) (end -1.08 -1.36) (layer "F.Fab") (width 0.1) (tstamp dec67065-3930-4001-8f76-2ada3aec9b1f))
+ (fp_line (start 5.84 -0.635) (end 1.78 -0.635) (layer "F.Fab") (width 0.1) (tstamp e1a10dc9-529a-4218-959c-8fb5e2955eed))
+ (fp_line (start 1.78 2.205) (end 3.133333 2.205) (layer "F.Fab") (width 0.1) (tstamp e3b8489d-ea09-4c6a-aedf-ae2aaef00fe0))
+ (fp_line (start 1.78 4.645) (end 3.133333 4.645) (layer "F.Fab") (width 0.1) (tstamp e74bfe52-caf7-45ff-a6ea-c02e5e486728))
+ (fp_line (start 3.133333 4.445) (end 3.133333 5.715) (layer "F.Fab") (width 0.1) (tstamp e8274655-f157-4db8-8b3b-191035b35dd3))
+ (fp_line (start -1.08 -1.36) (end -0.08 -2.36) (layer "F.Fab") (width 0.1) (tstamp e97437d5-c78b-4af4-9b9e-51e4cde561a8))
+ (fp_line (start 1.78 4.745) (end 3.133333 4.745) (layer "F.Fab") (width 0.1) (tstamp ee6722ff-85f1-46ee-bd09-ff6c6cb052e4))
+ (fp_line (start 1.78 4.545) (end 3.133333 4.545) (layer "F.Fab") (width 0.1) (tstamp f034182b-077d-41cb-ba6e-3e648a0acf13))
+ (fp_line (start 1.78 -0.135) (end 3.133333 -0.135) (layer "F.Fab") (width 0.1) (tstamp f1c96ddd-6d7a-4be6-92f9-97750c1397ce))
+ (fp_line (start 1.78 2.605) (end 3.133333 2.605) (layer "F.Fab") (width 0.1) (tstamp f3ff6a7e-588c-4de1-a979-9820dc005900))
+ (fp_line (start 1.78 6.985) (end 1.78 8.255) (layer "F.Fab") (width 0.1) (tstamp f8fee654-f943-4537-aa83-133756691c99))
+ (fp_line (start 1.78 7.985) (end 3.133333 7.985) (layer "F.Fab") (width 0.1) (tstamp f969cfbf-e69e-427f-a9ed-fd634e51a7ec))
+ (pad "1" thru_hole rect locked (at 0 0 270) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 2 "GND") (tstamp 57fa53d9-46fd-4c24-a37c-ebac9bb3d83b))
+ (pad "2" thru_hole oval locked (at 0 2.54 270) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 2 "GND") (tstamp bf60d3ec-e80f-4c07-b4a4-723f35a3700d))
+ (pad "3" thru_hole oval locked (at 0 5.08 270) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 2 "GND") (tstamp 5bdfe254-db31-4c87-ba8f-b7aea7bdad75))
+ (pad "4" thru_hole oval locked (at 0 7.62 270) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 2 "GND") (tstamp ad1ee915-8838-4bd2-8807-41e720cdcbd5))
+ (pad "5" thru_hole oval locked (at 7.62 7.62 270) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 16 "SW4") (tstamp da2c9d3e-59f5-41ba-b2c5-40cdf3e9ae33))
+ (pad "6" thru_hole oval locked (at 7.62 5.08 270) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 13 "SW3") (tstamp 8136bcf2-7be4-44e2-8c88-1ad57e13d621))
+ (pad "7" thru_hole oval locked (at 7.62 2.54 270) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 14 "SW2") (tstamp a79d8b8a-b590-454b-a850-82f15f7ee5af))
+ (pad "8" thru_hole oval locked (at 7.62 0 270) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask)
+ (net 15 "SW1") (tstamp 824f03d9-0e6c-4c87-8912-bf3205a728bc))
+ (model "${KISYS3DMOD}/Button_Switch_THT.3dshapes/SW_DIP_SPSTx04_Slide_9.78x12.34mm_W7.62mm_P2.54mm.wrl"
+ (offset (xyz 0 0 0))
+ (scale (xyz 1 1 1))
+ (rotate (xyz 0 0 90))
+ )
+ )
+
+ (gr_line (start 76.835 98.425) (end 93.98 107.95) (layer "Edge.Cuts") (width 0.05) (tstamp 00000000-0000-0000-0000-00005ff7aa71))
+ (gr_line (start 76.835 79.375) (end 93.98 68.58) (layer "Edge.Cuts") (width 0.05) (tstamp 00000000-0000-0000-0000-00005ff7aa7b))
+ (gr_line (start 122.555 107.95) (end 93.98 107.95) (layer "Edge.Cuts") (width 0.05) (tstamp 505656b6-97c8-47ae-81e7-1f223fd084f4))
+ (gr_line (start 122.555 68.58) (end 122.555 107.95) (layer "Edge.Cuts") (width 0.05) (tstamp 760df760-936e-4a61-a39e-ad62c8e615e9))
+ (gr_line (start 76.835 98.425) (end 76.835 79.375) (layer "Edge.Cuts") (width 0.05) (tstamp bc054038-876d-4e60-8405-3bf3cd41a739))
+ (gr_line (start 93.98 68.58) (end 122.555 68.58) (layer "Edge.Cuts") (width 0.05) (tstamp ee7016ad-1ff6-4b69-a130-21769ee90e53))
+ (gr_text "9" (at 114.3 78.105 90) (layer "B.SilkS") (tstamp 1c707e14-e5fc-416a-85a6-e0217e609284)
+ (effects (font (size 1 1) (thickness 0.15)) (justify mirror))
+ )
+ (gr_text "https://github.com/necroware" (at 119.888 88.138 90) (layer "B.SilkS") (tstamp 2277a4e0-747c-49fe-b4a6-9542403113e1)
+ (effects (font (size 1.5 1.4) (thickness 0.275)) (justify mirror))
+ )
+ (gr_text "15" (at 114.3 98.425 90) (layer "B.SilkS") (tstamp 2b51bb61-b8dd-4deb-a84b-cef98bd4d6b8)
+ (effects (font (size 1 1) (thickness 0.15)) (justify mirror))
+ )
+ (gr_text "1" (at 111.76 76.835 90) (layer "B.SilkS") (tstamp 6a78e831-c2fe-450d-a15b-e3409377d333)
+ (effects (font (size 1 1) (thickness 0.15)) (justify mirror))
+ )
+ (gr_text "8" (at 111.76 99.695 90) (layer "B.SilkS") (tstamp 844e1352-206e-44ba-9802-572919c9b1d4)
+ (effects (font (size 1 1) (thickness 0.15)) (justify mirror))
+ )
+ (gr_text "rev 0.2.1" (at 103.886 106.68) (layer "F.SilkS") (tstamp 45927a76-242c-4729-9d9a-24e6a75983b9)
+ (effects (font (size 1.4 1.4) (thickness 0.2)))
+ )
+ (gr_text "GamePort Adapter\nby Necroware\n" (at 108.585 101.6) (layer "F.Mask") (tstamp 00000000-0000-0000-0000-0000604bdae0)
+ (effects (font (size 1.9 1.8) (thickness 0.3)) (justify right))
+ )
+
+ (segment (start 116.84 97.536) (end 115.316 99.06) (width 1) (layer "B.Cu") (net 1) (tstamp 1e091061-7c09-4acc-82cb-fff4ca1dba27))
+ (segment (start 108.331 75.184) (end 93.726 75.184) (width 1) (layer "B.Cu") (net 1) (tstamp 4556149b-4c0c-4940-936d-dc5226d10a45))
+ (segment (start 111.633 78.486) (end 108.331 75.184) (width 1) (layer "B.Cu") (net 1) (tstamp 6f3f0ec1-2b18-4e4f-92a1-7a8cea5ab1ef))
+ (segment (start 114.473 79.871) (end 116.84 82.238) (width 1) (layer "B.Cu") (net 1) (tstamp 72853c24-8597-4c80-ae91-5da158ebaeff))
+ (segment (start 115.316 99.06) (end 112.817 99.06) (width 1) (layer "B.Cu") (net 1) (tstamp 753b979a-1582-442e-a37d-73e37bb2a22a))
+ (segment (start 113.03 78.486) (end 111.633 78.486) (width 1) (layer "B.Cu") (net 1) (tstamp 843a635b-d8b5-4bcb-bbb4-eea6c2b6aca7))
+ (segment (start 116.84 82.238) (end 116.84 97.536) (width 1) (layer "B.Cu") (net 1) (tstamp 84ac7eda-6162-4182-a655-054fd840a659))
+ (segment (start 114.473 79.871) (end 114.415 79.871) (width 1) (layer "B.Cu") (net 1) (tstamp 98b33a1f-dba2-45ef-b925-d12e26d31dba))
+ (segment (start 112.817 99.06) (end 111.633 97.876) (width 1) (layer "B.Cu") (net 1) (tstamp 9eca3654-998e-45e2-b87e-a103e3d456a2))
+ (segment (start 114.415 79.871) (end 113.03 78.486) (width 1) (layer "B.Cu") (net 1) (tstamp d97c6eaa-08ac-4432-9670-ba06712e4de0))
+ (segment (start 93.726 75.184) (end 87.757 81.153) (width 1) (layer "B.Cu") (net 1) (tstamp e177b80e-68e4-4bd0-8bfd-dcc8170d15dd))
+ (segment (start 105.669 93.721) (end 102.997 96.393) (width 0.35) (layer "F.Cu") (net 3) (tstamp d3828612-2ef3-48f7-8ece-5eb682465fce))
+ (segment (start 114.473 93.721) (end 105.669 93.721) (width 0.35) (layer "F.Cu") (net 3) (tstamp ece912f4-1b9b-48d7-88dd-b68928303bdb))
+ (segment (start 114.473 82.641) (end 107.025 82.641) (width 0.35) (layer "F.Cu") (net 4) (tstamp 1371cd4c-3bce-49ab-9968-72b2f860778e))
+ (segment (start 107.025 82.641) (end 105.537 81.153) (width 0.35) (layer "F.Cu") (net 4) (tstamp f0890e7d-756e-4424-9d98-25e2ec3ff50d))
+ (segment (start 100.819 90.951) (end 100.7745 90.9955) (width 0.35) (layer "F.Cu") (net 5) (tstamp 787e2feb-5332-4311-bfe5-a41d131501f8))
+ (segment (start 114.473 90.951) (end 100.819 90.951) (width 0.35) (layer "F.Cu") (net 5) (tstamp c7adcb0c-14aa-41b3-9a64-ca2ca3af6f11))
+ (segment (start 100.819 90.951) (end 95.377 96.393) (width 0.35) (layer "F.Cu") (net 5) (tstamp cdfa2fae-00f7-4d63-b123-8a395f98bca7))
+ (segment (start 94.107 92.202) (end 95.377 93.472) (width 0.35) (layer "B.Cu") (net 5) (tstamp 3334e13c-a018-45a8-bee5-3b13d14a6b02))
+ (segment (start 95.377 93.472) (end 95.377 96.393) (width 0.35) (layer "B.Cu") (net 5) (tstamp 4e9e1c12-9e03-4868-b27e-332fd38d4417))
+ (segment (start 92.837 92.202) (end 94.107 92.202) (width 0.35) (layer "B.Cu") (net 5) (tstamp af2c9a67-504a-4cc5-bde5-3927d98bdbd4))
+ (segment (start 111.633 95.106) (end 106.824 95.106) (width 0.35) (layer "F.Cu") (net 6) (tstamp 6d557831-0636-4f0d-afd4-d6de61d0e63e))
+ (segment (start 106.824 95.106) (end 105.537 96.393) (width 0.35) (layer "F.Cu") (net 6) (tstamp f1a49da5-6902-4961-85f3-3161ad7965c1))
+ (segment (start 99.635 85.411) (end 95.377 81.153) (width 0.35) (layer "F.Cu") (net 7) (tstamp 34fd2f23-6f77-4e43-a698-52ee0013abae))
+ (segment (start 114.473 85.411) (end 99.635 85.411) (width 0.35) (layer "F.Cu") (net 7) (tstamp a45896bf-57aa-4afd-aed1-f7c622b604b4))
+ (segment (start 95.377 84.074) (end 95.377 81.153) (width 0.35) (layer "B.Cu") (net 7) (tstamp 27d4b2bf-845f-4078-a113-2b9c7394e5cc))
+ (segment (start 92.837 85.344) (end 94.107 85.344) (width 0.35) (layer "B.Cu") (net 7) (tstamp 82a93aab-5b01-46a7-aa00-f76b6e674ae8))
+ (segment (start 94.107 85.344) (end 95.377 84.074) (width 0.35) (layer "B.Cu") (net 7) (tstamp 96d0fa48-644b-4bfd-81f4-57df60ecaa7d))
+ (segment (start 111.633 81.256) (end 111.53 81.153) (width 0.35) (layer "F.Cu") (net 8) (tstamp a76f32a5-6fb9-43b0-84f3-9a356edf9b38))
+ (segment (start 111.53 81.153) (end 108.077 81.153) (width 0.35) (layer "F.Cu") (net 8) (tstamp e74eac49-df3a-4730-a927-c82e813f4a3e))
+ (segment (start 104.514 92.336) (end 100.457 96.393) (width 0.35) (layer "F.Cu") (net 9) (tstamp 769477ad-6990-46ec-bd21-6d66680ed17d))
+ (segment (start 104.514 92.336) (end 104.4575 92.3925) (width 0.35) (layer "F.Cu") (net 9) (tstamp 937e8461-a397-44f8-bc73-7b81f1175f97))
+ (segment (start 111.633 92.336) (end 104.514 92.336) (width 0.35) (layer "F.Cu") (net 9) (tstamp d0cdf210-e9fd-4a79-9b34-d0fbbd98d8dd))
+ (segment (start 92.837 89.916) (end 95.758 89.916) (width 0.35) (layer "B.Cu") (net 9) (tstamp 10d3aada-33ea-4086-9551-f2895169d28b))
+ (segment (start 100.457 94.615) (end 100.457 96.393) (width 0.35) (layer "B.Cu") (net 9) (tstamp eab79726-af16-4037-b595-ed970d9bb0ee))
+ (segment (start 95.758 89.916) (end 100.457 94.615) (width 0.35) (layer "B.Cu") (net 9) (tstamp f3d82eb2-26b2-423d-82af-075ad33a3c6c))
+ (segment (start 100.79 84.026) (end 97.917 81.153) (width 0.35) (layer "F.Cu") (net 10) (tstamp 3608b53b-fa22-40ea-a288-ac57d553dac7))
+ (segment (start 111.633 84.026) (end 100.79 84.026) (width 0.35) (layer "F.Cu") (net 10) (tstamp 85628396-d075-4a1b-ab23-9609f3b6a793))
+ (segment (start 95.6945 87.63) (end 97.917 85.4075) (width 0.35) (layer "B.Cu") (net 10) (tstamp 1597ea22-af09-4501-a936-b663ca3752bd))
+ (segment (start 92.837 87.63) (end 95.6945 87.63) (width 0.35) (layer "B.Cu") (net 10) (tstamp 7eaf3ff3-f6ab-455a-96a8-5724a41cd9ec))
+ (segment (start 97.917 85.4075) (end 97.917 81.153) (width 0.35) (layer "B.Cu") (net 10) (tstamp a38bd017-cb73-4fbc-87c7-b4008dd8b628))
+ (segment (start 114.473 96.491) (end 108.175 96.491) (width 0.35) (layer "F.Cu") (net 11) (tstamp 76276bc1-d541-4b65-b6dc-40206febdcd3))
+ (segment (start 108.175 96.491) (end 108.077 96.393) (width 0.35) (layer "F.Cu") (net 11) (tstamp ca3fcf61-211e-4c1c-a3db-63e90ff0d3dc))
+ (segment (start 97.917 96.393) (end 101.981 92.329) (width 0.35) (layer "F.Cu") (net 12) (tstamp 64b95c02-ab62-45db-be22-23e08a708c93))
+ (segment (start 102.060003 88.181) (end 101.976003 88.265) (width 0.35) (layer "F.Cu") (net 12) (tstamp 7bf9a9fc-c560-4161-81d5-b1d230235cf8))
+ (segment (start 114.473 88.181) (end 102.060003 88.181) (width 0.35) (layer "F.Cu") (net 12) (tstamp add3c7a0-b1b0-42d4-b90d-371e483d41d9))
+ (via (at 101.981 92.329) (size 0.8) (drill 0.4) (layers "F.Cu" "B.Cu") (net 12) (tstamp 61806f1f-5a65-4d9f-9165-90a3ce76164a))
+ (via (at 101.976003 88.265) (size 0.8) (drill 0.4) (layers "F.Cu" "B.Cu") (net 12) (tstamp e023d148-19c6-46ce-8bf5-8fa7130e6337))
+ (segment (start 101.981 92.329) (end 101.981 88.269997) (width 0.35) (layer "B.Cu") (net 12) (tstamp b65e1b3b-3644-47ab-bf36-cd61bafb3e7e))
+ (segment (start 101.981 88.269997) (end 101.976003 88.265) (width 0.35) (layer "B.Cu") (net 12) (tstamp c23a9e12-2b98-49a2-88f3-fd43daf521da))
+ (segment (start 100.584 77.851) (end 98.840989 79.594011) (width 0.35) (layer "F.Cu") (net 13) (tstamp 409b9c33-3776-4d90-9488-870778f1906e))
+ (segment (start 94.395989 79.594011) (end 92.837 81.153) (width 0.35) (layer "F.Cu") (net 13) (tstamp 447868ad-dc66-4b8a-9e43-71274eb5b985))
+ (segment (start 98.840989 79.594011) (end 94.395989 79.594011) (width 0.35) (layer "F.Cu") (net 13) (tstamp cc7fcb6e-9e9a-44f4-a163-b28f222febd4))
+ (segment (start 100.457 80.518) (end 100.457 81.153) (width 0.35) (layer "F.Cu") (net 14) (tstamp 069eba6b-6b75-45c6-bd4c-379dcf9147e9))
+ (segment (start 103.124 77.851) (end 100.457 80.518) (width 0.35) (layer "F.Cu") (net 14) (tstamp 45f2d0dc-5dcb-418e-9472-72a1a1054264))
+ (segment (start 102.997 80.518) (end 102.997 81.153) (width 0.35) (layer "F.Cu") (net 15) (tstamp eaee7b6c-0302-45eb-9da9-25d1a82ad3af))
+ (segment (start 105.664 77.851) (end 102.997 80.518) (width 0.35) (layer "F.Cu") (net 15) (tstamp ed30fada-b048-40ea-a103-59c9ad30ad8b))
+ (segment (start 92.456 78.994) (end 90.297 81.153) (width 0.35) (layer "F.Cu") (net 16) (tstamp 03b0b126-0940-4afb-97d2-8f214f0a638b))
+ (segment (start 96.901 78.994) (end 92.456 78.994) (width 0.35) (layer "F.Cu") (net 16) (tstamp 1f065c61-f3d9-4bbb-8aa2-604b2fbd05ee))
+ (segment (start 92.456 78.994) (end 92.3925 79.0575) (width 0.35) (layer "F.Cu") (net 16) (tstamp 882b0e02-938f-452c-8fa7-deb195dfca38))
+ (segment (start 98.044 77.851) (end 96.901 78.994) (width 0.35) (layer "F.Cu") (net 16) (tstamp 9fa1defc-bb0e-4d27-9f77-c5e745c607f6))
+
+ (zone (net 2) (net_name "GND") (layer "F.Cu") (tstamp 00000000-0000-0000-0000-00005ff82519) (hatch edge 0.508)
+ (connect_pads (clearance 0.254))
+ (min_thickness 0.254) (filled_areas_thickness no)
+ (fill yes (thermal_gap 0.508) (thermal_bridge_width 0.508))
+ (polygon
+ (pts
+ (xy 122.555 107.95)
+ (xy 76.835 107.95)
+ (xy 76.835 68.453)
+ (xy 122.555 68.58)
+ )
+ )
+ (filled_polygon
+ (layer "F.Cu")
+ (pts
+ (xy 97.443584 68.854502)
+ (xy 97.490077 68.908158)
+ (xy 97.500181 68.978432)
+ (xy 97.470687 69.043012)
+ (xy 97.428713 69.074695)
+ (xy 97.392489 69.091586)
+ (xy 97.382993 69.097069)
+ (xy 97.204533 69.222028)
+ (xy 97.196125 69.229084)
+ (xy 97.042084 69.383125)
+ (xy 97.035028 69.391533)
+ (xy 96.910069 69.569993)
+ (xy 96.904586 69.579489)
+ (xy 96.81251 69.776947)
+ (xy 96.808764 69.787239)
+ (xy 96.762606 69.959503)
+ (xy 96.762942 69.973599)
+ (xy 96.770884 69.977)
+ (xy 106.953884 69.977)
+ (xy 106.969123 69.972525)
+ (xy 106.970328 69.971135)
+ (xy 106.971999 69.963452)
+ (xy 106.971999 69.386331)
+ (xy 106.971629 69.37951)
+ (xy 106.966105 69.328648)
+ (xy 106.962479 69.313396)
+ (xy 106.917324 69.192946)
+ (xy 106.908786 69.177351)
+ (xy 106.832285 69.075276)
+ (xy 106.819722 69.062713)
+ (xy 106.81787 69.061325)
+ (xy 106.816495 69.059486)
+ (xy 106.813374 69.056365)
+ (xy 106.813824 69.055915)
+ (xy 106.775355 69.004466)
+ (xy 106.770331 68.933647)
+ (xy 106.804391 68.871354)
+ (xy 106.866722 68.837364)
+ (xy 106.893436 68.8345)
+ (xy 112.472932 68.8345)
+ (xy 112.541053 68.854502)
+ (xy 112.587546 68.908158)
+ (xy 112.59765 68.978432)
+ (xy 112.568156 69.043012)
+ (xy 112.504267 69.082541)
+ (xy 112.280295 69.140047)
+ (xy 112.27277 69.142492)
+ (xy 111.986707 69.255753)
+ (xy 111.979572 69.25911)
+ (xy 111.709961 69.40733)
+ (xy 111.703281 69.41157)
+ (xy 111.480177 69.573664)
+ (xy 111.471754 69.584587)
+ (xy 111.478658 69.597448)
+ (xy 113.040188 71.158978)
+ (xy 113.054132 71.166592)
+ (xy 113.055965 71.166461)
+ (xy 113.06258 71.16221)
+ (xy 114.627666 69.597124)
+ (xy 114.634279 69.585013)
+ (xy 114.625452 69.573395)
+ (xy 114.402719 69.41157)
+ (xy 114.396039 69.40733)
+ (xy 114.126428 69.25911)
+ (xy 114.119293 69.255753)
+ (xy 113.83323 69.142492)
+ (xy 113.825705 69.140047)
+ (xy 113.601733 69.082541)
+ (xy 113.540727 69.046227)
+ (xy 113.509038 68.982694)
+ (xy 113.516728 68.912116)
+ (xy 113.561355 68.856898)
+ (xy 113.633068 68.8345)
+ (xy 122.1745 68.8345)
+ (xy 122.242621 68.854502)
+ (xy 122.289114 68.908158)
+ (xy 122.3005 68.9605)
+ (xy 122.3005 107.5695)
+ (xy 122.280498 107.637621)
+ (xy 122.226842 107.684114)
+ (xy 122.1745 107.6955)
+ (xy 94.078598 107.6955)
+ (xy 94.017407 107.679644)
+ (xy 93.33128 107.298462)
+ (xy 92.392625 106.776987)
+ (xy 111.471721 106.776987)
+ (xy 111.480548 106.788605)
+ (xy 111.703281 106.95043)
+ (xy 111.709961 106.95467)
+ (xy 111.979572 107.10289)
+ (xy 111.986707 107.106247)
+ (xy 112.27277 107.219508)
+ (xy 112.280296 107.221953)
+ (xy 112.578279 107.298462)
+ (xy 112.58605 107.299945)
+ (xy 112.891278 107.338503)
+ (xy 112.899169 107.339)
+ (xy 113.206831 107.339)
+ (xy 113.214722 107.338503)
+ (xy 113.51995 107.299945)
+ (xy 113.527721 107.298462)
+ (xy 113.825704 107.221953)
+ (xy 113.83323 107.219508)
+ (xy 114.119293 107.106247)
+ (xy 114.126428 107.10289)
+ (xy 114.396039 106.95467)
+ (xy 114.402719 106.95043)
+ (xy 114.625823 106.788336)
+ (xy 114.634246 106.777413)
+ (xy 114.627342 106.764552)
+ (xy 113.065812 105.203022)
+ (xy 113.051868 105.195408)
+ (xy 113.050035 105.195539)
+ (xy 113.04342 105.19979)
+ (xy 111.478334 106.764876)
+ (xy 111.471721 106.776987)
+ (xy 92.392625 106.776987)
+ (xy 88.896973 104.834958)
+ (xy 110.54029 104.834958)
+ (xy 110.559607 105.141994)
+ (xy 110.5606 105.149855)
+ (xy 110.618246 105.452046)
+ (xy 110.620217 105.459723)
+ (xy 110.715284 105.752309)
+ (xy 110.718199 105.759672)
+ (xy 110.849189 106.038041)
+ (xy 110.853001 106.044974)
+ (xy 111.017851 106.304736)
+ (xy 111.022495 106.311129)
+ (xy 111.097497 106.40179)
+ (xy 111.110014 106.410245)
+ (xy 111.120752 106.404038)
+ (xy 112.680978 104.843812)
+ (xy 112.687356 104.832132)
+ (xy 113.417408 104.832132)
+ (xy 113.417539 104.833965)
+ (xy 113.42179 104.84058)
+ (xy 114.984145 106.402935)
+ (xy 114.997407 106.410177)
+ (xy 115.007512 106.402988)
+ (xy 115.083505 106.311129)
+ (xy 115.088149 106.304736)
+ (xy 115.252999 106.044974)
+ (xy 115.256811 106.038041)
+ (xy 115.387801 105.759672)
+ (xy 115.390716 105.752309)
+ (xy 115.485783 105.459723)
+ (xy 115.487754 105.452046)
+ (xy 115.5454 105.149855)
+ (xy 115.546393 105.141994)
+ (xy 115.56571 104.834958)
+ (xy 115.56571 104.827042)
+ (xy 115.546393 104.520006)
+ (xy 115.5454 104.512145)
+ (xy 115.487754 104.209954)
+ (xy 115.485783 104.202277)
+ (xy 115.390716 103.909691)
+ (xy 115.387801 103.902328)
+ (xy 115.256811 103.623959)
+ (xy 115.252999 103.617026)
+ (xy 115.088149 103.357264)
+ (xy 115.083505 103.350871)
+ (xy 115.008503 103.26021)
+ (xy 114.995986 103.251755)
+ (xy 114.985248 103.257962)
+ (xy 113.425022 104.818188)
+ (xy 113.417408 104.832132)
+ (xy 112.687356 104.832132)
+ (xy 112.688592 104.829868)
+ (xy 112.688461 104.828035)
+ (xy 112.68421 104.82142)
+ (xy 111.121855 103.259065)
+ (xy 111.108593 103.251823)
+ (xy 111.098488 103.259012)
+ (xy 111.022495 103.350871)
+ (xy 111.017851 103.357264)
+ (xy 110.853001 103.617026)
+ (xy 110.849189 103.623959)
+ (xy 110.718199 103.902328)
+ (xy 110.715284 103.909691)
+ (xy 110.620217 104.202277)
+ (xy 110.618246 104.209954)
+ (xy 110.5606 104.512145)
+ (xy 110.559607 104.520006)
+ (xy 110.54029 104.827042)
+ (xy 110.54029 104.834958)
+ (xy 88.896973 104.834958)
+ (xy 85.386305 102.884587)
+ (xy 111.471754 102.884587)
+ (xy 111.478658 102.897448)
+ (xy 113.040188 104.458978)
+ (xy 113.054132 104.466592)
+ (xy 113.055965 104.466461)
+ (xy 113.06258 104.46221)
+ (xy 114.627666 102.897124)
+ (xy 114.634279 102.885013)
+ (xy 114.625452 102.873395)
+ (xy 114.402719 102.71157)
+ (xy 114.396039 102.70733)
+ (xy 114.126428 102.55911)
+ (xy 114.119293 102.555753)
+ (xy 113.83323 102.442492)
+ (xy 113.825704 102.440047)
+ (xy 113.527721 102.363538)
+ (xy 113.51995 102.362055)
+ (xy 113.214722 102.323497)
+ (xy 113.206831 102.323)
+ (xy 112.899169 102.323)
+ (xy 112.891278 102.323497)
+ (xy 112.58605 102.362055)
+ (xy 112.578279 102.363538)
+ (xy 112.280296 102.440047)
+ (xy 112.27277 102.442492)
+ (xy 111.986707 102.555753)
+ (xy 111.979572 102.55911)
+ (xy 111.709961 102.70733)
+ (xy 111.703281 102.71157)
+ (xy 111.480177 102.873664)
+ (xy 111.471754 102.884587)
+ (xy 85.386305 102.884587)
+ (xy 77.154309 98.311256)
+ (xy 77.104475 98.260689)
+ (xy 77.0895 98.201112)
+ (xy 77.0895 97.226218)
+ (xy 78.9865 97.226218)
+ (xy 78.98717 97.230768)
+ (xy 78.98717 97.230771)
+ (xy 78.995216 97.285426)
+ (xy 78.996642 97.295112)
+ (xy 79.000958 97.303902)
+ (xy 79.042708 97.388937)
+ (xy 79.048068 97.399855)
+ (xy 79.13065 97.482293)
+ (xy 79.140006 97.486866)
+ (xy 79.140007 97.486867)
+ (xy 79.150259 97.491878)
+ (xy 79.235482 97.533536)
+ (xy 79.261071 97.537269)
+ (xy 79.299256 97.54284)
+ (xy 79.29926 97.54284)
+ (xy 79.303782 97.5435)
+ (xy 80.970218 97.5435)
+ (xy 80.974768 97.54283)
+ (xy 80.974771 97.54283)
+ (xy 81.029426 97.534784)
+ (xy 81.029427 97.534784)
+ (xy 81.039112 97.533358)
+ (xy 81.100535 97.503201)
+ (xy 81.134507 97.486522)
+ (xy 81.134509 97.486521)
+ (xy 81.143855 97.481932)
+ (xy 81.226293 97.39935)
+ (xy 81.233352 97.38491)
+ (xy 81.27324 97.303306)
+ (xy 81.277536 97.294518)
+ (xy 81.285173 97.242171)
+ (xy 81.28684 97.230744)
+ (xy 81.28684 97.23074)
+ (xy 81.2875 97.226218)
+ (xy 81.2875 96.603673)
+ (xy 81.307502 96.535552)
+ (xy 81.361158 96.489059)
+ (xy 81.431432 96.478955)
+ (xy 81.496012 96.508449)
+ (xy 81.534396 96.568175)
+ (xy 81.535658 96.573784)
+ (xy 81.535796 96.573749)
+ (xy 81.587845 96.77869)
+ (xy 81.676369 96.970714)
+ (xy 81.798405 97.143391)
+ (xy 81.806564 97.151339)
+ (xy 81.925973 97.267662)
+ (xy 81.949865 97.290937)
+ (xy 81.954661 97.294142)
+ (xy 81.954664 97.294144)
+ (xy 82.090505 97.38491)
+ (xy 82.125677 97.408411)
+ (xy 82.130985 97.410692)
+ (xy 82.130986 97.410692)
+ (xy 82.31465 97.4896)
+ (xy 82.314653 97.489601)
+ (xy 82.319953 97.491878)
+ (xy 82.325582 97.493152)
+ (xy 82.325583 97.493152)
+ (xy 82.52055 97.537269)
+ (xy 82.520553 97.537269)
+ (xy 82.526186 97.538544)
+ (xy 82.531957 97.538771)
+ (xy 82.531959 97.538771)
+ (xy 82.593989 97.541208)
+ (xy 82.73747 97.546846)
+ (xy 82.743179 97.546018)
+ (xy 82.743183 97.546018)
+ (xy 82.941015 97.517333)
+ (xy 82.941019 97.517332)
+ (xy 82.94673 97.516504)
+ (xy 83.034038 97.486867)
+ (xy 83.141483 97.450395)
+ (xy 83.141488 97.450393)
+ (xy 83.146955 97.448537)
+ (xy 83.156451 97.443219)
+ (xy 83.326395 97.348046)
+ (xy 83.326399 97.348043)
+ (xy 83.331442 97.345219)
+ (xy 83.494012 97.210012)
+ (xy 83.629219 97.047442)
+ (xy 83.632043 97.042399)
+ (xy 83.632046 97.042395)
+ (xy 83.729713 96.867998)
+ (xy 83.729714 96.867996)
+ (xy 83.732537 96.862955)
+ (xy 83.742239 96.834375)
+ (xy 83.783074 96.7763)
+ (xy 83.848827 96.749521)
+ (xy 83.918619 96.762542)
+ (xy 83.970293 96.811228)
+ (xy 83.979952 96.831783)
+ (xy 83.985509 96.84705)
+ (xy 84.077586 97.044511)
+ (xy 84.083069 97.054007)
+ (xy 84.208028 97.232467)
+ (xy 84.215084 97.240875)
+ (xy 84.369125 97.394916)
+ (xy 84.377533 97.401972)
+ (xy 84.555993 97.526931)
+ (xy 84.565489 97.532414)
+ (xy 84.762947 97.62449)
+ (xy 84.773239 97.628236)
+ (xy 84.945503 97.674394)
+ (xy 84.959599 97.674058)
+ (xy 84.963 97.666116)
+ (xy 84.963 97.660967)
+ (xy 85.471 97.660967)
+ (xy 85.474973 97.674498)
+ (xy 85.483522 97.675727)
+ (xy 85.660761 97.628236)
+ (xy 85.671053 97.62449)
+ (xy 85.868511 97.532414)
+ (xy 85.878007 97.526931)
+ (xy 86.056467 97.401972)
+ (xy 86.064875 97.394916)
+ (xy 86.218916 97.240875)
+ (xy 86.225972 97.232467)
+ (xy 86.350931 97.054007)
+ (xy 86.356414 97.044511)
+ (xy 86.372805 97.009359)
+ (xy 86.419722 96.956074)
+ (xy 86.487999 96.936613)
+ (xy 86.555959 96.957155)
+ (xy 86.601195 97.009359)
+ (xy 86.617586 97.044511)
+ (xy 86.623069 97.054007)
+ (xy 86.748028 97.232467)
+ (xy 86.755084 97.240875)
+ (xy 86.909125 97.394916)
+ (xy 86.917533 97.401972)
+ (xy 87.095993 97.526931)
+ (xy 87.105489 97.532414)
+ (xy 87.302947 97.62449)
+ (xy 87.313239 97.628236)
+ (xy 87.485503 97.674394)
+ (xy 87.499599 97.674058)
+ (xy 87.503 97.666116)
+ (xy 87.503 96.665115)
+ (xy 87.498525 96.649876)
+ (xy 87.497135 96.648671)
+ (xy 87.489452 96.647)
+ (xy 85.489115 96.647)
+ (xy 85.473876 96.651475)
+ (xy 85.472671 96.652865)
+ (xy 85.471 96.660548)
+ (xy 85.471 97.660967)
+ (xy 84.963 97.660967)
+ (xy 84.963 96.120885)
+ (xy 85.471 96.120885)
+ (xy 85.475475 96.136124)
+ (xy 85.476865 96.137329)
+ (xy 85.484548 96.139)
+ (xy 87.484885 96.139)
+ (xy 87.500124 96.134525)
+ (xy 87.501329 96.133135)
+ (xy 87.503 96.125452)
+ (xy 87.503 95.125033)
+ (xy 87.499027 95.111502)
+ (xy 87.490478 95.110273)
+ (xy 87.313239 95.157764)
+ (xy 87.302947 95.16151)
+ (xy 87.105489 95.253586)
+ (xy 87.095993 95.259069)
+ (xy 86.917533 95.384028)
+ (xy 86.909125 95.391084)
+ (xy 86.755084 95.545125)
+ (xy 86.748028 95.553533)
+ (xy 86.623069 95.731993)
+ (xy 86.617586 95.741489)
+ (xy 86.601195 95.776641)
+ (xy 86.554278 95.829926)
+ (xy 86.486001 95.849387)
+ (xy 86.418041 95.828845)
+ (xy 86.372805 95.776641)
+ (xy 86.356414 95.741489)
+ (xy 86.350931 95.731993)
+ (xy 86.225972 95.553533)
+ (xy 86.218916 95.545125)
+ (xy 86.064875 95.391084)
+ (xy 86.056467 95.384028)
+ (xy 85.878007 95.259069)
+ (xy 85.868511 95.253586)
+ (xy 85.671053 95.16151)
+ (xy 85.660761 95.157764)
+ (xy 85.488497 95.111606)
+ (xy 85.474401 95.111942)
+ (xy 85.471 95.119884)
+ (xy 85.471 96.120885)
+ (xy 84.963 96.120885)
+ (xy 84.963 95.125033)
+ (xy 84.959027 95.111502)
+ (xy 84.950478 95.110273)
+ (xy 84.773239 95.157764)
+ (xy 84.762947 95.16151)
+ (xy 84.565489 95.253586)
+ (xy 84.555993 95.259069)
+ (xy 84.377533 95.384028)
+ (xy 84.369125 95.391084)
+ (xy 84.215084 95.545125)
+ (xy 84.208028 95.553533)
+ (xy 84.083069 95.731993)
+ (xy 84.077586 95.741489)
+ (xy 83.98551 95.938947)
+ (xy 83.980455 95.952836)
+ (xy 83.938361 96.010007)
+ (xy 83.872039 96.035345)
+ (xy 83.802548 96.020804)
+ (xy 83.749048 95.96547)
+ (xy 83.664719 95.794469)
+ (xy 83.662165 95.78929)
+ (xy 83.535651 95.619867)
+ (xy 83.407237 95.501162)
+ (xy 83.384622 95.480257)
+ (xy 83.38462 95.480255)
+ (xy 83.380381 95.476337)
+ (xy 83.335671 95.448127)
+ (xy 83.206434 95.366584)
+ (xy 83.206433 95.366584)
+ (xy 83.201554 95.363505)
+ (xy 83.00516 95.285152)
+ (xy 82.999503 95.284027)
+ (xy 82.999497 95.284025)
+ (xy 82.803442 95.245028)
+ (xy 82.80344 95.245028)
+ (xy 82.797775 95.243901)
+ (xy 82.792 95.243825)
+ (xy 82.791996 95.243825)
+ (xy 82.685976 95.242437)
+ (xy 82.586346 95.241133)
+ (xy 82.580649 95.242112)
+ (xy 82.580648 95.242112)
+ (xy 82.38365 95.275962)
+ (xy 82.383649 95.275962)
+ (xy 82.377953 95.276941)
+ (xy 82.179575 95.350127)
+ (xy 82.174614 95.353079)
+ (xy 82.174613 95.353079)
+ (xy 82.157089 95.363505)
+ (xy 81.997856 95.458238)
+ (xy 81.838881 95.597655)
+ (xy 81.707976 95.763708)
+ (xy 81.705287 95.768819)
+ (xy 81.705285 95.768822)
+ (xy 81.691792 95.794469)
+ (xy 81.609523 95.950836)
+ (xy 81.54682 96.152773)
+ (xy 81.546141 96.15851)
+ (xy 81.538627 96.221995)
+ (xy 81.510756 96.287292)
+ (xy 81.452008 96.327156)
+ (xy 81.381034 96.32893)
+ (xy 81.320367 96.292051)
+ (xy 81.289269 96.228227)
+ (xy 81.2875 96.207185)
+ (xy 81.2875 95.559782)
+ (xy 81.286544 95.553284)
+ (xy 81.278784 95.500574)
+ (xy 81.278784 95.500573)
+ (xy 81.277358 95.490888)
+ (xy 81.225932 95.386145)
+ (xy 81.14335 95.303707)
+ (xy 81.126698 95.295567)
+ (xy 81.089969 95.277614)
+ (xy 81.038518 95.252464)
+ (xy 81.008027 95.248016)
+ (xy 80.974744 95.24316)
+ (xy 80.97474 95.24316)
+ (xy 80.970218 95.2425)
+ (xy 79.303782 95.2425)
+ (xy 79.299232 95.24317)
+ (xy 79.299229 95.24317)
+ (xy 79.244574 95.251216)
+ (xy 79.244573 95.251216)
+ (xy 79.234888 95.252642)
+ (xy 79.184992 95.27714)
+ (xy 79.139493 95.299478)
+ (xy 79.139491 95.299479)
+ (xy 79.130145 95.304068)
+ (xy 79.122787 95.311438)
+ (xy 79.122788 95.311438)
+ (xy 79.059396 95.374941)
+ (xy 79.047707 95.38665)
+ (xy 78.996464 95.491482)
+ (xy 78.995052 95.501162)
+ (xy 78.987412 95.553533)
+ (xy 78.9865 95.559782)
+ (xy 78.9865 97.226218)
+ (xy 77.0895 97.226218)
+ (xy 77.0895 93.216261)
+ (xy 84.567294 93.216261)
+ (xy 84.57659 93.228276)
+ (xy 84.606189 93.249001)
+ (xy 84.615677 93.254479)
+ (xy 84.797277 93.339159)
+ (xy 84.807571 93.342907)
+ (xy 85.001122 93.394769)
+ (xy 85.011909 93.396671)
+ (xy 85.211525 93.414135)
+ (xy 85.222475 93.414135)
+ (xy 85.422091 93.396671)
+ (xy 85.432878 93.394769)
+ (xy 85.626429 93.342907)
+ (xy 85.636723 93.339159)
+ (xy 85.818323 93.254479)
+ (xy 85.827811 93.249001)
+ (xy 85.858248 93.227689)
+ (xy 85.866623 93.217212)
+ (xy 85.859554 93.203764)
+ (xy 85.229812 92.574022)
+ (xy 85.215868 92.566408)
+ (xy 85.214035 92.566539)
+ (xy 85.20742 92.57079)
+ (xy 84.573724 93.204486)
+ (xy 84.567294 93.216261)
+ (xy 77.0895 93.216261)
+ (xy 77.0895 92.207475)
+ (xy 84.004865 92.207475)
+ (xy 84.022329 92.407091)
+ (xy 84.024231 92.417878)
+ (xy 84.076093 92.611429)
+ (xy 84.079841 92.621723)
+ (xy 84.164521 92.803323)
+ (xy 84.169999 92.812811)
+ (xy 84.191311 92.843248)
+ (xy 84.201788 92.851623)
+ (xy 84.215236 92.844554)
+ (xy 84.844978 92.214812)
+ (xy 84.851356 92.203132)
+ (xy 85.581408 92.203132)
+ (xy 85.581539 92.204965)
+ (xy 85.58579 92.21158)
+ (xy 86.219486 92.845276)
+ (xy 86.231261 92.851706)
+ (xy 86.243276 92.84241)
+ (xy 86.264001 92.812811)
+ (xy 86.269479 92.803323)
+ (xy 86.354159 92.621723)
+ (xy 86.357907 92.611429)
+ (xy 86.409769 92.417878)
+ (xy 86.411671 92.407091)
+ (xy 86.429135 92.207475)
+ (xy 86.429135 92.196525)
+ (xy 86.428325 92.187262)
+ (xy 91.78152 92.187262)
+ (xy 91.784937 92.227949)
+ (xy 91.794861 92.346128)
+ (xy 91.798759 92.392553)
+ (xy 91.800458 92.398478)
+ (xy 91.849868 92.57079)
+ (xy 91.855544 92.590586)
+ (xy 91.858359 92.596063)
+ (xy 91.85836 92.596066)
+ (xy 91.90154 92.680085)
+ (xy 91.949712 92.773818)
+ (xy 92.077677 92.93527)
+ (xy 92.08237 92.939264)
+ (xy 92.082371 92.939265)
+ (xy 92.228881 93.063954)
+ (xy 92.234564 93.068791)
+ (xy 92.414398 93.169297)
+ (xy 92.509238 93.200113)
+ (xy 92.604471 93.231056)
+ (xy 92.604475 93.231057)
+ (xy 92.610329 93.232959)
+ (xy 92.814894 93.257351)
+ (xy 92.821029 93.256879)
+ (xy 92.821031 93.256879)
+ (xy 92.877039 93.252569)
+ (xy 93.0203 93.241546)
+ (xy 93.02623 93.23989)
+ (xy 93.026232 93.23989)
+ (xy 93.155875 93.203693)
+ (xy 93.218725 93.186145)
+ (xy 93.224214 93.183372)
+ (xy 93.22422 93.18337)
+ (xy 93.397116 93.096033)
+ (xy 93.40261 93.093258)
+ (xy 93.4114 93.086391)
+ (xy 93.560101 92.970213)
+ (xy 93.564951 92.966424)
+ (xy 93.592782 92.934182)
+ (xy 93.69554 92.815134)
+ (xy 93.69554 92.815133)
+ (xy 93.699564 92.810472)
+ (xy 93.7048 92.801256)
+ (xy 93.738056 92.742714)
+ (xy 93.801323 92.631344)
+ (xy 93.866351 92.435863)
+ (xy 93.892171 92.231474)
+ (xy 93.892449 92.21158)
+ (xy 93.892534 92.205522)
+ (xy 93.892534 92.205518)
+ (xy 93.892583 92.202)
+ (xy 93.87248 91.99697)
+ (xy 93.812935 91.799749)
+ (xy 93.716218 91.617849)
+ (xy 93.631035 91.513405)
+ (xy 93.589906 91.462975)
+ (xy 93.589903 91.462972)
+ (xy 93.586011 91.4582)
+ (xy 93.54099 91.420955)
+ (xy 93.432025 91.330811)
+ (xy 93.432021 91.330809)
+ (xy 93.427275 91.326882)
+ (xy 93.246055 91.228897)
+ (xy 93.083676 91.178632)
+ (xy 93.024517 91.139382)
+ (xy 92.99597 91.074378)
+ (xy 93.007098 91.004259)
+ (xy 93.05437 90.951287)
+ (xy 93.087052 90.93691)
+ (xy 93.212788 90.901804)
+ (xy 93.212801 90.901799)
+ (xy 93.218725 90.900145)
+ (xy 93.224214 90.897372)
+ (xy 93.22422 90.89737)
+ (xy 93.397116 90.810033)
+ (xy 93.40261 90.807258)
+ (xy 93.564951 90.680424)
+ (xy 93.693701 90.531265)
+ (xy 93.69554 90.529134)
+ (xy 93.69554 90.529133)
+ (xy 93.699564 90.524472)
+ (xy 93.720387 90.487818)
+ (xy 93.757053 90.423273)
+ (xy 93.801323 90.345344)
+ (xy 93.866351 90.149863)
+ (xy 93.892171 89.945474)
+ (xy 93.892583 89.916)
+ (xy 93.87248 89.71097)
+ (xy 93.812935 89.513749)
+ (xy 93.716218 89.331849)
+ (xy 93.63618 89.233713)
+ (xy 93.589906 89.176975)
+ (xy 93.589903 89.176972)
+ (xy 93.586011 89.1722)
+ (xy 93.548367 89.141058)
+ (xy 93.432025 89.044811)
+ (xy 93.432021 89.044809)
+ (xy 93.427275 89.040882)
+ (xy 93.246055 88.942897)
+ (xy 93.083676 88.892632)
+ (xy 93.024517 88.853382)
+ (xy 92.99597 88.788378)
+ (xy 93.007098 88.718259)
+ (xy 93.05437 88.665287)
+ (xy 93.087052 88.65091)
+ (xy 93.212788 88.615804)
+ (xy 93.212801 88.615799)
+ (xy 93.218725 88.614145)
+ (xy 93.224214 88.611372)
+ (xy 93.22422 88.61137)
+ (xy 93.397116 88.524033)
+ (xy 93.40261 88.521258)
+ (xy 93.564951 88.394424)
+ (xy 93.670146 88.272554)
+ (xy 93.69554 88.243134)
+ (xy 93.69554 88.243133)
+ (xy 93.699564 88.238472)
+ (xy 93.720387 88.201818)
+ (xy 93.798276 88.064707)
+ (xy 93.801323 88.059344)
+ (xy 93.866351 87.863863)
+ (xy 93.892171 87.659474)
+ (xy 93.892506 87.635498)
+ (xy 93.892534 87.633522)
+ (xy 93.892534 87.633518)
+ (xy 93.892583 87.63)
+ (xy 93.87248 87.42497)
+ (xy 93.812935 87.227749)
+ (xy 93.716218 87.045849)
+ (xy 93.642859 86.955902)
+ (xy 93.589906 86.890975)
+ (xy 93.589903 86.890972)
+ (xy 93.586011 86.8862)
+ (xy 93.568786 86.87195)
+ (xy 93.432025 86.758811)
+ (xy 93.432021 86.758809)
+ (xy 93.427275 86.754882)
+ (xy 93.246055 86.656897)
+ (xy 93.083676 86.606632)
+ (xy 93.024517 86.567382)
+ (xy 92.99597 86.502378)
+ (xy 93.007098 86.432259)
+ (xy 93.05437 86.379287)
+ (xy 93.087052 86.36491)
+ (xy 93.212788 86.329804)
+ (xy 93.212801 86.329799)
+ (xy 93.218725 86.328145)
+ (xy 93.224214 86.325372)
+ (xy 93.22422 86.32537)
+ (xy 93.397116 86.238033)
+ (xy 93.40261 86.235258)
+ (xy 93.564951 86.108424)
+ (xy 93.659713 85.998641)
+ (xy 93.69554 85.957134)
+ (xy 93.69554 85.957133)
+ (xy 93.699564 85.952472)
+ (xy 93.70598 85.941179)
+ (xy 93.774982 85.819712)
+ (xy 93.801323 85.773344)
+ (xy 93.866351 85.577863)
+ (xy 93.892171 85.373474)
+ (xy 93.892583 85.344)
+ (xy 93.87248 85.13897)
+ (xy 93.812935 84.941749)
+ (xy 93.716218 84.759849)
+ (xy 93.613538 84.633951)
+ (xy 93.589906 84.604975)
+ (xy 93.589903 84.604972)
+ (xy 93.586011 84.6002)
+ (xy 93.568786 84.58595)
+ (xy 93.432025 84.472811)
+ (xy 93.432021 84.472809)
+ (xy 93.427275 84.468882)
+ (xy 93.246055 84.370897)
+ (xy 93.049254 84.309977)
+ (xy 93.043129 84.309333)
+ (xy 93.043128 84.309333)
+ (xy 92.850498 84.289087)
+ (xy 92.850496 84.289087)
+ (xy 92.844369 84.288443)
+ (xy 92.783724 84.293962)
+ (xy 92.645342 84.306555)
+ (xy 92.645339 84.306556)
+ (xy 92.639203 84.307114)
+ (xy 92.441572 84.36528)
+ (xy 92.436107 84.368137)
+ (xy 92.395753 84.389234)
+ (xy 92.259002 84.460726)
+ (xy 92.254201 84.464586)
+ (xy 92.254198 84.464588)
+ (xy 92.121224 84.571502)
+ (xy 92.098447 84.589815)
+ (xy 91.966024 84.74763)
+ (xy 91.963056 84.753028)
+ (xy 91.963053 84.753033)
+ (xy 91.869743 84.922765)
+ (xy 91.866776 84.928162)
+ (xy 91.804484 85.124532)
+ (xy 91.803798 85.130649)
+ (xy 91.803797 85.130653)
+ (xy 91.795324 85.206197)
+ (xy 91.78152 85.329262)
+ (xy 91.782036 85.335406)
+ (xy 91.788074 85.407305)
+ (xy 91.798759 85.534553)
+ (xy 91.800458 85.540478)
+ (xy 91.840675 85.68073)
+ (xy 91.855544 85.732586)
+ (xy 91.858359 85.738063)
+ (xy 91.85836 85.738066)
+ (xy 91.946897 85.910341)
+ (xy 91.949712 85.915818)
+ (xy 92.077677 86.07727)
+ (xy 92.08237 86.081264)
+ (xy 92.082371 86.081265)
+ (xy 92.145503 86.134994)
+ (xy 92.234564 86.210791)
+ (xy 92.239942 86.213797)
+ (xy 92.239944 86.213798)
+ (xy 92.278342 86.235258)
+ (xy 92.414398 86.311297)
+ (xy 92.466251 86.328145)
+ (xy 92.589231 86.368104)
+ (xy 92.647837 86.408178)
+ (xy 92.675474 86.473574)
+ (xy 92.663367 86.543531)
+ (xy 92.615361 86.595837)
+ (xy 92.585872 86.60881)
+ (xy 92.441572 86.65128)
+ (xy 92.259002 86.746726)
+ (xy 92.254201 86.750586)
+ (xy 92.254198 86.750588)
+ (xy 92.103254 86.87195)
+ (xy 92.098447 86.875815)
+ (xy 91.966024 87.03363)
+ (xy 91.963056 87.039028)
+ (xy 91.963053 87.039033)
+ (xy 91.902398 87.149366)
+ (xy 91.866776 87.214162)
+ (xy 91.804484 87.410532)
+ (xy 91.803798 87.416649)
+ (xy 91.803797 87.416653)
+ (xy 91.784781 87.586187)
+ (xy 91.78152 87.615262)
+ (xy 91.784899 87.6555)
+ (xy 91.785795 87.666165)
+ (xy 91.798759 87.820553)
+ (xy 91.800458 87.826478)
+ (xy 91.849868 87.99879)
+ (xy 91.855544 88.018586)
+ (xy 91.858359 88.024063)
+ (xy 91.85836 88.024066)
+ (xy 91.946897 88.196341)
+ (xy 91.949712 88.201818)
+ (xy 92.077677 88.36327)
+ (xy 92.08237 88.367264)
+ (xy 92.082371 88.367265)
+ (xy 92.18687 88.4562)
+ (xy 92.234564 88.496791)
+ (xy 92.414398 88.597297)
+ (xy 92.466251 88.614145)
+ (xy 92.589231 88.654104)
+ (xy 92.647837 88.694178)
+ (xy 92.675474 88.759574)
+ (xy 92.663367 88.829531)
+ (xy 92.615361 88.881837)
+ (xy 92.585872 88.89481)
+ (xy 92.441572 88.93728)
+ (xy 92.259002 89.032726)
+ (xy 92.254201 89.036586)
+ (xy 92.254198 89.036588)
+ (xy 92.103254 89.15795)
+ (xy 92.098447 89.161815)
+ (xy 91.966024 89.31963)
+ (xy 91.963056 89.325028)
+ (xy 91.963053 89.325033)
+ (xy 91.869743 89.494765)
+ (xy 91.866776 89.500162)
+ (xy 91.804484 89.696532)
+ (xy 91.803798 89.702649)
+ (xy 91.803797 89.702653)
+ (xy 91.788164 89.842025)
+ (xy 91.78152 89.901262)
+ (xy 91.798759 90.106553)
+ (xy 91.800458 90.112478)
+ (xy 91.848944 90.281568)
+ (xy 91.855544 90.304586)
+ (xy 91.858359 90.310063)
+ (xy 91.85836 90.310066)
+ (xy 91.946897 90.482341)
+ (xy 91.949712 90.487818)
+ (xy 92.077677 90.64927)
+ (xy 92.08237 90.653264)
+ (xy 92.082371 90.653265)
+ (xy 92.184802 90.74044)
+ (xy 92.234564 90.782791)
+ (xy 92.414398 90.883297)
+ (xy 92.466251 90.900145)
+ (xy 92.589231 90.940104)
+ (xy 92.647837 90.980178)
+ (xy 92.675474 91.045574)
+ (xy 92.663367 91.115531)
+ (xy 92.615361 91.167837)
+ (xy 92.585872 91.18081)
+ (xy 92.441572 91.22328)
+ (xy 92.436107 91.226137)
+ (xy 92.434313 91.227075)
+ (xy 92.259002 91.318726)
+ (xy 92.254201 91.322586)
+ (xy 92.254198 91.322588)
+ (xy 92.243971 91.330811)
+ (xy 92.098447 91.447815)
+ (xy 91.966024 91.60563)
+ (xy 91.963056 91.611028)
+ (xy 91.963053 91.611033)
+ (xy 91.889183 91.745403)
+ (xy 91.866776 91.786162)
+ (xy 91.804484 91.982532)
+ (xy 91.803798 91.988649)
+ (xy 91.803797 91.988653)
+ (xy 91.785136 92.155026)
+ (xy 91.78152 92.187262)
+ (xy 86.428325 92.187262)
+ (xy 86.411671 91.996909)
+ (xy 86.409769 91.986122)
+ (xy 86.357907 91.792571)
+ (xy 86.354159 91.782277)
+ (xy 86.269479 91.600677)
+ (xy 86.264001 91.591189)
+ (xy 86.242689 91.560752)
+ (xy 86.232212 91.552377)
+ (xy 86.218764 91.559446)
+ (xy 85.589022 92.189188)
+ (xy 85.581408 92.203132)
+ (xy 84.851356 92.203132)
+ (xy 84.852592 92.200868)
+ (xy 84.852461 92.199035)
+ (xy 84.84821 92.19242)
+ (xy 84.214514 91.558724)
+ (xy 84.202739 91.552294)
+ (xy 84.190724 91.56159)
+ (xy 84.169999 91.591189)
+ (xy 84.164521 91.600677)
+ (xy 84.079841 91.782277)
+ (xy 84.076093 91.792571)
+ (xy 84.024231 91.986122)
+ (xy 84.022329 91.996909)
+ (xy 84.004865 92.196525)
+ (xy 84.004865 92.207475)
+ (xy 77.0895 92.207475)
+ (xy 77.0895 90.182522)
+ (xy 84.037801 90.182522)
+ (xy 84.076092 90.325423)
+ (xy 84.079842 90.335727)
+ (xy 84.164521 90.517323)
+ (xy 84.169998 90.526811)
+ (xy 84.284925 90.690942)
+ (xy 84.291981 90.69935)
+ (xy 84.43365 90.841019)
+ (xy 84.442058 90.848075)
+ (xy 84.595886 90.955787)
+ (xy 84.640214 91.011244)
+ (xy 84.647523 91.081864)
+ (xy 84.615492 91.145224)
+ (xy 84.595886 91.162213)
+ (xy 84.575752 91.176311)
+ (xy 84.567377 91.186788)
+ (xy 84.574446 91.200236)
+ (xy 85.204188 91.829978)
+ (xy 85.218132 91.837592)
+ (xy 85.219965 91.837461)
+ (xy 85.22658 91.83321)
+ (xy 85.860276 91.199514)
+ (xy 85.866706 91.187739)
+ (xy 85.85741 91.175725)
+ (xy 85.838114 91.162213)
+ (xy 85.793786 91.106756)
+ (xy 85.786477 91.036137)
+ (xy 85.818507 90.972776)
+ (xy 85.838114 90.955787)
+ (xy 85.991942 90.848075)
+ (xy 86.00035 90.841019)
+ (xy 86.142019 90.69935)
+ (xy 86.149075 90.690942)
+ (xy 86.264002 90.526811)
+ (xy 86.269479 90.517323)
+ (xy 86.354158 90.335727)
+ (xy 86.357908 90.325423)
+ (xy 86.394866 90.187497)
+ (xy 86.39453 90.173401)
+ (xy 86.386588 90.17)
+ (xy 84.052561 90.17)
+ (xy 84.03903 90.173973)
+ (xy 84.037801 90.182522)
+ (xy 77.0895 90.182522)
+ (xy 77.0895 89.644503)
+ (xy 84.039134 89.644503)
+ (xy 84.03947 89.658599)
+ (xy 84.047412 89.662)
+ (xy 86.381439 89.662)
+ (xy 86.39497 89.658027)
+ (xy 86.396199 89.649478)
+ (xy 86.357908 89.506577)
+ (xy 86.354158 89.496273)
+ (xy 86.269479 89.314677)
+ (xy 86.264002 89.305189)
+ (xy 86.149075 89.141058)
+ (xy 86.142019 89.13265)
+ (xy 86.00035 88.990981)
+ (xy 85.991942 88.983925)
+ (xy 85.838114 88.876213)
+ (xy 85.793786 88.820756)
+ (xy 85.786477 88.750136)
+ (xy 85.818508 88.686776)
+ (xy 85.838114 88.669787)
+ (xy 85.858248 88.655689)
+ (xy 85.866623 88.645212)
+ (xy 85.859554 88.631764)
+ (xy 85.229812 88.002022)
+ (xy 85.215868 87.994408)
+ (xy 85.214035 87.994539)
+ (xy 85.20742 87.99879)
+ (xy 84.573724 88.632486)
+ (xy 84.567294 88.644261)
+ (xy 84.57659 88.656275)
+ (xy 84.595886 88.669787)
+ (xy 84.640214 88.725244)
+ (xy 84.647523 88.795863)
+ (xy 84.615493 88.859224)
+ (xy 84.595886 88.876213)
+ (xy 84.442058 88.983925)
+ (xy 84.43365 88.990981)
+ (xy 84.291981 89.13265)
+ (xy 84.284925 89.141058)
+ (xy 84.169998 89.305189)
+ (xy 84.164521 89.314677)
+ (xy 84.079842 89.496273)
+ (xy 84.076092 89.506577)
+ (xy 84.039134 89.644503)
+ (xy 77.0895 89.644503)
+ (xy 77.0895 87.635475)
+ (xy 84.004865 87.635475)
+ (xy 84.022329 87.835091)
+ (xy 84.024231 87.845878)
+ (xy 84.076093 88.039429)
+ (xy 84.079841 88.049723)
+ (xy 84.164521 88.231323)
+ (xy 84.169999 88.240811)
+ (xy 84.191311 88.271248)
+ (xy 84.201788 88.279623)
+ (xy 84.215236 88.272554)
+ (xy 84.844978 87.642812)
+ (xy 84.851356 87.631132)
+ (xy 85.581408 87.631132)
+ (xy 85.581539 87.632965)
+ (xy 85.58579 87.63958)
+ (xy 86.219486 88.273276)
+ (xy 86.231261 88.279706)
+ (xy 86.243276 88.27041)
+ (xy 86.264001 88.240811)
+ (xy 86.269479 88.231323)
+ (xy 86.354159 88.049723)
+ (xy 86.357907 88.039429)
+ (xy 86.409769 87.845878)
+ (xy 86.411671 87.835091)
+ (xy 86.429135 87.635475)
+ (xy 86.429135 87.624525)
+ (xy 86.411671 87.424909)
+ (xy 86.409769 87.414122)
+ (xy 86.357907 87.220571)
+ (xy 86.354159 87.210277)
+ (xy 86.269479 87.028677)
+ (xy 86.264001 87.019189)
+ (xy 86.242689 86.988752)
+ (xy 86.232212 86.980377)
+ (xy 86.218764 86.987446)
+ (xy 85.589022 87.617188)
+ (xy 85.581408 87.631132)
+ (xy 84.851356 87.631132)
+ (xy 84.852592 87.628868)
+ (xy 84.852461 87.627035)
+ (xy 84.84821 87.62042)
+ (xy 84.214514 86.986724)
+ (xy 84.202739 86.980294)
+ (xy 84.190724 86.98959)
+ (xy 84.169999 87.019189)
+ (xy 84.164521 87.028677)
+ (xy 84.079841 87.210277)
+ (xy 84.076093 87.220571)
+ (xy 84.024231 87.414122)
+ (xy 84.022329 87.424909)
+ (xy 84.004865 87.624525)
+ (xy 84.004865 87.635475)
+ (xy 77.0895 87.635475)
+ (xy 77.0895 85.610522)
+ (xy 84.037801 85.610522)
+ (xy 84.076092 85.753423)
+ (xy 84.079842 85.763727)
+ (xy 84.164521 85.945323)
+ (xy 84.169998 85.954811)
+ (xy 84.284925 86.118942)
+ (xy 84.291981 86.12735)
+ (xy 84.43365 86.269019)
+ (xy 84.442058 86.276075)
+ (xy 84.595886 86.383787)
+ (xy 84.640214 86.439244)
+ (xy 84.647523 86.509864)
+ (xy 84.615492 86.573224)
+ (xy 84.595886 86.590213)
+ (xy 84.575752 86.604311)
+ (xy 84.567377 86.614788)
+ (xy 84.574446 86.628236)
+ (xy 85.204188 87.257978)
+ (xy 85.218132 87.265592)
+ (xy 85.219965 87.265461)
+ (xy 85.22658 87.26121)
+ (xy 85.860276 86.627514)
+ (xy 85.866706 86.615739)
+ (xy 85.85741 86.603725)
+ (xy 85.838114 86.590213)
+ (xy 85.793786 86.534756)
+ (xy 85.786477 86.464137)
+ (xy 85.818507 86.400776)
+ (xy 85.838114 86.383787)
+ (xy 85.991942 86.276075)
+ (xy 86.00035 86.269019)
+ (xy 86.142019 86.12735)
+ (xy 86.149075 86.118942)
+ (xy 86.264002 85.954811)
+ (xy 86.269479 85.945323)
+ (xy 86.354158 85.763727)
+ (xy 86.357908 85.753423)
+ (xy 86.394866 85.615497)
+ (xy 86.39453 85.601401)
+ (xy 86.386588 85.598)
+ (xy 84.052561 85.598)
+ (xy 84.03903 85.601973)
+ (xy 84.037801 85.610522)
+ (xy 77.0895 85.610522)
+ (xy 77.0895 85.072503)
+ (xy 84.039134 85.072503)
+ (xy 84.03947 85.086599)
+ (xy 84.047412 85.09)
+ (xy 84.944885 85.09)
+ (xy 84.960124 85.085525)
+ (xy 84.961329 85.084135)
+ (xy 84.963 85.076452)
+ (xy 84.963 85.071885)
+ (xy 85.471 85.071885)
+ (xy 85.475475 85.087124)
+ (xy 85.476865 85.088329)
+ (xy 85.484548 85.09)
+ (xy 86.381439 85.09)
+ (xy 86.39497 85.086027)
+ (xy 86.396199 85.077478)
+ (xy 86.357908 84.934577)
+ (xy 86.354158 84.924273)
+ (xy 86.269479 84.742677)
+ (xy 86.264002 84.733189)
+ (xy 86.149075 84.569058)
+ (xy 86.142019 84.56065)
+ (xy 86.00035 84.418981)
+ (xy 85.991942 84.411925)
+ (xy 85.827811 84.296998)
+ (xy 85.818323 84.291521)
+ (xy 85.636727 84.206842)
+ (xy 85.626423 84.203092)
+ (xy 85.488497 84.166134)
+ (xy 85.474401 84.16647)
+ (xy 85.471 84.174412)
+ (xy 85.471 85.071885)
+ (xy 84.963 85.071885)
+ (xy 84.963 84.179561)
+ (xy 84.959027 84.16603)
+ (xy 84.950478 84.164801)
+ (xy 84.807577 84.203092)
+ (xy 84.797273 84.206842)
+ (xy 84.615677 84.291521)
+ (xy 84.606189 84.296998)
+ (xy 84.442058 84.411925)
+ (xy 84.43365 84.418981)
+ (xy 84.291981 84.56065)
+ (xy 84.284925 84.569058)
+ (xy 84.169998 84.733189)
+ (xy 84.164521 84.742677)
+ (xy 84.079842 84.924273)
+ (xy 84.076092 84.934577)
+ (xy 84.039134 85.072503)
+ (xy 77.0895 85.072503)
+ (xy 77.0895 81.122754)
+ (xy 78.981967 81.122754)
+ (xy 78.982345 81.12852)
+ (xy 78.994664 81.31647)
+ (xy 78.995796 81.333749)
+ (xy 78.997217 81.339345)
+ (xy 78.997218 81.33935)
+ (xy 79.044861 81.526942)
+ (xy 79.047845 81.53869)
+ (xy 79.050262 81.543933)
+ (xy 79.101642 81.655385)
+ (xy 79.136369 81.730714)
+ (xy 79.258405 81.903391)
+ (xy 79.409865 82.050937)
+ (xy 79.414661 82.054142)
+ (xy 79.414664 82.054144)
+ (xy 79.50649 82.1155)
+ (xy 79.585677 82.168411)
+ (xy 79.590985 82.170692)
+ (xy 79.590986 82.170692)
+ (xy 79.77465 82.2496)
+ (xy 79.774653 82.249601)
+ (xy 79.779953 82.251878)
+ (xy 79.785582 82.253152)
+ (xy 79.785583 82.253152)
+ (xy 79.98055 82.297269)
+ (xy 79.980553 82.297269)
+ (xy 79.986186 82.298544)
+ (xy 79.991957 82.298771)
+ (xy 79.991959 82.298771)
+ (xy 80.053989 82.301208)
+ (xy 80.19747 82.306846)
+ (xy 80.203179 82.306018)
+ (xy 80.203183 82.306018)
+ (xy 80.401015 82.277333)
+ (xy 80.401019 82.277332)
+ (xy 80.40673 82.276504)
+ (xy 80.50452 82.243309)
+ (xy 80.601483 82.210395)
+ (xy 80.601488 82.210393)
+ (xy 80.606955 82.208537)
+ (xy 80.611998 82.205713)
+ (xy 80.786395 82.108046)
+ (xy 80.786399 82.108043)
+ (xy 80.791442 82.105219)
+ (xy 80.954012 81.970012)
+ (xy 81.089219 81.807442)
+ (xy 81.092043 81.802399)
+ (xy 81.092046 81.802395)
+ (xy 81.189713 81.627998)
+ (xy 81.189714 81.627996)
+ (xy 81.192537 81.622955)
+ (xy 81.202239 81.594375)
+ (xy 81.243074 81.5363)
+ (xy 81.308827 81.509521)
+ (xy 81.378619 81.522542)
+ (xy 81.430293 81.571228)
+ (xy 81.439952 81.591783)
+ (xy 81.445509 81.60705)
+ (xy 81.537586 81.804511)
+ (xy 81.543069 81.814007)
+ (xy 81.668028 81.992467)
+ (xy 81.675084 82.000875)
+ (xy 81.829125 82.154916)
+ (xy 81.837533 82.161972)
+ (xy 82.015993 82.286931)
+ (xy 82.025489 82.292414)
+ (xy 82.222947 82.38449)
+ (xy 82.233239 82.388236)
+ (xy 82.405503 82.434394)
+ (xy 82.419599 82.434058)
+ (xy 82.423 82.426116)
+ (xy 82.423 82.420967)
+ (xy 82.931 82.420967)
+ (xy 82.934973 82.434498)
+ (xy 82.943522 82.435727)
+ (xy 83.120761 82.388236)
+ (xy 83.131053 82.38449)
+ (xy 83.328511 82.292414)
+ (xy 83.338007 82.286931)
+ (xy 83.516467 82.161972)
+ (xy 83.524875 82.154916)
+ (xy 83.678916 82.000875)
+ (xy 83.685972 81.992467)
+ (xy 83.810931 81.814007)
+ (xy 83.816414 81.804511)
+ (xy 83.90849 81.607053)
+ (xy 83.914119 81.591587)
+ (xy 83.916329 81.592391)
+ (xy 83.948051 81.540324)
+ (xy 84.011904 81.509288)
+ (xy 84.082401 81.517701)
+ (xy 84.137157 81.562892)
+ (xy 84.147252 81.580788)
+ (xy 84.194131 81.682476)
+ (xy 84.216369 81.730714)
+ (xy 84.338405 81.903391)
+ (xy 84.489865 82.050937)
+ (xy 84.494661 82.054142)
+ (xy 84.494664 82.054144)
+ (xy 84.58649 82.1155)
+ (xy 84.665677 82.168411)
+ (xy 84.670985 82.170692)
+ (xy 84.670986 82.170692)
+ (xy 84.85465 82.2496)
+ (xy 84.854653 82.249601)
+ (xy 84.859953 82.251878)
+ (xy 84.865582 82.253152)
+ (xy 84.865583 82.253152)
+ (xy 85.06055 82.297269)
+ (xy 85.060553 82.297269)
+ (xy 85.066186 82.298544)
+ (xy 85.071957 82.298771)
+ (xy 85.071959 82.298771)
+ (xy 85.133989 82.301208)
+ (xy 85.27747 82.306846)
+ (xy 85.283179 82.306018)
+ (xy 85.283183 82.306018)
+ (xy 85.481015 82.277333)
+ (xy 85.481019 82.277332)
+ (xy 85.48673 82.276504)
+ (xy 85.58452 82.243309)
+ (xy 85.681483 82.210395)
+ (xy 85.681488 82.210393)
+ (xy 85.686955 82.208537)
+ (xy 85.691998 82.205713)
+ (xy 85.866395 82.108046)
+ (xy 85.866399 82.108043)
+ (xy 85.871442 82.105219)
+ (xy 86.034012 81.970012)
+ (xy 86.169219 81.807442)
+ (xy 86.172043 81.802399)
+ (xy 86.172046 81.802395)
+ (xy 86.269713 81.627998)
+ (xy 86.269714 81.627996)
+ (xy 86.272537 81.622955)
+ (xy 86.274393 81.617488)
+ (xy 86.274395 81.617483)
+ (xy 86.321173 81.479676)
+ (xy 86.340504 81.42273)
+ (xy 86.341333 81.417015)
+ (xy 86.36209 81.27386)
+ (xy 86.39166 81.209315)
+ (xy 86.451432 81.171003)
+ (xy 86.522429 81.171087)
+ (xy 86.582109 81.209542)
+ (xy 86.611525 81.274158)
+ (xy 86.612515 81.283695)
+ (xy 86.615796 81.333749)
+ (xy 86.617217 81.339345)
+ (xy 86.617218 81.33935)
+ (xy 86.664861 81.526942)
+ (xy 86.667845 81.53869)
+ (xy 86.670262 81.543933)
+ (xy 86.721642 81.655385)
+ (xy 86.756369 81.730714)
+ (xy 86.878405 81.903391)
+ (xy 87.029865 82.050937)
+ (xy 87.034661 82.054142)
+ (xy 87.034664 82.054144)
+ (xy 87.12649 82.1155)
+ (xy 87.205677 82.168411)
+ (xy 87.210985 82.170692)
+ (xy 87.210986 82.170692)
+ (xy 87.39465 82.2496)
+ (xy 87.394653 82.249601)
+ (xy 87.399953 82.251878)
+ (xy 87.405582 82.253152)
+ (xy 87.405583 82.253152)
+ (xy 87.60055 82.297269)
+ (xy 87.600553 82.297269)
+ (xy 87.606186 82.298544)
+ (xy 87.611957 82.298771)
+ (xy 87.611959 82.298771)
+ (xy 87.673989 82.301208)
+ (xy 87.81747 82.306846)
+ (xy 87.823179 82.306018)
+ (xy 87.823183 82.306018)
+ (xy 88.021015 82.277333)
+ (xy 88.021019 82.277332)
+ (xy 88.02673 82.276504)
+ (xy 88.12452 82.243309)
+ (xy 88.221483 82.210395)
+ (xy 88.221488 82.210393)
+ (xy 88.226955 82.208537)
+ (xy 88.231998 82.205713)
+ (xy 88.406395 82.108046)
+ (xy 88.406399 82.108043)
+ (xy 88.411442 82.105219)
+ (xy 88.574012 81.970012)
+ (xy 88.709219 81.807442)
+ (xy 88.712043 81.802399)
+ (xy 88.712046 81.802395)
+ (xy 88.809713 81.627998)
+ (xy 88.809714 81.627996)
+ (xy 88.812537 81.622955)
+ (xy 88.814393 81.617488)
+ (xy 88.814395 81.617483)
+ (xy 88.861173 81.479676)
+ (xy 88.880504 81.42273)
+ (xy 88.881333 81.417015)
+ (xy 88.90209 81.27386)
+ (xy 88.93166 81.209315)
+ (xy 88.991432 81.171003)
+ (xy 89.062429 81.171087)
+ (xy 89.122109 81.209542)
+ (xy 89.151525 81.274158)
+ (xy 89.152515 81.283695)
+ (xy 89.155796 81.333749)
+ (xy 89.157217 81.339345)
+ (xy 89.157218 81.33935)
+ (xy 89.204861 81.526942)
+ (xy 89.207845 81.53869)
+ (xy 89.210262 81.543933)
+ (xy 89.261642 81.655385)
+ (xy 89.296369 81.730714)
+ (xy 89.418405 81.903391)
+ (xy 89.569865 82.050937)
+ (xy 89.574661 82.054142)
+ (xy 89.574664 82.054144)
+ (xy 89.66649 82.1155)
+ (xy 89.745677 82.168411)
+ (xy 89.750985 82.170692)
+ (xy 89.750986 82.170692)
+ (xy 89.93465 82.2496)
+ (xy 89.934653 82.249601)
+ (xy 89.939953 82.251878)
+ (xy 89.945582 82.253152)
+ (xy 89.945583 82.253152)
+ (xy 90.14055 82.297269)
+ (xy 90.140553 82.297269)
+ (xy 90.146186 82.298544)
+ (xy 90.151957 82.298771)
+ (xy 90.151959 82.298771)
+ (xy 90.213989 82.301208)
+ (xy 90.35747 82.306846)
+ (xy 90.363179 82.306018)
+ (xy 90.363183 82.306018)
+ (xy 90.561015 82.277333)
+ (xy 90.561019 82.277332)
+ (xy 90.56673 82.276504)
+ (xy 90.66452 82.243309)
+ (xy 90.761483 82.210395)
+ (xy 90.761488 82.210393)
+ (xy 90.766955 82.208537)
+ (xy 90.771998 82.205713)
+ (xy 90.946395 82.108046)
+ (xy 90.946399 82.108043)
+ (xy 90.951442 82.105219)
+ (xy 91.114012 81.970012)
+ (xy 91.249219 81.807442)
+ (xy 91.252043 81.802399)
+ (xy 91.252046 81.802395)
+ (xy 91.349713 81.627998)
+ (xy 91.349714 81.627996)
+ (xy 91.352537 81.622955)
+ (xy 91.354393 81.617488)
+ (xy 91.354395 81.617483)
+ (xy 91.401173 81.479676)
+ (xy 91.420504 81.42273)
+ (xy 91.421333 81.417015)
+ (xy 91.44209 81.27386)
+ (xy 91.47166 81.209315)
+ (xy 91.531432 81.171003)
+ (xy 91.602429 81.171087)
+ (xy 91.662109 81.209542)
+ (xy 91.691525 81.274158)
+ (xy 91.692515 81.283695)
+ (xy 91.695796 81.333749)
+ (xy 91.697217 81.339345)
+ (xy 91.697218 81.33935)
+ (xy 91.744861 81.526942)
+ (xy 91.747845 81.53869)
+ (xy 91.750262 81.543933)
+ (xy 91.801642 81.655385)
+ (xy 91.836369 81.730714)
+ (xy 91.958405 81.903391)
+ (xy 92.109865 82.050937)
+ (xy 92.114661 82.054142)
+ (xy 92.114664 82.054144)
+ (xy 92.20649 82.1155)
+ (xy 92.285677 82.168411)
+ (xy 92.290985 82.170692)
+ (xy 92.290986 82.170692)
+ (xy 92.47465 82.2496)
+ (xy 92.474653 82.249601)
+ (xy 92.479953 82.251878)
+ (xy 92.485582 82.253152)
+ (xy 92.485583 82.253152)
+ (xy 92.68055 82.297269)
+ (xy 92.680553 82.297269)
+ (xy 92.686186 82.298544)
+ (xy 92.691957 82.298771)
+ (xy 92.691959 82.298771)
+ (xy 92.753989 82.301208)
+ (xy 92.89747 82.306846)
+ (xy 92.903179 82.306018)
+ (xy 92.903183 82.306018)
+ (xy 93.101015 82.277333)
+ (xy 93.101019 82.277332)
+ (xy 93.10673 82.276504)
+ (xy 93.20452 82.243309)
+ (xy 93.301483 82.210395)
+ (xy 93.301488 82.210393)
+ (xy 93.306955 82.208537)
+ (xy 93.311998 82.205713)
+ (xy 93.486395 82.108046)
+ (xy 93.486399 82.108043)
+ (xy 93.491442 82.105219)
+ (xy 93.654012 81.970012)
+ (xy 93.789219 81.807442)
+ (xy 93.792043 81.802399)
+ (xy 93.792046 81.802395)
+ (xy 93.889713 81.627998)
+ (xy 93.889714 81.627996)
+ (xy 93.892537 81.622955)
+ (xy 93.894393 81.617488)
+ (xy 93.894395 81.617483)
+ (xy 93.941173 81.479676)
+ (xy 93.960504 81.42273)
+ (xy 93.961333 81.417015)
+ (xy 93.98209 81.27386)
+ (xy 94.01166 81.209315)
+ (xy 94.071432 81.171003)
+ (xy 94.142429 81.171087)
+ (xy 94.202109 81.209542)
+ (xy 94.231525 81.274158)
+ (xy 94.232515 81.283695)
+ (xy 94.235796 81.333749)
+ (xy 94.237217 81.339345)
+ (xy 94.237218 81.33935)
+ (xy 94.284861 81.526942)
+ (xy 94.287845 81.53869)
+ (xy 94.290262 81.543933)
+ (xy 94.341642 81.655385)
+ (xy 94.376369 81.730714)
+ (xy 94.498405 81.903391)
+ (xy 94.649865 82.050937)
+ (xy 94.654661 82.054142)
+ (xy 94.654664 82.054144)
+ (xy 94.74649 82.1155)
+ (xy 94.825677 82.168411)
+ (xy 94.830985 82.170692)
+ (xy 94.830986 82.170692)
+ (xy 95.01465 82.2496)
+ (xy 95.014653 82.249601)
+ (xy 95.019953 82.251878)
+ (xy 95.025582 82.253152)
+ (xy 95.025583 82.253152)
+ (xy 95.22055 82.297269)
+ (xy 95.220553 82.297269)
+ (xy 95.226186 82.298544)
+ (xy 95.231957 82.298771)
+ (xy 95.231959 82.298771)
+ (xy 95.293989 82.301208)
+ (xy 95.43747 82.306846)
+ (xy 95.443179 82.306018)
+ (xy 95.443183 82.306018)
+ (xy 95.641015 82.277333)
+ (xy 95.641019 82.277332)
+ (xy 95.64673 82.276504)
+ (xy 95.655117 82.273657)
+ (xy 95.656577 82.273596)
+ (xy 95.657815 82.273299)
+ (xy 95.657873 82.273542)
+ (xy 95.726051 82.270704)
+ (xy 95.784708 82.303877)
+ (xy 97.563593 84.082763)
+ (xy 99.253207 85.772377)
+ (xy 99.25686 85.776186)
+ (xy 99.296884 85.819712)
+ (xy 99.331953 85.841456)
+ (xy 99.341732 85.848177)
+ (xy 99.374604 85.873127)
+ (xy 99.387474 85.878222)
+ (xy 99.407482 85.888286)
+ (xy 99.41925 85.895582)
+ (xy 99.427493 85.897977)
+ (xy 99.4275 85.89798)
+ (xy 99.458893 85.907101)
+ (xy 99.47012 85.910945)
+ (xy 99.500487 85.922968)
+ (xy 99.500489 85.922969)
+ (xy 99.508472 85.926129)
+ (xy 99.517009 85.927026)
+ (xy 99.517016 85.927028)
+ (xy 99.522239 85.927577)
+ (xy 99.544216 85.931888)
+ (xy 99.551178 85.933911)
+ (xy 99.55118 85.933911)
+ (xy 99.557512 85.935751)
+ (xy 99.564327 85.936251)
+ (xy 99.565404 85.936331)
+ (xy 99.565417 85.936331)
+ (xy 99.567712 85.9365)
+ (xy 99.600538 85.9365)
+ (xy 99.613709 85.93719)
+ (xy 99.651661 85.941179)
+ (xy 99.660127 85.939747)
+ (xy 99.66013 85.939747)
+ (xy 99.668897 85.938264)
+ (xy 99.689909 85.9365)
+ (xy 110.396012 85.9365)
+ (xy 110.464133 85.956502)
+ (xy 110.510626 86.010158)
+ (xy 110.52073 86.080432)
+ (xy 110.501168 86.129857)
+ (xy 110.501818 86.130232)
+ (xy 110.499281 86.134627)
+ (xy 110.499222 86.134775)
+ (xy 110.499068 86.134994)
+ (xy 110.493586 86.144489)
+ (xy 110.40151 86.341947)
+ (xy 110.397764 86.352239)
+ (xy 110.341375 86.562688)
+ (xy 110.339472 86.573481)
+ (xy 110.320483 86.790525)
+ (xy 110.320483 86.801475)
+ (xy 110.339472 87.018519)
+ (xy 110.341375 87.029312)
+ (xy 110.397764 87.239761)
+ (xy 110.40151 87.250053)
+ (xy 110.493586 87.447511)
+ (xy 110.499068 87.457006)
+ (xy 110.499222 87.457225)
+ (xy 110.49926 87.457337)
+ (xy 110.501818 87.461768)
+ (xy 110.500928 87.462282)
+ (xy 110.521913 87.524498)
+ (xy 110.504631 87.593359)
+ (xy 110.452863 87.641945)
+ (xy 110.396012 87.6555)
+ (xy 102.452908 87.6555)
+ (xy 102.385396 87.635887)
+ (xy 102.307082 87.586187)
+ (xy 102.148465 87.529706)
+ (xy 102.141477 87.528873)
+ (xy 102.141474 87.528872)
+ (xy 102.048303 87.517762)
+ (xy 101.981276 87.509769)
+ (xy 101.974273 87.510505)
+ (xy 101.974272 87.510505)
+ (xy 101.928715 87.515293)
+ (xy 101.813824 87.527369)
+ (xy 101.807158 87.529638)
+ (xy 101.807155 87.529639)
+ (xy 101.661101 87.57936)
+ (xy 101.661098 87.579361)
+ (xy 101.654434 87.58163)
+ (xy 101.648439 87.585318)
+ (xy 101.648435 87.58532)
+ (xy 101.517024 87.666165)
+ (xy 101.517022 87.666167)
+ (xy 101.511025 87.669856)
+ (xy 101.505992 87.674785)
+ (xy 101.411896 87.766931)
+ (xy 101.390727 87.787661)
+ (xy 101.299518 87.92919)
+ (xy 101.297108 87.93581)
+ (xy 101.297107 87.935813)
+ (xy 101.27578 87.994408)
+ (xy 101.24193 88.087409)
+ (xy 101.220828 88.254455)
+ (xy 101.221515 88.261462)
+ (xy 101.221515 88.261465)
+ (xy 101.223304 88.279706)
+ (xy 101.237258 88.422025)
+ (xy 101.290405 88.581791)
+ (xy 101.294052 88.587813)
+ (xy 101.294053 88.587815)
+ (xy 101.373053 88.718259)
+ (xy 101.377627 88.725812)
+ (xy 101.382516 88.730875)
+ (xy 101.382517 88.730876)
+ (xy 101.4094 88.758714)
+ (xy 101.494589 88.846929)
+ (xy 101.500486 88.850788)
+ (xy 101.62958 88.935266)
+ (xy 101.629584 88.935268)
+ (xy 101.635478 88.939125)
+ (xy 101.793292 88.997815)
+ (xy 101.800273 88.998746)
+ (xy 101.800275 88.998747)
+ (xy 101.845815 89.004823)
+ (xy 101.960186 89.020083)
+ (xy 101.967197 89.019445)
+ (xy 101.967201 89.019445)
+ (xy 102.120846 89.005462)
+ (xy 102.127867 89.004823)
+ (xy 102.134569 89.002645)
+ (xy 102.134571 89.002645)
+ (xy 102.281301 88.95497)
+ (xy 102.281304 88.954969)
+ (xy 102.288 88.952793)
+ (xy 102.432626 88.866578)
+ (xy 102.43772 88.861727)
+ (xy 102.437724 88.861724)
+ (xy 102.549457 88.755322)
+ (xy 102.549458 88.75532)
+ (xy 102.554557 88.750465)
+ (xy 102.55482 88.750069)
+ (xy 102.611766 88.712182)
+ (xy 102.649178 88.7065)
+ (xy 110.396012 88.7065)
+ (xy 110.464133 88.726502)
+ (xy 110.510626 88.780158)
+ (xy 110.52073 88.850432)
+ (xy 110.501168 88.899857)
+ (xy 110.501818 88.900232)
+ (xy 110.499281 88.904627)
+ (xy 110.499222 88.904775)
+ (xy 110.499068 88.904994)
+ (xy 110.493586 88.914489)
+ (xy 110.40151 89.111947)
+ (xy 110.397764 89.122239)
+ (xy 110.341375 89.332688)
+ (xy 110.339472 89.343481)
+ (xy 110.320483 89.560525)
+ (xy 110.320483 89.571475)
+ (xy 110.339472 89.788519)
+ (xy 110.341375 89.799312)
+ (xy 110.397764 90.009761)
+ (xy 110.40151 90.020053)
+ (xy 110.493586 90.217511)
+ (xy 110.499068 90.227006)
+ (xy 110.499222 90.227225)
+ (xy 110.49926 90.227337)
+ (xy 110.501818 90.231768)
+ (xy 110.500928 90.232282)
+ (xy 110.521913 90.294498)
+ (xy 110.504631 90.363359)
+ (xy 110.452863 90.411945)
+ (xy 110.396012 90.4255)
+ (xy 100.833435 90.4255)
+ (xy 100.828159 90.425389)
+ (xy 100.815894 90.424875)
+ (xy 100.769081 90.422913)
+ (xy 100.728895 90.432338)
+ (xy 100.717229 90.4345)
+ (xy 100.684864 90.438933)
+ (xy 100.684862 90.438934)
+ (xy 100.676354 90.440099)
+ (xy 100.668473 90.44351)
+ (xy 100.668471 90.44351)
+ (xy 100.663653 90.445595)
+ (xy 100.64239 90.452627)
+ (xy 100.637275 90.453827)
+ (xy 100.637273 90.453828)
+ (xy 100.628907 90.45579)
+ (xy 100.621382 90.459927)
+ (xy 100.621379 90.459928)
+ (xy 100.592738 90.475674)
+ (xy 100.582078 90.480896)
+ (xy 100.552098 90.493869)
+ (xy 100.552095 90.493871)
+ (xy 100.544217 90.49728)
+ (xy 100.537544 90.502683)
+ (xy 100.53754 90.502686)
+ (xy 100.533456 90.505993)
+ (xy 100.51487 90.518482)
+ (xy 100.510562 90.52085)
+ (xy 100.510559 90.520853)
+ (xy 100.502738 90.525152)
+ (xy 100.502737 90.525153)
+ (xy 100.494995 90.531836)
+ (xy 100.471791 90.55504)
+ (xy 100.461991 90.563865)
+ (xy 100.432325 90.587888)
+ (xy 100.422194 90.602144)
+ (xy 100.408587 90.618244)
+ (xy 95.783243 95.243588)
+ (xy 95.720931 95.277614)
+ (xy 95.669567 95.278072)
+ (xy 95.503442 95.245028)
+ (xy 95.50344 95.245028)
+ (xy 95.497775 95.243901)
+ (xy 95.492 95.243825)
+ (xy 95.491996 95.243825)
+ (xy 95.385976 95.242437)
+ (xy 95.286346 95.241133)
+ (xy 95.280649 95.242112)
+ (xy 95.280648 95.242112)
+ (xy 95.08365 95.275962)
+ (xy 95.083649 95.275962)
+ (xy 95.077953 95.276941)
+ (xy 94.879575 95.350127)
+ (xy 94.874614 95.353079)
+ (xy 94.874613 95.353079)
+ (xy 94.857089 95.363505)
+ (xy 94.697856 95.458238)
+ (xy 94.538881 95.597655)
+ (xy 94.407976 95.763708)
+ (xy 94.405287 95.768819)
+ (xy 94.405285 95.768822)
+ (xy 94.391792 95.794469)
+ (xy 94.309523 95.950836)
+ (xy 94.24682 96.152773)
+ (xy 94.246141 96.15851)
+ (xy 94.232088 96.277239)
+ (xy 94.204217 96.342537)
+ (xy 94.145469 96.382401)
+ (xy 94.074494 96.384174)
+ (xy 94.013828 96.347295)
+ (xy 93.98273 96.283471)
+ (xy 93.98149 96.273958)
+ (xy 93.976716 96.221995)
+ (xy 93.973081 96.18244)
+ (xy 93.960359 96.137329)
+ (xy 93.944894 96.082496)
+ (xy 93.915686 95.978931)
+ (xy 93.908612 95.964585)
+ (xy 93.824719 95.794469)
+ (xy 93.822165 95.78929)
+ (xy 93.695651 95.619867)
+ (xy 93.567237 95.501162)
+ (xy 93.544622 95.480257)
+ (xy 93.54462 95.480255)
+ (xy 93.540381 95.476337)
+ (xy 93.495671 95.448127)
+ (xy 93.366434 95.366584)
+ (xy 93.366433 95.366584)
+ (xy 93.361554 95.363505)
+ (xy 93.16516 95.285152)
+ (xy 93.159503 95.284027)
+ (xy 93.159497 95.284025)
+ (xy 92.963442 95.245028)
+ (xy 92.96344 95.245028)
+ (xy 92.957775 95.243901)
+ (xy 92.952 95.243825)
+ (xy 92.951996 95.243825)
+ (xy 92.845976 95.242437)
+ (xy 92.746346 95.241133)
+ (xy 92.740649 95.242112)
+ (xy 92.740648 95.242112)
+ (xy 92.54365 95.275962)
+ (xy 92.543649 95.275962)
+ (xy 92.537953 95.276941)
+ (xy 92.339575 95.350127)
+ (xy 92.334614 95.353079)
+ (xy 92.334613 95.353079)
+ (xy 92.317089 95.363505)
+ (xy 92.157856 95.458238)
+ (xy 91.998881 95.597655)
+ (xy 91.867976 95.763708)
+ (xy 91.865287 95.768819)
+ (xy 91.865285 95.768822)
+ (xy 91.851792 95.794469)
+ (xy 91.769523 95.950836)
+ (xy 91.70682 96.152773)
+ (xy 91.706141 96.15851)
+ (xy 91.692088 96.277239)
+ (xy 91.664217 96.342537)
+ (xy 91.605469 96.382401)
+ (xy 91.534494 96.384174)
+ (xy 91.473828 96.347295)
+ (xy 91.44273 96.283471)
+ (xy 91.44149 96.273958)
+ (xy 91.436716 96.221995)
+ (xy 91.433081 96.18244)
+ (xy 91.420359 96.137329)
+ (xy 91.404894 96.082496)
+ (xy 91.375686 95.978931)
+ (xy 91.368612 95.964585)
+ (xy 91.284719 95.794469)
+ (xy 91.282165 95.78929)
+ (xy 91.155651 95.619867)
+ (xy 91.027237 95.501162)
+ (xy 91.004622 95.480257)
+ (xy 91.00462 95.480255)
+ (xy 91.000381 95.476337)
+ (xy 90.955671 95.448127)
+ (xy 90.826434 95.366584)
+ (xy 90.826433 95.366584)
+ (xy 90.821554 95.363505)
+ (xy 90.62516 95.285152)
+ (xy 90.619503 95.284027)
+ (xy 90.619497 95.284025)
+ (xy 90.423442 95.245028)
+ (xy 90.42344 95.245028)
+ (xy 90.417775 95.243901)
+ (xy 90.412 95.243825)
+ (xy 90.411996 95.243825)
+ (xy 90.305976 95.242437)
+ (xy 90.206346 95.241133)
+ (xy 90.200649 95.242112)
+ (xy 90.200648 95.242112)
+ (xy 90.00365 95.275962)
+ (xy 90.003649 95.275962)
+ (xy 89.997953 95.276941)
+ (xy 89.799575 95.350127)
+ (xy 89.794614 95.353079)
+ (xy 89.794613 95.353079)
+ (xy 89.777089 95.363505)
+ (xy 89.617856 95.458238)
+ (xy 89.458881 95.597655)
+ (xy 89.327976 95.763708)
+ (xy 89.325287 95.768819)
+ (xy 89.325285 95.768822)
+ (xy 89.232211 95.945726)
+ (xy 89.232209 95.945731)
+ (xy 89.229523 95.950836)
+ (xy 89.227811 95.956349)
+ (xy 89.227788 95.956405)
+ (xy 89.18324 96.011686)
+ (xy 89.115876 96.034106)
+ (xy 89.047085 96.016547)
+ (xy 88.998707 95.964585)
+ (xy 88.992979 95.95128)
+ (xy 88.988491 95.93895)
+ (xy 88.896414 95.741489)
+ (xy 88.890931 95.731993)
+ (xy 88.765972 95.553533)
+ (xy 88.758916 95.545125)
+ (xy 88.604875 95.391084)
+ (xy 88.596467 95.384028)
+ (xy 88.418007 95.259069)
+ (xy 88.408511 95.253586)
+ (xy 88.211053 95.16151)
+ (xy 88.200761 95.157764)
+ (xy 88.028497 95.111606)
+ (xy 88.014401 95.111942)
+ (xy 88.011 95.119884)
+ (xy 88.011 97.660967)
+ (xy 88.014973 97.674498)
+ (xy 88.023522 97.675727)
+ (xy 88.200761 97.628236)
+ (xy 88.211053 97.62449)
+ (xy 88.408511 97.532414)
+ (xy 88.418007 97.526931)
+ (xy 88.596467 97.401972)
+ (xy 88.604875 97.394916)
+ (xy 88.758916 97.240875)
+ (xy 88.765972 97.232467)
+ (xy 88.890931 97.054007)
+ (xy 88.896414 97.044511)
+ (xy 88.98849 96.847053)
+ (xy 88.994119 96.831587)
+ (xy 88.996329 96.832391)
+ (xy 89.028051 96.780324)
+ (xy 89.091904 96.749288)
+ (xy 89.162401 96.757701)
+ (xy 89.217157 96.802892)
+ (xy 89.227252 96.820788)
+ (xy 89.249016 96.867998)
+ (xy 89.296369 96.970714)
+ (xy 89.418405 97.143391)
+ (xy 89.426564 97.151339)
+ (xy 89.545973 97.267662)
+ (xy 89.569865 97.290937)
+ (xy 89.574661 97.294142)
+ (xy 89.574664 97.294144)
+ (xy 89.710505 97.38491)
+ (xy 89.745677 97.408411)
+ (xy 89.750985 97.410692)
+ (xy 89.750986 97.410692)
+ (xy 89.93465 97.4896)
+ (xy 89.934653 97.489601)
+ (xy 89.939953 97.491878)
+ (xy 89.945582 97.493152)
+ (xy 89.945583 97.493152)
+ (xy 90.14055 97.537269)
+ (xy 90.140553 97.537269)
+ (xy 90.146186 97.538544)
+ (xy 90.151957 97.538771)
+ (xy 90.151959 97.538771)
+ (xy 90.213989 97.541208)
+ (xy 90.35747 97.546846)
+ (xy 90.363179 97.546018)
+ (xy 90.363183 97.546018)
+ (xy 90.561015 97.517333)
+ (xy 90.561019 97.517332)
+ (xy 90.56673 97.516504)
+ (xy 90.654038 97.486867)
+ (xy 90.761483 97.450395)
+ (xy 90.761488 97.450393)
+ (xy 90.766955 97.448537)
+ (xy 90.776451 97.443219)
+ (xy 90.946395 97.348046)
+ (xy 90.946399 97.348043)
+ (xy 90.951442 97.345219)
+ (xy 91.114012 97.210012)
+ (xy 91.249219 97.047442)
+ (xy 91.252043 97.042399)
+ (xy 91.252046 97.042395)
+ (xy 91.349713 96.867998)
+ (xy 91.349714 96.867996)
+ (xy 91.352537 96.862955)
+ (xy 91.354393 96.857488)
+ (xy 91.354395 96.857483)
+ (xy 91.418647 96.6682)
+ (xy 91.420504 96.66273)
+ (xy 91.421333 96.657015)
+ (xy 91.44209 96.51386)
+ (xy 91.47166 96.449315)
+ (xy 91.531432 96.411003)
+ (xy 91.602429 96.411087)
+ (xy 91.662109 96.449542)
+ (xy 91.691525 96.514158)
+ (xy 91.692515 96.523695)
+ (xy 91.695796 96.573749)
+ (xy 91.697217 96.579345)
+ (xy 91.697218 96.57935)
+ (xy 91.719 96.665115)
+ (xy 91.747845 96.77869)
+ (xy 91.836369 96.970714)
+ (xy 91.958405 97.143391)
+ (xy 91.966564 97.151339)
+ (xy 92.085973 97.267662)
+ (xy 92.109865 97.290937)
+ (xy 92.114661 97.294142)
+ (xy 92.114664 97.294144)
+ (xy 92.250505 97.38491)
+ (xy 92.285677 97.408411)
+ (xy 92.290985 97.410692)
+ (xy 92.290986 97.410692)
+ (xy 92.47465 97.4896)
+ (xy 92.474653 97.489601)
+ (xy 92.479953 97.491878)
+ (xy 92.485582 97.493152)
+ (xy 92.485583 97.493152)
+ (xy 92.68055 97.537269)
+ (xy 92.680553 97.537269)
+ (xy 92.686186 97.538544)
+ (xy 92.691957 97.538771)
+ (xy 92.691959 97.538771)
+ (xy 92.753989 97.541208)
+ (xy 92.89747 97.546846)
+ (xy 92.903179 97.546018)
+ (xy 92.903183 97.546018)
+ (xy 93.101015 97.517333)
+ (xy 93.101019 97.517332)
+ (xy 93.10673 97.516504)
+ (xy 93.194038 97.486867)
+ (xy 93.301483 97.450395)
+ (xy 93.301488 97.450393)
+ (xy 93.306955 97.448537)
+ (xy 93.316451 97.443219)
+ (xy 93.486395 97.348046)
+ (xy 93.486399 97.348043)
+ (xy 93.491442 97.345219)
+ (xy 93.654012 97.210012)
+ (xy 93.789219 97.047442)
+ (xy 93.792043 97.042399)
+ (xy 93.792046 97.042395)
+ (xy 93.889713 96.867998)
+ (xy 93.889714 96.867996)
+ (xy 93.892537 96.862955)
+ (xy 93.894393 96.857488)
+ (xy 93.894395 96.857483)
+ (xy 93.958647 96.6682)
+ (xy 93.960504 96.66273)
+ (xy 93.961333 96.657015)
+ (xy 93.98209 96.51386)
+ (xy 94.01166 96.449315)
+ (xy 94.071432 96.411003)
+ (xy 94.142429 96.411087)
+ (xy 94.202109 96.449542)
+ (xy 94.231525 96.514158)
+ (xy 94.232515 96.523695)
+ (xy 94.235796 96.573749)
+ (xy 94.237217 96.579345)
+ (xy 94.237218 96.57935)
+ (xy 94.259 96.665115)
+ (xy 94.287845 96.77869)
+ (xy 94.376369 96.970714)
+ (xy 94.498405 97.143391)
+ (xy 94.506564 97.151339)
+ (xy 94.625973 97.267662)
+ (xy 94.649865 97.290937)
+ (xy 94.654661 97.294142)
+ (xy 94.654664 97.294144)
+ (xy 94.790505 97.38491)
+ (xy 94.825677 97.408411)
+ (xy 94.830985 97.410692)
+ (xy 94.830986 97.410692)
+ (xy 95.01465 97.4896)
+ (xy 95.014653 97.489601)
+ (xy 95.019953 97.491878)
+ (xy 95.025582 97.493152)
+ (xy 95.025583 97.493152)
+ (xy 95.22055 97.537269)
+ (xy 95.220553 97.537269)
+ (xy 95.226186 97.538544)
+ (xy 95.231957 97.538771)
+ (xy 95.231959 97.538771)
+ (xy 95.293989 97.541208)
+ (xy 95.43747 97.546846)
+ (xy 95.443179 97.546018)
+ (xy 95.443183 97.546018)
+ (xy 95.641015 97.517333)
+ (xy 95.641019 97.517332)
+ (xy 95.64673 97.516504)
+ (xy 95.734038 97.486867)
+ (xy 95.841483 97.450395)
+ (xy 95.841488 97.450393)
+ (xy 95.846955 97.448537)
+ (xy 95.856451 97.443219)
+ (xy 96.026395 97.348046)
+ (xy 96.026399 97.348043)
+ (xy 96.031442 97.345219)
+ (xy 96.194012 97.210012)
+ (xy 96.329219 97.047442)
+ (xy 96.332043 97.042399)
+ (xy 96.332046 97.042395)
+ (xy 96.429713 96.867998)
+ (xy 96.429714 96.867996)
+ (xy 96.432537 96.862955)
+ (xy 96.434393 96.857488)
+ (xy 96.434395 96.857483)
+ (xy 96.498647 96.6682)
+ (xy 96.500504 96.66273)
+ (xy 96.501333 96.657015)
+ (xy 96.52209 96.51386)
+ (xy 96.55166 96.449315)
+ (xy 96.611432 96.411003)
+ (xy 96.682429 96.411087)
+ (xy 96.742109 96.449542)
+ (xy 96.771525 96.514158)
+ (xy 96.772515 96.523695)
+ (xy 96.775796 96.573749)
+ (xy 96.777217 96.579345)
+ (xy 96.777218 96.57935)
+ (xy 96.799 96.665115)
+ (xy 96.827845 96.77869)
+ (xy 96.916369 96.970714)
+ (xy 97.038405 97.143391)
+ (xy 97.046564 97.151339)
+ (xy 97.165973 97.267662)
+ (xy 97.189865 97.290937)
+ (xy 97.194661 97.294142)
+ (xy 97.194664 97.294144)
+ (xy 97.330505 97.38491)
+ (xy 97.365677 97.408411)
+ (xy 97.370985 97.410692)
+ (xy 97.370986 97.410692)
+ (xy 97.55465 97.4896)
+ (xy 97.554653 97.489601)
+ (xy 97.559953 97.491878)
+ (xy 97.565582 97.493152)
+ (xy 97.565583 97.493152)
+ (xy 97.76055 97.537269)
+ (xy 97.760553 97.537269)
+ (xy 97.766186 97.538544)
+ (xy 97.771957 97.538771)
+ (xy 97.771959 97.538771)
+ (xy 97.833989 97.541208)
+ (xy 97.97747 97.546846)
+ (xy 97.983179 97.546018)
+ (xy 97.983183 97.546018)
+ (xy 98.181015 97.517333)
+ (xy 98.181019 97.517332)
+ (xy 98.18673 97.516504)
+ (xy 98.274038 97.486867)
+ (xy 98.381483 97.450395)
+ (xy 98.381488 97.450393)
+ (xy 98.386955 97.448537)
+ (xy 98.396451 97.443219)
+ (xy 98.566395 97.348046)
+ (xy 98.566399 97.348043)
+ (xy 98.571442 97.345219)
+ (xy 98.734012 97.210012)
+ (xy 98.869219 97.047442)
+ (xy 98.872043 97.042399)
+ (xy 98.872046 97.042395)
+ (xy 98.969713 96.867998)
+ (xy 98.969714 96.867996)
+ (xy 98.972537 96.862955)
+ (xy 98.974393 96.857488)
+ (xy 98.974395 96.857483)
+ (xy 99.038647 96.6682)
+ (xy 99.040504 96.66273)
+ (xy 99.041333 96.657015)
+ (xy 99.06209 96.51386)
+ (xy 99.09166 96.449315)
+ (xy 99.151432 96.411003)
+ (xy 99.222429 96.411087)
+ (xy 99.282109 96.449542)
+ (xy 99.311525 96.514158)
+ (xy 99.312515 96.523695)
+ (xy 99.315796 96.573749)
+ (xy 99.317217 96.579345)
+ (xy 99.317218 96.57935)
+ (xy 99.339 96.665115)
+ (xy 99.367845 96.77869)
+ (xy 99.456369 96.970714)
+ (xy 99.578405 97.143391)
+ (xy 99.586564 97.151339)
+ (xy 99.705973 97.267662)
+ (xy 99.729865 97.290937)
+ (xy 99.734661 97.294142)
+ (xy 99.734664 97.294144)
+ (xy 99.870505 97.38491)
+ (xy 99.905677 97.408411)
+ (xy 99.910985 97.410692)
+ (xy 99.910986 97.410692)
+ (xy 100.09465 97.4896)
+ (xy 100.094653 97.489601)
+ (xy 100.099953 97.491878)
+ (xy 100.105582 97.493152)
+ (xy 100.105583 97.493152)
+ (xy 100.30055 97.537269)
+ (xy 100.300553 97.537269)
+ (xy 100.306186 97.538544)
+ (xy 100.311957 97.538771)
+ (xy 100.311959 97.538771)
+ (xy 100.373989 97.541208)
+ (xy 100.51747 97.546846)
+ (xy 100.523179 97.546018)
+ (xy 100.523183 97.546018)
+ (xy 100.721015 97.517333)
+ (xy 100.721019 97.517332)
+ (xy 100.72673 97.516504)
+ (xy 100.814038 97.486867)
+ (xy 100.921483 97.450395)
+ (xy 100.921488 97.450393)
+ (xy 100.926955 97.448537)
+ (xy 100.936451 97.443219)
+ (xy 101.106395 97.348046)
+ (xy 101.106399 97.348043)
+ (xy 101.111442 97.345219)
+ (xy 101.274012 97.210012)
+ (xy 101.409219 97.047442)
+ (xy 101.412043 97.042399)
+ (xy 101.412046 97.042395)
+ (xy 101.509713 96.867998)
+ (xy 101.509714 96.867996)
+ (xy 101.512537 96.862955)
+ (xy 101.514393 96.857488)
+ (xy 101.514395 96.857483)
+ (xy 101.578647 96.6682)
+ (xy 101.580504 96.66273)
+ (xy 101.581333 96.657015)
+ (xy 101.60209 96.51386)
+ (xy 101.63166 96.449315)
+ (xy 101.691432 96.411003)
+ (xy 101.762429 96.411087)
+ (xy 101.822109 96.449542)
+ (xy 101.851525 96.514158)
+ (xy 101.852515 96.523695)
+ (xy 101.855796 96.573749)
+ (xy 101.857217 96.579345)
+ (xy 101.857218 96.57935)
+ (xy 101.879 96.665115)
+ (xy 101.907845 96.77869)
+ (xy 101.996369 96.970714)
+ (xy 102.118405 97.143391)
+ (xy 102.126564 97.151339)
+ (xy 102.245973 97.267662)
+ (xy 102.269865 97.290937)
+ (xy 102.274661 97.294142)
+ (xy 102.274664 97.294144)
+ (xy 102.410505 97.38491)
+ (xy 102.445677 97.408411)
+ (xy 102.450985 97.410692)
+ (xy 102.450986 97.410692)
+ (xy 102.63465 97.4896)
+ (xy 102.634653 97.489601)
+ (xy 102.639953 97.491878)
+ (xy 102.645582 97.493152)
+ (xy 102.645583 97.493152)
+ (xy 102.84055 97.537269)
+ (xy 102.840553 97.537269)
+ (xy 102.846186 97.538544)
+ (xy 102.851957 97.538771)
+ (xy 102.851959 97.538771)
+ (xy 102.913989 97.541208)
+ (xy 103.05747 97.546846)
+ (xy 103.063179 97.546018)
+ (xy 103.063183 97.546018)
+ (xy 103.261015 97.517333)
+ (xy 103.261019 97.517332)
+ (xy 103.26673 97.516504)
+ (xy 103.354038 97.486867)
+ (xy 103.461483 97.450395)
+ (xy 103.461488 97.450393)
+ (xy 103.466955 97.448537)
+ (xy 103.476451 97.443219)
+ (xy 103.646395 97.348046)
+ (xy 103.646399 97.348043)
+ (xy 103.651442 97.345219)
+ (xy 103.814012 97.210012)
+ (xy 103.949219 97.047442)
+ (xy 103.952043 97.042399)
+ (xy 103.952046 97.042395)
+ (xy 104.049713 96.867998)
+ (xy 104.049714 96.867996)
+ (xy 104.052537 96.862955)
+ (xy 104.054393 96.857488)
+ (xy 104.054395 96.857483)
+ (xy 104.118647 96.6682)
+ (xy 104.120504 96.66273)
+ (xy 104.121333 96.657015)
+ (xy 104.14209 96.51386)
+ (xy 104.17166 96.449315)
+ (xy 104.231432 96.411003)
+ (xy 104.302429 96.411087)
+ (xy 104.362109 96.449542)
+ (xy 104.391525 96.514158)
+ (xy 104.392515 96.523695)
+ (xy 104.395796 96.573749)
+ (xy 104.397217 96.579345)
+ (xy 104.397218 96.57935)
+ (xy 104.419 96.665115)
+ (xy 104.447845 96.77869)
+ (xy 104.536369 96.970714)
+ (xy 104.658405 97.143391)
+ (xy 104.666564 97.151339)
+ (xy 104.785973 97.267662)
+ (xy 104.809865 97.290937)
+ (xy 104.814661 97.294142)
+ (xy 104.814664 97.294144)
+ (xy 104.950505 97.38491)
+ (xy 104.985677 97.408411)
+ (xy 104.990985 97.410692)
+ (xy 104.990986 97.410692)
+ (xy 105.17465 97.4896)
+ (xy 105.174653 97.489601)
+ (xy 105.179953 97.491878)
+ (xy 105.185582 97.493152)
+ (xy 105.185583 97.493152)
+ (xy 105.38055 97.537269)
+ (xy 105.380553 97.537269)
+ (xy 105.386186 97.538544)
+ (xy 105.391957 97.538771)
+ (xy 105.391959 97.538771)
+ (xy 105.453989 97.541208)
+ (xy 105.59747 97.546846)
+ (xy 105.603179 97.546018)
+ (xy 105.603183 97.546018)
+ (xy 105.801015 97.517333)
+ (xy 105.801019 97.517332)
+ (xy 105.80673 97.516504)
+ (xy 105.894038 97.486867)
+ (xy 106.001483 97.450395)
+ (xy 106.001488 97.450393)
+ (xy 106.006955 97.448537)
+ (xy 106.016451 97.443219)
+ (xy 106.186395 97.348046)
+ (xy 106.186399 97.348043)
+ (xy 106.191442 97.345219)
+ (xy 106.354012 97.210012)
+ (xy 106.489219 97.047442)
+ (xy 106.492043 97.042399)
+ (xy 106.492046 97.042395)
+ (xy 106.589713 96.867998)
+ (xy 106.589714 96.867996)
+ (xy 106.592537 96.862955)
+ (xy 106.594393 96.857488)
+ (xy 106.594395 96.857483)
+ (xy 106.658647 96.6682)
+ (xy 106.660504 96.66273)
+ (xy 106.661333 96.657015)
+ (xy 106.68209 96.51386)
+ (xy 106.71166 96.449315)
+ (xy 106.771432 96.411003)
+ (xy 106.842429 96.411087)
+ (xy 106.902109 96.449542)
+ (xy 106.931525 96.514158)
+ (xy 106.932515 96.523695)
+ (xy 106.935796 96.573749)
+ (xy 106.937217 96.579345)
+ (xy 106.937218 96.57935)
+ (xy 106.959 96.665115)
+ (xy 106.987845 96.77869)
+ (xy 107.076369 96.970714)
+ (xy 107.198405 97.143391)
+ (xy 107.206564 97.151339)
+ (xy 107.325973 97.267662)
+ (xy 107.349865 97.290937)
+ (xy 107.354661 97.294142)
+ (xy 107.354664 97.294144)
+ (xy 107.490505 97.38491)
+ (xy 107.525677 97.408411)
+ (xy 107.530985 97.410692)
+ (xy 107.530986 97.410692)
+ (xy 107.71465 97.4896)
+ (xy 107.714653 97.489601)
+ (xy 107.719953 97.491878)
+ (xy 107.725582 97.493152)
+ (xy 107.725583 97.493152)
+ (xy 107.92055 97.537269)
+ (xy 107.920553 97.537269)
+ (xy 107.926186 97.538544)
+ (xy 107.931957 97.538771)
+ (xy 107.931959 97.538771)
+ (xy 107.993989 97.541208)
+ (xy 108.13747 97.546846)
+ (xy 108.143179 97.546018)
+ (xy 108.143183 97.546018)
+ (xy 108.341015 97.517333)
+ (xy 108.341019 97.517332)
+ (xy 108.34673 97.516504)
+ (xy 108.434038 97.486867)
+ (xy 108.541483 97.450395)
+ (xy 108.541488 97.450393)
+ (xy 108.546955 97.448537)
+ (xy 108.556451 97.443219)
+ (xy 108.726395 97.348046)
+ (xy 108.726399 97.348043)
+ (xy 108.731442 97.345219)
+ (xy 108.894012 97.210012)
+ (xy 108.935247 97.160432)
+ (xy 109.017169 97.061931)
+ (xy 109.076106 97.022347)
+ (xy 109.114043 97.0165)
+ (xy 110.585682 97.0165)
+ (xy 110.653803 97.036502)
+ (xy 110.700296 97.090158)
+ (xy 110.7104 97.160432)
+ (xy 110.684632 97.220506)
+ (xy 110.663976 97.246708)
+ (xy 110.661287 97.251819)
+ (xy 110.661285 97.251822)
+ (xy 110.638822 97.294518)
+ (xy 110.565523 97.433836)
+ (xy 110.50282 97.635773)
+ (xy 110.477967 97.845754)
+ (xy 110.491796 98.056749)
+ (xy 110.493217 98.062345)
+ (xy 110.493218 98.06235)
+ (xy 110.515784 98.1512)
+ (xy 110.543845 98.26169)
+ (xy 110.632369 98.453714)
+ (xy 110.754405 98.626391)
+ (xy 110.905865 98.773937)
+ (xy 110.910661 98.777142)
+ (xy 110.910664 98.777144)
+ (xy 111.053936 98.872875)
+ (xy 111.081677 98.891411)
+ (xy 111.086985 98.893692)
+ (xy 111.086986 98.893692)
+ (xy 111.27065 98.9726)
+ (xy 111.270653 98.972601)
+ (xy 111.275953 98.974878)
+ (xy 111.281582 98.976152)
+ (xy 111.281583 98.976152)
+ (xy 111.47655 99.020269)
+ (xy 111.476553 99.020269)
+ (xy 111.482186 99.021544)
+ (xy 111.487957 99.021771)
+ (xy 111.487959 99.021771)
+ (xy 111.549989 99.024208)
+ (xy 111.69347 99.029846)
+ (xy 111.699179 99.029018)
+ (xy 111.699183 99.029018)
+ (xy 111.897015 99.000333)
+ (xy 111.897019 99.000332)
+ (xy 111.90273 98.999504)
+ (xy 111.981987 98.9726)
+ (xy 112.097483 98.933395)
+ (xy 112.097488 98.933393)
+ (xy 112.102955 98.931537)
+ (xy 112.107998 98.928713)
+ (xy 112.282395 98.831046)
+ (xy 112.282399 98.831043)
+ (xy 112.287442 98.828219)
+ (xy 112.450012 98.693012)
+ (xy 112.585219 98.530442)
+ (xy 112.588043 98.525399)
+ (xy 112.588046 98.525395)
+ (xy 112.685713 98.350998)
+ (xy 112.685714 98.350996)
+ (xy 112.688537 98.345955)
+ (xy 112.690393 98.340488)
+ (xy 112.690395 98.340483)
+ (xy 112.754647 98.1512)
+ (xy 112.756504 98.14573)
+ (xy 112.786846 97.93647)
+ (xy 112.788429 97.876)
+ (xy 112.769081 97.66544)
+ (xy 112.76304 97.644018)
+ (xy 112.734751 97.543713)
+ (xy 112.711686 97.461931)
+ (xy 112.705998 97.450395)
+ (xy 112.620719 97.277469)
+ (xy 112.618165 97.27229)
+ (xy 112.587141 97.230744)
+ (xy 112.577542 97.217889)
+ (xy 112.55281 97.151339)
+ (xy 112.567984 97.081983)
+ (xy 112.618246 97.031841)
+ (xy 112.6785 97.0165)
+ (xy 113.370225 97.0165)
+ (xy 113.438346 97.036502)
+ (xy 113.473122 97.06978)
+ (xy 113.537189 97.160432)
+ (xy 113.594405 97.241391)
+ (xy 113.745865 97.388937)
+ (xy 113.750661 97.392142)
+ (xy 113.750664 97.392144)
+ (xy 113.855108 97.461931)
+ (xy 113.921677 97.506411)
+ (xy 113.926985 97.508692)
+ (xy 113.926986 97.508692)
+ (xy 114.11065 97.5876)
+ (xy 114.110653 97.587601)
+ (xy 114.115953 97.589878)
+ (xy 114.121582 97.591152)
+ (xy 114.121583 97.591152)
+ (xy 114.31655 97.635269)
+ (xy 114.316553 97.635269)
+ (xy 114.322186 97.636544)
+ (xy 114.327957 97.636771)
+ (xy 114.327959 97.636771)
+ (xy 114.389989 97.639208)
+ (xy 114.53347 97.644846)
+ (xy 114.539179 97.644018)
+ (xy 114.539183 97.644018)
+ (xy 114.737015 97.615333)
+ (xy 114.737019 97.615332)
+ (xy 114.74273 97.614504)
+ (xy 114.821987 97.5876)
+ (xy 114.937483 97.548395)
+ (xy 114.937488 97.548393)
+ (xy 114.942955 97.546537)
+ (xy 114.948378 97.5435)
+ (xy 115.122395 97.446046)
+ (xy 115.122399 97.446043)
+ (xy 115.127442 97.443219)
+ (xy 115.290012 97.308012)
+ (xy 115.425219 97.145442)
+ (xy 115.428043 97.140399)
+ (xy 115.428046 97.140395)
+ (xy 115.525713 96.965998)
+ (xy 115.525714 96.965996)
+ (xy 115.528537 96.960955)
+ (xy 115.530393 96.955488)
+ (xy 115.530395 96.955483)
+ (xy 115.591219 96.7763)
+ (xy 115.596504 96.76073)
+ (xy 115.59813 96.749521)
+ (xy 115.626314 96.55514)
+ (xy 115.626314 96.555138)
+ (xy 115.626846 96.55147)
+ (xy 115.628429 96.491)
+ (xy 115.609081 96.28044)
+ (xy 115.551686 96.076931)
+ (xy 115.533616 96.040287)
+ (xy 115.460719 95.892469)
+ (xy 115.458165 95.88729)
+ (xy 115.362494 95.759171)
+ (xy 115.335104 95.722491)
+ (xy 115.335103 95.72249)
+ (xy 115.331651 95.717867)
+ (xy 115.206507 95.602185)
+ (xy 115.180622 95.578257)
+ (xy 115.18062 95.578255)
+ (xy 115.176381 95.574337)
+ (xy 115.059474 95.500574)
+ (xy 115.002434 95.464584)
+ (xy 115.002433 95.464584)
+ (xy 114.997554 95.461505)
+ (xy 114.80116 95.383152)
+ (xy 114.795503 95.382027)
+ (xy 114.795497 95.382025)
+ (xy 114.599442 95.343028)
+ (xy 114.59944 95.343028)
+ (xy 114.593775 95.341901)
+ (xy 114.588 95.341825)
+ (xy 114.587996 95.341825)
+ (xy 114.481976 95.340437)
+ (xy 114.382346 95.339133)
+ (xy 114.376649 95.340112)
+ (xy 114.376648 95.340112)
+ (xy 114.17965 95.373962)
+ (xy 114.179649 95.373962)
+ (xy 114.173953 95.374941)
+ (xy 113.975575 95.448127)
+ (xy 113.970614 95.451079)
+ (xy 113.970613 95.451079)
+ (xy 113.918475 95.482098)
+ (xy 113.793856 95.556238)
+ (xy 113.634881 95.695655)
+ (xy 113.503976 95.861708)
+ (xy 113.490517 95.88729)
+ (xy 113.484793 95.898169)
+ (xy 113.435373 95.949141)
+ (xy 113.373285 95.9655)
+ (xy 112.683131 95.9655)
+ (xy 112.61501 95.945498)
+ (xy 112.568517 95.891842)
+ (xy 112.558413 95.821568)
+ (xy 112.579291 95.768132)
+ (xy 112.581517 95.764893)
+ (xy 112.585219 95.760442)
+ (xy 112.595834 95.741489)
+ (xy 112.685713 95.580998)
+ (xy 112.685714 95.580996)
+ (xy 112.688537 95.575955)
+ (xy 112.690393 95.570488)
+ (xy 112.690395 95.570483)
+ (xy 112.752797 95.38665)
+ (xy 112.756504 95.37573)
+ (xy 112.759789 95.353079)
+ (xy 112.786314 95.17014)
+ (xy 112.786314 95.170138)
+ (xy 112.786846 95.16647)
+ (xy 112.788429 95.106)
+ (xy 112.769081 94.89544)
+ (xy 112.76304 94.874018)
+ (xy 112.724533 94.737483)
+ (xy 112.711686 94.691931)
+ (xy 112.708427 94.685321)
+ (xy 112.620719 94.507469)
+ (xy 112.618165 94.50229)
+ (xy 112.577542 94.447889)
+ (xy 112.55281 94.381339)
+ (xy 112.567984 94.311983)
+ (xy 112.618246 94.261841)
+ (xy 112.6785 94.2465)
+ (xy 113.370225 94.2465)
+ (xy 113.438346 94.266502)
+ (xy 113.473122 94.29978)
+ (xy 113.537189 94.390432)
+ (xy 113.594405 94.471391)
+ (xy 113.745865 94.618937)
+ (xy 113.750661 94.622142)
+ (xy 113.750664 94.622144)
+ (xy 113.847481 94.686835)
+ (xy 113.921677 94.736411)
+ (xy 113.926985 94.738692)
+ (xy 113.926986 94.738692)
+ (xy 114.11065 94.8176)
+ (xy 114.110653 94.817601)
+ (xy 114.115953 94.819878)
+ (xy 114.121582 94.821152)
+ (xy 114.121583 94.821152)
+ (xy 114.31655 94.865269)
+ (xy 114.316553 94.865269)
+ (xy 114.322186 94.866544)
+ (xy 114.327957 94.866771)
+ (xy 114.327959 94.866771)
+ (xy 114.389989 94.869208)
+ (xy 114.53347 94.874846)
+ (xy 114.539179 94.874018)
+ (xy 114.539183 94.874018)
+ (xy 114.737015 94.845333)
+ (xy 114.737019 94.845332)
+ (xy 114.74273 94.844504)
+ (xy 114.821987 94.8176)
+ (xy 114.937483 94.778395)
+ (xy 114.937488 94.778393)
+ (xy 114.942955 94.776537)
+ (xy 114.948837 94.773243)
+ (xy 115.122395 94.676046)
+ (xy 115.122399 94.676043)
+ (xy 115.127442 94.673219)
+ (xy 115.290012 94.538012)
+ (xy 115.425219 94.375442)
+ (xy 115.428043 94.370399)
+ (xy 115.428046 94.370395)
+ (xy 115.525713 94.195998)
+ (xy 115.525714 94.195996)
+ (xy 115.528537 94.190955)
+ (xy 115.530393 94.185488)
+ (xy 115.530395 94.185483)
+ (xy 115.594647 93.9962)
+ (xy 115.596504 93.99073)
+ (xy 115.626846 93.78147)
+ (xy 115.628429 93.721)
+ (xy 115.609081 93.51044)
+ (xy 115.551686 93.306931)
+ (xy 115.548005 93.299465)
+ (xy 115.460719 93.122469)
+ (xy 115.458165 93.11729)
+ (xy 115.363443 92.990442)
+ (xy 115.335104 92.952491)
+ (xy 115.335103 92.95249)
+ (xy 115.331651 92.947867)
+ (xy 115.188061 92.815134)
+ (xy 115.180622 92.808257)
+ (xy 115.18062 92.808255)
+ (xy 115.176381 92.804337)
+ (xy 115.143014 92.783284)
+ (xy 115.002434 92.694584)
+ (xy 115.002433 92.694584)
+ (xy 114.997554 92.691505)
+ (xy 114.80116 92.613152)
+ (xy 114.795503 92.612027)
+ (xy 114.795497 92.612025)
+ (xy 114.599442 92.573028)
+ (xy 114.59944 92.573028)
+ (xy 114.593775 92.571901)
+ (xy 114.588 92.571825)
+ (xy 114.587996 92.571825)
+ (xy 114.481976 92.570437)
+ (xy 114.382346 92.569133)
+ (xy 114.376649 92.570112)
+ (xy 114.376648 92.570112)
+ (xy 114.17965 92.603962)
+ (xy 114.179649 92.603962)
+ (xy 114.173953 92.604941)
+ (xy 113.975575 92.678127)
+ (xy 113.970614 92.681079)
+ (xy 113.970613 92.681079)
+ (xy 113.953089 92.691505)
+ (xy 113.793856 92.786238)
+ (xy 113.634881 92.925655)
+ (xy 113.503976 93.091708)
+ (xy 113.491225 93.115944)
+ (xy 113.484793 93.128169)
+ (xy 113.435373 93.179141)
+ (xy 113.373285 93.1955)
+ (xy 112.683131 93.1955)
+ (xy 112.61501 93.175498)
+ (xy 112.568517 93.121842)
+ (xy 112.558413 93.051568)
+ (xy 112.579291 92.998132)
+ (xy 112.581517 92.994893)
+ (xy 112.585219 92.990442)
+ (xy 112.601279 92.961766)
+ (xy 112.685713 92.810998)
+ (xy 112.685714 92.810996)
+ (xy 112.688537 92.805955)
+ (xy 112.690393 92.800488)
+ (xy 112.690395 92.800483)
+ (xy 112.753258 92.615292)
+ (xy 112.756504 92.60573)
+ (xy 112.757906 92.596066)
+ (xy 112.786314 92.40014)
+ (xy 112.786314 92.400138)
+ (xy 112.786846 92.39647)
+ (xy 112.788429 92.336)
+ (xy 112.769081 92.12544)
+ (xy 112.76304 92.104018)
+ (xy 112.747128 92.0476)
+ (xy 112.711686 91.921931)
+ (xy 112.70843 91.915327)
+ (xy 112.620719 91.737469)
+ (xy 112.618165 91.73229)
+ (xy 112.577542 91.677889)
+ (xy 112.55281 91.611339)
+ (xy 112.567984 91.541983)
+ (xy 112.618246 91.491841)
+ (xy 112.6785 91.4765)
+ (xy 113.370225 91.4765)
+ (xy 113.438346 91.496502)
+ (xy 113.473122 91.52978)
+ (xy 113.531988 91.613073)
+ (xy 113.594405 91.701391)
+ (xy 113.598539 91.705418)
+ (xy 113.734085 91.837461)
+ (xy 113.745865 91.848937)
+ (xy 113.750661 91.852142)
+ (xy 113.750664 91.852144)
+ (xy 113.847483 91.916836)
+ (xy 113.921677 91.966411)
+ (xy 113.926985 91.968692)
+ (xy 113.926986 91.968692)
+ (xy 114.11065 92.0476)
+ (xy 114.110653 92.047601)
+ (xy 114.115953 92.049878)
+ (xy 114.121582 92.051152)
+ (xy 114.121583 92.051152)
+ (xy 114.31655 92.095269)
+ (xy 114.316553 92.095269)
+ (xy 114.322186 92.096544)
+ (xy 114.327957 92.096771)
+ (xy 114.327959 92.096771)
+ (xy 114.389989 92.099208)
+ (xy 114.53347 92.104846)
+ (xy 114.539179 92.104018)
+ (xy 114.539183 92.104018)
+ (xy 114.737015 92.075333)
+ (xy 114.737019 92.075332)
+ (xy 114.74273 92.074504)
+ (xy 114.821987 92.0476)
+ (xy 114.937483 92.008395)
+ (xy 114.937488 92.008393)
+ (xy 114.942955 92.006537)
+ (xy 114.970577 91.991068)
+ (xy 115.122395 91.906046)
+ (xy 115.122399 91.906043)
+ (xy 115.127442 91.903219)
+ (xy 115.290012 91.768012)
+ (xy 115.425219 91.605442)
+ (xy 115.428043 91.600399)
+ (xy 115.428046 91.600395)
+ (xy 115.525713 91.425998)
+ (xy 115.525714 91.425996)
+ (xy 115.528537 91.420955)
+ (xy 115.530393 91.415488)
+ (xy 115.530395 91.415483)
+ (xy 115.594647 91.2262)
+ (xy 115.596504 91.22073)
+ (xy 115.599581 91.199514)
+ (xy 115.626314 91.01514)
+ (xy 115.626314 91.015138)
+ (xy 115.626846 91.01147)
+ (xy 115.628429 90.951)
+ (xy 115.609081 90.74044)
+ (xy 115.551686 90.536931)
+ (xy 115.546696 90.526811)
+ (xy 115.460719 90.352469)
+ (xy 115.458165 90.34729)
+ (xy 115.331651 90.177867)
+ (xy 115.176381 90.034337)
+ (xy 114.997554 89.921505)
+ (xy 114.80116 89.843152)
+ (xy 114.795503 89.842027)
+ (xy 114.795497 89.842025)
+ (xy 114.599442 89.803028)
+ (xy 114.59944 89.803028)
+ (xy 114.593775 89.801901)
+ (xy 114.588 89.801825)
+ (xy 114.587996 89.801825)
+ (xy 114.481976 89.800437)
+ (xy 114.382346 89.799133)
+ (xy 114.376649 89.800112)
+ (xy 114.376648 89.800112)
+ (xy 114.17965 89.833962)
+ (xy 114.179649 89.833962)
+ (xy 114.173953 89.834941)
+ (xy 113.975575 89.908127)
+ (xy 113.970614 89.911079)
+ (xy 113.970613 89.911079)
+ (xy 113.953089 89.921505)
+ (xy 113.793856 90.016238)
+ (xy 113.634881 90.155655)
+ (xy 113.503976 90.321708)
+ (xy 113.490517 90.34729)
+ (xy 113.484793 90.358169)
+ (xy 113.435373 90.409141)
+ (xy 113.373285 90.4255)
+ (xy 112.869988 90.4255)
+ (xy 112.801867 90.405498)
+ (xy 112.755374 90.351842)
+ (xy 112.74527 90.281568)
+ (xy 112.764832 90.232143)
+ (xy 112.764182 90.231768)
+ (xy 112.766719 90.227373)
+ (xy 112.766778 90.227225)
+ (xy 112.766932 90.227006)
+ (xy 112.772414 90.217511)
+ (xy 112.86449 90.020053)
+ (xy 112.868236 90.009761)
+ (xy 112.924625 89.799312)
+ (xy 112.926528 89.788519)
+ (xy 112.945517 89.571475)
+ (xy 112.945517 89.560525)
+ (xy 112.926528 89.343481)
+ (xy 112.924625 89.332688)
+ (xy 112.868236 89.122239)
+ (xy 112.86449 89.111947)
+ (xy 112.772414 88.914489)
+ (xy 112.766932 88.904994)
+ (xy 112.766778 88.904775)
+ (xy 112.76674 88.904663)
+ (xy 112.764182 88.900232)
+ (xy 112.765072 88.899718)
+ (xy 112.744087 88.837502)
+ (xy 112.761369 88.768641)
+ (xy 112.813137 88.720055)
+ (xy 112.869988 88.7065)
+ (xy 113.370225 88.7065)
+ (xy 113.438346 88.726502)
+ (xy 113.473122 88.75978)
+ (xy 113.487524 88.780158)
+ (xy 113.594405 88.931391)
+ (xy 113.648333 88.983925)
+ (xy 113.706801 89.040882)
+ (xy 113.745865 89.078937)
+ (xy 113.750661 89.082142)
+ (xy 113.750664 89.082144)
+ (xy 113.876976 89.166543)
+ (xy 113.921677 89.196411)
+ (xy 113.926985 89.198692)
+ (xy 113.926986 89.198692)
+ (xy 114.11065 89.2776)
+ (xy 114.110653 89.277601)
+ (xy 114.115953 89.279878)
+ (xy 114.121582 89.281152)
+ (xy 114.121583 89.281152)
+ (xy 114.31655 89.325269)
+ (xy 114.316553 89.325269)
+ (xy 114.322186 89.326544)
+ (xy 114.327957 89.326771)
+ (xy 114.327959 89.326771)
+ (xy 114.389989 89.329208)
+ (xy 114.53347 89.334846)
+ (xy 114.539179 89.334018)
+ (xy 114.539183 89.334018)
+ (xy 114.737015 89.305333)
+ (xy 114.737019 89.305332)
+ (xy 114.74273 89.304504)
+ (xy 114.821987 89.2776)
+ (xy 114.937483 89.238395)
+ (xy 114.937488 89.238393)
+ (xy 114.942955 89.236537)
+ (xy 114.947998 89.233713)
+ (xy 115.122395 89.136046)
+ (xy 115.122399 89.136043)
+ (xy 115.127442 89.133219)
+ (xy 115.290012 88.998012)
+ (xy 115.425219 88.835442)
+ (xy 115.428043 88.830399)
+ (xy 115.428046 88.830395)
+ (xy 115.525713 88.655998)
+ (xy 115.525714 88.655996)
+ (xy 115.528537 88.650955)
+ (xy 115.530393 88.645488)
+ (xy 115.530395 88.645483)
+ (xy 115.594647 88.4562)
+ (xy 115.596504 88.45073)
+ (xy 115.601683 88.415016)
+ (xy 115.626314 88.24514)
+ (xy 115.626314 88.245138)
+ (xy 115.626846 88.24147)
+ (xy 115.628429 88.181)
+ (xy 115.609081 87.97044)
+ (xy 115.551686 87.766931)
+ (xy 115.506245 87.674785)
+ (xy 115.460719 87.582469)
+ (xy 115.458165 87.57729)
+ (xy 115.331651 87.407867)
+ (xy 115.176381 87.264337)
+ (xy 115.109773 87.22231)
+ (xy 115.002434 87.154584)
+ (xy 115.002433 87.154584)
+ (xy 114.997554 87.151505)
+ (xy 114.80116 87.073152)
+ (xy 114.795503 87.072027)
+ (xy 114.795497 87.072025)
+ (xy 114.599442 87.033028)
+ (xy 114.59944 87.033028)
+ (xy 114.593775 87.031901)
+ (xy 114.588 87.031825)
+ (xy 114.587996 87.031825)
+ (xy 114.481976 87.030437)
+ (xy 114.382346 87.029133)
+ (xy 114.376649 87.030112)
+ (xy 114.376648 87.030112)
+ (xy 114.17965 87.063962)
+ (xy 114.179649 87.063962)
+ (xy 114.173953 87.064941)
+ (xy 113.975575 87.138127)
+ (xy 113.970614 87.141079)
+ (xy 113.970613 87.141079)
+ (xy 113.834076 87.22231)
+ (xy 113.793856 87.246238)
+ (xy 113.634881 87.385655)
+ (xy 113.503976 87.551708)
+ (xy 113.488233 87.58163)
+ (xy 113.484793 87.588169)
+ (xy 113.435373 87.639141)
+ (xy 113.373285 87.6555)
+ (xy 112.869988 87.6555)
+ (xy 112.801867 87.635498)
+ (xy 112.755374 87.581842)
+ (xy 112.74527 87.511568)
+ (xy 112.764832 87.462143)
+ (xy 112.764182 87.461768)
+ (xy 112.766719 87.457373)
+ (xy 112.766778 87.457225)
+ (xy 112.766932 87.457006)
+ (xy 112.772414 87.447511)
+ (xy 112.86449 87.250053)
+ (xy 112.868236 87.239761)
+ (xy 112.924625 87.029312)
+ (xy 112.926528 87.018519)
+ (xy 112.945517 86.801475)
+ (xy 112.945517 86.790525)
+ (xy 112.926528 86.573481)
+ (xy 112.924625 86.562688)
+ (xy 112.868236 86.352239)
+ (xy 112.86449 86.341947)
+ (xy 112.772414 86.144489)
+ (xy 112.766932 86.134994)
+ (xy 112.766778 86.134775)
+ (xy 112.76674 86.134663)
+ (xy 112.764182 86.130232)
+ (xy 112.765072 86.129718)
+ (xy 112.744087 86.067502)
+ (xy 112.761369 85.998641)
+ (xy 112.813137 85.950055)
+ (xy 112.869988 85.9365)
+ (xy 113.370225 85.9365)
+ (xy 113.438346 85.956502)
+ (xy 113.473122 85.98978)
+ (xy 113.487524 86.010158)
+ (xy 113.594405 86.161391)
+ (xy 113.745865 86.308937)
+ (xy 113.750661 86.312142)
+ (xy 113.750664 86.312144)
+ (xy 113.844674 86.374959)
+ (xy 113.921677 86.426411)
+ (xy 113.926985 86.428692)
+ (xy 113.926986 86.428692)
+ (xy 114.11065 86.5076)
+ (xy 114.110653 86.507601)
+ (xy 114.115953 86.509878)
+ (xy 114.121582 86.511152)
+ (xy 114.121583 86.511152)
+ (xy 114.31655 86.555269)
+ (xy 114.316553 86.555269)
+ (xy 114.322186 86.556544)
+ (xy 114.327957 86.556771)
+ (xy 114.327959 86.556771)
+ (xy 114.389989 86.559208)
+ (xy 114.53347 86.564846)
+ (xy 114.539179 86.564018)
+ (xy 114.539183 86.564018)
+ (xy 114.737015 86.535333)
+ (xy 114.737019 86.535332)
+ (xy 114.74273 86.534504)
+ (xy 114.815276 86.509878)
+ (xy 114.937483 86.468395)
+ (xy 114.937488 86.468393)
+ (xy 114.942955 86.466537)
+ (xy 114.947998 86.463713)
+ (xy 115.122395 86.366046)
+ (xy 115.122399 86.366043)
+ (xy 115.127442 86.363219)
+ (xy 115.290012 86.228012)
+ (xy 115.425219 86.065442)
+ (xy 115.428043 86.060399)
+ (xy 115.428046 86.060395)
+ (xy 115.525713 85.885998)
+ (xy 115.525714 85.885996)
+ (xy 115.528537 85.880955)
+ (xy 115.530393 85.875488)
+ (xy 115.530395 85.875483)
+ (xy 115.594647 85.6862)
+ (xy 115.596504 85.68073)
+ (xy 115.608007 85.601401)
+ (xy 115.626314 85.47514)
+ (xy 115.626314 85.475138)
+ (xy 115.626846 85.47147)
+ (xy 115.628429 85.411)
+ (xy 115.609081 85.20044)
+ (xy 115.593475 85.145103)
+ (xy 115.587673 85.124532)
+ (xy 115.551686 84.996931)
+ (xy 115.520937 84.934577)
+ (xy 115.460719 84.812469)
+ (xy 115.458165 84.80729)
+ (xy 115.363443 84.680442)
+ (xy 115.335104 84.642491)
+ (xy 115.335103 84.64249)
+ (xy 115.331651 84.637867)
+ (xy 115.208202 84.523752)
+ (xy 115.180622 84.498257)
+ (xy 115.18062 84.498255)
+ (xy 115.176381 84.494337)
+ (xy 115.142265 84.472811)
+ (xy 115.002434 84.384584)
+ (xy 115.002433 84.384584)
+ (xy 114.997554 84.381505)
+ (xy 114.80116 84.303152)
+ (xy 114.795503 84.302027)
+ (xy 114.795497 84.302025)
+ (xy 114.599442 84.263028)
+ (xy 114.59944 84.263028)
+ (xy 114.593775 84.261901)
+ (xy 114.588 84.261825)
+ (xy 114.587996 84.261825)
+ (xy 114.481976 84.260437)
+ (xy 114.382346 84.259133)
+ (xy 114.376649 84.260112)
+ (xy 114.376648 84.260112)
+ (xy 114.17965 84.293962)
+ (xy 114.179649 84.293962)
+ (xy 114.173953 84.294941)
+ (xy 113.975575 84.368127)
+ (xy 113.970614 84.371079)
+ (xy 113.970613 84.371079)
+ (xy 113.821841 84.459589)
+ (xy 113.793856 84.476238)
+ (xy 113.634881 84.615655)
+ (xy 113.503976 84.781708)
+ (xy 113.490517 84.80729)
+ (xy 113.484793 84.818169)
+ (xy 113.435373 84.869141)
+ (xy 113.373285 84.8855)
+ (xy 112.683131 84.8855)
+ (xy 112.61501 84.865498)
+ (xy 112.568517 84.811842)
+ (xy 112.558413 84.741568)
+ (xy 112.579291 84.688132)
+ (xy 112.581517 84.684893)
+ (xy 112.585219 84.680442)
+ (xy 112.611256 84.633951)
+ (xy 112.685713 84.500998)
+ (xy 112.685714 84.500996)
+ (xy 112.688537 84.495955)
+ (xy 112.690393 84.490488)
+ (xy 112.690395 84.490483)
+ (xy 112.752049 84.308853)
+ (xy 112.756504 84.29573)
+ (xy 112.757468 84.289087)
+ (xy 112.786314 84.09014)
+ (xy 112.786314 84.090138)
+ (xy 112.786846 84.08647)
+ (xy 112.788429 84.026)
+ (xy 112.769081 83.81544)
+ (xy 112.76304 83.794018)
+ (xy 112.724874 83.658692)
+ (xy 112.711686 83.611931)
+ (xy 112.703853 83.596046)
+ (xy 112.620719 83.427469)
+ (xy 112.618165 83.42229)
+ (xy 112.577542 83.367889)
+ (xy 112.55281 83.301339)
+ (xy 112.567984 83.231983)
+ (xy 112.618246 83.181841)
+ (xy 112.6785 83.1665)
+ (xy 113.370225 83.1665)
+ (xy 113.438346 83.186502)
+ (xy 113.473122 83.21978)
+ (xy 113.537189 83.310432)
+ (xy 113.594405 83.391391)
+ (xy 113.745865 83.538937)
+ (xy 113.750661 83.542142)
+ (xy 113.750664 83.542144)
+ (xy 113.855108 83.611931)
+ (xy 113.921677 83.656411)
+ (xy 113.926985 83.658692)
+ (xy 113.926986 83.658692)
+ (xy 114.11065 83.7376)
+ (xy 114.110653 83.737601)
+ (xy 114.115953 83.739878)
+ (xy 114.121582 83.741152)
+ (xy 114.121583 83.741152)
+ (xy 114.31655 83.785269)
+ (xy 114.316553 83.785269)
+ (xy 114.322186 83.786544)
+ (xy 114.327957 83.786771)
+ (xy 114.327959 83.786771)
+ (xy 114.389989 83.789208)
+ (xy 114.53347 83.794846)
+ (xy 114.539179 83.794018)
+ (xy 114.539183 83.794018)
+ (xy 114.737015 83.765333)
+ (xy 114.737019 83.765332)
+ (xy 114.74273 83.764504)
+ (xy 114.821987 83.7376)
+ (xy 114.937483 83.698395)
+ (xy 114.937488 83.698393)
+ (xy 114.942955 83.696537)
+ (xy 114.947998 83.693713)
+ (xy 115.122395 83.596046)
+ (xy 115.122399 83.596043)
+ (xy 115.127442 83.593219)
+ (xy 115.290012 83.458012)
+ (xy 115.425219 83.295442)
+ (xy 115.428043 83.290399)
+ (xy 115.428046 83.290395)
+ (xy 115.525713 83.115998)
+ (xy 115.525714 83.115996)
+ (xy 115.528537 83.110955)
+ (xy 115.530393 83.105488)
+ (xy 115.530395 83.105483)
+ (xy 115.594647 82.9162)
+ (xy 115.596504 82.91073)
+ (xy 115.626846 82.70147)
+ (xy 115.628429 82.641)
+ (xy 115.609081 82.43044)
+ (xy 115.60641 82.420967)
+ (xy 115.57416 82.306619)
+ (xy 115.551686 82.226931)
+ (xy 115.543532 82.210395)
+ (xy 115.460719 82.042469)
+ (xy 115.458165 82.03729)
+ (xy 115.361185 81.907418)
+ (xy 115.335104 81.872491)
+ (xy 115.335103 81.87249)
+ (xy 115.331651 81.867867)
+ (xy 115.196499 81.742934)
+ (xy 115.180622 81.728257)
+ (xy 115.18062 81.728255)
+ (xy 115.176381 81.724337)
+ (xy 115.052664 81.646277)
+ (xy 115.002434 81.614584)
+ (xy 115.002433 81.614584)
+ (xy 114.997554 81.611505)
+ (xy 114.80116 81.533152)
+ (xy 114.795503 81.532027)
+ (xy 114.795497 81.532025)
+ (xy 114.599442 81.493028)
+ (xy 114.59944 81.493028)
+ (xy 114.593775 81.491901)
+ (xy 114.588 81.491825)
+ (xy 114.587996 81.491825)
+ (xy 114.481976 81.490437)
+ (xy 114.382346 81.489133)
+ (xy 114.376649 81.490112)
+ (xy 114.376648 81.490112)
+ (xy 114.17965 81.523962)
+ (xy 114.179649 81.523962)
+ (xy 114.173953 81.524941)
+ (xy 113.975575 81.598127)
+ (xy 113.970614 81.601079)
+ (xy 113.970613 81.601079)
+ (xy 113.84048 81.6785)
+ (xy 113.793856 81.706238)
+ (xy 113.634881 81.845655)
+ (xy 113.503976 82.011708)
+ (xy 113.490517 82.03729)
+ (xy 113.484793 82.048169)
+ (xy 113.435373 82.099141)
+ (xy 113.373285 82.1155)
+ (xy 112.683131 82.1155)
+ (xy 112.61501 82.095498)
+ (xy 112.568517 82.041842)
+ (xy 112.558413 81.971568)
+ (xy 112.579291 81.918132)
+ (xy 112.581517 81.914893)
+ (xy 112.585219 81.910442)
+ (xy 112.591809 81.898676)
+ (xy 112.685713 81.730998)
+ (xy 112.685714 81.730996)
+ (xy 112.688537 81.725955)
+ (xy 112.690393 81.720488)
+ (xy 112.690395 81.720483)
+ (xy 112.753258 81.535292)
+ (xy 112.756504 81.52573)
+ (xy 112.757669 81.517701)
+ (xy 112.786314 81.32014)
+ (xy 112.786314 81.320138)
+ (xy 112.786846 81.31647)
+ (xy 112.788429 81.256)
+ (xy 112.769081 81.04544)
+ (xy 112.76304 81.024018)
+ (xy 112.730109 80.907256)
+ (xy 112.711686 80.841931)
+ (xy 112.703853 80.826046)
+ (xy 112.620719 80.657469)
+ (xy 112.618165 80.65229)
+ (xy 112.522148 80.523708)
+ (xy 112.495104 80.487491)
+ (xy 112.495103 80.48749)
+ (xy 112.491651 80.482867)
+ (xy 112.37599 80.375951)
+ (xy 112.340622 80.343257)
+ (xy 112.34062 80.343255)
+ (xy 112.336381 80.339337)
+ (xy 112.330273 80.335483)
+ (xy 112.162434 80.229584)
+ (xy 112.162433 80.229584)
+ (xy 112.157554 80.226505)
+ (xy 111.96116 80.148152)
+ (xy 111.955503 80.147027)
+ (xy 111.955497 80.147025)
+ (xy 111.759442 80.108028)
+ (xy 111.75944 80.108028)
+ (xy 111.753775 80.106901)
+ (xy 111.748 80.106825)
+ (xy 111.747996 80.106825)
+ (xy 111.641976 80.105437)
+ (xy 111.542346 80.104133)
+ (xy 111.536649 80.105112)
+ (xy 111.536648 80.105112)
+ (xy 111.33965 80.138962)
+ (xy 111.339649 80.138962)
+ (xy 111.333953 80.139941)
+ (xy 111.135575 80.213127)
+ (xy 111.130614 80.216079)
+ (xy 111.130613 80.216079)
+ (xy 110.98094 80.305125)
+ (xy 110.953856 80.321238)
+ (xy 110.794881 80.460655)
+ (xy 110.717815 80.558413)
+ (xy 110.701187 80.579506)
+ (xy 110.643306 80.620619)
+ (xy 110.602237 80.6275)
+ (xy 109.179086 80.6275)
+ (xy 109.110965 80.607498)
+ (xy 109.067916 80.559287)
+ (xy 109.067738 80.559396)
+ (xy 109.067136 80.558413)
+ (xy 109.066082 80.557233)
+ (xy 109.064719 80.554469)
+ (xy 109.062165 80.54929)
+ (xy 109.009641 80.478951)
+ (xy 108.939104 80.384491)
+ (xy 108.939103 80.38449)
+ (xy 108.935651 80.379867)
+ (xy 108.780381 80.236337)
+ (xy 108.601554 80.123505)
+ (xy 108.40516 80.045152)
+ (xy 108.399503 80.044027)
+ (xy 108.399497 80.044025)
+ (xy 108.203442 80.005028)
+ (xy 108.20344 80.005028)
+ (xy 108.197775 80.003901)
+ (xy 108.192 80.003825)
+ (xy 108.191996 80.003825)
+ (xy 108.085976 80.002437)
+ (xy 107.986346 80.001133)
+ (xy 107.980649 80.002112)
+ (xy 107.980648 80.002112)
+ (xy 107.78365 80.035962)
+ (xy 107.783649 80.035962)
+ (xy 107.777953 80.036941)
+ (xy 107.579575 80.110127)
+ (xy 107.574614 80.113079)
+ (xy 107.574613 80.113079)
+ (xy 107.418178 80.206148)
+ (xy 107.397856 80.218238)
+ (xy 107.238881 80.357655)
+ (xy 107.107976 80.523708)
+ (xy 107.105287 80.528819)
+ (xy 107.105285 80.528822)
+ (xy 107.078619 80.579506)
+ (xy 107.009523 80.710836)
+ (xy 106.94682 80.912773)
+ (xy 106.946141 80.91851)
+ (xy 106.932088 81.037239)
+ (xy 106.904217 81.102537)
+ (xy 106.845469 81.142401)
+ (xy 106.774494 81.144174)
+ (xy 106.713828 81.107295)
+ (xy 106.68273 81.043471)
+ (xy 106.68149 81.033958)
+ (xy 106.67361 80.948197)
+ (xy 106.673081 80.94244)
+ (xy 106.6678 80.923713)
+ (xy 106.639457 80.823219)
+ (xy 106.615686 80.738931)
+ (xy 106.608612 80.724585)
+ (xy 106.524719 80.554469)
+ (xy 106.522165 80.54929)
+ (xy 106.395651 80.379867)
+ (xy 106.240381 80.236337)
+ (xy 106.061554 80.123505)
+ (xy 105.86516 80.045152)
+ (xy 105.859503 80.044027)
+ (xy 105.859497 80.044025)
+ (xy 105.663442 80.005028)
+ (xy 105.66344 80.005028)
+ (xy 105.657775 80.003901)
+ (xy 105.652 80.003825)
+ (xy 105.651996 80.003825)
+ (xy 105.545976 80.002437)
+ (xy 105.446346 80.001133)
+ (xy 105.440649 80.002112)
+ (xy 105.440648 80.002112)
+ (xy 105.24365 80.035962)
+ (xy 105.243649 80.035962)
+ (xy 105.237953 80.036941)
+ (xy 105.039575 80.110127)
+ (xy 105.034614 80.113079)
+ (xy 105.034613 80.113079)
+ (xy 104.878178 80.206148)
+ (xy 104.857856 80.218238)
+ (xy 104.698881 80.357655)
+ (xy 104.567976 80.523708)
+ (xy 104.565287 80.528819)
+ (xy 104.565285 80.528822)
+ (xy 104.538619 80.579506)
+ (xy 104.469523 80.710836)
+ (xy 104.40682 80.912773)
+ (xy 104.406141 80.91851)
+ (xy 104.392088 81.037239)
+ (xy 104.364217 81.102537)
+ (xy 104.305469 81.142401)
+ (xy 104.234494 81.144174)
+ (xy 104.173828 81.107295)
+ (xy 104.14273 81.043471)
+ (xy 104.14149 81.033958)
+ (xy 104.13361 80.948197)
+ (xy 104.133081 80.94244)
+ (xy 104.1278 80.923713)
+ (xy 104.099457 80.823219)
+ (xy 104.075686 80.738931)
+ (xy 104.068612 80.724585)
+ (xy 103.984719 80.554469)
+ (xy 103.982165 80.54929)
+ (xy 103.93058 80.480209)
+ (xy 103.905848 80.413661)
+ (xy 103.921022 80.344305)
+ (xy 103.942443 80.315726)
+ (xy 104.417415 79.840754)
+ (xy 113.317967 79.840754)
+ (xy 113.331796 80.051749)
+ (xy 113.333217 80.057345)
+ (xy 113.333218 80.05735)
+ (xy 113.382424 80.251095)
+ (xy 113.383845 80.25669)
+ (xy 113.386262 80.261933)
+ (xy 113.456209 80.413661)
+ (xy 113.472369 80.448714)
+ (xy 113.594405 80.621391)
+ (xy 113.599863 80.626708)
+ (xy 113.709744 80.733749)
+ (xy 113.745865 80.768937)
+ (xy 113.750661 80.772142)
+ (xy 113.750664 80.772144)
+ (xy 113.855108 80.841931)
+ (xy 113.921677 80.886411)
+ (xy 113.926985 80.888692)
+ (xy 113.926986 80.888692)
+ (xy 114.11065 80.9676)
+ (xy 114.110653 80.967601)
+ (xy 114.115953 80.969878)
+ (xy 114.121582 80.971152)
+ (xy 114.121583 80.971152)
+ (xy 114.31655 81.015269)
+ (xy 114.316553 81.015269)
+ (xy 114.322186 81.016544)
+ (xy 114.327957 81.016771)
+ (xy 114.327959 81.016771)
+ (xy 114.389989 81.019208)
+ (xy 114.53347 81.024846)
+ (xy 114.539179 81.024018)
+ (xy 114.539183 81.024018)
+ (xy 114.737015 80.995333)
+ (xy 114.737019 80.995332)
+ (xy 114.74273 80.994504)
+ (xy 114.821987 80.9676)
+ (xy 114.937483 80.928395)
+ (xy 114.937488 80.928393)
+ (xy 114.942955 80.926537)
+ (xy 114.947998 80.923713)
+ (xy 115.122395 80.826046)
+ (xy 115.122399 80.826043)
+ (xy 115.127442 80.823219)
+ (xy 115.290012 80.688012)
+ (xy 115.425219 80.525442)
+ (xy 115.428043 80.520399)
+ (xy 115.428046 80.520395)
+ (xy 115.525713 80.345998)
+ (xy 115.525714 80.345996)
+ (xy 115.528537 80.340955)
+ (xy 115.530393 80.335488)
+ (xy 115.530395 80.335483)
+ (xy 115.593258 80.150292)
+ (xy 115.596504 80.14073)
+ (xy 115.600514 80.113079)
+ (xy 115.626314 79.93514)
+ (xy 115.626314 79.935138)
+ (xy 115.626846 79.93147)
+ (xy 115.628429 79.871)
+ (xy 115.609081 79.66044)
+ (xy 115.551686 79.456931)
+ (xy 115.540553 79.434354)
+ (xy 115.460719 79.272469)
+ (xy 115.458165 79.26729)
+ (xy 115.331651 79.097867)
+ (xy 115.220661 78.995269)
+ (xy 115.180622 78.958257)
+ (xy 115.18062 78.958255)
+ (xy 115.176381 78.954337)
+ (xy 114.997554 78.841505)
+ (xy 114.80116 78.763152)
+ (xy 114.795503 78.762027)
+ (xy 114.795497 78.762025)
+ (xy 114.599442 78.723028)
+ (xy 114.59944 78.723028)
+ (xy 114.593775 78.721901)
+ (xy 114.588 78.721825)
+ (xy 114.587996 78.721825)
+ (xy 114.481976 78.720437)
+ (xy 114.382346 78.719133)
+ (xy 114.376649 78.720112)
+ (xy 114.376648 78.720112)
+ (xy 114.17965 78.753962)
+ (xy 114.179649 78.753962)
+ (xy 114.173953 78.754941)
+ (xy 113.975575 78.828127)
+ (xy 113.970614 78.831079)
+ (xy 113.970613 78.831079)
+ (xy 113.953089 78.841505)
+ (xy 113.793856 78.936238)
+ (xy 113.634881 79.075655)
+ (xy 113.503976 79.241708)
+ (xy 113.501287 79.246819)
+ (xy 113.501285 79.246822)
+ (xy 113.463196 79.319218)
+ (xy 113.405523 79.428836)
+ (xy 113.385645 79.492855)
+ (xy 113.34547 79.62224)
+ (xy 113.34282 79.630773)
+ (xy 113.317967 79.840754)
+ (xy 104.417415 79.840754)
+ (xy 104.938951 79.319218)
+ (xy 110.4825 79.319218)
+ (xy 110.48317 79.323768)
+ (xy 110.48317 79.323771)
+ (xy 110.491216 79.378426)
+ (xy 110.492642 79.388112)
+ (xy 110.496958 79.396902)
+ (xy 110.529163 79.462496)
+ (xy 110.544068 79.492855)
+ (xy 110.62665 79.575293)
+ (xy 110.731482 79.626536)
+ (xy 110.760525 79.630773)
+ (xy 110.795256 79.63584)
+ (xy 110.79526 79.63584)
+ (xy 110.799782 79.6365)
+ (xy 112.466218 79.6365)
+ (xy 112.470768 79.63583)
+ (xy 112.470771 79.63583)
+ (xy 112.525426 79.627784)
+ (xy 112.525427 79.627784)
+ (xy 112.535112 79.626358)
+ (xy 112.602733 79.593158)
+ (xy 112.630507 79.579522)
+ (xy 112.630509 79.579521)
+ (xy 112.639855 79.574932)
+ (xy 112.722293 79.49235)
+ (xy 112.773536 79.387518)
+ (xy 112.7835 79.319218)
+ (xy 112.7835 77.652782)
+ (xy 112.778161 77.61651)
+ (xy 112.774784 77.593574)
+ (xy 112.774784 77.593573)
+ (xy 112.773358 77.583888)
+ (xy 112.721932 77.479145)
+ (xy 112.63935 77.396707)
+ (xy 112.534518 77.345464)
+ (xy 112.504027 77.341016)
+ (xy 112.470744 77.33616)
+ (xy 112.47074 77.33616)
+ (xy 112.466218 77.3355)
+ (xy 110.799782 77.3355)
+ (xy 110.795232 77.33617)
+ (xy 110.795229 77.33617)
+ (xy 110.740574 77.344216)
+ (xy 110.740573 77.344216)
+ (xy 110.730888 77.345642)
+ (xy 110.680992 77.37014)
+ (xy 110.635493 77.392478)
+ (xy 110.635491 77.392479)
+ (xy 110.626145 77.397068)
+ (xy 110.543707 77.47965)
+ (xy 110.492464 77.584482)
+ (xy 110.491052 77.594162)
+ (xy 110.483461 77.646197)
+ (xy 110.4825 77.652782)
+ (xy 110.4825 79.319218)
+ (xy 104.938951 79.319218)
+ (xy 105.258911 78.999258)
+ (xy 105.321223 78.965232)
+ (xy 105.375814 78.96546)
+ (xy 105.507549 78.995269)
+ (xy 105.507555 78.99527)
+ (xy 105.513186 78.996544)
+ (xy 105.518957 78.996771)
+ (xy 105.518959 78.996771)
+ (xy 105.580989 78.999208)
+ (xy 105.72447 79.004846)
+ (xy 105.730179 79.004018)
+ (xy 105.730183 79.004018)
+ (xy 105.928015 78.975333)
+ (xy 105.928019 78.975332)
+ (xy 105.93373 78.974504)
+ (xy 106.002217 78.951256)
+ (xy 106.128483 78.908395)
+ (xy 106.128488 78.908393)
+ (xy 106.133955 78.906537)
+ (xy 106.250078 78.841505)
+ (xy 106.313395 78.806046)
+ (xy 106.313399 78.806043)
+ (xy 106.318442 78.803219)
+ (xy 106.481012 78.668012)
+ (xy 106.616219 78.505442)
+ (xy 106.619043 78.500399)
+ (xy 106.619046 78.500395)
+ (xy 106.716713 78.325998)
+ (xy 106.716714 78.325996)
+ (xy 106.719537 78.320955)
+ (xy 106.721393 78.315488)
+ (xy 106.721395 78.315483)
+ (xy 106.785647 78.1262)
+ (xy 106.785648 78.126197)
+ (xy 106.787504 78.12073)
+ (xy 106.801243 78.025981)
+ (xy 106.817314 77.91514)
+ (xy 106.817314 77.915138)
+ (xy 106.817846 77.91147)
+ (xy 106.819429 77.851)
+ (xy 106.800081 77.64044)
+ (xy 106.742686 77.436931)
+ (xy 106.731553 77.414354)
+ (xy 106.651719 77.252469)
+ (xy 106.649165 77.24729)
+ (xy 106.522651 77.077867)
+ (xy 106.367381 76.934337)
+ (xy 106.188554 76.821505)
+ (xy 105.99216 76.743152)
+ (xy 105.986503 76.742027)
+ (xy 105.986497 76.742025)
+ (xy 105.790442 76.703028)
+ (xy 105.79044 76.703028)
+ (xy 105.784775 76.701901)
+ (xy 105.779 76.701825)
+ (xy 105.778996 76.701825)
+ (xy 105.672976 76.700437)
+ (xy 105.573346 76.699133)
+ (xy 105.567649 76.700112)
+ (xy 105.567648 76.700112)
+ (xy 105.37065 76.733962)
+ (xy 105.370649 76.733962)
+ (xy 105.364953 76.734941)
+ (xy 105.166575 76.808127)
+ (xy 105.161614 76.811079)
+ (xy 105.161613 76.811079)
+ (xy 105.144089 76.821505)
+ (xy 104.984856 76.916238)
+ (xy 104.825881 77.055655)
+ (xy 104.694976 77.221708)
+ (xy 104.692287 77.226819)
+ (xy 104.692285 77.226822)
+ (xy 104.678792 77.252469)
+ (xy 104.596523 77.408836)
+ (xy 104.53382 77.610773)
+ (xy 104.533141 77.61651)
+ (xy 104.519088 77.735239)
+ (xy 104.491217 77.800537)
+ (xy 104.432469 77.840401)
+ (xy 104.361494 77.842174)
+ (xy 104.300828 77.805295)
+ (xy 104.26973 77.741471)
+ (xy 104.26849 77.731958)
+ (xy 104.26061 77.646197)
+ (xy 104.260081 77.64044)
+ (xy 104.202686 77.436931)
+ (xy 104.191553 77.414354)
+ (xy 104.111719 77.252469)
+ (xy 104.109165 77.24729)
+ (xy 103.982651 77.077867)
+ (xy 103.827381 76.934337)
+ (xy 103.648554 76.821505)
+ (xy 103.45216 76.743152)
+ (xy 103.446503 76.742027)
+ (xy 103.446497 76.742025)
+ (xy 103.250442 76.703028)
+ (xy 103.25044 76.703028)
+ (xy 103.244775 76.701901)
+ (xy 103.239 76.701825)
+ (xy 103.238996 76.701825)
+ (xy 103.132976 76.700437)
+ (xy 103.033346 76.699133)
+ (xy 103.027649 76.700112)
+ (xy 103.027648 76.700112)
+ (xy 102.83065 76.733962)
+ (xy 102.830649 76.733962)
+ (xy 102.824953 76.734941)
+ (xy 102.626575 76.808127)
+ (xy 102.621614 76.811079)
+ (xy 102.621613 76.811079)
+ (xy 102.604089 76.821505)
+ (xy 102.444856 76.916238)
+ (xy 102.285881 77.055655)
+ (xy 102.154976 77.221708)
+ (xy 102.152287 77.226819)
+ (xy 102.152285 77.226822)
+ (xy 102.138792 77.252469)
+ (xy 102.056523 77.408836)
+ (xy 101.99382 77.610773)
+ (xy 101.993141 77.61651)
+ (xy 101.979088 77.735239)
+ (xy 101.951217 77.800537)
+ (xy 101.892469 77.840401)
+ (xy 101.821494 77.842174)
+ (xy 101.760828 77.805295)
+ (xy 101.72973 77.741471)
+ (xy 101.72849 77.731958)
+ (xy 101.72061 77.646197)
+ (xy 101.720081 77.64044)
+ (xy 101.662686 77.436931)
+ (xy 101.651553 77.414354)
+ (xy 101.571719 77.252469)
+ (xy 101.569165 77.24729)
+ (xy 101.442651 77.077867)
+ (xy 101.287381 76.934337)
+ (xy 101.108554 76.821505)
+ (xy 100.91216 76.743152)
+ (xy 100.906503 76.742027)
+ (xy 100.906497 76.742025)
+ (xy 100.710442 76.703028)
+ (xy 100.71044 76.703028)
+ (xy 100.704775 76.701901)
+ (xy 100.699 76.701825)
+ (xy 100.698996 76.701825)
+ (xy 100.592976 76.700437)
+ (xy 100.493346 76.699133)
+ (xy 100.487649 76.700112)
+ (xy 100.487648 76.700112)
+ (xy 100.29065 76.733962)
+ (xy 100.290649 76.733962)
+ (xy 100.284953 76.734941)
+ (xy 100.086575 76.808127)
+ (xy 100.081614 76.811079)
+ (xy 100.081613 76.811079)
+ (xy 100.064089 76.821505)
+ (xy 99.904856 76.916238)
+ (xy 99.745881 77.055655)
+ (xy 99.614976 77.221708)
+ (xy 99.612287 77.226819)
+ (xy 99.612285 77.226822)
+ (xy 99.598792 77.252469)
+ (xy 99.516523 77.408836)
+ (xy 99.45382 77.610773)
+ (xy 99.453141 77.61651)
+ (xy 99.439088 77.735239)
+ (xy 99.411217 77.800537)
+ (xy 99.352469 77.840401)
+ (xy 99.281494 77.842174)
+ (xy 99.220828 77.805295)
+ (xy 99.18973 77.741471)
+ (xy 99.18849 77.731958)
+ (xy 99.18061 77.646197)
+ (xy 99.180081 77.64044)
+ (xy 99.122686 77.436931)
+ (xy 99.111553 77.414354)
+ (xy 99.031719 77.252469)
+ (xy 99.029165 77.24729)
+ (xy 98.902651 77.077867)
+ (xy 98.747381 76.934337)
+ (xy 98.568554 76.821505)
+ (xy 98.37216 76.743152)
+ (xy 98.366503 76.742027)
+ (xy 98.366497 76.742025)
+ (xy 98.170442 76.703028)
+ (xy 98.17044 76.703028)
+ (xy 98.164775 76.701901)
+ (xy 98.159 76.701825)
+ (xy 98.158996 76.701825)
+ (xy 98.052976 76.700437)
+ (xy 97.953346 76.699133)
+ (xy 97.947649 76.700112)
+ (xy 97.947648 76.700112)
+ (xy 97.75065 76.733962)
+ (xy 97.750649 76.733962)
+ (xy 97.744953 76.734941)
+ (xy 97.546575 76.808127)
+ (xy 97.541614 76.811079)
+ (xy 97.541613 76.811079)
+ (xy 97.524089 76.821505)
+ (xy 97.364856 76.916238)
+ (xy 97.205881 77.055655)
+ (xy 97.074976 77.221708)
+ (xy 97.072287 77.226819)
+ (xy 97.072285 77.226822)
+ (xy 97.058792 77.252469)
+ (xy 96.976523 77.408836)
+ (xy 96.91382 77.610773)
+ (xy 96.888967 77.820754)
+ (xy 96.902796 78.031749)
+ (xy 96.926784 78.126197)
+ (xy 96.929167 78.135581)
+ (xy 96.926549 78.206529)
+ (xy 96.896139 78.255692)
+ (xy 96.720236 78.431595)
+ (xy 96.657924 78.465621)
+ (xy 96.631141 78.4685)
+ (xy 92.470435 78.4685)
+ (xy 92.465159 78.468389)
+ (xy 92.452894 78.467875)
+ (xy 92.406081 78.465913)
+ (xy 92.365895 78.475338)
+ (xy 92.354229 78.4775)
+ (xy 92.321864 78.481933)
+ (xy 92.321862 78.481934)
+ (xy 92.313354 78.483099)
+ (xy 92.305473 78.48651)
+ (xy 92.305471 78.48651)
+ (xy 92.300653 78.488595)
+ (xy 92.27939 78.495627)
+ (xy 92.274275 78.496827)
+ (xy 92.274273 78.496828)
+ (xy 92.265907 78.49879)
+ (xy 92.258382 78.502927)
+ (xy 92.258379 78.502928)
+ (xy 92.229738 78.518674)
+ (xy 92.219078 78.523896)
+ (xy 92.189098 78.536869)
+ (xy 92.189095 78.536871)
+ (xy 92.181217 78.54028)
+ (xy 92.174544 78.545683)
+ (xy 92.17454 78.545686)
+ (xy 92.170456 78.548993)
+ (xy 92.15187 78.561482)
+ (xy 92.145525 78.56497)
+ (xy 92.145521 78.564973)
+ (xy 92.139738 78.568152)
+ (xy 92.131995 78.574835)
+ (xy 92.108782 78.598048)
+ (xy 92.098981 78.606873)
+ (xy 92.069325 78.630888)
+ (xy 92.059194 78.645144)
+ (xy 92.045587 78.661244)
+ (xy 90.703243 80.003588)
+ (xy 90.640931 80.037614)
+ (xy 90.589567 80.038072)
+ (xy 90.423442 80.005028)
+ (xy 90.42344 80.005028)
+ (xy 90.417775 80.003901)
+ (xy 90.412 80.003825)
+ (xy 90.411996 80.003825)
+ (xy 90.305976 80.002437)
+ (xy 90.206346 80.001133)
+ (xy 90.200649 80.002112)
+ (xy 90.200648 80.002112)
+ (xy 90.00365 80.035962)
+ (xy 90.003649 80.035962)
+ (xy 89.997953 80.036941)
+ (xy 89.799575 80.110127)
+ (xy 89.794614 80.113079)
+ (xy 89.794613 80.113079)
+ (xy 89.638178 80.206148)
+ (xy 89.617856 80.218238)
+ (xy 89.458881 80.357655)
+ (xy 89.327976 80.523708)
+ (xy 89.325287 80.528819)
+ (xy 89.325285 80.528822)
+ (xy 89.298619 80.579506)
+ (xy 89.229523 80.710836)
+ (xy 89.16682 80.912773)
+ (xy 89.166141 80.91851)
+ (xy 89.152088 81.037239)
+ (xy 89.124217 81.102537)
+ (xy 89.065469 81.142401)
+ (xy 88.994494 81.144174)
+ (xy 88.933828 81.107295)
+ (xy 88.90273 81.043471)
+ (xy 88.90149 81.033958)
+ (xy 88.89361 80.948197)
+ (xy 88.893081 80.94244)
+ (xy 88.8878 80.923713)
+ (xy 88.859457 80.823219)
+ (xy 88.835686 80.738931)
+ (xy 88.828612 80.724585)
+ (xy 88.744719 80.554469)
+ (xy 88.742165 80.54929)
+ (xy 88.615651 80.379867)
+ (xy 88.460381 80.236337)
+ (xy 88.281554 80.123505)
+ (xy 88.08516 80.045152)
+ (xy 88.079503 80.044027)
+ (xy 88.079497 80.044025)
+ (xy 87.883442 80.005028)
+ (xy 87.88344 80.005028)
+ (xy 87.877775 80.003901)
+ (xy 87.872 80.003825)
+ (xy 87.871996 80.003825)
+ (xy 87.765976 80.002437)
+ (xy 87.666346 80.001133)
+ (xy 87.660649 80.002112)
+ (xy 87.660648 80.002112)
+ (xy 87.46365 80.035962)
+ (xy 87.463649 80.035962)
+ (xy 87.457953 80.036941)
+ (xy 87.259575 80.110127)
+ (xy 87.254614 80.113079)
+ (xy 87.254613 80.113079)
+ (xy 87.098178 80.206148)
+ (xy 87.077856 80.218238)
+ (xy 86.918881 80.357655)
+ (xy 86.787976 80.523708)
+ (xy 86.785287 80.528819)
+ (xy 86.785285 80.528822)
+ (xy 86.758619 80.579506)
+ (xy 86.689523 80.710836)
+ (xy 86.62682 80.912773)
+ (xy 86.626141 80.91851)
+ (xy 86.612088 81.037239)
+ (xy 86.584217 81.102537)
+ (xy 86.525469 81.142401)
+ (xy 86.454494 81.144174)
+ (xy 86.393828 81.107295)
+ (xy 86.36273 81.043471)
+ (xy 86.36149 81.033958)
+ (xy 86.35361 80.948197)
+ (xy 86.353081 80.94244)
+ (xy 86.3478 80.923713)
+ (xy 86.319457 80.823219)
+ (xy 86.295686 80.738931)
+ (xy 86.288612 80.724585)
+ (xy 86.204719 80.554469)
+ (xy 86.202165 80.54929)
+ (xy 86.075651 80.379867)
+ (xy 85.920381 80.236337)
+ (xy 85.741554 80.123505)
+ (xy 85.54516 80.045152)
+ (xy 85.539503 80.044027)
+ (xy 85.539497 80.044025)
+ (xy 85.343442 80.005028)
+ (xy 85.34344 80.005028)
+ (xy 85.337775 80.003901)
+ (xy 85.332 80.003825)
+ (xy 85.331996 80.003825)
+ (xy 85.225976 80.002437)
+ (xy 85.126346 80.001133)
+ (xy 85.120649 80.002112)
+ (xy 85.120648 80.002112)
+ (xy 84.92365 80.035962)
+ (xy 84.923649 80.035962)
+ (xy 84.917953 80.036941)
+ (xy 84.719575 80.110127)
+ (xy 84.714614 80.113079)
+ (xy 84.714613 80.113079)
+ (xy 84.558178 80.206148)
+ (xy 84.537856 80.218238)
+ (xy 84.378881 80.357655)
+ (xy 84.247976 80.523708)
+ (xy 84.245287 80.528819)
+ (xy 84.245285 80.528822)
+ (xy 84.152211 80.705726)
+ (xy 84.152209 80.705731)
+ (xy 84.149523 80.710836)
+ (xy 84.147811 80.716349)
+ (xy 84.147788 80.716405)
+ (xy 84.10324 80.771686)
+ (xy 84.035876 80.794106)
+ (xy 83.967085 80.776547)
+ (xy 83.918707 80.724585)
+ (xy 83.912979 80.71128)
+ (xy 83.908491 80.69895)
+ (xy 83.816414 80.501489)
+ (xy 83.810931 80.491993)
+ (xy 83.685972 80.313533)
+ (xy 83.678916 80.305125)
+ (xy 83.524875 80.151084)
+ (xy 83.516467 80.144028)
+ (xy 83.338007 80.019069)
+ (xy 83.328511 80.013586)
+ (xy 83.131053 79.92151)
+ (xy 83.120761 79.917764)
+ (xy 82.948497 79.871606)
+ (xy 82.934401 79.871942)
+ (xy 82.931 79.879884)
+ (xy 82.931 82.420967)
+ (xy 82.423 82.420967)
+ (xy 82.423 79.885033)
+ (xy 82.419027 79.871502)
+ (xy 82.410478 79.870273)
+ (xy 82.233239 79.917764)
+ (xy 82.222947 79.92151)
+ (xy 82.025489 80.013586)
+ (xy 82.015993 80.019069)
+ (xy 81.837533 80.144028)
+ (xy 81.829125 80.151084)
+ (xy 81.675084 80.305125)
+ (xy 81.668028 80.313533)
+ (xy 81.543069 80.491993)
+ (xy 81.537586 80.501489)
+ (xy 81.44551 80.698947)
+ (xy 81.440455 80.712836)
+ (xy 81.398361 80.770007)
+ (xy 81.332039 80.795345)
+ (xy 81.262548 80.780804)
+ (xy 81.209048 80.72547)
+ (xy 81.124719 80.554469)
+ (xy 81.122165 80.54929)
+ (xy 80.995651 80.379867)
+ (xy 80.840381 80.236337)
+ (xy 80.661554 80.123505)
+ (xy 80.46516 80.045152)
+ (xy 80.459503 80.044027)
+ (xy 80.459497 80.044025)
+ (xy 80.263442 80.005028)
+ (xy 80.26344 80.005028)
+ (xy 80.257775 80.003901)
+ (xy 80.252 80.003825)
+ (xy 80.251996 80.003825)
+ (xy 80.145976 80.002437)
+ (xy 80.046346 80.001133)
+ (xy 80.040649 80.002112)
+ (xy 80.040648 80.002112)
+ (xy 79.84365 80.035962)
+ (xy 79.843649 80.035962)
+ (xy 79.837953 80.036941)
+ (xy 79.639575 80.110127)
+ (xy 79.634614 80.113079)
+ (xy 79.634613 80.113079)
+ (xy 79.478178 80.206148)
+ (xy 79.457856 80.218238)
+ (xy 79.298881 80.357655)
+ (xy 79.167976 80.523708)
+ (xy 79.165287 80.528819)
+ (xy 79.165285 80.528822)
+ (xy 79.138619 80.579506)
+ (xy 79.069523 80.710836)
+ (xy 79.00682 80.912773)
+ (xy 78.981967 81.122754)
+ (xy 77.0895 81.122754)
+ (xy 77.0895 79.585064)
+ (xy 77.109502 79.516943)
+ (xy 77.148366 79.478439)
+ (xy 77.173688 79.462496)
+ (xy 86.680085 73.476987)
+ (xy 111.471721 73.476987)
+ (xy 111.480548 73.488605)
+ (xy 111.703281 73.65043)
+ (xy 111.709961 73.65467)
+ (xy 111.979572 73.80289)
+ (xy 111.986707 73.806247)
+ (xy 112.27277 73.919508)
+ (xy 112.280296 73.921953)
+ (xy 112.578279 73.998462)
+ (xy 112.58605 73.999945)
+ (xy 112.891278 74.038503)
+ (xy 112.899169 74.039)
+ (xy 113.206831 74.039)
+ (xy 113.214722 74.038503)
+ (xy 113.51995 73.999945)
+ (xy 113.527721 73.998462)
+ (xy 113.825704 73.921953)
+ (xy 113.83323 73.919508)
+ (xy 114.119293 73.806247)
+ (xy 114.126428 73.80289)
+ (xy 114.396039 73.65467)
+ (xy 114.402719 73.65043)
+ (xy 114.625823 73.488336)
+ (xy 114.634246 73.477413)
+ (xy 114.627342 73.464552)
+ (xy 113.065812 71.903022)
+ (xy 113.051868 71.895408)
+ (xy 113.050035 71.895539)
+ (xy 113.04342 71.89979)
+ (xy 111.478334 73.464876)
+ (xy 111.471721 73.476987)
+ (xy 86.680085 73.476987)
+ (xy 91.412177 70.497522)
+ (xy 96.761273 70.497522)
+ (xy 96.808764 70.674761)
+ (xy 96.81251 70.685053)
+ (xy 96.904586 70.882511)
+ (xy 96.910069 70.892007)
+ (xy 97.035028 71.070467)
+ (xy 97.042084 71.078875)
+ (xy 97.196125 71.232916)
+ (xy 97.204533 71.239972)
+ (xy 97.382993 71.364931)
+ (xy 97.392489 71.370414)
+ (xy 97.589947 71.46249)
+ (xy 97.600239 71.466236)
+ (xy 97.772503 71.512394)
+ (xy 97.786599 71.512058)
+ (xy 97.79 71.504116)
+ (xy 97.79 71.498967)
+ (xy 98.298 71.498967)
+ (xy 98.301973 71.512498)
+ (xy 98.310522 71.513727)
+ (xy 98.487761 71.466236)
+ (xy 98.498053 71.46249)
+ (xy 98.695511 71.370414)
+ (xy 98.705007 71.364931)
+ (xy 98.883467 71.239972)
+ (xy 98.891875 71.232916)
+ (xy 99.045916 71.078875)
+ (xy 99.052972 71.070467)
+ (xy 99.177931 70.892007)
+ (xy 99.183414 70.882511)
+ (xy 99.199805 70.847359)
+ (xy 99.246722 70.794074)
+ (xy 99.314999 70.774613)
+ (xy 99.382959 70.795155)
+ (xy 99.428195 70.847359)
+ (xy 99.444586 70.882511)
+ (xy 99.450069 70.892007)
+ (xy 99.575028 71.070467)
+ (xy 99.582084 71.078875)
+ (xy 99.736125 71.232916)
+ (xy 99.744533 71.239972)
+ (xy 99.922993 71.364931)
+ (xy 99.932489 71.370414)
+ (xy 100.129947 71.46249)
+ (xy 100.140239 71.466236)
+ (xy 100.312503 71.512394)
+ (xy 100.326599 71.512058)
+ (xy 100.33 71.504116)
+ (xy 100.33 71.498967)
+ (xy 100.838 71.498967)
+ (xy 100.841973 71.512498)
+ (xy 100.850522 71.513727)
+ (xy 101.027761 71.466236)
+ (xy 101.038053 71.46249)
+ (xy 101.235511 71.370414)
+ (xy 101.245007 71.364931)
+ (xy 101.423467 71.239972)
+ (xy 101.431875 71.232916)
+ (xy 101.585916 71.078875)
+ (xy 101.592972 71.070467)
+ (xy 101.717931 70.892007)
+ (xy 101.723414 70.882511)
+ (xy 101.739805 70.847359)
+ (xy 101.786722 70.794074)
+ (xy 101.854999 70.774613)
+ (xy 101.922959 70.795155)
+ (xy 101.968195 70.847359)
+ (xy 101.984586 70.882511)
+ (xy 101.990069 70.892007)
+ (xy 102.115028 71.070467)
+ (xy 102.122084 71.078875)
+ (xy 102.276125 71.232916)
+ (xy 102.284533 71.239972)
+ (xy 102.462993 71.364931)
+ (xy 102.472489 71.370414)
+ (xy 102.669947 71.46249)
+ (xy 102.680239 71.466236)
+ (xy 102.852503 71.512394)
+ (xy 102.866599 71.512058)
+ (xy 102.87 71.504116)
+ (xy 102.87 71.498967)
+ (xy 103.378 71.498967)
+ (xy 103.381973 71.512498)
+ (xy 103.390522 71.513727)
+ (xy 103.567761 71.466236)
+ (xy 103.578053 71.46249)
+ (xy 103.775511 71.370414)
+ (xy 103.785007 71.364931)
+ (xy 103.963467 71.239972)
+ (xy 103.971875 71.232916)
+ (xy 104.125916 71.078875)
+ (xy 104.136507 71.066254)
+ (xy 104.137357 71.066968)
+ (xy 104.188422 71.026152)
+ (xy 104.259041 71.018844)
+ (xy 104.322401 71.050877)
+ (xy 104.358385 71.112079)
+ (xy 104.361438 71.129145)
+ (xy 104.361895 71.133353)
+ (xy 104.365521 71.148604)
+ (xy 104.410676 71.269054)
+ (xy 104.419214 71.284649)
+ (xy 104.495715 71.386724)
+ (xy 104.508276 71.399285)
+ (xy 104.610351 71.475786)
+ (xy 104.625946 71.484324)
+ (xy 104.746394 71.529478)
+ (xy 104.761649 71.533105)
+ (xy 104.812514 71.538631)
+ (xy 104.819328 71.539)
+ (xy 105.391885 71.539)
+ (xy 105.407124 71.534525)
+ (xy 105.408329 71.533135)
+ (xy 105.41 71.525452)
+ (xy 105.41 71.520884)
+ (xy 105.918 71.520884)
+ (xy 105.922475 71.536123)
+ (xy 105.923865 71.537328)
+ (xy 105.931548 71.538999)
+ (xy 106.508669 71.538999)
+ (xy 106.51549 71.538629)
+ (xy 106.549291 71.534958)
+ (xy 110.54029 71.534958)
+ (xy 110.559607 71.841994)
+ (xy 110.5606 71.849855)
+ (xy 110.618246 72.152046)
+ (xy 110.620217 72.159723)
+ (xy 110.715284 72.452309)
+ (xy 110.718199 72.459672)
+ (xy 110.849189 72.738041)
+ (xy 110.853001 72.744974)
+ (xy 111.017851 73.004736)
+ (xy 111.022495 73.011129)
+ (xy 111.097497 73.10179)
+ (xy 111.110014 73.110245)
+ (xy 111.120752 73.104038)
+ (xy 112.680978 71.543812)
+ (xy 112.687356 71.532132)
+ (xy 113.417408 71.532132)
+ (xy 113.417539 71.533965)
+ (xy 113.42179 71.54058)
+ (xy 114.984145 73.102935)
+ (xy 114.997407 73.110177)
+ (xy 115.007512 73.102988)
+ (xy 115.083505 73.011129)
+ (xy 115.088149 73.004736)
+ (xy 115.252999 72.744974)
+ (xy 115.256811 72.738041)
+ (xy 115.387801 72.459672)
+ (xy 115.390716 72.452309)
+ (xy 115.485783 72.159723)
+ (xy 115.487754 72.152046)
+ (xy 115.5454 71.849855)
+ (xy 115.546393 71.841994)
+ (xy 115.56571 71.534958)
+ (xy 115.56571 71.527042)
+ (xy 115.546393 71.220006)
+ (xy 115.5454 71.212145)
+ (xy 115.487754 70.909954)
+ (xy 115.485783 70.902277)
+ (xy 115.390716 70.609691)
+ (xy 115.387801 70.602328)
+ (xy 115.256811 70.323959)
+ (xy 115.252999 70.317026)
+ (xy 115.088149 70.057264)
+ (xy 115.083505 70.050871)
+ (xy 115.008503 69.96021)
+ (xy 114.995986 69.951755)
+ (xy 114.985248 69.957962)
+ (xy 113.425022 71.518188)
+ (xy 113.417408 71.532132)
+ (xy 112.687356 71.532132)
+ (xy 112.688592 71.529868)
+ (xy 112.688461 71.528035)
+ (xy 112.68421 71.52142)
+ (xy 111.121855 69.959065)
+ (xy 111.108593 69.951823)
+ (xy 111.098488 69.959012)
+ (xy 111.022495 70.050871)
+ (xy 111.017851 70.057264)
+ (xy 110.853001 70.317026)
+ (xy 110.849189 70.323959)
+ (xy 110.718199 70.602328)
+ (xy 110.715284 70.609691)
+ (xy 110.620217 70.902277)
+ (xy 110.618246 70.909954)
+ (xy 110.5606 71.212145)
+ (xy 110.559607 71.220006)
+ (xy 110.54029 71.527042)
+ (xy 110.54029 71.534958)
+ (xy 106.549291 71.534958)
+ (xy 106.566352 71.533105)
+ (xy 106.581604 71.529479)
+ (xy 106.702054 71.484324)
+ (xy 106.717649 71.475786)
+ (xy 106.819724 71.399285)
+ (xy 106.832285 71.386724)
+ (xy 106.908786 71.284649)
+ (xy 106.917324 71.269054)
+ (xy 106.962478 71.148606)
+ (xy 106.966105 71.133351)
+ (xy 106.971631 71.082486)
+ (xy 106.972 71.075672)
+ (xy 106.972 70.503115)
+ (xy 106.967525 70.487876)
+ (xy 106.966135 70.486671)
+ (xy 106.958452 70.485)
+ (xy 105.936115 70.485)
+ (xy 105.920876 70.489475)
+ (xy 105.919671 70.490865)
+ (xy 105.918 70.498548)
+ (xy 105.918 71.520884)
+ (xy 105.41 71.520884)
+ (xy 105.41 70.503115)
+ (xy 105.405525 70.487876)
+ (xy 105.404135 70.486671)
+ (xy 105.396452 70.485)
+ (xy 103.396115 70.485)
+ (xy 103.380876 70.489475)
+ (xy 103.379671 70.490865)
+ (xy 103.378 70.498548)
+ (xy 103.378 71.498967)
+ (xy 102.87 71.498967)
+ (xy 102.87 70.503115)
+ (xy 102.865525 70.487876)
+ (xy 102.864135 70.486671)
+ (xy 102.856452 70.485)
+ (xy 100.856115 70.485)
+ (xy 100.840876 70.489475)
+ (xy 100.839671 70.490865)
+ (xy 100.838 70.498548)
+ (xy 100.838 71.498967)
+ (xy 100.33 71.498967)
+ (xy 100.33 70.503115)
+ (xy 100.325525 70.487876)
+ (xy 100.324135 70.486671)
+ (xy 100.316452 70.485)
+ (xy 98.316115 70.485)
+ (xy 98.300876 70.489475)
+ (xy 98.299671 70.490865)
+ (xy 98.298 70.498548)
+ (xy 98.298 71.498967)
+ (xy 97.79 71.498967)
+ (xy 97.79 70.503115)
+ (xy 97.785525 70.487876)
+ (xy 97.784135 70.486671)
+ (xy 97.776452 70.485)
+ (xy 96.776033 70.485)
+ (xy 96.762502 70.488973)
+ (xy 96.761273 70.497522)
+ (xy 91.412177 70.497522)
+ (xy 91.56672 70.400217)
+ (xy 94.022675 68.853875)
+ (xy 94.089809 68.8345)
+ (xy 97.375463 68.8345)
+ )
+ )
+ )
+ (zone (net 2) (net_name "GND") (layer "B.Cu") (tstamp 00000000-0000-0000-0000-00005ff82516) (hatch edge 0.508)
+ (connect_pads (clearance 0.254))
+ (min_thickness 0.254) (filled_areas_thickness no)
+ (fill yes (thermal_gap 0.508) (thermal_bridge_width 0.508))
+ (polygon
+ (pts
+ (xy 122.555 107.95)
+ (xy 76.835 107.95)
+ (xy 76.835 68.453)
+ (xy 122.555 68.58)
+ )
+ )
+ (filled_polygon
+ (layer "B.Cu")
+ (pts
+ (xy 97.443584 68.854502)
+ (xy 97.490077 68.908158)
+ (xy 97.500181 68.978432)
+ (xy 97.470687 69.043012)
+ (xy 97.428713 69.074695)
+ (xy 97.392489 69.091586)
+ (xy 97.382993 69.097069)
+ (xy 97.204533 69.222028)
+ (xy 97.196125 69.229084)
+ (xy 97.042084 69.383125)
+ (xy 97.035028 69.391533)
+ (xy 96.910069 69.569993)
+ (xy 96.904586 69.579489)
+ (xy 96.81251 69.776947)
+ (xy 96.808764 69.787239)
+ (xy 96.762606 69.959503)
+ (xy 96.762942 69.973599)
+ (xy 96.770884 69.977)
+ (xy 106.953884 69.977)
+ (xy 106.969123 69.972525)
+ (xy 106.970328 69.971135)
+ (xy 106.971999 69.963452)
+ (xy 106.971999 69.386331)
+ (xy 106.971629 69.37951)
+ (xy 106.966105 69.328648)
+ (xy 106.962479 69.313396)
+ (xy 106.917324 69.192946)
+ (xy 106.908786 69.177351)
+ (xy 106.832285 69.075276)
+ (xy 106.819722 69.062713)
+ (xy 106.81787 69.061325)
+ (xy 106.816495 69.059486)
+ (xy 106.813374 69.056365)
+ (xy 106.813824 69.055915)
+ (xy 106.775355 69.004466)
+ (xy 106.770331 68.933647)
+ (xy 106.804391 68.871354)
+ (xy 106.866722 68.837364)
+ (xy 106.893436 68.8345)
+ (xy 112.472932 68.8345)
+ (xy 112.541053 68.854502)
+ (xy 112.587546 68.908158)
+ (xy 112.59765 68.978432)
+ (xy 112.568156 69.043012)
+ (xy 112.504267 69.082541)
+ (xy 112.280295 69.140047)
+ (xy 112.27277 69.142492)
+ (xy 111.986707 69.255753)
+ (xy 111.979572 69.25911)
+ (xy 111.709961 69.40733)
+ (xy 111.703281 69.41157)
+ (xy 111.480177 69.573664)
+ (xy 111.471754 69.584587)
+ (xy 111.478658 69.597448)
+ (xy 113.040188 71.158978)
+ (xy 113.054132 71.166592)
+ (xy 113.055965 71.166461)
+ (xy 113.06258 71.16221)
+ (xy 114.627666 69.597124)
+ (xy 114.634279 69.585013)
+ (xy 114.625452 69.573395)
+ (xy 114.402719 69.41157)
+ (xy 114.396039 69.40733)
+ (xy 114.126428 69.25911)
+ (xy 114.119293 69.255753)
+ (xy 113.83323 69.142492)
+ (xy 113.825705 69.140047)
+ (xy 113.601733 69.082541)
+ (xy 113.540727 69.046227)
+ (xy 113.509038 68.982694)
+ (xy 113.516728 68.912116)
+ (xy 113.561355 68.856898)
+ (xy 113.633068 68.8345)
+ (xy 122.1745 68.8345)
+ (xy 122.242621 68.854502)
+ (xy 122.289114 68.908158)
+ (xy 122.3005 68.9605)
+ (xy 122.3005 107.5695)
+ (xy 122.280498 107.637621)
+ (xy 122.226842 107.684114)
+ (xy 122.1745 107.6955)
+ (xy 94.078598 107.6955)
+ (xy 94.017407 107.679644)
+ (xy 93.33128 107.298462)
+ (xy 92.392625 106.776987)
+ (xy 111.471721 106.776987)
+ (xy 111.480548 106.788605)
+ (xy 111.703281 106.95043)
+ (xy 111.709961 106.95467)
+ (xy 111.979572 107.10289)
+ (xy 111.986707 107.106247)
+ (xy 112.27277 107.219508)
+ (xy 112.280296 107.221953)
+ (xy 112.578279 107.298462)
+ (xy 112.58605 107.299945)
+ (xy 112.891278 107.338503)
+ (xy 112.899169 107.339)
+ (xy 113.206831 107.339)
+ (xy 113.214722 107.338503)
+ (xy 113.51995 107.299945)
+ (xy 113.527721 107.298462)
+ (xy 113.825704 107.221953)
+ (xy 113.83323 107.219508)
+ (xy 114.119293 107.106247)
+ (xy 114.126428 107.10289)
+ (xy 114.396039 106.95467)
+ (xy 114.402719 106.95043)
+ (xy 114.625823 106.788336)
+ (xy 114.634246 106.777413)
+ (xy 114.627342 106.764552)
+ (xy 113.065812 105.203022)
+ (xy 113.051868 105.195408)
+ (xy 113.050035 105.195539)
+ (xy 113.04342 105.19979)
+ (xy 111.478334 106.764876)
+ (xy 111.471721 106.776987)
+ (xy 92.392625 106.776987)
+ (xy 88.896973 104.834958)
+ (xy 110.54029 104.834958)
+ (xy 110.559607 105.141994)
+ (xy 110.5606 105.149855)
+ (xy 110.618246 105.452046)
+ (xy 110.620217 105.459723)
+ (xy 110.715284 105.752309)
+ (xy 110.718199 105.759672)
+ (xy 110.849189 106.038041)
+ (xy 110.853001 106.044974)
+ (xy 111.017851 106.304736)
+ (xy 111.022495 106.311129)
+ (xy 111.097497 106.40179)
+ (xy 111.110014 106.410245)
+ (xy 111.120752 106.404038)
+ (xy 112.680978 104.843812)
+ (xy 112.687356 104.832132)
+ (xy 113.417408 104.832132)
+ (xy 113.417539 104.833965)
+ (xy 113.42179 104.84058)
+ (xy 114.984145 106.402935)
+ (xy 114.997407 106.410177)
+ (xy 115.007512 106.402988)
+ (xy 115.083505 106.311129)
+ (xy 115.088149 106.304736)
+ (xy 115.252999 106.044974)
+ (xy 115.256811 106.038041)
+ (xy 115.387801 105.759672)
+ (xy 115.390716 105.752309)
+ (xy 115.485783 105.459723)
+ (xy 115.487754 105.452046)
+ (xy 115.5454 105.149855)
+ (xy 115.546393 105.141994)
+ (xy 115.56571 104.834958)
+ (xy 115.56571 104.827042)
+ (xy 115.546393 104.520006)
+ (xy 115.5454 104.512145)
+ (xy 115.487754 104.209954)
+ (xy 115.485783 104.202277)
+ (xy 115.390716 103.909691)
+ (xy 115.387801 103.902328)
+ (xy 115.256811 103.623959)
+ (xy 115.252999 103.617026)
+ (xy 115.088149 103.357264)
+ (xy 115.083505 103.350871)
+ (xy 115.008503 103.26021)
+ (xy 114.995986 103.251755)
+ (xy 114.985248 103.257962)
+ (xy 113.425022 104.818188)
+ (xy 113.417408 104.832132)
+ (xy 112.687356 104.832132)
+ (xy 112.688592 104.829868)
+ (xy 112.688461 104.828035)
+ (xy 112.68421 104.82142)
+ (xy 111.121855 103.259065)
+ (xy 111.108593 103.251823)
+ (xy 111.098488 103.259012)
+ (xy 111.022495 103.350871)
+ (xy 111.017851 103.357264)
+ (xy 110.853001 103.617026)
+ (xy 110.849189 103.623959)
+ (xy 110.718199 103.902328)
+ (xy 110.715284 103.909691)
+ (xy 110.620217 104.202277)
+ (xy 110.618246 104.209954)
+ (xy 110.5606 104.512145)
+ (xy 110.559607 104.520006)
+ (xy 110.54029 104.827042)
+ (xy 110.54029 104.834958)
+ (xy 88.896973 104.834958)
+ (xy 85.386305 102.884587)
+ (xy 111.471754 102.884587)
+ (xy 111.478658 102.897448)
+ (xy 113.040188 104.458978)
+ (xy 113.054132 104.466592)
+ (xy 113.055965 104.466461)
+ (xy 113.06258 104.46221)
+ (xy 114.627666 102.897124)
+ (xy 114.634279 102.885013)
+ (xy 114.625452 102.873395)
+ (xy 114.402719 102.71157)
+ (xy 114.396039 102.70733)
+ (xy 114.126428 102.55911)
+ (xy 114.119293 102.555753)
+ (xy 113.83323 102.442492)
+ (xy 113.825704 102.440047)
+ (xy 113.527721 102.363538)
+ (xy 113.51995 102.362055)
+ (xy 113.214722 102.323497)
+ (xy 113.206831 102.323)
+ (xy 112.899169 102.323)
+ (xy 112.891278 102.323497)
+ (xy 112.58605 102.362055)
+ (xy 112.578279 102.363538)
+ (xy 112.280296 102.440047)
+ (xy 112.27277 102.442492)
+ (xy 111.986707 102.555753)
+ (xy 111.979572 102.55911)
+ (xy 111.709961 102.70733)
+ (xy 111.703281 102.71157)
+ (xy 111.480177 102.873664)
+ (xy 111.471754 102.884587)
+ (xy 85.386305 102.884587)
+ (xy 77.154309 98.311256)
+ (xy 77.104475 98.260689)
+ (xy 77.0895 98.201112)
+ (xy 77.0895 97.226218)
+ (xy 78.9865 97.226218)
+ (xy 78.98717 97.230768)
+ (xy 78.98717 97.230771)
+ (xy 78.995216 97.285426)
+ (xy 78.996642 97.295112)
+ (xy 79.000958 97.303902)
+ (xy 79.042708 97.388937)
+ (xy 79.048068 97.399855)
+ (xy 79.13065 97.482293)
+ (xy 79.140006 97.486866)
+ (xy 79.140007 97.486867)
+ (xy 79.150259 97.491878)
+ (xy 79.235482 97.533536)
+ (xy 79.261071 97.537269)
+ (xy 79.299256 97.54284)
+ (xy 79.29926 97.54284)
+ (xy 79.303782 97.5435)
+ (xy 80.970218 97.5435)
+ (xy 80.974768 97.54283)
+ (xy 80.974771 97.54283)
+ (xy 81.029426 97.534784)
+ (xy 81.029427 97.534784)
+ (xy 81.039112 97.533358)
+ (xy 81.100535 97.503201)
+ (xy 81.134507 97.486522)
+ (xy 81.134509 97.486521)
+ (xy 81.143855 97.481932)
+ (xy 81.226293 97.39935)
+ (xy 81.233352 97.38491)
+ (xy 81.27324 97.303306)
+ (xy 81.277536 97.294518)
+ (xy 81.285173 97.242171)
+ (xy 81.28684 97.230744)
+ (xy 81.28684 97.23074)
+ (xy 81.2875 97.226218)
+ (xy 81.2875 96.603673)
+ (xy 81.307502 96.535552)
+ (xy 81.361158 96.489059)
+ (xy 81.431432 96.478955)
+ (xy 81.496012 96.508449)
+ (xy 81.534396 96.568175)
+ (xy 81.535658 96.573784)
+ (xy 81.535796 96.573749)
+ (xy 81.587845 96.77869)
+ (xy 81.590262 96.783933)
+ (xy 81.660648 96.936613)
+ (xy 81.676369 96.970714)
+ (xy 81.798405 97.143391)
+ (xy 81.839795 97.183711)
+ (xy 81.925973 97.267662)
+ (xy 81.949865 97.290937)
+ (xy 81.954661 97.294142)
+ (xy 81.954664 97.294144)
+ (xy 82.090505 97.38491)
+ (xy 82.125677 97.408411)
+ (xy 82.130985 97.410692)
+ (xy 82.130986 97.410692)
+ (xy 82.31465 97.4896)
+ (xy 82.314653 97.489601)
+ (xy 82.319953 97.491878)
+ (xy 82.325582 97.493152)
+ (xy 82.325583 97.493152)
+ (xy 82.52055 97.537269)
+ (xy 82.520553 97.537269)
+ (xy 82.526186 97.538544)
+ (xy 82.531957 97.538771)
+ (xy 82.531959 97.538771)
+ (xy 82.593989 97.541208)
+ (xy 82.73747 97.546846)
+ (xy 82.743179 97.546018)
+ (xy 82.743183 97.546018)
+ (xy 82.941015 97.517333)
+ (xy 82.941019 97.517332)
+ (xy 82.94673 97.516504)
+ (xy 83.034038 97.486867)
+ (xy 83.141483 97.450395)
+ (xy 83.141488 97.450393)
+ (xy 83.146955 97.448537)
+ (xy 83.156451 97.443219)
+ (xy 83.326395 97.348046)
+ (xy 83.326399 97.348043)
+ (xy 83.331442 97.345219)
+ (xy 83.494012 97.210012)
+ (xy 83.629219 97.047442)
+ (xy 83.632043 97.042399)
+ (xy 83.632046 97.042395)
+ (xy 83.729713 96.867998)
+ (xy 83.729714 96.867996)
+ (xy 83.732537 96.862955)
+ (xy 83.742239 96.834375)
+ (xy 83.783074 96.7763)
+ (xy 83.848827 96.749521)
+ (xy 83.918619 96.762542)
+ (xy 83.970293 96.811228)
+ (xy 83.979952 96.831783)
+ (xy 83.985509 96.84705)
+ (xy 84.077586 97.044511)
+ (xy 84.083069 97.054007)
+ (xy 84.208028 97.232467)
+ (xy 84.215084 97.240875)
+ (xy 84.369125 97.394916)
+ (xy 84.377533 97.401972)
+ (xy 84.555993 97.526931)
+ (xy 84.565489 97.532414)
+ (xy 84.762947 97.62449)
+ (xy 84.773239 97.628236)
+ (xy 84.945503 97.674394)
+ (xy 84.959599 97.674058)
+ (xy 84.963 97.666116)
+ (xy 84.963 97.660967)
+ (xy 85.471 97.660967)
+ (xy 85.474973 97.674498)
+ (xy 85.483522 97.675727)
+ (xy 85.660761 97.628236)
+ (xy 85.671053 97.62449)
+ (xy 85.868511 97.532414)
+ (xy 85.878007 97.526931)
+ (xy 86.056467 97.401972)
+ (xy 86.064875 97.394916)
+ (xy 86.218916 97.240875)
+ (xy 86.225972 97.232467)
+ (xy 86.350931 97.054007)
+ (xy 86.356414 97.044511)
+ (xy 86.372805 97.009359)
+ (xy 86.419722 96.956074)
+ (xy 86.487999 96.936613)
+ (xy 86.555959 96.957155)
+ (xy 86.601195 97.009359)
+ (xy 86.617586 97.044511)
+ (xy 86.623069 97.054007)
+ (xy 86.748028 97.232467)
+ (xy 86.755084 97.240875)
+ (xy 86.909125 97.394916)
+ (xy 86.917533 97.401972)
+ (xy 87.095993 97.526931)
+ (xy 87.105489 97.532414)
+ (xy 87.302947 97.62449)
+ (xy 87.313239 97.628236)
+ (xy 87.485503 97.674394)
+ (xy 87.499599 97.674058)
+ (xy 87.503 97.666116)
+ (xy 87.503 96.665115)
+ (xy 87.498525 96.649876)
+ (xy 87.497135 96.648671)
+ (xy 87.489452 96.647)
+ (xy 85.489115 96.647)
+ (xy 85.473876 96.651475)
+ (xy 85.472671 96.652865)
+ (xy 85.471 96.660548)
+ (xy 85.471 97.660967)
+ (xy 84.963 97.660967)
+ (xy 84.963 96.120885)
+ (xy 85.471 96.120885)
+ (xy 85.475475 96.136124)
+ (xy 85.476865 96.137329)
+ (xy 85.484548 96.139)
+ (xy 87.484885 96.139)
+ (xy 87.500124 96.134525)
+ (xy 87.501329 96.133135)
+ (xy 87.503 96.125452)
+ (xy 87.503 95.125033)
+ (xy 87.499027 95.111502)
+ (xy 87.490478 95.110273)
+ (xy 87.313239 95.157764)
+ (xy 87.302947 95.16151)
+ (xy 87.105489 95.253586)
+ (xy 87.095993 95.259069)
+ (xy 86.917533 95.384028)
+ (xy 86.909125 95.391084)
+ (xy 86.755084 95.545125)
+ (xy 86.748028 95.553533)
+ (xy 86.623069 95.731993)
+ (xy 86.617586 95.741489)
+ (xy 86.601195 95.776641)
+ (xy 86.554278 95.829926)
+ (xy 86.486001 95.849387)
+ (xy 86.418041 95.828845)
+ (xy 86.372805 95.776641)
+ (xy 86.356414 95.741489)
+ (xy 86.350931 95.731993)
+ (xy 86.225972 95.553533)
+ (xy 86.218916 95.545125)
+ (xy 86.064875 95.391084)
+ (xy 86.056467 95.384028)
+ (xy 85.878007 95.259069)
+ (xy 85.868511 95.253586)
+ (xy 85.671053 95.16151)
+ (xy 85.660761 95.157764)
+ (xy 85.488497 95.111606)
+ (xy 85.474401 95.111942)
+ (xy 85.471 95.119884)
+ (xy 85.471 96.120885)
+ (xy 84.963 96.120885)
+ (xy 84.963 95.125033)
+ (xy 84.959027 95.111502)
+ (xy 84.950478 95.110273)
+ (xy 84.773239 95.157764)
+ (xy 84.762947 95.16151)
+ (xy 84.565489 95.253586)
+ (xy 84.555993 95.259069)
+ (xy 84.377533 95.384028)
+ (xy 84.369125 95.391084)
+ (xy 84.215084 95.545125)
+ (xy 84.208028 95.553533)
+ (xy 84.083069 95.731993)
+ (xy 84.077586 95.741489)
+ (xy 83.98551 95.938947)
+ (xy 83.980455 95.952836)
+ (xy 83.938361 96.010007)
+ (xy 83.872039 96.035345)
+ (xy 83.802548 96.020804)
+ (xy 83.749048 95.96547)
+ (xy 83.664719 95.794469)
+ (xy 83.662165 95.78929)
+ (xy 83.535651 95.619867)
+ (xy 83.407237 95.501162)
+ (xy 83.384622 95.480257)
+ (xy 83.38462 95.480255)
+ (xy 83.380381 95.476337)
+ (xy 83.335671 95.448127)
+ (xy 83.206434 95.366584)
+ (xy 83.206433 95.366584)
+ (xy 83.201554 95.363505)
+ (xy 83.00516 95.285152)
+ (xy 82.999503 95.284027)
+ (xy 82.999497 95.284025)
+ (xy 82.803442 95.245028)
+ (xy 82.80344 95.245028)
+ (xy 82.797775 95.243901)
+ (xy 82.792 95.243825)
+ (xy 82.791996 95.243825)
+ (xy 82.685976 95.242437)
+ (xy 82.586346 95.241133)
+ (xy 82.580649 95.242112)
+ (xy 82.580648 95.242112)
+ (xy 82.38365 95.275962)
+ (xy 82.383649 95.275962)
+ (xy 82.377953 95.276941)
+ (xy 82.179575 95.350127)
+ (xy 82.174614 95.353079)
+ (xy 82.174613 95.353079)
+ (xy 82.093766 95.401178)
+ (xy 81.997856 95.458238)
+ (xy 81.838881 95.597655)
+ (xy 81.707976 95.763708)
+ (xy 81.705287 95.768819)
+ (xy 81.705285 95.768822)
+ (xy 81.691792 95.794469)
+ (xy 81.609523 95.950836)
+ (xy 81.54682 96.152773)
+ (xy 81.546141 96.15851)
+ (xy 81.538627 96.221995)
+ (xy 81.510756 96.287292)
+ (xy 81.452008 96.327156)
+ (xy 81.381034 96.32893)
+ (xy 81.320367 96.292051)
+ (xy 81.289269 96.228227)
+ (xy 81.2875 96.207185)
+ (xy 81.2875 95.559782)
+ (xy 81.286544 95.553284)
+ (xy 81.278784 95.500574)
+ (xy 81.278784 95.500573)
+ (xy 81.277358 95.490888)
+ (xy 81.225932 95.386145)
+ (xy 81.14335 95.303707)
+ (xy 81.109769 95.287292)
+ (xy 81.092686 95.278942)
+ (xy 81.038518 95.252464)
+ (xy 81.008027 95.248016)
+ (xy 80.974744 95.24316)
+ (xy 80.97474 95.24316)
+ (xy 80.970218 95.2425)
+ (xy 79.303782 95.2425)
+ (xy 79.299232 95.24317)
+ (xy 79.299229 95.24317)
+ (xy 79.244574 95.251216)
+ (xy 79.244573 95.251216)
+ (xy 79.234888 95.252642)
+ (xy 79.184992 95.27714)
+ (xy 79.139493 95.299478)
+ (xy 79.139491 95.299479)
+ (xy 79.130145 95.304068)
+ (xy 79.122787 95.311438)
+ (xy 79.122788 95.311438)
+ (xy 79.059396 95.374941)
+ (xy 79.047707 95.38665)
+ (xy 79.043134 95.396006)
+ (xy 79.043133 95.396007)
+ (xy 79.039488 95.403464)
+ (xy 78.996464 95.491482)
+ (xy 78.995052 95.501162)
+ (xy 78.987412 95.553533)
+ (xy 78.9865 95.559782)
+ (xy 78.9865 97.226218)
+ (xy 77.0895 97.226218)
+ (xy 77.0895 93.216261)
+ (xy 84.567294 93.216261)
+ (xy 84.57659 93.228276)
+ (xy 84.606189 93.249001)
+ (xy 84.615677 93.254479)
+ (xy 84.797277 93.339159)
+ (xy 84.807571 93.342907)
+ (xy 85.001122 93.394769)
+ (xy 85.011909 93.396671)
+ (xy 85.211525 93.414135)
+ (xy 85.222475 93.414135)
+ (xy 85.422091 93.396671)
+ (xy 85.432878 93.394769)
+ (xy 85.626429 93.342907)
+ (xy 85.636723 93.339159)
+ (xy 85.818323 93.254479)
+ (xy 85.827811 93.249001)
+ (xy 85.858248 93.227689)
+ (xy 85.866623 93.217212)
+ (xy 85.859554 93.203764)
+ (xy 85.229812 92.574022)
+ (xy 85.215868 92.566408)
+ (xy 85.214035 92.566539)
+ (xy 85.20742 92.57079)
+ (xy 84.573724 93.204486)
+ (xy 84.567294 93.216261)
+ (xy 77.0895 93.216261)
+ (xy 77.0895 92.207475)
+ (xy 84.004865 92.207475)
+ (xy 84.022329 92.407091)
+ (xy 84.024231 92.417878)
+ (xy 84.076093 92.611429)
+ (xy 84.079841 92.621723)
+ (xy 84.164521 92.803323)
+ (xy 84.169999 92.812811)
+ (xy 84.191311 92.843248)
+ (xy 84.201788 92.851623)
+ (xy 84.215236 92.844554)
+ (xy 84.844978 92.214812)
+ (xy 84.851356 92.203132)
+ (xy 85.581408 92.203132)
+ (xy 85.581539 92.204965)
+ (xy 85.58579 92.21158)
+ (xy 86.219486 92.845276)
+ (xy 86.231261 92.851706)
+ (xy 86.243276 92.84241)
+ (xy 86.264001 92.812811)
+ (xy 86.269479 92.803323)
+ (xy 86.354159 92.621723)
+ (xy 86.357907 92.611429)
+ (xy 86.409769 92.417878)
+ (xy 86.411671 92.407091)
+ (xy 86.429135 92.207475)
+ (xy 86.429135 92.196525)
+ (xy 86.411671 91.996909)
+ (xy 86.409769 91.986122)
+ (xy 86.357907 91.792571)
+ (xy 86.354159 91.782277)
+ (xy 86.269479 91.600677)
+ (xy 86.264001 91.591189)
+ (xy 86.242689 91.560752)
+ (xy 86.232212 91.552377)
+ (xy 86.218764 91.559446)
+ (xy 85.589022 92.189188)
+ (xy 85.581408 92.203132)
+ (xy 84.851356 92.203132)
+ (xy 84.852592 92.200868)
+ (xy 84.852461 92.199035)
+ (xy 84.84821 92.19242)
+ (xy 84.214514 91.558724)
+ (xy 84.202739 91.552294)
+ (xy 84.190724 91.56159)
+ (xy 84.169999 91.591189)
+ (xy 84.164521 91.600677)
+ (xy 84.079841 91.782277)
+ (xy 84.076093 91.792571)
+ (xy 84.024231 91.986122)
+ (xy 84.022329 91.996909)
+ (xy 84.004865 92.196525)
+ (xy 84.004865 92.207475)
+ (xy 77.0895 92.207475)
+ (xy 77.0895 90.182522)
+ (xy 84.037801 90.182522)
+ (xy 84.076092 90.325423)
+ (xy 84.079842 90.335727)
+ (xy 84.164521 90.517323)
+ (xy 84.169998 90.526811)
+ (xy 84.284925 90.690942)
+ (xy 84.291981 90.69935)
+ (xy 84.43365 90.841019)
+ (xy 84.442058 90.848075)
+ (xy 84.595886 90.955787)
+ (xy 84.640214 91.011244)
+ (xy 84.647523 91.081864)
+ (xy 84.615492 91.145224)
+ (xy 84.595886 91.162213)
+ (xy 84.575752 91.176311)
+ (xy 84.567377 91.186788)
+ (xy 84.574446 91.200236)
+ (xy 85.204188 91.829978)
+ (xy 85.218132 91.837592)
+ (xy 85.219965 91.837461)
+ (xy 85.22658 91.83321)
+ (xy 85.860276 91.199514)
+ (xy 85.866706 91.187739)
+ (xy 85.85741 91.175725)
+ (xy 85.838114 91.162213)
+ (xy 85.793786 91.106756)
+ (xy 85.786477 91.036137)
+ (xy 85.818507 90.972776)
+ (xy 85.838114 90.955787)
+ (xy 85.991942 90.848075)
+ (xy 86.00035 90.841019)
+ (xy 86.142019 90.69935)
+ (xy 86.149075 90.690942)
+ (xy 86.264002 90.526811)
+ (xy 86.269479 90.517323)
+ (xy 86.354158 90.335727)
+ (xy 86.357908 90.325423)
+ (xy 86.394866 90.187497)
+ (xy 86.39453 90.173401)
+ (xy 86.386588 90.17)
+ (xy 84.052561 90.17)
+ (xy 84.03903 90.173973)
+ (xy 84.037801 90.182522)
+ (xy 77.0895 90.182522)
+ (xy 77.0895 89.644503)
+ (xy 84.039134 89.644503)
+ (xy 84.03947 89.658599)
+ (xy 84.047412 89.662)
+ (xy 86.381439 89.662)
+ (xy 86.39497 89.658027)
+ (xy 86.396199 89.649478)
+ (xy 86.357908 89.506577)
+ (xy 86.354158 89.496273)
+ (xy 86.269479 89.314677)
+ (xy 86.264002 89.305189)
+ (xy 86.149075 89.141058)
+ (xy 86.142019 89.13265)
+ (xy 86.00035 88.990981)
+ (xy 85.991942 88.983925)
+ (xy 85.838114 88.876213)
+ (xy 85.793786 88.820756)
+ (xy 85.786477 88.750136)
+ (xy 85.818508 88.686776)
+ (xy 85.838114 88.669787)
+ (xy 85.858248 88.655689)
+ (xy 85.866623 88.645212)
+ (xy 85.859554 88.631764)
+ (xy 85.229812 88.002022)
+ (xy 85.215868 87.994408)
+ (xy 85.214035 87.994539)
+ (xy 85.20742 87.99879)
+ (xy 84.573724 88.632486)
+ (xy 84.567294 88.644261)
+ (xy 84.57659 88.656275)
+ (xy 84.595886 88.669787)
+ (xy 84.640214 88.725244)
+ (xy 84.647523 88.795863)
+ (xy 84.615493 88.859224)
+ (xy 84.595886 88.876213)
+ (xy 84.442058 88.983925)
+ (xy 84.43365 88.990981)
+ (xy 84.291981 89.13265)
+ (xy 84.284925 89.141058)
+ (xy 84.169998 89.305189)
+ (xy 84.164521 89.314677)
+ (xy 84.079842 89.496273)
+ (xy 84.076092 89.506577)
+ (xy 84.039134 89.644503)
+ (xy 77.0895 89.644503)
+ (xy 77.0895 87.635475)
+ (xy 84.004865 87.635475)
+ (xy 84.022329 87.835091)
+ (xy 84.024231 87.845878)
+ (xy 84.076093 88.039429)
+ (xy 84.079841 88.049723)
+ (xy 84.164521 88.231323)
+ (xy 84.169999 88.240811)
+ (xy 84.191311 88.271248)
+ (xy 84.201788 88.279623)
+ (xy 84.215236 88.272554)
+ (xy 84.844978 87.642812)
+ (xy 84.851356 87.631132)
+ (xy 85.581408 87.631132)
+ (xy 85.581539 87.632965)
+ (xy 85.58579 87.63958)
+ (xy 86.219486 88.273276)
+ (xy 86.231261 88.279706)
+ (xy 86.243276 88.27041)
+ (xy 86.264001 88.240811)
+ (xy 86.269479 88.231323)
+ (xy 86.354159 88.049723)
+ (xy 86.357907 88.039429)
+ (xy 86.409769 87.845878)
+ (xy 86.411671 87.835091)
+ (xy 86.429135 87.635475)
+ (xy 86.429135 87.624525)
+ (xy 86.411671 87.424909)
+ (xy 86.409769 87.414122)
+ (xy 86.357907 87.220571)
+ (xy 86.354159 87.210277)
+ (xy 86.269479 87.028677)
+ (xy 86.264001 87.019189)
+ (xy 86.242689 86.988752)
+ (xy 86.232212 86.980377)
+ (xy 86.218764 86.987446)
+ (xy 85.589022 87.617188)
+ (xy 85.581408 87.631132)
+ (xy 84.851356 87.631132)
+ (xy 84.852592 87.628868)
+ (xy 84.852461 87.627035)
+ (xy 84.84821 87.62042)
+ (xy 84.214514 86.986724)
+ (xy 84.202739 86.980294)
+ (xy 84.190724 86.98959)
+ (xy 84.169999 87.019189)
+ (xy 84.164521 87.028677)
+ (xy 84.079841 87.210277)
+ (xy 84.076093 87.220571)
+ (xy 84.024231 87.414122)
+ (xy 84.022329 87.424909)
+ (xy 84.004865 87.624525)
+ (xy 84.004865 87.635475)
+ (xy 77.0895 87.635475)
+ (xy 77.0895 85.610522)
+ (xy 84.037801 85.610522)
+ (xy 84.076092 85.753423)
+ (xy 84.079842 85.763727)
+ (xy 84.164521 85.945323)
+ (xy 84.169998 85.954811)
+ (xy 84.284925 86.118942)
+ (xy 84.291981 86.12735)
+ (xy 84.43365 86.269019)
+ (xy 84.442058 86.276075)
+ (xy 84.595886 86.383787)
+ (xy 84.640214 86.439244)
+ (xy 84.647523 86.509864)
+ (xy 84.615492 86.573224)
+ (xy 84.595886 86.590213)
+ (xy 84.575752 86.604311)
+ (xy 84.567377 86.614788)
+ (xy 84.574446 86.628236)
+ (xy 85.204188 87.257978)
+ (xy 85.218132 87.265592)
+ (xy 85.219965 87.265461)
+ (xy 85.22658 87.26121)
+ (xy 85.860276 86.627514)
+ (xy 85.866706 86.615739)
+ (xy 85.85741 86.603725)
+ (xy 85.838114 86.590213)
+ (xy 85.793786 86.534756)
+ (xy 85.786477 86.464137)
+ (xy 85.818507 86.400776)
+ (xy 85.838114 86.383787)
+ (xy 85.991942 86.276075)
+ (xy 86.00035 86.269019)
+ (xy 86.142019 86.12735)
+ (xy 86.149075 86.118942)
+ (xy 86.264002 85.954811)
+ (xy 86.269479 85.945323)
+ (xy 86.354158 85.763727)
+ (xy 86.357908 85.753423)
+ (xy 86.394866 85.615497)
+ (xy 86.39453 85.601401)
+ (xy 86.386588 85.598)
+ (xy 84.052561 85.598)
+ (xy 84.03903 85.601973)
+ (xy 84.037801 85.610522)
+ (xy 77.0895 85.610522)
+ (xy 77.0895 85.072503)
+ (xy 84.039134 85.072503)
+ (xy 84.03947 85.086599)
+ (xy 84.047412 85.09)
+ (xy 84.944885 85.09)
+ (xy 84.960124 85.085525)
+ (xy 84.961329 85.084135)
+ (xy 84.963 85.076452)
+ (xy 84.963 85.071885)
+ (xy 85.471 85.071885)
+ (xy 85.475475 85.087124)
+ (xy 85.476865 85.088329)
+ (xy 85.484548 85.09)
+ (xy 86.381439 85.09)
+ (xy 86.39497 85.086027)
+ (xy 86.396199 85.077478)
+ (xy 86.357908 84.934577)
+ (xy 86.354158 84.924273)
+ (xy 86.269479 84.742677)
+ (xy 86.264002 84.733189)
+ (xy 86.149075 84.569058)
+ (xy 86.142019 84.56065)
+ (xy 86.00035 84.418981)
+ (xy 85.991942 84.411925)
+ (xy 85.827811 84.296998)
+ (xy 85.818323 84.291521)
+ (xy 85.636727 84.206842)
+ (xy 85.626423 84.203092)
+ (xy 85.488497 84.166134)
+ (xy 85.474401 84.16647)
+ (xy 85.471 84.174412)
+ (xy 85.471 85.071885)
+ (xy 84.963 85.071885)
+ (xy 84.963 84.179561)
+ (xy 84.959027 84.16603)
+ (xy 84.950478 84.164801)
+ (xy 84.807577 84.203092)
+ (xy 84.797273 84.206842)
+ (xy 84.615677 84.291521)
+ (xy 84.606189 84.296998)
+ (xy 84.442058 84.411925)
+ (xy 84.43365 84.418981)
+ (xy 84.291981 84.56065)
+ (xy 84.284925 84.569058)
+ (xy 84.169998 84.733189)
+ (xy 84.164521 84.742677)
+ (xy 84.079842 84.924273)
+ (xy 84.076092 84.934577)
+ (xy 84.039134 85.072503)
+ (xy 77.0895 85.072503)
+ (xy 77.0895 81.122754)
+ (xy 78.981967 81.122754)
+ (xy 78.982345 81.12852)
+ (xy 78.994664 81.31647)
+ (xy 78.995796 81.333749)
+ (xy 78.997217 81.339345)
+ (xy 78.997218 81.33935)
+ (xy 79.044861 81.526942)
+ (xy 79.047845 81.53869)
+ (xy 79.050262 81.543933)
+ (xy 79.096402 81.644018)
+ (xy 79.136369 81.730714)
+ (xy 79.258405 81.903391)
+ (xy 79.409865 82.050937)
+ (xy 79.414661 82.054142)
+ (xy 79.414664 82.054144)
+ (xy 79.545168 82.141344)
+ (xy 79.585677 82.168411)
+ (xy 79.590985 82.170692)
+ (xy 79.590986 82.170692)
+ (xy 79.77465 82.2496)
+ (xy 79.774653 82.249601)
+ (xy 79.779953 82.251878)
+ (xy 79.785582 82.253152)
+ (xy 79.785583 82.253152)
+ (xy 79.98055 82.297269)
+ (xy 79.980553 82.297269)
+ (xy 79.986186 82.298544)
+ (xy 79.991957 82.298771)
+ (xy 79.991959 82.298771)
+ (xy 80.053989 82.301208)
+ (xy 80.19747 82.306846)
+ (xy 80.203179 82.306018)
+ (xy 80.203183 82.306018)
+ (xy 80.401015 82.277333)
+ (xy 80.401019 82.277332)
+ (xy 80.40673 82.276504)
+ (xy 80.485987 82.2496)
+ (xy 80.601483 82.210395)
+ (xy 80.601488 82.210393)
+ (xy 80.606955 82.208537)
+ (xy 80.614126 82.204521)
+ (xy 80.786395 82.108046)
+ (xy 80.786399 82.108043)
+ (xy 80.791442 82.105219)
+ (xy 80.954012 81.970012)
+ (xy 81.089219 81.807442)
+ (xy 81.092043 81.802399)
+ (xy 81.092046 81.802395)
+ (xy 81.189713 81.627998)
+ (xy 81.189714 81.627996)
+ (xy 81.192537 81.622955)
+ (xy 81.202239 81.594375)
+ (xy 81.243074 81.5363)
+ (xy 81.308827 81.509521)
+ (xy 81.378619 81.522542)
+ (xy 81.430293 81.571228)
+ (xy 81.439952 81.591783)
+ (xy 81.445509 81.60705)
+ (xy 81.537586 81.804511)
+ (xy 81.543069 81.814007)
+ (xy 81.668028 81.992467)
+ (xy 81.675084 82.000875)
+ (xy 81.829125 82.154916)
+ (xy 81.837533 82.161972)
+ (xy 82.015993 82.286931)
+ (xy 82.025489 82.292414)
+ (xy 82.222947 82.38449)
+ (xy 82.233239 82.388236)
+ (xy 82.405503 82.434394)
+ (xy 82.419599 82.434058)
+ (xy 82.423 82.426116)
+ (xy 82.423 82.420967)
+ (xy 82.931 82.420967)
+ (xy 82.934973 82.434498)
+ (xy 82.943522 82.435727)
+ (xy 83.120761 82.388236)
+ (xy 83.131053 82.38449)
+ (xy 83.328511 82.292414)
+ (xy 83.338007 82.286931)
+ (xy 83.516467 82.161972)
+ (xy 83.524875 82.154916)
+ (xy 83.678916 82.000875)
+ (xy 83.685972 81.992467)
+ (xy 83.810931 81.814007)
+ (xy 83.816414 81.804511)
+ (xy 83.90849 81.607053)
+ (xy 83.914119 81.591587)
+ (xy 83.916329 81.592391)
+ (xy 83.948051 81.540324)
+ (xy 84.011904 81.509288)
+ (xy 84.082401 81.517701)
+ (xy 84.137157 81.562892)
+ (xy 84.147252 81.580788)
+ (xy 84.201641 81.698767)
+ (xy 84.216369 81.730714)
+ (xy 84.338405 81.903391)
+ (xy 84.489865 82.050937)
+ (xy 84.494661 82.054142)
+ (xy 84.494664 82.054144)
+ (xy 84.625168 82.141344)
+ (xy 84.665677 82.168411)
+ (xy 84.670985 82.170692)
+ (xy 84.670986 82.170692)
+ (xy 84.85465 82.2496)
+ (xy 84.854653 82.249601)
+ (xy 84.859953 82.251878)
+ (xy 84.865582 82.253152)
+ (xy 84.865583 82.253152)
+ (xy 85.06055 82.297269)
+ (xy 85.060553 82.297269)
+ (xy 85.066186 82.298544)
+ (xy 85.071957 82.298771)
+ (xy 85.071959 82.298771)
+ (xy 85.133989 82.301208)
+ (xy 85.27747 82.306846)
+ (xy 85.283179 82.306018)
+ (xy 85.283183 82.306018)
+ (xy 85.481015 82.277333)
+ (xy 85.481019 82.277332)
+ (xy 85.48673 82.276504)
+ (xy 85.565987 82.2496)
+ (xy 85.681483 82.210395)
+ (xy 85.681488 82.210393)
+ (xy 85.686955 82.208537)
+ (xy 85.694126 82.204521)
+ (xy 85.866395 82.108046)
+ (xy 85.866399 82.108043)
+ (xy 85.871442 82.105219)
+ (xy 86.034012 81.970012)
+ (xy 86.169219 81.807442)
+ (xy 86.172043 81.802399)
+ (xy 86.172046 81.802395)
+ (xy 86.269713 81.627998)
+ (xy 86.269714 81.627996)
+ (xy 86.272537 81.622955)
+ (xy 86.274393 81.617488)
+ (xy 86.274395 81.617483)
+ (xy 86.338647 81.4282)
+ (xy 86.340504 81.42273)
+ (xy 86.341333 81.417015)
+ (xy 86.36209 81.27386)
+ (xy 86.39166 81.209315)
+ (xy 86.451432 81.171003)
+ (xy 86.522429 81.171087)
+ (xy 86.582109 81.209542)
+ (xy 86.611525 81.274158)
+ (xy 86.612515 81.283695)
+ (xy 86.615796 81.333749)
+ (xy 86.617217 81.339345)
+ (xy 86.617218 81.33935)
+ (xy 86.664861 81.526942)
+ (xy 86.667845 81.53869)
+ (xy 86.670262 81.543933)
+ (xy 86.716402 81.644018)
+ (xy 86.756369 81.730714)
+ (xy 86.878405 81.903391)
+ (xy 87.029865 82.050937)
+ (xy 87.034661 82.054142)
+ (xy 87.034664 82.054144)
+ (xy 87.165168 82.141344)
+ (xy 87.205677 82.168411)
+ (xy 87.210985 82.170692)
+ (xy 87.210986 82.170692)
+ (xy 87.39465 82.2496)
+ (xy 87.394653 82.249601)
+ (xy 87.399953 82.251878)
+ (xy 87.405582 82.253152)
+ (xy 87.405583 82.253152)
+ (xy 87.60055 82.297269)
+ (xy 87.600553 82.297269)
+ (xy 87.606186 82.298544)
+ (xy 87.611957 82.298771)
+ (xy 87.611959 82.298771)
+ (xy 87.673989 82.301208)
+ (xy 87.81747 82.306846)
+ (xy 87.823179 82.306018)
+ (xy 87.823183 82.306018)
+ (xy 88.021015 82.277333)
+ (xy 88.021019 82.277332)
+ (xy 88.02673 82.276504)
+ (xy 88.105987 82.2496)
+ (xy 88.221483 82.210395)
+ (xy 88.221488 82.210393)
+ (xy 88.226955 82.208537)
+ (xy 88.234126 82.204521)
+ (xy 88.406395 82.108046)
+ (xy 88.406399 82.108043)
+ (xy 88.411442 82.105219)
+ (xy 88.574012 81.970012)
+ (xy 88.709219 81.807442)
+ (xy 88.712043 81.802399)
+ (xy 88.712046 81.802395)
+ (xy 88.809713 81.627998)
+ (xy 88.809714 81.627996)
+ (xy 88.812537 81.622955)
+ (xy 88.814393 81.617488)
+ (xy 88.814395 81.617483)
+ (xy 88.878647 81.4282)
+ (xy 88.880504 81.42273)
+ (xy 88.881333 81.417015)
+ (xy 88.90209 81.27386)
+ (xy 88.93166 81.209315)
+ (xy 88.991432 81.171003)
+ (xy 89.062429 81.171087)
+ (xy 89.122109 81.209542)
+ (xy 89.151525 81.274158)
+ (xy 89.152515 81.283695)
+ (xy 89.155796 81.333749)
+ (xy 89.157217 81.339345)
+ (xy 89.157218 81.33935)
+ (xy 89.204861 81.526942)
+ (xy 89.207845 81.53869)
+ (xy 89.210262 81.543933)
+ (xy 89.256402 81.644018)
+ (xy 89.296369 81.730714)
+ (xy 89.418405 81.903391)
+ (xy 89.569865 82.050937)
+ (xy 89.574661 82.054142)
+ (xy 89.574664 82.054144)
+ (xy 89.705168 82.141344)
+ (xy 89.745677 82.168411)
+ (xy 89.750985 82.170692)
+ (xy 89.750986 82.170692)
+ (xy 89.93465 82.2496)
+ (xy 89.934653 82.249601)
+ (xy 89.939953 82.251878)
+ (xy 89.945582 82.253152)
+ (xy 89.945583 82.253152)
+ (xy 90.14055 82.297269)
+ (xy 90.140553 82.297269)
+ (xy 90.146186 82.298544)
+ (xy 90.151957 82.298771)
+ (xy 90.151959 82.298771)
+ (xy 90.213989 82.301208)
+ (xy 90.35747 82.306846)
+ (xy 90.363179 82.306018)
+ (xy 90.363183 82.306018)
+ (xy 90.561015 82.277333)
+ (xy 90.561019 82.277332)
+ (xy 90.56673 82.276504)
+ (xy 90.645987 82.2496)
+ (xy 90.761483 82.210395)
+ (xy 90.761488 82.210393)
+ (xy 90.766955 82.208537)
+ (xy 90.774126 82.204521)
+ (xy 90.946395 82.108046)
+ (xy 90.946399 82.108043)
+ (xy 90.951442 82.105219)
+ (xy 91.114012 81.970012)
+ (xy 91.249219 81.807442)
+ (xy 91.252043 81.802399)
+ (xy 91.252046 81.802395)
+ (xy 91.349713 81.627998)
+ (xy 91.349714 81.627996)
+ (xy 91.352537 81.622955)
+ (xy 91.354393 81.617488)
+ (xy 91.354395 81.617483)
+ (xy 91.418647 81.4282)
+ (xy 91.420504 81.42273)
+ (xy 91.421333 81.417015)
+ (xy 91.44209 81.27386)
+ (xy 91.47166 81.209315)
+ (xy 91.531432 81.171003)
+ (xy 91.602429 81.171087)
+ (xy 91.662109 81.209542)
+ (xy 91.691525 81.274158)
+ (xy 91.692515 81.283695)
+ (xy 91.695796 81.333749)
+ (xy 91.697217 81.339345)
+ (xy 91.697218 81.33935)
+ (xy 91.744861 81.526942)
+ (xy 91.747845 81.53869)
+ (xy 91.750262 81.543933)
+ (xy 91.796402 81.644018)
+ (xy 91.836369 81.730714)
+ (xy 91.958405 81.903391)
+ (xy 92.109865 82.050937)
+ (xy 92.114661 82.054142)
+ (xy 92.114664 82.054144)
+ (xy 92.245168 82.141344)
+ (xy 92.285677 82.168411)
+ (xy 92.290985 82.170692)
+ (xy 92.290986 82.170692)
+ (xy 92.47465 82.2496)
+ (xy 92.474653 82.249601)
+ (xy 92.479953 82.251878)
+ (xy 92.485582 82.253152)
+ (xy 92.485583 82.253152)
+ (xy 92.68055 82.297269)
+ (xy 92.680553 82.297269)
+ (xy 92.686186 82.298544)
+ (xy 92.691957 82.298771)
+ (xy 92.691959 82.298771)
+ (xy 92.753989 82.301208)
+ (xy 92.89747 82.306846)
+ (xy 92.903179 82.306018)
+ (xy 92.903183 82.306018)
+ (xy 93.101015 82.277333)
+ (xy 93.101019 82.277332)
+ (xy 93.10673 82.276504)
+ (xy 93.185987 82.2496)
+ (xy 93.301483 82.210395)
+ (xy 93.301488 82.210393)
+ (xy 93.306955 82.208537)
+ (xy 93.314126 82.204521)
+ (xy 93.486395 82.108046)
+ (xy 93.486399 82.108043)
+ (xy 93.491442 82.105219)
+ (xy 93.654012 81.970012)
+ (xy 93.789219 81.807442)
+ (xy 93.792043 81.802399)
+ (xy 93.792046 81.802395)
+ (xy 93.889713 81.627998)
+ (xy 93.889714 81.627996)
+ (xy 93.892537 81.622955)
+ (xy 93.894393 81.617488)
+ (xy 93.894395 81.617483)
+ (xy 93.958647 81.4282)
+ (xy 93.960504 81.42273)
+ (xy 93.961333 81.417015)
+ (xy 93.98209 81.27386)
+ (xy 94.01166 81.209315)
+ (xy 94.071432 81.171003)
+ (xy 94.142429 81.171087)
+ (xy 94.202109 81.209542)
+ (xy 94.231525 81.274158)
+ (xy 94.232515 81.283695)
+ (xy 94.235796 81.333749)
+ (xy 94.237217 81.339345)
+ (xy 94.237218 81.33935)
+ (xy 94.284861 81.526942)
+ (xy 94.287845 81.53869)
+ (xy 94.290262 81.543933)
+ (xy 94.336402 81.644018)
+ (xy 94.376369 81.730714)
+ (xy 94.498405 81.903391)
+ (xy 94.649865 82.050937)
+ (xy 94.693409 82.080032)
+ (xy 94.795502 82.148249)
+ (xy 94.84103 82.202726)
+ (xy 94.8515 82.253014)
+ (xy 94.8515 83.804141)
+ (xy 94.831498 83.872262)
+ (xy 94.814595 83.893236)
+ (xy 93.926236 84.781595)
+ (xy 93.863924 84.815621)
+ (xy 93.837141 84.8185)
+ (xy 93.822025 84.8185)
+ (xy 93.753904 84.798498)
+ (xy 93.71793 84.763069)
+ (xy 93.716218 84.759849)
+ (xy 93.710659 84.753033)
+ (xy 93.589906 84.604975)
+ (xy 93.589903 84.604972)
+ (xy 93.586011 84.6002)
+ (xy 93.548367 84.569058)
+ (xy 93.432025 84.472811)
+ (xy 93.432021 84.472809)
+ (xy 93.427275 84.468882)
+ (xy 93.246055 84.370897)
+ (xy 93.049254 84.309977)
+ (xy 93.043129 84.309333)
+ (xy 93.043128 84.309333)
+ (xy 92.850498 84.289087)
+ (xy 92.850496 84.289087)
+ (xy 92.844369 84.288443)
+ (xy 92.783724 84.293962)
+ (xy 92.645342 84.306555)
+ (xy 92.645339 84.306556)
+ (xy 92.639203 84.307114)
+ (xy 92.441572 84.36528)
+ (xy 92.259002 84.460726)
+ (xy 92.254201 84.464586)
+ (xy 92.254198 84.464588)
+ (xy 92.103254 84.58595)
+ (xy 92.098447 84.589815)
+ (xy 91.966024 84.74763)
+ (xy 91.963056 84.753028)
+ (xy 91.963053 84.753033)
+ (xy 91.927063 84.8185)
+ (xy 91.866776 84.928162)
+ (xy 91.804484 85.124532)
+ (xy 91.803798 85.130649)
+ (xy 91.803797 85.130653)
+ (xy 91.795324 85.206197)
+ (xy 91.78152 85.329262)
+ (xy 91.782036 85.335406)
+ (xy 91.797998 85.525487)
+ (xy 91.798759 85.534553)
+ (xy 91.800458 85.540478)
+ (xy 91.84979 85.712518)
+ (xy 91.855544 85.732586)
+ (xy 91.858359 85.738063)
+ (xy 91.85836 85.738066)
+ (xy 91.946897 85.910341)
+ (xy 91.949712 85.915818)
+ (xy 92.077677 86.07727)
+ (xy 92.08237 86.081264)
+ (xy 92.082371 86.081265)
+ (xy 92.145503 86.134994)
+ (xy 92.234564 86.210791)
+ (xy 92.239942 86.213797)
+ (xy 92.239944 86.213798)
+ (xy 92.278342 86.235258)
+ (xy 92.414398 86.311297)
+ (xy 92.466251 86.328145)
+ (xy 92.589231 86.368104)
+ (xy 92.647837 86.408178)
+ (xy 92.675474 86.473574)
+ (xy 92.663367 86.543531)
+ (xy 92.615361 86.595837)
+ (xy 92.585872 86.60881)
+ (xy 92.441572 86.65128)
+ (xy 92.259002 86.746726)
+ (xy 92.254201 86.750586)
+ (xy 92.254198 86.750588)
+ (xy 92.185802 86.80558)
+ (xy 92.098447 86.875815)
+ (xy 91.966024 87.03363)
+ (xy 91.963056 87.039028)
+ (xy 91.963053 87.039033)
+ (xy 91.869743 87.208765)
+ (xy 91.866776 87.214162)
+ (xy 91.804484 87.410532)
+ (xy 91.803798 87.416649)
+ (xy 91.803797 87.416653)
+ (xy 91.784781 87.586187)
+ (xy 91.78152 87.615262)
+ (xy 91.78563 87.664207)
+ (xy 91.797189 87.801853)
+ (xy 91.798759 87.820553)
+ (xy 91.800458 87.826478)
+ (xy 91.849868 87.99879)
+ (xy 91.855544 88.018586)
+ (xy 91.858359 88.024063)
+ (xy 91.85836 88.024066)
+ (xy 91.946897 88.196341)
+ (xy 91.949712 88.201818)
+ (xy 92.077677 88.36327)
+ (xy 92.08237 88.367264)
+ (xy 92.082371 88.367265)
+ (xy 92.229445 88.492434)
+ (xy 92.234564 88.496791)
+ (xy 92.414398 88.597297)
+ (xy 92.520476 88.631764)
+ (xy 92.589231 88.654104)
+ (xy 92.647837 88.694178)
+ (xy 92.675474 88.759574)
+ (xy 92.663367 88.829531)
+ (xy 92.615361 88.881837)
+ (xy 92.585872 88.89481)
+ (xy 92.441572 88.93728)
+ (xy 92.259002 89.032726)
+ (xy 92.254201 89.036586)
+ (xy 92.254198 89.036588)
+ (xy 92.103254 89.15795)
+ (xy 92.098447 89.161815)
+ (xy 91.966024 89.31963)
+ (xy 91.963056 89.325028)
+ (xy 91.963053 89.325033)
+ (xy 91.874813 89.485543)
+ (xy 91.866776 89.500162)
+ (xy 91.804484 89.696532)
+ (xy 91.803798 89.702649)
+ (xy 91.803797 89.702653)
+ (xy 91.788164 89.842025)
+ (xy 91.78152 89.901262)
+ (xy 91.798759 90.106553)
+ (xy 91.800458 90.112478)
+ (xy 91.850647 90.287507)
+ (xy 91.855544 90.304586)
+ (xy 91.858359 90.310063)
+ (xy 91.85836 90.310066)
+ (xy 91.880152 90.352469)
+ (xy 91.949712 90.487818)
+ (xy 92.077677 90.64927)
+ (xy 92.08237 90.653264)
+ (xy 92.082371 90.653265)
+ (xy 92.184802 90.74044)
+ (xy 92.234564 90.782791)
+ (xy 92.239942 90.785797)
+ (xy 92.239944 90.785798)
+ (xy 92.267567 90.801236)
+ (xy 92.414398 90.883297)
+ (xy 92.466251 90.900145)
+ (xy 92.589231 90.940104)
+ (xy 92.647837 90.980178)
+ (xy 92.675474 91.045574)
+ (xy 92.663367 91.115531)
+ (xy 92.615361 91.167837)
+ (xy 92.585872 91.18081)
+ (xy 92.441572 91.22328)
+ (xy 92.436107 91.226137)
+ (xy 92.434313 91.227075)
+ (xy 92.259002 91.318726)
+ (xy 92.254201 91.322586)
+ (xy 92.254198 91.322588)
+ (xy 92.131854 91.420955)
+ (xy 92.098447 91.447815)
+ (xy 91.966024 91.60563)
+ (xy 91.963056 91.611028)
+ (xy 91.963053 91.611033)
+ (xy 91.874813 91.771543)
+ (xy 91.866776 91.786162)
+ (xy 91.804484 91.982532)
+ (xy 91.803798 91.988649)
+ (xy 91.803797 91.988653)
+ (xy 91.785136 92.155026)
+ (xy 91.78152 92.187262)
+ (xy 91.78563 92.236207)
+ (xy 91.794861 92.346128)
+ (xy 91.798759 92.392553)
+ (xy 91.800458 92.398478)
+ (xy 91.849868 92.57079)
+ (xy 91.855544 92.590586)
+ (xy 91.858359 92.596063)
+ (xy 91.85836 92.596066)
+ (xy 91.922922 92.72169)
+ (xy 91.949712 92.773818)
+ (xy 92.077677 92.93527)
+ (xy 92.08237 92.939264)
+ (xy 92.082371 92.939265)
+ (xy 92.223483 93.05936)
+ (xy 92.234564 93.068791)
+ (xy 92.239942 93.071797)
+ (xy 92.239944 93.071798)
+ (xy 92.264148 93.085325)
+ (xy 92.414398 93.169297)
+ (xy 92.479777 93.19054)
+ (xy 92.604471 93.231056)
+ (xy 92.604475 93.231057)
+ (xy 92.610329 93.232959)
+ (xy 92.814894 93.257351)
+ (xy 92.821029 93.256879)
+ (xy 92.821031 93.256879)
+ (xy 92.877039 93.252569)
+ (xy 93.0203 93.241546)
+ (xy 93.02623 93.23989)
+ (xy 93.026232 93.23989)
+ (xy 93.179069 93.197217)
+ (xy 93.218725 93.186145)
+ (xy 93.224214 93.183372)
+ (xy 93.22422 93.18337)
+ (xy 93.397116 93.096033)
+ (xy 93.40261 93.093258)
+ (xy 93.4114 93.086391)
+ (xy 93.514832 93.005581)
+ (xy 93.564951 92.966424)
+ (xy 93.592782 92.934182)
+ (xy 93.69554 92.815134)
+ (xy 93.69554 92.815133)
+ (xy 93.699564 92.810472)
+ (xy 93.710477 92.791262)
+ (xy 93.761514 92.741913)
+ (xy 93.820032 92.7275)
+ (xy 93.837141 92.7275)
+ (xy 93.905262 92.747502)
+ (xy 93.926236 92.764405)
+ (xy 94.814595 93.652764)
+ (xy 94.848621 93.715076)
+ (xy 94.8515 93.741859)
+ (xy 94.8515 95.295179)
+ (xy 94.831498 95.3633)
+ (xy 94.789923 95.403464)
+ (xy 94.714851 95.448127)
+ (xy 94.697856 95.458238)
+ (xy 94.538881 95.597655)
+ (xy 94.407976 95.763708)
+ (xy 94.405287 95.768819)
+ (xy 94.405285 95.768822)
+ (xy 94.391792 95.794469)
+ (xy 94.309523 95.950836)
+ (xy 94.24682 96.152773)
+ (xy 94.246141 96.15851)
+ (xy 94.232088 96.277239)
+ (xy 94.204217 96.342537)
+ (xy 94.145469 96.382401)
+ (xy 94.074494 96.384174)
+ (xy 94.013828 96.347295)
+ (xy 93.98273 96.283471)
+ (xy 93.98149 96.273958)
+ (xy 93.980194 96.259846)
+ (xy 93.973081 96.18244)
+ (xy 93.960359 96.137329)
+ (xy 93.944894 96.082496)
+ (xy 93.915686 95.978931)
+ (xy 93.908612 95.964585)
+ (xy 93.824719 95.794469)
+ (xy 93.822165 95.78929)
+ (xy 93.695651 95.619867)
+ (xy 93.567237 95.501162)
+ (xy 93.544622 95.480257)
+ (xy 93.54462 95.480255)
+ (xy 93.540381 95.476337)
+ (xy 93.495671 95.448127)
+ (xy 93.366434 95.366584)
+ (xy 93.366433 95.366584)
+ (xy 93.361554 95.363505)
+ (xy 93.16516 95.285152)
+ (xy 93.159503 95.284027)
+ (xy 93.159497 95.284025)
+ (xy 92.963442 95.245028)
+ (xy 92.96344 95.245028)
+ (xy 92.957775 95.243901)
+ (xy 92.952 95.243825)
+ (xy 92.951996 95.243825)
+ (xy 92.845976 95.242437)
+ (xy 92.746346 95.241133)
+ (xy 92.740649 95.242112)
+ (xy 92.740648 95.242112)
+ (xy 92.54365 95.275962)
+ (xy 92.543649 95.275962)
+ (xy 92.537953 95.276941)
+ (xy 92.339575 95.350127)
+ (xy 92.334614 95.353079)
+ (xy 92.334613 95.353079)
+ (xy 92.253766 95.401178)
+ (xy 92.157856 95.458238)
+ (xy 91.998881 95.597655)
+ (xy 91.867976 95.763708)
+ (xy 91.865287 95.768819)
+ (xy 91.865285 95.768822)
+ (xy 91.851792 95.794469)
+ (xy 91.769523 95.950836)
+ (xy 91.70682 96.152773)
+ (xy 91.706141 96.15851)
+ (xy 91.692088 96.277239)
+ (xy 91.664217 96.342537)
+ (xy 91.605469 96.382401)
+ (xy 91.534494 96.384174)
+ (xy 91.473828 96.347295)
+ (xy 91.44273 96.283471)
+ (xy 91.44149 96.273958)
+ (xy 91.440194 96.259846)
+ (xy 91.433081 96.18244)
+ (xy 91.420359 96.137329)
+ (xy 91.404894 96.082496)
+ (xy 91.375686 95.978931)
+ (xy 91.368612 95.964585)
+ (xy 91.284719 95.794469)
+ (xy 91.282165 95.78929)
+ (xy 91.155651 95.619867)
+ (xy 91.027237 95.501162)
+ (xy 91.004622 95.480257)
+ (xy 91.00462 95.480255)
+ (xy 91.000381 95.476337)
+ (xy 90.955671 95.448127)
+ (xy 90.826434 95.366584)
+ (xy 90.826433 95.366584)
+ (xy 90.821554 95.363505)
+ (xy 90.62516 95.285152)
+ (xy 90.619503 95.284027)
+ (xy 90.619497 95.284025)
+ (xy 90.423442 95.245028)
+ (xy 90.42344 95.245028)
+ (xy 90.417775 95.243901)
+ (xy 90.412 95.243825)
+ (xy 90.411996 95.243825)
+ (xy 90.305976 95.242437)
+ (xy 90.206346 95.241133)
+ (xy 90.200649 95.242112)
+ (xy 90.200648 95.242112)
+ (xy 90.00365 95.275962)
+ (xy 90.003649 95.275962)
+ (xy 89.997953 95.276941)
+ (xy 89.799575 95.350127)
+ (xy 89.794614 95.353079)
+ (xy 89.794613 95.353079)
+ (xy 89.713766 95.401178)
+ (xy 89.617856 95.458238)
+ (xy 89.458881 95.597655)
+ (xy 89.327976 95.763708)
+ (xy 89.325287 95.768819)
+ (xy 89.325285 95.768822)
+ (xy 89.232211 95.945726)
+ (xy 89.232209 95.945731)
+ (xy 89.229523 95.950836)
+ (xy 89.227811 95.956349)
+ (xy 89.227788 95.956405)
+ (xy 89.18324 96.011686)
+ (xy 89.115876 96.034106)
+ (xy 89.047085 96.016547)
+ (xy 88.998707 95.964585)
+ (xy 88.992979 95.95128)
+ (xy 88.988491 95.93895)
+ (xy 88.896414 95.741489)
+ (xy 88.890931 95.731993)
+ (xy 88.765972 95.553533)
+ (xy 88.758916 95.545125)
+ (xy 88.604875 95.391084)
+ (xy 88.596467 95.384028)
+ (xy 88.418007 95.259069)
+ (xy 88.408511 95.253586)
+ (xy 88.211053 95.16151)
+ (xy 88.200761 95.157764)
+ (xy 88.028497 95.111606)
+ (xy 88.014401 95.111942)
+ (xy 88.011 95.119884)
+ (xy 88.011 97.660967)
+ (xy 88.014973 97.674498)
+ (xy 88.023522 97.675727)
+ (xy 88.200761 97.628236)
+ (xy 88.211053 97.62449)
+ (xy 88.408511 97.532414)
+ (xy 88.418007 97.526931)
+ (xy 88.596467 97.401972)
+ (xy 88.604875 97.394916)
+ (xy 88.758916 97.240875)
+ (xy 88.765972 97.232467)
+ (xy 88.890931 97.054007)
+ (xy 88.896414 97.044511)
+ (xy 88.98849 96.847053)
+ (xy 88.994119 96.831587)
+ (xy 88.996329 96.832391)
+ (xy 89.028051 96.780324)
+ (xy 89.091904 96.749288)
+ (xy 89.162401 96.757701)
+ (xy 89.217157 96.802892)
+ (xy 89.227252 96.820788)
+ (xy 89.280648 96.936613)
+ (xy 89.296369 96.970714)
+ (xy 89.418405 97.143391)
+ (xy 89.459795 97.183711)
+ (xy 89.545973 97.267662)
+ (xy 89.569865 97.290937)
+ (xy 89.574661 97.294142)
+ (xy 89.574664 97.294144)
+ (xy 89.710505 97.38491)
+ (xy 89.745677 97.408411)
+ (xy 89.750985 97.410692)
+ (xy 89.750986 97.410692)
+ (xy 89.93465 97.4896)
+ (xy 89.934653 97.489601)
+ (xy 89.939953 97.491878)
+ (xy 89.945582 97.493152)
+ (xy 89.945583 97.493152)
+ (xy 90.14055 97.537269)
+ (xy 90.140553 97.537269)
+ (xy 90.146186 97.538544)
+ (xy 90.151957 97.538771)
+ (xy 90.151959 97.538771)
+ (xy 90.213989 97.541208)
+ (xy 90.35747 97.546846)
+ (xy 90.363179 97.546018)
+ (xy 90.363183 97.546018)
+ (xy 90.561015 97.517333)
+ (xy 90.561019 97.517332)
+ (xy 90.56673 97.516504)
+ (xy 90.654038 97.486867)
+ (xy 90.761483 97.450395)
+ (xy 90.761488 97.450393)
+ (xy 90.766955 97.448537)
+ (xy 90.776451 97.443219)
+ (xy 90.946395 97.348046)
+ (xy 90.946399 97.348043)
+ (xy 90.951442 97.345219)
+ (xy 91.114012 97.210012)
+ (xy 91.249219 97.047442)
+ (xy 91.252043 97.042399)
+ (xy 91.252046 97.042395)
+ (xy 91.349713 96.867998)
+ (xy 91.349714 96.867996)
+ (xy 91.352537 96.862955)
+ (xy 91.354393 96.857488)
+ (xy 91.354395 96.857483)
+ (xy 91.418647 96.6682)
+ (xy 91.420504 96.66273)
+ (xy 91.421333 96.657015)
+ (xy 91.44209 96.51386)
+ (xy 91.47166 96.449315)
+ (xy 91.531432 96.411003)
+ (xy 91.602429 96.411087)
+ (xy 91.662109 96.449542)
+ (xy 91.691525 96.514158)
+ (xy 91.692515 96.523695)
+ (xy 91.695796 96.573749)
+ (xy 91.697217 96.579345)
+ (xy 91.697218 96.57935)
+ (xy 91.733989 96.724133)
+ (xy 91.747845 96.77869)
+ (xy 91.750262 96.783933)
+ (xy 91.820648 96.936613)
+ (xy 91.836369 96.970714)
+ (xy 91.958405 97.143391)
+ (xy 91.999795 97.183711)
+ (xy 92.085973 97.267662)
+ (xy 92.109865 97.290937)
+ (xy 92.114661 97.294142)
+ (xy 92.114664 97.294144)
+ (xy 92.250505 97.38491)
+ (xy 92.285677 97.408411)
+ (xy 92.290985 97.410692)
+ (xy 92.290986 97.410692)
+ (xy 92.47465 97.4896)
+ (xy 92.474653 97.489601)
+ (xy 92.479953 97.491878)
+ (xy 92.485582 97.493152)
+ (xy 92.485583 97.493152)
+ (xy 92.68055 97.537269)
+ (xy 92.680553 97.537269)
+ (xy 92.686186 97.538544)
+ (xy 92.691957 97.538771)
+ (xy 92.691959 97.538771)
+ (xy 92.753989 97.541208)
+ (xy 92.89747 97.546846)
+ (xy 92.903179 97.546018)
+ (xy 92.903183 97.546018)
+ (xy 93.101015 97.517333)
+ (xy 93.101019 97.517332)
+ (xy 93.10673 97.516504)
+ (xy 93.194038 97.486867)
+ (xy 93.301483 97.450395)
+ (xy 93.301488 97.450393)
+ (xy 93.306955 97.448537)
+ (xy 93.316451 97.443219)
+ (xy 93.486395 97.348046)
+ (xy 93.486399 97.348043)
+ (xy 93.491442 97.345219)
+ (xy 93.654012 97.210012)
+ (xy 93.789219 97.047442)
+ (xy 93.792043 97.042399)
+ (xy 93.792046 97.042395)
+ (xy 93.889713 96.867998)
+ (xy 93.889714 96.867996)
+ (xy 93.892537 96.862955)
+ (xy 93.894393 96.857488)
+ (xy 93.894395 96.857483)
+ (xy 93.958647 96.6682)
+ (xy 93.960504 96.66273)
+ (xy 93.961333 96.657015)
+ (xy 93.98209 96.51386)
+ (xy 94.01166 96.449315)
+ (xy 94.071432 96.411003)
+ (xy 94.142429 96.411087)
+ (xy 94.202109 96.449542)
+ (xy 94.231525 96.514158)
+ (xy 94.232515 96.523695)
+ (xy 94.235796 96.573749)
+ (xy 94.237217 96.579345)
+ (xy 94.237218 96.57935)
+ (xy 94.273989 96.724133)
+ (xy 94.287845 96.77869)
+ (xy 94.290262 96.783933)
+ (xy 94.360648 96.936613)
+ (xy 94.376369 96.970714)
+ (xy 94.498405 97.143391)
+ (xy 94.539795 97.183711)
+ (xy 94.625973 97.267662)
+ (xy 94.649865 97.290937)
+ (xy 94.654661 97.294142)
+ (xy 94.654664 97.294144)
+ (xy 94.790505 97.38491)
+ (xy 94.825677 97.408411)
+ (xy 94.830985 97.410692)
+ (xy 94.830986 97.410692)
+ (xy 95.01465 97.4896)
+ (xy 95.014653 97.489601)
+ (xy 95.019953 97.491878)
+ (xy 95.025582 97.493152)
+ (xy 95.025583 97.493152)
+ (xy 95.22055 97.537269)
+ (xy 95.220553 97.537269)
+ (xy 95.226186 97.538544)
+ (xy 95.231957 97.538771)
+ (xy 95.231959 97.538771)
+ (xy 95.293989 97.541208)
+ (xy 95.43747 97.546846)
+ (xy 95.443179 97.546018)
+ (xy 95.443183 97.546018)
+ (xy 95.641015 97.517333)
+ (xy 95.641019 97.517332)
+ (xy 95.64673 97.516504)
+ (xy 95.734038 97.486867)
+ (xy 95.841483 97.450395)
+ (xy 95.841488 97.450393)
+ (xy 95.846955 97.448537)
+ (xy 95.856451 97.443219)
+ (xy 96.026395 97.348046)
+ (xy 96.026399 97.348043)
+ (xy 96.031442 97.345219)
+ (xy 96.194012 97.210012)
+ (xy 96.329219 97.047442)
+ (xy 96.332043 97.042399)
+ (xy 96.332046 97.042395)
+ (xy 96.429713 96.867998)
+ (xy 96.429714 96.867996)
+ (xy 96.432537 96.862955)
+ (xy 96.434393 96.857488)
+ (xy 96.434395 96.857483)
+ (xy 96.498647 96.6682)
+ (xy 96.500504 96.66273)
+ (xy 96.501333 96.657015)
+ (xy 96.52209 96.51386)
+ (xy 96.55166 96.449315)
+ (xy 96.611432 96.411003)
+ (xy 96.682429 96.411087)
+ (xy 96.742109 96.449542)
+ (xy 96.771525 96.514158)
+ (xy 96.772515 96.523695)
+ (xy 96.775796 96.573749)
+ (xy 96.777217 96.579345)
+ (xy 96.777218 96.57935)
+ (xy 96.813989 96.724133)
+ (xy 96.827845 96.77869)
+ (xy 96.830262 96.783933)
+ (xy 96.900648 96.936613)
+ (xy 96.916369 96.970714)
+ (xy 97.038405 97.143391)
+ (xy 97.079795 97.183711)
+ (xy 97.165973 97.267662)
+ (xy 97.189865 97.290937)
+ (xy 97.194661 97.294142)
+ (xy 97.194664 97.294144)
+ (xy 97.330505 97.38491)
+ (xy 97.365677 97.408411)
+ (xy 97.370985 97.410692)
+ (xy 97.370986 97.410692)
+ (xy 97.55465 97.4896)
+ (xy 97.554653 97.489601)
+ (xy 97.559953 97.491878)
+ (xy 97.565582 97.493152)
+ (xy 97.565583 97.493152)
+ (xy 97.76055 97.537269)
+ (xy 97.760553 97.537269)
+ (xy 97.766186 97.538544)
+ (xy 97.771957 97.538771)
+ (xy 97.771959 97.538771)
+ (xy 97.833989 97.541208)
+ (xy 97.97747 97.546846)
+ (xy 97.983179 97.546018)
+ (xy 97.983183 97.546018)
+ (xy 98.181015 97.517333)
+ (xy 98.181019 97.517332)
+ (xy 98.18673 97.516504)
+ (xy 98.274038 97.486867)
+ (xy 98.381483 97.450395)
+ (xy 98.381488 97.450393)
+ (xy 98.386955 97.448537)
+ (xy 98.396451 97.443219)
+ (xy 98.566395 97.348046)
+ (xy 98.566399 97.348043)
+ (xy 98.571442 97.345219)
+ (xy 98.734012 97.210012)
+ (xy 98.869219 97.047442)
+ (xy 98.872043 97.042399)
+ (xy 98.872046 97.042395)
+ (xy 98.969713 96.867998)
+ (xy 98.969714 96.867996)
+ (xy 98.972537 96.862955)
+ (xy 98.974393 96.857488)
+ (xy 98.974395 96.857483)
+ (xy 99.038647 96.6682)
+ (xy 99.040504 96.66273)
+ (xy 99.041333 96.657015)
+ (xy 99.06209 96.51386)
+ (xy 99.09166 96.449315)
+ (xy 99.151432 96.411003)
+ (xy 99.222429 96.411087)
+ (xy 99.282109 96.449542)
+ (xy 99.311525 96.514158)
+ (xy 99.312515 96.523695)
+ (xy 99.315796 96.573749)
+ (xy 99.317217 96.579345)
+ (xy 99.317218 96.57935)
+ (xy 99.353989 96.724133)
+ (xy 99.367845 96.77869)
+ (xy 99.370262 96.783933)
+ (xy 99.440648 96.936613)
+ (xy 99.456369 96.970714)
+ (xy 99.578405 97.143391)
+ (xy 99.619795 97.183711)
+ (xy 99.705973 97.267662)
+ (xy 99.729865 97.290937)
+ (xy 99.734661 97.294142)
+ (xy 99.734664 97.294144)
+ (xy 99.870505 97.38491)
+ (xy 99.905677 97.408411)
+ (xy 99.910985 97.410692)
+ (xy 99.910986 97.410692)
+ (xy 100.09465 97.4896)
+ (xy 100.094653 97.489601)
+ (xy 100.099953 97.491878)
+ (xy 100.105582 97.493152)
+ (xy 100.105583 97.493152)
+ (xy 100.30055 97.537269)
+ (xy 100.300553 97.537269)
+ (xy 100.306186 97.538544)
+ (xy 100.311957 97.538771)
+ (xy 100.311959 97.538771)
+ (xy 100.373989 97.541208)
+ (xy 100.51747 97.546846)
+ (xy 100.523179 97.546018)
+ (xy 100.523183 97.546018)
+ (xy 100.721015 97.517333)
+ (xy 100.721019 97.517332)
+ (xy 100.72673 97.516504)
+ (xy 100.814038 97.486867)
+ (xy 100.921483 97.450395)
+ (xy 100.921488 97.450393)
+ (xy 100.926955 97.448537)
+ (xy 100.936451 97.443219)
+ (xy 101.106395 97.348046)
+ (xy 101.106399 97.348043)
+ (xy 101.111442 97.345219)
+ (xy 101.274012 97.210012)
+ (xy 101.409219 97.047442)
+ (xy 101.412043 97.042399)
+ (xy 101.412046 97.042395)
+ (xy 101.509713 96.867998)
+ (xy 101.509714 96.867996)
+ (xy 101.512537 96.862955)
+ (xy 101.514393 96.857488)
+ (xy 101.514395 96.857483)
+ (xy 101.578647 96.6682)
+ (xy 101.580504 96.66273)
+ (xy 101.581333 96.657015)
+ (xy 101.60209 96.51386)
+ (xy 101.63166 96.449315)
+ (xy 101.691432 96.411003)
+ (xy 101.762429 96.411087)
+ (xy 101.822109 96.449542)
+ (xy 101.851525 96.514158)
+ (xy 101.852515 96.523695)
+ (xy 101.855796 96.573749)
+ (xy 101.857217 96.579345)
+ (xy 101.857218 96.57935)
+ (xy 101.893989 96.724133)
+ (xy 101.907845 96.77869)
+ (xy 101.910262 96.783933)
+ (xy 101.980648 96.936613)
+ (xy 101.996369 96.970714)
+ (xy 102.118405 97.143391)
+ (xy 102.159795 97.183711)
+ (xy 102.245973 97.267662)
+ (xy 102.269865 97.290937)
+ (xy 102.274661 97.294142)
+ (xy 102.274664 97.294144)
+ (xy 102.410505 97.38491)
+ (xy 102.445677 97.408411)
+ (xy 102.450985 97.410692)
+ (xy 102.450986 97.410692)
+ (xy 102.63465 97.4896)
+ (xy 102.634653 97.489601)
+ (xy 102.639953 97.491878)
+ (xy 102.645582 97.493152)
+ (xy 102.645583 97.493152)
+ (xy 102.84055 97.537269)
+ (xy 102.840553 97.537269)
+ (xy 102.846186 97.538544)
+ (xy 102.851957 97.538771)
+ (xy 102.851959 97.538771)
+ (xy 102.913989 97.541208)
+ (xy 103.05747 97.546846)
+ (xy 103.063179 97.546018)
+ (xy 103.063183 97.546018)
+ (xy 103.261015 97.517333)
+ (xy 103.261019 97.517332)
+ (xy 103.26673 97.516504)
+ (xy 103.354038 97.486867)
+ (xy 103.461483 97.450395)
+ (xy 103.461488 97.450393)
+ (xy 103.466955 97.448537)
+ (xy 103.476451 97.443219)
+ (xy 103.646395 97.348046)
+ (xy 103.646399 97.348043)
+ (xy 103.651442 97.345219)
+ (xy 103.814012 97.210012)
+ (xy 103.949219 97.047442)
+ (xy 103.952043 97.042399)
+ (xy 103.952046 97.042395)
+ (xy 104.049713 96.867998)
+ (xy 104.049714 96.867996)
+ (xy 104.052537 96.862955)
+ (xy 104.054393 96.857488)
+ (xy 104.054395 96.857483)
+ (xy 104.118647 96.6682)
+ (xy 104.120504 96.66273)
+ (xy 104.121333 96.657015)
+ (xy 104.14209 96.51386)
+ (xy 104.17166 96.449315)
+ (xy 104.231432 96.411003)
+ (xy 104.302429 96.411087)
+ (xy 104.362109 96.449542)
+ (xy 104.391525 96.514158)
+ (xy 104.392515 96.523695)
+ (xy 104.395796 96.573749)
+ (xy 104.397217 96.579345)
+ (xy 104.397218 96.57935)
+ (xy 104.433989 96.724133)
+ (xy 104.447845 96.77869)
+ (xy 104.450262 96.783933)
+ (xy 104.520648 96.936613)
+ (xy 104.536369 96.970714)
+ (xy 104.658405 97.143391)
+ (xy 104.699795 97.183711)
+ (xy 104.785973 97.267662)
+ (xy 104.809865 97.290937)
+ (xy 104.814661 97.294142)
+ (xy 104.814664 97.294144)
+ (xy 104.950505 97.38491)
+ (xy 104.985677 97.408411)
+ (xy 104.990985 97.410692)
+ (xy 104.990986 97.410692)
+ (xy 105.17465 97.4896)
+ (xy 105.174653 97.489601)
+ (xy 105.179953 97.491878)
+ (xy 105.185582 97.493152)
+ (xy 105.185583 97.493152)
+ (xy 105.38055 97.537269)
+ (xy 105.380553 97.537269)
+ (xy 105.386186 97.538544)
+ (xy 105.391957 97.538771)
+ (xy 105.391959 97.538771)
+ (xy 105.453989 97.541208)
+ (xy 105.59747 97.546846)
+ (xy 105.603179 97.546018)
+ (xy 105.603183 97.546018)
+ (xy 105.801015 97.517333)
+ (xy 105.801019 97.517332)
+ (xy 105.80673 97.516504)
+ (xy 105.894038 97.486867)
+ (xy 106.001483 97.450395)
+ (xy 106.001488 97.450393)
+ (xy 106.006955 97.448537)
+ (xy 106.016451 97.443219)
+ (xy 106.186395 97.348046)
+ (xy 106.186399 97.348043)
+ (xy 106.191442 97.345219)
+ (xy 106.354012 97.210012)
+ (xy 106.489219 97.047442)
+ (xy 106.492043 97.042399)
+ (xy 106.492046 97.042395)
+ (xy 106.589713 96.867998)
+ (xy 106.589714 96.867996)
+ (xy 106.592537 96.862955)
+ (xy 106.594393 96.857488)
+ (xy 106.594395 96.857483)
+ (xy 106.658647 96.6682)
+ (xy 106.660504 96.66273)
+ (xy 106.661333 96.657015)
+ (xy 106.68209 96.51386)
+ (xy 106.71166 96.449315)
+ (xy 106.771432 96.411003)
+ (xy 106.842429 96.411087)
+ (xy 106.902109 96.449542)
+ (xy 106.931525 96.514158)
+ (xy 106.932515 96.523695)
+ (xy 106.935796 96.573749)
+ (xy 106.937217 96.579345)
+ (xy 106.937218 96.57935)
+ (xy 106.973989 96.724133)
+ (xy 106.987845 96.77869)
+ (xy 106.990262 96.783933)
+ (xy 107.060648 96.936613)
+ (xy 107.076369 96.970714)
+ (xy 107.198405 97.143391)
+ (xy 107.239795 97.183711)
+ (xy 107.325973 97.267662)
+ (xy 107.349865 97.290937)
+ (xy 107.354661 97.294142)
+ (xy 107.354664 97.294144)
+ (xy 107.490505 97.38491)
+ (xy 107.525677 97.408411)
+ (xy 107.530985 97.410692)
+ (xy 107.530986 97.410692)
+ (xy 107.71465 97.4896)
+ (xy 107.714653 97.489601)
+ (xy 107.719953 97.491878)
+ (xy 107.725582 97.493152)
+ (xy 107.725583 97.493152)
+ (xy 107.92055 97.537269)
+ (xy 107.920553 97.537269)
+ (xy 107.926186 97.538544)
+ (xy 107.931957 97.538771)
+ (xy 107.931959 97.538771)
+ (xy 107.993989 97.541208)
+ (xy 108.13747 97.546846)
+ (xy 108.143179 97.546018)
+ (xy 108.143183 97.546018)
+ (xy 108.341015 97.517333)
+ (xy 108.341019 97.517332)
+ (xy 108.34673 97.516504)
+ (xy 108.434038 97.486867)
+ (xy 108.541483 97.450395)
+ (xy 108.541488 97.450393)
+ (xy 108.546955 97.448537)
+ (xy 108.556451 97.443219)
+ (xy 108.726395 97.348046)
+ (xy 108.726399 97.348043)
+ (xy 108.731442 97.345219)
+ (xy 108.894012 97.210012)
+ (xy 109.029219 97.047442)
+ (xy 109.032043 97.042399)
+ (xy 109.032046 97.042395)
+ (xy 109.129713 96.867998)
+ (xy 109.129714 96.867996)
+ (xy 109.132537 96.862955)
+ (xy 109.134393 96.857488)
+ (xy 109.134395 96.857483)
+ (xy 109.198647 96.6682)
+ (xy 109.200504 96.66273)
+ (xy 109.201935 96.652865)
+ (xy 109.22979 96.460754)
+ (xy 113.317967 96.460754)
+ (xy 113.331796 96.671749)
+ (xy 113.333217 96.677345)
+ (xy 113.333218 96.67735)
+ (xy 113.380357 96.862955)
+ (xy 113.383845 96.87669)
+ (xy 113.386262 96.881933)
+ (xy 113.464612 97.051888)
+ (xy 113.472369 97.068714)
+ (xy 113.594405 97.241391)
+ (xy 113.745865 97.388937)
+ (xy 113.750661 97.392142)
+ (xy 113.750664 97.392144)
+ (xy 113.863437 97.467496)
+ (xy 113.921677 97.506411)
+ (xy 113.926985 97.508692)
+ (xy 113.926986 97.508692)
+ (xy 114.11065 97.5876)
+ (xy 114.110653 97.587601)
+ (xy 114.115953 97.589878)
+ (xy 114.121582 97.591152)
+ (xy 114.121583 97.591152)
+ (xy 114.31655 97.635269)
+ (xy 114.316553 97.635269)
+ (xy 114.322186 97.636544)
+ (xy 114.327957 97.636771)
+ (xy 114.327959 97.636771)
+ (xy 114.389989 97.639208)
+ (xy 114.53347 97.644846)
+ (xy 114.539179 97.644018)
+ (xy 114.539183 97.644018)
+ (xy 114.737015 97.615333)
+ (xy 114.737019 97.615332)
+ (xy 114.74273 97.614504)
+ (xy 114.821987 97.5876)
+ (xy 114.937483 97.548395)
+ (xy 114.937488 97.548393)
+ (xy 114.942955 97.546537)
+ (xy 114.948378 97.5435)
+ (xy 115.122395 97.446046)
+ (xy 115.122399 97.446043)
+ (xy 115.127442 97.443219)
+ (xy 115.290012 97.308012)
+ (xy 115.425219 97.145442)
+ (xy 115.428043 97.140399)
+ (xy 115.428046 97.140395)
+ (xy 115.525713 96.965998)
+ (xy 115.525714 96.965996)
+ (xy 115.528537 96.960955)
+ (xy 115.530393 96.955488)
+ (xy 115.530395 96.955483)
+ (xy 115.591219 96.7763)
+ (xy 115.596504 96.76073)
+ (xy 115.59813 96.749521)
+ (xy 115.626314 96.55514)
+ (xy 115.626314 96.555138)
+ (xy 115.626846 96.55147)
+ (xy 115.628429 96.491)
+ (xy 115.609081 96.28044)
+ (xy 115.60304 96.259018)
+ (xy 115.573075 96.152773)
+ (xy 115.551686 96.076931)
+ (xy 115.543853 96.061046)
+ (xy 115.460719 95.892469)
+ (xy 115.458165 95.88729)
+ (xy 115.362494 95.759171)
+ (xy 115.335104 95.722491)
+ (xy 115.335103 95.72249)
+ (xy 115.331651 95.717867)
+ (xy 115.206507 95.602185)
+ (xy 115.180622 95.578257)
+ (xy 115.18062 95.578255)
+ (xy 115.176381 95.574337)
+ (xy 115.045394 95.49169)
+ (xy 115.002434 95.464584)
+ (xy 115.002433 95.464584)
+ (xy 114.997554 95.461505)
+ (xy 114.80116 95.383152)
+ (xy 114.795503 95.382027)
+ (xy 114.795497 95.382025)
+ (xy 114.599442 95.343028)
+ (xy 114.59944 95.343028)
+ (xy 114.593775 95.341901)
+ (xy 114.588 95.341825)
+ (xy 114.587996 95.341825)
+ (xy 114.481976 95.340437)
+ (xy 114.382346 95.339133)
+ (xy 114.376649 95.340112)
+ (xy 114.376648 95.340112)
+ (xy 114.17965 95.373962)
+ (xy 114.179649 95.373962)
+ (xy 114.173953 95.374941)
+ (xy 113.975575 95.448127)
+ (xy 113.970614 95.451079)
+ (xy 113.970613 95.451079)
+ (xy 113.918475 95.482098)
+ (xy 113.793856 95.556238)
+ (xy 113.634881 95.695655)
+ (xy 113.503976 95.861708)
+ (xy 113.501287 95.866819)
+ (xy 113.501285 95.866822)
+ (xy 113.463337 95.93895)
+ (xy 113.405523 96.048836)
+ (xy 113.34282 96.250773)
+ (xy 113.317967 96.460754)
+ (xy 109.22979 96.460754)
+ (xy 109.230314 96.45714)
+ (xy 109.230314 96.457138)
+ (xy 109.230846 96.45347)
+ (xy 109.232429 96.393)
+ (xy 109.213081 96.18244)
+ (xy 109.200359 96.137329)
+ (xy 109.184894 96.082496)
+ (xy 109.155686 95.978931)
+ (xy 109.148612 95.964585)
+ (xy 109.064719 95.794469)
+ (xy 109.062165 95.78929)
+ (xy 108.935651 95.619867)
+ (xy 108.807237 95.501162)
+ (xy 108.784622 95.480257)
+ (xy 108.78462 95.480255)
+ (xy 108.780381 95.476337)
+ (xy 108.735671 95.448127)
+ (xy 108.606434 95.366584)
+ (xy 108.606433 95.366584)
+ (xy 108.601554 95.363505)
+ (xy 108.40516 95.285152)
+ (xy 108.399503 95.284027)
+ (xy 108.399497 95.284025)
+ (xy 108.203442 95.245028)
+ (xy 108.20344 95.245028)
+ (xy 108.197775 95.243901)
+ (xy 108.192 95.243825)
+ (xy 108.191996 95.243825)
+ (xy 108.085976 95.242437)
+ (xy 107.986346 95.241133)
+ (xy 107.980649 95.242112)
+ (xy 107.980648 95.242112)
+ (xy 107.78365 95.275962)
+ (xy 107.783649 95.275962)
+ (xy 107.777953 95.276941)
+ (xy 107.579575 95.350127)
+ (xy 107.574614 95.353079)
+ (xy 107.574613 95.353079)
+ (xy 107.493766 95.401178)
+ (xy 107.397856 95.458238)
+ (xy 107.238881 95.597655)
+ (xy 107.107976 95.763708)
+ (xy 107.105287 95.768819)
+ (xy 107.105285 95.768822)
+ (xy 107.091792 95.794469)
+ (xy 107.009523 95.950836)
+ (xy 106.94682 96.152773)
+ (xy 106.946141 96.15851)
+ (xy 106.932088 96.277239)
+ (xy 106.904217 96.342537)
+ (xy 106.845469 96.382401)
+ (xy 106.774494 96.384174)
+ (xy 106.713828 96.347295)
+ (xy 106.68273 96.283471)
+ (xy 106.68149 96.273958)
+ (xy 106.680194 96.259846)
+ (xy 106.673081 96.18244)
+ (xy 106.660359 96.137329)
+ (xy 106.644894 96.082496)
+ (xy 106.615686 95.978931)
+ (xy 106.608612 95.964585)
+ (xy 106.524719 95.794469)
+ (xy 106.522165 95.78929)
+ (xy 106.395651 95.619867)
+ (xy 106.267237 95.501162)
+ (xy 106.244622 95.480257)
+ (xy 106.24462 95.480255)
+ (xy 106.240381 95.476337)
+ (xy 106.195671 95.448127)
+ (xy 106.066434 95.366584)
+ (xy 106.066433 95.366584)
+ (xy 106.061554 95.363505)
+ (xy 105.86516 95.285152)
+ (xy 105.859503 95.284027)
+ (xy 105.859497 95.284025)
+ (xy 105.663442 95.245028)
+ (xy 105.66344 95.245028)
+ (xy 105.657775 95.243901)
+ (xy 105.652 95.243825)
+ (xy 105.651996 95.243825)
+ (xy 105.545976 95.242437)
+ (xy 105.446346 95.241133)
+ (xy 105.440649 95.242112)
+ (xy 105.440648 95.242112)
+ (xy 105.24365 95.275962)
+ (xy 105.243649 95.275962)
+ (xy 105.237953 95.276941)
+ (xy 105.039575 95.350127)
+ (xy 105.034614 95.353079)
+ (xy 105.034613 95.353079)
+ (xy 104.953766 95.401178)
+ (xy 104.857856 95.458238)
+ (xy 104.698881 95.597655)
+ (xy 104.567976 95.763708)
+ (xy 104.565287 95.768819)
+ (xy 104.565285 95.768822)
+ (xy 104.551792 95.794469)
+ (xy 104.469523 95.950836)
+ (xy 104.40682 96.152773)
+ (xy 104.406141 96.15851)
+ (xy 104.392088 96.277239)
+ (xy 104.364217 96.342537)
+ (xy 104.305469 96.382401)
+ (xy 104.234494 96.384174)
+ (xy 104.173828 96.347295)
+ (xy 104.14273 96.283471)
+ (xy 104.14149 96.273958)
+ (xy 104.140194 96.259846)
+ (xy 104.133081 96.18244)
+ (xy 104.120359 96.137329)
+ (xy 104.104894 96.082496)
+ (xy 104.075686 95.978931)
+ (xy 104.068612 95.964585)
+ (xy 103.984719 95.794469)
+ (xy 103.982165 95.78929)
+ (xy 103.855651 95.619867)
+ (xy 103.727237 95.501162)
+ (xy 103.704622 95.480257)
+ (xy 103.70462 95.480255)
+ (xy 103.700381 95.476337)
+ (xy 103.655671 95.448127)
+ (xy 103.526434 95.366584)
+ (xy 103.526433 95.366584)
+ (xy 103.521554 95.363505)
+ (xy 103.32516 95.285152)
+ (xy 103.319503 95.284027)
+ (xy 103.319497 95.284025)
+ (xy 103.123442 95.245028)
+ (xy 103.12344 95.245028)
+ (xy 103.117775 95.243901)
+ (xy 103.112 95.243825)
+ (xy 103.111996 95.243825)
+ (xy 103.005976 95.242437)
+ (xy 102.906346 95.241133)
+ (xy 102.900649 95.242112)
+ (xy 102.900648 95.242112)
+ (xy 102.70365 95.275962)
+ (xy 102.703649 95.275962)
+ (xy 102.697953 95.276941)
+ (xy 102.499575 95.350127)
+ (xy 102.494614 95.353079)
+ (xy 102.494613 95.353079)
+ (xy 102.413766 95.401178)
+ (xy 102.317856 95.458238)
+ (xy 102.158881 95.597655)
+ (xy 102.027976 95.763708)
+ (xy 102.025287 95.768819)
+ (xy 102.025285 95.768822)
+ (xy 102.011792 95.794469)
+ (xy 101.929523 95.950836)
+ (xy 101.86682 96.152773)
+ (xy 101.866141 96.15851)
+ (xy 101.852088 96.277239)
+ (xy 101.824217 96.342537)
+ (xy 101.765469 96.382401)
+ (xy 101.694494 96.384174)
+ (xy 101.633828 96.347295)
+ (xy 101.60273 96.283471)
+ (xy 101.60149 96.273958)
+ (xy 101.600194 96.259846)
+ (xy 101.593081 96.18244)
+ (xy 101.580359 96.137329)
+ (xy 101.564894 96.082496)
+ (xy 101.535686 95.978931)
+ (xy 101.528612 95.964585)
+ (xy 101.444719 95.794469)
+ (xy 101.442165 95.78929)
+ (xy 101.315651 95.619867)
+ (xy 101.187237 95.501162)
+ (xy 101.164622 95.480257)
+ (xy 101.16462 95.480255)
+ (xy 101.160381 95.476337)
+ (xy 101.155503 95.473259)
+ (xy 101.155491 95.47325)
+ (xy 101.041264 95.401178)
+ (xy 100.994326 95.347912)
+ (xy 100.9825 95.294617)
+ (xy 100.9825 95.075754)
+ (xy 110.477967 95.075754)
+ (xy 110.491796 95.286749)
+ (xy 110.493217 95.292345)
+ (xy 110.493218 95.29235)
+ (xy 110.521438 95.403464)
+ (xy 110.543845 95.49169)
+ (xy 110.632369 95.683714)
+ (xy 110.754405 95.856391)
+ (xy 110.758539 95.860418)
+ (xy 110.866378 95.96547)
+ (xy 110.905865 96.003937)
+ (xy 110.910661 96.007142)
+ (xy 110.910664 96.007144)
+ (xy 111.015108 96.076931)
+ (xy 111.081677 96.121411)
+ (xy 111.086985 96.123692)
+ (xy 111.086986 96.123692)
+ (xy 111.27065 96.2026)
+ (xy 111.270653 96.202601)
+ (xy 111.275953 96.204878)
+ (xy 111.281582 96.206152)
+ (xy 111.281583 96.206152)
+ (xy 111.47655 96.250269)
+ (xy 111.476553 96.250269)
+ (xy 111.482186 96.251544)
+ (xy 111.487957 96.251771)
+ (xy 111.487959 96.251771)
+ (xy 111.549989 96.254208)
+ (xy 111.69347 96.259846)
+ (xy 111.699179 96.259018)
+ (xy 111.699183 96.259018)
+ (xy 111.897015 96.230333)
+ (xy 111.897019 96.230332)
+ (xy 111.90273 96.229504)
+ (xy 111.981987 96.2026)
+ (xy 112.097483 96.163395)
+ (xy 112.097488 96.163393)
+ (xy 112.102955 96.161537)
+ (xy 112.10836 96.15851)
+ (xy 112.282395 96.061046)
+ (xy 112.282399 96.061043)
+ (xy 112.287442 96.058219)
+ (xy 112.450012 95.923012)
+ (xy 112.585219 95.760442)
+ (xy 112.588043 95.755399)
+ (xy 112.588046 95.755395)
+ (xy 112.685713 95.580998)
+ (xy 112.685714 95.580996)
+ (xy 112.688537 95.575955)
+ (xy 112.690393 95.570488)
+ (xy 112.690395 95.570483)
+ (xy 112.737173 95.432676)
+ (xy 112.756504 95.37573)
+ (xy 112.757795 95.36683)
+ (xy 112.786314 95.17014)
+ (xy 112.786314 95.170138)
+ (xy 112.786846 95.16647)
+ (xy 112.788429 95.106)
+ (xy 112.769081 94.89544)
+ (xy 112.76304 94.874018)
+ (xy 112.724874 94.738692)
+ (xy 112.711686 94.691931)
+ (xy 112.703853 94.676046)
+ (xy 112.620719 94.507469)
+ (xy 112.618165 94.50229)
+ (xy 112.523443 94.375442)
+ (xy 112.495104 94.337491)
+ (xy 112.495103 94.33749)
+ (xy 112.491651 94.332867)
+ (xy 112.367603 94.218198)
+ (xy 112.340622 94.193257)
+ (xy 112.34062 94.193255)
+ (xy 112.336381 94.189337)
+ (xy 112.157554 94.076505)
+ (xy 111.96116 93.998152)
+ (xy 111.955503 93.997027)
+ (xy 111.955497 93.997025)
+ (xy 111.759442 93.958028)
+ (xy 111.75944 93.958028)
+ (xy 111.753775 93.956901)
+ (xy 111.748 93.956825)
+ (xy 111.747996 93.956825)
+ (xy 111.641976 93.955437)
+ (xy 111.542346 93.954133)
+ (xy 111.536649 93.955112)
+ (xy 111.536648 93.955112)
+ (xy 111.33965 93.988962)
+ (xy 111.339649 93.988962)
+ (xy 111.333953 93.989941)
+ (xy 111.135575 94.063127)
+ (xy 111.130614 94.066079)
+ (xy 111.130613 94.066079)
+ (xy 111.113089 94.076505)
+ (xy 110.953856 94.171238)
+ (xy 110.794881 94.310655)
+ (xy 110.663976 94.476708)
+ (xy 110.661287 94.481819)
+ (xy 110.661285 94.481822)
+ (xy 110.647792 94.507469)
+ (xy 110.565523 94.663836)
+ (xy 110.50282 94.865773)
+ (xy 110.477967 95.075754)
+ (xy 100.9825 95.075754)
+ (xy 100.9825 94.629435)
+ (xy 100.982611 94.624159)
+ (xy 100.984727 94.573666)
+ (xy 100.985087 94.565081)
+ (xy 100.975662 94.524895)
+ (xy 100.9735 94.513229)
+ (xy 100.969067 94.480864)
+ (xy 100.969066 94.480862)
+ (xy 100.967901 94.472354)
+ (xy 100.962405 94.459653)
+ (xy 100.955373 94.43839)
+ (xy 100.954173 94.433275)
+ (xy 100.954172 94.433273)
+ (xy 100.95221 94.424907)
+ (xy 100.948073 94.417382)
+ (xy 100.948072 94.417379)
+ (xy 100.932326 94.388738)
+ (xy 100.927104 94.378078)
+ (xy 100.914131 94.348098)
+ (xy 100.914129 94.348095)
+ (xy 100.91072 94.340217)
+ (xy 100.905317 94.333544)
+ (xy 100.905314 94.33354)
+ (xy 100.902007 94.329456)
+ (xy 100.889518 94.31087)
+ (xy 100.886031 94.304527)
+ (xy 100.886029 94.304524)
+ (xy 100.882848 94.298738)
+ (xy 100.876165 94.290996)
+ (xy 100.85296 94.267791)
+ (xy 100.844134 94.25799)
+ (xy 100.825518 94.235001)
+ (xy 100.820112 94.228325)
+ (xy 100.805856 94.218194)
+ (xy 100.789756 94.204587)
+ (xy 100.275923 93.690754)
+ (xy 113.317967 93.690754)
+ (xy 113.331796 93.901749)
+ (xy 113.333217 93.907345)
+ (xy 113.333218 93.90735)
+ (xy 113.356823 94.000292)
+ (xy 113.383845 94.10669)
+ (xy 113.472369 94.298714)
+ (xy 113.594405 94.471391)
+ (xy 113.598539 94.475418)
+ (xy 113.681997 94.556719)
+ (xy 113.745865 94.618937)
+ (xy 113.750661 94.622142)
+ (xy 113.750664 94.622144)
+ (xy 113.855108 94.691931)
+ (xy 113.921677 94.736411)
+ (xy 113.926985 94.738692)
+ (xy 113.926986 94.738692)
+ (xy 114.11065 94.8176)
+ (xy 114.110653 94.817601)
+ (xy 114.115953 94.819878)
+ (xy 114.121582 94.821152)
+ (xy 114.121583 94.821152)
+ (xy 114.31655 94.865269)
+ (xy 114.316553 94.865269)
+ (xy 114.322186 94.866544)
+ (xy 114.327957 94.866771)
+ (xy 114.327959 94.866771)
+ (xy 114.389989 94.869208)
+ (xy 114.53347 94.874846)
+ (xy 114.539179 94.874018)
+ (xy 114.539183 94.874018)
+ (xy 114.737015 94.845333)
+ (xy 114.737019 94.845332)
+ (xy 114.74273 94.844504)
+ (xy 114.821987 94.8176)
+ (xy 114.937483 94.778395)
+ (xy 114.937488 94.778393)
+ (xy 114.942955 94.776537)
+ (xy 114.947998 94.773713)
+ (xy 115.122395 94.676046)
+ (xy 115.122399 94.676043)
+ (xy 115.127442 94.673219)
+ (xy 115.290012 94.538012)
+ (xy 115.425219 94.375442)
+ (xy 115.428043 94.370399)
+ (xy 115.428046 94.370395)
+ (xy 115.525713 94.195998)
+ (xy 115.525714 94.195996)
+ (xy 115.528537 94.190955)
+ (xy 115.530393 94.185488)
+ (xy 115.530395 94.185483)
+ (xy 115.593258 94.000292)
+ (xy 115.596504 93.99073)
+ (xy 115.601669 93.955112)
+ (xy 115.626314 93.78514)
+ (xy 115.626314 93.785138)
+ (xy 115.626846 93.78147)
+ (xy 115.628429 93.721)
+ (xy 115.609081 93.51044)
+ (xy 115.60304 93.489018)
+ (xy 115.576995 93.396671)
+ (xy 115.551686 93.306931)
+ (xy 115.543853 93.291046)
+ (xy 115.460719 93.122469)
+ (xy 115.458165 93.11729)
+ (xy 115.363443 92.990442)
+ (xy 115.335104 92.952491)
+ (xy 115.335103 92.95249)
+ (xy 115.331651 92.947867)
+ (xy 115.188061 92.815134)
+ (xy 115.180622 92.808257)
+ (xy 115.18062 92.808255)
+ (xy 115.176381 92.804337)
+ (xy 115.143014 92.783284)
+ (xy 115.002434 92.694584)
+ (xy 115.002433 92.694584)
+ (xy 114.997554 92.691505)
+ (xy 114.80116 92.613152)
+ (xy 114.795503 92.612027)
+ (xy 114.795497 92.612025)
+ (xy 114.599442 92.573028)
+ (xy 114.59944 92.573028)
+ (xy 114.593775 92.571901)
+ (xy 114.588 92.571825)
+ (xy 114.587996 92.571825)
+ (xy 114.481976 92.570437)
+ (xy 114.382346 92.569133)
+ (xy 114.376649 92.570112)
+ (xy 114.376648 92.570112)
+ (xy 114.17965 92.603962)
+ (xy 114.179649 92.603962)
+ (xy 114.173953 92.604941)
+ (xy 113.975575 92.678127)
+ (xy 113.970614 92.681079)
+ (xy 113.970613 92.681079)
+ (xy 113.858966 92.747502)
+ (xy 113.793856 92.786238)
+ (xy 113.634881 92.925655)
+ (xy 113.503976 93.091708)
+ (xy 113.501287 93.096819)
+ (xy 113.501285 93.096822)
+ (xy 113.46978 93.156703)
+ (xy 113.405523 93.278836)
+ (xy 113.34282 93.480773)
+ (xy 113.317967 93.690754)
+ (xy 100.275923 93.690754)
+ (xy 96.139805 89.554636)
+ (xy 96.136152 89.550827)
+ (xy 96.101934 89.513615)
+ (xy 96.096116 89.507288)
+ (xy 96.061044 89.485542)
+ (xy 96.051262 89.478819)
+ (xy 96.02524 89.459067)
+ (xy 96.018396 89.453872)
+ (xy 96.010409 89.45071)
+ (xy 96.010406 89.450708)
+ (xy 96.005517 89.448772)
+ (xy 95.985516 89.438713)
+ (xy 95.97375 89.431418)
+ (xy 95.934119 89.419904)
+ (xy 95.922895 89.41606)
+ (xy 95.892516 89.404033)
+ (xy 95.892513 89.404032)
+ (xy 95.884528 89.400871)
+ (xy 95.875991 89.399974)
+ (xy 95.875984 89.399972)
+ (xy 95.870761 89.399423)
+ (xy 95.848784 89.395112)
+ (xy 95.841822 89.393089)
+ (xy 95.84182 89.393089)
+ (xy 95.835488 89.391249)
+ (xy 95.828673 89.390749)
+ (xy 95.827596 89.390669)
+ (xy 95.827583 89.390669)
+ (xy 95.825288 89.3905)
+ (xy 95.792461 89.3905)
+ (xy 95.77929 89.38981)
+ (xy 95.741338 89.385821)
+ (xy 95.732872 89.387253)
+ (xy 95.732869 89.387253)
+ (xy 95.724102 89.388736)
+ (xy 95.70309 89.3905)
+ (xy 93.822025 89.3905)
+ (xy 93.753904 89.370498)
+ (xy 93.71793 89.335069)
+ (xy 93.716218 89.331849)
+ (xy 93.712324 89.327074)
+ (xy 93.589906 89.176975)
+ (xy 93.589903 89.176972)
+ (xy 93.586011 89.1722)
+ (xy 93.548367 89.141058)
+ (xy 93.432025 89.044811)
+ (xy 93.432021 89.044809)
+ (xy 93.427275 89.040882)
+ (xy 93.246055 88.942897)
+ (xy 93.083676 88.892632)
+ (xy 93.024517 88.853382)
+ (xy 92.99597 88.788378)
+ (xy 93.007098 88.718259)
+ (xy 93.05437 88.665287)
+ (xy 93.087052 88.65091)
+ (xy 93.212788 88.615804)
+ (xy 93.212801 88.615799)
+ (xy 93.218725 88.614145)
+ (xy 93.224214 88.611372)
+ (xy 93.22422 88.61137)
+ (xy 93.397116 88.524033)
+ (xy 93.40261 88.521258)
+ (xy 93.455498 88.479938)
+ (xy 93.560101 88.398213)
+ (xy 93.564951 88.394424)
+ (xy 93.588321 88.36735)
+ (xy 93.685768 88.254455)
+ (xy 101.220828 88.254455)
+ (xy 101.221515 88.261462)
+ (xy 101.221515 88.261465)
+ (xy 101.224314 88.29001)
+ (xy 101.237258 88.422025)
+ (xy 101.290405 88.581791)
+ (xy 101.294052 88.587813)
+ (xy 101.294053 88.587815)
+ (xy 101.309999 88.614145)
+ (xy 101.377627 88.725812)
+ (xy 101.382523 88.730882)
+ (xy 101.420136 88.769831)
+ (xy 101.453069 88.832727)
+ (xy 101.4555 88.857358)
+ (xy 101.4555 91.740158)
+ (xy 101.435498 91.808279)
+ (xy 101.417657 91.830182)
+ (xy 101.400758 91.84673)
+ (xy 101.400753 91.846737)
+ (xy 101.395724 91.851661)
+ (xy 101.304515 91.99319)
+ (xy 101.302105 91.99981)
+ (xy 101.302104 91.999813)
+ (xy 101.298643 92.009322)
+ (xy 101.246927 92.151409)
+ (xy 101.225825 92.318455)
+ (xy 101.226512 92.325462)
+ (xy 101.226512 92.325465)
+ (xy 101.229311 92.35401)
+ (xy 101.242255 92.486025)
+ (xy 101.295402 92.645791)
+ (xy 101.299049 92.651813)
+ (xy 101.29905 92.651815)
+ (xy 101.378671 92.783284)
+ (xy 101.382624 92.789812)
+ (xy 101.387513 92.794875)
+ (xy 101.387514 92.794876)
+ (xy 101.442395 92.851706)
+ (xy 101.499586 92.910929)
+ (xy 101.505483 92.914788)
+ (xy 101.634577 92.999266)
+ (xy 101.634581 92.999268)
+ (xy 101.640475 93.003125)
+ (xy 101.798289 93.061815)
+ (xy 101.80527 93.062746)
+ (xy 101.805272 93.062747)
+ (xy 101.850812 93.068823)
+ (xy 101.965183 93.084083)
+ (xy 101.972194 93.083445)
+ (xy 101.972198 93.083445)
+ (xy 102.125843 93.069462)
+ (xy 102.132864 93.068823)
+ (xy 102.139566 93.066645)
+ (xy 102.139568 93.066645)
+ (xy 102.286298 93.01897)
+ (xy 102.286301 93.018969)
+ (xy 102.292997 93.016793)
+ (xy 102.437623 92.930578)
+ (xy 102.442717 92.925727)
+ (xy 102.442721 92.925724)
+ (xy 102.554454 92.819322)
+ (xy 102.554455 92.81932)
+ (xy 102.559554 92.814465)
+ (xy 102.575934 92.789812)
+ (xy 102.648836 92.680085)
+ (xy 102.652731 92.674223)
+ (xy 102.712521 92.516823)
+ (xy 102.735955 92.350088)
+ (xy 102.736249 92.329)
+ (xy 102.733642 92.305754)
+ (xy 110.477967 92.305754)
+ (xy 110.491796 92.516749)
+ (xy 110.493217 92.522345)
+ (xy 110.493218 92.52235)
+ (xy 110.533531 92.681079)
+ (xy 110.543845 92.72169)
+ (xy 110.546262 92.726933)
+ (xy 110.599884 92.843248)
+ (xy 110.632369 92.913714)
+ (xy 110.754405 93.086391)
+ (xy 110.758539 93.090418)
+ (xy 110.874892 93.203764)
+ (xy 110.905865 93.233937)
+ (xy 110.910661 93.237142)
+ (xy 110.910664 93.237144)
+ (xy 111.014207 93.306329)
+ (xy 111.081677 93.351411)
+ (xy 111.086985 93.353692)
+ (xy 111.086986 93.353692)
+ (xy 111.27065 93.4326)
+ (xy 111.270653 93.432601)
+ (xy 111.275953 93.434878)
+ (xy 111.281582 93.436152)
+ (xy 111.281583 93.436152)
+ (xy 111.47655 93.480269)
+ (xy 111.476553 93.480269)
+ (xy 111.482186 93.481544)
+ (xy 111.487957 93.481771)
+ (xy 111.487959 93.481771)
+ (xy 111.539524 93.483797)
+ (xy 111.69347 93.489846)
+ (xy 111.699179 93.489018)
+ (xy 111.699183 93.489018)
+ (xy 111.897015 93.460333)
+ (xy 111.897019 93.460332)
+ (xy 111.90273 93.459504)
+ (xy 111.981987 93.4326)
+ (xy 112.097483 93.393395)
+ (xy 112.097488 93.393393)
+ (xy 112.102955 93.391537)
+ (xy 112.130479 93.376123)
+ (xy 112.282395 93.291046)
+ (xy 112.282399 93.291043)
+ (xy 112.287442 93.288219)
+ (xy 112.450012 93.153012)
+ (xy 112.585219 92.990442)
+ (xy 112.588043 92.985399)
+ (xy 112.588046 92.985395)
+ (xy 112.685713 92.810998)
+ (xy 112.685714 92.810996)
+ (xy 112.688537 92.805955)
+ (xy 112.690393 92.800488)
+ (xy 112.690395 92.800483)
+ (xy 112.753258 92.615292)
+ (xy 112.756504 92.60573)
+ (xy 112.757906 92.596066)
+ (xy 112.786314 92.40014)
+ (xy 112.786314 92.400138)
+ (xy 112.786846 92.39647)
+ (xy 112.788429 92.336)
+ (xy 112.769081 92.12544)
+ (xy 112.76304 92.104018)
+ (xy 112.747128 92.0476)
+ (xy 112.711686 91.921931)
+ (xy 112.703853 91.906046)
+ (xy 112.620719 91.737469)
+ (xy 112.618165 91.73229)
+ (xy 112.519885 91.600677)
+ (xy 112.495104 91.567491)
+ (xy 112.495103 91.56749)
+ (xy 112.491651 91.562867)
+ (xy 112.378423 91.4582)
+ (xy 112.340622 91.423257)
+ (xy 112.34062 91.423255)
+ (xy 112.336381 91.419337)
+ (xy 112.196527 91.331095)
+ (xy 112.162434 91.309584)
+ (xy 112.162433 91.309584)
+ (xy 112.157554 91.306505)
+ (xy 111.96116 91.228152)
+ (xy 111.955503 91.227027)
+ (xy 111.955497 91.227025)
+ (xy 111.759442 91.188028)
+ (xy 111.75944 91.188028)
+ (xy 111.753775 91.186901)
+ (xy 111.748 91.186825)
+ (xy 111.747996 91.186825)
+ (xy 111.641976 91.185437)
+ (xy 111.542346 91.184133)
+ (xy 111.536649 91.185112)
+ (xy 111.536648 91.185112)
+ (xy 111.33965 91.218962)
+ (xy 111.339649 91.218962)
+ (xy 111.333953 91.219941)
+ (xy 111.135575 91.293127)
+ (xy 111.130614 91.296079)
+ (xy 111.130613 91.296079)
+ (xy 111.072234 91.330811)
+ (xy 110.953856 91.401238)
+ (xy 110.794881 91.540655)
+ (xy 110.663976 91.706708)
+ (xy 110.661287 91.711819)
+ (xy 110.661285 91.711822)
+ (xy 110.62978 91.771703)
+ (xy 110.565523 91.893836)
+ (xy 110.50282 92.095773)
+ (xy 110.477967 92.305754)
+ (xy 102.733642 92.305754)
+ (xy 102.721877 92.200868)
+ (xy 102.718266 92.168672)
+ (xy 102.718265 92.168669)
+ (xy 102.717481 92.161676)
+ (xy 102.662108 92.002668)
+ (xy 102.572884 91.859879)
+ (xy 102.567921 91.854881)
+ (xy 102.567916 91.854875)
+ (xy 102.543094 91.829879)
+ (xy 102.509287 91.767449)
+ (xy 102.5065 91.741096)
+ (xy 102.5065 90.920754)
+ (xy 113.317967 90.920754)
+ (xy 113.331796 91.131749)
+ (xy 113.333217 91.137345)
+ (xy 113.333218 91.13735)
+ (xy 113.38061 91.323951)
+ (xy 113.383845 91.33669)
+ (xy 113.472369 91.528714)
+ (xy 113.594405 91.701391)
+ (xy 113.598539 91.705418)
+ (xy 113.734085 91.837461)
+ (xy 113.745865 91.848937)
+ (xy 113.750661 91.852142)
+ (xy 113.750664 91.852144)
+ (xy 113.855108 91.921931)
+ (xy 113.921677 91.966411)
+ (xy 113.926985 91.968692)
+ (xy 113.926986 91.968692)
+ (xy 114.11065 92.0476)
+ (xy 114.110653 92.047601)
+ (xy 114.115953 92.049878)
+ (xy 114.121582 92.051152)
+ (xy 114.121583 92.051152)
+ (xy 114.31655 92.095269)
+ (xy 114.316553 92.095269)
+ (xy 114.322186 92.096544)
+ (xy 114.327957 92.096771)
+ (xy 114.327959 92.096771)
+ (xy 114.389989 92.099208)
+ (xy 114.53347 92.104846)
+ (xy 114.539179 92.104018)
+ (xy 114.539183 92.104018)
+ (xy 114.737015 92.075333)
+ (xy 114.737019 92.075332)
+ (xy 114.74273 92.074504)
+ (xy 114.821987 92.0476)
+ (xy 114.937483 92.008395)
+ (xy 114.937488 92.008393)
+ (xy 114.942955 92.006537)
+ (xy 114.966788 91.99319)
+ (xy 115.122395 91.906046)
+ (xy 115.122399 91.906043)
+ (xy 115.127442 91.903219)
+ (xy 115.290012 91.768012)
+ (xy 115.425219 91.605442)
+ (xy 115.428043 91.600399)
+ (xy 115.428046 91.600395)
+ (xy 115.525713 91.425998)
+ (xy 115.525714 91.425996)
+ (xy 115.528537 91.420955)
+ (xy 115.530393 91.415488)
+ (xy 115.530395 91.415483)
+ (xy 115.593732 91.228897)
+ (xy 115.596504 91.22073)
+ (xy 115.599581 91.199514)
+ (xy 115.626314 91.01514)
+ (xy 115.626314 91.015138)
+ (xy 115.626846 91.01147)
+ (xy 115.628429 90.951)
+ (xy 115.609081 90.74044)
+ (xy 115.551686 90.536931)
+ (xy 115.546696 90.526811)
+ (xy 115.460719 90.352469)
+ (xy 115.458165 90.34729)
+ (xy 115.331651 90.177867)
+ (xy 115.176381 90.034337)
+ (xy 114.997554 89.921505)
+ (xy 114.80116 89.843152)
+ (xy 114.795503 89.842027)
+ (xy 114.795497 89.842025)
+ (xy 114.599442 89.803028)
+ (xy 114.59944 89.803028)
+ (xy 114.593775 89.801901)
+ (xy 114.588 89.801825)
+ (xy 114.587996 89.801825)
+ (xy 114.481976 89.800437)
+ (xy 114.382346 89.799133)
+ (xy 114.376649 89.800112)
+ (xy 114.376648 89.800112)
+ (xy 114.17965 89.833962)
+ (xy 114.179649 89.833962)
+ (xy 114.173953 89.834941)
+ (xy 113.975575 89.908127)
+ (xy 113.970614 89.911079)
+ (xy 113.970613 89.911079)
+ (xy 113.953089 89.921505)
+ (xy 113.793856 90.016238)
+ (xy 113.634881 90.155655)
+ (xy 113.503976 90.321708)
+ (xy 113.501287 90.326819)
+ (xy 113.501285 90.326822)
+ (xy 113.487792 90.352469)
+ (xy 113.405523 90.508836)
+ (xy 113.363417 90.644439)
+ (xy 113.346187 90.699931)
+ (xy 113.34282 90.710773)
+ (xy 113.317967 90.920754)
+ (xy 102.5065 90.920754)
+ (xy 102.5065 90.652062)
+ (xy 110.911493 90.652062)
+ (xy 110.920789 90.664077)
+ (xy 110.971994 90.699931)
+ (xy 110.981489 90.705414)
+ (xy 111.178947 90.79749)
+ (xy 111.189239 90.801236)
+ (xy 111.399688 90.857625)
+ (xy 111.410481 90.859528)
+ (xy 111.627525 90.878517)
+ (xy 111.638475 90.878517)
+ (xy 111.855519 90.859528)
+ (xy 111.866312 90.857625)
+ (xy 112.076761 90.801236)
+ (xy 112.087053 90.79749)
+ (xy 112.284511 90.705414)
+ (xy 112.294006 90.699931)
+ (xy 112.346048 90.663491)
+ (xy 112.354424 90.653012)
+ (xy 112.347356 90.639566)
+ (xy 111.645812 89.938022)
+ (xy 111.631868 89.930408)
+ (xy 111.630035 89.930539)
+ (xy 111.62342 89.93479)
+ (xy 110.917923 90.640287)
+ (xy 110.911493 90.652062)
+ (xy 102.5065 90.652062)
+ (xy 102.5065 89.571475)
+ (xy 110.320483 89.571475)
+ (xy 110.339472 89.788519)
+ (xy 110.341375 89.799312)
+ (xy 110.397764 90.009761)
+ (xy 110.40151 90.020053)
+ (xy 110.493586 90.217511)
+ (xy 110.499069 90.227006)
+ (xy 110.535509 90.279048)
+ (xy 110.545988 90.287424)
+ (xy 110.559434 90.280356)
+ (xy 111.260978 89.578812)
+ (xy 111.267356 89.567132)
+ (xy 111.997408 89.567132)
+ (xy 111.997539 89.568965)
+ (xy 112.00179 89.57558)
+ (xy 112.707287 90.281077)
+ (xy 112.719062 90.287507)
+ (xy 112.731077 90.278211)
+ (xy 112.766931 90.227006)
+ (xy 112.772414 90.217511)
+ (xy 112.86449 90.020053)
+ (xy 112.868236 90.009761)
+ (xy 112.924625 89.799312)
+ (xy 112.926528 89.788519)
+ (xy 112.945517 89.571475)
+ (xy 112.945517 89.560525)
+ (xy 112.926528 89.343481)
+ (xy 112.924625 89.332688)
+ (xy 112.868236 89.122239)
+ (xy 112.86449 89.111947)
+ (xy 112.772414 88.914489)
+ (xy 112.766931 88.904994)
+ (xy 112.730491 88.852952)
+ (xy 112.720012 88.844576)
+ (xy 112.706566 88.851644)
+ (xy 112.005022 89.553188)
+ (xy 111.997408 89.567132)
+ (xy 111.267356 89.567132)
+ (xy 111.268592 89.564868)
+ (xy 111.268461 89.563035)
+ (xy 111.26421 89.55642)
+ (xy 110.558713 88.850923)
+ (xy 110.546938 88.844493)
+ (xy 110.534923 88.853789)
+ (xy 110.499069 88.904994)
+ (xy 110.493586 88.914489)
+ (xy 110.40151 89.111947)
+ (xy 110.397764 89.122239)
+ (xy 110.341375 89.332688)
+ (xy 110.339472 89.343481)
+ (xy 110.320483 89.560525)
+ (xy 110.320483 89.571475)
+ (xy 102.5065 89.571475)
+ (xy 102.5065 88.850233)
+ (xy 102.526502 88.782112)
+ (xy 102.545608 88.758987)
+ (xy 102.549457 88.755322)
+ (xy 102.549458 88.75532)
+ (xy 102.554557 88.750465)
+ (xy 102.570937 88.725812)
+ (xy 102.618579 88.654104)
+ (xy 102.647734 88.610223)
+ (xy 102.707524 88.452823)
+ (xy 102.721262 88.355072)
+ (xy 102.730407 88.29001)
+ (xy 102.730407 88.290006)
+ (xy 102.730958 88.286088)
+ (xy 102.731252 88.265)
+ (xy 102.728539 88.240811)
+ (xy 102.713269 88.104672)
+ (xy 102.713268 88.104669)
+ (xy 102.712484 88.097676)
+ (xy 102.657111 87.938668)
+ (xy 102.62174 87.882062)
+ (xy 110.911493 87.882062)
+ (xy 110.920789 87.894077)
+ (xy 110.971994 87.929931)
+ (xy 110.981489 87.935414)
+ (xy 111.178947 88.02749)
+ (xy 111.189239 88.031236)
+ (xy 111.29395 88.059293)
+ (xy 111.354573 88.096245)
+ (xy 111.385594 88.160105)
+ (xy 111.377166 88.2306)
+ (xy 111.331963 88.285347)
+ (xy 111.29395 88.302707)
+ (xy 111.189239 88.330764)
+ (xy 111.178947 88.33451)
+ (xy 110.981489 88.426586)
+ (xy 110.971994 88.432069)
+ (xy 110.919952 88.468509)
+ (xy 110.911576 88.478988)
+ (xy 110.918644 88.492434)
+ (xy 111.620188 89.193978)
+ (xy 111.634132 89.201592)
+ (xy 111.635965 89.201461)
+ (xy 111.64258 89.19721)
+ (xy 112.348077 88.491713)
+ (xy 112.354507 88.479938)
+ (xy 112.345211 88.467923)
+ (xy 112.294006 88.432069)
+ (xy 112.284511 88.426586)
+ (xy 112.087053 88.33451)
+ (xy 112.076761 88.330764)
+ (xy 111.97205 88.302707)
+ (xy 111.911427 88.265755)
+ (xy 111.880406 88.201895)
+ (xy 111.88652 88.150754)
+ (xy 113.317967 88.150754)
+ (xy 113.331796 88.361749)
+ (xy 113.333217 88.367345)
+ (xy 113.333218 88.36735)
+ (xy 113.373011 88.524033)
+ (xy 113.383845 88.56669)
+ (xy 113.386262 88.571933)
+ (xy 113.468566 88.750465)
+ (xy 113.472369 88.758714)
+ (xy 113.594405 88.931391)
+ (xy 113.598539 88.935418)
+ (xy 113.706801 89.040882)
+ (xy 113.745865 89.078937)
+ (xy 113.750661 89.082142)
+ (xy 113.750664 89.082144)
+ (xy 113.876976 89.166543)
+ (xy 113.921677 89.196411)
+ (xy 113.926985 89.198692)
+ (xy 113.926986 89.198692)
+ (xy 114.11065 89.2776)
+ (xy 114.110653 89.277601)
+ (xy 114.115953 89.279878)
+ (xy 114.121582 89.281152)
+ (xy 114.121583 89.281152)
+ (xy 114.31655 89.325269)
+ (xy 114.316553 89.325269)
+ (xy 114.322186 89.326544)
+ (xy 114.327957 89.326771)
+ (xy 114.327959 89.326771)
+ (xy 114.389989 89.329208)
+ (xy 114.53347 89.334846)
+ (xy 114.539179 89.334018)
+ (xy 114.539183 89.334018)
+ (xy 114.737015 89.305333)
+ (xy 114.737019 89.305332)
+ (xy 114.74273 89.304504)
+ (xy 114.821987 89.2776)
+ (xy 114.937483 89.238395)
+ (xy 114.937488 89.238393)
+ (xy 114.942955 89.236537)
+ (xy 115.005588 89.201461)
+ (xy 115.122395 89.136046)
+ (xy 115.122399 89.136043)
+ (xy 115.127442 89.133219)
+ (xy 115.290012 88.998012)
+ (xy 115.425219 88.835442)
+ (xy 115.428043 88.830399)
+ (xy 115.428046 88.830395)
+ (xy 115.525713 88.655998)
+ (xy 115.525714 88.655996)
+ (xy 115.528537 88.650955)
+ (xy 115.530393 88.645488)
+ (xy 115.530395 88.645483)
+ (xy 115.594647 88.4562)
+ (xy 115.596504 88.45073)
+ (xy 115.601683 88.415016)
+ (xy 115.626314 88.24514)
+ (xy 115.626314 88.245138)
+ (xy 115.626846 88.24147)
+ (xy 115.628429 88.181)
+ (xy 115.609081 87.97044)
+ (xy 115.600121 87.938668)
+ (xy 115.566809 87.820553)
+ (xy 115.551686 87.766931)
+ (xy 115.540553 87.744354)
+ (xy 115.460719 87.582469)
+ (xy 115.458165 87.57729)
+ (xy 115.331651 87.407867)
+ (xy 115.176381 87.264337)
+ (xy 115.137431 87.239761)
+ (xy 115.002434 87.154584)
+ (xy 115.002433 87.154584)
+ (xy 114.997554 87.151505)
+ (xy 114.80116 87.073152)
+ (xy 114.795503 87.072027)
+ (xy 114.795497 87.072025)
+ (xy 114.599442 87.033028)
+ (xy 114.59944 87.033028)
+ (xy 114.593775 87.031901)
+ (xy 114.588 87.031825)
+ (xy 114.587996 87.031825)
+ (xy 114.481976 87.030437)
+ (xy 114.382346 87.029133)
+ (xy 114.376649 87.030112)
+ (xy 114.376648 87.030112)
+ (xy 114.17965 87.063962)
+ (xy 114.179649 87.063962)
+ (xy 114.173953 87.064941)
+ (xy 113.975575 87.138127)
+ (xy 113.970614 87.141079)
+ (xy 113.970613 87.141079)
+ (xy 113.836999 87.220571)
+ (xy 113.793856 87.246238)
+ (xy 113.634881 87.385655)
+ (xy 113.503976 87.551708)
+ (xy 113.501287 87.556819)
+ (xy 113.501285 87.556822)
+ (xy 113.459904 87.635475)
+ (xy 113.405523 87.738836)
+ (xy 113.36105 87.882062)
+ (xy 113.346187 87.929931)
+ (xy 113.34282 87.940773)
+ (xy 113.317967 88.150754)
+ (xy 111.88652 88.150754)
+ (xy 111.888834 88.1314)
+ (xy 111.934037 88.076653)
+ (xy 111.97205 88.059293)
+ (xy 112.076761 88.031236)
+ (xy 112.087053 88.02749)
+ (xy 112.284511 87.935414)
+ (xy 112.294006 87.929931)
+ (xy 112.346048 87.893491)
+ (xy 112.354424 87.883012)
+ (xy 112.347356 87.869566)
+ (xy 111.645812 87.168022)
+ (xy 111.631868 87.160408)
+ (xy 111.630035 87.160539)
+ (xy 111.62342 87.16479)
+ (xy 110.917923 87.870287)
+ (xy 110.911493 87.882062)
+ (xy 102.62174 87.882062)
+ (xy 102.567887 87.795879)
+ (xy 102.559726 87.787661)
+ (xy 102.454208 87.681403)
+ (xy 102.454204 87.6814)
+ (xy 102.449245 87.676406)
+ (xy 102.307082 87.586187)
+ (xy 102.148465 87.529706)
+ (xy 102.141477 87.528873)
+ (xy 102.141474 87.528872)
+ (xy 102.04547 87.517424)
+ (xy 101.981276 87.509769)
+ (xy 101.974273 87.510505)
+ (xy 101.974272 87.510505)
+ (xy 101.928715 87.515293)
+ (xy 101.813824 87.527369)
+ (xy 101.807158 87.529638)
+ (xy 101.807155 87.529639)
+ (xy 101.661101 87.57936)
+ (xy 101.661098 87.579361)
+ (xy 101.654434 87.58163)
+ (xy 101.648439 87.585318)
+ (xy 101.648435 87.58532)
+ (xy 101.517024 87.666165)
+ (xy 101.517022 87.666167)
+ (xy 101.511025 87.669856)
+ (xy 101.499234 87.681403)
+ (xy 101.411896 87.766931)
+ (xy 101.390727 87.787661)
+ (xy 101.299518 87.92919)
+ (xy 101.297108 87.93581)
+ (xy 101.297107 87.935813)
+ (xy 101.281439 87.978861)
+ (xy 101.24193 88.087409)
+ (xy 101.220828 88.254455)
+ (xy 93.685768 88.254455)
+ (xy 93.69554 88.243134)
+ (xy 93.69554 88.243133)
+ (xy 93.699564 88.238472)
+ (xy 93.710477 88.219262)
+ (xy 93.761514 88.169913)
+ (xy 93.820032 88.1555)
+ (xy 95.680065 88.1555)
+ (xy 95.685342 88.155611)
+ (xy 95.744419 88.158087)
+ (xy 95.784605 88.148662)
+ (xy 95.796271 88.1465)
+ (xy 95.828636 88.142067)
+ (xy 95.828638 88.142066)
+ (xy 95.837146 88.140901)
+ (xy 95.845027 88.13749)
+ (xy 95.845029 88.13749)
+ (xy 95.849847 88.135405)
+ (xy 95.87111 88.128373)
+ (xy 95.876229 88.127172)
+ (xy 95.876231 88.127171)
+ (xy 95.884593 88.12521)
+ (xy 95.920775 88.105319)
+ (xy 95.931405 88.100112)
+ (xy 95.969283 88.08372)
+ (xy 95.975959 88.078314)
+ (xy 95.975961 88.078313)
+ (xy 95.980042 88.075008)
+ (xy 95.998626 88.06252)
+ (xy 96.010763 88.055847)
+ (xy 96.018505 88.049164)
+ (xy 96.041709 88.02596)
+ (xy 96.05151 88.017134)
+ (xy 96.081175 87.993112)
+ (xy 96.091306 87.978856)
+ (xy 96.104913 87.962756)
+ (xy 97.266194 86.801475)
+ (xy 110.320483 86.801475)
+ (xy 110.339472 87.018519)
+ (xy 110.341375 87.029312)
+ (xy 110.397764 87.239761)
+ (xy 110.40151 87.250053)
+ (xy 110.493586 87.447511)
+ (xy 110.499069 87.457006)
+ (xy 110.535509 87.509048)
+ (xy 110.545988 87.517424)
+ (xy 110.559434 87.510356)
+ (xy 111.260978 86.808812)
+ (xy 111.267356 86.797132)
+ (xy 111.997408 86.797132)
+ (xy 111.997539 86.798965)
+ (xy 112.00179 86.80558)
+ (xy 112.707287 87.511077)
+ (xy 112.719062 87.517507)
+ (xy 112.731077 87.508211)
+ (xy 112.766931 87.457006)
+ (xy 112.772414 87.447511)
+ (xy 112.86449 87.250053)
+ (xy 112.868236 87.239761)
+ (xy 112.924625 87.029312)
+ (xy 112.926528 87.018519)
+ (xy 112.945517 86.801475)
+ (xy 112.945517 86.790525)
+ (xy 112.926528 86.573481)
+ (xy 112.924625 86.562688)
+ (xy 112.868236 86.352239)
+ (xy 112.86449 86.341947)
+ (xy 112.772414 86.144489)
+ (xy 112.766931 86.134994)
+ (xy 112.730491 86.082952)
+ (xy 112.720012 86.074576)
+ (xy 112.706566 86.081644)
+ (xy 112.005022 86.783188)
+ (xy 111.997408 86.797132)
+ (xy 111.267356 86.797132)
+ (xy 111.268592 86.794868)
+ (xy 111.268461 86.793035)
+ (xy 111.26421 86.78642)
+ (xy 110.558713 86.080923)
+ (xy 110.546938 86.074493)
+ (xy 110.534923 86.083789)
+ (xy 110.499069 86.134994)
+ (xy 110.493586 86.144489)
+ (xy 110.40151 86.341947)
+ (xy 110.397764 86.352239)
+ (xy 110.341375 86.562688)
+ (xy 110.339472 86.573481)
+ (xy 110.320483 86.790525)
+ (xy 110.320483 86.801475)
+ (xy 97.266194 86.801475)
+ (xy 98.278364 85.789305)
+ (xy 98.282173 85.785652)
+ (xy 98.319385 85.751434)
+ (xy 98.325712 85.745616)
+ (xy 98.347465 85.710532)
+ (xy 98.348526 85.708988)
+ (xy 110.911576 85.708988)
+ (xy 110.918644 85.722434)
+ (xy 111.620188 86.423978)
+ (xy 111.634132 86.431592)
+ (xy 111.635965 86.431461)
+ (xy 111.64258 86.42721)
+ (xy 112.348077 85.721713)
+ (xy 112.354507 85.709938)
+ (xy 112.345211 85.697923)
+ (xy 112.294006 85.662069)
+ (xy 112.284511 85.656586)
+ (xy 112.087053 85.56451)
+ (xy 112.076761 85.560764)
+ (xy 111.866312 85.504375)
+ (xy 111.855519 85.502472)
+ (xy 111.638475 85.483483)
+ (xy 111.627525 85.483483)
+ (xy 111.410481 85.502472)
+ (xy 111.399688 85.504375)
+ (xy 111.189239 85.560764)
+ (xy 111.178947 85.56451)
+ (xy 110.981489 85.656586)
+ (xy 110.971994 85.662069)
+ (xy 110.919952 85.698509)
+ (xy 110.911576 85.708988)
+ (xy 98.348526 85.708988)
+ (xy 98.354182 85.70076)
+ (xy 98.355891 85.698509)
+ (xy 98.379128 85.667895)
+ (xy 98.384224 85.655024)
+ (xy 98.394292 85.635007)
+ (xy 98.397056 85.630549)
+ (xy 98.401582 85.62325)
+ (xy 98.41241 85.585982)
+ (xy 98.413094 85.583626)
+ (xy 98.416939 85.572397)
+ (xy 98.428968 85.542014)
+ (xy 98.428968 85.542012)
+ (xy 98.43213 85.534027)
+ (xy 98.433577 85.520258)
+ (xy 98.43789 85.498276)
+ (xy 98.439908 85.49133)
+ (xy 98.441751 85.484988)
+ (xy 98.4425 85.474788)
+ (xy 98.4425 85.441971)
+ (xy 98.44319 85.4288)
+ (xy 98.44718 85.390838)
+ (xy 98.445475 85.380754)
+ (xy 113.317967 85.380754)
+ (xy 113.331796 85.591749)
+ (xy 113.333217 85.597345)
+ (xy 113.333218 85.59735)
+ (xy 113.381894 85.789008)
+ (xy 113.383845 85.79669)
+ (xy 113.472369 85.988714)
+ (xy 113.594405 86.161391)
+ (xy 113.745865 86.308937)
+ (xy 113.750661 86.312142)
+ (xy 113.750664 86.312144)
+ (xy 113.844674 86.374959)
+ (xy 113.921677 86.426411)
+ (xy 113.926985 86.428692)
+ (xy 113.926986 86.428692)
+ (xy 114.11065 86.5076)
+ (xy 114.110653 86.507601)
+ (xy 114.115953 86.509878)
+ (xy 114.121582 86.511152)
+ (xy 114.121583 86.511152)
+ (xy 114.31655 86.555269)
+ (xy 114.316553 86.555269)
+ (xy 114.322186 86.556544)
+ (xy 114.327957 86.556771)
+ (xy 114.327959 86.556771)
+ (xy 114.389989 86.559208)
+ (xy 114.53347 86.564846)
+ (xy 114.539179 86.564018)
+ (xy 114.539183 86.564018)
+ (xy 114.737015 86.535333)
+ (xy 114.737019 86.535332)
+ (xy 114.74273 86.534504)
+ (xy 114.815276 86.509878)
+ (xy 114.937483 86.468395)
+ (xy 114.937488 86.468393)
+ (xy 114.942955 86.466537)
+ (xy 114.947998 86.463713)
+ (xy 115.122395 86.366046)
+ (xy 115.122399 86.366043)
+ (xy 115.127442 86.363219)
+ (xy 115.290012 86.228012)
+ (xy 115.425219 86.065442)
+ (xy 115.428043 86.060399)
+ (xy 115.428046 86.060395)
+ (xy 115.525713 85.885998)
+ (xy 115.525714 85.885996)
+ (xy 115.528537 85.880955)
+ (xy 115.530393 85.875488)
+ (xy 115.530395 85.875483)
+ (xy 115.585713 85.712518)
+ (xy 115.596504 85.68073)
+ (xy 115.604839 85.62325)
+ (xy 115.626314 85.47514)
+ (xy 115.626314 85.475138)
+ (xy 115.626846 85.47147)
+ (xy 115.628429 85.411)
+ (xy 115.609081 85.20044)
+ (xy 115.60304 85.179018)
+ (xy 115.587128 85.1226)
+ (xy 115.551686 84.996931)
+ (xy 115.543853 84.981046)
+ (xy 115.460719 84.812469)
+ (xy 115.458165 84.80729)
+ (xy 115.363443 84.680442)
+ (xy 115.335104 84.642491)
+ (xy 115.335103 84.64249)
+ (xy 115.331651 84.637867)
+ (xy 115.176381 84.494337)
+ (xy 115.142265 84.472811)
+ (xy 115.002434 84.384584)
+ (xy 115.002433 84.384584)
+ (xy 114.997554 84.381505)
+ (xy 114.80116 84.303152)
+ (xy 114.795503 84.302027)
+ (xy 114.795497 84.302025)
+ (xy 114.599442 84.263028)
+ (xy 114.59944 84.263028)
+ (xy 114.593775 84.261901)
+ (xy 114.588 84.261825)
+ (xy 114.587996 84.261825)
+ (xy 114.481976 84.260437)
+ (xy 114.382346 84.259133)
+ (xy 114.376649 84.260112)
+ (xy 114.376648 84.260112)
+ (xy 114.17965 84.293962)
+ (xy 114.179649 84.293962)
+ (xy 114.173953 84.294941)
+ (xy 113.975575 84.368127)
+ (xy 113.970614 84.371079)
+ (xy 113.970613 84.371079)
+ (xy 113.824732 84.457869)
+ (xy 113.793856 84.476238)
+ (xy 113.634881 84.615655)
+ (xy 113.503976 84.781708)
+ (xy 113.501287 84.786819)
+ (xy 113.501285 84.786822)
+ (xy 113.474057 84.838574)
+ (xy 113.405523 84.968836)
+ (xy 113.34282 85.170773)
+ (xy 113.317967 85.380754)
+ (xy 98.445475 85.380754)
+ (xy 98.444264 85.373596)
+ (xy 98.4425 85.352584)
+ (xy 98.4425 83.995754)
+ (xy 110.477967 83.995754)
+ (xy 110.491796 84.206749)
+ (xy 110.493217 84.212345)
+ (xy 110.493218 84.21235)
+ (xy 110.532781 84.368127)
+ (xy 110.543845 84.41169)
+ (xy 110.632369 84.603714)
+ (xy 110.754405 84.776391)
+ (xy 110.905865 84.923937)
+ (xy 110.910661 84.927142)
+ (xy 110.910664 84.927144)
+ (xy 111.015108 84.996931)
+ (xy 111.081677 85.041411)
+ (xy 111.086985 85.043692)
+ (xy 111.086986 85.043692)
+ (xy 111.27065 85.1226)
+ (xy 111.270653 85.122601)
+ (xy 111.275953 85.124878)
+ (xy 111.281582 85.126152)
+ (xy 111.281583 85.126152)
+ (xy 111.47655 85.170269)
+ (xy 111.476553 85.170269)
+ (xy 111.482186 85.171544)
+ (xy 111.487957 85.171771)
+ (xy 111.487959 85.171771)
+ (xy 111.549989 85.174208)
+ (xy 111.69347 85.179846)
+ (xy 111.699179 85.179018)
+ (xy 111.699183 85.179018)
+ (xy 111.897015 85.150333)
+ (xy 111.897019 85.150332)
+ (xy 111.90273 85.149504)
+ (xy 111.975276 85.124878)
+ (xy 112.097483 85.083395)
+ (xy 112.097488 85.083393)
+ (xy 112.102955 85.081537)
+ (xy 112.112035 85.076452)
+ (xy 112.282395 84.981046)
+ (xy 112.282399 84.981043)
+ (xy 112.287442 84.978219)
+ (xy 112.450012 84.843012)
+ (xy 112.585219 84.680442)
+ (xy 112.588043 84.675399)
+ (xy 112.588046 84.675395)
+ (xy 112.685713 84.500998)
+ (xy 112.685714 84.500996)
+ (xy 112.688537 84.495955)
+ (xy 112.690393 84.490488)
+ (xy 112.690395 84.490483)
+ (xy 112.752049 84.308853)
+ (xy 112.756504 84.29573)
+ (xy 112.757468 84.289087)
+ (xy 112.786314 84.09014)
+ (xy 112.786314 84.090138)
+ (xy 112.786846 84.08647)
+ (xy 112.788429 84.026)
+ (xy 112.769081 83.81544)
+ (xy 112.765895 83.804141)
+ (xy 112.724874 83.658692)
+ (xy 112.711686 83.611931)
+ (xy 112.703853 83.596046)
+ (xy 112.620719 83.427469)
+ (xy 112.618165 83.42229)
+ (xy 112.523443 83.295442)
+ (xy 112.495104 83.257491)
+ (xy 112.495103 83.25749)
+ (xy 112.491651 83.252867)
+ (xy 112.336381 83.109337)
+ (xy 112.157554 82.996505)
+ (xy 111.96116 82.918152)
+ (xy 111.955503 82.917027)
+ (xy 111.955497 82.917025)
+ (xy 111.759442 82.878028)
+ (xy 111.75944 82.878028)
+ (xy 111.753775 82.876901)
+ (xy 111.748 82.876825)
+ (xy 111.747996 82.876825)
+ (xy 111.641976 82.875437)
+ (xy 111.542346 82.874133)
+ (xy 111.536649 82.875112)
+ (xy 111.536648 82.875112)
+ (xy 111.33965 82.908962)
+ (xy 111.339649 82.908962)
+ (xy 111.333953 82.909941)
+ (xy 111.135575 82.983127)
+ (xy 111.130614 82.986079)
+ (xy 111.130613 82.986079)
+ (xy 111.113089 82.996505)
+ (xy 110.953856 83.091238)
+ (xy 110.794881 83.230655)
+ (xy 110.663976 83.396708)
+ (xy 110.661287 83.401819)
+ (xy 110.661285 83.401822)
+ (xy 110.647792 83.427469)
+ (xy 110.565523 83.583836)
+ (xy 110.50282 83.785773)
+ (xy 110.477967 83.995754)
+ (xy 98.4425 83.995754)
+ (xy 98.4425 82.251279)
+ (xy 98.462502 82.183158)
+ (xy 98.506931 82.141347)
+ (xy 98.571442 82.105219)
+ (xy 98.734012 81.970012)
+ (xy 98.869219 81.807442)
+ (xy 98.872043 81.802399)
+ (xy 98.872046 81.802395)
+ (xy 98.969713 81.627998)
+ (xy 98.969714 81.627996)
+ (xy 98.972537 81.622955)
+ (xy 98.974393 81.617488)
+ (xy 98.974395 81.617483)
+ (xy 99.038647 81.4282)
+ (xy 99.040504 81.42273)
+ (xy 99.041333 81.417015)
+ (xy 99.06209 81.27386)
+ (xy 99.09166 81.209315)
+ (xy 99.151432 81.171003)
+ (xy 99.222429 81.171087)
+ (xy 99.282109 81.209542)
+ (xy 99.311525 81.274158)
+ (xy 99.312515 81.283695)
+ (xy 99.315796 81.333749)
+ (xy 99.317217 81.339345)
+ (xy 99.317218 81.33935)
+ (xy 99.364861 81.526942)
+ (xy 99.367845 81.53869)
+ (xy 99.370262 81.543933)
+ (xy 99.416402 81.644018)
+ (xy 99.456369 81.730714)
+ (xy 99.578405 81.903391)
+ (xy 99.729865 82.050937)
+ (xy 99.734661 82.054142)
+ (xy 99.734664 82.054144)
+ (xy 99.865168 82.141344)
+ (xy 99.905677 82.168411)
+ (xy 99.910985 82.170692)
+ (xy 99.910986 82.170692)
+ (xy 100.09465 82.2496)
+ (xy 100.094653 82.249601)
+ (xy 100.099953 82.251878)
+ (xy 100.105582 82.253152)
+ (xy 100.105583 82.253152)
+ (xy 100.30055 82.297269)
+ (xy 100.300553 82.297269)
+ (xy 100.306186 82.298544)
+ (xy 100.311957 82.298771)
+ (xy 100.311959 82.298771)
+ (xy 100.373989 82.301208)
+ (xy 100.51747 82.306846)
+ (xy 100.523179 82.306018)
+ (xy 100.523183 82.306018)
+ (xy 100.721015 82.277333)
+ (xy 100.721019 82.277332)
+ (xy 100.72673 82.276504)
+ (xy 100.805987 82.2496)
+ (xy 100.921483 82.210395)
+ (xy 100.921488 82.210393)
+ (xy 100.926955 82.208537)
+ (xy 100.934126 82.204521)
+ (xy 101.106395 82.108046)
+ (xy 101.106399 82.108043)
+ (xy 101.111442 82.105219)
+ (xy 101.274012 81.970012)
+ (xy 101.409219 81.807442)
+ (xy 101.412043 81.802399)
+ (xy 101.412046 81.802395)
+ (xy 101.509713 81.627998)
+ (xy 101.509714 81.627996)
+ (xy 101.512537 81.622955)
+ (xy 101.514393 81.617488)
+ (xy 101.514395 81.617483)
+ (xy 101.578647 81.4282)
+ (xy 101.580504 81.42273)
+ (xy 101.581333 81.417015)
+ (xy 101.60209 81.27386)
+ (xy 101.63166 81.209315)
+ (xy 101.691432 81.171003)
+ (xy 101.762429 81.171087)
+ (xy 101.822109 81.209542)
+ (xy 101.851525 81.274158)
+ (xy 101.852515 81.283695)
+ (xy 101.855796 81.333749)
+ (xy 101.857217 81.339345)
+ (xy 101.857218 81.33935)
+ (xy 101.904861 81.526942)
+ (xy 101.907845 81.53869)
+ (xy 101.910262 81.543933)
+ (xy 101.956402 81.644018)
+ (xy 101.996369 81.730714)
+ (xy 102.118405 81.903391)
+ (xy 102.269865 82.050937)
+ (xy 102.274661 82.054142)
+ (xy 102.274664 82.054144)
+ (xy 102.405168 82.141344)
+ (xy 102.445677 82.168411)
+ (xy 102.450985 82.170692)
+ (xy 102.450986 82.170692)
+ (xy 102.63465 82.2496)
+ (xy 102.634653 82.249601)
+ (xy 102.639953 82.251878)
+ (xy 102.645582 82.253152)
+ (xy 102.645583 82.253152)
+ (xy 102.84055 82.297269)
+ (xy 102.840553 82.297269)
+ (xy 102.846186 82.298544)
+ (xy 102.851957 82.298771)
+ (xy 102.851959 82.298771)
+ (xy 102.913989 82.301208)
+ (xy 103.05747 82.306846)
+ (xy 103.063179 82.306018)
+ (xy 103.063183 82.306018)
+ (xy 103.261015 82.277333)
+ (xy 103.261019 82.277332)
+ (xy 103.26673 82.276504)
+ (xy 103.345987 82.2496)
+ (xy 103.461483 82.210395)
+ (xy 103.461488 82.210393)
+ (xy 103.466955 82.208537)
+ (xy 103.474126 82.204521)
+ (xy 103.646395 82.108046)
+ (xy 103.646399 82.108043)
+ (xy 103.651442 82.105219)
+ (xy 103.814012 81.970012)
+ (xy 103.949219 81.807442)
+ (xy 103.952043 81.802399)
+ (xy 103.952046 81.802395)
+ (xy 104.049713 81.627998)
+ (xy 104.049714 81.627996)
+ (xy 104.052537 81.622955)
+ (xy 104.054393 81.617488)
+ (xy 104.054395 81.617483)
+ (xy 104.118647 81.4282)
+ (xy 104.120504 81.42273)
+ (xy 104.121333 81.417015)
+ (xy 104.14209 81.27386)
+ (xy 104.17166 81.209315)
+ (xy 104.231432 81.171003)
+ (xy 104.302429 81.171087)
+ (xy 104.362109 81.209542)
+ (xy 104.391525 81.274158)
+ (xy 104.392515 81.283695)
+ (xy 104.395796 81.333749)
+ (xy 104.397217 81.339345)
+ (xy 104.397218 81.33935)
+ (xy 104.444861 81.526942)
+ (xy 104.447845 81.53869)
+ (xy 104.450262 81.543933)
+ (xy 104.496402 81.644018)
+ (xy 104.536369 81.730714)
+ (xy 104.658405 81.903391)
+ (xy 104.809865 82.050937)
+ (xy 104.814661 82.054142)
+ (xy 104.814664 82.054144)
+ (xy 104.945168 82.141344)
+ (xy 104.985677 82.168411)
+ (xy 104.990985 82.170692)
+ (xy 104.990986 82.170692)
+ (xy 105.17465 82.2496)
+ (xy 105.174653 82.249601)
+ (xy 105.179953 82.251878)
+ (xy 105.185582 82.253152)
+ (xy 105.185583 82.253152)
+ (xy 105.38055 82.297269)
+ (xy 105.380553 82.297269)
+ (xy 105.386186 82.298544)
+ (xy 105.391957 82.298771)
+ (xy 105.391959 82.298771)
+ (xy 105.453989 82.301208)
+ (xy 105.59747 82.306846)
+ (xy 105.603179 82.306018)
+ (xy 105.603183 82.306018)
+ (xy 105.801015 82.277333)
+ (xy 105.801019 82.277332)
+ (xy 105.80673 82.276504)
+ (xy 105.885987 82.2496)
+ (xy 106.001483 82.210395)
+ (xy 106.001488 82.210393)
+ (xy 106.006955 82.208537)
+ (xy 106.014126 82.204521)
+ (xy 106.186395 82.108046)
+ (xy 106.186399 82.108043)
+ (xy 106.191442 82.105219)
+ (xy 106.354012 81.970012)
+ (xy 106.489219 81.807442)
+ (xy 106.492043 81.802399)
+ (xy 106.492046 81.802395)
+ (xy 106.589713 81.627998)
+ (xy 106.589714 81.627996)
+ (xy 106.592537 81.622955)
+ (xy 106.594393 81.617488)
+ (xy 106.594395 81.617483)
+ (xy 106.658647 81.4282)
+ (xy 106.660504 81.42273)
+ (xy 106.661333 81.417015)
+ (xy 106.68209 81.27386)
+ (xy 106.71166 81.209315)
+ (xy 106.771432 81.171003)
+ (xy 106.842429 81.171087)
+ (xy 106.902109 81.209542)
+ (xy 106.931525 81.274158)
+ (xy 106.932515 81.283695)
+ (xy 106.935796 81.333749)
+ (xy 106.937217 81.339345)
+ (xy 106.937218 81.33935)
+ (xy 106.984861 81.526942)
+ (xy 106.987845 81.53869)
+ (xy 106.990262 81.543933)
+ (xy 107.036402 81.644018)
+ (xy 107.076369 81.730714)
+ (xy 107.198405 81.903391)
+ (xy 107.349865 82.050937)
+ (xy 107.354661 82.054142)
+ (xy 107.354664 82.054144)
+ (xy 107.485168 82.141344)
+ (xy 107.525677 82.168411)
+ (xy 107.530985 82.170692)
+ (xy 107.530986 82.170692)
+ (xy 107.71465 82.2496)
+ (xy 107.714653 82.249601)
+ (xy 107.719953 82.251878)
+ (xy 107.725582 82.253152)
+ (xy 107.725583 82.253152)
+ (xy 107.92055 82.297269)
+ (xy 107.920553 82.297269)
+ (xy 107.926186 82.298544)
+ (xy 107.931957 82.298771)
+ (xy 107.931959 82.298771)
+ (xy 107.993989 82.301208)
+ (xy 108.13747 82.306846)
+ (xy 108.143179 82.306018)
+ (xy 108.143183 82.306018)
+ (xy 108.341015 82.277333)
+ (xy 108.341019 82.277332)
+ (xy 108.34673 82.276504)
+ (xy 108.425987 82.2496)
+ (xy 108.541483 82.210395)
+ (xy 108.541488 82.210393)
+ (xy 108.546955 82.208537)
+ (xy 108.554126 82.204521)
+ (xy 108.726395 82.108046)
+ (xy 108.726399 82.108043)
+ (xy 108.731442 82.105219)
+ (xy 108.894012 81.970012)
+ (xy 109.029219 81.807442)
+ (xy 109.032043 81.802399)
+ (xy 109.032046 81.802395)
+ (xy 109.129713 81.627998)
+ (xy 109.129714 81.627996)
+ (xy 109.132537 81.622955)
+ (xy 109.134393 81.617488)
+ (xy 109.134395 81.617483)
+ (xy 109.198647 81.4282)
+ (xy 109.200504 81.42273)
+ (xy 109.202375 81.409831)
+ (xy 109.229065 81.225754)
+ (xy 110.477967 81.225754)
+ (xy 110.491796 81.436749)
+ (xy 110.493217 81.442345)
+ (xy 110.493218 81.44235)
+ (xy 110.531829 81.594377)
+ (xy 110.543845 81.64169)
+ (xy 110.546262 81.646933)
+ (xy 110.582692 81.725955)
+ (xy 110.632369 81.833714)
+ (xy 110.754405 82.006391)
+ (xy 110.795999 82.04691)
+ (xy 110.852059 82.101521)
+ (xy 110.905865 82.153937)
+ (xy 110.910661 82.157142)
+ (xy 110.910664 82.157144)
+ (xy 111.000392 82.217098)
+ (xy 111.081677 82.271411)
+ (xy 111.086985 82.273692)
+ (xy 111.086986 82.273692)
+ (xy 111.27065 82.3526)
+ (xy 111.270653 82.352601)
+ (xy 111.275953 82.354878)
+ (xy 111.281582 82.356152)
+ (xy 111.281583 82.356152)
+ (xy 111.47655 82.400269)
+ (xy 111.476553 82.400269)
+ (xy 111.482186 82.401544)
+ (xy 111.487957 82.401771)
+ (xy 111.487959 82.401771)
+ (xy 111.549989 82.404208)
+ (xy 111.69347 82.409846)
+ (xy 111.699179 82.409018)
+ (xy 111.699183 82.409018)
+ (xy 111.897015 82.380333)
+ (xy 111.897019 82.380332)
+ (xy 111.90273 82.379504)
+ (xy 111.981987 82.3526)
+ (xy 112.097483 82.313395)
+ (xy 112.097488 82.313393)
+ (xy 112.102955 82.311537)
+ (xy 112.107998 82.308713)
+ (xy 112.282395 82.211046)
+ (xy 112.282399 82.211043)
+ (xy 112.287442 82.208219)
+ (xy 112.450012 82.073012)
+ (xy 112.585219 81.910442)
+ (xy 112.588043 81.905399)
+ (xy 112.588046 81.905395)
+ (xy 112.685713 81.730998)
+ (xy 112.685714 81.730996)
+ (xy 112.688537 81.725955)
+ (xy 112.690393 81.720488)
+ (xy 112.690395 81.720483)
+ (xy 112.752916 81.5363)
+ (xy 112.756504 81.52573)
+ (xy 112.757669 81.517701)
+ (xy 112.786314 81.32014)
+ (xy 112.786314 81.320138)
+ (xy 112.786846 81.31647)
+ (xy 112.788429 81.256)
+ (xy 112.769081 81.04544)
+ (xy 112.711686 80.841931)
+ (xy 112.700553 80.819354)
+ (xy 112.620719 80.657469)
+ (xy 112.618165 80.65229)
+ (xy 112.522148 80.523708)
+ (xy 112.495104 80.487491)
+ (xy 112.495103 80.48749)
+ (xy 112.491651 80.482867)
+ (xy 112.361098 80.362185)
+ (xy 112.340622 80.343257)
+ (xy 112.34062 80.343255)
+ (xy 112.336381 80.339337)
+ (xy 112.196527 80.251095)
+ (xy 112.162434 80.229584)
+ (xy 112.162433 80.229584)
+ (xy 112.157554 80.226505)
+ (xy 111.96116 80.148152)
+ (xy 111.955503 80.147027)
+ (xy 111.955497 80.147025)
+ (xy 111.759442 80.108028)
+ (xy 111.75944 80.108028)
+ (xy 111.753775 80.106901)
+ (xy 111.748 80.106825)
+ (xy 111.747996 80.106825)
+ (xy 111.641976 80.105437)
+ (xy 111.542346 80.104133)
+ (xy 111.536649 80.105112)
+ (xy 111.536648 80.105112)
+ (xy 111.33965 80.138962)
+ (xy 111.339649 80.138962)
+ (xy 111.333953 80.139941)
+ (xy 111.135575 80.213127)
+ (xy 111.130614 80.216079)
+ (xy 111.130613 80.216079)
+ (xy 110.98094 80.305125)
+ (xy 110.953856 80.321238)
+ (xy 110.794881 80.460655)
+ (xy 110.663976 80.626708)
+ (xy 110.661287 80.631819)
+ (xy 110.661285 80.631822)
+ (xy 110.619714 80.710836)
+ (xy 110.565523 80.813836)
+ (xy 110.50282 81.015773)
+ (xy 110.477967 81.225754)
+ (xy 109.229065 81.225754)
+ (xy 109.230314 81.21714)
+ (xy 109.230314 81.217138)
+ (xy 109.230846 81.21347)
+ (xy 109.232429 81.153)
+ (xy 109.213081 80.94244)
+ (xy 109.155686 80.738931)
+ (xy 109.148612 80.724585)
+ (xy 109.064719 80.554469)
+ (xy 109.062165 80.54929)
+ (xy 108.935651 80.379867)
+ (xy 108.780381 80.236337)
+ (xy 108.601554 80.123505)
+ (xy 108.40516 80.045152)
+ (xy 108.399503 80.044027)
+ (xy 108.399497 80.044025)
+ (xy 108.203442 80.005028)
+ (xy 108.20344 80.005028)
+ (xy 108.197775 80.003901)
+ (xy 108.192 80.003825)
+ (xy 108.191996 80.003825)
+ (xy 108.085976 80.002437)
+ (xy 107.986346 80.001133)
+ (xy 107.980649 80.002112)
+ (xy 107.980648 80.002112)
+ (xy 107.78365 80.035962)
+ (xy 107.783649 80.035962)
+ (xy 107.777953 80.036941)
+ (xy 107.579575 80.110127)
+ (xy 107.574614 80.113079)
+ (xy 107.574613 80.113079)
+ (xy 107.526099 80.141942)
+ (xy 107.397856 80.218238)
+ (xy 107.238881 80.357655)
+ (xy 107.107976 80.523708)
+ (xy 107.105287 80.528819)
+ (xy 107.105285 80.528822)
+ (xy 107.091792 80.554469)
+ (xy 107.009523 80.710836)
+ (xy 106.94682 80.912773)
+ (xy 106.946141 80.91851)
+ (xy 106.932088 81.037239)
+ (xy 106.904217 81.102537)
+ (xy 106.845469 81.142401)
+ (xy 106.774494 81.144174)
+ (xy 106.713828 81.107295)
+ (xy 106.68273 81.043471)
+ (xy 106.68149 81.033958)
+ (xy 106.680347 81.02151)
+ (xy 106.673081 80.94244)
+ (xy 106.615686 80.738931)
+ (xy 106.608612 80.724585)
+ (xy 106.524719 80.554469)
+ (xy 106.522165 80.54929)
+ (xy 106.395651 80.379867)
+ (xy 106.240381 80.236337)
+ (xy 106.061554 80.123505)
+ (xy 105.86516 80.045152)
+ (xy 105.859503 80.044027)
+ (xy 105.859497 80.044025)
+ (xy 105.663442 80.005028)
+ (xy 105.66344 80.005028)
+ (xy 105.657775 80.003901)
+ (xy 105.652 80.003825)
+ (xy 105.651996 80.003825)
+ (xy 105.545976 80.002437)
+ (xy 105.446346 80.001133)
+ (xy 105.440649 80.002112)
+ (xy 105.440648 80.002112)
+ (xy 105.24365 80.035962)
+ (xy 105.243649 80.035962)
+ (xy 105.237953 80.036941)
+ (xy 105.039575 80.110127)
+ (xy 105.034614 80.113079)
+ (xy 105.034613 80.113079)
+ (xy 104.986099 80.141942)
+ (xy 104.857856 80.218238)
+ (xy 104.698881 80.357655)
+ (xy 104.567976 80.523708)
+ (xy 104.565287 80.528819)
+ (xy 104.565285 80.528822)
+ (xy 104.551792 80.554469)
+ (xy 104.469523 80.710836)
+ (xy 104.40682 80.912773)
+ (xy 104.406141 80.91851)
+ (xy 104.392088 81.037239)
+ (xy 104.364217 81.102537)
+ (xy 104.305469 81.142401)
+ (xy 104.234494 81.144174)
+ (xy 104.173828 81.107295)
+ (xy 104.14273 81.043471)
+ (xy 104.14149 81.033958)
+ (xy 104.140347 81.02151)
+ (xy 104.133081 80.94244)
+ (xy 104.075686 80.738931)
+ (xy 104.068612 80.724585)
+ (xy 103.984719 80.554469)
+ (xy 103.982165 80.54929)
+ (xy 103.855651 80.379867)
+ (xy 103.700381 80.236337)
+ (xy 103.521554 80.123505)
+ (xy 103.32516 80.045152)
+ (xy 103.319503 80.044027)
+ (xy 103.319497 80.044025)
+ (xy 103.123442 80.005028)
+ (xy 103.12344 80.005028)
+ (xy 103.117775 80.003901)
+ (xy 103.112 80.003825)
+ (xy 103.111996 80.003825)
+ (xy 103.005976 80.002437)
+ (xy 102.906346 80.001133)
+ (xy 102.900649 80.002112)
+ (xy 102.900648 80.002112)
+ (xy 102.70365 80.035962)
+ (xy 102.703649 80.035962)
+ (xy 102.697953 80.036941)
+ (xy 102.499575 80.110127)
+ (xy 102.494614 80.113079)
+ (xy 102.494613 80.113079)
+ (xy 102.446099 80.141942)
+ (xy 102.317856 80.218238)
+ (xy 102.158881 80.357655)
+ (xy 102.027976 80.523708)
+ (xy 102.025287 80.528819)
+ (xy 102.025285 80.528822)
+ (xy 102.011792 80.554469)
+ (xy 101.929523 80.710836)
+ (xy 101.86682 80.912773)
+ (xy 101.866141 80.91851)
+ (xy 101.852088 81.037239)
+ (xy 101.824217 81.102537)
+ (xy 101.765469 81.142401)
+ (xy 101.694494 81.144174)
+ (xy 101.633828 81.107295)
+ (xy 101.60273 81.043471)
+ (xy 101.60149 81.033958)
+ (xy 101.600347 81.02151)
+ (xy 101.593081 80.94244)
+ (xy 101.535686 80.738931)
+ (xy 101.528612 80.724585)
+ (xy 101.444719 80.554469)
+ (xy 101.442165 80.54929)
+ (xy 101.315651 80.379867)
+ (xy 101.160381 80.236337)
+ (xy 100.981554 80.123505)
+ (xy 100.78516 80.045152)
+ (xy 100.779503 80.044027)
+ (xy 100.779497 80.044025)
+ (xy 100.583442 80.005028)
+ (xy 100.58344 80.005028)
+ (xy 100.577775 80.003901)
+ (xy 100.572 80.003825)
+ (xy 100.571996 80.003825)
+ (xy 100.465976 80.002437)
+ (xy 100.366346 80.001133)
+ (xy 100.360649 80.002112)
+ (xy 100.360648 80.002112)
+ (xy 100.16365 80.035962)
+ (xy 100.163649 80.035962)
+ (xy 100.157953 80.036941)
+ (xy 99.959575 80.110127)
+ (xy 99.954614 80.113079)
+ (xy 99.954613 80.113079)
+ (xy 99.906099 80.141942)
+ (xy 99.777856 80.218238)
+ (xy 99.618881 80.357655)
+ (xy 99.487976 80.523708)
+ (xy 99.485287 80.528819)
+ (xy 99.485285 80.528822)
+ (xy 99.471792 80.554469)
+ (xy 99.389523 80.710836)
+ (xy 99.32682 80.912773)
+ (xy 99.326141 80.91851)
+ (xy 99.312088 81.037239)
+ (xy 99.284217 81.102537)
+ (xy 99.225469 81.142401)
+ (xy 99.154494 81.144174)
+ (xy 99.093828 81.107295)
+ (xy 99.06273 81.043471)
+ (xy 99.06149 81.033958)
+ (xy 99.060347 81.02151)
+ (xy 99.053081 80.94244)
+ (xy 98.995686 80.738931)
+ (xy 98.988612 80.724585)
+ (xy 98.904719 80.554469)
+ (xy 98.902165 80.54929)
+ (xy 98.775651 80.379867)
+ (xy 98.620381 80.236337)
+ (xy 98.441554 80.123505)
+ (xy 98.24516 80.045152)
+ (xy 98.239503 80.044027)
+ (xy 98.239497 80.044025)
+ (xy 98.043442 80.005028)
+ (xy 98.04344 80.005028)
+ (xy 98.037775 80.003901)
+ (xy 98.032 80.003825)
+ (xy 98.031996 80.003825)
+ (xy 97.925976 80.002437)
+ (xy 97.826346 80.001133)
+ (xy 97.820649 80.002112)
+ (xy 97.820648 80.002112)
+ (xy 97.62365 80.035962)
+ (xy 97.623649 80.035962)
+ (xy 97.617953 80.036941)
+ (xy 97.419575 80.110127)
+ (xy 97.414614 80.113079)
+ (xy 97.414613 80.113079)
+ (xy 97.366099 80.141942)
+ (xy 97.237856 80.218238)
+ (xy 97.078881 80.357655)
+ (xy 96.947976 80.523708)
+ (xy 96.945287 80.528819)
+ (xy 96.945285 80.528822)
+ (xy 96.931792 80.554469)
+ (xy 96.849523 80.710836)
+ (xy 96.78682 80.912773)
+ (xy 96.786141 80.91851)
+ (xy 96.772088 81.037239)
+ (xy 96.744217 81.102537)
+ (xy 96.685469 81.142401)
+ (xy 96.614494 81.144174)
+ (xy 96.553828 81.107295)
+ (xy 96.52273 81.043471)
+ (xy 96.52149 81.033958)
+ (xy 96.520347 81.02151)
+ (xy 96.513081 80.94244)
+ (xy 96.455686 80.738931)
+ (xy 96.448612 80.724585)
+ (xy 96.364719 80.554469)
+ (xy 96.362165 80.54929)
+ (xy 96.235651 80.379867)
+ (xy 96.080381 80.236337)
+ (xy 95.901554 80.123505)
+ (xy 95.70516 80.045152)
+ (xy 95.699503 80.044027)
+ (xy 95.699497 80.044025)
+ (xy 95.503442 80.005028)
+ (xy 95.50344 80.005028)
+ (xy 95.497775 80.003901)
+ (xy 95.492 80.003825)
+ (xy 95.491996 80.003825)
+ (xy 95.385976 80.002437)
+ (xy 95.286346 80.001133)
+ (xy 95.280649 80.002112)
+ (xy 95.280648 80.002112)
+ (xy 95.08365 80.035962)
+ (xy 95.083649 80.035962)
+ (xy 95.077953 80.036941)
+ (xy 94.879575 80.110127)
+ (xy 94.874614 80.113079)
+ (xy 94.874613 80.113079)
+ (xy 94.826099 80.141942)
+ (xy 94.697856 80.218238)
+ (xy 94.538881 80.357655)
+ (xy 94.407976 80.523708)
+ (xy 94.405287 80.528819)
+ (xy 94.405285 80.528822)
+ (xy 94.391792 80.554469)
+ (xy 94.309523 80.710836)
+ (xy 94.24682 80.912773)
+ (xy 94.246141 80.91851)
+ (xy 94.232088 81.037239)
+ (xy 94.204217 81.102537)
+ (xy 94.145469 81.142401)
+ (xy 94.074494 81.144174)
+ (xy 94.013828 81.107295)
+ (xy 93.98273 81.043471)
+ (xy 93.98149 81.033958)
+ (xy 93.980347 81.02151)
+ (xy 93.973081 80.94244)
+ (xy 93.915686 80.738931)
+ (xy 93.908612 80.724585)
+ (xy 93.824719 80.554469)
+ (xy 93.822165 80.54929)
+ (xy 93.695651 80.379867)
+ (xy 93.540381 80.236337)
+ (xy 93.361554 80.123505)
+ (xy 93.16516 80.045152)
+ (xy 93.159503 80.044027)
+ (xy 93.159497 80.044025)
+ (xy 92.963442 80.005028)
+ (xy 92.96344 80.005028)
+ (xy 92.957775 80.003901)
+ (xy 92.952 80.003825)
+ (xy 92.951996 80.003825)
+ (xy 92.845976 80.002437)
+ (xy 92.746346 80.001133)
+ (xy 92.740649 80.002112)
+ (xy 92.740648 80.002112)
+ (xy 92.54365 80.035962)
+ (xy 92.543649 80.035962)
+ (xy 92.537953 80.036941)
+ (xy 92.339575 80.110127)
+ (xy 92.334614 80.113079)
+ (xy 92.334613 80.113079)
+ (xy 92.286099 80.141942)
+ (xy 92.157856 80.218238)
+ (xy 91.998881 80.357655)
+ (xy 91.867976 80.523708)
+ (xy 91.865287 80.528819)
+ (xy 91.865285 80.528822)
+ (xy 91.851792 80.554469)
+ (xy 91.769523 80.710836)
+ (xy 91.70682 80.912773)
+ (xy 91.706141 80.91851)
+ (xy 91.692088 81.037239)
+ (xy 91.664217 81.102537)
+ (xy 91.605469 81.142401)
+ (xy 91.534494 81.144174)
+ (xy 91.473828 81.107295)
+ (xy 91.44273 81.043471)
+ (xy 91.44149 81.033958)
+ (xy 91.440347 81.02151)
+ (xy 91.433081 80.94244)
+ (xy 91.375686 80.738931)
+ (xy 91.368612 80.724585)
+ (xy 91.284719 80.554469)
+ (xy 91.282165 80.54929)
+ (xy 91.155651 80.379867)
+ (xy 91.000381 80.236337)
+ (xy 90.821554 80.123505)
+ (xy 90.62516 80.045152)
+ (xy 90.619503 80.044027)
+ (xy 90.619497 80.044025)
+ (xy 90.423442 80.005028)
+ (xy 90.42344 80.005028)
+ (xy 90.417775 80.003901)
+ (xy 90.412001 80.003825)
+ (xy 90.411997 80.003825)
+ (xy 90.411631 80.003821)
+ (xy 90.411502 80.003819)
+ (xy 90.411277 80.00375)
+ (xy 90.406255 80.003222)
+ (xy 90.406359 80.002236)
+ (xy 90.343648 79.982929)
+ (xy 90.29786 79.92867)
+ (xy 90.288675 79.85827)
+ (xy 90.31901 79.794081)
+ (xy 90.324053 79.788735)
+ (xy 92.292034 77.820754)
+ (xy 96.888967 77.820754)
+ (xy 96.902796 78.031749)
+ (xy 96.904217 78.037345)
+ (xy 96.904218 78.03735)
+ (xy 96.926784 78.1262)
+ (xy 96.954845 78.23669)
+ (xy 97.043369 78.428714)
+ (xy 97.165405 78.601391)
+ (xy 97.169539 78.605418)
+ (xy 97.288097 78.720912)
+ (xy 97.316865 78.748937)
+ (xy 97.321661 78.752142)
+ (xy 97.321664 78.752144)
+ (xy 97.452201 78.839366)
+ (xy 97.492677 78.866411)
+ (xy 97.497985 78.868692)
+ (xy 97.497986 78.868692)
+ (xy 97.68165 78.9476)
+ (xy 97.681653 78.947601)
+ (xy 97.686953 78.949878)
+ (xy 97.692582 78.951152)
+ (xy 97.692583 78.951152)
+ (xy 97.88755 78.995269)
+ (xy 97.887553 78.995269)
+ (xy 97.893186 78.996544)
+ (xy 97.898957 78.996771)
+ (xy 97.898959 78.996771)
+ (xy 97.960989 78.999208)
+ (xy 98.10447 79.004846)
+ (xy 98.110179 79.004018)
+ (xy 98.110183 79.004018)
+ (xy 98.308015 78.975333)
+ (xy 98.308019 78.975332)
+ (xy 98.31373 78.974504)
+ (xy 98.392987 78.9476)
+ (xy 98.508483 78.908395)
+ (xy 98.508488 78.908393)
+ (xy 98.513955 78.906537)
+ (xy 98.518998 78.903713)
+ (xy 98.693395 78.806046)
+ (xy 98.693399 78.806043)
+ (xy 98.698442 78.803219)
+ (xy 98.861012 78.668012)
+ (xy 98.996219 78.505442)
+ (xy 98.999043 78.500399)
+ (xy 98.999046 78.500395)
+ (xy 99.096713 78.325998)
+ (xy 99.096714 78.325996)
+ (xy 99.099537 78.320955)
+ (xy 99.101393 78.315488)
+ (xy 99.101395 78.315483)
+ (xy 99.165647 78.1262)
+ (xy 99.167504 78.12073)
+ (xy 99.181242 78.025982)
+ (xy 99.18909 77.97186)
+ (xy 99.21866 77.907315)
+ (xy 99.278432 77.869003)
+ (xy 99.349429 77.869087)
+ (xy 99.409109 77.907542)
+ (xy 99.438525 77.972158)
+ (xy 99.439515 77.981695)
+ (xy 99.442796 78.031749)
+ (xy 99.444217 78.037345)
+ (xy 99.444218 78.03735)
+ (xy 99.466784 78.1262)
+ (xy 99.494845 78.23669)
+ (xy 99.583369 78.428714)
+ (xy 99.705405 78.601391)
+ (xy 99.709539 78.605418)
+ (xy 99.828097 78.720912)
+ (xy 99.856865 78.748937)
+ (xy 99.861661 78.752142)
+ (xy 99.861664 78.752144)
+ (xy 99.992201 78.839366)
+ (xy 100.032677 78.866411)
+ (xy 100.037985 78.868692)
+ (xy 100.037986 78.868692)
+ (xy 100.22165 78.9476)
+ (xy 100.221653 78.947601)
+ (xy 100.226953 78.949878)
+ (xy 100.232582 78.951152)
+ (xy 100.232583 78.951152)
+ (xy 100.42755 78.995269)
+ (xy 100.427553 78.995269)
+ (xy 100.433186 78.996544)
+ (xy 100.438957 78.996771)
+ (xy 100.438959 78.996771)
+ (xy 100.500989 78.999208)
+ (xy 100.64447 79.004846)
+ (xy 100.650179 79.004018)
+ (xy 100.650183 79.004018)
+ (xy 100.848015 78.975333)
+ (xy 100.848019 78.975332)
+ (xy 100.85373 78.974504)
+ (xy 100.932987 78.9476)
+ (xy 101.048483 78.908395)
+ (xy 101.048488 78.908393)
+ (xy 101.053955 78.906537)
+ (xy 101.058998 78.903713)
+ (xy 101.233395 78.806046)
+ (xy 101.233399 78.806043)
+ (xy 101.238442 78.803219)
+ (xy 101.401012 78.668012)
+ (xy 101.536219 78.505442)
+ (xy 101.539043 78.500399)
+ (xy 101.539046 78.500395)
+ (xy 101.636713 78.325998)
+ (xy 101.636714 78.325996)
+ (xy 101.639537 78.320955)
+ (xy 101.641393 78.315488)
+ (xy 101.641395 78.315483)
+ (xy 101.705647 78.1262)
+ (xy 101.707504 78.12073)
+ (xy 101.721242 78.025982)
+ (xy 101.72909 77.97186)
+ (xy 101.75866 77.907315)
+ (xy 101.818432 77.869003)
+ (xy 101.889429 77.869087)
+ (xy 101.949109 77.907542)
+ (xy 101.978525 77.972158)
+ (xy 101.979515 77.981695)
+ (xy 101.982796 78.031749)
+ (xy 101.984217 78.037345)
+ (xy 101.984218 78.03735)
+ (xy 102.006784 78.1262)
+ (xy 102.034845 78.23669)
+ (xy 102.123369 78.428714)
+ (xy 102.245405 78.601391)
+ (xy 102.249539 78.605418)
+ (xy 102.368097 78.720912)
+ (xy 102.396865 78.748937)
+ (xy 102.401661 78.752142)
+ (xy 102.401664 78.752144)
+ (xy 102.532201 78.839366)
+ (xy 102.572677 78.866411)
+ (xy 102.577985 78.868692)
+ (xy 102.577986 78.868692)
+ (xy 102.76165 78.9476)
+ (xy 102.761653 78.947601)
+ (xy 102.766953 78.949878)
+ (xy 102.772582 78.951152)
+ (xy 102.772583 78.951152)
+ (xy 102.96755 78.995269)
+ (xy 102.967553 78.995269)
+ (xy 102.973186 78.996544)
+ (xy 102.978957 78.996771)
+ (xy 102.978959 78.996771)
+ (xy 103.040989 78.999208)
+ (xy 103.18447 79.004846)
+ (xy 103.190179 79.004018)
+ (xy 103.190183 79.004018)
+ (xy 103.388015 78.975333)
+ (xy 103.388019 78.975332)
+ (xy 103.39373 78.974504)
+ (xy 103.472987 78.9476)
+ (xy 103.588483 78.908395)
+ (xy 103.588488 78.908393)
+ (xy 103.593955 78.906537)
+ (xy 103.598998 78.903713)
+ (xy 103.773395 78.806046)
+ (xy 103.773399 78.806043)
+ (xy 103.778442 78.803219)
+ (xy 103.941012 78.668012)
+ (xy 104.076219 78.505442)
+ (xy 104.079043 78.500399)
+ (xy 104.079046 78.500395)
+ (xy 104.176713 78.325998)
+ (xy 104.176714 78.325996)
+ (xy 104.179537 78.320955)
+ (xy 104.181393 78.315488)
+ (xy 104.181395 78.315483)
+ (xy 104.245647 78.1262)
+ (xy 104.247504 78.12073)
+ (xy 104.261242 78.025982)
+ (xy 104.26909 77.97186)
+ (xy 104.29866 77.907315)
+ (xy 104.358432 77.869003)
+ (xy 104.429429 77.869087)
+ (xy 104.489109 77.907542)
+ (xy 104.518525 77.972158)
+ (xy 104.519515 77.981695)
+ (xy 104.522796 78.031749)
+ (xy 104.524217 78.037345)
+ (xy 104.524218 78.03735)
+ (xy 104.546784 78.1262)
+ (xy 104.574845 78.23669)
+ (xy 104.663369 78.428714)
+ (xy 104.785405 78.601391)
+ (xy 104.789539 78.605418)
+ (xy 104.908097 78.720912)
+ (xy 104.936865 78.748937)
+ (xy 104.941661 78.752142)
+ (xy 104.941664 78.752144)
+ (xy 105.072201 78.839366)
+ (xy 105.112677 78.866411)
+ (xy 105.117985 78.868692)
+ (xy 105.117986 78.868692)
+ (xy 105.30165 78.9476)
+ (xy 105.301653 78.947601)
+ (xy 105.306953 78.949878)
+ (xy 105.312582 78.951152)
+ (xy 105.312583 78.951152)
+ (xy 105.50755 78.995269)
+ (xy 105.507553 78.995269)
+ (xy 105.513186 78.996544)
+ (xy 105.518957 78.996771)
+ (xy 105.518959 78.996771)
+ (xy 105.580989 78.999208)
+ (xy 105.72447 79.004846)
+ (xy 105.730179 79.004018)
+ (xy 105.730183 79.004018)
+ (xy 105.928015 78.975333)
+ (xy 105.928019 78.975332)
+ (xy 105.93373 78.974504)
+ (xy 106.012987 78.9476)
+ (xy 106.128483 78.908395)
+ (xy 106.128488 78.908393)
+ (xy 106.133955 78.906537)
+ (xy 106.138998 78.903713)
+ (xy 106.313395 78.806046)
+ (xy 106.313399 78.806043)
+ (xy 106.318442 78.803219)
+ (xy 106.481012 78.668012)
+ (xy 106.616219 78.505442)
+ (xy 106.619043 78.500399)
+ (xy 106.619046 78.500395)
+ (xy 106.716713 78.325998)
+ (xy 106.716714 78.325996)
+ (xy 106.719537 78.320955)
+ (xy 106.721393 78.315488)
+ (xy 106.721395 78.315483)
+ (xy 106.785647 78.1262)
+ (xy 106.787504 78.12073)
+ (xy 106.801243 78.025981)
+ (xy 106.817314 77.91514)
+ (xy 106.817314 77.915138)
+ (xy 106.817846 77.91147)
+ (xy 106.819429 77.851)
+ (xy 106.800081 77.64044)
+ (xy 106.798417 77.634538)
+ (xy 106.754591 77.479145)
+ (xy 106.742686 77.436931)
+ (xy 106.731553 77.414354)
+ (xy 106.651719 77.252469)
+ (xy 106.649165 77.24729)
+ (xy 106.522651 77.077867)
+ (xy 106.367381 76.934337)
+ (xy 106.188554 76.821505)
+ (xy 105.99216 76.743152)
+ (xy 105.986503 76.742027)
+ (xy 105.986497 76.742025)
+ (xy 105.790442 76.703028)
+ (xy 105.79044 76.703028)
+ (xy 105.784775 76.701901)
+ (xy 105.779 76.701825)
+ (xy 105.778996 76.701825)
+ (xy 105.672976 76.700437)
+ (xy 105.573346 76.699133)
+ (xy 105.567649 76.700112)
+ (xy 105.567648 76.700112)
+ (xy 105.37065 76.733962)
+ (xy 105.370649 76.733962)
+ (xy 105.364953 76.734941)
+ (xy 105.166575 76.808127)
+ (xy 105.161614 76.811079)
+ (xy 105.161613 76.811079)
+ (xy 105.144089 76.821505)
+ (xy 104.984856 76.916238)
+ (xy 104.825881 77.055655)
+ (xy 104.694976 77.221708)
+ (xy 104.692287 77.226819)
+ (xy 104.692285 77.226822)
+ (xy 104.678792 77.252469)
+ (xy 104.596523 77.408836)
+ (xy 104.53382 77.610773)
+ (xy 104.533141 77.61651)
+ (xy 104.519088 77.735239)
+ (xy 104.491217 77.800537)
+ (xy 104.432469 77.840401)
+ (xy 104.361494 77.842174)
+ (xy 104.300828 77.805295)
+ (xy 104.26973 77.741471)
+ (xy 104.26849 77.731958)
+ (xy 104.267352 77.719566)
+ (xy 104.260081 77.64044)
+ (xy 104.258417 77.634538)
+ (xy 104.214591 77.479145)
+ (xy 104.202686 77.436931)
+ (xy 104.191553 77.414354)
+ (xy 104.111719 77.252469)
+ (xy 104.109165 77.24729)
+ (xy 103.982651 77.077867)
+ (xy 103.827381 76.934337)
+ (xy 103.648554 76.821505)
+ (xy 103.45216 76.743152)
+ (xy 103.446503 76.742027)
+ (xy 103.446497 76.742025)
+ (xy 103.250442 76.703028)
+ (xy 103.25044 76.703028)
+ (xy 103.244775 76.701901)
+ (xy 103.239 76.701825)
+ (xy 103.238996 76.701825)
+ (xy 103.132976 76.700437)
+ (xy 103.033346 76.699133)
+ (xy 103.027649 76.700112)
+ (xy 103.027648 76.700112)
+ (xy 102.83065 76.733962)
+ (xy 102.830649 76.733962)
+ (xy 102.824953 76.734941)
+ (xy 102.626575 76.808127)
+ (xy 102.621614 76.811079)
+ (xy 102.621613 76.811079)
+ (xy 102.604089 76.821505)
+ (xy 102.444856 76.916238)
+ (xy 102.285881 77.055655)
+ (xy 102.154976 77.221708)
+ (xy 102.152287 77.226819)
+ (xy 102.152285 77.226822)
+ (xy 102.138792 77.252469)
+ (xy 102.056523 77.408836)
+ (xy 101.99382 77.610773)
+ (xy 101.993141 77.61651)
+ (xy 101.979088 77.735239)
+ (xy 101.951217 77.800537)
+ (xy 101.892469 77.840401)
+ (xy 101.821494 77.842174)
+ (xy 101.760828 77.805295)
+ (xy 101.72973 77.741471)
+ (xy 101.72849 77.731958)
+ (xy 101.727352 77.719566)
+ (xy 101.720081 77.64044)
+ (xy 101.718417 77.634538)
+ (xy 101.674591 77.479145)
+ (xy 101.662686 77.436931)
+ (xy 101.651553 77.414354)
+ (xy 101.571719 77.252469)
+ (xy 101.569165 77.24729)
+ (xy 101.442651 77.077867)
+ (xy 101.287381 76.934337)
+ (xy 101.108554 76.821505)
+ (xy 100.91216 76.743152)
+ (xy 100.906503 76.742027)
+ (xy 100.906497 76.742025)
+ (xy 100.710442 76.703028)
+ (xy 100.71044 76.703028)
+ (xy 100.704775 76.701901)
+ (xy 100.699 76.701825)
+ (xy 100.698996 76.701825)
+ (xy 100.592976 76.700437)
+ (xy 100.493346 76.699133)
+ (xy 100.487649 76.700112)
+ (xy 100.487648 76.700112)
+ (xy 100.29065 76.733962)
+ (xy 100.290649 76.733962)
+ (xy 100.284953 76.734941)
+ (xy 100.086575 76.808127)
+ (xy 100.081614 76.811079)
+ (xy 100.081613 76.811079)
+ (xy 100.064089 76.821505)
+ (xy 99.904856 76.916238)
+ (xy 99.745881 77.055655)
+ (xy 99.614976 77.221708)
+ (xy 99.612287 77.226819)
+ (xy 99.612285 77.226822)
+ (xy 99.598792 77.252469)
+ (xy 99.516523 77.408836)
+ (xy 99.45382 77.610773)
+ (xy 99.453141 77.61651)
+ (xy 99.439088 77.735239)
+ (xy 99.411217 77.800537)
+ (xy 99.352469 77.840401)
+ (xy 99.281494 77.842174)
+ (xy 99.220828 77.805295)
+ (xy 99.18973 77.741471)
+ (xy 99.18849 77.731958)
+ (xy 99.187352 77.719566)
+ (xy 99.180081 77.64044)
+ (xy 99.178417 77.634538)
+ (xy 99.134591 77.479145)
+ (xy 99.122686 77.436931)
+ (xy 99.111553 77.414354)
+ (xy 99.031719 77.252469)
+ (xy 99.029165 77.24729)
+ (xy 98.902651 77.077867)
+ (xy 98.747381 76.934337)
+ (xy 98.568554 76.821505)
+ (xy 98.37216 76.743152)
+ (xy 98.366503 76.742027)
+ (xy 98.366497 76.742025)
+ (xy 98.170442 76.703028)
+ (xy 98.17044 76.703028)
+ (xy 98.164775 76.701901)
+ (xy 98.159 76.701825)
+ (xy 98.158996 76.701825)
+ (xy 98.052976 76.700437)
+ (xy 97.953346 76.699133)
+ (xy 97.947649 76.700112)
+ (xy 97.947648 76.700112)
+ (xy 97.75065 76.733962)
+ (xy 97.750649 76.733962)
+ (xy 97.744953 76.734941)
+ (xy 97.546575 76.808127)
+ (xy 97.541614 76.811079)
+ (xy 97.541613 76.811079)
+ (xy 97.524089 76.821505)
+ (xy 97.364856 76.916238)
+ (xy 97.205881 77.055655)
+ (xy 97.074976 77.221708)
+ (xy 97.072287 77.226819)
+ (xy 97.072285 77.226822)
+ (xy 97.058792 77.252469)
+ (xy 96.976523 77.408836)
+ (xy 96.91382 77.610773)
+ (xy 96.888967 77.820754)
+ (xy 92.292034 77.820754)
+ (xy 94.041383 76.071405)
+ (xy 94.103695 76.037379)
+ (xy 94.130478 76.0345)
+ (xy 107.926521 76.0345)
+ (xy 107.994642 76.054502)
+ (xy 108.015616 76.071405)
+ (xy 110.445595 78.501384)
+ (xy 110.479621 78.563696)
+ (xy 110.4825 78.590479)
+ (xy 110.4825 79.319218)
+ (xy 110.48317 79.323768)
+ (xy 110.48317 79.323771)
+ (xy 110.490203 79.371542)
+ (xy 110.492642 79.388112)
+ (xy 110.496958 79.396902)
+ (xy 110.529163 79.462496)
+ (xy 110.544068 79.492855)
+ (xy 110.62665 79.575293)
+ (xy 110.731482 79.626536)
+ (xy 110.761973 79.630984)
+ (xy 110.795256 79.63584)
+ (xy 110.79526 79.63584)
+ (xy 110.799782 79.6365)
+ (xy 112.466218 79.6365)
+ (xy 112.470768 79.63583)
+ (xy 112.470771 79.63583)
+ (xy 112.525426 79.627784)
+ (xy 112.525427 79.627784)
+ (xy 112.535112 79.626358)
+ (xy 112.585008 79.60186)
+ (xy 112.630507 79.579522)
+ (xy 112.630509 79.579521)
+ (xy 112.639855 79.574932)
+ (xy 112.688783 79.525918)
+ (xy 112.751065 79.491839)
+ (xy 112.821885 79.496842)
+ (xy 112.867051 79.52584)
+ (xy 113.293973 79.952761)
+ (xy 113.327998 80.015074)
+ (xy 113.330608 80.033617)
+ (xy 113.331796 80.051749)
+ (xy 113.333217 80.057345)
+ (xy 113.333218 80.05735)
+ (xy 113.382424 80.251095)
+ (xy 113.383845 80.25669)
+ (xy 113.472369 80.448714)
+ (xy 113.594405 80.621391)
+ (xy 113.598539 80.625418)
+ (xy 113.709744 80.733749)
+ (xy 113.745865 80.768937)
+ (xy 113.750661 80.772142)
+ (xy 113.750664 80.772144)
+ (xy 113.855108 80.841931)
+ (xy 113.921677 80.886411)
+ (xy 113.926985 80.888692)
+ (xy 113.926986 80.888692)
+ (xy 114.11065 80.9676)
+ (xy 114.110653 80.967601)
+ (xy 114.115953 80.969878)
+ (xy 114.121582 80.971152)
+ (xy 114.121583 80.971152)
+ (xy 114.31655 81.015269)
+ (xy 114.316553 81.015269)
+ (xy 114.322186 81.016544)
+ (xy 114.327957 81.016771)
+ (xy 114.327959 81.016771)
+ (xy 114.370307 81.018435)
+ (xy 114.437589 81.041097)
+ (xy 114.454454 81.055243)
+ (xy 114.675915 81.276704)
+ (xy 114.709941 81.339016)
+ (xy 114.704876 81.409831)
+ (xy 114.662329 81.466667)
+ (xy 114.595809 81.491478)
+ (xy 114.585171 81.491788)
+ (xy 114.478481 81.490392)
+ (xy 114.382346 81.489133)
+ (xy 114.376649 81.490112)
+ (xy 114.376648 81.490112)
+ (xy 114.17965 81.523962)
+ (xy 114.179649 81.523962)
+ (xy 114.173953 81.524941)
+ (xy 113.975575 81.598127)
+ (xy 113.970614 81.601079)
+ (xy 113.970613 81.601079)
+ (xy 113.806414 81.698767)
+ (xy 113.793856 81.706238)
+ (xy 113.634881 81.845655)
+ (xy 113.503976 82.011708)
+ (xy 113.501287 82.016819)
+ (xy 113.501285 82.016822)
+ (xy 113.481649 82.054144)
+ (xy 113.405523 82.198836)
+ (xy 113.34282 82.400773)
+ (xy 113.317967 82.610754)
+ (xy 113.331796 82.821749)
+ (xy 113.333217 82.827345)
+ (xy 113.333218 82.82735)
+ (xy 113.356823 82.920292)
+ (xy 113.383845 83.02669)
+ (xy 113.472369 83.218714)
+ (xy 113.594405 83.391391)
+ (xy 113.745865 83.538937)
+ (xy 113.750661 83.542142)
+ (xy 113.750664 83.542144)
+ (xy 113.855108 83.611931)
+ (xy 113.921677 83.656411)
+ (xy 113.926985 83.658692)
+ (xy 113.926986 83.658692)
+ (xy 114.11065 83.7376)
+ (xy 114.110653 83.737601)
+ (xy 114.115953 83.739878)
+ (xy 114.121582 83.741152)
+ (xy 114.121583 83.741152)
+ (xy 114.31655 83.785269)
+ (xy 114.316553 83.785269)
+ (xy 114.322186 83.786544)
+ (xy 114.327957 83.786771)
+ (xy 114.327959 83.786771)
+ (xy 114.389989 83.789208)
+ (xy 114.53347 83.794846)
+ (xy 114.539179 83.794018)
+ (xy 114.539183 83.794018)
+ (xy 114.737015 83.765333)
+ (xy 114.737019 83.765332)
+ (xy 114.74273 83.764504)
+ (xy 114.821987 83.7376)
+ (xy 114.937483 83.698395)
+ (xy 114.937488 83.698393)
+ (xy 114.942955 83.696537)
+ (xy 114.947998 83.693713)
+ (xy 115.122395 83.596046)
+ (xy 115.122399 83.596043)
+ (xy 115.127442 83.593219)
+ (xy 115.290012 83.458012)
+ (xy 115.425219 83.295442)
+ (xy 115.428043 83.290399)
+ (xy 115.428046 83.290395)
+ (xy 115.525713 83.115998)
+ (xy 115.525714 83.115996)
+ (xy 115.528537 83.110955)
+ (xy 115.530393 83.105488)
+ (xy 115.530395 83.105483)
+ (xy 115.593258 82.920292)
+ (xy 115.596504 82.91073)
+ (xy 115.601669 82.875112)
+ (xy 115.626314 82.70514)
+ (xy 115.626314 82.705138)
+ (xy 115.626846 82.70147)
+ (xy 115.628429 82.641)
+ (xy 115.618655 82.534634)
+ (xy 115.632339 82.464969)
+ (xy 115.681516 82.413762)
+ (xy 115.75057 82.39727)
+ (xy 115.817579 82.42073)
+ (xy 115.833221 82.43401)
+ (xy 115.952595 82.553384)
+ (xy 115.986621 82.615696)
+ (xy 115.9895 82.642479)
+ (xy 115.9895 97.131521)
+ (xy 115.969498 97.199642)
+ (xy 115.9526 97.220611)
+ (xy 115.000616 98.172596)
+ (xy 114.938305 98.20662)
+ (xy 114.911522 98.2095)
+ (xy 113.221479 98.2095)
+ (xy 113.153358 98.189498)
+ (xy 113.132384 98.172595)
+ (xy 112.815845 97.856056)
+ (xy 112.781819 97.793744)
+ (xy 112.779469 97.77849)
+ (xy 112.76961 97.671197)
+ (xy 112.769081 97.66544)
+ (xy 112.76304 97.644018)
+ (xy 112.736071 97.548395)
+ (xy 112.711686 97.461931)
+ (xy 112.708541 97.455552)
+ (xy 112.620719 97.277469)
+ (xy 112.618165 97.27229)
+ (xy 112.521912 97.143391)
+ (xy 112.495104 97.107491)
+ (xy 112.495103 97.10749)
+ (xy 112.491651 97.102867)
+ (xy 112.390495 97.009359)
+ (xy 112.340622 96.963257)
+ (xy 112.34062 96.963255)
+ (xy 112.336381 96.959337)
+ (xy 112.331498 96.956256)
+ (xy 112.162434 96.849584)
+ (xy 112.162433 96.849584)
+ (xy 112.157554 96.846505)
+ (xy 111.96116 96.768152)
+ (xy 111.955503 96.767027)
+ (xy 111.955497 96.767025)
+ (xy 111.759442 96.728028)
+ (xy 111.75944 96.728028)
+ (xy 111.753775 96.726901)
+ (xy 111.748 96.726825)
+ (xy 111.747996 96.726825)
+ (xy 111.641976 96.725437)
+ (xy 111.542346 96.724133)
+ (xy 111.536649 96.725112)
+ (xy 111.536648 96.725112)
+ (xy 111.33965 96.758962)
+ (xy 111.339649 96.758962)
+ (xy 111.333953 96.759941)
+ (xy 111.135575 96.833127)
+ (xy 111.130614 96.836079)
+ (xy 111.130613 96.836079)
+ (xy 111.113089 96.846505)
+ (xy 110.953856 96.941238)
+ (xy 110.794881 97.080655)
+ (xy 110.663976 97.246708)
+ (xy 110.661287 97.251819)
+ (xy 110.661285 97.251822)
+ (xy 110.638822 97.294518)
+ (xy 110.565523 97.433836)
+ (xy 110.530503 97.546619)
+ (xy 110.505697 97.626509)
+ (xy 110.50282 97.635773)
+ (xy 110.477967 97.845754)
+ (xy 110.491796 98.056749)
+ (xy 110.493217 98.062345)
+ (xy 110.493218 98.06235)
+ (xy 110.521217 98.172595)
+ (xy 110.543845 98.26169)
+ (xy 110.632369 98.453714)
+ (xy 110.754405 98.626391)
+ (xy 110.905865 98.773937)
+ (xy 110.910661 98.777142)
+ (xy 110.910664 98.777144)
+ (xy 111.053936 98.872875)
+ (xy 111.081677 98.891411)
+ (xy 111.086985 98.893692)
+ (xy 111.086986 98.893692)
+ (xy 111.27065 98.9726)
+ (xy 111.270653 98.972601)
+ (xy 111.275953 98.974878)
+ (xy 111.281582 98.976152)
+ (xy 111.281583 98.976152)
+ (xy 111.47655 99.020269)
+ (xy 111.476553 99.020269)
+ (xy 111.482186 99.021544)
+ (xy 111.487957 99.021771)
+ (xy 111.487959 99.021771)
+ (xy 111.530306 99.023435)
+ (xy 111.597589 99.046097)
+ (xy 111.614453 99.060242)
+ (xy 112.186568 99.632356)
+ (xy 112.193711 99.640124)
+ (xy 112.22702 99.67954)
+ (xy 112.232444 99.683687)
+ (xy 112.232445 99.683688)
+ (xy 112.290929 99.728402)
+ (xy 112.293345 99.730295)
+ (xy 112.298365 99.734332)
+ (xy 112.350753 99.776454)
+ (xy 112.350756 99.776456)
+ (xy 112.356073 99.780731)
+ (xy 112.36219 99.783768)
+ (xy 112.364802 99.785438)
+ (xy 112.365196 99.785714)
+ (xy 112.36532 99.785791)
+ (xy 112.365742 99.786023)
+ (xy 112.368395 99.78763)
+ (xy 112.37382 99.791777)
+ (xy 112.44284 99.823961)
+ (xy 112.44673 99.825775)
+ (xy 112.449505 99.82711)
+ (xy 112.51548 99.859861)
+ (xy 112.515484 99.859863)
+ (xy 112.521593 99.862895)
+ (xy 112.528218 99.864547)
+ (xy 112.531121 99.865615)
+ (xy 112.531573 99.865803)
+ (xy 112.531708 99.865851)
+ (xy 112.532167 99.865986)
+ (xy 112.535108 99.866987)
+ (xy 112.541297 99.869873)
+ (xy 112.54796 99.871362)
+ (xy 112.547959 99.871362)
+ (xy 112.619831 99.887427)
+ (xy 112.622828 99.888136)
+ (xy 112.688938 99.904619)
+ (xy 112.700894 99.9076)
+ (xy 112.707714 99.90779)
+ (xy 112.710792 99.908212)
+ (xy 112.711709 99.908377)
+ (xy 112.716585 99.909054)
+ (xy 112.721637 99.910183)
+ (xy 112.727307 99.9105)
+ (xy 112.802964 99.9105)
+ (xy 112.806483 99.910549)
+ (xy 112.885611 99.912759)
+ (xy 112.892317 99.91148)
+ (xy 112.899114 99.910933)
+ (xy 112.899157 99.911462)
+ (xy 112.909363 99.9105)
+ (xy 115.274938 99.9105)
+ (xy 115.285479 99.910942)
+ (xy 115.336902 99.91526)
+ (xy 115.343662 99.914358)
+ (xy 115.343666 99.914358)
+ (xy 115.416659 99.904619)
+ (xy 115.419713 99.904249)
+ (xy 115.492928 99.896295)
+ (xy 115.492931 99.896294)
+ (xy 115.499709 99.895558)
+ (xy 115.506169 99.893384)
+ (xy 115.509217 99.892714)
+ (xy 115.509678 99.892633)
+ (xy 115.509829 99.892597)
+ (xy 115.510288 99.892464)
+ (xy 115.513307 99.891722)
+ (xy 115.520069 99.89082)
+ (xy 115.526479 99.888487)
+ (xy 115.526483 99.888486)
+ (xy 115.595671 99.863303)
+ (xy 115.598577 99.862285)
+ (xy 115.668377 99.838795)
+ (xy 115.668379 99.838794)
+ (xy 115.674848 99.836617)
+ (xy 115.680702 99.8331)
+ (xy 115.683514 99.8318)
+ (xy 115.683957 99.831618)
+ (xy 115.684116 99.831542)
+ (xy 115.684534 99.831314)
+ (xy 115.687303 99.829951)
+ (xy 115.693715 99.827618)
+ (xy 115.699473 99.823964)
+ (xy 115.699479 99.823961)
+ (xy 115.761644 99.78451)
+ (xy 115.764263 99.782892)
+ (xy 115.827393 99.744959)
+ (xy 115.827395 99.744958)
+ (xy 115.833244 99.741443)
+ (xy 115.838203 99.736754)
+ (xy 115.840682 99.734872)
+ (xy 115.841459 99.734332)
+ (xy 115.845369 99.731375)
+ (xy 115.849738 99.728602)
+ (xy 115.853972 99.724817)
+ (xy 115.907478 99.671311)
+ (xy 115.91 99.668858)
+ (xy 115.962549 99.619165)
+ (xy 115.962551 99.619163)
+ (xy 115.967507 99.614476)
+ (xy 115.971341 99.608834)
+ (xy 115.975767 99.603634)
+ (xy 115.976171 99.603978)
+ (xy 115.982707 99.596082)
+ (xy 117.412356 98.166433)
+ (xy 117.420123 98.15929)
+ (xy 117.454327 98.130385)
+ (xy 117.45954 98.12598)
+ (xy 117.508426 98.06204)
+ (xy 117.510317 98.059629)
+ (xy 117.556455 98.002246)
+ (xy 117.556461 98.002236)
+ (xy 117.56073 97.996927)
+ (xy 117.56376 97.990823)
+ (xy 117.565431 97.98821)
+ (xy 117.565701 97.987824)
+ (xy 117.565802 97.987661)
+ (xy 117.566022 97.987262)
+ (xy 117.567639 97.984592)
+ (xy 117.571777 97.97918)
+ (xy 117.574658 97.973003)
+ (xy 117.574661 97.972997)
+ (xy 117.605787 97.906248)
+ (xy 117.607121 97.903475)
+ (xy 117.639863 97.837516)
+ (xy 117.642895 97.831408)
+ (xy 117.644545 97.824792)
+ (xy 117.645618 97.821874)
+ (xy 117.645796 97.821447)
+ (xy 117.645858 97.82127)
+ (xy 117.645992 97.820815)
+ (xy 117.646988 97.817889)
+ (xy 117.649873 97.811703)
+ (xy 117.667435 97.733132)
+ (xy 117.668141 97.73015)
+ (xy 117.685948 97.658731)
+ (xy 117.685949 97.658726)
+ (xy 117.687599 97.652107)
+ (xy 117.687789 97.645288)
+ (xy 117.688211 97.64221)
+ (xy 117.68838 97.641271)
+ (xy 117.689054 97.636415)
+ (xy 117.690183 97.631363)
+ (xy 117.6905 97.625693)
+ (xy 117.6905 97.550001)
+ (xy 117.690549 97.546483)
+ (xy 117.690911 97.533536)
+ (xy 117.692758 97.467389)
+ (xy 117.691479 97.460683)
+ (xy 117.690932 97.453886)
+ (xy 117.691466 97.453843)
+ (xy 117.6905 97.443643)
+ (xy 117.6905 82.279062)
+ (xy 117.690942 82.268518)
+ (xy 117.694689 82.223895)
+ (xy 117.69526 82.217098)
+ (xy 117.694118 82.208537)
+ (xy 117.684619 82.137341)
+ (xy 117.684249 82.134287)
+ (xy 117.676295 82.061072)
+ (xy 117.676294 82.061069)
+ (xy 117.675558 82.054291)
+ (xy 117.673384 82.047831)
+ (xy 117.672714 82.044783)
+ (xy 117.672631 82.044315)
+ (xy 117.672597 82.044166)
+ (xy 117.672463 82.043707)
+ (xy 117.671722 82.04069)
+ (xy 117.67082 82.033931)
+ (xy 117.668489 82.027527)
+ (xy 117.668487 82.027518)
+ (xy 117.64329 81.958289)
+ (xy 117.642272 81.955384)
+ (xy 117.618793 81.885617)
+ (xy 117.618792 81.885615)
+ (xy 117.616617 81.879152)
+ (xy 117.613104 81.873306)
+ (xy 117.611802 81.870487)
+ (xy 117.61162 81.870045)
+ (xy 117.611551 81.869901)
+ (xy 117.611324 81.869485)
+ (xy 117.609955 81.866702)
+ (xy 117.607619 81.860285)
+ (xy 117.60121 81.850185)
+ (xy 117.564495 81.792333)
+ (xy 117.562877 81.789713)
+ (xy 117.524959 81.726608)
+ (xy 117.521443 81.720756)
+ (xy 117.51675 81.715793)
+ (xy 117.514872 81.713319)
+ (xy 117.514335 81.712546)
+ (xy 117.511378 81.708636)
+ (xy 117.508602 81.704262)
+ (xy 117.504817 81.700029)
+ (xy 117.451328 81.64654)
+ (xy 117.448875 81.644018)
+ (xy 117.399165 81.591451)
+ (xy 117.399163 81.591449)
+ (xy 117.394476 81.586493)
+ (xy 117.388835 81.582659)
+ (xy 117.383634 81.578233)
+ (xy 117.383978 81.577828)
+ (xy 117.376079 81.571291)
+ (xy 115.655845 79.851057)
+ (xy 115.621819 79.788745)
+ (xy 115.619469 79.773491)
+ (xy 115.60961 79.666197)
+ (xy 115.609081 79.66044)
+ (xy 115.551686 79.456931)
+ (xy 115.532834 79.418702)
+ (xy 115.460719 79.272469)
+ (xy 115.458165 79.26729)
+ (xy 115.331651 79.097867)
+ (xy 115.220661 78.995269)
+ (xy 115.180622 78.958257)
+ (xy 115.18062 78.958255)
+ (xy 115.176381 78.954337)
+ (xy 115.040643 78.868692)
+ (xy 115.002434 78.844584)
+ (xy 115.002433 78.844584)
+ (xy 114.997554 78.841505)
+ (xy 114.80116 78.763152)
+ (xy 114.795503 78.762027)
+ (xy 114.795497 78.762025)
+ (xy 114.599442 78.723028)
+ (xy 114.59944 78.723028)
+ (xy 114.593775 78.721901)
+ (xy 114.588 78.721825)
+ (xy 114.587996 78.721825)
+ (xy 114.518251 78.720912)
+ (xy 114.450398 78.70002)
+ (xy 114.430806 78.684018)
+ (xy 113.660438 77.91365)
+ (xy 113.653295 77.905883)
+ (xy 113.624386 77.871674)
+ (xy 113.61998 77.86646)
+ (xy 113.556062 77.817591)
+ (xy 113.553647 77.815698)
+ (xy 113.496247 77.769546)
+ (xy 113.496244 77.769544)
+ (xy 113.490927 77.765269)
+ (xy 113.48481 77.762232)
+ (xy 113.482198 77.760562)
+ (xy 113.481804 77.760286)
+ (xy 113.48168 77.760209)
+ (xy 113.481258 77.759977)
+ (xy 113.478605 77.75837)
+ (xy 113.47318 77.754223)
+ (xy 113.400262 77.720221)
+ (xy 113.397495 77.71889)
+ (xy 113.33152 77.686139)
+ (xy 113.331516 77.686137)
+ (xy 113.325407 77.683105)
+ (xy 113.318782 77.681453)
+ (xy 113.315879 77.680385)
+ (xy 113.315427 77.680197)
+ (xy 113.315292 77.680149)
+ (xy 113.314833 77.680014)
+ (xy 113.311892 77.679013)
+ (xy 113.305703 77.676127)
+ (xy 113.283246 77.671107)
+ (xy 113.227169 77.658573)
+ (xy 113.224172 77.657864)
+ (xy 113.152728 77.640051)
+ (xy 113.152727 77.640051)
+ (xy 113.146106 77.6384)
+ (xy 113.139286 77.63821)
+ (xy 113.136208 77.637788)
+ (xy 113.135291 77.637623)
+ (xy 113.130415 77.636946)
+ (xy 113.125363 77.635817)
+ (xy 113.119693 77.6355)
+ (xy 113.044036 77.6355)
+ (xy 113.040518 77.635451)
+ (xy 113.038788 77.635403)
+ (xy 112.961389 77.633241)
+ (xy 112.954683 77.63452)
+ (xy 112.947886 77.635067)
+ (xy 112.947843 77.634538)
+ (xy 112.937637 77.6355)
+ (xy 112.877203 77.6355)
+ (xy 112.809082 77.615498)
+ (xy 112.7641 77.565031)
+ (xy 112.726522 77.488493)
+ (xy 112.726521 77.488491)
+ (xy 112.721932 77.479145)
+ (xy 112.63935 77.396707)
+ (xy 112.534518 77.345464)
+ (xy 112.504027 77.341016)
+ (xy 112.470744 77.33616)
+ (xy 112.47074 77.33616)
+ (xy 112.466218 77.3355)
+ (xy 111.737479 77.3355)
+ (xy 111.669358 77.315498)
+ (xy 111.648384 77.298595)
+ (xy 108.961438 74.61165)
+ (xy 108.954295 74.603883)
+ (xy 108.925386 74.569674)
+ (xy 108.92098 74.56446)
+ (xy 108.857062 74.515591)
+ (xy 108.854647 74.513698)
+ (xy 108.849766 74.509773)
+ (xy 108.836418 74.499041)
+ (xy 108.797247 74.467546)
+ (xy 108.797244 74.467544)
+ (xy 108.791927 74.463269)
+ (xy 108.78581 74.460232)
+ (xy 108.783198 74.458562)
+ (xy 108.782804 74.458286)
+ (xy 108.78268 74.458209)
+ (xy 108.782258 74.457977)
+ (xy 108.779605 74.45637)
+ (xy 108.77418 74.452223)
+ (xy 108.701262 74.418221)
+ (xy 108.698495 74.41689)
+ (xy 108.63252 74.384139)
+ (xy 108.632516 74.384137)
+ (xy 108.626407 74.381105)
+ (xy 108.619782 74.379453)
+ (xy 108.616879 74.378385)
+ (xy 108.616427 74.378197)
+ (xy 108.616292 74.378149)
+ (xy 108.615833 74.378014)
+ (xy 108.612892 74.377013)
+ (xy 108.606703 74.374127)
+ (xy 108.584246 74.369107)
+ (xy 108.528169 74.356573)
+ (xy 108.525172 74.355864)
+ (xy 108.453728 74.338051)
+ (xy 108.453727 74.338051)
+ (xy 108.447106 74.3364)
+ (xy 108.440286 74.33621)
+ (xy 108.437208 74.335788)
+ (xy 108.436291 74.335623)
+ (xy 108.431415 74.334946)
+ (xy 108.426363 74.333817)
+ (xy 108.420693 74.3335)
+ (xy 108.345036 74.3335)
+ (xy 108.341518 74.333451)
+ (xy 108.339788 74.333403)
+ (xy 108.262389 74.331241)
+ (xy 108.255683 74.33252)
+ (xy 108.248886 74.333067)
+ (xy 108.248843 74.332538)
+ (xy 108.238637 74.3335)
+ (xy 93.767062 74.3335)
+ (xy 93.756521 74.333058)
+ (xy 93.705098 74.32874)
+ (xy 93.698338 74.329642)
+ (xy 93.698334 74.329642)
+ (xy 93.625341 74.339381)
+ (xy 93.622287 74.339751)
+ (xy 93.549072 74.347705)
+ (xy 93.549069 74.347706)
+ (xy 93.542291 74.348442)
+ (xy 93.535831 74.350616)
+ (xy 93.532783 74.351286)
+ (xy 93.532322 74.351367)
+ (xy 93.532171 74.351403)
+ (xy 93.531712 74.351536)
+ (xy 93.528693 74.352278)
+ (xy 93.521931 74.35318)
+ (xy 93.515521 74.355513)
+ (xy 93.515517 74.355514)
+ (xy 93.446329 74.380697)
+ (xy 93.443423 74.381715)
+ (xy 93.373623 74.405205)
+ (xy 93.373621 74.405206)
+ (xy 93.367152 74.407383)
+ (xy 93.361298 74.4109)
+ (xy 93.358486 74.4122)
+ (xy 93.358043 74.412382)
+ (xy 93.357884 74.412458)
+ (xy 93.357466 74.412686)
+ (xy 93.354697 74.414049)
+ (xy 93.348285 74.416382)
+ (xy 93.342527 74.420036)
+ (xy 93.342521 74.420039)
+ (xy 93.280356 74.45949)
+ (xy 93.277737 74.461108)
+ (xy 93.214607 74.499041)
+ (xy 93.214605 74.499042)
+ (xy 93.208756 74.502557)
+ (xy 93.203797 74.507246)
+ (xy 93.201318 74.509128)
+ (xy 93.200541 74.509668)
+ (xy 93.196631 74.512625)
+ (xy 93.192262 74.515398)
+ (xy 93.188028 74.519183)
+ (xy 93.134522 74.572689)
+ (xy 93.132 74.575142)
+ (xy 93.074493 74.629524)
+ (xy 93.070659 74.635166)
+ (xy 93.066233 74.640366)
+ (xy 93.065829 74.640022)
+ (xy 93.059293 74.647918)
+ (xy 87.741766 79.965445)
+ (xy 87.679454 79.999471)
+ (xy 87.66803 80.001155)
+ (xy 87.666346 80.001133)
+ (xy 87.660649 80.002112)
+ (xy 87.660648 80.002112)
+ (xy 87.46365 80.035962)
+ (xy 87.463649 80.035962)
+ (xy 87.457953 80.036941)
+ (xy 87.259575 80.110127)
+ (xy 87.254614 80.113079)
+ (xy 87.254613 80.113079)
+ (xy 87.206099 80.141942)
+ (xy 87.077856 80.218238)
+ (xy 86.918881 80.357655)
+ (xy 86.787976 80.523708)
+ (xy 86.785287 80.528819)
+ (xy 86.785285 80.528822)
+ (xy 86.771792 80.554469)
+ (xy 86.689523 80.710836)
+ (xy 86.62682 80.912773)
+ (xy 86.626141 80.91851)
+ (xy 86.612088 81.037239)
+ (xy 86.584217 81.102537)
+ (xy 86.525469 81.142401)
+ (xy 86.454494 81.144174)
+ (xy 86.393828 81.107295)
+ (xy 86.36273 81.043471)
+ (xy 86.36149 81.033958)
+ (xy 86.360347 81.02151)
+ (xy 86.353081 80.94244)
+ (xy 86.295686 80.738931)
+ (xy 86.288612 80.724585)
+ (xy 86.204719 80.554469)
+ (xy 86.202165 80.54929)
+ (xy 86.075651 80.379867)
+ (xy 85.920381 80.236337)
+ (xy 85.741554 80.123505)
+ (xy 85.54516 80.045152)
+ (xy 85.539503 80.044027)
+ (xy 85.539497 80.044025)
+ (xy 85.343442 80.005028)
+ (xy 85.34344 80.005028)
+ (xy 85.337775 80.003901)
+ (xy 85.332 80.003825)
+ (xy 85.331996 80.003825)
+ (xy 85.225976 80.002437)
+ (xy 85.126346 80.001133)
+ (xy 85.120649 80.002112)
+ (xy 85.120648 80.002112)
+ (xy 84.92365 80.035962)
+ (xy 84.923649 80.035962)
+ (xy 84.917953 80.036941)
+ (xy 84.719575 80.110127)
+ (xy 84.714614 80.113079)
+ (xy 84.714613 80.113079)
+ (xy 84.666099 80.141942)
+ (xy 84.537856 80.218238)
+ (xy 84.378881 80.357655)
+ (xy 84.247976 80.523708)
+ (xy 84.245287 80.528819)
+ (xy 84.245285 80.528822)
+ (xy 84.152211 80.705726)
+ (xy 84.152209 80.705731)
+ (xy 84.149523 80.710836)
+ (xy 84.147811 80.716349)
+ (xy 84.147788 80.716405)
+ (xy 84.10324 80.771686)
+ (xy 84.035876 80.794106)
+ (xy 83.967085 80.776547)
+ (xy 83.918707 80.724585)
+ (xy 83.912979 80.71128)
+ (xy 83.908491 80.69895)
+ (xy 83.816414 80.501489)
+ (xy 83.810931 80.491993)
+ (xy 83.685972 80.313533)
+ (xy 83.678916 80.305125)
+ (xy 83.524875 80.151084)
+ (xy 83.516467 80.144028)
+ (xy 83.338007 80.019069)
+ (xy 83.328511 80.013586)
+ (xy 83.131053 79.92151)
+ (xy 83.120761 79.917764)
+ (xy 82.948497 79.871606)
+ (xy 82.934401 79.871942)
+ (xy 82.931 79.879884)
+ (xy 82.931 82.420967)
+ (xy 82.423 82.420967)
+ (xy 82.423 79.885033)
+ (xy 82.419027 79.871502)
+ (xy 82.410478 79.870273)
+ (xy 82.233239 79.917764)
+ (xy 82.222947 79.92151)
+ (xy 82.025489 80.013586)
+ (xy 82.015993 80.019069)
+ (xy 81.837533 80.144028)
+ (xy 81.829125 80.151084)
+ (xy 81.675084 80.305125)
+ (xy 81.668028 80.313533)
+ (xy 81.543069 80.491993)
+ (xy 81.537586 80.501489)
+ (xy 81.44551 80.698947)
+ (xy 81.440455 80.712836)
+ (xy 81.398361 80.770007)
+ (xy 81.332039 80.795345)
+ (xy 81.262548 80.780804)
+ (xy 81.209048 80.72547)
+ (xy 81.124719 80.554469)
+ (xy 81.122165 80.54929)
+ (xy 80.995651 80.379867)
+ (xy 80.840381 80.236337)
+ (xy 80.661554 80.123505)
+ (xy 80.46516 80.045152)
+ (xy 80.459503 80.044027)
+ (xy 80.459497 80.044025)
+ (xy 80.263442 80.005028)
+ (xy 80.26344 80.005028)
+ (xy 80.257775 80.003901)
+ (xy 80.252 80.003825)
+ (xy 80.251996 80.003825)
+ (xy 80.145976 80.002437)
+ (xy 80.046346 80.001133)
+ (xy 80.040649 80.002112)
+ (xy 80.040648 80.002112)
+ (xy 79.84365 80.035962)
+ (xy 79.843649 80.035962)
+ (xy 79.837953 80.036941)
+ (xy 79.639575 80.110127)
+ (xy 79.634614 80.113079)
+ (xy 79.634613 80.113079)
+ (xy 79.586099 80.141942)
+ (xy 79.457856 80.218238)
+ (xy 79.298881 80.357655)
+ (xy 79.167976 80.523708)
+ (xy 79.165287 80.528819)
+ (xy 79.165285 80.528822)
+ (xy 79.151792 80.554469)
+ (xy 79.069523 80.710836)
+ (xy 79.00682 80.912773)
+ (xy 78.981967 81.122754)
+ (xy 77.0895 81.122754)
+ (xy 77.0895 79.585064)
+ (xy 77.109502 79.516943)
+ (xy 77.148366 79.478439)
+ (xy 77.173688 79.462496)
+ (xy 86.680085 73.476987)
+ (xy 111.471721 73.476987)
+ (xy 111.480548 73.488605)
+ (xy 111.703281 73.65043)
+ (xy 111.709961 73.65467)
+ (xy 111.979572 73.80289)
+ (xy 111.986707 73.806247)
+ (xy 112.27277 73.919508)
+ (xy 112.280296 73.921953)
+ (xy 112.578279 73.998462)
+ (xy 112.58605 73.999945)
+ (xy 112.891278 74.038503)
+ (xy 112.899169 74.039)
+ (xy 113.206831 74.039)
+ (xy 113.214722 74.038503)
+ (xy 113.51995 73.999945)
+ (xy 113.527721 73.998462)
+ (xy 113.825704 73.921953)
+ (xy 113.83323 73.919508)
+ (xy 114.119293 73.806247)
+ (xy 114.126428 73.80289)
+ (xy 114.396039 73.65467)
+ (xy 114.402719 73.65043)
+ (xy 114.625823 73.488336)
+ (xy 114.634246 73.477413)
+ (xy 114.627342 73.464552)
+ (xy 113.065812 71.903022)
+ (xy 113.051868 71.895408)
+ (xy 113.050035 71.895539)
+ (xy 113.04342 71.89979)
+ (xy 111.478334 73.464876)
+ (xy 111.471721 73.476987)
+ (xy 86.680085 73.476987)
+ (xy 91.412177 70.497522)
+ (xy 96.761273 70.497522)
+ (xy 96.808764 70.674761)
+ (xy 96.81251 70.685053)
+ (xy 96.904586 70.882511)
+ (xy 96.910069 70.892007)
+ (xy 97.035028 71.070467)
+ (xy 97.042084 71.078875)
+ (xy 97.196125 71.232916)
+ (xy 97.204533 71.239972)
+ (xy 97.382993 71.364931)
+ (xy 97.392489 71.370414)
+ (xy 97.589947 71.46249)
+ (xy 97.600239 71.466236)
+ (xy 97.772503 71.512394)
+ (xy 97.786599 71.512058)
+ (xy 97.79 71.504116)
+ (xy 97.79 71.498967)
+ (xy 98.298 71.498967)
+ (xy 98.301973 71.512498)
+ (xy 98.310522 71.513727)
+ (xy 98.487761 71.466236)
+ (xy 98.498053 71.46249)
+ (xy 98.695511 71.370414)
+ (xy 98.705007 71.364931)
+ (xy 98.883467 71.239972)
+ (xy 98.891875 71.232916)
+ (xy 99.045916 71.078875)
+ (xy 99.052972 71.070467)
+ (xy 99.177931 70.892007)
+ (xy 99.183414 70.882511)
+ (xy 99.199805 70.847359)
+ (xy 99.246722 70.794074)
+ (xy 99.314999 70.774613)
+ (xy 99.382959 70.795155)
+ (xy 99.428195 70.847359)
+ (xy 99.444586 70.882511)
+ (xy 99.450069 70.892007)
+ (xy 99.575028 71.070467)
+ (xy 99.582084 71.078875)
+ (xy 99.736125 71.232916)
+ (xy 99.744533 71.239972)
+ (xy 99.922993 71.364931)
+ (xy 99.932489 71.370414)
+ (xy 100.129947 71.46249)
+ (xy 100.140239 71.466236)
+ (xy 100.312503 71.512394)
+ (xy 100.326599 71.512058)
+ (xy 100.33 71.504116)
+ (xy 100.33 71.498967)
+ (xy 100.838 71.498967)
+ (xy 100.841973 71.512498)
+ (xy 100.850522 71.513727)
+ (xy 101.027761 71.466236)
+ (xy 101.038053 71.46249)
+ (xy 101.235511 71.370414)
+ (xy 101.245007 71.364931)
+ (xy 101.423467 71.239972)
+ (xy 101.431875 71.232916)
+ (xy 101.585916 71.078875)
+ (xy 101.592972 71.070467)
+ (xy 101.717931 70.892007)
+ (xy 101.723414 70.882511)
+ (xy 101.739805 70.847359)
+ (xy 101.786722 70.794074)
+ (xy 101.854999 70.774613)
+ (xy 101.922959 70.795155)
+ (xy 101.968195 70.847359)
+ (xy 101.984586 70.882511)
+ (xy 101.990069 70.892007)
+ (xy 102.115028 71.070467)
+ (xy 102.122084 71.078875)
+ (xy 102.276125 71.232916)
+ (xy 102.284533 71.239972)
+ (xy 102.462993 71.364931)
+ (xy 102.472489 71.370414)
+ (xy 102.669947 71.46249)
+ (xy 102.680239 71.466236)
+ (xy 102.852503 71.512394)
+ (xy 102.866599 71.512058)
+ (xy 102.87 71.504116)
+ (xy 102.87 71.498967)
+ (xy 103.378 71.498967)
+ (xy 103.381973 71.512498)
+ (xy 103.390522 71.513727)
+ (xy 103.567761 71.466236)
+ (xy 103.578053 71.46249)
+ (xy 103.775511 71.370414)
+ (xy 103.785007 71.364931)
+ (xy 103.963467 71.239972)
+ (xy 103.971875 71.232916)
+ (xy 104.125916 71.078875)
+ (xy 104.136507 71.066254)
+ (xy 104.137357 71.066968)
+ (xy 104.188422 71.026152)
+ (xy 104.259041 71.018844)
+ (xy 104.322401 71.050877)
+ (xy 104.358385 71.112079)
+ (xy 104.361438 71.129145)
+ (xy 104.361895 71.133353)
+ (xy 104.365521 71.148604)
+ (xy 104.410676 71.269054)
+ (xy 104.419214 71.284649)
+ (xy 104.495715 71.386724)
+ (xy 104.508276 71.399285)
+ (xy 104.610351 71.475786)
+ (xy 104.625946 71.484324)
+ (xy 104.746394 71.529478)
+ (xy 104.761649 71.533105)
+ (xy 104.812514 71.538631)
+ (xy 104.819328 71.539)
+ (xy 105.391885 71.539)
+ (xy 105.407124 71.534525)
+ (xy 105.408329 71.533135)
+ (xy 105.41 71.525452)
+ (xy 105.41 71.520884)
+ (xy 105.918 71.520884)
+ (xy 105.922475 71.536123)
+ (xy 105.923865 71.537328)
+ (xy 105.931548 71.538999)
+ (xy 106.508669 71.538999)
+ (xy 106.51549 71.538629)
+ (xy 106.549291 71.534958)
+ (xy 110.54029 71.534958)
+ (xy 110.559607 71.841994)
+ (xy 110.5606 71.849855)
+ (xy 110.618246 72.152046)
+ (xy 110.620217 72.159723)
+ (xy 110.715284 72.452309)
+ (xy 110.718199 72.459672)
+ (xy 110.849189 72.738041)
+ (xy 110.853001 72.744974)
+ (xy 111.017851 73.004736)
+ (xy 111.022495 73.011129)
+ (xy 111.097497 73.10179)
+ (xy 111.110014 73.110245)
+ (xy 111.120752 73.104038)
+ (xy 112.680978 71.543812)
+ (xy 112.687356 71.532132)
+ (xy 113.417408 71.532132)
+ (xy 113.417539 71.533965)
+ (xy 113.42179 71.54058)
+ (xy 114.984145 73.102935)
+ (xy 114.997407 73.110177)
+ (xy 115.007512 73.102988)
+ (xy 115.083505 73.011129)
+ (xy 115.088149 73.004736)
+ (xy 115.252999 72.744974)
+ (xy 115.256811 72.738041)
+ (xy 115.387801 72.459672)
+ (xy 115.390716 72.452309)
+ (xy 115.485783 72.159723)
+ (xy 115.487754 72.152046)
+ (xy 115.5454 71.849855)
+ (xy 115.546393 71.841994)
+ (xy 115.56571 71.534958)
+ (xy 115.56571 71.527042)
+ (xy 115.546393 71.220006)
+ (xy 115.5454 71.212145)
+ (xy 115.487754 70.909954)
+ (xy 115.485783 70.902277)
+ (xy 115.390716 70.609691)
+ (xy 115.387801 70.602328)
+ (xy 115.256811 70.323959)
+ (xy 115.252999 70.317026)
+ (xy 115.088149 70.057264)
+ (xy 115.083505 70.050871)
+ (xy 115.008503 69.96021)
+ (xy 114.995986 69.951755)
+ (xy 114.985248 69.957962)
+ (xy 113.425022 71.518188)
+ (xy 113.417408 71.532132)
+ (xy 112.687356 71.532132)
+ (xy 112.688592 71.529868)
+ (xy 112.688461 71.528035)
+ (xy 112.68421 71.52142)
+ (xy 111.121855 69.959065)
+ (xy 111.108593 69.951823)
+ (xy 111.098488 69.959012)
+ (xy 111.022495 70.050871)
+ (xy 111.017851 70.057264)
+ (xy 110.853001 70.317026)
+ (xy 110.849189 70.323959)
+ (xy 110.718199 70.602328)
+ (xy 110.715284 70.609691)
+ (xy 110.620217 70.902277)
+ (xy 110.618246 70.909954)
+ (xy 110.5606 71.212145)
+ (xy 110.559607 71.220006)
+ (xy 110.54029 71.527042)
+ (xy 110.54029 71.534958)
+ (xy 106.549291 71.534958)
+ (xy 106.566352 71.533105)
+ (xy 106.581604 71.529479)
+ (xy 106.702054 71.484324)
+ (xy 106.717649 71.475786)
+ (xy 106.819724 71.399285)
+ (xy 106.832285 71.386724)
+ (xy 106.908786 71.284649)
+ (xy 106.917324 71.269054)
+ (xy 106.962478 71.148606)
+ (xy 106.966105 71.133351)
+ (xy 106.971631 71.082486)
+ (xy 106.972 71.075672)
+ (xy 106.972 70.503115)
+ (xy 106.967525 70.487876)
+ (xy 106.966135 70.486671)
+ (xy 106.958452 70.485)
+ (xy 105.936115 70.485)
+ (xy 105.920876 70.489475)
+ (xy 105.919671 70.490865)
+ (xy 105.918 70.498548)
+ (xy 105.918 71.520884)
+ (xy 105.41 71.520884)
+ (xy 105.41 70.503115)
+ (xy 105.405525 70.487876)
+ (xy 105.404135 70.486671)
+ (xy 105.396452 70.485)
+ (xy 103.396115 70.485)
+ (xy 103.380876 70.489475)
+ (xy 103.379671 70.490865)
+ (xy 103.378 70.498548)
+ (xy 103.378 71.498967)
+ (xy 102.87 71.498967)
+ (xy 102.87 70.503115)
+ (xy 102.865525 70.487876)
+ (xy 102.864135 70.486671)
+ (xy 102.856452 70.485)
+ (xy 100.856115 70.485)
+ (xy 100.840876 70.489475)
+ (xy 100.839671 70.490865)
+ (xy 100.838 70.498548)
+ (xy 100.838 71.498967)
+ (xy 100.33 71.498967)
+ (xy 100.33 70.503115)
+ (xy 100.325525 70.487876)
+ (xy 100.324135 70.486671)
+ (xy 100.316452 70.485)
+ (xy 98.316115 70.485)
+ (xy 98.300876 70.489475)
+ (xy 98.299671 70.490865)
+ (xy 98.298 70.498548)
+ (xy 98.298 71.498967)
+ (xy 97.79 71.498967)
+ (xy 97.79 70.503115)
+ (xy 97.785525 70.487876)
+ (xy 97.784135 70.486671)
+ (xy 97.776452 70.485)
+ (xy 96.776033 70.485)
+ (xy 96.762502 70.488973)
+ (xy 96.761273 70.497522)
+ (xy 91.412177 70.497522)
+ (xy 91.56672 70.400217)
+ (xy 94.022675 68.853875)
+ (xy 94.089809 68.8345)
+ (xy 97.375463 68.8345)
+ )
+ )
+ )
+)
diff --git a/kicad/gameport-adapter.kicad_prl b/kicad/gameport-adapter.kicad_prl
new file mode 100644
index 0000000..459a590
--- /dev/null
+++ b/kicad/gameport-adapter.kicad_prl
@@ -0,0 +1,75 @@
+{
+ "board": {
+ "active_layer": 0,
+ "active_layer_preset": "All Layers",
+ "auto_track_width": true,
+ "hidden_nets": [],
+ "high_contrast_mode": 0,
+ "net_color_mode": 1,
+ "opacity": {
+ "pads": 1.0,
+ "tracks": 1.0,
+ "vias": 1.0,
+ "zones": 0.6
+ },
+ "ratsnest_display_mode": 0,
+ "selection_filter": {
+ "dimensions": true,
+ "footprints": true,
+ "graphics": true,
+ "keepouts": true,
+ "lockedItems": true,
+ "otherItems": true,
+ "pads": true,
+ "text": true,
+ "tracks": true,
+ "vias": true,
+ "zones": true
+ },
+ "visible_items": [
+ 0,
+ 1,
+ 2,
+ 3,
+ 4,
+ 5,
+ 8,
+ 9,
+ 10,
+ 11,
+ 12,
+ 13,
+ 14,
+ 15,
+ 16,
+ 17,
+ 18,
+ 19,
+ 20,
+ 21,
+ 22,
+ 23,
+ 24,
+ 25,
+ 26,
+ 27,
+ 28,
+ 29,
+ 30,
+ 32,
+ 33,
+ 34,
+ 35,
+ 36
+ ],
+ "visible_layers": "fffffff_ffffffff",
+ "zone_display_mode": 0
+ },
+ "meta": {
+ "filename": "gameport-adapter.kicad_prl",
+ "version": 3
+ },
+ "project": {
+ "files": []
+ }
+}
diff --git a/kicad/gameport-adapter.kicad_pro b/kicad/gameport-adapter.kicad_pro
new file mode 100644
index 0000000..51b62ba
--- /dev/null
+++ b/kicad/gameport-adapter.kicad_pro
@@ -0,0 +1,442 @@
+{
+ "board": {
+ "design_settings": {
+ "defaults": {
+ "board_outline_line_width": 0.049999999999999996,
+ "copper_line_width": 0.19999999999999998,
+ "copper_text_italic": false,
+ "copper_text_size_h": 1.5,
+ "copper_text_size_v": 1.5,
+ "copper_text_thickness": 0.3,
+ "copper_text_upright": false,
+ "courtyard_line_width": 0.049999999999999996,
+ "dimension_precision": 4,
+ "dimension_units": 3,
+ "dimensions": {
+ "arrow_length": 1270000,
+ "extension_offset": 500000,
+ "keep_text_aligned": true,
+ "suppress_zeroes": false,
+ "text_position": 0,
+ "units_format": 1
+ },
+ "fab_line_width": 0.09999999999999999,
+ "fab_text_italic": false,
+ "fab_text_size_h": 1.0,
+ "fab_text_size_v": 1.0,
+ "fab_text_thickness": 0.15,
+ "fab_text_upright": false,
+ "other_line_width": 0.09999999999999999,
+ "other_text_italic": false,
+ "other_text_size_h": 1.0,
+ "other_text_size_v": 1.0,
+ "other_text_thickness": 0.15,
+ "other_text_upright": false,
+ "pads": {
+ "drill": 0.762,
+ "height": 1.524,
+ "width": 1.524
+ },
+ "silk_line_width": 0.12,
+ "silk_text_italic": false,
+ "silk_text_size_h": 1.0,
+ "silk_text_size_v": 1.0,
+ "silk_text_thickness": 0.15,
+ "silk_text_upright": false,
+ "zones": {
+ "45_degree_only": false,
+ "min_clearance": 0.254
+ }
+ },
+ "diff_pair_dimensions": [],
+ "drc_exclusions": [],
+ "meta": {
+ "filename": "board_design_settings.json",
+ "version": 2
+ },
+ "rule_severities": {
+ "annular_width": "error",
+ "clearance": "error",
+ "copper_edge_clearance": "error",
+ "courtyards_overlap": "error",
+ "diff_pair_gap_out_of_range": "error",
+ "diff_pair_uncoupled_length_too_long": "error",
+ "drill_out_of_range": "error",
+ "duplicate_footprints": "warning",
+ "extra_footprint": "warning",
+ "footprint_type_mismatch": "error",
+ "hole_clearance": "error",
+ "hole_near_hole": "error",
+ "invalid_outline": "error",
+ "item_on_disabled_layer": "error",
+ "items_not_allowed": "error",
+ "length_out_of_range": "error",
+ "malformed_courtyard": "error",
+ "microvia_drill_out_of_range": "error",
+ "missing_courtyard": "ignore",
+ "missing_footprint": "warning",
+ "net_conflict": "warning",
+ "npth_inside_courtyard": "ignore",
+ "padstack": "error",
+ "pth_inside_courtyard": "ignore",
+ "shorting_items": "error",
+ "silk_over_copper": "warning",
+ "silk_overlap": "warning",
+ "skew_out_of_range": "error",
+ "through_hole_pad_without_hole": "error",
+ "too_many_vias": "error",
+ "track_dangling": "warning",
+ "track_width": "error",
+ "tracks_crossing": "error",
+ "unconnected_items": "error",
+ "unresolved_variable": "error",
+ "via_dangling": "warning",
+ "zone_has_empty_net": "error",
+ "zones_intersect": "error"
+ },
+ "rule_severitieslegacy_courtyards_overlap": true,
+ "rule_severitieslegacy_no_courtyard_defined": false,
+ "rules": {
+ "allow_blind_buried_vias": false,
+ "allow_microvias": false,
+ "max_error": 0.005,
+ "min_clearance": 0.0,
+ "min_copper_edge_clearance": 0.024999999999999998,
+ "min_hole_clearance": 0.25,
+ "min_hole_to_hole": 0.25,
+ "min_microvia_diameter": 0.19999999999999998,
+ "min_microvia_drill": 0.09999999999999999,
+ "min_silk_clearance": 0.0,
+ "min_through_hole_diameter": 0.3,
+ "min_track_width": 0.19999999999999998,
+ "min_via_annular_width": 0.049999999999999996,
+ "min_via_diameter": 0.39999999999999997,
+ "use_height_for_length_calcs": true
+ },
+ "track_widths": [],
+ "via_dimensions": [],
+ "zones_allow_external_fillets": false,
+ "zones_use_no_outline": true
+ },
+ "layer_presets": []
+ },
+ "boards": [],
+ "cvpcb": {
+ "equivalence_files": []
+ },
+ "erc": {
+ "erc_exclusions": [],
+ "meta": {
+ "version": 0
+ },
+ "pin_map": [
+ [
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ 2
+ ],
+ [
+ 0,
+ 2,
+ 0,
+ 1,
+ 0,
+ 0,
+ 1,
+ 0,
+ 2,
+ 2,
+ 2,
+ 2
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 1,
+ 0,
+ 1,
+ 0,
+ 1,
+ 2
+ ],
+ [
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ 1,
+ 1,
+ 2,
+ 1,
+ 1,
+ 2
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ 2
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 2
+ ],
+ [
+ 1,
+ 1,
+ 1,
+ 1,
+ 1,
+ 0,
+ 1,
+ 1,
+ 1,
+ 1,
+ 1,
+ 2
+ ],
+ [
+ 0,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 1,
+ 0,
+ 0,
+ 0,
+ 0,
+ 2
+ ],
+ [
+ 0,
+ 2,
+ 1,
+ 2,
+ 0,
+ 0,
+ 1,
+ 0,
+ 2,
+ 2,
+ 2,
+ 2
+ ],
+ [
+ 0,
+ 2,
+ 0,
+ 1,
+ 0,
+ 0,
+ 1,
+ 0,
+ 2,
+ 0,
+ 0,
+ 2
+ ],
+ [
+ 0,
+ 2,
+ 1,
+ 1,
+ 0,
+ 0,
+ 1,
+ 0,
+ 2,
+ 0,
+ 0,
+ 2
+ ],
+ [
+ 2,
+ 2,
+ 2,
+ 2,
+ 2,
+ 2,
+ 2,
+ 2,
+ 2,
+ 2,
+ 2,
+ 2
+ ]
+ ],
+ "rule_severities": {
+ "bus_definition_conflict": "error",
+ "bus_entry_needed": "error",
+ "bus_label_syntax": "error",
+ "bus_to_bus_conflict": "error",
+ "bus_to_net_conflict": "error",
+ "different_unit_footprint": "error",
+ "different_unit_net": "error",
+ "duplicate_reference": "error",
+ "duplicate_sheet_names": "error",
+ "extra_units": "error",
+ "global_label_dangling": "warning",
+ "hier_label_mismatch": "error",
+ "label_dangling": "error",
+ "lib_symbol_issues": "warning",
+ "multiple_net_names": "warning",
+ "net_not_bus_member": "warning",
+ "no_connect_connected": "warning",
+ "no_connect_dangling": "warning",
+ "pin_not_connected": "error",
+ "pin_not_driven": "error",
+ "pin_to_pin": "warning",
+ "power_pin_not_driven": "error",
+ "similar_labels": "warning",
+ "unannotated": "error",
+ "unit_value_mismatch": "error",
+ "unresolved_variable": "error",
+ "wire_dangling": "error"
+ }
+ },
+ "libraries": {
+ "pinned_footprint_libs": [],
+ "pinned_symbol_libs": []
+ },
+ "meta": {
+ "filename": "gameport-adapter.kicad_pro",
+ "version": 1
+ },
+ "net_settings": {
+ "classes": [
+ {
+ "bus_width": 12.0,
+ "clearance": 0.25,
+ "diff_pair_gap": 0.25,
+ "diff_pair_via_gap": 0.25,
+ "diff_pair_width": 0.2,
+ "line_style": 0,
+ "microvia_diameter": 0.3,
+ "microvia_drill": 0.1,
+ "name": "Default",
+ "pcb_color": "rgba(0, 0, 0, 0.000)",
+ "schematic_color": "rgba(0, 0, 0, 0.000)",
+ "track_width": 0.35,
+ "via_diameter": 0.8,
+ "via_drill": 0.4,
+ "wire_width": 6.0
+ },
+ {
+ "bus_width": 12.0,
+ "clearance": 0.35,
+ "diff_pair_gap": 0.25,
+ "diff_pair_via_gap": 0.25,
+ "diff_pair_width": 0.2,
+ "line_style": 0,
+ "microvia_diameter": 0.3,
+ "microvia_drill": 0.1,
+ "name": "Power",
+ "nets": [
+ "GND",
+ "VCC"
+ ],
+ "pcb_color": "rgba(0, 0, 0, 0.000)",
+ "schematic_color": "rgba(0, 0, 0, 0.000)",
+ "track_width": 1.0,
+ "via_diameter": 0.8,
+ "via_drill": 0.4,
+ "wire_width": 6.0
+ }
+ ],
+ "meta": {
+ "version": 2
+ },
+ "net_colors": null
+ },
+ "pcbnew": {
+ "last_paths": {
+ "gencad": "",
+ "idf": "",
+ "netlist": "",
+ "specctra_dsn": "",
+ "step": "",
+ "vrml": ""
+ },
+ "page_layout_descr_file": ""
+ },
+ "schematic": {
+ "annotate_start_num": 0,
+ "drawing": {
+ "default_line_thickness": 6.0,
+ "default_text_size": 50.0,
+ "field_names": [],
+ "intersheets_ref_own_page": false,
+ "intersheets_ref_prefix": "",
+ "intersheets_ref_short": false,
+ "intersheets_ref_show": false,
+ "intersheets_ref_suffix": "",
+ "junction_size_choice": 3,
+ "label_size_ratio": 0.25,
+ "pin_symbol_size": 0.0,
+ "text_offset_ratio": 0.08
+ },
+ "legacy_lib_dir": "",
+ "legacy_lib_list": [],
+ "meta": {
+ "version": 1
+ },
+ "net_format_name": "",
+ "ngspice": {
+ "fix_include_paths": true,
+ "fix_passive_vals": false,
+ "meta": {
+ "version": 0
+ },
+ "model_mode": 0,
+ "workbook_filename": ""
+ },
+ "page_layout_descr_file": "",
+ "plot_directory": "",
+ "spice_adjust_passive_values": false,
+ "spice_external_command": "spice \"%I\"",
+ "subpart_first_id": 65,
+ "subpart_id_separator": 0
+ },
+ "sheets": [
+ [
+ "bd3a3088-a7a8-46b0-8d32-b4cc0ac8ed31",
+ ""
+ ]
+ ],
+ "text_variables": {}
+}
diff --git a/kicad/gameport-adapter.kicad_sch b/kicad/gameport-adapter.kicad_sch
new file mode 100644
index 0000000..827d69e
--- /dev/null
+++ b/kicad/gameport-adapter.kicad_sch
@@ -0,0 +1,1160 @@
+(kicad_sch (version 20211123) (generator eeschema)
+
+ (uuid bd3a3088-a7a8-46b0-8d32-b4cc0ac8ed31)
+
+ (paper "A4")
+
+ (title_block
+ (title "GamePort Adapter")
+ (date "2021-03-12")
+ (rev "0.2")
+ (company "Necroware")
+ (comment 1 "by Scorp")
+ )
+
+ (lib_symbols
+ (symbol "Connector:DB15_Female_MountingHoles" (pin_names (offset 1.016) hide) (in_bom yes) (on_board yes)
+ (property "Reference" "J" (id 0) (at 0 24.13 0)
+ (effects (font (size 1.27 1.27)))
+ )
+ (property "Value" "DB15_Female_MountingHoles" (id 1) (at 0 22.225 0)
+ (effects (font (size 1.27 1.27)))
+ )
+ (property "Footprint" "" (id 2) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "Datasheet" " ~" (id 3) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "ki_keywords" "female D-SUB connector" (id 4) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "ki_description" "15-pin female D-SUB connector (low-density/2 columns), Mounting Hole" (id 5) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "ki_fp_filters" "DSUB*Female*" (id 6) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (symbol "DB15_Female_MountingHoles_0_1"
+ (circle (center -1.778 -17.78) (radius 0.762)
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (circle (center -1.778 -12.7) (radius 0.762)
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (circle (center -1.778 -7.62) (radius 0.762)
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (circle (center -1.778 -2.54) (radius 0.762)
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (circle (center -1.778 2.54) (radius 0.762)
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (circle (center -1.778 7.62) (radius 0.762)
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (circle (center -1.778 12.7) (radius 0.762)
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (circle (center -1.778 17.78) (radius 0.762)
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (polyline
+ (pts
+ (xy -3.81 -17.78)
+ (xy -2.54 -17.78)
+ )
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (polyline
+ (pts
+ (xy -3.81 -15.24)
+ (xy 0.508 -15.24)
+ )
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (polyline
+ (pts
+ (xy -3.81 -12.7)
+ (xy -2.54 -12.7)
+ )
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (polyline
+ (pts
+ (xy -3.81 -10.16)
+ (xy 0.508 -10.16)
+ )
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (polyline
+ (pts
+ (xy -3.81 -7.62)
+ (xy -2.54 -7.62)
+ )
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (polyline
+ (pts
+ (xy -3.81 -5.08)
+ (xy 0.508 -5.08)
+ )
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (polyline
+ (pts
+ (xy -3.81 -2.54)
+ (xy -2.54 -2.54)
+ )
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (polyline
+ (pts
+ (xy -3.81 0)
+ (xy 0.508 0)
+ )
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (polyline
+ (pts
+ (xy -3.81 2.54)
+ (xy -2.54 2.54)
+ )
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (polyline
+ (pts
+ (xy -3.81 5.08)
+ (xy 0.508 5.08)
+ )
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (polyline
+ (pts
+ (xy -3.81 7.62)
+ (xy -2.54 7.62)
+ )
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (polyline
+ (pts
+ (xy -3.81 10.16)
+ (xy 0.508 10.16)
+ )
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (polyline
+ (pts
+ (xy -3.81 12.7)
+ (xy -2.54 12.7)
+ )
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (polyline
+ (pts
+ (xy -3.81 15.24)
+ (xy 0.508 15.24)
+ )
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (polyline
+ (pts
+ (xy -3.81 17.78)
+ (xy -2.54 17.78)
+ )
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (polyline
+ (pts
+ (xy -3.81 20.955)
+ (xy 3.175 17.145)
+ (xy 3.175 -17.145)
+ (xy -3.81 -20.955)
+ (xy -3.81 20.955)
+ )
+ (stroke (width 0.254) (type default) (color 0 0 0 0))
+ (fill (type background))
+ )
+ (circle (center 1.27 -15.24) (radius 0.762)
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (circle (center 1.27 -10.16) (radius 0.762)
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (circle (center 1.27 -5.08) (radius 0.762)
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (circle (center 1.27 0) (radius 0.762)
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (circle (center 1.27 5.08) (radius 0.762)
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (circle (center 1.27 10.16) (radius 0.762)
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (circle (center 1.27 15.24) (radius 0.762)
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ )
+ (symbol "DB15_Female_MountingHoles_1_1"
+ (pin passive line (at 0 -22.86 90) (length 3.81)
+ (name "PAD" (effects (font (size 1.27 1.27))))
+ (number "0" (effects (font (size 1.27 1.27))))
+ )
+ (pin passive line (at -7.62 17.78 0) (length 3.81)
+ (name "1" (effects (font (size 1.27 1.27))))
+ (number "1" (effects (font (size 1.27 1.27))))
+ )
+ (pin passive line (at -7.62 10.16 0) (length 3.81)
+ (name "P10" (effects (font (size 1.27 1.27))))
+ (number "10" (effects (font (size 1.27 1.27))))
+ )
+ (pin passive line (at -7.62 5.08 0) (length 3.81)
+ (name "P111" (effects (font (size 1.27 1.27))))
+ (number "11" (effects (font (size 1.27 1.27))))
+ )
+ (pin passive line (at -7.62 0 0) (length 3.81)
+ (name "P12" (effects (font (size 1.27 1.27))))
+ (number "12" (effects (font (size 1.27 1.27))))
+ )
+ (pin passive line (at -7.62 -5.08 0) (length 3.81)
+ (name "P13" (effects (font (size 1.27 1.27))))
+ (number "13" (effects (font (size 1.27 1.27))))
+ )
+ (pin passive line (at -7.62 -10.16 0) (length 3.81)
+ (name "P14" (effects (font (size 1.27 1.27))))
+ (number "14" (effects (font (size 1.27 1.27))))
+ )
+ (pin passive line (at -7.62 -15.24 0) (length 3.81)
+ (name "P15" (effects (font (size 1.27 1.27))))
+ (number "15" (effects (font (size 1.27 1.27))))
+ )
+ (pin passive line (at -7.62 12.7 0) (length 3.81)
+ (name "2" (effects (font (size 1.27 1.27))))
+ (number "2" (effects (font (size 1.27 1.27))))
+ )
+ (pin passive line (at -7.62 7.62 0) (length 3.81)
+ (name "3" (effects (font (size 1.27 1.27))))
+ (number "3" (effects (font (size 1.27 1.27))))
+ )
+ (pin passive line (at -7.62 2.54 0) (length 3.81)
+ (name "4" (effects (font (size 1.27 1.27))))
+ (number "4" (effects (font (size 1.27 1.27))))
+ )
+ (pin passive line (at -7.62 -2.54 0) (length 3.81)
+ (name "5" (effects (font (size 1.27 1.27))))
+ (number "5" (effects (font (size 1.27 1.27))))
+ )
+ (pin passive line (at -7.62 -7.62 0) (length 3.81)
+ (name "6" (effects (font (size 1.27 1.27))))
+ (number "6" (effects (font (size 1.27 1.27))))
+ )
+ (pin passive line (at -7.62 -12.7 0) (length 3.81)
+ (name "7" (effects (font (size 1.27 1.27))))
+ (number "7" (effects (font (size 1.27 1.27))))
+ )
+ (pin passive line (at -7.62 -17.78 0) (length 3.81)
+ (name "8" (effects (font (size 1.27 1.27))))
+ (number "8" (effects (font (size 1.27 1.27))))
+ )
+ (pin passive line (at -7.62 15.24 0) (length 3.81)
+ (name "P9" (effects (font (size 1.27 1.27))))
+ (number "9" (effects (font (size 1.27 1.27))))
+ )
+ )
+ )
+ (symbol "Device:R" (pin_numbers hide) (pin_names (offset 0)) (in_bom yes) (on_board yes)
+ (property "Reference" "R" (id 0) (at 2.032 0 90)
+ (effects (font (size 1.27 1.27)))
+ )
+ (property "Value" "R" (id 1) (at 0 0 90)
+ (effects (font (size 1.27 1.27)))
+ )
+ (property "Footprint" "" (id 2) (at -1.778 0 90)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "Datasheet" "~" (id 3) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "ki_keywords" "R res resistor" (id 4) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "ki_description" "Resistor" (id 5) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "ki_fp_filters" "R_*" (id 6) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (symbol "R_0_1"
+ (rectangle (start -1.016 -2.54) (end 1.016 2.54)
+ (stroke (width 0.254) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ )
+ (symbol "R_1_1"
+ (pin passive line (at 0 3.81 270) (length 1.27)
+ (name "~" (effects (font (size 1.27 1.27))))
+ (number "1" (effects (font (size 1.27 1.27))))
+ )
+ (pin passive line (at 0 -3.81 90) (length 1.27)
+ (name "~" (effects (font (size 1.27 1.27))))
+ (number "2" (effects (font (size 1.27 1.27))))
+ )
+ )
+ )
+ (symbol "Necroware:Arduino_Pro_Micro" (pin_names (offset 1.016)) (in_bom yes) (on_board yes)
+ (property "Reference" "U" (id 0) (at 13.97 -1.27 0)
+ (effects (font (size 1.27 1.27)))
+ )
+ (property "Value" "Arduino_Pro_Micro" (id 1) (at 13.97 -17.78 90)
+ (effects (font (size 1.27 1.27)))
+ )
+ (property "Footprint" "" (id 2) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "Datasheet" "" (id 3) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (symbol "Arduino_Pro_Micro_0_1"
+ (rectangle (start 2.54 -2.54) (end 25.4 -35.56)
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type background))
+ )
+ )
+ (symbol "Arduino_Pro_Micro_1_1"
+ (pin bidirectional line (at 0 -5.08 0) (length 2.54)
+ (name "1/TX" (effects (font (size 1.27 1.27))))
+ (number "1" (effects (font (size 1.27 1.27))))
+ )
+ (pin bidirectional line (at 0 -27.94 0) (length 2.54)
+ (name "7" (effects (font (size 1.27 1.27))))
+ (number "10" (effects (font (size 1.27 1.27))))
+ )
+ (pin bidirectional line (at 0 -30.48 0) (length 2.54)
+ (name "8/A8" (effects (font (size 1.27 1.27))))
+ (number "11" (effects (font (size 1.27 1.27))))
+ )
+ (pin bidirectional line (at 0 -33.02 0) (length 2.54)
+ (name "9/A9" (effects (font (size 1.27 1.27))))
+ (number "12" (effects (font (size 1.27 1.27))))
+ )
+ (pin bidirectional line (at 27.94 -33.02 180) (length 2.54)
+ (name "10/A10" (effects (font (size 1.27 1.27))))
+ (number "13" (effects (font (size 1.27 1.27))))
+ )
+ (pin bidirectional line (at 27.94 -30.48 180) (length 2.54)
+ (name "16/MOSI" (effects (font (size 1.27 1.27))))
+ (number "14" (effects (font (size 1.27 1.27))))
+ )
+ (pin bidirectional line (at 27.94 -27.94 180) (length 2.54)
+ (name "14/MISO" (effects (font (size 1.27 1.27))))
+ (number "15" (effects (font (size 1.27 1.27))))
+ )
+ (pin bidirectional line (at 27.94 -25.4 180) (length 2.54)
+ (name "15/SCLK" (effects (font (size 1.27 1.27))))
+ (number "16" (effects (font (size 1.27 1.27))))
+ )
+ (pin bidirectional line (at 27.94 -22.86 180) (length 2.54)
+ (name "18/A0" (effects (font (size 1.27 1.27))))
+ (number "17" (effects (font (size 1.27 1.27))))
+ )
+ (pin bidirectional line (at 27.94 -20.32 180) (length 2.54)
+ (name "19/A1" (effects (font (size 1.27 1.27))))
+ (number "18" (effects (font (size 1.27 1.27))))
+ )
+ (pin bidirectional line (at 27.94 -17.78 180) (length 2.54)
+ (name "20/A2" (effects (font (size 1.27 1.27))))
+ (number "19" (effects (font (size 1.27 1.27))))
+ )
+ (pin bidirectional line (at 0 -7.62 0) (length 2.54)
+ (name "0/RX" (effects (font (size 1.27 1.27))))
+ (number "2" (effects (font (size 1.27 1.27))))
+ )
+ (pin bidirectional line (at 27.94 -15.24 180) (length 2.54)
+ (name "21/A3" (effects (font (size 1.27 1.27))))
+ (number "20" (effects (font (size 1.27 1.27))))
+ )
+ (pin bidirectional line (at 27.94 -12.7 180) (length 2.54)
+ (name "VCC" (effects (font (size 1.27 1.27))))
+ (number "21" (effects (font (size 1.27 1.27))))
+ )
+ (pin bidirectional line (at 27.94 -10.16 180) (length 2.54)
+ (name "RST" (effects (font (size 1.27 1.27))))
+ (number "22" (effects (font (size 1.27 1.27))))
+ )
+ (pin bidirectional line (at 27.94 -7.62 180) (length 2.54)
+ (name "GND" (effects (font (size 1.27 1.27))))
+ (number "23" (effects (font (size 1.27 1.27))))
+ )
+ (pin bidirectional line (at 27.94 -5.08 180) (length 2.54)
+ (name "VIN" (effects (font (size 1.27 1.27))))
+ (number "24" (effects (font (size 1.27 1.27))))
+ )
+ (pin bidirectional line (at 0 -10.16 0) (length 2.54)
+ (name "GND" (effects (font (size 1.27 1.27))))
+ (number "3" (effects (font (size 1.27 1.27))))
+ )
+ (pin bidirectional line (at 0 -12.7 0) (length 2.54)
+ (name "GND" (effects (font (size 1.27 1.27))))
+ (number "4" (effects (font (size 1.27 1.27))))
+ )
+ (pin bidirectional line (at 0 -15.24 0) (length 2.54)
+ (name "2/SDA" (effects (font (size 1.27 1.27))))
+ (number "5" (effects (font (size 1.27 1.27))))
+ )
+ (pin bidirectional line (at 0 -17.78 0) (length 2.54)
+ (name "3/SCL" (effects (font (size 1.27 1.27))))
+ (number "6" (effects (font (size 1.27 1.27))))
+ )
+ (pin bidirectional line (at 0 -20.32 0) (length 2.54)
+ (name "4/A6" (effects (font (size 1.27 1.27))))
+ (number "7" (effects (font (size 1.27 1.27))))
+ )
+ (pin bidirectional line (at 0 -22.86 0) (length 2.54)
+ (name "5" (effects (font (size 1.27 1.27))))
+ (number "8" (effects (font (size 1.27 1.27))))
+ )
+ (pin bidirectional line (at 0 -25.4 0) (length 2.54)
+ (name "6/A7" (effects (font (size 1.27 1.27))))
+ (number "9" (effects (font (size 1.27 1.27))))
+ )
+ )
+ )
+ (symbol "Switch:SW_DIP_x04" (pin_names (offset 0) hide) (in_bom yes) (on_board yes)
+ (property "Reference" "SW" (id 0) (at 0 8.89 0)
+ (effects (font (size 1.27 1.27)))
+ )
+ (property "Value" "SW_DIP_x04" (id 1) (at 0 -6.35 0)
+ (effects (font (size 1.27 1.27)))
+ )
+ (property "Footprint" "" (id 2) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "Datasheet" "~" (id 3) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "ki_keywords" "dip switch" (id 4) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "ki_description" "4x DIP Switch, Single Pole Single Throw (SPST) switch, small symbol" (id 5) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "ki_fp_filters" "SW?DIP?x4*" (id 6) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (symbol "SW_DIP_x04_0_0"
+ (circle (center -2.032 -2.54) (radius 0.508)
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (circle (center -2.032 0) (radius 0.508)
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (circle (center -2.032 2.54) (radius 0.508)
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (circle (center -2.032 5.08) (radius 0.508)
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (polyline
+ (pts
+ (xy -1.524 -2.3876)
+ (xy 2.3622 -1.3462)
+ )
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (polyline
+ (pts
+ (xy -1.524 0.127)
+ (xy 2.3622 1.1684)
+ )
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (polyline
+ (pts
+ (xy -1.524 2.667)
+ (xy 2.3622 3.7084)
+ )
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (polyline
+ (pts
+ (xy -1.524 5.207)
+ (xy 2.3622 6.2484)
+ )
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (circle (center 2.032 -2.54) (radius 0.508)
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (circle (center 2.032 0) (radius 0.508)
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (circle (center 2.032 2.54) (radius 0.508)
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ (circle (center 2.032 5.08) (radius 0.508)
+ (stroke (width 0) (type default) (color 0 0 0 0))
+ (fill (type none))
+ )
+ )
+ (symbol "SW_DIP_x04_0_1"
+ (rectangle (start -3.81 7.62) (end 3.81 -5.08)
+ (stroke (width 0.254) (type default) (color 0 0 0 0))
+ (fill (type background))
+ )
+ )
+ (symbol "SW_DIP_x04_1_1"
+ (pin passive line (at -7.62 5.08 0) (length 5.08)
+ (name "~" (effects (font (size 1.27 1.27))))
+ (number "1" (effects (font (size 1.27 1.27))))
+ )
+ (pin passive line (at -7.62 2.54 0) (length 5.08)
+ (name "~" (effects (font (size 1.27 1.27))))
+ (number "2" (effects (font (size 1.27 1.27))))
+ )
+ (pin passive line (at -7.62 0 0) (length 5.08)
+ (name "~" (effects (font (size 1.27 1.27))))
+ (number "3" (effects (font (size 1.27 1.27))))
+ )
+ (pin passive line (at -7.62 -2.54 0) (length 5.08)
+ (name "~" (effects (font (size 1.27 1.27))))
+ (number "4" (effects (font (size 1.27 1.27))))
+ )
+ (pin passive line (at 7.62 -2.54 180) (length 5.08)
+ (name "~" (effects (font (size 1.27 1.27))))
+ (number "5" (effects (font (size 1.27 1.27))))
+ )
+ (pin passive line (at 7.62 0 180) (length 5.08)
+ (name "~" (effects (font (size 1.27 1.27))))
+ (number "6" (effects (font (size 1.27 1.27))))
+ )
+ (pin passive line (at 7.62 2.54 180) (length 5.08)
+ (name "~" (effects (font (size 1.27 1.27))))
+ (number "7" (effects (font (size 1.27 1.27))))
+ )
+ (pin passive line (at 7.62 5.08 180) (length 5.08)
+ (name "~" (effects (font (size 1.27 1.27))))
+ (number "8" (effects (font (size 1.27 1.27))))
+ )
+ )
+ )
+ )
+
+
+ (no_connect (at 78.74 43.18) (uuid 26bcbd54-4917-40d5-8086-2336123e04d4))
+ (no_connect (at 78.74 50.8) (uuid 318d3904-9b1d-4a80-9a05-fb45d853b467))
+ (no_connect (at 78.74 40.64) (uuid 403c3cb8-169f-4e94-90d0-8033fd154633))
+ (no_connect (at 106.68 45.72) (uuid 5e2c1593-19c9-4c68-afe7-ab3b1efcc185))
+ (no_connect (at 78.74 53.34) (uuid 94fdde98-89ac-4d8a-8fd1-26b643370b8b))
+ (no_connect (at 106.68 40.64) (uuid cdd5609b-b74d-422d-b077-b9c1ee047eae))
+
+ (global_label "SW3" (shape input) (at 85.09 85.09 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid 07b1f9bd-febb-448a-b5d2-9d85f5dc28cd)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "VCC" (shape input) (at 44.45 39.37 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid 084fcc96-2688-4ebc-af9f-b6c878342afd)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "GND" (shape input) (at 142.24 45.72 0) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify left))
+ (uuid 0c408ab4-515f-42e6-8eb9-71663adb1246)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "AxisY_2" (shape input) (at 78.74 55.88 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid 0e9fd3df-16d0-4fdf-ba24-bdc232076b00)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "AxisX_1" (shape input) (at 134.62 45.72 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid 102b27c6-5fa4-437f-bca2-44340d4e4929)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "SW4" (shape input) (at 106.68 50.8 0) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify left))
+ (uuid 11a59fc9-a02c-448e-bb69-ff9ab0aa7d0a)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "GND" (shape input) (at 100.33 85.09 0) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify left))
+ (uuid 15970fb1-ee04-49f2-b0f4-c860a0495c2b)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "Button_3" (shape input) (at 106.68 66.04 0) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify left))
+ (uuid 1c76d310-1bb8-4bfd-890f-f2c0219d9069)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "GND" (shape input) (at 78.74 45.72 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid 23194f1b-b539-4d51-b706-0adb60186437)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "AxisX_1" (shape input) (at 44.45 46.99 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid 2769edd9-5bfc-4857-ab13-a32efa909110)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "GND" (shape input) (at 100.33 80.01 0) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify left))
+ (uuid 2a470269-2077-4685-9b56-e8d1b4433587)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "Button_1" (shape input) (at 44.45 41.91 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid 2d0979b4-fffa-40d1-b2d6-d7cd9b54c586)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "MIDI_TXD" (shape input) (at 78.74 58.42 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid 32584d03-f24b-4d25-b769-99ee8dfd94f3)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "GND" (shape input) (at 52.07 77.47 270) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid 362ff863-ada6-463f-b0c6-9b9595cc9434)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "AxisY_1" (shape input) (at 78.74 60.96 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid 48b73a96-a760-46a8-9596-de355188404f)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "SW4" (shape input) (at 85.09 87.63 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid 4ca59c36-066c-4d6b-8e60-d80d4abecfbf)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "AxisX_1" (shape input) (at 106.68 58.42 0) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify left))
+ (uuid 50ea8d66-baf0-40f8-a0d4-bb04ffb94d72)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "AxisY_1" (shape input) (at 44.45 62.23 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid 529984dd-b499-4faf-8d23-6de4a4127690)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "Button_2" (shape input) (at 44.45 67.31 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid 5511a972-c4e3-4868-a79d-74a348da4613)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "AxisY_2" (shape input) (at 134.62 55.88 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid 57227ea0-9d1c-4b9a-ad79-514e62fb857d)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "SW1" (shape input) (at 106.68 63.5 0) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify left))
+ (uuid 5a30b611-101a-4e45-9b9e-59f19d148e7e)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "SW2" (shape input) (at 106.68 60.96 0) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify left))
+ (uuid 5a7f8ff6-2d59-4d64-8572-59a0f3e564b4)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "AxisY_1" (shape input) (at 134.62 50.8 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid 5c241f7b-e19b-40e7-83eb-93d12d451853)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "AxisY_2" (shape input) (at 44.45 59.69 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid 5cc77296-73a0-4bf2-9d2c-6662825a8988)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "VCC" (shape input) (at 44.45 72.39 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid 6c9eca85-d165-45ea-ac73-a2597bf71089)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "GND" (shape input) (at 142.24 40.64 0) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify left))
+ (uuid 79f1ae75-40c0-437d-8f27-14edb08f10a4)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "GND" (shape input) (at 78.74 48.26 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid 7af27a64-6d55-4415-a3c8-bcd566c8a0c5)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "GND" (shape input) (at 44.45 52.07 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid 80207010-4c44-48f0-913e-1c576715a15e)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "Button_3" (shape input) (at 44.45 44.45 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid 813a224c-843f-43f2-9770-eb1930196980)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "GND" (shape input) (at 142.24 55.88 0) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify left))
+ (uuid 84ae0863-b8aa-41e6-9bcc-7d9c302c13ab)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "VCC" (shape input) (at 44.45 36.83 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid 898e311f-d055-4495-be6e-4c7ce065d220)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "Button_1" (shape input) (at 106.68 68.58 0) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify left))
+ (uuid 8a42f275-769d-46d0-8c4d-9d8032a1a87d)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "GND" (shape input) (at 142.24 50.8 0) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify left))
+ (uuid 8df1fb65-01e7-4440-8419-067ecd7e3059)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "VCC" (shape input) (at 106.68 48.26 0) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify left))
+ (uuid b5d4ea29-08c0-4868-8ad9-5735c858d6e8)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "MIDI_TXD" (shape input) (at 44.45 54.61 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid b94d9d82-07bf-4cf6-a02a-5e8d117c96e4)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "AxisX_2" (shape input) (at 44.45 49.53 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid bc5388fc-f11a-411a-b074-698fbc66d18a)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "GND" (shape input) (at 100.33 87.63 0) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify left))
+ (uuid c82e3477-f0b3-4df4-82e1-44703f7dd8e2)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "Button_4" (shape input) (at 44.45 64.77 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid cc94f237-4f3c-4055-adc8-e86d78dae130)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "Button_4" (shape input) (at 78.74 63.5 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid ce6c921d-987a-405e-8453-24fa6ce56ddb)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "AxisX_2" (shape input) (at 106.68 55.88 0) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify left))
+ (uuid d0f31a14-c47a-4207-acc0-2f55ef35deb7)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "SW1" (shape input) (at 85.09 80.01 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid d189f300-2d01-4e58-910a-f106e6442ba5)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "MIDI_RXD" (shape input) (at 44.45 69.85 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid dd3b2783-66fd-472e-97fc-fb4fa3e36429)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "GND" (shape input) (at 44.45 57.15 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid dd9d5ece-3d48-44b0-8bb3-ff7af5d3c53e)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "GND" (shape input) (at 100.33 82.55 0) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify left))
+ (uuid e3835e7a-421c-4631-86b9-c9e45b93d4c1)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "SW2" (shape input) (at 85.09 82.55 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid e4638165-2144-4e90-9020-20ecc0111461)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "GND" (shape input) (at 106.68 43.18 0) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify left))
+ (uuid e8126722-6858-4626-81ac-9ff744c4d69c)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "MIDI_RXD" (shape input) (at 78.74 68.58 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid e93f5d69-4e56-4764-8b44-e780267a7940)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "AxisX_2" (shape input) (at 134.62 40.64 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid f6f25110-f789-4395-8ef7-fb1fffd7b6a0)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "SW3" (shape input) (at 106.68 53.34 0) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify left))
+ (uuid f8e81aa4-3eeb-4b95-bab2-980cace0845a)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+ (global_label "Button_2" (shape input) (at 78.74 66.04 180) (fields_autoplaced)
+ (effects (font (size 1.27 1.27)) (justify right))
+ (uuid fd088acc-7d57-43aa-a4cd-14ba3bdec224)
+ (property "Intersheet References" "${INTERSHEET_REFS}" (id 0) (at 0 0 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ )
+
+ (symbol (lib_id "Connector:DB15_Female_MountingHoles") (at 52.07 54.61 0) (unit 1)
+ (in_bom yes) (on_board yes)
+ (uuid 00000000-0000-0000-0000-00005fb67ac2)
+ (property "Reference" "CONN1" (id 0) (at 55.9816 53.4416 0)
+ (effects (font (size 1.27 1.27)) (justify left))
+ )
+ (property "Value" "" (id 1) (at 55.9816 55.753 0)
+ (effects (font (size 1.27 1.27)) (justify left))
+ )
+ (property "Footprint" "" (id 2) (at 52.07 54.61 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "Datasheet" " ~" (id 3) (at 52.07 54.61 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "LCSC" "C77835" (id 4) (at 52.07 54.61 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (pin "0" (uuid f0fdc5b7-db43-47ab-90bf-fad51b95fc26))
+ (pin "1" (uuid 29847295-8d2e-4057-b697-350843ddd9fd))
+ (pin "10" (uuid a9a6aa6e-0b6f-4506-8351-51981a94ed63))
+ (pin "11" (uuid da9e2e12-43f7-42d4-851f-97b2ae5baa73))
+ (pin "12" (uuid 49005ae8-5c75-4ee9-8f4e-677b40dc4b10))
+ (pin "13" (uuid f5428a46-2a40-4aa3-a7a4-250ed20c9889))
+ (pin "14" (uuid f6cb5d8d-ad91-4b4b-8099-085c6dfaf952))
+ (pin "15" (uuid 17ecd665-9f69-48c9-b065-6719bb7bc0d4))
+ (pin "2" (uuid 573e579d-4d14-46a7-a1d9-8502e98eb9a4))
+ (pin "3" (uuid bb77c1c1-3a48-43c2-93c6-b226d125436d))
+ (pin "4" (uuid b8b5a6d1-d8fc-45ed-85b7-f0675a7e0246))
+ (pin "5" (uuid 487a8083-b4dd-486f-b2c4-a01240e122d1))
+ (pin "6" (uuid 8c330fde-7a30-4c91-bb1d-512ba8cf3dd0))
+ (pin "7" (uuid a266fbce-292e-45c0-8ae8-77a28f5b148b))
+ (pin "8" (uuid 662db4fd-c95d-4dbe-b798-f3b0dfdd8955))
+ (pin "9" (uuid 8958b652-f4b7-4b87-8755-3e5b03e0ce48))
+ )
+
+ (symbol (lib_id "Necroware:Arduino_Pro_Micro") (at 78.74 35.56 0) (unit 1)
+ (in_bom yes) (on_board yes)
+ (uuid 00000000-0000-0000-0000-00005ff74419)
+ (property "Reference" "U1" (id 0) (at 92.71 33.909 0))
+ (property "Value" "" (id 1) (at 92.71 36.2204 0))
+ (property "Footprint" "" (id 2) (at 78.74 35.56 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "Datasheet" "" (id 3) (at 78.74 35.56 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "LCSC" "C72120" (id 4) (at 78.74 35.56 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (pin "1" (uuid 9dfcfa7c-e0c9-4370-a63b-2034c158a448))
+ (pin "10" (uuid f9989092-84d7-4e76-a909-706bc644b31c))
+ (pin "11" (uuid b4748257-9696-47b9-91ff-62996cf3cac6))
+ (pin "12" (uuid 018d93bf-6a65-4051-a8e7-3a6e297826bc))
+ (pin "13" (uuid c9edd1e9-4f50-4e48-bd42-e78470828a84))
+ (pin "14" (uuid 62cc0655-3b97-4a4e-abab-bf6f7a6e68f2))
+ (pin "15" (uuid 71eb3543-728d-432b-a160-876ea185cb91))
+ (pin "16" (uuid f536419e-3f7e-4677-9858-ceb7088d1973))
+ (pin "17" (uuid 190255df-417a-46a6-97ed-af0b14f82a2d))
+ (pin "18" (uuid acdd9b7e-6ece-4483-8853-a467bb90d2c3))
+ (pin "19" (uuid 85878123-9d12-40ff-846d-947cdc594669))
+ (pin "2" (uuid e3a9f332-8022-4eca-9503-876c1b4f3dd8))
+ (pin "20" (uuid 9d9b178b-f4bd-45d6-8649-5ce8c70235c0))
+ (pin "21" (uuid 5491a099-3be3-4868-9dc9-6e93a1892c4c))
+ (pin "22" (uuid 3f0d46d4-091d-430a-a3fe-b836fb30e283))
+ (pin "23" (uuid 6dfa8536-6581-464a-b636-d23568b46855))
+ (pin "24" (uuid 06761a52-a1a9-4e92-b221-3607f10d5cdb))
+ (pin "3" (uuid a8cc6d54-10c6-4273-83b1-b60f7a606e9f))
+ (pin "4" (uuid c6fb16bb-abf1-46da-b11b-d71a5bc1d795))
+ (pin "5" (uuid f470e827-e5c5-43f5-b465-cdcd7436b005))
+ (pin "6" (uuid 0ec8bec4-8313-4ebb-924a-7ef502b12458))
+ (pin "7" (uuid 513a5e22-5a7c-45f1-a199-b2e5e8f9fc25))
+ (pin "8" (uuid 582d5cd7-236c-48dd-bdce-aa521e377225))
+ (pin "9" (uuid 51a508b0-07d0-4c0d-91d0-17d3cb38f52b))
+ )
+
+ (symbol (lib_id "Switch:SW_DIP_x04") (at 92.71 85.09 0) (mirror y) (unit 1)
+ (in_bom yes) (on_board yes)
+ (uuid 00000000-0000-0000-0000-00005ff7e601)
+ (property "Reference" "SW1" (id 0) (at 92.71 73.2282 0))
+ (property "Value" "" (id 1) (at 92.71 75.5396 0))
+ (property "Footprint" "" (id 2) (at 92.71 85.09 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "Datasheet" "~" (id 3) (at 92.71 85.09 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "LCSC" "C15781" (id 4) (at 92.71 85.09 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (pin "1" (uuid e0652241-6721-4785-8eb0-993a241b29a3))
+ (pin "2" (uuid 0e8f9dbc-5d48-4c49-8880-ae3b3ecd3117))
+ (pin "3" (uuid bf6237d7-633c-4f89-9c74-1d5b755179f1))
+ (pin "4" (uuid 1e862182-222c-4223-8db7-eb505d135408))
+ (pin "5" (uuid cb9a1e6e-d7da-4fd8-acf8-73a1473dc09e))
+ (pin "6" (uuid da2f543a-30dc-429e-b42c-7829617ab50d))
+ (pin "7" (uuid 68bd699f-bdc2-4899-8dad-8697735af938))
+ (pin "8" (uuid 858c8c22-9c01-437b-887c-3ab41d54b1fe))
+ )
+
+ (symbol (lib_id "Device:R") (at 138.43 40.64 90) (unit 1)
+ (in_bom yes) (on_board yes)
+ (uuid 00000000-0000-0000-0000-0000604bcfe5)
+ (property "Reference" "R1" (id 0) (at 137.16 38.1 90)
+ (effects (font (size 1.27 1.27)) (justify right))
+ )
+ (property "Value" "" (id 1) (at 135.89 40.64 90)
+ (effects (font (size 1.27 1.27)) (justify right))
+ )
+ (property "Footprint" "" (id 2) (at 138.43 42.418 90)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "Datasheet" "~" (id 3) (at 138.43 40.64 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "LCSC" "C172965" (id 4) (at 138.43 40.64 90)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (pin "1" (uuid a7779120-8d8e-4c63-bd1d-1f2be0155c1e))
+ (pin "2" (uuid c273dc66-91c0-491a-9f40-68fe20c13737))
+ )
+
+ (symbol (lib_id "Device:R") (at 138.43 45.72 270) (unit 1)
+ (in_bom yes) (on_board yes)
+ (uuid 00000000-0000-0000-0000-0000604be4d6)
+ (property "Reference" "R2" (id 0) (at 139.7 43.18 90)
+ (effects (font (size 1.27 1.27)) (justify right))
+ )
+ (property "Value" "" (id 1) (at 140.97 45.72 90)
+ (effects (font (size 1.27 1.27)) (justify right))
+ )
+ (property "Footprint" "" (id 2) (at 138.43 43.942 90)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "Datasheet" "~" (id 3) (at 138.43 45.72 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "LCSC" "C172965" (id 4) (at 138.43 45.72 90)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (pin "1" (uuid c264aa90-f606-4976-a247-976787253e35))
+ (pin "2" (uuid eec0d6af-b8d6-4ba4-8132-99d1ac369234))
+ )
+
+ (symbol (lib_id "Device:R") (at 138.43 50.8 90) (unit 1)
+ (in_bom yes) (on_board yes)
+ (uuid 00000000-0000-0000-0000-0000604c20f3)
+ (property "Reference" "R3" (id 0) (at 137.16 48.26 90)
+ (effects (font (size 1.27 1.27)) (justify right))
+ )
+ (property "Value" "" (id 1) (at 135.89 50.8 90)
+ (effects (font (size 1.27 1.27)) (justify right))
+ )
+ (property "Footprint" "" (id 2) (at 138.43 52.578 90)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "Datasheet" "~" (id 3) (at 138.43 50.8 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "LCSC" "C172965" (id 4) (at 138.43 50.8 90)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (pin "1" (uuid 670e5ebf-5bdf-4075-bd4c-22eab5562316))
+ (pin "2" (uuid 899fe8ae-c23d-4b20-a3e4-a59ccca71752))
+ )
+
+ (symbol (lib_id "Device:R") (at 138.43 55.88 270) (unit 1)
+ (in_bom yes) (on_board yes)
+ (uuid 00000000-0000-0000-0000-0000604c282a)
+ (property "Reference" "R4" (id 0) (at 139.7 53.34 90)
+ (effects (font (size 1.27 1.27)) (justify right))
+ )
+ (property "Value" "" (id 1) (at 140.97 55.88 90)
+ (effects (font (size 1.27 1.27)) (justify right))
+ )
+ (property "Footprint" "" (id 2) (at 138.43 54.102 90)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "Datasheet" "~" (id 3) (at 138.43 55.88 0)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (property "LCSC" "C172965" (id 4) (at 138.43 55.88 90)
+ (effects (font (size 1.27 1.27)) hide)
+ )
+ (pin "1" (uuid c748d2f5-60b1-4522-a318-c97a8c105861))
+ (pin "2" (uuid 1fd3de6b-2b30-41ee-aca2-4b07f746cf42))
+ )
+
+ (sheet_instances
+ (path "/" (page "1"))
+ )
+
+ (symbol_instances
+ (path "/00000000-0000-0000-0000-00005fb67ac2"
+ (reference "CONN1") (unit 1) (value "GamePort") (footprint "Connector_Dsub:DSUB-15_Female_Horizontal_P2.77x2.84mm_EdgePinOffset7.70mm_Housed_MountingHolesOffset9.12mm")
+ )
+ (path "/00000000-0000-0000-0000-0000604bcfe5"
+ (reference "R1") (unit 1) (value "100k") (footprint "Resistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal")
+ )
+ (path "/00000000-0000-0000-0000-0000604be4d6"
+ (reference "R2") (unit 1) (value "100k") (footprint "Resistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal")
+ )
+ (path "/00000000-0000-0000-0000-0000604c20f3"
+ (reference "R3") (unit 1) (value "100k") (footprint "Resistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal")
+ )
+ (path "/00000000-0000-0000-0000-0000604c282a"
+ (reference "R4") (unit 1) (value "100k") (footprint "Resistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal")
+ )
+ (path "/00000000-0000-0000-0000-00005ff7e601"
+ (reference "SW1") (unit 1) (value "SW_DIP_x04") (footprint "Button_Switch_THT:SW_DIP_SPSTx04_Slide_9.78x12.34mm_W7.62mm_P2.54mm")
+ )
+ (path "/00000000-0000-0000-0000-00005ff74419"
+ (reference "U1") (unit 1) (value "Arduino_Pro_Micro") (footprint "Package_DIP:DIP-24_W15.24mm_Socket")
+ )
+ )
+)
diff --git a/kicad/lib/LICENSE b/kicad/lib/LICENSE
new file mode 100644
index 0000000..f288702
--- /dev/null
+++ b/kicad/lib/LICENSE
@@ -0,0 +1,674 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 3, 29 June 2007
+
+ Copyright (C) 2007 Free Software Foundation, Inc.
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The GNU General Public License is a free, copyleft license for
+software and other kinds of works.
+
+ The licenses for most software and other practical works are designed
+to take away your freedom to share and change the works. By contrast,
+the GNU General Public License is intended to guarantee your freedom to
+share and change all versions of a program--to make sure it remains free
+software for all its users. We, the Free Software Foundation, use the
+GNU General Public License for most of our software; it applies also to
+any other work released this way by its authors. You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+them if you wish), that you receive source code or can get it if you
+want it, that you can change the software or use pieces of it in new
+free programs, and that you know you can do these things.
+
+ To protect your rights, we need to prevent others from denying you
+these rights or asking you to surrender the rights. Therefore, you have
+certain responsibilities if you distribute copies of the software, or if
+you modify it: responsibilities to respect the freedom of others.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must pass on to the recipients the same
+freedoms that you received. You must make sure that they, too, receive
+or can get the source code. And you must show them these terms so they
+know their rights.
+
+ Developers that use the GNU GPL protect your rights with two steps:
+(1) assert copyright on the software, and (2) offer you this License
+giving you legal permission to copy, distribute and/or modify it.
+
+ For the developers' and authors' protection, the GPL clearly explains
+that there is no warranty for this free software. For both users' and
+authors' sake, the GPL requires that modified versions be marked as
+changed, so that their problems will not be attributed erroneously to
+authors of previous versions.
+
+ Some devices are designed to deny users access to install or run
+modified versions of the software inside them, although the manufacturer
+can do so. This is fundamentally incompatible with the aim of
+protecting users' freedom to change the software. The systematic
+pattern of such abuse occurs in the area of products for individuals to
+use, which is precisely where it is most unacceptable. Therefore, we
+have designed this version of the GPL to prohibit the practice for those
+products. If such problems arise substantially in other domains, we
+stand ready to extend this provision to those domains in future versions
+of the GPL, as needed to protect the freedom of users.
+
+ Finally, every program is threatened constantly by software patents.
+States should not allow patents to restrict development and use of
+software on general-purpose computers, but in those that do, we wish to
+avoid the special danger that patents applied to a free program could
+make it effectively proprietary. To prevent this, the GPL assures that
+patents cannot be used to render the program non-free.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ TERMS AND CONDITIONS
+
+ 0. Definitions.
+
+ "This License" refers to version 3 of the GNU General Public License.
+
+ "Copyright" also means copyright-like laws that apply to other kinds of
+works, such as semiconductor masks.
+
+ "The Program" refers to any copyrightable work licensed under this
+License. Each licensee is addressed as "you". "Licensees" and
+"recipients" may be individuals or organizations.
+
+ To "modify" a work means to copy from or adapt all or part of the work
+in a fashion requiring copyright permission, other than the making of an
+exact copy. The resulting work is called a "modified version" of the
+earlier work or a work "based on" the earlier work.
+
+ A "covered work" means either the unmodified Program or a work based
+on the Program.
+
+ To "propagate" a work means to do anything with it that, without
+permission, would make you directly or secondarily liable for
+infringement under applicable copyright law, except executing it on a
+computer or modifying a private copy. Propagation includes copying,
+distribution (with or without modification), making available to the
+public, and in some countries other activities as well.
+
+ To "convey" a work means any kind of propagation that enables other
+parties to make or receive copies. Mere interaction with a user through
+a computer network, with no transfer of a copy, is not conveying.
+
+ An interactive user interface displays "Appropriate Legal Notices"
+to the extent that it includes a convenient and prominently visible
+feature that (1) displays an appropriate copyright notice, and (2)
+tells the user that there is no warranty for the work (except to the
+extent that warranties are provided), that licensees may convey the
+work under this License, and how to view a copy of this License. If
+the interface presents a list of user commands or options, such as a
+menu, a prominent item in the list meets this criterion.
+
+ 1. Source Code.
+
+ The "source code" for a work means the preferred form of the work
+for making modifications to it. "Object code" means any non-source
+form of a work.
+
+ A "Standard Interface" means an interface that either is an official
+standard defined by a recognized standards body, or, in the case of
+interfaces specified for a particular programming language, one that
+is widely used among developers working in that language.
+
+ The "System Libraries" of an executable work include anything, other
+than the work as a whole, that (a) is included in the normal form of
+packaging a Major Component, but which is not part of that Major
+Component, and (b) serves only to enable use of the work with that
+Major Component, or to implement a Standard Interface for which an
+implementation is available to the public in source code form. A
+"Major Component", in this context, means a major essential component
+(kernel, window system, and so on) of the specific operating system
+(if any) on which the executable work runs, or a compiler used to
+produce the work, or an object code interpreter used to run it.
+
+ The "Corresponding Source" for a work in object code form means all
+the source code needed to generate, install, and (for an executable
+work) run the object code and to modify the work, including scripts to
+control those activities. However, it does not include the work's
+System Libraries, or general-purpose tools or generally available free
+programs which are used unmodified in performing those activities but
+which are not part of the work. For example, Corresponding Source
+includes interface definition files associated with source files for
+the work, and the source code for shared libraries and dynamically
+linked subprograms that the work is specifically designed to require,
+such as by intimate data communication or control flow between those
+subprograms and other parts of the work.
+
+ The Corresponding Source need not include anything that users
+can regenerate automatically from other parts of the Corresponding
+Source.
+
+ The Corresponding Source for a work in source code form is that
+same work.
+
+ 2. Basic Permissions.
+
+ All rights granted under this License are granted for the term of
+copyright on the Program, and are irrevocable provided the stated
+conditions are met. This License explicitly affirms your unlimited
+permission to run the unmodified Program. The output from running a
+covered work is covered by this License only if the output, given its
+content, constitutes a covered work. This License acknowledges your
+rights of fair use or other equivalent, as provided by copyright law.
+
+ You may make, run and propagate covered works that you do not
+convey, without conditions so long as your license otherwise remains
+in force. You may convey covered works to others for the sole purpose
+of having them make modifications exclusively for you, or provide you
+with facilities for running those works, provided that you comply with
+the terms of this License in conveying all material for which you do
+not control copyright. Those thus making or running the covered works
+for you must do so exclusively on your behalf, under your direction
+and control, on terms that prohibit them from making any copies of
+your copyrighted material outside their relationship with you.
+
+ Conveying under any other circumstances is permitted solely under
+the conditions stated below. Sublicensing is not allowed; section 10
+makes it unnecessary.
+
+ 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
+
+ No covered work shall be deemed part of an effective technological
+measure under any applicable law fulfilling obligations under article
+11 of the WIPO copyright treaty adopted on 20 December 1996, or
+similar laws prohibiting or restricting circumvention of such
+measures.
+
+ When you convey a covered work, you waive any legal power to forbid
+circumvention of technological measures to the extent such circumvention
+is effected by exercising rights under this License with respect to
+the covered work, and you disclaim any intention to limit operation or
+modification of the work as a means of enforcing, against the work's
+users, your or third parties' legal rights to forbid circumvention of
+technological measures.
+
+ 4. Conveying Verbatim Copies.
+
+ You may convey verbatim copies of the Program's source code as you
+receive it, in any medium, provided that you conspicuously and
+appropriately publish on each copy an appropriate copyright notice;
+keep intact all notices stating that this License and any
+non-permissive terms added in accord with section 7 apply to the code;
+keep intact all notices of the absence of any warranty; and give all
+recipients a copy of this License along with the Program.
+
+ You may charge any price or no price for each copy that you convey,
+and you may offer support or warranty protection for a fee.
+
+ 5. Conveying Modified Source Versions.
+
+ You may convey a work based on the Program, or the modifications to
+produce it from the Program, in the form of source code under the
+terms of section 4, provided that you also meet all of these conditions:
+
+ a) The work must carry prominent notices stating that you modified
+ it, and giving a relevant date.
+
+ b) The work must carry prominent notices stating that it is
+ released under this License and any conditions added under section
+ 7. This requirement modifies the requirement in section 4 to
+ "keep intact all notices".
+
+ c) You must license the entire work, as a whole, under this
+ License to anyone who comes into possession of a copy. This
+ License will therefore apply, along with any applicable section 7
+ additional terms, to the whole of the work, and all its parts,
+ regardless of how they are packaged. This License gives no
+ permission to license the work in any other way, but it does not
+ invalidate such permission if you have separately received it.
+
+ d) If the work has interactive user interfaces, each must display
+ Appropriate Legal Notices; however, if the Program has interactive
+ interfaces that do not display Appropriate Legal Notices, your
+ work need not make them do so.
+
+ A compilation of a covered work with other separate and independent
+works, which are not by their nature extensions of the covered work,
+and which are not combined with it such as to form a larger program,
+in or on a volume of a storage or distribution medium, is called an
+"aggregate" if the compilation and its resulting copyright are not
+used to limit the access or legal rights of the compilation's users
+beyond what the individual works permit. Inclusion of a covered work
+in an aggregate does not cause this License to apply to the other
+parts of the aggregate.
+
+ 6. Conveying Non-Source Forms.
+
+ You may convey a covered work in object code form under the terms
+of sections 4 and 5, provided that you also convey the
+machine-readable Corresponding Source under the terms of this License,
+in one of these ways:
+
+ a) Convey the object code in, or embodied in, a physical product
+ (including a physical distribution medium), accompanied by the
+ Corresponding Source fixed on a durable physical medium
+ customarily used for software interchange.
+
+ b) Convey the object code in, or embodied in, a physical product
+ (including a physical distribution medium), accompanied by a
+ written offer, valid for at least three years and valid for as
+ long as you offer spare parts or customer support for that product
+ model, to give anyone who possesses the object code either (1) a
+ copy of the Corresponding Source for all the software in the
+ product that is covered by this License, on a durable physical
+ medium customarily used for software interchange, for a price no
+ more than your reasonable cost of physically performing this
+ conveying of source, or (2) access to copy the
+ Corresponding Source from a network server at no charge.
+
+ c) Convey individual copies of the object code with a copy of the
+ written offer to provide the Corresponding Source. This
+ alternative is allowed only occasionally and noncommercially, and
+ only if you received the object code with such an offer, in accord
+ with subsection 6b.
+
+ d) Convey the object code by offering access from a designated
+ place (gratis or for a charge), and offer equivalent access to the
+ Corresponding Source in the same way through the same place at no
+ further charge. You need not require recipients to copy the
+ Corresponding Source along with the object code. If the place to
+ copy the object code is a network server, the Corresponding Source
+ may be on a different server (operated by you or a third party)
+ that supports equivalent copying facilities, provided you maintain
+ clear directions next to the object code saying where to find the
+ Corresponding Source. Regardless of what server hosts the
+ Corresponding Source, you remain obligated to ensure that it is
+ available for as long as needed to satisfy these requirements.
+
+ e) Convey the object code using peer-to-peer transmission, provided
+ you inform other peers where the object code and Corresponding
+ Source of the work are being offered to the general public at no
+ charge under subsection 6d.
+
+ A separable portion of the object code, whose source code is excluded
+from the Corresponding Source as a System Library, need not be
+included in conveying the object code work.
+
+ A "User Product" is either (1) a "consumer product", which means any
+tangible personal property which is normally used for personal, family,
+or household purposes, or (2) anything designed or sold for incorporation
+into a dwelling. In determining whether a product is a consumer product,
+doubtful cases shall be resolved in favor of coverage. For a particular
+product received by a particular user, "normally used" refers to a
+typical or common use of that class of product, regardless of the status
+of the particular user or of the way in which the particular user
+actually uses, or expects or is expected to use, the product. A product
+is a consumer product regardless of whether the product has substantial
+commercial, industrial or non-consumer uses, unless such uses represent
+the only significant mode of use of the product.
+
+ "Installation Information" for a User Product means any methods,
+procedures, authorization keys, or other information required to install
+and execute modified versions of a covered work in that User Product from
+a modified version of its Corresponding Source. The information must
+suffice to ensure that the continued functioning of the modified object
+code is in no case prevented or interfered with solely because
+modification has been made.
+
+ If you convey an object code work under this section in, or with, or
+specifically for use in, a User Product, and the conveying occurs as
+part of a transaction in which the right of possession and use of the
+User Product is transferred to the recipient in perpetuity or for a
+fixed term (regardless of how the transaction is characterized), the
+Corresponding Source conveyed under this section must be accompanied
+by the Installation Information. But this requirement does not apply
+if neither you nor any third party retains the ability to install
+modified object code on the User Product (for example, the work has
+been installed in ROM).
+
+ The requirement to provide Installation Information does not include a
+requirement to continue to provide support service, warranty, or updates
+for a work that has been modified or installed by the recipient, or for
+the User Product in which it has been modified or installed. Access to a
+network may be denied when the modification itself materially and
+adversely affects the operation of the network or violates the rules and
+protocols for communication across the network.
+
+ Corresponding Source conveyed, and Installation Information provided,
+in accord with this section must be in a format that is publicly
+documented (and with an implementation available to the public in
+source code form), and must require no special password or key for
+unpacking, reading or copying.
+
+ 7. Additional Terms.
+
+ "Additional permissions" are terms that supplement the terms of this
+License by making exceptions from one or more of its conditions.
+Additional permissions that are applicable to the entire Program shall
+be treated as though they were included in this License, to the extent
+that they are valid under applicable law. If additional permissions
+apply only to part of the Program, that part may be used separately
+under those permissions, but the entire Program remains governed by
+this License without regard to the additional permissions.
+
+ When you convey a copy of a covered work, you may at your option
+remove any additional permissions from that copy, or from any part of
+it. (Additional permissions may be written to require their own
+removal in certain cases when you modify the work.) You may place
+additional permissions on material, added by you to a covered work,
+for which you have or can give appropriate copyright permission.
+
+ Notwithstanding any other provision of this License, for material you
+add to a covered work, you may (if authorized by the copyright holders of
+that material) supplement the terms of this License with terms:
+
+ a) Disclaiming warranty or limiting liability differently from the
+ terms of sections 15 and 16 of this License; or
+
+ b) Requiring preservation of specified reasonable legal notices or
+ author attributions in that material or in the Appropriate Legal
+ Notices displayed by works containing it; or
+
+ c) Prohibiting misrepresentation of the origin of that material, or
+ requiring that modified versions of such material be marked in
+ reasonable ways as different from the original version; or
+
+ d) Limiting the use for publicity purposes of names of licensors or
+ authors of the material; or
+
+ e) Declining to grant rights under trademark law for use of some
+ trade names, trademarks, or service marks; or
+
+ f) Requiring indemnification of licensors and authors of that
+ material by anyone who conveys the material (or modified versions of
+ it) with contractual assumptions of liability to the recipient, for
+ any liability that these contractual assumptions directly impose on
+ those licensors and authors.
+
+ All other non-permissive additional terms are considered "further
+restrictions" within the meaning of section 10. If the Program as you
+received it, or any part of it, contains a notice stating that it is
+governed by this License along with a term that is a further
+restriction, you may remove that term. If a license document contains
+a further restriction but permits relicensing or conveying under this
+License, you may add to a covered work material governed by the terms
+of that license document, provided that the further restriction does
+not survive such relicensing or conveying.
+
+ If you add terms to a covered work in accord with this section, you
+must place, in the relevant source files, a statement of the
+additional terms that apply to those files, or a notice indicating
+where to find the applicable terms.
+
+ Additional terms, permissive or non-permissive, may be stated in the
+form of a separately written license, or stated as exceptions;
+the above requirements apply either way.
+
+ 8. Termination.
+
+ You may not propagate or modify a covered work except as expressly
+provided under this License. Any attempt otherwise to propagate or
+modify it is void, and will automatically terminate your rights under
+this License (including any patent licenses granted under the third
+paragraph of section 11).
+
+ However, if you cease all violation of this License, then your
+license from a particular copyright holder is reinstated (a)
+provisionally, unless and until the copyright holder explicitly and
+finally terminates your license, and (b) permanently, if the copyright
+holder fails to notify you of the violation by some reasonable means
+prior to 60 days after the cessation.
+
+ Moreover, your license from a particular copyright holder is
+reinstated permanently if the copyright holder notifies you of the
+violation by some reasonable means, this is the first time you have
+received notice of violation of this License (for any work) from that
+copyright holder, and you cure the violation prior to 30 days after
+your receipt of the notice.
+
+ Termination of your rights under this section does not terminate the
+licenses of parties who have received copies or rights from you under
+this License. If your rights have been terminated and not permanently
+reinstated, you do not qualify to receive new licenses for the same
+material under section 10.
+
+ 9. Acceptance Not Required for Having Copies.
+
+ You are not required to accept this License in order to receive or
+run a copy of the Program. Ancillary propagation of a covered work
+occurring solely as a consequence of using peer-to-peer transmission
+to receive a copy likewise does not require acceptance. However,
+nothing other than this License grants you permission to propagate or
+modify any covered work. These actions infringe copyright if you do
+not accept this License. Therefore, by modifying or propagating a
+covered work, you indicate your acceptance of this License to do so.
+
+ 10. Automatic Licensing of Downstream Recipients.
+
+ Each time you convey a covered work, the recipient automatically
+receives a license from the original licensors, to run, modify and
+propagate that work, subject to this License. You are not responsible
+for enforcing compliance by third parties with this License.
+
+ An "entity transaction" is a transaction transferring control of an
+organization, or substantially all assets of one, or subdividing an
+organization, or merging organizations. If propagation of a covered
+work results from an entity transaction, each party to that
+transaction who receives a copy of the work also receives whatever
+licenses to the work the party's predecessor in interest had or could
+give under the previous paragraph, plus a right to possession of the
+Corresponding Source of the work from the predecessor in interest, if
+the predecessor has it or can get it with reasonable efforts.
+
+ You may not impose any further restrictions on the exercise of the
+rights granted or affirmed under this License. For example, you may
+not impose a license fee, royalty, or other charge for exercise of
+rights granted under this License, and you may not initiate litigation
+(including a cross-claim or counterclaim in a lawsuit) alleging that
+any patent claim is infringed by making, using, selling, offering for
+sale, or importing the Program or any portion of it.
+
+ 11. Patents.
+
+ A "contributor" is a copyright holder who authorizes use under this
+License of the Program or a work on which the Program is based. The
+work thus licensed is called the contributor's "contributor version".
+
+ A contributor's "essential patent claims" are all patent claims
+owned or controlled by the contributor, whether already acquired or
+hereafter acquired, that would be infringed by some manner, permitted
+by this License, of making, using, or selling its contributor version,
+but do not include claims that would be infringed only as a
+consequence of further modification of the contributor version. For
+purposes of this definition, "control" includes the right to grant
+patent sublicenses in a manner consistent with the requirements of
+this License.
+
+ Each contributor grants you a non-exclusive, worldwide, royalty-free
+patent license under the contributor's essential patent claims, to
+make, use, sell, offer for sale, import and otherwise run, modify and
+propagate the contents of its contributor version.
+
+ In the following three paragraphs, a "patent license" is any express
+agreement or commitment, however denominated, not to enforce a patent
+(such as an express permission to practice a patent or covenant not to
+sue for patent infringement). To "grant" such a patent license to a
+party means to make such an agreement or commitment not to enforce a
+patent against the party.
+
+ If you convey a covered work, knowingly relying on a patent license,
+and the Corresponding Source of the work is not available for anyone
+to copy, free of charge and under the terms of this License, through a
+publicly available network server or other readily accessible means,
+then you must either (1) cause the Corresponding Source to be so
+available, or (2) arrange to deprive yourself of the benefit of the
+patent license for this particular work, or (3) arrange, in a manner
+consistent with the requirements of this License, to extend the patent
+license to downstream recipients. "Knowingly relying" means you have
+actual knowledge that, but for the patent license, your conveying the
+covered work in a country, or your recipient's use of the covered work
+in a country, would infringe one or more identifiable patents in that
+country that you have reason to believe are valid.
+
+ If, pursuant to or in connection with a single transaction or
+arrangement, you convey, or propagate by procuring conveyance of, a
+covered work, and grant a patent license to some of the parties
+receiving the covered work authorizing them to use, propagate, modify
+or convey a specific copy of the covered work, then the patent license
+you grant is automatically extended to all recipients of the covered
+work and works based on it.
+
+ A patent license is "discriminatory" if it does not include within
+the scope of its coverage, prohibits the exercise of, or is
+conditioned on the non-exercise of one or more of the rights that are
+specifically granted under this License. You may not convey a covered
+work if you are a party to an arrangement with a third party that is
+in the business of distributing software, under which you make payment
+to the third party based on the extent of your activity of conveying
+the work, and under which the third party grants, to any of the
+parties who would receive the covered work from you, a discriminatory
+patent license (a) in connection with copies of the covered work
+conveyed by you (or copies made from those copies), or (b) primarily
+for and in connection with specific products or compilations that
+contain the covered work, unless you entered into that arrangement,
+or that patent license was granted, prior to 28 March 2007.
+
+ Nothing in this License shall be construed as excluding or limiting
+any implied license or other defenses to infringement that may
+otherwise be available to you under applicable patent law.
+
+ 12. No Surrender of Others' Freedom.
+
+ If conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot convey a
+covered work so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you may
+not convey it at all. For example, if you agree to terms that obligate you
+to collect a royalty for further conveying from those to whom you convey
+the Program, the only way you could satisfy both those terms and this
+License would be to refrain entirely from conveying the Program.
+
+ 13. Use with the GNU Affero General Public License.
+
+ Notwithstanding any other provision of this License, you have
+permission to link or combine any covered work with a work licensed
+under version 3 of the GNU Affero General Public License into a single
+combined work, and to convey the resulting work. The terms of this
+License will continue to apply to the part which is the covered work,
+but the special requirements of the GNU Affero General Public License,
+section 13, concerning interaction through a network will apply to the
+combination as such.
+
+ 14. Revised Versions of this License.
+
+ The Free Software Foundation may publish revised and/or new versions of
+the GNU General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+ Each version is given a distinguishing version number. If the
+Program specifies that a certain numbered version of the GNU General
+Public License "or any later version" applies to it, you have the
+option of following the terms and conditions either of that numbered
+version or of any later version published by the Free Software
+Foundation. If the Program does not specify a version number of the
+GNU General Public License, you may choose any version ever published
+by the Free Software Foundation.
+
+ If the Program specifies that a proxy can decide which future
+versions of the GNU General Public License can be used, that proxy's
+public statement of acceptance of a version permanently authorizes you
+to choose that version for the Program.
+
+ Later license versions may give you additional or different
+permissions. However, no additional obligations are imposed on any
+author or copyright holder as a result of your choosing to follow a
+later version.
+
+ 15. Disclaimer of Warranty.
+
+ THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
+APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
+HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
+OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
+THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
+IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
+ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+ 16. Limitation of Liability.
+
+ IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
+THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
+GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
+USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
+DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
+PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
+EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
+SUCH DAMAGES.
+
+ 17. Interpretation of Sections 15 and 16.
+
+ If the disclaimer of warranty and limitation of liability provided
+above cannot be given local legal effect according to their terms,
+reviewing courts shall apply local law that most closely approximates
+an absolute waiver of all civil liability in connection with the
+Program, unless a warranty or assumption of liability accompanies a
+copy of the Program in return for a fee.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+state the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+
+ Copyright (C)
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see .
+
+Also add information on how to contact you by electronic and paper mail.
+
+ If the program does terminal interaction, make it output a short
+notice like this when it starts in an interactive mode:
+
+ Copyright (C)
+ This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, your program's commands
+might be different; for a GUI interface, you would use an "about box".
+
+ You should also get your employer (if you work as a programmer) or school,
+if any, to sign a "copyright disclaimer" for the program, if necessary.
+For more information on this, and how to apply and follow the GNU GPL, see
+.
+
+ The GNU General Public License does not permit incorporating your program
+into proprietary programs. If your program is a subroutine library, you
+may consider it more useful to permit linking proprietary applications with
+the library. If this is what you want to do, use the GNU Lesser General
+Public License instead of this License. But first, please read
+.
diff --git a/kicad/lib/Necroware.dcm b/kicad/lib/Necroware.dcm
new file mode 100644
index 0000000..89a0bb8
--- /dev/null
+++ b/kicad/lib/Necroware.dcm
@@ -0,0 +1,9 @@
+EESchema-DOCLIB Version 2.0
+#
+$CMP Mini-DIN-6_shielded
+D 6-pin Mini-DIN connector
+K Mini-DIN
+F http://service.powerdynamics.com/ec/Catalog17/Section%2011.pdf
+$ENDCMP
+#
+#End Doc Library
diff --git a/kicad/lib/Necroware.lib b/kicad/lib/Necroware.lib
new file mode 100644
index 0000000..90336f4
--- /dev/null
+++ b/kicad/lib/Necroware.lib
@@ -0,0 +1,121 @@
+EESchema-LIBRARY Version 2.4
+#encoding utf-8
+#
+# Arduino_Mini
+#
+DEF Arduino_Mini U 0 40 Y Y 1 F N
+F0 "U" 450 -50 50 H V C CNN
+F1 "Arduino_Mini" 450 -800 50 V V C CNN
+F2 "" 0 0 50 H I C CNN
+F3 "" 0 0 50 H I C CNN
+DRAW
+S 100 -100 750 -1550 0 1 0 f
+X TX/D0 1 0 -200 100 R 50 50 1 1 B
+X D7 10 0 -1100 100 R 50 50 1 1 B
+X D8 11 0 -1200 100 R 50 50 1 1 B
+X D9 12 0 -1300 100 R 50 50 1 1 B
+X D10 13 850 -1300 100 L 50 50 1 1 B
+X D11 14 850 -1200 100 L 50 50 1 1 B
+X D12 15 850 -1100 100 L 50 50 1 1 B
+X D13 16 850 -1000 100 L 50 50 1 1 B
+X A0 17 850 -900 100 L 50 50 1 1 B
+X A1 18 850 -800 100 L 50 50 1 1 B
+X A2 19 850 -700 100 L 50 50 1 1 B
+X RX/D1 2 0 -300 100 R 50 50 1 1 B
+X A3 20 850 -600 100 L 50 50 1 1 B
+X VCC 21 850 -500 100 L 50 50 1 1 B
+X RST 22 850 -400 100 L 50 50 1 1 B
+X GND 23 850 -300 100 L 50 50 1 1 B
+X VIN 24 850 -200 100 L 50 50 1 1 B
+X GND 25 250 -1650 100 U 50 50 1 1 B
+X A4 26 350 -1650 100 U 50 50 1 1 B
+X A5 27 450 -1650 100 U 50 50 1 1 B
+X A6 28 550 -1650 100 U 50 50 1 1 B
+X A7 29 650 -1650 100 U 50 50 1 1 B
+X RST 3 0 -400 100 R 50 50 1 1 B
+X GND 4 0 -500 100 R 50 50 1 1 B
+X D2 5 0 -600 100 R 50 50 1 1 B
+X D3 6 0 -700 100 R 50 50 1 1 B
+X D4 7 0 -800 100 R 50 50 1 1 B
+X D5 8 0 -900 100 R 50 50 1 1 B
+X D6 9 0 -1000 100 R 50 50 1 1 B
+ENDDRAW
+ENDDEF
+#
+# Arduino_Pro_Micro
+#
+DEF Arduino_Pro_Micro U 0 40 Y Y 1 F N
+F0 "U" 550 -50 50 H V C CNN
+F1 "Arduino_Pro_Micro" 550 -700 50 V V C CNN
+F2 "" 0 0 50 H I C CNN
+F3 "" 0 0 50 H I C CNN
+DRAW
+S 100 -100 1000 -1400 0 1 0 f
+X 1/TX 1 0 -200 100 R 50 50 1 1 B
+X 7 10 0 -1100 100 R 50 50 1 1 B
+X 8/A8 11 0 -1200 100 R 50 50 1 1 B
+X 9/A9 12 0 -1300 100 R 50 50 1 1 B
+X 10/A10 13 1100 -1300 100 L 50 50 1 1 B
+X 16/MOSI 14 1100 -1200 100 L 50 50 1 1 B
+X 14/MISO 15 1100 -1100 100 L 50 50 1 1 B
+X 15/SCLK 16 1100 -1000 100 L 50 50 1 1 B
+X 18/A0 17 1100 -900 100 L 50 50 1 1 B
+X 19/A1 18 1100 -800 100 L 50 50 1 1 B
+X 20/A2 19 1100 -700 100 L 50 50 1 1 B
+X 0/RX 2 0 -300 100 R 50 50 1 1 B
+X 21/A3 20 1100 -600 100 L 50 50 1 1 B
+X VCC 21 1100 -500 100 L 50 50 1 1 B
+X RST 22 1100 -400 100 L 50 50 1 1 B
+X GND 23 1100 -300 100 L 50 50 1 1 B
+X VIN 24 1100 -200 100 L 50 50 1 1 B
+X GND 3 0 -400 100 R 50 50 1 1 B
+X GND 4 0 -500 100 R 50 50 1 1 B
+X 2/SDA 5 0 -600 100 R 50 50 1 1 B
+X 3/SCL 6 0 -700 100 R 50 50 1 1 B
+X 4/A6 7 0 -800 100 R 50 50 1 1 B
+X 5 8 0 -900 100 R 50 50 1 1 B
+X 6/A7 9 0 -1000 100 R 50 50 1 1 B
+ENDDRAW
+ENDDEF
+#
+# Mini-DIN-6_shielded
+#
+DEF Mini-DIN-6_shielded J 0 40 Y Y 1 F N
+F0 "J" 0 250 50 H V C CNN
+F1 "Mini-DIN-6_shielded" 50 350 50 H V C CNN
+F2 "" 0 0 50 H I C CNN
+F3 "" 0 0 50 H I C CNN
+$FPLIST
+ MINI?DIN*
+$ENDFPLIST
+DRAW
+A 0 0 200 -1269 -531 0 1 10 N -120 -160 120 -160
+A 2 4 200 1021 -1488 0 1 10 N -40 200 -170 -100
+A 2 5 198 -320 790 0 1 10 N 170 -100 40 200
+C -130 0 20 0 1 0 N
+C -80 -100 20 0 1 0 N
+C -80 100 20 0 1 0 N
+C 80 -100 20 0 1 0 N
+C 90 100 20 0 1 0 N
+C 130 0 20 0 1 0 N
+S -30 100 30 0 0 1 0 F
+P 2 0 1 0 -150 0 -200 0 N
+P 2 0 1 0 -100 100 -200 100 N
+P 2 0 1 0 110 100 200 100 N
+P 2 0 1 0 200 0 150 0 N
+P 3 0 1 10 -170 -100 -120 -100 -120 -160 N
+P 3 0 1 10 170 -100 120 -100 120 -160 N
+P 4 0 1 0 -80 -120 -80 -140 -200 -140 -200 -100 N
+P 4 0 1 10 -40 200 -40 160 40 160 40 200 N
+P 4 0 1 0 80 -120 80 -140 200 -140 200 -100 N
+X ~ 1 300 -100 100 L 50 50 1 1 P
+X ~ 2 -300 -100 100 R 50 50 1 1 P
+X ~ 3 300 0 100 L 50 50 1 1 P
+X ~ 4 -300 0 100 R 50 50 1 1 P
+X ~ 5 300 100 100 L 50 50 1 1 P
+X ~ 6 -300 100 100 R 50 50 1 1 P
+X ~ 7 0 -300 100 U 50 50 1 1 B
+ENDDRAW
+ENDDEF
+#
+#End Library
diff --git a/kicad/lib/Necroware.pretty/Arduino_Mini.kicad_mod b/kicad/lib/Necroware.pretty/Arduino_Mini.kicad_mod
new file mode 100644
index 0000000..8fad487
--- /dev/null
+++ b/kicad/lib/Necroware.pretty/Arduino_Mini.kicad_mod
@@ -0,0 +1,70 @@
+(module Arduino_Mini (layer F.Cu) (tedit 5FB85749)
+ (descr "24-lead though-hole mounted DIP package, row spacing 15.24 mm (600 mils), Socket")
+ (tags "THT DIP DIL PDIP 2.54mm 15.24mm 600mil Socket")
+ (fp_text reference REF** (at 7.62 -2.33) (layer F.SilkS)
+ (effects (font (size 1 1) (thickness 0.15)))
+ )
+ (fp_text value Arduino_Mini (at 7.62 30.27) (layer F.Fab)
+ (effects (font (size 1 1) (thickness 0.15)))
+ )
+ (fp_line (start 16.8 -1.6) (end -1.55 -1.6) (layer F.CrtYd) (width 0.05))
+ (fp_line (start 16.8 29.55) (end 16.8 -1.6) (layer F.CrtYd) (width 0.05))
+ (fp_line (start -1.55 29.55) (end 16.8 29.55) (layer F.CrtYd) (width 0.05))
+ (fp_line (start -1.55 -1.6) (end -1.55 29.55) (layer F.CrtYd) (width 0.05))
+ (fp_line (start 16.57 -1.39) (end -1.33 -1.39) (layer F.SilkS) (width 0.12))
+ (fp_line (start 16.57 29.33) (end 16.57 -1.39) (layer F.SilkS) (width 0.12))
+ (fp_line (start -1.33 29.33) (end 16.57 29.33) (layer F.SilkS) (width 0.12))
+ (fp_line (start -1.33 -1.39) (end -1.33 29.33) (layer F.SilkS) (width 0.12))
+ (fp_line (start 14.08 -1.33) (end 8.62 -1.33) (layer F.SilkS) (width 0.12))
+ (fp_line (start 14.08 29.27) (end 14.08 -1.33) (layer F.SilkS) (width 0.12))
+ (fp_line (start 1.16 29.27) (end 14.08 29.27) (layer F.SilkS) (width 0.12))
+ (fp_line (start 1.16 -1.33) (end 1.16 29.27) (layer F.SilkS) (width 0.12))
+ (fp_line (start 6.62 -1.33) (end 1.16 -1.33) (layer F.SilkS) (width 0.12))
+ (fp_line (start 16.51 -1.33) (end -1.27 -1.33) (layer F.Fab) (width 0.1))
+ (fp_line (start 16.51 29.27) (end 16.51 -1.33) (layer F.Fab) (width 0.1))
+ (fp_line (start -1.27 29.27) (end 16.51 29.27) (layer F.Fab) (width 0.1))
+ (fp_line (start -1.27 -1.33) (end -1.27 29.27) (layer F.Fab) (width 0.1))
+ (fp_line (start 0.255 -0.27) (end 1.255 -1.27) (layer F.Fab) (width 0.1))
+ (fp_line (start 0.255 29.21) (end 0.255 -0.27) (layer F.Fab) (width 0.1))
+ (fp_line (start 14.985 29.21) (end 0.255 29.21) (layer F.Fab) (width 0.1))
+ (fp_line (start 14.985 -1.27) (end 14.985 29.21) (layer F.Fab) (width 0.1))
+ (fp_line (start 1.255 -1.27) (end 14.985 -1.27) (layer F.Fab) (width 0.1))
+ (fp_arc (start 7.62 -1.33) (end 6.62 -1.33) (angle -180) (layer F.SilkS) (width 0.12))
+ (fp_text user %R (at 7.62 13.97) (layer F.Fab)
+ (effects (font (size 1 1) (thickness 0.15)))
+ )
+ (pad 1 thru_hole rect (at 0 0) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask))
+ (pad 13 thru_hole oval (at 15.24 27.94) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask))
+ (pad 2 thru_hole oval (at 0 2.54) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask))
+ (pad 14 thru_hole oval (at 15.24 25.4) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask))
+ (pad 3 thru_hole oval (at 0 5.08) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask))
+ (pad 15 thru_hole oval (at 15.24 22.86) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask))
+ (pad 4 thru_hole oval (at 0 7.62) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask))
+ (pad 16 thru_hole oval (at 15.24 20.32) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask))
+ (pad 5 thru_hole oval (at 0 10.16) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask))
+ (pad 17 thru_hole oval (at 15.24 17.78) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask))
+ (pad 6 thru_hole oval (at 0 12.7) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask))
+ (pad 18 thru_hole oval (at 15.24 15.24) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask))
+ (pad 7 thru_hole oval (at 0 15.24) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask))
+ (pad 19 thru_hole oval (at 15.24 12.7) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask))
+ (pad 8 thru_hole oval (at 0 17.78) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask))
+ (pad 20 thru_hole oval (at 15.24 10.16) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask))
+ (pad 9 thru_hole oval (at 0 20.32) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask))
+ (pad 21 thru_hole oval (at 15.24 7.62) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask))
+ (pad 10 thru_hole oval (at 0 22.86) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask))
+ (pad 22 thru_hole oval (at 15.24 5.08) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask))
+ (pad 11 thru_hole oval (at 0 25.4) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask))
+ (pad 23 thru_hole oval (at 15.24 2.54) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask))
+ (pad 12 thru_hole oval (at 0 27.94) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask))
+ (pad 24 thru_hole oval (at 15.24 0) (size 1.6 1.6) (drill 0.8) (layers *.Cu *.Mask))
+ (pad 25 thru_hole circle (at 2.54 27.94) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask))
+ (pad 26 thru_hole circle (at 5.08 27.94) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask))
+ (pad 27 thru_hole circle (at 7.62 27.94) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask))
+ (pad 28 thru_hole circle (at 10.16 27.94) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask))
+ (pad 29 thru_hole circle (at 12.7 27.94) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask))
+ (model ${KISYS3DMOD}/Package_DIP.3dshapes/DIP-24_W15.24mm_Socket.wrl
+ (at (xyz 0 0 0))
+ (scale (xyz 1 1 1))
+ (rotate (xyz 0 0 0))
+ )
+)
diff --git a/kicad/lib/Necroware.pretty/ISA_8BIT_EDGE.kicad_mod b/kicad/lib/Necroware.pretty/ISA_8BIT_EDGE.kicad_mod
new file mode 100644
index 0000000..d907b95
--- /dev/null
+++ b/kicad/lib/Necroware.pretty/ISA_8BIT_EDGE.kicad_mod
@@ -0,0 +1,76 @@
+(module ISA_8BIT_EDGE (layer F.Cu) (tedit 5FB84D5C)
+ (fp_text reference REF** (at -38.1 -1.905) (layer F.SilkS)
+ (effects (font (size 1 1) (thickness 0.15)))
+ )
+ (fp_text value ISA_8BIT_EDGE (at -46.355 -1.905) (layer F.Fab)
+ (effects (font (size 1 1) (thickness 0.15)))
+ )
+ (fp_line (start -78.105 0) (end -78.105 6.35) (layer F.Fab) (width 0.12))
+ (fp_line (start -78.105 6.35) (end -76.835 7.62) (layer F.Fab) (width 0.12))
+ (fp_line (start -76.835 7.62) (end 0.635 7.62) (layer F.Fab) (width 0.12))
+ (fp_line (start 0.635 7.62) (end 1.905 6.35) (layer F.Fab) (width 0.12))
+ (fp_line (start 1.905 6.35) (end 1.905 0) (layer F.Fab) (width 0.12))
+ (fp_line (start 1.905 0) (end -78.105 0) (layer F.Fab) (width 0.12))
+ (pad 1 connect rect (at 0 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 2 connect rect (at -2.54 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 3 connect rect (at -5.08 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 4 connect rect (at -7.62 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 5 connect rect (at -10.16 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 6 connect rect (at -12.7 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 7 connect rect (at -15.24 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 8 connect rect (at -17.78 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 9 connect rect (at -20.32 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 10 connect rect (at -22.86 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 11 connect rect (at -25.4 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 12 connect rect (at -27.94 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 13 connect rect (at -30.48 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 14 connect rect (at -33.02 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 15 connect rect (at -35.56 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 16 connect rect (at -38.1 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 17 connect rect (at -40.64 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 18 connect rect (at -43.18 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 19 connect rect (at -45.72 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 20 connect rect (at -48.26 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 21 connect rect (at -50.8 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 22 connect rect (at -53.34 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 23 connect rect (at -55.88 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 24 connect rect (at -58.42 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 25 connect rect (at -60.96 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 26 connect rect (at -63.5 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 27 connect rect (at -66.04 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 28 connect rect (at -68.58 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 29 connect rect (at -71.12 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 30 connect rect (at -73.66 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 31 connect rect (at -76.2 3.81) (size 1.27 7.62) (layers B.Cu B.Mask))
+ (pad 32 connect rect (at 0 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 33 connect rect (at -2.54 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 34 connect rect (at -5.08 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 35 connect rect (at -7.62 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 36 connect rect (at -10.16 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 37 connect rect (at -12.7 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 38 connect rect (at -15.24 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 39 connect rect (at -17.78 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 40 connect rect (at -20.32 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 41 connect rect (at -22.86 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 42 connect rect (at -25.4 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 43 connect rect (at -27.94 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 44 connect rect (at -30.48 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 45 connect rect (at -33.02 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 46 connect rect (at -35.56 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 47 connect rect (at -38.1 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 48 connect rect (at -40.64 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 49 connect rect (at -43.18 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 50 connect rect (at -45.72 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 51 connect rect (at -48.26 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 52 connect rect (at -50.8 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 53 connect rect (at -53.34 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 54 connect rect (at -55.88 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 55 connect rect (at -58.42 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 56 connect rect (at -60.96 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 57 connect rect (at -63.5 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 58 connect rect (at -66.04 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 59 connect rect (at -68.58 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 60 connect rect (at -71.12 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 61 connect rect (at -73.66 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+ (pad 62 connect rect (at -76.2 3.81) (size 1.27 7.62) (layers F.Cu F.Mask))
+)
diff --git a/kicad/lib/Necroware.pretty/Mini_DIN_6_LCSC_C77848.kicad_mod b/kicad/lib/Necroware.pretty/Mini_DIN_6_LCSC_C77848.kicad_mod
new file mode 100644
index 0000000..6b93dfe
--- /dev/null
+++ b/kicad/lib/Necroware.pretty/Mini_DIN_6_LCSC_C77848.kicad_mod
@@ -0,0 +1,21 @@
+(module Mini_DIN_6_LCSC_C77848 (layer F.Cu) (tedit 5FB9268E)
+ (fp_text reference REF** (at 3 -3) (layer F.SilkS)
+ (effects (font (size 1 1) (thickness 0.15)))
+ )
+ (fp_text value Mini_DIN_6_LCSC_C77848 (at 4 13) (layer F.Fab)
+ (effects (font (size 1 1) (thickness 0.15)))
+ )
+ (fp_line (start -3.45 -2) (end -3.45 11.28) (layer F.SilkS) (width 0.12))
+ (fp_line (start 10.25 11.28) (end -3.45 11.28) (layer F.SilkS) (width 0.12))
+ (fp_line (start 10.25 -2) (end 10.25 11.28) (layer F.SilkS) (width 0.12))
+ (fp_line (start -3.45 -2) (end 10.25 -2) (layer F.SilkS) (width 0.12))
+ (pad 6 thru_hole circle (at 0 0) (size 1.7 1.7) (drill 1.1) (layers *.Cu *.Mask))
+ (pad 4 thru_hole circle (at 0 2.5) (size 1.7 1.7) (drill 1.1) (layers *.Cu *.Mask))
+ (pad 5 thru_hole circle (at 6.8 0) (size 1.7 1.7) (drill 1.1) (layers *.Cu *.Mask))
+ (pad 3 thru_hole circle (at 6.8 2.5) (size 1.7 1.7) (drill 1.1) (layers *.Cu *.Mask))
+ (pad 2 thru_hole circle (at 2.1 2.5) (size 1.7 1.7) (drill 1.1) (layers *.Cu *.Mask))
+ (pad 1 thru_hole circle (at 4.7 2.5) (size 1.7 1.7) (drill 1.1) (layers *.Cu *.Mask))
+ (pad 7 thru_hole circle (at 3.4 6.58) (size 3.3 3.3) (drill 2.3) (layers *.Cu *.Mask))
+ (pad 7 thru_hole circle (at -3.45 5.78) (size 3.3 3.3) (drill 2.3) (layers *.Cu *.Mask))
+ (pad 7 thru_hole circle (at 10.25 5.78) (size 3.3 3.3) (drill 2.3) (layers *.Cu *.Mask))
+)
diff --git a/kicad/lib/Necroware.pretty/USB_Mini-B-Jing_Extension_LSCS_C46398.kicad_mod b/kicad/lib/Necroware.pretty/USB_Mini-B-Jing_Extension_LSCS_C46398.kicad_mod
new file mode 100644
index 0000000..b662fae
--- /dev/null
+++ b/kicad/lib/Necroware.pretty/USB_Mini-B-Jing_Extension_LSCS_C46398.kicad_mod
@@ -0,0 +1,22 @@
+(module USB_Mini-B-Jing_Extension_LSCS_C46398 (layer F.Cu) (tedit 5FBA7C90)
+ (fp_text reference REF** (at 0 -4) (layer F.SilkS)
+ (effects (font (size 1 1) (thickness 0.15)))
+ )
+ (fp_text value USB_Mini-B-Jing_Extension_LSCS_C46398 (at 0 -2) (layer F.Fab)
+ (effects (font (size 1 1) (thickness 0.15)))
+ )
+ (fp_line (start -3.7 7.45) (end 3.7 7.45) (layer F.SilkS) (width 0.12))
+ (fp_line (start -3.7 9.7) (end -3.7 0) (layer F.SilkS) (width 0.12))
+ (fp_line (start -3.7 9.7) (end 3.7 9.7) (layer F.SilkS) (width 0.12))
+ (fp_line (start 3.7 0) (end 3.7 9.7) (layer F.SilkS) (width 0.12))
+ (fp_line (start -3.7 0) (end 3.7 0) (layer F.SilkS) (width 0.12))
+ (pad 3 thru_hole circle (at 0 0) (size 1.1 1.1) (drill 0.4) (layers *.Cu *.Mask))
+ (pad 5 thru_hole circle (at 1.6 0) (size 1.1 1.1) (drill 0.4) (layers *.Cu *.Mask))
+ (pad 1 thru_hole circle (at -1.6 0) (size 1.1 1.1) (drill 0.4) (layers *.Cu *.Mask))
+ (pad 2 thru_hole circle (at -0.8 1.2) (size 1.1 1.1) (drill 0.4) (layers *.Cu *.Mask))
+ (pad 4 thru_hole circle (at 0.8 1.2) (size 1.1 1.1) (drill 0.4) (layers *.Cu *.Mask))
+ (pad 6 thru_hole oval (at 3.7 0.9) (size 1.4 2.5) (drill oval 0.8 1.9) (layers *.Cu *.Mask))
+ (pad 6 thru_hole oval (at -3.7 0.9) (size 1.4 2.5) (drill oval 0.8 1.9) (layers *.Cu *.Mask))
+ (pad 6 thru_hole oval (at -3.7 5.65) (size 1.4 2.5) (drill oval 0.8 1.9) (layers *.Cu *.Mask))
+ (pad 6 thru_hole oval (at 3.7 5.65) (size 1.4 2.5) (drill oval 0.8 1.9) (layers *.Cu *.Mask))
+)
diff --git a/kicad/lib/Necroware.pretty/open_hardware_logo.kicad_mod b/kicad/lib/Necroware.pretty/open_hardware_logo.kicad_mod
new file mode 100644
index 0000000..4733ef9
--- /dev/null
+++ b/kicad/lib/Necroware.pretty/open_hardware_logo.kicad_mod
@@ -0,0 +1,371 @@
+(module LOGO (layer F.Cu)
+ (at 0 0)
+ (fp_text reference "G***" (at 0 0) (layer F.SilkS) hide
+ (effects (font (thickness 0.3)))
+ )
+ (fp_text value "LOGO" (at 0.75 0) (layer F.SilkS) hide
+ (effects (font (thickness 0.3)))
+ )
+ (fp_poly (pts (xy -2.567733 4.243323) (xy -2.542708 4.244832) (xy -2.465751 4.253948) (xy -2.397919 4.269662) (xy -2.339153 4.292005) (xy -2.289396 4.321005) (xy -2.248591 4.356694) (xy -2.216679 4.399101)
+ (xy -2.204536 4.421785) (xy -2.198337 4.434872) (xy -2.192960 4.446774) (xy -2.188340 4.458364) (xy -2.184416 4.470515) (xy -2.181124 4.484100) (xy -2.178402 4.499991) (xy -2.176187 4.519062)
+ (xy -2.174417 4.542185) (xy -2.173027 4.570234) (xy -2.171957 4.604081) (xy -2.171142 4.644598) (xy -2.170520 4.692660) (xy -2.170028 4.749138) (xy -2.169603 4.814906) (xy -2.169183 4.890836)
+ (xy -2.169053 4.914900) (xy -2.166903 5.311422) (xy -2.381516 5.311422) (xy -2.383147 5.262475) (xy -2.384778 5.213527) (xy -2.401037 5.237032) (xy -2.426629 5.264722) (xy -2.461546 5.288034)
+ (xy -2.504360 5.306020) (xy -2.505894 5.306513) (xy -2.532170 5.312546) (xy -2.566491 5.317077) (xy -2.605695 5.320000) (xy -2.646624 5.321206) (xy -2.686119 5.320587) (xy -2.721020 5.318036)
+ (xy -2.743200 5.314599) (xy -2.805023 5.297525) (xy -2.858366 5.274085) (xy -2.904483 5.243633) (xy -2.935111 5.215774) (xy -2.965859 5.179189) (xy -2.988479 5.140343) (xy -3.005037 5.095482)
+ (xy -3.008612 5.082340) (xy -3.018636 5.022292) (xy -3.018283 4.988830) (xy -2.816578 4.988830) (xy -2.811855 5.024864) (xy -2.797578 5.055176) (xy -2.773589 5.079966) (xy -2.739726 5.099433)
+ (xy -2.722232 5.106169) (xy -2.704732 5.111603) (xy -2.687888 5.115323) (xy -2.668892 5.117643) (xy -2.644932 5.118876) (xy -2.613199 5.119335) (xy -2.603778 5.119366) (xy -2.571832 5.118968)
+ (xy -2.541164 5.117779) (xy -2.514907 5.115971) (xy -2.496195 5.113719) (xy -2.493711 5.113246) (xy -2.460346 5.103417) (xy -2.433727 5.088728) (xy -2.413289 5.068175) (xy -2.398465 5.040752)
+ (xy -2.388689 5.005456) (xy -2.383397 4.961280) (xy -2.381998 4.914900) (xy -2.381955 4.865511) (xy -2.536153 4.865511) (xy -2.585229 4.865636) (xy -2.624451 4.866056) (xy -2.655253 4.866841)
+ (xy -2.679068 4.868059) (xy -2.697328 4.869780) (xy -2.711467 4.872074) (xy -2.721009 4.874435) (xy -2.759073 4.889856) (xy -2.787510 4.911169) (xy -2.806334 4.938388) (xy -2.815556 4.971528)
+ (xy -2.816578 4.988830) (xy -3.018283 4.988830) (xy -3.018023 4.964233) (xy -3.007341 4.909125) (xy -2.987157 4.857930) (xy -2.958037 4.811606) (xy -2.920548 4.771117) (xy -2.875257 4.737421)
+ (xy -2.822730 4.711481) (xy -2.782213 4.698516) (xy -2.769017 4.695737) (xy -2.752387 4.693434) (xy -2.731051 4.691536) (xy -2.703733 4.689975) (xy -2.669159 4.688679) (xy -2.626056 4.687578)
+ (xy -2.573149 4.686602) (xy -2.563353 4.686447) (xy -2.380685 4.683624) (xy -2.382856 4.609337) (xy -2.383923 4.578399) (xy -2.385307 4.556226) (xy -2.387446 4.540297) (xy -2.390783 4.528089)
+ (xy -2.395757 4.517078) (xy -2.400417 4.508788) (xy -2.421147 4.484513) (xy -2.451527 4.465731) (xy -2.491304 4.452516) (xy -2.540223 4.444940) (xy -2.598031 4.443077) (xy -2.624666 4.444003)
+ (xy -2.667994 4.447621) (xy -2.702469 4.453921) (xy -2.730363 4.463677) (xy -2.753948 4.477660) (xy -2.773460 4.494588) (xy -2.800897 4.521916) (xy -2.881942 4.460880) (xy -2.907950 4.441011)
+ (xy -2.930515 4.423232) (xy -2.948195 4.408725) (xy -2.959546 4.398671) (xy -2.963160 4.394392) (xy -2.959432 4.388378) (xy -2.949243 4.376517) (xy -2.934314 4.360735) (xy -2.922411 4.348821)
+ (xy -2.878897 4.312472) (xy -2.830091 4.283888) (xy -2.775282 4.262876) (xy -2.713760 4.249241) (xy -2.644814 4.242788) (xy -2.567733 4.243323) )(layer F.SilkS) (width 0.010000)
+ )
+ (fp_poly (pts (xy -0.378178 5.311671) (xy -0.484011 5.310136) (xy -0.589844 5.308600) (xy -0.592666 5.259144) (xy -0.595489 5.209688) (xy -0.626533 5.235193) (xy -0.679672 5.271826) (xy -0.737484 5.298793)
+ (xy -0.798551 5.315746) (xy -0.861452 5.322336) (xy -0.924767 5.318214) (xy -0.947320 5.314056) (xy -1.000846 5.296943) (xy -1.051486 5.270202) (xy -1.097678 5.235278) (xy -1.137862 5.193613)
+ (xy -1.170477 5.146650) (xy -1.193961 5.095833) (xy -1.198449 5.081927) (xy -1.204855 5.055418) (xy -1.209959 5.023471) (xy -1.213813 4.985142) (xy -1.216468 4.939486) (xy -1.217977 4.885560)
+ (xy -1.218392 4.822420) (xy -1.217846 4.758432) (xy -1.003991 4.758432) (xy -1.003395 4.809565) (xy -1.002388 4.852717) (xy -1.001232 4.886391) (xy -0.999769 4.912396) (xy -0.997841 4.932542)
+ (xy -0.995292 4.948640) (xy -0.991962 4.962500) (xy -0.989312 4.971143) (xy -0.970883 5.016275) (xy -0.947987 5.051558) (xy -0.919715 5.077608) (xy -0.885158 5.095044) (xy -0.843406 5.104484)
+ (xy -0.793550 5.106546) (xy -0.790222 5.106447) (xy -0.758530 5.104519) (xy -0.734298 5.100744) (xy -0.713759 5.094453) (xy -0.707096 5.091687) (xy -0.673743 5.072030) (xy -0.646333 5.044574)
+ (xy -0.624159 5.008397) (xy -0.606513 4.962573) (xy -0.605330 4.958645) (xy -0.601584 4.939658) (xy -0.598497 4.911627) (xy -0.596101 4.876776) (xy -0.594432 4.837334) (xy -0.593525 4.795526)
+ (xy -0.593414 4.753579) (xy -0.594133 4.713719) (xy -0.595717 4.678173) (xy -0.598201 4.649167) (xy -0.600302 4.634937) (xy -0.613074 4.583827) (xy -0.630661 4.542440) (xy -0.653794 4.509971)
+ (xy -0.683202 4.485620) (xy -0.719616 4.468583) (xy -0.760835 4.458530) (xy -0.808447 4.455199) (xy -0.853699 4.460770) (xy -0.894794 4.474711) (xy -0.929934 4.496494) (xy -0.948015 4.513787)
+ (xy -0.964382 4.535060) (xy -0.977557 4.558740) (xy -0.987779 4.586119) (xy -0.995293 4.618486) (xy -1.000338 4.657134) (xy -1.003157 4.703352) (xy -1.003991 4.758432) (xy -1.217846 4.758432)
+ (xy -1.217766 4.749122) (xy -1.217582 4.736933) (xy -1.216470 4.677497) (xy -1.215083 4.627952) (xy -1.213243 4.586900) (xy -1.210775 4.552944) (xy -1.207504 4.524686) (xy -1.203252 4.500728)
+ (xy -1.197844 4.479673) (xy -1.191104 4.460124) (xy -1.182855 4.440683) (xy -1.179309 4.433076) (xy -1.162949 4.405415) (xy -1.139629 4.374859) (xy -1.112038 4.344370) (xy -1.082866 4.316911)
+ (xy -1.054801 4.295444) (xy -1.053764 4.294768) (xy -1.005983 4.270031) (xy -0.952450 4.253001) (xy -0.895832 4.243971) (xy -0.838797 4.243234) (xy -0.784011 4.251083) (xy -0.749755 4.261342)
+ (xy -0.712255 4.278356) (xy -0.672442 4.301486) (xy -0.634931 4.327937) (xy -0.620838 4.339480) (xy -0.592666 4.363782) (xy -0.592666 3.826934) (xy -0.378178 3.826934) (xy -0.378178 5.311671) )(layer F.SilkS) (width 0.010000)
+ )
+ (fp_poly (pts (xy 1.704107 4.243521) (xy 1.722402 4.244672) (xy 1.798353 4.253284) (xy 1.864925 4.267786) (xy 1.922523 4.288439) (xy 1.971555 4.315506) (xy 2.012426 4.349249) (xy 2.045543 4.389929)
+ (xy 2.071313 4.437808) (xy 2.086216 4.479111) (xy 2.088165 4.486409) (xy 2.089857 4.494875) (xy 2.091317 4.505345) (xy 2.092567 4.518658) (xy 2.093630 4.535650) (xy 2.094531 4.557157)
+ (xy 2.095292 4.584017) (xy 2.095936 4.617067) (xy 2.096487 4.657143) (xy 2.096969 4.705084) (xy 2.097404 4.761724) (xy 2.097815 4.827903) (xy 2.098227 4.904456) (xy 2.098266 4.912078)
+ (xy 2.100293 5.311422) (xy 1.885245 5.311422) (xy 1.885245 5.213243) (xy 1.868122 5.236526) (xy 1.840929 5.264733) (xy 1.804783 5.288441) (xy 1.761531 5.306441) (xy 1.761306 5.306513)
+ (xy 1.741650 5.311833) (xy 1.719833 5.315606) (xy 1.693174 5.318141) (xy 1.658995 5.319747) (xy 1.642534 5.320201) (xy 1.612425 5.320716) (xy 1.585661 5.320808) (xy 1.564608 5.320497)
+ (xy 1.551629 5.319801) (xy 1.549400 5.319463) (xy 1.538363 5.316897) (xy 1.520220 5.312726) (xy 1.498873 5.307847) (xy 1.498600 5.307785) (xy 1.439970 5.289154) (xy 1.387900 5.261882)
+ (xy 1.343048 5.226717) (xy 1.306072 5.184411) (xy 1.277631 5.135714) (xy 1.258383 5.081376) (xy 1.249074 5.023395) (xy 1.249544 4.989207) (xy 1.450622 4.989207) (xy 1.455603 5.025126)
+ (xy 1.470519 5.055709) (xy 1.495333 5.080909) (xy 1.530007 5.100680) (xy 1.544968 5.106485) (xy 1.559733 5.111361) (xy 1.573201 5.114836) (xy 1.587619 5.117103) (xy 1.605234 5.118353)
+ (xy 1.628292 5.118780) (xy 1.659042 5.118575) (xy 1.682085 5.118230) (xy 1.717843 5.117581) (xy 1.744425 5.116785) (xy 1.763941 5.115549) (xy 1.778501 5.113577) (xy 1.790216 5.110574)
+ (xy 1.801198 5.106247) (xy 1.813557 5.100300) (xy 1.814729 5.099715) (xy 1.838274 5.084839) (xy 1.856421 5.065710) (xy 1.869680 5.041009) (xy 1.878562 5.009412) (xy 1.883579 4.969599)
+ (xy 1.885240 4.920247) (xy 1.885245 4.917260) (xy 1.885245 4.865511) (xy 1.731047 4.865511) (xy 1.681971 4.865636) (xy 1.642749 4.866056) (xy 1.611947 4.866841) (xy 1.588132 4.868059)
+ (xy 1.569872 4.869780) (xy 1.555733 4.872074) (xy 1.546191 4.874435) (xy 1.508158 4.889822) (xy 1.479761 4.911069) (xy 1.460955 4.938230) (xy 1.451692 4.971362) (xy 1.450622 4.989207)
+ (xy 1.249544 4.989207) (xy 1.249906 4.963002) (xy 1.261027 4.906404) (xy 1.281835 4.854431) (xy 1.311726 4.807913) (xy 1.350099 4.767681) (xy 1.396348 4.734565) (xy 1.449873 4.709396)
+ (xy 1.484987 4.698516) (xy 1.498188 4.695736) (xy 1.514824 4.693432) (xy 1.536169 4.691534) (xy 1.563497 4.689973) (xy 1.598084 4.688677) (xy 1.641204 4.687576) (xy 1.694131 4.686600)
+ (xy 1.703750 4.686448) (xy 1.886322 4.683626) (xy 1.884207 4.609469) (xy 1.882205 4.569417) (xy 1.878312 4.538722) (xy 1.871823 4.515511) (xy 1.862031 4.497914) (xy 1.848230 4.484060)
+ (xy 1.833043 4.473959) (xy 1.811720 4.463084) (xy 1.789547 4.455255) (xy 1.763680 4.449817) (xy 1.731281 4.446113) (xy 1.704622 4.444281) (xy 1.641966 4.443696) (xy 1.588340 4.449596)
+ (xy 1.543811 4.461963) (xy 1.508446 4.480781) (xy 1.485287 4.502261) (xy 1.468010 4.523221) (xy 1.386183 4.461533) (xy 1.360043 4.441549) (xy 1.337331 4.423658) (xy 1.319483 4.409033)
+ (xy 1.307936 4.398850) (xy 1.304111 4.394392) (xy 1.307808 4.388379) (xy 1.317972 4.376520) (xy 1.332884 4.360740) (xy 1.344789 4.348821) (xy 1.388779 4.312171) (xy 1.438254 4.283401)
+ (xy 1.493869 4.262332) (xy 1.556279 4.248783) (xy 1.626140 4.242573) (xy 1.704107 4.243521) )(layer F.SilkS) (width 0.010000)
+ )
+ (fp_poly (pts (xy 3.554050 4.248824) (xy 3.621233 4.264096) (xy 3.683475 4.289040) (xy 3.740079 4.323137) (xy 3.790350 4.365869) (xy 3.833591 4.416717) (xy 3.869107 4.475161) (xy 3.896200 4.540685)
+ (xy 3.900733 4.555221) (xy 3.904825 4.570271) (xy 3.908006 4.585468) (xy 3.910432 4.602646) (xy 3.912260 4.623641) (xy 3.913648 4.650286) (xy 3.914752 4.684417) (xy 3.915729 4.727869)
+ (xy 3.915799 4.731456) (xy 3.918419 4.865511) (xy 3.262489 4.865511) (xy 3.262489 4.889725) (xy 3.264000 4.909155) (xy 3.267874 4.932813) (xy 3.271141 4.947158) (xy 3.288718 4.995554)
+ (xy 3.314401 5.036184) (xy 3.348596 5.069540) (xy 3.391708 5.096110) (xy 3.396309 5.098312) (xy 3.417120 5.107191) (xy 3.436237 5.112845) (xy 3.457935 5.116208) (xy 3.486491 5.118216)
+ (xy 3.487659 5.118273) (xy 3.517237 5.118759) (xy 3.546057 5.117624) (xy 3.569433 5.115085) (xy 3.573634 5.114307) (xy 3.608734 5.103862) (xy 3.647116 5.087228) (xy 3.684421 5.066521)
+ (xy 3.712744 5.046733) (xy 3.731864 5.033114) (xy 3.745032 5.027169) (xy 3.749832 5.027570) (xy 3.758109 5.033644) (xy 3.772323 5.045131) (xy 3.790755 5.060538) (xy 3.811687 5.078375)
+ (xy 3.833399 5.097151) (xy 3.854172 5.115372) (xy 3.872287 5.131549) (xy 3.886026 5.144189) (xy 3.893668 5.151800) (xy 3.894667 5.153240) (xy 3.890636 5.159487) (xy 3.879932 5.170945)
+ (xy 3.864639 5.185703) (xy 3.846839 5.201846) (xy 3.828615 5.217461) (xy 3.812052 5.230636) (xy 3.804356 5.236181) (xy 3.749001 5.268364) (xy 3.687811 5.294322) (xy 3.625120 5.312332)
+ (xy 3.601156 5.316837) (xy 3.564219 5.320648) (xy 3.520832 5.321966) (xy 3.475540 5.320865) (xy 3.432889 5.317417) (xy 3.407742 5.313773) (xy 3.342260 5.296777) (xy 3.280902 5.270597)
+ (xy 3.225276 5.236104) (xy 3.176988 5.194168) (xy 3.167004 5.183466) (xy 3.148661 5.159939) (xy 3.129179 5.129825) (xy 3.111165 5.097188) (xy 3.109628 5.094111) (xy 3.087177 5.043126)
+ (xy 3.070263 4.991266) (xy 3.058430 4.936250) (xy 3.051226 4.875794) (xy 3.048196 4.807619) (xy 3.048033 4.784670) (xy 3.051216 4.700979) (xy 3.056008 4.663497) (xy 3.262489 4.663497)
+ (xy 3.262489 4.684889) (xy 3.702756 4.684889) (xy 3.702672 4.669367) (xy 3.698624 4.634319) (xy 3.687813 4.595598) (xy 3.671731 4.557235) (xy 3.651864 4.523261) (xy 3.645543 4.514722)
+ (xy 3.615851 4.485707) (xy 3.579571 4.464192) (xy 3.538662 4.450298) (xy 3.495081 4.444147) (xy 3.450784 4.445861) (xy 3.407731 4.455562) (xy 3.367877 4.473372) (xy 3.337339 4.495548)
+ (xy 3.309276 4.527421) (xy 3.286470 4.566445) (xy 3.270488 4.609106) (xy 3.262897 4.651885) (xy 3.262489 4.663497) (xy 3.056008 4.663497) (xy 3.060913 4.625144) (xy 3.077464 4.555572)
+ (xy 3.101204 4.490669) (xy 3.117497 4.456289) (xy 3.141052 4.418282) (xy 3.172006 4.379898) (xy 3.207656 4.343852) (xy 3.245300 4.312854) (xy 3.282232 4.289617) (xy 3.285067 4.288179)
+ (xy 3.337252 4.266030) (xy 3.390037 4.251843) (xy 3.446923 4.244831) (xy 3.482622 4.243743) (xy 3.554050 4.248824) )(layer F.SilkS) (width 0.010000)
+ )
+ (fp_poly (pts (xy -3.475862 2.577931) (xy -3.414828 2.591508) (xy -3.365215 2.611112) (xy -3.339813 2.624711) (xy -3.316824 2.640630) (xy -3.292766 2.661470) (xy -3.276098 2.677690) (xy -3.241097 2.716816)
+ (xy -3.215077 2.755909) (xy -3.196188 2.798123) (xy -3.186357 2.830670) (xy -3.181150 2.857703) (xy -3.176660 2.894283) (xy -3.172973 2.938682) (xy -3.170176 2.989176) (xy -3.168355 3.044039)
+ (xy -3.167597 3.101546) (xy -3.167987 3.159970) (xy -3.168565 3.186289) (xy -3.170896 3.250990) (xy -3.174290 3.305814) (xy -3.179038 3.352148) (xy -3.185432 3.391378) (xy -3.193764 3.424891)
+ (xy -3.204323 3.454072) (xy -3.217402 3.480308) (xy -3.233292 3.504985) (xy -3.236416 3.509291) (xy -3.276128 3.555848) (xy -3.320179 3.592813) (xy -3.370542 3.621632) (xy -3.412687 3.638444)
+ (xy -3.452691 3.648450) (xy -3.497909 3.653858) (xy -3.544243 3.654552) (xy -3.587594 3.650414) (xy -3.615266 3.644197) (xy -3.665227 3.624764) (xy -3.715513 3.597082) (xy -3.761332 3.564006)
+ (xy -3.798711 3.533174) (xy -3.798711 4.364372) (xy -3.764307 4.332520) (xy -3.716259 4.295548) (xy -3.662629 4.268327) (xy -3.603700 4.250962) (xy -3.539760 4.243559) (xy -3.524955 4.243278)
+ (xy -3.462187 4.248465) (xy -3.403148 4.263798) (xy -3.348732 4.288498) (xy -3.299829 4.321785) (xy -3.257332 4.362880) (xy -3.222133 4.411003) (xy -3.195123 4.465374) (xy -3.177195 4.525214)
+ (xy -3.172664 4.551242) (xy -3.171281 4.567331) (xy -3.170059 4.594232) (xy -3.169007 4.631466) (xy -3.168131 4.678557) (xy -3.167438 4.735027) (xy -3.166936 4.800401) (xy -3.166632 4.874201)
+ (xy -3.166533 4.953409) (xy -3.166533 5.311422) (xy -3.381022 5.311422) (xy -3.381120 4.985456) (xy -3.381179 4.911083) (xy -3.381353 4.847064) (xy -3.381712 4.792463) (xy -3.382325 4.746344)
+ (xy -3.383261 4.707772) (xy -3.384590 4.675811) (xy -3.386380 4.649527) (xy -3.388701 4.627983) (xy -3.391622 4.610245) (xy -3.395213 4.595376) (xy -3.399542 4.582441) (xy -3.404679 4.570505)
+ (xy -3.410693 4.558633) (xy -3.413028 4.554300) (xy -3.437865 4.519759) (xy -3.470670 4.490928) (xy -3.508591 4.470292) (xy -3.510014 4.469734) (xy -3.546596 4.460206) (xy -3.588019 4.456862)
+ (xy -3.629685 4.459701) (xy -3.666994 4.468717) (xy -3.670027 4.469850) (xy -3.708954 4.490767) (xy -3.742359 4.520516) (xy -3.768921 4.557453) (xy -3.787324 4.599933) (xy -3.793195 4.623478)
+ (xy -3.794292 4.634959) (xy -3.795301 4.656793) (xy -3.796207 4.688041) (xy -3.796996 4.727766) (xy -3.797654 4.775032) (xy -3.798165 4.828902) (xy -3.798516 4.888439) (xy -3.798693 4.952705)
+ (xy -3.798711 4.981993) (xy -3.798711 5.311422) (xy -4.013200 5.311422) (xy -4.013200 3.129572) (xy -3.796221 3.129572) (xy -3.795459 3.172792) (xy -3.793738 3.212831) (xy -3.791056 3.247289)
+ (xy -3.787412 3.273765) (xy -3.785864 3.280884) (xy -3.769259 3.330883) (xy -3.746872 3.371319) (xy -3.718455 3.402465) (xy -3.683758 3.424596) (xy -3.644371 3.437605) (xy -3.610803 3.441407)
+ (xy -3.572649 3.440423) (xy -3.534607 3.435115) (xy -3.501371 3.425944) (xy -3.493649 3.422784) (xy -3.460590 3.403159) (xy -3.433904 3.376361) (xy -3.412898 3.341398) (xy -3.396881 3.297279)
+ (xy -3.391658 3.276591) (xy -3.388411 3.255189) (xy -3.386010 3.224925) (xy -3.384438 3.188105) (xy -3.383677 3.147033) (xy -3.383711 3.104013) (xy -3.384522 3.061350) (xy -3.386093 3.021348)
+ (xy -3.388407 2.986312) (xy -3.391447 2.958546) (xy -3.394132 2.944121) (xy -3.409700 2.896431) (xy -3.430645 2.858386) (xy -3.457744 2.829323) (xy -3.491772 2.808577) (xy -3.533507 2.795486)
+ (xy -3.574436 2.789968) (xy -3.624827 2.790537) (xy -3.668661 2.800239) (xy -3.706058 2.819162) (xy -3.737134 2.847396) (xy -3.762008 2.885029) (xy -3.780797 2.932150) (xy -3.785683 2.949804)
+ (xy -3.789699 2.972911) (xy -3.792762 3.004842) (xy -3.794871 3.043196) (xy -3.796025 3.085573) (xy -3.796221 3.129572) (xy -4.013200 3.129572) (xy -4.013200 2.585156) (xy -3.798711 2.585156)
+ (xy -3.798711 2.693273) (xy -3.769078 2.668121) (xy -3.715513 2.629498) (xy -3.658364 2.601019) (xy -3.598675 2.582834) (xy -3.537493 2.575088) (xy -3.475862 2.577931) )(layer F.SilkS) (width 0.010000)
+ )
+ (fp_poly (pts (xy -1.390535 4.247584) (xy -1.333384 4.262004) (xy -1.280751 4.285671) (xy -1.273205 4.290105) (xy -1.255842 4.300373) (xy -1.243067 4.308366) (xy -1.235179 4.315541) (xy -1.232475 4.323356)
+ (xy -1.235253 4.333266) (xy -1.243811 4.346730) (xy -1.258448 4.365203) (xy -1.279460 4.390144) (xy -1.298196 4.412318) (xy -1.320945 4.439211) (xy -1.341384 4.463031) (xy -1.358357 4.482460)
+ (xy -1.370711 4.496180) (xy -1.377292 4.502875) (xy -1.377905 4.503299) (xy -1.385255 4.501546) (xy -1.397135 4.494841) (xy -1.399491 4.493213) (xy -1.431843 4.473769) (xy -1.464671 4.462273)
+ (xy -1.502018 4.457499) (xy -1.518355 4.457194) (xy -1.568557 4.461923) (xy -1.612034 4.475696) (xy -1.648923 4.498596) (xy -1.679364 4.530706) (xy -1.700181 4.565114) (xy -1.718733 4.602789)
+ (xy -1.720345 4.957106) (xy -1.721958 5.311422) (xy -1.936044 5.311422) (xy -1.936044 4.255911) (xy -1.721555 4.255911) (xy -1.721555 4.364372) (xy -1.688391 4.333667) (xy -1.653546 4.304417)
+ (xy -1.619332 4.282693) (xy -1.581425 4.265878) (xy -1.569511 4.261676) (xy -1.510557 4.247231) (xy -1.450246 4.242597) (xy -1.390535 4.247584) )(layer F.SilkS) (width 0.010000)
+ )
+ (fp_poly (pts (xy 0.679655 4.618418) (xy 0.699590 4.679923) (xy 0.718579 4.738274) (xy 0.736326 4.792583) (xy 0.752539 4.841959) (xy 0.766922 4.885514) (xy 0.779181 4.922357) (xy 0.789022 4.951598)
+ (xy 0.796151 4.972348) (xy 0.800273 4.983718) (xy 0.801142 4.985639) (xy 0.803301 4.981472) (xy 0.808123 4.967136) (xy 0.815626 4.942562) (xy 0.825831 4.907680) (xy 0.838757 4.862422)
+ (xy 0.854423 4.806718) (xy 0.872848 4.740498) (xy 0.894053 4.663693) (xy 0.918056 4.576235) (xy 0.944876 4.478053) (xy 0.974534 4.369079) (xy 1.000269 4.274256) (xy 1.005242 4.255911)
+ (xy 1.118469 4.255911) (xy 1.158505 4.256063) (xy 1.188388 4.256564) (xy 1.209252 4.257489) (xy 1.222228 4.258908) (xy 1.228450 4.260895) (xy 1.229317 4.262967) (xy 1.227299 4.269240)
+ (xy 1.222089 4.285524) (xy 1.213926 4.311074) (xy 1.203048 4.345145) (xy 1.189692 4.386991) (xy 1.174096 4.435868) (xy 1.156498 4.491031) (xy 1.137134 4.551734) (xy 1.116244 4.617233)
+ (xy 1.094065 4.686783) (xy 1.070834 4.759639) (xy 1.060924 4.790722) (xy 0.894910 5.311422) (xy 0.706086 5.311422) (xy 0.700912 5.293078) (xy 0.696208 5.276752) (xy 0.688902 5.251859)
+ (xy 0.679325 5.219496) (xy 0.667807 5.180757) (xy 0.654676 5.136738) (xy 0.640263 5.088534) (xy 0.624896 5.037240) (xy 0.608906 4.983952) (xy 0.592622 4.929766) (xy 0.576374 4.875776)
+ (xy 0.560490 4.823077) (xy 0.545302 4.772766) (xy 0.531138 4.725937) (xy 0.518327 4.683686) (xy 0.507200 4.647108) (xy 0.498087 4.617298) (xy 0.491315 4.595352) (xy 0.487216 4.582366)
+ (xy 0.486115 4.579196) (xy 0.483902 4.583258) (xy 0.478774 4.597280) (xy 0.471006 4.620391) (xy 0.460870 4.651721) (xy 0.448642 4.690401) (xy 0.434595 4.735559) (xy 0.419003 4.786327)
+ (xy 0.402139 4.841835) (xy 0.384279 4.901211) (xy 0.375932 4.929151) (xy 0.357593 4.990625) (xy 0.340110 5.049129) (xy 0.323765 5.103728) (xy 0.308839 5.153487) (xy 0.295612 5.197473)
+ (xy 0.284367 5.234749) (xy 0.275384 5.264382) (xy 0.268946 5.285438) (xy 0.265331 5.296980) (xy 0.264740 5.298722) (xy 0.262582 5.303414) (xy 0.259096 5.306780) (xy 0.252589 5.309040)
+ (xy 0.241371 5.310414) (xy 0.223747 5.311122) (xy 0.198026 5.311385) (xy 0.167118 5.311422) (xy 0.074311 5.311422) (xy 0.054351 5.250745) (xy 0.049421 5.235590) (xy 0.041381 5.210663)
+ (xy 0.030545 5.176944) (xy 0.017227 5.135417) (xy 0.001743 5.087066) (xy -0.015593 5.032873) (xy -0.034467 4.973822) (xy -0.054564 4.910894) (xy -0.075569 4.845074) (xy -0.097168 4.777344)
+ (xy -0.098751 4.772378) (xy -0.120267 4.704901) (xy -0.141128 4.639523) (xy -0.161028 4.577196) (xy -0.179664 4.518870) (xy -0.196732 4.465496) (xy -0.211927 4.418026) (xy -0.224945 4.377410)
+ (xy -0.235482 4.344599) (xy -0.243234 4.320544) (xy -0.247896 4.306196) (xy -0.248191 4.305300) (xy -0.264488 4.255911) (xy -0.150589 4.255968) (xy -0.036689 4.256026) (xy 0.061521 4.616833)
+ (xy 0.078386 4.678664) (xy 0.094462 4.737353) (xy 0.109492 4.791979) (xy 0.123221 4.841624) (xy 0.135391 4.885369) (xy 0.145748 4.922294) (xy 0.154034 4.951480) (xy 0.159994 4.972008)
+ (xy 0.163372 4.982958) (xy 0.163971 4.984500) (xy 0.167119 4.982006) (xy 0.172859 4.970017) (xy 0.180644 4.949884) (xy 0.189929 4.922954) (xy 0.194096 4.910091) (xy 0.200976 4.888589)
+ (xy 0.210888 4.857749) (xy 0.223382 4.818967) (xy 0.238005 4.773643) (xy 0.254306 4.723175) (xy 0.271834 4.668963) (xy 0.290136 4.612403) (xy 0.308762 4.554896) (xy 0.312365 4.543778)
+ (xy 0.404749 4.258734) (xy 0.562293 4.255614) (xy 0.679655 4.618418) )(layer F.SilkS) (width 0.010000)
+ )
+ (fp_poly (pts (xy 2.841307 4.243797) (xy 2.868889 4.245889) (xy 2.891458 4.249003) (xy 2.895600 4.249864) (xy 2.917001 4.256371) (xy 2.943502 4.266717) (xy 2.971735 4.279336) (xy 2.998336 4.292663)
+ (xy 3.019937 4.305131) (xy 3.030288 4.312516) (xy 3.043619 4.323655) (xy 2.968971 4.412550) (xy 2.946257 4.439412) (xy 2.925845 4.463197) (xy 2.908892 4.482587) (xy 2.896557 4.496259)
+ (xy 2.889995 4.502896) (xy 2.889399 4.503299) (xy 2.881976 4.501544) (xy 2.870054 4.494833) (xy 2.867709 4.493213) (xy 2.852246 4.483631) (xy 2.832550 4.473214) (xy 2.823882 4.469129)
+ (xy 2.793625 4.460179) (xy 2.757347 4.456600) (xy 2.718940 4.458358) (xy 2.682295 4.465420) (xy 2.667017 4.470473) (xy 2.632263 4.489331) (xy 2.600680 4.516714) (xy 2.575019 4.549866)
+ (xy 2.561671 4.575969) (xy 2.548467 4.608689) (xy 2.546892 4.960056) (xy 2.545317 5.311422) (xy 2.331156 5.311422) (xy 2.331156 4.255911) (xy 2.545645 4.255911) (xy 2.545645 4.364156)
+ (xy 2.582270 4.330595) (xy 2.630489 4.293668) (xy 2.683578 4.266853) (xy 2.741710 4.250084) (xy 2.805059 4.243296) (xy 2.813756 4.243142) (xy 2.841307 4.243797) )(layer F.SilkS) (width 0.010000)
+ )
+ (fp_poly (pts (xy -4.586122 2.576532) (xy -4.523134 2.585184) (xy -4.465548 2.601232) (xy -4.463110 2.602134) (xy -4.411940 2.626594) (xy -4.362738 2.660143) (xy -4.317451 2.700845) (xy -4.278023 2.746764)
+ (xy -4.246399 2.795964) (xy -4.228193 2.835931) (xy -4.219147 2.861948) (xy -4.212037 2.886753) (xy -4.206585 2.912364) (xy -4.202515 2.940799) (xy -4.199550 2.974075) (xy -4.197414 3.014211)
+ (xy -4.195830 3.063223) (xy -4.195563 3.073958) (xy -4.194601 3.142281) (xy -4.195396 3.200986) (xy -4.198164 3.251635) (xy -4.203120 3.295793) (xy -4.210480 3.335024) (xy -4.220461 3.370892)
+ (xy -4.233278 3.404962) (xy -4.244657 3.429817) (xy -4.269420 3.471363) (xy -4.302243 3.513011) (xy -4.340353 3.551688) (xy -4.380977 3.584322) (xy -4.389113 3.589824) (xy -4.442475 3.618425)
+ (xy -4.502286 3.639308) (xy -4.566374 3.652042) (xy -4.632567 3.656194) (xy -4.698692 3.651334) (xy -4.698780 3.651322) (xy -4.765656 3.636054) (xy -4.828392 3.610669) (xy -4.885920 3.575814)
+ (xy -4.937174 3.532137) (xy -4.981086 3.480285) (xy -4.981438 3.479792) (xy -5.002607 3.447583) (xy -5.019779 3.415154) (xy -5.033369 3.380821) (xy -5.043792 3.342902) (xy -5.051461 3.299715)
+ (xy -5.056791 3.249579) (xy -5.060195 3.190811) (xy -5.061372 3.155188) (xy -5.061429 3.149703) (xy -4.847688 3.149703) (xy -4.846302 3.201872) (xy -4.842573 3.245591) (xy -4.836232 3.282209)
+ (xy -4.827007 3.313074) (xy -4.814630 3.339532) (xy -4.798830 3.362932) (xy -4.789691 3.373763) (xy -4.756257 3.402806) (xy -4.716319 3.423985) (xy -4.671858 3.436884) (xy -4.624856 3.441084)
+ (xy -4.577293 3.436169) (xy -4.541751 3.425991) (xy -4.502818 3.405556) (xy -4.469424 3.376053) (xy -4.442594 3.338765) (xy -4.423353 3.294969) (xy -4.416617 3.269716) (xy -4.413331 3.247087)
+ (xy -4.410860 3.215727) (xy -4.409207 3.178141) (xy -4.408372 3.136836) (xy -4.408357 3.094317) (xy -4.409162 3.053090) (xy -4.410791 3.015660) (xy -4.413244 2.984532) (xy -4.416440 2.962594)
+ (xy -4.431616 2.912734) (xy -4.454258 2.871329) (xy -4.484452 2.838293) (xy -4.522280 2.813541) (xy -4.567827 2.796986) (xy -4.582297 2.793745) (xy -4.630158 2.789345) (xy -4.676863 2.794503)
+ (xy -4.720673 2.808511) (xy -4.759850 2.830658) (xy -4.792655 2.860236) (xy -4.812468 2.887613) (xy -4.822406 2.906123) (xy -4.830147 2.924850) (xy -4.836006 2.945627) (xy -4.840300 2.970290)
+ (xy -4.843345 3.000671) (xy -4.845459 3.038606) (xy -4.846957 3.085929) (xy -4.847002 3.087739) (xy -4.847688 3.149703) (xy -5.061429 3.149703) (xy -5.062187 3.076816) (xy -5.060012 3.008181)
+ (xy -5.054528 2.948053) (xy -5.045418 2.895200) (xy -5.032365 2.848393) (xy -5.015052 2.806401) (xy -4.993160 2.767993) (xy -4.966374 2.731939) (xy -4.946425 2.709437) (xy -4.897812 2.663847)
+ (xy -4.846951 2.628613) (xy -4.792173 2.602816) (xy -4.731807 2.585538) (xy -4.715515 2.582418) (xy -4.651316 2.575527) (xy -4.586122 2.576532) )(layer F.SilkS) (width 0.010000)
+ )
+ (fp_poly (pts (xy -2.587978 2.577082) (xy -2.543070 2.578260) (xy -2.505524 2.582036) (xy -2.471544 2.589284) (xy -2.437335 2.600879) (xy -2.399101 2.617695) (xy -2.387600 2.623242) (xy -2.361898 2.636514)
+ (xy -2.340832 2.649475) (xy -2.321112 2.664549) (xy -2.299449 2.684161) (xy -2.282697 2.700563) (xy -2.258840 2.725058) (xy -2.241118 2.745450) (xy -2.227111 2.765006) (xy -2.214401 2.786991)
+ (xy -2.205119 2.805289) (xy -2.191924 2.832847) (xy -2.181559 2.856760) (xy -2.173654 2.879021) (xy -2.167838 2.901623) (xy -2.163739 2.926557) (xy -2.160987 2.955817) (xy -2.159210 2.991394)
+ (xy -2.158039 3.035281) (xy -2.157569 3.060700) (xy -2.155282 3.194756) (xy -2.810933 3.194756) (xy -2.810933 3.213741) (xy -2.807426 3.250390) (xy -2.797748 3.290291) (xy -2.783543 3.327392)
+ (xy -2.758471 3.368223) (xy -2.725410 3.401675) (xy -2.685325 3.427237) (xy -2.639186 3.444400) (xy -2.587958 3.452656) (xy -2.545644 3.452622) (xy -2.497474 3.446591) (xy -2.454500 3.434591)
+ (xy -2.413433 3.415347) (xy -2.370985 3.387585) (xy -2.363481 3.381992) (xy -2.327395 3.354679) (xy -2.254486 3.416489) (xy -2.230270 3.437334) (xy -2.209256 3.456019) (xy -2.192906 3.471198)
+ (xy -2.182682 3.481521) (xy -2.179915 3.485264) (xy -2.183120 3.492629) (xy -2.193563 3.505033) (xy -2.209419 3.520786) (xy -2.228863 3.538196) (xy -2.250070 3.555573) (xy -2.271213 3.571227)
+ (xy -2.276824 3.575038) (xy -2.335352 3.607494) (xy -2.400228 3.632022) (xy -2.469373 3.648205) (xy -2.540708 3.655627) (xy -2.612154 3.653870) (xy -2.647762 3.649340) (xy -2.719330 3.632674)
+ (xy -2.783622 3.607385) (xy -2.840547 3.573557) (xy -2.890012 3.531277) (xy -2.931924 3.480631) (xy -2.966190 3.421703) (xy -2.992719 3.354580) (xy -3.002164 3.321503) (xy -3.013843 3.262827)
+ (xy -3.021307 3.197201) (xy -3.024489 3.128176) (xy -3.023323 3.059300) (xy -3.018796 3.006437) (xy -2.810933 3.006437) (xy -2.810933 3.019778) (xy -2.370666 3.019778) (xy -2.370666 2.998386)
+ (xy -2.375808 2.954825) (xy -2.390314 2.910829) (xy -2.412805 2.869433) (xy -2.441900 2.833667) (xy -2.448453 2.827399) (xy -2.484344 2.801903) (xy -2.525188 2.785237) (xy -2.569052 2.777287)
+ (xy -2.614001 2.777939) (xy -2.658102 2.787078) (xy -2.699420 2.804592) (xy -2.736021 2.830365) (xy -2.750995 2.845246) (xy -2.772245 2.875074) (xy -2.790193 2.912060) (xy -2.803358 2.952220)
+ (xy -2.810258 2.991570) (xy -2.810933 3.006437) (xy -3.018796 3.006437) (xy -3.017741 2.994125) (xy -3.009322 2.943578) (xy -2.988483 2.867973) (xy -2.960218 2.800615) (xy -2.924616 2.741630)
+ (xy -2.881765 2.691143) (xy -2.831753 2.649280) (xy -2.779889 2.618683) (xy -2.742342 2.601610) (xy -2.708373 2.589693) (xy -2.674380 2.582152) (xy -2.636760 2.578207) (xy -2.591911 2.577075)
+ (xy -2.587978 2.577082) )(layer F.SilkS) (width 0.010000)
+ )
+ (fp_poly (pts (xy -0.041013 2.575989) (xy 0.040288 2.586119) (xy 0.118421 2.605882) (xy 0.192088 2.634920) (xy 0.259985 2.672875) (xy 0.280585 2.687065) (xy 0.300017 2.701536) (xy 0.311433 2.711392)
+ (xy 0.316235 2.718246) (xy 0.315826 2.723705) (xy 0.314452 2.725952) (xy 0.308564 2.733345) (xy 0.296766 2.747613) (xy 0.280485 2.767048) (xy 0.261147 2.789945) (xy 0.248991 2.804257)
+ (xy 0.190360 2.873149) (xy 0.172791 2.861563) (xy 0.143810 2.844377) (xy 0.108533 2.826318) (xy 0.071536 2.809549) (xy 0.037396 2.796235) (xy 0.027944 2.793096) (xy 0.008439 2.787505)
+ (xy -0.010041 2.783717) (xy -0.030498 2.781404) (xy -0.055937 2.780238) (xy -0.089361 2.779891) (xy -0.093133 2.779889) (xy -0.125199 2.780034) (xy -0.148516 2.780696) (xy -0.165622 2.782215)
+ (xy -0.179056 2.784932) (xy -0.191356 2.789187) (xy -0.203804 2.794729) (xy -0.235337 2.814545) (xy -0.257146 2.839969) (xy -0.269450 2.871269) (xy -0.270274 2.875303) (xy -0.272298 2.909382)
+ (xy -0.264506 2.938014) (xy -0.246765 2.961418) (xy -0.218946 2.979814) (xy -0.203995 2.986185) (xy -0.188989 2.990803) (xy -0.169642 2.994792) (xy -0.144322 2.998373) (xy -0.111396 3.001768)
+ (xy -0.069232 3.005196) (xy -0.056868 3.006098) (xy -0.018276 3.009138) (xy 0.019728 3.012627) (xy 0.054502 3.016286) (xy 0.083404 3.019837) (xy 0.103791 3.023000) (xy 0.104422 3.023120)
+ (xy 0.162274 3.039324) (xy 0.212953 3.064083) (xy 0.256116 3.097079) (xy 0.291419 3.137997) (xy 0.318518 3.186517) (xy 0.335723 3.236864) (xy 0.341003 3.266846) (xy 0.343716 3.302670)
+ (xy 0.343872 3.340321) (xy 0.341481 3.375779) (xy 0.336552 3.405030) (xy 0.335306 3.409631) (xy 0.314334 3.461416) (xy 0.283650 3.508387) (xy 0.244053 3.549841) (xy 0.196345 3.585078)
+ (xy 0.141326 3.613397) (xy 0.079795 3.634097) (xy 0.078718 3.634374) (xy 0.024528 3.645723) (xy -0.032301 3.653184) (xy -0.087845 3.656419) (xy -0.138176 3.655091) (xy -0.149578 3.653996)
+ (xy -0.231500 3.640633) (xy -0.306699 3.619572) (xy -0.377215 3.590229) (xy -0.383822 3.586950) (xy -0.410578 3.572369) (xy -0.440435 3.554293) (xy -0.470868 3.534438) (xy -0.499348 3.514519)
+ (xy -0.523350 3.496252) (xy -0.540346 3.481353) (xy -0.542245 3.479397) (xy -0.555459 3.465332) (xy -0.482664 3.392376) (xy -0.409870 3.319420) (xy -0.380261 3.344715) (xy -0.322153 3.387288)
+ (xy -0.259667 3.419454) (xy -0.192803 3.441217) (xy -0.121554 3.452577) (xy -0.077300 3.454400) (xy -0.027732 3.451355) (xy 0.017318 3.442590) (xy 0.056323 3.428663) (xy 0.087760 3.410130)
+ (xy 0.110104 3.387549) (xy 0.111566 3.385413) (xy 0.123003 3.360715) (xy 0.128904 3.331924) (xy 0.129019 3.302972) (xy 0.123100 3.277792) (xy 0.118886 3.269493) (xy 0.110590 3.257587)
+ (xy 0.101238 3.247727) (xy 0.089594 3.239575) (xy 0.074420 3.232794) (xy 0.054481 3.227044) (xy 0.028539 3.221989) (xy -0.004642 3.217289) (xy -0.046299 3.212607) (xy -0.097668 3.207604)
+ (xy -0.112465 3.206237) (xy -0.157143 3.201957) (xy -0.192527 3.198077) (xy -0.220593 3.194282) (xy -0.243312 3.190259) (xy -0.262658 3.185695) (xy -0.280606 3.180275) (xy -0.284870 3.178831)
+ (xy -0.340916 3.154596) (xy -0.387855 3.123693) (xy -0.425649 3.086174) (xy -0.454262 3.042091) (xy -0.473657 2.991494) (xy -0.483796 2.934436) (xy -0.485422 2.897689) (xy -0.480528 2.836623)
+ (xy -0.466041 2.781269) (xy -0.442255 2.731888) (xy -0.409461 2.688741) (xy -0.367954 2.652088) (xy -0.318026 2.622192) (xy -0.259970 2.599312) (xy -0.194079 2.583710) (xy -0.124178 2.575849)
+ (xy -0.041013 2.575989) )(layer F.SilkS) (width 0.010000)
+ )
+ (fp_poly (pts (xy 0.954676 2.577853) (xy 1.020691 2.589594) (xy 1.064657 2.602975) (xy 1.118626 2.627920) (xy 1.169340 2.661805) (xy 1.215176 2.702969) (xy 1.254511 2.749751) (xy 1.285721 2.800491)
+ (xy 1.306103 2.850002) (xy 1.314767 2.879346) (xy 1.321539 2.906925) (xy 1.326635 2.934753) (xy 1.330270 2.964842) (xy 1.332662 2.999207) (xy 1.334025 3.039860) (xy 1.334576 3.088816)
+ (xy 1.334616 3.115734) (xy 1.334112 3.175020) (xy 1.332553 3.224838) (xy 1.329724 3.266979) (xy 1.325414 3.303231) (xy 1.319410 3.335385) (xy 1.311498 3.365230) (xy 1.301467 3.394556)
+ (xy 1.301453 3.394591) (xy 1.274699 3.450175) (xy 1.238503 3.501603) (xy 1.194349 3.547560) (xy 1.143721 3.586732) (xy 1.088102 3.617806) (xy 1.028976 3.639468) (xy 1.023263 3.640980)
+ (xy 0.988691 3.647757) (xy 0.948009 3.652522) (xy 0.905551 3.655012) (xy 0.865649 3.654962) (xy 0.834952 3.652450) (xy 0.774008 3.640061) (xy 0.719445 3.620456) (xy 0.669092 3.592525)
+ (xy 0.620777 3.555157) (xy 0.592485 3.528371) (xy 0.558834 3.491541) (xy 0.531668 3.454655) (xy 0.510298 3.415895) (xy 0.494034 3.373443) (xy 0.482186 3.325480) (xy 0.474062 3.270189)
+ (xy 0.468975 3.205751) (xy 0.468801 3.202503) (xy 0.466663 3.134801) (xy 0.679373 3.134801) (xy 0.680966 3.183650) (xy 0.684566 3.229419) (xy 0.689450 3.265270) (xy 0.702840 3.312808)
+ (xy 0.724949 3.354046) (xy 0.754679 3.388260) (xy 0.790932 3.414726) (xy 0.832610 3.432721) (xy 0.878617 3.441519) (xy 0.927855 3.440398) (xy 0.949400 3.436759) (xy 0.996870 3.421704)
+ (xy 1.036721 3.398319) (xy 1.068950 3.366610) (xy 1.093552 3.326580) (xy 1.110524 3.278234) (xy 1.118162 3.237162) (xy 1.120258 3.213055) (xy 1.121548 3.181586) (xy 1.122078 3.145103)
+ (xy 1.121899 3.105956) (xy 1.121059 3.066493) (xy 1.119606 3.029062) (xy 1.117590 2.996013) (xy 1.115059 2.969694) (xy 1.112263 2.953222) (xy 1.096028 2.908372) (xy 1.071913 2.868788)
+ (xy 1.041258 2.836100) (xy 1.005405 2.811938) (xy 0.990425 2.805224) (xy 0.962092 2.797426) (xy 0.927634 2.792687) (xy 0.891339 2.791202) (xy 0.857497 2.793165) (xy 0.832556 2.798077)
+ (xy 0.788906 2.817078) (xy 0.751708 2.845033) (xy 0.721867 2.881064) (xy 0.700289 2.924291) (xy 0.699125 2.927526) (xy 0.691705 2.956134) (xy 0.685952 2.993541) (xy 0.681934 3.037371)
+ (xy 0.679718 3.085250) (xy 0.679373 3.134801) (xy 0.466663 3.134801) (xy 0.466590 3.132497) (xy 0.467282 3.064601) (xy 0.470735 3.000539) (xy 0.476806 2.942037) (xy 0.485352 2.890819)
+ (xy 0.496231 2.848613) (xy 0.498666 2.841429) (xy 0.522599 2.789518) (xy 0.556053 2.739581) (xy 0.597261 2.693570) (xy 0.644454 2.653431) (xy 0.695865 2.621114) (xy 0.700841 2.618553)
+ (xy 0.758489 2.595411) (xy 0.821437 2.580853) (xy 0.887545 2.574969) (xy 0.954676 2.577853) )(layer F.SilkS) (width 0.010000)
+ )
+ (fp_poly (pts (xy 1.624189 2.586442) (xy 1.730022 2.587978) (xy 1.732845 2.937934) (xy 1.735667 3.287889) (xy 1.753134 3.324578) (xy 1.778425 3.365638) (xy 1.810592 3.398322) (xy 1.848497 3.422206)
+ (xy 1.891000 3.436865) (xy 1.936965 3.441875) (xy 1.985253 3.436811) (xy 2.023869 3.425568) (xy 2.061780 3.405545) (xy 2.093358 3.376523) (xy 2.118179 3.339123) (xy 2.135817 3.293964)
+ (xy 2.144988 3.248848) (xy 2.145974 3.235653) (xy 2.146905 3.212368) (xy 2.147763 3.180189) (xy 2.148530 3.140315) (xy 2.149187 3.093944) (xy 2.149716 3.042272) (xy 2.150099 2.986499)
+ (xy 2.150317 2.927821) (xy 2.150359 2.897011) (xy 2.150534 2.585156) (xy 2.359378 2.585156) (xy 2.359378 3.646311) (xy 2.150534 3.646311) (xy 2.150534 3.589867) (xy 2.150318 3.566172)
+ (xy 2.149738 3.547376) (xy 2.148891 3.535867) (xy 2.148219 3.533422) (xy 2.143351 3.537049) (xy 2.132531 3.546662) (xy 2.117887 3.560357) (xy 2.114285 3.563803) (xy 2.070759 3.598129)
+ (xy 2.020376 3.625015) (xy 1.965248 3.643882) (xy 1.907485 3.654148) (xy 1.849195 3.655234) (xy 1.803879 3.649160) (xy 1.744779 3.631326) (xy 1.689843 3.603820) (xy 1.640415 3.567702)
+ (xy 1.597838 3.524035) (xy 1.563456 3.473881) (xy 1.550883 3.449190) (xy 1.544788 3.435663) (xy 1.539512 3.422997) (xy 1.534995 3.410303) (xy 1.531177 3.396690) (xy 1.528001 3.381269)
+ (xy 1.525406 3.363148) (xy 1.523333 3.341439) (xy 1.521723 3.315251) (xy 1.520517 3.283693) (xy 1.519656 3.245877) (xy 1.519080 3.200912) (xy 1.518731 3.147907) (xy 1.518548 3.085974)
+ (xy 1.518473 3.014221) (xy 1.518454 2.961798) (xy 1.518356 2.584907) (xy 1.624189 2.586442) )(layer F.SilkS) (width 0.010000)
+ )
+ (fp_poly (pts (xy 3.801675 2.577838) (xy 3.844086 2.582151) (xy 3.878618 2.589302) (xy 3.948098 2.614080) (xy 4.010655 2.646772) (xy 4.068497 2.688654) (xy 4.101124 2.718015) (xy 4.118807 2.735519)
+ (xy 4.129248 2.747289) (xy 4.133631 2.755106) (xy 4.133140 2.760750) (xy 4.131333 2.763438) (xy 4.124724 2.770130) (xy 4.111269 2.782828) (xy 4.092569 2.800051) (xy 4.070228 2.820318)
+ (xy 4.054423 2.834504) (xy 3.984991 2.896559) (xy 3.950057 2.864946) (xy 3.905014 2.830168) (xy 3.858287 2.806258) (xy 3.808722 2.792804) (xy 3.755165 2.789398) (xy 3.739445 2.790178)
+ (xy 3.683623 2.798643) (xy 3.635217 2.815545) (xy 3.594054 2.841034) (xy 3.559960 2.875261) (xy 3.532759 2.918375) (xy 3.512278 2.970528) (xy 3.506705 2.990783) (xy 3.501961 3.018063)
+ (xy 3.498791 3.053365) (xy 3.497191 3.093532) (xy 3.497160 3.135407) (xy 3.498697 3.175835) (xy 3.501799 3.211657) (xy 3.506464 3.239717) (xy 3.506853 3.241322) (xy 3.524854 3.295774)
+ (xy 3.549603 3.341257) (xy 3.581229 3.377949) (xy 3.619860 3.406024) (xy 3.631094 3.411948) (xy 3.683545 3.431800) (xy 3.737358 3.441095) (xy 3.791115 3.440038) (xy 3.843400 3.428833)
+ (xy 3.892796 3.407685) (xy 3.937887 3.376800) (xy 3.950198 3.365822) (xy 3.965571 3.351631) (xy 3.977683 3.341097) (xy 3.984336 3.336113) (xy 3.984838 3.335949) (xy 3.989984 3.339530)
+ (xy 4.001626 3.349163) (xy 4.017921 3.363287) (xy 4.033179 3.376871) (xy 4.056004 3.397393) (xy 4.079603 3.418576) (xy 4.100352 3.437168) (xy 4.108908 3.444819) (xy 4.139259 3.471927)
+ (xy 4.105863 3.505987) (xy 4.055495 3.550729) (xy 3.999040 3.589194) (xy 3.939132 3.619847) (xy 3.878408 3.641148) (xy 3.870822 3.643094) (xy 3.837021 3.649241) (xy 3.796579 3.653313)
+ (xy 3.753989 3.655097) (xy 3.713745 3.654380) (xy 3.686164 3.651849) (xy 3.622866 3.638261) (xy 3.560523 3.615954) (xy 3.502246 3.586265) (xy 3.451578 3.550890) (xy 3.405826 3.506152)
+ (xy 3.366772 3.453156) (xy 3.334657 3.392902) (xy 3.309721 3.326390) (xy 3.292203 3.254620) (xy 3.282345 3.178595) (xy 3.280385 3.099312) (xy 3.286565 3.017775) (xy 3.301125 2.934982)
+ (xy 3.302394 2.929467) (xy 3.314651 2.888793) (xy 3.332627 2.844471) (xy 3.354433 2.800379) (xy 3.378180 2.760400) (xy 3.397857 2.733310) (xy 3.441085 2.688799) (xy 3.492739 2.649914)
+ (xy 3.550846 2.617889) (xy 3.613436 2.593955) (xy 3.627243 2.589997) (xy 3.664596 2.582564) (xy 3.708444 2.578054) (xy 3.755299 2.576475) (xy 3.801675 2.577838) )(layer F.SilkS) (width 0.010000)
+ )
+ (fp_poly (pts (xy 4.680628 2.577870) (xy 4.747110 2.590613) (xy 4.810783 2.612625) (xy 4.858168 2.636649) (xy 4.887059 2.656853) (xy 4.918455 2.683985) (xy 4.949423 2.715079) (xy 4.977028 2.747169)
+ (xy 4.998338 2.777290) (xy 4.999929 2.779943) (xy 5.019248 2.815552) (xy 5.034448 2.850625) (xy 5.045939 2.887132) (xy 5.054135 2.927048) (xy 5.059446 2.972346) (xy 5.062285 3.024997)
+ (xy 5.063067 3.082363) (xy 5.063067 3.194756) (xy 4.406682 3.194756) (xy 4.409821 3.235678) (xy 4.418834 3.288447) (xy 4.436959 3.334843) (xy 4.463656 3.374350) (xy 4.498390 3.406455)
+ (xy 4.540620 3.430643) (xy 4.589810 3.446400) (xy 4.636911 3.452794) (xy 4.691945 3.450770) (xy 4.746949 3.438644) (xy 4.799332 3.417309) (xy 4.846502 3.387656) (xy 4.861164 3.375598)
+ (xy 4.887861 3.352042) (xy 4.964246 3.417571) (xy 4.993070 3.442272) (xy 5.013927 3.460947) (xy 5.027174 3.475195) (xy 5.033168 3.486615) (xy 5.032268 3.496808) (xy 5.024829 3.507371)
+ (xy 5.011209 3.519905) (xy 4.991765 3.536008) (xy 4.990864 3.536756) (xy 4.928186 3.581716) (xy 4.861274 3.616281) (xy 4.790605 3.640317) (xy 4.716654 3.653688) (xy 4.639895 3.656259)
+ (xy 4.585953 3.651719) (xy 4.513626 3.637387) (xy 4.448232 3.614269) (xy 4.389917 3.582468) (xy 4.338831 3.542088) (xy 4.295122 3.493231) (xy 4.258938 3.436002) (xy 4.249807 3.417711)
+ (xy 4.228678 3.366545) (xy 4.212926 3.313084) (xy 4.202163 3.255243) (xy 4.195999 3.190937) (xy 4.194046 3.118556) (xy 4.196408 3.040249) (xy 4.200837 2.998386) (xy 4.408311 2.998386)
+ (xy 4.408311 3.019778) (xy 4.850132 3.019778) (xy 4.846478 2.988684) (xy 4.835523 2.934807) (xy 4.816491 2.887849) (xy 4.789979 2.848391) (xy 4.756585 2.817013) (xy 4.716908 2.794297)
+ (xy 4.671545 2.780822) (xy 4.628445 2.777067) (xy 4.577621 2.782062) (xy 4.532309 2.796767) (xy 4.493043 2.820760) (xy 4.460354 2.853618) (xy 4.434776 2.894922) (xy 4.416841 2.944248)
+ (xy 4.416731 2.944669) (xy 4.411969 2.966725) (xy 4.408917 2.988114) (xy 4.408311 2.998386) (xy 4.200837 2.998386) (xy 4.203781 2.970562) (xy 4.216598 2.907797) (xy 4.235291 2.850257)
+ (xy 4.260291 2.796243) (xy 4.287671 2.750553) (xy 4.328354 2.698639) (xy 4.375732 2.655717) (xy 4.429976 2.621676) (xy 4.491256 2.596406) (xy 4.548508 2.581836) (xy 4.613655 2.574808)
+ (xy 4.680628 2.577870) )(layer F.SilkS) (width 0.010000)
+ )
+ (fp_poly (pts (xy -1.455607 2.576709) (xy -1.398025 2.586547) (xy -1.342441 2.605476) (xy -1.290257 2.633465) (xy -1.242876 2.670481) (xy -1.236591 2.676494) (xy -1.196114 2.723587) (xy -1.165394 2.776020)
+ (xy -1.144168 2.834319) (xy -1.134852 2.878667) (xy -1.133349 2.893126) (xy -1.132106 2.915635) (xy -1.131120 2.946627) (xy -1.130384 2.986540) (xy -1.129894 3.035808) (xy -1.129644 3.094867)
+ (xy -1.129630 3.164153) (xy -1.129845 3.244101) (xy -1.130009 3.282245) (xy -1.131711 3.643489) (xy -1.340555 3.643489) (xy -1.343466 3.296356) (xy -1.344075 3.222962) (xy -1.344637 3.159941)
+ (xy -1.345238 3.106376) (xy -1.345965 3.061351) (xy -1.346906 3.023951) (xy -1.348146 2.993258) (xy -1.349774 2.968359) (xy -1.351875 2.948336) (xy -1.354536 2.932273) (xy -1.357845 2.919255)
+ (xy -1.361889 2.908366) (xy -1.366753 2.898690) (xy -1.372525 2.889310) (xy -1.379292 2.879311) (xy -1.383601 2.873022) (xy -1.412603 2.839697) (xy -1.447336 2.814834) (xy -1.486193 2.798315)
+ (xy -1.527567 2.790026) (xy -1.569849 2.789849) (xy -1.611432 2.797668) (xy -1.650708 2.813368) (xy -1.686071 2.836831) (xy -1.715911 2.867942) (xy -1.734809 2.898422) (xy -1.740082 2.909605)
+ (xy -1.744601 2.920906) (xy -1.748424 2.933257) (xy -1.751607 2.947586) (xy -1.754210 2.964824) (xy -1.756289 2.985901) (xy -1.757904 3.011746) (xy -1.759111 3.043289) (xy -1.759969 3.081461)
+ (xy -1.760535 3.127191) (xy -1.760869 3.181409) (xy -1.761026 3.245044) (xy -1.761066 3.319028) (xy -1.761066 3.646311) (xy -1.864548 3.646311) (xy -1.897642 3.646115) (xy -1.926769 3.645570)
+ (xy -1.950078 3.644741) (xy -1.965718 3.643694) (xy -1.971792 3.642548) (xy -1.972336 3.636482) (xy -1.972856 3.619916) (xy -1.973347 3.593641) (xy -1.973803 3.558446) (xy -1.974219 3.515121)
+ (xy -1.974589 3.464455) (xy -1.974908 3.407239) (xy -1.975169 3.344261) (xy -1.975367 3.276312) (xy -1.975497 3.204181) (xy -1.975554 3.128658) (xy -1.975555 3.111971) (xy -1.975555 2.585156)
+ (xy -1.761066 2.585156) (xy -1.761066 2.699339) (xy -1.724419 2.665057) (xy -1.677877 2.628940) (xy -1.626323 2.602080) (xy -1.571158 2.584443) (xy -1.513785 2.575997) (xy -1.455607 2.576709) )(layer F.SilkS) (width 0.010000)
+ )
+ (fp_poly (pts (xy 3.117218 2.577431) (xy 3.144324 2.579681) (xy 3.166159 2.583822) (xy 3.177822 2.587301) (xy 3.201355 2.596444) (xy 3.228498 2.608742) (xy 3.255651 2.622390) (xy 3.279215 2.635583)
+ (xy 3.294868 2.645955) (xy 3.307492 2.655711) (xy 3.236517 2.740378) (xy 3.214154 2.767001) (xy 3.193939 2.790967) (xy 3.177116 2.810807) (xy 3.164933 2.825051) (xy 3.158636 2.832231)
+ (xy 3.158407 2.832474) (xy 3.152467 2.835802) (xy 3.143857 2.833732) (xy 3.129796 2.825460) (xy 3.126447 2.823233) (xy 3.087010 2.802883) (xy 3.044516 2.791687) (xy 3.000847 2.789324)
+ (xy 2.957885 2.795474) (xy 2.917509 2.809815) (xy 2.881601 2.832027) (xy 2.852041 2.861789) (xy 2.845323 2.871182) (xy 2.838087 2.882133) (xy 2.831870 2.892127) (xy 2.826591 2.902076)
+ (xy 2.822166 2.912896) (xy 2.818513 2.925501) (xy 2.815550 2.940804) (xy 2.813195 2.959722) (xy 2.811364 2.983167) (xy 2.809976 3.012054) (xy 2.808948 3.047298) (xy 2.808197 3.089813)
+ (xy 2.807642 3.140513) (xy 2.807200 3.200313) (xy 2.806788 3.270126) (xy 2.806616 3.300589) (xy 2.804655 3.646311) (xy 2.700373 3.646311) (xy 2.660984 3.646106) (xy 2.631756 3.645440)
+ (xy 2.611567 3.644241) (xy 2.599296 3.642433) (xy 2.593820 3.639943) (xy 2.593400 3.639256) (xy 2.593025 3.632701) (xy 2.592696 3.615658) (xy 2.592416 3.588926) (xy 2.592185 3.553305)
+ (xy 2.592007 3.509594) (xy 2.591883 3.458595) (xy 2.591814 3.401106) (xy 2.591803 3.337928) (xy 2.591851 3.269861) (xy 2.591960 3.197704) (xy 2.592133 3.122258) (xy 2.592166 3.110089)
+ (xy 2.593622 2.587978) (xy 2.699456 2.586442) (xy 2.805289 2.584907) (xy 2.805289 2.698992) (xy 2.840527 2.667104) (xy 2.885593 2.631236) (xy 2.931621 2.605094) (xy 2.980770 2.587868)
+ (xy 3.035204 2.578750) (xy 3.081867 2.576744) (xy 3.117218 2.577431) )(layer F.SilkS) (width 0.010000)
+ )
+ (fp_poly (pts (xy 0.530628 -5.301544) (xy 0.547790 -5.286022) (xy 0.642971 -4.774559) (xy 0.661750 -4.674032) (xy 0.678626 -4.584493) (xy 0.693628 -4.505807) (xy 0.706781 -4.437839) (xy 0.718113 -4.380453)
+ (xy 0.727651 -4.333516) (xy 0.735422 -4.296892) (xy 0.741452 -4.270446) (xy 0.745769 -4.254044) (xy 0.748092 -4.247926) (xy 0.760150 -4.234340) (xy 0.772716 -4.225225) (xy 0.780388 -4.221824)
+ (xy 0.797594 -4.214538) (xy 0.823416 -4.203748) (xy 0.856935 -4.189832) (xy 0.897233 -4.173171) (xy 0.943391 -4.154145) (xy 0.994490 -4.133131) (xy 1.049613 -4.110511) (xy 1.107840 -4.086664)
+ (xy 1.127167 -4.078758) (xy 1.202922 -4.047876) (xy 1.268741 -4.021255) (xy 1.325070 -3.998723) (xy 1.372354 -3.980110) (xy 1.411041 -3.965244) (xy 1.441576 -3.953954) (xy 1.464405 -3.946068)
+ (xy 1.479974 -3.941415) (xy 1.488730 -3.939824) (xy 1.488947 -3.939822) (xy 1.493077 -3.939723) (xy 1.496781 -3.939670) (xy 1.500625 -3.940032) (xy 1.505175 -3.941176) (xy 1.510998 -3.943470)
+ (xy 1.518658 -3.947282) (xy 1.528722 -3.952980) (xy 1.541757 -3.960932) (xy 1.558327 -3.971504) (xy 1.579000 -3.985066) (xy 1.604341 -4.001985) (xy 1.634916 -4.022629) (xy 1.671291 -4.047365)
+ (xy 1.714032 -4.076562) (xy 1.763705 -4.110587) (xy 1.820876 -4.149808) (xy 1.886111 -4.194593) (xy 1.959976 -4.245309) (xy 1.976683 -4.256779) (xy 2.036924 -4.298041) (xy 2.094736 -4.337455)
+ (xy 2.149413 -4.374550) (xy 2.200247 -4.408855) (xy 2.246531 -4.439898) (xy 2.287557 -4.467208) (xy 2.322618 -4.490313) (xy 2.351006 -4.508741) (xy 2.372014 -4.522021) (xy 2.384934 -4.529682)
+ (xy 2.388776 -4.531447) (xy 2.405625 -4.529661) (xy 2.422642 -4.522074) (xy 2.429346 -4.516402) (xy 2.443399 -4.503320) (xy 2.464194 -4.483426) (xy 2.491124 -4.457317) (xy 2.523579 -4.425591)
+ (xy 2.560954 -4.388844) (xy 2.602639 -4.347675) (xy 2.648027 -4.302680) (xy 2.696509 -4.254458) (xy 2.747479 -4.203605) (xy 2.792251 -4.158813) (xy 2.859786 -4.091062) (xy 2.919503 -4.030938)
+ (xy 2.971655 -3.978178) (xy 3.016496 -3.932520) (xy 3.054280 -3.893698) (xy 3.085262 -3.861451) (xy 3.109695 -3.835514) (xy 3.127834 -3.815625) (xy 3.139932 -3.801519) (xy 3.146244 -3.792933)
+ (xy 3.147302 -3.790660) (xy 3.148317 -3.772894) (xy 3.145466 -3.758623) (xy 3.141456 -3.751743) (xy 3.131512 -3.736260) (xy 3.116100 -3.712866) (xy 3.095688 -3.682254) (xy 3.070745 -3.645117)
+ (xy 3.041738 -3.602149) (xy 3.009135 -3.554043) (xy 2.973404 -3.501492) (xy 2.935012 -3.445189) (xy 2.894428 -3.385828) (xy 2.855795 -3.329456) (xy 2.806358 -3.257369) (xy 2.762946 -3.193972)
+ (xy 2.725170 -3.138668) (xy 2.692641 -3.090858) (xy 2.664968 -3.049945) (xy 2.641762 -3.015330) (xy 2.622634 -2.986415) (xy 2.607194 -2.962601) (xy 2.595053 -2.943291) (xy 2.585821 -2.927886)
+ (xy 2.579108 -2.915788) (xy 2.574526 -2.906398) (xy 2.571684 -2.899119) (xy 2.570193 -2.893353) (xy 2.569768 -2.890183) (xy 2.569637 -2.884427) (xy 2.570384 -2.877474) (xy 2.572311 -2.868554)
+ (xy 2.575723 -2.856897) (xy 2.580925 -2.841732) (xy 2.588220 -2.822288) (xy 2.597913 -2.797797) (xy 2.610307 -2.767486) (xy 2.625708 -2.730586) (xy 2.644419 -2.686327) (xy 2.666744 -2.633938)
+ (xy 2.692988 -2.572649) (xy 2.719890 -2.509983) (xy 2.745748 -2.449902) (xy 2.770489 -2.392621) (xy 2.793723 -2.339026) (xy 2.815065 -2.290001) (xy 2.834125 -2.246433) (xy 2.850515 -2.209205)
+ (xy 2.863849 -2.179205) (xy 2.873737 -2.157316) (xy 2.879793 -2.144424) (xy 2.881367 -2.141460) (xy 2.884053 -2.137207) (xy 2.886616 -2.133425) (xy 2.889737 -2.129960) (xy 2.894099 -2.126657)
+ (xy 2.900384 -2.123362) (xy 2.909274 -2.119920) (xy 2.921451 -2.116178) (xy 2.937597 -2.111980) (xy 2.958394 -2.107173) (xy 2.984524 -2.101602) (xy 3.016669 -2.095113) (xy 3.055511 -2.087551)
+ (xy 3.101732 -2.078762) (xy 3.156015 -2.068591) (xy 3.219041 -2.056885) (xy 3.291492 -2.043489) (xy 3.374050 -2.028249) (xy 3.414889 -2.020709) (xy 3.447998 -2.014580) (xy 3.490632 -2.006665)
+ (xy 3.541223 -1.997256) (xy 3.598199 -1.986644) (xy 3.659992 -1.975124) (xy 3.725032 -1.962987) (xy 3.791748 -1.950526) (xy 3.858570 -1.938033) (xy 3.859199 -1.937915) (xy 3.886337 -1.931913)
+ (xy 3.904891 -1.925321) (xy 3.917557 -1.917117) (xy 3.919877 -1.914939) (xy 3.934178 -1.900638) (xy 3.934178 -1.383375) (xy 3.934189 -1.293710) (xy 3.934194 -1.214651) (xy 3.934154 -1.145518)
+ (xy 3.934028 -1.085628) (xy 3.933776 -1.034299) (xy 3.933358 -0.990850) (xy 3.932733 -0.954598) (xy 3.931863 -0.924863) (xy 3.930705 -0.900961) (xy 3.929221 -0.882211) (xy 3.927370 -0.867932)
+ (xy 3.925112 -0.857441) (xy 3.922406 -0.850056) (xy 3.919213 -0.845096) (xy 3.915492 -0.841879) (xy 3.911204 -0.839723) (xy 3.906307 -0.837946) (xy 3.901947 -0.836348) (xy 3.894072 -0.834380)
+ (xy 3.875947 -0.830540) (xy 3.848428 -0.824989) (xy 3.812367 -0.817893) (xy 3.768620 -0.809416) (xy 3.718040 -0.799721) (xy 3.661483 -0.788974) (xy 3.599801 -0.777337) (xy 3.533849 -0.764975)
+ (xy 3.464482 -0.752053) (xy 3.426178 -0.744950) (xy 3.355210 -0.731792) (xy 3.287108 -0.719131) (xy 3.222736 -0.707128) (xy 3.162959 -0.695946) (xy 3.108641 -0.685748) (xy 3.060647 -0.676698)
+ (xy 3.019842 -0.668957) (xy 2.987090 -0.662689) (xy 2.963256 -0.658057) (xy 2.949205 -0.655223) (xy 2.946033 -0.654510) (xy 2.928532 -0.647090) (xy 2.913842 -0.636382) (xy 2.913373 -0.635893)
+ (xy 2.908520 -0.627699) (xy 2.900052 -0.609992) (xy 2.888376 -0.583805) (xy 2.873905 -0.550170) (xy 2.857048 -0.510117) (xy 2.838214 -0.464678) (xy 2.817814 -0.414885) (xy 2.796258 -0.361769)
+ (xy 2.773957 -0.306362) (xy 2.751319 -0.249695) (xy 2.728756 -0.192799) (xy 2.706677 -0.136707) (xy 2.685492 -0.082450) (xy 2.665612 -0.031058) (xy 2.647446 0.016435) (xy 2.631404 0.059000)
+ (xy 2.617897 0.095603) (xy 2.607335 0.125215) (xy 2.600128 0.146803) (xy 2.596685 0.159336) (xy 2.596445 0.161332) (xy 2.596345 0.165943) (xy 2.596311 0.170056) (xy 2.596740 0.174289)
+ (xy 2.598028 0.179260) (xy 2.600572 0.185586) (xy 2.604769 0.193884) (xy 2.611015 0.204773) (xy 2.619708 0.218868) (xy 2.631243 0.236788) (xy 2.646019 0.259150) (xy 2.664431 0.286571)
+ (xy 2.686877 0.319670) (xy 2.713753 0.359063) (xy 2.745456 0.405368) (xy 2.782383 0.459202) (xy 2.824931 0.521182) (xy 2.868192 0.584200) (xy 2.906622 0.640193) (xy 2.943767 0.694319)
+ (xy 2.979038 0.745723) (xy 3.011851 0.793551) (xy 3.041618 0.836948) (xy 3.067753 0.875058) (xy 3.089670 0.907026) (xy 3.106781 0.931997) (xy 3.118501 0.949116) (xy 3.123189 0.955979)
+ (xy 3.130632 0.966286) (xy 3.137421 0.975165) (xy 3.143143 0.983158) (xy 3.147386 0.990805) (xy 3.149738 0.998647) (xy 3.149787 1.007226) (xy 3.147120 1.017083) (xy 3.141326 1.028759)
+ (xy 3.131992 1.042794) (xy 3.118706 1.059731) (xy 3.101056 1.080109) (xy 3.078630 1.104471) (xy 3.051015 1.133357) (xy 3.017800 1.167309) (xy 2.978572 1.206867) (xy 2.932920 1.252573)
+ (xy 2.880430 1.304967) (xy 2.820691 1.364592) (xy 2.784074 1.401185) (xy 2.721774 1.463474) (xy 2.666940 1.518256) (xy 2.619062 1.566013) (xy 2.577630 1.607227) (xy 2.542133 1.642378)
+ (xy 2.512062 1.671949) (xy 2.486906 1.696421) (xy 2.466155 1.716277) (xy 2.449299 1.731997) (xy 2.435828 1.744064) (xy 2.425231 1.752958) (xy 2.416999 1.759162) (xy 2.410620 1.763158)
+ (xy 2.405586 1.765426) (xy 2.401385 1.766449) (xy 2.397509 1.766708) (xy 2.396902 1.766711) (xy 2.392160 1.766196) (xy 2.386036 1.764380) (xy 2.377903 1.760856) (xy 2.367133 1.755217)
+ (xy 2.353096 1.747056) (xy 2.335164 1.735965) (xy 2.312710 1.721538) (xy 2.285104 1.703368) (xy 2.251718 1.681047) (xy 2.211924 1.654169) (xy 2.165094 1.622327) (xy 2.110598 1.585113)
+ (xy 2.047809 1.542120) (xy 2.007484 1.514473) (xy 1.949063 1.474406) (xy 1.892810 1.435830) (xy 1.839501 1.399275) (xy 1.789906 1.365270) (xy 1.744798 1.334345) (xy 1.704950 1.307029)
+ (xy 1.671134 1.283853) (xy 1.644124 1.265345) (xy 1.624690 1.252036) (xy 1.613607 1.244454) (xy 1.612267 1.243540) (xy 1.600036 1.235445) (xy 1.588970 1.229341) (xy 1.577966 1.225561)
+ (xy 1.565919 1.224440) (xy 1.551725 1.226309) (xy 1.534279 1.231501) (xy 1.512477 1.240352) (xy 1.485215 1.253192) (xy 1.451389 1.270356) (xy 1.409893 1.292177) (xy 1.359624 1.318988)
+ (xy 1.356286 1.320772) (xy 1.314696 1.342871) (xy 1.275990 1.363176) (xy 1.241351 1.381085) (xy 1.211967 1.395995) (xy 1.189022 1.407306) (xy 1.173701 1.414415) (xy 1.167304 1.416728)
+ (xy 1.156684 1.413153) (xy 1.144177 1.404471) (xy 1.143713 1.404056) (xy 1.140231 1.398669) (xy 1.133901 1.386135) (xy 1.124619 1.366206) (xy 1.112280 1.338633) (xy 1.096778 1.303168)
+ (xy 1.078009 1.259564) (xy 1.055867 1.207573) (xy 1.030248 1.146947) (xy 1.001046 1.077438) (xy 0.968158 0.998798) (xy 0.931476 0.910779) (xy 0.890897 0.813133) (xy 0.846316 0.705613)
+ (xy 0.797628 0.587970) (xy 0.779331 0.543714) (xy 0.740781 0.450394) (xy 0.703418 0.359844) (xy 0.667469 0.272622) (xy 0.633162 0.189281) (xy 0.600723 0.110376) (xy 0.570380 0.036463)
+ (xy 0.542359 -0.031903) (xy 0.516889 -0.094167) (xy 0.494195 -0.149775) (xy 0.474506 -0.198171) (xy 0.458047 -0.238799) (xy 0.445047 -0.271106) (xy 0.435732 -0.294536) (xy 0.430330 -0.308534)
+ (xy 0.428978 -0.312565) (xy 0.432146 -0.328436) (xy 0.442451 -0.343884) (xy 0.461092 -0.360231) (xy 0.488975 -0.378619) (xy 0.507565 -0.390017) (xy 0.525138 -0.401248) (xy 0.543327 -0.413459)
+ (xy 0.563763 -0.427798) (xy 0.588078 -0.445413) (xy 0.617903 -0.467450) (xy 0.654869 -0.495057) (xy 0.659863 -0.498799) (xy 0.744951 -0.569595) (xy 0.822433 -0.648628) (xy 0.891809 -0.735360)
+ (xy 0.922700 -0.780519) (xy 0.977694 -0.875335) (xy 1.022301 -0.973630) (xy 1.056603 -1.074658) (xy 1.080680 -1.177670) (xy 1.094614 -1.281921) (xy 1.098486 -1.386662) (xy 1.092378 -1.491147)
+ (xy 1.076369 -1.594628) (xy 1.050542 -1.696357) (xy 1.014978 -1.795589) (xy 0.969757 -1.891574) (xy 0.914960 -1.983567) (xy 0.850670 -2.070820) (xy 0.776966 -2.152585) (xy 0.773350 -2.156203)
+ (xy 0.690844 -2.230539) (xy 0.602182 -2.295486) (xy 0.507761 -2.350846) (xy 0.407979 -2.396422) (xy 0.303233 -2.432014) (xy 0.193921 -2.457426) (xy 0.155222 -2.463795) (xy 0.109393 -2.468823)
+ (xy 0.056164 -2.471835) (xy -0.000756 -2.472829) (xy -0.057657 -2.471804) (xy -0.110833 -2.468758) (xy -0.155222 -2.463890) (xy -0.263310 -2.442679) (xy -0.366631 -2.411675) (xy -0.464796 -2.371467)
+ (xy -0.557415 -2.322646) (xy -0.644099 -2.265800) (xy -0.724459 -2.201520) (xy -0.798105 -2.130395) (xy -0.864649 -2.053015) (xy -0.923699 -1.969969) (xy -0.974868 -1.881847) (xy -1.017766 -1.789239)
+ (xy -1.052002 -1.692734) (xy -1.077189 -1.592922) (xy -1.092937 -1.490393) (xy -1.098855 -1.385735) (xy -1.094556 -1.279539) (xy -1.079649 -1.172394) (xy -1.061303 -1.091883) (xy -1.028792 -0.990840)
+ (xy -0.986353 -0.893090) (xy -0.934740 -0.799762) (xy -0.874711 -0.711984) (xy -0.807020 -0.630885) (xy -0.732423 -0.557596) (xy -0.669247 -0.506067) (xy -0.631142 -0.477634) (xy -0.600468 -0.454908)
+ (xy -0.575655 -0.436780) (xy -0.555136 -0.422139) (xy -0.537340 -0.409876) (xy -0.520700 -0.398881) (xy -0.503647 -0.388045) (xy -0.493380 -0.381663) (xy -0.464737 -0.362699) (xy -0.445335 -0.346560)
+ (xy -0.433923 -0.331904) (xy -0.429253 -0.317388) (xy -0.428978 -0.312480) (xy -0.431100 -0.306386) (xy -0.437317 -0.290417) (xy -0.447400 -0.265130) (xy -0.461123 -0.231078) (xy -0.478259 -0.188818)
+ (xy -0.498580 -0.138905) (xy -0.521859 -0.081893) (xy -0.547869 -0.018338) (xy -0.576384 0.051205) (xy -0.607175 0.126180) (xy -0.640015 0.206034) (xy -0.674678 0.290210) (xy -0.710937 0.378154)
+ (xy -0.748563 0.469310) (xy -0.779342 0.543798) (xy -0.829560 0.665192) (xy -0.875633 0.776371) (xy -0.917664 0.877583) (xy -0.955756 0.969070) (xy -0.990013 1.051080) (xy -1.020540 1.123856)
+ (xy -1.047439 1.187644) (xy -1.070815 1.242689) (xy -1.090772 1.289235) (xy -1.107412 1.327528) (xy -1.120841 1.357812) (xy -1.131162 1.380334) (xy -1.138478 1.395337) (xy -1.142893 1.403067)
+ (xy -1.143723 1.404056) (xy -1.155970 1.412870) (xy -1.166343 1.416747) (xy -1.166679 1.416756) (xy -1.173572 1.414174) (xy -1.189217 1.406829) (xy -1.212436 1.395321) (xy -1.242049 1.380251)
+ (xy -1.276875 1.362217) (xy -1.315735 1.341822) (xy -1.355322 1.320800) (xy -1.403656 1.295077) (xy -1.443160 1.274287) (xy -1.474899 1.257930) (xy -1.499938 1.245506) (xy -1.519342 1.236516)
+ (xy -1.534176 1.230458) (xy -1.545507 1.226835) (xy -1.554398 1.225145) (xy -1.559799 1.224845) (xy -1.563508 1.224661) (xy -1.566583 1.224342) (xy -1.569556 1.224234) (xy -1.572957 1.224683)
+ (xy -1.577317 1.226038) (xy -1.583166 1.228644) (xy -1.591036 1.232850) (xy -1.601456 1.239000) (xy -1.614958 1.247443) (xy -1.632072 1.258526) (xy -1.653329 1.272594) (xy -1.679259 1.289996)
+ (xy -1.710393 1.311078) (xy -1.747262 1.336186) (xy -1.790396 1.365669) (xy -1.840326 1.399872) (xy -1.897583 1.439142) (xy -1.962696 1.483827) (xy -2.036198 1.534273) (xy -2.097649 1.576441)
+ (xy -2.156090 1.616496) (xy -2.205994 1.650584) (xy -2.248100 1.679177) (xy -2.283146 1.702743) (xy -2.311871 1.721752) (xy -2.335013 1.736675) (xy -2.353310 1.747980) (xy -2.367502 1.756137)
+ (xy -2.378325 1.761616) (xy -2.386520 1.764887) (xy -2.392823 1.766420) (xy -2.396756 1.766711) (xy -2.400643 1.766538) (xy -2.404751 1.765696) (xy -2.409589 1.763703) (xy -2.415670 1.760079)
+ (xy -2.423503 1.754342) (xy -2.433599 1.746009) (xy -2.446467 1.734599) (xy -2.462619 1.719631) (xy -2.482565 1.700622) (xy -2.506815 1.677091) (xy -2.535880 1.648557) (xy -2.570270 1.614537)
+ (xy -2.610495 1.574550) (xy -2.657067 1.528114) (xy -2.710494 1.474748) (xy -2.771288 1.413970) (xy -2.784073 1.401185) (xy -2.848033 1.337295) (xy -2.904513 1.280936) (xy -2.953927 1.231568)
+ (xy -2.996686 1.188649) (xy -3.033202 1.151639) (xy -3.063889 1.119995) (xy -3.089157 1.093177) (xy -3.109420 1.070644) (xy -3.125089 1.051855) (xy -3.136578 1.036269) (xy -3.144297 1.023343)
+ (xy -3.148659 1.012539) (xy -3.150076 1.003313) (xy -3.148962 0.995125) (xy -3.145727 0.987435) (xy -3.140783 0.979700) (xy -3.134545 0.971380) (xy -3.127422 0.961933) (xy -3.123222 0.955979)
+ (xy -3.115691 0.944952) (xy -3.102350 0.925460) (xy -3.083776 0.898345) (xy -3.060547 0.864450) (xy -3.033241 0.824617) (xy -3.002434 0.779688) (xy -2.968705 0.730507) (xy -2.932631 0.677914)
+ (xy -2.894790 0.622754) (xy -2.862919 0.576303) (xy -2.815484 0.507183) (xy -2.774018 0.446759) (xy -2.738121 0.394410) (xy -2.707395 0.349511) (xy -2.681438 0.311440) (xy -2.659852 0.279573)
+ (xy -2.642235 0.253288) (xy -2.628189 0.231962) (xy -2.617313 0.214970) (xy -2.609207 0.201690) (xy -2.603471 0.191500) (xy -2.599706 0.183775) (xy -2.597512 0.177892) (xy -2.596488 0.173229)
+ (xy -2.596234 0.169163) (xy -2.596352 0.165069) (xy -2.596444 0.161102) (xy -2.597694 0.153221) (xy -2.601568 0.139403) (xy -2.608257 0.119148) (xy -2.617949 0.091953) (xy -2.630834 0.057318)
+ (xy -2.647099 0.014742) (xy -2.666936 -0.036277) (xy -2.690532 -0.096240) (xy -2.718077 -0.165647) (xy -2.748576 -0.242042) (xy -2.773649 -0.304511) (xy -2.797708 -0.364085) (xy -2.820396 -0.419906)
+ (xy -2.841359 -0.471116) (xy -2.860240 -0.516858) (xy -2.876685 -0.556275) (xy -2.890338 -0.588508) (xy -2.900843 -0.612700) (xy -2.907845 -0.627993) (xy -2.910791 -0.633371) (xy -2.922389 -0.644068)
+ (xy -2.930716 -0.649780) (xy -2.937652 -0.651590) (xy -2.954859 -0.655283) (xy -2.981508 -0.660699) (xy -3.016769 -0.667677) (xy -3.059810 -0.676059) (xy -3.109801 -0.685683) (xy -3.165913 -0.696390)
+ (xy -3.227314 -0.708018) (xy -3.293174 -0.720409) (xy -3.362663 -0.733402) (xy -3.410557 -0.742313) (xy -3.482089 -0.755602) (xy -3.550614 -0.768348) (xy -3.615294 -0.780394) (xy -3.675292 -0.791584)
+ (xy -3.729770 -0.801759) (xy -3.777889 -0.810765) (xy -3.818813 -0.818443) (xy -3.851702 -0.824638) (xy -3.875719 -0.829192) (xy -3.890027 -0.831949) (xy -3.893741 -0.832708) (xy -3.907033 -0.838905)
+ (xy -3.920516 -0.849425) (xy -3.934178 -0.863087) (xy -3.933998 -1.381221) (xy -3.933968 -1.469914) (xy -3.933924 -1.548015) (xy -3.933838 -1.616222) (xy -3.933679 -1.675232) (xy -3.933419 -1.725741)
+ (xy -3.933030 -1.768449) (xy -3.932481 -1.804051) (xy -3.931744 -1.833245) (xy -3.930790 -1.856728) (xy -3.929589 -1.875198) (xy -3.928114 -1.889352) (xy -3.926334 -1.899886) (xy -3.924220 -1.907499)
+ (xy -3.921744 -1.912888) (xy -3.918877 -1.916749) (xy -3.915589 -1.919780) (xy -3.911851 -1.922679) (xy -3.911428 -1.923007) (xy -3.904704 -1.925016) (xy -3.887686 -1.928904) (xy -3.861182 -1.934513)
+ (xy -3.826002 -1.941684) (xy -3.782955 -1.950259) (xy -3.732850 -1.960077) (xy -3.676497 -1.970982) (xy -3.614703 -1.982814) (xy -3.548279 -1.995415) (xy -3.478033 -2.008626) (xy -3.411895 -2.020965)
+ (xy -3.338702 -2.034626) (xy -3.268466 -2.047845) (xy -3.202010 -2.060462) (xy -3.140159 -2.072315) (xy -3.083736 -2.083242) (xy -3.033565 -2.093081) (xy -2.990471 -2.101672) (xy -2.955277 -2.108853)
+ (xy -2.928807 -2.114463) (xy -2.911886 -2.118339) (xy -2.905531 -2.120198) (xy -2.890952 -2.130771) (xy -2.881144 -2.141800) (xy -2.877453 -2.149193) (xy -2.869718 -2.166084) (xy -2.858323 -2.191588)
+ (xy -2.843658 -2.224820) (xy -2.826107 -2.264897) (xy -2.806058 -2.310932) (xy -2.783898 -2.362042) (xy -2.760013 -2.417342) (xy -2.734791 -2.475947) (xy -2.720224 -2.509883) (xy -2.688555 -2.583898)
+ (xy -2.661201 -2.648195) (xy -2.637917 -2.703383) (xy -2.618459 -2.750072) (xy -2.602580 -2.788871) (xy -2.590035 -2.820388) (xy -2.580580 -2.845233) (xy -2.573969 -2.864015) (xy -2.569957 -2.877342)
+ (xy -2.568298 -2.885824) (xy -2.568222 -2.887372) (xy -2.568599 -2.891891) (xy -2.569985 -2.897401) (xy -2.572766 -2.904494) (xy -2.577327 -2.913762) (xy -2.584053 -2.925797) (xy -2.593329 -2.941191)
+ (xy -2.605539 -2.960537) (xy -2.621070 -2.984425) (xy -2.640305 -3.013449) (xy -2.663631 -3.048201) (xy -2.691431 -3.089272) (xy -2.724092 -3.137254) (xy -2.761998 -3.192740) (xy -2.805534 -3.256322)
+ (xy -2.855084 -3.328592) (xy -2.856278 -3.330332) (xy -2.898718 -3.392299) (xy -2.939348 -3.451807) (xy -2.977709 -3.508173) (xy -3.013341 -3.560714) (xy -3.045785 -3.608746) (xy -3.074582 -3.651587)
+ (xy -3.099272 -3.688552) (xy -3.119396 -3.718958) (xy -3.134494 -3.742122) (xy -3.144107 -3.757360) (xy -3.147776 -3.763989) (xy -3.147778 -3.763998) (xy -3.148502 -3.780380) (xy -3.146177 -3.791083)
+ (xy -3.141150 -3.797751) (xy -3.128312 -3.812078) (xy -3.107910 -3.833812) (xy -3.080190 -3.862704) (xy -3.045400 -3.898505) (xy -3.003784 -3.940965) (xy -2.955590 -3.989833) (xy -2.901064 -4.044860)
+ (xy -2.840451 -4.105797) (xy -2.774000 -4.172393) (xy -2.701955 -4.244398) (xy -2.624564 -4.321563) (xy -2.542072 -4.403639) (xy -2.541630 -4.404078) (xy -2.505349 -4.440026) (xy -2.476077 -4.468708)
+ (xy -2.452917 -4.490913) (xy -2.434967 -4.507428) (xy -2.421329 -4.519043) (xy -2.411103 -4.526545) (xy -2.403388 -4.530723) (xy -2.397285 -4.532365) (xy -2.395090 -4.532489) (xy -2.390075 -4.531232)
+ (xy -2.381460 -4.527238) (xy -2.368735 -4.520172) (xy -2.351391 -4.509698) (xy -2.328917 -4.495480) (xy -2.300804 -4.477182) (xy -2.266542 -4.454470) (xy -2.225620 -4.427008) (xy -2.177529 -4.394460)
+ (xy -2.121759 -4.356491) (xy -2.057800 -4.312765) (xy -1.985143 -4.262947) (xy -1.977682 -4.257825) (xy -1.901761 -4.205694) (xy -1.834593 -4.159571) (xy -1.775615 -4.119090) (xy -1.724263 -4.083885)
+ (xy -1.679972 -4.053590) (xy -1.642180 -4.027837) (xy -1.610323 -4.006261) (xy -1.583837 -3.988494) (xy -1.562159 -3.974172) (xy -1.544725 -3.962927) (xy -1.530971 -3.954393) (xy -1.520333 -3.948204)
+ (xy -1.512249 -3.943993) (xy -1.506153 -3.941394) (xy -1.501484 -3.940040) (xy -1.497677 -3.939566) (xy -1.494168 -3.939604) (xy -1.490393 -3.939789) (xy -1.488463 -3.939822) (xy -1.480049 -3.941178)
+ (xy -1.465404 -3.945376) (xy -1.444009 -3.952617) (xy -1.415341 -3.963099) (xy -1.378881 -3.977020) (xy -1.334108 -3.994579) (xy -1.280501 -4.015976) (xy -1.217539 -4.041407) (xy -1.146438 -4.070365)
+ (xy -1.073861 -4.100019) (xy -1.011006 -4.125723) (xy -0.957150 -4.147800) (xy -0.911564 -4.166574) (xy -0.873524 -4.182367) (xy -0.842303 -4.195502) (xy -0.817176 -4.206303) (xy -0.797417 -4.215092)
+ (xy -0.782299 -4.222193) (xy -0.771098 -4.227927) (xy -0.763086 -4.232620) (xy -0.757539 -4.236592) (xy -0.753729 -4.240169) (xy -0.750932 -4.243671) (xy -0.748421 -4.247423) (xy -0.748372 -4.247498)
+ (xy -0.745675 -4.254390) (xy -0.741719 -4.268921) (xy -0.736432 -4.291448) (xy -0.729742 -4.322329) (xy -0.721578 -4.361921) (xy -0.711869 -4.410583) (xy -0.700543 -4.468670) (xy -0.687527 -4.536541)
+ (xy -0.672751 -4.614554) (xy -0.656143 -4.703065) (xy -0.642775 -4.774765) (xy -0.547667 -5.286022) (xy -0.530567 -5.301544) (xy -0.513466 -5.317066) (xy 0.513467 -5.317066) (xy 0.530628 -5.301544) )(layer F.SilkS) (width 0.010000)
+ )
+)
diff --git a/kicad/lib/Necroware.pretty/open_hardware_logo_only.kicad_mod b/kicad/lib/Necroware.pretty/open_hardware_logo_only.kicad_mod
new file mode 100644
index 0000000..75bd7cc
--- /dev/null
+++ b/kicad/lib/Necroware.pretty/open_hardware_logo_only.kicad_mod
@@ -0,0 +1,225 @@
+(module open_hardware_logo_only (layer F.Cu) (tedit 0)
+ (fp_text reference G*** (at 0 0) (layer F.SilkS) hide
+ (effects (font (size 1.524 1.524) (thickness 0.3)))
+ )
+ (fp_text value LOGO (at 0.75 0) (layer F.SilkS) hide
+ (effects (font (size 1.524 1.524) (thickness 0.3)))
+ )
+ (fp_poly (pts (xy 0.481926 -3.171191) (xy 0.485025 -3.167684) (xy 0.487915 -3.163228) (xy 0.490784 -3.156998)
+ (xy 0.493818 -3.148167) (xy 0.497202 -3.13591) (xy 0.501124 -3.119399) (xy 0.505768 -3.09781)
+ (xy 0.511323 -3.070316) (xy 0.517972 -3.036091) (xy 0.525904 -2.994309) (xy 0.535303 -2.944144)
+ (xy 0.54576 -2.88798) (xy 0.56332 -2.793486) (xy 0.579117 -2.708469) (xy 0.593255 -2.632419)
+ (xy 0.605837 -2.564826) (xy 0.616968 -2.505181) (xy 0.626754 -2.452975) (xy 0.635297 -2.407696)
+ (xy 0.642703 -2.368836) (xy 0.649075 -2.335885) (xy 0.654519 -2.308332) (xy 0.659139 -2.285669)
+ (xy 0.663039 -2.267386) (xy 0.666323 -2.252972) (xy 0.669096 -2.241919) (xy 0.671463 -2.233715)
+ (xy 0.673527 -2.227852) (xy 0.675393 -2.22382) (xy 0.677166 -2.221109) (xy 0.678949 -2.21921)
+ (xy 0.680848 -2.217611) (xy 0.682967 -2.215805) (xy 0.683534 -2.21527) (xy 0.691474 -2.210239)
+ (xy 0.707905 -2.201939) (xy 0.731855 -2.190767) (xy 0.762348 -2.17712) (xy 0.79841 -2.161396)
+ (xy 0.839068 -2.143993) (xy 0.883347 -2.125308) (xy 0.930273 -2.105738) (xy 0.978871 -2.085682)
+ (xy 1.028168 -2.065536) (xy 1.077189 -2.045698) (xy 1.124961 -2.026567) (xy 1.170508 -2.008538)
+ (xy 1.212857 -1.99201) (xy 1.251033 -1.977381) (xy 1.284062 -1.965047) (xy 1.310971 -1.955407)
+ (xy 1.330785 -1.948858) (xy 1.342529 -1.945797) (xy 1.344339 -1.945619) (xy 1.357758 -1.947028)
+ (xy 1.371652 -1.952035) (xy 1.388871 -1.96185) (xy 1.400219 -1.969346) (xy 1.413317 -1.978275)
+ (xy 1.434048 -1.992447) (xy 1.461672 -2.011351) (xy 1.495445 -2.034479) (xy 1.534625 -2.061322)
+ (xy 1.57847 -2.091371) (xy 1.626237 -2.124119) (xy 1.677186 -2.159054) (xy 1.730573 -2.19567)
+ (xy 1.785656 -2.233457) (xy 1.841693 -2.271906) (xy 1.897943 -2.310508) (xy 1.953661 -2.348755)
+ (xy 1.963768 -2.355693) (xy 2.000332 -2.380752) (xy 2.034628 -2.404171) (xy 2.065671 -2.425286)
+ (xy 2.092477 -2.443429) (xy 2.114061 -2.457935) (xy 2.129438 -2.468138) (xy 2.137624 -2.473372)
+ (xy 2.138293 -2.473754) (xy 2.143109 -2.476256) (xy 2.147743 -2.478077) (xy 2.152654 -2.478809)
+ (xy 2.158303 -2.478049) (xy 2.16515 -2.475389) (xy 2.173654 -2.470425) (xy 2.184276 -2.46275)
+ (xy 2.197476 -2.451958) (xy 2.213713 -2.437645) (xy 2.233448 -2.419404) (xy 2.257139 -2.39683)
+ (xy 2.285249 -2.369517) (xy 2.318236 -2.337059) (xy 2.35656 -2.29905) (xy 2.400681 -2.255086)
+ (xy 2.451059 -2.204759) (xy 2.508155 -2.147665) (xy 2.509412 -2.146408) (xy 2.565347 -2.090457)
+ (xy 2.614527 -2.041225) (xy 2.657385 -1.998251) (xy 2.694357 -1.961076) (xy 2.725876 -1.929238)
+ (xy 2.752376 -1.902279) (xy 2.774293 -1.879738) (xy 2.792061 -1.861154) (xy 2.806114 -1.846069)
+ (xy 2.816885 -1.834021) (xy 2.824811 -1.824552) (xy 2.830325 -1.8172) (xy 2.833861 -1.811506)
+ (xy 2.835854 -1.807009) (xy 2.836738 -1.80325) (xy 2.836948 -1.799768) (xy 2.836949 -1.799496)
+ (xy 2.836484 -1.795447) (xy 2.83486 -1.79012) (xy 2.831732 -1.782986) (xy 2.826755 -1.773517)
+ (xy 2.819586 -1.761186) (xy 2.809878 -1.745464) (xy 2.797289 -1.725823) (xy 2.781472 -1.701736)
+ (xy 2.762083 -1.672674) (xy 2.738779 -1.63811) (xy 2.711213 -1.597514) (xy 2.679042 -1.55036)
+ (xy 2.641921 -1.496118) (xy 2.599506 -1.434262) (xy 2.580771 -1.406966) (xy 2.542682 -1.351373)
+ (xy 2.506156 -1.297852) (xy 2.471617 -1.247038) (xy 2.43949 -1.199565) (xy 2.4102 -1.156068)
+ (xy 2.384171 -1.11718) (xy 2.361828 -1.083536) (xy 2.343596 -1.05577) (xy 2.329899 -1.034517)
+ (xy 2.321162 -1.02041) (xy 2.317875 -1.014305) (xy 2.313808 -0.991943) (xy 2.315764 -0.978745)
+ (xy 2.31852 -0.971421) (xy 2.324959 -0.955581) (xy 2.334736 -0.932038) (xy 2.347509 -0.901603)
+ (xy 2.362933 -0.865091) (xy 2.380665 -0.823312) (xy 2.40036 -0.777081) (xy 2.421677 -0.727208)
+ (xy 2.44427 -0.674507) (xy 2.455787 -0.6477) (xy 2.483397 -0.583515) (xy 2.507346 -0.528012)
+ (xy 2.52798 -0.480541) (xy 2.545645 -0.440448) (xy 2.560687 -0.40708) (xy 2.573454 -0.379785)
+ (xy 2.584292 -0.357911) (xy 2.593547 -0.340804) (xy 2.601566 -0.327813) (xy 2.608695 -0.318284)
+ (xy 2.615281 -0.311566) (xy 2.62167 -0.307005) (xy 2.628208 -0.303948) (xy 2.635243 -0.301744)
+ (xy 2.640131 -0.300488) (xy 2.648482 -0.298722) (xy 2.665901 -0.295292) (xy 2.691461 -0.290374)
+ (xy 2.724237 -0.284143) (xy 2.763304 -0.276773) (xy 2.807735 -0.268438) (xy 2.856606 -0.259313)
+ (xy 2.90899 -0.249573) (xy 2.963963 -0.239393) (xy 2.96672 -0.238883) (xy 3.053008 -0.222946)
+ (xy 3.129864 -0.208761) (xy 3.19784 -0.196211) (xy 3.257491 -0.185184) (xy 3.30937 -0.175563)
+ (xy 3.354032 -0.167234) (xy 3.39203 -0.160083) (xy 3.423918 -0.153993) (xy 3.450249 -0.148851)
+ (xy 3.471579 -0.144541) (xy 3.488461 -0.140949) (xy 3.501448 -0.137959) (xy 3.511094 -0.135458)
+ (xy 3.517954 -0.133329) (xy 3.522581 -0.131458) (xy 3.52553 -0.12973) (xy 3.527353 -0.128031)
+ (xy 3.528605 -0.126245) (xy 3.52984 -0.124258) (xy 3.531612 -0.121954) (xy 3.53187 -0.12167)
+ (xy 3.54584 -0.10652) (xy 3.54584 0.352901) (xy 3.545799 0.439151) (xy 3.545673 0.515617)
+ (xy 3.545459 0.58267) (xy 3.545151 0.640686) (xy 3.544744 0.690039) (xy 3.544235 0.731101)
+ (xy 3.543618 0.764249) (xy 3.542888 0.789854) (xy 3.542043 0.808293) (xy 3.541076 0.819937)
+ (xy 3.540056 0.825016) (xy 3.531385 0.836076) (xy 3.518592 0.844962) (xy 3.518466 0.845021)
+ (xy 3.510371 0.847403) (xy 3.493334 0.85138) (xy 3.468411 0.85674) (xy 3.436657 0.863267)
+ (xy 3.399128 0.870749) (xy 3.35688 0.878973) (xy 3.310969 0.887723) (xy 3.2639 0.89652)
+ (xy 3.166957 0.914467) (xy 3.077755 0.930992) (xy 2.996519 0.946055) (xy 2.923473 0.959611)
+ (xy 2.858842 0.971621) (xy 2.802851 0.982042) (xy 2.755724 0.990833) (xy 2.717687 0.997951)
+ (xy 2.688963 1.003354) (xy 2.669777 1.007001) (xy 2.660354 1.008851) (xy 2.660272 1.008868)
+ (xy 2.653406 1.010411) (xy 2.647181 1.012383) (xy 2.641288 1.015413) (xy 2.63542 1.020127)
+ (xy 2.629272 1.027152) (xy 2.622535 1.037114) (xy 2.614902 1.050641) (xy 2.606066 1.068359)
+ (xy 2.595721 1.090896) (xy 2.583559 1.118877) (xy 2.569273 1.15293) (xy 2.552556 1.193682)
+ (xy 2.533101 1.241759) (xy 2.5106 1.297789) (xy 2.484747 1.362397) (xy 2.474445 1.388165)
+ (xy 2.447852 1.454755) (xy 2.424833 1.512576) (xy 2.405149 1.562274) (xy 2.388561 1.604495)
+ (xy 2.374828 1.639886) (xy 2.363709 1.669095) (xy 2.354967 1.692768) (xy 2.34836 1.711552)
+ (xy 2.343648 1.726093) (xy 2.340592 1.737038) (xy 2.338952 1.745035) (xy 2.338488 1.750729)
+ (xy 2.338779 1.753936) (xy 2.342267 1.761704) (xy 2.351292 1.777222) (xy 2.365896 1.800555)
+ (xy 2.386122 1.831767) (xy 2.412011 1.870921) (xy 2.443606 1.918082) (xy 2.480949 1.973312)
+ (xy 2.524083 2.036676) (xy 2.573049 2.108238) (xy 2.588588 2.130885) (xy 2.625842 2.18527)
+ (xy 2.661453 2.237487) (xy 2.694995 2.286899) (xy 2.726044 2.33287) (xy 2.754174 2.374763)
+ (xy 2.77896 2.41194) (xy 2.799977 2.443764) (xy 2.816799 2.4696) (xy 2.829003 2.488808)
+ (xy 2.836161 2.500753) (xy 2.837953 2.504496) (xy 2.836889 2.522284) (xy 2.830327 2.536218)
+ (xy 2.825463 2.541862) (xy 2.814011 2.553983) (xy 2.796603 2.571949) (xy 2.773875 2.59513)
+ (xy 2.746463 2.622894) (xy 2.715 2.654611) (xy 2.680121 2.689648) (xy 2.642461 2.727376)
+ (xy 2.602656 2.767162) (xy 2.561339 2.808376) (xy 2.519146 2.850386) (xy 2.476712 2.892562)
+ (xy 2.434671 2.934273) (xy 2.393658 2.974886) (xy 2.354308 3.013772) (xy 2.317255 3.050298)
+ (xy 2.283135 3.083835) (xy 2.252583 3.11375) (xy 2.226232 3.139412) (xy 2.204719 3.160191)
+ (xy 2.188677 3.175456) (xy 2.178742 3.184574) (xy 2.175815 3.186933) (xy 2.171669 3.188838)
+ (xy 2.166909 3.18974) (xy 2.160993 3.189303) (xy 2.153379 3.187194) (xy 2.143526 3.183077)
+ (xy 2.130891 3.176619) (xy 2.114932 3.167486) (xy 2.095107 3.155342) (xy 2.070875 3.139854)
+ (xy 2.041694 3.120687) (xy 2.007021 3.097506) (xy 1.966315 3.069978) (xy 1.919034 3.037767)
+ (xy 1.864636 3.00054) (xy 1.802578 2.957962) (xy 1.783434 2.944815) (xy 1.720852 2.901842)
+ (xy 1.666075 2.864269) (xy 1.618543 2.831735) (xy 1.577693 2.803879) (xy 1.542964 2.780337)
+ (xy 1.513794 2.760749) (xy 1.489621 2.744752) (xy 1.469885 2.731985) (xy 1.454022 2.722085)
+ (xy 1.441472 2.714691) (xy 1.431672 2.709441) (xy 1.424061 2.705973) (xy 1.418077 2.703926)
+ (xy 1.413159 2.702936) (xy 1.408745 2.702643) (xy 1.407514 2.702637) (xy 1.400319 2.703155)
+ (xy 1.391916 2.70497) (xy 1.381316 2.708546) (xy 1.367529 2.714345) (xy 1.349568 2.72283)
+ (xy 1.326442 2.734465) (xy 1.297163 2.749711) (xy 1.260741 2.769032) (xy 1.22682 2.787184)
+ (xy 1.181463 2.81139) (xy 1.144096 2.830983) (xy 1.113842 2.846306) (xy 1.089823 2.857705)
+ (xy 1.071161 2.865524) (xy 1.056979 2.870109) (xy 1.0464 2.871804) (xy 1.038545 2.870955)
+ (xy 1.032537 2.867906) (xy 1.029166 2.864866) (xy 1.026167 2.859085) (xy 1.019582 2.844509)
+ (xy 1.009661 2.821742) (xy 0.996654 2.791391) (xy 0.98081 2.754059) (xy 0.962379 2.710354)
+ (xy 0.94161 2.66088) (xy 0.918754 2.606244) (xy 0.89406 2.547051) (xy 0.867778 2.483906)
+ (xy 0.840157 2.417415) (xy 0.811447 2.348184) (xy 0.781898 2.276817) (xy 0.751759 2.203922)
+ (xy 0.721281 2.130103) (xy 0.690712 2.055966) (xy 0.660303 1.982116) (xy 0.630304 1.909159)
+ (xy 0.600963 1.837701) (xy 0.572531 1.768347) (xy 0.545257 1.701703) (xy 0.519391 1.638375)
+ (xy 0.495183 1.578967) (xy 0.472882 1.524086) (xy 0.452739 1.474337) (xy 0.435002 1.430326)
+ (xy 0.419922 1.392657) (xy 0.407748 1.361938) (xy 0.39873 1.338773) (xy 0.393117 1.323769)
+ (xy 0.39116 1.317529) (xy 0.391159 1.31751) (xy 0.39296 1.30432) (xy 0.399261 1.29242)
+ (xy 0.411409 1.280321) (xy 0.430751 1.266537) (xy 0.445807 1.257178) (xy 0.459794 1.248625)
+ (xy 0.473193 1.240083) (xy 0.48728 1.230646) (xy 0.503333 1.219405) (xy 0.522629 1.205455)
+ (xy 0.546445 1.187888) (xy 0.576057 1.165796) (xy 0.60452 1.144452) (xy 0.642981 1.113209)
+ (xy 0.68381 1.075924) (xy 0.724269 1.035341) (xy 0.761621 0.994203) (xy 0.792514 0.956069)
+ (xy 0.849085 0.872629) (xy 0.896282 0.785326) (xy 0.934023 0.694405) (xy 0.962225 0.600116)
+ (xy 0.980807 0.502704) (xy 0.989685 0.402418) (xy 0.9905 0.36221) (xy 0.985734 0.263266)
+ (xy 0.971445 0.166827) (xy 0.948059 0.073416) (xy 0.916003 -0.016445) (xy 0.875704 -0.102232)
+ (xy 0.827589 -0.183423) (xy 0.772083 -0.259493) (xy 0.709614 -0.329921) (xy 0.640607 -0.394182)
+ (xy 0.565491 -0.451754) (xy 0.484691 -0.502114) (xy 0.398633 -0.544738) (xy 0.307745 -0.579103)
+ (xy 0.212453 -0.604687) (xy 0.199872 -0.607319) (xy 0.102079 -0.622169) (xy 0.00525 -0.627243)
+ (xy -0.09009 -0.622915) (xy -0.183419 -0.609559) (xy -0.274214 -0.587549) (xy -0.361951 -0.55726)
+ (xy -0.446107 -0.519066) (xy -0.526159 -0.47334) (xy -0.601583 -0.420457) (xy -0.671857 -0.360791)
+ (xy -0.736456 -0.294717) (xy -0.794859 -0.222608) (xy -0.84654 -0.144839) (xy -0.890978 -0.061783)
+ (xy -0.927649 0.026184) (xy -0.956029 0.11869) (xy -0.975595 0.215359) (xy -0.978414 0.235229)
+ (xy -0.981765 0.269921) (xy -0.983764 0.310933) (xy -0.984452 0.355637) (xy -0.983872 0.401409)
+ (xy -0.982066 0.445621) (xy -0.979077 0.485648) (xy -0.974947 0.518864) (xy -0.973728 0.525869)
+ (xy -0.95038 0.626129) (xy -0.918943 0.720515) (xy -0.879161 0.809627) (xy -0.830777 0.89406)
+ (xy -0.792038 0.950183) (xy -0.765949 0.982858) (xy -0.734116 1.018735) (xy -0.698885 1.055446)
+ (xy -0.662605 1.09062) (xy -0.627623 1.121891) (xy -0.59944 1.144549) (xy -0.563589 1.171328)
+ (xy -0.53445 1.192898) (xy -0.510665 1.210225) (xy -0.490874 1.224271) (xy -0.47372 1.235999)
+ (xy -0.457842 1.246373) (xy -0.441883 1.256355) (xy -0.440548 1.257174) (xy -0.416699 1.27261)
+ (xy -0.400716 1.285328) (xy -0.391235 1.296858) (xy -0.38689 1.308729) (xy -0.386175 1.31812)
+ (xy -0.388094 1.324158) (xy -0.393667 1.338971) (xy -0.402644 1.361951) (xy -0.414776 1.392493)
+ (xy -0.429812 1.429991) (xy -0.447502 1.473838) (xy -0.467598 1.523428) (xy -0.489849 1.578156)
+ (xy -0.514005 1.637415) (xy -0.539817 1.700598) (xy -0.567035 1.7671) (xy -0.595408 1.836315)
+ (xy -0.624688 1.907637) (xy -0.654625 1.980459) (xy -0.684968 2.054175) (xy -0.715467 2.128179)
+ (xy -0.745874 2.201866) (xy -0.775939 2.274628) (xy -0.80541 2.345859) (xy -0.83404 2.414955)
+ (xy -0.861577 2.481308) (xy -0.887773 2.544312) (xy -0.912377 2.603361) (xy -0.935139 2.657849)
+ (xy -0.955811 2.707171) (xy -0.974141 2.750719) (xy -0.98988 2.787887) (xy -1.002779 2.81807)
+ (xy -1.012588 2.840662) (xy -1.019056 2.855055) (xy -1.02175 2.860406) (xy -1.026441 2.866282)
+ (xy -1.03209 2.870137) (xy -1.039568 2.871654) (xy -1.049743 2.870512) (xy -1.063487 2.866391)
+ (xy -1.081668 2.858973) (xy -1.105156 2.847938) (xy -1.134822 2.832966) (xy -1.171534 2.813739)
+ (xy -1.216164 2.789936) (xy -1.221665 2.786986) (xy -1.266905 2.762717) (xy -1.304217 2.742917)
+ (xy -1.334673 2.727349) (xy -1.359349 2.715775) (xy -1.379316 2.707956) (xy -1.395651 2.703653)
+ (xy -1.409426 2.702628) (xy -1.421715 2.704643) (xy -1.433592 2.709459) (xy -1.446132 2.716838)
+ (xy -1.460408 2.726541) (xy -1.46852 2.732181) (xy -1.565067 2.798961) (xy -1.653514 2.859989)
+ (xy -1.734048 2.915391) (xy -1.806857 2.965292) (xy -1.872129 3.009819) (xy -1.930051 3.049096)
+ (xy -1.98081 3.083249) (xy -2.024593 3.112405) (xy -2.06159 3.136688) (xy -2.091985 3.156224)
+ (xy -2.115968 3.171139) (xy -2.133726 3.181559) (xy -2.145446 3.187608) (xy -2.150743 3.189403)
+ (xy -2.170426 3.191427) (xy -2.503276 2.858577) (xy -2.559649 2.802199) (xy -2.609263 2.752551)
+ (xy -2.652547 2.709179) (xy -2.689928 2.671628) (xy -2.721832 2.639446) (xy -2.748688 2.612178)
+ (xy -2.770921 2.58937) (xy -2.788961 2.57057) (xy -2.803233 2.555321) (xy -2.814165 2.543172)
+ (xy -2.822184 2.533668) (xy -2.827718 2.526356) (xy -2.831193 2.520781) (xy -2.833037 2.51649)
+ (xy -2.833677 2.513028) (xy -2.833541 2.509943) (xy -2.833259 2.508053) (xy -2.830365 2.501145)
+ (xy -2.822808 2.487763) (xy -2.810452 2.467701) (xy -2.79316 2.440755) (xy -2.770796 2.406718)
+ (xy -2.743226 2.365387) (xy -2.710312 2.316555) (xy -2.67192 2.260018) (xy -2.627913 2.195569)
+ (xy -2.585171 2.133221) (xy -2.542816 2.071392) (xy -2.503488 2.013706) (xy -2.467497 1.960627)
+ (xy -2.43515 1.912617) (xy -2.406756 1.870141) (xy -2.382623 1.833661) (xy -2.363058 1.803641)
+ (xy -2.348371 1.780543) (xy -2.338868 1.764831) (xy -2.334859 1.756969) (xy -2.334815 1.756818)
+ (xy -2.333986 1.752837) (xy -2.333735 1.748221) (xy -2.334307 1.742302) (xy -2.335945 1.734411)
+ (xy -2.338892 1.723881) (xy -2.343394 1.710043) (xy -2.349693 1.692229) (xy -2.358034 1.669772)
+ (xy -2.36866 1.642002) (xy -2.381815 1.608251) (xy -2.397743 1.567852) (xy -2.416687 1.520136)
+ (xy -2.438893 1.464436) (xy -2.464602 1.400082) (xy -2.469042 1.388975) (xy -2.496217 1.321025)
+ (xy -2.519926 1.261883) (xy -2.540478 1.210922) (xy -2.558178 1.167514) (xy -2.573334 1.131034)
+ (xy -2.586253 1.100855) (xy -2.59724 1.07635) (xy -2.606604 1.056892) (xy -2.614651 1.041855)
+ (xy -2.621688 1.030612) (xy -2.628021 1.022537) (xy -2.633958 1.017002) (xy -2.639805 1.013382)
+ (xy -2.645869 1.011049) (xy -2.652456 1.009377) (xy -2.655193 1.008778) (xy -2.662292 1.007389)
+ (xy -2.678617 1.004287) (xy -2.703405 0.999616) (xy -2.735891 0.993517) (xy -2.775313 0.986133)
+ (xy -2.820908 0.977607) (xy -2.871912 0.968083) (xy -2.927561 0.957702) (xy -2.987093 0.946607)
+ (xy -3.049744 0.934942) (xy -3.088966 0.927644) (xy -3.153048 0.915669) (xy -3.214399 0.904097)
+ (xy -3.272263 0.893078) (xy -3.325885 0.882759) (xy -3.374511 0.87329) (xy -3.417384 0.86482)
+ (xy -3.453749 0.857497) (xy -3.482852 0.85147) (xy -3.503936 0.846887) (xy -3.516247 0.843898)
+ (xy -3.519135 0.842916) (xy -3.529829 0.832859) (xy -3.535319 0.824264) (xy -3.536383 0.81757)
+ (xy -3.537326 0.802308) (xy -3.53815 0.7783) (xy -3.538857 0.74537) (xy -3.539449 0.70334)
+ (xy -3.539929 0.652032) (xy -3.540298 0.591269) (xy -3.540558 0.520875) (xy -3.540711 0.440671)
+ (xy -3.54076 0.352901) (xy -3.54076 -0.10652) (xy -3.52679 -0.121693) (xy -3.524253 -0.124342)
+ (xy -3.521364 -0.126788) (xy -3.517491 -0.129168) (xy -3.512 -0.131615) (xy -3.504261 -0.134264)
+ (xy -3.493639 -0.137251) (xy -3.479502 -0.14071) (xy -3.461217 -0.144775) (xy -3.438152 -0.149581)
+ (xy -3.409674 -0.155264) (xy -3.375151 -0.161958) (xy -3.333949 -0.169797) (xy -3.285435 -0.178917)
+ (xy -3.228978 -0.189451) (xy -3.163945 -0.201536) (xy -3.089702 -0.215306) (xy -3.070924 -0.218787)
+ (xy -3.005074 -0.231042) (xy -2.941907 -0.242888) (xy -2.882162 -0.254183) (xy -2.826579 -0.264783)
+ (xy -2.775897 -0.274543) (xy -2.730854 -0.283319) (xy -2.69219 -0.290968) (xy -2.660643 -0.297345)
+ (xy -2.636954 -0.302308) (xy -2.62186 -0.305711) (xy -2.616252 -0.307314) (xy -2.603211 -0.315913)
+ (xy -2.594911 -0.323385) (xy -2.591676 -0.32935) (xy -2.584861 -0.34373) (xy -2.574868 -0.365593)
+ (xy -2.562103 -0.394008) (xy -2.54697 -0.428043) (xy -2.529872 -0.466768) (xy -2.511213 -0.509249)
+ (xy -2.491397 -0.554557) (xy -2.470829 -0.60176) (xy -2.449912 -0.649926) (xy -2.429051 -0.698123)
+ (xy -2.408649 -0.745421) (xy -2.38911 -0.790888) (xy -2.370838 -0.833593) (xy -2.354238 -0.872603)
+ (xy -2.339714 -0.906989) (xy -2.327668 -0.935817) (xy -2.318506 -0.958158) (xy -2.312631 -0.973079)
+ (xy -2.310652 -0.978745) (xy -2.309199 -0.999572) (xy -2.31283 -1.014428) (xy -2.316666 -1.021466)
+ (xy -2.325851 -1.03623) (xy -2.33996 -1.058084) (xy -2.358567 -1.086396) (xy -2.381248 -1.12053)
+ (xy -2.407579 -1.159851) (xy -2.437133 -1.203725) (xy -2.469488 -1.251518) (xy -2.504217 -1.302595)
+ (xy -2.540896 -1.356322) (xy -2.575726 -1.407148) (xy -2.620389 -1.472245) (xy -2.659618 -1.529513)
+ (xy -2.693756 -1.579479) (xy -2.723148 -1.622673) (xy -2.748139 -1.65962) (xy -2.769072 -1.690849)
+ (xy -2.786293 -1.716888) (xy -2.800145 -1.738264) (xy -2.810973 -1.755505) (xy -2.819122 -1.769137)
+ (xy -2.824935 -1.77969) (xy -2.828757 -1.78769) (xy -2.830933 -1.793665) (xy -2.831807 -1.798143)
+ (xy -2.83187 -1.799556) (xy -2.83169 -1.80303) (xy -2.83086 -1.806755) (xy -2.828947 -1.811192)
+ (xy -2.825515 -1.816801) (xy -2.820131 -1.824042) (xy -2.812361 -1.833374) (xy -2.801768 -1.845257)
+ (xy -2.787921 -1.860152) (xy -2.770383 -1.878519) (xy -2.748721 -1.900817) (xy -2.722501 -1.927506)
+ (xy -2.691288 -1.959047) (xy -2.654647 -1.995899) (xy -2.612145 -2.038522) (xy -2.563347 -2.087377)
+ (xy -2.507818 -2.142923) (xy -2.504333 -2.146408) (xy -2.446992 -2.20376) (xy -2.396387 -2.254344)
+ (xy -2.352055 -2.298558) (xy -2.313531 -2.3368) (xy -2.280352 -2.36947) (xy -2.252053 -2.396966)
+ (xy -2.22817 -2.419687) (xy -2.208239 -2.438031) (xy -2.191795 -2.452397) (xy -2.178376 -2.463185)
+ (xy -2.167516 -2.470792) (xy -2.158752 -2.475618) (xy -2.151619 -2.478062) (xy -2.145654 -2.478521)
+ (xy -2.140391 -2.477395) (xy -2.135368 -2.475082) (xy -2.13012 -2.471982) (xy -2.127332 -2.4703)
+ (xy -2.120748 -2.466012) (xy -2.106418 -2.456398) (xy -2.084968 -2.441888) (xy -2.057026 -2.422909)
+ (xy -2.023221 -2.39989) (xy -1.98418 -2.373258) (xy -1.940529 -2.343442) (xy -1.892898 -2.31087)
+ (xy -1.841913 -2.27597) (xy -1.788202 -2.23917) (xy -1.735531 -2.20305) (xy -1.670673 -2.158571)
+ (xy -1.613644 -2.119508) (xy -1.563903 -2.085512) (xy -1.520915 -2.056233) (xy -1.48414 -2.031322)
+ (xy -1.45304 -2.010431) (xy -1.427078 -1.993209) (xy -1.405714 -1.979309) (xy -1.388412 -1.968379)
+ (xy -1.374632 -1.960073) (xy -1.363837 -1.954039) (xy -1.355488 -1.949929) (xy -1.349048 -1.947395)
+ (xy -1.343979 -1.946085) (xy -1.339741 -1.945653) (xy -1.338837 -1.945641) (xy -1.332037 -1.946563)
+ (xy -1.321002 -1.949473) (xy -1.305168 -1.954587) (xy -1.283972 -1.962119) (xy -1.256852 -1.972286)
+ (xy -1.223244 -1.985301) (xy -1.182585 -2.001382) (xy -1.134312 -2.020742) (xy -1.077863 -2.043597)
+ (xy -1.012673 -2.070163) (xy -1.005387 -2.07314) (xy -0.94072 -2.099612) (xy -0.884833 -2.122611)
+ (xy -0.837074 -2.142445) (xy -0.796791 -2.15942) (xy -0.763334 -2.173845) (xy -0.736051 -2.186027)
+ (xy -0.714292 -2.196274) (xy -0.697404 -2.204893) (xy -0.684738 -2.212191) (xy -0.675641 -2.218478)
+ (xy -0.669463 -2.224059) (xy -0.665552 -2.229244) (xy -0.663257 -2.234338) (xy -0.663101 -2.234825)
+ (xy -0.661824 -2.240896) (xy -0.658829 -2.256236) (xy -0.654252 -2.280128) (xy -0.648228 -2.31185)
+ (xy -0.640893 -2.350684) (xy -0.632381 -2.395909) (xy -0.622829 -2.446808) (xy -0.612373 -2.502659)
+ (xy -0.601146 -2.562743) (xy -0.589285 -2.626341) (xy -0.576925 -2.692734) (xy -0.576514 -2.69494)
+ (xy -0.564136 -2.761433) (xy -0.552249 -2.825169) (xy -0.540989 -2.885428) (xy -0.530491 -2.941488)
+ (xy -0.520892 -2.992628) (xy -0.512327 -3.038127) (xy -0.504932 -3.077265) (xy -0.498842 -3.10932)
+ (xy -0.494194 -3.13357) (xy -0.491123 -3.149295) (xy -0.489765 -3.155773) (xy -0.489752 -3.155818)
+ (xy -0.484013 -3.165036) (xy -0.473995 -3.174868) (xy -0.471599 -3.176622) (xy -0.46873 -3.178165)
+ (xy -0.464757 -3.17951) (xy -0.459051 -3.18067) (xy -0.450979 -3.18166) (xy -0.439912 -3.182492)
+ (xy -0.425217 -3.183181) (xy -0.406265 -3.18374) (xy -0.382425 -3.184182) (xy -0.353064 -3.184522)
+ (xy -0.317553 -3.184772) (xy -0.275261 -3.184946) (xy -0.225557 -3.185059) (xy -0.16781 -3.185123)
+ (xy -0.101389 -3.185152) (xy -0.025663 -3.18516) (xy 0.468141 -3.18516) (xy 0.481926 -3.171191)) (layer F.SilkS) (width 0.01))
+)
diff --git a/kicad/lib/README.md b/kicad/lib/README.md
new file mode 100644
index 0000000..074fe8d
--- /dev/null
+++ b/kicad/lib/README.md
@@ -0,0 +1 @@
+# kicad-library
\ No newline at end of file
diff --git a/kicad/sym-lib-table b/kicad/sym-lib-table
new file mode 100644
index 0000000..ebb9c77
--- /dev/null
+++ b/kicad/sym-lib-table
@@ -0,0 +1,3 @@
+(sym_lib_table
+ (lib (name Necroware)(type Legacy)(uri ${KIPRJMOD}/lib/Necroware.lib)(options "")(descr ""))
+)
diff --git a/photo.jpg b/photo.jpg
new file mode 100644
index 0000000..1ab02f5
Binary files /dev/null and b/photo.jpg differ