diff --git a/.travis.yml b/.travis.yml
index 27190c2f2a7..5d655614f5f 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -7,6 +7,7 @@ env:
- BYOND_MINOR="1247"
matrix:
- DM_MAPFILE="tgstation2"
+ - DM_MAPFILE="Asteroidstation"
- DM_MAPFILE="ministation"
before_install:
diff --git a/LICENSE.txt b/LICENSE.txt
new file mode 100644
index 00000000000..dba13ed2ddf
--- /dev/null
+++ b/LICENSE.txt
@@ -0,0 +1,661 @@
+ GNU AFFERO GENERAL PUBLIC LICENSE
+ Version 3, 19 November 2007
+
+ Copyright (C) 2007 Free Software Foundation, Inc.
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The GNU Affero General Public License is a free, copyleft license for
+software and other kinds of works, specifically designed to ensure
+cooperation with the community in the case of network server software.
+
+ The licenses for most software and other practical works are designed
+to take away your freedom to share and change the works. By contrast,
+our General Public Licenses are intended to guarantee your freedom to
+share and change all versions of a program--to make sure it remains free
+software for all its users.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+them if you wish), that you receive source code or can get it if you
+want it, that you can change the software or use pieces of it in new
+free programs, and that you know you can do these things.
+
+ Developers that use our General Public Licenses protect your rights
+with two steps: (1) assert copyright on the software, and (2) offer
+you this License which gives you legal permission to copy, distribute
+and/or modify the software.
+
+ A secondary benefit of defending all users' freedom is that
+improvements made in alternate versions of the program, if they
+receive widespread use, become available for other developers to
+incorporate. Many developers of free software are heartened and
+encouraged by the resulting cooperation. However, in the case of
+software used on network servers, this result may fail to come about.
+The GNU General Public License permits making a modified version and
+letting the public access it on a server without ever releasing its
+source code to the public.
+
+ The GNU Affero General Public License is designed specifically to
+ensure that, in such cases, the modified source code becomes available
+to the community. It requires the operator of a network server to
+provide the source code of the modified version running there to the
+users of that server. Therefore, public use of a modified version, on
+a publicly accessible server, gives the public access to the source
+code of the modified version.
+
+ An older license, called the Affero General Public License and
+published by Affero, was designed to accomplish similar goals. This is
+a different license, not a version of the Affero GPL, but Affero has
+released a new version of the Affero GPL which permits relicensing under
+this license.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ TERMS AND CONDITIONS
+
+ 0. Definitions.
+
+ "This License" refers to version 3 of the GNU Affero General Public License.
+
+ "Copyright" also means copyright-like laws that apply to other kinds of
+works, such as semiconductor masks.
+
+ "The Program" refers to any copyrightable work licensed under this
+License. Each licensee is addressed as "you". "Licensees" and
+"recipients" may be individuals or organizations.
+
+ To "modify" a work means to copy from or adapt all or part of the work
+in a fashion requiring copyright permission, other than the making of an
+exact copy. The resulting work is called a "modified version" of the
+earlier work or a work "based on" the earlier work.
+
+ A "covered work" means either the unmodified Program or a work based
+on the Program.
+
+ To "propagate" a work means to do anything with it that, without
+permission, would make you directly or secondarily liable for
+infringement under applicable copyright law, except executing it on a
+computer or modifying a private copy. Propagation includes copying,
+distribution (with or without modification), making available to the
+public, and in some countries other activities as well.
+
+ To "convey" a work means any kind of propagation that enables other
+parties to make or receive copies. Mere interaction with a user through
+a computer network, with no transfer of a copy, is not conveying.
+
+ An interactive user interface displays "Appropriate Legal Notices"
+to the extent that it includes a convenient and prominently visible
+feature that (1) displays an appropriate copyright notice, and (2)
+tells the user that there is no warranty for the work (except to the
+extent that warranties are provided), that licensees may convey the
+work under this License, and how to view a copy of this License. If
+the interface presents a list of user commands or options, such as a
+menu, a prominent item in the list meets this criterion.
+
+ 1. Source Code.
+
+ The "source code" for a work means the preferred form of the work
+for making modifications to it. "Object code" means any non-source
+form of a work.
+
+ A "Standard Interface" means an interface that either is an official
+standard defined by a recognized standards body, or, in the case of
+interfaces specified for a particular programming language, one that
+is widely used among developers working in that language.
+
+ The "System Libraries" of an executable work include anything, other
+than the work as a whole, that (a) is included in the normal form of
+packaging a Major Component, but which is not part of that Major
+Component, and (b) serves only to enable use of the work with that
+Major Component, or to implement a Standard Interface for which an
+implementation is available to the public in source code form. A
+"Major Component", in this context, means a major essential component
+(kernel, window system, and so on) of the specific operating system
+(if any) on which the executable work runs, or a compiler used to
+produce the work, or an object code interpreter used to run it.
+
+ The "Corresponding Source" for a work in object code form means all
+the source code needed to generate, install, and (for an executable
+work) run the object code and to modify the work, including scripts to
+control those activities. However, it does not include the work's
+System Libraries, or general-purpose tools or generally available free
+programs which are used unmodified in performing those activities but
+which are not part of the work. For example, Corresponding Source
+includes interface definition files associated with source files for
+the work, and the source code for shared libraries and dynamically
+linked subprograms that the work is specifically designed to require,
+such as by intimate data communication or control flow between those
+subprograms and other parts of the work.
+
+ The Corresponding Source need not include anything that users
+can regenerate automatically from other parts of the Corresponding
+Source.
+
+ The Corresponding Source for a work in source code form is that
+same work.
+
+ 2. Basic Permissions.
+
+ All rights granted under this License are granted for the term of
+copyright on the Program, and are irrevocable provided the stated
+conditions are met. This License explicitly affirms your unlimited
+permission to run the unmodified Program. The output from running a
+covered work is covered by this License only if the output, given its
+content, constitutes a covered work. This License acknowledges your
+rights of fair use or other equivalent, as provided by copyright law.
+
+ You may make, run and propagate covered works that you do not
+convey, without conditions so long as your license otherwise remains
+in force. You may convey covered works to others for the sole purpose
+of having them make modifications exclusively for you, or provide you
+with facilities for running those works, provided that you comply with
+the terms of this License in conveying all material for which you do
+not control copyright. Those thus making or running the covered works
+for you must do so exclusively on your behalf, under your direction
+and control, on terms that prohibit them from making any copies of
+your copyrighted material outside their relationship with you.
+
+ Conveying under any other circumstances is permitted solely under
+the conditions stated below. Sublicensing is not allowed; section 10
+makes it unnecessary.
+
+ 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
+
+ No covered work shall be deemed part of an effective technological
+measure under any applicable law fulfilling obligations under article
+11 of the WIPO copyright treaty adopted on 20 December 1996, or
+similar laws prohibiting or restricting circumvention of such
+measures.
+
+ When you convey a covered work, you waive any legal power to forbid
+circumvention of technological measures to the extent such circumvention
+is effected by exercising rights under this License with respect to
+the covered work, and you disclaim any intention to limit operation or
+modification of the work as a means of enforcing, against the work's
+users, your or third parties' legal rights to forbid circumvention of
+technological measures.
+
+ 4. Conveying Verbatim Copies.
+
+ You may convey verbatim copies of the Program's source code as you
+receive it, in any medium, provided that you conspicuously and
+appropriately publish on each copy an appropriate copyright notice;
+keep intact all notices stating that this License and any
+non-permissive terms added in accord with section 7 apply to the code;
+keep intact all notices of the absence of any warranty; and give all
+recipients a copy of this License along with the Program.
+
+ You may charge any price or no price for each copy that you convey,
+and you may offer support or warranty protection for a fee.
+
+ 5. Conveying Modified Source Versions.
+
+ You may convey a work based on the Program, or the modifications to
+produce it from the Program, in the form of source code under the
+terms of section 4, provided that you also meet all of these conditions:
+
+ a) The work must carry prominent notices stating that you modified
+ it, and giving a relevant date.
+
+ b) The work must carry prominent notices stating that it is
+ released under this License and any conditions added under section
+ 7. This requirement modifies the requirement in section 4 to
+ "keep intact all notices".
+
+ c) You must license the entire work, as a whole, under this
+ License to anyone who comes into possession of a copy. This
+ License will therefore apply, along with any applicable section 7
+ additional terms, to the whole of the work, and all its parts,
+ regardless of how they are packaged. This License gives no
+ permission to license the work in any other way, but it does not
+ invalidate such permission if you have separately received it.
+
+ d) If the work has interactive user interfaces, each must display
+ Appropriate Legal Notices; however, if the Program has interactive
+ interfaces that do not display Appropriate Legal Notices, your
+ work need not make them do so.
+
+ A compilation of a covered work with other separate and independent
+works, which are not by their nature extensions of the covered work,
+and which are not combined with it such as to form a larger program,
+in or on a volume of a storage or distribution medium, is called an
+"aggregate" if the compilation and its resulting copyright are not
+used to limit the access or legal rights of the compilation's users
+beyond what the individual works permit. Inclusion of a covered work
+in an aggregate does not cause this License to apply to the other
+parts of the aggregate.
+
+ 6. Conveying Non-Source Forms.
+
+ You may convey a covered work in object code form under the terms
+of sections 4 and 5, provided that you also convey the
+machine-readable Corresponding Source under the terms of this License,
+in one of these ways:
+
+ a) Convey the object code in, or embodied in, a physical product
+ (including a physical distribution medium), accompanied by the
+ Corresponding Source fixed on a durable physical medium
+ customarily used for software interchange.
+
+ b) Convey the object code in, or embodied in, a physical product
+ (including a physical distribution medium), accompanied by a
+ written offer, valid for at least three years and valid for as
+ long as you offer spare parts or customer support for that product
+ model, to give anyone who possesses the object code either (1) a
+ copy of the Corresponding Source for all the software in the
+ product that is covered by this License, on a durable physical
+ medium customarily used for software interchange, for a price no
+ more than your reasonable cost of physically performing this
+ conveying of source, or (2) access to copy the
+ Corresponding Source from a network server at no charge.
+
+ c) Convey individual copies of the object code with a copy of the
+ written offer to provide the Corresponding Source. This
+ alternative is allowed only occasionally and noncommercially, and
+ only if you received the object code with such an offer, in accord
+ with subsection 6b.
+
+ d) Convey the object code by offering access from a designated
+ place (gratis or for a charge), and offer equivalent access to the
+ Corresponding Source in the same way through the same place at no
+ further charge. You need not require recipients to copy the
+ Corresponding Source along with the object code. If the place to
+ copy the object code is a network server, the Corresponding Source
+ may be on a different server (operated by you or a third party)
+ that supports equivalent copying facilities, provided you maintain
+ clear directions next to the object code saying where to find the
+ Corresponding Source. Regardless of what server hosts the
+ Corresponding Source, you remain obligated to ensure that it is
+ available for as long as needed to satisfy these requirements.
+
+ e) Convey the object code using peer-to-peer transmission, provided
+ you inform other peers where the object code and Corresponding
+ Source of the work are being offered to the general public at no
+ charge under subsection 6d.
+
+ A separable portion of the object code, whose source code is excluded
+from the Corresponding Source as a System Library, need not be
+included in conveying the object code work.
+
+ A "User Product" is either (1) a "consumer product", which means any
+tangible personal property which is normally used for personal, family,
+or household purposes, or (2) anything designed or sold for incorporation
+into a dwelling. In determining whether a product is a consumer product,
+doubtful cases shall be resolved in favor of coverage. For a particular
+product received by a particular user, "normally used" refers to a
+typical or common use of that class of product, regardless of the status
+of the particular user or of the way in which the particular user
+actually uses, or expects or is expected to use, the product. A product
+is a consumer product regardless of whether the product has substantial
+commercial, industrial or non-consumer uses, unless such uses represent
+the only significant mode of use of the product.
+
+ "Installation Information" for a User Product means any methods,
+procedures, authorization keys, or other information required to install
+and execute modified versions of a covered work in that User Product from
+a modified version of its Corresponding Source. The information must
+suffice to ensure that the continued functioning of the modified object
+code is in no case prevented or interfered with solely because
+modification has been made.
+
+ If you convey an object code work under this section in, or with, or
+specifically for use in, a User Product, and the conveying occurs as
+part of a transaction in which the right of possession and use of the
+User Product is transferred to the recipient in perpetuity or for a
+fixed term (regardless of how the transaction is characterized), the
+Corresponding Source conveyed under this section must be accompanied
+by the Installation Information. But this requirement does not apply
+if neither you nor any third party retains the ability to install
+modified object code on the User Product (for example, the work has
+been installed in ROM).
+
+ The requirement to provide Installation Information does not include a
+requirement to continue to provide support service, warranty, or updates
+for a work that has been modified or installed by the recipient, or for
+the User Product in which it has been modified or installed. Access to a
+network may be denied when the modification itself materially and
+adversely affects the operation of the network or violates the rules and
+protocols for communication across the network.
+
+ Corresponding Source conveyed, and Installation Information provided,
+in accord with this section must be in a format that is publicly
+documented (and with an implementation available to the public in
+source code form), and must require no special password or key for
+unpacking, reading or copying.
+
+ 7. Additional Terms.
+
+ "Additional permissions" are terms that supplement the terms of this
+License by making exceptions from one or more of its conditions.
+Additional permissions that are applicable to the entire Program shall
+be treated as though they were included in this License, to the extent
+that they are valid under applicable law. If additional permissions
+apply only to part of the Program, that part may be used separately
+under those permissions, but the entire Program remains governed by
+this License without regard to the additional permissions.
+
+ When you convey a copy of a covered work, you may at your option
+remove any additional permissions from that copy, or from any part of
+it. (Additional permissions may be written to require their own
+removal in certain cases when you modify the work.) You may place
+additional permissions on material, added by you to a covered work,
+for which you have or can give appropriate copyright permission.
+
+ Notwithstanding any other provision of this License, for material you
+add to a covered work, you may (if authorized by the copyright holders of
+that material) supplement the terms of this License with terms:
+
+ a) Disclaiming warranty or limiting liability differently from the
+ terms of sections 15 and 16 of this License; or
+
+ b) Requiring preservation of specified reasonable legal notices or
+ author attributions in that material or in the Appropriate Legal
+ Notices displayed by works containing it; or
+
+ c) Prohibiting misrepresentation of the origin of that material, or
+ requiring that modified versions of such material be marked in
+ reasonable ways as different from the original version; or
+
+ d) Limiting the use for publicity purposes of names of licensors or
+ authors of the material; or
+
+ e) Declining to grant rights under trademark law for use of some
+ trade names, trademarks, or service marks; or
+
+ f) Requiring indemnification of licensors and authors of that
+ material by anyone who conveys the material (or modified versions of
+ it) with contractual assumptions of liability to the recipient, for
+ any liability that these contractual assumptions directly impose on
+ those licensors and authors.
+
+ All other non-permissive additional terms are considered "further
+restrictions" within the meaning of section 10. If the Program as you
+received it, or any part of it, contains a notice stating that it is
+governed by this License along with a term that is a further
+restriction, you may remove that term. If a license document contains
+a further restriction but permits relicensing or conveying under this
+License, you may add to a covered work material governed by the terms
+of that license document, provided that the further restriction does
+not survive such relicensing or conveying.
+
+ If you add terms to a covered work in accord with this section, you
+must place, in the relevant source files, a statement of the
+additional terms that apply to those files, or a notice indicating
+where to find the applicable terms.
+
+ Additional terms, permissive or non-permissive, may be stated in the
+form of a separately written license, or stated as exceptions;
+the above requirements apply either way.
+
+ 8. Termination.
+
+ You may not propagate or modify a covered work except as expressly
+provided under this License. Any attempt otherwise to propagate or
+modify it is void, and will automatically terminate your rights under
+this License (including any patent licenses granted under the third
+paragraph of section 11).
+
+ However, if you cease all violation of this License, then your
+license from a particular copyright holder is reinstated (a)
+provisionally, unless and until the copyright holder explicitly and
+finally terminates your license, and (b) permanently, if the copyright
+holder fails to notify you of the violation by some reasonable means
+prior to 60 days after the cessation.
+
+ Moreover, your license from a particular copyright holder is
+reinstated permanently if the copyright holder notifies you of the
+violation by some reasonable means, this is the first time you have
+received notice of violation of this License (for any work) from that
+copyright holder, and you cure the violation prior to 30 days after
+your receipt of the notice.
+
+ Termination of your rights under this section does not terminate the
+licenses of parties who have received copies or rights from you under
+this License. If your rights have been terminated and not permanently
+reinstated, you do not qualify to receive new licenses for the same
+material under section 10.
+
+ 9. Acceptance Not Required for Having Copies.
+
+ You are not required to accept this License in order to receive or
+run a copy of the Program. Ancillary propagation of a covered work
+occurring solely as a consequence of using peer-to-peer transmission
+to receive a copy likewise does not require acceptance. However,
+nothing other than this License grants you permission to propagate or
+modify any covered work. These actions infringe copyright if you do
+not accept this License. Therefore, by modifying or propagating a
+covered work, you indicate your acceptance of this License to do so.
+
+ 10. Automatic Licensing of Downstream Recipients.
+
+ Each time you convey a covered work, the recipient automatically
+receives a license from the original licensors, to run, modify and
+propagate that work, subject to this License. You are not responsible
+for enforcing compliance by third parties with this License.
+
+ An "entity transaction" is a transaction transferring control of an
+organization, or substantially all assets of one, or subdividing an
+organization, or merging organizations. If propagation of a covered
+work results from an entity transaction, each party to that
+transaction who receives a copy of the work also receives whatever
+licenses to the work the party's predecessor in interest had or could
+give under the previous paragraph, plus a right to possession of the
+Corresponding Source of the work from the predecessor in interest, if
+the predecessor has it or can get it with reasonable efforts.
+
+ You may not impose any further restrictions on the exercise of the
+rights granted or affirmed under this License. For example, you may
+not impose a license fee, royalty, or other charge for exercise of
+rights granted under this License, and you may not initiate litigation
+(including a cross-claim or counterclaim in a lawsuit) alleging that
+any patent claim is infringed by making, using, selling, offering for
+sale, or importing the Program or any portion of it.
+
+ 11. Patents.
+
+ A "contributor" is a copyright holder who authorizes use under this
+License of the Program or a work on which the Program is based. The
+work thus licensed is called the contributor's "contributor version".
+
+ A contributor's "essential patent claims" are all patent claims
+owned or controlled by the contributor, whether already acquired or
+hereafter acquired, that would be infringed by some manner, permitted
+by this License, of making, using, or selling its contributor version,
+but do not include claims that would be infringed only as a
+consequence of further modification of the contributor version. For
+purposes of this definition, "control" includes the right to grant
+patent sublicenses in a manner consistent with the requirements of
+this License.
+
+ Each contributor grants you a non-exclusive, worldwide, royalty-free
+patent license under the contributor's essential patent claims, to
+make, use, sell, offer for sale, import and otherwise run, modify and
+propagate the contents of its contributor version.
+
+ In the following three paragraphs, a "patent license" is any express
+agreement or commitment, however denominated, not to enforce a patent
+(such as an express permission to practice a patent or covenant not to
+sue for patent infringement). To "grant" such a patent license to a
+party means to make such an agreement or commitment not to enforce a
+patent against the party.
+
+ If you convey a covered work, knowingly relying on a patent license,
+and the Corresponding Source of the work is not available for anyone
+to copy, free of charge and under the terms of this License, through a
+publicly available network server or other readily accessible means,
+then you must either (1) cause the Corresponding Source to be so
+available, or (2) arrange to deprive yourself of the benefit of the
+patent license for this particular work, or (3) arrange, in a manner
+consistent with the requirements of this License, to extend the patent
+license to downstream recipients. "Knowingly relying" means you have
+actual knowledge that, but for the patent license, your conveying the
+covered work in a country, or your recipient's use of the covered work
+in a country, would infringe one or more identifiable patents in that
+country that you have reason to believe are valid.
+
+ If, pursuant to or in connection with a single transaction or
+arrangement, you convey, or propagate by procuring conveyance of, a
+covered work, and grant a patent license to some of the parties
+receiving the covered work authorizing them to use, propagate, modify
+or convey a specific copy of the covered work, then the patent license
+you grant is automatically extended to all recipients of the covered
+work and works based on it.
+
+ A patent license is "discriminatory" if it does not include within
+the scope of its coverage, prohibits the exercise of, or is
+conditioned on the non-exercise of one or more of the rights that are
+specifically granted under this License. You may not convey a covered
+work if you are a party to an arrangement with a third party that is
+in the business of distributing software, under which you make payment
+to the third party based on the extent of your activity of conveying
+the work, and under which the third party grants, to any of the
+parties who would receive the covered work from you, a discriminatory
+patent license (a) in connection with copies of the covered work
+conveyed by you (or copies made from those copies), or (b) primarily
+for and in connection with specific products or compilations that
+contain the covered work, unless you entered into that arrangement,
+or that patent license was granted, prior to 28 March 2007.
+
+ Nothing in this License shall be construed as excluding or limiting
+any implied license or other defenses to infringement that may
+otherwise be available to you under applicable patent law.
+
+ 12. No Surrender of Others' Freedom.
+
+ If conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot convey a
+covered work so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you may
+not convey it at all. For example, if you agree to terms that obligate you
+to collect a royalty for further conveying from those to whom you convey
+the Program, the only way you could satisfy both those terms and this
+License would be to refrain entirely from conveying the Program.
+
+ 13. Remote Network Interaction; Use with the GNU General Public License.
+
+ Notwithstanding any other provision of this License, if you modify the
+Program, your modified version must prominently offer all users
+interacting with it remotely through a computer network (if your version
+supports such interaction) an opportunity to receive the Corresponding
+Source of your version by providing access to the Corresponding Source
+from a network server at no charge, through some standard or customary
+means of facilitating copying of software. This Corresponding Source
+shall include the Corresponding Source for any work covered by version 3
+of the GNU General Public License that is incorporated pursuant to the
+following paragraph.
+
+ Notwithstanding any other provision of this License, you have
+permission to link or combine any covered work with a work licensed
+under version 3 of the GNU General Public License into a single
+combined work, and to convey the resulting work. The terms of this
+License will continue to apply to the part which is the covered work,
+but the work with which it is combined will remain governed by version
+3 of the GNU General Public License.
+
+ 14. Revised Versions of this License.
+
+ The Free Software Foundation may publish revised and/or new versions of
+the GNU Affero General Public License from time to time. Such new versions
+will be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+ Each version is given a distinguishing version number. If the
+Program specifies that a certain numbered version of the GNU Affero General
+Public License "or any later version" applies to it, you have the
+option of following the terms and conditions either of that numbered
+version or of any later version published by the Free Software
+Foundation. If the Program does not specify a version number of the
+GNU Affero General Public License, you may choose any version ever published
+by the Free Software Foundation.
+
+ If the Program specifies that a proxy can decide which future
+versions of the GNU Affero General Public License can be used, that proxy's
+public statement of acceptance of a version permanently authorizes you
+to choose that version for the Program.
+
+ Later license versions may give you additional or different
+permissions. However, no additional obligations are imposed on any
+author or copyright holder as a result of your choosing to follow a
+later version.
+
+ 15. Disclaimer of Warranty.
+
+ THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
+APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
+HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
+OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
+THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
+IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
+ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+ 16. Limitation of Liability.
+
+ IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
+THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
+GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
+USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
+DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
+PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
+EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
+SUCH DAMAGES.
+
+ 17. Interpretation of Sections 15 and 16.
+
+ If the disclaimer of warranty and limitation of liability provided
+above cannot be given local legal effect according to their terms,
+reviewing courts shall apply local law that most closely approximates
+an absolute waiver of all civil liability in connection with the
+Program, unless a warranty or assumption of liability accompanies a
+copy of the Program in return for a fee.
+
+ END OF TERMS AND CONDITIONS
+
+ 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 Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see .
+
+Also add information on how to contact you by electronic and paper mail.
+
+ If your software can interact with users remotely through a computer
+network, you should also make sure that it provides a way for users to
+get its source. For example, if your program is a web application, its
+interface could display a "Source" link that leads users to an archive
+of the code. There are many ways you could offer source, and different
+solutions will be better for different programs; see section 13 for the
+specific requirements.
+
+ 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 AGPL, see
+.
diff --git a/README.md b/README.md
index 5b1f6a7c334..61131103503 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,5 @@
+# **Licensing has recently changed from GPLv3 to AGPLv3. See [#6689](https://github.com/tgstation/-tg-station/pull/6689) for more info.**
+
##/tg/station v1.0.1
[](https://travis-ci.org/tgstation/-tg-station)
@@ -123,7 +125,7 @@ Please see [CONTRIBUTING.md](CONTRIBUTING.md)
##LICENSE
-All code is under a GNU GPL v3 license (http://www.gnu.org/licenses/gpl.html),
-including tools unless their readme specifies otherwise.
+All code is under a GNU AGPL v3 license (http://www.gnu.org/licenses/agpl-3.0.html),
+including tools unless their readme specifies otherwise. See LICENSE.txt for more details.
All content including icons and sound is under a Creative Commons 3.0 BY-SA
license (http://creativecommons.org/licenses/by-sa/3.0/).
diff --git a/_maps/AsteroidStation.dm b/_maps/AsteroidStation.dm
index 03cc313b54a..e742421ed6a 100644
--- a/_maps/AsteroidStation.dm
+++ b/_maps/AsteroidStation.dm
@@ -18,7 +18,7 @@ Then tick this file, the maps and all additional files will be automatically def
#include "map_files\Asteroidstation\z7.dmm"
#define MAP_FILE "Asteroidstation.dmm"
- #define MAP_NAME "AsteroidStationv8"
+ #define MAP_NAME "AsteroidStation"
#if !defined(MAP_OVERRIDE_FILES)
#define MAP_OVERRIDE_FILES
diff --git a/_maps/map_files/Asteroidstation/Asteroidstation.dmm b/_maps/map_files/Asteroidstation/Asteroidstation.dmm
index 96338fdbc7d..28b40313596 100644
--- a/_maps/map_files/Asteroidstation/Asteroidstation.dmm
+++ b/_maps/map_files/Asteroidstation/Asteroidstation.dmm
@@ -27,7 +27,7 @@
"aaA" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'NO MIMES ALLOWED'"; name = "NO MIMES ALLOWED"; pixel_y = 32},/turf/simulated/floor/plating/asteroid/airless,/area/mine/unexplored)
"aaB" = (/turf/space,/area/syndicate_station/northeast)
"aaC" = (/turf/simulated/wall,/area/solar/aft{name = "Secret Mime Hideout"})
-"aaD" = (/turf/simulated/mineral/random,/area/space)
+"aaD" = (/obj/structure/table,/obj/machinery/microwave,/turf/simulated/floor/plasteel{dir = 9; icon_state = "brown"},/area/quartermaster/miningdock)
"aaE" = (/obj/structure/closet,/turf/simulated/floor/plasteel,/area/solar/aft{name = "Secret Mime Hideout"})
"aaF" = (/obj/structure/rack,/obj/effect/landmark/costume,/turf/simulated/floor/plasteel,/area/solar/aft{name = "Secret Mime Hideout"})
"aaG" = (/turf/simulated/floor/plasteel,/area/solar/aft{name = "Secret Mime Hideout"})
@@ -238,7 +238,7 @@
"aeD" = (/obj/item/weapon/pickaxe,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/eva)
"aeE" = (/obj/structure/table,/obj/item/clothing/gloves/boxing{pixel_x = 5; pixel_y = -3},/obj/item/clothing/gloves/boxing/blue,/obj/item/clothing/gloves/boxing/green{pixel_x = -2; pixel_y = 4},/obj/item/clothing/gloves/boxing/yellow,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/maintenance/asteroidstation/eva)
"aeF" = (/turf/simulated/floor/plasteel{icon_state = "dark"},/area/maintenance/asteroidstation/eva)
-"aeG" = (/obj/structure/cable/orange{tag = "icon-0-2"; icon_state = "0-2"; d1 = 1; d2 = 2},/obj/machinery/power/smes,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/eva)
+"aeG" = (/obj/structure/cable/orange{tag = "icon-0-2"; icon_state = "0-2"; d1 = 1; d2 = 2},/obj/machinery/power/smes{input_attempt = 1},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/eva)
"aeH" = (/obj/machinery/power/terminal{dir = 8},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/eva)
"aeI" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/wall,/area/maintenance/asteroidstation/eva)
"aeJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/eva)
@@ -334,8 +334,8 @@
"agv" = (/obj/machinery/gateway/centerstation,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/gateway)
"agw" = (/obj/machinery/gateway{dir = 4},/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 8},/area/gateway)
"agx" = (/obj/machinery/conveyor{dir = 1; id = "Recycler"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/asteroidstation/recycler)
-"agy" = (/obj/machinery/conveyor_switch{id = "Recycler"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 9},/area/maintenance/asteroidstation/recycler)
-"agz" = (/obj/machinery/conveyor_switch{id = "Recycler3"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 5},/area/maintenance/asteroidstation/recycler)
+"agy" = (/obj/machinery/conveyor_switch{id = "Recycler"},/obj/structure/window/reinforced{dir = 8; icon_state = "rwindow"; tag = "icon-rwindow (EAST)"},/obj/structure/window/reinforced{tag = "icon-rwindow (NORTH)"; icon_state = "rwindow"; dir = 1},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 9},/area/maintenance/asteroidstation/recycler)
+"agz" = (/obj/machinery/conveyor_switch{id = "Recycler3"},/obj/structure/window/reinforced{tag = "icon-rwindow (NORTH)"; icon_state = "rwindow"; dir = 1},/obj/structure/window/reinforced{tag = "icon-rwindow (EAST)"; icon_state = "rwindow"; dir = 4},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 5},/area/maintenance/asteroidstation/recycler)
"agA" = (/obj/machinery/conveyor{dir = 6; icon_state = "conveyor0"; id = "Recycler3"; tag = "icon-conveyor0 (SOUTHEAST)"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/maintenance/asteroidstation/recycler)
"agB" = (/obj/machinery/conveyor{dir = 9; icon_state = "conveyor0"; id = "Recycler3"; tag = "icon-conveyor0 (NORTHWEST)"; verted = -1},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/recycler)
"agC" = (/turf/simulated/wall,/area/maintenance/asteroidstation/recycler)
@@ -365,7 +365,7 @@
"aha" = (/obj/machinery/gateway{dir = 6},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 1},/area/gateway)
"ahb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/gateway)
"ahc" = (/obj/machinery/conveyor{dir = 1; id = "Recycler"},/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/asteroidstation/recycler)
-"ahd" = (/obj/structure/cable/orange{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/maintenance/asteroidstation/recycler)
+"ahd" = (/obj/structure/cable/orange{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/window/reinforced{dir = 8; icon_state = "rwindow"; tag = "icon-rwindow (EAST)"},/obj/structure/stool,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/maintenance/asteroidstation/recycler)
"ahe" = (/obj/machinery/power/apc{dir = 4; name = "Recycler APC"; pixel_x = 24},/obj/structure/cable/orange{d2 = 8; icon_state = "0-8"},/obj/machinery/camera{c_tag = "Recycler"; dir = 8},/turf/simulated/floor/plating{tag = "icon-warnplatecorner (WEST)"; icon_state = "warnplatecorner"; dir = 8},/area/maintenance/asteroidstation/recycler)
"ahf" = (/obj/machinery/conveyor{dir = 1; id = "Recycler3"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/recycler)
"ahg" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating/asteroid/airless{tag = "icon-asteroidplating"; icon_state = "asteroidplating"},/area/mine/explored)
@@ -394,8 +394,8 @@
"ahD" = (/obj/machinery/door/window{name = "Gateway Chamber"; req_access_txt = "62"},/obj/structure/cable/orange{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/gateway)
"ahE" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/gateway)
"ahF" = (/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/structure/window/reinforced,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/gateway)
-"ahG" = (/obj/structure/cable/orange{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/maintenance/asteroidstation/recycler)
-"ahH" = (/obj/machinery/conveyor_switch{id = "Recycler2"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/recycler)
+"ahG" = (/obj/structure/cable/orange{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/window/reinforced{dir = 8; icon_state = "rwindow"; tag = "icon-rwindow (EAST)"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/maintenance/asteroidstation/recycler)
+"ahH" = (/obj/machinery/conveyor_switch{id = "Recycler2"},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/recycler)
"ahI" = (/obj/machinery/mineral/stacking_unit_console{dir = 2; machinedir = 4},/turf/simulated/wall,/area/maintenance/asteroidstation/recycler)
"ahJ" = (/obj/machinery/mineral/stacking_machine{input_dir = 4; output_dir = 8},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/recycler)
"ahK" = (/turf/space,/area/supply/station)
@@ -595,7 +595,7 @@
"alw" = (/obj/machinery/door/airlock/external{name = "Supply Dock Airlock"; req_access_txt = "31"},/turf/simulated/floor/plating,/area/quartermaster/office)
"alx" = (/obj/machinery/conveyor{dir = 2; id = "QMLoad"},/obj/machinery/door/poddoor{id = "QMLoaddoor"; name = "Supply Dock Loading Door"},/turf/simulated/floor/plating,/area/quartermaster/office)
"aly" = (/turf/simulated/floor/plating/airless,/area/space)
-"alz" = (/obj/item/clothing/gloves/rainbow,/obj/item/clothing/head/soft/rainbow,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/telecomm)
+"alz" = (/obj/structure/cable/orange{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/window/northright{dir = 8; name = "Disposal Exit"; req_access_txt = "12"},/obj/machinery/door/window/northright{dir = 4; name = "Disposal Exit"; req_access_txt = "12"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/maintenance/asteroidstation/recycler)
"alA" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/asteroidstation/telecomm)
"alB" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/tcommsat/server)
"alC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/tcommsat/server)
@@ -612,7 +612,7 @@
"alN" = (/obj/structure/table,/obj/item/weapon/module/power_control,/obj/item/weapon/airlock_electronics,/turf/simulated/floor/plasteel{icon_state = "yellow"},/area/storage/tech)
"alO" = (/obj/structure/rack,/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/obj/item/device/multitool,/obj/item/clothing/glasses/meson,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29; tag = "south"},/turf/simulated/floor/plasteel{icon_state = "yellow"},/area/storage/tech)
"alP" = (/obj/machinery/vending/assist,/obj/machinery/camera{c_tag = "Tech Storage"; dir = 1},/turf/simulated/floor/plasteel{icon_state = "yellow"},/area/storage/tech)
-"alQ" = (/obj/structure/rack,/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/obj/item/clothing/gloves/yellow,/obj/item/device/multitool,/turf/simulated/floor/plasteel{icon_state = "yellow"},/area/storage/tech)
+"alQ" = (/obj/structure/cable/orange{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/window/reinforced{dir = 8; icon_state = "rwindow"; tag = "icon-rwindow (EAST)"},/obj/structure/window/reinforced{tag = "icon-rwindow (EAST)"; icon_state = "rwindow"; dir = 4},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/maintenance/asteroidstation/recycler)
"alR" = (/obj/structure/table,/obj/item/device/analyzer/plant_analyzer,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/machinery/light_switch{dir = 2; name = "light switch"; pixel_x = 0; pixel_y = -22},/turf/simulated/floor/plasteel{icon_state = "yellow"},/area/storage/tech)
"alS" = (/obj/structure/table,/obj/item/device/analyzer,/obj/item/device/healthanalyzer,/obj/machinery/requests_console{department = "Tech storage"; name = "Tech Storage Requests Console"; pixel_x = 0; pixel_y = -32},/turf/simulated/floor/plasteel{icon_state = "yellow"},/area/storage/tech)
"alT" = (/obj/structure/table,/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/item/device/flash/handheld,/obj/item/device/flash/handheld,/turf/simulated/floor/plasteel{dir = 6; icon_state = "yellow"},/area/storage/tech)
@@ -736,10 +736,10 @@
"aoh" = (/obj/machinery/suit_storage_unit/mining,/turf/simulated/floor/plasteel{dir = 1; icon_state = "brown"},/area/quartermaster/miningdock)
"aoi" = (/obj/machinery/suit_storage_unit/mining,/obj/structure/extinguisher_cabinet{pixel_y = 30; tag = "(north)"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "brown"},/area/quartermaster/miningdock)
"aoj" = (/obj/structure/table,/obj/item/device/mining_scanner,/obj/item/device/mining_scanner,/turf/simulated/floor/plasteel{dir = 5; icon_state = "brown"},/area/quartermaster/miningdock)
-"aok" = (/obj/structure/table,/obj/item/clothing/glasses/meson,/obj/item/clothing/glasses/meson,/turf/simulated/floor/plasteel{dir = 9; icon_state = "brown"},/area/quartermaster/miningdock)
-"aol" = (/obj/structure/table,/obj/machinery/microwave,/turf/simulated/floor/plasteel{dir = 1; icon_state = "brown"},/area/quartermaster/miningdock)
+"aok" = (/obj/machinery/mineral/input,/turf/simulated/floor/plasteel{dir = 1; icon_state = "brown"},/area/quartermaster/miningdock)
+"aol" = (/obj/machinery/mineral/output,/turf/simulated/floor/plasteel{dir = 1; icon_state = "brown"},/area/quartermaster/miningdock)
"aom" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets,/obj/machinery/requests_console{department = "Mining"; departmentType = 0; name = "Mining Requests Console"; pixel_x = 0; pixel_y = 30},/turf/simulated/floor/plasteel{dir = 1; icon_state = "brown"},/area/quartermaster/miningdock)
-"aon" = (/obj/structure/table,/obj/item/device/gps/mining,/obj/item/device/gps/mining,/obj/item/device/gps/mining,/obj/item/device/gps/mining,/obj/item/device/gps/mining,/obj/item/device/gps/mining,/turf/simulated/floor/plasteel{dir = 1; icon_state = "brown"},/area/quartermaster/miningdock)
+"aon" = (/obj/structure/ore_box,/turf/simulated/floor/plating/asteroid/airless{tag = "icon-asteroidfloor"; icon_state = "asteroidfloor"},/area/mine/explored)
"aoo" = (/obj/structure/closet/crate,/obj/item/clothing/suit/fire/firefighter,/obj/item/weapon/extinguisher,/obj/item/clothing/glasses/meson,/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/eva)
"aop" = (/obj/structure/table/reinforced,/obj/item/stack/sheet/rglass{amount = 50},/obj/item/stack/rods{amount = 50},/obj/machinery/door_control{id = "evashutter"; name = "E.V.A. Storage Shutter Control"; pixel_x = -26; pixel_y = 0; req_access_txt = "19"},/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/storage/eva)
"aoq" = (/obj/structure/table/reinforced,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/structure/cable/orange{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/storage/eva)
@@ -844,7 +844,7 @@
"aql" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/disposal)
"aqm" = (/obj/structure/table,/obj/item/weapon/storage/bag/ore{pixel_y = 3},/obj/item/weapon/storage/bag/ore{pixel_x = -3},/obj/machinery/status_display{pixel_x = -32; pixel_y = 0; tag = "west"},/obj/machinery/camera{c_tag = "Mining Equipment Room"; dir = 4},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/plasteel{dir = 8; icon_state = "brown"},/area/quartermaster/miningdock)
"aqn" = (/obj/effect/landmark/start{name = "Shaft Miner"},/turf/simulated/floor/plasteel,/area/quartermaster/miningdock)
-"aqo" = (/obj/machinery/door/airlock/glass_mining{desc = "Storage of the Company's specialized mining gear."; name = "Mining Equipment Room"; req_access_txt = "54"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "brown"},/area/quartermaster/miningdock)
+"aqo" = (/obj/machinery/door/airlock/glass_mining{desc = "Storage of the Company's specialized mining gear."; name = "Mining Equipment Room"; req_access_txt = "54"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{dir = 4; icon_state = "brown"},/area/quartermaster/miningdock)
"aqp" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "brown"},/area/quartermaster/miningdock)
"aqq" = (/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/plasteel,/area/quartermaster/miningdock)
"aqr" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel,/area/quartermaster/miningdock)
@@ -960,12 +960,12 @@
"asx" = (/obj/structure/table,/obj/item/weapon/phone,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/turret_protected/ai_upload_foyer)
"asy" = (/turf/simulated/floor/plating,/area/maintenance/disposal)
"asz" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/plating,/area/maintenance/disposal)
-"asA" = (/obj/machinery/driver_button{id = "trash"; pixel_x = 6; pixel_y = 24},/obj/machinery/door_control{id = "Disposal Exit"; name = "Disposal Door Control"; pixel_x = -6; pixel_y = 24; req_access_txt = "12"},/obj/structure/stool,/obj/structure/window/reinforced{tag = "icon-rwindow (EAST)"; icon_state = "rwindow"; dir = 4},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/disposal)
+"asA" = (/obj/item/clothing/gloves/color/rainbow,/obj/item/clothing/head/soft/rainbow,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/telecomm)
"asB" = (/obj/machinery/mass_driver{dir = 4; id = "trash"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/maintenance/disposal)
"asC" = (/obj/machinery/door/poddoor{id = "trash"; name = "Disposal External Door"},/turf/simulated/floor/plating,/area/maintenance/disposal)
"asD" = (/obj/structure/closet/secure_closet/miner,/turf/simulated/floor/plasteel{dir = 8; icon_state = "brown"},/area/quartermaster/miningdock)
"asE" = (/obj/structure/closet/secure_closet/miner,/turf/simulated/floor/plasteel,/area/quartermaster/miningdock)
-"asF" = (/obj/structure/closet/secure_closet/miner,/obj/machinery/light_switch{dir = 2; name = "light switch"; pixel_x = 0; pixel_y = -22},/turf/simulated/floor/plasteel,/area/quartermaster/miningdock)
+"asF" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/plating/asteroid/airless{tag = "icon-asteroidfloor"; icon_state = "asteroidfloor"},/area/quartermaster/miningdock)
"asG" = (/obj/structure/rack,/obj/item/weapon/pickaxe{desc = "The pickaxe looks blunt."; force = 5; name = "pickaxe"; pixel_x = -3},/obj/item/weapon/pickaxe{desc = "The pickaxe looks blunt."; force = 5; name = "pickaxe"; pixel_x = 3},/turf/simulated/floor/plasteel,/area/quartermaster/miningdock)
"asH" = (/obj/structure/rack,/obj/item/weapon/shovel{pixel_x = 3},/obj/item/weapon/shovel{pixel_x = -3},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/plasteel,/area/quartermaster/miningdock)
"asI" = (/obj/machinery/mineral/equipment_vendor,/turf/simulated/floor/plasteel{dir = 8; icon_state = "brown"},/area/quartermaster/miningdock)
@@ -1034,7 +1034,7 @@
"atT" = (/obj/machinery/camera{c_tag = "AI Maintenance Control"; dir = 8},/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/turret_protected/ai_upload_foyer)
"atU" = (/obj/structure/cable/blue{tag = "icon-0-2"; icon_state = "0-2"},/obj/machinery/power/apc{dir = 8; name = "Disposal APC"; pixel_x = -24; pixel_y = 0},/turf/simulated/floor/plating,/area/maintenance/disposal)
"atV" = (/obj/machinery/conveyor_switch{id = "Disposal"},/obj/structure/window/reinforced{tag = "icon-rwindow (EAST)"; icon_state = "rwindow"; dir = 4},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/disposal)
-"atW" = (/obj/machinery/conveyor{dir = 1; id = "Disposal"; level = 2.5},/obj/machinery/door/poddoor/preopen{id = "Disposal Exit"; layer = 3; name = "Disposal Internal Door"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/maintenance/disposal)
+"atW" = (/obj/structure/rack,/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/obj/item/clothing/gloves/color/yellow,/obj/item/device/multitool,/turf/simulated/floor/plasteel{icon_state = "yellow"},/area/storage/tech)
"atX" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/door/firedoor/border_only{dir = 1},/turf/simulated/floor/plating,/area/quartermaster/miningdock)
"atY" = (/obj/machinery/door/airlock/glass_mining{desc = "Storage of the Company's specialized mining gear."; name = "Mining Equipment Room"; req_access_txt = "54"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "brown"},/area/quartermaster/miningdock)
"atZ" = (/obj/machinery/mineral/equipment_vendor,/obj/machinery/status_display{pixel_x = -32; pixel_y = 0; tag = "west"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "brown"},/area/quartermaster/miningdock)
@@ -1098,11 +1098,11 @@
"avf" = (/obj/machinery/recharge_station,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/turret_protected/ai_upload_foyer)
"avg" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating{tag = "icon-warnplatecorner"; icon_state = "warnplatecorner"; dir = 2},/area/maintenance/disposal)
"avh" = (/obj/structure/window/reinforced,/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/maintenance/disposal)
-"avi" = (/obj/structure/window/reinforced,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 6},/area/maintenance/disposal)
+"avi" = (/obj/machinery/driver_button{id = "trash"; pixel_x = 6; pixel_y = 24},/obj/structure/stool,/obj/structure/window/reinforced{tag = "icon-rwindow (EAST)"; icon_state = "rwindow"; dir = 4},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/disposal)
"avj" = (/obj/machinery/conveyor{dir = 1; id = "Disposal"},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 32; pixel_y = 0},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/maintenance/disposal)
"avk" = (/turf/simulated/floor/plating/asteroid/airless{tag = "icon-asteroidplating"; icon_state = "asteroidplating"},/area/mine/explored)
"avl" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/quartermaster/miningdock)
-"avm" = (/obj/machinery/light_switch{dir = 1; pixel_y = 22},/turf/simulated/floor/plasteel{dir = 9; icon_state = "brown"},/area/quartermaster/miningdock)
+"avm" = (/obj/structure/table,/obj/item/device/gps/mining,/obj/item/device/gps/mining,/obj/item/device/gps/mining,/obj/item/device/gps/mining,/obj/item/clothing/glasses/meson,/obj/item/clothing/glasses/meson,/turf/simulated/floor/plasteel{dir = 9; icon_state = "brown"},/area/quartermaster/miningdock)
"avn" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/emergency,/turf/simulated/floor/plasteel{dir = 5; icon_state = "brown"},/area/quartermaster/miningdock)
"avo" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 8},/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/quartermaster/miningdock)
"avp" = (/obj/structure/dispenser/oxygen,/turf/simulated/floor/plasteel{dir = 1; icon_state = "brown"},/area/quartermaster/miningdock)
@@ -1120,7 +1120,7 @@
"avB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel,/area/storage/primary{name = "Tool Storage"})
"avC" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/simulated/floor/plasteel,/area/storage/primary{name = "Tool Storage"})
"avD" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/storage/primary{name = "Tool Storage"})
-"avE" = (/obj/structure/stool{pixel_y = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/storage/primary{name = "Tool Storage"})
+"avE" = (/obj/structure/stool/bed/chair{dir = 4},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/plasteel,/area/quartermaster/office)
"avF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/floor/plasteel,/area/storage/primary{name = "Tool Storage"})
"avG" = (/turf/simulated/floor/plasteel,/area/storage/primary{name = "Tool Storage"})
"avH" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 8},/area/hallway/secondary/construction{name = "Fore Central Hallway"})
@@ -1213,8 +1213,8 @@
"axq" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 22},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel,/area/quartermaster/miningdock)
"axr" = (/obj/machinery/camera{c_tag = "Port Central Hallway Port"; dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "brown"},/area/construction/hallway{name = "Port Central Hallway"})
"axs" = (/turf/simulated/floor/plating/asteroid,/area/mine/explored)
-"axt" = (/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel,/area/storage/primary{name = "Tool Storage"})
-"axu" = (/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/plasteel,/area/storage/primary{name = "Tool Storage"})
+"axt" = (/obj/structure/stool{pixel_y = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/plasteel,/area/storage/primary{name = "Tool Storage"})
+"axu" = (/obj/structure/disposalpipe/segment,/obj/structure/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/plasteel,/area/storage/primary{name = "Tool Storage"})
"axv" = (/obj/structure/table,/obj/item/weapon/weldingtool,/obj/item/weapon/crowbar,/obj/item/stack/packageWrap,/obj/item/stack/packageWrap,/obj/item/stack/packageWrap,/obj/item/stack/packageWrap,/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/storage/primary{name = "Tool Storage"})
"axw" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor/plasteel,/area/quartermaster/office)
"axx" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/simulated/floor/plasteel,/area/quartermaster/office)
@@ -1246,10 +1246,10 @@
"axX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/starboard{name = "Starboard Hallway"})
"axY" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall,/area/hallway/primary/starboard{name = "Starboard Hallway"})
"axZ" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
-"aya" = (/obj/machinery/power/smes,/obj/structure/cable/blue{tag = "icon-0-4"; icon_state = "0-4"; d1 = 1; d2 = 2},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
+"aya" = (/obj/machinery/power/smes{input_attempt = 1},/obj/structure/cable/blue{tag = "icon-0-4"; icon_state = "0-4"; d1 = 1; d2 = 2},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
"ayb" = (/obj/structure/cable/blue{tag = "icon-2-8"; icon_state = "2-8"; d1 = 1; d2 = 2},/obj/machinery/camera{c_tag = "Bridge Power Control"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
-"ayc" = (/obj/machinery/camera{c_tag = "Mining External"; dir = 8},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/plating/asteroid/airless{tag = "icon-asteroidplating"; icon_state = "asteroidplating"},/area/mine/explored)
-"ayd" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/plasteel{dir = 8; icon_state = "brown"},/area/quartermaster/miningdock)
+"ayc" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/obj/effect/landmark/start{name = "Shaft Miner"},/turf/simulated/floor/plasteel,/area/quartermaster/miningdock)
+"ayd" = (/obj/machinery/camera{c_tag = "Mining External"; dir = 8},/turf/simulated/floor/plating/asteroid/airless{tag = "icon-asteroidfloor"; icon_state = "asteroidfloor"},/area/mine/explored)
"aye" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/quartermaster/miningdock)
"ayf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/quartermaster/miningdock)
"ayg" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel,/area/quartermaster/miningdock)
@@ -1264,7 +1264,7 @@
"ayp" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/simulated/floor/plasteel,/area/storage/primary{name = "Tool Storage"})
"ayq" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plasteel,/area/storage/primary{name = "Tool Storage"})
"ayr" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/turf/simulated/floor/plasteel,/area/storage/primary{name = "Tool Storage"})
-"ays" = (/obj/structure/table,/obj/item/weapon/crowbar,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/clothing/gloves/fyellow,/obj/machinery/light,/obj/machinery/status_display{pixel_y = -32; tag = "south"},/turf/simulated/floor/plasteel,/area/storage/primary{name = "Tool Storage"})
+"ays" = (/obj/machinery/conveyor{dir = 1; id = "Disposal"; level = 2.5},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/maintenance/disposal)
"ayt" = (/obj/structure/table,/obj/item/weapon/storage/belt/utility,/turf/simulated/floor/plasteel,/area/storage/primary{name = "Tool Storage"})
"ayu" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel,/area/storage/primary{name = "Tool Storage"})
"ayv" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/storage/primary{name = "Tool Storage"})
@@ -1312,15 +1312,15 @@
"azl" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
"azm" = (/turf/simulated/wall/r_wall,/area/crew_quarters/captain)
"azn" = (/obj/structure/grille,/obj/structure/cable/blue{tag = "icon-0-2"; icon_state = "0-2"},/obj/machinery/door/poddoor/shutters/preopen{id = "capffice"; name = "captain's shutters"},/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/crew_quarters/captain)
-"azo" = (/obj/machinery/mineral/unloading_machine,/turf/simulated/floor/plating/asteroid/airless{tag = "icon-asteroidplating"; icon_state = "asteroidplating"},/area/quartermaster/miningdock)
+"azo" = (/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/disposal,/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/plasteel{dir = 1; icon_state = "browncorner"},/area/quartermaster/miningdock)
"azp" = (/obj/machinery/conveyor{dir = 4; id = "Mininginput"},/turf/simulated/floor/plating/asteroid/airless{tag = "icon-asteroidplating"; icon_state = "asteroidplating"},/area/quartermaster/miningdock)
"azq" = (/obj/machinery/conveyor{dir = 4; id = "Mininginput"},/obj/structure/plasticflaps/mining,/turf/simulated/floor/plating,/area/quartermaster/miningdock)
"azr" = (/obj/machinery/mineral/unloading_machine,/turf/simulated/floor/plating,/area/quartermaster/miningdock)
"azs" = (/obj/machinery/conveyor{dir = 4; id = "Mininginput"},/turf/simulated/floor/plating,/area/quartermaster/miningdock)
"azt" = (/obj/machinery/conveyor{tag = "icon-conveyor0 (NORTHWEST)"; icon_state = "conveyor0"; dir = 9; id = "Mininginput"},/turf/simulated/floor/plating,/area/quartermaster/miningdock)
-"azu" = (/obj/machinery/mineral/input,/turf/simulated/floor/plasteel{dir = 9; icon_state = "brown"},/area/quartermaster/miningdock)
+"azu" = (/turf/simulated/floor/plating/asteroid/airless{tag = "icon-asteroidfloor"; icon_state = "asteroidfloor"},/area/quartermaster/miningdock)
"azv" = (/obj/machinery/mineral/mint,/turf/simulated/floor/plasteel{dir = 1; icon_state = "brown"},/area/quartermaster/miningdock)
-"azw" = (/obj/machinery/mineral/output,/turf/simulated/floor/plasteel{dir = 1; icon_state = "browncorner"},/area/quartermaster/miningdock)
+"azw" = (/obj/machinery/mineral/unloading_machine,/turf/simulated/floor/plating/asteroid/airless{tag = "icon-asteroidfloor"; icon_state = "asteroidfloor"},/area/quartermaster/miningdock)
"azx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/quartermaster/miningdock)
"azy" = (/obj/machinery/light_switch{dir = 4; pixel_x = 22},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/simulated/floor/plasteel{tag = "icon-browncorner"; icon_state = "browncorner"; dir = 2},/area/quartermaster/miningdock)
"azz" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/plasteel{dir = 8; icon_state = "brown"},/area/construction/hallway{name = "Port Central Hallway"})
@@ -1355,7 +1355,7 @@
"aAc" = (/obj/machinery/shower{tag = "icon-shower (EAST)"; icon_state = "shower"; dir = 4},/obj/machinery/door/window/westright{dir = 4},/obj/item/weapon/soap/deluxe,/turf/simulated/floor/plasteel{icon_state = "white"},/area/crew_quarters/captain)
"aAd" = (/obj/structure/toilet{pixel_y = 5},/turf/simulated/floor/plasteel{icon_state = "white"; temperature = 273.15},/area/crew_quarters/captain)
"aAe" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/structure/mirror{pixel_x = 24},/obj/machinery/vending/wallmed1{pixel_y = 32},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plasteel{icon_state = "white"; temperature = 273.15},/area/crew_quarters/captain)
-"aAf" = (/obj/machinery/conveyor_switch/oneway{id = "Mininginput"},/turf/simulated/floor/plating/asteroid/airless{tag = "icon-asteroidplating"; icon_state = "asteroidplating"},/area/mine/explored)
+"aAf" = (/obj/machinery/conveyor{dir = 4; id = "Miningredemption"},/turf/simulated/floor/plating,/area/quartermaster/miningdock)
"aAg" = (/obj/machinery/mineral/processing_unit,/turf/simulated/floor/plating,/area/quartermaster/miningdock)
"aAh" = (/obj/machinery/mineral/processing_unit_console{machinedir = 8},/turf/simulated/wall,/area/quartermaster/miningdock)
"aAi" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/simulated/floor/plasteel,/area/quartermaster/miningdock)
@@ -1408,17 +1408,17 @@
"aBd" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
"aBe" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/wall,/area/maintenance/asteroidstation/bridge)
"aBf" = (/obj/machinery/light/small{dir = 8},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
-"aBg" = (/obj/structure/cable/blue,/obj/machinery/power/apc{dir = 4; name = "Bridge Maintenance APC"; pixel_x = 24},/turf/simulated/floor/plating,/area/space)
+"aBg" = (/turf/simulated/mineral,/area/mine/unexplored)
"aBh" = (/turf/simulated/floor/wood,/area/crew_quarters/captain)
"aBi" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/wood,/area/crew_quarters/captain)
"aBj" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor/wood,/area/crew_quarters/captain)
"aBk" = (/obj/item/weapon/storage/secure/safe{pixel_x = 35; pixel_y = 5},/turf/simulated/floor/wood,/area/crew_quarters/captain)
"aBl" = (/obj/machinery/door/airlock/silver{desc = "Because the boss knows that what the boss says goes and if the boss's suffered losses then that's what the boss chose!"; name = "Bathroom"},/turf/simulated/floor/plasteel{icon_state = "white"; temperature = 273.15},/area/crew_quarters/captain)
-"aBm" = (/obj/structure/ore_box,/turf/simulated/floor/plating/asteroid/airless{tag = "icon-asteroidplating"; icon_state = "asteroidplating"},/area/mine/explored)
-"aBn" = (/obj/machinery/conveyor{id = "Mininginput"},/turf/simulated/floor/plating,/area/quartermaster/miningdock)
-"aBo" = (/obj/machinery/conveyor_switch/oneway{id = "Mininginput"},/turf/simulated/floor/plasteel{dir = 10; icon_state = "brown"},/area/quartermaster/miningdock)
+"aBm" = (/obj/machinery/mineral/ore_redemption{input_dir = 8; output_dir = 4},/turf/simulated/floor/plating/asteroid/airless{tag = "icon-asteroidfloor"; icon_state = "asteroidfloor"},/area/quartermaster/miningdock)
+"aBn" = (/obj/machinery/conveyor{dir = 4; id = "Miningredemption"},/obj/structure/plasticflaps/mining,/turf/simulated/floor/plating,/area/quartermaster/miningdock)
+"aBo" = (/obj/machinery/conveyor_switch/oneway{id = "Miningredemption"},/turf/simulated/floor/plasteel,/area/quartermaster/miningdock)
"aBp" = (/turf/simulated/floor/plasteel{tag = "icon-browncorner (WEST)"; icon_state = "browncorner"; dir = 8},/area/quartermaster/miningdock)
-"aBq" = (/obj/structure/stool/bed/chair/office/dark{dir = 4},/obj/effect/landmark/start{name = "Shaft Miner"},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1},/turf/simulated/floor/plasteel,/area/quartermaster/miningdock)
+"aBq" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/conveyor_switch/oneway{id = "Miningredemption"},/turf/simulated/floor/plating/asteroid/airless{tag = "icon-asteroidfloor"; icon_state = "asteroidfloor"},/area/quartermaster/miningdock)
"aBr" = (/obj/structure/table,/obj/item/weapon/folder/yellow,/obj/item/weapon/pen,/turf/simulated/floor/plasteel{dir = 4; icon_state = "brown"},/area/quartermaster/miningdock)
"aBs" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 8},/area/construction/hallway{name = "Port Central Hallway"})
"aBt" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=FrCH1"; location = "PtCH"},/turf/simulated/floor/plasteel,/area/construction/hallway{name = "Port Central Hallway"})
@@ -1431,7 +1431,7 @@
"aBA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor/plasteel,/area/hallway/secondary/construction{name = "Fore Central Hallway"})
"aBB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/border_only{tag = "icon-door_open (EAST)"; icon_state = "door_open"; dir = 4},/turf/simulated/floor/plasteel,/area/hallway/secondary/construction{name = "Fore Central Hallway"})
"aBC" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=Arrival"; location = "FrCH1"},/turf/simulated/floor/plasteel,/area/hallway/secondary/construction{name = "Fore Central Hallway"})
-"aBD" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/plasteel,/area/hallway/secondary/construction{name = "Fore Central Hallway"})
+"aBD" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/plasteel,/area/hallway/secondary/construction{name = "Fore Central Hallway"})
"aBE" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=StHF1"; location = "FrCH2"},/turf/simulated/floor/plasteel,/area/hallway/secondary/construction{name = "Fore Central Hallway"})
"aBF" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plasteel,/area/hallway/secondary/construction{name = "Fore Central Hallway"})
"aBG" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/glass{name = "Starboard Hallway"},/turf/simulated/floor/plasteel,/area/hallway/primary/starboard{name = "Starboard Hallway"})
@@ -1439,16 +1439,16 @@
"aBI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=AI"; location = "StHF1"},/turf/simulated/floor/plasteel,/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aBJ" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aBK" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/simulated/floor/fancy/carpet,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
-"aBL" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/red,/obj/machinery/door_control{id = "Dorm1"; name = "Cabin Bolt Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = -25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/fancy/carpet,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
+"aBL" = (/obj/structure/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/plasteel,/area/storage/primary{name = "Tool Storage"})
"aBM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/fancy/carpet,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
-"aBN" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/blue,/obj/machinery/door_control{id = "Dorm2"; name = "Cabin Bolt Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = -25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/fancy/carpet,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
-"aBO" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/yellow,/obj/machinery/door_control{id = "Dorm3"; name = "Cabin Bolt Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = -25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/fancy/carpet,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
-"aBP" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/purple,/obj/machinery/door_control{id = "Dorm4"; name = "Cabin Bolt Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = -25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/fancy/carpet,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
+"aBN" = (/turf/simulated/floor/plating/asteroid/airless{tag = "icon-asteroidplating"; icon_state = "asteroidplating"},/area/quartermaster/miningdock)
+"aBO" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/red,/obj/machinery/door_control{id = "Dorm1"; name = "Cabin Bolt Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = -25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/fancy/carpet,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
+"aBP" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/blue,/obj/machinery/door_control{id = "Dorm2"; name = "Cabin Bolt Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = -25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/fancy/carpet,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
"aBQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
"aBR" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
"aBS" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=StAF2"; location = "StHF2"},/turf/simulated/floor/plasteel,/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aBT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/starboard{name = "Starboard Hallway"})
-"aBU" = (/turf/simulated/wall,/area/space)
+"aBU" = (/turf/simulated/mineral,/area/space)
"aBV" = (/obj/structure/cable/blue{tag = "icon-1-4"; icon_state = "1-4"; d1 = 1; d2 = 2},/turf/simulated/floor/wood,/area/crew_quarters/captain)
"aBW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable/blue{tag = "icon-4-8"; icon_state = "4-8"; d1 = 1; d2 = 2},/turf/simulated/floor/fancy/carpet,/area/crew_quarters/captain)
"aBX" = (/obj/structure/cable/blue{tag = "icon-4-8"; icon_state = "4-8"; d1 = 1; d2 = 2},/turf/simulated/floor/fancy/carpet,/area/crew_quarters/captain)
@@ -1456,7 +1456,7 @@
"aBZ" = (/obj/machinery/door/airlock/command{name = "Captain's Quarters"; req_access = null; req_access_txt = "20"},/turf/simulated/floor/wood,/area/crew_quarters/captain)
"aCa" = (/obj/machinery/camera{c_tag = "Captain's Quarters"; dir = 2},/turf/simulated/floor/wood,/area/crew_quarters/captain)
"aCb" = (/obj/machinery/mineral/stacking_unit_console{machinedir = 10},/turf/simulated/wall,/area/quartermaster/miningdock)
-"aCc" = (/obj/machinery/camera{c_tag = "Mining South"; dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "browncorner"},/area/quartermaster/miningdock)
+"aCc" = (/turf/simulated/floor/plasteel{dir = 10; icon_state = "brown"},/area/quartermaster/miningdock)
"aCd" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular,/obj/item/weapon/storage/firstaid/regular,/turf/simulated/floor/plasteel{dir = 4; icon_state = "brown"},/area/quartermaster/miningdock)
"aCe" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/construction/hallway{name = "Port Central Hallway"})
"aCf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/simulated/floor/plasteel,/area/construction/hallway{name = "Port Central Hallway"})
@@ -1501,8 +1501,8 @@
"aCS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aCT" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/obj/machinery/door/airlock/maintenance{name = "Maintenance Access"; req_access_txt = "12"; req_one_access_txt = "0"},/turf/simulated/floor/plating,/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aCU" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 10},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
-"aCV" = (/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
-"aCW" = (/obj/machinery/atmospherics/unary/portables_connector/visible,/turf/simulated/floor/plating,/area/space)
+"aCV" = (/turf/simulated/mineral,/area/mine/explored)
+"aCW" = (/obj/structure/cable/blue,/obj/machinery/power/apc{dir = 4; name = "Bridge Maintenance APC"; pixel_x = 24},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
"aCX" = (/obj/structure/table/wood,/obj/item/weapon/book/manual/wiki/security_space_law,/obj/item/weapon/hand_tele,/obj/machinery/requests_console{announcementConsole = 1; department = "Captain's Desk"; departmentType = 5; name = "Captain's Requests Console"; pixel_x = -30; pixel_y = 0},/turf/simulated/floor/wood,/area/crew_quarters/captain)
"aCY" = (/obj/structure/table/wood,/obj/item/weapon/folder/blue,/obj/item/weapon/stamp/captain,/turf/simulated/floor/wood,/area/crew_quarters/captain)
"aCZ" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green{pixel_x = 1; pixel_y = 5},/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/simulated/floor/wood,/area/crew_quarters/captain)
@@ -1558,9 +1558,9 @@
"aDX" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 5},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
"aDY" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/turf/simulated/wall,/area/maintenance/asteroidstation/bridge)
"aDZ" = (/obj/machinery/atmospherics/binary/pump/on{dir = 4},/obj/machinery/camera{c_tag = "Bridge Atmospheric Control"; dir = 4},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
-"aEa" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/space)
+"aEa" = (/obj/machinery/atmospherics/unary/portables_connector/visible,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
"aEb" = (/obj/machinery/computer/card,/obj/item/weapon/card/id/captains_spare,/obj/machinery/door_control{id = "capffice"; name = "Captain's Shutters Control"; pixel_x = -24; pixel_y = 0; req_access_txt = "22"},/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aEc" = (/obj/structure/stool/bed/chair/comfy/brown{dir = 4},/obj/effect/landmark/start{name = "Captain"},/turf/simulated/floor/wood,/area/crew_quarters/captain)
+"aEc" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/yellow,/obj/machinery/door_control{id = "Dorm3"; name = "Cabin Bolt Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = -25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/fancy/carpet,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
"aEd" = (/obj/structure/table/wood,/obj/item/clothing/mask/cigarette/cigar,/obj/item/weapon/storage/box/matches,/turf/simulated/floor/wood,/area/crew_quarters/captain)
"aEe" = (/obj/structure/stool/bed/chair/comfy/brown{dir = 8},/turf/simulated/floor/wood,/area/crew_quarters/captain)
"aEf" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/fancy/carpet,/area/crew_quarters/captain)
@@ -1580,7 +1580,7 @@
"aEt" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/maintenance/asteroidstation/transit/fore_port)
"aEu" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plasteel,/area/maintenance/asteroidstation/transit/fore_port)
"aEv" = (/obj/structure/stool/bed/chair,/obj/machinery/camera{c_tag = "Fore Port Transit"; dir = 2; network = list("SS13")},/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 23; tag = "north"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/maintenance/asteroidstation/transit/fore_port)
-"aEw" = (/obj/structure/stool/bed/chair,/obj/machinery/light_switch{dir = 1; pixel_y = 22},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/maintenance/asteroidstation/transit/fore_port)
+"aEw" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/purple,/obj/machinery/door_control{id = "Dorm4"; name = "Cabin Bolt Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = -25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/fancy/carpet,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
"aEx" = (/obj/structure/grille,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/fore_interior)
"aEy" = (/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/fore_interior)
"aEz" = (/turf/simulated/floor/plating,/area/maintenance/asteroidstation/fore_interior)
@@ -1605,9 +1605,9 @@
"aES" = (/obj/machinery/door/firedoor/border_only{dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
"aET" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
"aEU" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
-"aEV" = (/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
+"aEV" = (/obj/structure/stool/bed/chair/comfy/brown{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/captain)
"aEW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
-"aEX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
+"aEX" = (/obj/structure/stool/bed/chair,/obj/machinery/light_switch{dir = 1; pixel_y = 22},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/plasteel,/area/maintenance/asteroidstation/transit/fore_port)
"aEY" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
"aEZ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
"aFa" = (/obj/machinery/door/firedoor/border_only{tag = "icon-door_open (EAST)"; icon_state = "door_open"; dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
@@ -1616,7 +1616,7 @@
"aFd" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
"aFe" = (/obj/machinery/door/airlock/atmos{name = "Bridge Atmospheric Control"; req_access_txt = "24"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
"aFf" = (/obj/machinery/atmospherics/binary/pump/on{dir = 8},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
-"aFg" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/space)
+"aFg" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
"aFh" = (/obj/machinery/computer/communications,/turf/simulated/floor/wood,/area/crew_quarters/captain)
"aFi" = (/obj/structure/table/wood,/obj/item/device/laser_pointer/green,/turf/simulated/floor/wood,/area/crew_quarters/captain)
"aFj" = (/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/wood,/area/crew_quarters/captain)
@@ -1669,11 +1669,11 @@
"aGe" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 8},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
"aGf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
"aGg" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
-"aGh" = (/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
+"aGh" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
"aGi" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/obj/effect/landmark{name = "lightsout"},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
-"aGj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
+"aGj" = (/obj/structure/stool/bed,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/item/weapon/bedsheet/captain,/obj/machinery/status_display{pixel_y = -32; tag = "south"},/obj/effect/landmark/start{name = "Captain"},/turf/simulated/floor/wood,/area/crew_quarters/captain)
"aGk" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
-"aGl" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
+"aGl" = (/obj/structure/stool/bed/chair{dir = 8},/obj/machinery/camera{c_tag = "Fore Starboard Transit"; dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/plasteel,/area/maintenance/asteroidstation/transit/fore_starboard)
"aGm" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
"aGn" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
"aGo" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/door/firedoor/border_only{tag = "icon-door_open (EAST)"; icon_state = "door_open"; dir = 4},/obj/machinery/camera{c_tag = "Fore Dormitory"; dir = 1},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
@@ -1682,7 +1682,7 @@
"aGr" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aGs" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
"aGt" = (/obj/machinery/computer/atmos_alert,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
-"aGu" = (/obj/machinery/atmospherics/unary/portables_connector/visible{dir = 1},/turf/simulated/floor/plating,/area/space)
+"aGu" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
"aGv" = (/obj/structure/closet/secure_closet/captains,/obj/item/device/radio/intercom{dir = 8; freerange = 1; name = "Station Intercom (Captain)"; pixel_x = -28},/turf/simulated/floor/wood,/area/crew_quarters/captain)
"aGw" = (/obj/machinery/keycard_auth{pixel_x = 0; pixel_y = -24},/turf/simulated/floor/wood,/area/crew_quarters/captain)
"aGx" = (/obj/machinery/newscaster/security_unit{pixel_y = -32},/obj/machinery/door/window/eastleft{req_access_txt = "20"},/turf/simulated/floor/wood,/area/crew_quarters/captain)
@@ -1693,7 +1693,7 @@
"aGC" = (/obj/machinery/light_switch{dir = 4; pixel_x = 22},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/captain)
"aGD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/wall/r_wall,/area/crew_quarters/captain)
"aGE" = (/obj/structure/dresser,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aGF" = (/obj/structure/stool/bed,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/item/weapon/bedsheet/captain,/obj/machinery/status_display{pixel_y = -32; tag = "south"},/turf/simulated/floor/wood,/area/crew_quarters/captain)
+"aGF" = (/obj/structure/stool/bed,/obj/machinery/atmospherics/unary/vent_scrubber,/obj/item/weapon/bedsheet/cmo,/obj/effect/landmark/start{name = "Chief Medical Officer"},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/cmo)
"aGG" = (/obj/structure/closet,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/effect/landmark/costume,/turf/simulated/floor/wood,/area/crew_quarters/captain)
"aGH" = (/obj/machinery/computer/med_data,/turf/simulated/floor/wood,/area/security/detectives_office)
"aGI" = (/turf/simulated/floor/wood,/area/security/detectives_office)
@@ -1711,7 +1711,7 @@
"aGU" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/maintenance/asteroidstation/fore_interior)
"aGV" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/plasteel,/area/maintenance/asteroidstation/transit/fore_starboard)
"aGW" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor/plasteel,/area/maintenance/asteroidstation/transit/fore_starboard)
-"aGX" = (/obj/structure/stool/bed/chair{dir = 8},/obj/machinery/camera{c_tag = "Fore Starboard Transit"; dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/maintenance/asteroidstation/transit/fore_starboard)
+"aGX" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/ce,/obj/machinery/atmospherics/unary/vent_scrubber,/obj/effect/landmark/start{name = "Chief Engineer"},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/ce)
"aGY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/wall,/area/hallway/secondary/construction{name = "Fore Central Hallway"})
"aGZ" = (/obj/machinery/seed_extractor,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/hallway/secondary/construction{name = "Fore Central Hallway"})
"aHa" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/hallway/secondary/construction{name = "Fore Central Hallway"})
@@ -1737,10 +1737,10 @@
"aHu" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/disposalpipe/junction,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aHv" = (/turf/simulated/floor/plasteel,/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aHw" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/camera{c_tag = "Starboard Hallway Fore Starboard"; dir = 8},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/starboard{name = "Starboard Hallway"})
-"aHx" = (/turf/simulated/wall,/area/crew_quarters/captain)
-"aHy" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/wall/r_wall,/area/crew_quarters/captain)
+"aHx" = (/obj/machinery/atmospherics/unary/portables_connector/visible{dir = 1},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
+"aHy" = (/obj/machinery/power/apc{dir = 4; name = "Captain's Quarters APC"; pixel_x = 24},/obj/structure/cable/blue{tag = "icon-0-8"; icon_state = "0-8"; d1 = 1; d2 = 2},/obj/effect/decal/cleanable/cobweb2,/turf/simulated/floor/plating,/area/crew_quarters/captain)
"aHz" = (/obj/machinery/door/airlock/command{desc = "The office of the station's commanding officer, answerable only to Central Command and Space Law."; name = "Captain's Quarters"; req_access = null; req_access_txt = "20"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aHA" = (/turf/space,/area/crew_quarters/captain)
+"aHA" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable/blue{tag = "icon-1-4"; icon_state = "1-4"; d1 = 1; d2 = 2},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
"aHB" = (/obj/machinery/computer/secure_data,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28; tag = "west"},/turf/simulated/floor/fancy/carpet,/area/security/detectives_office)
"aHC" = (/obj/structure/stool/bed/chair/office/dark{dir = 4},/obj/effect/landmark/start{name = "Detective"},/turf/simulated/floor/fancy/carpet,/area/security/detectives_office)
"aHD" = (/obj/structure/table/wood,/obj/item/weapon/hand_labeler,/turf/simulated/floor/fancy/carpet,/area/security/detectives_office)
@@ -1778,17 +1778,17 @@
"aIj" = (/obj/machinery/door/airlock{id_tag = "Dorm5"; name = "Cabin 5"},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
"aIk" = (/obj/machinery/door/airlock{desc = "Basic human needs haven't changed much over the centuries."; id_tag = "shutbath"; name = "Unisex Restroom"; req_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
"aIl" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
-"aIm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/obj/structure/closet,/obj/item/device/analyzer,/obj/effect/decal/cleanable/cobweb2,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
-"aIn" = (/obj/structure/stool/bed,/obj/machinery/atmospherics/unary/vent_scrubber,/obj/item/weapon/bedsheet/cmo,/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aIo" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aIp" = (/obj/structure/table/wood,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aIq" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/ce,/obj/machinery/atmospherics/unary/vent_scrubber,/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aIr" = (/obj/structure/table/wood,/obj/item/weapon/folder/yellow,/obj/item/weapon/pen,/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aIs" = (/obj/machinery/computer/arcade,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/crew_quarters/captain)
-"aIt" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/crew_quarters/captain)
-"aIu" = (/turf/simulated/floor/plasteel{icon_state = "warningcorner"; dir = 2},/area/crew_quarters/captain)
-"aIv" = (/obj/structure/sign/pods,/turf/simulated/wall,/area/crew_quarters/captain)
-"aIw" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/crew_quarters/captain)
+"aIm" = (/turf/simulated/wall/r_wall,/area/crew_quarters/asteroidstation/cmo)
+"aIn" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/wall/r_wall,/area/bridge)
+"aIo" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
+"aIp" = (/obj/structure/stool/bed/chair/comfy/brown{dir = 1},/obj/machinery/camera{c_tag = "Chief Medical Officer's Quarters"; dir = 8},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/cmo)
+"aIq" = (/obj/structure/table/wood,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/cmo)
+"aIr" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/cmo)
+"aIs" = (/obj/structure/stool/bed/chair/comfy/brown{dir = 1},/obj/machinery/camera{c_tag = "Chief Engineer's Quarters"; dir = 8},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/ce)
+"aIt" = (/turf/simulated/wall,/area/crew_quarters/asteroidstation/ce)
+"aIu" = (/obj/structure/table/wood,/obj/item/weapon/folder/yellow,/obj/item/weapon/pen,/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/ce)
+"aIv" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/ce)
+"aIw" = (/obj/machinery/computer/arcade,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/bridge)
"aIx" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion (EAST)"; icon_state = "propulsion"; dir = 4},/turf/simulated/shuttle/wall{icon_state = "swall_f6"; dir = 2},/area/shuttle/escape_pod3/station)
"aIy" = (/turf/simulated/shuttle/wall{icon_state = "swall12"; dir = 2},/area/shuttle/escape_pod3/station)
"aIz" = (/turf/simulated/shuttle/wall{icon_state = "swall_s10"; dir = 2},/area/shuttle/escape_pod3/station)
@@ -1836,15 +1836,15 @@
"aJp" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/border_only{dir = 1},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aJq" = (/obj/machinery/door/firedoor/border_only{dir = 1},/turf/simulated/floor/plasteel,/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aJr" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/door/firedoor/border_only{dir = 1},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/starboard{name = "Starboard Hallway"})
-"aJs" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
-"aJt" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aJu" = (/obj/structure/stool/bed/chair/comfy/brown{dir = 1},/obj/machinery/camera{c_tag = "Chief Medical Officer's Quarters"; dir = 8},/obj/effect/landmark/start{name = "Chief Medical Officer"},/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aJv" = (/obj/structure/stool/bed/chair/comfy/brown{dir = 1},/obj/machinery/camera{c_tag = "Chief Engineer's Quarters"; dir = 8},/obj/effect/landmark/start{name = "Chief Engineer"},/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aJw" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/crew_quarters/captain)
-"aJx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/crew_quarters/captain)
-"aJy" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warning"},/area/crew_quarters/captain)
-"aJz" = (/obj/machinery/door/airlock/external{desc = "Leads to one of the station's small, FTL-capable lifeboats."; name = "Bridge Escape Pod"; req_access = null; req_access_txt = "0"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/crew_quarters/captain)
-"aJA" = (/turf/simulated/floor/plating,/area/crew_quarters/captain)
+"aJs" = (/turf/simulated/floor/plasteel{icon_state = "warningcorner"; dir = 2},/area/bridge)
+"aJt" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/bridge)
+"aJu" = (/obj/structure/sign/pods,/turf/simulated/wall,/area/bridge)
+"aJv" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/power/apc{dir = 4; name = "Chief Medical Officer's Quarters APC"; pixel_x = 24},/obj/structure/cable/blue{tag = "icon-0-8"; icon_state = "0-8"; d1 = 1; d2 = 2},/turf/simulated/floor/plating,/area/crew_quarters/asteroidstation/cmo)
+"aJw" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/cmo)
+"aJx" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/green,/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/wood,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
+"aJy" = (/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/cmo)
+"aJz" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/ce)
+"aJA" = (/obj/structure/stool/bed/chair/comfy/brown,/obj/machinery/camera{c_tag = "Research Director's Quarters"; dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/rd)
"aJB" = (/obj/machinery/door/airlock/shuttle{name = "Escape Pod Three"},/turf/simulated/shuttle/floor,/area/shuttle/escape_pod3/station)
"aJC" = (/obj/structure/stool/bed/chair{dir = 4},/obj/item/device/radio/intercom{pixel_y = 25},/turf/simulated/shuttle/floor,/area/shuttle/escape_pod3/station)
"aJD" = (/obj/structure/stool/bed/chair{dir = 4},/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/shuttle/floor,/area/shuttle/escape_pod3/station)
@@ -1890,23 +1890,23 @@
"aKr" = (/obj/machinery/computer/atmos_alert,/turf/simulated/floor/plating,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
"aKs" = (/obj/structure/closet/secure_closet/personal/cabinet,/turf/simulated/floor/wood,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
"aKt" = (/obj/machinery/light/small,/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/wood,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
-"aKu" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/green,/turf/simulated/floor/wood,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
+"aKu" = (/obj/structure/stool/bed/chair/comfy/brown,/obj/machinery/camera{c_tag = "Head of Security's Quarters"; dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/hos)
"aKv" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/mirror{pixel_x = -28},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
"aKw" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
"aKx" = (/obj/machinery/door/airlock{desc = "Basic human needs haven't changed much over the centuries."; name = "Restroom"; req_access_txt = "0"},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
"aKy" = (/obj/machinery/light/small,/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
"aKz" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
-"aKA" = (/obj/structure/closet/secure_closet/personal/cabinet,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aKB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aKC" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/machinery/light_switch{dir = 4; pixel_x = 22},/obj/machinery/status_display{pixel_y = -32; tag = "south"},/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aKD" = (/obj/structure/cable/blue{tag = "icon-1-4"; icon_state = "1-4"; d1 = 1; d2 = 2},/turf/simulated/floor/plasteel,/area/crew_quarters/captain)
-"aKE" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable/blue{tag = "icon-4-8"; icon_state = "4-8"; d1 = 1; d2 = 2},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/crew_quarters/captain)
-"aKF" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/blue{tag = "icon-2-8"; icon_state = "2-8"; d1 = 1; d2 = 2},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/plasteel{icon_state = "warningcorner"; dir = 8},/area/crew_quarters/captain)
-"aKG" = (/obj/machinery/light/small{dir = 8},/obj/machinery/camera{c_tag = "Bridge Escape Pod"; dir = 4},/turf/simulated/floor/plating,/area/crew_quarters/captain)
+"aKA" = (/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/ce)
+"aKB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/bridge)
+"aKC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/obj/structure/cable/blue{tag = "icon-2-4"; icon_state = "2-4"; d1 = 1; d2 = 2},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warning"},/area/bridge)
+"aKD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/bridge)
+"aKE" = (/obj/structure/cable/blue{tag = "icon-2-8"; icon_state = "2-8"; d1 = 1; d2 = 2},/turf/simulated/floor/plating,/area/bridge)
+"aKF" = (/obj/machinery/door/airlock/external{desc = "Leads to one of the station's small, FTL-capable lifeboats."; name = "Bridge Escape Pod"; req_access = null; req_access_txt = "0"},/obj/structure/cable/blue{tag = "icon-4-8"; icon_state = "4-8"; d1 = 1; d2 = 2},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/bridge)
+"aKG" = (/obj/structure/closet/secure_closet/personal/cabinet,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/cmo)
"aKH" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion (EAST)"; icon_state = "propulsion"; dir = 4},/turf/simulated/shuttle/wall{icon_state = "swall_f5"; dir = 2},/area/shuttle/escape_pod3/station)
"aKI" = (/turf/simulated/shuttle/wall{icon_state = "swall_s9"; dir = 2},/area/shuttle/escape_pod3/station)
"aKJ" = (/obj/item/stack/rods,/obj/item/weapon/shard{icon_state = "medium"},/obj/structure/grille{density = 0; icon_state = "brokengrille"},/turf/simulated/floor/plating/airless,/area/mine/abandoned)
-"aKK" = (/obj/structure/door_assembly/door_assembly_ext{name = "Broken External Airlock"},/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/abandoned)
+"aKK" = (/obj/structure/door_assembly/door_assembly_ext{name = "Broken External Airlock"},/turf/simulated/floor/plasteel/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/abandoned)
"aKL" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating/airless,/area/mine/abandoned)
"aKM" = (/turf/simulated/wall/r_wall,/area/security/prison)
"aKN" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28; tag = "west"},/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 8},/area/security/main)
@@ -1949,18 +1949,18 @@
"aLy" = (/obj/machinery/door/airlock/maintenance{name = "Firefighting equipment"; req_access_txt = "12"},/obj/structure/cable/green{tag = "icon-1-2"; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bar)
"aLz" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/turf/simulated/wall,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
"aLA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/airlock/atmos{name = "Crew Area Atmospheric Control"; req_access_txt = "24"},/turf/simulated/floor/plating,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
-"aLB" = (/obj/machinery/door/airlock/maintenance{name = "Maintenance Access"; req_access_txt = "12"; req_one_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/crew_quarters/sleep_female{name = "Fore Dormitory"})
+"aLB" = (/obj/structure/stool/bed/chair/office/dark{dir = 4},/obj/effect/landmark/start{name = "Shaft Miner"},/turf/simulated/floor/plasteel,/area/quartermaster/miningdock)
"aLC" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/turf/simulated/floor/plasteel,/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aLD" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/starboard{name = "Starboard Hallway"})
-"aLE" = (/obj/machinery/door/airlock/command{name = "Chief Medical Officer's Quarters"; req_access = null; req_access_txt = "40"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aLF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/wall,/area/crew_quarters/captain)
-"aLG" = (/obj/machinery/door/airlock/command{name = "Chief Engineer's Quarters"; req_access = null; req_access_txt = "56"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aLH" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/turf/simulated/floor/plasteel,/area/crew_quarters/captain)
-"aLI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/crew_quarters/captain)
-"aLJ" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/camera{c_tag = "Bridge Quarters Hallway"; dir = 8},/turf/simulated/floor/plasteel,/area/crew_quarters/captain)
-"aLK" = (/turf/simulated/floor/plating{tag = "icon-warnplatecorner"; icon_state = "warnplatecorner"; dir = 2},/area/crew_quarters/captain)
+"aLE" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/machinery/light_switch{dir = 4; pixel_x = 22},/obj/machinery/status_display{pixel_y = -32; tag = "south"},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/cmo)
+"aLF" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/cmo)
+"aLG" = (/obj/structure/closet/secure_closet/personal/cabinet,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/ce)
+"aLH" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/machinery/light_switch{dir = 4; pixel_x = 22},/obj/machinery/status_display{pixel_y = -32; tag = "south"},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/ce)
+"aLI" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/ce)
+"aLJ" = (/obj/structure/cable/blue{tag = "icon-1-4"; icon_state = "1-4"; d1 = 1; d2 = 2},/turf/simulated/floor/plasteel,/area/bridge)
+"aLK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/blue{tag = "icon-2-8"; icon_state = "2-8"; d1 = 1; d2 = 2},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{icon_state = "warningcorner"; dir = 8},/area/bridge)
"aLL" = (/obj/structure/grille,/obj/item/weapon/shard,/turf/simulated/floor/plating/airless,/area/mine/abandoned)
-"aLM" = (/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/abandoned)
+"aLM" = (/turf/simulated/floor/plasteel/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/abandoned)
"aLN" = (/obj/structure/grille{density = 0; icon_state = "brokengrille"},/turf/simulated/floor/plating/airless,/area/mine/abandoned)
"aLO" = (/obj/structure/toilet{cistern = 1; desc = "The HT-451, a torque rotation-based, waste disposal unit for small matter. This one has a heart drawn on the cistern."; dir = 4},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/security/prison)
"aLP" = (/obj/structure/sink{pixel_y = 28; step_y = 0},/obj/machinery/light/small,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/security/prison)
@@ -2018,35 +2018,35 @@
"aMP" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 9},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bar)
"aMQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bar)
"aMR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/green{tag = "icon-2-4"; icon_state = "2-4"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bar)
-"aMS" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/green{tag = "icon-4-8"; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bar)
-"aMT" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/green{tag = "icon-4-8"; icon_state = "4-8"},/obj/structure/cable/green{tag = "icon-2-8"; icon_state = "2-8"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bar)
-"aMU" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/obj/structure/cable/green{tag = "icon-4-8"; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bar)
-"aMV" = (/obj/structure/cable/green{tag = "icon-4-8"; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bar)
-"aMW" = (/obj/structure/cable/green{tag = "icon-4-8"; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bar)
-"aMX" = (/obj/structure/cable/green{tag = "icon-4-8"; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bar)
-"aMY" = (/obj/structure/cable/green{tag = "icon-4-8"; icon_state = "4-8"},/obj/machinery/door/airlock/maintenance{name = "Maintenance Access"; req_access_txt = "0"; req_one_access_txt = "12; 25; 28; 30"},/turf/simulated/floor/plating,/area/hallway/primary/starboard{name = "Starboard Hallway"})
+"aMS" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1},/turf/simulated/floor/plasteel,/area/quartermaster/miningdock)
+"aMT" = (/obj/machinery/conveyor_switch/oneway{id = "Mininginput"},/turf/simulated/floor/plating/asteroid/airless{tag = "icon-asteroidfloor"; icon_state = "asteroidfloor"},/area/quartermaster/miningdock)
+"aMU" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 8},/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/quartermaster/miningdock)
+"aMV" = (/obj/machinery/camera{c_tag = "Mining South"; dir = 4},/obj/machinery/conveyor_switch/oneway{id = "Mininginput"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "browncorner"},/area/quartermaster/miningdock)
+"aMW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/green{tag = "icon-4-8"; icon_state = "4-8"},/obj/machinery/door/window/eastleft{name = "Hydroponics Deliveries"; req_access_txt = "35"},/obj/structure/window/reinforced,/turf/simulated/floor/plasteel{icon_state = "delivery"},/area/hydroponics)
+"aMX" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=4"; freq = 1400; location = "Hydroponics"},/obj/structure/plasticflaps{opacity = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/green{tag = "icon-4-8"; icon_state = "4-8"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "loadingarea"},/area/hydroponics)
+"aMY" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/obj/structure/cable/green{tag = "icon-4-8"; icon_state = "4-8"},/obj/structure/closet/secure_closet/hydroponics,/turf/simulated/floor/plasteel{dir = 1; icon_state = "green"},/area/hydroponics)
"aMZ" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{tag = "icon-4-8"; icon_state = "4-8"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aNa" = (/obj/structure/cable/green{tag = "icon-4-8"; icon_state = "4-8"},/turf/simulated/floor/plasteel,/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aNb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/green{tag = "icon-2-8"; icon_state = "2-8"},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aNc" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/blue{tag = "icon-1-4"; icon_state = "1-4"; d1 = 1; d2 = 2},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
-"aNd" = (/obj/machinery/power/apc{dir = 4; name = "Captain's Quarters APC"; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable/blue{tag = "icon-0-8"; icon_state = "0-8"; d1 = 1; d2 = 2},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
-"aNe" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitecorner"},/area/crew_quarters/captain)
-"aNf" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plasteel{icon_state = "whitehall"; dir = 1},/area/crew_quarters/captain)
-"aNg" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/obj/machinery/light{dir = 1},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whitecorner"},/area/crew_quarters/captain)
-"aNh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/firealarm{pixel_y = 25},/turf/simulated/floor/plasteel,/area/crew_quarters/captain)
-"aNi" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/simulated/floor/plasteel{dir = 4; icon_state = "yellowcorner"},/area/crew_quarters/captain)
-"aNj" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plasteel{dir = 1; icon_state = "yellow"},/area/crew_quarters/captain)
-"aNk" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/simulated/floor/plasteel{dir = 1; icon_state = "yellowcorner"},/area/crew_quarters/captain)
-"aNl" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/firedoor/border_only{tag = "icon-door_open (EAST)"; icon_state = "door_open"; dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/captain)
-"aNm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/captain)
-"aNn" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/crew_quarters/captain)
-"aNo" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/crew_quarters/captain)
-"aNp" = (/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/crew_quarters/captain)
-"aNq" = (/obj/machinery/door/airlock/external{name = "External Access"; req_access = null; req_access_txt = "13"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/crew_quarters/captain)
-"aNr" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/crew_quarters/captain)
+"aNd" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable/blue{tag = "icon-4-8"; icon_state = "4-8"; d1 = 1; d2 = 2},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/bridge)
+"aNe" = (/obj/machinery/light/small{dir = 8},/obj/machinery/camera{c_tag = "Bridge Escape Pod"; dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/bridge)
+"aNf" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/power/apc{dir = 4; name = "Chief Engineer's Quarters APC"; pixel_x = 24},/obj/structure/cable/blue{tag = "icon-0-8"; icon_state = "0-8"; d1 = 1; d2 = 2},/turf/simulated/floor/plating,/area/crew_quarters/asteroidstation/ce)
+"aNg" = (/turf/simulated/wall,/area/crew_quarters/asteroidstation/cmo)
+"aNh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/wall,/area/crew_quarters/asteroidstation/cmo)
+"aNi" = (/obj/machinery/door/airlock/command{name = "Chief Medical Officer's Quarters"; req_access = null; req_access_txt = "40"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/cmo)
+"aNj" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/wall,/area/crew_quarters/asteroidstation/ce)
+"aNk" = (/obj/machinery/door/airlock/command{name = "Chief Engineer's Quarters"; req_access = null; req_access_txt = "56"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/ce)
+"aNl" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/turf/simulated/floor/plasteel,/area/bridge)
+"aNm" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/camera{c_tag = "Bridge Quarters Hallway"; dir = 8},/turf/simulated/floor/plasteel,/area/bridge)
+"aNn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/bridge)
+"aNo" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating{tag = "icon-warnplatecorner"; icon_state = "warnplatecorner"; dir = 2},/area/bridge)
+"aNp" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
+"aNq" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitecorner"},/area/bridge)
+"aNr" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/obj/machinery/light{dir = 1},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whitecorner"},/area/bridge)
"aNs" = (/obj/structure/grille,/obj/item/weapon/shard{icon_state = "small"},/turf/simulated/floor/plating/airless,/area/mine/abandoned)
"aNt" = (/obj/structure/grille,/turf/simulated/floor/plating/airless,/area/mine/abandoned)
-"aNu" = (/obj/machinery/door/airlock/external{name = "External Airlock"; req_access_txt = "0"},/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/abandoned)
+"aNu" = (/obj/machinery/door/airlock/external{name = "External Airlock"; req_access_txt = "0"},/turf/simulated/floor/plasteel/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/abandoned)
"aNv" = (/turf/simulated/wall,/area/mine/abandoned)
"aNw" = (/obj/item/organ/appendix,/obj/effect/decal/cleanable/blood/gibs,/turf/simulated/floor/plating/asteroid,/area/mine/explored)
"aNx" = (/obj/machinery/door/airlock{name = "Unisex Restroom"; req_access_txt = "0"},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/security/prison)
@@ -2092,24 +2092,24 @@
"aOl" = (/obj/structure/grille,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bar)
"aOm" = (/obj/structure/cable/green{tag = "icon-1-2"; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bar)
"aOn" = (/turf/simulated/wall,/area/hydroponics)
-"aOo" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; freq = 1400; location = "Hydroponics"},/obj/structure/plasticflaps{opacity = 1},/obj/machinery/door/firedoor/border_only{dir = 1},/obj/structure/cable/green{tag = "icon-1-2"; icon_state = "1-2"},/turf/simulated/floor/plasteel{icon_state = "loadingarea"},/area/hydroponics)
+"aOo" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/green{tag = "icon-4-8"; icon_state = "4-8"},/obj/structure/extinguisher_cabinet{pixel_y = 30; tag = "(north)"},/turf/simulated/floor/plasteel{dir = 9; icon_state = "green"},/area/hydroponics)
"aOp" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/wall,/area/hydroponics)
-"aOq" = (/obj/machinery/door/airlock/maintenance{name = "Hydroponics Maintenance"; req_access_txt = "35"; req_one_access_txt = "0"},/turf/simulated/floor/plating,/area/hydroponics)
+"aOq" = (/obj/structure/window/reinforced,/obj/machinery/door/window/northright{dir = 4; name = "Disposal Exit"; req_access_txt = "12"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 6},/area/maintenance/disposal)
"aOr" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/green{tag = "icon-1-2"; icon_state = "1-2"},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/starboard{name = "Starboard Hallway"})
-"aOs" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/grille,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
-"aOt" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor/plasteel{dir = 2; icon_state = "purplecorner"},/area/crew_quarters/captain)
-"aOu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/simulated/floor/plasteel{dir = 2; icon_state = "purple"},/area/crew_quarters/captain)
-"aOv" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "purplecorner"},/area/crew_quarters/captain)
-"aOw" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/extinguisher_cabinet{pixel_y = -30; tag = "(south)"},/turf/simulated/floor/plasteel,/area/crew_quarters/captain)
-"aOx" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/camera{c_tag = "Bridge Quarters"; dir = 1},/turf/simulated/floor/plasteel{dir = 2; icon_state = "redcorner"},/area/crew_quarters/captain)
-"aOy" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/simulated/floor/plasteel{icon_state = "red"},/area/crew_quarters/captain)
-"aOz" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/obj/machinery/light,/turf/simulated/floor/plasteel{dir = 8; icon_state = "redcorner"},/area/crew_quarters/captain)
-"aOA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/door/firedoor/border_only{tag = "icon-door_open (EAST)"; icon_state = "door_open"; dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/captain)
-"aOB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/captain)
-"aOC" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/crew_quarters/captain)
+"aOs" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plasteel{icon_state = "whitehall"; dir = 1},/area/bridge)
+"aOt" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/simulated/floor/plasteel{dir = 4; icon_state = "yellowcorner"},/area/bridge)
+"aOu" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/firealarm{pixel_y = 25},/turf/simulated/floor/plasteel,/area/bridge)
+"aOv" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/simulated/floor/plasteel{dir = 1; icon_state = "yellowcorner"},/area/bridge)
+"aOw" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plasteel{dir = 1; icon_state = "yellow"},/area/bridge)
+"aOx" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/bridge)
+"aOy" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/firedoor/border_only{tag = "icon-door_open (EAST)"; icon_state = "door_open"; dir = 4},/turf/simulated/floor/plasteel,/area/bridge)
+"aOz" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/bridge)
+"aOA" = (/obj/machinery/power/apc{dir = 4; name = "Head of Personnel's Quarters APC"; pixel_x = 0; pixel_y = -24},/obj/structure/cable/blue,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/crew_quarters/asteroidstation/hop)
+"aOB" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/bridge)
+"aOC" = (/obj/machinery/door/airlock/external{name = "External Access"; req_access = null; req_access_txt = "13"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/bridge)
"aOD" = (/obj/item/ammo_casing/c9mm,/turf/simulated/floor/plating/asteroid/airless,/area/mine/explored)
"aOE" = (/obj/item/stack/rods,/obj/item/weapon/shard,/obj/structure/grille{density = 0; icon_state = "brokengrille"},/turf/simulated/floor/plating/airless,/area/mine/abandoned)
-"aOF" = (/obj/item/weapon/wrench,/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/abandoned)
+"aOF" = (/obj/item/weapon/wrench,/turf/simulated/floor/plasteel/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/abandoned)
"aOG" = (/turf/simulated/floor/plating/airless,/area/mine/abandoned)
"aOH" = (/obj/item/apc_frame,/turf/simulated/floor/plasteel,/area/mine/abandoned)
"aOI" = (/obj/item/weapon/folder/yellow,/obj/item/weapon/pen,/turf/simulated/floor/plasteel,/area/mine/abandoned)
@@ -2161,30 +2161,30 @@
"aPC" = (/obj/structure/cable/green{tag = "icon-4-8"; icon_state = "4-8"},/obj/structure/grille,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bar)
"aPD" = (/obj/structure/cable/green{tag = "icon-4-8"; icon_state = "4-8"},/obj/structure/grille{density = 0; icon_state = "brokengrille"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bar)
"aPE" = (/obj/structure/cable/green{tag = "icon-4-8"; icon_state = "4-8"},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bar)
-"aPF" = (/obj/structure/cable/green{tag = "icon-1-2"; icon_state = "1-2"},/obj/structure/cable/green{tag = "icon-2-8"; icon_state = "2-8"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bar)
-"aPG" = (/obj/machinery/door/window/eastleft{name = "Hydroponics Deliveries"; req_access_txt = "35"},/obj/structure/cable/green{tag = "icon-1-2"; icon_state = "1-2"},/obj/structure/window/reinforced,/turf/simulated/floor/plasteel{icon_state = "delivery"},/area/hydroponics)
-"aPH" = (/obj/structure/extinguisher_cabinet{pixel_y = 30; tag = "(north)"},/turf/simulated/floor/plasteel{dir = 9; icon_state = "green"},/area/hydroponics)
-"aPI" = (/obj/structure/closet/secure_closet/hydroponics,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{dir = 1; icon_state = "green"},/area/hydroponics)
-"aPJ" = (/obj/structure/closet/secure_closet/hydroponics,/obj/machinery/camera{c_tag = "Hydroponics"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "green"},/area/hydroponics)
-"aPK" = (/turf/simulated/floor/plasteel{dir = 1; icon_state = "green"},/area/hydroponics)
-"aPL" = (/obj/structure/closet/crate/hydroponics,/obj/item/weapon/shovel/spade,/obj/item/weapon/wrench,/obj/item/weapon/screwdriver,/obj/item/weapon/reagent_containers/glass/bucket,/obj/structure/sink{pixel_y = 28; step_y = 0},/turf/simulated/floor/plasteel{dir = 1; icon_state = "green"},/area/hydroponics)
-"aPM" = (/obj/structure/table,/obj/machinery/reagentgrinder,/obj/item/weapon/paper/hydroponics,/obj/machinery/firealarm{pixel_y = 25},/turf/simulated/floor/plasteel{dir = 1; icon_state = "green"},/area/hydroponics)
-"aPN" = (/obj/structure/table,/obj/item/weapon/reagent_containers/spray/plantbgone,/obj/item/weapon/reagent_containers/spray/plantbgone{pixel_x = 4},/obj/item/weapon/reagent_containers/spray/plantbgone{pixel_x = 6; pixel_y = 2},/obj/item/weapon/grenade/chem_grenade/antiweed,/obj/item/weapon/grenade/chem_grenade/antiweed,/obj/item/weapon/grenade/chem_grenade/antiweed,/turf/simulated/floor/plasteel{tag = "icon-green (NORTHEAST)"; icon_state = "green"; dir = 5},/area/hydroponics)
+"aPF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/green{tag = "icon-4-8"; icon_state = "4-8"},/obj/structure/closet/secure_closet/hydroponics,/obj/machinery/camera{c_tag = "Hydroponics"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "green"},/area/hydroponics)
+"aPG" = (/obj/structure/cable/green{tag = "icon-4-8"; icon_state = "4-8"},/obj/machinery/firealarm{pixel_y = 25},/obj/structure/table,/obj/machinery/reagentgrinder,/obj/item/weapon/paper/hydroponics,/turf/simulated/floor/plasteel{dir = 1; icon_state = "green"},/area/hydroponics)
+"aPH" = (/obj/structure/cable/green{tag = "icon-4-8"; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/structure/sink{pixel_y = 28; step_y = 0},/obj/structure/closet/crate/hydroponics,/obj/item/weapon/shovel/spade,/obj/item/weapon/wrench,/obj/item/weapon/screwdriver,/obj/item/weapon/reagent_containers/glass/bucket,/turf/simulated/floor/plasteel{dir = 1; icon_state = "green"},/area/hydroponics)
+"aPI" = (/obj/structure/cable/green{tag = "icon-4-8"; icon_state = "4-8"},/turf/simulated/wall,/area/hydroponics)
+"aPJ" = (/obj/structure/cable/green{tag = "icon-4-8"; icon_state = "4-8"},/obj/structure/table,/obj/item/weapon/reagent_containers/spray/plantbgone,/obj/item/weapon/reagent_containers/spray/plantbgone,/obj/item/weapon/grenade/chem_grenade/antiweed,/obj/item/weapon/grenade/chem_grenade/antiweed,/turf/simulated/floor/plasteel{tag = "icon-green (NORTHEAST)"; icon_state = "green"; dir = 5},/area/hydroponics)
+"aPK" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
+"aPL" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bar)
+"aPM" = (/turf/simulated/floor/plasteel{dir = 9; icon_state = "green"},/area/hydroponics)
+"aPN" = (/obj/structure/cable/green{tag = "icon-1-2"; icon_state = "1-2"},/obj/structure/cable/green{tag = "icon-2-8"; icon_state = "2-8"},/obj/structure/cable/green{tag = "icon-2-4"; icon_state = "2-4"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bar)
"aPO" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/disposalpipe/segment,/obj/structure/sign/botany{pixel_x = -32},/turf/simulated/floor/plasteel{dir = 8; icon_state = "greencorner"},/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aPP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/extinguisher_cabinet{pixel_x = 27; tag = "east"},/obj/structure/cable/green{tag = "icon-1-2"; icon_state = "1-2"},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aPQ" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
-"aPR" = (/obj/machinery/door/airlock/command{name = "Research Director's Quarters"; req_access = null; req_access_txt = "30"},/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aPS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/wall,/area/crew_quarters/captain)
-"aPT" = (/obj/machinery/door/airlock/command{name = "Head of Security's Quarters"; req_access = null; req_access_txt = "58"},/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aPU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/wall/r_wall,/area/crew_quarters/captain)
-"aPV" = (/obj/structure/stool/bed/chair/comfy/black,/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor/plasteel,/area/crew_quarters/captain)
-"aPW" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/simulated/floor/plasteel{icon_state = "bluecorner"},/area/crew_quarters/captain)
-"aPX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/wall,/area/crew_quarters/captain)
-"aPY" = (/obj/structure/closet/secure_closet/personal/cabinet,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aPZ" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/structure/filingcabinet,/turf/simulated/floor/wood,/area/crew_quarters/captain)
+"aPR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor/plasteel{dir = 2; icon_state = "purplecorner"},/area/bridge)
+"aPS" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "purplecorner"},/area/bridge)
+"aPT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/simulated/floor/plasteel{dir = 2; icon_state = "purple"},/area/bridge)
+"aPU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/camera{c_tag = "Bridge Quarters"; dir = 1},/turf/simulated/floor/plasteel{dir = 2; icon_state = "redcorner"},/area/bridge)
+"aPV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/extinguisher_cabinet{pixel_y = -30; tag = "(south)"},/turf/simulated/floor/plasteel,/area/bridge)
+"aPW" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/obj/machinery/light,/turf/simulated/floor/plasteel{dir = 8; icon_state = "redcorner"},/area/bridge)
+"aPX" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/simulated/floor/plasteel{icon_state = "red"},/area/bridge)
+"aPY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/door/firedoor/border_only{tag = "icon-door_open (EAST)"; icon_state = "door_open"; dir = 4},/turf/simulated/floor/plasteel,/area/bridge)
+"aPZ" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/bridge)
"aQa" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating/asteroid/airless{tag = "icon-asteroidplating"; icon_state = "asteroidplating"},/area/mine/abandoned)
-"aQb" = (/obj/effect/decal/cleanable/oil,/turf/simulated/floor/airless,/area/mine/abandoned)
-"aQc" = (/turf/simulated/floor/airless{icon_state = "damaged2"},/area/mine/abandoned)
+"aQb" = (/obj/effect/decal/cleanable/oil,/turf/simulated/floor/plasteel/airless,/area/mine/abandoned)
+"aQc" = (/turf/simulated/floor/plasteel/airless{icon_state = "damaged2"},/area/mine/abandoned)
"aQd" = (/obj/machinery/door/airlock,/turf/simulated/floor/plasteel,/area/mine/abandoned)
"aQe" = (/turf/simulated/floor/plasteel,/area/mine/abandoned)
"aQf" = (/turf/simulated/floor/plasteel{tag = "icon-damaged4"; icon_state = "damaged4"},/area/mine/abandoned)
@@ -2237,7 +2237,7 @@
"aRa" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 22},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aRb" = (/obj/machinery/light/small{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/camera{c_tag = "Crew Area Power Control"; dir = 4},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bar)
"aRc" = (/obj/structure/cable/green,/obj/machinery/computer/monitor,/obj/structure/cable/green{tag = "icon-0-2"; icon_state = "0-2"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bar)
-"aRd" = (/obj/structure/reagent_dispensers/watertank,/obj/structure/cable/green{tag = "icon-1-2"; icon_state = "1-2"},/turf/simulated/floor/plasteel{dir = 9; icon_state = "green"},/area/hydroponics)
+"aRd" = (/obj/structure/cable/green{tag = "icon-2-8"; icon_state = "2-8"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "green"},/area/hydroponics)
"aRe" = (/turf/simulated/floor/plasteel{dir = 1; icon_state = "greencorner"},/area/hydroponics)
"aRf" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel,/area/hydroponics)
"aRg" = (/turf/simulated/floor/plasteel,/area/hydroponics)
@@ -2245,18 +2245,18 @@
"aRi" = (/turf/simulated/floor/plasteel{icon_state = "green"; dir = 4},/area/hydroponics)
"aRj" = (/obj/machinery/door/airlock/glass{desc = "A place to grow plants, a vital part of a space station's long-term sustainability."; icon = 'icons/obj/doors/Doorglass.dmi'; name = "Hydroponics"; req_access_txt = "35"; req_one_access_txt = "0"},/turf/simulated/floor/plasteel{tag = "icon-greenfull"; icon_state = "greenfull"; dir = 2},/area/hydroponics)
"aRk" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{dir = 8; icon_state = "green"},/area/hallway/primary/starboard{name = "Starboard Hallway"})
-"aRl" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/obj/machinery/light_switch{dir = 8; pixel_x = -22},/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aRm" = (/obj/structure/closet/secure_closet/personal/cabinet,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/status_display{pixel_y = 32; tag = "north"},/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aRn" = (/obj/structure/table,/turf/simulated/floor/plasteel,/area/crew_quarters/captain)
-"aRo" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/simulated/floor/plasteel,/area/crew_quarters/captain)
-"aRp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 4; icon_state = "blue"},/area/crew_quarters/captain)
-"aRq" = (/obj/machinery/door/airlock/command{name = "Head of Personnel's Quarters"; req_access = null; req_access_txt = "57"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aRr" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aRs" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aRt" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/crew_quarters/captain)
+"aRl" = (/turf/simulated/wall,/area/crew_quarters/asteroidstation/hop)
+"aRm" = (/turf/simulated/wall/r_wall,/area/crew_quarters/asteroidstation/hop)
+"aRn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/power/apc{dir = 4; name = "Research Director's Quarters APC"; pixel_x = 24},/obj/structure/cable/blue{tag = "icon-0-8"; icon_state = "0-8"; d1 = 1; d2 = 2},/turf/simulated/floor/plating,/area/crew_quarters/asteroidstation/rd)
+"aRo" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/wall,/area/crew_quarters/asteroidstation/rd)
+"aRp" = (/turf/simulated/wall/r_wall,/area/crew_quarters/asteroidstation/rd)
+"aRq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/wall,/area/crew_quarters/asteroidstation/rd)
+"aRr" = (/obj/machinery/door/airlock/command{name = "Research Director's Quarters"; req_access = null; req_access_txt = "30"},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/rd)
+"aRs" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/wall,/area/crew_quarters/asteroidstation/hos)
+"aRt" = (/turf/simulated/wall,/area/crew_quarters/asteroidstation/hos)
"aRu" = (/obj/structure/ore_box,/turf/simulated/floor/plating/asteroid/airless{tag = "icon-asteroidplating"; icon_state = "asteroidplating"},/area/mine/abandoned)
-"aRv" = (/turf/simulated/floor/airless{icon_state = "floorgrime"},/area/mine/abandoned)
-"aRw" = (/obj/item/ammo_casing/c9mm,/turf/simulated/floor/airless,/area/mine/abandoned)
+"aRv" = (/turf/simulated/floor/plasteel/airless{icon_state = "floorgrime"},/area/mine/abandoned)
+"aRw" = (/obj/item/ammo_casing/c9mm,/turf/simulated/floor/plasteel/airless,/area/mine/abandoned)
"aRx" = (/obj/machinery/light/built{tag = "icon-tube1 (WEST)"; icon_state = "tube1"; dir = 8},/turf/simulated/floor/plasteel,/area/mine/abandoned)
"aRy" = (/obj/effect/decal/cleanable/generic,/turf/simulated/floor/plating/asteroid{tag = "icon-asteroidfloor"; icon_state = "asteroidfloor"},/area/mine/abandoned)
"aRz" = (/obj/effect/decal/cleanable/blood,/turf/simulated/floor/plating/asteroid{tag = "icon-asteroidfloor"; icon_state = "asteroidfloor"},/area/mine/abandoned)
@@ -2312,25 +2312,25 @@
"aSx" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aSy" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1},/turf/simulated/floor/plasteel,/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aSz" = (/obj/structure/cable,/obj/machinery/power/terminal{dir = 4},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bar)
-"aSA" = (/obj/structure/cable/green,/obj/machinery/power/smes,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bar)
+"aSA" = (/obj/structure/cable/green,/obj/machinery/power/smes{input_attempt = 1},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bar)
"aSB" = (/turf/simulated/wall,/area/crew_quarters/kitchen)
"aSC" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; freq = 1400; location = "Kitchen"},/obj/structure/plasticflaps{opacity = 1},/obj/machinery/door/firedoor/border_only{dir = 1},/turf/simulated/floor/plasteel{icon_state = "loadingarea"},/area/crew_quarters/kitchen)
"aSD" = (/obj/structure/cable/green{tag = "icon-1-2"; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance{name = "Kitchen Maintenance"; req_access_txt = "28"; req_one_access_txt = "0"},/turf/simulated/floor/plating,/area/crew_quarters/kitchen)
-"aSE" = (/obj/structure/table,/obj/item/weapon/reagent_containers/glass/bucket,/obj/structure/cable/green,/obj/machinery/power/apc{dir = 8; name = "Hydroponics APC"; pixel_x = -24},/obj/item/weapon/reagent_containers/glass/bucket,/turf/simulated/floor/plasteel{dir = 8; icon_state = "green"},/area/hydroponics)
-"aSF" = (/obj/machinery/hydroponics/constructable,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel,/area/hydroponics)
+"aSE" = (/obj/machinery/door/airlock/maintenance{name = "Hydroponics Maintenance"; req_access_txt = "35"; req_one_access_txt = "0"},/obj/structure/cable/green{tag = "icon-4-8"; icon_state = "4-8"},/turf/simulated/floor/plating,/area/hydroponics)
+"aSF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/hydroponics/constructable,/turf/simulated/floor/plasteel,/area/hydroponics)
"aSG" = (/obj/machinery/hydroponics/constructable,/turf/simulated/floor/plasteel,/area/hydroponics)
-"aSH" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/light_switch{dir = 4; pixel_x = 22},/turf/simulated/floor/plasteel{icon_state = "green"; dir = 4},/area/hydroponics)
+"aSH" = (/obj/structure/cable/green{tag = "icon-1-2"; icon_state = "1-2"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "green"},/area/hydroponics)
"aSI" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall,/area/hydroponics)
"aSJ" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j1s"; sortType = 21},/turf/simulated/floor/plasteel{dir = 8; icon_state = "green"},/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aSK" = (/obj/machinery/door/airlock/maintenance{name = "Maintenance Access"; req_access_txt = "12"; req_one_access_txt = "0"},/turf/simulated/floor/plating,/area/hallway/primary/starboard{name = "Starboard Hallway"})
-"aSL" = (/obj/structure/stool/bed/chair/comfy/brown,/obj/machinery/camera{c_tag = "Research Director's Quarters"; dir = 4},/obj/effect/landmark/start{name = "Research Director"},/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aSM" = (/obj/structure/stool/bed/chair/comfy/brown,/obj/machinery/camera{c_tag = "Head of Security's Quarters"; dir = 4},/obj/effect/landmark/start{name = "Head of Security"},/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aSN" = (/obj/structure/stool/bed/chair/comfy/black{dir = 1},/turf/simulated/floor/plasteel,/area/crew_quarters/captain)
-"aSO" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "bluecorner"},/area/crew_quarters/captain)
-"aSP" = (/obj/structure/table/wood,/obj/item/weapon/storage/box/ids,/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aSQ" = (/obj/structure/stool/bed/chair/comfy/brown{dir = 8},/obj/effect/landmark/start{name = "Head of Personnel"},/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aSR" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/hop,/obj/machinery/camera{c_tag = "Head of Personnel's Quarters"; dir = 8},/obj/machinery/status_display{pixel_y = -32; tag = "south"},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aSS" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/airless,/area/mine/abandoned)
+"aSL" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/wall/r_wall,/area/crew_quarters/asteroidstation/hos)
+"aSM" = (/obj/machinery/door/airlock/command{name = "Head of Security's Quarters"; req_access = null; req_access_txt = "58"},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/hos)
+"aSN" = (/obj/structure/stool/bed/chair/comfy/black,/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor/plasteel,/area/bridge)
+"aSO" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/simulated/floor/plasteel{icon_state = "bluecorner"},/area/bridge)
+"aSP" = (/obj/structure/closet/secure_closet/personal/cabinet,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/hop)
+"aSQ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/wall,/area/crew_quarters/asteroidstation/hop)
+"aSR" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/hop)
+"aSS" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/plasteel/airless,/area/mine/abandoned)
"aST" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/turf/simulated/floor/plating,/area/mine/abandoned)
"aSU" = (/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor/plating/asteroid{tag = "icon-asteroidplating"; icon_state = "asteroidplating"},/area/mine/abandoned)
"aSV" = (/obj/effect/decal/cleanable/molten_item,/turf/simulated/floor/plating/asteroid,/area/mine/abandoned)
@@ -2379,25 +2379,25 @@
"aTM" = (/obj/machinery/door/window/southleft{base_state = "left"; dir = 4; icon_state = "left"; name = "Kitchen Deliveries"; req_access_txt = "28"},/obj/structure/window/reinforced,/turf/simulated/floor/plasteel{icon_state = "delivery"},/area/crew_quarters/kitchen)
"aTN" = (/obj/machinery/alarm{name = "alarm"; pixel_y = 24},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen)
"aTO" = (/obj/structure/cable/green{tag = "icon-1-2"; icon_state = "1-2"},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen)
-"aTP" = (/obj/structure/table,/obj/item/weapon/crowbar/red,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/item/weapon/reagent_containers/glass/beaker,/turf/simulated/floor/plasteel{dir = 8; icon_state = "green"},/area/hydroponics)
+"aTP" = (/obj/machinery/power/apc{dir = 8; name = "Hydroponics APC"; pixel_x = -24},/obj/structure/cable/green,/turf/simulated/floor/plasteel{dir = 8; icon_state = "green"},/area/hydroponics)
"aTQ" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor/plasteel,/area/hydroponics)
-"aTR" = (/obj/machinery/hydroponics/constructable,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/hydroponics)
+"aTR" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/hydroponics/constructable,/turf/simulated/floor/plasteel,/area/hydroponics)
"aTS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/simulated/floor/plasteel,/area/hydroponics)
"aTT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "green"; dir = 4},/area/hydroponics)
"aTU" = (/obj/structure/table/reinforced,/obj/machinery/door/window/westright{name = "Hydroponics Desk"; req_one_access_txt = "30:35"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/door/firedoor/border_only{tag = "icon-door_open (EAST)"; icon_state = "door_open"; dir = 4},/turf/simulated/floor/plasteel{tag = "icon-greenfull"; icon_state = "greenfull"; dir = 2},/area/hydroponics)
"aTV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{dir = 8; icon_state = "green"},/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aTW" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/obj/structure/cable/green{tag = "icon-1-2"; icon_state = "1-2"},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/starboard{name = "Starboard Hallway"})
-"aTX" = (/obj/machinery/light,/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aTY" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/rd,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; step_y = 0; on = 1; scrub_Toxins = 0; scrub_N2O = 0},/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aTZ" = (/obj/structure/table/wood,/obj/item/weapon/folder/red,/obj/item/weapon/pen,/turf/simulated/floor/wood,/area/crew_quarters/captain)
-"aUa" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/hos,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; step_y = 0; on = 1; scrub_Toxins = 0; scrub_N2O = 0},/turf/simulated/floor/wood,/area/crew_quarters/captain)
+"aTX" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/structure/filingcabinet,/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/hop)
+"aTY" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/obj/machinery/light_switch{dir = 8; pixel_x = -22},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/rd)
+"aTZ" = (/obj/structure/closet/secure_closet/personal/cabinet,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/status_display{pixel_y = 32; tag = "north"},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/rd)
+"aUa" = (/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/rd)
"aUb" = (/turf/simulated/wall,/area/bridge)
"aUc" = (/obj/machinery/door/airlock/glass_command{desc = "Quarters to let the Heads get away from the rabble, at least while they sleep and relax."; name = "Officer Quarters"; req_access_txt = "19"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/bridge)
"aUd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/door/airlock/glass_command{desc = "Quarters to let the Heads get away from the rabble, at least while they sleep and relax."; name = "Officer Quarters"; req_access_txt = "19"},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/bridge)
"aUe" = (/turf/simulated/wall/r_wall,/area/bridge)
-"aUf" = (/obj/item/weapon/rack_parts,/obj/machinery/light/built{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/turf/simulated/floor/airless{icon_state = "damaged5"},/area/mine/abandoned)
+"aUf" = (/obj/item/weapon/rack_parts,/obj/machinery/light/built{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/turf/simulated/floor/plasteel/airless{icon_state = "damaged5"},/area/mine/abandoned)
"aUg" = (/obj/structure/rack,/obj/item/weapon/pickaxe{pixel_x = 5},/obj/item/weapon/shovel{pixel_x = -5},/turf/simulated/floor/plating/airless,/area/mine/abandoned)
-"aUh" = (/obj/structure/extinguisher_cabinet{pixel_x = -27; tag = "west"},/turf/simulated/floor/airless{icon_state = "floorgrime"},/area/mine/abandoned)
+"aUh" = (/obj/structure/extinguisher_cabinet{pixel_x = -27; tag = "west"},/turf/simulated/floor/plasteel/airless{icon_state = "floorgrime"},/area/mine/abandoned)
"aUi" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating,/area/security/prison)
"aUj" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plasteel,/area/security/prison)
"aUk" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plasteel,/area/security/prison)
@@ -2458,18 +2458,18 @@
"aVn" = (/obj/structure/cable/green{tag = "icon-1-2"; icon_state = "1-2"},/turf/simulated/floor/wood,/area/crew_quarters/bar)
"aVo" = (/obj/structure/kitchenspike,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen)
"aVp" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen)
-"aVq" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plasteel{dir = 10; icon_state = "green"},/area/hydroponics)
-"aVr" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/simulated/floor/plasteel{dir = 8; icon_state = "greencorner"},/area/hydroponics)
-"aVs" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel,/area/hydroponics)
-"aVt" = (/obj/effect/landmark/start{name = "Botanist"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/hydroponics)
-"aVu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/hydroponics)
+"aVq" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/hydroponics/constructable,/turf/simulated/floor/plasteel,/area/hydroponics)
+"aVr" = (/obj/machinery/light_switch{dir = 4; pixel_x = 22},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "green"; dir = 4},/area/hydroponics)
+"aVs" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor/plasteel{dir = 8; icon_state = "green"},/area/hydroponics)
+"aVt" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/hydroponics)
+"aVu" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/hydroponics)
"aVv" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/hydroponics)
"aVw" = (/obj/machinery/biogenerator,/turf/simulated/floor/plasteel{icon_state = "green"; dir = 4},/area/hydroponics)
"aVx" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{dir = 1; icon_state = "greencorner"},/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aVy" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/green{tag = "icon-1-2"; icon_state = "1-2"},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aVz" = (/turf/simulated/wall,/area/crew_quarters/heads)
-"aVA" = (/obj/structure/plasticflaps{opacity = 1},/obj/machinery/navbeacon{codes_txt = "delivery;dir=1"; dir = 1; freq = 1400; location = "Bridge"},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/border_only{dir = 1},/turf/simulated/floor/plasteel{icon_state = "loadingarea"; tag = ""},/area/crew_quarters/heads)
-"aVB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/wall,/area/crew_quarters/heads)
+"aVA" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "green"},/area/hydroponics)
+"aVB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/hydroponics/constructable,/turf/simulated/floor/plasteel,/area/hydroponics)
"aVC" = (/turf/simulated/wall/r_wall,/area/crew_quarters/heads)
"aVD" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/obj/machinery/requests_console{announcementConsole = 1; department = "Bridge"; departmentType = 5; name = "Bridge Requests Console"; pixel_y = 30},/turf/simulated/floor/plasteel,/area/bridge)
"aVE" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/bridge)
@@ -2478,11 +2478,11 @@
"aVH" = (/obj/machinery/computer/secure_data,/obj/machinery/light{dir = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "red"},/area/bridge)
"aVI" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/shutters/preopen{id = "bridgeshut"; name = "Bridge Shutters"},/turf/simulated/floor/plating,/area/bridge)
"aVJ" = (/obj/structure/grille,/obj/item/weapon/shard,/obj/item/weapon/shard{icon_state = "small"},/turf/simulated/floor/plating/airless,/area/mine/abandoned)
-"aVK" = (/obj/structure/table,/obj/item/device/radio/off,/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/abandoned)
-"aVL" = (/turf/simulated/floor/airless{icon_state = "damaged3"},/area/mine/abandoned)
-"aVM" = (/obj/item/weapon/crowbar/red,/turf/simulated/floor/airless,/area/mine/abandoned)
-"aVN" = (/obj/machinery/door/airlock,/turf/simulated/floor/airless,/area/mine/abandoned)
-"aVO" = (/obj/effect/decal/cleanable/blood,/obj/item/ammo_casing/c9mm,/turf/simulated/floor/airless{icon_state = "damaged2"},/area/mine/abandoned)
+"aVK" = (/obj/structure/table,/obj/item/device/radio/off,/turf/simulated/floor/plasteel/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/abandoned)
+"aVL" = (/turf/simulated/floor/plasteel/airless{icon_state = "damaged3"},/area/mine/abandoned)
+"aVM" = (/obj/item/weapon/crowbar/red,/turf/simulated/floor/plasteel/airless,/area/mine/abandoned)
+"aVN" = (/obj/machinery/door/airlock,/turf/simulated/floor/plasteel/airless,/area/mine/abandoned)
+"aVO" = (/obj/effect/decal/cleanable/blood,/obj/item/ammo_casing/c9mm,/turf/simulated/floor/plasteel/airless{icon_state = "damaged2"},/area/mine/abandoned)
"aVP" = (/obj/machinery/light/small/built{tag = "icon-bulb1 (EAST)"; icon_state = "bulb1"; dir = 4},/turf/simulated/floor/plating/airless,/area/mine/abandoned)
"aVQ" = (/obj/item/weapon/reagent_containers/food/snacks/grown/potato,/turf/simulated/floor/plating/asteroid,/area/mine/explored)
"aVR" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/security/prison)
@@ -2537,28 +2537,28 @@
"aWO" = (/obj/structure/kitchenspike,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen)
"aWP" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/mob/living/simple_animal/hostile/retaliate/goat{name = "Pete"},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen)
"aWQ" = (/obj/structure/cable/green,/obj/machinery/power/apc{dir = 4; name = "Kitchen APC"; pixel_x = 24},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen)
-"aWR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28; tag = "west"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "green"},/area/hydroponics)
+"aWR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/obj/machinery/hydroponics/constructable,/turf/simulated/floor/plasteel,/area/hydroponics)
"aWS" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; step_y = 0; on = 1; scrub_Toxins = 0; scrub_N2O = 0},/turf/simulated/floor/plasteel,/area/hydroponics)
"aWT" = (/obj/machinery/seed_extractor,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/plasteel{icon_state = "green"; dir = 4},/area/hydroponics)
"aWU" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/disposalpipe/segment,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28; tag = "west"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aWV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/green{tag = "icon-1-2"; icon_state = "1-2"},/obj/machinery/camera{c_tag = "Starboard Hallway Central Starboard"; dir = 8},/turf/simulated/floor/plasteel{icon_state = "bluecorner"},/area/hallway/primary/starboard{name = "Starboard Hallway"})
-"aWW" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/window{name = "Bridge Deliveries"; req_access_txt = "19"},/turf/simulated/floor/plasteel{icon_state = "delivery"},/area/crew_quarters/heads)
-"aWX" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"aWY" = (/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"aWZ" = (/obj/machinery/vending/cola,/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"aXa" = (/obj/machinery/vending/cigarette,/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"aXb" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"aXc" = (/obj/structure/closet,/turf/simulated/floor/plasteel{icon_state = "bluecorner"},/area/crew_quarters/heads)
+"aWW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/hydroponics/constructable,/turf/simulated/floor/plasteel,/area/hydroponics)
+"aWX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment,/obj/machinery/hydroponics/constructable,/turf/simulated/floor/plasteel,/area/hydroponics)
+"aWY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/wall,/area/bridge)
+"aWZ" = (/obj/structure/plasticflaps{opacity = 1},/obj/machinery/navbeacon{codes_txt = "delivery;dir=1"; dir = 1; freq = 1400; location = "Bridge"},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/border_only{dir = 1},/turf/simulated/floor/plasteel{icon_state = "loadingarea"; tag = ""},/area/bridge)
+"aXa" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28; tag = "west"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "green"},/area/hydroponics)
+"aXb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plasteel,/area/hydroponics)
+"aXc" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel,/area/bridge)
"aXd" = (/obj/machinery/light_switch{dir = 8; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/bridge)
"aXe" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/bridge)
"aXf" = (/obj/structure/stool/bed/chair/office/dark{dir = 4},/turf/simulated/floor/plasteel{dir = 4; icon_state = "red"},/area/bridge)
"aXg" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/computer/prisoner,/turf/simulated/floor/plasteel{dir = 8; icon_state = "red"},/area/bridge)
"aXh" = (/obj/item/stack/rods,/obj/item/weapon/shard{icon_state = "small"},/obj/structure/grille{density = 0; icon_state = "brokengrille"},/turf/simulated/floor/plating/asteroid/airless{tag = "icon-asteroidplating"; icon_state = "asteroidplating"},/area/mine/abandoned)
-"aXi" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/abandoned)
-"aXj" = (/obj/effect/decal/cleanable/oil,/turf/simulated/floor/airless{icon_state = "floorgrime"},/area/mine/abandoned)
-"aXk" = (/obj/effect/decal/cleanable/generic,/turf/simulated/floor/airless,/area/mine/abandoned)
-"aXl" = (/obj/machinery/door/airlock,/turf/simulated/floor/airless{icon_state = "floorgrime"},/area/mine/abandoned)
-"aXm" = (/obj/effect/decal/cleanable/blood,/turf/simulated/floor/airless,/area/mine/abandoned)
+"aXi" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor/plasteel/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/abandoned)
+"aXj" = (/obj/effect/decal/cleanable/oil,/turf/simulated/floor/plasteel/airless{icon_state = "floorgrime"},/area/mine/abandoned)
+"aXk" = (/obj/effect/decal/cleanable/generic,/turf/simulated/floor/plasteel/airless,/area/mine/abandoned)
+"aXl" = (/obj/machinery/door/airlock,/turf/simulated/floor/plasteel/airless{icon_state = "floorgrime"},/area/mine/abandoned)
+"aXm" = (/obj/effect/decal/cleanable/blood,/turf/simulated/floor/plasteel/airless,/area/mine/abandoned)
"aXn" = (/obj/structure/table,/obj/item/weapon/paper/crumpled/bloody,/turf/simulated/floor/plating/airless,/area/mine/abandoned)
"aXo" = (/obj/structure/stool/bed,/obj/effect/decal/cleanable/blood,/obj/effect/decal/remains/human,/turf/simulated/floor/plating/airless,/area/mine/abandoned)
"aXp" = (/obj/machinery/computer/arcade,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plasteel,/area/security/prison)
@@ -2623,21 +2623,21 @@
"aYw" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen)
"aYx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/gibber,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen)
"aYy" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/wall,/area/crew_quarters/kitchen)
-"aYz" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/turf/simulated/floor/plasteel{dir = 8; icon_state = "green"},/area/hydroponics)
+"aYz" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/window{name = "Bridge Deliveries"; req_access_txt = "19"},/turf/simulated/floor/plasteel{icon_state = "delivery"},/area/bridge)
"aYA" = (/obj/machinery/vending/hydronutrients,/turf/simulated/floor/plasteel{icon_state = "green"; dir = 4},/area/hydroponics)
"aYB" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/disposalpipe/junction{icon_state = "pipe-j2"; dir = 2},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aYC" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/hallway/primary/starboard{name = "Starboard Hallway"})
"aYD" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{tag = "icon-1-2"; icon_state = "1-2"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "blue"},/area/hallway/primary/starboard{name = "Starboard Hallway"})
-"aYE" = (/obj/machinery/door/airlock/glass_command{desc = "The station's command center, where the fate of Nanotrasen's trillion-dollar investment is often decided."; name = "Bridge"; req_access_txt = "19"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 8},/area/crew_quarters/heads)
-"aYF" = (/obj/structure/cable/blue{tag = "icon-1-4"; icon_state = "1-4"; d1 = 1; d2 = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"aYG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/blue{tag = "icon-4-8"; icon_state = "4-8"; d1 = 1; d2 = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"aYH" = (/obj/machinery/door/poddoor/preopen{id = "bridge blast"; name = "Bridge Blast Door"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/blue{tag = "icon-4-8"; icon_state = "4-8"; d1 = 1; d2 = 2},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"aYI" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/blue{tag = "icon-4-8"; icon_state = "4-8"; d1 = 1; d2 = 2},/obj/structure/cable/blue{tag = "icon-2-8"; icon_state = "2-8"; d1 = 1; d2 = 2},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"aYJ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/blue{tag = "icon-4-8"; icon_state = "4-8"; d1 = 1; d2 = 2},/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"aYK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/blue{tag = "icon-4-8"; icon_state = "4-8"; d1 = 1; d2 = 2},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"aYL" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/blue{tag = "icon-4-8"; icon_state = "4-8"; d1 = 1; d2 = 2},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/requests_console{announcementConsole = 1; department = "Bridge"; departmentType = 5; name = "Bridge Requests Console"; pixel_y = 30},/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"aYM" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/obj/structure/cable/blue{tag = "icon-4-8"; icon_state = "4-8"; d1 = 1; d2 = 2},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"aYN" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/blue{tag = "icon-4-8"; icon_state = "4-8"; d1 = 1; d2 = 2},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{dir = 4; icon_state = "blue"},/area/crew_quarters/heads)
+"aYE" = (/obj/machinery/vending/cigarette,/turf/simulated/floor/plasteel,/area/bridge)
+"aYF" = (/obj/machinery/vending/cola,/turf/simulated/floor/plasteel,/area/bridge)
+"aYG" = (/obj/structure/closet,/turf/simulated/floor/plasteel{icon_state = "bluecorner"},/area/bridge)
+"aYH" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plasteel,/area/bridge)
+"aYI" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "green"},/area/hydroponics)
+"aYJ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/obj/effect/landmark/start{name = "Botanist"},/turf/simulated/floor/plasteel,/area/hydroponics)
+"aYK" = (/obj/machinery/door/airlock/glass_command{desc = "The station's command center, where the fate of Nanotrasen's trillion-dollar investment is often decided."; name = "Bridge"; req_access_txt = "19"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 8},/area/bridge)
+"aYL" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/blue{tag = "icon-4-8"; icon_state = "4-8"; d1 = 1; d2 = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/bridge)
+"aYM" = (/obj/structure/cable/blue{tag = "icon-1-4"; icon_state = "1-4"; d1 = 1; d2 = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/bridge)
+"aYN" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/blue{tag = "icon-4-8"; icon_state = "4-8"; d1 = 1; d2 = 2},/obj/structure/cable/blue{tag = "icon-2-8"; icon_state = "2-8"; d1 = 1; d2 = 2},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/bridge)
"aYO" = (/obj/machinery/door/airlock/glass_command{desc = "The station's command center, where the fate of Nanotrasen's trillion-dollar investment is often decided."; name = "Bridge"; req_access_txt = "19"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/blue{tag = "icon-4-8"; icon_state = "4-8"; d1 = 1; d2 = 2},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 8},/area/bridge)
"aYP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/blue{tag = "icon-2-8"; icon_state = "2-8"; d1 = 1; d2 = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable/blue{tag = "icon-4-8"; icon_state = "4-8"; d1 = 1; d2 = 2},/obj/structure/disposalpipe/junction{tag = "icon-pipe-j1 (WEST)"; icon_state = "pipe-j1"; dir = 8},/turf/simulated/floor/plasteel,/area/bridge)
"aYQ" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/obj/structure/cable/blue{tag = "icon-4-8"; icon_state = "4-8"; d1 = 1; d2 = 2},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plasteel,/area/bridge)
@@ -2645,8 +2645,8 @@
"aYS" = (/turf/simulated/floor/plasteel{dir = 4; icon_state = "red"},/area/bridge)
"aYT" = (/obj/machinery/computer/security,/turf/simulated/floor/plasteel{dir = 8; icon_state = "red"},/area/bridge)
"aYU" = (/turf/simulated/floor/plating/asteroid/airless{tag = "icon-asteroidplating"; icon_state = "asteroidplating"},/area/mine/abandoned)
-"aYV" = (/obj/structure/closet,/obj/item/weapon/storage/toolbox/emergency,/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/abandoned)
-"aYW" = (/turf/simulated/floor/airless{icon_state = "damaged4"},/area/mine/abandoned)
+"aYV" = (/obj/structure/closet,/obj/item/weapon/storage/toolbox/emergency,/turf/simulated/floor/plasteel/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/abandoned)
+"aYW" = (/turf/simulated/floor/plasteel/airless{icon_state = "damaged4"},/area/mine/abandoned)
"aYX" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 0},/turf/simulated/wall/r_wall,/area/security/prison)
"aYY" = (/obj/machinery/vending/cigarette,/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/plasteel,/area/security/prison)
"aYZ" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plasteel,/area/security/prison)
@@ -2705,22 +2705,22 @@
"baa" = (/obj/structure/table/wood,/obj/machinery/reagentgrinder,/obj/machinery/power/apc{dir = 4; name = "Bar APC"; pixel_x = 24},/obj/structure/cable/green,/obj/item/weapon/gun/projectile/revolver/doublebarrel{name = "bartender's shotgun"},/turf/simulated/floor/wood,/area/crew_quarters/bar)
"bab" = (/obj/machinery/icecream_vat,/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen)
"bac" = (/obj/machinery/camera{c_tag = "Kitchen Cold Room"; dir = 1},/turf/simulated/floor/plasteel{icon_state = "showroomfloor"},/area/crew_quarters/kitchen)
-"bad" = (/obj/machinery/requests_console{department = "Hydroponics"; departmentType = 2; name = "Hydroponics Requests Console"; pixel_x = -32; pixel_y = 0},/turf/simulated/floor/plasteel{dir = 10; icon_state = "green"},/area/hydroponics)
-"bae" = (/obj/effect/landmark/start{name = "Botanist"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{dir = 2; icon_state = "green"},/area/hydroponics)
+"bad" = (/obj/machinery/door/poddoor/preopen{id = "bridge blast"; name = "Bridge Blast Door"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/blue{tag = "icon-4-8"; icon_state = "4-8"; d1 = 1; d2 = 2},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/bridge)
+"bae" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/blue{tag = "icon-4-8"; icon_state = "4-8"; d1 = 1; d2 = 2},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/bridge)
"baf" = (/turf/simulated/floor/plasteel{dir = 2; icon_state = "green"},/area/hydroponics)
"bag" = (/obj/machinery/vending/hydroseeds,/turf/simulated/floor/plasteel{dir = 6; icon_state = "green"},/area/hydroponics)
"bah" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/starboard{name = "Starboard Hallway"})
"bai" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/green{tag = "icon-1-2"; icon_state = "1-2"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "blue"},/area/hallway/primary/starboard{name = "Starboard Hallway"})
-"baj" = (/obj/machinery/door/airlock/glass_command{desc = "The station's command center, where the fate of Nanotrasen's trillion-dollar investment is often decided."; name = "Bridge"; req_access_txt = "19"},/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 8},/area/crew_quarters/heads)
-"bak" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"bal" = (/obj/machinery/door/poddoor/preopen{id = "bridge blast"; name = "Bridge Blast Door"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "bluecorner"},/area/crew_quarters/heads)
-"bam" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{dir = 0; icon_state = "blue"},/area/crew_quarters/heads)
-"ban" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/obj/machinery/camera{c_tag = "Bridge Fore Entrance"; dir = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "bluecorner"},/area/crew_quarters/heads)
-"bao" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"bap" = (/obj/machinery/power/apc{dir = 2; name = "Head of Personnel APC"; pixel_y = -24},/obj/structure/cable/blue,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"baq" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"bar" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; step_y = 0; on = 1; scrub_Toxins = 0; scrub_N2O = 0},/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"bas" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 4; icon_state = "blue"},/area/crew_quarters/heads)
+"baj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/blue{tag = "icon-4-8"; icon_state = "4-8"; d1 = 1; d2 = 2},/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/bridge)
+"bak" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/blue{tag = "icon-4-8"; icon_state = "4-8"; d1 = 1; d2 = 2},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/requests_console{announcementConsole = 1; department = "Bridge"; departmentType = 5; name = "Bridge Requests Console"; pixel_y = 30},/turf/simulated/floor/plasteel,/area/bridge)
+"bal" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/blue{tag = "icon-4-8"; icon_state = "4-8"; d1 = 1; d2 = 2},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{dir = 4; icon_state = "blue"},/area/bridge)
+"bam" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/obj/structure/cable/blue{tag = "icon-4-8"; icon_state = "4-8"; d1 = 1; d2 = 2},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/bridge)
+"ban" = (/obj/machinery/requests_console{department = "Hydroponics"; departmentType = 2; name = "Hydroponics Requests Console"; pixel_x = -32; pixel_y = 0},/obj/structure/table,/obj/item/weapon/crowbar/red,/obj/item/weapon/reagent_containers/glass/beaker,/turf/simulated/floor/plasteel{dir = 10; icon_state = "green"},/area/hydroponics)
+"bao" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor/plasteel{dir = 2; icon_state = "green"},/area/hydroponics)
+"bap" = (/obj/structure/table,/obj/item/weapon/reagent_containers/glass/bucket,/turf/simulated/floor/plasteel{dir = 2; icon_state = "green"},/area/hydroponics)
+"baq" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "green"},/area/hydroponics)
+"bar" = (/obj/machinery/door/airlock/glass_command{desc = "The station's command center, where the fate of Nanotrasen's trillion-dollar investment is often decided."; name = "Bridge"; req_access_txt = "19"},/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 8},/area/bridge)
+"bas" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/simulated/floor/plasteel,/area/bridge)
"bat" = (/obj/machinery/door/airlock/glass_command{desc = "The station's command center, where the fate of Nanotrasen's trillion-dollar investment is often decided."; name = "Bridge"; req_access_txt = "19"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 8},/area/bridge)
"bau" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/bridge)
"bav" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; step_y = 0; on = 1; scrub_Toxins = 0; scrub_N2O = 0},/turf/simulated/floor/plasteel,/area/bridge)
@@ -2802,7 +2802,7 @@
"bbT" = (/obj/machinery/computer/secure_data,/turf/simulated/floor/plasteel{icon_state = "red"; dir = 10},/area/security/prison)
"bbU" = (/obj/machinery/computer/security,/obj/structure/extinguisher_cabinet{pixel_y = -30; tag = "(south)"},/turf/simulated/floor/plasteel{icon_state = "red"},/area/security/brig)
"bbV" = (/obj/structure/table,/obj/machinery/cell_charger,/turf/simulated/floor/plasteel{icon_state = "red"},/area/security/brig)
-"bbW" = (/obj/structure/table,/obj/machinery/light,/obj/machinery/light_switch{dir = 2; name = "light switch"; pixel_x = 0; pixel_y = -22},/obj/item/weapon/storage/firstaid/regular,/turf/simulated/floor/plasteel{icon_state = "red"},/area/security/brig)
+"bbW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{dir = 0; icon_state = "blue"},/area/bridge)
"bbX" = (/obj/structure/table,/obj/item/weapon/book/manual/wiki/security_space_law{pixel_x = -3; pixel_y = 5},/turf/simulated/floor/plasteel{icon_state = "red"},/area/security/brig)
"bbY" = (/obj/machinery/vending/cigarette,/turf/simulated/floor/plasteel{icon_state = "red"},/area/security/brig)
"bbZ" = (/obj/machinery/vending/security,/turf/simulated/floor/plasteel{icon_state = "red"},/area/security/brig)
@@ -2822,9 +2822,9 @@
"bcn" = (/obj/structure/lattice,/obj/item/clothing/head/hardhat,/turf/space,/area/engine/engineering)
"bco" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating/airless{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/engine/engineering)
"bcp" = (/obj/structure/grille,/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating{tag = "icon-warnplate (EAST)"; icon_state = "warnplate"; dir = 4},/area/engine/engineering)
-"bcq" = (/turf/simulated/floor/plasteel{dir = 9; icon_state = "warning"},/area/engine/engineering)
+"bcq" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/hop,/obj/machinery/camera{c_tag = "Head of Personnel's Quarters"; dir = 8},/obj/machinery/status_display{pixel_y = -32; tag = "south"},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/obj/effect/landmark/start{name = "Head of Personnel"},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/hop)
"bcr" = (/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/engine/engineering)
-"bcs" = (/obj/item/weapon/wrench,/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/engine/engineering)
+"bcs" = (/obj/structure/stool/bed/chair/comfy/brown{dir = 8},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/hop)
"bct" = (/obj/machinery/light{dir = 1},/obj/machinery/door_control{id = "singularity"; name = "Shutters Control"; pixel_x = 0; pixel_y = 25; req_access_txt = "11"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/engine/engineering)
"bcu" = (/turf/simulated/floor/plasteel{dir = 5; icon_state = "warning"},/area/engine/engineering)
"bcv" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = -32; pixel_y = 0},/obj/machinery/vending/tool,/turf/simulated/floor/plasteel{dir = 8; icon_state = "yellow"},/area/engine/engineering)
@@ -2846,7 +2846,7 @@
"bcL" = (/obj/machinery/smartfridge/drinks,/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar)
"bcM" = (/obj/machinery/disposal,/obj/machinery/alarm{name = "alarm"; pixel_y = 24},/obj/structure/disposalpipe/trunk,/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar)
"bcN" = (/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar)
-"bcO" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only{dir = 8},/turf/simulated/floor/plasteel{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen)
+"bcO" = (/obj/machinery/door/poddoor/preopen{id = "bridge blast"; name = "Bridge Blast Door"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "bluecorner"},/area/bridge)
"bcP" = (/turf/simulated/floor/plasteel{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen)
"bcQ" = (/obj/machinery/vending/dinnerware,/turf/simulated/floor/plasteel{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen)
"bcR" = (/obj/machinery/light{dir = 1},/obj/structure/table,/obj/machinery/microwave,/turf/simulated/floor/plasteel{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen)
@@ -2889,7 +2889,7 @@
"bdC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/security/brig)
"bdD" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/security/brig)
"bdE" = (/obj/machinery/door/airlock/glass_security{id_tag = "innerbrig"; name = "Brig"; req_access_txt = "63"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 4},/area/security/brig)
-"bdF" = (/obj/machinery/light_switch{dir = 1; pixel_y = 22},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 8},/area/security/brig)
+"bdF" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/bridge)
"bdG" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/flasher{id = "brigentry"; pixel_x = 0; pixel_y = 24},/turf/simulated/floor/plasteel,/area/security/brig)
"bdH" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/camera{c_tag = "Brig Access"; dir = 2},/turf/simulated/floor/plasteel,/area/security/brig)
"bdI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/poddoor/preopen{id = "Secure Gate"; name = "Security Blast Door"},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 4},/area/security/brig)
@@ -2899,16 +2899,16 @@
"bdM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/newscaster{dir = 8; pixel_x = 32; pixel_y = 0; tag = "east"},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/port{name = "Port Hallway"})
"bdN" = (/obj/structure/lattice,/obj/item/weapon/wirecutters,/turf/space,/area/engine/engineering)
"bdO" = (/obj/structure/grille,/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating{tag = "icon-warnplate (EAST)"; icon_state = "warnplate"; dir = 4},/area/engine/engineering)
-"bdP" = (/obj/item/weapon/screwdriver,/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/engine/engineering)
+"bdP" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/rd,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; step_y = 0; on = 1; scrub_Toxins = 0; scrub_N2O = 0},/obj/effect/landmark/start{name = "Research Director"},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/rd)
"bdQ" = (/obj/structure/particle_accelerator/particle_emitter/left{dir = 8},/turf/simulated/floor/plating,/area/engine/engineering)
-"bdR" = (/obj/effect/landmark/start{name = "Station Engineer"},/turf/simulated/floor/plasteel,/area/engine/engineering)
+"bdR" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/hos,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; step_y = 0; on = 1; scrub_Toxins = 0; scrub_N2O = 0},/obj/effect/landmark/start{name = "Head of Security"},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/hos)
"bdS" = (/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/particle_accelerator/control_box,/turf/simulated/floor/plating,/area/engine/engineering)
"bdT" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plasteel{icon_state = "warningcorner"; dir = 8},/area/engine/engineering)
"bdU" = (/obj/structure/table,/obj/item/weapon/book/manual/engineering_particle_accelerator,/obj/machinery/camera{c_tag = "Engineering Center"; network = list("SS13","Singularity")},/turf/simulated/floor/plasteel{dir = 5; icon_state = "warning"},/area/engine/engineering)
"bdV" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/computer/security/telescreen{desc = "Used for monitoring the singularity engine safely."; dir = 4; name = "Singularity Monitor"; network = list("Singularity"); pixel_x = -32; pixel_y = 0},/turf/simulated/floor/plasteel{dir = 1; icon_state = "yellowcorner"},/area/engine/engineering)
"bdW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/simulated/floor/plasteel,/area/engine/engineering)
"bdX" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/item/weapon/airlock_painter,/turf/simulated/floor/plasteel,/area/engine/engineering)
-"bdY" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/item/clothing/gloves/yellow,/obj/item/weapon/grenade/chem_grenade/metalfoam,/obj/item/weapon/grenade/chem_grenade/metalfoam,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/plasteel,/area/engine/engineering)
+"bdY" = (/obj/structure/table,/obj/item/weapon/crowbar,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/clothing/gloves/color/fyellow,/obj/machinery/light,/obj/machinery/status_display{pixel_y = -32; tag = "south"},/turf/simulated/floor/plasteel,/area/storage/primary{name = "Tool Storage"})
"bdZ" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/engine/engineering)
"bea" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light_switch{dir = 4; pixel_x = 22},/turf/simulated/floor/plasteel{dir = 4; icon_state = "yellow"},/area/engine/engineering)
"beb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall/r_wall,/area/engine/engineering)
@@ -2927,9 +2927,9 @@
"beo" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar)
"bep" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar)
"beq" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar)
-"ber" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar)
-"bes" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall,/area/crew_quarters/kitchen)
-"bet" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28; tag = "west"},/turf/simulated/floor/plasteel{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen)
+"ber" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/obj/machinery/camera{c_tag = "Bridge Fore Entrance"; dir = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "bluecorner"},/area/bridge)
+"bes" = (/obj/machinery/power/apc{dir = 2; name = "Head of Personnel APC"; pixel_y = -24},/obj/structure/cable/blue,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/bridge)
+"bet" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 4; icon_state = "blue"},/area/bridge)
"beu" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen)
"bev" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen)
"bew" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/glass{desc = "The workplace of the diligent station chef, with enough ingredients to work up a masterpiece."; name = "Kitchen"; req_access_txt = "28"},/turf/simulated/floor/plasteel{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen)
@@ -3007,7 +3007,7 @@
"bfQ" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plasteel,/area/engine/engineering)
"bfR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/door/airlock/glass_engineering{name = "Engineering Access"; req_access_txt = "32"; req_one_access_txt = "0"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "yellow"},/area/engine/engineering)
"bfS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel,/area/hallway/primary/starboard{name = "Starboard Hallway"})
-"bfT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plasteel,/area/hallway/primary/starboard{name = "Starboard Hallway"})
+"bfT" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plasteel,/area/hallway/primary/starboard{name = "Starboard Hallway"})
"bfU" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 4},/area/hallway/primary/starboard{name = "Starboard Hallway"})
"bfV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar)
"bfW" = (/obj/effect/landmark/start{name = "Bartender"},/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar)
@@ -3026,9 +3026,9 @@
"bgj" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor/wood,/area/crew_quarters/heads)
"bgk" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/wood,/area/crew_quarters/heads)
"bgl" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/turf/simulated/floor/fancy/carpet,/area/crew_quarters/heads)
-"bgm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/landmark{name = "lightsout"},/turf/simulated/floor/wood,/area/crew_quarters/heads)
+"bgm" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless{tag = "icon-warnplate (SOUTHEAST)"; icon_state = "warnplate"; dir = 6},/area/engine/engineering)
"bgn" = (/obj/machinery/door/airlock/command{desc = "The office of the hero the station deserves, but not the one it needs right now. They also change IDs on occasion."; name = "Head of Personnel's Office"; req_access = null; req_access_txt = "57"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/wood,/area/bridge)
-"bgo" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/blue{tag = "icon-1-4"; icon_state = "1-4"; d1 = 1; d2 = 2},/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 8},/area/bridge)
+"bgo" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating/airless{tag = "icon-warnplate (SOUTHWEST)"; icon_state = "warnplate"; dir = 10},/area/engine/engineering)
"bgp" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/blue{tag = "icon-2-8"; icon_state = "2-8"; d1 = 1; d2 = 2},/turf/simulated/floor/plasteel,/area/bridge)
"bgq" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 4},/area/bridge)
"bgr" = (/obj/machinery/computer/communications,/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 8},/area/bridge)
@@ -3066,7 +3066,7 @@
"bgX" = (/obj/machinery/door_control{id = "singularity"; name = "Shutters Control"; pixel_x = -25; pixel_y = 0; req_access_txt = "11"},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/plasteel{dir = 8; icon_state = "yellowcorner"},/area/engine/engineering)
"bgY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/stool/bed/chair/office/dark{dir = 4},/obj/effect/landmark/start{name = "Station Engineer"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/engine/engineering)
"bgZ" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor/plasteel,/area/engine/engineering)
-"bha" = (/obj/structure/table,/obj/item/clothing/gloves/black,/obj/item/clothing/gloves/black,/obj/item/weapon/storage/belt/utility/full,/obj/item/weapon/storage/belt/utility/full,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/simulated/floor/plasteel,/area/engine/engineering)
+"bha" = (/obj/structure/cable/green{tag = "icon-4-8"; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/reagent_dispensers/watertank,/obj/machinery/light{dir = 1},/turf/simulated/floor/plasteel{dir = 1; icon_state = "green"},/area/hydroponics)
"bhb" = (/obj/structure/stool/bed/chair/office/dark{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/landmark/start{name = "Station Engineer"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/plasteel,/area/engine/engineering)
"bhc" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/camera{c_tag = "Engineering Starboard"; dir = 8},/turf/simulated/floor/plasteel{dir = 4; icon_state = "yellow"},/area/engine/engineering)
"bhd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall/r_wall,/area/engine/engineering)
@@ -3081,7 +3081,7 @@
"bhm" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "yellowcorner"},/area/hallway/primary/starboard{name = "Starboard Hallway"})
"bhn" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar)
"bho" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/food/drinks/h_chocolate,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar)
-"bhp" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/food/drinks/bottle/gin,/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar)
+"bhp" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; step_y = 0; on = 1; scrub_Toxins = 0; scrub_N2O = 0},/turf/simulated/floor/plasteel,/area/bridge)
"bhq" = (/obj/structure/table/reinforced,/obj/machinery/newscaster{pixel_x = 32; pixel_y = 0},/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar)
"bhr" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/simulated/floor/plasteel{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen)
"bhs" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor/plasteel{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen)
@@ -3125,9 +3125,9 @@
"bie" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating/airless{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/engine/engineering)
"bif" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/field/generator,/turf/simulated/floor/plating/airless{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/engine/engineering)
"big" = (/obj/structure/grille,/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = -32},/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating{tag = "icon-warnplate (EAST)"; icon_state = "warnplate"; dir = 4},/area/engine/engineering)
-"bih" = (/turf/simulated/floor/plasteel{dir = 10; icon_state = "warning"},/area/engine/engineering)
+"bih" = (/obj/item/weapon/wrench,/turf/simulated/floor/plasteel{dir = 9; icon_state = "warning"},/area/engine/engineering)
"bii" = (/turf/simulated/floor/plasteel{icon_state = "warning"},/area/engine/engineering)
-"bij" = (/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/turf/simulated/floor/plasteel{icon_state = "warning"},/area/engine/engineering)
+"bij" = (/obj/item/weapon/screwdriver,/turf/simulated/floor/plating,/area/engine/engineering)
"bik" = (/obj/machinery/light,/obj/machinery/door_control{id = "singularity"; name = "Shutters Control"; pixel_x = 0; pixel_y = -25; req_access_txt = "11"},/turf/simulated/floor/plasteel{icon_state = "warning"},/area/engine/engineering)
"bil" = (/turf/simulated/floor/plasteel{dir = 6; icon_state = "warning"},/area/engine/engineering)
"bim" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = -32; pixel_y = 0},/obj/machinery/vending/engivend,/turf/simulated/floor/plasteel{dir = 8; icon_state = "yellow"},/area/engine/engineering)
@@ -3271,8 +3271,8 @@
"bkU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plasteel,/area/engine/engineering)
"bkV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel,/area/engine/engineering)
"bkW" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel,/area/engine/engineering)
-"bkX" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plasteel,/area/engine/engineering)
-"bkY" = (/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/machinery/power/smes,/turf/simulated/floor/plasteel{dir = 4; icon_state = "yellow"},/area/engine/engineering)
+"bkX" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/engine/engineering)
+"bkY" = (/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/machinery/power/smes{input_attempt = 1},/turf/simulated/floor/plasteel{dir = 4; icon_state = "yellow"},/area/engine/engineering)
"bkZ" = (/obj/machinery/door/airlock/external{name = "Engineering External Access"; req_access = null; req_access_txt = "10;13"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/engine/engineering)
"bla" = (/obj/machinery/computer/secure_data,/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 8},/area/engine/engineering)
"blb" = (/obj/structure/stool/bed/chair/office/dark{dir = 8},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor/plasteel,/area/engine/engineering)
@@ -3289,12 +3289,12 @@
"blm" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 8},/area/hallway/primary/starboard{name = "Starboard Hallway"})
"bln" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/simulated/floor/plasteel,/area/hallway/primary/starboard{name = "Starboard Hallway"})
"blo" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/green{tag = "icon-1-2"; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 4; icon_state = "blue"},/area/hallway/primary/starboard{name = "Starboard Hallway"})
-"blp" = (/obj/machinery/door/airlock/glass_command{desc = "The station's command center, where the fate of Nanotrasen's trillion-dollar investment is often decided."; name = "Bridge"; req_access_txt = "19"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 8},/area/crew_quarters/heads)
-"blq" = (/obj/machinery/door/poddoor/preopen{id = "bridge blast"; name = "Bridge Blast Door"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 4; icon_state = "bluecorner"},/area/crew_quarters/heads)
-"blr" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/simulated/floor/plasteel{dir = 1; icon_state = "blue"},/area/crew_quarters/heads)
-"bls" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/camera{c_tag = "Bridge Aft Entrance"; dir = 2},/turf/simulated/floor/plasteel{dir = 1; icon_state = "bluecorner"},/area/crew_quarters/heads)
-"blt" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/light{dir = 1},/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"blu" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
+"blp" = (/turf/simulated/wall/r_wall,/area/hallway/primary/starboard{name = "Starboard Hallway"})
+"blq" = (/obj/structure/table,/obj/machinery/light,/obj/item/weapon/storage/firstaid/regular,/turf/simulated/floor/plasteel{icon_state = "red"},/area/security/brig)
+"blr" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28; tag = "west"},/turf/simulated/floor/plasteel{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen)
+"bls" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 8},/area/security/brig)
+"blt" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only{dir = 8},/turf/simulated/floor/plasteel{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen)
+"blu" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/simulated/floor/plasteel{dir = 1; icon_state = "blue"},/area/bridge)
"blv" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/bridge)
"blw" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor/plasteel,/area/bridge)
"blx" = (/turf/simulated/floor/plasteel{dir = 2; icon_state = "whitecorner"},/area/bridge)
@@ -3337,7 +3337,7 @@
"bmi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "yellowcorner"},/area/engine/engineering)
"bmj" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "yellow"},/area/engine/engineering)
"bmk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plasteel{icon_state = "yellow"},/area/engine/engineering)
-"bml" = (/obj/machinery/power/terminal{dir = 1},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/table,/obj/item/clothing/gloves/yellow,/obj/item/weapon/storage/toolbox/electrical,/turf/simulated/floor/plasteel{dir = 6; icon_state = "yellow"},/area/engine/engineering)
+"bml" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/item/clothing/gloves/color/yellow,/obj/item/weapon/grenade/chem_grenade/metalfoam,/obj/item/weapon/grenade/chem_grenade/metalfoam,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/plasteel,/area/engine/engineering)
"bmm" = (/turf/simulated/floor/plating,/area/space)
"bmn" = (/obj/structure/table,/obj/structure/reagent_dispensers/peppertank{pixel_x = -32},/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/machinery/newscaster{pixel_x = 0; pixel_y = -30},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 10},/area/engine/engineering)
"bmo" = (/obj/structure/table,/obj/item/weapon/book/manual/wiki/security_space_law,/turf/simulated/floor/plasteel{icon_state = "red"},/area/engine/engineering)
@@ -3349,12 +3349,12 @@
"bmu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar)
"bmv" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar)
"bmw" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel,/area/hallway/primary/starboard{name = "Starboard Hallway"})
-"bmx" = (/obj/machinery/door/poddoor/preopen{id = "bridge blast"; name = "Bridge Blast Door"},/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"bmy" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"bmz" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"bmA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/newscaster{pixel_y = -32},/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"bmB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"bmC" = (/obj/structure/cable/blue{tag = "icon-2-4"; icon_state = "2-4"; d1 = 1; d2 = 2},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/simulated/floor/plasteel{dir = 4; icon_state = "blue"},/area/crew_quarters/heads)
+"bmx" = (/obj/machinery/door/poddoor/preopen{id = "bridge blast"; name = "Bridge Blast Door"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 4; icon_state = "bluecorner"},/area/bridge)
+"bmy" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/light{dir = 1},/turf/simulated/floor/plasteel,/area/bridge)
+"bmz" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/camera{c_tag = "Bridge Aft Entrance"; dir = 2},/turf/simulated/floor/plasteel{dir = 1; icon_state = "bluecorner"},/area/bridge)
+"bmA" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/simulated/floor/plasteel,/area/bridge)
+"bmB" = (/obj/machinery/door/poddoor/preopen{id = "bridge blast"; name = "Bridge Blast Door"},/turf/simulated/floor/plasteel,/area/bridge)
+"bmC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/simulated/floor/plasteel,/area/bridge)
"bmD" = (/obj/machinery/door/airlock/glass_command{desc = "The station's command center, where the fate of Nanotrasen's trillion-dollar investment is often decided."; name = "Bridge"; req_access_txt = "19"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/blue{tag = "icon-4-8"; icon_state = "4-8"; d1 = 1; d2 = 2},/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 8},/area/bridge)
"bmE" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/blue{tag = "icon-1-8"; icon_state = "1-8"; d1 = 1; d2 = 2},/turf/simulated/floor/plasteel,/area/bridge)
"bmF" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/bridge)
@@ -3374,7 +3374,7 @@
"bmT" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = -32},/obj/machinery/light/small,/turf/simulated/floor/plating/airless{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/engine/engineering)
"bmU" = (/turf/simulated/floor/plating/airless{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/engine/engineering)
"bmV" = (/turf/simulated/floor/plating/airless{tag = "icon-warnplatecorner (WEST)"; icon_state = "warnplatecorner"; dir = 8},/area/engine/engineering)
-"bmW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating/airless{tag = "icon-warnplate (NORTH)"; icon_state = "warnplate"; dir = 1},/area/engine/engineering)
+"bmW" = (/obj/effect/landmark/start{name = "Station Engineer"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/engine/engineering)
"bmX" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating/airless{tag = "icon-warnplate (NORTH)"; icon_state = "warnplate"; dir = 1},/area/engine/engineering)
"bmY" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating/airless{tag = "icon-warnplate (NORTH)"; icon_state = "warnplate"; dir = 1},/area/engine/engineering)
"bmZ" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless{tag = "icon-warnplate (NORTH)"; icon_state = "warnplate"; dir = 1},/area/engine/engineering)
@@ -3398,10 +3398,10 @@
"bnr" = (/obj/structure/table/wood,/obj/item/weapon/kitchen/utensil/fork,/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar)
"bns" = (/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/snacks/sliceable/store/birthdaycake,/turf/simulated/floor/plasteel{icon_state = "bar"},/area/crew_quarters/bar)
"bnt" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/green{tag = "icon-1-2"; icon_state = "1-2"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "bluecorner"},/area/hallway/primary/starboard{name = "Starboard Hallway"})
-"bnu" = (/obj/structure/closet,/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"bnv" = (/obj/machinery/vending/snack,/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"bnw" = (/obj/machinery/vending/coffee,/turf/simulated/floor/plasteel,/area/crew_quarters/heads)
-"bnx" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plasteel{dir = 4; icon_state = "bluecorner"},/area/crew_quarters/heads)
+"bnu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/newscaster{pixel_y = -32},/turf/simulated/floor/plasteel,/area/bridge)
+"bnv" = (/obj/structure/cable/blue{tag = "icon-2-4"; icon_state = "2-4"; d1 = 1; d2 = 2},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/simulated/floor/plasteel{dir = 4; icon_state = "blue"},/area/bridge)
+"bnw" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor/plasteel,/area/bridge)
+"bnx" = (/obj/structure/closet,/turf/simulated/floor/plasteel,/area/bridge)
"bny" = (/obj/machinery/light_switch{dir = 8; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel,/area/bridge)
"bnz" = (/obj/structure/stool/bed/chair/office/dark{dir = 4},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitehall"},/area/bridge)
"bnA" = (/obj/machinery/computer/med_data,/turf/simulated/floor/plasteel{dir = 8; icon_state = "whitehall"},/area/bridge)
@@ -3450,7 +3450,7 @@
"bor" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 8},/area/hallway/primary/starboard{name = "Starboard Hallway"})
"bos" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor/plasteel,/area/hallway/primary/starboard{name = "Starboard Hallway"})
"bot" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/green{tag = "icon-1-2"; icon_state = "1-2"},/obj/machinery/camera{c_tag = "Starboard Hallway Aft Starboard"; dir = 8},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/starboard{name = "Starboard Hallway"})
-"bou" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/door/airlock/maintenance{name = "Maintenance Access"; req_access_txt = "19"; req_one_access_txt = "0"},/turf/simulated/floor/plating,/area/crew_quarters/heads)
+"bou" = (/obj/machinery/vending/coffee,/turf/simulated/floor/plasteel,/area/bridge)
"bov" = (/obj/structure/closet/emcloset,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/plasteel,/area/bridge)
"bow" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor/plasteel,/area/bridge)
"box" = (/obj/structure/extinguisher_cabinet{pixel_y = -30; tag = "(south)"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitehall"},/area/bridge)
@@ -3497,8 +3497,8 @@
"bpm" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/security/nuke_storage)
"bpn" = (/turf/space,/area/security/nuke_storage)
"bpo" = (/turf/simulated/wall,/area/security/nuke_storage)
-"bpp" = (/turf/simulated/floor/plating,/area/security/nuke_storage)
-"bpq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/security/nuke_storage)
+"bpp" = (/obj/machinery/vending/snack,/turf/simulated/floor/plasteel,/area/bridge)
+"bpq" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plasteel{dir = 4; icon_state = "bluecorner"},/area/bridge)
"bpr" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/wall/r_wall,/area/bridge)
"bps" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/door/airlock/command{name = "Conference Room"; req_access = null; req_access_txt = "19"},/turf/simulated/floor/wood,/area/bridge)
"bpt" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/requests_console{announcementConsole = 1; department = "Head of Security's Desk"; departmentType = 5; name = "Head of Security Requests Console"; pixel_x = -32; pixel_y = 0},/turf/simulated/floor/wood,/area/security/hos)
@@ -3581,8 +3581,8 @@
"bqS" = (/obj/structure/closet/secure_closet/freezer/money,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 8},/area/security/nuke_storage)
"bqT" = (/obj/structure/closet/crate,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/item/weapon/coin/silver,/obj/item/weapon/coin/iron,/obj/item/weapon/coin/iron,/obj/item/weapon/coin/gold,/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 8},/area/security/nuke_storage)
"bqU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/wall/r_wall,/area/security/nuke_storage)
-"bqV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/security/nuke_storage)
-"bqW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/security/nuke_storage)
+"bqV" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/door/airlock/maintenance{name = "Maintenance Access"; req_access_txt = "19"; req_one_access_txt = "0"},/turf/simulated/floor/plating,/area/bridge)
+"bqW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
"bqX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/wall,/area/bridge)
"bqY" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/simulated/floor/wood,/area/bridge)
"bqZ" = (/turf/simulated/floor/fancy/carpet,/area/bridge)
@@ -3660,13 +3660,13 @@
"bst" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=StAF1"; location = "StAF2"},/turf/simulated/floor/plasteel,/area/hallway/primary/starboard{name = "Starboard Hallway"})
"bsu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{tag = "icon-1-2"; icon_state = "1-2"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warning"},/area/hallway/primary/starboard{name = "Starboard Hallway"})
"bsv" = (/turf/simulated/floor/plasteel{tag = "icon-warndark (WEST)"; icon_state = "warndark"; dir = 8},/area/security/nuke_storage)
-"bsw" = (/obj/machinery/door/airlock/vault{req_access_txt = "53"; req_one_access_txt = "0"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/nuke_storage)
+"bsw" = (/obj/machinery/door/airlock/vault{icon_state = "door_locked"; locked = 1; req_access_txt = "53"; req_one_access_txt = "0"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/nuke_storage)
"bsx" = (/mob/living/simple_animal/mouse/brown/Tom,/turf/simulated/floor/plasteel{tag = "icon-vault (NORTHWEST)"; icon_state = "vault"; dir = 9},/area/security/nuke_storage)
"bsy" = (/obj/machinery/nuclearbomb,/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 8},/area/security/nuke_storage)
"bsz" = (/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/nuke_storage)
"bsA" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/nuke_storage)
"bsB" = (/obj/machinery/power/apc{dir = 8; name = "Vault APC"; pixel_x = -25},/obj/structure/cable/blue{tag = "icon-0-4"; icon_state = "0-4"; d1 = 1; d2 = 2},/turf/simulated/floor/plating,/area/security/nuke_storage)
-"bsC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/blue{tag = "icon-1-8"; icon_state = "1-8"; d1 = 1; d2 = 2},/turf/simulated/floor/plating,/area/security/nuke_storage)
+"bsC" = (/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
"bsD" = (/obj/machinery/status_display,/turf/simulated/wall,/area/bridge)
"bsE" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/wood,/area/bridge)
"bsF" = (/obj/structure/table/wood,/obj/item/weapon/storage/fancy/donut_box,/turf/simulated/floor/fancy/carpet,/area/bridge)
@@ -3691,7 +3691,7 @@
"bsY" = (/obj/structure/transit_tube{tag = "icon-NW-SE"; icon_state = "NW-SE"},/turf/simulated/floor/plating/airless,/area/space)
"bsZ" = (/obj/structure/table,/obj/item/weapon/storage/box/cups,/turf/simulated/floor/plasteel{icon_state = "yellow"; dir = 10},/area/engine/engineering)
"bta" = (/obj/structure/table,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plasteel{icon_state = "yellow"},/area/engine/engineering)
-"btb" = (/obj/structure/table,/obj/item/clothing/gloves/yellow,/obj/item/weapon/storage/toolbox/electrical,/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{icon_state = "yellow"},/area/engine/engineering)
+"btb" = (/obj/structure/table,/obj/item/clothing/gloves/color/black,/obj/item/clothing/gloves/color/black,/obj/item/weapon/storage/belt/utility/full,/obj/item/weapon/storage/belt/utility/full,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/simulated/floor/plasteel,/area/engine/engineering)
"btc" = (/obj/structure/reagent_dispensers/water_cooler,/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{icon_state = "yellow"},/area/engine/engineering)
"btd" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/simulated/floor/plasteel{icon_state = "yellow"},/area/engine/engineering)
"bte" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/plasteel{dir = 6; icon_state = "yellow"},/area/engine/engineering)
@@ -3710,7 +3710,7 @@
"btr" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating{tag = "icon-warnplatecorner (EAST)"; icon_state = "warnplatecorner"; dir = 4},/area/security/nuke_storage)
"bts" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/nuke_storage)
"btt" = (/obj/item/weapon/storage/secure/safe{pixel_x = 32},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/nuke_storage)
-"btu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plating,/area/security/nuke_storage)
+"btu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
"btv" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/simulated/floor/wood,/area/bridge)
"btw" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor/fancy/carpet,/area/bridge)
"btx" = (/obj/structure/stool/bed/chair/comfy/beige{dir = 1; icon_state = "comfychair"},/turf/simulated/floor/fancy/carpet,/area/bridge)
@@ -3746,8 +3746,8 @@
"bub" = (/obj/structure/closet{name = "Contraband Locker"},/turf/simulated/floor/plasteel{icon_state = "vault"; dir = 8},/area/security/nuke_storage)
"buc" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 29; tag = "east"},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/security/nuke_storage)
"bud" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/wall/r_wall,/area/security/nuke_storage)
-"bue" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/security/nuke_storage)
-"buf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/security/nuke_storage)
+"bue" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
+"buf" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
"bug" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall,/area/bridge)
"buh" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor/wood,/area/bridge)
"bui" = (/obj/machinery/newscaster{pixel_y = -32},/turf/simulated/floor/wood,/area/bridge)
@@ -3791,7 +3791,7 @@
"buU" = (/obj/machinery/door/airlock{desc = "Basic human needs haven't changed much over the centuries."; name = "Restroom"; req_access_txt = "0"},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
"buV" = (/obj/structure/disposalpipe/segment,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28; tag = "west"},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 1},/area/hallway/primary/starboard{name = "Starboard Hallway"})
"buW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/green{tag = "icon-1-2"; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/starboard{name = "Starboard Hallway"})
-"buX" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/security/nuke_storage)
+"buX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/blue{tag = "icon-1-8"; icon_state = "1-8"; d1 = 1; d2 = 2},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
"buY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/simulated/floor/plasteel{dir = 4; icon_state = "blue"},/area/crew_quarters/courtroom)
"buZ" = (/obj/structure/table/wood,/obj/item/device/radio/intercom{broadcasting = 1; dir = 8; listening = 0; name = "Station Intercom (Court)"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 8},/area/crew_quarters/courtroom)
"bva" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/courtroom)
@@ -3805,7 +3805,7 @@
"bvi" = (/obj/machinery/door/airlock/glass{name = "Aft Port Transit"},/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 8},/area/maintenance/asteroidstation/transit/aft_port)
"bvj" = (/turf/simulated/floor/plasteel{icon_state = "warningcorner"; dir = 2},/area/maintenance/asteroidstation/transit/aft_port)
"bvk" = (/turf/simulated/floor/plasteel{icon_state = "warning"},/area/maintenance/asteroidstation/transit/aft_port)
-"bvl" = (/obj/structure/stool/bed/chair{dir = 4},/turf/simulated/floor/plasteel{icon_state = "warning"},/area/maintenance/asteroidstation/transit/aft_port)
+"bvl" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/heads)
"bvm" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating{tag = "icon-warnplatecorner (NORTH)"; icon_state = "warnplatecorner"; dir = 1},/area/maintenance/asteroidstation/transit/aft_port)
"bvn" = (/obj/structure/transit_tube{tag = "icon-N-SW"; icon_state = "N-SW"},/turf/simulated/floor/plating/airless,/area/space)
"bvo" = (/turf/simulated/wall/r_wall,/area/maintenance/asteroidstation/transit/aft_starboard)
@@ -3842,7 +3842,7 @@
"bvT" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/simulated/floor/plasteel,/area/crew_quarters/courtroom)
"bvU" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/stool/bed/chair{dir = 8},/turf/simulated/floor/plasteel{icon_state = "redcorner"; dir = 4},/area/crew_quarters/courtroom)
"bvV" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 8},/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/crew_quarters/courtroom)
-"bvW" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/turf/simulated/floor/plasteel{icon_state = "redcorner"; dir = 1},/area/hallway/primary/port{name = "Port Hallway"})
+"bvW" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/blue{tag = "icon-1-4"; icon_state = "1-4"; d1 = 1; d2 = 2},/obj/effect/landmark{name = "lightsout"},/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 8},/area/bridge)
"bvX" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 4},/area/hallway/primary/port{name = "Port Hallway"})
"bvY" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/transit/aft_port)
"bvZ" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warning"},/area/maintenance/asteroidstation/transit/aft_port)
@@ -3943,7 +3943,7 @@
"bxQ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
"bxR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
"bxS" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
-"bxT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
+"bxT" = (/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/turf/simulated/floor/plasteel{dir = 10; icon_state = "warning"},/area/engine/engineering)
"bxU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/green{tag = "icon-2-4"; icon_state = "2-4"},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
"bxV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable/green{tag = "icon-4-8"; icon_state = "4-8"},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
"bxW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/door/firedoor/border_only{tag = "icon-door_open (EAST)"; icon_state = "door_open"; dir = 4},/obj/structure/cable/green{tag = "icon-4-8"; icon_state = "4-8"},/obj/machinery/camera{c_tag = "Aft Dormitory"},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
@@ -3978,7 +3978,7 @@
"byz" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 3; name = "3maintenance loot spawner"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/aft_interior)
"byA" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/aft_interior)
"byB" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "Aft Starboard Transit APC"; pixel_x = 24},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/transit/aft_starboard)
-"byC" = (/obj/structure/stool/bed/chair{dir = 4},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/light_switch{dir = 2; name = "light switch"; pixel_x = 0; pixel_y = -22},/turf/simulated/floor/plasteel,/area/maintenance/asteroidstation/transit/aft_starboard)
+"byC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating/airless{tag = "icon-warnplate (NORTHEAST)"; icon_state = "warnplate"; dir = 5},/area/engine/engineering)
"byD" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel,/area/maintenance/asteroidstation/transit/aft_starboard)
"byE" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plasteel,/area/maintenance/asteroidstation/transit/aft_starboard)
"byF" = (/obj/machinery/door/firedoor/border_only{dir = 8},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
@@ -3986,11 +3986,11 @@
"byH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
"byI" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
"byJ" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
-"byK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
+"byK" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating/airless{tag = "icon-warnplate (NORTHWEST)"; icon_state = "warnplate"; dir = 9},/area/engine/engineering)
"byL" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/landmark{name = "lightsout"},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
-"byM" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
+"byM" = (/obj/structure/stool/bed/chair{dir = 4},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/plasteel{icon_state = "warning"},/area/maintenance/asteroidstation/transit/aft_port)
"byN" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
-"byO" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
+"byO" = (/obj/structure/stool/bed/chair{dir = 4},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/light_switch{dir = 2; name = "light switch"; pixel_x = 0; pixel_y = -22},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/plasteel,/area/maintenance/asteroidstation/transit/aft_starboard)
"byP" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
"byQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable/green{tag = "icon-1-2"; icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
"byR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
@@ -4012,10 +4012,10 @@
"bzh" = (/obj/machinery/atmospherics/binary/pump/on{dir = 4},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
"bzi" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/airlock/atmos{name = "Brig Atmospheric Control"; req_access_txt = "24"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
"bzj" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
-"bzk" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
+"bzk" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
"bzl" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/airlock/maintenance{name = "Tribunal Maintenance"; req_access_txt = "42"; req_one_access_txt = "0"},/turf/simulated/floor/plating,/area/crew_quarters/courtroom)
"bzm" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance{name = "Tribunal Maintenance"; req_access_txt = "63"; req_one_access_txt = "0"},/turf/simulated/floor/plating,/area/crew_quarters/courtroom)
-"bzn" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/central{name = "Aft Central Hallway"})
+"bzn" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
"bzo" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/hallway/primary/central{name = "Aft Central Hallway"})
"bzp" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/status_display{pixel_x = 32; pixel_y = 0; tag = "east"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/central{name = "Aft Central Hallway"})
"bzq" = (/obj/machinery/hydroponics/constructable,/turf/simulated/floor/plasteel{tag = "icon-greenfull"; icon_state = "greenfull"; dir = 2},/area/hallway/primary/central{name = "Aft Central Hallway"})
@@ -4049,16 +4049,16 @@
"bzS" = (/obj/machinery/atmospherics/binary/pump/on{dir = 8},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
"bzT" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/turf/simulated/wall,/area/maintenance/asteroidstation/brig)
"bzU" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 10},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
-"bzV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
+"bzV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
"bzW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
"bzX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
"bzY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
-"bzZ" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
-"bAa" = (/obj/machinery/power/apc{dir = 1; name = "Tribunal APC"; pixel_x = 0; pixel_y = 25},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/crew_quarters/courtroom)
-"bAb" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 6},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
-"bAc" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
-"bAd" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/turf/simulated/wall,/area/hallway/primary/central{name = "Aft Central Hallway"})
-"bAe" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supplymain/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/central{name = "Aft Central Hallway"})
+"bzZ" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
+"bAa" = (/obj/machinery/power/apc{dir = 1; name = "Tribunal APC"; pixel_x = 25; pixel_y = 0},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plating,/area/crew_quarters/courtroom)
+"bAb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
+"bAc" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "yellowcorner"},/area/hallway/primary/central{name = "Aft Central Hallway"})
+"bAd" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
+"bAe" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/obj/machinery/computer/mech_bay_power_console,/turf/simulated/floor/plasteel,/area/assembly/chargebay)
"bAf" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/junction{dir = 8; icon_state = "pipe-j2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/simulated/floor/plasteel,/area/hallway/primary/central{name = "Aft Central Hallway"})
"bAg" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/hallway/primary/central{name = "Aft Central Hallway"})
"bAh" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 1},/area/hallway/primary/central{name = "Aft Central Hallway"})
@@ -4091,7 +4091,7 @@
"bAI" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/status_display{pixel_y = 32; tag = "north"},/obj/structure/disposalpipe/sortjunction{dir = 8; icon_state = "pipe-j2s"; sortType = 9},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 1},/area/hallway/primary/central{name = "Aft Central Hallway"})
"bAJ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plasteel,/area/hallway/primary/central{name = "Aft Central Hallway"})
"bAK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/hallway/primary/central{name = "Aft Central Hallway"})
-"bAL" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 4},/area/hallway/primary/central{name = "Aft Central Hallway"})
+"bAL" = (/obj/machinery/power/terminal{dir = 1},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/table,/obj/item/clothing/gloves/color/yellow,/obj/item/weapon/storage/toolbox/electrical,/turf/simulated/floor/plasteel{dir = 6; icon_state = "yellow"},/area/engine/engineering)
"bAM" = (/obj/machinery/door/airlock{id_tag = "Dorm1s"; name = "Cabin 1"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
"bAN" = (/obj/machinery/door/airlock{id_tag = "Dorm2s"; name = "Cabin 2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
"bAO" = (/obj/machinery/door/airlock{id_tag = "Dorm3s"; name = "Cabin 3"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
@@ -4113,10 +4113,10 @@
"bBe" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
"bBf" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
"bBg" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
-"bBh" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
-"bBi" = (/obj/machinery/atmospherics/pipe/manifold/supplymain/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
-"bBj" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/door/airlock/maintenance{name = "Maintenance Access"; req_access_txt = "0"; req_one_access_txt = "7; 8; 12; 17; 29; 30; 42; 47; 55; 63"},/turf/simulated/floor/plating,/area/hallway/primary/central{name = "Aft Central Hallway"})
-"bBk" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/central{name = "Aft Central Hallway"})
+"bBh" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 6},/turf/simulated/floor/mech_bay_recharge_floor,/area/assembly/chargebay)
+"bBi" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/obj/structure/extinguisher_cabinet{pixel_y = 30; tag = "(north)"},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
+"bBj" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
+"bBk" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supplymain/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "yellow"},/area/hallway/primary/central{name = "Aft Central Hallway"})
"bBl" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=Sec"; location = "Mech"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel,/area/hallway/primary/central{name = "Aft Central Hallway"})
"bBm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel,/area/hallway/primary/central{name = "Aft Central Hallway"})
"bBn" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1},/turf/simulated/floor/plasteel,/area/hallway/primary/central{name = "Aft Central Hallway"})
@@ -4126,7 +4126,7 @@
"bBr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plasteel,/area/hallway/primary/central{name = "Aft Central Hallway"})
"bBs" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/border_only{tag = "icon-door_open (EAST)"; icon_state = "door_open"; dir = 4},/turf/simulated/floor/plasteel,/area/hallway/primary/central{name = "Aft Central Hallway"})
"bBt" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment,/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=Mech"; location = "AfCH1"},/turf/simulated/floor/plasteel,/area/hallway/primary/central{name = "Aft Central Hallway"})
-"bBu" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor/plasteel,/area/hallway/primary/central{name = "Aft Central Hallway"})
+"bBu" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor/plasteel,/area/hallway/primary/central{name = "Aft Central Hallway"})
"bBv" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment,/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=Escape"; location = "AfCH2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/hallway/primary/central{name = "Aft Central Hallway"})
"bBw" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/hallway/primary/central{name = "Aft Central Hallway"})
"bBx" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/floor/plasteel,/area/hallway/primary/central{name = "Aft Central Hallway"})
@@ -4156,20 +4156,20 @@
"bBV" = (/obj/machinery/light,/turf/simulated/floor/plasteel,/area/crew_quarters/fitness)
"bBW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/engineering{name = "Brig Power Control"; req_access_txt = "11"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
"bBX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/wall,/area/maintenance/asteroidstation/brig)
-"bBY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
-"bBZ" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
+"bBY" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/obj/machinery/door/poddoor{id = "Mechbay"; name = "Mech Bay Blast Doors"},/turf/simulated/floor/plasteel,/area/hallway/primary/central{name = "Aft Central Hallway"})
+"bBZ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 1},/area/hallway/primary/central{name = "Aft Central Hallway"})
"bCa" = (/turf/simulated/wall,/area/hallway/primary/central{name = "Aft Central Hallway"})
-"bCb" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 5},/obj/machinery/door_control{dir = 2; id = "Mechbay"; name = "Mech Bay Door Control"; pixel_x = -24; pixel_y = 0; req_access_txt = "29"},/turf/simulated/floor/plasteel{icon_state = "yellow"},/area/hallway/primary/central{name = "Aft Central Hallway"})
-"bCc" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plasteel{icon_state = "yellow"},/area/hallway/primary/central{name = "Aft Central Hallway"})
-"bCd" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "yellow"},/area/hallway/primary/central{name = "Aft Central Hallway"})
-"bCe" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "yellowcorner"},/area/hallway/primary/central{name = "Aft Central Hallway"})
+"bCb" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/bluegrid,/area/assembly/chargebay)
+"bCc" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/door/airlock/maintenance{name = "Mech Bay Maintenance"; req_access_txt = "29"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
+"bCd" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/bluegrid,/area/assembly/chargebay)
+"bCe" = (/obj/machinery/atmospherics/pipe/manifold/supplymain/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/bluegrid,/area/assembly/chargebay)
"bCf" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/central{name = "Aft Central Hallway"})
"bCg" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29; tag = "south"},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/central{name = "Aft Central Hallway"})
"bCh" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/central{name = "Aft Central Hallway"})
-"bCi" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/central{name = "Aft Central Hallway"})
+"bCi" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
"bCj" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/central{name = "Aft Central Hallway"})
"bCk" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 2; icon_state = "whitecorner"},/area/hallway/primary/central{name = "Aft Central Hallway"})
-"bCl" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "whitehall"; dir = 2},/area/hallway/primary/central{name = "Aft Central Hallway"})
+"bCl" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "yellow"},/area/hallway/primary/central{name = "Aft Central Hallway"})
"bCm" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "whitecorner"},/area/hallway/primary/central{name = "Aft Central Hallway"})
"bCn" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/central{name = "Aft Central Hallway"})
"bCo" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/obj/machinery/door/firedoor/border_only{tag = "icon-door_open (EAST)"; icon_state = "door_open"; dir = 4},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/central{name = "Aft Central Hallway"})
@@ -4189,10 +4189,10 @@
"bCC" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plasteel{dir = 2; icon_state = "whitehall"},/area/hallway/primary/central{name = "Aft Central Hallway"})
"bCD" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 9},/obj/structure/table,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 4},/area/hallway/primary/central{name = "Aft Central Hallway"})
"bCE" = (/obj/machinery/light/small,/turf/simulated/floor/fancy/carpet,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
-"bCF" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/yellow,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; step_y = 0; on = 1; scrub_Toxins = 0; scrub_N2O = 0},/turf/simulated/floor/fancy/carpet,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
-"bCG" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/red,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; step_y = 0; on = 1; scrub_Toxins = 0; scrub_N2O = 0},/turf/simulated/floor/fancy/carpet,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
-"bCH" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/green,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; step_y = 0; on = 1; scrub_Toxins = 0; scrub_N2O = 0},/turf/simulated/floor/fancy/carpet,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
-"bCI" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/blue,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; step_y = 0; on = 1; scrub_Toxins = 0; scrub_N2O = 0},/turf/simulated/floor/fancy/carpet,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
+"bCF" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/yellow,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; step_y = 0; on = 1; scrub_Toxins = 0; scrub_N2O = 0},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/fancy/carpet,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
+"bCG" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/red,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; step_y = 0; on = 1; scrub_Toxins = 0; scrub_N2O = 0},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/fancy/carpet,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
+"bCH" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/green,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; step_y = 0; on = 1; scrub_Toxins = 0; scrub_N2O = 0},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/fancy/carpet,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
+"bCI" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/blue,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; step_y = 0; on = 1; scrub_Toxins = 0; scrub_N2O = 0},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/fancy/carpet,/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
"bCJ" = (/obj/machinery/washing_machine,/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
"bCK" = (/obj/structure/table,/obj/item/clothing/under/suit_jacket/really_black{pixel_x = -2; pixel_y = 0},/obj/item/clothing/under/suit_jacket/female,/turf/simulated/floor/plasteel{dir = 8; icon_state = "barber"},/area/crew_quarters/sleep_male{name = "Aft Dormitory"})
"bCL" = (/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 10},/area/hallway/primary/starboard{name = "Starboard Hallway"})
@@ -4202,17 +4202,17 @@
"bCP" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/apc{dir = 8; name = "Brig Maintenance APC"; pixel_x = -25; pixel_y = 0},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
"bCQ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
"bCR" = (/obj/structure/cable,/obj/machinery/power/terminal,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
-"bCS" = (/obj/item/latexballon,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
-"bCT" = (/obj/item/clothing/suit/ianshirt,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
+"bCS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/door/poddoor{id = "Mechbay"; name = "Mech Bay Blast Doors"},/turf/simulated/floor/plasteel,/area/hallway/primary/central{name = "Aft Central Hallway"})
+"bCT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/mech_bay_recharge_port,/turf/simulated/floor/plasteel,/area/assembly/chargebay)
"bCU" = (/turf/simulated/wall,/area/assembly/chargebay)
-"bCV" = (/obj/machinery/door/poddoor{id = "Mechbay"; name = "Mech Bay Blast Doors"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "yellow"},/area/assembly/chargebay)
-"bCW" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/door/poddoor{id = "Mechbay"; name = "Mech Bay Blast Doors"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "yellow"},/area/assembly/chargebay)
-"bCX" = (/obj/machinery/door/airlock/research{id_tag = ""; name = "Mech Bay"; req_access_txt = "29"; req_one_access_txt = "0"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "yellow"},/area/assembly/chargebay)
+"bCV" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/turf/simulated/floor/mech_bay_recharge_floor,/area/assembly/chargebay)
+"bCW" = (/obj/machinery/door_control{dir = 2; id = "Mechbay"; name = "Mech Bay Door Control"; pixel_x = 24; pixel_y = 0; req_access_txt = "29"},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
+"bCX" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 5},/obj/machinery/door_control{dir = 2; id = "Mechbay"; name = "Mech Bay Door Control"; pixel_x = -24; pixel_y = 0; req_access_txt = "29"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "yellowcorner"},/area/hallway/primary/central{name = "Aft Central Hallway"})
"bCY" = (/turf/simulated/wall,/area/assembly/assembly_line)
-"bCZ" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=1"; freq = 1400; location = "Robotics"},/obj/structure/plasticflaps{opacity = 1},/obj/machinery/door/firedoor/border_only{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{icon_state = "loadingarea"; tag = ""},/area/assembly/assembly_line)
-"bDa" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/wall,/area/assembly/assembly_line)
-"bDb" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/assembly/assembly_line)
-"bDc" = (/obj/machinery/door/airlock/glass_research{name = "Robotics Lab"; req_access_txt = "29"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "whiteyellow"},/area/assembly/assembly_line)
+"bCZ" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/central{name = "Aft Central Hallway"})
+"bDa" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 2; icon_state = "bluecorner"},/area/hallway/primary/central{name = "Aft Central Hallway"})
+"bDb" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 0; icon_state = "blue"},/area/hallway/primary/central{name = "Aft Central Hallway"})
+"bDc" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "bluecorner"},/area/hallway/primary/central{name = "Aft Central Hallway"})
"bDd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/door/airlock/glass{name = "Aft Hallway"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/hallway/primary/aft{name = "Aft Hallway"})
"bDe" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/glass{name = "Aft Hallway"},/turf/simulated/floor/plasteel,/area/hallway/primary/aft{name = "Aft Hallway"})
"bDf" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/machinery/door/airlock/glass{name = "Aft Hallway"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/hallway/primary/aft{name = "Aft Hallway"})
@@ -4247,22 +4247,22 @@
"bDI" = (/obj/structure/reagent_dispensers/water_cooler,/turf/simulated/floor/plasteel{icon_state = "green"; dir = 4},/area/crew_quarters/fitness)
"bDJ" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
"bDK" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
-"bDL" = (/obj/machinery/power/smes,/obj/structure/cable{d2 = 2; icon_state = "0-2"; pixel_y = 0},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
-"bDM" = (/obj/machinery/door_control{dir = 2; id = "Mechbay"; name = "Mech Bay Door Control"; pixel_x = -24; pixel_y = 0; req_access_txt = "29"},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
-"bDN" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plasteel,/area/assembly/chargebay)
+"bDL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/bluegrid,/area/assembly/chargebay)
+"bDM" = (/turf/simulated/floor/plating,/area/mine/explored)
+"bDN" = (/obj/item/latexballon,/turf/simulated/floor/plating,/area/mine/explored)
"bDO" = (/turf/simulated/floor/plasteel,/area/assembly/chargebay)
"bDP" = (/obj/structure/bodycontainer/morgue,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/assembly/assembly_line)
-"bDQ" = (/obj/machinery/camera{c_tag = "Robotics Morgue"; dir = 2; network = list("SS13","RD")},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/assembly/assembly_line)
-"bDR" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/assembly/assembly_line)
-"bDS" = (/obj/machinery/door/window/southleft{name = "Robotics Deliveries"; req_access_txt = "29"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/assembly/assembly_line)
-"bDT" = (/obj/structure/table/glass,/obj/item/device/radio/headset/headset_sci,/obj/item/device/radio/headset/headset_sci,/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/assembly_line)
-"bDU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/closet/wardrobe/robotics_black,/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/assembly_line)
-"bDV" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteyellow"},/area/assembly/assembly_line)
-"bDW" = (/obj/machinery/light_switch{dir = 1; pixel_y = 22},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteyellow"},/area/assembly/assembly_line)
+"bDQ" = (/turf/simulated/wall,/area/mine/explored)
+"bDR" = (/obj/machinery/power/smes{input_attempt = 1},/obj/structure/cable{d2 = 2; icon_state = "0-2"; pixel_y = 0},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
+"bDS" = (/obj/machinery/door/window/southleft{dir = 8; name = "Robotics Deliveries"; req_access_txt = "29"},/obj/structure/window/reinforced,/turf/simulated/floor/plasteel{icon_state = "delivery"},/area/assembly/assembly_line)
+"bDT" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/turf/simulated/floor/bluegrid,/area/assembly/chargebay)
+"bDU" = (/obj/machinery/atmospherics/unary/vent_pump,/turf/simulated/floor/plasteel,/area/assembly/chargebay)
+"bDV" = (/obj/machinery/door/poddoor/shutters/preopen{id = "robotics"; name = "robotics lab shutters"},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/assembly/assembly_line)
+"bDW" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/obj/machinery/door/poddoor/shutters/preopen{id = "robotics"; name = "robotics lab shutters"},/turf/simulated/floor/plating,/area/assembly/assembly_line)
"bDX" = (/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteyellow"},/area/assembly/assembly_line)
-"bDY" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteyellow"},/area/assembly/assembly_line)
-"bDZ" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor/plasteel{dir = 5; icon_state = "whiteyellow"},/area/assembly/assembly_line)
-"bEa" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall,/area/assembly/assembly_line)
+"bDY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/door/poddoor/shutters/preopen{id = "robotics"; name = "robotics lab shutters"},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/assembly/assembly_line)
+"bDZ" = (/obj/machinery/door/airlock/research{name = "Robotics Lab"; req_access_txt = "29"; req_one_access_txt = "0"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "yellow"},/area/assembly/assembly_line)
+"bEa" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=1"; freq = 1400; location = "Robotics"},/obj/machinery/door/firedoor/border_only{dir = 1},/obj/structure/plasticflaps{opacity = 1},/turf/simulated/floor/plasteel{icon_state = "loadingarea"; tag = ""},/area/assembly/assembly_line)
"bEb" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/table,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/simulated/floor/plasteel{dir = 8; icon_state = "whitecorner"},/area/hallway/primary/aft{name = "Aft Hallway"})
"bEc" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/obj/structure/disposalpipe/sortjunction{dir = 1; icon_state = "pipe-j2s"; sortType = 14},/turf/simulated/floor/plasteel,/area/hallway/primary/aft{name = "Aft Hallway"})
"bEd" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1},/turf/simulated/floor/plasteel,/area/hallway/primary/aft{name = "Aft Hallway"})
@@ -4282,7 +4282,7 @@
"bEr" = (/obj/machinery/alarm{frequency = 1439; pixel_y = 23},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/medbay)
"bEs" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 29; tag = "east"},/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor/plasteel{dir = 9; icon_state = "whitehall"},/area/medical/medbay)
"bEt" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor/plasteel{dir = 5; icon_state = "whitehall"},/area/medical/medbay)
-"bEu" = (/obj/machinery/light{dir = 1},/obj/structure/stool/bed/chair,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/medbay)
+"bEu" = (/obj/structure/grille,/obj/machinery/door/poddoor/shutters/preopen{id = "robotics"; name = "robotics lab shutters"},/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/assembly/assembly_line)
"bEv" = (/obj/structure/disposalpipe/junction{tag = "icon-pipe-j2 (NORTH)"; icon_state = "pipe-j2"; dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/medbay)
"bEw" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/medbay)
"bEx" = (/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/medbay)
@@ -4297,7 +4297,7 @@
"bEG" = (/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/medical/surgery)
"bEH" = (/obj/machinery/camera{c_tag = "Surgery Observation Room"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/medical/surgery)
"bEI" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/medical/surgery)
-"bEJ" = (/obj/structure/table/glass,/obj/item/clothing/gloves/latex,/obj/item/clothing/mask/surgical,/obj/item/clothing/suit/apron/surgical,/turf/simulated/floor/plasteel{dir = 9; icon_state = "whiteblue"},/area/medical/surgery)
+"bEJ" = (/obj/structure/table,/obj/item/clothing/gloves/color/yellow,/obj/item/weapon/storage/toolbox/electrical,/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{icon_state = "yellow"},/area/engine/engineering)
"bEK" = (/obj/machinery/alarm{name = "alarm"; pixel_y = 24},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteblue"},/area/medical/surgery)
"bEL" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteblue"},/area/medical/surgery)
"bEM" = (/obj/structure/sink{pixel_y = 32},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteblue"},/area/medical/surgery)
@@ -4316,22 +4316,22 @@
"bEZ" = (/obj/structure/stool/bed/chair/comfy/brown{dir = 1},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/library)
"bFa" = (/obj/structure/cult/tome,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/library)
"bFb" = (/obj/machinery/computer/monitor,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
-"bFc" = (/obj/structure/closet/crate,/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
+"bFc" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/toxins/lab)
"bFd" = (/turf/simulated/floor/bluegrid,/area/assembly/chargebay)
-"bFe" = (/obj/structure/extinguisher_cabinet{pixel_y = 30; tag = "(north)"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/bluegrid,/area/assembly/chargebay)
-"bFf" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
-"bFg" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
-"bFh" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 22},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
+"bFe" = (/obj/item/clothing/suit/ianshirt,/turf/simulated/floor/plating,/area/mine/explored)
+"bFf" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
+"bFg" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
+"bFh" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
"bFi" = (/turf/simulated/floor/plasteel{icon_state = "dark"},/area/assembly/assembly_line)
-"bFj" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/assembly_line)
+"bFj" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
"bFk" = (/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/assembly_line)
-"bFl" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1},/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/assembly_line)
-"bFm" = (/obj/machinery/door/airlock/research{name = "Robotics Lab"; req_access_txt = "29"; req_one_access_txt = "0"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warnwhitecorner"; tag = "icon-warnwhitecorner (EAST)"},/area/assembly/assembly_line)
+"bFl" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/rack,/obj/item/device/flash/handheld,/obj/item/device/healthanalyzer,/obj/item/device/healthanalyzer,/obj/item/device/healthanalyzer,/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteyellow"},/area/assembly/assembly_line)
+"bFm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/wall,/area/assembly/assembly_line)
"bFn" = (/turf/simulated/floor/plasteel{dir = 2; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/assembly/assembly_line)
-"bFo" = (/turf/simulated/floor/plasteel{dir = 1; icon_state = "warnwhitecorner"; tag = "icon-warnwhitecorner (EAST)"},/area/assembly/assembly_line)
-"bFp" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/assembly_line)
-"bFq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whiteyellow"},/area/assembly/assembly_line)
-"bFr" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/grille,/obj/machinery/door/firedoor/border_only{tag = "icon-door_open (EAST)"; icon_state = "door_open"; dir = 4},/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/assembly/assembly_line)
+"bFo" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/obj/structure/rack,/obj/item/clothing/head/welding{pixel_x = -3; pixel_y = 5},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = 6},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteyellow"},/area/assembly/assembly_line)
+"bFp" = (/obj/machinery/light{dir = 1},/obj/machinery/requests_console{department = "Robotics"; departmentType = 2; name = "Robotics Requests Console"; pixel_x = 0; pixel_y = 30},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteyellow"},/area/assembly/assembly_line)
+"bFq" = (/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/assembly/assembly_line)
+"bFr" = (/obj/machinery/camera{c_tag = "Robotics Morgue"; dir = 2; network = list("SS13","RD")},/obj/structure/bodycontainer/morgue,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/assembly/assembly_line)
"bFs" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "whitehall"},/area/hallway/primary/aft{name = "Aft Hallway"})
"bFt" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/hallway/primary/aft{name = "Aft Hallway"})
"bFu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/hallway/primary/aft{name = "Aft Hallway"})
@@ -4382,24 +4382,24 @@
"bGn" = (/obj/structure/stool/bed/chair/office/dark{dir = 8},/obj/effect/landmark/start{name = "Librarian"},/turf/simulated/floor/wood,/area/library)
"bGo" = (/obj/machinery/door/morgue{name = "Private Study"; req_access_txt = "37"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/library)
"bGp" = (/obj/structure/closet,/obj/item/clothing/under/rank/librarian,/obj/item/clothing/under/blackskirt,/obj/item/clothing/under/color/black,/obj/item/clothing/under/color/black,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/library)
-"bGq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance{name = "Maintenance Access"; req_access_txt = "0"; req_one_access_txt = "7; 8; 12; 17; 29; 30; 42; 47; 55; 63"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
+"bGq" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/assembly/assembly_line)
"bGr" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/turf/simulated/wall,/area/maintenance/asteroidstation/brig)
"bGs" = (/obj/machinery/mech_bay_recharge_port,/turf/simulated/floor/plasteel,/area/assembly/chargebay)
-"bGt" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/mech_bay_recharge_floor,/area/assembly/chargebay)
+"bGt" = (/obj/structure/table/glass,/obj/item/clothing/glasses/welding,/obj/machinery/light_switch{dir = 8; pixel_x = -22},/turf/simulated/floor/plasteel{dir = 9; icon_state = "whiteblue"},/area/toxins/lab)
"bGu" = (/obj/machinery/computer/mech_bay_power_console,/turf/simulated/floor/plasteel,/area/assembly/chargebay)
-"bGv" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/assembly/chargebay)
-"bGw" = (/obj/machinery/camera{c_tag = "Mech Bay"; dir = 8; network = list("SS13","RD")},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
+"bGv" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor/plasteel{dir = 5; icon_state = "whiteblue"},/area/toxins/lab)
+"bGw" = (/obj/machinery/light{dir = 1},/obj/machinery/alarm{name = "alarm"; pixel_y = 24},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteblue"},/area/toxins/lab)
"bGx" = (/obj/machinery/door/airlock/research{name = "Robotics Morgue"; req_access_txt = "29"; req_one_access_txt = "0"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/assembly/assembly_line)
-"bGy" = (/obj/machinery/door_control{dir = 2; id = "robotics"; name = "Shutter Control"; pixel_x = -26; pixel_y = 6},/obj/machinery/light_switch{pixel_x = -23; pixel_y = -2},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/assembly_line)
-"bGz" = (/turf/simulated/floor/plasteel{tag = "icon-whiteyellowcorner"; icon_state = "whiteyellowcorner"; dir = 2},/area/assembly/assembly_line)
-"bGA" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only{tag = "icon-door_open (EAST)"; icon_state = "door_open"; dir = 4},/obj/machinery/door/poddoor/shutters/preopen{id = "robotics"; name = "robotics lab shutters"},/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/assembly/assembly_line)
-"bGB" = (/obj/structure/table/glass,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/assembly/assembly_line)
+"bGy" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall,/area/toxins/lab)
+"bGz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
+"bGA" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/machinery/recharge_station,/turf/simulated/floor/plasteel{icon_state = "bot"},/area/assembly/chargebay)
+"bGB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
"bGC" = (/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/assembly/assembly_line)
"bGD" = (/obj/machinery/mecha_part_fabricator,/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/assembly/assembly_line)
-"bGE" = (/obj/machinery/r_n_d/circuit_imprinter,/obj/item/weapon/reagent_containers/glass/beaker/sulphuric,/turf/simulated/floor/plasteel{dir = 5; icon_state = "warning"},/area/assembly/assembly_line)
-"bGF" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "warnwhite"},/area/assembly/assembly_line)
-"bGG" = (/obj/structure/stool/bed/chair/office/light{dir = 4},/obj/effect/landmark/start{name = "Roboticist"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whiteyellow"},/area/assembly/assembly_line)
-"bGH" = (/obj/structure/table/reinforced,/obj/machinery/door/window/westright{layer = 2.9; name = "Robotics Lab"; req_access_txt = "29"},/obj/machinery/door/firedoor/border_only{tag = "icon-door_open (EAST)"; icon_state = "door_open"; dir = 4},/obj/item/weapon/folder/white,/turf/simulated/floor/plasteel{dir = 8; icon_state = "whiteyellow"},/area/assembly/assembly_line)
+"bGE" = (/obj/machinery/computer/rdconsole/robotics,/turf/simulated/floor/plasteel{dir = 2; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/assembly/assembly_line)
+"bGF" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/assembly/assembly_line)
+"bGG" = (/obj/machinery/light{dir = 1},/obj/structure/stool/bed/chair,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/medbay)
+"bGH" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 22},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/assembly/assembly_line)
"bGI" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "whitehall"},/area/hallway/primary/aft{name = "Aft Hallway"})
"bGJ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/hallway/primary/aft{name = "Aft Hallway"})
"bGK" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j2s"; sortType = 22},/obj/machinery/camera{c_tag = "Aft Hallway Fore"; dir = 8},/turf/simulated/floor/plasteel{icon_state = "green"; dir = 4},/area/hallway/primary/aft{name = "Aft Hallway"})
@@ -4439,26 +4439,26 @@
"bHs" = (/turf/simulated/wall,/area/maintenance/asteroidstation/rd)
"bHt" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
"bHu" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
-"bHv" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
-"bHw" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
-"bHx" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
-"bHy" = (/obj/machinery/hologram/holopad,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
-"bHz" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
-"bHA" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
-"bHB" = (/obj/machinery/light{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/requests_console{department = "Robotics"; departmentType = 2; name = "Robotics Requests Console"; pixel_x = 0; pixel_y = 30},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
-"bHC" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor/plasteel{dir = 2; icon_state = "whitecorner"},/area/assembly/chargebay)
-"bHD" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/assembly_line)
+"bHv" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/bodybags,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/assembly/assembly_line)
+"bHw" = (/turf/simulated/floor/plasteel{dir = 2; icon_state = "warnwhitecorner"; tag = "icon-warnwhitecorner (EAST)"},/area/toxins/lab)
+"bHx" = (/turf/simulated/floor/plasteel{dir = 2; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/toxins/lab)
+"bHy" = (/turf/simulated/floor/plasteel{dir = 1; icon_state = "warnwhitecorner"; tag = "icon-warnwhitecorner (EAST)"},/area/toxins/lab)
+"bHz" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whiteblue"},/area/toxins/lab)
+"bHA" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/lab)
+"bHB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/grille,/obj/machinery/door/firedoor/border_only{tag = "icon-door_open (EAST)"; icon_state = "door_open"; dir = 4},/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/toxins/lab)
+"bHC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance{name = "Mech Bay Maintenance"; req_access_txt = "29"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/brig)
+"bHD" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/obj/structure/stool,/obj/effect/landmark/start{name = "Roboticist"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/assembly/assembly_line)
"bHE" = (/obj/machinery/camera{c_tag = "Robotics Lab Port"; dir = 2; network = list("SS13","RD")},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/assembly_line)
-"bHF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/assembly_line)
-"bHG" = (/obj/structure/table/glass,/obj/item/device/mmi/radio_enabled,/obj/item/device/mmi/radio_enabled,/obj/item/device/mmi/radio_enabled,/turf/simulated/floor/plasteel{dir = 4; icon_state = "whiteyellow"},/area/assembly/assembly_line)
-"bHH" = (/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000; pixel_x = 5; pixel_y = -5},/obj/structure/table/glass,/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
-"bHI" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
-"bHJ" = (/obj/effect/landmark/start{name = "Roboticist"},/turf/simulated/floor/plasteel{icon_state = "bot"},/area/assembly/assembly_line)
-"bHK" = (/turf/simulated/floor/plasteel{icon_state = "bot"},/area/assembly/assembly_line)
-"bHL" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor/plasteel{tag = "icon-warning (EAST)"; icon_state = "warning"; dir = 4},/area/assembly/assembly_line)
-"bHM" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/assembly/assembly_line)
-"bHN" = (/turf/simulated/floor/plasteel{dir = 4; icon_state = "whiteyellow"},/area/assembly/assembly_line)
-"bHO" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only{tag = "icon-door_open (EAST)"; icon_state = "door_open"; dir = 4},/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/assembly/assembly_line)
+"bHF" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/shutters/preopen{id = "robotics"; name = "robotics lab shutters"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/assembly/chargebay)
+"bHG" = (/obj/structure/stool/bed/chair/comfy/black,/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/wood,/area/library)
+"bHH" = (/obj/machinery/door/airlock/research{id_tag = ""; name = "Mech Bay"; req_access_txt = "29"; req_one_access_txt = "0"},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
+"bHI" = (/obj/structure/disposalpipe/segment,/obj/machinery/r_n_d/circuit_imprinter,/obj/item/weapon/reagent_containers/glass/beaker/sulphuric,/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/assembly/assembly_line)
+"bHJ" = (/obj/machinery/firealarm{dir = 2; pixel_x = 0; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/structure/window/reinforced{dir = 8; icon_state = "rwindow"; tag = "icon-rwindow (EAST)"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "whiteyellow"},/area/assembly/assembly_line)
+"bHK" = (/obj/machinery/camera{c_tag = "Mech Bay"; dir = 8; network = list("SS13","RD")},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/assembly/assembly_line)
+"bHL" = (/obj/structure/stool/bed/chair/office/light{dir = 8},/obj/effect/landmark/start{name = "Scientist"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/toxins/lab)
+"bHM" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/toxins/lab)
+"bHN" = (/obj/structure/stool/bed/chair/office/light{dir = 4},/obj/effect/landmark/start{name = "Scientist"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whiteblue"},/area/toxins/lab)
+"bHO" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only{tag = "icon-door_open (EAST)"; icon_state = "door_open"; dir = 4},/obj/item/weapon/folder/white,/obj/machinery/door/window/eastleft{dir = 8; layer = 4; name = "Research Desk"; req_access_txt = "7"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "whiteblue"},/area/toxins/lab)
"bHP" = (/obj/machinery/door/airlock{name = "Janitor's Closet"; req_access_txt = "26"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/janitor)
"bHQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/janitor)
"bHR" = (/obj/machinery/door/airlock/maintenance{name = "Janitor's Closet Maintenance"; req_one_access_txt = "26"; tag = "Medbay"},/turf/simulated/floor/plating,/area/janitor)
@@ -4472,7 +4472,7 @@
"bHZ" = (/obj/structure/table/reinforced,/turf/simulated/floor/plasteel{dir = 5; icon_state = "whiteblue"},/area/medical/medbay)
"bIa" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "whiteblue"},/area/medical/medbay)
"bIb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/medbay)
-"bIc" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/stool/bed/chair{dir = 8},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/medbay)
+"bIc" = (/obj/structure/table/glass,/obj/item/device/mmi/radio_enabled,/obj/item/device/mmi/radio_enabled,/obj/item/device/mmi/radio_enabled,/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/assembly_line)
"bId" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/wall,/area/medical/surgery)
"bIe" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9; pixel_y = 0},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/surgery)
"bIf" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/medical,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/surgery)
@@ -4493,20 +4493,20 @@
"bIu" = (/obj/structure/table/wood,/obj/item/weapon/storage/pill_bottle/dice,/obj/machinery/camera{c_tag = "Library Starboard"},/turf/simulated/floor/wood,/area/library)
"bIv" = (/obj/structure/filingcabinet,/turf/simulated/floor/wood,/area/library)
"bIw" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/cable/pink{d2 = 2; icon_state = "0-2"},/obj/machinery/power/apc{dir = 4; name = "Mech Bay APC"; pixel_x = 24},/turf/simulated/floor/plating,/area/assembly/chargebay)
-"bIx" = (/turf/simulated/floor/mech_bay_recharge_floor,/area/assembly/chargebay)
-"bIy" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
-"bIz" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/simulated/floor/plasteel,/area/assembly/chargebay)
-"bIA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitehall"},/area/assembly/chargebay)
-"bIB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/airlock/research{name = "Robotics Lab"; req_access_txt = "29"; req_one_access_txt = "0"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/assembly_line)
-"bIC" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/assembly_line)
+"bIx" = (/obj/structure/closet/crate,/obj/item/clothing/mask/gas,/obj/item/stack/cable_coil,/turf/simulated/floor/plating,/area/mine/explored)
+"bIy" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
+"bIz" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
+"bIA" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/stool/bed/chair{dir = 8},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/medbay)
+"bIB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/light_switch{dir = 1; pixel_y = 22},/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
+"bIC" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/obj/machinery/door/window/southleft{dir = 8; name = "Robotics Surgery"; req_access_txt = "29"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "whiteyellow"},/area/assembly/assembly_line)
"bID" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/assembly_line)
"bIE" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/assembly_line)
"bIF" = (/obj/effect/landmark/start{name = "Roboticist"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/assembly_line)
-"bIG" = (/obj/structure/optable{name = "Robotics Operating Table"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whiteyellow"},/area/assembly/assembly_line)
-"bIH" = (/obj/structure/table/glass,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/glass{amount = 20; pixel_x = -3; pixel_y = 6},/obj/item/stack/sheet/glass{amount = 20; pixel_x = -3; pixel_y = 6},/obj/item/stack/sheet/plasteel{amount = 10},/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
+"bIG" = (/obj/structure/optable{name = "Robotics Operating Table"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/assembly_line)
+"bIH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "bot"},/area/assembly/assembly_line)
"bII" = (/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
-"bIJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{tag = "icon-warning (EAST)"; icon_state = "warning"; dir = 4},/area/assembly/assembly_line)
-"bIK" = (/obj/machinery/requests_console{department = "Robotics"; departmentType = 2; name = "Robotics Requests Console"; pixel_x = 32; pixel_y = 0},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whiteyellow"},/area/assembly/assembly_line)
+"bIJ" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
+"bIK" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
"bIL" = (/obj/machinery/light_switch{dir = 8; pixel_x = -22},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/janitor)
"bIM" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/janitor)
"bIN" = (/obj/effect/landmark/start{name = "Janitor"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/janitor)
@@ -4546,26 +4546,26 @@
"bJv" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/wood,/area/library)
"bJw" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0; step_y = 0},/turf/simulated/floor/wood,/area/library)
"bJx" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/library)
-"bJy" = (/turf/simulated/mineral/random/labormineral,/area/maintenance/asteroidstation/rd)
+"bJy" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/obj/machinery/light_switch{dir = 8; pixel_x = -22},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/hos)
"bJz" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/cable/pink{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
-"bJA" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor/bluegrid,/area/assembly/chargebay)
-"bJB" = (/obj/machinery/light_switch{dir = 2; name = "light switch"; pixel_x = 0; pixel_y = -22},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
+"bJA" = (/obj/structure/stool,/obj/effect/landmark/start{name = "Roboticist"},/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
+"bJB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/structure/sink{pixel_y = 28; step_y = 0},/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/assembly_line)
"bJC" = (/obj/machinery/recharge_station,/turf/simulated/floor/plasteel{icon_state = "bot"},/area/assembly/chargebay)
-"bJD" = (/obj/structure/table,/obj/item/weapon/book/manual/robotics_cyborgs,/turf/simulated/floor/plasteel,/area/assembly/chargebay)
-"bJE" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
-"bJF" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 29; tag = "east"},/obj/structure/table,/obj/item/weapon/storage/box/mechabeacons,/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitecorner"},/area/assembly/chargebay)
-"bJG" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/bodybags,/turf/simulated/floor/plasteel{tag = "icon-whiteyellowcorner"; icon_state = "whiteyellowcorner"; dir = 2},/area/assembly/assembly_line)
-"bJH" = (/obj/structure/table/glass,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/item/clothing/gloves/latex,/obj/item/weapon/surgical_drapes,/turf/simulated/floor/plasteel{dir = 2; icon_state = "whiteyellow"},/area/assembly/assembly_line)
-"bJI" = (/obj/structure/table/glass,/obj/machinery/light,/obj/item/weapon/hemostat,/obj/item/weapon/retractor,/turf/simulated/floor/plasteel{dir = 2; icon_state = "whiteyellow"},/area/assembly/assembly_line)
-"bJJ" = (/obj/structure/table/glass,/obj/item/weapon/scalpel,/obj/item/weapon/circular_saw{pixel_y = 8; pixel_y = 0},/turf/simulated/floor/plasteel{dir = 2; icon_state = "whiteyellow"},/area/assembly/assembly_line)
-"bJK" = (/obj/machinery/computer/operating{name = "Robotics Operating Computer"},/obj/machinery/status_display{pixel_y = -32; tag = "south"},/turf/simulated/floor/plasteel{dir = 6; icon_state = "whiteyellow"},/area/assembly/assembly_line)
-"bJL" = (/obj/structure/table/glass,/obj/item/borg/upgrade/rename,/obj/item/stack/cable_coil,/obj/item/device/flash/handheld,/obj/item/device/flash/handheld,/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
-"bJM" = (/obj/structure/stool,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = -29},/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
-"bJN" = (/obj/structure/table/glass,/obj/item/device/multitool,/obj/item/weapon/crowbar,/obj/item/clothing/glasses/welding,/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
-"bJO" = (/obj/machinery/computer/rdconsole/robotics,/obj/machinery/light,/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
-"bJP" = (/obj/structure/extinguisher_cabinet{pixel_y = -30; tag = "(south)"},/obj/machinery/camera{c_tag = "Robotics Lab Starboard"; dir = 1; network = list("SS13","RD")},/turf/simulated/floor/plasteel{dir = 8; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/assembly/assembly_line)
-"bJQ" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/rack,/obj/item/device/healthanalyzer,/obj/item/device/healthanalyzer,/obj/item/device/healthanalyzer,/obj/item/device/flash/handheld,/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/assembly_line)
-"bJR" = (/obj/structure/rack,/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = 6},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/clothing/head/welding{pixel_x = -3; pixel_y = 5},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whiteyellow"},/area/assembly/assembly_line)
+"bJD" = (/obj/machinery/status_display,/turf/simulated/wall,/area/assembly/assembly_line)
+"bJE" = (/obj/structure/table/glass,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "whiteblue"},/area/toxins/lab)
+"bJF" = (/turf/simulated/floor/plasteel{dir = 4; icon_state = "whiteblue"},/area/toxins/lab)
+"bJG" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only{tag = "icon-door_open (EAST)"; icon_state = "door_open"; dir = 4},/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/toxins/lab)
+"bJH" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -29; tag = "east"},/obj/structure/table/glass,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
+"bJI" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 4},/area/hallway/primary/central{name = "Aft Central Hallway"})
+"bJJ" = (/obj/structure/table/glass,/obj/item/device/radio/headset/headset_sci,/obj/item/device/radio/headset/headset_sci,/obj/structure/window/reinforced{dir = 8; icon_state = "rwindow"; tag = "icon-rwindow (EAST)"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "whiteyellow"},/area/assembly/assembly_line)
+"bJK" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
+"bJL" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
+"bJM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
+"bJN" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
+"bJO" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
+"bJP" = (/obj/structure/table/glass,/obj/item/weapon/scalpel,/obj/item/weapon/circular_saw{pixel_y = 8; pixel_y = 0},/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/assembly_line)
+"bJQ" = (/obj/structure/table/glass,/obj/machinery/light,/obj/item/weapon/hemostat,/obj/item/weapon/retractor,/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/assembly_line)
+"bJR" = (/obj/structure/table/glass,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/item/weapon/stock_parts/scanning_module{pixel_x = 2; pixel_y = 3},/obj/item/weapon/stock_parts/scanning_module{pixel_x = 2; pixel_y = 3},/turf/simulated/floor/plasteel{dir = 8; icon_state = "whiteblue"},/area/toxins/lab)
"bJS" = (/turf/simulated/floor/plasteel{dir = 1; icon_state = "whitecorner"},/area/hallway/primary/aft{name = "Aft Hallway"})
"bJT" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{dir = 4; icon_state = "greencorner"},/area/hallway/primary/aft{name = "Aft Hallway"})
"bJU" = (/obj/structure/closet/jcloset,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/janitor)
@@ -4593,12 +4593,12 @@
"bKq" = (/obj/structure/closet/l3closet/general,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
"bKr" = (/obj/structure/table,/obj/item/weapon/reagent_containers/glass/beaker,/obj/item/weapon/reagent_containers/dropper,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
"bKs" = (/obj/structure/reagent_dispensers,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
-"bKt" = (/obj/structure/cable/pink{d2 = 2; icon_state = "0-2"},/obj/machinery/power/smes,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
+"bKt" = (/obj/machinery/r_n_d/circuit_imprinter,/obj/item/weapon/reagent_containers/glass/beaker/sulphuric,/turf/simulated/floor/plasteel{dir = 10; icon_state = "warning"},/area/toxins/lab)
"bKu" = (/obj/structure/cable{d2 = 2; icon_state = "0-2"},/obj/machinery/power/terminal{dir = 8},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
"bKv" = (/obj/structure/cable/pink{d2 = 2; icon_state = "0-2"},/obj/machinery/power/apc{dir = 1; name = "Research Division Maintenance APC"; pixel_y = 24},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
-"bKw" = (/obj/machinery/door/airlock/maintenance{name = "Mech Bay Maintenance"; req_access_txt = "29"},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
+"bKw" = (/turf/simulated/floor/plasteel{dir = 4; icon_state = "warnwhitecorner"; tag = "icon-warnwhitecorner (EAST)"},/area/toxins/lab)
"bKx" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/wall,/area/assembly/assembly_line)
-"bKy" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/airlock/maintenance{name = "Robotics Maintenance"; req_access_txt = "29"},/turf/simulated/floor/plating{tag = "icon-warnplatecorner (WEST)"; icon_state = "warnplatecorner"; dir = 8},/area/assembly/assembly_line)
+"bKy" = (/obj/machinery/atmospherics/unary/vent_pump,/turf/simulated/floor/plasteel{tag = "icon-warnwhite (NORTH)"; icon_state = "warnwhite"; dir = 1},/area/toxins/lab)
"bKz" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/aft{name = "Aft Hallway"})
"bKA" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/aft{name = "Aft Hallway"})
"bKB" = (/obj/structure/cable/cyan{tag = "icon-1-2"; icon_state = "1-2"},/obj/structure/cable/cyan{tag = "icon-2-4"; icon_state = "2-4"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/medbay)
@@ -4642,10 +4642,10 @@
"bLn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/grille,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
"bLo" = (/obj/structure/closet/crate,/obj/item/weapon/grenade/chem_grenade,/obj/item/device/flashlight,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
"bLp" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/obj/structure/closet/firecloset,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
-"bLq" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/pink{d2 = 2; icon_state = "0-2"},/obj/machinery/power/apc{dir = 1; name = "Robotics Lab APC"; pixel_y = 24},/turf/simulated/floor/plating,/area/assembly/assembly_line)
-"bLr" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
-"bLs" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
-"bLt" = (/obj/machinery/door/airlock/maintenance{name = "Maintenance Access"; req_access_txt = "0"; req_one_access_txt = "7; 8; 12; 17; 29; 30; 42; 47; 55; 63"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/assembly/assembly_line)
+"bLq" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
+"bLr" = (/obj/structure/closet/wardrobe/robotics_black,/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
+"bLs" = (/obj/structure/table/glass,/obj/item/clothing/glasses/welding,/obj/item/weapon/crowbar,/obj/item/device/multitool,/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
+"bLt" = (/obj/structure/table/glass,/obj/item/device/flash/handheld,/obj/item/stack/cable_coil,/obj/item/borg/upgrade/rename,/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
"bLu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/aft{name = "Aft Hallway"})
"bLv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor/plasteel,/area/hallway/primary/aft{name = "Aft Hallway"})
"bLw" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/aft{name = "Aft Hallway"})
@@ -4695,9 +4695,9 @@
"bMo" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 10},/obj/structure/cable/pink{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/pink{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
"bMp" = (/obj/structure/cable/pink{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/pink{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
"bMq" = (/obj/structure/cable/pink{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/pink{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
-"bMr" = (/obj/structure/cable/pink{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
-"bMs" = (/obj/structure/cable/pink{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
-"bMt" = (/obj/machinery/power/apc{dir = 2; name = "Teleporter APC"; pixel_x = 0; pixel_y = -25},/obj/structure/cable/pink{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/teleporter{name = "\improper Teleporter Room"})
+"bMr" = (/obj/machinery/computer/operating{name = "Robotics Operating Computer"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/assembly_line)
+"bMs" = (/obj/structure/table/glass,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000; pixel_x = 5; pixel_y = -5},/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
+"bMt" = (/obj/structure/table/glass,/obj/item/stack/sheet/plasteel{amount = 10},/obj/item/stack/sheet/glass{amount = 20; pixel_x = -3; pixel_y = 6},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
"bMu" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/hallway/primary/aft{name = "Aft Hallway"})
"bMv" = (/obj/machinery/atmospherics/pipe/manifold/supplymain/hidden{dir = 8},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/aft{name = "Aft Hallway"})
"bMw" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 4},/obj/machinery/door/airlock/maintenance{name = "Maintenance Access"; req_one_access_txt = "5; 6; 9; 12; 22; 26; 28; 33; 37; 40"; tag = "Medbay"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plating,/area/hallway/primary/aft{name = "Aft Hallway"})
@@ -4741,10 +4741,10 @@
"bNi" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
"bNj" = (/turf/simulated/wall/r_wall,/area/toxins/xenobiology)
"bNk" = (/obj/machinery/door/airlock/maintenance{name = "Xenobiology Maintenance"; req_access_txt = "55"},/obj/structure/cable/pink{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/toxins/xenobiology)
-"bNl" = (/turf/simulated/wall/r_wall,/area/teleporter{name = "\improper Teleporter Room"})
-"bNm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/wall/r_wall,/area/teleporter{name = "\improper Teleporter Room"})
-"bNn" = (/obj/machinery/door/airlock/maintenance{name = "Teleporter Maintenance"; req_access_txt = "17"},/turf/simulated/floor/plasteel,/area/teleporter{name = "\improper Teleporter Room"})
-"bNo" = (/obj/structure/cable/pink{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/wall/r_wall,/area/teleporter{name = "\improper Teleporter Room"})
+"bNl" = (/obj/structure/stool/bed/chair/comfy/black{dir = 4},/obj/machinery/newscaster{dir = 8; pixel_x = -32; pixel_y = 0},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/wood,/area/library)
+"bNm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
+"bNn" = (/obj/machinery/power/apc{dir = 2; name = "Xenobiology APC"; pixel_x = 0; pixel_y = -25},/obj/structure/cable/pink,/obj/structure/cable/pink{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/toxins/xenobiology)
+"bNo" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{tag = "icon-whiteblue"; icon_state = "whiteblue"; dir = 2},/area/toxins/lab)
"bNp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28; tag = "west"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/aft{name = "Aft Hallway"})
"bNq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/medbay)
"bNr" = (/obj/structure/cable/cyan{tag = "icon-1-2"; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/medbay)
@@ -4774,7 +4774,7 @@
"bNP" = (/obj/structure/stool/bed/roller,/turf/simulated/floor/plasteel{dir = 8; icon_state = "whiteblue"},/area/medical/surgery)
"bNQ" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/surgery)
"bNR" = (/obj/machinery/door/airlock/maintenance{name = "Medbay Maintenance"; req_access_txt = "5"},/turf/simulated/floor/plating,/area/medical/surgery)
-"bNS" = (/obj/structure/stool/bed/chair/comfy/black{dir = 4},/obj/machinery/newscaster{dir = 8; pixel_x = -32; pixel_y = 0},/turf/simulated/floor/wood,/area/library)
+"bNS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/stool/bed/chair,/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 1},/area/hallway/secondary/exit)
"bNT" = (/obj/structure/stool/bed/chair/comfy/black{dir = 8},/turf/simulated/floor/wood,/area/library)
"bNU" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/library)
"bNV" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/library)
@@ -4782,7 +4782,7 @@
"bNX" = (/obj/structure/stool/bed/chair/office/dark{dir = 1},/turf/simulated/floor/wood,/area/library)
"bNY" = (/obj/structure/table,/obj/machinery/recharger,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
"bNZ" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
-"bOa" = (/obj/structure/closet/body_bag,/obj/item/weapon/melee/telebaton,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
+"bOa" = (/obj/structure/table/glass,/obj/item/clothing/gloves/color/latex,/obj/item/clothing/mask/surgical,/obj/item/clothing/suit/apron/surgical,/turf/simulated/floor/plasteel{dir = 9; icon_state = "whiteblue"},/area/medical/surgery)
"bOb" = (/obj/structure/closet/secure_closet/chemical,/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/mine/explored)
"bOc" = (/obj/machinery/atmospherics/unary/portables_connector/visible{dir = 4},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
"bOd" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/obj/machinery/camera{c_tag = "Research Atmospheric Control"},/obj/machinery/meter,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
@@ -4801,12 +4801,12 @@
"bOq" = (/obj/structure/table/reinforced,/obj/structure/sign/electricshock{pixel_y = 32},/obj/machinery/door_control{id = "xenobio3"; name = "Containment Blast Doors"; pixel_x = 0; pixel_y = 0; req_access_txt = "55"},/obj/structure/window/reinforced,/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/toxins/xenobiology)
"bOr" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "xenobio3"; name = "Containment Door"},/obj/structure/cable/pink{d2 = 2; icon_state = "0-2"},/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/toxins/xenobiology)
"bOs" = (/turf/simulated/floor/engine,/area/toxins/xenobiology)
-"bOt" = (/obj/structure/table/glass,/turf/simulated/floor/plasteel{dir = 9; icon_state = "blue"},/area/teleporter{name = "\improper Teleporter Room"})
-"bOu" = (/obj/structure/table/glass,/obj/item/weapon/hand_tele,/obj/structure/extinguisher_cabinet{pixel_y = 30; tag = "(north)"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{dir = 1; icon_state = "blue"},/area/teleporter{name = "\improper Teleporter Room"})
-"bOv" = (/obj/structure/table/glass,/obj/item/weapon/storage/toolbox/emergency,/obj/machinery/alarm{frequency = 1439; pixel_y = 23},/turf/simulated/floor/plasteel{dir = 1; icon_state = "bluecorner"},/area/teleporter{name = "\improper Teleporter Room"})
-"bOw" = (/turf/simulated/floor/plasteel,/area/teleporter{name = "\improper Teleporter Room"})
-"bOx" = (/obj/structure/cable/pink{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plasteel,/area/teleporter{name = "\improper Teleporter Room"})
-"bOy" = (/obj/machinery/shieldwallgen,/turf/simulated/floor/plasteel{icon_state = "bot"; dir = 1},/area/teleporter{name = "\improper Teleporter Room"})
+"bOt" = (/obj/structure/table/glass,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/turf/simulated/floor/plasteel{tag = "icon-whiteblue (SOUTHEAST)"; icon_state = "whiteblue"; dir = 6},/area/toxins/lab)
+"bOu" = (/obj/machinery/door/airlock/maintenance{name = "Mech Bay Maintenance"; req_access_txt = "29"},/obj/machinery/door/airlock/maintenance{name = "Robotics Maintenance"; req_access_txt = "29"},/turf/simulated/floor/plasteel,/area/assembly/assembly_line)
+"bOv" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/toxins/lab)
+"bOw" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/airlock/glass_research{name = "Research and Development Lab"; req_access_txt = "7"},/turf/simulated/floor/plasteel{tag = "icon-whitebluefull"; name = "floor"; desc = ""; icon_state = "whitebluefull"},/area/toxins/lab)
+"bOx" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/power/apc{dir = 1; name = "Robotics Lab APC"; pixel_y = 24},/obj/structure/cable/pink{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/assembly/assembly_line)
+"bOy" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
"bOz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/medbay)
"bOA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable/cyan{tag = "icon-1-2"; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/medbay)
"bOB" = (/obj/structure/cable/cyan{tag = "icon-1-2"; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/medbay)
@@ -4860,13 +4860,13 @@
"bPx" = (/obj/structure/cable/pink{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable/pink{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/pink{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warnwhite"},/area/toxins/xenobiology)
"bPy" = (/obj/machinery/door/window/northleft{dir = 8; name = "Containment Pen"; req_access_txt = "55"},/obj/structure/cable/pink{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/toxins/xenobiology)
"bPz" = (/obj/machinery/door/window/northleft{dir = 4; name = "Containment Pen"; req_access_txt = "55"},/obj/machinery/door/poddoor/preopen{id = "xenobio3"; name = "Containment Door"},/obj/structure/cable/pink{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/pink{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/engine,/area/toxins/xenobiology)
-"bPA" = (/obj/structure/closet/crate,/obj/item/weapon/crowbar,/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 8},/area/teleporter{name = "\improper Teleporter Room"})
-"bPB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel,/area/teleporter{name = "\improper Teleporter Room"})
-"bPC" = (/obj/machinery/shieldwallgen,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/plasteel{icon_state = "bot"; dir = 1},/area/teleporter{name = "\improper Teleporter Room"})
+"bPA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/pink{d2 = 2; icon_state = "0-2"},/obj/machinery/power/apc{dir = 4; name = "Research Lab APC"; pixel_x = 0; pixel_y = 25},/turf/simulated/floor/plating,/area/toxins/lab)
+"bPB" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitebluecorner"},/area/medical/research{name = "Research Division"})
+"bPC" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/airlock/maintenance{name = "Research Maintenance"; req_access_txt = "47"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
"bPD" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 22},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/aft{name = "Aft Hallway"})
"bPE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/medbay)
"bPF" = (/obj/machinery/power/terminal{dir = 4},/obj/structure/cable{d2 = 2; icon_state = "0-2"; pixel_y = 0},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/medbay)
-"bPG" = (/obj/structure/cable/cyan{tag = "icon-0-2"; icon_state = "0-2"},/obj/machinery/power/smes,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/medbay)
+"bPG" = (/obj/structure/cable/pink{d2 = 2; icon_state = "0-2"},/obj/machinery/power/smes{input_attempt = 1},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
"bPH" = (/obj/structure/cable/cyan{tag = "icon-0-2"; icon_state = "0-2"},/obj/machinery/computer/monitor,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/medbay)
"bPI" = (/obj/machinery/smartfridge/chemistry,/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteyellow"},/area/medical/chemistry)
"bPJ" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/glass/bottle/antitoxin{pixel_x = 4; pixel_y = 4},/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline,/obj/machinery/door/window/northleft{dir = 1; name = "Chemistry Desk"; req_access_txt = "5; 33"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plasteel{dir = 4; icon_state = "whiteyellowfull"; tag = "icon-whitehall (WEST)"},/area/medical/chemistry)
@@ -4897,12 +4897,12 @@
"bQi" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/obj/structure/window/reinforced{tag = "icon-rwindow (NORTH)"; icon_state = "rwindow"; dir = 1},/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/toxins/xenobiology)
"bQj" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "xenobio3"; name = "Containment Door"},/obj/structure/cable/pink,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/toxins/xenobiology)
"bQk" = (/obj/structure/disposaloutlet{dir = 1},/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor/engine,/area/toxins/xenobiology)
-"bQl" = (/obj/structure/rack,/obj/item/weapon/tank/oxygen,/obj/item/weapon/tank/oxygen,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/machinery/camera{c_tag = "Teleporter Room"; dir = 5; network = list("SS13","RD")},/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 8},/area/teleporter{name = "\improper Teleporter Room"})
-"bQm" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/plasteel,/area/teleporter{name = "\improper Teleporter Room"})
-"bQn" = (/obj/item/device/radio/beacon,/turf/simulated/floor/plasteel,/area/teleporter{name = "\improper Teleporter Room"})
-"bQo" = (/obj/structure/cable/pink{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/turf/simulated/floor/plasteel,/area/teleporter{name = "\improper Teleporter Room"})
-"bQp" = (/obj/machinery/shieldwallgen,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "bot"; dir = 1},/area/teleporter{name = "\improper Teleporter Room"})
-"bQq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/wall/r_wall,/area/teleporter{name = "\improper Teleporter Room"})
+"bQl" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whitebluecorner"},/area/medical/research{name = "Research Division"})
+"bQm" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteblue"},/area/medical/research{name = "Research Division"})
+"bQn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/airlock/research{desc = "The secured entrance to the main Research Division."; id_tag = "ResearchFoyer"; name = "Research Division Access"; req_access_txt = "47"},/turf/simulated/floor/plating,/area/medical/research{name = "Research Division"})
+"bQo" = (/obj/structure/cable/pink{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"})
+"bQp" = (/obj/structure/cable/pink{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"})
+"bQq" = (/obj/structure/cable/pink{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"})
"bQr" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/aft{name = "Aft Hallway"})
"bQs" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/medbay)
"bQt" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable/cyan{tag = "icon-1-2"; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/medbay)
@@ -4911,7 +4911,7 @@
"bQw" = (/obj/structure/cable/cyan{tag = "icon-1-2"; icon_state = "1-2"},/obj/structure/cable/cyan{tag = "icon-2-4"; icon_state = "2-4"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/medbay)
"bQx" = (/obj/structure/cable/cyan{tag = "icon-1-8"; icon_state = "1-8"},/obj/machinery/light/small{dir = 4},/obj/machinery/camera{c_tag = "Medbay Atmospheric Control"; dir = 8},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/medbay)
"bQy" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=4"; freq = 1400; location = "Medbay"},/obj/structure/plasticflaps{opacity = 1},/obj/machinery/door/firedoor/border_only{dir = 8},/turf/simulated/floor/plasteel{dir = 4; icon_state = "loadingarea"},/area/medical/medbay2)
-"bQz" = (/obj/machinery/door/window/eastleft{name = "Medical Delivery"; req_access_txt = "5"},/turf/simulated/floor/plasteel{icon_state = "delivery"},/area/medical/medbay2)
+"bQz" = (/obj/structure/cable/pink{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"})
"bQA" = (/turf/simulated/floor/plasteel{dir = 4; icon_state = "whiteyellowcorner"},/area/medical/medbay2)
"bQB" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteyellow"},/area/medical/medbay2)
"bQC" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteyellow"},/area/medical/medbay2)
@@ -4950,17 +4950,17 @@
"bRj" = (/obj/machinery/door/airlock/external{name = "External Airlock"; req_access_txt = "13"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/maintenance/asteroidstation/medbay)
"bRk" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = -32},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/maintenance/asteroidstation/medbay)
"bRl" = (/obj/machinery/door/morgue,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
-"bRm" = (/obj/structure/cable/pink{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
+"bRm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/stool/bed/chair,/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/hallway/secondary/exit)
"bRn" = (/obj/structure/cable/pink{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable/pink{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
"bRo" = (/obj/structure/rack,/obj/item/weapon/tank/oxygen,/obj/item/weapon/tank/oxygen,/obj/item/clothing/mask/breath,/obj/item/clothing/mask/breath,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
"bRp" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
"bRq" = (/turf/simulated/wall,/area/toxins/xenobiology)
"bRr" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/machinery/camera{c_tag = "Xenobiology Pens"; dir = 4; network = list("SS13","RD")},/turf/simulated/floor/plasteel{dir = 8; icon_state = "warnwhite"},/area/toxins/xenobiology)
"bRs" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/cable/pink{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warnwhite"},/area/toxins/xenobiology)
-"bRt" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28; tag = "west"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "bluecorner"},/area/teleporter{name = "\improper Teleporter Room"})
-"bRu" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/simulated/floor/plasteel,/area/teleporter{name = "\improper Teleporter Room"})
-"bRv" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor/plasteel,/area/teleporter{name = "\improper Teleporter Room"})
-"bRw" = (/obj/machinery/shieldwallgen,/obj/structure/window/reinforced,/turf/simulated/floor/plasteel{icon_state = "bot"; dir = 1},/area/teleporter{name = "\improper Teleporter Room"})
+"bRt" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/wall/r_wall,/area/crew_quarters/hor)
+"bRu" = (/obj/structure/cable/pink{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/crew_quarters/hor)
+"bRv" = (/obj/machinery/door/airlock/glass_command{name = "Research Director's Office"; req_access_txt = "30"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/crew_quarters/hor)
+"bRw" = (/obj/structure/cable/pink{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/disposal,/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteblue"},/area/crew_quarters/hor)
"bRx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{dir = 8; icon_state = "bluecorner"},/area/hallway/primary/aft{name = "Aft Hallway"})
"bRy" = (/obj/structure/cable/cyan{tag = "icon-0-4"; icon_state = "0-4"},/obj/machinery/power/apc{dir = 8; name = "Medbay Maintenance APC"; pixel_x = -24},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/medbay)
"bRz" = (/obj/structure/cable/cyan{tag = "icon-1-2"; icon_state = "1-2"},/obj/structure/table,/obj/machinery/cell_charger,/obj/structure/cable/cyan{tag = "icon-1-8"; icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/medbay)
@@ -4998,18 +4998,18 @@
"bSf" = (/obj/structure/cable/cyan{tag = "icon-2-8"; icon_state = "2-8"},/turf/simulated/floor/plating{tag = "icon-warnplatecorner (WEST)"; icon_state = "warnplatecorner"; dir = 8},/area/maintenance/asteroidstation/medbay)
"bSg" = (/obj/structure/rack,/obj/item/weapon/extinguisher,/obj/item/clothing/mask/gas,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
"bSh" = (/obj/structure/cable/pink{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
-"bSi" = (/obj/structure/cable/pink{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
-"bSj" = (/obj/machinery/power/apc{dir = 2; name = "Xenobiology APC"; pixel_x = 0; pixel_y = -25},/obj/structure/cable/pink,/turf/simulated/floor/plating,/area/toxins/xenobiology)
+"bSi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/stool/bed/chair,/obj/machinery/camera{c_tag = "Escape Hallway Port"},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/hallway/secondary/exit)
+"bSj" = (/obj/structure/table/glass,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/item/clothing/gloves/color/latex,/obj/item/weapon/surgical_drapes,/turf/simulated/floor/plasteel{icon_state = "white"},/area/assembly/assembly_line)
"bSk" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "xenobio1"; name = "Containment Door"},/obj/structure/cable/pink{d2 = 2; icon_state = "0-2"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/toxins/xenobiology)
"bSl" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{dir = 8; icon_state = "warnwhite"},/area/toxins/xenobiology)
"bSm" = (/obj/structure/cable/pink{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plasteel{dir = 4; icon_state = "warnwhite"},/area/toxins/xenobiology)
"bSn" = (/obj/structure/table/reinforced,/obj/structure/sign/electricshock{pixel_y = 32},/obj/machinery/door_control{id = "xenobio4"; name = "Containment Blast Doors"; pixel_x = 0; pixel_y = 0; req_access_txt = "55"},/obj/structure/window/reinforced,/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/toxins/xenobiology)
"bSo" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "xenobio4"; name = "Containment Door"},/obj/structure/cable/pink{d2 = 2; icon_state = "0-2"},/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/toxins/xenobiology)
-"bSp" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/plasteel{icon_state = "warning"},/area/teleporter{name = "\improper Teleporter Room"})
-"bSq" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{icon_state = "warning"},/area/teleporter{name = "\improper Teleporter Room"})
-"bSr" = (/turf/simulated/floor/plasteel{icon_state = "warning"},/area/teleporter{name = "\improper Teleporter Room"})
-"bSs" = (/turf/simulated/floor/plasteel{tag = "icon-warningcorner (NORTH)"; icon_state = "warningcorner"; dir = 1},/area/teleporter{name = "\improper Teleporter Room"})
-"bSt" = (/obj/machinery/door/airlock/command{name = "Teleporter Room"; req_access_txt = "17"},/turf/simulated/floor/plasteel,/area/teleporter{name = "\improper Teleporter Room"})
+"bSp" = (/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteblue"},/area/crew_quarters/hor)
+"bSq" = (/obj/machinery/door/window/eastleft{name = "Medical Delivery"; req_access_txt = "5"},/obj/structure/window/reinforced,/turf/simulated/floor/plasteel{icon_state = "delivery"},/area/medical/medbay2)
+"bSr" = (/obj/structure/cable/cyan{tag = "icon-0-2"; icon_state = "0-2"},/obj/machinery/power/smes{input_attempt = 1},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/medbay)
+"bSs" = (/turf/simulated/wall/r_wall,/area/hallway/primary/aft{name = "Aft Hallway"})
+"bSt" = (/turf/simulated/floor/plating/asteroid,/area/space)
"bSu" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 8},/area/hallway/primary/aft{name = "Aft Hallway"})
"bSv" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel,/area/hallway/primary/aft{name = "Aft Hallway"})
"bSw" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/aft{name = "Aft Hallway"})
@@ -5045,11 +5045,11 @@
"bTa" = (/obj/structure/cable/pink{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{dir = 8; icon_state = "warnwhite"},/area/toxins/xenobiology)
"bTb" = (/obj/structure/cable/pink{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable/pink{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/pink{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plasteel{dir = 4; icon_state = "warnwhite"},/area/toxins/xenobiology)
"bTc" = (/obj/machinery/door/window/northleft{dir = 4; name = "Containment Pen"; req_access_txt = "55"},/obj/machinery/door/poddoor/preopen{id = "xenobio4"; name = "Containment Door"},/obj/structure/cable/pink{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/pink{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/engine,/area/toxins/xenobiology)
-"bTd" = (/obj/machinery/computer/teleporter,/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/teleporter{name = "\improper Teleporter Room"})
-"bTe" = (/obj/machinery/teleport/station,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/teleporter{name = "\improper Teleporter Room"})
-"bTf" = (/obj/machinery/teleport/hub,/turf/simulated/floor/plasteel{dir = 5; icon_state = "warning"},/area/teleporter{name = "\improper Teleporter Room"})
-"bTg" = (/obj/machinery/light_switch{dir = 2; name = "light switch"; pixel_x = 0; pixel_y = -22},/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/teleporter{name = "\improper Teleporter Room"})
-"bTh" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/plasteel,/area/teleporter{name = "\improper Teleporter Room"})
+"bTd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"})
+"bTe" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/wall/r_wall,/area/teleporter)
+"bTf" = (/turf/simulated/wall/r_wall,/area/teleporter)
+"bTg" = (/obj/machinery/door/airlock/maintenance{name = "Research Maintenance"; req_access_txt = "47"},/turf/simulated/floor/plating,/area/medical/research{name = "Research Division"})
+"bTh" = (/obj/machinery/door/airlock/command{name = "Teleporter Room"; req_access_txt = "17"},/turf/simulated/floor/plasteel,/area/teleporter)
"bTi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{dir = 1; icon_state = "bluecorner"},/area/hallway/primary/aft{name = "Aft Hallway"})
"bTj" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/camera{c_tag = "Aft Hallway Central"; dir = 8},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/aft{name = "Aft Hallway"})
"bTk" = (/obj/structure/table,/obj/item/weapon/tank/emergency_oxygen{pixel_x = -8; pixel_y = 0},/obj/item/weapon/tank/emergency_oxygen{pixel_x = -8; pixel_y = 0},/obj/item/clothing/mask/breath{pixel_x = 4; pixel_y = 0},/obj/item/clothing/mask/breath{pixel_x = 4; pixel_y = 0},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/medbay)
@@ -5100,9 +5100,9 @@
"bUd" = (/obj/structure/table/reinforced,/obj/machinery/door_control{id = "xenobio1"; name = "Containment Blast Doors"; pixel_x = 0; pixel_y = 0; req_access_txt = "55"},/obj/structure/window/reinforced{tag = "icon-rwindow (NORTH)"; icon_state = "rwindow"; dir = 1},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warning"},/area/toxins/xenobiology)
"bUe" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "xenobio4"; name = "Containment Door"},/obj/structure/cable/pink,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/toxins/xenobiology)
"bUf" = (/turf/simulated/wall/r_wall,/area/crew_quarters/hor)
-"bUg" = (/turf/simulated/wall,/area/crew_quarters/hor)
-"bUh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/wall,/area/crew_quarters/hor)
-"bUi" = (/obj/machinery/door/airlock/command{name = "Teleporter Room"; req_access_txt = "17"},/obj/structure/cable/pink{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plasteel{icon_state = "white"},/area/crew_quarters/hor)
+"bUg" = (/turf/simulated/floor/plasteel{dir = 9; icon_state = "blue"},/area/teleporter)
+"bUh" = (/turf/simulated/floor/plasteel{dir = 1; icon_state = "blue"},/area/teleporter)
+"bUi" = (/obj/structure/extinguisher_cabinet{pixel_y = 30; tag = "(north)"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "blue"},/area/teleporter)
"bUj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/obj/structure/extinguisher_cabinet{pixel_x = -27; tag = "west"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/aft{name = "Aft Hallway"})
"bUk" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/disposalpipe/sortjunction{icon_state = "pipe-j2s"; sortType = 23},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/aft{name = "Aft Hallway"})
"bUl" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall,/area/hallway/primary/aft{name = "Aft Hallway"})
@@ -5156,8 +5156,8 @@
"bVh" = (/obj/machinery/computer/aifixer,/obj/machinery/ai_status_display{pixel_y = 32},/turf/simulated/floor/plasteel{dir = 9; icon_state = "whiteblue"},/area/crew_quarters/hor)
"bVi" = (/obj/machinery/computer/robotics,/obj/machinery/firealarm{pixel_y = 25},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteblue"},/area/crew_quarters/hor)
"bVj" = (/obj/machinery/computer/mecha,/obj/machinery/requests_console{announcementConsole = 1; department = "Research Director's Desk"; departmentType = 5; name = "Research Director RC"; pixel_x = -2; pixel_y = 30},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteblue"},/area/crew_quarters/hor)
-"bVk" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteblue"},/area/crew_quarters/hor)
-"bVl" = (/obj/structure/cable/pink{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteblue"},/area/crew_quarters/hor)
+"bVk" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{dir = 1; icon_state = "blue"},/area/teleporter)
+"bVl" = (/obj/structure/closet/body_bag,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
"bVm" = (/obj/structure/table,/obj/item/weapon/circuitboard/aicore{pixel_x = -2; pixel_y = 4},/obj/item/weapon/circuitboard/teleporter,/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{dir = 5; icon_state = "whiteblue"},/area/crew_quarters/hor)
"bVn" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall/r_wall,/area/crew_quarters/hor)
"bVo" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/sortjunction{dir = 1; icon_state = "pipe-j2s"; sortType = 13},/turf/simulated/floor/plasteel{dir = 8; icon_state = "neutralcorner"},/area/hallway/primary/aft{name = "Aft Hallway"})
@@ -5420,12 +5420,12 @@
"cal" = (/obj/machinery/requests_console{department = "Research"; departmentType = 2; name = "Research Requests Console"; pixel_x = 0; pixel_y = -32},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/xenobiology)
"cam" = (/obj/machinery/light_switch{dir = 2; name = "light switch"; pixel_x = 0; pixel_y = -22},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/xenobiology)
"can" = (/obj/structure/closet/l3closet/scientist,/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/xenobiology)
-"cao" = (/obj/machinery/vending/cigarette,/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"})
-"cap" = (/obj/structure/sign/nosmoking_2{pixel_y = 32},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"})
-"caq" = (/turf/simulated/floor/plasteel{dir = 4; icon_state = "whiteblue"},/area/medical/research{name = "Research Division"})
-"car" = (/obj/machinery/door/airlock/glass_command{name = "Research Director's Office"; req_access_txt = "30"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "whiteblue"},/area/crew_quarters/hor)
+"cao" = (/obj/machinery/vending/cigarette,/obj/structure/sign/nosmoking_2{pixel_y = 32},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"})
+"cap" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"})
+"caq" = (/obj/machinery/shieldwallgen,/turf/simulated/floor/plasteel{icon_state = "bot"; dir = 1},/area/teleporter)
+"car" = (/obj/structure/closet/crate,/obj/item/weapon/crowbar,/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 8},/area/teleporter)
"cas" = (/obj/structure/cable/pink{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/crew_quarters/hor)
-"cat" = (/obj/structure/cable/pink{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/pink{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/crew_quarters/hor)
+"cat" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/teleporter)
"cau" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/structure/cable/pink{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/crew_quarters/hor)
"cav" = (/obj/structure/cable/pink{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warnwhitecorner"; tag = "icon-warnwhitecorner (EAST)"},/area/crew_quarters/hor)
"caw" = (/obj/machinery/atmospherics/pipe/simple/general/hidden{tag = "icon-intact-f (SOUTHEAST)"; dir = 6},/obj/structure/cable/pink{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/crew_quarters/hor)
@@ -5479,7 +5479,7 @@
"cbs" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/wall/r_wall,/area/toxins/xenobiology)
"cbt" = (/obj/machinery/vending/cola,/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"})
"cbu" = (/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"})
-"cbv" = (/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitebluecorner"},/area/medical/research{name = "Research Division"})
+"cbv" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/simulated/floor/plasteel,/area/teleporter)
"cbw" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 1},/obj/structure/cable/pink,/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/crew_quarters/hor)
"cbx" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating{tag = "icon-warnplatecorner (WEST)"; icon_state = "warnplatecorner"; dir = 8},/area/crew_quarters/hor)
"cby" = (/obj/machinery/door/airlock/glass_command{name = "Server Room"; req_access_txt = "30"},/obj/machinery/atmospherics/pipe/simple/general/hidden,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 1},/area/crew_quarters/hor)
@@ -5510,7 +5510,7 @@
"cbX" = (/obj/structure/closet/secure_closet/personal/patient,/turf/simulated/floor/plasteel{dir = 10; icon_state = "whitegreen"},/area/medical/virology)
"cbY" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/medical,/turf/simulated/floor/plasteel{dir = 2; icon_state = "whitegreen"},/area/medical/virology)
"cbZ" = (/obj/structure/table/glass,/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor/plasteel{dir = 6; icon_state = "whitegreen"},/area/medical/virology)
-"cca" = (/obj/structure/table/glass,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/item/clothing/gloves/latex,/obj/item/device/healthanalyzer,/obj/item/clothing/glasses/hud/health,/turf/simulated/floor/plasteel{dir = 2; icon_state = "whitegreencorner"},/area/medical/virology)
+"cca" = (/obj/structure/table/glass,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/item/clothing/gloves/color/latex,/obj/item/device/healthanalyzer,/obj/item/clothing/glasses/hud/health,/turf/simulated/floor/plasteel{dir = 2; icon_state = "whitegreencorner"},/area/medical/virology)
"ccb" = (/obj/structure/table/glass,/obj/item/weapon/reagent_containers/glass/bottle/cold{pixel_x = 3; pixel_y = 3},/obj/item/weapon/reagent_containers/glass/bottle/flu_virion,/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/extinguisher_cabinet{pixel_y = -30; tag = "(south)"},/turf/simulated/floor/plasteel{dir = 2; icon_state = "whitegreen"},/area/medical/virology)
"ccc" = (/obj/structure/table/glass,/obj/item/weapon/reagent_containers/spray/cleaner,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/obj/item/weapon/hand_labeler,/obj/item/device/radio/headset/headset_med,/turf/simulated/floor/plasteel{dir = 8; icon_state = "whitegreencorner"},/area/medical/virology)
"ccd" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only{dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/medical/virology)
@@ -5537,7 +5537,7 @@
"ccy" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"})
"ccz" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/obj/machinery/alarm{frequency = 1439; pixel_y = 23},/obj/machinery/door/firedoor/border_only{dir = 8},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"})
"ccA" = (/obj/structure/noticeboard{pixel_y = 32; tag = "north"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"})
-"ccB" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"})
+"ccB" = (/obj/machinery/alarm{frequency = 1439; pixel_y = 23},/turf/simulated/floor/plasteel{dir = 1; icon_state = "blue"},/area/teleporter)
"ccC" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; external_pressure_bound = 101.325; on = 1; pressure_checks = 0},/turf/simulated/floor/bluegrid,/area/crew_quarters/hor)
"ccD" = (/obj/machinery/atmospherics/pipe/manifold/general/hidden,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/crew_quarters/hor)
"ccE" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; external_pressure_bound = 101.325; on = 1; pressure_checks = 0},/turf/simulated/floor/bluegrid,/area/crew_quarters/hor)
@@ -5700,8 +5700,8 @@
"cfF" = (/obj/structure/disposalpipe/segment,/turf/simulated/wall,/area/maintenance/incinerator)
"cfG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/wall,/area/maintenance/incinerator)
"cfH" = (/turf/simulated/wall/r_wall,/area/maintenance/incinerator)
-"cfI" = (/turf/simulated/floor/airless,/area/toxins/test_area)
-"cfJ" = (/obj/machinery/camera{c_tag = "Toxins Test Chamber Fore"; dir = 2; network = list("SS13","Toxins")},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/airless,/area/toxins/test_area)
+"cfI" = (/turf/simulated/floor/plasteel/airless,/area/toxins/test_area)
+"cfJ" = (/obj/machinery/camera{c_tag = "Toxins Test Chamber Fore"; dir = 2; network = list("SS13","Toxins")},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plasteel/airless,/area/toxins/test_area)
"cfK" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plasteel{tag = "icon-warningcorner (NORTH)"; icon_state = "warningcorner"; dir = 1},/area/maintenance/asmaint2{icon_state = "toxtest"; name = "Toxins Launch Room"})
"cfL" = (/obj/machinery/light/small{dir = 1},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/simulated/floor/plasteel,/area/maintenance/asmaint2{icon_state = "toxtest"; name = "Toxins Launch Room"})
"cfM" = (/obj/machinery/camera{c_tag = "Toxins Launch Room Access"; dir = 9; network = list("SS13","RD")},/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/machinery/alarm{frequency = 1439; pixel_y = 23},/turf/simulated/floor/plasteel,/area/maintenance/asmaint2{icon_state = "toxtest"; name = "Toxins Launch Room"})
@@ -5719,7 +5719,7 @@
"cfY" = (/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/mixing)
"cfZ" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/mixing)
"cga" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitepurple"},/area/toxins/mixing)
-"cgb" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only{tag = "icon-door_open (EAST)"; icon_state = "door_open"; dir = 4},/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/toxins/mixing)
+"cgb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/light{dir = 1},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"})
"cgc" = (/obj/structure/closet/secure_closet/scientist,/turf/simulated/floor/plasteel{dir = 8; icon_state = "whitepurple"},/area/medical/research{name = "Research Division"})
"cgd" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"})
"cge" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"})
@@ -5898,8 +5898,8 @@
"cjv" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/turf/simulated/wall/r_wall,/area/maintenance/incinerator)
"cjw" = (/obj/machinery/access_button{command = "cycle_exterior"; layer = 3.1; master_tag = "incinerator_access_control"; name = "Incinerator airlock control"; pixel_x = 24; pixel_y = 8},/obj/structure/sign/fire{pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/obj/machinery/light/small,/turf/simulated/floor/plating,/area/maintenance/incinerator)
"cjx" = (/obj/machinery/atmospherics/unary/outlet_injector/on{dir = 8; frequency = 1443; id = "air_in"},/obj/machinery/sparker{id = "Incinerator"; pixel_x = -25},/turf/simulated/floor/engine/vacuum,/area/maintenance/incinerator)
-"cjy" = (/turf/simulated/floor/airless{dir = 2; icon_state = "warningcorner"; tag = ""},/area/toxins/test_area)
-"cjz" = (/turf/simulated/floor/airless{dir = 1; icon_state = "warningcorner"; tag = ""},/area/toxins/test_area)
+"cjy" = (/turf/simulated/floor/plasteel/airless{dir = 2; icon_state = "warningcorner"; tag = ""},/area/toxins/test_area)
+"cjz" = (/turf/simulated/floor/plasteel/airless{dir = 1; icon_state = "warningcorner"; tag = ""},/area/toxins/test_area)
"cjA" = (/obj/machinery/door/airlock/external{name = "Toxins Test Chamber"; req_access_txt = "0"},/turf/simulated/floor/plating/airless{tag = "icon-warnplate"; icon_state = "warnplate"},/area/toxins/test_area)
"cjB" = (/obj/structure/table/glass,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/turf/simulated/floor/plasteel,/area/maintenance/asmaint2{icon_state = "toxtest"; name = "Toxins Launch Room"})
"cjC" = (/obj/structure/stool/bed/chair{dir = 8},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 22; tag = "north"},/turf/simulated/floor/plasteel,/area/maintenance/asmaint2{icon_state = "toxtest"; name = "Toxins Launch Room"})
@@ -5954,14 +5954,14 @@
"ckz" = (/turf/simulated/wall,/area/atmos)
"ckA" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/maintenance/incinerator)
"ckB" = (/turf/space,/area/syndicate_station/southeast)
-"ckC" = (/turf/simulated/floor/airless{dir = 4; icon_state = "warning"},/area/toxins/test_area)
+"ckC" = (/turf/simulated/floor/plasteel/airless{dir = 4; icon_state = "warning"},/area/toxins/test_area)
"ckD" = (/turf/simulated/floor/plating/airless{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/toxins/test_area)
"ckE" = (/turf/simulated/floor/plating/airless,/area/toxins/test_area)
"ckF" = (/turf/simulated/floor/plating/airless{tag = "icon-warnplate (EAST)"; icon_state = "warnplate"; dir = 4},/area/toxins/test_area)
-"ckG" = (/turf/simulated/floor/airless{dir = 8; icon_state = "warning"},/area/toxins/test_area)
-"ckH" = (/turf/simulated/floor/airless{dir = 8; icon_state = "warningcorner"; tag = ""},/area/toxins/test_area)
-"ckI" = (/turf/simulated/floor/airless{icon_state = "warning"; dir = 1},/area/toxins/test_area)
-"ckJ" = (/turf/simulated/floor/airless{dir = 5; icon_state = "warning"},/area/toxins/test_area)
+"ckG" = (/turf/simulated/floor/plasteel/airless{dir = 8; icon_state = "warning"},/area/toxins/test_area)
+"ckH" = (/turf/simulated/floor/plasteel/airless{dir = 8; icon_state = "warningcorner"; tag = ""},/area/toxins/test_area)
+"ckI" = (/turf/simulated/floor/plasteel/airless{icon_state = "warning"; dir = 1},/area/toxins/test_area)
+"ckJ" = (/turf/simulated/floor/plasteel/airless{dir = 5; icon_state = "warning"},/area/toxins/test_area)
"ckK" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/plating/asteroid/airless,/area/maintenance/asmaint2{icon_state = "toxtest"; name = "Toxins Launch Room"})
"ckL" = (/obj/structure/table/glass,/obj/machinery/computer/security/telescreen{desc = "Used for watching the test chamber."; dir = 4; layer = 4; name = "Toxins Test Chamber Monitor"; network = list("Test"); pixel_x = -30; pixel_y = 0},/turf/simulated/floor/plasteel,/area/maintenance/asmaint2{icon_state = "toxtest"; name = "Toxins Launch Room"})
"ckM" = (/obj/structure/stool/bed/chair{dir = 8},/turf/simulated/floor/plasteel,/area/maintenance/asmaint2{icon_state = "toxtest"; name = "Toxins Launch Room"})
@@ -6007,10 +6007,10 @@
"clA" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; external_pressure_bound = 0; frequency = 1441; id_tag = "tox_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/simulated/floor/engine{carbon_dioxide = 0; name = "plasma floor"; nitrogen = 0; oxygen = 0; toxins = 70000},/area/atmos)
"clB" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "tox_sensor"},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/engine{carbon_dioxide = 0; name = "plasma floor"; nitrogen = 0; oxygen = 0; toxins = 70000},/area/atmos)
"clC" = (/turf/simulated/floor/engine{carbon_dioxide = 0; name = "plasma floor"; nitrogen = 0; oxygen = 0; toxins = 70000},/area/atmos)
-"clD" = (/turf/simulated/floor/airless{icon_state = "warning"},/area/toxins/test_area)
-"clE" = (/turf/simulated/floor/airless{dir = 6; icon_state = "warning"},/area/toxins/test_area)
-"clF" = (/turf/simulated/floor/airless{dir = 10; icon_state = "warning"},/area/toxins/test_area)
-"clG" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/airless{dir = 6; icon_state = "warning"},/area/toxins/test_area)
+"clD" = (/turf/simulated/floor/plasteel/airless{icon_state = "warning"},/area/toxins/test_area)
+"clE" = (/turf/simulated/floor/plasteel/airless{dir = 6; icon_state = "warning"},/area/toxins/test_area)
+"clF" = (/turf/simulated/floor/plasteel/airless{dir = 10; icon_state = "warning"},/area/toxins/test_area)
+"clG" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plasteel/airless{dir = 6; icon_state = "warning"},/area/toxins/test_area)
"clH" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'BOMB RANGE"; name = "BOMB RANGE"},/turf/simulated/wall,/area/mine/explored)
"clI" = (/obj/structure/table/glass,/obj/machinery/driver_button{dir = 2; id = "toxinsdriver"; pixel_x = -24; pixel_y = 0},/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/simulated/floor/plasteel,/area/maintenance/asmaint2{icon_state = "toxtest"; name = "Toxins Launch Room"})
"clJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/machinery/doppler_array,/turf/simulated/floor/plasteel,/area/maintenance/asmaint2{icon_state = "toxtest"; name = "Toxins Launch Room"})
@@ -6077,9 +6077,9 @@
"cmS" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 8},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"})
"cmT" = (/obj/structure/extinguisher_cabinet{pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"})
"cmU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/newscaster{hitstaken = 1; pixel_x = 0; pixel_y = -32},/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"})
-"cmV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/plasteel{tag = "icon-whitebluecorner"; icon_state = "whitebluecorner"; dir = 2},/area/medical/research{name = "Research Division"})
-"cmW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel{tag = "icon-whiteblue"; icon_state = "whiteblue"; dir = 2},/area/medical/research{name = "Research Division"})
-"cmX" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/simulated/floor/plasteel{tag = "icon-whitebluecorner (WEST)"; icon_state = "whitebluecorner"; dir = 8},/area/medical/research{name = "Research Division"})
+"cmV" = (/obj/machinery/shieldwallgen,/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "bot"; dir = 1},/area/teleporter)
+"cmW" = (/obj/structure/rack,/obj/item/weapon/tank/oxygen,/obj/item/weapon/tank/oxygen,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/machinery/camera{c_tag = "Teleporter Room"; dir = 5; network = list("SS13","RD")},/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 8},/area/teleporter)
+"cmX" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/plasteel,/area/teleporter)
"cmY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9; pixel_y = 0},/obj/machinery/light,/turf/simulated/floor/plasteel{icon_state = "white"},/area/medical/research{name = "Research Division"})
"cmZ" = (/obj/machinery/shower{tag = "icon-shower (EAST)"; icon_state = "shower"; dir = 4},/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/medical/research{name = "Research Division"})
"cna" = (/obj/machinery/light/small,/turf/simulated/floor/plasteel{icon_state = "freezerfloor"},/area/medical/research{name = "Research Division"})
@@ -6100,7 +6100,7 @@
"cnp" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible,/obj/machinery/meter,/turf/simulated/floor/plasteel,/area/atmos)
"cnq" = (/obj/machinery/atmospherics/pipe/simple/green/visible,/obj/machinery/meter,/turf/simulated/floor/plasteel,/area/atmos)
"cnr" = (/obj/machinery/computer/general_air_control/large_tank_control{frequency = 1441; input_tag = "tox_in"; name = "Toxin Supply Control"; output_tag = "tox_out"; sensors = list("tox_sensor" = "Tank")},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/camera{c_tag = "Atmospherics Fore Starboard"; dir = 8},/turf/simulated/floor/plasteel{tag = "icon-purple (EAST)"; icon_state = "purple"; dir = 4},/area/atmos)
-"cns" = (/obj/machinery/camera{c_tag = "Toxins Test Chamber Port"; dir = 4; network = list("SS13","Test")},/obj/machinery/light/small{dir = 8},/turf/simulated/floor/airless,/area/toxins/test_area)
+"cns" = (/obj/machinery/camera{c_tag = "Toxins Test Chamber Port"; dir = 4; network = list("SS13","Test")},/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plasteel/airless,/area/toxins/test_area)
"cnt" = (/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating/airless,/area/toxins/test_area)
"cnu" = (/obj/item/device/radio/beacon,/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating/airless,/area/toxins/test_area)
"cnv" = (/obj/machinery/door/poddoor{id = "toxinsdriver"; name = "Toxins Launcher Bay Door"},/turf/simulated/floor/plating/airless,/area/toxins/test_area)
@@ -6123,9 +6123,9 @@
"cnM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/door/airlock/glass_research{name = "Telescience Lab"; req_access_txt = "47"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whiteyellowfull"; tag = "icon-whitehall (WEST)"},/area/toxins/telesci)
"cnN" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/toxins/telesci)
"cnO" = (/turf/simulated/wall,/area/toxins/lab)
-"cnP" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/toxins/lab)
+"cnP" = (/obj/item/device/radio/beacon,/turf/simulated/floor/plasteel,/area/teleporter)
"cnQ" = (/obj/machinery/door/airlock/glass_research{name = "Research and Development Lab"; req_access_txt = "7"},/turf/simulated/floor/plasteel{tag = "icon-whitebluefull"; name = "floor"; desc = ""; icon_state = "whitebluefull"},/area/toxins/lab)
-"cnR" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/toxins/lab)
+"cnR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel,/area/teleporter)
"cnS" = (/turf/simulated/wall/r_wall,/area/toxins/lab)
"cnT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor/plasteel,/area/hallway/primary/aft{name = "Aft Hallway"})
"cnU" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/aft{name = "Aft Hallway"})
@@ -6169,16 +6169,16 @@
"coG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 9; icon_state = "warnwhite"},/area/toxins/telesci)
"coH" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor/plasteel{icon_state = "warnwhite"; dir = 1},/area/toxins/telesci)
"coI" = (/turf/simulated/floor/plasteel{tag = "icon-warnwhite (NORTHEAST)"; icon_state = "warnwhite"; dir = 5},/area/toxins/telesci)
-"coJ" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/turf/simulated/floor/plasteel{dir = 9; icon_state = "whiteblue"},/area/toxins/lab)
-"coK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteblue"},/area/toxins/lab)
+"coJ" = (/turf/simulated/floor/plasteel,/area/teleporter)
+"coK" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28; tag = "west"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "bluecorner"},/area/teleporter)
"coL" = (/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteblue"},/area/toxins/lab)
-"coM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteblue"},/area/toxins/lab)
-"coN" = (/obj/structure/extinguisher_cabinet{pixel_y = 30; tag = "(north)"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteblue"},/area/toxins/lab)
-"coO" = (/obj/structure/table/glass,/obj/item/weapon/paper_bin,/obj/machinery/light{dir = 1},/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteblue"},/area/toxins/lab)
-"coP" = (/obj/structure/table/glass,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteblue"},/area/toxins/lab)
-"coQ" = (/obj/machinery/alarm{name = "alarm"; pixel_y = 24},/obj/structure/table/glass,/obj/item/weapon/reagent_containers/glass/beaker/sulphuric,/turf/simulated/floor/plasteel{dir = 1; icon_state = "whiteblue"},/area/toxins/lab)
-"coR" = (/obj/structure/table/glass,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/capacitor,/turf/simulated/floor/plasteel{dir = 5; icon_state = "whiteblue"},/area/toxins/lab)
-"coS" = (/obj/structure/table,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/simulated/floor/plasteel{dir = 8; icon_state = "whitecorner"},/area/hallway/primary/aft{name = "Aft Hallway"})
+"coM" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor/plasteel,/area/teleporter)
+"coN" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/simulated/floor/plasteel,/area/teleporter)
+"coO" = (/turf/simulated/floor/plasteel{dir = 1; icon_state = "bluecorner"},/area/teleporter)
+"coP" = (/obj/machinery/shieldwallgen,/obj/structure/window/reinforced,/turf/simulated/floor/plasteel{icon_state = "bot"; dir = 1},/area/teleporter)
+"coQ" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/plasteel,/area/teleporter)
+"coR" = (/obj/structure/table/glass,/obj/item/weapon/hand_tele,/turf/simulated/floor/plasteel{dir = 5; icon_state = "blue"},/area/teleporter)
+"coS" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/wall/r_wall,/area/hallway/primary/aft{name = "Aft Hallway"})
"coT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel,/area/hallway/primary/aft{name = "Aft Hallway"})
"coU" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/disposalpipe/junction{icon_state = "pipe-j2"; dir = 2},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/primary/aft{name = "Aft Hallway"})
"coV" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/chapel/main)
@@ -6199,8 +6199,8 @@
"cpk" = (/obj/machinery/atmospherics/unary/outlet_injector/on{dir = 8; frequency = 1441; id = "n2o_in"; pixel_y = 1},/turf/simulated/floor/engine/n20,/area/atmos)
"cpl" = (/obj/machinery/portable_atmospherics/canister/sleeping_agent/roomfiller{valve_open = 1},/turf/simulated/floor/engine/n20,/area/atmos)
"cpm" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/simulated/floor/plating/airless,/area/space)
-"cpn" = (/turf/simulated/floor/airless{dir = 9; icon_state = "warning"},/area/toxins/test_area)
-"cpo" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/airless{dir = 5; icon_state = "warning"},/area/toxins/test_area)
+"cpn" = (/turf/simulated/floor/plasteel/airless{dir = 9; icon_state = "warning"},/area/toxins/test_area)
+"cpo" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plasteel/airless{dir = 5; icon_state = "warning"},/area/toxins/test_area)
"cpp" = (/obj/structure/extinguisher_cabinet{pixel_x = -27; tag = "west"},/turf/simulated/floor/plasteel,/area/toxins/storage)
"cpq" = (/turf/simulated/floor/plasteel,/area/toxins/storage)
"cpr" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor/plasteel,/area/toxins/storage)
@@ -6214,17 +6214,17 @@
"cpz" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "warnwhite"},/area/toxins/telesci)
"cpA" = (/obj/item/device/radio/beacon,/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/telesci)
"cpB" = (/turf/simulated/floor/plasteel{dir = 4; icon_state = "warnwhite"},/area/toxins/telesci)
-"cpC" = (/obj/structure/table/glass,/obj/item/clothing/glasses/welding,/obj/machinery/light_switch{dir = 8; pixel_x = -22},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/plasteel{dir = 8; icon_state = "whiteblue"},/area/toxins/lab)
-"cpD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/junction{icon_state = "pipe-j2"; dir = 4},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/lab)
-"cpE" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warnwhitecorner"; tag = "icon-warnwhitecorner (EAST)"},/area/toxins/lab)
-"cpF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/toxins/lab)
-"cpG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/toxins/lab)
-"cpH" = (/obj/structure/stool/bed/chair/office/light{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warnwhitecorner"; tag = "icon-warnwhitecorner (EAST)"},/area/toxins/lab)
-"cpI" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/lab)
-"cpJ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whiteblue"},/area/toxins/lab)
-"cpK" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only{tag = "icon-door_open (EAST)"; icon_state = "door_open"; dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/toxins/lab)
-"cpL" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "whitehall"},/area/hallway/primary/aft{name = "Aft Hallway"})
-"cpM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/junction{tag = "icon-pipe-j2 (NORTH)"; icon_state = "pipe-j2"; dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/hallway/primary/aft{name = "Aft Hallway"})
+"cpC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/simulated/wall/r_wall,/area/teleporter)
+"cpD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel{icon_state = "warning"},/area/teleporter)
+"cpE" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel{tag = "icon-warningcorner (NORTH)"; icon_state = "warningcorner"; dir = 1},/area/teleporter)
+"cpF" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plasteel,/area/teleporter)
+"cpG" = (/obj/structure/table/glass,/obj/item/weapon/storage/toolbox/emergency,/turf/simulated/floor/plasteel{dir = 4; icon_state = "blue"},/area/teleporter)
+"cpH" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/plasteel,/area/teleporter)
+"cpI" = (/obj/machinery/computer/teleporter,/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/teleporter)
+"cpJ" = (/obj/machinery/light_switch{dir = 2; name = "light switch"; pixel_x = 0; pixel_y = -22},/turf/simulated/floor/plasteel{dir = 8; icon_state = "warning"},/area/teleporter)
+"cpK" = (/turf/simulated/floor/plasteel{dir = 2; icon_state = "bluecorner"},/area/teleporter)
+"cpL" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel,/area/hallway/primary/aft{name = "Aft Hallway"})
+"cpM" = (/obj/structure/rack,/obj/item/clothing/suit/hazardvest,/obj/item/clothing/suit/hazardvest,/obj/item/clothing/suit/hazardvest,/obj/item/clothing/gloves/color/black,/obj/item/clothing/gloves/color/black,/obj/item/clothing/gloves/color/black,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/turf/simulated/floor/plasteel,/area/atmos)
"cpN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/simulated/floor/plasteel,/area/hallway/primary/aft{name = "Aft Hallway"})
"cpO" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/main)
"cpP" = (/obj/machinery/camera{c_tag = "Chapel Foyer"; dir = 8},/obj/machinery/light_switch{dir = 4; pixel_x = 22},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/main)
@@ -6235,7 +6235,6 @@
"cpU" = (/obj/structure/stool,/turf/simulated/floor/plasteel{dir = 8; icon_state = "chapel"},/area/chapel/main)
"cpV" = (/obj/machinery/portable_atmospherics/canister/air,/obj/structure/window/reinforced,/turf/simulated/floor/plasteel{icon_state = "bot"},/area/atmos)
"cpW" = (/obj/item/weapon/crowbar,/obj/item/weapon/wrench,/obj/item/device/multitool,/obj/item/weapon/grenade/chem_grenade/metalfoam,/obj/item/weapon/grenade/chem_grenade/metalfoam,/obj/item/weapon/grenade/chem_grenade/metalfoam,/obj/item/weapon/grenade/chem_grenade/metalfoam,/obj/structure/table,/turf/simulated/floor/plasteel,/area/atmos)
-"cpX" = (/obj/structure/rack,/obj/item/clothing/suit/hazardvest,/obj/item/clothing/suit/hazardvest,/obj/item/clothing/suit/hazardvest,/obj/item/clothing/gloves/black,/obj/item/clothing/gloves/black,/obj/item/clothing/gloves/black,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/turf/simulated/floor/plasteel,/area/atmos)
"cpY" = (/obj/machinery/space_heater,/turf/simulated/floor/plasteel{icon_state = "bot"},/area/atmos)
"cpZ" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 6},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/plasteel,/area/atmos)
"cqa" = (/obj/machinery/atmospherics/binary/pump{dir = 4; name = "N2 to Pure"; on = 0},/turf/simulated/floor/plasteel,/area/atmos)
@@ -6255,17 +6254,17 @@
"cqo" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/simulated/floor/plasteel{dir = 8; icon_state = "warnwhite"},/area/toxins/telesci)
"cqp" = (/obj/machinery/telepad,/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/telesci)
"cqq" = (/obj/machinery/camera{c_tag = "Telescience Test Chamber"; dir = 8; network = list("SS13","RD")},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warnwhite"},/area/toxins/telesci)
-"cqr" = (/obj/machinery/status_display,/turf/simulated/wall,/area/toxins/lab)
+"cqr" = (/obj/machinery/teleport/station,/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/teleporter)
"cqs" = (/obj/structure/table/glass,/obj/item/weapon/reagent_containers/glass/beaker{pixel_x = 8; pixel_y = 2},/obj/item/weapon/reagent_containers/glass/beaker{pixel_x = 8; pixel_y = 2},/obj/item/weapon/reagent_containers/glass/beaker/large{pixel_x = -3; pixel_y = 3},/obj/item/weapon/reagent_containers/dropper,/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/plasteel{dir = 8; icon_state = "whiteblue"},/area/toxins/lab)
-"cqt" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0; step_y = 0},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/lab)
+"cqt" = (/obj/machinery/teleport/hub,/turf/simulated/floor/plasteel{dir = 5; icon_state = "warning"},/area/teleporter)
"cqu" = (/turf/simulated/floor/plasteel{dir = 4; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/toxins/lab)
"cqv" = (/obj/machinery/r_n_d/protolathe,/turf/simulated/floor/plasteel{dir = 9; icon_state = "warning"},/area/toxins/lab)
"cqw" = (/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/toxins/lab)
"cqx" = (/obj/machinery/r_n_d/destructive_analyzer,/turf/simulated/floor/plasteel{dir = 5; icon_state = "warning"},/area/toxins/lab)
-"cqy" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{dir = 8; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/toxins/lab)
-"cqz" = (/turf/simulated/floor/plasteel{tag = "icon-whitebluecorner"; icon_state = "whitebluecorner"; dir = 2},/area/toxins/lab)
-"cqA" = (/obj/structure/stool/bed/chair/office/light{dir = 4},/obj/effect/landmark/start{name = "Scientist"},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (SOUTHEAST)"; icon_state = "whiteblue"; dir = 6},/area/toxins/lab)
-"cqB" = (/obj/structure/table/reinforced,/obj/machinery/door/window/eastleft{dir = 8; layer = 4; name = "Research Desk"; req_access_txt = "7"},/obj/machinery/door/firedoor/border_only{tag = "icon-door_open (EAST)"; icon_state = "door_open"; dir = 4},/turf/simulated/floor/plasteel{dir = 8; icon_state = "whiteblue"},/area/toxins/lab)
+"cqy" = (/obj/structure/table/glass,/turf/simulated/floor/plasteel{icon_state = "blue"; dir = 6},/area/teleporter)
+"cqz" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor/plasteel{dir = 0; icon_state = "blue"},/area/teleporter)
+"cqA" = (/turf/simulated/floor/plasteel{dir = 0; icon_state = "blue"},/area/teleporter)
+"cqB" = (/obj/machinery/power/apc{dir = 4; name = "Teleporter APC"; pixel_x = 0; pixel_y = 25},/obj/structure/cable/pink{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/teleporter)
"cqC" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall,/area/chapel/main)
"cqD" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/main)
"cqE" = (/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/main)
@@ -6284,7 +6283,7 @@
"cqR" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; external_pressure_bound = 0; frequency = 1441; id_tag = "n2_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/simulated/floor/engine{name = "n2 floor"; nitrogen = 100000; oxygen = 0},/area/atmos)
"cqS" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "n2_sensor"},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/engine{name = "n2 floor"; nitrogen = 100000; oxygen = 0},/area/atmos)
"cqT" = (/turf/simulated/floor/engine{name = "n2 floor"; nitrogen = 100000; oxygen = 0},/area/atmos)
-"cqU" = (/turf/simulated/floor/airless{dir = 4; icon_state = "warningcorner"; tag = ""},/area/toxins/test_area)
+"cqU" = (/turf/simulated/floor/plasteel/airless{dir = 4; icon_state = "warningcorner"; tag = ""},/area/toxins/test_area)
"cqV" = (/obj/machinery/portable_atmospherics/scrubber/huge,/turf/simulated/floor/plasteel,/area/toxins/storage)
"cqW" = (/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/obj/machinery/light,/turf/simulated/floor/plasteel{icon_state = "bot"},/area/toxins/storage)
"cqX" = (/obj/machinery/computer/area_atmos,/turf/simulated/floor/plasteel,/area/toxins/storage)
@@ -6296,11 +6295,11 @@
"crd" = (/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/telesci)
"cre" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 29; tag = "east"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warnwhite"},/area/toxins/telesci)
"crf" = (/obj/structure/table/glass,/obj/item/device/multitool,/turf/simulated/floor/plasteel{dir = 8; icon_state = "whiteblue"},/area/toxins/lab)
-"crg" = (/obj/structure/stool/bed/chair/office/light{dir = 8},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/lab)
-"crh" = (/obj/machinery/r_n_d/circuit_imprinter,/turf/simulated/floor/plasteel{dir = 10; icon_state = "warning"},/area/toxins/lab)
+"crg" = (/obj/structure/grille,/obj/machinery/door/firedoor/border_only{tag = "icon-door_open (EAST)"; icon_state = "door_open"; dir = 4},/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/toxins/xenobiology)
+"crh" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/xenobiology)
"cri" = (/turf/simulated/floor/plasteel{icon_state = "warning"},/area/toxins/lab)
"crj" = (/obj/machinery/computer/rdconsole/core,/turf/simulated/floor/plasteel{dir = 6; icon_state = "warning"},/area/toxins/lab)
-"crk" = (/obj/machinery/requests_console{department = "Research"; departmentType = 2; name = "Research Requests Console"; pixel_x = 32; pixel_y = 0},/obj/machinery/camera{c_tag = "Research and Development Lab"; dir = 8; network = list("SS13","RD")},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whiteblue"},/area/toxins/lab)
+"crk" = (/turf/simulated/floor/plasteel,/area/toxins/xenobiology)
"crl" = (/obj/machinery/status_display,/turf/simulated/wall/r_wall,/area/toxins/lab)
"crm" = (/obj/machinery/door/airlock/glass{name = "Escape Hallway"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{icon_state = "neutral"},/area/hallway/primary/aft{name = "Aft Hallway"})
"crn" = (/obj/machinery/door/airlock/glass{name = "Escape Hallway"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{icon_state = "neutral"},/area/hallway/primary/aft{name = "Aft Hallway"})
@@ -6325,14 +6324,9 @@
"crG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/obj/machinery/door_control{id = "misclab"; name = "Test Chamber Blast Doors"; pixel_x = 0; pixel_y = -24; req_access_txt = "7"},/turf/simulated/floor/plasteel{dir = 10; icon_state = "warnwhite"},/area/toxins/telesci)
"crH" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1},/turf/simulated/floor/plasteel{dir = 2; icon_state = "warnwhite"},/area/toxins/telesci)
"crI" = (/turf/simulated/floor/plasteel{dir = 6; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTHEAST)"},/area/toxins/telesci)
-"crJ" = (/obj/structure/table/glass,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (SOUTHWEST)"; icon_state = "whiteblue"; dir = 10},/area/toxins/lab)
-"crK" = (/obj/structure/table/glass,/obj/item/weapon/stock_parts/scanning_module{pixel_x = 2; pixel_y = 3},/obj/item/weapon/stock_parts/scanning_module{pixel_x = 2; pixel_y = 3},/turf/simulated/floor/plasteel{tag = "icon-whitebluecorner (WEST)"; icon_state = "whitebluecorner"; dir = 8},/area/toxins/lab)
"crL" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "warnwhitecorner"; tag = "icon-warnwhitecorner (EAST)"},/area/toxins/lab)
"crM" = (/turf/simulated/floor/plasteel{tag = "icon-warnwhite (NORTH)"; icon_state = "warnwhite"; dir = 1},/area/toxins/lab)
"crN" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/plasteel{tag = "icon-warnwhite (NORTH)"; icon_state = "warnwhite"; dir = 1},/area/toxins/lab)
-"crO" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor/plasteel{dir = 4; icon_state = "warnwhitecorner"; tag = "icon-warnwhitecorner (EAST)"},/area/toxins/lab)
-"crP" = (/turf/simulated/floor/plasteel{dir = 4; icon_state = "whitebluecorner"},/area/toxins/lab)
-"crQ" = (/obj/structure/table/glass,/turf/simulated/floor/plasteel{dir = 5; icon_state = "whiteblue"},/area/toxins/lab)
"crR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 9},/area/hallway/secondary/exit)
"crS" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 1},/area/hallway/secondary/exit)
"crT" = (/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j2s"; sortType = 6},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/turf/simulated/floor/plasteel{dir = 1; icon_state = "neutral"},/area/hallway/secondary/exit)
@@ -6366,11 +6360,7 @@
"csv" = (/obj/structure/cable/pink{d2 = 2; icon_state = "0-2"},/obj/machinery/power/apc{cell_type = 5000; dir = 1; name = "Toxins Storage APC"; pixel_x = 0; pixel_y = 25},/turf/simulated/floor/plating,/area/toxins/storage)
"csw" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/decal/cleanable/cobweb2,/obj/structure/closet,/obj/item/device/analyzer,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
"csx" = (/obj/machinery/door/airlock/maintenance{name = "Telesci Lab Maintenance"; req_access_txt = "47"},/turf/simulated/floor/plating,/area/toxins/telesci)
-"csy" = (/obj/structure/table/glass,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/plasteel{dir = 8; icon_state = "whiteblue"},/area/toxins/lab)
"csz" = (/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/lab)
-"csA" = (/obj/structure/stool/bed/chair/office/light,/obj/effect/landmark/start{name = "Scientist"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/lab)
-"csB" = (/obj/structure/stool/bed/chair/office/light{dir = 4},/turf/simulated/floor/plasteel{icon_state = "white"},/area/toxins/lab)
-"csC" = (/obj/structure/table/glass,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 29; tag = "east"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "whiteblue"},/area/toxins/lab)
"csD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/junction{tag = "icon-pipe-j1 (NORTH)"; icon_state = "pipe-j1"; dir = 1},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 8},/area/hallway/secondary/exit)
"csE" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plasteel,/area/hallway/secondary/exit)
"csF" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{dir = 5},/turf/simulated/floor/plasteel{icon_state = "neutralcorner"; dir = 2},/area/hallway/secondary/exit)
@@ -6395,19 +6385,15 @@
"csY" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; external_pressure_bound = 0; frequency = 1441; id_tag = "o2_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/simulated/floor/engine{name = "o2 floor"; nitrogen = 0; oxygen = 100000},/area/atmos)
"csZ" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "o2_sensor"},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/engine{name = "o2 floor"; nitrogen = 0; oxygen = 100000},/area/atmos)
"cta" = (/turf/simulated/floor/engine{name = "o2 floor"; nitrogen = 0; oxygen = 100000},/area/atmos)
-"ctb" = (/obj/machinery/camera{c_tag = "Toxins Test Chamber Aft"; dir = 1; network = list("SS13","Test")},/obj/machinery/light/small,/turf/simulated/floor/airless,/area/toxins/test_area)
+"ctb" = (/obj/machinery/camera{c_tag = "Toxins Test Chamber Aft"; dir = 1; network = list("SS13","Test")},/obj/machinery/light/small,/turf/simulated/floor/plasteel/airless,/area/toxins/test_area)
"ctc" = (/obj/item/weapon/storage/box/lights/mixed,/obj/structure/closet/crate,/obj/item/weapon/grenade/chem_grenade,/obj/item/device/flashlight,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/rd)
"ctd" = (/obj/structure/cable/pink{d2 = 2; icon_state = "0-2"},/obj/machinery/power/apc{dir = 1; name = "Telescience Lab APC"; pixel_x = 0; pixel_y = 25},/turf/simulated/floor/plating,/area/toxins/telesci)
-"cte" = (/obj/structure/cable/pink{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "Research Lab APC"; pixel_x = 25; pixel_y = 0},/turf/simulated/floor/plating,/area/toxins/lab)
"ctf" = (/obj/structure/table/glass,/obj/machinery/cell_charger,/turf/simulated/floor/plasteel{tag = "icon-whiteblue (SOUTHWEST)"; icon_state = "whiteblue"; dir = 10},/area/toxins/lab)
"ctg" = (/obj/structure/table/glass,/obj/item/stack/sheet/glass{amount = 50; pixel_x = 3; pixel_y = 3},/obj/item/stack/sheet/metal{amount = 50},/turf/simulated/floor/plasteel{tag = "icon-whiteblue"; icon_state = "whiteblue"; dir = 2},/area/toxins/lab)
"cth" = (/obj/structure/table/glass,/obj/item/weapon/stock_parts/matter_bin,/obj/item/weapon/stock_parts/matter_bin,/turf/simulated/floor/plasteel{tag = "icon-whiteblue"; icon_state = "whiteblue"; dir = 2},/area/toxins/lab)
"cti" = (/obj/item/weapon/stock_parts/console_screen,/obj/structure/table/glass,/obj/item/weapon/stock_parts/console_screen,/obj/item/weapon/stock_parts/console_screen,/turf/simulated/floor/plasteel{tag = "icon-whiteblue"; icon_state = "whiteblue"; dir = 2},/area/toxins/lab)
"ctj" = (/obj/structure/table/glass,/obj/item/weapon/disk/tech_disk{pixel_x = 0; pixel_y = 0},/obj/item/weapon/disk/tech_disk{pixel_x = 0; pixel_y = 0},/obj/item/weapon/disk/design_disk,/obj/item/weapon/disk/design_disk,/turf/simulated/floor/plasteel{tag = "icon-whiteblue"; icon_state = "whiteblue"; dir = 2},/area/toxins/lab)
"ctk" = (/obj/structure/table/glass,/obj/item/weapon/stock_parts/micro_laser,/obj/item/weapon/stock_parts/micro_laser,/obj/machinery/light,/turf/simulated/floor/plasteel{tag = "icon-whiteblue"; icon_state = "whiteblue"; dir = 2},/area/toxins/lab)
-"ctl" = (/obj/structure/table/glass,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/turf/simulated/floor/plasteel{tag = "icon-whiteblue"; icon_state = "whiteblue"; dir = 2},/area/toxins/lab)
-"ctm" = (/obj/structure/table/glass,/obj/item/weapon/paper_bin,/obj/machinery/newscaster{hitstaken = 1; pixel_x = 0; pixel_y = -32},/turf/simulated/floor/plasteel{tag = "icon-whiteblue"; icon_state = "whiteblue"; dir = 2},/area/toxins/lab)
-"ctn" = (/obj/structure/table/glass,/turf/simulated/floor/plasteel{tag = "icon-whiteblue (SOUTHEAST)"; icon_state = "whiteblue"; dir = 6},/area/toxins/lab)
"cto" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 8},/area/hallway/secondary/exit)
"ctp" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=AfCH1"; location = "Escape"},/turf/simulated/floor/plasteel,/area/hallway/secondary/exit)
"ctq" = (/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 4},/area/hallway/secondary/exit)
@@ -6557,7 +6543,6 @@
"cwe" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/obj/structure/stool/bed/chair,/obj/structure/extinguisher_cabinet{pixel_y = 30; tag = "(north)"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/hallway/secondary/exit)
"cwf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/stool/bed/chair,/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/hallway/secondary/exit)
"cwg" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/table/glass,/obj/machinery/light{dir = 1},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/hallway/secondary/exit)
-"cwh" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/stool/bed/chair,/obj/machinery/camera{c_tag = "Escape Hallway Port"},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/hallway/secondary/exit)
"cwi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/stool/bed/chair,/obj/machinery/alarm{name = "alarm"; pixel_y = 24},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/hallway/secondary/exit)
"cwj" = (/obj/machinery/status_display{pixel_y = 32; tag = "north"},/obj/structure/table/glass,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/simulated/floor/plasteel{dir = 1; icon_state = "warning"},/area/hallway/secondary/exit)
"cwk" = (/turf/simulated/floor/plasteel{icon_state = "warningcorner"; dir = 4},/area/hallway/secondary/exit)
@@ -6688,6 +6673,27 @@
"cyF" = (/turf/space,/area/shuttle/escape/station)
"cyG" = (/turf/space,/area/syndicate_station/southwest)
"cyH" = (/turf/space,/area/syndicate_station/south)
+"cyI" = (/obj/structure/closet/secure_closet/personal/cabinet,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/status_display{pixel_y = 32; tag = "north"},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/hos)
+"cyJ" = (/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/hos)
+"cyK" = (/obj/structure/table,/turf/simulated/floor/plasteel,/area/bridge)
+"cyL" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plasteel{dir = 4; icon_state = "blue"},/area/bridge)
+"cyM" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/simulated/floor/plasteel,/area/bridge)
+"cyN" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/hop)
+"cyO" = (/obj/machinery/door/airlock/command{name = "Head of Personnel's Quarters"; req_access = null; req_access_txt = "57"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/hop)
+"cyP" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/hop)
+"cyQ" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating,/area/crew_quarters/asteroidstation/hop)
+"cyR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/power/apc{dir = 4; name = "Head of Security's Quarters APC"; pixel_x = 24},/obj/structure/cable/blue{tag = "icon-0-8"; icon_state = "0-8"; d1 = 1; d2 = 2},/turf/simulated/floor/plating,/area/crew_quarters/asteroidstation/hos)
+"cyT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/rd)
+"cyV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/hos)
+"cyW" = (/obj/structure/stool/bed/chair/comfy/black{dir = 1},/turf/simulated/floor/plasteel,/area/bridge)
+"cyX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{dir = 4; icon_state = "bluecorner"},/area/bridge)
+"cyY" = (/obj/structure/table/wood,/obj/item/weapon/storage/box/ids,/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/hop)
+"czb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/closet,/obj/item/device/analyzer,/turf/simulated/floor/plating,/area/maintenance/asteroidstation/bridge)
+"czc" = (/obj/structure/table/wood,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/rd)
+"cze" = (/obj/machinery/light,/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/rd)
+"czf" = (/obj/structure/table/wood,/obj/item/weapon/folder/red,/obj/item/weapon/pen,/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/hos)
+"czh" = (/obj/machinery/light,/turf/simulated/floor/wood,/area/crew_quarters/asteroidstation/hos)
+"czi" = (/turf/simulated/mineral,/area/maintenance/asteroidstation/rd)
(1,1,1) = {"
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
@@ -6738,247 +6744,247 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaacaaaaaaaaaaaaaaaaacaadaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaadaacaaaaaaaaaaaaaaaaadaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaacaacaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaadaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaadaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaadaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaadaacaacaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaacaacaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaacaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaadaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaaaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaadaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaafaafaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaafaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaadaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaaaaagaagaagaagaagaaaaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaeaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaaaaagaagaagaagaagaaaaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaadaacaacaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaacaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaacaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaadaadaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaadaacaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaadaacaacaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaakaakaakaakaakaakaakaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaakaakaalaamaamaamaanaakaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaakaaoaapaapaapaapaaqaakaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaakaapaapaapaapaaraasaakaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaakaataauaapaapaapaavaakaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaacaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaakaawaakaaxaayaakaakaakaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaakaazaakaakaakaakaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaakaawaakaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaafaafaaAaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaadaacaaaaaaaaaaadaacaacaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaafaafaafaafaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaacaacaadaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaafaahaafaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaacaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaacaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaacaacaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaacaadaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaCaaCaaCaaCaaCaaCaaCaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaadaadaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaDaaCaaEaaFaaFaaFaaGaaCaaCaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaadaadaadaadaadaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaCaaCaaHaaGaaGaaGaaGaaIaaCaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaCaaJaaGaaGaaGaaGaaGaaKaaCaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaCaaLaaGaaGaaGaaMaaGaaNaaCaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaCaaCaaCaaCaaPaaCaaCaaCaaCaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaadaacaacaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaCaaGaaCaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaadaaaaaaaaaaaaaaaaaaaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaCaaPaaCaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaaQaaRaaSaaSaaSaaTaaTaaSaaSaaSaaSaaUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaVaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaaWaaXaaYaaYaaZabaabbaaZaaYaaYaaYabcaaSaaSabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaafaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaaWabeaaYabfaaYabfaaYabfaaYabfaaYaaTabgabhabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacabjabjabjabjabkabkabkabjabjabjaacaacaacaacaacaacaacaacaadaadaaWabeaaYabfaaYabfablabfaaYabfaaYabmaaYaaYaaTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacabjabnaboabpabqabrabsabtabuabjaacaacaacaacaacaacaacaacaadaadaaWabeaaYabfaaYabfaaYabfaaYabfaaYaaTabgabvabiaaaabwabxabyaaaabzabAabBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacabkaboaboaboabCaboaboabDabEabjabjabjaadaacaacaacaacaacaadaadaaWaaXaaYaaYabFabGabHabIaaYaaYaaYabcaaSaaSabJaaaabKabLabKaaaabMabNabMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacabkaboabOaboaboabPabDabDabQabRabSabTaadaadaadaadaadaadaadaadabUabVabmaaSaaSaaTaaTaaSaaSabmaaSabWaaaaaaaaaaaaabKabXabKaaaabMabYabMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacabkaboaboaboabZacaabDabDacbabjabjabjaccaadaacaacaacaadaadaadaadacdaceacdaadaadaadaadacdaceacdaadaadaaaaaaacfacgachaciacfacjackaclacfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacabjabjacmacnaboaboabDabDacoabjaacaacaacaacaacaacaacaacaadaadaadacdacpacdaadaadaadaadacdacpacdaadaadaadaadacfacqacpacracfacqacpacsacfacfacdacdaaaaaaaaaaaaactactactactactactactactactaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaacaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacabjabjabjabjacuacvabjabjabjaacaacaacaacaacaacaacaacacwacxacfacdaceacdacfacdacdacfacdaceacdacfacdacdacfacfacfacyaczacfacfacAaczacfacBacCacDacdacEactactactactactactactactactactactaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaacaacaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaaaaBaaBaaBaaBaaBaaaaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacabjabjabjabjaacaacaacaacaacaacaacaacaacaacacFacGacfacHacIacIacJacIacKacLacMacMacNacOacMacMacPacQacRacSacTacUacVacWacXacUacUacYacZacpadaactactactactactactactactactactactaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaaaaBaaBaaBaaBaaBaaaaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacacwacxacfadbadcaddaddadeadfadgadhadiadjadkadladladmadnadladoadpadpadqadradpadsacUacYacZacpadaactactactactactactactactactactactaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaadaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacacwadtacfaduadvadwadxadyadzadAadBadCacfacfacfacfadDadEadFadGadFadFadHadFadFadFadIacVadJacdadKactactactactactactactactactactactaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacacwadLacfadMadvadNadNadOadNadPadBadQacfacpadRacfadSadTadUadVadWadXadYadZadZadFacfacdacdaaaaaaaaaaaaactactactactactactactactactaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacacwadLacfaeaadvaebaecaedaebaeeadBaefaegacpaehacfaeiaejaekaelaemaenadYaeoaepadFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacacwacwacwacwacwacwacwacwacwacwacwacwacwacwacwacwacwacwacwadLacfaeqadvadxaeraesaetaeuadBaevacfaewaexacfaeyadTaezaeoadVaeoaeAaeBaeBadFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaacaacaacaacaeCaeCaeCaacaacaacaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaadaadaadaadaadaadaadaadaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacacwadLadLaeDacwaeEaeFadLadLadLadLadLaeFacwaeGaeHaeIaeJaeJaeJaeKaeLaeMaeNaeNaeNaeOaePaeQaeRacfaeSaeTacfaeUaeVaeWaeXaeYaeZafaafbaeBadFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaacaacaeCaeCaeCaeCafcafdaeCaeCaeCaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacacwadLadLafeacwaffaffafgadLadLaeFafhafiacwafjafkacwadLadLafeacfaflafmafnafoacUafpafqaefacUafrafrafrafrafrafsafradFadFadFadFadFadFadFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaacaacaeCaftafuafvafwafxafuafxaeCaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaacaacaacaacaacaacaacaacaacacwacwacwacwacwacwadLadLafeacwaffafgafgadLafyafzafAaeFacwafBafCafDafEadLafFafFafGafGafHafGafIafFafJafKafLafrafMafNafOafPafQafrafRafSafTafUafVafWafXafXafYafYafYafYafYafYafYafYafYafYafYafYafYafYafYafZaaaaaaaaaaadaadaadaadaadaacaacaacaacaacaeCaeCagaagbagcagdagcageagfaeCaeCaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaacaacaacaacaacaadaadaadaadaacaacaacaacaacaacacwaggadLadLadLaghadLadLagiacwafgafgafgagjagjagjagkafiacwacwacwacwagladLafFagmagnagnagoagpagqafFagragsagtafrafMaguagvagwafQafragxagyagzagAagBagCaacaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagDaaaaadaadaadaadaadaacaacaacaacaacaacaacaeCafxafxafwaeCaeCaeCagEafxafxaeCaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaacaacaacaadaadaadaadaadaadaacaacaacaacaacaacacwagFadLagGagHacwadLagGagIacwagJadLaeFadLaeFaeFaeFaeFacwagKagLagMagNagOagPagQagRagSagSagTagUagVagWagsagtafragXagYagZahaahbafrahcahdaheagCahfagCaacaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahgaadaadaadaadaacaacaacaacaacaacaacaacaacaeCahhafxafwaeCahiaeCahjafxahkaeCaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaacaacaacaadaadaadaacaacaacaacaacaacaacaacaacacwafeahlahmahnacwadLacwacwacwacwahoacwacwacwacwacwacwacwahpahqahrahsahtafFahuahvahwahxahyahzafFahAagsagtafrahBahCahDahEahFafragxahGahHahIahJagCaacaadaadahKahKahKahKahKahKahKahKahKahKahKaaaaaaaaaahgaadaadaadaacaacaacaacaacaacaacaacaacaeCaeCahLafxahMahNahOahPahQafxahRaeCaeCaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaacaacaacaadaadaadaacaacaacaacaacaacaacaacaacacwacwacwacwacwacwadLacwahSahTahUahUahUahVahUahUahUahUahUahWahXahYahYahYahZahZahZahZahZahYahYahYaiaaibaicaidaieaifaigaihaiiafragxahGaijaikailagCaacaacaadahKahKahKahKahKahKahKahKahKahKahKahKaaaaadahgaadaacaacaacaacaacaacaacaacaacaacaacaeCaimahPainaioaipaiqairaisainaitaiuaeCaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaacaacaacaadaacaacaacaacaacaacaacaacaacaacaacacwadLadLadLadLadLadLadLaivaglaiwaiwaiwaiwaiwaiwaiwaiwaiwaglaivahYaixaiyahZaizaiAaiBahZaiCaiDahYaiEaiFaiGaiHaiIaiJaiKaiLaiMafragxahGaiNagCagCagCaiOaiOaiOahKahKahKahKahKahKahKahKahKahKahKahKaiPaiPaiQaiPaiPaacaacaacaacaacaacaacaacaacaacaeCaeCaiRafxaiSaiTaiTaiTaiUafxaiVaeCaeCaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaacaacaacaacaacaacaacaacaacacwadLadLaiWaiWaiWaiWacwaivaglaiwaiXaiXaiXaiXaiYaiXaiXaiwaglaivahYaiZajaahZahZajbahZahZajcajdahYajeagsajfajgajhajiajjajkajlafragxahGajmagCajnajoajpajqaiOahKahKahKahKahKahKahKahKahKahKahKahKaiPajrajsajtaiPaacaacaacaacaacaacaacaacaacaacaacaeCajuafxajvafxaiTafxajwafxajxaeCaacaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaacaacaacaacaacaacaacaacacwadLadLadLajyadLajzacwaivaglaiwajAajBajBajBajBajBajBaiwaglaivahYajCajDajEajFajGajHajIajJajKahYaiaagsagtajLajMajNajOajPajQafrajRahGajSagCajTajUajVajWaiOahKahKahKahKahKahKahKahKahKahKahKahKaiPajXajYajZakaakaakaakaakaakaakaakaakaakaaacaacaeCagaafxajvafxakbafxajwafxagfaeCaacaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaacaacaacaacaacaacaacaacacwacwacwacwacwacwacwacwaivaglaiwakcakdakdakeakdakdakfaiwaglaivahYakgakhakiakhakjakhakkaklakmaknakoakpakqafrafrafrafsafrafrafrakraksakragCaktakuakvaiOaiOahKahKahKahKahKahKahKahKahKahKahKaaaaiPaiPaiPaiQakaakwakxakyakzakAakBakCakDakaaacaacaeCaeCakEakFakGakHakIakJakKaeCaeCaacaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaacaacaacaacaacaacaacaacaacaacacwakLakMakNacwakOakPacwaivaglaiwakQakRakSakTakUakTakVaiwakWakXakYakZalaalbalcaldalcalcalcalealfalgalhalialjalkalkallalkalkalmalnaloalpalqalralsaltaluaiOaaaaaaalvalwalvalxalvalwalvaaaaaaalyaiPalzaiPalAakaalBakBalCakBakBakBakBalDakaaacaacaacaeCaeCalEajvaiTajwalEaeCaeCaacaacaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaacaacaacaacaacaacaacaacaacaacacwakLahXalFacwalGadLaghaivaglaiwalHalIalJalIalIalKalKaiwaglaivahYalLalMalNalOalPalQalRalSalTahYalUalValWalXalYalZamaambambamcamdameamfamdambamgamaamhaiOamiamiamjamkamjamlamjamkamjamiamiamiaiPammaiPamnakaamoampalCamqamrakBamsamtakaakaaacaacaacaeCaeCamuamvamwaeCaeCaacaacaacaacaacaacaacaacaaaaaaaaOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaacaacaacaacaacaacaacaacaacaacacwamxamyamzacwamAamBacwamCagNamDamEamFamGamHamHamHamHamIamJaivamKamKamKamKamKamKamKamKamKamKamKamLagsamMalvalvamNalvalvamOamOamOamOamPamOamOalvalvamQalvamjamjalvalwalvamRalvalwalvamjamjamjalvalvaiPamnakaakBakBamSamTamTamTamTamTamUakaakaakaamVamVamWamXamYamZanaamVamVaacaacaacaacaacaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadanbanbanbanbanbanbanbanbanbanbanbanbanbanbancandacwaneacwacwaivaglaiwanfakdanganhakdanianjaiwankanlamKanmannanoanpanqanransantanuamKanvanwanxalvanyanzanAalvanBanCanDanEanFanGamOanHanIanJanKanKanKanLanKanManNanOanPanQanRanSanTanUalvanVamnakaakBanWanXakBakBakBakBakBanYanZaoaakaamVaobaocaodamYaoeaocaofamVaacaacaacaacaacaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadanbaogaohaohaoiaohaohaojanbaokaolaomaonanbaivamzacwacwacwaooaivaglaiwaopakdaoqaorakdakdaosaiwaotaivamKaouaouaovaowanmaouaoxaouaoyamKaiaagsanxalvaozanPaoAamjaoBaoCaoCaoCaoDaoEaoFaoGanPaoHaoIaoIaoIaoIaoIaoJaoKaoLanPanPaoMaoMaoMaoNalvaoOamnakaalBakBakBakBaoPaoQaoPakBakBakBalDakaamVaoRaoSaoTaoUaoVaoWaoXamVaoYaoYaoYaoYaoYaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaacaacaacaacaacaacaacaadaadanbaoZapaapaapaapaapbapcapdapeapcapfapgaphapiapjahTapkapkapkaplapmaiwapnakdapoappapqaprapsaiwaptamCapuapvapvapwaouapxaouaouaouapyapzapAagsanxalvapBanPapCalvapDapEaoCapFapGapHapIapJapKapLapMapNapNapOapOapOapOapPapOapQapKapKapKapKapRapSamnakaapTapUapVapWaoPapXaoPapYapZaqaaqbakaamVaqcaqdaqeaqfaqgaqhaqiamVaoYaqjaqkaqlaqkaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaacaacaacaacaacaacaadaadanbaqmapaaqnapaaqnapaapaaqoaqpaqqaqraqsanbaqtaquaqvaqwaqwaqxadLaqyaiwaqzakdapoaqAakdakdaqBaiwaqCaivamKaqDaqEaqFaqGaouaouaqHaqIaqJaqKaqLagsanxalvaqMaqNaqOalvaqPaqQaqRaqSaqTaqUaoFaoGanPanPaqVaqWaqXaqXaqXaqYaqZaraarbarcardarearfargalvarhamnariarjarjarjarjarkarlarmarjarnarnarnaroaroamVamVarparqarramVamVaroaroarsaoYaoYaoYaoYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaacaacaacaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaacaacaacaadaadaadanbartaruarvarvarvarvarvarwarxaryaqrarzanbarAarAarAarAarAarBarAarAaiwaiwarCarDarEarFarGaiwaiwarHaivamKarIarJarKaqGarLarMarNarOarPamKarQarRarSalvarTarUarTalvarVarWamOarWarXamOamOaoGanParYarZasaarYanPanPasbalvalvalvascasdalvalvalvalvaseasfariasgashasiasjaskaslasmasnasoaspasqaroasrassamVastasuasvamVaswasxaroasyaszasAasBasCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaacaacaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaacaacaadaadaadanbasDasEasFasEapaasGasHanbasIasJasKasLanbasMasNasOasPasQasRasSasTasUasVasWasWasXasWasYasZasZasZataasZasZasZasZasZasZasZasZasZasZasZatbatcatdalvateatfanPatgathatiatjatkatlatmatnatoanPanPaqVatpatqanPanPatralvatsattatuatvatwatxatyalvatzatAatBatCatDatEatFatEatGatEatHatIatJatKaroatLatMatNatOatPatQatRatSatTaroatUasyatVatWaoYamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaadaadanbanbanbanbanbatXatYatXanbanbatZasJauaasKaubaucaudasQasQasQasQasQasQasQasQaueasQaufasQaugasZauhauiaujaukaulaumaunauoaupauqaurausautauuauvatcauwamjateatfanPauxathauyauzauAauBauCauDauDauDauEauFauGauEauDauHauIauJauKauLauMauNauOatsatyalvauPauQariauRauSauTasjauUauVauWasnauXauYauZaroavaavbaroavcavdavearoavfavfaroavgavhaviavjaoYalyamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaadaadaadaadavkavlavmavnavoavpavqavqavqavravoaqpasJaqnaqravsavtasQavuavvavvavvavvavvavvavvavwavvavxasQavyavzavAavBavCavDavDavDavDavEavFavGavGavGavGauuavHavIavJavKaqXavLaqXavLavMaqXavNavOaqXaqXaqXaqXaqXaqXavPavQanPanPanPavRalvavSatsavTavUatsavValvalvalvavWariariavXariariavXavYavZariavXariariaroaroaroaroawaawbawcaroaroaroaroawdaweawfawgaoYamialyamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaadaadaadaadavkawhaqpaqsawiapaapaapaaruarvawjarxawkawlaqravoavtasQawmawnawnawnawnawnawnawnawnawnawoasQavyawpavAavBawqavGawrawrawsawrawtavGawuawvawvawwawxatcauwawyanPanPanPanPawzanPauzawAawBawCanPawDanPawEawFapKapKawGawHawIalvavVatsavTawJatsatsalvawKawLawMawNawOawPawOawQawRawSawTawUawPawOawVawOawWawOawXawYawZaxaaxbawWaxcaxdaxeaxfaxfaxfaxfaaaaxgaxgaxgaxgaxgaxhaxgaxgaxgaxgamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaadaadaadavkavlaxiaxjavoaxkaxlaxmaxnaxoavoaqpapaaxpaxqanbaxrasQawmawnaxsaxsaxsaxsaacaxsaxsawnawoasQavyavzavAaxtavGaxuavGaxuavGaxuavBaxuavGaxuaxvauuauvatcauwamjateaxwapKapKaxxapKaxyaxzaxzaxzaxzaxAaxzaxBaxCaxDaxEalvamNalvalvaxFaxGaxHaxIavVaxJalvaxKaxLaxMaxNaxOaxOaxOaxOaxOaxPaxQaxOaxRaxSaxOaxOaxTaxOaxOaxOaxUaxVaxQaxWaxXaxYaxZaxfayaaybaxfaaaaaaaaaamiaaaaaaaaaaaaamiaaaaaaaaaaaaaaaaxgamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaadaadaycanbanbanbanbanbanbanbanbanbanbaydayeayfaygayhayiayjaykawnaxsaxsaacaxsaxsaxsaxsawnawoaylaymaynayoaypavGavGayqayraysaytayuavGavGavGayvaywayxayyayzalvayAanPanPayBayCayDauJayEayFayGayHayIayJayKayHayGayHayLayMayNauJauLayOayPayQayRayRauJaySayTayUayVayWayWayWayWayWayXayYayWayZayWayWazaazbayWazcayWazdazeazfazgazhaziazjaxfazkazlazmazmazmaznaznaznaznazmazmazmazmazmazmazmamiaxgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaadavkazoazpazpazqazrazsaztavoazuazvazwapbazxazyanbazzasQazAawnaxsaxsawnawnawnawnawnawnawoasQazBasZazCazDazDawpazDazDasZazDazEawpazDazDazDasZauvatcazFalvazGamjazHazIazJalvalvalvalvalvalvalvalvalvalvalvalvalvamNalvalvalvalvalvalvalvalvalvazKazgazLazMazMazMazMazMazMazMazMazMazMazMazMazMazNazMazMazMazNazMazOazgazPaxdazQazRazSazTazmazUazVazWazXazYazZaAaaAbazmaAcaAdaAeazmaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaadavkaAfavkanbanbanbanbaAgaAhaqpapaapaapaaAiaAjaAkaAlaAmaAnawnaxsaacawnaAoaApaApaApaApaAqaAraAsaAtaAuaAvaAvaAvaAvaAvaAwaAvaAxaAvaAvaAvaAvaAyaAzaAAaABaACaADaAEaAEaAFaAGaAHaAIaAIaAIaAIaAIaAIaAIaAIaAJaAIaAKaALaAMaAIaAIaANaAIaAIaAIaAOaAIaAPaAQaARaASazMaATaAUazMaATaAUazMaATaAUazMaATaAUazMaAVaAWaAWaAXaAYazMaAZaBaaBbaBcaBdaBeaBfaBgazmaBhaBhaBhaBiaBjaBhaBhaBkazmazmazmaBlazmaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaadavkavkavkaBmaBmaBmanbaBnavoaBoaBpapaapaaBqaBravoavtasQazAawnaxsaxsawnaBsaBtaBuaBuaBuaBvaBuaBuaBwaBxaByaBzaBzaBzaBzaBzaBzaBAaBzaBzaBzaBzaBBaBCaBDaBEaBzaBzaBzaBzaBzaBAaBzaBzaBzaBzaBzaBFaByaBzaBzaBzaBzaBzaBzaBAaBzaBzaBzaBzaBzaBzaByaBzaBGaBHaBIaBJazMaBKaBLazMaBMaBNazMaBMaBOazMaBMaBPazMaBQaAXaAXaAXaBRazMazOaBSaBTaxdazlaxfaxfaBUazmaBhaBhaBhaBVaBWaBXaBYaBhaBZaBhaCaaBhazmaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaadaadaadaadaadaadaadanbaBnanbaCbaCcapaapaapaaCdavoavtasQazAawnaacaxsawnaBsaCeaCfaCgaChaCiaCjaCkaClaCmaCnaCoaCoaCoaCpaCqaCqaCraCoaCoaCoaCsaCtaCuaCnaCoaCoaCoaCoaCvaCoaCwaCoaCoaCoaCxaCyaCzaCnaCoaCoaCoaCAaCqaCqaCBaCoaCCaCDaCAaCqaCEaCFaCGaCHaCIazgaCJazMaCKaCLazMaCMaCLazMaCNaCLazMaCOaCLazMaCPaAXaAXaAXaBQazMaCQaCRaCSaCTaCUaxfaCVaCWazmaCXaCYaCZaBhaDaaDbaDcaDdazmaDeaBhaBhazmaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaadaadaadaadaadaadaadaadanbaDfaDgazqazsaDhaDiaDjaDkanbaDlaDmaAnawnaacaacawnaBsaCeaDnaDoaDoaDpaDqaDpaDoaDraDoaDsaDsaDtaDsaDuaDvaDsaDsaDsaDsaDsaDsaDsaDsaDsaDsaDsaDsaDsaDsaDsaDsaDsaDsaDsaDsaDwaDsaDsaDsaDsaDsaDxaDxaDyaDzaDAaDzaDBaDCaDDaDCaDBaDBaDEaDFaBJazMaDGaDHaDIaDJaDKaDLaDMaDNaDOaDPaDHaDQaDRaDSaDSaDSaDTazMaDUaDVaDWaxdaDXaDYaDZaEaazmaEbaEcaEdaEeaEfaDbaDcaEgazmaEhaEiaEjazmamiaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaEkaEkaEkaElaEmaEnaEkaEkanbanbanbanbanbanbanbanbanbanbaEoasQazAawnawnawnawnaBsaEpaEqaEraEsaEtaEuaEtaEvaEwaDoaExaEyaEzaDsaDsaDsaDsaEAaEzaEzaEzaEzaExaEBaECaExaEzaEzaEzaEzaEzaEzaEzaEDaEEaEEaEFaEzaEzaEzaEGaDsaDsaDsaDyaEHaEIaEJaDBaEKaELaEMaENaEOaEPaEQaERaESaETaDHaEUaEVaDHaEWaEUaEXaETaEYaEZaEYaEUaETaEYaETaEUaFaaFbaFcaBTaxdaFdaFeaFfaFgazmaFhaBhaFiaFjaFkaFlaFmaFnaFoaFpaFqaFrazmaaaaxhamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaEkaFsaFtaFuaFvaFwaFxaFyaFzaFzaFzaFzaFzaFzaFzaFzaFzaFAaEoasQaFBaFCaFCaFCaFCaFDaFEaFFaDoaFGaFHaFIaFJaFKaFLaFMaEzaEzaEzaEzaEzaEzaEzaFNaFOaFOaFOaFPaEzaEzaEzaFNaFOaFOaFOaFQaFRaFSaFNaFOaFOaFOaFTaEEaEEaEEaEEaEEaEEaFUaFVaFWaFXaFYaDBaFZaGaaEMaEMaDCaGbaGcaGdaGeaGfaGgaGfaGfaGgaGgaGhaGiaGjaGkaGgaGlaGmaGfaGnaGfaGfaGoaGpaGqaGraxdaGsaxfaGtaGuazmaGvaGwaGxaGyaGzaGAaGBaGCaGDaGEaGFaGGazmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaadaadaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaEkaGHaGIaGIaGIaGJaGKaGLaGMaGNaGNaGNaGNaGNaGNaGNaGLarAaGOaBuaBuaBuaBuaBuaBuaGPaGQaDnaDoaDoaFMaDoaGRaGSaGTaDoaDsaDsaDsaDsaDsaDsaDsaDsaGUaGUaGUaDsaDsaDsaDsaDsaGUaGUaGUaDsaDsaDsaDsaGUaGUaGUaDsaDsaDsaDsaDsaDsaDsaDsaDyaGVaGWaGXaGYaGZaHaaHaaHbaHcaHdaHeaBJazMaHfaHgaHhaHiaHjaHkaHlaHmaHnaHoaHkaHpaHqaHkaHraHsaHkaHtaHuaHvaHwaxdaGsaHxazmazmazmazmazmazmazmazmazmaHyaHzazmazmazmazmazmaHAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaadaadaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaEkaHBaHCaHDaGIaGJaHEaGLaHFaHGaHHaHIaHJaHGaHKaHLaHMaEoaEoaHNaHOaHPaHQaHRaHNaHSaCeaDnaHTaHUaHUaDoaHVaGSaHWaHXaHYaHZaIaaIbaIaalyaaaaaaamiamiaaaaaaaaaaaaamiaaaaaaaaaamiaaaamiamiamiamiamiamiaaaaaaaaaaaaaaaaaaamiamiaIcaIdaIdaIeaDBaIfaEMaIgaIhaDCaIiazgaBJazMazMazMazMazMazMazMazMazMazMazNaIjaCLazMazMaIkazMazMazMazOaHvaBTaxdaIlaImazmaInaIoaIpaHxaIqaIoaIraHxaIsaItaIuaIvaIwaIxaIyaIyaIzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaadaadaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaEkaIAaIBaICaGIaGJaIDaIEaIFaHKaHKaHKaHKaHKaIGaGNaIHaIHaIHaIHaIHaIHaIHaIHaIHaIIaIJaIKaHTaILaIMaDoaINaGSaFHaDoaIOaIPaDoaDoaDoamiaaaaaaamiaaaaaaaaaaaaaaaamiaaaaaaaaaaIQaaaaaaaaaaaaamiamiaaaaaaaaaaaaaaaaaaaaaaIRaISaITaIUaIVaIWaDBaIXaIYaIZaJaaDBaJbazgaBJaxdaJcaJdaJeazMaJfaJgaJhaJiazMaJjaJkaJlazMaJmaJnazMaJoazMaJpaJqaJraxdazlaJsazmaJtaBhaJuaHxaJtaBhaJvaHxaJwaJxaJyaJzaJAaJBaJCaJDaJEaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaadaadaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaEkaJFaJGaJHaJIaJJaJKaJLaJMaJNaJOaJOaJOaJPaJQaGNaJRaJSaJTaJUaJVaJWaJWaJXaIHaJYaJZaKaaHTaKbaHUaDoaKcaKdaKeaDoaDoaDoaDoamiamiamiaaaaaaamiamiamiamiamiamiaKfamiamiamiamiaaaaaaaaaaaaamiamiaaaaaaaaaaaaaaaaaaaIRaKgaKhaKiaKiaKiaKiaKiaKiaKiaKjaKkaKjaxKazgaBJaxdaKlaKmaKnazMaKoaKpaKqaKrazMaKsaKtaKuazMaKvaKwaKxaKyazMazOaHvaBTaxdazlaKzazmaKAaKBaKCaHxaKAaKBaKCaHxaKDaKEaKFaHxaKGaKHaIyaIyaKIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaKJaKKaKLaacaacaacaacaacaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaacaacaacaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaKMaKMaKMaKMaKMaKMaKMaKMaKMaKMaKMaKMaEkaFyaFyaFyaFyaFyaFyaGLaKNaKOaKPaKQaKRaKSaKTaGNaKUaKVaKWaKWaKWaKXaKWaKYaKZaLaaJZaLbaHTaKbaLcaHTaLdaLeamiamiamiamiaaaaaaaaaaaaaaaaaaamiaaaaaaaaaaaaaaaamiaaaaaaaaaaLfaLgaLhaLiaLhaLhaLhaLiaLjaLjaLjaLkaLjaLlaKhaaaaLmaLnaLoaLpaLqaLraLsaLtaLuaLvaLwazgaBJaxdaLxaLyaLxazMazMaLzaLAazMazMazMazMazMazMazMaLBazMazMazMazOaLCaLDaxdazlaKzazmaHxaLEaLFaHxaHxaLGaLFaHxaLHaLIaLJaHxaLKaHxaHxaHxamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaLLaLMaLNaacaacaacaacaacaacaacaaeaaeaaeaaeaaeaaeaaeaacaacaacaacaacaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaKMaLOaLPaLQaLRaLSaLTaLUaLVaLWaLXaLYaLZaGLaMaaMbaMcaMdaMeaMfaMgaMhaMiaMjaMiaMkaMlaGNaMmaKWaKWaKWaMnaMoaMpaMqaIHaMraMsaMtaMuaMvaMwaHTaMxaMyaaaamiamiamiaaaaaaaaaaaaaaaaaaamiaaaaaaaaaaaaaaaamiaaaaaaaIRaMzaKhaaaaaaaaaamiamialyamiaaaaaaaaaaaaaaaaaaamiaKiaMAaMBaMCaMDaMDaMEaMFaMGaMHaMIaMJaMKaMLaMMaMNaMOaMOaMOaMPaMQaMRaMSaMTaMSaMUaMSaMVaMWaMXaMXaMYaMZaNaaNbaxdaNcaNdazmaNeaNfaNgaNhaNiaNjaNkaNlaNmaNnaNoaHxaNpaNqaNraNqalyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaNsaNtaNuaKLaNvaNvaNvaNvaNvaacaacaaeaaeaaeaacaacaacaacaacaacaacaacaNwaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaKMaLRaLRaNxaLRaNyaNzaNAaNBaNCaNzaNDaNEaGLaNFaNGaNHaNGaNIaIEaNJaNKaHKaNLaHKaNMaJPaGNaNNaNOaNPaNQaNRaNSaNTaNUaIHaJYaJZaKaaHTaKbaHUaHTaaaaNVaaaaIRaLgaLhaLiaLjaLjaLjaLkaLjaLhaLjaLkaLjaLjaLjaLiaLjaLjaLlaNWaaaaNXaNXaNXaNXaNXaNXaNXaNYaNYaNZaNZaNZaNZaNYaNYaOaaObaOcaOdaOeaKiaOfaOgaKjaOhazgaBJaxdaOiaOjaLxaOkaOkaOkaOlaOmaOnaOoaOnaOpaOnaOqaOnaOnaOnaOnazOaHvaOraxdaOsaKzazmaOtaOuaOvaOwaOxaOyaOzaOAaOBaJxaOCaHxaHxaHxaHxazmalyalyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaODaOEaLMaOFaOGaNvaOHaOIaOJaNvaacaacaacaacaacaacaacaacaacaacaacaxsaOKaxsaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaKMaOLaOMaLQaLRaONaOOaOPaOQaORaOSaOTaOUaGLaOVaOVaOVaOVaOVaGLaOWaOXaOYaOZaPaaPbaPcaGNaPdaPeaPdaPdaPdaPdaPdaPdaPfaPgaJZaKaaHTaPhaHUaHTaaaaNVaaaaPiaKhamiamiamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamiaaaaaaaaaamiaaaaNXaPjaPkaPkaPlaPmaPnaNYaPoaPpaPqaPraPsaPtaNYaPuaPvaPvaPvaPvaKiaPwaPwaKjaPxazgaBJaxdaPyaPzaPAaPBaPCaPDaPEaPFaOnaPGaPHaPIaPJaPKaPLaPMaPNaOnaPOaHvaPPaxdaPQaKzazmaLFaPRaPSaHxaLFaPTaPUaHxaPVaNnaPWaPXaPYaPZaIoazmamiaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaKLaQaaQbaQcaQdaQeaQfaQgaNvaacaacaacaacaacaacaacaxsaxsaxsaQhaQhaxsaQiaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaKMaQjaQkaQlaLRaLRaLRaLRaLRaLRaLRaQmaQnaLRaQoaQpaQpaQpaQqaQraQsaQtaQuaQvaQwaQuaQxaQyaQzaQAaQBaQCaQDaQEaQFaQGaQHaQIaQJaQKaHTaHTaHUaHTaaaaQLaaaaQLaaaaaaamiamiamiaaaaaaaaaaxhaxhaxhaxhaxhaxhaxhaxhaxhaxhaxhaaaaNXaQMaQMaQMaQNaQNaQNaNYaQOaQPaQQaQRaQSaQTaQUaPuaQVaQWaQXaQYaKiaaaaaaaxdaQZazgaRaaxdaRbaRcaLxaOmaOkaOkaOkaOmaOnaRdaReaRfaRgaRhaRgaRhaRiaRjaRkaHvaOraxdazlaKzazmaRlaBhaRmaHxaRlaBhaRmaHxaRnaRoaRpaRqaRraRraRsaRtamiaxhaaaaaaaaaaaaaaOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaKLaRuaRvaRwaNvaRxaRyaRzaRAaxsaxsaacaacaacaQhaxsaxsaacaacaacaacaRBaRCaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaKMaKMaRDaREaREaRFaRGaLRaRHaRIaRJaLRaRKaRLaLRaRMaRNaROaRPaRQaRRaRSaOXaRTaRUaPaaRVaRWaRXaRYaRZaSaaSbaScaSdaSeaSfaSgaShaJZaSiaSjaHTaHUaHTaaaaNVaaaaNVaaaaaaaaaamiamiamiaaaaaaamiaaaaaaaaaaaaamiaaaaaaaaaaaaamiaaaaNXaSkaSkaSkaQNaQNaSlaNYaSmaSnaSoaSpaSqaSraSsaStaSuaSvaSuaSwaKiaaaaaaaxdaSxaSyaBJaxdaSzaSAaLxaOmaSBaSCaSBaSDaSBaSEaRgaSFaSGaSGaSGaRgaSHaSIaSJaHvaOraSKazlaKzazmaSLaBhaJtaHxaSMaBhaJtaHxaSNaItaSOaHxaSPaSQaSRazmaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaNvaNvaNvaNvaSSaNvaSTaSUaSVaSWaSXaSYaxsaQhaxsaxsaacaacaacaacaacaacaacaacaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaSZaTaaREaREaREaREaREaTbaTcaTdaTeaTfaTeaTgaLRaThaTiaTjaTiaTkaTlaTmaTnaToaTnaMdaToaTpaTqaTraTsaTtaPdaPfaPfaPfaTuaSgaShaJZaSiaTvaHTaHUaHTamiaNVaaaaNVaaaaaaaaaamiamiaNXaNXaNXaNXaTwaTwaTwaNXaTxaNXaTwaTwaTwaNXaNXaNXaNXaNXaNXaNXaTyaNXaNYaTzaTAaTBaTCaTDaTEaNYaTFaTGaTHaQVaPvaKiamiamiaxdaTIazgaTJaTKaTKaTKaTKaTLaSBaTMaTNaTOaSBaTPaTQaTRaSGaSGaSGaTSaTTaTUaTVaGqaTWaxdazlaKzazmaIpaTXaTYaHxaTZaTXaUaaUbaUbaUcaUdaUbaUbaUeazmazmaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaNvaNvaUfaUgaNvaUhaNvaNvaNvaNvaNvaacaxsaxsaacaacaacaacaacaacaacaacaacaacaacaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaxsaxsaUiaUjaUkaUlaUmaUnaUoaORaUpaUqaUraORaUsaUtaLRaLRaLRaLRaLRaLRaLRaUuaUvaUwaUxaUxaUyaUzaUAaUBaUCaSaaUDaUEaUFaUGaUHaUIaUJaUKaULaHTaHTaUMaHTaKfaUNamiaUNamiamiaNXaNXaNXaNXaUOaUPaUQaURaURaURaUSaUTaUUaURaURaURaUVaUWaUXaUYaUZaVaaVbaVcaVdaNYaNYaVeaVfaVgaVhaNYaNYaPvaPvaViaPvaPvaKialyalyaxdaxKazgaBJaVjaVkaVlaVmaVnaSBaVoaVpaTOaSBaVqaVraVsaVtaVuaVuaVvaVwaOnaVxaHvaVyaVzaVAaVBaVCaVzaVzaVzaVzaVzaVzaVzaUbaVDaVEaVFaVGaVHaVIaaaaaaaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaVJaVKaRvaVLaNvaVMaVNaVOaVPaNvaacaacaacaacaacaacaacaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaVQaxsaxsaUiaUjaVRaVSaVTaREaVUaLRaLRaLRaLRaLRaVVaVWaVXaVYaVZaLRaWaaWbaLRaLRaWcaWcaWdaWcaWcaWcaWeaWfaWgaSaaSbaScaWhaWiaSfaSgaShaJZaKaaHTaWjaWkaWlamiaQLaaaaQLaaaaaaaWmaWnaWmaWoaWpaWqaWraWsaWtaWtaWraWraWraWtaWtaWtaWraWuaWvaWwaWvaWxaWyaWzaWAaWBaWCaWDaWEaWFaWGaWHaNXaKiaKiaKiaKiaKiaKiaWIaWIaWvaxKazgaBJaTKaWJaWKaWLaWMaWNaWOaWPaWQaSBaSBaWRaSFaSGaSGaSGaWSaWTaOnaWUaHvaWVaVzaWWaWXaVCaWYaWZaXaaWYaVzaXbaXcaUbaXdaXeaVFaXfaXgaVIamiamiamiaxgalyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaXhaXiaXjaXkaXlaXmaNvaXnaXoaNvaacaacaacaacaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaxsaxsaUiaXpaVRaXqaXraUlaXsaLRaXtaXuaXvaORaXwaXxaXyaXzaTdaXAaXBaXCaXDaXEaXFaXFaXFaXFaXFaXFaXGaXHaXIaXJaPdaPfaPfaXKaTuaXLaShaJZaXMaHTaHUaWkaWlaaaaNVaaaaNVaaaaaaaNXaXNaNXaXOaUPaXPaXQaXRaXRaXRaXRaXRaXRaXRaXRaXRaXSaXTaWvaWvaXUaXVaXWaXXaXYaXYaXZaYaaYbaYcaYdaYeaYfaNXaYgaYhaYiaYjaYkaYlaYmaWvaYnaYoaYpaTKaYqaYraYsaYtaSBaYuaYvaYwaYxaYyaYzaSFaSGaSGaSGaRhaYAaOnaYBaYCaYDaYEaYFaYGaYHaYIaYJaYKaYIaYLaYMaYNaYOaYPaYQaYRaYSaYTaVIaaaaaaaaaaxgamiamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaYUaLMaLMaYVaNvaYWaNvaNvaNvaNvaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaxsaxsaYXaYYaYZaUjaZaaUjaUjaZbaZcaZdaZdaZeaZfaZgaZhaZiaUjaZjaUjaZkaZlaZmaQDaQDaQDaZnaQDaQDaZoaZpaZqaZraZsaQDaZtaZuaZvaQHaQIaQJaZwaHTaHUaWkaWlaaaaNVaaaaNVaxhamiaNXaNXaNXaZxaUPaXPaZyaZzaZAaZAaZAaZAaZzaZAaZAaUPaXPaZBaZCaWvaZDaZEaWyaZFaZGaZHaZIaZJaZKaZLaZMaZNaZOaNXaZPaZQaZRaWvaZSaQNaQNaWvaZTaZUaZVaZWaZXaZYaZZbaaaSBbabaYvbacaYvaSBbadbaebafbafbafbafbagaOnbahaHvbaibajaWYbakbalbambanbaobapbaqbarbasbatbaubavbawbaxbayaVIaVIaVIaaaaxgamialyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamibazaNvaNvaNvaKLaNvaacaacaacaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbaAaxsaUiaUjbaBaREaREaREbaCaLRbaDbaEbaFaLRbaGbaHbaIbaJaUnbaKbaLbaMbaNbaOaUEaUEaUEaUEaUEaUEaUEbaPbaQaSaaSbaScbaRaSeaSfbaSbaTaJZaKaaHTbaUbaVaHTaaaaNVaaaaNVaxhaaaamiamiaTxbaWbaXbaYbaZaZAbbabbabbaaZAbbabbabbaaZAaXPbbbaWvaWvaWvaWvbbcaWvaWvaWvbbdbbebbfbbgbbhbbibbjaNXbbkbblbbmaWvbbnbbobbobbpbbqbbrbbsaTKaTKbbtaTKaTKaSBaSBaSBaSBbbuaSBaOnaOpaOnbbvbbwaOnaOnaOnazOaHvbbxaVCaVCaVCaVCbbyaVzaVzaVzaVzaVzaVzaUbbbzbbAbawbbBbbCbbDbbEaVIamiaxgamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaacaacaacaacaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbbFaxsaUibbGbbHbbIbbJbbKbbLaLRaLRaLRaLRaLRbbMbbNbbObbPbbQaLRbbRbbSaLRbbTbbUbbVbbWbbXbbYbbZbcabcbbccbcdaPdaPfaPfaPfaTuaPdbcebcfbcgaHTbchaHUaHTaaaaQLaaaaQLaxhaaaaaaamibcibcjbckbclbcmaZAbbaaZAaZAaZAaZAaZAbbabcnaXPbcobcpbcqbcrbcsbcrbctbcuaWvaWvbcvaWybcwbcxbcybczaNXbcAaWvaWvaWvbcBbcCaWvaWvbcDbcEbcFbcGbcHbcIbcJbcKbcLbcMbcNbcObcPbcQbcRbcSbcTbcPbcPbcUbcVaSBazOaHvbaibcWaHvbcXbcYbcZbdabdbbdcbddbdebdfaUbbdgbdhbdibdjbdkbdlbdmaVIaaaaxgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaacaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaxsaxsaUibdnbdobdpbdqbdrbdsaLRbdtbduaXvaORbdvbdwbdxbdxbdxbdxbdxbdxbdxbdxbdxbdybdybdzbdzbdzbdAbdBbdCbdDbdEbdFbdGbdHbdIbdJbdKbdLbdMaHTbchaHUaHTaaaaNVaaaaNVaxhaaaaaaamibcibcjbckbclbcmaZAbbabdNaUPaUPaUPaZAbbaaZAaXPbcobdObdPbdQbdRbdSaZLbdTbdUaWvbdVbdWbdXbdYbdZbeabebbecbedbeebefbegbehbeibejbekayTbelbembenbeobepbcNbcNbeqberbesbetbeubeubevbeubeubeubeubeubewbexaHvbaibeybezbeAbeBbeCbeDbeDbeEbeFbeGbeDaUbbeHbeIbeJbeKbbBbeLbeMaVIaaaaxgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaxsaxsaSZbeNaREbeObePbeQaTdbeRbeSaTdaTdbeTaTebeUbdxbeVbeVbeWbeXbeYbeZbfabdxbfbbfcbfdbfebffbfgbfhbfibfjbfkbflbfmbfmbfnbfobfpbfqbfraHTaHUaUMaHTamiaUNamiaUNbfsamiamiaKfaNXbftbfubfvbfwaZzaZAaZAaUPbfxaUPaZAaZAaZzaXPbcobdObfybfzbfAbfBbfCaZKbfDbfEbfFbfGbfHbfIbfJbfKbfLbfMbfNbfObfPbfQbfObfRbfMbfSbfTbfUbembenbcNbfVbfWbfXbcNbcNbfYbcPbcPbfZbgabgbbcPbcPbgcbgdaSBbgeaLCbgfbggbghbcXbgibgjbeDbgkbeDbeGbglbgmbgnbgobgpbgqbgrbgsbgtbguaVIamiaxgaaaaaaaaaaaaaaaaaOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaxsaKMaKMbgvbgwbgxbgybgzaLRbaDbaEbaFaLRbgAbgBbdxbgCbgDbgDbgDbgDbgDbgDbgEbgFbgGbgHbgIbgJbgKbgLbgMbgNbgObgPbgQbgQbgRbgSbgTaQJaZwaHTaHUaWkaWlaaaaNVaaaaUNaxhaaaaaaamibcibcjbckbclbcmaZAbbaaZAaUPaUPaUPaZAbbaaZAaXPbcobdObfybgUaWyaWyaWybgVbgWaWvbgXbgYbgZbhabhbbhcbhdbhebhfbhgbhhbhibhjbhkbhlbhmazgbfUbembenbhnbhobenbhnbhpbhqaSBbhrbhsbhtbhubhvbhwbeubhxbhybhzbhAaGqbgfbeybhBaVCbhCbhDbhEbeDbhFbhGbeGbhHaUbbhIbhJbhKbhLbbBbeLbhMaVIaaaaxgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaadaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaKMaKMaKMaKMaKMaKMaLRaLRaLRaLRaLRbhNbhObdxbhPbgDbgDbhQbhRbhSbhSbhTbhUbhVbhWbhXbhYbhZaTrbiabibaPdbicbidbicaTuaPdbfpaJZaKaaHTaHUaWkaWlaaaaQLaaaaQLaxhaaaaaaamibcibiebckbclbcmaZAbbaaZAaZAaZAaZAaZAbbaaZAaXPbifbigbihbiibijbiibikbilaWvaWvbimbinbiobipbiqbiraNXbisaWvaWvbitbiubivaWvaWvbiwazgbfUbcNbcNbcNbixbembembembiyaSBaSBbizbizbiAaSBaSBbcPbcPbiBaSBbiCaYCbiDbiEbiFbiGbiHbhDbiIbiJbiKbiLbiMbiNaUbbiObiPbiQbiRbiSbiTbiUaVIaaaaxgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaxsaxsaxsaxsbiVbiWbiXbiYbiZbjabjbaLRbjcbjdbdxbjebgDbgDbjfbjgbgDbgDbjhbjibjjbjkbjlbjmbjnbjobjpbjqbjraQDbjsaQDbjtbjubjvaJZaKaaHTaHUaWkaWlaaaaNVaaaaNVaxhaaaamiamiaTxbjwbjxbjybcmaZAbbabbabbaaZAbbabbabjzaZAaXPbbbaWvaWvaWvaWvbjAaWvaWvaWvbjBbjCbinbjDbjEbjFbjGaWvbjHaWvbjIbjJbjKbjLbjMbjNbjOazgbfUbcNbjPbjQbjRbjSbjSbjSbjSbjTbjUbjVbjWbjXbjYaSBbjZbkabkbaSBbkcbkdbkeaVCaVCaVCaVCbkfaVzaVzaVzaVzaVzaVzaUbbkgbkhbawbbBbkibkjbkkaVIamiaxgamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaxsaxsaxsaacaxsaxsaxsaxsaxsaxsaxsaxsaxsaxsbklbkmbknbkoaUjbkpbkqbkrbksbktbdxbkubkvbkwbkxbkxbkxbkxbkybkzbkAbkBbkCbkDbkEbkFbdCbkGbkHbkIbkJbkKbkLaSgaShaJZbkMaHTbkNbaVaHTaaaaNVaaaaNVaxhamiaNXaNXaNXaUPaUPaXPbfwaUPaZAbbaaZzaZAaZAaZAaZAaZzaXPaZBaZCaWvaZDbkObkPbkQbkRbkSbkTaZLbkUbkVbkWbkXbkYaWvbkZaWvblablbaWyblcbldbjNbleaSybfUbcNblfblgbfVbcNbcNblhblibljbcNbcNbcNbcNbcNblkbcNbcNbcNbllblmblnbloblpbaqbaqblqblrblsbltbaqbaqblubasbatblvblwbawblxblyaVIaVIaVIaaaaxgamiamialyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaxsaxsaxsaxsaxsaxsaxsaxsaxsaxsaxsaxsaxsaxsblzblAblBblCblDaTcblEaLWblFblGbdxblHblIblJblJblJblKblLbdxblMblNblOblPblQblRbfhaWgblSaPdaPfaPfaPfaTuaXLaShblTblUaHTblVaHUaHTaaaaNVaaaaNVaaaaaaaNXblWaNXblXaUPaXPblYblZbmablZblZblZblZblZblZblZbmbaXTaWvaWvaXUbmcbmdbmebmfbmgbmgbmgbmhbmibmjbmkbmlaNXbmmaWvbmnbmobmpbmpbmqbjNbjOazgbfUbcNbmrbmrbjRbmsbcNbcNbcNbcNbmtbmubmubmubmubmubmvbjPbjPbcNblmbmwbaibajaWYaWYbmxaWYbmybmzbmzbmAbmBbmCbmDbmEbmFbmGbmHbmIaVIaaaaaaaaaaxgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaxsaxsaxsaxsaacaxsaxsaxsaxsaxsaxsaxsaxsbmJaKMaKMaKMaKMbmKbmLbmMaLRaLRbmNbdxbdxbdxbdxbdxbdxbdxbdxbdxbdybdybdybdybdybdybmOaWgaSabmPaUEbmQaUGaUHaUIaUJbmRbmSaHTaHUaHUaHTaaaaQLaaaaQLaaaaaaaWmbmTaWmbmUaUPbmVbmWbmXbmYbmYbmZbmZbmZbmYbmYbmYbnabnbaWvbncaWvaWxbndbnebnfbngbnhbnibnjbnkaNXaNXaNXaNXbmmaWvaWvaWIaWIaWIaWvaWvbnlazgbfUbcNbcNbcNbfVbcNbcNbnmbnnbnobcNbnmbnpbljbcNbcNbnqbnrbnsbnoblmbmwbntaVzbnuaXbaVCaWYbnvbnwaWYaVzaWYbnxaUebnybbBbawbnzbnAaVIamiamiamiaxgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaxsaxsaxsaxsaacaacaacaacaacaacaacaacaacaacaacaacaacaKMbnBbnCbnDaLRaREaREbnEbnFbnGbnHbnIbnIbnIbnJbnGbnKbnLbnMbnNbnOaPfbnPaWgaSaaSbaScbnQaWibnRaSgbnSbnTaLbaHTaHUaUMaHTaKfaUNamiaUNamiamiaNXaNXaNXaNXaUOaUPbnUbnVbnVbnWbnXbnYbnZbnVbnVbnVboabobbocbodboebofbogbohboiaWvbojaWvbokaWvaNXalyamiamiamiamiamiaaaaaaamiamiaxdbolazgbfUbcNbjQbjPbfVbcNbombonbonbonbonbonbonbonboobcNbnqbopboqbljborbosbotaVzaVzaVzaVzaVzaVzaVzaVzaVzaVzbouaUebovbowbawboxboyaVIaaaaaaaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaxsaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaKMbozboAboBaLRboCboDboEboFbnGboGboHboIboJboKboLboMboNaUEaUEboNboOboPbiaboQaPdaPfaPfaXKaTuaSgaShaJZaKaaHTaHUaWkaWlamiaNVaaaaNVaaaaaaaaaamiamiaNXaNXaNXaNXboRboRboRaNXaTxaNXboRboRboRaNXaNXaNXaWvaWvboSboTboUboVaWvaQNboWboXboXboYaaaaaaalyamiamiaaaaaaaaaaaaamiaxdboZazgbfUbcNbpabnnbjRbjSbpbbpcbpdbpeaYsbpfbpgbphbpibmubpjbpkbplbnoblmaHvaOrbpmbpnbpnbpnbpnbpnbpnbpnbpobppbpqaUebpraUebpsaUeaUeaUeaUbaUbaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaKMaKMaKMaKMaKMaKMaKMaKMaKMbnGbptbpubpvbpwbpxbpybpzbpAbfmbpBbpCbpDbpEbpFaZrbpGaQDbpHaZuaZvaQHaQIaQJaZwaHTaHUaWkaWlaaaaNVaaaaNVaaaaaaaaaamiamiamiaaaaaaamiaaaaaaaaaaaaamiaaaaaaaaaaaaamiaaaaNXbpIbpJbpKbpLbpMbpNaWvbpObpPbpQbpRbpSaaaaaaamiaaaaaaaaaaaaaaaaaaalyaxdbpTazgbfUbcNbmrbmrbfVbcNbpUbpVaYsaYsbpWaYsaYsbpVbpXbcNbpYbmrbmrbcNblmaHvaOrbpmbpnbpZbpZbpZbpZbpZbpZbpZbppbpqaUbbqabqbbqcbqdbqebqfbqgaUbamiaxhamialyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbnGbqhbqibqjbqkbqlbqmbqnbqobqpbqqbqrbqsbqtbqubqvaSbaScbqwaSebqxaSgaShaJZaKabqyaHUaWkaWlaaaaLdaLeaQLaaaaaaamiamiamiaaaaaaaaaaxhaxhaxhaxhaxhaxhaxhaxhaxhaxhaxhaaaaNXbqzbqAbqBbqCbqDbqEaWvbqFbqGboXboXbqHaaaalyalyaaaaaaaaaaaaaaaaaaaaaaxdbqIbqJbfUbcNbcNbcNbfVbqKaTKaTKaTKbqLaTKbqLaTKaTKaTKbqMbpYbcNbcNbcNbqNaYCbqObpmbpnbpZbqPbqQbqRbqSbqTbqUbqVbqWbqXbqYbqZbrabrbbrcbrdbrebrfaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbnGbrgbrhbribnIbrjbnGaPfbrkaPfaPfbrlaPdaPdbrmaPdaPdaPdaPdaPdaPdaPfaMraJZbrnaHTaHTbaVaHTaaaaMxbrobrpaaaamibrqamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaNXbrrbrsbrtbrubrsbrvaNXaNXaNXbbabbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxdbrwbrxbrybrzbrAbrzbrBbrCbrzbrzbrzbrzbrDbrEbrzbrzbrzbrCbrFbrzbrzbrzbrGaHvbrHbrIbpmbpZbrJbrKbrKbrKbrLbpZbppbpqaUbbrMbrNbrObrPbrQbqZbrRbrfaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbnGbnGbnGbnGbnGbnGbnGbrSbrTbrUaPdbrVbrWbrXbrYbrZbsabsabsbbsabscbrXaJYaJZaSibsdaHTaHUaHTaaaaaaaMxbsebsfamiamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaNXbsgaWybrsbshaWybsiaNXbsjbsjbsjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabskboZbslbsmaHvbsnbsobspaHvaHvaHvaHvaHvbsqbsraHvaHvaHvaHvbssaHvaHvaHvbsrbstbsubsvbrKbswbrKbsxbsybszbsAbpZbsBbsCbsDbsEbrNbsFbsGbrQbqZbsHbrfamiaxhaaaaaaaaaalyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaPdbsIbsJbsKbsLbsMbsNbsObsPbsQbsRbsSbsSbsSbsSbsTbsUbsVaJZaSibsWaHTaHUaHTalyamiamibsXbsYbsfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaNXbsZbtabtbbtcbtdbteaNXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalybskbtfaZUaZVbtgbtgbthbtibtgbtgbtjbtgbtgbtkbtlbtgbtmbtnbtgbtobthbtgbtgbtpaGqbtqbtrbpmbpZbtsbrKbrKbrKbttbpZbppbtuaUbbtvbtwbtxbtxbqZbqZbsHbrfaaaaxhamiamiamiamiamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaPdbtybtzbtAbtBaPdbtCbtDbtEbtFbtGbtHbtIbtHbtHbrXbrXaJYbtJbtKbtLbtLbtMbtLbtLbtNamiaUNbtObtPaLjaLjaLkaLjaLhaLjaLkaLjaLjaLjaLkaLjaLhaLjaLkbtQaLeaaaaNXaTxbtRbtRbtRbtRaNXaNXaaaaaaaaaaaaaaOaaaaaaaaaaaaaaaaaaaaaaaaamialybskboZazgbtSbtTbtTbtTbtUbtTbtTbtTbtTbtVbtTbtWbtTbtTbtTbtTbtTbtTbtTbtTbtXaLCbtYbpmbpnbpZbrKbtZbuabubbucbudbuebufbugbuhbqbbuibujbukbqbbulaUbaaaaxhaaaaaaamiamialyaaaaaaaaOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaadaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaPdbsIbumbunbsIaPdbrVbuobupbuqbrZbrZburbusbutbuubuvbuwbuxbuybuzbuAbuBbuCbuDbtNamibuEamiaaaaaaaaaaaaaaaamiaaaaaaaaaaaaaaaaaaaaaamiaaaaaaaMxbroaLeamiaaaaaaamiamiaaaaaaamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamibuFbuGaxdboZazgbuHbtTbuIbuJbuKbuLbtTbuMbuNbuObuPbuQbuNbuRbtTbuSbuTbuUbuTbtTbuVaHvbuWbpmbpnbpZbpZbpZbpZbpZbpZbpZbuXbppaUbaUbaUbaUbaUbaUbaUbaUbaUbaaaaxhaaaaaaamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaPdaPdaPdaPdaPdaPdbrVbrZbuYbuZbvabvbbvcbvdbvabvebvfbvgaQJbvhbvibvjbvkbvkbvlbvmaLfbvnamiaaaaaaaaaaaaaaaamialyaaaaaaaaaaaaaaaaaaamiaaaaaaaaaaMxbtPaLiaLjaLjaLhaLiaLjaLjaLhaLkaLjaLjaLjaLkaLjbtQaLebuFbuFbuFbuFbuFbvobvpaxdbvqbvrbvsbtTbvtbvubvvbvwbtTbvxbuObvybvzbvAbuObvxbtTbvBbvCbtTbvDbtTbvEaJqbvFbpmbpnbpnbpnbpnbpnbpnbpnbpobuXbppbvGbvHbvIbvIbvIbvIbvIbvHamiamiaxhaaaaaaamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbvJbvKbvLbvMbvNbrXbvObvPbvQbvRbutbutbvSbvTbrZbvUbvVbvWaJZbvXbvYbvZbwabwbbwcbwdbwebwfamiaaaaaaaaaaaaaaaamiamiaaaaaaaaaaaaaaaamiamiaaaaaaaaaaaaaaaamialyamiamiamiaaaaaaamiaaaaaaaaaaaaaaaaaaaMxbtPbwgbwhbwibwjbuFbuFbuGaxdbtfaSybwkbtTbwlbwmbtUbtTbtTbtTbtTbtTbtTbtTbtTbtTbtTbtTbwnbtTbtTbtTbwoaHvbwpbvGbvGbvGbvGbvGbvGbvGbvGbvGbwqbvGbvGbvHbvIbvIbvIbvIbwrbvHamiaxhaxhaaaaaaamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbvJbwsbwtbwtbwubrXbwvbsObwwbtFbwxbwybwzbwybwybrXbrXbwAaJZbwBbtLbwCbtLbtLbtLbtLbwDbwDbwDbwEbwEbwEbwDbwDbwDbwDbwEbwEbwEbwDbwDbwDbwDbwDbwEbwEbwEbwDbwDbwDbwDbwEbwEbwEbwDbwDbwDbwDbwDbwDbwFbwFbwFbwFbwGbwHbwIbwJbuFbwKbwLaxdboZazgbwkbtTbwMbwNbwObwNbwPbwQbwRbwSbwTbwUbwVbwWbwNbwNbwNbwXbwNbtTbtXaHvbwYbwZbxabxbbxcbxdbxebxfbxgbxgbxhbxgbxibvHbvIbvIbvIbvIbvIbvHaaaaxhaaaamiamialyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbvJbvJbvJbvJbxjbvJbrXbxkbsObxlbxmbtGbxnbxnbxnbxnbxobxpbxqaJZaKaaHTbxrbxrbxsbxtbxtbxtbxtbxubxvbxvbxwbxxbxybxybxzbxAbxAbxAbxxbxBbxCbxrbxzbxAbxAbxAbxxbxrbxrbxzbxAbxAbxAbxxbxrbxrbxrbxrbxDbxEbxFbxEbxEbxGbxHbxIbxJbuFbxKbxLbxMbtfaZUaGdbxNbxObxPbxQbxRbxPbxSbxRbxPbxTbxRbxPbxPbxRbxRbxRbxUbxVbxWbxXbxYbxZbvGbyabybbycbydbyebyfbygbyhbyibxgbyjbykbvIbvIbvIbvIbvIbvHaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbvJbylbwtbvJbwtbwtbrXbrVbymbrXbxmbrZbynbynbyobynbrZbrXbypbyqbyrbwDbysbytbysbwDbwDbwDbwDbyubyvbxrbywbxtbxtbxtbxtbyxbxrbxrbxrbxrbxrbxrbxrbxrbxrbxrbxrbxrbxrbyybyzbxrbxrbxrbxrbyAbxtbyBbwDbuFbuFbuFbyCbxEbyDbyEbxEbxDbxLbxLaxdboZazgbsmbyFbyGbyHbyIbyJbyKbyIbyJbyKbyLbyMbyHbyNbyObyPbyPbyQbyRbySbyTbyUbyVbyWbyXbyYbyZbzabzbbzcbzcbzdbxgbzebzfbvHbvIbvIbvIbvIbvIbvHaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbvJbzgbzhbzibzjbzkbrXbzlbrXbrXbzmbrXbrXbrXbrXbrXbrXbrXbznbzobzpbwDbwDbwDbwDbwDbzqbzqbwDbwDbwDbwDbzrbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbzrbwDbwDbwDbzqbzqbuFbuFbzsbztbzubuFbuFbuFbuFaxdbzvbzwbzxbtTbzybzzbzAbzBbzzbzCbzBbzDbzAbzBbzEbzFbwNbwNbwNbzGbzHbtTbzIbzJbzKbzLbxgbxgbxgbzMbzNbzcbzcbzObxgbzPbzQbvHbvIbvIbvIbvIbvIbvHaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbvJbzRbzSbzTbzUbzVbzWbzXbzYbzYbzZbAabwtbAbbAcbAcbAcbAdbAebAfbAgbAhbAibAibAibAjbAkbAkbAlbAhbAibAibAmbAibAnbAobAibAibAibApbAqbArbAsbAtbAibAibAubAibAnbAhbAvbAwbAxbAybAibAnbAzbAmbAibAibAAbAkbAkbABbAibACbADbAEbAFbAGbAHbAibAIbAJbAKbALbtTbAMbwlbtTbANbwlbtTbAObwlbtTbAPbwlbtTbAQbARbARbASbARbtTbATbspbAUbvGbAVbxgbxgbxgbAWbAXbAYbAZbxgbxgbBabykbvIbvIbvIbvIbvIbvHaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbvJbBbbBcbvJbBdbBebBfbBgbBgbBgbBgbBgbBhbBibzYbzYbzYbBjbBkbBlbBmbBnbBmbBmbBmbBmbBmbBobBpbBqbBmbBmbBrbBmbBmbBnbBmbBmbBmbBsbBmbBtbBubBvbBwbBxbBybBmbBmbBnbBqbBmbBzbBmbBmbBmbBAbBBbBmbBmbBCbBmbBmbBnbBmbBzbBDbBmbBmbBqbBzbBmbBzbBmbBEbBFbtTbBGbBHbtTbBIbBHbtTbBJbBHbtTbBKbBHbtTbARbARbARbASbBLbtTbBMbmwbBNbBObBPbBQbBRbBRbBSbBTbBRbBUbBVbxgbBabvHbvIbvIbvIbvIbvIbvHaaaaxhaaaamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbvJbvJbvJbvJbvJbBWbBXbvJbvJbvJbvJbvJbBYbBZbvJbvJbvJbCabCbbCcbCdbCdbCebCfbCgbCfbCfbChbCfbCibCjbCfbCkbClbClbClbClbCmbCnbCobCfbCpbCqbCrbCsbCtbCubCsbCsbCsbCvbCsbCwbCsbCsbCxbCtbCybCsbCsbCsbCsbCsbCsbCkbCzbCAbCBbCBbCCbCzbCBbCzbCBbCmbCDbtTbCEbCFbtTbCEbCGbtTbCEbCHbtTbCEbCIbtTbCJbCJbCJbASbCKbtTbCLbCMbCNbvGbvGbvGbvGbvGbvGbvGbvGbvGbvGbCObBabvHbvIbvIbvIbvIbwrbvHaaaaxhaaaamiamiamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbvJbCPbCQbCRbvJaacaacaacbvJbBYbBZbvJbCSbCTbCUbCVbCWbCUbCXbCYbCYbCYbCYbCYbCZbCYbDabCYbCYbCYbDbbDcbDcbDbbCYbCYbCYbCYbDdbDebDfbDgbDhbDgbDgbDgbDgbDibDgbDjbDkbDlbDlbDmbDlbDlbDlbDlbDlbDlbDlbDnbDobDpbDqbDqbDrbDsbDqbDsbDtbDnbDlbDubDubDubDubDubDubDubDubDubDubDubDubDubDubDubtTbDvbDwbDwbDxbDybDzbDwbDAbDBbDCbDDbDwbDEbDFbDGbDwbDHbDIbvHbvIbvIbvIbvIbvIbvHamiaxhaaaaaaalyamialyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbvJbDJbDKbDLbvJaacaacaacbvJbBYbBZbCUbCUbCUbCUbDMbDNbDObDObCYbDPbDQbDRbCYbDSbDTbDUbCYbDVbDWbDXbDXbDXbDXbDYbDZbEabEbbEcbEdbEebDgbEfbEgbEhbEibEjbEkbDgbElbEmbDlbEnbEobDtbEpbEqbErbEsbDlbEtbEubEvbEwbExbExbEybEzbExbEzbExbEAbEBbDubECbEDbEEbDubEFbEGbEHbEIbEJbEKbELbEMbENbEObEPbEQbDwbERbESbETbEUbEVbDAbEWbDAbEXbDwbEYbEZbFabDwbvGbvGbvGbvGbvGbvGbvGbvGbvGaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbvJbFbbzYbDKbvJaacaacaacbvJbBYbFcbCUbFdbFebFdbDObFfbFgbFhbCYbDPbFibFibCYbFjbFkbFlbFmbFnbFnbFnbFnbFnbFobFpbFqbFrbFsbFtbFubFvbDgbFwbFxbFybFxbFzbFAbDgbFBbFCbDlbFDbFEbFFbFGbFHbFIbFJbFKbFLbFMbFNbFObExbExbFPbFQbFRbFSbFTbFUbFVbFWbFXbFYbFZbGabGbbGcbGdbGebGfbGgbGhbGgbGibDubEmbEmbDwbGjbGkbGlbEUbDAbDAbGmbGnbDAbGobEYbEYbGpbDwaaaaaaaaaamiamiamiaaaaaaamiaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbvJbvJbvJbvJbvJaacaacaacbvJbGqbGrbCUbGsbGtbGubDObGvbDObGwbCYbCYbCYbGxbCYbGybFkbGzbGAbGBbGCbGDbGDbGEbGFbFkbGGbGHbGIbGJbFubGKbGLbGMbFxbFxbFxbFxbGNbDgbGObGPbDlbGQbExbDtbExbGRbGSbGTbGUbGVbFRbGWbGXbGXbGXbGYbGZbHabHabHbbEzbHcbDubHdbHebHfbDubHgbHhbHibEIbHjbGgbHkbGgbHlbDubGPbEmbDwbHmbGkbGlbHnbHobDAbHpbHqbHrbDwbDwbDwbDwbDwaaaaaaaaaamiaaaalyaaaaxhaxhaxhaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbHtbHubCUbHvbHwbHxbHxbHybHzbHAbHBbHCbCYbHDbHEbHFbFkbHGbGAbHHbHIbHJbHKbHLbHMbFkbHNbHObGIbGJbFubFvbHPbHQbFxbFxbFxbFxbFxbHRbGObHSbHTbHTbHTbHTbHTbHTbHTbDlbDlbHUbExbHVbHWbHXbHXbHXbHYbHXbHZbIabIbbIcbIdbIebGgbIfbDubEFbHhbHibEIbIgbIhbIibIjbIkbDubIlbEmbDwbImbInbIobIpbIqbIrbIqbIqbIsbIsbItbIubIvbDwamiaxhamialyaaaaaaaaaaaaaaaamiamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbHtbIwbCUbGsbIxbGubDObIybHxbIzbHxbIAbIBbICbIDbIEbIFbIGbGAbIHbIIbIIbIIbIJbHMbFkbIKbCYbGIbGJbFubFvbDgbILbIMbFxbINbIObIPbDgbGObIQbHTbIRbISbITbIUbIVbIWbIXbIYbEybExbHVbIZbJabJbbExbJcbJdbJebIabJfbJgbDubJhbGgbJibDubEFbJjbJkbJlbJmbJnbJobJpbJqbDubJrbEmbDwbJsbGkbGlbJtbJubDAbJubJubJvbDAbJwbDAbDAbJxaaaaxhaaaaaaaaaaaaaaaaaaaaaalyalyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbJybHsbHsbHsbHsbHsbHsbHsbHsbHsbHtbJzbCUbFdbJAbFdbJBbJCbJCbJDbJEbJFbCYbJGbJHbJIbJJbJKbGAbJLbJMbJNbJObIJbJPbJQbJRbCYbJSbGJbFubJTbDgbJUbJVbJWbJXbJYbJZbKabGObGPbHTbKbbKcbKdbKebKfbKgbKhbIYbEybExbHVbKibExbExbExbEzbExbKjbIabJfbKkbDlbDlbDlbDlbDlbDlbDlbKlbDubDubKmbDubDubDubDubKnbEmbDwbGjbGkbGlbKobGkbGkbGkbGkbDAbDAbKpbKpbDAbJxaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbHsbKqbKrbKsbHsbKtbKubKvbHsbHtbJzbCUbCUbCUbKwbCUbCUbCUbCUbCUbCUbCYbCYbKxbCYbCYbCYbCYbCYbCYbCYbCYbKybCYbCYbCYbCYbCYbKzbFubKAbDgbDhbDgbDgbDgbDgbDgbDgbKBbKCbHTbKDbKdbKdbKEbKFbKGbIXbIYbFPbKHbKIbDnbDtbDtbKJbDobDtbDnbKKbKLbKMbKNbDlbKObKPbKPbKQbDlbKRbKSbKTbKUbELbKVbKWbDubGPbEmbDwbKXbGkbGlbKYbKZbDAbLabLabDAbLbbERbERbLcbJxaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbLdbLebLfbLebHsbLgbLhbLibLjbLkbJzbLebLlbLmbLmbLmbLmbLmbLmbLmbLmbLnbLobLpbLnbLmbLmbLmbLqbLmbLmbLrbLsbLmbLmbLmbLmbLtbLubLvbLwbLxbLybLzbLAbLBbLCbLDbLAbGObEmbHTbLEbKdbKdbKdbLFbKgbKhbIYbEybExbLGbLHbLIbLJbLJbLKbLLbIXbLMbJfbExbLNbLObLPbLQbLRbLSbLTbLUbFYbLVbFYbFYbLWbLXbDubLYbLZbDwbMabGkbMbbMcbMdbMdbMdbMdbMebLbbERbMfbLcbJxaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbLebLebLebMgbHsbMhbMibMjbMkbMibMlbMmbMnbMobMibMibMibMibMibMibMibMibMibMibMpbMibMibMibMqbMibMibMrbMsbMibMibMpbMtbLxbKzbMubMvbMwbMxbMybMzbMAbMBbMCbLAbGObEmbMDbKdbKdbKdbKdbMEbMFbIXbIYbEybExbMGbMHbMIbMJbMKbMLbMMbIXbLMbKLbMNbMObMPbMQbExbMRbMSbMTbMUbMVbMWbMXbGgbGgbMYbDubEmbMZbDwbNabGkbNbbNcbNdbDAbNdbDAbDAbLbbNebNfbLcbJxaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbNgbLebNhbHsbHsbHsbHsbHsbHsbHsbHsbHsbNibJzbHsbHsbHsbNjbNjbNjbNjbNjbNjbNjbNkbNjbNjbNjbNjbNjbNlbNlbNmbNlbNnbNobNlbNlbNpbFubKAbLxbNqbNrbNsbNtbNubNvbLAbGObEmbHTbNwbNxbNybNzbNAbNBbNCbNDbNEbNFbNGbDlbNHbNIbMKbNJbNKbDlbLMbJfbExbNLbDlbNMbExbNNbNObDlbNPbNQbMWbGgbGgbGgbGgbNRbEmbMZbDwbNSbERbNTbNUbNVbNVbNWbDAbDAbDAbNXbNXbDAbJxaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbNYbLebNZbHsbOabObbHsbOcbOdbOebOfbOgbOhbJzbHsbOibOjbNjbOkbOlbOlbOmbOnbOobOpbOqbOrbOsbOsbOsbNlbOtbOubOvbOwbOxbOybNlbKzbFubKAbLxbOzbOAbLAbLAbLAbLAbLAbOBbOCbODbOEbOFbOGbOHbOIbOJbDlbDlbOKbOLbOMbDlbONbOObOPbOQbORbDlbDlbOSbOTbDlbDlbOUbHabOVbOWbDlbOXbOYbIebOZbPabPbbPcbDubEmbMZbDwbPdbNfbNTbDAbPebPfbPgbESbPhbPibDAbDAbPjbDwamiaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbLfbLebLebPkbLebPlbHsbOcbPmbPnbPobPpbPqbPrbHsbPsbLebNjbOsbPtbOsbPubPvbPwbPxbPybPzbOsbOsbOsbNlbPAbPBbOwbOwbOxbPCbNlbKzbFubPDbLxbPEbOAbLAbPFbPGbPHbLAbMZbEmbHTbHTbPIbPJbHTbPKbHTbHTbPLbPMbPNbPObDlbDlbPPbPQbPRbDlbDlbPSbPTbPUbPVbDlbDlbPWbPWbDlbDlbDubPXbDubDubDubDubPYbDubEmbMZbDwbDwbDwbDwbPZbDwbDwbDwbDwbDwbDwbDwbDwbDwbDwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbQabPkbHsbHsbHsbHsbHsbHsbHsbHsbHsbHsbNibQbbQcbLebQdbNjbOsbOsbOsbQebQfbQgbQhbQibQjbOlbOlbQkbNlbQlbPBbQmbQnbQobQpbQqbQrbFubKAbLxbQsbQtbQubQvbQwbQxbLAbMZbEmbQybQzbQAbQBbQCbQDbQEbQFbQGbQHbQIbQJbQKbQLbQMbQNbQObQPbQQbQRbQSbQTbQUbQVbQWbQXbQXbQYbQZbRabRbbRcbRdbDubRebRfbDubRgbMZbEmbEmbRhbEmbEmbEmbEmbEmbRibRjbRkbRjamiamiamiamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbLebLebLebLebRlbLlbLmbLmbLmbLmbLmbLmbRmbRnbHsbRobRpbNjbRqbRqbRqbRqbRqbRrbRsbRqbRqbRqbRqbRqbNlbRtbRubRvbOwbOxbRwbNlbRxbFubKAbLxbEmbOAbLAbRybRzbRAbLAbRBbNubRCbRDbREbRFbRGbRHbRIbRJbQNbRKbRLbRMbRNbRObRPbRQbPUbPUbRRbRSbRTbRUbQNbRVbRWbQNbQNbQNbQIbRXbRYbRYbRZbDubSabSbbDubEmbScbSdbSdbSebSdbSdbSdbSdbSdbSfbLAbLAbLAaaaamiaaaamialyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbLebLebLebLebHsbSgbShbMibMibMibMibMibSibSjbNjbNjbNjbNjbOkbOlbOlbSkbOnbSlbSmbSnbSobOsbOsbOsbNlbSpbSqbSrbSsbOxbOwbStbSubSvbSwbLxbGPbOAbLAbLAbSxbLAbLAbOAbEmbSybSybSybSybSzbSybSAbSybSybSBbSCbSybSDbSybSEbSFbSGbSHbSIbSJbSKbSLbSGbSMbSNbSObSPbRDbPNbSQbSRbRYbSSbSTbSTbSTbSTbSTbSTbSTbSTbSTbSTbSTbSTbSTbEmbMZbSUamiamiaaaalyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbLebLebSVbSWbHsbSXbQbbNjbNjbNjbNjbNjbNjbNjbNjbSYbSYbRqbOsbPtbOsbSZbPvbTabTbbPybTcbOsbOsbOsbNlbTdbTebTfbTgbOxbThbNlbTibFubTjbLxbTkbTlbTmbTmbTnbTobTmbTpbEmbSybTqbTrbTsbTtbTubTvbSybTwbTxbTybTzbTAbSybTBbTCbTDbTCbTBbTBbTEbTFbTGbTHbTBbTBbTIbRYbTJbTKbRYbRYbTLbTMbTNbTObTPbSTbTQbTRbTSbTTbTUbTVbTWbSTbEmbMZbSUaaaamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbHsbPkbHsbHsbHsbNibQbbNjbOsbOsbTXbOsbNjbTYbTZbUabUbbRqbOsbOsbOsbUcbUdbSlbSmbQibUebOlbOlbQkbUfbUgbUhbUgbUgbUibUgbUfbUjbFubUkbUlbUmbOCbOCbOCbUnbUobOCbOCbOCbUpbUqbUrbUsbUtbUubUvbUwbUxbUybUzbUAbUBbSybUCbRabUDbQXbUEbTBbUFbUGbUHbUIbUJbTBbUKbULbPNbRYbRYbRYbUMbUNbUObUPbUQbURbUSbUTbUUbUVbUWbUXbUYbSTbEmbMZbSUaaaamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbUZbLebLebVabHsbNibQbbNjbOsbOsbOsbOsbNjbVbbVcbVdbVebRqbRqbRqbRqbRqbRqbVfbVgbRqbRqbRqbRqbRqbUfbVhbVibVjbVkbVlbVmbVnbVobFubKAbLxbLxbLxbLxbLxbMZbVpbSybSybSybSybVqbVrbVrbVrbVsbVtbVubVrbVvbVwbVrbVxbSybVybRYbVzbRYbVAbVBbVCbVDbVzbVEbVFbTBbVGbVHbVIbVJbVKbVLbVMbSTbVNbVObVPbVQbVRbVSbVTbVUbVVbVWbVXbVYbOCbVZbWabWbamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbUZbLebLebWcbHsbNibQbbNjbWdbOsbWebWfbWgbWhbWibWjbWkbWlbWmbWnbWobWpbWqbWrbSmbWsbWtbOsbOsbOsbUfbWubWvbWwbWwbWxbWybUfbKzbFubKAbLxbWzbWAbWzbLxbMZbVpbSybWBbWCbWDbWEbWFbWGbWGbWGbWHbWIbWJbWKbWLbWMbWNbWObWPbRXbTKbRYbVAbVBbWQbVDbRYbVEbWRbWSbWSbWTbWUbWTbWSbWVbWSbSTbSTbSTbSTbSTbWWbWXbWYbWZbXabXbbXcbSTbXdbXebSUaaaamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbXfbLebLebXgbHsbNibQbbNjbXhbXibXjbOsbOsbXkbXlbXmbXnbXnbXobXpbXpbXpbXpbXqbXrbPybXsbOsbOsbOsbUfbXtbXubXvbXwbXxbXybXzbQrbFubXAbXBbXCbXCbXDbLxbMZbVpbSybXEbVrbXFbVrbVrbVrbVrbXGbXHbXIbXJbVrbXKbVvbXLbXMbXNbSQbSRbRYbXObVBbWQbXPbXQbXRbXSbXTbXUbXVbXWbXXbXYbWSbXZbSTbYabYbbYcbYdbYebYfbYgbTUbTUbTUbTUbSTbYhbGObSUalyamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbNZbLebLebXgbHsbNibQbbNjbOsbYibOsbOsbYjbYkbYlbYmbYnbYobYpbYqbYrbYsbYnbYnbYtbQibYubOlbOlbQkbUfbYvbYwbYxbYxbYybYzbYAbLubYBbYCbLxbYDbYEbYFbLxbMZbVpbSybYGbYHbYIbYJbYKbYLbVrbYMbYNbSybYObYPbYQbYRbYSbSybYTbYUbYVbYWbYXbTBbYYbYZbZabVEbRYbZbbZcbZcbZdbZebZfbWSbZgbSTbZhbZibZjbZkbZlbUPbZmbZnbZobZpbZqbSTbYhbGObSUalyamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbZrbLfbLebXgbHsbZsbRnbNjbOsbOsbOsbOsbNjbZtbZubYmbYnbYnbZvbZwbZxbZybYnbYnbZzbRqbNjbNjbNjbNjbUfbZAbZBbZCbZDbWxbZEbUfbKzbZFbLwbLxbLxbLxbLxbLxbMZbVpbSybSybSybSybSybSybSybZGbSybSybSybSybSybSybZHbSybSybZIbZJbTBbTBbTBbTBbZKbZLbZMbZNbZObZPbZQbZRbZSbZTbZUbWSbXZbSTbZVbZVbZVbZWbZXbZYbZmbZZbUOcaacabbSTcacbGObLAamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbHsbHsbHsbHsbHscadcaebNjbOsbOscafbOsbNjcagcahcaibYnbYnbWrbYncajcakcalcamcajcanbNjcaocapcaqcarcascatcaucavcawcaxbUfcaycazbKAbLxcaAcaBcaCbGPcaDcaEbEmbEmbEmbEmbEmbEmcaFbEmbEmbEmbEmbRgbZJcaGcaHcaIcaGcaJcaKbZJcaLcaMbTBcaNcaOcaPcaQcaRcaScaTcaUcaVbZccaWbWScaXbSTcaYcaZcbabZkcbbcbccbdcbecbfcbbcbgcbhcbicbjcbkcblaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHscbmcbmbLebLecadcbnbNjbNjbNjbNjbNjbNjbNjbNjcbocbpcbqcbrcbocbsbNjbNjbNjcbsbNjbNjcbtcbucbvbUgcbwcbwbUgcbxcbycbzbUfcbAcbBcbCcbDcbEcbEcbEcbEcbFcbGcbHcbHcbHcbIcbHcbHcbJcbHcbHcbHcbHcbKcbLcbMcbNcbOcbPcbQcbPcbRcbPcbPbTBcbSbRYbRYbRYbXObZPcbTbZccbUbZccbVbWScbWbSTcbXcbYcbZbYdccaccbcccccdcceccfccgbSTcchbGObLAbSUbSUbSUbLAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbHsbHsbHsbHsbHsbHsbHsbLlcciccjccjcckcclccmccnccnccoccpccoccqccnccrccscctccuccvccwccxccyccxcczcbuccAcbucbucbuccBcbucbubUgccCccDccEbUfccFccGccHbLxbLxbLxccIccIccIccJccIccIccIccKccIccIccIccIccIccIccIccLbZJcaGcaHcbPcaGcbPcbPbZJccMccNbTBccObVJccPccQccRbWSccSccTccUbZcccVbWSbWSbSTbSTbSTbSTbSTbSTbSTbSTbSTbSTbSTbSTbSTccWbGOccXccYccZccZbSUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHscdacdbcdccddbNZbLebLebNibQbcdecdecdecdecdfcbucdgcdhcdicdjcdkcbucbucdlcdmcdncdocdpcbucdqcbucdrcbucbucdscbucbucbucbucbubUgcdtcducdtbUfbKzbFubKAbLxcdvcdwccIcdxcdycdzccIcdAcdBcdCcdDcdBccIcdBcdEcdFccIccLbZJcaGcdGcbPcaGcbPcdHbZJcdIcdJbTBbTBbTBcdKbTBbTBbWSbWSbWScdLbWSbWSbWScdMcdNcdOcdPcdQcdRbSdbSdbSdbSdbSdbSdbSdbSdcdScdTbLAcdUccZccZbSUaaaaaaaaaaaaaaaaaaaaaaaaaaOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbLlcciccjccjccjccjccjcdVcdWcdecdXcdYcdZcdZcdZcdZceacdZcebcecceccedcedceecefcedceccegcdqcehceicejcekcelcejcemcencbucbubUgceocepceqbUfbUjbFucerbLxbLxbLxccIcescetceuccIcevcewcexceycdBcezcdBcdFcdFccIccLbZJcaGceAceBcaGcbPceCbZJbZJbZJbZJbEmceDceEbEmbEmceFbEmbEmbMZbEmbEmbEmbEmbMZbEmbEmbEmceGceHceIceJceKceKceKceKceKceLceMbLAceNccZccZbSUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahceOcePcePcePceOaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaacaacaacaacaacceQceQceQceQceQbNibQbcdecdecdecdecdecdeceRcdeceSceTceUceVceWceXceYceZcdZcfacfbcfccfdcfecffcfgcedcbucfhcficeccfjceccfkcecceccflcfmcfmceccecceccbncbncfnbFucfobLxcfpcfqccIcfrcdBcfsccIcftcfucfvcfwcfxccIcdBcfycdFccIccLbZJbZJbZJbZJbZJbZJbZJbZJcfzcfAbSdbSdcfBbSdbSdbSdbSdbSdbSdcfBbSdbSdbSdbSdcfCcfDcfDcfDcfDcfEcfFcfGcfHcfHcfHcfHcfHcfHbLAbLAbSUbSUbSUbLAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaadaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahcePcePcfIcfJcfIcePcePaaccePcePcePcePaacaadaadaadaadaacaadaadaadaadaadaadceQceQceQcfKcfLcfMceQbNibQbcdecfNcfOcfPcfQcfRcfScfRcfTcfUcfVcfWcfXcfYcfZcgacgbcgccbucbucbucgdcgecgfcedcggcdqcghceccgicgjcgkcglcgmcgncbucbuceccgocgpcgqcbncgrbSvbXAcgscgtcguccIcftcgvcgwcgxcgycgzcgAcgBcgCccIccIccIccIccIcgDcgEbSdbSdbSdbSdbSdbSdbSdcfBcfCbEmcgFcgFcgFcgFcgFcgFcgFcgFcgFcgFcgFbLAcgGbLAcfDcgHcgIcgJcgKcgLcgMcfHcgNcgOcgPcgQcgRamiamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahcePcePcfIcfIcfIcfIcfIcePcePcePcgScgTcgUcgVcgVcgVcgVcgVcgVcgVcgVcgVcgVcgVcgVcgWcgXcgWcgYcgZchachbchcchdchecfNcfOcfPcfPchfchgchhchicfYchjchkchkchlchmchnchochpchqchrchschtchuchvchwchxchychzchAchBchCchDchEchFchGchHchHchIchJchHchKchLchMbFubXAbLxchNchOccIcfrchPchQchRchSchTchUcdBchVccIchWchXchYccIchZccWbEmbGPciacibcaBbEmbEmbEmbEmciccgFcidcieciecifcigcihciicijcikcgFcilbEmcimcfDcinciocipcgHciqcirciscitciucivcivcgRamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahcePcePcfIcfIcfIcfIcfIcfIcfIcePcePciwcixcePaacaacaadaadaadaadaadaadaadaadaadciyceQceQceQcizciAceQceQbLebQbcdecfNcfOcfPciBcfRciCcfRciDciEcfYcfYciFcfYciGciHcgbciIcdqciJciKciLciMcgfcedciNcdqciOcecciPciQciRciScgmciTciUccnciVciWciXciYcbnciZbFubXAccIccIccIccIccIccIccIccIccIcjacjbcjccjdccIcjeccIcjfcgFcgFcjgcjhcgFcgFcgFcgFcgFcgFcgFcgFcgFcgFcjicjjcjkcjlcjmcjncjocjpcikcgFcicbRgcjqcfDcgHcjrcjscjtcjtcjucjvcjwcjvcjxcivcgRamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahcePcePcfIcfIcjycjzcfIcjycjzcfIcfIcePcjAcePcePaacaacaacaacaacaacaadaadaadaadaadaadaadceQcjBcjCcjDcjEcjFcjGcjHcdecdecdecdecdecdecjIcdecjJcjKcjLcjMcjNcjOcjPcjQcdZcjRcjScjTcdmcdmcdmcjUcedcjVcdqciOceccjWcjXcjWcecceccjYcjZcfmceccecckaceccbnckbbFubYCccIckcckdckeckfccIcdBcdBckgckhcdCcdBckickjcdBcdBcdBcgFckkcklckkckmcknckockpckkckqckrcksckkcktckuckvckwckxckyckzckzckzckzcgFbLAbSUbLAcfDcfDcfDckAckAckAcfDcfHcfHcfHcfHcfHcfHamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahcePcePcfIcfIcfIckCckDckEckFckGcfIcfIckHckIckJcePaacaacaacaacaacaacaadaadaadaadaadaadckKceQckLckMckNckOceQckPckQckRckRckRckRckRckSckTcdeckUckVcdZcdZcdZcdZckWcdZcebceccecckXcedceecedcedcecckYccwckZclaclbclcckZcldcleclfcjVcbucecclgclhclicbnbKzbFucljccIclkcetcgycllclmclncgycgycloclpclqclrclscltcltcltcgFckkcluckkckkckkclvckkckkckkclvckkckkcklclwcieclxclyclzcihclAclBclCcgFaaaaaaamiaaaamiaaaaaaamiamiamiamiaaaaaaamialyamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahceOcePcfIcfIcjyclDclEckDckEckFclFclDclDclDclDclGceOaacaacaacaacclHaadaadaadaadclHaadaadaadceQclIckMclJclKceQbLebLecddcdcclLclMcddclNbQbcdecdecdecdeclOcbuclPclQclRccyclSccxclTclUclVclWccyclXclYcdpcbucdrcbucbucbuccwclZcbucjVcbucecclhclhclicbnbKzbFubKAcjccdBcdBcmachQcmbchQchQchQcmccmdcdBcmecmfcltcmgcmhcgFcmicmjcmkcmlcmkcmmcmmcmmcmmcmmcmlcmmcmncjickkcmocmpcmqcjncmrcmsclCcgFaaaaaaalyaaaamiaaaaaaalyalyaaaaaaaaaaaaamiamiamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahcePcfIcfIcfIckHcmtcmtcmuckEcmvcmtcmtcmtcmtcmtcmwcePcmxcmxcmxcmxcmxcmxcmxcmxcmxcmxcmxcmxcmxceQcmycmzcmzcmAceQbHsbHsbHsbHsbHsbHsbHscmBcmCcjGcmDcjGcmEccxcmFccycmGcmHcmIcmJcmKcmLcmMcmNcmOcmPcmQcmRcmMcmMcmScmTcmUcmMcmVcmWcmXcmYcbuceccmZcnaclicbncnbbFucnccndcnecnfcngcnfcnhcnfcnfcnfcnicnfcnfcnjcltcltcnkcnlcgFcnmcnmcnnckkcklckkckkckkckkckkcnockkcnncnpckkcnqckkcnrckzckzckzckzcgFaaaaaaalyalyamiaaaaaaaaaaaaaaaaaaaaaaaaalyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaadaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahcePcnscfIcfIcfIckEckEcntcnuckEckEckEckEckEckEckEcnvcnwcnwcnwcnwcnwcnwcnwcnwcnwcnwcnwcnwcnwcnxcnycnzcnzcnAceQaacaacaacaacaacaacbHsbLecnBbMicnCcnDcnEcnFcnFcnGcnFcnFcnFcnHcnIcnJcnFcnKcnLcnMcnNcnKcnKcnKcnKcnKcnOcnOcnPcnQcnRcnOcnOcnOcnOcnOcnScnSbKzcnTcnUcnVcdBcltcnWcltcnXcltcltcltcnYcnZcltcltcltcltcoacobcgFcoccoccodcoecofcogcohcoicojcoecoecokckkclwcieclxcolcomconcoocopcoqcgFaaOaaaamiamiamiaaaaaaaaaaaaaaaaaaaaaaaaalyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahcePcfIcfIcfIcjycorcorcosckEcotcorcorcorcorcorcorcePcoucoucoucoucoucoucoucoucoucoucoucoucouceQceQceQceQceQceQaacaacaacaacaacaacbHsbHsbHsbHsbLebQbcnEcovcovcowcoxcovcovcnFcoycozcoAcnKcoBcoCcoDcoEcoFcoGcoHcoIcnOcoJcoKcoLcoMcoNcoOcoPcoQcoRcnScoSbGJcoTcoUcoVcnecnecoWcnecoVcoXcdBcdBcoYclscdBcoZclscltcmgcmhcgFcpacpacpbckkcpcckzcpdcpdcpecpdckzcpfcoecpgcphcpicmpcpjconcpkcplcoqcgFaaaaaaalyalyamialycpmalyaaaaaaaaaaaaaaaamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaeaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahceOcePcfIcfIckHckIckJckDckEckFcpnckIckIckIckIcpoceOaacaacaacaacclHaacaacaacaacclHaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbLebQbcnEcppcpqcprcpqcpqcpqcpscpqcptcoAcnKcpucpvcpwcpxcpycpzcpAcpBcnOcpCcpDcpEcpFcpGcpGcpHcpIcpJcpKcpLcpMcpNbKAccIcescdBcpOcpPccIcpQcdBcdBcpRcpScpTcpUcmfcltcltcltcgFcpVcpVcpbckkcklckzcpWcpXcpbcpYckzcpZcqacqbckkcqcckkcqdckzckzckzckzcgFaaaaaaalyalyalyalyalyamiaaaaaaaaaaaaaaaamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahcePcePcfIcfIcfIckCckDckEckFckGcfIcfIcjyclDclEcePaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbLebQbcqecqfcqfcqfcqgcqhcqhcqicpqcpqcoAcnKcqjcqkcqlcqmcqncqocqpcqqcqrcqscqtcqucqvcqwcqxcqycqzcqAcqBbGIbGJbFucoUcqCcqDcqEcqEckfccIcqFcdBcqGckhcqHcdBcqGcqIcdBcdBcdBcgFcqJcqKcpbcjjcmnckzcqLcqMcqNcqOckzclwciecqPcieclxciecqQcihcqRcqScqTcgFaaaaaaaaaaaaaaaaaaaaaamiaaaaaaaaaalyaaaamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahcePcePcfIcfIckHcqUcfIckHcqUcfIcfIcePcePcePcePaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbLebQbcnEcqfcqfcqfcqVcqhcqhcqWcqXcqVcoAcnKcqYcqZcracrbcpycrccrdcrecnOcrfcrgcqucrhcricrjcqycrkcnScnScrlcrmcrncroccIccIccIccIccIccIccIccIccIccJccIccIcgFcgFcgFcgFcgFcgFcrpcrqcrrcrscklckzcrtckkcpbcruckzcrvckkclwcrwcrxcmpcrycjncrzcrAcqTcgFaaaaaaamiaaaaaaaaaaaaamiaaaaaaaaaalyamiamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahcePcePcfIcfIcfIcfIcfIcfIcfIcePcePaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHscddbQbcnEcnEcnEcnEcnEcnEcnEcnEcnEcnEcnEcrBcrCcrDcrEcrFcpycrGcrHcrIcnOcrJcrKcrLcrMcrNcrMcrOcrPcoLcrQcnScrRcrScrTcrUcrUcrVcrWcrXcrYcrZcsacrWcsbcsccsdcsecsfcsgcshcsicsjcskcslcsmcsncsockzcspcnocpbcsqckzcsrckkcjicsscqcckkcstckzckzckzckzcgFamiamiamiamiamialyalyalyamiamiamiamiamialyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahcePcePcfIcfIcfIcfIcfIcePcePaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHscsubQbbLebLebLebLebLecsvbLebLebLecddcswcrBcrBcsxcrBcrBcrBcrBcrBcrBcnScnScsycszcszcszcsAcszcszcsBcsCcnScsDcsEcsFcsGcsGcsGcsGcsGcsGcsGcsGcsGcsHcsIcsJcsKcsLcsMcsNcsOcsPcsQcsRcsScsncklckzcsTcsUcpbcsVckzcsWckkcnpclwclxciecsXcihcsYcsZctacgFaaaaxhaaaalyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahcePcePcfIctbcfIcePcePaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsctccnBbMibMibMibMibMicnCbMibMibMicnDbLebLebLebLebLebLebLectdbLebShctecnSctfctgcthctictjctkctlctmctncnSctoctpctqctrctsctsctsctsctsctsctsctrcttctuctvcgFctwctxctyctzctActBctCcmmctDctEckzctFcklcpbctGckzctHckkcjictIctJcmpctKcjnctLctMctacgFaaaaxhaaaalyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahceOcePcePcePceOaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbHsbHsbHsbHsbRlbHsbHsbHsbHsbHsbHscnBbMibMibMibMibMibMibMicnCbMibSibLecnScnScnScnScnScnScnScnScnScnScnSctNctOctPctsaacaxsaxsaacaxsaxsaxsctsctQctRctScgFckzctTctUckzckzctVckkckkctWctXckzcpdctYctZcpdckzcuacubcuccudcnqckkcueckzckzckzckzcgFamiaxhaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHscufbLecddcugbHscuhcuibHsbHsbHsbHsbHsbRlbHsbHsbHsbHsbHsbLebLebLebLebLebLebLebLebLebLebLebLecujctocukctqctsaacaacaxsaxsaxsaxsaxsctsctQcukculcsecumcuncuocupcsjcsmcuqcsmcurcklcusckkcklckkckkcutcuucubcuccuvcuwcuxcuycjncuzcuAcuBcgFaaaaxhamiamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHscuCbLebLecugbHsbLfcuDcuEcuFcuGcuHcuIcuJbLfcuKcuLcuMbHsbLebLebLebLebLebLebLebLecddcbmcuNcuOctrcuPcukctqcuQctsctsctsctsctsctsctsctrcuRcuScuTcuUcuVcuWcuXcuYckzcuZckkcjjctDcvacmmcvbcvacmmcvccrwcvdcubcvecuxcuwcvfcvgcihcvhcvicuBcgFaaaamiaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHscvjbLebLecugbHsbHsbHsbHscvkcvlbLecvmcvnbLfcvobLecvpbHsbLebLectrctrctrctrctrctrctrctrctrctrcvqcvrcvscvtcvucvvcvwcvxcvxcvycvzcvAcvBcvCcsEcvDcvDcvEcvFcnocvGckzckkckkcvHcvIcsmcvJcvKcvLcvMcvNcvOcvPciecvOcvQcvRckkcvSckzckzckzckzcgFamiamiaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHscvTcddcvUbRpbHscvVcvWcvXbLecvncvnbLfcuHbLfcvYcvZcwabHsbLebLectrcwbcwccwdcwecwfcwgcwhcwicwfcwjcwkcukcwlcwlcukcwlcwlcwlcwmcukcwncwncwocwpcwqcwrckkcvFckkcwsckzcwtcwucwvcwucwwcwxcwycwzcwAcwBcuxcwCcwDcmpcmpcwEcwFcwGcwHcwIcwJcwKcgFaaaamialyaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHscwLbLebLecugbHscwMcwNbHscvncwObLfbZrbZrcwPcwQcwRbLebHscddbLecwScwTcukcukcwmcukcukcukcukcukcukcukcwUcwVcwWcwWcwWcwWcwWcwXcwWcwWcwWcwYcwZcxacxbcxccvFckkcxdckzcxecxfckkcxgcxhctWcklcxicwwcxjcwwcrwckkckkcnockkckkcxkcxlcxmcwKcwKcxnalyaxhamiaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHscxobLebLecugbHsbHsbHsbHsbLecvncxpcxqbLecvncwRbLecwRbHscxrbLectrcxscukcukcxtcwncwncukcukcwlcwlcwlcxucxvcwlcukcwlcwlcwlcxtcukcwncwncukcwZcxwcxxcqMcxycxzcxAckzcxBcwAcwwcwAcxCctWcxDcmmcmmcxEcxFcvOciecxGcieciecxHcxIcxJcxKcwKcwKcgFalyaxhaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaadaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHscxLbLebLecugbHscxMcxNcxOcuJbLebLecvnbLecxPcxQcxRcwPbHscxSbLectrcxTcxUcxUcxVcxUcxUcxWcxXcukcukcukcukcukcukcukcxYcxWcxZcyacxUcxUcxVcxUcxXcgFcybcyccydcyecyfckzckkckkckkckkckkcygcsmcyhcsmcyicyjckkcykckkckkcylckkcymcgFcgFcgFcgFcgFaaaaxhaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBaaackBckBckBckBckBaaackBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbHsbHsbHsbHsbHsbHsbHsbHsbHsbHsbHsbHsbHscyncynbHscyncynbHscyncynctrctrctrcyoctrctrctrctrcypcxUcxUcxUcxUcxUcxUcxUcyqctrctrctrctrcyrctrctrctrcgFcgFcgFcgFcgFcgFcgFcpdcpdcpdcpdcpdcgFcpdcpdcpdcpdcpdcpdcgFckkcysckzckzckzcgFalyamiamiaaaaaaamiamiaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBaaackBckBckBckBckBaaackBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacytcyucyvaaaaaactrcywcyocywcywcywcywcywcyocywctraaaaaacytcyucyvaaaaaaaaaamialyamiamiamiaaaaaaaaaaaaamiaaaaaaaaaaaaaaaaaaaaaaaacgFcyxcyycyzcyAcyzcyBalyamiamiamiaxhaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyCcyocyDaaaaaaaaactscyEctsamiamiamictscyEctsaaaaaaaaacyCcyocyDaaaaaaaaaaaaamialyalyamiaxhaxhaxhaxhaxhaxhaxhaxhaxhaxhaxhaxhamicgFcgFcgFcgFcgFcgFcgFamiamiamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyFcyFcyFcyFcyFaaaaaacytcyucyvamiamiamicytcyucyvaaacyFcyFcyFcyFcyFcyFaaaaaaaaaamiaaaamiaaaalyaaaamiaaaaaaaaaaaaamiaaaaaaaaaaaaalyaaaamiaaaaaaaaaaaaaaaaaaaaaaxgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyFcyFcyFcyFcyFcyFaaacyCcyocyDamiamiamicyCcyocyDcyFcyFcyFcyFcyFcyFcyFaaaaaaaaaalyaaaaaaaaaaxgaxgaxhamiaxgaxgaxgaxgaxgaxgaxgamiaxgaxgaxgaxgaxgamiamiaxhalyalyalyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalyalyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaBgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaacaacaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaaaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaaeaaeaaeaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaBgaaeaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaBgaBgaBgaBgaBgaBgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaadaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaBgaBgaBgaBgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaaaaaaaaaaaaaaaaaaaaaaadaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaBgaBgaBgaBgaBgaBgaBgaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaBgaBgaBgaBgaBgaBgaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaadaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaBgaBgaBgaaaaaaaaaaaaaaaaaaaaaaaaaadaacaacaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaacaacaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaBgaBgaBgaBgaBgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaBgaBgaBgaBgaaaaBgaBgaBgaBgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaacaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaadaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaBgaBgaBgaaeaaeaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaBgaBgaBgaBgaBgaBgaBgaBgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaBgaBgaBgaBgaBgaBgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaBgaBgaBgaBgaBgaBgaBgaaaaCVaBUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaBgaBgaBgaBgaBgaBgaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaBgaBgaCVaCVaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaCVaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaCVaCVaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaadaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaCVaCVaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaafaafaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaafaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaadaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaaaaaaaaaaaaaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaaaaagaagaagaagaagaaaaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaeaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaaaaagaagaagaagaagaaaaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaadaacaacaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaacaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaacaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaadaadaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaadaacaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaadaacaacaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaeaakaakaakaakaakaakaakaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaakaakaalaamaamaamaanaakaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaakaaoaapaapaapaapaaqaakaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaakaapaapaapaapaaraasaakaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaakaataauaapaapaapaavaakaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaaaaacaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaakaawaakaaxaayaakaakaakaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaaaaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaakaazaakaakaakaakaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaakaawaakaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaafaafaaAaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaadaacaaaaaaaaaaadaacaacaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaafaafaafaafaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaacaacaadaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaafaahaafaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaacaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaacaacaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaaaaaaaaaaaaaacaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaacaacaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaaaaaaaaaaaaaacaadaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaBUaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVaCVaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVaCVaCVaCVaCVaadaadaadaadaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVaCVaCVaCVaCVaCVaadaadaadaadaadaadaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaCaaCaaCaaCaaCaaCaaCaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaadaadaadaadaadaadaadaadaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaCaaEaaFaaFaaFaaGaaCaaCaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaadaadaadaadaadaadaadaadaadaadaadaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaCaaCaaHaaGaaGaaGaaGaaIaaCaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaCaaJaaGaaGaaGaaGaaGaaKaaCaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaCaaLaaGaaGaaGaaMaaGaaNaaCaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaCaaCaaCaaCaaPaaCaaCaaCaaCaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaCVaCVaCVaadaCVaCVaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaCaaGaaCaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaadaadaadaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaadaaaaaaaaaaaaaaaaaaaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaCaaPaaCaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaadaadaaQaaRaaSaaSaaSaaTaaTaaSaaSaaSaaSaaUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaVaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaadaadaaWaaXaaYaaYaaZabaabbaaZaaYaaYaaYabcaaSaaSabdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaafaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaacaacaacaacaacaCVaCVaadaadaaWabeaaYabfaaYabfaaYabfaaYabfaaYaaTabgabhabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaCVabjabjabjabjabkabkabkabjabjabjaCVaCVaCVaCVaacaacaCVaCVaadaadaaWabeaaYabfaaYabfablabfaaYabfaaYabmaaYaaYaaTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVabjabnaboabpabqabrabsabtabuabjaCVaCVaCVaCVaCVaCVaCVaCVaadaadaaWabeaaYabfaaYabfaaYabfaaYabfaaYaaTabgabvabiaaaabwabxabyaaaabzabAabBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVabkaboaboaboabCaboaboabDabEabjabjabjaadaCVaCVaCVaCVaCVaadaadaaWaaXaaYaaYabFabGabHabIaaYaaYaaYabcaaSaaSabJaaaabKabLabKaaaabMabNabMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVabkaboabOaboaboabPabDabDabQabRabSabTaadaadaadaadaadaadaadaadabUabVabmaaSaaSaaTaaTaaSaaSabmaaSabWaaaaaaaaaaaaabKabXabKaaaabMabYabMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCVaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVabkaboaboaboabZacaabDabDacbabjabjabjaccaadaCVaCVaCVaadaadaadaadacdaceacdaadaadaadaadacdaceacdaadaadaaaaaaacfacgachaciacfacjackaclacfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCVaCVaCVaCVaCVaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVabjabjacmacnaboaboabDabDacoabjaCVaCVaCVaCVaCVaCVaCVaCVaadaadaadacdacpacdaadaadaadaadacdacpacdaadaadaadaadacfacqacpacracfacqacpacsacfacfacdacdaaaaaaaaaaaaactactactactactactactactactaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCVaCVaCVaacaacaacaCVaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVabjabjabjabjacuacvabjabjabjaCVaCVaCVaCVaCVaacaacaCVacwacxacfacdaceacdacfacdacdacfacdaceacdacfacdacdacfacfacfacyaczacfacfacAaczacfacBacCacDacdacEactactactactactactactactactactactaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCVaCVaCVaacaacaacaacaacaacaacaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaaaaBaaBaaBaaBaaBaaaaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVabjabjabjabjaCVaCVaCVaacaacaacaacaacaacaCVacFacGacfacHacIacIacJacIacKacLacMacMacNacOacMacMacPacQacRacSacTacUacVacWacXacUacUacYacZacpadaactactactactactactactactactactactaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCVaCVaCVaCVaacaacaacaacaacaacaacaacaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaaaaBaaBaaBaaBaaBaaaaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVaCVaCVaacaacaacaacaacaacaacaacaCVacwacxacfadbadcaddaddadeadfadgadhadiadjadkadladladmadnadladoadpadpadqadradpadsacUacYacZacpadaactactactactactactactactactactactaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCVaCVaCVaCVaacaacaacaacaacaacaacaacaacaacaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaBaaBaaBaaBaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaadaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVacwadtacfaduadvadwadxadyadzadAadBadCacfacfacfacfadDadEadFadGadFadFadHadFadFadFadIacVadJacdadKactactactactactactactactactactactaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCVaCVaCVaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVacwadLacfadMadvadNadNadOadNadPadBadQacfacpadRacfadSadTadUadVadWadXadYadZadZadFacfacdacdaaaaaaaaaaaaactactactactactactactactactaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCVaCVaCVaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVacwadLacfaeaadvaebaecaedaebaeeadBaefaegacpaehacfaeiaejaekaelaemaenadYaeoaepadFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCVaCVaCVaacaacaacaCVaCVaCVaCVaCVaacaacaacaacaacaacaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVacwacwacwacwacwacwacwacwacwacwacwacwacwacwacwacwacwacwacwadLacfaeqadvadxaeraesaetaeuadBaevacfaewaexacfaeyadTaezaeoadVaeoaeAaeBaeBadFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCVaCVaCVaacaCVaCVaCVaCVaeCaeCaeCaCVaCVaCVaCVaacaacaacaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaadaadaadaadaadaadaadaadaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVacwadLadLaeDacwaeEaeFadLadLadLadLadLaeFacwaeGaeHaeIaeJaeJaeJaeKaeLaeMaeNaeNaeNaeOaePaeQaeRacfaeSaeTacfaeUaeVaeWaeXaeYaeZafaafbaeBadFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCVaCVaCVaacaacaCVaeCaeCaeCaeCafcafdaeCaeCaeCaCVaacaacaacaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaacaacaacaacaacaacaacaacaCVaCVaCVaCVaCVaCVacwadLadLafeacwaffaffafgadLadLaeFafhafiacwafjafkacwadLadLafeacfaflafmafnafoacUafpafqaefacUafrafrafrafrafrafsafradFadFadFadFadFadFadFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCVaCVaacaacaCVaCVaeCaftafuafvafwafxafuafxaeCaCVaCVaacaacaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaacaacaacaacaacaacaacaacaCVacwacwacwacwacwacwadLadLafeacwaffafgafgadLafyafzafAaeFacwafBafCafDafEadLafFafFafGafGafHafGafIafFafJafKafLafrafMafNafOafPafQafrafRafSafTafUafVafWafXafXafYafYafYafYafYafYafYafYafYafYafYafYafYafYafYafZaaaaaaaaaaadaadaadaadaadaCVaCVaacaacaCVaeCaeCagaagbagcagdagcageagfaeCaeCaCVaacaacaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaadaadaadaadaadaacaacaacaacaacaCVacwaggadLadLadLaghadLadLagiacwafgafgafgagjagjagjagkafiacwacwacwacwagladLafFagmagnagnagoagpagqafFagragsagtafrafMaguagvagwafQafragxagyagzagAagBagCaacaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagDaaaaadaadaadaadaadaCVaCVaCVaCVaacaacaCVaeCafxafxafwaeCaeCaeCagEafxafxaeCaCVaacaacaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaadaadaadaadaadaacaacaacaacaacaCVacwagFadLagGagHacwadLagGagIacwagJadLaeFadLaeFaeFaeFaeFacwagKagLagMagNagOagPagQagRagSagSagTagUagVagWagsagtafragXagYagZahaahbafrahcahdaheagCahfagCaacaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahgaadaadaadaadaCVaCVaCVaCVaCVaacaacaCVaCVaeCahhafxafwaeCahiaeCahjafxahkaeCaCVaCVaacaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaacaacaadaadaadaadaacaacaacaacaacaacaacaacaCVacwafeahlahmahnacwadLacwacwacwacwahoacwacwacwacwacwacwacwahpahqahrahsahtafFahuahvahwahxahyahzafFahAagsagtafrahBahCahDahEahFafragxahGahHahIahJagCaacaadaadahKahKahKahKahKahKahKahKahKahKahKaaaaaaaaaahgaadaadaadaCVaCVaCVaCVaacaacaacaacaCVaeCaeCahLafxahMahNahOahPahQafxahRaeCaeCaCVaacaacaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaacaacaacaadaadaadaacaacaacaacaacaacaacaacaCVacwacwacwacwacwacwadLacwahSahTahUahUahUahVahUahUahUahUahUahWahXahYahYahYahZahZahZahZahZahYahYahYaiaaibaicaidaieaifaigaihaiiafragxalzaijaikailagCaacaacaadahKahKahKahKahKahKahKahKahKahKahKahKaaaaadahgaadaCVaCVaCVaCVaacaacaacaacaacaacaCVaeCaimahPainaioaipaiqairaisainaitaiuaeCaCVaacaacaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaacaacaacaadaadaadaacaacaacaacaacaacaacaacaCVacwadLadLadLadLadLadLadLaivaglaiwaiwaiwaiwaiwaiwaiwaiwaiwaglaivahYaixaiyahZaizaiAaiBahZaiCaiDahYaiEaiFaiGaiHaiIaiJaiKaiLaiMafragxalQaiNagCagCagCaiOaiOaiOahKahKahKahKahKahKahKahKahKahKahKahKaiPaiPaiQaiPaiPaCVaCVaacaacaacaacaacaacaacaCVaeCaeCaiRafxaiSaiTaiTaiTaiUafxaiVaeCaeCaCVaacaacaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaacaacaacaacaacaacaacaacaCVacwadLadLaiWaiWaiWaiWacwaivaglaiwaiXaiXaiXaiXaiYaiXaiXaiwaglaivahYaiZajaahZahZajbahZahZajcajdahYajeagsajfajgajhajiajjajkajlafragxalQajmagCajnajoajpajqaiOahKahKahKahKahKahKahKahKahKahKahKahKaiPajrajsajtaiPaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaeCajuafxajvafxaiTafxajwafxajxaeCaCVaCVaacaacaacaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaacaacaacaacaacaacaacaCVacwadLadLadLajyadLajzacwaivaglaiwajAajBajBajBajBajBajBaiwaglaivahYajCajDajEajFajGajHajIajJajKahYaiaagsagtajLajMajNajOajPajQafrajRalQajSagCajTajUajVajWaiOahKahKahKahKahKahKahKahKahKahKahKahKaiPajXajYajZakaakaakaakaakaakaakaakaakaakaaCVaCVaeCagaafxajvafxakbafxajwafxagfaeCaCVaacaacaacaacaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaacaacaacaacaacaacaacaCVacwacwacwacwacwacwacwacwaivaglaiwakcakdakdakeakdakdakfaiwaglaivahYakgakhakiakhakjakhakkaklakmaknakoakpakqafrafrafrafsafrafrafrakraksakragCaktakuakvaiOaiOahKahKahKahKahKahKahKahKahKahKahKaaaaiPaiPaiPaiQakaakwakxakyakzakAakBakCakDakaaCVaCVaeCaeCakEakFakGakHakIakJakKaeCaeCaCVaacaacaacaacaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaacaacaacaacaacaacaacaacaacaCVacwakLakMakNacwakOakPacwaivaglaiwakQakRakSakTakUakTakVaiwakWakXakYakZalaalbalcaldalcalcalcalealfalgalhalialjalkalkallalkalkalmalnaloalpalqalralsaltaluaiOaaaaaaalvalwalvalxalvalwalvaaaaaaalyaiPasAaiPalAakaalBakBalCakBakBakBakBalDakaaCVaCVaCVaeCaeCalEajvaiTajwalEaeCaeCaCVaCVaacaacaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaacaacaacaacaacaacaacaacaacaCVacwakLahXalFacwalGadLaghaivaglaiwalHalIalJalIalIalKalKaiwaglaivahYalLalMalNalOalPatWalRalSalTahYalUalValWalXalYalZamaambambamcamdameamfamdambamgamaamhaiOamiamiamjamkamjamlamjamkamjamiamiamiaiPammaiPamnakaamoampalCamqamrakBamsamtakaakaaCVaCVaCVaeCaeCamuamvamwaeCaeCaCVaCVaacaacaCVaCVaCVaCVaaaaaaaaOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaadaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVacwamxamyamzacwamAamBacwamCagNamDamEamFamGamHamHamHamHamIamJaivamKamKamKamKamKamKamKamKamKamKamKamLagsamMalvalvamNalvalvamOamOamOamOamPamOamOalvalvamQalvamjamjalvalwalvamRalvalwalvamjamjamjalvalvaiPamnakaakBakBamSamTamTamTamTamTamUakaakaakaamVamVamWamXamYamZanaamVamVaCVaacaacaCVaCVaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadcnwanbanbanbanbanbanbanbanbanbanbanbanbanbanbanbancandacwaneacwacwaivaglaiwanfakdanganhakdanianjaiwankanlamKanmannanoanpanqanransantanuamKanvanwanxalvanyanzanAalvanBanCanDanEanFanGamOanHanIanJanKanKanKanLanKanManNanOanPanQanRanSanTanUalvanVamnakaakBanWanXakBakBakBakBakBanYanZaoaakaamVaobaocaodamYaoeaocaofamVaCVaCVaCVaCVaCVaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadcnwcnwanbaogaohaohaoiaohaohaojanbaaDaomaokazvaolanbaivamzacwacwacwaooaivaglaiwaopakdaoqaorakdakdaosaiwaotaivamKaouaouaovaowanmaouaoxaouaoyamKaiaagsanxalvaozanPaoAamjaoBaoCaoCaoCaoDaoEaoFaoGanPaoHaoIaoIaoIaoIaoIaoJaoKaoLanPanPaoMaoMaoMaoNalvaoOamnakaalBakBakBakBaoPaoQaoPakBakBakBalDakaamVaoRaoSaoTaoUaoVaoWaoXamVaoYaoYaoYaoYaoYaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaacaadaadaadcnwcnwcnwanbaoZapaapaapaapaapbapcapdapeapcapfapcapgaphapiapjahTapkapkapkaplapmaiwapnakdapoappapqaprapsaiwaptamCapuapvapvapwaouapxaouaouaouapyapzapAagsanxalvapBanPapCalvapDapEaoCapFapGapHapIapJapKapLapMapNapNapOapOapOapOapPapOapQapKapKapKapKapRapSamnakaapTapUapVapWaoPapXaoPapYapZaqaaqbakaamVaqcaqdaqeaqfaqgaqhaqiamVaoYaqjaqkaqlaqkaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadaadcnwcnwaonanbaqmapaaqnapaaqnapaapaaqoaqpaqqaqrapaaqsanbaqtaquaqvaqwaqwaqxadLaqyaiwaqzakdapoaqAakdakdaqBaiwaqCaivamKaqDaqEaqFaqGaouaouaqHaqIaqJaqKaqLagsanxalvaqMaqNaqOalvaqPaqQaqRaqSaqTaqUaoFaoGanPanPaqVaqWaqXaqXaqXaqYaqZaraarbarcardarearfargalvarhamnariarjarjarjarjarkarlarmarjarnarnarnaroaroamVamVarparqarramVamVaroaroarsaoYaoYaoYaoYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaacaacaacaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadcnwcnwaonanbartaruarvarvarvarvarvarwarxaryaqrapaarzanbarAarAarAarAarAarBarAarAaiwaiwarCarDarEarFarGaiwaiwarHaivamKarIarJarKaqGarLarMarNarOarPamKarQarRarSalvarTarUarTalvarVarWamOarWarXamOamOaoGanParYarZasaarYanPanPasbalvalvalvascasdalvalvalvalvaseasfariasgashasiasjaskaslasmasnasoaspasqaroasrassamVastasuasvamVaswasxaroasyaszaviasBasCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaacaacaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadcnwcnwaonanbasDasEasEasEapaasGasHanbasIasJasKapcasLanbasMasNasOasPasQasRasSasTasUasVasWasWasXasWasYasZasZasZataasZasZasZasZasZasZasZasZasZasZasZatbatcatdalvateatfanPatgathatiatjatkatlatmatnatoanPanPaqVatpatqanPanPatralvatsattatuatvatwatxatyalvatzatAatBatCatDatEatFatEatGatEatHatIatJatKaroatLatMatNatOatPatQatRatSatTaroatUasyatVaysaoYamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadcnwasFanbanbanbanbanbatXatYatXanbanbatZasJauaapaasKaubaucaudasQasQasQasQasQasQasQasQaueasQaufasQaugasZauhauiaujaukaulaumaunauoaupauqaurausautauuauvatcauwamjavEatfanPauxathauyauzauAauBauCauDauDauDauEauFauGauEauDauHauIauJauKauLauMauNauOatsatyalvauPauQariauRauSauTasjauUauVauWasnauXauYauZaroavaavbaroavcavdavearoavfavfaroavgavhaOqavjaoYalyamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaadaadcnwcnwavlavmavnavoavpavqavqavqavravoaqpasJapaapaaqravsavtasQavuavvavvavvavvavvavvavvavwavvavxasQavyavzavAavBavCavDavDavDavDaxtavFavGavGavGavGauuavHavIavJavKaqXavLaqXavLavMaqXavNavOaqXaqXaqXaqXaqXaqXavPavQanPanPanPavRalvavSatsavTavUatsavValvalvalvavWariariavXariariavXavYavZariavXariariaroaroaroaroawaawbawcaroaroaroaroawdaweawfawgaoYamialyamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaadaadcnwcnwawhaqpaqsawiapaapaapaaycarvawjarxawkawlapaaqravoavtasQawmawnawnawnawnawnawnawnawnawnawoasQavyawpavAavBawqavGawrawrawsawrawtavGawuawvawvawwawxatcauwawyanPanPanPanPawzanPauzawAawBawCanPawDanPawEawFapKapKawGawHawIalvavVatsavTawJatsatsalvawKawLawMawNawOawPawOawQawRawSawTawUawPawOawVawOawWawOawXawYawZaxaaxbawWaxcaxdaxeaxfaxfaxfaxfaaaaxgaxgaxgaxgaxgaxhaxgaxgaxgaxgamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadaadcnwcnwavlaxiaxjavoaxkaxlaxmaxnaxoavoaqpapaaxpapaaxqanbaxrasQawmawnaxsaxsaxsaxsaacaxsaxsawnawoasQavyavzaxuavBavGavGavGavGaBLavGavBavGavGaBLaxvauuauvatcauwamjavEaxwapKapKaxxapKaxyaxzaxzaxzaxzaxAaxzaxBaxCaxDaxEalvamNalvalvaxFaxGaxHaxIavVaxJalvaxKaxLaxMaxNaxOaxOaxOaxOaxOaxPaxQaxOaxRaxSaxOaxOaxTaxOaxOaxOaxUaxVaxQaxWaxXaxYaxZaxfayaaybaxfaaaaaaaaaamiaaaaaaaaaaaaamiaaaaaaaaaaaaaaaaxgamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadcnwaydanbanbanbanbanbanbanbanbanbanbazoayeayfayeaygayhayiayjaykawnaxsaxsaacaxsaxsaxsaxsawnawoaylaymaynayoaypavGavGayqayrbdYaytayuavGavGavGayvaywayxayyayzalvayAanPanPayBayCayDauJayEayFayGayHayIayJayKayHayGayHayLayMayNauJauLayOayPayQayRayRauJaySayTayUayVayWayWayWayWayWayXayYayWayZayWayWazaazbayWazcayWazdazeazfazgazhaziazjaxfazkazlazmazmazmaznaznaznaznazmazmazmazmazmazmazmamiaxgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadcnwavkazwaBNaBmaAfaBnaAfaAfaBnapaaBoapaapbazxapcazyanbazzasQazAawnaxsaxsawnawnawnawnawnawnawoasQazBasZazCazDazDawpazDazDasZazDazEawpazDazDazDasZauvatcazFalvazGamjazHazIazJalvalvalvalvalvalvalvalvalvalvalvalvalvamNalvalvalvalvalvalvalvalvalvazKazgazLazMazMazMazMazMazMazMazMazMazMazMazMazMazNazMazMazMazNazMazOazgazPaxdazQazRazSazTazmazUazVazWazXazYazZaAaaAbazmaAcaAdaAeazmaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadcnwcnwazuazuaBqanbanbanbanbaAhaBpapaapaapaaAiarvaAjaAkaAlaAmaAnawnaxsaacawnaAoaApaApaApaApaAqaAraAsaAtaAuaAvaAvaAvaAvaAvaAwaAvaAxaAvaAvaAvaAvaAyaAzaAAaABaACaADaAEaAEaAFaAGaAHaAIaAIaAIaAIaAIaAIaAIaAIaAJaAIaAKaALaAMaAIaAIaANaAIaAIaAIaAOaAIaAPaAQaARaASazMaATaAUazMaATaAUazMaATaAUazMaATaAUazMaAVaAWaAWaAXaAYazMaAZaBaaBbaBcaBdaBeaBfaCWazmaBhaBhaBhaBiaBjaBhaBhaBkazmazmazmaBlazmaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadcnwavkazwazpazpazqazrazsaztavoaCcaBpapaapaaMSaLBaBravoavtasQazAawnaxsaxsawnaBsaBtaBuaBuaBuaBvaBuaBuaBwaBxaByaBzaBzaBzaBzaBzaBzaBAaBzaBzaBzaBzaBBaBCaBDaBEaBzaBzaBzaBzaBzaBAaBzaBzaBzaBzaBzaBFaByaBzaBzaBzaBzaBzaBzaBAaBzaBzaBzaBzaBzaBzaByaBzaBGaBHaBIaBJazMaBKaBOazMaBMaBPazMaBMaEcazMaBMaEwazMaBQaAXaAXaAXaBRazMazOaBSaBTaxdazlaxfaxfaxfazmaBhaBhaBhaBVaBWaBXaBYaBhaBZaBhaCaaBhazmaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadcnwcnwaMTcnwanbanbanbanbaAgaMUaCbaMVapaapaapaapaaCdavoavtasQazAawnaacaxsawnaBsaCeaCfaCgaChaCiaCjaCkaClaCmaCnaCoaCoaCoaCpaCqaCqaCraCoaCoaCoaCsaCtaCuaCnaCoaCoaCoaCoaCvaCoaCwaCoaCoaCoaCxaCyaCzaCnaCoaCoaCoaCAaCqaCqaCBaCoaCCaCDaCAaCqaCEaCFaCGaCHaCIazgaCJazMaCKaCLazMaCMaCLazMaCNaCLazMaCOaCLazMaCPaAXaAXaAXaBQazMaCQaCRaCSaCTaCUaxfaGtaEaazmaCXaCYaCZaBhaDaaDbaDcaDdazmaDeaBhaBhazmaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaadaadcnwcnwcnwcnwcnwcnwcnwanbaDfaDgazqazsaDhaDiaDjapaaDkanbaDlaDmaAnawnaacaacawnaBsaCeaDnaDoaDoaDpaDqaDpaDoaDraDoaDsaDsaDtaDsaDuaDvaDsaDsaDsaDsaDsaDsaDsaDsaDsaDsaDsaDsaDsaDsaDsaDsaDsaDsaDsaDsaDwaDsaDsaDsaDsaDsaDxaDxaDyaDzaDAaDzaDBaDCaDDaDCaDBaDBaDEaDFaBJazMaDGaDHaDIaDJaDKaDLaDMaDNaDOaDPaDHaDQaDRaDSaDSaDSaDTazMaDUaDVaDWaxdaDXaDYaDZaFgazmaEbaEVaEdaEeaEfaDbaDcaEgazmaEhaEiaEjazmamiaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaadaEkaEkaEkaElaEmaEnaEkaEkanbanbanbanbanbanbanbanbanbanbaEoasQazAawnawnawnawnaBsaEpaEqaEraEsaEtaEuaEtaEvaEXaDoaExaEyaEzaDsaDsaDsaDsaEAaEzaEzaEzaEzaExaEBaECaExaEzaEzaEzaEzaEzaEzaEzaEDaEEaEEaEFaEzaEzaEzaEGaDsaDsaDsaDyaEHaEIaEJaDBaEKaELaEMaENaEOaEPaEQaERaESaETaDHaEUaETaDHaEWaEUaDHaETaEYaEZaEYaEUaETaEYaETaEUaFaaFbaFcaBTaxdaFdaFeaFfaGuazmaFhaBhaFiaFjaFkaFlaFmaFnaFoaFpaFqaFrazmaaaaxhamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaadaEkaFsaFtaFuaFvaFwaFxaFyaFzaFzaFzaFzaFzaFzaFzaFzaFzaFAaEoasQaFBaFCaFCaFCaFCaFDaFEaFFaDoaFGaFHaFIaFJaFKaFLaFMaEzaEzaEzaEzaEzaEzaEzaFNaFOaFOaFOaFPaEzaEzaEzaFNaFOaFOaFOaFQaFRaFSaFNaFOaFOaFOaFTaEEaEEaEEaEEaEEaEEaFUaFVaFWaFXaFYaDBaFZaGaaEMaEMaDCaGbaGcaGdaGeaGfaGgaGfaGfaGgaGgaGfaGiaGfaGkaGgaGhaGmaGfaGnaGfaGfaGoaGpaGqaGraxdaGsaxfaxfaHxazmaGvaGwaGxaGyaGzaGAaGBaGCaGDaGEaGjaGGazmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaadaadaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaEkaGHaGIaGIaGIaGJaGKaGLaGMaGNaGNaGNaGNaGNaGNaGNaGLarAaGOaBuaBuaBuaBuaBuaBuaGPaGQaDnaDoaDoaFMaDoaGRaGSaGTaDoaDsaDsaDsaDsaDsaDsaDsaDsaGUaGUaGUaDsaDsaDsaDsaDsaGUaGUaGUaDsaDsaDsaDsaGUaGUaGUaDsaDsaDsaDsaDsaDsaDsaDsaDyaGVaGWaGlaGYaGZaHaaHaaHbaHcaHdaHeaBJazMaHfaHgaHhaHiaHjaHkaHlaHmaHnaHoaHkaHpaHqaHkaHraHsaHkaHtaHuaHvaHwaxdaHAaHyaImaImazmazmazmazmazmazmaUeaInaHzaUeaUeaUeaUeaUeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaadaadaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaEkaHBaHCaHDaGIaGJaHEaGLaHFaHGaHHaHIaHJaHGaHKaHLaHMaEoaEoaHNaHOaHPaHQaHRaHNaHSaCeaDnaHTaHUaHUaDoaHVaGSaHWaHXaHYaHZaIaaIbaIaalyaaaaaaamiamiaaaaaaaaaaaaamiaaaaaaaaaamiaaaamiamiamiamiamiamiaaaaaaaaaaaaaaaaaaamiamiaIcaIdaIdaIeaDBaIfaEMaIgaIhaDCaIiazgaBJazMazMazMazMazMazMazMazMazMazMazNaIjaCLazMazMaIkazMazMazMazOaHvaBTaxdaIlaIoaImaGFaIraIqaItaGXaIvaIuaUbaIwaVEaJsaJuaJtaIxaIyaIyaIzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaadaadaCVaCVaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaEkaIAaIBaICaGIaGJaIDaIEaIFaHKaHKaHKaHKaHKaIGaGNaIHaIHaIHaIHaIHaIHaIHaIHaIHaIIaIJaIKaHTaILaIMaDoaINaGSaFHaDoaIOaIPaDoaDoaDoamiaaaaaaamiaaaaaaaaaaaaaaaamiaaaaaaaaaaIQaaaaaaaaaaaaamiamiaaaaaaaaaaaaaaaaaaaaaaIRaISaITaIUaIVaIWaDBaIXaIYaIZaJaaDBaJbazgaBJaxdaJcaJdaJeazMaJfaJgaJhaJiazMaJjaJkaJlazMaJmaJnazMaJoazMaJpaJqaJraxdaNcaJvaImaJwaJyaIpaItaJzaKAaIsaUbaKBaKDaKCaKFaKEaJBaJCaJDaJEaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaadaadaCVaCVaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaadaEkaJFaJGaJHaJIaJJaJKaJLaJMaJNaJOaJOaJOaJPaJQaGNaJRaJSaJTaJUaJVaJWaJWaJXaIHaJYaJZaKaaHTaKbaHUaDoaKcaKdaKeaDoaDoaDoaDoamiamiamiaaaaaaamiamiamiamiamiamiaKfamiamiamiamiaaaaaaaaaaaaamiamiaaaaaaaaaaaaaaaaaaaIRaKgaKhaKiaKiaKiaKiaKiaKiaKiaKjaKkaKjaxKazgaBJaxdaKlaKmaKnazMaKoaKpaKqaKrazMaKsaKtaJxazMaKvaKwaKxaKyazMazOaHvaBTaxdazlaKzaImaKGaLFaLEaItaLGaLIaLHaUbaLJaNdaLKaUbaNeaKHaIyaIyaKIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaKJaKKaKLaCVaCVaacaacaacaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaacaacaacaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaCVaKMaKMaKMaKMaKMaKMaKMaKMaKMaKMaKMaKMaEkaFyaFyaFyaFyaFyaFyaGLaKNaKOaKPaKQaKRaKSaKTaGNaKUaKVaKWaKWaKWaKXaKWaKYaKZaLaaJZaLbaHTaKbaLcaHTaLdaLeamiamiamiamiaaaaaaaaaaaaaaaaaaamiaaaaaaaaaaaaaaaamiaaaaaaaaaaLfaLgaLhaLiaLhaLhaLhaLiaLjaLjaLjaLkaLjaLlaKhaaaaLmaLnaLoaLpaLqaLraLsaLtaLuaLvaLwazgaBJaxdaLxaLyaLxazMazMaLzaLAazMazMazMazMazMazMazMazNazMazMazMazOaLCaLDaxdaNcaNfaImaNgaNiaNhaItaItaNkaNjaUbaNlaNnaNmaUbaNoaUbaUbaUbamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaLLaLMaLNaCVaCVaCVaCVaCVaCVaacaaeaaeaaeaaeaaeaaeaaeaacaacaacaacaacaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaCVaKMaLOaLPaLQaLRaLSaLTaLUaLVaLWaLXaLYaLZaGLaMaaMbaMcaMdaMeaMfaMgaMhaMiaMjaMiaMkaMlaGNaMmaKWaKWaKWaMnaMoaMpaMqaIHaMraMsaMtaMuaMvaMwaHTaMxaMyaaaamiamiamiaaaaaaaaaaaaaaaaaaamiaaaaaaaaaaaaaaaamiaaaaaaaIRaMzaKhaaaaaaaaaamiamialyamiaaaaaaaaaaaaaaaaaaamiaKiaMAaMBaMCaMDaMDaMEaMFaMGaMHaMIaMJaMKaMLaMMaMNaMOaMOaMOaMPaMQaMRaMXaMWaOoaMYaPFbhaaPHaPGaPJaPIaMZaNaaNbaxdaNpaPKaUeaNqaOsaNraOuaOtaOwaOvaOyaOxaOzaVFaUbaOAaOCaOBaOCalyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaNsaNtaNuaKLaNvaNvaNvaNvaNvaCVaacaaeaaeaaeaacaacaacaacaacaacaacaacaNwaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaCVaKMaLRaLRaNxaLRaNyaNzaNAaNBaNCaNzaNDaNEaGLaNFaNGaNHaNGaNIaIEaNJaNKaHKaNLaHKaNMaJPaGNaNNaNOaNPaNQaNRaNSaNTaNUaIHaJYaJZaKaaHTaKbaHUaHTaaaaNVaaaaIRaLgaLhaLiaLjaLjaLjaLkaLjaLhaLjaLkaLjaLjaLjaLiaLjaLjaLlaNWaaaaNXaNXaNXaNXaNXaNXaNXaNYaNYaNZaNZaNZaNZaNYaNYaOaaObaOcaOdaOeaKiaOfaOgaKjaOhazgaBJaxdaOiaOjaLxaOkaOkaPLaOlaOmaOnaPMaReaRfaRgaRgaRgaRgaRiaOnazOaHvaOraxdaPQaKzaUeaPRaPTaPSaPVaPUaPXaPWaPYbmFaKDaPZaRlaRlaRlaRlaRmalyalyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaODaOEaLMaOFaOGaNvaOHaOIaOJaNvaCVaacaacaacaacaacaacaacaacaacaacaxsaOKaxsaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaKMaOLaOMaLQaLRaONaOOaOPaOQaORaOSaOTaOUaGLaOVaOVaOVaOVaOVaGLaOWaOXaOYaOZaPaaPbaPcaGNaPdaPeaPdaPdaPdaPdaPdaPdaPfaPgaJZaKaaHTaPhaHUaHTaaaaNVaaaaPiaKhamiamiamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamiaaaaaaaaaamiaaaaNXaPjaPkaPkaPlaPmaPnaNYaPoaPpaPqaPraPsaPtaNYaPuaPvaPvaPvaPvaKiaPwaPwaKjaPxazgaBJaxdaPyaPzaPAaPBaPCaPDaPEaPNaSEaRdaSGaSFaSGaSGaSGaSGaRiaOnaPOaHvaPPaxdaNcaRnaRpaRoaRraRqaRtaRsaSMaSLaUbaSNaOzaSOaSQaSPaTXaSRaRmamiaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaKLaQaaQbaQcaQdaQeaQfaQgaNvaCVaacaacaacaacaacaacaxsaxsaxsaQhaQhaxsaQiaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaKMaQjaQkaQlaLRaLRaLRaLRaLRaLRaLRaQmaQnaLRaQoaQpaQpaQpaQqaQraQsaQtaQuaQvaQwaQuaQxaQyaQzaQAaQBaQCaQDaQEaQFaQGaQHaQIaQJaQKaHTaHTaHUaHTaaaaQLaaaaQLaaaaaaamiamiamiaaaaaaaaaaxhaxhaxhaxhaxhaxhaxhaxhaxhaxhaxhaaaaNXaQMaQMaQMaQNaQNaQNaNYaQOaQPaQQaQRaQSaQTaQUaPuaQVaQWaQXaQYaKiaaaaaaaxdaQZazgaRaaxdaRbaRcaLxaOmaOkaOkaOkaOmaOnaSHaRhaRfaRgaRgaRgaRhaRiaRjaRkaHvaOraxdazlaKzaRpaTYaUaaTZaRtbJycyJcyIaUbcyKcyMcyLcyOcyNcyNcyPcyQamiaxhaaaaaaaaaaaaaaOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaKLaRuaRvaRwaNvaRxaRyaRzaRAaxsaxsaacaacaacaQhaxsaxsaacaacaacaacaRBaRCaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaKMaKMaRDaREaREaRFaRGaLRaRHaRIaRJaLRaRKaRLaLRaRMaRNaROaRPaRQaRRaRSaOXaRTaRUaPaaRVaRWaRXaRYaRZaSaaSbaScaSdaSeaSfaSgaShaJZaSiaSjaHTaHUaHTaaaaNVaaaaNVaaaaaaaaaamiamiamiaaaaaaamiaaaaaaaaaaaaamiaaaaaaaaaaaaamiaaaaNXaSkaSkaSkaQNaQNaSlaNYaSmaSnaSoaSpaSqaSraSsaStaSuaSvaSuaSwaKiaaaaaaaxdaSxaSyaBJaxdaSzaSAaLxaOmaSBaSCaSBaSDaSBaTPaSGaSFaVqaTRaTRaTRaVraSIaSJaHvaOraSKaNccyRaRpaJAaUacyTaRtaKucyJcyVaUbcyWaVEcyXaRlcyYbcsbcqaRmaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaNvaNvaNvaNvaSSaNvaSTaSUaSVaSWaSXaSYaxsaQhaxsaxsaacaacaacaacaacaacaacaacaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaSZaTaaREaREaREaREaREaTbaTcaTdaTeaTfaTeaTgaLRaThaTiaTjaTiaTkaTlaTmaTnaToaTnaMdaToaTpaTqaTraTsaTtaPdaPfaPfaPfaTuaSgaShaJZaSiaTvaHTaHUaHTamiaNVaaaaNVaaaaaaaaaamiamiaNXaNXaNXaNXaTwaTwaTwaNXaTxaNXaTwaTwaTwaNXaNXaNXaNXaNXaNXaNXaTyaNXaNYaTzaTAaTBaTCaTDaTEaNYaTFaTGaTHaQVaPvaKiamiamiaxdaTIazgaTJaTKaTKaTKaTKaTLaSBaTMaTNaTOaSBaVsaTQaVtaVuaRgaRgaTSaTTaTUaTVaGqaTWaxdazlczbaRpczcczebdPaRtczfczhbdRaUbaUbaUcaUdaRlaRlaRmaRmaRmaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaNvaNvaUfaUgaNvaUhaNvaNvaNvaNvaNvaCVaxsaxsaacaacaacaacaacaacaacaacaacaacaacaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaxsaxsaUiaUjaUkaUlaUmaUnaUoaORaUpaUqaUraORaUsaUtaLRaLRaLRaLRaLRaLRaLRaUuaUvaUwaUxaUxaUyaUzaUAaUBaUCaSaaUDaUEaUFaUGaUHaUIaUJaUKaULaHTaHTaUMaHTaKfaUNamiaUNamiamiaNXaNXaNXaNXaUOaUPaUQaURaURaURaUSaUTaUUaURaURaURaUVaUWaUXaUYaUZaVaaVbaVcaVdaNYaNYaVeaVfaVgaVhaNYaNYaPvaPvaViaPvaPvaKialyalyaxdaxKazgaBJaVjaVkaVlaVmaVnaSBaVoaVpaTOaSBaVAaWRaVBaWXaWWaWWaVvaVwaOnaVxaHvaVyaUbaWZaWYaUeaUbaUbaUbaUbaUbaUbaUbaUbaVDaVEaVFaVGaVHaVIaaaaaaaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaVJaVKaRvaVLaNvaVMaVNaVOaVPaNvaCVaacaacaacaacaacaacaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaVQaxsaxsaUiaUjaVRaVSaVTaREaVUaLRaLRaLRaLRaLRaVVaVWaVXaVYaVZaLRaWaaWbaLRaLRaWcaWcaWdaWcaWcaWcaWeaWfaWgaSaaSbaScaWhaWiaSfaSgaShaJZaKaaHTaWjaWkaWlamiaQLaaaaQLaaaaaaaWmaWnaWmaWoaWpaWqbgmaWsbgoaWtaWraWraWraWtaWtaWtaWraWuaWvaWwaWvaWxaWyaWzaWAaWBaWCaWDaWEaWFaWGaWHaNXaKiaKiaKiaKiaKiaKiaWIaWIaWvaxKazgaBJaTKaWJaWKaWLaWMaWNaWOaWPaWQaSBaXaaXbaRfaVuaRgaRgaWSaWTaOnaWUaHvaWVaUbaYzaXcaUebbBaYFaYEbbBaUbaYHaYGaUbaXdaXeaVFaXfaXgaVIamiamiamiaxgalyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaXhaXiaXjaXkaXlaXmaNvaXnaXoaNvaCVaacaacaacaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaxsaxsaUiaXpaVRaXqaXraUlaXsaLRaXtaXuaXvaORaXwaXxaXyaXzaTdaXAaXBaXCaXDaXEaXFaXFaXFaXFaXFaXFaXGaXHaXIaXJaPdaPfaPfaXKaTuaXLaShaJZaXMaHTaHUaWkaWlaaaaNVaaaaNVaaaaaaaNXaXNaNXaXOaUPaXPaXQaXRaXRaXRaXRaXRaXRaXRaXRaXRaXSaXTaWvaWvaXUaXVaXWaXXaXYaXYaXZaYaaYbaYcaYdaYeaYfaNXaYgaYhaYiaYjaYkaYlaYmaWvaYnaYoaYpaTKaYqaYraYsaYtaSBaYuaYwaYxaYyaYIaYJaRfaVuaRgaRgaRhaYAaOnaYBaYCaYDaYKaYMaYLbadaYNbajbaeaYNbakbambalaYOaYPaYQaYRaYSaYTaVIaaaaaaaaaaxgamiamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaYUaLMaLMaYVaNvaYWaNvaNvaNvaNvaCVaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaxsaxsaYXaYYaYZaUjaZaaUjaUjaZbaZcaZdaZdaZeaZfaZgaZhaZiaUjaZjaUjaZkaZlaZmaQDaQDaQDaZnaQDaQDaZoaZpaZqaZraZsaQDaZtaZuaZvaQHaQIaQJaZwaHTaHUaWkaWlaaaaNVaaaaNVaxhamiaNXaNXaNXaZxaUPaXPaZyaZzaZAaZAaZAaZAaZzaZAaZAaUPaXPaZBaZCaWvaZDaZEaWyaZFaZGaZHaZIaZJaZKaZLaZMaZNaZOaNXaZPaZQaZRaWvaZSaQNaQNaWvaZTaZUaZVaZWaZXaZYaZZbaaaSBbabbacaYvaSBbanbapbaobaqbafbafbafbagaOnbahaHvbaibarbbBbasbcObbWberbdFbesaOxbhpbetbatbaubavbawbaxbayaVIaVIaVIaaaaxgamialyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamibazaNvaNvaNvaKLaNvaCVaCVaCVaCVaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbaAaxsaUiaUjbaBaREaREaREbaCaLRbaDbaEbaFaLRbaGbaHbaIbaJaUnbaKbaLbaMbaNbaOaUEaUEaUEaUEaUEaUEaUEbaPbaQaSaaSbaScbaRaSeaSfbaSbaTaJZaKaaHTbaUbaVaHTaaaaNVaaaaNVaxhaaaamiamiaTxbaWbaXbaYbaZaZAbbabbabbaaZAbbabbabbaaZAaXPbbbaWvaWvaWvaWvbbcaWvaWvaWvbbdbbebbfbbgbbhbbibbjaNXbbkbblbbmaWvbbnbbobbobbpbbqbbrbbsaTKaTKbbtaTKaTKaSBaSBaSBbbuaSBaOnaOnaOpaOnbbvbbwaOnaOnaOnazOaHvbbxblpblpaVCaVCbbyaVzaVzaVzaVzaVzaVzaUbbbzbbAbawbbBbbCbbDbbEaVIamiaxgamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCVaCVaCVaCVaCVaCVaacaacaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbbFaxsaUibbGbbHbbIbbJbbKbbLaLRaLRaLRaLRaLRbbMbbNbbObbPbbQaLRbbRbbSaLRbbTbbUbbVblqbbXbbYbbZbcabcbbccbcdaPdaPfaPfaPfaTuaPdbcebcfbcgaHTbchaHUaHTaaaaQLaaaaQLaxhaaaaaaamibcibcjbckbclbcmaZAbbaaZAaZAaZAaZAaZAbbabcnaXPbcobcpaQNaQNbihbcrbctbcuaWvaWvbcvaWybcwbcxbcybczaNXbcAaWvaWvaWvbcBbcCaWvaWvbcDbcEbcFbcGbcHbcIbcJbcKbcLbcMaSBblrbcPbcQbcRbcSbcTbcPbcPbcUbcVaSBazOaHvbaibcWaHvbcXbcYbcZbdabdbbdcbddbdebdfaUbbdgbdhbdibdjbdkbdlbdmaVIaaaaxgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCVaCVaacaacaacaacaacaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaxsaxsaUibdnbdobdpbdqbdrbdsaLRbdtbduaXvaORbdvbdwbdxbdxbdxbdxbdxbdxbdxbdxbdxbdybdybdzbdzbdzbdAbdBbdCbdDbdEblsbdGbdHbdIbdJbdKbdLbdMaHTbchaHUaHTaaaaNVaaaaNVaxhaaaaaaamibcibcjbckbclbcmaZAbbabdNaUPaUPaUPaZAbbaaZAaXPbcobdObijbdQbmWbdSaZLbdTbdUaWvbdVbdWbdXbmlbdZbeabebbecbedbeebefbegbehbeibejbekayTbelbembenbeobepbcNbcNbeqbltbeubeubeubeubevbeubeubeubeubeubewbexaHvbaibeybezbeAbeBbeCbeDbeDbeEbeFbeGbeDaUbbeHbeIbeJbeKbbBbeLbeMaVIaaaaxgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaxsaxsaSZbeNaREbeObePbeQaTdbeRbeSaTdaTdbeTaTebeUbdxbeVbeVbeWbeXbeYbeZbfabdxbfbbfcbfdbfebffbfgbfhbfibfjbfkbflbfmbfmbfnbfobfpbfqbfraHTaHUaUMaHTamiaUNamiaUNbfsamiamiaKfaNXbftbfubfvbfwaZzaZAaZAaUPbfxaUPaZAaZAaZzaXPbcobdOaQNbfzbfAbfBbfCaZKbfDbfEbfFbfGbfHbfIbfJbfKbfLbfMbfNbfObfPbfQbfObfRbfMbfSbfTbfUbembenbcNbfVbfWbfXbcNbfYbcPbcPbcPbfZbgabgbbcPbcPbgcbgdaSBbgeaLCbgfbggbghbcXbgibgjbeDbgkbeDbeGbglbvlbgnbvWbgpbgqbgrbgsbgtbguaVIamiaxgaaaaaaaaaaaaaaaaaOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaxsaKMaKMbgvbgwbgxbgybgzaLRbaDbaEbaFaLRbgAbgBbdxbgCbgDbgDbgDbgDbgDbgDbgEbgFbgGbgHbgIbgJbgKbgLbgMbgNbgObgPbgQbgQbgRbgSbgTaQJaZwaHTaHUaWkaWlaaaaNVaaaaUNaxhaaaaaaamibcibcjbckbclbcmaZAbbaaZAaUPaUPaUPaZAbbaaZAaXPbcobdOaQNbgUbfyaWyaWybgVbgWaWvbgXbgYbgZbtbbhbbhcbhdbhebhfbhgbhhbhibhjbhkbhlbhmazgbfUbembenbhnbhobenbhnbhqaSBbcPbhrbhsbhtbhubhvbhwbeubhxbhybhzbhAaGqbgfbeybhBaVCbhCbhDbhEbeDbhFbhGbeGbhHaUbbhIbhJbhKbhLbbBbeLbhMaVIaaaaxgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaadaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaKMaKMaKMaKMaKMaKMaLRaLRaLRaLRaLRbhNbhObdxbhPbgDbgDbhQbhRbhSbhSbhTbhUbhVbhWbhXbhYbhZaTrbiabibaPdbicbidbicaTuaPdbfpaJZaKaaHTaHUaWkaWlaaaaQLaaaaQLaxhaaaaaaamibcibiebckbclbcmaZAbbaaZAaZAaZAaZAaZAbbaaZAaXPbifbigaQNaQNbxTbiibikbilaWvaWvbimbinbiobipbiqbiraNXbisaWvaWvbitbiubivaWvaWvbiwazgbfUbcNbcNbcNbixbembembiyaSBaSBaSBbizbizbiAaSBaSBbcPbcPbiBaSBbiCaYCbiDbiEbiFbiGbiHbhDbiIbiJbiKbiLbiMbiNaUbbiObiPbiQbiRbiSbiTbiUaVIaaaaxgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaxsaxsaxsaxsbiVbiWbiXbiYbiZbjabjbaLRbjcbjdbdxbjebgDbgDbjfbjgbgDbgDbjhbjibjjbjkbjlbjmbjnbjobjpbjqbjraQDbjsaQDbjtbjubjvaJZaKaaHTaHUaWkaWlaaaaNVaaaaNVaxhaaaamiamiaTxbjwbjxbjybcmaZAbbabbabbaaZAbbabbabjzaZAaXPbbbaWvaWvaWvaWvbjAaWvaWvaWvbjBbjCbinbjDbjEbjFbjGaWvbjHaWvbjIbjJbjKbjLbjMbjNbjOazgbfUbcNbjPbjQbjRbjSbjSbjSbjSbjTbjUbjVbjWbjXbjYaSBbjZbkabkbaSBbkcbkdbkeblpblpaVCaVCbkfaVzaVzaVzaVzaVzaVzaUbbkgbkhbawbbBbkibkjbkkaVIamiaxgamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaxsaxsaxsaacaxsaxsaxsaxsaxsaxsaxsaxsaxsaxsbklbkmbknbkoaUjbkpbkqbkrbksbktbdxbkubkvbkwbkxbkxbkxbkxbkybkzbkAbkBbkCbkDbkEbkFbdCbkGbkHbkIbkJbkKbkLaSgaShaJZbkMaHTbkNbaVaHTaaaaNVaaaaNVaxhamiaNXaNXaNXaUPaUPaXPbfwaUPaZAbbaaZzaZAaZAaZAaZAaZzaXPaZBaZCaWvaZDbkObkPbkQbkRbkSbkTaZLbkUbkVbkWbkXbkYaWvbkZaWvblablbaWyblcbldbjNbleaSybfUbcNblfblgbfVbcNbcNblhblibljbcNbcNbcNbcNbcNblkbcNbcNbcNbllblmblnblobataOxaOxbmxblubmzbmyaOxaOxbmAbetbatblvblwbawblxblyaVIaVIaVIaaaaxgamiamialyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaxsaxsaxsaxsaxsaxsaxsaxsaxsaxsaxsaxsaxsaxsblzblAblBblCblDaTcblEaLWblFblGbdxblHblIblJblJblJblKblLbdxblMblNblOblPblQblRbfhaWgblSaPdaPfaPfaPfaTuaXLaShblTblUaHTblVaHUaHTaaaaNVaaaaNVaaaaaaaNXblWaNXblXaUPaXPblYblZbmablZblZblZblZblZblZblZbmbaXTaWvaWvaXUbmcbmdbmebmfbmgbmgbmgbmhbmibmjbmkbALaNXbmmaWvbmnbmobmpbmpbmqbjNbjOazgbfUbcNbmrbmrbjRbmsbcNbcNbcNbcNbmtbmubmubmubmubmubmvbjPbjPbcNblmbmwbaibarbbBbbBbmBbbBbmCbmFbmFbnubnwbnvbmDbmEbmFbmGbmHbmIaVIaaaaaaaaaaxgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaxsaxsaxsaxsaacaxsaxsaxsaxsaxsaxsaxsaxsbmJaKMaKMaKMaKMbmKbmLbmMaLRaLRbmNbdxbdxbdxbdxbdxbdxbdxbdxbdxbdybdybdybdybdybdybmOaWgaSabmPaUEbmQaUGaUHaUIaUJbmRbmSaHTaHUaHUaHTaaaaQLaaaaQLaaaaaaaWmbmTaWmbmUaUPbmVbyCbmXbyKbmYbmZbmZbmZbmYbmYbmYbnabnbaWvbncaWvaWxbndbnebnfbngbnhbnibnjbnkaNXaNXaNXaNXbmmaWvaWvaWIaWIaWIaWvaWvbnlazgbfUbcNbcNbcNbfVbcNbcNbnmbnnbnobcNbnmbnpbljbcNbcNbnqbnrbnsbnoblmbmwbntaUbbnxaYHaUebbBbppboubbBaUbbbBbpqaUebnybbBbawbnzbnAaVIamiamiamiaxgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaxsaxsaxsaxsaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVaKMbnBbnCbnDaLRaREaREbnEbnFbnGbnHbnIbnIbnIbnJbnGbnKbnLbnMbnNbnOaPfbnPaWgaSaaSbaScbnQaWibnRaSgbnSbnTaLbaHTaHUaUMaHTaKfaUNamiaUNamiamiaNXaNXaNXaNXaUOaUPbnUbnVbnVbnWbnXbnYbnZbnVbnVbnVboabobbocbodboebofbogbohboiaWvbojaWvbokaWvaNXalyamiamiamiamiamiaaaaaaamiamiaxdbolazgbfUbcNbjQbjPbfVbcNbombonbonbonbonbonbonbonboobcNbnqbopboqbljborbosbotaUbaUbaUbaUbaUbaUbaUbaUbaUbaUbbqVaUebovbowbawboxboyaVIaaaaaaaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaxsaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaKMbozboAboBaLRboCboDboEboFbnGboGboHboIboJboKboLboMboNaUEaUEboNboOboPbiaboQaPdaPfaPfaXKaTuaSgaShaJZaKaaHTaHUaWkaWlamiaNVaaaaNVaaaaaaaaaamiamiaNXaNXaNXaNXboRboRboRaNXaTxaNXboRboRboRaNXaNXaNXaWvaWvboSboTboUboVaWvaQNboWboXboXboYaaaaaaalyamiamiaaaaaaaaaaaaamiaxdboZazgbfUbcNbpabnnbjRbjSbpbbpcbpdbpeaYsbpfbpgbphbpibmubpjbpkbplbnoblmaHvaOrbpmbpnbpnbpnbpnbpnbpnbpnbpobsCbqWaUebpraUebpsaUeaUeaUeaUbaUbaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaKMaKMaKMaKMaKMaKMaKMaKMaKMbnGbptbpubpvbpwbpxbpybpzbpAbfmbpBbpCbpDbpEbpFaZrbpGaQDbpHaZuaZvaQHaQIaQJaZwaHTaHUaWkaWlaaaaNVaaaaNVaaaaaaaaaamiamiamiaaaaaaamiaaaaaaaaaaaaamiaaaaaaaaaaaaamiaaaaNXbpIbpJbpKbpLbpMbpNaWvbpObpPbpQbpRbpSaaaaaaamiaaaaaaaaaaaaaaaaaaalyaxdbpTazgbfUbcNbmrbmrbfVbcNbpUbpVaYsaYsbpWaYsaYsbpVbpXbcNbpYbmrbmrbcNblmaHvaOrbpmbpnbpZbpZbpZbpZbpZbpZbpZbsCbqWaUbbqabqbbqcbqdbqebqfbqgaUbamiaxhamialyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVbnGbqhbqibqjbqkbqlbqmbqnbqobqpbqqbqrbqsbqtbqubqvaSbaScbqwaSebqxaSgaShaJZaKabqyaHUaWkaWlaaaaLdaLeaQLaaaaaaamiamiamiaaaaaaaaaaxhaxhaxhaxhaxhaxhaxhaxhaxhaxhaxhaaaaNXbqzbqAbqBbqCbqDbqEaWvbqFbqGboXboXbqHaaaalyalyaaaaaaaaaaaaaaaaaaaaaaxdbqIbqJbfUbcNbcNbcNbfVbqKaTKaTKaTKbqLaTKbqLaTKaTKaTKbqMbpYbcNbcNbcNbqNaYCbqObpmbpnbpZbqPbqQbqRbqSbqTbqUbuebtubqXbqYbqZbrabrbbrcbrdbrebrfaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbnGbrgbrhbribnIbrjbnGaPfbrkaPfaPfbrlaPdaPdbrmaPdaPdaPdaPdaPdaPdaPfaMraJZbrnaHTaHTbaVaHTaaaaMxbrobrpaaaamibrqamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaNXbrrbrsbrtbrubrsbrvaNXaNXaNXbbabbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxdbrwbrxbrybrzbrAbrzbrBbrCbrzbrzbrzbrzbrDbrEbrzbrzbrzbrCbrFbrzbrzbrzbrGaHvbrHbrIbpmbpZbrJbrKbrKbrKbrLbpZbufbqWaUbbrMbrNbrObrPbrQbqZbrRbrfaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbnGbnGbnGbnGbnGbnGbnGbrSbrTbrUaPdbrVbrWbrXbrYbrZbsabsabsbbsabscbrXaJYaJZaSibsdaHTaHUaHTaaaaaaaMxbsebsfamiamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaNXbsgaWybrsbshaWybsiaNXbsjbsjbsjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabskboZbslbsmaHvbsnbsobspaHvaHvaHvaHvaHvbsqbsraHvaHvaHvaHvbssaHvaHvaHvbsrbstbsubsvbrKbswbrKbsxbsybszbsAbpZbsBbuXbsDbsEbrNbsFbsGbrQbqZbsHbrfamiaxhaaaaaaaaaalyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVaCVaCVaPdbsIbsJbsKbsLbsMbsNbsObsPbsQbsRbsSbsSbsSbsSbsTbsUbsVaJZaSibsWaHTaHUaHTalyamiamibsXbsYbsfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaNXbsZbtabEJbtcbtdbteaNXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalybskbtfaZUaZVbtgbtgbthbtibtgbtgbtjbtgbtgbtkbtlbtgbtmbtnbtgbtobthbtgbtgbtpaGqbtqbtrbpmbpZbtsbrKbrKbrKbttbpZbsCbzkaUbbtvbtwbtxbtxbqZbqZbsHbrfaaaaxhamiamiamiamiamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaPdbtybtzbtAbtBaPdbtCbtDbtEbtFbtGbtHbtIbtHbtHbrXbrXaJYbtJbtKbtLbtLbtMbtLbtLbtNamiaUNbtObtPaLjaLjaLkaLjaLhaLjaLkaLjaLjaLjaLkaLjaLhaLjaLkbtQaLeaaaaNXaTxbtRbtRbtRbtRaNXaNXaaaaaaaaaaaaaaOaaaaaaaaaaaaaaaaaaaaaaaaamialybskboZazgbtSbtTbtTbtTbtUbtTbtTbtTbtTbtVbtTbtWbtTbtTbtTbtTbtTbtTbtTbtTbtXaLCbtYbpmbpnbpZbrKbtZbuabubbucbudbzVbznbugbuhbqbbuibujbukbqbbulaUbaaaaxhaaaaaaamiamialyaaaaaaaaOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaadaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaPdbsIbumbunbsIaPdbrVbuobupbuqbrZbrZburbusbutbuubuvbuwbuxbuybuzbuAbuBbuCbuDbtNamibuEamiaaaaaaaaaaaaaaaamiaaaaaaaaaaaaaaaaaaaaaamiaaaaaaaMxbroaLeamiaaaaaaamiamiaaaaaaamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamibuFbuGaxdboZazgbuHbtTbuIbuJbuKbuLbtTbuMbuNbuObuPbuQbuNbuRbtTbuSbuTbuUbuTbtTbuVaHvbuWbpmbpnbpZbpZbpZbpZbpZbpZbpZbzZbsCaUbaUbaUbaUbaUbaUbaUbaUbaUbaaaaxhaaaaaaamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaPdaPdaPdaPdaPdaPdbrVbrZbuYbuZbvabvbbvcbvdbvabvebvfbvgaQJbvhbvibvjbvkbvkbyMbvmaLfbvnamiaaaaaaaaaaaaaaaamialyaaaaaaaaaaaaaaaaaaamiaaaaaaaaaaMxbtPaLiaLjaLjaLhaLiaLjaLjaLhaLkaLjaLjaLjaLkaLjbtQaLebuFbuFbuFbuFbuFbvobvpaxdbvqbvrbvsbtTbvtbvubvvbvwbtTbvxbuObvybvzbvAbuObvxbtTbvBbvCbtTbvDbtTbvEaJqbvFbpmbpnbpnbpnbpnbpnbpnbpnbpobzZbsCbvGbvHbvIbvIbvIbvIbvIbvHamiamiaxhaaaaaaamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbvJbvKbvLbvMbvNbrXbvObvPbvQbvRbutbutbvSbvTbrZbvUbvVbjvaJZbvXbvYbvZbwabwbbwcbwdbwebwfamiaaaaaaaaaaaaaaaamiamiaaaaaaaaaaaaaaaamiamiaaaaaaaaaaaaaaaamialyamiamiamiaaaaaaamiaaaaaaaaaaaaaaaaaaaMxbtPbwgbwhbwibwjbuFbuFbuGaxdbtfaSybwkbtTbwlbwmbtUbtTbtTbtTbtTbtTbtTbtTbtTbtTbtTbtTbwnbtTbtTbtTbwoaHvbwpbvGbvGbvGbvGbvGbvGbvGbvGbvGbwqbvGbvGbvHbvIbvIbvIbvIbwrbvHamiaxhaxhaaaaaaamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVbvJbwsbwtbwtbwubrXbwvbsObwwbtFbwxbwybwzbwybwybrXbrXbwAaJZbwBbtLbwCbtLbtLbtLbtLbwDbwDbwDbwEbwEbwEbwDbwDbwDbwDbwEbwEbwEbwDbwDbwDbwDbwDbwEbwEbwEbwDbwDbwDbwDbwEbwEbwEbwDbwDbwDbwDbwDbwDbwFbwFbwFbwFbwGbwHbwIbwJbuFbwKbwLaxdboZazgbwkbtTbwMbwNbwObwNbwPbwQbwRbwSbwTbwUbwVbwWbwNbwNbwNbwXbwNbtTbtXaHvbwYbwZbxabxbbxcbxdbxebxfbxgbxgbxhbxgbxibvHbvIbvIbvIbvIbvIbvHaaaaxhaaaamiamialyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbvJbvJbvJbvJbxjbvJbrXbxkbsObxlbxmbtGbxnbxnbxnbxnbxobxpbxqaJZaKaaHTbxrbxrbxsbxtbxtbxtbxtbxubxvbxvbxwbxxbxybxybxzbxAbxAbxAbxxbxBbxCbxrbxzbxAbxAbxAbxxbxrbxrbxzbxAbxAbxAbxxbxrbxrbxrbxrbxDbxEbxFbxEbxEbxGbxHbxIbxJbuFbxKbxLbxMbtfaZUaGdbxNbxObxPbxQbxRbxPbxSbxRbxPbxRbxRbxPbxPbxRbxRbxRbxUbxVbxWbxXbxYbxZbvGbyabybbycbydbyebyfbygbyhbyibxgbyjbykbvIbvIbvIbvIbvIbvHaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbvJbylbwtbvJbwtbAabrXbrVbymbrXbxmbrZbynbynbyobynbrZbrXbypbyqbyrbwDbysbytbysbwDbwDbwDbwDbyubyvbxrbywbxtbxtbxtbxtbyxbxrbxrbxrbxrbxrbxrbxrbxrbxrbxrbxrbxrbxrbyybyzbxrbxrbxrbxrbyAbxtbyBbwDbuFbuFbuFbyObxEbyDbyEbxEbxDbxLbxLaxdboZazgbsmbyFbyGbyHbyIbyJbyHbyIbyJbyHbyLbyJbyHbyNbyPbyPbyPbyQbyRbySbyTbyUbyVbyWbyXbyYbyZbzabzbbzcbzcbzdbxgbzebzfbvHbvIbvIbvIbvIbvIbvHaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbvJbzgbzhbzibzjbAbbrXbzlbrXbrXbzmbrXbrXbrXbrXbrXbrXbrXbAcbzobzpbwDbwDbwDbwDbwDbzqbzqbwDbwDbwDbwDbzrbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbwDbzrbwDbwDbwDbzqbzqbuFbuFbzsbztbzubuFbuFbuFbuFaxdbzvbzwbzxbtTbzybzzbzAbzBbzzbzCbzBbzDbzAbzBbzEbzFbwNbwNbwNbzGbzHbtTbzIbzJbzKbzLbxgbxgbxgbzMbzNbzcbzcbzObxgbzPbzQbvHbvIbvIbvIbvIbvIbvHaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbvJbzRbzSbzTbzUbAdbzWbzXbzYbzYbDKbvJbGsbBhbAebBjbBibBYbBkbAfbAgbAhbAibAibAibAjbAkbAkbAlbBZbAibAibAmbAibAnbAobAibAibAibApbAqbArbAsbAtbAibAibAubAibAnbAhbAvbAwbAxbAybAibAnbAzbAmbAibAibAAbAkbAkbABbAibACbADbAEbAFbAGbAHbAibAIbAJbAKbJIbtTbAMbwlbtTbANbwlbtTbAObwlbtTbAPbwlbtTbAQbARbARbASbARbtTbATbspbAUbvGbAVbxgbxgbxgbAWbAXbAYbAZbxgbxgbBabykbvIbvIbvIbvIbvIbvHaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbvJbBbbBcbvJbBdbBebBfbBgbBgbBgbBgbCcbCbbCebCdbCibCibCSbClbBlbBmbBnbBmbBmbBmbBmbBmbBobBpbBmbBmbBmbBrbBmbBmbBnbBmbBmbBmbBsbBmbBtbBubBvbBwbBxbBybBmbBmbBnbBqbBmbBzbBmbBmbBmbBAbBBbBmbBmbBCbBmbBmbBnbBmbBzbBDbBmbBmbBqbBzbBmbBzbBmbBEbBFbtTbBGbBHbtTbBIbBHbtTbBJbBHbtTbBKbBHbtTbARbARbARbASbBLbtTbBMbmwbBNbBObBPbBQbBRbBRbBSbBTbBRbBUbBVbxgbBabvHbvIbvIbvIbvIbvIbvHaaaaxhaaaamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbvJbvJbvJbvJbvJbBWbBXbvJbvJbvJbwtbvJbCTbCVbGubDObCWbCabCXbCZbCfbCfbCfbCfbCfbCgbCfbChbCfbCfbCjbCfbDabDbbDbbDbbDbbDcbCnbCobCfbCpbCqbCrbCsbCtbCubCsbCsbCsbCvbCsbCwbCsbCsbCxbCtbCybCsbCsbCsbCsbCsbCsbCkbCzbCAbCBbCBbCCbCzbCBbCzbCBbCmbCDbtTbCEbCFbtTbCEbCGbtTbCEbCHbtTbCEbCIbtTbCJbCJbCJbASbCKbtTbCLbCMbCNbvGbvGbvGbvGbvGbvGbvGbvGbvGbvGbCObBabvHbvIbvIbvIbvIbwrbvHaaaaxhaaaamiamiamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVbvJbCPbCQbCRbvJbDNbDQbDMbvJbDLbDTbFdbDObDUbCYbDVbDYbDWbEubDZbCYbEabCYbCYbKxbGxbCYbCYcnOcnObFccnQcnQbFccnOcnOcnOcnObDdbDebDfbDgbDhbDgbDgbDgbDgbDibDgbDjbDkbDlbDlbDmbDlbDlbDlbDlbDlbDlbDlbDnbDobDpbDqbDqbDrbDsbDqbDsbDtbDnbDlbDubDubDubDubDubDubDubDubDubDubDubDubDubDubDubtTbDvbDwbDwbDxbDybDzbDwbDAbDBbDCbDDbDwbDEbDFbDGbDwbDHbDIbvHbvIbvIbvIbvIbvIbvHamiaxhaaaaaaalyamialyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbvJbDJbDKbDRbvJbFebDQbDMbvJbFfbFhbFgbFgbFjbFmbFlbFobDXbDXbDXbFpbDSbCYbFrbFqbFibFibCYbGtcoLcoLcoLcoLcoLbGwbGvbGybEbbEcbEdbEebDgbEfbEgbEhbEibEjbEkbDgbElbEmbDlbEnbEobDtbEpbEqbErbEsbDlbEtbGGbEvbEwbExbExbEybEzbExbEzbExbEAbEBbDubECbEDbEEbDubEFbEGbEHbEIbOabEKbELbEMbENbEObEPbEQbDwbERbESbETbEUbEVbDAbEWbDAbEXbDwbEYbEZbFabDwbvGbvGbvGbvGbvGbvGbvGbvGbvGaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbvJbFbbzYbDKbvJbDNbDQbDMbvJbGzbGAbJCbDObGBbCYbGEbHDbGFbFnbFnbFnbGHbCYbDPbGqbFibHvbCYcqsbHwbHxbHxbHxbHybHAbHzbHBbFsbFtbFubFvbDgbFwbFxbFybFxbFzbFAbDgbFBbFCbDlbFDbFEbFFbFGbFHbFIbFJbFKbFLbFMbFNbFObExbExbFPbFQbFRbFSbFTbFUbFVbFWbFXbFYbFZbGabGbbGcbGdbGebGfbGgbGhbGgbGibDubEmbEmbDwbHGbGkbGlbEUbDAbDAbGmbGnbDAbGobEYbEYbGpbDwaaaaaaaaaamiamiamiaaaaaaamiaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbvJbvJbvJbvJbvJbDQbDQbDMbvJbHCbGrbCUbHHbHFbCYbGDbHIbGDbGCbGCbGCbHKbCYbCYbKxbGxbCYbCYcrfbHLcqvcqwcqxbHMcszbHNbHObGIbGJbFubGKbGLbGMbFxbFxbFxbFxbGNbDgbGObGPbDlbGQbExbDtbExbGRbGSbGTbGUbGVbFRbGWbGXbGXbGXbGYbGZbHabHabHbbEzbHcbDubHdbHebHfbDubHgbHhbHibEIbHjbGgbHkbGgbHlbDubGPbEmbDwbHmbGkbGlbHnbHobDAbHpbHqbHrbDwbDwbDwbDwbDwaaaaaaaaaamiaaaalyaaaaxhaxhaxhaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVaCVbDQbDMbDMbDMbLebHtbHubCYbIzbIybIBbIHbIJbIHbIKbIIbIIbIIbHJbHEbJBbFkbIcbJDbJEcqubKtcricrjbHMcszbJFbJGbGIbGJbFubFvbHPbHQbFxbFxbFxbFxbFxbHRbGObHSbHTbHTbHTbHTbHTbHTbHTbDlbDlbHUbExbHVbHWbHXbHXbHXbHYbHXbHZbIabIbbIAbIdbIebGgbIfbDubEFbHhbHibEIbIgbIhbIibIjbIkbDubIlbEmbDwbImbInbIobIpbIqbIrbIqbIqbIsbIsbItbIubIvbDwamiaxhamialyaaaaaaaaaaaaaaaamiamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaadaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVaCVbDQbIxbDMbDMbLebHtbIwbCYbJLbJKbJKbJKbJNbJMbJObJMbJMbJMbICbIDbIEbIFbIGbCYbJRcrLcrMcrNbKybKwcszbJFcnObGIbGJbFubFvbDgbILbIMbFxbINbIObIPbDgbGObIQbHTbIRbISbITbIUbIVbIWbIXbIYbEybExbHVbIZbJabJbbExbJcbJdbJebIabJfbJgbDubJhbGgbJibDubEFbJjbJkbJlbJmbJnbJobJpbJqbDubJrbEmbDwbJsbGkbGlbJtbJubDAbJubJubJvbDAbJwbDAbDAbJxaaaaxhaaaaaaaaaaaaaaaaaaaaaalyalyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVczibHsbHsbHsbHsbHsbHsbHsbHsbHsbHtbJzbCYbLrbLqbIIbIIbLsbJAbLtbMtbMsbJHbJJbSjbJQbJPbMrbCYctfctgcthctibNoctjctkbOtcnObJSbGJbFubJTbDgbJUbJVbJWbJXbJYbJZbKabGObGPbHTbKbbKcbKdbKebKfbKgbKhbIYbEybExbHVbKibExbExbExbEzbExbKjbIabJfbKkbDlbDlbDlbDlbDlbDlbDlbKlbDubDubKmbDubDubDubDubKnbEmbDwbGjbGkbGlbKobGkbGkbGkbGkbDAbDAbKpbKpbDAbJxaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHsbHsbKqbKrbKsbHsbPGbKubKvbHsbHtbJzbCYbCYbCYbOubCYbCYbCYbCYbCYbCYbCYbCYbKxbCYbCYbCYbCYcnOcnOcnObOvbOwbOvcnOcnOcnOcnObKzbFubKAbDgbDhbDgbDgbDgbDgbDgbDgbKBbKCbHTbKDbKdbKdbKEbKFbKGbIXbIYbFPbKHbKIbDnbDtbDtbKJbDobDtbDnbKKbKLbKMbKNbDlbKObKPbKPbKQbDlbKRbKSbKTbKUbELbKVbKWbDubGPbEmbDwbKXbGkbGlbKYbKZbDAbLabLabDAbLbbERbERbLcbJxaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHsbLdbLebLfbLebHsbLgbLhbLibLjbLkbJzbLebLlbLmbLmbLmbLmbLmbOxbLmbOybLnbLobLpbLnbLmbLmbLmbPAbLmbPCbPBbQmbQlccnccnccnbQnbLubLvbLwbLxbLybLzbLAbLBbLCbLDbLAbGObEmbHTbLEbKdbKdbKdbLFbKgbKhbIYbEybExbLGbLHbLIbLJbLJbLKbLLbIXbLMbJfbExbLNbLObLPbLQbLRbLSbLTbLUbFYbLVbFYbFYbLWbLXbDubLYbLZbDwbMabGkbMbbMcbMdbMdbMdbMdbMebLbbERbMfbLcbJxaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHsbLebLebLebMgbHsbMhbMibMjbMkbMibMlbMmbMnbMobMibMibMibMibMqbMibMibMibMibMibMpbMibMibMibMqbMibMkbQobQqbQpbQpbQzcbucecbKzbMubMvbMwbMxbMybMzbMAbMBbMCbLAbGObEmbMDbKdbKdbKdbKdbMEbMFbIXbIYbEybExbMGbMHbMIbMJbMKbMLbMMbIXbLMbKLbMNbMObMPbMQbExbMRbMSbMTbMUbMVbMWbMXbGgbGgbMYbDubEmbMZbDwbNabGkbNbbNcbNdbDAbNdbDAbDAbLbbNebNfbLcbJxaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHsbNgbLebNhbHsbHsbHsbHsbHsbHsbHsbHsbHsbNibJzbHsbHsbHsbNjbNjbNjbNjbNjbNjbNjbNkbNjbNjbNjbNjbNjbUfbUfbRtbUfbRvbRubUfbUfbNpbFubKAbLxbNqbNrbNsbNtbNubNvbLAbGObEmbHTbNwbNxbNybNzbNAbNBbNCbNDbNEbNFbNGbDlbNHbNIbMKbNJbNKbDlbLMbJfbExbNLbDlbNMbExbNNbNObDlbNPbNQbMWbGgbGgbGgbGgbNRbEmbMZbDwbNlbERbNTbNUbNVbNVbNWbDAbDAbDAbNXbNXbDAbJxaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHsbNYbLebNZbHsbVlbObbHsbOcbOdbOebOfbOgbOhbJzbHsbOibOjbNjbOkbOlbOlbOmbOnbOobOpbOqbOrbOsbOsbOsbUfbVhbVibVjbSpbRwbVmbUfbKzbFubKAbLxbOzbOAbLAbLAbLAbLAbLAbOBbOCbODbOEbOFbOGbOHbOIbOJbDlbDlbOKbOLbOMbDlbONbOObOPbOQbORbDlbDlbOSbOTbDlbDlbOUbHabOVbOWbDlbOXbOYbIebOZbPabPbbPcbDubEmbMZbDwbPdbNfbNTbDAbPebPfbPgbESbPhbPibDAbDAbPjbDwamiaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHsbLfbLebLebPkbLebPlbHsbOcbPmbPnbPobPpbPqbPrbHsbPsbLebNjbOsbPtbOsbPubPvbPwbPxbPybPzbOsbOsbOsbUfbWubWvbWwbWwbWxbWybUfbKzbFubPDbLxbPEbOAbLAbPFbSrbPHbLAbMZbEmbHTbHTbPIbPJbHTbPKbHTbHTbPLbPMbPNbPObDlbDlbPPbPQbPRbDlbDlbPSbPTbPUbPVbDlbDlbPWbPWbDlbDlbDubPXbDubDubDubDubPYbDubEmbMZbDwbDwbDwbDwbPZbDwbDwbDwbDwbDwbDwbDwbDwbDwbDwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHsbQabPkbHsbHsbHsbHsbHsbHsbHsbHsbHsbHsbNibQbbQcbLebQdbNjbOsbOsbOsbQebQfbQgbQhbQibQjbOlbOlbQkbUfbXtbXubXvbXwbXxbXybXzbQrbFubKAbLxbQsbQtbQubQvbQwbQxbLAbMZbEmbQybSqbQAbQBbQCbQDbQEbQFbQGbQHbQIbQJbQKbQLbQMbQNbQObQPbQQbQRbQSbQTbQUbQVbQWbQXbQXbQYbQZbRabRbbRcbRdbDubRebRfbDubRgbMZbEmbEmbRhbEmbEmbEmbEmbEmbRibRjbRkbRjamiamiamiamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHsbLebLebLebLebRlbLlbLmbLmbLmbLmbLmbLmbNmbQbbHsbRobRpbNjbRqbRqbRqbRqbRqbRrbRsbRqbRqbRqbRqbRqbUfbYvbYwbYxbYxbYybYzbUfbRxbFubKAbLxbEmbOAbLAbRybRzbRAbLAbRBbNubRCbRDbREbRFbRGbRHbRIbRJbQNbRKbRLbRMbRNbRObRPbRQbPUbPUbRRbRSbRTbRUbQNbRVbRWbQNbQNbQNbQIbRXbRYbRYbRZbDubSabSbbDubEmbScbSdbSdbSebSdbSdbSdbSdbSdbSfbLAbLAbLAaaaamiaaaamialyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHsbLebLebLebLebHsbSgbShbMibMibMibMibMibMibNnbNjbNjbNjbNjbOkbOlbOlbSkbOnbSlbSmbSnbSobOsbOsbOsbUfbZAbZBbZCbZDbWxbZEbUfbSubSvbSwbLxbGPbOAbLAbLAbSxbLAbLAbOAbEmbSybSybSybSybSzbSybSAbSybSybSBbSCbSybSDbSybSEbSFbSGbSHbSIbSJbSKbSLbSGbSMbSNbSObSPbRDbPNbSQbSRbRYbSSbSTbSTbSTbSTbSTbSTbSTbSTbSTbSTbSTbSTbSTbEmbMZbSUamiamiaaaalyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaajaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHsbLebLebSVbSWbHsbSXbQbbNjbNjbNjbNjbNjbNjbNjbNjbSYbSYbRqbOsbPtbOsbSZbPvbTabTbbPybTcbOsbOsbOsbUfbWwcascaucavcawcaxbUfbTibFubTjbLxbTkbTlbTmbTmbTnbTobTmbTpbEmbSybTqbTrbTsbTtbTubTvbSybTwbTxbTybTzbTAbSybTBbTCbTDbTCbTBbTBbTEbTFbTGbTHbTBbTBbTIbRYbTJbTKbRYbRYbTLbTMbTNbTObTPbSTbTQbTRbTSbTTbTUbTVbTWbSTbEmbMZbSUaaaamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHsbHsbPkbHsbHsbHsbNibQbbNjbOsbOsbTXbOsbNjbTYbTZbUabUbbRqbOsbOsbOsbUcbUdbSlbSmbQibUebOlbOlbQkbUfbRvcbwbUfcbxcbycbzbUfbUjbFubUkbUlbUmbOCbOCbOCbUnbUobOCbOCbOCbUpbUqbUrbUsbUtbUubUvbUwbUxbUybUzbUAbUBbSybUCbRabUDbQXbUEbTBbUFbUGbUHbUIbUJbTBbUKbULbPNbRYbRYbRYbUMbUNbUObUPbUQbURbUSbUTbUUbUVbUWbUXbUYbSTbEmbMZbSUaaaamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHsbUZbLebLebVabHsbNibQbbNjbOsbOsbOsbOsbNjbVbbVcbVdbVebRqbRqbRqbRqbRqbRqbVfbVgbRqbRqbRqbRqbRqcbncbucbubUfccCccDccEbVnbVobFubKAbLxbLxbLxbLxbLxbMZbVpbSybSybSybSybVqbVrbVrbVrbVsbVtbVubVrbVvbVwbVrbVxbSybVybRYbVzbRYbVAbVBbVCbVDbVzbVEbVFbTBbVGbVHbVIbVJbVKbVLbVMbSTbVNbVObVPbVQbVRbVSbVTbVUbVVbVWbVXbVYbOCbVZbWabWbamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHsbUZbLebLebWcbHsbNibQbbNjbWdbOsbWebWfbWgbWhbWibWjbWkbWlbWmbWnbWobWpbWqbWrbSmbWsbWtbOsbOsbOscbncbucbubUfcdtcducdtbUfbKzbFubKAbLxbWzbWAbWzbLxbMZbVpbSybWBbWCbWDbWEbWFbWGbWGbWGbWHbWIbWJbWKbWLbWMbWNbWObWPbRXbTKbRYbVAbVBbWQbVDbRYbVEbWRbWSbWSbWTbWUbWTbWSbWVbWSbSTbSTbSTbSTbSTbWWbWXbWYbWZbXabXbbXcbSTbXdbXebSUaaaamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHsbXfbLebLebXgbHsbNibQbbNjbXhbXibXjbOsbOsbXkbXlbXmbXnbXnbXobXpbXpbXpbXpbXqbXrbPybXsbOsbOsbOscbncbucbubUfceocepceqbXzbQrbFubXAbXBbXCbXCbXDbLxbMZbVpbSybXEbVrbXFbVrbVrbVrbVrbXGbXHbXIbXJbVrbXKbVvbXLbXMbXNbSQbSRbRYbXObVBbWQbXPbXQbXRbXSbXTbXUbXVbXWbXXbXYbWSbXZbSTbYabYbbYcbYdbYebYfbYgbTUbTUbTUbTUbSTbYhbGObSUalyamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHsbNZbLebLebXgbHsbNibQbbNjbOsbYibOsbOsbYjbYkbYlbYmbYnbYobYpbYqbYrbYsbYnbYnbYtbQibYubOlbOlbQkcbncbucbubUfbUfbUfbUfbYAbLubYBbYCbLxbYDbYEbYFbLxbMZbVpbSybYGbYHbYIbYJbYKbYLbVrbYMbYNbSybYObYPbYQbYRbYSbSybYTbYUbYVbYWbYXbTBbYYbYZbZabVEbRYbZbbZcbZcbZdbZebZfbWSbZgbSTbZhbZibZjbZkbZlbUPbZmbZnbZobZpbZqbSTbYhbGObSUalyamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHsbZrbLfbLebXgbHsbZsbRnbNjbOsbOsbOsbOsbNjbZtbZubYmbYnbYnbZvbZwbZxbZybYnbYnbZzbRqbNjbNjbNjcbncbncbucbucecbStbStbStbSsbKzbZFbLwbLxbLxbLxbLxbLxbMZbVpbSybSybSybSybSybSybSybZGbSybSybSybSybSybSybZHbSybSybZIbZJbTBbTBbTBbTBbZKbZLbZMbZNbZObZPbZQbZRbZSbZTbZUbWSbXZbSTbZVbZVbZVbZWbZXbZYbZmbZZbUOcaacabbSTcacbGObLAamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHsbHsbHsbHsbHsbHscadcaebNjbOsbOscafbOsbNjcagcahcaibYnbYnbWrbYncajcakcalcamcajcanbNjbStbStcbncaocbucbucecbStbStbStbSscaycazbKAbLxcaAcaBcaCbGPcaDcaEbEmbEmbEmbEmbEmbEmcaFbEmbEmbEmbEmbRgbZJcaGcaHcaIcaGcaJcaKbZJcaLcaMbTBcaNcaOcaPcaQcaRcaScaTcaUcaVbZccaWbWScaXbSTcaYcaZcbabZkcbbcbccbdcbecbfcbbcbgcbhcbicbjcbkcblaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVaCVaCVaCVaCVbHscbmcbmbLebLecadcbnbNjbNjbNjbNjbNjbNjbNjbNjcbocbpcbqcbrcbocbsbNjbNjbNjcbsbNjbNjcbncbncbncbtcbucapcecbStbStbStbSscbAcbBcbCcbDcbEcbEcbEcbEcbFcbGcbHcbHcbHcbIcbHcbHcbJcbHcbHcbHcbHcbKcbLcbMcbNcbOcbPcbQcbPcbRcbPcbPbTBcbSbRYbRYbRYbXObZPcbTbZccbUbZccbVbWScbWbSTcbXcbYcbZbYdccaccbcccccdcceccfccgbSTcchbGObLAbSUbSUbSUbLAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHsbHsbHsbHsbHsbHsbHsbHsbLlcciccjccjcckcclccmcgbccnccoccpccoccqccnccrccscctccuccvccwccxccyccxcczcbucbuccAcbucbucbucbucbucecbStbStbStbSsccFccGccHbLxbLxbLxccIccIccIccJccIccIccIccKccIccIccIccIccIccIccIccLbZJcaGcaHcbPcaGcbPcbPbZJccMccNbTBccObVJccPccQccRbWSccSccTccUbZcccVbWSbWSbSTbSTbSTbSTbSTbSTbSTbSTbSTbSTbSTbSTbSTccWbGOccXccYccZccZbSUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHscdacdbcdccddbNZbLebLebNibQbcdecdecdecdecdfcbucdgcdhcdicdjcdkcbucbucdlcdmcdncdocdpcbucdqcbucdrcbucbucdscbucbucbucbucbucecbStbStbStbSsbKzbFubKAbLxcdvcdwccIcdxcdycdzccIcdAcdBcdCcdDcdBccIcdBcdEcdFccIccLbZJcaGcdGcbPcaGcbPcdHbZJcdIcdJbTBbTBbTBcdKbTBbTBbWSbWSbWScdLbWSbWSbWScdMcdNcdOcdPcdQcdRbSdbSdbSdbSdbSdbSdbSdbSdcdScdTbLAcdUccZccZbSUaaaaaaaaaaaaaaaaaaaaaaaaaaOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaCVaCVaCVaCVaacaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVaacaacaacaCVaCVaCVaCVaCVbHsbLlcciccjccjccjccjccjcdVcdWcdecdXcdYcdZcdZcdZcdZceacdZcebcecceccedcedceecefcedceccegcdqcehceicejcekcelcejcemcencbucbucecbStbStbStbSsbUjbFucerbLxbLxbLxccIcescetceuccIcevcewcexceycdBcezcdBcdFcdFccIccLbZJcaGceAceBcaGcbPceCbZJbZJbZJbZJbEmceDceEbEmbEmceFbEmbEmbMZbEmbEmbEmbEmbMZbEmbEmbEmceGceHceIceJceKceKceKceKceKceLceMbLAceNccZccZbSUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaafaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVceOcePcePcePceOaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaadaadaCVaCVaCVaCVaCVceQceQceQceQceQbNibQbcdecdecdecdecdecdeceRcdeceSceTceUceVceWceXceYceZbRqcfacfbcfccfdcfecffcfgcedcbucfhcficeccfjceccfkcecceccflcfmcfmceccecceccbncbncfnbFucfobLxcfpcfqccIcfrcdBcfsccIcftcfucfvcfwcfxccIcdBcfycdFccIccLbZJbZJbZJbZJbZJbZJbZJbZJcfzcfAbSdbSdcfBbSdbSdbSdbSdbSdbSdcfBbSdbSdbSdbSdcfCcfDcfDcfDcfDcfEcfFcfGcfHcfHcfHcfHcfHcfHbLAbLAbSUbSUbSUbLAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaadaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVcePcePcfIcfJcfIcePcePaCVcePcePcePcePaCVaadaadaadclHaadaadaadaadclHaadaadceQceQceQcfKcfLcfMceQbNibQbcdecfNcfOcfPcfQcfRcfScfRcfTcfUcfVcfWcfXcfYcfZcgacrgcgccbucbucbucgdcgecgfcedcggcdqcghceccgicgjcgkcglcgmcgncbucbuceccgocgpcgqcbncgrbSvbXAcgscgtcguccIcftcgvcgwcgxcgycgzcgAcgBcgCccIccIccIccIccIcgDcgEbSdbSdbSdbSdbSdbSdbSdcfBcfCbEmcgFcgFcgFcgFcgFcgFcgFcgFcgFcgFcgFbLAcgGbLAcfDcgHcgIcgJcgKcgLcgMcfHcgNcgOcgPcgQcgRamiamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVcePcePcfIcfIcfIcfIcfIcePcePcePcgScgTcgUcgVcgVcgVcgVcgVcgVcgVcgVcgVcgVcgVcgVcgWcgXcgWcgYcgZchachbchcchdchecfNcfOcfPcfPchfchgchhchicfYchjchkchkchlchmchnchochpchqchrchschtchuchvchwchxchychzchAchBchCchDchEchFchGchHchHchIchJchHchKchLchMbFubXAbLxchNchOccIcfrchPchQchRchSchTchUcdBchVccIchWchXchYccIchZccWbEmbGPciacibcaBbEmbEmbEmbEmciccgFcidcieciecifcigcihciicijcikcgFcilbEmcimcfDcinciocipcgHciqcirciscitciucivcivcgRamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVcePcePcfIcfIcfIcfIcfIcfIcfIcePcePciwcixcePaCVaCVaadaadaadaadaadaadaadaadaadciyceQceQceQcizciAceQceQbLebQbcdecfNcfOcfPciBcfRciCcfRciDciEcfYcfYciFcfYciGciHcrgciIcdqciJciKciLciMcgfcedciNcdqciOcecciPciQciRciScgmciTciUccnciVciWciXciYcbnciZbFubXAccIccIccIccIccIccIccIccIccIcjacjbcjccjdccIcjeccIcjfcgFcgFcjgcjhcgFcgFcgFcgFcgFcgFcgFcgFcgFcgFcjicjjcjkcjlcjmcjncjocjpcikcgFcicbRgcjqcfDcgHcjrcjscjtcjtcjucjvcjwcjvcjxcivcgRamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVcePcePcfIcfIcjycjzcfIcjycjzcfIcfIcePcjAcePcePaCVaCVaCVaCVaCVaCVaadaadaadaadaadaadaadceQcjBcjCcjDcjEcjFcjGcjHcdecdecdecdecdecdecjIcdecjJcjKcjLcjMcjNcjOcjPcjQcdZcjRcjScjTcdmcdmcdmcjUcedcjVcdqciOceccjWcjXcjWcecceccjYcjZcfmceccecckaceccbnckbbFubYCccIckcckdckeckfccIcdBcdBckgckhcdCcdBckickjcdBcdBcdBcgFckkcklckkckmcknckockpckkckqckrcksckkcktckuckvckwckxckyckzckzckzckzcgFbLAbSUbLAcfDcfDcfDckAckAckAcfDcfHcfHcfHcfHcfHcfHamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVcePcePcfIcfIcfIckCckDckEckFckGcfIcfIckHckIckJcePaCVaCVaCVaCVaCVaCVaadaadaadaadaadaadckKceQckLckMckNckOceQckPckQckRckRckRckRckRckSckTcdeckUckVcdZcdZcdZcdZckWcdZcebceccecckXcedceecedcedcecckYccwckZclaclbclcckZcldcleclfcjVcbucecclgclhclicbnbKzbFucljccIclkcetcgycllclmclncgycgycloclpclqclrclscltcltcltcgFckkcluckkckkckkclvckkckkckkclvckkckkcklclwcieclxclyclzcihclAclBclCcgFaaaaaaamiaaaamiaaaaaaamiamiamiamiaaaaaaamialyamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVceOcePcfIcfIcjyclDclEckDckEckFclFclDclDclDclDclGceOaCVaCVaCVaCVclHaadaadaadaadclHaadaadaadceQclIckMclJclKceQbLebLecddcdcclLclMcddclNbQbcdecdecdecdeclOcbuclPclQclRcrhclSccxclTclUclVclWccyclXclYcdpcbucdrcbucbucbuccwclZcbucjVcbucecclhclhclicbnbKzbFubKAcjccdBcdBcmachQcmbchQchQchQcmccmdcdBcmecmfcltcmgcmhcgFcmicmjcmkcmlcmkcmmcmmcmmcmmcmmcmlcmmcmncjickkcmocmpcmqcjncmrcmsclCcgFaaaaaaalyaaaamiaaaaaaalyalyaaaaaaaaaaaaamiamiamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVcePcfIcfIcfIckHcmtcmtcmuckEcmvcmtcmtcmtcmtcmtcmwcePcmxcmxcmxcmxcmxcmxcmxcmxcmxcmxcmxcmxcmxceQcmycmzcmzcmAceQbHsbHsbHsbHsbHsbHsbHscmBcmCcjGcmDcjGcmEccxcmFccycmGcmHcmIcmJcmKcmLcmMcmNcmOcmPcmQcmRcmMcmMcmScmTcmUcmMbTdccnccocmYcbuceccmZcnaclicbncnbbFucnccndcnecnfcngcnfcnhcnfcnfcnfcnicnfcnfcnjcltcltcnkcnlcgFcnmcnmcnnckkcklckkckkckkckkckkcnockkcnncnpckkcnqckkcnrckzckzckzckzcgFaaaaaaalyalyamiaaaaaaaaaaaaaaaaaaaaaaaaalyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaadaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVcePcnscfIcfIcfIckEckEcntcnuckEckEckEckEckEckEckEcnvcnwcnwcnwcnwcnwcnwcnwcnwcnwcnwcnwcnwcnwcnxcnycnzcnzcnAceQaCVaCVaCVaCVaCVaCVbHsbLecnBbMicnCcnDcnEcnFcnFcnGcnFcnFcnFcnHcnIcnJcnFcnKcnLcnMcnNcnKcnKcnKcnKcnKcnSbTgbTebTfbThbTfbTfbTfbTfbTfbTfbTfbKzcnTcnUcnVcdBcltcnWcltcnXcltcltcltcnYcnZcltcltcltcltcoacobcgFcoccoccodcoecofcogcohcoicojcoecoecokckkclwcieclxcolcomconcoocopcoqcgFaaOaaaamiamiamiaaaaaaaaaaaaaaaaaaaaaaaaalyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaiaaiaaiaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVcePcfIcfIcfIcjycorcorcosckEcotcorcorcorcorcorcorcePcoucoucoucoucoucoucoucoucoucoucoucoucouceQceQceQceQceQceQaCVaacaacaacaacaCVbHsbHsbHsbHsbLebQbcnEcovcovcowcoxcovcovcnFcoycozcoAcnKcoBcoCcoDcoEcoFcoGcoHcoIcnSbLebTebUgbVkbUhbUhbUiccBcoOcaqbSsbGJcoTcoUcoVcnecnecoWcnecoVcoXcdBcdBcoYclscdBcoZclscltcmgcmhcgFcpacpacpbckkcpcckzcpdcpdcpecpdckzcpfcoecpgcphcpicmpcpjconcpkcplcoqcgFaaaaaaalyalyamialycpmalyaaaaaaaaaaaaaaaamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaiaaeaaiaaiaaiaaiaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVceOcePcfIcfIckHckIckJckDckEckFcpnckIckIckIckIcpoceOaCVaCVaCVaCVclHaCVaCVaCVaCVclHaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaacaacaacaacaCVaCVaCVaCVbHsbLebQbcnEcppcpqcprcpqcpqcrkcpscpqcptcoAcnKcpucpvcpwcpxcpycpzcpAcpBcnSbLebTecarcbvcatcatcatcatcatcmVcoScpLcpNbKAccIcescdBcpOcpPccIcpQcdBcdBcpRcpScpTcpUcmfcltcltcltcgFcpVcpVcpbckkcklckzcpWcpMcpbcpYckzcpZcqacqbckkcqcckkcqdckzckzckzckzcgFaaaaaaalyalyalyalyalyamiaaaaaaaaaaaaaaaamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVcePcePcfIcfIcfIckCckDckEckFckGcfIcfIcjyclDclEcePaCVaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHsbLebQbcqecqfcqfcqfcqgcqhcqhcqicpqcpqcoAcnKcqjcqkcqlcqmcqncqocqpcqqcrlbLebTecmWcnRcoJcmXcnPcoJcoJcaqbSsbGJbFucoUcqCcqDcqEcqEckfccIcqFcdBcqGckhcqHcdBcqGcqIcdBcdBcdBcgFcqJcqKcpbcjjcmnckzcqLcqMcqNcqOckzclwciecqPcieclxciecqQcihcqRcqScqTcgFaaaaaaaaaaaaaaaaaaaaaamiaaaaaaaaaalyaaaamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVcePcePcfIcfIckHcqUcfIckHcqUcfIcfIcePcePcePcePaCVaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHsbLebQbcnEcqfcqfcqfcqVcqhcqhcqWcqXcqVcoAcnKcqYcqZcracrbcpycrccrdcrecnSbLebTecoKcoNcatcoMcoJcoJcoJcoPbTfcrmcrncroccIccIccIccIccIccIccIccIccIccJccIccIcgFcgFcgFcgFcgFcgFcrpcrqcrrcrscklckzcrtckkcpbcruckzcrvckkclwcrwcrxcmpcrycjncrzcrAcqTcgFaaaaaaamiaaaaaaaaaaaaamiaaaaaaaaaalyamiamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVcePcePcfIcfIcfIcfIcfIcfIcfIcePcePaCVaCVaCVaCVaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHscddbQbcnEcnEcnEcnEcnEcnEcnEcnEcnEcnEcnEcrBcrCcrDcrEcrFcpycrGcrHcrIcnSbLebTecoQcoJcoJcoJcoJcoJcoJcoRbTfcrRcrScrTcrUcrUcrVcrWcrXcrYcrZcsacrWcsbcsccsdcsecsfcsgcshcsicsjcskcslcsmcsncsockzcspcnocpbcsqckzcsrckkcjicsscqcckkcstckzckzckzckzcgFamiamiamiamiamialyalyalyamiamiamiamiamialyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVcePcePcfIcfIcfIcfIcfIcePcePaCVaCVaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHscsubQbbLebLebLebLebLecsvbLebLebLecddcswcrBcrBcsxcrBcrBcrBcrBcrBcrBcnSbLecpCcpDcpDcpDcpEcpFcpHcoJcpGbTfcsDcsEcsFcsGcsGcsGcsGcsGcsGcsGcsGcsGcsHcsIcsJcsKcsLcsMcsNcsOcsPcsQcsRcsScsncklckzcsTcsUcpbcsVckzcsWckkcnpclwclxciecsXcihcsYcsZctacgFaaaaxhaaaalyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVcePcePcfIctbcfIcePcePaCVaCVaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHsctccnBbMibMibMibMibMicnCbMibMibMicnDbLebLebLebLebLebLebLectdbLebLebLebLebTfcpIcqrcqtcpJcpKcqzcqAcqybTfctoctpctqctrctsctsctsctsctsctsctsctrcttctuctvcgFctwctxctyctzctActBctCcmmctDctEckzctFcklcpbctGckzctHckkcjictIctJcmpctKcjnctLctMctacgFaaaaxhaaaalyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVceOcePcePcePceOaCVaCVaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHsbHsbHsbHsbHsbRlbHsbHsbHsbHsbHsbHscnBbMibMibMibMibMibMibMicnCbMibMicnDbLebTfbTfbTfbTfbTfbTfbTfbTfbTfbTfctNctOctPctsaacaxsaxsaacaxsaxsaxsctsctQctRctScgFckzctTctUckzckzctVckkckkctWctXckzcpdctYctZcpdckzcuacubcuccudcnqckkcueckzckzckzckzcgFamiaxhaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaCVaCVaCVaCVaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVbHscufbLecddcugbHscuhcuibHsbHsbHsbHsbHsbRlbHsbHsbHsbHsbHsbLecnBbMibMibMibMibMibMicqBbLebLebLecujctocukctqctsaacaacaxsaxsaxsaxsaxsctsctQcukculcsecumcuncuocupcsjcsmcuqcsmcurcklcusckkcklckkckkcutcuucubcuccuvcuwcuxcuycjncuzcuAcuBcgFaaaaxhamiamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHscuCbLebLecugbHsbLfcuDcuEcuFcuGcuHcuIcuJbLfcuKcuLcuMbHsbLebLebLebLebLebLebLebLecddcbmcuNcuOctrcuPcukctqcuQctsctsctsctsctsctsctsctrcuRcuScuTcuUcuVcuWcuXcuYckzcuZckkcjjctDcvacmmcvbcvacmmcvccrwcvdcubcvecuxcuwcvfcvgcihcvhcvicuBcgFaaaamiaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaacaaaaaaaaaaaaaaaaaaaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHscvjbLebLecugbHsbHsbHsbHscvkcvlbLecvmcvnbLfcvobLecvpbHsbLebLectrctrctrctrctrctrctrctrctrctrcvqcvrcvscvtcvucvvcvwbNScvxcvycvzcvAcvBcvCcsEcvDcvDcvEcvFcnocvGckzckkckkcvHcvIcsmcvJcvKcvLcvMcvNcvOcvPciecvOcvQcvRckkcvSckzckzckzckzcgFamiamiaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHscvTcddcvUbRpbHscvVcvWcvXbLecvncvnbLfcuHbLfcvYcvZcwabHsbLebLectrcwbcwccwdcwebRmcwgbSicwicwfcwjcwkcukcwlcwlcukcwlcwlcwlcwmcukcwncwncwocwpcwqcwrckkcvFckkcwsckzcwtcwucwvcwucwwcwxcwycwzcwAcwBcuxcwCcwDcmpcmpcwEcwFcwGcwHcwIcwJcwKcgFaaaamialyaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHscwLbLebLecugbHscwMcwNbHscvncwObLfbZrbZrcwPcwQcwRbLebHscddbLecwScwTcukcukcwmcukcukcukcukcukcukcukcwUcwVcwWcwWcwWcwWcwWcwXcwWcwWcwWcwYcwZcxacxbcxccvFckkcxdckzcxecxfckkcxgcxhctWcklcxicwwcxjcwwcrwckkckkcnockkckkcxkcxlcxmcwKcwKcxnalyaxhamiaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaafaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHscxobLebLecugbHsbHsbHsbHsbLecvncxpcxqbLecvncwRbLecwRbHscxrbLectrcxscukcukcxtcwncwncukcukcwlcwlcwlcxucxvcwlcukcwlcwlcwlcxtcukcwncwncukcwZcxwcxxcqMcxycxzcxAckzcxBcwAcwwcwAcxCctWcxDcmmcmmcxEcxFcvOciecxGcieciecxHcxIcxJcxKcwKcwKcgFalyaxhaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBckBckBckBckBckBckBckBckBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaadaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaadaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHscxLbLebLecugbHscxMcxNcxOcuJbLebLecvnbLecxPcxQcxRcwPbHscxSbLectrcxTcxUcxUcxVcxUcxUcxWcxXcukcukcukcukcukcukcukcxYcxWcxZcyacxUcxUcxVcxUcxXcgFcybcyccydcyecyfckzckkckkckkckkckkcygcsmcyhcsmcyicyjckkcykckkckkcylckkcymcgFcgFcgFcgFcgFaaaaxhaaaaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBaaackBckBckBckBckBaaackBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVbHsbHsbHsbHsbHsbHsbHsbHsbHsbHsbHsbHsbHscyncynbHscyncynbHscyncynctrctrctrcyoctrctrctrctrcypcxUcxUcxUcxUcxUcxUcxUcyqctrctrctrctrcyrctrctrctrcgFcgFcgFcgFcgFcgFcgFcpdcpdcpdcpdcpdcgFcpdcpdcpdcpdcpdcpdcgFckkcysckzckzckzcgFalyamiamiaaaaaaamiamiaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBaaackBckBckBckBckBaaackBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacytcyucyvaaaaaactrcywcyocywcywcywcywcywcyocywctraaaaaacytcyucyvaaaaaaaaaamialyamiamiamiaaaaaaaaaaaaamiaaaaaaaaaaaaaaaaaaaaaaaacgFcyxcyycyzcyAcyzcyBalyamiamiamiaxhaxhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBaaaaaaaaaaaaaaaaaaaaackBckBckBckBckBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyCcyocyDaaaaaaaaactscyEctsamiamiamictscyEctsaaaaaaaaacyCcyocyDaaaaaaaaaaaaamialyalyamiaxhaxhaxhaxhaxhaxhaxhaxhaxhaxhaxhaxhamicgFcgFcgFcgFcgFcgFcgFamiamiamiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyFcyFcyFcyFcyFaaaaaacytcyucyvamiamiamicytcyucyvaaacyFcyFcyFcyFcyFcyFaaaaaaaaaamiaaaamiaaaalyaaaamiaaaaaaaaaaaaamiaaaaaaaaaaaaalyaaaamiaaaaaaaaaaaaaaaaaaaaaaxgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyFcyFcyFcyFcyFcyFaaacyCcyocyDamiamiamicyCcyocyDcyFcyFcyFcyFcyFcyFcyFaaaaaaaaaalyaaaaaaaaaaxgaxgaxhamiaxgaxgaxgaxgaxgaxgaxgamiaxgaxgaxgaxgaxgamiamiaxhalyalyalyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaacaacaacaacaacaacaacaacaacaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalyalyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaaeaaeaaeaaeaaeaaeaaeaaeaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaBgaCVaCVaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBgaBgaBgaBgaBgaBgaBgaBgaBgaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaahaahaahaahaahaahaahaahaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCVaCVaCVaCVaCVaCVaCVaCVaCVaCVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFcyFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
@@ -7031,3 +7037,4 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
"}
+
diff --git a/_maps/map_files/Asteroidstation/areas.dm b/_maps/map_files/Asteroidstation/areas.dm
index 5bb5f280252..8f03840720e 100644
--- a/_maps/map_files/Asteroidstation/areas.dm
+++ b/_maps/map_files/Asteroidstation/areas.dm
@@ -93,3 +93,27 @@
/area/maintenance/asteroidstation/transit/aft_starboard
name = "Aft Starboard Transit Station"
+
+//Head Quarters
+/area/crew_quarters/asteroidstation/
+ icon = '_maps/map_files/Asteroidstation/areas.dmi'
+
+/area/crew_quarters/asteroidstation/cmo
+ name = "Chief Medical Officer's Quarters"
+ icon_state = "cmo"
+
+/area/crew_quarters/asteroidstation/ce
+ name = "Chief Engineer's Quarters"
+ icon_state = "ce"
+
+/area/crew_quarters/asteroidstation/rd
+ name = "Research Director's Quarters"
+ icon_state = "rd"
+
+/area/crew_quarters/asteroidstation/hos
+ name = "Head of Security's Quarters"
+ icon_state = "hos"
+
+/area/crew_quarters/asteroidstation/hop
+ name = "Head of Personnel's Quarters"
+ icon_state = "hop"
diff --git a/_maps/map_files/Asteroidstation/areas.dmi b/_maps/map_files/Asteroidstation/areas.dmi
index 515f9774333..de71db012e5 100644
Binary files a/_maps/map_files/Asteroidstation/areas.dmi and b/_maps/map_files/Asteroidstation/areas.dmi differ
diff --git a/_maps/map_files/Asteroidstation/z5.dmm b/_maps/map_files/Asteroidstation/z5.dmm
index e9aec192c24..65372af3f16 100644
--- a/_maps/map_files/Asteroidstation/z5.dmm
+++ b/_maps/map_files/Asteroidstation/z5.dmm
@@ -8,7 +8,7 @@
"ah" = (/obj/machinery/teleport/hub,/turf/simulated/floor/plating/airless,/area/AIsattele)
"ai" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/simulated/floor/plating/airless,/area/AIsattele)
"aj" = (/turf/simulated/floor/plating/airless,/area/AIsattele)
-"ak" = (/obj/structure/rack,/obj/item/clothing/gloves/yellow,/turf/simulated/floor/plating/airless,/area/AIsattele)
+"ak" = (/obj/structure/rack,/obj/item/clothing/gloves/color/yellow,/turf/simulated/floor/plating/airless,/area/AIsattele)
"al" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/simulated/floor/plating/airless,/area/AIsattele)
"am" = (/obj/item/weapon/stock_parts/cell{step_x = 0},/turf/simulated/floor/plating/airless,/area/AIsattele)
"an" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating/airless,/area/AIsattele)
@@ -27,7 +27,7 @@
"aA" = (/obj/structure/lattice,/turf/space,/area/AIsattele)
"aB" = (/obj/structure/girder,/turf/simulated/floor/plating/airless,/area/AIsattele)
"aC" = (/obj/structure/grille,/turf/simulated/floor/plating/airless,/area/space)
-"aD" = (/obj/machinery/power/solar/fake,/turf/simulated/floor/airless{icon_state = "solarpanel"},/area/djstation/solars)
+"aD" = (/obj/machinery/power/solar/fake,/turf/simulated/floor/plasteel/airless{icon_state = "solarpanel"},/area/djstation/solars)
"aE" = (/turf/simulated/floor/plating/airless,/area/djstation/solars)
"aF" = (/turf/simulated/wall,/area/djstation)
"aG" = (/obj/structure/grille,/turf/simulated/floor/plating,/area/djstation)
diff --git a/_maps/map_files/Asteroidstation/z6.dmm b/_maps/map_files/Asteroidstation/z6.dmm
index f8b85b35692..c1b6cf47590 100644
--- a/_maps/map_files/Asteroidstation/z6.dmm
+++ b/_maps/map_files/Asteroidstation/z6.dmm
@@ -1,7 +1,7 @@
"aa" = (/turf/space,/area/space)
"ab" = (/obj/structure/lattice,/turf/space,/area/space)
"ac" = (/turf/simulated/floor/plating/airless,/area/space)
-"ad" = (/turf/simulated/floor/airless,/area/space)
+"ad" = (/turf/simulated/floor/plasteel/airless,/area/space)
"ae" = (/turf/simulated/wall/r_wall,/area/space)
"af" = (/obj/structure/girder/reinforced,/turf/simulated/floor/plating/airless,/area/space)
"ag" = (/turf/simulated/wall/r_wall,/area/derelict/solar_control)
@@ -16,9 +16,9 @@
"ap" = (/obj/structure/grille,/turf/simulated/floor/plating/airless,/area/space)
"aq" = (/turf/simulated/wall,/area/space)
"ar" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plasteel,/area/derelict/solar_control)
-"as" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/solar{id = "derelictsolar"; name = "Derelict Solar Array"},/turf/simulated/floor/airless,/area/solar/derelict_starboard)
+"as" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/solar{id = "derelictsolar"; name = "Derelict Solar Array"},/turf/simulated/floor/plasteel/airless,/area/solar/derelict_starboard)
"at" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plating/airless,/area/solar/derelict_starboard)
-"au" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/solar{id = "derelictsolar"; name = "Derelict Solar Array"},/turf/simulated/floor/airless,/area/solar/derelict_starboard)
+"au" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/solar{id = "derelictsolar"; name = "Derelict Solar Array"},/turf/simulated/floor/plasteel/airless,/area/solar/derelict_starboard)
"av" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/apc{dir = 1; environ = 0; equipment = 0; lighting = 0; locked = 0; name = "Starboard Solar APC"; pixel_y = 24},/turf/simulated/floor/plasteel,/area/derelict/solar_control)
"aw" = (/obj/machinery/power/smes,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plasteel,/area/derelict/solar_control)
"ax" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar_control{id = "derelictsolar"; name = "Primary Solar Control"; track = 0},/turf/simulated/floor/plasteel,/area/derelict/solar_control)
@@ -63,7 +63,7 @@
"bk" = (/obj/machinery/door/airlock/command{name = "E.V.A."; req_access = null; req_access_txt = "18"},/turf/simulated/floor/plasteel,/area/derelict/bridge/access)
"bl" = (/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plasteel,/area/derelict/bridge/access)
"bm" = (/obj/item/stack/cable_coil/cut,/turf/simulated/floor/plating/airless,/area/space)
-"bn" = (/turf/simulated/floor/airless{icon_state = "solarpanel"},/area/space)
+"bn" = (/turf/simulated/floor/plasteel/airless{icon_state = "solarpanel"},/area/space)
"bo" = (/obj/item/stack/cable_coil/cut,/turf/space,/area/space)
"bp" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plasteel,/area/derelict/bridge/access)
"bq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/derelict/bridge/access)
@@ -77,7 +77,7 @@
"by" = (/obj/structure/sign/electricshock,/turf/simulated/wall/r_wall,/area/derelict/singularity_engine)
"bz" = (/obj/structure/sign/securearea,/turf/simulated/wall/r_wall,/area/derelict/singularity_engine)
"bA" = (/obj/machinery/door/airlock/engineering{name = "Engineering Access"; req_access_txt = "10"},/turf/simulated/floor/plating/airless,/area/derelict/singularity_engine)
-"bB" = (/obj/machinery/door/airlock/engineering{name = "Engineering Access"; req_access_txt = "10"},/turf/simulated/floor/airless{icon_state = "damaged5"},/area/derelict/singularity_engine)
+"bB" = (/obj/machinery/door/airlock/engineering{name = "Engineering Access"; req_access_txt = "10"},/turf/simulated/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/singularity_engine)
"bC" = (/obj/structure/sign/securearea{name = "ENGINEERING ACCESS"},/turf/simulated/wall/r_wall,/area/derelict/singularity_engine)
"bD" = (/obj/structure/computerframe,/turf/simulated/floor/plasteel,/area/derelict/bridge)
"bE" = (/obj/structure/computerframe,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plasteel,/area/derelict/bridge)
@@ -87,47 +87,47 @@
"bI" = (/obj/structure/table,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plasteel,/area/derelict/bridge)
"bJ" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/turf/simulated/floor/plasteel,/area/derelict/bridge)
"bK" = (/obj/item/weapon/grenade/empgrenade,/obj/structure/table,/turf/simulated/floor/plasteel,/area/derelict/bridge)
-"bL" = (/turf/simulated/floor/airless{icon_state = "damaged3"},/area/derelict/singularity_engine)
-"bM" = (/turf/simulated/floor/airless{icon_state = "damaged4"},/area/derelict/singularity_engine)
-"bN" = (/turf/simulated/floor/airless{icon_state = "damaged5"},/area/derelict/singularity_engine)
-"bO" = (/obj/item/stack/cable_coil/cut,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/airless{icon_state = "damaged3"},/area/derelict/singularity_engine)
+"bL" = (/turf/simulated/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/singularity_engine)
+"bM" = (/turf/simulated/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/singularity_engine)
+"bN" = (/turf/simulated/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/singularity_engine)
+"bO" = (/obj/item/stack/cable_coil/cut,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/singularity_engine)
"bP" = (/turf/simulated/floor/plating/airless,/area/derelict/singularity_engine)
"bQ" = (/turf/simulated/wall,/area/derelict/singularity_engine)
"bR" = (/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/simulated/floor/plasteel,/area/derelict/bridge)
"bS" = (/turf/simulated/floor/plasteel,/area/derelict/bridge)
"bT" = (/turf/simulated/floor/plating,/area/derelict/bridge)
"bU" = (/obj/structure/table,/obj/item/weapon/paper/crumpled,/turf/simulated/floor/plasteel,/area/derelict/bridge)
-"bV" = (/obj/machinery/portable_atmospherics/canister/toxins,/turf/simulated/floor/airless{icon_state = "damaged3"},/area/derelict/singularity_engine)
-"bW" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/airless{icon_state = "damaged2"},/area/derelict/singularity_engine)
+"bV" = (/obj/machinery/portable_atmospherics/canister/toxins,/turf/simulated/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/singularity_engine)
+"bW" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine)
"bX" = (/obj/machinery/power/emitter{dir = 1; icon_state = "emitter"},/turf/simulated/floor/plating/airless,/area/derelict/singularity_engine)
"bY" = (/obj/machinery/field/generator,/turf/simulated/floor/plating/airless,/area/derelict/singularity_engine)
"bZ" = (/obj/item/stack/rods,/turf/simulated/floor/plating/airless,/area/space)
"ca" = (/obj/structure/grille,/turf/simulated/floor/plating/airless,/area/derelict/singularity_engine)
"cb" = (/obj/structure/noticeboard,/turf/simulated/wall,/area/derelict/singularity_engine)
-"cc" = (/turf/simulated/floor/airless{icon_state = "damaged2"},/area/derelict/singularity_engine)
+"cc" = (/turf/simulated/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine)
"cd" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plasteel,/area/derelict/bridge/access)
"ce" = (/obj/machinery/door/window/eastleft{name = "Heads of Staff"; req_access_txt = "19"},/turf/simulated/floor/plasteel,/area/derelict/bridge/access)
"cf" = (/obj/structure/table,/obj/item/device/paicard,/turf/simulated/floor/plasteel,/area/derelict/bridge)
"cg" = (/obj/structure/stool,/turf/simulated/floor/plasteel,/area/derelict/bridge)
"ch" = (/obj/structure/table,/obj/item/weapon/stock_parts/cell,/turf/simulated/floor/plasteel,/area/derelict/bridge)
-"ci" = (/obj/item/weapon/storage/toolbox/syndicate,/turf/simulated/floor/airless{icon_state = "damaged2"},/area/derelict/singularity_engine)
-"cj" = (/obj/item/stack/cable_coil/cut,/turf/simulated/floor/airless{icon_state = "damaged4"},/area/derelict/singularity_engine)
+"ci" = (/obj/item/weapon/storage/toolbox/syndicate,/turf/simulated/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine)
+"cj" = (/obj/item/stack/cable_coil/cut,/turf/simulated/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/singularity_engine)
"ck" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plasteel,/area/derelict/bridge/access)
"cl" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plasteel,/area/derelict/bridge/access)
"cm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating,/area/derelict/bridge/access)
"cn" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plasteel,/area/derelict/bridge)
"co" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel,/area/derelict/bridge)
"cp" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plasteel,/area/derelict/bridge)
-"cq" = (/obj/item/weapon/paper{info = "Objective #1: Destroy the station with a nuclear device."; name = "Objectives of a Nuclear Operative"},/turf/simulated/floor/airless{icon_state = "damaged2"},/area/derelict/singularity_engine)
+"cq" = (/obj/item/weapon/paper{info = "Objective #1: Destroy the station with a nuclear device."; name = "Objectives of a Nuclear Operative"},/turf/simulated/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine)
"cr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plasteel,/area/derelict/bridge)
"cs" = (/obj/structure/stool/bed/chair,/turf/simulated/floor/plasteel,/area/derelict/bridge)
"ct" = (/obj/structure/table,/obj/item/weapon/screwdriver,/turf/simulated/floor/plasteel,/area/derelict/bridge)
"cu" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/simulated/floor/plasteel,/area/derelict/bridge)
"cv" = (/obj/item/stack/rods,/turf/space,/area/space)
-"cw" = (/obj/item/weapon/shard,/obj/structure/grille{density = 0; icon_state = "brokengrille"},/obj/effect/decal/remains/human{desc = "This guy seemed to have died in terrible way! Half his remains are dust."; icon_state = "remains"; name = "Syndicate agent remains"},/turf/simulated/floor/airless{icon_state = "damaged2"},/area/derelict/singularity_engine)
+"cw" = (/obj/item/weapon/shard,/obj/structure/grille{density = 0; icon_state = "brokengrille"},/obj/effect/decal/remains/human{desc = "This guy seemed to have died in terrible way! Half his remains are dust."; icon_state = "remains"; name = "Syndicate agent remains"},/turf/simulated/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine)
"cx" = (/obj/item/clothing/suit/space/syndicate/black/engie,/turf/simulated/floor/plating/airless,/area/derelict/singularity_engine)
"cy" = (/obj/item/stack/rods,/turf/simulated/floor/plating/airless,/area/derelict/singularity_engine)
-"cz" = (/obj/item/weapon/shard,/turf/simulated/floor/airless{icon_state = "damaged5"},/area/derelict/singularity_engine)
+"cz" = (/obj/item/weapon/shard,/turf/simulated/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/singularity_engine)
"cA" = (/obj/structure/table,/obj/item/weapon/rack_parts,/turf/simulated/floor/plasteel,/area/derelict/bridge)
"cB" = (/obj/structure/table,/obj/structure/window,/turf/simulated/floor/plasteel,/area/derelict/bridge)
"cC" = (/obj/structure/window,/turf/simulated/floor/plasteel,/area/derelict/bridge)
@@ -139,68 +139,68 @@
"cI" = (/turf/simulated/wall/r_wall,/area/derelict/bridge)
"cJ" = (/obj/machinery/door/window{dir = 2; name = "Captain's Quarters"; req_access_txt = "20"},/obj/structure/grille,/turf/simulated/floor/plating/airless,/area/derelict/bridge)
"cK" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating/airless,/area/derelict/singularity_engine)
-"cL" = (/obj/item/stack/cable_coil/cut,/turf/simulated/floor/airless{icon_state = "damaged5"},/area/derelict/singularity_engine)
-"cM" = (/turf/simulated/floor/airless,/area/derelict/bridge/access)
-"cN" = (/obj/structure/table,/obj/item/device/aicard,/turf/simulated/floor/airless,/area/derelict/bridge/access)
-"cO" = (/obj/structure/table,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/airless,/area/derelict/bridge/access)
-"cP" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/turf/simulated/floor/airless,/area/derelict/bridge/access)
-"cQ" = (/obj/structure/table,/obj/item/weapon/stock_parts/cell{charge = 100; maxcharge = 15000},/turf/simulated/floor/airless,/area/derelict/bridge/access)
-"cR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/airless,/area/derelict/bridge/access)
+"cL" = (/obj/item/stack/cable_coil/cut,/turf/simulated/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/singularity_engine)
+"cM" = (/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/access)
+"cN" = (/obj/structure/table,/obj/item/device/aicard,/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/access)
+"cO" = (/obj/structure/table,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/access)
+"cP" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/access)
+"cQ" = (/obj/structure/table,/obj/item/weapon/stock_parts/cell{charge = 100; maxcharge = 15000},/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/access)
+"cR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/access)
"cS" = (/obj/structure/girder,/turf/simulated/floor/plating/airless,/area/space)
-"cT" = (/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/airless,/area/derelict/bridge/access)
-"cU" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/airless,/area/derelict/bridge/access)
+"cT" = (/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/access)
+"cU" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/access)
"cV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating/airless,/area/derelict/bridge/access)
-"cW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/airless,/area/derelict/bridge/access)
-"cX" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/airless,/area/derelict/bridge/access)
-"cY" = (/obj/item/stack/cable_coil/cut,/turf/simulated/floor/airless{icon_state = "damaged3"},/area/derelict/singularity_engine)
-"cZ" = (/obj/item/stack/cable_coil/cut,/turf/simulated/floor/airless{icon_state = "damaged2"},/area/derelict/singularity_engine)
-"da" = (/obj/structure/grille,/turf/simulated/floor/airless{icon_state = "damaged2"},/area/derelict/singularity_engine)
-"db" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/airless,/area/derelict/bridge/access)
+"cW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/access)
+"cX" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/access)
+"cY" = (/obj/item/stack/cable_coil/cut,/turf/simulated/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/singularity_engine)
+"cZ" = (/obj/item/stack/cable_coil/cut,/turf/simulated/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine)
+"da" = (/obj/structure/grille,/turf/simulated/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine)
+"db" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/access)
"dc" = (/turf/simulated/floor/plating/airless,/area/derelict/bridge/access)
-"dd" = (/obj/structure/table,/turf/simulated/floor/airless{icon_state = "damaged2"},/area/derelict/singularity_engine)
+"dd" = (/obj/structure/table,/turf/simulated/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine)
"de" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/simulated/floor/plating/airless,/area/derelict/singularity_engine)
-"df" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/simulated/floor/airless{icon_state = "damaged5"},/area/derelict/singularity_engine)
-"dg" = (/obj/structure/grille,/turf/simulated/floor/airless{icon_state = "damaged3"},/area/derelict/singularity_engine)
-"dh" = (/obj/machinery/door/airlock/maintenance{name = "Tech Storage"; req_access_txt = "23"},/turf/simulated/floor/airless,/area/derelict/bridge/access)
+"df" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/simulated/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/singularity_engine)
+"dg" = (/obj/structure/grille,/turf/simulated/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/singularity_engine)
+"dh" = (/obj/machinery/door/airlock/maintenance{name = "Tech Storage"; req_access_txt = "23"},/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/access)
"di" = (/obj/structure/grille,/turf/simulated/floor/plating/airless,/area/derelict/bridge/access)
-"dj" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 0; name = "Worn-out APC"; pixel_y = -24},/turf/simulated/floor/airless,/area/derelict/bridge/access)
+"dj" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 0; name = "Worn-out APC"; pixel_y = -24},/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/access)
"dk" = (/obj/item/weapon/screwdriver,/turf/simulated/floor/plating/airless,/area/derelict/singularity_engine)
-"dl" = (/obj/item/stack/rods,/turf/simulated/floor/airless{icon_state = "damaged2"},/area/derelict/singularity_engine)
+"dl" = (/obj/item/stack/rods,/turf/simulated/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine)
"dm" = (/obj/item/weapon/shard{icon_state = "medium"},/obj/item/stack/cable_coil/cut,/turf/simulated/floor/plating/airless,/area/derelict/singularity_engine)
-"dn" = (/obj/structure/table,/obj/machinery/light/small{dir = 4},/turf/simulated/floor/airless{icon_state = "damaged2"},/area/derelict/singularity_engine)
+"dn" = (/obj/structure/table,/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine)
"do" = (/turf/simulated/wall,/area/derelict/hallway/primary)
-"dp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/airless{icon_state = "damaged3"},/area/derelict/hallway/primary)
-"dq" = (/turf/simulated/floor/airless{icon_state = "damaged2"},/area/derelict/hallway/primary)
-"dr" = (/turf/simulated/floor/airless,/area/derelict/hallway/primary)
+"dp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/hallway/primary)
+"dq" = (/turf/simulated/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/hallway/primary)
+"dr" = (/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
"ds" = (/obj/item/weapon/ore/slag,/turf/simulated/floor/plating/airless,/area/derelict/singularity_engine)
"dt" = (/obj/item/weapon/shard,/turf/simulated/floor/plating/airless,/area/derelict/singularity_engine)
"du" = (/turf/simulated/wall/r_wall,/area/derelict/hallway/primary)
"dv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating/airless,/area/derelict/hallway/primary)
-"dw" = (/turf/simulated/floor/airless{icon_state = "damaged3"},/area/derelict/hallway/primary)
-"dx" = (/obj/structure/window{dir = 4},/turf/simulated/floor/airless,/area/derelict/hallway/primary)
+"dw" = (/turf/simulated/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/hallway/primary)
+"dx" = (/obj/structure/window{dir = 4},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
"dy" = (/obj/structure/grille,/obj/item/weapon/shard{icon_state = "medium"},/turf/simulated/floor/plating/airless,/area/derelict/singularity_engine)
"dz" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating/airless,/area/derelict/hallway/primary)
"dA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless,/area/derelict/hallway/primary)
-"dB" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/airless{icon_state = "damaged3"},/area/derelict/hallway/primary)
-"dC" = (/turf/simulated/floor/airless{icon_state = "floorscorched2"},/area/derelict/hallway/primary)
-"dD" = (/obj/machinery/light/small,/turf/simulated/floor/airless,/area/derelict/hallway/primary)
+"dB" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/hallway/primary)
+"dC" = (/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched2"},/area/derelict/hallway/primary)
+"dD" = (/obj/machinery/light/small,/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
"dE" = (/obj/structure/grille,/obj/structure/window{dir = 8},/turf/simulated/floor/plating/airless,/area/space)
-"dF" = (/turf/simulated/floor/airless{icon_state = "floorscorched2"},/area/space)
-"dG" = (/turf/simulated/floor/airless{icon_state = "damaged2"},/area/space)
+"dF" = (/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched2"},/area/space)
+"dG" = (/turf/simulated/floor/plasteel/airless{icon_state = "damaged2"},/area/space)
"dH" = (/obj/machinery/door/window,/turf/simulated/floor/plating/airless,/area/derelict/hallway/primary)
-"dI" = (/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/space)
-"dJ" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/simulated/floor/airless{icon_state = "damaged2"},/area/derelict/singularity_engine)
+"dI" = (/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched1"},/area/space)
+"dJ" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/simulated/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine)
"dK" = (/obj/structure/grille{density = 0; icon_state = "brokengrille"},/turf/simulated/floor/plating/airless,/area/derelict/singularity_engine)
-"dL" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/airless{icon_state = "damaged3"},/area/derelict/singularity_engine)
+"dL" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/singularity_engine)
"dM" = (/turf/simulated/floor/plating/airless,/area/derelict/hallway/primary)
-"dN" = (/obj/item/weapon/crowbar,/turf/simulated/floor/airless,/area/derelict/hallway/primary)
-"dO" = (/obj/structure/grille,/turf/simulated/floor/airless,/area/derelict/hallway/primary)
-"dP" = (/turf/simulated/floor/airless{icon_state = "damaged3"},/area/space)
+"dN" = (/obj/item/weapon/crowbar,/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
+"dO" = (/obj/structure/grille,/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
+"dP" = (/turf/simulated/floor/plasteel/airless{icon_state = "damaged3"},/area/space)
"dQ" = (/obj/item/weapon/shard{icon_state = "small"},/obj/item/weapon/shard{icon_state = "medium"},/turf/simulated/floor/plating/airless,/area/derelict/singularity_engine)
"dR" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating/airless,/area/derelict/hallway/primary)
"dS" = (/turf/simulated/wall/r_wall,/area/derelict/arrival)
"dT" = (/turf/simulated/wall,/area/derelict/arrival)
-"dU" = (/obj/machinery/light/small,/turf/simulated/floor/airless{icon_state = "damaged2"},/area/derelict/hallway/primary)
+"dU" = (/obj/machinery/light/small,/turf/simulated/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/hallway/primary)
"dV" = (/obj/structure/window{dir = 5},/turf/space,/area/space)
"dW" = (/obj/structure/table,/turf/simulated/floor/plasteel,/area/derelict/arrival)
"dX" = (/obj/structure/stool/bed/chair,/turf/simulated/floor/plasteel,/area/derelict/arrival)
@@ -211,11 +211,11 @@
"ec" = (/turf/simulated/wall,/area/derelict/medical/chapel)
"ed" = (/obj/item/weapon/shard,/turf/space,/area/space)
"ee" = (/obj/structure/grille,/turf/space,/area/derelict/singularity_engine)
-"ef" = (/obj/item/weapon/shard,/turf/simulated/floor/airless{icon_state = "damaged2"},/area/derelict/singularity_engine)
+"ef" = (/obj/item/weapon/shard,/turf/simulated/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine)
"eg" = (/obj/structure/lattice,/obj/structure/window,/turf/space,/area/space)
-"eh" = (/turf/simulated/floor/airless{icon_state = "floorscorched2"},/area/derelict/arrival)
+"eh" = (/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched2"},/area/derelict/arrival)
"ei" = (/turf/simulated/floor/plating/airless,/area/derelict/arrival)
-"ej" = (/turf/simulated/floor/airless{icon_state = "damaged3"},/area/derelict/arrival)
+"ej" = (/turf/simulated/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/arrival)
"ek" = (/turf/simulated/floor/plasteel{icon_state = "dark"},/area/derelict/medical/chapel)
"el" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/derelict/medical/chapel)
"em" = (/obj/structure/closet/coffin,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/derelict/medical/chapel)
@@ -226,106 +226,106 @@
"er" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/simulated/floor/plating/airless,/area/derelict/medical)
"es" = (/obj/machinery/door/airlock/external{name = "External Engineering"},/turf/simulated/floor/plating/airless,/area/space)
"et" = (/obj/structure/grille,/turf/space,/area/space)
-"eu" = (/turf/simulated/floor/airless{icon_state = "damaged4"},/area/derelict/hallway/primary)
+"eu" = (/turf/simulated/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/hallway/primary)
"ev" = (/obj/machinery/door/window{dir = 8},/turf/simulated/floor/plasteel,/area/derelict/arrival)
-"ew" = (/turf/simulated/floor/airless{icon_state = "white"},/area/derelict/medical)
-"ex" = (/obj/item/weapon/firstaid_arm_assembly,/turf/simulated/floor/airless{icon_state = "white"},/area/derelict/medical)
-"ey" = (/turf/simulated/floor/airless{icon_state = "damaged2"},/area/derelict/medical)
-"ez" = (/turf/simulated/floor/airless{icon_state = "damaged3"},/area/derelict/medical)
+"ew" = (/turf/simulated/floor/plasteel/airless{icon_state = "white"},/area/derelict/medical)
+"ex" = (/obj/item/weapon/firstaid_arm_assembly,/turf/simulated/floor/plasteel/airless{icon_state = "white"},/area/derelict/medical)
+"ey" = (/turf/simulated/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/medical)
+"ez" = (/turf/simulated/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/medical)
"eA" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/plating/airless,/area/derelict/medical)
-"eB" = (/obj/machinery/light/small,/turf/simulated/floor/airless{icon_state = "damaged4"},/area/derelict/singularity_engine)
+"eB" = (/obj/machinery/light/small,/turf/simulated/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/singularity_engine)
"eC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plating/airless,/area/derelict/hallway/primary)
"eD" = (/obj/structure/window{dir = 4},/turf/simulated/floor/plating/airless,/area/derelict/hallway/primary)
"eE" = (/obj/structure/lattice,/obj/structure/window{dir = 1},/turf/space,/area/space)
"eF" = (/obj/structure/lattice,/obj/structure/lattice,/obj/structure/window{dir = 1},/turf/space,/area/space)
"eG" = (/turf/simulated/floor/plating,/area/derelict/arrival)
"eH" = (/obj/machinery/door/airlock/medical{name = "Morgue"; req_access_txt = "6"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/derelict/medical/chapel)
-"eI" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/airless{icon_state = "white"},/area/derelict/medical)
-"eJ" = (/obj/item/stack/medical/bruise_pack,/turf/simulated/floor/airless{icon_state = "white"},/area/derelict/medical)
-"eK" = (/turf/simulated/floor/airless{icon_state = "damaged5"},/area/space)
+"eI" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/plasteel/airless{icon_state = "white"},/area/derelict/medical)
+"eJ" = (/obj/item/stack/medical/bruise_pack,/turf/simulated/floor/plasteel/airless{icon_state = "white"},/area/derelict/medical)
+"eK" = (/turf/simulated/floor/plasteel/airless{icon_state = "damaged5"},/area/space)
"eL" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plasteel,/area/derelict/arrival)
"eM" = (/obj/machinery/light/small,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/derelict/medical/chapel)
"eN" = (/obj/item/weapon/storage/box/lights/mixed,/turf/simulated/floor/plating/airless,/area/derelict/singularity_engine)
-"eO" = (/turf/simulated/floor/airless{icon_state = "damaged4"},/area/space)
+"eO" = (/turf/simulated/floor/plasteel/airless{icon_state = "damaged4"},/area/space)
"eP" = (/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/floor/plasteel,/area/derelict/arrival)
"eQ" = (/obj/machinery/door/morgue{name = "coffin storage"; req_access_txt = "22"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/derelict/medical/chapel)
"eR" = (/obj/structure/bodycontainer/morgue,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/derelict/medical/chapel)
-"eS" = (/obj/structure/table,/turf/simulated/floor/airless{icon_state = "white"},/area/derelict/medical)
-"eT" = (/turf/simulated/floor/airless{icon_state = "white"},/area/space)
-"eU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/airless{icon_state = "damaged2"},/area/derelict/hallway/primary)
+"eS" = (/obj/structure/table,/turf/simulated/floor/plasteel/airless{icon_state = "white"},/area/derelict/medical)
+"eT" = (/turf/simulated/floor/plasteel/airless{icon_state = "white"},/area/space)
+"eU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/hallway/primary)
"eV" = (/obj/structure/table,/turf/simulated/floor/plasteel{dir = 1; icon_state = "chapel"},/area/derelict/medical/chapel)
"eW" = (/turf/simulated/floor/plasteel{dir = 4; icon_state = "chapel"},/area/derelict/medical/chapel)
"eX" = (/turf/simulated/floor/plasteel{dir = 1; icon_state = "chapel"},/area/derelict/medical/chapel)
-"eY" = (/obj/item/weapon/shard{icon_state = "small"},/turf/simulated/floor/airless{icon_state = "white"},/area/derelict/medical)
-"eZ" = (/obj/item/stack/medical/bruise_pack,/turf/simulated/floor/airless{icon_state = "damaged2"},/area/derelict/medical)
-"fa" = (/obj/item/stack/medical/ointment,/turf/simulated/floor/airless{icon_state = "damaged3"},/area/derelict/medical)
+"eY" = (/obj/item/weapon/shard{icon_state = "small"},/turf/simulated/floor/plasteel/airless{icon_state = "white"},/area/derelict/medical)
+"eZ" = (/obj/item/stack/medical/bruise_pack,/turf/simulated/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/medical)
+"fa" = (/obj/item/stack/medical/ointment,/turf/simulated/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/medical)
"fb" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor/plating/airless,/area/derelict/medical)
"fc" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/space,/area/space)
"fd" = (/obj/structure/table,/turf/simulated/floor/plasteel{dir = 8; icon_state = "chapel"},/area/derelict/medical/chapel)
"fe" = (/turf/simulated/floor/plasteel{icon_state = "chapel"},/area/derelict/medical/chapel)
"ff" = (/turf/simulated/floor/plasteel{dir = 8; icon_state = "chapel"},/area/derelict/medical/chapel)
-"fg" = (/obj/item/weapon/cigbutt,/turf/simulated/floor/airless{icon_state = "white"},/area/derelict/medical)
+"fg" = (/obj/item/weapon/cigbutt,/turf/simulated/floor/plasteel/airless{icon_state = "white"},/area/derelict/medical)
"fh" = (/obj/machinery/door/airlock/glass{name = "Med-Sci"; req_access_txt = "9"},/turf/simulated/floor/plating/airless,/area/derelict/medical)
-"fi" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/airless,/area/derelict/hallway/primary)
+"fi" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
"fj" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plasteel,/area/derelict/arrival)
"fk" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/wall,/area/derelict/medical/chapel)
"fl" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/wall,/area/derelict/medical/chapel)
-"fm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/airless{icon_state = "white"},/area/derelict/medical)
-"fn" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/airless{icon_state = "white"},/area/derelict/medical)
-"fo" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/airless{icon_state = "white"},/area/derelict/medical)
-"fp" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/airless{icon_state = "white"},/area/derelict/medical)
-"fq" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/airless{icon_state = "damaged2"},/area/derelict/medical)
-"fr" = (/obj/structure/closet/wardrobe/genetics_white,/turf/simulated/floor/airless{icon_state = "white"},/area/derelict/medical)
+"fm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/plasteel/airless{icon_state = "white"},/area/derelict/medical)
+"fn" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel/airless{icon_state = "white"},/area/derelict/medical)
+"fo" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plasteel/airless{icon_state = "white"},/area/derelict/medical)
+"fp" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plasteel/airless{icon_state = "white"},/area/derelict/medical)
+"fq" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/medical)
+"fr" = (/obj/structure/closet/wardrobe/genetics_white,/turf/simulated/floor/plasteel/airless{icon_state = "white"},/area/derelict/medical)
"fs" = (/obj/item/weapon/shard,/turf/simulated/floor/plating/airless,/area/space)
"ft" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/simulated/floor/plating/airless,/area/space)
-"fu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/airless,/area/derelict/hallway/primary)
-"fv" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/airless,/area/derelict/hallway/primary)
+"fu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
+"fv" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
"fw" = (/obj/item/weapon/pen,/turf/simulated/floor/plasteel,/area/derelict/arrival)
"fx" = (/obj/machinery/door/poddoor{id = "derelict_gun"; name = "Derelict Mass Driver"},/turf/simulated/floor/plating,/area/derelict/medical/chapel)
"fy" = (/turf/simulated/floor/plating,/area/derelict/medical/chapel)
"fz" = (/obj/machinery/mass_driver{dir = 8; icon_state = "mass_driver"; id = "derelict_gun"},/obj/machinery/door/window{dir = 4; req_access_txt = "25"},/obj/structure/closet/coffin,/turf/simulated/floor/plating,/area/derelict/medical/chapel)
-"fA" = (/obj/machinery/door/window{dir = 8},/turf/simulated/floor/airless,/area/derelict/medical/chapel)
-"fB" = (/turf/simulated/floor/airless,/area/derelict/medical/chapel)
-"fC" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/airless,/area/derelict/medical/chapel)
-"fD" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 4; name = "Worn-out APC"; pixel_x = 24; pixel_y = 0},/turf/simulated/floor/airless,/area/derelict/medical/chapel)
-"fE" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 8},/turf/simulated/floor/airless{icon_state = "white"},/area/derelict/medical)
-"fF" = (/obj/machinery/power/apc{dir = 0; name = "Worn-out APC"; pixel_y = -24},/obj/structure/cable,/turf/simulated/floor/airless{icon_state = "white"},/area/derelict/medical)
-"fG" = (/obj/item/stack/medical/ointment,/turf/simulated/floor/airless{icon_state = "white"},/area/derelict/medical)
-"fH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/airless{icon_state = "white"},/area/derelict/medical)
-"fI" = (/obj/structure/closet/l3closet/general,/turf/simulated/floor/airless{icon_state = "white"},/area/derelict/medical)
+"fA" = (/obj/machinery/door/window{dir = 8},/turf/simulated/floor/plasteel/airless,/area/derelict/medical/chapel)
+"fB" = (/turf/simulated/floor/plasteel/airless,/area/derelict/medical/chapel)
+"fC" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plasteel/airless,/area/derelict/medical/chapel)
+"fD" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 4; name = "Worn-out APC"; pixel_x = 24; pixel_y = 0},/turf/simulated/floor/plasteel/airless,/area/derelict/medical/chapel)
+"fE" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 8},/turf/simulated/floor/plasteel/airless{icon_state = "white"},/area/derelict/medical)
+"fF" = (/obj/machinery/power/apc{dir = 0; name = "Worn-out APC"; pixel_y = -24},/obj/structure/cable,/turf/simulated/floor/plasteel/airless{icon_state = "white"},/area/derelict/medical)
+"fG" = (/obj/item/stack/medical/ointment,/turf/simulated/floor/plasteel/airless{icon_state = "white"},/area/derelict/medical)
+"fH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel/airless{icon_state = "white"},/area/derelict/medical)
+"fI" = (/obj/structure/closet/l3closet/general,/turf/simulated/floor/plasteel/airless{icon_state = "white"},/area/derelict/medical)
"fJ" = (/obj/structure/window,/turf/space,/area/space)
"fK" = (/obj/structure/window{dir = 8},/turf/space,/area/space)
"fL" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/plasteel,/area/derelict/arrival)
"fM" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor/plasteel,/area/derelict/arrival)
"fN" = (/obj/structure/grille,/turf/simulated/floor/plating,/area/derelict/arrival)
-"fO" = (/obj/machinery/door/window,/turf/simulated/floor/airless,/area/derelict/medical/chapel)
-"fP" = (/obj/machinery/door/window/southleft,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/airless{icon_state = "white"},/area/derelict/medical)
-"fQ" = (/obj/machinery/door/window/southright,/turf/simulated/floor/airless{icon_state = "white"},/area/derelict/medical)
-"fR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/airless,/area/derelict/hallway/primary)
-"fS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/airless,/area/derelict/hallway/primary)
-"fT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/airless{icon_state = "damaged2"},/area/derelict/hallway/primary)
-"fU" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/research{name = "Toxins Research"; req_access_txt = "7"},/turf/simulated/floor/airless,/area/derelict/hallway/primary)
+"fO" = (/obj/machinery/door/window,/turf/simulated/floor/plasteel/airless,/area/derelict/medical/chapel)
+"fP" = (/obj/machinery/door/window/southleft,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel/airless{icon_state = "white"},/area/derelict/medical)
+"fQ" = (/obj/machinery/door/window/southright,/turf/simulated/floor/plasteel/airless{icon_state = "white"},/area/derelict/medical)
+"fR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
+"fS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
+"fT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/hallway/primary)
+"fU" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/research{name = "Toxins Research"; req_access_txt = "7"},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
"fV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless,/area/space)
"fW" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating/airless,/area/space)
"fX" = (/obj/structure/window{dir = 8},/obj/structure/window,/turf/space,/area/space)
"fY" = (/obj/structure/lattice,/obj/structure/grille,/turf/space,/area/space)
"fZ" = (/obj/machinery/door/airlock/external{name = "Arrivals Docking Bay 1"},/turf/simulated/floor/plating,/area/derelict/arrival)
-"ga" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/airless,/area/derelict/hallway/primary)
-"gb" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/airless,/area/space)
-"gc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/airless,/area/space)
-"gd" = (/obj/structure/window{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/airless,/area/space)
+"ga" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
+"gb" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plasteel/airless,/area/space)
+"gc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel/airless,/area/space)
+"gd" = (/obj/structure/window{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel/airless,/area/space)
"ge" = (/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless,/area/space)
-"gf" = (/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/airless,/area/space)
+"gf" = (/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel/airless,/area/space)
"gg" = (/obj/structure/window,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless,/area/space)
-"gh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/research{name = "Toxins Research"; req_access_txt = "7"},/turf/simulated/floor/airless,/area/derelict/arrival)
+"gh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/research{name = "Toxins Research"; req_access_txt = "7"},/turf/simulated/floor/plasteel/airless,/area/derelict/arrival)
"gi" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel,/area/derelict/arrival)
"gj" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/derelict/arrival)
"gk" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plasteel,/area/derelict/arrival)
"gl" = (/obj/machinery/light/small,/turf/simulated/floor/plasteel{dir = 4; icon_state = "chapel"},/area/derelict/medical/chapel)
-"gm" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/airless,/area/derelict/hallway/primary)
-"gn" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/airless,/area/derelict/hallway/primary)
-"go" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/airless,/area/derelict/hallway/primary)
-"gp" = (/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/turf/simulated/floor/airless,/area/derelict/hallway/primary)
+"gm" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
+"gn" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
+"go" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
+"gp" = (/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
"gq" = (/obj/structure/window{dir = 1},/turf/space,/area/space)
"gr" = (/obj/structure/window{dir = 5},/turf/simulated/floor/plating/airless,/area/space)
"gs" = (/obj/structure/grille,/obj/structure/window{dir = 1},/turf/space,/area/space)
@@ -333,45 +333,45 @@
"gu" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 0; name = "Worn-out APC"; pixel_y = -24},/turf/simulated/floor/plasteel,/area/derelict/arrival)
"gv" = (/obj/machinery/portable_atmospherics/scrubber,/turf/simulated/floor/plasteel,/area/derelict/arrival)
"gw" = (/obj/structure/table,/obj/machinery/computer/pod/old{name = "ProComp IIe"; pixel_y = 7; id = "derelict_gun"},/turf/simulated/floor/plasteel{icon_state = "chapel"},/area/derelict/medical/chapel)
-"gx" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"},/turf/simulated/floor/airless,/area/derelict/hallway/primary)
-"gy" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/airless,/area/derelict/hallway/primary)
-"gz" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/airless,/area/derelict/hallway/primary)
-"gA" = (/obj/structure/girder,/turf/simulated/floor/airless,/area/derelict/hallway/primary)
+"gx" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
+"gy" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
+"gz" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
+"gA" = (/obj/structure/girder,/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
"gB" = (/obj/machinery/portable_atmospherics/pump,/turf/simulated/floor/plasteel,/area/derelict/arrival)
-"gC" = (/obj/machinery/door/window,/turf/simulated/floor/airless,/area/derelict/hallway/primary)
-"gD" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/airless,/area/derelict/hallway/primary)
-"gE" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/airless,/area/derelict/hallway/primary)
-"gF" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/airless,/area/derelict/hallway/primary)
+"gC" = (/obj/machinery/door/window,/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
+"gD" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
+"gE" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
+"gF" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
"gG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/wall/r_wall,/area/derelict/hallway/primary)
"gH" = (/obj/machinery/door/airlock/security{name = "Gas Storage"; req_access = null; req_access_txt = "3"},/turf/simulated/floor/plating/airless,/area/derelict/hallway/primary)
"gI" = (/obj/structure/lattice,/obj/structure/window{dir = 4},/turf/space,/area/space)
"gJ" = (/obj/structure/girder,/obj/structure/window,/turf/simulated/floor/plating/airless,/area/derelict/arrival)
-"gK" = (/obj/structure/stool/bed,/turf/simulated/floor/airless,/area/derelict/hallway/primary)
+"gK" = (/obj/structure/stool/bed,/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
"gL" = (/obj/structure/grille,/turf/simulated/floor/plating/airless,/area/derelict/hallway/primary)
-"gM" = (/obj/machinery/door/airlock/security{name = "Security"; req_access = null; req_access_txt = "1"},/turf/simulated/floor/airless,/area/derelict/hallway/primary)
+"gM" = (/obj/machinery/door/airlock/security{name = "Security"; req_access = null; req_access_txt = "1"},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
"gN" = (/obj/item/weapon/cigbutt,/turf/space,/area/space)
"gO" = (/obj/structure/window{dir = 1},/turf/simulated/floor/plating,/area/derelict/arrival)
"gP" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/plasteel,/area/derelict/arrival)
-"gQ" = (/obj/structure/table,/turf/simulated/floor/airless,/area/derelict/hallway/primary)
-"gR" = (/obj/structure/table,/obj/item/weapon/stock_parts/cell,/turf/simulated/floor/airless,/area/derelict/hallway/primary)
-"gS" = (/obj/machinery/vending/sovietsoda,/turf/simulated/floor/airless,/area/derelict/hallway/primary)
-"gT" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 0; name = "Worn-out APC"; pixel_y = -24},/turf/simulated/floor/airless,/area/derelict/hallway/primary)
-"gU" = (/obj/structure/table,/turf/simulated/floor/airless,/area/space)
-"gV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/airless,/area/space)
+"gQ" = (/obj/structure/table,/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
+"gR" = (/obj/structure/table,/obj/item/weapon/stock_parts/cell,/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
+"gS" = (/obj/machinery/vending/sovietsoda,/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
+"gT" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 0; name = "Worn-out APC"; pixel_y = -24},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
+"gU" = (/obj/structure/table,/turf/simulated/floor/plasteel/airless,/area/space)
+"gV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel/airless,/area/space)
"gW" = (/obj/structure/lattice,/obj/item/stack/cable_coil/cut,/turf/space,/area/space)
"gX" = (/obj/structure/girder,/turf/simulated/floor/plating,/area/derelict/arrival)
-"gY" = (/obj/structure/stool,/turf/simulated/floor/airless,/area/derelict/hallway/primary)
+"gY" = (/obj/structure/stool,/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
"gZ" = (/obj/machinery/door/airlock/maintenance{name = "Atmospherics Access"; req_access_txt = "24"},/turf/simulated/floor/plating/airless,/area/derelict/hallway/primary)
-"ha" = (/obj/structure/closet/wardrobe/orange,/turf/simulated/floor/airless,/area/space)
+"ha" = (/obj/structure/closet/wardrobe/orange,/turf/simulated/floor/plasteel/airless,/area/space)
"hb" = (/obj/structure/window{dir = 4},/turf/space,/area/space)
"hc" = (/obj/structure/closet/wardrobe,/turf/simulated/floor/plasteel,/area/derelict/arrival)
-"hd" = (/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/derelict/hallway/primary)
+"hd" = (/turf/simulated/floor/plasteel/airless{icon_state = "floorscorched1"},/area/derelict/hallway/primary)
"he" = (/obj/structure/grille,/obj/structure/grille,/turf/simulated/floor/plating/airless,/area/space)
-"hf" = (/obj/structure/stool/bed,/turf/simulated/floor/airless,/area/space)
+"hf" = (/obj/structure/stool/bed,/turf/simulated/floor/plasteel/airless,/area/space)
"hg" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plasteel,/area/derelict/arrival)
-"hh" = (/turf/simulated/floor/airless{icon_state = "floorgrime"},/area/derelict/hallway/primary)
-"hi" = (/turf/simulated/floor/airless{icon_state = "damaged5"},/area/derelict/hallway/primary)
-"hj" = (/obj/structure/table,/obj/item/device/healthanalyzer,/turf/simulated/floor/airless,/area/derelict/hallway/primary)
+"hh" = (/turf/simulated/floor/plasteel/airless{icon_state = "floorgrime"},/area/derelict/hallway/primary)
+"hi" = (/turf/simulated/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/hallway/primary)
+"hj" = (/obj/structure/table,/obj/item/device/healthanalyzer,/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/primary)
"hk" = (/obj/structure/closet/wardrobe/mixed,/turf/simulated/floor/plasteel,/area/derelict/arrival)
"hl" = (/obj/machinery/door/airlock/external{name = "Escape Airlock"},/turf/simulated/floor/plating,/area/derelict/arrival)
"hm" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating/airless,/area/space)
@@ -384,71 +384,71 @@
"ht" = (/obj/structure/window{dir = 1},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating/airless,/area/derelict/hallway/secondary)
"hu" = (/obj/structure/grille,/obj/item/weapon/shard,/obj/item/weapon/shard{icon_state = "medium"},/turf/simulated/floor/plating/airless,/area/space)
"hv" = (/obj/structure/girder,/turf/simulated/floor/plating/airless,/area/derelict/hallway/primary)
-"hw" = (/obj/item/stack/rods,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/airless,/area/derelict/hallway/secondary)
+"hw" = (/obj/item/stack/rods,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/secondary)
"hx" = (/obj/item/weapon/shard{icon_state = "small"},/turf/space,/area/space)
-"hy" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/weapon/wirecutters,/turf/simulated/floor/airless,/area/derelict/hallway/secondary)
+"hy" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/weapon/wirecutters,/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/secondary)
"hz" = (/obj/structure/grille,/turf/simulated/floor/plating/airless,/area/derelict/hallway/secondary)
-"hA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/airless,/area/derelict/hallway/secondary)
+"hA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/secondary)
"hB" = (/obj/item/stack/cable_coil/cut,/turf/simulated/floor/plating/airless,/area/derelict/hallway/primary)
-"hC" = (/turf/simulated/floor/airless,/area/derelict/hallway/secondary)
-"hD" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/airless,/area/derelict/hallway/secondary)
+"hC" = (/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/secondary)
+"hD" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/secondary)
"hE" = (/obj/machinery/door/airlock/maintenance{name = "Aux Storage"; req_access_txt = "23"},/turf/simulated/floor/plating/airless,/area/derelict/hallway/secondary)
-"hF" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/obj/machinery/power/apc{dir = 8; name = "Worn-out APC"; pixel_x = -24; pixel_y = 0},/turf/simulated/floor/airless,/area/derelict/hallway/secondary)
+"hF" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/obj/machinery/power/apc{dir = 8; name = "Worn-out APC"; pixel_x = -24; pixel_y = 0},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/secondary)
"hG" = (/turf/simulated/floor/plating/airless,/area/derelict/hallway/secondary)
-"hH" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/airless,/area/derelict/hallway/secondary)
-"hI" = (/turf/simulated/floor/airless{icon_state = "derelict9"},/area/derelict/hallway/secondary)
-"hJ" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/airless{icon_state = "derelict10"},/area/derelict/hallway/secondary)
-"hK" = (/turf/simulated/floor/airless{icon_state = "derelict11"},/area/derelict/hallway/secondary)
-"hL" = (/turf/simulated/floor/airless{icon_state = "derelict12"},/area/derelict/hallway/secondary)
-"hM" = (/turf/simulated/floor/airless{icon_state = "derelict13"},/area/derelict/hallway/secondary)
-"hN" = (/turf/simulated/floor/airless{icon_state = "derelict14"},/area/derelict/hallway/secondary)
-"hO" = (/turf/simulated/floor/airless{icon_state = "derelict15"},/area/derelict/hallway/secondary)
-"hP" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/airless{icon_state = "derelict16"},/area/derelict/hallway/secondary)
-"hQ" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/airless,/area/derelict/hallway/secondary)
-"hR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/airless,/area/derelict/hallway/secondary)
-"hS" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/airless,/area/derelict/hallway/secondary)
-"hT" = (/turf/simulated/floor/airless{icon_state = "derelict1"},/area/derelict/hallway/secondary)
-"hU" = (/turf/simulated/floor/airless{icon_state = "derelict2"},/area/derelict/hallway/secondary)
-"hV" = (/turf/simulated/floor/airless{icon_state = "derelict3"},/area/derelict/hallway/secondary)
-"hW" = (/turf/simulated/floor/airless{icon_state = "derelict4"},/area/derelict/hallway/secondary)
-"hX" = (/turf/simulated/floor/airless{icon_state = "derelict5"},/area/derelict/hallway/secondary)
-"hY" = (/turf/simulated/floor/airless{icon_state = "derelict6"},/area/derelict/hallway/secondary)
-"hZ" = (/turf/simulated/floor/airless{icon_state = "derelict7"},/area/derelict/hallway/secondary)
-"ia" = (/turf/simulated/floor/airless{icon_state = "derelict8"},/area/derelict/hallway/secondary)
+"hH" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/secondary)
+"hI" = (/turf/simulated/floor/plasteel/airless{icon_state = "derelict9"},/area/derelict/hallway/secondary)
+"hJ" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plasteel/airless{icon_state = "derelict10"},/area/derelict/hallway/secondary)
+"hK" = (/turf/simulated/floor/plasteel/airless{icon_state = "derelict11"},/area/derelict/hallway/secondary)
+"hL" = (/turf/simulated/floor/plasteel/airless{icon_state = "derelict12"},/area/derelict/hallway/secondary)
+"hM" = (/turf/simulated/floor/plasteel/airless{icon_state = "derelict13"},/area/derelict/hallway/secondary)
+"hN" = (/turf/simulated/floor/plasteel/airless{icon_state = "derelict14"},/area/derelict/hallway/secondary)
+"hO" = (/turf/simulated/floor/plasteel/airless{icon_state = "derelict15"},/area/derelict/hallway/secondary)
+"hP" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plasteel/airless{icon_state = "derelict16"},/area/derelict/hallway/secondary)
+"hQ" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/secondary)
+"hR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/secondary)
+"hS" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/secondary)
+"hT" = (/turf/simulated/floor/plasteel/airless{icon_state = "derelict1"},/area/derelict/hallway/secondary)
+"hU" = (/turf/simulated/floor/plasteel/airless{icon_state = "derelict2"},/area/derelict/hallway/secondary)
+"hV" = (/turf/simulated/floor/plasteel/airless{icon_state = "derelict3"},/area/derelict/hallway/secondary)
+"hW" = (/turf/simulated/floor/plasteel/airless{icon_state = "derelict4"},/area/derelict/hallway/secondary)
+"hX" = (/turf/simulated/floor/plasteel/airless{icon_state = "derelict5"},/area/derelict/hallway/secondary)
+"hY" = (/turf/simulated/floor/plasteel/airless{icon_state = "derelict6"},/area/derelict/hallway/secondary)
+"hZ" = (/turf/simulated/floor/plasteel/airless{icon_state = "derelict7"},/area/derelict/hallway/secondary)
+"ia" = (/turf/simulated/floor/plasteel/airless{icon_state = "derelict8"},/area/derelict/hallway/secondary)
"ib" = (/obj/structure/lattice,/turf/space,/area/derelict/hallway/secondary)
"ic" = (/turf/simulated/wall/r_wall,/area/derelict/bridge/ai_upload)
-"id" = (/obj/machinery/door/airlock/command{name = "AI Upload"; req_access_txt = "16"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/airless,/area/derelict/bridge/ai_upload)
+"id" = (/obj/machinery/door/airlock/command{name = "AI Upload"; req_access_txt = "16"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/ai_upload)
"ie" = (/obj/machinery/door/airlock/external{name = "Escape Airlock"},/turf/simulated/floor/plating/airless,/area/derelict/hallway/secondary)
"if" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/turf/simulated/floor/plating/airless,/area/derelict/hallway/secondary)
"ig" = (/obj/structure/window{dir = 4},/turf/simulated/floor/plating/airless,/area/derelict/hallway/secondary)
"ih" = (/obj/structure/window{dir = 8},/turf/simulated/floor/plating/airless,/area/derelict/hallway/secondary)
-"ii" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/airless,/area/derelict/bridge/ai_upload)
-"ij" = (/obj/structure/closet/emcloset,/turf/simulated/floor/airless,/area/derelict/hallway/secondary)
+"ii" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/ai_upload)
+"ij" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plasteel/airless,/area/derelict/hallway/secondary)
"ik" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/wall/r_wall,/area/derelict/bridge/ai_upload)
"il" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/wall/r_wall,/area/derelict/bridge/ai_upload)
-"im" = (/obj/machinery/door/airlock/command{name = "AI Upload"; req_access_txt = "16"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/airless,/area/derelict/bridge/ai_upload)
+"im" = (/obj/machinery/door/airlock/command{name = "AI Upload"; req_access_txt = "16"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/ai_upload)
"in" = (/obj/structure/grille,/turf/simulated/floor/plating/airless,/area/derelict/bridge/ai_upload)
-"io" = (/obj/machinery/power/smes,/obj/structure/cable,/turf/simulated/floor/airless,/area/derelict/bridge/ai_upload)
-"ip" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/airless,/area/derelict/bridge/ai_upload)
-"iq" = (/turf/simulated/floor/airless{icon_state = "damaged4"},/area/derelict/bridge/ai_upload)
-"ir" = (/turf/simulated/floor/airless,/area/derelict/bridge/ai_upload)
-"is" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/airless,/area/derelict/bridge/ai_upload)
+"io" = (/obj/machinery/power/smes,/obj/structure/cable,/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/ai_upload)
+"ip" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/ai_upload)
+"iq" = (/turf/simulated/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/bridge/ai_upload)
+"ir" = (/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/ai_upload)
+"is" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/ai_upload)
"it" = (/turf/simulated/floor/plating/airless,/area/derelict/bridge/ai_upload)
-"iu" = (/obj/item/weapon/storage/toolbox/syndicate,/turf/simulated/floor/airless,/area/derelict/bridge/ai_upload)
-"iv" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/obj/machinery/power/solar_control{id = "derelictsolar"; name = "Primary Solar Control"; track = 0},/turf/simulated/floor/airless,/area/derelict/bridge/ai_upload)
+"iu" = (/obj/item/weapon/storage/toolbox/syndicate,/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/ai_upload)
+"iv" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/obj/machinery/power/solar_control{id = "derelictsolar"; name = "Primary Solar Control"; track = 0},/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/ai_upload)
"iw" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 8; environ = 0; equipment = 0; lighting = 0; locked = 0; name = "Worn-out APC"; pixel_x = -24; pixel_y = 0},/turf/simulated/floor/plating/airless,/area/derelict/bridge/ai_upload)
-"ix" = (/obj/item/weapon/paper{desc = ""; info = "The Syndicate have cunningly disguised a Syndicate Uplink as your PDA. Simply enter the code \"678 Bravo\" into the ringtone select to unlock its hidden features.
Objective #1. Kill the God damn AI in a fire blast that it rocks the station. Success!
Objective #2. Escape alive. Failed."; name = "Mission Objectives"},/turf/simulated/floor/airless{icon_state = "damaged2"},/area/derelict/bridge/ai_upload)
-"iy" = (/obj/machinery/light/small{dir = 4},/obj/item/clothing/head/helmet/space/syndicate/black/red,/turf/simulated/floor/airless,/area/derelict/bridge/ai_upload)
+"ix" = (/obj/item/weapon/paper{desc = ""; info = "The Syndicate have cunningly disguised a Syndicate Uplink as your PDA. Simply enter the code \"678 Bravo\" into the ringtone select to unlock its hidden features.
Objective #1. Kill the God damn AI in a fire blast that it rocks the station. Success!
Objective #2. Escape alive. Failed."; name = "Mission Objectives"},/turf/simulated/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/bridge/ai_upload)
+"iy" = (/obj/machinery/light/small{dir = 4},/obj/item/clothing/head/helmet/space/syndicate/black/red,/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/ai_upload)
"iz" = (/obj/item/stack/rods,/turf/simulated/floor/plating/airless,/area/derelict/hallway/secondary)
-"iA" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"},/turf/simulated/floor/airless,/area/space)
-"iB" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light/small,/turf/simulated/floor/airless,/area/derelict/bridge/ai_upload)
-"iC" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"},/turf/simulated/floor/airless,/area/derelict/bridge/ai_upload)
-"iD" = (/obj/item/clothing/suit/space/syndicate/black/red,/turf/simulated/floor/airless,/area/derelict/bridge/ai_upload)
-"iE" = (/obj/effect/decal/remains/human{desc = "This guy seemed to have died in terrible way! Half his remains are dust."; icon_state = "remains"; name = "Syndicate agent remains"},/turf/simulated/floor/airless,/area/derelict/bridge/ai_upload)
+"iA" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"},/turf/simulated/floor/plasteel/airless,/area/space)
+"iB" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light/small,/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/ai_upload)
+"iC" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"},/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/ai_upload)
+"iD" = (/obj/item/clothing/suit/space/syndicate/black/red,/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/ai_upload)
+"iE" = (/obj/effect/decal/remains/human{desc = "This guy seemed to have died in terrible way! Half his remains are dust."; icon_state = "remains"; name = "Syndicate agent remains"},/turf/simulated/floor/plasteel/airless,/area/derelict/bridge/ai_upload)
"iF" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/wall/r_wall,/area/derelict/bridge/ai_upload)
"iG" = (/obj/structure/cable,/turf/simulated/floor/plating/airless,/area/solar/derelict_aft)
"iH" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plating/airless,/area/solar/derelict_aft)
-"iI" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar{id = "derelictsolar"; name = "Derelict Solar Array"},/turf/simulated/floor/airless,/area/solar/derelict_aft)
+"iI" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar{id = "derelictsolar"; name = "Derelict Solar Array"},/turf/simulated/floor/plasteel/airless,/area/solar/derelict_aft)
"iJ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating/airless,/area/solar/derelict_aft)
"iK" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar{id = "derelictsolar"; name = "Derelict Solar Array"},/turf/simulated/floor/plating/airless,/area/solar/derelict_aft)
"iL" = (/turf/simulated/floor/plating/airless,/area/solar/derelict_aft)
@@ -456,21 +456,21 @@
"iN" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless,/area/solar/derelict_aft)
"iO" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless,/area/solar/derelict_aft)
"iP" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable,/turf/simulated/floor/plating/airless,/area/solar/derelict_aft)
-"iQ" = (/obj/structure/cable,/obj/machinery/power/solar{id = "derelictsolar"; name = "Derelict Solar Array"},/turf/simulated/floor/airless,/area/solar/derelict_aft)
+"iQ" = (/obj/structure/cable,/obj/machinery/power/solar{id = "derelictsolar"; name = "Derelict Solar Array"},/turf/simulated/floor/plasteel/airless,/area/solar/derelict_aft)
"iR" = (/obj/structure/cable,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless,/area/solar/derelict_aft)
"iS" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless,/area/solar/derelict_aft)
"iT" = (/turf/simulated/wall/r_wall,/area/derelict/teleporter)
"iU" = (/turf/simulated/floor/plating/airless,/area/derelict/teleporter)
-"iV" = (/turf/simulated/floor/airless,/area/derelict/teleporter)
-"iW" = (/turf/simulated/floor/airless{icon_state = "damaged2"},/area/derelict/teleporter)
-"iX" = (/obj/machinery/light_construct/small{dir = 1},/turf/simulated/floor/airless{icon_state = "damaged3"},/area/derelict/teleporter)
-"iY" = (/obj/machinery/computer/teleporter,/turf/simulated/floor/airless,/area/derelict/teleporter)
-"iZ" = (/obj/machinery/teleport/station,/turf/simulated/floor/airless,/area/derelict/teleporter)
-"ja" = (/obj/machinery/teleport/hub,/turf/simulated/floor/airless,/area/derelict/teleporter)
+"iV" = (/turf/simulated/floor/plasteel/airless,/area/derelict/teleporter)
+"iW" = (/turf/simulated/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/teleporter)
+"iX" = (/obj/machinery/light_construct/small{dir = 1},/turf/simulated/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/teleporter)
+"iY" = (/obj/machinery/computer/teleporter,/turf/simulated/floor/plasteel/airless,/area/derelict/teleporter)
+"iZ" = (/obj/machinery/teleport/station,/turf/simulated/floor/plasteel/airless,/area/derelict/teleporter)
+"ja" = (/obj/machinery/teleport/hub,/turf/simulated/floor/plasteel/airless,/area/derelict/teleporter)
"jb" = (/obj/machinery/light_construct/small{dir = 4},/turf/simulated/floor/plating/airless,/area/derelict/teleporter)
-"jc" = (/obj/structure/table,/obj/item/weapon/stock_parts/cell{charge = 100; maxcharge = 15000},/turf/simulated/floor/airless,/area/derelict/teleporter)
-"jd" = (/turf/simulated/floor/airless{icon_state = "damaged4"},/area/derelict/teleporter)
-"je" = (/obj/machinery/power/apc{dir = 0; name = "Worn-out APC"; pixel_y = -24},/turf/simulated/floor/airless,/area/derelict/teleporter)
+"jc" = (/obj/structure/table,/obj/item/weapon/stock_parts/cell{charge = 100; maxcharge = 15000},/turf/simulated/floor/plasteel/airless,/area/derelict/teleporter)
+"jd" = (/turf/simulated/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/teleporter)
+"je" = (/obj/machinery/power/apc{dir = 0; name = "Worn-out APC"; pixel_y = -24},/turf/simulated/floor/plasteel/airless,/area/derelict/teleporter)
(1,1,1) = {"
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
diff --git a/code/ATMOSPHERICS/atmospherics.dm b/code/ATMOSPHERICS/atmospherics.dm
index abf71c4ea0d..953988cf929 100644
--- a/code/ATMOSPHERICS/atmospherics.dm
+++ b/code/ATMOSPHERICS/atmospherics.dm
@@ -26,9 +26,14 @@ Pipelines + Other Objects -> Pipe network
/obj/machinery/atmospherics/New()
..()
+
+ SetInitDirections()
if(can_unwrench)
stored = new(src, make_from=src)
+/obj/machinery/atmospherics/proc/SetInitDirections()
+ return
+
/obj/machinery/atmospherics/proc/safe_input(var/title, var/text, var/default_set)
var/new_value = input(usr,"Enter new output pressure (0-4500kPa)","Pressure control",default_set) as num
if(usr.canUseTopic(src))
@@ -124,9 +129,15 @@ Pipelines + Other Objects -> Pipe network
return img
-/obj/machinery/atmospherics/construction(D, P)
+/obj/machinery/atmospherics/construction(D, P, var/pipe_type, var/obj_color)
dir = D
initialize_directions = P
+ if(can_unwrench)
+ color = obj_color
+ pipe_color = obj_color
+ stored.dir = D //need to define them here, because the obj directions...
+ stored.pipe_type = pipe_type //... were not set at the time the stored pipe was created
+ stored.color = obj_color
var/turf/T = loc
level = T.intact ? 2 : 1
initialize()
diff --git a/code/ATMOSPHERICS/components/binary_devices/binary_atmos_base.dm b/code/ATMOSPHERICS/components/binary_devices/binary_atmos_base.dm
index 8e81d0469f5..88ae07300b8 100644
--- a/code/ATMOSPHERICS/components/binary_devices/binary_atmos_base.dm
+++ b/code/ATMOSPHERICS/components/binary_devices/binary_atmos_base.dm
@@ -17,6 +17,14 @@
/obj/machinery/atmospherics/binary/New()
..()
+
+ air1 = new
+ air2 = new
+
+ air1.volume = 200
+ air2.volume = 200
+
+/obj/machinery/atmospherics/binary/SetInitDirections()
switch(dir)
if(NORTH)
initialize_directions = NORTH|SOUTH
@@ -26,11 +34,6 @@
initialize_directions = EAST|WEST
if(WEST)
initialize_directions = EAST|WEST
- air1 = new
- air2 = new
-
- air1.volume = 200
- air2.volume = 200
//Separate this because we don't need to update pipe icons if we just are going to change the state
/obj/machinery/atmospherics/binary/proc/update_icon_nopipes()
diff --git a/code/ATMOSPHERICS/components/binary_devices/pump.dm b/code/ATMOSPHERICS/components/binary_devices/pump.dm
index 6fdd2c66f21..77508a31c7d 100644
--- a/code/ATMOSPHERICS/components/binary_devices/pump.dm
+++ b/code/ATMOSPHERICS/components/binary_devices/pump.dm
@@ -44,7 +44,7 @@ Thus, the two variables affect pump operation are set in New():
/obj/machinery/atmospherics/binary/pump/process()
// ..()
if(stat & (NOPOWER|BROKEN))
- return
+ return 0
if(!on)
return 0
@@ -70,8 +70,7 @@ Thus, the two variables affect pump operation are set in New():
return 1
- //Radio remote control
-
+//Radio remote control
/obj/machinery/atmospherics/binary/pump/proc/set_frequency(new_frequency)
radio_controller.remove_object(src, frequency)
frequency = new_frequency
diff --git a/code/ATMOSPHERICS/components/trinary_devices/trinary_base.dm b/code/ATMOSPHERICS/components/trinary_devices/trinary_base.dm
index 94c92c5ff18..d687da775df 100644
--- a/code/ATMOSPHERICS/components/trinary_devices/trinary_base.dm
+++ b/code/ATMOSPHERICS/components/trinary_devices/trinary_base.dm
@@ -20,6 +20,16 @@
/obj/machinery/atmospherics/trinary/New()
..()
+
+ air1 = new
+ air2 = new
+ air3 = new
+
+ air1.volume = 200
+ air2.volume = 200
+ air3.volume = 200
+
+/obj/machinery/atmospherics/trinary/SetInitDirections()
switch(dir)
if(NORTH)
initialize_directions = EAST|NORTH|SOUTH
@@ -29,14 +39,6 @@
initialize_directions = EAST|WEST|SOUTH
if(WEST)
initialize_directions = WEST|NORTH|EAST
- air1 = new
- air2 = new
- air3 = new
-
- air1.volume = 200
- air2.volume = 200
- air3.volume = 200
-
/*
Iconnery
*/
diff --git a/code/ATMOSPHERICS/components/unary/unary_base.dm b/code/ATMOSPHERICS/components/unary/unary_base.dm
index e33065ff618..b0574071ee8 100644
--- a/code/ATMOSPHERICS/components/unary/unary_base.dm
+++ b/code/ATMOSPHERICS/components/unary/unary_base.dm
@@ -10,10 +10,12 @@
/obj/machinery/atmospherics/unary/New()
..()
- initialize_directions = dir
air_contents = new
air_contents.volume = 200
+
+/obj/machinery/atmospherics/unary/SetInitDirections()
+ initialize_directions = dir
/*
Iconnery
*/
diff --git a/code/ATMOSPHERICS/components/valve.dm b/code/ATMOSPHERICS/components/valve.dm
index 8ccf44a4d2a..e1f42bfc8b8 100644
--- a/code/ATMOSPHERICS/components/valve.dm
+++ b/code/ATMOSPHERICS/components/valve.dm
@@ -46,9 +46,9 @@
return
/obj/machinery/atmospherics/binary/valve/proc/normalize_dir()
- if(dir==3)
+ if(dir==2)
dir = 1
- else if(dir==12)
+ else if(dir==8)
dir = 4
/obj/machinery/atmospherics/binary/valve/attack_ai(mob/user)
@@ -69,7 +69,7 @@
desc = "A digitally controlled valve."
icon_state = "dvalve_map"
-/obj/machinery/atmospherics/valve/digital/attack_ai(mob/user)
+/obj/machinery/atmospherics/binary/valve/digital/attack_ai(mob/user)
return src.attack_hand(user)
/obj/machinery/atmospherics/binary/valve/digital/update_icon_nopipes(animation)
diff --git a/code/ATMOSPHERICS/he_pipes.dm b/code/ATMOSPHERICS/he_pipes.dm
index 182696fe101..e37c7ba74bc 100644
--- a/code/ATMOSPHERICS/he_pipes.dm
+++ b/code/ATMOSPHERICS/he_pipes.dm
@@ -50,6 +50,8 @@
/obj/machinery/atmospherics/pipe/simple/heat_exchanging/junction/New()
..()
+
+/obj/machinery/atmospherics/pipe/simple/heat_exchanging/junction/SetInitDirections()
switch(dir)
if(SOUTH)
initialize_directions = NORTH
diff --git a/code/ATMOSPHERICS/pipes/manifold.dm b/code/ATMOSPHERICS/pipes/manifold.dm
index 434a4b3c9e7..2952dbc7674 100644
--- a/code/ATMOSPHERICS/pipes/manifold.dm
+++ b/code/ATMOSPHERICS/pipes/manifold.dm
@@ -27,6 +27,7 @@
..()
+/obj/machinery/atmospherics/pipe/manifold/SetInitDirections()
switch(dir)
if(NORTH)
initialize_directions = EAST|SOUTH|WEST
diff --git a/code/ATMOSPHERICS/pipes/manifold4w.dm b/code/ATMOSPHERICS/pipes/manifold4w.dm
index 17b6528e039..6fc3ba86629 100644
--- a/code/ATMOSPHERICS/pipes/manifold4w.dm
+++ b/code/ATMOSPHERICS/pipes/manifold4w.dm
@@ -25,6 +25,9 @@
color = pipe_color
..()
+/obj/machinery/atmospherics/pipe/manifold4w/SetInitDirections()
+ return
+
/obj/machinery/atmospherics/pipe/manifold4w/initialize()
for(var/D in cardinal)
for(var/obj/machinery/atmospherics/target in get_step(src, D))
diff --git a/code/ATMOSPHERICS/pipes/simple.dm b/code/ATMOSPHERICS/pipes/simple.dm
index eabf5a2badb..47f62a70ace 100644
--- a/code/ATMOSPHERICS/pipes/simple.dm
+++ b/code/ATMOSPHERICS/pipes/simple.dm
@@ -33,10 +33,16 @@ The regular pipe you see everywhere, including bent ones.
..()
+
+/obj/machinery/atmospherics/pipe/simple/SetInitDirections()
switch(dir)
- if(SOUTH || NORTH)
+ if(NORTH)
initialize_directions = SOUTH|NORTH
- if(EAST || WEST)
+ if(SOUTH)
+ initialize_directions = SOUTH|NORTH
+ if(EAST)
+ initialize_directions = EAST|WEST
+ if(WEST)
initialize_directions = EAST|WEST
if(NORTHEAST)
initialize_directions = NORTH|EAST
@@ -110,9 +116,9 @@ The regular pipe you see everywhere, including bent ones.
qdel(src)
/obj/machinery/atmospherics/pipe/simple/proc/normalize_dir()
- if(dir==3)
+ if(dir==2)
dir = 1
- else if(dir==12)
+ else if(dir==8)
dir = 4
/obj/machinery/atmospherics/pipe/simple/update_icon()
diff --git a/code/__DEFINES/genetics.dm b/code/__DEFINES/genetics.dm
index b8a2b95657d..938a30a2107 100644
--- a/code/__DEFINES/genetics.dm
+++ b/code/__DEFINES/genetics.dm
@@ -1,31 +1,31 @@
-//bitflags for mutations
- // Extra powers:
-#define SHADOW (1<<10) // shadow teleportation (create in/out portals anywhere) (25%)
-#define SCREAM (1<<11) // supersonic screaming (25%)
-#define EXPLOSIVE (1<<12) // exploding on-demand (15%)
-#define REGENERATION (1<<13) // superhuman regeneration (30%)
-#define REPROCESSOR (1<<14) // eat anything (50%)
-#define SHAPESHIFTING (1<<15) // take on the appearance of anything (40%)
-#define PHASING (1<<16) // ability to phase through walls (40%)
-#define SHIELD (1<<17) // shielding from all projectile attacks (30%)
-#define SHOCKWAVE (1<<18) // attack a nearby tile and cause a massive shockwave, knocking most people on their asses (25%)
-#define ELECTRICITY (1<<19) // ability to shoot electric attacks (15%)
+//Defines copying names of mutations in all cases, make sure to change this if you change mutation's name
+#define HULK "Hulk"
+#define XRAY "X Ray Vision"
+#define COLDRES "Cold Resistance"
+#define TK "Telekinesis"
+#define NERVOUS "Nervousness"
+#define EPILEPSY "Epilepsy"
+#define MUTATE "Unstable DNA"
+#define COUGH "Cough"
+#define CLOWNMUT "Clumsiness"
+#define TOURETTES "Tourettes Syndrome"
+#define DEAFMUT "Deafness"
+#define BLINDMUT "Blindness"
+#define RACEMUT "Monkified"
+#define BADSIGHT "Near Sightness"
+#define LASEREYES "Laser Eyes"
// String identifiers for associative list lookup
-// mob/var/list/mutations
- // Generic mutations:
-#define TK 1
-#define COLD_RESISTANCE 2
-#define XRAY 3
-#define HULK 4
-#define CLUMSY 5
-#define FAT 6
-#define HUSK 7
-#define NOCLONE 8
+//Types of usual mutations
+#define POSITIVE 1
+#define NEGATIVE 2
+#define MINOR_NEGATIVE 3
+//Mutations that cant be taken from genetics and are not in SE
+#define NON_SCANNABLE -1
// Extra powers:
#define LASER 9 // harm intent - click anywhere to shoot lasers from eyes
@@ -41,18 +41,6 @@
#define SHOCKWAVE 19 // attack a nearby tile and cause a massive shockwave, knocking most people on their asses (25%)
#define ELECTRICITY 20 // ability to shoot electric attacks (15%)
-//disabilities
-#define NEARSIGHTED 1
-#define EPILEPSY 2
-#define COUGHING 4
-#define TOURETTES 8
-#define NERVOUS 16
-
-//sdisabilities
-#define BLIND 1
-#define MUTE 2
-#define DEAF 4
-
//DNA - Because fuck you and your magic numbers being all over the codebase.
#define DNA_BLOCK_SIZE 3
@@ -88,4 +76,4 @@
#define NUTRITION_LEVEL_WELL_FED 450
#define NUTRITION_LEVEL_FED 350
#define NUTRITION_LEVEL_HUNGRY 250
-#define NUTRITION_LEVEL_STARVING 150
\ No newline at end of file
+#define NUTRITION_LEVEL_STARVING 150
diff --git a/code/__DEFINES/misc.dm b/code/__DEFINES/misc.dm
index aa33676784d..426aa29ed4e 100644
--- a/code/__DEFINES/misc.dm
+++ b/code/__DEFINES/misc.dm
@@ -1,5 +1,32 @@
#define MIDNIGHT_ROLLOVER 864000 //number of deciseconds in a day
+
+//Human Overlays Indexes/////////
+#define SPECIES_LAYER 23 // mutantrace colors... these are on a seperate layer in order to prvent
+#define BODY_LAYER 22 //underwear, undershirts, eyes, lips(makeup)
+#define MUTATIONS_LAYER 21 //Tk headglows etc.
+#define AUGMENTS_LAYER 20
+#define DAMAGE_LAYER 19 //damage indicators (cuts and burns)
+#define UNIFORM_LAYER 18
+#define ID_LAYER 17
+#define SHOES_LAYER 16
+#define GLOVES_LAYER 15
+#define EARS_LAYER 14
+#define SUIT_LAYER 13
+#define GLASSES_LAYER 12
+#define BELT_LAYER 11 //Possible make this an overlay of somethign required to wear a belt?
+#define SUIT_STORE_LAYER 10
+#define BACK_LAYER 9
+#define HAIR_LAYER 8 //TODO: make part of head layer?
+#define FACEMASK_LAYER 7
+#define HEAD_LAYER 6
+#define HANDCUFF_LAYER 5
+#define LEGCUFF_LAYER 4
+#define L_HAND_LAYER 3
+#define R_HAND_LAYER 2 //Having the two hands seperate seems rather silly, merge them together? It'll allow for code to be reused on mobs with arbitarily many hands
+#define FIRE_LAYER 1 //If you're on fire
+#define TOTAL_LAYERS 23 //KEEP THIS UP-TO-DATE OR SHIT WILL BREAK ;_;
+
//Security levels
#define SEC_LEVEL_GREEN 0
#define SEC_LEVEL_BLUE 1
@@ -67,4 +94,4 @@
//SOUND:
#define SOUND_MINIMUM_PRESSURE 10
#define FALLOFF_SOUNDS 1
-#define SURROUND_CAP 7
\ No newline at end of file
+#define SURROUND_CAP 7
diff --git a/code/__DEFINES/stat.dm b/code/__DEFINES/stat.dm
index d2c7ffd9087..5c68c8a5c0e 100644
--- a/code/__DEFINES/stat.dm
+++ b/code/__DEFINES/stat.dm
@@ -7,6 +7,17 @@
#define UNCONSCIOUS 1
#define DEAD 2
+//mob disabilities stat
+
+#define BLIND 1
+#define MUTE 2
+#define DEAF 4
+#define NEARSIGHT 8
+#define FAT 32
+#define HUSK 64
+#define NOCLONE 128
+#define CLUMSY 256
+
// bitflags for machine stat variable
#define BROKEN 1
#define NOPOWER 2
@@ -20,4 +31,4 @@
#define SHUTTLE_CALL 2
#define SHUTTLE_DOCKED 3
#define SHUTTLE_ESCAPE 4
-#define SHUTTLE_ENDGAME 5
\ No newline at end of file
+#define SHUTTLE_ENDGAME 5
diff --git a/code/__HELPERS/global_lists.dm b/code/__HELPERS/global_lists.dm
index 4a54ef3c21d..f171be733e9 100644
--- a/code/__HELPERS/global_lists.dm
+++ b/code/__HELPERS/global_lists.dm
@@ -11,6 +11,8 @@
init_sprite_accessory_subtypes(/datum/sprite_accessory/underwear, underwear_list, underwear_m, underwear_f)
//undershirt
init_sprite_accessory_subtypes(/datum/sprite_accessory/undershirt, undershirt_list, undershirt_m, undershirt_f)
+ //socks
+ init_sprite_accessory_subtypes(/datum/sprite_accessory/socks, socks_list, socks_m, socks_f)
//Species
for(var/spath in typesof(/datum/species))
diff --git a/code/__HELPERS/mobs.dm b/code/__HELPERS/mobs.dm
index 2b7d33fe5ed..20c38174275 100644
--- a/code/__HELPERS/mobs.dm
+++ b/code/__HELPERS/mobs.dm
@@ -28,6 +28,14 @@
if(FEMALE) return pick(undershirt_f)
else return pick(undershirt_list)
+/proc/random_socks(gender)
+ if(!socks_list.len)
+ init_sprite_accessory_subtypes(/datum/sprite_accessory/socks, socks_list, socks_m, socks_f)
+ switch(gender)
+ if(MALE) return pick(socks_m)
+ if(FEMALE) return pick(socks_f)
+ else return pick(socks_list)
+
/proc/random_hair_style(gender)
switch(gender)
if(MALE) return pick(hair_styles_male_list)
diff --git a/code/_globalvars/genetics.dm b/code/_globalvars/genetics.dm
index 7ff714de5f9..0944554d63e 100644
--- a/code/_globalvars/genetics.dm
+++ b/code/_globalvars/genetics.dm
@@ -1,5 +1,5 @@
//////////////
-var/NEARSIGHTEDBLOCK = 0
+var/NEARSIGHTBLOCK = 0
var/EPILEPSYBLOCK = 0
var/COUGHBLOCK = 0
var/TOURETTESBLOCK = 0
@@ -23,3 +23,6 @@ var/NULLED_UI
var/list/global_mutations = list() // list of hidden mutation things
+var/list/bad_mutations = list()
+var/list/good_mutations = list()
+var/list/not_good_mutations = list()
\ No newline at end of file
diff --git a/code/_globalvars/lists/flavor_misc.dm b/code/_globalvars/lists/flavor_misc.dm
index b0dabb95d73..6271cceb754 100644
--- a/code/_globalvars/lists/flavor_misc.dm
+++ b/code/_globalvars/lists/flavor_misc.dm
@@ -14,6 +14,10 @@ var/global/list/underwear_f = list() //stores only underwear name
var/global/list/undershirt_list = list() //stores /datum/sprite_accessory/undershirt indexed by name
var/global/list/undershirt_m = list() //stores only undershirt name
var/global/list/undershirt_f = list() //stores only undershirt name
+ //Socks
+var/global/list/socks_list = list() //stores /datum/sprite_accessory/socks indexed by name
+var/global/list/socks_m = list() //stores only socks name
+var/global/list/socks_f = list() //stores only socks name
//Backpacks
var/global/list/backbaglist = list("Nothing", "Backpack", "Satchel")
//Female Uniforms
diff --git a/code/_onclick/click.dm b/code/_onclick/click.dm
index 4ab99abcd49..c6827293901 100644
--- a/code/_onclick/click.dm
+++ b/code/_onclick/click.dm
@@ -161,12 +161,6 @@
animals lunging, etc.
*/
/mob/proc/RangedAttack(var/atom/A, var/params)
- if(!mutations.len) return
- if((LASER in mutations) && a_intent == "harm")
- LaserEyes(A) // moved into a proc below
- else
- if(TK in mutations)
- A.attack_tk(src)
/*
Restrained ClickOn
diff --git a/code/_onclick/other_mobs.dm b/code/_onclick/other_mobs.dm
index 06e2fed0368..b6060e3d3f7 100644
--- a/code/_onclick/other_mobs.dm
+++ b/code/_onclick/other_mobs.dm
@@ -13,7 +13,15 @@
if(proximity && istype(G) && G.Touch(A,1))
return
+ var/override = 0
+
+ for(var/datum/mutation/human/HM in dna.mutations)
+ override += HM.on_attack_hand(src, A)
+
+ if(override) return
+
A.attack_hand(src)
+
/atom/proc/attack_hand(mob/user as mob)
return
@@ -26,28 +34,29 @@
return 0
/mob/living/carbon/human/RangedAttack(var/atom/A)
- if(!gloves && !mutations.len) return
- var/obj/item/clothing/gloves/G = gloves
- if((LASER in mutations) && a_intent == "harm")
- LaserEyes(A) // moved into a proc below
+ if(gloves)
+ var/obj/item/clothing/gloves/G = gloves
+ if(istype(G) && G.Touch(A,0)) // for magic gloves
+ return
- else if(istype(G) && G.Touch(A,0)) // for magic gloves
- return
-
- else if(TK in mutations)
- A.attack_tk(src)
+ for(var/datum/mutation/human/HM in dna.mutations)
+ HM.on_ranged_attack(src, A)
/*
Animals & All Unspecified
*/
/mob/living/UnarmedAttack(var/atom/A)
A.attack_animal(src)
+
+/mob/living/simple_animal/hostile/UnarmedAttack(var/atom/A)
+ target = A
+ AttackingTarget()
+
/atom/proc/attack_animal(mob/user as mob)
return
/mob/living/RestrainedClickOn(var/atom/A)
return
-
/*
Monkeys
*/
diff --git a/code/_onclick/telekinesis.dm b/code/_onclick/telekinesis.dm
index a4e8a119365..690453df1e6 100644
--- a/code/_onclick/telekinesis.dm
+++ b/code/_onclick/telekinesis.dm
@@ -38,14 +38,11 @@ var/const/tk_maxrange = 15
return
/obj/item/attack_tk(mob/user)
- if(user.stat || !isturf(loc)) return
- if((TK in user.mutations) && !user.get_active_hand()) // both should already be true to get here
- var/obj/item/tk_grab/O = new(src)
- user.put_in_active_hand(O)
- O.host = user
- O.focus_object(src)
- else
- WARNING("Strange attack_tk(): TK([TK in user.mutations]) empty hand([!user.get_active_hand()])")
+ if(user.stat) return
+ var/obj/item/tk_grab/O = new(src)
+ user.put_in_active_hand(O)
+ O.host = user
+ O.focus_object(src)
return
@@ -95,13 +92,13 @@ var/const/tk_maxrange = 15
if(focus)
focus.attack_self_tk(user)
-/obj/item/tk_grab/afterattack(atom/target, mob/living/user, proximity)//TODO: go over this
+/obj/item/tk_grab/afterattack(atom/target, mob/living/carbon/user, proximity)//TODO: go over this
if(!target || !user) return
if(last_throw+3 > world.time) return
if(!host || host != user)
qdel(src)
return
- if(!(TK in host.mutations))
+ if(!(user.dna.check_mutation(TK)))
qdel(src)
return
if(isobj(target) && !isturf(target.loc))
diff --git a/code/datums/diseases/advance/symptoms/deafness.dm b/code/datums/diseases/advance/symptoms/deafness.dm
index a5394222876..5666eed62d4 100644
--- a/code/datums/diseases/advance/symptoms/deafness.dm
+++ b/code/datums/diseases/advance/symptoms/deafness.dm
@@ -33,10 +33,10 @@ Bonus
if(3, 4)
M << "[pick("You hear a ringing in your ear.", "Your ears pop.")]"
if(5)
- if(!(M.sdisabilities & DEAF))
+ if(!(M.ear_deaf))
M << "Your ears pop and begin ringing loudly!"
- M.sdisabilities |= DEAF
+ M.ear_deaf = INFINITY //Shall be enough
spawn(200)
if(M)
- M.sdisabilities &= ~DEAF
+ M.ear_deaf = 0
return
\ No newline at end of file
diff --git a/code/datums/diseases/advance/symptoms/visionloss.dm b/code/datums/diseases/advance/symptoms/visionloss.dm
index 47303b9643a..c80b5a35d6c 100644
--- a/code/datums/diseases/advance/symptoms/visionloss.dm
+++ b/code/datums/diseases/advance/symptoms/visionloss.dm
@@ -41,8 +41,9 @@ Bonus
M.eye_blurry = 20
M.eye_stat += 5
if (M.eye_stat >= 10)
- M.disabilities |= NEARSIGHTED
- if (prob(M.eye_stat - 10 + 1) && !(M.sdisabilities & BLIND))
+ M.disabilities |= NEARSIGHT
+ if (prob(M.eye_stat - 10 + 1) && !(M.eye_blind))
M << "You go blind!"
- M.sdisabilities |= BLIND
+ M.disabilities |= BLIND
+ M.eye_blind = 1
return
\ No newline at end of file
diff --git a/code/datums/mutations.dm b/code/datums/mutations.dm
new file mode 100644
index 00000000000..81ba278544f
--- /dev/null
+++ b/code/datums/mutations.dm
@@ -0,0 +1,327 @@
+/var/global/list/mutations_list = list()
+
+/datum/mutation/
+
+ var/name
+
+/datum/mutation/New()
+
+ mutations_list[name] = src
+
+/datum/mutation/human
+
+ var/dna_block
+ var/quality
+ var/get_chance = 100
+ var/lowest_value = 256 * 8
+ var/text_indication = ""
+ var/list/visual_indicators = list()
+
+/datum/mutation/human/proc/force_give(mob/living/carbon/human/owner)
+ set_block(owner)
+ on_acquiring(owner)
+
+/datum/mutation/human/proc/set_se(se_string)
+ if(!se_string || lentext(se_string) < DNA_STRUC_ENZYMES_BLOCKS * DNA_BLOCK_SIZE) return
+ var/before = copytext(se_string, 1, (dna_block * DNA_BLOCK_SIZE) + 1)
+ var/injection = num2hex(lowest_value + rand(1, 256 * 6))
+ var/after = copytext(se_string, (dna_block * DNA_BLOCK_SIZE) + DNA_BLOCK_SIZE + 1)
+ return before + injection + after
+
+/datum/mutation/human/proc/set_block(mob/living/carbon/human/owner)
+ owner.dna.struc_enzymes = set_se(owner.dna.struc_enzymes)
+
+/datum/mutation/human/proc/check_block_string(se_string)
+ if(!se_string || lentext(se_string) < DNA_STRUC_ENZYMES_BLOCKS * DNA_BLOCK_SIZE) return 0
+ if(hex2num(getblock(se_string, dna_block)) >= lowest_value)
+ return 1
+
+/datum/mutation/human/proc/check_block(mob/living/carbon/human/owner)
+ if(check_block_string(owner.dna.struc_enzymes))
+ if(prob(get_chance))
+ . = on_acquiring(owner)
+ else
+ . = on_losing(owner)
+
+/datum/mutation/human/proc/on_acquiring(mob/living/carbon/human/owner)
+ if(src in owner.dna.mutations)
+ return 1
+ owner.dna.mutations.Add(src)
+ gain_indication(owner)
+ owner << text_indication
+
+/datum/mutation/human/proc/gain_indication(mob/living/carbon/human/owner)
+ owner.overlays.Add(visual_indicators)
+/*
+ var/list/result_overlays = list()
+ var/list/limbs = owner_get_limbs(NON_MECHANICAL|NON_AMPUTATED) //I dunno how its done by RR but i assume something like this, proc that returns the list of limbs based on what types of limbs to return in argument
+ for(var/obj/limb/L in limbs)
+ result_overlays[L.identificator] = visual_indicators[L.identificator] //visual_indicators is where overlays icons are stored, they are all created on new of each mutation, i assume you will change it to linked list for easyness, but for now its just a list
+ return owner.redraw_overlays(result_overlays, MUTATION_LAYER) //Currently mutations draw the overlays themselves but i assume if dismemberment will be overriding lots of shit like maybe clothes or something else mutations will just pass the shit to redraw proc
+*/
+/datum/mutation/human/proc/lose_indication(mob/living/carbon/human/owner)
+ owner.overlays.Remove(visual_indicators)
+
+/datum/mutation/human/proc/on_attack_hand(mob/living/carbon/human/owner, atom/target)
+ return
+
+/datum/mutation/human/proc/on_ranged_attack(mob/living/carbon/human/owner, atom/target)
+ return
+
+/datum/mutation/human/proc/on_life(mob/living/carbon/human/owner)
+ return
+
+/datum/mutation/human/proc/on_losing(mob/living/carbon/human/owner)
+ if(owner.dna.mutations.Remove(src))
+ lose_indication(owner)
+ return 0
+ return 1
+
+/datum/mutation/human/hulk
+
+ name = "Hulk"
+ quality = POSITIVE
+ get_chance = 5
+ lowest_value = 256 * 14
+ text_indication = "Your muscles hurt!"
+
+/datum/mutation/human/hulk/New()
+ ..()
+ visual_indicators |= image("icon"='icons/effects/genetics.dmi', "icon_state"="hulk_f_s", "layer"=-MUTATIONS_LAYER)
+ visual_indicators |= image("icon"='icons/effects/genetics.dmi', "icon_state"="hulk_m_s", "layer"=-MUTATIONS_LAYER)
+
+/datum/mutation/human/hulk/on_acquiring(mob/living/carbon/human/owner)
+ if(..()) return
+ var/status = CANSTUN | CANWEAKEN | CANPARALYSE | CANPUSH
+ owner.status_flags &= ~status
+
+/datum/mutation/human/hulk/on_attack_hand(mob/living/carbon/human/owner, atom/target)
+ return target.attack_hulk(owner)
+
+/datum/mutation/human/hulk/gain_indication(mob/living/carbon/human/owner)
+ var/g = (owner.gender == FEMALE) ? 1 : 2
+ owner.overlays += visual_indicators[g]
+
+/datum/mutation/human/hulk/on_life(mob/living/carbon/human/owner)
+ if(owner.health < 25)
+ on_losing(owner)
+ owner << "You suddenly feel very weak."
+ owner.Weaken(3)
+ owner.emote("collapse")
+
+/datum/mutation/human/hulk/on_losing(mob/living/carbon/human/owner)
+ ..()
+ owner.status_flags |= CANSTUN | CANWEAKEN | CANPARALYSE | CANPUSH
+
+/datum/mutation/human/telekinesis
+
+ name = "Telekinesis"
+ quality = POSITIVE
+ get_chance = 10
+ lowest_value = 256 * 14
+ text_indication = "You feel smarter!"
+
+/datum/mutation/human/telekinesis/New()
+ ..()
+ visual_indicators |= image("icon"='icons/effects/genetics.dmi', "icon_state"="telekinesishead_s", "layer"=-MUTATIONS_LAYER)
+
+/datum/mutation/human/telekinesis/on_ranged_attack(mob/living/carbon/human/owner, atom/target)
+ target.attack_tk(owner)
+
+/datum/mutation/human/cold_resistance
+
+ name = "Cold Resistance"
+ quality = POSITIVE
+ get_chance = 10
+ lowest_value = 256 * 12
+ text_indication = "Your body feels warm!"
+
+/datum/mutation/human/cold_resistance/New()
+ ..()
+ visual_indicators |= image("icon"='icons/effects/genetics.dmi', "icon_state"="fire_s", "layer"=-MUTATIONS_LAYER)
+
+/datum/mutation/human/cold_resistance/on_life(mob/living/carbon/human/owner)
+ if(owner.getFireLoss())
+ if(prob(1))
+ owner.heal_organ_damage(0,1) //Is this really needed?
+
+/datum/mutation/human/x_ray
+
+ name = "X Ray Vision"
+ quality = POSITIVE
+ get_chance = 10
+ lowest_value = 256 * 15
+ text_indication = "The walls suddenly disappear!"
+
+/datum/mutation/human/x_ray/on_acquiring(mob/living/carbon/human/owner)
+ if(..()) return
+ on_life(owner)
+
+/datum/mutation/human/x_ray/on_life(mob/living/carbon/human/owner)
+ owner.sight |= SEE_MOBS|SEE_OBJS|SEE_TURFS
+ owner.see_in_dark = 8
+ owner.see_invisible = SEE_INVISIBLE_LEVEL_TWO
+
+/datum/mutation/human/x_ray/on_losing(mob/living/carbon/human/owner)
+ if(..()) return
+ owner.see_in_dark = initial(owner.see_in_dark)
+ owner.see_invisible = initial(owner.see_invisible)
+ owner.sight = initial(owner.sight)
+
+/datum/mutation/human/nearsight
+
+ name = "Near Sightness"
+ quality = MINOR_NEGATIVE
+ text_indication = "You can't see very well."
+
+/datum/mutation/human/nearsight/on_acquiring(mob/living/carbon/human/owner)
+ if(..()) return
+ owner.disabilities |= NEARSIGHT
+
+/datum/mutation/human/nearsight/on_losing(mob/living/carbon/human/owner)
+ if(..()) return
+ owner.disabilities &= ~NEARSIGHT
+
+/datum/mutation/human/epilepsy
+
+ name = "Epilepsy"
+ quality = NEGATIVE
+ text_indication = "You get a headache."
+
+/datum/mutation/human/epilepsy/on_life(mob/living/carbon/human/owner)
+ if ((prob(1) && owner.paralysis < 1))
+ owner << "You have a seizure!"
+ for(var/mob/O in viewers(owner, null) - owner)
+ O.show_message(text("[src] starts having a seizure!"), 1)
+ owner.Paralyse(10)
+ owner.Jitter(1000)
+
+/datum/mutation/human/bad_dna
+
+ name = "Unstable DNA"
+ quality = NEGATIVE
+ text_indication = "You feel strange."
+
+/datum/mutation/human/bad_dna/on_acquiring(mob/living/carbon/human/owner)
+ if(prob(95))
+ if(prob(50))
+ randmutb(owner)
+ else
+ randmuti(owner)
+ else
+ randmutg(owner)
+ on_losing(owner)
+
+/datum/mutation/human/cough
+
+ name = "Cough"
+ quality = MINOR_NEGATIVE
+ text_indication = "You start coughing."
+
+/datum/mutation/human/cough/on_life(mob/living/carbon/human/owner)
+ if((prob(5) && owner.paralysis <= 1))
+ owner.drop_item()
+ owner.emote("cough")
+
+/datum/mutation/human/clumsy
+
+ name = "Clumsiness"
+ quality = MINOR_NEGATIVE
+ text_indication = "You feel lightheaded."
+
+/datum/mutation/human/clumsy/on_acquiring(mob/living/carbon/human/owner)
+ if(..()) return
+ owner.disabilities |= CLUMSY
+
+/datum/mutation/human/clumsy/on_losing(mob/living/carbon/human/owner)
+ if(..()) return
+ owner.disabilities &= ~CLUMSY
+
+/datum/mutation/human/tourettes
+
+ name = "Tourettes Syndrome"
+ quality = NEGATIVE
+ text_indication = "You twitch."
+
+/datum/mutation/human/tourettes/on_life(mob/living/carbon/human/owner)
+ if((prob(10) && owner.paralysis <= 1))
+ owner.Stun(10)
+ switch(rand(1, 3))
+ if(1)
+ owner.emote("twitch")
+ if(2 to 3)
+ owner.say("[prob(50) ? ";" : ""][pick("SHIT", "PISS", "FUCK", "CUNT", "COCKSUCKER", "MOTHERFUCKER", "TITS")]")
+ var/x_offset_old = owner.pixel_x
+ var/y_offset_old = owner.pixel_y
+ var/x_offset = owner.pixel_x + rand(-2,2)
+ var/y_offset = owner.pixel_y + rand(-1,1)
+ animate(owner, pixel_x = x_offset, pixel_y = y_offset, time = 1)
+ animate(owner, pixel_x = x_offset_old, pixel_y = y_offset_old, time = 1)
+
+/datum/mutation/human/nervousness
+
+ name = "Nervousness"
+ quality = MINOR_NEGATIVE
+ text_indication = "You feel nervous."
+
+/datum/mutation/human/nervousness/on_life(mob/living/carbon/human/owner)
+ if(prob(10))
+ owner.stuttering = max(10, owner.stuttering)
+
+/datum/mutation/human/deaf
+
+ name = "Deafness"
+ quality = NEGATIVE
+ text_indication = "You can't seem to hear anything."
+
+/datum/mutation/human/deaf/on_acquiring(mob/living/carbon/human/owner)
+ if(..()) return
+ owner.disabilities |= DEAF
+
+/datum/mutation/human/deaf/on_losing(mob/living/carbon/human/owner)
+ if(..()) return
+ owner.disabilities &= ~DEAF
+
+/datum/mutation/human/blind
+
+ name = "Blindness"
+ quality = NEGATIVE
+ text_indication = "You can't seem to see anything."
+
+/datum/mutation/human/blind/on_acquiring(mob/living/carbon/human/owner)
+ if(..()) return
+ owner.disabilities |= BLIND
+
+/datum/mutation/human/blind/on_losing(mob/living/carbon/human/owner)
+ if(..()) return
+ owner.disabilities &= ~BLIND
+
+/datum/mutation/human/race
+
+ name = "Monkified"
+ quality = NEGATIVE
+
+/datum/mutation/human/race/on_acquiring(mob/living/carbon/human/owner)
+ if(..()) return
+ . = owner.monkeyize(TR_KEEPITEMS | TR_KEEPIMPLANTS | TR_KEEPDAMAGE | TR_KEEPVIRUS | TR_KEEPSE)
+
+/datum/mutation/human/race/gain_indication(mob/living/carbon/human/owner)
+ return
+
+/datum/mutation/human/race/lose_indication(mob/living/carbon/monkey/owner)
+ return
+
+/datum/mutation/human/race/on_losing(mob/living/carbon/monkey/owner)
+ if(..()) return
+ . = owner.humanize(TR_KEEPITEMS | TR_KEEPIMPLANTS | TR_KEEPDAMAGE | TR_KEEPVIRUS | TR_KEEPSE)
+
+/datum/mutation/human/laser_eyes
+
+ name = "Laser Eyes"
+ quality = POSITIVE
+ dna_block = NON_SCANNABLE
+ text_indication = "You feel pressure building up behind your eyes."
+
+/datum/mutation/human/laser_eyes/on_ranged_attack(mob/living/carbon/human/owner, atom/target)
+ if(owner.a_intent == "harm")
+ owner.LaserEyes(target)
\ No newline at end of file
diff --git a/code/datums/spells/genetic.dm b/code/datums/spells/genetic.dm
index 0a3984529bf..20b33bf4694 100644
--- a/code/datums/spells/genetic.dm
+++ b/code/datums/spells/genetic.dm
@@ -17,14 +17,14 @@
/obj/effect/proc_holder/spell/targeted/genetic/cast(list/targets)
- for(var/mob/living/target in targets)
- target.mutations.Add(mutations)
+ for(var/mob/living/carbon/target in targets)
+ for(var/A in mutations)
+ target.dna.add_mutation(A)
target.disabilities |= disabilities
- target.update_mutations() //update target's mutation overlays
spawn(duration)
if(target && !target.gc_destroyed)
- target.mutations.Remove(mutations)
+ for(var/A in mutations)
+ target.dna.remove_mutation(A)
target.disabilities &= ~disabilities
- target.update_mutations()
return
\ No newline at end of file
diff --git a/code/datums/spells/wizard.dm b/code/datums/spells/wizard.dm
index ac9ed3763ca..b3a7df60f62 100644
--- a/code/datums/spells/wizard.dm
+++ b/code/datums/spells/wizard.dm
@@ -42,7 +42,7 @@
include_user = 1
centcom_cancast = 0
- mutations = list(LASER, HULK)
+ mutations = list(LASEREYES, HULK)
duration = 300
cooldown_min = 300 //25 deciseconds reduction per rank
diff --git a/code/datums/supplypacks.dm b/code/datums/supplypacks.dm
index 13ebd0e529f..2e34238fe2c 100644
--- a/code/datums/supplypacks.dm
+++ b/code/datums/supplypacks.dm
@@ -582,6 +582,8 @@ var/list/all_supply_groups = list(supply_emergency,supply_security,supply_engine
/obj/item/weapon/reagent_containers/glass/bottle/pierrot_throat,
/obj/item/weapon/reagent_containers/glass/bottle/brainrot,
/obj/item/weapon/reagent_containers/glass/bottle/hullucigen_virion,
+ /obj/item/weapon/reagent_containers/glass/bottle/anxiety,
+ /obj/item/weapon/reagent_containers/glass/bottle/beesease,
/obj/item/weapon/storage/box/syringes,
/obj/item/weapon/storage/box/beakers,
/obj/item/weapon/reagent_containers/glass/bottle/mutagen)
diff --git a/code/game/atoms.dm b/code/game/atoms.dm
index f0443ee1683..9b27a40ebbc 100644
--- a/code/game/atoms.dm
+++ b/code/game/atoms.dm
@@ -41,6 +41,13 @@
var/mob/living/M = src
M.take_organ_damage(20)
+/atom/proc/attack_hulk(mob/living/carbon/human/hulk, do_attack_animation = 0)
+ if(do_attack_animation)
+ hulk.changeNext_move(CLICK_CD_MELEE)
+ add_logs(hulk, src, "punched", "hulk powers", admin=0)
+ hulk.do_attack_animation(src)
+ return
+
/atom/proc/CheckParts()
return
@@ -398,4 +405,4 @@ var/list/blood_splatter_icons = list()
return
/atom/proc/narsie_act()
- return
\ No newline at end of file
+ return
diff --git a/code/game/dna.dm b/code/game/dna.dm
index c06ed439e08..399c8360ff6 100644
--- a/code/game/dna.dm
+++ b/code/game/dna.dm
@@ -23,6 +23,28 @@
var/datum/species/species = new /datum/species/human() //The type of mutant race the player is if applicable (i.e. potato-man)
var/mutant_color = "FFF" // What color you are if you have certain speciess
var/real_name //Stores the real name of the person who originally got this dna datum. Used primarely for changelings,
+ var/list/mutations = list() //All mutations are from now on here
+ var/mob/living/carbon/holder
+
+/datum/dna/New(mob/living/carbon/new_holder)
+ if(new_holder && istype(new_holder))
+ holder = new_holder
+
+/datum/dna/proc/add_mutation(mutation_name)
+ var/datum/mutation/human/HM = mutations_list[mutation_name]
+ HM.on_acquiring(holder)
+
+/datum/dna/proc/remove_mutation(mutation_name)
+ var/datum/mutation/human/HM = mutations_list[mutation_name]
+ HM.on_losing(holder)
+
+/datum/dna/proc/check_mutation(mutation_name)
+ var/datum/mutation/human/HM = mutations_list[mutation_name]
+ return mutations.Find(HM)
+
+/datum/dna/proc/remove_all_mutations()
+ for(var/datum/mutation/human/HM in mutations)
+ HM.on_losing(holder)
/datum/dna/proc/generate_uni_identity(mob/living/carbon/character)
. = ""
@@ -51,13 +73,19 @@
/datum/dna/proc/generate_struc_enzymes(mob/living/carbon/character)
var/list/L = list("0","1","2","3","4","5","6")
- . = ""
- for(var/i=1, i<=DNA_STRUC_ENZYMES_BLOCKS, i++)
- if(i == RACEBLOCK)
- . += construct_block(istype(character,/mob/living/carbon/monkey)+1, 2)
+ var/list/sorting = list()
+ sorting.len = 14
+ var/result
+ for(var/datum/mutation/human/A in good_mutations + bad_mutations + not_good_mutations)
+ if(A.name == RACEMUT && istype(character,/mob/living/carbon/monkey))
+ sorting[A.dna_block] = num2hex(A.lowest_value + rand(0, 256 * 6), DNA_BLOCK_SIZE)
+ character.dna.mutations.Add(mutations_list[RACEMUT])
else
- . += random_string(DNA_BLOCK_SIZE, L)
- return .
+ sorting[A.dna_block] = random_string(DNA_BLOCK_SIZE, L)
+
+ for(var/B in sorting)
+ result += B
+ return result
/datum/dna/proc/generate_unique_enzymes(mob/living/carbon/character)
. = ""
@@ -130,7 +158,7 @@
return character.dna
/proc/create_dna(mob/living/carbon/C, datum/species/S) //don't use this unless you're about to use hardset_dna or ready_dna
- C.dna = new /datum/dna()
+ C.dna = new /datum/dna(C)
if(S) C.dna.species = new S() // do not remove; this is here to prevent runtimes
/////////////////////////// DNA DATUM
@@ -171,9 +199,13 @@
return
/proc/randmutb(mob/living/carbon/M)
+ var/datum/mutation/human/HM = pick(bad_mutations | not_good_mutations)
+ HM.on_acquiring(M)
return randmut(M, bad_se_blocks)
/proc/randmutg(mob/living/carbon/M)
+ var/datum/mutation/human/HM = pick(good_mutations)
+ HM.on_acquiring(M)
return randmut(M, good_se_blocks | op_se_blocks)
/proc/randmuti(mob/living/carbon/M)
@@ -233,99 +265,15 @@
if(!check_dna_integrity(M))
return 0
- M.disabilities = 0
- M.sdisabilities = 0
- M.mutations.Cut()
+ var/mob/living/carbon/C = M
+ var/mob/living/carbon/temp
- M.see_in_dark = initial(M.see_in_dark)
- M.see_invisible = initial(M.see_invisible)
+ for(var/A in mutations_list)
+ var/datum/mutation/human/HM = mutations_list[A]
+ temp = HM.check_block(C)
+ if(ismob(temp))
+ C = temp
- var/list/blocks = new /list(DNA_STRUC_ENZYMES_BLOCKS) //on-off status for each block
- for(var/i in bad_se_blocks) //bad mutations
- blocks[i] = (deconstruct_block(getblock(M.dna.struc_enzymes, i), BAD_MUTATION_DIFFICULTY) == BAD_MUTATION_DIFFICULTY)
- blocks[RACEBLOCK] = (deconstruct_block(getblock(M.dna.struc_enzymes, RACEBLOCK), BAD_MUTATION_DIFFICULTY) == BAD_MUTATION_DIFFICULTY)
- for(var/i in good_se_blocks) //good mutations
- blocks[i] = (deconstruct_block(getblock(M.dna.struc_enzymes, i), GOOD_MUTATION_DIFFICULTY) == GOOD_MUTATION_DIFFICULTY)
- for(var/i in op_se_blocks) //Overpowered mutations...extra difficult to obtain
- blocks[i] = (deconstruct_block(getblock(M.dna.struc_enzymes, i), OP_MUTATION_DIFFICULTY) == OP_MUTATION_DIFFICULTY)
-
- if(blocks[NEARSIGHTEDBLOCK])
- M.disabilities |= NEARSIGHTED
- M << "Your eyes feel strange."
- if(blocks[EPILEPSYBLOCK])
- M.disabilities |= EPILEPSY
- M << "You get a headache."
- if(blocks[STRANGEBLOCK])
- M << "You feel strange."
- if(prob(95))
- if(prob(50)) randmutb(M)
- else randmuti(M)
- else randmutg(M)
- if(blocks[COUGHBLOCK])
- M.disabilities |= COUGHING
- M << "You start coughing."
- if(blocks[CLUMSYBLOCK])
- M << "You feel lightheaded."
- M.mutations |= CLUMSY
- if(blocks[TOURETTESBLOCK])
- M.disabilities |= TOURETTES
- M << "You twitch."
- if(blocks[NERVOUSBLOCK])
- M.disabilities |= NERVOUS
- M << "You feel nervous."
- if(blocks[DEAFBLOCK])
- M.sdisabilities |= DEAF
- M.ear_deaf = 1
- M << "You can't seem to hear anything."
- if(blocks[BLINDBLOCK])
- M.sdisabilities |= BLIND
- M << "You can't seem to see anything."
- if(blocks[HULKBLOCK])
- if(inj || prob(10))
- M.mutations |= HULK
- M << "Your muscles hurt."
- if(blocks[XRAYBLOCK])
- if(inj || prob(30))
- M.mutations |= XRAY
- M << "The walls suddenly disappear."
- M.sight |= SEE_MOBS|SEE_OBJS|SEE_TURFS
- M.see_in_dark = 8
- M.see_invisible = SEE_INVISIBLE_LEVEL_TWO
- if(blocks[FIREBLOCK])
- if(inj || prob(30))
- M.mutations |= COLD_RESISTANCE
- M << "Your body feels warm."
- if(blocks[TELEBLOCK])
- if(inj || prob(25))
- M.mutations |= TK
- M << "You feel smarter."
-
-
- /* If you want the new mutations to work, UNCOMMENT THIS.
- if(istype(M, /mob/living/carbon))
- for (var/datum/mutations/mut in global_mutations)
- mut.check_mutation(M)
- */
-
-//////////////////////////////////////////////////////////// Monkey Block
- if(blocks[RACEBLOCK])
- if(istype(M, /mob/living/carbon/human)) // human > monkey
- var/mob/living/carbon/monkey/O = M.monkeyize(TR_KEEPITEMS | TR_KEEPIMPLANTS | TR_KEEPDAMAGE | TR_KEEPVIRUS)
- if(connected) //inside dna thing
- var/obj/machinery/dna_scannernew/C = connected
- O.loc = C
- C.occupant = O
- connected = null
- return 1
- else
- if(istype(M, /mob/living/carbon/monkey)) // monkey > human,
- var/mob/living/carbon/human/O = M.humanize(TR_KEEPITEMS | TR_KEEPIMPLANTS | TR_KEEPDAMAGE | TR_KEEPVIRUS)
- if(O && connected) //inside dna thing
- var/obj/machinery/dna_scannernew/C = connected
- O.loc = C
- C.occupant = O
- connected = null
- return 1
//////////////////////////////////////////////////////////// Monkey Block
if(M)
M.update_icon = 1 //queue a full icon update at next life() call
@@ -865,7 +813,12 @@
if("se")
if(buffer_slot["SE"])
I = new /obj/item/weapon/dnainjector(loc)
- I.fields = list("SE"=buffer_slot["SE"])
+ for(var/datum/mutation/human/HM in good_mutations + bad_mutations + not_good_mutations)
+ if(HM.check_block_string(buffer_slot["SE"]))
+ if(prob(HM.get_chance))
+ I.add_mutations.Add(HM)
+ else
+ I.remove_mutations.Add(HM)
I.damage_coeff = connected.damage_coeff
if("ui")
if(buffer_slot["UI"])
diff --git a/code/game/gamemodes/changeling/changeling.dm b/code/game/gamemodes/changeling/changeling.dm
index eff9b4e843a..7b5c1acc332 100644
--- a/code/game/gamemodes/changeling/changeling.dm
+++ b/code/game/gamemodes/changeling/changeling.dm
@@ -157,9 +157,10 @@ var/list/possible_changeling_IDs = list("Alpha","Beta","Gamma","Delta","Epsilon"
changeling.current << "You must complete the following tasks:"
if (changeling.current.mind)
- if (changeling.current.mind.assigned_role == "Clown")
- changeling.current << "You have evolved beyond your clownish nature, allowing you to wield weapons without harming yourself."
- changeling.current.mutations.Remove(CLUMSY)
+ var/mob/living/carbon/human/H = changeling.current
+ if(H.mind.assigned_role == "Clown")
+ H << "You have evolved beyond your clownish nature, allowing you to wield weapons without harming yourself."
+ H.dna.remove_mutation(CLOWNMUT)
var/obj_count = 1
for(var/datum/objective/objective in changeling.objectives)
@@ -285,7 +286,7 @@ var/list/possible_changeling_IDs = list("Alpha","Beta","Gamma","Delta","Epsilon"
return
if(!target)
return
- if((NOCLONE in target.mutations) || (HUSK in target.mutations))
+ if((target.disabilities & NOCLONE) || (target.disabilities & HUSK))
user << "DNA of [target] is ruined beyond usability!"
return
if(!ishuman(target))//Absorbing monkeys is entirely possible, but it can cause issues with transforming. That's what lesser form is for anyway!
diff --git a/code/game/gamemodes/changeling/powers/tiny_prick.dm b/code/game/gamemodes/changeling/powers/tiny_prick.dm
index f25022ce6f3..177450f199c 100644
--- a/code/game/gamemodes/changeling/powers/tiny_prick.dm
+++ b/code/game/gamemodes/changeling/powers/tiny_prick.dm
@@ -81,7 +81,7 @@
/obj/effect/proc_holder/changeling/sting/transformation/can_sting(var/mob/user, var/mob/target)
if(!..())
return
- if((HUSK in target.mutations) || !check_dna_integrity(target))
+ if((target.disabilities & HUSK) || !check_dna_integrity(target))
user << "Our sting appears ineffective against its DNA."
return 0
return 1
@@ -140,7 +140,7 @@ obj/effect/proc_holder/changeling/sting/blind
/obj/effect/proc_holder/changeling/sting/blind/sting_action(var/mob/user, var/mob/target)
add_logs(user, target, "stung", object="blind sting")
target << "Your eyes burn horrifically!"
- target.disabilities |= NEARSIGHTED
+ target.disabilities |= NEARSIGHT
target.eye_blind = 20
target.eye_blurry = 40
feedback_add_details("changeling_powers","BS")
diff --git a/code/game/gamemodes/cult/cult.dm b/code/game/gamemodes/cult/cult.dm
index a8394f6235f..b4f640aa4c2 100644
--- a/code/game/gamemodes/cult/cult.dm
+++ b/code/game/gamemodes/cult/cult.dm
@@ -139,7 +139,7 @@
if (mob.mind)
if (mob.mind.assigned_role == "Clown")
mob << "Your training has allowed you to overcome your clownish nature, allowing you to wield weapons without harming yourself."
- mob.mutations.Remove(CLUMSY)
+ mob.dna.remove_mutation(CLOWNMUT)
var/obj/item/weapon/paper/talisman/supply/T = new(mob)
diff --git a/code/game/gamemodes/cult/runes.dm b/code/game/gamemodes/cult/runes.dm
index 9bc5be14011..de9e1540a1a 100644
--- a/code/game/gamemodes/cult/runes.dm
+++ b/code/game/gamemodes/cult/runes.dm
@@ -886,8 +886,8 @@ var/list/sacrificed = list()
C.ear_deaf += 50
C.show_message("The world around you suddenly becomes quiet.", 3)
affected++
- if(prob(1))
- C.sdisabilities |= DEAF
+ if(prob(1) && ishuman(C))
+ C.dna.add_mutation(DEAFMUT)
if(affected)
usr.say("Sti[pick("'","`")] kaliedir!")
usr << "The world becomes quiet as the deafening rune dissipates into fine dust."
@@ -926,9 +926,9 @@ var/list/sacrificed = list()
C.eye_blurry += 50
C.eye_blind += 20
if(prob(5))
- C.disabilities |= NEARSIGHTED
+ C.disabilities |= NEARSIGHT
if(prob(10))
- C.sdisabilities |= BLIND
+ C.disabilities |= BLIND
C.show_message("Suddenly you see red flash that blinds you.", 3)
affected++
if(affected)
@@ -1030,8 +1030,7 @@ var/list/sacrificed = list()
if(iscarbon(L))
var/mob/living/carbon/C = L
flick("e_flash", C.flash)
- if(C.stuttering < 1 && (!(HULK in C.mutations)))
- C.stuttering = 1
+ C.stuttering = 1
C.Weaken(1)
C.Stun(1)
C.show_message("The rune explodes in a bright flash.", 3)
@@ -1057,10 +1056,9 @@ var/list/sacrificed = list()
else if(iscarbon(T))
var/mob/living/carbon/C = T
flick("e_flash", C.flash)
- if (!(HULK in C.mutations))
- C.silent += 15
- C.Weaken(10)
- C.Stun(10)
+ C.silent += 15
+ C.Weaken(10)
+ C.Stun(10)
return
/////////////////////////////////////////TWENTY-FIFTH RUNE
diff --git a/code/game/gamemodes/gang/gang.dm b/code/game/gamemodes/gang/gang.dm
index 718f9ad8d65..c578bb82f20 100644
--- a/code/game/gamemodes/gang/gang.dm
+++ b/code/game/gamemodes/gang/gang.dm
@@ -117,7 +117,7 @@
if (mob.mind)
if (mob.mind.assigned_role == "Clown")
mob << "Your training has allowed you to overcome your clownish nature, allowing you to wield weapons without harming yourself."
- mob.mutations.Remove(CLUMSY)
+ mob.dna.remove_mutation(CLOWNMUT)
var/obj/item/device/flash/T = new(mob)
diff --git a/code/game/gamemodes/revolution/revolution.dm b/code/game/gamemodes/revolution/revolution.dm
index a7ab1548cf1..9b4a21fbc92 100644
--- a/code/game/gamemodes/revolution/revolution.dm
+++ b/code/game/gamemodes/revolution/revolution.dm
@@ -132,7 +132,7 @@
if (mob.mind)
if (mob.mind.assigned_role == "Clown")
mob << "Your training has allowed you to overcome your clownish nature, allowing you to wield weapons without harming yourself."
- mob.mutations.Remove(CLUMSY)
+ mob.dna.remove_mutation(CLOWNMUT)
var/obj/item/device/flash/T = new(mob)
diff --git a/code/game/gamemodes/setupgame.dm b/code/game/gamemodes/setupgame.dm
index fe82f63dd87..2e5721b5fe7 100644
--- a/code/game/gamemodes/setupgame.dm
+++ b/code/game/gamemodes/setupgame.dm
@@ -3,50 +3,16 @@
for(var/i=1, i<=DNA_STRUC_ENZYMES_BLOCKS, i++)
avnums[i] = i
- HULKBLOCK = pick_n_take(avnums)
- TELEBLOCK = pick_n_take(avnums)
-
- FIREBLOCK = pick_n_take(avnums)
- XRAYBLOCK = pick_n_take(avnums)
-
- CLUMSYBLOCK = pick_n_take(avnums)
- STRANGEBLOCK = pick_n_take(avnums)
- DEAFBLOCK = pick_n_take(avnums)
- BLINDBLOCK = pick_n_take(avnums)
- NEARSIGHTEDBLOCK = pick_n_take(avnums)
- EPILEPSYBLOCK = pick_n_take(avnums)
- COUGHBLOCK = pick_n_take(avnums)
- TOURETTESBLOCK = pick_n_take(avnums)
- NERVOUSBLOCK = pick_n_take(avnums)
- RACEBLOCK = pick_n_take(avnums)
-
- bad_se_blocks = list(NEARSIGHTEDBLOCK,EPILEPSYBLOCK,STRANGEBLOCK,COUGHBLOCK,CLUMSYBLOCK,TOURETTESBLOCK,NERVOUSBLOCK,DEAFBLOCK,BLINDBLOCK)
- good_se_blocks = list(FIREBLOCK,XRAYBLOCK)
- op_se_blocks = list(HULKBLOCK,TELEBLOCK)
-
- NULLED_SE = repeat_string(DNA_STRUC_ENZYMES_BLOCKS, repeat_string(DNA_BLOCK_SIZE, "_"))
- NULLED_UI = repeat_string(DNA_UNI_IDENTITY_BLOCKS, repeat_string(DNA_BLOCK_SIZE, "_"))
- // HIDDEN MUTATIONS / SUPERPOWERS INITIALIZTION
-
-/*
- for(var/x in typesof(/datum/mutations) - /datum/mutations)
- var/datum/mutations/mut = new x
-
- for(var/i = 1, i <= mut.required, i++)
- var/datum/mutationreq/require = new/datum/mutationreq
- require.block = rand(1, 13)
- require.subblock = rand(1, 3)
-
- // Create random requirement identification
- require.reqID = pick("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", \
- "B", "C", "D", "E", "F")
-
- mut.requirements += require
-
-
- global_mutations += mut// add to global mutations list!
-*/
-
+ for(var/A in typesof(/datum/mutation/human) - /datum/mutation/human)
+ var/datum/mutation/human/B = new A()
+ if(B.dna_block == NON_SCANNABLE) return
+ B.dna_block = pick_n_take(avnums)
+ if(B.quality == POSITIVE)
+ good_mutations |= B
+ else if(B.quality == NEGATIVE)
+ bad_mutations |= B
+ else if(B.quality == MINOR_NEGATIVE)
+ not_good_mutations |= B
/datum/subsystem/ticker/proc/setupFactions()
// Populate the factions list:
diff --git a/code/game/gamemodes/traitor/traitor.dm b/code/game/gamemodes/traitor/traitor.dm
index 13b89560a57..44c6b4365e8 100644
--- a/code/game/gamemodes/traitor/traitor.dm
+++ b/code/game/gamemodes/traitor/traitor.dm
@@ -266,7 +266,7 @@
if (traitor_mob.mind)
if (traitor_mob.mind.assigned_role == "Clown")
traitor_mob << "Your training has allowed you to overcome your clownish nature, allowing you to wield weapons without harming yourself."
- traitor_mob.mutations.Remove(CLUMSY)
+ traitor_mob.dna.remove_mutation(CLOWNMUT)
// find a radio! toolbox(es), backpack, belt, headset
var/loc = ""
diff --git a/code/game/gamemodes/wizard/raginmages.dm b/code/game/gamemodes/wizard/raginmages.dm
new file mode 100644
index 00000000000..add82be53ea
--- /dev/null
+++ b/code/game/gamemodes/wizard/raginmages.dm
@@ -0,0 +1,130 @@
+/datum/game_mode/wizard/raginmages
+ name = "ragin' mages"
+ config_tag = "raginmages"
+ required_players = 20
+ var/max_mages = 0
+ var/making_mage = 0
+ var/mages_made = 1
+ var/time_checked = 0
+
+/datum/game_mode/wizard/announce()
+ world << "The current game mode is - Ragin' Mages!"
+ world << "The Space Wizard Federation is pissed, help defeat all the space wizards!"
+
+/datum/game_mode/wizard/raginmages/post_setup()
+ var/playercount = 0
+ ..()
+ if(!max_mages)
+ for(var/mob/living/player in mob_list)
+ if (player.client && player.stat != 2)
+ playercount += 1
+ max_mages = round(playercount / 2)
+
+/datum/game_mode/wizard/raginmages/greet_wizard(var/datum/mind/wizard, var/you_are=1)
+ if (you_are)
+ wizard.current << "You are the Space Wizard!"
+ wizard.current << "The Space Wizards Federation has given you the following tasks:"
+
+ var/obj_count = 1
+ wizard.current << "Objective Alpha: Make sure the station pays for its actions against our diplomats"
+ for(var/datum/objective/objective in wizard.objectives)
+ wizard.current << "Objective #[obj_count]: [objective.explanation_text]"
+ obj_count++
+ return
+
+/datum/game_mode/wizard/raginmages/check_finished()
+ var/wizards_alive = 0
+ for(var/datum/mind/wizard in wizards)
+ if(!istype(wizard.current,/mob/living/carbon))
+ continue
+ if(istype(wizard.current,/mob/living/carbon/brain))
+ continue
+ if(wizard.current.stat==2)
+ continue
+ if(wizard.current.stat==1)
+ if(wizard.current.health < 0)
+ wizard.current << "The Space Wizard Federation is upset with your performance and have terminated your employment."
+ wizard.current.stat = 2
+ continue
+ wizards_alive++
+
+ if (wizards_alive)
+ if(!time_checked) time_checked = world.time
+ if(world.time > time_checked + 500 && (mages_made < max_mages))
+ time_checked = world.time
+ make_more_mages()
+ else
+ if(wizards.len >= max_mages)
+ finished = 1
+ return 1
+ else
+ make_more_mages()
+ return ..()
+
+/datum/game_mode/wizard/raginmages/proc/make_more_mages()
+
+ if(making_mage)
+ return 0
+ if(mages_made >= max_mages)
+ return 0
+ making_mage = 1
+ mages_made++
+ var/list/mob/dead/observer/candidates = list()
+ var/mob/dead/observer/theghost = null
+ spawn(rand(100, 200))
+ message_admins("SWF is still pissed, sending another wizard - [max_mages - mages_made] left.")
+ for(var/mob/dead/observer/G in player_list)
+ if(G.client && !G.client.holder && !G.client.is_afk() && G.client.prefs.be_special & BE_WIZARD)
+ if(!jobban_isbanned(G, "wizard") && !jobban_isbanned(G, "Syndicate"))
+ candidates += G
+ if(!candidates.len)
+ message_admins("No applicable ghosts for the next ragin' mage, asking ghosts instead.")
+ var/time_passed = world.time
+ for(var/mob/dead/observer/G in player_list)
+ if(!jobban_isbanned(G, "wizard") && !jobban_isbanned(G, "Syndicate"))
+ spawn(0)
+ switch(alert(G, "Do you wish to be considered for the position of Space Wizard Foundation 'diplomat'?","Please answer in 30 seconds!","Yes","No"))
+ if("Yes")
+ if((world.time-time_passed)>300)//If more than 30 game seconds passed.
+ continue
+ candidates += G
+ if("No")
+ continue
+
+ sleep(300)
+ if(!candidates.len)
+ message_admins("This is awkward, sleeping until another mage check...")
+ making_mage = 0
+ mages_made--
+ return
+ else
+ shuffle(candidates)
+ for(var/mob/i in candidates)
+ if(!i || !i.client) continue //Dont bother removing them from the list since we only grab one wizard
+
+ theghost = i
+ break
+
+ if(theghost)
+ var/mob/living/carbon/human/new_character= makeBody(theghost)
+ new_character.mind.make_Wizard()
+ making_mage = 0
+ return 1
+
+/datum/game_mode/wizard/raginmages/declare_completion()
+ if(finished)
+ feedback_set_details("round_end_result","loss - wizard killed")
+ world << "The crew has managed to hold off the wizard attack! The Space Wizards Federation has been taught a lesson they will not soon forget!"
+ ..(1)
+
+/datum/game_mode/wizard/raginmages/proc/makeBody(var/mob/dead/observer/G_found) // Uses stripped down and bastardized code from respawn character
+ if(!G_found || !G_found.key) return
+
+ //First we spawn a dude.
+ var/mob/living/carbon/human/new_character = new(pick(latejoin))//The mob being spawned.
+
+ G_found.client.prefs.copy_to(new_character)
+ ready_dna(new_character)
+ new_character.key = G_found.key
+
+ return new_character
diff --git a/code/game/gamemodes/wizard/rightandwrong.dm b/code/game/gamemodes/wizard/rightandwrong.dm
index fc187c6c583..d6d3aadad1a 100644
--- a/code/game/gamemodes/wizard/rightandwrong.dm
+++ b/code/game/gamemodes/wizard/rightandwrong.dm
@@ -114,11 +114,8 @@
new /obj/item/clothing/head/helmet/space/hardsuit/wizard(get_turf(H))
if("scrying")
new /obj/item/weapon/scrying(get_turf(H))
- if (!(XRAY in H.mutations))
- H.mutations.Add(XRAY)
- H.sight |= (SEE_MOBS|SEE_OBJS|SEE_TURFS)
- H.see_in_dark = 8
- H.see_invisible = SEE_INVISIBLE_LEVEL_TWO
+ if (!(H.dna.check_mutation(XRAY)))
+ H.dna.add_mutation(XRAY)
H << "The walls suddenly disappear."
if("special")
diff --git a/code/game/gamemodes/wizard/spellbook.dm b/code/game/gamemodes/wizard/spellbook.dm
index c18045cbfa5..8b687b283b9 100644
--- a/code/game/gamemodes/wizard/spellbook.dm
+++ b/code/game/gamemodes/wizard/spellbook.dm
@@ -38,8 +38,8 @@
dat += "
"
dat += "Learn and Improve Magical Abilities
"
dat += "Summon Magical Tools and Weapons
"
- dat += "Raise The Stakes For More Power
"
-
+ if(ticker.mode != "raginmages") // we totally need summon guns x 200
+ dat += "Raise The Stakes For More Power
"
dat += "
"
dat += "Re-memorize Spells
"
@@ -362,12 +362,8 @@
if("scrying")
feedback_add_details("wizard_spell_learned","SO") //please do not change the abbreviation to keep data processing consistent. Add a unique id to any new spells
new /obj/item/weapon/scrying(get_turf(H))
- if (!(XRAY in H.mutations))
- H.mutations.Add(XRAY)
- H.sight |= (SEE_MOBS|SEE_OBJS|SEE_TURFS)
- H.see_in_dark = 8
- H.see_invisible = SEE_INVISIBLE_LEVEL_TWO
- H << "The walls suddenly disappear."
+ if (!(H.dna.check_mutation(XRAY)))
+ H.dna.add_mutation(XRAY)
temp = "You have purchased a scrying orb, and gained x-ray vision."
max_uses--
else
@@ -563,4 +559,4 @@
/obj/item/weapon/spellbook/oneuse/charge/recoil(mob/user as mob)
..()
user <<"[src] suddenly feels very warm!"
- empulse(src, 1, 1)
\ No newline at end of file
+ empulse(src, 1, 1)
diff --git a/code/game/jobs/job/civilian.dm b/code/game/jobs/job/civilian.dm
index ac87495b6be..40289a5e0ec 100644
--- a/code/game/jobs/job/civilian.dm
+++ b/code/game/jobs/job/civilian.dm
@@ -235,7 +235,7 @@ Clown
H.equip_to_slot_or_del(new /obj/item/weapon/bikehorn(H), slot_l_store)
H.equip_to_slot_or_del(new /obj/item/toy/crayon/rainbow(H), slot_r_store)
- H.mutations.Add(CLUMSY)
+ H.dna.add_mutation(CLOWNMUT)
H.rename_self("clown")
/*
diff --git a/code/game/machinery/bots/ed209bot.dm b/code/game/machinery/bots/ed209bot.dm
index 9f690bfbac1..333cefdca0c 100644
--- a/code/game/machinery/bots/ed209bot.dm
+++ b/code/game/machinery/bots/ed209bot.dm
@@ -255,8 +255,7 @@ Auto Patrol[]"},
icon_state = "[lasercolor]ed209[on]"
var/mob/living/carbon/M = target
if(istype(M, /mob/living/carbon/human))
- if( M.stuttering < 5 && !(HULK in M.mutations) )
- M.stuttering = 5
+ M.stuttering = 5
M.Stun(5)
M.Weaken(5)
else
diff --git a/code/game/machinery/bots/secbot.dm b/code/game/machinery/bots/secbot.dm
index b060fd85ab6..2c9838cf9d5 100644
--- a/code/game/machinery/bots/secbot.dm
+++ b/code/game/machinery/bots/secbot.dm
@@ -218,8 +218,7 @@ Auto Patrol: []"},
icon_state = "secbot[on]"
var/mob/living/carbon/M = target
if(istype(M, /mob/living/carbon/human))
- if( M.stuttering < 5 && !(HULK in M.mutations) )
- M.stuttering = 5
+ M.stuttering = 5
M.Stun(5)
M.Weaken(5)
else
diff --git a/code/game/machinery/computer/camera.dm b/code/game/machinery/computer/camera.dm
index 0aa6ed942bc..37453e8ea44 100644
--- a/code/game/machinery/computer/camera.dm
+++ b/code/game/machinery/computer/camera.dm
@@ -9,7 +9,7 @@
var/mapping = 0//For the overview file, interesting bit of code.
/obj/machinery/computer/security/check_eye(var/mob/user as mob)
- if ((get_dist(user, src) > 1 || user.blinded || !( current ) || !( current.status )) && (!istype(user, /mob/living/silicon)))
+ if ((get_dist(user, src) > 1 || user.eye_blind || !( current ) || !( current.status )) && (!istype(user, /mob/living/silicon)))
return null
var/list/viewing = viewers(src)
if((istype(user,/mob/living/silicon/robot)) && (!(viewing.Find(user))))
@@ -64,7 +64,7 @@
return 0
if(C)
- if ((get_dist(user, src) > 1 || user.machine != src || user.blinded || !( C.can_use() )) && (!istype(user, /mob/living/silicon/ai)))
+ if ((get_dist(user, src) > 1 || user.machine != src || user.eye_blind || !( C.can_use() )) && (!istype(user, /mob/living/silicon/ai)))
if(!C.can_use() && !isAI(user))
src.current = null
return 0
diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm
index 6cd81597496..a536e5a485e 100644
--- a/code/game/machinery/doors/airlock.dm
+++ b/code/game/machinery/doors/airlock.dm
@@ -896,7 +896,8 @@ About the new airlock wires panel:
if(do_after(user,40,5,1))
if(density && !operating)//Door must be closed to weld.
if( !istype(src, /obj/machinery/door/airlock) || !user || !W || !W.isOn() || !user.loc )
- return playsound(loc, 'sound/items/Welder2.ogg', 50, 1)
+ return
+ playsound(loc, 'sound/items/Welder2.ogg', 50, 1)
welded = !welded
user.visible_message("[user.name] has [welded? "welded shut":"unwelded"] [src].", \
"You've [welded ? "welded the airlock shut":"unwelded the airlock"].")
diff --git a/code/game/machinery/doors/door.dm b/code/game/machinery/doors/door.dm
index 9b86745a5a4..df568fa4a23 100644
--- a/code/game/machinery/doors/door.dm
+++ b/code/game/machinery/doors/door.dm
@@ -17,6 +17,7 @@
var/normalspeed = 1
var/heat_proof = 0 // For glass airlocks/opacity firedoors
var/emergency = 0 // Emergency access override
+ var/sub_door = 0 // 1 if it's meant to go under another door.
/obj/machinery/door/New()
..()
diff --git a/code/game/machinery/doors/firedoor.dm b/code/game/machinery/doors/firedoor.dm
index c775105c5b6..fb3673b7e07 100644
--- a/code/game/machinery/doors/firedoor.dm
+++ b/code/game/machinery/doors/firedoor.dm
@@ -12,6 +12,7 @@
glass = 1
var/blocked = 0
var/nextstate = null
+ sub_door = 1
/obj/machinery/door/firedoor/Bumped(atom/AM)
diff --git a/code/game/machinery/doors/poddoor.dm b/code/game/machinery/doors/poddoor.dm
index 3f77034be02..24114f29b09 100644
--- a/code/game/machinery/doors/poddoor.dm
+++ b/code/game/machinery/doors/poddoor.dm
@@ -5,6 +5,7 @@
icon_state = "closed"
var/id = 1
var/auto_close = 0 // Time in seconds to automatically close when opened, 0 if it doesn't.
+ sub_door = 1
/obj/machinery/door/poddoor/preopen
icon_state = "open"
@@ -22,12 +23,12 @@
/obj/machinery/door/poddoor/attackby(obj/item/I, mob/user)
add_fingerprint(user)
- if(!istype(I, /obj/item/weapon/crowbar))
- return
if(istype(I, /obj/item/weapon/twohanded/fireaxe))
var/obj/item/weapon/twohanded/fireaxe/F = I
if(!F.wielded)
return
+ else if(!istype(I, /obj/item/weapon/crowbar))
+ return
if(stat & NOPOWER)
open(1) //ignore the usual power requirement.
diff --git a/code/game/machinery/flasher.dm b/code/game/machinery/flasher.dm
index 5e52de0bb9a..787057f6fae 100644
--- a/code/game/machinery/flasher.dm
+++ b/code/game/machinery/flasher.dm
@@ -95,7 +95,7 @@
flick("e_flash", O:flash)
O.eye_stat += rand(1, 2)
else
- if(!O.blinded)
+ if(!O.eye_blind)
flick("flash", O:flash)
O.eye_stat += rand(0, 2)
return 1
diff --git a/code/game/machinery/machinery.dm b/code/game/machinery/machinery.dm
index b8163959466..08d947dabe6 100644
--- a/code/game/machinery/machinery.dm
+++ b/code/game/machinery/machinery.dm
@@ -229,7 +229,7 @@ Class Procs:
if(restrained() || lying || stat || stunned || weakened)
return
if(!in_range(M, src))
- if((be_close == 0) && (TK in mutations))
+ if((be_close == 0) && (dna.check_mutation(TK)))
if(tkMaxRangeCheck(src, M))
return 1
return
diff --git a/code/game/machinery/newscaster.dm b/code/game/machinery/newscaster.dm
index 85fc2a42869..f9e55ea906e 100644
--- a/code/game/machinery/newscaster.dm
+++ b/code/game/machinery/newscaster.dm
@@ -786,18 +786,6 @@ var/list/obj/machinery/newscaster/allCasters = list() //Global list that will co
/obj/machinery/newscaster/attackby(obj/item/I as obj, mob/living/user as mob)
-/* if (istype(I, /obj/item/weapon/card/id) || istype(I, /obj/item/device/pda) ) //Name verification for channels or messages
- if(src.screen == 4 || src.screen == 5)
- if( istype(I, /obj/item/device/pda) )
- var/obj/item/device/pda/P = I
- if(P.id)
- src.scanned_user = "[P.id.registered_name] ([P.id.assignment])"
- src.screen=2
- else
- var/obj/item/weapon/card/id/T = I
- src.scanned_user = text("[T.registered_name] ([T.assignment])")
- src.screen=2*/ //Obsolete after autorecognition
-
if(istype(I, /obj/item/weapon/wrench))
user << "Now [anchored ? "un" : ""]securing [name]"
playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1)
@@ -809,26 +797,24 @@ var/list/obj/machinery/newscaster/allCasters = list() //Global list that will co
if (src.isbroken)
playsound(src.loc, 'sound/effects/hit_on_shattered_glass.ogg', 100, 1)
- for (var/mob/O in hearers(5, src.loc))
- O.show_message("[user.name] further abuses the shattered [src.name].")
+ src.loc.audible_message("[user.name] further abuses the shattered [src.name].", null, 5 )
else
if(istype(I, /obj/item/weapon) )
user.do_attack_animation(src)
var/obj/item/weapon/W = I
+ if(W.damtype == STAMINA)
+ return
if(W.force <15)
- for (var/mob/O in hearers(5, src.loc))
- O.show_message("[user.name] hits the [src.name] with the [W.name] with no visible effect." )
- playsound(src.loc, 'sound/effects/Glasshit.ogg', 100, 1)
+ src.loc.audible_message("[user.name] hits the [src.name] with the [W.name] with no visible effect.", null , 5 )
+ playsound(src.loc, 'sound/effects/Glasshit.ogg', 100, 1)
else
src.hitstaken++
if(src.hitstaken==3)
- for (var/mob/O in hearers(5, src.loc))
- O.show_message("[user.name] smashes the [src.name]!" )
+ src.loc.audible_message("[user.name] smashes the [src.name]!", null, 5 )
src.isbroken=1
playsound(src.loc, 'sound/effects/Glassbr3.ogg', 100, 1)
else
- for (var/mob/O in hearers(5, src.loc))
- O.show_message("[user.name] forcefully slams the [src.name] with the [I.name]!" )
+ src.loc.audible_message("[user.name] forcefully slams the [src.name] with the [I.name]!", null, 5 )
playsound(src.loc, 'sound/effects/Glasshit.ogg', 100, 1)
else
user << "This does nothing."
diff --git a/code/game/machinery/pipe/construction.dm b/code/game/machinery/pipe/construction.dm
index 711eca2679a..de4b1fe11ac 100644
--- a/code/game/machinery/pipe/construction.dm
+++ b/code/game/machinery/pipe/construction.dm
@@ -51,6 +51,7 @@ Buildable meters
if (make_from)
src.dir = make_from.dir
src.pipename = make_from.name
+ src.color = make_from.color
var/is_bent
if (make_from.initialize_directions in list(NORTH|SOUTH, WEST|EAST))
is_bent = 0
@@ -70,7 +71,7 @@ Buildable meters
src.pipe_type = PIPE_MANIFOLD
else if(istype(make_from, /obj/machinery/atmospherics/unary/vent_pump))
src.pipe_type = PIPE_UVENT
- else if(istype(make_from, /obj/machinery/atmospherics/valve/digital))
+ else if(istype(make_from, /obj/machinery/atmospherics/binary/valve/digital))
src.pipe_type = PIPE_DVALVE
else if(istype(make_from, /obj/machinery/atmospherics/binary/valve))
src.pipe_type = PIPE_MVALVE
@@ -294,7 +295,7 @@ var/global/list/pipeID2State = list(
return rotate()
/obj/item/pipe/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob)
- ..()
+
//*
if (!istype(W, /obj/item/weapon/wrench))
return ..()
@@ -314,51 +315,51 @@ var/global/list/pipeID2State = list(
switch(pipe_type)
if(PIPE_SIMPLE_STRAIGHT, PIPE_SIMPLE_BENT)
var/obj/machinery/atmospherics/pipe/simple/P = new( src.loc )
- P.construction(dir, pipe_dir)
+ P.construction(dir, pipe_dir, pipe_type, color)
if(PIPE_HE_STRAIGHT, PIPE_HE_BENT)
var/obj/machinery/atmospherics/pipe/simple/heat_exchanging/P = new ( src.loc )
P.initialize_directions_he = pipe_dir
- P.construction(dir, pipe_dir)
+ P.construction(dir, pipe_dir, pipe_type, color)
if(PIPE_CONNECTOR)
var/obj/machinery/atmospherics/unary/portables_connector/C = new( src.loc )
if (pipename)
C.name = pipename
- C.construction(dir, pipe_dir)
+ C.construction(dir, pipe_dir, pipe_type, color)
if(PIPE_MANIFOLD)
var/obj/machinery/atmospherics/pipe/manifold/M = new(loc)
- M.construction(dir, pipe_dir)
+ M.construction(dir, pipe_dir, pipe_type, color)
if(PIPE_4WAYMANIFOLD)
var/obj/machinery/atmospherics/pipe/manifold4w/M = new( src.loc )
- M.construction(dir, pipe_dir)
+ M.construction(dir, pipe_dir, pipe_type, color)
if(PIPE_JUNCTION)
var/obj/machinery/atmospherics/pipe/simple/heat_exchanging/junction/P = new ( src.loc )
P.initialize_directions_he = src.get_hdir()
- P.construction(dir, get_pdir())
+ P.construction(dir, get_pdir(), pipe_type, color)
if(PIPE_UVENT)
var/obj/machinery/atmospherics/unary/vent_pump/V = new( src.loc )
- V.construction(dir, pipe_dir)
+ V.construction(dir, pipe_dir, pipe_type, color)
if(PIPE_MVALVE)
var/obj/machinery/atmospherics/binary/valve/V = new(src.loc)
if (pipename)
V.name = pipename
- V.construction(dir, get_pdir())
+ V.construction(dir, get_pdir(), pipe_type, color)
if(PIPE_DVALVE)
- var/obj/machinery/atmospherics/valve/digital/V = new(src.loc)
+ var/obj/machinery/atmospherics/binary/valve/digital/V = new(src.loc)
if (pipename)
V.name = pipename
- V.construction(dir, get_pdir())
+ V.construction(dir, get_pdir(), pipe_type, color)
if(PIPE_PUMP)
var/obj/machinery/atmospherics/binary/pump/P = new(src.loc)
- P.construction(dir, pipe_dir)
+ P.construction(dir, pipe_dir, pipe_type, color)
if(PIPE_GAS_FILTER, PIPE_GAS_MIXER)
var/obj/machinery/atmospherics/trinary/P
@@ -369,41 +370,42 @@ var/global/list/pipeID2State = list(
P.flipped = flipped
if (pipename)
P.name = pipename
- P.construction(unflip(dir), pipe_dir)
+ P.construction(unflip(dir), pipe_dir, pipe_type, color)
if(PIPE_SCRUBBER)
var/obj/machinery/atmospherics/unary/vent_scrubber/S = new(src.loc)
if (pipename)
S.name = pipename
- S.construction(dir, pipe_dir)
+ S.construction(dir, pipe_dir, pipe_type, color)
if(PIPE_INSULATED_STRAIGHT, PIPE_INSULATED_BENT)
var/obj/machinery/atmospherics/pipe/simple/insulated/P = new( src.loc )
- P.construction(dir, pipe_dir)
+ P.construction(dir, pipe_dir, pipe_type, color)
if(PIPE_PASSIVE_GATE)
var/obj/machinery/atmospherics/binary/passive_gate/P = new(src.loc)
if (pipename)
P.name = pipename
- P.construction(dir, pipe_dir)
+ P.construction(dir, pipe_dir, pipe_type, color)
if(PIPE_VOLUME_PUMP)
var/obj/machinery/atmospherics/binary/volume_pump/P = new(src.loc)
if (pipename)
P.name = pipename
- P.construction(dir, pipe_dir)
+ P.construction(dir, pipe_dir, pipe_type, color)
if(PIPE_HEAT_EXCHANGE)
var/obj/machinery/atmospherics/unary/heat_exchanger/C = new( src.loc )
if (pipename)
C.name = pipename
- C.construction(dir, pipe_dir)
+ C.construction(dir, pipe_dir, pipe_type, color)
playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1)
user.visible_message( \
"[user] fastens \the [src].", \
"You have fastened \the [src].", \
"You hear ratchet.")
+
qdel(src) // remove the pipe item
return
diff --git a/code/game/machinery/wishgranter.dm b/code/game/machinery/wishgranter.dm
index c6e676a9c97..161fc416135 100644
--- a/code/game/machinery/wishgranter.dm
+++ b/code/game/machinery/wishgranter.dm
@@ -11,7 +11,8 @@
var/charges = 1
var/insisting = 0
-/obj/machinery/wish_granter/attack_hand(var/mob/user as mob)
+/obj/machinery/wish_granter/attack_hand(var/mob/living/carbon/user)
+ if(istype(user)) return
usr.set_machine(src)
if(charges <= 0)
@@ -36,28 +37,10 @@
charges--
insisting = 0
- if (!(HULK in user.mutations))
- user.mutations.Add(HULK)
-
- if (!(LASER in user.mutations))
- user.mutations.Add(LASER)
-
- if (!(XRAY in user.mutations))
- user.mutations.Add(XRAY)
- user.sight |= (SEE_MOBS|SEE_OBJS|SEE_TURFS)
- user.see_in_dark = 8
- user.see_invisible = SEE_INVISIBLE_LEVEL_TWO
-
- if (!(COLD_RESISTANCE in user.mutations))
- user.mutations.Add(COLD_RESISTANCE)
-
- if (!(TK in user.mutations))
- user.mutations.Add(TK)
-
- if(!(HEAL in user.mutations))
- user.mutations.Add(HEAL)
-
- user.update_mutations()
+ user.dna.add_mutation(HULK)
+ user.dna.add_mutation(XRAY)
+ user.dna.add_mutation(COLDRES)
+ user.dna.add_mutation(TK)
ticker.mode.traitors += user.mind
user.mind.special_role = "Avatar of the Wish Granter"
diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm
index 757cf90e8da..26b256148d8 100644
--- a/code/game/mecha/mecha.dm
+++ b/code/game/mecha/mecha.dm
@@ -490,18 +490,22 @@ obj/mecha/proc/can_use(mob/user)
else
qdel(src)
+/obj/mecha/attack_hulk(mob/living/carbon/human/user)
+ if(!prob(src.deflect_chance))
+ ..(user, 1)
+ take_damage(15)
+ check_for_internal_damage(list(MECHA_INT_TEMP_CONTROL,MECHA_INT_TANK_BREACH,MECHA_INT_CONTROL_LOST))
+ user.visible_message("[user] hits [src.name], doing some damage.", "You hit [src.name] with all your might. The metal creaks and bends.")
+ occupant_message("[user] hits [src.name], doing some damage.")
+ return 1
+ return 0
+
/obj/mecha/attack_hand(mob/living/user as mob)
user.changeNext_move(CLICK_CD_MELEE) // Ugh. Ideally we shouldn't be setting cooldowns outside of click code.
user.do_attack_animation(src)
src.log_message("Attack by hand/paw. Attacker - [user].",1)
-
- if ((HULK in user.mutations) && !prob(src.deflect_chance))
- src.take_damage(15)
- src.check_for_internal_damage(list(MECHA_INT_TEMP_CONTROL,MECHA_INT_TANK_BREACH,MECHA_INT_CONTROL_LOST))
- user.visible_message("[user] hits [src.name], doing some damage.", "You hit [src.name] with all your might. The metal creaks and bends.")
- else
- user.visible_message("[user] hits [src.name]. Nothing happens","You hit [src.name] with no visible effect.")
- src.log_append_to_last("Armor saved.")
+ user.visible_message("[user] hits [src.name]. Nothing happens","You hit [src.name] with no visible effect.")
+ src.log_append_to_last("Armor saved.")
return
/obj/mecha/attack_paw(mob/user as mob)
@@ -619,28 +623,6 @@ obj/mecha/proc/can_use(mob/user)
src.check_for_internal_damage(list(MECHA_INT_FIRE,MECHA_INT_TEMP_CONTROL,MECHA_INT_TANK_BREACH,MECHA_INT_CONTROL_LOST,MECHA_INT_SHORT_CIRCUIT),1)
return
-/*Will fix later -Sieve
-/obj/mecha/attack_blob(mob/user as mob)
- src.log_message("Attack by blob. Attacker - [user].",1)
- if(!prob(src.deflect_chance))
- src.take_damage(6)
- src.check_for_internal_damage(list(MECHA_INT_TEMP_CONTROL,MECHA_INT_TANK_BREACH,MECHA_INT_CONTROL_LOST))
- playsound(src.loc, 'sound/effects/blobattack.ogg', 50, 1, -1)
- user << "\red You smash at the armored suit!"
- for (var/mob/V in viewers(src))
- if(V.client && !(V.blinded))
- V.show_message("\red The [user] smashes against [src.name]'s armor!", 1)
- else
- src.log_append_to_last("Armor saved.")
- playsound(src.loc, 'sound/effects/blobattack.ogg', 50, 1, -1)
- user << "\green Your attack had no effect!"
- src.occupant_message("\blue The [user]'s attack is stopped by the armor.")
- for (var/mob/V in viewers(src))
- if(V.client && !(V.blinded))
- V.show_message("\blue The [user] rebounds off the [src.name] armor!", 1)
- return
-*/
-
/obj/mecha/blob_act()
take_damage(30, "brute")
return
@@ -794,22 +776,6 @@ obj/mecha/proc/can_use(mob/user)
else if(!(W.flags&NOBLUDGEON))
call((proc_res["dynattackby"]||src), "dynattackby")(W,user)
-/*
- src.log_message("Attacked by [W]. Attacker - [user]")
- if(prob(src.deflect_chance))
- user << "\red The [W] bounces off [src.name] armor."
- src.log_append_to_last("Armor saved.")
-/*
- for (var/mob/V in viewers(src))
- if(V.client && !(V.blinded))
- V.show_message("The [W] bounces off [src.name] armor.", 1)
-*/
- else
- src.occupant_message("[user] hits [src] with [W].")
- user.visible_message("[user] hits [src] with [W].", "You hit [src] with [W].")
- src.take_damage(W.force,W.damtype)
- src.check_for_internal_damage(list(MECHA_INT_TEMP_CONTROL,MECHA_INT_TANK_BREACH,MECHA_INT_CONTROL_LOST))
-*/
return
/*
diff --git a/code/game/objects/effects/aliens.dm b/code/game/objects/effects/aliens.dm
index 4848b1bfa7a..c3c97749174 100644
--- a/code/game/objects/effects/aliens.dm
+++ b/code/game/objects/effects/aliens.dm
@@ -108,14 +108,12 @@
health -= tforce
healthcheck()
-
-/obj/structure/alien/resin/attack_hand(mob/living/user)
- if(HULK in user.mutations)
- user.do_attack_animation(src)
- user.visible_message("[user] destroys [src]!")
- health = 0
- healthcheck()
-
+/obj/structure/alien/resin/attack_hulk(mob/living/carbon/human/user)
+ ..(user, 1)
+ user.do_attack_animation(src)
+ user.visible_message("[user] destroys [src]!")
+ health = 0
+ healthcheck()
/obj/structure/alien/resin/attack_paw(mob/user)
return attack_hand(user)
diff --git a/code/game/objects/effects/effect_system.dm b/code/game/objects/effects/effect_system.dm
index 3ab89770364..4a6920fa50b 100644
--- a/code/game/objects/effects/effect_system.dm
+++ b/code/game/objects/effects/effect_system.dm
@@ -966,16 +966,16 @@ steam.start() -- spawns the effect
qdel(src)
return
-/obj/structure/foamedmetal/attack_hand(var/mob/user)
- if ((HULK in user.mutations) || (prob(75 - metal*25)))
+/obj/structure/foamedmetal/attack_hulk(mob/living/carbon/human/user)
+ ..(user, 1)
+ if(prob(75 - metal*25))
user.visible_message("[user] smashes through the foamed metal.", \
"You smash through the metal foam wall.")
-
qdel(src)
- else
- user << "You hit the metal foam but bounce off it."
- return
+ return 1
+/obj/structure/foamedmetal/attack_hand(var/mob/user)
+ user << "You hit the metal foam but bounce off it."
/obj/structure/foamedmetal/attackby(var/obj/item/I, var/mob/user)
diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm
index 82cf59a988e..378e96ba819 100644
--- a/code/game/objects/items.dm
+++ b/code/game/objects/items.dm
@@ -313,14 +313,7 @@
add_logs(user, M, "attacked", object="[src.name]", addition="(INTENT: [uppertext(user.a_intent)])")
src.add_fingerprint(user)
- //if((CLUMSY in user.mutations) && prob(50))
- // M = user
- /*
- M << "\red You stab yourself in the eye."
- M.sdisabilities |= BLIND
- M.weakened += 4
- M.adjustBruteLoss(10)
- */
+
if(M != user)
M.visible_message("[user] has stabbed [M] in the eye with [src]!", \
"[user] stabs you in the eye with [src]!")
@@ -341,7 +334,7 @@
M.eye_stat += rand(2,4)
if (M.eye_stat >= 10)
M.eye_blurry += 15+(0.1*M.eye_blurry)
- M.disabilities |= NEARSIGHTED
+ M.disabilities |= NEARSIGHT
if(M.stat != 2)
M << "Your eyes start to bleed profusely!"
if(prob(50))
@@ -354,7 +347,7 @@
if (prob(M.eye_stat - 10 + 1))
if(M.stat != 2)
M << "You go blind!"
- M.sdisabilities |= BLIND
+ M.disabilities |= BLIND
return
/obj/item/clean_blood()
diff --git a/code/game/objects/items/devices/camera_bug.dm b/code/game/objects/items/devices/camera_bug.dm
index f065679a146..655c568fc94 100644
--- a/code/game/objects/items/devices/camera_bug.dm
+++ b/code/game/objects/items/devices/camera_bug.dm
@@ -71,7 +71,7 @@
interact(user)
/obj/item/device/camera_bug/check_eye(var/mob/user as mob)
- if (user.stat || loc != user || !user.canmove || user.blinded || !current)
+ if (user.stat || loc != user || !user.canmove || user.eye_blind || !current)
user.reset_view(null)
user.unset_machine()
return null
diff --git a/code/game/objects/items/devices/flash.dm b/code/game/objects/items/devices/flash.dm
index e218a2568ad..5496413aff1 100644
--- a/code/game/objects/items/devices/flash.dm
+++ b/code/game/objects/items/devices/flash.dm
@@ -15,8 +15,8 @@
var/last_used = 0 //last world.time it was used.
-/obj/item/device/flash/proc/clown_check(mob/user)
- if(user && (CLUMSY in user.mutations) && prob(50))
+/obj/item/device/flash/proc/clown_check(mob/living/carbon/human/user)
+ if(user.disabilities & CLUMSY && prob(50))
flash_carbon(user, user, 15, 0)
return 0
return 1
diff --git a/code/game/objects/items/devices/flashlight.dm b/code/game/objects/items/devices/flashlight.dm
index a60773d7bd6..38b006fbce0 100644
--- a/code/game/objects/items/devices/flashlight.dm
+++ b/code/game/objects/items/devices/flashlight.dm
@@ -45,11 +45,11 @@
return 1
-/obj/item/device/flashlight/attack(mob/living/M as mob, mob/living/user as mob)
+/obj/item/device/flashlight/attack(mob/living/carbon/human/M as mob, mob/living/carbon/human/user as mob)
add_fingerprint(user)
if(on && user.zone_sel.selecting == "eyes")
- if(((CLUMSY in user.mutations) || user.getBrainLoss() >= 60) && prob(50)) //too dumb to use flashlight properly
+ if((user.disabilities & CLUMSY || user.getBrainLoss() >= 60) && prob(50)) //too dumb to use flashlight properly
return ..() //just hit them in the head
if(!user.IsAdvancedToolUser())
@@ -62,7 +62,7 @@
return
if(M == user) //they're using it on themselves
- if(!M.blinded)
+ if(!M.eye_blind)
flick("flash", M.flash)
M.visible_message("[M] directs [src] to \his eyes.", \
"You wave the light in front of your eyes! Trippy!")
@@ -75,12 +75,12 @@
"You direct [src] to [M]'s eyes.")
if(istype(M, /mob/living/carbon/human) || istype(M, /mob/living/carbon/monkey)) //robots and aliens are unaffected
- if(M.stat == DEAD || M.sdisabilities & BLIND) //mob is dead or fully blind
+ if(M.stat == DEAD || M.disabilities & BLIND) //mob is dead or fully blind
user << "[M] pupils does not react to the light!"
- else if(XRAY in M.mutations) //mob has X-RAY vision
+ else if(M.dna.check_mutation(XRAY)) //mob has X-RAY vision
user << "[M] pupils give an eerie glow!"
else //they're okay!
- if(!M.blinded)
+ if(!M.eye_blind)
flick("flash", M.flash) //flash the affected mob
user << "[M]'s pupils narrow."
else
diff --git a/code/game/objects/items/devices/laserpointer.dm b/code/game/objects/items/devices/laserpointer.dm
index 7208e3b2096..7a2aaa8ee2f 100644
--- a/code/game/objects/items/devices/laserpointer.dm
+++ b/code/game/objects/items/devices/laserpointer.dm
@@ -78,12 +78,9 @@
if (!user.IsAdvancedToolUser())
user << "You don't have the dexterity to do this!"
return
- if(user.has_mutation(HULK))
- user << "Your meaty finger is too large for the button!"
- return
if(ishuman(user))
var/mob/living/carbon/human/H = user
- if(H.dna && NOGUNS in H.dna.species.specflags)
+ if(H.dna && (H.dna.check_mutation(HULK) || NOGUNS in H.dna.species.specflags))
user << "Your fingers can't press the button!"
return
@@ -109,7 +106,7 @@
//eye target check
outmsg = "You blind [C] by shining [src] in their eyes."
var/eye_prot = C.eyecheck()
- if(C.blinded || eye_prot >= 2)
+ if(C.eye_blind || eye_prot >= 2)
eye_prot = 4
var/severity = 3 - eye_prot
if(prob(33))
diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm
index 8ca2e62e1f0..976bdb5b3c7 100644
--- a/code/game/objects/items/devices/scanners.dm
+++ b/code/game/objects/items/devices/scanners.dm
@@ -77,10 +77,10 @@ MASS SPECTROMETER
origin_tech = "magnets=1;biotech=1"
var/mode = 1;
-/obj/item/device/healthanalyzer/attack(mob/living/M as mob, mob/living/user as mob)
+/obj/item/device/healthanalyzer/attack(mob/living/M as mob, mob/living/carbon/human/user as mob)
// Clumsiness/brain damage check
- if ((CLUMSY in user.mutations || user.getBrainLoss() >= 60) && prob(50))
+ if ((user.disabilities & CLUMSY || user.getBrainLoss() >= 60) && prob(50))
user << "You stupidly try to analyze the floor's vitals!"
user.visible_message("[user] has analyzed the floor's vitals!")
user.show_message("Analyzing Results for The floor:\n\t Overall Status: Healthy", 1)
diff --git a/code/game/objects/items/weapons/RCD.dm b/code/game/objects/items/weapons/RCD.dm
index 2b4af3a5590..7f1861f8c6c 100644
--- a/code/game/objects/items/weapons/RCD.dm
+++ b/code/game/objects/items/weapons/RCD.dm
@@ -174,7 +174,13 @@ RCD
if(2)
if(istype(A, /turf/simulated/floor))
if(checkResource(10, user))
- if(!locate(/obj/machinery/door) in A)
+ var/door_check = 1
+ for(var/obj/machinery/door/D in A)
+ if(!D.sub_door)
+ door_check = 0
+ break
+
+ if(door_check)
user << "Building Airlock..."
playsound(src.loc, 'sound/machines/click.ogg', 50, 1)
if(do_after(user, 50))
diff --git a/code/game/objects/items/weapons/dice.dm b/code/game/objects/items/weapons/dice.dm
index cde71edd6fe..81c98702773 100644
--- a/code/game/objects/items/weapons/dice.dm
+++ b/code/game/objects/items/weapons/dice.dm
@@ -76,7 +76,7 @@
"You throw [src]. It lands on [result]. [comment]", \
"You hear [src] landing on [result]. [comment]")
else if(src.throwing == 0) //Dice was thrown and is coming to rest
- src.loc.visible_message("[src] rolls to a stop, landing on [result]. [comment]")
+ visible_message("[src] rolls to a stop, landing on [result]. [comment]")
/obj/item/weapon/dice/d4/Crossed(var/mob/living/carbon/human/H)
if(istype(H) && !H.shoes)
diff --git a/code/game/objects/items/weapons/dna_injector.dm b/code/game/objects/items/weapons/dna_injector.dm
index 2c7b48d2897..1184fa296db 100644
--- a/code/game/objects/items/weapons/dna_injector.dm
+++ b/code/game/objects/items/weapons/dna_injector.dm
@@ -9,6 +9,8 @@
var/damage_coeff = 1
var/list/fields
+ var/list/add_mutations = list()
+ var/list/remove_mutations = list()
/obj/item/weapon/dnainjector/attack_paw(mob/user)
return attack_hand(user)
@@ -20,8 +22,15 @@
user << "You can't modify [M]'s DNA while \he's dead."
return
M.radiation += rand(20/(damage_coeff ** 2),50/(damage_coeff ** 2))
+ var/log_msg = "[key_name(user)] injected [key_name(M)] with the [name]"
+ for(var/datum/mutation/human/HM in remove_mutations)
+ HM.on_losing(M)
+ for(var/datum/mutation/human/HM in add_mutations)
+ if(HM.name == RACEMUT)
+ message_admins("[key_name_admin(user)] injected [key_name_admin(M)] with the [name] (MONKEY)")
+ log_msg += " (MONKEY)"
+ HM.force_give(M)
if(fields)
- var/log_msg = "[key_name(user)] injected [key_name(M)] with the [name]"
if(fields["name"] && fields["UE"] && fields["blood_type"])
M.real_name = fields["name"]
M.dna.unique_enzymes = fields["UE"]
@@ -30,13 +39,7 @@
if(fields["UI"]) //UI+UE
M.dna.uni_identity = merge_text(M.dna.uni_identity, fields["UI"])
updateappearance(M)
- if(fields["SE"])
- M.dna.struc_enzymes = merge_text(M.dna.struc_enzymes, fields["SE"])
- if(ishuman(M) && (deconstruct_block(getblock(M.dna.struc_enzymes, RACEBLOCK), BAD_MUTATION_DIFFICULTY) == BAD_MUTATION_DIFFICULTY)) //check for monkeying people.
- message_admins("[key_name_admin(user)] injected [key_name_admin(M)] with the [name] (MONKEY)")
- log_msg += " (MONKEY)"
- domutcheck(M, null,(type != /obj/item/weapon/dnainjector)) //admin-spawnable-injectors always work
- log_attack(log_msg)
+ log_attack(log_msg)
else
user << "It appears that [M] does not have compatible DNA."
return
@@ -67,28 +70,27 @@
desc = "Cures green skin."
New()
..()
- fields = list("SE"=setblock(NULLED_SE, HULKBLOCK, repeat_string(DNA_BLOCK_SIZE,"0")))
+ remove_mutations.Add(mutations_list[HULK])
/obj/item/weapon/dnainjector/hulkmut
name = "\improper DNA injector (Hulk)"
desc = "This will make you big and strong, but give you a bad skin condition."
New()
..()
- fields = list("SE"=setblock(NULLED_SE, HULKBLOCK, repeat_string(DNA_BLOCK_SIZE,"f")))
-
+ add_mutations.Add(mutations_list[HULK])
/obj/item/weapon/dnainjector/xraymut
name = "\improper DNA injector (Xray)"
desc = "Finally you can see what the Captain does."
New()
..()
- fields = list("SE"=setblock(NULLED_SE, XRAYBLOCK, repeat_string(DNA_BLOCK_SIZE,"f")))
+ add_mutations.Add(mutations_list[XRAY])
/obj/item/weapon/dnainjector/antixray
name = "\improper DNA injector (Anti-Xray)"
desc = "It will make you see harder."
New()
..()
- fields = list("SE"=setblock(NULLED_SE, XRAYBLOCK, repeat_string(DNA_BLOCK_SIZE,"0")))
+ remove_mutations.Add(mutations_list[XRAY])
/////////////////////////////////////
/obj/item/weapon/dnainjector/antiglasses
@@ -96,128 +98,126 @@
desc = "Toss away those glasses!"
New()
..()
- fields = list("SE"=setblock(NULLED_SE, NEARSIGHTEDBLOCK, repeat_string(DNA_BLOCK_SIZE,"0")))
+ remove_mutations.Add(mutations_list[BADSIGHT])
/obj/item/weapon/dnainjector/glassesmut
name = "\improper DNA injector (Glasses)"
desc = "Will make you need dorkish glasses."
New()
..()
- fields = list("SE"=setblock(NULLED_SE, NEARSIGHTEDBLOCK, repeat_string(DNA_BLOCK_SIZE,"f")))
+ add_mutations.Add(mutations_list[BADSIGHT])
/obj/item/weapon/dnainjector/epimut
name = "\improper DNA injector (Epi.)"
desc = "Shake shake shake the room!"
New()
..()
- fields = list("SE"=setblock(NULLED_SE, EPILEPSYBLOCK, repeat_string(DNA_BLOCK_SIZE,"f")))
+ add_mutations.Add(mutations_list[EPILEPSY])
/obj/item/weapon/dnainjector/antiepi
name = "\improper DNA injector (Anti-Epi.)"
desc = "Will fix you up from shaking the room."
New()
..()
- fields = list("SE"=setblock(NULLED_SE, EPILEPSYBLOCK, repeat_string(DNA_BLOCK_SIZE,"0")))
+ remove_mutations.Add(mutations_list[EPILEPSY])
////////////////////////////////////
/obj/item/weapon/dnainjector/anticough
name = "\improper DNA injector (Anti-Cough)"
desc = "Will stop that aweful noise."
New()
..()
- fields = list("SE"=setblock(NULLED_SE, COUGHBLOCK, repeat_string(DNA_BLOCK_SIZE,"0")))
+ remove_mutations.Add(mutations_list[COUGH])
/obj/item/weapon/dnainjector/coughmut
name = "\improper DNA injector (Cough)"
desc = "Will bring forth a sound of horror from your throat."
New()
..()
- fields = list("SE"=setblock(NULLED_SE, COUGHBLOCK, repeat_string(DNA_BLOCK_SIZE,"f")))
-
+ add_mutations.Add(mutations_list[COUGH])
/obj/item/weapon/dnainjector/clumsymut
name = "\improper DNA injector (Clumsy)"
desc = "Makes clown minions."
New()
..()
- fields = list("SE"=setblock(NULLED_SE, CLUMSYBLOCK, repeat_string(DNA_BLOCK_SIZE,"f")))
-
+ add_mutations.Add(mutations_list[CLOWNMUT])
/obj/item/weapon/dnainjector/anticlumsy
name = "\improper DNA injector (Anti-Clumy)"
desc = "Apply this for Security Clown."
New()
..()
- fields = list("SE"=setblock(NULLED_SE, CLUMSYBLOCK, repeat_string(DNA_BLOCK_SIZE,"0")))
+ remove_mutations.Add(mutations_list[CLOWNMUT])
/obj/item/weapon/dnainjector/antitour
name = "\improper DNA injector (Anti-Tour.)"
desc = "Will cure tourrets."
New()
..()
- fields = list("SE"=setblock(NULLED_SE, TOURETTESBLOCK, repeat_string(DNA_BLOCK_SIZE,"0")))
+ remove_mutations.Add(mutations_list[TOURETTES])
/obj/item/weapon/dnainjector/tourmut
name = "\improper DNA injector (Tour.)"
desc = "Gives you a nasty case off tourrets."
New()
..()
- fields = list("SE"=setblock(NULLED_SE, TOURETTESBLOCK, repeat_string(DNA_BLOCK_SIZE,"f")))
+ add_mutations.Add(mutations_list[TOURETTES])
/obj/item/weapon/dnainjector/stuttmut
name = "\improper DNA injector (Stutt.)"
desc = "Makes you s-s-stuttterrr"
New()
..()
- fields = list("SE"=setblock(NULLED_SE, NERVOUSBLOCK, repeat_string(DNA_BLOCK_SIZE,"f")))
+ add_mutations.Add(mutations_list[NERVOUS])
/obj/item/weapon/dnainjector/antistutt
name = "\improper DNA injector (Anti-Stutt.)"
desc = "Fixes that speaking impairment."
New()
..()
- fields = list("SE"=setblock(NULLED_SE, NERVOUSBLOCK, repeat_string(DNA_BLOCK_SIZE,"0")))
+ remove_mutations.Add(mutations_list[NERVOUS])
/obj/item/weapon/dnainjector/antifire
name = "\improper DNA injector (Anti-Fire)"
desc = "Cures fire."
New()
..()
- fields = list("SE"=setblock(NULLED_SE, FIREBLOCK, repeat_string(DNA_BLOCK_SIZE,"0")))
+ remove_mutations.Add(mutations_list[COLDRES])
/obj/item/weapon/dnainjector/firemut
name = "\improper DNA injector (Fire)"
desc = "Gives you fire."
New()
..()
- fields = list("SE"=setblock(NULLED_SE, FIREBLOCK, repeat_string(DNA_BLOCK_SIZE,"0")))
+ add_mutations.Add(mutations_list[COLDRES])
/obj/item/weapon/dnainjector/blindmut
name = "\improper DNA injector (Blind)"
desc = "Makes you not see anything."
New()
..()
- fields = list("SE"=setblock(NULLED_SE, BLINDBLOCK, repeat_string(DNA_BLOCK_SIZE,"f")))
+ add_mutations.Add(mutations_list[BLINDMUT])
/obj/item/weapon/dnainjector/antiblind
name = "\improper DNA injector (Anti-Blind)"
desc = "ITS A MIRACLE!!!"
New()
..()
- fields = list("SE"=setblock(NULLED_SE, BLINDBLOCK, repeat_string(DNA_BLOCK_SIZE,"0")))
+ remove_mutations.Add(mutations_list[BLINDMUT])
/obj/item/weapon/dnainjector/antitele
name = "\improper DNA injector (Anti-Tele.)"
desc = "Will make you not able to control your mind."
New()
..()
- fields = list("SE"=setblock(NULLED_SE, TELEBLOCK, repeat_string(DNA_BLOCK_SIZE,"0")))
+ remove_mutations.Add(mutations_list[TK])
/obj/item/weapon/dnainjector/telemut
name = "\improper DNA injector (Tele.)"
desc = "Super brain man!"
New()
..()
- fields = list("SE"=setblock(NULLED_SE, TELEBLOCK, repeat_string(DNA_BLOCK_SIZE,"f")))
+ add_mutations.Add(mutations_list[TK])
/obj/item/weapon/dnainjector/telemut/darkbundle
name = "\improper DNA injector"
@@ -228,25 +228,25 @@
desc = "Sorry, what did you say?"
New()
..()
- fields = list("SE"=setblock(NULLED_SE, DEAFBLOCK, repeat_string(DNA_BLOCK_SIZE,"f")))
+ add_mutations.Add(mutations_list[DEAFMUT])
/obj/item/weapon/dnainjector/antideaf
name = "\improper DNA injector (Anti-Deaf)"
desc = "Will make you hear once more."
New()
..()
- fields = list("SE"=setblock(NULLED_SE, DEAFBLOCK, repeat_string(DNA_BLOCK_SIZE,"0")))
+ remove_mutations.Add(mutations_list[DEAFMUT])
/obj/item/weapon/dnainjector/h2m
name = "\improper DNA injector (Human > Monkey)"
desc = "Will make you a flea bag."
New()
..()
- fields = list("SE"=setblock(NULLED_SE, RACEBLOCK, repeat_string(DNA_BLOCK_SIZE,"f")))
+ add_mutations.Add(mutations_list[RACEMUT])
/obj/item/weapon/dnainjector/m2h
name = "\improper DNA injector (Monkey > Human)"
desc = "Will make you...less hairy."
New()
..()
- fields = list("SE"=setblock(NULLED_SE, RACEBLOCK, repeat_string(DNA_BLOCK_SIZE,"0")))
+ remove_mutations.Add(mutations_list[RACEMUT])
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/grenades/flashbang.dm b/code/game/objects/items/weapons/grenades/flashbang.dm
index 81880012ee9..214448b8911 100644
--- a/code/game/objects/items/weapons/grenades/flashbang.dm
+++ b/code/game/objects/items/weapons/grenades/flashbang.dm
@@ -45,11 +45,11 @@
M.Weaken(max(10/distance, 3))
if (M.eye_stat >= 20 && takes_eye_damage)
M << "Your eyes start to burn badly!"
- M.disabilities |= NEARSIGHTED
+ M.disabilities |= NEARSIGHT
if(!banglet && !(istype(src , /obj/item/weapon/grenade/flashbang/clusterbang)))
if (prob(M.eye_stat - 20 + 1))
M << "You can't see anything!"
- M.sdisabilities |= BLIND
+ M.disabilities |= BLIND
//Bang
if((src.loc == M) || src.loc == M.loc)//Holding on person or being exactly where lies is significantly more dangerous and voids protection
@@ -63,9 +63,9 @@
if (M.ear_damage >= 15)
M << "Your ears start to ring badly!"
if(!banglet && !(istype(src , /obj/item/weapon/grenade/flashbang/clusterbang)))
- if (prob(M.ear_damage - 10 + 5))
+ if(prob(M.ear_damage - 10 + 5))
M << "You can't hear anything!"
- M.sdisabilities |= DEAF
+ M.disabilities |= DEAF
else
if (M.ear_damage >= 5)
M << "Your ears start to ring!"
diff --git a/code/game/objects/items/weapons/grenades/grenade.dm b/code/game/objects/items/weapons/grenades/grenade.dm
index a049f4e795a..dcc30b68420 100644
--- a/code/game/objects/items/weapons/grenades/grenade.dm
+++ b/code/game/objects/items/weapons/grenades/grenade.dm
@@ -13,8 +13,8 @@
var/det_time = 50
var/display_timer = 1
-/obj/item/weapon/grenade/proc/clown_check(var/mob/living/user)
- if((CLUMSY in user.mutations) && prob(50))
+/obj/item/weapon/grenade/proc/clown_check(var/mob/living/carbon/human/user)
+ if(user.disabilities & CLUMSY && prob(50))
user << "Huh? How does this thing work?"
active = 1
icon_state = initial(icon_state) + "_active"
diff --git a/code/game/objects/items/weapons/handcuffs.dm b/code/game/objects/items/weapons/handcuffs.dm
index bed73f30890..3020a6d1acc 100644
--- a/code/game/objects/items/weapons/handcuffs.dm
+++ b/code/game/objects/items/weapons/handcuffs.dm
@@ -18,8 +18,8 @@
var/cuffsound = 'sound/weapons/handcuffs.ogg'
var/trashtype = null //for disposable cuffs
-/obj/item/weapon/restraints/handcuffs/attack(mob/living/carbon/C, mob/user)
- if(CLUMSY in user.mutations && prob(50))
+/obj/item/weapon/restraints/handcuffs/attack(mob/living/carbon/C, mob/living/carbon/human/user)
+ if(user.disabilities & CLUMSY && prob(50))
user << "Uh... how do those things work?!"
apply_cuffs(user,user)
diff --git a/code/game/objects/items/weapons/kitchen.dm b/code/game/objects/items/weapons/kitchen.dm
index 9de94916d1e..a7c74217f92 100644
--- a/code/game/objects/items/weapons/kitchen.dm
+++ b/code/game/objects/items/weapons/kitchen.dm
@@ -66,7 +66,7 @@
src.icon_state = "fork"
return
else
- if((CLUMSY in user.mutations) && prob(50))
+ if(user.disabilities & CLUMSY && prob(50))
M = user
return eyestab(M,user)
@@ -86,9 +86,9 @@
"[user] is slitting \his stomach open with the [src.name]! It looks like \he's trying to commit seppuku."))
return (BRUTELOSS)
-/obj/item/weapon/kitchen/utensil/knife/attack(target as mob, mob/living/user as mob)
- if ((CLUMSY in user.mutations) && prob(50))
- user << " You accidentally cut yourself with \the [src]."
+/obj/item/weapon/kitchen/utensil/knife/attack(target, mob/living/carbon/human/user)
+ if(istype(user) && user.disabilities & CLUMSY && prob(50))
+ user << "You accidentally cut yourself with \the [src]."
user.take_organ_damage(20)
return
playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1)
diff --git a/code/game/objects/items/weapons/melee/energy.dm b/code/game/objects/items/weapons/melee/energy.dm
index 7fe5bad8667..12df49b5a23 100644
--- a/code/game/objects/items/weapons/melee/energy.dm
+++ b/code/game/objects/items/weapons/melee/energy.dm
@@ -60,8 +60,8 @@
return 1
return 0
-/obj/item/weapon/melee/energy/attack_self(mob/living/user)
- if ((CLUMSY in user.mutations) && prob(50))
+/obj/item/weapon/melee/energy/attack_self(mob/living/carbon/user)
+ if(user.disabilities & CLUMSY && prob(50))
user << "You accidentally cut yourself with [src], like a doofus!"
user.take_organ_damage(5,5)
active = !active
@@ -189,4 +189,4 @@
qdel(src)
/obj/item/weapon/melee/energy/blade/attack_self(mob/user)
- return
\ No newline at end of file
+ return
diff --git a/code/game/objects/items/weapons/melee/misc.dm b/code/game/objects/items/weapons/melee/misc.dm
index 5a988ca06b4..13420578704 100644
--- a/code/game/objects/items/weapons/melee/misc.dm
+++ b/code/game/objects/items/weapons/melee/misc.dm
@@ -33,7 +33,7 @@
/obj/item/weapon/melee/classic_baton/attack(mob/target as mob, mob/living/user as mob)
if(on)
add_fingerprint(user)
- if((CLUMSY in user.mutations) && prob(50))
+ if((CLUMSY in user.disabilities) && prob(50))
user << "You club yourself over the head."
user.Weaken(3 * force)
if(ishuman(user))
diff --git a/code/game/objects/items/weapons/shields.dm b/code/game/objects/items/weapons/shields.dm
index 97a8d47e844..6a8e4d21393 100644
--- a/code/game/objects/items/weapons/shields.dm
+++ b/code/game/objects/items/weapons/shields.dm
@@ -56,8 +56,8 @@
/obj/item/weapon/shield/energy/IsReflect()
return (active)
-/obj/item/weapon/shield/energy/attack_self(mob/living/user)
- if((CLUMSY in user.mutations) && prob(50))
+/obj/item/weapon/shield/energy/attack_self(mob/living/carbon/human/user)
+ if(user.disabilities & CLUMSY && prob(50))
user << "You beat yourself in the head with [src]."
user.take_organ_damage(5)
active = !active
diff --git a/code/game/objects/items/weapons/storage/book.dm b/code/game/objects/items/weapons/storage/book.dm
index 6168bb200b8..f8bca96b67f 100644
--- a/code/game/objects/items/weapons/storage/book.dm
+++ b/code/game/objects/items/weapons/storage/book.dm
@@ -44,7 +44,7 @@
H.update_damage_overlays(0)
return
-/obj/item/weapon/storage/book/bible/attack(mob/living/M as mob, mob/living/user as mob)
+/obj/item/weapon/storage/book/bible/attack(mob/living/M as mob, mob/living/carbon/human/user as mob)
var/chaplain = 0
if(user.mind && (user.mind.assigned_role == "Chaplain"))
@@ -60,7 +60,7 @@
user.take_organ_damage(0,10)
return
- if ((CLUMSY in user.mutations) && prob(50))
+ if (user.disabilities & CLUMSY && prob(50))
user << "The [src] slips out of your hand and hits your head."
user.take_organ_damage(10)
user.Paralyse(20)
diff --git a/code/game/objects/items/weapons/storage/storage.dm b/code/game/objects/items/weapons/storage/storage.dm
index f7cd722f7d4..1f73247bd5e 100644
--- a/code/game/objects/items/weapons/storage/storage.dm
+++ b/code/game/objects/items/weapons/storage/storage.dm
@@ -104,7 +104,7 @@
/obj/item/weapon/storage/proc/can_see_contents()
var/list/cansee = list()
for(var/mob/M in is_seeing)
- if(M.s_active == src)
+ if(M.s_active == src && M.client)
cansee |= M
else
is_seeing -= M
diff --git a/code/game/objects/items/weapons/stunbaton.dm b/code/game/objects/items/weapons/stunbaton.dm
index 7c7b9857c5c..daec4abc4b9 100644
--- a/code/game/objects/items/weapons/stunbaton.dm
+++ b/code/game/objects/items/weapons/stunbaton.dm
@@ -100,8 +100,8 @@
update_icon()
add_fingerprint(user)
-/obj/item/weapon/melee/baton/attack(mob/M, mob/living/user)
- if(status && (CLUMSY in user.mutations) && prob(50))
+/obj/item/weapon/melee/baton/attack(mob/M, mob/living/carbon/human/user)
+ if(status && user.disabilities & CLUMSY && prob(50))
user.visible_message("[user] accidentally hits themself with [src]!", \
"You accidentally hit yourself with [src]!")
user.Weaken(stunforce*3)
diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm
index 4e3cda45ac1..7f2eeed9b43 100644
--- a/code/game/objects/items/weapons/tools.dm
+++ b/code/game/objects/items/weapons/tools.dm
@@ -86,7 +86,7 @@
if(!istype(M)) return ..()
if(user.zone_sel.selecting != "eyes" && user.zone_sel.selecting != "head")
return ..()
- if((CLUMSY in user.mutations) && prob(50))
+ if(user.disabilities & CLUMSY && prob(50))
M = user
return eyestab(M,user)
@@ -349,14 +349,14 @@
user << "Your eyes are really starting to hurt. This can't be good for you!"
if (prob(user.eye_stat - 25 + 1))
user << "You go blind!"
- user.sdisabilities |= BLIND
+ user.disabilities |= BLIND
else if(prob(user.eye_stat - 15 + 1))
user << "You go blind!"
user.eye_blind = 5
user.eye_blurry = 5
- user.disabilities |= NEARSIGHTED
+ user.disabilities |= NEARSIGHT
spawn(100)
- user.disabilities &= ~NEARSIGHTED
+ user.disabilities &= ~NEARSIGHT
/obj/item/weapon/weldingtool/proc/flamethrower_screwdriver(obj/item/I, mob/user)
if(welding)
diff --git a/code/game/objects/items/weapons/twohanded.dm b/code/game/objects/items/weapons/twohanded.dm
index ec56c0adf0c..8dfd2e32291 100644
--- a/code/game/objects/items/weapons/twohanded.dm
+++ b/code/game/objects/items/weapons/twohanded.dm
@@ -27,24 +27,46 @@
var/wieldsound = null
var/unwieldsound = null
-/obj/item/weapon/twohanded/proc/unwield()
+/obj/item/weapon/twohanded/proc/unwield(mob/living/carbon/user)
+ if(!wielded) return
wielded = 0
force = force_unwielded
name = "[initial(name)]"
update_icon()
+ user << "You are now carrying the [name] with one hand."
+ if(unwieldsound)
+ playsound(loc, unwieldsound, 50, 1)
+ var/obj/item/weapon/twohanded/offhand/O = user.get_inactive_hand()
+ if(O && istype(O))
+ O.unwield()
+ return
-/obj/item/weapon/twohanded/proc/wield()
+/obj/item/weapon/twohanded/proc/wield(mob/living/carbon/user)
+ if(wielded) return
+ if(istype(user,/mob/living/carbon/monkey) )
+ user << "It's too heavy for you to wield fully."
+ return
+ if(user.get_inactive_hand())
+ user << "You need your other hand to be empty"
+ return
wielded = 1
force = force_wielded
name = "[initial(name)] (Wielded)"
update_icon()
+ user << "You grab the [initial(name)] with both hands."
+ if (wieldsound)
+ playsound(loc, wieldsound, 50, 1)
+ var/obj/item/weapon/twohanded/offhand/O = new(user) ////Let's reserve his other hand~
+ O.name = "[initial(name)] - offhand"
+ O.desc = "Your second grip on the [initial(name)]"
+ user.put_in_inactive_hand(O)
+ return
/obj/item/weapon/twohanded/mob_can_equip(M as mob, slot)
//Cannot equip wielded items.
if(wielded)
M << "Unwield the [initial(name)] first!"
return 0
-
return ..()
/obj/item/weapon/twohanded/dropped(mob/user as mob)
@@ -58,41 +80,12 @@
/obj/item/weapon/twohanded/update_icon()
return
-/obj/item/weapon/twohanded/pickup(mob/user)
- unwield()
-
/obj/item/weapon/twohanded/attack_self(mob/user as mob)
- if( istype(user,/mob/living/carbon/monkey) )
- user << "It's too heavy for you to wield fully."
- return
-
..()
if(wielded) //Trying to unwield it
- unwield()
- user << "You are now carrying the [name] with one hand."
- if (src.unwieldsound)
- playsound(src.loc, unwieldsound, 50, 1)
-
- var/obj/item/weapon/twohanded/offhand/O = user.get_inactive_hand()
- if(O && istype(O))
- O.unwield()
- return
-
+ unwield(user)
else //Trying to wield it
- if(user.get_inactive_hand())
- user << "You need your other hand to be empty"
- return
- wield()
- user << "You grab the [initial(name)] with both hands."
- if (src.wieldsound)
- playsound(src.loc, wieldsound, 50, 1)
-
- var/obj/item/weapon/twohanded/offhand/O = new(user) ////Let's reserve his other hand~
- O.name = "[initial(name)] - offhand"
- O.desc = "Your second grip on the [initial(name)]"
- user.put_in_inactive_hand(O)
- return
-
+ wield(user)
///////////OFFHAND///////////////
/obj/item/weapon/twohanded/offhand
@@ -212,9 +205,9 @@ obj/item/weapon/twohanded/
clean_blood()//blood overlays get weird otherwise, because the sprite changes.
return
-/obj/item/weapon/twohanded/dualsaber/attack(target as mob, mob/living/user as mob)
+/obj/item/weapon/twohanded/dualsaber/attack(target as mob, mob/living/carbon/human/user as mob)
..()
- if((CLUMSY in user.mutations) && (wielded) && prob(40))
+ if(user.disabilities & CLUMSY && (wielded) && prob(40))
impale(user)
return
if((wielded) && prob(50))
@@ -236,14 +229,18 @@ obj/item/weapon/twohanded/
else
return 0
-/obj/item/weapon/twohanded/dualsaber/wield() //Specific wield () hulk checks due to reflect_chance var for balance issues and switches hitsounds.
- ..()
- var/mob/living/M = loc
- if(istype(loc, /mob/living))
- if (HULK in M.mutations)
- loc << "You lack the grace to wield this to its full extent."
- hitsound = 'sound/weapons/blade1.ogg'
+/obj/item/weapon/twohanded/dualsaber/attack_hulk(mob/living/carbon/human/user) //In case thats just so happens that it is still activated on the groud, prevents hulk from picking it up
+ if(wielded)
+ user << "You cant pick up such dangerous item with your meaty hands without losing fingers, better not to."
+ return 1
+/obj/item/weapon/twohanded/dualsaber/wield(mob/living/carbon/M) //Specific wield () hulk checks due to reflect_chance var for balance issues and switches hitsounds.
+ if(istype(M))
+ if(M.dna.check_mutation(HULK))
+ M << "You lack the grace to wield this."
+ return
+ ..()
+ hitsound = 'sound/weapons/blade1.ogg'
/obj/item/weapon/twohanded/dualsaber/unwield() //Specific unwield () to switch hitsounds.
..()
@@ -251,11 +248,7 @@ obj/item/weapon/twohanded/
/obj/item/weapon/twohanded/dualsaber/IsReflect()
if(wielded)
- var/mob/living/M = loc
- if(istype(loc, /mob/living))
- if (HULK in M.mutations)
- return
- return 1
+ return 1
/obj/item/weapon/twohanded/dualsaber/green
New()
diff --git a/code/game/objects/objs.dm b/code/game/objects/objs.dm
index 61d6bd77c09..0685f81d020 100644
--- a/code/game/objects/objs.dm
+++ b/code/game/objects/objs.dm
@@ -73,7 +73,7 @@
var/mob/living/carbon/human/H = usr
if(!(usr in nearby))
if(usr.client && usr.machine==src)
- if(TK in H.mutations)
+ if(H.dna.check_mutation(TK))
is_in_use = 1
src.attack_hand(usr)
in_use = is_in_use
diff --git a/code/game/objects/structures/crates_lockers/closets/secure/medical.dm b/code/game/objects/structures/crates_lockers/closets/secure/medical.dm
index 235a9ce9081..247ee620425 100644
--- a/code/game/objects/structures/crates_lockers/closets/secure/medical.dm
+++ b/code/game/objects/structures/crates_lockers/closets/secure/medical.dm
@@ -69,8 +69,8 @@
new /obj/item/clothing/suit/toggle/labcoat(src)
new /obj/item/clothing/shoes/sneakers/white(src)
new /obj/item/device/radio/headset/headset_med(src)
- new /obj/item/clothing/gloves/color/latex(src)
new /obj/item/weapon/defibrillator/loaded(src)
+ new /obj/item/clothing/gloves/color/latex/nitrile(src)
new /obj/item/weapon/storage/belt/medical(src)
new /obj/item/clothing/glasses/hud/health(src)
new /obj/item/clothing/suit/toggle/wintercoat/medical(src)
@@ -101,8 +101,8 @@
new /obj/item/clothing/shoes/sneakers/brown (src)
new /obj/item/weapon/cartridge/cmo(src)
new /obj/item/device/radio/headset/heads/cmo(src)
- new /obj/item/clothing/gloves/color/latex(src)
new /obj/item/weapon/defibrillator/loaded(src)
+ new /obj/item/clothing/gloves/color/latex/nitrile(src)
new /obj/item/weapon/storage/belt/medical(src)
new /obj/item/device/flash/handheld(src)
new /obj/item/clothing/suit/toggle/wintercoat/medical(src)
diff --git a/code/game/objects/structures/crates_lockers/closets/secure/secure_closets.dm b/code/game/objects/structures/crates_lockers/closets/secure/secure_closets.dm
index 56f26daaa54..b8583ba94d9 100644
--- a/code/game/objects/structures/crates_lockers/closets/secure/secure_closets.dm
+++ b/code/game/objects/structures/crates_lockers/closets/secure/secure_closets.dm
@@ -45,7 +45,7 @@
src.locked = !src.locked
add_fingerprint(user)
for(var/mob/O in viewers(user, 3))
- if((O.client && !( O.blinded )))
+ if((O.client && !( O.eye_blind )))
O << "[user] has [locked ? null : "un"]locked the locker."
if(src.locked)
src.icon_state = src.icon_locked
diff --git a/code/game/objects/structures/crates_lockers/closets/statue.dm b/code/game/objects/structures/crates_lockers/closets/statue.dm
index 458cbf9a80a..e4487a44451 100644
--- a/code/game/objects/structures/crates_lockers/closets/statue.dm
+++ b/code/game/objects/structures/crates_lockers/closets/statue.dm
@@ -22,7 +22,7 @@
L.client.perspective = EYE_PERSPECTIVE
L.client.eye = src
L.loc = src
- L.sdisabilities += MUTE
+ L.disabilities += MUTE
L.faction += "mimic" //Stops mimics from instaqdeling people in statues
health = L.health + 100 //stoning damaged mobs will result in easier to shatter statues
@@ -79,7 +79,7 @@
for(var/mob/living/M in src)
M.loc = src.loc
- M.sdisabilities -= MUTE
+ M.disabilities -= MUTE
M.take_overall_damage((M.health - health - 100),0) //any new damage the statue incurred is transfered to the mob
M.faction -= "mimic"
if(M.client)
diff --git a/code/game/objects/structures/door_assembly.dm b/code/game/objects/structures/door_assembly.dm
index c7ce5386cb2..12719f4a0fd 100644
--- a/code/game/objects/structures/door_assembly.dm
+++ b/code/game/objects/structures/door_assembly.dm
@@ -461,7 +461,13 @@ obj/structure/door_assembly/New()
return
else if(istype(W, /obj/item/weapon/wrench) && !anchored )
- if(!locate(/obj/machinery/door) in loc)
+ var/door_check = 1
+ for(var/obj/machinery/door/D in loc)
+ if(!D.sub_door)
+ door_check = 0
+ break
+
+ if(door_check)
playsound(src.loc, 'sound/items/Ratchet.ogg', 100, 1)
user.visible_message("[user] secures the airlock assembly to the floor.", \
"You start to secure the airlock assembly to the floor.", \
diff --git a/code/game/objects/structures/dresser.dm b/code/game/objects/structures/dresser.dm
index 622314f4456..30f4841cac3 100644
--- a/code/game/objects/structures/dresser.dm
+++ b/code/game/objects/structures/dresser.dm
@@ -12,7 +12,7 @@
if(ishuman(user))
var/mob/living/carbon/human/H = user
- var/choice = input(user, "Underwear or Undershirt?", "Changing") as null|anything in list("Underwear","Undershirt")
+ var/choice = input(user, "Underwear, Undershirt, or Socks?", "Changing") as null|anything in list("Underwear","Undershirt","Socks")
if(!Adjacent(user))
return
@@ -26,6 +26,10 @@
var/new_undershirt = input(user, "Select your undershirt", "Changing") as null|anything in undershirt_list
if(new_undershirt)
H.undershirt = new_undershirt
+ if("Socks")
+ var/new_socks = input(user, "Select your socks", "Changing") as null|anything in socks_list
+ if(new_socks)
+ H.socks= new_socks
add_fingerprint(H)
H.update_body()
\ No newline at end of file
diff --git a/code/game/objects/structures/grille.dm b/code/game/objects/structures/grille.dm
index fdb8eea13d1..4ea22d338a1 100644
--- a/code/game/objects/structures/grille.dm
+++ b/code/game/objects/structures/grille.dm
@@ -29,6 +29,12 @@
/obj/structure/grille/attack_paw(mob/user as mob)
attack_hand(user)
+/obj/structure/grille/attack_hulk(mob/living/carbon/human/user)
+ ..(user, 1)
+ shock(user, 70)
+ health -= 5
+ healthcheck()
+
/obj/structure/grille/attack_hand(mob/living/user as mob)
user.changeNext_move(CLICK_CD_MELEE)
user.do_attack_animation(src)
@@ -39,8 +45,6 @@
if(shock(user, 70))
return
- if(HULK in user.mutations)
- health -= 5
else
health -= rand(1,2)
healthcheck()
@@ -192,6 +196,8 @@
health -= W.force * 0.1
else if(!shock(user, 70))
switch(W.damtype)
+ if(STAMINA)
+ return
if(BURN)
playsound(loc, 'sound/items/welder.ogg', 80, 1)
else
diff --git a/code/game/objects/structures/mirror.dm b/code/game/objects/structures/mirror.dm
index 2b0a63b8499..b191c23aeef 100644
--- a/code/game/objects/structures/mirror.dm
+++ b/code/game/objects/structures/mirror.dm
@@ -58,6 +58,8 @@
/obj/structure/mirror/attackby(obj/item/I as obj, mob/living/user as mob)
user.do_attack_animation(src)
+ if(I.damtype == STAMINA)
+ return
if(shattered)
playsound(src.loc, 'sound/effects/hit_on_shattered_glass.ogg', 70, 1)
return
diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm
index 7111ef392aa..30317abac0e 100644
--- a/code/game/objects/structures/tables_racks.dm
+++ b/code/game/objects/structures/tables_racks.dm
@@ -207,15 +207,16 @@
/obj/structure/table/attack_paw(mob/user)
attack_hand(user)
+/obj/structure/table/attack_hulk(mob/living/carbon/human/user)
+ ..(user, 1)
+ visible_message("[user] smashes [src] apart!")
+ playsound(src.loc, 'sound/effects/bang.ogg', 50, 1)
+ user.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ))
+ table_destroy(1)
+ return 1
+
/obj/structure/table/attack_hand(mob/living/user)
user.changeNext_move(CLICK_CD_MELEE)
- if(HULK in user.mutations)
- user.do_attack_animation(src)
- visible_message("[user] smashes [src] apart!")
- playsound(src.loc, 'sound/effects/bang.ogg', 50, 1)
- user.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ))
- table_destroy(1)
- return
/obj/structure/table/attack_tk() // no telehulk sorry
return
@@ -460,19 +461,17 @@
/obj/structure/table/reinforced/attack_paw(mob/user)
attack_hand(user)
-/obj/structure/table/reinforced/attack_hand(mob/user as mob)
- user.changeNext_move(CLICK_CD_MELEE)
- if ((HULK in user.mutations))
- if (prob(75))
- playsound(src, 'sound/effects/meteorimpact.ogg', 100, 1)
- usr << text("You kick [src] into pieces.")
- usr.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ))
- table_destroy(1)
- return
- else
- playsound(src, 'sound/effects/bang.ogg', 50, 1)
- usr << text("You kick [src].")
- return
+/obj/structure/table/reinforced/attack_hulk(mob/living/carbon/human/user)
+ ..(user, 1)
+ if(prob(75))
+ playsound(src, 'sound/effects/meteorimpact.ogg', 100, 1)
+ user << text("You kick [src] into pieces.")
+ user.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ))
+ table_destroy(1)
+ else
+ playsound(src, 'sound/effects/bang.ogg', 50, 1)
+ user << text("You kick [src].")
+ return 1
/*
* Racks
@@ -547,19 +546,19 @@
/obj/structure/rack/attack_paw(mob/living/user)
attack_hand(user)
+/obj/structure/rack/attack_hulk(mob/living/carbon/human/user)
+ ..(user, 1)
+ rack_destroy()
+ return 1
+
/obj/structure/rack/attack_hand(mob/living/user)
user.changeNext_move(CLICK_CD_MELEE)
user.do_attack_animation(src)
playsound(loc, 'sound/items/dodgeball.ogg', 80, 1)
user.visible_message("[user] kicks [src].", \
"You kick [src].")
-
- if(HULK in user.mutations)
- rack_destroy()
- else
- health -= rand(1,2)
- healthcheck()
-
+ health -= rand(1,2)
+ healthcheck()
/obj/structure/rack/attack_alien(mob/living/user)
user.do_attack_animation(src)
diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm
index d8e698559c2..2f494c39c28 100644
--- a/code/game/objects/structures/window.dm
+++ b/code/game/objects/structures/window.dm
@@ -14,7 +14,7 @@
var/state = 0
var/reinf = 0
var/disassembled = 0
- var/shuttlew = 0
+ var/wtype = "glass"
var/fulltile = 0
var/obj/item/stack/rods/storedrods
var/obj/item/weapon/shard/storedshard
@@ -28,15 +28,8 @@
storedshard = new/obj/item/weapon/shard(src)
ini_dir = dir
if(reinf)
- icon_state = "rwindow"
- desc = "A reinforced window."
- name = "reinforced window"
state = 2*anchored
- if(opacity)
- icon_state = "twindow"
storedrods = new/obj/item/stack/rods(src)
- else
- icon_state = "window"
air_update_turf(1)
update_nearby_icons()
@@ -123,22 +116,25 @@
add_fingerprint(user)
playsound(loc, 'sound/effects/Glassknock.ogg', 50, 1)
+/obj/structure/window/attack_hulk(mob/living/carbon/human/user)
+ if(!can_be_reached(user))
+ return
+ ..(user, 1)
+ user.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!"))
+ user.visible_message("[user] smashes through [src]!")
+ storedshard.add_fingerprint(user)
+ if(storedrods)
+ storedrods.add_fingerprint(user)
+ hit(50)
+ return 1
+
/obj/structure/window/attack_hand(mob/user as mob)
if(!can_be_reached(user))
return
- if(HULK in user.mutations)
- user.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!"))
- user.visible_message("[user] smashes through [src]!")
- storedshard.add_fingerprint(user)
- if(storedrods)
- storedrods.add_fingerprint(user)
- spawnfragments()
- else
- user.changeNext_move(CLICK_CD_MELEE)
- user.visible_message("[user] knocks on [src].")
- add_fingerprint(user)
- playsound(loc, 'sound/effects/Glassknock.ogg', 50, 1)
-
+ user.changeNext_move(CLICK_CD_MELEE)
+ user.visible_message("[user] knocks on [src].")
+ add_fingerprint(user)
+ playsound(loc, 'sound/effects/Glassknock.ogg', 50, 1)
/obj/structure/window/attack_paw(mob/user as mob)
return attack_hand(user)
@@ -405,17 +401,10 @@
if(anchored)
for(var/obj/structure/window/W in orange(src,1))
if(W.anchored && W.density && W.fulltile) //Only counts anchored, not-destroyed fill-tile windows.
- if(abs(x-W.x)-abs(y-W.y) ) //doesn't count windows, placed diagonally to src
- junction |= get_dir(src,W)
- if(opacity)
- icon_state = "twindow[junction]"
- else
- if(shuttlew)
- icon_state = "swindow[junction]"
- else if(reinf)
- icon_state = "rwindow[junction]"
- else
- icon_state = "window[junction]"
+ if(src.wtype == W.wtype)
+ if(abs(x-W.x)-abs(y-W.y) ) //doesn't count windows, placed diagonally to src
+ junction |= get_dir(src,W)
+ icon_state = "[initial(icon_state)][junction]"
overlays.Cut()
var/ratio = health / maxhealth
@@ -463,9 +452,10 @@
/obj/structure/window/shuttle
name = "shuttle window"
- desc = "A strong, air-locked pod window that is extremely difficult to destroy."
+ desc = "A reinforced, air-locked pod window."
icon_state = "swindow"
dir = 5
maxhealth = 100
- shuttlew = 1
+ wtype = "shuttle"
fulltile = 1
+ reinf = 1
\ No newline at end of file
diff --git a/code/game/turfs/simulated/walls.dm b/code/game/turfs/simulated/walls.dm
index 402e970dd72..96178d35462 100644
--- a/code/game/turfs/simulated/walls.dm
+++ b/code/game/turfs/simulated/walls.dm
@@ -20,6 +20,9 @@
..()
builtin_sheet = new sheet_type
+/turf/simulated/wall/attack_tk()
+ return
+
/turf/simulated/wall/proc/dismantle_wall(devastated=0, explode=0)
if(devastated)
devastate_wall()
@@ -84,19 +87,6 @@
/turf/simulated/wall/attack_paw(mob/living/user as mob)
user.changeNext_move(CLICK_CD_MELEE)
- if ((HULK in user.mutations))
- user.do_attack_animation(src)
- if (prob(hardness))
- playsound(src, 'sound/effects/meteorimpact.ogg', 100, 1)
- user << "You smash through the wall."
- user.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ))
- dismantle_wall(1)
- return
- else
- playsound(src, 'sound/effects/bang.ogg', 50, 1)
- usr << text("You punch the wall.")
- return
-
return src.attack_hand(user)
@@ -109,21 +99,21 @@
dismantle_wall(1)
return
+/turf/simulated/wall/attack_hulk(mob/user)
+ ..(user, 1)
+ if(prob(hardness))
+ playsound(src, 'sound/effects/meteorimpact.ogg', 100, 1)
+ user << text("You smash through the wall.")
+ user.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ))
+ dismantle_wall(1)
+
+ else
+ playsound(src, 'sound/effects/bang.ogg', 50, 1)
+ user << text("You punch the wall.")
+ return 1
/turf/simulated/wall/attack_hand(mob/user as mob)
user.changeNext_move(CLICK_CD_MELEE)
- if (HULK in user.mutations)
- if (prob(hardness))
- playsound(src, 'sound/effects/meteorimpact.ogg', 100, 1)
- usr << text("You smash through the wall.")
- usr.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ))
- dismantle_wall(1)
- return
- else
- playsound(src, 'sound/effects/bang.ogg', 50, 1)
- usr << text("You punch the wall.")
- return
-
user << "You push the wall but nothing happens!"
playsound(src, 'sound/weapons/Genhit.ogg', 25, 1)
src.add_fingerprint(user)
@@ -288,4 +278,4 @@
/turf/simulated/wall/narsie_act()
if(prob(20))
- ChangeTurf(/turf/simulated/wall/cult)
+ ChangeTurf(/turf/simulated/wall/cult)
\ No newline at end of file
diff --git a/code/game/turfs/simulated/walls_reinforced.dm b/code/game/turfs/simulated/walls_reinforced.dm
index e613a03bd2d..d657f200d19 100644
--- a/code/game/turfs/simulated/walls_reinforced.dm
+++ b/code/game/turfs/simulated/walls_reinforced.dm
@@ -28,11 +28,6 @@
else
M << "This wall is far too strong for you to destroy."
-/turf/simulated/wall/r_wall/attack_hand(mob/user as mob)
- //this is ugly
- if ((HULK in user.mutations) || !d_state)
- ..()
-
/turf/simulated/wall/r_wall/try_destroy(obj/item/weapon/W as obj, mob/user as mob, turf/T as turf)
if(istype(W, /obj/item/weapon/melee/energy/blade))
user << "This wall is too thick to slice through. You will need to find a different path."
diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm
index 92ce7a44b73..6f2fb4f2d59 100644
--- a/code/game/turfs/turf.dm
+++ b/code/game/turfs/turf.dm
@@ -302,7 +302,7 @@
var/mob/living/carbon/M = slipper
if (M.m_intent=="walk" && (lube&NO_SLIP_WHEN_WALKING))
return 0
- if(!M.lying && (M.status_flags & CANWEAKEN) && !(HULK in M.mutations)) // we slip those who are standing and can fall.
+ if(!M.lying && (M.status_flags & CANWEAKEN)) // we slip those who are standing and can fall.
var/olddir = M.dir
M.Stun(s_amount)
M.Weaken(w_amount)
diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm
index 63c39db30c1..450a6cd05ee 100644
--- a/code/modules/admin/admin_verbs.dm
+++ b/code/modules/admin/admin_verbs.dm
@@ -243,7 +243,8 @@ var/list/admin_verbs_hideable = list(
/client/proc/startSinglo,
/client/proc/fps,
/client/proc/cmd_admin_grantfullaccess,
- /client/proc/cmd_admin_areatest
+ /client/proc/cmd_admin_areatest,
+ /client/proc/readmin
)
if(holder)
verbs.Remove(holder.rank.adds)
@@ -485,11 +486,11 @@ var/list/admin_verbs_hideable = list(
set category = "Admin"
if(holder)
- if(alert("Confirm self-deadmin for the round? You can't re-admin yourself without someont promoting you.",,"Yes","No") == "Yes")
- log_admin("[src] deadmined themself.")
- message_admins("[src] deadmined themself.")
- deadmin()
- src << "You are now a normal player."
+ log_admin("[src] deadmined themself.")
+ message_admins("[src] deadmined themself.")
+ deadmin()
+ verbs += /client/proc/readmin
+ src << "You are now a normal player."
feedback_add_details("admin_verb","DAS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/client/proc/toggle_log_hrefs()
@@ -510,3 +511,52 @@ var/list/admin_verbs_hideable = list(
if(holder)
src.holder.output_ai_laws()
+/client/proc/readmin()
+ set name = "Re-admin self"
+ set category = "Admin"
+ set desc = "Regain your admin powers."
+ var/list/rank_names = list()
+ for(var/datum/admin_rank/R in admin_ranks)
+ rank_names[R.name] = R
+ var/datum/admins/D = admin_datums[ckey]
+ var/rank = null
+ if(config.admin_legacy_system)
+ //load text from file
+ var/list/Lines = file2list("config/admins.txt")
+ for(var/line in Lines)
+ var/list/splitline = text2list(line, " = ")
+ if(splitline[1] == ckey)
+ if(splitline.len >= 2)
+ rank = ckeyEx(splitline[2])
+ break
+ continue
+ else
+ if(!dbcon.IsConnected())
+ message_admins("Warning, mysql database is not connected.")
+ src << "Warning, mysql database is not connected."
+ return
+ var/sql_ckey = sanitizeSQL(ckey)
+ var/DBQuery/query = dbcon.NewQuery("SELECT rank FROM [format_table_name("admin")] WHERE ckey = '[sql_ckey]'")
+ query.Execute()
+ while(query.NextRow())
+ rank = ckeyEx(query.item[1])
+ if(!D)
+ if(rank_names[rank] == null)
+ var/error_extra = ""
+ if(!config.admin_legacy_system)
+ error_extra = " Check mysql DB connection."
+ error("Error while re-adminning [src], admin rank ([rank]) does not exist.[error_extra]")
+ src << "Error while re-adminning, admin rank ([rank]) does not exist.[error_extra]"
+ return
+ D = new(rank_names[rank],ckey)
+ var/client/C = directory[ckey]
+ D.associate(C)
+ message_admins("[src] re-adminned themselves.")
+ log_admin("[src] re-adminned themselves.")
+ feedback_add_details("admin_verb","RAS")
+ verbs -= /client/proc/readmin
+ return
+ else
+ src << "You are already an admin."
+ verbs -= /client/proc/readmin
+ return
diff --git a/code/modules/assembly/mousetrap.dm b/code/modules/assembly/mousetrap.dm
index 2e951f9f539..c1dcfa30e92 100644
--- a/code/modules/assembly/mousetrap.dm
+++ b/code/modules/assembly/mousetrap.dm
@@ -18,7 +18,7 @@
if(!armed)
if(ishuman(usr))
var/mob/living/carbon/human/user = usr
- if(((user.getBrainLoss() >= 60 || (CLUMSY in user.mutations)) && prob(50)))
+ if((user.getBrainLoss() >= 60) || user.disabilities & CLUMSY && prob(50))
user << "Your hand slips, setting off the trigger."
pulse(0)
update_icon()
@@ -65,11 +65,11 @@
pulse(0)
-/obj/item/device/assembly/mousetrap/attack_self(mob/living/user as mob)
+/obj/item/device/assembly/mousetrap/attack_self(mob/living/carbon/human/user as mob)
if(!armed)
user << "You arm [src]."
else
- if(((user.getBrainLoss() >= 60 || (CLUMSY in user.mutations)) && prob(50)))
+ if(((user.getBrainLoss() >= 60) || user.disabilities & CLUMSY) && prob(50))
var/which_hand = "l_hand"
if(!user.hand)
which_hand = "r_hand"
@@ -83,9 +83,9 @@
playsound(user.loc, 'sound/weapons/handcuffs.ogg', 30, 1, -3)
-/obj/item/device/assembly/mousetrap/attack_hand(mob/living/user as mob)
+/obj/item/device/assembly/mousetrap/attack_hand(mob/living/carbon/human/user as mob)
if(armed)
- if(((user.getBrainLoss() >= 60 || CLUMSY in user.mutations)) && prob(50))
+ if(((user.getBrainLoss() >= 60) || user.disabilities & CLUMSY) && prob(50))
var/which_hand = "l_hand"
if(!user.hand)
which_hand = "r_hand"
diff --git a/code/modules/awaymissions/mission_code/wildwest.dm b/code/modules/awaymissions/mission_code/wildwest.dm
index 2f3fe0ba0e6..2fa4f53b808 100644
--- a/code/modules/awaymissions/mission_code/wildwest.dm
+++ b/code/modules/awaymissions/mission_code/wildwest.dm
@@ -77,18 +77,9 @@
if("Power")
user << "Your wish is granted, but at a terrible cost..."
user << "The Wish Granter punishes you for your selfishness, claiming your soul and warping your body to match the darkness in your heart."
- if (!(LASER in user.mutations))
- user.mutations.Add(LASER)
- user << "You feel pressure building behind your eyes."
- if (!(COLD_RESISTANCE in user.mutations))
- user.mutations.Add(COLD_RESISTANCE)
- user << "Your body feels warm."
- if (!(XRAY in user.mutations))
- user.mutations.Add(XRAY)
- user.sight |= (SEE_MOBS|SEE_OBJS|SEE_TURFS)
- user.see_in_dark = 8
- user.see_invisible = SEE_INVISIBLE_LEVEL_TWO
- user << "The walls suddenly disappear."
+ user.dna.add_mutation(LASEREYES)
+ user.dna.add_mutation(COLDRES)
+ user.dna.add_mutation(XRAY)
user.dna.species = new /datum/species/shadow()
user.regenerate_icons()
if("Wealth")
diff --git a/code/modules/client/client procs.dm b/code/modules/client/client procs.dm
index 324096d42af..07fab03cfdc 100644
--- a/code/modules/client/client procs.dm
+++ b/code/modules/client/client procs.dm
@@ -211,7 +211,7 @@ var/next_external_rsc = 0
var/sql_admin_rank = sanitizeSQL(admin_rank)
- var/DBQuery/query_insert = dbcon.NewQuery("INSERT INTO [format_table_name("player")] (id, ckey, firstseen, lastseen, ip, computerid, lastadminrank) VALUES (null, '[sql_ckey]', Now(), Now(), '[sql_ip]', '[sql_computerid]', '[sql_admin_rank]') ON DUPLICATE KEY UPDATE lastseen = VALUES(lastseen), ip = VALUES(ip), computerid = VALUES(computerid)")
+ var/DBQuery/query_insert = dbcon.NewQuery("INSERT INTO [format_table_name("player")] (id, ckey, firstseen, lastseen, ip, computerid, lastadminrank) VALUES (null, '[sql_ckey]', Now(), Now(), '[sql_ip]', '[sql_computerid]', '[sql_admin_rank]') ON DUPLICATE KEY UPDATE lastseen = VALUES(lastseen), ip = VALUES(ip), computerid = VALUES(computerid), lastadminrank = VALUES(lastadminrank)")
query_insert.Execute()
//Logging player access
diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm
index 9311ee3cbcf..f22870a8cf8 100644
--- a/code/modules/client/preferences.dm
+++ b/code/modules/client/preferences.dm
@@ -49,6 +49,7 @@ datum/preferences
var/blood_type = "A+" //blood type (not-chooseable)
var/underwear = "Nude" //underwear type
var/undershirt = "Nude" //undershirt type
+ var/socks = "Nude" //socks type
var/backbag = 2 //backpack type
var/hair_style = "Bald" //Hair type
var/hair_color = "000" //Hair color
@@ -178,6 +179,7 @@ datum/preferences
dat += "Skin Tone:
[skin_tone]
"
dat += "Underwear:
[underwear]
"
dat += "Undershirt:
[undershirt]
"
+ dat += "Socks:
[socks]
"
dat += "Backpack:
[backbaglist[backbag]]
"
@@ -272,7 +274,7 @@ datum/preferences
dat += ""
//user << browse(dat, "window=preferences;size=560x560")
- var/datum/browser/popup = new(user, "preferences", "Character Setup
", 580, 620)
+ var/datum/browser/popup = new(user, "preferences", "Character Setup
", 640, 680)
popup.set_content(dat)
popup.open(0)
@@ -565,6 +567,8 @@ datum/preferences
underwear = random_underwear(gender)
if("undershirt")
undershirt = random_undershirt(gender)
+ if("socks")
+ socks = random_socks(gender)
if("eyes")
eye_color = random_eye_color()
if("s_tone")
@@ -669,6 +673,15 @@ datum/preferences
if(new_undershirt)
undershirt = new_undershirt
+ if("socks")
+ var/new_socks
+ if(gender == MALE)
+ new_socks = input(user, "Choose your character's socks:", "Character Preference") as null|anything in socks_m
+ else
+ new_socks = input(user, "Choose your character's socks:", "Character Preference") as null|anything in socks_f
+ if(new_socks)
+ socks = new_socks
+
if("eyes")
var/new_eyes = input(user, "Choose your character's eye colour:", "Character Preference") as color|null
if(new_eyes)
@@ -724,6 +737,7 @@ datum/preferences
gender = MALE
underwear = random_underwear(gender)
undershirt = random_undershirt(gender)
+ socks = random_socks(gender)
facial_hair_style = random_facial_hair_style(gender)
hair_style = random_hair_style(gender)
@@ -832,6 +846,7 @@ datum/preferences
character.facial_hair_style = facial_hair_style
character.underwear = underwear
character.undershirt = undershirt
+ character.socks = socks
if(backbag > 3 || backbag < 1)
backbag = 1 //Same as above
diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm
index 74562dc81e5..c1820717417 100644
--- a/code/modules/client/preferences_savefile.dm
+++ b/code/modules/client/preferences_savefile.dm
@@ -180,6 +180,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car
S["facial_style_name"] >> facial_hair_style
S["underwear"] >> underwear
S["undershirt"] >> undershirt
+ S["socks"] >> socks
S["backbag"] >> backbag
S["mutant_color"] >> mutant_color
@@ -213,11 +214,13 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car
facial_hair_style = sanitize_inlist(facial_hair_style, facial_hair_styles_male_list)
underwear = sanitize_inlist(underwear, underwear_m)
undershirt = sanitize_inlist(undershirt, undershirt_m)
+ socks = sanitize_inlist(socks, socks_m)
else
hair_style = sanitize_inlist(hair_style, hair_styles_female_list)
facial_hair_style = sanitize_inlist(facial_hair_style, facial_hair_styles_female_list)
underwear = sanitize_inlist(underwear, underwear_f)
undershirt = sanitize_inlist(undershirt, undershirt_f)
+ socks = sanitize_inlist(socks, socks_f)
age = sanitize_integer(age, AGE_MIN, AGE_MAX, initial(age))
hair_color = sanitize_hexcolor(hair_color, 3, 0)
@@ -263,6 +266,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car
S["facial_style_name"] << facial_hair_style
S["underwear"] << underwear
S["undershirt"] << undershirt
+ S["socks"] << socks
S["backbag"] << backbag
S["species"] << pref_species.name
S["mutant_color"] << mutant_color
diff --git a/code/modules/clothing/glasses/glasses.dm b/code/modules/clothing/glasses/glasses.dm
index 16e36636c14..16add9a8e5f 100644
--- a/code/modules/clothing/glasses/glasses.dm
+++ b/code/modules/clothing/glasses/glasses.dm
@@ -126,9 +126,9 @@
if(M.glasses == src)
M.eye_blind = 3
M.eye_blurry = 5
- M.disabilities |= NEARSIGHTED
+ M.disabilities |= NEARSIGHT
spawn(100)
- M.disabilities &= ~NEARSIGHTED
+ M.disabilities &= ~NEARSIGHT
..()
/obj/item/clothing/glasses/thermal/syndi //These are now a traitor item, concealed as mesons. -Pete
diff --git a/code/modules/clothing/gloves/color.dm b/code/modules/clothing/gloves/color.dm
index 6904b2c1ded..b7b4ad452de 100644
--- a/code/modules/clothing/gloves/color.dm
+++ b/code/modules/clothing/gloves/color.dm
@@ -137,7 +137,7 @@
/obj/item/clothing/gloves/color/latex
name = "latex gloves"
- desc = "Sterile latex gloves."
+ desc = "Cheap sterile gloves made from latex."
icon_state = "latex"
item_state = "lgloves"
siemens_coefficient = 0.30
@@ -148,11 +148,18 @@
/obj/item/clothing/gloves/color/latex/cmo
item_color = "medical" //Exists for washing machines. Is not different from latex gloves in any way.
+/obj/item/clothing/gloves/color/latex/nitrile
+ name = "nitrile gloves"
+ desc = "Pricy sterile gloves that are stronger than latex."
+ icon_state = "nitrile"
+ item_state = "nitrilegloves"
+ transfer_prints = FALSE
+
/obj/item/clothing/gloves/color/white
name = "white gloves"
desc = "These look pretty fancy."
- icon_state = "latex"
- item_state = "lgloves"
+ icon_state = "white"
+ item_state = "wgloves"
item_color="mime"
/obj/item/clothing/gloves/color/white/redcoat
diff --git a/code/modules/clothing/head/soft_caps.dm b/code/modules/clothing/head/soft_caps.dm
index 56423b8cf80..e16c312e45c 100644
--- a/code/modules/clothing/head/soft_caps.dm
+++ b/code/modules/clothing/head/soft_caps.dm
@@ -97,4 +97,4 @@
name = "EMT cap"
desc = "It's a baseball hat with a dark turquoise color and a reflective cross on the top."
icon_state = "emtsoft"
- item_color = "emtsoft"
\ No newline at end of file
+ item_color = "emt"
\ No newline at end of file
diff --git a/code/modules/events/disease_outbreak.dm b/code/modules/events/disease_outbreak.dm
index 7ff6b0ead14..bf704135455 100644
--- a/code/modules/events/disease_outbreak.dm
+++ b/code/modules/events/disease_outbreak.dm
@@ -35,7 +35,7 @@
var/datum/disease/D
if(virus_type == /datum/disease/dnaspread) //Dnaspread needs strain_data set to work.
- if(!H.dna || (H.sdisabilities & BLIND)) //A blindness disease would be the worst.
+ if(!H.dna || (H.disabilities & BLIND)) //A blindness disease would be the worst.
continue
D = new virus_type()
var/datum/disease/dnaspread/DS = D
diff --git a/code/modules/events/ninja.dm b/code/modules/events/ninja.dm
index 725cf620a18..29c7f0e613b 100644
--- a/code/modules/events/ninja.dm
+++ b/code/modules/events/ninja.dm
@@ -2396,13 +2396,12 @@ It is possible to destroy the net by the occupant or someone else.
..()
return
-/obj/effect/energy_net/attack_hand(mob/user)
- if (HULK in user.mutations)
- user.visible_message("[user] rips the energy net apart!", \
+/obj/effect/energy_net/attack_hulk(mob/living/carbon/human/user)
+ ..(user, 1)
+ user.visible_message("[user] rips the energy net apart!", \
"You easily destroy the energy net.")
- health-=50
+ health-=50
healthcheck()
- return
/obj/effect/energy_net/attack_paw(mob/user)
return attack_hand()
diff --git a/code/modules/events/spacevine.dm b/code/modules/events/spacevine.dm
index ce3fa370bd5..b9f1260e77e 100644
--- a/code/modules/events/spacevine.dm
+++ b/code/modules/events/spacevine.dm
@@ -64,7 +64,7 @@
holder.luminosity = 4
/datum/spacevine_mutation/toxicity
- name = "toxicity"
+ name = "toxic"
hue = "#ff00ff"
/datum/spacevine_mutation/toxicity/on_cross(obj/effect/spacevine/holder, mob/living/crosser)
@@ -87,7 +87,7 @@
explosion(holder.loc, 0, 0, 2, 0, 0)
/datum/spacevine_mutation/fire_proof
- name = "fire resist"
+ name = "fire proof"
hue = "#ff8888"
/datum/spacevine_mutation/fire_proof/process_temperature(obj/effect/spacevine/holder, temp, volume)
@@ -116,7 +116,7 @@
buckled.ex_act(severity)
/datum/spacevine_mutation/transparency
- name = "transparency"
+ name = "transparent"
hue = ""
/datum/spacevine_mutation/transparency/on_grow(obj/effect/spacevine/holder)
@@ -124,7 +124,7 @@
holder.alpha = 125
/datum/spacevine_mutation/oxy_eater
- name = "oxygen consumption"
+ name = "oxygen consuming"
hue = "#ffff88"
/datum/spacevine_mutation/oxy_eater/process_mutation(obj/effect/spacevine/holder)
@@ -134,7 +134,7 @@
GM.oxygen = max(0, GM.oxygen - severity * holder.energy)
/datum/spacevine_mutation/nitro_eater
- name = "nitrogen consumption"
+ name = "nitrogen consuming"
hue = "#8888ff"
/datum/spacevine_mutation/nitro_eater/process_mutation(obj/effect/spacevine/holder)
@@ -144,7 +144,7 @@
GM.nitrogen = max(0, GM.nitrogen - severity * holder.energy)
/datum/spacevine_mutation/carbondioxide_eater
- name = "CO2 consumption"
+ name = "CO2 consuming"
hue = "#00ffff"
/datum/spacevine_mutation/carbondioxide_eater/process_mutation(obj/effect/spacevine/holder)
@@ -154,7 +154,7 @@
GM.carbon_dioxide = max(0, GM.carbon_dioxide - severity * holder.energy)
/datum/spacevine_mutation/plasma_eater
- name = "toxins consumption"
+ name = "toxins consuming"
hue = "#ffbbff"
/datum/spacevine_mutation/plasma_eater/process_mutation(obj/effect/spacevine/holder)
@@ -164,7 +164,7 @@
GM.toxins = max(0, GM.toxins - severity * holder.energy)
/datum/spacevine_mutation/thorns
- name = "thorns"
+ name = "thorny"
hue = "#666666"
/datum/spacevine_mutation/thorns/on_cross(obj/effect/spacevine/holder, crosser)
@@ -373,10 +373,15 @@
if(parent)
SV.mutations |= parent.mutations
SV.color = parent.color
+ SV.desc = parent.desc
if(prob(mutativness))
SV.mutations |= pick(mutations_list)
var/datum/spacevine_mutation/randmut = pick(SV.mutations)
SV.color = randmut.hue
+ SV.desc = "An extremely expansionistic species of vine. These are "
+ for(var/datum/spacevine_mutation/M in SV.mutations)
+ SV.desc += "[M.name] "
+ SV.desc += "vines."
for(var/datum/spacevine_mutation/SM in SV.mutations)
SM.on_birth(SV)
diff --git a/code/modules/food&drinks/recipes/microwave/recipes_bread.dm b/code/modules/food&drinks/recipes/microwave/recipes_bread.dm
index 07e15cecdb9..396ceeb7043 100644
--- a/code/modules/food&drinks/recipes/microwave/recipes_bread.dm
+++ b/code/modules/food&drinks/recipes/microwave/recipes_bread.dm
@@ -3,7 +3,7 @@
////////////////////////////////////////////////BREAD////////////////////////////////////////////////
-/datum/recipe/bread
+/datum/recipe/bread/plain
reagents = list("flour" = 15)
result = /obj/item/weapon/reagent_containers/food/snacks/sliceable/store/bread
diff --git a/code/modules/food&drinks/recipes/microwave/recipes_pie.dm b/code/modules/food&drinks/recipes/microwave/recipes_pie.dm
index c53c67629e5..83afd98f833 100644
--- a/code/modules/food&drinks/recipes/microwave/recipes_pie.dm
+++ b/code/modules/food&drinks/recipes/microwave/recipes_pie.dm
@@ -3,7 +3,7 @@
////////////////////////////////////////////////PIES////////////////////////////////////////////////
-/datum/recipe/pie
+/datum/recipe/pie/banana
reagents = list("flour" = 10)
items = list(
/obj/item/weapon/reagent_containers/food/snacks/grown/banana,
diff --git a/code/modules/food&drinks/recipes/microwave/recipes_sandwichtoast.dm b/code/modules/food&drinks/recipes/microwave/recipes_sandwichtoast.dm
index 54b79edd0fa..70347693bb4 100644
--- a/code/modules/food&drinks/recipes/microwave/recipes_sandwichtoast.dm
+++ b/code/modules/food&drinks/recipes/microwave/recipes_sandwichtoast.dm
@@ -3,7 +3,7 @@
////////////////////////////////////////////////SANDWICHES////////////////////////////////////////////////
-/datum/recipe/sandwich
+/datum/recipe/sandwich/plain
items = list(
/obj/item/weapon/reagent_containers/food/snacks/meatsteak,
/obj/item/weapon/reagent_containers/food/snacks/breadslice,
diff --git a/code/modules/food&drinks/recipes/microwave/recipes_spaghetti.dm b/code/modules/food&drinks/recipes/microwave/recipes_spaghetti.dm
index 96ed89e3152..fa3ff8c5c4e 100644
--- a/code/modules/food&drinks/recipes/microwave/recipes_spaghetti.dm
+++ b/code/modules/food&drinks/recipes/microwave/recipes_spaghetti.dm
@@ -3,7 +3,7 @@
////////////////////////////////////////////////SPAGHETTI////////////////////////////////////////////////
-/datum/recipe/spaghetti
+/datum/recipe/spaghetti/plain
reagents = list("flour" = 5)
result= /obj/item/weapon/reagent_containers/food/snacks/spaghetti
@@ -54,6 +54,6 @@
items = list(
/obj/item/weapon/reagent_containers/food/snacks/cheesewedge,
/obj/item/weapon/reagent_containers/food/snacks/cheesewedge,
- /obj/item/weapon/reagent_containers/food/snacks/grown/eggplant
+ /obj/item/weapon/reagent_containers/food/snacks/grown/eggplant,
)
result = /obj/item/weapon/reagent_containers/food/snacks/eggplantparm
diff --git a/code/modules/hydroponics/grown.dm b/code/modules/hydroponics/grown.dm
index 5fb091409cb..54f4d2e3df1 100644
--- a/code/modules/hydroponics/grown.dm
+++ b/code/modules/hydroponics/grown.dm
@@ -163,7 +163,7 @@
/obj/item/weapon/reagent_containers/food/snacks/grown/potato/attackby(obj/item/weapon/W as obj, mob/user as mob)
..()
if(istype(W, /obj/item/stack/cable_coil))
- var/obj/item/stack/cable_coil/C
+ var/obj/item/stack/cable_coil/C = W
if (C.use(5))
user << "You add some cable to the potato and slide it inside the battery encasing."
var/obj/item/weapon/stock_parts/cell/potato/pocell = new /obj/item/weapon/stock_parts/cell/potato(user.loc)
diff --git a/code/modules/library/lib_items.dm b/code/modules/library/lib_items.dm
index 084a4fa4c03..b82a14f6d36 100644
--- a/code/modules/library/lib_items.dm
+++ b/code/modules/library/lib_items.dm
@@ -18,6 +18,7 @@
density = 1
opacity = 0
var/state = 0
+ var/list/allowed_books = list(/obj/item/weapon/book, /obj/item/weapon/spellbook, /obj/item/weapon/storage/book) //Things allowed in the bookcase
/obj/structure/bookcase/initialize()
@@ -61,7 +62,7 @@
state = 0
if(2)
- if(istype(I, /obj/item/weapon/book) || istype(I, /obj/item/weapon/spellbook))
+ if(is_type_in_list(I, allowed_books))
user.drop_item()
I.loc = src
update_icon()
diff --git a/code/modules/mob/dead/observer/observer.dm b/code/modules/mob/dead/observer/observer.dm
index 29bd55c5739..38c72dbbcc2 100644
--- a/code/modules/mob/dead/observer/observer.dm
+++ b/code/modules/mob/dead/observer/observer.dm
@@ -7,7 +7,6 @@
stat = DEAD
density = 0
canmove = 0
- blinded = 0
anchored = 1 // don't get pushed around
invisibility = INVISIBILITY_OBSERVER
languages = ALL
diff --git a/code/modules/mob/living/carbon/alien/alien.dm b/code/modules/mob/living/carbon/alien/alien.dm
index 5f14cc1f488..f9c32f174c7 100644
--- a/code/modules/mob/living/carbon/alien/alien.dm
+++ b/code/modules/mob/living/carbon/alien/alien.dm
@@ -113,10 +113,6 @@
/mob/living/carbon/alien/proc/handle_mutations_and_radiation()
- if(getFireLoss())
- if((COLD_RESISTANCE in mutations) || prob(5))
- adjustFireLoss(-1)
-
// Aliens love radiation nom nom nom
if (radiation)
if (radiation > 100)
diff --git a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm
index a7300deac39..0185f4ebe4b 100644
--- a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm
+++ b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm
@@ -87,19 +87,22 @@
updatehealth()
return
+/mob/living/carbon/alien/humanoid/attack_hulk(mob/living/carbon/human/user)
+ if(user.a_intent == "harm")
+ ..(user, 1)
+ adjustBruteLoss(14 + rand(1,9))
+ Paralyse(1)
+ step_away(src,user,15)
+ sleep(1)
+ step_away(src,user,15)
+ return 1
+
/mob/living/carbon/alien/humanoid/attack_hand(mob/living/carbon/human/M as mob)
if(..())
switch(M.a_intent)
if ("harm")
var/damage = rand(1, 9)
if (prob(90))
- if (HULK in M.mutations)//HULK SMASH
- damage += 14
- spawn(0)
- Paralyse(1)
- step_away(src,M,15)
- sleep(3)
- step_away(src,M,15)
playsound(loc, "punch", 25, 1, -1)
visible_message("[M] has punched [src]!", \
"[M] has punched [src]!")
diff --git a/code/modules/mob/living/carbon/alien/humanoid/life.dm b/code/modules/mob/living/carbon/alien/humanoid/life.dm
index 1f6b9f4a64e..0d6ddc67c67 100644
--- a/code/modules/mob/living/carbon/alien/humanoid/life.dm
+++ b/code/modules/mob/living/carbon/alien/humanoid/life.dm
@@ -38,14 +38,10 @@
//Chemicals in the body
handle_chemicals_in_body()
- //Disabilities
- handle_disabilities()
-
//Apparently, the person who wrote this code designed it so that
//blinded get reset each cycle and then get activated later in the
//code. Very ugly. I dont care. Moving this stuff here so its easy
//to find it.
- blinded = null
//Handle temperature/pressure differences between body and environment
handle_environment(environment)
@@ -67,28 +63,6 @@
if(client)
handle_regular_hud_updates()
-
-/mob/living/carbon/alien/humanoid/proc/handle_disabilities()
- if (disabilities & EPILEPSY)
- if ((prob(1) && paralysis < 10))
- src << "You have a seizure!"
- Paralyse(10)
- if (disabilities & COUGHING)
- if ((prob(5) && paralysis <= 1))
- drop_item()
- spawn( 0 )
- emote("cough")
- return
- if (disabilities & TOURETTES)
- if ((prob(10) && paralysis <= 1))
- Stun(10)
- spawn( 0 )
- emote("twitch")
- return
- if (disabilities & NERVOUS)
- if (prob(10))
- stuttering = max(10, stuttering)
-
/mob/living/carbon/alien/humanoid/proc/adjust_body_temperature(current, loc_temp, boost)
var/temperature = current
var/difference = abs(current-loc_temp) //get difference
@@ -110,12 +84,12 @@
updatehealth()
if(stat == DEAD) //DEAD. BROWN BREAD. SWIMMING WITH THE SPESS CARP
- blinded = 1
+ eye_blind = 1
silent = 0
else //ALIVE. LIGHTS ARE ON
if(health < config.health_threshold_dead || !getorgan(/obj/item/organ/brain))
death()
- blinded = 1
+ eye_blind = 1
stat = DEAD
silent = 0
return 1
@@ -131,11 +105,11 @@
if(paralysis)
AdjustParalysis(-1)
- blinded = 1
+ eye_blind = max(eye_blind, 1)
stat = UNCONSCIOUS
else if(sleeping)
sleeping = max(sleeping-1, 0)
- blinded = 1
+ eye_blind = max(eye_blind, 1)
stat = UNCONSCIOUS
if( prob(10) && health )
spawn(0)
@@ -149,16 +123,15 @@
move_delay_add = max(0, move_delay_add - rand(1, 2))
//Eyes
- if(sdisabilities & BLIND) //disabled-blind, doesn't get better on its own
- blinded = 1
+ if(disabilities & BLIND) //disabled-blind, doesn't get better on its own
+ eye_blind = max(eye_blind, 1)
else if(eye_blind) //blindness, heals slowly over time
eye_blind = max(eye_blind-1,0)
- blinded = 1
else if(eye_blurry) //blurry eyes heal slowly
eye_blurry = max(eye_blurry-1, 0)
//Ears
- if(sdisabilities & DEAF) //disabled-deaf, doesn't get better on its own
+ if(disabilities & DEAF) //disabled-deaf, doesn't get better on its own
ear_deaf = max(ear_deaf, 1)
else if(ear_deaf) //deafness, heals slowly over time
ear_deaf = max(ear_deaf-1, 0)
@@ -189,7 +162,7 @@
/mob/living/carbon/alien/humanoid/proc/handle_regular_hud_updates()
- if (stat == 2 || (XRAY in mutations))
+ if (stat == 2)
sight |= SEE_TURFS
sight |= SEE_MOBS
sight |= SEE_OBJS
@@ -242,12 +215,12 @@
client.screen.Remove(global_hud.blurry,global_hud.druggy,global_hud.vimpaired)
if ((blind && stat != 2))
- if ((blinded))
+ if ((eye_blind))
blind.layer = 18
else
blind.layer = 0
- if (disabilities & NEARSIGHTED)
+ if (disabilities & NEARSIGHT)
client.screen += global_hud.vimpaired
if (eye_blurry)
diff --git a/code/modules/mob/living/carbon/alien/larva/larva.dm b/code/modules/mob/living/carbon/alien/larva/larva.dm
index 7288651a2cc..515edc002a3 100644
--- a/code/modules/mob/living/carbon/alien/larva/larva.dm
+++ b/code/modules/mob/living/carbon/alien/larva/larva.dm
@@ -104,17 +104,21 @@
updatehealth()
return
+/mob/living/carbon/alien/larva/attack_hulk(mob/living/carbon/human/user)
+ if(user.a_intent == "harm")
+ ..(user, 1)
+ adjustBruteLoss(5 + rand(1,9))
+ Paralyse(1)
+ spawn()
+ step_away(src,user,15)
+ sleep(1)
+ step_away(src,user,15)
+ return 1
+
/mob/living/carbon/alien/larva/attack_hand(mob/living/carbon/human/M as mob)
if(..())
var/damage = rand(1, 9)
if (prob(90))
- if (HULK in M.mutations)
- damage += 5
- spawn(0)
- Paralyse(1)
- step_away(src,M,15)
- sleep(3)
- step_away(src,M,15)
playsound(loc, "punch", 25, 1, -1)
add_logs(M, src, "attacked", admin=0)
visible_message("[M] has kicked [src]!", \
diff --git a/code/modules/mob/living/carbon/alien/larva/life.dm b/code/modules/mob/living/carbon/alien/larva/life.dm
index 1e2572f865b..e5f64597566 100644
--- a/code/modules/mob/living/carbon/alien/larva/life.dm
+++ b/code/modules/mob/living/carbon/alien/larva/life.dm
@@ -38,7 +38,6 @@
//blinded get reset each cycle and then get activated later in the
//code. Very ugly. I dont care. Moving this stuff here so its easy
//to find it.
- blinded = null
//Handle temperature/pressure differences between body and environment
handle_environment(enviroment)
@@ -64,12 +63,12 @@
updatehealth()
if(stat == DEAD) //DEAD. BROWN BREAD. SWIMMING WITH THE SPESS CARP
- blinded = 1
+ eye_blind = max(1, eye_blind)
silent = 0
else //ALIVE. LIGHTS ARE ON
if(health < -25 || !getorgan(/obj/item/organ/brain))
death()
- blinded = 1
+ eye_blind = max(1, eye_blind)
silent = 0
return 1
@@ -84,11 +83,11 @@
if(paralysis)
AdjustParalysis(-2)
- blinded = 1
+ eye_blind = max(eye_blind, 1)
stat = UNCONSCIOUS
else if(sleeping)
sleeping = max(sleeping-1, 0)
- blinded = 1
+ eye_blind = max(eye_blind, 1)
stat = UNCONSCIOUS
if( prob(10) && health )
spawn(0)
@@ -102,16 +101,15 @@
move_delay_add = max(0, move_delay_add - rand(1, 2))
//Eyes
- if(sdisabilities & BLIND) //disabled-blind, doesn't get better on its own
- blinded = 1
+ if(disabilities & BLIND) //disabled-blind, doesn't get better on its own
+ eye_blind = max(eye_blind, 1)
else if(eye_blind) //blindness, heals slowly over time
eye_blind = max(eye_blind-1,0)
- blinded = 1
else if(eye_blurry) //blurry eyes heal slowly
eye_blurry = max(eye_blurry-1, 0)
//Ears
- if(sdisabilities & DEAF) //disabled-deaf, doesn't get better on its own
+ if(disabilities & DEAF) //disabled-deaf, doesn't get better on its own
ear_deaf = max(ear_deaf, 1)
else if(ear_deaf) //deafness, heals slowly over time
ear_deaf = max(ear_deaf-1, 0)
@@ -138,7 +136,7 @@
/mob/living/carbon/alien/larva/proc/handle_regular_hud_updates()
- if (stat == 2 || (XRAY in mutations))
+ if (stat == 2)
sight |= SEE_TURFS
sight |= SEE_MOBS
sight |= SEE_OBJS
@@ -191,12 +189,12 @@
client.screen.Remove(global_hud.blurry,global_hud.druggy,global_hud.vimpaired)
if ((blind && stat != 2))
- if ((blinded))
+ if ((eye_blind))
blind.layer = 18
else
blind.layer = 0
- if (disabilities & NEARSIGHTED)
+ if (disabilities & NEARSIGHT)
client.screen += global_hud.vimpaired
if (eye_blurry)
diff --git a/code/modules/mob/living/carbon/alien/life.dm b/code/modules/mob/living/carbon/alien/life.dm
index ef59d3fbe8f..6328daacc75 100644
--- a/code/modules/mob/living/carbon/alien/life.dm
+++ b/code/modules/mob/living/carbon/alien/life.dm
@@ -101,7 +101,7 @@
breath.toxins -= toxins_used
breath.oxygen += toxins_used
- if(breath.temperature > (T0C+66) && !(COLD_RESISTANCE in mutations)) // Hot air hurts :(
+ if(breath.temperature > (T0C+66)) // Hot air hurts :(
if(prob(20))
src << "You feel a searing heat in your lungs!"
fire_alert = max(fire_alert, 1)
diff --git a/code/modules/mob/living/carbon/brain/life.dm b/code/modules/mob/living/carbon/brain/life.dm
index f7a40978a0e..f8c4dc9adad 100644
--- a/code/modules/mob/living/carbon/brain/life.dm
+++ b/code/modules/mob/living/carbon/brain/life.dm
@@ -18,7 +18,6 @@
//blinded get reset each cycle and then get activated later in the
//code. Very ugly. I dont care. Moving this stuff here so its easy
//to find it.
- blinded = null
//Handle temperature/pressure differences between body and environment
if(environment) // More error checking
@@ -125,12 +124,12 @@
updatehealth()
if(stat == DEAD) //DEAD. BROWN BREAD. SWIMMING WITH THE SPESS CARP
- blinded = 1
+ eye_blind = max(eye_blind, 1)
silent = 0
else //ALIVE. LIGHTS ARE ON
if( !container && (health < config.health_threshold_dead || ((world.time - timeofhostdeath) > config.revival_brain_life)) )
death()
- blinded = 1
+ eye_blind = max(eye_blind, 1)
silent = 0
return 1
@@ -144,8 +143,7 @@
if(31 to INFINITY)
emp_damage = 30//Let's not overdo it
if(21 to 30)//High level of EMP damage, unable to see, hear, or speak
- eye_blind = 1
- blinded = 1
+ eye_blind = max(eye_blind, 1)
ear_deaf = 1
silent = 1
if(!alert)//Sounds an alarm, but only once per 'level'
@@ -156,7 +154,6 @@
emp_damage -= 1
if(20)
alert = 0
- blinded = 0
eye_blind = 0
ear_deaf = 0
silent = 0
@@ -209,7 +206,7 @@
/mob/living/carbon/brain/proc/handle_regular_hud_updates()
- if (stat == 2 || (XRAY in src.mutations))
+ if (stat == 2)
sight |= SEE_TURFS
sight |= SEE_MOBS
sight |= SEE_OBJS
@@ -249,12 +246,12 @@
client.screen.Remove(global_hud.blurry,global_hud.druggy,global_hud.vimpaired)
if ((blind && stat != 2))
- if ((blinded))
+ if (eye_blind)
blind.layer = 18
else
blind.layer = 0
- if (disabilities & NEARSIGHTED)
+ if (disabilities & NEARSIGHT)
client.screen += global_hud.vimpaired
if (eye_blurry)
diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm
index e7fd0006859..11c01fdc80a 100644
--- a/code/modules/mob/living/carbon/carbon.dm
+++ b/code/modules/mob/living/carbon/carbon.dm
@@ -1,3 +1,8 @@
+/mob/living/carbon/UnarmedAttack(var/atom/A, var/proximity_flag)
+ ..()
+ for(var/datum/mutation/human/HM in dna.mutations)
+ . += HM.on_attack_hand(A, src)
+
/mob/living/carbon/prepare_huds()
..()
prepare_data_huds()
@@ -27,7 +32,7 @@
src.nutrition -= HUNGER_FACTOR/10
if(src.m_intent == "run")
src.nutrition -= HUNGER_FACTOR/10
- if((FAT in src.mutations) && src.m_intent == "run" && src.bodytemperature <= 360)
+ if((src.disabilities & FAT) && src.m_intent == "run" && src.bodytemperature <= 360)
src.bodytemperature += 2
/mob/living/carbon/movement_delay()
diff --git a/code/modules/mob/living/carbon/human/death.dm b/code/modules/mob/living/carbon/human/death.dm
index 4f55523722d..85c96398045 100644
--- a/code/modules/mob/living/carbon/human/death.dm
+++ b/code/modules/mob/living/carbon/human/death.dm
@@ -52,8 +52,8 @@
return 1
/mob/living/carbon/proc/ChangeToHusk()
- if(HUSK in mutations) return
- mutations.Add(HUSK)
+ if(disabilities & HUSK) return
+ disabilities |= HUSK
status_flags |= DISFIGURED //makes them unknown without fucking up other stuff like admintools
return 1
diff --git a/code/modules/mob/living/carbon/human/human_attackhand.dm b/code/modules/mob/living/carbon/human/human_attackhand.dm
index d703a7ab610..be47a15b67f 100644
--- a/code/modules/mob/living/carbon/human/human_attackhand.dm
+++ b/code/modules/mob/living/carbon/human/human_attackhand.dm
@@ -1,3 +1,7 @@
+/mob/living/carbon/human/attack_hulk(mob/living/carbon/human/user)
+ adjustBruteLoss(5)
+ Weaken(4)
+
/mob/living/carbon/human/attack_hand(mob/living/carbon/human/M)
if(..()) //to allow surgery to return properly.
return
diff --git a/code/modules/mob/living/carbon/human/human_damage.dm b/code/modules/mob/living/carbon/human/human_damage.dm
index ab55bba100e..b13f76395c3 100644
--- a/code/modules/mob/living/carbon/human/human_damage.dm
+++ b/code/modules/mob/living/carbon/human/human_damage.dm
@@ -44,18 +44,6 @@
else
heal_overall_damage(0, -amount)
-/mob/living/carbon/human/Stun(amount)
- if(HULK in mutations) return
- ..()
-
-/mob/living/carbon/human/Weaken(amount)
- if(HULK in mutations) return
- ..()
-
-/mob/living/carbon/human/Paralyse(amount)
- if(HULK in mutations) return
- ..()
-
mob/living/carbon/human/proc/hat_fall_prob()
var/multiplier = 1
var/obj/item/clothing/head/H = head
diff --git a/code/modules/mob/living/carbon/human/human_defines.dm b/code/modules/mob/living/carbon/human/human_defines.dm
index db7fb3a0e52..de9f0ea57c0 100644
--- a/code/modules/mob/living/carbon/human/human_defines.dm
+++ b/code/modules/mob/living/carbon/human/human_defines.dm
@@ -21,6 +21,7 @@
var/underwear = "Nude" //Which underwear the player wants
var/undershirt = "Nude" //Which undershirt the player wants
+ var/socks = "Nude" //Which socks the player wants
var/backbag = 2 //Which backpack type the player has chosen. Nothing, Satchel or Backpack.
//Equipment slots
diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm
index f12aaf0aea5..402b1adfad1 100644
--- a/code/modules/mob/living/carbon/human/life.dm
+++ b/code/modules/mob/living/carbon/human/life.dm
@@ -49,17 +49,20 @@
//blinded get reset each cycle and then get activated later in the
//code. Very ugly. I dont care. Moving this stuff here so its easy
//to find it.
- blinded = null
fire_alert = 0 //Reset this here, because both breathe() and handle_environment() have a chance to set it.
tinttotal = tintcheck() //here as both hud updates and status updates call it
//TODO: seperate this out
var/datum/gas_mixture/environment = loc.return_air()
+ handle_regular_hud_updates()
+
//No need to update all of these procs if the guy is dead.
if(stat != DEAD)
- if(SSair.times_fired%4==2 || failed_last_breath) //First, resolve location and get a breath
- breathe() //Only try to take a breath every 4 ticks, unless suffocating
+ for(var/datum/mutation/human/HM in dna.mutations)
+ HM.on_life(src)
+
+ if(SSair.times_fired%4==2 || failed_last_breath) //First, resolve location and get a breath breathe() //Only try to take a breath every 4 ticks, unless suffocating
else //Still give containing object the chance to interact
if(istype(loc, /obj/))
@@ -97,8 +100,6 @@
//Update our name based on whether our face is obscured/disfigured
name = get_visible_name()
- handle_regular_hud_updates()
-
if(dna)
dna.species.spec_life(src) // for mutantraces
@@ -125,34 +126,6 @@
/mob/living/carbon/human/proc/handle_disabilities()
- if (disabilities & EPILEPSY)
- if ((prob(1) && paralysis < 1))
- src << "You have a seizure!"
- for(var/mob/O in viewers(src, null))
- if(O == src)
- continue
- O.show_message(text("[src] starts having a seizure!"), 1)
- Paralyse(10)
- Jitter(1000)
- if (disabilities & COUGHING)
- if ((prob(5) && paralysis <= 1))
- drop_item()
- emote("cough")
- if (disabilities & TOURETTES)
- if ((prob(10) && paralysis <= 1))
- Stun(10)
- switch(rand(1, 3))
- if(1)
- emote("twitch")
- if(2 to 3)
- say("[prob(50) ? ";" : ""][pick("SHIT", "PISS", "FUCK", "CUNT", "COCKSUCKER", "MOTHERFUCKER", "TITS")]")
- var/x_offset = pixel_x + rand(-2,2) //Should probably be moved into the twitch emote at some point.
- var/y_offset = pixel_y + rand(-1,1)
- animate(src, pixel_x = pixel_x + x_offset, pixel_y = pixel_y + y_offset, time = 1)
- animate(pixel_x = initial(pixel_x) , pixel_y = initial(pixel_y), time = 1)
- if (disabilities & NERVOUS)
- if (prob(10))
- stuttering = max(10, stuttering)
if (getBrainLoss() >= 60 && stat != 2)
if (prob(3))
switch(pick(1,2,3))
@@ -335,7 +308,7 @@
/mob/living/carbon/human/proc/get_cold_protection(temperature)
- if(COLD_RESISTANCE in mutations)
+ if(dna.check_mutation(COLDRES))
return 1 //Fully protected from the cold.
if(dna && COLDRES in dna.species.specflags)
@@ -437,13 +410,13 @@
/mob/living/carbon/human/proc/handle_regular_status_updates()
if(stat == DEAD) //DEAD. BROWN BREAD. SWIMMING WITH THE SPESS CARP
- blinded = 1
+ eye_blind = max(eye_blind, 1)
silent = 0
else //ALIVE. LIGHTS ARE ON
updatehealth() //TODO
if(health <= config.health_threshold_dead || !getorgan(/obj/item/organ/brain))
death()
- blinded = 1
+ eye_blind = max(eye_blind, 1)
silent = 0
return 1
@@ -473,13 +446,13 @@
if(paralysis)
AdjustParalysis(-1)
- blinded = 1
+ eye_blind = max(eye_blind, 1)
stat = UNCONSCIOUS
else if(sleeping)
handle_dreams()
adjustStaminaLoss(-10)
sleeping = max(sleeping-1, 0)
- blinded = 1
+ eye_blind = max(eye_blind, 1)
stat = UNCONSCIOUS
if( prob(10) && health && !hal_crit )
spawn(0)
@@ -489,27 +462,29 @@
stat = CONSCIOUS
//Eyes
- if(sdisabilities & BLIND) //disabled-blind, doesn't get better on its own
- blinded = 1
+ if(disabilities & BLIND) //disabled-blind, doesn't get better on its own
+ eye_blind = max(eye_blind, 1)
else if(eye_blind) //blindness, heals slowly over time
eye_blind = max(eye_blind-1,0)
- blinded = 1
else if(tinttotal >= TINT_BLIND) //covering your eyes heals blurry eyes faster
eye_blurry = max(eye_blurry-3, 0)
- // blinded = 1 //now handled under /handle_regular_hud_updates()
else if(eye_blurry) //blurry eyes heal slowly
eye_blurry = max(eye_blurry-1, 0)
//Ears
- if(sdisabilities & DEAF) //disabled-deaf, doesn't get better on its own
+ if(disabilities & DEAF) //disabled-deaf, doesn't get better on its own
ear_deaf = max(ear_deaf, 1)
- else if(istype(ears, /obj/item/clothing/ears/earmuffs)) //resting your ears with earmuffs heals ear damage faster, and slowly heals deafness
- ear_damage = max(ear_damage-0.15, 0)
- ear_deaf = max(ear_deaf-1, 1)
- else if(ear_deaf) //deafness, heals slowly over time
- ear_deaf = max(ear_deaf-1, 0)
- else if(ear_damage < 25) //ear damage heals slowly under this threshold. otherwise you'll need earmuffs
- ear_damage = max(ear_damage-0.05, 0)
+ else
+ /* might be better to create a variable here, and instead of doing this nested for. */
+ // deafness heals slowly over time, unless ear_damage is over 100
+ if (ear_damage < 100)
+ // Heal the first 1/3 here
+ ear_deaf = max(ear_deaf - 1, 0)
+ ear_damage = max(ear_damage-0.05, 0)
+ if(istype(ears, /obj/item/clothing/ears/earmuffs)) // earmuffs rest your ears, healing 3x faster, but keeping you deaf.
+ // Heal the 2/3 here
+ ear_deaf = max(ear_deaf, 1)
+ ear_damage = max(ear_damage-0.10, 0)
//Dizziness
if(dizziness)
diff --git a/code/modules/mob/living/carbon/human/say.dm b/code/modules/mob/living/carbon/human/say.dm
index 2981a2374da..3da77b6b76f 100644
--- a/code/modules/mob/living/carbon/human/say.dm
+++ b/code/modules/mob/living/carbon/human/say.dm
@@ -22,7 +22,7 @@
if(dna)
message = dna.species.handle_speech(message,src)
- if ((HULK in mutations) && health >= 25 && length(message))
+ if (dna.check_mutation(HULK))
message = "[uppertext(replacetext(message, ".", "!"))]!!" //because I don't know how to code properly in getting vars from other files -Bro
if(viruses.len)
@@ -103,7 +103,7 @@
if (ears)
ears.talk_into(src, message, message_mode)
return ITALICS | REDUCE_RANGE
-
+
if(message_mode in radiochannels)
if(ears)
ears.talk_into(src, message, message_mode)
diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm
index 5f6f3567fa4..e80378256ff 100644
--- a/code/modules/mob/living/carbon/human/species.dm
+++ b/code/modules/mob/living/carbon/human/species.dm
@@ -68,7 +68,7 @@
///////////
/datum/species/proc/update_base_icon_state(var/mob/living/carbon/human/H)
- if(HUSK in H.mutations)
+ if(H.disabilities & HUSK)
H.remove_overlay(SPECIES_LAYER) // races lose their color
return "husk"
else if(sexes)
@@ -181,7 +181,7 @@
img_eyes_s.color = "#" + H.eye_color
standing += img_eyes_s
- //Underwear & Undershirts
+ //Underwear, Undershirts & Socks
if(H.underwear)
var/datum/sprite_accessory/underwear/U = underwear_list[H.underwear]
if(U)
@@ -195,6 +195,11 @@
else
standing += image("icon"=U2.icon, "icon_state"="[U2.icon_state]_s", "layer"=-BODY_LAYER)
+ if(H.socks)
+ var/datum/sprite_accessory/socks/U3 = socks_list[H.socks]
+ if(U3)
+ standing += image("icon"=U3.icon, "icon_state"="[U3.icon_state]_s", "layer"=-BODY_LAYER)
+
if(standing.len)
H.overlays_standing[BODY_LAYER] = standing
@@ -387,10 +392,10 @@
if(H.reagents) H.reagents.metabolize(H)
//The fucking FAT mutation is the dumbest shit ever. It makes the code so difficult to work with
- if(FAT in H.mutations)
+ if(H.disabilities & FAT)
if(H.overeatduration < 100)
H << "You feel fit again!"
- H.mutations -= FAT
+ H.disabilities &= ~FAT
H.update_inv_w_uniform(0)
H.update_inv_wear_suit()
else
@@ -467,11 +472,6 @@
H.see_invisible = invis_sight
H.see_in_dark = darksight
- if(XRAY in H.mutations)
- H.sight |= SEE_TURFS|SEE_MOBS|SEE_OBJS
- H.see_in_dark = 8
- H.see_invisible = SEE_INVISIBLE_LEVEL_TWO
-
if(H.seer)
H.see_invisible = SEE_INVISIBLE_OBSERVER
@@ -497,16 +497,16 @@
if(H.tinttotal >= TINT_IMPAIR)
if(tinted_weldhelh)
if(H.tinttotal >= TINT_BLIND)
- H.blinded = 1 // You get the sudden urge to learn to play keyboard
+ H.eye_blind = max(H.eye_blind, 1) // You get the sudden urge to learn to play keyboard
H.client.screen += global_hud.darkMask
else
H.client.screen += global_hud.darkMask
if(H.blind)
- if(H.blinded) H.blind.layer = 18
+ if(H.eye_blind) H.blind.layer = 18
else H.blind.layer = 0
- if( H.disabilities & NEARSIGHTED && !istype(H.glasses, /obj/item/clothing/glasses/regular) )
+ if( H.disabilities & NEARSIGHT && !istype(H.glasses, /obj/item/clothing/glasses/regular) )
H.client.screen += global_hud.vimpaired
if(H.eye_blurry) H.client.screen += global_hud.blurry
if(H.druggy) H.client.screen += global_hud.druggy
@@ -612,16 +612,6 @@
return 1
/datum/species/proc/handle_mutations_and_radiation(var/mob/living/carbon/human/H)
- if(H.getFireLoss())
- if((COLD_RESISTANCE in H.mutations) || (prob(1)))
- H.heal_organ_damage(0,1)
-
- if ((HULK in H.mutations) && H.health <= 25)
- H.mutations.Remove(HULK)
- H.update_mutations() //update our mutation overlays
- H << "You suddenly feel very weak."
- H.Weaken(3)
- H.emote("collapse")
if (H.radiation && !(RADIMMUNE in specflags))
if (H.radiation > 100)
@@ -702,7 +692,7 @@
if(H.back && grav)
mspeed += H.back.slowdown
- if(FAT in H.mutations && grav)
+ if((H.disabilities & FAT) && grav)
mspeed += 1.5
if(H.bodytemperature < 283.222 && grav)
mspeed += (283.222 - H.bodytemperature) / 10 * 1.75
@@ -782,9 +772,6 @@
var/obj/item/organ/limb/affecting = H.get_organ(ran_zone(M.zone_sel.selecting))
var/armor_block = H.run_armor_check(affecting, "melee")
- if(HULK in M.mutations)
- damage += 5
-
if(M.dna)
playsound(H.loc, M.dna.species.attack_sound, 25, 1, -1)
else
@@ -1186,7 +1173,7 @@
return 1
/datum/species/proc/handle_temperature(datum/gas_mixture/breath, var/mob/living/carbon/human/H) // called by human/life, handles temperatures
- if( (abs(310.15 - breath.temperature) > 50) && !(COLD_RESISTANCE in H.mutations) && !(COLDRES in specflags)) // Hot air hurts :(
+ if( (abs(310.15 - breath.temperature) > 50) && !(mutations_list[COLDRES] in H.dna.mutations) && !(COLDRES in specflags)) // Hot air hurts :(
if(breath.temperature < 260.15)
if(prob(20))
H << "You feel your face freezing and an icicle forming in your lungs!"
@@ -1194,7 +1181,7 @@
if(prob(20))
H << "You feel your face burning and a searing heat in your lungs!"
- if(!(COLDRES in specflags)) // COLD DAMAGE
+ if(!(mutations_list[COLDRES] in H.dna.mutations)) // COLD DAMAGE
switch(breath.temperature)
if(-INFINITY to 120)
H.apply_damage(COLD_GAS_DAMAGE_LEVEL_3, BURN, "head")
@@ -1263,7 +1250,7 @@
H.apply_damage(HEAT_DAMAGE_LEVEL_2*heatmod, BURN)
H.fire_alert = max(H.fire_alert, 2)
- else if(H.bodytemperature < BODYTEMP_COLD_DAMAGE_LIMIT && !(COLDRES in specflags))
+ else if(H.bodytemperature < BODYTEMP_COLD_DAMAGE_LIMIT && !(mutations_list[COLDRES] in H.dna.mutations))
H.fire_alert = max(H.fire_alert, 1)
if(!istype(H.loc, /obj/machinery/atmospherics/unary/cryo_cell))
switch(H.bodytemperature)
@@ -1296,7 +1283,7 @@
if(HAZARD_LOW_PRESSURE to WARNING_LOW_PRESSURE)
H.pressure_alert = -1
else
- if((COLD_RESISTANCE in H.mutations) || (COLDRES in specflags))
+ if(H.dna.check_mutation(COLDRES) || (COLDRES in specflags))
H.pressure_alert = -1
else
H.adjustBruteLoss( LOW_PRESSURE_DAMAGE )
diff --git a/code/modules/mob/living/carbon/human/species_types.dm b/code/modules/mob/living/carbon/human/species_types.dm
index 48bf4b9c704..719aa2cda70 100644
--- a/code/modules/mob/living/carbon/human/species_types.dm
+++ b/code/modules/mob/living/carbon/human/species_types.dm
@@ -38,7 +38,7 @@
/datum/species/lizard/handle_speech(message)
// jesus christ why
if(copytext(message, 1, 2) != "*")
- message = replacetext(message, "s", stutter("ss"))
+ message = replacetext(message, "s", "sss")
return message
diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm
index 8c35bd78298..5b96c53722c 100644
--- a/code/modules/mob/living/carbon/human/update_icons.dm
+++ b/code/modules/mob/living/carbon/human/update_icons.dm
@@ -34,12 +34,11 @@ There are several things that need to be remembered:
> There are also these special cases:
- update_mutations() //handles updating your appearance for certain mutations. e.g TK head-glows
update_damage_overlays() //handles damage overlays for brute/burn damage
update_base_icon_state() //Handles updating var/base_icon_state (WIP) This is used to update the
mob's icon_state easily e.g. "[base_icon_state]_s" is the standing icon_state
update_body() //Handles updating your mob's icon_state (using update_base_icon_state())
- as well as sprite-accessories that didn't really fit elsewhere (underwear, undershirts, lips, eyes)
+ as well as sprite-accessories that didn't really fit elsewhere (underwear, undershirts, socks, lips, eyes)
//NOTE: update_mutantrace() is now merged into this!
update_hair() //Handles updating your hair overlay (used to be update_face, but mouth and
eyes were merged into update_body())
@@ -57,7 +56,7 @@ Please contact me on #coderbus IRC. ~Carnie x
//Human Overlays Indexes/////////
#define SPECIES_LAYER 23 // mutantrace colors... these are on a seperate layer in order to prvent
-#define BODY_LAYER 22 //underwear, undershirts, eyes, lips(makeup)
+#define BODY_LAYER 22 //underwear, undershirts, socks, eyes, lips(makeup)
#define MUTATIONS_LAYER 21 //Tk headglows etc.
#define AUGMENTS_LAYER 20
#define DAMAGE_LAYER 19 //damage indicators (cuts and burns)
@@ -90,7 +89,7 @@ Please contact me on #coderbus IRC. ~Carnie x
if(dna)
base_icon_state = dna.species.update_base_icon_state(src)
else
- if(HUSK in mutations)
+ if(disabilities & HUSK)
base_icon_state = "husk"
else
base_icon_state = "[skin_tone]_[(gender == FEMALE) ? "f" : "m"]"
@@ -146,7 +145,7 @@ Please contact me on #coderbus IRC. ~Carnie x
//Reset our hair
remove_overlay(HAIR_LAYER)
- if( (HUSK in mutations) || (head && (head.flags & BLOCKHAIR)) || (wear_mask && (wear_mask.flags & BLOCKHAIR)) )
+ if( (disabilities & HUSK) || (head && (head.flags & BLOCKHAIR)) || (wear_mask && (wear_mask.flags & BLOCKHAIR)) )
return
if((wear_suit) && (wear_suit.hooded) && (wear_suit.suittoggled == 1))
@@ -155,30 +154,8 @@ Please contact me on #coderbus IRC. ~Carnie x
if(dna)
dna.species.handle_hair(src)
-/mob/living/carbon/human/update_mutations()
- remove_overlay(MUTATIONS_LAYER)
-
- var/list/standing = list()
-
- var/g = (gender == FEMALE) ? "f" : "m"
-
- for(var/mut in mutations)
- switch(mut)
- if(HULK)
- standing += image("icon"='icons/effects/genetics.dmi', "icon_state"="hulk_[g]_s", "layer"=-MUTATIONS_LAYER)
- if(COLD_RESISTANCE)
- standing += image("icon"='icons/effects/genetics.dmi', "icon_state"="fire_s", "layer"=-MUTATIONS_LAYER)
- if(TK)
- standing += image("icon"='icons/effects/genetics.dmi', "icon_state"="telekinesishead_s", "layer"=-MUTATIONS_LAYER)
- if(LASER)
- standing += image("icon"='icons/effects/genetics.dmi', "icon_state"="lasereyes_s", "layer"=-MUTATIONS_LAYER)
- if(standing.len)
- overlays_standing[MUTATIONS_LAYER] = standing
-
- apply_overlay(MUTATIONS_LAYER)
-
/mob/living/carbon/human/proc/update_mutcolor()
- if(dna && !(HUSK in mutations))
+ if(dna && !(disabilities & HUSK))
dna.species.update_color(src)
/mob/living/carbon/human/proc/update_body()
@@ -237,7 +214,6 @@ Please contact me on #coderbus IRC. ~Carnie x
if(notransform) return
update_body()
update_hair()
- update_mutations()
update_inv_w_uniform()
update_inv_wear_id()
update_inv_gloves()
@@ -335,7 +311,7 @@ Please contact me on #coderbus IRC. ~Carnie x
else
if(blood_DNA)
- overlays_standing[GLOVES_LAYER] = image("icon"='icons/effects/blood.dmi', "icon_state"="bloodyhands")
+ overlays_standing[GLOVES_LAYER] = image("icon"='icons/effects/blood.dmi', "icon_state"="bloodyhands", "layer"=-GLOVES_LAYER)
apply_overlay(GLOVES_LAYER)
diff --git a/code/modules/mob/living/carbon/life.dm b/code/modules/mob/living/carbon/life.dm
index 8bd2edd73a9..52ed2acedc0 100644
--- a/code/modules/mob/living/carbon/life.dm
+++ b/code/modules/mob/living/carbon/life.dm
@@ -11,4 +11,4 @@
else
if (internals)
internals.icon_state = "internal0"
- return
+ return
\ No newline at end of file
diff --git a/code/modules/mob/living/carbon/monkey/life.dm b/code/modules/mob/living/carbon/monkey/life.dm
index 22f5ae23c44..3ee9a8c9587 100644
--- a/code/modules/mob/living/carbon/monkey/life.dm
+++ b/code/modules/mob/living/carbon/monkey/life.dm
@@ -46,7 +46,6 @@
//blinded get reset each cycle and then get activated later in the
//code. Very ugly. I dont care. Moving this stuff here so its easy
//to find it.
- blinded = null
//Handle temperature/pressure differences between body and environment
if(environment) // More error checking -- TLE
@@ -78,42 +77,8 @@
/mob/living/carbon/monkey/proc/handle_disabilities()
- if (disabilities & EPILEPSY)
- if ((prob(1) && paralysis < 10))
- src << "You have a seizure!"
- Paralyse(10)
- if (disabilities & COUGHING)
- if ((prob(5) && paralysis <= 1))
- drop_item()
- spawn( 0 )
- emote("cough")
- return
- if (disabilities & TOURETTES)
- if ((prob(10) && paralysis <= 1))
- Stun(10)
- spawn( 0 )
- emote("twitch")
- return
- if (disabilities & NERVOUS)
- if (prob(10))
- stuttering = max(10, stuttering)
-
/mob/living/carbon/monkey/proc/handle_mutations_and_radiation()
- if(getFireLoss())
- if((COLD_RESISTANCE in mutations) && prob(50))
- switch(getFireLoss())
- if(1 to 50)
- adjustFireLoss(-1)
- if(51 to 100)
- adjustFireLoss(-5)
-
- if ((HULK in mutations) && health <= 25)
- mutations.Remove(HULK)
- src << "You suddenly feel very weak."
- Weaken(3)
- emote("collapse")
-
if (radiation)
if (radiation > 100)
radiation = 100
@@ -339,11 +304,8 @@
if(HAZARD_LOW_PRESSURE to WARNING_LOW_PRESSURE)
pressure_alert = -1
else
- if( !(COLD_RESISTANCE in mutations) )
- adjustBruteLoss( LOW_PRESSURE_DAMAGE )
- pressure_alert = -2
- else
- pressure_alert = -1
+ adjustBruteLoss( LOW_PRESSURE_DAMAGE )
+ pressure_alert = -2
return
@@ -384,12 +346,12 @@
updatehealth()
if(stat == DEAD) //DEAD. BROWN BREAD. SWIMMING WITH THE SPESS CARP
- blinded = 1
+ eye_blind = max(eye_blind, 1)
silent = 0
else //ALIVE. LIGHTS ARE ON
if(health < config.health_threshold_dead || !getorgan(/obj/item/organ/brain))
death()
- blinded = 1
+ eye_blind = max(eye_blind, 1)
stat = DEAD
silent = 0
return 1
@@ -405,11 +367,11 @@
if(paralysis)
AdjustParalysis(-1)
- blinded = 1
+ eye_blind = max(eye_blind, 1)
stat = UNCONSCIOUS
else if(sleeping)
sleeping = max(sleeping-1, 0)
- blinded = 1
+ eye_blind = max(eye_blind, 1)
stat = UNCONSCIOUS
if( prob(10) && health )
spawn(0)
@@ -419,21 +381,24 @@
stat = CONSCIOUS
//Eyes
- if(sdisabilities & BLIND) //disabled-blind, doesn't get better on its own
- blinded = 1
+ if(disabilities & BLIND) //disabled-blind, doesn't get better on its own
+ eye_blind = max(eye_blind, 1)
else if(eye_blind) //blindness, heals slowly over time
eye_blind = max(eye_blind-1,0)
- blinded = 1
+ eye_blind = max(eye_blind, 1)
else if(eye_blurry) //blurry eyes heal slowly
eye_blurry = max(eye_blurry-1, 0)
//Ears
- if(sdisabilities & DEAF) //disabled-deaf, doesn't get better on its own
+ if(disabilities & DEAF) //disabled-deaf, doesn't get better on its own
ear_deaf = max(ear_deaf, 1)
- else if(ear_deaf) //deafness, heals slowly over time
- ear_deaf = max(ear_deaf-1, 0)
- else if(ear_damage < 25) //ear damage heals slowly under this threshold. otherwise you'll need earmuffs
- ear_damage = max(ear_damage-0.05, 0)
+ else
+ /* might be better to create a variable here, and instead of doing this nested for. */
+ // deafness heals slowly over time, unless ear_damage is over 100
+ if (ear_damage < 100)
+ // Heal the first 1/3 here
+ ear_deaf = max(ear_deaf - 1, 0)
+ ear_damage = max(ear_damage-0.05, 0)
//Other
if(stunned)
@@ -457,7 +422,7 @@
/mob/living/carbon/monkey/proc/handle_regular_hud_updates()
- if (stat == 2 || (XRAY in mutations))
+ if (stat == 2)
sight |= SEE_TURFS
sight |= SEE_MOBS
sight |= SEE_OBJS
@@ -532,12 +497,12 @@
client.screen.Remove(global_hud.blurry,global_hud.druggy,global_hud.vimpaired)
if(blind && stat != DEAD)
- if(blinded)
+ if(eye_blind)
blind.layer = 18
else
blind.layer = 0
- if(disabilities & NEARSIGHTED)
+ if(disabilities & NEARSIGHT)
client.screen += global_hud.vimpaired
if(eye_blurry)
diff --git a/code/modules/mob/living/carbon/slime/life.dm b/code/modules/mob/living/carbon/slime/life.dm
index 7520989692c..3c01af2f867 100644
--- a/code/modules/mob/living/carbon/slime/life.dm
+++ b/code/modules/mob/living/carbon/slime/life.dm
@@ -33,7 +33,6 @@
//blinded get reset each cycle and then get activated later in the
//code. Very ugly. I dont care. Moving this stuff here so its easy
//to find it.
- src.blinded = null
if(environment)
handle_environment(environment) // Handle temperature/pressure differences between body and environment
@@ -210,7 +209,7 @@
if (src.stat == DEAD)
src.lying = 1
- src.blinded = 1
+ src.eye_blind = max(eye_blind, 1)
else
if (src.paralysis || src.stunned || src.weakened || (status_flags && FAKEDEATH)) //Stunned etc.
if (src.stunned > 0)
@@ -222,7 +221,7 @@
src.stat = 0
if (src.paralysis > 0)
AdjustParalysis(-1)
- src.blinded = 0
+ src.eye_blind = 0
src.lying = 0
src.stat = 0
@@ -234,7 +233,7 @@
if (src.eye_blind)
src.eye_blind = 0
- src.blinded = 1
+ src.eye_blind = max(eye_blind, 1)
if (src.ear_deaf > 0) src.ear_deaf = 0
if (src.ear_damage < 25)
@@ -242,9 +241,9 @@
src.density = !( src.lying )
- if (src.sdisabilities & BLIND)
- src.blinded = 1
- if (src.sdisabilities & DEAF)
+ if (src.disabilities & BLIND)
+ src.eye_blind = max(eye_blind, 1)
+ if (src.disabilities & DEAF)
src.ear_deaf = 1
if (src.eye_blurry > 0)
diff --git a/code/modules/mob/living/carbon/slime/slime.dm b/code/modules/mob/living/carbon/slime/slime.dm
index 417ea368dc8..d0e5756c1b9 100644
--- a/code/modules/mob/living/carbon/slime/slime.dm
+++ b/code/modules/mob/living/carbon/slime/slime.dm
@@ -250,6 +250,20 @@
adjustBruteLoss(damage)
updatehealth()
+/mob/living/carbon/slime/attack_hulk(mob/living/carbon/human/user)
+ if(user.a_intent == "harm")
+ adjustBruteLoss(5)
+ if(Victim || Target)
+ Victim = null
+ Target = null
+ anchored = 0
+ if(prob(80) && !client)
+ Discipline++
+ spawn(0)
+ step_away(src,user,15)
+ sleep(3)
+ step_away(src,user,15)
+
/mob/living/carbon/slime/attack_hand(mob/living/carbon/human/M as mob)
if(Victim)
@@ -319,20 +333,6 @@
var/damage = rand(1, 9)
attacked += 10
if (prob(90))
- if (HULK in M.mutations)
- damage += 5
- if(Victim || Target)
- Victim = null
- Target = null
- anchored = 0
- if(prob(80) && !client)
- Discipline++
- spawn(0)
- step_away(src,M,15)
- sleep(3)
- step_away(src,M,15)
-
-
playsound(loc, "punch", 25, 1, -1)
add_logs(M, src, "attacked", admin=0)
visible_message("[M] has punched [src]!", \
diff --git a/code/modules/mob/living/damage_procs.dm b/code/modules/mob/living/damage_procs.dm
index 76837963f06..1028bd3e047 100644
--- a/code/modules/mob/living/damage_procs.dm
+++ b/code/modules/mob/living/damage_procs.dm
@@ -15,7 +15,6 @@
if(BRUTE)
adjustBruteLoss(damage * blocked)
if(BURN)
- if(COLD_RESISTANCE in mutations) damage = 0
adjustFireLoss(damage * blocked)
if(TOX)
adjustToxLoss(damage * blocked)
diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm
index 95eb383ff20..4af16d18e77 100644
--- a/code/modules/mob/living/living.dm
+++ b/code/modules/mob/living/living.dm
@@ -140,7 +140,7 @@ Sorry Giacom. Please don't be mad :(
/mob/living/ex_act(severity, target)
..()
- if(client && !blinded)
+ if(client && !eye_blind)
flick("flash", src.flash)
/mob/living/proc/updatehealth()
@@ -161,8 +161,6 @@ Sorry Giacom. Please don't be mad :(
/mob/living/proc/burn_skin(burn_amount)
if(istype(src, /mob/living/carbon/human))
//world << "DEBUG: burn_skin(), mutations=[mutations]"
- if (COLD_RESISTANCE in src.mutations) //fireproof
- return 0
var/mob/living/carbon/human/H = src //make this damage method divide the damage to be done among all the body parts, then burn each body part for that much damage. will have better effect then just randomly picking a body part
var/divided_damage = (burn_amount)/(H.organs.len)
var/extradam = 0 //added to when organ is at max dam
@@ -173,8 +171,6 @@ Sorry Giacom. Please don't be mad :(
H.updatehealth()
return 1
else if(istype(src, /mob/living/carbon/monkey))
- if (COLD_RESISTANCE in src.mutations) //fireproof
- return 0
var/mob/living/carbon/monkey/M = src
M.adjustFireLoss(burn_amount)
M.updatehealth()
@@ -384,9 +380,7 @@ Sorry Giacom. Please don't be mad :(
radiation = 0
nutrition = NUTRITION_LEVEL_FED + 50
bodytemperature = 310
- sdisabilities = 0
disabilities = 0
- blinded = 0
eye_blind = 0
eye_blurry = 0
ear_deaf = 0
@@ -534,7 +528,7 @@ Sorry Giacom. Please don't be mad :(
/mob/living/proc/cuff_break(obj/item/weapon/restraints/I, mob/living/carbon/C)
- if(HULK in usr.mutations)
+ if(C.dna.check_mutation(HULK))
C.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ))
C.visible_message("[C] manages to break [I]!")
@@ -561,7 +555,7 @@ Sorry Giacom. Please don't be mad :(
breakouttime = LC.breakouttime
displaytime = breakouttime / 600
- if(isalienadult(C) || HULK in usr.mutations)
+ if(isalienadult(C) || C.dna.check_mutation(HULK))
C.visible_message("[C] is trying to break [I]!")
C << "You attempt to break [I]. (This will take around 5 seconds and you need to stand still.)"
spawn(0)
diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm
index 31b691a9071..dd3745d4245 100644
--- a/code/modules/mob/living/say.dm
+++ b/code/modules/mob/living/say.dm
@@ -210,7 +210,7 @@ var/list/department_radio_keys = list(
if(!message)
return 0
- if(sdisabilities & MUTE)
+ if(disabilities & MUTE)
return 0
if(is_muzzled())
diff --git a/code/modules/mob/living/silicon/robot/life.dm b/code/modules/mob/living/silicon/robot/life.dm
index e2848be3439..79b70795d43 100644
--- a/code/modules/mob/living/silicon/robot/life.dm
+++ b/code/modules/mob/living/silicon/robot/life.dm
@@ -5,9 +5,6 @@
if (src.notransform)
return
-
- src.blinded = null
-
//Status updates, death etc.
clamp_values()
handle_regular_status_updates()
@@ -50,7 +47,7 @@
if(src.module_state_3)
src.cell.use(5)
src.cell.use(1)
- src.blinded = 0
+ src.eye_blind = 0
src.stat = 0
else
uneq_all()
@@ -98,22 +95,20 @@
AdjustWeakened(-1)
if (src.paralysis > 0)
AdjustParalysis(-1)
- src.blinded = 1
+ src.eye_blind = max(eye_blind, 1)
else
- src.blinded = 0
+ src.eye_blind = 0
else //Not stunned.
src.stat = 0
else //Dead.
- src.blinded = 1
- src.stat = 2
+ src.eye_blind = 1
if (src.stuttering) src.stuttering--
if (src.eye_blind)
src.eye_blind--
- src.blinded = 1
if (src.ear_deaf > 0) src.ear_deaf--
if (src.ear_damage < 25)
@@ -122,9 +117,9 @@
src.density = !( src.lying )
- if ((src.sdisabilities & BLIND))
- src.blinded = 1
- if ((src.sdisabilities & DEAF))
+ if (src.disabilities & BLIND)
+ src.eye_blind = max(1, eye_blind)
+ if (src.disabilities & DEAF)
src.ear_deaf = 1
if (src.eye_blurry > 0)
@@ -139,7 +134,7 @@
/mob/living/silicon/robot/proc/handle_regular_hud_updates()
- if (src.stat == 2 || XRAY in mutations || src.sight_mode & BORGXRAY)
+ if (src.stat == 2 || src.sight_mode & BORGXRAY)
src.sight |= SEE_TURFS
src.sight |= SEE_MOBS
src.sight |= SEE_OBJS
@@ -241,11 +236,11 @@
client.screen.Remove(global_hud.blurry,global_hud.druggy,global_hud.vimpaired)
if ((src.blind && src.stat != 2))
- if(src.blinded)
+ if(src.eye_blind)
src.blind.layer = 18
else
src.blind.layer = 0
- if (src.disabilities & NEARSIGHTED)
+ if (src.disabilities & NEARSIGHT)
src.client.screen += global_hud.vimpaired
if (src.eye_blurry)
diff --git a/code/modules/mob/living/silicon/silicon.dm b/code/modules/mob/living/silicon/silicon.dm
index 9c33619bfbf..5136cea9f14 100644
--- a/code/modules/mob/living/silicon/silicon.dm
+++ b/code/modules/mob/living/silicon/silicon.dm
@@ -385,6 +385,16 @@
visible_message("[L.name] rubs its head against [src].")
return
+/mob/living/silicon/attack_hulk(mob/living/carbon/human/user)
+ if(user.a_intent == "harm")
+ ..(user, 1)
+ adjustBruteLoss(rand(10, 15))
+ playsound(loc, "punch", 25, 1, -1)
+ visible_message("[user] has punched [src]!", \
+ "[user] has punched [src]!")
+ return 1
+ return 0
+
/mob/living/silicon/attack_hand(mob/living/carbon/human/M)
switch(M.a_intent)
if ("help")
@@ -395,15 +405,6 @@
else
M.do_attack_animation(src)
playsound(src.loc, 'sound/effects/bang.ogg', 10, 1)
- if (HULK in M.mutations)
- var/damage = rand(10,15)
- adjustBruteLoss(damage)
- add_logs(M, src, "attacked", admin=0)
- playsound(loc, "punch", 25, 1, -1)
- visible_message("[M] has punched [src]!", \
- "[M] has punched [src]!")
- return 1
- else
- visible_message("[M] punches [src], but doesn't leave a dent.", \
- "[M] punches [src], but doesn't leave a dent!")
+ visible_message("[M] punches [src], but doesn't leave a dent.", \
+ "[M] punches [src], but doesn't leave a dent.!")
return 0
diff --git a/code/modules/mob/living/simple_animal/friendly/crab.dm b/code/modules/mob/living/simple_animal/friendly/crab.dm
index 0ac3781a406..e4a1f52301c 100644
--- a/code/modules/mob/living/simple_animal/friendly/crab.dm
+++ b/code/modules/mob/living/simple_animal/friendly/crab.dm
@@ -41,64 +41,4 @@
desc = "It's Coffee, the other pet!"
response_help = "pets"
response_disarm = "gently pushes aside"
- response_harm = "stomps"
-
-//LOOK AT THIS - ..()??
-/*/mob/living/simple_animal/crab/attackby(var/obj/item/O as obj, var/mob/user as mob)
- if(istype(O, /obj/item/weapon/wirecutters))
- if(prob(50))
- user << "\red \b This kills the crab."
- health -= 20
- Die()
- else
- GetMad()
- get
- if(istype(O, /obj/item/stack/medical))
- if(stat != DEAD)
- var/obj/item/stack/medical/MED = O
- if(health < maxHealth)
- if(MED.amount >= 1)
- health = min(maxHealth, health + MED.heal_brute)
- MED.amount -= 1
- if(MED.amount <= 0)
- qdel(MED)
- for(var/mob/M in viewers(src, null))
- if ((M.client && !( M.blinded )))
- M.show_message("\blue [user] applies [MED] on [src]")
- else
- user << "\blue this crab is dead, medical items won't bring it back to life."
- else
- if(O.force)
- health -= O.force
- for(var/mob/M in viewers(src, null))
- if ((M.client && !( M.blinded )))
- M.show_message("\red \b [src] has been attacked with [O] by [user]. ")
- else
- usr << "\red This weapon is ineffective, it does no damage."
- for(var/mob/M in viewers(src, null))
- if ((M.client && !( M.blinded )))
- M.show_message("\red [user] gently taps [src] with [O]. ")
-
-/mob/living/simple_animal/crab/GetMad()
- name = "MEGAMADCRAB"
- real_name = "MEGAMADCRAB"
- desc = "OH NO YOU DUN IT NOW."
- icon = 'icons/mob/mob.dmi'
- icon_state = "madcrab"
- icon_living = "madcrab"
- icon_dead = "madcrab_dead"
- speak_emote = list("clicks")
- emote_hear = list("clicks with fury", "clicks angrily")
- emote_see = list("clacks")
- speak_chance = 1
- turns_per_move = 15//Gotta go fast
- maxHealth = 100//So they don't die as quickly
- health = 100
- melee_damage_lower = 3
- melee_damage_upper = 10//Kill them. Kill them all
- if(inventory_head)//Drops inventory so it doesn't have to be dealt with
- inventory_head.loc = src.loc
- inventory_head = null
- if(inventory_mask)
- inventory_mask.loc = src.loc
- inventory_mask = null*/
\ No newline at end of file
+ response_harm = "stomps"
\ No newline at end of file
diff --git a/code/modules/mob/living/simple_animal/hostile/carp.dm b/code/modules/mob/living/simple_animal/hostile/carp.dm
index 479a37e1f9a..a7683dd7847 100644
--- a/code/modules/mob/living/simple_animal/hostile/carp.dm
+++ b/code/modules/mob/living/simple_animal/hostile/carp.dm
@@ -45,9 +45,9 @@
emote("me", 1, "nashes at [.]!")
/mob/living/simple_animal/hostile/carp/AttackingTarget()
- . =..()
- var/mob/living/carbon/L = .
- if(istype(L))
+ ..()
+ if(isliving(target))
+ var/mob/living/L = target
if(prob(15))
L.Weaken(3)
L.visible_message("\the [src] knocks down \the [L]!")
diff --git a/code/modules/mob/living/simple_animal/hostile/faithless.dm b/code/modules/mob/living/simple_animal/hostile/faithless.dm
index b818475bb03..51465393c2c 100644
--- a/code/modules/mob/living/simple_animal/hostile/faithless.dm
+++ b/code/modules/mob/living/simple_animal/hostile/faithless.dm
@@ -40,9 +40,9 @@
emote("me", 1, "wails at [.]!")
/mob/living/simple_animal/hostile/faithless/AttackingTarget()
- . =..()
- var/mob/living/L = .
- if(istype(L))
+ ..()
+ if(isliving(target))
+ var/mob/living/L = target
if(prob(12))
L.Weaken(3)
- L.visible_message("\the [src] knocks down \the [L]!")
\ No newline at end of file
+ L.visible_message("\The [src] knocks down \the [L]!")
\ No newline at end of file
diff --git a/code/modules/mob/living/simple_animal/hostile/hostile.dm b/code/modules/mob/living/simple_animal/hostile/hostile.dm
index 68f8c76ed69..3828dbdce6c 100644
--- a/code/modules/mob/living/simple_animal/hostile/hostile.dm
+++ b/code/modules/mob/living/simple_animal/hostile/hostile.dm
@@ -311,5 +311,6 @@
/mob/living/simple_animal/hostile/RangedAttack(var/atom/A, var/params) //Player firing
if(ranged && ranged_cooldown <= 0)
+ target = A
OpenFire(A)
..()
\ No newline at end of file
diff --git a/code/modules/mob/living/simple_animal/hostile/mimic.dm b/code/modules/mob/living/simple_animal/hostile/mimic.dm
index 116a2b82ec6..6bdbc2cc728 100644
--- a/code/modules/mob/living/simple_animal/hostile/mimic.dm
+++ b/code/modules/mob/living/simple_animal/hostile/mimic.dm
@@ -206,13 +206,13 @@ var/global/list/protected_objects = list(/obj/structure/table, /obj/structure/ca
..()
/mob/living/simple_animal/hostile/mimic/copy/AttackingTarget()
- . =..()
+ ..()
if(knockdown_people)
- var/mob/living/L = .
- if(istype(L))
+ if(isliving(target))
+ var/mob/living/L = target
if(prob(15))
L.Weaken(1)
- L.visible_message("\the [src] knocks down \the [L]!")
+ L.visible_message("\The [src] knocks down \the [L]!")
//
// Machine Mimics (Made by Malf AI)
diff --git a/code/modules/mob/living/simple_animal/hostile/statue.dm b/code/modules/mob/living/simple_animal/hostile/statue.dm
index 93ad66bd444..5f9fcd35428 100644
--- a/code/modules/mob/living/simple_animal/hostile/statue.dm
+++ b/code/modules/mob/living/simple_animal/hostile/statue.dm
@@ -88,7 +88,11 @@
GiveTarget(watching)
/mob/living/simple_animal/hostile/statue/AttackingTarget()
- if(!can_be_seen())
+ if(can_be_seen())
+ if(client)
+ src << "You cannot attack, there are eyes on you!"
+ return
+ else
..()
/mob/living/simple_animal/hostile/statue/DestroySurroundings()
@@ -99,13 +103,6 @@
if(!can_be_seen())
..()
-/mob/living/simple_animal/hostile/statue/UnarmedAttack()
- if(can_be_seen())
- if(client)
- src << "You cannot attack, there are eyes on you!"
- return
- ..()
-
/mob/living/simple_animal/hostile/statue/proc/can_be_seen(var/turf/destination)
if(!cannot_be_seen)
return null
@@ -127,7 +124,7 @@
for(var/atom/check in check_list)
for(var/mob/living/M in viewers(world.view + 1, check) - src)
if(M.client && CanAttack(M) && !issilicon(M))
- if(!M.blinded && !(sdisabilities & BLIND))
+ if(!M.eye_blind)
return M
return null
diff --git a/code/modules/mob/living/simple_animal/hostile/tree.dm b/code/modules/mob/living/simple_animal/hostile/tree.dm
index 2feb135ecdc..43ee23cf49b 100644
--- a/code/modules/mob/living/simple_animal/hostile/tree.dm
+++ b/code/modules/mob/living/simple_animal/hostile/tree.dm
@@ -43,12 +43,12 @@
emote("me", 1, "growls at [.].")
/mob/living/simple_animal/hostile/tree/AttackingTarget()
- . =..()
- var/mob/living/L = .
- if(istype(L))
+ ..()
+ if(isliving(target))
+ var/mob/living/L = target
if(prob(15))
L.Weaken(3)
- L.visible_message("\the [src] knocks down \the [L]!")
+ L.visible_message("\The [src] knocks down \the [L]!")
/mob/living/simple_animal/hostile/tree/Die()
..()
diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm
index 8dd6016d1d3..474a1bb7439 100644
--- a/code/modules/mob/mob.dm
+++ b/code/modules/mob/mob.dm
@@ -54,19 +54,19 @@ var/next_mob_id = 0
msg = copytext(msg, 1, MAX_MESSAGE_LEN)
if (type)
- if(type & 1 && (sdisabilities & BLIND || blinded || paralysis) )//Vision related
+ if(type & 1 && (disabilities & BLIND || paralysis) )//Vision related
if (!( alt ))
return
else
msg = alt
type = alt_type
- if (type & 2 && (sdisabilities & DEAF || ear_deaf))//Hearing related
+ if (type & 2 && ear_deaf)//Hearing related
if (!( alt ))
return
else
msg = alt
type = alt_type
- if ((type & 1 && sdisabilities & BLIND))
+ if ((type & 1 && disabilities & BLIND))
return
// Added voice muffling for Issue 41.
if(stat == UNCONSCIOUS || sleeping > 0)
@@ -313,7 +313,6 @@ var/list/slot_equipment_priority = list( \
set name = "Examine"
set category = "IC"
-// if( (sdisabilities & BLIND || blinded || stat) && !istype(src,/mob/dead/observer) )
if(is_blind(src))
src << "Something is there but you can't see it."
return
diff --git a/code/modules/mob/mob_defines.dm b/code/modules/mob/mob_defines.dm
index 9e60f9b85ab..815dd381e49 100644
--- a/code/modules/mob/mob_defines.dm
+++ b/code/modules/mob/mob_defines.dm
@@ -42,7 +42,6 @@
var/obj/machinery/machine = null
var/other_mobs = null
var/memory = ""
- var/sdisabilities = 0 //Carbon
var/disabilities = 0 //Carbon
var/atom/movable/pulling = null
var/next_move = null
@@ -54,7 +53,6 @@
var/ear_damage = null //Carbon
var/stuttering = null //Carbon
var/real_name = null
- var/blinded = null
var/bhunger = 0 //Carbon
var/ajourn = 0
var/druggy = 0 //Carbon
diff --git a/code/modules/mob/mob_grab.dm b/code/modules/mob/mob_grab.dm
index 0b13efb82d5..c2a4fa9a1fe 100644
--- a/code/modules/mob/mob_grab.dm
+++ b/code/modules/mob/mob_grab.dm
@@ -201,7 +201,7 @@
return
if(M == assailant && state >= GRAB_AGGRESSIVE)
- if( (ishuman(user) && (FAT in user.mutations) && ismonkey(affecting) ) || ( isalien(user) && iscarbon(affecting) ) )
+ if( (ishuman(user) && (user.disabilities & FAT) && ismonkey(affecting) ) || ( isalien(user) && iscarbon(affecting) ) )
var/mob/living/carbon/attacker = user
user.visible_message("[user] is attempting to devour [affecting]!")
if(istype(user, /mob/living/carbon/alien/humanoid/hunter))
diff --git a/code/modules/mob/mob_helpers.dm b/code/modules/mob/mob_helpers.dm
index ed782e6daaf..4c74063c68e 100644
--- a/code/modules/mob/mob_helpers.dm
+++ b/code/modules/mob/mob_helpers.dm
@@ -371,10 +371,9 @@ It's fairly easy to fix if dealing with single letters but not so much with comp
hud_used.action_intent.icon_state = "help"
proc/is_blind(A)
- if(istype(A, /mob/living/carbon))
- var/mob/living/carbon/C = A
- if(C.blinded != null)
- return 1
+ if(ismob(A))
+ var/mob/B = A
+ return B.eye_blind
return 0
proc/is_special_character(mob/M) // returns 1 for special characters and 2 for heroes of gamemode //moved out of admins.dm because things other than admin procs were calling this.
diff --git a/code/modules/mob/new_player/preferences_setup.dm b/code/modules/mob/new_player/preferences_setup.dm
index e8bb527e779..02e8befd05e 100644
--- a/code/modules/mob/new_player/preferences_setup.dm
+++ b/code/modules/mob/new_player/preferences_setup.dm
@@ -7,6 +7,7 @@
gender = pick(MALE,FEMALE)
underwear = random_underwear(gender)
undershirt = random_undershirt(gender)
+ socks = random_socks(gender)
skin_tone = random_skin_tone()
hair_style = random_hair_style(gender)
facial_hair_style = random_facial_hair_style(gender)
@@ -42,6 +43,11 @@
if(S)
preview_icon.Blend(new /icon(S.icon, "[S.icon_state]_s"), ICON_OVERLAY)
+ if(socks)
+ S = socks_list[socks]
+ if(S)
+ preview_icon.Blend(new /icon(S.icon, "[S.icon_state]_s"), ICON_OVERLAY)
+
var/icon/eyes_s = new/icon()
if(EYECOLOR in pref_species.specflags)
eyes_s = new/icon("icon" = 'icons/mob/human_face.dmi', "icon_state" = "[pref_species.eyes]_s")
diff --git a/code/modules/mob/new_player/sprite_accessories.dm b/code/modules/mob/new_player/sprite_accessories.dm
index c47444be1da..fe87d9dc4ba 100644
--- a/code/modules/mob/new_player/sprite_accessories.dm
+++ b/code/modules/mob/new_player/sprite_accessories.dm
@@ -914,6 +914,11 @@
icon_state = "shirt_red"
gender = NEUTER
+/datum/sprite_accessory/undershirt/tank_red
+ name = "Red Tank Top"
+ icon_state = "tank_red"
+ gender = NEUTER
+
/datum/sprite_accessory/undershirt/greenshirt
name = "Green Shirt"
icon_state = "shirt_green"
@@ -942,4 +947,102 @@
/datum/sprite_accessory/undershirt/tankstripe
name = "Striped Tank Top"
icon_state = "tank_stripes"
+ gender = NEUTER
+
+/datum/sprite_accessory/undershirt/clownshirt
+ name = "Clown Shirt"
+ icon_state = "shirt_clown"
+ gender = NEUTER
+
+/datum/sprite_accessory/undershirt/alienshirt
+ name = "Alien Shirt"
+ icon_state = "shirt_alien"
+ gender = NEUTER
+
+
+
+///////////////////////
+// Socks Definitions //
+///////////////////////
+/datum/sprite_accessory/socks
+ icon = 'icons/mob/underwear.dmi'
+
+/datum/sprite_accessory/socks/nude
+ name = "Nude"
+ icon_state = null
+ gender = NEUTER
+
+/datum/sprite_accessory/socks/white_norm
+ name = "Normal White"
+ icon_state = "white_norm"
+ gender = NEUTER
+
+/datum/sprite_accessory/socks/black_norm
+ name = "Normal Black"
+ icon_state = "black_norm"
+ gender = NEUTER
+
+/datum/sprite_accessory/socks/white_short
+ name = "Short White"
+ icon_state = "white_short"
+ gender = NEUTER
+
+/datum/sprite_accessory/socks/black_short
+ name = "Short Black"
+ icon_state = "black_short"
+ gender = NEUTER
+
+/datum/sprite_accessory/socks/white_knee
+ name = "Knee-high White"
+ icon_state = "white_knee"
+ gender = NEUTER
+
+/datum/sprite_accessory/socks/black_knee
+ name = "Knee-high Black"
+ icon_state = "black_knee"
+ gender = NEUTER
+
+/datum/sprite_accessory/socks/thin_knee
+ name = "Knee-high Thin"
+ icon_state = "thin_knee"
+ gender = FEMALE
+
+/datum/sprite_accessory/socks/striped_knee
+ name = "Knee-high Striped"
+ icon_state = "striped_knee"
+ gender = NEUTER
+
+/datum/sprite_accessory/socks/rainbow_knee
+ name = "Knee-high Rainbow"
+ icon_state = "rainbow_knee"
+ gender = NEUTER
+
+/datum/sprite_accessory/socks/white_thigh
+ name = "Thigh-high White"
+ icon_state = "white_thigh"
+ gender = NEUTER
+
+/datum/sprite_accessory/socks/black_thigh
+ name = "Thigh-high Black"
+ icon_state = "black_thigh"
+ gender = NEUTER
+
+/datum/sprite_accessory/socks/thin_thigh
+ name = "Thigh-high Thin"
+ icon_state = "thin_thigh"
+ gender = FEMALE
+
+/datum/sprite_accessory/socks/striped_thigh
+ name = "Thigh-high Striped"
+ icon_state = "striped_thigh"
+ gender = NEUTER
+
+/datum/sprite_accessory/socks/rainbow_thigh
+ name = "Thigh-high Rainbow"
+ icon_state = "rainbow_thigh"
+ gender = NEUTER
+
+/datum/sprite_accessory/socks/pantyhose
+ name = "Pantyhose"
+ icon_state = "pantyhose"
gender = FEMALE
diff --git a/code/modules/mob/transform_procs.dm b/code/modules/mob/transform_procs.dm
index d865f8aa618..9369e597578 100644
--- a/code/modules/mob/transform_procs.dm
+++ b/code/modules/mob/transform_procs.dm
@@ -20,17 +20,14 @@
stunned = 1
icon = null
invisibility = 101
+ var/mob/living/carbon/monkey/O = new /mob/living/carbon/monkey( loc )
+ O.invisibility = 101
+
var/atom/movable/overlay/animation = new /atom/movable/overlay( loc )
animation.icon_state = "blank"
animation.icon = 'icons/mob/mob.dmi'
animation.master = src
flick("h2monkey", animation)
- sleep(22)
- //animation = null
- var/mob/living/carbon/monkey/O = new /mob/living/carbon/monkey( loc )
- qdel(animation)
-
-
// hash the original name?
if (tr_flags & TR_HASHNAME)
@@ -77,13 +74,22 @@
O.mind.changeling.purchasedpowers += new /obj/effect/proc_holder/changeling/humanform(null)
if (tr_flags & TR_DEFAULTMSG)
O << "You are now a monkey."
+
+ for(var/A in loc.vars)
+ if(loc.vars[A] == src)
+ loc.vars[A] = O
+
updateappearance(O)
. = O
if ( !(tr_flags & TR_KEEPSRC) ) //flag should be used if monkeyize() is called inside another proc of src so that one does not crash
- qdel(src)
- return
-
+ var/mob/deleted = src
+ src = O
+ qdel(deleted)
+ spawn(22)
+ //animation = null
+ O.invisibility = 0
+ qdel(animation)
////////////////////////// Humanize //////////////////////////////
//Could probably be merged with monkeyize but other transformations got their own procs, too
@@ -120,17 +126,13 @@
stunned = 1
icon = null
invisibility = 101
- var/atom/movable/overlay/animation = new( loc )
+ var/mob/living/carbon/human/O = new( loc )
+ O.invisibility = 101
+ var/atom/movable/overlay/animation = new /atom/movable/overlay( loc )
animation.icon_state = "blank"
animation.icon = 'icons/mob/mob.dmi'
animation.master = src
flick("monkey2h", animation)
- sleep(22)
- var/mob/living/carbon/human/O = new( loc )
- for(var/obj/item/C in O.loc)
- O.equip_to_appropriate_slot(C)
- qdel(animation)
-
O.gender = (deconstruct_block(getblock(dna.uni_identity, DNA_GENDER_BLOCK), 2)-1) ? FEMALE : MALE
O.dna = dna
@@ -185,10 +187,28 @@
O.a_intent = "help"
if (tr_flags & TR_DEFAULTMSG)
O << "You are now a human."
+
+ for(var/obj/item/C in O.loc)
+ O.equip_to_appropriate_slot(C)
+
updateappearance(O)
. = O
+
+ for(var/A in loc.vars)
+ if(loc.vars[A] == src)
+ loc.vars[A] = O
+
if ( !(tr_flags & TR_KEEPSRC) ) //don't delete src yet if it's needed to finish calling proc
- qdel(src)
+ var/mob/deleted = src
+ src = O
+ qdel(deleted)
+
+ spawn(22)
+ O.invisibility = 0
+ for(var/obj/item/C in O.loc)
+ O.equip_to_appropriate_slot(C)
+ qdel(animation)
+
return
/mob/new_player/AIize()
diff --git a/code/modules/mob/update_icons.dm b/code/modules/mob/update_icons.dm
index b0977242ddf..28934e23b88 100644
--- a/code/modules/mob/update_icons.dm
+++ b/code/modules/mob/update_icons.dm
@@ -46,9 +46,6 @@
/mob/proc/update_inv_gloves()
return
-/mob/proc/update_mutations()
- return
-
/mob/proc/update_inv_wear_id()
return
diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm
index a107d864bac..2d5ead77aff 100644
--- a/code/modules/paperwork/paper.dm
+++ b/code/modules/paperwork/paper.dm
@@ -68,9 +68,13 @@
if(usr.stat || !usr.canmove || usr.restrained())
return
- if((CLUMSY in usr.mutations) && prob(25))
- usr << "You cut yourself on the paper! Ahhhh! Ahhhhh!"
- usr.damageoverlaytemp = 9001
+
+ if(!ishuman(usr))
+ return
+ var/mob/living/carbon/human/H = usr
+ if(H.disabilities & CLUMSY && prob(25))
+ H << "You cut yourself on the paper! Ahhhh! Ahhhhh!"
+ H.damageoverlaytemp = 9001
return
var/n_name = copytext(sanitize(input(usr, "What would you like to label the paper?", "Paper Labelling", null) as text), 1, MAX_NAME_LEN)
if((loc == usr && usr.stat == 0))
@@ -263,14 +267,14 @@
update_icon()
-/obj/item/weapon/paper/attackby(obj/item/weapon/P, mob/user)
+/obj/item/weapon/paper/attackby(obj/item/weapon/P, mob/living/carbon/human/user)
..()
if(is_blind(user))
return
var/clown = 0
- if(user && (CLUMSY in user.mutations))
+ if(user.disabilities & CLUMSY)
clown = 1
if(istype(P, /obj/item/weapon/pen) || istype(P, /obj/item/toy/crayon))
diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm
index 451ee718f24..7014dec8cc4 100644
--- a/code/modules/power/apc.dm
+++ b/code/modules/power/apc.dm
@@ -489,22 +489,8 @@
make_terminal()
terminal.connect_to_network()
else if (istype(W, /obj/item/weapon/wirecutters) && terminal && opened && has_electronics!=2)
- if (src.loc:intact)
- user << "You must remove the floor plating in front of the APC first."
- return
- user.visible_message("[user.name] dismantles the power terminal from [src].", \
- "You begin to cut the cables...")
- playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
- if(do_after(user, 50))
- if(terminal && opened && has_electronics!=2)
- if (prob(50) && electrocute_mob(usr, terminal.powernet, terminal))
- var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
- s.set_up(5, 1, src)
- s.start()
- return
- new /obj/item/stack/cable_coil(loc,10)
- user << "You cut the cables and dismantle the power terminal."
- qdel(terminal)
+ terminal.dismantle(user)
+
else if (istype(W, /obj/item/weapon/module/power_control) && opened && has_electronics==0 && !((stat & BROKEN) || malfhack))
user.visible_message("[user.name] inserts the power control board into [src].", \
"You start to insert the power control board into the frame...")
diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm
index 232791722cc..47bc5989647 100644
--- a/code/modules/power/lighting.dm
+++ b/code/modules/power/lighting.dm
@@ -370,6 +370,8 @@
else if(status != LIGHT_BROKEN && status != LIGHT_EMPTY)
user.do_attack_animation(src)
+ if(W.damtype == STAMINA)
+ return
if(prob(1+W.force * 5))
user.visible_message("[user.name] smashed the light!", \
@@ -467,7 +469,7 @@
// attack with hand - remove tube/bulb
// if hands aren't protected and the light is on, burn the player
-/obj/machinery/light/attack_hand(mob/user)
+/obj/machinery/light/attack_hand(mob/living/carbon/human/user)
add_fingerprint(user)
@@ -489,9 +491,9 @@
else
prot = 1
- if(prot > 0 || (COLD_RESISTANCE in user.mutations))
+ if(prot > 0)
user << "You remove the light [fitting]"
- else if(TK in user.mutations)
+ else if(istype(user) && user.dna.check_mutation(TK))
user << "You telekinetically remove the light [fitting]."
else
user << "You try to remove the light [fitting], but you burn your hand on it!"
diff --git a/code/modules/power/smes.dm b/code/modules/power/smes.dm
index 59e4dc25604..3ee6f487554 100644
--- a/code/modules/power/smes.dm
+++ b/code/modules/power/smes.dm
@@ -142,29 +142,7 @@
//disassembling the terminal
if(istype(I, /obj/item/weapon/wirecutters) && terminal && panel_open)
- var/turf/T = get_turf(terminal)
- if (T.intact) //is the floor plating removed ?
- user << "You must first expose the power terminal!"
- return
-
- user << "You begin to dismantle the power terminal..."
- playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
-
- if(do_after(user, 50))
- if (prob(50) && electrocute_mob(usr, terminal.powernet, terminal)) //animate the electrocution if uncautious and unlucky
- var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
- s.set_up(5, 1, src)
- s.start()
- return
-
- //give the wires back and delete the terminal
- new /obj/item/stack/cable_coil(T,10)
- user.visible_message(\
- "[user.name] cuts the cables and dismantles the power terminal.",\
- "You cut the cables and dismantle the power terminal.")
- inputting = 0 //stop inputting, since we have don't have a terminal anymore
- qdel(terminal)
- return
+ terminal.dismantle(user)
//crowbarring it !
default_deconstruction_crowbar(I)
diff --git a/code/modules/power/terminal.dm b/code/modules/power/terminal.dm
index a0d6eb1084d..f977462f7ec 100644
--- a/code/modules/power/terminal.dm
+++ b/code/modules/power/terminal.dm
@@ -33,3 +33,48 @@
invisibility = 0
icon_state = "term"
+
+/obj/machinery/power/proc/can_terminal_dismantle()
+ . = 0
+
+/obj/machinery/power/apc/can_terminal_dismantle()
+ . = 0
+ if(opened && has_electronics != 2)
+ . = 1
+
+/obj/machinery/power/smes/can_terminal_dismantle()
+ . = 0
+ if(panel_open)
+ . = 1
+
+
+/obj/machinery/power/terminal/proc/dismantle(var/mob/living/user)
+ if(istype(loc, /turf/simulated))
+ var/turf/simulated/T = loc
+ if(T.intact)
+ user << "You must first expose the power terminal!"
+ return
+
+ if(master && master.can_terminal_dismantle())
+ user.visible_message("[user.name] dismantles the power terminal from [master].", \
+ "You begin to cut the cables...")
+
+ playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
+ if(do_after(user, 50))
+ if(master && master.can_terminal_dismantle())
+ if(prob(50) && electrocute_mob(user, powernet, src))
+ var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
+ s.set_up(5, 1, master)
+ s.start()
+ return
+ new /obj/item/stack/cable_coil(loc, 10)
+ user << "You cut the cables and dismantle the power terminal."
+ qdel(src)
+
+
+/obj/machinery/power/terminal/attackby(obj/item/W, mob/living/user)
+ if(istype(W, /obj/item/weapon/wirecutters))
+ dismantle(user)
+ return
+
+ ..()
diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm
index ca51bd53c5e..b3c855e71da 100644
--- a/code/modules/projectiles/gun.dm
+++ b/code/modules/projectiles/gun.dm
@@ -67,7 +67,7 @@
for(var/obj/O in contents)
O.emp_act(severity)
-/obj/item/weapon/gun/afterattack(atom/target as mob|obj|turf, mob/living/user as mob|obj, flag, params)//TODO: go over this
+/obj/item/weapon/gun/afterattack(atom/target as mob|obj|turf, mob/living/carbon/human/user as mob|obj, flag, params)//TODO: go over this
if(flag) //It's adjacent, is the user, or is on the user's person
if(istype(target, /mob/) && target != user && !(target in user.contents)) //We make sure that it is a mob, it's not us or part of us.
if(user.a_intent == "harm") //Flogging action
@@ -79,7 +79,7 @@
if(clumsy_check && can_shoot())
if(istype(user, /mob/living))
var/mob/living/M = user
- if ((CLUMSY in M.mutations) && prob(40))
+ if (M.disabilities & CLUMSY && prob(40))
user << "You shoot yourself in the foot with \the [src]!"
process_fire(user,user,0,params)
M.drop_item()
@@ -90,20 +90,19 @@
if(!can_trigger_gun(L))
return
- process_fire(target,user,flag,params)
+ process_fire(target,user,1,params)
-/obj/item/weapon/gun/proc/can_trigger_gun(mob/living/user)
+/obj/item/weapon/gun/proc/can_trigger_gun(mob/living/carbon/user)
if (!user.IsAdvancedToolUser())
user << "You don't have the dexterity to do this!"
return 0
if(trigger_guard)
- if (HULK in user.mutations)
- user << "Your meaty finger is much too large for the trigger guard!"
- return 0
- if(ishuman(user))
- var/mob/living/carbon/human/H = user
- if(H.dna && NOGUNS in H.dna.species.specflags)
+ if(istype(user) && user.dna)
+ if(user.dna.check_mutation(HULK))
+ user << "Your meaty finger is much too large for the trigger guard!"
+ return 0
+ if(NOGUNS in user.dna.species.specflags)
user << "Your fingers don't fit in the trigger guard!"
return 0
return 1
diff --git a/code/modules/reagents/Chemistry-Machinery.dm b/code/modules/reagents/Chemistry-Machinery.dm
index d4266884b16..0022664d00f 100644
--- a/code/modules/reagents/Chemistry-Machinery.dm
+++ b/code/modules/reagents/Chemistry-Machinery.dm
@@ -138,6 +138,7 @@
var/obj/item/weapon/reagent_containers/glass/B = beaker
B.loc = loc
beaker = null
+ overlays -= "disp_beaker"
add_fingerprint(usr)
return 1 // update UIs attached to this object
@@ -158,6 +159,7 @@
B.loc = src
user << "You add the beaker to the machine!"
SSnano.update_uis(src) // update all UIs attached to src
+ overlays += "disp_beaker"
/obj/machinery/chem_dispenser/attack_ai(mob/user as mob)
return src.attack_hand(user)
diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents.dm
index 257948ffc79..2151bbec53f 100644
--- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents.dm
+++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents.dm
@@ -854,5 +854,4 @@ datum/reagent/plantnutriment/robustharvestnutriment
// Undefine the alias for REAGENTS_EFFECT_MULTIPLER
-#undef REM
-
+#undef REM
\ No newline at end of file
diff --git a/code/modules/reagents/Chemistry-Reagents/Consumable-Reagents/Drink-Reagents/Drinks.dm b/code/modules/reagents/Chemistry-Reagents/Consumable-Reagents/Drink-Reagents/Drinks.dm
index 656570dce93..8b8d02eb124 100644
--- a/code/modules/reagents/Chemistry-Reagents/Consumable-Reagents/Drink-Reagents/Drinks.dm
+++ b/code/modules/reagents/Chemistry-Reagents/Consumable-Reagents/Drink-Reagents/Drinks.dm
@@ -60,7 +60,7 @@ datum/reagent/consumable/carrotjuice/on_mob_life(var/mob/living/M as mob)
//nothing
if(21 to INFINITY)
if (prob(data-10))
- M.disabilities &= ~NEARSIGHTED
+ M.disabilities &= ~NEARSIGHT
data++
..()
return
diff --git a/code/modules/reagents/Chemistry-Reagents/Consumable-Reagents/Food-Reagents.dm b/code/modules/reagents/Chemistry-Reagents/Consumable-Reagents/Food-Reagents.dm
index c5132e52363..90d7e905bfa 100644
--- a/code/modules/reagents/Chemistry-Reagents/Consumable-Reagents/Food-Reagents.dm
+++ b/code/modules/reagents/Chemistry-Reagents/Consumable-Reagents/Food-Reagents.dm
@@ -1,5 +1,3 @@
-
-
///////////////////////////////////////////////////////////////////
//Food Reagents
//////////////////////////////////////////////////////////////////
@@ -385,4 +383,3 @@ datum/reagent/consumable/cherryjelly
description = "Totally the best. Only to be spread on foods with excellent lateral symmetry."
color = "#801E28" // rgb: 128, 30, 40
-
diff --git a/code/modules/reagents/Chemistry-Reagents/Medicine-Reagents.dm b/code/modules/reagents/Chemistry-Reagents/Medicine-Reagents.dm
index 20b105f9040..aeb76afb339 100644
--- a/code/modules/reagents/Chemistry-Reagents/Medicine-Reagents.dm
+++ b/code/modules/reagents/Chemistry-Reagents/Medicine-Reagents.dm
@@ -92,18 +92,12 @@ datum/reagent/medicine/ryetalyn
reagent_state = SOLID
color = "#C8A5DC" // rgb: 200, 165, 220
-datum/reagent/medicine/ryetalyn/on_mob_life(var/mob/living/M as mob)
-
- var/needs_update = M.mutations.len > 0
- M.mutations = list()
- M.disabilities = 0
- M.sdisabilities = 0
+datum/reagent/medicine/ryetalyn/on_mob_life(mob/living/carbon/human/M)
M.jitteriness = 0
// Might need to update appearance for hulk etc.
- if(needs_update && ishuman(M))
- var/mob/living/carbon/human/H = M
- H.update_mutations()
+ if(istype(M) && M.dna)
+ M.dna.remove_all_mutations()
..()
return
@@ -210,7 +204,6 @@ datum/reagent/medicine/adminordrazine/on_mob_life(var/mob/living/carbon/M as mob
M.hallucination = 0
M.setBrainLoss(0)
M.disabilities = 0
- M.sdisabilities = 0
M.eye_blurry = 0
M.eye_blind = 0
M.SetWeakened(0)
@@ -299,9 +292,8 @@ datum/reagent/medicine/imidazoline
datum/reagent/medicine/imidazoline/on_mob_life(var/mob/living/M as mob)
M.eye_blurry = max(M.eye_blurry-5 , 0)
M.eye_blind = max(M.eye_blind-5 , 0)
- M.disabilities &= ~NEARSIGHTED
+ M.disabilities &= ~NEARSIGHT
M.eye_stat = max(M.eye_stat-5, 0)
-// M.sdisabilities &= ~1 Replaced by eye surgery
..()
return
diff --git a/code/modules/reagents/reagent_containers/glass/bottle.dm b/code/modules/reagents/reagent_containers/glass/bottle.dm
index 35707c8792a..bccc3191087 100644
--- a/code/modules/reagents/reagent_containers/glass/bottle.dm
+++ b/code/modules/reagents/reagent_containers/glass/bottle.dm
@@ -289,6 +289,28 @@
var/list/data = list("viruses"= list(F))
reagents.add_reagent("blood", 20, data)
+/obj/item/weapon/reagent_containers/glass/bottle/anxiety
+ name = "Severe Anxiety culture bottle"
+ desc = "A small bottle. Contains a sample of Lepidopticides."
+ icon = 'icons/obj/chemical.dmi'
+ icon_state = "bottle3"
+ New()
+ ..()
+ var/datum/disease/F = new /datum/disease/anxiety(0)
+ var/list/data = list("viruses"= list(F))
+ reagents.add_reagent("blood", 20, data)
+
+/obj/item/weapon/reagent_containers/glass/bottle/beesease
+ name = "Beesease culture bottle"
+ desc = "A small bottle. Contains a sample of invasive Apidae."
+ icon = 'icons/obj/chemical.dmi'
+ icon_state = "bottle3"
+ New()
+ ..()
+ var/datum/disease/F = new /datum/disease/beesease(0)
+ var/list/data = list("viruses"= list(F))
+ reagents.add_reagent("blood", 20, data)
+
/obj/item/weapon/reagent_containers/glass/bottle/pacid
name = "Polytrinic Acid Bottle"
desc = "A small bottle. Contains a small amount of Polytrinic Acid"
diff --git a/code/modules/recycling/disposal.dm b/code/modules/recycling/disposal.dm
index 765e7050774..4ba51c93667 100644
--- a/code/modules/recycling/disposal.dm
+++ b/code/modules/recycling/disposal.dm
@@ -512,7 +512,7 @@
AM.loc = src
if(istype(AM, /mob/living/carbon/human))
var/mob/living/carbon/human/H = AM
- if(FAT in H.mutations) // is a human and fat?
+ if(H.disabilities & FAT) // is a human and fat?
has_fat_guy = 1 // set flag on holder
if(istype(AM, /obj/structure/bigDelivery) && !hasmob)
var/obj/structure/bigDelivery/T = AM
diff --git a/code/modules/surgery/eye_surgery.dm b/code/modules/surgery/eye_surgery.dm
index 9d3afe3e1b9..0fb7f2413cb 100644
--- a/code/modules/surgery/eye_surgery.dm
+++ b/code/modules/surgery/eye_surgery.dm
@@ -15,8 +15,8 @@
/datum/surgery_step/fix_eyes/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
user.visible_message("[user] successfully fixes [target]'s eyes!")
- target.sdisabilities &= ~BLIND
- target.disabilities &= ~NEARSIGHTED
+ target.disabilities &= ~BLIND
+ target.disabilities &= ~NEARSIGHT
target.eye_blurry = 35 //this will fix itself slowly.
target.eye_stat = 0
return 1
diff --git a/code/modules/surgery/helpers.dm b/code/modules/surgery/helpers.dm
index 5786a2b1ee2..8d23d98378d 100644
--- a/code/modules/surgery/helpers.dm
+++ b/code/modules/surgery/helpers.dm
@@ -10,7 +10,7 @@
continue
if(S.target_must_be_dead && M.stat != DEAD)
continue
- if(S.target_must_be_fat && !(FAT in M.mutations))
+ if(S.target_must_be_fat && !(M.disabilities & FAT))
continue
if(istype(M, /mob/living/carbon/human))
diff --git a/config/admins.txt b/config/admins.txt
index cec937826ec..f71ed183fde 100644
--- a/config/admins.txt
+++ b/config/admins.txt
@@ -73,3 +73,5 @@ Cuboos = Game Master
thunder12345 = Game Master
wjohnston = Game Master
mandurrh = Game Master
+thurgatar = Game Master
+xerux = Game Master
diff --git a/config/game_options.txt b/config/game_options.txt
index 00fad47a4de..62bfc11ff59 100644
--- a/config/game_options.txt
+++ b/config/game_options.txt
@@ -88,6 +88,7 @@ PROBABILITY CHANGELING 2
PROBABILITY WIZARD 4
PROBABILITY MALFUNCTION 1
PROBABILITY BLOB 2
+PROBABILITY RAGINMAGES 2
PROBABILITY MONKEY 1
PROBABILITY METEOR 0
PROBABILITY EXTENDED 0
diff --git a/icons/mob/hands.dmi b/icons/mob/hands.dmi
index 02912e7ee35..4b83c7049ad 100644
Binary files a/icons/mob/hands.dmi and b/icons/mob/hands.dmi differ
diff --git a/icons/mob/items_lefthand.dmi b/icons/mob/items_lefthand.dmi
index bb4f4121a2a..c74d023f04c 100644
Binary files a/icons/mob/items_lefthand.dmi and b/icons/mob/items_lefthand.dmi differ
diff --git a/icons/mob/items_righthand.dmi b/icons/mob/items_righthand.dmi
index 32316ec15f2..4980f8af635 100644
Binary files a/icons/mob/items_righthand.dmi and b/icons/mob/items_righthand.dmi differ
diff --git a/icons/mob/underwear.dmi b/icons/mob/underwear.dmi
index 7e161846df6..d28501b353c 100644
Binary files a/icons/mob/underwear.dmi and b/icons/mob/underwear.dmi differ
diff --git a/icons/obj/chemical.dmi b/icons/obj/chemical.dmi
index 8c3eee2a656..af5e4e68ac5 100644
Binary files a/icons/obj/chemical.dmi and b/icons/obj/chemical.dmi differ
diff --git a/icons/obj/clothing/gloves.dmi b/icons/obj/clothing/gloves.dmi
index c7851bc5a20..b7dfaae07e9 100644
Binary files a/icons/obj/clothing/gloves.dmi and b/icons/obj/clothing/gloves.dmi differ
diff --git a/icons/obj/gun.dmi b/icons/obj/gun.dmi
index e73f17598ab..a5a60c35396 100644
Binary files a/icons/obj/gun.dmi and b/icons/obj/gun.dmi differ
diff --git a/icons/obj/pipes.dmi b/icons/obj/pipes.dmi
index e5ad7ebb004..79e6661e386 100644
Binary files a/icons/obj/pipes.dmi and b/icons/obj/pipes.dmi differ
diff --git a/icons/obj/pipes/disposal.dmi b/icons/obj/pipes/disposal.dmi
index 709344a6782..086915ed3eb 100644
Binary files a/icons/obj/pipes/disposal.dmi and b/icons/obj/pipes/disposal.dmi differ
diff --git a/icons/obj/pipes/heat.dmi b/icons/obj/pipes/heat.dmi
index 4b6f4b7b741..977fde8cad9 100644
Binary files a/icons/obj/pipes/heat.dmi and b/icons/obj/pipes/heat.dmi differ
diff --git a/icons/obj/pipes/junction.dmi b/icons/obj/pipes/junction.dmi
index 88d96929eaa..0b1625f563f 100644
Binary files a/icons/obj/pipes/junction.dmi and b/icons/obj/pipes/junction.dmi differ
diff --git a/icons/obj/structures.dmi b/icons/obj/structures.dmi
index 28b324793bc..adaa8481569 100644
Binary files a/icons/obj/structures.dmi and b/icons/obj/structures.dmi differ
diff --git a/tgstation.dme b/tgstation.dme
index 3e987030993..379c4a1b688 100644
--- a/tgstation.dme
+++ b/tgstation.dme
@@ -152,6 +152,7 @@
#include "code\datums\mind.dm"
#include "code\datums\mixed.dm"
#include "code\datums\modules.dm"
+#include "code\datums\mutations.dm"
#include "code\datums\recipe.dm"
#include "code\datums\spell.dm"
#include "code\datums\supplypacks.dm"
@@ -327,6 +328,7 @@
#include "code\game\gamemodes\traitor\double_agents.dm"
#include "code\game\gamemodes\traitor\traitor.dm"
#include "code\game\gamemodes\wizard\artefact.dm"
+#include "code\game\gamemodes\wizard\raginmages.dm"
#include "code\game\gamemodes\wizard\rightandwrong.dm"
#include "code\game\gamemodes\wizard\soulstone.dm"
#include "code\game\gamemodes\wizard\spellbook.dm"