Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIgnacio Rodríguez <ignacio@sugarlabs.org>2013-01-15 12:21:56 (GMT)
committer Ignacio Rodríguez <ignacio@sugarlabs.org>2013-01-15 12:21:56 (GMT)
commitd0675400e4491844a910347a58f2be72b8756c20 (patch)
tree4b825dc642cb6eb9a060e54bf8d69288fbee4904
parentcc1e19538279f3dd785782a0ad256e84b13292a3 (diff)
Only need artwork.
-rw-r--r--COPYING674
-rw-r--r--Quinteti.activity/MANIFEST63
-rw-r--r--Quinteti.activity/NEWS13
-rw-r--r--Quinteti.activity/TODO6
-rw-r--r--Quinteti.activity/activity.py48
-rw-r--r--Quinteti.activity/activity/activity-quinteti.svg70
-rw-r--r--Quinteti.activity/activity/activity.info7
-rw-r--r--Quinteti.activity/gui/1.pngbin5002 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/1selected.pngbin4970 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/2.pngbin2913 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/2selected.pngbin2929 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/3.pngbin3238 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/3selected.pngbin3356 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/4.pngbin5349 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/4selected.pngbin5260 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/5.pngbin5434 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/5selected.pngbin5395 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/6.pngbin5372 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/6selected.pngbin5387 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/7.pngbin5175 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/7selected.pngbin5164 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/8.pngbin3538 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/8selected.pngbin3634 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/9.pngbin3307 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/9selected.pngbin3358 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/__init__.py0
-rw-r--r--Quinteti.activity/gui/background.pngbin52615 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/board.py383
-rw-r--r--Quinteti.activity/gui/button.py61
-rw-r--r--Quinteti.activity/gui/cell.py64
-rw-r--r--Quinteti.activity/gui/instructions.pngbin121734 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/instructions_button.pngbin4418 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/jupeee.oggbin11708 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/man-vs-computer.pngbin2096 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/man-vs-man.pngbin1734 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/player_win.pngbin1865 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/quinteti-new.pngbin4271 -> 0 bytes
-rw-r--r--Quinteti.activity/gui/standardcursor.xbm22
-rw-r--r--Quinteti.activity/gui/standardcursor_mask.xbm17
-rw-r--r--Quinteti.activity/logic/__init__.py0
-rw-r--r--Quinteti.activity/logic/game.py240
-rw-r--r--Quinteti.activity/logic/mesh.py143
-rw-r--r--Quinteti.activity/main.py163
-rw-r--r--Quinteti.activity/olpcgames/COPYING24
-rw-r--r--Quinteti.activity/olpcgames/__init__.py102
-rw-r--r--Quinteti.activity/olpcgames/_cairoimage.py135
-rw-r--r--Quinteti.activity/olpcgames/_gtkmain.py70
-rw-r--r--Quinteti.activity/olpcgames/_version.py2
-rw-r--r--Quinteti.activity/olpcgames/activity.py241
-rw-r--r--Quinteti.activity/olpcgames/buildmanifest.py33
-rw-r--r--Quinteti.activity/olpcgames/camera.py221
-rw-r--r--Quinteti.activity/olpcgames/canvas.py171
-rw-r--r--Quinteti.activity/olpcgames/data/__init__.py36
-rw-r--r--Quinteti.activity/olpcgames/data/sleeping_svg.py61
-rw-r--r--Quinteti.activity/olpcgames/dbusproxy.py93
-rw-r--r--Quinteti.activity/olpcgames/eventwrap.py388
-rw-r--r--Quinteti.activity/olpcgames/gtkEvent.py289
-rw-r--r--Quinteti.activity/olpcgames/mesh.py583
-rw-r--r--Quinteti.activity/olpcgames/pangofont.py346
-rw-r--r--Quinteti.activity/olpcgames/pausescreen.py116
-rw-r--r--Quinteti.activity/olpcgames/svgsprite.py84
-rw-r--r--Quinteti.activity/olpcgames/textsprite.py40
-rw-r--r--Quinteti.activity/olpcgames/util.py79
-rw-r--r--Quinteti.activity/olpcgames/video.py178
-rw-r--r--Quinteti.activity/setup.py21
-rw-r--r--instalar activity6
-rw-r--r--interfaz.txt21
-rw-r--r--resources/QuinTeTi.ai1128
-rw-r--r--resources/QuinTeTi.svg2611
-rw-r--r--resources/background.xcfbin497905 -> 0 bytes
-rw-r--r--resources/computer.svg98
-rw-r--r--resources/icon.pngbin4068 -> 0 bytes
-rw-r--r--resources/instructions.svg240
-rw-r--r--resources/man-vs-computer.svg219
-rw-r--r--resources/man-vs-man.svg185
-rw-r--r--resources/man.svg130
-rw-r--r--resources/terron.pngbin17126 -> 0 bytes
77 files changed, 0 insertions, 9925 deletions
diff --git a/COPYING b/COPYING
deleted file mode 100644
index 94a9ed0..0000000
--- a/COPYING
+++ /dev/null
@@ -1,674 +0,0 @@
- GNU GENERAL PUBLIC LICENSE
- Version 3, 29 June 2007
-
- Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The GNU General Public License is a free, copyleft license for
-software and other kinds of works.
-
- The licenses for most software and other practical works are designed
-to take away your freedom to share and change the works. By contrast,
-the GNU General Public License is intended to guarantee your freedom to
-share and change all versions of a program--to make sure it remains free
-software for all its users. We, the Free Software Foundation, use the
-GNU General Public License for most of our software; it applies also to
-any other work released this way by its authors. You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-them if you wish), that you receive source code or can get it if you
-want it, that you can change the software or use pieces of it in new
-free programs, and that you know you can do these things.
-
- To protect your rights, we need to prevent others from denying you
-these rights or asking you to surrender the rights. Therefore, you have
-certain responsibilities if you distribute copies of the software, or if
-you modify it: responsibilities to respect the freedom of others.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must pass on to the recipients the same
-freedoms that you received. You must make sure that they, too, receive
-or can get the source code. And you must show them these terms so they
-know their rights.
-
- Developers that use the GNU GPL protect your rights with two steps:
-(1) assert copyright on the software, and (2) offer you this License
-giving you legal permission to copy, distribute and/or modify it.
-
- For the developers' and authors' protection, the GPL clearly explains
-that there is no warranty for this free software. For both users' and
-authors' sake, the GPL requires that modified versions be marked as
-changed, so that their problems will not be attributed erroneously to
-authors of previous versions.
-
- Some devices are designed to deny users access to install or run
-modified versions of the software inside them, although the manufacturer
-can do so. This is fundamentally incompatible with the aim of
-protecting users' freedom to change the software. The systematic
-pattern of such abuse occurs in the area of products for individuals to
-use, which is precisely where it is most unacceptable. Therefore, we
-have designed this version of the GPL to prohibit the practice for those
-products. If such problems arise substantially in other domains, we
-stand ready to extend this provision to those domains in future versions
-of the GPL, as needed to protect the freedom of users.
-
- Finally, every program is threatened constantly by software patents.
-States should not allow patents to restrict development and use of
-software on general-purpose computers, but in those that do, we wish to
-avoid the special danger that patents applied to a free program could
-make it effectively proprietary. To prevent this, the GPL assures that
-patents cannot be used to render the program non-free.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
- TERMS AND CONDITIONS
-
- 0. Definitions.
-
- "This License" refers to version 3 of the GNU General Public License.
-
- "Copyright" also means copyright-like laws that apply to other kinds of
-works, such as semiconductor masks.
-
- "The Program" refers to any copyrightable work licensed under this
-License. Each licensee is addressed as "you". "Licensees" and
-"recipients" may be individuals or organizations.
-
- To "modify" a work means to copy from or adapt all or part of the work
-in a fashion requiring copyright permission, other than the making of an
-exact copy. The resulting work is called a "modified version" of the
-earlier work or a work "based on" the earlier work.
-
- A "covered work" means either the unmodified Program or a work based
-on the Program.
-
- To "propagate" a work means to do anything with it that, without
-permission, would make you directly or secondarily liable for
-infringement under applicable copyright law, except executing it on a
-computer or modifying a private copy. Propagation includes copying,
-distribution (with or without modification), making available to the
-public, and in some countries other activities as well.
-
- To "convey" a work means any kind of propagation that enables other
-parties to make or receive copies. Mere interaction with a user through
-a computer network, with no transfer of a copy, is not conveying.
-
- An interactive user interface displays "Appropriate Legal Notices"
-to the extent that it includes a convenient and prominently visible
-feature that (1) displays an appropriate copyright notice, and (2)
-tells the user that there is no warranty for the work (except to the
-extent that warranties are provided), that licensees may convey the
-work under this License, and how to view a copy of this License. If
-the interface presents a list of user commands or options, such as a
-menu, a prominent item in the list meets this criterion.
-
- 1. Source Code.
-
- The "source code" for a work means the preferred form of the work
-for making modifications to it. "Object code" means any non-source
-form of a work.
-
- A "Standard Interface" means an interface that either is an official
-standard defined by a recognized standards body, or, in the case of
-interfaces specified for a particular programming language, one that
-is widely used among developers working in that language.
-
- The "System Libraries" of an executable work include anything, other
-than the work as a whole, that (a) is included in the normal form of
-packaging a Major Component, but which is not part of that Major
-Component, and (b) serves only to enable use of the work with that
-Major Component, or to implement a Standard Interface for which an
-implementation is available to the public in source code form. A
-"Major Component", in this context, means a major essential component
-(kernel, window system, and so on) of the specific operating system
-(if any) on which the executable work runs, or a compiler used to
-produce the work, or an object code interpreter used to run it.
-
- The "Corresponding Source" for a work in object code form means all
-the source code needed to generate, install, and (for an executable
-work) run the object code and to modify the work, including scripts to
-control those activities. However, it does not include the work's
-System Libraries, or general-purpose tools or generally available free
-programs which are used unmodified in performing those activities but
-which are not part of the work. For example, Corresponding Source
-includes interface definition files associated with source files for
-the work, and the source code for shared libraries and dynamically
-linked subprograms that the work is specifically designed to require,
-such as by intimate data communication or control flow between those
-subprograms and other parts of the work.
-
- The Corresponding Source need not include anything that users
-can regenerate automatically from other parts of the Corresponding
-Source.
-
- The Corresponding Source for a work in source code form is that
-same work.
-
- 2. Basic Permissions.
-
- All rights granted under this License are granted for the term of
-copyright on the Program, and are irrevocable provided the stated
-conditions are met. This License explicitly affirms your unlimited
-permission to run the unmodified Program. The output from running a
-covered work is covered by this License only if the output, given its
-content, constitutes a covered work. This License acknowledges your
-rights of fair use or other equivalent, as provided by copyright law.
-
- You may make, run and propagate covered works that you do not
-convey, without conditions so long as your license otherwise remains
-in force. You may convey covered works to others for the sole purpose
-of having them make modifications exclusively for you, or provide you
-with facilities for running those works, provided that you comply with
-the terms of this License in conveying all material for which you do
-not control copyright. Those thus making or running the covered works
-for you must do so exclusively on your behalf, under your direction
-and control, on terms that prohibit them from making any copies of
-your copyrighted material outside their relationship with you.
-
- Conveying under any other circumstances is permitted solely under
-the conditions stated below. Sublicensing is not allowed; section 10
-makes it unnecessary.
-
- 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
-
- No covered work shall be deemed part of an effective technological
-measure under any applicable law fulfilling obligations under article
-11 of the WIPO copyright treaty adopted on 20 December 1996, or
-similar laws prohibiting or restricting circumvention of such
-measures.
-
- When you convey a covered work, you waive any legal power to forbid
-circumvention of technological measures to the extent such circumvention
-is effected by exercising rights under this License with respect to
-the covered work, and you disclaim any intention to limit operation or
-modification of the work as a means of enforcing, against the work's
-users, your or third parties' legal rights to forbid circumvention of
-technological measures.
-
- 4. Conveying Verbatim Copies.
-
- You may convey verbatim copies of the Program's source code as you
-receive it, in any medium, provided that you conspicuously and
-appropriately publish on each copy an appropriate copyright notice;
-keep intact all notices stating that this License and any
-non-permissive terms added in accord with section 7 apply to the code;
-keep intact all notices of the absence of any warranty; and give all
-recipients a copy of this License along with the Program.
-
- You may charge any price or no price for each copy that you convey,
-and you may offer support or warranty protection for a fee.
-
- 5. Conveying Modified Source Versions.
-
- You may convey a work based on the Program, or the modifications to
-produce it from the Program, in the form of source code under the
-terms of section 4, provided that you also meet all of these conditions:
-
- a) The work must carry prominent notices stating that you modified
- it, and giving a relevant date.
-
- b) The work must carry prominent notices stating that it is
- released under this License and any conditions added under section
- 7. This requirement modifies the requirement in section 4 to
- "keep intact all notices".
-
- c) You must license the entire work, as a whole, under this
- License to anyone who comes into possession of a copy. This
- License will therefore apply, along with any applicable section 7
- additional terms, to the whole of the work, and all its parts,
- regardless of how they are packaged. This License gives no
- permission to license the work in any other way, but it does not
- invalidate such permission if you have separately received it.
-
- d) If the work has interactive user interfaces, each must display
- Appropriate Legal Notices; however, if the Program has interactive
- interfaces that do not display Appropriate Legal Notices, your
- work need not make them do so.
-
- A compilation of a covered work with other separate and independent
-works, which are not by their nature extensions of the covered work,
-and which are not combined with it such as to form a larger program,
-in or on a volume of a storage or distribution medium, is called an
-"aggregate" if the compilation and its resulting copyright are not
-used to limit the access or legal rights of the compilation's users
-beyond what the individual works permit. Inclusion of a covered work
-in an aggregate does not cause this License to apply to the other
-parts of the aggregate.
-
- 6. Conveying Non-Source Forms.
-
- You may convey a covered work in object code form under the terms
-of sections 4 and 5, provided that you also convey the
-machine-readable Corresponding Source under the terms of this License,
-in one of these ways:
-
- a) Convey the object code in, or embodied in, a physical product
- (including a physical distribution medium), accompanied by the
- Corresponding Source fixed on a durable physical medium
- customarily used for software interchange.
-
- b) Convey the object code in, or embodied in, a physical product
- (including a physical distribution medium), accompanied by a
- written offer, valid for at least three years and valid for as
- long as you offer spare parts or customer support for that product
- model, to give anyone who possesses the object code either (1) a
- copy of the Corresponding Source for all the software in the
- product that is covered by this License, on a durable physical
- medium customarily used for software interchange, for a price no
- more than your reasonable cost of physically performing this
- conveying of source, or (2) access to copy the
- Corresponding Source from a network server at no charge.
-
- c) Convey individual copies of the object code with a copy of the
- written offer to provide the Corresponding Source. This
- alternative is allowed only occasionally and noncommercially, and
- only if you received the object code with such an offer, in accord
- with subsection 6b.
-
- d) Convey the object code by offering access from a designated
- place (gratis or for a charge), and offer equivalent access to the
- Corresponding Source in the same way through the same place at no
- further charge. You need not require recipients to copy the
- Corresponding Source along with the object code. If the place to
- copy the object code is a network server, the Corresponding Source
- may be on a different server (operated by you or a third party)
- that supports equivalent copying facilities, provided you maintain
- clear directions next to the object code saying where to find the
- Corresponding Source. Regardless of what server hosts the
- Corresponding Source, you remain obligated to ensure that it is
- available for as long as needed to satisfy these requirements.
-
- e) Convey the object code using peer-to-peer transmission, provided
- you inform other peers where the object code and Corresponding
- Source of the work are being offered to the general public at no
- charge under subsection 6d.
-
- A separable portion of the object code, whose source code is excluded
-from the Corresponding Source as a System Library, need not be
-included in conveying the object code work.
-
- A "User Product" is either (1) a "consumer product", which means any
-tangible personal property which is normally used for personal, family,
-or household purposes, or (2) anything designed or sold for incorporation
-into a dwelling. In determining whether a product is a consumer product,
-doubtful cases shall be resolved in favor of coverage. For a particular
-product received by a particular user, "normally used" refers to a
-typical or common use of that class of product, regardless of the status
-of the particular user or of the way in which the particular user
-actually uses, or expects or is expected to use, the product. A product
-is a consumer product regardless of whether the product has substantial
-commercial, industrial or non-consumer uses, unless such uses represent
-the only significant mode of use of the product.
-
- "Installation Information" for a User Product means any methods,
-procedures, authorization keys, or other information required to install
-and execute modified versions of a covered work in that User Product from
-a modified version of its Corresponding Source. The information must
-suffice to ensure that the continued functioning of the modified object
-code is in no case prevented or interfered with solely because
-modification has been made.
-
- If you convey an object code work under this section in, or with, or
-specifically for use in, a User Product, and the conveying occurs as
-part of a transaction in which the right of possession and use of the
-User Product is transferred to the recipient in perpetuity or for a
-fixed term (regardless of how the transaction is characterized), the
-Corresponding Source conveyed under this section must be accompanied
-by the Installation Information. But this requirement does not apply
-if neither you nor any third party retains the ability to install
-modified object code on the User Product (for example, the work has
-been installed in ROM).
-
- The requirement to provide Installation Information does not include a
-requirement to continue to provide support service, warranty, or updates
-for a work that has been modified or installed by the recipient, or for
-the User Product in which it has been modified or installed. Access to a
-network may be denied when the modification itself materially and
-adversely affects the operation of the network or violates the rules and
-protocols for communication across the network.
-
- Corresponding Source conveyed, and Installation Information provided,
-in accord with this section must be in a format that is publicly
-documented (and with an implementation available to the public in
-source code form), and must require no special password or key for
-unpacking, reading or copying.
-
- 7. Additional Terms.
-
- "Additional permissions" are terms that supplement the terms of this
-License by making exceptions from one or more of its conditions.
-Additional permissions that are applicable to the entire Program shall
-be treated as though they were included in this License, to the extent
-that they are valid under applicable law. If additional permissions
-apply only to part of the Program, that part may be used separately
-under those permissions, but the entire Program remains governed by
-this License without regard to the additional permissions.
-
- When you convey a copy of a covered work, you may at your option
-remove any additional permissions from that copy, or from any part of
-it. (Additional permissions may be written to require their own
-removal in certain cases when you modify the work.) You may place
-additional permissions on material, added by you to a covered work,
-for which you have or can give appropriate copyright permission.
-
- Notwithstanding any other provision of this License, for material you
-add to a covered work, you may (if authorized by the copyright holders of
-that material) supplement the terms of this License with terms:
-
- a) Disclaiming warranty or limiting liability differently from the
- terms of sections 15 and 16 of this License; or
-
- b) Requiring preservation of specified reasonable legal notices or
- author attributions in that material or in the Appropriate Legal
- Notices displayed by works containing it; or
-
- c) Prohibiting misrepresentation of the origin of that material, or
- requiring that modified versions of such material be marked in
- reasonable ways as different from the original version; or
-
- d) Limiting the use for publicity purposes of names of licensors or
- authors of the material; or
-
- e) Declining to grant rights under trademark law for use of some
- trade names, trademarks, or service marks; or
-
- f) Requiring indemnification of licensors and authors of that
- material by anyone who conveys the material (or modified versions of
- it) with contractual assumptions of liability to the recipient, for
- any liability that these contractual assumptions directly impose on
- those licensors and authors.
-
- All other non-permissive additional terms are considered "further
-restrictions" within the meaning of section 10. If the Program as you
-received it, or any part of it, contains a notice stating that it is
-governed by this License along with a term that is a further
-restriction, you may remove that term. If a license document contains
-a further restriction but permits relicensing or conveying under this
-License, you may add to a covered work material governed by the terms
-of that license document, provided that the further restriction does
-not survive such relicensing or conveying.
-
- If you add terms to a covered work in accord with this section, you
-must place, in the relevant source files, a statement of the
-additional terms that apply to those files, or a notice indicating
-where to find the applicable terms.
-
- Additional terms, permissive or non-permissive, may be stated in the
-form of a separately written license, or stated as exceptions;
-the above requirements apply either way.
-
- 8. Termination.
-
- You may not propagate or modify a covered work except as expressly
-provided under this License. Any attempt otherwise to propagate or
-modify it is void, and will automatically terminate your rights under
-this License (including any patent licenses granted under the third
-paragraph of section 11).
-
- However, if you cease all violation of this License, then your
-license from a particular copyright holder is reinstated (a)
-provisionally, unless and until the copyright holder explicitly and
-finally terminates your license, and (b) permanently, if the copyright
-holder fails to notify you of the violation by some reasonable means
-prior to 60 days after the cessation.
-
- Moreover, your license from a particular copyright holder is
-reinstated permanently if the copyright holder notifies you of the
-violation by some reasonable means, this is the first time you have
-received notice of violation of this License (for any work) from that
-copyright holder, and you cure the violation prior to 30 days after
-your receipt of the notice.
-
- Termination of your rights under this section does not terminate the
-licenses of parties who have received copies or rights from you under
-this License. If your rights have been terminated and not permanently
-reinstated, you do not qualify to receive new licenses for the same
-material under section 10.
-
- 9. Acceptance Not Required for Having Copies.
-
- You are not required to accept this License in order to receive or
-run a copy of the Program. Ancillary propagation of a covered work
-occurring solely as a consequence of using peer-to-peer transmission
-to receive a copy likewise does not require acceptance. However,
-nothing other than this License grants you permission to propagate or
-modify any covered work. These actions infringe copyright if you do
-not accept this License. Therefore, by modifying or propagating a
-covered work, you indicate your acceptance of this License to do so.
-
- 10. Automatic Licensing of Downstream Recipients.
-
- Each time you convey a covered work, the recipient automatically
-receives a license from the original licensors, to run, modify and
-propagate that work, subject to this License. You are not responsible
-for enforcing compliance by third parties with this License.
-
- An "entity transaction" is a transaction transferring control of an
-organization, or substantially all assets of one, or subdividing an
-organization, or merging organizations. If propagation of a covered
-work results from an entity transaction, each party to that
-transaction who receives a copy of the work also receives whatever
-licenses to the work the party's predecessor in interest had or could
-give under the previous paragraph, plus a right to possession of the
-Corresponding Source of the work from the predecessor in interest, if
-the predecessor has it or can get it with reasonable efforts.
-
- You may not impose any further restrictions on the exercise of the
-rights granted or affirmed under this License. For example, you may
-not impose a license fee, royalty, or other charge for exercise of
-rights granted under this License, and you may not initiate litigation
-(including a cross-claim or counterclaim in a lawsuit) alleging that
-any patent claim is infringed by making, using, selling, offering for
-sale, or importing the Program or any portion of it.
-
- 11. Patents.
-
- A "contributor" is a copyright holder who authorizes use under this
-License of the Program or a work on which the Program is based. The
-work thus licensed is called the contributor's "contributor version".
-
- A contributor's "essential patent claims" are all patent claims
-owned or controlled by the contributor, whether already acquired or
-hereafter acquired, that would be infringed by some manner, permitted
-by this License, of making, using, or selling its contributor version,
-but do not include claims that would be infringed only as a
-consequence of further modification of the contributor version. For
-purposes of this definition, "control" includes the right to grant
-patent sublicenses in a manner consistent with the requirements of
-this License.
-
- Each contributor grants you a non-exclusive, worldwide, royalty-free
-patent license under the contributor's essential patent claims, to
-make, use, sell, offer for sale, import and otherwise run, modify and
-propagate the contents of its contributor version.
-
- In the following three paragraphs, a "patent license" is any express
-agreement or commitment, however denominated, not to enforce a patent
-(such as an express permission to practice a patent or covenant not to
-sue for patent infringement). To "grant" such a patent license to a
-party means to make such an agreement or commitment not to enforce a
-patent against the party.
-
- If you convey a covered work, knowingly relying on a patent license,
-and the Corresponding Source of the work is not available for anyone
-to copy, free of charge and under the terms of this License, through a
-publicly available network server or other readily accessible means,
-then you must either (1) cause the Corresponding Source to be so
-available, or (2) arrange to deprive yourself of the benefit of the
-patent license for this particular work, or (3) arrange, in a manner
-consistent with the requirements of this License, to extend the patent
-license to downstream recipients. "Knowingly relying" means you have
-actual knowledge that, but for the patent license, your conveying the
-covered work in a country, or your recipient's use of the covered work
-in a country, would infringe one or more identifiable patents in that
-country that you have reason to believe are valid.
-
- If, pursuant to or in connection with a single transaction or
-arrangement, you convey, or propagate by procuring conveyance of, a
-covered work, and grant a patent license to some of the parties
-receiving the covered work authorizing them to use, propagate, modify
-or convey a specific copy of the covered work, then the patent license
-you grant is automatically extended to all recipients of the covered
-work and works based on it.
-
- A patent license is "discriminatory" if it does not include within
-the scope of its coverage, prohibits the exercise of, or is
-conditioned on the non-exercise of one or more of the rights that are
-specifically granted under this License. You may not convey a covered
-work if you are a party to an arrangement with a third party that is
-in the business of distributing software, under which you make payment
-to the third party based on the extent of your activity of conveying
-the work, and under which the third party grants, to any of the
-parties who would receive the covered work from you, a discriminatory
-patent license (a) in connection with copies of the covered work
-conveyed by you (or copies made from those copies), or (b) primarily
-for and in connection with specific products or compilations that
-contain the covered work, unless you entered into that arrangement,
-or that patent license was granted, prior to 28 March 2007.
-
- Nothing in this License shall be construed as excluding or limiting
-any implied license or other defenses to infringement that may
-otherwise be available to you under applicable patent law.
-
- 12. No Surrender of Others' Freedom.
-
- If conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot convey a
-covered work so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you may
-not convey it at all. For example, if you agree to terms that obligate you
-to collect a royalty for further conveying from those to whom you convey
-the Program, the only way you could satisfy both those terms and this
-License would be to refrain entirely from conveying the Program.
-
- 13. Use with the GNU Affero General Public License.
-
- Notwithstanding any other provision of this License, you have
-permission to link or combine any covered work with a work licensed
-under version 3 of the GNU Affero General Public License into a single
-combined work, and to convey the resulting work. The terms of this
-License will continue to apply to the part which is the covered work,
-but the special requirements of the GNU Affero General Public License,
-section 13, concerning interaction through a network will apply to the
-combination as such.
-
- 14. Revised Versions of this License.
-
- The Free Software Foundation may publish revised and/or new versions of
-the GNU General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
- Each version is given a distinguishing version number. If the
-Program specifies that a certain numbered version of the GNU General
-Public License "or any later version" applies to it, you have the
-option of following the terms and conditions either of that numbered
-version or of any later version published by the Free Software
-Foundation. If the Program does not specify a version number of the
-GNU General Public License, you may choose any version ever published
-by the Free Software Foundation.
-
- If the Program specifies that a proxy can decide which future
-versions of the GNU General Public License can be used, that proxy's
-public statement of acceptance of a version permanently authorizes you
-to choose that version for the Program.
-
- Later license versions may give you additional or different
-permissions. However, no additional obligations are imposed on any
-author or copyright holder as a result of your choosing to follow a
-later version.
-
- 15. Disclaimer of Warranty.
-
- THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
-APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
-HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
-OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
-THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
-IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
-ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
-
- 16. Limitation of Liability.
-
- IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
-THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
-GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
-USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
-DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
-PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
-EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
-SUCH DAMAGES.
-
- 17. Interpretation of Sections 15 and 16.
-
- If the disclaimer of warranty and limitation of liability provided
-above cannot be given local legal effect according to their terms,
-reviewing courts shall apply local law that most closely approximates
-an absolute waiver of all civil liability in connection with the
-Program, unless a warranty or assumption of liability accompanies a
-copy of the Program in return for a fee.
-
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-state the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
- <one line to give the program's name and a brief idea of what it does.>
- Copyright (C) <year> <name of author>
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-Also add information on how to contact you by electronic and paper mail.
-
- If the program does terminal interaction, make it output a short
-notice like this when it starts in an interactive mode:
-
- <program> Copyright (C) <year> <name of author>
- This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, your program's commands
-might be different; for a GUI interface, you would use an "about box".
-
- You should also get your employer (if you work as a programmer) or school,
-if any, to sign a "copyright disclaimer" for the program, if necessary.
-For more information on this, and how to apply and follow the GNU GPL, see
-<http://www.gnu.org/licenses/>.
-
- The GNU General Public License does not permit incorporating your program
-into proprietary programs. If your program is a subroutine library, you
-may consider it more useful to permit linking proprietary applications with
-the library. If this is what you want to do, use the GNU Lesser General
-Public License instead of this License. But first, please read
-<http://www.gnu.org/philosophy/why-not-lgpl.html>.
diff --git a/Quinteti.activity/MANIFEST b/Quinteti.activity/MANIFEST
deleted file mode 100644
index 426c149..0000000
--- a/Quinteti.activity/MANIFEST
+++ /dev/null
@@ -1,63 +0,0 @@
-main.py
-TODO
-setup.py
-activity.py
-NEWS
-logic/__init__.py
-logic/mesh.py
-logic/game.py
-gui/2selected.png
-gui/1.png
-gui/1selected.png
-gui/board.py
-gui/4selected.png
-gui/5.png
-gui/instructions.png
-gui/man-vs-man.png
-gui/9.png
-gui/button.py
-gui/player_win.png
-gui/standardcursor_mask.xbm
-gui/instructions_button.png
-gui/7selected.png
-gui/cell.py
-gui/standardcursor.xbm
-gui/2.png
-gui/__init__.py
-gui/9selected.png
-gui/5selected.png
-gui/4.png
-gui/background.png
-gui/8.png
-gui/3selected.png
-gui/quinteti-new.png
-gui/3.png
-gui/8selected.png
-gui/man-vs-computer.png
-gui/6selected.png
-gui/6.png
-gui/jupeee.ogg
-gui/7.png
-activity/activity.info
-activity/activity-quinteti.svg
-olpcgames/COPYING
-olpcgames/_cairoimage.py
-olpcgames/_gtkmain.py
-olpcgames/camera.py
-olpcgames/dbusproxy.py
-olpcgames/svgsprite.py
-olpcgames/_version.py
-olpcgames/__init__.py
-olpcgames/pausescreen.py
-olpcgames/textsprite.py
-olpcgames/pangofont.py
-olpcgames/eventwrap.py
-olpcgames/activity.py
-olpcgames/buildmanifest.py
-olpcgames/mesh.py
-olpcgames/gtkEvent.py
-olpcgames/util.py
-olpcgames/video.py
-olpcgames/canvas.py
-olpcgames/data/sleeping_svg.py
-olpcgames/data/__init__.py
diff --git a/Quinteti.activity/NEWS b/Quinteti.activity/NEWS
deleted file mode 100644
index ae5f0de..0000000
--- a/Quinteti.activity/NEWS
+++ /dev/null
@@ -1,13 +0,0 @@
-Version 3:
-- Se agrega modalidad para jugar contra la computadora.
-- Se cambia el ícono.
-
-Version 2:
-- Se agrega el cursor estándar de Sugar.
-- Al hacer puntos agrega un sonido.
-- Al hacer puntos muestra las fichas que hicieron puntos.
-- Se mejora el código para respetar los estándares PEP8.
-
-Versión 1:
-- Es una versión totalmente funcional, pero todavía hay muchas cosas que se pueden hacer para mejorarlo, las mismas están enumeradas en el archivo TODO.
-
diff --git a/Quinteti.activity/TODO b/Quinteti.activity/TODO
deleted file mode 100644
index 8c4e165..0000000
--- a/Quinteti.activity/TODO
+++ /dev/null
@@ -1,6 +0,0 @@
-Algunas mejoras que serían interesantes:
-- Restaurar un juego
-- Jugar por red (modo colaborativo)
-- Temas (skins) intercambiables (definidas en archivos externos).
-- Al terminar el juego marcar las líneas que ganó cada jugador (usando distintos colores).
-
diff --git a/Quinteti.activity/activity.py b/Quinteti.activity/activity.py
deleted file mode 100644
index d740780..0000000
--- a/Quinteti.activity/activity.py
+++ /dev/null
@@ -1,48 +0,0 @@
-#!/usr/bin/python
-# -*- coding: iso-8859-1 -*-
-#
-# Copyright 2008, 2009 Pablo Moleri, ceibalJAM
-# This file is part of Quinteti.
-#
-# Quinteti is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# Quinteti is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with Quinteti. If not, see <http://www.gnu.org/licenses/>.
-
-"""Quinteti Activity main module for Sugar import.
-
-This Activity is based on olpcgames.PyGameActivity.
-The activity attributa game_name is the module name that
-has the main() function."""
-
-from sugar.activity.activity import ActivityToolbox, ActivityToolbar
-from olpcgames import activity
-from gettext import gettext as _
-import gtk
-
-# PyGameActivity: http://www.vrplumber.com/sugar-docs/olpcgames.activity.html
-class Quinteti(activity.PyGameActivity):
- """Set up QuinTeTi activity."""
- game_name = 'main' # Module name with main() function.
- game_title = _('QuinTeTi')
- game_size = None
-
- def build_toolbar(self):
- """
- Overrides to remove collaboration button
- """
- toolbar = ActivityToolbar(self)
- toolbar.share.hide() # Oculta el combo de share
- toolbar.show()
- self.set_toolbox(toolbar)
-
- toolbar.title.unset_flags(gtk.CAN_FOCUS)
- return toolbar
diff --git a/Quinteti.activity/activity/activity-quinteti.svg b/Quinteti.activity/activity/activity-quinteti.svg
deleted file mode 100644
index 8544375..0000000
--- a/Quinteti.activity/activity/activity-quinteti.svg
+++ /dev/null
@@ -1,70 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
- <!ENTITY stroke_color "#666666">
- <!ENTITY fill_color "#FFFFFF">
-]>
-<svg
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.0"
- width="64"
- height="64"
- id="svg2">
- <defs
- id="defs4" />
- <g
- id="layer1">
- <g>
- <path
- d="M 311.42857,239.50504 A 121.42857,121.42857 0 1 1 68.571426,239.50504 A 121.42857,121.42857 0 1 1 311.42857,239.50504 z"
- transform="matrix(0.1150798,0,0,0.1191177,-5.2916369,-12.923748)"
- id="path2383"
- style="opacity:0.75;fill:&fill_color;;fill-opacity:1;stroke:none;stroke-width:6;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
- <text
- x="10.689248"
- y="22.166576"
- id="text3164"
- xml:space="preserve"
- style="font-size:18px;font-style:normal;font-weight:normal;fill:&stroke_color;;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"><tspan
- x="10.689248"
- y="22.166576"
- id="tspan3166">1</tspan></text>
- </g>
- <g>
- <path
- d="M 311.42857,239.50504 A 121.42857,121.42857 0 1 1 68.571426,239.50504 A 121.42857,121.42857 0 1 1 311.42857,239.50504 z"
- transform="matrix(0.1150798,0,0,0.1191177,-5.2916369,19.219109)"
- id="path2393"
- style="opacity:0.75;fill:&fill_color;;fill-opacity:1;stroke:none;stroke-width:6;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
- <text
- x="10.939736"
- y="54.181992"
- id="text3168"
- xml:space="preserve"
- style="font-size:18px;font-style:normal;font-weight:normal;fill:&stroke_color;;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"><tspan
- x="10.939736"
- y="54.181992"
- id="tspan3170">5</tspan></text>
- </g>
- <g
- transform="matrix(1.0090105,0,0,1.0090105,19.394277,1.8596993)"
- id="terron">
- <path
- d="M 38.822128,44.108722 C 38.822128,44.108722 38.445765,44.108722 38.092819,44.108722 C 38.092819,42.747378 38.097001,38.459638 38.097001,37.325183 C 38.097001,37.325183 38.097001,37.325183 38.097001,37.323527 L 38.097001,24.562988 L 38.089474,16.811436 C 38.086128,15.932855 37.361837,15.224857 36.48031,15.228997 C 36.052928,15.228997 35.648965,15.396267 35.347873,15.696856 C 35.045946,15.999101 34.882019,16.399058 34.883691,16.823857 C 34.883691,16.863604 34.885364,19.358576 34.887873,21.45773 L 22.071438,21.45773 C 20.330965,21.45773 18.920019,22.854682 18.920019,24.575409 L 18.920019,26.300276 L 13.265364,26.303588 C 12.377982,26.309384 11.663728,27.024008 11.667074,27.896793 C 11.668746,28.321592 11.837691,28.719892 12.141291,29.017998 C 12.446565,29.316931 12.850528,29.479232 13.277073,29.477576 C 13.326419,29.477576 16.696965,29.47592 18.919182,29.474263 L 18.919182,37.014658 C 18.919182,37.02625 18.915837,37.036187 18.915837,37.046952 C 18.915837,37.104917 18.919182,42.545329 18.919182,44.107894 C 18.567073,44.107894 18.189873,44.107894 18.189873,44.107894 C 17.285765,44.125284 16.584055,44.849844 16.59911,45.724285 C 16.61751,46.601209 17.351837,47.296787 18.234201,47.279397 L 20.537546,47.277741 C 21.439146,47.26118 22.145037,46.535792 22.126637,45.661352 L 22.123292,40.442034 L 34.887873,40.442034 L 34.882019,45.661352 C 34.865292,46.53662 35.571182,47.262009 36.472783,47.277741 L 38.774455,47.279397 C 39.661,47.296787 40.393656,46.601209 40.411219,45.724285 C 40.428782,44.849844 39.723728,44.126112 38.822128,44.108722 z M 30.604855,25.673428 C 31.197837,25.590621 31.748164,25.999687 31.832637,26.587615 C 31.917946,27.174716 31.50311,27.720413 30.910128,27.804876 C 30.3138,27.887683 29.76431,27.476962 29.680673,26.890689 C 29.595365,26.301932 30.010201,25.756235 30.604855,25.673428 z M 24.950201,26.467545 C 25.542346,26.384739 26.09351,26.793805 26.177147,27.381734 C 26.262455,27.97049 25.847619,28.513703 25.255473,28.598995 C 24.659146,28.683458 24.109656,28.272735 24.026019,27.684807 C 23.941546,27.096049 24.353874,26.552009 24.950201,26.467545 z M 26.384565,35.548148 C 25.364201,34.827728 23.744165,32.814693 24.326273,31.447552 C 24.532019,30.966443 24.984492,31.265376 25.47711,31.509657 C 26.653037,32.10421 28.05311,32.180392 29.308492,31.805277 C 29.946637,31.614821 30.491946,31.305951 31.012165,30.893574 C 31.328309,30.641012 32.191437,29.636565 32.666491,30.090346 C 33.037837,30.445588 33.101401,30.886121 33.101401,30.890261 C 33.634164,34.258844 29.418891,37.688706 26.384565,35.548148 z"
- id="cuerpo"
- style="fill:&stroke_color;" />
- <path
- d="M 17.233073,11.642631 C 18.971874,8.6971904 24.424965,8.6756607 25.411873,12.233044 C 25.743073,13.428775 25.717147,16.000757 24.39151,16.697991 C 23.925655,16.943099 23.764237,16.42804 23.540092,15.929543 C 23.003146,14.736296 21.969401,13.79975 20.755837,13.307049 C 20.139437,13.055317 19.519691,12.950152 18.853946,12.946839 C 18.446637,12.943527 17.137728,13.184495 17.060783,12.532805 C 17.000564,12.027683 17.233073,11.644287 17.233073,11.642631 z"
- id="pelo_oscuro"
- style="fill:&stroke_color;" />
- <g
- transform="matrix(0.8363636,0,0,0.8280687,4.3773279,7.643887)"
- id="pelo_claro">
- <path
- d="M 30.514,13.666 C 25.959,9.955 27.36,0.759 33.675,0.043 C 35.799,-0.198 40.171,0.537 41.006,2.954 C 41.299,3.802 40.382,3.936 39.473,4.18 C 37.299,4.765 35.434,6.261 34.273,8.172 C 33.681,9.144 33.342,10.161 33.16,11.281 C 33.047,11.964 33.108,14.236 31.982,14.194 C 31.107,14.162 30.516,13.668 30.514,13.666 z"
- id="path2674"
- style="fill:&stroke_color;" />
- </g>
- </g>
- </g>
-</svg>
diff --git a/Quinteti.activity/activity/activity.info b/Quinteti.activity/activity/activity.info
deleted file mode 100644
index c280080..0000000
--- a/Quinteti.activity/activity/activity.info
+++ /dev/null
@@ -1,7 +0,0 @@
-[Activity]
-name = Quinteti
-service_name = org.ceibaljam.Quinteti
-class = activity.Quinteti
-icon = activity-quinteti
-activity_version = 3
-show_launcher = yes
diff --git a/Quinteti.activity/gui/1.png b/Quinteti.activity/gui/1.png
deleted file mode 100644
index c8406dc..0000000
--- a/Quinteti.activity/gui/1.png
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/1selected.png b/Quinteti.activity/gui/1selected.png
deleted file mode 100644
index d7bb372..0000000
--- a/Quinteti.activity/gui/1selected.png
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/2.png b/Quinteti.activity/gui/2.png
deleted file mode 100644
index 73477b5..0000000
--- a/Quinteti.activity/gui/2.png
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/2selected.png b/Quinteti.activity/gui/2selected.png
deleted file mode 100644
index 394e837..0000000
--- a/Quinteti.activity/gui/2selected.png
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/3.png b/Quinteti.activity/gui/3.png
deleted file mode 100644
index 03a2215..0000000
--- a/Quinteti.activity/gui/3.png
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/3selected.png b/Quinteti.activity/gui/3selected.png
deleted file mode 100644
index 7d52ce8..0000000
--- a/Quinteti.activity/gui/3selected.png
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/4.png b/Quinteti.activity/gui/4.png
deleted file mode 100644
index 8e254cd..0000000
--- a/Quinteti.activity/gui/4.png
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/4selected.png b/Quinteti.activity/gui/4selected.png
deleted file mode 100644
index 9554a85..0000000
--- a/Quinteti.activity/gui/4selected.png
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/5.png b/Quinteti.activity/gui/5.png
deleted file mode 100644
index 1ff2e49..0000000
--- a/Quinteti.activity/gui/5.png
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/5selected.png b/Quinteti.activity/gui/5selected.png
deleted file mode 100644
index 7b35178..0000000
--- a/Quinteti.activity/gui/5selected.png
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/6.png b/Quinteti.activity/gui/6.png
deleted file mode 100644
index bea0349..0000000
--- a/Quinteti.activity/gui/6.png
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/6selected.png b/Quinteti.activity/gui/6selected.png
deleted file mode 100644
index 72be814..0000000
--- a/Quinteti.activity/gui/6selected.png
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/7.png b/Quinteti.activity/gui/7.png
deleted file mode 100644
index 58af7ad..0000000
--- a/Quinteti.activity/gui/7.png
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/7selected.png b/Quinteti.activity/gui/7selected.png
deleted file mode 100644
index 9eab0ee..0000000
--- a/Quinteti.activity/gui/7selected.png
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/8.png b/Quinteti.activity/gui/8.png
deleted file mode 100644
index d5031b7..0000000
--- a/Quinteti.activity/gui/8.png
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/8selected.png b/Quinteti.activity/gui/8selected.png
deleted file mode 100644
index 3120ea0..0000000
--- a/Quinteti.activity/gui/8selected.png
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/9.png b/Quinteti.activity/gui/9.png
deleted file mode 100644
index 05d27c9..0000000
--- a/Quinteti.activity/gui/9.png
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/9selected.png b/Quinteti.activity/gui/9selected.png
deleted file mode 100644
index ab4e6ba..0000000
--- a/Quinteti.activity/gui/9selected.png
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/__init__.py b/Quinteti.activity/gui/__init__.py
deleted file mode 100644
index e69de29..0000000
--- a/Quinteti.activity/gui/__init__.py
+++ /dev/null
diff --git a/Quinteti.activity/gui/background.png b/Quinteti.activity/gui/background.png
deleted file mode 100644
index 231a526..0000000
--- a/Quinteti.activity/gui/background.png
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/board.py b/Quinteti.activity/gui/board.py
deleted file mode 100644
index 8fc69f4..0000000
--- a/Quinteti.activity/gui/board.py
+++ /dev/null
@@ -1,383 +0,0 @@
-#!/usr/bin/python
-# -*- coding: iso-8859-1 -*-
-#
-# Copyright 2008, 2009 Pablo Moleri, ceibalJAM
-# This file is part of Quinteti.
-#
-# Quinteti is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# Quinteti is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with Quinteti. If not, see <http://www.gnu.org/licenses/>.
-
-"""Board represents the game board, and its capable of paint its elements in a given surface."""
-
-import pygame
-
-import os
-
-from logic.game import GameState
-
-from button import Button
-from cell import Cell
-
-file_dir = "gui/"
-
-image_fondo = file_dir + "background.png"
-image_tablero = file_dir + "tablero.png"
-image_null = "nulo.bmp"
-image_number = "<N>.png"
-image_disabled_number = "<N>selected.png"
-image_size = pygame.Rect(0, 0, 97, 97)
-
-new_image_coords = (180, 87)
-new_image = "quinteti-new.png"
-
-instructions_coords = (950, 745)
-instructions_button = "instructions_button.png"
-instructions_image = "instructions.png"
-
-mode_man_man_image = "man-vs-man.png"
-mode_man_man_coords = (970, 20)
-mode_man_pc_image = "man-vs-computer.png"
-mode_man_pc_coords = (800, 20)
-
-player_win_image = "player_win.png"
-
-score_sound_file = file_dir + "jupeee.ogg"
-
-font_name = "DejaVu Serif" #"DejaVuLGCSerif.ttf" # None to load pygame default font
-font_size = 24
-user_font_color = (255, 255, 255)
-
-"""Class Board keeps all the grafical elements as well as a reference to the logical game state."""
-class Board:
-
- # Center of initial number positions
- number_locations = [
- ([756+138*0, 231+138*0]),
- ([756+138*1, 231+138*0]),
- ([756+138*2, 231+138*0]),
- ([756+138*0, 231+138*1]),
- ([756+138*1, 231+138*1]),
- ([756+138*2, 231+138*1]),
- ([756+138*0, 231+138*2]),
- ([756+138*1, 231+138*2]),
- ([756+138*2, 231+138*2])]
-
- screen = None
- # Center of board cells
- locations = [
- ([267, 228]),
- ([404, 228]),
- ([541, 228]),
- ([267, 367]),
- ([404, 367]),
- ([541, 367]),
- ([267, 510]),
- ([404, 510]),
- ([541, 510])]
-
- players_name_midleft_location = [
- (200, 667),
- (200, 752)]
-
- players_score_center_location = [
- (581, 667),
- (581, 752)]
-
- players_score_box_location = [
- (173, 628),
- (173, 714)]
-
- def __init__(self, screen, game = None):
- self.font = None
- if font_name:
- self.font = pygame.font.SysFont(font_name, font_size)
-
- if not self.font:
- self.font = pygame.font.Font(None, font_size)
-
- self.mode = "PC"
- self.screen = screen
- self.game = game
- self.showing_instructions = False
- self.score_sound = pygame.mixer.Sound(score_sound_file)
- self.init_board()
-
- def init_board (self):
- self.new_button = Button(new_image_coords, file_dir + new_image, self.new_game)
- self.instructions_button = Button(instructions_coords, file_dir + instructions_button, self._show_instructions)
- self.mode_man_man_button = Button(mode_man_man_coords, file_dir + mode_man_man_image, self.change_to_man_man)
- self.mode_man_pc_button = Button(mode_man_pc_coords, file_dir + mode_man_pc_image, self.change_to_man_pc)
-
- if self.mode == "PC":
- self.mode_man_pc_button.set_selected(True)
- else:
- self.mode_man_man_button.set_selected(True)
-
- self.cells = []
- self.numbers = []
- self.lastSelectedBoardCell = None
- self.lastSelectedNumberCell = None
-
- self.backgroundImage = pygame.image.load(image_fondo)
-
- self._init_cells()
- self._init_numbers()
-
- # Creates a sprite group, with all the board visible elements inside
- self._paint_background()
- self.items = pygame.sprite.Group()
- self.items.add(self.new_button)
- self.items.add(self.instructions_button)
- self.items.add(self.mode_man_man_button)
- self.items.add(self.mode_man_pc_button)
-
- for n in self.numbers:
- self.items.add(n)
-
- self.selected_numbers = []
-
- self.arrange_gui() # Arranges the gui according to the game state.
-
- self.computer_turn = False
-
- def new_game(self):
- self.game = GameState("", "")
- self.init_board()
-
- def change_to_man_man(self):
- self.mode = "MAN"
- self.game = GameState("", "")
- self.init_board()
-
- def change_to_man_pc(self):
- self.mode = "PC"
- self.game = GameState("", "")
- self.init_board()
-
- def _init_cells(self):
- i = 1
- for row in range(1, 4):
- for col in range(1, 4):
- if self.game:
- number = self.game.get_cell(row, col)[0]
- else:
- number = None
- location = self.locations[i-1]
- self.cells.append( Cell(location, None, None, i, image_size) )
- i += 1
-
- def _init_numbers(self):
- k = 0
- for location in self.number_locations:
- k += 1
- normal_image = self._get_number(k)
- selected_image = self._get_disabled_number(k)
- self.numbers.append( Cell(location, normal_image, selected_image, k, image_size) )
-
- def set_players(self, name_player1, name_player2):
- self.game = GameState(name_player1, name_player2)
-
- def _paint_background(self):
- rect = self.backgroundImage.get_rect()
- rect.topleft = (0, 0)
- self.screen.blit(self.backgroundImage, rect)
-
- def _paint_winner(self, i):
- image = pygame.image.load(file_dir + player_win_image)
- rect = image.get_rect()
- rect.topleft = self.players_score_box_location[i]
- self.screen.blit(image, rect)
-
- def _paint_players_status(self):
- player1Name = ""
- player2Name = ""
-
- if (self.game):
- for i in range(1,3):
- if self.game.get_enabled_player():
- if self.game.get_enabled_player() == i:
- self.font.set_bold(True)
- else:
- self.font.set_bold(False)
- else:
- if self.game.get_player_score(i) >= self.game.get_player_score(3-i):
- self._paint_winner(i-1)
-
- player_name = self.game.get_player_name(i)
- #str_player = 'Jugador %s: %s' % (i, player_name)
- str_player = 'Jugador %s' % (i)
- name_surface = self.font.render(str_player, 1, user_font_color)
- name_rect = name_surface.get_rect()
- name_rect.midleft = self.players_name_midleft_location[i-1]
- self.screen.blit(name_surface, name_rect)
-
- player_score = self.game.get_player_score(i)
- str_player_score = '%s' % (player_score)
- score_surface = self.font.render(str_player_score, 1, user_font_color)
- score_rect = score_surface.get_rect()
- score_rect.center = self.players_score_center_location[i-1]
- self.screen.blit(score_surface, score_rect)
-
- def paint_board_elements(self):
- # Using an sprite group all the items are painted:
-
- #self.items.clear(self.screen, self.backgroundImage) # If only sprites are cleared, players scores remain
- self._paint_background() # Instead, the whole background is repainted
- self.items.draw(self.screen)
- self._paint_players_status()
-
- if self.showing_instructions:
- self._paint_instructions()
-
- def _paint_instructions(self):
- image = pygame.image.load(file_dir + instructions_image)
- rect = image.get_rect()
- rect.center = self.screen.get_rect().center
- self.screen.blit(image, rect)
-
- def arrange_gui(self):
- """Arranges the numbers according to the game state."""
-
- # First moves all the numbers to its original positions
- i = 0
- for number in self.numbers:
- number.rect.center = self.number_locations[i]
- i += 1
-
- # Then for each occupied cell, moves the number to that cell
- coords = [ (row,col) for row in range(1,4) for col in range(1,4) ]
- i = 0
- for row, col in coords:
- cell = self.game.get_cell(row, col)
- if cell:
- number, player = cell
- if number > 0:
- gui_number = self.numbers[number-1]
- gui_cell = self.cells[i]
- gui_number.rect.center = gui_cell.rect.center
- i += 1
-
- for number in self.numbers:
- if number in self.selected_numbers:
- number.set_selected(True)
- else:
- number.set_selected(False)
-
- def processXY(self, x, y):
- """Processes the x,y coordinates of a click."""
-
- # If is showing instructions, it disables them
- if self.showing_instructions:
- self.showing_instructions = False
- return
- else:
- if self.instructions_button.coords_in(x, y):
- self.instructions_button.callback()
-
- # Checks if the selected coordinate is a board cell
- isCell = False
- for c in self.cells:
- if c.coords_in(x, y):
- isCell = True
- self.lastSelectedBoardCell = c
-
- if self.lastSelectedNumberCell != None:
- number = self.lastSelectedNumberCell.id_cell
- row, col = c.get_pos()
- self.make_move(number, row, col)
- break
-
- # Checks if the selected coordinate is a number
- if isCell == False:
- for n in self.numbers:
- if n.coords_in(x,y):
- if self.lastSelectedNumberCell:
- self.lastSelectedNumberCell.set_selected(False)
- self.lastSelectedNumberCell = n
- n.set_selected(True)
-
- if self.new_button.coords_in(x, y):
- self.new_button.callback()
-
- elif self.mode_man_man_button.coords_in(x, y):
- self.mode_man_man_button.callback()
-
- elif self.mode_man_pc_button.coords_in(x, y):
- self.mode_man_pc_button.callback()
-
- return True
-
- def make_move(self, number, row, col):
- """ Attempts to make the move of the las selected number to the given position. """
-
- # Find the number
- for n in self.numbers:
- if n.id_cell == number:
- self.lastSelectedNumberCell = n
-
- # Find the cell
- for c in self.cells:
- if (row, col) == c.get_pos():
- self.lastSelectedBoardCell = c
-
- player = self.game.get_enabled_player()
- ok, hits = self.game.make_move(row, col, self.lastSelectedNumberCell.id_cell, player)
- if ok:
- if hits:
- self.score_sound.play()
- # Sets a timer to update blinked cells in one second
- pygame.time.set_timer(pygame.USEREVENT + 1, 1500)
- self.selected_numbers = [number for number in self.numbers if number.id_cell in hits]
-
- # Sets the flag to make the computer play after the timer
- player = self.game.get_enabled_player()
- if player == 2 and self.mode=="PC":
- self.computer_turn = True
- else:
- # The computer makes an automatic move
- player = self.game.get_enabled_player()
- if player == 2 and self.mode=="PC":
- (number, row, col) = self.game.auto_play(player)
- self.make_move(number, row, col)
-
- self.arrange_gui()
-
- def user_event(self, event):
- pygame.time.set_timer(pygame.USEREVENT + 1, 0)
- if event.type == pygame.USEREVENT + 1:
- # Deselect all numbers
- self.selected_numbers = []
- self.arrange_gui()
-
- if self.computer_turn:
- player = self.game.get_enabled_player()
- if player == 2:
- (number, row, col) = self.game.auto_play(player)
- self.make_move(number, row, col)
-
- def _show_instructions(self):
- self.showing_instructions = True
-
- def _get_number(self, number):
- if (number == None) or (number == 0):
- return None
- else:
- path = os.path.join(file_dir, image_number.replace("<N>", str(number)))
- return pygame.image.load(path)
-
- def _get_disabled_number(self, number):
- if (number == None) or (number == 0):
- return None
- else:
- path = os.path.join(file_dir, image_disabled_number.replace("<N>", str(number)))
- return pygame.image.load(path)
diff --git a/Quinteti.activity/gui/button.py b/Quinteti.activity/gui/button.py
deleted file mode 100644
index 4dfed4c..0000000
--- a/Quinteti.activity/gui/button.py
+++ /dev/null
@@ -1,61 +0,0 @@
-#!/usr/bin/python
-# -*- coding: iso-8859-1 -*-
-#
-# Copyright 2008, 2009 Pablo Moleri, ceibalJAM
-# This file is part of Quinteti.
-#
-# Quinteti is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# Quinteti is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with Quinteti. If not, see <http://www.gnu.org/licenses/>.
-
-import pygame
-
-"""Button is a PyGame Sprite with a callback function."""
-
-class Button(pygame.sprite.Sprite):
- def __init__(self, initial_position, image_name, callback):
-
- pygame.sprite.Sprite.__init__(self)
-
- self.selected = False
-
- self.image_name = image_name
- self.set_image(image_name)
-
- self.rect = self.image.get_rect()
- self.rect.topleft = initial_position # Moves the recteangle to its predetermined center
-
- self.callback = callback
-
-
- def coords_in(self, x, y):
- if self.rect.collidepoint(x, y):
- return True
- return False
-
- def set_image(self, nomImage):
- if nomImage:
- self.image = pygame.image.load(nomImage)
- else:
- self.image = None
-
- def set_selected(self, selected):
- self.selected = selected
-
- self.set_image(self.image_name)
-
- if selected:
- rect = self.image.get_rect()
-
- dash = pygame.Rect(rect.left, rect.bottom-3, rect.width, 3)
- black = pygame.Color("0x000000F8")
- self.image.fill(black, dash)
diff --git a/Quinteti.activity/gui/cell.py b/Quinteti.activity/gui/cell.py
deleted file mode 100644
index 83930aa..0000000
--- a/Quinteti.activity/gui/cell.py
+++ /dev/null
@@ -1,64 +0,0 @@
-#!/usr/bin/python
-# -*- coding: iso-8859-1 -*-
-#
-# Copyright 2008, 2009 Pablo Moleri, ceibalJAM
-# This file is part of Quinteti.
-#
-# Quinteti is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# Quinteti is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with Quinteti. If not, see <http://www.gnu.org/licenses/>.
-
-import pygame
-
-"""Cell is a PyGame Sprite, capable of loading an image and retain a cell identifier."""
-
-class Cell(pygame.sprite.Sprite):
-
- def __init__(self, initial_position, image, selected_image, id_cell, size_rect):
-
- pygame.sprite.Sprite.__init__(self)
-
- self.id_cell = id_cell
-
- self.rect = size_rect.move(0, 0) # Attempting to move creates a copy
- self.rect.center = initial_position # Moves the recteangle to its predetermined center
-
- self.normal_image = image
- self.selected_image = selected_image
-
- if image:
- self.set_selected(False)
-
- def coords_in(self, x, y):
- #print "Test x: %s < %s < %s Test y: %s < %s < %s" % (self.rect.left, x, self.rect.right, self.rect.top, y, self.rect.bottom)
- if ( self.rect.collidepoint(x, y) ):
- return True
- return False
-
- def set_selected(self, selected):
- self.selected = selected
- if self.selected:
- self.image = self.selected_image
- else:
- self.image = self.normal_image
-
- def get_pos(self):
- row = (self.id_cell - 1) / 3 + 1
- col = (self.id_cell - 1) % 3 + 1
- return row, col
-
-if __name__ == "__main__":
- '''Debug Code.'''
- image_size = pygame.Rect(0, 0, 97, 97)
- cell = Cell([0, 0], "1.png", 6, image_size)
- row, col = cell.get_pos()
- print "%s %s" % (row, col)
diff --git a/Quinteti.activity/gui/instructions.png b/Quinteti.activity/gui/instructions.png
deleted file mode 100644
index a69cd8f..0000000
--- a/Quinteti.activity/gui/instructions.png
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/instructions_button.png b/Quinteti.activity/gui/instructions_button.png
deleted file mode 100644
index 8271cab..0000000
--- a/Quinteti.activity/gui/instructions_button.png
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/jupeee.ogg b/Quinteti.activity/gui/jupeee.ogg
deleted file mode 100644
index f89adbe..0000000
--- a/Quinteti.activity/gui/jupeee.ogg
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/man-vs-computer.png b/Quinteti.activity/gui/man-vs-computer.png
deleted file mode 100644
index 160da1b..0000000
--- a/Quinteti.activity/gui/man-vs-computer.png
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/man-vs-man.png b/Quinteti.activity/gui/man-vs-man.png
deleted file mode 100644
index b49ff0e..0000000
--- a/Quinteti.activity/gui/man-vs-man.png
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/player_win.png b/Quinteti.activity/gui/player_win.png
deleted file mode 100644
index e9e6be2..0000000
--- a/Quinteti.activity/gui/player_win.png
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/quinteti-new.png b/Quinteti.activity/gui/quinteti-new.png
deleted file mode 100644
index 1659917..0000000
--- a/Quinteti.activity/gui/quinteti-new.png
+++ /dev/null
Binary files differ
diff --git a/Quinteti.activity/gui/standardcursor.xbm b/Quinteti.activity/gui/standardcursor.xbm
deleted file mode 100644
index e01881a..0000000
--- a/Quinteti.activity/gui/standardcursor.xbm
+++ /dev/null
@@ -1,22 +0,0 @@
-#define standardcursor_width 40
-#define standardcursor_height 40
-#define standardcursor_x_hot 0
-#define standardcursor_y_hot 0
-static unsigned char standardcursor_bits[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff,
- 0xff, 0x3f, 0x00, 0xfc, 0xff, 0xff, 0x7f, 0x00, 0xfc, 0xff, 0xff, 0xff,
- 0x00, 0xfc, 0xff, 0xff, 0xff, 0x00, 0xfc, 0xff, 0xff, 0xff, 0x00, 0xfc,
- 0xff, 0xff, 0xff, 0x00, 0xfc, 0xff, 0xff, 0x7f, 0x00, 0xfc, 0xff, 0xff,
- 0x3f, 0x00, 0xfc, 0xff, 0x00, 0x00, 0x00, 0xfc, 0xff, 0x01, 0x00, 0x00,
- 0xfc, 0xff, 0x03, 0x00, 0x00, 0xfc, 0xff, 0x07, 0x00, 0x00, 0xfc, 0xff,
- 0x0f, 0x00, 0x00, 0xfc, 0xff, 0x1f, 0x00, 0x00, 0xfc, 0xfb, 0x3f, 0x00,
- 0x00, 0xfc, 0xf3, 0x7f, 0x00, 0x00, 0xfc, 0xe3, 0xff, 0x00, 0x00, 0xfc,
- 0xc3, 0xff, 0x01, 0x00, 0xfc, 0x83, 0xff, 0x03, 0x00, 0xfc, 0x03, 0xff,
- 0x07, 0x00, 0xfc, 0x03, 0xfe, 0x0f, 0x00, 0xfc, 0x03, 0xfc, 0x1f, 0x00,
- 0xfc, 0x03, 0xf8, 0x3f, 0x00, 0xfc, 0x03, 0xf0, 0x7f, 0x00, 0xfc, 0x03,
- 0xe0, 0xff, 0x00, 0xfc, 0x03, 0xc0, 0xff, 0x01, 0xfc, 0x03, 0x80, 0xff,
- 0x01, 0xfc, 0x03, 0x00, 0xff, 0x01, 0xf8, 0x01, 0x00, 0xfe, 0x03, 0xf0,
- 0x00, 0x00, 0xfc, 0x01, 0x00, 0x00, 0x00, 0xf8, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };
diff --git a/Quinteti.activity/gui/standardcursor_mask.xbm b/Quinteti.activity/gui/standardcursor_mask.xbm
deleted file mode 100644
index a06d085..0000000
--- a/Quinteti.activity/gui/standardcursor_mask.xbm
+++ /dev/null
@@ -1,17 +0,0 @@
-#define standardcursor_width 40
-#define standardcursor_height 40
-static unsigned char standardcursor_bits[] = {
- 0xff,0xff,0xff,0xff,0x00,0xff,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0xff,0x03,
- 0xff,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0xff,0x07,
- 0xff,0xff,0xff,0xff,0x07,0xff,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0xff,0x03,
- 0xff,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0xff,0x00,
- 0xff,0xff,0x3f,0x00,0x00,0xff,0xff,0x7f,0x00,0x00,0xff,0xff,0xff,0x00,0x00,
- 0xff,0xff,0xff,0x01,0x00,0xff,0xff,0xff,0x03,0x00,0xff,0xff,0xff,0x07,0x00,
- 0xff,0xff,0xff,0x0f,0x00,0xff,0xff,0xff,0x1f,0x00,0xff,0xff,0xff,0x3f,0x00,
- 0xff,0xff,0xff,0x7f,0x00,0xff,0xef,0xff,0xff,0x00,0xff,0xcf,0xff,0xff,0x01,
- 0xff,0x8f,0xff,0xff,0x03,0xff,0x0f,0xff,0xff,0x07,0xff,0x0f,0xfe,0xff,0x07,
- 0xff,0x0f,0xfc,0xff,0x0f,0xff,0x0f,0xf8,0xff,0x0f,0xff,0x0f,0xf0,0xff,0x0f,
- 0xff,0x0f,0xe0,0xff,0x0f,0xff,0x0f,0xc0,0xff,0x0f,0xfe,0x07,0x80,0xff,0x07,
- 0xfc,0x03,0x00,0xff,0x07,0x60,0x00,0x00,0xfe,0x03,0x00,0x00,0x00,0xf8,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00};
diff --git a/Quinteti.activity/logic/__init__.py b/Quinteti.activity/logic/__init__.py
deleted file mode 100644
index e69de29..0000000
--- a/Quinteti.activity/logic/__init__.py
+++ /dev/null
diff --git a/Quinteti.activity/logic/game.py b/Quinteti.activity/logic/game.py
deleted file mode 100644
index b3b20cb..0000000
--- a/Quinteti.activity/logic/game.py
+++ /dev/null
@@ -1,240 +0,0 @@
-#!/usr/bin/python
-# -*- coding: iso-8859-1 -*-
-#
-# Copyright 2008, 2009 Pablo Moleri
-# This file is part of Quinteti.
-#
-# Quinteti is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# Quinteti is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with Quinteti. If not, see <http://www.gnu.org/licenses/>.
-
-"""GamesState, keeps the state of a game, and encloses game logic."""
-
-import random
-
-class GameState:
-
- def __init__(self, player_1, player_2, matrix_size=3, target_score=15):
- ''' Creates a new game with the given players. '''
-
- self.player_1_name = player_1
- self.player_2_name = player_2
- self.player_1_score = 0
- self.player_2_score = 0
- self.turn = 1
- self.target_score = target_score
- self.matrix = []
- self.state = []
- for i in range(0, matrix_size):
- self.matrix.append([])
- self.state.append([])
- for j in range(0, matrix_size):
- self.matrix[i].append(0)
- self.state[i].append(None)
- self.numbers = range(1, len(self.matrix[0])*len(self.matrix)+1)
-
- def fromString(string):
- """A static method for loading a new game from a serialized game string."""
-
- dic = eval(string)
- state = dic['state']
- matrix = dic['matrix']
- size = len(matrix)
- game = GameState(dic['player_1_name'], dic['player_2_name'], size, dic['target_score'])
- game.matrix = matrix
- game.state = state
- game.player_1_name = dic['player_1_name']
- game.player_2_name = dic['player_2_name']
- game.player_1_score = dic['player_1_score']
- game.player_2_score = dic['player_2_score']
-
- #Saca los numeros jugados:
- for row in game.matrix:
- for number in row:
- if number in game.numbers:
- game.numbers.remove(number)
- return game
-
- fromString = staticmethod(fromString) # Maps the function as an static class attribute
-
- def serialization(self):
- """Returns the game in a serialized string format."""
-
- return str(self)
-
-
- def get_cell(self, row1, col1):
- """Returns the cell state: (number, player) Or None."""
- row, col = row1-1, col1-1
- return (self.matrix[row][col], self.state[row][col])
-
- def get_available_numbers(self):
- """Returns the list of available numbers (no played)."""
-
- return self.numbers
-
- def make_move(self, row1, col1, number, player):
- """Makes a move with the given number in the given cell.
-
- Returns a boolean if the move is valid and the score difference.
- """
-
- ok, hits, score = self._make_move(row1, col1, number, player, True)
- return ok, hits
-
- def _make_move(self, row1, col1, number, player, real):
- """Makes a move with the given number in the given cell.
-
- Returns a boolean if the move is valid and the score difference.
- """
-
- row, col = (row1-1, col1-1)
- if (self.state[row][col] == None):
- if (self.turn == player):
- if (number in self.numbers):
- # shadow copy of the given column
- col_list = [fila[col] for fila in self.matrix]
-
- # shadow copy of the given row
- row_list = self.matrix[row][:]
-
- hits = [] # collection of posistions that made points
-
- # Test the move
- col_score = self._check_action(col_list, row, number)
- row_score = self._check_action(row_list, col, number)
- score = col_score + row_score
-
- if col_score:
- hits.extend(col_list)
-
- if row_score:
- hits.extend(row_list)
-
- if real:
- self.state[row][col] = self.turn
- self.matrix[row][col] = number
- self.numbers.remove(number)
-
- if self.turn == 1:
- self.player_1_score += score
- self.turn = 2
- else:
- self.player_2_score += score
- self.turn = 1
- return True, hits, score
-# else:
-# print "invalid number"
-# else:
-# print "invalid player"
-# else:
-# print "invalid cell state"
-
- return False, None, 0
-
- def _check_action(self, list, pos, number):
- """Tests if a move in a row (or column) scores."""
-
- list[pos] = number
- if 0 in list:
- return 0
- if sum(list) == self.target_score:
- return 1
- else:
- return 0
-
- def get_enabled_player(self):
- """Returns the turn (enabled player) or None if the game is over."""
- if len(self.numbers) == 0:
- return None
- else:
- return self.turn
-
- def get_player_score(self, player):
- if player == 1 :
- return self.player_1_score
- else:
- return self.player_2_score
-
- def get_player_name(self, player):
- if player == 1 :
- return self.player_1_name
- else:
- return self.player_2_name
-
- def get_player_count(self):
- return 2
-
- def __str__( self ):
- dic = {
- 'state': self.state,
- 'matrix': self.matrix,
- 'player_1_name': self.player_1_name,
- 'player_2_name': self.player_2_name,
- 'player_1_score': self.player_1_score,
- 'player_2_score': self.player_2_score,
- 'target_score': self.target_score}
- return str(dic)
-
-
- def auto_play(self, player):
- '''Returns an automatic play from computer.
-
- The strategy is:
- - Try to make 2 points.
- - Try to make 1 point.
- - Try to make a move that enables two different points (make tha game more interesting).
- - Random move that doesn't enable the other player to make a point.
- - Random move.
- '''
-
- options = [(row, col)
- for row in range(1, len(self.matrix) + 1)
- for col in range(1, len(self.matrix) + 1)
- if self.matrix[row-1][col-1] == 0]
- print options
-
- # Try two points
- for row, col in options:
- for number in self.numbers:
- ok, hits, score = self._make_move(row, col, number, player, False)
- if score >= 2:
- return (number, row, col)
-
- # Try one point
- for row, col in options:
- for number in self.numbers:
- ok, hits, score = self._make_move(row, col, number, player, False)
- if score >= 1:
- return (number, row, col)
-
- # Random
- row, col = random.choice(options)
- number = random.choice(self.numbers)
- return (number, row, col)
-
-
-if __name__ == "__main__":
- """Module test function."""
-
- game = GameState("Juan", "Pablo")
- print game.target_score
-
- game.make_move(0, 1, 2, 1)
- game.make_move(1, 1, 7, 2)
- game.make_move(2, 1, 6, 1)
-
- print game
-
- game2 = GameState.fromString( game.serialization() )
- print 'game2 %s' % (game)
- print game2.get_player_name(1)
diff --git a/Quinteti.activity/logic/mesh.py b/Quinteti.activity/logic/mesh.py
deleted file mode 100644
index 04983aa..0000000
--- a/Quinteti.activity/logic/mesh.py
+++ /dev/null
@@ -1,143 +0,0 @@
-#!/usr/bin/python
-# -*- coding: iso-8859-1 -*-
-#
-# Copyright 2008, 2009 Pablo Moleri
-# This file is part of Quinteti.
-#
-# Quinteti is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# Quinteti is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with Quinteti. If not, see <http://www.gnu.org/licenses/>.
-
-from sugar.presence import presenceservice
-from sugar.presence.tubeconn import TubeConnection
-
-import olpcgames
-import logging
-import telepathy
-
-SERVICE = "uy.edu.ceibaljam.Quinteti"
-IFACE = SERVICE
-PATH = "/uy/edu/ceibaljam/Quinteti"
-
-log = None
-
-hellotube = None # Shared session
-
-initiating = False
-
-conn = None
-tubes_chan = None
-text_chan = None
-
-def init_mesh(main_log):
- global log
- log = main_log
-
- # get the Presence Service
- pservice = presenceservice.get_instance()
- # Buddy object for you
- owner = pservice.get_owner()
-
- olpcgames.ACTIVITY.connect("shared", _shared_cb)
- olpcgames.ACTIVITY.connect("joined", _joined_cb)
-
-
-def _shared_cb(activity):
- log.debug('My activity was shared')
- #self._alert('Shared', 'The activity is shared')
-
- global initiating
- initiating = True
- _sharing_setup()
-
- log.debug('This is my activity: making a tube...')
- id = tubes_chan[telepathy.CHANNEL_TYPE_TUBES].OfferDBusTube(
- SERVICE, {})
-
-def _sharing_setup():
- if olpcgames.ACTIVITY._shared_activity is None:
- log.error('Failed to share or join activity')
- return
-
- s_activity = olpcgames.ACTIVITY._shared_activity
- global conn, tubes_chan, text_chan # Necesario para que escriba sobre las variables globales, en vez de crear locales
-
- conn = s_activity.telepathy_conn
- tubes_chan = s_activity.telepathy_tubes_chan
- text_chan = s_activity.telepathy_text_chan
-
- tubes_chan[telepathy.CHANNEL_TYPE_TUBES].connect_to_signal('NewTube', _new_tube_cb)
-
- s_activity.connect('buddy-joined', _buddy_joined_cb)
- s_activity.connect('buddy-left', _buddy_left_cb)
-
- # Optional - included for example:
- # Find out who's already in the shared activity:
- for buddy in s_activity.get_joined_buddies():
- log.debug('Buddy %s is already in the activity', buddy.props.nick)
-
-def _joined_cb(activity):
- if not olpcgames.ACTIVITY._shared_activity:
- return
-
- s_activity = olpcgames.ACTIVITY._shared_activity
- log.debug('Joined an existing shared activity')
-
- global initiating
- initiating = False
- _sharing_setup()
-
- log.debug('This is not my activity: waiting for a tube...')
- tubes_chan[telepathy.CHANNEL_TYPE_TUBES].ListTubes(
- reply_handler=list_tubes_reply_cb,
- error_handler=list_tubes_error_cb)
-
-def _new_tube_cb(id, initiator, type, service, params, state):
- log.debug('New tube: ID=%d initator=%d type=%d service=%s '
- 'params=%r state=%d', id, initiator, type, service,
- params, state)
- if (type == telepathy.TUBE_TYPE_DBUS and service == SERVICE):
- if state == telepathy.TUBE_STATE_LOCAL_PENDING:
- tubes_chan[telepathy.CHANNEL_TYPE_TUBES].AcceptDBusTube(id)
- tube_conn = TubeConnection(conn,
- tubes_chan[telepathy.CHANNEL_TYPE_TUBES],
- id, group_iface=text_chan[telepathy.CHANNEL_INTERFACE_GROUP])
-# hellotube = TextSync(tube_conn, initiating,
-# self.entry_text_update_cb,
-# self._alert,
-# self._get_buddy)
-
-def _buddy_joined_cb(activity, buddy):
- """Called when a buddy joins the shared activity.
-
- This doesn't do much here as HelloMesh doesn't have much
- functionality. It's up to you do do interesting things
- with the Buddy...
- """
- log.debug('Buddy %s joined', buddy.props.nick)
-
-def _buddy_left_cb (activity, buddy):
- """Called when a buddy leaves the shared activity.
-
- This doesn't do much here as HelloMesh doesn't have much
- functionality. It's up to you do do interesting things
- with the Buddy...
- """
- log.debug('Buddy %s left', buddy.props.nick)
-
-def _list_tubes_reply_cb(tubes):
- log.debug('list_tubes_reply_cb')
- for tube_info in tubes:
- _new_tube_cb(*tube_info)
-
-def _list_tubes_error_cb(e):
- log.error('ListTubes() failed: %s', e)
diff --git a/Quinteti.activity/main.py b/Quinteti.activity/main.py
deleted file mode 100644
index dde1bd5..0000000
--- a/Quinteti.activity/main.py
+++ /dev/null
@@ -1,163 +0,0 @@
-#!/usr/bin/python
-# -*- coding: iso-8859-1 -*-
-#
-# Copyright 2008, 2009 Pablo Moleri, ceibalJAM
-# This file is part of Quinteti.
-#
-# Quinteti is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# Quinteti is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with Quinteti. If not, see <http://www.gnu.org/licenses/>.
-#
-# Contact information:
-# Pablo Moleri pmoleri@gmail.com
-# ceibalJAM http://ceibaljam.org
-
-"""Main module of the game.
-
-This is the main module of the game, it can be executed as a standalone game
-or imported as a sugar activity.
-"""
-
-import pygame
-import olpcgames
-import olpcgames.pausescreen
-import logging
-
-from gui.board import Board
-from logic.game import GameState
-#import logic.Mesh
-
-import os
-
-log = logging.getLogger('quinteti')
-log.setLevel(logging.DEBUG)
-
-MAX_FPS = 20 # Max frames per second
-SLEEP_TIMEOUT = 30 # Seconds until the PauseScreen if no events show up
-
-def main():
- """Main function of the game.
-
- This function initializes the game and enters the PyGame main loop.
- """
-
- # Inits PyGame module
- pygame.init()
-
- # Loads Sugar standard cursor
- a, b, c, d = pygame.cursors.load_xbm("gui/standardcursor.xbm", "gui/standardcursor_mask.xbm")
- pygame.mouse.set_cursor(a, b, c, d)
-
- internal_size = (1200, 825) # The game is designed to work in this size (xo display size)
- target_size = (900, 619) # The game will be sown in this size, useful for testing in regular PCs with less resolution than xo
-
- flags = 0
- if olpcgames.ACTIVITY:
- # Running as Activity
- target_size = olpcgames.ACTIVITY.game_size
- #logic.Mesh.init_mesh(log) # Mesh isn't ready in this version
- else:
- pass
- # Uncomment this if want to execute fullscreen on regular PCs
- # flags = pygame.FULLSCREEN
-
- real_screen = pygame.display.set_mode(target_size, flags)
-
- # The scale factor beetween internal and target
- if internal_size == target_size:
- scale = None
- internal_screen = real_screen # The game works directly on the real screen
- else:
- # Running on regular PC, the screen its scaled to te target_size
- internal_screen = pygame.Surface(internal_size)
- scale = (internal_size[0] / float(target_size[0]), internal_size[1] / float(target_size[1]) )
-
- # Creates a new logic game, player names aren't used without mesh
- game = GameState("Jugador1", "Jugador2")
- board = Board(internal_screen, game)
- board.paint_board_elements()
-
- pygame.display.update()
-
- # This clock is used to keep the game at the desired FPS.
- clock = pygame.time.Clock()
-
- # Main loop
- update = True # The first time the screen need to be updated
- running = True
- while running:
-
- # Waits for events, if none the game pauses:
- # http://wiki.laptop.org/go/Game_development_HOWTO#Reducing_CPU_Load
- milliseconds = clock.tick(MAX_FPS) # waits if the game is running faster than MAX_FPS
- events = olpcgames.pausescreen.get_events(SLEEP_TIMEOUT) # Event-management loop with support for pausing after X seconds (20 here)
-
- if events:
- for event in events:
- if event.type == pygame.QUIT:
- running = False
- elif event.type == pygame.KEYDOWN and event.key == pygame.K_ESCAPE:
- running = False
-
- if event.type == pygame.MOUSEBUTTONDOWN:
- if scale:
- x = event.pos[0] * scale[0] # Multiplies the real coordinates by the scale factor
- y = event.pos[1] * scale[1] # to get the internal coordinates
- else:
- (x, y) = event.pos
-
- update = board.processXY(x, y)
-
- if event.type == pygame.USEREVENT:
- if event.code == olpcgames.FILE_READ_REQUEST:
- game = _read_file(event.filename)
- log.debug("Loaded:" + game.serialization())
- board = Board(internal_screen, game)
- update = True
- elif event.code == olpcgames.FILE_WRITE_REQUEST:
- _save_file(event.filename, game)
-
- if event.type > pygame.USEREVENT and event.type <= pygame.USEREVENT + 10:
- log.debug("New user event")
- board.user_event(event)
- update = True
-
- if update == True:
- board.paint_board_elements()
- if scale:
- pygame.transform.scale(internal_screen, target_size, real_screen)
- update = False
-
- pygame.display.flip()
-
- # Una vez que sale del loop manda la senal de quit para que cierre la ventana
- pygame.quit()
-
-def _save_file(file, game):
- """Saves the game to the given file."""
- string = game.serialization()
- fsock = open(file, 'w')
- fsock.write(string)
- fsock.close()
-
-def _read_file(file):
- """Loads the game from the given file."""
- fsock = open(file, "r")
- string = fsock.read()
- fsock.close()
- return GameState.fromString(string)
-
-if __name__ == "__main__":
- """Standalone code."""
-
- logging.basicConfig()
- main()
diff --git a/Quinteti.activity/olpcgames/COPYING b/Quinteti.activity/olpcgames/COPYING
deleted file mode 100644
index b8adee0..0000000
--- a/Quinteti.activity/olpcgames/COPYING
+++ /dev/null
@@ -1,24 +0,0 @@
-* Copyright (c) 2007, One Laptop Per Child.
-* All rights reserved.
-*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions are met:
-* * Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* * Redistributions in binary form must reproduce the above copyright
-* notice, this list of conditions and the following disclaimer in the
-* documentation and/or other materials provided with the distribution.
-* * Neither the name of One Laptop Per Child nor the
-* names of its contributors may be used to endorse or promote products
-* derived from this software without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY ONE LAPTOP PER CHILD ``AS IS'' AND ANY
-* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-* DISCLAIMED. IN NO EVENT SHALL ONE LAPTOP PER CHILD BE LIABLE FOR ANY
-* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/Quinteti.activity/olpcgames/__init__.py b/Quinteti.activity/olpcgames/__init__.py
deleted file mode 100644
index 504388c..0000000
--- a/Quinteti.activity/olpcgames/__init__.py
+++ /dev/null
@@ -1,102 +0,0 @@
-"""Wrapper/adaptation system for writing/porting Pygame games to OLPC/Sugar
-
-The wrapper system attempts to substitute various pieces of the Pygame
-implementation in order to make code written without knowledge of the
-OLPC/Sugar environment run "naturally" under the GTK environment of
-Sugar. It also provides some convenience mechanisms for dealing with
-e.g. the Camera and Mesh Network system.
-
-Considerations for Developers:
-
-Pygame programs running under OLPCGames will generally not have
-"hardware" surfaces, and will not be able to have a reduced-resolution
-full-screen view to optimise rendering. The Pygame code will run in
-a secondary thread, with the main GTK UI running in the primary thread.
-A third "mainloop" thread will occasionally be created to handle the
-GStreamer interface to the camera.
-
-Attributes of Note:
-
- ACTIVITY -- if not None, then the activity instance which represents
- this activity at the Sugar shell level.
- WIDGET -- PygameCanvas instance, a GTK widget with an embedded
- socket object which is a proxy for the SDL window Pygame to which
- pygame renders.
-
- Constants: All event constants used by the package are defined at this
- level. Note that eventually we will need to switch to using UserEvent
- and making these values sub-types rather than top-level types.
-
-
-Pygame events at the Activity Level:
-
- pygame.USEREVENT
- code == olpcgames.FILE_READ_REQUEST
- filename (unicode/string) -- filename from which to read
- metadata (dictionary-like) -- mapping from key to string values
-
- Note: due to a limitation in the Sugar API, the GTK event loop
- will be *frozen* during this operation, as a result you cannot
- make any DBUS or GTK calls, nor can you use GUI during the
- call to provide input. That is, you have to process this event
- synchronously.
-
- code == olpcgames.FILE_WRITE_REQUEST
- filename (unicode/string) -- file name to which to write
- metadata (dictionary-like) -- mapping from key: value where all
- values must (currently) be strings
-
- Note: due to a limitation in the Sugar API, the GTK event loop
- will be *frozen* during this operation, as a result you cannot
- make any DBUS or GTK calls, nor can you use GUI during the
- call to provide input. That is, you have to process this event
- synchronously.
-
-see also the mesh and camera modules for more events.
-
-Deprecated:
-
- This module includes the activity.PyGameActivity class currently,
- this is a deprecated mechanism for accessing the activity class,
- and uses the deprecated spelling (case) of the name. Use:
-
- from olpcgames import activity
-
- class MyActivity( activity.PygameActivity ):
- ...
-
- to define your PygameActivity subclass (note the case of the
- spelling, which now matches Pygame's own spelling).
-"""
-from olpcgames._version import __version__
-ACTIVITY = None
-widget = WIDGET = None
-
-# XXX problem here, we're filling up the entirety of the Pygame
-# event-set with just this small bit of functionality, obviously
-# Pygame is not intending for this kind of usage!
-(
- CAMERA_LOAD, CAMERA_LOAD_FAIL,
-
- CONNECT,PARTICIPANT_ADD,
- PARTICIPANT_REMOVE,
- MESSAGE_UNI,MESSAGE_MULTI,
-) = range( 25, 32 )
-
-# These events use UserEvent.code, eventually *all* events should be
-# delivered as UserEvent with code set to the values defined here...
-
-(
- #NET_CONNECT, NET_PARTICIPANT_ADD,NET_PARTICIPANT_REMOVE,
- #NET_MESSAGE_UNICAST, NET_MESSAGE_MULTICAST,
- #CAMERA_LOAD, CAMERA_LOAD_FAIL,
- FILE_READ_REQUEST, FILE_WRITE_REQUEST,
-) = range(
- 2**16, 2**16+2,
-)
-
-try:
- from olpcgames.activity import PygameActivity as PyGameActivity
-except ImportError, err:
- PyGameActivity = None
-
diff --git a/Quinteti.activity/olpcgames/_cairoimage.py b/Quinteti.activity/olpcgames/_cairoimage.py
deleted file mode 100644
index 3cfa22c..0000000
--- a/Quinteti.activity/olpcgames/_cairoimage.py
+++ /dev/null
@@ -1,135 +0,0 @@
-"""Utility functions for cairo-specific operations
-
-USE_BASE_ARRAY -- if False (default), uses numpy arrays,
- currently this is the only version that works on 32-bit
- machines.
-"""
-import pygame, struct, logging
-big_endian = struct.pack( '=i', 1 ) == struct.pack( '>i', 1 )
-
-log = logging.getLogger( 'olpcgames._cairoimage' )
-##log.setLevel( logging.DEBUG )
-
-USE_BASE_ARRAY = False
-
-def newContext( width, height ):
- """Create a new render-to-image context
-
- width, height -- pixel dimensions to be rendered
-
- Produces an ARGB format Cairo ImageSurface for
- rendering your data into using rsvg, Cairo or Pango.
-
- returns (ImageSurface, CairoContext) for rendering
- """
- import cairo
- csrf = cairo.ImageSurface(cairo.FORMAT_ARGB32, width, height)
- context = cairo.Context (csrf)
- #log.info( 'Format (expect: %s): %s', cairo.FORMAT_ARGB32, csrf.get_format())
- return csrf, context
-
-def mangle_color(color):
- """Mange a colour depending on endian-ness, and swap-necessity
-
- Converts a 3 or 4 int (or float) value in the range 0-255 into a
- 4-float value in the range 0.0-1.0
- """
- r,g,b = color[:3]
- if len(color) > 3:
- a = color[3]
- else:
- a = 255.0
- return map(_fixColorBase, (r,g,b,a) )
-
-def _fixColorBase( v ):
- """Return a properly clamped colour in floating-point space"""
- return max((0,min((v,255.0))))/255.0
-
-def asImage( csrf ):
- """Get the pixels in csrf as a Pygame image
-
- Note that Pygame 1.7.1 on (Gentoo Linux) AMD64 is incorrectly
- calculating the required size ARGB images, so this code will *not* work
- on that platform with that version of the library. Pygame-ctypes
- does work correctly there.
-
- Note also that Pygame 1.7.1 is showing a strange colour rotation
- bug on 32-bit platforms, such that ARGB mode cannot be used for
- images there. Instead we have to do an expensive bit-shift operation
- to produce an RGBA image from the ARGB native Cairo format.
-
- Will raise a ValueError if passed a Null image (i.e. dimension of 0)
-
- returns Pygame.Surface (image) with convert_alpha() called for it.
- """
- # Create and return a new Pygame Image derived from the Cairo Surface
- format = 'ARGB'
- if hasattr(csrf,'get_data'):
- # more recent API, native-format, but have to (potentially) convert the format...
- log.debug( 'Native-mode api (get_data)' )
- data = csrf.get_data()
- if not big_endian:
- # we use array here because it's considerably lighter-weight
- # to import than the numpy module
- log.debug( 'Not big-endian, byte-swapping array' )
- if USE_BASE_ARRAY:
- import array
- a = array.array( 'I' )
- a.fromstring( data )
- a.byteswap()
- data = a.tostring()
- else:
- import numpy
- n = numpy.fromstring( data, dtype='I' )
- n = ((n & 0xff000000) >> 24 ) | ((n & 0x00ffffff) << 8 )
- n = n.byteswap()
- data = n.tostring()
- format = 'RGBA'
- else:
- log.debug( 'Big-endian, array unchanged' )
- data = str(data) # there's one copy
- else:
- # older api, not native, but we know what it is...
- log.debug( 'Non-native mode api, explicitly RGBA' )
- data = csrf.get_data_as_rgba()
- data = str(data) # there's one copy
- format = 'RGBA'
- width, height = csrf.get_width(),csrf.get_height()
-
- try:
- log.info( 'Format = %s', format )
- return pygame.image.fromstring(
- data,
- (width,height),
- format
- ) # there's the next
- except ValueError, err:
- err.args += (len(data), (width,height), width*height*4,format )
- raise
-
-if __name__ == "__main__":
- import unittest
- logging.basicConfig()
- class Tests( unittest.TestCase ):
- def test_colours( self ):
- """Test that colours are correctly translated
-
- If we draw a given colour in cairo, we want the same
- colour to show up in Pygame, let's test that...
- """
- for sourceColour in [
- (255,0,0, 255),
- (0,255,0, 255),
- (0,0,255, 255),
- (255,255,0, 255),
- (0,255,255,255),
- (255,0,255,255),
- ]:
- csrf,cctx = newContext( 1,1 )
- background = mangle_color( sourceColour )
- cctx.set_source_rgba(*background)
- cctx.paint()
- img = asImage( csrf )
- colour = img.get_at( (0,0))
- assert colour == sourceColour, (sourceColour,mangle_color(sourceColour),colour)
- unittest.main()
diff --git a/Quinteti.activity/olpcgames/_gtkmain.py b/Quinteti.activity/olpcgames/_gtkmain.py
deleted file mode 100644
index 33a6a83..0000000
--- a/Quinteti.activity/olpcgames/_gtkmain.py
+++ /dev/null
@@ -1,70 +0,0 @@
-"""Support for GObject mainloop-requiring libraries when not inside GTK
-
-INITIALIZED -- whether we have a running gobject loop yet...
-LOOP_TRACKER -- if present, the manual gtk event loop used to
- support gobject-based code running in a non-Gobject event loop
-
-Holder -- objects which can be held as attributes to keep the mainloop running
-"""
-import threading, logging
-log = logging.getLogger( 'olpcgames._gtkmain' )
-##log.setLevel( logging.DEBUG )
-
-INITIALIZED = False
-LOOP_TRACKER = None
-
-class _TrackLoop( object ):
- """Tracks the number of open loops and stops when finished"""
- count = 0
- _mainloop = None
- def increment( self ):
- log.info( 'Increment from %s', self.count )
- self.count += 1 # XXX race condition here?
- if self.count == 1:
- log.info( 'Creating GObject mainloop')
- self.t_loop = threading.Thread(target=self.loop)
- self.t_loop.setDaemon( True )
- self.t_loop.start()
- def decrement( self ):
- log.info( 'Decrement from %s', self.count )
- self.count -= 1
- def loop( self ):
- """Little thread loop that replicates the gtk mainloop"""
- import gtk
- while self.count >= 1:
- log.debug( 'GTK loop restarting' )
- while gtk.events_pending():
- gtk.main_iteration()
- log.debug( 'GTK loop exiting' )
- try:
- del self.t_loop
- except AttributeError, err:
- pass
-
-class Holder():
- """Object which, while held, keeps the gtk mainloop running"""
- def __init__( self ):
- log.info( 'Beginning hold on GTK mainloop with Holder object' )
- startGTK()
- def __del__( self ):
- log.info( 'Releasing hold on GTK mainloop with Holder object' )
- stopGTK()
-
-def startGTK( ):
- """GTK support is required here, process..."""
- if not INITIALIZED:
- init()
- if LOOP_TRACKER:
- LOOP_TRACKER.increment()
-def stopGTK( ):
- """GTK support is no longer required, release"""
- if LOOP_TRACKER:
- LOOP_TRACKER.decrement()
-def init( ):
- """Create a gobject mainloop in a sub-thread (you don't need to call this normally)"""
- global INITIALIZED, LOOP_TRACKER
- if not INITIALIZED:
- if not LOOP_TRACKER:
- LOOP_TRACKER = _TrackLoop()
- INITIALIZED = True
- return LOOP_TRACKER
diff --git a/Quinteti.activity/olpcgames/_version.py b/Quinteti.activity/olpcgames/_version.py
deleted file mode 100644
index 6a4e1db..0000000
--- a/Quinteti.activity/olpcgames/_version.py
+++ /dev/null
@@ -1,2 +0,0 @@
-"""Module defining the current version of the library"""
-__version__ = '1.6'
diff --git a/Quinteti.activity/olpcgames/activity.py b/Quinteti.activity/olpcgames/activity.py
deleted file mode 100644
index 538ba13..0000000
--- a/Quinteti.activity/olpcgames/activity.py
+++ /dev/null
@@ -1,241 +0,0 @@
-"""Embeds the Canvas widget into a Sugar-specific Activity environment
-
-The olpcgames.activity module encapsulates creation of a Pygame activity.
-Your Activity should inherit from this class. Simply setting some class
-attributes is all you need to do in a class inheriting from
-olpcgames.activity.PygameActivity in order to get Pygame to work.
-
-(The skeleton builder script creates this file automatically for you).
-
-Note:
- You should not import pygame into your activity file, as the olpcgames
- wrapper needs to be initialized before pygame is imported the first time.
-
-Example usage:
-
- class PygameActivity(activity.Activity):
- game_name = None
- game_title = 'Pygame Game'
- game_size = (units.grid_to_pixels(16),
- units.grid_to_pixels(11))
- pygame_mode = 'SDL'
-"""
-import logging
-logging.root.setLevel( logging.WARN )
-log = logging.getLogger( 'olpcgames.activity' )
-##log.setLevel( logging.DEBUG )
-
-import pygtk
-pygtk.require('2.0')
-import gtk
-import gtk.gdk
-import os
-
-from sugar.activity import activity
-from sugar.graphics import style
-from olpcgames.canvas import PygameCanvas
-from olpcgames import mesh, util
-
-__all__ = ['PygameActivity']
-
-class PygameActivity(activity.Activity):
- """Pygame-specific activity type, provides boilerplate toolbar, creates canvas
-
- Subclass Overrides:
-
- game_name -- specifies a fully-qualified name for the game's main-loop
- format like so:
- 'package.module:main'
- if no function name is provided, "main" is assumed.
-
- game_handler -- DEPRECATED. alternate specification via direct
- reference to a main-loop function.
-
- game_size -- two-value tuple specifying the size of the display in pixels,
- this is currently static, so once the window is created it cannot be
- changed.
-
- If None, use the bulk of the screen for the Pygame surface based on
- the values reported by the gtk.gdk functions. Note that None is
- *not* the default value.
-
- game_title -- title to be displayed in the Sugar Shell UI
-
- pygame_mode -- chooses the rendering engine used for handling the
- Pygame drawing mode, 'SDL' chooses the standard Pygame renderer,
- 'Cairo' chooses the experimental pygamecairo renderer.
-
- Note: You likely do *not* want to use Cairo, it is no longer maintained.
-
- PYGAME_CANVAS_CLASS -- normally PygameCanvas, but can be overridden
- if you want to provide a different canvas class, e.g. to provide a different
- internal layout. Note: only used where pygame_mode == 'SDL'
-
- The Activity, once created, will be made available as olpcgames.ACTIVITY,
- and that access mechanism should allow code to test for the presence of the
- activity before accessing Sugar-specific functionality.
-
- XXX Note that currently the toolbar and window layout are hard-coded into
- this super-class, with no easy way of overriding without completely rewriting
- the __init__ method. We should allow for customising both the UI layout and
- the toolbar contents/layout/connection.
-
- XXX Note that if you change the title of your activity in the toolbar you may
- see the same focus issues as we have patched around in the build_toolbar
- method. If so, please report them to Mike Fletcher.
- """
- game_name = None
- game_title = 'Pygame Game'
- game_handler = None
- game_size = (16 * style.GRID_CELL_SIZE,
- 11 * style.GRID_CELL_SIZE)
- pygame_mode = 'SDL'
-
- def __init__(self, handle):
- """Initialise the Activity with the activity-description handle"""
- super(PygameActivity, self).__init__(handle)
- self.make_global()
- if self.game_size is None:
- width,height = gtk.gdk.screen_width(), gtk.gdk.screen_height()
- log.info( 'Total screen size: %s %s', width,height)
- # for now just fudge the toolbar size...
- self.game_size = width, height - (1*style.GRID_CELL_SIZE)
- self.set_title(self.game_title)
- toolbar = self.build_toolbar()
- log.debug( 'Toolbar size: %s', toolbar.get_size_request())
- canvas = self.build_canvas()
- self.connect( 'configure-event', canvas._translator.do_resize_event )
-
- def make_global( self ):
- """Hack to make olpcgames.ACTIVITY point to us
- """
- import weakref, olpcgames
- assert not olpcgames.ACTIVITY, """Activity.make_global called twice, have you created two Activity instances in a single process?"""
- olpcgames.ACTIVITY = weakref.proxy( self )
-
- def build_toolbar( self ):
- """Build our Activity toolbar for the Sugar system
-
- This is a customisation point for those games which want to
- provide custom toolbars when running under Sugar.
- """
- toolbar = activity.ActivityToolbar(self)
- toolbar.show()
- self.set_toolbox(toolbar)
- def shared_cb(*args, **kwargs):
- log.info( 'shared: %s, %s', args, kwargs )
- try:
- mesh.activity_shared(self)
- except Exception, err:
- log.error( """Failure signaling activity sharing to mesh module: %s""", util.get_traceback(err) )
- else:
- log.info( 'mesh activity shared message sent, trying to grab focus' )
- try:
- self._pgc.grab_focus()
- except Exception, err:
- log.warn( 'Focus failed: %s', err )
- else:
- log.info( 'asserting focus' )
- assert self._pgc.is_focus(), """Did not successfully set pygame canvas focus"""
- log.info( 'callback finished' )
-
- def joined_cb(*args, **kwargs):
- log.info( 'joined: %s, %s', args, kwargs )
- mesh.activity_joined(self)
- self._pgc.grab_focus()
- self.connect("shared", shared_cb)
- self.connect("joined", joined_cb)
-
- if self.get_shared():
- # if set at this point, it means we've already joined (i.e.,
- # launched from Neighborhood)
- joined_cb()
-
- toolbar.title.unset_flags(gtk.CAN_FOCUS)
- return toolbar
-
- PYGAME_CANVAS_CLASS = PygameCanvas
- def build_canvas( self ):
- """Construct the Pygame or PygameCairo canvas for drawing"""
- assert self.game_handler or self.game_name, 'You must specify a game_handler or game_name on your Activity (%r)'%(
- self.game_handler or self.game_name
- )
- if self.pygame_mode != 'Cairo':
- self._pgc = self.PYGAME_CANVAS_CLASS(*self.game_size)
- self.set_canvas(self._pgc)
- self._pgc.grab_focus()
- self._pgc.connect_game(self.game_handler or self.game_name)
- # XXX Bad coder, do not hide in a widely subclassed operation
- # map signal does not appear to show up on socket instances
- gtk.gdk.threads_init()
- return self._pgc
- else:
- import hippo
- self._drawarea = gtk.DrawingArea()
- canvas = hippo.Canvas()
- canvas.grab_focus()
- self.set_canvas(canvas)
- self.show_all()
-
- import pygamecairo
- pygamecairo.install()
-
- pygamecairo.display.init(canvas)
- app = self.game_handler or self.game_name
- if ':' not in app:
- app += ':main'
- mod_name, fn_name = app.split(':')
- mod = __import__(mod_name, globals(), locals(), [])
- fn = getattr(mod, fn_name)
- fn()
- def read_file(self, file_path):
- """Handle request to read the given file on the Pygame side
-
- This is complicated rather noticeably by the silly semantics of the Journal
- where it unlinks the file as soon as this method returns. We either have to
- handle the file-opening in PyGTK (not acceptable), block this thread until
- the Pygame thread handles the event (which it may never do) or we have
- to make the silly thing use a non-standard file-opening interface.
- """
- log.info( 'read_file: %s %s', file_path, self.metadata )
- import olpcgames, pygame
- from olpcgames import eventwrap
- event = eventwrap.Event(
- type = pygame.USEREVENT,
- code = olpcgames.FILE_READ_REQUEST,
- filename = file_path,
- metadata = self.metadata,
- )
- eventwrap.post( event )
- event.block()
- def write_file( self, file_path ):
- """Handle request to write to the given file on the Pygame side
-
- This is rather complicated by the need to have the file complete by the
- time the function returns. Very poor API, after all, if I have to write a
- multi-hundred-megabyte file it might take many minutes to complete
- writing.
- """
- log.info( 'write_file: %s %s', file_path, self.metadata )
- if os.path.exists( file_path ):
- self.read_file( file_path )
- import olpcgames, pygame
- from olpcgames import eventwrap
- event = eventwrap.Event(
- type = pygame.USEREVENT,
- code = olpcgames.FILE_WRITE_REQUEST,
- filename = file_path,
- metadata = self.metadata,
- )
- eventwrap.post( event )
- event.block()
- if not os.path.exists( file_path ):
- log.warn( '''No file created in %r''', file_path )
- raise NotImplementedError( """Pygame Activity code did not produce a file for %s"""%( file_path, ))
- else:
- log.info( '''Stored file in %r''', file_path )
-
-
-import olpcgames
-olpcgames.PyGameActivity = PygameActivity
-PyGameActivity = PygameActivity
diff --git a/Quinteti.activity/olpcgames/buildmanifest.py b/Quinteti.activity/olpcgames/buildmanifest.py
deleted file mode 100644
index 899433b..0000000
--- a/Quinteti.activity/olpcgames/buildmanifest.py
+++ /dev/null
@@ -1,33 +0,0 @@
-#! /usr/bin/env python
-"""Stupid little script to automate generation of MANIFEST and po/POTFILES.in
-
-Really this should have been handled by using distutils, but oh well,
-distutils is a hoary beast and I can't fault people for not wanting to
-spend days spelunking around inside it to find the solutions...
-"""
-from distutils.filelist import FileList
-import os
-
-def fileList( template ):
- """Produce a formatted file-list for storing in a file"""
- files = FileList()
- for line in filter(None,template.splitlines()):
- files.process_template_line( line )
- content = '\n'.join( files.files )
- return content
-
-
-def main( ):
- """Do the quicky finding of files for our manifests"""
- content = fileList( open('MANIFEST.in').read() )
- open( 'MANIFEST','w').write( content )
-
- content = fileList( open('POTFILES.in').read() )
- try:
- os.makedirs( 'po' )
- except OSError, err:
- pass
- open( os.path.join('po','POTFILES.in'), 'w').write( content )
-
-if __name__ == "__main__":
- main()
diff --git a/Quinteti.activity/olpcgames/camera.py b/Quinteti.activity/olpcgames/camera.py
deleted file mode 100644
index 249f295..0000000
--- a/Quinteti.activity/olpcgames/camera.py
+++ /dev/null
@@ -1,221 +0,0 @@
-"""Accesses OLPC Camera functionality via gstreamer
-
-Depends upon:
- pygame
- gstreamer (particularly gst-launch)
-
-Activity demonstrating usage:
-
- http://dev.laptop.org/git?p=projects/games-misc;a=tree;f=cameratest.activity;hb=HEAD
-
-
-"""
-import threading, subprocess
-import logging
-import olpcgames
-import time
-import os
-import pygame
-from olpcgames.util import get_activity_root
-
-log = logging.getLogger( 'olpcgames.camera' )
-#log.setLevel( logging.DEBUG )
-
-CAMERA_LOAD, CAMERA_LOAD_FAIL = olpcgames.CAMERA_LOAD, olpcgames.CAMERA_LOAD
-
-class Camera(object):
- """A class representing a still-picture camera
-
- Produces a simple gstreamer bus that terminates in a filesink, that is,
- it stores the results in a file. When a picture is "snapped" the gstreamer
- stream is iterated until it finishes processing and then the file can be
- read.
-
- There are two APIs available, a synchronous API which can potentially
- stall your activity's GUI (and is NOT recommended) and an
- asynchronous API which returns immediately and delivers the captured
- camera image via a Pygame event. To be clear, it is recommended
- that you use the snap_async method, *not* the snap method.
-
- Note:
-
- The Camera class is simply a convenience wrapper around a fairly
- straightforward gst-launch bus. If you have more involved
- requirements for your camera manipulations you will probably
- find it easier to write your own camera implementation than to
- use this one. Basically we provide here the "normal" use case of
- snapping a picture into a pygame image.
-
- Note:
-
- With the current camera implementation taking a single photograph
- requires about 6 seconds! Obviously we'll need to figure out what's
- taking gstreamer so long to process the pipe and fix that.
-
- """
- _aliases = {
- 'camera': 'v4l2src',
- 'test': 'videotestsrc',
- 'testing': 'videotestsrc',
- 'png': 'pngenc',
- 'jpeg': 'jpegenc',
- 'jpg': 'jpegenc',
- }
- def __init__(self, source='camera', format='png', filename=None, directory = None):
- """Initialises the Camera's internal description
-
- source -- the gstreamer source for the video to capture, useful values:
- 'v4l2src','camera' -- the camera
- 'videotestsrc','test' -- test pattern generator source
- format -- the gstreamer encoder to use for the capture, useful values:
- 'pngenc','png' -- PNG format graphic
- 'jpegenc','jpg','jpeg' -- JPEG format graphic
- filename -- the filename to use for the capture, if not specified defaults
- to a random UUID + '.' + format
- directory -- the directory in which to create the temporary file, defaults
- to get_activity_root() + 'tmp'
- """
- log.info( 'Creating camera' )
- if not filename:
- import uuid
- filename = '%s.%s'%( uuid.uuid4(), format )
- self.source = self._aliases.get( source, source )
- self.format = self._aliases.get( format, format )
- self.filename = filename
- self.directory = directory
- SNAP_PIPELINE = 'gst-launch','%(source)s','!','ffmpegcolorspace','!','%(format)s','!','filesink','location="%(filename)s"'
- def _create_subprocess( self ):
- """Method to create the gstreamer subprocess from our settings"""
- if not self.directory:
- path = os.path.join( get_activity_root(), 'tmp' )
- try:
- os.makedirs( path )
- log.info( 'Created temporary directory: %s', path )
- except (OSError,IOError), err:
- pass
- else:
- path = self.directory
- filename = os.path.join( path, self.filename )
- format = self.format
- source = self.source
- pipeline = [s%locals() for s in self.SNAP_PIPELINE ]
- return filename, subprocess.Popen(
- pipeline,stderr = subprocess.PIPE
- )
-
- def snap(self):
- """Snap a picture via the camera by iterating gstreamer until finished
-
- Note: this is an unsafe implementation, it will cause the whole
- activity to hang until the capture finishes. Time to finish is often
- measured in whole seconds (3-6s).
-
- It is *strongly* recommended that you use snap_async instead of snap!
- """
- log.debug( 'Starting snap' )
- filename, pipe = self._create_subprocess()
- if not pipe.wait():
- log.debug( 'Ending snap, loading: %s', filename )
- return self._load_and_clean( filename )
- else:
- raise IOError( """Unable to complete snapshot: %s""", pipe.stderr.read() )
- def _load_and_clean( self, filename ):
- """Use pygame to load given filename, delete after loading/attempt"""
- try:
- log.info( 'Loading snapshot file: %s', filename )
- return pygame.image.load(filename)
- finally:
- try:
- os.remove( filename )
- except (IOError,OSError), err:
- pass
- def snap_async( self, token=None ):
- """Snap a picture asynchronously generating event on success/failure
-
- token -- passed back as attribute of the event which signals that capture
- is finished
-
- We return events of type CAMERA_LOAD with an attribute "succeed"
- depending on whether we succeed or not. Attributes of the events which
- are returned:
-
- success -- whether the loading process succeeded
- token -- as passed to this method
- image -- pygame image.load result if successful, None otherwise
- filename -- the filename in our temporary directory we used to store
- the file temporarily (this file will be deleted before the event
- is sent, the name is for informational purposes only).
- err -- Exception instance if failed, None otherwise
-
- Basically identical to the snap method, save that it posts a message
- to the event bus in pygame.event instead of blocking and returning...
-
- Example:
- if event == pygame.MOUSEBUTTONDOWN:
- camera = Camera( source='test', filename = 'picture32' )
- camera.snap_async( myIdentifier )
- ...
- elif event.type == olpcgames.CAMERA_LOAD:
- if event.token == myIdentifier:
- doSomething( event.image )
- """
- log.debug( 'beginning async snap')
- t = threading.Thread(target=self._background_snap, args=[token])
- t.start()
- return token
-
- def _background_snap(
- self,
- token = None,
- ):
- """Process gst messages until pipe is finished
-
- pipe -- gstreamer pipe definition for parse_launch, normally it will
- produce a file into which the camera should store an image
-
- We consider pipe to be finished when we have had two "state changed"
- gstreamer events where the pending state is VOID, the first for when
- we begin playing, the second for when we finish.
- """
- log.debug( 'Background thread kicking off gstreamer capture begun' )
- from pygame.event import Event, post
- filename, pipe = self._create_subprocess()
- if not pipe.wait():
- success = True
- log.debug( 'Ending capture, loading: %s', filename )
- try:
- image = self._load_and_clean( filename )
- except Exception, err:
- image = None
- success = False
- else:
- err = None
- else:
- success = False
- err = pipe.stderr.read()
- image = None
- evt = Event(
- CAMERA_LOAD,
- dict(
- filename=filename,
- success = success,
- token = token,
- image=image,
- err=err
- )
- )
- post( evt )
-
-def snap():
- """Dump a snapshot from the camera to a pygame surface in background thread
-
- See Camera.snap
- """
- return Camera().snap()
-
-def snap_async( token=None, **named ):
- """Dump snapshot from camera return asynchronously as event in Pygame
-
- See Camera.snap_async
- """
- return Camera(**named).snap_async( token )
diff --git a/Quinteti.activity/olpcgames/canvas.py b/Quinteti.activity/olpcgames/canvas.py
deleted file mode 100644
index 2583827..0000000
--- a/Quinteti.activity/olpcgames/canvas.py
+++ /dev/null
@@ -1,171 +0,0 @@
-"""Implements bridge connection between Sugar/GTK and Pygame"""
-import os
-import sys
-import logging
-log = logging.getLogger( 'olpcgames.canvas' )
-##log.setLevel( logging.DEBUG )
-import threading
-from pprint import pprint
-
-import pygtk
-pygtk.require('2.0')
-import gtk
-import gobject
-import pygame
-
-from olpcgames import gtkEvent, util
-
-__all__ = ['PygameCanvas']
-
-class PygameCanvas(gtk.Layout):
- """Canvas providing bridge methods to run Pygame in GTK
-
- The PygameCanvas creates a secondary thread in which the Pygame instance will
- live, providing synthetic Pygame events to that thread via a Queue. The GUI
- connection is done by having the Pygame canvas use a GTK Port object as it's
- window pointer, it draws to that X-level window in order to produce output.
- """
- mod_name = None
- def __init__(self, width, height):
- """Initializes the Canvas Object
-
- width,height -- passed to the inner EventBox in order to request a given size,
- the Socket is the only child of this EventBox, and the Pygame commands
- will be writing to the Window ID of the socket. The internal EventBox is
- centered via an Alignment instance within the PygameCanvas instance.
-
- XXX Should refactor so that the internal setup can be controlled by the
- sub-class, e.g. to get size from the host window, or something similar.
- """
- # Build the main widget
- log.info( 'Creating the pygame canvas' )
- super(PygameCanvas,self).__init__()
- self.set_flags(gtk.CAN_FOCUS)
-
- # Build the sub-widgets
- self._align = gtk.Alignment(0.5, 0.5)
- self._inner_evb = gtk.EventBox()
- self._socket = gtk.Socket()
-
-
- # Add internal widgets
- self._inner_evb.set_size_request(width, height)
- self._inner_evb.add(self._socket)
-
- self._socket.show()
-
- self._align.add(self._inner_evb)
- self._inner_evb.show()
-
- self._align.show()
-
- self.put(self._align, 0,0)
-
- # Construct a gtkEvent.Translator
- self._translator = gtkEvent.Translator(self, self._inner_evb)
- # <Cue Thus Spract Zarathustra>
- self.show()
- def connect_game(self, app):
- """Imports the given main-loop and starts processing in secondary thread
-
- app -- fully-qualified Python path-name for the game's main-loop, with
- name within module as :functionname, if no : character is present then
- :main will be assumed.
-
- Side effects:
-
- Sets the SDL_WINDOWID variable to our socket's window ID
- Calls Pygame init
- Causes the gtkEvent.Translator to "hook" Pygame
- Creates and starts secondary thread for Game/Pygame event processing.
- """
- log.info( 'Connecting the pygame canvas' )
- # Setup the embedding
- os.environ['SDL_WINDOWID'] = str(self._socket.get_id())
- #print 'Socket ID=%s'%os.environ['SDL_WINDOWID']
- pygame.init()
-
- self._translator.hook_pygame()
-
- # Load the modules
- # NOTE: This is delayed because pygame.init() must come after the embedding is up
- if ':' not in app:
- app += ':main'
- mod_name, fn_name = app.split(':')
- self.mod_name = mod_name
- mod = __import__(mod_name, globals(), locals(), [])
- fn = getattr(mod, fn_name)
-
- # Start Pygame
- self.__thread = threading.Thread(target=self._start, args=[fn])
- self.__thread.start()
-
- def _start(self, fn):
- """The method that actually runs in the background thread"""
- log.info( 'Staring the mainloop' )
- import olpcgames
- olpcgames.widget = olpcgames.WIDGET = self
- try:
- import sugar.activity.activity,os
- except ImportError, err:
- log.info( """Running outside Sugar""" )
- else:
- try:
- os.chdir(sugar.activity.activity.get_bundle_path())
- except KeyError, err:
- pass
-
- try:
- try:
- try:
- log.info( '''Running mainloop: %s''', fn )
- fn()
- except Exception, err:
- log.error(
- """Uncaught top-level exception: %s""",
- util.get_traceback( err ),
- )
- raise
- else:
- log.info( "Mainloop exited" )
- finally:
- log.debug( "Clearing any pending events" )
- from olpcgames import eventwrap
- eventwrap.clear()
- finally:
- log.info( 'Main function finished, calling main_quit' )
- gtk.main_quit()
-
- source_object_id = None
- def view_source(self):
- """Implement the 'view source' key by saving
- datastore, and then telling the Journal to view it."""
- if self.source_object_id is None:
- from sugar import profile
- from sugar.datastore import datastore
- from sugar.activity.activity import get_bundle_name, get_bundle_path
- from gettext import gettext as _
- import os.path
- jobject = datastore.create()
- metadata = {
- 'title': _('%s Source') % get_bundle_name(),
- 'title_set_by_user': '1',
- 'suggested_filename': 'pippy_app.py',
- 'icon-color': profile.get_color().to_string(),
- 'mime_type': 'text/x-python',
- }
- for k,v in metadata.items():
- jobject.metadata[k] = v # dict.update method is missing =(
- jobject.file_path = os.path.join(get_bundle_path(), 'pippy_app.py')
- datastore.write(jobject)
- self.__source_object_id = jobject.object_id
- jobject.destroy()
- self.journal_show_object(self.__source_object_id)
- def journal_show_object(self, object_id):
- """Invoke journal_show_object from sugar.activity.activity if it
- exists."""
- try:
- from sugar.activity.activity import show_object_in_journal
- show_object_in_journal(object_id)
- except ImportError:
- pass # no love from sugar.
diff --git a/Quinteti.activity/olpcgames/data/__init__.py b/Quinteti.activity/olpcgames/data/__init__.py
deleted file mode 100644
index 8510186..0000000
--- a/Quinteti.activity/olpcgames/data/__init__.py
+++ /dev/null
@@ -1,36 +0,0 @@
-"""Design-time __init__.py for resourcepackage
-
-This is the scanning version of __init__.py for your
-resource modules. You replace it with a blank or doc-only
-init when ready to release.
-"""
-try:
- __file__
-except NameError:
- pass
-else:
- import os
- if os.path.splitext(os.path.basename( __file__ ))[0] == "__init__":
- try:
- from resourcepackage import package, defaultgenerators
- generators = defaultgenerators.generators.copy()
-
- ### CUSTOMISATION POINT
- ## import specialised generators here, such as for wxPython
- #from resourcepackage import wxgenerators
- #generators.update( wxgenerators.generators )
- except ImportError:
- pass
- else:
- package = package.Package(
- packageName = __name__,
- directory = os.path.dirname( os.path.abspath(__file__) ),
- generators = generators,
- )
- package.scan(
- ### CUSTOMISATION POINT
- ## force true -> always re-loads from external files, otherwise
- ## only reloads if the file is newer than the generated .py file.
- # force = 1,
- )
-
diff --git a/Quinteti.activity/olpcgames/data/sleeping_svg.py b/Quinteti.activity/olpcgames/data/sleeping_svg.py
deleted file mode 100644
index c52398a..0000000
--- a/Quinteti.activity/olpcgames/data/sleeping_svg.py
+++ /dev/null
@@ -1,61 +0,0 @@
-# -*- coding: ISO-8859-1 -*-
-"""Resource sleeping_svg (from file sleeping.svg)"""
-# written by resourcepackage: (1, 0, 1)
-source = 'sleeping.svg'
-package = 'olpcgames.data'
-data = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\012<svg\012\
- xmlns=\"http://www.w3.org/2000/svg\"\012 xmlns:xlink=\"http:/\
-/www.w3.org/1999/xlink\"\012 width=\"737\"\012 height=\"923\"\012 ve\
-rsion=\"1.0\">\012 <defs>\012 <linearGradient\012 id=\"linearG\
-radient3152\">\012 <stop\012 style=\"stop-color:#b8ffb4\
-;stop-opacity:1;\"\012 offset=\"0\" />\012 <stop\012 \
- offset=\"0.5\"\012 style=\"stop-color:#2eff22;stop-opaci\
-ty:0.5;\" />\012 <stop\012 style=\"stop-color:#ffffff;s\
-top-opacity:0;\"\012 offset=\"1\" />\012 </linearGradient>\
-\012 <radialGradient\012 xlink:href=\"#linearGradient3152\"\
-\012 id=\"radialGradient3158\"\012 cx=\"260\"\012 cy=\"2\
-35\"\012 fx=\"260\"\012 fy=\"235\"\012 r=\"259\"\012 gr\
-adientTransform=\"matrix(1,0,0,1.2531846,0,-59.560934)\"\012 \
- gradientUnits=\"userSpaceOnUse\" />\012 </defs>\012 <g\012 tran\
-sform=\"translate(-3,-73)\">\012 <path\012 style=\"opacity:1\
-;color:#000000;fill:url(#radialGradient3158);fill-opacity:1;\
-fill-rule:evenodd;stroke:none;stroke-width:1.5;stroke-lineca\
-p:butt;stroke-linejoin:miter;marker:none;marker-start:none;m\
-arker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-da\
-sharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility\
-:visible;display:inline;overflow:visible\"\012 id=\"path217\
-8\"\012 d=\"M 519 235 A 259 324 0 1 1 0,235 A 259 324 0 1 \
-1 519 235 z\"\012 transform=\"matrix(1.4203822,0,0,1.42038\
-22,0,200)\" />\012 <path\012 style=\"fill:#000000;fill-opac\
-ity:0.75;fill-rule:nonzero;stroke:none;stroke-width:1pt;stro\
-ke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1\"\012 \
- d=\"M 420,366 C 438,381 455,400 478,408 C 523,427 576,424 \
-620,405 C 632,400 644,393 655,387 C 652,389 638,397 649,391 \
-C 658,385 666,379 676,376 C 688,370 673,379 669,382 C 637,40\
-1 604,421 566,427 C 526,435 482,429 446,408 C 431,398 419,38\
-5 405,374 C 410,371 415,368 420,366 z \" />\012 <path\012 \
-style=\"fill:#000000;fill-opacity:0.75;fill-rule:nonzero;stro\
-ke:none;stroke-width:1pt;stroke-linecap:butt;stroke-linejoin\
-:miter;stroke-opacity:1\"\012 d=\"M 322,366 C 303,381 286,4\
-00 263,408 C 218,427 166,424 121,405 C 109,400 98,393 86,387\
- C 89,389 103,397 93,391 C 84,385 75,379 65,376 C 53,370 68,\
-379 72,382 C 104,401 137,421 175,427 C 216,435 260,429 295,4\
-08 C 310,398 322,385 336,374 C 331,371 326,368 322,366 z \" /\
->\012 <path\012 style=\"fill:#000000;fill-opacity:0.75;fil\
-l-rule:nonzero;stroke:none;stroke-width:1pt;stroke-linecap:b\
-utt;stroke-linejoin:miter;stroke-opacity:1\"\012 d=\"M 363,\
-383 C 347,418 353,458 345,495 C 339,525 324,551 312,579 C 30\
-4,598 298,620 309,639 C 317,655 335,667 353,669 C 379,671 40\
-5,664 429,653 C 442,646 405,667 423,656 C 429,652 434,647 44\
-1,645 C 455,639 439,650 434,653 C 408,669 378,679 347,679 C \
-327,679 308,667 297,651 C 285,634 287,613 294,594 C 302,570 \
-316,548 324,523 C 335,493 335,460 338,428 C 340,415 342,401 \
-349,390 C 353,388 358,385 363,383 z \" />\012 <path\012 st\
-yle=\"fill:#000000;fill-opacity:0.75;fill-rule:nonzero;stroke\
-:none;stroke-width:1pt;stroke-linecap:butt;stroke-linejoin:m\
-iter;stroke-opacity:1\"\012 d=\"M 206,735 C 245,737 285,740\
- 324,744 C 357,745 391,746 424,744 C 468,738 510,723 550,703\
- C 552,703 544,709 541,711 C 531,718 518,722 507,727 C 474,7\
-40 440,751 405,754 C 360,756 314,754 268,749 C 243,747 218,7\
-46 193,745 C 197,741 201,738 206,735 z \" />\012 </g>\012</svg>\012"
-### end
diff --git a/Quinteti.activity/olpcgames/dbusproxy.py b/Quinteti.activity/olpcgames/dbusproxy.py
deleted file mode 100644
index a103e28..0000000
--- a/Quinteti.activity/olpcgames/dbusproxy.py
+++ /dev/null
@@ -1,93 +0,0 @@
-"""Spike test for a safer networking system for DBUS-based objects"""
-from olpcgames import eventwrap, util
-from dbus import proxies
-import logging
-log = logging.getLogger( 'dbus' )
-log.setLevel( logging.DEBUG )
-
-def wrap( value, tube=None,path=None ):
- """Wrap object with any required pygame-side proxies"""
- if isinstance( value,proxies._ProxyMethod ):
- return DBUSMethod( value, tube=tube, path=path )
- elif isinstance( value, proxies._DeferredMethod ):
- value._proxy_method = DBUSMethod( value._proxy_method, tube=tube, path=path )
- return value
- elif isinstance( value, proxies.ProxyObject ):
- return DBUSProxy( value, tube=tube, path=path )
- else:
- return value
-
-class DBUSProxy( object ):
- """Proxy for the DBUS Proxy object"""
- def __init__( self, proxy, tube=None, path=None ):
- log.info( 'Creating Pygame-side proxy for %s (%s)', proxy,path )
- self.__proxy = proxy
- self.__tube = tube
- self.__path = path
- def __getattr__( self, key ):
- """Retrieve attribute of given key"""
- from dbus import proxies
- return wrap( getattr( self.__proxy, key ) )
- def add_signal_receiver( self, callback, eventName, interface, path=None, sender_keyword='sender'):
- """Add a new signal handler (which will be called many times) for given signal
- """
- log.info( """Setting signal receiver %s for event %s on interface %s (object path %s) with sender_keyword = %r""",
- callback, eventName, interface, path, sender_keyword,
- )
- log.debug( """proxy: %s proxy.tube: %s""", self.__proxy, self.__proxy.tube )
- self.__tube.add_signal_receiver(
- Callback( callback ),
- eventName,
- interface,
- path = path or self.__path,
- sender_keyword = sender_keyword,
- )
-
-class DBUSMethod( object ):
- """DBUS method which does callbacks in the Pygame (eventwrapper) thread"""
- def __init__( self, proxy, tube,path ):
- log.info( 'Creating Pygame-side method proxy for %s', proxy )
- self.__proxy = proxy
- self.__tube = tube
- self.__path = path
- def __call__( self, *args, **named ):
- """Perform the asynchronous call"""
- log.info( 'Calling proxy for %s with *%s, **%s', self.__proxy, args, named )
- callback, errback = named.get( 'reply_handler'), named.get( 'error_handler' )
- if not callback:
- raise TypeError( """Require a reply_handler named argument to do any asynchronous call""" )
- else:
- callback = Callback( callback )
- if not errback:
- errback = defaultErrback
- else:
- errback = Callback( errback )
- named['reply_handler'] = callback
- named['error_handler'] = errback
- return self.__proxy( *args, **named )
-
-def defaultErrback( error ):
- """Log the error to stderr/log"""
- log.error( """Failure in DBUS call: %s""", error )
-
-class Callback( object ):
- """PyGTK-side callback which generates a CallbackResult to process on the Pygame side"""
- def __init__( self, callable, callContext = None):
- """Initialize the callback to process results"""
- self.callable = callable
- if callContext is None:
- callContext = util.get_traceback( None )
- self.callContext = callContext
- def __call__( self, *args, **named ):
- """PyGTK-side callback operation"""
- log.info( 'Callback %s return value *%s, **%s', self.callable, args, named )
- from olpcgames import eventwrap
- args = [wrap(a) for a in args]
- named = dict([
- (k,wrap(v)) for k,v in named.items()
- ])
- eventwrap.post(
- eventwrap.CallbackResult(
- self.callable, args, named, callContext = self.callContext
- )
- )
diff --git a/Quinteti.activity/olpcgames/eventwrap.py b/Quinteti.activity/olpcgames/eventwrap.py
deleted file mode 100644
index 402109c..0000000
--- a/Quinteti.activity/olpcgames/eventwrap.py
+++ /dev/null
@@ -1,388 +0,0 @@
-"""Provides substitute for Pygame's "event" module using gtkEvent
-
-Provides methods which will be substituted into Pygame in order to
-provide the synthetic events that we will feed into the Pygame queue.
-These methods are registered by the "install" method.
-
-This event queue does not support getting events only of a certain type.
-You need to get all pending events at a time, or filter them yourself. You
-can, however, block and unblock events of certain types, so that may be
-useful to you.
-
-Set_grab doesn't do anything (you are not allowed to grab events). Sorry.
-
-Extensions:
-
- wait( timeout=None ) -- allows you to wait for only a specified period
- before you return to the application. Can be used to e.g. wait for a
- short period, then release some resources, then wait a bit more, then
- release a few more resources, then a bit more...
-"""
-import pygame
-import gtk
-import Queue
-import thread, threading
-import logging
-from olpcgames import util
-
-log = logging.getLogger( 'olpcgames.eventwrap' )
-
-from pygame.event import Event, event_name, pump as pygame_pump, get as pygame_get
-
-class Event(object):
- """Mock pygame events"""
- def __init__(self, type, dict=None,**named):
- """Initialise the new event variables from dictionary and named become attributes"""
- self.type = type
- if dict:
- self.__dict__.update( dict )
- self.__dict__.update( named )
- def _get_dict( self ):
- return self.__dict__
- dict = property( _get_dict )
- def __repr__( self ):
- result = []
- for key,value in self.__dict__.items():
- if not key.startswith( '_' ):
- result.append( '%s = %r'%( key, value ))
- return '%s( %s, %s )'%(
- self.__class__.__name__,
- self.type,
- ",".join( result ),
- )
- def block( self ):
- """Block until this event is finished processing
-
- Event process is only finalized on the *next* call to retrieve an event
- after the processing operation in which the event is processed. In some
- extremely rare cases we might actually see that happen, were the
- file-saving event (for example) causes the Pygame event loop to exit.
- In that case, the GTK event loop *could* hang.
- """
- log.info( '''Blocking GTK thread on event: %s''', self )
- self.__lock = threading.Event()
- self.__lock.wait()
- def retire( self ):
- """Block the GTK event loop until this event is processed"""
- try:
- self.__lock.set()
- log.info( '''Released GTK thread on event: %s''', self )
- except AttributeError, err:
- pass
-
-class CallbackResult( object ):
- def __init__( self, callable, args, named, callContext=None ):
- """Perform callback in Pygame loop with args and named
-
- callContext is used to provide more information when there is
- a failure in the callback (for debugging purposes)
- """
- self.callable = callable
- self.args = args
- self.named = named
- if callContext is None:
- callContext = util.get_traceback( None )
- self.callContext = callContext
- def __call__( self ):
- """Perform the actual callback in the Pygame event loop"""
- try:
- self.callable( *self.args, **self.named )
- except Exception, err:
- log.error(
- """Failure in callback %s( *%s, **%s ): %s\n%s""",
- getattr(self.callable, '__name__',self.callable),
- self.args, self.named,
- util.get_traceback( err ),
- self.callContext
- )
-
-
-_EVENTS_TO_RETIRE = []
-
-def _releaseEvents( ):
- """Release/retire previously-processed events"""
- if _EVENTS_TO_RETIRE:
- for event in _EVENTS_TO_RETIRE:
- try:
- event.retire()
- except AttributeError, err:
- pass
-
-def _processCallbacks( events ):
- """Process any callbacks in events and remove from the stream"""
- result = []
- for event in events:
- if isinstance( event, CallbackResult ):
- event()
- else:
- result.append( event )
- if events and not result:
- result.append(
- Event( type=pygame.NOEVENT )
- )
- return result
-
-def _recordEvents( events ):
- """Record the set of events to retire on the next iteration"""
- global _EVENTS_TO_RETIRE
- events = _processCallbacks( events )
- _EVENTS_TO_RETIRE = events
- return events
-
-def install():
- """Installs this module (eventwrap) as an in-place replacement for the pygame.event module.
-
- Use install() when you need to interact with Pygame code written
- without reference to the olpcgames wrapper mechanisms to have the
- code use this module's event queue.
-
- XXX Really, use it everywhere you want to use olpcgames, as olpcgames
- registers the handler itself, so you will always wind up with it registered when
- you use olpcgames (the gtkEvent.Translator.hook_pygame method calls it).
- """
- log.info( 'Installing OLPCGames event wrapper' )
- from olpcgames import eventwrap
- import pygame
- pygame.event = eventwrap
- import sys
- sys.modules["pygame.event"] = eventwrap
-
-# Event queue:
-class _FilterQueue( Queue.Queue ):
- """Simple Queue sub-class with a put_left method"""
- def get_type( self, filterFunction, block=True, timeout=None ):
- """Get events of a given type
-
- Note: can raise Empty *even* when blocking if someone else
- pops the event off the queue before we get around to it.
- """
- self.not_empty.acquire()
- try:
- if not block:
- if self._empty_type( filterFunction ):
- raise Queue.Empty
- elif timeout is None:
- while self._empty_type( filterFunction ):
- self.not_empty.wait()
- else:
- if timeout < 0:
- raise ValueError("'timeout' must be a positive number")
- endtime = _time() + timeout
- while self._empty_type( filterFunction ):
- remaining = endtime - _time()
- if remaining <= 0.0:
- raise Queue.Empty
- self.not_empty.wait(remaining)
- item = self._get_type( filterFunction )
- self.not_full.notify()
- return item
- finally:
- self.not_empty.release()
- def _empty_type( self, filterFunction ):
- """Are we empty with respect to filterFunction?"""
- for element in self.queue:
- if filterFunction( element ):
- return False
- return True
- def _get_type( self, filterFunction ):
- """Get the first instance which matches filterFunction"""
- for element in self.queue:
- if filterFunction( element ):
- self.queue.remove( element )
- return element
- # someone popped the event off the queue before we got to it!
- raise Queue.Empty
- def peek_type( self, filterFunction= lambda x: True ):
- """Peek to see if we have filterFunction-matching element
-
- Note: obviously this is *not* thread safe, it's just informative...
- """
- try:
- for element in self.queue:
- if filterFunction( element ):
- return element
- return None
- except RuntimeError, err:
- return None # none yet, at least
-
-g_events = _FilterQueue()
-
-# Set of blocked events as set by set
-g_blocked = set()
-g_blockedlock = thread.allocate_lock() # should use threading instead
-g_blockAll = False
-
-def _typeChecker( types ):
- """Create check whether an event is in types"""
- try:
- if 1 in types:
- pass
- def check( element ):
- return element.type in types
- return check
- except TypeError, err:
- def check( element ):
- return element.type == types
- return check
-
-def pump():
- """Handle any window manager and other external events that aren't passed to the user
-
- Call this periodically (once a frame) if you don't call get(), poll() or wait()
- """
- pygame_pump()
- _releaseEvents()
-
-def get( types=None):
- """Get a list of all pending events
-
- types -- either an integer event-type or a sequence of integer event types
- which restrict the set of event-types returned from the queue. Keep in mind
- that if you do not remove events you may wind up with an eternally growing
- queue or a full queue. Normally you will want to remove all events in your
- top-level event-loop and propagate them yourself.
-
- Note: if you use types you lose all event ordering guarantees, events
- may show up after events which were originally produced before them due to
- the re-ordering of the queue on filtering!
- """
- pump()
- eventlist = []
- try:
- if types:
- check = _typeChecker( types )
- while True:
- eventlist.append(g_events.get_type( check, block=False))
- else:
- while True:
- eventlist.append(g_events.get(block=False))
- except Queue.Empty:
- pass
-
- pygameEvents = pygame_get()
- if pygameEvents:
- log.info( 'Raw Pygame events: %s', pygameEvents)
- eventlist.extend( pygameEvents )
- return _recordEvents( eventlist )
-
-def poll():
- """Get the next pending event if exists. Otherwise, return pygame.NOEVENT."""
- pump()
- try:
- result = g_events.get(block=False)
- return _recordEvents( [result] )[0]
- except Queue.Empty:
- return Event(pygame.NOEVENT)
-
-
-def wait( timeout = None):
- """Get the next pending event, wait up to timeout if none
-
- timeout -- if present, only wait up to timeout seconds, if we
- do not find an event before then, return None. timeout
- is an OLPCGames-specific extension.
- """
- pump()
- try:
- result = None
- result = g_events.get(block=True, timeout=timeout)
- try:
- return _recordEvents( [result] )[0]
- except IndexError, err:
- return Event( type=pygame.NOEVENT )
- except Queue.Empty, err:
- return None
-
-def peek(types=None):
- """True if there is any pending event
-
- types -- optional set of event-types used to check whether
- an event is of interest. If specified must be either a sequence
- of integers/longs or an integer/long.
- """
- if types:
- check = _typeChecker( types )
- return g_events.peek_type( check ) is not None
- return not g_events.empty()
-
-def clear():
- """Clears the entire pending queue of events
-
- Rarely used
- """
- try:
- discarded = []
- while True:
- discarded.append( g_events.get(block=False) )
- discarded = _recordEvents( discarded )
- _releaseEvents()
- return discarded
- except Queue.Empty:
- pass
-
-def set_blocked(item):
- """Block item/items from being added to the event queue"""
- g_blockedlock.acquire()
- try:
- # FIXME: we do not currently know how to block all event types when
- # you set_blocked(none).
- [g_blocked.add(x) for x in makeseq(item)]
- finally:
- g_blockedlock.release()
-
-def set_allowed(item):
- """Allow item/items to be added to the event queue"""
- g_blockedlock.acquire()
- try:
- if item is None:
- # Allow all events when you set_allowed(none). Strange, eh?
- # Pygame is a wonderful API.
- g_blocked.clear()
- else:
- [g_blocked.remove(x) for x in makeseq(item)]
- finally:
- g_blockedlock.release()
-
-def get_blocked(*args, **kwargs):
- g_blockedlock.acquire()
- try:
- blocked = frozenset(g_blocked)
- return blocked
- finally:
- g_blockedlock.release()
-
-def set_grab(grabbing):
- """This method will not be implemented"""
-
-def get_grab():
- """This method will not be implemented"""
-
-def post(event):
- """Post a new event to the Queue of events"""
- g_blockedlock.acquire()
- try:
- if getattr(event,'type',None) not in g_blocked:
- g_events.put(event, block=False)
- finally:
- g_blockedlock.release()
-
-def makeseq(obj):
- """Accept either a scalar object or a sequence, and return a sequence
- over which we can iterate. If we were passed a sequence, return it
- unchanged. If we were passed a scalar, return a tuple containing only
- that scalar. This allows the caller to easily support one-or-many.
- """
- # Strings are the exception because you can iterate over their chars
- # -- yet, for all the purposes I've ever cared about, I want to treat
- # a string as a scalar.
- if isinstance(obj, basestring):
- return (obj,)
- try:
- # Except as noted above, if you can get an iter() from an object,
- # it's a collection.
- iter(obj)
- return obj
- except TypeError:
- # obj is a scalar. Wrap it in a tuple so we can iterate over the
- # one item.
- return (obj,)
diff --git a/Quinteti.activity/olpcgames/gtkEvent.py b/Quinteti.activity/olpcgames/gtkEvent.py
deleted file mode 100644
index 6b20102..0000000
--- a/Quinteti.activity/olpcgames/gtkEvent.py
+++ /dev/null
@@ -1,289 +0,0 @@
-"""gtkEvent.py: translate GTK events into Pygame events."""
-import pygtk
-pygtk.require('2.0')
-import gtk
-import gobject
-import pygame
-from olpcgames import eventwrap
-import logging
-log = logging.getLogger( 'olpcgames.gtkevent' )
-##log.setLevel( logging.DEBUG )
-
-class _MockEvent(object):
- """Used to inject key-repeat events on the gtk side."""
- def __init__(self, keyval):
- self.keyval = keyval
-
-class Translator(object):
- """Utility class to translate GTK events into Pygame events
-
- The Translator object interprets incoming GTK events and generates
- Pygame events in the eventwrap module's queue as a result.
- It also handles generating Pygame style key-repeat events
- by synthesizing them via a GTK timer.
- """
- key_trans = {
- 'Alt_L': pygame.K_LALT,
- 'Alt_R': pygame.K_RALT,
- 'Control_L': pygame.K_LCTRL,
- 'Control_R': pygame.K_RCTRL,
- 'Shift_L': pygame.K_LSHIFT,
- 'Shift_R': pygame.K_RSHIFT,
- 'Super_L': pygame.K_LSUPER,
- 'Super_R': pygame.K_RSUPER,
- 'KP_Page_Up' : pygame.K_KP9,
- 'KP_Page_Down' : pygame.K_KP3,
- 'KP_End' : pygame.K_KP1,
- 'KP_Home' : pygame.K_KP7,
- 'KP_Up' : pygame.K_KP8,
- 'KP_Down' : pygame.K_KP2,
- 'KP_Left' : pygame.K_KP4,
- 'KP_Right' : pygame.K_KP6,
-
- }
-
- mod_map = {
- pygame.K_LALT: pygame.KMOD_LALT,
- pygame.K_RALT: pygame.KMOD_RALT,
- pygame.K_LCTRL: pygame.KMOD_LCTRL,
- pygame.K_RCTRL: pygame.KMOD_RCTRL,
- pygame.K_LSHIFT: pygame.KMOD_LSHIFT,
- pygame.K_RSHIFT: pygame.KMOD_RSHIFT,
- }
-
- def __init__(self, mainwindow, mouselistener=None):
- """Initialise the Translator with the windows to which to listen"""
- # _inner_evb is Mouselistener
- self._mainwindow = mainwindow
- if mouselistener is None:
- mouselistener = mainwindow
-
- self._inner_evb = mouselistener
-
- # Need to set our X event masks so we see mouse motion and stuff --
- mainwindow.set_events(
- gtk.gdk.KEY_PRESS_MASK | \
- gtk.gdk.KEY_RELEASE_MASK \
- )
-
- self._inner_evb.set_events(
- gtk.gdk.POINTER_MOTION_MASK | \
- gtk.gdk.POINTER_MOTION_HINT_MASK | \
- gtk.gdk.BUTTON_MOTION_MASK | \
- gtk.gdk.BUTTON_PRESS_MASK | \
- gtk.gdk.BUTTON_RELEASE_MASK
- )
-
- # Callback functions to link the event systems
- mainwindow.connect('unrealize', self._quit)
- mainwindow.connect('key_press_event', self._keydown)
- mainwindow.connect('key_release_event', self._keyup)
- self._inner_evb.connect('button_press_event', self._mousedown)
- self._inner_evb.connect('button_release_event', self._mouseup)
- self._inner_evb.connect('motion-notify-event', self._mousemove)
-
- # You might need to do this
- mainwindow.set_flags(gtk.CAN_FOCUS)
- self._inner_evb.set_flags(gtk.CAN_FOCUS)
-
- # Internal data
- self.__stopped = False
- self.__keystate = [0] * 323
- self.__button_state = [0,0,0]
- self.__mouse_pos = (0,0)
- self.__repeat = (None, None)
- self.__held = set()
- self.__held_time_left = {}
- self.__held_last_time = {}
- self.__tick_id = None
-
- #print "translator initialized"
- self._inner_evb.connect( 'expose-event', self.do_expose_event )
-# screen = gtk.gdk.screen_get_default()
-# screen.connect( 'size-changed', self.do_resize_event )
- self._inner_evb.connect( 'configure-event', self.do_resize_event )
- def do_expose_event(self, event, widget):
- """Handle exposure event (trigger redraw by gst)"""
- log.info( 'Expose event: %s', event )
- from olpcgames import eventwrap
- eventwrap.post( eventwrap.Event( eventwrap.pygame.VIDEOEXPOSE ))
- return True
- def do_resize_event( self, activity, event ):
- """Our screen (actually, the default screen) has resized"""
- log.info( 'Resize event: %s %s', activity, event )
- log.info( 'Event values: %s', (event.width,event.height) )
-# from olpcgames import eventwrap
-# # shouldn't the activity's window have this information too?
-# eventwrap.post(
-# eventwrap.Event(
-# eventwrap.pygame.VIDEORESIZE,
-# dict(size=(event.width,event.height), width=event.width, height=event.height)
-# )
-# )
- return False # continue processing
- def hook_pygame(self):
- """Hook the various Pygame features so that we implement the event APIs"""
- # Pygame should be initialized. Hijack their key and mouse methods
- pygame.key.get_pressed = self._get_pressed
- pygame.key.set_repeat = self._set_repeat
- pygame.mouse.get_pressed = self._get_mouse_pressed
- pygame.mouse.get_pos = self._get_mouse_pos
- import eventwrap
- eventwrap.install()
-
- def _quit(self, data=None):
- self.__stopped = True
- eventwrap.post(eventwrap.Event(pygame.QUIT))
-
- def _keydown(self, widget, event):
- key = event.keyval
- log.debug( 'key down: %s', key )
- if key in self.__held:
- return True
- else:
- if self.__repeat[0] is not None:
- self.__held_last_time[key] = pygame.time.get_ticks()
- self.__held_time_left[key] = self.__repeat[0]
- self.__held.add(key)
-
- return self._keyevent(widget, event, pygame.KEYDOWN)
-
- def _keyup(self, widget, event):
- key = event.keyval
- if self.__repeat[0] is not None:
- if key in self.__held:
- # This is possibly false if set_repeat() is called with a key held
- del self.__held_time_left[key]
- del self.__held_last_time[key]
- self.__held.discard(key)
-
- return self._keyevent(widget, event, pygame.KEYUP)
-
- def _keymods(self):
- """Extract the keymods as they stand currently."""
- mod = 0
- for key_val, mod_val in self.mod_map.iteritems():
- mod |= self.__keystate[key_val] and mod_val
- return mod
-
-
- def _keyevent(self, widget, event, type):
- key = gtk.gdk.keyval_name(event.keyval)
- if key is None:
- # No idea what this key is.
- return False
-
- keycode = None
- if key in self.key_trans:
- keycode = self.key_trans[key]
- elif hasattr(pygame, 'K_'+key.upper()):
- keycode = getattr(pygame, 'K_'+key.upper())
- elif hasattr(pygame, 'K_'+key.lower()):
- keycode = getattr(pygame, 'K_'+key.lower())
- elif key == 'XF86Start':
- # view source request, specially handled...
- self._mainwindow.view_source()
- else:
- print 'Key %s unrecognized'%key
-
- if keycode is not None:
- if type == pygame.KEYDOWN:
- mod = self._keymods()
- self.__keystate[keycode] = type == pygame.KEYDOWN
- if type == pygame.KEYUP:
- mod = self._keymods()
- ukey = unichr(gtk.gdk.keyval_to_unicode(event.keyval))
- if ukey == '\000':
- ukey = ''
- evt = eventwrap.Event(type, key=keycode, unicode=ukey, mod=mod)
- assert evt.key, evt
- self._post(evt)
- return True
-
- def _get_pressed(self):
- """Retrieve map/array of which keys are currently depressed (held down)"""
- return self.__keystate
-
- def _get_mouse_pressed(self):
- """Return three-element array of which mouse-buttons are currently depressed (held down)"""
- return self.__button_state
-
- def _mousedown(self, widget, event):
- self.__button_state[event.button-1] = 1
- return self._mouseevent(widget, event, pygame.MOUSEBUTTONDOWN)
-
- def _mouseup(self, widget, event):
- self.__button_state[event.button-1] = 0
- return self._mouseevent(widget, event, pygame.MOUSEBUTTONUP)
-
- def _mouseevent(self, widget, event, type):
-
- evt = eventwrap.Event(type,
- button=event.button,
- pos=(event.x, event.y))
- self._post(evt)
- return True
-
- def _mousemove(self, widget, event):
- # From http://www.learningpython.com/2006/07/25/writing-a-custom-widget-using-pygtk/
- # if this is a hint, then let's get all the necessary
- # information, if not it's all we need.
- if event.is_hint:
- x, y, state = event.window.get_pointer()
- else:
- x = event.x
- y = event.y
- state = event.state
-
- rel = (x - self.__mouse_pos[0],
- y - self.__mouse_pos[1])
- self.__mouse_pos = (x, y)
-
- self.__button_state = [
- state & gtk.gdk.BUTTON1_MASK and 1 or 0,
- state & gtk.gdk.BUTTON2_MASK and 1 or 0,
- state & gtk.gdk.BUTTON3_MASK and 1 or 0,
- ]
-
- evt = eventwrap.Event(pygame.MOUSEMOTION,
- pos=self.__mouse_pos,
- rel=rel,
- buttons=self.__button_state)
- self._post(evt)
- return True
-
- def _tick(self):
- """Generate synthetic events for held-down keys"""
- cur_time = pygame.time.get_ticks()
- for key in self.__held:
- delta = cur_time - self.__held_last_time[key]
- self.__held_last_time[key] = cur_time
-
- self.__held_time_left[key] -= delta
- if self.__held_time_left[key] <= 0:
- self.__held_time_left[key] = self.__repeat[1]
- self._keyevent(None, _MockEvent(key), pygame.KEYDOWN)
-
- return True
-
- def _set_repeat(self, delay=None, interval=None):
- """Set the key-repetition frequency for held-down keys"""
- if delay is not None and self.__repeat[0] is None:
- self.__tick_id = gobject.timeout_add(10, self._tick)
- elif delay is None and self.__repeat[0] is not None:
- gobject.source_remove(self.__tick_id)
- self.__repeat = (delay, interval)
-
- def _get_mouse_pos(self):
- """Retrieve the current mouse position as a two-tuple of integers"""
- return self.__mouse_pos
-
- def _post(self, evt):
- try:
- eventwrap.post(evt)
- except pygame.error, e:
- if str(e) == 'Event queue full':
- print "Event queue full!"
- pass
- else:
- raise e
diff --git a/Quinteti.activity/olpcgames/mesh.py b/Quinteti.activity/olpcgames/mesh.py
deleted file mode 100644
index 1ad4c43..0000000
--- a/Quinteti.activity/olpcgames/mesh.py
+++ /dev/null
@@ -1,583 +0,0 @@
-'''Utilities for wrapping the telepathy network for Pygame
-
-The 'mesh' module allows your Pygame game to be Shared
-across the OLPC networking infrastructure (D-bus and Tubes).
-It offers a simplified view of the Telepathy system.
-
-All Sugar activities have a 'Share' menu (toolbar) which is
-intended to allow other people to join the activity instance
-and collaborate with you. When you select Share, the activity's
-icon appears on the Neighborhood view of other laptops.
-
-If you do nothing else with networking, this is all that will
-happen: if anyone selects your shared activity icon, they will
-just spawn a new instance of the activity, and they will get to
-play your game alone.
-
-The mesh module automatically sets up a connection from each
-participant to every other participant. It provides (string based)
-communications channels that let you either broadcast messages
-to other users or communicate point-to-point to one other user.
-
-You can use the "handles" which uniquely idenify users to send
-messages to an individual user (send_to( handle, message )) or
-broadcast( message ) to send a message to all participants.
-
-More advanced (structured) networking can be handled by using
-the get_object( handle, path ) function, which looks up an object
-(by DBUS path) shared by the user "handle" and returns a
-DBUS/Telepathy proxy for that object. The object you get back is
-actually an olpcgames.dbusproxy.DBUSProxy instance, which
-enforces asynchronous operations and runs your
-reply_handler/error_handler in the Pygame event loop.
-
-NOTE:
- You *cannot* make synchronous calls on these objects!
- You must use the named arguments:
-
- reply_handler, error_handler
-
- for every call which you perform on a shared object (normally
- these are ExportedGObject instances).
-
-If you want to run your callbacks in the GTK event loop (for instance
-because they need to handle GTK-side objects), you can use the
-dbus_get_object function. This is *not* recommended for normal
-usage, as any call to Pygame operations within the GTK event loop
-can cause a segfault/core of your entire Activity.
-
-Note:
-
- mesh sets up N**2 connections for each shared activity, obviously
- that will not scale to very large shared activities.
-
-Note:
-
- The intention is that mesh will be refactored, possibly as a
- new module called "olpcgames.network", which would break out
- the various components so that there is no longer an assumed
- networking layout. We will attempt to retain the mesh module's
- API as we do so.
-
-Events produced:
-
- olpcgames.CONNECT -- The tube connection was started. (i.e., the
- user clicked Share or started the activity from the Neighborhood
- screen).
-
- Event properties:
-
- id -- a unique identifier for this connection. (shouldn't be needed
- for anything)
-
- olpcgames.PARTICIPANT_ADD -- A participant joined the activity.
- This will trigger for the local user as well as any arriving remote
- users. Note that this *only* occurs after the activity is shared,
- that is, the local user does not appear until after they have
- shared a locally-started activity.
-
- Event properties:
-
- handle -- the arriving user's handle (a uniquely identifying string
- assigned to the user by the Telepathy system, not human
- readable), see lookup_buddy to retrieve human-readable
- descriptions of the user.
-
- olpcgames.PARTICIPANT_REMOVE -- A participant quit the activity.
-
- Event properties:
-
- handle -- the departing user's handle.
-
- olpcgames.MESSAGE_UNI -- A message was sent to you.
-
- Event properties:
-
- content -- the content of the message (a string)
- handle -- the handle of the sending user.
-
- olpcgames.MESSAGE_MULTI -- A message was sent to everyone.
-
- Event properties:
-
- content -- the content of the message (a string)
- handle -- the handle of the sending user.
-
-Note:
-
- Eventually we will stop using top-level Pygame event types for the
- various networking message types (currently four of them). We will
- likely use UserEvent with a sub-type specifier for the various events
- that OLPCGames produces.
-
-See Also:
-
- http://blog.vrplumber.com/2016 -- Discussion of how Productive uses
- the mesh module and raw Telepathy (ExportedGObject instances)
-'''
-import logging
-log = logging.getLogger( 'olpcgames.mesh' )
-##log.setLevel( logging.DEBUG )
-import olpcgames
-from olpcgames.util import get_traceback
-try:
- from sugar.presence.tubeconn import TubeConnection
-except ImportError, err:
- TubeConnection = object
-try:
- from dbus.gobject_service import ExportedGObject
-except ImportError, err:
- ExportedGObject = object
-from dbus.service import method, signal
-
-try:
- import telepathy
-except ImportError, err:
- telepathy = None
-
-try:
- import sugar.presence.presenceservice
-except Exception, err:
- pass
-import pygame.event as PEvent
-
-class OfflineError( Exception ):
- """Raised when we cannot complete an operation due to being offline"""
-
-DBUS_IFACE="org.laptop.games.pygame"
-DBUS_PATH="/org/laptop/games/pygame"
-DBUS_SERVICE = None
-
-
-### NEW PYGAME EVENTS ###
-
-CONNECT = olpcgames.CONNECT
-PARTICIPANT_ADD = olpcgames.PARTICIPANT_ADD
-PARTICIPANT_REMOVE = olpcgames.PARTICIPANT_REMOVE
-MESSAGE_UNI = olpcgames.MESSAGE_UNI
-MESSAGE_MULTI = olpcgames.MESSAGE_MULTI
-
-
-# Private objects for useful purposes!
-pygametubes = []
-text_chan, tubes_chan = (None, None)
-conn = None
-initiating = False
-joining = False
-
-connect_callback = None
-
-def is_initiating():
- '''A version of is_initiator that's a bit less goofy, and can be used
- before the Tube comes up.'''
- global initiating
- return initiating
-
-def is_joining():
- '''Returns True if the activity was started up by means of the
- Neighbourhood mesh view.'''
- global joining
- return joining
-
-def set_connect_callback(cb):
- '''Just the same as the Pygame event loop can listen for CONNECT,
- this is just an ugly callback that the glib side can use to be aware
- of when the Tube is ready.'''
- global connect_callback
- connect_callback = cb
-
-def activity_shared(activity):
- '''Called when the user clicks Share.'''
-
- global initiating
- initiating = True
-
- _setup(activity)
-
-
- log.debug('This is my activity: making a tube...')
- channel = tubes_chan[telepathy.CHANNEL_TYPE_TUBES]
- if hasattr( channel, 'OfferDBusTube' ):
- id = channel.OfferDBusTube(
- DBUS_SERVICE, {})
- else:
- id = channel.OfferTube(
- telepathy.TUBE_TYPE_DBUS, DBUS_SERVICE, {})
-
- global connect_callback
- if connect_callback is not None:
- connect_callback()
-
-def activity_joined(activity):
- '''Called at the startup of our Activity, when the user started it via Neighborhood intending to join an existing activity.'''
-
- # Find out who's already in the shared activity:
- log.debug('Joined an existing shared activity')
-
- for buddy in activity._shared_activity.get_joined_buddies():
- log.debug('Buddy %s is already in the activity' % buddy.props.nick)
-
-
- global initiating
- global joining
- initiating = False
- joining = True
-
-
- _setup(activity)
-
- tubes_chan[telepathy.CHANNEL_TYPE_TUBES].ListTubes(
- reply_handler=_list_tubes_reply_cb,
- error_handler=_list_tubes_error_cb)
-
- global connect_callback
- if connect_callback is not None:
- connect_callback()
-
-def _getConn( activity ):
- log.debug( '_getConn' )
- global conn
- if conn:
- return conn
- else:
- if hasattr( activity._shared_activity, 'telepathy_conn' ):
- log.debug( '''new-style api for retrieving telepathy connection present''' )
- conn = activity._shared_activity.telepathy_conn
- else:
- pservice = _get_presence_service()
- log.debug( '_get_presence_service -> %s', pservice )
- name, path = pservice.get_preferred_connection()
- log.debug( '_get_presence_service -> %s, %s', name, path)
- conn = telepathy.client.Connection(name, path)
- log.debug( 'Telepathy Client Connection: %s', conn )
- return conn
-
-
-
-def _setup(activity):
- '''Determines text and tube channels for the current Activity. If no tube
-channel present, creates one. Updates text_chan and tubes_chan.
-
-setup(sugar.activity.Activity, telepathy.client.Connection)'''
- global text_chan, tubes_chan, DBUS_SERVICE
- log.info( 'Setup for %s', activity )
- if not DBUS_SERVICE:
- DBUS_SERVICE = activity.get_bundle_id()
- if not activity.get_shared():
- log.error('Failed to share or join activity')
- raise "Failure"
-
- if hasattr( activity._shared_activity, 'telepathy_tubes_chan' ):
- log.debug( '''Improved channel setup API available''' )
- _getConn( activity )
- conn = activity._shared_activity.telepathy_conn
- tubes_chan = activity._shared_activity.telepathy_tubes_chan
- text_chan = activity._shared_activity.telepathy_text_chan
- else:
- log.debug( '''Old-style setup API''' )
- bus_name, conn_path, channel_paths = activity._shared_activity.get_channels()
- _getConn( activity )
-
- # Work out what our room is called and whether we have Tubes already
- room = None
- tubes_chan = None
- text_chan = None
- for channel_path in channel_paths:
- log.debug( 'Testing channel path: %s', channel_path)
- channel = telepathy.client.Channel(bus_name, channel_path)
- htype, handle = channel.GetHandle()
- log.debug( ' Handle Type: %s Handle: %s', htype, handle)
- if htype == telepathy.HANDLE_TYPE_ROOM:
- log.debug('Found our room: it has handle#%d "%s"',
- handle, conn.InspectHandles(htype, [handle])[0])
- room = handle
- ctype = channel.GetChannelType()
- if ctype == telepathy.CHANNEL_TYPE_TUBES:
- log.debug('Found our Tubes channel at %s', channel_path)
- tubes_chan = channel
- elif ctype == telepathy.CHANNEL_TYPE_TEXT:
- log.debug('Found our Text channel at %s', channel_path)
- text_chan = channel
-
- if room is None:
- log.error("Presence service didn't create a room")
- raise "Failure"
- if text_chan is None:
- log.error("Presence service didn't create a text channel")
- raise "Failure"
-
- # Make sure we have a Tubes channel - PS doesn't yet provide one
- if tubes_chan is None:
- log.debug("Didn't find our Tubes channel, requesting one...")
- tubes_chan = conn.request_channel(telepathy.CHANNEL_TYPE_TUBES,
- telepathy.HANDLE_TYPE_ROOM, room, True)
-
- tubes_chan[telepathy.CHANNEL_TYPE_TUBES].connect_to_signal('NewTube',
- new_tube_cb)
-
- log.info( 'Setup for %s complete', activity )
- return (text_chan, tubes_chan)
-
-def new_tube_cb(id, initiator, type, service, params, state):
- log.debug("New_tube_cb called: %s %s %s" % (id, initiator, type))
- if (type == telepathy.TUBE_TYPE_DBUS and service == DBUS_SERVICE):
- if state == telepathy.TUBE_STATE_LOCAL_PENDING:
- channel = tubes_chan[telepathy.CHANNEL_TYPE_TUBES]
- if hasattr( channel, 'AcceptDBusTube' ):
- channel.AcceptDBusTube( id )
- else:
- channel.AcceptTube(id)
-
- tube_conn = TubeConnection(conn,
- tubes_chan[telepathy.CHANNEL_TYPE_TUBES],
- id, group_iface=text_chan[telepathy.CHANNEL_INTERFACE_GROUP])
-
- global pygametubes, initiating
- pygametubes.append(PygameTube(tube_conn, initiating, len(pygametubes)))
-
-
-def _list_tubes_reply_cb(tubes):
- for tube_info in tubes:
- new_tube_cb(*tube_info)
-
-def _list_tubes_error_cb(e):
- log.error('ListTubes() failed: %s', e)
-
-def lookup_buddy( dbus_handle, callback, errback=None ):
- """Do a lookup on the buddy information, callback with the information
-
- Calls callback( buddy ) with the result of the lookup, or errback( error ) with
- a dbus description of the error in the lookup process.
-
- returns None
- """
- log.debug('Trying to find owner of handle %s...', dbus_handle)
- cs_handle = instance().tube.bus_name_to_handle[dbus_handle]
- log.debug('Trying to find my handle in %s...', cs_handle)
- group = text_chan[telepathy.CHANNEL_INTERFACE_GROUP]
- log.debug( 'Calling GetSelfHandle' )
- if not errback:
- def errback( error ):
- log.error( """Failure retrieving handle for buddy lookup: %s""", error )
- def with_my_csh( my_csh ):
- log.debug('My handle in that group is %s', my_csh)
- def _withHandle( handle ):
- """process the results of the handle values"""
- # XXX: we're assuming that we have Buddy objects for all contacts -
- # this might break when the server becomes scalable.
- pservice = _get_presence_service()
- name, path = pservice.get_preferred_connection()
- callback( pservice.get_buddy_by_telepathy_handle(name, path, handle) )
- if my_csh == cs_handle:
- conn.GetSelfHandle(reply_handler = _withHandle, error_handler=errback)
- log.debug('CS handle %s belongs to me, looking up with GetSelfHandle', cs_handle)
- elif group.GetGroupFlags() & telepathy.CHANNEL_GROUP_FLAG_CHANNEL_SPECIFIC_HANDLES:
- handle = group.GetHandleOwners([cs_handle])[0]
- log.debug('CS handle %s belongs to %s', cs_handle, handle)
- _withHandle( handle )
- else:
- handle = cs_handle
- log.debug('non-CS handle %s belongs to itself', handle)
- _withHandle( handle )
- group.GetSelfHandle( reply_handler = with_my_csh, error_handler = errback)
-
-
-
-def get_buddy(dbus_handle):
- """DEPRECATED: Get a Buddy from a handle
-
- THIS API WAS NOT THREAD SAFE! It has been removed to avoid
- extremely hard-to-debug failures in activities. Use lookup_buddy
- instead!
-
- Code that read:
-
- get_buddy( handle )
- doSomething( handle, buddy )
- doSomethingElse( buddy )
-
- Translates to:
-
- def withBuddy( buddy ):
- doSomething( handle, buddy )
- doSomethingElse( buddy )
- lookup_buddy( handle, callback=withBuddy )
- """
- raise RuntimeError(
- """get_buddy is not thread safe and will crash your activity (hard). Use lookup_buddy."""
- )
-
-def _get_presence_service( ):
- """Attempt to retrieve the presence service (check for offline condition)
-
- The presence service, when offline, has no preferred connection type,
- so we check that before returning the object...
- """
- log.debug( """About to import sugar.presence.presenceservice""" )
- try:
- log.debug( 'About to retrieve presence service instance' )
- pservice = sugar.presence.presenceservice.get_instance()
- try:
- log.debug( ' Retrieved presence service instance: %s', pservice )
- name, path = pservice.get_preferred_connection()
- log.debug( ' Name = %s Path = %s', name, path )
- except (TypeError,ValueError), err:
- log.warn('Working in offline mode, cannot retrieve buddy information for %s: %s', handle, err )
- raise OfflineError( """Unable to retrieve buddy information, currently offline""" )
- else:
- return pservice
- except Exception, err:
- log.error( """Failure in _get_presence_service: %s""", get_traceback( err ))
-
-def instance(idx=0):
- return pygametubes[idx]
-
-
-class PygameTube(ExportedGObject):
- '''The object whose instance is shared across D-bus
-
- Call instance() to get the instance of this object for your activity service.
- Its 'tube' property contains the underlying D-bus Connection.
- '''
- def __init__(self, tube, is_initiator, tube_id):
- super(PygameTube, self).__init__(tube, DBUS_PATH)
- log.info( 'PygameTube init' )
- self.tube = tube
- self.is_initiator = is_initiator
- self.entered = False
- self.ordered_bus_names = []
- PEvent.post(PEvent.Event(CONNECT, id=tube_id))
-
- if not self.is_initiator:
- self.tube.add_signal_receiver(self.new_participant_cb, 'NewParticipants', DBUS_IFACE, path=DBUS_PATH)
- self.tube.watch_participants(self.participant_change_cb)
- self.tube.add_signal_receiver(self.broadcast_cb, 'Broadcast', DBUS_IFACE, path=DBUS_PATH, sender_keyword='sender')
-
-
- def participant_change_cb(self, added, removed):
- log.debug( 'participant_change_cb: %s %s', added, removed )
- for handle, bus_name in added:
- dbus_handle = self.tube.participants[handle]
- self.ordered_bus_names.append(dbus_handle)
- PEvent.post(PEvent.Event(PARTICIPANT_ADD, handle=dbus_handle))
-
- for handle in removed:
- dbus_handle = self.tube.participants[handle]
- self.ordered_bus_names.remove(dbus_handle)
- PEvent.post(PEvent.Event(PARTICIPANT_REMOVE, handle=dbus_handle))
-
- if self.is_initiator:
- if not self.entered:
- # Initiator will broadcast a new ordered_bus_names each time
- # a participant joins.
- self.ordered_bus_names = [self.tube.get_unique_name()]
- self.NewParticipants(self.ordered_bus_names)
-
- self.entered = True
-
- @signal(dbus_interface=DBUS_IFACE, signature='as')
- def NewParticipants(self, ordered_bus_names):
- '''This is the NewParticipants signal, sent when the authoritative list of ordered_bus_names changes.'''
- log.debug("sending NewParticipants: %s" % ordered_bus_names)
- pass
-
- @signal(dbus_interface=DBUS_IFACE, signature='s')
- def Broadcast(self, content):
- '''This is the Broadcast signal; it sends a message to all other activity participants.'''
- pass
-
- @method(dbus_interface=DBUS_IFACE, in_signature='s', out_signature='', sender_keyword='sender')
- def Tell(self, content, sender=None):
- '''This is the targeted-message interface; called when a message is received that was sent directly to me.'''
- PEvent.post(PEvent.Event(MESSAGE_UNI, handle=sender, content=content))
-
- def broadcast_cb(self, content, sender=None):
- '''This is the Broadcast callback, fired when someone sends a Broadcast signal along the bus.'''
- PEvent.post(PEvent.Event(MESSAGE_MULTI, handle=sender, content=content))
-
- def new_participant_cb(self, new_bus_names):
- '''This is the NewParticipants callback, fired when someone joins or leaves.'''
- log.debug("new participant. new bus names %s, old %s" % (new_bus_names, self.ordered_bus_names))
- if self.ordered_bus_names != new_bus_names:
- log.warn("ordered bus names out of sync with server, resyncing")
- self.ordered_bus_names = new_bus_names
-
-def send_to(handle, content=""):
- '''Sends the given message to the given buddy identified by handle.'''
- log.debug( 'send_to: %s %s', handle, content )
- remote_proxy = dbus_get_object(handle, DBUS_PATH)
- remote_proxy.Tell(content, reply_handler=dbus_msg, error_handler=dbus_err)
-
-def dbus_msg():
- log.debug("async reply to send_to")
-def dbus_err(e):
- log.error("async error: %s" % e)
-
-def broadcast(content=""):
- '''Sends the given message to all participants.'''
- log.debug( 'Broadcast: %s', content )
- instance().Broadcast(content)
-
-def my_handle():
- '''Returns the handle of this user
-
- Note, you can get a DBusException from this if you have
- not yet got a unique ID assigned by the bus. You may need
- to delay calling until you are sure you are connected.
- '''
- log.debug( 'my handle' )
- return instance().tube.get_unique_name()
-
-def is_initiator():
- '''Returns the handle of this user.'''
- log.debug( 'is initiator' )
- return instance().is_initiator
-
-def get_participants():
- '''Returns the list of active participants, in order of arrival.
- List is maintained by the activity creator; if that person leaves it may not stay in sync.'''
- log.debug( 'get_participants' )
- try:
- return instance().ordered_bus_names[:]
- except IndexError, err:
- return [] # no participants yet, as we don't yet have a connection
-
-def dbus_get_object(handle, path, warning=True):
- '''Get a D-bus object from another participant
-
- Note: this *must* be called *only* from the GTK mainloop, calling
- it from Pygame will cause crashes! If you are *sure* you only ever
- want to call methods on this proxy from GTK, you can use
- warning=False to silence the warning log message.
- '''
- if warning:
- log.warn( 'Use of dbus_get_object is only safe from the GTK mainloop, use dbus_get_object_proxy instead: %s %s', handle, path )
- return instance().tube.get_object(handle, path)
-
-def get_object(handle, path):
- '''Get a D-BUS proxy object from another participant for use in Pygame
-
- This is how you can communicate with other participants using
- arbitrary D-bus objects without having to manage the participants
- yourself. You can use the returned proxy's methods from Pygame,
- with your callbacks occuring in the Pygame thread, rather than
- in the DBUS/GTK event loop.
-
- Simply define a D-bus class with an interface and path that you
- choose; when you want a reference to the corresponding remote
- object on a participant, call this method.
-
- returns an olpcgames.dbusproxy.DBUSProxy( ) object wrapping
- the DBUSProxy object.
-
- The dbus_get_object_proxy name is deprecated
- '''
- log.debug( 'DBUS get_object( %r %r )', handle, path )
- from olpcgames import dbusproxy
- return dbusproxy.DBUSProxy(
- instance().tube.get_object( handle, path),
- tube=instance().tube,
- path=path
- )
-
-dbus_get_object_proxy = get_object
diff --git a/Quinteti.activity/olpcgames/pangofont.py b/Quinteti.activity/olpcgames/pangofont.py
deleted file mode 100644
index 441dfd1..0000000
--- a/Quinteti.activity/olpcgames/pangofont.py
+++ /dev/null
@@ -1,346 +0,0 @@
-"""Implement Pygame's font interface using Pango for international support
-
-Depends on:
-
- pygtk (to get the pango context)
- pycairo (for the pango rendering context)
- python-pango (obviously)
- numpy
- (pygame)
-
-As soon as you import this module you have loaded *all* of the above.
-You can still use pygame.font until you decide to call install(), which
-will replace pygame.font with this module.
-
-Notes:
-
- * no ability to load TTF files, PangoFont uses the font files registered
- with GTK/X to render graphics, it cannot load an arbitrary TTF file.
- Most non-Sugar Pygame games use bundled TTF files, which means
- that you will likely need at least some changes to your font handling.
-
- Note, however, that the Pygame Font class is available to load the TTF
- files, so if you don't want to take advantage of PangoFont for already
- written code, but want to use it for "system font" operations, you can
- mix the two.
-
- * metrics are missing, Pango can provide the information, but the more
- involved metrics system means that translating to the simplified model
- in Pygame has as of yet not been accomplished.
-
- * better support for "exotic" languages and scripts (which is why we use it)
-
-The main problem with SDL_ttf is that it doesn't handle internationalization
-nearly as well as Pango (in fact, pretty much nothing does). However, it is
-fairly fast and it has a rich interface. You should avoid fonts where possible,
-prerender using Pango for internationalizable text, and use Pango or SDL_ttf
-for text that really needs to be rerendered each frame. (Use SDL_ttf if profiling
-demonstrates that performance is poor with Pango.)
-
-Note:
- Font -- is the original Pygame Font class, which allows you to load
- fonts from TTF files/filenames
- PangoFont -- is the Pango-specific rendering engine which allows
- for the more involved cross-lingual rendering operations.
-"""
-import pango
-import logging
-import pangocairo
-import pygame.rect, pygame.image
-import gtk
-import struct
-from pygame import surface
-from pygame.font import Font
-from olpcgames import _cairoimage
-
-log = logging.getLogger( 'olpcgames.pangofont' )
-##log.setLevel( logging.DEBUG )
-
-# Install myself on top of pygame.font
-def install():
- """Replace Pygame's font module with this module"""
- log.info( 'installing' )
- from olpcgames import pangofont
- import pygame
- pygame.font = pangofont
- import sys
- sys.modules["pygame.font"] = pangofont
-
-class PangoFont(object):
- """Base class for a pygame.font.Font-like object drawn by Pango
-
- Attributes of note:
-
- fd -- instances Pango FontDescription object
- WEIGHT_* -- parameters for use with set_weight
- STYLE_* -- parameters for use with set_style
-
- """
- WEIGHT_BOLD = pango.WEIGHT_BOLD
- WEIGHT_HEAVY = pango.WEIGHT_HEAVY
- WEIGHT_LIGHT = pango.WEIGHT_LIGHT
- WEIGHT_NORMAL = pango.WEIGHT_NORMAL
- WEIGHT_SEMIBOLD = pango.WEIGHT_SEMIBOLD
- WEIGHT_ULTRABOLD = pango.WEIGHT_ULTRABOLD
- WEIGHT_ULTRALIGHT = pango.WEIGHT_ULTRALIGHT
- STYLE_NORMAL = pango.STYLE_NORMAL
- STYLE_ITALIC = pango.STYLE_ITALIC
- STYLE_OBLIQUE = pango.STYLE_OBLIQUE
- def __init__(self, family=None, size=None, bold=False, italic=False, underline=False, fd=None):
- """If you know what pango.FontDescription (fd) you want, pass it in as
- 'fd'. Otherwise, specify any number of family, size, bold, or italic,
- and we will try to match something up for you."""
-
- # Always set the FontDescription (FIXME - only set it if the user wants
- # to change something?)
- if fd is None:
- fd = pango.FontDescription()
- if family is not None:
- fd.set_family(family)
- if size is not None:
- log.debug( 'Pre-conversion size: %s', size )
- size = int(size*1024)
- log.debug( 'Font size: %s', size, )
- fd.set_size(size) # XXX magic number, pango's scaling
- self.fd = fd
- self.set_bold( bold )
- self.set_italic( italic )
- self.set_underline( underline )
-
- def render(self, text, antialias=True, color=(255,255,255), background=None ):
- """Render the font onto a new Surface and return it.
- We ignore 'antialias' and use system settings.
-
- text -- (unicode) string with the text to render
- antialias -- attempt to antialias the text or not
- color -- three or four-tuple of 0-255 values specifying rendering
- colour for the text
- background -- three or four-tuple of 0-255 values specifying rendering
- colour for the background, or None for trasparent background
-
- returns a pygame image instance
- """
- log.info( 'render: %r, antialias = %s, color=%s, background=%s', text, antialias, color, background )
-
- layout = self._createLayout( text )
- # determine pixel size
- (logical, ink) = layout.get_pixel_extents()
- ink = pygame.rect.Rect(ink)
-
- # Create a new Cairo ImageSurface
- csrf,cctx = _cairoimage.newContext( ink.w, ink.h )
- cctx = pangocairo.CairoContext(cctx)
-
- # Mangle the colors on little-endian machines. The reason for this
- # is that Cairo writes native-endian 32-bit ARGB values whereas
- # Pygame expects endian-independent values in whatever format. So we
- # tell our users not to expect transparency here (avoiding the A issue)
- # and we swizzle all the colors around.
-
- # render onto it
- if background is not None:
- background = _cairoimage.mangle_color( background )
- cctx.set_source_rgba(*background)
- cctx.paint()
-
- log.debug( 'incoming color: %s', color )
- color = _cairoimage.mangle_color( color )
- log.debug( ' translated color: %s', color )
-
- cctx.new_path()
- cctx.layout_path(layout)
- cctx.set_source_rgba(*color)
- cctx.fill()
-
- # Create and return a new Pygame Image derived from the Cairo Surface
- return _cairoimage.asImage( csrf )
-
- def set_bold( self, bold=True):
- """Set our font description's weight to "bold" or "normal"
-
- bold -- boolean, whether to set the value to "bold" weight or not
- """
- if bold:
- self.set_weight( self.WEIGHT_BOLD )
- else:
- self.set_weight( self.WEIGHT_NORMAL )
- def set_weight( self, weight ):
- """Explicitly set our pango-style weight value"""
- self.fd.set_weight( weight )
- return self.get_weight()
- def get_weight( self ):
- """Explicitly get our pango-style weight value"""
- return self.fd.get_weight()
- def get_bold( self ):
- """Return whether our font's weight is bold (or above)"""
- return self.fd.get_weight() >= pango.WEIGHT_BOLD
-
- def set_italic( self, italic=True ):
- """Set our "italic" value (style)"""
- if italic:
- self.set_style( self.STYLE_ITALIC )
- else:
- self.set_style( self.STYLE_NORMAL )
- def set_style( self, style ):
- """Set our font description's pango-style"""
- self.fd.set_style( style )
- return self.fd.get_style()
- def get_style( self ):
- """Get our font description's pango-style"""
- return self.fd.get_style()
- def get_italic( self ):
- """Return whether we are currently italicised"""
- return self.fd.get_style() == self.STYLE_ITALIC # what about oblique?
-
- def set_underline( self, underline=True ):
- """Set our current underlining properly"""
- self.underline = underline
- def get_underline( self ):
- """Retrieve our current underline setting"""
- return self.underline
-
- def _createLayout( self, text ):
- """Produces a Pango layout describing this text in this font"""
- # create layout
- layout = pango.Layout(gtk.gdk.pango_context_get())
- layout.set_font_description(self.fd)
- if self.underline:
- attrs = layout.get_attributes()
- if not attrs:
- attrs = pango.AttrList()
- attrs.insert(pango.AttrUnderline(pango.UNDERLINE_SINGLE, 0, 32767))
- layout.set_attributes( attrs )
- layout.set_text(text)
- return layout
-
- def size( self, text ):
- """Determine space required to render given text
-
- returns tuple of (width,height)
- """
- layout = self._createLayout( text )
- (logical, ink) = layout.get_pixel_extents()
- ink = pygame.rect.Rect(ink)
- return (ink.width,ink.height)
-
-## def get_linesize( self ):
-## """Determine inter-line spacing for the font"""
-## font = self.get_context().load_font( self.fd )
-## metrics = font.get_metrics()
-## return pango.PIXELS( metrics.get_ascent() )
-## def get_height( self ):
-## def get_ascent( self ):
-## def get_descent( self ):
-
-
-class SysFont(PangoFont):
- """Construct a PangoFont from a font description (name), size in pixels,
- bold, and italic designation. Similar to SysFont from Pygame."""
- def __init__(self, name, size, bold=False, italic=False):
- fd = pango.FontDescription(name)
- fd.set_absolute_size(size*pango.SCALE)
- if bold:
- fd.set_weight(pango.WEIGHT_BOLD)
- if italic:
- fd.set_style(pango.STYLE_OBLIQUE)
- super(SysFont, self).__init__(fd=fd)
-
-# originally defined a new class, no reason for that...
-NotImplemented = NotImplementedError
-
-def match_font(name,bold=False,italic=False):
- """Stub, does not work, use fontByDesc instead"""
- raise NotImplementedError("PangoFont doesn't support match_font directly, use SysFont or .fontByDesc")
-
-def fontByDesc(desc="",bold=False,italic=False):
- """Constructs a FontDescription from the given string representation.
-
-The format of the fontByDesc string representation is passed directly
-to the pango.FontDescription constructor and documented at:
-
- http://www.pygtk.org/docs/pygtk/class-pangofontdescription.html#constructor-pangofontdescription
-
-Bold and italic are provided as a convenience.
-
-The format of the string representation is:
-
- "[FAMILY-LIST] [STYLE-OPTIONS] [SIZE]"
-
-where FAMILY-LIST is a comma separated list of families optionally terminated by a comma, STYLE_OPTIONS is a whitespace separated list of words where each WORD describes one of style, variant, weight, or stretch, and SIZE is an decimal number (size in points). For example the following are all valid string representations:
-
- "sans bold 12"
- "serif,monospace bold italic condensed 16"
- "normal 10"
-
-The commonly available font families are: Normal, Sans, Serif and Monospace. The available styles are:
-Normal the font is upright.
-Oblique the font is slanted, but in a roman style.
-Italic the font is slanted in an italic style.
-
-The available weights are:
-Ultra-Light the ultralight weight (= 200)
-Light the light weight (=300)
-Normal the default weight (= 400)
-Bold the bold weight (= 700)
-Ultra-Bold the ultra-bold weight (= 800)
-Heavy the heavy weight (= 900)
-
-The available variants are:
-Normal
-Small-Caps
-
-The available stretch styles are:
-Ultra-Condensed the smallest width
-Extra-Condensed
-Condensed
-Semi-Condensed
-Normal the normal width
-Semi-Expanded
-Expanded
-Extra-Expanded
-Ultra-Expanded the widest width
- """
- fd = pango.FontDescription(name)
- if bold:
- fd.set_weight(pango.WEIGHT_BOLD)
- if italic:
- fd.set_style(pango.STYLE_OBLIQUE)
- return PangoFont(fd=fd)
-
-def get_init():
- """Return boolean indicating whether we are initialised
-
- Always returns True
- """
- return True
-
-def init():
- """Initialise the module (null operation)"""
- pass
-
-def quit():
- """De-initialise the module (null operation)"""
- pass
-
-def get_default_font():
- """Return default-font specification to be passed to e.g. fontByDesc"""
- return "sans"
-
-def get_fonts():
- """Return the set of all fonts available (currently just 3 generic types)"""
- return ["sans","serif","monospace"]
-
-
-def stdcolor(color):
- """Produce a 4-element 0.0-1.0 color value from input"""
- def fixlen(color):
- if len(color) == 3:
- return tuple(color) + (255,)
- elif len(color) == 4:
- return color
- else:
- raise TypeError("What sort of color is this: %s" % (color,))
- return [_fixColorBase(x) for x in fixlen(color)]
-def _fixColorBase( v ):
- """Return a properly clamped colour in floating-point space"""
- return max((0,min((v,255.0))))/255.0
diff --git a/Quinteti.activity/olpcgames/pausescreen.py b/Quinteti.activity/olpcgames/pausescreen.py
deleted file mode 100644
index 113a0ea..0000000
--- a/Quinteti.activity/olpcgames/pausescreen.py
+++ /dev/null
@@ -1,116 +0,0 @@
-"""Display a "paused" version of the currently-displayed screen
-
-This code is largely cribbed from the Pippy activity's display code,
-but we try to be a little more generally usable than they are, as
-we have more involved activities using the code.
-
-We use svgsprite to render a graphic which is stored in the
-olpcgames data directory over a dimmed version of the current
-screen contents.
-
-_LAST_EVENT_TIME -- tracks the last time that we saw an event
- come across the wire.
-"""
-import logging
-log = logging.getLogger( 'olpcgames.pausescreen' )
-import pygame
-from pygame import sprite
-
-_LAST_EVENT_TIME = 0
-
-def _set_last_event_time( time=None ):
- """Set time as the last event time
-
- time -- if None, pygame.time.get_ticks() is used
-
- returns time set
- """
- global _LAST_EVENT_TIME
- if time is None:
- time = pygame.time.get_ticks()
- _LAST_EVENT_TIME = time
- return time
-
-def last_event_time( ):
- """Return the duration since last event for pausing operations
-
- returns time in seconds
- """
- global _LAST_EVENT_TIME
- return (pygame.time.get_ticks() - _LAST_EVENT_TIME)/1000.
-
-
-def get_events( sleep_timeout = 10, pause=None, **args ):
- """Retrieve the set of pending events or sleep
-
- sleep_timeout -- dormant period before we invoke pause_screen
- pause -- callable to produce visual notification of pausing, normally
- by taking the current screen and modifying it in some way. Defaults
- to pauseScreen in this module. If you return nothing from this
- function then no restoration or display-flipping will occur
- *args -- if present, passed to 'pause' to configuration operation (e.g.
- to specify a different overlaySVG file)
-
- returns set of pending events (potentially empty)
- """
- if not pause:
- pause = pauseScreen
- events = pygame.event.get( )
- if not events:
- log.info( 'No events in queue' )
- old_screen = None
- if last_event_time() > sleep_timeout:
- # we've been waiting long enough, go to sleep visually
- log.warn( 'Pausing activity after %s with function %s', sleep_timeout, pause )
- old_screen = pause( )
- if old_screen:
- pygame.display.flip()
- # now we wait until there *are* some events (efficiently)
- # and retrieve any extra events that are waiting...
- events = [ pygame.event.wait() ] + pygame.event.get()
- log.warn( 'Activity restarted')
- if old_screen:
- restoreScreen( old_screen )
- if events:
- _set_last_event_time()
- return events
-
-def pauseScreen( overlaySVG=None ):
- """Display a "Paused" screen and suspend
-
- This default implementation will not do anything to shut down your
- simulation or other code running in other threads. It will merely block
- this thread (the pygame thread) until an event shows up in the
- eventwrap queue.
-
- Returns a surface to pass to restoreScreen to continue...
- """
- from olpcgames import svgsprite
- if not overlaySVG:
- from olpcgames.data import sleeping_svg
- overlaySVG = sleeping_svg.data
- screen = pygame.display.get_surface()
- old_screen = screen.copy() # save this for later.
- pause_sprite = svgsprite.SVGSprite(
- overlaySVG,
- )
- pause_sprite.rect.center = screen.get_rect().center
- group = sprite.RenderUpdates( )
- group.add( pause_sprite )
-
- # dim the screen and display the 'paused' message in the center.
- BLACK = (0,0,0)
- WHITE = (255,255,255)
- dimmed = screen.copy()
- dimmed.set_alpha(128)
- screen.fill(BLACK)
- screen.blit(dimmed, (0,0))
-
- group.draw( screen )
- return old_screen
-
-def restoreScreen( old_screen ):
- """Restore the original screen and return"""
- screen = pygame.display.get_surface()
- screen.blit(old_screen, (0,0))
- return old_screen
diff --git a/Quinteti.activity/olpcgames/svgsprite.py b/Quinteti.activity/olpcgames/svgsprite.py
deleted file mode 100644
index ad247dd..0000000
--- a/Quinteti.activity/olpcgames/svgsprite.py
+++ /dev/null
@@ -1,84 +0,0 @@
-"""RSVG/Cairo-based rendering of SVG into Pygame Images"""
-from pygame import sprite, Rect
-from olpcgames import _cairoimage
-
-class SVGSprite( sprite.Sprite ):
- """Sprite class which renders SVG source-code as a Pygame image
-
- Note:
-
- Currently this sprite class is a bit over-engineered, it gets in the way
- if you want to, e.g. animate among a number of SVG drawings, as it
- assumes that setSVG will always set a single SVG file for rendering.
- """
- rect = image = None
- resolution = None
- def __init__(
- self, svg=None, size=None, *args
- ):
- """Initialise the svg sprite
-
- svg -- svg source text (i.e. content of an svg file)
- size -- optional, to constrain size, (width,height), leaving one
- as None or 0 causes proportional scaling, leaving both
- as None or 0 causes natural scaling (screen resolution)
- args -- if present, groups to which to automatically add
- """
- self.size = size
- super( SVGSprite, self ).__init__( *args )
- if svg:
- self.setSVG( svg )
- def setSVG( self, svg ):
- """Set our SVG source"""
- self.svg = svg
- # XXX could delay this until actually asked to display...
- if self.size:
- width,height = self.size
- else:
- width,height = None,None
- self.image = self._render( width,height ).convert_alpha()
- rect = self.image.get_rect()
- if self.rect:
- rect.move( self.rect ) # should let something higher-level do that...
- self.rect = rect
-
- def _render( self, width, height ):
- """Render our SVG to a Pygame image"""
- import rsvg
- handle = rsvg.Handle( data = self.svg )
- originalSize = (width,height)
- scale = 1.0
- hw,hh = handle.get_dimension_data()[:2]
- if hw and hh:
- if not width:
- if not height:
- width,height = hw,hh
- else:
- scale = float(height)/hh
- width = hh/float(hw) * height
- elif not height:
- scale = float(width)/hw
- height = hw/float(hh) * width
- else:
- # scale only, only rendering as large as it is...
- if width/height > hw/hh:
- # want it taller than it is...
- width = hh/float(hw) * height
- else:
- height = hw/float(hh) * width
- scale = float(height)/hh
-
- csrf, ctx = _cairoimage.newContext( int(width), int(height) )
- ctx.scale( scale, scale )
- handle.render_cairo( ctx )
- return _cairoimage.asImage( csrf )
- return None
- def copy( self ):
- """Create a copy of this sprite without reloading the svg image"""
- result = self.__class__(
- size = self.size
- )
- result.image = self.image
- result.rect = Rect(self.rect)
- result.resolution = self.resolution
- return result
diff --git a/Quinteti.activity/olpcgames/textsprite.py b/Quinteti.activity/olpcgames/textsprite.py
deleted file mode 100644
index 7663630..0000000
--- a/Quinteti.activity/olpcgames/textsprite.py
+++ /dev/null
@@ -1,40 +0,0 @@
-"""Simple Sprite sub-class that renders via a PangoFont"""
-from pygame import sprite
-from olpcgames import pangofont
-
-class TextSprite( sprite.Sprite ):
- """Sprite with a simple text renderer"""
- image = rect = text = color = background = None
- def __init__( self, text=None, family=None, size=None, bold=False, italic=False, color=None, background=None ):
- super( TextSprite, self ).__init__( )
- self.font = pangofont.PangoFont( family=family, size=size, bold=bold, italic=italic )
- self.set_color( color )
- self.set_background( background )
- self.set_text( text )
- def set_text( self, text ):
- """Set our text string and render to a graphic"""
- self.text = text
- self.render( )
- def set_color( self, color =None):
- """Set our rendering colour (default white)"""
- self.color = color or (255,255,255)
- self.render()
- def set_background( self, color=None ):
- """Set our background color, default transparent"""
- self.background = color
- self.render()
- def render( self ):
- """Render our image and rect (or None,None)
-
- After a render you will need to move the rect member to the
- correct location on the screen.
- """
- if self.text:
- self.image = self.font.render( self.text, color = self.color, background = self.background )
- currentRect = self.rect
- self.rect = self.image.get_rect()
- if currentRect:
- self.rect.center = currentRect.center
- else:
- self.rect = None
- self.image = None
diff --git a/Quinteti.activity/olpcgames/util.py b/Quinteti.activity/olpcgames/util.py
deleted file mode 100644
index 49a23b0..0000000
--- a/Quinteti.activity/olpcgames/util.py
+++ /dev/null
@@ -1,79 +0,0 @@
-"""Abstraction layer for working outside the Sugar environment"""
-import traceback, cStringIO
-import logging
-log = logging.getLogger( 'olpcgames.util' )
-import os
-import os.path
-
-NON_SUGAR_ROOT = '~/.sugar/default/olpcgames'
-
-try:
- from sugar.activity.activity import get_bundle_path as _get_bundle_path
- def get_bundle_path( ):
- """Retrieve bundle path from activity with fix for silly registration bug"""
- path = _get_bundle_path()
- if path.endswith( '.activity.activity' ):
- log.warn( '''Found double .activity suffix in bundle path, truncating: %s''', path )
- path = path[:-9]
- return path
-except ImportError:
- log.warn( '''Do not appear to be running under Sugar, stubbing-in get_bundle_path''' )
- def get_bundle_path():
- """Retrieve a substitute data-path for non OLPC systems"""
- return os.getcwd()
-
-
-def get_activity_root( ):
- """Return the activity root for data storage operations
-
- If the activity is present, returns the activity's root,
- otherwise returns NON_SUGAR_ROOT as the directory.
- """
- import olpcgames
- if olpcgames.ACTIVITY:
- return olpcgames.ACTIVITY.get_activity_root()
- else:
- return os.path.expanduser( NON_SUGAR_ROOT )
-
-def data_path(file_name):
- """Return the full path to a file in the data sub-directory of the bundle"""
- return os.path.join(get_bundle_path(), 'data', file_name)
-def tmp_path(file_name):
- """Return the full path to a file in the temporary directory"""
- return os.path.join(get_activity_root(), 'tmp', file_name)
-
-def get_traceback(error):
- """Get formatted traceback from current exception
-
- error -- Exception instance raised
-
- Attempts to produce a 10-level traceback as a string
- that you can log off. Use like so:
-
- try:
- doSomething()
- except Exception, err:
- log.error(
- '''Failure during doSomething with X,Y,Z parameters: %s''',
- util.get_traceback( err ),
- )
- """
- if error is None:
- error = []
- for (f,l,func,statement) in traceback.extract_stack()[:-2]:
- if statement:
- statement = ': %s'%( statement, )
- if func:
- error.append( '%s.%s (%s)%s'%( f,func,l, statement))
- else:
- error.append( '%s (%s)%s'%( f,l, statement))
- return "\n".join( error )
- else:
- exception = str(error)
- file = cStringIO.StringIO()
- try:
- traceback.print_exc( limit=10, file = file )
- exception = file.getvalue()
- finally:
- file.close()
- return exception
diff --git a/Quinteti.activity/olpcgames/video.py b/Quinteti.activity/olpcgames/video.py
deleted file mode 100644
index 032aa13..0000000
--- a/Quinteti.activity/olpcgames/video.py
+++ /dev/null
@@ -1,178 +0,0 @@
-"""Video widget for displaying a gstreamer pipe
-
-Note: currently this module is not all that elegant or useful,
-we need a better recipe for using and working with Video
-under OLPCGames.
-"""
-import logging
-log = logging.getLogger( 'olpcgames.video' )
-#log.setLevel( logging.INFO )
-import os
-import signal
-import pygame
-import weakref
-import olpcgames
-from olpcgames import _gtkmain
-
-import pygtk
-pygtk.require('2.0')
-import gtk
-import gst
-
-class VideoWidget(gtk.DrawingArea):
- """Widget to render GStreamer video over our Pygame Canvas
-
- The VideoWidget is a simple GTK window which is
- held by the PygameCanvas, just as is the Pygame
- window we normally use. As such this approach
- *cannot* work without the GTK wrapper.
-
- It *should* be possible to use raw X11 operations
- to create a child window of the Pygame/SDL window
- and use that for the same purpose, but that would
- require some pretty low-level ctypes hacking.
-
- Attributes of Note:
-
- rect -- Pygame rectangle which tells us where to
- display ourselves, setting the rect changes the
- position and size of the window.
- """
- _imagesink = None
- _renderedRect = None
- def __init__(self, rect=None, force_aspect_ratio=True):
- super(VideoWidget, self).__init__()
- self.unset_flags(gtk.DOUBLE_BUFFERED)
- if rect is None:
- rect = pygame.Rect( (0,0), (160,120))
- self.rect = rect
- self.force_aspect_ratio = force_aspect_ratio
- self.set_size_request(rect.width,rect.height)
- olpcgames.WIDGET.put( self, rect.left,rect.top)
- self._renderedRect = rect
- self.show()
-
- def set_rect( self, rect ):
- """Set our rectangle (area of the screen)"""
- log.debug( 'Set rectangle: %s', rect )
- self.set_size_request(rect.width,rect.height)
- olpcgames.WIDGET.move( self, rect.left,rect.top)
- self.rect = rect
-
- def do_expose_event(self, event):
- """Handle exposure event (trigger redraw by gst)"""
- if self._imagesink:
- self._imagesink.expose()
- return False
- else:
- return True
-
- def set_sink(self, sink):
- """Set our window-sink for output"""
- assert self.window.xid
- self._imagesink = sink
- self._imagesink.set_xwindow_id(self.window.xid)
- self._imagesink.set_property('force-aspect-ratio', self.force_aspect_ratio)
-
-class PygameWidget( object ):
- """Render "full-screen" video to the entire Pygame screen
-
- Not particularly useful unless this happens to be exactly what you need.
- """
- def __init__( self ):
- try:
- window_id = pygame.display.get_wm_info()['window']
- except KeyError, err: # pygame-ctypes...
- window_id = int(os.environ['SDL_WINDOWID'])
- self.window_id = window_id
- self._imagesink = None
- #self._holder = _gtkmain.Holder()
- def set_sink( self, sink ):
- """Set up our gst sink"""
- log.info( 'Setting sink: %s', sink )
- self._imagesink = sink
- sink.set_xwindow_id( self.window_id )
-
-#pipe_desc = 'v4l2src ! video/x-raw-yuv,width=160,height=120 ! ffmpegcolorspace ! xvimagesink'
-class Player(object):
- pipe_desc = 'v4l2src ! ffmpegcolorspace ! video/x-raw-yuv ! xvimagesink'
- test_pipe_desc = 'videotestsrc ! ffmpegcolorspace ! video/x-raw-yuv ! xvimagesink'
- _synchronized = False
- def __init__(self, videowidget, pipe_desc=pipe_desc):
- self._playing = False
- self._videowidget = videowidget
-
- self._pipeline = gst.parse_launch(pipe_desc)
-
- bus = self._pipeline.get_bus()
- bus.enable_sync_message_emission()
- bus.add_signal_watch()
- bus.connect('sync-message::element', self.on_sync_message)
- bus.connect('message', self.on_message)
-
- def play(self):
- log.info( 'Play' )
- if self._playing == False:
- self._pipeline.set_state(gst.STATE_PLAYING)
- self._playing = True
-
- def pause(self):
- log.info( 'Pause' )
- if self._playing == True:
- if self._synchronized:
- log.debug( ' pause already sync\'d' )
- self._pipeline.set_state(gst.STATE_PAUSED)
- self._playing = False
- def stop( self ):
- """Stop all playback"""
- self._pipeline.set_state( gst.STATE_NULL )
-
- def on_sync_message(self, bus, message):
- log.info( 'Sync: %s', message )
- if message.structure is None:
- return
- if message.structure.get_name() == 'prepare-xwindow-id':
- self._synchronized = True
- self._videowidget.set_sink(message.src)
-
- def on_message(self, bus, message):
- log.info( 'Message: %s', message )
- t = message.type
- if t == gst.MESSAGE_ERROR:
- err, debug = message.parse_error()
- log.warn("Video error: (%s) %s" ,err, debug)
- self._playing = False
-
-if __name__ == "__main__":
- # Simple testing code...
- logging.basicConfig()
- log.setLevel( logging.DEBUG )
- from pygame import image,display, event
- import pygame
- def main():
- display.init()
- maxX,maxY = display.list_modes()[0]
- screen = display.set_mode( (maxX/3, maxY/3 ) )
-
- display.flip()
-
- pgw = PygameWidget( )
- p = Player( pgw, pipe_desc=Player.test_pipe_desc )
- p.play()
-
- clock = pygame.time.Clock()
-
- running = True
- while running:
- clock.tick( 60 )
- for evt in [pygame.event.wait()] + pygame.event.get():
- if evt.type == pygame.KEYDOWN:
- if p._playing:
- p.pause()
- else:
- p.play()
- elif evt.type == pygame.QUIT:
- p.stop()
- running = False
- #display.flip()
- main()
diff --git a/Quinteti.activity/setup.py b/Quinteti.activity/setup.py
deleted file mode 100644
index 530f97c..0000000
--- a/Quinteti.activity/setup.py
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/usr/bin/env python
-
-# Copyright (C) 2006, Red Hat, Inc.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-
-from sugar.activity import bundlebuilder
-
-bundlebuilder.start()
diff --git a/instalar activity b/instalar activity
deleted file mode 100644
index a64d1e1..0000000
--- a/instalar activity
+++ /dev/null
@@ -1,6 +0,0 @@
-En una consola ir hasta la carpeta src y ejecutar este comando:
-python setup.py dev
-
-Esto crea un link simbólico en $home/Activities.
-
-Al iniciar sugar-emulator se levantan las actividades en $home/Activities.
diff --git a/interfaz.txt b/interfaz.txt
deleted file mode 100644
index 817a7bc..0000000
--- a/interfaz.txt
+++ /dev/null
@@ -1,21 +0,0 @@
-class GameState
-# Un constructor inicia la partida.
- new(players: [String])
-# Un constructor que recupera el estado
- new(serialization: String)
-# Persiste el estado actual del juego
- serialization(): String
-# Obtiene el estado de una casilla, tupla numero y jugador o None si est vaca.
- get_square(row : int, col : int): (number: int, player: int) or None
-# Obtiene los nmeros que se pueden jugar.
- get_available_numbers(): [int]
-# Realiza una jugada en una celda y retorna si se pudo realizar.
- make_move(row: int, col : int, number : int, player: int): bool
-# Jugador habilitado para jugar, o None si la partida termina.
- get_enabled_player(): int
-# Puntaje de cada jugador
- get_player_score(player: int)
-# Obtiene el nombre de un jugador
- get_player_name(player: int): String
-# Obtiene la cantidad de jugadores
- get_player_count(): int \ No newline at end of file
diff --git a/resources/QuinTeTi.ai b/resources/QuinTeTi.ai
deleted file mode 100644
index 56640a5..0000000
--- a/resources/QuinTeTi.ai
+++ /dev/null
@@ -1,1128 +0,0 @@
-%PDF-1.4 %
-1 0 obj << /Type /Catalog /Pages 2 0 R /Metadata 231 0 R >> endobj 2 0 obj << /Type /Pages /Kids [ 5 0 R ] /Count 1 >> endobj 3 0 obj << /ModDate (D:20090604203238-03'00') /CreationDate (D:20090326233442Z) /Producer (Adobe PDF library 5.00) /Creator (Adobe Illustrator 10) >> endobj 5 0 obj << /Type /Page /MediaBox [ 0 0 1200 900 ] /Parent 2 0 R /PieceInfo << /Illustrator 132 1 R >> /LastModified (D:20090604203237-03'00') /ArtBox [ -1.85791 -1.8584 1200.58887 899 ] /Group 226 0 R /TrimBox [ 0 0 1200 900 ] /Thumb 227 0 R /Contents 229 0 R /Resources << /ColorSpace << /CS0 71 1 R /CS1 72 1 R >> /Properties << /MC0 75 1 R /MC1 175 0 R >> >> >> endobj 6 1 obj << /Length 1119 >> stream
-%!PS-Adobe-3.0 %%Creator: Adobe Illustrator(R) 10.0 %%AI8_CreatorVersion: 10.0 %%For: (mm) (mm) %%Title: (QuinTeTi2c .ai) %%CreationDate: 6/4/09 8:32 PM %%BoundingBox: -2 -2 1201 899 %%HiResBoundingBox: -1.8579 -1.8584 1200.5889 899 %%DocumentProcessColors: Cyan Magenta Yellow Black %AI5_FileFormat 6.0 %AI3_ColorUsage: Color %AI7_ImageSettings: 0 %%RGBProcessColor: 0 0 0 ([Registration]) %%AI6_ColorSeparationSet: 1 1 (AI6 Default Color Separation Set) %%+ Options: 1 16 0 1 0 1 0 0 0 0 1 1 1 18 0 0 0 0 0 0 0 0 -1 -1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 2 3 4 %%+ PPD: 1 21 0 0 60 45 2 2 1 0 0 1 0 0 0 0 0 0 0 0 0 0 () %AI3_TemplateBox: 600.5 449.5 600.5 449.5 %AI3_TileBox: -65 -1 1267 899 %AI3_DocumentPreview: None %AI5_ArtSize: 1200 900 %AI5_RulerUnits: 6 %AI9_ColorModel: 1 %AI5_ArtFlags: 0 0 0 1 0 0 1 0 0 %AI5_TargetResolution: 800 %AI5_NumLayers: 6 %AI9_OpenToView: -583 1633 0.5 1236 911 18 1 1 54 42 0 0 1 0 1 0 %AI5_OpenViewLayers: 767767 %%PageOrigin:-65 -1 %%AI3_PaperRect:-18 918 1350 -18 %%AI3_Margin:18 -18 -18 18 %AI7_GridSettings: 72 8 72 8 1 0 0.8 0.8 0.8 0.9 0.9 0.9 %AI9_Flatten: 1 %%EndComments endstream endobj 42 1 obj << /Length 25962 >> stream
-%%BoundingBox: -2 -2 1201 899 %%HiResBoundingBox: -1.8579 -1.8584 1200.5889 899 %AI7_Thumbnail: 128 96 8 %%BeginData: 24984 Hex Bytes %0000330000660000990000CC0033000033330033660033990033CC0033FF %0066000066330066660066990066CC0066FF009900009933009966009999 %0099CC0099FF00CC0000CC3300CC6600CC9900CCCC00CCFF00FF3300FF66 %00FF9900FFCC3300003300333300663300993300CC3300FF333300333333 %3333663333993333CC3333FF3366003366333366663366993366CC3366FF %3399003399333399663399993399CC3399FF33CC0033CC3333CC6633CC99 %33CCCC33CCFF33FF0033FF3333FF6633FF9933FFCC33FFFF660000660033 %6600666600996600CC6600FF6633006633336633666633996633CC6633FF %6666006666336666666666996666CC6666FF669900669933669966669999 %6699CC6699FF66CC0066CC3366CC6666CC9966CCCC66CCFF66FF0066FF33 %66FF6666FF9966FFCC66FFFF9900009900339900669900999900CC9900FF %9933009933339933669933999933CC9933FF996600996633996666996699 %9966CC9966FF9999009999339999669999999999CC9999FF99CC0099CC33 %99CC6699CC9999CCCC99CCFF99FF0099FF3399FF6699FF9999FFCC99FFFF %CC0000CC0033CC0066CC0099CC00CCCC00FFCC3300CC3333CC3366CC3399 %CC33CCCC33FFCC6600CC6633CC6666CC6699CC66CCCC66FFCC9900CC9933 %CC9966CC9999CC99CCCC99FFCCCC00CCCC33CCCC66CCCC99CCCCCCCCCCFF %CCFF00CCFF33CCFF66CCFF99CCFFCCCCFFFFFF0033FF0066FF0099FF00CC %FF3300FF3333FF3366FF3399FF33CCFF33FFFF6600FF6633FF6666FF6699 %FF66CCFF66FFFF9900FF9933FF9966FF9999FF99CCFF99FFFFCC00FFCC33 %FFCC66FFCC99FFCCCCFFCCFFFFFF33FFFF66FFFF99FFFFCC110000001100 %000011111111220000002200000022222222440000004400000044444444 %550000005500000055555555770000007700000077777777880000008800 %000088888888AA000000AA000000AAAAAAAABB000000BB000000BBBBBBBB %DD000000DD000000DDDDDDDDEE000000EE000000EEEEEEEE0000000000FF %00FF0000FFFFFF0000FF00FFFFFF00FFFFFF %524C45A87DA87DA87DA87DA87DA87DA883A87DA87DA87DA87DA87DA883A8 %7DA87DA87DA87DA87DA87DA87DA8A7A87DA87DA87DA87DA87DA883A87DA8 %7DA87DA87DA87DA87DA87DA8A7A87DA87DA87DA87DA87DA883A87DA883A8 %7DA87DA87DA87DA87DA8A7A87DA87DA87DA87DA87DA87DA87DA883A87DA8 %7DA87DA87DA87DA883A87D7DA8A7A87DA77DA87DA87D837DA8A7A77DA77D %A87DA87DA77DA87D837DA8A7A87DA77DA87DA87D837DA8A7A77DA8A7A87D %A77DA77DA87D837DA8A7A87DA77DA87DA87DA77DA8A7A77DA8A7A87DA77D %A87DA87D837DA8A7A87DA77DA87DA87DA77DA87D837DA8A7A87DA77DA87D %A87D837DA8A7A77DA77DA87DA77DA77DA87D83A7A7A8A7A87DA8A7A8A7A8 %7DA8A7A8A7A77DA8A7A87DA8A7A8A7A87DA8A7A8A7A87DA8A7A8A7A87DA8 %A7A8A7A77DA8A7A87DA8A7A8A7A87DA8A7A8A7A87DA8A7A8A7A883A8A7A8 %A7A77DA8A7A87DA8A7A8A7A87DA8A7A8A7A87DA8A7A87DA8A7A8A7A87DA7 %A7A8A7A87DA8A7A8A7A87DA8A7A8A7A77DA8A7A87DA8A7A8A7A87D7DA77D %A87D837DA87DA87DA77DA87DA87D837DA87DA77DA87DA87DA77DA77DA87D %837DA87DA77DA77DA87DA87DA77DA87D837DA87DA87DA77DA87DA87D837D %A87DA77DA77DA87DA77DA77DA87D837DA87DA87DA77DA87DA87D837DA87D %A77DA77DA87DA77DA77DA87D837DA87DA87DA77DA87DA87DA77DA87DA77D %A87DA87DA7A87DA8A7A87DA883A87DA87DA87DA87DA87DA8A7A87DA87DA8 %7DA87DA87DA8A7A87DA8A7A87DA87DA87DA87DA87DA8A7A87DA87DA87DA8 %7DA87DA883A87DA8A7A87DA87DA87DA87DA87DA8A7A87DA883A87DA87DA8 %7DA883A87DA8A7A87DA87DA87DA87DA87DA8A7A87DA883A87DA87DA87DA8 %7DA87DA8A7A87DA87DA87DA87D7D837DA77D837DA77D837DA77D837DA77D %837DA77D837DA77D837DA77D837DA77D837DA77D837DA77D837DA77D837D %A77D837DA77D837DA77D837DA77D837DA77D837DA77D837DA77D837DA77D %837DA77D837DA77D837DA77D837DA77D837DA77D837DA77D837DA77D837D %A77D837DA77D837DA77D837DA77D837DA77D837DA7A883A8A7A87DA77DA8 %A7A77DA8A7A87DA87DA8A7A87DA77DA8A7A87DA8A7A87DA87DA8A7A8A7A7 %7DA8A7A87DA87DA8A7A87DA77DA8A7A87DA8A7A87DA87DA8A7A883A77DA8 %A7A87DA87DA8A7A87DA77DA8A7A77DA8A7A87DA87DA8A7A87DA77DA8A7A8 %7DA883A8A7A87DA77DA8A7A77DA8A7A87DA87DA8A7A87DA77DA8A7A87D7D %A87DA87DA77DA87DA87D837DA87DA77DA77DA87DA77DA77DA87D837DA87D %A87DA77DA87DA87D837DA87DA77DA77DA87DA77DA77DA87D837DA87DA87D %A77DA87DA87DA77DA87DA77DA87DA87DA77DA87DA87D837DA87DA87DA77D %A87DA87DA77DA87DA77DA87DA87DA77DA87DA87D837DA87DA77DA77DA87D %A77DA77DA87D83A8A7A8A7A87DA8A7A8A7A87DA8A7A8A7A883A8A7A8A7A8 %A7A8A7A87DA8A7A8A7A87DA8A7A8A7A87DA8A7A8A7A8A7A8A7A883A8A7A8 %A7A87DA8A7A8A7A87DA8A7A8A7A87DA8A7A87DA8A7A8A7A87DA8A7A8A7A8 %7DA8A7A8A7A87DA8A7A8A7A87DA8A7A87DA8A7A8A7A87DA8A7A8A7A87DA8 %A7A8A7A8A7A8A7A8A7A8A7A8A7A87D7DA87DA87DA77DA77DA87D837DA87D %A77DA77DA87DA77DA77DA87D837DA8A7A87DA77DA87DA87D837DA87DA77D %A77DA87DA77DA77DA87D837DA8A7A77DA77DA87DA87D837DA87D837DA77D %A87DA77DA77DA87D837DA8A7A77DA77DA87DA77DA77DA87D837DA87DA87D %A77DA77DA87D837DA87DA77DA77DA87DA77DA77DA87D83A77DA87DA77DA8 %7DA77DA87DA77DA87DA77DA87DA77DA87DA77DA87DA77DA87DA77DA87DA7 %7DA87DA77DA87DA77DA87DA77DA87DA77DA87DA77DA87DA77DA87DA77DA8 %7DA77DA87DA77DA87DA77DA87DA77DA87DA77DA87DA77DA87DA77DA87DA7 %7DA87DA77DA87DA77DA87DA77DA87DA77DA87DA77DA87DA77DA87DA77DA8 %7D7D837DA77D837DA77DA77DA77DA77DA77D837DA77D837DA77DA77DA77D %A77DA77D837DA77D837DA77DA77DA77D837DA77D837DA77DA77DA77DA77D %A77D837DA77D837DA77DA77DA77D837DA77D837DA77DA77DA77DA77DA77D %837DA77D837DA77DA77DA77D837DA77D837DA77DA77DA77DA77DA77D837D %A77D837DA77DA77DA7A8A7A8A7A87DA8A7A8A7A87DA8A7A8A7A87DA8A7A8 %7DA8A7A8A7A87DA8A7A8A7A87DA8A7A8A7A87DA8A7A8A7A87DA8A7A87DA8 %A7A8A7A87DA8A7A8A7A87DA8A7A8A7A87DA8A7A883A883A8A7A87DA8A7A8 %A7A87DA8A7A8A7A87DA8A7A87DA8A7A8A7A87DA8A7A8A7A87DA8A7A8A7A8 %7DA8A7A8A7A87DA8A7A87DA8A7A8A7A87D7DA87DA8A7837DA8A7A87DA7A7 %A87DA87DA77DA8A7A77DA8A7A87DA77DA87DA87D837DA8A7A87DA7A7A87D %A87DA77DA8A7A77DA8A7A87DA77DA87DA87D837DA8A7A87DA8A7A87DA87D %A77DA8A7837DA8A7A87DA77DA87DA87DA77DA8A7A77DA8A7A87DA77DA87D %A87D837DA8A7A87DA7A7A87DA87DA77DA8A7A77DA8A7A87DA7A8A7A8A7A8 %7DA8A7A8A7A87DA8A7A87DA87DA8A7A883A77DA8A7A87DA8A7A8A7A87DA8 %A7A8A7A77DA8A7A87DA8277DA7A87DA77DA8A7A87DA8A7A8A7A87D7C7DA8 %A7A77DA8A7A87DA8A7A8A7A87DA7A7A8A7A87DA8A7A8A7A87DA8A7A8A7A7 %7DA8A7A87DA8A7A8A7A87DA8A7A8A7A77DA8A7A87DA87DA8A7A87DA77DA8 %A7A87D7DA77DA77DA77D837DA77D837DA77D837DA77DA77DA77D837DA77D %837DA77DA77DA77DA77DA77D837DA77D837D2752A77DA77D8399BB7D837D %A77DA092A7F8517DA77D837DA77D837DA77DA77DA77D837DA77D837DA77D %837DA77DA77DA77D837DA77D837DA77DA77DA77DA77DA77D837DA77D837D %A77DA77DA77D837DA77D83A87DA87DA87DA87DA87DA87DA87DA87DA87DA8 %7DA87DA87DA87DA87DA87DA87DA87DA8A1C29AC2A152527D27A827582752 %2752A1BBBBA0525127A7BBBB992752A87DA87DA87DA87DA87DA87DA87DA8 %7DA87DA87DA87DA87DA87DA87DA87DA87DA87DA87DA87DA87DA87DA87DA8 %7DA87DA87DA87DA87DA87DA87DA87DA87DA87D7DA8A7A87DA77DA77DA87D %837DA8A7A77DA77D522627272726272727F8FD0427A77DBB98C2BAA12652 %51F87DF85127F827F87C99C27DF8F82752C292A1F8527DA87D837DA87DA7 %7DA87DA87DA77DA77DA87D837DA8A7A77DA77DA87DA87DA77DA87D837DA8 %A7A87DA77DA87DA87D837DA8A7A77DA77DA87DA77DA77DA87D83A7A7A8A7 %A87DA8A7A8A7A87DA8A7A8A7A77DA8F827277DFD042752FD0427F87DA8BB %C2A1BBA1275152F8A7F852272752F87DC2A07DF827F851A0BB7DF852A8A7 %A883A8A7A8A7A77DA8A7A87DA8A7A8A7A87DA8A7A8A7A87DA8A7A87DA8A7 %A8A7A87DA7A7A8A7A87DA8A7A8A7A87DA8A7A8A7A77DA8A7A87DA8A7A8A7 %A87D7DA77DA87D837DA87DA87DA77DA87DA87DA77DF852FD047D27527D7D %FF7D27F8837DBB99A192A75252522783275252527D27A7A0C25227527D7D %C9BBA8277DA7A87DA8A7A8A7A883A8A7A8A7A87DA8A7A883A8A7A8A7A883 %A8A7A8A7A87DA8A7A8A7A883A8A7A8A7A87DA8A7A87DA8A7A8A7A883A8A7 %A8A7A87DA8A7A8A7A8A87DA8A7A87DA8A7A87DA87DA8A7A883A87DA827FD %07F8272727F8F8277DA8A0BBBABBA152F8F8F87DF852272752F87CC2BAA0 %F8F8F852A0BB99F852A87DA87DA8A7A87DA87DA8A7A87DA8A7A8A7A87DA8 %A7A8A7A87DA8A7A87DA87DA8A7A87DA87DA8A7A87DA8A7A87DA87DA8A7A8 %83A87DA8A7A87DA883A8A7A87D7D837DA77D837DA77D837DA77D837DA77D %837DA77D837DA77D837DA77D837DA77D837DA77DA092A17D7D7C7D7D7C7C %7D587D52837DA17C83527D7DA77DA1527D7D837DA77D837DA77D837DA77D %837DA77D837DA77D837DA77D837DA77D837DA77D837DA77D837DA77D837D %A77D837DA77D837DA77D837DA77D837DA77D837DA7A87DA87DA87DA77DA8 %83A77DA8A7A87DA87DA87DA8A0A09AC2A0A09AC2A0C2A0C2A0A0A0C29ABB %99C2A0C29AC2A0C2A0C2A0A09AC2A0A09AC2A0C2A0C2A0A0A0C3A1A77DA8 %A7A87DA87DA87DA87DA77DA8A7A77DA8A7A87DA87DA87DA87DA77DA8A7A8 %7DA87DA87DA87DA77DA883A77DA8A7A87DA87DA87DA87DA77DA8A7A87D7D %A87DA87DA77DA87DA87D837DA87DA77DA77DA199BBBBC299C2BBC299C2BB %C299C2BBC299C2BBC299C2BBC299C2BBC299C2BBC299C2BBC299C2BBC299 %C2BBC192BB99A77DA87DA77DA87DA87DA77DA87DA87D837DA87DA87DA77D %A87DA87DA77DA87DA77DA87DA87DA77DA87DA87D837DA87DA77DA77DA87D %A77DA77DA87D83A8A7A8A7A87DA8A7A8A7A87DA8A7A8A7A883A8BBC1C2C1 %BABBBBBBBABBBBBBBABBBBBBBABBBBBBBABBBBBBBABBBBBBBABBBBBBBABB %BBBBBABBBBBBBAFD04BBC2C2BBA0A8A7A87DA8A7A8A7A87DA8A7A8A7A87D %A8A7A8A7A883A8A7A8A7A87DA8A7A87DA8A7A8A7A87DA8A7A8A7A87DA8A7 %A8A7A8A7A8A7A8A7A8A7A8A7A87D7DA8A7A87DA77DA87DA87D837DA8A7A7 %7DA7A0BBBBBBBABB92BB926E4A6F6EBB92BBBABB92BBBABB92994A6E4A99 %BABB92BBBABB92BBBA996E6F4A6E92BBBABB92BBBBBB7DA87DA77DA8A7A8 %7DA77DA77DA87D837DA8A7A77DA77DA87DA87DA77DA87D837DA8A7A87DA7 %7DA87DA87D837DA8A7A77DA77DA87DA77DA77DA87D83A77DA87DA77DA87D %A87DA87DA77DA87DA77DC2BBC2BABBBBBB202727522727F86FBABBBBBBBA %BB6E2627522752F84B92BBBABBBBBB984BF852275227204ABBBBBBBAC2BB %A77DA87DA77DA87DA77DA87DA87DA87DA77DA87DA77DA87DA87DA87DA77D %A87DA77DA87DA77DA87DA87DA87DA77DA87DA77DA87DA77DA87DA87DA87D %7D837DA77D837DA77D837DA77DA77DA77D8399BBBBBB9299F827FD05F827 %F84A92BBBABB202727FD04F82727F892BB92BB92202727FD04F8272720BB %BABB99BB7DA77DA77D837DA77D837DA77D837DA77D837DA77D837DA77D83 %7DA77DA77DA77D837DA77D837DA77D837DA77DA77DA77D837DA77D837DA7 %7DA77DA7A87DA8A7A87DA8A7A8A7A87DA8A7A8A7A87DC3BBC2BABB2052FD %07F827F875BBBB6E2727FD07F8272098BBBB2627FD08F8274ABBBAC2BBA8 %A7A883A87DA8A7A87DA7A0BBBAC2A0A7A7A8A7A87DA8A7C9C9FFC2C2A1A8 %7DA883A8A7A87DC2BBBBBBC27DA8A7A8A7A87DA8A7A87DA8A7A8A7A87D7D %A87DA87D837DA8A7A87DA77DA87DA87DA79ABBBBBB4A27FD09F827F8BBBA %2027FD09F8274A926F27FD09F8272792BBBBBBA7A87DA87DA77DA8A7A092 %BBBABB92BB99A17DA87DA77DC2C3C9CACABBBB99A77DA87DA8A0BB92BBBA %BB92BBA1A87DA87DA77DA8A7A77DA8A7A87DA7A8A7A8A7A87DA8A7A8A7A8 %7DA8A7A8A7A87DC2BAC2BB2627FD0AF8526E992727FD09F85220BB2052FD %0AF8276FBBC2BAA8A7A87DA8A7A8A7A7BBBBBABBBBBBBABBBBA8A7A87DC2 %BBBBC2FFC2C2BBBBA0A8A7A8A1BBBBBBBAC2C2C9C9C9A7A8A7A87DA8A7A8 %83A77DA8A7A87D7DA77DA77DA77DA77DA77D837DA87DA77DA79ABB99BBF8 %27FD0AF8274A4427FD0AF827F8BA2027FD0AF82720BBBBBB7DA87D837DA7 %7DA799BBBABB92BBBABB92BBA0A77DA1BBBBA1FFCAC399BBBABB7DA77DA0 %92BBBAC198C9CAFFFFA17DA77DA77DA77DA77D837DA87D83A87DA87DA87D %A87DA87DA87DA87DA87DA87DA0BAC2BBF827FD0AF8524A6F27FD0AF852F8 %BBF852FD0AF8274BBBC2BAA87DA87DA87DA87DC1BBBBBAC2C2C2BABBBBC2 %7DA8A0BBC2CACACFC9C2BBBBBAA87DA8FD04BBC2BBBBC3CAFFA0A87DA87D %A87DA87DA87DA87DA87D7DA77DA77DA77DA77DA87D837DA87DA77DA79ABB %BBBBF827FD0AF8276E6E27FD0AF827F8BA2627FD0AF82744BBBBBB7DA87D %837DA77DA792BBBBC292BBBBC292BB99A77DA0BAFD04BBC298BBBABB7DA8 %7DBB92BBBAC292BBC3FFCAC37DA77DA77DA77DA77DA77DA87D83A7A7A8A7 %A87DA8A7A8A7A87DA8A7A8A7A77DC2BBC2BA4B27FD0AF82792BBF827FD09 %F85220BB4A52FD0AF8276FBAC2BBA8A7A883A77DA8A7C1BAC2BBC3CAC2BB %C2BAC2A7A7A0FD04BBC2BBBBBABBBBA7A7A8BBBBBABBC2BBBABBC2FFA1A8 %A7A77DA8A7A87DA8A7A8A7A87D7DA87DA87D837DA87DA87DA77DA87DA87D %A79ABBBBBB6E27FD09F827F8BBBA2627FD08F827F86E9299F827FD08F827 %20BABB99BB7DA87DA77DA77DA89ABB99C2FFFF99BBBBBBA0A87DA192BBBA %BB92BBBABB92C27DA87DA0BABB92C2BAC2A1FFCAA77DA87DA77DA87DA77D %A87DA87DA7A87DA8A7A87DA8A7A8A7A87DA8A7A8A7A87DC2BBC2BABB4A27 %FD07F852F899BBBB922727FD06F827274BBABBBB6FF827FD06F827276EBB %BAC2BBA8A7A87DA87DA8A7A8BBC2BBC2FFC2BBC299A8A7A87DC3BBBBBABB %BBBBBABBA1A87DA8A7BBBABBBBC2C2C9C3C3A7A8A7A87DA8A7A87DA8A7A8 %A7A87D7D837DA77D837DA77D837DA77D837DA77D8399BBBBBB92BB44FD07 %27F89392BBBABB9220FD0627F82692BB92BBBA4AF8FD0627266EBBBABBBB %BB7DA77DA77D837DA77DA199BBC9FFC2C299A17DA77D837DA0BABB92BBBA %BB7CA77D837DA77CBB92BBBABBBBC27D837DA77D837DA77D837DA77DA77D %A7A87DA87DA87DA77DA87DA77DA87DA87DA87DA0BAC2BBBBBABB6E4AF8F8 %F8264ABBBBBBBABBBBBB986F20F8F8F8206FBABBBBBBBABBBB9920FD04F8 %4B98BBBABBBBC2BAA87DA87DA87DA87DA87DA7A0CAC9C97DA87DA87DA87D %A77DA7A0C299A1A1A77DA87DA87DA87DA19AC2A0A17DA87DA87DA87DA77D %A87DA77DA87DA77D7DA87DA87DA77DA87DA87D837DA87DA77DA79ABB99BB %BABB92BBBABB92BBBABB92BBBABB92BBBABB92BBBABB92BBBABB92BBBABB %92BBBABB92BBBABB92BBBABB92BBBBBB7DA87DA77DA77DA87DA77DA77DA8 %7D837DA87DA77DA77DA87DA77DA77DA87D837DA87DA87DA77DA87DA87D83 %7DA87DA77DA77DA87DA77DA77DA87D83A8A7A8A7A87DA8A7A8A7A87DA8A7 %A8A7A883C2BAC2BBBBBABBBBBB6E6F4A9998BBBBBBBABBBBBBBABB6E6F4A %7592BBBABBBBBBBABBBBBB92754A6F6EBBBBBBBABBBBC2BAA8A7A87DA8A7 %A8A7A87DA8A7A8A7A87DA8A7A8A7A883A8A7A8A7A87DA8A7A87DA8A7A8A7 %A87DA8A7A8A7A87DA8A7A8A7A8A7A8A7A8A7A8A7A8A7A87D7DA8A7A87DA7 %7DA87DA87D837DA8A7A77DA7A0BBBBBBBABB9226F8FD0427264ABBBABB92 %BBBA6EF8FD0527209992BBBABB92BB44FD0527F86FBABB92BBBBBB7DA8A7 %A77DA8A7A87DA77DA87DA87D837DA8A7A87DA77DA87DA87DA77DA8A7A77D %A8A7A87DA77DA87DA87D837DA8A7A77DA7A7A87DA87DA77DA87D83A77DA8 %A7A77DA883A87DA87DA77DA87DA77DC2BBC2BABB92272727FD04F8272744 %BBBBBBBA4B2752FD05F8522099BABBBBBBF85227FD04F8272727BBBBBAC2 %BBA87DA87DA77DA8A7A77DA199BBBABB99A77DA87DA77DA8A1C2FD04BBA0 %A87DA77DA883A7A0C2BBBBBBC27DA77DA87DA77DA8A7A87DA87DA87DA87D %7D837DA77D837DA77D837DA77D837DA77D8399BBBBBB922027FD08F82744 %BBBA6EFD09F827F8BB92BB2027FD09F84ABABB99BB7D837DA77D837DA77D %A092BBBABB92BB98A17DA77D837DBBBABB92BBBABB99A77D837DA7A0FFA7 %C2BBBB92BB7C837DA77D837DA77D837DA77D837DA7A87DA8A7A87DA8A7A8 %A7A87DA8A7A8A7A87DC2BBC2BA6F27FD09F82727BBBBF852FD09F8524ABB %6E27FD09F82727BBBAC2BBA8A7A87DA87DA8A7A7BABBBBBBBAFD04BBA8A7 %A87DC2BBBBBAC2C2C2BBBBA0A87DA8A1FFC2FD07BBA7A8A7A87DA8A7A87D %A883A8A7A87D7DA87DA87D837DA8A7A87DA77DA87DA87DA79ABBBBBB2027 %FD0AF8276F6E27FD0AF827F8924A27FD0AF8274ABBBBBBA7A87DA87DA77D %A899BB92BBBBC2BBC1BABBA0A87DA192BBBAC199BBBAC199BB7DA87DCAFF %CA98BBBAC292BBBAA07DA87DA77DA8A7A77DA8A7A87DA7A8A7A8A7A87DA8 %A7A8A7A87DA8A7A8A7A87DC2BAC2BBF827FD0AF8524A6F27FD0AF852F8BB %F852FD0AF8274BBBC2BAA8A7A87DA8A7A8A7C1BBC1BBC2C3BBBBC2BBC2A7 %A8A0BBBAC2BBBBC2CFCAC3BBA8A7A8CFCFC9CFBBBBC2BBBABBA0A8A7A883 %A8A7A8A7A77DA8A7A87D7DA77DA77DA77DA77DA87D837DA87DA77DA79ABB %99BBF827FD0AF8274A4427FD0AF827F8BAF827FD0AF82720BBBBBB7DA87D %837DA77DA892BBBBBBA7CFC2BB99BB99A77DC2BABB99BBBACACAC2BBC27C %A77DCFCACAFFC292C2BABB92A07DA77DA77DA87DA77DA77DA87D83A87DA8 %7DA87DA87DA87DA87DA87DA87DA87DA0BAC2BB2027FD0AF8524A7527FD0A %F852F8BB2052FD0AF8276FBBC2BAA87DA87DA87DA87DC2BBC2C2FFC3CFBA %C2BBA07DA8A0BBBAC2BBBBCAFFCAC2C2A87DA8C2FFFFC9BAC1BBBBBABBA0 %A87DA87DA87DA87DA87DA87DA87D7DA77DA77DA77DA77DA77D837DA87D83 %7DA79ABBBBBB2027FD09F827F899922727FD09F82726BA4A27FD0AF8276E %BBBBBB7DA87D837DA77DA79ABBBBC9CACACABB99BB7DA77DA7BABBBBBBBA %C2C2FFC9C27DA77DA099C2BBC299BBBABB92A77D837DA77DA77DA77D837D %A87D83A77DA8A7A87DA8A7A8A7A87DA8A7A8A7A77DC2BBC2BA992727FD08 %F8274BBBBB2052FD08F827276EBB982727FD08F85220BBBAC2BBA8A7A883 %A77DA8A7A899C2CAFFFFFFC3C29AA8A7A77DC9BBC1BBBBBBC9FFCAA1A77D %A8A7BBBABBBBBBBABBBBC2A7A8A7A77DA8A7A87DA8A7A8A7A87D7DA87DA8 %7D837DA87DA87DA77DA87DA87DA79ABBBBBB924AF827FD06F827F86EBBBA %99F827FD07F82720BB92BB4A27FD07F827F86FBABB99BB7DA87DA77DA77D %A87DA199C2BAC3A7BBA0A87DA87DA77DC2BABB99FFFFCAA0A77DA87DA87D %BB92BBBABB92A07DA87DA87DA77DA87DA77DA87DA87DA7A8A7A8A7A87DA8 %A7A8A7A87DA8A7A8A7A87DC3BBC2BABBBB4BF85227522752272092BBBBBB %BA99202727522752272726BBBABBBBBB4A27275227522752F875BBBBBAC2 %BBA8A7A883A87DA8A7A87DA8A1C3A1C9A1A8A7A8A7A87DA8A7A8A0C2A0C9 %A7A87DA8A7A8A7A87DA7A0C2A0A77DA8A7A8A7A87DA8A7A87DA8A7A8A7A8 %7D7D837DA87D837DA77DA77DA77DA77DA77D839ABBBBBB92BBBA9320FD04 %F86F92BB92BBBABB92BB4A20F8F8F84A6EBBBABB92BBBABB6E4AF8F8F820 %449992BBBABBBBBB7DA77DA77D837DA87D837DA77DA77DA77DA77DA77D83 %7DA87D837DA77DA77DA77D837DA87D837DA77DA77DA77DA77DA77D837DA8 %7D837DA77DA77DA7A87DA77DA87DA77DA87DA77DA87DA77DA87DA0BAC2BB %BBBABBBBBBBABBBBBBBABBBBBBBABBBBBBBABBBBBBBABBBBBBBABBBBBBBA %BBBBBBBABBBBBBBABBBBBBBABBBBC2BAA87DA77DA87DA77DA87DA77DA87D %A77DA87DA77DA87DA77DA87DA77DA87DA77DA87DA77DA87DA77DA87DA77D %A87DA77DA87DA77DA87DA77DA87DA77D7DA77DA87DA77DA77DA87D837DA8 %7DA77DA79ABB99BBBABB92BB926E446E6EBB92BBBABB92BBBABB926F4A4A %4499BABB92BBBABB92BBBA994A6E4A6E92BBBABB92BBBBBB7DA87D837DA7 %7DA87DA77DA77DA87D837DA87DA77DA77DA87DA77DA77DA87D837DA77DA8 %7DA77DA77DA87D837DA87DA77DA77DA87DA77DA77DA87D83A8A7A8A7A87D %A8A7A8A7A87DA8A7A8A7A883C2BAC2BBBBBABB202727522752F86FBBBBBA %BBBBBB6E2727522752274B92BBBBBBBABBBB4BF852275227F84ABBBABBBB %C2BAA8A7A87DA8A7A8A7A87DA7A0C2BBC2A0A8A7A8A7A883A8A7C9A0C299 %C2A7A87DA8A7A8A7A87DC399C299A17DA8A7A8A7A8A7A8A7A8A7A8A7A8A7 %A87D7DA8A7A87DA77DA87DA87D837DA8A7A87DA7A0BBBBBBBA99F827FD05 %F827F84ABABB92BB442727FD04F827272692BBBABB92202727FD04F82727 %20BB92BBBBBB7DA8A7A77DA8A7A87DA198BB92BBBABB99A8A7A87DA7A7C2 %92BBBABB92BBA0A77DA8A7A8A0BBBABB92BBBABB7DA8A7A87DA8A7A87DA8 %7DA77DA87D83A77DA8A7A87DA8A7A87DA87DA87DA883A77DC2BBC2BABB20 %52FD07F827F86FBBBB6E2727FD07F8272098BBBB2627FD08F8274ABBBAC2 %BBA87DA87DA77DA8A7A7FD05BBC2C2C299A883A77DC2BBBBBABBBBBBBABB %A0A77DA8A1BBBABBBBC2BBC2C2C27DA87DA77DA8A7A87DA87DA87DA87D7D %837DA77D837DA77D837DA77D837DA77D8399BBBBBB4427FD09F827F8BBBA %2027FD09F8274A926F27FD0BF892BB99BB7D837DA77D837DA799BB92BBBB %BB92BBBABB7CA77DA192BBBBC299C2BBBB92BB7D837DA0BABB92C2BBBBCA %FFFFA17DA77D837DA77D837DA77D837DA7A87DA8A7A87DA8A7A87DA87DA8 %83A883A87DC2BBC2BA2727FD0AF8526E9927FD0AF852F8BB2652FD0AF827 %6FBAC2BBA8A7A87DA87DA8A7C1BABBC2BBBAC2CACFCAC983A8A0BBBBC1BA %BBBBBBC2C1BBA87DA8BBBBBAC2BBBBC3FFC2FFA7A87DA87DA8A7A87DA87D %A883A87D7DA87DA87D837DA8A7A87DA77DA87DA87DA79ABBBBBBF827FD0A %F8276F4A27FD0AF827F8922027FD0AF82720BBBBBBA7A87DA87DA77DA8BA %BB92C2BABB99C9C9FFA0A87DA092C2BAFFFFFFCABBBBBB7DA87DBBBABBBB %BBBAC3FFCACFC97DA87DA77DA8A7A77DA8A7A8A7A8A8A7A8A7A87DA8A7A8 %A7A8A7FD06A8C3BAC2BBF827FD0AF8524A6F27FD0AF852F8BBF852FD0AF8 %274BBBC2BAA8A7A87DA8A7A8A7C2FD06BBBACFCAC3A7A8A0BBBBC2FD04FF %BBC2BAA8A7A8BBBBBBC2BABBBBC9FFFFA1A8A7A883A8A7A8A7A8A8A8A7A8 %7D7DA87DA87DA77DA8A7A87D837DA87DA77DA79ABB99BBF827FD0AF8274A %6E27FD0AF827F8BA2627FD0AF82744BBBBBB7DA87DA77DA77DA899BBBAC2 %92BBBABBFFC2A1A77DA1BBC192FFFFFFA0BBBBBB7DA87DC292BBBBC192BB %C2FFCAA77DA77DA77DA87DA87DA77DA87D83A87DA87DA8A8A87DA87DA87D %A883A87DA87DA0BAC2BB4B27FD09F8272792BB2727FD09F85220BB4A52FD %09F8272775BBC2BAA883A87DA87DA87DA7BBBBBBC2BBBBC3FFBBA87DA87D %C2C2C2FD04FFBBC2A0A87DA87DFD04BBC2BBFFC3C383A87DA87DA8A8A87D %A87DA883A87D7DA8A7A87DA77D837DA77D837DA77D837DA79ABBBBBB6E27 %FD09F82720BB922627FD08F827F86FBA99F827FD08F8272092BBBBBB7DA7 %7D837DA77DA77DA198BB99C2BBFFA1A77D837DA77DC2C2FFCAFFCFC2A083 %7DA77DA77CBBBABB98C2BBC27DA77D837DA883A77DA77D837DA77D83A8A7 %A8A7A87DA8A7A8A7A87DA8A7A8A7A77DC2BBC2BABB4A27FD07F852F899BB %BB922627FD06F827274ABABBBB6FF827FD06F8272792BBBAC2BBA8A7A87D %A77DA8A7A87DA7A0C299C2A0A8A7A8A7A77DA8A7A7A7FFCFC3A1A87DA77D %A8A7A87DA0BBC299A17DA8A7A8A7A87DA8A7A87DA883A8A7A87D83A87DA8 %7D837DA87DA87DA77DA87DA87DA79ABBBBBB92BB20FD0727F89992BBBABB %6E20FD0627F84A92BB92BBBA4AF8FD0627206EBBBABB99BB7DA87DA77DA7 %7DA87D837DA87DA87DA77DA87DA87DA77DA87DA77DA77DA87DA77DA87DA8 %7D837DA87DA87DA77DA87DA87DA77DA87DA77DA87DA87DA7A8A7A8A7A87D %A8A7A8A7A87DA8A7A8A7A87DC9BBC2BABBBBBB6E4BF8F8F8274ABBBABBBB %BBBABBBB6F20F8F8F82099BBBBBABBBBBBBA994A20F8F8204B92BBBBBBBA %C2BBA8A7A8A7A8A7A8A7A87DA8A7A8A7A87DA8A7A8A7A87DA8A7A883A8A7 %A8A7A883A8A7A8A7A87DA8A7A8A7A87DA8A8A8A7A87DA8A7A87DA8A7A8A7 %A87DA7A77DA87D837DA87DA77DA77DA77DA77D837DBBBBBB92BBBABB92BB %BABB92BBBABB92BBBABB92BBBABB92BBBABB92BBBABB92BBBABB92BBBABB %92BBBABB92BBBABB99C27DA77DA77D837DA87D837DA87DA77DA77DA77DA8 %7D837DA87D837DA77DA77DA77DA77DA87D837DA87DA77DA77DA87DA77D83 %7DA87D837DA77DA77DA7A87DA77DA87DA77DA87DA77DA87DA77DA87DA799 %BBC2C2BBC2C2C2BBC2C2C2BBC2C2C2BBC2C2C2BBC2C2C2BBC2C2C2BBC2C2 %C2BBC2C2C2BBC2C2C2BBC2C2C2BBC2BBBB7CA87DA77DA87DA77DA87DA77D %A87DA77DA87DA77DA87DA77DA87DA77DA87DA77DA87DA77DA87DA77DA87D %A77DA87DA77DA87DA77DA87DA77DA87DA77D7DA77DA77DA77DA77DA77D83 %7DA87DA77DA77DA7A0BBBABB92BBBABB92BBBABB92BBBABB92BBBABB92BB %BABB92BBBABB92BBBABB92BBBABB92BBBABB92BBBABB92C27C837DA87D83 %7DA77DA77DA77DA77DA87D837DA87DA77DA77DA77DA77D837DA87D837DA7 %7DA77DA77DA77DA77DA87DA87DA77DA77DA77DA77DA77DA87D83A8A7A8A7 %A87DA8A7A8A7A87DFD07A8A7A8A7A8A7A8A7A87DA8A7A8A7A87DA8A7A8A7 %A8A7A8A7A8A7A8A7A8A7A883A8A7A8A7A87DA8A7A8A7A87DA8A7A8A7A87D %A8A7A87DA8A7A8A7A87DA8A7A8A7A87DA8A7A8A7A87DA8A7A8A7A87DA8A7 %A87DA8A7A8A7A87DA8A7A8A7A87DA8A7A8A7A883A8A7A8A7A8A7A8A7A87D %7DA8A7A87DA77DA87DA8A7A8A7A8A7A87DA7A7A8A7A87DA77DA8A7A77DA8 %A7A87DA77DA87DA87DA7A7A8A7A77DA8A7A87DA77DA87DA87D837DA8A7A8 %7DA77DA87DA87DA77DA8A7A77DA8A7A87DA77DA87DA87D837DA8A7A87DA7 %A7A87DA87DA77DA8A7A77DA8A7A87DA77DA87DA87D837DA8A7A87DA8A7A8 %7DA87DA77DA8A783FD05A8A7A8A8A8A7A87DA8A7A8A7A77DA8A7A7A0A7A1 %A7A1A7A0A1A0A7A1A1A0A7A1A7A0A1A0A1A1A7A1A1A0A7A1A7A0A1A1A7A1 %A7A0A1A1A7A1A1A0A7A1A7A0A77DA8A7A87DA77DA8A7A87DA8A7A8A7A87D %A8A7A8A7A77DA8A7A87DA87DA8A7A87DA77DA8A7A87DA8A7A8A7A87DA8A7 %A8A7A77DA8A7A87DA883A8A7A87D7D837DA77DA77DA77DA87DA87D837DA7 %7D837DC2BABB92BBBABB92BBBABB92BBBABB92BBBABB92BBBABB92BBBABB %92BBBABB92BBBABB92BBBABB92BBBABB92BBBABB92A17DA77DA77D837DA7 %7D837DA77D837DA77D837DA77D837DA77D837DA77DA77DA77D837DA77D83 %7DA77D837DA77D837DA77D837DA77D837DA77D837DA7A87DA883A883A87D %A87DA883A8A8A87DA87DC3BBBBBABBBBBBBABBBBBBBABBBBBBBABBBBBBBA %BBBBBBBABBBBBBBABBBBBBBABBBBBBBABBBBBBBABBBB99204B6EBBBABBBB %A87DA87DA87DA883A87DA87DA87DA87DA87DA87DA87DA883A87DA87DA87D %A8A8A8A7A8A8A8A7FD07A87DA87DA87DA883A87DA87DA87DA87D7DA77DA8 %7D837DA8A7A87DA77DA8A7A87DA79ABBBABB92BBBABB92BBBABB92BBBABB %92BBBABB92BBBABB92BBBABB92BBBABB92BBBABB92BBBABB9299FD04F86E %BB92BB7DA87DA77DA77DA87D837DA8A7A87DA77DA87DA87D837DA8A7A77D %A8A8A8A7A77DA77DA87D837DA8A7A87DA77DA8A7A87DA77DA8A7A77DA8A7 %A87DA7A8A7A8A7A87DA8A7A8A7A87DA8A7A8A7A8A8C2BABBBBBBBABBBBBB %BABBBBBBBABBBBBBBABBBB4B6E996E994A756E6FC2BBBB6F2099204B9299 %BBBB4AF8277DF84BBBBBBAA8A7A87DA8A7A8A7A87DA8A7A8A7A87DA8A7A8 %A7A87DA8A7A8A8A87DA8A7A87DA8A7A8A7A87DA8A7A8A7A87DA8A7A8A7A8 %A8A8A7A8A7A77DA8A7A87D7DA8A7A87DA77DA87DA87D837DA87DA77DA7A0 %BB92BBBABB92BBBABB92BBBABB92BBBABB92BB4420204A2020204A6EC9A0 %BB4A93F820204A44BBBA4AF8F852F820BBBABB7DA87DA77DA87DA87DA77D %A77DA87D837DA87DA77DA77DA8A7A77DA77DA87D837DA87DA87DA7A7A87D %A87D837DA87DA77DA77DA8A7A77DA77DA87D83A8A7A87DA87DA87DA883A8 %7DA8A7A87DA87DC2BABBBBBBBABBBBBBBABBBBBBBABBBBBBBABB9899BA99 %92BBBABBBBBBBAC2C3BBBABBBBBBBA994ABB9227F8F8F899BBBBBAA8A7A8 %7DA87DA87DA87DA87DA8A7A87DA8A7A87DA8A8A87DA87DA87DA8A7A87DA8 %7DA87DA8A8A87DA883A87DA8A7A87DA87DA87DA8A8A87DA8A8A8A77DA77D %837DA77D837DA77D837DA77D837DA77CBB92BBBABB92BBBABB92BBBABB92 %BBBABB92BBBABB92BBBABB92BBBABB92BBBABB92BBBABB92BBBABB926F4A %9392BBBAA07DA77D837DA77D837DA77D837DA77D837DA77DA77DA77D837D %A77D837DA77D837DA77D837DA87D837DA77D837DA77D837DA77D837DA8A7 %A87DA77D83A87DA8A7A87DA8A7A87DA87DA8A7A883A77DA8A1C299C299C2 %99C299C199C2BBC299C2BBC299C299C299C299C199C2BBC299C299C299C2 %99C299C299C299C2BBC299C27DA8A7A87DA77DA8A7A87DA8A7A87DA87DA8 %A7A8A7A77DA8A7A87DA87DA8A7A87DA77DA8A7A883A8A7A87DA87DA8A7A8 %83A77DA8A7A87DA87DA8A8A87D7DA77DA87D837DA87DA87DA77DA87DA87D %A77DA8A1A17CA7A0A1A0A17CA1A0A1A1A17CA1A0A17CA1A0A1A0A17CA1A1 %A1A0A17CA1A0A1A0A1A0A1A0A1A0A1A0A1A0A17DA77DA87DA77DA77DA87D %837DA87DA87DA77DA87DA87D837DA87DA77DA77DA87DA77DA87DA8A7837D %A87DA87DA77DA87DA87DA77DA87DA77DA87DA8A7A7A8A7A8A7A87DA8A7A8 %A7A87DA8A7A8A7A87DA8A0BBBABBBBBBBABBBBBBBABBBBBBBABBBBBBBABB %BBBBBABBBBBBBABBBBBBBABBBBBBBABBBBBBBABBBBBBBABBBBBBBAC2A1A8 %A7A8A7A8A7A8A7A87DA8A7A8A7A883A8A7A8A7A87DA8A7A8A7A8A7A8A7A8 %83A8A7A8A7A87DA8A7A8A7A87DA8A7A8A7A883A8A7A87DA8A7A8A7A8A87D %A77DA87D837DA8A7A77DA77DA87DA87D83A0BBBABB92BBBABB92BBBABB92 %BBBABB92BBBABB92BBBABB92BBBABB92BBBABB92BBBABB92BBBABB92BB6E %26206FBABB92BB7DA87DA77DA77DA87D837DA8A7A87DA87DA87DA87D837D %A87DA77DA77DA87DA77DA77DA8A7837DA8A7A77DA77DA87DA87DA87DA87D %837DA77DA87DA7A87DA77DA87DA77DA87DA77DA87DA77DA87DA0BABBBBBB %BABBBBBBBABBBBBBBABBBBBBBABBBBBBBABBBBBBBABB98BBBABBBBBBBABB %98BBBABBBBBB6EFD04F86FBBBBBAA87DA77DA87DA77DA87DA77DA883A87D %A87DA77DA87DA77DA87DA77DA87DA77DA87DA77DA87DA77DA87DA77DA87D %A77DA87DA77DA87DA77DA87DA77D7DA77DA77DA77DA77DA77D837DA77D83 %7DA79ABB92BBBABB92BBBABB92BBBABB92BBBABB92BBBABB204A4A4A6E4A %6E4A44CAC2BB6E994A6E6EBBBA4AF85252F820BBBABB7DA77D837DA77DA7 %7DA77DA77DA87D837DA77D837DA19AA099A09AA099A09AA099A07DA87DA0 %9AA099A09AA07CA77D837DA77DA77DA77D837DA77D83A8A7A8A7A87DA8A7 %A8A7A87DA8A7A8A7A87DC2BABBBBBBBABBBBBBBABBBBBBBABBBBBBBABBBB %BBBA4BF84B204B204B4A99CAC9C2994A4B4A6F92BB6EF8527DF84BBBBBBA %A8A7A87DA8A7A8A7A87DA8A7CFA7A87DA8A7A8A7A1BBBBBABBBBBBBABBBB %BBBABBBBC2A8C2BBBB92BB92BBBABBA1A8A8A883A8A7A883A883A8A7A87D %7DA8A7A87DA77DA87DA87D837DA8A7A87DA7A0BB92BBBABB92BBBABB92BB %BABB92BBBABB92BBBA9992BB6EBB92BBBABB92BBBBC298BBBABB9299BABB %20F8F8F892BBBABB7DA8A7A77DA8A7A87DA77DA87DA87D837DA8A7A89ABB %204A204A444A2026204A209999A8994A2026F826204A92A7A7A87DA8A7A8 %7DA87DA77DA8A783A77DA8A7A87DA8A7A8A7A87DA8A7A8A7A77DA7BBBBBA %BBBBBBBABBBBBBBABBBBBBBABBBBBBBABBBBBBBABBBBBBBABBBBBBBABBBB %BBBABBBBBBBABBBBBB6E7598BBBABB99A8A7A883A77DA8A7A87DA8A8A8A7 %A87DA8A7A8A7A0BA9992999299929992BB9299BAC2A8C2929992996E9992 %BBA1A8A8A77DA8A7A87DA8A7A8A7A87D7D837DA77D837DA77DA77DA77DA7 %7DA77D837DA198BB92BBBABB92BBBABB92BBBABB92BBBABB92BBBABB92BB %BABB92BBBABB92BBBABB92BBBABB92BBBABB92BBBABB99A77DA77DA77D83 %7DA77D837DA77DA77DA77DA77DA77DA099A09AA099A09AA099A09AA07DA8 %7DA099A09AA099A07CA77DA87D837DA77D837DA77DA77DA7A87DA87DA87D %A87DA87DA87DA87DA87DA87DA87DA87DA87DA87DA87DA8A7A87DA8A7A87D %A87DA87DA87DA87DA87DA87DA87DA87DA87DA87DA87DA87DA87DA87DA87D %A87DA87DA87DA87DA87DA883A87DA87DA87DA87DA87DA87DA87DA87DA87D %A87DA87DA87DA8A8A87DA87DA87DA87DA87DA883A87DA87DA87DA87DA87D %A87D7DA77DA87D837DA8A7A77DA77DA87DA87D837DA87DA77DA87DA87DA7 %7DA7A7A87DA87DA8A7A77DA77DA87DA87DA77DA8A8837DA8A7A87DA77DA7 %7DA87D837DA8A7A77DA77DA87DA77DA77DA87DA87DA8A7A87DA77DA87DA8 %7D837DA87DA77DA77DA87DA77DA77DA87D837DA8A7A77DA77DA87DA87D83 %7DA87DA77DA87DA87DA7A8A7A8A7A87DA8A7A8A7A87DA8A7A8A7A87DA8A7 %A8A7A77DA8A7A87DA8A7A8A7A8A8A8A7A8A7A87DA8A7A87DA8A7A8A7A87D %A7A7A8A7A87DA8A7A8A7A87DA8A7A8A7A77DA8A7A87DA8A7A8A7A8A7A8A7 %A8A7A87DA8A7A8A7A87DA8A7A8A7A77DA8A7A87DA8A7A8A8A87DA8A7A8A7 %A87DA8A7A8A8A883A8A7A8A7A77DA8A7A87D7DA87DA87DA87DA87DA87DA8 %7DA87DA87DA87DA87DA883A87DA87DA87DA8A7A87DA8A8A8A7A8A8A8A7A8 %A7A8A7A8A7A8A7A883A87DA87DA87DA87DA87DA87DA87DA883A87DA87DA8 %7DA87DFD05A8A7A8A8A8A7A8A7A8A7A8A7A8A7A8A8A8A7A8A7A8A7A8A7A8 %7DA87DA87DA87DA87DA87DA87DA87DA87DA883A87DA87DA8 %%EndData endstream endobj 43 1 obj << /Filter [ /FlateDecode ] /Length 44 1 R >> stream
-HW]oΐ~A!9hnQ,
-CPY2d﹗i$}ϜH{xwW_. Wv\6˚Vݖv~S'm9qܬ/C}}f[fY(\;P?4RWqow7e}!_+[E'7o;k]"n>ݏvu|| fxY,꿎گ_UamZF~5 oҟq .ߴ~Ǟ/n7~8dzd^1aJuaVxuxZY{C@;"Ǵf -;vz<?*#D>S7pT+_^V%ӤPw9gauG/
-mteidve_hC]OqzAvLݸj͆۸6;NOtof3Eg%tBڵ,ҩZit| y\_f~Cj0nǯ eGrG?.CF6M<Jۍla}6$#1|F 6o>==߷Pj\;TV~=;~[?r7ؽXeꗪaok_Ȩrun]`
-,*|DWț
-ģQ
--[[
-~u:uѢR={?V 5]zv[KSs
-t{h{N]Ťfc$C0caMFV>KFpa
-tA]b&*>iFa=kJFnCH[RͰܪ肮MY  M@6my"0 Qe_-2^y\75z(CǠ|rB!uԣ$ffEu(+u(Yq
-̱lk%'yJ͋m;*7fK8q4q0b)ҜcϦQb }$lNO*I? 'SjFx؟YjX熞,'2ѥ}
-"6VrATjg`yk ͈OBA^L̠g(KP'Ggqf+4CYG[7zx2`Œp41C4j.tk1+1xDx$Q–nz&0c`ڊD|BWP |YhC.K@<J ;P90*6KI,rWQc:
-(J3t6 ^E^ߵeF*/뼈Z՞Ez^E<#S3mGi8`%'HЈ z8X  l*7kXISQԬcQXIHFrjԲD,+$$Gr"a+@""B#-,r#O oQy!s !<ϜޫhN:(sUu3da`:d9evڻ<0'{`N65,༞獁<L3H9 CA쑓ͩR&20,E9%~-g6/b`Zˋ~C ਙ aB حt$!,ikĥDd
-Ϡ܏\(L.ͦ95'`WHi~͍
-i1k>, K'r`sɭ@*1I^9(.e]긳kL<<tx>pO gଖ%?9 Gmr锥^ۖOr߄䠥M)f%Gvc\v4G( 6-_74_[X M#9'2iMWהU]ۙ|Q.Qͫұ̯Yփi%|cQ#td,OPMr9a=8$}o<iG&5D
-xP@:1젣J%xP)~PϬ\ E-c^$^v{<w-npG z~WNo΃oJ`HnK I˂a#GѪZ# z$h8x>S1W(ǫSǪ"*)9yVq9)I=&Qy5隋c_h͇ϻQ9IUbCr'pOR6R̊S̏7sLr}:ϐWhQs'f:(ϥ2}c' Պ=:@+/>N
-_@u 5(&לyU--kR EELE11+#/r!Ks^ }2IT=^wsǎ$s6
-xHўb [˔_n|_TlIe%?\B%|xyOQj bP}mbl
-wiHz
-=7"ȩʇ).&AV,?'sӈII%n%mb-=.6-;eSYι*MVF= h eJK?pVq}
-R93[)YirP*<M(Ցa+ȟ
-\'X b)9)lXNAj9w DpZ dJd@6䳃TQXb.w\1V,d|tg^] {jzAo1n0n/m.m b_'(o'mƷ6H[LҳFjct9cd5#k6.)c]B#R|({Cג-x0}2I/( vi@i"^-4[XF$3e@}T*muL$cY\K6X^n =nV o鹱*J2 f]:q B^!82TRjˌℒ kJ30'dI|Ae
-'$àH0m%FFiqNٕ 7^td|{A., ]Y8~7vIR[4e<.\SL0yn}r[H͌U0bSktxh&7$ﳛP%i55Dk%ד$;*xIPlS<hfa Jh\vhʬXʟ~P ƫ!xZp64%BtkP8#:yxsc14~5@L]l8*UK9[wkٚ~(pGYKF]~Łq[ tMdU~5UXg+L٫FUz>_@Fﱛ2= Vd}[V8@DŽV[P i/S~Ix3Hu`E4I.S\&8얹=Hm؜2'ժOTTWF|TU; q^ KU/P w߿ n& w];z֟T7wޯw1#烪)Ըuh?Muۿ 3޽m|G/ڐZqt|8>B[swwf)syj69r?cLop}]klzx󟺟ϟ?/5/_!GӀ@P
-Cd_*3n8[r
-qaQvb0 6tlΈAVB6hA8 2(rMU2,aKG?L['j%e0kЕ4 ro0(T
-֔
-=G FZ?:U#N@x TMPCE'q: T]H38>BdǤMRc=&鍻nz0qV]@w%{qGq?W֌m硿_{CĿeMU@U+Ѿk\ 2(޶:>}{<lo}$s(T#܇\ccn
-0sW\V ^xdO/5sԏK]o~"ff˘- {0)zG>pb|\|z8
-7@<p0Ңl`.*]`8D8JVdѥ(QkjY*-3D%p!7 s}uWYYWZZW7+ZZZO----- òӮ ,-9G/C"k*7CB)M)ɾtI7]~d6:4[+qPQ47\]$~Jڇ)s8~%h'3$;o|.\8YM̈́P=@Fh~&lb3H[;pc܈LnN766 PP&z{Yu0&7ck;['l𵙞fgm;_ML-L yuYV QRr*U
-IyDnPK,wK_q:,ڝ4IOH.~J/<n[\ݪ2|0'T݆\*_wSi$
-7㜸5Q|.IĐJl {Y"X P<eQHTrJ'D+s╚ґYRˈ\. |#`+>Қ3#fNLSj:r@63<0J`+ r,1tE< XH5|+
-|lv ȟ?:˩Ni
-ش &DH'n
- 'r3V^)Lu&Ղ&`B30UGAx5աh`fֈĢ=#seQ35s5u=uEuMuUk5}y@dU"պ&tť%E02-Ka`J*"2Bq!Nq}=jf u4O&'()*+Zhi3klbim789:;R]zfNG֢cC?"{b
-BSR(Hv\.TB.a/4`K`#k*4Z
-\Jօ*_]!KHBPT6;*7lcoM+grjm~);h&,ڧ;`[j-@%ᙢܔ;06ORs'CM!3k`22 1-Gǐ@AwsOhN di>}]kٯqçM8/% x838LIGbt5I{??uUEP 5wmnl{jbs4i FijX`в`?64(=)`[ac3
-.
-:8]dzp8 1 @ {lav96DgTn@n0&k`\}=\xFu$P wn˶>`a5̽
-JKL#OPP **6UU%VH< j ;dkyӒ)4 wG]w4=|w+%r]bגÁX;>"bSitcUBc+Kcm6;Np״O
-]?\Jj0- ބiU3ٍ7;x3@1HQ`6 b0 fHȩSE[}+QMm P | 8lEfVEuф
-R'#6 [ <,AJvǷؘ7fk!Jvfln؟Yߘmo5t:s^hpmu~5ӛ̇ʆ=8X1[9´WY)ˊS5\/S]eeY%euJ5ѫ}yî?h+%}k$0Na)K{%?Q㳒7JwjEl~s
-d<v6SJ9y(E ѭc'v @B#׭_ep&`S鶲[K7n h8a
-Pi4U:\}k9ۡnnV+eY] teBVփVօUD\ a+wJ =_&&,
-Bj\aޮ3L׉ɺ2T,LS!nrok䦽[;f+:h)&0c(RQWڬPᤡi:
-w:m),މ8Ţ(5&zYnN,֝}^m@(2<CʳƇfYECGa)5) ,ǃsa`R/%4z_>퇮|
- _$TFG\]=q3'/8&gݙ|QC{m5o؟ _uHM40k<KivrW%msRQt6v7~L_bFCF#FEEEEcBD
-DDI"@DcDCD#da|hxht M K ͋ճ2'3|dh
-CNMMMPWWW7Wo^=~E4(;cupll~GɅxMoʐxy+7?
-G?x5Iz>V_w$ҧ/yA p
-7 oQu
-~A܁l.[vZ.;/{//YAyBRb,) )
-) MZI4"$6vXn[p{j+p7]N`y4PZ"߱GN3TҫajVQV q|:~6V7To۠\
-~_+3ׅrhˌ9#{E)uF yѺ9GFIEƲl3OCt PRR ut=`EUd.g\&DŽĄ„RW mPV"YBT)FQBO.\{Z~WŐ2 \>vO]Vg?<6,\r5_Al05@) 5hi8])FT040lkU4cY5MMx62FYB2\70ǍLrYnYlVt09ƺ`hpg<62%Hf<Q)Lf.^u|jG*oa 1F$APhxIy3N̄˔kn" ԃ ܱ#xj_-:!5k߲3R ~,ABk
-z~P 8C #@ahf%a?
-3Γr(!D˱BfW <
-~l(z#UrV{[wX7TTȗ
-j?j65ԭgwze~=c )Qs@ر]tFV;y+bsPK-r:}[fw AѼ>~x4S++]&YUN!Qrfb g:0L32 ;g -٧t? )
-+e4h73 AD"7H.pdRt!#0#i)Ĥ:CJ#$CZGr2 A'q`x!цI#AeFbt,~kĩ K0Cg V=U&ƫS,
-R R?(,*#+KbHHHZtbr4:N&%ФPERG߱3j++LjL,eK|pF֛TԜT]xұ2:'zJ4#2`{K^1XdX3SJdfr-yD s`tnqbݠ} '*'zcwoj>05 }UN}>qnp~ej(4j4Ae<opշ{î&>{jZu󪷱Yvpeo ~oBN=֭Z'l}81oMMBwU:ʩ(7n;P6/T3wf#T͓fdnIɔTԣ(5~
-.փ ny0_`E Ah҂.h3<'hBf Y u`
- 6H r l!Z  z>B ľ7v&C`  Q` "?Ւ;n
-FDR$!MHRd!]HR4:Q'KD
--,"$rl"(r",ʒ$cdy)h8r#BE?2$ C2\$G2 h+v"g'Q$%MITRd%]jIwn\aml5-Ԥ-k#L9(C+S WX R
-)V:tt0ب5+.*{h
-|ph*c i\y?MH9 ve̠د6 N vr~{GȌ"m>zCh6#ȆۘCpG5)w;C_Vr?X.5ެ5/^OH Xe5 q<\Mx /!e(h&<$ Q&ص .UFvl {te-._/PLUD_ϰ>W]{|dJ̣ ̅{#T`MB?  :rK>lFdb`$jm JEɀLYDr"Ѵ!yHil!WȔNң84Nb3r
-Q+|gnT *oPU|^ATp#O{8#.XeX9o(&Ym _0D(lΎfu/[iBhuɨլBy1D
-$!H WD,z IBugky8q\l bEǣ1byJg\^GnfnVǠupNs)\ 4L߱1mq)ı!^0fhBA 
-Ca`/=
-ٌ0oU(o3p(awQuQYE5*#pyc<ݷTٻW@n*[o_py3'/~%;)]?g{:1ȃ ''.hȇ|rCPB~:rR_bA߱^]ěOi,gjO]ƍөVgrrX54vYOMա @ʩs-^qtZŘK2?lǯ__~zw1YcclvaJ%2="Xw
-H|]Ww~D8Bچ?8*B;HʪJ2xDL6im5_{hͶJNeo{;팣sy"\&W 5wAwo!H3TD:/薯wPR7JP$pA!sXwvGRG"e@UtM_ַѐ1p
-X1sn;
-wf6m~n1.dc6V^Cf31zX,6egWXJvKoԐlAfɷ#z?vǘKAWNln]nw݌I9QG+2 _WW??-ן%ܤ@:IM]uW<o'-Ϯ.I^IE~wݷH>o<!?Ѹ3Ňs7_ٟr_)_
-S((
-B'јa2kc6L˜ɔ=9|rK%gO '-,izxj>,'|׻Nw( P
-ejC:סͥ1l*-0.&lg9󙠈 q76x
-Qg\Soz׵8
-t I9K-JDrioteg?sN9breQUc QSI9+"[!LVo@B" EXhu!@"
-OZ) r g|A94R"̯_#ŏꇅ_a/9k˳1%} 5BrMpkѾ8q͝ll]໢:7Տʦ))Uqӱ)lo)|qw^['9(V!mn(Pe
- 8 nL[6EeOtq6`u k I$`0h
-K3> <,XC
-Eʷ&ȧ r]ȟB*,U
-N0.&,+m xA "/`
-t NDV$Ł$N|+`*fIĸRtm2gDCMހEг0 .^DI 2%!]'BxY5l\x~X5mS/k<[Sbװ[+$ :W:Ng2W|T?!l4,;M;
-ݿ׾-JjuTQVfaq Z^o:ǚ@PyQTD1)G9jVoK:$vI$`0h
-kFƞη~oqM?koX;W3>ğOO|~~0|>Ͽ<W_t>e}5?c6;vgڱK#ɖ֐= Wȟ[ݙ%jj,S-:A-ZĕAv6GhdcDvx;3W15} cR8v5XfW5}wj0yR829JѬfђ9
-)G*Ӕ( ܅Z`9ȶ\-A[6@#% ,O5ey_
-~#5s'ȵ /@øL*4DWc\Oʖgޤ)ȑg( tːb}B{Gr$
-NRIĿя2e%C1JkFT68hc0PyϲzX5P$l:,-ρ⇢3q[Cܾ6;Q\R4797IF<FYbۮo8Xb$67yI\=Rffcu'{/;NF{G]
-\Xd2׃5JT⸳& ʝ`syDMGm@ ;#W
-D^r_0eD7@P6':ϲ~W{ j)ẓ \\&ʸѨwV2>r>큐2LݕtlQ^kbͅxIrI
-YEGB^JYyfbUfw4osqޜtл,?{63qܦWy gB^L ` mMs xh@:h: ~wEkߜMh[qL{׊u0<fB>3'k``t0x)X \ `5@ /Hma$Qr1ZG:nww]bƖ٬IW Ta'*,ǂTwZdx7%ȯpUA3}ئ(]ٍ КI߸5DG)&J2=#)BţoVlߠ{8>Gxr[/FB0Q NIb9B>Ek/7~WqA*
-kQa( 'bX[._o"x#vDNp;/)js
-%"d$`
-$UXU7ޛ<ۨV*׏k%oձQٌT<@5VF@u(_FޣZ*T e ջ@^Ĵˈƌh 't,oqL\m)RFViѴhj4mi B75ew^n K2f\F.<{:%q9CO۟?==7O_OG{~q/)(sy~ng<sݜd$p=8c;1d!d'>}>;q \,/.D<+;F;A *X4mh"/RB2fYFCDAe~11&*?rgN|c[ιDώ8UL!r-U"0r'x]ijDG/։ G!ELo<B! \:zWj/qUm<&QڶrX`~Ww8 ~}2ͥux2S7ϱoƟi#-hf[L65R4ѣ ;mcCk4lV3+O8զi 7Pu T昪v UR倕B:=;J%{K3LF/U<41a(rBӔZg[pxToS[]zw ѴR};\oHcd>]Ox3M3nqժsӕG}C#}[^|·/o?z:vef+|{?W~}:C]>KtSjOZ4Wۋ{H6k>kt֎wPKGB
-FCrp@|,F'
-;Fa"FhBE'kI\׬&]Y7i0<XMhB4t3 *UjqkxSyjͶ\!o<>>:Gwoy;WUlu L BE5BQPUUGaB\!؎^"t[Z$ukudRJZZMjn%r@%)S13AˢvSe8r4::inuueٱ}u|ՁMtAUBBQU05$1ZTLA\_
-zv -kf|/Sm4NznM_o9.=yaAx}|~w{ҔUEUjA=F7G–h:h|lm{8㾏IEy38\b;0 "6Ugl=D0[lf;6ƊJň5b8 H W[}ʏoaL~shE*Qb6vwhy%\~>sATahNoSOZнϽ;7nmڴey3Wkأ?{Ȧ،6a滰؝=gtN]C' .%ӓ!#`-}O
-x
-{> p"EFx- .@&9b5񅄊S7DV)Ȼ 8?6x?k aX]nߩk%=ވ`bc*T9fvВseu ,wl ek\ꫵu,2T^`!ecm0X<,|8R
-DQ=#K
-$+1
- lf
-N]2*>B[B&gʇǣi79 |M fG}̠1PpXk@?x
- : =1 w|b yIsW)/̝FRZ{K;M5Y%QG2YTA%dYnkw) 0|Is s*ߘ$2rЎG.vd6NS.W/,BW$bH9 T Ai
-IJR'Jum%7TY9]F"/<\* L|0᥻pܵ,4i߷e <T;yr~aM
-;;ȓ]:Y͝|v\e9o\gcou腔E&]_V@xR.ox/Vuͭ| |@a/O_~_Oϗ?_KO? (Lׯ;O<}0fe6>hnbX
-Ĵg6\ezFi1+Gԙ0C7$2aj]Ow? 6ludi@1+!m(hA1ާS]= ,FLo\cZ\Et[۟-l~V7#7kNbj6#wv _w;9z[>§T
-RO[7S)8qBZ=}on=
-b{#61Œ{skc+& :[`+4[m]8Ey{qg5KsaxSu6qo %Qe*h SWaZ"ޒAT1´7Xܒ)mWXc?Hhw_ [ Lq-a5$[}4ffq-V/Xa/D2i.%c.%HK Q
-S]'tvwRDhށV:dleƀ6!+}\ò~zJB4ٲ٠WL--)wX46U`sCkW<g%h
-[qgO[Z*0JzCFH՝H p(E]2h"`%Z
-{3{_0 gX!9ܑ, X(2|Ӗ|ZǛc)S4v fnXfc6P.`"ua!y=ji6~)W6e"c8l+n(AF~k!cփmٗcw]V;Ԋ*sfj)y}Ăys/`kw3Ṑ_>)uiHgl FBTy9s݈Vz?[w
-o-/sKOxD-?esc 6,ؒϳH<JzNMﲣYub;XN^t=Z
-۫ #Бꠗ]Hjt,~''W҆X
-@j8+k,bh<z_IKoͳ$a_I*;<Ϛ:4LO+L6qlե:j0Wne -b7 e ~fU+fTfQ,pgG=?KÁv~8~]vcнsss7ևu#MZ9ύ_ҝx}$~w?gנ? 9]kݿ/?_w '篿~ӻ߯]wXy̙݌~vd~
-|Ϫ&
-_!$z
-ܚEN GUi`;OtՅs ;`5 s2 &LRž5_sGf_)oWլ݀|t3a b$߻"#!,^aY}`::D~oTᙘsoǩ&&1Ƭcj֦]:'%8\|: VUco}#s:}kAoD&;3<cq U$pU7ǹѩj{w#h{Q/)S4\:Ő)rfͷYx>C%jpwԃFpgK):2/ Z-#Nv|
-Pgw'J
-DX! "N]zfN!IB
-T;b";
-XCITX*i@^u(^b
-M2uݡh'+{x.@ 13EHum)ǫ]6~0(_xPÙ8`b`' +if撣nf{ctUV;gd}C0\ҏ
-_BagsnO?([ZfnNlc SlGό6 %XVYHkLU[
-֧ǍcN:Pc#aW :Sdc[ui2 ldItɯt0J[Dt@Ÿ-AҖü
-nj݇ƀ]buJ
-fH0۰
-p##5) k[7 rae GP));+e9Uɛ]-#->K
-{3>˜g̰oB8S8),Պ||PrTK(Ҍ8
-HWͮ }l
-$@3HIU.y"0‹
-&lju/??}}'@P
-Zˏ~^嗟?}:8ɷ0)ǘIm,O$SɁ_x,TEg֙
-xCF`o/Tr֦EA;SqW`w
-@am.26p
-ˠ𫅲JtPp0 ,6Y|7i50w4Ti6
-
-X#%RZxwM<==]S3f6HF`cBT m4clHU<kxNشtW qJ1]B]Q!&5@rstyTUZ˅ uH=v}/ۊcgĺ2JlTi8=pb`Qe7Z\z*,$h)\{Ixg˝CoIv:삥զٗSwbͻ=#0I馡:|d٩#T|%Gݶs6c)䜶rfM Tnpب0LR^eޥ68kd8/ta13J{o 6<3ʱ(TY!諼Ma=8L
-Ŕ<9en-8:㊉OAX U{dah}SV*|6dq]=cmEh4Ŋ 'j
-E,l0,jd [XnH`::^n74Pj4ԋ*^*gE#l-֯gV娳~Nfcg\Pyz˸lOj [1;)TXGX.eh*#.̝Z+cݲ rH2hJOCLf-8Ѣ Ƨ|K0
-HF߀oQ#Ppʠ_{SaNF?86*|lBk@/vXrxݷ??ڗۯ7c[I\mWN0oT0[u5($W_{ާΟR)ډ'&d%/T1זx@u6 2' g{tKNd~wyO-8
-b7CVa%']WMϥ!A&UϚ]GR~کiKvӎ*ݜ37Wa 2lRVEr
-.bܵy<<d]wږSbT&i oQqrnt
-/q~oT왠dZt sS4ѵI1UmsGF.*c5jkޫZ{1J*Κ?0dWF/^?
-vɘFkCyriy̒W^r|>ǥܔ:n@yj q4 #B0ԑ^;؊n2ȌETGec ;QQUqUm>dJ^wV%J5;{},uBh9Ot.=%,Y}cߘ=()*?67f0x.;k+mQQjp=)<wcNT 7 ϻG'(~&kz
-%g6;S `m|uTk!BWYiN{I[c(brN'g< uwU{6nZ M [*8![GīVnR$hZ(b.9|C$KDŽJ;{
-m稨24ehu[CBvۨe:+CGou
-Vǝ™l;(k*wx| &?-l50}A%ΤG[K9W~eJf%RgųsE@w:x˭+U P⎰h*JmYu [?޾}_|~%oxlܾ||޾}W?oh[?۷߳G&jȋDo}Ŗ/?IۇQ
- hfb}' AAxb[;LC٣!3ʘQBaB!W\Pw6?% H Kgo E~'Qц}NZwА;@ޡgر "ZXH`Z1
-pmCQM!q)#=Sޛ:[΍bc(ۯ3\DQ:Gg޽$S՞>_j8 SGx56/=# )FNbGT9I}ҟ0]"mO;x~Gl5b݊^!ُtר+^u@5˻\*u<:)1;΅dow:s#~7ʶ"32+0s>L/ 䠿/'JzqR+٢# vrp/X\
-w)!g;=tߴܲ/ղ*qD7͐Rjic0˜[a#*.RBo(+3'Nxu.yIL$s]PEl)Qv
-
-l>pC4|l.~ bbntjJ+ \U`fVӘ nD$/JUR6u_۴[{E'_9+ռ-:;T(j|YYٶf SXz~Krt_Ni$}.T h`=CGق ȱn]r!ꦌy[w:ɌgrKHs+h>HZC2VN66h zW"
-e9"THXWh9;df&m?7'wm5XީmM|A6qoʻl^)RQ o~3)J,bg6oRB3dss]g1bRG42CZđS
-Ɇ'DE.%]Zc pY\!:Y
-hEDEE@ȒA<aV^Lա*^45KS4|GIC`4׸4WU_D0Ivso[jb/ )-ǮHHn2^8_8aP{i9_ 15Q<]qQPGd]j%p. +|X{%YŁ]mr1*0ױy'/dZ-ОEQB:^`8Z[ z4E=|j+9)E-Sd68:j9$fs|/d*e2&V=:=e=E~V
-hü
-bn.󨾌%r!qEpU. ejo5P֊MA}=amjW&j<^zX3fbΓr6{)5Obvm9od-rxd 짍anAЅYkec~\_qEB#!YTBP)M͡Jo,bW[CZɐD ;_E%]` $QÔH*5(W\u
-ƒ
-}d0AJBĐ3ޏ˩3ӇF`u\WӯkT b*H|KDn9
-jI"㭶Fz`|h]F
-?{PVz=?1nCփa }{jnzlgZWiVaX
-5FA@ؚA?B2@rt]?(]n1֖7:hj
-H_㪴9٧]>2޽{2O/GZ4\uD N%qEIe__=}I#y_]p֗b,{EX?>B0D !0Ŏ5^1F]5<vT;F:DWF| gҋpnVBޔzM `H=Q\6Ԫ03(2X6ޙ,Ͳ6R`ms[i0\KACճ ,
- %%:|+(RLӐR.Ӱna#&E }%@ ݅8ẫX>u`wD|ixwa?dq,#)',}~o^* +^"~2(uCj[DŽBWNO~;=1r.«ʐ[\ۖIǵ[*mSTzK3&=c[ܿ{O
-SCo&rLz9 rf$U[K8^FN%e8[I$Jd5It5{y;>F:?2)R Sl\G]Hؚʓ tK!#Rd
-n'P3ץLMK= b,U~N= ,B1v΅Te-9?U#2~捣6Ƹ֪­p0cVF#K)it1z/ c{.ăq/'IczZp>ZQߋEU𾶳m I\ 2!ᤖ9~nMr-IKb Zk>3K&?F2W mB[E bQ\EYH6C[O̅uTl$HJCd3d~ɉV͸*rوhJd-(qEUckŻ`Bʙo11
-O \Xh8JOEk~k`_Uߠ6S Bȗ E[=+Tm4T4.o$LYvOW$?rq} XeĥGSSLD'Q ް7}N6Im՚]1gz]?_s*4tyWhpb8gQ,RGhJ k8cV4Bd_2wX[(3[z>߲
- cBFտ3Kq1.@x0Ƃ "P%E?\ 噠kuwJ$H`"(
-vk(!t sR-j5bo ~ 5/\vį~o_~?|/?_}WLD'Vo%| _~nk)R>*:j T$K%T!??V~ /C`{PhĨɀ'~R<e ^P2]n,9i3gOqBj7нZ.m |tOIqX0dt95ӪA )]eA, 0a6Χ{<@7;ZlslCOyfpnh#aiq k֭t
-IBp/[FUVN C-Ph%*g 5U vрgg)Đ&&k7ed}wx]+f3auG^mqވ *bVf]րC H[ve[; *9XTTϻsO44L 0 i#5UjyJG<T谝Q5Xs?'\Y @GmSZM')Ȭ)r`;Nu
-PMf ) 6' ev)[=2PxIN2}<anT[/غ\߰:w^[ YtTOۋueHJ?8RàHa\{ZeȾ5}@LSj+%V*p \t$`WPU毫zpJ[' ^vnw^t*΀w9n{y-Hh=^ +O$t@sOKdt)A6aIScv1QF2O8iϱnгb;e2GIȧ`؂f[MȐIb )qJ긶zheE I]dB./٩K5?mfV:O#{@(}N':T1 !_-aZ#[a
-z}q铱M'5klIV~q{׫gҙ<V@?()5('3
-O
-EuV'h,7;T|_I]Z?_%s9Ġ;!A4#)T@1dZvCXD*X&(ȗg3.211YjkX|ƌԮ7R \l3lL| vؑ
-O KJz8=e`ui UȔ< } ʽⓃN`e|
-9HQGFNGhuW+V!:)/![U3Wi\+F
-_!v4`;Q
-^N3WbK8fb_w1 V3j;8N5uQe|3ʳ0 N5
-ᣦI
-wh Ȭ7| ]DW֘6&
-:|Gcklxa#v ^`!
-mST
-PڊJ e&MU,pNg̻0=SݴĚui[b|&kfHuTX3r;F.kuuOD$澵h.\.th-ʤ9ձ[>3MB+gvGWeԘrO,4)g92RI$PΡ0%PS΋pX@Qs.b6!J|JIS{
-4O0x|<Uθ#WfIZ8%$SS4duzk!8ۃf5Qkה^9{{*wNSRPR=35Դ@[~F<KE韞 pUoS@%dG#5:pЙ5ᜢڹB t`*Uy J_W1:R5mUK;זlÉ{%@@['gG&gKꁢBEazY.jGBi٫ ^3$NS:hjڊ4KZ~HsT<kfHM6%
-HtW; } A(v)aD4 t^!M|gϞΙƱ?2eۺ&t
-c
-ݰ(c]`cF⚓ws;'wq8=8}hu`rK7UQ3l).iu?
-$11+H o?+̠ ϶+!' WziYouh^Ϫ5PAzvӈQH\Ђeq[mjSE.<xfsm e 0<:Z}PHVJy}| q46(6 W[Nhs7҆XC, ״a+v]V t׮*}IJC194^=f{babƀFs$h eEs1h@Pf"9IfEo3eg}G}4Xπ9h9oܳ5պ5ؚAip:muI(<ǐsPp)71
-l OjR$8NdVSh/5US2yӠg2"آZ,Anxol :鐭4 :BjMf\%<% `kܠl,c<*mv{|F"swv5tmCkjL2S-{/ښG/:>w<\'$
-QDa0Z}o&[o =N$at+`yԓAY?(?YRiQ :g!h i
-꼏R*@^?sE{@~u9%"z@*k}KM26(^q?' 463l/*MSNV`_OY RBmZ5ArtLYH~\Wau 8&kEAjy>њ"! S
-?! ~/RW a\鵡`6"<r.@RWn50b@{ۙ>)c@^U4!9pIp4oo?gM3(*"^^8]TgKӞIES~>w,J5<K_VcR6^Q幙UH<rb_tך`:a'gMX]Qnֳ0;(V9 <Wxқ [δXցk.C~աsUju4VX352!@Κ3~9ee^J,fܬkQ+ZMe SDRkyG %V kD:8r9<ӣwdYaZeNjkX\s*ǀ='lAԽ-ql^>7{눝l1Z
-_C| ?>>sKL?o|_R^OˠNɘ\y?!h ;~#-'!2ÃUsMS]E0)`hf~ѫj*Vho8w
-BgQK$b;EP7o~>=z ό61Z01aq;]͛7r++qLg88xGVDZ)6.7A X+'bwC *Y̓ѕeJ]- xV#|T+/Ƣ8NjP4iJf3ý)2%p{K<
-Hx_R,VA3i( bԎȾ
- څl%ؓ
-L
- _V@G7WI 6Gh/ /o?ҼW[Sժ[[$c.~*s-ePD@aDz$gҌrs
-ZcŦz>Kr4͜zY5YQTej+3ڥa-GX]|6\ڮ)Ι3tc0TP9AT!‚Z$ P8d9"='FB? cUzJpK)o=1)+^%UԞ'x ؘ2XuuSjCkc``xLK"a ?=6m9&yBɘhvlz39@gTN-lsm wq"<kh|vҊp~>i`\A *!h+L
-Q-Ǭn{ƒѱ2$7n7VMg|e&K$TL"Nv3zCF["Rg<V1r<G%[
-\_WAnm쮒xg
-
-Y'I>t9~1eR?Vݪ⍻f/}6D
-cF!@7c&_硊2)7˒y-v>l*Y
-!GcIlv1KDD%6?`
-\/^ƜxGeŲ"=mjzR> P10nB HrKReW)U:b=QK+ʝᘘ}$F" K'>Ѹ,]p/eNP6{
--Ϩ| ,7$axJ$`ғ D38b; @c!as|Q^\TBۢw>K.X^2B.1 GW$QV0Olui2 'T3P&p8{;TE$]FXs$$ PAF FNMR44SgU{~]Fq])q5<x(!#s`&4!GSzc jwp
-BCEˑi2H]JBf٠<,zr?YSRx!4(Alio)}]߫rw~$cx!149,%MfW]%I?aWpȈzm}PZatDDY?aa{#j|ag{NWeE8q"wl\i>%S(F lrk_GA;$4;VO $E
-=m L0^^Q=/ETBx=|9gb 襽E[mr#1&9Ȭ򐸨\
-MO י=YIk'2l98=44;'9w2`~T#vDnbKOJ;v~Ȝoɗ|#6H:*I`jW0sz&Jw
-ؔ׼Aɨ6$
-F9v+/ԲdzdC"∠$O`ۼx^Q%KS(dcrSQR`Cg*ވQ=hMM,B匏%sg,8'f5Z,DaQQx 
-2KY
-@B9_G#7*K4uaO;+l$y6czU5C '
-<ty)K+n.jpV}e ]hFcE-x~+ v[A1o V[=^;gy}s]S-eZۡ7[C_gu`9x_jQm8<\>Sƒ܈ qbOE&ͥ,7x<#*PdP~GJx\1(Nd<7 6LO]~,EVL-Y]Բ/"Li#Qi㦲|Ґ1\0x%@LZG7@fljgtv\U~#~R=Q%oB,6 ˓ij<ˋtzӔ׎ncY`N]R"uqe\{J͒᯻R#HԔx;(^Ŝ@P0Ɩ^c w8tR 2vKٗGQۘZ
-K XrXAM+0F#TVc~1
-RwvJAo8 `Py
-tKA< P'7
-0Hzj[Owovh}>WҋSC)A&q@
-2!oYkf}-Wˣ}afA`~dX14AkN=zpa[cЛ֩6E=3iu]: ϧqᵶJ(I5+#>zoEkQV: J8[vt\<oȄ[E_CJ; ޶*51=
-8s"W>L6fť͋iʸU F#]j.}f;XrBkQ:tX;(!`m|XZ-s*n^{}11Ce1M4c8Uה*Ut,mdy\so {sƛpcEo]cƼDp~ꟃ#~EL0*mզ"esbzH| =hԷ":eWRRZ}ҵ P؛E`Ž?IK+'#۽VU- ,;俐LTUVVif}|aL{蹓bHjwE3TRi4[.?W'<h;cns'3%WmXLhh"fsDpZ
-dȤ[A7O<[ 8}Lw)\2&
-he`EJQp5coU6vI3XCgY6>UʰA`%}z0̄͞}" ƒԌj%).-cQ
-\O;u֡)zz^bw_8F{2e^c,NTf Mch- Χj9՚)
-+H/TgN|FQ;YI:P}9Xlq6kЫgU)oiΕ6N­U|o}1Ԅ5ˍ^~ܲ<R+]Y#нԘ=Mr.iZ_)N`phk`;sG.cԊhTQ H3qӚ4
-K&[2pD 1dPE\|1kE +3g
-O鲈HjP̓Gh͌<ک҆$8+?u쟵c"^Kbw#LtcVȍS((+3#qTZ3 E8i<atVI-x ꆭ\2>gz,m m(r3GD`t,K歌I2tr f3BZW]kO6\(8: EʎI#a, &-,P9j(W6Fh 9
-B/I6F<| ]=;HuM2p'+ޞTӇ#l1m1)SدxT>ؙ| RMLxW>
-tGq6= E]Acr6
-a!G$kI1/oկas/JF'L$ C/F); ~B8^EKp)aubvBJݜ GOQ;\ߠ^C39y5Y8g_{+W/fȌz B~5$j6o$8o$IJnHȈ-O[m}]_F 4!
-*E}+K
-$A]u0ֻ(GFi uTqKzwf]u ^pn
-6/r,nZv%7e
-kNZvRٰvOWJZ\HVgҠtQ_wqj Oa~׶2)JT~bAmFՓsև$$FV9.bŵ,^GppFp
-uՋ\qd1ii Rrg) \MTQZΪa\_Ձfqxy"54[yzm74I`BޡH;EUA,aכ@~(̃.cVQ
-Dd|MIgQ0QW6_豮zIymKQs?gSb(M{z еsy%Ea߄Glo|fԮ304MQ~
-7N#1Kmd
-'{Q8PоbFh49xó/Zn)BL Ѯ-lvmYB>/  Jo
-p:ͬM:gS."Z
-bg .7>V}
-Ah/@dg Cvޝa=&ɠ*HaW $ ']Ky-K7֎,H$ci|:~`Ǭ+ꍽ6Y-" ,n-U[}!)L>զY̨r&%Ԫ Qg3*}j
- W {Ę J
-0֚(xg
--ӌ^\c@FKs.,'sh?g !87]=HQkgliU74j٧&WW\
-/hܻw0mVB/לoq%fkIEK{k<@A^`RK8mi.ݩiLv-S3Epi0H9C))&!ZÂ#p@q֮v½UIYZ R
-.^ƌzJAQ3$$pCJl5\[_N+dɚ5q0 %[Ó[:
- |)竿M+O_>/3iך]:ǝUd2.fݭ#L"gD:߼6ǁy^^s!{Vw,5 o{EXt!6Ո*4b9vRJXہh.SS̹ϥ{z1(xo(\),c
-* h _ΥP%` tVI1l M?_@c[K 1&ҩ9Ip.\ouo<
-^,AnL%5
-Lp3VKC};#u<=ܤ
-Z?q{Z-sa?GgM#%aQ,S>i4>?+M_Wh02Jwt1@Cl.y`9ZZX G+N {[#,=>ȋ &Ѣ??я y 5%j {<9D4"9UzSX<fC[e) ~_P\
-Z<- c z~_3;Aek%~k-^ሾJ'Z_ƛ'A/e![=h
-h> Pߏ9jc/C[{W3/#
-j1zp[U;vĎLeUi4zf齆&c~2@~٢;>v;mҸ̰9~ŵ_nҙ}P
-%d֒,,P#mn|4 ۲a0w \Y7\m% {]4Fhެ#GO5u#.x<4yOYT\wfi upUum^n0ǖݚp$mIZe<S3fg{GFm+ApΤoq
-#Flc;s0vI^U^*+<:prYm;Bd|pT,3 ڣ$Hs !hϚOGp0e݆/'˹ ^Up_L*xfe
-_-@˩,g΋gהWi*V?rԷ^uNz8D_kj+
- x.&w*{_9Ui1oT i'@1NO
-QLhI`3WzIAo<*PKg deR8
-]/:
-Ϥ¾x ,1şR|*9ֱaLq!Jt%xxt[=f$;ֱ^k gJ9`NdVC
-%6;?gc
- &CU>A'S"ώ w#;e
-ZAߌs*G O$@-ܢ5)=OEmȸ^x쪦J824:d@qz$RL3Xha(">q>t38+
-֗R*AILv8G0K-=r6$򠉵:6 N4W)1un%mLJݤhàz0I@̘E3.[mrzܮ-{-VHbk`
-zɋs+(n\SnY[ %V;$^̢k<YjVoǁk
-P[Hp>OV}}~"%De2(^ǃqU!@؁?VUbMw&¿㓘U[!W?FtJ['y<=e #Hm6*GNc8VgT< = xR=hA!\);F?F@<7’
-b$_c3h/Ȅ|_.Yl9Yِ*1@_zme;K |[G﵈å
-41\*zUS
-`=TΤ΍ Uq|&6qd6F1-T'kuYLƐ:fK\#1ӏɍu36]c2Us5,?M1[NCqϣ]C5y 7wUeNӭ͹>zg"bj<ZU5.C`Fh},PW xT1\VSP53Y
-.+AJQ'gس'*H]wz?>ǿ_/?{
-ذC
-FF
-/+f
-yt/Utw9f2VN}T`%;eQ*3#pF,7zV.S
-_`M"2a \z"Z 0x?00V ʺ(<VJbpg r6lXXm>'fOI)VHR5Ԑta*
-:,V:Ǻ2MӀ(Usw0CFjtlz Jf퐊iEË9MsDk.W7 6V b[qE7*@6@Fw@U&Lo7:Gӈyuv ps.fM;}?P"od
-hh"
-K(+|q^w=ڣshڰˢ`50+l\>G3W[9a b &Wie}{UhKfuE Gܖ(A Ϻ˝Mn :LeEdE(5P(``J8vl{.Uu \<?uzlZ^56YG/dݿ
-HWˎ7,`2&{gsZ_t[ al@ 2UO a H"زn%]Jڒ ]_~r[1I8חǟ>ϧO˿
-;Vk*R#SsPژ2ew[8݈l]86$8nw S參#x<!_('sj$H]ے@ C*
->ow8E0f{f"]"z{l%C
- Jg]]v sU)v:Us迴A;ja6ivswra?'S)5ϥ()1JjuDLTcJ_ypNXQeBBK|al-i9
-plY~wŲ{?q-[N..KvPc'n7MrJ<SOZvP'& lz~gh2< D[C8hkXBtHN!߹KD/"R -0}pd
-k€BYE!4\'ȩSIQ\`r_~1aspguMUT\G.Lp^] `':!ܯt[NumoH
-FwUl3yuY?U
-yz@WڤR<4N)"<~,
-cu_+ҜֲcA>
-N+f⯩KǸkifon0tN;ckvRОx\z3sIvۙ\ &p
-
-y7n"hYܷr ̇ ]!rj"ͰעPZpl$,\mE o \8&Dc0biZJm3g9R3;1qfT1g78`rFN8& gUM3\Z)"X֥|c-KsMOM9paӂK'L`hIݾfq Lි#ilIkMSD
-`GP/'#oj}nor
- isZΆd)͓,Ԧp9ڄQU-QG- ۮG>mX{uCIXuvcZGt(J|qrB|TGb,iR-8Ni\mdHݖI+Pβ.IW0 6pWO)gG5g^`PՉ*1uw7d57*uAjU
- /K /d+^NZwh3 < Z3u8`RV9M|6r+H$)QP(
-Gϑ'kBb(GeW`rEsEʸ?6nX
-mENA}k赨{ ΍WR.ګŇSS :EtaW]'ed&5l iS6<ZSކ 0pǨH4m$ʠcYP_۸P7MƼ{7mI<U=G
-*Ux<ƭm~0Ri?Yo{~|^MP)Y<O/ildcbIllzc-}c|{nbO;FQ Tn4v$H 9|yX@7TMI֑>Z&rI&-)^ÏfR@K^fQ
-g ѳw\2V\*'T
- ^m[s`>qW[ӹ}'l]ơv|Le upbmXzI/_P~hM4`|`lBL<{uGAY
-zSZѯU'@&9j{ x)io*eAeȉ
-IG x۔^ʹ7e{O rW+F@l))./mcO|*B:O5vi%Nu0^Βh|Sɥq4
-OωZLͷ?G@/85tRlp2UkRmREO‹T ^}<u$ԝ#kSd ΒTWU<mEgI)m(d0hnUvL$DDx" -~0ֳGF~_b9 p`s`$fL[eQ䨠KN}BUd@2>{rŊ?{쒾
-!6<8Fs
-1sAa*lPUP(qWN2'u*C-cՀKǤpTiaJm nƊ͋*bw- ,883ŤxCQV%ر
-u08Mtg]~.s@[-À`a+a 6Aj쳂tي~ T8j Qo}S"y\jY1A2\{#6kMh#eAK[̲$l]b2.afA!y=3/^KiBu2"3#z5y]Y[-2 ,Ol0##(k6*((ok,el:8Z:]{a
-''rZ%UTjH?YZXPqUk릊(Hj9`fPhrh砀é=Y<ef7MRo)ʯxr80}?vugʑQ(+DQK/ C>
-u@4խ l]5x9f~n}-uctkg1K\LA
-ⲡxѤϿZ=nxx/d= 3ϐ=wH"B{oU6Ǥ˙ky8ÆS#vv$ ztMCvsҖ]&Zu o@haGb0Hj@VI(@#݀U>N;.Qw@<΁ Lvv,
-W
-l }=ĆbNVjي 6<jteakdxCCò}_1m-qaJdѐhMxʦC.*ܯ*^"4t| ^g RoD5.KG~U2!C!lI͒%t1آdEl- hakQ8ӽ>WGugcR"1<A 5@EhR̔S3$R=)䃭2B l0Z\fC|kl&7=|K](47]p0h^vMJB>q͞jKS qy",2M'Vc.@ Q [Rb%hͺ,@S?*f)&nF/UL
-W Һ6%q-i}U*/60VE(^nj"$'K)Lh-.k2O\pa]5|lDKAeOP|̏o~:}/o=Lc<߾Og_:ܼZ>~ßhp\Ys0Kx#D.3JP]ؗ#LkƜ8:CZ L1J^e{/s=v}On߽?[_ ~wi{?W__Wޒ?7[i{'+. tzҺ 7g
-Z>=u§TV[b>#!2m@2f+Zt1*[J A$UwTZNptVF~~ej:
-»,RD$&dLD)hH,I暈 YS+fU )z5N1P_;dnC@͒l<c"ʬf`kR,^_3N,I7mILd^g=LJw hY.KIjR S^f Bl7mj1WU)Qc
-0Ɋ n
-|
-  (?im OƿxԺ{V.u*<oQ^XNChlpK!3c-
-ˑ-1saM`t !EkX֬>b#w*sb(+l1kK^)aP 805s  0s4u;l`pĊT uK۬6:aFJHZtcTr`Mi-L?;QC=wtӻ7z#p/r{/_7}_^~}42S?@ҁ]3休7(
-씛8,u3?2QiF*&AeC 22LdN"S(6!-H;X5Kp fнL & kZ7OLj\قxNh0ԍ`!OF+י4@^$QEu_YXUU}X*ɉ4-) f#S3Y=lW,H`a }cS8*
-nLIq S\uӇDzUBPhl
-̖hKˋGT1bb&9L1z0Y?ҡV)XutК>%gdbap
--GմLse)Ybs"4̕l/Z&8jM PW.21F8l%CƤOu~d%179̣2h+|'׃],=m@
-9{PpH0Z$ )wMiբ j՟v
-~({695SG+y<Km8m bODG+nqz2Wx__#yZs-4AjXp7vw:>r{()(^mg
-Ƃg$`[ e( Feܣ f#b6)IT+auGl 6utي[#y6}<Mga3R`XOTUVt-;>{0 \4Sou=G&/o\JQ-+_
-ѨjO#e@SBkY$zù
-դmOs5h ъAH3
-^^OC(C`vHS_q `.dճwXǺIݭU!€geWI4Do $֊;#Ay r\65IR֫4ǀ2桯1Gy
-֏ꏍwWѼ}𕇑<ЍhVS*p^\BI\, />3O~czbXu3#UX:h<n|)*[sԻV-oOgmw}]8vzdt<~{qg.t繛s9)Z3 ]RLf:'-w9xócxp^rp,qN^HD}nO 9rYX)w8uO!ý^UrԹoρ};xj=C;am|j9{Gn;|u;towye2d2^߻VE+mqҰKsT=x{셟5,A˿.k]>3$dIJI))LKNQF#s5_Op-Y[Y|>bV7*ȼbuv'ț\<FpViVaRz6ol\ti':*FG-Zn
-׾}:gefv.$0jQa5G]
-%H3cnj+((Z8г3\dςV
-YhΪva.L|;4~~ | eؚ ~n01Xmk >;c)~E
-D;*'FFD)6K6-u┞ Yh9ױ+9pPD.pPCeGT+qm雷y_5BO>7O>_?yͷ>/RU/ׯ`7utp5$ 3ů C%mՐ4<E5K%6<I^th1]JJv ;'IcT=W
-+9LO=/y/ݧLM7/j| !bب!&>@$f9cnz/ NXi}+3b+5 Y ,SwY9sXPh!(9~WMQ]#
-"1v3WI/x\G3a+:܍ôp
-TvMl\[&MQ0C͘!0Ra4{y,p+s%-0b}o<FlV7m@l_
-)D@i/jcR[ } ;Wki$~|]5 h ua= 5fj
-^J - [Y5kE Jbf>[p>=J6nn0<S_nd/# x$>wMUx-sPY=q*6x9UWrcp̵߲+l~!,͙n <c?gˁzmJ\smNbi}` LlHSC=_eEu=]k^7S?L.\P\>$<}$Zu6dZ .]1FB2nD~.{iGz%t'5.
-
-l"`=H
-SB'm+$+;m#=@*Pmص1\2<[Ѵ'nh߽c[.AJ>r'
-Cg{)qLH{E\Uqo93M]z{!h~ {/thYX;uOgPS.@}(}eH#Xi5ӈiw,JHW|7R뜽UTlAt=%2>pCTC c_?30cn׻L3.xuRTTFϨQ6Ճ_?7Gϯ(DʗWz')FjKg:.v1 > ]W>}n9VC z@ P)VA3j[g$@6M:
-v/ߤ;%oy qY# ~'uITz;Cv9i|]Ji<8edE`e-"{Úuv!EkԹ)öoB~U5K -orL\Be檏>{UwwNtpw0(/p
-=SUQx.GOlB%0PQwSuI39%nC|ɘ VQpX4F\́,AIđӭ6&fb4@ʬ Cג hܩ.=G7&ȝ5jƌ$}eߠ ıCKRDtR| >P ]j6pSp}F`c`7ͣVUT{m>qJn5nZ) [{nzs_>[1.Ao?"G~;}zHz3v/{D_u F*^%ddx5g'~BNZS"We`͕ P]4Ec{v@f c1zL ^k\vO6cx0rmÝwK4S+ P7P;OK'DtԵ8HUh MH<=h%V6QI~tz5?Z'^B=SQ|'f}'sS0{$:d</r:rI*gWĬ/u DޔGTgdmm ";'EőHTfؼ}=^e^wl@Ћ#!<j'1JÀI#Ӗ+ ]/2K@HOk5jϧl WkޟQcrB)v}#nf󂺌>XzE+y5rPr[AaU^b;#GJgV2MI 9T}k%>iQ\fkqUhڐ!b;Ɂq"U쯝K Eǝ*5~C`T$L*To4<y.Ɉk3ڂ8 #kڈVjCZW &P\NݎƓ4e\Kj#"}1dQ"6{YdeYz&h׼#QzkXtknҔ
-y^QNٳuTr eu!
-V*4{e$";PF*_Wrcj(*XNQ]}DDX3 Aײ)64J [#too`E:ߴ&>1,\ckx@M.Uǹ[dIGDl? xf> M$>{<T<YYU妱ì]˷r<g N<Pzzڈe fc-]UPl8<]ˎy^nzEUP|o
-FY5%Xʫ]+af9)ƒ_줹1fyAĦl‘Ɠ[ַjH{Tm(r2ʛh P :Ibp6s0x~;*K zq9ǴWHZ6[,3Tt<y$4Ȟ)aX9#JTدkXڌ+HOtkxzd́;fʾQ4+l:^t?q`.׵P.I3mL.0UȪEj8 ۣ^(@+?)'JvKiUeY x^a٘W%JlJe@4&Qe]U8/z0[ڭdR^yk۫n]F=90:` _=Oj,MH`'t)6*^+/J{ F R/%)4R3&!5[AR.!C)<_+
-`<R+Y AZ +R}Yiқ^2.Ūv]k`2_/ys[M@,uQq6O,=$YbV
-j Rzŵ>q>4K2Q]bi;paEOx@]U1BMaM2BIK`[ k5L"\Nٍ >,zt1 >^]\-l^+NTysu8ku n:$iG!DՊsƠmc+6A+ѼW/O=7߽; N7ҿ
-:\c˽4B ^5j_m|hgv?B>[6}*IЁAIf
-PiBbW c]=ɆGQyDP)dvR $IQ>-vQM d[xՍ
-O!jb|b)ZJˍb]§T  t.q&#Ǘ
-N/cK ZI+-Qqi(mb 5&
-gi:ԴOr"΂1p\Q]J/xtؗrMm:p][e*d(5gE21ƄqWd; Q*k'˼3ҾK--vZH9L'A~Jo#wJN+ȑxt,x#>x,lI36iᏸOEdmd!m
-"d%:13;sȖ{@ӄ˅J'!kx
-`
-Hmo?Ao*q<4U'RT%x=zmgw ^ K{Em ogF ۳Z}nY}GѷFQ>K<O1k7+&LlIEgkc,j9 VhLnɖ<lѷT_p} !QhGĂW!LkECGJk
-i|QƘ=vSARbMۖ60]5_{ٗ'or .Mљ8TNǽ7-ZEk+הDM&ACÂW1`1EQ?$3Ԃ.hYVX>
-kQ-!ꢹ7zXX%v } aQ(8jP f5V[b +^$J$nDZt(ĔNLDJib"81cTG*6uYӈ͞cqiP|$ƥ]>H T/0ƀєIN)Ȉ
-N"Mm)'&
-ɱ6)fFp JX/0%D4^Com?/͡)L]݁UQ^5}{T1؎tExY֏iNg 8|C
- !1
-曎o0:0Y{40]5_{BZ0MjG1ӫz|ϒvõBFCȼ:z7_Vv5Y+Y1I"WF{2ӆ4O6D*Jph <{K=}wy"_gZ?GgNEyМ?a {-b"|b9Un |wIܤ҇}Iʍȟ
-)E_׿x]nGCR?F1ID9o5I>&EZ1|'K^cPV,cŜoIAJ+">ΜSŠ @$"g Yfg6#,Kd_
-!e^e  z $D g+Z͎HtdP0A "':uP':Iq`+=St'"dO'{ڰ'"yc.Sؼt$6DS,&.h|X'"rʐgȿi !r,Ǚ!L1E-AS#9łi~_!zֺj7kf-wN~_%h[-gRXQբjI~ '8BIs.8wc'q+ME:sNM+
--k"89Kh_2c1-L>dY"J0hE%_`w]ܷ
-`((̧od pQh\kQ;&
-Omə;~Zqbw"ӄid xpEki$jf=âPpZ2j_0w(4$xĦ"[4djof `XzhHAsENC')hMc*5̨zʮ㯤D.^Sʍ>)O͞
-Z n0 (4H4ͻHA@2d,n\|#{%ԫe!TB\&Qr* R.Zao]PMxlysr!2VA6-7PeɋvGʋ4fYo•
-}Ĩ!CDkim(7jM$ z]&f:> &eO hpZ½׹ڠee^Ҳiks5NTZ{-fW4Gʴ}ČsJ@3xeL. .4Kb(D\3^)2,jk`Uq||˜VS.j @.A?ޖ[?^0Ge2Fdt92BQ@ˈr-]бNn)LBgl55^{ׂ=VMXwra@HnRߜLOgU~J9Q]8{w8u5]C )gLdm
-o2C_$1M3Ĩ$CjL8B``
-HWn8}HO4dbt1I[`hؑE E%>RXeN\'B¾s{=u?wqBo-zF11✑IqZ<qǥx}i*R?kX>0/FSl;e򱩵Ƽ=` Ļ0y!|%r؈勖XhefjZ>Y,R?<Q"|ї93há@ز/0{oͿr@;|=i<<b( w0WwlC(}QތCAUH1* t{|HN̩`mpsu{4%([ p^WPKf:Zvz02AAA 'L{ C=yo:se!&Ҋ6x,b0z3Oo,Dr&[LxlQCžX4uUgN%ku}UM ݹ\glE8mPLl*"U>2<wuQ.%bR|?ȃֺgN`td. &2N0P+c#N=>P=yT9!E$ƨi<ae,RQLc b '$Ijվ,@0rĔ6EhXLI+j[o vq yE@dxx& $^QcY,1aTP)JdVu22$RX.ARLT!iNw7+7Z(LjI\m~L3A
- J&!N720(<}mכ1Gx0ЂRcMN6O!b_,J p I=>:?\gTd0 wU
-2hIʢ+EaTk]u+ ?|@
-,*ACǒǗIO"D>b@cNg
-9ӄh^M֡lhT{w[NCS@oTg$AnC.AO9|?HT@C+7o8!s=2?2xa. " z{"Cص}, KEbOX<<ڮ22iXvN` j芀*!.&x|sO{T'"2#8wҹ,]e@*kzg&Hh7p)@49ռ}=8@iBz.o N޹DR1ӌyx%!Db.Ӡ f6L G*"F %!`\Į'"Pj'A@ 1)Pj
-:@+C9ute Cn}^|6l7 2ʠ@ߡA;2(зmexk0( a1At?{e68zd=X
-<KJҺ{Ŏ[f`{[L)zR|?
-28^RW+%{5db:aP*ߪ҈ $=Oס?&^H?Pj bUD)mU#)Aq>@,d^dK'#(CɁA y
-hi˨]kx|VWt@L*xt s[iBSU^h5Ur~ y!vELbPUIB/ fSǫO=Sx,xB+%5u V8 >*< gh/v\HUL,
-kbOSٝ<=޷L| Z2hvvAKEAOYUeZw4 _AOAp;c1]Wtır8D`[Ӵ = R"g*;h
-GC|V2ŷEF&NZ$v^cyGXu=5N=0$z?ǻ[k
-k)
-di#+m8&[Oj ȮEẅNO6X?BǍC%V-
- ʺk Lq̬F_ ,
-bP *pW]
-ꒉ \oIHg=QίOSа cc3vpK_< ۵?wD7.hs5W~Wok&Sݯ
-NTR9u_F$z6 v5lhkjΙ-ce3mea#PHS7̕Y:cq]/__z)_MAڃf:-
-t. ϖ"[zvtBݪL}ogX/
--<Ge  Ҡ6"psx4'Ov`H MLh#3` ᙫ*r!pBLdg18 0IE pͣbf4ԕO-*ԁQ7=}BɄzzˊhb:@@A.M)5/; siGxB#(-a8J3 M҈#
-"cwOuU)Z=IF3+ga
-Ϯ&v0ҔdRdA=
-LmҎrW$b`r)b-grxZM@X
-FR~:xk?_<{(_>?r~ww~PY5}~lo)p*AQ_ZC҇'M&?9&lgy~7KuM2}0qd U;~mӰqJ5_'[C
-V?إHxWkw[K?ʈ)n>.?{s_ǗO;Yt7'}{rnJvp#g*HS|zfECYkG҈YIE:a<vNv^H5[a7b=*zD7=fgg{9ۋ_hQ:Ho}?[~~t?v̛v!8,vwLY.5X=Pabdг*S3l8~S wDڔ6G'V /ka1:
-R>u{:薅#aDGC)/p(}KKj<.RE[p?2Zֳ5|HXjD
-e-:wcf.ϖv q ၊-{;q '0\_(epiPC:˖7rAEzlH0mMZo2i18$ݚ?*wTHXR7#aDB>|KٔHRuH**u Ƹ*c 5w
-Ba[lŌC`mmd:-:AMVZ*!ȶJhiN?v6Cx[v*BD,h -Zj!*Z[&pq}]NzpMwXSꁊJW֎& .A+ѭDSLtw)]!]8-PG:]ߚ *`J\$2݂Z"f+$JWdp()3n5R#ꁊ.{;qMV0]Uʫ4K .t=w ]܅ 3[B{8hM<CV46ӮqYLw:
-l)]6 V}a`m,!Vr&Ɇ05um2x~c[;N8d
-
-FۍW֯ٲdVJ[[8[Zh! ;$Fg+O[c`ٵJEBÃ&QqZPCJ~:20XX0Tðzo#1` 2 j[ p3`3̇Uܜ*͞F(9S` x@y7iq"GNl2&
-.,{֙d8ta*t\ mkd]C5`;*5g6az*R DITp,k+enM!:kidX@!.hiijy>s5k'ƅDbjN\trǔC+=+&*(NTʦ3 ւ5$CTȑU&xb'ӺtD5=& lL3EJlC\- lNVD@07\%$zYT<5\7?"0χ2V3e7#a肴`=W핰o^%vCC٣ O^. *"ٚ$2 ѥu-B]Q=)CdPЛ<zo#1+AtsjZ]jsdCĆnU1oi4FcQºhrnȑoh 1u;֎&
-D4OJVWZ=PNkG\ceWW󫻛Oˏ޾]Op$bz;؉MccAF>)_X`1~TO׬N
-53]]]}2}K~zpɫ/^re/ovگhKz0Xd:{:^_]Nzr}Wb9eup0:{$ڿ stqkAv:r?>?;7Oqįu?Kz1\t:&l[fāLJ 6
-**WfS(ekiB(ɛ1HL1衧n)՟f?m8 <ŨF~(#kɒmi"eddA-:^Q>HR:Uľ"zJqš1HYdcP0C.4tcK WʵY[4 I4h~YWkic , tcLi nC]h`?or`F@!Q=g/Lr/Z]_[5z= !rkϘ0 CvL5〦,Шe%Ng6׊~VńjAf0|eeRdAn1K"ehH>f1pJ7Cԍ8-D_ yw۪TL2pe .E$ZVa$МШeZXR.Хc2t
-[=ki
-HlW[fG?!yp]
-
-"(@'Q9A4߻8rtZu[f~.{k9k]/ MtN̓Cİq/UJr7Ve]<0un2tpݺnkX12ۆmHooݳ@~JXvr/M *mUF<Q}lqv4Hk r+n@ Plq_O)|{F\{R0Ù /Vwjxqtך4xPz~{1cڃ&4WZ@v 8W522? -w2
-ޞ3Sͻ'}pdΑI,5͢)>_Z$kN٫V3l`ƋzZ.ЌTͫI/=gң-JsZ/|['GgA392%Y,.hgš FPRm<q>K{aӜwЧe)@ylV ./T 3L14,֨fN'ϼ
-y1"vhMB ,>l\rG|-c9`+H2dg GPigqpb֌2ipKs(*J V"oV8 nNa'K2.>]+t&^BTĬvCgT3?087CʬjIh<Y9)}oYdtPgIpm>GB|"5GVcL'|AŃ(lEѫ!QtK`"Xफ़ޞR|ywD˯~
-% 2\R4m0ZR1(/yd6H_#u]}F35ljZL.pJU$V`<WSa"r]8̸mf8n:H-\8QڹUX`ڷ8L&PBYܚ9ᡚ%Y ]M$#4iAw$i>A4ه;cFU2C]1umU
-Gh 66g]7*S¨Uƴk6f5Y,Ց1# RAAur4E
-H*{3+]sEU2:4qبR
-IReBg읾ghQTzƩ4iZvkgzukNG~# @~mZٴURjm@!S_2tdz[Dȶ1A5K5:AePʪHٮ$%],YhXw,
-p[m)7X5VZU 8kJ(UZ\zc4FlJ;;V2ةϐyZV: 8y+[ބl» $S]=!!ݺg^==@Uah'آz:hOmQ4.wsH
-ड़
-RKcXhŁ]yGU`"F7,[MZ-6ޫ0S୳
-ПD.LS@ozԷo5zC"N0.niUÒv4)q_q^8^vTpZ=Ax/'a|(wLvXJWuQ%|j,u1U{U㦅:렰5[:co.7d#AV*r"@(t֍!5
-@<¬CӆTqlr[~Ņƶ
-pX@8L+jif,,uKkF`u3OX+"P
-Ji~EBfJX}*rNTO0Ep1Akx. %CX/Y)X2 sg F$tLT8S[6I!ktې`[^)AFvUĻ/Gw6ru-I
-q_2sCvg%wg[5ā&=ppDtI[+'85ՔڶhνFӁèAl:u9h7|E؁cvhݮ
-!X~bQF#4qmgL7 ZAϳ|3C;fW*sEL|>f=BBkW2zDs70HQרoתZ͵&va-KH}nxN Lvɼz$6bWMoA -G 2&"%,M&
-)vXO;O20x Jeup-dp*^ &?o?~Oϯ|>/~o׻O>.?_GWڀ㢠:o_ ǠgFjpxr7aJV[2BVg;bd`2@h]&f]Dz'0R5fVZ_(d[ıhy=^2ܑ@)I2Xr.x e BGO$^eM nb{Umq!/Z~_ÝfN|( ™k.;_+z4uΔ S{Wk6ckYgṙATuJ,aQ d[ $rNʛTWUKU^:֝iכmධWCZ=,a/0ڷ:PlmpNhaJV| ԗ08e.zYWߗ\wp1`@x5h੩_7R)j4x ㊍Tb{;5V9Kh7eMǡ.;ɉeR>5==^|Q#ffhv|PV^սuNsYn`7
-EC3˹j*,~xzaW+ !6%DR
-"Bs4RslAfVʼi5H+ꎵiY"NBg%a/A_ @ +/bwÄ|nؗ΢oSW1N*H[`9JNN&2g4ν}V5Nz f$V&93£`6hO@ɀ
-wj}v/fPѥ/W*Px<Umj4N.PFy{VO qҦ #Kv
-6 tP9/;FxVjuiVqN  "J ^K'XvU^nI^aMz E}S)
-w͂Jw4b߷^jyhΪɨgE̽WDcї]*4շH}7!
-|.n
- ^r0论5+Q1bxyyė_>&f5&5F?" `rZvOC$:hy25qja=˪J=@V 2)9AAOϺv F,PUW!{-_AŸ:W?ꘙ>cOy{1Әqx}c5,l\pJ_+Ƽ6Xͷ1 گ3npoOP+÷U4 KRHcD#$jǍh"EÃg6l_翿EX~_" Vgf=hP9
-3)YUHXחv"՜ %a%-هq?9ߥK1U=ZD&C&{@^~}dDWc K?qҴ¬ss/Hn:ZN*ݪ Ff5:H˫5|Մ
-W /o[ J=IW_},Zz/i]h$FJ!fO{<zp͟
-KFj4sn:#O)¿rH׿:N sx6r cum+փ/juN֮)z8miM,,(Z{3ߖn۹Jj
-`mf^w10p\%"-^=}9
-n*;LpL6R
-< <&#%PU؋F>aZX($
-]W
-: BE |N_'*#.݂@>0
-[t)j/ EG;$8lk
-\m:qG_QIjz <M1XG> c_0Ծ_d-V8BMZ$- mN_Iqؑ3SNl
-=+?`H=E(^LXvAJ,s栿T>A&`
-7ykaC ü~ʭZh^ Er2]tۡs=u=nWii
-{zvMwNm&,g7h3nU,GSO!T` 솵yO c<lM[oHMc9O
-o \9yΑvZLO<&B,w\h=oK1\K&OwVB3ܲ@lʢ;Fsf挿ޜ Jcf[%Dt}Oy%#|:LޣwZ`k8Vt]ڹ hKp.p ӛwAurCk,9`Y'cmWޔ@V}F0Z`h> $Ӡg!l wI n_6K Opaؾ'~@CR p>+Z`JM"Ez ,b^M*
-Ӭt-l)nY"AVF0jpV5iW̸c}qǻ|6gR ~a,
-TSn}(ʭ%1VB#㢃7,;Gxg~ eZspvᷚZthݕKbq]Zח3C&i@
-@&Op^=g%c|r$]xW_$W RGE.-O Yf5K %dqy4տ`YB4yXIFL(Φ
-؊Uk,Io pq Z@z3XF_cS
-rkf9y[
-p
-tj[mYWb]U\WY
-{AAURlgӹ
-=o4,lq:&YVAGn|ˍ漖==+ˇ ̢,?~G .Uұ_p#a\<4N¥Үn%(~
-t)`ԼqqcDrtrKҰcx.CG0 UcwE:ˍxXB'6:gާ 1\Tɢpi8z$|P'cdb(,u$s_L󇏟}çO_|ݧ?~z˻?݇O!˻{} l:LҝС۹5c?wy=֔ bb+IsAF`ۻ-y907Uw7[ 4ŌE0a}tMF1!`/={N3t|.0<jt^
-#!|jJa\4Q
-B|~u?3&}LA>6J}S@rF47_N'2psY ?tM^lL|$+Gބl>YĂX1BTOW͹B\hsz^Qb| HBjܞBBXnbMX\(1H`w)YS5``\a~eh^:# 3ųky<$OWʏ R MοpoACE&ɁA6e}AmUmKY$`#@Y(tqgyZ4+c+:–s*bN`tR`%̉nm}<z"I}E oMFogan=m<Pk4WgiY,f~`en
-jkBlm
-!>{Bhv%t
-Ѭp B!qYڐo~p/mHXYHF܆Cv~4&uk`ͪ9r~t~?)3u?$\'᭩x)NGm__[}euT]exE("$3D/|ⴓQmqOzLtNpng/uWvlǠL}
-VLۇ?n O>妫ȍR2o8|U^AM|AXHw:9짓(YIMH(cxˍNTVqxa
-<^ZSP6yq@7H8&HqxR
-oY!*\3Xę@ǵL9Հ:jg#e#j?@ޟ'vD~M{FSU Ikc.a )ti!yB4z[úԯtHmϬOM{9>aby-PcMUB e;{
-}CtgA+Qxgdm?S!ֆ|(XYɊ@ XT[L`$n;凡{Ox XVru<;w #
-{2r}O<1uc!K+2U&+LχV{peZ_Z8fGO@=Ә\
-u0Q' |#3Pzw.WL6`pK^4j!zp<kmj&h8t)IVCwCpzl%zq
-UOYLYDm}doH$=;:(Gw&4^LUJe{ >=7'ћWk,Xhthzk<H=yxVl%Dܗ5^P#X(0z/Dw8Q >A*>Y;L+I89lii(µ6?1wO3J|w?~ÿ_~{?~~#w_/bбiAo=nzXctبM·(9٨enjS?e e2.F~p"ݣ>4&#wVXrW XzC٩ÛRE
-KBl?fqUoF묑0nk&ؘt)Ch᣻- [KoYi6BL]]څ3"0A$tVAr
-vS&-6'Yѫ(.J}{3Z"?ɢa4IUFZȑ'0JD[ZWȢgPU8)Zu^LE
-;~LbŶ*| P"}_7gV]ϖeC>|B OViYP
-zY_R/`Vm W^yySV8Լ]$H\Q yS__/ n%#t?kD8$Ӣ:g8Nuiw)ws9u.8VY3FtBwgM[8Opn RLrCp`1 ݍPA}; F*7g~nE&6'JnZ,{{߳(ʾ~RJWZ̰zcl$ 5O3+J<%'HنrULhm B|P[{lhp{T
-#fxaEK?dluH XYZ}5-Owx
-2
-*
-{oGx%!* @MGgÁ
-˾NDebh禝v dFʤ-Y k«$j+Ī |*qҘV(ͦIZ!wٱm c] {Mq~^BvhO#":6lx_ 7x/lQoc}T 3kk5)NK6}{ `[?4%@JpNU9忯 ]
-uטo\,m~Wy- Pܳ2cTps*+5|nmM GMhbg*2_
-˿WE/U^n|MB
-Q K/#FGwiO) p4YmXNmQ5h:ܻ'VL&ȅ4 x`:Ě{HD]oz<LJ=>}/-lbu| 3azJ/p_,ApWQXi0& ` }NuUߏ0eνS]]u;NJTD@0.L~^Ć|xܳ( /ZxV!ga?&+262lP<}˯^6)uZL $K`-{ׅ|=}vr?vsxoZ?͕<ҍ<bwH /f˶|6||3>ظ=>Gs3b8ӵ߂8JQSC3-&[7dτ~9ZⰩMUڤ(
-=^iԄ:E5/:1UCyTtPv&UTuT΋^7iR(cfnC"aT>ڜ%xk<luأHⅸ&T;Ͳq%s_~1u_."J:֊"ඇ9 aԆgj7jNY,}cjs.XMQ6RmmpU1ۂ@ͤK5nkWܜH.d!j
-:e#>'Z1&Ġ^o3_:lt)\G873Y|b%,02:AX%eLg%:gp \3_u`*Y
-Y&PO8ħuл$]yĬ* ^2ó&U6>Xtz_pUAT3-.2Y"MZKSnAmĺIicQ/YI4i_&07UlSxUXʘV_
-qJ5ѐS%N5{а$
-Ppq XPi<{ 'ʧo
-^~B(7&(e6"/6Ưb)@l~JO : QQ W|3dqL1zpX
-&n5e fv 2Gx]׽Ïrɳcgo%gL3G8o8X.IVP㵂 D@9EkCx߮N"
-7Ix޳0
-^|MD5DA5Fa7hh87On
-[&Rȅ*þľjU*,,ϭ䪛r(j_l`r+|v>B> LcB[%3)Øt(N8>66@u{&1Z
--(!~%3܇UYCizS[>2Ir+aUrqдyrm+EWu_H<Bq
-Đʼn(,
-E_S`(-fhVihgti `
-@gDžf5[ϭc3P6݆ؾ{9(.yg2d٠[{.8D!NQv峴q7sX|ofa|{~^mQ7pE!%(B:Y gJ
-azg-":t)B=vb9ocC"a&3Cb/ʼnNalƐUdF'_RBʧ4'ZhhʥfX !Gۘ VHΐA
-Hl͑% - ~ 儮m*A
-Eْ|tc?~l?Grþqܕ|t=Q{')}nmchc4|Ί~t-,"a]?NcDj c}ZuY~kB"W2"c-f1=D?K{wڌ7=-DS9
-
-T-?~!57b\mJyFl<$̝C"/kO DH,
-y5Hqz heBJo7!kdtzbD<ˤ• %('6 K"wŢ[&M57SdtA.ʙ
-9v+TfTaJZSgShՔ\ڠ]ACQ=[{PFEiyw%{ZܳK@ck2kL{
-=aLYi۫rjRᰗ$;Mu:C7oi| 9l_OT і]׊k)l]t
-~Eu
-6g]&vItvE ԃۍh'+ $lQP̽qhԆ;|Ͳr:8";8e8Ma6Nrs]@i3 o##2}y22a@/-+FqDc/O0 DZ/. [{о "p44FF\}2E}GxtE.GbV#(()#Cc]/8kڧ<8˶cŃ+)&n=LY}*TA׳/V 1ҰwfBz@B4|ϣuV $-qKe@m.2V*Z7UJcwt!w2*Ϟ5Rd.pzNyk[ smrP: 04a"r^Ocny%]Erӣ[<g9Qfφ!(Oi Qh{}?!l PHX 4~ig4J$FؗF;ʐ4"nUǣk!)nP9e>g\L.2H$EEp=G;ZW]Q>S'byhW4u>?>F;]LoWZ<"%f6PN%Ɉ(S >-pLɘlmf.Ֆ?J?:{MCea0|Fl4ghTyt5J0EuWkWv@amDAvtW iZ7si;/YSx7)#,g<c#J8I;#QS̈"/u#@5[w]ڝʽƀ/"G#n}0<FNg6I~Rx y$V*]J9[m轔&ڱWVbG"壈q= })OO4DD[4ȡ# P&B &#|9|ߖ֘X Qc-)>#:{zc.k-
-Yw'.i
-[$QFa|㬒;{jEVIHN" x]3e 7sd׏<$ufG2|&~
-ӡ Ԛ)fwwgB~i̷@Ya4z~F@a-P#M[ǮdqTZNF~(Z0!x(iWFh a6N<de76˖r,N:&Mv 9l7ϟ@qFKoN#ts<XX)]0gkc5De{NH#l&!K#D8UFib.<]pu}o5%]38POat| 4 Mme --N{4Bw{uȃ sy-h{;.{'B׼E7mp,ٸ<ǰR" @JţX|N"5d9O{T4Z ~nLY-0Th"*Mܸrݸ;mk[Y
-
-ZY< #UqX
-UWOJfajflaL(whWCqǗ6Vpڈ-oD.B
-=}~?VYXۜ=XD g,E4m%pD;4R& HH,OO6G8;iPH-0i">"ݽ`Y. 4G)00994Ziqw|4/؅c<͌zӰK>IpU'l\>P&5ES% m$vzU$/ΛBI{h%|B#5 N=mj-)AÕQ\,:n#zc.C9dˮk -q(ą%o3@ꄻΜXvpY4y_\DnMõ/L:pVFY<Vì&+$?wD
-U]}vPL@G9hYB=9&Jcִ
-C%"޵[@D$G|-S!vbus8ȼvOy+xh]V)*=(kXTs SCٹmF}|C}oN"m373!v*RȃT~tSfԇ5-Iv*0g6 8TDu<@Nd
-,X)Jļ(e4QN1`ZXA.9
-Ks+5EtJ"$$4c$dcxipkV^&5?iRMYR'戻S N9@(ifVtL:uTjٖPw$ȣ,=,UJA 6 NSA%x(-gT)cmdAӭR7i7[8)}o"tDOω 2QJx"`rH);g j $Zq=ח.= ܺcg#a6Fji1!"RpТXy%aӾA]w0R%tT_%<!fbrgVS),0$#.uՇ`#
-GNfPG0T|ʜܨElT9B-l^!d?V^SRl[ʖ6tRQ9z035k”)Z]ZABZ;ـ&[ Z7S!\E6E5P٦sq1(gYoyݠu3Հ,629h#U9:A.OkГ
-xSN]:tX3 bRQa;oq~'
-DC""[xUMl Q!N~ߙ:*kim0s:CUV)VV\
-23|Cx!C֖H.Ia.8) IԨN(ǰ69Y
-r\:@cl&$v,)_rTl/Ec
-J@M۪6}YTI?XHnYMRMK[nPzyC\Rqq}۟`F'-w>_~}Vמݼ;LBtXQ <,
-m.!癗{iADUD6<~<XԹq7tJ<;5(ҠdԎz\(+Nv-OfɻZjڱ,Qkr ̃-L?=flK]cZ@6kbdȁv][N얮a.vg 4rszo;FiKJ%_6?DuI@2 Y 6eŢ=:P<z皃
-c9SԂ=L4CՇ;qGUs|\73/ŏ۴H-y|/gMFdJSd)%RnkoN'4<k9%:%3(Ɂ̚ec5~r)EHB I竘,`M;^
-B۪P3CxQ4qk RRhH2;X*n3H6,`F|,jPhI8
-c:B2H+(oV'[n
-y%\~^5S̡9 4q/5 $bkڀd<- H񄖱3`wjhh [ R+Ih
-Gd*0`=cιt?`b1v,O%nOVJ,A4ZlD9Z@xDjpXAH[·ata0ʜUИP"Z)0v >ci-eu,8Łu+zu>Ka6tVaj=
-Rۧ7~<f{c}*ƽKPHrR<L?@7>TjZ=F&hb_ׇGqɟn>}k_(r绫Ճ" <px?f+Feܳx#ի?!\y|_ЇonٞoJ
-WmU(`ld
-)f]s3tc"Rl=oXXhh0oէb^N@X
-:Fxlq[ܬr̂-HoV/oG\9X V1X:9[*&=Jd b DWZLӟ@DQsv8mc5۪Iݿ^C5 r3yaz9zY<"zn}iҥ~ʡ:Ht5@%ٖ Bklb,Q̴4RT20i:ۢo|f
-]nUq3ILw\g`/OKxȳ_߯/w~ݯ巇]p+O"z`~`
-wŕ:b\"S`Mv,*amZ:\ aBHPN9.I^"Xg[VmPO AˈۺAّ>^娨AAU"'S{KӖ6l~%<B4ƻ'*tΰBB-GEM x;if523%5Lj 8<k,#³co9j[ג7<^g +;`:
-tpbvmQ 4۪a"Aҋ⩍ :}SuQ6f-K]Vމ) {
-,:85 &0lu2jEH|WMX`1g:]k`L` Z%QTMj1V CQTIY¾&JC5| !5=WS9
-Hx035;#9Gչ+SIb<UE3
-~B%CAIm.:TԞhu5t$_sQ}+ó8[+up?,AF(_f
-WR4&6N 'AaT )%ۡ:Yu 8
-a$zY Mb7ݵ^J @dȁg ){i
-
-*;|R^Rς@yle-%.[U<H͡!ox# Lo~׼͟*Z;%g`Ilڨ`h7moxu1Jɹ! nc>P(:,V۷[T&oZ
-Q!ד҂Fţ6Wι0
-`5v2/[[s?(Ꮭhjk4XUh|$o YL*;ѩ*5TC]⨓xmn>袏HI$Q_2CrSTRZ
-07k*mk>0 @1".nf0oӨkepN>VG̥Wmi%CV.?.+(̱+U8_4W "liG)Ufy<_{*e= Y~R(&|8̚HD:Y`=`I mNd}=k(^؇U{Bk qpi31 >}h
-Q+7{~ "'h$j|iY7^^iȰhyc~
-3ݱ.,#{_^/_|O?~WKo`痟Oy%۷ٷ^=n +,>7^
-Ôa#
-#jo|L]
-n52lr ^` fU=Va`E]}ՂVyӮuէUhQ9y߃&w9ǙB
-18,=-^vĜ%7A5#9<9{9YE-Zp1@KC"WAt
- @
-)*\B
-
-냩{-c{0ɍzYT@XG@3iztWeY]aq]4Wtй0K0%xAF WzYOy1kc# x+ ^vNH+F1|k n<[M]У8C*# 48k c+<)w 27(ζcPm?B4NI#iNAQD
-ekr^e|щeQ8ؐd
- LIw%Xf]CT'I8 ,ըbS 4T-~tHp 1g&t^ZSP.鉵M_ni_LwR5%UEtUCtl'uw"DI} .钮(ϪZXh|yz~sxP];7n ֥ͭk9=Pi #T)zwٜ#zwռZCpڐu5hL (
-T"|qa(·,!\P熺&rkQɗzf; (֌pcKYNE'Cb:a{CPW['PqYhL\y{(ϜF=M0z492ZnP'UWk^WϗBbeeSRP*DBHBJɿw̚}6+I=ggYY"Z,j+ yw% */} K)paBLs[X=QaPר&k5vktH@].O0%$"Օ?fh|߂CI婥-}`Q>Z2:+@bcX,OӮ=K_Plvg1 #BZRQ\"5
-4:Ókh N!˶,^&A
-4
-Z ü8ӻs-[a[61z/Qr-W2:%aʭ $/LFC); gm(;nDĖ† tʟZw:,uRYg%fo}Ϗ;~?w'Wnx{5w~ܾ/!#OCüCC}ރ]ރ=C݃݃ad*UA_UO%6ر](a0=KZoZdp_# $f9dl{<\~\:cE%{;Ae)ӄq]Rqzkl1Kg8QËwzV Ak-[@0oEKI@ƌ[V.ksX`)
-|fY)kLtDxdRQZ0QrK(Z,ɴ53T> H101hdqodr
-dF@-rc;EPG2]8@RKd*-N+ʶ|i\8 re~X!d\sV,dU5Gg
-[z_cԵ Z$Μi0?pKI`4di#wCy#66nH uck6T\ Vѿ3h!Zlt=.t {+0)M`hRY!ƇEG2%x A<mR1:&ws \l<jk~~gYt6ջIx`jG# (A0A/ Uk ̰Ms$bMu†ql㠥by/;9FMz|,RJ\cQZtJʫH/<o`1XTӷaM'iPWE~ R7\w)y6uSu;!yVEI.B,$u̥r%dzmsv4LiHr^^5Gw*2݅HPҮ4蘒fJ
-&ڬ' "Z.cn9et4k+\_.TW
-(GKkу
- T#A`0Lf2_VpGo'i<"
-t Ǎ6΂&q6orw)ڵWۨJ..wE{UiP2wSL:Y0 .$׻
-PC+ZسLsf7V0:ÅP:H#x9͹UA'ưwTPCon|t.lG:lW %Ǧ`uG.>
-;K 1ig<Ю}
-S|?neD);
-V%R<#+@jcJA1<F& ]UQ##Z{Q;gv[Ta'n*)9*6BJ8\& z Hp og/
-.Rr:fl
-'Ɨل0+` Bߎ*@B&:ìF#('D6)łu\W_a;S!5FۡՔPC7[go .'Lib=.Y*h b5O-`$T;.~3pvJiP`8DPDm+)/@^bcDk!ɠ
-IuL^ BS+fOw7S}b#: Vn5U8*5f:4g7/'d}IJAXuI5x*(Z\_ozNôF5` 2,;"Thy\f>g7(; 0.Co!<%D耊uۄ mcm=ly;
-:Gۢ^ky#
-j^:J3"T3 2fcۤ+:[7I Z̬Ah0SAruI
-\h,vPP4']g Uf c[h`ٮb6;8B]GꇿJCkׁ VI_@Q7D f ]}Crѹ|.ܦ:V$j̺$ÏgQX5kT$aZsfhnw9_ ೙͂ X+*eX.,0g5:b7A&,/B0EsV3;ۓT6]Uy%T 2#@ם0~~oAFDG?M2R?$,G9񏲎_
-n)f^8H~|q'A$K;f=3BQ ŸW&bXI c9z`?
-HV[lTefv_b7.M\~@d04<Sۊc @D4:-ɀpqSC1*-R4gH 1?s5{{}d u* "DXK&b`n1a
-v
-ej68]q('cj@.D
-0u_/jŌ`un ΩPeL%1 >Dx
-
-hQt.PQ
-ZXR{13<mF^PFԮfJyL2Cy [
-knB|C3X{V~:
-9y%T "݄Zkۉ }&N`Wx^ޱ@@wiojӺP\~pM:FEWCX px/ V=YNVBRReUcbW<l}
-ہ=&d#b
-q0/'Un2}6 %m9UFuwkɶm"̈mm7j:4>~(]wW_$&(n9an{fa!ojP!=kQEXz0F|k<{*t3:ל\q~7!sZH\ZH\z7~εiq-Cg>:>蕏+ǹzpk3<_ Ls{1Oy4u? |;\gk</|rM_v3OMks&7νg&<f[o<k!q'|u69?Pxi XӴLDQAj:ɂ
-+J S>bݞ[Y@?;(^~٧xiE䜓//?>Ѫ)l^nKMNbFoߚM'7Y_QE"tO݋EY/i*00iitΪ&Ww_^=Emaվwl.{$פO-~BSen-+^2Io47l&I|C}gayMb[>Յma2~0dj.\lzbRE+v6k8œ,UT7w}gK4zh7uYJ^'O}vEmݰx+'GNԖ>탣Blvxqtmޖ(*wsپ3?nD%
-+;.uF):z\??xʵkKS9n{ԗX\m!7~q2[DAEǻ#A%BV_}5|b>$ss?'bJ{7q :wgM&"o648YHf1i4{/;lj`? \Tž6ʼn/>ꎡwʊ2Ph |%JY}{{緢5<|*?ʎ?.Ms.@GGNQ"SQK[jPD+N9QmcߨYY'
-Nޗz:=մ^I.ytI*R?e[VhD2UXVrjdzecN*nFNw*/)\\XR^U;r5>uʉ5UOU޶g;ָ}{`t0/u=#׆w]q&zΝ?ӽo5H@N7mݺiUeyrZ#0SIo=*6ṱCц5pw"{"L4FJb4Rhd~HJ(S0!.j3(a%#P'"*1H)
-̸2D: ~6v+ c'1A2:a.Ec` 1\#,-C34P ɷE@pHbU֗S$F96ԧ 8ԙDB`=$LCYrւNqK33r@nC>cmدu- {+{}rc3I6}$`R I{l%iݾo-"kf0Av-V"YԆHi Zòڐaw0r40G?FˏXA`2 f124 VCo@|T "| C Zf5tܷ|
-'0'P'&rp'swq=#ǽkROC$JGn 'd Tʉcp)w8
-2¦t,<w P`TjR(C/O'A /dx:{9Ǯ?p\?;Q<3z3 a\^:V8鈅:,mCrM=t:vMxMizg-5TT=mBGeEV$߽7AVl%߽BWRS)U*<TGBcfV&G׌J]{s15تXS1mS.v%
-i*@]WDv !z=sV +2(}ԣ̋ed`MAХA(Q<NwC
-ܳ$
-6ºS!ئϝq4Ou`
-RE~Ny_c-xӝ$Vq2kHS?D. <Yg=- Zeб6R*A0P4~\Si` U lh1!U2&p҂CoiMnlDNsXI[Ф!+U@XOh3v*`q?xZQIb,̞VBo&w%4e*6n EQmu3ڔδxҵ
-o1Ht$fҕRE'-RD
-70vY*l)]iފH
-њdDM"h{..\7o+ |
-}[0:{l&rXթ$[ZY ǟ. } Fo{Bց=z*عB-CT8~v]54skyw0P_ZeҊ}.mD{0e[ӫJ̺\ 1H6mR+glځܸTr|S)1pUb:ôC%p_8_Ɲ&b`A1xQH1X!IlbNf#f&'6l-.-ULQL&_2הUfY7v4C=FAqeY_>êwV,94|Hȁ`JɀtДឹ'pD Ymxdm6'{y<_fR|nmS)pC/m{2PT]wSlMFH *x"!tNZw~̖_~b#|Lz/Zʸ:չX4oT:WEDҁNjDE, YD9?5 aZI1B=s؊mC5 /wxwy&".J%SKY7k1u
-+&5ѡ@+n5]rroRc4Q×PO?qNy5p <[u^CӡbڧAIi7̆MrYD7,Tm cW̋/Uk4 t?ZedLnc~]UMؙ'Iѫc31_pM'ޣ#V[5ohzh_K<bw 9CUe^]gA||%tCY>V;H4C`l0˒Wח7o鉽јԚZs{颢fQ@q'^s9YQAx  ))'W~,0toS\ב&@@~0(ч SDrZk!ty 8^ <0N(@ZGxeWF+,./r
-h(jDt7$C`BĪ ]qaNRXeYly_F4T@^,yEQyR؆4.R2-}˯2܄z@5 > Zͯ8+{3^qHwCmy(1qZ,ȹ rLߔ_/t/
-ӖYA׍J,ʹި`IqħK74L9M*&f 4)I-؃o0f_7]+p11{+W5ȸIZY>[8"5›~5p-9 KPkrTi9;`YLQ7,N,Nu+ƈTK@s tJvOPLt|MBp544Ni+p[r:N"}l#~׬7(+ioPWW%_*Bb@r9c2{AarmTA<׀ō(քgv|{u,[+#2@^Dz@}b_D{NDz?7:}u]`ϵU|߱p3Wr2psg-<WaW2;gHU^k<%%+l M+|HDFKJNAd|ӤWQDV'x!]F p|mf&ֶ+?% )IS]>=jА^asvE׊]xrdG30fK2+V@sWÜepJ"e`Ν
-gLY~;/\Ӝ+$FI)
-Յ_
- )ns9>{e 1Pw
-۩QbWjl:
-et1G}̠ ZW[ei] Ȓ]&B.;{Q%MA(KHUD~ǪBa
-r!V̩(I\hX>PH$]%٨DZ-rZᑪaU؍ms>U:MsѪT$ye[6.IKOtv͋w"(d2,drxp=ԃHsI*4ӟ"8ziFD1Il;`Yݕ:ioF QtC@i2V
-\c ˴%n>x$EIj\*Ú?73r8,6CQ KMfd(2t?ymhâ<|39~8 3V27A|Я6ԫAsgzBv$/7>d>F q+/3Ln ~W7jG <nj!/C '7SAom[7ޕ#dv7$夘 5, ƀΕ/)7KOJ Ϩz >9+
- ^'11%9tdGe2v_@r;$#7T
-,$gb$87zaHbG 6}ARq$3ψ1 y%,cPԑDÜ7kaC_Q"$$'B嚖Uk/@Qazg(Y{>j8gXB Mdi !yOh\gmi||A=Ji²*
-?<Y8VєN^\o+>F~<;}ˠ~#Żcc׀,IaIx/@ wLi0D0ICʋ%\o酟jJICϔ< a`:]ܗmSH?YF+†;H8H6<`]d%{$<HF] E[3L{f]7ћ>oUX_xcFc̸?/bokcoxvxծ!ÛmY
-ph>b{?waZ<)vO+</xyTIc@1pעqs-;=
-&߽Zcلm:%!`E񞰣9mO/Yp?=x|KM'~;9u_6'˜euU^Z
-.rbU?<WlVv^pHnYHw oLͅw ETUΒtpUrVW~74Tk̗VcxwٺU~ ֲŵ mX̓V(YQa%<z$#X<KX>ۅ4vOO s~4{f܆cm\brX$z[lЧ·%J 7E> uV; CehVҳ;ph+V܇yIjh!]`rYAa:l<7tmt'|Uqܰ$G-xn,o,D'=<E9BZ/jޚ<U[R̋*nj
-[tןdo
-b.g]QR'W"9:4yı~0Pkt5k7W\) 66ëY)}3wb[WĞZ 
-1zW: ,0EbRM}
-\MZi=
-Mv3OS9UHZY+ cP(Tbݱ=1.-
- H'4
-i#4T &ig$B{@A"OMi$|23݈qQMP485iE$iTͥ3څ&"#iMީ;*hJzF̆&m$ڜȢFZi$DڻUT
-k#r 5Li.*Lz6ȅ)]bE$]i$'TSjg$B{@c$&<Ew
-HdMܺW{a21i!A2fw?Jv
-Δ?pz>:qPy#硬cue"жa e%ۢCp̏.n  4\=
-=P7HKW8#nA+|p W[q[Ҕx~14E$ NmqWɐϘZCǘQG3z2^[#1]徍#n5\UCaF%VU9wUmf&WT"XOjk0!!g"qqUⰆUlbL("7Nm iޡgN=XwժN6/}"`|$+m m,̛
-xWyNGMg;u3B86ӣS3NݾA6iͅڛB.
-Ut^Cy^}:#/]m w"^hH ˡZqIͺk&V4zb©mpΝkKL$#& ͵yfڽU uUME*"LW[s\^|zm]SCu^PWsrzlzkΛ?"A&4xE$ PN9"&u[{`ʘXzdA,-J E+"f|+ͷy 54PۍXHݲ*<A5xE$ PN9"&uIQ{r55OvXW<sۚZT"a>Y
-|Gz-jGSxAދ%wdM~B jHA>]+sDzMjH5GMm{ѺKiB=>NsoːP:PCîHHMW8[65£©Ywq>>JΛz\3V5xE$ PN9"&u8ml<zX x8,lGzרUt(mPJR^
-$Y~Nt[1s6GW2sBLr<^^!0 Ji i0)F3Pڻg7(TM"Φ`6Nmw'آW+$xphCZ֛}t5KEh6&S 6iz!m1n 8l,цkp%L]6)2߶0OI8p v턾m=hs4J"ndZxl_a^`vu~Wɐx86]Q)kZFTmql҃ ;l浩J=|tv@_ɩZɦoTmql'm9OE64{+`-5\:6}Gs* TёMX nw$-k+k
-i;,VUq^y^8avDP Yik}y-ڵ*\{-YMB[֌*BndZx©mu_)xa\˝kEwNIWTmq@l䥧}{-mO : ]N"uPפ=#A[#)لp
-8/Ir5;m-1lynJ<uԠkZ%"n2p
-8oEw)%b2xojBܲ96*ĬA)لp
-8/ImԞwL k#!kO<uW궦V5!v;ElNͶUMi]1(p{9jU5;Pdv;E .NŶ\ gh9(Msim5ACbh8fS}y-bcxT557%u{qMQ!Bndbx)&q8m4<ZX t8缋QlGz10Ul( ]-\X/ȋ݆D vlù&_{cLs ь2b 9x;֋s&" {WFI?s,A|es
->vo׾[iϟ\DŷO1q s2ߖX˂o<9}ߟ9UcOv$m@t6S$$t7(.Z-+oݛhjY_kW23sZOJ)AߑƺWi]k?_aؼd~JH54J
-Ym&
-8yr !?D
-g䟲ZԾ>{]VAB"R0q
-8pNF\Hięjoܙؾ뾔^G_*B F ,'pSavE\}NJ>kfjr۱ qZR9Sja"8phHU >5*m}T&jKUME("Bsb!!w"u
-q[VխNkZbL("7Nqq=-U5ُc\.]ܤ14E$ 
-(cpN{Z*GRMwrMֶN<Rjm'pS_߈-;ڥ0*2=>}|AEx'"KWxz9h!x\[/vYwmB<|jESj0H`A>!+
--s-g>%25>,4/3ۓޭʼfhj* V 4Gf
-l{9d#SCi^B}bߓe=Nk @$(„j)8Gߢ|[Ulck7ÛkPn}(ҡP"^Gj)8HO>&@m/kLvGꫛ{krjӳ5j)8GߢmRwK55Ou:72j_>S©54xEa>Y
-<"=^xVԸ4+R~V퓵 .+"ty W8[ԶX5:uq +|ޖ!:PCîH|+sDz9MU85P_]ROyPόj*tA ^ <'pSpHE]τ-"ޣo{ x9,%޽n~FCthaXB$X9
-xW
-funmSĿ#urZG& z ^#N~Mu#4>ײ(RC
-u6,1SVP7h/*T~QD
-#.]TGΉɕ >9S햵/
-8pH )|nM5r]15{Uv!6lK*g*@-2>[#1]Gn7!qV%=1W-lm14E$ Uh0pN!U5$4n]N!nkGܪi U ]
-=PQD Io+
--[\jH֡]jU7ISbh0H`A>Q<7U;myB86֩Ox
-g#[7Kq!aL}][>>۠"@|䥫`<=طTѐ@<O>Gģ M("p*#ϵ SBY3=Yݪk"`@|d϶Sv6254P_ y9^-E^|B W8[ԗ/dWZx,64cS٭Y:PCWDHMW8Ա)54PۋScꫛ{krjӳ5j)8GߢmRwK55Ou:72j_>S©54xEa>Y
-<"=^xVԸ4+R~V퓵 .+"ty W8[ԶX5:uq +|ޖ!:PCîH|+sDz9MU85P_]ROyPόj*tA ^ <'pSpHE]τ-"ޣo{ x9,%޽n~FCthaXB$X9
-xW
-9]1A+܆iD#\~b}+ UW^ڥ#IMܜָmmJzW /mF
-NB
-dcNFK<̺>aƑ^ClhE
-JCpD$mp}Aug}M %,"ӳ
-(~K
- #+MTF qHK%Lq-kKpjR\{1lE.$D Non9Lkv룩k[mTŢJᒁ"qi7mh Lb&*m}TfiK,
-p!%B9-f*~:p+液bn67s%PKI')
-- 3~[?n bnwflF,
-p!%KS<gCs\Ԕ69R)w_
-4'$q zÄvOIQ<;_kb vػ?r9?
-My=7!K
-d{ݷs$䋵.i-J|`7>NRx@"#`.!SIoZ=OQlkgZ2͞DPx5sS/:Gf@3# y4n4Z* 9)AA128Ept p5K} wy[ͅ=|xN
-H(`t]Z)# ;I?f>¾am6#R
-.A1>8Eptڀ8I>Y<,8 R@Fbwň넬P"8NO:GQNR '[aOw{aޭք<4!'%2H"(Fp]B&ӓn!fDm33g-^OXC,v9j-?{fn)p#ʉmW7<%9iKoOñUy9||7I1^&)$M1f~r{:q[[Z$.3OR|֝&&1k& ~i$\4+΁ '^wcF⻾ 1_e_$)1fO8AnOg[~eS](VeY4
-^,e$f2k+/}kB(!E0yxw_ӤePgw6o_kQ rȇK
-a>F!7"LuklU]m]Y2H#(Np_ͤT k[U#Ev]}ܫźkjsoR1AqDT<z9kG[jtѩۚWIR@f}tjݗxIũOn|d62.R)̭ڵ{n>>!%'HOJ Ή}Q* >}Waݵ&4WeFP`DL*NEppZ z&diz Y19Ѽ׿^lknU-%1'hOJlsj_NeĆFz9җS=\>GmJza'x/QS$oQ_V:,M^l>K{FIhdʼn5Z8EpsX25"}fXhޚk:UFVDM*N/E}ۤ>1Ϟo{}\gjp)8Kk8Epsj{ݏ
-^Y2O~X~dyDQ
-id cq[ԶX:O.}$#pyXz[יQ5.NDT"9N_|NmS<*\úV^w5QMRBYq58Eru9ll67$w~/ǚgqWk7ߣ6$t*])M
-и59ź~~?k%>ֺҏbWUh#I-\ָKmm#5.QaIk\[En I~͖Blֆ}7~{|1u5R$s R 'WO>JqDY|Y,gI%_uU(NElhλ^HӞsڲE8݌k#WċFL K(NElhY0'٬nU|yڽ%,K.d J -bʈϕīP?1z-ag9_\gpgt_ej,!#H.*4b)pq[ZzN뢹MϭKPiKP=omgOf
- y}Cj)xx^6^ԚxT@11/81z-k-e4^C>LM,o'=P3%$b4b ׉XBSnh_t[Xߙтr|⥇d;T #D#)Fp]b&ȍbv!fib2ۙ.1f͵df=1#$f4b ĬP"w8}93{VbF f{>33KGQө5@"f AuP"7N_tpu;Ky|;>DSmKHh$(ht]Z)r73k~Զ4d>ھa6A#h.Sn1aml>QiM<}= oOb:3BbFcňmĬP"7N_tl<j[Z0k*[mO{{mޭ<CUAI138Ens9쿨mnI8.{$u`ﰡLx;~A7 9m@9˱_-|k=[8
-zi,![KFQ]s ׶DQ;8R)wr)n}x
-|cV2nLU^?
-
-%<
-<St7ܮYI(,mgU?eZ)>?<3k@"H$aKW:g{pʥDx-TexVD>RJ h#EbwSnpڨHL}֎vj*֎=WLؒY<Hsb
-86qᐪ}.4g`M0W5WIU]1S[j)z$xH쮨ѸzTՔؐ;H]EVխbn+Ki4bovW:k)~lUݮan&-%SQ$JȍsضQ;GRMw[sMnzxȁ4vyݕN}|3΍l[fĥ.>*ې>m|oCJFI$/5@8#=-U4%Wa^
-ѫG"5]{'Qw*\Dj~¯q y&k'FI</-W:EHf^WEw3P/Xjju=y/PӕN9#=S*\'Kec0WZ\HW$ݕN9#=6u906Z_ ;zzسD^czJ@TJe-#=@ ?E8Sæp U4J2Dhͳ+pwjWP0M+w twj؈l
-])V4J
-$4 Y]8GE{
-(cpN\~v#o[[^Rju'pSomm(.pUyS * > $G^
- # Ή}kK }l}DZՊB`|B W8h[Z^Ldj Y1Yh`f+[yTT"htsjzz 9v.p]k"A&4xE$ PN9"l
-RS 2;u{J=٢>KRCjhHY#
-<"PCGJPfʩ5O"T"xO
-^|Iq5԰>1.Էm=W+|L
-"d+sj[SxX,J/WZO֪'1\#ҋoQFb=n$jju]#0W<̽-CBu*5]HMW8sjepj -U1+|B=3V5xE$ PN9"u9ll6z=_˱fYy9iM/p;jC *$%^_~ "8Rçqmn&e4H4#"M#ѐU900ڋտbs7I^Țc]yM'f4HPiFW@w<F{~ m@~K
-jF
-0 ~iшρ^+g?&Zt/GY??9/5pv`f֧t[gO:+1~#@]k#¿?aR ;75Y҅X68';f:YxdbH-b|)Fƫ٧HQBH_{ϸ0K O|7'0KFP Oiv \vo^md$qZJkCjB &#9"҆'
--gD^H_gR>fw&"%g&idZx1@;آu+!=.TZs%z)OU*B &#9"҆'h0^`N?U26ں69VrݗO &#9"SavE|SK ։o׬kFm|Zh0qل8r4f派%GyXuT\ǭ֭#5V>3;5źuddSSg٨il(*nTȬwqɷ
- #)"4@/0m,U1h{Gvb>3?58lJx*L#h~c]D!v.vU5%,`3$ /<Ak\^lNV: &Wv.up\' >#Y7
-qx)F"\@bj_O۵xGMgZاe'1|Fޔ&x
-#қ͉K 1yO%=MG3FԚW1|F`+SpH/E|D~cjd<>z&uWSUg!,ȦPx)Ho6'۽U5XE}媾NU}\ ,-48dli|<\#ҋ\G<!Ӈ\yX"[k'$1vՈm6 1<\#ҋ͉m:=zI.W>V!)
-b>58dlJx
-Ŷa㡶E|>vkriwD]c|ZӋSbYasE nH(4&`^_vbۅp/Ͻw(L Ј4+r&&^_lj\wh">ˊ|.Ň` 9! >EF,b!ÛF{q~w12>İ|ϑ+DLW5#cF,#`a
-+~xsh/΅gM[xzZ-[ڬ JY;3[L,t[/$#uG֚Fb̏iBVB
-dƾ&ISP`:Xn]m^kyBL)!J
-=PQD 1\TGn_k=[1d}d
-Hd;r&7 O;(<Ȗo3ABwcf#
-ŷGNWi+55:R*<םK^-)RCjhHHMWXweȀEuohK[3kH=O+ɪ2ٓPS jH~B WX355:v܄zΰE52|d_H3PCWDrGj*8HoC=ݗ@=^Imw1flBZ*DB
-ŷWL#PSs+[uiCW _OCW/PCs<܏tUpH/Cm]#=2UW;ØُþPj*tA ^ <O
-^|:EtjS Zw/)WK?Vѡ:47,J$X:
-$A4RJ s }K a{
-"ny
-=PH ~ W\ ww >B=/9w_*B F=Y|?%vW\ !!\\gVɜsWel6tB("~B Wr#n"BVCeg%>sbjz:[o-!14Hd]Aq;ħ#\%eψ.yYAլ.sTz$~ZWqzmzՐgG.g>Y]fY]s"MEG"'pvяpLpGo:r0t-Q= /:ƶY)߈ ۴LnCq!fWaɍ;ۣN>nP^hH /\Aq;gj  m<t̃aյq;T3
-=PQDOWqzmGB%25>,4A02ۓޭʼ{hj* V=i|?a+htgۋPEjhVKig?}^l5I>G HP ^=y0k
-*8Gߦg ۵H6,qOjwHO/mJ EG%ካ#5f0j{_ OG5V\e= 5<(]q#ҋoSO}a|۱ry^kZ jSjhtrW\w7NCm2)~1gjYPz$~axqUpH/Mmոו!66 K54̺ <Oካ^|ںFzd85P.!i1WkVyPOj*tA ^=y|?vW\鶶Q
-"bs/޽0@{\n}ZCthn@-d
-8=n"1s!"Wݴ6#VuKE(" 1\aG'&ΧgL>sr9Y1&s^U5ҙ
-=PskHLW? i!!ѳ91f W
-YT"XÕk0^ptՐPU%/+BT"Xf*7@OM\̇1LV]5uX14E$`?ڑG?z3Hz&ØӵGg$TfyTj'pU?Aiۙ܆Brͮ
-]OwG}ݠ"@KWz36u}@܊m܊A55E$`?!+r}j]Ldj| Y1Yh>`d'[yАT"h5:dzwt"54Pw%4賟>/k${@$(„'pUpH/M=@kבlfY{~ě=KRCjhHxYc?RVGzjL~B "m)OxB=*v?I5xE$`?+sDzmi55OimB=OkzMTp*B ^yQpUp|`>2jeRbv[ ?d8D*DQEss'f/KjU6ȧ
-]CF`}\HLW}mWP4/yyM2hs^91d
-~}?kN$>ܮs̵]ێ!n?=Wj=̉uR.4a|@˿n
->[9s/B6?lR =xn>t;cs %;C̒hAhiF(#<QcKvWx&a%,?{IF|tri _Hd *C:Cˊ
-92:M&qg^e.wtn&oK䒁dJC:CˊĚ{̆nSMW+R~x$뎉Z5ERKd*C ߖ5Yk SɁpRXj_kxK 䒁dJCdQ>5R)hH:׿>-+fqM䒁dwiHghYQXlnǶݷҷp
-Zp0\)*M.HL2!C˚2O`lAB҆f|ĢTQڅ9b(}j9 څHiHgn
-`-v)
-x1Bz130%I$ɒT(2|`kl^KD+Yb$z"%Ɍt5YϹh2aM=WM296%i'ɒV(gݻ>Ȃ7F  o~\rx?p`wI%dĢ0yiHgYa>&oj656 Jwag;4b1󦒼dt#2(^yfOվdWކrK~8Zg,k,& $m~KC:#
-A6y/kW2ĖW̲ ǐz6%y(El!g$ ^\ѮG=1H[jJndd݆tF,:״'COsmxs8o*+M(i_e!g ^gBG̶Gkh5y{h)2XxiHgYa>b01`ny"m83qlgCҴ*W%Wg79&C+Aq^eQWb
-hJINLL XL4>C}P|8H_m2s.4S3TJ +e,O}|w)U_RCW*%,4w g k|?_sE.eopaMmnu
-==\ ''ZuJA}d y7P
--f
-
-#9R-FkH.rdDTm b`TgM\Y~Vpp_ܓNB&ߍQh_Pnt涫 `)I*,s pȾtv”`QLI7:sUЄܣ{R@W"ck[t\1שL.E 3%g  Y{R 2V\r9X\%$%c0A %e'P@Frz#!r@rwK%ҍv4!X\ށ1KR*Vsmi 1
-ؙ-x-zԺcγ$L-)GZ]{2"ۭb4Œԍ
-5R=b
-jkg=bYK0DJ(L(7hA@*Av޷ՎXtR% nt涫  y=h^RR^Q &{Z0q?%0|r`QL)7W'SPJ=ms.WKP+%YdA0ҍЯ<&h|J^ ;rs2q;9 REF학Tnt~)@(%0PnI xFO3s֝%A%dzI(`&_Ey2M ]qSZwV ,2
-!e
-\hf5
-`Q){`fk!JWJ²Hh:2
-tr}Յ'fǸ𔒺Jց&3bbKȤؒ:$1R+SC)+S-q^jvx֋UbwXxTgZR!FVF34@KVmt8Yq`GujdPz,T T -/ŐkZ
-{9sZqGyكk=R8UC*6mj]ӤZe)%LXxIo \1 \k-p@KxuNoM1Z Uf]\.v`R5c|.t%|VO9Ai)Uy# ɾau"`5w6-4-§;ɵ wb/mZlPX W:6V714-ܶP5`R5KӖL(AJ΃*5* ?\SŚUMKE ϥImNXxjSm)Z+3-mZڃ$~cvyc0mإpŰ t7z]0b .:6' H\$APt | Yp\X4Y*k WbJÒ@F1+1LpeLw'ˈ):qliu!nxh>poť憠-]L™4ϕ 8l0iE4 .Lp>8vSBܠ.n<X}[\WVJ, 8ŗǺ5V#9|{[[G!mϞo/|o_ ɡMzj,ֶw7Bߑbܱqod,f 2ՙEXlla7|,Nw*TъdeU
-仈o$rEqP☫$ViyPKC4f+!^фْ5Yr]7FƱ>fȾonr,icAwOu'B݁Ct617iz1(eq'bEP`k,=ٛnْ,<.6$#;k<h!IAB5JۄO.@*wT4 Hw+#+&@
-r_7Ԥ.,S)HjgonwA34.”~o~JVJe.'<{졥ȟM56'Qđɞ[K^H~$]1fyyc9ǡJ$GE+4|-j`8UB##*ݩ4Lp5a&7v%<xz7]^Gנ>j$bу(#ߑH RE5E @x\y~b>G͎S+o$i#eE6>!=ݞ}|F||S˒Kgm}xӧ^|qӻ^}ǟ~ϷY5z`(?ntVoOn훟>O~b'۳_I^ ۋ/7^cۥ-8&(k$$Qk Wÿ6̼}9._})aRD^$WZ8BO7035"x}o'b1Z*Er &kWe1CX l m1|zT|P<W_N
-_ <H'9|LYaи,{rzYcOE ]({0L Fnm_J ATub D=-! 5j%8_
-&G+1I‘
-Jb0];UA$: FЕ8ܫSnN{ Eӎrxcgg E]0Ih`'޴.wWx9˵R΄Z?2<&M_d%%t0̸Ky
-},n@QͭE" L[ !4kTtn+-.|r(V{'bp S/<]<p:
-8ٞX.
-#8tkV e-t=R <}[鏂n#(sbп ]Z?!/P
-
-ү"^IR=f %,FZt'K"
-xo&ȿI@BRU'N IM7S})$uCR;撚|"9ѓZJ%45ݦm(>e͖
-sIΈI7w_>Z^? "ԗJdyjYK=Jϋdf:뉔ym$~$?֦x퓧95^)TB`Bpήn>rM
-l7rb~C@Lw@[.d[m
-~ЅAiUY@;m;3g]p7Ul]VA8 u[ptkDIP"Ló
- DFM
-*kq*GI`
-dHCLH3903H{n]tTY-*"? t)a4$'ͽ 8M
-)yhg7 ^^900B4
-Oٿ)DwDoX0%b߼c?:$k3\Ҧ\XJ֓Ƞskk!C*2k5jLR|j S_vu=歄DN[cIFP%>4o]1y끁7ybd{^\R`vac#M;`OیO!~|QvsLʜD?"Q'${Mnd4fyٴ%4&dIVA& !^<2 ILt†Z?q቙؄zJl2ɢG`R4/ߑ'nY LoU+~Jb2b+0etk7A{q}&er$]05N
-:
-cxd)K1.}Jv__MT#?
-Iٿ
-:O)ҟ<ǽOmTaG-<Ao9iUA*7LReAЦL DV8FIFؽܪq~ feg9&ϲ%< 5Gr]!ק}S~<)  %ev.i?@s lubSLy\vhl|qgR PhXW`{ , |R`)G3XEE:
-
-!R|"\hMr=GT:Sѐuue?Í7*+ #pQ\/pW-OabPYD(H(4pfE
-A('!jg#I^*[ Y1>w:H]>WOyKI(C:
-eh-{s:ӐXK9}g'?,eL$oC(nB i,8ʈHz/$߉GXஏE.}-zy:&-^QiA Q^rG/ b3k(`DP
-}Nu=gW`"j鮪sJd
-'Ew(-rhI=Rdl5
-d㠑M*Iq
-d㠑 v+k-$Tc,@l}mcAnˤ. f0n<$)td?ͭ\=/$rPFkVhti.#hz!z3F~DL;zm-. &iULt,>S YKdB\`#ұ`
-Z%}ei~ ?C4?r..
-Qj H~StyZM#b],FuubPW%=k:֯XmٲF=L#F 6s^Gˆ *i
-W_L`Ne=!5Ba`[3CwL2Ǝ@y5gF+HspHLRθp;CŸ3⹉A:hbwBF8H@5qA2aK`TnJ63$vQM8r
- p"hSh]j7vIK:W Td80]jot0]NLrK]EǪڝ'rzu*vb:e{FbwMHnpn
-ȳSuD>VIe@ήݪ Pu:4ɪͫMSX']66#  JD&3w|4ODTAI}*"|R;rO?D9N83(nQ\MF:wCi_ Y <_ O|1LT(/A[% 9K1ݒ^*P9OjhFY%|뤝f*=4 1Offe6Bs5}"U2ɴ38n5]!1V j& QNUB_PՆDϭd'
-X YOBSƒ|(cxl9|#Kr" dN|{J#he8sЙ-K{DBuAif$Ц%Gi$]1ˑjc؀YXZIcWCN@Bη[xmd,xZ ZV
-Ь/@? t ('g੤˖0BAk& L2$
-)"'p:Z\F+R$FK-$5?X%Jz}m"O5[A81
-dhdg2j%qX BvϚoOY/X_.0
-h]2e>*P c; _ 3msGԄ/D|{[5jneì;P,aԕ8ՑS :6l`()=)Rq.ݚ~!'0v~V@$dX2
-tF@HΗä U3V{ɐ&:zW\4+8IVfNy5`AqLo|匑=)D~ЕxԁK+ [ Ihh_dIaQ|m]{Gcjjq^vv]7~&r:zؽ޴J !uP4מ٧8siJCCR/.ʔ9G>K $W/~kh.{jI\bZzO**~RdoN%p~68SՒ!>EN%jTBc|2EmuSIQ)s-}Z);' ZNct'~ ۮ*4 ZYi̵)b^}JX=YVu3ϷNf`'~2R[ZsVNm%E>,ǘͺԳwEhNvQ+n*i87R1eo# UՓE4m1]̊$ GVVZj6s-{q^}JX=YVuh$_._r0Pkl5 ``tv
-ʕ<sS\Xk1s͔ǑG]e'TOrl=0?V
-H#e}9?2~=x!?]wq**RA{aU3Lt}'ݼ/fƫ4}uVYS#>c@lxTWͦ;DT@o}QϐV%Jϕ\`3lPD鶬J*Dwk|\
-2l[=.u|a:=^Eq,@R9t Wc0sgJh!} S1")hRP_m"Y&iL>ܗ KO+4q}һ Mj !Ȫ)@\yxEʪIQdZ bEJtȣ7#bur5>(Fi):!f]86g2t:Ԑ!vbJ>-!}ԕ!J.Ab?nCܗ/aۚK ~MSKEJ?L,s{>V.G`T$#֩Xwtǐʀ:V-0-Ч
-2Ht.; fQVTSw]&Rq*T9,QHezFCDŽ3ZeNZ&^4ic" 2&wv%ڍJYBaί"D!B*}epJ~d;ahgo4zʰ<Z>J!o 2(<҈'l""Se0jȨ0Ru1T#dMy! Wdwm9ϲv EԹR\C&B㚑W2ѾxWݵ% 2.Y2:MI
-!&Ϲt *-u͠:Egqv_ Qm}f.Jwx? S;D`Vd$ gKB6#ڗ/aϖoW߾_\~>؟ !}u]s ]e[ rI  [Ƙ#"DAufȞJ[ЍeXE ڷUK Oc\^٩ZzߋMIaWO$!5G~$+MSn賸)b^(%GsQWvj{nⓨqPΥBAt4i(I2 W PF1%1Mw*"CVQ:>ShT \TCi=JSSCt>lvTy(\IŔj uTdcd![)u|[zm ٠HQMZK"AQUlq<ƉI:@ݘ^"vj,mDsE^ڹ1gNw7dl3BVLUi0J5R1%ZRya-p: Y}36܉.dQ%Ts!+!-18/ ۾^g!OzFCQ3IAzzff̩LnqQ6D]|}}7?||?} \pL[`(<wuZ>^>w>û?~^}ɯ*b ?тL>퓶
-
-"xPlli~ͥnN&9i7{
-k3a'o6Ϗͳ_hk6۽vqva~?w yOh?K<\Er^ʒ$A+sz
-CK|uou{R}nءi=`cZ&L/ut'~]K`ekTwٱHBsdBBVlЈ -BU8xX!BdjfWo wjhwbG.jv.z`{4q\xNrqƆ]+wD7Ҧ̲˳U6PIi)siN0
-7(^70j 9&dBi
-HWjG}y1d}1OuwեH!X` 2!U Ꙟ>}alOG_knIU[ϡYc9
-Zi JE~b.[\>G}ꗅ]4:H2d+L hLtMЮ 1
-
-%P$bUrQI`CםB=-kNulPALokEz\o.毓s&d ~{20kU=1+Z `Jn'DQ"-<2MI8Bvz=tCWj'$!d;][>Vx6r w^)᜘EJ9TIv &֒D2I{ EӘ|VX^܋/1<KNlUTFj1T_v`iDt+ujMD[-R店A3BEq{ [0+k<ȴT-be4#["EEX)k(?+TME%^zq+Z֪Dx aT
-]lAE¥{1inS[ S@%'~ 43
-Ad V-_E9FNQ<ve-\FsD޳1w_+~eԯQ)^<7Aϗvc,̋W0/^4:.+7cܼ:N>YDVͫxyT5̛q󳷿;y?Dh޼Ge>G7>y:q{):ͫ8{\u={ sU=b~r`e~_{|Ч }@i#<'>_7}v=Z
-)4$Aj@s_SymD1/z⮃akIߎ-ԵcS v#SML0
-T(WFz?0R1Ù^BLJ87wW)A[Nvdý!H)TlumڡÕ]̥sw˟cVg+65R'eP阷B@I«4Qev<&7a(Fru.3ZHSEnZN9R,mQe-a0y,pZֱN^, c}O2NÔ
-^c@;!<G\m:,YV/6 wșڹq9!(tb6\Nc&Ʊ5kR9F^S̱-@}$wuMFHE5*XFxY0|4ETzV3e{`Ӈ[B `R*lCلèӹiuޠ/hKܢPP^( 584'k+aȠ#D,OSMךLIcvoKt
-:R>kZ'wY$Ҧ愼Oipyzc|YŗW fb2E V;؟p %0E ֎2
-@Au ?yW@R 65녃L:9ZvԄ+I۴e$)] 52(CXc?@ /T;&SU>A^ #gRE>m"Pّ&t
-}`*DNt0ZŋplEbh Ư1*=2|efAx01we1^=°#+r3&v'1fRvZx?=_{xX8+ ,&ϻϰ>CP8D
-Ms@cFM)sM]i7-a664\2}Q%705*}7OLnD(X@ Axs$xbЃӁagL1!@v} 5(<$u*njjwI=iAVqbjEɔa3h?v3&k@ g퐃H: W<QSaLv<n(wc{%`, ;V@@&%Y$<<lH: z`ɔ\
-ze攍mD1 ʩ|W'*/
- D$-K%\4I<坏M8n`>W9fӸV.E:AO%%#goE!b 9(<FYPt%Ђ2Qm|@+Q~Xci
-ؙ]v„+:7εX<l`Hh:qٳ.C0YiHLdg'V,>I3s"=#Z^Qz߼l: V; ԦXu4LCӰHk 1Qq,/ش*Pk i/ &-#>Ƅo
-~K80 3Y\X]m^-!C-L3:ehd Oe;2\x34DT\ h\^.7K>[Ҧ3.2W#Q]NU[M_42HmG ,[W'X肨 AuU ]yk9cˊ5w˺k'Wj<d܄3&oV?۸?bDO%C#fi[ͫw!='=Z݉ZU8K Qv"'vaIiHHõ" WCJx [fi|W Q)
-Z0&+OEM ՒdLBJEz64n%giH:hON e5V%@pyCH,D;$Nt^ IN ʫB?0 &w敝2ҝd_c7_<1?_n_?~חo9 ?!,wr=ůNonxͣw˷o~~@~i}N_>ѻgW_~9۷7OwOOoOO>_/^\?^8ݍ6NIU-R&&C".-'l_!y'i Ўu4a}ϡ!ÖӒŴ.B_mfJ}0h@ա ٦:52leaMв=owM2ÖΝ.zEa+=a̋ GWPZoշΙ$h2ֽRWWОѯ.3dujY2ۺm l-3djV4.z0jۢ\f.KټX,Y<vyrcXwY[ 4oW5YHȭ8 ]3͓+MKӺp }9+a^[/N[GFUmYOSo,`^ͦ-1A{.`WP,"xIFS)j,tE~)WOe!ϏZY[,Mcb$Hbgyj44s78RE[k5bԊl$a5K"%r98 )s+=y\ϵ:R_*vS^׷#<YZ(<G<9*/)骵ʔ}PmعzG5?v
-aJ^>&J=Z:y ip֔U-8Wԩ_8F>ܡ5
-|?=ATrɟ* a+D'̈L5]zWixOl<p [3c/1"boSIFq)o'L6[Fk zlbEkL^j@c,oh'_ہ|5YEgf[gwMvU
-*@)%PՑg%9}FZjL3]^R4Z#|bP]XciRÍ@pxsD2uV݅\ҏUCn;-djXGT ^JΛ֪߭~nޤ+}-lwvKoWVMߴvnF;f-Z؊||OĎzyB@tSӅ酣X<x٭!_!k؝r>{ yh"8>[XMHI}Blƴ}d5Ȓ:c
-32R@뭨Tf)$S(
-5p@]D9U
-V+s\cNݯܳ
-=aǧ].])V,N>!T&)Hj]am'>\y[`1{QV篋jɴ,%Z`GQr ]].{ f+AqDѦ,oYyY@
-]
-8 Tvd;FlrvŻ#1UG3-K3}! 9^oˣVZFt%aF<#10ك$r5c7_b!X.d8I1\RM>! {ukCޞ{a^p`ud^X34 3c42pp{݊|l|OAC
-&IAi%1 7K/גRm}Ũ~벖)Ǎ(Yax
-i<ekb֬7b1d3 Ͻ^\KrXk/\̻֮3G'9geau2!~.eyXQ"
-!E*k5$a+fb`RD2
-a{o^rǚ^,dW hhk> gBfD [<]K:4Ber
-%yAȨ|{lR^GnLMדQ|*5Lѧza7@ 2:\2'sЭuIEù[50իiDqT03ꮍIs!|\<0|Jyi x;{7t
-~Ր6۬7DJiY"s$dgqrC) UW2 㝵S%G'yqZ5T]D"cҼOzӁ[T2Qk,=ō[xsaCQtxj{Vaȗ땄|u/8/b{~N߄<AV]9  hM꺬Zu]>ֺة!{_`xب%aT Ga= ul|L0J MmȎ5RtOWI0hdhGG=Mi-eT:A8g8@FF`
-= NB㙻-S]2;e-060ӎ`7
-B$.v,=8*ز@.U0rUbש㮣ǎmsdqbnnlxash9ׅ_m؍g~vFYki ~k-́Q
- 2-IMt
-:(ұ9쫀%Jt?KC\"V*_ N>3(Qt;FPjO Lve:7(fr6E4ov)À8D +3'UױzH6"\U(\ I@ (<.k&Q9Gn<9X
-ؕG#R1,yp|-eI6*6A0 jD+I#3N!H%lж+Rԫ3y&R~,-gh{i2a9{۰Ä^U6
-.{w
-d- :_sM<}F=O#K
-
-陭"~
-ZWqCcİ1xsgg Y<ݒ| J9F5>$5n"Y[^_|we:gYnWY:lC/w{1vƓHLuc,r[E >h|.3]ޫشa4ņMNY5\0 ~jrک; 6㇞Dii_DrSuM X%u+ mcjLxO2ih ׅp%s/ 8/)Dze"U0 cjrYj9W.] ̅EεBx0S/*.JpaSnW"~Df\9VrNK]E_yN1ׯb=mC2.Nh+Lz]7ja.ʛ]F]AaLiϤ9(Ӯ G׽# cA_leiU;W9eSk rn{mo5ٽ$6w_z^<Otce#wlĦ&ij:K|VgK9iAOK)K8m5OM8~z bj!㫫pbpqo塬WP tQw Q9sq}sjAi5Ѩ4;c fy}!iGاM/<y`ԡ>E AյӋ MΟSp\2w7YP)C|t"$DQ$ﻤ=:9\!5Fa؛/ՂDͤ`1HM$vWJ$>`;BϑptnVү@z.N!HA@=<
-Q FhFRX9,)_*a齧
-oo .sTGؕa0Q[Ea1Ѷԇ&{mVyLՂgI SP*&YDK_,,dϢ7_l@ @?4g_CEi 9,dS:(,v{/ ~!)~F
-o\mO>ZR"|[7
-'w<[^
--Z-Bmd@Ⱥ\*}u&@O0%^2dbT
-%哩*aqu*wn TKxS,3H
-sUrv^U5h]HIۈs"R2ۦyA3S"B^A)} ijg =0£yw[ڽjZd+f&՚}Moj (yYs6X|"35@ڏ^ހX-e4uQBUfMһ.1t-A<1ۈbUVMN6Pp35$Hכ)b%W8 atVX^YR ݐ}s&Lk*@"rrR =}'K]7$8)yN 0t<QC/1g%O{7cK0)zvfދ BH)z܁ƦA$w]1τ_vT҅~XKrO,|h;@Y.jqrdCp3d$C5<W/-gmO3b4uҥb$%2Һ5*gju {naO6w7ȃZ$c% _bgHr\'qobk<3#
-4I2LZKZgs)CSo0GUgϋO׶Klo`i]?|)c>7@\ z-UKvՊ򣖀<t*7tE-iIˮRa^3C<*
-eЗh&*GfNkk(eHܤ'v5w> e
-ԨmFbe%ݜ7^l)t[8R3_r]-[TnV1)؅)N3PtlQ%*i%
-p˘_o()KT*vWWm&d<-&v̑w>7آrCKTޙo-*VT b=fQ-8mbbk^O?} +߶
-bH9;q# ;>>lZY/]Ƿ/#a^)Rm&}BWHdžfQYH›:{4Jq?z/tH4f#x} s7oVTcZZEGHa'm W O}4oZ6pn"$sD+2&dkV]k[-'m!(xiT"a^4=G62ꨅ}Jz}^,2] B)c\LJ~_D2k>/F*R"偟:8ѡ c96:0VG%k
- $:`5ma;p$,hKBJ[Hx'U9 >-}̰T$6[6pE^ov#3%3daGpA>h)&>n6C2/C=Si jq!Ŀh)mqoz7!/X Pȹ̽WMZFb
- =аeВ39kD~yG9n AqzsO^5,[:RHM"q煝J<~oR v7- MKn+"i>Gd*hZMK gu4r7-|l2I64?r=|ƕ)h9G
-lH1&/*R!Hyq Tǐ8enVnjk`]-$;֔hQ1C+<o>Ih"@OH#:&7RNABTA. CƤRhi'
-HmQ)m6 _xE`R${
-atPaNAX
-ęɥDvtp1\KI=/ 3 n %^qdq`-Ъ兹{b,: #RL^#r"bLLTu@.QjM -]񎟎)@ S8Mr VbT^mfx6v ~.v>JA,mްǫ^R׳ Lj`d.;Z߸S󍥍Oq)/r
-1zv)xI7
-y 0kTԫ%+> p$֎9*ec%"
-!W$\῾Rw%!Jaa@||Lf
-aIQRP5~X y 5XٗۂPX3]aϛ(aĦiGTNDiȱNMN ³b7Lݲ0"XIđ>f~&n /^T+iF7p=i );oQ@7nӬy} U2Ct*"eGC &)S\'@@68P 1p^*.
-獨3Z]r4Zi(=O[M`8ФQ\)<k9kPc5iq
-Jss;
-
-:jI`H#[?њ؜u)ƽhY BYcD^Zp?>,Y1qDLy:`B]ZSm=Ūʍ6~Ӻ^t 'Xo:zJr/&KTi@ -٣&=_<^5Q}L5JُX
-~}S[I0@!Wd#q* ֽ1r
-w DY-$
-!ߧ#4P
-%* <94Hl3%ǝy?}Uԗ 7/f`]
-1C{18p/UۙOb[Z p6
-%7:=}c\ǚ}q q {XIV΅I'L@A<MlV)29aU,N)@SѬ4/4/`I^VD
- ̜!%qKf
-%7rv6 KnC!`'AQHA7E_y3]R-P^PQLbTH|lS]ɠΗ,I*EX _{OJfHJmf&)
-3o{;X"eHG9nv=հiŤj
-FfȷޭT *\s2a!󓬷Tѯ GV126ڄZT~d+p(fXzkZ)fg k@B׳MucԊTF<Ht
-HlW] ŀm(RlSEӇٷ`ao
-O 
- BI"%w90{]sRMzhaݢRh#R^,>jMj>adE(B">u c羻2XDQvM& d]Yd4"D/;WD2"n`Enɜ Q!uF8H[#7r̳V&'{ӂ:vY1QQk WjGv$;e]1I#WY2rh{@kPSU*uz `RG$S!'5E\Ft(UV)dX
-L<0\duįR*DJDNl55yWGn<٩h׺ӂߑ l/1z>آzˣ_71xUbE"ܸ!g5+)mЄP;"E|5co#悔Ao,{cY
-'j;[{Le:scV[D}9|p ycGRH' MlprW }tu WPXAGWe4Y;׮vZ)$`g
-t 8YVz-Th6޷rwg0iC}a90mY⊠f7UC`@ϝZ/P=olS1V/ȱ-L2̕6_!rw/kvN\$&,*zG{ۜ|)F=#$B0DI.}o+j=&l"h!GĮM )yM, [݀>p[j^K,zxsȒ}AzBOŶhkC_yx"^*:wfX} ŧ}T`g׹8
-y-+EׅP+2 m=;EgB"j
-tW?-珗=>{zO|~ׇ<?/Ϗ!82_n`
-0.97253 0.37646 0.12157 rg 0 i /RelativeColorimetric ri 978.41016 834.55371 m 978.41016 829.86621 974.61035 826.06543 969.92188 826.06543 c 809.41016 826.06543 l 804.72266 826.06543 800.92188 829.86621 800.92188 834.55371 c 800.92188 854.71143 l 800.92188 859.39941 804.72266 863.2002 809.41016 863.2002 c 969.92188 863.2002 l 974.61035 863.2002 978.41016 859.39941 978.41016 854.71143 c 978.41016 834.55371 l h f 0 0 0 rg 818.89453 840.65967 m 818.89453 839.81982 818.93457 839 819.03418 838.33984 c 817.4541 838.33984 l 817.29492 839.56006 l 817.23438 839.56006 l 816.71484 838.7998 815.6543 838.11963 814.27441 838.11963 c 812.31445 838.11963 811.31445 839.5 811.31445 840.8999 c 811.31445 843.23975 813.39453 844.52002 817.13477 844.5 c 817.13477 844.69971 l 817.13477 845.5 816.91406 846.95996 814.93457 846.93994 c 814.01465 846.93994 813.07422 846.67969 812.39453 846.21973 c 811.99414 847.3999 l 812.79492 847.8999 813.97461 848.23975 815.19434 848.23975 c 818.1748 848.23975 818.89453 846.21973 818.89453 844.27979 c 818.89453 840.65967 l 817.1748 843.27979 m 815.25488 843.31982 813.07422 842.97998 813.07422 841.09961 c 813.07422 839.93994 813.83496 839.41992 814.71484 839.41992 c 815.99414 839.41992 816.81445 840.21973 817.09473 841.04004 c 817.1543 841.21973 817.1748 841.41992 817.1748 841.59961 c 817.1748 843.27979 l h f 828.61426 838.67969 m 828.1543 838.45996 827.13477 838.11963 825.83398 838.11963 c 822.91406 838.11963 821.01465 840.09961 821.01465 843.08008 c 821.01465 846.06006 823.05469 848.23975 826.21484 848.23975 c 827.25391 848.23975 828.1748 847.97998 828.6543 847.71973 c 828.25391 846.37988 l 827.83398 846.59961 827.1748 846.83984 826.21484 846.83984 c 823.99414 846.83984 822.79395 845.17969 822.79395 843.15967 c 822.79395 840.91992 824.23438 839.54004 826.1543 839.54004 c 827.1543 839.54004 827.81445 839.77979 828.31445 840 c 828.61426 838.67969 l h f 831.55762 842.87988 m 831.59668 840.5 833.09668 839.52002 834.85742 839.52002 c 836.11719 839.52002 836.89746 839.73975 837.53711 840 c 837.85742 838.75977 l 837.2373 838.47998 836.15723 838.13965 834.61719 838.13965 c 831.65723 838.13965 829.85742 840.11963 829.85742 843.02002 c 829.85742 845.95996 831.59668 848.25977 834.41699 848.25977 c 837.57715 848.25977 838.39746 845.47998 838.39746 843.69971 c 838.39746 843.33984 838.37695 843.06006 838.33691 842.85986 c 831.55762 842.87988 l 836.69727 844.13965 m 836.7168 845.23975 836.2373 847 834.27734 847 c 832.47754 847 831.7168 845.35986 831.57715 844.13965 c 836.69727 844.13965 l h f 840.59668 845 m 840.59668 846.13965 840.57715 847.11963 840.5166 848.02002 c 842.05664 848.02002 l 842.13672 846.11963 l 842.19727 846.11963 l 842.63672 847.41992 843.7168 848.23975 844.89746 848.23975 c 845.07715 848.23975 845.2168 848.21973 845.37695 848.17969 c 845.37695 846.54004 l 845.17676 846.56006 844.99707 846.58008 844.75684 846.58008 c 843.5166 846.58008 842.63672 845.63965 842.39746 844.33984 c 842.35742 844.08008 842.33691 843.7998 842.33691 843.5 c 842.33691 838.33984 l 840.57715 838.33984 l 840.59668 845 l h f 853.89941 838.67969 m 853.43945 838.45996 852.41992 838.11963 851.12012 838.11963 c 848.2002 838.11963 846.2998 840.09961 846.2998 843.08008 c 846.2998 846.06006 848.33984 848.23975 851.5 848.23975 c 852.54004 848.23975 853.45996 847.97998 853.93945 847.71973 c 853.54004 846.37988 l 853.12012 846.59961 852.45996 846.83984 851.5 846.83984 c 849.2793 846.83984 848.08008 845.17969 848.08008 843.15967 c 848.08008 840.91992 849.51953 839.54004 851.43945 839.54004 c 852.43945 839.54004 853.09961 839.77979 853.59961 840 c 853.89941 838.67969 l h f 862.79883 840.65967 m 862.79883 839.81982 862.83887 839 862.93945 838.33984 c 861.35938 838.33984 l 861.19922 839.56006 l 861.13965 839.56006 l 860.61914 838.7998 859.55957 838.11963 858.17969 838.11963 c 856.21875 838.11963 855.21875 839.5 855.21875 840.8999 c 855.21875 843.23975 857.29883 844.52002 861.03906 844.5 c 861.03906 844.69971 l 861.03906 845.5 860.81934 846.95996 858.83887 846.93994 c 857.91895 846.93994 856.97949 846.67969 856.29883 846.21973 c 855.89941 847.3999 l 856.69922 847.8999 857.87891 848.23975 859.09961 848.23975 c 862.0791 848.23975 862.79883 846.21973 862.79883 844.27979 c 862.79883 840.65967 l 861.0791 843.27979 m 859.15918 843.31982 856.97949 842.97998 856.97949 841.09961 c 856.97949 839.93994 857.73926 839.41992 858.61914 839.41992 c 859.89941 839.41992 860.71875 840.21973 860.99902 841.04004 c 861.05957 841.21973 861.0791 841.41992 861.0791 841.59961 c 861.0791 843.27979 l h f 878.21875 852.54004 m 878.21875 840.83984 l 878.21875 839.97998 878.23926 839 878.29883 838.33984 c 876.71875 838.33984 l 876.63867 840.02002 l 876.59863 840.02002 l 876.05859 838.93994 874.89844 838.11963 873.31934 838.11963 c 870.97852 838.11963 869.15918 840.09961 869.15918 843.04004 c 869.13867 846.27979 871.15918 848.23975 873.49902 848.23975 c 874.99902 848.23975 875.99902 847.54004 876.41895 846.77979 c 876.45898 846.77979 l 876.45898 852.54004 l 878.21875 852.54004 l 876.45898 844.08008 m 876.45898 844.31982 876.43848 844.59961 876.37891 844.83984 c 876.11914 845.93994 875.15918 846.85986 873.83887 846.85986 c 872.01855 846.85986 870.93848 845.25977 870.93848 843.13965 c 870.93848 841.15967 871.91895 839.54004 873.79883 839.54004 c 874.97852 839.54004 876.05859 840.33984 876.37891 841.63965 c 876.43848 841.87988 876.45898 842.11963 876.45898 842.3999 c 876.45898 844.08008 l h f 882.13867 842.87988 m 882.17871 840.5 883.67871 839.52002 885.43848 839.52002 c 886.69922 839.52002 887.47852 839.73975 888.11914 840 c 888.43848 838.75977 l 887.81836 838.47998 886.73926 838.13965 885.19922 838.13965 c 882.23926 838.13965 880.43848 840.11963 880.43848 843.02002 c 880.43848 845.95996 882.17871 848.25977 884.99902 848.25977 c 888.15918 848.25977 888.97852 845.47998 888.97852 843.69971 c 888.97852 843.33984 888.95898 843.06006 888.91895 842.85986 c 882.13867 842.87988 l 887.2793 844.13965 m 887.29883 845.23975 886.81836 847 884.8584 847 c 883.05859 847 882.29883 845.35986 882.15918 844.13965 c 887.2793 844.13965 l h f 891.1582 852.54004 m 892.91895 852.54004 l 892.91895 838.33984 l 891.1582 838.33984 l 891.1582 852.54004 l h f 906.67871 839.81982 m 906.63867 839.81982 l 906.11816 838.87988 905.03809 838.11963 903.47852 838.11963 c 901.21875 838.11963 899.37793 840.06006 899.37793 843.02002 c 899.37793 846.63965 901.71875 848.23975 903.75879 848.23975 c 905.25879 848.23975 906.25879 847.5 906.73828 846.56006 c 906.77832 846.56006 l 906.83789 848.02002 l 908.51855 848.02002 l 908.45801 847.21973 908.43848 846.37988 908.43848 845.35986 c 908.43848 834.37988 l 906.67871 834.37988 l 906.67871 839.81982 l 906.67871 844.09961 m 906.67871 844.35986 906.6582 844.61963 906.59863 844.83984 c 906.31836 845.91992 905.39844 846.83984 904.07813 846.83984 c 902.25879 846.83984 901.1582 845.2998 901.1582 843.11963 c 901.1582 841.17969 902.07813 839.52002 904.01855 839.52002 c 905.1582 839.52002 906.13867 840.21973 906.53809 841.43994 c 906.61816 841.67969 906.67871 842.02002 906.67871 842.27979 c 906.67871 844.09961 l h f 919.43848 840.97998 m 919.43848 839.97998 919.45801 839.09961 919.51855 838.33984 c 917.95801 838.33984 l 917.8584 839.91992 l 917.81836 839.91992 l 917.37793 839.13965 916.33789 838.11963 914.61816 838.11963 c 913.09766 838.11963 911.27832 838.97998 911.27832 842.35986 c 911.27832 848.02002 l 913.03809 848.02002 l 913.03809 842.67969 l 913.03809 840.83984 913.61816 839.58008 915.19824 839.58008 c 916.37793 839.58008 917.19824 840.3999 917.51855 841.19971 c 917.61816 841.43994 917.67773 841.75977 917.67773 842.09961 c 917.67773 848.02002 l 919.43848 848.02002 l 919.43848 840.97998 l h f 923.19824 849.7998 m 922.53809 849.7998 922.09766 850.31982 922.09766 850.93994 c 922.09766 851.56006 922.55762 852.06006 923.23828 852.06006 c 923.91797 852.06006 924.3584 851.56006 924.3584 850.93994 c 924.3584 850.31982 923.91797 849.7998 923.21777 849.7998 c 923.19824 849.7998 l 922.3584 838.33984 m 922.3584 848.02002 l 924.11816 848.02002 l 924.11816 838.33984 l 922.3584 838.33984 l h f 927.03809 845.3999 m 927.03809 846.41992 927.01758 847.21973 926.95801 848.02002 c 928.51758 848.02002 l 928.61816 846.43994 l 928.6582 846.43994 l 929.1377 847.33984 930.25781 848.23975 931.85742 848.23975 c 933.19824 848.23975 935.27832 847.43994 935.27832 844.11963 c 935.27832 838.33984 l 933.51758 838.33984 l 933.51758 843.91992 l 933.51758 845.47998 932.9375 846.7998 931.27832 846.7998 c 930.1377 846.7998 929.23828 845.97998 928.91797 845 c 928.83789 844.77979 928.79785 844.45996 928.79785 844.17969 c 928.79785 838.33984 l 927.03809 838.33984 l 927.03809 845.3999 l h f 940.17969 850.33984 m 940.17969 848.02002 l 942.69922 848.02002 l 942.69922 846.67969 l 940.17969 846.67969 l 940.17969 841.45996 l 940.17969 840.25977 940.51953 839.58008 941.5 839.58008 c 941.97949 839.58008 942.25977 839.61963 942.51953 839.69971 c 942.59961 838.35986 l 942.25977 838.23975 941.71973 838.11963 941.04004 838.11963 c 940.21973 838.11963 939.55957 838.3999 939.13965 838.85986 c 938.65918 839.3999 938.45996 840.25977 938.45996 841.3999 c 938.45996 846.67969 l 936.95996 846.67969 l 936.95996 848.02002 l 938.45996 848.02002 l 938.45996 849.7998 l 940.17969 850.33984 l h f 945.5625 842.87988 m 945.60254 840.5 947.10254 839.52002 948.8623 839.52002 c 950.12207 839.52002 950.90234 839.73975 951.54199 840 c 951.8623 838.75977 l 951.24219 838.47998 950.16211 838.13965 948.62207 838.13965 c 945.66211 838.13965 943.8623 840.11963 943.8623 843.02002 c 943.8623 845.95996 945.60254 848.25977 948.42188 848.25977 c 951.58203 848.25977 952.40234 845.47998 952.40234 843.69971 c 952.40234 843.33984 952.38184 843.06006 952.3418 842.85986 c 945.5625 842.87988 l 950.70215 844.13965 m 950.72266 845.23975 950.24219 847 948.28223 847 c 946.48242 847 945.72266 845.35986 945.58203 844.13965 c 950.70215 844.13965 l h f 956.70215 850.33984 m 956.70215 848.02002 l 959.22168 848.02002 l 959.22168 846.67969 l 956.70215 846.67969 l 956.70215 841.45996 l 956.70215 840.25977 957.04199 839.58008 958.02246 839.58008 c 958.50195 839.58008 958.78223 839.61963 959.04199 839.69971 c 959.12207 838.35986 l 958.78223 838.23975 958.24219 838.11963 957.5625 838.11963 c 956.74219 838.11963 956.08203 838.3999 955.66211 838.85986 c 955.18164 839.3999 954.98242 840.25977 954.98242 841.3999 c 954.98242 846.67969 l 953.48242 846.67969 l 953.48242 848.02002 l 954.98242 848.02002 l 954.98242 849.7998 l 956.70215 850.33984 l h f 962.04199 849.7998 m 961.38184 849.7998 960.94238 850.31982 960.94238 850.93994 c 960.94238 851.56006 961.40234 852.06006 962.08203 852.06006 c 962.76172 852.06006 963.20215 851.56006 963.20215 850.93994 c 963.20215 850.31982 962.76172 849.7998 962.06152 849.7998 c 962.04199 849.7998 l 961.20215 838.33984 m 961.20215 848.02002 l 962.96191 848.02002 l 962.96191 838.33984 l 961.20215 838.33984 l h f 0.97253 0.37646 0.12157 rg 1086.41016 834.55371 m 1086.41016 829.86621 1082.61035 826.06543 1077.92188 826.06543 c 999.69531 826.06543 l 995.00684 826.06543 991.20605 829.86621 991.20605 834.55371 c 991.20605 854.71143 l 991.20605 859.39941 995.00684 863.2002 999.69531 863.2002 c 1077.92188 863.2002 l 1082.61035 863.2002 1086.41016 859.39941 1086.41016 854.71143 c 1086.41016 834.55371 l h f 0 0 0 rg 1005.61816 840.65967 m 1005.61816 839.81982 1005.65723 839 1005.75781 838.33984 c 1004.17773 838.33984 l 1004.01758 839.56006 l 1003.95801 839.56006 l 1003.4375 838.7998 1002.37793 838.11963 1000.99805 838.11963 c 999.03809 838.11963 998.03809 839.5 998.03809 840.8999 c 998.03809 843.23975 1000.11816 844.52002 1003.85742 844.5 c 1003.85742 844.69971 l 1003.85742 845.5 1003.6377 846.95996 1001.65723 846.93994 c 1000.7373 846.93994 999.79785 846.67969 999.11816 846.21973 c 998.71777 847.3999 l 999.51758 847.8999 1000.69727 848.23975 1001.91797 848.23975 c 1004.89746 848.23975 1005.61816 846.21973 1005.61816 844.27979 c 1005.61816 840.65967 l 1003.89746 843.27979 m 1001.97754 843.31982 999.79785 842.97998 999.79785 841.09961 c 999.79785 839.93994 1000.55762 839.41992 1001.4375 839.41992 c 1002.71777 839.41992 1003.53809 840.21973 1003.81738 841.04004 c 1003.87793 841.21973 1003.89746 841.41992 1003.89746 841.59961 c 1003.89746 843.27979 l h f 1015.33789 838.67969 m 1014.87793 838.45996 1013.85742 838.11963 1012.55762 838.11963 c 1009.6377 838.11963 1007.7373 840.09961 1007.7373 843.08008 c 1007.7373 846.06006 1009.77734 848.23975 1012.9375 848.23975 c 1013.97754 848.23975 1014.89746 847.97998 1015.37793 847.71973 c 1014.97754 846.37988 l 1014.55762 846.59961 1013.89746 846.83984 1012.9375 846.83984 c 1010.71777 846.83984 1009.51758 845.17969 1009.51758 843.15967 c 1009.51758 840.91992 1010.95801 839.54004 1012.87793 839.54004 c 1013.87793 839.54004 1014.53711 839.77979 1015.03711 840 c 1015.33789 838.67969 l h f 1018.28027 842.87988 m 1018.32031 840.5 1019.82031 839.52002 1021.58008 839.52002 c 1022.84082 839.52002 1023.62012 839.73975 1024.26074 840 c 1024.58008 838.75977 l 1023.95996 838.47998 1022.87988 838.13965 1021.34082 838.13965 c 1018.38086 838.13965 1016.58008 840.11963 1016.58008 843.02002 c 1016.58008 845.95996 1018.32031 848.25977 1021.14063 848.25977 c 1024.30078 848.25977 1025.12012 845.47998 1025.12012 843.69971 c 1025.12012 843.33984 1025.10059 843.06006 1025.06055 842.85986 c 1018.28027 842.87988 l 1023.41992 844.13965 m 1023.44043 845.23975 1022.95996 847 1021 847 c 1019.2002 847 1018.44043 845.35986 1018.30078 844.13965 c 1023.41992 844.13965 l h f 1027.32031 845 m 1027.32031 846.13965 1027.2998 847.11963 1027.24023 848.02002 c 1028.78027 848.02002 l 1028.86035 846.11963 l 1028.91992 846.11963 l 1029.36035 847.41992 1030.44043 848.23975 1031.62012 848.23975 c 1031.7998 848.23975 1031.94043 848.21973 1032.10059 848.17969 c 1032.10059 846.54004 l 1031.90039 846.56006 1031.71973 846.58008 1031.48047 846.58008 c 1030.24023 846.58008 1029.36035 845.63965 1029.12012 844.33984 c 1029.08008 844.08008 1029.06055 843.7998 1029.06055 843.5 c 1029.06055 838.33984 l 1027.2998 838.33984 l 1027.32031 845 l h f 1040.62305 838.67969 m 1040.16309 838.45996 1039.14258 838.11963 1037.84277 838.11963 c 1034.92285 838.11963 1033.02246 840.09961 1033.02246 843.08008 c 1033.02246 846.06006 1035.0625 848.23975 1038.22266 848.23975 c 1039.2627 848.23975 1040.18262 847.97998 1040.66309 847.71973 c 1040.2627 846.37988 l 1039.84277 846.59961 1039.18262 846.83984 1038.22266 846.83984 c 1036.00293 846.83984 1034.80273 845.17969 1034.80273 843.15967 c 1034.80273 840.91992 1036.24316 839.54004 1038.16309 839.54004 c 1039.16309 839.54004 1039.82324 839.77979 1040.32324 840 c 1040.62305 838.67969 l h f 1049.52246 840.65967 m 1049.52246 839.81982 1049.5625 839 1049.66211 838.33984 c 1048.08203 838.33984 l 1047.92285 839.56006 l 1047.8623 839.56006 l 1047.34277 838.7998 1046.28223 838.11963 1044.90234 838.11963 c 1042.94238 838.11963 1041.94238 839.5 1041.94238 840.8999 c 1041.94238 843.23975 1044.02246 844.52002 1047.7627 844.5 c 1047.7627 844.69971 l 1047.7627 845.5 1047.54199 846.95996 1045.5625 846.93994 c 1044.64258 846.93994 1043.70215 846.67969 1043.02246 846.21973 c 1042.62207 847.3999 l 1043.42285 847.8999 1044.60254 848.23975 1045.82227 848.23975 c 1048.80273 848.23975 1049.52246 846.21973 1049.52246 844.27979 c 1049.52246 840.65967 l 1047.80273 843.27979 m 1045.88281 843.31982 1043.70215 842.97998 1043.70215 841.09961 c 1043.70215 839.93994 1044.46289 839.41992 1045.34277 839.41992 c 1046.62207 839.41992 1047.44238 840.21973 1047.72266 841.04004 c 1047.78223 841.21973 1047.80273 841.41992 1047.80273 841.59961 c 1047.80273 843.27979 l h f 1064.94238 852.54004 m 1064.94238 840.83984 l 1064.94238 839.97998 1064.96191 839 1065.02246 838.33984 c 1063.44238 838.33984 l 1063.3623 840.02002 l 1063.32227 840.02002 l 1062.78223 838.93994 1061.62207 838.11963 1060.04199 838.11963 c 1057.70215 838.11963 1055.88184 840.09961 1055.88184 843.04004 c 1055.8623 846.27979 1057.88184 848.23975 1060.22168 848.23975 c 1061.72168 848.23975 1062.72168 847.54004 1063.14258 846.77979 c 1063.18164 846.77979 l 1063.18164 852.54004 l 1064.94238 852.54004 l 1063.18164 844.08008 m 1063.18164 844.31982 1063.16211 844.59961 1063.10254 844.83984 c 1062.8418 845.93994 1061.88184 846.85986 1060.5625 846.85986 c 1058.74219 846.85986 1057.66211 845.25977 1057.66211 843.13965 c 1057.66211 841.15967 1058.64258 839.54004 1060.52246 839.54004 c 1061.70215 839.54004 1062.78223 840.33984 1063.10254 841.63965 c 1063.16211 841.87988 1063.18164 842.11963 1063.18164 842.3999 c 1063.18164 844.08008 l h f 1068.8623 842.87988 m 1068.90234 840.5 1070.40234 839.52002 1072.16211 839.52002 c 1073.42188 839.52002 1074.20215 839.73975 1074.8418 840 c 1075.16211 838.75977 l 1074.54199 838.47998 1073.46191 838.13965 1071.92188 838.13965 c 1068.96191 838.13965 1067.16211 840.11963 1067.16211 843.02002 c 1067.16211 845.95996 1068.90234 848.25977 1071.72168 848.25977 c 1074.88184 848.25977 1075.70215 845.47998 1075.70215 843.69971 c 1075.70215 843.33984 1075.68164 843.06006 1075.6416 842.85986 c 1068.8623 842.87988 l 1074.00195 844.13965 m 1074.02246 845.23975 1073.54199 847 1071.58203 847 c 1069.78223 847 1069.02246 845.35986 1068.88184 844.13965 c 1074.00195 844.13965 l h f 0.97253 0.37646 0.12157 rg 1168.41016 834.55371 m 1168.41016 829.86621 1164.61035 826.06543 1159.92188 826.06543 c 1105.41016 826.06543 l 1100.72266 826.06543 1096.92188 829.86621 1096.92188 834.55371 c 1096.92188 854.71143 l 1096.92188 859.39941 1100.72266 863.2002 1105.41016 863.2002 c 1159.92188 863.2002 l 1164.61035 863.2002 1168.41016 859.39941 1168.41016 854.71143 c 1168.41016 834.55371 l h f 0 0 0 rg 1115.92188 840.65967 m 1115.92188 839.81982 1115.96191 839 1116.0625 838.33984 c 1114.48242 838.33984 l 1114.32227 839.56006 l 1114.26172 839.56006 l 1113.74219 838.7998 1112.68262 838.11963 1111.30176 838.11963 c 1109.3418 838.11963 1108.3418 839.5 1108.3418 840.8999 c 1108.3418 843.23975 1110.42188 844.52002 1114.16211 844.5 c 1114.16211 844.69971 l 1114.16211 845.5 1113.94238 846.95996 1111.96191 846.93994 c 1111.04199 846.93994 1110.10254 846.67969 1109.42188 846.21973 c 1109.02246 847.3999 l 1109.82227 847.8999 1111.00195 848.23975 1112.22168 848.23975 c 1115.20215 848.23975 1115.92188 846.21973 1115.92188 844.27979 c 1115.92188 840.65967 l 1114.20215 843.27979 m 1112.28223 843.31982 1110.10254 842.97998 1110.10254 841.09961 c 1110.10254 839.93994 1110.8623 839.41992 1111.74219 839.41992 c 1113.02246 839.41992 1113.8418 840.21973 1114.12207 841.04004 c 1114.18262 841.21973 1114.20215 841.41992 1114.20215 841.59961 c 1114.20215 843.27979 l h f 1119.16211 848.02002 m 1121.2627 842.2998 l 1121.50195 841.65967 1121.74219 840.8999 1121.90234 840.31982 c 1121.94238 840.31982 l 1122.12207 840.8999 1122.32227 841.63965 1122.5625 842.33984 c 1124.48242 848.02002 l 1126.34277 848.02002 l 1123.70215 841.11963 l 1122.44238 837.7998 1121.58203 836.09961 1120.38184 835.04004 c 1119.50195 834.2998 1118.66211 834 1118.22266 833.91992 c 1117.78223 835.3999 l 1118.22266 835.52002 1118.80273 835.7998 1119.32227 836.25977 c 1119.80273 836.63965 1120.38184 837.31982 1120.80273 838.21973 c 1120.88184 838.3999 1120.94238 838.52002 1120.94238 838.63965 c 1120.94238 838.73975 1120.90234 838.87988 1120.80273 839.08008 c 1117.24219 848.02002 l 1119.16211 848.02002 l h f 1136.04199 840.97998 m 1136.04199 839.97998 1136.0625 839.09961 1136.12207 838.33984 c 1134.5625 838.33984 l 1134.46191 839.91992 l 1134.42188 839.91992 l 1133.98242 839.13965 1132.94238 838.11963 1131.22266 838.11963 c 1129.70215 838.11963 1127.88184 838.97998 1127.88184 842.35986 c 1127.88184 848.02002 l 1129.64258 848.02002 l 1129.64258 842.67969 l 1129.64258 840.83984 1130.22266 839.58008 1131.80176 839.58008 c 1132.98242 839.58008 1133.80176 840.3999 1134.12207 841.19971 c 1134.22266 841.43994 1134.28223 841.75977 1134.28223 842.09961 c 1134.28223 848.02002 l 1136.04199 848.02002 l 1136.04199 840.97998 l h f 1147.32227 852.54004 m 1147.32227 840.83984 l 1147.32227 839.97998 1147.3418 839 1147.40234 838.33984 c 1145.82227 838.33984 l 1145.74219 840.02002 l 1145.70215 840.02002 l 1145.16211 838.93994 1144.00195 838.11963 1142.42188 838.11963 c 1140.08203 838.11963 1138.26172 840.09961 1138.26172 843.04004 c 1138.24219 846.27979 1140.26172 848.23975 1142.60254 848.23975 c 1144.10254 848.23975 1145.10254 847.54004 1145.52246 846.77979 c 1145.5625 846.77979 l 1145.5625 852.54004 l 1147.32227 852.54004 l 1145.5625 844.08008 m 1145.5625 844.31982 1145.54199 844.59961 1145.48242 844.83984 c 1145.22168 845.93994 1144.26172 846.85986 1142.94238 846.85986 c 1141.12207 846.85986 1140.04199 845.25977 1140.04199 843.13965 c 1140.04199 841.15967 1141.02246 839.54004 1142.90234 839.54004 c 1144.08203 839.54004 1145.16211 840.33984 1145.48242 841.63965 c 1145.54199 841.87988 1145.5625 842.11963 1145.5625 842.3999 c 1145.5625 844.08008 l h f 1157.06152 840.65967 m 1157.06152 839.81982 1157.10156 839 1157.20215 838.33984 c 1155.62207 838.33984 l 1155.46191 839.56006 l 1155.40234 839.56006 l 1154.88184 838.7998 1153.82227 838.11963 1152.44238 838.11963 c 1150.48242 838.11963 1149.48242 839.5 1149.48242 840.8999 c 1149.48242 843.23975 1151.56152 844.52002 1155.30176 844.5 c 1155.30176 844.69971 l 1155.30176 845.5 1155.08203 846.95996 1153.10156 846.93994 c 1152.18164 846.93994 1151.24219 846.67969 1150.56152 846.21973 c 1150.16211 847.3999 l 1150.96191 847.8999 1152.1416 848.23975 1153.3623 848.23975 c 1156.3418 848.23975 1157.06152 846.21973 1157.06152 844.27979 c 1157.06152 840.65967 l 1155.3418 843.27979 m 1153.42188 843.31982 1151.24219 842.97998 1151.24219 841.09961 c 1151.24219 839.93994 1152.00195 839.41992 1152.88184 839.41992 c 1154.16211 839.41992 1154.98242 840.21973 1155.26172 841.04004 c 1155.32227 841.21973 1155.3418 841.41992 1155.3418 841.59961 c 1155.3418 843.27979 l h f endstream endobj 78 1 obj /DeviceRGB endobj 79 1 obj /DeviceGray endobj 132 1 obj << /Private 133 1 R /LastModified (D:20090604203237-03'00') >> endobj 133 1 obj << /CreatorVersion 10 /ContainerVersion 9 /RoundtripVersion 10 /AIMetaData 6 1 R /AIPrivateData1 42 1 R /AIPrivateData2 43 1 R /AIPrivateData3 45 1 R /AIPrivateData4 47 1 R /AIPrivateData5 49 1 R /AIPrivateData6 51 1 R /AIPrivateData7 53 1 R /AIPrivateData8 55 1 R /AIPrivateData9 57 1 R /AIPrivateData10 59 1 R /AIPrivateData11 61 1 R /AIPrivateData12 63 1 R /AIPrivateData13 65 1 R /AIPrivateData14 67 1 R /AIPrivateData15 69 1 R /NumBlock 15 >> endobj 175 0 obj << /AIType /HiddenLayer /Contents 177 0 R /Resources << /ColorSpace << /CS0 178 0 R /CS1 179 0 R >> /XObject << /Fm0 184 0 R /Fm1 189 0 R /Fm2 194 0 R /Fm3 199 0 R /Fm4 204 0 R /Fm5 209 0 R /Fm6 214 0 R /Fm7 219 0 R /Fm8 224 0 R >> /ExtGState << /GS0 225 0 R >> >> >> endobj 176 0 obj 5333 endobj 177 0 obj << /Length 176 0 R >> stream
-0.96861 0.72548 0.54509 rg 0 i /RelativeColorimetric ri 937.56641 585.67578 m 937.56641 558.9248 915.88184 537.23975 889.13184 537.23975 c 862.38086 537.23975 840.69531 558.9248 840.69531 585.67578 c 840.69531 612.42676 862.38086 634.1123 889.13184 634.1123 c 915.88184 634.1123 937.56641 612.42676 937.56641 585.67578 c h f 1064.27344 585.67578 m 1064.27344 558.9248 1042.58789 537.23975 1015.83594 537.23975 c 989.08594 537.23975 967.39941 558.9248 967.39941 585.67578 c 967.39941 612.42676 989.08594 634.1123 1015.83594 634.1123 c 1042.58789 634.1123 1064.27344 612.42676 1064.27344 585.67578 c h f 810.8623 455.45898 m 810.8623 428.70703 789.17676 407.02246 762.42578 407.02246 c 735.6748 407.02246 713.98926 428.70703 713.98926 455.45898 c 713.98926 482.20996 735.6748 503.89551 762.42578 503.89551 c 789.17676 503.89551 810.8623 482.20996 810.8623 455.45898 c h f 1064.27344 455.45898 m 1064.27344 428.70703 1042.58789 407.02246 1015.83594 407.02246 c 989.08594 407.02246 967.39941 428.70703 967.39941 455.45898 c 967.39941 482.20996 989.08594 503.89551 1015.83594 503.89551 c 1042.58789 503.89551 1064.27344 482.20996 1064.27344 455.45898 c h f 937.56641 321.3877 m 937.56641 294.63672 915.88184 272.95313 889.13184 272.95313 c 862.38086 272.95313 840.69531 294.63672 840.69531 321.3877 c 840.69531 348.13867 862.38086 369.8252 889.13184 369.8252 c 915.88184 369.8252 937.56641 348.13867 937.56641 321.3877 c h f 810.8623 321.3877 m 810.8623 294.63672 789.17676 272.95313 762.42578 272.95313 c 735.6748 272.95313 713.98926 294.63672 713.98926 321.3877 c 713.98926 348.13867 735.6748 369.8252 762.42578 369.8252 c 789.17676 369.8252 810.8623 348.13867 810.8623 321.3877 c h f 1064.27344 321.3877 m 1064.27344 294.63672 1042.58789 272.95313 1015.83594 272.95313 c 989.08594 272.95313 967.39941 294.63672 967.39941 321.3877 c 967.39941 348.13867 989.08594 369.8252 1015.83594 369.8252 c 1042.58789 369.8252 1064.27344 348.13867 1064.27344 321.3877 c h f 810.8623 585.67578 m 810.8623 558.9248 789.17676 537.23975 762.42578 537.23975 c 735.6748 537.23975 713.98926 558.9248 713.98926 585.67578 c 713.98926 612.42676 735.6748 634.1123 762.42578 634.1123 c 789.17676 634.1123 810.8623 612.42676 810.8623 585.67578 c h f 937.56641 455.45898 m 937.56641 428.70703 915.88184 407.02246 889.13184 407.02246 c 862.38086 407.02246 840.69531 428.70703 840.69531 455.45898 c 840.69531 482.20996 862.38086 503.89551 889.13184 503.89551 c 915.88184 503.89551 937.56641 482.20996 937.56641 455.45898 c h f q 810.8623 321.3877 m 810.8623 294.63672 789.17676 272.95313 762.42578 272.95313 c 735.6748 272.95313 713.98926 294.63672 713.98926 321.3877 c 713.98926 348.13867 735.6748 369.8252 762.42578 369.8252 c 789.17676 369.8252 810.8623 348.13867 810.8623 321.3877 c h W n q /GS0 gs /Fm0 Do Q Q /clipEnd MP q 810.8623 585.67578 m 810.8623 558.9248 789.17676 537.23975 762.42578 537.23975 c 735.6748 537.23975 713.98926 558.9248 713.98926 585.67578 c 713.98926 612.42676 735.6748 634.1123 762.42578 634.1123 c 789.17676 634.1123 810.8623 612.42676 810.8623 585.67578 c h W n q /GS0 gs /Fm1 Do Q Q /clipEnd MP q 937.56641 585.67578 m 937.56641 558.9248 915.88184 537.23975 889.13184 537.23975 c 862.38086 537.23975 840.69531 558.9248 840.69531 585.67578 c 840.69531 612.42676 862.38086 634.1123 889.13184 634.1123 c 915.88184 634.1123 937.56641 612.42676 937.56641 585.67578 c h W n q /GS0 gs /Fm2 Do Q Q /clipEnd MP q 1064.27344 585.67578 m 1064.27344 558.9248 1042.58789 537.23975 1015.83594 537.23975 c 989.08594 537.23975 967.39941 558.9248 967.39941 585.67578 c 967.39941 612.42676 989.08594 634.1123 1015.83594 634.1123 c 1042.58789 634.1123 1064.27344 612.42676 1064.27344 585.67578 c h W n q /GS0 gs /Fm3 Do Q Q /clipEnd MP q 810.8623 455.45898 m 810.8623 428.70703 789.17676 407.02246 762.42578 407.02246 c 735.6748 407.02246 713.98926 428.70703 713.98926 455.45898 c 713.98926 482.20996 735.6748 503.89551 762.42578 503.89551 c 789.17676 503.89551 810.8623 482.20996 810.8623 455.45898 c h W n q /GS0 gs /Fm4 Do Q Q /clipEnd MP q 1064.27344 455.45898 m 1064.27344 428.70703 1042.58789 407.02246 1015.83594 407.02246 c 989.08594 407.02246 967.39941 428.70703 967.39941 455.45898 c 967.39941 482.20996 989.08594 503.89551 1015.83594 503.89551 c 1042.58789 503.89551 1064.27344 482.20996 1064.27344 455.45898 c h W n q /GS0 gs /Fm5 Do Q Q /clipEnd MP q 937.56641 321.3877 m 937.56641 294.63672 915.88184 272.95313 889.13184 272.95313 c 862.38086 272.95313 840.69531 294.63672 840.69531 321.3877 c 840.69531 348.13867 862.38086 369.8252 889.13184 369.8252 c 915.88184 369.8252 937.56641 348.13867 937.56641 321.3877 c h W n q /GS0 gs /Fm6 Do Q Q /clipEnd MP q 1064.27344 321.3877 m 1064.27344 294.63672 1042.58789 272.95313 1015.83594 272.95313 c 989.08594 272.95313 967.39941 294.63672 967.39941 321.3877 c 967.39941 348.13867 989.08594 369.8252 1015.83594 369.8252 c 1042.58789 369.8252 1064.27344 348.13867 1064.27344 321.3877 c h W n q /GS0 gs /Fm7 Do Q Q /clipEnd MP q 937.56641 455.45898 m 937.56641 428.70703 915.88184 407.02246 889.13184 407.02246 c 862.38086 407.02246 840.69531 428.70703 840.69531 455.45898 c 840.69531 482.20996 862.38086 503.89551 889.13184 503.89551 c 915.88184 503.89551 937.56641 482.20996 937.56641 455.45898 c h W n q /GS0 gs /Fm8 Do Q Q /clipEnd MP 1200 0 m 0 0 l 0 899 l 1200 899 l 1200 0 l h n endstream endobj 178 0 obj /DeviceRGB endobj 179 0 obj /DeviceGray endobj 180 0 obj 878 endobj 181 0 obj /DeviceGray endobj 182 0 obj /DeviceRGB endobj 183 0 obj << /Type /Group /S /Transparency /I false /K false >> endobj 184 0 obj << /Subtype /Form /BBox [ 741.4668 277.99512 816.55957 353.24512 ] /Length 180 0 R /Resources << /ColorSpace << /CS0 181 0 R /CS1 182 0 R >> >> /Group 183 0 R /FormType 1 /Matrix [ 1 0 0 1 0 0 ] >> stream
-1 1 1 RG 0 i 2.24469 w 4 M 0 j 0 J [3.3671 5.61179]0 d /RelativeColorimetric ri 815.4375 315.69727 m 815.4375 295.5791 799.13086 279.27344 779.01465 279.27344 c 758.89551 279.27344 742.58887 295.5791 742.58887 315.69727 c 742.58887 335.81445 758.89551 352.12305 779.01465 352.12305 c 799.13086 352.12305 815.4375 335.81445 815.4375 315.69727 c h S 1 1 1 rg 776.17383 323.48633 m 778.4873 332.81641 l 810.63965 332.81641 l 808.94336 323.79492 l 806.16797 319.78613 803.5459 315.46777 801.30957 311.38184 c 799.92188 308.68262 793.29102 295.5752 791.82617 287.78711 c 790.51563 280.84766 l 779.18066 277.99512 l 781.2627 286.63086 782.49609 290.56348 784.73242 296.5 c 786.7373 302.05176 788.74219 306.60059 791.51758 311.99805 c 794.60156 318.0127 796.29785 320.55664 798.68848 323.79492 c 797.83984 323.56348 796.68359 323.48633 795.60449 323.48633 c 776.17383 323.48633 l h f endstream endobj 185 0 obj 671 endobj 186 0 obj /DeviceRGB endobj 187 0 obj /DeviceGray endobj 188 0 obj << /Type /Group /S /Transparency /I false /K false >> endobj 189 0 obj << /Subtype /Form /BBox [ 733.72266 534.66602 791.12891 592.07129 ] /Length 185 0 R /Resources << /ColorSpace << /CS0 186 0 R /CS1 187 0 R >> >> /Group 188 0 R /FormType 1 /Matrix [ 1 0 0 1 0 0 ] >> stream
-1 1 1 rg 0 i /RelativeColorimetric ri 761.90039 577.21826 m 768.83984 577.21826 l 768.83984 545.37402 l 775.00879 545.37402 l 775.00879 536.96973 l 750.56641 536.96973 l 750.56641 545.37402 l 758.89355 545.37402 l 758.89355 565.34424 l 756.04102 563.5708 753.0332 562.02881 749.64063 560.87207 c 747.01953 566.42383 l 761.90039 577.21826 l h f 1 1 1 RG 1.71599 w 4 M 0 j 0 J [2.5739 4.28989]0 d 790.27051 563.36865 m 790.27051 547.98975 777.80469 535.52393 762.42578 535.52393 c 747.04688 535.52393 734.58105 547.98975 734.58105 563.36865 c 734.58105 578.74707 747.04688 591.21338 762.42578 591.21338 c 777.80469 591.21338 790.27051 578.74707 790.27051 563.36865 c h S endstream endobj 190 0 obj 1114 endobj 191 0 obj /DeviceGray endobj 192 0 obj /DeviceRGB endobj 193 0 obj << /Type /Group /S /Transparency /I false /K false >> endobj 194 0 obj << /Subtype /Form /BBox [ 851.55273 577.99365 908.95801 635.39941 ] /Length 190 0 R /Resources << /ColorSpace << /CS0 191 0 R /CS1 192 0 R >> >> /Group 193 0 R /FormType 1 /Matrix [ 1 0 0 1 0 0 ] >> stream
-1 1 1 RG 0 i 1.71599 w 4 M 0 j 0 J [2.5739 4.28989]0 d /RelativeColorimetric ri 908.10059 606.69629 m 908.10059 591.31738 895.63477 578.85156 880.25586 578.85156 c 864.87695 578.85156 852.41113 591.31738 852.41113 606.69629 c 852.41113 622.07471 864.87695 634.5415 880.25586 634.5415 c 895.63477 634.5415 908.10059 622.07471 908.10059 606.69629 c h S 1 1 1 rg 899.52344 601.95459 m 897.28711 593.31885 l 865.13477 593.31885 l 865.13477 602.72559 l 867.83301 604.11328 868.52734 604.11328 873.07617 606.73486 c 883.7168 612.74902 886.41504 616.21875 886.41504 619.76563 c 886.41504 623.1582 883.87109 624.93164 880.24707 624.93164 c 876.93164 624.93164 874.07813 623.54395 869.76074 619.99707 c 863.59277 626.39648 l 869.14355 631.33154 875.08105 634.03027 883.02246 634.03027 c 892.19824 634.03027 898.05859 628.94141 898.05859 621.38477 c 898.05859 615.75635 894.97363 611.97803 890.81055 608.89404 c 888.03418 606.81201 883.4082 604.26758 880.24707 602.57129 c 879.86133 602.33984 879.01367 601.95459 878.24219 601.56885 c 879.93848 601.80029 883.17676 601.95459 885.72168 601.95459 c 899.52344 601.95459 l h f endstream endobj 195 0 obj 1614 endobj 196 0 obj /DeviceGray endobj 197 0 obj /DeviceRGB endobj 198 0 obj << /Type /Group /S /Transparency /I false /K false >> endobj 199 0 obj << /Subtype /Form /BBox [ 1003.43457 549.9873 1069.09473 615.64844 ] /Length 195 0 R /Resources << /ColorSpace << /CS0 196 0 R /CS1 197 0 R >> >> /Group 198 0 R /FormType 1 /Matrix [ 1 0 0 1 0 0 ] >> stream
-1 1 1 RG 0 i 1.96269 w 4 M 0 j 0 J [2.94409 4.9068]0 d /RelativeColorimetric ri 1068.11328 582.81787 m 1068.11328 565.22705 1053.85547 550.96875 1036.26465 550.96875 c 1018.67383 550.96875 1004.41602 565.22705 1004.41602 582.81787 c 1004.41602 600.40723 1018.67383 614.66699 1036.26465 614.66699 c 1053.85547 614.66699 1068.11328 600.40723 1068.11328 582.81787 c h S 1 1 1 rg 1035.97266 583.42041 m 1035.97266 592.05615 l 1036.58887 591.979 l 1038.5166 591.82471 1040.29004 591.74756 1041.29297 591.74756 c 1046.99805 591.74756 1049.85156 593.75244 1049.85156 597.83887 c 1049.85156 601.1543 1047.76953 603.62158 1043.29688 603.62158 c 1038.13086 603.62158 1034.19922 601.23145 1031.88574 599.30371 c 1026.48828 605.85791 l 1028.87891 607.70801 1030.80664 608.7876 1033.42773 609.94434 c 1037.20605 611.48633 1040.98438 612.33447 1044.68555 612.33447 c 1054.32324 612.33447 1061.33984 606.62891 1061.33984 598.91846 c 1061.33984 594.75488 1059.48926 591.13086 1056.25098 588.97168 c 1055.24805 588.35498 1054.78613 588.12354 1053.39746 587.58398 c 1059.18066 585.65625 1062.57324 581.26123 1062.57324 575.86426 c 1062.57324 565.22363 1051.39355 557.82178 1035.43262 557.82178 c 1033.04199 557.82178 1031.96289 557.82178 1029.0332 558.20703 c 1026.56543 565.37793 l 1028.95605 564.91504 1029.95801 564.83789 1032.42578 564.83789 c 1043.14258 564.83789 1050.46777 569.6958 1050.46777 576.7124 c 1050.46777 579.25684 1049.15723 581.56982 1047.0752 582.57227 c 1045.61035 583.18896 1043.29688 583.49756 1039.9043 583.49756 c 1038.90234 583.49756 1037.82324 583.49756 1036.74316 583.42041 c 1035.97266 583.42041 l h f endstream endobj 200 0 obj 1296 endobj 201 0 obj /DeviceGray endobj 202 0 obj /DeviceRGB endobj 203 0 obj << /Type /Group /S /Transparency /I false /K false >> endobj 204 0 obj << /Subtype /Form /BBox [ 730.86523 405.25586 797.70508 472.0957 ] /Length 200 0 R /Resources << /ColorSpace << /CS0 201 0 R /CS1 202 0 R >> >> /Group 203 0 R /FormType 1 /Matrix [ 1 0 0 1 0 0 ] >> stream
-1 1 1 RG 0 i 1.99799 w 4 M 0 j 0 J [2.99689 4.99489]0 d /RelativeColorimetric ri 796.70605 438.67383 m 796.70605 420.76953 782.19141 406.25488 764.28613 406.25488 c 746.37988 406.25488 731.86426 420.76953 731.86426 438.67383 c 731.86426 456.58105 746.37988 471.09668 764.28613 471.09668 c 782.19141 471.09668 796.70605 456.58105 796.70605 438.67383 c h S 1 1 1 rg 757.58301 461.76123 m 768.22363 461.76123 l 757.12012 436.7793 l 756.81152 436.16211 754.65332 431.53613 753.65039 430.53418 c 754.42188 430.68848 754.49902 430.68848 755.26953 430.68848 c 763.98242 430.68848 l 764.9082 430.68848 765.83301 430.61133 y 765.75586 431.61328 765.75586 431.99902 v 765.75586 434.1582 765.91016 436.4707 766.2959 440.24902 c 767.14355 449.27002 l 775.24023 451.12061 l 775.24023 437.47363 l 775.24023 435.7002 775.24023 434.31152 775.16309 432.92383 c 775.08594 431.22754 775.00879 430.61133 y 776.55078 430.68848 777.47559 430.68848 v 780.71387 430.68848 l 780.71387 421.82129 l 777.24414 421.82129 l 775.7793 421.82129 774.85449 421.97559 y 775.24023 420.97266 775.24023 419.19922 v 775.24023 408.32813 l 765.44727 407.09375 l 765.44727 420.125 l 765.44727 420.81836 765.60156 422.05273 y 764.67676 421.82129 763.13477 421.82129 v 742.70215 421.82129 l 742.70215 428.83789 l 757.58301 461.76123 l h f endstream endobj 205 0 obj 1497 endobj 206 0 obj /DeviceGray endobj 207 0 obj /DeviceRGB endobj 208 0 obj << /Type /Group /S /Transparency /I false /K false >> endobj 209 0 obj << /Subtype /Form /BBox [ 967.58789 430.4834 1030.2998 496.48096 ] /Length 205 0 R /Resources << /ColorSpace << /CS0 206 0 R /CS1 207 0 R >> >> /Group 208 0 R /FormType 1 /Matrix [ 1 0 0 1 0 0 ] >> stream
-1 1 1 RG 0 i 1.87459 w 4 M 0 j 0 J [2.81189 4.68649]0 d /RelativeColorimetric ri 1029.36328 461.8418 m 1029.36328 445.04199 1015.74512 431.4209 998.94531 431.4209 c 982.14258 431.4209 968.52539 445.04199 968.52539 461.8418 c 968.52539 478.6416 982.14258 492.26123 998.94531 492.26123 c 1015.74512 492.26123 1029.36328 478.6416 1029.36328 461.8418 c h S 1 1 1 rg 998.125 496.48096 m 1000.36133 489.0791 l 999.97559 488.9248 l 994.42383 486.99707 991.33984 485.37793 988.33301 482.91064 c 986.86816 481.75439 985.55664 480.44336 984.47754 478.97852 c 982.62695 476.66504 981.16211 473.9668 980.31445 471.26807 c 982.39551 472.96436 985.24902 473.8125 988.56445 473.8125 c 997.89355 473.8125 1005.06445 466.71875 1005.06445 457.54346 c 1005.06445 447.59668 997.2002 439.96387 987.02246 439.96387 c 975.76465 439.96387 967.66895 448.98438 967.66895 461.70703 c 967.66895 465.48535 968.3623 469.49463 969.67383 472.81006 c 971.37012 477.20508 974.4541 481.67725 978.30957 485.30078 c 981.7793 488.53955 985.94238 491.31494 991.1084 493.70557 c 994.03906 495.17041 995.19531 495.55566 998.125 496.48096 c 979.15723 462.94043 m 979.15723 462.63232 979.15723 462.47803 979.08008 462.32373 c 979.00293 460.85889 978.92578 459.54785 978.92578 458.31445 c 978.92578 451.76074 981.7793 447.90527 986.55957 447.90527 c 991.18555 447.90527 994.19238 451.60645 994.19238 457.38916 c 994.19238 462.32373 991.49414 465.48535 987.17578 465.48535 c 984.70898 465.48535 982.24121 464.71387 979.15723 462.94043 c h f endstream endobj 210 0 obj 1840 endobj 211 0 obj /DeviceGray endobj 212 0 obj /DeviceRGB endobj 213 0 obj << /Type /Group /S /Transparency /I false /K false >> endobj 214 0 obj << /Subtype /Form /BBox [ 851.86035 268.71582 926.9541 343.80957 ] /Length 210 0 R /Resources << /ColorSpace << /CS0 211 0 R /CS1 212 0 R >> >> /Group 213 0 R /FormType 1 /Matrix [ 1 0 0 1 0 0 ] >> stream
-1 1 1 RG 0 i 2.24469 w 4 M 0 j 0 J [3.3671 5.61179]0 d /RelativeColorimetric ri 925.83203 306.2627 m 925.83203 286.14453 909.52441 269.83789 889.4082 269.83789 c 869.29004 269.83789 852.98242 286.14453 852.98242 306.2627 c 852.98242 326.37891 869.29004 342.6875 889.4082 342.6875 c 909.52441 342.6875 925.83203 326.37891 925.83203 306.2627 c h S 1 1 1 rg 897.48242 301.0293 m 900.41211 300.18164 903.80469 298.25391 906.04102 296.09473 c 908.19922 294.08984 909.43359 291.08301 909.43359 287.76758 c 909.43359 280.75098 904.34473 274.89063 896.86523 273.04004 c 894.39746 272.42383 891.54492 272.11523 888.76953 272.11523 c 883.60352 272.11523 879.97949 272.96289 876.58691 274.96777 c 872.03711 277.74414 869.72461 281.83008 869.72461 286.91895 c 869.72461 292.70215 873.42578 298.02246 878.82227 299.9502 c 877.04883 300.48926 874.89063 302.2627 873.50293 304.19043 c 872.03711 306.27246 871.18945 308.89355 871.18945 311.59277 c 871.18945 320.07422 878.66797 325.85742 889.69434 325.85742 c 900.10352 325.85742 907.42871 320.30566 907.42871 312.44043 c 907.42871 307.19727 903.49609 302.64844 897.48242 301.0293 c 886.14746 295.86328 m 882.90918 294.0127 881.21289 291.16016 881.21289 287.69043 c 881.21289 282.83301 884.60547 279.74805 889.92578 279.74805 c 894.55176 279.74805 897.79004 282.44727 897.79004 286.37988 c 897.79004 288.92383 896.86523 290.62012 894.86035 291.93066 c 892.85547 293.24219 889.77148 294.62988 886.14746 295.86328 c 889.69434 305.19336 m 891.54492 306.11816 892.23926 306.58105 893.5498 307.7373 c 895.32324 309.43359 895.93945 310.82129 895.93945 312.74902 c 895.93945 316.2959 893.47266 318.30078 888.92383 318.30078 c 884.68262 318.30078 881.83008 315.9873 881.83008 312.51758 c 881.83008 310.05078 883.14063 308.43164 886.5332 306.6582 c 887.7666 306.04102 888.30664 305.80957 889.69434 305.19336 c h f endstream endobj 215 0 obj 1217 endobj 216 0 obj /DeviceGray endobj 217 0 obj /DeviceRGB endobj 218 0 obj << /Type /Group /S /Transparency /I false /K false >> endobj 219 0 obj << /Subtype /Form /BBox [ 1000.14648 284.58398 1065.80566 350.24512 ] /Length 215 0 R /Resources << /ColorSpace << /CS0 216 0 R /CS1 217 0 R >> >> /Group 218 0 R /FormType 1 /Matrix [ 1 0 0 1 0 0 ] >> stream
-1 1 1 RG 0 i 1.96269 w 4 M 0 j 0 J [2.94409 4.9068]0 d /RelativeColorimetric ri 1064.82422 317.41406 m 1064.82422 299.82324 1050.56641 285.56543 1032.97559 285.56543 c 1015.38574 285.56543 1001.12793 299.82324 1001.12793 317.41406 c 1001.12793 335.00391 1015.38574 349.26367 1032.97559 349.26367 c 1050.56641 349.26367 1064.82422 335.00391 1064.82422 317.41406 c h S 1 1 1 rg 1036.05566 289.23438 m 1030.42773 295.55762 l 1038.75488 297.71582 1048.46973 305.58105 1050.7832 312.05762 c 1048.46973 310.97852 1046.77344 310.59277 1044.53711 310.59277 c 1035.13086 310.59277 1027.95996 317.99414 1027.95996 327.78711 c 1027.95996 338.19629 1035.82422 345.8291 1046.61914 345.8291 c 1058.10742 345.8291 1065.04688 337.8877 1065.04688 324.7793 c 1065.04688 314.44824 1060.88379 305.88965 1052.40234 298.71875 c 1047.69824 294.78613 1041.53027 291.16211 1036.05566 289.23438 c 1053.0957 321.77246 m 1053.63574 323.62305 1053.86719 325.31934 1053.86719 327.55566 c 1053.86719 334.03223 1051.01465 337.8877 1046.3877 337.8877 c 1041.99316 337.8877 1039.13965 334.03223 1039.13965 328.0957 c 1039.13965 322.54395 1042.22461 318.91992 1046.92773 318.91992 c 1049.47168 318.91992 1051.09082 319.69043 1053.0957 321.77246 c h f endstream endobj 220 0 obj 1000 endobj 221 0 obj /DeviceGray endobj 222 0 obj /DeviceRGB endobj 223 0 obj << /Type /Group /S /Transparency /I false /K false >> endobj 224 0 obj << /Subtype /Form /BBox [ 865.10352 410.08008 934.30078 479.28027 ] /Length 220 0 R /Resources << /ColorSpace << /CS0 221 0 R /CS1 222 0 R >> >> /Group 223 0 R /FormType 1 /Matrix [ 1 0 0 1 0 0 ] >> stream
-1 1 1 RG 0 i 2.0685 w 4 M 0 j 0 J [3.10269 5.17119]0 d /RelativeColorimetric ri 933.2666 444.68164 m 933.2666 426.14258 918.24121 411.11426 899.7041 411.11426 c 881.16406 411.11426 866.1377 426.14258 866.1377 444.68164 c 866.1377 463.21875 881.16406 478.24609 899.7041 478.24609 c 918.24121 478.24609 933.2666 463.21875 933.2666 444.68164 c h S 1 1 1 rg 895.9502 464.16992 m 922.24219 464.16992 l 920.7002 455.37988 l 905.58789 455.37988 l 904.50879 444.73926 l 906.12793 445.04785 906.74414 445.125 908.13281 445.125 c 917.69336 445.125 924.32422 438.95703 924.32422 430.16699 c 924.32422 418.75586 914.22363 410.58203 900.03613 410.58203 c 897.56934 410.58203 896.64355 410.65918 894.17676 411.12207 c 891.94043 418.75586 l 894.87012 417.98438 896.95215 417.67578 899.18848 417.67578 c 907.36133 417.67578 913.14453 422.30176 913.14453 428.93359 c 913.14453 433.86816 909.75195 437.10645 904.73926 437.10645 c 901.57813 437.10645 898.41699 436.48926 893.48242 434.94727 c 895.9502 464.16992 l h f endstream endobj 225 0 obj << /Type /ExtGState /ca 0.5 /CA 0.5 /BM /Normal /AIS false >> endobj 226 0 obj << /Type /Group /S /Transparency /I false /K false /CS /DeviceRGB >> endobj 227 0 obj << /Height 96 /Width 128 /BitsPerComponent 8 /ColorSpace /DeviceRGB /Filter /FlateDecode /Length 228 0 R >> stream
-H{pUƙNK;*
-Hʈ>|dBh%tH P4Hx$"ĨlA-"Z[Q"y}=&Qxfϙk]~EMԧiW-d6
-hX(
-XyڝgкZjRե+)/׈j
-OgXaGȗOd5J&+L!S驐3@baV1^YYe3`êT&N*VLK[;zJdt<'WX)N&e
-^͠轵jO'\8cae
-
-4V: R'M>eeeׯόpg0}I^jD{bSgHz4ӟg7?6Ls5'^OSN4g՗_,VUSY]ך.|ҁ+,KĪ"#/--jhh8p  .y޽---XAW8?V[zO7aN6 L5c:ѭ}޲7TU5nɘ,K{nց;oxd>yh陶<F>ٺOlnado=o<4ldczѭ[UJQh#tS ¸
-XrY
-1Zk\|Stg.g^%w\4,]m[f:^#
-`jZVh»N4[PPڼw'޸3 .>pvc{S(m/᳧h[zUB ڹR'@SEKeZ){d@+?>D%Dwh<?u?ۏU( 6Q*?Qa_{֗G[s~x
- ,HH1=^`[rTj}ao_]o~
-*0?kyiw7`׳͙`xLⴡ{ǴMH6[Q?7*+ߝF\*EU* .%LcapB874/~rԡ5hk7j+Fwܛ6?KITHlĴOϴY*E۸j~̎߶sϬQ*U|ݷ.bƹS2@KUx?ѓA"Rhn)StHJK>H11ѱD_]S\mw!9hÇCV״5b/>e0H4>|fi*+yN,,&|鳛`Q%yږ5Ƴ )>-H}91v!0H*dtF }f-' A돰,DR4a-(2ȩ?IMze|4+e^j!6O
-Yo 'j<ʘ$%0-V?A0x)](owWi ?Ĵ#^)[?dxUMD<cȌV:1҇KxUTk]V/?)uռv?Vpټk#ێoWysB&hS+'ة
-Uf5*BV.˪4E>c^-^cڊY2Bo5HS]F\d|T@g";A` sķ×Q(QC޼ҶB%]۠egpBz Ǩ@w2[5ȴP}K' &j(B]
-0 8W`a(R.\
-)&J毓0O-Oi $f$" \,XuFODSyK(/UԘD1#G/Yw7D+D!f2#ʹu$ @
-
-3ۿQ h"x+H YJn%V⫬:PV[<M?;^}Ą_P? Tx<?.D?йo\U(y3;}CjJֿSRdO_GTKK*VmS؍]mK{c~ayqKu6/ee~W\ݺJlZ>'iR`8yi䴽SKK)O.b3eZkWʆ
-#S f9R7[D|nӁ<ONnXi ]S>_J)KƋC%@ )vUIȘ4e_a1-@ʮ&@t4a9wF\ؿ՗4:,"Stx[VFJFsg=7K,N{g&,}xZdވ/
-ݢ?=KGђ7;GaEOrM>tK妅k[D1Yjv ?M+4Ad L{֟%Q*
-X#XHX޻ޛ,\E8{[ &&ϩTVţ#t^HBLJQuu5wP;85jӰJpcS$ohZaɬ?[w+ DNI+kk#ߋI]t=Bb
-/#WT[EȠ/{jX0U]L
-~ul޺?n~22աCb;K*T%ljˬ'k8H6AfZW ڹ`#?xܳr_:OtտĽ
-KG4hYlu4Uϵ6:l1lB4e
-^%Xl\^i~TOB}Ap? )kic>&inxw_QzW_b?Izm`
-#0XeTToNeei#cIsdZi´H2-&8F%"L[xm,ɀΉJ2tnX?mG+nM/Jż* HxP
-[i$,&:DJUa(U%g>0 [68{ޮ&t[^f۫澳mLaOX:Gz^XZ>e6-MOcdzu:2|*G%QڵRH;B䀙 XޫGyZae>UNTPl&8M~<uǯn8xukFv 1^I յĀJ
-LعmE;*1T)#1:;|ng#~+=Z1sGG2@8za]LLEU74*m@۠1+ ާۮS7OL|~{Ɔl{ptxHxLKKKwsW;('u0 䆦7'w a
-6IQq꣦^QJoyx܉L/Z0uP 훭nVȍe%ݎ璻9ϟg(jL|*JXNzc uO5+zQzV! ^4*bب8:1c$ʓ[]oe3
-UODG*9Os01O1(P|}
-3cE1'=U1 8fF#{4
-a G6LaѴe+<nә}4a ki kLddUy[|bPxC1ѻ" !)X`@˂Xӱ/$:Vko=Z_u ~GG|o ajO7[MYZMY!>CK1ud;H3Y{<a+浐稨 gozW^MOF~bGyO~=liTgtCӌ)
- ԒM _V_
-ۤ`,+/MܞL7{\!d\Xٹ#VJ '/X#@EY- _99p>}x& 7nWlO [GPeo?F/pE`߶-B+gd5hUh=E}71gȁCE XLGF76L'7b"<;))d/Uv |n]Ʉf9/#}Ɋ*& ^Y86A%23`+2#S$G_-8tvn/7-ۤzxY 7h7dEPVbqr-⃧^T2J`#oIi
-HlWˎFw:
-ÇqKn`fdF^UdgDۀ5 ̨zx?o}uoO_j>_[\ޞ˿k^\'yyp=u9#߼߯_^^3΅ŻʒbQ(}|~|r}|{OfM5:\?rYN?%svy9]/Or4/[j''󂿩[W[RrXS6UKq5&olYJ̫ŵZM+r ̑{:)TnA(\<@E.AU=*zEq1ny.qVbd48(LH SW *ry#oZ66KβDUVOiYm _g#?gZ>'a C >)"JvovŵJ M˗@ЬvIˤ:5Lڶ&Dm T!]GynİR.5,g6Ri=[k Y>ϰ
-0LZ"_Lzck덼6.l@Ha*$ia,DžR] #
- MpGq`<RyJ{Øx~ԀHb`MuDyҍ2,iֵKn qifs3;4L2z80"̦jjwnʣ 634J5J{ay}AxOK`n0$AI'q橭ijn~>ˠ
-V:_X㰽Lh"? o
-Bl2)VbC8A%2
-(Q~meUNN)J|\X|\7*ҎDI2D;Ef\L)&pg^*w!qJN h;BwCh7eNo'UESiԋe~T`Ŕ/B*$:H[ۏ+tkN~@IIq #Fb Tb'oZxDC
-;S#v22U#;^öz0.P׀P\ pēЂwTopݔƦPL~mYu lcCkcg
-M `+ϳ+I2Xgn*-7J{yoЉ\ēPwtol+ǿ"*lW}|C+R؀"}o=¸"@q(AnēP+c.W(*"{kf{w qHI>)-B~X
-K< 5xGV"斊PW󪋙g&.mH-bcU0PGDI
-xj4={Ed[]C(*Nm4%
-iJ-oH
-QxZr蓉{aTW'MJVZ=SHy sD¸ @?ET
-B,$ {EgEE̶gjwgj n?F} 
-? Ja8sURp1'"ڈͯ
-SGD?ΔSW׶?ȋ;˥BTwJ@r=XGm!#Wi; Ct!*Cr=W,>']7+9 ;FbE:G&ZB:3D&dJs,5o\iH@
-jB r8/Dˆʤ*tnXQUch "_2URԓ/}uH|Zc%^t 31}1z~o"Nb}-/0?V4ur ,yzlj+6ܱXϭ"g| Tk{D4 DI
-R!oV/ȑ'?T~k) 3\#ηEm}R];}! $|q)
-(Czۆ7ad=1Z0C\Aqk o "AYx:Aw*~XY7 f<ibXL8 JVyQA*aOhqdaƼpFFkGİ푑[pR' $q@^,NEf+y}l@jBFkkr%"K˞!Y +A%!rA<I5v"0QFMʊ>7d=FZzD
-R$o;H@Qb4?nrat#EMjAumM $rȋ RWro,]T6CL0U+6Xcᗓ2`jQgEj↰4Tp8$ۭw(ie9VZ#Q6J[;AsLoϊɻIaݷ#y+^Ax ܫEVjR# xTGnPϊ|nqDX$X/ݏ#u#ؕ{]uݳTH/Є>kEh1ĄϊɻIaݷ#F~UtL+1߼#s |*L!Jh:n}%ORU8w]#(ܽJiF 4cm 9Ąϊɻ#Ƀ‚o?.)jgB5XQ:W=3$y}af(BKE)w!’'?t?L<zFP:1۶+{YgkCv )AI
-R%oV?ȑ'?T~Āe6*lbHW!1\bY JSWhQ&BKZ^Qr7 au(nThww%(*3\(UIs"ү:0uDLy8qE}~m\**AuG`
-, a+gK~xڃyfa2n}3̌YnRG
-aU,ۈCr=W,>ڄ91\%+
-F)7l/i1Uw[So )JB@r9XGm񷭣"ޙ"uw+sA,*ePsHVRTp6'6`Z+-O@}7_!^|ր]q?M jhZ)b#ReJ+ HVC?WH^T ٩]zzŲ!B0RWzR3oOcNaF7*aL?zڗx<_mܧ~h5E-Oe\MXIth}~ aɓ;?N\vUznes'[/f%y+HY GP}V0̨龵=m}1TwBAH4RBQ# yŗozbPtanG$ KAD05("nu, 5-VT8joA+$3i|wN{V&%w+HY( އ'4820c^B8R#5#b-88Q /'"<>6 j
-!y#ҊѵHh!Y +A%!rA<I5v"FMʊ>7d=FZzD
-R$o;H@Qb4?nrat#EMjT6ڄ!H,GX E|!!Ae3?询^!}IBOA9y-[f%{VF-nKCE 7ݏ#H8zG Tg[iKr0kFik'YnMY:y:B<I5vzsDP#ނ3oڹ,<ՑԬC0u("%[<I5VK㈽y#Dv^gW}e,9 4aOZZ̮"1a%("unu,yjXC@s7S:>
-q75}
-kSG?+N[_dɓTct?`GJGaWX)7ͨfm!gWY2yb$yZXC}E0`F\A `jQ/M-KV8GJG:f3s%3VBڐ]AbBJPҷTɛrIjaշ1 ro
-R1vH WXjCRԕ{}(ZT0uВVc(a "꫼yCXfݷa{5""!E
-7Eb#!W9JURÁǜk#6+L8SNq\Q_" /b,
-JPB*% GY꒪`}CX {_E澳fF,7 J#HmD![9K]RÃ۞+GGRB9b|LWr0Q?M jh Z{'0r:+ R3ڇ',NAFp2M:7QQchukňaƗLfKjXtb/ݘ篷>՘~~OPbu'>WOM-6K|ޡqJ 5X]67z /bbQTț rIjaշio
-b/T0߷/R*شKu'/DA#.8xX!e<BX{ېW!f'UKFqv4H n A#9+RV'PbNŏ+QԂ`pDbF8?u5`
-IPrț50"R }h~B3#3KGjdyD {@℁$rȋ |0: HBHA͊ѵHh!Y#+A%!rA<I5v"0Q+m6)+ސQ)kC)&~%{+HY EEʑ"̉ڏ+6[nM kpm"$q@^N"OBX{`EA
-M*zls'e`k dϊȻ aiqI[^Q!:J^s_6J[;AsSLoϊɻIaݷ#y+^E_=-8[dv.;2 b
-
-FRJެ~#OR ~Al~Cu+ ~u̡Õ)|0u^UL\!j"*g)J~zȻ*oLoYbXfMEvwGHHQMa8sURp1Сu#g)+sk[EL՝R!UwJ@r=XGmL!#Wi; C
-!*Cr=W,>'Hp0aACz0kC:G&ZB:3DZ"۬Ҩz 23b2R8/DƤ& 1Q ڱMmb^dxh'3_oC+nyz_M} )Vwh}zYдbW;>>\v4dzn-e'[V5Vx:A<I)VCFZy0#
-uDJv${!j W2<V{Wl0'SK 3ivF« n5Sq:^>&-w}|X yf<W$Ȉ=NuGyXC XOLqaƻp$EFOQGĄ[XR 4ެFyW|LWlW8 =7o={Nׅe
-3 %69UqhQQ1(gr90"1a%(^!W$ɓ?T_~TGξfl
-R:{GX Er#6+mTa~u̡3s*qKRO}hQZvEYjb3ls8}ktDu3%y8*K n
-S^?XCrXCmMB޵Z\NFЛV[KZD5U 7)JB@rXÁlʣ6sac$Y{8+  $!Y9KY,eO!m3,L:pg_̼R|QhD@aHa`tvsr_K0 fE{ԃz S猼TCI0 5lJCΔ9I^hvJr7t)ΠSsFdz,ꅟ{Dخ6[,'ᗈ&9֥^ &$m/xX@v~"X!
-_CN:c[QsZC?BB)K1o{^Jívz[y!?-/Qm{d)vAF~z..‹ٺ@@yg6CĎ ,OjmCS_0+2{kSosC8 m{
->S[X "| -&@tL$x z!Pu :F5@T22^*{.RYSa0gPjc>i~78K .om3AF4L($l+k{jD+&醶Ҽ~YrLY^1e[eD_Q<yOxMU|` 'FTcA01 ?x/~~2܇>:4lΗ-b0ŝ~{K#!ɜ\ #Q˽^F DTV$ k8Vcl#`WL H{H~~2܇co iD?05Vo1:c7 Ո$zNϏQ^65)gȂݒs5]JiZN03z@>??G,{J{cH#:FVlxkY+fI+-T#F>syUl ;?GV{ِ7+=RQ~u!}3s*aJ'3/ZQ01ׂL~(I)X:{Ǣ%D=vI:V:PzPVV$HZ֤T\=!KV~{amvmE fR
-jaJٟrՓ$A1EPJUnW'OR|k\;Jo-BT$ [$YHĕf?L$,IP]!*XZyB<IARr ;N4 fZ;dh_?{9@0 80.gbp+TRP9k?JCjRWzgk% _>B}\z|m#B1RWzRs^XItǜnOvcZgȩXY\+F`EW'w ’'-R|;qث %wlsk6.=cum`jQTț rIja՗y%Xl
-ǜz.[[`Ÿ9c:RI ;!ĥG/+ [^6ʬ Ġj(^ 觭A2v
-WY$"y2{V&%w/HY) އ;4כ7cμ`!SКذ0c{ Bꄃ$rȋ |0:_ro֓8r4(][3_-R^RouZT^"wdɓTÊ/G*2 #CP_h3IY1gHYZO0({Ab):(JޗۍV^)8I]9IԠ&Ag9
-)#^r/X!lЯ!j}K}3=y.[f%{VF-nKGE 7ݷ#݋6:B42l+{V2M(msLoϊɻIaݗ#}=z {Cp|ԶR# rTGnPMG`QgE>Jx8",yjlW8 =ys.,(+ P
-R>+R&VC$R T~ч]Sτ5J
-gf]</̬SCh:n1DX$հA.~zFP:1۶+"ϼ׆
-RJެ~#OR T~Āe6*lbHW!1\bY
-sTշ-:'zZ1CaJQ]H|Zc%^t 31_o}Wct}
-p'> #ATǻ(~R;5BDg|/=aumFzA05(ɿE0rZX#\MaQO}k k" B‡g9 vZA:D!{ېW1'98u4H n AS#U}vsX5-Vqbe 2(
-WI$fGNHMk 'A-(f/E9H%wf0̘>њ#b-8v:AFGcR7(][+?-Rrdd4:HLX *?»RNR +tߎTd&j#CP_hӷIY1g􆌺HYZO0(ٿEݬvE4?nIĵ(omRWNmRsԠ&Ar".vNE9
-aۆ
-OT,2`jQV7Ȓ{8$ۭw(ie9VZ#$LQ z֟`%(:n爱TÊݷ#y+^Ax ܫEVjR# xTGnPoQbw#d)'*t?ͫ#ؕ{CWY=KuMSVHLX JVQtc)'oGδs7S:>
-q7>kZ|%H۽\x8w|FP:&{{ӌ@7XBή 1!%([Eiw;C^rZX>LF&6XQ:W=3$y}af(B"un5,$հA.~zFP:1۶+"ϼ׆
-R[PT('o?b@2P61cTO, SWhQ&BJR\U=KQR` "꫼yCXfݷa{5""!E
-7EUU/oqգT%E<D_u^aǫSW׶?ȋ;˥BTwVd![=K]RkQzk=EȿUHݝ!U :{y8{.z'2sŖ"!J>JWJcJ_Tu&8cL٥v#0Gh!҈p%Ѡo2R8/d| IMh۰ޢ i2Ѯ2@hflY4FNfG+n6-xz{Oߟ;a_@GP~,hj1AH䫄>z|4FZ "3͋06F#.H JVx:A<I%,x|Vv0e
-uDJciĚ]O6THb0`ۄb˷aFzb>aFnHxĭ5[C (y j$ 5%VaZ8̫4錜&>H-Fգ<^!a y:X0>9aKIFEl>,6Q!}L@RB65#*&Os?q-aIABIP Z IV<-G/A>c=:J1@Qrzȋ 24PtX }Ȯ?QW0 RsǬM+Aj{2W}&4V_
-b\1/^i;}rJ DɝWBPmc=zz?  *ۊ^󣕄5j,4t&J,HZ IV<뙋wCЗ~xܫ9VLR`ㅨ~efDɞ⇐Ij'Տu~5?:+gΏ^ ^]NbւdςTɫIjaŃۏ@k#Wq jORL+1ּs |~H J,h*j}$ORU<~;>"ƶ{{]Zrz$ςɫȃT‚ͷxavw}τ5<J[f] ,R;{)h*jCH$A-~EP-sE-%3=!k=BBIPzȋ RI*aۍnQ_1cOE,XrE09l]]H PnT\B'DMV4zآL,%I3Qp0ݏ։az1"Ą¢EE!U9JMRCmMD_68SNoٞ_"!$b,%LR#d,UIs*[;!L#QAiz,W
-%!,2XT3d,UI.sV>16t_5WBX_KAk/q?M Zٵ!v'RҺ<GPB+ cRUzJ? #kеa?;U}عSW3Df|Uٕި|[Ļ1vE'0W2TXI, % &O*RVRN>ZXvb۫ %wh0^7z˜/p`jQ
-Bya$ˏ37aF=|:~mOG_T]a(')DA#r2buBX%a3;0^Z& ox4HRL JVQ cIԴXۉUgʠ(\i&9M|vY!pܟ"nvPTz sh?:a [9h(at6 j
-!y#ҊuHYj+CʊY +A%+CxsXIaݗ#W|Mʎ>7d3F^zD)("f(%VKv3E R>ۤ掱T6ڄ!HVN ('!{`Ae3WQWHڤbV\&D*F[ K$Yn#DH(CȩζӺi%s(m=M0ݿUvsXIaݗ#y+^A̽[dv.;2 b
-RSPT('?T_~c2P61cVXjCR+P`
-Q!%VWc(a "oU>!,`GŰÚ
-qr¢ê⇀7ǸQD_u^a뚔Sw׶ȋ;˥BTwVd![=K]RÃϣ{hiz,7 JCXXUcl,uI.{V,>! s>arYW%# 9@ @K80Vgb؝ȣ또S\h?df ?>d1R8DƤ&m؏Qvchmbdxh'3O-vE'0#AWS٫{;azi!ɓ+{
-Fk{::" Tw{B=AH|xK5+FC+{'-- xF:Lm jYx@[Χ5e8̫4ꌜ&댌?A0$QzNj5$!RP|d0x#_Iѓ#bH#,oV<+>C%69US@FTL9Ws_QV78HLX ʤϯܐ I/?*R s4Q!h`3z;F=C n5VyAܗۋV^a}u' 5wԞ5!Cx^ ya^b/"+\/AP1E˯Xݱ''W "ZAȳ jBH*blYP}XdDGCʶh%aר-гMgAI$X՗}?ss~j;iu^ͱs:ODc/5L jY^-~I{:?lŽή*NY(°W Z̮"1a%gAI$X՗qF~ORL;1ּs |~L jYT:%I,/ҏ0l>eԀ$2z+HLH jY"yayRއ 0g 0ໆ}v  `jч4r!$ybd[|uc2w2+>3=!ĄQ#/V7H')}h܈`e6*lcHW1OE,'׾P` GV4zآL,5|8CXݏ։a'z1" E
-7)EE!U9JQ&"ڈ/
-SED'Δwꗴ;-BTo6R#d,e9ؔGώLzgN?̊YR3G"X5d,e9+GCRq0WrXZV<WC pjc0p`ή ;AADTJJB5`>񳲯8D*4mدNUVch k jaT=umX PrfT
-v fGffKGjdyD {!u@r".V'HQ<>6 j
-!y#ҊѵHh!Y +A%!۹a,$հۑ D ~dj+m6)+ސQ)kC ~%HPX/͏)bHrzo;~njP]ۀkB‡ [9h;'|!!½f ?询^!}IB lm"A쭢h $*j~~AŁ;B42l+{IΑV(m=M0ݿUvsXIaݷ#gr{9"O{շJ\wTՑԬC0u([EyYI_GUGʽή:YshW"]EbJP򷊢vK9I5vd `Λvc8wdV5#D*R'v/Wc)'*~~; ^mc4o]AbBJPҷ"v$ <0q53azҹ| )vc 3kEƟw!d)'?t? 3ґٶ\̬׆
-R[PT('?T~Āe6*lbHW!1\bY JSWhQ&BJR\U=KQRÀDWyxͺo ^7k*E;EBn
-_GJ~8~my#g)+sk[ȋ;˥BTwVd![=K]RÃϣ6{ahi; Ct6B!VU%6[=K]RÃ۞+GȐ+&VeC^kD*ocjuop`ή ;G/ [_~ҠH@
-jB r8/Dˆʤ*tnXQUԣl^,f1╢ |[C+nэyz_})Vwh}~ aɓ;?N\)wznes' [/f%y+HY GP}V0̨Em}شKu'/DA#.8xX!e<BX{ېW1'UKFqv4* AD05("nu, 5-VT8joA+$3y|wX{V&%w+HY( އ'4820c^B8R#yD {!u@g9
-PdvBdž7(][+)9RouZT?"wdɓTÊoG*2 5!hۤ3zCFcE` 'A Ef %VKF+GF'j?Rۤf𨹩AumM $rȋ RWro,1BP 1U+6Xc2`jQgEj↰4Tp8$ۭw(iel+{IΑV(m=M0ݿ?+R'VGȒ'?tߎtYx:G5=-8sYKYZ* j!:BY-Kq޼trξ{0է~-fWY:y:B<I5vd `j9VcyG@kU]#:BYtr%Kqn]#(A0ݫmߛfԀPM3ֶ+HLH JH[ 1<H-,>L?E>.5J
-gf]</̬SCh:n1DX$հ$]<zFP:1۶+"ϼ׆
-RJެ~#OR ~Al~CUĐگ9CbR=WBJʽ>-*BDhIS׋1JURT0wU޼!,`[Ű͚
-qr¢UEp搫*)cND_~)8կm!/b,
-JPB*% GY꒪`}CX {_E澳fF,7 J#HmD![9K]RÃ۞+G/lO0Gk|+9
-
-Ab2Vut`<XPz;WN I-2dr;}G$dx@H ƐɰzDŽF{G(FAJ3Q_F!r!B#(iD]"')>>Ƒ
-%=g01]?dAgZdYχv`$gߎ Id]uҁ # fx z/sFO .TMlo"yf !C.#NJ"|QХP8<8/xXxyu6E/FWb9dVZw%1b-M('jwQ֒YSVwag3m0֠x_Jop1<pp˅2]K. "x&b(Ԅh!1c-UO3 fTT-t1YW#n95^}K` -T$ 2?$fb;p6Z}b5a(X̌K2ᐙ!T ^fF%1C۪a6o+ȶhP͡6{ ɣ$B:D^|AvRBیU{*X^4F,d_0ct㙴5!3C3$c$C;)!KcfLf40|A^I/
-JR`bx^lvP2
-l`׎>GZN9V~=qAOhyFhBI]$Qbh'%DH~@/ _mFC;XHF)˸ C|3d(B+Kys<pGۛl1cŸOPf=d "-cQh߶͇^L[0&ńkVNW
-Ԅ&1]<Y_[soo]nX]<c b03`iPLSgJE!;aVzH-p*Dl~R"6 j5Qΐ$Cl| >w XB,(ZKӅƑ{
-ˆG 1hh jې |iUuCJH=-fvD<QjH)xZ!M0.
-dhh]0Gj \q. s ׿r[ ߩ10homOߘ +KHFxL-iW6_@d;io1YU}XӸCԓ-)
-cUz٭HrQ ҾͿ!WX ,ӻ2k Ȭi hLUd9rыW^]7c@N1|Dm`1pwPEY=׉oEzۥdxzٯ!k, Ff8L&s0vF4@!
- IAC`vaa&_źS`{RQl+8
-tt4LKPcRW R/V"ʚwAJ5io,y3暠dmim1UiWu)!J @!_BcV
-90ɻji`a&_źS`ו`mo<}L՛B``\B9)ʖ[-$V<}oGV t Cm:)`f齃kr$pCn6هdزfqf\LytܵO
-%3Ķ9hq6_sDו`q4-ו1{S r<6uCRO Rw<(dKƾG*@s†Ͼ,
-5yd RRJ)pu[w˕,q^t2a d<(t8-Hd2 C|MZveȳ<Q1cvo>`4Idφb j.m5"գ4*
-gP1ua7>`5`$|J9tHM$}wB"j#0?R`[rüT},*f #<nbɒ;#%♆XD'`ۇr(Gۆ:yT,*QeN_ j=A^)`CchHf6򝑳ߟp\_ޖ`c!ߝO8(s
-:)l(M = z`/TgePBSXfhLc,H0$ё9$X86WkX& |u~P18"/ Ǹ_JxK09-c[O" n Z<2SSPndbMb'U2Ѱd]絰TMd ՞&oe$D'y:H0RL:UkK{u#ߞ"wxCU*_J;jaeHm-qvzUB~ClITR
-6TGj@
-9P l2ǥw%ESMⵄ>d@?BF֜$>% ! D:&nUybJBPec"U68
-1͋6"r
-KkI\aLђDo+)\((gu}`44z@R>=}ӛ?=r7=<3o_A~|||:O??=zo^?|zz?}=orrBno~<|~?^><c/q˧/o~dܟ?GRE~^ _o?}8 .(Z/;U҆륞a2"aY9aPvֻt[i=%8ɣ)']&AQ3U&,*Hѵ/DML9eGУ(.:9BTt8bT7_1wdk6|&-
-y.T*d -ߡQF a{MbW4*zE;KQxkh_]:ԹT2l646L%: )BcN(*_<Z.*GV:sȰ6M(
-ּ2M;FAs@Ў0&2'*h HY$[ -"EEԨ+5]𦘜uKclCe…<GR-`7$SE,U=2L.P#NC;a]>/cKkP'('@4B񨵥wv̄Lɭ3 :BlT>UC*YAC-x'๺4gl Uv iT(&\Ǻތi2[4ȑ`bEHF-îPGC-x')JmKrd8¨A[ez%E5 q`S s@wjήIqޝ`gJE;xx6F+Ve (-5$lpPjycm,<=ֳ`jQ;5SDۏ%w %D.c Uw {O_9Hm:u.T̷ C] j^ȓ OC-G
-Z9wj[i(Z{[[i gcLX5PܕFhep嫨 C @2VU&UHZRj{Ofɢd׻aZ6%b P- D<Gj i-yj[i:Z|[$
-C{B RqaYmi;b9T}we1Zy:*\+SBd0ZBv#: V*5
->RAueE@c m
-W{ANܖ֮9E-R"3lY䈽ޮQ<!m
-mF΀Է8_,m(6*ܚh4>$cw
-{pnh+I2"Xko/-ĥ&WIiM4*fO0pF]^.HYd<wQ5d<rlo$5R`M K WOʆ"8Y+]D|U~ <_wI{n,Z9EH퐀ء\fEkrIfޓ([86d:œ`jשLnVdzlVzden hkAd‹+X"cP5>k n,$`
-Us:%Z.KFS%R,j5ܴ'lb(O#5L[UVF¨a3Pͤ @eCHk=L"t ^50@d'6T+lc^$zAtcp&JQ
-⡪^>>1'4ۧPF6 'TE=7A#v8HnAJ&*Xj$-,Ͳ]}7ٯJJum-z Ž]L|tgI{UkUq dEQ#ΜOTy;JA;e)iUaͱ.jf&Hy=MØ Ck Kt˸U_qQ)I+\ ιZ&[nB9m4 Vעl6anj$;yhf凙ؒFW4dhQBy*Yk ޢlTnCp*YY/$ZQ2
-Uo޻/kd]BǸ+{JxUPF
-jIXqjj8,j*S\Y|5j#`rgr<I]1oMXxx<xEʓjArWTu٢~ko &fxxr,)l:6E[N)Ǔؕ
- vzl
--މY2oV8V
-5 {^n.`y+У!, utt u,|dҐ~Cqw~,,DYHeGfI2kֱ.`qa~w\$O!/wTXGC⽸_K̈e37[t,zPY82{qnGG+7fk<nB¢W]Eq/I-މ5hE,QF
-6
-ЖR/{&NTgF]֞0^M"B8G^Ȫ<*y΅y?;n0F!1HSSͻ҆W_#tU0;7MO>?o?1M<Uc?Y WGoTg3pp>}mS~?(HĦ v-yȤwR0P#&Yz+솔+`P΅x$nldԷ7tY7Bxv{hM/FS4q]Wɿ:M>5qڞM! ('
-;f\fǷ8{`Ңg|#PDKt<4vP~1q괌J)r=Ktz27*k\zbz`nӖMw2{QIVz=.lnڹRVpKW܊wz]GSܣ<yo[|8 ,
-K^odYw(y蜔U¦XG-;WvyDbtM1ea5!tu')gf4jG/(N:QΏ {/,6Uk35MV_ߊLͤUP/4Kt?\?\?\_ޮ,)oa{$3U9YKO9<jVNb&zcÅlF}1 Qpo>ݟ<A+e1ژnK%ޜKoP^ 3T'Rȓ^biorhJ&JU۱|Qc1^om&/ќ"VDt%w^R-Diy57@>"9ʶS #$%ԃhe{Zeoz)n;b'L=S^UC/6U
-d]ƨQ4ə|ty:M**Ea LRW@O?%%d\VB Ppo'ο6֧ǨU{W׬c8֥ ,8دZchRyɥ.N8o1x)ӽM ҝbhh_Q%vPM{[Fyc9௏mO܈HSCVn,W$@{ƙ*k0Ƽ(ѩX
-Ԃ iC c]Www`ϓҗz0lpg,-EuBL}F0<d3~^RbJk$wrE#נR4TQ:f
-$-zС F˾j!o&qC_;-1kBDbG `dZƌ6Uh?^lŧT\NWwEm~|C|+.m Рvxޒ=Sљ47g?qcn}.+A6Q&+d+gn}P+,cAJSc88Qlux n[qxĔ3뷸_/㥠J{z7T<1v^ z̚yFcP}*ƇoŬK<<_ЦQi<C|rԧz w덒l1BMz~4zTz$=qxٰQZ۝]hG2YAW\?DJߘxr|T~hpQ7IOFKhEl~%;-_b~Řs:V,BsK[٧[nfK相gHY$)K֩dIֿ~r%134hT#4$̬Rd<cO0۟ Ƈ/" 7DĮE"Sp췡urp==3@>wAպBwk7~qGU 6Hi(N\LA J\h ?HQNS]@87!a2*KbS h[na(1 %AxbhTXc(kvBJ[ٟZۧ ifНc͕I/}NИu]舔;0^025* 65
-Q֊S]6yBiFdJJI+dƷZ|'1n&q=xmL42sdl8hr%SrR 7v0ˁ.Zn'x
-e4F0j xa(;Rv>Bu^ĤQi"g έ0n]l̴ي'luЊ%8vd>g/L[+w4{7qzӄ}Bռb0TO_SM] luseds78Z`35}hbmk G1n*(O3s{(χIf<^JX
-#&@¨ҷTSݑM](Jܑq6,e/(LZL)'y
-F@C'_-+G jiozn3AdI ZoV $}NDdfܚAक़鼙<qbŋ[[ !Fw q (?W#<=&
-A` . x+48W5oUļ``Y.bp7&H1A"ܽn'x!j IwS(P? GIݬDL
-,Ye>3z(m`ttvKRTn\{*[H R=7* ӻH`CDκՁ^OgY4(a/n  r}T|i#H`Hs H`d0ZQV9RBgC.t2<PSNIFo)ŁR*΂Sx ]},peM"ĭ6Kb5\BRd-T p? B(c\ Op@i.~AGB"T\X&n_`<a58&e5:PPY!~#(e(JL^JqP7:!#obR\nc駳 \!N
-њ`̄8tG &l2:¬$S>e05Py3CaqWi<K\:cﰯ=w'ј$w
-vh\ 0}\\ץeĞp F5Fq T>1 2H-h4YسE>"oܘ{ڃF+x9K'(JEn@n'jqZ)BBcCjd;
-h>\Q K~(C qp(^}02'AmXM! 9?^/r\ixez0X"͘qb&D[lbvA9i  GU+%uZO]JFTv;mV+ۢW@=/ȶ;<>2ʅўI1z1Y'1&gLji&g0WUvj?3[)TS}u.NP_A,f3-0E,j_uMSҵ;5'vfX|v5q&9lH qZ7!0
-ƮI]!5.\բ䌤QɪWi嵱-+^I;;TΧI ,i
-m} K=,5*iM"Z 9:Bٱw4itօz~(ŏ>F J=i0&~ƍ6+͸Q݅:mM?C/Ј\#-*r3nHX(uŒg<F{fcAl :QY1R6@>SO,eۈ.4!)1 t*5K!:͘8y "OM2BJMbXQEf5T).nL8(h:y0aJeP?.iw>E0(/,EQM#cqɧqоăsdA$IozM
-dfJhDo٭Jp'lmt~V+ml|x3[5iu>HTuK%Up6t;uC".fhspPBhPV=zpf(}+3J,,f^홓΢&0Ԗщ1e;X^`̝iF/G,g]%90_0Hm)=uM2tG+). u
-`'s7c[K*vlCօ&XBuUU^u@+tکʪйt˹86cݧ|^'
-Q^?KނnPԆۖ-*xnx%x_KqKɂׇ xfxc>ozCoy04Z_ydUmj=m߸U-JDy2j 6|)^
-UdDT<{?WvmLzXվHـAz82diA_%ʶ^.Z'6C%Tg~|NV :um}$=#!%[q zA[ fze
-Bg&5^3 Xy@_厾ZO_)9h?%bF0|k}kc1zX3h5kd#A;҃A*j뵄R[ib.u
-n5XbWv,hҿ%~Y=f4ZYgĆz|8ѷӕ>f> gֶ^f8Jjx bpz]
-BymM侕a;3XQh`I]>K3ŀ襸JI鹞]zvj Kw~ *l)k瀭q:9 5N;A#`WAI<x@;%MD]lZq
-O݊/oxаNg |3.!%qeDt|r>`R*A(2!PN;ř?Kr [j]X',ymׂߑ[bc0_EMMw]9ymGAj;`Ql};`
-sjQq6c-pME 󢼿*]En";P Krmc5 o4e3KB V:6aYlP=Ʃ< J(+Wŕ< $ у|<$`-4%Рn3|]*P򩛏/T@%&o`|[oylɀ*9&jz]@v06[wqk,* d&@B/֞
-V`$ :U,uɿ!u+9b3I;k_..<>< +Xr&Q cf7hIr}ubZ-Ou.р ;kXOIJ%ʼnoNKI_ǶJs5i@khZ{Jh%%2MS>z3-x*6+
-sQimw0On0qɤUjՖVR{ٿLۯz ruI.3`plNMy >-N=0`}j[TZA3i1foLo:ne]2Iqk'c\cQȒ4ʉ> \?eteƛCn![uxkİQq9;$W ͢m}Mn)jU豝>gg}p@nnVW-tgO
-6R6pVSi-MCN:h<7mɀx꓁wW}'3VKԬ!Bnt49CRr& +f8t/X  Ǧq=!U]ر`
-LCJKeuD"׭tF[ GLx {YݿlvhE0)$bm5ٰyPc&ɑw`
-3u`?y )5Հf8݋T z"-DwD BaD1
-'X?σx=;>obMJFvFtjxwm, oj1aXÒO+߆ݡ3Z.=8v$IQf#3XOHD~ل@!\>!զ+IjI+' HäAE ғyr%zao:ARk%`u~ .eG1``b^F, A1f 1g{}ƷHrM-FX#[?f<-1)B>ZZ7;m1lGچ^. &L. J7=$B`Vؓs#`u49RE6I;rh`aA-ͫ^ ڨ\OӗĺZKlb@RJ}JD=$N$! :RPPJwd
-'g%wV
-4^HV/AZM"(AЫRYM8GJ1\zdyXU*%š!mR[MBݍ1s[ĚejXY"5ygͯ͜O欲,dO
-tw>/G"<|aodC) 4"AjnAdlJzyᕡP<7mE"]}nI=ںNQ=Vs{usb|U4үv0%U9fhweU*
- xq%$Ay} ?Gc@qL{G%7,S`yHFM@/bs69o.e]_($
-9jtO|n`/gzFFz4?c\@5ƒ1gֺ~rC\(z7xxX9"n $#HҒ<S]蘽Ft5 ڸз(6aYV/Ҥ] *xXJy^@[bsp̩9eTjSkX1Re!7[.ȨY}:U֪a_:QC㢜S S9:J[g(6)G.]%I8u<A3<M֦hf0_GE.J B08A:a4 a[۪& C͍ko~zeAhttr]2COȶ^f=xRLYHU8` *B'F}cej*nf>7کqF> ͅƨʍlЇAڅ np4p,9ר n[v$ٳˑD4cFfd Ve֙#jGTrs5 i2!B4y?R<&bkIB_
-Ⳓ+ne Y+Ց9076d]R} 4NЂ(E mzn&To t0Ƶ9TTBŁ%(1b6@CSopzW?}K!FSuM3X&i`'Ё
-Y1"~cyO z` G'a6%5eȯ2 ; UR+`'׆?q}
-1& [@𻅹LvD 3Z(us.u%~\"otM4 Y jE(ahG
- oD2֧?38NB
-Қ+ꟸBc@CH$DNhҲ|ap]1^g>WN] Jݨu~ QJWE9 ɒeBVA1^i{ېpOE?r77ԪE̟TO*ÇrNjޟAt+4`zh?Q}'K°)`!Tܸؒ^
-EHdAOc>:UiIAogu ߳ɩ aᐡڄRh"ha \BOAAs 0͵0#%kM[
-TkHTU޵64Z`3N^y KF[En:My>~zORR~m lkg-{н_ ,@HB=4'kxJˡ4oU AU"<;Y,tEӭ\v.ܴ|ƈٚb_$JFEW ȀF{ݛďAk!^.|",'Rx/?;"k
-QZ݌s;i<neӥ>88hl$ r5
-Gk҈ȪC0[z88yʬ֍tg ȡk]VOadq SC 9:llсrkZ5quM
--C cp` ֮9`نx$1qL3i)'r8 NuTxR1!`C_@&3QmPLKV!iх6Жu:
-^\)7Oi18Z6WuݞԀZGz?G@'\$Guև9DZqx@
-)>vd5,ƩjҐL%q'%%HRa26uO/قS)ݷS4x"`V,P J
-<D?Wj^*8*7O "H8<AK? z`e
-|*jC.@$MΓeZ֧b
-82gzR(AL@ƭ ƤU evK.C1U,= $Tm&:5صiӄB CH8rvA6R6ZE%O!UΏM]+eń
-S)=ỳ5Hp zh 5HgB!CP>K 4SX)ס?n29'm䓋U<i a3̮P )15sw~& <8q
-Y8kID[CM69,I/ܵw<ToA[+Z4#CǤu8rP^y|ˢFn{+8?*24^ X(YSHI$`;w5UHWlݵlD_ts5oRjߞJ}WiiQĨs+%E{H֥֊jtVi@ @7tFǀW i悺Tn=/4OzÄ6˫
- _[2́y}ko7)#6X1Xaz8Ah>Is |KouA}e~>p1Fō
-V<Vy"haEpW{++/F{FKV"_+r֫oyxdN->ɡƯ;dU7hNbXTv9ه& &fi'O4,3PȪ[ )2(Rmto3U{C(8hxCEϻ*Hq.oogX5*";ݸ)E I:GT`Z{1Oq(
-(x n%U/;n:ۡ{G<oS0n>aӣΆQ%C?~A/yw$6}DA!_в 0Exh(f0hrc JWZhh@J``df=_×j!-;
-l xneB F]ifS4j{18uiRkiډȭ|yB
-mgfs9S} ;)Pr4 % Ck)G;(1\R'/ G'P5Iaw+ZHz\Xқec]Az-Ccკh |yFà'AJtNЛ C?+'Mmփr=f6Lp'[̙*<sF`ݱ`5<&|Ƣ~`;.qbsio6 LZ:G0ϴ:ʵVZzQV QGâѭֈKhÝԡ
--, ] wJ}VݖYO󽒌Cս7>Z`DqC}Om
-
-UТ
-慌ji8b2>hB#hEѭKHKn,9; XX,V
-<?xpacket begin='' id='W5M0MpCehiHzreSzNTczkc9d' bytes='818'?>
-
-<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#'
- xmlns:iX='http://ns.adobe.com/iX/1.0/'>
-
- <rdf:Description about=''
- xmlns='http://ns.adobe.com/pdf/1.3/'
- xmlns:pdf='http://ns.adobe.com/pdf/1.3/'>
- <pdf:CreationDate>2009-03-26T23:34:42Z</pdf:CreationDate>
- <pdf:ModDate>2009-06-04T20:32:38-03:00</pdf:ModDate>
- </rdf:Description>
-
- <rdf:Description about=''
- xmlns='http://ns.adobe.com/xap/1.0/'
- xmlns:xap='http://ns.adobe.com/xap/1.0/'>
- <xap:CreateDate>2009-03-26T23:34:42Z</xap:CreateDate>
- <xap:ModifyDate>2009-06-04T20:32:38-03:00</xap:ModifyDate>
- <xap:CreatorTool>Adobe Illustrator 10</xap:CreatorTool>
- <xap:MetadataDate>2009-06-04T20:32:38-03:00</xap:MetadataDate>
- </rdf:Description>
-
-</rdf:RDF>
-<?xpacket end='r'?> endstream endobj xref 0 232 0000000004 65535 f 0000000016 00000 n 0000000088 00000 n 0000000152 00000 n 0000000007 00002 f 0000000311 00000 n 0000000695 00001 n 0000000008 00001 f 0000000009 00001 f 0000000010 00001 f 0000000011 00001 f 0000000012 00001 f 0000000013 00001 f 0000000014 00001 f 0000000015 00001 f 0000000016 00001 f 0000000017 00001 f 0000000018 00001 f 0000000019 00001 f 0000000020 00001 f 0000000021 00001 f 0000000022 00001 f 0000000023 00001 f 0000000024 00001 f 0000000025 00001 f 0000000026 00001 f 0000000027 00001 f 0000000028 00001 f 0000000029 00001 f 0000000030 00001 f 0000000031 00001 f 0000000032 00001 f 0000000033 00001 f 0000000034 00001 f 0000000035 00001 f 0000000036 00001 f 0000000037 00001 f 0000000038 00001 f 0000000039 00001 f 0000000040 00001 f 0000000041 00001 f 0000000073 00001 f 0000001867 00001 n 0000027884 00001 n 0000044815 00001 n 0000044838 00001 n 0000062901 00001 n 0000062924 00001 n 0000081994 00001 n 0000082017 00001 n 0000102775 00001 n 0000102798 00001 n 0000121194 00001 n 0000121217 00001 n 0000125144 00001 n 0000125166 00001 n 0000134888 00001 n 0000134910 00001 n 0000157864 00001 n 0000157887 00001 n 0000180753 00001 n 0000180776 00001 n 0000191763 00001 n 0000191786 00001 n 0000206420 00001 n 0000206443 00001 n 0000224919 00001 n 0000224942 00001 n 0000244851 00001 n 0000244874 00001 n 0000247034 00001 n 0000247056 00001 n 0000247084 00001 n 0000000074 00002 f 0000000080 00002 f 0000247113 00001 n 0000247237 00001 n 0000247260 00001 n 0000269115 00001 n 0000269143 00001 n 0000000081 00001 f 0000000082 00001 f 0000000083 00001 f 0000000084 00001 f 0000000085 00001 f 0000000086 00001 f 0000000087 00001 f 0000000088 00001 f 0000000089 00001 f 0000000090 00001 f 0000000091 00001 f 0000000092 00001 f 0000000093 00001 f 0000000094 00001 f 0000000095 00001 f 0000000096 00001 f 0000000097 00001 f 0000000098 00001 f 0000000099 00001 f 0000000100 00001 f 0000000101 00001 f 0000000102 00001 f 0000000103 00001 f 0000000104 00001 f 0000000105 00001 f 0000000106 00001 f 0000000107 00001 f 0000000108 00001 f 0000000109 00001 f 0000000110 00001 f 0000000111 00001 f 0000000112 00001 f 0000000113 00001 f 0000000114 00001 f 0000000115 00001 f 0000000116 00001 f 0000000117 00001 f 0000000118 00001 f 0000000119 00001 f 0000000120 00001 f 0000000121 00001 f 0000000122 00001 f 0000000123 00001 f 0000000124 00001 f 0000000125 00001 f 0000000126 00001 f 0000000127 00001 f 0000000128 00001 f 0000000129 00001 f 0000000130 00001 f 0000000131 00001 f 0000000134 00001 f 0000269172 00001 n 0000269255 00001 n 0000000135 00001 f 0000000136 00001 f 0000000137 00001 f 0000000138 00001 f 0000000139 00001 f 0000000140 00001 f 0000000141 00001 f 0000000142 00001 f 0000000143 00001 f 0000000144 00001 f 0000000145 00001 f 0000000146 00001 f 0000000147 00001 f 0000000148 00001 f 0000000149 00001 f 0000000150 00001 f 0000000151 00001 f 0000000152 00001 f 0000000153 00001 f 0000000154 00001 f 0000000155 00001 f 0000000156 00001 f 0000000157 00001 f 0000000158 00001 f 0000000159 00001 f 0000000160 00001 f 0000000161 00001 f 0000000162 00001 f 0000000163 00001 f 0000000164 00001 f 0000000165 00001 f 0000000166 00001 f 0000000167 00001 f 0000000168 00001 f 0000000169 00001 f 0000000170 00001 f 0000000171 00001 f 0000000172 00001 f 0000000173 00001 f 0000000174 00001 f 0000000000 00001 f 0000269742 00000 n 0000270034 00000 n 0000270057 00000 n 0000275448 00000 n 0000275477 00000 n 0000275507 00000 n 0000275529 00000 n 0000275559 00000 n 0000275588 00000 n 0000275665 00000 n 0000276779 00000 n 0000276801 00000 n 0000276830 00000 n 0000276860 00000 n 0000276937 00000 n 0000277845 00000 n 0000277868 00000 n 0000277898 00000 n 0000277927 00000 n 0000278004 00000 n 0000279355 00000 n 0000279378 00000 n 0000279408 00000 n 0000279437 00000 n 0000279514 00000 n 0000281366 00000 n 0000281389 00000 n 0000281419 00000 n 0000281448 00000 n 0000281525 00000 n 0000283057 00000 n 0000283080 00000 n 0000283110 00000 n 0000283139 00000 n 0000283216 00000 n 0000284949 00000 n 0000284972 00000 n 0000285002 00000 n 0000285031 00000 n 0000285108 00000 n 0000287184 00000 n 0000287207 00000 n 0000287237 00000 n 0000287266 00000 n 0000287343 00000 n 0000288799 00000 n 0000288822 00000 n 0000288852 00000 n 0000288881 00000 n 0000288958 00000 n 0000290195 00000 n 0000290281 00000 n 0000290374 00000 n 0000299105 00000 n 0000299128 00000 n 0000345339 00000 n 0000345363 00000 n trailer << /Size 232 /Info 3 0 R /Root 1 0 R /ID[<6a17d79a8be115983b722b1d636eadd6><e3866afe07475b75a1a291c4923daf55>] >> startxref 346266 %%EOF \ No newline at end of file
diff --git a/resources/QuinTeTi.svg b/resources/QuinTeTi.svg
deleted file mode 100644
index 31ffe4e..0000000
--- a/resources/QuinTeTi.svg
+++ /dev/null
@@ -1,2611 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Generator: Adobe Illustrator 10, SVG Export Plug-In . SVG Version: 3.0.0 Build 76) -->
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
- width="1203"
- height="901"
- viewBox="0 0 1200 825"
- overflow="visible"
- enable-background="new -0.142 0 1203 901"
- xml:space="preserve"
- id="svg2"
- sodipodi:version="0.32"
- inkscape:version="0.46"
- sodipodi:docname="QuinTeTi.svg"
- inkscape:output_extension="org.inkscape.output.svg.inkscape"
- version="1.0"
- style="overflow:visible"><metadata
- id="metadata1281"><rdf:RDF><cc:Work
- rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
- id="defs1279"><inkscape:perspective
- sodipodi:type="inkscape:persp3d"
- inkscape:vp_x="0 : 450.5 : 1"
- inkscape:vp_y="0 : 1000 : 0"
- inkscape:vp_z="1203 : 450.5 : 1"
- inkscape:persp3d-origin="601.5 : 300.33333 : 1"
- id="perspective1283" /><inkscape:perspective
- id="perspective3683"
- inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
- inkscape:vp_z="744.09448 : 526.18109 : 1"
- inkscape:vp_y="0 : 1000 : 0"
- inkscape:vp_x="0 : 526.18109 : 1"
- sodipodi:type="inkscape:persp3d" /></defs><sodipodi:namedview
- inkscape:window-height="726"
- inkscape:window-width="1087"
- inkscape:pageshadow="2"
- inkscape:pageopacity="0.0"
- guidetolerance="10.0"
- gridtolerance="10.0"
- objecttolerance="10.0"
- borderopacity="1.0"
- bordercolor="#666666"
- pagecolor="#ffffff"
- id="base"
- showgrid="false"
- inkscape:zoom="0.46300914"
- inkscape:cx="601.5"
- inkscape:cy="453.62596"
- inkscape:window-x="145"
- inkscape:window-y="25"
- inkscape:current-layer="svg2" />
- <g
- id="Layer_4_2_"
- transform="translate(-0.141,0.141)">
- <path
- d="M 1202,859.87656 L 2,859.87656 L 2,-39.123441 L 1202,-39.123441 L 1202,859.87656 z"
- id="path5"
- style="fill:#aeb3a3" />
- <g
- id="g7">
- <g
- id="g9"
- transform="translate(0.142,-39.123441)">
- <path
- d="M 45.046,24.329 C 45.046,33.9 37.288,41.658 27.718,41.658 C 18.147,41.658 10.388,33.9 10.388,24.329 C 10.388,14.759 18.146,7 27.718,7 C 37.288,7 45.046,14.759 45.046,24.329 z"
- id="path11"
- style="fill:#c2c2b2" />
- <path
- d="M 97.212,24.329 C 97.212,33.9 89.454,41.658 79.884,41.658 C 70.314,41.658 62.554,33.9 62.554,24.329 C 62.554,14.759 70.314,7 79.884,7 C 89.454,7 97.212,14.759 97.212,24.329 z"
- id="path13"
- style="fill:#c2c2b2" />
- <path
- d="M 149.379,24.329 C 149.379,33.9 141.621,41.658 132.05,41.658 C 122.48,41.658 114.721,33.9 114.721,24.329 C 114.721,14.759 122.48,7 132.05,7 C 141.621,7 149.379,14.759 149.379,24.329 z"
- id="path15"
- style="fill:#c2c2b2" />
- <path
- d="M 201.546,24.329 C 201.546,33.9 193.788,41.658 184.217,41.658 C 174.646,41.658 166.888,33.9 166.888,24.329 C 166.888,14.759 174.646,7 184.217,7 C 193.788,7 201.546,14.759 201.546,24.329 z"
- id="path17"
- style="fill:#c2c2b2" />
- <path
- d="M 253.712,24.329 C 253.712,33.9 245.954,41.658 236.384,41.658 C 226.813,41.658 219.054,33.9 219.054,24.329 C 219.054,14.759 226.813,7 236.384,7 C 245.954,7 253.712,14.759 253.712,24.329 z"
- id="path19"
- style="fill:#c2c2b2" />
- <path
- d="M 305.879,24.329 C 305.879,33.9 298.12,41.658 288.55,41.658 C 278.98,41.658 271.221,33.9 271.221,24.329 C 271.221,14.759 278.98,7 288.55,7 C 298.12,7 305.879,14.759 305.879,24.329 z"
- id="path21"
- style="fill:#c2c2b2" />
- <path
- d="M 358.046,24.329 C 358.046,33.9 350.287,41.658 340.717,41.658 C 331.146,41.658 323.388,33.9 323.388,24.329 C 323.388,14.759 331.146,7 340.717,7 C 350.287,7 358.046,14.759 358.046,24.329 z"
- id="path23"
- style="fill:#c2c2b2" />
- <path
- d="M 410.212,24.329 C 410.212,33.9 402.454,41.658 392.884,41.658 C 383.313,41.658 375.554,33.9 375.554,24.329 C 375.554,14.759 383.313,7 392.884,7 C 402.454,7 410.212,14.759 410.212,24.329 z"
- id="path25"
- style="fill:#c2c2b2" />
- <path
- d="M 462.378,24.329 C 462.378,33.9 454.62,41.658 445.05,41.658 C 435.48,41.658 427.72,33.9 427.72,24.329 C 427.72,14.759 435.48,7 445.05,7 C 454.62,7 462.378,14.759 462.378,24.329 z"
- id="path27"
- style="fill:#c2c2b2" />
- <path
- d="M 514.545,24.329 C 514.545,33.9 506.787,41.658 497.216,41.658 C 487.646,41.658 479.887,33.9 479.887,24.329 C 479.887,14.759 487.646,7 497.216,7 C 506.787,7 514.545,14.759 514.545,24.329 z"
- id="path29"
- style="fill:#c2c2b2" />
- <path
- d="M 566.712,24.329 C 566.712,33.9 558.954,41.658 549.384,41.658 C 539.812,41.658 532.054,33.9 532.054,24.329 C 532.054,14.759 539.812,7 549.384,7 C 558.954,7 566.712,14.759 566.712,24.329 z"
- id="path31"
- style="fill:#c2c2b2" />
- <path
- d="M 618.877,24.329 C 618.877,33.9 611.119,41.658 601.549,41.658 C 591.977,41.658 584.219,33.9 584.219,24.329 C 584.219,14.759 591.977,7 601.549,7 C 611.12,7 618.877,14.759 618.877,24.329 z"
- id="path33"
- style="fill:#c2c2b2" />
- <path
- d="M 671.043,24.329 C 671.043,33.9 663.285,41.658 653.715,41.658 C 644.143,41.658 636.385,33.9 636.385,24.329 C 636.385,14.759 644.143,7 653.715,7 C 663.286,7 671.043,14.759 671.043,24.329 z"
- id="path35"
- style="fill:#c2c2b2" />
- <path
- d="M 723.209,24.329 C 723.209,33.9 715.451,41.658 705.881,41.658 C 696.309,41.658 688.553,33.9 688.553,24.329 C 688.553,14.759 696.309,7 705.881,7 C 715.452,7 723.209,14.759 723.209,24.329 z"
- id="path37"
- style="fill:#c2c2b2" />
- <path
- d="M 775.377,24.329 C 775.377,33.9 767.617,41.658 758.047,41.658 C 748.477,41.658 740.719,33.9 740.719,24.329 C 740.719,14.759 748.477,7 758.047,7 C 767.617,7 775.377,14.759 775.377,24.329 z"
- id="path39"
- style="fill:#c2c2b2" />
- <path
- d="M 827.542,24.329 C 827.542,33.9 819.784,41.658 810.214,41.658 C 800.644,41.658 792.886,33.9 792.886,24.329 C 792.886,14.759 800.644,7 810.214,7 C 819.784,7 827.542,14.759 827.542,24.329 z"
- id="path41"
- style="fill:#c2c2b2" />
- <path
- d="M 879.709,24.329 C 879.709,33.9 871.949,41.658 862.381,41.658 C 852.809,41.658 845.051,33.9 845.051,24.329 C 845.051,14.759 852.809,7 862.381,7 C 871.95,7 879.709,14.759 879.709,24.329 z"
- id="path43"
- style="fill:#c2c2b2" />
- <path
- d="M 931.875,24.329 C 931.875,33.9 924.115,41.658 914.547,41.658 C 904.975,41.658 897.217,33.9 897.217,24.329 C 897.217,14.759 904.975,7 914.547,7 C 924.116,7 931.875,14.759 931.875,24.329 z"
- id="path45"
- style="fill:#c2c2b2" />
- <path
- d="M 984.042,24.329 C 984.042,33.9 976.284,41.658 966.714,41.658 C 957.142,41.658 949.384,33.9 949.384,24.329 C 949.384,14.759 957.142,7 966.714,7 C 976.284,7 984.042,14.759 984.042,24.329 z"
- id="path47"
- style="fill:#c2c2b2" />
- <path
- d="M 1036.208,24.329 C 1036.208,33.9 1028.448,41.658 1018.88,41.658 C 1009.308,41.658 1001.55,33.9 1001.55,24.329 C 1001.55,14.759 1009.308,7 1018.88,7 C 1028.448,7 1036.208,14.759 1036.208,24.329 z"
- id="path49"
- style="fill:#c2c2b2" />
- <path
- d="M 1088.374,24.329 C 1088.374,33.9 1080.616,41.658 1071.046,41.658 C 1061.474,41.658 1053.716,33.9 1053.716,24.329 C 1053.716,14.759 1061.474,7 1071.046,7 C 1080.616,7 1088.374,14.759 1088.374,24.329 z"
- id="path51"
- style="fill:#c2c2b2" />
- <path
- d="M 1140.54,24.329 C 1140.54,33.9 1132.782,41.658 1123.212,41.658 C 1113.64,41.658 1105.882,33.9 1105.882,24.329 C 1105.882,14.759 1113.64,7 1123.212,7 C 1132.782,7 1140.54,14.759 1140.54,24.329 z"
- id="path53"
- style="fill:#c2c2b2" />
- <path
- d="M 1192.706,24.329 C 1192.706,33.9 1184.948,41.658 1175.378,41.658 C 1165.806,41.658 1158.048,33.9 1158.048,24.329 C 1158.048,14.759 1165.806,7 1175.378,7 C 1184.948,7 1192.706,14.759 1192.706,24.329 z"
- id="path55"
- style="fill:#c2c2b2" />
- </g>
- <g
- id="g57"
- transform="translate(0.142,-39.123441)">
- <path
- d="M 45.046,75.334 C 45.046,84.905 37.288,92.663 27.718,92.663 C 18.147,92.663 10.388,84.905 10.388,75.334 C 10.388,65.764 18.147,58.005 27.718,58.005 C 37.288,58.005 45.046,65.765 45.046,75.334 z"
- id="path59"
- style="fill:#c2c2b2" />
- <path
- d="M 97.212,75.334 C 97.212,84.905 89.454,92.663 79.884,92.663 C 70.314,92.663 62.554,84.905 62.554,75.334 C 62.554,65.764 70.314,58.005 79.884,58.005 C 89.454,58.005 97.212,65.765 97.212,75.334 z"
- id="path61"
- style="fill:#c2c2b2" />
- <path
- d="M 149.379,75.334 C 149.379,84.905 141.621,92.663 132.05,92.663 C 122.48,92.663 114.721,84.905 114.721,75.334 C 114.721,65.764 122.48,58.005 132.05,58.005 C 141.621,58.005 149.379,65.765 149.379,75.334 z"
- id="path63"
- style="fill:#c2c2b2" />
- <path
- d="M 201.546,75.334 C 201.546,84.905 193.788,92.663 184.217,92.663 C 174.646,92.663 166.888,84.905 166.888,75.334 C 166.888,65.764 174.646,58.005 184.217,58.005 C 193.788,58.005 201.546,65.765 201.546,75.334 z"
- id="path65"
- style="fill:#c2c2b2" />
- <path
- d="M 253.712,75.334 C 253.712,84.905 245.954,92.663 236.384,92.663 C 226.813,92.663 219.054,84.905 219.054,75.334 C 219.054,65.764 226.813,58.005 236.384,58.005 C 245.954,58.005 253.712,65.765 253.712,75.334 z"
- id="path67"
- style="fill:#c2c2b2" />
- <path
- d="M 305.879,75.334 C 305.879,84.905 298.12,92.663 288.55,92.663 C 278.98,92.663 271.221,84.905 271.221,75.334 C 271.221,65.764 278.98,58.005 288.55,58.005 C 298.12,58.005 305.879,65.765 305.879,75.334 z"
- id="path69"
- style="fill:#c2c2b2" />
- <path
- d="M 358.046,75.334 C 358.046,84.905 350.287,92.663 340.717,92.663 C 331.146,92.663 323.388,84.905 323.388,75.334 C 323.388,65.764 331.146,58.005 340.717,58.005 C 350.287,58.005 358.046,65.765 358.046,75.334 z"
- id="path71"
- style="fill:#c2c2b2" />
- <path
- d="M 410.212,75.334 C 410.212,84.905 402.454,92.663 392.884,92.663 C 383.313,92.663 375.554,84.905 375.554,75.334 C 375.554,65.764 383.313,58.005 392.884,58.005 C 402.454,58.005 410.212,65.765 410.212,75.334 z"
- id="path73"
- style="fill:#c2c2b2" />
- <path
- d="M 462.378,75.334 C 462.378,84.905 454.62,92.663 445.05,92.663 C 435.48,92.663 427.72,84.905 427.72,75.334 C 427.72,65.764 435.48,58.005 445.05,58.005 C 454.62,58.005 462.378,65.765 462.378,75.334 z"
- id="path75"
- style="fill:#c2c2b2" />
- <path
- d="M 514.545,75.334 C 514.545,84.905 506.787,92.663 497.216,92.663 C 487.646,92.663 479.887,84.905 479.887,75.334 C 479.887,65.764 487.646,58.005 497.216,58.005 C 506.787,58.005 514.545,65.765 514.545,75.334 z"
- id="path77"
- style="fill:#c2c2b2" />
- <path
- d="M 566.712,75.334 C 566.712,84.905 558.954,92.663 549.384,92.663 C 539.812,92.663 532.054,84.905 532.054,75.334 C 532.054,65.764 539.812,58.005 549.384,58.005 C 558.954,58.005 566.712,65.765 566.712,75.334 z"
- id="path79"
- style="fill:#c2c2b2" />
- <path
- d="M 618.877,75.334 C 618.877,84.905 611.119,92.663 601.549,92.663 C 591.977,92.663 584.219,84.905 584.219,75.334 C 584.219,65.764 591.977,58.005 601.549,58.005 C 611.12,58.005 618.877,65.765 618.877,75.334 z"
- id="path81"
- style="fill:#c2c2b2" />
- <path
- d="M 671.043,75.334 C 671.043,84.905 663.285,92.663 653.715,92.663 C 644.143,92.663 636.385,84.905 636.385,75.334 C 636.385,65.764 644.143,58.005 653.715,58.005 C 663.286,58.005 671.043,65.765 671.043,75.334 z"
- id="path83"
- style="fill:#c2c2b2" />
- <path
- d="M 723.209,75.334 C 723.209,84.905 715.451,92.663 705.881,92.663 C 696.309,92.663 688.553,84.905 688.553,75.334 C 688.553,65.764 696.309,58.005 705.881,58.005 C 715.452,58.005 723.209,65.765 723.209,75.334 z"
- id="path85"
- style="fill:#c2c2b2" />
- <path
- d="M 775.377,75.334 C 775.377,84.905 767.617,92.663 758.047,92.663 C 748.477,92.663 740.719,84.905 740.719,75.334 C 740.719,65.764 748.477,58.005 758.047,58.005 C 767.617,58.005 775.377,65.765 775.377,75.334 z"
- id="path87"
- style="fill:#c2c2b2" />
- <path
- d="M 827.542,75.334 C 827.542,84.905 819.784,92.663 810.214,92.663 C 800.644,92.663 792.886,84.905 792.886,75.334 C 792.886,65.764 800.644,58.005 810.214,58.005 C 819.784,58.005 827.542,65.765 827.542,75.334 z"
- id="path89"
- style="fill:#c2c2b2" />
- <path
- d="M 879.709,75.334 C 879.709,84.905 871.949,92.663 862.381,92.663 C 852.809,92.663 845.051,84.905 845.051,75.334 C 845.051,65.764 852.809,58.005 862.381,58.005 C 871.95,58.005 879.709,65.765 879.709,75.334 z"
- id="path91"
- style="fill:#c2c2b2" />
- <path
- d="M 931.875,75.334 C 931.875,84.905 924.115,92.663 914.547,92.663 C 904.975,92.663 897.217,84.905 897.217,75.334 C 897.217,65.764 904.975,58.005 914.547,58.005 C 924.116,58.005 931.875,65.765 931.875,75.334 z"
- id="path93"
- style="fill:#c2c2b2" />
- <path
- d="M 984.042,75.334 C 984.042,84.905 976.284,92.663 966.714,92.663 C 957.142,92.663 949.384,84.905 949.384,75.334 C 949.384,65.764 957.142,58.005 966.714,58.005 C 976.284,58.005 984.042,65.765 984.042,75.334 z"
- id="path95"
- style="fill:#c2c2b2" />
- <path
- d="M 1036.208,75.334 C 1036.208,84.905 1028.448,92.663 1018.88,92.663 C 1009.308,92.663 1001.55,84.905 1001.55,75.334 C 1001.55,65.764 1009.308,58.005 1018.88,58.005 C 1028.448,58.005 1036.208,65.765 1036.208,75.334 z"
- id="path97"
- style="fill:#c2c2b2" />
- <path
- d="M 1088.374,75.334 C 1088.374,84.905 1080.616,92.663 1071.046,92.663 C 1061.474,92.663 1053.716,84.905 1053.716,75.334 C 1053.716,65.764 1061.474,58.005 1071.046,58.005 C 1080.616,58.005 1088.374,65.765 1088.374,75.334 z"
- id="path99"
- style="fill:#c2c2b2" />
- <path
- d="M 1140.54,75.334 C 1140.54,84.905 1132.782,92.663 1123.212,92.663 C 1113.64,92.663 1105.882,84.905 1105.882,75.334 C 1105.882,65.764 1113.64,58.005 1123.212,58.005 C 1132.782,58.005 1140.54,65.765 1140.54,75.334 z"
- id="path101"
- style="fill:#c2c2b2" />
- <path
- d="M 1192.706,75.334 C 1192.706,84.905 1184.948,92.663 1175.378,92.663 C 1165.806,92.663 1158.048,84.905 1158.048,75.334 C 1158.048,65.764 1165.806,58.005 1175.378,58.005 C 1184.948,58.005 1192.706,65.765 1192.706,75.334 z"
- id="path103"
- style="fill:#c2c2b2" />
- </g>
- <g
- id="g105"
- transform="translate(0.142,-39.123441)">
- <path
- d="M 45.046,126.34 C 45.046,135.911 37.288,143.669 27.718,143.669 C 18.147,143.669 10.388,135.911 10.388,126.34 C 10.388,116.77 18.147,109.011 27.718,109.011 C 37.288,109.011 45.046,116.77 45.046,126.34 z"
- id="path107"
- style="fill:#c2c2b2" />
- <path
- d="M 97.212,126.34 C 97.212,135.911 89.454,143.669 79.884,143.669 C 70.314,143.669 62.554,135.911 62.554,126.34 C 62.554,116.77 70.314,109.011 79.884,109.011 C 89.454,109.011 97.212,116.77 97.212,126.34 z"
- id="path109"
- style="fill:#c2c2b2" />
- <path
- d="M 149.379,126.34 C 149.379,135.911 141.621,143.669 132.05,143.669 C 122.48,143.669 114.721,135.911 114.721,126.34 C 114.721,116.77 122.48,109.011 132.05,109.011 C 141.621,109.011 149.379,116.77 149.379,126.34 z"
- id="path111"
- style="fill:#c2c2b2" />
- <path
- d="M 201.546,126.34 C 201.546,135.911 193.788,143.669 184.217,143.669 C 174.646,143.669 166.888,135.911 166.888,126.34 C 166.888,116.77 174.646,109.011 184.217,109.011 C 193.788,109.011 201.546,116.77 201.546,126.34 z"
- id="path113"
- style="fill:#c2c2b2" />
- <path
- d="M 253.712,126.34 C 253.712,135.911 245.954,143.669 236.384,143.669 C 226.813,143.669 219.054,135.911 219.054,126.34 C 219.054,116.77 226.813,109.011 236.384,109.011 C 245.954,109.011 253.712,116.77 253.712,126.34 z"
- id="path115"
- style="fill:#c2c2b2" />
- <path
- d="M 305.879,126.34 C 305.879,135.911 298.12,143.669 288.55,143.669 C 278.98,143.669 271.221,135.911 271.221,126.34 C 271.221,116.77 278.98,109.011 288.55,109.011 C 298.12,109.011 305.879,116.77 305.879,126.34 z"
- id="path117"
- style="fill:#c2c2b2" />
- <path
- d="M 358.046,126.34 C 358.046,135.911 350.287,143.669 340.717,143.669 C 331.146,143.669 323.388,135.911 323.388,126.34 C 323.388,116.77 331.146,109.011 340.717,109.011 C 350.287,109.011 358.046,116.77 358.046,126.34 z"
- id="path119"
- style="fill:#c2c2b2" />
- <path
- d="M 410.212,126.34 C 410.212,135.911 402.454,143.669 392.884,143.669 C 383.313,143.669 375.554,135.911 375.554,126.34 C 375.554,116.77 383.313,109.011 392.884,109.011 C 402.454,109.011 410.212,116.77 410.212,126.34 z"
- id="path121"
- style="fill:#c2c2b2" />
- <path
- d="M 462.378,126.34 C 462.378,135.911 454.62,143.669 445.05,143.669 C 435.48,143.669 427.72,135.911 427.72,126.34 C 427.72,116.77 435.48,109.011 445.05,109.011 C 454.62,109.011 462.378,116.77 462.378,126.34 z"
- id="path123"
- style="fill:#c2c2b2" />
- <path
- d="M 514.545,126.34 C 514.545,135.911 506.787,143.669 497.216,143.669 C 487.646,143.669 479.887,135.911 479.887,126.34 C 479.887,116.77 487.646,109.011 497.216,109.011 C 506.787,109.011 514.545,116.77 514.545,126.34 z"
- id="path125"
- style="fill:#c2c2b2" />
- <path
- d="M 566.712,126.34 C 566.712,135.911 558.954,143.669 549.384,143.669 C 539.812,143.669 532.054,135.911 532.054,126.34 C 532.054,116.77 539.812,109.011 549.384,109.011 C 558.954,109.011 566.712,116.77 566.712,126.34 z"
- id="path127"
- style="fill:#c2c2b2" />
- <path
- d="M 618.877,126.34 C 618.877,135.911 611.119,143.669 601.549,143.669 C 591.977,143.669 584.219,135.911 584.219,126.34 C 584.219,116.77 591.977,109.011 601.549,109.011 C 611.12,109.011 618.877,116.77 618.877,126.34 z"
- id="path129"
- style="fill:#c2c2b2" />
- <path
- d="M 671.043,126.34 C 671.043,135.911 663.285,143.669 653.715,143.669 C 644.143,143.669 636.385,135.911 636.385,126.34 C 636.385,116.77 644.143,109.011 653.715,109.011 C 663.286,109.011 671.043,116.77 671.043,126.34 z"
- id="path131"
- style="fill:#c2c2b2" />
- <path
- d="M 723.209,126.34 C 723.209,135.911 715.451,143.669 705.881,143.669 C 696.309,143.669 688.553,135.911 688.553,126.34 C 688.553,116.77 696.309,109.011 705.881,109.011 C 715.452,109.011 723.209,116.77 723.209,126.34 z"
- id="path133"
- style="fill:#c2c2b2" />
- <path
- d="M 775.377,126.34 C 775.377,135.911 767.617,143.669 758.047,143.669 C 748.477,143.669 740.719,135.911 740.719,126.34 C 740.719,116.77 748.477,109.011 758.047,109.011 C 767.617,109.011 775.377,116.77 775.377,126.34 z"
- id="path135"
- style="fill:#c2c2b2" />
- <path
- d="M 827.542,126.34 C 827.542,135.911 819.784,143.669 810.214,143.669 C 800.644,143.669 792.886,135.911 792.886,126.34 C 792.886,116.77 800.644,109.011 810.214,109.011 C 819.784,109.011 827.542,116.77 827.542,126.34 z"
- id="path137"
- style="fill:#c2c2b2" />
- <path
- d="M 879.709,126.34 C 879.709,135.911 871.949,143.669 862.381,143.669 C 852.809,143.669 845.051,135.911 845.051,126.34 C 845.051,116.77 852.809,109.011 862.381,109.011 C 871.95,109.011 879.709,116.77 879.709,126.34 z"
- id="path139"
- style="fill:#c2c2b2" />
- <path
- d="M 931.875,126.34 C 931.875,135.911 924.115,143.669 914.547,143.669 C 904.975,143.669 897.217,135.911 897.217,126.34 C 897.217,116.77 904.975,109.011 914.547,109.011 C 924.116,109.011 931.875,116.77 931.875,126.34 z"
- id="path141"
- style="fill:#c2c2b2" />
- <path
- d="M 984.042,126.34 C 984.042,135.911 976.284,143.669 966.714,143.669 C 957.142,143.669 949.384,135.911 949.384,126.34 C 949.384,116.77 957.142,109.011 966.714,109.011 C 976.284,109.011 984.042,116.77 984.042,126.34 z"
- id="path143"
- style="fill:#c2c2b2" />
- <path
- d="M 1036.208,126.34 C 1036.208,135.911 1028.448,143.669 1018.88,143.669 C 1009.308,143.669 1001.55,135.911 1001.55,126.34 C 1001.55,116.77 1009.308,109.011 1018.88,109.011 C 1028.448,109.011 1036.208,116.77 1036.208,126.34 z"
- id="path145"
- style="fill:#c2c2b2" />
- <path
- d="M 1088.374,126.34 C 1088.374,135.911 1080.616,143.669 1071.046,143.669 C 1061.474,143.669 1053.716,135.911 1053.716,126.34 C 1053.716,116.77 1061.474,109.011 1071.046,109.011 C 1080.616,109.011 1088.374,116.77 1088.374,126.34 z"
- id="path147"
- style="fill:#c2c2b2" />
- <path
- d="M 1140.54,126.34 C 1140.54,135.911 1132.782,143.669 1123.212,143.669 C 1113.64,143.669 1105.882,135.911 1105.882,126.34 C 1105.882,116.77 1113.64,109.011 1123.212,109.011 C 1132.782,109.011 1140.54,116.77 1140.54,126.34 z"
- id="path149"
- style="fill:#c2c2b2" />
- <path
- d="M 1192.706,126.34 C 1192.706,135.911 1184.948,143.669 1175.378,143.669 C 1165.806,143.669 1158.048,135.911 1158.048,126.34 C 1158.048,116.77 1165.806,109.011 1175.378,109.011 C 1184.948,109.011 1192.706,116.77 1192.706,126.34 z"
- id="path151"
- style="fill:#c2c2b2" />
- </g>
- <g
- id="g153"
- transform="translate(0.142,-39.123441)">
- <path
- d="M 45.046,177.345 C 45.046,186.916 37.288,194.674 27.718,194.674 C 18.147,194.674 10.388,186.916 10.388,177.345 C 10.388,167.775 18.147,160.016 27.718,160.016 C 37.288,160.016 45.046,167.775 45.046,177.345 z"
- id="path155"
- style="fill:#c2c2b2" />
- <path
- d="M 97.212,177.345 C 97.212,186.916 89.454,194.674 79.884,194.674 C 70.314,194.674 62.554,186.916 62.554,177.345 C 62.554,167.775 70.314,160.016 79.884,160.016 C 89.454,160.016 97.212,167.775 97.212,177.345 z"
- id="path157"
- style="fill:#c2c2b2" />
- <path
- d="M 149.379,177.345 C 149.379,186.916 141.621,194.674 132.05,194.674 C 122.48,194.674 114.721,186.916 114.721,177.345 C 114.721,167.775 122.48,160.016 132.05,160.016 C 141.621,160.016 149.379,167.775 149.379,177.345 z"
- id="path159"
- style="fill:#c2c2b2" />
- <path
- d="M 201.546,177.345 C 201.546,186.916 193.788,194.674 184.217,194.674 C 174.646,194.674 166.888,186.916 166.888,177.345 C 166.888,167.775 174.646,160.016 184.217,160.016 C 193.788,160.016 201.546,167.775 201.546,177.345 z"
- id="path161"
- style="fill:#c2c2b2" />
- <path
- d="M 253.712,177.345 C 253.712,186.916 245.954,194.674 236.384,194.674 C 226.813,194.674 219.054,186.916 219.054,177.345 C 219.054,167.775 226.813,160.016 236.384,160.016 C 245.954,160.016 253.712,167.775 253.712,177.345 z"
- id="path163"
- style="fill:#c2c2b2" />
- <path
- d="M 305.879,177.345 C 305.879,186.916 298.12,194.674 288.55,194.674 C 278.98,194.674 271.221,186.916 271.221,177.345 C 271.221,167.775 278.98,160.016 288.55,160.016 C 298.12,160.016 305.879,167.775 305.879,177.345 z"
- id="path165"
- style="fill:#c2c2b2" />
- <path
- d="M 358.046,177.345 C 358.046,186.916 350.287,194.674 340.717,194.674 C 331.146,194.674 323.388,186.916 323.388,177.345 C 323.388,167.775 331.146,160.016 340.717,160.016 C 350.287,160.016 358.046,167.775 358.046,177.345 z"
- id="path167"
- style="fill:#c2c2b2" />
- <path
- d="M 410.212,177.345 C 410.212,186.916 402.454,194.674 392.884,194.674 C 383.313,194.674 375.554,186.916 375.554,177.345 C 375.554,167.775 383.313,160.016 392.884,160.016 C 402.454,160.016 410.212,167.775 410.212,177.345 z"
- id="path169"
- style="fill:#c2c2b2" />
- <path
- d="M 462.378,177.345 C 462.378,186.916 454.62,194.674 445.05,194.674 C 435.48,194.674 427.72,186.916 427.72,177.345 C 427.72,167.775 435.48,160.016 445.05,160.016 C 454.62,160.016 462.378,167.775 462.378,177.345 z"
- id="path171"
- style="fill:#c2c2b2" />
- <path
- d="M 514.545,177.345 C 514.545,186.916 506.787,194.674 497.216,194.674 C 487.646,194.674 479.887,186.916 479.887,177.345 C 479.887,167.775 487.646,160.016 497.216,160.016 C 506.787,160.016 514.545,167.775 514.545,177.345 z"
- id="path173"
- style="fill:#c2c2b2" />
- <path
- d="M 566.712,177.345 C 566.712,186.916 558.954,194.674 549.384,194.674 C 539.812,194.674 532.054,186.916 532.054,177.345 C 532.054,167.775 539.812,160.016 549.384,160.016 C 558.954,160.016 566.712,167.775 566.712,177.345 z"
- id="path175"
- style="fill:#c2c2b2" />
- <path
- d="M 618.877,177.345 C 618.877,186.916 611.119,194.674 601.549,194.674 C 591.977,194.674 584.219,186.916 584.219,177.345 C 584.219,167.775 591.977,160.016 601.549,160.016 C 611.12,160.016 618.877,167.775 618.877,177.345 z"
- id="path177"
- style="fill:#c2c2b2" />
- <path
- d="M 671.043,177.345 C 671.043,186.916 663.285,194.674 653.715,194.674 C 644.143,194.674 636.385,186.916 636.385,177.345 C 636.385,167.775 644.143,160.016 653.715,160.016 C 663.286,160.016 671.043,167.775 671.043,177.345 z"
- id="path179"
- style="fill:#c2c2b2" />
- <path
- d="M 723.209,177.345 C 723.209,186.916 715.451,194.674 705.881,194.674 C 696.309,194.674 688.553,186.916 688.553,177.345 C 688.553,167.775 696.309,160.016 705.881,160.016 C 715.452,160.016 723.209,167.775 723.209,177.345 z"
- id="path181"
- style="fill:#c2c2b2" />
- <path
- d="M 775.377,177.345 C 775.377,186.916 767.617,194.674 758.047,194.674 C 748.477,194.674 740.719,186.916 740.719,177.345 C 740.719,167.775 748.477,160.016 758.047,160.016 C 767.617,160.016 775.377,167.775 775.377,177.345 z"
- id="path183"
- style="fill:#c2c2b2" />
- <path
- d="M 827.542,177.345 C 827.542,186.916 819.784,194.674 810.214,194.674 C 800.644,194.674 792.886,186.916 792.886,177.345 C 792.886,167.775 800.644,160.016 810.214,160.016 C 819.784,160.016 827.542,167.775 827.542,177.345 z"
- id="path185"
- style="fill:#c2c2b2" />
- <path
- d="M 879.709,177.345 C 879.709,186.916 871.949,194.674 862.381,194.674 C 852.809,194.674 845.051,186.916 845.051,177.345 C 845.051,167.775 852.809,160.016 862.381,160.016 C 871.95,160.016 879.709,167.775 879.709,177.345 z"
- id="path187"
- style="fill:#c2c2b2" />
- <path
- d="M 931.875,177.345 C 931.875,186.916 924.115,194.674 914.547,194.674 C 904.975,194.674 897.217,186.916 897.217,177.345 C 897.217,167.775 904.975,160.016 914.547,160.016 C 924.116,160.016 931.875,167.775 931.875,177.345 z"
- id="path189"
- style="fill:#c2c2b2" />
- <path
- d="M 984.042,177.345 C 984.042,186.916 976.284,194.674 966.714,194.674 C 957.142,194.674 949.384,186.916 949.384,177.345 C 949.384,167.775 957.142,160.016 966.714,160.016 C 976.284,160.016 984.042,167.775 984.042,177.345 z"
- id="path191"
- style="fill:#c2c2b2" />
- <path
- d="M 1036.208,177.345 C 1036.208,186.916 1028.448,194.674 1018.88,194.674 C 1009.308,194.674 1001.55,186.916 1001.55,177.345 C 1001.55,167.775 1009.308,160.016 1018.88,160.016 C 1028.448,160.016 1036.208,167.775 1036.208,177.345 z"
- id="path193"
- style="fill:#c2c2b2" />
- <path
- d="M 1088.374,177.345 C 1088.374,186.916 1080.616,194.674 1071.046,194.674 C 1061.474,194.674 1053.716,186.916 1053.716,177.345 C 1053.716,167.775 1061.474,160.016 1071.046,160.016 C 1080.616,160.016 1088.374,167.775 1088.374,177.345 z"
- id="path195"
- style="fill:#c2c2b2" />
- <path
- d="M 1140.54,177.345 C 1140.54,186.916 1132.782,194.674 1123.212,194.674 C 1113.64,194.674 1105.882,186.916 1105.882,177.345 C 1105.882,167.775 1113.64,160.016 1123.212,160.016 C 1132.782,160.016 1140.54,167.775 1140.54,177.345 z"
- id="path197"
- style="fill:#c2c2b2" />
- <path
- d="M 1192.706,177.345 C 1192.706,186.916 1184.948,194.674 1175.378,194.674 C 1165.806,194.674 1158.048,186.916 1158.048,177.345 C 1158.048,167.775 1165.806,160.016 1175.378,160.016 C 1184.948,160.016 1192.706,167.775 1192.706,177.345 z"
- id="path199"
- style="fill:#c2c2b2" />
- </g>
- <g
- id="g201"
- transform="translate(0.142,-39.123441)">
- <path
- d="M 45.046,228.351 C 45.046,237.922 37.288,245.68 27.718,245.68 C 18.147,245.68 10.388,237.922 10.388,228.351 C 10.388,218.781 18.147,211.022 27.718,211.022 C 37.288,211.021 45.046,218.781 45.046,228.351 z"
- id="path203"
- style="fill:#c2c2b2" />
- <path
- d="M 97.212,228.351 C 97.212,237.922 89.454,245.68 79.884,245.68 C 70.314,245.68 62.554,237.922 62.554,228.351 C 62.554,218.781 70.314,211.022 79.884,211.022 C 89.454,211.022 97.212,218.781 97.212,228.351 z"
- id="path205"
- style="fill:#c2c2b2" />
- <path
- d="M 149.379,228.351 C 149.379,237.922 141.621,245.68 132.05,245.68 C 122.48,245.68 114.721,237.922 114.721,228.351 C 114.721,218.781 122.48,211.022 132.05,211.022 C 141.621,211.021 149.379,218.781 149.379,228.351 z"
- id="path207"
- style="fill:#c2c2b2" />
- <path
- d="M 201.546,228.351 C 201.546,237.922 193.788,245.68 184.217,245.68 C 174.646,245.68 166.888,237.922 166.888,228.351 C 166.888,218.781 174.646,211.022 184.217,211.022 C 193.788,211.022 201.546,218.781 201.546,228.351 z"
- id="path209"
- style="fill:#c2c2b2" />
- <path
- d="M 253.712,228.351 C 253.712,237.922 245.954,245.68 236.384,245.68 C 226.813,245.68 219.054,237.922 219.054,228.351 C 219.054,218.781 226.813,211.022 236.384,211.022 C 245.954,211.021 253.712,218.781 253.712,228.351 z"
- id="path211"
- style="fill:#c2c2b2" />
- <path
- d="M 305.879,228.351 C 305.879,237.922 298.12,245.68 288.55,245.68 C 278.98,245.68 271.221,237.922 271.221,228.351 C 271.221,218.781 278.98,211.022 288.55,211.022 C 298.12,211.022 305.879,218.781 305.879,228.351 z"
- id="path213"
- style="fill:#c2c2b2" />
- <path
- d="M 358.046,228.351 C 358.046,237.922 350.287,245.68 340.717,245.68 C 331.146,245.68 323.388,237.922 323.388,228.351 C 323.388,218.781 331.146,211.022 340.717,211.022 C 350.287,211.021 358.046,218.781 358.046,228.351 z"
- id="path215"
- style="fill:#c2c2b2" />
- <path
- d="M 410.212,228.351 C 410.212,237.922 402.454,245.68 392.884,245.68 C 383.313,245.68 375.554,237.922 375.554,228.351 C 375.554,218.781 383.313,211.022 392.884,211.022 C 402.454,211.021 410.212,218.781 410.212,228.351 z"
- id="path217"
- style="fill:#c2c2b2" />
- <path
- d="M 462.378,228.351 C 462.378,237.922 454.62,245.68 445.05,245.68 C 435.48,245.68 427.72,237.922 427.72,228.351 C 427.72,218.781 435.48,211.022 445.05,211.022 C 454.62,211.022 462.378,218.781 462.378,228.351 z"
- id="path219"
- style="fill:#c2c2b2" />
- <path
- d="M 514.545,228.351 C 514.545,237.922 506.787,245.68 497.216,245.68 C 487.646,245.68 479.887,237.922 479.887,228.351 C 479.887,218.781 487.646,211.022 497.216,211.022 C 506.787,211.021 514.545,218.781 514.545,228.351 z"
- id="path221"
- style="fill:#c2c2b2" />
- <path
- d="M 566.712,228.351 C 566.712,237.922 558.954,245.68 549.384,245.68 C 539.812,245.68 532.054,237.922 532.054,228.351 C 532.054,218.781 539.812,211.022 549.384,211.022 C 558.954,211.021 566.712,218.781 566.712,228.351 z"
- id="path223"
- style="fill:#c2c2b2" />
- <path
- d="M 618.877,228.351 C 618.877,237.922 611.119,245.68 601.549,245.68 C 591.977,245.68 584.219,237.922 584.219,228.351 C 584.219,218.781 591.977,211.022 601.549,211.022 C 611.12,211.021 618.877,218.781 618.877,228.351 z"
- id="path225"
- style="fill:#c2c2b2" />
- <path
- d="M 671.043,228.351 C 671.043,237.922 663.285,245.68 653.715,245.68 C 644.143,245.68 636.385,237.922 636.385,228.351 C 636.385,218.781 644.143,211.022 653.715,211.022 C 663.286,211.021 671.043,218.781 671.043,228.351 z"
- id="path227"
- style="fill:#c2c2b2" />
- <path
- d="M 723.209,228.351 C 723.209,237.922 715.451,245.68 705.881,245.68 C 696.309,245.68 688.553,237.922 688.553,228.351 C 688.553,218.781 696.309,211.022 705.881,211.022 C 715.452,211.021 723.209,218.781 723.209,228.351 z"
- id="path229"
- style="fill:#c2c2b2" />
- <path
- d="M 775.377,228.351 C 775.377,237.922 767.617,245.68 758.047,245.68 C 748.477,245.68 740.719,237.922 740.719,228.351 C 740.719,218.781 748.477,211.022 758.047,211.022 C 767.617,211.022 775.377,218.781 775.377,228.351 z"
- id="path231"
- style="fill:#c2c2b2" />
- <path
- d="M 827.542,228.351 C 827.542,237.922 819.784,245.68 810.214,245.68 C 800.644,245.68 792.886,237.922 792.886,228.351 C 792.886,218.781 800.644,211.022 810.214,211.022 C 819.784,211.022 827.542,218.781 827.542,228.351 z"
- id="path233"
- style="fill:#c2c2b2" />
- <path
- d="M 879.709,228.351 C 879.709,237.922 871.949,245.68 862.381,245.68 C 852.809,245.68 845.051,237.922 845.051,228.351 C 845.051,218.781 852.809,211.022 862.381,211.022 C 871.95,211.021 879.709,218.781 879.709,228.351 z"
- id="path235"
- style="fill:#c2c2b2" />
- <path
- d="M 931.875,228.351 C 931.875,237.922 924.115,245.68 914.547,245.68 C 904.975,245.68 897.217,237.922 897.217,228.351 C 897.217,218.781 904.975,211.022 914.547,211.022 C 924.116,211.021 931.875,218.781 931.875,228.351 z"
- id="path237"
- style="fill:#c2c2b2" />
- <path
- d="M 984.042,228.351 C 984.042,237.922 976.284,245.68 966.714,245.68 C 957.142,245.68 949.384,237.922 949.384,228.351 C 949.384,218.781 957.142,211.022 966.714,211.022 C 976.284,211.021 984.042,218.781 984.042,228.351 z"
- id="path239"
- style="fill:#c2c2b2" />
- <path
- d="M 1036.208,228.351 C 1036.208,237.922 1028.448,245.68 1018.88,245.68 C 1009.308,245.68 1001.55,237.922 1001.55,228.351 C 1001.55,218.781 1009.308,211.022 1018.88,211.022 C 1028.448,211.021 1036.208,218.781 1036.208,228.351 z"
- id="path241"
- style="fill:#c2c2b2" />
- <path
- d="M 1088.374,228.351 C 1088.374,237.922 1080.616,245.68 1071.046,245.68 C 1061.474,245.68 1053.716,237.922 1053.716,228.351 C 1053.716,218.781 1061.474,211.022 1071.046,211.022 C 1080.616,211.021 1088.374,218.781 1088.374,228.351 z"
- id="path243"
- style="fill:#c2c2b2" />
- <path
- d="M 1140.54,228.351 C 1140.54,237.922 1132.782,245.68 1123.212,245.68 C 1113.64,245.68 1105.882,237.922 1105.882,228.351 C 1105.882,218.781 1113.64,211.022 1123.212,211.022 C 1132.782,211.021 1140.54,218.781 1140.54,228.351 z"
- id="path245"
- style="fill:#c2c2b2" />
- <path
- d="M 1192.706,228.351 C 1192.706,237.922 1184.948,245.68 1175.378,245.68 C 1165.806,245.68 1158.048,237.922 1158.048,228.351 C 1158.048,218.781 1165.806,211.022 1175.378,211.022 C 1184.948,211.021 1192.706,218.781 1192.706,228.351 z"
- id="path247"
- style="fill:#c2c2b2" />
- </g>
- <g
- id="g249"
- transform="translate(0.142,-39.123441)">
- <path
- d="M 45.046,279.356 C 45.046,288.927 37.288,296.685 27.718,296.685 C 18.147,296.685 10.388,288.927 10.388,279.356 C 10.388,269.786 18.147,262.027 27.718,262.027 C 37.288,262.027 45.046,269.786 45.046,279.356 z"
- id="path251"
- style="fill:#c2c2b2" />
- <path
- d="M 97.212,279.356 C 97.212,288.927 89.454,296.685 79.884,296.685 C 70.314,296.685 62.554,288.927 62.554,279.356 C 62.554,269.786 70.314,262.027 79.884,262.027 C 89.454,262.027 97.212,269.786 97.212,279.356 z"
- id="path253"
- style="fill:#c2c2b2" />
- <path
- d="M 149.379,279.356 C 149.379,288.927 141.621,296.685 132.05,296.685 C 122.48,296.685 114.721,288.927 114.721,279.356 C 114.721,269.786 122.48,262.027 132.05,262.027 C 141.621,262.027 149.379,269.786 149.379,279.356 z"
- id="path255"
- style="fill:#c2c2b2" />
- <path
- d="M 201.546,279.356 C 201.546,288.927 193.788,296.685 184.217,296.685 C 174.646,296.685 166.888,288.927 166.888,279.356 C 166.888,269.786 174.646,262.027 184.217,262.027 C 193.788,262.027 201.546,269.786 201.546,279.356 z"
- id="path257"
- style="fill:#c2c2b2" />
- <path
- d="M 253.712,279.356 C 253.712,288.927 245.954,296.685 236.384,296.685 C 226.813,296.685 219.054,288.927 219.054,279.356 C 219.054,269.786 226.813,262.027 236.384,262.027 C 245.954,262.027 253.712,269.786 253.712,279.356 z"
- id="path259"
- style="fill:#c2c2b2" />
- <path
- d="M 305.879,279.356 C 305.879,288.927 298.12,296.685 288.55,296.685 C 278.98,296.685 271.221,288.927 271.221,279.356 C 271.221,269.786 278.98,262.027 288.55,262.027 C 298.12,262.027 305.879,269.786 305.879,279.356 z"
- id="path261"
- style="fill:#c2c2b2" />
- <path
- d="M 358.046,279.356 C 358.046,288.927 350.287,296.685 340.717,296.685 C 331.146,296.685 323.388,288.927 323.388,279.356 C 323.388,269.786 331.146,262.027 340.717,262.027 C 350.287,262.027 358.046,269.786 358.046,279.356 z"
- id="path263"
- style="fill:#c2c2b2" />
- <path
- d="M 410.212,279.356 C 410.212,288.927 402.454,296.685 392.884,296.685 C 383.313,296.685 375.554,288.927 375.554,279.356 C 375.554,269.786 383.313,262.027 392.884,262.027 C 402.454,262.027 410.212,269.786 410.212,279.356 z"
- id="path265"
- style="fill:#c2c2b2" />
- <path
- d="M 462.378,279.356 C 462.378,288.927 454.62,296.685 445.05,296.685 C 435.48,296.685 427.72,288.927 427.72,279.356 C 427.72,269.786 435.48,262.027 445.05,262.027 C 454.62,262.027 462.378,269.786 462.378,279.356 z"
- id="path267"
- style="fill:#c2c2b2" />
- <path
- d="M 514.545,279.356 C 514.545,288.927 506.787,296.685 497.216,296.685 C 487.646,296.685 479.887,288.927 479.887,279.356 C 479.887,269.786 487.646,262.027 497.216,262.027 C 506.787,262.027 514.545,269.786 514.545,279.356 z"
- id="path269"
- style="fill:#c2c2b2" />
- <path
- d="M 566.712,279.356 C 566.712,288.927 558.954,296.685 549.384,296.685 C 539.812,296.685 532.054,288.927 532.054,279.356 C 532.054,269.786 539.812,262.027 549.384,262.027 C 558.954,262.027 566.712,269.786 566.712,279.356 z"
- id="path271"
- style="fill:#c2c2b2" />
- <path
- d="M 618.877,279.356 C 618.877,288.927 611.119,296.685 601.549,296.685 C 591.977,296.685 584.219,288.927 584.219,279.356 C 584.219,269.786 591.977,262.027 601.549,262.027 C 611.12,262.027 618.877,269.786 618.877,279.356 z"
- id="path273"
- style="fill:#c2c2b2" />
- <path
- d="M 671.043,279.356 C 671.043,288.927 663.285,296.685 653.715,296.685 C 644.143,296.685 636.385,288.927 636.385,279.356 C 636.385,269.786 644.143,262.027 653.715,262.027 C 663.286,262.027 671.043,269.786 671.043,279.356 z"
- id="path275"
- style="fill:#c2c2b2" />
- <path
- d="M 723.209,279.356 C 723.209,288.927 715.451,296.685 705.881,296.685 C 696.309,296.685 688.553,288.927 688.553,279.356 C 688.553,269.786 696.309,262.027 705.881,262.027 C 715.452,262.027 723.209,269.786 723.209,279.356 z"
- id="path277"
- style="fill:#c2c2b2" />
- <path
- d="M 775.377,279.356 C 775.377,288.927 767.617,296.685 758.047,296.685 C 748.477,296.685 740.719,288.927 740.719,279.356 C 740.719,269.786 748.477,262.027 758.047,262.027 C 767.617,262.027 775.377,269.786 775.377,279.356 z"
- id="path279"
- style="fill:#c2c2b2" />
- <path
- d="M 827.542,279.356 C 827.542,288.927 819.784,296.685 810.214,296.685 C 800.644,296.685 792.886,288.927 792.886,279.356 C 792.886,269.786 800.644,262.027 810.214,262.027 C 819.784,262.027 827.542,269.786 827.542,279.356 z"
- id="path281"
- style="fill:#c2c2b2" />
- <path
- d="M 879.709,279.356 C 879.709,288.927 871.949,296.685 862.381,296.685 C 852.809,296.685 845.051,288.927 845.051,279.356 C 845.051,269.786 852.809,262.027 862.381,262.027 C 871.95,262.027 879.709,269.786 879.709,279.356 z"
- id="path283"
- style="fill:#c2c2b2" />
- <path
- d="M 931.875,279.356 C 931.875,288.927 924.115,296.685 914.547,296.685 C 904.975,296.685 897.217,288.927 897.217,279.356 C 897.217,269.786 904.975,262.027 914.547,262.027 C 924.116,262.027 931.875,269.786 931.875,279.356 z"
- id="path285"
- style="fill:#c2c2b2" />
- <path
- d="M 984.042,279.356 C 984.042,288.927 976.284,296.685 966.714,296.685 C 957.142,296.685 949.384,288.927 949.384,279.356 C 949.384,269.786 957.142,262.027 966.714,262.027 C 976.284,262.027 984.042,269.786 984.042,279.356 z"
- id="path287"
- style="fill:#c2c2b2" />
- <path
- d="M 1036.208,279.356 C 1036.208,288.927 1028.448,296.685 1018.88,296.685 C 1009.308,296.685 1001.55,288.927 1001.55,279.356 C 1001.55,269.786 1009.308,262.027 1018.88,262.027 C 1028.448,262.027 1036.208,269.786 1036.208,279.356 z"
- id="path289"
- style="fill:#c2c2b2" />
- <path
- d="M 1088.374,279.356 C 1088.374,288.927 1080.616,296.685 1071.046,296.685 C 1061.474,296.685 1053.716,288.927 1053.716,279.356 C 1053.716,269.786 1061.474,262.027 1071.046,262.027 C 1080.616,262.027 1088.374,269.786 1088.374,279.356 z"
- id="path291"
- style="fill:#c2c2b2" />
- <path
- d="M 1140.54,279.356 C 1140.54,288.927 1132.782,296.685 1123.212,296.685 C 1113.64,296.685 1105.882,288.927 1105.882,279.356 C 1105.882,269.786 1113.64,262.027 1123.212,262.027 C 1132.782,262.027 1140.54,269.786 1140.54,279.356 z"
- id="path293"
- style="fill:#c2c2b2" />
- <path
- d="M 1192.706,279.356 C 1192.706,288.927 1184.948,296.685 1175.378,296.685 C 1165.806,296.685 1158.048,288.927 1158.048,279.356 C 1158.048,269.786 1165.806,262.027 1175.378,262.027 C 1184.948,262.027 1192.706,269.786 1192.706,279.356 z"
- id="path295"
- style="fill:#c2c2b2" />
- </g>
- <g
- id="g297"
- transform="translate(0.142,-39.123441)">
- <path
- d="M 45.046,330.361 C 45.046,339.932 37.288,347.69 27.718,347.69 C 18.147,347.69 10.388,339.932 10.388,330.361 C 10.388,320.791 18.147,313.032 27.718,313.032 C 37.288,313.032 45.046,320.792 45.046,330.361 z"
- id="path299"
- style="fill:#c2c2b2" />
- <path
- d="M 97.212,330.361 C 97.212,339.932 89.454,347.69 79.884,347.69 C 70.314,347.69 62.554,339.932 62.554,330.361 C 62.554,320.791 70.314,313.032 79.884,313.032 C 89.454,313.032 97.212,320.792 97.212,330.361 z"
- id="path301"
- style="fill:#c2c2b2" />
- <path
- d="M 149.379,330.361 C 149.379,339.932 141.621,347.69 132.05,347.69 C 122.48,347.69 114.721,339.932 114.721,330.361 C 114.721,320.791 122.48,313.032 132.05,313.032 C 141.621,313.032 149.379,320.792 149.379,330.361 z"
- id="path303"
- style="fill:#c2c2b2" />
- <path
- d="M 201.546,330.361 C 201.546,339.932 193.788,347.69 184.217,347.69 C 174.646,347.69 166.888,339.932 166.888,330.361 C 166.888,320.791 174.646,313.032 184.217,313.032 C 193.788,313.032 201.546,320.792 201.546,330.361 z"
- id="path305"
- style="fill:#c2c2b2" />
- <path
- d="M 253.712,330.361 C 253.712,339.932 245.954,347.69 236.384,347.69 C 226.813,347.69 219.054,339.932 219.054,330.361 C 219.054,320.791 226.813,313.032 236.384,313.032 C 245.954,313.032 253.712,320.792 253.712,330.361 z"
- id="path307"
- style="fill:#c2c2b2" />
- <path
- d="M 305.879,330.361 C 305.879,339.932 298.12,347.69 288.55,347.69 C 278.98,347.69 271.221,339.932 271.221,330.361 C 271.221,320.791 278.98,313.032 288.55,313.032 C 298.12,313.032 305.879,320.792 305.879,330.361 z"
- id="path309"
- style="fill:#c2c2b2" />
- <path
- d="M 358.046,330.361 C 358.046,339.932 350.287,347.69 340.717,347.69 C 331.146,347.69 323.388,339.932 323.388,330.361 C 323.388,320.791 331.146,313.032 340.717,313.032 C 350.287,313.032 358.046,320.792 358.046,330.361 z"
- id="path311"
- style="fill:#c2c2b2" />
- <path
- d="M 410.212,330.361 C 410.212,339.932 402.454,347.69 392.884,347.69 C 383.313,347.69 375.554,339.932 375.554,330.361 C 375.554,320.791 383.313,313.032 392.884,313.032 C 402.454,313.032 410.212,320.792 410.212,330.361 z"
- id="path313"
- style="fill:#c2c2b2" />
- <path
- d="M 462.378,330.361 C 462.378,339.932 454.62,347.69 445.05,347.69 C 435.48,347.69 427.72,339.932 427.72,330.361 C 427.72,320.791 435.48,313.032 445.05,313.032 C 454.62,313.032 462.378,320.792 462.378,330.361 z"
- id="path315"
- style="fill:#c2c2b2" />
- <path
- d="M 514.545,330.361 C 514.545,339.932 506.787,347.69 497.216,347.69 C 487.646,347.69 479.887,339.932 479.887,330.361 C 479.887,320.791 487.646,313.032 497.216,313.032 C 506.787,313.032 514.545,320.792 514.545,330.361 z"
- id="path317"
- style="fill:#c2c2b2" />
- <path
- d="M 566.712,330.361 C 566.712,339.932 558.954,347.69 549.384,347.69 C 539.812,347.69 532.054,339.932 532.054,330.361 C 532.054,320.791 539.812,313.032 549.384,313.032 C 558.954,313.032 566.712,320.792 566.712,330.361 z"
- id="path319"
- style="fill:#c2c2b2" />
- <path
- d="M 618.877,330.361 C 618.877,339.932 611.119,347.69 601.549,347.69 C 591.977,347.69 584.219,339.932 584.219,330.361 C 584.219,320.791 591.977,313.032 601.549,313.032 C 611.12,313.032 618.877,320.792 618.877,330.361 z"
- id="path321"
- style="fill:#c2c2b2" />
- <path
- d="M 671.043,330.361 C 671.043,339.932 663.285,347.69 653.715,347.69 C 644.143,347.69 636.385,339.932 636.385,330.361 C 636.385,320.791 644.143,313.032 653.715,313.032 C 663.286,313.032 671.043,320.792 671.043,330.361 z"
- id="path323"
- style="fill:#c2c2b2" />
- <path
- d="M 723.209,330.361 C 723.209,339.932 715.451,347.69 705.881,347.69 C 696.309,347.69 688.553,339.932 688.553,330.361 C 688.553,320.791 696.309,313.032 705.881,313.032 C 715.452,313.032 723.209,320.792 723.209,330.361 z"
- id="path325"
- style="fill:#c2c2b2" />
- <path
- d="M 775.377,330.361 C 775.377,339.932 767.617,347.69 758.047,347.69 C 748.477,347.69 740.719,339.932 740.719,330.361 C 740.719,320.791 748.477,313.032 758.047,313.032 C 767.617,313.032 775.377,320.792 775.377,330.361 z"
- id="path327"
- style="fill:#c2c2b2" />
- <path
- d="M 827.542,330.361 C 827.542,339.932 819.784,347.69 810.214,347.69 C 800.644,347.69 792.886,339.932 792.886,330.361 C 792.886,320.791 800.644,313.032 810.214,313.032 C 819.784,313.032 827.542,320.792 827.542,330.361 z"
- id="path329"
- style="fill:#c2c2b2" />
- <path
- d="M 879.709,330.361 C 879.709,339.932 871.949,347.69 862.381,347.69 C 852.809,347.69 845.051,339.932 845.051,330.361 C 845.051,320.791 852.809,313.032 862.381,313.032 C 871.95,313.032 879.709,320.792 879.709,330.361 z"
- id="path331"
- style="fill:#c2c2b2" />
- <path
- d="M 931.875,330.361 C 931.875,339.932 924.115,347.69 914.547,347.69 C 904.975,347.69 897.217,339.932 897.217,330.361 C 897.217,320.791 904.975,313.032 914.547,313.032 C 924.116,313.032 931.875,320.792 931.875,330.361 z"
- id="path333"
- style="fill:#c2c2b2" />
- <path
- d="M 984.042,330.361 C 984.042,339.932 976.284,347.69 966.714,347.69 C 957.142,347.69 949.384,339.932 949.384,330.361 C 949.384,320.791 957.142,313.032 966.714,313.032 C 976.284,313.032 984.042,320.792 984.042,330.361 z"
- id="path335"
- style="fill:#c2c2b2" />
- <path
- d="M 1036.208,330.361 C 1036.208,339.932 1028.448,347.69 1018.88,347.69 C 1009.308,347.69 1001.55,339.932 1001.55,330.361 C 1001.55,320.791 1009.308,313.032 1018.88,313.032 C 1028.448,313.032 1036.208,320.792 1036.208,330.361 z"
- id="path337"
- style="fill:#c2c2b2" />
- <path
- d="M 1088.374,330.361 C 1088.374,339.932 1080.616,347.69 1071.046,347.69 C 1061.474,347.69 1053.716,339.932 1053.716,330.361 C 1053.716,320.791 1061.474,313.032 1071.046,313.032 C 1080.616,313.032 1088.374,320.792 1088.374,330.361 z"
- id="path339"
- style="fill:#c2c2b2" />
- <path
- d="M 1140.54,330.361 C 1140.54,339.932 1132.782,347.69 1123.212,347.69 C 1113.64,347.69 1105.882,339.932 1105.882,330.361 C 1105.882,320.791 1113.64,313.032 1123.212,313.032 C 1132.782,313.032 1140.54,320.792 1140.54,330.361 z"
- id="path341"
- style="fill:#c2c2b2" />
- <path
- d="M 1192.706,330.361 C 1192.706,339.932 1184.948,347.69 1175.378,347.69 C 1165.806,347.69 1158.048,339.932 1158.048,330.361 C 1158.048,320.791 1165.806,313.032 1175.378,313.032 C 1184.948,313.032 1192.706,320.792 1192.706,330.361 z"
- id="path343"
- style="fill:#c2c2b2" />
- </g>
- <g
- id="g345"
- transform="translate(0.142,-39.123441)">
- <path
- d="M 45.046,381.367 C 45.046,390.938 37.288,398.696 27.718,398.696 C 18.147,398.696 10.388,390.938 10.388,381.367 C 10.388,371.797 18.147,364.038 27.718,364.038 C 37.288,364.038 45.046,371.797 45.046,381.367 z"
- id="path347"
- style="fill:#c2c2b2" />
- <path
- d="M 97.212,381.367 C 97.212,390.938 89.454,398.696 79.884,398.696 C 70.314,398.696 62.554,390.938 62.554,381.367 C 62.554,371.797 70.314,364.038 79.884,364.038 C 89.454,364.038 97.212,371.797 97.212,381.367 z"
- id="path349"
- style="fill:#c2c2b2" />
- <path
- d="M 149.379,381.367 C 149.379,390.938 141.621,398.696 132.05,398.696 C 122.48,398.696 114.721,390.938 114.721,381.367 C 114.721,371.797 122.48,364.038 132.05,364.038 C 141.621,364.038 149.379,371.797 149.379,381.367 z"
- id="path351"
- style="fill:#c2c2b2" />
- <path
- d="M 201.546,381.367 C 201.546,390.938 193.788,398.696 184.217,398.696 C 174.646,398.696 166.888,390.938 166.888,381.367 C 166.888,371.797 174.646,364.038 184.217,364.038 C 193.788,364.038 201.546,371.797 201.546,381.367 z"
- id="path353"
- style="fill:#c2c2b2" />
- <path
- d="M 253.712,381.367 C 253.712,390.938 245.954,398.696 236.384,398.696 C 226.813,398.696 219.054,390.938 219.054,381.367 C 219.054,371.797 226.813,364.038 236.384,364.038 C 245.954,364.038 253.712,371.797 253.712,381.367 z"
- id="path355"
- style="fill:#c2c2b2" />
- <path
- d="M 305.879,381.367 C 305.879,390.938 298.12,398.696 288.55,398.696 C 278.98,398.696 271.221,390.938 271.221,381.367 C 271.221,371.797 278.98,364.038 288.55,364.038 C 298.12,364.038 305.879,371.797 305.879,381.367 z"
- id="path357"
- style="fill:#c2c2b2" />
- <path
- d="M 358.046,381.367 C 358.046,390.938 350.287,398.696 340.717,398.696 C 331.146,398.696 323.388,390.938 323.388,381.367 C 323.388,371.797 331.146,364.038 340.717,364.038 C 350.287,364.038 358.046,371.797 358.046,381.367 z"
- id="path359"
- style="fill:#c2c2b2" />
- <path
- d="M 410.212,381.367 C 410.212,390.938 402.454,398.696 392.884,398.696 C 383.313,398.696 375.554,390.938 375.554,381.367 C 375.554,371.797 383.313,364.038 392.884,364.038 C 402.454,364.038 410.212,371.797 410.212,381.367 z"
- id="path361"
- style="fill:#c2c2b2" />
- <path
- d="M 462.378,381.367 C 462.378,390.938 454.62,398.696 445.05,398.696 C 435.48,398.696 427.72,390.938 427.72,381.367 C 427.72,371.797 435.48,364.038 445.05,364.038 C 454.62,364.038 462.378,371.797 462.378,381.367 z"
- id="path363"
- style="fill:#c2c2b2" />
- <path
- d="M 514.545,381.367 C 514.545,390.938 506.787,398.696 497.216,398.696 C 487.646,398.696 479.887,390.938 479.887,381.367 C 479.887,371.797 487.646,364.038 497.216,364.038 C 506.787,364.038 514.545,371.797 514.545,381.367 z"
- id="path365"
- style="fill:#c2c2b2" />
- <path
- d="M 566.712,381.367 C 566.712,390.938 558.954,398.696 549.384,398.696 C 539.812,398.696 532.054,390.938 532.054,381.367 C 532.054,371.797 539.812,364.038 549.384,364.038 C 558.954,364.038 566.712,371.797 566.712,381.367 z"
- id="path367"
- style="fill:#c2c2b2" />
- <path
- d="M 618.877,381.367 C 618.877,390.938 611.119,398.696 601.549,398.696 C 591.977,398.696 584.219,390.938 584.219,381.367 C 584.219,371.797 591.977,364.038 601.549,364.038 C 611.12,364.038 618.877,371.797 618.877,381.367 z"
- id="path369"
- style="fill:#c2c2b2" />
- <path
- d="M 671.043,381.367 C 671.043,390.938 663.285,398.696 653.715,398.696 C 644.143,398.696 636.385,390.938 636.385,381.367 C 636.385,371.797 644.143,364.038 653.715,364.038 C 663.286,364.038 671.043,371.797 671.043,381.367 z"
- id="path371"
- style="fill:#c2c2b2" />
- <path
- d="M 723.209,381.367 C 723.209,390.938 715.451,398.696 705.881,398.696 C 696.309,398.696 688.553,390.938 688.553,381.367 C 688.553,371.797 696.309,364.038 705.881,364.038 C 715.452,364.038 723.209,371.797 723.209,381.367 z"
- id="path373"
- style="fill:#c2c2b2" />
- <path
- d="M 775.377,381.367 C 775.377,390.938 767.617,398.696 758.047,398.696 C 748.477,398.696 740.719,390.938 740.719,381.367 C 740.719,371.797 748.477,364.038 758.047,364.038 C 767.617,364.038 775.377,371.797 775.377,381.367 z"
- id="path375"
- style="fill:#c2c2b2" />
- <path
- d="M 827.542,381.367 C 827.542,390.938 819.784,398.696 810.214,398.696 C 800.644,398.696 792.886,390.938 792.886,381.367 C 792.886,371.797 800.644,364.038 810.214,364.038 C 819.784,364.038 827.542,371.797 827.542,381.367 z"
- id="path377"
- style="fill:#c2c2b2" />
- <path
- d="M 879.709,381.367 C 879.709,390.938 871.949,398.696 862.381,398.696 C 852.809,398.696 845.051,390.938 845.051,381.367 C 845.051,371.797 852.809,364.038 862.381,364.038 C 871.95,364.038 879.709,371.797 879.709,381.367 z"
- id="path379"
- style="fill:#c2c2b2" />
- <path
- d="M 931.875,381.367 C 931.875,390.938 924.115,398.696 914.547,398.696 C 904.975,398.696 897.217,390.938 897.217,381.367 C 897.217,371.797 904.975,364.038 914.547,364.038 C 924.116,364.038 931.875,371.797 931.875,381.367 z"
- id="path381"
- style="fill:#c2c2b2" />
- <path
- d="M 984.042,381.367 C 984.042,390.938 976.284,398.696 966.714,398.696 C 957.142,398.696 949.384,390.938 949.384,381.367 C 949.384,371.797 957.142,364.038 966.714,364.038 C 976.284,364.038 984.042,371.797 984.042,381.367 z"
- id="path383"
- style="fill:#c2c2b2" />
- <path
- d="M 1036.208,381.367 C 1036.208,390.938 1028.448,398.696 1018.88,398.696 C 1009.308,398.696 1001.55,390.938 1001.55,381.367 C 1001.55,371.797 1009.308,364.038 1018.88,364.038 C 1028.448,364.038 1036.208,371.797 1036.208,381.367 z"
- id="path385"
- style="fill:#c2c2b2" />
- <path
- d="M 1088.374,381.367 C 1088.374,390.938 1080.616,398.696 1071.046,398.696 C 1061.474,398.696 1053.716,390.938 1053.716,381.367 C 1053.716,371.797 1061.474,364.038 1071.046,364.038 C 1080.616,364.038 1088.374,371.797 1088.374,381.367 z"
- id="path387"
- style="fill:#c2c2b2" />
- <path
- d="M 1140.54,381.367 C 1140.54,390.938 1132.782,398.696 1123.212,398.696 C 1113.64,398.696 1105.882,390.938 1105.882,381.367 C 1105.882,371.797 1113.64,364.038 1123.212,364.038 C 1132.782,364.038 1140.54,371.797 1140.54,381.367 z"
- id="path389"
- style="fill:#c2c2b2" />
- <path
- d="M 1192.706,381.367 C 1192.706,390.938 1184.948,398.696 1175.378,398.696 C 1165.806,398.696 1158.048,390.938 1158.048,381.367 C 1158.048,371.797 1165.806,364.038 1175.378,364.038 C 1184.948,364.038 1192.706,371.797 1192.706,381.367 z"
- id="path391"
- style="fill:#c2c2b2" />
- </g>
- <g
- id="g393"
- transform="translate(0.142,-39.123441)">
- <path
- d="M 45.046,432.372 C 45.046,441.943 37.288,449.701 27.718,449.701 C 18.147,449.701 10.388,441.943 10.388,432.372 C 10.388,422.802 18.147,415.043 27.718,415.043 C 37.288,415.043 45.046,422.802 45.046,432.372 z"
- id="path395"
- style="fill:#c2c2b2" />
- <path
- d="M 97.212,432.372 C 97.212,441.943 89.454,449.701 79.884,449.701 C 70.314,449.701 62.554,441.943 62.554,432.372 C 62.554,422.802 70.314,415.043 79.884,415.043 C 89.454,415.043 97.212,422.802 97.212,432.372 z"
- id="path397"
- style="fill:#c2c2b2" />
- <path
- d="M 149.379,432.372 C 149.379,441.943 141.621,449.701 132.05,449.701 C 122.48,449.701 114.721,441.943 114.721,432.372 C 114.721,422.802 122.48,415.043 132.05,415.043 C 141.621,415.043 149.379,422.802 149.379,432.372 z"
- id="path399"
- style="fill:#c2c2b2" />
- <path
- d="M 201.546,432.372 C 201.546,441.943 193.788,449.701 184.217,449.701 C 174.646,449.701 166.888,441.943 166.888,432.372 C 166.888,422.802 174.646,415.043 184.217,415.043 C 193.788,415.043 201.546,422.802 201.546,432.372 z"
- id="path401"
- style="fill:#c2c2b2" />
- <path
- d="M 253.712,432.372 C 253.712,441.943 245.954,449.701 236.384,449.701 C 226.813,449.701 219.054,441.943 219.054,432.372 C 219.054,422.802 226.813,415.043 236.384,415.043 C 245.954,415.043 253.712,422.802 253.712,432.372 z"
- id="path403"
- style="fill:#c2c2b2" />
- <path
- d="M 305.879,432.372 C 305.879,441.943 298.12,449.701 288.55,449.701 C 278.98,449.701 271.221,441.943 271.221,432.372 C 271.221,422.802 278.98,415.043 288.55,415.043 C 298.12,415.043 305.879,422.802 305.879,432.372 z"
- id="path405"
- style="fill:#c2c2b2" />
- <path
- d="M 358.046,432.372 C 358.046,441.943 350.287,449.701 340.717,449.701 C 331.146,449.701 323.388,441.943 323.388,432.372 C 323.388,422.802 331.146,415.043 340.717,415.043 C 350.287,415.043 358.046,422.802 358.046,432.372 z"
- id="path407"
- style="fill:#c2c2b2" />
- <path
- d="M 410.212,432.372 C 410.212,441.943 402.454,449.701 392.884,449.701 C 383.313,449.701 375.554,441.943 375.554,432.372 C 375.554,422.802 383.313,415.043 392.884,415.043 C 402.454,415.043 410.212,422.802 410.212,432.372 z"
- id="path409"
- style="fill:#c2c2b2" />
- <path
- d="M 462.378,432.372 C 462.378,441.943 454.62,449.701 445.05,449.701 C 435.48,449.701 427.72,441.943 427.72,432.372 C 427.72,422.802 435.48,415.043 445.05,415.043 C 454.62,415.043 462.378,422.802 462.378,432.372 z"
- id="path411"
- style="fill:#c2c2b2" />
- <path
- d="M 514.545,432.372 C 514.545,441.943 506.787,449.701 497.216,449.701 C 487.646,449.701 479.887,441.943 479.887,432.372 C 479.887,422.802 487.646,415.043 497.216,415.043 C 506.787,415.043 514.545,422.802 514.545,432.372 z"
- id="path413"
- style="fill:#c2c2b2" />
- <path
- d="M 566.712,432.372 C 566.712,441.943 558.954,449.701 549.384,449.701 C 539.812,449.701 532.054,441.943 532.054,432.372 C 532.054,422.802 539.812,415.043 549.384,415.043 C 558.954,415.043 566.712,422.802 566.712,432.372 z"
- id="path415"
- style="fill:#c2c2b2" />
- <path
- d="M 618.877,432.372 C 618.877,441.943 611.119,449.701 601.549,449.701 C 591.977,449.701 584.219,441.943 584.219,432.372 C 584.219,422.802 591.977,415.043 601.549,415.043 C 611.12,415.043 618.877,422.802 618.877,432.372 z"
- id="path417"
- style="fill:#c2c2b2" />
- <path
- d="M 671.043,432.372 C 671.043,441.943 663.285,449.701 653.715,449.701 C 644.143,449.701 636.385,441.943 636.385,432.372 C 636.385,422.802 644.143,415.043 653.715,415.043 C 663.286,415.043 671.043,422.802 671.043,432.372 z"
- id="path419"
- style="fill:#c2c2b2" />
- <path
- d="M 723.209,432.372 C 723.209,441.943 715.451,449.701 705.881,449.701 C 696.309,449.701 688.553,441.943 688.553,432.372 C 688.553,422.802 696.309,415.043 705.881,415.043 C 715.452,415.043 723.209,422.802 723.209,432.372 z"
- id="path421"
- style="fill:#c2c2b2" />
- <path
- d="M 775.377,432.372 C 775.377,441.943 767.617,449.701 758.047,449.701 C 748.477,449.701 740.719,441.943 740.719,432.372 C 740.719,422.802 748.477,415.043 758.047,415.043 C 767.617,415.043 775.377,422.802 775.377,432.372 z"
- id="path423"
- style="fill:#c2c2b2" />
- <path
- d="M 827.542,432.372 C 827.542,441.943 819.784,449.701 810.214,449.701 C 800.644,449.701 792.886,441.943 792.886,432.372 C 792.886,422.802 800.644,415.043 810.214,415.043 C 819.784,415.043 827.542,422.802 827.542,432.372 z"
- id="path425"
- style="fill:#c2c2b2" />
- <path
- d="M 879.709,432.372 C 879.709,441.943 871.949,449.701 862.381,449.701 C 852.809,449.701 845.051,441.943 845.051,432.372 C 845.051,422.802 852.809,415.043 862.381,415.043 C 871.95,415.043 879.709,422.802 879.709,432.372 z"
- id="path427"
- style="fill:#c2c2b2" />
- <path
- d="M 931.875,432.372 C 931.875,441.943 924.115,449.701 914.547,449.701 C 904.975,449.701 897.217,441.943 897.217,432.372 C 897.217,422.802 904.975,415.043 914.547,415.043 C 924.116,415.043 931.875,422.802 931.875,432.372 z"
- id="path429"
- style="fill:#c2c2b2" />
- <path
- d="M 984.042,432.372 C 984.042,441.943 976.284,449.701 966.714,449.701 C 957.142,449.701 949.384,441.943 949.384,432.372 C 949.384,422.802 957.142,415.043 966.714,415.043 C 976.284,415.043 984.042,422.802 984.042,432.372 z"
- id="path431"
- style="fill:#c2c2b2" />
- <path
- d="M 1036.208,432.372 C 1036.208,441.943 1028.448,449.701 1018.88,449.701 C 1009.308,449.701 1001.55,441.943 1001.55,432.372 C 1001.55,422.802 1009.308,415.043 1018.88,415.043 C 1028.448,415.043 1036.208,422.802 1036.208,432.372 z"
- id="path433"
- style="fill:#c2c2b2" />
- <path
- d="M 1088.374,432.372 C 1088.374,441.943 1080.616,449.701 1071.046,449.701 C 1061.474,449.701 1053.716,441.943 1053.716,432.372 C 1053.716,422.802 1061.474,415.043 1071.046,415.043 C 1080.616,415.043 1088.374,422.802 1088.374,432.372 z"
- id="path435"
- style="fill:#c2c2b2" />
- <path
- d="M 1140.54,432.372 C 1140.54,441.943 1132.782,449.701 1123.212,449.701 C 1113.64,449.701 1105.882,441.943 1105.882,432.372 C 1105.882,422.802 1113.64,415.043 1123.212,415.043 C 1132.782,415.043 1140.54,422.802 1140.54,432.372 z"
- id="path437"
- style="fill:#c2c2b2" />
- <path
- d="M 1192.706,432.372 C 1192.706,441.943 1184.948,449.701 1175.378,449.701 C 1165.806,449.701 1158.048,441.943 1158.048,432.372 C 1158.048,422.802 1165.806,415.043 1175.378,415.043 C 1184.948,415.043 1192.706,422.802 1192.706,432.372 z"
- id="path439"
- style="fill:#c2c2b2" />
- </g>
- <g
- id="g441"
- transform="translate(0.142,-39.123441)">
- <path
- d="M 45.046,483.378 C 45.046,492.948 37.288,500.706 27.718,500.706 C 18.147,500.706 10.388,492.948 10.388,483.378 C 10.388,473.808 18.147,466.048 27.718,466.048 C 37.288,466.048 45.046,473.808 45.046,483.378 z"
- id="path443"
- style="fill:#c2c2b2" />
- <path
- d="M 97.212,483.378 C 97.212,492.948 89.454,500.706 79.884,500.706 C 70.314,500.706 62.554,492.948 62.554,483.378 C 62.554,473.808 70.314,466.048 79.884,466.048 C 89.454,466.048 97.212,473.808 97.212,483.378 z"
- id="path445"
- style="fill:#c2c2b2" />
- <path
- d="M 149.379,483.378 C 149.379,492.948 141.621,500.706 132.05,500.706 C 122.48,500.706 114.721,492.948 114.721,483.378 C 114.721,473.808 122.48,466.048 132.05,466.048 C 141.621,466.048 149.379,473.808 149.379,483.378 z"
- id="path447"
- style="fill:#c2c2b2" />
- <path
- d="M 201.546,483.378 C 201.546,492.948 193.788,500.706 184.217,500.706 C 174.646,500.706 166.888,492.948 166.888,483.378 C 166.888,473.808 174.646,466.048 184.217,466.048 C 193.788,466.048 201.546,473.808 201.546,483.378 z"
- id="path449"
- style="fill:#c2c2b2" />
- <path
- d="M 253.712,483.378 C 253.712,492.948 245.954,500.706 236.384,500.706 C 226.813,500.706 219.054,492.948 219.054,483.378 C 219.054,473.808 226.813,466.048 236.384,466.048 C 245.954,466.048 253.712,473.808 253.712,483.378 z"
- id="path451"
- style="fill:#c2c2b2" />
- <path
- d="M 305.879,483.378 C 305.879,492.948 298.12,500.706 288.55,500.706 C 278.98,500.706 271.221,492.948 271.221,483.378 C 271.221,473.808 278.98,466.048 288.55,466.048 C 298.12,466.048 305.879,473.808 305.879,483.378 z"
- id="path453"
- style="fill:#c2c2b2" />
- <path
- d="M 358.046,483.378 C 358.046,492.948 350.287,500.706 340.717,500.706 C 331.146,500.706 323.388,492.948 323.388,483.378 C 323.388,473.808 331.146,466.048 340.717,466.048 C 350.287,466.048 358.046,473.808 358.046,483.378 z"
- id="path455"
- style="fill:#c2c2b2" />
- <path
- d="M 410.212,483.378 C 410.212,492.948 402.454,500.706 392.884,500.706 C 383.313,500.706 375.554,492.948 375.554,483.378 C 375.554,473.808 383.313,466.048 392.884,466.048 C 402.454,466.048 410.212,473.808 410.212,483.378 z"
- id="path457"
- style="fill:#c2c2b2" />
- <path
- d="M 462.378,483.378 C 462.378,492.948 454.62,500.706 445.05,500.706 C 435.48,500.706 427.72,492.948 427.72,483.378 C 427.72,473.808 435.48,466.048 445.05,466.048 C 454.62,466.048 462.378,473.808 462.378,483.378 z"
- id="path459"
- style="fill:#c2c2b2" />
- <path
- d="M 514.545,483.378 C 514.545,492.948 506.787,500.706 497.216,500.706 C 487.646,500.706 479.887,492.948 479.887,483.378 C 479.887,473.808 487.646,466.048 497.216,466.048 C 506.787,466.048 514.545,473.808 514.545,483.378 z"
- id="path461"
- style="fill:#c2c2b2" />
- <path
- d="M 566.712,483.378 C 566.712,492.948 558.954,500.706 549.384,500.706 C 539.812,500.706 532.054,492.948 532.054,483.378 C 532.054,473.808 539.812,466.048 549.384,466.048 C 558.954,466.048 566.712,473.808 566.712,483.378 z"
- id="path463"
- style="fill:#c2c2b2" />
- <path
- d="M 618.877,483.378 C 618.877,492.948 611.119,500.706 601.549,500.706 C 591.977,500.706 584.219,492.948 584.219,483.378 C 584.219,473.808 591.977,466.048 601.549,466.048 C 611.12,466.048 618.877,473.808 618.877,483.378 z"
- id="path465"
- style="fill:#c2c2b2" />
- <path
- d="M 671.043,483.378 C 671.043,492.948 663.285,500.706 653.715,500.706 C 644.143,500.706 636.385,492.948 636.385,483.378 C 636.385,473.808 644.143,466.048 653.715,466.048 C 663.286,466.048 671.043,473.808 671.043,483.378 z"
- id="path467"
- style="fill:#c2c2b2" />
- <path
- d="M 723.209,483.378 C 723.209,492.948 715.451,500.706 705.881,500.706 C 696.309,500.706 688.553,492.948 688.553,483.378 C 688.553,473.808 696.309,466.048 705.881,466.048 C 715.452,466.048 723.209,473.808 723.209,483.378 z"
- id="path469"
- style="fill:#c2c2b2" />
- <path
- d="M 775.377,483.378 C 775.377,492.948 767.617,500.706 758.047,500.706 C 748.477,500.706 740.719,492.948 740.719,483.378 C 740.719,473.808 748.477,466.048 758.047,466.048 C 767.617,466.048 775.377,473.808 775.377,483.378 z"
- id="path471"
- style="fill:#c2c2b2" />
- <path
- d="M 827.542,483.378 C 827.542,492.948 819.784,500.706 810.214,500.706 C 800.644,500.706 792.886,492.948 792.886,483.378 C 792.886,473.808 800.644,466.048 810.214,466.048 C 819.784,466.048 827.542,473.808 827.542,483.378 z"
- id="path473"
- style="fill:#c2c2b2" />
- <path
- d="M 879.709,483.378 C 879.709,492.948 871.949,500.706 862.381,500.706 C 852.809,500.706 845.051,492.948 845.051,483.378 C 845.051,473.808 852.809,466.048 862.381,466.048 C 871.95,466.048 879.709,473.808 879.709,483.378 z"
- id="path475"
- style="fill:#c2c2b2" />
- <path
- d="M 931.875,483.378 C 931.875,492.948 924.115,500.706 914.547,500.706 C 904.975,500.706 897.217,492.948 897.217,483.378 C 897.217,473.808 904.975,466.048 914.547,466.048 C 924.116,466.048 931.875,473.808 931.875,483.378 z"
- id="path477"
- style="fill:#c2c2b2" />
- <path
- d="M 984.042,483.378 C 984.042,492.948 976.284,500.706 966.714,500.706 C 957.142,500.706 949.384,492.948 949.384,483.378 C 949.384,473.808 957.142,466.048 966.714,466.048 C 976.284,466.048 984.042,473.808 984.042,483.378 z"
- id="path479"
- style="fill:#c2c2b2" />
- <path
- d="M 1036.208,483.378 C 1036.208,492.948 1028.448,500.706 1018.88,500.706 C 1009.308,500.706 1001.55,492.948 1001.55,483.378 C 1001.55,473.808 1009.308,466.048 1018.88,466.048 C 1028.448,466.048 1036.208,473.808 1036.208,483.378 z"
- id="path481"
- style="fill:#c2c2b2" />
- <path
- d="M 1088.374,483.378 C 1088.374,492.948 1080.616,500.706 1071.046,500.706 C 1061.474,500.706 1053.716,492.948 1053.716,483.378 C 1053.716,473.808 1061.474,466.048 1071.046,466.048 C 1080.616,466.048 1088.374,473.808 1088.374,483.378 z"
- id="path483"
- style="fill:#c2c2b2" />
- <path
- d="M 1140.54,483.378 C 1140.54,492.948 1132.782,500.706 1123.212,500.706 C 1113.64,500.706 1105.882,492.948 1105.882,483.378 C 1105.882,473.808 1113.64,466.048 1123.212,466.048 C 1132.782,466.048 1140.54,473.808 1140.54,483.378 z"
- id="path485"
- style="fill:#c2c2b2" />
- <path
- d="M 1192.706,483.378 C 1192.706,492.948 1184.948,500.706 1175.378,500.706 C 1165.806,500.706 1158.048,492.948 1158.048,483.378 C 1158.048,473.808 1165.806,466.048 1175.378,466.048 C 1184.948,466.048 1192.706,473.808 1192.706,483.378 z"
- id="path487"
- style="fill:#c2c2b2" />
- </g>
- <g
- id="g489"
- transform="translate(0.142,-39.123441)">
- <path
- d="M 45.046,534.384 C 45.046,543.954 37.288,551.712 27.718,551.712 C 18.147,551.712 10.388,543.954 10.388,534.384 C 10.388,524.814 18.147,517.054 27.718,517.054 C 37.288,517.054 45.046,524.813 45.046,534.384 z"
- id="path491"
- style="fill:#c2c2b2" />
- <path
- d="M 97.212,534.384 C 97.212,543.954 89.454,551.712 79.884,551.712 C 70.314,551.712 62.554,543.954 62.554,534.384 C 62.554,524.814 70.314,517.054 79.884,517.054 C 89.454,517.054 97.212,524.813 97.212,534.384 z"
- id="path493"
- style="fill:#c2c2b2" />
- <path
- d="M 149.379,534.384 C 149.379,543.954 141.621,551.712 132.05,551.712 C 122.48,551.712 114.721,543.954 114.721,534.384 C 114.721,524.814 122.48,517.054 132.05,517.054 C 141.621,517.054 149.379,524.813 149.379,534.384 z"
- id="path495"
- style="fill:#c2c2b2" />
- <path
- d="M 201.546,534.384 C 201.546,543.954 193.788,551.712 184.217,551.712 C 174.646,551.712 166.888,543.954 166.888,534.384 C 166.888,524.814 174.646,517.054 184.217,517.054 C 193.788,517.054 201.546,524.813 201.546,534.384 z"
- id="path497"
- style="fill:#c2c2b2" />
- <path
- d="M 253.712,534.384 C 253.712,543.954 245.954,551.712 236.384,551.712 C 226.813,551.712 219.054,543.954 219.054,534.384 C 219.054,524.814 226.813,517.054 236.384,517.054 C 245.954,517.054 253.712,524.813 253.712,534.384 z"
- id="path499"
- style="fill:#c2c2b2" />
- <path
- d="M 305.879,534.384 C 305.879,543.954 298.12,551.712 288.55,551.712 C 278.98,551.712 271.221,543.954 271.221,534.384 C 271.221,524.814 278.98,517.054 288.55,517.054 C 298.12,517.054 305.879,524.813 305.879,534.384 z"
- id="path501"
- style="fill:#c2c2b2" />
- <path
- d="M 358.046,534.384 C 358.046,543.954 350.287,551.712 340.717,551.712 C 331.146,551.712 323.388,543.954 323.388,534.384 C 323.388,524.814 331.146,517.054 340.717,517.054 C 350.287,517.054 358.046,524.813 358.046,534.384 z"
- id="path503"
- style="fill:#c2c2b2" />
- <path
- d="M 410.212,534.384 C 410.212,543.954 402.454,551.712 392.884,551.712 C 383.313,551.712 375.554,543.954 375.554,534.384 C 375.554,524.814 383.313,517.054 392.884,517.054 C 402.454,517.054 410.212,524.813 410.212,534.384 z"
- id="path505"
- style="fill:#c2c2b2" />
- <path
- d="M 462.378,534.384 C 462.378,543.954 454.62,551.712 445.05,551.712 C 435.48,551.712 427.72,543.954 427.72,534.384 C 427.72,524.814 435.48,517.054 445.05,517.054 C 454.62,517.054 462.378,524.813 462.378,534.384 z"
- id="path507"
- style="fill:#c2c2b2" />
- <path
- d="M 514.545,534.384 C 514.545,543.954 506.787,551.712 497.216,551.712 C 487.646,551.712 479.887,543.954 479.887,534.384 C 479.887,524.814 487.646,517.054 497.216,517.054 C 506.787,517.054 514.545,524.813 514.545,534.384 z"
- id="path509"
- style="fill:#c2c2b2" />
- <path
- d="M 566.712,534.384 C 566.712,543.954 558.954,551.712 549.384,551.712 C 539.812,551.712 532.054,543.954 532.054,534.384 C 532.054,524.814 539.812,517.054 549.384,517.054 C 558.954,517.054 566.712,524.813 566.712,534.384 z"
- id="path511"
- style="fill:#c2c2b2" />
- <path
- d="M 618.877,534.384 C 618.877,543.954 611.119,551.712 601.549,551.712 C 591.977,551.712 584.219,543.954 584.219,534.384 C 584.219,524.814 591.977,517.054 601.549,517.054 C 611.12,517.054 618.877,524.813 618.877,534.384 z"
- id="path513"
- style="fill:#c2c2b2" />
- <path
- d="M 671.043,534.384 C 671.043,543.954 663.285,551.712 653.715,551.712 C 644.143,551.712 636.385,543.954 636.385,534.384 C 636.385,524.814 644.143,517.054 653.715,517.054 C 663.286,517.054 671.043,524.813 671.043,534.384 z"
- id="path515"
- style="fill:#c2c2b2" />
- <path
- d="M 723.209,534.384 C 723.209,543.954 715.451,551.712 705.881,551.712 C 696.309,551.712 688.553,543.954 688.553,534.384 C 688.553,524.814 696.309,517.054 705.881,517.054 C 715.452,517.054 723.209,524.813 723.209,534.384 z"
- id="path517"
- style="fill:#c2c2b2" />
- <path
- d="M 775.377,534.384 C 775.377,543.954 767.617,551.712 758.047,551.712 C 748.477,551.712 740.719,543.954 740.719,534.384 C 740.719,524.814 748.477,517.054 758.047,517.054 C 767.617,517.054 775.377,524.813 775.377,534.384 z"
- id="path519"
- style="fill:#c2c2b2" />
- <path
- d="M 827.542,534.384 C 827.542,543.954 819.784,551.712 810.214,551.712 C 800.644,551.712 792.886,543.954 792.886,534.384 C 792.886,524.814 800.644,517.054 810.214,517.054 C 819.784,517.054 827.542,524.813 827.542,534.384 z"
- id="path521"
- style="fill:#c2c2b2" />
- <path
- d="M 879.709,534.384 C 879.709,543.954 871.949,551.712 862.381,551.712 C 852.809,551.712 845.051,543.954 845.051,534.384 C 845.051,524.814 852.809,517.054 862.381,517.054 C 871.95,517.054 879.709,524.813 879.709,534.384 z"
- id="path523"
- style="fill:#c2c2b2" />
- <path
- d="M 931.875,534.384 C 931.875,543.954 924.115,551.712 914.547,551.712 C 904.975,551.712 897.217,543.954 897.217,534.384 C 897.217,524.814 904.975,517.054 914.547,517.054 C 924.116,517.054 931.875,524.813 931.875,534.384 z"
- id="path525"
- style="fill:#c2c2b2" />
- <path
- d="M 984.042,534.384 C 984.042,543.954 976.284,551.712 966.714,551.712 C 957.142,551.712 949.384,543.954 949.384,534.384 C 949.384,524.814 957.142,517.054 966.714,517.054 C 976.284,517.054 984.042,524.813 984.042,534.384 z"
- id="path527"
- style="fill:#c2c2b2" />
- <path
- d="M 1036.208,534.384 C 1036.208,543.954 1028.448,551.712 1018.88,551.712 C 1009.308,551.712 1001.55,543.954 1001.55,534.384 C 1001.55,524.814 1009.308,517.054 1018.88,517.054 C 1028.448,517.054 1036.208,524.813 1036.208,534.384 z"
- id="path529"
- style="fill:#c2c2b2" />
- <path
- d="M 1088.374,534.384 C 1088.374,543.954 1080.616,551.712 1071.046,551.712 C 1061.474,551.712 1053.716,543.954 1053.716,534.384 C 1053.716,524.814 1061.474,517.054 1071.046,517.054 C 1080.616,517.054 1088.374,524.813 1088.374,534.384 z"
- id="path531"
- style="fill:#c2c2b2" />
- <path
- d="M 1140.54,534.384 C 1140.54,543.954 1132.782,551.712 1123.212,551.712 C 1113.64,551.712 1105.882,543.954 1105.882,534.384 C 1105.882,524.814 1113.64,517.054 1123.212,517.054 C 1132.782,517.054 1140.54,524.813 1140.54,534.384 z"
- id="path533"
- style="fill:#c2c2b2" />
- <path
- d="M 1192.706,534.384 C 1192.706,543.954 1184.948,551.712 1175.378,551.712 C 1165.806,551.712 1158.048,543.954 1158.048,534.384 C 1158.048,524.814 1165.806,517.054 1175.378,517.054 C 1184.948,517.054 1192.706,524.813 1192.706,534.384 z"
- id="path535"
- style="fill:#c2c2b2" />
- </g>
- <g
- id="g537"
- transform="translate(0.142,-39.123441)">
- <path
- d="M 45.046,585.39 C 45.046,594.96 37.288,602.718 27.718,602.718 C 18.147,602.718 10.388,594.96 10.388,585.39 C 10.388,575.82 18.147,568.06 27.718,568.06 C 37.288,568.06 45.046,575.819 45.046,585.39 z"
- id="path539"
- style="fill:#c2c2b2" />
- <path
- d="M 97.212,585.39 C 97.212,594.96 89.454,602.718 79.884,602.718 C 70.314,602.718 62.554,594.96 62.554,585.39 C 62.554,575.82 70.314,568.06 79.884,568.06 C 89.454,568.06 97.212,575.819 97.212,585.39 z"
- id="path541"
- style="fill:#c2c2b2" />
- <path
- d="M 149.379,585.39 C 149.379,594.96 141.621,602.718 132.05,602.718 C 122.48,602.718 114.721,594.96 114.721,585.39 C 114.721,575.82 122.48,568.06 132.05,568.06 C 141.621,568.06 149.379,575.819 149.379,585.39 z"
- id="path543"
- style="fill:#c2c2b2" />
- <path
- d="M 201.546,585.39 C 201.546,594.96 193.788,602.718 184.217,602.718 C 174.646,602.718 166.888,594.96 166.888,585.39 C 166.888,575.82 174.646,568.06 184.217,568.06 C 193.788,568.06 201.546,575.819 201.546,585.39 z"
- id="path545"
- style="fill:#c2c2b2" />
- <path
- d="M 253.712,585.39 C 253.712,594.96 245.954,602.718 236.384,602.718 C 226.813,602.718 219.054,594.96 219.054,585.39 C 219.054,575.82 226.813,568.06 236.384,568.06 C 245.954,568.06 253.712,575.819 253.712,585.39 z"
- id="path547"
- style="fill:#c2c2b2" />
- <path
- d="M 305.879,585.39 C 305.879,594.96 298.12,602.718 288.55,602.718 C 278.98,602.718 271.221,594.96 271.221,585.39 C 271.221,575.82 278.98,568.06 288.55,568.06 C 298.12,568.06 305.879,575.819 305.879,585.39 z"
- id="path549"
- style="fill:#c2c2b2" />
- <path
- d="M 358.046,585.39 C 358.046,594.96 350.287,602.718 340.717,602.718 C 331.146,602.718 323.388,594.96 323.388,585.39 C 323.388,575.82 331.146,568.06 340.717,568.06 C 350.287,568.06 358.046,575.819 358.046,585.39 z"
- id="path551"
- style="fill:#c2c2b2" />
- <path
- d="M 410.212,585.39 C 410.212,594.96 402.454,602.718 392.884,602.718 C 383.313,602.718 375.554,594.96 375.554,585.39 C 375.554,575.82 383.313,568.06 392.884,568.06 C 402.454,568.06 410.212,575.819 410.212,585.39 z"
- id="path553"
- style="fill:#c2c2b2" />
- <path
- d="M 462.378,585.39 C 462.378,594.96 454.62,602.718 445.05,602.718 C 435.48,602.718 427.72,594.96 427.72,585.39 C 427.72,575.82 435.48,568.06 445.05,568.06 C 454.62,568.06 462.378,575.819 462.378,585.39 z"
- id="path555"
- style="fill:#c2c2b2" />
- <path
- d="M 514.545,585.39 C 514.545,594.96 506.787,602.718 497.216,602.718 C 487.646,602.718 479.887,594.96 479.887,585.39 C 479.887,575.82 487.646,568.06 497.216,568.06 C 506.787,568.06 514.545,575.819 514.545,585.39 z"
- id="path557"
- style="fill:#c2c2b2" />
- <path
- d="M 566.712,585.39 C 566.712,594.96 558.954,602.718 549.384,602.718 C 539.812,602.718 532.054,594.96 532.054,585.39 C 532.054,575.82 539.812,568.06 549.384,568.06 C 558.954,568.06 566.712,575.819 566.712,585.39 z"
- id="path559"
- style="fill:#c2c2b2" />
- <path
- d="M 618.877,585.39 C 618.877,594.96 611.119,602.718 601.549,602.718 C 591.977,602.718 584.219,594.96 584.219,585.39 C 584.219,575.82 591.977,568.06 601.549,568.06 C 611.12,568.06 618.877,575.819 618.877,585.39 z"
- id="path561"
- style="fill:#c2c2b2" />
- <path
- d="M 671.043,585.39 C 671.043,594.96 663.285,602.718 653.715,602.718 C 644.143,602.718 636.385,594.96 636.385,585.39 C 636.385,575.82 644.143,568.06 653.715,568.06 C 663.286,568.06 671.043,575.819 671.043,585.39 z"
- id="path563"
- style="fill:#c2c2b2" />
- <path
- d="M 723.209,585.39 C 723.209,594.96 715.451,602.718 705.881,602.718 C 696.309,602.718 688.553,594.96 688.553,585.39 C 688.553,575.82 696.309,568.06 705.881,568.06 C 715.452,568.06 723.209,575.819 723.209,585.39 z"
- id="path565"
- style="fill:#c2c2b2" />
- <path
- d="M 775.377,585.39 C 775.377,594.96 767.617,602.718 758.047,602.718 C 748.477,602.718 740.719,594.96 740.719,585.39 C 740.719,575.82 748.477,568.06 758.047,568.06 C 767.617,568.06 775.377,575.819 775.377,585.39 z"
- id="path567"
- style="fill:#c2c2b2" />
- <path
- d="M 827.542,585.39 C 827.542,594.96 819.784,602.718 810.214,602.718 C 800.644,602.718 792.886,594.96 792.886,585.39 C 792.886,575.82 800.644,568.06 810.214,568.06 C 819.784,568.06 827.542,575.819 827.542,585.39 z"
- id="path569"
- style="fill:#c2c2b2" />
- <path
- d="M 879.709,585.39 C 879.709,594.96 871.949,602.718 862.381,602.718 C 852.809,602.718 845.051,594.96 845.051,585.39 C 845.051,575.82 852.809,568.06 862.381,568.06 C 871.95,568.06 879.709,575.819 879.709,585.39 z"
- id="path571"
- style="fill:#c2c2b2" />
- <path
- d="M 931.875,585.39 C 931.875,594.96 924.115,602.718 914.547,602.718 C 904.975,602.718 897.217,594.96 897.217,585.39 C 897.217,575.82 904.975,568.06 914.547,568.06 C 924.116,568.06 931.875,575.819 931.875,585.39 z"
- id="path573"
- style="fill:#c2c2b2" />
- <path
- d="M 984.042,585.39 C 984.042,594.96 976.284,602.718 966.714,602.718 C 957.142,602.718 949.384,594.96 949.384,585.39 C 949.384,575.82 957.142,568.06 966.714,568.06 C 976.284,568.06 984.042,575.819 984.042,585.39 z"
- id="path575"
- style="fill:#c2c2b2" />
- <path
- d="M 1036.208,585.39 C 1036.208,594.96 1028.448,602.718 1018.88,602.718 C 1009.308,602.718 1001.55,594.96 1001.55,585.39 C 1001.55,575.82 1009.308,568.06 1018.88,568.06 C 1028.448,568.06 1036.208,575.819 1036.208,585.39 z"
- id="path577"
- style="fill:#c2c2b2" />
- <path
- d="M 1088.374,585.39 C 1088.374,594.96 1080.616,602.718 1071.046,602.718 C 1061.474,602.718 1053.716,594.96 1053.716,585.39 C 1053.716,575.82 1061.474,568.06 1071.046,568.06 C 1080.616,568.06 1088.374,575.819 1088.374,585.39 z"
- id="path579"
- style="fill:#c2c2b2" />
- <path
- d="M 1140.54,585.39 C 1140.54,594.96 1132.782,602.718 1123.212,602.718 C 1113.64,602.718 1105.882,594.96 1105.882,585.39 C 1105.882,575.82 1113.64,568.06 1123.212,568.06 C 1132.782,568.06 1140.54,575.819 1140.54,585.39 z"
- id="path581"
- style="fill:#c2c2b2" />
- <path
- d="M 1192.706,585.39 C 1192.706,594.96 1184.948,602.718 1175.378,602.718 C 1165.806,602.718 1158.048,594.96 1158.048,585.39 C 1158.048,575.82 1165.806,568.06 1175.378,568.06 C 1184.948,568.06 1192.706,575.819 1192.706,585.39 z"
- id="path583"
- style="fill:#c2c2b2" />
- </g>
- <g
- id="g585"
- transform="translate(0.142,-39.123441)">
- <path
- d="M 45.046,636.396 C 45.046,645.966 37.288,653.724 27.718,653.724 C 18.147,653.724 10.388,645.966 10.388,636.396 C 10.388,626.826 18.147,619.066 27.718,619.066 C 37.288,619.065 45.046,626.825 45.046,636.396 z"
- id="path587"
- style="fill:#c2c2b2" />
- <path
- d="M 97.212,636.396 C 97.212,645.966 89.454,653.724 79.884,653.724 C 70.314,653.724 62.554,645.966 62.554,636.396 C 62.554,626.826 70.314,619.066 79.884,619.066 C 89.454,619.066 97.212,626.825 97.212,636.396 z"
- id="path589"
- style="fill:#c2c2b2" />
- <path
- d="M 149.379,636.396 C 149.379,645.966 141.621,653.724 132.05,653.724 C 122.48,653.724 114.721,645.966 114.721,636.396 C 114.721,626.826 122.48,619.066 132.05,619.066 C 141.621,619.065 149.379,626.825 149.379,636.396 z"
- id="path591"
- style="fill:#c2c2b2" />
- <path
- d="M 201.546,636.396 C 201.546,645.966 193.788,653.724 184.217,653.724 C 174.646,653.724 166.888,645.966 166.888,636.396 C 166.888,626.826 174.646,619.066 184.217,619.066 C 193.788,619.066 201.546,626.825 201.546,636.396 z"
- id="path593"
- style="fill:#c2c2b2" />
- <path
- d="M 253.712,636.396 C 253.712,645.966 245.954,653.724 236.384,653.724 C 226.813,653.724 219.054,645.966 219.054,636.396 C 219.054,626.826 226.813,619.066 236.384,619.066 C 245.954,619.065 253.712,626.825 253.712,636.396 z"
- id="path595"
- style="fill:#c2c2b2" />
- <path
- d="M 305.879,636.396 C 305.879,645.966 298.12,653.724 288.55,653.724 C 278.98,653.724 271.221,645.966 271.221,636.396 C 271.221,626.826 278.98,619.066 288.55,619.066 C 298.12,619.066 305.879,626.825 305.879,636.396 z"
- id="path597"
- style="fill:#c2c2b2" />
- <path
- d="M 358.046,636.396 C 358.046,645.966 350.287,653.724 340.717,653.724 C 331.146,653.724 323.388,645.966 323.388,636.396 C 323.388,626.826 331.146,619.066 340.717,619.066 C 350.287,619.065 358.046,626.825 358.046,636.396 z"
- id="path599"
- style="fill:#c2c2b2" />
- <path
- d="M 410.212,636.396 C 410.212,645.966 402.454,653.724 392.884,653.724 C 383.313,653.724 375.554,645.966 375.554,636.396 C 375.554,626.826 383.313,619.066 392.884,619.066 C 402.454,619.065 410.212,626.825 410.212,636.396 z"
- id="path601"
- style="fill:#c2c2b2" />
- <path
- d="M 462.378,636.396 C 462.378,645.966 454.62,653.724 445.05,653.724 C 435.48,653.724 427.72,645.966 427.72,636.396 C 427.72,626.826 435.48,619.066 445.05,619.066 C 454.62,619.066 462.378,626.825 462.378,636.396 z"
- id="path603"
- style="fill:#c2c2b2" />
- <path
- d="M 514.545,636.396 C 514.545,645.966 506.787,653.724 497.216,653.724 C 487.646,653.724 479.887,645.966 479.887,636.396 C 479.887,626.826 487.646,619.066 497.216,619.066 C 506.787,619.065 514.545,626.825 514.545,636.396 z"
- id="path605"
- style="fill:#c2c2b2" />
- <path
- d="M 566.712,636.396 C 566.712,645.966 558.954,653.724 549.384,653.724 C 539.812,653.724 532.054,645.966 532.054,636.396 C 532.054,626.826 539.812,619.066 549.384,619.066 C 558.954,619.065 566.712,626.825 566.712,636.396 z"
- id="path607"
- style="fill:#c2c2b2" />
- <path
- d="M 618.877,636.396 C 618.877,645.966 611.119,653.724 601.549,653.724 C 591.977,653.724 584.219,645.966 584.219,636.396 C 584.219,626.826 591.977,619.066 601.549,619.066 C 611.12,619.065 618.877,626.825 618.877,636.396 z"
- id="path609"
- style="fill:#c2c2b2" />
- <path
- d="M 671.043,636.396 C 671.043,645.966 663.285,653.724 653.715,653.724 C 644.143,653.724 636.385,645.966 636.385,636.396 C 636.385,626.826 644.143,619.066 653.715,619.066 C 663.286,619.065 671.043,626.825 671.043,636.396 z"
- id="path611"
- style="fill:#c2c2b2" />
- <path
- d="M 723.209,636.396 C 723.209,645.966 715.451,653.724 705.881,653.724 C 696.309,653.724 688.553,645.966 688.553,636.396 C 688.553,626.826 696.309,619.066 705.881,619.066 C 715.452,619.065 723.209,626.825 723.209,636.396 z"
- id="path613"
- style="fill:#c2c2b2" />
- <path
- d="M 775.377,636.396 C 775.377,645.966 767.617,653.724 758.047,653.724 C 748.477,653.724 740.719,645.966 740.719,636.396 C 740.719,626.826 748.477,619.066 758.047,619.066 C 767.617,619.066 775.377,626.825 775.377,636.396 z"
- id="path615"
- style="fill:#c2c2b2" />
- <path
- d="M 827.542,636.396 C 827.542,645.966 819.784,653.724 810.214,653.724 C 800.644,653.724 792.886,645.966 792.886,636.396 C 792.886,626.826 800.644,619.066 810.214,619.066 C 819.784,619.066 827.542,626.825 827.542,636.396 z"
- id="path617"
- style="fill:#c2c2b2" />
- <path
- d="M 879.709,636.396 C 879.709,645.966 871.949,653.724 862.381,653.724 C 852.809,653.724 845.051,645.966 845.051,636.396 C 845.051,626.826 852.809,619.066 862.381,619.066 C 871.95,619.065 879.709,626.825 879.709,636.396 z"
- id="path619"
- style="fill:#c2c2b2" />
- <path
- d="M 931.875,636.396 C 931.875,645.966 924.115,653.724 914.547,653.724 C 904.975,653.724 897.217,645.966 897.217,636.396 C 897.217,626.826 904.975,619.066 914.547,619.066 C 924.116,619.065 931.875,626.825 931.875,636.396 z"
- id="path621"
- style="fill:#c2c2b2" />
- <path
- d="M 984.042,636.396 C 984.042,645.966 976.284,653.724 966.714,653.724 C 957.142,653.724 949.384,645.966 949.384,636.396 C 949.384,626.826 957.142,619.066 966.714,619.066 C 976.284,619.065 984.042,626.825 984.042,636.396 z"
- id="path623"
- style="fill:#c2c2b2" />
- <path
- d="M 1036.208,636.396 C 1036.208,645.966 1028.448,653.724 1018.88,653.724 C 1009.308,653.724 1001.55,645.966 1001.55,636.396 C 1001.55,626.826 1009.308,619.066 1018.88,619.066 C 1028.448,619.065 1036.208,626.825 1036.208,636.396 z"
- id="path625"
- style="fill:#c2c2b2" />
- <path
- d="M 1088.374,636.396 C 1088.374,645.966 1080.616,653.724 1071.046,653.724 C 1061.474,653.724 1053.716,645.966 1053.716,636.396 C 1053.716,626.826 1061.474,619.066 1071.046,619.066 C 1080.616,619.065 1088.374,626.825 1088.374,636.396 z"
- id="path627"
- style="fill:#c2c2b2" />
- <path
- d="M 1140.54,636.396 C 1140.54,645.966 1132.782,653.724 1123.212,653.724 C 1113.64,653.724 1105.882,645.966 1105.882,636.396 C 1105.882,626.826 1113.64,619.066 1123.212,619.066 C 1132.782,619.065 1140.54,626.825 1140.54,636.396 z"
- id="path629"
- style="fill:#c2c2b2" />
- <path
- d="M 1192.706,636.396 C 1192.706,645.966 1184.948,653.724 1175.378,653.724 C 1165.806,653.724 1158.048,645.966 1158.048,636.396 C 1158.048,626.826 1165.806,619.066 1175.378,619.066 C 1184.948,619.065 1192.706,626.825 1192.706,636.396 z"
- id="path631"
- style="fill:#c2c2b2" />
- </g>
- <g
- id="g633"
- transform="translate(0.142,-39.123441)">
- <path
- d="M 45.046,687.401 C 45.046,696.971 37.288,704.729 27.718,704.729 C 18.147,704.729 10.388,696.971 10.388,687.401 C 10.388,677.831 18.147,670.071 27.718,670.071 C 37.288,670.071 45.046,677.831 45.046,687.401 z"
- id="path635"
- style="fill:#c2c2b2" />
- <path
- d="M 97.212,687.401 C 97.212,696.971 89.454,704.729 79.884,704.729 C 70.314,704.729 62.554,696.971 62.554,687.401 C 62.554,677.831 70.314,670.071 79.884,670.071 C 89.454,670.071 97.212,677.831 97.212,687.401 z"
- id="path637"
- style="fill:#c2c2b2" />
- <path
- d="M 149.379,687.401 C 149.379,696.971 141.621,704.729 132.05,704.729 C 122.48,704.729 114.721,696.971 114.721,687.401 C 114.721,677.831 122.48,670.071 132.05,670.071 C 141.621,670.071 149.379,677.831 149.379,687.401 z"
- id="path639"
- style="fill:#c2c2b2" />
- <path
- d="M 201.546,687.401 C 201.546,696.971 193.788,704.729 184.217,704.729 C 174.646,704.729 166.888,696.971 166.888,687.401 C 166.888,677.831 174.646,670.071 184.217,670.071 C 193.788,670.071 201.546,677.831 201.546,687.401 z"
- id="path641"
- style="fill:#c2c2b2" />
- <path
- d="M 253.712,687.401 C 253.712,696.971 245.954,704.729 236.384,704.729 C 226.813,704.729 219.054,696.971 219.054,687.401 C 219.054,677.831 226.813,670.071 236.384,670.071 C 245.954,670.071 253.712,677.831 253.712,687.401 z"
- id="path643"
- style="fill:#c2c2b2" />
- <path
- d="M 305.879,687.401 C 305.879,696.971 298.12,704.729 288.55,704.729 C 278.98,704.729 271.221,696.971 271.221,687.401 C 271.221,677.831 278.98,670.071 288.55,670.071 C 298.12,670.071 305.879,677.831 305.879,687.401 z"
- id="path645"
- style="fill:#c2c2b2" />
- <path
- d="M 358.046,687.401 C 358.046,696.971 350.287,704.729 340.717,704.729 C 331.146,704.729 323.388,696.971 323.388,687.401 C 323.388,677.831 331.146,670.071 340.717,670.071 C 350.287,670.071 358.046,677.831 358.046,687.401 z"
- id="path647"
- style="fill:#c2c2b2" />
- <path
- d="M 410.212,687.401 C 410.212,696.971 402.454,704.729 392.884,704.729 C 383.313,704.729 375.554,696.971 375.554,687.401 C 375.554,677.831 383.313,670.071 392.884,670.071 C 402.454,670.071 410.212,677.831 410.212,687.401 z"
- id="path649"
- style="fill:#c2c2b2" />
- <path
- d="M 462.378,687.401 C 462.378,696.971 454.62,704.729 445.05,704.729 C 435.48,704.729 427.72,696.971 427.72,687.401 C 427.72,677.831 435.48,670.071 445.05,670.071 C 454.62,670.071 462.378,677.831 462.378,687.401 z"
- id="path651"
- style="fill:#c2c2b2" />
- <path
- d="M 514.545,687.401 C 514.545,696.971 506.787,704.729 497.216,704.729 C 487.646,704.729 479.887,696.971 479.887,687.401 C 479.887,677.831 487.646,670.071 497.216,670.071 C 506.787,670.071 514.545,677.831 514.545,687.401 z"
- id="path653"
- style="fill:#c2c2b2" />
- <path
- d="M 566.712,687.401 C 566.712,696.971 558.954,704.729 549.384,704.729 C 539.812,704.729 532.054,696.971 532.054,687.401 C 532.054,677.831 539.812,670.071 549.384,670.071 C 558.954,670.071 566.712,677.831 566.712,687.401 z"
- id="path655"
- style="fill:#c2c2b2" />
- <path
- d="M 618.877,687.401 C 618.877,696.971 611.119,704.729 601.549,704.729 C 591.977,704.729 584.219,696.971 584.219,687.401 C 584.219,677.831 591.977,670.071 601.549,670.071 C 611.12,670.071 618.877,677.831 618.877,687.401 z"
- id="path657"
- style="fill:#c2c2b2" />
- <path
- d="M 671.043,687.401 C 671.043,696.971 663.285,704.729 653.715,704.729 C 644.143,704.729 636.385,696.971 636.385,687.401 C 636.385,677.831 644.143,670.071 653.715,670.071 C 663.286,670.071 671.043,677.831 671.043,687.401 z"
- id="path659"
- style="fill:#c2c2b2" />
- <path
- d="M 723.209,687.401 C 723.209,696.971 715.451,704.729 705.881,704.729 C 696.309,704.729 688.553,696.971 688.553,687.401 C 688.553,677.831 696.309,670.071 705.881,670.071 C 715.452,670.071 723.209,677.831 723.209,687.401 z"
- id="path661"
- style="fill:#c2c2b2" />
- <path
- d="M 775.377,687.401 C 775.377,696.971 767.617,704.729 758.047,704.729 C 748.477,704.729 740.719,696.971 740.719,687.401 C 740.719,677.831 748.477,670.071 758.047,670.071 C 767.617,670.071 775.377,677.831 775.377,687.401 z"
- id="path663"
- style="fill:#c2c2b2" />
- <path
- d="M 827.542,687.401 C 827.542,696.971 819.784,704.729 810.214,704.729 C 800.644,704.729 792.886,696.971 792.886,687.401 C 792.886,677.831 800.644,670.071 810.214,670.071 C 819.784,670.071 827.542,677.831 827.542,687.401 z"
- id="path665"
- style="fill:#c2c2b2" />
- <path
- d="M 879.709,687.401 C 879.709,696.971 871.949,704.729 862.381,704.729 C 852.809,704.729 845.051,696.971 845.051,687.401 C 845.051,677.831 852.809,670.071 862.381,670.071 C 871.95,670.071 879.709,677.831 879.709,687.401 z"
- id="path667"
- style="fill:#c2c2b2" />
- <path
- d="M 931.875,687.401 C 931.875,696.971 924.115,704.729 914.547,704.729 C 904.975,704.729 897.217,696.971 897.217,687.401 C 897.217,677.831 904.975,670.071 914.547,670.071 C 924.116,670.071 931.875,677.831 931.875,687.401 z"
- id="path669"
- style="fill:#c2c2b2" />
- <path
- d="M 984.042,687.401 C 984.042,696.971 976.284,704.729 966.714,704.729 C 957.142,704.729 949.384,696.971 949.384,687.401 C 949.384,677.831 957.142,670.071 966.714,670.071 C 976.284,670.071 984.042,677.831 984.042,687.401 z"
- id="path671"
- style="fill:#c2c2b2" />
- <path
- d="M 1036.208,687.401 C 1036.208,696.971 1028.448,704.729 1018.88,704.729 C 1009.308,704.729 1001.55,696.971 1001.55,687.401 C 1001.55,677.831 1009.308,670.071 1018.88,670.071 C 1028.448,670.071 1036.208,677.831 1036.208,687.401 z"
- id="path673"
- style="fill:#c2c2b2" />
- <path
- d="M 1088.374,687.401 C 1088.374,696.971 1080.616,704.729 1071.046,704.729 C 1061.474,704.729 1053.716,696.971 1053.716,687.401 C 1053.716,677.831 1061.474,670.071 1071.046,670.071 C 1080.616,670.071 1088.374,677.831 1088.374,687.401 z"
- id="path675"
- style="fill:#c2c2b2" />
- <path
- d="M 1140.54,687.401 C 1140.54,696.971 1132.782,704.729 1123.212,704.729 C 1113.64,704.729 1105.882,696.971 1105.882,687.401 C 1105.882,677.831 1113.64,670.071 1123.212,670.071 C 1132.782,670.071 1140.54,677.831 1140.54,687.401 z"
- id="path677"
- style="fill:#c2c2b2" />
- <path
- d="M 1192.706,687.401 C 1192.706,696.971 1184.948,704.729 1175.378,704.729 C 1165.806,704.729 1158.048,696.971 1158.048,687.401 C 1158.048,677.831 1165.806,670.071 1175.378,670.071 C 1184.948,670.071 1192.706,677.831 1192.706,687.401 z"
- id="path679"
- style="fill:#c2c2b2" />
- </g>
- <g
- id="g681"
- transform="translate(0.142,-39.123441)">
- <path
- d="M 45.046,738.407 C 45.046,747.977 37.288,755.735 27.718,755.735 C 18.147,755.735 10.388,747.977 10.388,738.407 C 10.388,728.837 18.147,721.077 27.718,721.077 C 37.288,721.077 45.046,728.837 45.046,738.407 z"
- id="path683"
- style="fill:#c2c2b2" />
- <path
- d="M 97.212,738.407 C 97.212,747.977 89.454,755.735 79.884,755.735 C 70.314,755.735 62.554,747.977 62.554,738.407 C 62.554,728.837 70.314,721.077 79.884,721.077 C 89.454,721.077 97.212,728.837 97.212,738.407 z"
- id="path685"
- style="fill:#c2c2b2" />
- <path
- d="M 149.379,738.407 C 149.379,747.977 141.621,755.735 132.05,755.735 C 122.48,755.735 114.721,747.977 114.721,738.407 C 114.721,728.837 122.48,721.077 132.05,721.077 C 141.621,721.077 149.379,728.837 149.379,738.407 z"
- id="path687"
- style="fill:#c2c2b2" />
- <path
- d="M 201.546,738.407 C 201.546,747.977 193.788,755.735 184.217,755.735 C 174.646,755.735 166.888,747.977 166.888,738.407 C 166.888,728.837 174.646,721.077 184.217,721.077 C 193.788,721.077 201.546,728.837 201.546,738.407 z"
- id="path689"
- style="fill:#c2c2b2" />
- <path
- d="M 253.712,738.407 C 253.712,747.977 245.954,755.735 236.384,755.735 C 226.813,755.735 219.054,747.977 219.054,738.407 C 219.054,728.837 226.813,721.077 236.384,721.077 C 245.954,721.077 253.712,728.837 253.712,738.407 z"
- id="path691"
- style="fill:#c2c2b2" />
- <path
- d="M 305.879,738.407 C 305.879,747.977 298.12,755.735 288.55,755.735 C 278.98,755.735 271.221,747.977 271.221,738.407 C 271.221,728.837 278.98,721.077 288.55,721.077 C 298.12,721.077 305.879,728.837 305.879,738.407 z"
- id="path693"
- style="fill:#c2c2b2" />
- <path
- d="M 358.046,738.407 C 358.046,747.977 350.287,755.735 340.717,755.735 C 331.146,755.735 323.388,747.977 323.388,738.407 C 323.388,728.837 331.146,721.077 340.717,721.077 C 350.287,721.077 358.046,728.837 358.046,738.407 z"
- id="path695"
- style="fill:#c2c2b2" />
- <path
- d="M 410.212,738.407 C 410.212,747.977 402.454,755.735 392.884,755.735 C 383.313,755.735 375.554,747.977 375.554,738.407 C 375.554,728.837 383.313,721.077 392.884,721.077 C 402.454,721.077 410.212,728.837 410.212,738.407 z"
- id="path697"
- style="fill:#c2c2b2" />
- <path
- d="M 462.378,738.407 C 462.378,747.977 454.62,755.735 445.05,755.735 C 435.48,755.735 427.72,747.977 427.72,738.407 C 427.72,728.837 435.48,721.077 445.05,721.077 C 454.62,721.077 462.378,728.837 462.378,738.407 z"
- id="path699"
- style="fill:#c2c2b2" />
- <path
- d="M 514.545,738.407 C 514.545,747.977 506.787,755.735 497.216,755.735 C 487.646,755.735 479.887,747.977 479.887,738.407 C 479.887,728.837 487.646,721.077 497.216,721.077 C 506.787,721.077 514.545,728.837 514.545,738.407 z"
- id="path701"
- style="fill:#c2c2b2" />
- <path
- d="M 566.712,738.407 C 566.712,747.977 558.954,755.735 549.384,755.735 C 539.812,755.735 532.054,747.977 532.054,738.407 C 532.054,728.837 539.812,721.077 549.384,721.077 C 558.954,721.077 566.712,728.837 566.712,738.407 z"
- id="path703"
- style="fill:#c2c2b2" />
- <path
- d="M 618.877,738.407 C 618.877,747.977 611.119,755.735 601.549,755.735 C 591.977,755.735 584.219,747.977 584.219,738.407 C 584.219,728.837 591.977,721.077 601.549,721.077 C 611.12,721.077 618.877,728.837 618.877,738.407 z"
- id="path705"
- style="fill:#c2c2b2" />
- <path
- d="M 671.043,738.407 C 671.043,747.977 663.285,755.735 653.715,755.735 C 644.143,755.735 636.385,747.977 636.385,738.407 C 636.385,728.837 644.143,721.077 653.715,721.077 C 663.286,721.077 671.043,728.837 671.043,738.407 z"
- id="path707"
- style="fill:#c2c2b2" />
- <path
- d="M 723.209,738.407 C 723.209,747.977 715.451,755.735 705.881,755.735 C 696.309,755.735 688.553,747.977 688.553,738.407 C 688.553,728.837 696.309,721.077 705.881,721.077 C 715.452,721.077 723.209,728.837 723.209,738.407 z"
- id="path709"
- style="fill:#c2c2b2" />
- <path
- d="M 775.377,738.407 C 775.377,747.977 767.617,755.735 758.047,755.735 C 748.477,755.735 740.719,747.977 740.719,738.407 C 740.719,728.837 748.477,721.077 758.047,721.077 C 767.617,721.077 775.377,728.837 775.377,738.407 z"
- id="path711"
- style="fill:#c2c2b2" />
- <path
- d="M 827.542,738.407 C 827.542,747.977 819.784,755.735 810.214,755.735 C 800.644,755.735 792.886,747.977 792.886,738.407 C 792.886,728.837 800.644,721.077 810.214,721.077 C 819.784,721.077 827.542,728.837 827.542,738.407 z"
- id="path713"
- style="fill:#c2c2b2" />
- <path
- d="M 879.709,738.407 C 879.709,747.977 871.949,755.735 862.381,755.735 C 852.809,755.735 845.051,747.977 845.051,738.407 C 845.051,728.837 852.809,721.077 862.381,721.077 C 871.95,721.077 879.709,728.837 879.709,738.407 z"
- id="path715"
- style="fill:#c2c2b2" />
- <path
- d="M 931.875,738.407 C 931.875,747.977 924.115,755.735 914.547,755.735 C 904.975,755.735 897.217,747.977 897.217,738.407 C 897.217,728.837 904.975,721.077 914.547,721.077 C 924.116,721.077 931.875,728.837 931.875,738.407 z"
- id="path717"
- style="fill:#c2c2b2" />
- <path
- d="M 984.042,738.407 C 984.042,747.977 976.284,755.735 966.714,755.735 C 957.142,755.735 949.384,747.977 949.384,738.407 C 949.384,728.837 957.142,721.077 966.714,721.077 C 976.284,721.077 984.042,728.837 984.042,738.407 z"
- id="path719"
- style="fill:#c2c2b2" />
- <path
- d="M 1036.208,738.407 C 1036.208,747.977 1028.448,755.735 1018.88,755.735 C 1009.308,755.735 1001.55,747.977 1001.55,738.407 C 1001.55,728.837 1009.308,721.077 1018.88,721.077 C 1028.448,721.077 1036.208,728.837 1036.208,738.407 z"
- id="path721"
- style="fill:#c2c2b2" />
- <path
- d="M 1088.374,738.407 C 1088.374,747.977 1080.616,755.735 1071.046,755.735 C 1061.474,755.735 1053.716,747.977 1053.716,738.407 C 1053.716,728.837 1061.474,721.077 1071.046,721.077 C 1080.616,721.077 1088.374,728.837 1088.374,738.407 z"
- id="path723"
- style="fill:#c2c2b2" />
- <path
- d="M 1140.54,738.407 C 1140.54,747.977 1132.782,755.735 1123.212,755.735 C 1113.64,755.735 1105.882,747.977 1105.882,738.407 C 1105.882,728.837 1113.64,721.077 1123.212,721.077 C 1132.782,721.077 1140.54,728.837 1140.54,738.407 z"
- id="path725"
- style="fill:#c2c2b2" />
- <path
- d="M 1192.706,738.407 C 1192.706,747.977 1184.948,755.735 1175.378,755.735 C 1165.806,755.735 1158.048,747.977 1158.048,738.407 C 1158.048,728.837 1165.806,721.077 1175.378,721.077 C 1184.948,721.077 1192.706,728.837 1192.706,738.407 z"
- id="path727"
- style="fill:#c2c2b2" />
- </g>
- <g
- id="g729"
- transform="translate(0.142,-39.123441)">
- <path
- d="M 45.046,789.413 C 45.046,798.983 37.288,806.741 27.718,806.741 C 18.147,806.741 10.388,798.983 10.388,789.413 C 10.388,779.843 18.147,772.083 27.718,772.083 C 37.288,772.083 45.046,779.843 45.046,789.413 z"
- id="path731"
- style="fill:#c2c2b2" />
- <path
- d="M 97.212,789.413 C 97.212,798.983 89.454,806.741 79.884,806.741 C 70.314,806.741 62.554,798.983 62.554,789.413 C 62.554,779.843 70.314,772.083 79.884,772.083 C 89.454,772.083 97.212,779.843 97.212,789.413 z"
- id="path733"
- style="fill:#c2c2b2" />
- <path
- d="M 149.379,789.413 C 149.379,798.983 141.621,806.741 132.05,806.741 C 122.48,806.741 114.721,798.983 114.721,789.413 C 114.721,779.843 122.48,772.083 132.05,772.083 C 141.621,772.083 149.379,779.843 149.379,789.413 z"
- id="path735"
- style="fill:#c2c2b2" />
- <path
- d="M 201.546,789.413 C 201.546,798.983 193.788,806.741 184.217,806.741 C 174.646,806.741 166.888,798.983 166.888,789.413 C 166.888,779.843 174.646,772.083 184.217,772.083 C 193.788,772.083 201.546,779.843 201.546,789.413 z"
- id="path737"
- style="fill:#c2c2b2" />
- <path
- d="M 253.712,789.413 C 253.712,798.983 245.954,806.741 236.384,806.741 C 226.813,806.741 219.054,798.983 219.054,789.413 C 219.054,779.843 226.813,772.083 236.384,772.083 C 245.954,772.083 253.712,779.843 253.712,789.413 z"
- id="path739"
- style="fill:#c2c2b2" />
- <path
- d="M 305.879,789.413 C 305.879,798.983 298.12,806.741 288.55,806.741 C 278.98,806.741 271.221,798.983 271.221,789.413 C 271.221,779.843 278.98,772.083 288.55,772.083 C 298.12,772.083 305.879,779.843 305.879,789.413 z"
- id="path741"
- style="fill:#c2c2b2" />
- <path
- d="M 358.046,789.413 C 358.046,798.983 350.287,806.741 340.717,806.741 C 331.146,806.741 323.388,798.983 323.388,789.413 C 323.388,779.843 331.146,772.083 340.717,772.083 C 350.287,772.083 358.046,779.843 358.046,789.413 z"
- id="path743"
- style="fill:#c2c2b2" />
- <path
- d="M 410.212,789.413 C 410.212,798.983 402.454,806.741 392.884,806.741 C 383.313,806.741 375.554,798.983 375.554,789.413 C 375.554,779.843 383.313,772.083 392.884,772.083 C 402.454,772.083 410.212,779.843 410.212,789.413 z"
- id="path745"
- style="fill:#c2c2b2" />
- <path
- d="M 462.378,789.413 C 462.378,798.983 454.62,806.741 445.05,806.741 C 435.48,806.741 427.72,798.983 427.72,789.413 C 427.72,779.843 435.48,772.083 445.05,772.083 C 454.62,772.083 462.378,779.843 462.378,789.413 z"
- id="path747"
- style="fill:#c2c2b2" />
- <path
- d="M 514.545,789.413 C 514.545,798.983 506.787,806.741 497.216,806.741 C 487.646,806.741 479.887,798.983 479.887,789.413 C 479.887,779.843 487.646,772.083 497.216,772.083 C 506.787,772.083 514.545,779.843 514.545,789.413 z"
- id="path749"
- style="fill:#c2c2b2" />
- <path
- d="M 566.712,789.413 C 566.712,798.983 558.954,806.741 549.384,806.741 C 539.812,806.741 532.054,798.983 532.054,789.413 C 532.054,779.843 539.812,772.083 549.384,772.083 C 558.954,772.083 566.712,779.843 566.712,789.413 z"
- id="path751"
- style="fill:#c2c2b2" />
- <path
- d="M 618.877,789.413 C 618.877,798.983 611.119,806.741 601.549,806.741 C 591.977,806.741 584.219,798.983 584.219,789.413 C 584.219,779.843 591.977,772.083 601.549,772.083 C 611.12,772.083 618.877,779.843 618.877,789.413 z"
- id="path753"
- style="fill:#c2c2b2" />
- <path
- d="M 671.043,789.413 C 671.043,798.983 663.285,806.741 653.715,806.741 C 644.143,806.741 636.385,798.983 636.385,789.413 C 636.385,779.843 644.143,772.083 653.715,772.083 C 663.286,772.083 671.043,779.843 671.043,789.413 z"
- id="path755"
- style="fill:#c2c2b2" />
- <path
- d="M 723.209,789.413 C 723.209,798.983 715.451,806.741 705.881,806.741 C 696.309,806.741 688.553,798.983 688.553,789.413 C 688.553,779.843 696.309,772.083 705.881,772.083 C 715.452,772.083 723.209,779.843 723.209,789.413 z"
- id="path757"
- style="fill:#c2c2b2" />
- <path
- d="M 775.377,789.413 C 775.377,798.983 767.617,806.741 758.047,806.741 C 748.477,806.741 740.719,798.983 740.719,789.413 C 740.719,779.843 748.477,772.083 758.047,772.083 C 767.617,772.083 775.377,779.843 775.377,789.413 z"
- id="path759"
- style="fill:#c2c2b2" />
- <path
- d="M 827.542,789.413 C 827.542,798.983 819.784,806.741 810.214,806.741 C 800.644,806.741 792.886,798.983 792.886,789.413 C 792.886,779.843 800.644,772.083 810.214,772.083 C 819.784,772.083 827.542,779.843 827.542,789.413 z"
- id="path761"
- style="fill:#c2c2b2" />
- <path
- d="M 879.709,789.413 C 879.709,798.983 871.949,806.741 862.381,806.741 C 852.809,806.741 845.051,798.983 845.051,789.413 C 845.051,779.843 852.809,772.083 862.381,772.083 C 871.95,772.083 879.709,779.843 879.709,789.413 z"
- id="path763"
- style="fill:#c2c2b2" />
- <path
- d="M 931.875,789.413 C 931.875,798.983 924.115,806.741 914.547,806.741 C 904.975,806.741 897.217,798.983 897.217,789.413 C 897.217,779.843 904.975,772.083 914.547,772.083 C 924.116,772.083 931.875,779.843 931.875,789.413 z"
- id="path765"
- style="fill:#c2c2b2" />
- <path
- d="M 984.042,789.413 C 984.042,798.983 976.284,806.741 966.714,806.741 C 957.142,806.741 949.384,798.983 949.384,789.413 C 949.384,779.843 957.142,772.083 966.714,772.083 C 976.284,772.083 984.042,779.843 984.042,789.413 z"
- id="path767"
- style="fill:#c2c2b2" />
- <path
- d="M 1036.208,789.413 C 1036.208,798.983 1028.448,806.741 1018.88,806.741 C 1009.308,806.741 1001.55,798.983 1001.55,789.413 C 1001.55,779.843 1009.308,772.083 1018.88,772.083 C 1028.448,772.083 1036.208,779.843 1036.208,789.413 z"
- id="path769"
- style="fill:#c2c2b2" />
- <path
- d="M 1088.374,789.413 C 1088.374,798.983 1080.616,806.741 1071.046,806.741 C 1061.474,806.741 1053.716,798.983 1053.716,789.413 C 1053.716,779.843 1061.474,772.083 1071.046,772.083 C 1080.616,772.083 1088.374,779.843 1088.374,789.413 z"
- id="path771"
- style="fill:#c2c2b2" />
- <path
- d="M 1140.54,789.413 C 1140.54,798.983 1132.782,806.741 1123.212,806.741 C 1113.64,806.741 1105.882,798.983 1105.882,789.413 C 1105.882,779.843 1113.64,772.083 1123.212,772.083 C 1132.782,772.083 1140.54,779.843 1140.54,789.413 z"
- id="path773"
- style="fill:#c2c2b2" />
- <path
- d="M 1192.706,789.413 C 1192.706,798.983 1184.948,806.741 1175.378,806.741 C 1165.806,806.741 1158.048,798.983 1158.048,789.413 C 1158.048,779.843 1165.806,772.083 1175.378,772.083 C 1184.948,772.083 1192.706,779.843 1192.706,789.413 z"
- id="path775"
- style="fill:#c2c2b2" />
- </g>
- <g
- id="g777"
- transform="translate(0.142,-39.123441)">
- <path
- d="M 45.046,840.419 C 45.046,849.989 37.288,857.747 27.718,857.747 C 18.147,857.747 10.388,849.989 10.388,840.419 C 10.388,830.849 18.147,823.089 27.718,823.089 C 37.288,823.089 45.046,830.849 45.046,840.419 z"
- id="path779"
- style="fill:#c2c2b2" />
- <path
- d="M 97.212,840.419 C 97.212,849.989 89.454,857.747 79.884,857.747 C 70.314,857.747 62.554,849.989 62.554,840.419 C 62.554,830.849 70.314,823.089 79.884,823.089 C 89.454,823.089 97.212,830.849 97.212,840.419 z"
- id="path781"
- style="fill:#c2c2b2" />
- <path
- d="M 149.379,840.419 C 149.379,849.989 141.621,857.747 132.05,857.747 C 122.48,857.747 114.721,849.989 114.721,840.419 C 114.721,830.849 122.48,823.089 132.05,823.089 C 141.621,823.089 149.379,830.849 149.379,840.419 z"
- id="path783"
- style="fill:#c2c2b2" />
- <path
- d="M 201.546,840.419 C 201.546,849.989 193.788,857.747 184.217,857.747 C 174.646,857.747 166.888,849.989 166.888,840.419 C 166.888,830.849 174.646,823.089 184.217,823.089 C 193.788,823.089 201.546,830.849 201.546,840.419 z"
- id="path785"
- style="fill:#c2c2b2" />
- <path
- d="M 253.712,840.419 C 253.712,849.989 245.954,857.747 236.384,857.747 C 226.813,857.747 219.054,849.989 219.054,840.419 C 219.054,830.849 226.813,823.089 236.384,823.089 C 245.954,823.089 253.712,830.849 253.712,840.419 z"
- id="path787"
- style="fill:#c2c2b2" />
- <path
- d="M 305.879,840.419 C 305.879,849.989 298.12,857.747 288.55,857.747 C 278.98,857.747 271.221,849.989 271.221,840.419 C 271.221,830.849 278.98,823.089 288.55,823.089 C 298.12,823.089 305.879,830.849 305.879,840.419 z"
- id="path789"
- style="fill:#c2c2b2" />
- <path
- d="M 358.046,840.419 C 358.046,849.989 350.287,857.747 340.717,857.747 C 331.146,857.747 323.388,849.989 323.388,840.419 C 323.388,830.849 331.146,823.089 340.717,823.089 C 350.287,823.089 358.046,830.849 358.046,840.419 z"
- id="path791"
- style="fill:#c2c2b2" />
- <path
- d="M 410.212,840.419 C 410.212,849.989 402.454,857.747 392.884,857.747 C 383.313,857.747 375.554,849.989 375.554,840.419 C 375.554,830.849 383.313,823.089 392.884,823.089 C 402.454,823.089 410.212,830.849 410.212,840.419 z"
- id="path793"
- style="fill:#c2c2b2" />
- <path
- d="M 462.378,840.419 C 462.378,849.989 454.62,857.747 445.05,857.747 C 435.48,857.747 427.72,849.989 427.72,840.419 C 427.72,830.849 435.48,823.089 445.05,823.089 C 454.62,823.089 462.378,830.849 462.378,840.419 z"
- id="path795"
- style="fill:#c2c2b2" />
- <path
- d="M 514.545,840.419 C 514.545,849.989 506.787,857.747 497.216,857.747 C 487.646,857.747 479.887,849.989 479.887,840.419 C 479.887,830.849 487.646,823.089 497.216,823.089 C 506.787,823.089 514.545,830.849 514.545,840.419 z"
- id="path797"
- style="fill:#c2c2b2" />
- <path
- d="M 566.712,840.419 C 566.712,849.989 558.954,857.747 549.384,857.747 C 539.812,857.747 532.054,849.989 532.054,840.419 C 532.054,830.849 539.812,823.089 549.384,823.089 C 558.954,823.089 566.712,830.849 566.712,840.419 z"
- id="path799"
- style="fill:#c2c2b2" />
- <path
- d="M 618.877,840.419 C 618.877,849.989 611.119,857.747 601.549,857.747 C 591.977,857.747 584.219,849.989 584.219,840.419 C 584.219,830.849 591.977,823.089 601.549,823.089 C 611.12,823.089 618.877,830.849 618.877,840.419 z"
- id="path801"
- style="fill:#c2c2b2" />
- <path
- d="M 671.043,840.419 C 671.043,849.989 663.285,857.747 653.715,857.747 C 644.143,857.747 636.385,849.989 636.385,840.419 C 636.385,830.849 644.143,823.089 653.715,823.089 C 663.286,823.089 671.043,830.849 671.043,840.419 z"
- id="path803"
- style="fill:#c2c2b2" />
- <path
- d="M 723.209,840.419 C 723.209,849.989 715.451,857.747 705.881,857.747 C 696.309,857.747 688.553,849.989 688.553,840.419 C 688.553,830.849 696.309,823.089 705.881,823.089 C 715.452,823.089 723.209,830.849 723.209,840.419 z"
- id="path805"
- style="fill:#c2c2b2" />
- <path
- d="M 775.377,840.419 C 775.377,849.989 767.617,857.747 758.047,857.747 C 748.477,857.747 740.719,849.989 740.719,840.419 C 740.719,830.849 748.477,823.089 758.047,823.089 C 767.617,823.089 775.377,830.849 775.377,840.419 z"
- id="path807"
- style="fill:#c2c2b2" />
- <path
- d="M 827.542,840.419 C 827.542,849.989 819.784,857.747 810.214,857.747 C 800.644,857.747 792.886,849.989 792.886,840.419 C 792.886,830.849 800.644,823.089 810.214,823.089 C 819.784,823.089 827.542,830.849 827.542,840.419 z"
- id="path809"
- style="fill:#c2c2b2" />
- <path
- d="M 879.709,840.419 C 879.709,849.989 871.949,857.747 862.381,857.747 C 852.809,857.747 845.051,849.989 845.051,840.419 C 845.051,830.849 852.809,823.089 862.381,823.089 C 871.95,823.089 879.709,830.849 879.709,840.419 z"
- id="path811"
- style="fill:#c2c2b2" />
- <path
- d="M 931.875,840.419 C 931.875,849.989 924.115,857.747 914.547,857.747 C 904.975,857.747 897.217,849.989 897.217,840.419 C 897.217,830.849 904.975,823.089 914.547,823.089 C 924.116,823.089 931.875,830.849 931.875,840.419 z"
- id="path813"
- style="fill:#c2c2b2" />
- <path
- d="M 984.042,840.419 C 984.042,849.989 976.284,857.747 966.714,857.747 C 957.142,857.747 949.384,849.989 949.384,840.419 C 949.384,830.849 957.142,823.089 966.714,823.089 C 976.284,823.089 984.042,830.849 984.042,840.419 z"
- id="path815"
- style="fill:#c2c2b2" />
- <path
- d="M 1036.208,840.419 C 1036.208,849.989 1028.448,857.747 1018.88,857.747 C 1009.308,857.747 1001.55,849.989 1001.55,840.419 C 1001.55,830.849 1009.308,823.089 1018.88,823.089 C 1028.448,823.089 1036.208,830.849 1036.208,840.419 z"
- id="path817"
- style="fill:#c2c2b2" />
- <path
- d="M 1088.374,840.419 C 1088.374,849.989 1080.616,857.747 1071.046,857.747 C 1061.474,857.747 1053.716,849.989 1053.716,840.419 C 1053.716,830.849 1061.474,823.089 1071.046,823.089 C 1080.616,823.089 1088.374,830.849 1088.374,840.419 z"
- id="path819"
- style="fill:#c2c2b2" />
- <path
- d="M 1140.54,840.419 C 1140.54,849.989 1132.782,857.747 1123.212,857.747 C 1113.64,857.747 1105.882,849.989 1105.882,840.419 C 1105.882,830.849 1113.64,823.089 1123.212,823.089 C 1132.782,823.089 1140.54,830.849 1140.54,840.419 z"
- id="path821"
- style="fill:#c2c2b2" />
- <path
- d="M 1192.706,840.419 C 1192.706,849.989 1184.948,857.747 1175.378,857.747 C 1165.806,857.747 1158.048,849.989 1158.048,840.419 C 1158.048,830.849 1165.806,823.089 1175.378,823.089 C 1184.948,823.089 1192.706,830.849 1192.706,840.419 z"
- id="path823"
- style="fill:#c2c2b2" />
- </g>
- <g
- id="g825"
- transform="translate(0.142,-39.123441)">
- <path
- d="M 45.046,891.425 C 45.046,881.855 37.288,874.095 27.718,874.095 C 18.147,874.095 10.388,881.855 10.388,891.425 C 10.388,894.548 11.226,897.47 12.671,900 L 42.763,900 C 44.208,897.47 45.046,894.548 45.046,891.425 z"
- id="path827"
- style="fill:#c2c2b2" />
- <path
- d="M 97.212,891.425 C 97.212,881.855 89.454,874.095 79.884,874.095 C 70.314,874.095 62.554,881.855 62.554,891.425 C 62.554,894.548 63.392,897.47 64.838,900 L 94.929,900 C 96.375,897.47 97.212,894.548 97.212,891.425 z"
- id="path829"
- style="fill:#c2c2b2" />
- <path
- d="M 149.379,891.425 C 149.379,881.855 141.621,874.095 132.05,874.095 C 122.48,874.095 114.721,881.855 114.721,891.425 C 114.721,894.548 115.559,897.47 117.004,900 L 147.096,900 C 148.542,897.47 149.379,894.548 149.379,891.425 z"
- id="path831"
- style="fill:#c2c2b2" />
- <path
- d="M 201.546,891.425 C 201.546,881.855 193.788,874.095 184.217,874.095 C 174.646,874.095 166.888,881.855 166.888,891.425 C 166.888,894.548 167.725,897.47 169.171,900 L 199.263,900 C 200.708,897.47 201.546,894.548 201.546,891.425 z"
- id="path833"
- style="fill:#c2c2b2" />
- <path
- d="M 253.712,891.425 C 253.712,881.855 245.954,874.095 236.384,874.095 C 226.813,874.095 219.054,881.855 219.054,891.425 C 219.054,894.548 219.892,897.47 221.337,900 L 251.429,900 C 252.875,897.47 253.712,894.548 253.712,891.425 z"
- id="path835"
- style="fill:#c2c2b2" />
- <path
- d="M 305.879,891.425 C 305.879,881.855 298.12,874.095 288.55,874.095 C 278.98,874.095 271.221,881.855 271.221,891.425 C 271.221,894.548 272.059,897.47 273.504,900 L 303.596,900 C 305.041,897.47 305.879,894.548 305.879,891.425 z"
- id="path837"
- style="fill:#c2c2b2" />
- <path
- d="M 358.046,891.425 C 358.046,881.855 350.287,874.095 340.717,874.095 C 331.146,874.095 323.388,881.855 323.388,891.425 C 323.388,894.548 324.225,897.47 325.671,900 L 355.763,900 C 357.208,897.47 358.046,894.548 358.046,891.425 z"
- id="path839"
- style="fill:#c2c2b2" />
- <path
- d="M 410.212,891.425 C 410.212,881.855 402.454,874.095 392.884,874.095 C 383.313,874.095 375.554,881.855 375.554,891.425 C 375.554,894.548 376.392,897.47 377.837,900 L 407.929,900 C 409.375,897.47 410.212,894.548 410.212,891.425 z"
- id="path841"
- style="fill:#c2c2b2" />
- <path
- d="M 462.378,891.425 C 462.378,881.855 454.62,874.095 445.05,874.095 C 435.48,874.095 427.72,881.855 427.72,891.425 C 427.72,894.548 428.558,897.47 430.004,900 L 460.095,900 C 461.541,897.47 462.378,894.548 462.378,891.425 z"
- id="path843"
- style="fill:#c2c2b2" />
- <path
- d="M 514.545,891.425 C 514.545,881.855 506.787,874.095 497.216,874.095 C 487.646,874.095 479.887,881.855 479.887,891.425 C 479.887,894.548 480.725,897.47 482.17,900 L 512.262,900 C 513.708,897.47 514.545,894.548 514.545,891.425 z"
- id="path845"
- style="fill:#c2c2b2" />
- <path
- d="M 566.712,891.425 C 566.712,881.855 558.954,874.095 549.384,874.095 C 539.812,874.095 532.054,881.855 532.054,891.425 C 532.054,894.548 532.891,897.47 534.337,900 L 564.429,900 C 565.875,897.47 566.712,894.548 566.712,891.425 z"
- id="path847"
- style="fill:#c2c2b2" />
- <path
- d="M 618.877,891.425 C 618.877,881.855 611.119,874.095 601.549,874.095 C 591.977,874.095 584.219,881.855 584.219,891.425 C 584.219,894.548 585.056,897.47 586.502,900 L 616.593,900 C 618.04,897.47 618.877,894.548 618.877,891.425 z"
- id="path849"
- style="fill:#c2c2b2" />
- <path
- d="M 671.043,891.425 C 671.043,881.855 663.285,874.095 653.715,874.095 C 644.143,874.095 636.385,881.855 636.385,891.425 C 636.385,894.548 637.223,897.47 638.668,900 L 668.76,900 C 670.206,897.47 671.043,894.548 671.043,891.425 z"
- id="path851"
- style="fill:#c2c2b2" />
- <path
- d="M 723.209,891.425 C 723.209,881.855 715.451,874.095 705.881,874.095 C 696.309,874.095 688.553,881.855 688.553,891.425 C 688.553,894.548 689.391,897.47 690.835,900 L 720.926,900 C 722.372,897.47 723.209,894.548 723.209,891.425 z"
- id="path853"
- style="fill:#c2c2b2" />
- <path
- d="M 775.377,891.425 C 775.377,881.855 767.617,874.095 758.047,874.095 C 748.477,874.095 740.719,881.855 740.719,891.425 C 740.719,894.548 741.557,897.47 743.002,900 L 773.094,900 C 774.54,897.47 775.377,894.548 775.377,891.425 z"
- id="path855"
- style="fill:#c2c2b2" />
- <path
- d="M 827.542,891.425 C 827.542,881.855 819.784,874.095 810.214,874.095 C 800.644,874.095 792.886,881.855 792.886,891.425 C 792.886,894.548 793.724,897.47 795.169,900 L 825.259,900 C 826.704,897.47 827.542,894.548 827.542,891.425 z"
- id="path857"
- style="fill:#c2c2b2" />
- <path
- d="M 879.709,891.425 C 879.709,881.855 871.949,874.095 862.381,874.095 C 852.809,874.095 845.051,881.855 845.051,891.425 C 845.051,894.548 845.889,897.47 847.334,900 L 877.426,900 C 878.872,897.47 879.709,894.548 879.709,891.425 z"
- id="path859"
- style="fill:#c2c2b2" />
- <path
- d="M 931.875,891.425 C 931.875,881.855 924.115,874.095 914.547,874.095 C 904.975,874.095 897.217,881.855 897.217,891.425 C 897.217,894.548 898.055,897.47 899.5,900 L 929.592,900 C 931.038,897.47 931.875,894.548 931.875,891.425 z"
- id="path861"
- style="fill:#c2c2b2" />
- <path
- d="M 984.042,891.425 C 984.042,881.855 976.284,874.095 966.714,874.095 C 957.142,874.095 949.384,881.855 949.384,891.425 C 949.384,894.548 950.222,897.47 951.667,900 L 981.759,900 C 983.204,897.47 984.042,894.548 984.042,891.425 z"
- id="path863"
- style="fill:#c2c2b2" />
- <path
- d="M 1036.208,891.425 C 1036.208,881.855 1028.448,874.095 1018.88,874.095 C 1009.308,874.095 1001.55,881.855 1001.55,891.425 C 1001.55,894.548 1002.388,897.47 1003.833,900 L 1033.925,900 C 1035.37,897.47 1036.208,894.548 1036.208,891.425 z"
- id="path865"
- style="fill:#c2c2b2" />
- <path
- d="M 1088.374,891.425 C 1088.374,881.855 1080.616,874.095 1071.046,874.095 C 1061.474,874.095 1053.716,881.855 1053.716,891.425 C 1053.716,894.548 1054.554,897.47 1055.999,900 L 1086.091,900 C 1087.536,897.47 1088.374,894.548 1088.374,891.425 z"
- id="path867"
- style="fill:#c2c2b2" />
- <path
- d="M 1140.54,891.425 C 1140.54,881.855 1132.782,874.095 1123.212,874.095 C 1113.64,874.095 1105.882,881.855 1105.882,891.425 C 1105.882,894.548 1106.72,897.47 1108.165,900 L 1138.257,900 C 1139.702,897.47 1140.54,894.548 1140.54,891.425 z"
- id="path869"
- style="fill:#c2c2b2" />
- <path
- d="M 1192.706,891.425 C 1192.706,881.855 1184.948,874.095 1175.378,874.095 C 1165.806,874.095 1158.048,881.855 1158.048,891.425 C 1158.048,894.548 1158.886,897.47 1160.331,900 L 1190.423,900 C 1191.868,897.47 1192.706,894.548 1192.706,891.425 z"
- id="path871"
- style="fill:#c2c2b2" />
- </g>
- </g>
- <g
- id="g873"
- transform="translate(0.142,-39.123441)">
- <path
- d="M 7.958,696.579 C 29.599,696.579 50.699,698.888 71.042,703.234 C 94.509,691.03 121.172,684.125 149.452,684.125 C 243.444,684.125 319.64,760.322 319.64,854.313 C 319.64,870.141 317.471,885.46 313.429,900.001 L 454.346,900.001 C 454.521,895.791 454.632,891.563 454.632,887.311 C 454.632,721.252 320.012,586.631 153.951,586.631 C 98.038,586.631 45.702,601.91 0.857,628.494 L 0.857,696.67 C 3.219,696.614 5.584,696.579 7.958,696.579 z"
- id="path875"
- style="fill:none;stroke:#ffffff;stroke-width:1.71599996;stroke-dasharray:2.5739, 4.2899" />
- <path
- d="M 1201.858,575.594 C 1121.563,595.046 1053.867,646.719 1013.223,716.163 C 1065.821,719.237 1114.787,735.819 1156.699,762.51 C 1169.957,757.42 1184.351,754.623 1199.401,754.623 C 1200.222,754.623 1201.041,754.638 1201.858,754.654"
- id="path877"
- style="fill:none;stroke:#ffffff;stroke-width:1.71599996;stroke-dasharray:2.5739, 4.2899" />
- <path
- d="M 292.39,900 C 258.653,801.082 174.766,725.4 71.043,703.234 C 41.526,718.585 17.08,742.33 0.858,771.307"
- id="path879"
- style="fill:none;stroke:#ffffff;stroke-width:1.71599996;stroke-dasharray:2.5739, 4.2899" />
- <path
- d="M 972.214,867.81 C 972.214,812.499 987.165,760.686 1013.223,716.164 C 1007.327,715.82 1001.393,715.625 995.411,715.625 C 870.582,715.625 763.529,791.694 718.057,900.001 L 973.932,900.001 C 972.806,889.423 972.214,878.686 972.214,867.81 z"
- id="path881"
- style="fill:none;stroke:#ffffff;stroke-width:1.71599996;stroke-dasharray:2.5739, 4.2899" />
- <path
- d="M 1201.858,797.717 C 1187.985,784.61 1172.869,772.808 1156.699,762.51 C 1111.966,779.682 1080.21,823.035 1080.21,873.813 C 1080.21,882.811 1081.214,891.573 1083.103,900.001"
- id="path883"
- style="fill:none;stroke:#ffffff;stroke-width:1.71599996;stroke-dasharray:2.5739, 4.2899" />
- </g>
- </g>
- <g
- id="Layer_3_2_"
- transform="translate(9.9998045e-4,-38.982441)">
- <path
- d="M 1201.858,899 L 1.858,899 L 1.858,0 L 1201.858,0 L 1201.858,899 z"
- id="path886"
- style="fill:none" />
- <path
- d="M 638.358,759.495 C 638.358,768.726 630.874,776.212 621.64,776.212 L 191.188,776.212 C 181.955,776.212 174.47,768.727 174.47,759.495 L 174.47,719.795 C 174.47,710.563 181.955,703.077 191.188,703.077 L 621.64,703.077 C 630.873,703.077 638.358,710.562 638.358,719.795 L 638.358,759.495 z"
- id="path888"
- style="fill:#f8601f" />
- <path
- d="M 638.358,845.495 C 638.358,854.726 630.874,862.212 621.64,862.212 L 191.188,862.212 C 181.955,862.212 174.47,854.727 174.47,845.495 L 174.47,805.795 C 174.47,796.563 181.955,789.077 191.188,789.077 L 621.64,789.077 C 630.873,789.077 638.358,796.562 638.358,805.795 L 638.358,845.495 z"
- id="path890"
- style="fill:#f8601f" />
- <path
- d="M 212.754,213.396 C 192.41,213.396 175.858,229.947 175.858,250.292 L 175.858,638.093 C 175.858,658.438 192.409,674.989 212.754,674.989 L 600.555,674.989 C 620.9,674.989 637.45,658.438 637.45,638.093 L 637.45,250.292 C 637.45,229.948 620.9,213.396 600.555,213.396 L 212.754,213.396 z"
- id="path892"
- style="fill:#f8601f" />
- <path
- d="M 625.419,634.73 C 625.419,650.32 612.781,662.958 597.191,662.958 L 216.117,662.958 C 200.528,662.958 187.889,650.32 187.889,634.73 L 187.889,253.655 C 187.889,238.066 200.528,225.427 216.117,225.427 L 597.192,225.427 C 612.782,225.427 625.42,238.066 625.42,253.655 L 625.42,634.73 L 625.419,634.73 z"
- id="path894"
- style="fill:none;stroke:#ffffff;stroke-width:1.71599996;stroke-dasharray:2.5739, 4.2899" />
- <path
- d="M 332.869,303.483 C 332.869,338.075 304.827,366.116 270.237,366.116 C 235.645,366.116 207.604,338.074 207.604,303.483 C 207.604,268.892 235.646,240.851 270.237,240.851 C 304.827,240.851 332.869,268.893 332.869,303.483 z"
- id="path896" />
- <path
- d="M 323.431,303.483 C 323.431,332.862 299.615,356.678 270.237,356.678 C 240.858,356.678 217.042,332.862 217.042,303.483 C 217.042,274.105 240.858,250.288 270.237,250.288 C 299.615,250.289 323.431,274.105 323.431,303.483 z"
- id="path898"
- style="fill:none;stroke:#ffffff;stroke-width:1.71599996;stroke-dasharray:2.5739, 4.2899" />
- <path
- d="M 469.671,303.483 C 469.671,338.075 441.629,366.116 407.038,366.116 C 372.447,366.116 344.406,338.074 344.406,303.483 C 344.406,268.892 372.447,240.851 407.038,240.851 C 441.629,240.851 469.671,268.893 469.671,303.483 z"
- id="path900" />
- <path
- d="M 606.473,303.483 C 606.473,338.075 578.432,366.116 543.841,366.116 C 509.25,366.116 481.208,338.074 481.208,303.483 C 481.208,268.892 509.25,240.851 543.841,240.851 C 578.433,240.851 606.473,268.893 606.473,303.483 z"
- id="path902" />
- <path
- d="M 332.869,444.192 C 332.869,478.783 304.827,506.825 270.237,506.825 C 235.645,506.825 207.604,478.783 207.604,444.192 C 207.604,409.601 235.646,381.56 270.237,381.56 C 304.827,381.56 332.869,409.602 332.869,444.192 z"
- id="path904" />
- <path
- d="M 469.671,444.192 C 469.671,478.783 441.629,506.825 407.038,506.825 C 372.447,506.825 344.406,478.783 344.406,444.192 C 344.406,409.601 372.447,381.56 407.038,381.56 C 441.629,381.56 469.671,409.602 469.671,444.192 z"
- id="path906" />
- <path
- d="M 606.473,444.192 C 606.473,478.783 578.432,506.825 543.841,506.825 C 509.25,506.825 481.208,478.783 481.208,444.192 C 481.208,409.601 509.25,381.56 543.841,381.56 C 578.433,381.56 606.473,409.602 606.473,444.192 z"
- id="path908" />
- <path
- d="M 332.869,584.901 C 332.869,619.491 304.827,647.533 270.237,647.533 C 235.645,647.533 207.604,619.491 207.604,584.901 C 207.604,550.31 235.646,522.268 270.237,522.268 C 304.827,522.269 332.869,550.311 332.869,584.901 z"
- id="path910" />
- <path
- d="M 469.671,584.901 C 469.671,619.491 441.629,647.533 407.038,647.533 C 372.447,647.533 344.406,619.491 344.406,584.901 C 344.406,550.31 372.447,522.268 407.038,522.268 C 441.629,522.269 469.671,550.311 469.671,584.901 z"
- id="path912" />
- <path
- d="M 606.473,584.901 C 606.473,619.491 578.432,647.533 543.841,647.533 C 509.25,647.533 481.208,619.491 481.208,584.901 C 481.208,550.31 509.25,522.268 543.841,522.268 C 578.433,522.269 606.473,550.311 606.473,584.901 z"
- id="path914" />
- <g
- id="g916">
- <path
- d="M 358.292,154.295 L 367.767,154.295 C 366.998,157.624 366.743,161.978 366.743,167.185 L 366.743,214.134 L 355.902,217.036 L 355.902,200.476 C 355.902,198.769 355.987,196.976 356.158,196.037 C 353.853,198.086 350.866,199.11 347.451,199.11 C 342.415,199.11 336.781,197.232 333.111,192.025 C 330.123,187.757 329.099,183.83 329.099,176.916 C 329.099,169.148 330.379,164.282 333.538,160.185 C 334.733,158.648 336.184,157.283 337.806,156.173 C 340.623,154.381 344.122,153.271 347.196,153.271 C 351.72,153.271 356.5,155.32 357.439,157.71 C 357.523,156.173 357.694,155.576 358.292,154.295 z M 355.902,165.819 C 354.28,164.112 351.89,162.831 349.329,162.831 C 347.451,162.831 345.488,163.685 344.378,164.794 C 341.902,167.27 341.647,171.623 341.647,175.464 C 341.647,182.89 342.586,185.964 344.037,187.5 C 345.317,188.866 347.366,189.72 349.329,189.72 C 351.89,189.72 354.537,188.012 355.902,186.391 L 355.902,165.819 L 355.902,165.819 z"
- id="path918"
- style="fill:#f8601f" />
- <path
- d="M 378.266,155.405 L 389.534,153.271 L 389.534,181.355 C 389.534,185.282 389.79,187.331 390.473,188.525 C 391.071,189.72 392.778,190.574 394.485,190.574 C 397.302,190.574 400.716,188.525 401.57,186.391 L 401.57,155.661 L 412.496,153.356 L 412.496,186.732 C 412.496,189.634 413.435,192.622 415.142,194.67 L 407.033,199.279 C 405.582,198.255 404.387,196.804 403.618,195.011 C 400.801,197.743 396.703,199.194 392.094,199.194 C 385.948,199.194 380.656,196.292 379.204,192.109 C 378.521,190.146 378.265,187.841 378.265,183.402 L 378.265,155.405 L 378.266,155.405 z"
- id="path920" />
- <path
- d="M 429.226,135.26 C 433.067,135.26 436.141,138.419 436.141,142.345 C 436.141,146.272 432.982,149.43 429.056,149.43 C 425.215,149.43 422.056,146.272 422.056,142.345 C 422.056,138.418 425.3,135.26 429.226,135.26 z M 423.336,155.149 L 434.774,153.357 L 434.774,198.086 L 423.336,198.086 L 423.336,155.149 z"
- id="path922" />
- <path
- d="M 443.823,156.173 L 453.981,153.271 C 455.005,155.064 455.603,156.942 455.603,158.734 C 458.249,156.856 458.761,156.514 460.64,155.49 C 462.945,154.295 465.932,153.612 468.493,153.612 C 473.359,153.612 477.627,156.173 478.993,159.928 C 479.591,161.55 479.847,163.428 479.847,166.159 L 479.847,198.084 L 468.579,198.084 L 468.579,169.659 C 468.579,164.708 467.725,163.257 464.738,163.257 C 462.433,163.257 459.446,164.794 456.8,167.184 L 456.8,198.085 L 445.36,198.085 L 445.36,166.416 C 445.36,162.661 444.848,159.076 443.823,156.173 z"
- id="path924" />
- <path
- d="M 512.624,154.295 L 509.722,161.892 L 502.381,161.892 L 502.381,184.171 C 502.381,189.72 503.405,191.171 507.332,191.171 C 508.356,191.171 509.381,190.915 511.43,190.317 L 512.881,197.146 C 509.552,198.512 506.565,199.109 503.577,199.109 C 497.772,199.109 493.077,196.548 491.797,192.707 C 491.114,190.829 491.028,189.976 491.028,185.964 L 491.028,161.892 L 486.675,161.892 L 486.675,154.466 L 491.028,154.466 C 491.028,150.198 491.028,147.296 491.455,144.052 L 503.064,141.15 C 502.637,145.162 502.381,149.857 502.381,154.296 L 512.624,154.296 L 512.624,154.295 z"
- id="path926"
- style="fill:#f8601f" />
- <path
- d="M 546.341,186.477 L 550.78,193.306 C 545.743,197.403 540.451,199.367 534.305,199.367 C 521.757,199.367 513.648,190.49 513.648,176.746 C 513.648,168.892 515.27,163.685 519.111,159.417 C 522.696,155.405 527.05,153.527 532.854,153.527 C 537.891,153.527 542.671,155.234 545.488,158.136 C 549.5,162.233 551.292,168.123 551.292,177.257 C 551.292,178.196 551.292,178.537 551.292,179.903 L 526.025,179.903 L 526.025,180.245 C 526.025,186.988 529.354,190.829 535.244,190.829 C 539.17,190.83 542.841,189.379 546.341,186.477 z M 526.195,171.539 L 539.426,171.539 L 539.426,171.027 C 539.426,167.783 539.085,166.076 538.06,164.454 C 536.951,162.746 535.329,161.893 533.024,161.893 C 528.67,161.893 526.195,165.308 526.195,171.368 L 526.195,171.539 L 526.195,171.539 z"
- id="path928" />
- <path
- d="M 581.254,154.295 L 578.352,161.892 L 571.011,161.892 L 571.011,184.171 C 571.011,189.72 572.035,191.171 575.962,191.171 C 576.986,191.171 578.011,190.915 580.06,190.317 L 581.511,197.146 C 578.182,198.512 575.194,199.109 572.206,199.109 C 566.401,199.109 561.706,196.548 560.426,192.707 C 559.743,190.829 559.658,189.976 559.658,185.964 L 559.658,161.892 L 555.304,161.892 L 555.304,154.466 L 559.658,154.466 C 559.658,150.198 559.658,147.296 560.085,144.052 L 571.694,141.15 C 571.267,145.162 571.011,149.857 571.011,154.296 L 581.254,154.296 L 581.254,154.295 z"
- id="path930"
- style="fill:#f8601f" />
- <path
- d="M 590.643,135.26 C 594.484,135.26 597.558,138.419 597.558,142.345 C 597.558,146.272 594.399,149.43 590.473,149.43 C 586.632,149.43 583.473,146.272 583.473,142.345 C 583.472,138.418 586.716,135.26 590.643,135.26 z M 584.752,155.149 L 596.19,153.357 L 596.19,198.086 L 584.752,198.086 L 584.752,155.149 z"
- id="path932" />
- </g>
- <path
- d="M 459.85,303.483 C 459.85,332.862 436.033,356.678 406.655,356.678 C 377.277,356.678 353.46,332.862 353.46,303.483 C 353.46,274.105 377.276,250.288 406.655,250.288 C 436.034,250.288 459.85,274.105 459.85,303.483 z"
- id="path934"
- style="fill:none;stroke:#ffffff;stroke-width:1.71599996;stroke-dasharray:2.5739, 4.2899" />
- <path
- d="M 597.126,303.483 C 597.126,332.862 573.31,356.678 543.932,356.678 C 514.553,356.678 490.737,332.862 490.737,303.483 C 490.737,274.105 514.553,250.288 543.932,250.288 C 573.311,250.289 597.126,274.105 597.126,303.483 z"
- id="path936"
- style="fill:none;stroke:#ffffff;stroke-width:1.71599996;stroke-dasharray:2.5739, 4.2899" />
- <path
- d="M 323.431,443.334 C 323.431,472.714 299.615,496.529 270.237,496.529 C 240.858,496.529 217.042,472.714 217.042,443.334 C 217.042,413.956 240.858,390.14 270.237,390.14 C 299.615,390.14 323.431,413.956 323.431,443.334 z"
- id="path938"
- style="fill:none;stroke:#ffffff;stroke-width:1.71599996;stroke-dasharray:2.5739, 4.2899" />
- <path
- d="M 459.85,443.334 C 459.85,472.714 436.033,496.529 406.655,496.529 C 377.277,496.529 353.46,472.714 353.46,443.334 C 353.46,413.956 377.276,390.14 406.655,390.14 C 436.034,390.14 459.85,413.956 459.85,443.334 z"
- id="path940"
- style="fill:none;stroke:#ffffff;stroke-width:1.71599996;stroke-dasharray:2.5739, 4.2899" />
- <path
- d="M 597.126,443.334 C 597.126,472.714 573.31,496.529 543.932,496.529 C 514.553,496.529 490.737,472.714 490.737,443.334 C 490.737,413.956 514.553,390.14 543.932,390.14 C 573.311,390.14 597.126,413.956 597.126,443.334 z"
- id="path942"
- style="fill:none;stroke:#ffffff;stroke-width:1.71599996;stroke-dasharray:2.5739, 4.2899" />
- <path
- d="M 323.431,584.901 C 323.431,614.28 299.615,638.096 270.237,638.096 C 240.858,638.096 217.042,614.28 217.042,584.901 C 217.042,555.522 240.858,531.707 270.237,531.707 C 299.615,531.707 323.431,555.522 323.431,584.901 z"
- id="path944"
- style="fill:none;stroke:#ffffff;stroke-width:1.71599996;stroke-dasharray:2.5739, 4.2899" />
- <path
- d="M 459.85,584.901 C 459.85,614.28 436.033,638.096 406.655,638.096 C 377.277,638.096 353.46,614.28 353.46,584.901 C 353.46,555.522 377.276,531.707 406.655,531.707 C 436.034,531.707 459.85,555.522 459.85,584.901 z"
- id="path946"
- style="fill:none;stroke:#ffffff;stroke-width:1.71599996;stroke-dasharray:2.5739, 4.2899" />
- <path
- d="M 597.126,584.901 C 597.126,614.28 573.31,638.096 543.932,638.096 C 514.553,638.096 490.737,614.28 490.737,584.901 C 490.737,555.522 514.553,531.707 543.932,531.707 C 573.311,531.707 597.126,555.522 597.126,584.901 z"
- id="path948"
- style="fill:none;stroke:#ffffff;stroke-width:1.71599996;stroke-dasharray:2.5739, 4.2899" />
- <path
- d="M 366.614,183.366 L 1201.48,183.366"
- id="path950"
- style="fill:none;stroke:#ffffff;stroke-width:1.71599996;stroke-dasharray:2.5739, 4.2899" />
- </g>
- <g
- id="Layer_2_2_"
- transform="translate(9.9998045e-4,-38.982441)">
- <g
- id="g953">
- <defs
- id="defs955">
- <path
- id="XMLID_2_"
- d="M 1066.131,577.612 C 1066.131,604.363 1044.445,626.047 1017.693,626.047 C 990.943,626.047 969.256,604.363 969.256,577.612 C 969.256,550.861 990.943,529.174 1017.693,529.174 C 1044.446,529.175 1066.131,550.861 1066.131,577.612 z" />
- </defs>
- <use
- xlink:href="#XMLID_2_"
- id="use958"
- style="fill:#f8601f"
- x="0"
- y="0"
- width="1203"
- height="901" />
- <clipPath
- id="XMLID_4_">
- <use
- xlink:href="#XMLID_2_"
- id="use961"
- x="0"
- y="0"
- width="1203"
- height="901" />
- </clipPath>
- <g
- id="g963">
- <path
- clip-path="url(#XMLID_4_)"
- d="M 1066.682,581.586 C 1066.682,599.177 1052.424,613.435 1034.833,613.435 C 1017.243,613.435 1002.985,599.177 1002.985,581.586 C 1002.985,563.996 1017.243,549.736 1034.833,549.736 C 1052.424,549.736 1066.682,563.996 1066.682,581.586 z"
- id="path965"
- style="fill:none;stroke:#ffffff;stroke-width:1.96270001;stroke-dasharray:2.9441, 4.9068" />
- <g
- id="g967">
- <path
- clip-path="url(#XMLID_4_)"
- d="M 1037.914,609.766 L 1032.286,603.443 C 1040.613,601.285 1050.328,593.42 1052.641,586.943 C 1050.328,588.022 1048.631,588.408 1046.395,588.408 C 1036.989,588.408 1029.818,581.007 1029.818,571.214 C 1029.818,560.805 1037.682,553.172 1048.477,553.172 C 1059.965,553.172 1066.905,561.113 1066.905,574.222 C 1066.905,584.553 1062.742,593.112 1054.26,600.283 C 1049.556,604.214 1043.388,607.838 1037.914,609.766 z M 1054.954,577.228 C 1055.494,575.377 1055.725,573.681 1055.725,571.445 C 1055.725,564.968 1052.872,561.113 1048.246,561.113 C 1043.851,561.113 1040.998,564.968 1040.998,570.905 C 1040.998,576.457 1044.083,580.081 1048.786,580.081 C 1051.33,580.08 1052.949,579.31 1054.954,577.228 z"
- id="path969"
- style="fill:#ffffff" />
- </g>
- </g>
- </g>
- <g
- id="g971">
- <defs
- id="defs973">
- <path
- id="XMLID_6_"
- d="M 939.424,577.612 C 939.424,604.363 917.739,626.047 890.989,626.047 C 864.238,626.047 842.552,604.363 842.552,577.612 C 842.552,550.861 864.238,529.174 890.989,529.174 C 917.74,529.175 939.424,550.861 939.424,577.612 z" />
- </defs>
- <use
- xlink:href="#XMLID_6_"
- id="use976"
- style="fill:#f8601f"
- x="0"
- y="0"
- width="1203"
- height="901" />
- <clipPath
- id="XMLID_8_">
- <use
- xlink:href="#XMLID_6_"
- id="use979"
- x="0"
- y="0"
- width="1203"
- height="901" />
- </clipPath>
- <path
- clip-path="url(#XMLID_8_)"
- d="M 927.69,592.737 C 927.69,612.855 911.382,629.162 891.266,629.162 C 871.148,629.162 854.84,612.855 854.84,592.737 C 854.84,572.621 871.148,556.312 891.266,556.312 C 911.382,556.312 927.69,572.621 927.69,592.737 z"
- id="path981"
- style="fill:none;stroke:#ffffff;stroke-width:1.96270001;stroke-dasharray:2.9441, 4.9068" />
- <g
- id="g983">
- <g
- id="g985">
- <path
- clip-path="url(#XMLID_8_)"
- d="M 899.34,597.971 C 902.27,598.819 905.662,600.746 907.899,602.906 C 910.057,604.911 911.292,607.918 911.292,611.233 C 911.292,618.25 906.203,624.11 898.724,625.961 C 896.256,626.577 893.404,626.886 890.628,626.886 C 885.462,626.886 881.838,626.038 878.445,624.033 C 873.895,621.257 871.583,617.171 871.583,612.082 C 871.583,606.299 875.284,600.978 880.681,599.051 C 878.908,598.512 876.749,596.739 875.362,594.811 C 873.896,592.729 873.049,590.108 873.049,587.409 C 873.049,578.928 880.528,573.144 891.554,573.144 C 901.963,573.144 909.288,578.696 909.288,586.561 C 909.287,591.803 905.354,596.352 899.34,597.971 z M 888.005,603.137 C 884.767,604.988 883.07,607.84 883.07,611.31 C 883.07,616.167 886.463,619.252 891.783,619.252 C 896.409,619.252 899.647,616.553 899.647,612.62 C 899.647,610.076 898.722,608.38 896.717,607.069 C 894.713,605.758 891.629,604.37 888.005,603.137 z M 891.552,593.807 C 893.403,592.882 894.097,592.419 895.407,591.263 C 897.18,589.567 897.797,588.179 897.797,586.251 C 897.797,582.704 895.33,580.699 890.781,580.699 C 886.54,580.699 883.687,583.012 883.687,586.482 C 883.687,588.949 884.998,590.568 888.39,592.341 C 889.625,592.959 890.165,593.19 891.552,593.807 z"
- id="path987"
- style="fill:#ffffff" />
- </g>
- <g
- id="g989">
- <path
- clip-path="url(#XMLID_8_)"
- d="M 899.34,597.971 C 902.27,598.819 905.662,600.746 907.899,602.906 C 910.057,604.911 911.292,607.918 911.292,611.233 C 911.292,618.25 906.203,624.11 898.724,625.961 C 896.256,626.577 893.404,626.886 890.628,626.886 C 885.462,626.886 881.838,626.038 878.445,624.033 C 873.895,621.257 871.583,617.171 871.583,612.082 C 871.583,606.299 875.284,600.978 880.681,599.051 C 878.908,598.512 876.749,596.739 875.362,594.811 C 873.896,592.729 873.049,590.108 873.049,587.409 C 873.049,578.928 880.528,573.144 891.554,573.144 C 901.963,573.144 909.288,578.696 909.288,586.561 C 909.287,591.803 905.354,596.352 899.34,597.971 z M 888.005,603.137 C 884.767,604.988 883.07,607.84 883.07,611.31 C 883.07,616.167 886.463,619.252 891.783,619.252 C 896.409,619.252 899.647,616.553 899.647,612.62 C 899.647,610.076 898.722,608.38 896.717,607.069 C 894.713,605.758 891.629,604.37 888.005,603.137 z M 891.552,593.807 C 893.403,592.882 894.097,592.419 895.407,591.263 C 897.18,589.567 897.797,588.179 897.797,586.251 C 897.797,582.704 895.33,580.699 890.781,580.699 C 886.54,580.699 883.687,583.012 883.687,586.482 C 883.687,588.949 884.998,590.568 888.39,592.341 C 889.625,592.959 890.165,593.19 891.552,593.807 z"
- id="path991"
- style="fill:#ffffff" />
- </g>
- </g>
- </g>
- <g
- id="g993">
- <defs
- id="defs995">
- <path
- id="XMLID_10_"
- d="M 812.72,577.612 C 812.72,604.363 791.034,626.047 764.283,626.047 C 737.532,626.047 715.846,604.363 715.846,577.612 C 715.846,550.861 737.532,529.174 764.283,529.174 C 791.034,529.174 812.72,550.861 812.72,577.612 z" />
- </defs>
- <use
- xlink:href="#XMLID_10_"
- id="use998"
- style="fill:#f8601f"
- x="0"
- y="0"
- width="1203"
- height="901" />
- <clipPath
- id="XMLID_12_">
- <use
- xlink:href="#XMLID_10_"
- id="use1001"
- x="0"
- y="0"
- width="1203"
- height="901" />
- </clipPath>
- <g
- id="g1003">
- <path
- clip-path="url(#XMLID_12_)"
- d="M 817.295,583.303 C 817.295,603.421 800.988,619.727 780.872,619.727 C 760.753,619.727 744.446,603.421 744.446,583.303 C 744.446,563.186 760.753,546.877 780.872,546.877 C 800.989,546.877 817.295,563.186 817.295,583.303 z"
- id="path1005"
- style="fill:none;stroke:#ffffff;stroke-width:2.24469995;stroke-dasharray:3.3671, 5.6118" />
- <g
- id="g1007">
- <path
- clip-path="url(#XMLID_12_)"
- d="M 778.032,575.514 L 780.345,566.184 L 812.497,566.184 L 810.801,575.205 C 808.026,579.214 805.404,583.532 803.167,587.618 C 801.779,590.317 795.148,603.425 793.684,611.213 L 792.373,618.152 L 781.038,621.005 C 783.12,612.369 784.353,608.437 786.59,602.5 C 788.595,596.948 790.6,592.399 793.375,587.002 C 796.459,580.987 798.155,578.443 800.546,575.205 C 799.697,575.436 798.541,575.514 797.462,575.514 L 778.032,575.514 L 778.032,575.514 z"
- id="path1009"
- style="fill:#ffffff" />
- </g>
- </g>
- </g>
- <g
- id="g1011">
- <defs
- id="defs1013">
- <path
- id="XMLID_14_"
- d="M 1066.131,443.541 C 1066.131,470.293 1044.445,491.978 1017.693,491.978 C 990.943,491.978 969.256,470.293 969.256,443.541 C 969.256,416.79 990.943,395.104 1017.693,395.104 C 1044.446,395.104 1066.131,416.79 1066.131,443.541 z" />
- </defs>
- <use
- xlink:href="#XMLID_14_"
- id="use1016"
- style="fill:#f8601f"
- x="0"
- y="0"
- width="1203"
- height="901" />
- <clipPath
- id="XMLID_16_">
- <use
- xlink:href="#XMLID_14_"
- id="use1019"
- x="0"
- y="0"
- width="1203"
- height="901" />
- </clipPath>
- <g
- id="g1021">
- <path
- clip-path="url(#XMLID_16_)"
- d="M 1031.221,437.158 C 1031.221,453.958 1017.603,467.579 1000.803,467.579 C 984,467.579 970.383,453.958 970.383,437.158 C 970.383,420.358 984,406.739 1000.803,406.739 C 1017.603,406.739 1031.221,420.358 1031.221,437.158 z"
- id="path1023"
- style="fill:none;stroke:#ffffff;stroke-width:1.87460005;stroke-dasharray:2.8119, 4.6865" />
- <g
- id="g1025">
- <path
- clip-path="url(#XMLID_16_)"
- d="M 999.983,402.519 L 1002.219,409.921 L 1001.833,410.075 C 996.281,412.003 993.197,413.622 990.19,416.089 C 988.725,417.245 987.414,418.556 986.335,420.021 C 984.484,422.334 983.02,425.033 982.172,427.731 C 984.253,426.035 987.107,425.187 990.422,425.187 C 999.751,425.187 1006.922,432.281 1006.922,441.456 C 1006.922,451.403 999.058,459.036 988.88,459.036 C 977.622,459.036 969.526,450.015 969.526,437.293 C 969.526,433.515 970.219,429.505 971.531,426.19 C 973.227,421.795 976.311,417.323 980.167,413.699 C 983.637,410.46 987.8,407.685 992.966,405.294 C 995.897,403.83 997.053,403.444 999.983,402.519 z M 981.015,436.06 C 981.015,436.368 981.015,436.522 980.938,436.677 C 980.861,438.142 980.784,439.453 980.784,440.686 C 980.784,447.24 983.638,451.095 988.418,451.095 C 993.044,451.095 996.051,447.394 996.051,441.611 C 996.051,436.676 993.353,433.515 989.034,433.515 C 986.567,433.515 984.099,434.286 981.015,436.06 z"
- id="path1027"
- style="fill:#ffffff" />
- </g>
- </g>
- </g>
- <path
- d="M 939.424,443.541 C 939.424,470.293 917.739,491.978 890.989,491.978 C 864.238,491.978 842.552,470.293 842.552,443.541 C 842.552,416.79 864.238,395.104 890.989,395.104 C 917.74,395.104 939.424,416.79 939.424,443.541 z"
- id="path1029"
- style="fill:#f7b98b" />
- <g
- id="g1031">
- <defs
- id="defs1033">
- <path
- id="XMLID_18_"
- d="M 939.424,443.541 C 939.424,470.293 917.739,491.978 890.989,491.978 C 864.238,491.978 842.552,470.293 842.552,443.541 C 842.552,416.79 864.238,395.104 890.989,395.104 C 917.74,395.104 939.424,416.79 939.424,443.541 z" />
- </defs>
- <use
- xlink:href="#XMLID_18_"
- id="use1036"
- style="fill:#f8601f"
- x="0"
- y="0"
- width="1203"
- height="901" />
- <clipPath
- id="XMLID_19_">
- <use
- xlink:href="#XMLID_18_"
- id="use1039"
- x="0"
- y="0"
- width="1203"
- height="901" />
- </clipPath>
- <g
- id="g1041">
- <path
- clip-path="url(#XMLID_19_)"
- d="M 935.125,454.318 C 935.125,472.857 920.1,487.885 901.563,487.885 C 883.023,487.885 867.997,472.857 867.997,454.318 C 867.997,435.781 883.023,420.754 901.563,420.754 C 920.099,420.754 935.125,435.781 935.125,454.318 z"
- id="path1043"
- style="fill:none;stroke:#ffffff;stroke-width:2.06850004;stroke-dasharray:3.1027, 5.1712" />
- <g
- id="g1045">
- <path
- clip-path="url(#XMLID_19_)"
- d="M 897.808,434.83 L 924.1,434.83 L 922.558,443.62 L 907.446,443.62 L 906.367,454.261 C 907.986,453.952 908.602,453.875 909.991,453.875 C 919.552,453.875 926.182,460.043 926.182,468.833 C 926.182,480.244 916.081,488.418 901.894,488.418 C 899.427,488.418 898.501,488.341 896.035,487.878 L 893.799,480.244 C 896.729,481.015 898.811,481.324 901.047,481.324 C 909.22,481.324 915.003,476.698 915.003,470.066 C 915.003,465.131 911.61,461.893 906.598,461.893 C 903.437,461.893 900.276,462.51 895.341,464.052 L 897.808,434.83 z"
- id="path1047"
- style="fill:#ffffff" />
- </g>
- </g>
- </g>
- <g
- id="g1049">
- <defs
- id="defs1051">
- <path
- id="XMLID_20_"
- d="M 812.72,443.541 C 812.72,470.293 791.034,491.978 764.283,491.978 C 737.532,491.978 715.846,470.293 715.846,443.541 C 715.846,416.79 737.532,395.104 764.283,395.104 C 791.034,395.104 812.72,416.79 812.72,443.541 z" />
- </defs>
- <use
- xlink:href="#XMLID_20_"
- id="use1054"
- style="fill:#f8601f"
- x="0"
- y="0"
- width="1203"
- height="901" />
- <clipPath
- id="XMLID_21_">
- <use
- xlink:href="#XMLID_20_"
- id="use1057"
- x="0"
- y="0"
- width="1203"
- height="901" />
- </clipPath>
- <g
- id="g1059">
- <path
- clip-path="url(#XMLID_21_)"
- d="M 798.564,460.326 C 798.564,478.23 784.049,492.745 766.144,492.745 C 748.238,492.745 733.722,478.23 733.722,460.326 C 733.722,442.419 748.238,427.903 766.144,427.903 C 784.049,427.903 798.564,442.419 798.564,460.326 z"
- id="path1061"
- style="fill:none;stroke:#ffffff;stroke-width:1.99800003;stroke-dasharray:2.9969, 4.9949" />
- <g
- id="g1063">
- <path
- clip-path="url(#XMLID_21_)"
- d="M 759.441,437.239 L 770.082,437.239 L 758.978,462.221 C 758.669,462.838 756.511,467.464 755.508,468.466 C 756.279,468.312 756.357,468.312 757.127,468.312 L 765.84,468.312 C 766.766,468.312 767.691,468.389 767.691,468.389 C 767.691,468.389 767.614,467.387 767.614,467.001 C 767.614,464.842 767.768,462.529 768.154,458.751 L 769.002,449.73 L 777.099,447.879 L 777.099,461.526 C 777.099,463.299 777.099,464.688 777.022,466.076 C 776.945,467.772 776.868,468.388 776.868,468.388 C 776.868,468.388 778.41,468.311 779.335,468.311 L 782.573,468.311 L 782.573,477.178 L 779.103,477.178 C 777.638,477.178 776.713,477.024 776.713,477.024 C 776.713,477.024 777.099,478.027 777.099,479.8 L 777.099,490.671 L 767.306,491.905 L 767.306,478.874 C 767.306,478.181 767.46,476.946 767.46,476.946 C 767.46,476.946 766.535,477.177 764.993,477.177 L 744.56,477.177 L 744.56,470.16 L 759.441,437.239 z"
- id="path1065"
- style="fill:#ffffff" />
- </g>
- </g>
- </g>
- <g
- id="g1067">
- <defs
- id="defs1069">
- <path
- id="XMLID_22_"
- d="M 1066.131,313.324 C 1066.131,340.075 1044.445,361.76 1017.693,361.76 C 990.943,361.76 969.256,340.075 969.256,313.324 C 969.256,286.573 990.943,264.887 1017.693,264.887 C 1044.446,264.888 1066.131,286.573 1066.131,313.324 z" />
- </defs>
- <use
- xlink:href="#XMLID_22_"
- id="use1072"
- style="fill:#f8601f"
- x="0"
- y="0"
- width="1203"
- height="901" />
- <clipPath
- id="XMLID_23_">
- <use
- xlink:href="#XMLID_22_"
- id="use1075"
- x="0"
- y="0"
- width="1203"
- height="901" />
- </clipPath>
- <g
- id="g1077">
- <path
- clip-path="url(#XMLID_23_)"
- d="M 1069.971,316.182 C 1069.971,333.773 1055.713,348.031 1038.122,348.031 C 1020.531,348.031 1006.273,333.773 1006.273,316.182 C 1006.273,298.593 1020.531,284.333 1038.122,284.333 C 1055.713,284.333 1069.971,298.593 1069.971,316.182 z"
- id="path1079"
- style="fill:none;stroke:#ffffff;stroke-width:1.96270001;stroke-dasharray:2.9441, 4.9068" />
- <g
- id="g1081">
- <path
- clip-path="url(#XMLID_23_)"
- d="M 1037.831,315.58 L 1037.831,306.944 L 1038.447,307.021 C 1040.375,307.175 1042.148,307.252 1043.151,307.252 C 1048.856,307.252 1051.71,305.247 1051.71,301.161 C 1051.71,297.846 1049.628,295.378 1045.155,295.378 C 1039.989,295.378 1036.057,297.768 1033.744,299.696 L 1028.347,293.142 C 1030.738,291.292 1032.665,290.212 1035.286,289.056 C 1039.064,287.514 1042.843,286.666 1046.544,286.666 C 1056.182,286.666 1063.198,292.372 1063.198,300.082 C 1063.198,304.246 1061.347,307.87 1058.109,310.029 C 1057.106,310.646 1056.644,310.877 1055.255,311.417 C 1061.038,313.345 1064.431,317.74 1064.431,323.137 C 1064.431,333.778 1053.251,341.179 1037.29,341.179 C 1034.899,341.179 1033.82,341.179 1030.891,340.794 L 1028.423,333.623 C 1030.814,334.086 1031.816,334.163 1034.283,334.163 C 1045,334.163 1052.325,329.305 1052.325,322.288 C 1052.325,319.744 1051.014,317.431 1048.932,316.428 C 1047.467,315.811 1045.154,315.503 1041.761,315.503 C 1040.759,315.503 1039.68,315.503 1038.6,315.58 L 1037.831,315.58 L 1037.831,315.58 z"
- id="path1083"
- style="fill:#ffffff" />
- </g>
- </g>
- </g>
- <g
- id="g1085">
- <defs
- id="defs1087">
- <path
- id="XMLID_24_"
- d="M 939.424,313.324 C 939.424,340.075 917.739,361.76 890.989,361.76 C 864.238,361.76 842.552,340.075 842.552,313.324 C 842.552,286.573 864.238,264.887 890.989,264.887 C 917.74,264.888 939.424,286.573 939.424,313.324 z" />
- </defs>
- <use
- xlink:href="#XMLID_24_"
- id="use1090"
- style="fill:#f8601f"
- x="0"
- y="0"
- width="1203"
- height="901" />
- <clipPath
- id="XMLID_25_">
- <use
- xlink:href="#XMLID_24_"
- id="use1093"
- x="0"
- y="0"
- width="1203"
- height="901" />
- </clipPath>
- <g
- id="g1095">
- <path
- clip-path="url(#XMLID_25_)"
- d="M 909.958,292.304 C 909.958,307.683 897.492,320.149 882.113,320.149 C 866.734,320.149 854.268,307.683 854.268,292.304 C 854.268,276.926 866.734,264.459 882.113,264.459 C 897.492,264.459 909.958,276.925 909.958,292.304 z"
- id="path1097"
- style="fill:none;stroke:#ffffff;stroke-width:1.71599996;stroke-dasharray:2.5739, 4.2899" />
- <g
- id="g1099">
- <path
- clip-path="url(#XMLID_25_)"
- d="M 901.381,297.045 L 899.145,305.681 L 866.993,305.681 L 866.993,296.274 C 869.691,294.886 870.386,294.886 874.934,292.265 C 885.575,286.251 888.273,282.781 888.273,279.234 C 888.273,275.841 885.729,274.068 882.105,274.068 C 878.79,274.068 875.936,275.456 871.619,279.003 L 865.451,272.604 C 871.002,267.669 876.939,264.97 884.881,264.97 C 894.057,264.97 899.917,270.059 899.917,277.616 C 899.917,283.244 896.832,287.023 892.669,290.107 C 889.893,292.189 885.267,294.733 882.106,296.43 C 881.72,296.661 880.873,297.047 880.101,297.432 C 881.797,297.201 885.036,297.046 887.58,297.046 L 901.381,297.046 L 901.381,297.045 z"
- id="path1101"
- style="fill:#ffffff" />
- </g>
- </g>
- </g>
- <g
- id="g1103">
- <defs
- id="defs1105">
- <path
- id="XMLID_26_"
- d="M 812.72,313.324 C 812.72,340.075 791.034,361.76 764.283,361.76 C 737.532,361.76 715.846,340.075 715.846,313.324 C 715.846,286.573 737.532,264.887 764.283,264.887 C 791.034,264.887 812.72,286.573 812.72,313.324 z" />
- </defs>
- <use
- xlink:href="#XMLID_26_"
- id="use1108"
- style="fill:#f8601f"
- x="0"
- y="0"
- width="1203"
- height="901" />
- <clipPath
- id="XMLID_27_">
- <use
- xlink:href="#XMLID_26_"
- id="use1111"
- x="0"
- y="0"
- width="1203"
- height="901" />
- </clipPath>
- <g
- id="g1113">
- <g
- id="g1115">
- <path
- clip-path="url(#XMLID_27_)"
- d="M 763.758,321.782 L 770.697,321.782 L 770.697,353.626 L 776.866,353.626 L 776.866,362.03 L 752.424,362.03 L 752.424,353.626 L 760.751,353.626 L 760.751,333.656 C 757.898,335.429 754.891,336.971 751.498,338.128 L 748.877,332.576 L 763.758,321.782 z"
- id="path1117"
- style="fill:#ffffff" />
- </g>
- <path
- clip-path="url(#XMLID_27_)"
- d="M 792.128,335.631 C 792.128,351.01 779.662,363.476 764.283,363.476 C 748.904,363.476 736.438,351.01 736.438,335.631 C 736.438,320.253 748.904,307.786 764.283,307.786 C 779.662,307.786 792.128,320.253 792.128,335.631 z"
- id="path1119"
- style="fill:none;stroke:#ffffff;stroke-width:1.71599996;stroke-dasharray:2.5739, 4.2899" />
- </g>
- </g>
- </g>
- <g
- id="Layer_1_2_"
- transform="translate(9.9998045e-4,-38.982441)">
- <g
- id="g1122">
- <path
- d="M 355.382,754.487 C 356.407,754.412 357.257,754.137 357.782,753.562 C 358.382,752.887 358.632,751.912 358.632,749.012 L 358.632,738.837 L 360.832,738.837 L 360.832,749.861 C 360.832,752.212 360.457,753.736 359.382,754.837 C 358.407,755.812 356.807,756.212 355.632,756.212 L 355.382,754.487 z M 359.683,736.612 C 358.858,736.612 358.308,735.963 358.308,735.187 C 358.308,734.411 358.883,733.787 359.733,733.787 C 360.583,733.787 361.133,734.412 361.133,735.187 C 361.133,735.962 360.608,736.612 359.708,736.612 L 359.683,736.612 z"
- id="path1124" />
- <path
- d="M 374.558,747.638 C 374.558,748.888 374.583,749.988 374.658,750.938 L 372.708,750.938 L 372.583,748.963 L 372.533,748.963 C 371.983,749.938 370.683,751.213 368.533,751.213 C 366.633,751.213 364.358,750.138 364.358,745.912 L 364.358,738.838 L 366.558,738.838 L 366.558,745.513 C 366.558,747.813 367.283,749.388 369.258,749.388 C 370.733,749.388 371.758,748.363 372.158,747.363 C 372.283,747.063 372.358,746.663 372.358,746.238 L 372.358,738.839 L 374.558,738.839 L 374.558,747.638 L 374.558,747.638 z"
- id="path1126" />
- <path
- d="M 388.557,749.162 C 388.557,751.963 387.982,753.638 386.832,754.713 C 385.632,755.787 383.932,756.162 382.407,756.162 C 380.957,756.162 379.357,755.812 378.382,755.162 L 378.932,753.463 C 379.732,753.987 380.982,754.438 382.482,754.438 C 384.732,754.438 386.382,753.263 386.382,750.188 L 386.382,748.863 L 386.332,748.863 C 385.682,749.988 384.357,750.888 382.482,750.888 C 379.482,750.888 377.332,748.338 377.332,744.963 C 377.332,740.862 380.007,738.563 382.807,738.563 C 384.907,738.563 386.032,739.638 386.582,740.638 L 386.632,740.638 L 386.707,738.838 L 388.657,738.838 C 388.582,739.688 388.557,740.662 388.557,742.138 L 388.557,749.162 L 388.557,749.162 z M 386.357,743.588 C 386.357,743.237 386.332,742.912 386.232,742.612 C 385.832,741.312 384.782,740.262 383.157,740.262 C 381.057,740.262 379.557,742.036 379.557,744.862 C 379.557,747.213 380.782,749.213 383.132,749.213 C 384.507,749.213 385.732,748.362 386.182,746.938 C 386.307,746.588 386.357,746.163 386.357,745.763 L 386.357,743.588 z"
- id="path1128" />
- <path
- d="M 400.707,748.037 C 400.707,749.088 400.757,750.112 400.882,750.937 L 398.907,750.937 L 398.707,749.412 L 398.632,749.412 C 397.982,750.362 396.657,751.213 394.932,751.213 C 392.482,751.213 391.232,749.487 391.232,747.737 C 391.232,744.812 393.832,743.213 398.507,743.237 L 398.507,742.987 C 398.507,741.987 398.232,740.162 395.757,740.187 C 394.607,740.187 393.432,740.512 392.582,741.087 L 392.082,739.611 C 393.082,738.986 394.557,738.561 396.082,738.561 C 399.807,738.561 400.707,741.086 400.707,743.511 L 400.707,748.037 z M 398.557,744.763 C 396.157,744.713 393.432,745.138 393.432,747.488 C 393.432,748.938 394.382,749.589 395.482,749.589 C 397.082,749.589 398.107,748.589 398.457,747.564 C 398.532,747.339 398.557,747.089 398.557,746.864 L 398.557,744.763 L 398.557,744.763 z"
- id="path1130" />
- <path
- d="M 414.682,733.188 L 414.682,747.813 C 414.682,748.888 414.707,750.113 414.782,750.938 L 412.807,750.938 L 412.707,748.838 L 412.657,748.838 C 411.982,750.188 410.532,751.213 408.557,751.213 C 405.632,751.213 403.357,748.737 403.357,745.063 C 403.332,741.013 405.857,738.563 408.782,738.563 C 410.657,738.563 411.907,739.438 412.432,740.388 L 412.482,740.388 L 412.482,733.188 L 414.682,733.188 z M 412.482,743.763 C 412.482,743.463 412.457,743.113 412.382,742.813 C 412.057,741.438 410.857,740.288 409.207,740.288 C 406.932,740.288 405.582,742.288 405.582,744.938 C 405.582,747.413 406.807,749.438 409.157,749.438 C 410.632,749.438 411.982,748.438 412.382,746.813 C 412.457,746.513 412.482,746.213 412.482,745.863 L 412.482,743.763 z"
- id="path1132" />
- <path
- d="M 423.257,751.213 C 420.007,751.213 417.457,748.813 417.457,744.987 C 417.457,740.937 420.132,738.562 423.457,738.562 C 426.932,738.562 429.282,741.087 429.282,744.762 C 429.282,749.262 426.157,751.212 423.282,751.212 L 423.257,751.212 L 423.257,751.213 z M 423.332,749.562 C 425.432,749.562 427.007,747.587 427.007,744.837 C 427.007,742.786 425.982,740.212 423.382,740.212 C 420.807,740.212 419.682,742.611 419.682,744.911 C 419.682,747.561 421.182,749.561 423.307,749.561 L 423.332,749.561 L 423.332,749.562 z"
- id="path1134" />
- <path
- d="M 432.082,742.612 C 432.082,741.187 432.057,739.963 431.982,738.838 L 433.907,738.838 L 434.007,741.213 L 434.082,741.213 C 434.632,739.588 435.982,738.563 437.457,738.563 C 437.682,738.563 437.857,738.588 438.057,738.638 L 438.057,740.688 C 437.807,740.663 437.582,740.638 437.282,740.638 C 435.732,740.638 434.632,741.813 434.332,743.438 C 434.282,743.763 434.257,744.113 434.257,744.488 L 434.257,750.938 L 432.057,750.938 L 432.082,742.612 z"
- id="path1136" />
- <path
- d="M 454.056,748.037 C 454.056,749.088 454.106,750.112 454.231,750.937 L 452.256,750.937 L 452.056,749.412 L 451.981,749.412 C 451.331,750.362 450.006,751.213 448.281,751.213 C 445.831,751.213 444.581,749.487 444.581,747.737 C 444.581,744.812 447.181,743.213 451.856,743.237 L 451.856,742.987 C 451.856,741.987 451.581,740.162 449.106,740.187 C 447.956,740.187 446.781,740.512 445.931,741.087 L 445.431,739.611 C 446.431,738.986 447.906,738.561 449.431,738.561 C 453.156,738.561 454.056,741.086 454.056,743.511 L 454.056,748.037 z M 451.906,744.763 C 449.506,744.713 446.781,745.138 446.781,747.488 C 446.781,748.938 447.731,749.589 448.831,749.589 C 450.431,749.589 451.456,748.589 451.806,747.564 C 451.881,747.339 451.906,747.089 451.906,746.864 L 451.906,744.763 L 451.906,744.763 z"
- id="path1138"
- style="fill:#ffffff" />
- <path
- d="M 468.256,752.812 L 468.256,754.062 L 455.756,754.062 L 455.756,752.812 L 468.256,752.812 z"
- id="path1140"
- style="fill:#ffffff" />
- <path
- d="M 475.456,734.312 C 476.506,734.112 477.881,733.962 479.631,733.962 C 481.781,733.962 483.356,734.462 484.356,735.361 C 485.281,736.161 485.856,737.386 485.856,738.886 C 485.856,740.41 485.406,741.611 484.531,742.486 C 483.381,743.712 481.506,744.337 479.381,744.337 C 478.731,744.337 478.131,744.312 477.631,744.187 L 477.631,750.937 L 475.456,750.937 L 475.456,734.312 L 475.456,734.312 z M 477.631,742.412 C 478.106,742.537 478.731,742.588 479.431,742.588 C 482.081,742.588 483.656,741.287 483.656,739.013 C 483.656,736.763 482.081,735.688 479.681,735.688 C 478.731,735.688 478.006,735.788 477.631,735.863 L 477.631,742.412 z"
- id="path1142" />
- <path
- d="M 496.559,748.037 C 496.559,749.088 496.609,750.112 496.734,750.937 L 494.759,750.937 L 494.559,749.412 L 494.484,749.412 C 493.834,750.362 492.509,751.213 490.784,751.213 C 488.334,751.213 487.084,749.487 487.084,747.737 C 487.084,744.812 489.684,743.213 494.359,743.237 L 494.359,742.987 C 494.359,741.987 494.084,740.162 491.609,740.187 C 490.459,740.187 489.284,740.512 488.434,741.087 L 487.934,739.611 C 488.934,738.986 490.409,738.561 491.934,738.561 C 495.659,738.561 496.559,741.086 496.559,743.511 L 496.559,748.037 z M 494.409,744.763 C 492.009,744.713 489.284,745.138 489.284,747.488 C 489.284,748.938 490.234,749.589 491.334,749.589 C 492.934,749.589 493.959,748.589 494.309,747.564 C 494.384,747.339 494.409,747.089 494.409,746.864 L 494.409,744.763 L 494.409,744.763 z"
- id="path1144" />
- <path
- d="M 500.084,733.188 L 502.284,733.188 L 502.284,740.763 L 502.334,740.763 C 503.109,739.412 504.509,738.563 506.459,738.563 C 509.459,738.563 511.559,741.063 511.559,744.713 C 511.559,749.063 508.809,751.213 506.109,751.213 C 504.359,751.213 502.984,750.537 502.059,748.938 L 502.009,748.938 L 501.884,750.938 L 499.984,750.938 C 500.059,750.113 500.084,748.888 500.084,747.813 L 500.084,733.188 L 500.084,733.188 z M 502.284,746.088 C 502.284,746.362 502.309,746.638 502.359,746.888 C 502.784,748.412 504.084,749.463 505.659,749.463 C 507.984,749.463 509.334,747.588 509.334,744.813 C 509.334,742.363 508.084,740.288 505.734,740.288 C 504.234,740.288 502.834,741.339 502.409,742.988 C 502.334,743.263 502.284,743.563 502.284,743.913 L 502.284,746.088 z"
- id="path1146" />
- <path
- d="M 514.309,733.188 L 516.509,733.188 L 516.509,750.938 L 514.309,750.938 L 514.309,733.188 z"
- id="path1148" />
- <path
- d="M 525.083,751.213 C 521.833,751.213 519.283,748.813 519.283,744.987 C 519.283,740.937 521.958,738.562 525.283,738.562 C 528.758,738.562 531.108,741.087 531.108,744.762 C 531.108,749.262 527.983,751.212 525.108,751.212 L 525.083,751.212 L 525.083,751.213 z M 525.158,749.562 C 527.258,749.562 528.833,747.587 528.833,744.837 C 528.833,742.786 527.808,740.212 525.208,740.212 C 522.633,740.212 521.508,742.611 521.508,744.911 C 521.508,747.561 523.008,749.561 525.133,749.561 L 525.158,749.561 L 525.158,749.562 z"
- id="path1150" />
- <path
- d="M 544.558,752.812 L 544.558,754.062 L 532.058,754.062 L 532.058,752.812 L 544.558,752.812 z"
- id="path1152" />
- </g>
- <path
- d="M 606.858,741.5 C 606.858,754.479 596.337,765 583.358,765 C 570.379,765 559.858,754.479 559.858,741.5 C 559.858,728.521 570.379,718 583.358,718 C 596.337,718 606.858,728.521 606.858,741.5 z"
- id="path1154" />
- <g
- id="g1156">
- <path
- d="M 582.933,736.8 L 582.883,736.8 L 580.058,738.325 L 579.633,736.65 L 583.183,734.75 L 585.058,734.75 L 585.058,751 L 582.933,751 L 582.933,736.8 z"
- id="path1158"
- style="fill:#ffffff" />
- </g>
- <g
- id="g1160">
- <path
- d="M 374.033,837.487 C 375.058,837.412 375.908,837.137 376.433,836.562 C 377.033,835.887 377.283,834.912 377.283,832.012 L 377.283,821.837 L 379.483,821.837 L 379.483,832.861 C 379.483,835.212 379.108,836.736 378.033,837.837 C 377.058,838.812 375.458,839.212 374.283,839.212 L 374.033,837.487 z M 378.333,819.612 C 377.508,819.612 376.958,818.963 376.958,818.187 C 376.958,817.411 377.533,816.787 378.383,816.787 C 379.233,816.787 379.783,817.412 379.783,818.187 C 379.783,818.962 379.258,819.612 378.358,819.612 L 378.333,819.612 z"
- id="path1162" />
- <path
- d="M 393.208,830.638 C 393.208,831.888 393.233,832.988 393.308,833.938 L 391.358,833.938 L 391.233,831.963 L 391.183,831.963 C 390.633,832.938 389.333,834.213 387.183,834.213 C 385.283,834.213 383.008,833.138 383.008,828.912 L 383.008,821.838 L 385.208,821.838 L 385.208,828.513 C 385.208,830.813 385.933,832.388 387.908,832.388 C 389.383,832.388 390.408,831.363 390.808,830.363 C 390.933,830.063 391.008,829.663 391.008,829.238 L 391.008,821.839 L 393.208,821.839 L 393.208,830.638 L 393.208,830.638 z"
- id="path1164" />
- <path
- d="M 407.208,832.162 C 407.208,834.963 406.633,836.638 405.483,837.713 C 404.283,838.787 402.583,839.162 401.058,839.162 C 399.608,839.162 398.008,838.812 397.033,838.162 L 397.583,836.463 C 398.383,836.987 399.633,837.438 401.133,837.438 C 403.383,837.438 405.033,836.263 405.033,833.188 L 405.033,831.863 L 404.983,831.863 C 404.333,832.988 403.008,833.888 401.133,833.888 C 398.133,833.888 395.983,831.338 395.983,827.963 C 395.983,823.862 398.658,821.563 401.458,821.563 C 403.558,821.563 404.683,822.638 405.233,823.638 L 405.283,823.638 L 405.358,821.838 L 407.308,821.838 C 407.233,822.688 407.208,823.662 407.208,825.138 L 407.208,832.162 L 407.208,832.162 z M 405.008,826.588 C 405.008,826.237 404.983,825.912 404.883,825.612 C 404.483,824.312 403.433,823.262 401.808,823.262 C 399.708,823.262 398.208,825.036 398.208,827.862 C 398.208,830.213 399.433,832.213 401.783,832.213 C 403.158,832.213 404.383,831.362 404.833,829.938 C 404.958,829.588 405.008,829.163 405.008,828.763 L 405.008,826.588 z"
- id="path1166" />
- <path
- d="M 419.357,831.037 C 419.357,832.088 419.407,833.112 419.532,833.937 L 417.557,833.937 L 417.357,832.412 L 417.282,832.412 C 416.632,833.362 415.307,834.213 413.582,834.213 C 411.132,834.213 409.882,832.487 409.882,830.737 C 409.882,827.812 412.482,826.213 417.157,826.237 L 417.157,825.987 C 417.157,824.987 416.882,823.162 414.407,823.187 C 413.257,823.187 412.082,823.512 411.232,824.087 L 410.732,822.611 C 411.732,821.986 413.207,821.561 414.732,821.561 C 418.457,821.561 419.357,824.086 419.357,826.511 L 419.357,831.037 z M 417.208,827.763 C 414.808,827.713 412.083,828.138 412.083,830.488 C 412.083,831.938 413.033,832.589 414.133,832.589 C 415.733,832.589 416.758,831.589 417.108,830.564 C 417.183,830.339 417.208,830.089 417.208,829.864 L 417.208,827.763 L 417.208,827.763 z"
- id="path1168" />
- <path
- d="M 433.333,816.188 L 433.333,830.813 C 433.333,831.888 433.358,833.113 433.433,833.938 L 431.458,833.938 L 431.358,831.838 L 431.308,831.838 C 430.633,833.188 429.183,834.213 427.208,834.213 C 424.283,834.213 422.008,831.737 422.008,828.063 C 421.983,824.013 424.508,821.563 427.433,821.563 C 429.308,821.563 430.558,822.438 431.083,823.388 L 431.133,823.388 L 431.133,816.188 L 433.333,816.188 z M 431.132,826.763 C 431.132,826.463 431.107,826.113 431.032,825.813 C 430.707,824.438 429.507,823.288 427.857,823.288 C 425.582,823.288 424.232,825.288 424.232,827.938 C 424.232,830.413 425.457,832.438 427.807,832.438 C 429.282,832.438 430.632,831.438 431.032,829.813 C 431.107,829.513 431.132,829.213 431.132,828.863 L 431.132,826.763 z"
- id="path1170" />
- <path
- d="M 441.907,834.213 C 438.657,834.213 436.107,831.813 436.107,827.987 C 436.107,823.937 438.782,821.562 442.107,821.562 C 445.582,821.562 447.932,824.087 447.932,827.762 C 447.932,832.262 444.807,834.212 441.932,834.212 L 441.907,834.212 L 441.907,834.213 z M 441.982,832.562 C 444.082,832.562 445.657,830.587 445.657,827.837 C 445.657,825.786 444.632,823.212 442.032,823.212 C 439.457,823.212 438.332,825.611 438.332,827.911 C 438.332,830.561 439.832,832.561 441.957,832.561 L 441.982,832.561 L 441.982,832.562 z"
- id="path1172" />
- <path
- d="M 450.732,825.612 C 450.732,824.187 450.707,822.963 450.632,821.838 L 452.557,821.838 L 452.657,824.213 L 452.732,824.213 C 453.282,822.588 454.632,821.563 456.107,821.563 C 456.332,821.563 456.507,821.588 456.707,821.638 L 456.707,823.688 C 456.457,823.663 456.232,823.638 455.932,823.638 C 454.382,823.638 453.282,824.813 452.982,826.438 C 452.932,826.763 452.907,827.113 452.907,827.488 L 452.907,833.938 L 450.707,833.938 L 450.732,825.612 z"
- id="path1174" />
- <path
- d="M 464.182,816.188 L 466.382,816.188 L 466.382,823.763 L 466.432,823.763 C 467.207,822.412 468.607,821.563 470.557,821.563 C 473.557,821.563 475.657,824.063 475.657,827.713 C 475.657,832.063 472.907,834.213 470.207,834.213 C 468.457,834.213 467.082,833.537 466.157,831.938 L 466.107,831.938 L 465.982,833.938 L 464.082,833.938 C 464.157,833.113 464.182,831.888 464.182,830.813 L 464.182,816.188 L 464.182,816.188 z M 466.382,829.088 C 466.382,829.362 466.407,829.638 466.457,829.888 C 466.882,831.412 468.182,832.463 469.757,832.463 C 472.082,832.463 473.432,830.588 473.432,827.813 C 473.432,825.363 472.182,823.288 469.832,823.288 C 468.332,823.288 466.932,824.339 466.507,825.988 C 466.432,826.263 466.382,826.563 466.382,826.913 L 466.382,829.088 z"
- id="path1176"
- style="fill:#ffffff" />
- <path
- d="M 489.082,835.812 L 489.082,837.062 L 476.582,837.062 L 476.582,835.812 L 489.082,835.812 z"
- id="path1178"
- style="fill:#ffffff" />
- <path
- d="M 496.256,817.088 L 498.456,817.088 L 498.456,832.112 L 505.656,832.112 L 505.656,833.937 L 496.256,833.937 L 496.256,817.088 z"
- id="path1180" />
- <path
- d="M 508.883,828.263 C 508.933,831.238 510.808,832.463 513.008,832.463 C 514.583,832.463 515.558,832.188 516.358,831.862 L 516.758,833.412 C 515.983,833.763 514.633,834.187 512.708,834.187 C 509.008,834.187 506.758,831.712 506.758,828.087 C 506.758,824.411 508.933,821.536 512.458,821.536 C 516.408,821.536 517.433,825.012 517.433,827.236 C 517.433,827.686 517.408,828.036 517.358,828.286 L 508.883,828.263 z M 515.309,826.688 C 515.334,825.313 514.734,823.113 512.284,823.113 C 510.034,823.113 509.084,825.163 508.909,826.688 L 515.309,826.688 z"
- id="path1182" />
- <path
- d="M 525.083,834.213 C 521.833,834.213 519.283,831.813 519.283,827.987 C 519.283,823.937 521.958,821.562 525.283,821.562 C 528.758,821.562 531.108,824.087 531.108,827.762 C 531.108,832.262 527.983,834.212 525.108,834.212 L 525.083,834.212 L 525.083,834.213 z M 525.158,832.562 C 527.258,832.562 528.833,830.587 528.833,827.837 C 528.833,825.786 527.808,823.212 525.208,823.212 C 522.633,823.212 521.508,825.611 521.508,827.911 C 521.508,830.561 523.008,832.561 525.133,832.561 L 525.158,832.561 L 525.158,832.562 z"
- id="path1184" />
- <path
- d="M 544.558,835.812 L 544.558,837.062 L 532.058,837.062 L 532.058,835.812 L 544.558,835.812 z"
- id="path1186" />
- </g>
- <path
- d="M 606.858,824.5 C 606.858,837.479 596.337,848 583.358,848 C 570.379,848 559.858,837.479 559.858,824.5 C 559.858,811.521 570.379,801 583.358,801 C 596.337,801 606.858,811.521 606.858,824.5 z"
- id="path1188" />
- <g
- id="g1190">
- <path
- d="M 583.333,834.275 C 580.158,834.275 577.983,831.299 577.933,825.924 C 577.933,820.449 580.308,817.474 583.608,817.474 C 587.008,817.474 588.983,820.525 588.983,825.7 C 588.983,831.224 586.908,834.275 583.358,834.275 L 583.333,834.275 z M 583.433,832.575 C 585.658,832.575 586.733,829.95 586.733,825.8 C 586.733,821.8 585.733,819.175 583.433,819.175 C 581.433,819.175 580.133,821.725 580.133,825.8 C 580.083,830.026 581.383,832.575 583.408,832.575 L 583.433,832.575 z"
- id="path1192"
- style="fill:#ffffff" />
- </g>
- <g
- id="g1194">
- <path
- d="M 309.525,189.027 C 309.525,193.434 305.953,197.007 301.545,197.007 L 187.572,197.007 C 183.164,197.007 179.591,193.434 179.591,189.027 L 179.591,170.075 C 179.591,165.668 183.164,162.095 187.572,162.095 L 301.545,162.095 C 305.953,162.095 309.525,165.668 309.525,170.075 L 309.525,189.027 L 309.525,189.027 z"
- id="path1196" />
- <g
- id="g1198">
- <path
- d="M 192.731,176.366 L 194.518,181.462 C 194.819,182.308 195.063,183.06 195.251,183.812 L 195.308,183.812 C 195.515,183.06 195.778,182.308 196.079,181.462 L 197.847,176.366 L 199.576,176.366 L 196.004,185.467 L 194.424,185.467 L 190.964,176.366 L 192.731,176.366 z"
- id="path1200"
- style="fill:#ffffff" />
- <path
- d="M 204.634,185.673 C 202.189,185.673 200.271,183.868 200.271,180.991 C 200.271,177.945 202.283,176.158 204.784,176.158 C 207.397,176.158 209.165,178.057 209.165,180.821 C 209.165,184.206 206.815,185.673 204.652,185.673 L 204.634,185.673 L 204.634,185.673 z M 204.69,184.432 C 206.27,184.432 207.454,182.947 207.454,180.878 C 207.454,179.336 206.683,177.399 204.727,177.399 C 202.79,177.399 201.944,179.204 201.944,180.934 C 201.944,182.927 203.072,184.432 204.671,184.432 L 204.69,184.432 L 204.69,184.432 z"
- id="path1202"
- style="fill:#ffffff" />
- <path
- d="M 211.252,172.116 L 212.906,172.116 L 212.906,185.466 L 211.252,185.466 L 211.252,172.116 z"
- id="path1204"
- style="fill:#ffffff" />
- <path
- d="M 216.292,176.366 L 218.078,181.462 C 218.379,182.308 218.623,183.06 218.811,183.812 L 218.868,183.812 C 219.075,183.06 219.338,182.308 219.639,181.462 L 221.407,176.366 L 223.137,176.366 L 219.564,185.467 L 217.985,185.467 L 214.525,176.366 L 216.292,176.366 z"
- id="path1206"
- style="fill:#ffffff" />
- <path
- d="M 225.43,181.198 C 225.468,183.435 226.878,184.357 228.533,184.357 C 229.718,184.357 230.451,184.15 231.053,183.906 L 231.354,185.072 C 230.771,185.335 229.755,185.655 228.308,185.655 C 225.525,185.655 223.833,183.794 223.833,181.067 C 223.833,178.303 225.469,176.141 228.12,176.141 C 231.091,176.141 231.862,178.754 231.862,180.428 C 231.862,180.766 231.843,181.03 231.806,181.218 L 225.43,181.198 z M 230.262,180.013 C 230.281,178.979 229.829,177.325 227.987,177.325 C 226.295,177.325 225.58,178.867 225.448,180.013 L 230.262,180.013 z"
- id="path1208"
- style="fill:#ffffff" />
- <path
- d="M 233.929,179.205 C 233.929,178.133 233.91,177.212 233.854,176.366 L 235.302,176.366 L 235.377,178.152 L 235.434,178.152 C 235.848,176.93 236.863,176.159 237.973,176.159 C 238.142,176.159 238.274,176.178 238.424,176.216 L 238.424,177.758 C 238.236,177.739 238.067,177.72 237.841,177.72 C 236.675,177.72 235.848,178.604 235.622,179.826 C 235.584,180.071 235.566,180.334 235.566,180.616 L 235.566,185.467 L 233.911,185.467 L 233.929,179.205 z"
- id="path1210"
- style="fill:#ffffff" />
- <path
- d="M 250.457,183.285 C 250.457,184.075 250.495,184.846 250.589,185.466 L 249.104,185.466 L 248.953,184.319 L 248.897,184.319 C 248.408,185.033 247.412,185.673 246.114,185.673 C 244.271,185.673 243.331,184.375 243.331,183.059 C 243.331,180.859 245.287,179.656 248.803,179.674 L 248.803,179.486 C 248.803,178.734 248.596,177.361 246.735,177.38 C 245.87,177.38 244.986,177.625 244.347,178.057 L 243.971,176.947 C 244.723,176.477 245.832,176.157 246.979,176.157 C 249.781,176.157 250.458,178.056 250.458,179.88 L 250.458,183.285 L 250.457,183.285 z M 248.839,180.822 C 247.034,180.784 244.985,181.104 244.985,182.872 C 244.985,183.962 245.699,184.452 246.527,184.452 C 247.73,184.452 248.501,183.7 248.764,182.929 C 248.821,182.76 248.839,182.572 248.839,182.403 L 248.839,180.822 L 248.839,180.822 z"
- id="path1212"
- style="fill:#ffffff" />
- <path
- d="M 254.856,188.136 C 255.627,188.08 256.266,187.873 256.661,187.44 C 257.112,186.933 257.3,186.199 257.3,184.018 L 257.3,176.365 L 258.955,176.365 L 258.955,184.657 C 258.955,186.425 258.673,187.572 257.864,188.399 C 257.131,189.132 255.927,189.433 255.044,189.433 L 254.856,188.136 z M 258.09,174.692 C 257.47,174.692 257.056,174.203 257.056,173.62 C 257.056,173.037 257.489,172.567 258.128,172.567 C 258.768,172.567 259.181,173.037 259.181,173.62 C 259.181,174.203 258.786,174.692 258.109,174.692 L 258.09,174.692 z"
- id="path1214"
- style="fill:#ffffff" />
- <path
- d="M 269.278,182.984 C 269.278,183.924 269.297,184.752 269.353,185.466 L 267.886,185.466 L 267.792,183.981 L 267.754,183.981 C 267.34,184.714 266.362,185.673 264.745,185.673 C 263.316,185.673 261.605,184.864 261.605,181.687 L 261.605,176.366 L 263.26,176.366 L 263.26,181.387 C 263.26,183.116 263.805,184.301 265.291,184.301 C 266.4,184.301 267.171,183.53 267.472,182.778 C 267.566,182.552 267.622,182.252 267.622,181.932 L 267.622,176.367 L 269.277,176.367 L 269.277,182.984 L 269.278,182.984 z"
- id="path1216"
- style="fill:#ffffff" />
- <path
- d="M 279.808,184.131 C 279.808,186.237 279.375,187.497 278.511,188.305 C 277.608,189.114 276.33,189.395 275.183,189.395 C 274.092,189.395 272.889,189.132 272.156,188.643 L 272.57,187.364 C 273.172,187.759 274.112,188.097 275.24,188.097 C 276.932,188.097 278.174,187.213 278.174,184.901 L 278.174,183.904 L 278.136,183.904 C 277.647,184.75 276.65,185.427 275.24,185.427 C 272.984,185.427 271.367,183.509 271.367,180.97 C 271.367,177.887 273.379,176.157 275.485,176.157 C 277.065,176.157 277.911,176.966 278.324,177.718 L 278.362,177.718 L 278.418,176.364 L 279.885,176.364 C 279.828,177.003 279.81,177.737 279.81,178.846 L 279.81,184.131 L 279.808,184.131 z M 278.153,179.938 C 278.153,179.675 278.134,179.431 278.059,179.205 C 277.758,178.227 276.968,177.437 275.746,177.437 C 274.166,177.437 273.038,178.772 273.038,180.896 C 273.038,182.664 273.959,184.168 275.727,184.168 C 276.761,184.168 277.682,183.529 278.021,182.457 C 278.115,182.193 278.152,181.874 278.152,181.573 L 278.152,179.938 L 278.153,179.938 z"
- id="path1218"
- style="fill:#ffffff" />
- <path
- d="M 288.946,183.285 C 288.946,184.075 288.984,184.846 289.078,185.466 L 287.592,185.466 L 287.442,184.319 L 287.386,184.319 C 286.897,185.033 285.901,185.673 284.603,185.673 C 282.76,185.673 281.82,184.375 281.82,183.059 C 281.82,180.859 283.776,179.656 287.292,179.674 L 287.292,179.486 C 287.292,178.734 287.085,177.361 285.224,177.38 C 284.359,177.38 283.475,177.625 282.836,178.057 L 282.46,176.947 C 283.212,176.477 284.321,176.157 285.468,176.157 C 288.27,176.157 288.947,178.056 288.947,179.88 L 288.947,183.285 L 288.946,183.285 z M 287.329,180.822 C 285.524,180.784 283.475,181.104 283.475,182.872 C 283.475,183.962 284.189,184.452 285.017,184.452 C 286.22,184.452 286.991,183.7 287.254,182.929 C 287.311,182.76 287.329,182.572 287.329,182.403 L 287.329,180.822 z"
- id="path1220"
- style="fill:#ffffff" />
- <path
- d="M 291.616,179.205 C 291.616,178.133 291.597,177.212 291.541,176.366 L 292.989,176.366 L 293.064,178.152 L 293.121,178.152 C 293.535,176.93 294.55,176.159 295.66,176.159 C 295.829,176.159 295.961,176.178 296.111,176.216 L 296.111,177.758 C 295.923,177.739 295.754,177.72 295.528,177.72 C 294.362,177.72 293.535,178.604 293.309,179.826 C 293.271,180.071 293.253,180.334 293.253,180.616 L 293.253,185.467 L 291.598,185.467 L 291.616,179.205 z"
- id="path1222"
- style="fill:#ffffff" />
- </g>
- </g>
- <g
- id="g1224">
- <path
- d="M 963.436,850.752 C 963.436,855.159 959.863,858.732 955.456,858.732 L 841.483,858.732 C 837.075,858.732 833.502,855.159 833.502,850.752 L 833.502,831.802 C 833.502,827.393 837.075,823.82 841.483,823.82 L 955.456,823.82 C 959.863,823.82 963.436,827.393 963.436,831.802 L 963.436,850.752 L 963.436,850.752 z"
- id="path1226"
- style="fill:#f8601f" />
- <g
- id="g1228">
- <path
- d="M 848.597,836.419 C 847.976,836.419 847.563,835.931 847.563,835.348 C 847.563,834.765 847.995,834.294 848.634,834.294 C 849.273,834.294 849.687,834.765 849.687,835.348 C 849.687,835.931 849.274,836.419 848.616,836.419 L 848.597,836.419 z M 847.807,847.193 L 847.807,838.092 L 849.461,838.092 L 849.461,847.193 L 847.807,847.193 z"
- id="path1230" />
- <path
- d="M 852.207,840.556 C 852.207,839.597 852.188,838.845 852.132,838.093 L 853.599,838.093 L 853.693,839.578 L 853.731,839.578 C 854.182,838.732 855.235,837.886 856.74,837.886 C 858,837.886 859.955,838.638 859.955,841.759 L 859.955,847.194 L 858.301,847.194 L 858.301,841.948 C 858.301,840.481 857.755,839.24 856.195,839.24 C 855.124,839.24 854.277,840.011 853.976,840.932 C 853.901,841.139 853.864,841.44 853.864,841.703 L 853.864,847.193 L 852.209,847.193 L 852.209,840.556 L 852.207,840.556 z"
- id="path1232" />
- <path
- d="M 862.417,845.52 C 862.925,845.821 863.79,846.16 864.617,846.16 C 865.802,846.16 866.366,845.577 866.366,844.806 C 866.366,844.016 865.896,843.583 864.692,843.132 C 863.038,842.53 862.266,841.647 862.266,840.556 C 862.266,839.089 863.47,837.886 865.407,837.886 C 866.328,837.886 867.136,838.13 867.626,838.45 L 867.231,839.635 C 866.874,839.428 866.215,839.109 865.369,839.109 C 864.391,839.109 863.865,839.672 863.865,840.349 C 863.865,841.12 864.391,841.458 865.576,841.911 C 867.137,842.493 867.965,843.283 867.965,844.656 C 867.965,846.273 866.704,847.401 864.58,847.401 C 863.583,847.401 862.662,847.137 862.022,846.761 L 862.417,845.52 z"
- id="path1234" />
- <path
- d="M 872.082,835.911 L 872.082,838.093 L 874.451,838.093 L 874.451,839.353 L 872.082,839.353 L 872.082,844.26 C 872.082,845.389 872.402,846.028 873.323,846.028 C 873.774,846.028 874.038,845.991 874.282,845.916 L 874.357,847.176 C 874.038,847.288 873.53,847.402 872.89,847.402 C 872.119,847.402 871.498,847.138 871.104,846.706 C 870.653,846.199 870.464,845.391 870.464,844.318 L 870.464,839.354 L 869.054,839.354 L 869.054,838.094 L 870.464,838.094 L 870.464,836.42 L 872.082,835.911 z"
- id="path1236" />
- <path
- d="M 876.332,840.932 C 876.332,839.861 876.312,838.939 876.257,838.093 L 877.704,838.093 L 877.779,839.879 L 877.836,839.879 C 878.25,838.656 879.265,837.886 880.374,837.886 C 880.544,837.886 880.675,837.905 880.825,837.943 L 880.825,839.485 C 880.637,839.465 880.469,839.447 880.243,839.447 C 879.077,839.447 878.25,840.331 878.024,841.553 C 877.986,841.797 877.967,842.061 877.967,842.342 L 877.967,847.194 L 876.312,847.194 L 876.332,840.932 z"
- id="path1238" />
- <path
- d="M 890.04,844.711 C 890.04,845.651 890.059,846.479 890.115,847.193 L 888.648,847.193 L 888.554,845.708 L 888.516,845.708 C 888.103,846.441 887.125,847.4 885.508,847.4 C 884.078,847.4 882.367,846.591 882.367,843.414 L 882.367,838.093 L 884.022,838.093 L 884.022,843.114 C 884.022,844.843 884.567,846.028 886.052,846.028 C 887.161,846.028 887.932,845.257 888.234,844.506 C 888.328,844.28 888.384,843.979 888.384,843.659 L 888.384,838.094 L 890.038,838.094 L 890.038,844.711 L 890.04,844.711 z"
- id="path1240" />
- <path
- d="M 899.272,846.874 C 898.839,847.08 897.88,847.4 896.659,847.4 C 893.913,847.4 892.127,845.539 892.127,842.737 C 892.127,839.935 894.045,837.885 897.016,837.885 C 897.995,837.885 898.859,838.129 899.31,838.374 L 898.934,839.634 C 898.539,839.427 897.919,839.201 897.016,839.201 C 894.929,839.201 893.801,840.762 893.801,842.661 C 893.801,844.766 895.155,846.064 896.96,846.064 C 897.899,846.064 898.521,845.838 898.99,845.631 L 899.272,846.874 z"
- id="path1242" />
- <path
- d="M 907.696,846.874 C 907.263,847.08 906.304,847.4 905.083,847.4 C 902.337,847.4 900.551,845.539 900.551,842.737 C 900.551,839.935 902.469,837.885 905.44,837.885 C 906.419,837.885 907.283,838.129 907.734,838.374 L 907.358,839.634 C 906.963,839.427 906.343,839.201 905.44,839.201 C 903.353,839.201 902.225,840.762 902.225,842.661 C 902.225,844.766 903.579,846.064 905.384,846.064 C 906.323,846.064 906.945,845.838 907.414,845.631 L 907.696,846.874 z"
- id="path1244" />
- <path
- d="M 910.422,836.419 C 909.801,836.419 909.388,835.931 909.388,835.348 C 909.388,834.765 909.821,834.294 910.459,834.294 C 911.099,834.294 911.513,834.765 911.513,835.348 C 911.513,835.931 911.099,836.419 910.441,836.419 L 910.422,836.419 z M 909.632,847.193 L 909.632,838.092 L 911.287,838.092 L 911.287,847.193 L 909.632,847.193 z"
- id="path1246" />
- <path
- d="M 917.737,847.4 C 915.293,847.4 913.375,845.594 913.375,842.717 C 913.375,839.671 915.387,837.885 917.888,837.885 C 920.501,837.885 922.269,839.784 922.269,842.548 C 922.269,845.933 919.918,847.4 917.756,847.4 L 917.737,847.4 z M 917.792,846.159 C 919.372,846.159 920.557,844.674 920.557,842.605 C 920.557,841.063 919.786,839.126 917.83,839.126 C 915.893,839.126 915.047,840.931 915.047,842.661 C 915.047,844.654 916.176,846.158 917.774,846.158 L 917.792,846.158 L 917.792,846.159 z"
- id="path1248" />
- <path
- d="M 924.355,840.556 C 924.355,839.597 924.336,838.845 924.28,838.093 L 925.747,838.093 L 925.841,839.578 L 925.879,839.578 C 926.33,838.732 927.383,837.886 928.888,837.886 C 930.148,837.886 932.103,838.638 932.103,841.759 L 932.103,847.194 L 930.449,847.194 L 930.449,841.948 C 930.449,840.481 929.903,839.24 928.343,839.24 C 927.272,839.24 926.425,840.011 926.124,840.932 C 926.049,841.139 926.012,841.44 926.012,841.703 L 926.012,847.193 L 924.357,847.193 L 924.357,840.556 L 924.355,840.556 z"
- id="path1250" />
- <path
- d="M 935.731,842.925 C 935.769,845.163 937.179,846.084 938.834,846.084 C 940.019,846.084 940.752,845.877 941.354,845.633 L 941.655,846.799 C 941.072,847.062 940.057,847.382 938.609,847.382 C 935.826,847.382 934.134,845.52 934.134,842.793 C 934.134,840.029 935.77,837.867 938.421,837.867 C 941.392,837.867 942.162,840.48 942.162,842.154 C 942.162,842.492 942.143,842.756 942.105,842.943 L 935.731,842.925 z M 940.564,841.74 C 940.583,840.706 940.131,839.052 938.289,839.052 C 936.597,839.052 935.882,840.594 935.75,841.74 L 940.564,841.74 z"
- id="path1252" />
- <path
- d="M 943.986,845.52 C 944.494,845.821 945.358,846.16 946.186,846.16 C 947.371,846.16 947.934,845.577 947.934,844.806 C 947.934,844.016 947.464,843.583 946.261,843.132 C 944.606,842.53 943.835,841.647 943.835,840.556 C 943.835,839.089 945.038,837.886 946.975,837.886 C 947.897,837.886 948.705,838.13 949.194,838.45 L 948.799,839.635 C 948.442,839.428 947.783,839.109 946.938,839.109 C 945.959,839.109 945.433,839.672 945.433,840.349 C 945.433,841.12 945.959,841.458 947.145,841.911 C 948.706,842.493 949.533,843.283 949.533,844.656 C 949.533,846.273 948.273,847.401 946.148,847.401 C 945.152,847.401 944.23,847.137 943.59,846.761 L 943.986,845.52 z"
- id="path1254" />
- </g>
- </g>
- <g
- id="g1256">
- <path
- d="M 1062.98,850.752 C 1062.98,855.159 1059.408,858.732 1055,858.732 L 988.035,858.732 C 983.627,858.732 980.054,855.159 980.054,850.752 L 980.054,831.801 C 980.054,827.393 983.627,823.82 988.035,823.82 L 1055,823.82 C 1059.408,823.82 1062.98,827.393 1062.98,831.801 L 1062.98,850.752 z"
- id="path1258"
- style="fill:#f8601f" />
- <g
- id="g1260">
- <path
- d="M 997.628,846.874 C 997.195,847.08 996.236,847.4 995.015,847.4 C 992.27,847.4 990.483,845.539 990.483,842.737 C 990.483,839.935 992.401,837.885 995.373,837.885 C 996.351,837.885 997.215,838.129 997.667,838.374 L 997.29,839.634 C 996.895,839.427 996.275,839.201 995.373,839.201 C 993.285,839.201 992.157,840.762 992.157,842.661 C 992.157,844.766 993.511,846.064 995.316,846.064 C 996.256,846.064 996.877,845.838 997.346,845.631 L 997.628,846.874 z"
- id="path1262" />
- <path
- d="M 999.584,840.932 C 999.584,839.861 999.564,838.939 999.509,838.093 L 1000.956,838.093 L 1001.031,839.879 L 1001.088,839.879 C 1001.502,838.656 1002.517,837.886 1003.626,837.886 C 1003.796,837.886 1003.927,837.905 1004.077,837.943 L 1004.077,839.485 C 1003.889,839.465 1003.721,839.447 1003.494,839.447 C 1002.329,839.447 1001.502,840.331 1001.275,841.553 C 1001.238,841.797 1001.219,842.061 1001.219,842.342 L 1001.219,847.194 L 999.564,847.194 L 999.584,840.932 z"
- id="path1264" />
- <path
- d="M 1006.654,842.925 C 1006.692,845.163 1008.102,846.084 1009.757,846.084 C 1010.942,846.084 1011.675,845.877 1012.277,845.633 L 1012.578,846.799 C 1011.995,847.062 1010.98,847.382 1009.532,847.382 C 1006.75,847.382 1005.057,845.52 1005.057,842.793 C 1005.057,840.029 1006.693,837.867 1009.344,837.867 C 1012.315,837.867 1013.085,840.48 1013.085,842.154 C 1013.085,842.492 1013.066,842.756 1013.028,842.943 L 1006.654,842.925 z M 1011.487,841.74 C 1011.506,840.706 1011.054,839.052 1009.212,839.052 C 1007.52,839.052 1006.805,840.594 1006.673,841.74 L 1011.487,841.74 z M 1011.881,834.294 L 1009.587,836.983 L 1008.421,836.983 L 1010.076,834.294 L 1011.881,834.294 z"
- id="path1266" />
- <path
- d="M 1022.994,833.843 L 1022.994,844.843 C 1022.994,845.652 1023.013,846.573 1023.069,847.194 L 1021.584,847.194 L 1021.509,845.615 L 1021.472,845.615 C 1020.964,846.63 1019.873,847.401 1018.388,847.401 C 1016.188,847.401 1014.477,845.54 1014.477,842.775 C 1014.458,839.729 1016.357,837.886 1018.557,837.886 C 1019.967,837.886 1020.908,838.544 1021.302,839.259 L 1021.34,839.259 L 1021.34,833.843 L 1022.994,833.843 z M 1021.339,841.797 C 1021.339,841.571 1021.32,841.308 1021.264,841.082 C 1021.02,840.048 1020.117,839.184 1018.875,839.184 C 1017.164,839.184 1016.149,840.688 1016.149,842.681 C 1016.149,844.542 1017.07,846.066 1018.837,846.066 C 1019.946,846.066 1020.962,845.314 1021.263,844.091 C 1021.32,843.865 1021.338,843.64 1021.338,843.376 L 1021.338,841.797 L 1021.339,841.797 z"
- id="path1268" />
- <path
- d="M 1026.529,836.419 C 1025.909,836.419 1025.495,835.931 1025.495,835.348 C 1025.495,834.765 1025.928,834.294 1026.567,834.294 C 1027.206,834.294 1027.62,834.765 1027.62,835.348 C 1027.62,835.931 1027.206,836.419 1026.548,836.419 L 1026.529,836.419 z M 1025.739,847.193 L 1025.739,838.092 L 1027.394,838.092 L 1027.394,847.193 L 1025.739,847.193 z"
- id="path1270" />
- <path
- d="M 1032.132,835.911 L 1032.132,838.093 L 1034.501,838.093 L 1034.501,839.353 L 1032.132,839.353 L 1032.132,844.26 C 1032.132,845.389 1032.451,846.028 1033.373,846.028 C 1033.824,846.028 1034.087,845.991 1034.332,845.916 L 1034.407,847.176 C 1034.087,847.288 1033.579,847.402 1032.94,847.402 C 1032.169,847.402 1031.548,847.138 1031.154,846.706 C 1030.702,846.199 1030.514,845.391 1030.514,844.318 L 1030.514,839.354 L 1029.104,839.354 L 1029.104,838.094 L 1030.514,838.094 L 1030.514,836.42 L 1032.132,835.911 z"
- id="path1272" />
- <path
- d="M 1039.957,847.4 C 1037.513,847.4 1035.595,845.594 1035.595,842.717 C 1035.595,839.671 1037.607,837.885 1040.108,837.885 C 1042.722,837.885 1044.49,839.784 1044.49,842.548 C 1044.49,845.933 1042.139,847.4 1039.977,847.4 L 1039.957,847.4 z M 1040.013,846.159 C 1041.592,846.159 1042.777,844.674 1042.777,842.605 C 1042.777,841.063 1042.006,839.126 1040.051,839.126 C 1038.113,839.126 1037.268,840.931 1037.268,842.661 C 1037.268,844.654 1038.396,846.158 1039.995,846.158 L 1040.013,846.158 L 1040.013,846.159 z"
- id="path1274" />
- <path
- d="M 1046.35,845.52 C 1046.858,845.821 1047.722,846.16 1048.55,846.16 C 1049.735,846.16 1050.298,845.577 1050.298,844.806 C 1050.298,844.016 1049.828,843.583 1048.625,843.132 C 1046.97,842.53 1046.199,841.647 1046.199,840.556 C 1046.199,839.089 1047.402,837.886 1049.339,837.886 C 1050.261,837.886 1051.069,838.13 1051.558,838.45 L 1051.163,839.635 C 1050.806,839.428 1050.147,839.109 1049.302,839.109 C 1048.323,839.109 1047.797,839.672 1047.797,840.349 C 1047.797,841.12 1048.323,841.458 1049.509,841.911 C 1051.07,842.493 1051.897,843.283 1051.897,844.656 C 1051.897,846.273 1050.637,847.401 1048.512,847.401 C 1047.516,847.401 1046.594,847.137 1045.954,846.761 L 1046.35,845.52 z"
- id="path1276" />
- </g>
- </g>
- </g>
-<image
- y="27.30398"
- x="8.8232222"
- id="image3685"
- height="137.98286"
- width="140"
- sodipodi:absref="/home/pmoleri/quin-te-ti.activity/src/gui/terron.png"
- xlink:href="terron.png" /></svg> \ No newline at end of file
diff --git a/resources/background.xcf b/resources/background.xcf
deleted file mode 100644
index 47090c9..0000000
--- a/resources/background.xcf
+++ /dev/null
Binary files differ
diff --git a/resources/computer.svg b/resources/computer.svg
deleted file mode 100644
index 8826b6d..0000000
--- a/resources/computer.svg
+++ /dev/null
@@ -1,98 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
- width="136.12"
- height="110.1758"
- id="svg2989"
- sodipodi:version="0.32"
- inkscape:version="0.46"
- sodipodi:docbase="/home/ubun/Desktop"
- sodipodi:docname="man-vs-computer.svg"
- version="1.0"
- inkscape:output_extension="org.inkscape.output.svg.inkscape">
- <defs
- id="defs2991">
- <inkscape:perspective
- sodipodi:type="inkscape:persp3d"
- inkscape:vp_x="0 : 58.919998 : 1"
- inkscape:vp_y="0 : 1000 : 0"
- inkscape:vp_z="136.12 : 58.919998 : 1"
- inkscape:persp3d-origin="68.059998 : 39.279999 : 1"
- id="perspective17" />
- </defs>
- <sodipodi:namedview
- id="base"
- pagecolor="#ffffff"
- bordercolor="#666666"
- borderopacity="1.0"
- gridtolerance="10000"
- guidetolerance="10"
- objecttolerance="10"
- inkscape:pageopacity="0.0"
- inkscape:pageshadow="2"
- inkscape:zoom="3.0009657"
- inkscape:cx="67.152971"
- inkscape:cy="61.970442"
- inkscape:document-units="px"
- inkscape:current-layer="layer1"
- inkscape:window-width="946"
- inkscape:window-height="726"
- inkscape:window-x="50"
- inkscape:window-y="25"
- showgrid="false" />
- <metadata
- id="metadata2994">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <g
- inkscape:label="Layer 1"
- inkscape:groupmode="layer"
- id="layer1"
- transform="translate(-226.635,-419.092)">
- <g
- id="g3021"
- transform="translate(-104.38855,-334.5142)"
- style="fill:#000000;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">
- <path
- d="M 400.13,846.962 C 421.03,846.962 438,850.502 438,854.872 C 438,859.242 421.03,862.782 400.13,862.782 C 379.22,862.782 362.25,859.242 362.25,854.872 C 362.25,850.502 379.22,846.962 400.13,846.962 z"
- id="path3023"
- style="fill:#000000;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
- </g>
- <g
- id="g3025"
- transform="translate(-105.055,-326.85)"
- style="fill:#f4eed7;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
- <g
- id="g3029"
- transform="translate(-105.055,-326.85)"
- style="fill:#f4eed7;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">
- <path
- d="M 332.69,771.402 L 332.69,821.342 C 332.69,834.842 343.74,845.802 357.35,845.802 L 442.15,845.802 C 455.76,845.802 466.81,834.842 466.81,821.342 L 466.81,771.402 C 466.81,757.902 455.76,746.942 442.15,746.942 L 357.35,746.942 C 343.74,746.942 332.69,757.902 332.69,771.402 z"
- id="path3031"
- style="fill:#000000;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
- </g>
- <g
- id="g3033"
- transform="translate(-105.055,-326.85)"
- style="fill:#1a1a1a;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">
- <path
- d="M 347.25,776.672 L 347.25,816.072 C 347.25,826.722 355.9,835.372 366.55,835.372 L 432.95,835.372 C 443.61,835.372 452.25,826.722 452.25,816.072 L 452.25,776.672 C 452.25,766.022 443.61,757.372 432.95,757.372 L 366.55,757.372 C 355.9,757.372 347.25,766.022 347.25,776.672 z"
- id="path3035"
- style="fill:#1a1a1a;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
- </g>
- </g>
-</svg>
diff --git a/resources/icon.png b/resources/icon.png
deleted file mode 100644
index 5de21b5..0000000
--- a/resources/icon.png
+++ /dev/null
Binary files differ
diff --git a/resources/instructions.svg b/resources/instructions.svg
deleted file mode 100644
index 5fbabe8..0000000
--- a/resources/instructions.svg
+++ /dev/null
@@ -1,240 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
- width="800"
- height="500"
- id="svg3656"
- sodipodi:version="0.32"
- inkscape:version="0.46"
- version="1.0"
- sodipodi:docname="instructions.svg"
- inkscape:output_extension="org.inkscape.output.svg.inkscape"
- inkscape:export-filename="/home/pmoleri/quinteti/Quinteti.activity/gui/instructions.png"
- inkscape:export-xdpi="90"
- inkscape:export-ydpi="90">
- <defs
- id="defs3658">
- <inkscape:perspective
- sodipodi:type="inkscape:persp3d"
- inkscape:vp_x="0 : 526.18109 : 1"
- inkscape:vp_y="0 : 1000 : 0"
- inkscape:vp_z="744.09448 : 526.18109 : 1"
- inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
- id="perspective3664" />
- </defs>
- <sodipodi:namedview
- id="base"
- pagecolor="#ffffff"
- bordercolor="#666666"
- borderopacity="1.0"
- gridtolerance="10000"
- guidetolerance="10"
- objecttolerance="10"
- inkscape:pageopacity="0.0"
- inkscape:pageshadow="2"
- inkscape:zoom="0.79"
- inkscape:cx="415.98232"
- inkscape:cy="208.49925"
- inkscape:document-units="px"
- inkscape:current-layer="layer1"
- showgrid="false"
- inkscape:window-width="1219"
- inkscape:window-height="728"
- inkscape:window-x="51"
- inkscape:window-y="25" />
- <metadata
- id="metadata3661">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <g
- inkscape:label="Layer 1"
- inkscape:groupmode="layer"
- id="layer1">
- <path
- d="M 66.466056,2.9999985 C 31.471654,2.9999985 3.0000001,20.712973 3.0000001,42.48634 L 3.0000001,457.51364 C 3.0000001,479.287 31.469936,497 66.466056,497 L 733.53565,497 C 768.53178,497 796.99999,479.287 796.99999,457.51364 L 796.99999,42.48634 C 796.99999,20.71405 768.53178,2.9999985 733.53565,2.9999985 L 66.466056,2.9999985 z"
- id="path892"
- style="fill:#f8601f;fill-opacity:1;stroke:#000000;stroke-width:6;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
- <text
- xml:space="preserve"
- style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#fdfdfd;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Metal;-inkscape-font-specification:Metal"
- x="62.300049"
- y="111.77754"
- id="text4967"><tspan
- sodipodi:role="line"
- x="62.300049"
- y="111.77754"
- id="tspan2441">El objetivo del juego es ubicar las fichas en</tspan><tspan
- sodipodi:role="line"
- x="62.300049"
- y="134.27754"
- id="tspan2445">el tablero de forma de sumar 15 tanto en</tspan><tspan
- sodipodi:role="line"
- x="62.300049"
- y="156.77754"
- id="tspan4989">filas como en columnas.</tspan><tspan
- sodipodi:role="line"
- x="62.300049"
- y="179.27754"
- id="tspan4991" /><tspan
- sodipodi:role="line"
- x="62.300049"
- y="201.77754"
- id="tspan2448">Se puede jugar contra la computadora o de</tspan><tspan
- sodipodi:role="line"
- x="62.300049"
- y="224.27754"
- id="tspan4995">a dos participantes. El juego se inicia con el</tspan><tspan
- sodipodi:role="line"
- x="62.300049"
- y="246.77754"
- id="tspan5075">tablero vacío y los números afuera. Los turnos</tspan><tspan
- sodipodi:role="line"
- x="62.300049"
- y="269.27753"
- id="tspan2486">se van alternando, jugando en cada caso el</tspan><tspan
- sodipodi:role="line"
- x="62.300049"
- y="291.77753"
- id="tspan2502">participante que aparece resaltado en la pantalla.</tspan><tspan
- sodipodi:role="line"
- x="62.300049"
- y="314.27753"
- id="tspan5093" /><tspan
- sodipodi:role="line"
- x="62.300049"
- y="336.77753"
- id="tspan5015">Cuando un jugador ubica una ficha que</tspan><tspan
- sodipodi:role="line"
- x="62.300049"
- y="359.27753"
- id="tspan5017">suma 15 en cualquiera de las dos direcciones,</tspan><tspan
- sodipodi:role="line"
- x="62.300049"
- y="381.77753"
- id="tspan5019">éste gana un punto. Si logra sumar quince</tspan><tspan
- sodipodi:role="line"
- x="62.300049"
- y="404.27753"
- id="tspan5021">en ambas direcciones a la vez, gana 2 puntos.</tspan><tspan
- sodipodi:role="line"
- x="62.300049"
- y="426.77753"
- id="tspan6418" /></text>
- <path
- style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:5.00000048;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
- d="M 519.30061,22.86701 L 519.30061,473.05054"
- id="path5023" />
- <text
- xml:space="preserve"
- style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Metal;-inkscape-font-specification:Metal"
- x="556.71631"
- y="51.842243"
- id="text5029"
- inkscape:export-xdpi="90"
- inkscape:export-ydpi="90"><tspan
- sodipodi:role="line"
- x="556.71631"
- y="51.842243"
- id="tspan5059">QuinTeTi v3 fue desarrollado</tspan><tspan
- sodipodi:role="line"
- x="556.71631"
- y="71.842239"
- id="tspan6422">en ceibalJAM!</tspan><tspan
- sodipodi:role="line"
- x="556.71631"
- y="91.842239"
- id="tspan5061">www.ceibaljam.org</tspan><tspan
- sodipodi:role="line"
- x="556.71631"
- y="111.84224"
- id="tspan5039" /><tspan
- sodipodi:role="line"
- x="556.71631"
- y="131.84224"
- id="tspan5041">Autor:</tspan><tspan
- sodipodi:role="line"
- x="556.71631"
- y="151.84224"
- id="tspan6412"> Pablo Moleri</tspan><tspan
- sodipodi:role="line"
- x="556.71631"
- y="171.84224"
- id="tspan5055" /><tspan
- sodipodi:role="line"
- x="556.71631"
- y="191.84224"
- id="tspan5121">Diseño gráfico:</tspan><tspan
- sodipodi:role="line"
- x="556.71631"
- y="211.84224"
- id="tspan5123"> Magdalena Sayagués</tspan><tspan
- sodipodi:role="line"
- x="556.71631"
- y="231.84224"
- id="tspan5125" /><tspan
- sodipodi:role="line"
- x="556.71631"
- y="251.84224"
- id="tspan5069">Colaboración:</tspan><tspan
- sodipodi:role="line"
- x="556.71631"
- y="271.84225"
- id="tspan5071"> Juan Manuel Picerno</tspan><tspan
- sodipodi:role="line"
- x="556.71631"
- y="291.84225"
- id="tspan2438"> Leonardo Val</tspan><tspan
- sodipodi:role="line"
- x="556.71631"
- y="311.84225"
- id="tspan2440"> Pablo Garin</tspan><tspan
- sodipodi:role="line"
- x="556.71631"
- y="331.84225"
- id="tspan5047" /><tspan
- sodipodi:role="line"
- x="556.71631"
- y="351.84225"
- id="tspan2478">Propuesta original:</tspan><tspan
- sodipodi:role="line"
- x="556.71631"
- y="371.84225"
- id="tspan2480"> Caryl Bigenho</tspan><tspan
- sodipodi:role="line"
- x="556.71631"
- y="391.84225"
- id="tspan2482" /><tspan
- sodipodi:role="line"
- x="556.71631"
- y="411.84225"
- id="tspan5049">Consultas y sugerencias:</tspan><tspan
- sodipodi:role="line"
- x="556.71631"
- y="431.84225"
- id="tspan5051"> pmoleri@gmail.com</tspan></text>
- <text
- xml:space="preserve"
- style="font-size:22;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Metal;-inkscape-font-specification:Metal Bold"
- x="59.980049"
- y="64.556961"
- id="text5111"><tspan
- sodipodi:role="line"
- id="tspan5113"
- x="59.980049"
- y="64.556961">Instrucciones</tspan></text>
- </g>
-</svg>
diff --git a/resources/man-vs-computer.svg b/resources/man-vs-computer.svg
deleted file mode 100644
index e20f224..0000000
--- a/resources/man-vs-computer.svg
+++ /dev/null
@@ -1,219 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
- height="300.00034"
- id="svg1507"
- inkscape:version="0.46"
- sodipodi:version="0.32"
- width="500"
- version="1.0"
- sodipodi:docname="man-vs-computer.svg"
- inkscape:output_extension="org.inkscape.output.svg.inkscape">
- <metadata
- id="metadata21">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <sodipodi:namedview
- bordercolor="#666666"
- borderopacity="1.0"
- id="base"
- inkscape:current-layer="svg1507"
- inkscape:cx="267.63853"
- inkscape:cy="157.99043"
- inkscape:pageopacity="0.0"
- inkscape:pageshadow="2"
- inkscape:window-height="726"
- inkscape:window-width="1061"
- inkscape:window-x="190"
- inkscape:window-y="25"
- inkscape:zoom="1.2279853"
- pagecolor="#ffffff"
- showguides="true"
- inkscape:guide-bbox="true"
- showgrid="true"
- width="300px"
- height="300px" />
- <defs
- id="defs1509">
- <marker
- inkscape:stockid="TriangleInL"
- orient="auto"
- refY="0"
- refX="0"
- id="TriangleInL"
- style="overflow:visible">
- <path
- id="path3379"
- d="M 5.77,0 L -2.88,5 L -2.88,-5 L 5.77,0 z"
- style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
- transform="scale(-0.8,-0.8)" />
- </marker>
- <marker
- inkscape:stockid="TriangleOutL"
- orient="auto"
- refY="0"
- refX="0"
- id="TriangleOutL"
- style="overflow:visible">
- <path
- id="path3388"
- d="M 5.77,0 L -2.88,5 L -2.88,-5 L 5.77,0 z"
- style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
- transform="scale(0.8,0.8)" />
- </marker>
- <marker
- inkscape:stockid="Arrow2Lend"
- orient="auto"
- refY="0"
- refX="0"
- id="Arrow2Lend"
- style="overflow:visible">
- <path
- id="path3266"
- style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
- d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.97309,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z"
- transform="matrix(-1.1,0,0,-1.1,-1.1,0)" />
- </marker>
- <marker
- inkscape:stockid="Arrow1Lend"
- orient="auto"
- refY="0"
- refX="0"
- id="Arrow1Lend"
- style="overflow:visible">
- <path
- id="path3248"
- d="M 0,0 L 5,-5 L -12.5,0 L 5,5 L 0,0 z"
- style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
- transform="matrix(-0.8,0,0,-0.8,-10,0)" />
- </marker>
- <marker
- inkscape:stockid="Arrow2Lstart"
- orient="auto"
- refY="0"
- refX="0"
- id="Arrow2Lstart"
- style="overflow:visible">
- <path
- id="path3263"
- style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
- d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.97309,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z"
- transform="matrix(1.1,0,0,1.1,1.1,0)" />
- </marker>
- <inkscape:perspective
- sodipodi:type="inkscape:persp3d"
- inkscape:vp_x="0 : 150 : 1"
- inkscape:vp_y="0 : 1000 : 0"
- inkscape:vp_z="300 : 150 : 1"
- inkscape:persp3d-origin="150 : 100 : 1"
- id="perspective23" />
- <marker
- id="ArrowEnd"
- markerHeight="3"
- markerUnits="strokeWidth"
- markerWidth="4"
- orient="auto"
- refX="0"
- refY="5"
- viewBox="0 0 10 10">
- <path
- d="M 0,0 L 10,5 L 0,10 L 0,0 z"
- id="path1512" />
- </marker>
- <marker
- id="ArrowStart"
- markerHeight="3"
- markerUnits="strokeWidth"
- markerWidth="4"
- orient="auto"
- refX="10"
- refY="5"
- viewBox="0 0 10 10">
- <path
- d="M 10,0 L 0,5 L 10,10 L 10,0 z"
- id="path1515" />
- </marker>
- <inkscape:perspective
- id="perspective17"
- inkscape:persp3d-origin="68.059998 : 39.279999 : 1"
- inkscape:vp_z="136.12 : 58.919998 : 1"
- inkscape:vp_y="0 : 1000 : 0"
- inkscape:vp_x="0 : 58.919998 : 1"
- sodipodi:type="inkscape:persp3d" />
- </defs>
- <g
- id="g2426"
- transform="translate(-77.9256,-1.74033e-5)">
- <g
- transform="matrix(0.609252,0,0,0.609252,85.9256,1.74033e-5)"
- id="g1519">
- <path
- d="M 95.872,81.671 C 118.422,81.671 136.706,63.387 136.706,40.835 C 136.706,18.284 118.422,0 95.872,0 C 73.319,0 55.038,18.284 55.038,40.835 C 55.038,63.387 73.319,81.671 95.872,81.671 z"
- id="path1521"
- style="fill:#000000;stroke:none" />
- <path
- d=""
- id="path1523"
- style="fill:#000000;stroke:none" />
- </g>
- <path
- d="M 117.7121,55.248817 C 100.09436,55.248817 85.9256,69.617416 85.9256,87.539173 L 85.9256,163.92414 C 85.9256,178.77466 107.65945,178.77452 107.65945,163.924 L 107.65945,94.078 L 112.80458,94.078274 L 112.80458,285.327 C 112.80458,305.18252 141.74588,304.59799 141.74588,285.32674 L 141.74588,174.30945 L 146.731,174.30945 L 146.731,285.327 C 146.731,304.59825 175.831,305.18252 175.831,285.327 L 175.831,94.078274 L 179.5187,94.078 L 180.54453,163.924 C 180.54453,178.88905 200.76176,178.88844 200.72277,163.924 L 199.40631,94.078 C 199.40631,77.55204 189.60384,55.282935 170.26009,55.282935 L 117.7121,55.248817 z"
- id="path1525"
- style="fill:#000000;stroke:none"
- sodipodi:nodetypes="ccccccccccccccccccc" />
- </g>
- <path
- style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:6.00000048;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#TriangleInL);marker-end:url(#TriangleOutL);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
- d="M 189.7623,150.00017 L 239.89845,150.00017"
- id="path2458"
- sodipodi:nodetypes="cc" />
- <g
- transform="matrix(1.5692765,0,0,1.5938346,-73.238334,-605.76416)"
- id="layer1"
- inkscape:label="Layer 1">
- <g
- style="fill:#000000;stroke:#000000;stroke-width:1.26461589;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
- transform="translate(-104.38855,-334.5142)"
- id="g3021">
- <path
- style="fill:#000000;stroke:#000000;stroke-width:1.26461589;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
- id="path3023"
- d="M 400.13,846.962 C 421.03,846.962 438,850.502 438,854.872 C 438,859.242 421.03,862.782 400.13,862.782 C 379.22,862.782 362.25,859.242 362.25,854.872 C 362.25,850.502 379.22,846.962 400.13,846.962 z" />
- </g>
- <g
- style="fill:#f4eed7;stroke:#000000;stroke-width:0.63230795;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
- transform="translate(-105.055,-326.85)"
- id="g3025" />
- <g
- style="fill:#f4eed7;stroke:#000000;stroke-width:1.26461589;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
- transform="translate(-105.055,-326.85)"
- id="g3029">
- <path
- style="fill:#000000;stroke:#000000;stroke-width:1.26461589;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
- id="path3031"
- d="M 332.69,771.402 L 332.69,821.342 C 332.69,834.842 343.74,845.802 357.35,845.802 L 442.15,845.802 C 455.76,845.802 466.81,834.842 466.81,821.342 L 466.81,771.402 C 466.81,757.902 455.76,746.942 442.15,746.942 L 357.35,746.942 C 343.74,746.942 332.69,757.902 332.69,771.402 z" />
- </g>
- <g
- style="fill:#1a1a1a;stroke:#000000;stroke-width:0.63230795;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
- transform="translate(-105.055,-326.85)"
- id="g3033">
- <path
- style="fill:#1a1a1a;stroke:#000000;stroke-width:0.63230795;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
- id="path3035"
- d="M 347.25,776.672 L 347.25,816.072 C 347.25,826.722 355.9,835.372 366.55,835.372 L 432.95,835.372 C 443.61,835.372 452.25,826.722 452.25,816.072 L 452.25,776.672 C 452.25,766.022 443.61,757.372 432.95,757.372 L 366.55,757.372 C 355.9,757.372 347.25,766.022 347.25,776.672 z" />
- </g>
- </g>
-</svg>
diff --git a/resources/man-vs-man.svg b/resources/man-vs-man.svg
deleted file mode 100644
index 80bd539..0000000
--- a/resources/man-vs-man.svg
+++ /dev/null
@@ -1,185 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
- height="300.00034"
- id="svg1507"
- inkscape:version="0.46"
- sodipodi:version="0.32"
- width="500"
- version="1.0"
- sodipodi:docname="man-vs-man.svg"
- inkscape:output_extension="org.inkscape.output.svg.inkscape">
- <metadata
- id="metadata21">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <sodipodi:namedview
- bordercolor="#666666"
- borderopacity="1.0"
- id="base"
- inkscape:current-layer="svg1507"
- inkscape:cx="176.9211"
- inkscape:cy="157.99043"
- inkscape:pageopacity="0.0"
- inkscape:pageshadow="2"
- inkscape:window-height="726"
- inkscape:window-width="1061"
- inkscape:window-x="107"
- inkscape:window-y="25"
- inkscape:zoom="1.2279853"
- pagecolor="#ffffff"
- showguides="true"
- inkscape:guide-bbox="true"
- showgrid="true"
- width="300px"
- height="300px" />
- <defs
- id="defs1509">
- <marker
- inkscape:stockid="TriangleInL"
- orient="auto"
- refY="0"
- refX="0"
- id="TriangleInL"
- style="overflow:visible">
- <path
- id="path3379"
- d="M 5.77,0 L -2.88,5 L -2.88,-5 L 5.77,0 z"
- style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
- transform="scale(-0.8,-0.8)" />
- </marker>
- <marker
- inkscape:stockid="TriangleOutL"
- orient="auto"
- refY="0"
- refX="0"
- id="TriangleOutL"
- style="overflow:visible">
- <path
- id="path3388"
- d="M 5.77,0 L -2.88,5 L -2.88,-5 L 5.77,0 z"
- style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
- transform="scale(0.8,0.8)" />
- </marker>
- <marker
- inkscape:stockid="Arrow2Lend"
- orient="auto"
- refY="0"
- refX="0"
- id="Arrow2Lend"
- style="overflow:visible">
- <path
- id="path3266"
- style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
- d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.97309,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z"
- transform="matrix(-1.1,0,0,-1.1,-1.1,0)" />
- </marker>
- <marker
- inkscape:stockid="Arrow1Lend"
- orient="auto"
- refY="0"
- refX="0"
- id="Arrow1Lend"
- style="overflow:visible">
- <path
- id="path3248"
- d="M 0,0 L 5,-5 L -12.5,0 L 5,5 L 0,0 z"
- style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
- transform="matrix(-0.8,0,0,-0.8,-10,0)" />
- </marker>
- <marker
- inkscape:stockid="Arrow2Lstart"
- orient="auto"
- refY="0"
- refX="0"
- id="Arrow2Lstart"
- style="overflow:visible">
- <path
- id="path3263"
- style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
- d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.97309,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z"
- transform="matrix(1.1,0,0,1.1,1.1,0)" />
- </marker>
- <inkscape:perspective
- sodipodi:type="inkscape:persp3d"
- inkscape:vp_x="0 : 150 : 1"
- inkscape:vp_y="0 : 1000 : 0"
- inkscape:vp_z="300 : 150 : 1"
- inkscape:persp3d-origin="150 : 100 : 1"
- id="perspective23" />
- <marker
- id="ArrowEnd"
- markerHeight="3"
- markerUnits="strokeWidth"
- markerWidth="4"
- orient="auto"
- refX="0"
- refY="5"
- viewBox="0 0 10 10">
- <path
- d="M 0,0 L 10,5 L 0,10 L 0,0 z"
- id="path1512" />
- </marker>
- <marker
- id="ArrowStart"
- markerHeight="3"
- markerUnits="strokeWidth"
- markerWidth="4"
- orient="auto"
- refX="10"
- refY="5"
- viewBox="0 0 10 10">
- <path
- d="M 10,0 L 0,5 L 10,10 L 10,0 z"
- id="path1515" />
- </marker>
- </defs>
- <g
- id="g2426"
- transform="translate(-77.9256,-1.74033e-5)">
- <g
- transform="matrix(0.609252,0,0,0.609252,85.9256,1.74033e-5)"
- id="g1519">
- <path
- d="M 95.872,81.671 C 118.422,81.671 136.706,63.387 136.706,40.835 C 136.706,18.284 118.422,0 95.872,0 C 73.319,0 55.038,18.284 55.038,40.835 C 55.038,63.387 73.319,81.671 95.872,81.671 z"
- id="path1521"
- style="fill:#000000;stroke:none" />
- <path
- d=""
- id="path1523"
- style="fill:#000000;stroke:none" />
- </g>
- <path
- d="M 117.7121,55.248817 C 100.09436,55.248817 85.9256,69.617416 85.9256,87.539173 L 85.9256,163.92414 C 85.9256,178.77466 107.65945,178.77452 107.65945,163.924 L 107.65945,94.078 L 112.80458,94.078274 L 112.80458,285.327 C 112.80458,305.18252 141.74588,304.59799 141.74588,285.32674 L 141.74588,174.30945 L 146.731,174.30945 L 146.731,285.327 C 146.731,304.59825 175.831,305.18252 175.831,285.327 L 175.831,94.078274 L 179.5187,94.078 L 180.54453,163.924 C 180.54453,178.88905 200.76176,178.88844 200.72277,163.924 L 199.40631,94.078 C 199.40631,77.55204 189.60384,55.282935 170.26009,55.282935 L 117.7121,55.248817 z"
- id="path1525"
- style="fill:#000000;stroke:none"
- sodipodi:nodetypes="ccccccccccccccccccc" />
- </g>
- <use
- x="0"
- y="0"
- xlink:href="#g2426"
- id="use2452"
- transform="translate(310.003,0)"
- width="300"
- height="300" />
- <path
- style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:6.00000048;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#TriangleInL);marker-end:url(#TriangleOutL);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
- d="M 189.762,150.00017 L 239.89815,150.00017"
- id="path2458"
- sodipodi:nodetypes="cc" />
-</svg>
diff --git a/resources/man.svg b/resources/man.svg
deleted file mode 100644
index bf61452..0000000
--- a/resources/man.svg
+++ /dev/null
@@ -1,130 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
- height="300"
- id="svg1507"
- inkscape:version="0.46"
- sodipodi:version="0.32"
- width="300"
- version="1.0"
- sodipodi:docname="man.svg"
- inkscape:output_extension="org.inkscape.output.svg.inkscape">
- <metadata
- id="metadata21">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <sodipodi:namedview
- bordercolor="#666666"
- borderopacity="1.0"
- id="base"
- inkscape:current-layer="svg1507"
- inkscape:cx="227.2507"
- inkscape:cy="182.3001"
- inkscape:pageopacity="0.0"
- inkscape:pageshadow="2"
- inkscape:window-height="726"
- inkscape:window-width="960"
- inkscape:window-x="160"
- inkscape:window-y="63"
- inkscape:zoom="1.7366335"
- pagecolor="#ffffff"
- showguides="true"
- inkscape:guide-bbox="true"
- showgrid="true"
- width="300px"
- height="300px">
- <sodipodi:guide
- orientation="horizontal"
- position="280.13365"
- id="guide1920" />
- <sodipodi:guide
- orientation="vertical"
- position="209.60094"
- id="guide1922" />
- <sodipodi:guide
- orientation="vertical"
- position="175.89787"
- id="guide1924" />
- <sodipodi:guide
- orientation="horizontal"
- position="127.83354"
- id="guide1926" />
- <sodipodi:guide
- orientation="vertical"
- position="147.98748"
- id="guide1928" />
- <sodipodi:guide
- orientation="vertical"
- position="101.34551"
- id="guide1930" />
- </sodipodi:namedview>
- <defs
- id="defs1509">
- <inkscape:perspective
- sodipodi:type="inkscape:persp3d"
- inkscape:vp_x="0 : 150 : 1"
- inkscape:vp_y="0 : 1000 : 0"
- inkscape:vp_z="300 : 150 : 1"
- inkscape:persp3d-origin="150 : 100 : 1"
- id="perspective23" />
- <marker
- id="ArrowEnd"
- markerHeight="3"
- markerUnits="strokeWidth"
- markerWidth="4"
- orient="auto"
- refX="0"
- refY="5"
- viewBox="0 0 10 10">
- <path
- d="M 0,0 L 10,5 L 0,10 L 0,0 z "
- id="path1512" />
- </marker>
- <marker
- id="ArrowStart"
- markerHeight="3"
- markerUnits="strokeWidth"
- markerWidth="4"
- orient="auto"
- refX="10"
- refY="5"
- viewBox="0 0 10 10">
- <path
- d="M 10,0 L 0,5 L 10,10 L 10,0 z "
- id="path1515" />
- </marker>
- </defs>
- <g
- id="g2426">
- <g
- transform="matrix(0.609252,0,0,0.609252,85.9256,1.74033e-5)"
- id="g1519">
- <path
- d="M 95.872,81.671 C 118.422,81.671 136.706,63.387 136.706,40.835 C 136.706,18.284 118.422,0 95.872,0 C 73.319,0 55.038,18.284 55.038,40.835 C 55.038,63.387 73.319,81.671 95.872,81.671 z"
- id="path1521"
- style="fill:#000000;stroke:none" />
- <path
- d=""
- id="path1523"
- style="fill:#000000;stroke:none" />
- </g>
- <path
- d="M 117.7121,55.248817 C 100.09436,55.248817 85.9256,69.617416 85.9256,87.539173 L 85.9256,163.92414 C 85.9256,178.77466 107.65945,178.77452 107.65945,163.924 L 107.65945,94.078 L 112.80458,94.078274 L 112.80458,285.327 C 112.80458,305.18252 141.74588,304.59799 141.74588,285.32674 L 141.74588,174.30945 L 146.731,174.30945 L 146.731,285.327 C 146.731,304.59825 175.831,305.18252 175.831,285.327 L 175.831,94.078274 L 179.5187,94.078 L 180.54453,163.924 C 180.54453,178.88905 200.76176,178.88844 200.72277,163.924 L 199.40631,94.078 C 199.40631,77.55204 189.60384,55.282935 170.26009,55.282935 L 117.7121,55.248817 z"
- id="path1525"
- style="fill:#000000;stroke:none"
- sodipodi:nodetypes="ccccccccccccccccccc" />
- </g>
-</svg>
diff --git a/resources/terron.png b/resources/terron.png
deleted file mode 100644
index fc6ecff..0000000
--- a/resources/terron.png
+++ /dev/null
Binary files differ